diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 46c464ee2..00d83f7d5 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -3,7 +3,9 @@ stages: - build clippy: - image: paritytech/ci-linux:c4f0daf3-20220110 + # Corresponds to paritytech/ci-linux:production at the time of this PR + # https://hub.docker.com/layers/ci-linux/paritytech/ci-linux/production/images/sha256-c75cee0971ca54e57a875fac8714eea2db754e621841cde702478783fc28ab90?context=explore + image: paritytech/ci-linux@sha256:c75cee0971ca54e57a875fac8714eea2db754e621841cde702478783fc28ab90 stage: test timeout: 1 hours script: @@ -11,7 +13,9 @@ clippy: - cargo +nightly clippy --all-features --all-targets --locked -- -D warnings fmt: - image: paritytech/ci-linux:c4f0daf3-20220110 + # Corresponds to paritytech/ci-linux:production at the time of this PR + # https://hub.docker.com/layers/ci-linux/paritytech/ci-linux/production/images/sha256-c75cee0971ca54e57a875fac8714eea2db754e621841cde702478783fc28ab90?context=explore + image: paritytech/ci-linux@sha256:c75cee0971ca54e57a875fac8714eea2db754e621841cde702478783fc28ab90 stage: test timeout: 1 hours script: @@ -19,14 +23,18 @@ fmt: - cargo +nightly fmt -- --check test: - image: paritytech/ci-linux:c4f0daf3-20220110 + # Corresponds to paritytech/ci-linux:production at the time of this PR + # https://hub.docker.com/layers/ci-linux/paritytech/ci-linux/production/images/sha256-c75cee0971ca54e57a875fac8714eea2db754e621841cde702478783fc28ab90?context=explore + image: paritytech/ci-linux@sha256:c75cee0971ca54e57a875fac8714eea2db754e621841cde702478783fc28ab90 stage: test timeout: 1 hours script: - cargo test --all --all-targets --locked test-features: - image: paritytech/ci-linux:c4f0daf3-20220110 + # Corresponds to paritytech/ci-linux:production at the time of this PR + # https://hub.docker.com/layers/ci-linux/paritytech/ci-linux/production/images/sha256-c75cee0971ca54e57a875fac8714eea2db754e621841cde702478783fc28ab90?context=explore + image: paritytech/ci-linux@sha256:c75cee0971ca54e57a875fac8714eea2db754e621841cde702478783fc28ab90 stage: test timeout: 1 hours script: @@ -60,7 +68,7 @@ build: build-wasm-peregrine: image: - name: paritytech/srtool:1.57.0 + name: paritytech/srtool:1.60.0 entrypoint: [""] stage: build only: @@ -80,7 +88,7 @@ build-wasm-peregrine: build-wasm-spiritnet: image: - name: paritytech/srtool:1.57.0 + name: paritytech/srtool:1.60.0 entrypoint: [""] stage: build only: diff --git a/.maintain/reset-spec/peregrine_dev_kilt.py b/.maintain/reset-spec/peregrine_dev_kilt.py index 3170f35c5..34b4f3ac7 100644 --- a/.maintain/reset-spec/peregrine_dev_kilt.py +++ b/.maintain/reset-spec/peregrine_dev_kilt.py @@ -14,7 +14,6 @@ def update_spec(input: typing.Dict): input["properties"]["tokenSymbol"] = "PILT" input["genesis"]["runtime"]["parachainInfo"]["parachainId"] = para_id input["genesis"]["runtime"]["sudo"]["key"] = "5GrwvaEF5zXb26Fz9rcQpDWS57CtERHpNehXCPcNoHGKutQY" - input["genesis"]["runtime"]["kiltLaunch"]["transferAccount"] = "5FHneW46xGXgs5mUiveU4sbTyGBzmstUspZC92UhjJM694ty" input["genesis"]["runtime"]["parachainStaking"]["stakers"] = [ [ "5GrwvaEF5zXb26Fz9rcQpDWS57CtERHpNehXCPcNoHGKutQY", diff --git a/.maintain/reset-spec/peregrine_kilt.py b/.maintain/reset-spec/peregrine_kilt.py index 61386035c..2f3d5cbf1 100644 --- a/.maintain/reset-spec/peregrine_kilt.py +++ b/.maintain/reset-spec/peregrine_kilt.py @@ -26,7 +26,6 @@ def update_spec(input: typing.Dict): input["properties"]["tokenSymbol"] = "PILT" input["genesis"]["runtime"]["parachainInfo"]["parachainId"] = para_id input["genesis"]["runtime"]["sudo"]["key"] = acc_col_1 - input["genesis"]["runtime"]["kiltLaunch"]["transferAccount"] = acc_col_2 input["genesis"]["runtime"]["parachainStaking"]["stakers"] = [ [ acc_col_1, diff --git a/.maintain/reset-spec/peregrine_stg_kilt.py b/.maintain/reset-spec/peregrine_stg_kilt.py index ad87e232b..9320aa2b3 100644 --- a/.maintain/reset-spec/peregrine_stg_kilt.py +++ b/.maintain/reset-spec/peregrine_stg_kilt.py @@ -28,7 +28,6 @@ def update_spec(input: typing.Dict): input["properties"]["tokenSymbol"] = "PILT" input["genesis"]["runtime"]["parachainInfo"]["parachainId"] = para_id input["genesis"]["runtime"]["sudo"]["key"] = acc_col_1 - input["genesis"]["runtime"]["kiltLaunch"]["transferAccount"] = acc_col_2 input["genesis"]["runtime"]["parachainStaking"]["stakers"] = [ [ acc_col_1, diff --git a/Cargo.lock b/Cargo.lock index ca6618d8c..5d8bf2358 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -44,7 +44,7 @@ checksum = "9e8b47f52ea9bae42228d07ec09eb676433d7c4ed1ebdf0f1d1c29ed446f1ab8" dependencies = [ "cfg-if 1.0.0", "cipher", - "cpufeatures 0.2.2", + "cpufeatures", "opaque-debug 0.3.0", ] @@ -68,7 +68,7 @@ version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47" dependencies = [ - "getrandom 0.2.5", + "getrandom 0.2.6", "once_cell", "version_check", ] @@ -94,7 +94,7 @@ version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d52a9bb7ec0cf484c551830a7ce27bd20d67eac647e1befb56b0be4ee39a55d2" dependencies = [ - "winapi 0.3.9", + "winapi", ] [[package]] @@ -188,9 +188,9 @@ dependencies = [ [[package]] name = "async-global-executor" -version = "2.0.3" +version = "2.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c026b7e44f1316b567ee750fea85103f87fcb80792b860e979f221259796ca0a" +checksum = "c290043c9a95b05d45e952fb6383c67bcb61471f60cfa21e890dba6654234f43" dependencies = [ "async-channel", "async-executor", @@ -216,9 +216,9 @@ dependencies = [ "parking", "polling", "slab", - "socket2 0.4.4", + "socket2", "waker-fn", - "winapi 0.3.9", + "winapi", ] [[package]] @@ -253,14 +253,14 @@ dependencies = [ "libc", "once_cell", "signal-hook", - "winapi 0.3.9", + "winapi", ] [[package]] name = "async-std" -version = "1.10.0" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8056f1455169ab86dd47b47391e4ab0cbd25410a70e9fe675544f49bafaf952" +checksum = "52580991739c5cdb36cde8b2a516371c0a3b70dda36d916cc08b82372916808c" dependencies = [ "async-attributes", "async-channel", @@ -287,15 +287,16 @@ dependencies = [ [[package]] name = "async-std-resolver" -version = "0.20.4" +version = "0.21.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dbf3e776afdf3a2477ef4854b85ba0dff3bd85792f685fb3c68948b4d304e4f0" +checksum = "0f2f8a4a203be3325981310ab243a28e6e4ea55b6519bffce05d41ab60e09ad8" dependencies = [ "async-std", "async-trait", "futures-io", "futures-util", "pin-utils", + "socket2", "trust-dns-resolver", ] @@ -307,50 +308,28 @@ checksum = "30696a84d817107fc028e049980e09d5e140e8da8f1caeb17e8e950658a3cea9" [[package]] name = "async-trait" -version = "0.1.52" +version = "0.1.53" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "061a7acccaa286c011ddc30970520b98fa40e00c9d644633fb26b5fc63a265e3" +checksum = "ed6aa3524a2dfcf9fe180c51eae2b58738348d819517ceadf95789c51fff7600" dependencies = [ "proc-macro2", "quote", "syn", ] -[[package]] -name = "asynchronous-codec" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb4401f0a3622dad2e0763fa79e0eb328bc70fb7dccfdd645341f00d671247d6" -dependencies = [ - "bytes 1.1.0", - "futures-sink", - "futures-util", - "memchr", - "pin-project-lite 0.2.8", -] - [[package]] name = "asynchronous-codec" version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f0de5164e5edbf51c45fb8c2d9664ae1c095cce1b265ecf7569093c0d66ef690" dependencies = [ - "bytes 1.1.0", + "bytes", "futures-sink", "futures-util", "memchr", "pin-project-lite 0.2.8", ] -[[package]] -name = "atomic" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b88d82667eca772c4aa12f0f1348b3ae643424c8876448f3f7bd5787032e234c" -dependencies = [ - "autocfg", -] - [[package]] name = "atomic-waker" version = "1.0.0" @@ -359,10 +338,9 @@ checksum = "065374052e7df7ee4047b1160cca5e1467a12351a40b3da123c870ba0b8eda2a" [[package]] name = "attestation" -version = "1.6.2" +version = "1.7.0" dependencies = [ "ctype", - "delegation", "frame-benchmarking", "frame-support", "frame-system", @@ -370,7 +348,6 @@ dependencies = [ "log", "pallet-balances", "parity-scale-codec", - "runtime-common", "scale-info", "serde", "sp-core", @@ -378,7 +355,7 @@ dependencies = [ "sp-keystore", "sp-runtime", "sp-std", - "substrate-wasm-builder-runner", + "substrate-wasm-builder", ] [[package]] @@ -389,7 +366,7 @@ checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8" dependencies = [ "hermit-abi", "libc", - "winapi 0.3.9", + "winapi", ] [[package]] @@ -398,18 +375,32 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" +[[package]] +name = "backoff" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b62ddb9cb1ec0a098ad4bbf9344d0713fa193ae1a80af55febcff2627b6a00c1" +dependencies = [ + "futures-core", + "getrandom 0.2.6", + "instant", + "pin-project-lite 0.2.8", + "rand 0.8.5", + "tokio", +] + [[package]] name = "backtrace" -version = "0.3.64" +version = "0.3.65" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e121dee8023ce33ab248d9ce1493df03c3b38a659b240096fcbd7048ff9c31f" +checksum = "11a17d453482a265fd5f8479f2a3f405566e6ca627837aaddb85af8b1ab8ef61" dependencies = [ "addr2line", "cc", "cfg-if 1.0.0", "libc", "miniz_oxide", - "object", + "object 0.28.3", "rustc-demangle", ] @@ -419,6 +410,12 @@ version = "0.2.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a4521f3e3d031370679b3b140beb36dfe4801b09ac77e30c61941f97df3ef28b" +[[package]] +name = "base16ct" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "349a06037c7bf932dd7e7d1f653678b2038b9ad46a74102f1fc7bd7872678cce" + [[package]] name = "base58" version = "0.2.0" @@ -443,16 +440,19 @@ dependencies = [ [[package]] name = "beefy-gadget" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "beefy-primitives", "fnv", "futures 0.3.21", + "futures-timer", + "hex", "log", "parity-scale-codec", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "sc-chain-spec", "sc-client-api", + "sc-finality-grandpa", "sc-keystore", "sc-network", "sc-network-gossip", @@ -461,8 +461,10 @@ dependencies = [ "sp-application-crypto", "sp-arithmetic", "sp-blockchain", + "sp-consensus", "sp-core", "sp-keystore", + "sp-mmr-primitives", "sp-runtime", "substrate-prometheus-endpoint", "thiserror", @@ -472,18 +474,15 @@ dependencies = [ [[package]] name = "beefy-gadget-rpc" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "beefy-gadget", "beefy-primitives", "futures 0.3.21", - "jsonrpc-core", - "jsonrpc-core-client", - "jsonrpc-derive", - "jsonrpc-pubsub", + "jsonrpsee", "log", "parity-scale-codec", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "sc-rpc", "sc-utils", "serde", @@ -495,12 +494,12 @@ dependencies = [ [[package]] name = "beefy-merkle-tree" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" [[package]] name = "beefy-primitives" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "parity-scale-codec", "scale-info", @@ -553,9 +552,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "bitvec" -version = "0.20.4" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7774144344a4faa177370406a7ff5f1da24303817368584c6206c8303eb07848" +checksum = "1489fcb93a5bb47da0462ca93ad252ad6af2145cce58d10d46a83931ba9f016b" dependencies = [ "funty", "radium", @@ -565,13 +564,11 @@ dependencies = [ [[package]] name = "blake2" -version = "0.9.2" +version = "0.10.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a4e37d16930f5459780f5621038b6382b9bb37c19016f39fb6b5808d831f174" +checksum = "b9cf849ee05b2ee5fba5e36f97ff8ec2533916700fc0758d40d92136a42f3388" dependencies = [ - "crypto-mac 0.8.0", - "digest 0.9.0", - "opaque-debug 0.3.0", + "digest 0.10.3", ] [[package]] @@ -586,39 +583,38 @@ dependencies = [ [[package]] name = "blake2b_simd" -version = "0.5.11" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "afa748e348ad3be8263be728124b24a24f268266f6f5d58af9d75f6a40b5c587" +checksum = "72936ee4afc7f8f736d1c38383b56480b5497b4617b4a77bdbf1d2ababc76127" dependencies = [ "arrayref", - "arrayvec 0.5.2", + "arrayvec 0.7.2", "constant_time_eq", ] [[package]] name = "blake2s_simd" -version = "0.5.11" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e461a7034e85b211a4acb57ee2e6730b32912b06c08cc242243c39fc21ae6a2" +checksum = "db539cc2b5f6003621f1cd9ef92d7ded8ea5232c7de0f9faa2de251cd98730d4" dependencies = [ "arrayref", - "arrayvec 0.5.2", + "arrayvec 0.7.2", "constant_time_eq", ] [[package]] name = "blake3" -version = "0.3.8" +version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b64485778c4f16a6a5a9d335e80d449ac6c70cdd6a06d2af18a6f6f775a125b3" +checksum = "a08e53fc5a564bb15bfe6fae56bd71522205f1f91893f9c0116edad6496c183f" dependencies = [ "arrayref", - "arrayvec 0.5.2", + "arrayvec 0.7.2", "cc", - "cfg-if 0.1.10", + "cfg-if 1.0.0", "constant_time_eq", - "crypto-mac 0.8.0", - "digest 0.9.0", + "digest 0.10.3", ] [[package]] @@ -683,9 +679,9 @@ dependencies = [ [[package]] name = "bounded-vec" -version = "0.5.0" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b47cca82fca99417fe405f09d93bb8fff90bdd03d13c631f18096ee123b4281c" +checksum = "3372be4090bf9d4da36bd8ba7ce6ca1669503d0cf6e667236c6df7f053153eb6" dependencies = [ "thiserror", ] @@ -693,8 +689,9 @@ dependencies = [ [[package]] name = "bp-header-chain" version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ + "bp-runtime", "finality-grandpa", "frame-support", "parity-scale-codec", @@ -709,7 +706,7 @@ dependencies = [ [[package]] name = "bp-message-dispatch" version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "bp-runtime", "frame-support", @@ -721,7 +718,7 @@ dependencies = [ [[package]] name = "bp-messages" version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "bitvec", "bp-runtime", @@ -731,13 +728,14 @@ dependencies = [ "parity-scale-codec", "scale-info", "serde", + "sp-core", "sp-std", ] [[package]] name = "bp-polkadot-core" version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "bp-messages", "bp-runtime", @@ -755,7 +753,7 @@ dependencies = [ [[package]] name = "bp-rococo" version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "bp-messages", "bp-polkadot-core", @@ -772,7 +770,7 @@ dependencies = [ [[package]] name = "bp-runtime" version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "frame-support", "hash-db", @@ -790,7 +788,7 @@ dependencies = [ [[package]] name = "bp-test-utils" version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "bp-header-chain", "ed25519-dalek", @@ -805,7 +803,7 @@ dependencies = [ [[package]] name = "bp-wococo" version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "bp-messages", "bp-polkadot-core", @@ -820,12 +818,13 @@ dependencies = [ [[package]] name = "bridge-runtime-common" version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "bp-message-dispatch", "bp-messages", "bp-runtime", "frame-support", + "frame-system", "hash-db", "pallet-bridge-dispatch", "pallet-bridge-grandpa", @@ -833,6 +832,7 @@ dependencies = [ "pallet-transaction-payment", "parity-scale-codec", "scale-info", + "sp-api", "sp-core", "sp-runtime", "sp-state-machine", @@ -890,19 +890,20 @@ checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610" [[package]] name = "bytes" -version = "0.4.12" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "206fdffcfa2df7cbe15601ef46c813fce0965eb3286db6b56c583b814b51c81c" -dependencies = [ - "byteorder", - "iovec", -] +checksum = "c4872d67bab6358e59559027aa3b9157c53d9358c51423c17554809a8858e0f8" [[package]] -name = "bytes" -version = "1.1.0" +name = "bzip2-sys" +version = "0.1.11+1.0.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4872d67bab6358e59559027aa3b9157c53d9358c51423c17554809a8858e0f8" +checksum = "736a955f3fa7875102d57c82b8cac37ec45224a07fd32d58f9f7a186b6cd4cdc" +dependencies = [ + "cc", + "libc", + "pkg-config", +] [[package]] name = "cache-padded" @@ -936,7 +937,7 @@ checksum = "4acbb09d9ee8e23699b9634375c72795d095bf268439da88562cf9b501f181fa" dependencies = [ "camino", "cargo-platform", - "semver 1.0.6", + "semver 1.0.7", "serde", "serde_json", ] @@ -979,21 +980,21 @@ checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e" [[package]] name = "chacha20" -version = "0.7.1" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fee7ad89dc1128635074c268ee661f90c3f7e83d9fd12910608c36b47d6c3412" +checksum = "01b72a433d0cf2aef113ba70f62634c56fddb0f244e6377185c56a7cadbd8f91" dependencies = [ "cfg-if 1.0.0", "cipher", - "cpufeatures 0.1.5", + "cpufeatures", "zeroize", ] [[package]] name = "chacha20poly1305" -version = "0.8.0" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1580317203210c517b6d44794abfbe600698276db18127e37ad3e69bf5e848e5" +checksum = "3b84ed6d1d5f7aa9bdde921a5090e0ca4d934d250ea3b402a5fab3a994e28a2a" dependencies = [ "aead", "chacha20", @@ -1012,18 +1013,20 @@ dependencies = [ "num-integer", "num-traits", "time", - "winapi 0.3.9", + "winapi", ] [[package]] name = "cid" -version = "0.6.1" +version = "0.8.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff0e3bc0b6446b3f9663c1a6aba6ef06c5aeaa1bc92bd18077be337198ab9768" +checksum = "fc949bff6704880faf064c42a4854032ab07bfcf3a4fcb82a57470acededb69c" dependencies = [ + "core2", "multibase", - "multihash 0.13.2", - "unsigned-varint 0.5.1", + "multihash", + "serde", + "unsigned-varint", ] [[package]] @@ -1057,16 +1060,16 @@ dependencies = [ [[package]] name = "clap" -version = "3.1.6" +version = "3.1.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8c93436c21e4698bacadf42917db28b23017027a4deccb35dbe47a7e7840123" +checksum = "d2dbdf4bdacb33466e854ce889eee8dfd5729abf7ccd7664d0a2d60cd384440b" dependencies = [ "atty", "bitflags", "clap_derive", + "clap_lex", "indexmap", "lazy_static", - "os_str_bytes", "strsim", "termcolor", "textwrap", @@ -1074,9 +1077,9 @@ dependencies = [ [[package]] name = "clap_derive" -version = "3.1.4" +version = "3.1.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da95d038ede1a964ce99f49cbe27a7fb538d1da595e4b4f70b8c8f338d17bf16" +checksum = "25320346e922cffe59c0bbc5410c8d8784509efb321488971081313cb1e1a33c" dependencies = [ "heck 0.4.0", "proc-macro-error", @@ -1086,12 +1089,44 @@ dependencies = [ ] [[package]] -name = "cloudabi" -version = "0.0.3" +name = "clap_lex" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f" +checksum = "a37c35f1112dad5e6e0b1adaff798507497a18fceeb30cceb3bae7d1427b9213" dependencies = [ - "bitflags", + "os_str_bytes", +] + +[[package]] +name = "cmake" +version = "0.1.48" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e8ad8cef104ac57b68b89df3208164d228503abbdce70f6880ffa3d970e7443a" +dependencies = [ + "cc", +] + +[[package]] +name = "coarsetime" +version = "0.1.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "454038500439e141804c655b4cd1bc6a70bcb95cd2bc9463af5661b6956f0e46" +dependencies = [ + "libc", + "once_cell", + "wasi 0.11.0+wasi-snapshot-preview1", + "wasm-bindgen", +] + +[[package]] +name = "comfy-table" +version = "5.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b103d85ca6e209388771bfb7aa6b68a7aeec4afbf6f0a0264bfbf50360e5212e" +dependencies = [ + "strum 0.23.0", + "strum_macros 0.23.1", + "unicode-width", ] [[package]] @@ -1103,6 +1138,12 @@ dependencies = [ "cache-padded", ] +[[package]] +name = "const-oid" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e4c78c047431fee22c1a7bb92e00ad095a02a983affe4d8a72e2a2c62c1b94f3" + [[package]] name = "constant_time_eq" version = "0.1.5" @@ -1132,21 +1173,21 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5827cebf4670468b8772dd191856768aedcb1b0278a04f989f7766351917b9dc" [[package]] -name = "cpp_demangle" -version = "0.3.5" +name = "core2" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eeaa953eaad386a53111e47172c2fedba671e5684c8dd601a5f474f4f118710f" +checksum = "b49ba7ef1ad6107f8824dbe97de947cbaac53c44e7f9756a1fba0d37c1eec505" dependencies = [ - "cfg-if 1.0.0", + "memchr", ] [[package]] -name = "cpufeatures" -version = "0.1.5" +name = "cpp_demangle" +version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "66c99696f6c9dd7f35d486b9d04d7e6e202aa3e8c40d553f2fdf5e7e0c6a71ef" +checksum = "eeaa953eaad386a53111e47172c2fedba671e5684c8dd601a5f474f4f118710f" dependencies = [ - "libc", + "cfg-if 1.0.0", ] [[package]] @@ -1160,18 +1201,18 @@ dependencies = [ [[package]] name = "cranelift-bforest" -version = "0.80.1" +version = "0.82.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62fc68cdb867b7d27b5f33cd65eb11376dfb41a2d09568a1a2c2bc1dc204f4ef" +checksum = "38faa2a16616c8e78a18d37b4726b98bfd2de192f2fdc8a39ddf568a408a0f75" dependencies = [ "cranelift-entity", ] [[package]] name = "cranelift-codegen" -version = "0.80.1" +version = "0.82.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31253a44ab62588f8235a996cc9b0636d98a299190069ced9628b8547329b47a" +checksum = "26f192472a3ba23860afd07d2b0217dc628f21fcc72617aa1336d98e1671f33b" dependencies = [ "cranelift-bforest", "cranelift-codegen-meta", @@ -1186,33 +1227,33 @@ dependencies = [ [[package]] name = "cranelift-codegen-meta" -version = "0.80.1" +version = "0.82.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a20ab4627d30b702fb1b8a399882726d216b8164d3b3fa6189e3bf901506afe" +checksum = "0f32ddb89e9b89d3d9b36a5b7d7ea3261c98235a76ac95ba46826b8ec40b1a24" dependencies = [ "cranelift-codegen-shared", ] [[package]] name = "cranelift-codegen-shared" -version = "0.80.1" +version = "0.82.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6687d9668dacfed4468361f7578d86bded8ca4db978f734d9b631494bebbb5b8" +checksum = "01fd0d9f288cc1b42d9333b7a776b17e278fc888c28e6a0f09b5573d45a150bc" [[package]] name = "cranelift-entity" -version = "0.80.1" +version = "0.82.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c77c5d72db97ba2cb36f69037a709edbae0d29cb25503775891e7151c5c874bf" +checksum = "9e3bfe172b83167604601faf9dc60453e0d0a93415b57a9c4d1a7ae6849185cf" dependencies = [ "serde", ] [[package]] name = "cranelift-frontend" -version = "0.80.1" +version = "0.82.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "426dca83f63c7c64ea459eb569aadc5e0c66536c0042ed5d693f91830e8750d0" +checksum = "a006e3e32d80ce0e4ba7f1f9ddf66066d052a8c884a110b91d05404d6ce26dce" dependencies = [ "cranelift-codegen", "log", @@ -1222,9 +1263,9 @@ dependencies = [ [[package]] name = "cranelift-native" -version = "0.80.1" +version = "0.82.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8007864b5d0c49b026c861a15761785a2871124e401630c03ef1426e6d0d559e" +checksum = "501241b0cdf903412ec9075385ac9f2b1eb18a89044d1538e97fab603231f70c" dependencies = [ "cranelift-codegen", "libc", @@ -1233,9 +1274,9 @@ dependencies = [ [[package]] name = "cranelift-wasm" -version = "0.80.1" +version = "0.82.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94cf12c071415ba261d897387ae5350c4d83c238376c8c5a96514ecfa2ea66a3" +checksum = "16d9e4211bbc3268042a96dd4de5bd979cda22434991d035f5f8eacba987fad2" dependencies = [ "cranelift-codegen", "cranelift-entity", @@ -1291,6 +1332,16 @@ dependencies = [ "scopeguard", ] +[[package]] +name = "crossbeam-queue" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1f25d8400f4a7a5778f0e4e52384a48cbd9b5c495d110786187fc750075277a2" +dependencies = [ + "cfg-if 1.0.0", + "crossbeam-utils", +] + [[package]] name = "crossbeam-utils" version = "0.8.8" @@ -1307,6 +1358,18 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7" +[[package]] +name = "crypto-bigint" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "03c6a1d5fa1de37e071642dfa44ec552ca5b299adb128fab16138e24b548fd21" +dependencies = [ + "generic-array 0.14.5", + "rand_core 0.6.3", + "subtle", + "zeroize", +] + [[package]] name = "crypto-common" version = "0.1.3" @@ -1337,15 +1400,6 @@ dependencies = [ "subtle", ] -[[package]] -name = "ct-logs" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1a816186fa68d9e426e3cb4ae4dff1fcd8e4a2c34b781bf7a822574a0d0aac8" -dependencies = [ - "sct 0.6.1", -] - [[package]] name = "ctor" version = "0.1.22" @@ -1367,7 +1421,7 @@ dependencies = [ [[package]] name = "ctype" -version = "1.6.2" +version = "1.7.0" dependencies = [ "frame-benchmarking", "frame-support", @@ -1376,7 +1430,6 @@ dependencies = [ "log", "pallet-balances", "parity-scale-codec", - "runtime-common", "scale-info", "serde", "sp-core", @@ -1384,7 +1437,7 @@ dependencies = [ "sp-keystore", "sp-runtime", "sp-std", - "substrate-wasm-builder-runner", + "substrate-wasm-builder", ] [[package]] @@ -1401,17 +1454,18 @@ dependencies = [ [[package]] name = "cumulus-client-cli" version = "0.1.0" -source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.17#db11baacc325537be74ad34517fcb28ed9ded6c6" +source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.24#95ca5a085727c1494ddeeae4a2b2e69c4ee1933b" dependencies = [ "clap", "sc-cli", "sc-service", + "url", ] [[package]] name = "cumulus-client-collator" version = "0.1.0" -source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.17#db11baacc325537be74ad34517fcb28ed9ded6c6" +source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.24#95ca5a085727c1494ddeeae4a2b2e69c4ee1933b" dependencies = [ "cumulus-client-consensus-common", "cumulus-client-network", @@ -1419,7 +1473,7 @@ dependencies = [ "cumulus-relay-chain-interface", "futures 0.3.21", "parity-scale-codec", - "parking_lot 0.10.2", + "parking_lot 0.12.0", "polkadot-node-primitives", "polkadot-node-subsystem", "polkadot-overseer", @@ -1435,7 +1489,7 @@ dependencies = [ [[package]] name = "cumulus-client-consensus-aura" version = "0.1.0" -source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.17#db11baacc325537be74ad34517fcb28ed9ded6c6" +source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.24#95ca5a085727c1494ddeeae4a2b2e69c4ee1933b" dependencies = [ "async-trait", "cumulus-client-consensus-common", @@ -1464,7 +1518,7 @@ dependencies = [ [[package]] name = "cumulus-client-consensus-common" version = "0.1.0" -source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.17#db11baacc325537be74ad34517fcb28ed9ded6c6" +source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.24#95ca5a085727c1494ddeeae4a2b2e69c4ee1933b" dependencies = [ "async-trait", "cumulus-relay-chain-interface", @@ -1485,7 +1539,7 @@ dependencies = [ [[package]] name = "cumulus-client-consensus-relay-chain" version = "0.1.0" -source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.17#db11baacc325537be74ad34517fcb28ed9ded6c6" +source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.24#95ca5a085727c1494ddeeae4a2b2e69c4ee1933b" dependencies = [ "async-trait", "cumulus-client-consensus-common", @@ -1509,7 +1563,7 @@ dependencies = [ [[package]] name = "cumulus-client-network" version = "0.1.0" -source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.17#db11baacc325537be74ad34517fcb28ed9ded6c6" +source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.24#95ca5a085727c1494ddeeae4a2b2e69c4ee1933b" dependencies = [ "async-trait", "cumulus-relay-chain-interface", @@ -1534,7 +1588,7 @@ dependencies = [ [[package]] name = "cumulus-client-pov-recovery" version = "0.1.0" -source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.17#db11baacc325537be74ad34517fcb28ed9ded6c6" +source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.24#95ca5a085727c1494ddeeae4a2b2e69c4ee1933b" dependencies = [ "cumulus-primitives-core", "cumulus-relay-chain-interface", @@ -1558,8 +1612,9 @@ dependencies = [ [[package]] name = "cumulus-client-service" version = "0.1.0" -source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.17#db11baacc325537be74ad34517fcb28ed9ded6c6" +source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.24#95ca5a085727c1494ddeeae4a2b2e69c4ee1933b" dependencies = [ + "cumulus-client-cli", "cumulus-client-collator", "cumulus-client-consensus-common", "cumulus-client-pov-recovery", @@ -1587,7 +1642,7 @@ dependencies = [ [[package]] name = "cumulus-pallet-aura-ext" version = "0.1.0" -source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.17#db11baacc325537be74ad34517fcb28ed9ded6c6" +source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.24#95ca5a085727c1494ddeeae4a2b2e69c4ee1933b" dependencies = [ "frame-executive", "frame-support", @@ -1605,7 +1660,7 @@ dependencies = [ [[package]] name = "cumulus-pallet-parachain-system" version = "0.1.0" -source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.17#db11baacc325537be74ad34517fcb28ed9ded6c6" +source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.24#95ca5a085727c1494ddeeae4a2b2e69c4ee1933b" dependencies = [ "cumulus-pallet-parachain-system-proc-macro", "cumulus-primitives-core", @@ -1635,9 +1690,9 @@ dependencies = [ [[package]] name = "cumulus-pallet-parachain-system-proc-macro" version = "0.1.0" -source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.17#db11baacc325537be74ad34517fcb28ed9ded6c6" +source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.24#95ca5a085727c1494ddeeae4a2b2e69c4ee1933b" dependencies = [ - "proc-macro-crate 1.1.3", + "proc-macro-crate", "proc-macro2", "quote", "syn", @@ -1646,7 +1701,7 @@ dependencies = [ [[package]] name = "cumulus-pallet-session-benchmarking" version = "3.0.0" -source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.17#db11baacc325537be74ad34517fcb28ed9ded6c6" +source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.24#95ca5a085727c1494ddeeae4a2b2e69c4ee1933b" dependencies = [ "frame-benchmarking", "frame-support", @@ -1660,7 +1715,7 @@ dependencies = [ [[package]] name = "cumulus-pallet-xcmp-queue" version = "0.1.0" -source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.17#db11baacc325537be74ad34517fcb28ed9ded6c6" +source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.24#95ca5a085727c1494ddeeae4a2b2e69c4ee1933b" dependencies = [ "cumulus-primitives-core", "frame-support", @@ -1678,7 +1733,7 @@ dependencies = [ [[package]] name = "cumulus-primitives-core" version = "0.1.0" -source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.17#db11baacc325537be74ad34517fcb28ed9ded6c6" +source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.24#95ca5a085727c1494ddeeae4a2b2e69c4ee1933b" dependencies = [ "frame-support", "parity-scale-codec", @@ -1694,7 +1749,7 @@ dependencies = [ [[package]] name = "cumulus-primitives-parachain-inherent" version = "0.1.0" -source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.17#db11baacc325537be74ad34517fcb28ed9ded6c6" +source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.24#95ca5a085727c1494ddeeae4a2b2e69c4ee1933b" dependencies = [ "async-trait", "cumulus-primitives-core", @@ -1717,25 +1772,61 @@ dependencies = [ [[package]] name = "cumulus-primitives-timestamp" version = "0.1.0" -source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.17#db11baacc325537be74ad34517fcb28ed9ded6c6" +source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.24#95ca5a085727c1494ddeeae4a2b2e69c4ee1933b" dependencies = [ "cumulus-primitives-core", + "futures 0.3.21", + "parity-scale-codec", "sp-inherents", "sp-std", "sp-timestamp", ] +[[package]] +name = "cumulus-relay-chain-inprocess-interface" +version = "0.1.0" +source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.24#95ca5a085727c1494ddeeae4a2b2e69c4ee1933b" +dependencies = [ + "async-trait", + "cumulus-primitives-core", + "cumulus-relay-chain-interface", + "futures 0.3.21", + "futures-timer", + "parking_lot 0.12.0", + "polkadot-cli", + "polkadot-client", + "polkadot-service", + "sc-cli", + "sc-client-api", + "sc-consensus-babe", + "sc-network", + "sc-service", + "sc-sysinfo", + "sc-telemetry", + "sc-tracing", + "sp-api", + "sp-blockchain", + "sp-consensus", + "sp-core", + "sp-runtime", + "sp-state-machine", + "tracing", +] + [[package]] name = "cumulus-relay-chain-interface" version = "0.1.0" -source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.17#db11baacc325537be74ad34517fcb28ed9ded6c6" +source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.24#95ca5a085727c1494ddeeae4a2b2e69c4ee1933b" dependencies = [ "async-trait", "cumulus-primitives-core", "derive_more", "futures 0.3.21", + "jsonrpsee-core", + "parity-scale-codec", "parking_lot 0.12.0", "polkadot-overseer", + "polkadot-service", "sc-client-api", "sc-service", "sp-api", @@ -1747,37 +1838,35 @@ dependencies = [ ] [[package]] -name = "cumulus-relay-chain-local" +name = "cumulus-relay-chain-rpc-interface" version = "0.1.0" -source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.17#db11baacc325537be74ad34517fcb28ed9ded6c6" +source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.24#95ca5a085727c1494ddeeae4a2b2e69c4ee1933b" dependencies = [ "async-trait", + "backoff", "cumulus-primitives-core", "cumulus-relay-chain-interface", "futures 0.3.21", "futures-timer", + "jsonrpsee", + "parity-scale-codec", "parking_lot 0.12.0", - "polkadot-client", "polkadot-service", "sc-client-api", - "sc-consensus-babe", - "sc-network", - "sc-service", - "sc-telemetry", - "sc-tracing", + "sc-rpc-api", "sp-api", - "sp-blockchain", - "sp-consensus", "sp-core", "sp-runtime", "sp-state-machine", + "sp-storage", "tracing", + "url", ] [[package]] name = "cumulus-test-relay-sproof-builder" version = "0.1.0" -source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.17#db11baacc325537be74ad34517fcb28ed9ded6c6" +source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.24#95ca5a085727c1494ddeeae4a2b2e69c4ee1933b" dependencies = [ "cumulus-primitives-core", "parity-scale-codec", @@ -1813,6 +1902,19 @@ dependencies = [ "zeroize", ] +[[package]] +name = "curve25519-dalek" +version = "4.0.0-pre.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4033478fbf70d6acf2655ac70da91ee65852d69daf7a67bf7a2f518fb47aafcf" +dependencies = [ + "byteorder", + "digest 0.9.0", + "rand_core 0.6.3", + "subtle", + "zeroize", +] + [[package]] name = "data-encoding" version = "2.3.2" @@ -1841,11 +1943,12 @@ dependencies = [ [[package]] name = "delegation" -version = "1.6.2" +version = "1.7.0" dependencies = [ + "attestation", "bitflags", "ctype", - "env_logger 0.8.4", + "env_logger", "frame-benchmarking", "frame-support", "frame-system", @@ -1853,7 +1956,6 @@ dependencies = [ "log", "pallet-balances", "parity-scale-codec", - "runtime-common", "scale-info", "serde", "sp-core", @@ -1861,7 +1963,16 @@ dependencies = [ "sp-keystore", "sp-runtime", "sp-std", - "substrate-wasm-builder-runner", + "substrate-wasm-builder", +] + +[[package]] +name = "der" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6919815d73839e7ad218de758883aae3a257ba6759ce7a9992501efbb53d705c" +dependencies = [ + "const-oid", ] [[package]] @@ -1890,10 +2001,10 @@ dependencies = [ [[package]] name = "did" -version = "1.6.2" +version = "1.7.0" dependencies = [ "ctype", - "env_logger 0.8.4", + "env_logger", "frame-benchmarking", "frame-support", "frame-system", @@ -1902,7 +2013,6 @@ dependencies = [ "log", "pallet-balances", "parity-scale-codec", - "runtime-common", "scale-info", "serde", "sp-core", @@ -1910,7 +2020,7 @@ dependencies = [ "sp-keystore", "sp-runtime", "sp-std", - "substrate-wasm-builder-runner", + "substrate-wasm-builder", ] [[package]] @@ -1939,6 +2049,7 @@ checksum = "f2fb860ca6fafa5552fb6d0e816a69c8e49f0908bf524e30a90d97c85892d506" dependencies = [ "block-buffer 0.10.2", "crypto-common", + "subtle", ] [[package]] @@ -1968,7 +2079,7 @@ checksum = "1b1d1d91c932ef41c0f2663aa8b0ca0342d444d842c06914aa0a7e352d0bada6" dependencies = [ "libc", "redox_users", - "winapi 0.3.9", + "winapi", ] [[package]] @@ -1979,7 +2090,7 @@ checksum = "4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d" dependencies = [ "libc", "redox_users", - "winapi 0.3.9", + "winapi", ] [[package]] @@ -2000,9 +2111,9 @@ checksum = "9ea835d29036a4087793836fa931b08837ad5e957da9e23886b29586fb9b6650" [[package]] name = "dtoa" -version = "0.4.8" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56899898ce76aaf4a0f24d914c97ea6ed976d42fec6ad33fcbb0a1103e07b2b0" +checksum = "5caaa75cbd2b960ff1e5392d2cfb1f44717fffe12fc1f32b7b5d1267f99732a6" [[package]] name = "dyn-clonable" @@ -2031,6 +2142,18 @@ version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "21e50f3adc76d6a43f5ed73b698a87d0760ca74617f60f7c3b879003536fdd28" +[[package]] +name = "ecdsa" +version = "0.13.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d0d69ae62e0ce582d56380743515fefaf1a8c70cec685d9677636d7e30ae9dc9" +dependencies = [ + "der", + "elliptic-curve", + "rfc6979", + "signature", +] + [[package]] name = "ed25519" version = "1.4.1" @@ -2061,31 +2184,49 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457" [[package]] -name = "enum-as-inner" -version = "0.3.4" +name = "elliptic-curve" +version = "0.11.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "570d109b813e904becc80d8d5da38376818a143348413f7149f1340fe04754d4" +checksum = "25b477563c2bfed38a3b7a60964c49e058b2510ad3f12ba3483fd8f62c2306d6" dependencies = [ - "heck 0.4.0", - "proc-macro2", - "quote", - "syn", -] - + "base16ct", + "crypto-bigint", + "der", + "ff", + "generic-array 0.14.5", + "group", + "rand_core 0.6.3", + "sec1", + "subtle", + "zeroize", +] + +[[package]] +name = "enum-as-inner" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "21cdad81446a7f7dc43f6a77409efeb9733d2fa65553efef6018ef257c959b73" +dependencies = [ + "heck 0.4.0", + "proc-macro2", + "quote", + "syn", +] + [[package]] name = "enumflags2" -version = "0.6.4" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83c8d82922337cd23a15f88b70d8e4ef5f11da38dd7cdb55e84dd5de99695da0" +checksum = "e75d4cd21b95383444831539909fbb14b9dc3fdceb2a6f5d36577329a1f55ccb" dependencies = [ "enumflags2_derive", ] [[package]] name = "enumflags2_derive" -version = "0.6.4" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "946ee94e3dbf58fdd324f9ce245c7b238d46a66f00e86a020b71996349e46cce" +checksum = "f58dc3c5e468259f19f2d46304a6b28f1c3d034442e14b322d2b850e36f6d5ae" dependencies = [ "proc-macro2", "quote", @@ -2094,28 +2235,15 @@ dependencies = [ [[package]] name = "enumn" -version = "0.1.3" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e58b112d5099aa0857c5d05f0eacab86406dd8c0f85fe5d320a13256d29ecf4" +checksum = "052bc8773a98bd051ff37db74a8a25f00e6bfa2cbd03373390c72e9f7afbf344" dependencies = [ "proc-macro2", "quote", "syn", ] -[[package]] -name = "env_logger" -version = "0.8.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a19187fea3ac7e84da7dacf48de0c45d63c6a76f9490dae389aead16c243fce3" -dependencies = [ - "atty", - "humantime", - "log", - "regex", - "termcolor", -] - [[package]] name = "env_logger" version = "0.9.0" @@ -2143,7 +2271,7 @@ checksum = "f639046355ee4f37944e44f60642c6f3a7efa3cf6b78c78a0d989a8ce6c396a1" dependencies = [ "errno-dragonfly", "libc", - "winapi 0.3.9", + "winapi", ] [[package]] @@ -2171,6 +2299,31 @@ dependencies = [ "futures 0.3.21", ] +[[package]] +name = "expander" +version = "0.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a718c0675c555c5f976fff4ea9e2c150fa06cefa201cadef87cfbf9324075881" +dependencies = [ + "blake3", + "fs-err", + "proc-macro2", + "quote", +] + +[[package]] +name = "expander" +version = "0.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3774182a5df13c3d1690311ad32fbe913feef26baba609fa2dd5f72042bd2ab6" +dependencies = [ + "blake2", + "fs-err", + "proc-macro2", + "quote", + "syn", +] + [[package]] name = "fake-simd" version = "0.1.2" @@ -2192,6 +2345,31 @@ dependencies = [ "instant", ] +[[package]] +name = "fatality" +version = "0.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2ad875162843b0d046276327afe0136e9ed3a23d5a754210fb6f1f33610d39ab" +dependencies = [ + "fatality-proc-macro", + "thiserror", +] + +[[package]] +name = "fatality-proc-macro" +version = "0.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f5aa1e3ae159e592ad222dc90c5acbad632b527779ba88486abe92782ab268bd" +dependencies = [ + "expander 0.0.4", + "indexmap", + "proc-macro-crate", + "proc-macro2", + "quote", + "syn", + "thiserror", +] + [[package]] name = "fdlimit" version = "0.2.1" @@ -2201,21 +2379,31 @@ dependencies = [ "libc", ] +[[package]] +name = "ff" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b2958d04124b9f27f175eaeb9a9f383d026098aa837eadd8ba22c11f13a05b9e" +dependencies = [ + "rand_core 0.6.3", + "subtle", +] + [[package]] name = "file-per-thread-logger" version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "21e16290574b39ee41c71aeb90ae960c504ebaf1e2a1c87bd52aa56ed6e1a02f" dependencies = [ - "env_logger 0.9.0", + "env_logger", "log", ] [[package]] name = "finality-grandpa" -version = "0.14.4" +version = "0.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8ac3ff5224ef91f3c97e03eb1de2db82743427e91aaa5ac635f454f0b164f5a" +checksum = "d9def033d8505edf199f6a5d07aa7e6d2d6185b164293b77f0efd108f4f3e11d" dependencies = [ "either", "futures 0.3.21", @@ -2247,9 +2435,9 @@ checksum = "279fb028e20b3c4c320317955b77c5e0c9701f05a1d309905d6fc702cdc5053e" [[package]] name = "flate2" -version = "1.0.22" +version = "1.0.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e6988e897c1c9c485f43b47a529cef42fde0547f9d8d41a7062518f1d8fc53f" +checksum = "b39522e96686d38f4bc984b9198e3a0613264abaebaff2c5c918bfa6b6da09af" dependencies = [ "cfg-if 1.0.0", "crc32fast", @@ -2267,7 +2455,7 @@ checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" [[package]] name = "fork-tree" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "parity-scale-codec", ] @@ -2279,13 +2467,13 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5fc25a87fa4fd2094bffb06925852034d90a17f0d1e05197d4956d3555752191" dependencies = [ "matches", - "percent-encoding 2.1.0", + "percent-encoding", ] [[package]] name = "frame-benchmarking" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-support", "frame-system", @@ -2307,48 +2495,84 @@ dependencies = [ [[package]] name = "frame-benchmarking-cli" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "Inflector", "chrono", "clap", + "comfy-table", "frame-benchmarking", "frame-support", + "frame-system", "handlebars", + "hash-db", + "hex", + "itertools", + "kvdb", + "lazy_static", "linked-hash-map", "log", + "memory-db", "parity-scale-codec", + "rand 0.8.5", + "rand_pcg 0.3.1", + "sc-block-builder", "sc-cli", + "sc-client-api", "sc-client-db", "sc-executor", "sc-service", + "sc-sysinfo", "serde", "serde_json", + "serde_nanos", + "sp-api", + "sp-blockchain", "sp-core", + "sp-database", "sp-externalities", + "sp-inherents", "sp-keystore", "sp-runtime", "sp-state-machine", + "sp-storage", + "sp-trie", + "tempfile", + "thiserror", + "thousands", +] + +[[package]] +name = "frame-election-provider-solution-type" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" +dependencies = [ + "proc-macro-crate", + "proc-macro2", + "quote", + "syn", ] [[package]] name = "frame-election-provider-support" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ + "frame-election-provider-solution-type", "frame-support", "frame-system", "parity-scale-codec", "scale-info", "sp-arithmetic", "sp-npos-elections", + "sp-runtime", "sp-std", ] [[package]] name = "frame-executive" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-support", "frame-system", @@ -2363,9 +2587,9 @@ dependencies = [ [[package]] name = "frame-metadata" -version = "14.2.0" +version = "15.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37ed5e5c346de62ca5c184b4325a6600d1eaca210666e4606fe4e449574978d0" +checksum = "df6bb8542ef006ef0de09a5c4420787d79823c0ed7924225822362fd2bf2ff2d" dependencies = [ "cfg-if 1.0.0", "parity-scale-codec", @@ -2376,12 +2600,13 @@ dependencies = [ [[package]] name = "frame-support" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "bitflags", "frame-metadata", "frame-support-procedural", "impl-trait-for-tuples", + "k256", "log", "once_cell", "parity-scale-codec", @@ -2405,7 +2630,7 @@ dependencies = [ [[package]] name = "frame-support-procedural" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "Inflector", "frame-support-procedural-tools", @@ -2417,10 +2642,10 @@ dependencies = [ [[package]] name = "frame-support-procedural-tools" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-support-procedural-tools-derive", - "proc-macro-crate 1.1.3", + "proc-macro-crate", "proc-macro2", "quote", "syn", @@ -2429,7 +2654,7 @@ dependencies = [ [[package]] name = "frame-support-procedural-tools-derive" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "proc-macro2", "quote", @@ -2439,7 +2664,7 @@ dependencies = [ [[package]] name = "frame-system" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-support", "log", @@ -2456,7 +2681,7 @@ dependencies = [ [[package]] name = "frame-system-benchmarking" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-benchmarking", "frame-support", @@ -2471,7 +2696,7 @@ dependencies = [ [[package]] name = "frame-system-rpc-runtime-api" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "parity-scale-codec", "sp-api", @@ -2480,7 +2705,7 @@ dependencies = [ [[package]] name = "frame-try-runtime" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-support", "sp-api", @@ -2503,7 +2728,7 @@ dependencies = [ "lazy_static", "libc", "libloading 0.5.2", - "winapi 0.3.9", + "winapi", ] [[package]] @@ -2513,30 +2738,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9564fc758e15025b46aa6643b1b77d047d1a56a1aea6e01002ac0c7026876213" dependencies = [ "libc", - "winapi 0.3.9", -] - -[[package]] -name = "fuchsia-zircon" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82" -dependencies = [ - "bitflags", - "fuchsia-zircon-sys", + "winapi", ] [[package]] -name = "fuchsia-zircon-sys" -version = "0.3.3" +name = "fs_extra" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7" +checksum = "2022715d62ab30faffd124d40b76f4134a550a87792276512b18d63272333394" [[package]] name = "funty" -version = "1.1.0" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fed34cd105917e91daa4da6b3728c47b068749d6a62c59811f06ed2ac71d9da7" +checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" [[package]] name = "futures" @@ -2621,13 +2836,13 @@ dependencies = [ [[package]] name = "futures-rustls" -version = "0.21.1" +version = "0.22.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a1387e07917c711fb4ee4f48ea0adb04a3c9739e53ef85bf43ae1edc2937a8b" +checksum = "e01fe9932a224b72b45336d96040aa86386d674a31d0af27d800ea7bc8ca97fe" dependencies = [ "futures-io", - "rustls 0.19.1", - "webpki 0.21.4", + "rustls", + "webpki", ] [[package]] @@ -2701,9 +2916,9 @@ dependencies = [ [[package]] name = "getrandom" -version = "0.2.5" +version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d39cd93900197114fa1fcb7ae84ca742095eed9442088988ae74fa744e930e77" +checksum = "9be70c98951c83b8d2f8f60d7065fa6d5146873094452a1008da8c2f1e4205ad" dependencies = [ "cfg-if 1.0.0", "libc", @@ -2752,9 +2967,9 @@ dependencies = [ [[package]] name = "gloo-timers" -version = "0.2.3" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d12a7f4e95cfe710f1d624fb1210b7d961a5fb05c4fd942f4feab06e61f590e" +checksum = "5fb7d06c1c8cc2a29bee7ec961009a0b2caa0793ee4900c2ffb348734ba1c8f9" dependencies = [ "futures-channel", "futures-core", @@ -2762,13 +2977,24 @@ dependencies = [ "wasm-bindgen", ] +[[package]] +name = "group" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc5ac374b108929de78460075f3dc439fa66df9d8fc77e8f12caa5165fcf0c89" +dependencies = [ + "ff", + "rand_core 0.6.3", + "subtle", +] + [[package]] name = "h2" -version = "0.3.12" +version = "0.3.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62eeb471aa3e3c9197aa4bfeabfe02982f6dc96f750486c0bb0009ac58b26d2b" +checksum = "37a82c6d637fc9515a4694bbf1cb2457b79d81ce52b3108bdeea58b07dd34a57" dependencies = [ - "bytes 1.1.0", + "bytes", "fnv", "futures-core", "futures-sink", @@ -2909,7 +3135,7 @@ checksum = "3c731c3e10504cc8ed35cfe2f1db4c9274c3d35fa486e3b31df46f068ef3e867" dependencies = [ "libc", "match_cfg", - "winapi 0.3.9", + "winapi", ] [[package]] @@ -2918,7 +3144,7 @@ version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "31f4c6746584866f0feabcc69893c5b51beef3831656a968ed7ae254cdc4fd03" dependencies = [ - "bytes 1.1.0", + "bytes", "fnv", "itoa 1.0.1", ] @@ -2929,16 +3155,16 @@ version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1ff4f84919677303da5f147645dbea6b1881f368d03ac84e1dc09031ebd7b2c6" dependencies = [ - "bytes 1.1.0", + "bytes", "http", "pin-project-lite 0.2.8", ] [[package]] name = "httparse" -version = "1.6.0" +version = "1.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9100414882e15fb7feccb4897e5f0ff0ff1ca7d1a86a23208ada4d7a18e6c6c4" +checksum = "6330e8a36bd8c859f3fa6d9382911fbb7147ec39807f63b923933a247240b9ba" [[package]] name = "httpdate" @@ -2954,11 +3180,11 @@ checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4" [[package]] name = "hyper" -version = "0.14.17" +version = "0.14.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "043f0e083e9901b6cc658a77d1eb86f4fc650bbb977a4337dd63192826aa85dd" +checksum = "b26ae0a80afebe130861d90abf98e3814a4f28a4c6ffeb5ab8ebb2be311e0ef2" dependencies = [ - "bytes 1.1.0", + "bytes", "futures-channel", "futures-core", "futures-util", @@ -2969,7 +3195,7 @@ dependencies = [ "httpdate", "itoa 1.0.1", "pin-project-lite 0.2.8", - "socket2 0.4.4", + "socket2", "tokio", "tower-service", "tracing", @@ -2978,30 +3204,17 @@ dependencies = [ [[package]] name = "hyper-rustls" -version = "0.22.1" +version = "0.23.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f9f7a97316d44c0af9b0301e65010573a853a9fc97046d7331d7f6bc0fd5a64" +checksum = "d87c48c02e0dc5e3b849a2041db3029fd066650f8f717c07bf8ed78ccb895cac" dependencies = [ - "ct-logs", - "futures-util", + "http", "hyper", "log", - "rustls 0.19.1", - "rustls-native-certs 0.5.0", + "rustls", + "rustls-native-certs", "tokio", - "tokio-rustls 0.22.0", - "webpki 0.21.4", -] - -[[package]] -name = "idna" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38f09e0f0b1fb55fdee1f17470ad800da77af5186a1a76c026b679358b7e844e" -dependencies = [ - "matches", - "unicode-bidi", - "unicode-normalization", + "tokio-rustls", ] [[package]] @@ -3017,46 +3230,37 @@ dependencies = [ [[package]] name = "if-addrs" -version = "0.6.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2273e421f7c4f0fc99e1934fe4776f59d8df2972f4199d703fc0da9f2a9f73de" -dependencies = [ - "if-addrs-sys", - "libc", - "winapi 0.3.9", -] - -[[package]] -name = "if-addrs-sys" -version = "0.3.2" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "de74b9dd780476e837e5eb5ab7c88b49ed304126e412030a0adba99c8efe79ea" +checksum = "cbc0fa01ffc752e9dbc72818cdb072cd028b86be5e09dd04c5a643704fe101a9" dependencies = [ - "cc", "libc", + "winapi", ] [[package]] name = "if-watch" -version = "0.2.2" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae8ab7f67bad3240049cb24fb9cb0b4c2c6af4c245840917fbbdededeee91179" +checksum = "ae8f4a3c3d4c89351ca83e120c1c00b27df945d38e05695668c9d4b4f7bc52f3" dependencies = [ "async-io", + "core-foundation", + "fnv", "futures 0.3.21", - "futures-lite", "if-addrs", "ipnet", - "libc", "log", - "winapi 0.3.9", + "rtnetlink", + "system-configuration", + "windows", ] [[package]] name = "impl-codec" -version = "0.5.1" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "161ebdfec3c8e3b52bf61c4f3550a1eea4f9579d10dc1b936f3171ebdcd6c443" +checksum = "ba6a270039626615617f3f36d15fc827041df3b78c439da2cadfa47455a77f2f" dependencies = [ "parity-scale-codec", ] @@ -3083,9 +3287,9 @@ dependencies = [ [[package]] name = "indexmap" -version = "1.8.0" +version = "1.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "282a6247722caba404c065016bbfa522806e51714c34f5dfc3e4a3a46fcb4223" +checksum = "0f647032dfaa1f8b6dc29bd3edb7bbef4861b8b8007ebb118d6db284fd59f6ee" dependencies = [ "autocfg", "hashbrown 0.11.2", @@ -3118,21 +3322,9 @@ dependencies = [ [[package]] name = "io-lifetimes" -version = "0.4.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6ef6787e7f0faedc040f95716bdd0e62bcfcf4ba93da053b62dea2691c13864" -dependencies = [ - "winapi 0.3.9", -] - -[[package]] -name = "iovec" -version = "0.1.4" +version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2b3ea6ff95e175473f8ffe6a7eb7c00d054240321b84c57051175fe3c1e075e" -dependencies = [ - "libc", -] +checksum = "ec58677acfea8a15352d42fc87d11d63596ade9239e0a7c9352914417515dbe6" [[package]] name = "ip_network" @@ -3142,21 +3334,21 @@ checksum = "aa2f047c0a98b2f299aa5d6d7088443570faae494e9ae1305e48be000c9e0eb1" [[package]] name = "ipconfig" -version = "0.2.2" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7e2f18aece9709094573a9f24f483c4f65caa4298e2f7ae1b71cc65d853fad7" +checksum = "723519edce41262b05d4143ceb95050e4c614f483e78e9fd9e39a8275a84ad98" dependencies = [ - "socket2 0.3.19", + "socket2", "widestring", - "winapi 0.3.9", + "winapi", "winreg", ] [[package]] name = "ipnet" -version = "2.4.0" +version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35e70ee094dc02fd9c13fdad4940090f22dbd6ac7c9e7094a46cf0232a50bc7c" +checksum = "879d54834c8c76457ef4293a689b2a8c59b076067ad77b15efafbb05f92a592b" [[package]] name = "itertools" @@ -3190,301 +3382,159 @@ dependencies = [ [[package]] name = "js-sys" -version = "0.3.56" +version = "0.3.57" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a38fc24e30fd564ce974c02bf1d337caddff65be6cc4735a1f7eab22a7440f04" +checksum = "671a26f820db17c2a2750743f1dd03bafd15b98c9f30c7c2628c024c05d73397" dependencies = [ "wasm-bindgen", ] [[package]] -name = "jsonrpc-client-transports" -version = "18.0.0" +name = "jsonrpsee" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2b99d4207e2a04fb4581746903c2bb7eb376f88de9c699d0f3e10feeac0cd3a" +checksum = "a1f2ab5a60e558e74ea93bcf5164ebc47939a7fff8938fa9b5233bbc63e16061" dependencies = [ - "derive_more", - "futures 0.3.21", - "jsonrpc-core", - "jsonrpc-pubsub", - "log", - "serde", - "serde_json", - "url 1.7.2", + "jsonrpsee-core", + "jsonrpsee-http-server", + "jsonrpsee-proc-macros", + "jsonrpsee-types", + "jsonrpsee-ws-client", + "jsonrpsee-ws-server", + "tracing", ] [[package]] -name = "jsonrpc-core" -version = "18.0.0" +name = "jsonrpsee-client-transport" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14f7f76aef2d054868398427f6c54943cf3d1caa9a7ec7d0c38d69df97a965eb" +checksum = "26d682f4a55081a2be3e639280c640523070e4aeb8ee2fd8dd9168fdae57a9db" dependencies = [ - "futures 0.3.21", - "futures-executor", "futures-util", - "log", + "http", + "jsonrpsee-core", + "jsonrpsee-types", + "pin-project 1.0.10", + "rustls-native-certs", + "soketto", + "thiserror", + "tokio", + "tokio-rustls", + "tokio-util", + "tracing", + "webpki-roots", +] + +[[package]] +name = "jsonrpsee-core" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6e27462b21279edf9a6a91f46ffbe125e9cdc58b901d2e08bf59b31a47d7d0ab" +dependencies = [ + "anyhow", + "arrayvec 0.7.2", + "async-lock", + "async-trait", + "beef", + "futures-channel", + "futures-timer", + "futures-util", + "hyper", + "jsonrpsee-types", + "parking_lot 0.12.0", + "rand 0.8.5", + "rustc-hash", "serde", - "serde_derive", "serde_json", + "soketto", + "thiserror", + "tokio", + "tracing", ] [[package]] -name = "jsonrpc-core-client" -version = "18.0.0" +name = "jsonrpsee-http-server" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b51da17abecbdab3e3d4f26b01c5ec075e88d3abe3ab3b05dc9aa69392764ec0" +checksum = "7178f16eabd7154c094e24d295b9ee355ec1e5f24c328759c56255ff7bbd4548" dependencies = [ - "futures 0.3.21", - "jsonrpc-client-transports", + "futures-channel", + "futures-util", + "globset", + "hyper", + "jsonrpsee-core", + "jsonrpsee-types", + "lazy_static", + "serde_json", + "tokio", + "tracing", + "unicase", ] [[package]] -name = "jsonrpc-derive" -version = "18.0.0" +name = "jsonrpsee-proc-macros" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b939a78fa820cdfcb7ee7484466746a7377760970f6f9c6fe19f9edcc8a38d2" +checksum = "8b8d7f449cab3b747f12c3efc27f5cad537f3b597c6a3838b0fac628f4bf730a" dependencies = [ - "proc-macro-crate 0.1.5", + "proc-macro-crate", "proc-macro2", "quote", "syn", ] [[package]] -name = "jsonrpc-http-server" -version = "18.0.0" +name = "jsonrpsee-types" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1dea6e07251d9ce6a552abfb5d7ad6bc290a4596c8dcc3d795fae2bbdc1f3ff" +checksum = "8fd11763134104122ddeb0f97e4bbe393058017dfb077db63fbf44b4dd0dd86e" dependencies = [ - "futures 0.3.21", - "hyper", - "jsonrpc-core", - "jsonrpc-server-utils", - "log", - "net2", - "parking_lot 0.11.2", - "unicase", + "anyhow", + "beef", + "serde", + "serde_json", + "thiserror", + "tracing", ] [[package]] -name = "jsonrpc-ipc-server" -version = "18.0.0" +name = "jsonrpsee-ws-client" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "382bb0206323ca7cda3dcd7e245cea86d37d02457a02a975e3378fb149a48845" +checksum = "76f15180afb3761c7a3a32c0a8b680788176dcfdfe725b24c1758c90b1d1595b" dependencies = [ - "futures 0.3.21", - "jsonrpc-core", - "jsonrpc-server-utils", - "log", - "parity-tokio-ipc", - "parking_lot 0.11.2", - "tower-service", + "jsonrpsee-client-transport", + "jsonrpsee-core", + "jsonrpsee-types", ] [[package]] -name = "jsonrpc-pubsub" -version = "18.0.0" +name = "jsonrpsee-ws-server" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "240f87695e6c6f62fb37f05c02c04953cf68d6408b8c1c89de85c7a0125b1011" +checksum = "dfb6c21556c551582b56e4e8e6e6249b0bbdb69bb7fa39efe9b9a6b54af9f206" dependencies = [ - "futures 0.3.21", - "jsonrpc-core", - "lazy_static", - "log", - "parking_lot 0.11.2", - "rand 0.7.3", - "serde", -] - -[[package]] -name = "jsonrpc-server-utils" -version = "18.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa4fdea130485b572c39a460d50888beb00afb3e35de23ccd7fad8ff19f0e0d4" -dependencies = [ - "bytes 1.1.0", - "futures 0.3.21", - "globset", - "jsonrpc-core", - "lazy_static", - "log", - "tokio", - "tokio-stream", - "tokio-util", - "unicase", -] - -[[package]] -name = "jsonrpc-ws-server" -version = "18.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f892c7d766369475ab7b0669f417906302d7c0fb521285c0a0c92e52e7c8e946" -dependencies = [ - "futures 0.3.21", - "jsonrpc-core", - "jsonrpc-server-utils", - "log", - "parity-ws", - "parking_lot 0.11.2", - "slab", -] - -[[package]] -name = "jsonrpsee" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6373a33d987866ccfe1af4bc11b089dce941764313f9fd8b7cf13fcb51b72dc5" -dependencies = [ - "jsonrpsee-types 0.4.1", - "jsonrpsee-utils", - "jsonrpsee-ws-client 0.4.1", -] - -[[package]] -name = "jsonrpsee" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05fd8cd6c6b1bbd06881d2cf88f1fc83cc36c98f2219090f839115fb4a956cb9" -dependencies = [ - "jsonrpsee-core", - "jsonrpsee-proc-macros", - "jsonrpsee-types 0.8.0", - "jsonrpsee-ws-client 0.8.0", -] - -[[package]] -name = "jsonrpsee-client-transport" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3303cdf246e6ab76e2866fb3d9acb6c76a068b1b28bd923a1b7a8122257ad7b5" -dependencies = [ - "futures 0.3.21", - "http", - "jsonrpsee-core", - "jsonrpsee-types 0.8.0", - "pin-project 1.0.10", - "rustls-native-certs 0.6.1", - "soketto", - "thiserror", - "tokio", - "tokio-rustls 0.23.3", - "tokio-util", - "tracing", - "webpki-roots 0.22.2", -] - -[[package]] -name = "jsonrpsee-core" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f220b5a238dc7992b90f1144fbf6eaa585872c9376afe6fe6863ffead6191bf3" -dependencies = [ - "anyhow", - "arrayvec 0.7.2", - "async-trait", - "beef", "futures-channel", "futures-util", - "hyper", - "jsonrpsee-types 0.8.0", - "rustc-hash", - "serde", - "serde_json", - "soketto", - "thiserror", - "tokio", - "tracing", -] - -[[package]] -name = "jsonrpsee-proc-macros" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4299ebf790ea9de1cb72e73ff2ae44c723ef264299e5e2d5ef46a371eb3ac3d8" -dependencies = [ - "proc-macro-crate 1.1.3", - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "jsonrpsee-types" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62f778cf245158fbd8f5d50823a2e9e4c708a40be164766bd35e9fb1d86715b2" -dependencies = [ - "anyhow", - "async-trait", - "beef", - "futures-channel", - "futures-util", - "hyper", - "log", - "serde", - "serde_json", - "soketto", - "thiserror", -] - -[[package]] -name = "jsonrpsee-types" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1b3f601bbbe45cd63f5407b6f7d7950e08a7d4f82aa699ff41a4a5e9e54df58" -dependencies = [ - "anyhow", - "beef", - "serde", - "serde_json", - "thiserror", - "tracing", -] - -[[package]] -name = "jsonrpsee-utils" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0109c4f972058f3b1925b73a17210aff7b63b65967264d0045d15ee88fe84f0c" -dependencies = [ - "arrayvec 0.7.2", - "beef", - "jsonrpsee-types 0.4.1", -] - -[[package]] -name = "jsonrpsee-ws-client" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "559aa56fc402af206c00fc913dc2be1d9d788dcde045d14df141a535245d35ef" -dependencies = [ - "arrayvec 0.7.2", - "async-trait", - "fnv", - "futures 0.3.21", - "http", - "jsonrpsee-types 0.4.1", - "log", - "pin-project 1.0.10", - "rustls-native-certs 0.5.0", - "serde", + "jsonrpsee-core", + "jsonrpsee-types", "serde_json", "soketto", - "thiserror", "tokio", - "tokio-rustls 0.22.0", "tokio-util", + "tracing", ] [[package]] -name = "jsonrpsee-ws-client" -version = "0.8.0" +name = "k256" +version = "0.10.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aff425cee7c779e33920913bc695447416078ee6d119f443f3060feffa4e86b5" +checksum = "19c3a5e0a0b8450278feda242592512e09f61c72e018b8cd5c859482802daf2d" dependencies = [ - "jsonrpsee-client-transport", - "jsonrpsee-core", - "jsonrpsee-types 0.8.0", + "cfg-if 1.0.0", + "ecdsa", + "elliptic-curve", + "sec1", ] [[package]] @@ -3493,39 +3543,9 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "67c21572b4949434e4fc1e1978b99c5f77064153c59d998bf13ecd96fb5ecba7" -[[package]] -name = "kernel32-sys" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d" -dependencies = [ - "winapi 0.2.8", - "winapi-build", -] - -[[package]] -name = "kilt-launch" -version = "1.6.2" -dependencies = [ - "frame-benchmarking", - "frame-support", - "frame-system", - "log", - "pallet-balances", - "pallet-vesting", - "parity-scale-codec", - "runtime-common", - "scale-info", - "serde", - "sp-core", - "sp-io", - "sp-runtime", - "sp-std", -] - [[package]] name = "kilt-parachain" -version = "1.6.2" +version = "1.7.0" dependencies = [ "clap", "cumulus-client-cli", @@ -3537,14 +3557,15 @@ dependencies = [ "cumulus-client-service", "cumulus-primitives-core", "cumulus-primitives-parachain-inherent", + "cumulus-relay-chain-inprocess-interface", "cumulus-relay-chain-interface", - "cumulus-relay-chain-local", + "cumulus-relay-chain-rpc-interface", "derive_more", "frame-benchmarking", "frame-benchmarking-cli", "futures 0.3.21", "hex-literal", - "jsonrpc-core", + "jsonrpsee", "log", "node-executor", "pallet-conviction-voting", @@ -3564,11 +3585,12 @@ dependencies = [ "sc-client-api", "sc-consensus", "sc-executor", - "sc-finality-grandpa", + "sc-keystore", "sc-network", "sc-rpc", "sc-rpc-api", "sc-service", + "sc-sysinfo", "sc-telemetry", "sc-tracing", "sc-transaction-pool", @@ -3582,14 +3604,12 @@ dependencies = [ "sp-consensus-aura", "sp-core", "sp-inherents", - "sp-io", "sp-keystore", "sp-offchain", "sp-runtime", "sp-session", "sp-timestamp", "sp-transaction-pool", - "sp-trie", "spiritnet-runtime", "substrate-build-script-utils", "substrate-frame-rpc-system", @@ -3600,7 +3620,7 @@ dependencies = [ [[package]] name = "kilt-support" -version = "1.6.2" +version = "1.7.0" dependencies = [ "frame-support", "frame-system", @@ -3613,8 +3633,8 @@ dependencies = [ [[package]] name = "kusama-runtime" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "beefy-primitives", "bitvec", @@ -3635,9 +3655,11 @@ dependencies = [ "pallet-bags-list", "pallet-balances", "pallet-bounties", + "pallet-child-bounties", "pallet-collective", "pallet-democracy", "pallet-election-provider-multi-phase", + "pallet-election-provider-support-benchmarking", "pallet-elections-phragmen", "pallet-gilt", "pallet-grandpa", @@ -3645,9 +3667,10 @@ dependencies = [ "pallet-im-online", "pallet-indices", "pallet-membership", - "pallet-mmr-primitives", "pallet-multisig", "pallet-nicks", + "pallet-nomination-pools", + "pallet-nomination-pools-benchmarking", "pallet-offences", "pallet-offences-benchmarking", "pallet-preimage", @@ -3667,6 +3690,7 @@ dependencies = [ "pallet-utility", "pallet-vesting", "pallet-xcm", + "pallet-xcm-benchmarks", "parity-scale-codec", "polkadot-primitives", "polkadot-runtime-common", @@ -3684,6 +3708,7 @@ dependencies = [ "sp-core", "sp-inherents", "sp-io", + "sp-mmr-primitives", "sp-npos-elections", "sp-offchain", "sp-runtime", @@ -3701,8 +3726,8 @@ dependencies = [ [[package]] name = "kusama-runtime-constants" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "frame-support", "polkadot-primitives", @@ -3722,9 +3747,9 @@ dependencies = [ [[package]] name = "kvdb" -version = "0.10.0" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45a3f58dc069ec0e205a27f5b45920722a46faed802a0541538241af6228f512" +checksum = "a301d8ecb7989d4a6e2c57a49baca77d353bdbf879909debe3f375fe25d61f86" dependencies = [ "parity-util-mem", "smallvec", @@ -3732,20 +3757,20 @@ dependencies = [ [[package]] name = "kvdb-memorydb" -version = "0.10.0" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3b6b85fc643f5acd0bffb2cc8a6d150209379267af0d41db72170021841f9f5" +checksum = "ece7e668abd21387aeb6628130a6f4c802787f014fa46bc83221448322250357" dependencies = [ "kvdb", "parity-util-mem", - "parking_lot 0.11.2", + "parking_lot 0.12.0", ] [[package]] name = "kvdb-rocksdb" -version = "0.14.0" +version = "0.15.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b1b6ea8f2536f504b645ad78419c8246550e19d2c3419a167080ce08edee35a" +checksum = "ca7fbdfd71cd663dceb0faf3367a99f8cf724514933e9867cec4995b6027cbc1" dependencies = [ "fs-swap", "kvdb", @@ -3753,7 +3778,7 @@ dependencies = [ "num_cpus", "owning_ref", "parity-util-mem", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "regex", "rocksdb", "smallvec", @@ -3773,9 +3798,9 @@ checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" [[package]] name = "libc" -version = "0.2.121" +version = "0.2.124" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "efaa7b300f3b5fe8eb6bf21ce3895e1751d9665086af2d64b42f19701015ff4f" +checksum = "21a41fed9d98f27ab1c6d161da622a4fa35e8a54a8adc24bbf3ddd0ef70b0e50" [[package]] name = "libloading" @@ -3784,7 +3809,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f2b111a074963af1d37a139918ac6d49ad1d0d5e47f72fd55388619691a7d753" dependencies = [ "cc", - "winapi 0.3.9", + "winapi", ] [[package]] @@ -3794,7 +3819,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "efbc0f03f9a775e9f6aed295c6a1ba2253c5757a9e03d55c6caa46a681abcddd" dependencies = [ "cfg-if 1.0.0", - "winapi 0.3.9", + "winapi", ] [[package]] @@ -3805,15 +3830,18 @@ checksum = "33a33a362ce288760ec6a508b94caaec573ae7d3bbbd91b87aa0bad4456839db" [[package]] name = "libp2p" -version = "0.40.0" +version = "0.45.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3bec54343492ba5940a6c555e512c6721139835d28c59bc22febece72dfd0d9d" +checksum = "41726ee8f662563fafba2d2d484b14037cc8ecb8c953fbfc8439d4ce3a0a9029" dependencies = [ - "atomic", - "bytes 1.1.0", + "bytes", "futures 0.3.21", + "futures-timer", + "getrandom 0.2.6", + "instant", "lazy_static", - "libp2p-core", + "libp2p-autonat", + "libp2p-core 0.33.0", "libp2p-deflate", "libp2p-dns", "libp2p-floodsub", @@ -3838,17 +3866,70 @@ dependencies = [ "libp2p-websocket", "libp2p-yamux", "multiaddr", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "pin-project 1.0.10", + "rand 0.7.3", "smallvec", - "wasm-timer", +] + +[[package]] +name = "libp2p-autonat" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "50de7c1d5c3f040fccb469e8a2d189e068b7627d760dd74ef914071c16bbe905" +dependencies = [ + "async-trait", + "futures 0.3.21", + "futures-timer", + "instant", + "libp2p-core 0.33.0", + "libp2p-request-response", + "libp2p-swarm", + "log", + "prost 0.10.4", + "prost-build 0.10.4", + "rand 0.8.5", +] + +[[package]] +name = "libp2p-core" +version = "0.32.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "db5b02602099fb75cb2d16f9ea860a320d6eb82ce41e95ab680912c454805cd5" +dependencies = [ + "asn1_der", + "bs58", + "ed25519-dalek", + "either", + "fnv", + "futures 0.3.21", + "futures-timer", + "instant", + "lazy_static", + "log", + "multiaddr", + "multihash", + "multistream-select", + "parking_lot 0.12.0", + "pin-project 1.0.10", + "prost 0.9.0", + "prost-build 0.9.0", + "rand 0.8.5", + "ring", + "rw-stream-sink 0.2.1", + "sha2 0.10.2", + "smallvec", + "thiserror", + "unsigned-varint", + "void", + "zeroize", ] [[package]] name = "libp2p-core" -version = "0.30.2" +version = "0.33.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86aad7d54df283db817becded03e611137698a6509d4237a96881976a162340c" +checksum = "42d46fca305dee6757022e2f5a4f6c023315084d0ed7441c3ab244e76666d979" dependencies = [ "asn1_der", "bs58", @@ -3862,140 +3943,149 @@ dependencies = [ "libsecp256k1", "log", "multiaddr", - "multihash 0.14.0", + "multihash", "multistream-select", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "pin-project 1.0.10", - "prost", - "prost-build", + "prost 0.10.4", + "prost-build 0.10.4", "rand 0.8.5", "ring", - "rw-stream-sink", - "sha2 0.9.9", + "rw-stream-sink 0.3.0", + "sha2 0.10.2", "smallvec", "thiserror", - "unsigned-varint 0.7.1", + "unsigned-varint", "void", "zeroize", ] [[package]] name = "libp2p-deflate" -version = "0.30.0" +version = "0.33.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51a800adb195f33de63f4b17b63fe64cfc23bf2c6a0d3d0d5321328664e65197" +checksum = "86adefc55ea4ed8201149f052fb441210727481dff1fb0b8318460206a79f5fb" dependencies = [ "flate2", "futures 0.3.21", - "libp2p-core", + "libp2p-core 0.33.0", ] [[package]] name = "libp2p-dns" -version = "0.30.0" +version = "0.33.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb8f89d15cb6e3c5bc22afff7513b11bab7856f2872d3cfba86f7f63a06bc498" +checksum = "fbb462ec3a51fab457b4b44ac295e8b0a4b04dc175127e615cf996b1f0f1a268" dependencies = [ "async-std-resolver", "futures 0.3.21", - "libp2p-core", + "libp2p-core 0.33.0", "log", + "parking_lot 0.12.0", "smallvec", "trust-dns-resolver", ] [[package]] name = "libp2p-floodsub" -version = "0.31.0" +version = "0.36.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aab3d7210901ea51b7bae2b581aa34521797af8c4ec738c980bda4a06434067f" +checksum = "a505d0c6f851cbf2919535150198e530825def8bd3757477f13dc3a57f46cbcc" dependencies = [ "cuckoofilter", "fnv", "futures 0.3.21", - "libp2p-core", + "libp2p-core 0.33.0", "libp2p-swarm", "log", - "prost", - "prost-build", + "prost 0.10.4", + "prost-build 0.10.4", "rand 0.7.3", "smallvec", ] [[package]] name = "libp2p-gossipsub" -version = "0.33.0" +version = "0.38.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfeead619eb5dac46e65acc78c535a60aaec803d1428cca6407c3a4fc74d698d" +checksum = "43e064ba4d7832e01c738626c6b274ae100baba05f5ffcc7b265c2a3ed398108" dependencies = [ - "asynchronous-codec 0.6.0", + "asynchronous-codec", "base64", "byteorder", - "bytes 1.1.0", + "bytes", "fnv", "futures 0.3.21", "hex_fmt", - "libp2p-core", + "instant", + "libp2p-core 0.33.0", "libp2p-swarm", "log", - "prost", - "prost-build", + "prometheus-client", + "prost 0.10.4", + "prost-build 0.10.4", "rand 0.7.3", "regex", - "sha2 0.9.9", + "sha2 0.10.2", "smallvec", - "unsigned-varint 0.7.1", + "unsigned-varint", "wasm-timer", ] [[package]] name = "libp2p-identify" -version = "0.31.0" +version = "0.36.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cca1275574183f288ff8b72d535d5ffa5ea9292ef7829af8b47dcb197c7b0dcd" +checksum = "b84b53490442d086db1fa5375670c9666e79143dccadef3f7c74a4346899a984" dependencies = [ + "asynchronous-codec", "futures 0.3.21", - "libp2p-core", + "futures-timer", + "libp2p-core 0.33.0", "libp2p-swarm", "log", - "lru 0.6.6", - "prost", - "prost-build", + "lru 0.7.5", + "prost 0.10.4", + "prost-build 0.10.4", + "prost-codec", "smallvec", - "wasm-timer", + "thiserror", + "void", ] [[package]] name = "libp2p-kad" -version = "0.32.0" +version = "0.37.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2297dc0ca285f3a09d1368bde02449e539b46f94d32d53233f53f6625bcd3ba" +checksum = "5f6b5d4de90fcd35feb65ea6223fd78f3b747a64ca4b65e0813fbe66a27d56aa" dependencies = [ - "arrayvec 0.5.2", - "asynchronous-codec 0.6.0", - "bytes 1.1.0", + "arrayvec 0.7.2", + "asynchronous-codec", + "bytes", "either", "fnv", "futures 0.3.21", - "libp2p-core", + "futures-timer", + "instant", + "libp2p-core 0.33.0", "libp2p-swarm", "log", - "prost", - "prost-build", + "prost 0.10.4", + "prost-build 0.10.4", "rand 0.7.3", - "sha2 0.9.9", + "sha2 0.10.2", "smallvec", + "thiserror", "uint", - "unsigned-varint 0.7.1", + "unsigned-varint", "void", - "wasm-timer", ] [[package]] name = "libp2p-mdns" -version = "0.32.0" +version = "0.37.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14c864b64bdc8a84ff3910a0df88e6535f256191a450870f1e7e10cbf8e64d45" +checksum = "4783f8cf00c7b6c1ff0f1870b4fcf50b042b45533d2e13b6fb464caf447a6951" dependencies = [ "async-io", "data-encoding", @@ -4003,63 +4093,65 @@ dependencies = [ "futures 0.3.21", "if-watch", "lazy_static", - "libp2p-core", + "libp2p-core 0.33.0", "libp2p-swarm", "log", "rand 0.8.5", "smallvec", - "socket2 0.4.4", + "socket2", "void", ] [[package]] name = "libp2p-metrics" -version = "0.1.0" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4af432fcdd2f8ba4579b846489f8f0812cfd738ced2c0af39df9b1c48bbb6ab2" +checksum = "adc4357140141ba9739eee71b20aa735351c0fc642635b2bffc7f57a6b5c1090" dependencies = [ - "libp2p-core", + "libp2p-core 0.33.0", + "libp2p-gossipsub", "libp2p-identify", "libp2p-kad", "libp2p-ping", + "libp2p-relay", "libp2p-swarm", - "open-metrics-client", + "prometheus-client", ] [[package]] name = "libp2p-mplex" -version = "0.30.0" +version = "0.33.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f2cd64ef597f40e14bfce0497f50ecb63dd6d201c61796daeb4227078834fbf" +checksum = "5ff9c893f2367631a711301d703c47432af898c9bb8253bea0e2c051a13f7640" dependencies = [ - "asynchronous-codec 0.6.0", - "bytes 1.1.0", + "asynchronous-codec", + "bytes", "futures 0.3.21", - "libp2p-core", + "libp2p-core 0.33.0", "log", "nohash-hasher", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "rand 0.7.3", "smallvec", - "unsigned-varint 0.7.1", + "unsigned-varint", ] [[package]] name = "libp2p-noise" -version = "0.33.0" +version = "0.36.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8772c7a99088221bb7ca9c5c0574bf55046a7ab4c319f3619b275f28c8fb87a" +checksum = "cf2cee1dad1c83325bbd182a8e94555778699cec8a9da00086efb7522c4c15ad" dependencies = [ - "bytes 1.1.0", + "bytes", "curve25519-dalek 3.2.0", "futures 0.3.21", "lazy_static", - "libp2p-core", + "libp2p-core 0.33.0", "log", - "prost", - "prost-build", + "prost 0.10.4", + "prost-build 0.10.4", "rand 0.8.5", - "sha2 0.9.9", + "sha2 0.10.2", "snow", "static_assertions", "x25519-dalek", @@ -4068,33 +4160,34 @@ dependencies = [ [[package]] name = "libp2p-ping" -version = "0.31.0" +version = "0.36.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80ef7b0ec5cf06530d9eb6cf59ae49d46a2c45663bde31c25a12f682664adbcf" +checksum = "d41516c82fe8dd148ec925eead0c5ec08a0628f7913597e93e126e4dfb4e0787" dependencies = [ "futures 0.3.21", - "libp2p-core", + "futures-timer", + "instant", + "libp2p-core 0.33.0", "libp2p-swarm", "log", "rand 0.7.3", "void", - "wasm-timer", ] [[package]] name = "libp2p-plaintext" -version = "0.30.0" +version = "0.33.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5fba1a6ff33e4a274c89a3b1d78b9f34f32af13265cc5c46c16938262d4e945a" +checksum = "db007e737adc5d28b2e03223b0210164928ad742591127130796a72aa8eaf54f" dependencies = [ - "asynchronous-codec 0.6.0", - "bytes 1.1.0", + "asynchronous-codec", + "bytes", "futures 0.3.21", - "libp2p-core", + "libp2p-core 0.33.0", "log", - "prost", - "prost-build", - "unsigned-varint 0.7.1", + "prost 0.10.4", + "prost-build 0.10.4", + "unsigned-varint", "void", ] @@ -4109,94 +4202,101 @@ dependencies = [ "pin-project 1.0.10", "rand 0.7.3", "salsa20", - "sha3", + "sha3 0.9.1", ] [[package]] name = "libp2p-relay" -version = "0.4.0" +version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2852b61c90fa8ce3c8fcc2aba76e6cefc20d648f9df29157d6b3a916278ef3e3" +checksum = "624ead3406f64437a0d4567c31bd128a9a0b8226d5f16c074038f5d0fc32f650" dependencies = [ - "asynchronous-codec 0.6.0", - "bytes 1.1.0", + "asynchronous-codec", + "bytes", + "either", "futures 0.3.21", "futures-timer", - "libp2p-core", + "instant", + "libp2p-core 0.33.0", "libp2p-swarm", "log", "pin-project 1.0.10", - "prost", - "prost-build", - "rand 0.7.3", + "prost 0.10.4", + "prost-build 0.10.4", + "prost-codec", + "rand 0.8.5", "smallvec", - "unsigned-varint 0.7.1", + "static_assertions", + "thiserror", "void", - "wasm-timer", ] [[package]] name = "libp2p-rendezvous" -version = "0.1.0" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14a6d2b9e7677eff61dc3d2854876aaf3976d84a01ef6664b610c77a0c9407c5" +checksum = "c59967ea2db2c7560f641aa58ac05982d42131863fcd3dd6dcf0dd1daf81c60c" dependencies = [ - "asynchronous-codec 0.6.0", + "asynchronous-codec", "bimap", "futures 0.3.21", - "libp2p-core", + "futures-timer", + "instant", + "libp2p-core 0.33.0", "libp2p-swarm", "log", - "prost", - "prost-build", + "prost 0.10.4", + "prost-build 0.10.4", "rand 0.8.5", - "sha2 0.9.9", + "sha2 0.10.2", "thiserror", - "unsigned-varint 0.7.1", + "unsigned-varint", "void", - "wasm-timer", ] [[package]] name = "libp2p-request-response" -version = "0.13.0" +version = "0.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a877a4ced6d46bf84677e1974e8cf61fb434af73b2e96fb48d6cb6223a4634d8" +checksum = "b02e0acb725e5a757d77c96b95298fd73a7394fe82ba7b8bbeea510719cbe441" dependencies = [ "async-trait", - "bytes 1.1.0", + "bytes", "futures 0.3.21", - "libp2p-core", + "instant", + "libp2p-core 0.33.0", "libp2p-swarm", "log", - "lru 0.7.3", "rand 0.7.3", "smallvec", - "unsigned-varint 0.7.1", - "wasm-timer", + "unsigned-varint", ] [[package]] name = "libp2p-swarm" -version = "0.31.0" +version = "0.36.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f5184a508f223bc100a12665517773fb8730e9f36fc09eefb670bf01b107ae9" +checksum = "8f4bb21c5abadbf00360c734f16bf87f1712ed4f23cd46148f625d2ddb867346" dependencies = [ "either", + "fnv", "futures 0.3.21", - "libp2p-core", + "futures-timer", + "instant", + "libp2p-core 0.33.0", "log", + "pin-project 1.0.10", "rand 0.7.3", "smallvec", + "thiserror", "void", - "wasm-timer", ] [[package]] name = "libp2p-swarm-derive" -version = "0.25.0" +version = "0.27.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "072c290f727d39bdc4e9d6d1c847978693d25a673bd757813681e33e5f6c00c2" +checksum = "4f693c8c68213034d472cbb93a379c63f4f307d97c06f1c41e4985de481687a5" dependencies = [ "quote", "syn", @@ -4204,9 +4304,9 @@ dependencies = [ [[package]] name = "libp2p-tcp" -version = "0.30.0" +version = "0.33.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7399c5b6361ef525d41c11fcf51635724f832baf5819b30d3d873eabb4fbae4b" +checksum = "4f4933e38ef21b50698aefc87799c24f2a365c9d3f6cf50471f3f6a0bc410892" dependencies = [ "async-io", "futures 0.3.21", @@ -4214,32 +4314,32 @@ dependencies = [ "if-watch", "ipnet", "libc", - "libp2p-core", + "libp2p-core 0.33.0", "log", - "socket2 0.4.4", + "socket2", ] [[package]] name = "libp2p-uds" -version = "0.30.0" +version = "0.32.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8b7563e46218165dfd60f64b96f7ce84590d75f53ecbdc74a7dd01450dc5973" +checksum = "24bdab114f7f2701757d6541266e1131b429bbae382008f207f2114ee4222dcb" dependencies = [ "async-std", "futures 0.3.21", - "libp2p-core", + "libp2p-core 0.32.1", "log", ] [[package]] name = "libp2p-wasm-ext" -version = "0.30.0" +version = "0.33.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1008a302b73c5020251f9708c653f5ed08368e530e247cc9cd2f109ff30042cf" +checksum = "f066f2b8b1a1d64793f05da2256e6842ecd0293d6735ca2e9bda89831a1bdc06" dependencies = [ "futures 0.3.21", "js-sys", - "libp2p-core", + "libp2p-core 0.33.0", "parity-send-wrapper", "wasm-bindgen", "wasm-bindgen-futures", @@ -4247,45 +4347,49 @@ dependencies = [ [[package]] name = "libp2p-websocket" -version = "0.31.0" +version = "0.35.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22e12df82d1ed64969371a9e65ea92b91064658604cc2576c2757f18ead9a1cf" +checksum = "39d398fbb29f432c4128fabdaac2ed155c3bcaf1b9bd40eeeb10a471eefacbf5" dependencies = [ "either", "futures 0.3.21", "futures-rustls", - "libp2p-core", + "libp2p-core 0.33.0", "log", + "parking_lot 0.12.0", "quicksink", - "rw-stream-sink", + "rw-stream-sink 0.3.0", "soketto", - "url 2.2.2", - "webpki-roots 0.21.1", + "url", + "webpki-roots", ] [[package]] name = "libp2p-yamux" -version = "0.34.0" +version = "0.37.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e7362abb8867d7187e7e93df17f460d554c997fc5c8ac57dc1259057f6889af" +checksum = "8fe653639ad74877c759720febb0cbcbf4caa221adde4eed2d3126ce5c6f381f" dependencies = [ "futures 0.3.21", - "libp2p-core", - "parking_lot 0.11.2", + "libp2p-core 0.33.0", + "parking_lot 0.12.0", "thiserror", "yamux", ] [[package]] name = "librocksdb-sys" -version = "6.20.3" +version = "0.6.1+6.28.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c309a9d2470844aceb9a4a098cf5286154d20596868b75a6b36357d2bb9ca25d" +checksum = "81bc587013734dadb7cf23468e531aa120788b87243648be42e2d3a072186291" dependencies = [ "bindgen", + "bzip2-sys", "cc", "glob", "libc", + "libz-sys", + "tikv-jemalloc-sys", ] [[package]] @@ -4374,33 +4478,25 @@ dependencies = [ [[package]] name = "linux-raw-sys" -version = "0.0.36" +version = "0.0.42" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a261afc61b7a5e323933b402ca6a1765183687c614789b1e4db7762ed4230bca" +checksum = "5284f00d480e1c39af34e72f8ad60b94f47007e3481cd3b731c1d67190ddc7b7" [[package]] name = "lock_api" -version = "0.3.4" +version = "0.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4da24a77a3d8a6d4862d95f72e6fdb9c09a643ecdb402d754004a557f2bec75" -dependencies = [ - "scopeguard", -] - -[[package]] -name = "lock_api" -version = "0.4.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "88943dd7ef4a2e5a4bfa2753aaab3013e34ce2533d1996fb18ef591e315e2b3b" +checksum = "327fa5b6a6940e4699ec49a9beae1ea4845c6bab9314e4f84ac68742139d8c53" dependencies = [ + "autocfg", "scopeguard", ] [[package]] name = "log" -version = "0.4.14" +version = "0.4.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51b9bbe6c47d51fc3e1a9b945965946b4c44142ab8792c50835a980d362c2710" +checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e" dependencies = [ "cfg-if 1.0.0", "value-bag", @@ -4417,9 +4513,9 @@ dependencies = [ [[package]] name = "lru" -version = "0.7.3" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcb87f3080f6d1d69e8c564c0fcfde1d7aa8cc451ce40cae89479111f03bc0eb" +checksum = "32613e41de4c47ab04970c348ca7ae7382cf116625755af070b008a15516a889" dependencies = [ "hashbrown 0.11.2", ] @@ -4470,19 +4566,20 @@ checksum = "3e2e65a1a2e43cfcb47a895c4c8b10d1f4a61097f9f254f183aee60cad9c651d" [[package]] name = "mashnet-node" -version = "1.6.2" +version = "1.7.0" dependencies = [ "clap", "frame-benchmarking", "frame-benchmarking-cli", + "frame-system", "futures 0.3.21", "hex-literal", - "jsonrpc-core", + "jsonrpsee", "log", "mashnet-node-runtime", - "node-executor", "pallet-conviction-voting", "pallet-referenda", + "pallet-transaction-payment", "pallet-transaction-payment-rpc", "runtime-common", "sc-basic-authorship", @@ -4510,18 +4607,18 @@ dependencies = [ "sp-core", "sp-finality-grandpa", "sp-inherents", + "sp-keyring", "sp-runtime", "sp-timestamp", "sp-transaction-pool", "substrate-build-script-utils", "substrate-frame-rpc-system", "try-runtime-cli", - "vergen", ] [[package]] name = "mashnet-node-runtime" -version = "1.6.2" +version = "1.7.0" dependencies = [ "attestation", "bitflags", @@ -4536,7 +4633,6 @@ dependencies = [ "frame-system-rpc-runtime-api", "frame-try-runtime", "hex-literal", - "kilt-launch", "kilt-support", "log", "pallet-aura", @@ -4611,6 +4707,15 @@ version = "2.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "308cc39be01b73d0d18f82a0e7b2a3df85245f84af96fdddc5d202d27e47b86a" +[[package]] +name = "memfd" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f6627dc657574b49d6ad27105ed671822be56e0d2547d413bfbf3e8d8fa92e7a" +dependencies = [ + "libc", +] + [[package]] name = "memmap2" version = "0.2.3" @@ -4640,12 +4745,12 @@ dependencies = [ [[package]] name = "memory-db" -version = "0.28.0" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d505169b746dacf02f7d14d8c80b34edfd8212159c63d23c977739a0d960c626" +checksum = "6566c70c1016f525ced45d7b7f97730a2bafb037c788211d0c186ef5b2189f0a" dependencies = [ "hash-db", - "hashbrown 0.11.2", + "hashbrown 0.12.0", "parity-util-mem", ] @@ -4676,18 +4781,6 @@ dependencies = [ "zeroize", ] -[[package]] -name = "metered-channel" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" -dependencies = [ - "derive_more", - "futures 0.3.21", - "futures-timer", - "thiserror", - "tracing", -] - [[package]] name = "mick-jaeger" version = "0.1.8" @@ -4707,31 +4800,11 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" [[package]] name = "miniz_oxide" -version = "0.4.4" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a92518e98c078586bc6c934028adcca4c92a53d6a958196de835170a01d84e4b" +checksum = "d2b29bd4bc3f33391105ebee3589c19197c4271e3e5a9ec9bfe8127eeff8f082" dependencies = [ "adler", - "autocfg", -] - -[[package]] -name = "mio" -version = "0.6.23" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4afd66f5b91bf2a3bc13fad0e21caedac168ca4c707504e75585648ae80e4cc4" -dependencies = [ - "cfg-if 0.1.10", - "fuchsia-zircon", - "fuchsia-zircon-sys", - "iovec", - "kernel32-sys", - "libc", - "log", - "miow 0.2.2", - "net2", - "slab", - "winapi 0.2.8", ] [[package]] @@ -4742,34 +4815,10 @@ checksum = "52da4364ffb0e4fe33a9841a98a3f3014fb964045ce4f7a45a398243c8d6b0c9" dependencies = [ "libc", "log", - "miow 0.3.7", + "miow", "ntapi", "wasi 0.11.0+wasi-snapshot-preview1", - "winapi 0.3.9", -] - -[[package]] -name = "mio-extras" -version = "2.0.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52403fe290012ce777c4626790c8951324a2b9e3316b3143779c72b029742f19" -dependencies = [ - "lazycell", - "log", - "mio 0.6.23", - "slab", -] - -[[package]] -name = "miow" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebd808424166322d4a38da87083bfddd3ac4c131334ed55856112eb06d46944d" -dependencies = [ - "kernel32-sys", - "net2", - "winapi 0.2.8", - "ws2_32-sys", + "winapi", ] [[package]] @@ -4778,7 +4827,7 @@ version = "0.3.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b9f1c5b025cda876f66ef43a113f91ebc9f4ccef34843000e0adf6ebbab84e21" dependencies = [ - "winapi 0.3.9", + "winapi", ] [[package]] @@ -4789,27 +4838,27 @@ checksum = "7843ec2de400bcbc6a6328c958dc38e5359da6e93e72e37bc5246bf1ae776389" [[package]] name = "multiaddr" -version = "0.13.0" +version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48ee4ea82141951ac6379f964f71b20876d43712bea8faf6dd1a375e08a46499" +checksum = "3c580bfdd8803cce319b047d239559a22f809094aaea4ac13902a1fdcfcd4261" dependencies = [ "arrayref", "bs58", "byteorder", "data-encoding", - "multihash 0.14.0", - "percent-encoding 2.1.0", + "multihash", + "percent-encoding", "serde", "static_assertions", - "unsigned-varint 0.7.1", - "url 2.2.2", + "unsigned-varint", + "url", ] [[package]] name = "multibase" -version = "0.8.0" +version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b78c60039650ff12e140ae867ef5299a58e19dded4d334c849dc7177083667e2" +checksum = "9b3539ec3c1f04ac9748a260728e855f261b4977f5c3406612c884564f329404" dependencies = [ "base-x", "data-encoding", @@ -4818,41 +4867,28 @@ dependencies = [ [[package]] name = "multihash" -version = "0.13.2" +version = "0.16.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4dac63698b887d2d929306ea48b63760431ff8a24fac40ddb22f9c7f49fb7cab" +checksum = "e3db354f401db558759dfc1e568d010a5d4146f4d3f637be1275ec4a3cf09689" dependencies = [ "blake2b_simd", "blake2s_simd", "blake3", - "digest 0.9.0", - "generic-array 0.14.5", - "multihash-derive", - "sha2 0.9.9", - "sha3", - "unsigned-varint 0.5.1", -] - -[[package]] -name = "multihash" -version = "0.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "752a61cd890ff691b4411423d23816d5866dd5621e4d1c5687a53b94b5a979d8" -dependencies = [ - "digest 0.9.0", - "generic-array 0.14.5", + "core2", + "digest 0.10.3", "multihash-derive", - "sha2 0.9.9", - "unsigned-varint 0.7.1", + "sha2 0.10.2", + "sha3 0.10.1", + "unsigned-varint", ] [[package]] name = "multihash-derive" -version = "0.7.2" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "424f6e86263cd5294cbd7f1e95746b95aca0e0d66bff31e5a40d6baa87b4aa99" +checksum = "fc076939022111618a5026d3be019fd8b366e76314538ff9a1b59ffbcbf98bcd" dependencies = [ - "proc-macro-crate 1.1.3", + "proc-macro-crate", "proc-macro-error", "proc-macro2", "quote", @@ -4868,16 +4904,16 @@ checksum = "e5ce46fe64a9d73be07dcbe690a38ce1b293be448fd8ce1e6c1b8062c9f72c6a" [[package]] name = "multistream-select" -version = "0.10.4" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56a336acba8bc87c8876f6425407dbbe6c417bf478b22015f8fb0994ef3bc0ab" +checksum = "363a84be6453a70e63513660f4894ef815daf88e3356bffcda9ca27d810ce83b" dependencies = [ - "bytes 1.1.0", + "bytes", "futures 0.3.21", "log", "pin-project 1.0.10", "smallvec", - "unsigned-varint 0.7.1", + "unsigned-varint", ] [[package]] @@ -4886,53 +4922,126 @@ version = "0.27.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "462fffe4002f4f2e1f6a9dcf12cc1a6fc0e15989014efc02a941d3e0f5dc2120" dependencies = [ - "approx", - "matrixmultiply", - "nalgebra-macros", - "num-complex", - "num-rational 0.4.0", - "num-traits", - "rand 0.8.5", - "rand_distr", - "simba", - "typenum", + "approx", + "matrixmultiply", + "nalgebra-macros", + "num-complex", + "num-rational 0.4.0", + "num-traits", + "rand 0.8.5", + "rand_distr", + "simba", + "typenum", +] + +[[package]] +name = "nalgebra-macros" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "01fcc0b8149b4632adc89ac3b7b31a12fb6099a0317a4eb2ebff574ef7de7218" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "names" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e7d66043b25d4a6cccb23619d10c19c25304b355a7dccd4a8e11423dd2382146" +dependencies = [ + "rand 0.8.5", +] + +[[package]] +name = "nanorand" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6a51313c5820b0b02bd422f4b44776fbf47961755c74ce64afc73bfad10226c3" + +[[package]] +name = "netlink-packet-core" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "345b8ab5bd4e71a2986663e88c56856699d060e78e152e6e9d7966fcd5491297" +dependencies = [ + "anyhow", + "byteorder", + "libc", + "netlink-packet-utils", +] + +[[package]] +name = "netlink-packet-route" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "733ea73609acfd7fa7ddadfb7bf709b0471668c456ad9513685af543a06342b2" +dependencies = [ + "anyhow", + "bitflags", + "byteorder", + "libc", + "netlink-packet-core", + "netlink-packet-utils", +] + +[[package]] +name = "netlink-packet-utils" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "25af9cf0dc55498b7bd94a1508af7a78706aa0ab715a73c5169273e03c84845e" +dependencies = [ + "anyhow", + "byteorder", + "paste", + "thiserror", ] [[package]] -name = "nalgebra-macros" -version = "0.1.0" +name = "netlink-proto" +version = "0.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01fcc0b8149b4632adc89ac3b7b31a12fb6099a0317a4eb2ebff574ef7de7218" +checksum = "ef8785b8141e8432aa45fceb922a7e876d7da3fad37fa7e7ec702ace3aa0826b" dependencies = [ - "proc-macro2", - "quote", - "syn", + "bytes", + "futures 0.3.21", + "log", + "netlink-packet-core", + "netlink-sys", + "tokio", ] [[package]] -name = "names" -version = "0.12.0" +name = "netlink-sys" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10a8690bf09abf659851e58cd666c3d37ac6af07c2bd7a9e332cfba471715775" +checksum = "3e4c9f9547a08241bee7b6558b9b98e1f290d187de8b7cfca2bbb4937bcaa8f8" dependencies = [ - "rand 0.8.5", + "async-io", + "bytes", + "futures 0.3.21", + "libc", + "log", ] [[package]] -name = "net2" -version = "0.2.37" +name = "nix" +version = "0.22.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "391630d12b68002ae1e25e8f974306474966550ad82dac6886fb8910c19568ae" +checksum = "e4916f159ed8e5de0082076562152a76b7a1f64a01fd9d1e0fea002c37624faf" dependencies = [ - "cfg-if 0.1.10", + "bitflags", + "cc", + "cfg-if 1.0.0", "libc", - "winapi 0.3.9", + "memoffset", ] [[package]] name = "node-executor" version = "3.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-benchmarking", "node-primitives", @@ -4950,7 +5059,7 @@ dependencies = [ [[package]] name = "node-primitives" version = "2.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-system", "parity-scale-codec", @@ -4963,7 +5072,7 @@ dependencies = [ [[package]] name = "node-runtime" version = "3.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -5000,17 +5109,20 @@ dependencies = [ "pallet-membership", "pallet-mmr", "pallet-multisig", + "pallet-nomination-pools", "pallet-offences", "pallet-preimage", "pallet-proxy", "pallet-randomness-collective-flip", "pallet-recovery", "pallet-referenda", + "pallet-remark", "pallet-scheduler", "pallet-session", "pallet-society", "pallet-staking", "pallet-staking-reward-curve", + "pallet-state-trie-migration", "pallet-sudo", "pallet-timestamp", "pallet-tips", @@ -5021,6 +5133,7 @@ dependencies = [ "pallet-uniques", "pallet-utility", "pallet-vesting", + "pallet-whitelist", "parity-scale-codec", "scale-info", "sp-api", @@ -5030,8 +5143,6 @@ dependencies = [ "sp-core", "sp-inherents", "sp-io", - "sp-keyring", - "sp-npos-elections", "sp-offchain", "sp-runtime", "sp-sandbox", @@ -5072,7 +5183,7 @@ version = "0.3.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c28774a7fd2fbb4f0babd8237ce554b73af68021b5f695a3cebd6c59bac0980f" dependencies = [ - "winapi 0.3.9", + "winapi", ] [[package]] @@ -5169,6 +5280,15 @@ dependencies = [ "memchr", ] +[[package]] +name = "object" +version = "0.28.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "40bec70ba014595f99f7aa110b84331ffe1ee9aece7fe6f387cc7e3ecda4d456" +dependencies = [ + "memchr", +] + [[package]] name = "once_cell" version = "1.10.0" @@ -5188,34 +5308,40 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5" [[package]] -name = "open-metrics-client" -version = "0.12.0" +name = "openssl-probe" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7337d80c23c2d8b1349563981bc4fb531220733743ba8115454a67b181173f0d" +checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" + +[[package]] +name = "orchestra" +version = "0.0.1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ - "dtoa", - "itoa 0.4.8", - "open-metrics-client-derive-text-encode", - "owning_ref", + "async-trait", + "dyn-clonable", + "futures 0.3.21", + "futures-timer", + "orchestra-proc-macro", + "pin-project 1.0.10", + "prioritized-metered-channel", + "thiserror", + "tracing", ] [[package]] -name = "open-metrics-client-derive-text-encode" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a15c83b586f00268c619c1cb3340ec1a6f59dd9ba1d9833a273a68e6d5cd8ffc" +name = "orchestra-proc-macro" +version = "0.0.1" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ + "expander 0.0.6", + "petgraph", + "proc-macro-crate", "proc-macro2", "quote", "syn", ] -[[package]] -name = "openssl-probe" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" - [[package]] name = "ordered-float" version = "1.1.1" @@ -5230,9 +5356,6 @@ name = "os_str_bytes" version = "6.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8e22443d1643a904602595ba1cd8f7d896afe56d26712531c5ff73a15b2fbf64" -dependencies = [ - "memchr", -] [[package]] name = "owning_ref" @@ -5246,7 +5369,7 @@ dependencies = [ [[package]] name = "pallet-asset-tx-payment" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-support", "frame-system", @@ -5262,7 +5385,7 @@ dependencies = [ [[package]] name = "pallet-assets" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-benchmarking", "frame-support", @@ -5276,7 +5399,7 @@ dependencies = [ [[package]] name = "pallet-aura" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-support", "frame-system", @@ -5292,7 +5415,7 @@ dependencies = [ [[package]] name = "pallet-authority-discovery" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-support", "frame-system", @@ -5308,7 +5431,7 @@ dependencies = [ [[package]] name = "pallet-authorship" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-support", "frame-system", @@ -5323,7 +5446,7 @@ dependencies = [ [[package]] name = "pallet-babe" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-benchmarking", "frame-support", @@ -5347,7 +5470,7 @@ dependencies = [ [[package]] name = "pallet-bags-list" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -5367,7 +5490,7 @@ dependencies = [ [[package]] name = "pallet-balances" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-benchmarking", "frame-support", @@ -5382,7 +5505,7 @@ dependencies = [ [[package]] name = "pallet-beefy" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "beefy-primitives", "frame-support", @@ -5398,18 +5521,16 @@ dependencies = [ [[package]] name = "pallet-beefy-mmr" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "beefy-merkle-tree", "beefy-primitives", "frame-support", "frame-system", "hex", - "libsecp256k1", "log", "pallet-beefy", "pallet-mmr", - "pallet-mmr-primitives", "pallet-session", "parity-scale-codec", "scale-info", @@ -5423,7 +5544,7 @@ dependencies = [ [[package]] name = "pallet-bounties" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-benchmarking", "frame-support", @@ -5441,7 +5562,7 @@ dependencies = [ [[package]] name = "pallet-bridge-dispatch" version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "bp-message-dispatch", "bp-runtime", @@ -5458,7 +5579,7 @@ dependencies = [ [[package]] name = "pallet-bridge-grandpa" version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "bp-header-chain", "bp-runtime", @@ -5480,7 +5601,7 @@ dependencies = [ [[package]] name = "pallet-bridge-messages" version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "bitvec", "bp-message-dispatch", @@ -5501,8 +5622,9 @@ dependencies = [ [[package]] name = "pallet-child-bounties" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ + "frame-benchmarking", "frame-support", "frame-system", "log", @@ -5519,7 +5641,7 @@ dependencies = [ [[package]] name = "pallet-collective" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-benchmarking", "frame-support", @@ -5536,13 +5658,12 @@ dependencies = [ [[package]] name = "pallet-contracts" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "bitflags", "frame-benchmarking", "frame-support", "frame-system", - "libsecp256k1", "log", "pallet-contracts-primitives", "pallet-contracts-proc-macro", @@ -5562,8 +5683,8 @@ dependencies = [ [[package]] name = "pallet-contracts-primitives" -version = "5.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +version = "6.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "bitflags", "parity-scale-codec", @@ -5578,7 +5699,7 @@ dependencies = [ [[package]] name = "pallet-contracts-proc-macro" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "proc-macro2", "quote", @@ -5588,7 +5709,7 @@ dependencies = [ [[package]] name = "pallet-contracts-rpc-runtime-api" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "pallet-contracts-primitives", "parity-scale-codec", @@ -5601,7 +5722,7 @@ dependencies = [ [[package]] name = "pallet-conviction-voting" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "assert_matches", "frame-benchmarking", @@ -5618,7 +5739,7 @@ dependencies = [ [[package]] name = "pallet-democracy" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-benchmarking", "frame-support", @@ -5633,7 +5754,7 @@ dependencies = [ [[package]] name = "pallet-did-lookup" -version = "1.6.2" +version = "1.7.0" dependencies = [ "frame-benchmarking", "frame-support", @@ -5642,8 +5763,8 @@ dependencies = [ "log", "pallet-balances", "parity-scale-codec", - "runtime-common", "scale-info", + "sp-core", "sp-io", "sp-keystore", "sp-runtime", @@ -5653,7 +5774,7 @@ dependencies = [ [[package]] name = "pallet-election-provider-multi-phase" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -5670,13 +5791,26 @@ dependencies = [ "sp-runtime", "sp-std", "static_assertions", - "strum", + "strum 0.23.0", +] + +[[package]] +name = "pallet-election-provider-support-benchmarking" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" +dependencies = [ + "frame-benchmarking", + "frame-election-provider-support", + "frame-system", + "parity-scale-codec", + "sp-npos-elections", + "sp-runtime", ] [[package]] name = "pallet-elections-phragmen" version = "5.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-benchmarking", "frame-support", @@ -5694,7 +5828,7 @@ dependencies = [ [[package]] name = "pallet-gilt" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-benchmarking", "frame-support", @@ -5709,7 +5843,7 @@ dependencies = [ [[package]] name = "pallet-grandpa" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-benchmarking", "frame-support", @@ -5732,7 +5866,7 @@ dependencies = [ [[package]] name = "pallet-identity" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "enumflags2", "frame-benchmarking", @@ -5748,7 +5882,7 @@ dependencies = [ [[package]] name = "pallet-im-online" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-benchmarking", "frame-support", @@ -5768,7 +5902,7 @@ dependencies = [ [[package]] name = "pallet-indices" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-benchmarking", "frame-support", @@ -5784,14 +5918,13 @@ dependencies = [ [[package]] name = "pallet-inflation" -version = "1.6.2" +version = "1.7.0" dependencies = [ "frame-benchmarking", "frame-support", "frame-system", "pallet-balances", "parity-scale-codec", - "runtime-common", "scale-info", "serde", "sp-core", @@ -5803,7 +5936,7 @@ dependencies = [ [[package]] name = "pallet-lottery" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-support", "frame-system", @@ -5816,7 +5949,7 @@ dependencies = [ [[package]] name = "pallet-membership" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-benchmarking", "frame-support", @@ -5833,33 +5966,17 @@ dependencies = [ [[package]] name = "pallet-mmr" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "ckb-merkle-mountain-range", "frame-benchmarking", "frame-support", "frame-system", - "pallet-mmr-primitives", "parity-scale-codec", "scale-info", "sp-core", "sp-io", - "sp-runtime", - "sp-std", -] - -[[package]] -name = "pallet-mmr-primitives" -version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" -dependencies = [ - "frame-support", - "frame-system", - "log", - "parity-scale-codec", - "serde", - "sp-api", - "sp-core", + "sp-mmr-primitives", "sp-runtime", "sp-std", ] @@ -5867,24 +5984,22 @@ dependencies = [ [[package]] name = "pallet-mmr-rpc" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ - "jsonrpc-core", - "jsonrpc-core-client", - "jsonrpc-derive", - "pallet-mmr-primitives", + "jsonrpsee", "parity-scale-codec", "serde", "sp-api", "sp-blockchain", "sp-core", + "sp-mmr-primitives", "sp-runtime", ] [[package]] name = "pallet-multisig" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-benchmarking", "frame-support", @@ -5899,7 +6014,7 @@ dependencies = [ [[package]] name = "pallet-nicks" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-support", "frame-system", @@ -5910,10 +6025,45 @@ dependencies = [ "sp-std", ] +[[package]] +name = "pallet-nomination-pools" +version = "1.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" +dependencies = [ + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-runtime", + "sp-staking", + "sp-std", +] + +[[package]] +name = "pallet-nomination-pools-benchmarking" +version = "1.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" +dependencies = [ + "frame-benchmarking", + "frame-election-provider-support", + "frame-support", + "frame-system", + "pallet-bags-list", + "pallet-nomination-pools", + "pallet-staking", + "parity-scale-codec", + "scale-info", + "sp-runtime", + "sp-staking", + "sp-std", +] + [[package]] name = "pallet-offences" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-support", "frame-system", @@ -5930,7 +6080,7 @@ dependencies = [ [[package]] name = "pallet-offences-benchmarking" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -5953,7 +6103,7 @@ dependencies = [ [[package]] name = "pallet-preimage" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-benchmarking", "frame-support", @@ -5969,7 +6119,7 @@ dependencies = [ [[package]] name = "pallet-proxy" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-benchmarking", "frame-support", @@ -5984,7 +6134,7 @@ dependencies = [ [[package]] name = "pallet-randomness-collective-flip" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-support", "frame-system", @@ -5998,8 +6148,9 @@ dependencies = [ [[package]] name = "pallet-recovery" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ + "frame-benchmarking", "frame-support", "frame-system", "parity-scale-codec", @@ -6012,7 +6163,7 @@ dependencies = [ [[package]] name = "pallet-referenda" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "assert_matches", "frame-benchmarking", @@ -6026,10 +6177,26 @@ dependencies = [ "sp-std", ] +[[package]] +name = "pallet-remark" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" +dependencies = [ + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "serde", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + [[package]] name = "pallet-scheduler" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-benchmarking", "frame-support", @@ -6045,7 +6212,7 @@ dependencies = [ [[package]] name = "pallet-session" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-support", "frame-system", @@ -6066,7 +6233,7 @@ dependencies = [ [[package]] name = "pallet-session-benchmarking" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-benchmarking", "frame-support", @@ -6082,7 +6249,7 @@ dependencies = [ [[package]] name = "pallet-society" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-support", "frame-system", @@ -6096,7 +6263,7 @@ dependencies = [ [[package]] name = "pallet-staking" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-benchmarking", "frame-election-provider-support", @@ -6119,9 +6286,9 @@ dependencies = [ [[package]] name = "pallet-staking-reward-curve" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ - "proc-macro-crate 1.1.3", + "proc-macro-crate", "proc-macro2", "quote", "syn", @@ -6130,16 +6297,33 @@ dependencies = [ [[package]] name = "pallet-staking-reward-fn" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "log", "sp-arithmetic", ] +[[package]] +name = "pallet-state-trie-migration" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" +dependencies = [ + "frame-benchmarking", + "frame-support", + "frame-system", + "log", + "parity-scale-codec", + "scale-info", + "sp-core", + "sp-io", + "sp-runtime", + "sp-std", +] + [[package]] name = "pallet-sudo" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-support", "frame-system", @@ -6153,7 +6337,7 @@ dependencies = [ [[package]] name = "pallet-timestamp" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-benchmarking", "frame-support", @@ -6171,7 +6355,7 @@ dependencies = [ [[package]] name = "pallet-tips" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-benchmarking", "frame-support", @@ -6190,14 +6374,13 @@ dependencies = [ [[package]] name = "pallet-transaction-payment" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-support", "frame-system", "parity-scale-codec", "scale-info", "serde", - "smallvec", "sp-core", "sp-io", "sp-runtime", @@ -6207,11 +6390,9 @@ dependencies = [ [[package]] name = "pallet-transaction-payment-rpc" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ - "jsonrpc-core", - "jsonrpc-core-client", - "jsonrpc-derive", + "jsonrpsee", "pallet-transaction-payment-rpc-runtime-api", "parity-scale-codec", "sp-api", @@ -6224,7 +6405,7 @@ dependencies = [ [[package]] name = "pallet-transaction-payment-rpc-runtime-api" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "pallet-transaction-payment", "parity-scale-codec", @@ -6235,7 +6416,7 @@ dependencies = [ [[package]] name = "pallet-transaction-storage" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-support", "frame-system", @@ -6253,7 +6434,7 @@ dependencies = [ [[package]] name = "pallet-treasury" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-benchmarking", "frame-support", @@ -6270,7 +6451,7 @@ dependencies = [ [[package]] name = "pallet-uniques" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-benchmarking", "frame-support", @@ -6285,7 +6466,7 @@ dependencies = [ [[package]] name = "pallet-utility" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-benchmarking", "frame-support", @@ -6301,7 +6482,7 @@ dependencies = [ [[package]] name = "pallet-vesting" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-benchmarking", "frame-support", @@ -6315,7 +6496,7 @@ dependencies = [ [[package]] name = "pallet-web3-names" -version = "1.6.2" +version = "1.7.0" dependencies = [ "frame-benchmarking", "frame-support", @@ -6331,10 +6512,24 @@ dependencies = [ "sp-std", ] +[[package]] +name = "pallet-whitelist" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" +dependencies = [ + "frame-support", + "frame-system", + "parity-scale-codec", + "scale-info", + "sp-api", + "sp-runtime", + "sp-std", +] + [[package]] name = "pallet-xcm" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "frame-support", "frame-system", @@ -6351,8 +6546,8 @@ dependencies = [ [[package]] name = "pallet-xcm-benchmarks" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "frame-benchmarking", "frame-support", @@ -6369,7 +6564,7 @@ dependencies = [ [[package]] name = "parachain-info" version = "0.1.0" -source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.17#db11baacc325537be74ad34517fcb28ed9ded6c6" +source = "git+https://github.com/paritytech/cumulus?branch=polkadot-v0.9.24#95ca5a085727c1494ddeeae4a2b2e69c4ee1933b" dependencies = [ "cumulus-primitives-core", "frame-support", @@ -6381,7 +6576,7 @@ dependencies = [ [[package]] name = "parachain-staking" -version = "1.6.2" +version = "1.7.0" dependencies = [ "frame-benchmarking", "frame-support", @@ -6395,7 +6590,6 @@ dependencies = [ "pallet-session", "pallet-timestamp", "parity-scale-codec", - "runtime-common", "scale-info", "serde", "sp-consensus-aura", @@ -6408,9 +6602,9 @@ dependencies = [ [[package]] name = "parity-db" -version = "0.3.8" +version = "0.3.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "865edee5b792f537356d9e55cbc138e7f4718dc881a7ea45a18b37bf61c21e3d" +checksum = "55a7901b85874402471e131de3332dde0e51f38432c69a3853627c8e25433048" dependencies = [ "blake2-rfc", "crc32fast", @@ -6427,9 +6621,9 @@ dependencies = [ [[package]] name = "parity-scale-codec" -version = "2.3.1" +version = "3.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "373b1a4c1338d9cd3d1fa53b3a11bdab5ab6bd80a20f7f7becd76953ae2be909" +checksum = "e8b44461635bbb1a0300f100a841e571e7d919c81c73075ef5d152ffdb521066" dependencies = [ "arrayvec 0.7.2", "bitvec", @@ -6441,11 +6635,11 @@ dependencies = [ [[package]] name = "parity-scale-codec-derive" -version = "2.3.1" +version = "3.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1557010476e0595c9b568d16dcfb81b93cdeb157612726f5170d31aa707bed27" +checksum = "c45ed1f39709f5a89338fab50e59816b2e8815f5bb58276e7ddf9afd495f73f8" dependencies = [ - "proc-macro-crate 1.1.3", + "proc-macro-crate", "proc-macro2", "quote", "syn", @@ -6457,34 +6651,20 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "aa9777aa91b8ad9dd5aaa04a9b6bcb02c7f1deb952fca5a66034d5e63afc5c6f" -[[package]] -name = "parity-tokio-ipc" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9981e32fb75e004cc148f5fb70342f393830e0a4aa62e3cc93b50976218d42b6" -dependencies = [ - "futures 0.3.21", - "libc", - "log", - "rand 0.7.3", - "tokio", - "winapi 0.3.9", -] - [[package]] name = "parity-util-mem" -version = "0.10.2" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f4cb4e169446179cbc6b8b6320cc9fca49bd2e94e8db25f25f200a8ea774770" +checksum = "c32561d248d352148124f036cac253a644685a21dc9fea383eb4907d7bd35a8f" dependencies = [ "cfg-if 1.0.0", - "hashbrown 0.11.2", + "hashbrown 0.12.0", "impl-trait-for-tuples", "parity-util-mem-derive", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "primitive-types", "smallvec", - "winapi 0.3.9", + "winapi", ] [[package]] @@ -6513,40 +6693,12 @@ version = "0.42.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "be5e13c266502aadf83426d87d81a0f5d1ef45b8027f5a471c360abfe4bfae92" -[[package]] -name = "parity-ws" -version = "0.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5983d3929ad50f12c3eb9a6743f19d691866ecd44da74c0a3308c3f8a56df0c6" -dependencies = [ - "byteorder", - "bytes 0.4.12", - "httparse", - "log", - "mio 0.6.23", - "mio-extras", - "rand 0.7.3", - "sha-1 0.8.2", - "slab", - "url 2.2.2", -] - [[package]] name = "parking" version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "427c3892f9e783d91cc128285287e70a59e206ca452770ece88a76f7a3eddd72" -[[package]] -name = "parking_lot" -version = "0.10.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3a704eb390aafdc107b0e392f56a82b668e3a71366993b5340f5833fd62505e" -dependencies = [ - "lock_api 0.3.4", - "parking_lot_core 0.7.2", -] - [[package]] name = "parking_lot" version = "0.11.2" @@ -6554,7 +6706,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7d17b78036a60663b797adeaee46f5c9dfebb86948d1255007a1d6be0271ff99" dependencies = [ "instant", - "lock_api 0.4.6", + "lock_api", "parking_lot_core 0.8.5", ] @@ -6564,22 +6716,8 @@ version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "87f5ec2493a61ac0506c0f4199f99070cbe83857b0337006a30f3e6719b8ef58" dependencies = [ - "lock_api 0.4.6", - "parking_lot_core 0.9.1", -] - -[[package]] -name = "parking_lot_core" -version = "0.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d58c7c768d4ba344e3e8d72518ac13e259d7c7ade24167003b8488e10b6740a3" -dependencies = [ - "cfg-if 0.1.10", - "cloudabi", - "libc", - "redox_syscall 0.1.57", - "smallvec", - "winapi 0.3.9", + "lock_api", + "parking_lot_core 0.9.2", ] [[package]] @@ -6591,29 +6729,29 @@ dependencies = [ "cfg-if 1.0.0", "instant", "libc", - "redox_syscall 0.2.11", + "redox_syscall", "smallvec", - "winapi 0.3.9", + "winapi", ] [[package]] name = "parking_lot_core" -version = "0.9.1" +version = "0.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28141e0cc4143da2443301914478dc976a61ffdb3f043058310c70df2fed8954" +checksum = "995f667a6c822200b0433ac218e05582f0e2efa1b922a3fd2fbaadc5f87bab37" dependencies = [ "cfg-if 1.0.0", "libc", - "redox_syscall 0.2.11", + "redox_syscall", "smallvec", "windows-sys", ] [[package]] name = "paste" -version = "1.0.6" +version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0744126afe1a6dd7f394cb50a716dbe086cb06e255e53d8d0185d82828358fb5" +checksum = "0c520e05135d6e763148b6426a837e239041653ba7becd2e538c076c738025fc" [[package]] name = "pbkdf2" @@ -6639,12 +6777,6 @@ version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099" -[[package]] -name = "percent-encoding" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31010dd2e1ac33d5b46a5b413495239882813e0369f8ed8a5e266f173602f831" - [[package]] name = "percent-encoding" version = "2.1.0" @@ -6653,7 +6785,7 @@ checksum = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e" [[package]] name = "peregrine-runtime" -version = "1.6.2" +version = "1.7.0" dependencies = [ "attestation", "ctype", @@ -6673,7 +6805,6 @@ dependencies = [ "frame-system-rpc-runtime-api", "frame-try-runtime", "hex-literal", - "kilt-launch", "kilt-support", "log", "pallet-aura", @@ -6692,6 +6823,7 @@ dependencies = [ "pallet-session", "pallet-sudo", "pallet-timestamp", + "pallet-tips", "pallet-transaction-payment", "pallet-transaction-payment-rpc-runtime-api", "pallet-treasury", @@ -6840,9 +6972,9 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" [[package]] name = "pkg-config" -version = "0.3.24" +version = "0.3.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58893f751c9b0412871a09abd62ecd2a00298c6c83befa223ef98c52aef40cbe" +checksum = "1df8c4ec4b0627e53bdf214615ad287367e482558cf84b109250b37464dc03ae" [[package]] name = "platforms" @@ -6852,8 +6984,8 @@ checksum = "e8d0eef3571242013a0d5dc84861c3ae4a652e56e12adf8bdc26ff5f8cb34c94" [[package]] name = "polkadot-approval-distribution" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "futures 0.3.21", "polkadot-node-network-protocol", @@ -6861,30 +6993,33 @@ dependencies = [ "polkadot-node-subsystem", "polkadot-node-subsystem-util", "polkadot-primitives", - "tracing", + "rand 0.8.5", + "tracing-gum", ] [[package]] name = "polkadot-availability-bitfield-distribution" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "futures 0.3.21", "polkadot-node-network-protocol", "polkadot-node-subsystem", "polkadot-node-subsystem-util", "polkadot-primitives", - "tracing", + "rand 0.8.5", + "tracing-gum", ] [[package]] name = "polkadot-availability-distribution" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "derive_more", + "fatality", "futures 0.3.21", - "lru 0.7.3", + "lru 0.7.5", "parity-scale-codec", "polkadot-erasure-coding", "polkadot-node-network-protocol", @@ -6896,16 +7031,17 @@ dependencies = [ "sp-core", "sp-keystore", "thiserror", - "tracing", + "tracing-gum", ] [[package]] name = "polkadot-availability-recovery" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ + "fatality", "futures 0.3.21", - "lru 0.7.3", + "lru 0.7.5", "parity-scale-codec", "polkadot-erasure-coding", "polkadot-node-network-protocol", @@ -6916,24 +7052,26 @@ dependencies = [ "rand 0.8.5", "sc-network", "thiserror", - "tracing", + "tracing-gum", ] [[package]] name = "polkadot-cli" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "clap", "frame-benchmarking-cli", "futures 0.3.21", "log", + "polkadot-client", "polkadot-node-core-pvf", "polkadot-node-metrics", "polkadot-performance-test", "polkadot-service", "sc-cli", "sc-service", + "sc-sysinfo", "sc-tracing", "sp-core", "sp-trie", @@ -6944,16 +7082,21 @@ dependencies = [ [[package]] name = "polkadot-client" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "beefy-primitives", "frame-benchmarking", + "frame-benchmarking-cli", + "frame-system", "frame-system-rpc-runtime-api", - "pallet-mmr-primitives", + "pallet-transaction-payment", "pallet-transaction-payment-rpc-runtime-api", + "polkadot-core-primitives", + "polkadot-node-core-parachains-inherent", "polkadot-primitives", "polkadot-runtime", + "polkadot-runtime-common", "sc-client-api", "sc-consensus", "sc-executor", @@ -6964,21 +7107,26 @@ dependencies = [ "sp-blockchain", "sp-consensus", "sp-consensus-babe", + "sp-core", "sp-finality-grandpa", + "sp-inherents", + "sp-keyring", + "sp-mmr-primitives", "sp-offchain", "sp-runtime", "sp-session", "sp-storage", + "sp-timestamp", "sp-transaction-pool", ] [[package]] name = "polkadot-collator-protocol" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "always-assert", - "derive_more", + "fatality", "futures 0.3.21", "futures-timer", "polkadot-node-network-protocol", @@ -6990,13 +7138,13 @@ dependencies = [ "sp-keystore", "sp-runtime", "thiserror", - "tracing", + "tracing-gum", ] [[package]] name = "polkadot-core-primitives" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "parity-scale-codec", "parity-util-mem", @@ -7008,12 +7156,13 @@ dependencies = [ [[package]] name = "polkadot-dispute-distribution" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "derive_more", + "fatality", "futures 0.3.21", - "lru 0.7.3", + "lru 0.7.5", "parity-scale-codec", "polkadot-erasure-coding", "polkadot-node-network-protocol", @@ -7025,13 +7174,13 @@ dependencies = [ "sp-application-crypto", "sp-keystore", "thiserror", - "tracing", + "tracing-gum", ] [[package]] name = "polkadot-erasure-coding" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "parity-scale-codec", "polkadot-node-primitives", @@ -7044,8 +7193,8 @@ dependencies = [ [[package]] name = "polkadot-gossip-support" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "futures 0.3.21", "futures-timer", @@ -7059,18 +7208,20 @@ dependencies = [ "sp-application-crypto", "sp-core", "sp-keystore", - "tracing", + "tracing-gum", ] [[package]] name = "polkadot-network-bridge" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ + "always-assert", "async-trait", + "bytes", "futures 0.3.21", "parity-scale-codec", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "polkadot-node-network-protocol", "polkadot-node-subsystem", "polkadot-node-subsystem-util", @@ -7078,13 +7229,13 @@ dependencies = [ "polkadot-primitives", "sc-network", "sp-consensus", - "tracing", + "tracing-gum", ] [[package]] name = "polkadot-node-collation-generation" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "futures 0.3.21", "parity-scale-codec", @@ -7096,20 +7247,20 @@ dependencies = [ "sp-core", "sp-maybe-compressed-blob", "thiserror", - "tracing", + "tracing-gum", ] [[package]] name = "polkadot-node-core-approval-voting" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "bitvec", "derive_more", "futures 0.3.21", "futures-timer", "kvdb", - "lru 0.7.3", + "lru 0.7.5", "merlin", "parity-scale-codec", "polkadot-node-jaeger", @@ -7124,13 +7275,14 @@ dependencies = [ "sp-consensus", "sp-consensus-slots", "sp-runtime", - "tracing", + "thiserror", + "tracing-gum", ] [[package]] name = "polkadot-node-core-av-store" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "bitvec", "futures 0.3.21", @@ -7144,15 +7296,16 @@ dependencies = [ "polkadot-overseer", "polkadot-primitives", "thiserror", - "tracing", + "tracing-gum", ] [[package]] name = "polkadot-node-core-backing" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "bitvec", + "fatality", "futures 0.3.21", "polkadot-erasure-coding", "polkadot-node-primitives", @@ -7162,13 +7315,13 @@ dependencies = [ "polkadot-statement-table", "sp-keystore", "thiserror", - "tracing", + "tracing-gum", ] [[package]] name = "polkadot-node-core-bitfield-signing" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "futures 0.3.21", "polkadot-node-subsystem", @@ -7176,14 +7329,14 @@ dependencies = [ "polkadot-primitives", "sp-keystore", "thiserror", - "tracing", + "tracing-gum", "wasm-timer", ] [[package]] name = "polkadot-node-core-candidate-validation" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "async-trait", "futures 0.3.21", @@ -7195,13 +7348,13 @@ dependencies = [ "polkadot-parachain", "polkadot-primitives", "sp-maybe-compressed-blob", - "tracing", + "tracing-gum", ] [[package]] name = "polkadot-node-core-chain-api" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "futures 0.3.21", "polkadot-node-subsystem", @@ -7210,13 +7363,13 @@ dependencies = [ "sc-client-api", "sc-consensus-babe", "sp-blockchain", - "tracing", + "tracing-gum", ] [[package]] name = "polkadot-node-core-chain-selection" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "futures 0.3.21", "futures-timer", @@ -7227,17 +7380,18 @@ dependencies = [ "polkadot-node-subsystem-util", "polkadot-primitives", "thiserror", - "tracing", + "tracing-gum", ] [[package]] name = "polkadot-node-core-dispute-coordinator" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ + "fatality", "futures 0.3.21", "kvdb", - "lru 0.7.3", + "lru 0.7.5", "parity-scale-codec", "polkadot-node-primitives", "polkadot-node-subsystem", @@ -7245,13 +7399,13 @@ dependencies = [ "polkadot-primitives", "sc-keystore", "thiserror", - "tracing", + "tracing-gum", ] [[package]] name = "polkadot-node-core-parachains-inherent" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "async-trait", "futures 0.3.21", @@ -7262,15 +7416,16 @@ dependencies = [ "sp-inherents", "sp-runtime", "thiserror", - "tracing", + "tracing-gum", ] [[package]] name = "polkadot-node-core-provisioner" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "bitvec", + "fatality", "futures 0.3.21", "futures-timer", "polkadot-node-primitives", @@ -7279,13 +7434,13 @@ dependencies = [ "polkadot-primitives", "rand 0.8.5", "thiserror", - "tracing", + "tracing-gum", ] [[package]] name = "polkadot-node-core-pvf" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "always-assert", "assert_matches", @@ -7309,13 +7464,14 @@ dependencies = [ "sp-maybe-compressed-blob", "sp-tracing", "sp-wasm-interface", - "tracing", + "tempfile", + "tracing-gum", ] [[package]] name = "polkadot-node-core-pvf-checker" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "futures 0.3.21", "polkadot-node-primitives", @@ -7325,13 +7481,13 @@ dependencies = [ "polkadot-primitives", "sp-keystore", "thiserror", - "tracing", + "tracing-gum", ] [[package]] name = "polkadot-node-core-runtime-api" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "futures 0.3.21", "memory-lru", @@ -7342,21 +7498,20 @@ dependencies = [ "sp-api", "sp-authority-discovery", "sp-consensus-babe", - "sp-core", - "tracing", + "tracing-gum", ] [[package]] name = "polkadot-node-jaeger" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "async-std", "lazy_static", "log", "mick-jaeger", "parity-scale-codec", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "polkadot-node-primitives", "polkadot-primitives", "sc-network", @@ -7366,45 +7521,48 @@ dependencies = [ [[package]] name = "polkadot-node-metrics" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "bs58", "futures 0.3.21", "futures-timer", "log", - "metered-channel", "parity-scale-codec", "polkadot-primitives", + "prioritized-metered-channel", "sc-cli", "sc-service", "sc-tracing", "substrate-prometheus-endpoint", - "tracing", + "tracing-gum", ] [[package]] name = "polkadot-node-network-protocol" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "async-trait", "derive_more", + "fatality", "futures 0.3.21", "parity-scale-codec", "polkadot-node-jaeger", "polkadot-node-primitives", "polkadot-primitives", + "rand 0.8.5", "sc-authority-discovery", "sc-network", - "strum", + "strum 0.24.0", "thiserror", + "tracing-gum", ] [[package]] name = "polkadot-node-primitives" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "bounded-vec", "futures 0.3.21", @@ -7425,8 +7583,8 @@ dependencies = [ [[package]] name = "polkadot-node-subsystem" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "polkadot-node-jaeger", "polkadot-node-subsystem-types", @@ -7435,15 +7593,15 @@ dependencies = [ [[package]] name = "polkadot-node-subsystem-types" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "derive_more", "futures 0.3.21", + "orchestra", "polkadot-node-jaeger", "polkadot-node-network-protocol", "polkadot-node-primitives", - "polkadot-overseer-gen", "polkadot-primitives", "polkadot-statement-table", "sc-network", @@ -7454,16 +7612,20 @@ dependencies = [ [[package]] name = "polkadot-node-subsystem-util" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "async-trait", "derive_more", + "fatality", "futures 0.3.21", "itertools", - "lru 0.7.3", - "metered-channel", + "kvdb", + "lru 0.7.5", + "parity-db", "parity-scale-codec", + "parity-util-mem", + "parking_lot 0.11.2", "pin-project 1.0.10", "polkadot-node-jaeger", "polkadot-node-metrics", @@ -7472,67 +7634,41 @@ dependencies = [ "polkadot-node-subsystem", "polkadot-overseer", "polkadot-primitives", + "prioritized-metered-channel", "rand 0.8.5", "sp-application-crypto", "sp-core", "sp-keystore", "thiserror", - "tracing", + "tracing-gum", ] [[package]] name = "polkadot-overseer" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "futures 0.3.21", "futures-timer", - "lru 0.7.3", + "lru 0.7.5", + "orchestra", "parity-util-mem", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "polkadot-node-metrics", "polkadot-node-network-protocol", "polkadot-node-primitives", "polkadot-node-subsystem-types", - "polkadot-overseer-gen", "polkadot-primitives", "sc-client-api", "sp-api", - "tracing", -] - -[[package]] -name = "polkadot-overseer-gen" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" -dependencies = [ - "async-trait", - "futures 0.3.21", - "futures-timer", - "metered-channel", - "pin-project 1.0.10", - "polkadot-node-network-protocol", - "polkadot-node-primitives", - "polkadot-overseer-gen-proc-macro", - "thiserror", - "tracing", -] - -[[package]] -name = "polkadot-overseer-gen-proc-macro" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" -dependencies = [ - "proc-macro-crate 1.1.3", - "proc-macro2", - "quote", - "syn", + "sp-core", + "tracing-gum", ] [[package]] name = "polkadot-parachain" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "derive_more", "frame-support", @@ -7548,10 +7684,10 @@ dependencies = [ [[package]] name = "polkadot-performance-test" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ - "env_logger 0.9.0", + "env_logger", "kusama-runtime", "log", "polkadot-erasure-coding", @@ -7563,8 +7699,8 @@ dependencies = [ [[package]] name = "polkadot-primitives" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "bitvec", "frame-system", @@ -7593,12 +7729,12 @@ dependencies = [ [[package]] name = "polkadot-rpc" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "beefy-gadget", "beefy-gadget-rpc", - "jsonrpc-core", + "jsonrpsee", "pallet-mmr-rpc", "pallet-transaction-payment-rpc", "polkadot-primitives", @@ -7620,12 +7756,13 @@ dependencies = [ "sp-keystore", "sp-runtime", "substrate-frame-rpc-system", + "substrate-state-trie-migration-rpc", ] [[package]] name = "polkadot-runtime" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "beefy-primitives", "bitvec", @@ -7645,16 +7782,17 @@ dependencies = [ "pallet-bags-list", "pallet-balances", "pallet-bounties", + "pallet-child-bounties", "pallet-collective", "pallet-democracy", "pallet-election-provider-multi-phase", + "pallet-election-provider-support-benchmarking", "pallet-elections-phragmen", "pallet-grandpa", "pallet-identity", "pallet-im-online", "pallet-indices", "pallet-membership", - "pallet-mmr-primitives", "pallet-multisig", "pallet-nicks", "pallet-offences", @@ -7691,6 +7829,7 @@ dependencies = [ "sp-core", "sp-inherents", "sp-io", + "sp-mmr-primitives", "sp-npos-elections", "sp-offchain", "sp-runtime", @@ -7708,8 +7847,8 @@ dependencies = [ [[package]] name = "polkadot-runtime-common" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "beefy-primitives", "bitvec", @@ -7755,8 +7894,8 @@ dependencies = [ [[package]] name = "polkadot-runtime-constants" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "frame-support", "polkadot-primitives", @@ -7767,8 +7906,8 @@ dependencies = [ [[package]] name = "polkadot-runtime-metrics" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "bs58", "parity-scale-codec", @@ -7779,8 +7918,8 @@ dependencies = [ [[package]] name = "polkadot-runtime-parachains" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "bitflags", "bitvec", @@ -7806,6 +7945,7 @@ dependencies = [ "scale-info", "serde", "sp-api", + "sp-application-crypto", "sp-core", "sp-inherents", "sp-io", @@ -7821,8 +7961,8 @@ dependencies = [ [[package]] name = "polkadot-service" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "async-trait", "beefy-gadget", @@ -7833,12 +7973,12 @@ dependencies = [ "kusama-runtime", "kvdb", "kvdb-rocksdb", - "lru 0.7.3", + "lru 0.7.5", "pallet-babe", "pallet-im-online", - "pallet-mmr-primitives", "pallet-staking", "pallet-transaction-payment-rpc-runtime-api", + "parity-db", "polkadot-approval-distribution", "polkadot-availability-bitfield-distribution", "polkadot-availability-distribution", @@ -7864,6 +8004,7 @@ dependencies = [ "polkadot-node-network-protocol", "polkadot-node-primitives", "polkadot-node-subsystem", + "polkadot-node-subsystem-types", "polkadot-node-subsystem-util", "polkadot-overseer", "polkadot-parachain", @@ -7891,9 +8032,11 @@ dependencies = [ "sc-offchain", "sc-service", "sc-sync-state-rpc", + "sc-sysinfo", "sc-telemetry", "sc-transaction-pool", "serde", + "serde_json", "sp-api", "sp-authority-discovery", "sp-block-builder", @@ -7915,17 +8058,17 @@ dependencies = [ "sp-trie", "substrate-prometheus-endpoint", "thiserror", - "tracing", + "tracing-gum", "westend-runtime", ] [[package]] name = "polkadot-statement-distribution" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "arrayvec 0.5.2", - "derive_more", + "fatality", "futures 0.3.21", "indexmap", "parity-scale-codec", @@ -7937,13 +8080,13 @@ dependencies = [ "sp-keystore", "sp-staking", "thiserror", - "tracing", + "tracing-gum", ] [[package]] name = "polkadot-statement-table" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "parity-scale-codec", "polkadot-primitives", @@ -7960,7 +8103,7 @@ dependencies = [ "libc", "log", "wepoll-ffi", - "winapi 0.3.9", + "winapi", ] [[package]] @@ -7969,7 +8112,7 @@ version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "048aeb476be11a4b6ca432ca569e375810de9294ae78f4774e78ea98a9246ede" dependencies = [ - "cpufeatures 0.2.2", + "cpufeatures", "opaque-debug 0.3.0", "universal-hash", ] @@ -7981,7 +8124,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8419d2b623c7c0896ff2d5d96e2cb4ede590fed28fcc34934f4c33c036e620a1" dependencies = [ "cfg-if 1.0.0", - "cpufeatures 0.2.2", + "cpufeatures", "opaque-debug 0.3.0", "universal-hash", ] @@ -7994,9 +8137,9 @@ checksum = "eb9f9e6e233e5c4a35559a617bf40a4ec447db2e84c20b55a6f83167b7e57872" [[package]] name = "primitive-types" -version = "0.10.1" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05e4722c697a58a99d5d06a08c30821d7c082a4632198de1eaa5a6c22ef42373" +checksum = "e28720988bff275df1f51b171e1b2a18c30d194c4d2b61defdacecd625a5d94a" dependencies = [ "fixed-hash", "impl-codec", @@ -8006,12 +8149,18 @@ dependencies = [ ] [[package]] -name = "proc-macro-crate" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d6ea3c4595b96363c13943497db34af4460fb474a95c43f4446ad341b8c9785" +name = "prioritized-metered-channel" +version = "0.2.0" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ - "toml", + "coarsetime", + "crossbeam-queue", + "derive_more", + "futures 0.3.21", + "futures-timer", + "nanorand", + "thiserror", + "tracing", ] [[package]] @@ -8050,11 +8199,11 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.36" +version = "1.0.39" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7342d5883fbccae1cc37a2353b09c87c9b0f3afd73f5fb9bba687a1f733b029" +checksum = "c54b25569025b7fc9651de43004ae593a75ad88543b17178aa5e1b9c4f15f56f" dependencies = [ - "unicode-xid", + "unicode-ident", ] [[package]] @@ -8071,14 +8220,47 @@ dependencies = [ "thiserror", ] +[[package]] +name = "prometheus-client" +version = "0.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac1abe0255c04d15f571427a2d1e00099016506cf3297b53853acd2b7eb87825" +dependencies = [ + "dtoa", + "itoa 1.0.1", + "owning_ref", + "prometheus-client-derive-text-encode", +] + +[[package]] +name = "prometheus-client-derive-text-encode" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e8e12d01b9d66ad9eb4529c57666b6263fc1993cb30261d83ead658fdd932652" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + [[package]] name = "prost" version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "444879275cb4fd84958b1a1d5420d15e6fcf7c235fe47f053c9c2a80aceb6001" dependencies = [ - "bytes 1.1.0", - "prost-derive", + "bytes", + "prost-derive 0.9.0", +] + +[[package]] +name = "prost" +version = "0.10.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "71adf41db68aa0daaefc69bb30bcd68ded9b9abaad5d1fbb6304c4fb390e083e" +dependencies = [ + "bytes", + "prost-derive 0.10.1", ] [[package]] @@ -8087,20 +8269,55 @@ version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "62941722fb675d463659e49c4f3fe1fe792ff24fe5bbaa9c08cd3b98a1c354f5" dependencies = [ - "bytes 1.1.0", + "bytes", "heck 0.3.3", "itertools", "lazy_static", "log", "multimap", "petgraph", - "prost", - "prost-types", + "prost 0.9.0", + "prost-types 0.9.0", + "regex", + "tempfile", + "which", +] + +[[package]] +name = "prost-build" +version = "0.10.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ae5a4388762d5815a9fc0dea33c56b021cdc8dde0c55e0c9ca57197254b0cab" +dependencies = [ + "bytes", + "cfg-if 1.0.0", + "cmake", + "heck 0.4.0", + "itertools", + "lazy_static", + "log", + "multimap", + "petgraph", + "prost 0.10.4", + "prost-types 0.10.1", "regex", "tempfile", "which", ] +[[package]] +name = "prost-codec" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "00af1e92c33b4813cc79fda3f2dbf56af5169709be0202df730e9ebc3e4cd007" +dependencies = [ + "asynchronous-codec", + "bytes", + "prost 0.10.4", + "thiserror", + "unsigned-varint", +] + [[package]] name = "prost-derive" version = "0.9.0" @@ -8114,21 +8331,44 @@ dependencies = [ "syn", ] +[[package]] +name = "prost-derive" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b670f45da57fb8542ebdbb6105a925fe571b67f9e7ed9f47a06a84e72b4e7cc" +dependencies = [ + "anyhow", + "itertools", + "proc-macro2", + "quote", + "syn", +] + [[package]] name = "prost-types" version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "534b7a0e836e3c482d2693070f982e39e7611da9695d4d1f5a4b186b51faef0a" dependencies = [ - "bytes 1.1.0", - "prost", + "bytes", + "prost 0.9.0", +] + +[[package]] +name = "prost-types" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2d0a014229361011dc8e69c8a1ec6c2e8d0f2af7c91e3ea3f5b2170298461e68" +dependencies = [ + "bytes", + "prost 0.10.4", ] [[package]] name = "psm" -version = "0.1.17" +version = "0.1.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6eca0fa5dd7c4c96e184cec588f0b1db1ee3165e678db21c09793105acb17e6f" +checksum = "871372391786ccec00d3c5d3d6608905b3d4db263639cfe075d3b60a736d115a" dependencies = [ "cc", ] @@ -8158,18 +8398,18 @@ dependencies = [ [[package]] name = "quote" -version = "1.0.16" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4af2ec4714533fcdf07e886f17025ace8b997b9ce51204ee69b6da831c3da57" +checksum = "a1feb54ed693b93a84e14094943b84b7c4eae204c512b7ccb95ab0c66d278ad1" dependencies = [ "proc-macro2", ] [[package]] name = "radium" -version = "0.6.2" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "643f8f41a8ebc4c5dc4515c82bb8abd397b527fc20fd681b7c011c2aee5d44fb" +checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09" [[package]] name = "rand" @@ -8182,7 +8422,7 @@ dependencies = [ "rand_chacha 0.2.2", "rand_core 0.5.1", "rand_hc", - "rand_pcg", + "rand_pcg 0.2.1", ] [[package]] @@ -8231,7 +8471,7 @@ version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d34f1408f55294453790c48b2f1ebbb1c5b4b7563eb1f418bcfcfdbb06ebb4e7" dependencies = [ - "getrandom 0.2.5", + "getrandom 0.2.6", ] [[package]] @@ -8262,6 +8502,15 @@ dependencies = [ "rand_core 0.5.1", ] +[[package]] +name = "rand_pcg" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "59cad018caf63deb318e5a4586d99a24424a364f40f1e5778c29aca23f4fc73e" +dependencies = [ + "rand_core 0.6.3", +] + [[package]] name = "rawpointer" version = "0.2.1" @@ -8270,9 +8519,9 @@ checksum = "60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3" [[package]] name = "rayon" -version = "1.5.1" +version = "1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c06aca804d41dbc8ba42dfd964f0d01334eceb64314b9ecf7c5fad5188a06d90" +checksum = "fd249e82c21598a9a426a4e00dd7adc1d640b22445ec8545feef801d1a74c221" dependencies = [ "autocfg", "crossbeam-deque", @@ -8282,40 +8531,33 @@ dependencies = [ [[package]] name = "rayon-core" -version = "1.9.1" +version = "1.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d78120e2c850279833f1dd3582f730c4ab53ed95aeaaaa862a2a5c71b1656d8e" +checksum = "9f51245e1e62e1f1629cbfec37b5793bbabcaeb90f30e94d2ba03564687353e4" dependencies = [ "crossbeam-channel", "crossbeam-deque", "crossbeam-utils", - "lazy_static", "num_cpus", ] [[package]] name = "redox_syscall" -version = "0.1.57" +version = "0.2.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41cc0f7e4d5d4544e8861606a285bb08d3e70712ccc7d2b84d7c0ccfaf4b05ce" - -[[package]] -name = "redox_syscall" -version = "0.2.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8380fe0152551244f0747b1bf41737e0f8a74f97a14ccefd1148187271634f3c" +checksum = "62f25bc4c7e55e0b0b7a1d43fb893f4fa1361d0abe38b9ce4f323c2adfe6ef42" dependencies = [ "bitflags", ] [[package]] name = "redox_users" -version = "0.4.2" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7776223e2696f1aa4c6b0170e83212f47296a00424305117d013dfe86fb0fe55" +checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b" dependencies = [ - "getrandom 0.2.5", - "redox_syscall 0.2.11", + "getrandom 0.2.6", + "redox_syscall", "thiserror", ] @@ -8354,9 +8596,9 @@ dependencies = [ [[package]] name = "regalloc" -version = "0.0.33" +version = "0.0.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d808cff91dfca7b239d40b972ba628add94892b1d9e19a842aedc5cfae8ab1a" +checksum = "62446b1d3ebf980bdc68837700af1d77b37bc430e524bf95319c6eada2a4cc02" dependencies = [ "log", "rustc-hash", @@ -8398,16 +8640,16 @@ dependencies = [ "bitflags", "libc", "mach", - "winapi 0.3.9", + "winapi", ] [[package]] name = "remote-externalities" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ - "env_logger 0.9.0", - "jsonrpsee 0.8.0", + "env_logger", + "jsonrpsee", "log", "parity-scale-codec", "serde", @@ -8424,7 +8666,7 @@ version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7" dependencies = [ - "winapi 0.3.9", + "winapi", ] [[package]] @@ -8443,6 +8685,17 @@ version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8c31b5c4033f8fdde8700e4657be2c497e7288f01515be52168c631e2e4d4086" +[[package]] +name = "rfc6979" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96ef608575f6392792f9ecf7890c00086591d29a83910939d430753f7c050525" +dependencies = [ + "crypto-bigint", + "hmac 0.11.0", + "zeroize", +] + [[package]] name = "ring" version = "0.16.20" @@ -8455,14 +8708,14 @@ dependencies = [ "spin", "untrusted", "web-sys", - "winapi 0.3.9", + "winapi", ] [[package]] name = "rocksdb" -version = "0.17.0" +version = "0.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a62eca5cacf2c8261128631bed9f045598d40bfbe4b29f5163f0f802f8f44a7" +checksum = "620f4129485ff1a7128d184bc687470c21c7951b64779ebc9cfdad3dcd920290" dependencies = [ "libc", "librocksdb-sys", @@ -8470,9 +8723,10 @@ dependencies = [ [[package]] name = "rococo-runtime" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ + "beefy-merkle-tree", "beefy-primitives", "bp-messages", "bp-rococo", @@ -8483,6 +8737,7 @@ dependencies = [ "frame-executive", "frame-support", "frame-system", + "frame-system-benchmarking", "frame-system-rpc-runtime-api", "hex-literal", "log", @@ -8501,7 +8756,6 @@ dependencies = [ "pallet-indices", "pallet-membership", "pallet-mmr", - "pallet-mmr-primitives", "pallet-multisig", "pallet-offences", "pallet-proxy", @@ -8530,6 +8784,7 @@ dependencies = [ "sp-core", "sp-inherents", "sp-io", + "sp-mmr-primitives", "sp-offchain", "sp-runtime", "sp-session", @@ -8545,8 +8800,8 @@ dependencies = [ [[package]] name = "rococo-runtime-constants" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "frame-support", "polkadot-primitives", @@ -8562,18 +8817,38 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ffc936cf8a7ea60c58f030fd36a612a48f440610214dc54bc36431f9ea0c3efb" dependencies = [ "libc", - "winapi 0.3.9", + "winapi", +] + +[[package]] +name = "rtnetlink" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6f54290e54521dac3de4149d83ddf9f62a359b3cc93bcb494a794a41e6f4744b" +dependencies = [ + "async-global-executor", + "futures 0.3.21", + "log", + "netlink-packet-route", + "netlink-proto", + "nix", + "thiserror", ] [[package]] name = "runtime-common" -version = "1.6.2" +version = "1.7.0" dependencies = [ + "attestation", "frame-support", "frame-system", + "frame-try-runtime", + "log", "pallet-authorship", "pallet-balances", + "pallet-membership", "pallet-transaction-payment", + "parachain-staking", "parity-scale-codec", "scale-info", "serde", @@ -8612,49 +8887,27 @@ dependencies = [ "semver 0.9.0", ] -[[package]] -name = "rustc_version" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0dfe2087c51c460008730de8b57e6a320782fbfb312e1f4d520e6c6fae155ee" -dependencies = [ - "semver 0.11.0", -] - [[package]] name = "rustc_version" version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" dependencies = [ - "semver 1.0.6", + "semver 1.0.7", ] [[package]] name = "rustix" -version = "0.31.3" +version = "0.33.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2dcfc2778a90e38f56a708bfc90572422e11d6c7ee233d053d1f782cf9df6d2" +checksum = "938a344304321a9da4973b9ff4f9f8db9caf4597dfd9dda6a60b523340a0fff0" dependencies = [ "bitflags", "errno", "io-lifetimes", "libc", "linux-raw-sys", - "winapi 0.3.9", -] - -[[package]] -name = "rustls" -version = "0.19.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35edb675feee39aec9c99fa5ff985081995a06d594114ae14cbe797ad7b7a6d7" -dependencies = [ - "base64", - "log", - "ring", - "sct 0.6.1", - "webpki 0.21.4", + "winapi", ] [[package]] @@ -8665,27 +8918,15 @@ checksum = "4fbfeb8d0ddb84706bc597a5574ab8912817c52a397f819e5b614e2265206921" dependencies = [ "log", "ring", - "sct 0.7.0", - "webpki 0.22.0", -] - -[[package]] -name = "rustls-native-certs" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a07b7c1885bd8ed3831c289b7870b13ef46fe0e856d288c30d9cc17d75a2092" -dependencies = [ - "openssl-probe", - "rustls 0.19.1", - "schannel", - "security-framework", + "sct", + "webpki", ] [[package]] name = "rustls-native-certs" -version = "0.6.1" +version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ca9ebdfa27d3fc180e42879037b5338ab1c040c06affd00d8338598e7800943" +checksum = "0167bac7a9f490495f3c33013e7722b53cb087ecbe082fb0c6387c96f634ea50" dependencies = [ "openssl-probe", "rustls-pemfile", @@ -8695,9 +8936,9 @@ dependencies = [ [[package]] name = "rustls-pemfile" -version = "0.2.1" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5eebeaeb360c87bfb72e84abdb3447159c0eaececf1bef2aecd65a8be949d1c9" +checksum = "e7522c9de787ff061458fe9a829dc790a3f5b22dc571694fc5883f448b94d9a9" dependencies = [ "base64", ] @@ -8719,6 +8960,17 @@ dependencies = [ "static_assertions", ] +[[package]] +name = "rw-stream-sink" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26338f5e09bb721b85b135ea05af7767c90b52f6de4f087d4f4a3a9d64e7dc04" +dependencies = [ + "futures 0.3.21", + "pin-project 1.0.10", + "static_assertions", +] + [[package]] name = "ryu" version = "1.0.9" @@ -8755,7 +9007,7 @@ dependencies = [ [[package]] name = "sc-allocator" version = "4.1.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "log", "sp-core", @@ -8766,7 +9018,7 @@ dependencies = [ [[package]] name = "sc-authority-discovery" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "async-trait", "futures 0.3.21", @@ -8775,8 +9027,8 @@ dependencies = [ "libp2p", "log", "parity-scale-codec", - "prost", - "prost-build", + "prost 0.10.4", + "prost-build 0.9.0", "rand 0.7.3", "sc-client-api", "sc-network", @@ -8793,7 +9045,7 @@ dependencies = [ [[package]] name = "sc-basic-authorship" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "futures 0.3.21", "futures-timer", @@ -8816,7 +9068,7 @@ dependencies = [ [[package]] name = "sc-block-builder" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "parity-scale-codec", "sc-client-api", @@ -8832,7 +9084,7 @@ dependencies = [ [[package]] name = "sc-chain-spec" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "impl-trait-for-tuples", "memmap2 0.5.3", @@ -8849,9 +9101,9 @@ dependencies = [ [[package]] name = "sc-chain-spec-derive" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ - "proc-macro-crate 1.1.3", + "proc-macro-crate", "proc-macro2", "quote", "syn", @@ -8860,7 +9112,7 @@ dependencies = [ [[package]] name = "sc-cli" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "chrono", "clap", @@ -8875,6 +9127,7 @@ dependencies = [ "regex", "rpassword", "sc-client-api", + "sc-client-db", "sc-keystore", "sc-network", "sc-service", @@ -8898,14 +9151,14 @@ dependencies = [ [[package]] name = "sc-client-api" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "fnv", "futures 0.3.21", "hash-db", "log", "parity-scale-codec", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "sc-executor", "sc-transaction-pool-api", "sc-utils", @@ -8926,7 +9179,7 @@ dependencies = [ [[package]] name = "sc-client-db" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "hash-db", "kvdb", @@ -8936,7 +9189,7 @@ dependencies = [ "log", "parity-db", "parity-scale-codec", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "sc-client-api", "sc-state-db", "sp-arithmetic", @@ -8951,14 +9204,14 @@ dependencies = [ [[package]] name = "sc-consensus" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "async-trait", "futures 0.3.21", "futures-timer", "libp2p", "log", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "sc-client-api", "sc-utils", "serde", @@ -8975,7 +9228,7 @@ dependencies = [ [[package]] name = "sc-consensus-aura" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "async-trait", "futures 0.3.21", @@ -9004,7 +9257,7 @@ dependencies = [ [[package]] name = "sc-consensus-babe" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "async-trait", "fork-tree", @@ -9015,7 +9268,7 @@ dependencies = [ "num-rational 0.2.4", "num-traits", "parity-scale-codec", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "rand 0.7.3", "retain_mut", "sc-client-api", @@ -9047,12 +9300,10 @@ dependencies = [ [[package]] name = "sc-consensus-babe-rpc" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "futures 0.3.21", - "jsonrpc-core", - "jsonrpc-core-client", - "jsonrpc-derive", + "jsonrpsee", "sc-consensus-babe", "sc-consensus-epochs", "sc-rpc-api", @@ -9071,7 +9322,7 @@ dependencies = [ [[package]] name = "sc-consensus-epochs" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "fork-tree", "parity-scale-codec", @@ -9084,7 +9335,7 @@ dependencies = [ [[package]] name = "sc-consensus-slots" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "async-trait", "futures 0.3.21", @@ -9109,7 +9360,7 @@ dependencies = [ [[package]] name = "sc-consensus-uncles" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "sc-client-api", "sp-authorship", @@ -9120,14 +9371,12 @@ dependencies = [ [[package]] name = "sc-executor" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "lazy_static", - "libsecp256k1", - "log", - "lru 0.6.6", + "lru 0.7.5", "parity-scale-codec", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "sc-executor-common", "sc-executor-wasmi", "sc-executor-wasmtime", @@ -9142,19 +9391,20 @@ dependencies = [ "sp-trie", "sp-version", "sp-wasm-interface", + "tracing", "wasmi", ] [[package]] name = "sc-executor-common" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "environmental", "parity-scale-codec", "sc-allocator", - "sp-core", "sp-maybe-compressed-blob", + "sp-sandbox", "sp-serializer", "sp-wasm-interface", "thiserror", @@ -9165,15 +9415,14 @@ dependencies = [ [[package]] name = "sc-executor-wasmi" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "log", "parity-scale-codec", "sc-allocator", "sc-executor-common", - "scoped-tls", - "sp-core", "sp-runtime-interface", + "sp-sandbox", "sp-wasm-interface", "wasmi", ] @@ -9181,7 +9430,7 @@ dependencies = [ [[package]] name = "sc-executor-wasmtime" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "cfg-if 1.0.0", "libc", @@ -9190,8 +9439,8 @@ dependencies = [ "parity-wasm 0.42.2", "sc-allocator", "sc-executor-common", - "sp-core", "sp-runtime-interface", + "sp-sandbox", "sp-wasm-interface", "wasmtime", ] @@ -9199,17 +9448,19 @@ dependencies = [ [[package]] name = "sc-finality-grandpa" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ + "ahash", "async-trait", "dyn-clone", "finality-grandpa", "fork-tree", "futures 0.3.21", "futures-timer", + "hex", "log", "parity-scale-codec", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "rand 0.8.5", "sc-block-builder", "sc-chain-spec", @@ -9237,14 +9488,11 @@ dependencies = [ [[package]] name = "sc-finality-grandpa-rpc" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "finality-grandpa", "futures 0.3.21", - "jsonrpc-core", - "jsonrpc-core-client", - "jsonrpc-derive", - "jsonrpc-pubsub", + "jsonrpsee", "log", "parity-scale-codec", "sc-client-api", @@ -9261,7 +9509,7 @@ dependencies = [ [[package]] name = "sc-informant" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "ansi_term", "futures 0.3.21", @@ -9278,11 +9526,11 @@ dependencies = [ [[package]] name = "sc-keystore" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "async-trait", "hex", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "serde_json", "sp-application-crypto", "sp-core", @@ -9293,13 +9541,12 @@ dependencies = [ [[package]] name = "sc-network" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ - "async-std", "async-trait", - "asynchronous-codec 0.5.0", + "asynchronous-codec", "bitflags", - "bytes 1.1.0", + "bytes", "cid", "either", "fnv", @@ -9312,16 +9559,19 @@ dependencies = [ "linked-hash-map", "linked_hash_set", "log", - "lru 0.7.3", + "lru 0.7.5", "parity-scale-codec", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "pin-project 1.0.10", - "prost", - "prost-build", + "prost 0.10.4", + "prost-build 0.9.0", "rand 0.7.3", "sc-block-builder", "sc-client-api", "sc-consensus", + "sc-network-common", + "sc-network-light", + "sc-network-sync", "sc-peerset", "sc-utils", "serde", @@ -9335,33 +9585,96 @@ dependencies = [ "sp-runtime", "substrate-prometheus-endpoint", "thiserror", - "unsigned-varint 0.6.0", + "unsigned-varint", "void", "zeroize", ] +[[package]] +name = "sc-network-common" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" +dependencies = [ + "futures 0.3.21", + "libp2p", + "parity-scale-codec", + "prost-build 0.9.0", + "sc-peerset", + "smallvec", +] + [[package]] name = "sc-network-gossip" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ + "ahash", "futures 0.3.21", "futures-timer", "libp2p", "log", - "lru 0.7.3", + "lru 0.7.5", "sc-network", "sp-runtime", "substrate-prometheus-endpoint", "tracing", ] +[[package]] +name = "sc-network-light" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" +dependencies = [ + "futures 0.3.21", + "libp2p", + "log", + "parity-scale-codec", + "prost 0.10.4", + "prost-build 0.9.0", + "sc-client-api", + "sc-network-common", + "sc-peerset", + "sp-blockchain", + "sp-core", + "sp-runtime", + "thiserror", +] + +[[package]] +name = "sc-network-sync" +version = "0.10.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" +dependencies = [ + "bitflags", + "either", + "fork-tree", + "futures 0.3.21", + "libp2p", + "log", + "lru 0.7.5", + "parity-scale-codec", + "prost 0.10.4", + "prost-build 0.9.0", + "sc-client-api", + "sc-consensus", + "sc-network-common", + "sc-peerset", + "smallvec", + "sp-arithmetic", + "sp-blockchain", + "sp-consensus", + "sp-core", + "sp-finality-grandpa", + "sp-runtime", + "thiserror", +] + [[package]] name = "sc-offchain" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ - "bytes 1.1.0", + "bytes", "fnv", "futures 0.3.21", "futures-timer", @@ -9371,7 +9684,7 @@ dependencies = [ "num_cpus", "once_cell", "parity-scale-codec", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "rand 0.7.3", "sc-client-api", "sc-network", @@ -9387,7 +9700,7 @@ dependencies = [ [[package]] name = "sc-peerset" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "futures 0.3.21", "libp2p", @@ -9400,7 +9713,7 @@ dependencies = [ [[package]] name = "sc-proposer-metrics" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "log", "substrate-prometheus-endpoint", @@ -9409,15 +9722,14 @@ dependencies = [ [[package]] name = "sc-rpc" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "futures 0.3.21", "hash-db", - "jsonrpc-core", - "jsonrpc-pubsub", + "jsonrpsee", "log", "parity-scale-codec", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "sc-block-builder", "sc-chain-spec", "sc-client-api", @@ -9440,18 +9752,16 @@ dependencies = [ [[package]] name = "sc-rpc-api" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "futures 0.3.21", - "jsonrpc-core", - "jsonrpc-core-client", - "jsonrpc-derive", - "jsonrpc-pubsub", + "jsonrpsee", "log", "parity-scale-codec", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "sc-chain-spec", "sc-transaction-pool-api", + "scale-info", "serde", "serde_json", "sp-core", @@ -9465,14 +9775,10 @@ dependencies = [ [[package]] name = "sc-rpc-server" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "futures 0.3.21", - "jsonrpc-core", - "jsonrpc-http-server", - "jsonrpc-ipc-server", - "jsonrpc-pubsub", - "jsonrpc-ws-server", + "jsonrpsee", "log", "serde_json", "substrate-prometheus-endpoint", @@ -9482,7 +9788,7 @@ dependencies = [ [[package]] name = "sc-service" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "async-trait", "directories", @@ -9490,12 +9796,11 @@ dependencies = [ "futures 0.3.21", "futures-timer", "hash-db", - "jsonrpc-core", - "jsonrpc-pubsub", + "jsonrpsee", "log", "parity-scale-codec", "parity-util-mem", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "pin-project 1.0.10", "rand 0.7.3", "sc-block-builder", @@ -9507,9 +9812,11 @@ dependencies = [ "sc-informant", "sc-keystore", "sc-network", + "sc-network-common", "sc-offchain", "sc-rpc", "sc-rpc-server", + "sc-sysinfo", "sc-telemetry", "sc-tracing", "sc-transaction-pool", @@ -9546,13 +9853,13 @@ dependencies = [ [[package]] name = "sc-state-db" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "log", "parity-scale-codec", "parity-util-mem", "parity-util-mem-derive", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "sc-client-api", "sp-core", ] @@ -9560,18 +9867,15 @@ dependencies = [ [[package]] name = "sc-sync-state-rpc" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ - "jsonrpc-core", - "jsonrpc-core-client", - "jsonrpc-derive", + "jsonrpsee", "parity-scale-codec", "sc-chain-spec", "sc-client-api", "sc-consensus-babe", "sc-consensus-epochs", "sc-finality-grandpa", - "sc-rpc-api", "serde", "serde_json", "sp-blockchain", @@ -9579,16 +9883,35 @@ dependencies = [ "thiserror", ] +[[package]] +name = "sc-sysinfo" +version = "6.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" +dependencies = [ + "futures 0.3.21", + "libc", + "log", + "rand 0.7.3", + "rand_pcg 0.2.1", + "regex", + "sc-telemetry", + "serde", + "serde_json", + "sp-core", + "sp-io", + "sp-std", +] + [[package]] name = "sc-telemetry" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "chrono", "futures 0.3.21", "libp2p", "log", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "pin-project 1.0.10", "rand 0.7.3", "serde", @@ -9600,7 +9923,7 @@ dependencies = [ [[package]] name = "sc-tracing" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "ansi_term", "atty", @@ -9609,7 +9932,7 @@ dependencies = [ "libc", "log", "once_cell", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "regex", "rustc-hash", "sc-client-api", @@ -9631,9 +9954,9 @@ dependencies = [ [[package]] name = "sc-tracing-proc-macro" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ - "proc-macro-crate 1.1.3", + "proc-macro-crate", "proc-macro2", "quote", "syn", @@ -9642,7 +9965,7 @@ dependencies = [ [[package]] name = "sc-transaction-pool" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "futures 0.3.21", "futures-timer", @@ -9650,7 +9973,7 @@ dependencies = [ "log", "parity-scale-codec", "parity-util-mem", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "retain_mut", "sc-client-api", "sc-transaction-pool-api", @@ -9669,7 +9992,7 @@ dependencies = [ [[package]] name = "sc-transaction-pool-api" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "futures 0.3.21", "log", @@ -9682,20 +10005,21 @@ dependencies = [ [[package]] name = "sc-utils" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "futures 0.3.21", "futures-timer", "lazy_static", - "parking_lot 0.11.2", + "log", + "parking_lot 0.12.0", "prometheus", ] [[package]] name = "scale-info" -version = "1.0.0" +version = "2.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c55b744399c25532d63a0d2789b109df8d46fc93752d46b0782991a931a782f" +checksum = "c46be926081c9f4dd5dd9b6f1d3e3229f2360bc6502dd8836f84a93b7c75e99a" dependencies = [ "bitvec", "cfg-if 1.0.0", @@ -9707,11 +10031,11 @@ dependencies = [ [[package]] name = "scale-info-derive" -version = "1.0.0" +version = "2.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baeb2780690380592f86205aa4ee49815feb2acad8c2f59e6dd207148c3f1fcd" +checksum = "50e334bb10a245e28e5fd755cabcafd96cfcd167c99ae63a46924ca8d8703a3c" dependencies = [ - "proc-macro-crate 1.1.3", + "proc-macro-crate", "proc-macro2", "quote", "syn", @@ -9724,7 +10048,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8f05ba609c234e60bee0d547fe94a4c7e9da733d1c962cf6e59efa4cd9c8bc75" dependencies = [ "lazy_static", - "winapi 0.3.9", + "winapi", ] [[package]] @@ -9745,12 +10069,6 @@ dependencies = [ "zeroize", ] -[[package]] -name = "scoped-tls" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea6a9290e3c9cf0f18145ef7ffa62d68ee0bf5fcd651017e586dc7fd5da448c2" - [[package]] name = "scopeguard" version = "1.1.0" @@ -9759,22 +10077,42 @@ checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd" [[package]] name = "sct" -version = "0.6.1" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b362b83898e0e69f38515b82ee15aa80636befe47c3b6d3d89a911e78fc228ce" +checksum = "d53dcdb7c9f8158937a7981b48accfd39a43af418591a5d008c7b22b5e1b7ca4" dependencies = [ "ring", "untrusted", ] [[package]] -name = "sct" -version = "0.7.0" +name = "sec1" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d53dcdb7c9f8158937a7981b48accfd39a43af418591a5d008c7b22b5e1b7ca4" +checksum = "08da66b8b0965a5555b6bd6639e68ccba85e1e2506f5fbb089e93f8a04e1a2d1" dependencies = [ - "ring", - "untrusted", + "der", + "generic-array 0.14.5", + "subtle", + "zeroize", +] + +[[package]] +name = "secp256k1" +version = "0.21.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c42e6f1735c5f00f51e43e28d6634141f2bcad10931b2609ddd74a86d751260" +dependencies = [ + "secp256k1-sys", +] + +[[package]] +name = "secp256k1-sys" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "957da2573cde917463ece3570eab4a0b3f19de6f1646cde62e6fd3868f566036" +dependencies = [ + "cc", ] [[package]] @@ -9815,7 +10153,7 @@ version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7a3186ec9e65071a2095434b1f5bb24838d4e8e130f584c790f6033c79943537" dependencies = [ - "semver-parser 0.7.0", + "semver-parser", ] [[package]] @@ -9824,23 +10162,14 @@ version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" dependencies = [ - "semver-parser 0.7.0", -] - -[[package]] -name = "semver" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f301af10236f6df4160f7c3f04eec6dbc70ace82d23326abad5edee88801c6b6" -dependencies = [ - "semver-parser 0.10.2", + "semver-parser", ] [[package]] name = "semver" -version = "1.0.6" +version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4a3381e03edd24287172047536f20cabde766e2cd3e65e6b00fb3af51c4f38d" +checksum = "d65bd28f48be7196d222d95b9243287f48d27aca604e08497513019ff0502cc4" dependencies = [ "serde", ] @@ -9851,29 +10180,20 @@ version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" -[[package]] -name = "semver-parser" -version = "0.10.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00b0bef5b7f9e0df16536d3961cfb6e84331c065b4066afb39768d0e319411f7" -dependencies = [ - "pest", -] - [[package]] name = "serde" -version = "1.0.136" +version = "1.0.137" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce31e24b01e1e524df96f1c2fdd054405f8d7376249a5110886fb4b658484789" +checksum = "61ea8d54c77f8315140a05f4c7237403bf38b72704d031543aa1d16abbf517d1" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.136" +version = "1.0.137" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08597e7152fcd306f41838ed3e37be9eaeed2b61c42e2117266a554fab4662f9" +checksum = "1f26faba0c3959972377d3b2d306ee9f71faee9714294e41bb777f83f88578be" dependencies = [ "proc-macro2", "quote", @@ -9882,15 +10202,24 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.79" +version = "1.0.81" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e8d9fa5c3b304765ce1fd9c4c8a3de2c8db365a5b91be52f186efc675681d95" +checksum = "9b7ce2b32a1aed03c558dc61a5cd328f15aff2dbc17daad8fb8af04d2100e15c" dependencies = [ "itoa 1.0.1", "ryu", "serde", ] +[[package]] +name = "serde_nanos" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e44969a61f5d316be20a42ff97816efb3b407a924d06824c3d8a49fa8450de0e" +dependencies = [ + "serde", +] + [[package]] name = "sha-1" version = "0.8.2" @@ -9911,7 +10240,7 @@ checksum = "99cd6713db3cf16b6c84e06321e049a9b9f699826e16096d23bbcc44d15d51a6" dependencies = [ "block-buffer 0.9.0", "cfg-if 1.0.0", - "cpufeatures 0.2.2", + "cpufeatures", "digest 0.9.0", "opaque-debug 0.3.0", ] @@ -9936,7 +10265,7 @@ checksum = "4d58a1e1bf39749807d89cf2d98ac2dfa0ff1cb3faa38fbb64dd88ac8013d800" dependencies = [ "block-buffer 0.9.0", "cfg-if 1.0.0", - "cpufeatures 0.2.2", + "cpufeatures", "digest 0.9.0", "opaque-debug 0.3.0", ] @@ -9948,7 +10277,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "55deaec60f81eefe3cce0dc50bda92d6d8e88f2a27df7c5033b42afeb1ed2676" dependencies = [ "cfg-if 1.0.0", - "cpufeatures 0.2.2", + "cpufeatures", "digest 0.10.3", ] @@ -9964,6 +10293,16 @@ dependencies = [ "opaque-debug 0.3.0", ] +[[package]] +name = "sha3" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "881bf8156c87b6301fc5ca6b27f11eeb2761224c7081e69b409d5a1951a70c86" +dependencies = [ + "digest 0.10.3", + "keccak", +] + [[package]] name = "sharded-slab" version = "0.1.4" @@ -10000,9 +10339,13 @@ dependencies = [ [[package]] name = "signature" -version = "1.5.0" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f054c6c1a6e95179d6f23ed974060dcefb2d9388bb7256900badad682c499de4" +checksum = "02658e48d89f2bec991f9a78e69cfa4c316f8d6a6c4ec12fae1aeb263d486788" +dependencies = [ + "digest 0.9.0", + "rand_core 0.6.3", +] [[package]] name = "simba" @@ -10018,14 +10361,14 @@ dependencies = [ [[package]] name = "slab" -version = "0.4.5" +version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9def91fd1e018fe007022791f865d0ccc9b3a0d5001e01aabb8b40e46000afb5" +checksum = "eb703cfe953bccee95685111adeedb76fabe4e97549a58d16f03ea7b9367bb32" [[package]] name = "slot-range-helper" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "enumn", "parity-scale-codec", @@ -10057,31 +10400,19 @@ checksum = "45456094d1983e2ee2a18fdfebce3189fa451699d0502cb8e3b49dba5ba41451" [[package]] name = "snow" -version = "0.8.0" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6142f7c25e94f6fd25a32c3348ec230df9109b463f59c8c7acc4bd34936babb7" +checksum = "774d05a3edae07ce6d68ea6984f3c05e9bba8927e3dd591e3b479e5b03213d0d" dependencies = [ "aes-gcm", "blake2", "chacha20poly1305", - "rand 0.8.5", + "curve25519-dalek 4.0.0-pre.1", "rand_core 0.6.3", "ring", - "rustc_version 0.3.3", - "sha2 0.9.9", + "rustc_version 0.4.0", + "sha2 0.10.2", "subtle", - "x25519-dalek", -] - -[[package]] -name = "socket2" -version = "0.3.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "122e570113d28d773067fab24266b66753f6ea915758651696b6e35e49f88d6e" -dependencies = [ - "cfg-if 1.0.0", - "libc", - "winapi 0.3.9", ] [[package]] @@ -10091,7 +10422,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "66d72b759436ae32898a2af0a14218dbf55efde3feeb170eb623637db85ee1e0" dependencies = [ "libc", - "winapi 0.3.9", + "winapi", ] [[package]] @@ -10101,7 +10432,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "41d1c5305e39e09653383c2c7244f2f78b3bcae37cf50c64cb4789c9f5096ec2" dependencies = [ "base64", - "bytes 1.1.0", + "bytes", "flate2", "futures 0.3.21", "httparse", @@ -10113,7 +10444,7 @@ dependencies = [ [[package]] name = "sp-api" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "hash-db", "log", @@ -10130,10 +10461,10 @@ dependencies = [ [[package]] name = "sp-api-proc-macro" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ - "blake2-rfc", - "proc-macro-crate 1.1.3", + "blake2", + "proc-macro-crate", "proc-macro2", "quote", "syn", @@ -10141,8 +10472,8 @@ dependencies = [ [[package]] name = "sp-application-crypto" -version = "5.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +version = "6.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "parity-scale-codec", "scale-info", @@ -10154,8 +10485,8 @@ dependencies = [ [[package]] name = "sp-arithmetic" -version = "4.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +version = "5.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "integer-sqrt", "num-traits", @@ -10170,7 +10501,7 @@ dependencies = [ [[package]] name = "sp-authority-discovery" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "parity-scale-codec", "scale-info", @@ -10183,7 +10514,7 @@ dependencies = [ [[package]] name = "sp-authorship" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "async-trait", "parity-scale-codec", @@ -10195,7 +10526,7 @@ dependencies = [ [[package]] name = "sp-block-builder" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "parity-scale-codec", "sp-api", @@ -10207,13 +10538,13 @@ dependencies = [ [[package]] name = "sp-blockchain" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "futures 0.3.21", "log", - "lru 0.7.3", + "lru 0.7.5", "parity-scale-codec", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "sp-api", "sp-consensus", "sp-database", @@ -10225,7 +10556,7 @@ dependencies = [ [[package]] name = "sp-consensus" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "async-trait", "futures 0.3.21", @@ -10244,7 +10575,7 @@ dependencies = [ [[package]] name = "sp-consensus-aura" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "async-trait", "parity-scale-codec", @@ -10262,7 +10593,7 @@ dependencies = [ [[package]] name = "sp-consensus-babe" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "async-trait", "merlin", @@ -10285,21 +10616,24 @@ dependencies = [ [[package]] name = "sp-consensus-slots" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "parity-scale-codec", "scale-info", "serde", "sp-arithmetic", "sp-runtime", + "sp-std", + "sp-timestamp", ] [[package]] name = "sp-consensus-vrf" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "parity-scale-codec", + "scale-info", "schnorrkel", "sp-core", "sp-runtime", @@ -10308,8 +10642,8 @@ dependencies = [ [[package]] name = "sp-core" -version = "5.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +version = "6.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "base58", "bitflags", @@ -10329,15 +10663,15 @@ dependencies = [ "num-traits", "parity-scale-codec", "parity-util-mem", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "primitive-types", "rand 0.7.3", "regex", "scale-info", "schnorrkel", + "secp256k1", "secrecy", "serde", - "sha2 0.10.2", "sp-core-hashing", "sp-debug-derive", "sp-externalities", @@ -10348,8 +10682,6 @@ dependencies = [ "substrate-bip39", "thiserror", "tiny-bip39", - "tiny-keccak", - "twox-hash", "wasmi", "zeroize", ] @@ -10357,20 +10689,21 @@ dependencies = [ [[package]] name = "sp-core-hashing" version = "4.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ - "blake2-rfc", + "blake2", "byteorder", + "digest 0.10.3", "sha2 0.10.2", + "sha3 0.10.1", "sp-std", - "tiny-keccak", "twox-hash", ] [[package]] name = "sp-core-hashing-proc-macro" -version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +version = "5.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "proc-macro2", "quote", @@ -10381,16 +10714,16 @@ dependencies = [ [[package]] name = "sp-database" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "kvdb", - "parking_lot 0.11.2", + "parking_lot 0.12.0", ] [[package]] name = "sp-debug-derive" version = "4.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "proc-macro2", "quote", @@ -10399,8 +10732,8 @@ dependencies = [ [[package]] name = "sp-externalities" -version = "0.11.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +version = "0.12.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "environmental", "parity-scale-codec", @@ -10411,7 +10744,7 @@ dependencies = [ [[package]] name = "sp-finality-grandpa" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "finality-grandpa", "log", @@ -10429,7 +10762,7 @@ dependencies = [ [[package]] name = "sp-inherents" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "async-trait", "impl-trait-for-tuples", @@ -10442,15 +10775,16 @@ dependencies = [ [[package]] name = "sp-io" -version = "5.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +version = "6.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "futures 0.3.21", "hash-db", "libsecp256k1", "log", "parity-scale-codec", - "parking_lot 0.11.2", + "parking_lot 0.12.0", + "secp256k1", "sp-core", "sp-externalities", "sp-keystore", @@ -10466,25 +10800,25 @@ dependencies = [ [[package]] name = "sp-keyring" -version = "5.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +version = "6.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "lazy_static", "sp-core", "sp-runtime", - "strum", + "strum 0.23.0", ] [[package]] name = "sp-keystore" -version = "0.11.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +version = "0.12.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "async-trait", "futures 0.3.21", "merlin", "parity-scale-codec", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "schnorrkel", "serde", "sp-core", @@ -10495,42 +10829,45 @@ dependencies = [ [[package]] name = "sp-maybe-compressed-blob" version = "4.1.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "thiserror", "zstd", ] [[package]] -name = "sp-npos-elections" +name = "sp-mmr-primitives" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ + "log", "parity-scale-codec", - "scale-info", "serde", - "sp-arithmetic", + "sp-api", "sp-core", - "sp-npos-elections-solution-type", + "sp-debug-derive", "sp-runtime", "sp-std", ] [[package]] -name = "sp-npos-elections-solution-type" +name = "sp-npos-elections" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ - "proc-macro-crate 1.1.3", - "proc-macro2", - "quote", - "syn", + "parity-scale-codec", + "scale-info", + "serde", + "sp-arithmetic", + "sp-core", + "sp-runtime", + "sp-std", ] [[package]] name = "sp-offchain" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "sp-api", "sp-core", @@ -10540,7 +10877,7 @@ dependencies = [ [[package]] name = "sp-panic-handler" version = "4.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "backtrace", "lazy_static", @@ -10549,8 +10886,8 @@ dependencies = [ [[package]] name = "sp-rpc" -version = "5.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +version = "6.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "rustc-hash", "serde", @@ -10559,8 +10896,8 @@ dependencies = [ [[package]] name = "sp-runtime" -version = "5.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +version = "6.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "either", "hash256-std-hasher", @@ -10581,8 +10918,8 @@ dependencies = [ [[package]] name = "sp-runtime-interface" -version = "5.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +version = "6.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "impl-trait-for-tuples", "parity-scale-codec", @@ -10598,11 +10935,11 @@ dependencies = [ [[package]] name = "sp-runtime-interface-proc-macro" -version = "4.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +version = "5.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "Inflector", - "proc-macro-crate 1.1.3", + "proc-macro-crate", "proc-macro2", "quote", "syn", @@ -10611,7 +10948,7 @@ dependencies = [ [[package]] name = "sp-sandbox" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "log", "parity-scale-codec", @@ -10625,7 +10962,7 @@ dependencies = [ [[package]] name = "sp-serializer" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "serde", "serde_json", @@ -10634,7 +10971,7 @@ dependencies = [ [[package]] name = "sp-session" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "parity-scale-codec", "scale-info", @@ -10648,7 +10985,7 @@ dependencies = [ [[package]] name = "sp-staking" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "parity-scale-codec", "scale-info", @@ -10658,14 +10995,14 @@ dependencies = [ [[package]] name = "sp-state-machine" -version = "0.11.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +version = "0.12.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "hash-db", "log", "num-traits", "parity-scale-codec", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "rand 0.7.3", "smallvec", "sp-core", @@ -10675,19 +11012,18 @@ dependencies = [ "sp-trie", "thiserror", "tracing", - "trie-db", "trie-root", ] [[package]] name = "sp-std" version = "4.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" [[package]] name = "sp-storage" -version = "5.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +version = "6.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "impl-serde", "parity-scale-codec", @@ -10700,7 +11036,7 @@ dependencies = [ [[package]] name = "sp-tasks" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "log", "sp-core", @@ -10713,7 +11049,7 @@ dependencies = [ [[package]] name = "sp-timestamp" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "async-trait", "futures-timer", @@ -10728,8 +11064,8 @@ dependencies = [ [[package]] name = "sp-tracing" -version = "4.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +version = "5.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "parity-scale-codec", "sp-std", @@ -10741,7 +11077,7 @@ dependencies = [ [[package]] name = "sp-transaction-pool" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "sp-api", "sp-runtime", @@ -10750,7 +11086,7 @@ dependencies = [ [[package]] name = "sp-transaction-storage-proof" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "async-trait", "log", @@ -10765,8 +11101,8 @@ dependencies = [ [[package]] name = "sp-trie" -version = "5.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +version = "6.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "hash-db", "memory-db", @@ -10774,14 +11110,15 @@ dependencies = [ "scale-info", "sp-core", "sp-std", + "thiserror", "trie-db", "trie-root", ] [[package]] name = "sp-version" -version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +version = "5.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "impl-serde", "parity-scale-codec", @@ -10798,7 +11135,7 @@ dependencies = [ [[package]] name = "sp-version-proc-macro" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "parity-scale-codec", "proc-macro2", @@ -10808,8 +11145,8 @@ dependencies = [ [[package]] name = "sp-wasm-interface" -version = "5.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +version = "6.0.0" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "impl-trait-for-tuples", "log", @@ -10827,7 +11164,7 @@ checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d" [[package]] name = "spiritnet-runtime" -version = "1.6.2" +version = "1.7.0" dependencies = [ "attestation", "ctype", @@ -10847,7 +11184,6 @@ dependencies = [ "frame-system-rpc-runtime-api", "frame-try-runtime", "hex-literal", - "kilt-launch", "kilt-support", "log", "pallet-aura", @@ -10865,6 +11201,7 @@ dependencies = [ "pallet-scheduler", "pallet-session", "pallet-timestamp", + "pallet-tips", "pallet-transaction-payment", "pallet-transaction-payment-rpc-runtime-api", "pallet-treasury", @@ -10902,9 +11239,9 @@ dependencies = [ [[package]] name = "ss58-registry" -version = "1.17.0" +version = "1.22.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b84a70894df7a73666e0694f44b41a9571625e9546fb58a0818a565d2c7e084" +checksum = "5d804c8d48aeab838be31570866fce1130d275b563d49af08b4927a0bd561e7c" dependencies = [ "Inflector", "num-format", @@ -10977,7 +11314,16 @@ version = "0.23.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cae14b91c7d11c9a851d3fbc80a963198998c2a64eec840477fa92d8ce9b70bb" dependencies = [ - "strum_macros", + "strum_macros 0.23.1", +] + +[[package]] +name = "strum" +version = "0.24.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e96acfc1b70604b8b2f1ffa4c57e59176c7dbb05d556c71ecd2f5498a1dee7f8" +dependencies = [ + "strum_macros 0.24.0", ] [[package]] @@ -10993,6 +11339,19 @@ dependencies = [ "syn", ] +[[package]] +name = "strum_macros" +version = "0.24.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6878079b17446e4d3eba6192bb0a2950d5b14f0ed8424b852310e5a94345d0ef" +dependencies = [ + "heck 0.4.0", + "proc-macro2", + "quote", + "rustversion", + "syn", +] + [[package]] name = "substrate-bip39" version = "0.4.4" @@ -11009,7 +11368,7 @@ dependencies = [ [[package]] name = "substrate-build-script-utils" version = "3.0.0" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "platforms", ] @@ -11017,18 +11376,17 @@ dependencies = [ [[package]] name = "substrate-frame-rpc-system" version = "4.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "frame-system-rpc-runtime-api", "futures 0.3.21", - "jsonrpc-core", - "jsonrpc-core-client", - "jsonrpc-derive", + "jsonrpsee", "log", "parity-scale-codec", "sc-client-api", "sc-rpc-api", "sc-transaction-pool-api", + "serde_json", "sp-api", "sp-block-builder", "sp-blockchain", @@ -11039,9 +11397,8 @@ dependencies = [ [[package]] name = "substrate-prometheus-endpoint" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ - "async-std", "futures-util", "hyper", "log", @@ -11050,28 +11407,43 @@ dependencies = [ "tokio", ] +[[package]] +name = "substrate-state-trie-migration-rpc" +version = "4.0.0-dev" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" +dependencies = [ + "jsonrpsee", + "log", + "parity-scale-codec", + "sc-client-api", + "sc-rpc-api", + "scale-info", + "serde", + "sp-core", + "sp-io", + "sp-runtime", + "sp-state-machine", + "sp-std", + "sp-trie", + "trie-db", +] + [[package]] name = "substrate-wasm-builder" version = "5.0.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "ansi_term", "build-helper", "cargo_metadata", "sp-maybe-compressed-blob", - "strum", + "strum 0.23.0", "tempfile", "toml", "walkdir", "wasm-gc-api", ] -[[package]] -name = "substrate-wasm-builder-runner" -version = "3.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "316626afcac0219c95116e6a2518e622484c2814182bd225fbf4da4f67e27e8f" - [[package]] name = "subtle" version = "2.4.1" @@ -11080,13 +11452,13 @@ checksum = "6bdef32e8150c2a081110b42772ffe7d7c9032b606bc226c8260fd97e0976601" [[package]] name = "syn" -version = "1.0.89" +version = "1.0.98" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea297be220d52398dcc07ce15a209fce436d361735ac1db700cab3b6cdfb9f54" +checksum = "c50aef8a904de4c23c788f104b7dddc7d6f79c647c7c8ce4cc8f73eb0ca773dd" dependencies = [ "proc-macro2", "quote", - "unicode-xid", + "unicode-ident", ] [[package]] @@ -11101,6 +11473,27 @@ dependencies = [ "unicode-xid", ] +[[package]] +name = "system-configuration" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d75182f12f490e953596550b65ee31bda7c8e043d9386174b353bda50838c3fd" +dependencies = [ + "bitflags", + "core-foundation", + "system-configuration-sys", +] + +[[package]] +name = "system-configuration-sys" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a75fb188eb626b924683e3b95e3a48e63551fcfb51949de2f06a9d91dbee93c9" +dependencies = [ + "core-foundation-sys", + "libc", +] + [[package]] name = "tap" version = "1.0.1" @@ -11122,9 +11515,9 @@ dependencies = [ "cfg-if 1.0.0", "fastrand", "libc", - "redox_syscall 0.2.11", + "redox_syscall", "remove_dir_all", - "winapi 0.3.9", + "winapi", ] [[package]] @@ -11144,24 +11537,30 @@ checksum = "b1141d4d61095b28419e22cb0bbf02755f5e54e0526f97f1e3d1d160e60885fb" [[package]] name = "thiserror" -version = "1.0.30" +version = "1.0.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "854babe52e4df1653706b98fcfc05843010039b406875930a70e4d9644e5c417" +checksum = "bd829fe32373d27f76265620b5309d0340cb8550f523c1dda251d6298069069a" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.30" +version = "1.0.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa32fd3f627f367fe16f893e2597ae3c05020f8bba2666a4e6ea73d377e5714b" +checksum = "0396bc89e626244658bef819e22d0cc459e795a5ebe878e6ec336d1674a8d79a" dependencies = [ "proc-macro2", "quote", "syn", ] +[[package]] +name = "thousands" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3bf63baf9f5039dadc247375c29eb13706706cfde997d0330d05aa63a77d8820" + [[package]] name = "thread_local" version = "1.1.4" @@ -11193,6 +11592,17 @@ dependencies = [ "threadpool", ] +[[package]] +name = "tikv-jemalloc-sys" +version = "0.4.3+5.2.1-patched.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1792ccb507d955b46af42c123ea8863668fae24d03721e40cad6a41773dbb49" +dependencies = [ + "cc", + "fs_extra", + "libc", +] + [[package]] name = "time" version = "0.1.44" @@ -11201,7 +11611,7 @@ checksum = "6db9e6914ab8b1ae1c260a4ae7a49b6c5611b40328a735b21862567685e73255" dependencies = [ "libc", "wasi 0.10.0+wasi-snapshot-preview1", - "winapi 0.3.9", + "winapi", ] [[package]] @@ -11223,15 +11633,6 @@ dependencies = [ "zeroize", ] -[[package]] -name = "tiny-keccak" -version = "2.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c9d3793400a45f954c52e73d068316d76b6f4e36977e3fcebb13a2721e80237" -dependencies = [ - "crunchy", -] - [[package]] name = "tinyvec" version = "1.5.1" @@ -11253,17 +11654,18 @@ version = "1.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2af73ac49756f3f7c01172e34a23e5d0216f6c32333757c2c61feb2bbff5a5ee" dependencies = [ - "bytes 1.1.0", + "bytes", "libc", "memchr", - "mio 0.8.2", + "mio", "num_cpus", "once_cell", + "parking_lot 0.12.0", "pin-project-lite 0.2.8", "signal-hook-registry", - "socket2 0.4.4", + "socket2", "tokio-macros", - "winapi 0.3.9", + "winapi", ] [[package]] @@ -11277,59 +11679,37 @@ dependencies = [ "syn", ] -[[package]] -name = "tokio-rustls" -version = "0.22.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc6844de72e57df1980054b38be3a9f4702aba4858be64dd700181a8a6d0e1b6" -dependencies = [ - "rustls 0.19.1", - "tokio", - "webpki 0.21.4", -] - [[package]] name = "tokio-rustls" version = "0.23.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4151fda0cf2798550ad0b34bcfc9b9dcc2a9d2471c895c68f3a8818e54f2389e" dependencies = [ - "rustls 0.20.4", - "tokio", - "webpki 0.22.0", -] - -[[package]] -name = "tokio-stream" -version = "0.1.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50145484efff8818b5ccd256697f36863f587da82cf8b409c53adf1e840798e3" -dependencies = [ - "futures-core", - "pin-project-lite 0.2.8", + "rustls", "tokio", + "webpki", ] [[package]] name = "tokio-util" -version = "0.6.9" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e99e1983e5d376cd8eb4b66604d2e99e79f5bd988c3055891dcd8c9e2604cc0" +checksum = "0edfdeb067411dba2044da6d1cb2df793dd35add7888d73c16e3381ded401764" dependencies = [ - "bytes 1.1.0", + "bytes", "futures-core", "futures-io", "futures-sink", - "log", "pin-project-lite 0.2.8", "tokio", + "tracing", ] [[package]] name = "toml" -version = "0.5.8" +version = "0.5.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a31142970826733df8241ef35dc040ef98c679ab14d7c3e54d827099b3acecaa" +checksum = "8d82e1a7758622a465f8cee077614c73484dac5b836c02ff6a40d5d1010324d7" dependencies = [ "serde", ] @@ -11342,9 +11722,9 @@ checksum = "360dfd1d6d30e05fda32ace2c8c70e9c0a9da713275777f5a4dbb8a1893930c6" [[package]] name = "tracing" -version = "0.1.32" +version = "0.1.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a1bdf54a7c28a2bbf701e1d2233f6c77f473486b94bee4f9678da5a148dca7f" +checksum = "5d0ecdcb44a79f0fe9844f0c4f33a342cbcbb5117de8001e6ba0dc2351327d09" dependencies = [ "cfg-if 1.0.0", "pin-project-lite 0.2.8", @@ -11365,9 +11745,9 @@ dependencies = [ [[package]] name = "tracing-core" -version = "0.1.23" +version = "0.1.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa31669fa42c09c34d94d8165dd2012e8ff3c66aca50f3bb226b68f216f2706c" +checksum = "f54c8ca710e81886d498c2fd3331b56c93aa248d49de2222ad2742247c60072f" dependencies = [ "lazy_static", "valuable", @@ -11383,14 +11763,39 @@ dependencies = [ "tracing", ] +[[package]] +name = "tracing-gum" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" +dependencies = [ + "polkadot-node-jaeger", + "polkadot-primitives", + "tracing", + "tracing-gum-proc-macro", +] + +[[package]] +name = "tracing-gum-proc-macro" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" +dependencies = [ + "expander 0.0.6", + "proc-macro-crate", + "proc-macro2", + "quote", + "syn", +] + [[package]] name = "tracing-log" -version = "0.1.2" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a6923477a48e41c1951f1999ef8bb5a3023eb723ceadafe78ffb65dc366761e3" +checksum = "78ddad33d2d10b1ed7eb9d1f518a5674713876e97e5bb9b7345a7984fbb4f922" dependencies = [ + "ahash", "lazy_static", "log", + "lru 0.7.5", "tracing-core", ] @@ -11451,9 +11856,9 @@ dependencies = [ [[package]] name = "trust-dns-proto" -version = "0.20.4" +version = "0.21.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca94d4e9feb6a181c690c4040d7a24ef34018d8313ac5044a61d21222ae24e31" +checksum = "9c31f240f59877c3d4bb3b3ea0ec5a6a0cff07323580ff8c7a605cd7d08b255d" dependencies = [ "async-trait", "cfg-if 1.0.0", @@ -11462,7 +11867,7 @@ dependencies = [ "futures-channel", "futures-io", "futures-util", - "idna 0.2.3", + "idna", "ipnet", "lazy_static", "log", @@ -11470,14 +11875,14 @@ dependencies = [ "smallvec", "thiserror", "tinyvec", - "url 2.2.2", + "url", ] [[package]] name = "trust-dns-resolver" -version = "0.20.4" +version = "0.21.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ecae383baad9995efaa34ce8e57d12c3f305e545887472a492b838f4b5cfb77a" +checksum = "e4ba72c2ea84515690c9fcef4c6c660bb9df3036ed1051686de84605b74fd558" dependencies = [ "cfg-if 1.0.0", "futures-util", @@ -11485,7 +11890,7 @@ dependencies = [ "lazy_static", "log", "lru-cache", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "resolv-conf", "smallvec", "thiserror", @@ -11501,10 +11906,10 @@ checksum = "59547bce71d9c38b83d9c0e92b6066c4253371f15005def0c30d9657f50c7642" [[package]] name = "try-runtime-cli" version = "0.10.0-dev" -source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.17#22d40c761a985482f93bbbea5ba4199bdba74f8e" +source = "git+https://github.com/paritytech/substrate?branch=polkadot-v0.9.24#814752f60ab8cce7e2ece3ce0c1b10799b4eab28" dependencies = [ "clap", - "jsonrpsee 0.4.1", + "jsonrpsee", "log", "parity-scale-codec", "remote-externalities", @@ -11536,6 +11941,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4ee73e6e4924fe940354b8d4d98cad5231175d615cd855b758adc658c0aac6a0" dependencies = [ "cfg-if 1.0.0", + "digest 0.10.3", "rand 0.8.5", "static_assertions", ] @@ -11579,6 +11985,12 @@ version = "0.3.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1a01404663e3db436ed2746d9fefef640d868edae3cceb81c3b8d5732fda678f" +[[package]] +name = "unicode-ident" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d22af068fba1eb5edcb4aea19d382b2a3deb4c8f9d475c589b6ada9e0fd493ee" + [[package]] name = "unicode-normalization" version = "0.1.19" @@ -11594,6 +12006,12 @@ version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7e8820f5d777f6224dc4be3632222971ac30164d4a258d595640799554ebfd99" +[[package]] +name = "unicode-width" +version = "0.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3ed742d4ea2bd1176e236172c8429aaf54486e7ac098db29ffe6529e0ce50973" + [[package]] name = "unicode-xid" version = "0.2.2" @@ -11610,32 +12028,14 @@ dependencies = [ "subtle", ] -[[package]] -name = "unsigned-varint" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7fdeedbf205afadfe39ae559b75c3240f24e257d0ca27e85f85cb82aa19ac35" - -[[package]] -name = "unsigned-varint" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35581ff83d4101e58b582e607120c7f5ffb17e632a980b1f38334d76b36908b2" -dependencies = [ - "asynchronous-codec 0.5.0", - "bytes 1.1.0", - "futures-io", - "futures-util", -] - [[package]] name = "unsigned-varint" version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d86a8dc7f45e4c1b0d30e43038c38f274e77af056aa5f74b93c2cf9eb3c1c836" dependencies = [ - "asynchronous-codec 0.6.0", - "bytes 1.1.0", + "asynchronous-codec", + "bytes", "futures-io", "futures-util", ] @@ -11646,17 +12046,6 @@ version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a" -[[package]] -name = "url" -version = "1.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd4e7c0d531266369519a4aa4f399d748bd37043b00bde1e4ff1f60a120b355a" -dependencies = [ - "idna 0.1.5", - "matches", - "percent-encoding 1.0.1", -] - [[package]] name = "url" version = "2.2.2" @@ -11664,9 +12053,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a507c383b2d33b5fc35d1861e77e6b383d158b2da5e14fe51b83dfedf6fd578c" dependencies = [ "form_urlencoded", - "idna 0.2.3", + "idna", "matches", - "percent-encoding 2.1.0", + "percent-encoding", ] [[package]] @@ -11677,9 +12066,9 @@ checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" [[package]] name = "value-bag" -version = "1.0.0-alpha.8" +version = "1.0.0-alpha.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79923f7731dc61ebfba3633098bf3ac533bbd35ccd8c57e7088d9a5eebe0263f" +checksum = "2209b78d1249f7e6f3293657c9779fe31ced465df091bbd433a1cf88e916ec55" dependencies = [ "ctor", "version_check", @@ -11691,17 +12080,6 @@ version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" -[[package]] -name = "vergen" -version = "3.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7141e445af09c8919f1d5f8a20dae0b20c3b57a45dee0d5823c6ed5d237f15a" -dependencies = [ - "bitflags", - "chrono", - "rustc_version 0.4.0", -] - [[package]] name = "version_check" version = "0.9.4" @@ -11727,7 +12105,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "808cf2735cd4b6866113f648b791c6adc5714537bc222d9347bb203386ffda56" dependencies = [ "same-file", - "winapi 0.3.9", + "winapi", "winapi-util", ] @@ -11761,9 +12139,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" [[package]] name = "wasm-bindgen" -version = "0.2.79" +version = "0.2.80" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25f1af7423d8588a3d840681122e72e6a24ddbcb3f0ec385cac0d12d24256c06" +checksum = "27370197c907c55e3f1a9fbe26f44e937fe6451368324e009cba39e139dc08ad" dependencies = [ "cfg-if 1.0.0", "wasm-bindgen-macro", @@ -11771,9 +12149,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-backend" -version = "0.2.79" +version = "0.2.80" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b21c0df030f5a177f3cba22e9bc4322695ec43e7257d865302900290bcdedca" +checksum = "53e04185bfa3a779273da532f5025e33398409573f348985af9a1cbf3774d3f4" dependencies = [ "bumpalo", "lazy_static", @@ -11786,9 +12164,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-futures" -version = "0.4.29" +version = "0.4.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2eb6ec270a31b1d3c7e266b999739109abce8b6c87e4b31fcfcd788b65267395" +checksum = "6f741de44b75e14c35df886aff5f1eb73aa114fa5d4d00dcd37b5e01259bf3b2" dependencies = [ "cfg-if 1.0.0", "js-sys", @@ -11798,9 +12176,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.79" +version = "0.2.80" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f4203d69e40a52ee523b2529a773d5ffc1dc0071801c87b3d270b471b80ed01" +checksum = "17cae7ff784d7e83a2fe7611cfe766ecf034111b49deb850a3dc7699c08251f5" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -11808,9 +12186,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.79" +version = "0.2.80" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfa8a30d46208db204854cadbb5d4baf5fcf8071ba5bf48190c3e59937962ebc" +checksum = "99ec0dc7a4756fffc231aab1b9f2f578d23cd391390ab27f952ae0c9b3ece20b" dependencies = [ "proc-macro2", "quote", @@ -11821,9 +12199,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-shared" -version = "0.2.79" +version = "0.2.80" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d958d035c4438e28c70e4321a2911302f10135ce78a9c7834c0cab4123d06a2" +checksum = "d554b7f530dee5964d9a9468d95c1f8b8acae4f282807e7d27d4b03099a46744" [[package]] name = "wasm-gc-api" @@ -11887,31 +12265,30 @@ dependencies = [ [[package]] name = "wasmparser" -version = "0.81.0" +version = "0.83.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "98930446519f63d00a836efdc22f67766ceae8dbcc1571379f2bcabc6b2b9abc" +checksum = "718ed7c55c2add6548cca3ddd6383d738cd73b892df400e96b9aa876f0141d7a" [[package]] name = "wasmtime" -version = "0.33.1" +version = "0.35.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c9c724da92e39a85d2231d4c2a942c8be295211441dbca581c6c3f3f45a9f00" +checksum = "21ffb4705016d5ca91e18a72ed6822dab50e6d5ddd7045461b17ef19071cdef1" dependencies = [ "anyhow", "backtrace", "bincode", "cfg-if 1.0.0", - "cpp_demangle", "indexmap", "lazy_static", "libc", "log", - "object", + "object 0.27.1", + "once_cell", "paste", "psm", "rayon", "region", - "rustc-demangle", "serde", "target-lexicon", "wasmparser", @@ -11920,14 +12297,14 @@ dependencies = [ "wasmtime-environ", "wasmtime-jit", "wasmtime-runtime", - "winapi 0.3.9", + "winapi", ] [[package]] name = "wasmtime-cache" -version = "0.33.1" +version = "0.35.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da4439d99100298344567c0eb6916ad5864e99e54760b8177c427e529077fb30" +checksum = "85c6ab24291fa7cb3a181f5669f6c72599b7ef781669759b45c7828c5999d0c0" dependencies = [ "anyhow", "base64", @@ -11939,15 +12316,15 @@ dependencies = [ "serde", "sha2 0.9.9", "toml", - "winapi 0.3.9", + "winapi", "zstd", ] [[package]] name = "wasmtime-cranelift" -version = "0.33.1" +version = "0.35.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1762765dd69245f00e5d9783b695039e449a7be0f9c5383e4c78465dd6131aeb" +checksum = "f04c810078a491b7bc4866ebe045f714d2b95e6b539e1f64009a4a7606be11de" dependencies = [ "anyhow", "cranelift-codegen", @@ -11958,7 +12335,7 @@ dependencies = [ "gimli", "log", "more-asserts", - "object", + "object 0.27.1", "target-lexicon", "thiserror", "wasmparser", @@ -11967,9 +12344,9 @@ dependencies = [ [[package]] name = "wasmtime-environ" -version = "0.33.1" +version = "0.35.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4468301d95ec71710bb6261382efe27d1296447711645e3dbabaea6e4de3504" +checksum = "61448266ea164b1ac406363cdcfac81c7c44db4d94c7a81c8620ac6c5c6cdf59" dependencies = [ "anyhow", "cranelift-entity", @@ -11977,7 +12354,7 @@ dependencies = [ "indexmap", "log", "more-asserts", - "object", + "object 0.27.1", "serde", "target-lexicon", "thiserror", @@ -11987,41 +12364,56 @@ dependencies = [ [[package]] name = "wasmtime-jit" -version = "0.33.1" +version = "0.35.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab0ae6e581ff014b470ec35847ea3c0b4c3ace89a55df5a04c802a11f4574e7d" +checksum = "156b4623c6b0d4b8c24afb846c20525922f538ef464cc024abab7ea8de2109a2" dependencies = [ "addr2line", "anyhow", "bincode", "cfg-if 1.0.0", + "cpp_demangle", "gimli", - "object", + "log", + "object 0.27.1", "region", + "rustc-demangle", "rustix", "serde", "target-lexicon", "thiserror", "wasmtime-environ", + "wasmtime-jit-debug", "wasmtime-runtime", - "winapi 0.3.9", + "winapi", +] + +[[package]] +name = "wasmtime-jit-debug" +version = "0.35.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d5dc31f811760a6c76b2672c404866fd19b75e5fb3b0075a3e377a6846490654" +dependencies = [ + "lazy_static", + "object 0.27.1", + "rustix", ] [[package]] name = "wasmtime-runtime" -version = "0.33.1" +version = "0.35.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d9c28877ae37a367cda7b52b8887589816152e95dde9b7c80cc686f52761961" +checksum = "f907beaff69d4d920fa4688411ee4cc75c0f01859e424677f9e426e2ef749864" dependencies = [ "anyhow", "backtrace", "cc", "cfg-if 1.0.0", "indexmap", - "lazy_static", "libc", "log", "mach", + "memfd", "memoffset", "more-asserts", "rand 0.8.5", @@ -12029,14 +12421,15 @@ dependencies = [ "rustix", "thiserror", "wasmtime-environ", - "winapi 0.3.9", + "wasmtime-jit-debug", + "winapi", ] [[package]] name = "wasmtime-types" -version = "0.33.1" +version = "0.35.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "395726e8f5dd8c57cb0db445627b842343f7e29ed7489467fdf7953ed9d3cd4f" +checksum = "514ef0e5fd197b9609dc9eb74beba0c84d5a12b2417cbae55534633329ba4852" dependencies = [ "cranelift-entity", "serde", @@ -12046,24 +12439,14 @@ dependencies = [ [[package]] name = "web-sys" -version = "0.3.56" +version = "0.3.57" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c060b319f29dd25724f09a2ba1418f142f539b2be99fbf4d2d5a8f7330afb8eb" +checksum = "7b17e741662c70c8bd24ac5c5b18de314a2c26c32bf8346ee1e6f53de919c283" dependencies = [ "js-sys", "wasm-bindgen", ] -[[package]] -name = "webpki" -version = "0.21.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8e38c0608262c46d4a56202ebabdeb094cef7e560ca7a226c6bf055188aa4ea" -dependencies = [ - "ring", - "untrusted", -] - [[package]] name = "webpki" version = "0.22.0" @@ -12076,20 +12459,11 @@ dependencies = [ [[package]] name = "webpki-roots" -version = "0.21.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aabe153544e473b775453675851ecc86863d2a81d786d741f6b76778f2a48940" -dependencies = [ - "webpki 0.21.4", -] - -[[package]] -name = "webpki-roots" -version = "0.22.2" +version = "0.22.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "552ceb903e957524388c4d3475725ff2c8b7960922063af6ce53c9a43da07449" +checksum = "44d8de8415c823c8abd270ad483c6feeac771fad964890779f9a8cb24fbbc1bf" dependencies = [ - "webpki 0.22.0", + "webpki", ] [[package]] @@ -12103,8 +12477,8 @@ dependencies = [ [[package]] name = "westend-runtime" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "beefy-primitives", "bitvec", @@ -12126,15 +12500,17 @@ dependencies = [ "pallet-collective", "pallet-democracy", "pallet-election-provider-multi-phase", + "pallet-election-provider-support-benchmarking", "pallet-elections-phragmen", "pallet-grandpa", "pallet-identity", "pallet-im-online", "pallet-indices", "pallet-membership", - "pallet-mmr-primitives", "pallet-multisig", "pallet-nicks", + "pallet-nomination-pools", + "pallet-nomination-pools-benchmarking", "pallet-offences", "pallet-offences-benchmarking", "pallet-preimage", @@ -12172,6 +12548,7 @@ dependencies = [ "sp-core", "sp-inherents", "sp-io", + "sp-mmr-primitives", "sp-npos-elections", "sp-offchain", "sp-runtime", @@ -12189,8 +12566,8 @@ dependencies = [ [[package]] name = "westend-runtime-constants" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "frame-support", "polkadot-primitives", @@ -12212,15 +12589,9 @@ dependencies = [ [[package]] name = "widestring" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c168940144dd21fd8046987c16a46a33d5fc84eec29ef9dcddc2ac9e31526b7c" - -[[package]] -name = "winapi" -version = "0.2.8" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a" +checksum = "17882f045410753661207383517a6f62ec3dbeb6a4ed2acce01f0728238d1983" [[package]] name = "winapi" @@ -12232,12 +12603,6 @@ dependencies = [ "winapi-x86_64-pc-windows-gnu", ] -[[package]] -name = "winapi-build" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc" - [[package]] name = "winapi-i686-pc-windows-gnu" version = "0.4.0" @@ -12250,7 +12615,7 @@ version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178" dependencies = [ - "winapi 0.3.9", + "winapi", ] [[package]] @@ -12259,73 +12624,109 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" +[[package]] +name = "windows" +version = "0.29.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aac7fef12f4b59cd0a29339406cc9203ab44e440ddff6b3f5a41455349fa9cf3" +dependencies = [ + "windows_aarch64_msvc 0.29.0", + "windows_i686_gnu 0.29.0", + "windows_i686_msvc 0.29.0", + "windows_x86_64_gnu 0.29.0", + "windows_x86_64_msvc 0.29.0", +] + [[package]] name = "windows-sys" -version = "0.32.0" +version = "0.34.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3df6e476185f92a12c072be4a189a0210dcdcf512a1891d6dff9edb874deadc6" +checksum = "5acdd78cb4ba54c0045ac14f62d8f94a03d10047904ae2a40afa1e99d8f70825" dependencies = [ - "windows_aarch64_msvc", - "windows_i686_gnu", - "windows_i686_msvc", - "windows_x86_64_gnu", - "windows_x86_64_msvc", + "windows_aarch64_msvc 0.34.0", + "windows_i686_gnu 0.34.0", + "windows_i686_msvc 0.34.0", + "windows_x86_64_gnu 0.34.0", + "windows_x86_64_msvc 0.34.0", ] [[package]] name = "windows_aarch64_msvc" -version = "0.32.0" +version = "0.29.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3d027175d00b01e0cbeb97d6ab6ebe03b12330a35786cbaca5252b1c4bf5d9b" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.34.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8e92753b1c443191654ec532f14c199742964a061be25d77d7a96f09db20bf5" +checksum = "17cffbe740121affb56fad0fc0e421804adf0ae00891205213b5cecd30db881d" [[package]] name = "windows_i686_gnu" -version = "0.32.0" +version = "0.29.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8793f59f7b8e8b01eda1a652b2697d87b93097198ae85f823b969ca5b89bba58" + +[[package]] +name = "windows_i686_gnu" +version = "0.34.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a711c68811799e017b6038e0922cb27a5e2f43a2ddb609fe0b6f3eeda9de615" +checksum = "2564fde759adb79129d9b4f54be42b32c89970c18ebf93124ca8870a498688ed" [[package]] name = "windows_i686_msvc" -version = "0.32.0" +version = "0.29.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8602f6c418b67024be2996c512f5f995de3ba417f4c75af68401ab8756796ae4" + +[[package]] +name = "windows_i686_msvc" +version = "0.34.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "146c11bb1a02615db74680b32a68e2d61f553cc24c4eb5b4ca10311740e44172" +checksum = "9cd9d32ba70453522332c14d38814bceeb747d80b3958676007acadd7e166956" [[package]] name = "windows_x86_64_gnu" -version = "0.32.0" +version = "0.29.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f3d615f419543e0bd7d2b3323af0d86ff19cbc4f816e6453f36a2c2ce889c354" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.34.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c912b12f7454c6620635bbff3450962753834be2a594819bd5e945af18ec64bc" +checksum = "cfce6deae227ee8d356d19effc141a509cc503dfd1f850622ec4b0f84428e1f4" [[package]] name = "windows_x86_64_msvc" -version = "0.32.0" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "504a2476202769977a040c6364301a3f65d0cc9e3fb08600b2bda150a0488316" +checksum = "11d95421d9ed3672c280884da53201a5c46b7b2765ca6faf34b0d71cf34a3561" [[package]] -name = "winreg" -version = "0.6.2" +name = "windows_x86_64_msvc" +version = "0.34.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2986deb581c4fe11b621998a5e53361efe6b48a151178d0cd9eeffa4dc6acc9" -dependencies = [ - "winapi 0.3.9", -] +checksum = "d19538ccc21819d01deaf88d6a17eae6596a12e9aafdbb97916fb49896d89de9" [[package]] -name = "ws2_32-sys" -version = "0.2.1" +name = "winreg" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d59cefebd0c892fa2dd6de581e937301d8552cb44489cdff035c6187cb63fa5e" +checksum = "0120db82e8a1e0b9fb3345a539c478767c0048d842860994d96113d5b667bd69" dependencies = [ - "winapi 0.2.8", - "winapi-build", + "winapi", ] [[package]] name = "wyz" -version = "0.2.0" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85e60b0d1b5f99db2556934e21937020776a5d31520bf169e851ac44e6420214" +checksum = "30b31594f29d27036c383b53b59ed3476874d518f0efb151b27a4c275141390e" +dependencies = [ + "tap", +] [[package]] name = "x25519-dalek" @@ -12340,8 +12741,8 @@ dependencies = [ [[package]] name = "xcm" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "derivative", "impl-trait-for-tuples", @@ -12353,8 +12754,8 @@ dependencies = [ [[package]] name = "xcm-builder" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "frame-support", "frame-system", @@ -12373,8 +12774,8 @@ dependencies = [ [[package]] name = "xcm-executor" -version = "0.9.17" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +version = "0.9.24" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "frame-benchmarking", "frame-support", @@ -12392,7 +12793,7 @@ dependencies = [ [[package]] name = "xcm-procedural" version = "0.1.0" -source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.17#de0ecd4760b146ecf33f5e867d707d789e21e060" +source = "git+https://github.com/paritytech/polkadot?branch=release-v0.9.24#22836e55d41eef24ed5917fd654ee82a683a7cfe" dependencies = [ "Inflector", "proc-macro2", @@ -12402,23 +12803,23 @@ dependencies = [ [[package]] name = "yamux" -version = "0.9.0" +version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7d9028f208dd5e63c614be69f115c1b53cacc1111437d4c765185856666c107" +checksum = "0c0608f53c1dc0bad505d03a34bbd49fbf2ad7b51eb036123e896365532745a1" dependencies = [ "futures 0.3.21", "log", "nohash-hasher", - "parking_lot 0.11.2", + "parking_lot 0.12.0", "rand 0.8.5", "static_assertions", ] [[package]] name = "zeroize" -version = "1.5.4" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7eb5728b8afd3f280a869ce1d4c554ffaed35f45c231fc41bfbd0381bef50317" +checksum = "d68d9dcec5f9b43a30d38c49f91dfedfaac384cb8f085faca366c26207dd1619" dependencies = [ "zeroize_derive", ] @@ -12437,18 +12838,18 @@ dependencies = [ [[package]] name = "zstd" -version = "0.9.2+zstd.1.5.1" +version = "0.10.2+zstd.1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2390ea1bf6c038c39674f22d95f0564725fc06034a47129179810b2fc58caa54" +checksum = "5f4a6bd64f22b5e3e94b4e238669ff9f10815c27a5180108b849d24174a83847" dependencies = [ "zstd-safe", ] [[package]] name = "zstd-safe" -version = "4.1.3+zstd.1.5.1" +version = "4.1.6+zstd.1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e99d81b99fb3c2c2c794e3fe56c305c63d5173a16a46b5850b07c935ffc7db79" +checksum = "94b61c51bb270702d6167b8ce67340d2754b088d0c091b06e593aa772c3ee9bb" dependencies = [ "libc", "zstd-sys", @@ -12456,9 +12857,9 @@ dependencies = [ [[package]] name = "zstd-sys" -version = "1.6.2+zstd.1.5.1" +version = "1.6.3+zstd.1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2daf2f248d9ea44454bfcb2516534e8b8ad2fc91bf818a1885495fc42bc8ac9f" +checksum = "fc49afa5c8d634e75761feda8c592051e7eeb4683ba827211eb0d731d3402ea8" dependencies = [ "cc", "libc", diff --git a/Dockerfile b/Dockerfile index e88e6fb93..ed2b49810 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,8 +1,9 @@ # this container builds the kilt-parachain binary from source files and the runtime library # pinned the version to avoid build cache invalidation -# c4f0daf3-20220110 -> rust version rustc 1.58.0-nightly (46b8e7488 2021-11-07) -FROM paritytech/ci-linux:c4f0daf3-20220110 as builder +# Corresponds to paritytech/ci-linux:production at the time of this PR +# https://hub.docker.com/layers/ci-linux/paritytech/ci-linux/production/images/sha256-c75cee0971ca54e57a875fac8714eea2db754e621841cde702478783fc28ab90?context=explore +FROM paritytech/ci-linux@sha256:c75cee0971ca54e57a875fac8714eea2db754e621841cde702478783fc28ab90 as builder WORKDIR /build diff --git a/README.md b/README.md index dbc9f1936..6b15195d6 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# KILT mashnet-node · [![tests](https://gitlab.com/kiltprotocol/mashnet-node/badges/develop/pipeline.svg)](https://gitlab.com/kiltprotocol/mashnet-node/-/commits/develop) +# KILT-node · [![tests](https://gitlab.com/kiltprotocol/mashnet-node/badges/develop/pipeline.svg)](https://gitlab.com/kiltprotocol/mashnet-node/-/commits/develop)

diff --git a/dev-specs/kilt-parachain/rococo-v2-relay.json b/dev-specs/kilt-parachain/rococo-v2-relay.json index 03ea0f6d2..ec92e4761 100644 --- a/dev-specs/kilt-parachain/rococo-v2-relay.json +++ b/dev-specs/kilt-parachain/rococo-v2-relay.json @@ -1,6 +1,6 @@ { "name": "Rococo", - "id": "rococo_v2_1", + "id": "rococo_v2_2", "chainType": "Live", "bootNodes": [ "/ip4/34.90.151.124/tcp/30333/p2p/12D3KooWF7BUbG5ErMZ47ZdarRwtpZamgcZqxwpnFzkhjc1spHnP", @@ -27,13 +27,12 @@ "forkBlocks": null, "badBlocks": null, "lightSyncState": null, - "consensusEngine": null, "codeSubstitutes": {}, "genesis": { "raw": { "top": { "0x06de3d8a54d27e44a9d5ce189618f22d4e7b9012096b41c4eb3aaf947f6ea429": "0x0200", - "0x06de3d8a54d27e44a9d5ce189618f22db4b49d95320d9021994c850f25b8e385": "0x000030000080000008000000000010000000100005000000050000000200000002000000000050000000100000e8764817000000040000000400000000000000000000000000000000000000000000000000000000000000000000000800000000200000040000000400000000001000b00400000000000000000000140000000400000004000000000000000000060000006400000002000000c8000000020000001900000000000000020000000200000000c817a804000000000200000005000000", + "0x06de3d8a54d27e44a9d5ce189618f22db4b49d95320d9021994c850f25b8e385": "0x0000300000800000080000000000100000c8000005000000050000000200000002000000000050000000100000e8764817000000040000000400000000000000000000000000000000000000000000000000000000000000000000000800000000200000040000000400000000001000b00400000000000000000000140000000400000004000000000000000000060000006400000002000000c8000000020000001900000000000000020000000200000000c817a804000000000200000005000000", "0x084e7f70a295a190e2e33fd3f8cdfcc24e7b9012096b41c4eb3aaf947f6ea429": "0x0000", "0x08c41974a97dbf15cfbec28365bea2da4e7b9012096b41c4eb3aaf947f6ea429": "0x0000", "0x08c41974a97dbf15cfbec28365bea2da5e0621c4869aa60c02be9adcc98a0d1d": "0x20034f68c5661a41930c82f26a662276bf89f33467e1c850f2fb8ef687fe43d6227603a90c2bb6d3b7000020f6152fe2e5002fa970fd1f42aafb6c8edda8dacc2ea77e039d065fe4f9234f0a4f13cc3ae585f2691e9c25afa469618abb6645111f607a530307d29bbf6a5c4061c2157b44fda33b7bb4ec52a5a0305668c74688cedf288d5802fb0330356e63a35dd930bc74525edf28b3bf5eb44aab9e9e4962c8309aaba6a6020019a8bb188f8145d02fa855e9c36e9914457d37c500e03634b5223aa5702474033f1a6d47fe86f88934e4b83b9fae903b92b5dcf4fec97d5e3e8bf4f39df03685025e84e95ed043e387ddb8668176b42f8e2773ddd84f7f58a6d9bf436a4b527986", @@ -57,16 +56,16 @@ "0x26aa394eea5630e07c48ae0c9558cef78a42f33323cb5ced3b44dd825fda9fcc": "0x4545454545454545454545454545454545454545454545454545454545454545", "0x26aa394eea5630e07c48ae0c9558cef7a44704b568d21667356a5a050c118746b4def25cfda6ef3a00000000": "0x4545454545454545454545454545454545454545454545454545454545454545", "0x26aa394eea5630e07c48ae0c9558cef7a7fd6c28836b9a28522dc924110cf439": "0x01", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9050f9ffb4503e7865bae8a399c89a5da52bc71c1eca5353749542dfdf0af97bf764f9c2f44e860cd485f1cd86400f649": "0x00000000000000000100000000000000000064a7b3b6e00d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da90d10cc4959af6a68eba3bc06d5c7bc28520b48452969f6ddf263b664de0adb0c729d0e0ad3b0e5f3cb636c541bc9022a": "0x0000000001000000010000000000000000407a10f35a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da914076ec446ba6876ba5cb99bdb7129be8062e9c21f1d92926103119f7e8153cebdb1e5ab3e52d6f395be80bb193eab47": "0x0000000001000000010000000000000000407a10f35a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da942cd783ab1dc80a5347fe6c6f20ea02b9ed7705e3c7da027ba0583a22a3212042f7e715d3c168ba14f1424e2bc111d00": "0x00000000000000000100000000000000000064a7b3b6e00d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da945315c068df2baa1c677b9b3e81f7439fa373e25a1c4fe19c7148acde13bc3db1811cf656dc086820f3dda736b9c4a00": "0x0000000001000000010000000000000000407a10f35a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9935ae9d4cb148940af99a366d100d5af02ea6bfa8b23b92fe4b5db1063a1f9475e3acd0ab61e6b4f454ed6ba00b5f864": "0x0000000001000000010000000000000000407a10f35a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da995445d4efb6eae1971fb125f6190c49202a2d8cfcf75dda85fafc04ace3bcb73160034ed1964c43098fb1fe831de1b16": "0x0000000001000000010000000000000000407a10f35a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da99677d775b618280f5c76d192b43ea38c38f3c2f38f6d47f161e98c697bbe3ca0e47c033460afda0dda314ab4222a0404": "0x0000000001000000010000000000000000407a10f35a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9a606acaa4558183a2102457959a213a192ef83665b39d7a565e11bf8d18d41d45a8011601c339e57a8ea88c8ff7bba6f": "0x0000000001000000010000000000000000407a10f35a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9b483908290ae9b936c519917440306ea62475fe5406a7cb6a64c51d0af9d3ab5c2151bcae982fb812f7a76b706914d6a": "0x0000000001000000010000000000000000407a10f35a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7f9cce9c888469bb1a0dceaa129672ef8": "0xd18e18726f636f636f", + "0x26aa394eea5630e07c48ae0c9558cef7f9cce9c888469bb1a0dceaa129672ef8": "0x998f18726f636f636f", "0x2762c81376aaa894b6f64c67e58cc6504e7b9012096b41c4eb3aaf947f6ea429": "0x0000", "0x2b06af9719ac64d755623cda8ddd9b944e7b9012096b41c4eb3aaf947f6ea429": "0x0000", "0x2b06af9719ac64d755623cda8ddd9b949f99a2ce711f3a31b2fc05604c93f179": "0x2086975a37211f8704e947a365b720f7a3e2757988eaa7d0f197e83dba355ef74348a910c0af90898f11bd57d37ceaea53c78994f8e1833a7ade483c9a84bde055ee93e26259decb89afcf17ef2aa0fa2db2e1042fb8f56ecfb24d19eae86298788e95b9b5b4dc69790b67b566567ca8bf8cdef3a3a8bb65393c0d1d1c87cd2d2cd2f9d537ffa59919a4028afdb627c14c14c97a1547e13e8e82203d2049b15b1ac4a980da30939d5bb9e4a734d12bf81259ae286aa21fa4b65405347fa40eff35560d90ca51e9c9481b8a9810060e04d0708d246714960439f804e5c6f40ca65192156f54a114ee191415898f2da013d9db6a5362d6b36330d5fc23e27360ab66", @@ -81,7 +80,7 @@ "0x38653611363acac183fe5c86aa85f77b0f4cf0917788d791142ff6c1f216e7b3": "0x00", "0x38653611363acac183fe5c86aa85f77b4e7b9012096b41c4eb3aaf947f6ea429": "0x0000", "0x38653611363acac183fe5c86aa85f77bfe6d4a58cccf03d052c50ccbfa0311c7": "0x52bc71c1eca5353749542dfdf0af97bf764f9c2f44e860cd485f1cd86400f649", - "0x3a636f6465": "0x52bc537646db8e0528b52ffd00580487047ec945951255200e3b4e07f3f670b382d563d4a35770698664c32f92c020e08410e6edf215b0507003b07b92e4d508eca0677d0088e0899ef9cd53d32c30af5745e40fef53c48a26c272c960bd64c7e8256def6e5bca2da54c2905af135311ea11577a2e7beb1b94de72fff1077cf55ae9218a974998a47f691f46b3b19e17991c27f2c69737da1c27717ab461c7ba487a37b16609d9e53561c6dc102eaf0953c76d591b71fcd5678f49503f3d3d3d75d39d75f348a02f3f8261dff89c7712eccbde17c72725583f8644f16e5f9feb4ecadf5cfed156fb4990e5adf91a88a33dc75d045f7097b4615ff91376b76777d5df6c185f7b2e76d22341b3385ff4c91279e6d71bb253166fcd8f427cf24376baf3db2381c85bf3e557507a6bce6fd94f9460df087677c88a8d8f9b6ecbeefc2ceed27e3e91fb7c32994c86d77ce9aef89af6ec31d16c7ff5fe78043b6fcde7bafbe66b205f1cf7e1d77cf6a4adde9a0fc717d63bffddd5773e0a157017af0943c79d3fc55df2e7b3d006e83b9feb0d3f72f4e9579864e6f332994c363f6432ee7c859cc6eda69e4770bc137ef3437959fbb0f30f8b24b9cc692e3fb312befc2d77c5e73fe22ef9fc3fee32c106266ff1e5a720c7257cbce68d367775d97d782693c96e78853a973ebb0fbfc29d4b9fa3cf04ce3062044c4645dc60f4a25fdd352f7d7a460f97dad04acfd56cf556ffb4247c7cdb9a60c3cc5b7cfba5fbf0ab3f820e4ae7e96ff2b12ecf8c6657bbbca68aa59eb12eeae848182d1981891fe3c7f831bab931c618ad6c49b3650c5ff9fc79c665e9fad7ee3bc2b5f0f5f76547c2cf1ec7f7e3d90c4eef2e7f972c77f9efb84b5e9fcd60e6fa77ee135ff28645aeeb5cffeec1c2f537e8ad1d97c2f1f5e7fa637f18fbe3737f9508fa9d5d2d9ad7a074ba5a7ca838ef1a8cd7d3a2756dae962ec54a845a768346b8fdfeec9d2065b2db257cb2ce5d7cfdb9ee9895f48761df082ef9fac6e7678f045bd973c24fb719e41d8fed6f70ecfa3e1fe93cf1f9393ef2b5c784bde591d097bd15ffc73b89af6f7f8e937afdeb759be3c45fbebfb4447ddb96d0ef36f4effff1ef720745de2de3f8b2bb427f7ef943566c7cfefd213f7b8bbd257fc9e7cf1f9fbd13fcabb0656f491bed8f17793f80e3fbc90f59777e8fbbc29ac45de1d77257d873e7cf3fe2ae78e79a2cd8dcf93aeee3af25773ebbcb6f58e4ceffdce53f1fc75df1e7cfefdcd53f9f77a6adc2b318c7cf3b61cf8dcf31d8976b8f89f4563f7bab6d4e3fdf90285ee9ed31695b827c06f9721c7b246836fcab7d758f7b25bd6543a278511ce5e8b6d9707bd46fb4fb2effe72efaf171dcb57d7c6e03d95becadeedb23a1aff45667c3ee511d4814eff65c3b774c3105f972205fd4c6bafc35fa70f9173b0fb39150e7b20db59f1f9f8bcc7c2518f6d5326f08e5564b342f3f7b4cb8bbfe1ce71d7b9a0d8baef60d3218d6cb1f3dee157f586f7c4e7accabce5b3bde8a4fffbd159f3d26346aa00c5fb844f16acfe007b2b7fcdb63a2d969abb7fc7317df1b5f827cbf461f298bdf6225b13fdce9b9dc4111aa670e1c2bf9782603199767b237225c9ec990743915ef847ffdd92bc03793b5b9a1bcfe3f5efb6be5e8c3ce137eb73ffc6e58afbf7417bf3fbb8b3ebf7497f6fcd55d7cf9390de44bc1be1c1ff938767d5cecda63426d7fdabbc7447bf616c057fbf64aa0afd9903e7dcebd12be4b9f3de92df9ec3199ffe35c771a489fbdf83fce71eca1be8261dd1e059ea0fd66c3a6359455b6e7cb1e93edb90a860ab8da73ec551bd65b5f03439e5ded2918d205a05001282c64616f69ff132b5825283e3d3dbdb9f5f95290af06864bae7caebb0aca3f21c9d5363088de6ac3be5ae2d56cf8c2d59eeb8e827cd9d32c51bcd3b2b74279fb7ffcc725c8deea8f207b2bc4b9fdbce35b4b238eefe71fb26efcf82c77f1c7d771577f7ce93efd8affb98bd7b87973e3b3bbf88638373eef445be52f7750d44d02c73e1fcf6690ddd5e5356d94b8bce29807f01949a539ae113bc96432d98b0cafc9c2cde5cb3b1cf77c3cb97e7657c8df96bdc5cf5fd40d84e3994ce932e518c9c79363103e9e1c7ffcacadb0e82d74b803b52a6345c64a04ab10acc258ad5981b1ea6285669566b5c50a8bd515ab322b2b564cac965835b15262058255989518ab14ac925819b1f262e5c3aa87150f2b1d565d5636acccac7258e1b0ba6185b43afae6e876e874e8bc704e7064b8311c14dc12f7c477c3d76513620b82012a16a8dca09e38236e0b2743ed81d203950777c4c980c2438410be1fbe2fdc182b230fc05032e066e0bce0bae8e6e0bee0aae8e4e0ce74717470d033baa3cea89ba1934196d16a1a8c66ea2ada899598eed236740dcda5935a96854afb8080031800cbaa69c5b4a26235c54a8ad5102b21563514c5565bbe3d3e1f3e2eaa3adaa9eb50d1a15a43a586ca04aa325464a84aa02281aa6935c34a06d51a951a475231a9be5079a1ea42a585ca8c2a0b1516aa2654645659a8945085517d4095840a091513ab2a544ba8c4a88e5029a988500da102a30281ca08d5189510ab33abd94acd4a8bd5172a1d545e5438a86e50d9f0e9f13da9beac46a0eaa2aa41f583ca07550faa225440a89c5005a15a523da18a4205858a8a9643358597514921456585aa8cea0a150faa1d545ba8aa5085407546c585e3a04aa342e35f5460a8c2f0195422508d4025866a0c151755528fb102a33243c54645830a497594d22395474a06293c526f545b5433a86450c9522f48cde12448c1917241ea0903a916a4de48b9a1406a05a936526ca4d448b9e147a4daa4529042c3c5781837225582d40cfa04a930527ba4c048a5499d49cd9a4c2a8b1416a92b5254a4a6e8285277a462908241ca8e541d293a524e29395271a458905a23a582140a5269a4ce489d20c5266586934999205586539122234582d418a9a6d408526278524a04a935293529a6d417292f525da4d0a4b8488520b5454a8b949954994f061f1e292b5255ac824849b1f29272223526d5448a89d4122931a9302910a4944825914222f581d41129a59411a9225244a4864809910aa2d54801910293fa92fa21e543aa87140fa91d523aa4bca47248e190ba21d5256543aa86149754528a861452ea286594da929a2125434ae63d7933f0f6f0f4f0f2f064e0e1e1bdf1eef062e0c1c0b3c3abc37b814787e7e4cde155787278717870782ef025af05de1b9e1b8f059e1bde0abc363c36bc353c35bc369e0abc1434191e0abc345a051e1a8d86778677028f8d67866702af0c8f0caf041e09bc31bc266f049e189e081a0e2f0c6f8da7c603c363f2bef0bcf0baf0d278683c2ebc3312f06619f0b68880099e169e192f0b0f0bef8a9ec22be359e155e14de149e145e141e141784bde13de84e744cbc097f0c87863bc263c26fc09dfc179f096f0c47861dc094f092f090f09ef03de111e85a7e419e115e111e10de109e105e101e181f1be783f783e783d783c7893b783a783e7c5c3c1bbc1ebe2d9e0d5e071e9365e5293c0a3c143f28e3c236f8b3783278327eb9eba19747b747a7479b4146d459be92d3a04dd9bee8e2e069d1d5d1ddd0bba34ddacdb6285ee89ce896e8b2bc1ed21e7681db6319b11874595a3baa96ed4366a9bbac6e702275d82ee610a75435940dda06cf40e9404740c1a065d5387a842502168101408ed0d8d0c6d0b4f4253424b0202b3cd34e357481f640f9207b983d4417a9139481ce40db28bb441d620b9c8244983449247d2486e91334819a42c3ec519c43da21e318f288388477c13ef883188308876c43ae20b221dd129ce11e588714438a20b620be21b1288b826821199a29b28f32797c3e3f0373aa5ce8828827e82499be163f8168e85cac8ad701b7c0aafc1a170293a060d031fe34cf41daee45bbc08d7c17370225c08efc18f1c0807d374f80fee83d3e05efc06efe232a866cec58d1a8fb6a35fa0caa1e7e838ba8dd597d50fab1d9a8d5ea351d069ac647d860fd16cbe19b4099a873ed3b3c6a2b5e82cfa8a2ed354f45243d163ba8966a2b7f40c30acb858a00217984097e180067c792ce0e7050e54996b707db939106c1e8186a26ce0499628402c3c79c2759c7205e8c913143790950d4421bae2820a4f88a4000951997285ca9327425e5f0b8054f8e073c35854b842e5090c42402e043da192e5125d016a01862828fcc7822852ae607100d11517b048917237f8dca0c00a28d00605d8a0c01a145083025852f8e06bc34342403044b10224f4640ad014a1281c0012bae242089f0a5a1022c097822b25b48045a8c9003e140ce04b8381a45cc172e5c914202d5480a400093d211a02228a62c5c877060f59a11285e883ef040c04a44296212a53601002d242c50ad09427402b44191a026ae10910519416a8100d015d896202910b276049e1f5b1a100f8994181ff4cc0424053a200b1f0e40a07b05ca9f264880af895c1538886803640d4048b142c52b040e03f32786808c8ca061f097e7c4d2d3400c8370226021a7aa20210d04b834f8c2958a4004d21f2a9e1211880aa0cc100e42402e00706952c1786212a0a80e1821f1392ef8b9dcf0b7e01e88a8f2f0da36116a460c90294f371c1422eac4045852b58a43ca192e5026d20ca0bc8778655c0824528cb932c5458181202bac2012c4f6000aaf2c137e329405756a03274c5052958b450712108e8099110962c404249be10f0142a4f888086845c9022e4db828780a8105111c2c202910b519eacf0844a961b25cb942b518448e0e0d38259188ac282fdcc30905096274042545c0802127a32a482962c1d7c5930d115a01654d092a5f561c143404458b43c7972058bce7705c3b081276586ac005db9128505294fb2b420c4c29329575cc0b2812b54ac20ba8245ca93a016a654c1585418f251c143445780b4004dc12b5ca132e50a509627404451a6509972258a94225f140c34058b940d3e2858088b0a4340434b3c44e442162217b000e07ba205178686a278f039c15188a24c7972050b952940444354868480b27cf091e12120212c529ec04044c50a950d44b142258a9628ff8de1a12c2e60115ae109075f133c2484856808cb02a208454181f52dc11ca092e50a015511c2428113c02f0c0301b900e4c203529802b4c20a515210c007021eaa220588052949f010d11520212016ae50f90f892b5454c8f98e60295486ae5011227a01e8090c56b26489f24408688a152a2ebcaa48c162e5a5f329710b4fa2104599128508a801abcf880e50b112850a11952b54807c4370152958ac6ce00910910b52805e00f2f105c1425812d031c19182b609e307322e17713c93c96e174521da6463b2d1599a4a135ecccc2f134c30a1bdd696dd2e65b794b29b836eef962d5b76b3b7ec58bb5bcba9b21e69ef2075f3204182c418836c413c480d12c48304a1418204710fb20aa2444977cb2abdca769d9843bdb9a374e2ce80c8ddb156d92550af4c6b751969d3eab4e6b8e71cc971499d12a1954a2fe251e6788caee35e950c19e2317af42df6ca5b55a7b5baf702bc56cff1ea32c7bddd9d6aee5dddab33755aa9009c048d7abbc7d8d56b952eaf55d3340e34e955d3aa4bd77cf394cb76afb27afbf05abba55301c8f6760110f126eedd2e99385719ab4b59a5b7ecda3a5d9b83aed25d0152c75d4aafddb5ab571168f5ea47a86b31015a4b5ffd901ee3cb65777b6d9754d25aef8f57efd65cf32a80eaf207bb3bfbf0ea55ba57d7ea08dded8e00b972a7d59dae2aa5353a95d46b6de9eed4bd46afad7300f7ea3af5477b570f62745f22fd87a6b9d6fda3faca573f7eacdc003fd89dae9478b7bb267da5a416c0bd3a4de2e3f25a2b9218699492ba53a791d61c4ae991e831c6232284406ba5b4820002f5088257774df3aad51e07638d4e80aaa3fd90b2ab6c973e804abbbabb8e0ea56ea40aa0bad722b4ba57cddd5d0092eb2a5dab01601191ed3c5aadb20671af5ebddd7dca15e7392ea50fafb546afedd16394d465ad2e65adee415abeb96bee5dabbb94b5ba94be39adb54a97fe81e6d57d4e29a5bbecae00f85a560f767a03a7eed5dd65f5ea55d369e9de5dbbb52aa5cb76e9d23dc64abd4a6faf52ae5652ca9652caeee83ab4d658ddddbdbdd6ea9a7777b77760b99bbbc17ead3b7277770ed74a84834dca0d6a7373bb4ecbea39d28748979de32ea5ecaed2a3f4eadede5d39b2d7d56aa569ab955c61b132137dac80c58a106f032e0cf10c211a7a5245080b078880aeec08997225ca1320a128595ac022e5086b052a43e0060350952752a858d9800b595a421e04e11086868084b2b48045ca1321202d58a400098150c58524842c5280867c3cd00088288a10d015a0159e44199a22a58316a8105d7141c802990224043445080b101521a200744570a200090d09818a0a404259ac15202d40569ebc10a585272b5ca1b2c20a58ac10f9010434f4a4052c53ae4411b23fa650b11245cb93a10e5e006241e7070b4354ae5051a1c58214a2281bf8c0c7506b5a8922058b9556952852a4005579ee05a02957a83cb942250a0b52545001cba7542072e109d1152a42599e4819a2d2c206204c01ea804a0b2d6091d2aa2225ca06ac58c1221480158370050b1522295186ae4411227a4224148568e883ef031587a0029502808004490842434fb010658141484a07a821a2212a2f00710cc2942b4059b244d1d938042c58848670434252399e100f06a02a4f885e00bac2414704b4c2079c5014202b529e00ad1045080bd1d0932956a8b020e509911517a2a8003485e7886b8317b07080888324218080722109e149084055a258d9c09315ae506161280a0bafb5c081962b405132084fae60a1322404a4e5091090900a4f84b010459182c58a95284f885e00d2d1720528e2b0c32084a505a016342d5780628fca0ae709a54816715038162b2a92b1a2582c168b69b1a828168b71ac6883c23114148ec5aa078563b18ec58a24148ec58a8a64518c4928318ec58a2a142e2ad262b1a2220a858b8a66118552d4b108853528b16628451d8bc58a64518412eba2a2227728b12e62281c63281c8bc52294a22e8a1545281c73281c8b3994a28e3594584709a5a88b1a4aac63450e858b1a0a17151515154d28ec508abaa8a82842698034a399b95b188ac20151861b6dd8b2cb9e93be52c667302cbafc1cd4373e83edc56310f8d96bb94b872e5fa442c9d7a48cdda8b171a50d8a4f4f75939bbd526d58df4a11144e57b3f5c368e5b3e784c5c8e1561b6672b11b6a60a85d3980d1ec6a2fdc7885c5f072b50f3b70a58682982d086006171207a5ab737986c30c97f34e038778519906298062cb1b32f91d46b6c10d4af4a024e481d2134c32a22cdcc60d232380195cc8b41cc068f64207aef66166e0365ed4cab88d175b187fec4a11479c40063d64b2d7b43223992ccb8d128cef1e7b1358a9910210cc60cbd3d38b17807363aca71602ce9f77c2f672e33b18f455d1fe831b6ab6bb78ab0b102b11eab961f88bd88def67b6d21a211979c94ffaf1ea8fdf5ddc8573e30f59ade00baddceee2adf83d2b40c148760e5fd85d6efc905770e3c3f8bfc853f462180c618511562cb591c95ef2fbd5a04c36810312337c408b97119291577fd28f171b21f96b7e12025efd124c42c00b4626857e180a91277e37ddf8f2616452982f2dec27f2c49f16462605f96d611f79e24bdbc3916736eb0fb9896340031861e23883093548b072f3f1abc88730b428a288336ca2a8e3c52ffeb0278597c95eddc55d1fb497cb1d44f98128e777d33ae7c7aff3e99c9a049b897bd386cb02fb06f55390ec2bddd7909207d7b2cf53382c5d285c3fef845fcbf83995d7b1929872ef04d96d8764259395f49ccf5e0c6bcbbe8afac9fdac3febcfe7eaa36afdb9fd9c737e90d7e2e5990d7adcaf1ffff29a2cc8b83adeaaf573e8c7eb37875a19ea6b9582938df0b327d9087f155dc4dcf609faaac4e71bb68c8d1f6edffef64e68192edbb065373ec79e7c06b53851312b09a5b441aacb213fdd3046902f990ffa6e6c59192ea8afbf0f4e97487ef71c77e0e3990f6d6ef7db7c0787fafa4b6f017c375b6582a10b351b994f546f103f5deea5d7a47b148ab32eb02e11ebb6fd89be819cd639ea37073b6e1f3f7a4ee477ef5e09db77cf7d83dc6f60f7ee39a9dfdf96d948bfdb6623fddb7360e828fe4d4bbd417106b290a88bb4763749dc89e6c629eedf7e8ead7c3c3ba287ab0aea3bdfce97369c7d20cdf526fef17f625874e54730c7c9445365867ddd6a01122718c44f4f4f27fced6f1b164d500b10262213cd8d20915f22d78957f1f8714e4bc4f1ec883497c8af96be7f23f8d741be0d127197bf68b6c3c1f973926b307e0d72afe47fa069cc6dc3683f651a579b30e8d1f2b81a182f83bcc7d540edb919bd256becb2658a3e38bfff2772138c97d39899999999bd13aa4cc6b141bf9c949dc6461f4b22a9900397addf09b21d97ede7ad0f6eb42c6fb58cd30d179f77c26fa46faa29811ed7bf63f9945e237dfdff02c73e9f7c015c0e4386747fa70585051fbcccd7ea83e3ce22ee9a94be4677a815a2cdcf51dacff5fd3967de40ed7dc75d41fd746947fbeb77508341442e7dae82fe0c86de44fbb019d46cd8cf5f41bed43217711bc6bef1b9083e7b4d62fcc8b5c7a47615806246bea46ce3ceefb9b385c29ccc6482bbe49ddfd383ecce3fe23ef13599eeecb9397446efd923c1dd63e2df9e93f84ead937e1d77cd190f6c7860baf4f9f63f7d0deca71ff60cf6902c77cdff7038d9b147424c76351bc2aef6bec7a51f3d06cce0d2ef27139e2efd1f0f5d76b567975d6a43ed5986dbeff1d9695b82e3fa6b36a471b5e7eb6e1b94af7d47b6a1aa6f7b4ca27ce991a039d1de5909fb732768ef4fc12adafb73b26312b8048d5fb361a3c010f52cb9ef0a86a1f6fcfd1c58859bd0a18f673924716903e87303b667db5ed00b4633c820bb42a81f2aba288bfaa0900379ecf17487b8494c0f355cee878a2e67d95b281bb293cd862f5caa7924a0aea669734e29658cd1fd6a5e13bff4bbafe635e94b637d14c87776ee354159fee935415d6623210acc71429f9f3b0e5f605ba57e10ec86f1d6af97bee697673694b9f28dcc09d6e85bcf18702e7c1608d72dbbe553e1f87efdced27157bcfeecde5c90b8cbb3a43ccc3c58802facfdccac9fc2b9f0c98f938f8382bbc2afa18dbb54376432ae7cf9f79b1f329bab7d12cd15d605b88b0577854996b82b5eed2b20bbda67c07de42b321b4e73359c1b26612571b5d771975f4dd3342787838baa12b48f91cefa917efd19e3ac34462d7de9d3d79abd7eb57f7f9cda2af5b58f0da8d486459776042b18bd4eb04a10ecfaf3ad35deb0e8fa07c5ebef1ac8a9c09cf8fdf11dcce1ea734dbfbf82b4893ffd0afac712fce957fa3f3eeb73737ba1f8da57d049d37e03e76b5a7d2e8244da8daf81a1df383f867d63b5cc45e2ff78fcf855ead3e7a250f74244dae5b627ea2e2a76dd06068d70bbf95cb7b9db73a8fa110cfdd69f8f22617e7cf618507437cb5ca4fe8fd777afc9fc6ae3ffc408f6e34c30f427217611ec267da3b4b108d5750e2f492eade4e046c79fa592cf497faebdef4e81ebe7547ca5bb34eef979436ddf7351acadca83cf467a2ebf5682f6fd5c83affd78837cdb43fd777b4db657f5e53e6fa17efb1a16ddae20cb5bfc1b28414e03b5f40dfba2be412d7d5128e91d632a28de9c26f16ebfd96723fc7d351065abd4dfbe41bed20baa0da8bfd94e355f3ecb13fae2fb37e95bbdc597ab60587f7b1b165dd406860c880dfa6f1d7b281b146ffc1fe76be46a6038bf9f82396d83fa0ae06a3d89e0580c314a7a1881f1841e4d2ff638768e7995f47d97d764e1e6f64df225715727b9fdfd4bdc95bafdef2e5ed334c5eddf719f7ef50d8fdcfece5dfc5282415f15f91fdcb0dfc39eab1571dd69286d7e286d18bbf2c3cd0466e36a368cf60cced7c00910c08c334f2f7e0986b02b43fa568a86b8f5c3d8d59ed900cc040879d6058b4bd4b7da2bdcc60d8a4f4f97da3030fe5811144eaf696521ec6a36941f6e377e709fbd0bb0185e5efc1f5c8f4e46cb5d35f4e01c7745718867c76d557c4e65af7cf63c827d3907eb3bd8dc327c3cc3a18d8bfa4681e1f655b8473dc7691d7b4cb857dad797cf7dbcc7955d0543d4fb730ee69420e58dd77b07fdb25742cbaef75cec2a98925bb2a87e8b0a56f4527df498f8e79480bad506a9ae1622bf6ec3a83ef56cc6edb9dcec661a0c7a685741cee3be4c2693bdb640c9e1e9e9e9e9a57a6e7a73d4a6960aeaa71b26e95f2ae7d92e53ddf7ad20a77123d8b703fd7f22a7aa521ff5d284a210a0a247423f0a85fa1fe7dc5bc0cf652e12d6e726fdb532a9ffe3ed95501ff55c0af4dec17855a011370dd1abc5ef0a427dbd245b9c04800615371c3a0115dc1a3724b2610d96113724126344ea86446ba4c0a988195cef431774f8e27acf5e139408dadc207e7a6ad3fec4e51918a7eb4a97673f34ddd6e5d90fb2eb3d17bb14e83d27bb14c8725c6e7629905f7039da4d8f491f7db18acb3322a4b83dbb3c13a28e1b80cb33218cb8de4bef841abd12a44c76bd9f5e1b7dde73d16bc2695cef3996b10e49851cb8de3be83705b21d9773af09a791c9ae6785fc8582d84926bb443e6eea89b4db3db7f9e69b070a117537f59d5317bf7bae038346b8cc46badfc0b06ff7f43b2122eda69cb40aaedba07e4a814144ae3f17c1a0116eb391ed3b30f4ae0369f73fbe81dd7b60503f995074dd3217d93a9003b7ff893f8e02f96e207fed7790afc7bdd2ece72d7ba56579ab6fac8b3a47ddc0855f3fb3387efeca4a2678c45bd186a7dbd31f7deac76f459f2d7e1256f26c44fbf81bf8390f8ff635fab09c47fbf8ac20377ef8dd6883d20d8fdcf8415849dff853e33bfdf2ac0b0d97e5c9ff71ee55e72d7fedfbdbcb91dfd76f8e7c9e75e17259cd176f2e2b485ecd569eb913d7df20097cb9332e38e29c254494e2b262e71e13febe3ceb52c36579cbbd2079998db0f5bbb1117ff748e81b3f7a0c06f5d36ddb606523fe4358f8789614c60dbbdb6dac84fd2b2b415d9e259db92c6fcdd5e559521a97d53598ba3c4b8ae3b264f4e699f2b8839648149bc48f4f146fb43d86e338f6e2cfd79e9b6055e19bf4e704fc6d5874e3c75ed163122b20df2dace8058bef2fa7a0046145aff60f353b6d7d153ebe9c42bfb4b0d80b894cd00857fb7e4d30dab01d94ff1327c85782fe622f85f8eafff108f265905f4531d6451d6be9446c55a36be8cf3937cbde6acd6a73f216d7bbd39a60c30c67fe87737986c4c4f571d90b1ed48862628c5186316554d23fc618638c3146eda70d8bee6c304afbe31a18fa0f1535894ce273140ce96f5f2ba59a36a79431fa9d1f7a09f4d6ff718ebbf31b0cfbf6f3fcfe9f1844ef66abcc0a86f2878aee7cf69acc6f30a4af3da7811464bedcef5e09f4ab0d2905abcc778f497cf6ba5ee6abad61820d273befe6da2b41fbb66195f8feda5789dab7175f03abcc97cfd1aebdf8ec4de9adda5f545b13c3f1918f67dff6ec3191ded27a228ff65cbffef6f54fa8ffef5fc55ffe8f2771975b8d7dbec8a37db4a1ff7ccec124ded27e823dded25e8247bca5fd06beeff265cf89eacafff1233dee9aaf7d1277f1d5de419eb63ff9de4db06f7bb2fe93f1f8f493d2cacfc867fdda6bbf8151bef0fbdc153e8ef6dab3e6cb0f75aef6fcd5fffa5ab5f13322231fe95f64e6531bd6cb3b9a6c4985f6619d1f7ecc9f3f7f527ebdf5bbf2a70dbfdbcc13b2aeb4fe19452f64fcfb995d3f4820e016df70e5f3835404f3f00db7ebdfecf383f403f3f0f507c22ebede749d3db7fde9dc1fff6e3538de09dde93a2be9cbdfdacb4741caa74f6d0cda4b2abfd66623bb496ba77ed36dae3f6d379a6da6c8e32549cc121825d9f58f2f143401fadaa3a03d7b13c89980f6f5ab8d81be6673fab52f7af12b0785fadbf38bbd201436a6eb0f017e553b4b817e0e0a6dae3face8e5e6fac75eeca590d31685a6ebafb191cf5e0560d47a992e1379fca5ed59e419b262e30bbb4c52f4911f3fb6ecfa4bf9b2bd74d2f5e750883e4cd73f5a66c34d1c2bfa7c91c73fda9c09c4d75eb331c88f2f7e85ff009604616426d07250a146f69ae161b1f832996663f1678869b8a007d9abe53b92f9add4601aec32619bb9fd5c04a5fc68dd701b4e82f1b9f626105f5a8e3c610f04fae511ac91c7ed8a8dafcbdc76a7cb1dc46451c7bca8651582cb4141fbf9452fde09e3d2e5d77e821c79c2d67d42cce5199921da5c9e39c174db899580d0c346f87f5c035fd84e973f8a893e1c86124d32f961548a1f4630fe61f472f9398c49378cb2cbdf4ed1c747d39736642ffe7e137df8c5ef327e8e613bb50450823b52b0a42466a9cc8cdbdcb09d9404a146cc4cf60a9dcd656f93f282046abcc85ea1bb318008a298bd4277f237ed1479f8a50d3fda90e5b66df85d7e85df0d7b2e3fefb0ad12972e7710f3a2e9510e0ddc0051530713102419becbb3233a526cb0d60c8122c8652f60c0031a9aacd123289dc77fbcc9e75d5e13a6cd9597d78489a3635de4b1c3f81079f386125a9ce9728611af90e5ddf0696ff97c70420398113cb1f1061d5b745d86885d6ce182d9110dabcb67e870813c8363f759e18ed9194d6af0e0823338560c9a5db82883c4193a74a0482380030d0b64e0440ac438a1bcb0630b2f948e40edb123af951ddff9adebf3ff789144107eb79ff6db401688b37df85d6a71b6fff12ffab0511b42fe9f95f4d56c6885fe7c8e8235858fd2ff718e3e5fe4e9efffee6aacabcdc69471b5ab698f63432b3b57fbcf5b6dc3be9a0d6b0a1fdf8f09e7c3e12e9f710ac1f52e7b01833237fc9eca0f700dfaf395ffe31c059bbd7ece3bfea2fcf8f4bd9f935d837c390dec2bb9d951d05f7afdeec98f1e93f8ed2d806fbfc6c4bfc3b83f77df1c27f2e3cb96816325f2f939090a050d155df9cc46f8d90b73f8b5e73b5f825a82fae9e6b02da15ef9f25b76d95d5c587f3e3f8babe004290a1f7dfffa3f5edd556d4802df207ae56b76523bc1afbb097edee2d7402df14a1b06d1dba45ea1396d10bd617cf9ec95506fd4126fb438b07ed5c8c3cfb47dc6b501ba2313388e3e1bd4c0e60e31607ce1858bd776c3eff617b96dfdf21775af505dda51511147519c71d4c61c7998a05efa5f0cd27cd1e3e7731a08b2b7eaf7b347427ded7fbc5fbaab7edbe66e8873e933176d7ce00b9821de800107bd540d1d60d280c9417539cd17376e777966c4468b5ea82e87e125cdd5e198575da8d3e26711e13886cfbf761e24490123cc1b4fc860cd1820342a66485d5e33851d01af01f842e4e10702b652e4e1c7017f803d9187df075881c8c3bf025b1679f83fb0c5441e7e15f8451efe149824f2f07b2094c8c3df819d1479f839b097220f3f0a64451efe0dfc893cfc156421f2f053b0bd441e7e0dec3291877f821f79f825b880c8c31fc12c9187dfc10613796691873ff615754c48ac4bcc28966e1897994790611572c34f630188a22666d0a5091a9ae861cc0e1ca4400552743cf00bec38a30b352d5833870c1bac51410e33289434b83c83a206ca69538f94df4a39ce6ab52e39dddadd3abfd6ca812c8eabddadb53eaf716bead6aff26b7db661df9ac2b6a5d65aab93d2add4b234fb4d1cd95de6c28a3ceebccc4519356ef8fd46848e8ece155de66062054f3ae86046a76e474ca08e359eb0c10625a61d7296ca2c9dd9969e402d29018612cc15b9fcf3515f1e92a33a61eb4a295fca97dcec57cbead7614979c79572beb42c6f59cdb2a635c106269d586f8c31727c3f5eb3c4ec86acdbddcf5a62e9f6ebb88f17b9fd04f8dc8e13fc8692d7bce124e4a46f8e7c79e53bd1aeb455a20d825d5ef3461df7c7d9dd9d6e5faeb521684d43c436847417f5341c34ed39fa701a531ca1600c2eca30c3042fedabbb865ced3f19ae365bc2e16ab552fa4d2b4d3d51c7136d4c27546512b71eb82d3208415306872898401a220546c021c699971472e51b31b8f271dcd557f6c7ba3ffee3df653456a060fe1053385a628a37eae8c28c18d61361cc9e18c113652e77990b30d098be5469905d68d8028d3194c8a18a20789ce15d9e91c9e1d6cb5f384151839c9141525d9e8db9a31a69c00460ecd1f4a60468aca1c19839c6a4993744710306627288c11568a00164cd0bea18c3a42185a1c3146beed0a3bbcc459b1c4ee0c636060d6e36864906de841e5183cb68ac88e3cacbb3316948e0f698e59829ba88a2093aa2caa79955926313809f736e11c848e3c51275cc13b283cbb3315dae7779d6c4937c0976b92c50b291febee1e3191361dcb0ebdc1526e95ff38dc8f44f9be3c517645cd6ebf38fde22e06e82f3bfc1151b9f7f3b111c3fea93cf7d46646283b9feb507698da42c6c5d3fe3023d6e3ff3bbc704d5c36744667ba47fc93722136dd89ad6afbdf660dcc5bdd75a7d341b723f9fe3c006d35e36f0fd6528d78bbbe6c79751f26c9e939d8e991a337ff9cfe62436fe32b6f63f8e02ad6421f2967f055f8039128e2b28def22a9c82b7dca26033c0a15631a7ff7b8cbb70bc95d3b689df7e9e4dd1c38ddf65a28f91b7e9c15d7c468da6ebdf5edcd5eed26069d669dcc7a83bd36689ebdf61b80fcfd1e4df43b88bcfacb174fd5b293668c20f4ca0093f44d0841fd2788b6fcbdc45dfbf8ddcf5e39af04393b7f84e6123fe1a68250b0bdb674426f287ece6faa790810ab8ab7fa650016ff91753f0967ff49854e0636282b73c3ee71e93951b0bf096db066351f0967f0fde722f2de6ab9f510a8e24038ec49dc9b8fe0b70577c7f13dc3f0528eef271fda728bdc2ef323333738dadeb3664dd90d58a3cfeb1bfbf3fce1e93951bdfdf5692568b9dd0bcc1a5c592d6880c77adf1fd336a3531c0e2528f8c2b86b8bc268ba43b80cb6bcac07139d5179f719cc7bb33ceed2966237c6d982eba364cd2f717aec57cf43322e3b17738cd08e95fec48c27a7927caf7357ef7e1dc3841661e69e76744a61fe95f64dc1dc89f9f73b06fcbe726e83ea77bfdecb93b806f7f0bc1c98f4bbec8800d15bfc63f217e642b5d327a648dbf599b3132c7888a4fa3d5f91bbfae8ff89aa3fff5434af9e909fc55a8656f4dad190c3b64e6a73582148c1a18d60b8644f3f2db1aeb11c7ece20ffd3fbebfb4b2a54b4677f66ff77757f8a13f3b18dd65c724b8f6ae3d4629bd393bcd6322ade631a91df582b87a4ca4ad5638cd6d1c6ff5642e92819d2c4457c7cace9d478a782b6a4b3e2a65919e97dc69d3ca922b59d1ce3aa79524dd5decb931c98d5c7b4c829848dbee3c99b2c29d4be508b47a8bda1a3442f498c88f1e9369a1847fe573fc69fc0cbb32645df913249a77c677299b672a3e7ffccd686507865692d8d652e10b77ca23b5bbf2fb08ed69fc50d3a8a6f9470ad6f972ce223bb7a736998d843db7ff7dfc0aa43f6c64f5130c39cd5d2d4992b2e1ce4d3d6afb58eb87f298546fb9abde7b09d6f740f69627bf5e69739c782fdfabbf7925c8f76cc8de9a5f457e95b5d62aa5ac7376db9473ca5aa7ac754e59eb9cd3beb7522c6fa524adb5d65a539db752b37a2b35e74c518eab5cad5cad5c4d7d2af5e3475260116fadbeb5e3add51fc135b77aae3b8e391d6fad7efbd45770eb66f53ccff36a579ffeac75ce59e79cb5ce396badf688b7ea2fb995e33e8eebba8eeb5adeaa93ce39279d2c6f558e9bdc9c73cec9f2560d756e7d4a396656a2f57419a3f4d9ac84a5949293924ac94949a5949293925229a5e4a4a494dafa13ecbc559fe3ba5bebfcaf49df246ca47294e3388e9392937272737652565a975cf975f5de5a3dbbab6b8e9bd4566fad3e8ee39ebdf5adde9fae7c80a1154e73e5af74569cea375035e79c73ce39e79c73ce39e79c73ce39e79c73ce39e73ce2adad88b7b657816192bb3de72da59c918b1decd29720d775dd9c5d37e79cb3f3d69529e9cd4ee328aa6e5b45514eeba6275351e5dfaa6b247ca4bc8e436d95aa521bb091eda736bb70e76edf47508e76ec91f07dea25f8791e275573ce39dd63d275eeeaba8edd8773ced949c9b32bad0e8eb7e47f60b873257b4b659f8dc8ef0f7c924e4ae7d3f95528a5747e4829a594524a29a5dc879452cacd4929f721a594727352ca7d4829a5dc9c32a640f99ac764feb42d09beb7a494b4eb0f7cfc534af9777b8e3dcaa9d1e69ad26123db93302df7f1b928e987524a492995927e28a5949452fa9452cb5c3bec2b5fcaf994524a29a594524a29a594524a29a594524a29a594523aa7bcf2e7c67161bdf4b9af5d7d7649ae9a74c9e8f1e9c90de05584fa12f995ff74ebf44022bf235c497f2207d2edfb888f51606825c995bfd5547bde454ea2e6a675ecae50fe7c8d7e389fbdb5e4933f9fbfcaec233e7ef7af3794b26a53466fa6a9f0853b6d282f4b76c90fa76579f9faf48b57dd029a254b96ec44f939d277fae56d9be3a47f7e4bcbde8a369446b07c7e13f633874537daa1b067dc9a5dffb0955e7ec86f426e92366c451bb6fcdb2c2d5d7fa520bed4bff9ed436eda3ef561eb86cea4b221bfb9617423bdc836d107d61c43675d29f2f81e638059297da11473fdb9fb119c38b9745d8c9bcfba977973dd6791c7dfdcb0df70d36d59f72d66f5e1fbf890f5e33f9ce7c83393aebb7fbff96431b42c2929c98b172f9187c7dfdfc180893c3c1e432b451e1effa61b3a5375a62f3a451fd8085edffbc73740806820d34083f79749d127c8c358efdff27f7f96f5ffa2cf517c7a7a7a6de1fec8bf461f385e9fede96f314034f8d88fd7f7df03b12d66658f800459ad7eb5fde6c31e016105b131f8f0f13e1e88e5c8a37ad573f4f9618f82fc96ee8f8eb6700fe45936861f3ffec707b18c638f707e4be73dbf8e8eb670cfaf235892082f0d6c0c9f8da1ebbe7b9cf7c0fef251ebfd0fb0db80ed06049b0dd80d0e155d305fbfd368c32f65c3d60da39bf7f7c0e8868df8b7105fd8b27026b5ac04571c11c40ae8408209098e3b6a88e3e915a31865dc2042864716afe978d80102190db2255e1c79ea536ec1d1163665a0408b17471ed46f3f93a24fc77961dac30c9826253673441f6f6363703768e67879d25d428c7f74d31379fc5136ac9b0d6bb5e1a7d990d513fe0da39b1bdd5c6f20c2e8666e4531e6459b5ce9c1f14e489dee7759f15b97bf7c42daa39e8f3cefb7d4c75adfc6e071efdbc6d9186af792e33a1bc376d4f5972fa82f656223f1f975d43d2c498497cac6c0a56c0c5d6b6fb437d1c7b3479e18ed4de489dfd9a38ec986cfd9236e366dc8daecd1f65be81f751969c3ef86da1b7b547f0bb5316ce9a71719f9fc3aea25b721957df98450efdf417c3c13c3c6c5684d4c62782686cd45b51831d107f6b11f2fbafd6f94c5dabe16034b12e155f7687ac5c07104a79706f6974fbedbb083645874a71da24c46c206f335982fa44ada9b902ab169317e43ca4499a24f8b893cf16bfd3e564899fecaa81265a24adcc60db526ed8dd614c20d3599264693cda5c9662ee1dc50b69949b20dea86d28b2c134a2ff3867116dd443071c6e4e44a322631aef4464cd86f7a5a16d61bd9f484f5c60ee26b20be1673239d451d8b45527e1fe078278c5e6efc242ace64f36517b96a6151367399cac2ead38745f9b0fa9d85b9932f65e9d912bfed61a9c87da8e83d2c765ff402eb2618b7171460aec4ad5cb33028edf4ac7aeea26c9bb96cd6f56c4e4b4e4bdb536fc37dcf2fee4357f2da3ccf0fbfd487fca9eca76c6df23acbe2ece75e36fb55cb6a8afd78515b238f3fbf34ebd1cbe50e62aaa276940838de09dbe9c6a7cfff451fedf959d1673eff471ff9fc1ab8253e3dbd503fc12d5182148401f90ac2827cecc78bbea40fd31ea95fdac3bcc8291f561fa9ebdc667c14901f6d508fd42fd4c38058981192f70a629434c20bc823f52b487c0d2c52bf80e0d896459ef83fe2fbb048fd4259588fcd1279e26f160625f2c4ff2c52bf667c9585f52cf2c44f59a47e550bfb224f7ccfb652e4894f2dacb348fdd22c67db4be4994d5eb4d7bea9b47dd833d9f4dce67be83bbd501f761bedf985b2b11faff921cf361bfbf1922fabcfaf1a29a8815fe4e99f202bf2f44bf0234fe314b5d3264e082f314a22c0cb1f4912893f4278cd47ea970f894b923a1d5e9284b3012f49d2e1205a18fd24113a5e629464e4251f497b4d1c5e924481f092249506bc242948105e924484c54b923e78b985699f2482c64b8cb6d05752cfcb1f29bea4f5784992a77849124ac54b927c7cbc2469c88a9724d9577c7e1fbc242900af6861f39344a0bc2469be9624791b2f490282e225491bbce492240f5ed2c2e22789d0bc24a93a2f49fa222f4962495e92f4d39f9f79895b98fcd88f17a5ae69d4b2e6d4ec172d2c498457fc2dd1d6c8d39f24c20bf623461bfbf14a12e1e5f6635a4b264ec546fa55ac84bf8170bc13ced9f5e7e2f34ddabc5cff70154e30d73f1472f99b7da62cf2f897ef6fb40d06f5f7974f0bbd412dbb41434517001f165d00d8a10fa7d2f5be330b335a6c11022cb6df22a598828a2aac287385134f2c411105195e42e5c37e0b97400b3c40c04b8cb6a85e493d2ffa486178499214c34b92ba257849120e13bc2449a7095e92b4f392ef3fc7f092a4222f696149475ef4b7cc23784952fd002f49fa90e02549ac247849d22bc14b925a2ffafe538997500b9b9686115e9b85c1649aa5618457b5b0a2315cd0f082d130c24b5a180c47582441a1668aa7178c86115ed4c2622c18e20c3062d8f0f03242ea5e5ace7b0f5bbafe4938afaa4d4de753feb3293578d6c33498ffa39b36f8957fb283a7dbc3c8a460bf8387816f9dfe4149e4bf8d9027f2300e5ec8c364ee856e3bef019021df321f8f33f3f1b0249c177d15b771a5208f925d7f2fd73db0b0ed772c0a1d58d88fb5b02ca0fcb7b02662612fc4c22207d65916d6a3c1fc1f16d64db2c8e3bf81fd3eed5316a6637bd63916a9c8ab7e4ffd90674e7508eb85ac7ed3e053ffc559ea614ad7dff3a51f5fbd28b5172116b63dcbb6172016d6321c0b731f168654e4455f6561ed04c595a42c888d5eb849a66d1ae03c90ee351f0f239302f7ddc39aaea39e9b5ddf1ee54eaadf94961c8885698f637d6561fe59589ca52cac9560be542d4c7af961a3527b999a0f0b2393c2f7ab87c1c8a4a07d7d58d291574a6bbafe303229783f635c5958fdcfc63691c7bfb3b0c859989c451e7f9485b9d36661524965e392377109b4c06326ab85192175af94859149a1be7c986c73fd938ebca485552bdbbc6661b229f2f84f0b934b91c7dfb3d1a98d26832eee10838a353234351836946081196168ccbf98028a1dc6d0438897b4d249b659ea59377db27e59d247a63b0ef54648ac577da3ed91be368295b40de2a73b8d6023e02c8241f0e7c0490483e08f02e7100c827f05a7100c823f0567100c82f621b7f1129f649a354ad2f9c220f8ffe0437da47fcd1e765e9bdd129f9e5eda87ada4e4651a25b55e4648495e330706c11f87d66bdec07a553b3ff425faf434831398a1460825698d928ebc8cea2325794d1a18047fa4eed5457e189d5a0e139cc186114c67bc78e93a25c117135c418308e278f18bda2df4e9e9a95a23a49ed7446abde61183e06f84f4af69c42038fd503a5dff298b3ed432f3f46b2cd6fc3e69997bcaae13e122fd3f3e67b6c8a34e12f3f29a3beee0cf61cb80a2cb0febd798a1a2cb4f06647e2f73fb769fbb7836c69314546a63e471b56d8c178097c128a3c418697c5a15a20cda84c7186ab431ba9863285dd5653548483ee18e4e88c345b78d4ffb397ffa7fac36ec098645eed4fec7af16bf214c03c314ae952257fe94b6078c8ffba2056774577471592aeff28c8904475c183a847189fc068d7087fef2b3061cef8471e9f687f5767f7777cf961ddbbbbbbbc1dceeeeeeeeeeeefe69c3d66d567fdd7129b261a242323941bf9091b93897bfe8628236c074a2dae10c1a4c43502f9a4603fda13b628622bc34314412665eda174f332624cd888615cc1146c98915dc8104185fe071a6872dabcb60bc31e6051c9a296090c60b1d8ccca8000c262a7f86d68f098f4c1a1f112c298e86302da9a16969c25ced1b02890c727021461b2d7608f3851a17908182aaf241832fd000411966d81cd185176098524438e08a3261b479c1103150a38b34353481ea81eb60819838dc00f1c41622786969d4b459fae28b17214c517cf98206ae032ff4b81aad94f58588389288020d35721cf1a25e8860e6c50a665e5471b9cb33344fdf131c1ff95c90b74abfff95120c7be23fc003356640e2cb17742019f18aec3139727fdcc1f06f7799018f15b8d1c6071b54f06a2e2ee761c6095a00440cf010428a57dffe3f72bb7fbca867e038fa147141828b193190b003c98a57582f534165c1069a366584c8c30e32748cd0051d5de44129a5348d135c9aba414b1045d0b1041e67c0a00b0474c1460f09b32e9a6acee5591735f4ccd9d5344dd3e69c738ace5b576e956a5f174aa83e4dd3a6a6699aa66d956a9a4635cd4ebbf33b426ef83d959219a30cda42b4e088882a7ac002cd1d6f0e30eba286d9184d730788a21cc258430645849185408f2569e8a0daefa4510335c99c41d3943153976769bef826d52aa534cdecd297742705261f9767699cf00f701c7da8ac7182861a724862881d0cb042cee5355100117db8052598011023909541471a252c3cd550f3054b9b6c8a832ac11628cb4509bc1ca1851549627678d502dc3a3bc3044c1f0e9a3a6ef87d05011582068e1cbc5c5146117aa89106982d49666e9ad0a0e00c13d490544719257a6863c3084ee0e3c5973422a0418116c7a0d6d89c8484319b828c154c5b24b98c2083860e11a0c00b19bec80389173e18e1450f24b83897d5247549e283cb33345538e1dcac333420a89adc418b2cd2ec4002a5256010c5112f86008309e7777e5c9ea1e1e186df839a4c04d1e3a62e7b31440b363190e0c204575bdac440c283cb332ea090aef8613f8a4371daa4b2ca4d7292436db34e3ae7d4a60ce20c9209ee9c5382958df44b543b1efddb735b777f31b6455dfe962d5957da70defea669252b892f6710c10e69ae7cde64d1d60e05bb620d501451ddd52da5bbba659452f6b6551abdbbadf7571bb26eeca7fd5a7ffc094a8f31ba7f6d3ae322d71e63f4183dfa87cc91393abb0198999999c17091c5b2fe199191968fb04b8b4f7bbc65356b2718c130be94d1b6b7bb64794bdacea54b2a43a20876deea6843fad46df596c7098656ba2b3feef1f94bae4db77c91e5b3ed625bc9619d72821e5cfeba7a70997dba0f37b8f14320f743efc69fecc37dca7ab6e36c3b7ffdcc6195da87ac2b51cfec1351f3796e96e777a766e7f7fbf7f2252bc1e28a1fb8b81e5c0fee8fc76451f589e60b2ba298e10349b431a3823bd4942187082a703ac3868b77190c268ad822c42f9f61c3455e02f8b8ecc5172090485dfea2093b68f8608e15707079c6050fb75ef60288a3f65611dc7cbf44769a836b87a67dd7ff9b6cb873bdefe7aeb0c3715708d7bf63f56503ccf5d76949db5116316343e9cacb67cc40c2e8ca089898cc28238c9a22403873822d987c50730407174955e392c2973172b8910610474e3d2ed023083a0397471b67acd1c3e87a97d7d851461a14d566c79151b78a921da76d6f84885aad28bbdda081339eeeb823873268088200769441351cedf28c0d2f37fc1ed46ce2830f7acea86048fc560577feeef03cb306e7ceaf73dad0b6e6ac5a0e73ce6674d8d0a686a5353cbce657770de0cef92c3ceed4367a668a20d586553b434490dff91d1f9767719c71815c9e9d49bae1f7686264e0c58d1b19c8ee6bf9788647d30d6b28676faebfec99df5931b2e5973bb5ab9d46bb00f5f4dfe001c7755d9ebda1e27251ca38a7b374ba592c99e54ce1784bebe93246e9717e954a6ff1cb28656496cc72f26b52c6c9d65b1a779a377f03514648495edb27d517456d593a14b83d7b2cc277a3e7845970a30d93331fc6b3170cf461d85eba64f4a73f3f275a14b69f1602fcaa9382cd46f865ed985dcc2d1c9c1f3b3aacd82df842160b0fa6ebafd3babc7928d0e73806e34fb0047eabc5d6ba86a12fdc3835edabfcb813ac12ad96483d271fdc68c3c0405fba64f4f8f4e42f85faf2d3d38bf213f90d439fbd098cc05f958eea84b056973ffcb6cb3ecd3cfc6d4319ffcaef2a36babff6e1928e6e5f035bde62db91a337cbd48eb7f89beba29492eb7aa6b46538aedff8f83906dbc5b813835ac760f8750c86114c1b17e354a665fdc6f7a6898c30ac8f8951ca2632c2d0342a298dde94bed1c38e377ad8e114edf0984839e7d4344aeda8b2d6e85dab939919196c9a6669ccccd2982923cd30994d9ad6a68d346adde4b645ef6db36de42d4da3b4d66d4349142a7aa350d39ae031a1b4d6cd0a0ac5498e8bde1c67713c26b56e1bea08c775b2eba277d77db67a4c368f09db38c556e6f26f71e9a250a821b8d9e5e7d25c7ece8cb73efece63c24a97bf4be2f27743788b3d2f7a7bde960273f9dbd023cadeb881a38d9814bb44233770b4d1c6c7a4619a359111862ff9143ec6c5d8f1c6bbb8174f7aa3871d0ec687f01edee86187939919196c9a6669ccb469238d591a335da68d7a88566a3031b6981ed34974527769a396993085dd709b688213db61a5890c1398e9ebe77098b42de22de6186517bd964b2ebff448e87bc45bdc96c5c423a12f0e6b52d3a2b7a66ddf65a65b4df57b10e0d78f5f19c74d8dd6adf2ec4d2fb9712536d14b7dcab337bde4c695d8f8d4a8c6b337bde4c6957c6af34d2fb9f129676f7a29863c7be360c8b376d32db92de51d65743016d5dea86873fd6bc732569160f5560425d89759f0b51b1f47cb97bf7e91cdf5e72804c7eeeab6dd5150dcb674638c31a26cfdbaaeb5d5afd18715a31337c6af31c62231c618a3ed69b5f8a5c36ed8506a830219d0f8c1c8084bfebbab75e5b7c85cf9457a5a57a75564491367cc0873c68c3067cc6082cf981146bb948b9e6ea3dac7849ab5b3ecad2a372be94e0e5218a5e0893479d8604611344c4027b731a9a4df5643083160727aca610d35c008008d30e8197a7c1add28a55d386d6edbb6a1f16555e5addffabb533f31b76eb27ead74c75b6d4303bea0c0290a375f3c411180338e98b6f5d1e7d7c4208e4d93fede6a6ab7eda3cf57d7a031eb6afd58385f6b5d8382266e9db76ab5feeffc0eeaf29a130471bd1b7e8fb7448fb7711f7e5b4cd1a1e2addeb66db3361d18f6dd380d872f789821e3c4061372a8e14143c40c5c80408a0df561bccd67b36dfba2cf0391dabef53bad10386ddb479f6f0b2edf17023121589a37c09185154f6ae07073461ead316bd8804129d8fa9dff1d776d746786a1830cadff9d0fe777d2f81e6e9363cd93ccb7906d432e338111829a710385d2c20d4a0ba7af8b902e7050b3268d36797881b283e39d0598e0e5fabfe02ebe3e41946432990c33334ba1ce0d99e9e6f82b643746b14d13feec3e46dd0c8c1bb21eafe6f83cbbfefe45577d7f05b86bfb2247aeebdcf041fe0dec1935cf498740a3245cb941b1123a2225b412ad9d7b4d5ae906759b8b7a6e769bc7806dd3348bf29c740e288eebda2ba1e706f513eab9ae73af849edda07e6240d1457de739f1abbaccdc3315c6bc6cd163a752614ce96a8f02998da0505c473d136ce7cd3115c6ae0e5f5ced53b7823c33c3e692c05c247a27f4c712e4c7a87d186350bc556293a23ba966998d84b10af34b30c7493f0cb7dfef8fb3dc85bafe0697ebd7d1b4408fbb79a962388edcc7d5aea27a6432d9162c9428edb278e33c2c731e6a26c979286577551c588f3b809003a9871108c1820fb068428a5b51af3d870259deda409ced51ffe39fbbb46f54bf342aaae20b0d46905992820a370080869a1916617eb00013e4f26c06631e358528eae18931c6b0020d3bc220c2032a3e90c40ef78b920f1fc8010d26d8d83901189b184824bd4143c70cc420820c088ee8e0055f7c97d754e1430e3058e38b194ba0d185134fd8338e00707976459b2472f841e3882f4fe411050ad0802788c19a2aaa98e1e5ce4834c4914398a31a8c607afdedffeaed6e237e43cd3266a886fa0d8542d9ca26f2f045a3851c1a8aabf50a31659c486928be3f65dea0501b88e3d55a6b9d9541732b93fb5c334c9187eb4c064a775e3e93059b1b7e5f353056a8a1598186562fcfb478b3c68e29a21566c8334e6ae2102cb8f4721a22d24436fd91d90813dd62da18c3f8fc56e18629bf9acb3f7fc75d44eefc0ae6ceefdce55588b9e1e7f54e2237ec6ef81dfbb9eeba2f3f18aca4bd2dbfe69dd06e9d041fb7d5b011f671e7739aa6699a0d35cd6afc3df48a3882cf7f6645d35db1f175d3ed190008317839de80e305f3b9ee56c0c9279e6023f1950cf5186c247e3b319fa76d6225b2894570998d4869bb898d84f1f9b84d6d0012b012be91e986cd26cd9782f6f9a12208e6e11b9fdbf543c507da8ddb555cbea18f1b369b1bbfd9b8eb878a1eb8c5377ea7d106f8a1020c1380af526705c75abef861e5d9144b574a9752cae71da90217bfc394b9cd74a398db4c116cd9bdcd743d263168e7f61b5d10f48d4c6d00bedc693efe0ec34a86dae8761836c2af6408046c845b041fcfac985d2fd448ba21bd3eb3a24cc8a282e936d30deaa7129ae9ca77af4983a09958c990fc68c3f8fcc50583953493041b0c36c2df6a58494756126dd0cb248e77426e5ae1782bc7658edb267eb5c7f1f6a11fbf481205b8ababcee73cfce14ed8b37db8e446a6eb3c3cfeda94dc74b983582c92de6570ec97a537c4fb58de17c4f3beef7bd816229e4d1af2f29effe7e75958cc03f2dcf7b1ed7f3cbf8e0f1f940c110592faf1b18de583c6cf47cec3625b9ccf3d3f8e901c4afb63dee7f800f2b018cec78f6d9f12e2837a3f3ef67d8e25e3f463dbc721f2632c032ff3538f847a05b1b021a94f5932f563f3a98f1cd4c7bc4f0dd1c0c262403ed5e1cc8f7d401e8825b34a75dbc7bec7f18163c9c43e4ba6ad8e8f95c5f92c1955ca7e9eddb16462dc73960ccac2625bb5d292d16c6c5a32447d65b464dc76deea58273b455bc04904e47cd29057940f43d25ef18388c4e818af686148a957fc240d2491687f4abb85c8fca421af2151aba82ef5e1f8787e1d3aa356515dcac7f7fcacb9d1a85554f7a59e1f67526e8b5a45a5bae7ff369874f33e86f39c4ed46af731208f0ab3418e908fc98fcf62d92d44b498234448ac1f03c232f0f2d21932e9c6a93e86f3dec39050af1cbb85c8d3d3d36b88109685250d7905b1b0d8a4dbd787c5b8473d2ce67df7b098ea539f0f0d3e06e4711e16d37ed28df3542b201fc3f91f0f8bd59f74e33cd58f8fe1fcea6131d4cf87c5baa70f8bc5bee71e16f3f1dec3621afcea6338af7a586cf5f161b11faf3d2c261ff531205f3500771c893f10503a927e1cf01d89ff0fb03a927e1fa08e23f15f819d23e9ff409623f157819f23e94f81388ec4df03711c497f077e8ec49f03598ea41f05768ec47f03751c4923f1a7e03b9246e23fc11d47d248da3f96d3db1b1c4b1c7771cfcfd27157eaf9df5ddff3efb8abfff21761257d83c2febe546a4e8edb364add259176b5f7f1110c5abd505050932641aa0ff23e68761f84faa0fa41f3b57742e4e92904d7870da50d22a265c85dd9908e71a30d22f214de7e2d43aeea7ffc53d9f0bd4f7936d4e96cc8423d87b2214efdedd39e6a36ec8288d850cb902b6da865c88d36b442c7b8fea124d2ae5b2d1adcb63b3e5a2a711f7d3678fe0564893ef1f91b4cf4d179fe9e459f463dff4ff4d99e9f85e81380e76f2fd1e79f3b503d7f92e8937a7e28d18783e7efa4e8d33d7f2f451f0f709ebf27fafc78fe0a441f1fcfdfb2e8f3c1f3f7429ebf157d58cf8f42f421f2fc2f441f0d9eed0fb161bd43de411d9e6f3d007e821bd8a39cdfe035b0839defe0c1a7e0db230d00cff3150c803df2f901780ef4c01e7900fece7b2007be023fb01fbcf6ad07025a7bd4817d0f3e0848c41e0500c8d717021e1d11799d9f4d9174873c4e911707447e83578147442c1701bc8ebc27f2398fcab15c52af7f1d7b24e455bf81e502e475443fe7593a8ff3a8ff011ee9e0fc069fdae0538f63b9c4d75190a30d2c1723afa3d56f907ad44bf02865b91ce075c43d1194e5a2f33a427dceeb582e38af239d97ef033c02522d1721afa3fa39ef964b7d1de9bc7f0c80e5d2af239cdfe081582edaeb28f5447e5a2e3e5e47405ef51a80473c964bceeb48e767cb72d9791db15ef51f7c071e7d60b9a05e473e34cb45f53aea9ec803c07249f23ad23ee73ff068cb51d1cb03cbe583d791cec7072d179ed79106afda1e7cfb0d1eed582efe3afa7e83df7254f4eac07241c0eb48f544ecd186f33fdec7affe7b2efd22f2d672f1791d6d9f638f729e4bbfc0078f74ec11977ee93c11ca0178f4e337b0473a429ef5415e8307f25cfa95638f8e8e8e549f7aefbbe7fe270e0163b32b04e4c8c3cf025b91873f088842e4e1a13ba86409582a44450c829021342334a30900050316403030241a0e46033d0e04f30114001088a85a54409808c32888410c4621638c21c010000800c418304354630100815e71bc076d8f711caaccd0614e38630fd1236456500fac1b8be276747c75e4913d73afc4e2223dba55ca2034aecac1b588b19e5d0753604790f79d33226da87b34f9291a26d701b160441c4fc729ac19669dabe025bc9592701d6ad003c254409fedf212f3b1d1b629d54b8721f6ab3f4de2788f2d704b1a465df4fca5be153f79c85c831b841eef8cc46490ac10ae3880b7ba23d07e35b0a283f9c8691b787e18453f6eb628cba1fa173f7c4bedcddd5da0b4a6bda256ad962f3797f56fa16b9e74230d5ad352589c06749ba798bc91d7a8223472566c6e5a8646c5d1b1319477783ade78629d73565c2b7602b2573e9ec452a4f77b4233fdc4469e464fab4d3c9e89d5e763e05e7f623b6f4369a034595e48ca15527255640ce70f288f51afc1d64ae93fa5bbb990cafbc419fd8b25521798f5fb7e888988071d0f3f4102aa3f5aa624882adc2f024092833522f26666817891c8b39f83dd2e0f2b7a81c6db8e76f4d3a7be94b0064522b4e6954a0f03b73a61d1441fadd295c356919561955821b44aafc4351ed6f0e38c61d13b39c28b46959b18af19aee87d4f7abe010c2b9ba84494ad30b5651435bce9502daf49a6c27efb8ba2908a15ad4d0a10b2654321a3ba436a7645097e68180be4d4e1341b5c272717e4d1eac1f7a50202ed29cccdd749a15cc90c8370a48297f0e6d806a3b6f31d5f4d2abe0c13b09e25c454265089bec6f5689d955d552a586aa00954fbfeb2ed5126dac3a35f05e0320f04cafdcb06392fc2108f5115977d5155fa9d2133e655e37ee48988aa7ed902837af3784bc3e8339f1d525104a761f5445e0e48347b5e90ac00a266182da8fd1227fb5cd3600b832ebe99bd659729c844e725eb4f665a1466a4254590c913e82c9996ba81562cff3128d941b300a45ee7c6992ae11a97b37c8e143bf340da8e20daa1756800a036f909b65678f954a034f04f5dee22c0a49366130fcab702050ada3e24b0ae80f4f1e9c2c48d1025f070a00015c5ee5413776df4a4118a423173372841a714705376ceb227d81fce48c4c305899aa8c7b3e168102e7fb6c808a57df5f8b7992c4990d2156a96bb3601a5e874d30410deaa7ec23ff194d7c3dbcdeed2c55a77a698a940cecbddf40840cd9387ab8262c496ab58b730ddc9222f9a96c7bb8f2558848b033311c8665a813634e0b4bb94961376fe3108fc58837d4eef90eaa9b86e4b52ea055c4e14a70d0233af887d92f085f744915b40ab7e0ae1e78bfa56e106bc939477f72951edefadd6a468fc94fc1324f09fafd2ce8b82127e1e9e13a16a78cfcaf0e769178f3b8d0fc411c5df55b7491792c70cbe14442e6a722ae0a3d5d54f58cc747f11aafa3f86c9247c54a9877a9a6f63f9f9972eeddf50bc3156b9487dfdcd159b7ff4b0ba24f423655ff6712fb499325f084dd2c8c7483c448d06827c034c590182a6baa17f6272452098fb3ebf0269e9057d27f3333954d8e7c7f89c80cf6f0dc61784de808885ffe62147e5ad3c6745e91754ae5e112912a8e623fbbf226e0734e07cc8b61c43adcf9ce196a5872804b99c0d58d0b7aa160b6ed75b752822a1ea64dd50ca07c3f13905f57f3903a812f2b18752966c6f5650b54f2f94edb31f6015052bf91581d9c583f7b4f3b11c5b1367fee70105ff5dd457bef96a8cf4e87a29803a62e7a4a39a67a92911b6dbfbff848a2f386be89eb856aafdcb60d30a8b59d3691eac4be7bbc7b125169636c2cabdb2b7268bbc761035fa7a126f031b41b2877365b116781f3ba7efedbc44fb6b662eeaa798bf9c62b1376eb8035b63d0c0936ca11998a5861313e925a39abc9920a9cb23f0c8c1b5748b974f859a11dd1188046fb1343a30c2a0586809a597170abac380d0bb67ef02bc6506cf01a13733b7e8641cc4269184dd38df1d5e98c70bf56afea96612527b3d3257e1b0c314b9fe462422bd8f3c60817914c8d1973d97afcdb014a511ba9003dde4deaef63025cef91d223180edf8712eb80019f5aff840af5a72885be3e3718b6fa6d0434b7cb2146f4875f85e9290ec27c82a729a4b37eb082d566e8ab23e52a24dc408fa9996dfbc3cb3845b94ff5e05e80b16e9b717da905b43797a4dbd5d51669c461ce299ef62285a3bfb793bb06e5e4e9130706436ed70e8d6d8951d9c751200d94aebb41c848166415e5f1c29fae472979ff2d4f5259fb9737368b530ef511ec50787db8f16e49146a6c2c6c4b17ad7817cdcd652a1577515851f5c3d66a47e0c0ca378ab6ff0bee8e6cc714d44b1922e18c8a8cc6fdf245b05e8c110968f70f4cc09c896c04d6e928fef8dd276fd000721b4b25878e9efa10ed6e2eddc535fdfc98a9a93ca13477a81ebadf0fb4279ea56e5b3d406e24b8e230d7d78a6eef8e8660d6a7ec660ab62240d36a98085b7434b5ae6f80812b595737d9da4c325dcb3035a8d9cb334f2d5118f8a1e4b02a51dd7e55a3189fd4af2d10723c4d0a136cf319423afdac6281852134f015a42d9438b014b3d215492f44a3e15bf061d929d310c15b0d11457b94ac8ce3ad96d3fc2480a21658e49a0ddc4734da70cdb5ebd5ac81622df00bbcb6c745d8a95cc044a51548d6fbb4ad22f6ee14c790ca827cc5c588154c9553f7f2ec3c764dca03420112b97133b75a83eac4fc6ba657c2eae6018337aa8536c5886867cb3186e9197d489121d03c4c5931c554356e778a180df137950c3972fee25feb8a94eb6fcb2d002d42df57623c2d5681952bada4ac7a2ac51bcf9f64f5cbc58dccdaf9b686c6927843a709fe8c88e659878b5efdf374ca7463a62dc067676326770bae4e2d453ac3c270ccd2370bbbc049d49dd6efe743df3bf39cd0c79a3e74311c50c73e51a86eb1a7106a3cdfc60d2d2902350c7ea3d3d0bf76bff11faba0d6a0e370de66cb14a54e555b31a48cad02752a6808b6f67b0ffb99b995e9ce94bb3143fbc1fd00bb3906ca6e04f789c75b96786c2e067046a5d5f53ae671108946fca450bbd123fb27766d2005b13a75f4aa1673191924e28f7bdd410bd8a595a58b1931f87505c718050c81a1c45d49596f5b6cebffa88eecf9da9bf06b5a107922df4f7bb5adccb73178fa82887dc8c7f9aeab94693595f9bbe22215d4e09dddeaa62ef29fef934076715bb861b4cb2c90b79ceae9c5386410813f1576f8458d5bcca89e7392360554e8c04e0b9183e6e17dc1debf16c616aeb8ee1427f2ddceac009781aa8ef8bb3d81583e1424790aa3f4e39d1c02a64662b6840f9fda7b21e52d68fef7967c4b055f069b24a5b6435d9a86916d4ed00bd677569261b5aa7422fd846e9636614e0c17e2a1c657a07a9a042dc383b50819f4ed2c0af7e88722b50a3fc16365ad527da97146cb48c3e1e3a8ada757580ef6bb793b64260efa6b3921ec14a847562e2213c15443b9294f1454b4e756d10f5a59f9ecb747eafd5e5d0d8913c891c802f14340c8ff234824d8bdcfc50a61c05b11f430280fcc9a8e4c9f97109751425c1bd7b3b8f72d0d319d59bb4b525228dd466434a6a10205ff2dce9450440fb035b7473a9c12e771e0890afb121a3af534cd926eaf2448b7626cc39337e8caab59206b136417768f973fcb6c21c44b0d43b363211f51c00e4112298b0f3e62923a3fb1624bb3fe895f2e94561233a4ff10cd67f24e70f14f659dc170710e7c2d54c37c05fd4ea9a915ca259a8d6420504fe8885ea499fd1858fe454e7a4d87b9a86dbaa6482645c3e2697f5cfa518c8df6ae9644082e2841a0be4ee49f50ad73f57967ab961f87c58c266327e34ee3335e69d8bce3a4c6dc34dee8544165a1949df0220a95a86cfa64d4f72b75f8a090eb4acb76f8d9a7c731cafcde9e810f1ea1dd27c0209ec1528f46d202b6f04471b54837e8561609917ece4b12623938cb124dbce3f1397bf002d4091fab150aa1a89776af5da5a28390c4d05593fc04678f5c76587774c6e1a6e44c709f437c1bd252b8f699021a61df7c4735b5655b1e4fcfda4aaee9791f04e2d17908960d11d7a5fb90cf6e10dfe6031999eea501631270bca82101923762a95ee0b7fd31f826491e937c3d22d2d014747ab9f3841e530522ef24fadbd4409c85ea318a333dc0c97a9bbd234df7ebc92535b0904c4e0c92d57d00c23e3f5ee9f3d69b00629e13672820382d0681c1a87d73dc543ebf6826fac6945179c54b6ca81ec72028e91ec0ce9129a8e776548c9d98dbb2d7dff0bf8b30914bb2116a481ddb39b5bb6b3c96eb22a79ac815b649489bc1b2fca6714d9d185333244bf2cd12d5a7cd5421c84a36bf9a680031898699b1ad3d10858ca7c60b2b9b22f802e93402c0779c2eb39f0c0a9e1b65dc11b3c6d20109ee391f2823472aec668dacde97234e61061b80efac147b763cbf7a2c33573837eb5636a115acff9e2e5b2ca68fb217341d83fa7acd15534ca33fc66a30bf29027d35f62cb4159e9f7307ba883cef532700d0ea2ba3ac2130a529cc4d372aa94b61c567c1554892da45e381d9fb66cca2b70997b47891883638cb14ae4bcc745ea73b4a254d5776187ac866441d38a1d393d28f6aa185cf0d619372622753cf23738c7691f7c03f5c1ba47a53f22f6060a501c41a9d039fac60d1211bc34e3c69b74b4d6042a230664e5247d9120e2a537cdd53abf4b3463e5064ad79c62578ed8a5c706c3b14a06ced318e2ddb8efe0ccc691b2dd6767351e342e1b7135b328deadc458175fbd2570c11ab13625bfd1caa57be5c89b1cb8871f825908f619d2c5a5b63b185afbebdf4e8f761e597bf4b13f87dd764fdad731219a9dfb3f609f88d946b23b9ac282e42a49c1acfd9e9202b75564e24f49010221272f80fb5996fb3a63f246b67e7defa6da9f2c36fabe18b73b5f48dadbd43eae162515d9c7e082fa722c32a8b933b1009002def235a8414e98bd54226406047f9e1eefda7bbf007b11c414315173d1d9a900fdc1f9d47fafabd57a8e95e4c83668b94c124a558730cfd35d5e6646bcfc772e45bf0cbd73fd5be04e46b6fb947bb096ac6af396ddc03c299c908373f383ca6c6de07540d380bc0a2c295318a850bc0114a9e033044f2e8872de7a9f5ca361bceb79fb943b38ebf5feda70fcff7519b0701049fe55fb8b70fb3fb1ee09de2add222fbb5e471f7a5c1379f9ec69e90275c5b7e6d297043d0df02e578c918af0210e92d1fdfc57b22bdb365aff75ca5083a1024f44aa814a19b68363540ff61a4d623e60806b61aee3fdf4289a14919e7d354f9b5a87ddfd069344d9cb108154f77103518452c36750ac74b1e73a00971462f2c39f654a1b9dd3a528fa5e1f430ad2dc3c98b24591e2b6fb4642bca7ed3ed996ea7546f411b904a374c3c955fb54c1bdc3ab069e2264b6910abfedae153bd9a7b1ce123d1cd3564092c356bbec4405f8a3a6a34fee99bc95b2404723241774b662b8bc55898cd5c9cd134307f6545ab4a504fddec0a85f17b7709c1ce807fa2c602735b043d6833ade058746b38fd45f3086aef1de6b3714c9ed7cd6c14dea3c791bc82f2555c720b027c5d05e8f2ae541cdf3a57c2c2b480149994dd569106d71286e751117fcc07e5b8c661a28d4ff6ea4b4c92db7c6c74c035b7cd1ef437cbc5e82e61b23c1c4dbe7bc10baf635d64e70c2948528ad9f7fffd2e6003a7d232a3cb73d98dd3ec2f6a8b97e0474a108450f30f56b176026116ff552230cf67af94e2bfe1ac182af121ae9f96177f1614a6b479787264adde75aa21d673e2a93b2f57ebaa0418644d8ee6757b200bc979671898b2feeaecd2442419ff47950364f7ebc5eede40b8a621dc126bb432268be52173b44003dccda5ecd9408df5f3030df55743af9f43a580f3bbce51132b2903821a8aa099fbaceae0b1ebc84686536a61740e35063c42ce91bb4aa1732e9e062f00fcb9dc93080184612e1ea45922992a194bc2c9c1b0b7da2a1a40e46e0c0ebd4cb3fe02e61fa3ed83543a9af5ec41cc948881f945a3d77a6f3ea90fb4ba9cceea150ff522e5fe960c1a707bc4250720a7c638abd92b9a51443ecdb2bd9272de79581e84941f54abe31232218e987b76346410d56a91a39c08cd62819b13ee3152d3448bc8b32c2b9c582d7819b62854d7cc454be3c9264370ee7db142b4163b834e0277b19f8b3ebc85ecd6f524d379ed0e740f16842c5f9180b500514098f5ec6a7e7d9a748a37f7eb608d3e1520a6d0503d631f76cd00dab7e5940d33ce900ec519cc805b428f1ece57289500a7c494afede09be6f2618a5c50f83ea91b175b3a2dba65ada5a3fff35dbc80a54e55886125b4b7a2faa568a2f229033dbf5aea89af74d2474394adfa5850be49fe21598909234d6c0fd6e4bfe129a25a346b4402739ba9af682d351262aa3cd5f123d82477ec8ba2395b99e85f6c2e2c93e51d6c2966a47b4d697ee6036361725b105114c38307fca9718c83017d4cb1825715da07cbd89b60fe36b1718d86498551822640524179509cde3026548378ef8c18341bb8c60d249af044834e25578317683764705c9701bec15334e42c6a5626ab945da2a3a171896e96f83031c8c98a938a470190d54263cb4db001aa0f369018b2daecb989347603ec490bc869bf0fa5a0a98de84b51daf76a98ae742a8f45af1ea1c7786b922e0bcc2e15996229bd084dd1fad887efc6af39ef89e81a4da7d3defb0c46fb138a7c516c2ca06c7cb48a551a83a225ae5910107a29907bb64d8929337c892eff1a70aeb67c95fb535e2d26f34d6b9a735711fb41acbe8a3464e6f6ca21fcbe712ec41d169e470bdf6ef77394c81f48440fb6c196af8f07d23fc1505aaa92f4c46a84a0946878beff0d24b38800b38e7d6f11bcf40a4dc1d07778f22e3558da5a475e34c4c638a9fe4428bd77ff7f559805edf9f121fb549df79c028d0f3e0126173a2dc23f79f24a47368e5e434792f19a2d05958ef5db7bd62eb01be2f73d19deca15ede8f18993c382af56a48947ef6700b3fc011b4993732e87af4c5521a900a74941118fb485d13f57f587edff03310956bcd9db53d669f489baf81a126d30b43d0e8b93b9dc0bcc11e15281a1a67e2a492074a0eeb6572450ffebcd60fd8ada8b626b6aebecadd9dea8ea96615706c10ec0b3be2bec2bc7159f046bc2d581f780442bf80df55c759415694a6ae28a928ebd21fe0ae2d80303e2ed207d67c365c171963e736defad8f6ad02afca90302e59f587abde36aa0658f44847a2b10dbc43236e0e8beb144a3def1b36e9c75a7f21ec3180da0069a6a63e84a8798a3d0f98f66f250523f75192f27dc82dcd5ca85038426fbfb1344838041669aba41fd456b4c5bae89c243473c81b6dac954b2838937468314c3bfbdd0d30eb89112bd1532fdfa7fc65ffd1694883c689a5fc7ff1778a223883c7d1930536662ce88f821fe8ac5ae69418cbd6bac572cd0ac611e82ec31406b03b3328ff2dba87e8a9e30aa85d64a87306be9045bb3898bdb86d55ac4ab7185b08d10998a59644fadbce7617e6dc59ba5cffe64f0242045c4f0cfdfc8af0b42b32bccbf25cb8de5fb1699a8538fbe5a62b08d4e5a7d7d30ae567be604486d3d35c5cbb8a232d3a45757ad98b16d49cb8ab5273ecf88067734e2e3520cd9c08c513a7560fdc522d96414e2ad00fbce91d010cbd7dca4b29e99ac626a3d95442ab4dc315b0020c725e69fda2f252897c50919c4c11565ca6cb668c7607bce411dc90956f7b894f73882153a9d49d12979fb899d701aef57192d1a2754f52ba48ecb0bb05af72cae5bac3930d555a19a092d43ee0587b11594a88188d89e3f95ebca01fa727dc9a030270e39270e03c2a7a80db59581c36ac55c19c8beb57dd2e3d4406467d7bde2e258bc86728c76961791c7d084d830e4fe16537fe192338f7afd3a87765c7a87607a11ce6356d23a24c500d61d5f1981e32a03188bc530ab3b42f2d124b7b36821a2e14bfbccfcce7798546be7c9ea5187a0b4d950a74e607a99022b5c84ce31c4223af68cdb9597ea77ace927402e81ff1a19c8774d09e239b78fdf7ea65881e85b1cfd9cde7f71e575e6668186f132725dde96393b92f099480eef98582c5926f5ab362161f3e6627f42c9f927e0ed96137bd2db8b19c40474ff0cad802dd7074dcd87877eef40cdec8cf248523222484a99106007fdcadde8031840f9f001ae4715c36c818882e9a09292bbac53c14b0dad8a7061c634ced97e0f8f8bff1fc78f1b144bf68ac7ffe1dc91eaa97488705e5ea7693b76ccb518e2d3a54a9c0e656b2c9fba26c8efb62ba1a2c8d707f51cd10c4ab2c4952ca25a01f257c25089a1019e427487cff33fdb151a1756ddd083ad07a71599c200c0bfea8c64050b8ae542af1e2151a0e6ebe10a6f84f8a3dc3cae1c5f6d383c7566828dd65ca0386bca87114e6c075456ed48026dd3a35e6956d37bdf31ae4ecf4ddc86004cb52f45dfb95dcb92140aa4f89b3b2677dd0f9b85a9e0fa70e3a9e829029637f236a6be2eab35116c2219f67ddf00cc64aa2d026bfe6485bf5c6013b593f8319b107aa045d94ebe6e358518daa111e8f1e111287a1c66a0e8625527ccfdcc293be226cf840d93ab0717f5f0fb91f19084f0095402d865c26d4676d91d858c9537a1cc2d0591311b9f7afd6ca6f5ce3627c4872a1cfdb57e497bfed4bf781c25b71c98fa9006717084b65965056c528beee293e66d57422ff530229b16906bd90a2ac3c428be8f779a832b9fd36057490f8c286095c647f1258b2bb4062af3ffc2f713f1a71e6b12c0d977c5d9c27eb3f9cd8186aa4966a4fc9270100fa12ca1fa5aebbf3a5011b8cdc3a2756060d08accd2aacdd812e2045c0ebb9810f597f387b6b403155122a58d296fa677bc38156e3acb90c5b9e89986e6b1008589b3128357be1a79416803e54821f6564ad77b5c11b76122568536216d3caa902a5dc4e0d77dbc4d9f3bb92a3b0608c730fb12512ea3a3b82cfec3942b6876c09c16577b3d08eca0337ee412bae3a933f5aa4566f000c56b030a571c8328827caa437b762d4d8ed117ba20e8f948e93bb4ba549dc80a34b9fa1994d576fbbd53001713ea115e0b28291d40975258ebfb2a4b8c2471966686ca2178a9816d1861e8fc66f61bee68510edc42fcbb6b8125efb2c73f8f053e335a36b22c49a11d07b8813a4002df5b64e612cb39139b3388ddc152320f72ba17c46dc7ad89585dc14eb4c288bcc22c3ee6697ea6598339fe03adf573064df4f369ed872bbb5597444c7ed30c6b471c218d23cd78d0f3f5649553489357cc68422c3111b8240d26191a9ac28107b432ecc57ac333a9c70401916f95635e6eb8236cbb1095f07094e5e32c42d92005a52464fdd1076ed6ae8f563feb51edc0519bf72b8b4252af5fdda0d137f9b800fe592f1f701de4cba91faf50f5ce8b9e1fadf98fb0f14da65d4ecd59e1c9dd8a6cb3c1a5483d94d28c6f11f1860c7fd43e7e393ee135abe8487cfeaaac9b40654295b58a503a04462584374e84a25ee353bdd5d52bbf78c0081d7cdee36c3671fa607ab22476d88d3dfa7e67dd25a72cab204d6ccb4119407abf06c76e77c3e2963cdd149a3c347c9d29f1c54dcbb9179b4ed88da529ec1270e06979283ad6ffc66fb45af51d76c1170ba007f250c9d4d46cc4f873e1cbf7798b13758ca44ccac5358c18bbd5475379edfc3c7e8fefcd7456847a754da4d1dcf833deeafb1a614e6f9410ca318e77d30ab10abd73094db9fe8f411c426bc6e6690f173ab0fa01a74a9482668e26f35106370d4386121e9d6a66915a31f2c78fe2a99f81924e0a49ef0b800f8dadf56fa70d68fba6361c9369ef896439719b32a0ce2d6107525b2532ff242cbda65389ed4863ccb9e31887d3a47cbe1fc673680cbfcc3f1467f5204134cc4c3ac8465ede0c048177a496df3516d01abb566e5ec30f1645c807cc6bf53d8cf4bf11d8e5a935ac3985a2a86fdf01963703ed911ba2c8498c0c9898bcec2ad37e66942ef32f66c24ccd12ab1becda8d58accdde3419cd745ca172b7c2d4dc83288441809634880f4ad1bcdcc2d5344d3f84c9d11432676ecf8c7b8abd88e3f5cd8d4ca6341ad64d8db3664e0a554b31b51a3e335aa2b03ad0ea31750b2f515e81b0616a55aa3cda598dca8ebae14d3d4db2a71adee93d8fda01cca3258d57334c0d4f2b5dd1af7f099214dac393a4858113e637debca784f1bb458f9e5973fed8236e67aabc309a90d653f00f8fcbc8b37d2e211e32dfdec41135a4bcc83f4b578c9ff8bd764f85c5f37844dd689a1f05d240e63319cac9aab9b19b47bb8b4e636ee02bcce3d43dda4d75ccab2d5e46697f158fa2673e9223d0467198da83ac1a7b58a03ec96d6938f64f501585cb9cb86722f2e65b7e4f7ef32670617d92848c18db9d7bba7637b4c466744145f862117aed0e2fc825b81ccb81e5b7dd08c35baee7abddc8ad1cf2027a37c3d360140f3e5e87a8d2a76ecaf4bebc83e04dbc42fa2be875fbfcca8ec7efac6b26854461d663cd1e146905192771935a69b9fd4400fa8a42ae1d3fa1d3afb20de903022e2412db4dcad4c873438b107a979069de1db7824fa36df091fcdb7f70863ac1e181677b719e83c78969807b8bd862a8135c58351faf1c840eabaf148ddd84d15e51f3a5e5788a5f1801e50398929f9d1346073c5a0b222855979a279cd98a3e8454bab6c7034b56ceb7d5753f566d33dcc04921412c31dfdb4e13ed6c5c354c28227f8944ff958aca765897a1611fcdd2434fda4937ef8768325ee736dd8f6545bebbb4d82fdb437386ca4e964795496832ebbe902a25d83cbc3c987b587be791b8d6c0e5852a88714f8b1cdb58d9d61ca456671630b0328f409e3d45acd1fe3291282e269ac2d2a3e0955b1c9a40b0799b6511f5ea0e3bf040ba127a09bd0a817a4a30ac12d5ade01c1fc34c9adb8ba96bc6e34de133347526b42737a20e215978614b30c5749db2d06f03b50dcc912e1b555dd692be3fd5aa59987801e7b31f8c5d4b4b22f6736b1c4d16fd5b21dd8473adb45a00ff6864877477b10620b8d685f6ed1cf3de5a42103e16d1aa7bdde593d72322511142c683a6c34333be6001b63d12a089a24d6ef41508999a9ac04c90d72e0302500289508e471ba8e80c6faea3f52f070980d91d048a4d3e8a61d6e557519e00edfd383e06af6e67845eab2ce5e356adcbe7649c5fddec802379f66ff78a9a7413a3a8810b9a0caffe43e00d997bf54e9b9012976cea5e654203332b70e19819ff75f46128d38e147d64d2caff124c312b58b7a3455d07fdb30186ebf9567b6e22882b9e6a102ff671c02658b36a144f50aeeb78953916627a22dcbe387814c3b0f090ed3e8d0054992690cc52011eadcea60b5a77dd4aa2110d15deace0d3302a7d78e8ae01e0c8788c425d42370d0805a0f7aa20b496ab504df66ca7f396780f15e917bd0414f06b62a6764c944f56f8fc7fcc3c3116b966a64837c6a4b8ff1b81c03dc43c1c604dfa1cf4aac5a0c5bc6174723b6a03d1a6c055c5da9dcf1f931e1202ac8519dd2bc6e7d834c4d05ef57cb24e2055961c33ca40b105487a8308da014632c8e27fd98de3bd3eae46b901d3b7aba0f4a8ac7efc2a14e8d51160d4a5e9c17bd723cee988eebb9ae77b97dd9e7383f55014876ea4ce9a8a699da593d86450687c919d17eae133ca9caf3cd8f14ddf741cc7c110611c615a2c64dc6c4b606455614b59be29f905128be29078ded8fc6138d64b46201d376abafe9d32d812008e8ae9aed6b2a75098ef65233b1995c683708a75dd03bfc06e3dfef6b82fc97efa172d0e0ba228fb32222033b88fe3c2be7f2c06d4cc0367348c36f099ec856443fc8208ca5c4777a3f4f5f59ba74647af37ccc77b35708eb372068a3146168d235e2e54f4809454d27ff6e6444d13eb87c77e1efd3110683d8e3141bc3697966432f5995d7b3c222fffb37dabee414445e38160530fceea39e02c8e0d6117d775b47bf010ea8d2f69475c6f6e015dcd1af9cb3dec269db90371b989d09f97f7e318f1fa3a571c9d25c7328c44b1bede305d1512ad58f9480803e41437dac753c280dcf493c560139ce75dfe01d3f8596d6bc0ba6c296380740cc51f668af5279ccb3ecdd7e25ab9c343cf14fe095d90b07bb2ab0d4171f9612cb8673c96cbd5d010a0791d4965d9d0dfbce920a9936f817ac1f648a3cd468c5f0cc258e77f40e5c394ac3ba41e33065792f136ac9a9d5bdcab1c285d239580051f6dd3852d54514c33f359fec9ed0528bb3cea91b2b046f3971692adbe2d30791b49dabad1c0158efbe994f75442c9468e71a2eacb408e511c0b99e95f800593fa837e59577d74828e08bab0220388b347228ab1c779d739fccc4b4c38374a8a20629c77a5e4f87280090fc9374fe9d401cb6633c449719444e0dd4bc9fb75526b07c469f948c25b1d306dc82ba9b6b19c48c1094335db82cc426c4a43b8cba0506baa0e186621cfdede9b2ede75d2aa5a409e39064033872f3551e614ac480f833cb3b6df9d122cc5fe9e315126e15add3d4fc69590b63ed8cf2cab8fa5975ba8b83ed9bcc25ef13400a87e100e4157b1656ff561a727c0674ff1ac74a0a08f6ed19e80f27288383638a8ec2f95ace883bf5fa2b8666b2a4cc845248595d36c911877319921e334d79e7093fa3604e1083b9b60ae43a73c8eab8c4cd48fc8225e4d1f3c293651df3ba4fda1fcd9d763530936311aa2f16919b29dcf17ec5fdba21db2aea2f39da022a032e5a0c5058ff58727c0a09556d46606be565a1a12eb239374bb4de70cbfbe03ef963e05cebf9ad2dab4850df80d546b9c1a065b17bdc71a7840377caefde5366f18d2c1759dd011ff7005d5a7c9f0669c5178d121c10408bf721fa34ad37c21ef894eee1d314c561e2028a0b4c824a4a7200f2bedbc35653c2afbb45c63ce8d123809d05cb9e8a6294e2da53d794a6de718b77e37ef3bf715ad8e424f853c67f5030c55bb2c996d0b7284b858a979852d9d967e6bc58da09f49f41a7c6664ed292bfd2aec7278f5fe6b438ddf013c43159c05ba75dad1e970094a3957d8d650bebb30f191c0bdb897f178577e844fc9e1b5c6ce775245ae7ed9894d1668d1e8ca8692f5f9c9a6b1ff6d298b014975250094f46b9b380196e56ebc9edffbe006e59a89930d404c1a54f5e80efd548086147e70b0c5f60b8daf05586a61a434f996c77afa3f28cbfc282258c25a99e0360026eb42b8b4aa55f1b61b69307109879f5082ef0b2f04f2a7274215834f4813d91e2822c5737334316f02d7381b3c3c08fee0fa5e8c4a720b940524a99ae67a3158b2bbd9bba0aee119ecdb893d090e7f83bdd03a9c85d3cfe0a5dabc84255aaca498da8e20a56a9c7de1eabbe0f21089fafac943c3b616c7536200662d180cd422915ac4ac0a3db68603797d52aebbae251bac4482673543ae04acd40074de4483deda8bc697e8d3ce728166b486946acde4d44a12b20b37a032925239840208e6071124d012961e065e913cb1a0aaa17c1a0486b1f6bd8f15552e0676acf2160f893722c43c3a9d9ecf8eddbed9da422086867500126be5922729f5b5e65dfc630a3e816754d93436ce6628723ebf02830cea48cb974588c96521b12eb310596ddfd8b10459bef1e7ecab4ff60b3a6320ffc5b93e0b9d92e9f7c17c10474c41ddfbf776a46aa115130e62b940395dca89020a8488ac13058912e4a65d27a6448c349ac2af4709fc33e1e036d32f5ee7f472132636d1bddbcd8cb16f2ed8fd0306465f08cb83646df56e26613ea7eca96d65639c3e46edae2297fb012382d61786db05671940fcf9890722885eb6e9d7d095cc10160ecdc2e20f56a0f82105099f250876db11edc464343649e671144002baa307328741ed9031c9880129108fcd6b9d2ce954940769509365eb2ff5b0f290e342efe806dfbfd1b0a20750630ad7161ed2c6f451a95590b9652f547f1094e1f5ee4744fb01004049a0681b81ced42c57511432cc4afc9d794ae9df0d546921a34b2da20cbd782f91974c9793e95690191030e80aa05f587f9e405362dae1e74635398324437fa4e0a0eb69dd251db87304ee95d74d40132ca95401c4bf3bbe704beb708008c3eb9803c0ce30a8c6dbf0a94d4b934759b460e36b595a5daf1ddf81da02e33a401fff6773af05a8be7bb232bf503ab33935bda1c24caa9ac2602b3a8baa0fc52c20266da3dae928afe546570841c2e71fc9bb9ea6149115ebc304c3496236e82fb1e3faeeb4af234fb315b49ace4b6b34e4a785e9a66e85308baf295e698439e9d10a45ab0b7d92404540e754ce851682e4604f51ff1d9333318a6d906b6181c9697e983432814a9712de61122687ee824fd9f387f37fe9d7996a222db2214ece0a33e63e42c5681e8ce8040fa1d37429fe3a6fab9dc401f879be877efe6dee7d597f5dd4b9d69180d3718c896bc58c7f3a2649fc170e716bbd147bb0fd36f53f09bb3fd227faca32f01ca184312e07fb0c036d86f64b6c4c41deab18543caeb68c16071c9bc43b0f9c5d842920b27c2053f468b5e518ea9602a4311d0ef7f49d2387a666310cef7f43e839b5be1ff940acd18a0e83d04669cb3a35b79391a010d272d4016f4d860f5bc988f32ff6e38710f77c2466ddb52a25c0ebc3a446826a2186e26ba0782add7b1b46fb8e0d50492d5e68006bf96287acf8300c52454ac81293f91a488b7cf9ecbc614406f88ca03002abb82a269685919ea9240dc0c18b3f4d195a29452511b30c3d0dab4d5bfdd9f264714a30e0e493c1381083d99ff451eb95632a992daf20ee090eaa9b4a8408d32e3b49dd53c1b53be55d570eedbbe71f07bbb9171bd7c9164222692cb3fcee2cedb09d94d8bc076edad31b73e9d3c619db9118126435769a229a77b6da0324691759e204c469d67f43798018ebe072925d806c17fadf99cc1cd2f2414762aff047f91e6654d2bbd9ce5907a9d4dcd06937f303e74d48c3218c107e8ca8cbe0081150fc0f1553b1d713c5059aaa224e1b17f88a766e4ac7fa55c10cd4d226fec06f38aece768f6dcf0a44876f4b19ebab062f9de7970a8043396885748de3f48a610206581aa7b18f6852f69ec2a531741c7464885a97de91291c0b2a7c4a8919a5f9f6f44d4f940a75e3f80405a2edc761f60580e602cd613f385789f35962e29146fb77a4766eee900425f03b12ca6b5db9ba33b198c8f1aee38371fab623ca0da96d38217404c922925465f92cf21356a61df21200879840f3787939417c185521d2148e65791d1557c3419369d4a1e4d47d60f92abdb7c870b351084e50f69573b0eb640cd2d4ee2c9109f1307ecfa65566e11f2e943584d463363c57111c52e231f1db1c514b953ba1bc2c0f386051e578b931bead29faf01bd0b3fcd2bcedb8c37f336ccf8651ca78531237df4b6f4f5f777fa167f820589a072587bbf8c74458780739018e6eedd2beb38bacd8087d16d7cf6e04a6f136c8338449e536514a0fada1b2574b2dd83e2b6555a09b8fddf31fff9837be0e7a7c9267ba8d90db8887e63838217ae9742cff6c53a6e0731dd0d7df96b228bba06c5ba257f22dff94438b1e0d3f5394baf693dcd05750e65fcc2fcecea0fc23cb123b7af1ddfe0c875084a991d9f0044ed6ea3615a88bba6fd4b2a37e511d43871b731d8a60f7872bda139658dbfed46771704ec413a382b78f6a62b46fc7541983b5f8633a472b54b2768fe5ae880f265cb5907f92b4c1156d3c436d3d3f31d5c40d466ccc48bc44c9ca94ef9332751ab3e6a84a53e90d06a1c8898b6156e5b8b52447009855bfb2ae573435449ce24d4428c4a3bc93055b3f29ca774f89f064149bf1fa1fa05e30021946cf7af0671d282d8756aa2327b95965c9bd28840ecf1b1dfa2c2832ced942b036ba8ad89dc4a685c0ca4b3e8fba4d31c9b40a58f552cf8db0b7ff696ac926c61d25b8bbff7fe0090c4a01bbc5f270ce98ff687c57e808c8d57604ca03a4db8f932c86b07eeb13684ff624e66264afeb02cad1cc832107f062ee5da72e6591bdf1884083b736bfdee946672edf4b58892f2b53f003e7692be76be68bdb7afbf5455a87831f0dfbd814d377332559fee377da10e1a2476e74caa34da100f495c078bf38e8c822046717209bf5863cb6b6c7021c4005045b47975afb79da1d21b8252f3302efb8731ff14aaf8970399fe84420ce519ca8879365a842b5705795d525c161cf52ed19c0ee651aaa4310c98ac01da61b1a6e326cc47d028bc5060a4e473a58ae51277c825da3c6186456555f029c7ca0d69960e2eb23231ebf004650c46f68c4cb534c5462d3470cdbec68452160b8bca8951303d55bc6542bfbd643fda41e38ae7879a7a2078a3061c2d069d1b04b5994c013f08153c3f16f06eb94483a12361a6466a4108bb05365e5945d1a44722882231829e09075178f7c7f8f067260ee61c4a891253df864527fab21e008207f126b554c4466fe0e41244e004c47bb546ce558f28aa001340549993adc37a48ae31c5087643de9ada4784117539e271b13cbb14914d38782a0f2151d396c156f2da5358713a48399de36894ccb8d18aac33ba4a4539f444dad718ed75c5c2c9f83a4d8000810126ead27191e20c08e41cd070a5d11918282880b42174aa40ecfc0fbdfe81069a165d700179cb945c871947bab08b5fa087022f7486eecb550f3e0f7a0ae99020b44e359c8d67e80e279046dbc4d187f552cca06390c7c6b661ce00bb47f915cd92e5fb9cd1c03de428488d2a1e414cdf407b48afdacc7f104e197d2171953924a5af9ea84bf439c600a1258b770e8a8c61f69f2f53521069556980b178e5a7f8c0306ed0506a9c471636e0c3c4655abaf47e428f754ef8f0edd84eea3860b0c2d130c692e76659132a0e645666405561eb28c5e5be77abb28261a1d8321b4be9f117ab45f8706d285c6c0363efdf9647416241a108949b343754519d84d80386020629d5047a4555db3e410a045e3913339d7f8ec22e5b6c073773d261bfdef144375f5fbe1aaf8851e365048a73337a891cb8445371cceac8ca0d65891c9460ca5b549cb016e8f63655b5624950f83fb65b3ac57f2e012ca762d5cd11e7834635584bd2b0513dc679fd95dab1ace465c91709fe27449645193839c46b636cfe8bddad71d215635cd90122003d40ce97888b42ccc99228724e13f74b5f35e95ba3fac35e22fafb77bd635c801637c10fb498c836c8c50e3e35b9d84c0bbbd3ac3cab7a35af45891f73992c86a06d41d32d059eb630839fbbb4904f2271e31c906535a1d654416017fe4b1bb7b782b9a282e39f2270367492543a9f18bdc48895f80b925c69cf02d21efe5948ff00371244427e51f2682545ac5b5b44b30846e6bcf1383e423f29330841ccaeb2606459b11fb12813ab3febf9422d1463dafd1d1cde4df00be6b188271e925c084ea839114b9524f01ccecc7f9c541babe8b573ce348920a5d298a19885a0a718c95904f12627d41aebb0ff018d5dd536c49df8a8b6fe4476ac2771a644e2fb7f41f4a15a9e634c67a8f13ab90104904cccc827832c4e9aa9fba4194f00c5b309c89e8b495cb4a70419d514c3f54d5ed89a4a433d5567ff46eb9f9288e7d04f42be23a0f02e37eed5a60b3874d3cd0a34cd2df94e28910c4cb217856b4e2b732577137ece80f1a78024ff2efe8ff919d0194b06cbf1f49c883cc3ef679b3013d8eb28395a5b84e056a17c6646270bab9e55326998d4ff2dc59837b041069acd53b3d185c7c19cf4dfd69a7d21d57e1957867f6d13abf22c0523971d6502f01834223d1bdc8baf3804be8a13e172122f1c3f71f8a1c1048a722f1b21a2e678189374daa7b57b7a65a9b437ad918c881c33f4984d60c528c210c78a363001739634bc98ab8b3f3bb749c28ea16e94176599c073de5342539eff56248d03c35ece1e6efe39f42413f1e34f9732286255fd000bb496f378b97490a40dbe38b41c72bb7c6bb38411858aa247be2a0488f9f62d7ad2bc2405e0c2fc9b02314288a41c42544a4ce08e552aebb33e25062a273701b1a1a9a1bc36e44ab8b720f1343f129792214a30185c88e0f90160cf236990c8882800416af740f948832c8173eb28d194c929d50c370edcd488699baf9075864d30da9239e325e3492f19293ea660311ccbbb4d7802c313e113bf8913b6a64f6fd0c91737e305517292f15bc6d4bd4041f2df28b6c5d467d288d3cc68343b4eb9b3bb495387a0390a16c75df90fb0d8cec3834facd8e5e795e995fae75514e6672d39fa8d9c52890b46237d8f5fd0a863506510fea2d2aeff5593471bd37e315e79d636c6fe816d4ada064bceade348c362103ae83e52188851078f07055d09b7d22c25ee2610622b31dd44bb1e837464fd9ce27ed740d1db568445e4bff655b1b5e2b0d7ad651426c8a80e9aabd7e21e6c6c60a5f3ef69423b06668caaa4a24f9bfb1282d881e7d03b13975935bee4027e3ec59fedeecb835fc72475343d9d8535b729744efe66a483d312e825b6227d8f19f7f7b59bc7e0d7069f357ca206e281f086937e57a4adfeeb1988a2b7c7a736da6315b3282f23562c1ba5667e0d8c152c1fc3cb7ba8971e7fabf11829b00a41c13fa12e9b3f17005913b099d09ec91b7df7bb91df4e5c6a62102288fa14ee2ed6fa55f1ae79ce879e5b906cc63accdbe47e1186cf1ca4a0c00577803b801f1be81e698721af647a9e33d9332151b0a230dbea08adada70b2433df86031ff531791b99a0d29df63212201852780cea4e2d24f087f9f1aa249ac0003b0db2dfd3ea5099b98013145d75cdf9d2ceffc3e65144474d05767aa1e6c20857740439ad64b98b1ae313c077231509eaa350b9d3a7fba2e3aa63583cb4edf960739e9e69e5922f6a16bf04541b9c9f283d96f7274bd748afae49c7be58d05c0a6a7134f760cba8270055cb5c4051f1f01b176641d35ca2a0c70544fbcdda57af3f8849fd7e57cbca56a04b30abefa06adf4467260404dd0a62032b9c76497e001c0c1a0976e62b48c5ecb9faa5bb9d2aae1087ca88bb8846dfc10498b9c46f8122102b6732d659d27dd8461c231a6573f7aaff0ed94ac2988487a2dc99b82651f54231bd23c00f4d220308b76815c19d1c4f7aae733ea02d92eca5d1ee9613921460ad01a768db5705c4828067000c88cce6c179826820268dc8154fe89e09ae9e0932f5cdb7f3701a38708e2ab0d3640ad0b4f4dc5d1eee3f8498d48f0b362215f8a0857196244f0b79fc0a11d27082344648b4ec50685286bbb37bb8a6d12f23707c6dcce34b8a6c2ec0a416eed339681ec307ddf6b9316bef9f93b8fc308745a5b02529a289ee3fcb8d40e065c043fc2a7e44268abd4521aa4e97fcdce9d8a6318380692eb91880230e34464880c40b062c8985e0c886dfd70dc42a8328c39f9a440eafb687388cd883eab83f7b2374663390bb66ac0dd575ebe3e3cd38c96a48eba8f0bd541a1bcf4e2bcc1ef8b87c23e5e8cbd4e13b50e07ad7d59279c6f048f08c7b3de0c340fc1d97cded0018fe22fca92b220473055735920ba615530076fe6b7be628cd6bed82e069e9265a6f9019ec6d4ae462769052f3008d5b8927a14082df1323b28875b012092f32a4e05fd926a4cfc8b4ee75e252a7a3468d7905dd943d55d1fa5f28009b790d98b626440c0145ced263246c08cf5b0a3d0f2a6c3e242e2d1c3ab45d27c8e2f036903a2e7bccc201c4b3b244eaf0c35d1c79d8cb7a852a32f6cfd4e4ede28a38d6ce70a074555449fec05864e4fbef6f3058a0542d394984fce49fa915b877126116b2326e0c13bc7576a64992306e11d720cbc189028332fc2e5e79d532be818232a65bc51d58a5c39f7a6a34f74b9284b1964d5a079c6a0e116b47fc9c1f1f145d7b8c98f8d2b917af5e9954ac890cc2242a4b260567a2a4514da716cc1ff9955e4458e9cf95cdf42f38d8de212f3f5290d41860e5d624cd24517efe7840c6d5fd0c60c2c4f5620d01ed2dd45961db44041a6021a44e056c90b5da57524308728f3c90ba75f7960f16c899416da829c23fc10f22cc705f6ec6cf1b8af0df80bbceb1483d3cd1eeb8860d3f2b0af28c4c9c2026dfe2bb291d3c5c74e12b99e816b03438899192dd8e70dbeab9631d2d1157668ffbd8022a41a78550b8683075dd70abe7aa5993d4813916a8180c5c71ebceb83d12a0b30e05e0d195d979e50ad246948d65d4cd1a9c82ece9dcb913c1a75974e46cd71c2bdfce9ea9a8307ebb6e4a5fa0bed308b7323ca9f694626b5285911a6b65290b6abf4b055e582ab76c1bca674fb4a039dd6108c8750ab560e2df3bb4c51f00ccea1c97097417798e9c60950e2160898624f9d57cf6ca2efdd7e57518f4bb9c8a14399b1635a07d1f19a33c6df096c804d59384eb279a0b8a2b03f63202a5b86c0fd4609e671e1642c9259c9fc75d4858fca424306102b077246b80f90e9d03a8780a57f8dc2db619f5a6af755c03df0df6e82d825e62a4d6a0bbd510e0a144e343231f21be91f0acbc299daa44a516ce66e90197869a0243f723fd3bf68a75ec60aa31c4a233f1161cbc70e0e49763637a248acae9958383caf2c1ce818de52fe49962e76efb86c41f8a3f91ad937e735ef5b958bf0a6bfe3cb3e519ee34f6345924570e6c13438924b8d2c7e9a979f122e785ab5fd19b041ba61740757eb0e500510936449e22152f2cb9da1b6750ba90d6cabfe5586aa1dd53791bc554e96cd9ef8cc9dba128cec1840bb2c63eb1ef18142034bec905daac6561ff06d80e2693f7d7afd8a3d6e049c6c82c52414b368aaf6a61d5ffab915fdbc29ba815fab8fb4f988b20c1bec0d75b7ab77692887bf187b0f819fed0426b7686240e6abc44751015d35f406392c03307f6fc2c2ca1433ca6d4eefc698b37a2ae1140fc945dfa02a60e1fc7de3fd4406be6ba5ab9f2fdfd9d745a9e9441b3909cb34451dc51ce5f0cf79388b2311c2d8f4d02ed47315447f080e135f9658368937552acdfd5b236e6c1edb6890df38a41c001f91f8ae3f58b2d803ce02271ce4a4471f21f8878f03f06bbd060a6779b543145b43833afb770ea081a7f0ffb5b35ed606c0f2d9204f88d2f61cc040804a077e5d17f00718206c9a56c28004b334a445fc5ead73bf5ce16eebc8c2ba9a35d1c03c7cf9769e59406d2f6989350b02dcf5aca964becd1725634c5b703e27f627f8608dfe5bb826a35c6ce208af75f6a6b841b0dbc2587950ebf24fa114691455112f05fd439c2d3a6d18cf08f14af39ce02548b3d38fc226278154f4f6b810118b1d23e0fb8cd5189da69d53caf3900eb59b3cdd85951226fd381875685d658504b4ac47ff4517d4ed0f30d980d67ad0e9b6cec8c9842273f614580007263239c369877d58c7b2982fc148ff7a6f491716a85c30789d5785f7feb7fe4eff80419a41016197c2fb1518a6240927f370c106105737a255ee8afc973f68a67941ec8d3b417f4f040657ac2c205fd703180b82c3b1ebbd1ec009d8166cba120ac96821eadcc7e928cd0b9984ad62ca08558895877491ae315a509f6493f40f18ed28bd73f948b8fc14274a67d5512e65912a4b882cbd6b792c80562bef9a1dc3c52914e873f823d5ea2d571ffda963af4cce06693525cd8466e6cc613c57ee6356faaf204f617cb66020b09afedbb8532b2a93a65c7b823946a305102c45e43727f7b4eeaf1616caa414854a1a010601dee5f7135f65643ca00ba4f564a5b3279f5b0c856efdb665c5090b489d50f65ca4c069fb8dc2a058f9c46330a7ed5c376cbd66ad3cbf0baf4dbc1993d9c142de560dafee1496a115c30ca12191835eed6aedcd5d9f7f1a310d8b764be26488977a0d510dd803819acfaa733da1fabf5faf54e67987af72b15dad9b4538aa0cc977d4b4c869c159c448245e93810ebf250188f220602d7dfc7e8241f107c1d76cf65e4e728361ccec06d85b587805289fff8009d28a2fb1d696afc196e0aa7fb236598b0a2747c105cc9831ea2990b8db572ec63687e532690d2ff8bae42d5fd257440fcb35a5f4b83c283ad768c73d691d8972078a6b524612ee25862727a1c0972ded1763259457f74819326c204c70f570f79e50c08d1c9a71eff46edd54d905128f956f8908bd4169d44638ad8bd822b6182d68a001a976a217f40470ee153c0812c0b7fbb0756e5eeb60ca8232b1c122369b416210c31f014ef2e32d902c3143ce95922ca91f5ca6539674445b2ff9bf9ba07f3c1154e2c097d1cfc9edb43a1a4a70355c1417577e4177e30df2d981310e8778df6ca21abe5ff094608f8b773cb4c163a437f402b455bbad0a79570f8a11d9f080f6e20f104c992d03b5c722cbc158a18c06766aff9c940be5948220a764d6e213b9e5529724820e3ab2afdac44db8f351a268b0a0ddbaaec64554c07055f1530adccf41a432b3337a1f63a52aeb41e3546f3cf1f47c099cbfed3ad215cc010517f6189b5cb92dfd0d106aecefdbfbe1612b65247214be15ca6b9b838a01000869913ec20d3b44d7fb37c1f6d07bb44f4fa72f52724c0153700ba208a49fcd74d044c7df028dd1222143ed7e7d19b3566e1f13b096a5ced78b208691ca8b54e83e17c2d56f208ac60767010af513abf7a8cb3b055e3ab172de426a89b31f54d18ad17f4a6508a2ea3f51d4011deb2638d51b34070a1e486a1aa15ee99d4cfdc7bf930c2df6178ee3bf2bc86d078fd7ca9bcbe50ceb1618ca74e1d096f9fdf131d15d343cbab3d338f4a1f8c40729dd76290500014a89ac4618f781b48db84665c88a31b221077ae6d9c5dbe6ba4544a90605a867aff37006a1899e5a9bda6718a5d897672dea98a3d3ed9db087642b2b30096237baf74023faa718faabbe49e04fe48b774eb9953dabb74cff4182125a7d8f650936b6b9685b721f3e91c81be1dd0fb29d00fe0bfec7e2c6e8b00e1f688857d266ec6e0da110ac35697efd3d3e8c7295a784bf199c79b62663c6a1fa132db5d065cd4a83c16c78beacf20241cf391923168ef8903041b324dd7f64087d0230ce77beeb795546f0408a8ddf793f52c00eccbbb4b8729aa3bc50f7af2e7b189369d87d3c56da58304a41e394b69e654df2a402103e6eb1b264240c61331750b4c36ac17bb9942c3eb86646dcfff18100cf1ef625a851f10e034b1b1492f25d0379410934decaba19a48d6c07224ae89b535a33b3b9aa5659c98c05c603060a30e4b861c12e592358e1348dd126364abc34fe12ab019fefdc90ca858bf4d2cc5e75bfd345ac545b9e18a5ed20fe0e0e38ad4dedbf46d7037532012cd5ab99e1c861194bda7c1d6e71c239c8bbe705b979000fc7317f8416b20a1571c07e9380b3f22f65149354fa55c30ac4580554641d14f0c2ffc3980c544f79173a60ef47ee276850bfd7e8a00fa58f5d38de5132298961b97aefccdc652237ba4c4d69fa319c3ae221238d86a8720e5ffa37213ab368bfc3e11dad251448be9a059e40185a016ccfd9903bba7e83c3345d0ab1c8c2852cff094b22cf36f10281d47cf2cae4028151b5750cc54467deef0b625574a1c776eae6f309ff8fccb698436b3d0c1a99da5125418aff6ce84e501059386d84ef92be460f4746a1a214a5920f44c64d40d8a69a8ca209ae74e91abe763a45f8c59d938383ab1334b356222ef80cd3ec48fef3e8d80c2c0deecb96c6e2c9ab7896744ba4c3d851422bda2e866c4bae7252265cc1efc9b71f4af7f3007783fab3d9fde21244f24e7800c8a7fa3ee6ff27f0a1d256690cfd8655ecc37fe0f46aa6703d604ff3d222efc3e0434144d8831bd43863202ae41ace64d98d483e5b141dd76e5504292336e092c9b20c99d0422e07c6843579334f5a7f34a5839731116b05fcfd6e3401b76f3a8eabf9dde00fc3412ce4c996c272c78afc85f90f3698e262f3fe6d384a0b319cf85a36dc0bd4218cd88a5563a48d95989f467b6d656031b142f690d126c239c4e83a988e25f963d2c4093a4923574b6fcf8e8f1423db6e7d5c449aedcf93a1897b254105bef26fe54c9ba936a716ef91aced1e60f7d8facf36d54237ab8f72ca0b264ddfb2b8a8a3180fa2446a9438a6e1be2533f268625c29c6436aa635321b89e594c38f04bb1d1b53019ebc49208d0ff7e85c2311f53320a9126592d6892a501767f6497509e038b9f73bc0e9d294ad137d082e4548e4b0501971881998e64f366639c1338bd04cbc0cbe00e84489826f35052748af1d321dd36c2c9cd2cf5dad6886ccca4a868de8abaff5aef330ec5fe0900ca32a6695e26635f0ae8f8a037fc7f17064c08a7b9935bf9d14df98d6b81427a974274125e04cd59ac4d03aa43d1f68b2f0bbc37e46bd706e8c63da606aa15ca431f08ad1aa645b1c64d18058c416e35b7103d830538905beb96fbbb61f0914c01f33f3d6dce7cc828ea869ae1d4c961099d04d33394d307550fc70edd9004d339c9d76f4a582fc69ba0fc14b258d9563ee489b78137c11bb6090a73466a001eb67a94c09f1d06f4eb187130c94d99d6921cba3e473c31fd9acbd611a04eecbdbdd036d249c488865c1652cf029cced8d391cd311977b798473e1bdba7753e37b3ace3d9dc6054f5c76d8e6eabb1921e0b96454ebb1596d6439f0954983cb89be01a05b6db437d80833443882ea47d65d41cf30b05c9811e324abad9ce4e6be33708dd5820324a8d29b8218a32d238d6cd824ba6b8876d88797d3fb41259b2c07e83d55b400195e8d19f3cff0539ee553a79aedbad90def4447a1cd095b3a84556eaf7e7462d06546b1a19b9c3c5a1f112e47f4a94debfd252b79dee0c39ee1f1894d0c5d1860bf18eee7dabb12af6e2fa9bf5e973f1c0063467eb6ffa20a40a82ee09cc89eea61f11ec14bff0f2d5994b01cf57024ab50ad3b9245117fe84e5e55364d35c686643104d089e6cbd2c0bb3e4c927517a8eed9c2dce4e9c5b28aa375e315e52c5656788b82e64501ad2a31a959736a862d6038c811e39b41b66215af45c4e5f1709194f83c836558328b9deabfd391ea1b7b04fc9bb52f14df6222b16836f8bfeab0c134c3308f1382cb44848cd34781113931df3882c23803f529d68ceba302e5c1045ca73b6929c4b78572cc2ed9009e8cda53273d4a38d911002d6101a6a7407ab502a062e716fc285ce659b0e760c593dff083d83fa52e7ee398ac65aec062099673cb2052337c6a565fd24847553a38063132207508467976f96a7f49ca5936c7a64c09b7dc699ad0a8db40f7331cfbc700af686567506bcb13f6139b253898d084c174f682b92b0a6e1bb58eac8b08ce16745bc37933613a437ad4062076c15059e76453f115520da55493ad9dbb01f916ff157067dc52c61f5ac5e385f364ebb9caa79d804e45a3a293acf3945580e5b4880b41134bb4a223ccccd47b87c33a99ae242ad9b21b8c2bd14fd7e36b1cdcddb364236698410b2b7dc3b9211a911a110adfaa15540246995cb89c64b0072f400001e66bc6f72a88390875d8d9bf85d9c8f9e14933c93d24931c993d52c0605b3430e3a7018c7616783837edecc7587dd9d568753ec3af0606d1c00f686f7606f3c87fd0360b1ebb031a7b1f33e58d4056061fe83a507c2ee70179bc34ff69e86d5e12f16c73d7bc2e1323b3163ab90930dcb89a0de6035e8e1400477975c11dc1d7a38bc5b385c626b6fbec1dde5bb85c3e56f21f470b8dd6a4f76b771603acc1fe4707790496028ea4a2325d2ca9134924938da6a8fb2b0d9243b768e4bfdb8ce72967bb383e6ba2926e067849c91cff972bea8230b58ac6868cf1f718c5d7924ad48a3f6a46c7510f2f8b2f0ab61133045cae6398442d55964b5450b88705d2bc9330416100d81094666089921c42223c4c384880a339cd0585501a50c2b34a36b858510da305b5854018428ad9249a042ab9fab95c5cf17555055cb078b1f33aea0d2c5162ef0e2721112c20d8084c0d201478421810998d0107860460cb817a2265c5904410c66a48007680a6940831a2896a7247ba3230b58acbeabb1fc9c3312614c22b9c16e91f6e2aa83905249cd3e5758242a03e7b98361b2c73e8144ead9e9319bfdb237f40c4642df752a7b4a373dd3e079e379079ecf42d86728749fe1131c9e210bc7338c92c3336ce9f00ca5ecf00c87bc673865e61912f1f00ca900e01916f5f00cabe478864601788656743cc3239a6778c587e7b812c073d4f9e139ee00f11c8fa09e238fcb7344729a31898fe7e85380e7a86488e7b88400cf918910cf11a8c7736cc2e339060de0393ad9f11c856a9ee3131bcf9175c3738c82678e2d3c9fa3141c878278aeaa6794ccf35b9e3d3ce7b5aec19f370b8944b874c953b2b2a707b554bab227c6e60da3e6b1539b44ea98947244ead861b794bec77c1e29d9537ba9ef12d1f82bbd559567f62899ab2fa64459adca120847e1b0e9c6edc501470e3aece0cdf000801e720440078d0f02f8c10acace23173baf9cecb5f261af9d02d8ebc810f6e22180bd900861af9e1ef64ac2c35e3e03b097921df65a52632f264057932054b685ebd68cabf66eb822edc937016a5589969e299da7a7e7eea3e550abe8cdc73197359eb55c31857946617a086ba4518e79761a63e55066652be31e93711957b2576704c4dca517a84556ad9b979358b0776fc1a009ee6a402b582103a1afb3addc52b03c8bed1612a99b3a823b3dbdb9317753dd21a6cfc1d84d7187183b4faba69448ba067ef29d55e247eb3035ced926ac04b8a843a4abd34044d802c3cc3923901a708d9b6519165958e089f1610d5981588b3574256369a108195684c497ce56afae9346caea20e4a5f8475b1d84fc75e9839a298bb62e9d566197bf9cb42a6f98bbfc3c6a157749bafcec9135411c88cb4f25adfae1f27349ab0470950f979f40ada2b9fc6cd22a1d979f41ad0ac0e5a79356e5b8fc146a550f979f4f5a0580cb4f56ab78b8fc8cd2aa99cbcf56abbccb4f29addae1f273a8553a5c7e4e69550e979f44adc271f949a555385c7e16b5ea5e7e566995bdfc346ad52f3fadb4eac6e5e79556dd70f96bd52a1b97bf8eb4aabbfc85a455a9cb5f3dad8ab9fc95a455352e7ff9b40a75f94b49ab602e7f2d69d5cbe52f26ada271f90ba855a7cb5f4d5ae572f92be8129247b286e5f27347d6c85cca9b9ee7aae579f210d1182359692467e483b0b347cec80361a74f7bf23fd8a9a43d7901d8b9a43d791fec646227900e3b9bb4271f003b83da93cf61a793f6e47bb0530800763e694f9e073b67ec8ce2d9d96a4f7e073b75b033073ba7e0b093a83d791ceca4d29efcb5b3a83d796b6795db69d49efc0d3badd879d49efc0d765e694fde86bd56f6da694f9e45c6ce9d2358bec483e55348b07c4c0f96af9104cba37cb03c8c122cffb204cbd36082e54f4058dee56a82e54d16ca99160be54c118db17be9d8a066d9326ad5a4adccd228ed5df799b2a2d010a4801f8671590dd118946012f3c9620860b8b06072c564c51edd46ab9dd8637edad61814d06d84863160f9b6d2aaee027ab980b020c21aae15164040f8a2ce2a47aa0c018a0ead951321348ce1051552cbc7e70b587892e510125ac3163e4260b822cb566358438b0c3958c2761119b58109501bb23082c6c25385b6ae38410ad0b064bb0168fa44c1115d51062568a081c9e88a2d884181bc20840617681791901a92e053740534a8202b09c9d5152b2954280cad3690ba1610194e362332a8a0862985c6f004e52344469397160202e511b2b2840c9347c856c9d328adcab20ceb6d2586562ac38ea8167e3472d5caee41cdb2eabc48ec1171102ac5500ba0201cb91083504d186ed1821c60d85156d4218f4d8ccb2e31222bd854b2c2f25c368bb4eaa655d00b2c4f59b1c7bc2d545b591c210913bb5107dfb427cf71f3a75132f6c95dd96a4f0e61c72e6db52787da939752da9394d59e3cd7539f9838f2a0b6a41c6a159cabb9238d64d720a0a82567209650688280a21c75b03c8b851f8535839d0d15971d41c4362d5ea818ce0eb9f0021618764c402211402834c1dc7df4ec494ba9d225a271e9dd31db581ab5cacaf469151379a575044b7984e5e4c172f66039956059ea5aadcadd92522e7b7f302a795a95b1978260ef2eb197aee4694fbe658c8a1de22ce362875d0db427df5d89a4b3009113ed4921edc9b716354b1e2ce5258f444259d4d2284d59dbfdc99485e5bbd5aa0c8fa4b4ea7167cefe6902ce289ce1519139e515aa3cc4c7591acd3981b63842a5c90ec6a4d1f5f9ad92ae767fb2cf959419244a820a30768db04b2329b13beb757520d119ace0798d389f0da77350383187843373268ecc699c98d35d2ce3743a61a1c6f7156a3c15824f789e6a50548c61dc31ec5c8db08776c2d7fbb4a53cb17d08ceaa458c7acd3e41a462eda4d3d9d9d01b6b46339285508766a706618e39859c30ec8b838b1dc60e322ec08084b24818620106188ea045a66146c030303029e30535b8c115b870f2615bf0c2145ee0d15c9ec0630c2bc688c2e2a40719d8500a625159c20595249090b045155ce0842e58d18331a4400b6284418c328ae0c4158a7a6490832e3cf962e88a1856645a9635c9c268031762a4808b308c30c5908b30c62015c127c65513e1783ca7cdc7f4e2ca68c216c050460ebc00c6b418eb8ac0ca4801952f605060100630cac8811788704b6bf1b4390a15811d61065c848155b1022cc2c0a68802164608c0a0c0200c44b80fa1141de5748c67c8b253164c75bdb77ed666d4d1c778b8719c351b2cd0833a32007077c4208fd267ec3e11d247cb2c508883c69693cb3830b0dcd9590284b59d6a0159d32c5611cb8855d34be44c5f635dd6b4e6e51db88be48c100a556b51115856c82b86704701f77d744f41eec81db9237770ff2a2a2a9a2c164bf6925ed24b7aa7777aa777703fc6225923830067fad7cdb2085a9656e07e9657e08e45b8e51298230a353ecb25b2451a9a134e14842aeda46718584d240c5f1ac3d3803db4a82396a22aeb51a38ea89a3f451df1f0321abc02c32c703c49d30133158ec708009fe0782ef2c0a6206afce105f208c029f6e821ea888f42e0f8beb971e670d47ed99c05c97e8239e233f6797a823ce02d029e200f88e3af27e62d2a82174c94704513cc60f4e5be17a26a7862993e26060cb83006dc9a3d68ac6d9c52c6ca5dd48483057ad0cb3670f4f20b6e1c50355e645aa28e6c62c19006eee70d438a618e7e963db8a8a30fb1e70b6b180ebede61d9f3c4dacdf2590e26a20c33bbb20ccb849e3489d4320367a4d751a813f29002144da45b768dce75387ffa58903ed63246ed433cffcd79636704c49777ca80421a87c833ae1cd1ab0873340eee47e85d26985c66a1e823ee13d88968f809221547a8e3ea232496a793eb4e5edc84a2b1ec1420654759ca0e3b2224ceee1089b12bef6caf9fd0438c31fe6a316a50de47936e9edac5e22febb5d7f2d25cc0cb4018216b66d670862cd83ded5575a01010ad8a47c560076b700b177881616baaa04fed5d9b5763dddddddddddd18f6d158a39afdc9b2938264c7b293ee8ef6fa2d63d4ec10cb4fda183b7963ed8c80d9e5ae10edf5f38e1dad9aef0bd1aaeea1bd965e5fd4e3931a9f2b26a750578b22d297455528d4aba137e367abeaf5d9d90c9167543c6b1f755da75055278e1df6eb12698cdd1412f2d7af0b45e37927d75eb716353e6b4d068d744a29a594524a29b16bca43cf9333f25e6351b38765e4da93305ead3d99b51925c65258c43d34a10120fe8486d59a523176c108b3d05908753486edd51b351b28c4915b08c7c3a7b26fcff9a24d6537b5847cfc0ff97bf393dd1fdab77b93ca6e7acea7fd2695dd277ec45796d287d47b7353dff2f89c4fde7bf393a9585dbb38f2da5d6ece777fb2da0286c9fa90337d69959033fdcc46db62696e3dbb43cec4fb0be5cc6c21aaf0235d7b862d9bf36936e7e3bed9ed1967919038aeb493ee8d056e1139d37f8209f8392167fa439880df7626e0475a691112e16e9cf9449eae67f3e1e92cc96ed76cecaed9ed9ccd2e141137e61e6decee891ff1dbbdb9d9bedd0874a19ca167027e3af13af1c6a018e1c7e5c8da2c8c9f66e3073b1b883b28b331f6e815be6e8e55707f91e86b2c47e2c89c891373229659c185138ab888fdcee8070b4b60024faa2f15f2f023654f9148da8d6855c4f1097882639442118a1227381ec6674805c71a639c2b284aa44423283e78428c2769994d000d9ea8b2778056c12ce07808bf0fb397ad18b6073fd8b5d743ab503c5a307102ceb5fbb19b0658e25cd30594c3584a8d44f2217130d6d8596014b99e97166b49af3e36a7fcb4fdfe753b7d20e6703fcef9eecb4ed69cb3bdf856e59c6973c49dea4f169e473ca7b108eecf24323aeddbe69c2119ee9c9611ca92fc9c5ddfe768116b42218e2853ac20072b3dec6c36d2cd4a601aac9dc2cadd60ed50c381e94956080dd6eeb5b7bdbd6dc7bbb3e9b7934aa3a1bcc61272f1c50ac3532fcf9eeddcb58b5258d2344ab53b24c334e3607a730ec62416ce441a77e7ded94983a883f4ed1349d4c15db33992eee4698f9b34883ab86fa4d3c945c87550a870422757046b27d923324cb99b733077929dacf648d76ccec1dc1d92619b73b076d9d96c0d6549ce6b36bb9048c436f3974dcd0bb1bc1a14ea22b68462d0167103bb387a6855bc8c5e0fb2571602e1c00db180fb5c94e29b4649f46ab03d54ad2738eb09001862418435d4937c7035969d308c8491a2d8b2b95d520a344d8a0f193d10c30ad60dae60463c46ca8e60acd37140614312708621942324389f66d39640c2e8142698b2ade34ea8308cb6308e3631569b183bd7344dd334d2b353528661d8491946c22c8ef6344dd3346dcb2ea86519d16ab592229b12049c65dbb32c03234acf4029da944a0555a5673030acf40c76128661188661dbb6bd008bc2097c30b66d1b866118866ddb86619b0c5e663da1ba20a50b53b64ddbb66d8a0edeb66ddbb66ddb362e54e182151cadd22ec5b66ddbb6699aa65ddbbc4043a94f282ee890b870a4aaa0025c4c3106186450c902c9a7493942e2051553447dd1e40b2719767991856e8a956dca95ba021c84a648018b2aa0c8e820d358106f00862388c10c56b820b28217530803730186793b58608108445f48c1e7c3bac0981743c8a4c0308c0667c058a6657305394a38431857ccf0e20c52bca8c24e152e768c84269c4e2a7691718e6ad8c669da765dd7755d5aa665d7755dd785aad7757931049cebb720c88512c04004255e48c214b468552f743003f9822a30c9228b33ac4cf16554f042c78b159c8ce816c618c0168070f5e132ca533152d671dccdb6c0b3851e7a8555c54e282d38d1c2938d0c16d235d4220d0d91b41ad8601b8323cd132a0b43a41adbb66d9b142d70d826a136b52cf06871ea7a420d65d875041306b5a961a1476619268507a6ed0a4352689aa641e1481878c0108b1f3368284c91941e16178c11c48234445185141d4ca18a31a05085156e2767074098e20738e0c215d8f00529408149145bd820052c184241092ae002262445e754061a9717a7c97291509b24ac49daa6695a149ad0064cd32e8651707224648522682ec8b22ccb32cc0a556898c6936556c081d084d3c350a88b32bae042c5e6173ef87083962ea4a069475e74747002253b5860e18b28567471c546045296655996655de0a062db93520a125012eaa2051c10b24a83aca402cd0760f4a00a2f4059010ea060ec01419fbc3999949719193230fa8997cff9e69c62a8f1fd458d28286bbaa8411996401686832b88b214dca08c961667b0852842a42dae7841b449a981107ae8164b8660c44161054f8060c7aa42129650810a478e3c48d232ec9a1b3675b4e8e132ec0a60f8d42009459a104668018f468ab06e879dcd19384aa18f366b22c0d9e7b74f2bad56061ea3ef461e27f298c1e8fbe19ef3cd6967864296e635c8153c0fb1a4c171e278b308309189b56b370eb5d7b115869a85c423ccddab451db206460c60aca01663ebdee4e08475f4e1b0b4eaa983d069c214581fce1042dfa9838891c912305a704b01b937110c5360d0fa7076d8f9a60401093e1f4e008c68a81766388a9cbc37348456d0fa70585a9ffcf59c2b8831d400c5e7bbc1c1ac7081138f3004048ebf22c448db04438572869b45d508c71e208ea9b2240aa3ef3a03a8064b3e9c680465c9b7b37d37da8a5e5746b9f91e5230c24d93b1c50e84be1b1c19265081237d8005a2568c2d050faa587d1d07650dd6029f528f29ac5a3495b6c029f0c4c7a19cc34159738141054af0a91c943559516c31b9701ae401c590ec8c338e0e4990c7e9825f0f291841880607650d4d176830fa5e22164a40c1ce8723a31cdde0443220810b1cc0a802498c30b40e5a7064f5c9dfe0c8e3d42b5f007df2ce9f6a1b07483842d1472f4eda0e821461ec7c14bbb0ec8c301041e8a33004d011fa640e4435166a5fd2e88888b8c21c7d0ac4563f0e45a24b0d473eab58148fc0b08632f4acbedcab1d9e1e1f20dc41b8331f04e1073b2cdcada1bac2ddf205b54f6b602fada6107d3472b54f54a860c8361b9cf0403128b122f4e1c004dd605950c2fa70b2a2938d2f90628bd577d91b183180b1fa70608260764d4c76ccf9306baf1a9c00f4d1981ff23ae98f363bb549449af99c8f0b9265a42b66f005d077739d130256c181714212a324783ee78b36c8107806bd220f8e9406c79b95c04268b046b2389a14283f00fa48db334bbfd924b2d39b635bf121a3cded24083dc4b0b3a133d316edd194dcd40f79937282e3493d5c68b1fa220ca2b8a28ba34f3ee7fb321b6408cb19675cc1db214e429b82336a87480c82b682b39b8d1cc142da0ace2e0b3f92465339726438286b6e62145e9cb1e4bbc1690123e8831d044ed6627db083803664a240d9424866b6e7830ba820f4d11b38286b5244349e5ce80421e8eb19684189d17783eb1b61221263cb41591345062c4c44e20973c4cba1208b9eaf313cc581835aec71d3404c282308ab0f67cb42cff79342820a8eef0825c5814a8b9315e5c0497b93430d459f3c8e0e56187df2fea48e88cf9edd1cac439115168e8e32f060e7831dc40e1ed73da839f2c0490bab58c10ba16fcad5e5d5032495720e96345efb1b37d89049c5d4404198171a2717534b6529c18ea3106e3a94224ee7442d00515008c4c46a96bf7e1dbb74ceebf3ba5a7bf3d99dedcdc9b54a7e6ad7355bad2341e8b615864d46cd5b1010556a2b6de82d146b25b403a2de2b3903a904ba96ac807a49cb8785125a5d412b9e0c0b6aaf3127ef2968415a8c41f30b3567ef15ce4a1d57bade9dbb3058e331a1567517b1204c28cbb0b3dc8cc2117be9e6ca59cc0926d4aa294213c7782cc8c68b09b5e7f5d01835634147419893aed1be780dc91a088526dfcc570b77be583e427d0565c76ef67c8581b1156e2c0adc8fd9b489fb988face13acc87f3615d47acab0c961870732c31704f9501e6b029707345180a302c763c486284b11177845dc76277a4bd8eb7dbe9783a88eb52b13d773b96c472c61967b4e1235d2351c8937ea39d74534048a727dd9f146cefdb2ccbec96809f9cf7d1cd457dd7d3f9743b1c4bd6704572a669d0a89585fb5d93f6ba9b620550479f2b9235dd916e870d27dc21c17d8e2b2a6243b7d3acda057540dd0eee77162ac4b903c21dafd9231ccf017140f140b81f038c0358c3c199187b44a823be2f6500650da0ea7affe403dc64d40863cb52761f0db1c0b9a78073c463b107cffb7542383347e2744ebc5e7680c938af167b4a29e5e385275eb550abbcd03346ed4f2ab53fc5883a4cf4e7849c89e7c12d79b08fae655088239b8c709f92516be813e04c3f733534e8c2da1360116e0d0c8d2567daa8ce434c835a356faadf65b888b895bc888e2e2223dc9732b8886851f75cb167d4f6fc670ff3402fd3200c210f79acb3b367e2a50ca0aa515833825221164c58e10b5f462425b2a7555933222969554ae32ea256412c9640a56bfa03e3b28289709649705feb143035234d48d2ab056d37b544fcbaa78074c78e75d784648d66a567fa599bbf6eae19953d5ea1ece1ac59e99acd2325e92d888464fb75b30cf679f3296b462425d8096792922786c433f03c8d454e88826b6008c5890f961cad3aad33572979fa1e59939237b544f7ed40b0d36ba474ecdb35f2f3a3748cde88e9dd4dc9370bbb7658afd3a03b6bf74cce74957a16767562eb0aacdd4c5b34a8bbd9cd1aa6939b4488a15e977739766dbe139235dbfbb448d6b0bc4946b2a6444f3a22c2dbce10261dd1d92dd15cec98e88fe51d864a5940689c1e292b0ae14c83366c93252a583ead86b10e487f2ca7114a855750e1c1114b9e5675c32ee03e0da282fbd449d7c48f46c1bdf5b4aae7bba89e6c0a48f7d34fd788cbbbc3efea9a7079f78b844f875d11dbd1caa690908f9f2b8cad306d6e3b823c48dd31d11fb605c999de845ab8ef62b72fd44c83587ab267374fadbdc8c1d902dbd372b0944fb0944b8890871590873c4f175cd4ac703f532c706bdc141c4f3b9bb81dc91ad210f7964349caa46d7c84330684fba42359b3695a0fa98734246bb62339d36fb959e36ed64837d7ec46d290ed15a691db7a648dcbfbdb91ac717179469d9e6b0f0d4d3bd5ba1de1f8952c15f2428538a584ce76fa161c712a9ee5391fcb7f94ce726f7ee26f4e2f3dde1f2697bc05d928a1a353fae9ea98ee72a9919c69932d59a254bccb73bea254bca9254a37fd47e9a6c79beecd4fbc3f4c7731ddd265e1861d13f03359f8b158f8f51875be08c87d3b7df7eb2d2d1d11a615a6b046d214794947ed6dab0ea2cff2a65233250db5d767b124a20e6208f7e995aed98a364e07f7e991d4b45a5141928706d1a022e4e34957daeb15ee6f45b286d3e9997e5321ee08ee570d558ff24ec3b303671a94250f3dca92a748f214f92c010a12c22d5934a8c5a8dbea928ec2a8790b3aea96805f09bb8fa641aca885209c690bf783644da4272edad30a779765f6c60d366452313550302f344e2ea696ca52ea38ba91b40cbba6ec2ec270b0cec37436b2473c14e30203eae8d317ba84a8a32fa9153047739fa4cfce8674aebe6a2d2df1c668b567f1da508b14dce7a6604a84fbd552c17dcdd22098038c9ab12698a2b8689f8827a26189e325aa1973d2243ba30d2b1c6f77a1664c08f79d14d138084b19b76ddb36a895720ec680daebb3d8fe5eba22fa3617eaf579bb6bc3a2652c770b92a6ce26962cb62367fa9dd580ac160473f439ab590173f425d683fbd407f7376c09ee6f41b2c608d616a46d41d916d41f76311f1d0359fd45cdb10708f7e3942a746990173545839b8b5a31c422c80b38a6458cda2c9caf2224ac8b08e6e86fa1661a44843bd3201f3b5a0b353eefc0a6c6913911a7a7c643143c2e204314924f384a393529655b2127dc50c6d805db523a8d5c8bbd8928e0b982d0779dd25f9794f6249d4259dd3316d492345ac19115a39d4aaf0c6a4f62a106e0590261535a29559d9fa30e423e93a206e0b20951cdf4f34aa0f624104030694fbe747a0aabcb6167e3e2a4749752a9eb0ec4333d764aad0cea80ba19f4c305f0ac61faf25c7ff8c1ca2009249b4820ec070d084b97d020ac74a910056aef0295e37a5a855d0249ec3f6018f6acb3c124d0922059d3229db48a468bbdaacce9cbcb61c5304c00974aab6297a11a411e14f2e88cca15c3c0c09c4e8eb23a7a4aa5eba8118d12f14b113da257381d2a459e0ec99afee43b8a713dadca346876361817bb237878a6444b3a2222c6dec29235edc3b346f35c753ca3240f7d07c45dde46b24602c9191e59235b7246eab819853acd35fae13e5c97037133aa340360a511504c8d980b0028e6a898ff706bdce566548d7737575ce3b485dd09245bbae8f341b0f794f6e47b88dede28c743e9156100516c723c1c92ae0273d0567b54885a45df759c4f8518e20e434dfd6861219d746fa20ecc20faaedb430a4610faae9bfa71dd5cf7fa0dce0ff71b9c9feca66b2496e77c32cff95aee5cc9233923df45354b2369a4598e079587d3fa03d405ce7307a80a3c85a89b769fbff2a887684fe9209a4a0721ffa56cee294f4c9c279227ae13c73371a641b96219f99ed245ad825cc0f25d05f280586a1a3d841886bddc5c2b8d2b26607a5b6650011e51ce761c0f10771ce538fa2454c1f9e81bed3aa743bb67f4998d69a1523311c95d16c1d3a74eeed8456d90ecdd618744f72ccb78c83aaebbe14a4520962ba84743b8b9c1815d2082ceeabb8e737f76388515c761a7040aa2694e3945a562e79fe938e69c734e6ab23a261c4e71388ec7ce06071c4e2767b2100a59f860f56911b4c25cf61dae8e081d2e809b1f4c00366b5800a7b002e0b0b30180149a1e0e3b9b1eb2ec0700de67129af7701fce511f6cb0cea2d63866218e69a15233cd69381feea3a3f08424d88763a79048855c6821847d383da592835dc7d9ac61ee182a6b612814f62251d88294924f149c1c451c1845818c23a80c835fc4c822d422f219455930070606a46340ba8548ad005540fc007964974b7029c5c520e610f290468039e473e3b924ea902f1dc21e3428ea904ff1441df231405187b4116f2898fbe81c017844a223470e1d2fd2aa18f14d5cc59ee81399c4265127eee408800e20a326289485982e19e243c49e1ce8c90361a31431b600462431f8e5a5110c70791ab4e3f21c4fec01a18ec71e30ea30c0e58bec786e9c691096378ab871031137d8b0b12173009954a762624c0d5803f5a160608eec3e0e3b2260302a7b015e680c41e3843ab910c0c52484a9a5474be55159608eec0338ec8860c1a8ec3b4a5d4dc7558edaa05b6923dd40d26e68d933cc6217cc91fd1e76445c1805736413a39e0379488951c7813c1ae6c88eba11c823c21cd951bf1982b1d9953f58d646adc29e5dd98359c993835a83e6ddd9749788c4f43376b69769ee830d42efc3617704ec14805d1f4e4f23476df69b1dc320ce7c3866f3c434879d8d0f37ae6e8ad0d81cde03c4dc8d3a3336eee0a07ab787e60d6a8d0bdb13c073b7046071bc089b230eb03c1136c71b60791b9ba30db0fc016cfe8d1b6c7c36cbf8b03955009b630860338c1036bff4b099060f9b4f03b0d9a5c6e6161b36b3dc607377c366cedabc5d9b49d100f689799be90e9b4d43d85c03677894b5cc52b2f945871d8ee3b2b3d9e1268b02161c6c901d3a24b2ef70ba83c576b839e21d8e7ddad821f172d8de0e1662cc66386e2a4acf481c36359fc34dc014ac4b5910bfd8ccc3e50a6adc314a0213708e3c45301e3eef2ce20189d34185dd8f1fcc8b9a0272dd74d335c2e5a0a6e0a77da6c38f64e137db50e79c3e60c019e6c99b2cea8c9aa511101b7076f3dc81426750030f5c927a08858ab42a759ce5b1e7e38ed2779472cfb8979e698b7bf624b807c9de3a4e5d6659965396b6288b46996f15764cb7894dc963a596e9954357f6b4d76a9add4ba6413bc15c0196930c48ba000f6d5dc76ea652f095a287445cd80067d8a9f57af0a680b33bb16b047390512be40195501a654e2c0b350876ee59087d86474760820f1a9670a798ed4e739ce02cc3275d123c7c4e4b3bee9915029f600ee32ea529e092540e073c5c68533f2ae926e7233de7abcff9b81bc0a35e5531925b983c4263a8c2c3c393062b64cb0a4cea8c66006406309e48210a8e47e84807ab318ad2d0e422f94cf15983197eb2d91a43cb8c2bd2e083ed043445ca1969b081111b8ca411923118010c192c5020a2317c01748230b43841184e5368bd2006474c70913e3c5c70210c465c7c2185a32a6a69a503a1339270a42493015d099d818aa31d908c7cd410a55b71e128095019426550a167928cca10caa28a1e1c4d218db02c80ac605914810a33d690194d222c96144da02bbe90020dd70b8f14a6d1184ccc1803a9878919636c4cd8500533a60880a87504a3cba7490ea8803b2ce550465959367bacc8974883561649f0c9b0d99a22ab50a398ce722985c5a652879d4ad5780dc4a64eab74b48ae6d2071e2401fdfe017a470d1aef72e6f0ba8f96f897353e7edc3e648d07e04c9f8c349c60c88928d40c893095307669de29b10566c76b403f147e70d2d40ff9f8786ffa904a7cb44d05c7c72e628b1d214c83e1163b2ec09405e2c8a4158ea732f86aedfa855dd8955db359880cbe9e5dd7a96c417d64c91aa9618fd2723d831d0a9169abd34c7aa6af7ba48980807324625df4743101ea20e2e5149574fafaad08d6f0b5b5585091b8e8354b4462d2e9a6aec32f32e99998ba9edd1b97ac60c990bcf5f6dd2e2b3269afef8ac90cb2d6106a97662393f6ae1b972c01929308f88b62108bb24422d16c62093bc299eb9d83b3d34b024db4175fe4e682ad31708e425793f6223dddea50246261ef325c18462943599651cd6e34621a8e71bb31a8bdac859cf0054c2949c39e9d469696dd476b1a0a95c528f4c628edc596100f0e6137065d36025d8f3c6297801c7cdd272e2cc4c34145c0e7b8a43d2f42090315bc7d7b1188209422386112a4450a8ab01629201a8a53604bca50c53a9baa610cbb38b953eb23f7b8c5380547ea7918c36858170be509caabb3a18f9d8db61db3dc35eb81c0c39c86b34b457fb310671d8ef7fd645d11f0f47149abe823a9554e5aa53d36097a8e424434d6381a598d63dcc9ae9e78c4465c6d845ee9d1a7d4b19c46284bf7d19a8538fadce8d35e64b93907778f510915fdaa3d4756addb232b46898f47add335259e28a555308b26453852c1314615e01cbb264738c72b387e75d32016428082e3e39188b5800738eb1ba3344b0535471f929dd0c31e7d72117c41e8619ae6833d5ef7894a5a75c121ce4aa0bd88dd26e283ae1615f092ebbaf673028cb14ef7babc3f29ed2e3f3da6b49b5a42be0fc4e5a71887340dbb1876bd3ce7f41ffdd3affb83c65fee0dcc69fce6f47ece47614e393f5e7eba373fd76f64fef2ebfeb8c98139d9b6fd9703a1f1976bc4c80b3dbd9c681c7ea9eba69678f9e9405e7eba4664fe72202808c0fc44c3a6aeb6a9ebf22da9c7bcc653d8b55fa7a8bfd89c0f456f0d1b837eb42cd11289bc6062050d3eabd527f31a3564646cce5783c65f4ee32f31a994cdf9626cce07bb2250efa39ee3929c0f850a5a9202f2f5e167e4e7478da30e3f23356eeafae93047ddd47581c0fc74987bf3935202e64cc00fe602c18e6820861ce480b55addecf407739cd5e92d4455cea0e44c944ea640c214a64005e64641c3e67c2f2ff13482969c4e3fbd8fb5c0477e27db041cd2e44c4a896884733e1717563c64114047e8835ffc4cd69333317a38e2eb5bedebca14d4a18b27065863f160df6adf797f7264adc040c4ba6eda8bdb46a9cecf66019cfdb2f1d8690bc34eca6c3ecb310c8b441886c5235bdd8ee9757eb24bf1af5158839a46bfddc8b2364639a6a737b66ec419cb8d3ba59b35ee36f1499ba336b23a26813d3efab48a155bad8271a73d9e0e22aea27c4661277d5a3983d9b82aa253af2311a3b4174f451febdf744d3fbe48db78a467304bba4838a172d3916edc41418dad1b59edc5cb286a76533b84682f3eef18123a420f8bd5849c89d7de84ac89518033f155c0f159d3428d60e03884e3b77addc88239e24f50735cc20abaccc0191597c89a4b480d386bf174a67ec8f7fbdef4bc7128b2e44c7c17d9c330301403a780b41179e1d592baee1031300c03f7e1dba680b4910f764d282167e28db83ee44cec1b5b72a607110a915618e280c3e5703832274e03c080c6a3097176e25106688c10e688778652784393d158a8d9c3343228258a6eb04673545ba95cc32bb01482a314c1176ace6982e38dda4a6c0155d89244984ba82d5f4cf1620b5ae82240590bf72713aa90ac85a5ec52b48193da42e4119ef2664736a14a21f2a8617b73c6c8020a2b9c4ba8ed84daeff80385b8c22749a2e0f80a4f08a0528a10b916be020cb0b4f00a4c63aba85b676069611798ca2a54014bdb03d379e4aa024bcb03a6d815b0b43a609a75b1062ced0d4cb51b606961302515014bbb03a61b172d846285212ced0030a5248dd212142930c0d21ec36e48c431a763eb80b6c4e1554f76476838e3e07827cca1b1a166ed4abde29d78c21c750db5878e506659a6692412698bdbb6619aa63df1c1fab66d5cd34829c54824d2b66d548887e3468d101275f027e6226c5247378ee33a9b3ed7d9c4e6384e0d6a5043cd3410964a325c65892c2c2cf02a954a5d11d965e96c68684b845d3b1b58b9961693c9c5e54463d228e51c9c869a2736994cd48533752e2e2edce9743a5554a511619f3a1b78aa82e14f3087106884e1697436f1343a1b78294f8646d1b615028d7073b3bd97ce06bebcc07436100606881d45348610d6a851232626a6da9c8a68ee82396038540703c3a15028d4490656d85e63a1660ef7ad1161a3509d4dad015fa386e4b8f898ce46080ac3c77436f13195bb2d04c5a5523232366cdc7043677323ded0ac1c998106963e43cda7b65233a765d8bda6ec18d3c5703134668b89898989216931313131311d7328e5c8f82ea8a42ddf5ecb28add79ebcf3556614949a4f4f8cb1ab3a3fddd341580dc90dea50cb0655eb6955c7a9da9efb1a4f6b487afa6a3dedc50ba1f1c0f3c89e5641dcd9af79aff1b44a3ee3aebe59abbd783329edc5cb9e9a2b8ef2a6e0153356abe04d112171c76759149c0de12c08c34ca3db73a5b49e7c2440262bc2f1b90714cd0e1c495b564454254adc984aae2dc49b8dd0cb1ebb2326a61d2794250873641a92f6a2c43cedc563f72767463c383e236a557c46a5552b222358d9c131338a37674698abf76ad57c70a2c468136a58d821292391349296e19073c6f8711247e6442991d0277a85498738b26684b5539285181639511241d795ee4de9f1a6e0cd7c775330e7d37a224923dd59bbcd6a578db26ba39a82dde77f7437f5f91ff4f340b8975e7ace47670a9e48c429f91ff1ddfb11fbe814bc91eba54f9b823725ef125d67e407de1fa55f37d23ddec84fdf1f17d5b4c37e994e682d5aed9b6b65b950cec05b84b5ef497b9a26a53d4d6bb537d44168d7f9e94c6b614db3718d28b66ef897d4788e40313fbdc16eb761592e635b9eb2f531d6e535ace9284be330f674d8a5b0df47c32fc6c2af86851f8a6a44da35ed449a5684352dbb1a4b48086ba74d2f0bbfeb39733e1ec2fb234696e76c13d59ea69dc5a2b6a911c99a14bc56246b52f0a696d8ce7220f3f51a79f93ccbcbe74dc1f9eda6e0e1570f3fad87e5d8616dade5a1a5694f7b8bf6aabdabd44cd3c3825d58219457d33264e1cea6af53cff2be29ec2a315fb6adef0f969b7a160d6a50831abcb962a8e1eb3906cd6fff31bfc5cff7fdb19de5de44db3d1e48e9d735c262e4e707cb4b3712df1d7e34764ae8d0f8c9e5a696d7f9ad9b4a7bdad45eb5b768376977b127ed34b4d37069b1f0ab9b56d49ef6be1a517bda3b8c9a3522ac1d76a925e2bb3711bb37c132ffd3bf79df1ff3db37ad741f0dbfd369a3f552fdf99cef26d537b544fcf51ff1d7bb2fead27ef37835f8cdfe1344444c443cf7d412310524fefaf5f84c8372c6087894f60aa5a79db3106e9746cec0c610877683683472ba5f7040b16b4acce2c0eef3b472ca29e784cff37ad7fdbd3ae76c169d65801c95dbb56da48d746916420d5638d37748117c5d57e6741614e2c81711193542785d97968325d15c823c164c20c21907863dc41edb6a92a1e6785484fbbaf17479d79544ed35ccd1f0faa11047d68430763a847cae1986bf600fc8a3c6e195883de6fd116f6e2ca67e2e317d7b9c2e3468648de95eadd64b83b1d3cdc62fee609b12a843a9b343f36997a27ea6e728449256e7ba8e14f5d32e85f6a1209ef1fd64a7d3424ce7948090f63027da13410781bda9542c7ed8238facb9e1d8a11c2a2267b0e7d8baf11c7b649ea38f8de7b804e639029d844e6f58d36fb02db761e965ecf693ed0e63b9bf58966bb674d8f9e81b167e3758f8d9b0f093b1f03b59f8c158f8bdd022b2063bf61c5745640dfcb0d5752d306f13d8a9e420ac16621a63e17c6ff440e4fb1ae9cb53c9dd88ecc1e80639abb5d0cd64e147692d226b52f52d871f96aa37b5c4f6966bc4e5dbe935f2f3c3e55bcb8dd0b8e9a62afcb09eeda9c31af3b813732ce6ce6afaf4b0b7d85b14c632aa674bdd1c7deae34e3d56efaca698fbe81a361e8139e20f39dec0063f628fd802a8033bf60298037b86585801cc81edc01c54d41863a990bf2c152daf968a9d53b1a37d2d37d99dfa99ae591d29683ed377ead772d9d90c4965fff53964be4e203c315fefa3bb0c35c79d9feb8e20e27a94fd89b94398809f8e8ee9f43a2ddf3e6f2abb4ad0b8a979ed391fc43f5c6e6ade1fa6f9d3e7fdd17297b80379342a089107188b36c058840136718c85b8869578ea68dd12028e9d4d6a09d3b5036939e9946453f336356f6a09ed340e8474d4b5d3d02c8d932c2a45444c0d8918e2884930d75e8eb2a98c864d5d302f242db34b5c9167e6e08a12dacdcf0de9b0bb0ebb941234ce04fc685c979fee8de9f44072f0210214cef85cee4d0b50661bb7fd814f7450030c3b9bd412a49b0e8474d335f2f3a3afdd883ce940b4b75c237dad560b31cb4bdd39faed3aa46b3736f2c819ec248b9d2ec1d839208cbd0bc2d84b42183b8b65612ceec819ec3e9ac5c2af64e1d7c18f5af86d167ef06b316a5cdd22ed61d83b8c1a9fe191123aad09618883961371b49cc65ea8d08c7bd38da4711672ef73d9bb07f5cabe83b30c5b38c3a010ce4e6d953359ce47b239df51168fdacb342ca5a8f0eb6bbf9cc9de4da89646ce64ef27d4d48f6bb75734387bf61371643788046aa9040a5b05e1cd93064a16784f4a79af8abaae6bb026fb757bcef79473ce04b417dfb79fe7e585b3ad11173c407bf17d5d787d344ee75c7dd9e0cac770078e70c20b6230833f9c893ee04c7cde51e14c845e3c6635e8c55f76422f3e1e764440213c69f03cbeae3b4404780eb9c1f3baee901b3c4fdcd5d3ca9c38a696758417966919765d9757696884760881db479487550ace283885283cd1384fedfd4011f1a5c20188fb402367320d861ae645c5ac1172a6bf03a4190269644d1372a6ff28a455f9aeae06786ac4106748e5584e9ce32afaa06a1872e10595b8a26995165fbf7e6c42034572be9e92dd7c20bea8b1547953d9219ed7f9d190d47823946815c45d5b495627985d768fc87e512ea832ed69b4e1558033ce38e3b31c929a895c58fe3a0644a7e6917042e5d258a9344d4c9f2a9ab4112da7d4d040af11edf5db80023803f101d8b006380331bc85c7e1b50ade86d77b7b7d2982d823c3ae49b230c3ae39134084cb4801952f50995224e715c513f0f1da0a436c85a12512711111c708af114a74107d0c8c9a4f5435d0aa0c8d7e74cd01da308511ab03b4410670ca5b04b107f6fe13b1e6fa7c866a8851e08e33f198b550c7c501cef401f003ee01bc1ce6e8293543a3ae22e064f0c44c40d7c4a29e81ef15950ca77434c219b25aca2bf489ab3185751ec29aed39b63df5253dc7dbf80c07893fb527e3d59ee345b5272f21aebd13231270809b567a7f628c7de39184f1e8073c1331c623cc420c77d7044d139dfac1bd7b776fb61b89523fb46fdfee0de9c6a268143b2094741fbd5dcbf938ecddfdd8aedd1beddba598958f469889f87972867451a91f10e67cf4280a61997b074b22591387624bd6c8c215c9124ca45347606feca6349c83e1cb42dc5cd46bbd8a013e3a9af108e86a5218e41c421086423f49700e0c8586b083630bf268a952b386e3112bb4587d38a42e80be4b0a59d0c2920fa704a5e793bfae27366083d08743c2c1d027af208319107d389a95d6276f0e468369710516863a27b03e79eca68060271dbb37508b2e7610f4dd60c7c986803ed99d2403185081e7bbb92e0e4bebbb8ea32581e78358e8011076be1bece26445df757b38233359c3f3cefaeb7273567403de6ba5c91ba9d7b879e21aa792098661a7c7ce265e26c1c6a944429dac97cce531b249c5f1ebe566ed3ad1a071c9a4622b5416e43aead985a150a8a867ec08bb721f4dbb3b62a224931af1d4b86bd52a398fe4952b461ec174d327eb25cb92b0fec27ac662a15037f3c9a411ea7cd682b7e1725d3017deacbd5c999b6b76330ac71c75330a67590be690cf2ea04a04160c41fe5cd795f5933a9fad642edf388f20076797799e1875d4296d0925373b225e3e5157e6999591b9d9eaaba85f2775495c479dc20e091b84769c64528b7879b9d9cdd7338b3aa9b341dd6cd59e84b1d811d65d9d8a3b3d451a90c7f5c65b4fd421bf9d1ee9893db256e39cf5dc5044673e1ae6396bc9a09e556955ce7a60642e118d65607ed9c6b11a65473a5228239241c1f4b42a6f49e445c3b23cdafec9b69cda7acede77168767add8032b8a3ae425cc71b0592b93920d655332a28c4a51e925ac08e6664530879455d4bc09e14d687bd2aaabf562fb867b6dad4d4aabae7bf15c3b42a813725276e438a89582506bbc86d51e639f88a5ac956b601c365f4888b4c9a69a90c08dfbe879d4aae68268ba5c1b977445e9197979d42ad24dc0142ceccac53a5016f34602a660ddb099949e91df6ad6baa2ce2515c21ad8337d59c42511b7b93cc0e5a350ab0c70d577892f7d5c16e0728813e0f2714aab84b87c246a558fcb472aade2d1aa015c3e5669d58ecb47a356d55c3e5a6995eaf2f1a855f14aaf5aa777fa48f33492eee924ada499345037e9a076d242fda4591da555f7b5e55201979f527a08f2a071f9d6025459a03d296b8ad8cb3f0a964258ca67b993c4b3e451e2592259e259f630f12c9330e059fafc78964a1af02c970079964c1cf02c819a78964d1ef02c8320f02c9d44e0590a49e0593e99c0b36451e05946a9c0b36c59e0594ab9c0b31cc2c0b39c92816749a48167496503cfb28803cfb24a07a415045c5ea9f13c574e3c4f1d0f3ccf9d3c8f04799e3c429e27920f3ccf1e103ccf2421789e3e22789e4ab094cf93099e4373ca249a5466d1ac82b53c8146009b88601601cb43a8ca00f4e4734fc1522e41e2b98b8c786ea3043cf7d1117721721f0df3d8d90c2900eacab2ab2551284d7b8139910bcf6b6247ad9ad8d5f2baf03cacd77501198105d7755d472e1e987bed5051333ca25bb5f197282f24c0e6952ff762d1696d10698cba58570b75b150bfae6ab50ace49a4318ae80ace92d8a0592b932205cb6b2bed48d750a06c4aab60149810054b176934a3c0842fe09c1d45c1c90ece9a4e469455c1f2d83589401561d4730ec6b8103ac2a8bf9c3657a4554838a1d25e36d4aa97974b284a50e4927911fb1258282c5744caacf5f29c75456452aebbbcbb2432ece6cfbfd888b356ab642e9f499191398435322f77b98c0cec92c8e67db1b0bd1b0c633376893446d5a871448da352f7d136ec754a618e599897c3979b89347ef9f579ccc22e09d45f2ebb245087b9394702a162477d5e27d238678741fd42dd9c1de632e689cd9bb5cbe6c7d99ae466bd4e189e9f438ae0ec17cc900ca3606ce693f5fca066873889ec3349abe685a2714fe60343a471f6d815913dbbdc691514c292e525297bb09449b094520996f25932c152ca5e618849707f72d6c2ad56c1f7ec48174b4404ad72a23da80a023df9276ccb87d87a05d8226e84bd7124acfd11f68627c0fe0bb0443c096b7325ec01be8435c099b0df1960f17f581f6f802dc081d821ee004b80376185f8036c8f43c0f27804ec002e01bbe313b035a78055bd0236885bc002f10bd81f8e012b8067c0fa700d589a6fc0ea38076c00de019be308b0a7d7b0a63b6179b807ecccb3f51ec4ee702156877fc0e67010581c0f81c5e122b0f723a0f1184b44c43d3c65898818008f71a255aa6b0a6881565dacce00545d50a0278fbdbcb416a6883b23b03d0473c83f617b88ed96086c4709816d16086c3ff9806d2121b69d04b19d6d37f1806d20276c3349d95612633b49076cf770c036920dd8e6d180ed2319b0bd8301db3a17b0bdb2808d572a60e311056c9c808d4612b0b14a046c2c82808d541e60235113364e71808d43406c94d2001b5b3f6c8cc2001b594cd8f864091b8594b0d1491236062dc0462005d8980079246cac61617b0838c2081ba5e09cb572d6ca5acf8e28a9303b735e44d7916be7e2e920e4af9d8ba755f01a62b1e63cbd93b40af5d88aacd473148a413672dcc971c794e3ce8e9c41824f3ba61d979baf1e2c6ddc8c124add989baf202c6bdc7c0925c1b39334466131a8e7b8131353e371271e8941ad825d136300c41adac172090b283a893d5109968fa981821717736147d895f658ad22f1005e50484a8ab0598b089bd9586d7500abe918c06a3b9fd58e60abf16848b41e2d89e6a329d196684c3420ad8916d49ebcca6a41584da8b5271a4b00568ba2b534293aac361400ab4dd188342a00b05a15cd8a76a45d21ad483aa41dd211120f0909a9c5926858920fcc216f6d362467e46fb3a222232c7f8308ca999bf9d8ecc566497660ecc5d35e4bf5d12e9f53e6598b79aea87c8f065f3bf075b1e44ccad2309d6236f3c97ab29e2c49e673fa6573f4c136523626b661e3e66ba7bd8b073b72f1b427e1afb364cdfcbccccd1a9e8f99af8182397c99cfde73d9d811d1387593e0f996c7d85c330a65f371be58d9c3f962d1e0cce61d385facac270b8944d74eab4c594fab4c495a2c76542d76255bf1a0e6cca766ec084bb9837a9ce34eabc7270c78b294ec84de7c6735e8cd739683de3cb5157af39b3d416f9e6451d09bd7ac0cf4267665adac95b5e4c56aef6a5d51dafbd5ba5794f6b296ac892b8033f2120658fee20196cf5ab2067ed733222ce5755073d6da219a46c801c66ece8ab2d6bc5af8c2f96261f92b4ad7c096fcc56a150f23968c01e680384f95114bc0003d882fbc11e9803371e0cc9c94d62fe042f3b41ee225699a46e9a9cc7aa0194d4feef1284deb1c54ad9be531df94ac0f29bb16a23d6e4b52f37b68150864707cdfa3d1b22c52811d763832df0f0864300e1ca8535d91322e2804a2d2c349e90555a4e73ebd36b8653673d8cd33d6272626225b0772e50279ed10c2092207e8ae82fbc2220d108dc51d9a1054b33b68e4b0ec8ad734bb43e24088f61ab3137a97d603f6f62ed27b6815e9e61b8c5dd7c3720ebe7608e1236a37d6a8658712673785c4d58387bb65daeb8bea787c7d61ce08bbd4af41853c228eaf0155730b5628d902c7db80351a0b8ecf1ccea81a5476c1f1f4adbae46c29a53c4529e594b7e7a74c7bdee37c16a326659ecf2eea5666de90b9e665d6e68d8f2854a368b4ded630390c2b94351385af4fd2c6c999f66a7b34a8d9b3c61dced0a364cd0e126abb99c6d3bba3b5d66413b1ef436a20f0f07c67b3b3c1342aaec32b8504083c3ce14ace9905219cf54e1f692f8358c350887005439c2bcba675b4b343a645cd79bdf90c85f270064baf37d9201077d576918d6f76e9b5748934debac2f63659d343db2da244a88221942aa4601d18422142133014a019e021e6b3ae8b6cb7dacb7e83ed282c34d4dc454338cbdedddbb5aea9b0875ac532a55537c0d8a4969877277ea4f781e84851808ff49df8692717971d432011267261d30dde9e7760948637d3cdbdbdad11373f3ffaf3deccf76d42ce64bf79e2b8b4656f09a396ee102884bbc389b7ec3e64978be0dc0dc9ce38e38c3660d369732eb68b229ed6c6d7167eb4399385b873b7a1ec90884d77bb749e5c5698c885b75bcfb0d9a02cb64665398ddc0d3662181bb10d1b714b0dc84229849d0dcb7d740d0bf1667a776763ba2553e97690e9b613557542ce642d6054d2b5cf64d98930c41097720e36b50891b8cea660aba06079eab14ba2e5db0db2bde530c8f6ee9ede59d8aa27a06079e9445c5ebab34ba2e5a596cbd266737097ba0dd21d62173be4060e2273882366b1436e6099d4afce26e6366c8b6d20991b2b9df6b2a370b88fdede995e4aaf17775d3c1792f6ae54d29ef4e92557ee669744774790835d5e4fb753da2eafb6fef4eed8cbd525517aad2fdd87acd6e5252b97481f93cb4d37bb6c150d354b1f6c7a166432bd745a3b9b52c9b46d40d9a98b4b84f906f3adbb697371e94e5d3a1617966f2cdad6b9741ddcae8439d7d9e440857c8d779704ccb79b614e5137dd6c7a771be8e6d2b3e98e2007bfbc6b619697baa79088387bc4d94ddddb9f6ceaeb4bd6e47254122c2fddbc9de5dd25d1dde5e6edb9f4ee3ea4c9e69b20a527f17244fdcbcda5db4f5e0e0f3b9bdf47d31c94e8e7b0e5505da874c9210797fb0490f83e90f918af91f8792337f1fee87097e7704e871d8ee33b7c871b8445070b3175d1c14587bbe8e09243ec6c709cd20964fea7bab8d4bbbcab2f2fafa7e7f05a2add47574a27073bd3cd399809f875c9e61b5c3a6c55102afa1097de754974df5ea2f4e2605704cbcd11b3fc94b6bb1cf610a9d27d02c8fcbc46e6e167e466de9f92cb4b5d125d0ec7f1927d0e2f21519fc30dc2f28a7dc8c62e36dfe08cc351df2cecb6d34b37e7e0d3ca22615f6fcec1f6b2b331e170885167e96c5037561c5038907020996eea5e24ec4fb757ee1c56d3ab19b5b1e9dd59f04fdef45267632ad91631eaf6d24da72c9d8dc944da482d742b9bbc58793a99bab2bcf421ac308452c513148650aab001fe0112821136bd3bc5b8abb3299d9238d81d61ba39079b5edfd93c71b725c172b2b9f4d3373b821c6c7a770aa837bdb39948e3d35f4e4f5606bd5809b41d62887f1f4dea8ea837fd42d1787bf6f2ec32e86421a6353a9b971bebf6b2b9744640bc5d97ae88eda56f371f51bae9e67afbc96d25ed6ddda2b1ab471508919cc992c8ce188aa947b58b5855868c82ac28396a55ee25f84aab723fc1d95013c99a28fa2d591359b1f4edd2b03907df78774bc0af3ba893d86eba414cdf6e0bb5b7bdbb41ba6fff11c2db4b2fdd3c821cdcdd7ce3a6db4a1ae849ab6e5c1acfee43d633d4dc4138fb0d168ac6a8d35e226bbaa899b497b52a9bbe3d637977d3b79b1e647bfd92f6b2b7118b25d2d874bad99896312a91c6a5ae8d4ab68b6c57692fbbfc41ed0e71eea224ba2aadaa178ac6f559e9d9db68aba53aeb0c625280e936d0cdada4bdec2fdbf696dbb850348e79f7dc41dbd6d91631eae9a553526753bab1c674af66d4c8f2fadc4b4cefae75365dc94e4c4d5648e99dcb4d168a884defac90eedd5d2c125248c9f488bb884d56e65dec2ec9dc47372e5999db01d8dee9261b71cc214ea56eac31a99898969616d421ae51e3c68aaa8142c1c0c0dc141211bf3ce2979b23a67183b49256b53c3bd629a0e5dbb17a9d6eef74362da79483b59eb29c7636f5b4b361c9ddf669a3e83cb1e9259b272e1df610abfebc3ab08328992ebb2372f7ed5b9d390891c6db5ddef6278544c4a5475c323d7b0fb5cae559f7ec34a6658c6a3ac42e2775362e3756d327869de9a64ba48be87e5348e0ade5364f7bd96df7b4979dc57692f6da67ab66d45eb597bdbbf1c8a83dcfcb9ebb0767df6cbcd25ef67a86da3b7d8444d254a54b85767474a57bce7a869a6311ce1e8b6295ecb087d83e7b08eedbb51e62e71ffd76ae87a0df8e75361bec6c9ef8112fefcd4ddc9133d98bf4601e3993fd0926e017577226eb33013fee19e5b2539a9db34bb8d32cbb66630b1819c962d7ecf5d82d01bfecd9bb5342270ec999ecd3a6b6cbd4f679eca6baeba6ba9b52023b13f0c30e247ed7e3779dbba9ed37b5cd038932bbecc7a7703a27eea0818cd036f626ec2ec10b618e866980e2227211213fa400572fa110478e3e58c62624b083a46ba406a4a41d770821b3e61e2d15dceda167e46347d3aab891b41d442e1c2d8da7537b686f87acda0e2c6767239b8039a250f39f88f234547636d98d91c885fba690c0a0b8308e3bdb937fabe635a30fa9b1263100125203c5e69d10a28448d4c19da4e7e523a84ca834ca54ced3b198734ad18c6004002000f314003030180e0905c3e178a0a8c23e14000f92c0526c4a9865418e831432c41862080000000040004460c638012525d4e2ba464fa4e9549f9aa194548a2b763a9dcc6d67bf929136a91ed1abe16893b6e42406b1785017fbd09fe9f5b4b229cd1376a01f96572d799e09f0fa7665ef48c5a45976243986582e510118f6cf782fe7eb6e069ded3066de4da3697a7284d0a0304c8d825e634b01c62b9292879f9f89457b5f54496950d3a5f600970938049938290a35bd0b1404f17cc5e4327c963d95c5c0b31ecef7d06a9a23cf4a11b7d4c0827c4165bb64b3cb1826c15655a99dc8bae9d889a7229df74f9e296176663500e48c00168112bc2a43d2d56ee15907686f32ebf0ff2286f6a3d9269c9401f4cddb6cb0b3c6f0307025cbf41406618369f37dd29cce27fd47d1aac4fdeaf510c8badcfcc8c57ca18589632260174e0e07cf2a428d12d8718c11bca9880c9dea03ccc6fa04005490c7c0b4fbc1d1412d6b4db7bdfae77698591801f053cc91b8457f8aabf7f7458056f921be3be6905c256a50387acf18e7d6f39a84d910ec4fe736b3f8329eeb56e86b6c78834a2ca9cbe0c8ed526832b30516fb31547c2d8ab8b687b2250fa12ea7fad7bee0f3f973b73af865aa864f81b6b1387a8cd054574ddfa2c24f5145076819d72c2617cd04348fcee061899dba1e683add103b951a31010bbc745110965ea5280db45eddc7665717453db647a78b4a83849c98584d2248293a9d32fb17295b29d376154932fbb016aadc109e21d78a3b44044a8613747310c31f299f085762b6214381fdd2ef2b248e72401077d8578acc7be67301cc1512b134e9ddd60dfe8d52035a2401ec4f29c242c4f3dd7dc4533715476c7b8977e40e61d797d0a6184281a21ddb19a1b33d121f8048e7b1f4d52354d3828ddea3ff0af9a3db4e078b3ff5aa5aabda5b9387329d6257e622abb66aae12c9158106d9a853cb2b949379eaa51f5e766d605a3f0bdee12a7f67c555ae2e3087f9c2da477e82565f7d7e8d904b974f347dc3fe2976c10e57a56216242a98112b64a8afa9b91460b5e3573e39be8e2852fc8823aece946805c260feda49a2eadf8f7ba7858159f2d361198c6da90e37fc286b21a164bc605285c80aa803f6e92324f376c500250daf52c75820efc1e84d0ac247bb65705c6d9561a45a6009ac75e2fd4103418ecba452f677d3cbe5b134aaceeef9bcb22cb9c695e33f37ad2a4b70ce411c216b51809b10f9516ddb3d61bb6b95bd0d45755c53de9453c6bc321a6b5bf83cb9de4cada3128684c77ff3bf2fe484b3372cb00bf3450ce314fe052ee814ab7d61e937493ea863cebd4d693fc8ca12ecb3d793387ce4118f21c6af470cac6a83b1a1dae852f5389986f839e67d18c6b5ebb2c8b5ec4c08bcdc99881b678ed751c11a4828554fb5f281e0556e4564361affc90308f4512e2121a93eba3b9f22df225ee64d7a8d4f3e79200585bce8d9061a4e171a00a3ef1cba1185a5688c5f5afdd75599f79d8c312655ef2b07e9d550d2575476496f6b02a332f6b1c46691f2f488dd434eb21dc7a8ef727eff8f2a087948211dfb900ba309d888e3a04cec2ba973f5e0edfa04785f4eea5591b3c17d704781deac9a410d8eaa13aad4032029ffe2bbfccc1c41d51537721843a05b33842ee8514be208f93b01e189025612185f87421c095ac646c6a94c0cbb07e3ca313c23b1f3523a0ce2fbc095c5968940383e5aadc4aa0c5590ca950589869ba24a679e1d3a571d256fde8f443125dee9c6b556070fe803e951e3e1520b077386322e19807ad8b7715929acced2191f5b564588cccd8f05c97b0c1d2e2c68baf9f994303a295dc2f813f130d7a35d368000cab83e9b1519148ab7f1475f43078c3572817ae7d93733bd471d0a3ea454e811cae2ff79a5f35f30491d96ad381f9b825dec6e3826d4a93ce7a004f200134d7d7e3ba84a53e99a4e5242ad61084fcae7f8ca43534100a702d5e96805215cabd4cedb2b446174f246133b1437497d90741d0551fdd8f4b7938655d1c23211c0f35eea6f73fa84132b7f0bd6f416c48f046447c91ccd62ae613b9231000e537e91d7d9217ef5ead4bb4f84970f716991910b68593a6918730158353789dbe090ee74f4ad5827df6df4fba42c09b5488a8320dbba6151fb949d042bfa18e08c2d3eb6072d08ab1bbfc5b9355f961a60dcaae58868f9cb11f43ee6f4ff5e24634db589ca8f381d7ddc317650c22a577926c60ae904e547ef0a649f5651035bfafdfcde2ebce7b6a2678c254e4f5a814685d1ffde3855fa84fd523b0899e500ae76bcaf8ae65f2b5131a37acced4e6a1adda73e75cd360c7afb7c685b5f570a4b126632a9e0d77eb715028ed9de7b5caf71f8fe0c52ab29b750eab491bc5122cd85ae994b8f13d9dcb99a443e843658eb03499b5a545b25c62969f753d183c60824322e850fc522a50010b22080ac734bb0751cc01d15ba81d270338a4d7d08ea95e50f1e8754756969c1a9b02ef6a0963a4a78c7282aed1242c11e764f81b115bb62072d157b626fd82b337d8d31df9a2608fe273cf994f7c05658ef56808ce1dc4b88c894eac2730c6e47699832e768a43f4cb9d145d154c921d8b6b19a49a16a903af2563c25fac5420c4a25f7aefa43b40afbb9cf7a58e704d3012b0dcd712c10cc392a4697b183f3d19543a52ca614caf059a152f5c8d1397d3d6204d1ba36f8a2c72b180dd1f9c8f5743528cca5c1410457a8ecb635b709bbb5d8fe3d9b403b7c5669b3db3a5f0dfeb44f61475a14d77c6ee72031cbc11d97f3206d452bcce7ea03fea37b54155e94c67c249bf78824eb51365d8636188fd2f01d35b01da5cd7554b63a932a50c158ea4577a0bb408bec36efa58cfeaa14dd20b25086105313fe4be466580ad2540725ec79c5c089230ccb166daccccdc9086148ca577954517f319e092e4c44ea3873da0380e944243ca28505189367e5e1f773781cd2cebab002efedd69e71dbdf62f0e1175b0ddecbf20b764dfe051a3aba2a03d52d49917e0941d84bde4d2b40443e674ac36a4c44b6a20d332a9a1f9ea6c6245280361ae35911b5de8cd1a70da64d067a86a6a0ce7b4b5a3d55df691892d5ff01fdfa97ac5554f96d08e79849f8715c9808134b69791542eebb595eb000521272c62ffcc867083b39635613b9850bdd384b895099c37fc4130052479c59dab731aefe0e9f64e500f0041e040b7b2d41d06cc7aa66c470d14ffc90110e6f158ac5458933f04825abd0c51740abc4d965092c4435bdbf81e7ab63bcaad7b7788ae1182952f198f3e6c219253eb00ba8bd0692027b45f0b98ce505f8b867e6e013633b9a70cdf0f090bbf69f2a8864fc91cd2783a27e6bd8a4315446086683efb24182ecd84c910adc68861085431f6f8e1d0a06c93283d13b9570bb7f92d1b0924779abcac32bc089809ea0c36f3513dff1b50b11034bfe41f45614195aa73e52f8c2363be058fccab4cbcb2b47125db451f3d014276699c898ae6e00b692d87d60e04509df28d76f58a9134b7a40520691a2f8811fbfa0ef810af8596c64a7c7654015ba4185cac43376cf723bd391cfededf9fdae6ed1dfb77b57274903a7cc37517b9e2bed88e0ae084feaf07b6191bfd6e2e53994ffca2ab0f86c330d558a84c1f1835be696db9624c328729413b14ef7e3b433d8a5cf7cdd0a90878cac7cea80422e0b255c18cbd2d57b698d8c3de9034e2dc82ba8ca30cb5d836697b297f30118ffd38df8c0b3910906a6e1ce824c97806892a21a99f2f76cec4ac4abffa56d4149c5b85f1f8e6b3a15c4dcb8d9efb89ab9fa8768a14cc943da018743cffb4cb75047e25bc95273f0be8299b8dd60b3b408329efa92daccea513b6e5e1d091f7f73263b5dd0433747c33af7c2ba9baaaf40d7aff6a7619548dfd085621de9f12771a21a76c89107a98ebbab1e05a23af760aa8075c5934426e6512e8469e22009d6f926fa0f9e8f48eae02c5b70331ff01242d2dbb9257ade223243dbd27f8fa47342c39bde9d67e55523e93d6c55df02bec51242ccae93c18cbccb05054e45912dad3306391ff8335e38a7aff9aa4cd71ee9212ec2213896ff98ad8b195da43f19b4e82f89d9b53b5e657ec0c451ff55dc70f24dfdfd971de5bb3fb654ba55417d6760cce651be2143255be3e3040cab6ba3319d5fc44a6921594d89603da799c945db2370ee3f87406df99ea4e9bbc432c8dd30d7a4047e19212690f5c553e960413f39ba08b000d6ef5e62b08e57b0ba1a7b146c64e08af3079865807236e751fba946e0a1cd5d3c1865e829611ccfab13d99e264adb54a34010f0ca084d5cb90c79b8994f0a59c0649085127dcad897b8a017ba8b46fd572b3303e3989db5d779bced06f0d42f02ebb566cd2c8d1b62b79184446f247a5a9ec6f08b1c4fb712b48e335be8d8364f15a0bb4b6970eca21848be572c6179d1c0a4c91c28d783a48877040c01b60ae8daef04ec05006040412208bcd426c3b4f1e904e62c3754505968a2539c6d32ce6904fd26841b674c1b614284a6d154a2ef46b670217c0513353b17bf4b7a18d4a356e51d296c281db1cf01bef1c9e004ef0ae978cc324543da7911dd0f5a1a8c18c4a5c5947f9f474117cbe47b4ff16fb7516530a2808467aa166fc888547df88b5b689e0e2ac0423d111697b1f981e5d0c85ce588215dd6f720ba09b158fc528d03c317464f1034a6f10f6f1f9d2f2e4465234752a1ec3820034bde3b8eca98c9f990f298bf0cb6abf0a8ccbc1b822a94144745a3761633cd6c7850399f07b186a23b5844f183b7639e6addb18fc7b68a602585e1cc0e0577e652aa52ba5e636886da04b1c57c5b479a210b1755fbe2927c849c76f35519bb87245bac23ffa15f10237a747a680c537725de7fcfaa681e18f9eefd3beb0908eccad1cd953ac5815f6a3abd4a81f4e64df311c801574874ccf6c1eb096966a94735d51a1bc58f1d7af376edf63a9bca3e5874ebe2ec667feed0c832e1ae083286106e68aefbe648223900789395c7c3cf2a452625047d4e9c2f3bc411ff9b36f86cf2d76a77b8c5167764e695ac6d511ad10c87651e37d1e8c5fcffa7f512336741a3edb7e4f6483d72a583beefef2bfda0c4621df1fec810a5a1596f880d578f59985838bed81efc743cd151e150842af21487c397f1e22f2f73eeab8df637c2ca2007a967f9271b4988c71e9e432c8a449f648a90525128783b986b960e55f74d3533558a8e5293f0b6084d56a59811e95107e5354387ef7fa2df10718265bc104034b17dc87e121e4f6875e467b46084724331ba15682154b1f19119569d7806b6789dd983cde14d70169b7ce61b4c2721009231143b082a7cf531664dbbb5be484537e83755b6db10a598af33d0776b8c8812514116e3214634852c28a65751f7623e67b816dde8a7244fbed2db4fe68659aa961ffb960370d87681d4c2d048ca6548f57b965d08fd1cd4eb2512bd5f274a898526a03c73d893c06460fb27e6f9b409054c3ab13f6609e57b1852c5d7081ee0c176de6a1a52846693e72a607129c546003f6137d0e09326deb3e34e42abb7726dac2d6b7d9af1eb6a3802ae1fb59bd960ad5f37ba9cffa0d94d159c249530ad525e7807ab332d8eb988c469d14fde0c2f4ba57a1d553961e08e949cca2fafa1c89a2b2cf3fd8438cc3bcc8610f42058a01433232b64940d9633c718bf422c2aa2a354de0b31f52dafc0234f505ee0415802cffec5927495331d13cf0501dc12f454951350c8158af2b4af430ec93ea1d3f7ce155633b9257b2ee2733896b07049a6724b39146648b84228168806e37c3ee4c6b609beca4b8aadab400acb1d8ac1b585737f825e766ca4789b9709d36a76261e4cd3a2c3b972ac5e55b2911f4667b62e5b7f46b0269eae67a05f03989b884317fb65bf73e296ef1a7c18d379a9f15b12116ad12795f65b374cac088122cf8ebcf0b097dc97ebfd28d97fd57e52daab315b056d177e411bd844bc6131ad1656dd77e49d1923313adc56d64269692a48b224777df98b8999d7af6ff88d24aea40a854ecb1d671e2021ee2c47337c794afb3769cda776ab05f181a748eee57b34100d4484698a42168a421e2df7be7fd6fd7b653fd7bb2a8cae96e80af667fab81be1b60d97cf4dcc8bc60bf3645f3c4b27c3790e0b172dd2f47f07ee6983ecc3971b0af0450fc2b07d25a0c8496d25537ef01af0fe97cf47636500ad29de724bd7a0baf29ff943b46062d2ac8ff89607fe7337caa1f64218bfe23ffc9d052260df335209e6b0220d2b232ff9da37e4414996b8aa3d31dc4d42ba31ef70fc18853334f9465cfb10078847c77cebdd1aaca2b6236294120f481229f5a627c96842c37d74b8fb6e1a23baf53369ce5c9cab7b119b4ac8372e7d3327f3b2e4c57c000a31c815ad77a6eaa749309642c4a17b750c8371c07909df573d4a07d44430016b13344c125e580b111a1c47b4437930fa88cb274aaf2728f5cfee69a7906f459a50f2ff3004904e42adb78b84bc3f6a051d48f21900390cbcf91365d165dae4d8e780a75c1989373a9636de3630195aff4c24afefe5789d21afdfbc3cba3582a9e8507746ff0d7fb6f36c517e3dee59df40d099ff29464fb67a5f7b9b5c58a9cef18e9627b9e448c1b4d09f22a6bb9c356fbc9026b89f50890f6e208e13bf4afdc09f5413dc4fc434d8f23874d7c10e9f7a00e80b0eb95d307a6d2c31a317a5ccf954f09595f84a5657ad984067e519fd3c8e387245327e9858faadba21603522e0c950694782404f3ef33ed579caf94070d2e51f8ed41adf0c9ffad4ea8d20c93a7a5ba6f94fbcb957342d35cae4974b0006cec05c7677e4e7c4a9c598e6e12352edeb6beb3dbf7a45d6a7da75a823c34a5b93912194906ee2acf57726dac5ee3746c709cea80300dd4e0b3dd8555edf9f723d9e2dd4f4829cb388a470950e4e7d1baf90c594d30b71227ef9da89ac6ff63e0a469a3c91f2872e303507bed298aa46ab061e75a070b954696a30605572643e2eb23c6a59a8a2c699ea6a4c28c775c5d9800acd56d035eaea23bb2e2da428f26f24aeef555f4dd2d8d99346992e3ddb723a52f19f7568d7f573d52719169df8eb96e25e1ab42431889369ab70771d26acf994a0d5521766cd66402b6e52df4374bdcbcadc5e9e8bb9d58f54669f3e9062b128bb1b25c5d99caa8d04e0c24c40ee15017cbacb6afe88fefb21a4dd684b988360569a8fb834a9f7dc61fd737a7c2a718afabc6ec0c3308281f36fa9c58204ee7119e4d78063441e71d36b4170a0ad44886cfccd28357a991713aee53b9af0ea3de080049a2bb1afe024844d02706a794403c277eec9a85a77116f30c0d75b52fa69cab7f523836a82d4c7e258e84a6d59961e0f12ce10a8ca4c168c400d8d21f2014e76cb4099aa06811f2a66af32d8d8c431c5e783315366b02cf37d4f3a3c63ca2d24d8e7f5e535a664a03282afb5f9e106ac34d54bd086965dedeb6217e5d737d9da68f0524d36e420a15750b6249148d2aa60e5d9aab56aa6d07b2e9188fc9b275368766a1f9db188356d12b75120232a8597e9849d120121aa83b8116db22611e1f5ea8806abf90ae6a2151c95e01755f8e36a84d455bbe2ca3ec942a351c77c35112635730593fad6ddc8b799d7a0306442320184debe31db8d3670393bb7ffa0bfa75681e523ae44749ce8186398c61fa3ce706bed4e65078c05753fbef8de31791d3ce88f32a3a6543cd63e848f29c659b3c98a1d2703260f24a615ad43a8fb0b795fa35d29526cac530c01b6c4c11a995add1479928971850f11a5961daab816159ab435e9da777b28314899807b14feb8bc2c503009dda186c5027f5885b6f16ddd095dcee790f71de02e50ab438576d21620056ce5e1b523547b78a53b017b00422b4296603913144c2c1d15e7b0df14662ce5ab26b1e4972b9515c791b80d57717e119d4a69b74042b6b23b3acac630132aeb5f976579ea972d0d6d5924586955a347a2e91703b0026398e0637e55c2cc632a883ac7d2264606e283d8676546cd3eeb9478ca2048bf0712f06421bdbd2d4c0fc73302928d52e1bdffca6a8da527fe7e2027d4e6a67d5033c5736480beeb1c186ff89094977dea30290909aba3d82ee974a9e8e4994dad43d0ea00548fe4ea02f7325e254311df67d207d0573e9d38034aaf6a62cc4e796aeaa4c62c1249dd481f6eb962993a2418a77ea0e15a1219602247a9355341b2330524f3f90259b93c4e016f60791fae8fef7dae56baadc91d634920c8f7cd85e6c7882b95cda09bc861f0a8b3122c109fa9ec297a01578bf6a0e57304a3b0246ce9c13cf0cdeda22a4e1f11668dce4f17220d916a322acd3d1ec222284245252cf0b2997908551b74f405b3b9c8c885c44f10a5faa307033a370201dab4b640497594a3ca222977d291a52cab0f2696b7f4117b3f8a8b80f4c32caaa5e636200d6905dcb740ee6ed26f37fa410253bdf8885890588897ac0b8028cb60c2cbce0c2b29f5075b04689330902373488d31115183c2ec23ccaabf0bc9cce8cf65957987db09c569f9a33102868d644261b5ba78d3908cba358ea7fd2a05460454da9aa714c00c8d02217774b9c946c83d638f300ab8d739c0e81fa65df07eb259abc5f8d6d78063b584ca608f1b5d750bf3a93ebed97dab4a264cb2067a148848f77491693a488beaa6015d061910d38958a6c0bdbfa1b1acbdde9c34ed080d12b81207e4a29fae40df9b29cd192df64f095213cbb2ab8bc509f98d436070c060109f517063d10ac448c9831119f69adc03f1356e8775032b1a033c21c79f53f293c365920f26a76ea2861fb8c5dc16b796ca29cad9604af8404fdc5fc4c3ff0108a871747e1acb2180fa89040b51bf489d91bc96f4f8d7c8db0c8de7b7463b9dc9822606437af4ac64b9f16a9e0ee8b03d047863e380fb436a7e35da895eaab3441d9d6eaa8c614763db0dc381ac6324e581edfafb4b645e657f10184d8fbd8e63e3281c3751f62df89d92605d557fd23219786eb05076ea46c91f0f678731ee750c9a69386a2d458adf5852ea1d30cb18d936d5ef06db86b9145694594c18274c3fe5a0015c586d4ad42c448eccd5ae3014734de94d1aef11aeec327288c2292974a88995581911986c5ca17d1dfca9f977228c557fcd525fdceceed0c7d72fb2690ff1a11fe50f0af65881bb3225d651b438b8f2922acfb73d714c5e35680f88eb10bdb738ba5be4d88540e0564c514be0562c7a2bba34a7995ac998ae089eeefb51b313b4e3c154d02c2d5bb2e21cd5c088841af08a9ac45fd3f65458559880c97c03ad3fec4356c95231b8ae11565317340daa5af3816ad98982c59ac764fd3769099a92085a83aeb8c205810a7f12a704d91bdf5edf3a216c06c53642ae9a5234f7ced01a06b518225857d69b27504cfb30f43a11d6eab0c1867d680d1651a4372142db35898bb5cd88b94b14efb2e3c7d0140403aff67a358997f971c07efc6fa3a1ab8c9088e84f781e17082d4c518f760857fc576704797f967fd3918f9a2de9158f57c84f112f75e8c6205393fd526032a8ebcceb0b1187f03a0c27e8224537deeb59572afd998d7f5b377bb12efc3196a0a8fb5ff8016705f0f965475ded12840faa969147ce1a88e357e25dc151db1622e9bd5d0375ee094276c3a2f97f9c19f54a7b7ce1f6836707f3cb562fefacae295e1c56cf131d0b569248779f6f2505a24015a02412de92b2a5c5974eebb6dad7a114c142977883fc27e265213a1a67fed25f62ade7120ac238502cfe7e31a7f7dcd5b8fa4fa85ea654c83dc7882bbd87c1d909c85be8e898ae1bca38ba2c991c49e175400e26c60e45dc0c7c7b0d3f940c896b59addae259de4c660a7f7c81486736bbc743de3682750e77463177a996cca6b357ae49f26142602d6618df1e7bc04a8db12673709deb92ae12117ac243738351b6350858a6f37f1bbb1248b11e885e7107dd6bcb81cdc62beec98f77d5936206843a76945c425375da4c2b6204886aaf04303159874348961ed5b76e1dfde897a85a5b38dfb63dc69b7041e9691b686116555f44851ce22ac2b266a0ca89f82d03f9790c26d36028c9240ce6d6cdc10e5a06b999e5882144cfe6342ba150b2bc7021f2ab0f8444d51c05ab5b163b3697125d393a7aa40cb089621b047b7452ef9ea7215f2b8beff61fe37bbc27dd6b6d5bb435431db112e9afada308ebe8c216c73f41ffe489773a2bb7ee3ff3e8338c8e53cb06a823fb3951986667c4fdd1195fa6da4f6f59a612a67defc0e37a064946ce6270cbf02de2ee91e6c9f58c9c4b08305f4a4fba6ec10b4da2ecd5cf2900eb4380933043e7a01e314d1807361d73c24a75dd80967ad26e0542db590145bab14543c38a125f24ccb24f13ef319ce725861c51df351f3bb6db74fd67e8de69692b26ce2f52473c0ff35a004a6e03af004d836a93adc98e71aacd116a249748d134e366228c630275711b38a63aa1fc5d7b067ab8d4b8097db59645785dbdc9bd710412c1fd6895a53383a484018e29936691f6ebd79aefb2dee9c0ee175426d54ee157fcadbc83f3ea888e31898ef3d0d7d2b10ef094f2c624add8e247c38bbc1c9a8866b17d894cd568039b2f02918714e387e9ed0d70ee782e230b3a23ffb08aeeaab46d8c13badda970af3474a4aa695696478a5168802e21ceddd7c3507799385a31751cf90a3299457f036187104c62215407a09e3ad4d5b5c2c392664a1f45bfd0a5ce93a81b4e62b19f27f53eadbf4077fe92dae0e24f3601798f3c908450659fa723e9577275218e9535edf4909a7ddf8ab049500aa2070e30dd84634a09b4904b131c0f497942af2555099e1bd52eda94bbf866b5df65fb255991d1d0cadb9d4ed6780d37ef297bed9a28b8c8b69ff931229e0cef1c13e843145b2a26cc6eb3d8da2fa8989e8c6f5424ac8a91caaf1aff859bcaeec7f85d6985e8d35a3a42b179cebc7d804c5ebdf6c65c7f9f9bc5c084c341b75188372eaeeabf0a2ac694ea595ff28e4dd5e259b7cd99c450aee92fed2a7ccc1ea0346b0d9ad315ed6cdfc07412fc5ca7b7b3db2888c046121bb21681a4b5836b603231cdad6d476d215b7b9934d10436ae95746496a19f574daf7daf0562356c0eb84811e3bf9dbf4897bfb1c168cbb310b7ef3085b5888a9550bea23b082472c19a25b79b42e8555eb689793b5e1f7e48d5ae5b1fb8c4294845e397eeffeaf066b7300e3c0d4168c9cb7858360e05537b198879591f6b58fff66b188b2363259091c4a2982ad3147ef4d4069be8240a5bfec46a6bfee58433d26b755202aab5cda3ed1f0da7a82de280fb385fe4fe0d47c0725e2692bee2aa4a1f876f861f3f55915773f362ea8ed9ee9320e712249a91b1915349dc6c383ed1df27b87e4873a006236675687054ec3e6bfdf92eca77f7b8cf288d8b71f4cccdf42bec56a0d8a7edc31c9d015017da2b2e3fa06bd78b5af56e75a688344b3413b46921cb21d037d068be2046c3944ee81a37a0770820bcdc1784a50d079bbde72611ceb35b15444ab5b951926d8e82543bb303b2373e912ec7d63261d9b04d05e0c50b6838d4e86768692c203af76060bf90b6121290576f5fcca1decf78a858d7bb4740e8887e8130ad33028e6a0bc63e02b66964afff1f6615c17472276d0cf2f1fccfc4be620e1792e30b7c18d2841ac52e4ecba3b0dd424da4202fc8f842845baf6ae500e0a63a553f9f89c046de36b7459eee0d31000c30f67ef7b0e521778ec1951f245ee38616d76a40979281c0faeb4867c3a3cde53d6adbe2e9a99cf7e1c6fd21cfbd98d8810e39475b64969ae55f45ef9b2c0b277789859091df3172ed179de0542de10d6d73372f6a434964ea081c75b3aa4d01aeec002ad708027871790c22a07356b5f316059555a02fbd5856f021a62238b9309e5a578dc1edaf89afd8ac9575774f726abc4a337b17829026cc23e423ee4b62f2313caf29ee2300fe05d42c751f0e78882613d7345a2718abef6cf14e1e8db17b1cc5d693ac2631d8ff817139b028437feda0cb700cd3c21f52ea9691ae0719d149d2dc7bf0f622807922695aa01e0ca5f06c7dffbf2c602b445e9af9be08acbcc5bbb9484a5bfddb37a17171daec33e2148f6182e75c98ef4a4688b8f38c5d423c76720803ddd5b9e5424ac15d482c43e4c8b40ccd2814fdde038e347555786b88519adff0b6bfc37fd8be21db73cb71d9c82d869bea706b34442c1cb24d29d4214628a09ca18e6111e2a1fc7434d2e6448f85f6417940d8868f1e2ea578ba62076d1df1af0bdddb1bd64a519afcba1063e1ccaf4a42f916cae44c91d8caca87b0412066b78cc4d9721cddb19469a4d1d9e2f66440a20737104a0250be3915c1617957c386472f574a5a4bf06a2465d7f72bb978307190e0b1533a0f103854a0c4f4e51cde6d9c26ca471302004e50889026aac3df0a9084950d5dadfd47a5b79d42ec1ef1e0bcd8caf96f6a146f3d18606a1c254057a0fc3c556054551e8224e1c354040a21484762d9ed2fb50cfe0bc248f4fadf819faf4277aca0fea3b82257683d5ab77750d2e573d52373fa791096bed7706d87d26eac0f52fa26620ae7fac4cd4664c7b1df7e00edc439bd0471476c2ff6cba093901a2b2149bd980fdf6eaf7a69b8a66838fb089052cca7d119a636fef0aca991e0795a8a1f4d8ada4cd354c25d917e5dbfaaa6e0a882fd5ee1c21a42a1e282d2db21bc5779e1b3416a9df6b75ce08ceef52f08e1850c87f46014794dbd9eb19b41d343ef95bd2b97aaeb7274ae82055021c86c0f7c52b9d488b098311f869741f28bd2486f152568b69246ac2855cdf16dbc8843b0a3f01c470c4c70ced160484173af69ba9664db0022c824b0a6c7738bce90422ce80f43e5dcb86f099ea8920f3505edfcf9fc79c2f711af224905a89f88672eba59610ae803ccc00a8f367faa7068343e7652dccf9f8b831984b039891508768d637aebd01234105aa785b2e7c65c04e3e19d7ba37d1317d5010d48c7354967193e22f1217cd3ac26ecd0d8fbb2e93bfc57ffd44a789d5f42e9e8460869d8743d4f0a2432979e5dc882a6ba9f127ce2299cb5ef2f3311e16c4079f5bb3ca044c415c234829240d117355110f9873ba55bb7c462d5c292a6bffa00b49fb9eced05127e0c7b9d73e0a8f33b5e19ea2910a5e6ffe3e8febeb8cfaff7a5b5bcc908fec69ce1f0f5e97310d766ef0ff1ab0801cb3c607012fd49b01b398126f5607a0fdca6f0beb725f155037a0c36aaad2b82a0d571807d1e505102248592b1adecb45885823bfde3b37f85f956dc3417e295d636e8520637fafb211a0ceb582cc04578c360713d1f77e2777d084c26f71d25572842a0068003548b5d6a0aa45b549e1d20dfe1a0a4e74412b34200f802a031bfabebf2044083cdba75b358b7a50350e0ca63b626777e81e66688d12e9caf76d62776d67f0db9e6db4acbf1c8e0283289688aa59484fb2d71558d69ef96c6be298660afed9b951799138a31e8f1580ca8fd50ddb621cfe3f913606439e9252806b4dccd2491f33824b920fc6dd8fae4e877fd96409144f508410ae2bdc82922bb29fc0b69e2fa08545c406e997dbbd6d74050be44dce0b6c7e005fa48b48100c6aaef04a059a31f0d401280b2d7e3c15dd5a5a79d3a21986ca4fc25f0db54386dfb5b0e4a75842c47a8deb65c9a4dac04bed929c76d1c2f0f17230e8bd4f469c4017408621f18e1ced41e0f5e3717451ce96d01e032b7df6b712ea820ea557c036c1ac1461ec9582d31a54e5e8d852b526e3039e29dc1c4564be6b59b1293ae480a34fe213f1e95fa960329dad7a80015e6d40f564b0243c8afef263fc30044912db074e6676870df01a0469a9fd6f08b7c24811c4547f69986e39ae10543c0a885b282fcfe9f30b0d0c1f2523d8d3d1fc958cfc83e24ad6ab0f580060741e007e2995e173e38c6226e27e74dd84358a8405f195f10b192d0eb42de118c5c47c19ae555f8a1170b22b02e0fafa7890f95d9389daef3a4cac7fc8cf9726d76d1b699c9b20bb1d49b4ad71c9660627aeea3cbf6b35b412883544ba5164c8ea9c31ce1e70a6f16e998ec9f4b155552ac2627b54a2679b330ebb7d474bb8396fba8e9a0ff5a4c35404c68426994973ea448d436af4839e3ac6dea64580fe720fca2354853fd37a0ca23bf2e841f7d969e5ac02f93dcc274ad01f84e47330353507aacddd20d226364a2816ad34067e6f60029ecac70e725fa0d8e17172c1e18d75ef52b5a39616f05c7e5831f7d6e9198b3f0f5461375383dfbb0937fcfaa1762ac082a2c39f8122b85522c2cbaa15060d45f510284042a2587f9da03815066fec36aaae2c9b68d352059d1519ed0efe36e038234efbd650b25da8014c304dfd4c1354da646c88018467ca6621cfad084a217d8b290dc9fa0865eeb72dadcc652e11a104904180d1cb4f33fac17fe6bd2ef237a937ce675f3f0c68d53b179d8572b3b406fbef7f388f1ed41f69824a03e5a63ebe9a01297381034550cc0add1e5222dddc0975328c7f9e8420923120510eb05a27e8ad3a2f9a3cd6514ab1ad33f7b741e9f18a86b555498f6af3c551a44a5611e35e1b7989e6d4340a5154dbc09c472c94280c85dee7223dc388aee41ac6a2e710b2eec066e5895a5e811309eff2fd39c98faf7a3abeeead428f80a825d0cf8da6490806ddbc84e17fd5ac1eb0b8849a9c867b2bd7be47b5adbed1dc1bb7967752749dbae4a5293dee91e4dc6eea2614731b1271fe7761a7e2a66d485d30e5bab73f2b73d42a602d90bfacaa23a708e64074bbaca7bb2ec2c339f57283d06e148d476eeac7765af1caf72e718b95382ff73aa8c3162de50de1a8bdfc147d52ffaefb0fdb1746d60e7bdcfeba19673ebe8a1c37abf46e82ea5763b33672d70c106f58eb15b6d792fccd71b397424550e22238c7f4deed19dea68fa674b8a8258381500fec5557a73db753f027fa52ae46f2326d75e7690aac12cd55186b99c4c38ef59a2440c6057ebfda8624031a39a165637d68dde5b7d97d0685eb43d697baedcc38e66396073a7c3df0e7f3eeaa0b1956a687fdf142264ee9c84a5b85d3bca868716d71111b15aad723da45401490d5d3937485d6ece7b7237fc675c34682bcd8550b17c437aa8be958b80e48cb7f2c916ae932f6c1c3f515fe29239be2f61a93626f955cf462fc9f8853cf6d743de12c362d3429c1beb12fb8a5f155b900e4b942169a3129e7cb7dab172741b0bee3c7d1651f3957236194fdaa268bea7f8cfa3610748b9eae6a007937a5ede363f79b072fdc5828b2c644fef3dd474ed7ed1d80bcb34d5a5c98b6d7619c7d9aa11117070e2b82f0c641c4241b4c4bc8a5c45c31f193986b835b0c50750454266658cc41b859d90f37800a58103a15b80fc920f520f80f6fcf6a99ca6413eb1d916f2229568534553ea2080cd938fce91d54889c53a34a2540ce9a36d93d5ed5c2131d125b478a394200c6da68a13b716eb025e46e3ce8a6e99c02eed4648ea2f0127e4bbd28541b6a4c2f9d89df35249122623872329e5a0f502a32a29f53fc79b84ee01847186dca91b72c28243565a4434ba1e1ad81da3066ecf230d428141d0cf33424c782edd44dd8dc82bf1d48310648ca9c73228d2b0d757d0a25a7d1bee481d57a35574ef37f97f07f528def2011d95f3b337f2e825c2ad1e9634579d40803d1329af72a868d33ec2d17e75f2c7dfe212533be795c8cc701499f762b9ea84ffc1c31e62fa5108024cb09256fe4190d15ce30aa65c2e14c396c8066da6426d0804000c0b0817e28c8476f34c791a6b4792a11033d5327b13118c23073bbb2887352fcc337893c5cd348e05f1921b5e4faf528fc925a5b097a4a7619c1e3c20caa557d7216a222af0bfea670206d10283b8a95e740da24389b49276b1bb058a5eb1bcf93deafa8aaef7b0be4362cc6a44489f826c1a1b2f4892bd8d7b98489780b748034ab34bf73ac3f88250886fce2014c98c96f62a9f80b228bdf37f8a57a7419524c6d4dbb8de66f33ba1dc141aca4719d85ce4e7be3460d67bb8df34db018e27f3ff58ec45d903ddb0fb6ae588dc7a5b569d4ac3050b020944de3001e915951e60c0fb3efb10f03aa927f7817b2d102ed2b950086ffecec7206bc08466be8e28d13d03b8c5f887abce9d0ead9c5f9ad4ae901d13b972b8b53541ffc50982e89f6bfc808c9427213500468cb39c6f6d12be7e8efede74342e4e01fd690d82992c4939416ec8526cb94f1a9443fda6cac9dcb54d0290a91d7bb05d0f42da3837bd526d90833df975709f1f8f69f0aa020cea80f67125deb87d7dbc40ac6474a9d8c5998687ed2157bea602c3a1c7413617405f63e1b4c6894260fed553c8aad77c4712ab1dceb7d5a5d99bd9e83b846a46c109809eb1783682ded0a40a83703e55d01d182bc24947b3087f343caccb91d7163a2844726c758486b5aa445683a722d7afde082e66047231cafa78dde2ac61b228b2c95d498b006461802f89e9a04c6b5006bc9844cfe875774a4bde9649d989b035081f959367d283bdfbe173cc464df9a42c9c082aa3e873742e960868b27c1c244d57e7800ee15557cc282727e93fc3edaa5b11ba450bd24d3368db5d0981a141d4366479c065f7668ea9946577147b43e33fe6f197f4c124a22b623d9ae14b4911663bddba8c747aafe7336addb6ab430d1a552f4654e2c1da6c0130bfb98dc3b3d8a16ac5a0a2832c6aed77326536de412bce5f14e83f324c9ec3a139ec3a1a7a43c6c9dc1e847105c28ef7b5329ae0001ab5fcc374db303fcb68ab1b723bb7cf795b047e92b7c4f0fcd785f90489ebfbde1ac1f6a04775409182ab95b1caffdd96d10f4e80d8445e85c8fe6dafb026f529692601acae9a4050b47b1310cbea96da0bdf1f504a3f81816b6820077d294213649a10442ace5bd27bd51dfaa7638eac607a0b957f2a00df3ccd40b9386be3b21f15fdb5a127bf917fb1ab090ebeee84dab718cf2a0155a30dabeb70632161de50a432513803852b45c0aa14889df30aeb02a22c990aa5aa60a32290e83e8f91fa7c054a68930d1be9d1aee40b0220cf63e0756935908f4618cf6a10725355bd8711fe0f531dd3561b8bfe0b579401f7bb600430b3855da6b26e53ef4c135f394dc4173a85734f3ffebc209249c627e92c6c57736ca185e1968c0ffe17983906976a1d479e67fdd509ab142dd2c5d5e4dc57bf6a5ecabaa788f7dbc5f85f0165bd15208ff4757a892722bd8966d4aa94343c17c1d8e91297ed3be280ccb6531614c8b14d00ff816307c2dcde02a27aa50c9fce0c60a02701a1b703b5d6f5263dd6bee4433c1d31eaa04af43a60126610953b4b15e5b0291ab68227ac7655bf103bd858ee9497923556866a057fc6f6946659433d9bf42b28b57e925fca17a0351448c0d4ac9d78c97386e0b31fbb66174f6473b0da90771df98b0cda40947597db60c1ff360dc02778b69ef1a82d3ec1d153c73d6e41d6f6b0ecc1bf4bc65b21af6924620490aa5e393d09f7f8a5c85b04632ae0a2ba5f34170912ebeeb753380e1b87bbd24e37a11bb8b3e1efa8b30d334c988da9b81a056aeade1b41ea367fb195b1fd2962abae07867dd114c8d234ce9a3023084bd8fa75904bd7355f420940ab75d88b96da8cc59e984b327e79391113ecb52833c260c8b729a6f871693959f35b5687e9120588c99c22b9f744592b69d2604a15430c589dc6cf7b837a7cb8b595b227ebb91f79e0a6d9cd0f69dcc1d48471febe9c44bb936985284968b2d3dfb8fdc8e01174253a9f9241108dfc6fcec6925b6cadbb2f9bd72971fcdb429b712043db90690ab4a4e81e4662f8bd4c161c72292f18560cc9d640adc1f0ea99b81ceeb71953b89287556daf1682ce07a04c501d4241449f4557df10d42fda4ea2deeb0f87a365a2bf5cdce2465d178551d01a8b13386673b9e6790174b96468582b28cdc1a0081cc84382967f8d6bbe744c539cf6bc4c8dfb5a8912efcc63a912f98d2932361d871ed87e7d6a089b6ed3a40b3ce9ca5332e5d071839ad6f7b2ce1d3fe000eb26d70c314454eea3547ec3dc66c5fcb79b2c0e979407c5d6278fab74be7d1497360150de2748633c78bf8b3c8b1579585fbddbc8803f4faf7ed3bacdb5f9565644cf97314460bd7f31dc7772e0fecc33bb12b77e53ed5895717bffabe78704dd110cd42d6193a87a3fb07c247361e69b255db04318349c684a42ac82bfd264c82c1eb99f9835ab80ccc8c7512d67460caaa7b0e6a06f80c17ad8abbf493e864421975265e93dd3b6b0c1f120d6e9f5d0b9d13a8ebacf487770de9a825e5ac71f0b09a26c6990bf419435a4751c29204d5a34b92eb1e5b83d27386c797ba57b814ef2c93d1b7b80767ed881dad15472367ae447bf4e78099e539da4c3651d0d710b70018d6085a3e7fe0b833a90ef0fcaf6d98c55d827ad140d875825727255e94d70f7cffe535ff72ce0fea8c931cd19b27a891da2118929130fc090eaaf8c22639b88c7998e9056261e9bf069e526935745079639705f59114ec40824be2a3191305e32b12271bcd0de00042320f9f0cc263eb2b5ca926b1503035c5dcdb2841b0557181c76f3b9d21e8c6c80deb0b4ca59e4c6689a216fe102980ecf16377443ddc381ebadd0883f1e17035a1c21304f2468f189fd1382c80adeef947e45cb16b83988f7743467517364503c973bb2f7816d4ff06eda6e92ccaf906d8673395cbed88ad1b7eaaaa5626b24ebd3be999a9782cb722390b7f3e1024e8b19626c0f2ba45e002a18608232c2e5435c0e8e2aae49a77af327f721fa1b39f0361257468bf20c248a07e30165b2a3cc6df34354576c2991b7d46b69f51e7fb617488eb87f13059928cf445af441bb525bddc89bf6cf1b253470db1bc72e8e166915f8965e53faed5316562ed8b6f31a610e14cea67ef7929823ae35e9d6a326d396502d79545a215a62d671e8048feec06d7abdec7bac80831526045cece4a0af405e98998676db4fcac7d59b8cd03cc727f5c5944279678c3946292b312c3be12b0791e93afd1d22d37843c9026d6c0cd82c01e75d7cc17848dba77a9524a2cfaf31573168cf33a2f1cd11595c3ae84eb959d2c753a3e2cbdc475af0c0b13e60ac36660866844d30759fe7850c11700b2324e9b277130ec0029f47689afa8e7f823cc2657159f5dbb35d1f5bba2f8c5fdc45410acb571ac715a55604482bb2ce2fa265814b9e673b8bb4b8c92e1a23ea32380794af45196a04a993f7fe042074a934f2b5fcb835539b8a5c4f6fbd0331c6edb4fca62f5b7a225cdecd5c876cc707820e719bf73e9b47dbf3e00aca945bc7d17a2d37cef5b699341f96f9f82dc182f5684a888eb497cb8a447e1be91077f1415ed81e6ba29cc6e846ef6bdae333b0af426a61074597b546994bf9785184a02bba0eb75e1c21216dedaca558f6f0efdbbe102d5491e174adfd0f72c6cf8a05d05695928f76a618cbc6e1b4b1ec36e9fc2afbe5d7dca5198f18b3f9c43db1dafdae174145a6edc7cfc7a40bca2b097e5679bcf8dcffba296b2ca24a30d7c3190ec40ba586e73040905585ede71604e75e8930595b2cec9543b41725df46ba631f2d01f0280b357139132b87f59997cd97a9924c4d34f418199fecb866ae5001cf44d385bdcbbd311573a698c20646ce03bfb08a3acd496b30b093dfb46f6612dbb27a11bfac0b298c92c7112c5c1c3d63a70caa95171544e6c88358dd3e2c7ff89c59bb46e52d49919c799661f475dbd1ff47dc6e64ccaa455299fa18c005c78b3345602544c5c9644913baf7cce6fa5075d55f27a0e2f199af3d8f397ac2daa202d0ac4523e7e9f0361d83c83a767754e41c87258f5cb04b267624d5c043bd88d1a1cbb7447d6d1b9da8ae6f873a1592f2f0412ed2d3528801f27ef407572179aaf0f51b4b1d06c8f929586a1a68a7617490ced343f69014f08414a6e3462ff0d6b97cd9184279de08c10a5c1d325b1fc448b9ffdf27b3ec8ff1c220021220d532d68446f35d98cd7d91379789304a1ea80692aa57601e63cbfe37028a4c66e8d1442d2b872846ed27cf369afdfa2a00fbb2fae26ee8009f729f9631a70ac63c7f156093f0f7769657910c095cf34c64ec65a7117df6ce516050ad7fbd0330562a731a32839d274b46226f112123a828809d7984bfdca7e0b685aee7d28b98e07b688fa56cf1b2a95cef259ff87e21fd05c70e1a49318670638bcde91706af65268eeab31f28e7c2951d13ffaf2c069d12501f40e61a162b50ed75020acbdef04964518676a3ca7a27da135013e8ab71583256a3dd5bc77dfc056ed0b8dd73efa3cd0c3359212df64339e6ca2b87f55c070420a132a3cfa53e2432091f873c25f763e495688634cf6132de3b67d2fa6596b43f814732ce187ccaaafaa852a48e5e4fa7be88f9a64081af2641acf6011301fe992910b233e1afe32666e7dd2c9e0723549c64ebcfa7f4f6dbaa4e71d92c32203cdaca1ce9fa5b40348e202d05c7ec55b10966e3f0a34c70d8e63187708eca7425a35fb0cec6eacfde3c4a5abb183796864c35860d3d8180899ce681b460254802f3904872323adb441d56bd8b9a3f3c3a163393dfb924740cff878b36049cac32e6f893a518a222e3d3b0cc10ee7302277777ef995f183cb13ca5e2a94d5abd09ed4725a71cecdc4acaf0044f5afb1be5ed8120fa56b65ecbad4e6c6c60a7354d03d180499e93461fa627c80b8e5c781b3e8700b6ed0ad7de3d4054c6ee5a9fe368dbc409f5068be1e1b4a63701492034b4d3fffada9a1658cbffc72d2574e2fda06500d02bf2054cd1d42eecf0b5ab435bbf00d0b64849427fce2dac744932b7b841db2a07cce73d7493681fad0541aee2882681c800bc862364d0e4cb77ba0351c8fd7bfecbb1c1a93f13f47d11c1a909a19385df74c89d6ef82fa23357ff73648f483e57f1c87eaba46a78847f8195a74ff18e915d4b22d546fbd3c57a890798d011332eb5dc173756cef7a9bab1ba548e516e52801691f5b980748145c60fabd600a635758827d039c8e7ad4cb7b61d84f77ba2c6f71762ec173ec764c38f0d2f8c289a3a0729df4173ad68ca43e27b6bcc46f634630c46f21c4e5af7789c98f5e705146fd40bc3e3e93832d64a8d9b1a0b185e714cdf489b74217cd5d28f331c0b9333f4deacb4f160105c8efee05b22e2d81bacaf60730fc4bc106c671eef5282e93b99dfb94a03eba43993e92cbb64762e7bca8f786370e9a291aeea9d96d63065e52a5c1f01aebd1440d071e6ed2c0dfe5a132a433c7c959e683812a247ef0780de196da9ea8e19cd9ea41aec31af422948696c80bbbadd413630a3a634516c20575c8aa974dbf15abb397570c7607b14779d1cfe8948a5ca85523ac71ee7d5bb8451b2b1c95036c819975a87bdc7ac2d8cc0ae1dd48c74a802d21be0e57f6d6c028d4a7c4f9bf40c6b784b30744a95ac0ce6d6d3e8c06d4cdb33cc58ba200fd28e43d9f7cae8eaf08632087daa8667ea200e1e7542457a827e8fc3387387d2586a1732479b31d3f3bedd131444da0fca8e830631c65e24d9fa9ee67e7914980f8278fea0f83c69995a285ea97707eec073ff5afce2f75fa7d8c9b492fa6a4a915f8977c3beb2644db64544d75100f8bb7097a5bf81e3f9cfbe3b08fce74843c8f17d7b624e15b8277c435960ad8604d59221dcfa379167f1f33d067868e9958e00263460553fe8b3121f1854c4761f60f4c67de0c8a4435e0df42a90a03c3c7a4d9770c271fb14c169349a71d0ceabfc13f6c99f882013799cdf7bfa5a0182e9029d1f2ada655008e2a9e50015a3e16a75c9ec5c8ab9b0c0393c795b05003995e8c102a52664a8246059cccff32158833014f0ec890aa308969ca054b9159a648647156e213f01cb7815b6117950f356b16ac9115fd67d7a5d961dad338dae519662022ebbec5d0aa3941c4f7de0bb40fb01c7f5876a336c8142bf437f5d90a846aea6e183b9d09afc7647276cbdff6298d4ab494af128be3497890bc416282d91791bf8d6893e3bbd21d930d1d8810d5f7229600c040b51db2a538b6e3003da82761aa98db34512928cb396acc2d91d532aae423ab4465d8099c3ef40fbeccd0880e16518670163dfe33808b47bfa6ee8176c48df86d1e830b60b9b8a8d537ef3aa992ffe0ac0a6c635899fac388254613da96cb0483af04a7c43df00fcafcc60a40f7086868ac8cc72c00e30d564aa306af62d570b8ddc9466722ad3d3ccccca98f2003a23390653321d3763a400353a4692d27e213202365fcd1597b654ea02bf685239851724bbe286befd204f9f93600d0071bf24fdb68947138d3a468a80ce770501702bd252db59601620192bec05add2c9fae0568f5df6257a3dab4a87f5116a352d05ebb23a0adbea66dbf40b98cc2a2c35c3ddbaf898de9e21799ec657a6e1b1252ff1b008f5ad787c1e80608ead33ceff70cbb2d483433e78594fe69af78afe48a187d53deb0aaa234c5dbfc31b01c7a8dda2a7849424d31f60f506c4a0105a8546deb891dbf38e14a9bc9ea759bb722a1c34806c1dd9b53ccb96b41c007a65d509ee3f6109f3f5c1bc15aa19c75a713dd1e9bc5b2ceed4670c9de8554cd61bb70e5bb497744fbcf969f74a7a4c9460b6f00ba478411253de991e6d00692634ada3af86850bf4f531d75664d8088ca1d865c7692998e812a590674d797a247a5da7bd79dfb51dfd2600474609fab0dab2a7b3c767418b467fc85cd10c8ab4818acfc5d89421ab5c230b4ee55366c63a7ff4556269f5b297b62242295033a3ca2bad1086b38f9d94c643e913dcecc728df1be661c00180378db94bb5b465210b2e1edc75ec3a092d7a338fb9180dbf319ec7830a307755cf305a9cfc510be95c28ce969685542c37fd0f2dd07012c959b4304d90eafdafdc0a73652d2d383f1c0b15069bc20c1dcde97a5e9f04de20a03aa775a0d8865ed72fa23327ec62d0e8b408149ebac1f7b3be955b618ca8b81cb6fb7af9396f90c36a1e0e604d1b0808b74bf3c92f8b2a38083e34fb9eaee221bbdc754660b8f4a4cfce0099139ece7da19ed590154b76cb32c5b7fb8c118510b74db9a0b776020fc8254b8aead28937e71dbc9e46fbe3877336dad774a5085191b078f56407a25a6a2b3c176e89857b4c124c17fdc6d15c8ac07fa7a4f5796205c47a1bee997253e48e2614cba688dffa71494d111c464bbfa6e54ea1754cf5cf31cffaccda9c78f3ad28b4386121436bad4499ec609762f5f1f94f1818cf1db6ff5df5a1ffb239d2773d3554521290ed16b879fdfd62f7bd8b6f5c606d16480fc2aee5d1db6a4a0654d26624db0b89cb655c2f5b80d40c58eb7327b9265bc813551ca2a568837dcb887702b96b13653f13c804e6099afe62ef8de90e7f107083de0f6e178f5d555510c90af320bbbf22f191553d84cea348b8649507d1310e4d56fe5ab309aa312a2e5aff56a58c80ca145dfe22c2edb23d28bf41467eb768b015d013ff62e9e172b5138a9a9c53d4d614c22e7a347a9d5a1415f8d849624aacac3ef66948454616b8a4b2044bb82d482ac6d5d8641f0d3b46e2a366247b3adb13e65229449eb0912076e1c36d55f8536fe02af70a88c510d7b374083602f9db0fc2ef13c9040cfc25adf23e3e8d16b2f05bd4897af5dd241039d3906451184ebce4158b2eede8734963a49c69d9046e00b4ea4258238e93f007f2948c642840ce48fde85a4d3586b8ba5187dd5aea21d429bfcc80ab96f4e8b2b13b4441c223214831bb493def13f5ad1f2566541ca43f660d203fca22701fe0acb21048a577546081f5ac8998deab2bc6f51a6da755884db9d6b6fc9258228e2d0a0a1a38cf0650c9461ba46d5f44d3aa357903ea1dc9647dd4ac56623e09675a0be490b73fe3b0999cbc20b4b03530bedd6fb9878a1124da9b0b5b25877122f29f7938de9fd7fd2836db57d00dc77095cbe1a2cfbe533ba178c8cbfea75eca4efc0c8b6e73f7feaed22328ad07868680693cae599593125db77e8db89fad743924d99fa5163b370ee579c27a619c91a43290643b5606db689ab026a48d68beb0062c670cb37ef608e0e14ff5ac263cf31c493fbde04546d8fb4d16c3000410b2b7a8b0ba85e7e339d8eff9dabfeb2305c53f57f9b1a1f4395a31d6c07914bde85bb0431bcb2e254998dbe9b3e5e7bc64f72b75c434f33bc7e243c0e209b2648fc638135f989255e7837fbc196011e0406eb6c46064e837cde7ae05a70e5ed3b79551a004b2a5ee04ec6d0273faf5459ecbda08cf2e57f9379cba2f4a841ca16db1c9494da7c785fcf8f4570a350acfdaa2f98f31ef04bdfac829862408afa2e64d92ee5618057f5455b8ffce2a2c9433da0ba093182ef1f506ccc56dbc3c4d78d8aaf71f7b0d4eaa1dadaf8980ed7903ce701089549ccca4aba5b5d3c2e6b2c13f7661eb1d149b96bf5d65fafd444135d67163168d3aaf37ed16d01899b780237cadaf16bba879aefe2adaaba8ef84485099d58509b4d44698892068f9a11961e5b00ec06c25618ba7dd2152be32911981f0b9986b64fa7ba65b3911d3100a856d20d47e58b4b0386562fc25751f92ad4a2d9180a673552b4ad757892a3f7740f43a5b6ef52050c2695a3858a3fa545624fccdfb085c8777b51d32ebafc87b02508f8b8c445f80c8a8d48cb60f56cdbeb4aec5f4c505d2a89cb7f7fe43f052ad22caafdec13c3502217209eaa504e11b1752e2a372a80a370aa03021135ba37c9c18e53c74bb703168e31d41a51f968937f27a3aed78529f150e3d707a19ed2b05cb61a6956bcdd9c0ec4892573ecaa452cd100257f4f0399da667be22623a33ad184720609c962bb5d9bd5962a802c0e94434453e84fc2a84b3d0902f2de4171f0219f1f4ffe8105b4bcd07818bb2db1608b487c19075bd568bd6ba9c9102bacdc7dba9d83129416c978bbc7e1923e6fc765d0d97211c9d445ef12172a849181687ec8e241f7729272e4aeb32e14fa64a18867fe5106aac14532d6761830e6b4fb98fe4b30ba65ae4fd0966967c66eddf1d3e91afca07483e1b2285e3b994610edcadc905d13dd46d9a2f60ddba7d452349018fd52829d1d28622f736385af04a54186e862d32c205ebe898ff1989d83a8175965d6d24ae8bcb1a116763356253096b9d3ece2b25f7d0e9c78e86041fb4037be603c135a515ebca9d99b7c46313b426b867c515d9543bbcf055e2918221c40908861ac9735012586ee1bdc15fee32b183d7b391018327bd5ac1ac33526f19c0da5a9fedc188490475a2585b06a156f5b8f7104d454a42d7225c8a4135e265aad94b5647d034cc02a4b638f34102a39d3fb31047f800c3564f856386b683f2fdc48bf74d2592e535c4f9c77b09d4d1be6adfa38689ac309346a993faa3cd0d5a18786be09080f5ad25b2aee755e46c02d9ee5523b4a51aa3f1329f8241b606ea361185a0e3caffe9dc42e54404fe226b7e76803164f498fabb7c24d06d578e760c5b9f4359d0fce136f9da40a5afd1e10580d95569bfbab17e46a00ee42cb16fb9b92905fd022d43e4c14e9c0bdf05a5a61990a2a4a058ca3f4a2f9ee9e2be7689288bf49fb29eae5314c8891529541c2bd3a7d7304297f64c0f7199907d4a7c5da863a9c10d71da543f550fb6529f2e422935d2ab8eb03e02720dcc151b64169f45b1147733ecb2420fc8608afb421dbca5ee76cd2fdd34688d7c0056a0b69448b4b8026406cb1212319c2e57cc496f02013623797e36aad2e51fbef4b1db862e4a5cce3272604303d6977e2ca989b90294c50160dc4d4b24feb149d80b2ad26b7eac234ca00e4ce11a153f48031037c75a43e2db99830c77d1267deb961309effc285419fee8c3152a70868c45353049d0e0f43fe3ced0a6e90b617a56abcb836205a51bfba452ad88273be4a343d278e19838d44e5a8a7fd2b7e08cf3a29afdd999b22c79462ae77e365d2515ae535cc03affb819df812f35592fce2fcea5786b1274a23805956e10f9419f1cce00b00b62bb508296de79c48d6ef60a143fc04a8713a72b0ae027573e077be4f49b47934741605ec1df8a8aba66f81cffc00e4c20b427ac40067c4b9f3cadc0b93c1de06100a710070cacfb33675870fb61828742627820f3d4b8517b2f686d85d6add8b211db7741fb266a1bca37dff3e124080f2d48fe74d5d1b287dc31e940071bd7abefb3bbd838c602e8ff9fddc1e092df2f0ad8d7cb7d302c5b01ce01a06d0c02e0680374adb13ed0f7219ddc7e7921534c0dce88adb7545c1883ae146c021e03a70081333e895fe6500c001d429bff83c0b32d309f555e3a3423439461dca1cdbe7110cb97fde91eccb8cd5cae1658bc921f9cac00857d4647176006e24047b795efa7ab3a4c58eed813ab5023a37848d2b434383cf7a2f44147682ae6bc144ed80de37af718de15755261a4e2636c1d6bcbf45e2fb5055bcb52b347af0ee9cb57ab343cb4ec76535bd89d940dba1ef152aa5c91ee6d0da420c81ce710ba7dfb16adaa971358fe4e9f05a5f90a62731b57f9ecd125abe1f19a465c0830e61abdc24bed8bf53c29f7d87174e73263212a0f20670993b9602de74c5359c834152c96642d2aa89361d2a20fb767cafc8e9fcd5a668999ec755f63becc93f8c7cd16776375ced9760547e09926b978edec9df087c16c55128cca95bb114015ccfbf22799bb46cab6e4cb2ff828d9fe8b7e7cd13d68cd42bb60a0e2412db3b98a1cde4c54cb4bd8add1cb9873f6cc3f03e671a6101aed07959fef0963fec51560cd2ead3bcb2ed200eabf24b97f9eed747858a0ceb9a084fcd2f24c1130a8999a19680171d2c74cea5cf4b58c246852496e24a70c331f57212dbe43ab8f3229a82860a6357304269e551c8ed2bf1d918455ad6aa4dc730766c05ded8e00404681520b5c7a46e07a991834c011451a67967fa0faa52a834bc36ca0c1dea7830da0d29a60fd7512431943f72d7a15f46cd2cf25973843bada7d0ecb8a51273a74ce57595127ca691afe0b5cfb3083086e55bafc88995e749d2fb7b22a82ae1c0834e942df49b9429e6a4049e63a1f7a9ca95d998f70a30b10a8ec3fd019d039e74c0355637cb7d9f780af5c60725abb4212c9760a4791607c9df2a39039275f06465a4a257a99f4d8e7c021299506102af338c80542634816d36de2083d9f0809811647c9703ab7b2b5a043442d21338beaa5d8fd3f5023434ee5906dc2a8dc60636227633a13d396eef503147b11d97354732909d588470ee6a3f5a0f8f2477d6190908143174d63b60992d02196c72700b1fe984b1a9b209195ac82a655f70b124a8622a28119a8051e20a68293e00179c1a18aa8194564e9be0e02c49747b0f3a486ef98aa83713051fdcacb45322c519c159781ee8c7e8fd45339c91920a6c0fee6600856c8bfda4584713c7361ce93d18f0aa18942e9d0256242bbf1a8a5b53cc02e9eb1430aa72b6c44b64422e5252e24a6bfc087fab7ab88fdfcb0f81f988393781e848f7456f6c98170e86dc13f2e63d994403dbb0dcc54029c7e3b9920f0c1490d5183dbaa8c386b06940e1da5570c8b907f865742ba2b4f6d6fb1105dbffaca5aac34a521cda2864f1e9ac8ed9de309cfe30063fd46c9e65d6b221a1d8f295037ab43d94184e7922e8c93e6b9dd01a0e2c48aac11f0e9b9906cc8fbc3e4e4870719a30600c8f0b80a1fc13ad3e49f734b0d5fea2809fa97f9121ea2ff997c93c81efbde36be7883807a7561ed2efdd1f9f6395eb346daa963ac4f1472ca7ef9a33edc9e3cdf6614d7d6a4b4e3307ec9aa0459c1c5d6190158a6f0332c895d020b470c5dd6227afd37c23f6a5f9021d6a3032d7dea571a6bd8e68d2a08b0f55f9bedad78ce892a4cc36ea2a5fd540d18a70f14a381ef03df98756a209921afc3368c6d9099a56745664f53f76191a1c14f9b35f1c156d5b502341ee5c2f8a49afd464fa6f8b84717456162f2bf3a3b54ef71f046a17077e97019403534d002042c9e40eecaeef0600fe5da1beadd5d419df93e0f1aaf6e4bf4f93b79076e313041ee31f283f1614e89fe9369800053f50faddb7da604bde861ae623b4c13d511562a8d0207869d65111e9f6f3b8536905f6651e8f108237e86d2d1211b8b8e5b74af199913d2be671663b5ef4fb8be2322fffdfbc4d0c2966b02892bc4a4eee70d2980a197e0b15f9d0e28e05357428414dc1c31341580d3e80f0714cf1a082baa0af29ceb0bb718d2568f5ecfc76a3e77ce270b1b18762ccf9320acdcf92a0222045eb16db99c29bd506cd949948d9f1d500c132d0c4a9f8894dff6d5a074025cc91e05743f7a9f008cd54879c6cec9f47c48cc02ee1a006d934b59a1c3745bab8567832aeb7d326740de199f99e42eea25dee82c842226087a8782e537dc291c5da362023b6ab929da27588cd3641156a702b657b11cd71f11f329ba4475a8ae94c8716844f21eae165099cf799fb46f18fba9fa71b1b1a060c9e5e051d55c42dc0e05e4670803541928ec40dc16dc1c48d471e4b2650cb5777a5420028debc1f122904de3d757c269c8683adac8ff98b5f69934842c93470a5b2b6eec8901c24d56478610f877428b9c888c6a8e13a8e389046e9775a63385f99df393658d956b4c6fdafdee28dcce70cd28ad0f46665a09a9f4b3c401077863ce712b3f715f47d0c253ee23df8bfe615b9f9b3aa5df43c69fbe9dc535d7c3aacfede56f4aea2b2fb5af0e1ef86a0d15f0616c11eab9ec090c7968ef7fcf6a3a15fd7636fa26ec33b38361c702f0c09c3edebd04e588a8c5eeb3eb47312754011ee8c3fac080bcf0529a46c61c01524c60d09b31bf92f1038ec624d535d7c08d69f6fd06fb0d0b079806d4fb5082b7f73537a0ff4e05bcd862c3d9f9d08bb4509a4c1f2f228221bb5eec5d9b36ab481e6885422f9db40987e666880b012f21be66f0643794f3a0048c4675bcc53299082bc0467d351425e0439eebbffdf4e7f86c93d2d25f69ef5404dc4e55de09d3217176acd1476687aa2681a3920cd19eb75c251896a165129d93cfba056142162bbda917017b069a13d91d7007b091b1aae648e65c7d4b49689f530ae7fd8c9987c22aa5f6490fd1b7823c541c3a2e21adaa27d70206c188336eb803682062eda231e59c8755355e92ae764773714d2d0f4a40ee51ffecdb8c1240ebebe2e5820ed3b6ef20f126e7e90bdc9dbb0f92400709356e6efb031038bd0a94b17071eb43b9fde43b19786ff7c2a7a347f6047e1f29149d4ca2da8dbdae8d6c4456458558726192b633c823a87047e85845bb0a391c830c407a72610450e6d2120fcef0655f4e3249d765bc6219cfa760e4b879da76c0a8837d48220ed363ad1f444480f9e2d79894e86e46b531879c53baed2e5b08acf215a1b019e8298f277dcf3d460e44291d3b43fd72cf78d8266cfa655e41aa0cb0337870c316d0548853f1795e3d233db55e5dce98b618e4a338adbb0d317892a0f80c3b8de78af6c712387f41aca417439b780ae9a59e3c6feddf3f6f32a53df99b9c44d24c2bdf384a441990c47cc2a48668a15b03bd774cc41bc964a1635e0f8c20b43ccc712da76ca67933ddbb313a9fdca42a812d66cef2c610e4534b080b8eba628a023f8058bdf036556b78ad5a2786535a688d3b942120b08a808acc1c0cb4bb028c202488f1202256e2bea89803f4394ec40744bf22ed74449d14fc481c98b40830610006e074334541d6215fe13c5e436f6fffbad1c08b28db60af0b8c10da69addfecdfbb5ecea1144f6504b6dafddc9e2af061920f53f8bdcf4ed8ee6c2d15d8d4121613f92770b54e3070d28e636fea8a88689bd47967bf41155111db52f671a87b752031268326ceff81df8f848febf69caa96e9fdef8ca3bf538e024fe5494d4f23e61addc772887618fc93cbd625e51c21a03a6a41d083ae30286b09a70c48a9cd5c8ab422551b634d4a20c4040f0dc0e5b15cd6aefde177993ed70c15161d801c720908ad36eed046ed8ac0f24b4e0128eff8e8c31d5886c054ef4c64bdc37da3e73f252fa7059ede659e86b57e11971c9fdea3aafd25ab45d7031e019a9b154947f58a5542dcc412f500dba6fe5376584979950167d3450033edeec5d996a2896412d6bd581e05623a0a97157c3bbf5f07ec3615232bfbf23c5b086436db6dbc8a23abebcec0ab22b2e69d49595d76d3edd75636a74b3cc84474e1e8ca16619c9a939fa3dd2a1292e3c0fcc5d28af97e4259ef1c64877dd6827e4b9934c6263549b0d909aa0f492d33f4acf96451546f89069af6205632eb9df84a246bf8c1ad6f8870e390880b844b878222ef7590209d91ac792d3074f3be89e16fb031ac388d18fb0d4c25f1d38b81733144acde0eb043b716515eab524ad46d8fd8df0ce924f64c32a15b67ae9c36a45b4210fecbfdaa384def0b73543d119268e65d62c620a954018df4d27d2d5cb74b39e92e2ed535672a5daa36121cf2c30c7241153787c2b3e1b737b755dee617217e3fb4a09933320da131e74e0465a58854c50a318cc801003660504d134a5f4621be81a2b0a810509a5cc78dfbe85129e682edccc74685f697b69b6e9060a76485bd069f827c421f8b0bb1429c0956d2314dd2d84fc58db14bacae10cbee2169694db95cefb98cd5cbd65bc499e9ad5b319407adb49116ab20d95aee9135b2cfcb77fef8dedbf4f08de728e61693d68385f29e21960f4e62927e55279643d2a26b83e745407f163c979469e90659192d7fdcf6a5d2066ce734fc522bf0dc66dff68f2fd08f6bce75b552f959f5c3a14869959cab54c4518a927398097438d14372feca2ee806cc3c81a20fd4724b39170eee421ba29c168bf944f19f191186319c081b0ff46459a4e6532d2a8e34d31a6df63699caa09998bc766e88174e15f774476869f1d4cc41a3c6feb0452009edb859d74c4f75bb905951f8297028399189d70d1fe1ad3f827980c93a0471148c5da85000c1ad979c4b86cbdfa21cae99664b07eb0f60f75865b28fe88b85faac88a084cdc514c686f675823210b1988dfb3c9e2cba3889f77dcf4341e9b38e59d8d2e304527e44b1ad3c65eb4ca20f0fbe9d7cf768ba83c2ce5c08a89bc2f2c34edf7aa6bd7d39a1abe2bbe31f2ca31c271426c0b4bc94a26bd6387121e6b528213c1f5aa59674d7d7a5ae20497bf5d07d247c4391e37d3e9faeccf0a08d879efee8f7d5587e45cd034800b473b6a2a9b7aa68ca8deac0573167cbe5b80aae15616d298d16056fa643f7d605dea9d22011306bb13def36269dc7e541f2e1c1e24184c07244a8f52be875bd33182e4122d3d1561740c4000f99291c67eff46522764b0b16591c31f070fc62283c9306b24dbbb4fcb9ddab715673b45b83af948814b6543204902dc2b30df1e7e34294e3ae92f9f62e31ed546d0777b42c54844a76e32107439f5ad49e421117871cb5c56eaeaeb5347841892374fc993379937b35c7459ff9f9cf88e6862ae35a620a4827a34789a096734edfacee14c991bcff184c5bed11ab8a8bde6907df668ea0bea90dd6faab2caecdb70dba63fec74f6cf3161f65fa7bceeb9a90291ab4183eb1e47a1f8d7b485d29c24daa3bfb2e14ddd7bd56a41546c0d963c142980052fadcc996a59255fee55d1f6bce84b8aa3f41f44ea1f7a36eca5488aafc3085ac428a57faff27b3e4045e237e7e3dd95db839c1113251518743042194f0efd6f5e4cbdfeffb086ab5377ba556bdf40e22073b0d6a0979acb608cfed426d3778cc1ba761511bfb31ee96460b503e8c9e86ea3158a788a63e02065991117defc440592b3848bc4083cd7977602a9760693296da279c3bf1392891943685238bcf6b97541eb9d5e879f931334053973f46c8a2a4c9d47866940f7f3f99a4b042a4839c7a2af48519078c368d791befab822e1a62e2e7216f3f52e6d911677f7c00e8b5c48c970099a7e0334797757d515188125a2c759a4e902ca67c20c7302bbbd7c86014a7392cdd65ae309eb4e8a732bea24c07694f5946bda47aa34beee24896245beaf6ba43556189db41f30d8587bc5d8586621f9500d6f875ac973d2ac301b433659b00d43c41074f6b930cdee44d4e04385a2bc76896531496b398d3e8cba0951bf0c549048b90b869d64571cd7e9e3e65f151c3f9673e2e051e51812bf3aa6c5f35980d37c0daecf63d1d49096b32443328066773486ba5a5f12f7d20ceaabf0f532d42894694c0ff0349f3ba7610d1b2414cc9d18e69e369790dbfcac173c0357dc1f8398cb0018ea01bc4d101f032efdd42dd458b02ba32ed7041a9852df8733bba01d8a2257fa06e870b2a0725072cdca7ba0c9dec0b0ab46746d19ffe02374e51681b5846ee48964e7e9c20cc1260d852e84c26e3a7f734013d38b1236ecd228930f164d1ad20e10a6bd007ca2b7f27cef96055e9ed7bdf88ba8c808043cd009ff4808e02b2068969b4688f670c820f609e4bf80a2c9af0be28a092c71fb69d5dfc5bcff06444885e05b40066fc9035e165e6b6d7fc93d3c1a4ace2019e1d2a8eb97c1607fe18f66374fe2ca4295caefbba911069cc6d7da010c2c72b15580d492aaffeed47fd9a64d6252490e38b174a091ffb3f259b4bd7768b86dbadb2192baf0b08f5efc7757769ce5dc992cce47db5df6e603da1d6193ac51a613d8def6bc74857e181a68807071c481d46b013ba2ef8ba2130517fc5971b018b8420f0567d6de7cb53619c4622e63e80e2d5e1d76603a75758bcba477172b72a1a8f4222ba672aab88a9ca8d63b16b48c550c6596a223a65ecc37f53c8adfaa638d7d9ef5d05884432d59693f9d52bccac413f6762ee8b6f319a997071820ceb49247ccb75b8d1e8e638442cb630f64b0c60f1e4a75cf3c613dda9cd2083f3794770c2eefd6965c1a13d0ba6d9b6ded62aa95e8d8710f36fb1c4184c38dffe6afce229ac0d277c90b646cdb0a7ade49e049c73345a3c17752b5f9a3385ef8115f5b91b61f6c72afe28655aa02c8f7ee774504b1bf9e3cbb0a06ce02912a2865e3598c6051b43e8bb63c94090d05f38a457e81bbf0394c453db6909c41da21314a91cca64750dec14b8ef99fe8452c7b60bf903cf6e4f8b5a59291e01d075a353f62641d6f8ec4566051618b2709350c66657460fc73c936382c0adfdfc841be06c3fd1ff1424b2e04c6515e2bbffea8d30c8f050f29ca4540126735ebdbd08546b2e8e2c57ad06d013d994c62ae70d8a1eb5d88dba26764fce467dad12029456cede33dc60be4dfa72250c3e84e37ae80597a4efe764d61f77c5bdb3f9b44f3eb4b58f04e6ba4e60e93cb6ee37ad9b3537af4788819156f667789757e4a04a4904f9a0b6ebf31115ee206a2c86a0eadc6d29b0b3cdda42fe2648af7061c3e24a52add2aba08e49858153489d8de228b2acefa31e0d474b6c49395606ba226a5f079d0e8eea3bd5fcc99cb10ffe16166086f56fc7edeeb672b9aa0816c374f57424e8a3cf1522671d19fd31345f8845ecc831ff5ba65e00f298727a943860e9454a4123dcaed27905a4a5313d0299fe712023ac6c4aafb64284bacc26d7eb9500dde0667680c1ad0f2be72f657dc408ca501ba18c44e6c6d38670309d87329f6efcf45112be4fbdb96b8520bd60705ba043a3021ba780baa08786e13af268954e09546004aaab9fb554205e55493af93811f983891d1966a6cb38dc4349b70c4fc25cad9b80f91185d9afaf8650ffcda40e34283c5e3065c353f6f4e31cc2b3916a3f4d20ef2d402cc8ef45f1b7d61a6999d8ca86082184ec4df6de72ef1c0bb70be80ab7be5cb8515ca5401a5ce0ac2db812c6432f375da6502eb4966e1d3931aa4dda7391d1dd64a56a75529ba84e6f9599ca16b898e751dc724ad5744d2e475dd5fdecbc4b8fcc325cfe72a71638a944c9132c2212f9a3b81cbfdca594c62d87e5492432c82917940cd55d9ea92e912664a88e019f6ca96e5d954a064cc5231ae4d49c3343c82ef8b3390b4eb8d353f7ab4f725c205874ba4d67a73ba710c9a89fee37f38909352a958c94fed55a2d53ada6d367a64b8f8cda63428db2cbb268d065d1232f2b97abfe22837647b6389a09424e9de69c58e0607ba7eeaaee37f3674d992b4e725c75c8cd3933272a364b3c509f333ba84f164a29fde970c33975a77f5d47dfbda3477ad5993aab5375a94b8f50233b4b64daab5a4a61a512b6e9c04c7145d21e0d92d0e5bf949381e9adcdd6b45e6efa380bcb02a772c46c83bf21da932f72920303f5912d6415a6462fd884bf9829b65d5071e7517b1227e6363de79c221342d236e4655c36e18c84609dd79ad2de8c7fd694b6a6b0842c29ac2396112b884ae91516e222cb8f4ee922cb5327b22fe3f2b48985847ad13458918c9137ea966429a424cb200b28cb5a6b2dd552c9c273ce892f35ea8d07ad73ce12c618e3cffb4d4ce79caf99d61614cb65c67263ac9ce52c1549af5856f6f5f3c9dd2dcb741f1f21355b2f924d56e9c23ce9bcf47033954a244022b79d1fa20ff4255356ba33d1877953d69ae9d6531e3f441f66366b2e35fdbcf4b5d6d7c8104acee4863387d4e05167bd0f8d50aa9cba537753f330478b048b272d171f75615eb9d90afe625e39a5b4a5e556a19595db742a952a6197c3a7ae8bdc7050b79159d45ceef7951b73cc107f3017ea55cb142d5c6ee972cb21a4a1462d9da9cb31c33c6e38d0e5a668d4baeea8fbf964d433a951d46d3a7e914dcf4ca6e7583799ee93efd7a797ae4fa63f441f3ad4adefee7cea7ecf2e975b0ee87261840851a2a592d5f48846a152a817d449c9a23b64312e66a1479fcd9163c578cecd717badc0c5ccf21cca84de0fe6bdf12095300c961b730c2b8615c38a61c13c86dd706264f79bd9b3eff0eba678383e0f7fb9291e0e6ffe2c83337fa8f7f4077ef23364d2812b72d619dc4c47ddf9896d6486baa89bae1422b329de2fa60e37138a7ed6c8a71f2210a8c38dc7097f3ef9747a279d73c3993f5d15b6e90b755337dd399f4aa58e4128799a6edc76b26c2371ac4b0f0225b9870c998020280331c95e864c80aac83ff99421131140c999d4a8d1cc42660b378e982d4cadcf442060b6708df6e8e95f8d6cba3533cbad7fa75b18db72c4ef746abaf5f5744e99ded3597597c72d87a7fbcc29cc83c25fccaaa758b0cbbf13eee98cba0bfe26cdf43f4420549807f5d44def4d470aff107d3061dcd3f97414e6e94eb3dc78d0dce11fa20f27fcd5c8d60fd107ab542167715018b687fadc76b24cf10fd107d4336bcb617af772818872ac53d333d385edcd13ce619d5a37dd1ceba567a5974a432f47ddf9d2b5af2fb76fe67f884040fb5a236719dc88e4582fea3eb9f47abb58e94bd72a95704ba97bad262d976a35955e6b35953acc33af75a6cfa7ab4432bd9f963ffb9eceda51173fd10360d21e16f39867b047d3c01699be85494edd8589112c72eaf35916b5bae14496a76eccf4a8572c975f13b947661e97a7fed91ce3315654bf8e09219279eae9ebc43ce82b0fd34b335b1dde31bd741386b8f4d3fd4cb72742053704c4acba4d97b0f56dbe5ed4b38cbe743f22b9f4b8f19838553f6fba757a53f5dd53a79f3091cf74ae74b8e9c4ac42611861e0289e3c542f611ed53bccd372dad35fc53d9d5578b617e356cbed316bd3a19d9e6e3b2d18b617037f3d92aefcc2b3bd157cf8b915e1f2d47b2bc2e5a9672ef72b925394deb92373ea19d52613b9ca0c371e336e457cd6e92776c11f0772ea2a1b4e7c8a87cca9790be78a3f7816fcf9e41466393c4beab29c1ea52e63eaf059ea52231870a99406ac472bb2dc7860b17451a6d361af542f3de27ad375b14c2d1ce5b4a9b56732a15e3a61db9e099f30c53cf1db4ec49feadceb9db9cbfd36907568455c993ede79b8cd55e92613fe5c5e5fc22e3dda2d2646a6c8d6678e097f9d4d477d48aedd4f77e6d2e9f0547a77617b25979b7e38ead64c5daedc763a53cc33756887cfa2464d77a784e1ad4ff51edeed50fcd95b73c66c698757a587fbf564fb1fee3724dbcf5cee7e44b2cdb601ccbc6d3a300f000b21927b62d62eb71d789427fe88649e3e8c6b7d7acdd2268471bf1d1aa7ea555ebf6d48c01b19d8918c91d68c2a942b7d625d56a188b6704ac78cd353cce37dc661ce241538a3230ea6747640a3398f5290e716591e4a969f5c1c5d472ea02be892e232f202804b8fa6c051936532954c25eba54aa122a1163d9d708ecea748a7f4caa250b2a44759d22859522959522f3e2b4a96bf9449c7f080a9d1e4e1c2fb28bdfa681017546816e98022a141149772dca697f85f64cc5f19f7e5f686534baf37e6f3c2dcba3d3493e663ee1334cf6f1b0ecca559d4b2ea942f1c25e10bb164d169ba2e6d6e140aa4215faa738b5a632ecc30370769be7453f4989e9ba4735b0e6928e83739708a4a265c9115f9a34f1a0914b21ce2505db4478d6813ba0519e63c2ac1169c4c8a2f2fb4184396a750aca6b75a891bb2852b500db2bcb0ac29ed515c9dd49fdaa41e55a0b661a46d98ee57815234c8f2a202f5ea48afaa14f0462c514a8fbadf5c92252d4d2e4f38a77cd20412fc208a3c2f26fa68504ed5c76c595e58d67ce9fae8d1de916559b41e5d3a81a346d3249bc0996e5916a5944e4c9bd4cba34eff793c4164f27c10999c3aea55c53cf3a9cba013ae4787dedf3ca7c3d3a08fca5b77a1d6e596a3f45aea2ceba657975bf1364d6985696f9e0e6f237d72ea84bf98835e2e900bfe7cb28bcb4f998ef9fad2e529954eb71cdd3bfccd3f1173e9a6539797aecba7e6e2826fd359dc840020f7d4c70c371d3457ac3a7cd25e4ebdbca85c9e32a14d64a8110acb2dda33fde5a66e8a94cc213b9d4ecfbafba5dec5695996e504fd678c2e75eb7e2d0f92fae959dc74acdce55d974a1d8552a9586e234f17e6987a8c9b3a4beaa8b7dc20dd59aec23d9d53975b4eea289ce261b90bca84bf984d5a369998c0994cb7e9eaa457a7c78c7a76ba5ff7539ca5529c6da53639da62754e54d54b3746eaf4f97a85d4dcddba41baa3ba9feee95627f3d6a3ee9047775513c8c196db4814cc31ae9021b97bcbede99ca3bbea526e39dd55b8c34db87ce536dddd2fe614be80cb574e8360a646b2e0be7aa412b7153c8b523246828e2c81ab4fbd0749c85f8d32690a57a1ee1d23ffd9afbef4ccf6933ca1132025718ba0afaf983c4272915c1252b385ba4b29f5aca694c0958e7a09f3a0ee721ed4eb142897295c8eba8b8f6c7dde4fe6a857b2d4d523194426d753a37ae95112b8fa8f1a31a947a74e95e74d3070a39dfae90691c9a8c30d07952ae2be2a94d2312f607d16c129b28b8f5e6ef1724a8d748ca4413968ce39e74402078fc0b11c1ee14109b026edb5c42859a552e5a255604c72e4096c9852aa5611319b3e9b5023d8634e7ac5826567952c8be5f019cbc59c5c8ce51f769425cb6dba0a75a57a8905673bfcd912fe8a9051274e8ac045caa457426ab62e2d4c99f098499ef4ca7a6264f3ca61af7079a5cb2bcf2bd5b2b02cba51417dc2dd9f4baf4792085c09634658d110b82ae48255b80a3d85857e3b255f6cc97869a1f5c889693fdaa425c6b5b8b0a2b4f704c58e30272c3891a337c7bc157be8bc858508812d294bb85834a510b8fa794a6ffdb1bc98a2ba945249022e0332f3a85ebaea2c8737759ded98eea6fb71b9547a695e94a9c3a6db4854ea7ea8ab4aaaab2cebf47a875e5eba4341bf79c1b0635437dde9a2bae9aa0e371c213677f81b9251b847e6d39d9732295d154ecd5f5204dc0cefc19bb1040f40609ae8d537f4c3771c0eedf0ecf01bc2bf0ebf211fae73f80ddd67878f517af50dfdd7e13724f3210edf49240d91791380c3c37cf86973782bc4e1b5200ecf2971f896061cbe4be2e33e81c3cff4ea03c07d1cc61c89c3d71c71781cbdfa18606380c30f81e3f03a401c7ec78dc3f758e2f03e2070f81f0f38bc120e38fc10220e4fc4889f0200d504d118591df921c502841430450296e4c062e7f08b875f8c5e7da5c34726bdfa4c878fef71f8d884c7e1b71d01871ff7220e1fa7f4eaabbf397cf4a2571f8ce31cbe7f7a0561cebc0b447463e30211f9a87181888e20c00522da31800b4444c4cc0522d211c00522ca41e31ee0322e1091120df8cb052292c00c0c44f445e06bc07dbc28e143022f2f4944007f12b812180aae01f853e2a5013e9260c08b37811e909871c48c236630f1246604118119dc8c232250839880041e811725de000c857d8980100fe2250826f01704fe82f804a27839109104f03734e311e84189196f400f388a1a072212027f432f172208fc05f1246424c180fb9081c48f90e123cbb07912180a2d0a19433ddc07123dfc081b0722caf81b92f16c83bfbb5c20a2252070d505227a4012301888e863c087c477a87cec4842a53a8201f84be23e30141c12f8f3a14262c71146a81ce03580071d300c68008c1230371800c3c110c100d58d06247106a87c1c090c8555310088df50dd50027f37f077e30d50e1285407224a027f433067000f3e608e040f388a011c880808fc0da90ec40dd56ffc0897238cf80e171d27c26587015c70fc08171c85cb100fdfa18387134180031119007f432e37000e97e378ea0211fd58c0511788480147600c44f419f1e9b80e6a87ce1128141146e0ef88efc050703af0b703a54387881d0c454d8087c40e393807ce8104f6815746600ee730a22271c48d40edb80e0c85451941f315ca07fe56f85b1d09148e027520a223f037846fc40e3bf075ec80a310c0818868f037843acd0af5d5894811b1739d54ce736028ac4e015235272285a3480ded701d2f6787e7f070143307222a00fe86522f404dea353f5d20a21e1e8f7717880801441c03117d3bc7c150d82f47670822ba1c380722dac11f11d7c1507039f8d3e97286c0c150d4223c1d1703117d383fc00ff09bdfe8f88e9b76cefd66a79a7410f19d4ee739180a0b44b49353baa9db813f13fe4cd7d1e128ba03111181bfa17fe7eafc39517807222ae16fa87bc9d4ddf41c188a9a877272e0d83c743ac06f3014168868889bf89c538ce7c050681947713a10110efe86ee87c050707988c601f0f71b0c0547034741e34044117f43a7c718f81b0afacde9316e23b38d104118000710370a5043b3b27103f01ad73a01ee0f9848bc09c00770adcf5c1f3091be09c00570add3b8329888bc0900062202008c81f7aef51e2ef619d79e878b1de6daef70b1e36b7f2ff65f7b1977fee56a77b9f3aaab3d75e75157fbe9ce7757fbcac5b2e95a59e880165de4d2ad5008d2820f728c2b5dd001a334e4782d1224418a1832dc7660515e69b943f32c97287ee5f64f7bf0302e778748d855eed07687b42343d71db2f0f50e59189e4edc413d14888ff7f1a148e6d345605811065622a59432475f88fc42ca88bff844d68083ef7737b69135487c226316b215a43432318a378e200d4fc6645184c5922b945891a48af6a89448a6981d273ca59446298e18098a40edc51f22437a9a080284096ede421933ab75893952b44bb4a784a5b16c8532e6878f1e3b7486b0c15133639c74c699f6e08bb4cf6c5408e213199fec208330df5492e3a31442486494514689a391a4793c823760865a1479e1c8cf0d7c5c2269602cf2a20b2ea064f88eb33545535cd12b20f8682456d1345ad1cfcf0f086e684e3ff03e9a06def4e85567f899da47dd44fe4823bdc5d75cb49396d25380e093d9d6725cd7fd9e37335313970c8997f223a704fd1c09123a8244682251d2474b241499270bb86f26c9f15f27e995155182b48781742eca7109267a347462339560462892698ba69453b61229a594b22ae92b20575ba7bd1dedc5eed15f3c8a46ffe292dc7dd859bff117643ebb6e8fab4303eefa078d76fc902cf8b32bf8e360e0afe3f0f77a12fe3c15e8247f35f993199e5bb0c06608ed42e865d8a63dac9548a31c77f4ea02f149aef3d35a8b8bc4273744291dd605e293dc7888186191cd105476fda648aabcc640e761e46ced032d67777777777777f7eceeeed9cd69764a295c401544d5aad81766316c4e206e76756e38d6c45a0da4d14ec4fcd55874cea6f8099a8d2065944b440cc30eb15f87f7fb851dc39f8df0f6d01cbb4d90c92832261a71f19394db092abd69b3095650a619665dd31e71dd4019c5da6319be7b32a1e5269f70330b6e2e214a553297c0c53fc9f01d495c18a26c09a5b48cc245865b480999307b76042247f4a163432664781ea8b505393b6a21d2291ba342fee694734a9939ad0d675a56adb44e4be5bc9f27a7b5d775418a35a68303696431dbc1834635ab5a7b6199b6a9900460ede5bd5e5bcd8c8545da715393b6e35ae5317691a3616326136bc07d39303f2133c49f909ae19f9019a6e366eca9d900649896c168b1ad8dc64dc5aa5c8bdb94b1694731baa8c41ac41acb55f8959c2b434803e28fb35628cb6c913166ba34d3a9384eab5144e78a64d16229c5c55e6141c1d05634c8d22c2d2d31f21003d238ad48969ed346134bdf6a91a12dd3cec8a9042ebebb584b2d316a8c92559ad4444ddaece4a9351b53d0b2c4d0ba144d5bb4930c2f9bcc2470f11d9799b425b2f5f90c2f0e1999471e5a59e14bf1947597a134cfbaadd392123fc343cb3b6d38f0918a4314d66915d6eb543319adfb711575a5acaac60f3ec17aa1f346f24227b1f10e5aac0157032f98cb560b9b29cd6b556c9ae1e38b5469908357611893e16ffa2ed425be6832b47e4c865ecc2ce2e23f4d9b48e0e28946c474ca39e59c72d332cc454a276690ddcbe97b393de74c0d6b29b5acda4c8eac6559568516274e3b89c01d818bf22af02a4482e41423c8293533db0c118cb86e382cb84f951333fcca0aa7c5cf2274cb28f9eb58a664616161e9084998ad168661149b52a502210df85a94c56b2de506239c2a76b3694fa76dc47f1fc209d7a35732fbe895d6de8dd947af9c88b9b18534e067203c84b1f1c7c127479e273d20227910d81ba2f84c3a61dd891e9beb9de8e1727c4f9725a441675f72a0de48fb9006c597134309b34f8dd10935e04c166b0e00bd7e842b9b6b93de9a99261cfd379343750e00573aa0d78757e0be990c03b7c38eaa2e561f1dd3d7e9d55090bdb17eb57042621eb2b05c011765beae0fa01f6da3ff812674c0d57ce31e4de0b4f63a9bd6941de79cf3363db3bc404baea1b2da5a5b2ed0923df884ca418b252ca9a1655a29bd2adc81eb03115d54e28f3ec3fe65b7f4d9336cddc049ebf20ba2696ee0a4acd59ad84a21647025e14ccd29a594524a29a59cb48605544f44efd9cbcbf48ac7628f1ede585493b1ed49cf53755c4bfc8947a426a5945aa774ccdc9f7dfad6013d94d6b2b6da6a7d47c7441d29b8af26c71a1c32edc54b7c2757c85f97e11139853258835342118e32d44209465926432514818a5c94e38cccde79dc6b22841ca4e166204d14ea01697a0ce12cfe383a848a9f187424470ca5c4f7f4aaef90c41a17a7682f368e4248da467c63816b9cd2917d164092b3a7808311fbf60c7bdf4fa3e98e31da2f950ba180bb70fc19d25e7c6f819bdbe9b3edc2ac45211c1d1b27e691212ea0d9e8a4aec36ca794b888764384e1d43cdc72a60cf2179508c913709ca4892e88c7418eff9e630f727ce49eb91ca310a4119f8582fa499e32c46a5a708f493a099d427d8cab380a2579d2cdd9512816f566046b709811c64492814b7d85b6d5b5fb7bee3a967f33b93bec562e35129a99c95f15f2f2e9107f5efeaad0e92e584855ab908599d42315c8a8fe54acc8b2a2454d550a488332393212d42bebb55a1810861d694f5ab45ab456da5f28aa164552ab88169502d327f33cf4d63f7a4a8fe816d8932c9f8591102196b437b1c8f2740c9c1403f75f6a5b380e4a6dc204eea346a91d9aadd36c6198f6c2c0c1a07faff8ab4ec0f005ee741b4921eaa667f20957faafaad43d935ee05e2ea30b29d39c320298a5cfe9536c716a67bb7dce766b23e53d6d77c87adfaefb7c6aa78f3da731ec93274eed609fcfc14c277d4a0df3989e994e3c52878a66821f067c3e2776aba93ccb2e1bde793fd81d03edb1ee31becd377e2266ed988679e4339567f2590e0cc3e6bfec18f0c9d8359f9cd2ee931ba7b6dbfbe479fbf0ce6357de6f48cedc9938e7ee34d66e7682d9f4752f92b3c32d874f4e614fedc06fcf819b4fc6706a671e7bcec44de48ff40e23dd274b93e936d274555eba1f904c7a8cfb3591496fb9df904c3ad72b96d83273e4227e226695cf6d27465639c95e2a8fcfb2293b4dc5d9968961f0d36ee9b1dbdf2e8f98b1d9d01ebb3cf330dbc38de2cca6e51719f6b861977e5e95fbc5ac2255be3d53b9dbdd429cbdc2f01332638ff17693127f19e8ace19ece191ec219e8dcd37908ded8cb42e1fa7162dcc4160c5cbfff7152b648cc7539e01a7f5ca97d285505651142558e8f3a6296b8718771c0c1c716c8c358b1334976792092a6ff7912767d057f5128671848c596622c6f80486ba51a382052045976204b18872c3fb886d82b3b562411cb1b0a07a4094973ba945f3c52e29ea16eff74e3bb5b6fd21ee3666fb92ae7ee76b8d9f40ff9e389112cd886846b6a3211d04cc12f2169fad715104f3107b0c75f9803443e30eb1cb8de38052f874c184026e9f0c2cb3d0f91110606229b847362aec010076fc0c16732b5f263200a217d9ef409e30a39a20f441f4fc2a915dce3c229d2affbdc60d77df42f22f57d12f611b37853a4c7fbdcf44d91f049dc7d6e5648a9951518b208517a5545d370527aa4ac524a255a68810a8964093e68225760907ef40a6ab1052369c4f5be8feb8d891091ce6122f6d749d807f6888958c738609dbe5e0e10f9b0708a44cf018b53249c32a26f5d01b16fe884372adfb467d6e98dc02e6ac91815206d2df10302d5d303d95bc72e0944c6c8dbdbc48532a6c3c03518aa8fc47cda8231828eb2bbbb69cfd9fdeeeeee7eec7ef75bb6bc3cf5b25b64cb3cbd4eccfc38f3d7a9a49c486eadadb652d9d23431604c74815eb46e8ea71f4fa6df0632cdfac69c358cad12a9bc94965064b79ca7934a2a6d9d34c6be1ea43822c07dd048a7573f248d75f91df23da4d513b74dcd5793258ef6e4c412dbd4e41a9b6eb61421e4cf3e995f4819bf9056944109098c3c39c283211c51217fcf7626082038728231508b835e7cd6b7b4b8e990b987eae36f5f8fe06a5e7210882876cac23932e5bae31a321f3d76509d39e510d42693b6c68c0761d7491929a5b2a5ac7f627fc018788927b5a63527969a13a49452f68508419314fdfcfc5471f34d0b3928631ab20c72b16be0f064548f1d7d66ec2b3218a5b12dd3482a185e8c7f322d5f8d0c3f1c197e300b95bdb29865988feeeec662cf98699cca0a0be91866c2c16ee9a45baa5a775ba077ea60ba7b32a6df75dccbe55e5ef017a4c5e56ad03bb91ca6572ef86b22776f4e752df44e3da7ab0ed32b15fe86e4eefdd49dd03bfda722644e1da65729fc11c9ddfba853ec58aee9f68653b2418c161615189f1b0e8775aad8813f78944d71ed7d18083d0ddf93343b30a64f85dc5e16be90fb54e7ea48c1167d9c84c9fd79898d28fe3a1d980ce12a7ee61f5247bac48d05d30636e0627ea2db10854cd6596b9d3dad656d6d95231ee4a26db56666fa35641a47c7f46d7a56416d00a1d7980bc23ad43a865239e79453766c29839ad96330b0a7e414d86d694f269140f2a784442a9157482ca491cb62b2bdc84810c60a09a3abe7c16eff61c730d630eafb29abea95d7a5dc3570340d54c39166b1da522cd595405706c99fc6fec91f6b5e8b9615bd8219daeb9b0eecb25adb8807c169cba7e568412183309ffcc9f46d452b699ac6a263e8b358c2a4a889d11647509c7091e9bbc8f4dd4b6ac07d96e36c76a85aba1998c565ac267fcc9041980f1e65dac2a93a98cbc01a997e35345ac7d0c349038e5e0891dc979d8ad1d67c08fa16a04c5beb152cd281914cb9ec65aa8319e40f4797699c1d65cd3d8fe40f248c30c653c1dde3a2ed18f8a227b34e69e79cd3528b52398f689a86c508b1bd0d93dd6b1bf19637e1e7f70c037b3a4328d3abdad66120e420dc4286705a1caf1a3ef2bc4c8ecf22edfa8bf6b98b5a19d3c2cbeacbea578c03d69c20324164280d646464646464904c6b39b1ac2d3aa8a580b2a48b2753faa78d5875091632578ff8affb386d7b57257031d71d24ec6488b4b6d32ecc2ad9e312a1992dc1b025d6126c3ad96e43cfbaf56920f7631663b6b1e2b4ded9c6e6c29c5cf5ba2e192419ee506566a47f72eccb1edab8048b28b18b2c84629358149dc427918bb8c4ca4c083dfbebda1e62a8e26c6b55b7b4967f34fe82c8e4eb4a027741af3fe487c6e1cf661fa257198e43244d14d2b0ca8687108a59f7124823deebdbb48d4b64b2b5d35a3c542b2e2263c9e4c6527c50d496c48490c11a1ce4bae3b07f36f79c10c61865bd3d34379c8d840cc27cb5483e2a9948628c3c88d6b6c5b63d2e075ccc31d32b0b6f58cb3a4af680838ff511cb5bd7099aa9b4b016fd60625a462271ed11a96c37ebac4729a5753bae83f5db0da265296d4b77711886b7658378c31ddfdabf78aebd6ec3dbb61d9e2762889f90793b47529143e0e0dbb3ed75aa6bb276a105149264af0a2da02045df68a10594acca508b2774913392133df29b5fcaba2e6faae29d9ae571917cddcfba90f84596a9eb50ded4c43bf5fa85854071bd488690467dc54e3c21f3fc97ca6e0f739dd69f9059623765e11d9be585d43cff84cc4ecc548677aca523f2648b5ddf775d8a81bb30ccd8af7ff2159f475e6bafebebb9eb92c78579e4eb133257cc239f03b3c54f485cb1b5aedc74c42f1edf5b11f1736229d935af8b5e74ca78e1d02ad792a12ac3f877d23f980c27e9e280716b643e1f9b98b7679f4d437a86613cdbae4dcdf6af66bb4d671710e920f8cd0545cebe72990d9064cbe9b781961ba18deb73db9999e5198db055566ed32c90c685bdecf3c938b8cbd7d86c3060708743a4c3edfaf60d5f40cb1996c15a7b72cb2eafcb6cbb4caf36fc11c9d7e53de95d1c1796694fd6b4278fa33d7959336750d3b5446dda2f665ace4b39d93f29c859645a06a764d9102249641190132922926845f64309ad379cd903bb6cd6dd3fea052dd670e6e91027a2ce8e1ebde1541d981bf7d05c714a87f504cd5ddbcebab64012e9157dbc99b45a5ad928b02c2022eb1573b76be120ee545d43788bc2ce827b27999393104208a70fb8186d90512967cc6064c0c57b17e22c2d38c94919b3c8e00d672f1f6fc086a19f9b59e7fc17bf0e3ad92ab49733352c2b6fafd3cb7b3d5e9eebf4d995f388bfeffa133147fb78adbc43d86d8da6c13e3f835d55c7cc995e555ca39322e87a5c1d77dde6fabc86688fbb9e5d0722a2d7755dcf36add336e6670c289df5b2696f0ed1deacd1dec433edd5b48df9390567eda0e93e7bd5b537dfdebc840167617a656f373ff16c6fe6ae57aaa68137b3e21d13069c85b9f6e629b6f30530d36aec03524a60027a08235352762a1f4d13df70e4096bb8a2463e844c6443ae57513237482982b0bb0b0111051f14dd64908330da888d65e3ae051cfcd7cd1b9ce0054f4ae0451109dc80e4045db464533eb322ed29e5ec883baebde62a27db463f4a3904c849cdea24b56e8782ba9c4dad8337ba5be5fa15e750c5d6eca119d39c2d12fb074547ead08f35556b8c31c618638cb1d6a8398bdb4ea5e1c1d40c37099f1b73ed591e70f03f29884528288395f2fb1279461bef9dd6673fc61bb97973f4fb127711e943bb51900d05fd6667a8c34558debddf3fdd85cf646604e995caa1cae107d303133cf4fc701d87a42b7c78ce21e9f0b18b5ec9fc00870f39de9234ec59b5d957ff7159d65a3fcb697309190c0d8b71e562b154442a2215d56af1ea8ae36565ce5a8b9d73d44f4d6e39eab3b5be2ec79236b3a8b65eff6aadf5742e81eb577ba5134823be5a6badadb5d63a994c26707dfbc984eb5f31c6c8cda04e9d42c54ca5c12de26f0353727cad9f50e0fa35c80ccaf1292ab88ef5b03d1c5de331fc825c2a64d9a456b51766b149ad6aaf7a4569244e26b5aab5eca456a5754a5412855ad39a5ab46c08fbb3b0688a163db5e8d8ddb0fb3a41964d27cc9e723a818bb71e61afa2ad5092804218adc8f0d5c222c377153086a3dd2d31c4cfda4886b7b8a568200ab7a86932c3c4cbe25874b10afa098b84884050323c0e5a83ca50188a3f1ae713b8f81aad26748c597e5252292989046f58ada2026f50b96df0c69c9a066f489a65f0465b18066f44edbbacfa4949a5a40d2184f283504228e7a4d43a85f0f0d2a0d1ea1a218410da7af54545067b15a58c527616a394d2b2999e4a1664d9c402079fc15b84853bb110633789342d5b9b64f85a8f32fc3c02f7d90cadb536eb1acca06f067d33684e3864ebe1244f9123112439124122943f1925c8dc421663ec6e3b3529772c19a587c6715ce04889568452258a84229f504a2dcbb2539b53547fd762add5ecfc81f1bcab3a2925c36e62c17d9a9ddbb6b570246eaeb0c0e058585858584e1d33313829b2488a6c94225b64e194225b64ed112748a22881538a2c1cb2143ccca91c31430c7384a4ce708b78da64d68dd09b1bc88fb0678e3416813246ebd2e27ae21fce2164367e1022f7bf1af084496af590a1006c64f815a0868600023080193dc09454d82541af633e98452e40ee1fb2f70520f7a98cb0081e5539cf904198af63cb4957314a940ce39409935825dc92aee846ded18c93980406c998207b84130a8a4880c89828564a942951e20f84453533bf600bc1c32817fe1a05ed022a6092982449e3a07bd043e824583308312828028151a68ef5b86e11340a72bf5df03515b9df411dd4473d88117f94b3ddf5b6ef29bb23b691e1e9213400132c2c27a6b3869c91f1606e75fd8009925003dee8c3dad9a8524b67c7613c99196825cdf67519c6647f16850c6b98f01920c3db80349eca853026fb76334db3327c4fd2e8c818796b3d1d7919fbc6dc128327f7653c4c139cedc97da9c11079af62e31a4ab0ae6a3841087e4c30821c30116594727e5ec1353104c85da2075c3c74324596f221fb121389577842197e6e8814917d2245e48914a9520881931b8989e08b542b20e1e7a63151bccf4d918e3e321cf8d40ecdf3344facd9c30cc3755022124824c95d5e3be919c759b7e67b5acdbd5e8ee3340c848497b0335ad2ad93ac259d833c904ac941eb93f47a49872412d63a26a6e055f08681687809ab59ee07dc7cdb63d20b5de0e03f5b2913dd05310e48c3079c858150bc440f3829d3a74aab0452c9912c4851833d922394b2d68a53b05ee214bc74a8fd612ffcc1273a92f6c86c50bdbd02eaada5f215a728bcb175a6069b99b13af527c7ff489a148db74192a63efe98d3d289d73c7d34fa21a18e7cebc01bfd32745fe0b260a930e34cfee20f9434960543d652c69885dc54c8fd84dc49c836472c3820a2d8456da31b0ad73101a457f5fd73f586e344bd7d96595986c13a14196598452d165ce47e8c12bb689ad8812750094408ca4d6ad8b1480873c8dd4d72df5ad1d26004026678d9b155ac2cf285bf331184dea6e9edc2c04dcc81c15ad617b1ad14440d859bfff1c524d18adc6ae07ec458861cbf90636a671e1e621ffaf978a38c8221060e1a65f843c64489ad0401c775d1e2c9046eb6c0748c65a59551e32e052efe7b8bf59ed2a2d4cec81e4c24b9df496492b6a257f5ada4afe8258d451775165f1f59e869465032eca2de022a6992a1926692a1d693af093dedadc567d3aa5a27d12173a665f82382cdde70ac1778ca0caac84eccfccd294753daeb03a195489a1907da815e4245d04514056d34a748599168916601b518af2bca4b98f6bad6eeda44be1e3191ebf6cc7cd569d54ba5652adb3f9999af0647821e77fbb9e1609f566f382ad721f30af7f84924930e3d0ec3f686369ccd0d0e696f26707866c6da2c471f1ad890f6eb62988ef9f4b47f365bfbd92bec167f3d335fb79e5dd7bacd84bb72606a744ccfcc701886a18d7caf2cec57cfcc184ee9a8bf7ee127a6aabd99658df6fa7d2170f1df0c2dd23e98bc4af079652c8475526b8f597b38a70ac3df33eccab8b0ab5e416432fd2441cf39299d3b882b780294ec43865a1839c92138ca3e64d8841050d1ab940e79eb3d56a69fffac85a7648b0e4d1ef1f574c3a9f84b5987b9856b02f784cc5fe57458517b9e5a396577777b21ce29a594b5da79d91a698c1dad4be39c38e48faca009bcb067183d363139314a299d146a9945a994145e10bbe0a4904a3268bd6acbb2da6ad92d6dc4ac1b73b5ae2787302c63336f4df4e4afeb6a4bb6654929adc6325a7b936abdea59db6243510aaab855b100090a6850838bff6ae4a1fdf9f9f92992b028c34fca3dc95f07a564412645af1ade933403a035386c86d0e995b65d85c4adb07427544a75e872f87228e3f017c72978803dfc8b55640861bc22c3884586318b0c8d32649221f466c438ec248de990001e013c02cc78fc0fde0c182c247e91e710b838c3c7002e0c8cb1304accdc7f091fae4ac584006ed701a1715b5a82c85c8e6b220057d37a0070ad1d127327f46678333c98c7f7308307981d30d4da6b89ed122e1ac9b38b2c1f143405df080454c48b7be30ff466fcf9c99288174032ee9029412fb7a70b232eb70929475437081752a42e902842a8cb0494294e7709e83d41d25d25a0376fba3b4a4de61655c4b83860cc7ccbcd224f26795e91e523876308965b53a3b3726b406fd6d801e3cac0182be383bb9ef7837461609450b9ff12db55a998c8b2eb8064d9d212244b8e6b224b4debc9d2da21755af2d19b129f8a4c5225b1214bf968f9c3a51410bbe54f918e0258c10aa49042052a48410a50808223474e70021398a00425306284042418c108442082a0a0108400042088220a20a00f7cc0031ee84007e24ffcf9e28b3ad4810e74f0c28b39cc410e7288431ca64c81031cdef00637b8a18b2edad00636b0610d6b9022450d6a48431ad080062eb838c319cc6086329401c6fb5419c6ad21277be684ad24833d3e70239fe161db809f4a86283e4cc7c0631cd0dc4102a3c37fe7a22c32ca32d25e9241982ffee0f43431a46dcc0d889ea46920f80d91cab56b3d3263f209b77df280d3549e500423196a21c3271041497e02119064ecf2d9d4e6dce8b641e1b47ff049cbe186c3447b7dd904ae6bc93a18dd61fc9b19066ea2c7d46d3b2aef9ec1f8cae551398c672b39da590ee3ae1c6e3bda5930fe545e3a8cdb7de576871b4e67ba43a477f73d4d432abd4fba5ac7b4f5ae899ea681a51818480b5e020cdcf6b983edda394943fa0a8cb3bcdfef240d7cd7ab7e6e45c4ed363db79dcedf0628a45645455bb96f0fa63d0b371c1515ec411addd35e0fc14db4b70597610c5f5ef77b8d9e8ee926a416b8ee56166949b52452525082222c2c8b66dd545e8e9e8b52c81f234d983ae03e2e5bf8797b649ef3dfda9318feec89481bb3af5c7b2637fb1c78bb6dcfc1bed9b4bc2b873cd9556ed352d3b0c3e760706a59f60dc91fe93d32ab5c05c6e386c37db6a87ccebfacbc5bb9b41b8e09d5f50af5d87de59fcd2e77499daeba8c219967623bf033c727f7e7379ca39fdab1df9e63b7eee76c3ed83ce9449cbe21601e3b8c2b3fafa61d7ebbdf101e12a7ec25bc29fb4e599c233b7d4e8629bd7d0ec5f63e197ee26f4896dbfdfa2df3749b86f783d7308c3070106e3c4e9f98e7f40df3bc48887b643ee1d99ecbb197932e23a5f2f9e222cff299ba0acff652f82c9f5b11dd255e79d6ad4cb922b115f879d9ad9c85b4e198beb232f1c4f0c7b222512b18751614ea5daf50f83b9cf8eb91d9caed582e07036e25bbc90aa85d5ed34ff71b924f87f78bd9f42ea84ea8148c5869935832442380000000010315000020140e894422a16044288bc30f148010869e4e78481b48932486611422081963004100000004806448050a3c0133a12d52ae5c2c5045ec331316a61d152bbb79103da813e149adccf3253fb861b50498b3b77f25a83ed21f879fae5cedf58028cac8aad0c8c0c4821ff66eb349161b3edef7d3764002bc1fbaefff1cb7c14b8d8146f224981a850006aff251431eb0cb21f3ff32ef9e9ddcc38906fbbfd3e986f63eba4bbc297470d46ed9f8743b5a802bf261539ee0da21df69cfa72b23be6cdc7ea6e73eb70da64f475cb9b680b57f322286f6fdf757178b54abe0b0bf20a4e274d9fe6163ad37a3975cc1d8c4d333e869d9964fdd96de294bfbc9e3e1be6789571f46d1a444f2496f34e6d199d1fb0eee274e58c3710c60b31910db7b6aa3cb4a63f259d9578242c9412d3d9d2d2f85a71251788434f65655f77a4b5b0d106b60618d193d71fbc60cf40d6fd07a8ec3d1107f9edc4332c75d3652124f901fc641df62bc194d443f52dca2fa3c03d61617f73b2f1062b250b0e1a4943c3efce033dc07ac7e66b95952b590bf6252e66c8e98a4e6c7c2582ffcc075de35ed8456c30b6ac71452b160baa879cf084ce962b222776e45c11457566330c1c49d19b15811824457b43d4a5ab52f3a30d1c5bb111fc22c5891c5d12b629a4219d242bc9b51af22a96d2d48063c6d9b9716985b07fa78731589202a7648b9828904bf0b67ce3e27dc008a66aef45f15803f45b9a423b2a51de58f17e97dbbb18adcf708049c0423f69805ecb59ef51a7d2371a62ae2e2eb375ad6b0bfc58819b74d6dc38d2290dca500f844dcf74e04516564a742c2005213992ec257d0648e0f577512865566cf4999c5db25203c61d3e3dad3f7ffaa77676a5c01d1837a47212bb70525c0414705dc7e3436bd762a99debd0a4a0e9f3da9effdca83d6928a1e631df020cc4bd697d21f0df1875bd3d14200369a08dcb7fe892c68d0baa93ed9d3412c39d3c97ee6ace0fb815ff5040d5fafd1daf9c0279a016efd8d6e2075a5be81b5a96fb0c8b23f6486a1c0228dd96bf9cd145e8207ebe4e2dcf772ba775c70c465687fd7d4306874b794abe57f92cd739416ce5e0d1ac411d94add5294914282a0e18ba9c6242599b8dc86e5060dd8f2f3b9aee1d76ccba25efa1bd38619756b7d6b416778810add2d1e59bbc465ab91207223b82f0779d61304499705a16d42547879e0895a7fe4013f07b3248d598d06fa51e88d65b60a044e947f8e8119cfba6a206c6d9f14877b6acf16ece8b86d943c70b6bdcff10551a113a8291c1c68262185ca15263ed4e69a074820f930060a9182c78082a23d22ad735c83760c53f2a0646850cee02e26634401a285860f16941af358e879cf541cde02e1110559708bc2916e9b8cc7321e941b5d0cf81793ba0943850d6541275f56de2cf452c596f202943a8db2c211cb56dcc939b545ecc83c823112859243c9106f022cac924c1fc4ec2b9225379b2309c2e2a72398b7a83621ea34c4e40cac2d4b2ca9829808d186df1e302f7191eb708ea49f60d866b7018fc21cd9d8c4043e504f22d937f982767f7ea8aea0f953d5623589ed4d9377d02f6a4bdd553d5dc8fe96856d2111fb53284bfad2b85b3439566ae1be4d6579c8ebd957692d764059d2f78fa1e3fd5cbc0c289148d7f8ee19663ec727b397f4c2f0e753b28b692a0260d88ed6914b0e7be40865323ee40619a7c8755d4afdabd51c91b11c20747db15f20a471ef0b41985295c9db9a783e84709fa71cf09708d5047743b090346314e5d600693baa5147c27ce99fff2c710808faf146d6a605ced67850c77f69b4ead586c8a7ca9d7315463ebdfb3335ade0d9c5c6f5674c119e4b38a0a8820a19238229ae4951c2f38b2a8f55b44a951d9be1a2fbf943c4859f9ab1f4e6b8b31ac65d2a91ead2943a6743c7cd5f3245447cd4dcea9aff4cda37cf4e0b917550bc945ff02069e265e473e480259c7d88543156173990daae617fc6b0d5b47e396363404a2ccbff7918d32dbb5004ac85dbad8009b263493cd48a81c9249f320bd5c8707b91c866ca1fdbc36b1d9cb9c046e629042eba86da0a5ff69c049cc1c8e6449e628021dbd73c31614184501affa1abd8ba12c716653f1b48ebd884573b69ceccfdb203694b1625a6340df3c669c571af4a633f4764db65e5420e0940b558f936404f410158b084862145d111f7f5c39ebce49442f72073021a5c97194957356adc41c5819834df81b404a95e0e0deba293c04094cca1295d8a6c9092e6c42b7c8f4af9000edcd5cab8ff70f43006c9b01896afcaa0964d82eb658e760f663f8d3e0e33494266de467325af16fd2ee5651cbd6d121ac854ba475e51280737653c2fe1c08afea49b747f59d896ea6f92c0a7c28ad2416578135b95cd713064200e611e3575d90da0eccd3daf64d279809cf67c129688437c1a347c524c17a80a027589fff12fd7007ffeedf0b2802c551d8d1258b90765ae39b511e001ca015f5d6b25d48cffd21d4749256c8302a2f8f217560ac2e5ef4845bf040f15a3c4a88a263b6eea6ad597266b8404cf54d46938f3344557fee43671ad02fb54510a7e2c1fc89482a9d325166aec6a1d4dba5b4aa6d0c3133e4251a811b65e00471e92c3422fdfc59e11fa4a2ec9b385846560670449487bf524728f2211a5a9c489e9481773cdc3287e9dc3b47d8c89c713d9c9d0f4e2604a9d74b069d5c1d1176f00140647034d708293596f0bb09a81cc3e8a297b38db5e74a8013757ff594d9cf4157708426054a9ec56aa654cb455814bc9530f8f4c16fb82b8184ce563c8289cdb656c36a489c5b6b1eb1243d76f1ba9d295b9f8dc298290740ba49f32d889dfede22a93f4f524f30c4f57af9eed64110b98ebc9bcacf3c91bb77be11134dd092c5cbc5c0dfb582f412ca759f14678372917f04bc674c2e45fe4e8efc37c161c46cd4e57a94d5538c399c015bca5b96c67800942bdfa4beed8f473d0723721aa566921f1ed5c952969ae832da160abb558c932d4aa9244d4e49f2e90a22d02691c8b5cff5aabb6a041b58729b4a06c0688d5602b47b9e3f4ea79863c013abc36196abf850b26a4a0cab18e68d564e8ecec0f7a2d03cdb4fb88130da8b60c5cfe4e02b7acac10fbeb8de255daf021ab60e77d36db220f3163c32c69445e20eab9f84b383fc5bf2c030e9107fd2326116b7d762f914eea8071039ff463d71472a419589328394531c78eb1663dcaeaa403dd4fb79ab7ff863c8b70fac45d1d07ddab73acc042d2108066e1b03e24cfd495f086df04461bd4018b1ed168287126eca623ff36f79717d43fad5db08b7f2eb5ddd2145cebcf1fdb2848ec45400151b9ba868aa90e12cc5293afc9bbcaaab1a422710994ccffb071ded54459d433e85e7095684227bf929558e17d8e245fed57928007f382627a7d361aef419245d6401ef86d2fe085b368450af053a9e7686a6a2b7840413d17abd6bf2b707421b555bd15f9d6a76516b89ae94cbc5e78e72fcb7529ac0b620abfcd41b7fdc71a9be6b79c579e77e4db23244874e8c60b08148ed0c4d021fb633a933dbfaf230b21dc544de347efc8149c3c8811e9c5ced58d817eecd19309cd8fc596214c307b3ee6e35678444a26015f6680f4c79cfbb2cb11fac61144ff3c2eec231cdd3b37aec65fab5fc13a39ea3e2faabf78267681f9158d9725cff7249d06bf0ce6a9c5f772658a79c05c0d478e71a6afdd450ee217d474a289dc33c7572ed4165dc5e72ccc83bf0edbd89b5445caf4c8c010946a692d088bf0b75622219aafda5cac99dd64cd965e4554252df6f8f451139f15241d15707dbb00fa58431919aa3c1fef0c4a3a89ccd30d752c625734421276f1253b7429a631f0c1110c8214a16a38064c9896f66e55cc231032035e7433542565e08bc260f0fb7ec3682f5d364238a068090f3ab7f8f46d20f3177319557fcb0116832ade6ae1f4c6a6b1d9d97886e9beb68060b1471465a92d9e82a5792880bb8593649a6469f973a77b0de7460d1060b51db7ddd2d810bbd6aa42309616c084afefe320a1c17691283a056061cef2d36f32c9ce53d143a4cce33f9d4ebfa19c25ae9e9129e242759b670b94a7d2d8cc566a425d60400047f84197ebdf12eab06177f05bfb0bffa88d252815abd77baf13c20db8306769e7cd42323b6cc255d221fb43ac88a8ca6569010bcb71202d6739646eb98145a9e6330d6bd6a4bb16489cf5eec74362641ef966e740b392d7b461c5ac2a4e192c758196eaf2edfb078a61695e7545597293b91fc3276fb08ec91f1b40b1cb5eb94c7c669798d1dc6441eaaccfc310ced4a130162528ed24abb90bf031a1e27fc1fe5364a2bdd809c631d9bfd41b15091741bea9424c09581f0e82b5e0006f8fe08c3a49f31994c6e24d09f87af596a399195e26215dd8f3a630f58366b6b1d688b2fed2b865e210ecf1b9ea3c37810995641cff215dc1cb67a17416c62259d2b252879fe75532cbb825cfa0eb5aac47d859e8e3199f88e7e6714892cb0783685e78d310b51cb857c83fc70fb73e33c7a8660d23420974a9ae050f0c39aa9d2c68512429c1b480543f6a57aba27713a9f63ea03fa223ef20f4c71972b64f0dd66e36aed14d5dcbfa243f172f8da305ae539ec159a053915217cdfd9db563bc5a7e4bba014fc541fb1cbe6a83cce7563648608a5c8189a5608b4a50ce38bb2b1bd4fb8817868eb49ad9ab771d1e17c5559b79a08af7fa1441b7ed1f621549f397bc762e84eb6212ec7359e74920dcc672b685fc947d2848f4cf211d7483caf0ecab804fa48d868cb6c720810a66af3811f953207a33c4c5c789acb7de90d7cdb12b0cb612db19666c33b7f29d61d55686f4a46a4f270159f41f20bee230f00f64ecb1c4954d2ac643bce01fc78207a456a2bbb07e002a26006510dbe258f1b678f9562c4c85c11d0ba366f1ed493b20a2410c528a54115356ec55436ba4b0722a4eb4baf01cd54676f90b5db7b28b041f5f684424fc463062570dc50e124ca8dc9b9fe6987a699c0eb1aa773bb1b29f3348e602007b737e3b649047731bde436a46aa97ce6fa221a51c0f9814becffde72f053e113cfe64f06b2152fc2a7f19c4006f8afae4e697904e38ab75d380c1e43b5e4262a41b88803c4328e5d7b469476facc2a5ae1fa3fcec77d618123f52c4b6958f4d1a0a49961867ec8f73265019b60d3fc9e13a72200092630f67577dfe26a79cdbe98ab12541ba1e58f0f653f40b63115e968c48bca09265e9ea07beed94a3094c6d86ede742a2312dd0c7b28e183dd9c6355f07c29ca5de8b92bd0da6b12fd259ac5855cf281a7091c37168ae5fe97e56e9f43569eb75a6bdfbd355f06d122fe2cb67229f2a8b89ff63f46fcd4be637e0438cb876842adbb26e943e389a49c4a12b06b124e6d5add6d9fca7b067a13751e822d05b6af490bec9443df4cff011113010e524d3c1161d0a176e7f047ef839050aba2f83e16f8f2b2b851e1127960de5802328ca3284627ec8b2457b03e29763025a5e3016354c10d8071bd6c20169d11e009e9c6e59061f5c50105961e5200cb660c2195affd6fe1449ea7121abd982a8a4da369387e44020558004c0acc52aea4c5cfdbb15db197f1ea54233e2c09691cb9a29832edf450251d986f4537f69b146226eae7c97ea7637acc4a2e34f489942272dc06608c5bee5e9b3e92c0b0e9cd1e6e6907702daf464cbf968843b0a400c00386d69164b7d88d1b77e5c8de40dff6c7b6ca04212c3948aa217925e552bd2fb64ef1768faef1ea53315e8aa150dd23d1aa7c9890589a38410beb32f98db60e5a81cdd92ad34f0202cacacbc7fb8a80979a8b1330670fd7a0f9a3d978862392708c5545b490782fa5602269ff6f89f541917c7eb5288177d9ef6c30d7538f7b891ee6932d1ddb3244de99459df795cf0f5f34fc6b0165bc608d0ac6598cde2adf568f8fc4a75bf070635a88721a26330b8c6e174ab69ca78ebd3a39de2f19f6c6a474d9a199ea775b4a8e2c426e4558fae08dafb47c45b67282be502eb6e9e71438137da5da768af79b18dc56369eac776d23c6ee836b55400a36ab5e2033a9d3ad2176c51cb25c360c1e06da1937cb39582587cc5d4091475e4b048dd415112d382b65009a37b12acb27c16e0b1394cc136ae97f85d99111c4467586667a81a8f839ba0d28051dac69775d0cef4502380cb77537d0888eb985f1f5229714edc491bfbf5e9b4aef59fc9aea67cadb6db0fa5f07b7b78bb42f52c9d19fa2d71c19ddc237e51fba0e11670923fe7400218b45eebc529e202d5fc9be58f98ff8040c6947aaa2a8f1aba3308088e90de8f6a9273c45108652bd373ae774ec5f2995eb291a276e72f25b20eabd6d3fdece73331aa5c62e9649f53d910c1e799a008223654b92f163467ac01e8542a2ba794049bc914ec99884adeca4949493b5c63eabfbe8a6ae9ad71f4a73d751d2b290df6e573a9f6005118cd2c7fbd225a20736dd0e0719841686e43078e7a62a96108cdd2681fc048e919b79ffdd0ebdcd3d9035c070f2292dce82d9b2d5ae7bebb1ff104ef06c020a898c0bb1fa4c246bcb2eb0cdf6914fd75b9424b987c7273ce2f21630c766e11bfa78ebec24eea9fc04d913839ad7314fc4b27c2b0edcd45ca54c224a9b76ee1338b2ee7983ac6d2f969ac9c45f88c1290b18fc903bef0698646ce5bc69b969380fac37932b6bc7c99d5ae1ce4e4e9d0f19fa43989e2edd2bd081be97d620c354690e6b0f2cbee8cc8014a5c42854af1d6844b57f236cbfc4b38fdf8baf34354af35290a8430ad7d4f5ea5c4544cc3e46d2e91e85980eb5a85fe25a5f099f4d70308d883519213d85f5701843d18004a4698a025ca232bf3506b14cced8e18e36dce7dc04f3faf20ab0cfa64e48691ef0be5c01a5a284b89b53c372e0eb51a379e44e972185db73ab950a4d1b318c4230f5ac99ad63c31bd0271766d2d7ad75fb46e5bfb488ba433f81e9bccad0825427456c4e658809ab79e14f055e79c14fcdd604969ea732d0f7f53b309d875a599db73225ce1f9dfed7a8764d59f95bc32fd0a73611c2c3b18321e5b638890c95095eadd880d8bd557f31f9691d4ad0cd2fac8ddc4dca9fd64b4229c8edf2bcd69837e5a7feb9525bac1ea7e6ef005ddb8044da36e536fb569b9dd341a38eddae12c2f312310ce8e2acb528133c212cc960728aaa3a3abaf9946999a76bb4d4b4b5534a3320986d39ef0d45568f63dd2f49fc07f9a8495a4f9416780786fd6380d1c8f16489232dc56a06155fb680410d8be5c80ff42541a7f349e51b356aa5673e1c8a117d47033b6f1e838faa0076a8f91e23c3191a0e24e41d49a4d790058631987ab1f2d851b29df762964b58365e16be5b4af845c9ded9d2ff358fad1efe10cf713c96c6541c0fd57af3b1ddc407841a5b9ed46bed2e6b3d74c9f733f0482fb5a15f2d83a545312bd5dc15987f50df5c06254044b56112c4365701195c10755041752196c464a156245303650cb38eca62265222fe50371967651c30d4e8982fd2b1f3448e74d5a07e4709647a538a3e46f2d835c73a82cc37fde866a72be4dc7990c30c4bdfef17cbf5eb6633ab6ea3374f2486d84c5af706b5720262b51c6730c6b2f788c26ee3065c87c37baff32261eb826f0d6d327b9f3b5c6424b5795717daa4579e27e7df88012c61d3580cb69d26439660bedc14ce8501339d8c40e3361874de4f0263accc41d3411079be0402674b8091c6c020799d081267068131c64820e9a98834d7020133a68221268b24634d03adc440e3791834cdc411338b0090e3241074dc4c1263890091d6e02079bc0412674a0091cda040799a08326e660131cc8840e9a80834de4203b2dbe309b9098e1ac3824e8670eba3844c01006a57acb5697c5d29f5a87be2d84fb980482ee830959716fa6456e5b10b5bc03266bdf012d628d003e5876f672ac090ba8141a265509633d321d1e39f5076ad90b405de46f02f9ee41e39f6bc518db0caff26c7554708e1a7ae2ecdd2832bb8a6ccf01747365cf44c691b9c9bfeaf2b56be03759265da237d198c3fb8caae1f017dbc663b34a1eed8cc106f42378710aed13839cf1c0c30890d06c606b15e2befbd426b9d0b18521569c564dd72690c6d87db20b80a556ba341bff3f1076ccc4f40d62a8ea1a7f423ba13b6d7a0a50a92ebefe584090efd05908223faf62bef02e7617ff3f4922ec8b2d83c763a55b19baf2a8959cbd92a4b030b9908086975371c65c6f1efd6ca1c4eb1da8c6cccecfd04d3773447491398557b6c939a34ac80c3f6f36cac2bbe0c46d7f658160c92ad4f34639c239136f7010de74eacb683671eb3b2b24b5211f460e6a64208949f4aec01bd062cfa3face8d53382d7e864e662dfd37ba039e85765d9c0cabaee926c2acf0a168682386ac376d8d0334343296f8bbc7c43751b02419177557b733da513b96f51d3a803aa5a7c636a90a6c5444fa2815b9756954db912c14bfd0d47c62d2c25247fdcb6615c498250a8efac36ce4a1104f5aa8004d6ca7d22d5ec9ce0b38e25caa0b51bb96a6b01554db16634b6362a3ebda24a1cb7f4bcc6d6702cc2530015816bbe658067565fc265c5a0f851529183c0c163495eb0cacf26b4da4a33e87c2c109512e3d61f58d1cd56761f4b039f056cc8099758679c7843f14960ebf7fff6e4f9d6587114d325fbc1bdc03634becfe0be42242c569060faa8591b777f8830936d42498138dfb05d195823fa14b5fc50106ea3672f21319546892f6b803fba540c2af7b4c846c53380d7728ed0b5d76c8d1af65db0e0eb9e8d372782aa0d0a443e78cb4ffbc299a162c0979f87a4e139d8626350ec2730532990886215948edb3a5f5927d02dd4b239bd5ccf85442e50a6e996ecc0a59144e745583e2e374b73bacd2571b8088462d56906f2ad556c9bd62141270bce49c8c2bfd887a26c7268ca754d403011da172a3a807f8530463c2d9d1529356b30165190486435d75fc77fd3a0f99b477f554b5971c7d6bf59c16d0fd9384ae4933694b64a89737b329a4f96e34d011fa2677cdb529d497a086485904fbdf5896451e0d82511db59985cc40954e9cb6c582729ce0e60991b301521de675e85d61d9947a31ac87fb436a0dac78aadc789c67154b4015bcab74a51b3d18e771fb01a3fc4f9232f7336219e771369993aa6e9e0a35878ff3ecf76d9674096bd878c779441435b25836bf65b20f23c6ccc1e511db5215c744913927cb4b108d033a0f94dafa6491c317e83cde2aaa2f71e725d76b0e11db89c5f4638e4c2eb8dffad88d99816b71ee9651e993cebee15b7db2ff4fb6208c3d04d6ad0be51a386d0e28ba008e0e85b345427f4db6cf019100bd8165a1d7e4e711031239f495b832224c8e63a8232084adf1401fe809cef3900707f6185b8e1e295fc06a4fe8515628248285bb332587033d528b566015d72296c07e0286b8898f3e860226fefcba41f96aca2b73f4894df8fc28f57818c20cfd69b2811e4c24538d7e81c7159fd35ac888de404fa92a04244b989b291429f3a9c14c523c5d34a25992824cbf1d063bc09521d3016653af37e80ce27c13d5e68a7396676b129f8bd2c5d7604c0c004d1e627aa729f2cd72e9dfae9b34dc84a629e9985a02a2efd378143b9610d1435f3b6e8f80c6ed074f624dd6dd0ee805e64dd85c6e1d53e4e8c5a7690ff6ad10df69b5d3b5c69130a5799b83039f96b7f2b2fdf78c47c9d22a711729c31d12e8cbaa9ac0f71036f72121960b9850c1c701ce4fe69a2dfc6438796d289d75abffc92922a17e1a9a710e293a042b44899168c57e52630781a6d605439e1d5ebf83df633b770c8c65d88b65e061d0065f5ccc87c11d5c2cc492f626b6735cb9691c4024b6fe0b673222757f680446569989c4b5207fe0d18c4428580be57ff46f39cee016c2378618daf2601a8f953c96e2e5f61db8a4156c0b98aa65431166d0246a349acbaa734f5717537b234f96d3424d8ce992117b635a642f1dd1a4a448d3dcd7a4c1751bc2383da07a2f492bc7b908ea4a363650f407204d06782cf2ed49ffe9d95c3242e5d2ece83f68b79e75e16c661b61a0144b9457f610082543ab41e28be9392dbe03a99883cdccf36bca7c3b907544f5cc3936cdd8dd3c23c0c3e074e006d3ec4903392640924c6f92af4cfffe8284a7fdb1716c34167c50dfe3f06f1a42f671e48b92838ee0ba38acd83d85efc612d8a445d1300d35663e0d87169d76209b9a76eaa8c2e6262b620b3324c112c7d8c1df7b8d05435011044f65edf008aadbc1291f4c14eb57a7ae1ee623c31b9c931634b2a8b065dbee70667f25845302f0fa0b0d87bd247bcf39cc9228c548b17fa176d639224864bcbac84b0775a2ba644c239227fb00dde16fca27ce2378fb252d6034c573d2b8400b02172da2d89de8459ee5bb6cc0cc6b0435ae606811dc008d39c7082604324021b805a241f9e125849f1237b383a4ac328450c3e6dcda897dc06882f345ace75b8d14260242df1210f0ecb7022d0f03b7be160115bcc578a00b527f8b409d9d5540646e12f7ad1102f1c870dadfe4feb3cfe5964dca17a9812860f99749dd4fc29fc81005b022458f60d6d7da25d525ba21fe5f1dc62191d70cdae748c5b9215f8cbc7d331a1f4cd0b15ed0b7306eb23d032a5862ad81546a8f4f9174ea7d57c84648f269882adf443dbbf9f7455b2861927add231e2a2359c458a547e8110f2d674c4f98818f43b61286aaa4de827bc0da5e122113fc401d787b33eb53331a06747ffb36467a1b173c73c3e75a29ff2c78c05bdec0189900c3393ff85e938065ea90c9bdf559bb4c2213377f5dc3cb0392f0b3044bbb3830a0e179952818a022c10f61c802d2790d4ec0b2e65bb7cc9e0034414279490b6ac66b981a2cd254246059d380d901a20096b257c512f07fc59717bb137d367cf3a26dd02d26eaf1486ec9224b39fab0024c344682a87a6ef073fafff19aa6ca8b8065f851236191209861fdab7de60e2f9cef6ef7305af76079040e407a67abfb9b4ed35db64c71e955c065215c8c03f80de53e1fe3353faa102a3fc1db84169704f0d3af673b7584c1d7af24ff3fa6a611ae7e83e640623a519657a2a29de2dc8d8a17c097ac7ea2be0e997f938727e71383cf429017ecf4dee586797f188abd3c133b8915ec0f24a26397b67a86e552b8874dffa5de35005da2116f80424d2dd74ea434ae3ba709e83d6a1fb040c47b402f4e65e57aa99543e5d07d1fa092bab3719905e83e750550d0d77f95095013a2680dad6d33d51536c28d88c781a591892c830524e219afd585635740c3bfc5f303038970558016948191ae8181a8f3197be4c6172c60de8f05c5dc521e0e58ce3e2ab9c41121928b05e4a637b17b957921a60548b02a01e74d95efb3ec1ff9d183961bb213c3801a62380c258de9b2aed675fc61aa28e0ba7180e9eea43e111a75299d610ff892a9aa2b9844ad007d0558ef0018940ede56409246c16cd2a911173e280a00fb55ca05ace1fbcd06cfa9637d404442fa17a15eca0d97bd84e93d7f0271b44b58af62f7e5577f117e2bb3b0d4cbd6f13c5c600efa6e24d60d03021fbb805fd2850878b9a793470316079c629fa27de982e043bc2e040d6033432618409a4032ae67c3406eaf1950c91cbafbf92c781cf478da9219a4487c239ebea2b919f856fdae4b3a5a8e68109d027302dd6609ecdb023aa0d5347abdb385851cbb74e1738971ba37ecdd12f86ec6419d4364f274c0ed6188cc9640d43f603b13c4391d960464e9b908a795c2068bffc2d8be2a3e8c418da02b9793430c07d05b34f33f1a147ee4ef83e136f61ede276c2dee5a535f29aba34a70a02bef3bdeb3cee362684727fd5241db3ba7c99fdd13dd1de539aabb868217442ddd0fa9ddf7972772be567c3c886d9072c8d45ea363a02d8948c2b71aaf59bf0921fefab620295aab3e93400e30f4a8aca32cb5896af9af12e34b78c9903553d0e2b35e2ad495f6ead04bf503aea0cb9556abc9b5e3230220071985e15bce0c8df8e6b3f1ca2840a8e0460f9f48f35ccb82e73caea19d57419baedeabe1025c2199413f96b5f5686317dda0defccca570c424f8cc6bdd2f5da4aeb6aebfa910330271dfc79ac9ab02cb783c87d0fefc8eba1422b4a6f5b339e78a1aeb2a2feed2b5571ac6d578a0e1dda3e1d3cba3ee778a7ee772da34afc26b6826043adfdc74c1630e260ccb84aa5133a3b308464f3541e23985a802770386996a813cc1a4ad6caf46beb2b537a8ef83503ae3201e42f34494a4772e4b6befc8ce85ee63e9d2bb7e1254e9210a6bc50ac494c9dabbfa0a7853342d2382e5c8e21aaa63681cd77519ba5a38faaa43ad521be28674957d7069b0ccd4db092990835a8394c28f5055a91352704cf8d1d920290de042ca1f0be0e64dc1660e4f6482f382b7d8c265af3039a818755c61a417367ed1b37901b5e12614eb415803e59e29625ab3ce3362699f11204dbeff9edfa40d9ce7673005b8c2edb27b645452cbb6ec2b3bf128da2dafc10a7e8745a919ca015bbd3c50ee5007f442f8f18f00dd4c496aa4c700ada71234dabc172cccbdc6e58adec08b0ab7d0f6583622c675b608439021e1edda80c51ed4122fb3316d362fb5244310c918e39f3d3a4d9f824046545edc89fff0aa70c3d257d682049538d35d505a371d499f7708b4a774713e1d975f033c0414f608d30c3f3c3a86cce0e84c2e15f3cc3eacae932340649aff41b859d53c79cadc779e3577c11bc0ee0e222cdf3c615392512bce16b4f3e1c30648d6e8df9e743b13e110fdd7327b62d21d15bda01fd8adf9d726fadebb1904f6e094d78abb128db2cf65e293962b91dcd08568000366c99650d9eae639aabf2c776eb7809df8d5c81f4fac3ce8e7072547936617409794f491eff8b1e9683d806d488299c0a6f9eac4d5a2bdda52af62aaf3fa656dea9d45ddc7264b8e933f99c59bc1924365c81e99b11068d08dcaf8de2ddfd08dc3db17d7d51b5ddd0d5ef30ead690a00337c0b06125a32f53376bf5d8e5979527254600eb1ea4815fa4cbba5e74fcebea5e1dc0230ee18019eb9bf2fff967e9e4bf556fd4131573327b20c2ea518fc812c0d112e9d9a056d00634b2c13b9bb78792ffe37d75dce9325b697c4577f7b71eec179955b560d91c2a41af4e9a18f0bb5074de67cc9724b350b389cf3c43fda2c97d490c397193f1596079c65d30b66ca5d90a88a2c69a650b3996efabfa21d4a0cda5501c969e4a65b97556f8964de120e270aabdeadd5222fb0e89f0afcc36715fe2c0134e588ddcdd93578fd36f81f746cfa51475880f299f2289712701585d75a9d38c148f9000360a33c11287e5d72d40d3b2427b51a2e98da96d73db1f6780b8e35da180be90ab4acfbf889d253f7e8c5e8d4dbd721b7e30d22c1cac27793ada8241418279c88c0f4701278a4f9b75c91dc23b8cbb00753384f6bb67781fe6ff7e247ad005d5d6b2023c57d87a5c30abffd3d18410ee1a3385f2dac30ee2eb174fdb63a24ec30bf16136f5742321879e41796b00cfe7461872fd546547b5ed46820f689220d7f861fcb89c91c0b9567b92b6432cb7ef085171e2663767fdf9b8bdc216e76424d8476448d11703fe03fe931db2991d803fdf9bb0b30594c88cb32b944e75f23d9cf4d65cc8ff0f64c73679f39fcc9cede6ebd21182ffe244164a640f14d0ebe2d5d66c3b3522e28611cc0c6be65336e6757d624227d63c89d4e337afbd2d3d5a6a1a9030116bb03e08c709af5211289a8c0657c8b4e763ea6e502c4e4bd0dcade4970bdb630aa7f9063ade78146cc449a0f9b03ac2ea07252bff11c2d65e7da024380e164103aeef24c48918391c91e22c590db5f3e24aadcb85481a068ec1e6b5921fe28bd7447bd4a701bb6904dfa8f021162c7cc72b851b69f8982cbb06e2ff26c4f5af2f5931e42d331daeb5428f2eddad84b3d7f2fd141d31287882745771c762ab6c55fc98e2678da336505291e939435bb1426faa0b13ab85844285f5210c7cc135bed6952cdad31c484bdae0bb0b4b030e5ce12132702924f109e5e46ce1a94d5f9aec817d943c1a8d4e14d6851a80b1bed00c5ce29e2d5d9c6b89e9b214025c5602a8ac0385604885f40c2fdd9257f0a943fabc8f4628cde83d3cdad58909adb6fedb1d258d10361c21df403ebb02f587be980377d1af8c5dff442d8fad8c216e4f08b486aef612242121ff925f12ff7e1d6a448e7b9c641394e5c3b293197604f2eb1d0a5530bbb692441c0fe1d4c3faf857a40a15e75bd8f4b31e2649b6efa69960e446c05b833b9915c1180b02a4fa1bf245cd6b4722e96071c58dd479e458785086f653b52456f5366698c456cdbf059ffbebd4d6a4c4c4ab9b516aa85a153b75a417edcc16c1eb00c3305afdbb18025b777621b6795d19f8d6b459ef70ba267063d31bc527603f70b350bf824a16a3df2382cffeb87d36bc3bfda2073655f05b251251767b64e25511a37346490ab29da73d10c5c2fdf8c1739b434749580c280eb512949c5f37b68c90045476736787e4ddf3ed3b9e524bfe45dda0b19762dc35297689554ccec32bd5a9cbd10325532f274a0996b263fd72fe0e3ec89274f5df374b00ca54e464fb3f30afa8ea6bad0d562d3e9adbafbc10890689cd8c73ddc26b084b0208a0cadfee0078e7d16d0a116cbac6b8dcc29107a973357b171070f1655a1364b6023cdc942429771c642d9af2a0757313f725641c939029f4dcfadc75b4b1400d3b2d24150f826717398b6b13976fd6f9ccccb0c77e1176dc38847d11c6d31e09d4ebd68816295fd2fc5e3cd8371b5ec00b053de717f0214b0bbc5848a1b1f6812f8ada632dfdcf292acc414e748c9ce7b58e4cc72c77e6b113c988e92de80fb787cf4e831333481c756343b928027ceb110532f58afb25e172cd1381fe957cd048d3cfce05403662d98352ae61f58fd9e88f096752dcbe5689eea013e8abc21c531824a1f36822203c4932efb548aad513bef6430db685089b2139aa0190c7bb20ebb9985c6b2339533d3ceee0e5397f1697da8d8eb30755a2f68d82548024f4b39da56f2191b8665b7af15c5d8ab72d9795ad53a3f31f09d0dd822008b00c55055e1f57f7fc4e6a7b1ea2e8c64ddb21ef1021e66c0a198d481851babbba03e3d14cdbdf263f555c917a830d4253d7fd632f57638013d0370cfd10c6e360792aaf06d502860e99a4bb9d12e45360667a65b4656a76da81e151ea76b21b2ac300bd87a0cb8ba2368e902f30e134ce2ee3aefc570135ba82c32070b73e95a288b92b28268a1e8b794d5878f2952a4328a4c08f2c3f9107caeea62ded3ed6552675bfde8975675d1d2aa5b757f9a7619ae566e2315fda0b67f444fea8aa81bbf1f632d5abdbe6d9e95864886a41df4630ec2bcff921cb0cde9b4e204a3f8973fea039c2db187079262d4b8092d8d604469d6c05b4ac0a8a5b77c6e9cdef8520976d49b0c7b05cdd7ae39ec14554fca40ce0d522c797e0b4249fa3ce70b60397212bc45cea9a37491e24e4211492c3add9b1a0954b391f4970c8cef937765965342c7d16e448615f47389c2592e0be79aa06c3a271e1fe592490a6eefad5818a4ea3563d217106fce19c2ac08803832324ab2890134515c31769291014cb975fe4385abbd5517941db84e8c0c252dfa8333d710d2281291c5c2718f9bfd047f9f7d42f506d0f28ce95f073c76024d0f4930ba9dfeeed1bd2278d0440e6e9fa01c1d892a9ea92daa7c5d28ab484ca0b20f6165a91f374c65047d6c7274fd32970a76f59746864873767588a4fab20dda4d0d432cccf94659a0420edeae71659dd34750820ef0070e3a2ff849220e9bcf4bfc40437015059e7a07ec70569b0aaec08f8048482a75c11c5a9cd2a76a706ae257fd0630baf95d67a516a4ae051c9c9d49ffaba91be51094303fbbf1ed7e8c6ca1f37d8d710b34b2f71b3e7d2aa7d71f8e7450b17fd9297ca20d03a150c563cedef5e979ead61ec4a080c315cdd28b305bda448018c16dac094de1585e121d5f460ef076bfa7e3a2108a622d388b539902f9cdbda05a70a837149c751d11de68953e8c1cac0ae4472d8c91c49d63aebc65738cd5dabbfabe9a3ec566fe9c547fa97fb46bf96d46222267caf91ba470a08b720f53927352e346894e14da1375993a6edc13ed20a5e5a2e87e8add3c97abdd98408ba1a62576fb4fa67dd235da223457a333342bad7c7ac8878dcc85b18e5ecabf052dc5ed44c2b4d6a59f16e47f0744004cd10a149ca8c90154380cc193e528c22e9cb3b114b78b545e02149e5913993392e429e6db43a7216f3599b396e7ab0b933cda14f766548a47fa3b59089a8991427624745fa75975ab445f790f31bec779bb6387eed1c02205f95131a888dbb2734c323616a6462147ab818c19e93b840b3d1ca34031ebee8f850d747fe34d401948b65b035559a81dc2ad722677a521d575ef9d2b21fdf1d115c7411b67d3838b0bf2909dd9e0f38b05e89e850f7ee5f88c21794537259b43a4391a3dc733cdc8bcbb4fb5e46e1b5e087a8ec2e930fd92b48530736486575b3077445e435349f7e8e41446ecb01eb3cdf7d59ecf58f6dd22ca4ba0740d1d153191fd32f51e0cbfff63eea1b87003703828c0f5d9910e208963355b4ce5840d0144feccdc3d2730e26d2d009f81718b2ec71aeab28e6dee825090d3bce45c58f22dfdc95d040395ab66f228ff36cd48f300835eea5d13044dc866d14815537904cb266bea28cf0173a63c6c845aaa8a6341286cadc4e5080c587abacd7d79cc16b0d001028b984e34f43243e4163e0030507ba2fd2c934834a77ff958c55f4e9823edff7b86ca89f21ed825c814c31e7e66b8c7401f2775989b13db470e6015851f3b64aeec22d713d04b845279168927f97080e69aba4bf095a48ff7e92326a33eb6b1c68d66bb1fc5c8ba0e62f53cc640488dde245a16387a3e0a5e658b60fea221462d8d3cdeb43ceec7995a54777b08783988c97509a4dc588b0b3ad069e2e4375c9da015bc3c2e516a22afee3092795007937ec35cc9b3c12423a7ff0fd5e0a998a9182e72fecf433845d216ca22792c1849a69ba8761bf0792b42405ce70210abe5fb43619205b93ea5d85bbdfa7bd3b724987f7fe43cf6dc45eba57634744d58c7547d65f38ba3ca8202a189831d4f65249c28dc500c9a92ca451809304a34a8e2628aa17b9c6d9973230d263909aad7388365bf588922a9cd323b57ac7c71adfcdfe0030420386cac747ab3add17d70dd4e8bb8b28b82bc489e604a5cec7580571684311d54fab8d03fe500e32d4c85b555fe2b20bd3b9f43a3d6538a27da560f694f0533c82944f1799b66abeb2e44aa037244b84361363de5162a7d502d16f61dc03135866ecb62f185e9ba6552d0fcd14d042c365a85ab32c50167f0547b0f46a557071a174bb5a77432f4ac0e574014198b6b2f3f3622f1b9ad31d3f29415dc18053c9f61caa2213f8605f32cf585ef7ea1a56e8ad49c899ee7e5d998b62ae6cfab41f39ba8ac589a321b0334ed499fabbf24d16f92146cfaf909d2101c7dfc7f3881f9e3f1fb5d7b8833b3228e62e1bb86dda84501f0875191992415c00b462b6bf4e9c749fa99f210cd7e98b01ce0034cc22033ca6a2989ca4353bc5e3414b137e41956aba334cb658523c160e2b858058d6ea0066665261814490b541d496e11e943df93c90d91be573ea6f62458edc2a34a851cb25328292329bbe8aa0a0cca7f622cebc16ce8f98f024a11fa8dd45b8ccb542c2b38e7f7591d443d809ac52797710fa6857112098d96b7c6ee9198b021c1afcafe948ec972c22093e12e01a6cb35d18d5b00ea561a75434181e888502ad9f916c707eaad0cf6ce0c38d22851fa143307bbe2d1cb5c1b2a2afffc2ce9795f8baba237f2244b408a86f831567e9383fbd18e69082461999552807b1286677ba40cc89656db0d0cf8e8a5ef0d5f07a1d98cd2e5a11239ef7cada1c1ddd2203c1edba3c2e42b44fa15fdab0b2eb63053d0ee3d4f4b989d0e28dd24bc27ffc8da3abfa6c34347417448b822ebedffc12955226dd0e8f9ab112b7cfc2beb086db4a45d7ba6f871695e8b03c80bd4913ca04b7b8a518deff58a9c79e9573552f05582c4e09d5b11511a821af39108a6b13bd096ae59ea1a95b1ff7a648843e52a7702ef6854107305b157a0338c52eb59b6d34c0e80f2fca5a6c4d55b8c0d165d1294d00a145aa3a6409f47a21d5e7051224993d3d57bc58db1aba491df7d9b8cff18e8e6581bc1eff859ee9bbd8f07a98f6caf46fc43e69a74c47462b04fcfff6c3752fc553bedb8c388cfe4645f91bc763e6c95599e6eb005799dc7ed383ae122cf4b1eef65513dc3103a9437bf81fe8a0bbe4030aa09fb81293961fbe8bab7dbefe30860b50d9bee6423df8284a848091af0f336ac5132b14973e022658189174d0ebe0097e0f27927e7bb94391ca8e7d49c91e16b15c44b998a119e12d42ad6fb472aec66044bc580dd1b9f150aec458bc0dde5cea53f42fc007c7b7d2be483ae1e14621d6b3bbfdc2ffa2d7536503437e35532b24e216a2706eb432e9b807f9f8f95773154731357d138a92ca5d96e5276b4f8083edac6925611421a51642f959a0eb80186a10809fb66877c54d36129db976dcbd07f7197e6061cac3590febfb97f5e64b015cc772b1369285f71bc7778ae7becfb42c82317ef7d6fe88c9a82bed8b80bfed8584903e7d19074b35ece42d1d741a6f8f24b48fe280da2381a7440bda73b48ac1cc9605f0642f7dc2657e334da3bc48d462c54d2f245b526b87568209b80044209cac547961dd5dbfc673aaf8a8adc09c075424c36c062f606220a91bad75a833e68a7d79428c02d9c20a08e016f5fa00ba782ea5d7a0a2c5d50b63ecfa18d629d42dfed5be6102c47c0b049e9692945e475429f55543bf107dbd9ef842df57fe44cc8da23cd5cc43045e8d67c74531eeeed287b164ac96e10bc9b30bcd1376f1af526b337cb7c43ef1b52bfc4fcc321435071c58dba1cd44459b6c6a302741bf5bfac497c51777e6642c14157156482d650a6dd2d0d9a896b8ca6509b0714a14e581f089acb22053ce81940d6cfb7d7141463f368c66ed472a7f4b591584bcefafa3a22d18284a88fa8b8682805eaee325b6747da05518ded52b65b7705b2369c77c3136739046f5c4736f7f933727dce468a09f5271545c41efc1b3d7368924088753925a024994a9d15448e1b5301a36fdac6d0a589f76aa31d291bafa638cd10f01aa8c261178cfd333ec55c3025c3d2b526c9ca31a4d741677ab59f420819fa79166a7f003fd666100dd298ee4f0723574716cc7593b1c58c28674c72d1580a84d7356682a6d40a62995aa9b65b8f051a6d72f68711075604533006cee2d348b2cb2599623e4a7b72a59642a02fd24bc6bf86bd8e3158c07fdd5117f044c7180705c245e236a840d7db6d19de83c1bd146817f113b39b55ea3a9b0c80d61d2d4b86e6b570a3cdc210ad234eefd522851664b03ceb1a92815ba1753196c7961cd8ebd4a6160a51a551be48518aafd725424c569a0c22045bbbb65b5e05823637d04611875991290cc687cf0acb72294c798a5b92b352e9fa8fd86b1947053cd61d7b0149128ce1204bfcc1941318f5a6cd0e05416cafb6ea10ddd263859c5b624bc32e654316e472982fe9cd2b4a52ce8a39286aadf79a4d390ef9701e1186dcb9d647bf79d7350b0944193edde04c2d0e45d975f12d266957e0c1258ed97851108dfbb077d5907c511cc190ad50887df179ab3c3982fdf055e443878b19458fc2fb4f76af5681f507d50b723602d2411d12d8c92f351c0321f18bc0d29b911cc60b3a0b6ff74efc6d18e62270ad1b39fc85e3e091d1fa97e9eab6317b970ec90baca4477bffb7516508aef7717e88086c94af78e81bb4181d4baf541da066b9a4069ac73fc494d3d29252b73425051232843501d7583f04a3ef2f72f4631a643259b99cefb825c13ec06c375e4d8a8b4b4f098a764268656142163ad3178a619ba393222a3333e21e1cb2f8ccc75d2e51cface94c6178eb3bfc3920f975d5d607338e9785449d1151c85266735dfcae39fc7c65406e7f7f55289998e8032f524ad897aa32b1a7d07f5cf98be833d4e8545147ae5f8eb9aa1f6e3cd57f9a96ab76beedf3cc91b9cee0b826a149817522322c3af06b6aa7905a7f1ced28f65f4dd3456e946f4747b8fb071ca42476a771d3414c6da925f6cc53babf27c1f6859fab3ece3114b2d73ea4ba71b7e36a169f48cd17c20bb643300056f145ea902987e2e6db9e70b53b7c8f0fcc04658e03d91fc41cf6ec593ae3b4ddabb327df6741b933db71697c7704a1b70012ffed23dcb7c1cd7c03dd9837e0ede9061e8fd86fb130d8683cdcda430495302589c33fde0e8d3e5c5f86bece1f5f0f0fbdc653dd7cf2f534971b1d6b954b976b26025714e506df6ca3e2f1129553759c5d99e941f7f916743b6fe09b936ee8b88d9fd5c650180501baa37f11d73fcfe0c77d37fb8b531fe48150124bd8971b3191a85be62808c3fd1bb981e505309605aaebe68ee80d05867baea80f33fd67135238f60bb406436202c901d42ae673b2d73c3c4f9ecbb9dd1d8affac9aa025b0467db7c070d73a5d5cdcbd95f6e496db627a096c5ed804d7c1e31a10ebe8fc54058fc7c5a1c677327b10512cccaa2d7bafffb57b18b8c872324b7987be092ef8435f71844f9004e20b629adbb8e3c424214f508aaed86fa0be61107d99787f831192d51c130d52693625346b0f8cdef20da319720793fd83a5bbc15b001dcc8a897a7710c2f957b640df740ca7636f70c560350e4d0b764969f314ebc7d366f4afa9cac4b1ee8cc20bb428f8428bffc02e8d1d42af198ccaca103ad7ec4c3b3dabdd9f8889853f97351d20c425330f89fb68be1c44ff968c23c174da4d9604e2aa5f950372bb39a97748dc0f0c0714975b9246cf2c4d07339f4387b1e1dea253ad351bd339b757087dbca299171ec8935fa79e3314b4542dd651ad8a188307f334ee70105f6d99c05af991945ba0e9a521244393ab398a164e554bd1b62b565735f64cfb67aa53cef2dca53cae0cff537bd08bc368dfe17ae5020cb6ffd3647c051546542146755e0cfe032e37764b2b966623f0a248cb5a8ec1574bb47487762a3b703bbeb297ea1ceb88bce2b419591086a6d02d9d4a292ca645395574b5177ce2efaf17bc70d7b3353c5849f858412aad63150120c53c314c7c77c34de4b433cf90466eeb50cd201ad333ad85443259c2446d484e2b50b48d16b5462b65875e9eaf731103d31d668aadb80aeddffa6b2ce966d7a395dff819aba1929683ebc433223bf5645f9927e6f99303375fdc9d13ae43171d1d03eb476deb6476f97dac2a648b2467c7d472317add3139d39570faba4938b86da3da6d28d68ef52952c3ebe58b54ac1975d7900a52affc1ddc8cf7892dea21c29e9e3484e3536720a85b9b16cf11fa10204c6f0f792cabf9190f9665964ff8cd54acc04f93998ef02b381482f057da0ccea6b4254bba548bfc10242f6a114714d1bcbd94b610216795326c9fb1fc66f45085f500a6fdcf31153aa34ebe45477aee2ac32aeef7f24ddcc8b410b161426a86454f08896ac561cb48ab7dd8c08f55f9e4a092932db1499e6e08a740bac4f600c4894c8272aa7a6db189438b0e1ba5e35887bd107dcf94b01316201b63f87083d645128e8439c426700bec58db206770b0e97d643b3c9b1261260097642b367aca553c06aeb9693849e341f2a0ecbb5d8551d9e9a879bb0e2bec9015f6108f785ae73f48380b314521c28ec0e83422e983399626641133b97976cf087cd3f1c0413e2882de30c64a292e241ed0df76d3a4d15784a60543294dc9755000c70c65d5796df865c7894179db5637c344a6f5fee5984621b7e9ed7f0ff12a9e11afeb5d5e9a945035e3773c2260676fb9c9b2245dbd902948f532ea15f1b6000e5d5d35e732e4b02f70f5f83a5aff17c261f90d6260d9ff1f890db1b98139e8b5df7c0a80effa2db2fba454f44090cf12165bf4ed6235ea466618a87b0879b220542688e3e559f52566b9f1f6759d5438fe4459b623fd6b482e66c81a4bfcbc3d36264208b8bc0850693839f3b1b25214348d4cc89583411a31e438570f8d5563b87210089ac2ea241633cb69f2b66f420c8015b36739ae3c71d6b025f8f3eebbd913a46290df6b3c108dca90fb61d4b88c45951c2a04d6639488f4122a403370f67cb575f3886e03146b608121acf13078234c002989ea60d9f591351658f469229b25ed632fcab765f24981b5096d91913706b9b03000fb09009c1f41185d72056ffbf56a5977f0d859d3dc71a3c59542bed9db924266644a1132e2833a6bd5c5f59db3df23863e13a265683d9d0ce255b65d1884f3e61705220cabc634aad26ef8fd5c15ffda7816ece3c9e4ef739b3fe7a6506cbb0f14b43c75a95da9547676a6759d4cf1e887c9a3fef01bd27660384e9e25ba1ce0e3ea7f45e7ca6a216bc9183e90283acf388ca1fc33455804a4c17a48aeebfabf78edbf2b4288876ab2cf5a68b9a8e99cb79498c328414fb8fdec296da44a311d2730985697935be870ad1a9e22163bd79dd09304a6562ce6a9655850eb1ea1f2b7172faaad9427da3e82b7a1707c8a5a4b31c7ab9650c9cd92ce9be466e82b6e11c4a3526407d120de3eaefdc1faebca6d65bd52b2be547d9a57702a90fa68a4dc173f073d9542b6830f213bafaa8bed5248e52d9f8e572fb898673eb37f97c211ce6e79b507fb90fddd08bf0716f6728cef202b156e0cd3d63532b0938e4af617ff42b4a8cde4394822de44d4c7650bf50ed0ff9a13d2c806107c35e5a1152a6453a9344451a0a257508106a4fbda65aa7b938049a92ce65c51f68fa6bcb15361a23d4a6396d913913286c952c93b252230708a05789ef3ae2723d29ed0068806dfc4a7534d65fe170b44f4ba4d3de60a31a0d0fb882e3b27a556d45efc44f1b066642cbd7d249ac4958498074e1fbb72ce0bd15b2483c65f7d065ab47a1879ecacb4fc5c83cf203201673de3a198ae34a15474e85de8d625ce50895ee26c94504029c510d1fa3d2b91356b4815cbab9f29ca6145d4b826e7ff217b88ae803625a622cd28156c7a8e6a41b6d554b263720b860a0fc35b366db94c10e4e5809abf8f59b249f54b2ad3e7868796fe67d909e2826cbaf36ff9ecccc55b7063513b07cb13b5bc851b2d51a62198eee3f05c3bf94e20522ed51975dc4d3923496e1c664e59ba29b2b9770b18ebcfb08ebace0e9f8b85eb4a51c06558026ede79f15baafc45edd40e1dbf8a58792854bc765cd137a43139fff6718b7b34d00799a7eb75f49102e88e3e61ddc660217ebafa9a668b32c72b0a85c3ec86dcc3c817a3026f5cc24106ad2942ac1c5a15dce140e7b79eb165d3b0882e1375600c6e84810990cb989f0212f0fb408003aadff765809695b4a1c089b5c4d20ca7b66cc2ceb65c45eeb6ea91744510875901b3e77708aab1402785603b909624afa2c0c840c429a30b088e8c7743e862ffc2a851284829d225d1394bb5b09b90d11fe14f982731390b39e61dd206cafd4ac8e42103ff5150cd0b2670b4746633457c0372d7430dea720ac7ed464c788e0c7ec59d013d29931718822eb9ba4183711b62cd4a15502160453d8ba08d91c005d27328611b2e30ba12c76c78ede35f85cd781d13d0960949e402261f4aae9e7a1463285a688c0a80566a694578372ff90f155e80a630ea85cee73277d1bda8f04b3b8cd170e583449ea3ef60c94ae91a9176ad335085d8071a65502adb51659ec3fbd597f5ccd4ba83d1f13d9d0b43eaa55f2c590eafa4a7d20fcf025b7509b5df14b27ad378d10574602912601234ab893848b63a0ea0aea3ca9d2b63bb94abab72c5bbb06cb309cee5e547363a71dda4db1974ac6febc12d8b2c3380de747241af4b65f76c90b3de33414766625cb1da6e2b0be43aec5b3ead74d529c542710ed2a1c3e04e6c08d7c811cb2256e892b8768f06341d0c8a963427fef07bc1145332c0d795e3fcb59f882da340801c4c7e824f23c84541a75761a177fc11fe5dadc6a516e515165865ddafdcca1a0785d247b5f8805ffa7b831568a962f4712128860c52f20e710abba8a61cc776538318382af88b5bd92d9b73d994caf50c8030f10ce39278df3db7cbe23d2edb8e0fa3ea52c9fcc48d987e88e2fe6a80d40ab543c028c57d0c0373106f640719ad8540a3140de6bd746487e29c2ae6c7b147a0752fc33829b70967243a184a2fff138ddf4739ef573ddf28444871f6c37b55bf9929d3ea6de9f17a81eee59dbfa41eabc6d26be920de9f1e000ad142f14aa0549c487a7a0b6f9b895378525ecf808708f59d11085130032d7535c6232b919b609ba305ba5a65e455ef736177c7f575e41654fffc5a342114073d80ce601676ded5eb6e93297841339b59b6f27b368f243c1f6634ef4d21df216509afd7c47f04a0120fa26b34825c5059fdae3eee14948de46d0c592b203837ff8de9b7bc63fa15980b3212b51fff173e291cacab35820881b4dba0523a73b5e6214170078c0e1aa9eca4db0bf446a33f484e178f045005c3bda44308319383f96170c1d0cf2560d0ad2fd2f6b6d17839a00200f7a004fbad0c42aa7f2640104c324ae03c35db81eb2fc0189a064edbbf43d38d1fb20a35f0d47f9313d512d674e32d18546e10f403207c02f465107403aac100aefd1d2cee7db7c3a32e82cac33718932a23a1c43490c5e74f8743f7b441006badb7a365c29c2f38b311f849342891498a74d23981c1e37e1976f798790570b9d11bee9ab7c912bfd197860e76377a5a0504302141f710f2860a03428123d386ea7ce6eb0b38b50f40930241ffffd7ff73ec873be74d1eba490bd2ea71e00c120ad12d27c3b502eaf4cfee4711d047c4c23b7e023a1660a54ffdea28d3945090bcfc1cec712c864147cdd81b5242d2a282a23f17acc796bf816fdc48fda812c15f39fc74c7900ea57b26ed387bb134d5eed0bc2ed6360b3340abd913579748778b3dfb4b8d378028518819d8879f6c10d88943477c7d482f6df0c1451c3a8b7fa800776a1260004380fe68d14ba513b355db05b8402329ea9ab107df5842344fa87ff1dfc0961e2a00276e9a0bf9db446d4eb2b8ff1a84dbee454873408b6108fc9180f72a725a674ee6d15e6e546c8644e1cf8f61fe41ddf1473e808e5ed3504011b6169ea0225834a7411dacf806a59f0e62d4fd3cacbf182529afae087666b721f6c320e27e0b4701410f4cc2e78bf0fb25e680d2be2ec8991e468e7c3edc79a19b0c61b465249f687c40575c8800f42f69023b4b07a59adaa070b16cdb35b467a6b076e810c1e234c6680a64a98245aff04f99c44d615140015624cdefd40967f2e6b81242fd934623c901a40ddea6414b69010e05526e0a79d0f25a45cc12c4bc01018c2857af83d54426b91d41e2fee46360875b0c9902a453d02701133a8286c527f10ae3655da6ffdd90ffaf4c0ac12f996e9532cebb3a67193f26f7b793e4dd6fe2c9bce84fd7e26f469d03644fd65a402a097071444ba0d822816295e259c1710384df4a0e42d5398d2bd12d1f170324d611ed69eb72180d3c9a3ac831fd00ec6d6faf1e840fc676b4e7841b6e05f120a744fb48f13d78008599bcc5dac0548263c357afbe34b8aac7a8afe2d74df4c3550c7673088547bea21730c4065fcdf58f6a0ee600bf30dd689a2740184e66b9b4782273f171605c46d42d622318948c95bce332ccd6189ae67c80b97e8c9119acf926909bb768d94e511349725269dceba39c50f13549a10f7d9643d02210a1d1b082f4361225efd50139d6448f6159f85f2ab1d59a102cfe421b0f747ac9507cda560cdd3f0f13afb6b41f2a434da9da373606fbeb75068d4e83eb13a48803451c3a0d3d23c79c34d043e3043d78c4bac05b247a137efa1fb6eb070e45a9b38b50aa11953f6013f86235c57414e1de443c0f793a9ff7ef34635044cac77ae8907d169b45c43e93d8410baad2f88008c10620571ad5b7b0312cd10724a9be50952f800311837b51d9a36508505b22b064cd393793bc88ca32acc58c0bacdd190f007644b4bc0efb75831608550d9f633df22a0a196eaab2a229e6561ffc112a8eec45fbd10899ccad0d47ce6f3bc66048ebcce39775be2f62464cd992ddf39afd21eb90d8a3c8be391312fdc615936495e71c9f51a2eec69335e77e5e435ce1b8ffc35c8ad4056bbecca26d2ada5659b3173a83a11304f8997bd4806563ec7b9090c60979e814db3e947afb4452d55e6b4d4815101159bc39066319403bc91e867e664ff91e3be75dc1836b58d13eb1aee5821c6d03401f2f6bb79dd3af3c82f95a815793fbe321bb16abd56c24daeaeffc5f15aa47d6f12cc54bb3fe9afa79647d8bcf6326c7ca9b271f7e12a169cab66e1c6ad63975c7071008bd46cb92a81c7d8695de149258782f5fc8077dd0a318b20e6111d41ff3464e0e2c518b4f4d0e1a4e8e0f94b4977082dad21b24fbc972c6540ccbf7b3584d51f338703975aff16e0415c0bdbd7c6c20bdda038f05032acb80dd67729246217fe4888bbfbd1b342c3e11ff16bfb15fc0d361cb5a31acf7d13523c4f06f59d1f0a5d60a5d15fda54e1305d7490c0bb7e113d518ff3847edff2357131baeddf76afc6891fdc9ef49a3fa7180703f85b28d61984b336388808e7143ad80e6f74a303c51909e3b9664df5127a47b73f736fab0d0d3429543bda0cc659920ad7eb9101d5c64dc5d4e656c84d29a12b3805d484380e1993b34ee65344273190fc94c529438811298038239da089f1ddb7526fb5e6981a715eacef88417bc8fe27b4ef68cba750d78ca05288e8c63d280d7dedc4f2559ef561ad1a122367a30dd9db97a90bd04e8921867293bfc0e076551ac7c75b8ba3ebfc0db0e21b00f5f0fc00dae17e0bcb11140ffe39b2c13e32f4170be5190910bc8b24d6bb3b00f3fb9c900393b88818365e0ad9b0715f32b7799f413a2d823b23943b8c256f39339a8540e1342965382cd444136a75f80255d0ad316b879b8c9ac109e8e91d5fce70183ba6bf69331c4aca6ec6fc33eec851e88308c5f1e5267d06271e9b766153f0d43f4bdc9a6b9edfb0625c119503cdfb5b8138a29453c1a5ca5976f12c6eabfd3e48c5b29c02c1e8a7d2ed2aa01a6c535c713e4304a45a672476fb37904084080bf194025316d8199cf531ec6716f99e9b6024133385489254c8e461ec8ca1b5bd3bb5845f8006906bdd8ab216dec566e6a8eca424b136e9fd2b86f8a86469965e157356a2c9b7a861e8c24e714ffc8ba2b1a301598ba6f9e345721f9502d6c3e3020204ce160e935d2982c5a7906c560a84383350978d35e9af1b8aea62c4c0b1e62f15ceed141af55a40dfc4aee24ce770bf87a5a635a5850d7cab7687596e690aefc673fbb1a48002923ab25ae69dda3dbfa2f6c14558bdc0101401eade392f85853b5f6d945416d6ea17243fe133eecde2bfe6369d7d19877d425c7787a16a778e243402a47bad16554ca34c1912844445d6ccc07cb8dd975c66046fbd20a0fc81c706d078248e4c6e63492d95bdc56642385cd76a30c8a6618c43531b1e9b70c9bee6b886350daed3caf4dbe312117131ff70644989cb11f21126d83d7921b4741b8d1413ccfd336ca7a54ffc2f39ff01ff668f572cb6ad7b0583d83c70672c141f1fa605e3f45099b72d8976387da7c5c88a44f55eb7d0a464572ad9146a13bd0176b224ba812c74befcec55208deeeac1800760838244dd02f265dba932c5c45b7860de25f9d00a5f344bedc7efbef4890b4de2f2c09a98b196c397ee799570f7ae436901e1fb3c87edb8138619f8f8f326bd32b116c123bf52fe30c6a3d354bf3913655fa79d10249cf1bb939695033d04d1f5bcacf8d309b326df0be510d2c7b871353c5c0a0126b1563ff3cd51d4fe483e24a802e3bbb4e87396ccdc041046791dcb1032b21a0e10f32ca7c67379623c495c1e3b0173618df1a4c0051618d8b1773448c541c3f89a0d49f87c99c5d0c8402eb1a42a34e30ed1c0e04a941689b81ba3bcf13e43c14dd2fe4621ee0fda4be93145681aa8c9820659e92afdae308e438f5f015f3bd72d7fc39b195e90d0666c45772a3340683573233542dbca341036b6930a08d442eacb031a562709e2d1831f75a38ea2ce12037a6bd3bbce96d97705fb14106ac1d60bd0ae7fb0dc8c4a0aa4b5adf2da04dda5791f1356ec005bf1f0bc49430de5a89466c6096fdb086638016862f92390fb8510a7ee244f616e5c08e1ab450ec59cd3bc09830e52a79c00c1d8ee6b2d81c57c4d6cccfd1aab3c6eec6fff0e6c3e10d1f99f46b7f44db8076bb01ac0182539d3d8a752ccfd4c8ccf36c702c9823a3b986ff6f2e5ae3ec18cc7ee7f612b2038e6c42b1282ddfdaed8193c29d95ff7c135157100c63b164686b8b644df26ee2a9d19f6f10941e6df593b12a331b012cb0983d60ed59fd5b872f601bc7695b1b366669c86741c88cf31b1bfabf4390b54db57847beb37419c9b1eac1aa7c184522977f641081b32ebb0dffa00df887ee9a26226bf1c7dd9a09e16bd63563f1b5ff10c1b1cb2e1d0810aff0ace64da2be86f3bb12a9dc6ee62522ba4e0bbd43a53672c6134531f6da38afe503be90142d67d803a7ccc67ec6dc1686ac343d1993d4e1ed55bb6094e5c23d2364c41fe2c41631096f5f7f60c8d8bd8d914c9eb1eca8fc9bd35c68b3387537e3bf101b1bcb2f4ca5940ca3a74b6bc2fbca25c3751a96eb86bb0db361dcb8ce5944389ab81a51232888cc10581ca9f3f6c11af185259ae41d84bdec94d3acc6f0107296df23f89620e42e43b5c4d655bd27b06a9af47b42358237ac630262d4bf87859453b39385c06f8dbf3fd6921fdfe829f2f5bdf7f7b0c0732263823823c2bf03820ae02b024c3f8c1dbcd1b51b2170d399b997e74834d144b1aff1cd0e2179a760889c1a6dfc926c299aaa21bbd07f6cca83bffff17e0d1ce2e3fdf8fb64883fc943f6696c7b6c548a2db547d7cf1605f0678c386b0a0012e7cc7f49356f2d34161c405877cdfacf9ea2a1b660ef5ded7a1e20d583da2745ecab6206b8940862b71b918a07799080a18a919a0028a17003154e4a170ea60cac80ca222aefe0fb59d488078559df1349f069164bf242360441a463ba2588e45d07d593c70999200515ccc7329f8582c8f4c1b14f2a724955edd516c26f34e380e4e0015ceab74aee5648eb4af87f8a33e032545cab1b2e4ce6794ebc99f9efad8a79e07774048bc6ecd75c73e33e0902be703c952a92cf695f46fb3e7ad481a919e2f2da785e436c41e54b4341b684e2e317c9e65d35f43b7297eab4473f3e65f7803498e3a655c7b1929defcc073f1fb6e3bab6ad15cba0422367f445be60d5eb2f4c450d72f6c849228016cc40414141a7fc9edfd2739d3e42d21fbc9efa8b49dcf0a1be52db8f0c2ee1a97b1dea677e3a9c9b1f4ff1fd1f77af29bd544f18cd99c4d95da51753b1f0cd10bbbc4db30870d196c7f1b780cb6bf16a9af2b020e5d55fd894f1c52d35f5046e7c8b7a6612a557d6ad0bdba51190e19cf32a93187bf5c2c9bb415d37a7c11e19ffd7e6ae16d07110d0e087e0daea7902e2afb39fe08fd778d7ba03a9ae137d00891de1a0270105b1a97a112c10da599dcdc33fab493f9133e42405ef9813f4cb5dc095406f47a7bdf41b74d480e805e4c337a8e2d9fb198cd32627d02e76b4d7f0ce2ae709cb5768e9ede57f95952a7e6a58dcccb915cc3ed0992ba7a758ce9121511a9afe8d3f5347f5e4f7f159bd948b451cc2a70f19fecec736a47c6e604792ac2a95602e3b1b31de9a639835bb8e0b78f6f0d91251a53826633438d997a18da7a50b6ccc75fb11cafe0ef776d7527ae870d88a6849a257ea549549a2af798cfa2e86ab00a5e1f16168ab5b7649b656062ce8bc50c8f89c24189e5421cf746122f0951e43d01c8990f89e8e6b50b4a803cb6bf5261d21fe646160f62c54ecd2894f4e4464e2ce13f5ac3d99d4f31b994882cce7da8a1720fb8230718bfd0c799594b97f37ab8e8736bbbc2321cca803605d201840ef250ad4e0cf9554ffdd6dd8d8fc55aec11ff7f6627976a23e721be93f25c40cf4e1a3fb97a3a231cd01382e6995bc4b26dfa71dad285535abd09f8ee7ec1b53f9bab95829856efc657594bfa280ea4a1e69c147c8a1f023678892ab243b8e3688248c9a6aba091497735bed9dccef85125e97bd83c96828884d20fcbf712dbcfb811f0d136a025cc5ad0451168b2bafe6a479d0723cb777d79a2612b0ed7413cd2bcbf974c6a87b96d4f66b002a6788752e6377003108e368198ae1996707ce4d88d5e5076cab66237c52cdf70c6d8cfc66070236af9225e02846a7d81c92249ede8d541d519551252c437eab377b413e78bc99409f01e23412c6b123f0ae0d2d827e5b24f88e6d5f8a41bedf9bafc3b8a0aced48b4c394f70d03d5baa0c9aa30e583cb0fa30dabf89cf5d93896979c0b0feea643bef7b4409d18f093ca43f13a7fb46200e3ab4a6f682f2c84f13f58ff6a804b29650b1fb95475f165e9bbfa0ffee3490930454f2ab1a46fbdf2e4059977bee28e96747381d181d4384fbfdcc0781916ab6627366eaa745f187f3298dfd1248b056c873e698e5c9fc0e76ea79972c574ad8141d7b4e7275e95551693470ffb8783675b8de1700978a5139b63b96f84c1c8d4b6a85173b4f262c1f6c32fed1ab830e39eb046398c8d94650a3bed89655603e3207fc13c0be94050a4a323fef6ce22e009075bd0194671ba0b663accb2faf8d6fca6947d9f7a96a509214c26e854a6e71a7df6020dc9200ea2f29351d4a8c8fd30547cf7e51a8032ccfa03f28c124541216ae6bc0899a4813a0276245dcdfe02651f2c1841bb4431bbd17edcd4a7f2ad139b323902b8c19be76076a5f440a7b95128f3d1ec7f4044f8c940a8581d6e4025dbeaec004603a6586435538f6f7cc58028ac18366023cab940a0894c0aeafad4759c6811fee6e23b0f95200b981f00a7ea5c39e02813ccce1f54afcb69ed01f0c878161c9a5492043eb0b22a9f2dd60863b35f76bf9efecdc7d75ffff1f4ecf1dfc17c7ab2fa193f364a11ecd3da96bf614682806df9da4ad7e7e8c9000db350152ebdcd59868f01ee1fb31ac8516c9b47b9e86aa6a7978d30d7e66063effcd715042418ea7e7c62d376c6a40f714245eae020cee9b20e4bb4fc2bb1567c19a9cf5b9f21fd77b67074c68d29019f1f16a626cfa7bce336215edbb40d36a9248c3ef6c5da3075f698e0b506855d5a9318ef94e3976273c75144d54b8e7173a96224ee27ad5a95ee7e42efae49b632f53e03c8ddfca7fa8ede757b65eb965eb57881c5afcbc08281abfe2d24fa36dcc560905c7d764d08d8bd8d98450312409759ee15645fc5efd5b35c34534812aca68bd39d187699b9c099c754cb6c43619f3cfb679c209c5b6f96228690e861945ae575d056eef1fd445e240380553728e576712607ce4683ea8fe48cebea10031acd35245364fe8568efcc8b05c396ec4ab300ad0a69baefbba6c73ab49afb5b5ec0f94bbb606cc3ca2e2d0cb2b6dc41913f48477cbc2d230a3dd914ae5123d25fc82733be681901a23ffe1b8907f77ab9d0326abfded12db294d4958fbfede3d4ef58f57bd2380d6090eda722a11368198cedaebc8c6ae54277ca0086ee3c8c518ac72b0daebb50aed6536490a726c7d62aab13449e992afe55eb112da4184e278c1e4c791188675e5441aff0b5277f4bfd65e7dcf4eaa93a7b6662ae534c93d9505318bc9eddac4a2dbcad35b35adb58700ac69280aade72c7324be09165e9034e91361e31cfc677498c10ec3a73c23162b1876cb9b1b48431e2f2f289ca28587b2229a6487ceee215b821d6b78001dedcd971a51ec5baa443d3d9a9690fce8a9b25fae6ad04c1eac5d4d22f6931c51b9a9d372d8a9a65e14c75a154a268cc0aa489047cd1501a0955ba3a80780ca0376305c071b3bf075cea222d3d1c30f1c96c2b0ca357dd039ad324a9dd25a1c81a6382127597fa13688a64423eda89f48f79ef52e52690e1dc8cd1fb3d260335d056985f72e473f6f5ee15a9e8b959179fedf23228c7ea07e4aa4709bc5f28d7bc736c40c8b89ce952d44ff123edc4cc8612b0aa3473ce2a35276a2100fa44a1518a84e0063cb361afe3814f090c72ee9b5a00a426a6176103fae411cc609a2aff076277201adf5260801348bcd83fb3538e0f2683b6ab1d036d4b9550421b278633cb74a3401cb8314a3ea35c0ceb9b6cc2fc5b6add004fd108ae2661b5e7e8b00504769a725ba158aad29329489a11549a9177856cf272833918c8d1d664f9ac0c5faba61662782e3b9ef8e3874476daa70575a84fbdc9e4255a7d0bda9cc47d7c4c9822cee4af09b5abc12189045c0109da3189043b12b01201dadfdddea45599b22e32b490d83bde60f512c84d1420f4e5fdd41504b04acac85c8f35e87a1990c3f8f63031fcac55bc7485b5f9273d91537be24665599bed9b2a366d2548e6464f7846b79bbf156ff2590359ed62c92f717d9b308ee5f8dae0e68842189b8fc31bba1349dcae1c44b0fc7790e7607948b1c2b23c814c1d0737605d322c6f5991d0b5d9e811a3b9be41e36ad948d9a7ca4fbd2436c25c23283c7d072608fd23612c4c4cf45cea132858646e426e809a2d2bf06e8910fd1d95032abf048aac754b707f26f85def035cb107251fda1f525fbb462024eefba3b10d7bf92e163e39f0a763ce41a975080498ecf8c86b1abb718b7b907f32c327d2bcdf174a3a1814060ad4ffcee0d81d8a96304d7ae78154ad8ce5cbc154e327476b3e9ae71f556274dbfed778e1319b41a77ae37f9e32af486ec6f5be6bfc0f8fe328630f2bfa383de3b8689ffabc871571c64d8c7011626141c32613962899c182e033e48cb5e0bbc015d7d48733a91e5369429a27269b89e64497c15023807b9bb89b535488bc37eb0ddcb3d36c1e9ab32be4e3c2ad4d7cc51015df8cd96d2e8ec42588869807309d92efbf0b5f7a5988d6323349c428b0ceb3122677e905dfcbd8486543d3cde2e8292422d9712ecaa340eb9699908e912047c526808f6a912d6150c463b523fb7e82cfc351d23dbf444a11a80dc0960b0118dc954857d63ef99e15c0645cc75cdc4b1a61c0a6a7b97ed8e4790ed3ed935b363d40837231333bbafd95b1df9fa17ec5220838deb06ef6b3d30ef961fef7ca941ee9d0d191b7af5aa2937623ac7729270c66d9395b1e429a025439a6a661f7b1771097ab30032ce3001ac72ce055c18ff3d1c75eadbe5482fb35b9f852ab92987b697332f87d45f402aaba25e9e0042d6d8854030ca19d012454fbe1b676e6f97480b663baaf3774ad1c014e8571b2d360906bc7aabe60bb91773c5bfb5061c61b5070ef4e69a13cb7ccca877eb779274a39d9006c13a9de16de0307a5b887d76bb9c3f995535aab55d26a50825deaa7fed7b82317782a4511e3b35399097674bb665b8f89a6bfd1385c8800d2e6cd7682226384b5dc8703ec7b9ad7279a27f180fcfa4c9bf027035f353c6084981b50d9dad83bb5efe84bb2d2fb9d90a6b83e5a0dee5f64d5b302b7128ad56845533c618e2a40c09227f9ca048fe3b7bd00df782c802e8f655b043c71178429a59c9be2bfcfede7c05f6a1f1c6bc3d3b5e67a88cc9d9075d32e4d4189acc69f42b40afd8a945a66a8b2d8f0640e48865e42f96882283475d6204e6f936e6344651bc991ab715d82cbf8c908351f85177cf4dac8f3d73643a486b24a51744555d1ac2e03f70bbbcdc243f98a7073134a33b265970b08ceb6b59e065dabf35caa10eaadeb488d590aa78644499531a795f318e82174b028492e071ef672b038426ab2bc1b253b2a8f0658dd4575e50de345a040273c65030a971684572056324e07f5c19e4157ac6b8b9360c30e77ffcf68b46a572b928a07d8d7094050a6b6c9f8c3daa6256329060439be830e5a0a404782efbdba42498441fcb2a4e3511e91540cbef8540764aca0b6655b935b4a99649201cc0722085f084ff3083a4c8e5855a475782cf8da3361355615e99f3fb314b4b0aac854a28adfcf8435b1aac8fcfa152b813c3d6684614dac923f9f09ebf1e8627021645831e44fba0fa05fa2d90e2412a537fbd297329a65249ae1771fe6a166ef37fe7dad0e8fb5721d1e2bf57860850917ebb1fa3b1bd30422f8b01e0b7ef7d191a0a98a401ffa49127650ddf09eb6f2c3aaf8f299e40cb1aa08898495b4139ef0838be5c3d3220323221696d6de9665f7015d6fec62b83f5e4571f74cf2109f770737fc013cb2cf9a1d7749f2fc8779a8394996fde3b5c1ff48cc1b6fbc917d682613ba0bb4f7f1359918db7d7ea734ee706bf4707484a1e5893e47397e025ce7be9bf8371400d663d492e323fa8713352e367ed7d1dddb272601df36f598c929a717440f47e2986941564a0904856da729992e59b87a534ea995d4b062dbbd061a7ef8f8b1fd5a15db5f62228bde6eea7cc8128d9d87f34819a537cb49a54703a1f2e13cdfb427a8d8fe161ece9b33c29c4ecd09ed0c59d2bc5eb8cdac8c2d0f278a11d7b070a3a109dbcf848c934b49ab9b29c672382c97fda8243814f3a634d49678b93decf7990e627737870347f642dd4ca6187bb34d87310d3525b424b8951663da7626d56cc540a6af5fccb633fb411e510d5b21b746bfaf1407dd81a36a2fdb1f4f2e0373f0f8944ca5281670b44c0c34e480fd7c85930c9d3a503f242a7e5171690d89ceb38644c30c5c6c7f0dcd26a986e6682a0fa5ca517554945748c30f12a9697854d5a4d1511fcc99414d3913695c45290ba8d934866659162365a431b74ced2ab62319d99d51d567e5abb61d2969668d8c2cf80ef87df149556510b6b517d8feaec6f4f4b73b5f7e56e79c72db1e7ebdd008aeb6a75b7d89bba7e5e6ce70a4d63a881ce255cb06d180abedb5237ef2f660d870e38b01fa276fdf3d2da5a7f08061c30d0ed4d296bc7d096f5fd140c00e1e79fb67e59cf3b7afdb6b727b2ab7975f9365bdf1b06925a2a1d5a72ccd0c90cd397f7e465f7bfaf39b524abffe56f1093c535cba1d0f8f4b9e2fb99a1f2bbcc0828f1d37bfba2ee01e362df0e0d1824d0fecc25dfdcd8e140b2facf0a30627aa60a0013213430a00a800e89021c70c320238e5e0d0e168b00308621252430d5212a0560268052819803484e68c350f201110779c08b4210137fc78c1c7cdca851e2df0b0c1f777b0b0028e69853ae79c734ab1fd349befb539e7d4280b708756846604ece7b1b4a3f6d1cd5d6ba1d23fa491a5969be5ed074d1d933ce73fedd6b7cdf952ceff6d67be9c3df1bc2412aed1c67974812d442e6ad89631e208df7974cf1f023dc62d90478d54b029d8426b45d8962f83b02d5fe27601f6f36e81f6c856d4bfcbe667f377c8689c1e79a82e6c3b53bba951e6d19f4ff3bea3347bfafd3b509c390fa9d5b633e54df4e12ffca85dc54e89030385aba7f5e081ead1a36aa51e3d48b487c9b3d8af1a442e5434e8aa1b62b27f0cd00ae2278919a8a5c2aeca8af83d7884a669c9524b965ade5094ef584229619328676752f76f560018407edd10c287edeef20a199953ec28a57429a5940e65cbf76494d2a59433a6519b335e0cecee34208469c418d398d3e70808476ce4f7ef88fac007ef3d1a6baabb2184ef31c6f876ce97111a46910636cb484140682f5ebc0441d35e1082100434aaf0831f30c1f6d78d488ffce0eac11e5b5b67d88610a611431f5c4929e79c5996a541334a69f442d3deebeef717639452c6c902a3f812427c3d1fd848295543838f42e9b16fe7dfb106fff7b206fb66e3279fecd98594407077f73867ffef906e63628c513acd3cbac77eabd71edd63e4d20f27dbc1c337bfb707f40f3aada3a2ff78481faf8bb2e2bfdbf95004b658f249b7090dac9865f804311fe9a39c39ee7cd85414e3108dc4b02493ec3fc467b7b2ec216cbfc72e5eaf1b7811d486161d420861431803219462cc9630fa7bfe9ec328e39bfe9e57219aa17d6c83f4f26aa47b4347ccd38406967c176569d8455932cb80620f795ef96fcb48ff5e901226359d2f43ceee0ef3bdcdef6120d58caf02f94360cc890e3fbef7f9dd7bfe1e92cef13da0f86f533d8c83fc8975782c899fdf1831002be2e7378e61945da293dca3537777778fd1a37b8c3edda3bbbbbb47f7282373e25193728feed1dddddddddddda37b74777777778fee318beeeeee1e638cd1dddda3bbbbbb7b748fd1db3dbe521a526b222fb9531ed8fe4992ee326659267dbacb29337feeee32be489d044befbdf7de7baf9ab428443abb9787f35ea6f68bd971f4187d8cf86410a20e6c1b44bde1e03b73de1bde47eca22ccf5e46f21fe2a448b1ec1d4e79de1de4d3fcb605b89025065241cc890eb3bff146fc4eca27a3fb93524677fc45e0816c29dd0b97cebd78174dcaf81da394d23f5229e3142d0765441a639481734a2e51c618a38ccc497aace9fee7d163f4b8c5f64b6fe8196e8f0fa6f2cb68734bbc07df7c6f4a87ff3a0c4d8b454545454545454545454545454545454545454545454545454545454545454545454545efc1f7600af51e7c0f4208217499130ecec698b6aa9548349b323a6cf8e07b90c6e44333711803d3628c0d95b8220e6c7f6cec110abde8d13dc69fdd0f1f4dc630bef7ee1fc7b0fddebfe8eefefcb9bf2899d05a95bbeeee8c266e99719aeaee6ea963663972976559d632b9ebee8e5bfaf5b61c9a157dfc668cd316ad561c9a978ca8c4c5d2d0c3691b26cbb6fe48468cb554cb329a11914ad4d4ca3292a9664d850c0b9fb4f9519605f7513f83c2aa5e32f3a7f758cf4aaaba20785e50a7f836a74fbd11d4dba03e85b2f925347f4afd637910ea4baff87d53d0ad1706553ac56ed5d4bd2da8f2729fbad7f4fd434dddfb6fdbe1e2a74c3195c24ab094eea77e09b6f912cdd3dcd3cf3c7e23349ffad4d3e0d3cf7c91d3df7fac22a89f79d4cf18a1f98b9760799aa7c14a2420042e422dd60c56a2fad43f562a95c2297a35cb03f7c058be059cb279fc46663e8597a47ee6315e42f34bfab1583e34b75fd8c7c728bb8eaa1fdb23d7b1799a37a27a8c97e0573d0d5e82a5087e55cd2fa1791bacea7facfb8fe541aaf8dc2bc6d2f7eda0be372848456d4a98c9668374f50fdbce1155fc97e90f9b2ad2e07f9bcdb3f03caa5fe12556458c030dc5d8e669be88cdd32861012fc15224f5f869fef4346ff3111751ad8097a4f0e969de08eaf1e3473d7ed53361ed781f2b9ac736afb260e0cab998dff8d75c6ec8c7e5b8d8d0ac7cdcc75addc7aac12a7b648d3a880d079a57fdcccca766b02a265d27166ce5f85c55bbb495e3a531d799b0d375d548efcbd3089fa194d084c90923616b2d4cba82ae38219b64261e37e50579790beb93054ec10dfd64a759e00a08db71afcc11bd20254e8c973361900b6a2192a78178185c6091a3a8f256fed2b6a8c8ce49913dfbd393e8ac824d244a85688cc69eb4e285ad9cca6efbdc78698be43af5c571aff8a7cbbd7a6acc48af12ee2c36c1180a89aa65b088aa5d24da23e92f7d9621990f5f83f7880fadbe4794b45aa57bc4abd0ea372c0f6cf9e4e9e33aaaf933f3e53aaa8955399c5ef5466c7e062f99799b57d9e05ff2e34f5835ffb154cf6acf0569d6e649ff6ce9b997e3684f3dd444433d1464c3c5b8d74983979bd25292e05e46d40885edecd011b5a56c4854daebf0583f66bee137fc7efc36cf73ff050de3f0e33483fff445f09f6cf0122c45566ff34b7cfce9f1435ce42a79012f593161b9f2db765439cc7ccd1799f91aac04cb7c253eb00afee9513ff31317a9f91bac64855510ab7240fde98da4dee66d3ef535df2e7c8f169e870dfe3ba55c6c73e2d1420f17583dee63b5701f8b87cd7d2c3c5fd367c827fbadadac75ec0b26cec8ff3b58f81566be46f534f73ed6e5607ee3af0acafe3533422c7044d97f07c725fb3fd7857bfd7dac1df7b1662a0cd717f7ea2cec0575e63ed689277bd5d3a54ce4b7ed0c19c57cba249efcb69d239dbbb335721dda6a19b5ac51cb887bf98ddff4abcefbac34e6881e8ee7d27d5922c188b65c870b726e28f5966b658aa517d9257e27bb64ff09443e5d8d05afe7ec62795e900125bf8d5b03366487a8d8213b64819e8ebf853de16fabbc9c99e2c262913b4b8512b595a8351b11526e2c5b601f8bc696a8f5f582b8e73a05e63c2fc878656f211188dcd59fec1cd1c379b225fb7362bcd50f16e2190457fe124f185cc9969ddf4d58ecca50ad82c8e8256d4bc35dcd3c2d443e20fd9eaab1ad9ce5963ca5dbc2c3e99f37ae82aed407869530605839d2c2c64f86394f0b1b533217e4dc1439a85631f88d7f0b862356b6ea96b24f5f5f2f484b29e1cb53dfaf599e3e612e484accbd3cd5387b25282156eadf86430a0ff11b1a6215ece78e7b05c5a045960f9f6623d2d96451184bc7bd825ae28e8bf90943acfd9c5ac70e6778fdcb7b389db5bef2a2b0b5c2a0009c0ab6ab4fbfbe5e90b79690bb54e65edd269214d2556be45efa48299109b69bb07c91d8006d78b9716713498a9e49a17e359342a552539cba547e28ec73ce589210d28f1556857268567db9613b6b94fdad910563c3c01cee8d2c1bd939d8a4f274528f7a797ad8293ca93c1426bd1b3861b89bc9dd840d812692e9fa971a4b8fa39022e58317574676316ac769a99c29e637710a34e63a358977e34fe23a1a83b8be1e8e146cc7bd38dccd582e9372c7bda498e29ba83d6563a27613db0e0f4d40f8255b9fa80ddb6a3fb1edf090caf4fb896d874a29e76b4d9ea4611e5230a0823e207a789ec7650653f2dba2a89de3be87d3565a8a9ae3be1c3adedf4a07962e2b5b033c4bdc506c3778ce811f5ce978ed6d3a305922f683135e60032c3b1002ebbd9b1c2f7375e0ae6699cf71bb98655ede06da76e4dbdbb9e63a05def8cb74d0b6637a4dab309823b1cee9655e46ca5b61f5058695d29543e6bd550e2c5d7752793737c42c8365cf95d8868565ff215ea7c09c11d42c536152061919213218e8f4424ed8876a6b963db8c215a56f657ae932c9f7ef20f91db435c033c7b9c55dcca6771396aead83b61b6226ed9464faca662b6c07e2fa822bbf5bca257b84724b110b63493fbfa33118ecc4aaa08e04c7710ddbc28cdcd557f6af2fd7c9b8295087b2fc67a0f9c5b60574e6927838fe5a57519fed2a360873b4b4b01d17cbcec132f77a38ad699af614aeb421907bbd208f49d6ae70af17a473b472f064ae8bac258b2aae74d48aa65a5f51698c82edb8570e0373dc8039a5f71ae4f81dce1df7cafe5c12af1704be7f16d9b92ab27357b27354dec381af5df7e25fb2d938c3dff117dbf068a1870bab9be7e3851f3830a4b8e8d0b21e68e15edc2184d8bdc0d5eb6e0821b514c6d4a7a48dab1856129a5193a5944fd33016cb322ef9f95515f158d4c2ce2f95b6f89a5f156d297e956852f29071a13e340ca9623bea437da440a00c9fcb0b62c67b9997cc08e6c0dcdf4f87c2de4d3f8d56e53d2932fc520c2cf796038915871ea5db8e8cee9044d22207122b7bbf4c5872031af21bc714e637109621f7c536511ccaf0e79453ce96dbceec1ba5a454ca7ac4b613e5f5cb8445b78863ac7b44435cf20b6c1763445942af48d417d8c88ad7bbe4d622ac09dbc5182cc38f31ef62ecd623ecb623e3e670dbb62df6db4aa68e498e491d5deceb7e3c10e01d2642206c4460140d78e3ff8582b16cb891bd45e2c9de826dd285e06a8b8884edeaeb5525b6f7af546c53ab40af4af1726248df552cb2bf56437d767e0ddb8ed684ad72c876dceb156423d219c697eda44b487dd6f442846c3ba4181ac985c5f105aefc39a3af6f7a95c7b2786cc67a0a659f30a7d2ed3598b0a0e662afb66064ee4ac00497dec8529544766692e1a5dfd41a59a3128e9829b2ff66da220f65c7f5e55a947ebe90c8999af25017cc297d9518dd6d604b1f9fabaff5971e7e9704e6ae2fd26b5cefd072bef6f0caf9da9fa04b2f6fe902655faa53a04e965d6e0abc710e531356dd80551e3445503717ebe6aafc50cf2e6b6055f25f6ed80f5cc1b81f2b50d2c076f5555fd90a142d03ad543f72a686825ad818f68971c697dcb9e386604e67871a0931ced8d2413642e04f9f1602b16d3d20fe5e69fc0aab923ee5fa0baeeaebe1bce07b0c6cc7bdb8d784d178960ae360dc0baee6775ce44c6d613047fb528ddc763b6922e1ae866aa50a9bb01ab61c9a2567605fee388b0525611b960a11412a44d168211c97ec42682377d48cecdf25fb9b2c0a4b3c148522a4eceeeed9ddddf2bb1a9bcafc16e4573f61002d8654c959b07e0e20642702acec6061332250d820830400dd100305042d200b03ae34e00a0744f1002b709022872a74980202b122582240851118c4604005cd42b7a0311aab82c6b0c45ce7f43c9e0e8f0f09ed203f2c1306ae82aa90c01413b082025254e00a0b4461b30b64c1c0950cc44003411b900107803a808507a0f8801008ac84208bee67072d78a82282198ce009126cd10395233440022b410d923861022e4ed0040a86ba6042cbccd3e15eefc63f7bf89c13d95ff3628a955f80ecbb58c1122cf04289124bbef021092660b45e3fd8a00548001106cf0b5c40d4e48820c4704911e2064e8c7832464f1150b60c41441432ea6b9fcd0652f6b192885a5f51c039592458a3b7f2279134084b1c0cb227070e99c7f16fdb91314109e73715db8239337e7f8f8e312a14c54ed80cd2f1a6373d8e0f72a2096a40211a64202f7157bb6a3fe6b92c5087900ff97344dc167fce0ca863f2e17e826c4c84eda08d9e71de8e813ebc385ee60229e12ec7d31e3970e4b830781103a30c7347634db891fda190fd691698e390d59911b2c9f4dcebf81e3a4c306c0978d9f47009f37131781c962e89ccf561f88eb302c3952e10d4a9ea2fe553365d55ff03234a14f20323ca97ac5d55bf96e193ecc2b26783f806e943a4331cc224a1d8fa3858e52eef71575073b1577f60d35e0341ed6d477b2dc6cd4449a59a2a3fb2c772affd5b91c51114be983f56b83aad40a1c9275c6d656d4e8dab353f3c9e0ecff30266893c85c8efb52a829a4596dc5d64318508585fe497351254f88c86ba5ca1ed15e655bbc060cef714f9fe483a370f5cb9978c045e2e898723b9d7c39198ba5a2eda92423c1d6b046b245dd6e8844947d9df86e1a1c6eb79b65ac8f4f169e52844eebb51c9d3a785d8d61b418d1766ad87fa2cfc1ee0174bbf70461406e6013647bc2371c7c17a806a58888f6cdd30b3315be54c33a821c4133683a0ceb3fc270c27bbd227ca52a904df7ffec0194431740386e96018eee52de729b210bfb7ea389049dc6beb72c720e2089b90139858238ded557157c340e8b50b8426dc7deeeaeb8d6ce809b35fc095bf251a72623be992afcf3f42d8197483cda5a714ebd0acece5a54264789f17608ac85929d2d6abe1f4fed6084f87fef06e3cc53dda3a61eacade9269e44ec666bfd643e56ecc732f2ff7900716070d92fb67783a13f66e7c2677c7e5ee4839c7772ee4fe169e10e97a40fce94c207e18f2127bf53461a5befff278413cf7a76ead7f828dbbed357aed9135a22fd7a1b1daaf3caf4c26dd5293b9c5179dfb3d9ced21f5c9f3d24cbab549d67e084c23cf8b2393ee94e989f93399de14739dc7a2d2479b22932e6d92dfd68097fb8f54a14cbab3497e9b56b3f6ec8c53b0152683b0f042a30bc14023529df98a8db2d58e6c3b8db9d2e7b89d7442ba9633d5d791caddd2bf4deb78784759fbd2db23984331ee78785f5823b8b247b289edefac910573e402db5923153c822b36bae70b8b0dc612341fbe86643bd2393f7701eeb8d82b8325a8a41b9be479b74cef0343e88b2c1b503ab2d19717e66e3ae79cf3e9d63d27a9491d6fa550d4f75ed78e4208965a515f3456ad5418575f3406249f48d75bf9a720052948c10a6a76eb949f1652937840fcbd2ed1a94719ada0ae60054a9e927693a6a14ea9cfde08ea519fe125588a9cf02f513556e190bd0e8f95fde933bc440916237809eab35f82a508ea33acea9f7926ac25a957f5e98b647ffafed3e94faf047ff64c588f458f2ca0b3fc1c9a35f34876e6ebd0ac19940dea21e4be647fc9a972c81ef546b2479d7e89aa3f65e4f43678c90c4e3dea8da41ef5363ff3a787a7cbc12cb649cda04e2a94909111bda48783e3bda12b336852414d18ea53b51b9f80664a327158bc204033efcf013d9dd33be97bdb311d812493265d465a6bad559e0e8d551ac484a4c8fe1ac43436d32825558912259a0f3575b140e992ae997faea392a937927d0a2fa1f913cdcc2fb99f61d50c7a657d34733b4ceae82828be329484fd038db5680cfe97a08fc84d052fcd443dcfe95318877b69b2bf5f24fb8bfaec212e724afd49b5c23657d54ff38f955d55a7aeaafff48f85baaafeec1f4b7b1642f99acde56033aa9ad50a2cacb00deafbe2a0044b119a476125a7a7c14ab2bf18aa61a58f74512b5a40afa058d019d0580bb12dea850f3ef8d0add7ad7693d66ac1bc8477e3f7e95823bff1a74064ff9997435b6fe56f97f074649477e32f5d7e61d664940793e1b19d799a3c0b0bf7584ccf838576dc8b53c27691977839f1b92aaf85d8a106e2134bf68f70db29bde6cfdb4ddaeb3c34dfb3fc6ecbdd844d3bf47062893443ee37d1d07feacfb6dca7fb58d97dac6ea26996c7ffcc4c2e292e218c10c249114e9e10f1a4c7a74910516c678de8d0d725507f8254fe813aa71f59e01441b886b0a9a76ff4a2d4da5fad6250c2121e17c40b52b251783aa7b76fb8260c8acd34219c48d784f5d899b7f9d691eb85f169bd5c309ffefa0ad3d5aea2debfc6604e89862e31707943291a6a96ec4e9e3cb14f7a7ea613abf54099534c216c575f4dc4a8837a4d4869d298d3cea6ba188c2eaab4fa719405e1725997104158d267423869626d78a6a7df4dd89c512b3979e2025bfa273d3c56fbd80365026181b2ef266c56019a5464ffee5f4e89fe0c371a89445fd9a50bf6923ea48762a144992db0f307cde594f3c78a214e955429122e09ee0a1732b294b2319452420861536aadeb4d3935f886409aa5692cdb76b835a48b56f16efcb3c8ae458cec4f631209e9443e9151a41112483a1165beb24f1ad33100dda20ab365816816acead77e7e64c3be61359f2306387df6a57fa78b85a449e1c5e59591b596f222a534f5b2bb6577c3212aa5d01f02e51bef718fe3be4b711f7fcea9c13935eebee9029dde82813aa7d3953df086744b179691b3dbd6c88281f574e5ddf85741b3c8ae25fb53019b4f4ca029c5e4626241840f174fc8b08cfc8c80559054783d84706208218ef14bc0244b0d6a72ca8955734a2d464dba667301430aaf57c6b3f48854f69754b06e58f960b4e146ee3c5bef4b06a38d2167f5c33c8990bbbb1da80c3f06be9c971373b4873bf4931e7ef7194a1789d44fd264496295943456a224128984b3973df07fe08d9beecb142f608b2f248a278c0d7bc4830c6ba30a17d48a9e31472b0a43e6c69d4c6ef9be20aa616806a11fa52884932958274fa4d0d38695df3f1b480f9430566a4e9e44c1d6efdf7938443d50e881f204281336c484cd1f36aa4c12473fc73475dea3553c219116d130281743447182353d7d2e8a4f136c7ced4b3e4430c11251c45111462c418a129c28c51cad6251a9a8405992e2ccdd23f7d3d58f189ef4d0188dd12c49b01376455d42d3c96a12158b5a25fee97ba080b128ae348397f35e9549c5bce2e9644f7a21b49b5c4c29b27f2482320412ec890494bdf6b38b7942d1427c882847b0da475229f76bd92df9c8fd91ab3c723fd7c96eb34e28d4e924d58032c410518c10c5c7c8fa1051044b44116b146104ea6d0a75ca2411ac1152be4839420d9b3d64691f8f28c0a9bee0ea74bb7a33842961f671f5256529578062458ad0907ca22121959214f158b6f4fddaaafa16d6e88807b929e04fbf846067dee63b8e234aa14e25dbddbe83f7c4892cb718822bcf41a6613b1aeb382e740b984304737a8b94f26bb8ee9aa0231b38a182eca1c4c413069fd0be6d6652289b1999d4afb69fa0292cc4aa1be04f88559449969aa6f9c095fb644dd360d358e787a82970f5d2b4f672840cf1ab63195eb8842ac246308d18caf127c2b4fbc218434b865795bb3bf6256bb8e362af561488f042853e52894c4ecd1ab5100d4bd7143883603bee71434e87b23fee6876b1682f2f12f9484a1f5fba264cbab8293f3909cd5692d8fc1a48c741319fc8fecd35115d644104588bd5d557a6ad1c2f4d96dcd7b38962d50262b8e4fe182eb9b12afe7b7534e546182f68642e2f310508b6ab0d1cd10b92a4331198e1c76ca6d2ac128337dcd18a3b8af1e3ee57b85bf5c04a34ac9c329378d48a6ef9031a7986d59e46fac0c27f66e4242d1fde99fb888f0cb705c8233e7292d277d6ee2c611bb223cf8cac1df191359c047e438cfd8a95d9153bb9291c8c7bc19524225f8badc8135b3947fb55e9dfe3c0f084444929b6461243ad8174150a2bd97160f60815d6a56763ae7295abdc6bcb84516a6d2a55ea1ed87e0dd3185c69ef9da635edd23ba5dccb6f4a970ac1552c0b8d35a442259b6d07c2d70b8d2bcc078d9c15d193e7b53cb0f25f66ea98e42359182d082a5d9a0cefcc6fb381941bcb1dd826b20c813033eccb31f6b7e71ec7b372c859ca2149f172342a5e4ebce2e55099096b20fe2d84f480b496fb73e00eaeb8cd9a6a20e2e2c4cd9c13ef61a0ecafc1ec9136be48627e41fafda795a763866ded495ffad49f6a1273964835cf6389293a9832ab94a00bc19e1e15042aac2c654f2cfd92e949af6597e28e496f44e66bf7e51378ee5290937806b201b2c1ae6765750abc51f59f814db8e362dd4dc28e0610618e702b23914fd761df127a381508f3254f159985569e1a4e95f7890104987cba3dc4a395dfd600edfd0b5c7901c3bd4ce997b9b1837123b8f2ff6c94c5d9808189267c0ddb841344b05ccc6f9c80a561bb2a3f771336616fe5ef250ef6c30911e5ce5dad6208f964ff5a6b0e2c15ca12d3b823b88a5fd88ec6fad568b3ed405986adb029aff91e04b9188490070b8c71353c3938da89724b8cd1f030219fae735b1e0eb4a20a3b5f860a6f0a89dcf789e1829e7cba3e44a4354ca4b1a3a1cdd0858ac6c59ac1653e9412d75743f89339ae2a91fdb78d08491659ede7cb87d8b738110eacff64a2b3c93c563f5e101df93dce0b32df0e3d20fe6f882c6f4c9e4eb0a2aac8e9b3cf4ecf84c5bd5e1052e660a71c502fc9b0a707723d0bf5dacbefb817511398c8f29ef2d4c6f8612377367a3db828ccf9173e041f4a386fad2fb9c5c2ef86980af5a5b1316cf62d6f90dd5337e144ad826d79031964e8974106ae27fbcbb0b51bd91ed18073713ed99f73bd14c312c9306ce94b36b0da4b30acaa1f622431ab1a5312b66cc82fece942188e1c644d47668b4cbf37229e29f6c2caefac11b5a9f944ebcce0ef7c64dfe1dc4d582aa505ca5a1105ee9c5ef9e8c296704785c82e807abadeb25ff2dbfa6d8bc5635bac26cfc2a26a39b11d822b27820268d98eb6a28fc98d1b346c83f0516522bfad0132c74b69284b7edb032456b98f149f980dba3baac57696867abab0af0e23c4e0628afc361c460fc775b66d07feb35276c318638c317e849193524ad9ab1e7c512a0cd277958ba034a844edd734410a15a28100000001006315000018100a0785c21189220982f60114000f627e4a74583c1347235192e3280aa22008630c31860000905144112a1a33000c77a998356ce891dc2c2a1f84beac78091b2d99fb03a1ad5bd139b87c36901ec875f2111c649490e30763a2d85f8c976dc92389f510867bb7d944e1d9585e32a1f06b238c5167fff492860e54f086840ed5418eab428465386e4170591ad0eeb271ba597a9dbe0314fcb691aa628a273a0bb8e970332ea12750049ed16d29705e88f35d80b20732ef1b917eb96270e1530db301614f4a827b5c0432163bdf761cd199cdbe949fe0a046064a215a45c89a0b7dbee168efe17d2906d9169a6e390c89b033661499c0fe2c10a5fc7b71c8faf662a2d4cc8561aa242b0fdf42e2f17703b32e2449fca3112df31ba76180e090ced0de7eeb4cc784bbce77a9636488850cd040c68cb32aaeadd8e431e193dc4286d07f62042f1668d54cceddddc4e2c8606e13bc2852d13dda43251828b8850c6118a4b8c552f80ddbd69913042b898742fc757702628f2b6a7d1d9cf06384edd7be458d17680e63120c057499d5ed0e3df0a3e90d15c893d5b6ec95b8c4c2da3a200176cbacebd4115775933597f042737735a34b63fba1e7bd7237ea32f4bd28c6c9970caaf005dd14ec6d741dfd3af902ea8246378ac4a29b6e87b9d5638108beeb6f13b39a9341adc35ca958fa944d90d56b245c29baf307039b1c61778bab39d63e8d732ccfd062ecb666f83c550ee224496e2056b9f92a4fc966ee5e862e3e40ef666e284d57cbbfe20e2ce83e60a5702264d4cf01ece77a33e945f6e006ffcda4577207b72c6fe62e8902fe32144fe6f77c5447d69ba9d5ac9190404f0daef03a739162e9f40a99ebf644295b034d19d041d51553406c98fa2ae7f06b8a28cdd687ed80a68eeeb0541ecfa528c8cea63e86df473a9b5a377d2d89a6ded9d67f5638b9cb406a978b27eb966ab463ae19b4bf2de19610392480ee85f01b711092e29e651f3b542b2831155b1a9041bf301fe3580803e4d36297406274afd34d46097e80bb6b2d2e8b0cb084f1c00498f8571aeb3c935defc306623509b20e4c9a2b3480403a1a7143ec969a84bcacbfe80c01e69681e8fe409d26edf2fc1ac632ce583d34a46092b5e00af6f58a154dfb155051c28bd060cd5de266080599625402bb791806823c252af4c6cb6434bb79aa004f91e92fd78d65a21bdee506c87233651cda40d8fbd70cb553490d9d4726f592f56e52f5fe62f99a9d0525c96fadf60ee8f828a8052db6c593cd0b0164a6feb26efd7dab3173eabbacc94c2f2f97208984c32bf97651e0fbf0661b7487e6113953b6131d8637410cd85471989421e27ca54a0a1cedb0ca7b02a99fcb74d7d613aea36a298b51198ed97d0d33f5f474d043f1655032974c1acbd9cf8e16a0cc08aef66f4d6b82c9586dc3da5a0cc18324fa0e0cd0982238aba04f54e500505b0600acd67fba648c8b0c710cd95726ced80a6fa4bb13e893da91b6256d50909d68333900f670d68e7f235da15a4e8c8cac091d5b0e3185c52f11f3e26db6f316395628d8de7050b2970b6710f185770fc8a776ecfb5f9d4d045a86ac8ffd988c3faf53046628f94b0670ed997d71f971c2604d308998624126d18a7a1b32096ec1afab09f3d92472c9083d789ec298b26b8d0f58d3956133bcdd7422149afa115b604fc5ae4121e7145231aa3d9ccc6bbfa194277d1868194aaa908866d0ea80f1185f26ea4093f17f64d0b5c17c34461e79de7582c0f513877aa4e1cdd0c7ee08df105030233226c736b09381812a3d5fd378191af5bc1dfdbcc1a73b8028ecd498082af16ad8f058783c78c585ed454153b1bf05af484764f86ac3d97b6d70023d6361ad6703fb4e33dd07c7fe1755c5d8bd1a8333122c252b9a8030e6f44a9de8d64044a2f44d61dad1f597f20654b4378f9781f8db7aa5593cf0e95dc1cbb2dd14d191233d2fda07332301caffaf66c81bb35c9cb7396321819b1803d3fb88fcc5669e724b6b0119aeec1bb9017cec9bfa2dc090b2cb7691b9dc67a12ce1b705f4f3aa8e76c0737d74d13fb1cc74e8b98e0efa8c0ee3dcceb004f4e5123a6aa504501f25c04cbe1d60b02897125a322f05fa8032606deafb7bb2e27ed2a3cf9457addafee6900111bd6a59b3e2e4289218090daf3e5ca13c6b21a9f78a85521882604504ef96de3d0c3a414122b33774f09b2433960bdb2408c4066c7b9cb6e840b8874d8ee512faa09390d9afd14bc5c52c74cd9d43493d4193691a72267b5938186559c78e2f50c2e4f1db941ca96ff17b7041381d5a6b5bc261bc011adce19a962f1ea22434ab907fd82da7a8ba543cf8694cca19d8e89aae28063e81179bd10c28344fb7344aca317dd46b92529393d835f05e921726f834562ed4efb84da9f6f80063f6ee8417cb3a6a31e0d7373069537527ae900156efb5d4409276ff31b5f4deca2b8113ae39fcf11641909adefbafc1010aff56987f9de68f72d7ea6517680aaf7a62a3d7fb0fd18ad55ff929e45e8dacb28c74af29725403e18c8bd9bb184af9bcb5346934ae9b94b7e96052e626735f3e0e3b464e444ffd4bee74100b4f49f87753e708ba9ed1b522b9d194764f161d91267077361e4102d5b49c8f9817dab4e1cd8d8847e9230fb5a40bdb88634de6f1df583ab2e78dc178bf1bd803cc08f726f4af14daae8c37cb7aba8037a047c901182b5f9f0e20cf2f88bf0c01610381c6a65e828a52849e2d1ab72e0bae98013e00dd869bdcc9407dac30c67fb40a4692c28d2e73137a68743335a507c498a24e0ee38450c36238b8997994495f947ada8af5cc444ebea65e91baa3640ba15cab4f8169b11ef4f91caa505ee58615b472ad6397dd832861dc91b52c7d41cb15039ae436adb20c6e9cd74d73fa8d1a071a7999db0a50c2a9e54004baae1a00d5e88895eaff77092b18d2fbe6c4b9558206645df5373ccb91710207533d781c931461fb85f9a211d033b46d4ec4149f52d8316dbc6d334edee94547d66e865504fa44974834e1a249ce1f2b1f53bbe912ac705b8078ed1f36bffb19d5a21e4f0193ad043cae6c8889f4b976b4c41091720ed91280c615d13ec62cc6afa6f5393373afedc044e69cca46ce937e4709777a41ef324c3e94ca33617e8bb1b1bd91a3c117f772585330ff8d51494382aca9960c4691e17feb01d87db3f9ec7e80f5722078304f00cdafe580a6699bd12f39a146dcf0f637d4e7a2ea2381dd60d4c411f86cf26aa938304ccf92edf03c6c84b70852f29aab398398a22fb917b616308c778cc0f161e413dd98d1122d3c3a66b96daf32781cbaebb8214d1418b715ae56ff3a6f794dce31cae1cbb263bacab5f0b0033ae026f62f3cf45db61538801ddca936317f18ba7b6bae79b18e692643437cd1cfb4210909215ffd3181b842684e3eec8a03209977a7923ae0217fe259806c589c97c1a57e5b4fcc83c59d92449e2e1bb5efbb86b7261312ec5710647405b1001c7e296a7c5c5d66651e49f466852b39932a11100ce5af8bc1f80338328bc44ceef84627d5fbff632fa7490c5d73e129f9d80865d2018ac0da69872c04aee5b5acb67ea77a9904753cf5b0b4145323cf72e4b1a30c4385e4924fc9834a02d647cda3d2ac3e61a5f6176a08fff5d5e780885f0bb248ea77c7442187066a35f4fa599255a7b9c0dfbeb16d40e126f234f23396da841fff6c3eeb865929d814b910c4240a49fe08b7b475e2c8b8803e338efe8b69ef82015c19a6dea89f020065072cc7be81412d699c835020d6dbed8a3f0f68e03c44adf8a69d5cc248aa881392685e63458f225d30e1d379772ccef6950e318bebd25b1c708c472abf54df21f53c86fa5b252e8c064bcd218b432d2989e1c78984b28cefacac87a4ce66c7a196a78e2ed67d26e54752680728ade1a08157820f602ef7d9910fd83934251d39c50735ccfdefdbf11b5014a8e1feca92e8cd9d8103cda6f1471ba6ae73401985b1915cefebab2a95504af5123aff08fad1976c5f26d1940482af59d41afdd9045a32d59ab6f2d27081f8c49e5d9267f09b5e9cb702320768d6b017c0fc2bc1c0ceb57648c04d52646d89dcd00979bf9a71b554531077b34c9c774d187132027db45dc4c56e04a18584e169835ad569b82ba1cfc0c19d4d6bb4e1d22efe2b40a1538d6f4133323fe5930a7a93055413716b8dddcd9870696ea60d3b1ceda5a308b01a4b17e68ad6c1728a5a6b8b762ada372e7683e120017b7d1e2868092f2d5921dd818dc557aad4631cb5ae1587072701dbf45424b973b5690d1c534dc95df97df82f402489ad142d3e138dd65e1b65c548a3e637f3ff2267caeeef736d3f1ff1fe2e6c7bb0bca85826bb4bd5b2a38e1b6552285f2c270f6a85bab318d8d513832aed2967e9d41cd6df94419961bf86b41bbd8a4393c3e3ab90230f2c6cf19cf26f1c9511f145dcb7f02b46fa171bf60c54892470559a6b7f92b51a359fcaf9b737c33b17d18c5d5d8498eae50550eb59ed867525865aa7115b18709f9be7a4656e72abb0b4fa86786aaf3d8feedc08afa8b74a4d37cf927baffd1fb2b5265214a7967a83c60c11551f19646a80861ffae28833c18c6e0317282c567249eae5c3a128fce3daffc81942436536c3c32261685672a2ccd3b7214be6952050fadd07cb0296b8fe8fd8c14c16b7434fb1b5a788b602c4bbfa141138fff1f2d19f0ab27ae732725159b5e93f1a99aa257d7f6951cfeb67394f810a58f5a7b1d72d5068be1a461c629a3cb419e3e5f7ae7d0e9d8d09bc3b6eeddb2fc6970f7210d858b42a50cd885527156159344d0d55fef4ccfe76c5ca11833dfa4f47e91b235a509b7ee97721582d23bbd3e269fcf83c0901144a5b8a176b64b16b098719633f26d6432c9844bd715db8daa89b7c0ea2244edd05da1493371942104d9c6e9728b22af71b998bcb4dc597d0982ca4be3cfe3df6446b68621bc71074d66e900cb751bf03857c5efdc92033a8ad4a2f08a2636fb3d19134ca1ff10e5d29443a6ad89d1971f033db1f70355739cadbd5e69443df53ea3129762b06b6a6679421d374eb7f6742dc3859088f32718ddfd56a8fc527dd76da470a8929c5a38ba1a6d91135a17ec85c1997978c8f04ef793e504e4d09afcbf684f64f1b7ff90e436ef008fe4b10970d8761b0cb31563640c4943b9992b152f9bea51914a11d331338df0d2392dda10eae36ce4bee2fa54c63aa1de21faab5dce6f9a580f1edc5aab441511aabac0926d47800b26f0f01677b6aad678264b231f34c0b966b449c44e855a0ad15bbb5df649258d622d8412a5bdb7dc9bc6012551e49f434e75ccf607746937955586499522e3d863c1f2dcc7773c93283392e92fe8643a654daeb0329322ac7a3c4fea9dde3475abd764a98535e6101483f565cd357011789b6a64df4f4b83eb52cee8480daf3576a4b4a9cbf715771e94736822cf64b0e79159ab40a514fd5913d5ac5d28151a56df6e2dedf13371155dc35c64e8bdc9be896c845d14a1080938265660cd309412931dec90ffc1a32b7f3c4be9104ef448b3cc974aba6404bc10242adc558c58a0c1af56dfeb845eacde850e96e7bf73885663a76e2ef2ae7792db83043adc0df22e7ec353cade0ba45f542d4932af32f66f7c0df447cc224a561ba2e4901711602b91fc97c76d44bee92df9db6ef1fac0a7d3b3bfb3e0120049d27ec1db256e2d001a56f9ff0c376f087de4adfa2952dae359127b699c1e1860d20e383ff3f3eb855bc790a795b8d29ef17c7c4ff60a03b862a23c1864c540849f47b0fd9ec8a1428acaf5031f3c480235065646f9e0de007c0af851062c1b268de6df09444352bc56fa35c522472b1ce424f917cba6e69193dd318218df8b3b5c5c10c1ddd8045adbe8430592dc561bc9a5e4d925ddfde2fa053095a1a4b2951eddee8b3b895e768cc19b70cd73fc91eddd2a0c44136a024397671e87602157471dc800d2ae1b10c080787d7a33e59901496b77f0cdfeb37d04b9d34842b2669aca7d014bb07140e1e91c80b0dbedbda331e1086ce94ac55411c57aedbc01a94058262a26689eebdcd5fe936d7851f21c6ffa8f6a007df72c73b0199e4a209c7b7f63ed02924fdb60605bef9cbd44c7906a691256cb07f01d5e4e2ddfeeb73f6484f32c7243e28956831762d928d115513686135abd0a2a52e879213bbd44c9b264b430efa9c0a150a88b725627eb0a258f7c601226049e361b541c80eda4b1f167a0cb588e6abd68f131b05633b83e5dfe5cd7b5b02b56f501b1e06fbeb80f5a5e8f4449fe4317845fd24d0733b37669604329f9c1bf3cfc5668d97dccc59f6ab1609899f55046ac73febb2b2306bc41a1ab741ee0b3c21499fc5ab962bea045b5b475e0aced232dbedf8f2900c0ec6f82b80164f606d51abfc12c79bc642dead8359c6ea21da47c89075ce08783b188189268b25a4b6c36d3e9440e545e03e7864410ddb031525603adf5609f3b7cfc9ba35dbd36d88576762c32b52d581d78f43770c43ee6123318aaf0ec3183c03884b1d0870c50a32fd14a6d3201713f04b28095b4277ce1a4edadb5719c5222cbe48b7f496a5f597b42670b0e2f13993f4bfd19038d8f4983ef068bdb570e5f7654ee07055c562f328e03c653ae58ca529ea6e6307d6e22e04fdaeb00348d81a2833f1f3e0f4feedd5cbf2de5107a73c11925a12de9f446c1af9a8f18e7af12f010943926e7fbc22dfe4dbfe25cc8be1fe4dfeba17b8a37fbe6d4e3385ca32c49c7a363bdc5d7e252a58c45bc88db8470b1fd435ceb2652d210645b10e237f5c4c454a98531fe218ee9ef1555ae130baf4da109200d8f6b1e5031229aa6495314664a077f530167d2238beff2813da1efa6864c5bd3e606df7c78f3c79a346fa546f305249ce427b24aecdd7058334df1f5cf4dc476821bf696d073f08802d26f44d490330f7ae3989f83abfea400383e4a2435e10d5d609c8fbd54cf7d907f5c0c018d5209f1f9864945f1fa42a0f47208d1d9c62838c626ddd40e62204a4d5ffa9a304e903afc5f30866acccfc0202c4c79738fd5b7cf1c9c6f384e87a28316e01000be816da798721530a6dc0a7c91e20da85f2b85c7b7e21a41ed40dacccbd84f44769455673107eebdaba02a1369fae97679f332ddd466a9f8c39036d53fc55b635f8eea2d661fdde46b6a6534a8929f187cf5aa08cf89702200eadb24483aae5014b9394249e3e530546747cbe3979788498a687f02495ba6c117e62a075926e23095844984ef1810af1213019a8ce68645329f6be249e7769a2f4f84a1b0c24097d665ec0f95f80bfe4ea556f7c5c094df287661a6076e28352c861142443b74693c70f5380167176ac7e7a3eaa57580debfa734311434aeb203a6ada2acd435796150b0d31fc75626637c47a55c8987a09b69f8f7cf6bd8a5047c3a16605b1e2d6d260a97fb7abcabd025543244ebdf969440e5c1ca2cc1d2287bb753e652ae14668999268aadf0d5769a7d8261424d5c4f55b54f68aacb5db5ad179436f9294a063a4745992be75d3d04beaa22c9ead862248deabfb7f216cc5286cbbe8895584068f0b74d6b4242cc583b3033463f802004eba972d8496b00cc6e90df860d1d98503d23ca96154a10756bb4db02a01b2d42285a5e382e083bc23152a72dc475bf17a7b870a7028f00000eecaafc0948b0b0d00e8801a3c6b61e419300bf783e2bed9c130fde1559b3365c69412ffd5febc4f3b5182900cd9bb981303786043f09240e2fa4d0ec24a45001a5d07ad020587d5d87928ee5721169acb0eb685fd8c71309d881d9331336311cdbabc3c079e4c5ff8d3e9bb1e1b215201c335f2a1e724e258f431c466c5e57d917fdebc0e052fb80de4e0f920d9f1e6d3ef1579f0de19b9969a18c809a17bc6f9672777e77e2847b2ca79881f0ef738b6c069a61d2901335758f9808a9d38f46e37f4133c95d54cc66e3ccf954b8aa9206dc143c7a7806bd3e20cb760929a0eaf7ffbf7468217e17884e4fc5fc0a18c7b818a5a25a2df978e3526d73088453e85d5e6ccb409ba45e72a72848e1c6bd8e3beea4093058e9164e2a07de3abf7d4a9cad21d9845aa5b360e84a2c931503e75279d0c0703aa0a7618709b62f27e2db123b68146e6850ffd0e270a6edc632db3ec7fe391bfb7acf9fa9f1262e98eccb0f1f24a60576a15df9035ece37ff2266e55df66421df5c6ccbee1e771cf79036a0df110504ac331f01971ccaf92a039fd8ac90bbc813c1078f3757b5766893cb71118858241012c2be4ed67b96f5ff89850b14bb7315ca25d40c1dd4fd76d8d168acf2324fbf12e3129c11c8697d71b0453620fb970099a811a18ccafddca898f2cdb9bd09b04d809169b7623e5925bd3d56928957c15186e4f1a10273d0292c6b28af19e6c9090881e7d6b4023668281e8a424e2634d7a918585ef7d70dc351133794dfa4cd825c9cbd43cc86c0ae2813f1457d23618c84e9d5b09e95317c5b0a9b9a745bcfb05110a5378a95d20df4afaf6f53f90b51079853f3f44bc40fa21c6593af3bf02f884ff4a6a8412a7916acf8b0d13b9964033c075bf8012f514698807ae92b8d0f389a632910496c1973c2c27091cc1a6054bdaf69a0af7088a5f1a4e93a827959c1ac647e2db9f4eda08821c5221ead05274c882071c676138cf96e56940171cb6e7d8cb73f69a161527b6e62f5565634d757330906728ec5c2cfd5d821d0fe4fb1a054730024ab6634f5af50ca865a4b384fd0df525041274638b34d6eab39ff4d86bb7e4fb29da6ffc8a5928bbdf239d2d15b0bb2f85187656a94afc170531d673975f1b6c796724b9c7a8fa01301f57275c640285da41d7d9c2c6d8e8698a3f3fc58ba810002aec3f4e8816e9fcdf00860c42003a640ce29d7753c8d10ea09d9e4f13062325fe53b9c5108d13807a879fffa0b1c3b44aadb23ee0dfe7afc59ca331a00d42287fc8084150f1f090dd88a3d177c51a7288ffa18db9df512ea04cb9058854c494886938c915a0e54e31c7d1ebccde87ea79bb6f7fbd94051efa9d35c607290c651a9c654d157f3604732efcc55c8f5f92eb4df3db6f098c1017381d9963f4414bcf954164833c3a953195f8479c37c8f3f3d1cec18adf3ee0ed31c4e3810ea3606f1d9cbad108bd821848e4d672732081e7515f2245727f3bc4a20e78e06a8d999ed9ab78c029f28b74e6f481f436c6c0043f5b993ecea8696f7a37cf80175a8417e783166e2f6f6f5e3068325ebe7d9570d99bcfa7577e3a967bc731cc0097a762a4c94474494d6917146f7feb4d3bbce8dc6643689b93339bf36cd6cdf0909b91451270562da3f3fdcce2261fd3ec364a1536361cfc5071dadd71dd6a903183c0167969933b109f4988d5d2a727495cd744487de9699025afd60cbeba9cb44813af320d5b595a9aa4a9eb0755202b500dba4dee67a58071e9171e3bdeadadf9d0cabb4c4f3dd6ffe9586a9487c9c7def5b3defff37aaf61f4b517b3af00bf6531324c9b7bb4f2de480f4a0a5d7b8a206b025d5c4a7aa48c8a6536bc60a9340966576f0ea1586a3a49e9579b81aa2e6b3ac2e9554cc0962e976662e25a66a116593a6282eadd6ad098832c5c2eed64e660f3d2df7043e334deab55a195564dda822494678cc4b31ef6ac00dbcd2de45ffc04f62bb583c99f9436fa38b43a2bd37453429ffe2acc642b043446cbd48dbe28b00024c4313431c3ed5082d9ebcc86962ca7d3758929795dad495320816bd209f4c04d66021ba026cc8607880993100333f13984804c381316f026ce40e900bf7b30829d67a42dd2261266b833fc7960a4ac4f6058999c64c388b0e60f12f379c49d35d01f6ed60fe4be5295f9709ab7d45ae799b644ea9f0e901da54e8a029ad597fe8b46f4c823c30c0fa90306d4971ec7b4d8eb243dac15ef7dc0aa7c800945673b29b139a719ef50c043d1142faeae483e3a96e6b1e472481bd9d1d6f4866e372b3caffa8a7fcc830baf366ca3dc3490e182d5d7c2f004a2f955444424b92389e9bea6f203097db2bdc580b6f30cb013ae42212316ae3c0e8193e141afc759d5ea79b54cd36334079faade980e4aef5093a1af1cebb3082451ac2119e33b06158bf4922b6d6406a52612e3f2bb8e3bbf21efd7802b24273c48d43f43de74b7b1deba7f5a4eebf2cec75b8d00ceb7b0863cebb1fff9c57e274e87152b73eaae4e66370db60fa275283177758ac74fc57f8a188303b81b3f7eda58641d194c8ab2b8c470e4954947c3bb0489b7e5cb80caf5f1ecd9b898c60b2e2abf9ecd4b2cda84c45f6122ac52790048942aa9fa9e0625bec46e9889931636bc4af03b7733f935e3df58364cbaa67af5a512a3ec32db7d008120288e9f402d7335b4c104d4671371793a84b7f280dbbff0803a6e983f46da0037d9c7bc5b91bf19ee52a386196dac822d9788147753ef830fd20af03f15891fd5430bd1557056a154b78e736c747a22a329d4bb9d629b556e0491a88e30428a3a281bb33fd550003dad778b222a01b64db9d04897cb8f61d4f482f37a346c424083588abcf9a8d18db48443f0cad9bae6e39476f1e7c704da8da427c07733dde7fcd7546041d9f60f704c3f1eb3a5fcef233d1bea6133533a4913fa908823cb4d033b9afe54fedd825f64c1dfef94f493680a178501aec26974fc680ac975a6ac30ba879fac67e249fcd194fb11d101c6744f04b36c62f027599f6a78d07a481c39c46b867f26f86984e0e14938ae5dc1bdd62ba2006a90c41a9fb2ba807126bcf10756ec7a6b9bd46bc6b723cd322779bc898b9eb5f609657da39f85a7abfaa9183f222ab331318b01893bdb993d05dd6aba1df75dea9c30179cab9db405ed3224e68a8ce7cec5cc9c13c038c518037451f71ea048554509220a6371916ce03cfb4a78e330e823f402e0471d15d60f7f08a770a67252354043ff218219afce78d2745390d2863b538cf18217dab0ea7384bd70e43795dc20c62849abd38cc2c4b48c7bd6adb670ae367812817b1af8ac54b842ab26914a4d89435dd2ca0ce2303e171e6c311338ce4f8858645fbc3a3680d344a5593cdaf6937c356368439ba828fd879571d126cb60767dbe55ae54924a59a48362203ac58811d46f185e632989c0849b3c63619407de9eb3b95869eed87d3d6c76c7f2345c9324b8f0f9c7884323c73ee98674be39b9605fc05046a759d7bd06a701134a916d48d36aa794d9ecfd28c95994982b3355eb6333fbcdeb86a8c4919189e07c3936e50c3a29dd3fc6b64cb30c13642cba7f377b2395d17918efcabbbbbd53c494ed42eefa92693145a938c844317e838e5539ef2a2bde5643615c6629d1cceef1b2ffb98540caf3fa2a73a45d5411a1bc3380d0bd08dc5325af32c1316793224550f4eac5d1d08e0c2c1577a289b0f90bebce0d428b54109e0fdefce5b975571de35c2308995f17304b9dc2c8a424e7417156fb70e5da1d6541fd37a5e34ef4a6b5aa0365dc45d0321208e748b1d9a4333052cc9b942cb0243a489c3ee23076b01b5a3d065364694434a1338925333b2cf6feed60589f04b1132a738acbe985753df15cd7c2dc85b113235d849a93b0abbbd1c40e14aa604f189e997a6bce65b43ce39b143490cd7a8bac62933890fe2b158395a64e8f628c499b0329005da2fbe129340b2940ed92858c0108441a008801b5c2eb5685976f9892e3c7c6a9aa127d3ab5588982fe8be67eebbb15ebe73ed1adeef45e5667738e5d114987340628ce17a05a280da241de643bf3380ed2fb66f23ae14cf844614cfeb1a1087d7b69967f76efe50246630a18fdf8c2e53f403e4c380a051eb83920acd68023df52f022fcc21a042e291925902381e36bd99169803015804947b88b77f9c30f9a648a765a957679ac214af9a3f18efa658cb962f7782e0fedf7a55e5aa3d2e6dbc9fea2e8cd5747d9bfbfb838648e365094b88933137e64c3e4ac7784c2497735482fc3b601976fc4b4f98236e2cda30dc0eb06616d21b9b03b52ec5285a9a1163cb6539a556d503a2b41921847f550db2fb6cb7beb57a710cba35a3a3adb0c7d061782e085cb4edf7ca1812a9d0ced2ab5b33be4e5d5808b7a08beaa2eab06a9c14f382d1a844bd9f00860285292b1e9031e7809259fd8791cd32f7f76cc932e124808a63ce5912c91fca85a3abc8d29869280635ac198058f84a872646ce804cea016de8cb6dab65be480026c8949fa09bce1c13c8c2f5e0676aec148b89ec337fb6b07d6a3169eec34412fd05b099a8019b71292690716894563127f3f61ccc4742a8b87cdb3fc0e40fd875b08404e70d4149cc96c8273c6d53c1c3c129832f7e82e6afb6199b9aed561d5b5669eb919302fa21b19fb6e2cbcb22382e1a2a890dc248430fd7f1519a65c3eae2bf29b8e85680be17eacfc84add4e32a432d0e54e7cfea929831f5cc9e40faae76c162b795e4143e883a97c7bae22391f66127c3da0e4dcf449430267fef9c1dc3b564088407115b104aad728f4fed1584484c8b55377865ad27b77d7cdea61f3ee2b600915b18740f1c60f499df7d42438240cff43c74d335d3ffbe5db9790f4b5db0eba1ff7cd47605bdb95dab5a5203bf2e53f3ee0d01f81573e86e8cc490d6b7b9ad16f474b3e7ee2b5f28a909317c59f2db04fe1dc4e9da8c0d4822fbb48d99e6e28fd22bb844c43a03e1a6e3fcf636efefc78ea07ea5eb4109d807db8247fb2d18c1ae19ccfa76a4e7489f5924f4437c3edcdbe37860383e2cc4a9b5f621a138e4afda540671823997b0cc908b5184223e2c24c848e1f35f5dcbd06c111425a617ad64b1b7bc9dfafcb2567df1e3a18e9a9b2d8b94b0b1b898993480590b03a83f01bf580b0c763c3107dc12c0a97dc6ab2d606822e447b3b11464d452410dd536033a917de7cf2abf6a2c8ed7b6110c90a7784d55eeae4962598aebc243dd3ba1cad5e6a99baafb2d76ad47528dcd0d60dfd835ded21b3b2dce0d52875a4c5e7a2a13d4977dd81f0f638199b77c99425c166eb511be16b81401c13ba6077b2e7a0d4cb51768e8d8943bde7f4bea8b466001f82fa11164a8d61bdabbd057d4ce4fecd3a36dc8b477950f8004afef25e2c17bccb8eb2ef7ff43897cc9ccf78fe62472bf3f5770d44ebd9258aca343d4aad2dbfb4ae37c9a827165d98adab57063d84b622bdd872cdeb87872a55f1e3f56afed48950c40c97a1a31b6d6cb0e127fb8c596e5f06259ff74b332875a420d1bf867ba8db329b405e436497b8bd8dd4a85ae004583efe90ee05f70fe4eb9e9daaefb92f856a9655a7684125e77c9b649f8d81c05239404301b424af05a382eed184b5cfcd6c157b2fe1a398ae1ff39e21c462a0db3dcd607c34f9569bcd635dcf082ed3831eeb13872905d99088d68145242a0078a24c545d3110a395f64f39cdfa0af169c6f4ac0cedb1d44d8deb572b7d20b3b9f6f0bbe795fd6ed058212161da4c9406d47773683a5c17520d33b3a88ea9cb8fc8af00471d0394a9a1c1d34c3c3b6d00fe15ae5eb8012bb7386551004efe6cf3870707f0eeae5f80dae18eff0b762afec8f17ec124c5c9904f5ebfa741c698238a0be38fd730738452c8d1df49efc8b0e2a13037b784a4d7f7278398f295b06a002cf2d4149de869b850928c93f8c66d878ffeba58f970f9fdeefef69894bc2b03f38c07737cf21267781adcd1900b37e6866968112c02c69f0187bbea7c2b96a0f6f1469e4984cafba62662ff9ab157b9522cda11328eac286bc4e86511a3f791d8702f297cace5edee8214f23f67c4756144e5cae06571b89bcbe6aba1010f67e180ec04f239edb81117d3e9e7e2e76f0bd432ad7b313da715e5421cd08d9d6bfd3dedc002d55704517bffb6a94b7e6ba6f08630755be6860b59e2a6a240c9f95fdbcc225f9fe84ff5f79ead65c67583b65033e94c470240df9c3de15c3574544254f574506e7e7411e36f4bf6f3fee3e04d162037fe37f75ae35d65bae02b09e6665e983473c99433f6463bfe2535325ba0c720f7b4e25109f286c42c41c5f3f55ae2c7e5952be54cc3fde4d0904aaf0b80fa776d5a496d9c246373cd7b96959538ed1e58627f43a061ef6b0d25af86d99bdf0682e3b49c0e63a4ba946737907e6ff125b5a692f95e3b0a050de28f1da6ebe554f178d846a7a3fdf7b979f7b7d6f7599aef75cd7c402ec82ef0d9014443a47132a86541dc34c26f700a4fd6356204049edfa196f425a98263bc79772a8d4b7e677bc1428b7f92571fd9c740f454e2e9b5a5c091de0c79a40b52d30abcd83e849918b1880e5b6dbcf54798fe790e53a53a64880a9fbcd9b3f5f32638024b9d1b9c9e3df864440864b429b6414fdf86dad03d1e3d231fd7adcfa4a577e2cad9b5550adcd14466f5f8507bb46b153fe946136c69f79ba068d317c95ddcdc2a67cd670a648034dc9b4417a6e2667084f551fc89698bba42f5a437e1983b9688ea3ac55fca813e6ebd4e496c43fdeba690321e6e972e45566025db03a622377fd3074aa7df87cdfaac5097b0fe16292f4ee1bc9adaa67235b9dab1048140f7b7cf3ac8b072ee4795ab90c8bc9723095c40bd53540c65b43c216f6c52112aab61ed10c5f47c2bae6ba941285a89eadb20b750e33a350bfbe6ed22dc7daa0d1baac9e91297c2f96fa4abfced309a8599ced250f94829676ba8620fcf84bd7fb0abb88d690575909703263b361a85237b2450b025e962a823225daffbf1834ac33f209357dd7f232fc30545239c7aac6a03fb1b4ea98f88b59b3b40883f89b0eab5b959b728db1e68a562153dfbb0fb07f62f8d4dcd0252e425331f4bb3cb3870da92cd21591968efe5773033f777645d9ea1e7f9e27357da1d57386c6e3743ed246c5576b5bc66903443e21b5c1d7c89fd533b4769216b7b71e1f45c464134b6d01331451cf020aacb02d6a95ddb72f904ec009046feb3daa1c1b7a3e177adebe89ef74b7951a78ecd37527e89ff63c4b032dd4354abb2b0124f4f0508b72ad65c4c8d0ce86f818cee7aa0f0f30031bec9768694209cdc9f40f53b7a28ffa89456de35489f8f17f9136fe1a02d19f16418fd8158e2f957df5a8d110ea211f6360493071ff25f8f4cea8c9528a34dd7c181eea4f82105163c07dc9ee0753ecee18e84b62ca0a80c079bfb9824b9493b4663bb9e9196bd6f4fc9614cd4f47d1cc587a8e9c9a36cd81d2b38b41b136b8af055efc7d4b7167eeeb760bd2ee186ddff7e8e860bf4fbf25824e2c60a53a1c4cacfa4261164f62a16272130b3742189e33722dceeff800087bd443d4a7b4883be5323c38351cd14bf0023dbf9bc3fbd07203434bf342f0fdaedc81a563939915ae75e86c80c88a764fba2b251d6e26d748f6334c32ecf8cc4e463cfa66c9de05c872fb8d140109e789260d39663e30222162df9b92856f4f712cf88c05f7ddf345773231927be6ce3f80c22b5c0c092769aa357a9e8ca137ddc39b1b1038786a7c807391f739b6dc4a82493495dbbde49d1330ac2126490181c5774c39142951a79b1c566935311c55b1b8d91a8bbe8ddc99793e8b2a64ee4eeee700bac3924c0d65fb8379c9671c3f57cbc261bde74a1cd84ef72a14458cde858f1a8d5d3631e89831464edc72f63c7503b27d6cfb5d41a8d378935fe7ddedcc539a6b42f4e1a805ab2c1ea15eabb01c00c70872757fc39d324e6b80c4d32d04d575745c1f0e115a4e8ffe441489e369104fea2fcdcae677b7b780443ae33ce5f5ece7945225331591d37e91a49a863e5246549eb66e3ac1875a55adc139f17607321bcd9357d7bc2cbc157c5c4e04955a491b1cb20584a4f9e11287132b1f323d1f1c4417a146cf69c1363cd574bcc584b29d7d3371f007a5c09b918803746e6a173df49dc70ad2869c4ed0eb60fca2cd6cc735dc68e8092d5fb56cb1732d1c7209721aedeec1e8560053f2a08555899a09bdb47d1e46b64fee97af0bfb59d889953d32ca3b1205ea3c13806de9e60d4e601e01e26b24a5ece969dff2f332f637e5ec953ae0461fd2feeafad17e39c82f5cee47615f6f227fb2e8bc1c7ab000d092e53ebf920708f4e41229d190a1135449ef9002d6a678a5a67df838647b7562c2031d5fc5326cfb6b1d222df9e3646f19c7ef3260ae0a0041832c6f3d24b77a68a445138e1a9e04f92769e9100b983a28e2c75544cd56971254bd5c555cc122c8a9f977af1814a5249235b281fd6eee4f595ac0e9fb672d3e92a04159ab82f40f446eb2a41e000652cde0c8e8954013081e993ca31d1c620f2b1b940383a4b1c5bb8122de4efa07822107a61454c2e5cea30a8108fe7958f646ff4ba2baf265296993f5b5a1c890c685048dbe17fcb9679afab4a07f7e7c20188372a1f42e23e3db5d30cff8bb2e2ae96a2369f7a502c377d2a22a204504f79ef0a3be0ade65b781ca5e67ab5ffc707fc792a7bc8d20aba5ce1685d16b501b7545853f28883ce3017e107f18e9b5d17678daba0a43467ebc6802667c03bf9f7c3a215637a8abf801646a372ce11019f8a7bfa2bd202680852e0aa3ca3e6ba8a8da65f70e07d92547d1c2a519b423c4eed9aefc7bf251d470c396ba89213ece9652321cc409ec848b35975ca32d32e7391064c79adb888b2566acdb4c9957f7470795dd67a3947128b5893064f2ac8911e206d151a69cd79881f1a8e2c754f7d67cc70dc97fe018781ad1a5ea39bee911ca0ab8c13ac45946eb5f6e1c89fc4506b8b7ec44d70978c9b8dc449734469bb986a7331ef10d9672616f012b64dca380d04344d08901732629ce29042d4b4317638c7a6dc23361d033e3180e2279009dbedd3cf293bb54ba2fc97f54b95f1905151081ea23fa6cfc757bcb1f37684ce639a4072c55d338780e2f375d253181a373fba479e2c23d7c1acb11e01ae4191f2f628d4426426313b6e57ea1cca6aa3ce68938b64aa0c11a02ba5671961acbb2f8d8b02aa7dfbeb5c013099c29aec16ae7636d3fcb71c736882f4a42be4e30f707dd5466d5b8799403477f730a10a4c6d92a40d6c8e701071129b4d5870f1bc39ff0d5d0b53c5b055e81ec686fca4606c24c14bae0a53141f48e53c882e0f6479160f5727fe5641532cabbe5bf21f80bb0a14087c0c90505d2e4aa7bbe9b86c736a1e37e90e8731338319c40dd938c2f80d2e0cbcf4447e32e4900870f1938302a3650b66a9d54b975b5c1f8d2477eae01e7892da29655fd8357b278341461c2c21d0a4cc54cae75a1448f37385220385d31da825b5ac370a608285974c5a418e367210e3c1d74d7c205784ac1404792d2ee281b2daf64817f843b7e74ec39196be4bf686602fc4551682c7fe777d679c53d440f7fa13abd8745773d435c6212d14939c4428e220b5bdc4421ed251e31d219bf0239612578a0317675d7aecb3ad44b34f095fd7177606b734110f3ae5c611e31b64d155f8337dd6b4eed05af08ff15e3e7333d435aa4a3000935b4b352754510809ed650ed6b08cc219113ac3d638d424da5542d58bf2d9fe42f5eab15f1e8a769fe480a9fabd21766ecdca98aea7bb8878c5752818395ebcb201ed50713c7fdadaab97292f6bee70f372ae819cde1c07d9948d591950e79590056c4d4aa2496fa7fbc99f76eea946bd6208b3de1898f3c9c697b9a90aea9715ab37735c830e6cc7f551b785ee8f87164d958910602988dad8103199f83720c8c35c92bc99bf45ba2cef6d8dbad3192761db281f7f52e411952c89569e6ac14d1263de2797f7defb383242b5ea41c36ee211ccea1868f28e103eb7b40054d07d523eb0c62a1248f2cb369bb47eb65b21920a04904788288224435eb3f5a7085ca05b9e8db25f8bc395c9fbe9ca5f3f556cd7082cf14916a1d3597b1ea25a595cf3ac472762145c870a9b716746ea82676eb980534141bc5f609223345855b39b6c18ca1392e62c8f27090b89d38c67088b1e54fc721acbb07453d42329505c3fb40c2e1329d7a0848b11412e9a257ef72d69be07155432a09efcbc937b2d73f352bbc7ab66c14d18c56fb4a803fb27df59765d3239991fbca991a87118982d55792022b59b87e7b83397949962984fb834dd2933135abbb696cc2a16cb3d023590559105f3c4663169032d7474dc7739af7182d1c24b153d8faeda70a9ac040cfe4c89c32092237561f10f6d8665374e59501e30c571d1c01e0f6d17f223789999926b4da2708713ea022bd85910d533f9963471d5e8af1cdb155cd3b9e49f358b95ee0a17809161b4999bc965fbf4195328e26e6e09a326b7560f6124a0a1121f0ee93cc62fd854da0bd2dfe13bee018c699ea9fde845cf041be147c3e58c7cf97b9522afc162a4456d6bb8cbadc5f6593b38a6e60692a1b328f08084d1d3ad30a8ad1caf1f2fe03c61fa1295cfe800eb9a1420a62278df2c142f0243a2d2dde86ad0378ce87ce45a18a730c1cad25877ef92c3f4c83bb5d54cb8bab398025a98baaec916c2bd316dc6c022144151ce3520ed4aaaa19bd6fee6b9def5570750a6800d7fb321e2f66bd13f8775638e1fa5d78690bd83744f7f72138d954c89b884d2be35d6f92965d686e55a99392cf3d8bddbdd641f066c07bbef58fb147067e146bf90cc32d0be15b11bf3fd77d7b892d3cc49828e5f497cd27676be347277912cf6890a464e04c09abdb1bb7a2e03c9a4a9c90856b94bd9c3496f69cfc057b65f39bbf4c8dd024f4687aed9125e9cef57fac304312c27eae894583da158a11693335ad5975558077fe4f49abe54ad08a3fe73064b9848c97d9406ba71b153ea286c684782e63a606a6d48428fb65fa97dcbc38368151276092cb8db9a1d492f79e7402b80ccc470d8ca4c4d54a4ad6c868d5ca0a7b86924e92ae963f09cdee2f7a837b07d7e482eaf157978975d2223b1a389aa10f76f946033dcf813579c99ea3977904285fa26d7f7d7de2202097fbcd2bbc032213e04e0d5410808918ef778cbfe37f2d3515fd26cdcfeaeed3e0539f5bef0efb62cf20ba9313042ec625ad1f2e3266d227e5f23e3205c8bdf1ae23a35af43ee7f7b9ef821f695feabf83070dc8775411c4e2eec5219f9a9ac5f8ea3ac54ba274af951da431f39b2b42697fe3a715545735b8c732d2fe6c38bd8b59368d304242d8f78340a5dc06c8ef833dd484dd9e4fd1df990d335320a0e959a5e8a785311f74d2258c86270f9626084dcda7fbf73128469d3faaf2481fbece0496ff06160fd6cf31ae02f4a17a093e684313eeec6e8f592633350c38531f0f9980010ca6f64c09712b55451a9c089e068209c1218184ba2780210ce7a0c4c18e812ecb6e77f234f8b9e2ece34ea9c3213ec7230a3cb7b4f8c0c98979c61b0b8c5403b463ed5066157a34cbafe480b56cf4f2a028c4dfdbd11dee412296bc086078940780086c5506230e0ed2de9d6c90a75073664cf19b949638da91134cc60dd4d71c98f8ce88572ec4f0e939289299e109f4ced401bbb09a056b644b59c72ba6f1614fc87bd12640b04ec8862018b4e1f1de64cea23b4c904eb965ee03098fe0e31a50555dca5671b31f4b95e9bcbd1aa078c927c5b5a9281bc848318297a2f5e1e1af22fda45ad9e683b669f3d1e26b12432e82a72606a2fb333a12000388dbf80d8a2a5aedd172a1e0f1b15880f22afa3f3eb854686529a15052b13d06fb9a403e1ea3da1632ca25717d2496db4103dc42520ca079181be29f12d0730b19545762878258e0c3de0a52d57424258896b66bbf47d7a1af303a81b30bb731ace91ba88d40e137c516b8a10feea49cb25b9e02fe29a2492a98195452991fe1601178b761f037d71c005c850ca5401728030747f173d9ce95bc2b4fe4a1d7a78061f0db98e94c7035b8ce0320c8b38f0a407258028c3903e0d54626bb0a26d67edec19d454f82c71742a293ac68435ebd0f892db0eb79f42948236aa888708ae2ba9ca9bf7179bd2c28e24d6f1ad72aa4f6915d2dbf4cfe0e56d22e6d04c9cc3e47da8d4dce0bc83cb5a18251dc9f077b3023c9000550207ceeb51aec02248cff3c505336c398ad9301e2db64f32e4200988ca36ee26ef849937cc234d160776a1c69830cc4d1a6064239731a3e4ff7814510780a8b88d621e5cc712c7dd01350c9d276abed0c5fb213fe6b9e0856bd9bb61bcff6c7e82df2c481280e9622d3259205f634f5446d0a1bf81b9306faefddae050e9487d366bf20ea2de8ec136377f01e756e76471ddef4e1baa37be903d7a53ac0f817baa119920ece4c755ed64cf49ff0910eccbb8bfa0f9806e41023f0607cd103dbd2ea50f7de3e4c04920a631cf62aa27462cdf4c6d26df0829c11dd2fb1a8e44fad95e221f24df82481fb3195da36b8c6dd61b45d8089476cbb9351c034a4d2bd8b8c9935a142e0c1490d13b58f2a231fdd6f5f2f421fb90e52083d971fd3d787bc169e35dd0cb39be7fb17550fed3f5a4cae190065b7f7a19179821e7e308f1f3818cb36871fba43c86095ae57c0c80451fdf8bad291de38276565859b5c57963d05805a811e850abd2796045864189475abc578a9ab68194d2feddb0ce9e92b5cc2b97f18b92935a29170587f675568b5ce0b4d4816380cd1407f35c9dca3349217d89bd8b1aa393281670ee40a1e3f1279c4757421e169cc6406fc8969dee815eac6bfd3b90d8c17d5006abe6045d8999a431aa202611598be80ec94a20ff1261035d16b3ce2977aa92a0bf01f64383232aa118a5b216e9650a6375c21ed760df20b10fe8081a26a125f2de290198a3ab81ca0c537bed8f4202164b191304d46ad1e7e014bd268d955aeec4008cad4f252398f13f46578f6dbc13abe109cbcc8a44df8038acc48f5404038d4bf41ea3f1fea07c7d3d9ac3fd66f7521731533ea870343c4a53bc6fcf53a68f48cb31cae86dca962aa6b506c93d49cc6c3bc314bf5cd6d39583fd4c855d16501c2cc69e9562b9306d370529a7ed17c0291af5225d2a71e11b55e08f4092ced4adfeb6ed79e2726c73677b8127830d0aa7945f4dab3619adaa11c1df67d70c82f3c324e60ca1f97bb9f914360b219c2ddee2786f67a966d07ba5263ea4f20c0e9496a708319b82a67b5c2c49dcbe42abe3a88e1a1de4441d27989650538c6b04f95996ea528702c521f058df6e658f5da7368fc545a9aa1f46f220a4739779682321847c8021ac9557ee351abe8713ec465a391fe07464650390ca27151a4ec8ea3cd3a2c510dd94a14d864b54dd10047062ab56e60e2e1be998113d9fb8eced02b3b08aad2c1a20ce319bd061fc1f79d0b8898dc9da97bbf2c52a3a6be5143d5668aa32ea1ec19536ff771835fb9e78f1a2cca76572222bef25ff3244c7774b2d31d1bb9b5265910221f1505e834d29dd35fde198c7496eb71fbb00975df759735826350820dc7f053f924a489edbef0f08b797859cd43702ad203e3077f9f7282ac0084b6d5214f96c17fb3c70359c1c99a2a2acf3b6bfa2c2cad4ebb66d8964d7f9f8f5551c5db296358784b817c2073cf4db1932443645161a80758e9a70bc82cca6b18e9195a35f6f6e6ce6a6180d1144e014fca19c3ca3b1cd156ee636e441447b22662c119fc70742bab372954f28d5191d3aeb0e0ed6316872199ca313694462d78dfa4fe13de882458924636bb911f501fdb816b16db8c262c6039244e9dc88309e954dc9178eb3b7212b65c59c407ec93f950ecfd83f363e63660004215ef4612564d4256f549102027a29a28ae929b48f248f43b6a94e185f91d39d9adddb6110eab06a9487dd815a9ac203b7023666d8c60a06ac8abbd8940541512d5be8e404c1549abb98f6424a964687c9abdd3f22049484e7baf787fbfd9a954c3550978040cde825b6ccce858853b67ca226004aa80a8aa4b040355415fed452482aa92aae67b24625a851523b1e01492cce0294b21d6622c81f4e8758c3e87466fcf51604da7508d621858829c61b9f4a676a8855f3b8b89b05f1bf5461b3a03dd61f5f5fa85c42c32085bb90f432fd63e395673a51aac01fcf92cd845b1614776b851715462e6fa7fb84e7b443c102400e4ee8d673a9d85a9ce7aa545b7661ab41f213101aee9a0a64d051a7207b44c277d4b03115d141de501c43882f490c506cefbe215bae303c2c59a5a04ab32aefb108c24168d209f110f77e123d66d21cbf7d98e9a94740bca4266225e82de041c3dd24934b0fc13c36aaf407ff382c8cc76c1509d308b04ada8f84cdf6f926d0332888bebe82f38cd11bbeead6fb6c8a8af59278710c4bd93e9991635723939ea2a7a430ec89f1d3da3cdb4f755ef2eb59efcce1a908759a88a8050227144f6d307420d14747270f78cd722c6655f7eef3b33d2821d6e533b0af49560c08882eed5ce6aaec8f007cc718d6f89ee77a5317e53059a0db34e1fb757dd66e812fcf07eb340917d71f9d440efd866c4ab92a7c7531392f58459294cb358b0f025c94d6ee3b5897251ee682fad1d21a546cd9202f03d441c2188169db41cb9d72129276a3b69ac6518636bb7de421ddbfdc2866d8a286d4f1f54926e66a89cb20a6de1fb579a76bc2ab86de6fb0e625a39f5171d26802c6971fab92a437ad21df0467459e879e84c3a4c020c42ed947fdebae80f276448f48c1abf1904922afeeb9c67f737f69c15f600873409b9ad67d232183005e507373d20df764db50f45c2d75e431cfcf12b6148e65cd150999609fd99d6c0757e949a875d45ad7ec5d00502a22e3f8318f8987a4f3868e6c60569773028975b026be723527c233fc6d6ce107c61f64f6b35cb2c89751b9e29174c443e62b32cb8050c79b44e0fa639171d019b8548c62c4a410ecacacb3503c8378e7782005b535a4def8f2c1188578ed6157ee1c568f4f33946222e95f3b97943ab9975f0dd1c587d38fae0fd39c3fcac7867ce506461cb8b5e916304e85ccec821aa154e0f5ce9efea948f45abda72ed06510f98108f46a8e4da158b54b4a87d4efe5146ffc075bf1086437d9d25820d2c58f04cee7a38b63e3af77e2195b40081ee5f697a89b02e25dc10fbf33c9b6d56e8d99ff97c0ff44ab120822d931db710380884b71266d29a8fff4424be2ccdbf41e0c4704c8e84c58ee30319980af22f147d9cac2c925a47104a214a1ff0362dbf44bbf65b5fd47b60957ca9b688922d48889de6407f5ddab27bca6961a255c68d410e2e3aca2e75a6ae7fdc269b9234c47fef0b2808b5d5de8bc869d27763809e7d07e74ce364914c22d9556740f7f254e96b23ec71b7cd4389f8f34a6f6ac08818c9e6bfcff362d93858840210a7025282bbd5b4067dbc2de964d5e89692f615404c079c8610e12fd5d927b528a8cd29e930160f95a6b2da0041fa2e61a9bb7280c3e135da091396a8a630fa452b59e6bf2821c4af08b98a1e16bc089841f56351481ac99d0edb5e47c6ba55e281d29530a45aae4766d6eebaa01a16c9d088f76119fc07e024c652098955f08d91af0fe33ea9abd09b1196c6602fa85d2dfc3b980911cd2cdf1116caa98d70cd0abe08f56bb1d055b4a5a094e94bf9422173f87c45f48bdf25a42fafaca4b3008f5e00283268a1a96eb6976e5434c58fffd03b9b1ae63d98bb0df24f4f276c3e12687766288d8db9134b11df470641398e344d3886a3d22696ca8e051d169d4dcb89877fa85bc83cf1dec0245117559fb392bbfad1bb1b0cb84e30f7f03ce90b4b8bcd222c1ad317250a81a5a4c8697e50d700dac7818c0956e1156edbf919527e8184cb83338c3f97b87099b0491430b704478ac698a0f35184969509aef6d3060a9fabad82c406254c025ee774c584428b3419537ed7fb7fc7045029da119081d093949068b5c88a556fb1d9df63ab8173a786c057ef11d253726d40d3a017bb65ed8a5a80da30592683d65ba03f0ebd76c3158df2edbddca3e31b42ec20376f5ac5f6594e75a7fb63be51a903949fd2001cefd99725f78bbc43d9e7a15c5b5306156e709313e0a9f232cbbaba87adc09b002c477f438014f83ebd9900e3da4537442253b00fcae70c5bde269fa8527aefcbbf309db28d12d56f4a891e498dfda99b09a287a1efa09153942c4da239c7a1e58fea0bcbde9d42c240a905ffb16ca495a0abb38688f49cd3142d978792c99e52fa174d97879f3cddddaaa721dd8028b068c57de291edcf32d63a8d44fb97abc802e710e3a9a49a0e2750431830616a54e3913a5c4217342c639edb8f4d8b08327ecfd78f78795ce75b8c22325b66b27da105751f340ccf1151b9d1018e8b9e3aa11680bce1f8569c407ca194ca216b7f86c64511e1960af070f8090223eca2d45cd9650ff57c797a5820afd6618cdd55cb3f14821f97da175758073ec88df4e0fca07c4bd0e812935e885cc6a37d14bc326884c479149e8769b00f0f0192fa63c54ba3652b3946f3e6decee46116197723a289d2b260111fe8d002c077c082e3c3c4fb44f755c5983295173e8123f82af111e1cdd642b99dcb6909fb59859472a733df2921347f85f4877b4aa0233bb67356fbe1514d8a1e187a44df429048fe138305230020010bc52974f3d23f5334b82e67732a91ef62baa2e89d7b3d950e497de2565fc33537378e3f2f5b138a6ec08859e94e0c06592ee4241da740f5c0b8b8fb62572e70d2a5961fa0eea439a566d71f05800de8d6302be88f7b4e43daf0aa93fded465ecbd912809a38b77f8094eda976c03fa15e54858d4e5be5253e62538b3faffe6211ea1bb84fe600f82004411006cfd37774688a37161557da492ca45042ae1ecf9190d94ab9cdb84480da059457e543b3fa286f93a5b85bbc3f0df0167caa08c7401839f9de466f321c4a74e63da341a470d916c01df97e4ee8999b05bacb3e4e765d49c29d4b64634c50d81242a856b4854452552d1e484a52ea84d81e0f45c7229973043b29a2f4510ebdab880445a54a01dcbdbaaabc8b9c72bfac1afb1817503adbd57b299dc97ba26368b8a004384c293c890c25e58462754042a20d93caf111b44b880bb5b9b6f42d9d2ff52e13f8a7492cc20b87a2dcef6eb43e5f6a54a5951310041723d047a1895cc9f1071073d075c467e138df0ef495c91a75c8316101e8b9fc5433856300ee781f0fcd0f2c0043a60aa58b7028eb4fb4816c518b1474310f6d84b37e8d755891e15df9544a101a3d5b2a4a06cc1a5fb79a7f1b787b1b4e020043b60f7a1fc92036b56bbdd6f02178503203cbbd74fc26f29a179b303dec44eea2d683f5066602b0c6fbc64f8d4b2aaaba1d100f6e00d44585b67ff1cb4a078369221e93f19157892f8a1ad748a854a4b63a68380a280c77fb3fbca00480aff24231f13fc860d06950c5d89b6fa2c16f7c95b309c2cbeb8fb8b376beb3ef3739f771c09972159630c43fcd32b3ec9f26565cf82023e49781b07fc6f5b0bbf3a65bb56423ef4cf4f9bfc94f71617e63772211a4de9b9ae49764d4ace5eb9fc911a7c49859771419840668e7dbaac6703a71527508232409558552111e262480b022d32440492a1cf15f3c9c3a9d5caed9098b5d2d6123830e678c22e91ab689616a5985ac0f5a8898c3a70fb35564153e292788c1441f072278c8e67f8d1fee29b1a5c7e643a975407a7a514764ca12b2b784f1d567f195ac5f0a1dae60a013f4575092167725b1366047d61dde2416404f3a27062d89416847a82ca9021e3671366836d80cd1ff5e1fc31b38774f480969c238c30dacdfb5ad6df7c7ea91e0c519f4cdd9da15dc2429341b63ca40e353d423edfc4db7c9fcd524a111969c8495d49412941f2289fd488755e4f66be9395cd4134859c91a874cdf24dd9fa7dc3953a4a73ea4cc9610fc1ec6c0eb35c1b9dc902160719cd39b3ad599c950a6a21654a6d324ce434688ca0df4f6addb3f4de2b8c11ab233aea4422c5541dbe56222a4f6149205ee47b6f8c8d6d24aeab0e2218dc2468e2b0a605dd2a75a92d320d5dcb31d849a9e1a974dc572d959bd35aa1e121314334e0b886feda047be67dae994050904c37175f26e87e09edf39110233164aea442a4f02162e8cb7c09ca24100cf26cdbdfa5570bf8f7038c4ebb622c12f146a267d55ac65b8fdd9c5965366adf08629367a4417c1c9d05ce0657e0eb3a379cf3095db0891aa953f6d458a79ff61b591fdda04fc160ba85afd16da7332b268f30bad6f24fa624aaf4d28b11585cb41009a1e05845d9d09e983c08ba2a386dfd558198237cf8307a7b0744be11f01fcc6b80b8f47eafaed0fa70192fa526d5c17cf236536613eaadb2f6f2f9f2f8299a17dc1702d3f40f2111a4b771be1cea94628ef1b7ac6cffad03166d67b94614050ceb98724ac11f11add2ebc72567cb13a3a5628f283308d5ccf232906b1f1c12b30a877deaa9f207c0fce0bed717a9c24e819ea90454521b30a851cb96d8665e74bf24f9c38b00281cc8647f2256f33676a8c79c06375ea679f88ae39c44bddea2874e214a2bb5815538a2cf580cab5b6367e320cc292faa63849ce1d8cba3b6673d00ffc613f340776d01edac376e00ffd8039b043f6d01eb0037fe0074c1e5250256b7714b9309627f7ccb162f2168d5b3cd230fdccb81e1fbf6f50e18faf4c8ab8efb5edb1c668f910a98bc2d29260aefd6e7f3528b501a33a10731d5be3c442e789264b8406cbaf813db30d3a3a382a27f3e19674789c507eeafd69bda548707db71915686362595713c4e167082b8cff48d4453711391b9743b2a5ba33480844e97b89fb81ad563f5650eec87b64d0a13604280ef712ea3af6c82883b0ba45335568c87bfa9696b8058a45b397b9c3ba48721a5bdfd93a15e161dd29feb8d07f4976be27178862a7e0f10c592cb9a5e5a74c446923d503b052ae0f831a5ca24456266f886102f6a26cfdca52977067d290633ae28e66455ff2edc44ee88445bb22e161f550ba404ac6e87dc825297c5f7c055f488dd46d96c53a207205fbfd1589ada2f72f8630bdce07d2cd3f2c1f3cf079cf7c6f6f55a99759c00562e5b86490b834b3ac2f2bc72b21883ab16619065d1d999e0e69f492b6abb5ae202294e123f3a9e1caba0a4995eecb2dd2a6cedb3eda582b408c8d42d939f0e08da928f5f74cdda9b29328eb3efe928c869b0b4d04df1a5370ba0f117c193f8293f453496a48ad6032cc7ffbdd20ce2e537824bce54832a9c6e7b474ea86064f37987e53191af56324e4289b52139157755dd0d2c2be9dfda0b4888b5097a22e682bb0f5490f30cfb050a739a81e28d77d7e015507ec89037afb669654209c19a703433c5cc637567122629e316b76be1c1be10d835cb727c1aa06275a5121fc5842e41c350b6ec61b11f26155747bc35e0dce7e3bf08faab54686c1aa88a4c28dc9067440fe0a36b2bbedbda594322519a2093f093409f1c73af591d1441d23fab13252ed42623c732133a9be43c478e64366fce43f3a5cc69d5b86f5cf1bd2716968da8c5b5557c632cbf3642c64713de40d11f19cd5a81e4d2e8751f48a68fcf37e6ef8e705e1f0cf83b97f9e900d1dfe79449f476333cf614f8ec3c2f80d8b721b56e56e65bc86a5e13a769ac642965bc8e2a62bdab866cf10dcd55c2d6e47af6c607a403987434fca74723d34ba4de636db502ce1391d9c42a16ade3ad0c2f3f8704a35221dbd6c88e53fde003c7abe4778dec2adac78f10dcb79445b2d1c2b5e93faa7b5aed0578e493ae75408f2d4fa391e06d00301769e550003f8f80124880f07f8018820109000218650c00284306048038870c00320504404243001232850010b5c0003b5555fd0b7e732c04d5b3db0e7ad2fee88250f6575d22a5a0489e96d978079257a6875cf124c90684bcee6a8f7709cd5beadcc4f5b7a693d70f2cc6313568380993d9f3e592e76a72b9ee7fda891d01421d7ec31529b3c74ee032deda59447196e63fd7a9d719ed4adf57e5cac47d4aa7a3fd4cc2d7a2f8b77e419f5a53ff4a5f5e0032c2537e451f1889e5035979ef9a9333fcd79caac7c330e123c9782f0d74090a5723d606067873d2a2fa4e1b9e4639232dab7df0bff7941474dbe000b62a2269f59208f4a7c190224fcc4472de86271616f5760f22427962cb1a2d5abfa82998531280a339b3a58496e2af92099482492e651b4207c740e089a140d079a0e54f05b5cc1e8b90e693d954aaf5e342964d679f6e3f7fc64539c9d487648e6a718ba840a0415f4236279cf3d9796e9d3a505c548136968a4a9be51f1605a90cbfdb41baf37d4aae85e27c5db8f984ef26fbe6e076b956496f7721214c5c94f17146d4eec45855b6001f65ca7f40a5a81d2ab4ec86a3c9a8b9f54eea2f40ad6054569958feeaeeb605bc01cc8d4929cede69a4fef7cb6ebbdba177542ed6041505aa58add16b02646eff38456334ae9154ff1d13b21d6e9560705d6ed65617629c8ab09b5647a4929a5b3eb5ed2f974de76aa84caf9578d60520aacbbbb9b725b0724c9a4f525f4f5a4dc9ae2039ff6862813ea475f3428c687641e03e3278fb92747825ac2a4424340398c7f01f6ed4d500ef3d3aae8414151a2fa4d17bdd22a99264d7858f2212473989b6221274ff11d8259313b8daadf59a8349ac0d20fd40a0d62aa84ba71103333b39785ca3dff6941ff753e57224d0212eae6520d35069472d30570a54d2593c9744d9713d34505c651dee25fe7a3034e7a0b06d1d3c2e49f2704cf3f8f081fbd2e3e7a5e7c54c20032ffbccc3f2f0a9e15de939bea66ba98eea6b4998b458b2f518b9392e3274c1b9d5237a75ed4e974738f4aaf60acadf4aafde409753f4f200ca0cb0a3eba4b8b75a68b7914459727dee828cb4797251f5d46e05282774181d7a455ed799e1768d8c2b7d57edaae495f6a848a0258a243b48bba390aa6ad4d1e6e0185173f6d8c26cfb6f49d0fccb1f160c03808aa41c7349f57c50c281775f32f74f16dbb9f96469387251fb408756bf2d3ca2041572014f4d3924c9e4a22f5c3f492972efc793befb7f8b62d3fadd6e461c987cee94dc91f09a55591e8dba27e5aeaf904c3929fb69b3c2c25c0e4f37e19ece20ba369659387a5203c37c91f540c7d92fd743869a66d5b0b273793d795362e494fe79e643e9768ddd029cd5997d6c3e66cd72a3db5321e4621b50b1f9ce1d97a4fed8c9796bb537c29118650a77f5e2ba1525aaf2e7cf0850c9ea0ce79e6a7790418ccae07de6521391d6e8494745d0f204df4af5b42368139fdddcbf388aa744e049304168a3e43fde84b4ee1c51962cf36359930dd3bfaf89c9c52bf8e671014b7602a543952ce39c890351377238d2e9ed8013c01b1734cfe64f9280a2a6842ea11e4340f137137c5cf928f29853adb6a537cbbb8880ba6537c14f3097546d15de0a04a4ff190c495800aa1c6a79c640f0a4a86722f2d5ac5a4af399de327a8f4e9558875e6d55abcc44b737adbcd6e5d8f26a40575210226df3ff475d475c173e5a377dcf9c8e0bf9707428d0257a753a7734e58e79c34662536e764c273734e9a05b5d449ab28143a0348ad7882ab307e6a57f27d5312ba9545578a7e620b8ba7ee53616eea07cea5cb9b22c1a7465f48238ee3fa65832b4f894a40e7a493f3b64a4ca7cef950827d985f929f7da554d6a262511976e184179eb32d2f2d898a87b37bf6d4a26a414b80a69f5c04d3557f50a90f9af49c50a6006107405d44e1f3fd34a857455d44d1a2af2b3c37f9ef2508fefa82555802227fdea80579414f7b50616060fed3828458d2ad2bfe54a97858f2e1e5290fea4e737d8a7f6afaeded4c5425127941cc27e69316a475a1c13a769eba834aa3d4d8c5e0db4a2a1e967ec8d741ed2b9d0f970516d009217c66638f898a87a520504f7350779a8b4fece033cb47359e935decd551f15cf2417150bf795372888a1cea6e9f9654d2a0cafe79d489347c663b48a3a2bb691695a9f3cbd20ff329fbcc2c3715cf59ef07d660013da12e0bcf07dd0f0e5edd9ff913d9344e3c7183cade630950a52829fdd128bd84874704502af5ea139cf52bcb92252e50db4e1c7bbb86829f3e3dad65627a2fcf6b6283caa305f978f1fdb425aa11b8a2d0a2065190408b162d6a808516252d4af0a3450d9860f1f3440bd5152a954a0b2c47475a68c1c3443538b08ee644ac338d98871191a5a67fbdab5a0155f5d55610e1a357a1e6e67a548f5a150509ba18743e50153df64dc457f87ce4e28a1ea640b480a85515e674809f32f3e70595e08b8f5720a9f21ab8d841d0478ec10e7e580b82f50ed19d55f2c1ccbc06669e826da60b06bce27420f3e878c0dd0db4ee0a259a06b18f6f04032e6840c4a520fa2bc7b8748ebbddabbb6977f78a4ea9a89763501c470484a7d767ba7a87e8281b674d5377b312bebbd3b4e8792fcff361fa435f14564565520421407997ff546fc2e2a1aa62a94719650e0a7a8645908ba0d7c79626e8601964e6519761c9471a7bd58fc67ef6cc62cac72ca234a5a2d65a676c8aca4fa84b480e0c2fede94996df6b626bf0d1495848ce88753c1978544c2f00a132a899cf18d72a16724183d693da4aab6ad137a9b18f4ed4aae7b8e062c8a81eb5800b2e602ff8af6269c19c76fa7d6350852aac57ed310c6c73ba5acb51f50c5a8bc2a07eb487a5e857b4a9ad57acaf567d3d67b3fcd723fa82fa7940469b131e967c387aea535d50bf6ad48a36b50b9026fa18d2a0f538a1691dc776c6baa50a3f6d64dbc1928fd69e5a9a97963e6721174e60f02d5de703abfc196b15b7952e7a1a6b55a4503e6aad680359ae9e8f3e1fab11acd17a8894f05a8b8b1b5cf9192be2e206566aab3d9f887a9eb15625c0a5e8251bb20845518254439d224b1262bd82f425a70cb61b8979708d08a06801142360c1083cdb26355844f547f8a7faadbb88fad04edb378ff6888fb79bcaae101869be22aacd2916a290a6a1badfb6a2de41c2182d9258ae48f94524ea27a5681389228d2cba9f26a5532bd4eeb9160b5fb35b5369d5166af8e2631e6eb186d673a5eeb3f1b09d78a839d7629b483aea3bda10d15723b23dd4824a9b8aef3411d2bdfb69f57e35b64819833552be68fad52ab9fa8cc8920fdab72fc1914aaf5a2e12aa1eea95e654bb5c37ed61697bc2f92c3d71398bbb49549b6f1709d5f7954e5a255d7a2c15a14ae9d249f7205d5a6995c94b36d59708561129a8b2a855d2b72b63ada255a8708a1b4af0940a7546a138250ef58aa404d410439b1b768d23597ee6ccb7928faceba2855bac218be7bacbac7500ac79008f41095ea8100bd2f9a995da431da3b4d232261d8505f5b0a574d8a82b4f52429cbb2da0f6d490997ab25d3a855ab29aad6fa8d24806fd278f5eba8cb5901a2ad4a4506984f58abacc4a0ae0bc89228d8c451ae91c5769a248239d64d9ca4be7b8ee8afce66db9a480c8eaa148239d46a1b6efc49dde6c9197dfe095971d8978e8a11ebad9b9b989364da5553212454dbbdd43ad6aa2de41fa87923df4b2895aa8a7bc3498e58336f63246046dc94690a6fd48cbd2adae471256b2256125ccdb8f16072bc30682e36ed2e6f22de31b36d3b44358d3317664183b76ecd82d9b3677ecd8b163c79eed946d7414380873a485cfd086078a1b56060330371eea5068accc676769f681ef4941f03d43f01d65472499e54e128009610e77924c89ece602c73fd5c6291e5920f019d6308c1c73b086638cad82dc50dbbc98f8c533f44fc7330dca6e13c622fbf1c37814857c1b2e1e7a5ac52fa587afc952a88b5ddf3ad47c37286b6eb206f029dd4fc607a491c23a0f79b490e4eef7f2597c29a700b08683f0ed3b2da842f47e5a453da4693782f6a82b74e15563e8f17db3036b9a07b5a88a8eddddddddddddddad3a03c717076d7073775ab499906646d9c1865f70d04ac93f58e521a4a243db683bb697b609126990684364bbae699f0a073d7c70b3c5b7f3852ccdc04cba1f6f50bb1f6790673021cd2cfdecc04786aa3943f05142e7a26c9ef212699c09a44398c5db5cba9168339dfac73e5ce5cf76e5ad95a2584662969793cbe61f07b554b7f0b94cd622f512490228eb2b55b2a4732bdaf8d04da4912e67c0ec74b7d46bd8cd69582d654b2ec3760e4bdc8dbc8936902587a8d70822a4c3e75ce4d7295388e0abe5cf3cba92eca686984e5d88d37b0428bb474c31fc485492659916c3d6d6b44dde449b54f5de99bef9104a7d6ba7375563f8bca92adde5c170583d3712bdccab94b2c2b81ff754372267b6d32d274b82e7ff00ac916e04d6488e76997d12fd649f50f7ac8bddacabb2a66bd65d95455d967c78b5f06529732e299182e1f0613c4379e63c402ed1f240515926e739f9127e030ba8fa8b058ab94a286043dd148c2b448c9b82011fe6de148c1be3163dde231a376d0ca7f6c55b0cd508cce9972f78998297d2899732e8497bb54fa27bf6649f98acaba686981ec3854c8f718f00c1f023d1a7c3b842a8bfdc23edef02bfc5324bb390c5a59410b159d3a99b32e9ad48237d4ad724c972b6b3256b24d248df69ba7393e5a5371684d0821ece24d194c4249c44239d86b8e8095515838a5ca55544b1de81dd0a1b67711097a6a6c5fb3191001647691a76e9dd97835ac537411af5372d6f8688ac9b32544ed6208a278610a55794bfa5f7fd5ebebbbbc8cb4714d46df3bc8731363890861dc21a1e0a12fa7828a883b23770d006270487a8673e841d5e24d0d933e8cc909551576d3d3ca39c3964a73e047a76916c0e9d5e2440429040218820ea222e8a3629d929095d08c37b04485e21d0e93db239bc2979043a5f25ac26d2b42974b373c34237445448888538b62925a9bf4d494702a4391276ea4880e6159239742434256f2ade21d8a90b61a757bb42a0678e24bb44220d193e7e197d00d2b43ba145518dc09a865958a853b29d875c5573235aacb161cfb7374798051e49c94981636f0b043e8490ab908698b904045ae8b004bd90c21752b8a2d547b58abd98021392e702adcbb22cd3b42904d1875e4ce1a7db1e7a710630b07d54d7755da9e485942fa86003d8aca98183363e14e3407b38c8ce3ab4c53c7aea0b4e3be34ff09cd4964095f605cd88839d77c98769b3c14f2be3b9f403ec22ca7b439052048e55780423a2ce3e3955e76f9122e455f1bc284ce9157b2f27db14869a0a779bc9749bb4ea5f2c3f8cee937324ae642a71556b6941546bb14e3532d2e674e272b233b30993a8be6ad00f0d48be0413da53cef674ae4955f35e9b6bae9ef985279d628084c45c470213e34350288f39390c64bd342dc8bb82110f100e0e85b3806afcf38eea6b0b1fc0e6bc7bb9ab7afc56fd0586c770fa8a9ecffd7ac0b85f8f97fba95ceea7f296fb39eaa65eafd72b65218bc3d2ccddc0a1c386555d1c36e537ac0cb761655c87a57195a5e1d6cef06bdd4fb6465b0b5997e357f7cf1290ed95e03734a151db84f69c936c13f539e7e44f9d8915dd582cb59db833e670b04f527eb25d8d25fae82a2ab56259888e868cba221803d19b7219e791e134ce335588ba071d1ebda3d23db89c35d43da83c7a17034ba56478cc3d42e332fc88ccd70975b12fb576f85772694659def38945a72a2454856aac120955212cad8a94bb943689ee407b68cf2a071d022080538f95bdbe83b5ae839df11c2c005c00f68607c0daf01e36879f2c0e87a514b7b290b583852c1d2c64e560214b0016b2026021ab8785ac13eda13eb487fa90eecc72348f38e91c8d6e364fa319e31890f4b64bc457c2d47ace678c75e611f3388a513a5d0c7700d4f588753c1fe8f94c6fa8a75530c6e90ad88562ae869aa8397fa494249f368810f704a5c39999d48c23713ff90c4ff1fc3c21d29da1923233356399456a6f68a644f219eb83a59c536a5a6b875135ea4103001c396cdce861677c874dd1d8199ec3aa1c8795f11bb686dbb03a7a58c8da61210b0016b2aa5135aa47daad435588afe08f2520d62241398cbb85714e47158a312ee54a665c488ccf38fbcc8ca7ee1124d751488090a41c4689ab47868f6b2626c6533e6466c653f72241f9f5199b7218071282f2eb313266625ed6f68f8ca0d74c0cbb9094c3b890eb2887a514df21520ee343aea394c4b810191ee3ec31f70810df234866fcd4488090c478d64ae69c945298904cc360df6d1dcaf0191f12e3f622b11ee33317c9c967547ee4089218cf1c48c8c9675c06640552300f76f686459bf6899962cc58b85a7db44a6a2906685596e8ec2d05c999f3ee667926b514cfde0de304c8ef4a4e4bdd73f6d39ed470ca06a7c029a8762db64a2d69e0a08d8f049f07a83df6c8800dcf56e3792c66105f1053f0b2e54fed71d3abcca91389362e4ee90cea3cb40dbf220d751eba62a5f905abbc20159b2959be1e4f618c3ae76299d546d4c8a5bb3be5527da7394dab2894bbea15552a77148a768c8c4c8c4cca85c47525538b4c4cffd4af350dc90c94b7b72f919299519d4b4ac4788df1cae429108dcbb98bf3903ce5313725439d89a20d10f56e451bcfa93793b6a1f539166d52193d7a4afbe76907f591144f9b3c75489df32cb3b236a274a7bd36a2318aa7d189a79d86a73d06195e29a6a5b48a6694d21ad49be6700aa9c79fa7cea9ace739ac0cc7615ffc863db90d1bc3672c0cbf16e5d6c2382ca5b29d5659c8ca6121cbc6829e3a853df5af8b9ec66817d5b82d0483752cdaa4da37872c9aea9b1a42ba8be72ede4d4d47e22e6f6ad2ce423d8f69232a35abd12c5ecc6d232a697866fb8b56518fdd8536baa272e69bc7c4780c8d17e791e1279f37955d4e965242f84d4d7757c2baee423cf77b04686ebe2961f94809e19b7349891ff86bf810ccb2ce251f349c4b0a6096f5edba12960bf17cf3e99b0cbf7ee4c53d57c2e2609d934694a75e23c2e64e13b16dcf371f22c3dd69d048d570c84ad5b84340160db69447e60a31e3a664646e6a0817df5c888b6f9cbbb8cc159222ed74bb846c327e44fae632a97b24ce2e36bbb8e7435cdcbb48808444f71c8974171fe2b98c8b24bae73b9dc5a062388c173fb9b8d7563c97d30b8c1830a82eea58c79e7a8ba98f3a4b6c4557ec893ef1157fda28c6446dd40e499b924ec2246b85a43d608d673e9d9332b6487835e815d2d03b2fe4217aace8d0fb268246b223136d4372cea527c14442366ca86843ba448c5096592622d146421a967979e65ca464c99225cb165a32f904424a7ff1be5289c424a24d8a612d193028189c8ca59eb22d2ec3661ec3398c25790c5b7218d57da789088215115144e4e54e2398b3c9ae09eda73781823f36294dae19116d52a69b1a2273920fd95cbb4834df9ca4f976532e9b679783d5e446e49595e42787f5c589bcb87c31b94bd75f5437423add8f5b2f89b8b85c5933d3b4455a25abd50011a3585a2255374d89e9a6e9423d739e16f7a67653f3a686a074fa91cca9cf2ba4e588e72dae84c50364725a83afb679a86f3ea4c5b5eae2909572b943308b08abb6eba985accd3317b279768f00553f127df37a8568eedd23ed5a07992c9c32850bbe5ac9437d48e6d491c4968ba47bc97326cbcf59c82265b38824228dccd272f5f8bc7e8864d3e8a5d515f4f4d886628c31c6182364c3462384828672fe0a6ba87b4f3f0e7c7ba4a19e59eaf47aabe2ec183dc8e73d649c28a040edb123fa4eac3bbe77700b05538ece3082251d6577777777777777c7d8dd8c22981ad5b44ccbe8b410d268ac185b1c0729a594529650a31ee78590d2d8f5bcd436d89e7571c5868a7973e8c5154c78c777966dd4a3e61d7b9351803644401a98135f0cb50b2fe5155e3a04a09685975f78142cc34bef2a6d659352ebea0bea93f9239430f29a55227bceb99816aae6bef96da27f73d9b2fb3557c2b652429cbb4938e7ee921610129bb727610121b179ca87e8edf11689b2f4c30fbfdd0f08fc241c89efcef93be7e80bbe6d8cdf28296b815fe532f5f62834a55532c322afb44a1a5da99fbcb26d95e4ed301689622c5689de9b155b6f5ac9c74684cc3cda2c12c52a3196c525e417517df598a523968e47ad8a597a35d3b240fc53fdf0cfc6f78c6ff14fe69b87794887bcf2fc8bf10de3dbc53ca47fa76fff5abe4f60faf68e752413e621bdb71c9c468f47718b2ab1dc982507fb84736a5db65847f6f0b08e94c2c53ad28709ebc826278039728ad6cb169e972e17d71c963627b28775249114ac23abf8b00e11cc630a9823a5006b9ab08e8c310fe9b42793e2e3f579e91c10bb83ffb03ab8c9e6e09e65af96ee6081b80ef687e7604dced693412f5d4228bc7419935f6cf416d12a49c43a12c63ca494c23c58470a310fd69153988714608ee402d6485ff9d73cbccacb21c01a096d114d434429e77e4a3ec779b09f3f0f6e44af7ab81f7f0f2e1d05572cbf7119b82a8001fc83f91b870175e4900757ef374e82ab1d27807ff56fdc047524950cea482226c09a1b8f7085e337eec3ca27c01a59857948bfe9c137e77ab04610d12ad9837f30d683efb41c72030cbdf402b07e0787094f702a44559c00545ed6781cc7a1068dc7f14b63c6e378cd0c99c7f11d32a9c7719b92f138ee32621ec70110f33738ae0305f3385e0326c6e3384d8cbfc1f1138c97c7f19997d3e3388d93cbe3b8cac57b1ccfe1fdcde3f88cdaf2388ea3c5f438fe622a3d8ecb94709cd4e1f80dee6f70dc06e96f703cb5fd0d8ecbd0fe06c76164f4713c86fe8dc3f9388e9a7f83e32dd20a3156a12515f8713efe1b9cfbf1e03a2ebd4b3e6eeec7830fc077620f16fe00ec11370e9f871c227ab5ad705cba11a5928f6dc3998f73533fe43431ffc6739ccbb912f80dc21a1de7928f1be758c77e368af8cdbb14447cc31b1ee72e8133f3d12de411bd4b3ec4bf71aebb1cdb443f8e73b1d3b1df0d080491732d54c51bc7718e3b7234e5b88efd6cce55223ece755813fdc67e13f86d73093bd99c7c057be93b5899a555527a0e568201aaa4b3955b6095746aa515a04afa4b974310c0fdfab908c0fdfa63487971e95208864b975362788ffbf5bf380f29e5650d1cee375383c6a531a3e67e7686cc8efbf9b64577193100b8df8c98df604d741d170553032606cdfd64c4807182f1026ba2cfbc9c689c5c54f78be1e2e5b81f0cef3758137d466dc171bfd316fd658b2eb345276db026fa8dfbb570bfc19ae836ee67daa2a7b6e832b6e830b6e8311bac898eda5aa415604e8c558039dd548039fcc38adcbc3da857517a45e5763fff32f97344e63fbdcaa036733f94c71f2b9dc8971151fe30a9e42346a258040daa11ad92ae3911bd6a975e44db384bfa4622c5bae57eda5ffb5d6bbf1a1f8d1af64b7d3033ecf722633faff49f8c7d5d8cfd4828fb6d3096071e55f1259b8327d9afc6b04b4818f6e35eece7f29f8c7d31f1084bdbd42c93f9cc579d79b6e3898836d24ad348ef48f783452f7caf763fdfeee71eaf8c65a1f611d4e1bbd88f89094b3e6c1e9da3cca21649915e26e66fdeb7abb4aaadf0d4cdbfae126b2bad32ea5573ce39e99c94524a29a59452ca4de69cd4279d73ce39e754435c03102c851a2c5b66b6360810bd6227c30dbec1376e30132972c3c6cce51b36662edf1b376cd8e04c95e5c8321a550e1c376cccdc20f128ae81d28c521d9e511d3a68543970f0a6c333e774643a74d0504a5594524a29a594e6c0c1db4629a574a3343c730ed2a0192a43e9b835e503cdb28c6634cb329ad16ccbb28c6634c391b1679c2307cd66693cb3d9dff0cc7ab6d9eb59a6ca7264198d2a070e2264e0a08d4fb6be59076bd0feeb1e7211966e8f4e2a0da7310a75b55734eec74fc3bb4a8c8f846294e28a343edaeb87614191264b64d7513bf7b014100b8c412bb0085ea94431a11b1e3ec67450ed701bb1e38f6c9bf8d3347d3f1a55541a50daa6b5aebea064dcc67ff147b583898f46f8c8888f45b85c2e97cb611f838282f87e4a7c8694b894405112f4d19548f111877f49b27c4cc2868f4a783ed61acb34ad56541f711f7192a28f49626ffd4b62e5e351929f8ff74339cd1c753f2e8a3fa26fbe13b5225cf4346e4df9c04ef92af9088b51e8db7f62fc99e2e8cab7bfa6707cf5ea8b47d149af988a571014601c83e08fcef62862c9f24de34fafa0b4c758af60dbb00c8a629427b8be7be83b5af9867dc729df4e39721f7338a9f533389c13d08f2308954afb2e05215d87472b3db33a9c6df6379c2ded1bd6390828d46abdf59dbece563e2c05716954ac047ff478a308ea177f1e16e34ffc89ed3a2c5f61a3a368c344313e2aa2b14ca5551ca4b99e5d3e392cf30c451b23ad6fc7616fd822ad6ab731639968550b1169da635a51fbb5d60271a452b9a3507d74811fb8f5ccf3dc939ec8f6b01444f4cc691057b22e422110f361e907166ab53e48ab984aab9a9db4aa9d42e9d58f1ffc9977362593b70b116d5aaa7bdeed491889362fde303c86378ca37c6a1e23c33be52de333bc9d8d600e10f8346ab8bfa2d7b0956396895828d2c05c30312c0c9b44246244a489d1bd6a5bec4ea489d14bb647a48991b449f191c947cfac938f37151dfe97e4f55f112efa26ad7acd20beaa6c3d9c6113dd3c0d1c973133f7278b4419a1fcbead83e61992a2e5f382c265cd43a88117cf5e0410251f601252f050a06caf2ca374a79dfa274952ba762bc05d52945146b9b9e69cb691e44308352db3aa1b79776e8f56c520314e3b0d10e38d1037f12616a1d0eb085198c2958e730b1c94d2252c2961d6d98e5e10a323c17f3b647d799931569f2d5ebb7d006d18066924cc89af846a8497bdc54b672da00d8989c05e143581741b56a4b30bb1bce6a416dfe68c33c618638cb1a565f3f6d9e2d13e29b5f4b0ab25012db789fec83d5b8c0e9968202d5e2a956e92929762f4940f2dd4f9a9cf928fea4208f9d1537aa8a7b094e99b33333179dfaf87ac7376f146dfd815b3e8e2dff48d7b9809bbb20be30f93fde1ea6976c15cbd62d2abe83fec9392cb25e417e9f146441ae9f2c2a217cb503aaec62249749ba27790837ad5b271910f418098f8ca0f8e8d5e380cfcc56c61fec9fce31f281cf4a4e46c9f7011ebf0d115d6612c46acc359be601d664318600ebb612bdadc74e539a36af987835a75f218231fb14e0745c9c23a0c631e6e8039fd0358c306d6e9203e9230f6c1eee0416c7520b6c57f70b6f9e0d506f1160bc439fbc3d9beb0a74cdc4bab84a2c07ac5ab1a2b92de46bd82d21b4bdb44a19e62e27a5e4228cc0e629df6611eb29b300fc93afd6a18ebb493fe01cce92b3a28001da5ab60188c85faa7a17450e7a079d0517ab02c04639894fe8121bd00acdfc1c9010f1c4a501494001a4a0f1b3c7098b9353b2c0060dc701d3435543168743970cc908149c930b5103a080d8496c2b05e4d9c39e7f499cd6c665936b32c9bd3db07068cf6e998ed2a48802a2eb885d0b0ae4287fbf55f91c3fdba490c97de2f1897de4e5002084037c9bc47c366e63666e63c1a3633c7a16133f39999f99d99d7346c66bee34e3b330740c366e63066e637a69f5c74dc2f868b47733f185ead515b54f73bcd1893c6ec3a2ec7fd5a268efb99e68c293361666aca9826290498136310604e3710600eb714995dee96a25bcc7273b979e66a6dedf2e75c6af5c6e53c738eb3ed6a9e6ef56a3a37a76b4a0ad492af625c3a0bc9d2d46ad7c1a48bdbb0df9db15f8d6b3f1aff352cf55fc360fe6b98f75fc31ad691fe6bd8e6b974b6d5b08ffbaf610d8b69f9e95575e90c85ab55e6ab8dafd56557d74a3eeae5bae319166d5a0a773f16e2a1ed7e4c94314c762d167e7d8971de861dc1794f373913bd9a1172978959c432f145124cb47ae553f5735668c3b0d963b61b89717ab6f9376f6abb3ff853ec1adf94024ab7480f922bf9e959163db3314222978b5dd9bc0d6b2186354cca4ab6ba5db65bcdf375b35dddead64bef96ab57d05b3ef17ca78d8836ec8a467ad5396443ab7b8e8b465c602375f1ed98a5ceb9ce1ad117d88830cca5071120f502ad62989cdda2c9bc5bd9ea4be2bb65e4dba7922538bb40afb88b448f9fdeb97422714e5a7a52725a7ae27256e926e9113d5e247a7cdfe6c964b7bad5ab1697de3c9e4b4fb567537d19c652661bd6f0feb5b5cd4c7a7ad5b72ff7b0ab55925d3d4240219b37994cced0c6238d7493c9b7920f53905ea150b5de8f89a9925990cee17f50a83340afb6dbc4dc09d25ce69c65627e777ff007d1f9e6b0c4251f6daa2fa69ab54ca38e2861c1da75d26d7784da42b761ad92d4a842961024e72c3412fcb7e3bb0b12094accec4389f6962ceb38f4d24d2e214fe9ee1ad12a292917485e32dd4fba7a15ef0f52ae5ca04bb6613029dd0c632a2fddca47272fa39356a9a4c79f970d6318fb00d648f768c33f601ae972092ffdb3e123380fc119f6350c76c39652d430a32947547ab349d25b029c48c932c6eece28a5cdb163774f6f217a153df60ddf9d2d5446b5a0fce75206dd03535986920922c446bb3ec61a636c57af98a0200a09f5eb164b4d764f1573eec8a66799b3cd6f75436ddaa6396fa8d8cae20a8d8a84be7d106ef08858fdea77fc975e7544c9bc6417c21a78bfe9d1a9b4455ebece401aa1b2c611071c5c359cd2704a6c0d514a1bd652daa8b1f4149faed2421deba2fe82fa34e1ecb28d8e17ff04f00dc3bf9c6fd762f8576d60bcddc21c176f87b146220d7b0cabb548c13cf88bdf2e3bcba0a852b00e57611eec2818b197d3fd4cdd95e299bad876cf961a1669d839568575180bf36047a17c60b02ab6962c4355c9774a21688f451bcec25858a7039f66a804ac7696514f324423020000002315002028100c874342a16838d424557d14800f7b9c4e7858a1c7a320475110520819420821000800181000191814110233d39f4a30e855d696a5ee61bc913e2bec92c32db77a673dab870db87414c40fe853f2d9c787ed969c72195c38fb1d0eb854af8c9834fb7c1258d29be910295c317a9926b3786622fa78d0cd19ebb51acd0098de83c50768037f3d9e13eb4067aaad58f4b659c42b55ac17385b6139b705165b226d77b80285404fa87a69dc0b38f42030d8c0521ae985016048e9fdbd4af69ce10b400fa4628e11ac993875bc7bcb2ddc904a132ba9fb53b235e068514ef7c56f7a2a662504bdff9c1e74e6042fc71670e215f840d4d3e7bd71c2dd1c5273c53b20ea920b4dc17ddcc79e9570bd96e8d614f5ac3b993a758845f1c6048ab293b5de50f65aca5c05378aae6fd076db1d5e8fbb6b51f61aca5e4b13c9d27707f510960dbdc904bd286c8777d037351084692f172fbeafe51121e86c4fe6b65eee433ee5e11353e0b65eee433e65fa2abaf750869c3bd083b1e7f7bc8386d262ffaf5c420e9c496c2fa659a2274a915692dfcf1dacaf0a37ce32fa81cdaed7655c8e0c24b4c5107e6d5688a046e772aaa033b530e03b0bdf23a1efe92fba0ada5ad76c4da1b7f9c8790362338b675af6de51a3e63b0dff431736020c5ccc1462c812b1e2b93a6ce875657f5fda9d574fe6e0b1464860615657790fe00efc967c5f5e985c724a3173dc41d40a16ebe1d1a552088d6ddef9ef4f7c8d2cb8811e647e42094a83beb5467c55f1ff8a2dfdb7a76aa78734e0d780587f6aaa7c980152c8157c37d0f2c28b5474a28520755788f70a3b8fd5eb9d397fde56c10222dfed8d290f73f820cc52079cdff12b0017097cac75e61875eb46fd1e9d3c684477e7d014fea97e417e5f814fe5bc5dd3422fc6b317f203a454c72db51d6518e469c015534af673ddd8c9daa78d1a284ddee468064f58a08b94d6b93abffc86a131e92cc2fcb54c7bd1a30e1f880ae44e00e021f6a3cf021dfcf1285d0f7f399c70bd52d55c8f57f75fa3343793c1872f9d82ec60bd0c9d227bd6e1ff07732ae3eec42d4646917ebab9fdf07211032d590e356f007f7b9998138c9b020807f8eb2c09872a0e96e8009aa5d2b654f9407e049361ae732eab7f36441fc94cb98ffd08029786044a34600401de6d4138bf1401ad77b3b5a8982c08a479f93e810de6d8f44ed6c546e7327a4dc7d0fadb98ea126170193c8a7032d85197c774e9538a3da69f6b19ca9389913941a80974c94571051e521181680ab98667a99cc57612807d869cd5e8073f0050066d1286896825a99c99abf80bf20d1805d7be80cfc4ddeda1188abadc927902e0805e4c5d93d890d670ce66488b2e7435c4f50ff154d1615e453881807a1ed8832a1e4277070d9fa54e0d4760dea5aab20c41607fa7048355fc4d68336c6a660207ee95b9d366900b523487f553898cb2bc6ffc3d3d958e21ea20ff620cfa34291489c8815cf38c35fe7d70120bc6afe245d9462d015b8448e3f6b4725e95b91633ac102b7f426e18b550f22bbdebd2d8ea0f9073865e471417d52eaca57b7fb4b53cb56ab491d94ae1a3134767b59972310f07f52361b2d89e236a5301b339f549cea0e42690d18bff9b217e29c84e8f40d6903ba72f52bb0b34605ab72d7830c399bca40aae9b83c838b2a7830a45983384fecdb65e77115447ea86ce0a876f19bab0899419dd130b1e2e18bc41102f3aa649b7a12e3289a7abe9b56da2835a0ffaa94d122ffc44dc920ae731e84d7e005934285c30b377257967f741f52be1ec8f99097d813b00d71a14b83ad89c709c4f7ab08057918f16a3635d1f9dd251f98fbb30ef8d8c147d6df36d1c6cd0029fe018d209da47ad6243fcc85ec31b843da574dc7682ad416ba1e60827366cf055f6ea3ced751be98c5025547d612abd3cee9b2c1a990a7d5c94a76b4ddd0f1447791f216101df7f7297481001aa6c7d8a07d686148f91856be42d9ca2c38dceb305851ebb24cbb2926d5d3902f109790971c00b0d21882794d9b374a8045678493454b5b14d4d6addaac2970964443b03e5ab2dbc6193bd2e697c9f20072b64c05570fcbdeb7c620368166e3c863415f254797424917c16bbc0c559c68e218339e58be897ef7480352290037d305ba155c3c9cd0e433c42a77ab3b9a4987a0a89bca1be1a2dda0f3748f2276e83a4d741dd226f3377df5f2b6a24ad67da4690e672b2a28bbca4320338c4e5111134e4d48d3dea06fd3f0b88fcd2012e33dcc047a54fde82ea10f0090374b39c89e5bffb6f12294a4570adbeb81ba71d6c6a08a5dbd425c83f1f1fc7546cfc7d7b7ee3a6e1fc9654fe65080b393d68a35dc35a454487f775621d2e0e753c994ead7a40ce61c1fbc5c1523f882c62000555ecb80b60e1dc2dd4711c74af8e3bcb361a04160cf9e57f2d50c20af36a4f3169365cbe8c71a1e9f11a2723461253ae505d2d80e7dfd51363f26257ff21c7e8843e092f43a0a6ea793e2c48abd04fb5b6a04a78d7e472b65ca3fffcc921dd022ac435becd4e425e3263940c81162d08fc6db8b5577b43dfc936bd9822ffdfc80a9af021be8d4bd045cb9cc069eb41319856bd1ed00904d45f051b460ab72b22b542d5490c2e1d1c1beef6a875cc5d50b39a4ce317162e1a58f059d3ca74f0f38038e6c9f6c9861818f4f7ce0a62d87e4f132e4e35594bb95404c034f96b53bc4015386ad50a396d54568119779f1baa09e8261123c672531987c376b1cb44cedbe5ce2b4ad22687a55079abc6242ecac8d91d3563da93a5151864bdb9dba177db6fe56e4340e2a2aef0c686c3e3f67ca6ac61ee9624b50465e488fd75bb42f06a8864b95bb2bad1508e84507f07d453e46e1d441c76db4a129b9cd55446cc6ecb0ce91a95529349107751af100a205fdfd23e1c1324ac606020aeb1aab1a3b093f9eb4984b4125f4edc7f2452ea0f4248510fa84ddb67ab7d04409957edfcdc9e5ad4cb8497029f347a914ff46844d8b09d140b4104718b0ae18da9561985d8766ce0e3dc0915ca08087990b9578346f3e76137bdba0d9f24b1033bc6ad20eb9f45a759092aaa377bddcb0da379a474a1eb72e5bbe2f31a6a55323267e45e9fb5c90e00416b44638f2709702da460c6778d2aa5dfe6664fd70d50fe51350348250d95620d7d41eff5dbd7c4d2c09044e32500b2fe56385837e82426cd97c2913decd992461cc8ce3e66705dc6b25a4227cd235e57942ad5a399451ca8eba68b7262878d57ddce8a687211d483b5e42c78728a78ce764bf670f7a4295c1b4a97ca477d6b20de9f329dd98cf5861d6c2fd3c394b51b20f58eca6268ea9c8fcfce29b3b054402be9c3638245b06a2584aecb018967ed4b3189989c584366e0eff364b339db5bcfd58f44936566656ccccc0c0dbeb07ec95d2ad16ac7d2e6c3b60300bdd64f5b67ade0900beb80c240e70fda07f6c9b5395d60d5d4ba24c55ef9b2cc8661040592175c765d341aa6fdb207e2a21c5f66a7c0662b34ed952a2b4681ca9aefdd622ee34549f9b2201e8dce34e40ef927694e6604e87bbfd10a247eb968c6b8c623834fe2f7b884838ea6d0e3f05f209783ede4b7c041e368b05af215b0363240b5896fb467cd449c46d6680ab0514af4701aed9ed2ae695bf24bb64bb63fa900414a2603d91312ca25e9290933bb76a3ab2ebaeb6e976e76ed46775d74d5dd6eddedde9deebaebaebbddbadbbd3b4d8203752039e8308d3693dc4f4068d8deddc664584d8e2c58d191da2d3936a4ff812b9fa514cb31464b85c4efde78f21aa02a21451be64d8c8667261b0921c1b49339c9e31c9f411603b4df084506f736523e9b0cb251aaa9169a2d23172546f3bc744debf1a0ce2b9cb0775716315a0ba578d03f53eee07d25e5658cebd43b1d9ed4f950f3f8659a81eaa008225edeb6d224d441f9f20884700ba4b1b26d6c3a28498ce687671547555118bcf44b58bd1c66418cf301bf964171c76427cfb648d4aba24670471af8f183f7e5e4ab2ed25318ae7baf26848975d471de782d361c0f915c7b9cb7b1c19331b023fe8d5059d16e18641e023d0383f426d7468c3f4eae7b8daffe42040bfb6d0d157286dd42dda6ea1b4611053d77cc8aa6a0985c214dba54d50c0515dad06b457b0097bb7c6641e7c164985534b1cd493644634e0b25bb2de566d5ba79089df5bd643e7b27076e5a5c5dd5f4748c3290bfa6dde475f6ea987adeb059fe23170c8e2076d001689106679a2289982f82493cf13acb179c015c5e04671a230c9357d7596e315934980108b23edfd09619a3027316679b6db01235aebf5e721c5749cd93a956c0541b674b8ed4e61d45bb87d052503e2b24d6a1ce3f07d9101e7ea5a99961025bd61254cf91383bf34bc40eb65295ca386b07c6d2ec9a1fc619c38b8f337f283a0e6225526839ca38c05ea12c426be8bda4cc91b394d4c97a91d2e1bedd214891dbd3d042a2021141b985ee9e56644f6418cf233de2ae237b5a4c616f86719470466e9ddbe05f5704d774d7fdb045126b947bc37ebcc686386314a54ca556a199e1b5d9ef7cca2c299db69759c30a3acbdacc4cf7a9fac54dbf39069b1991943b16e853c5b865542c48bc7abd991d0e3425cd6ed5a0a55ab930c46e3b00cdd2c44c62f7e0aec46205cd9ecdaed951d0429d2c2aa53aa20109a3c3b2a68265d00f58b81087782e7f054df4363666b535af4ecce2d4a8ce6fb64c23fb6694f1619277334ce661c86645b2da4b1a9d86d687d64027629a526fdfd94b758da247e25c56659e3e32a990d734bf0fa27ec688acfa5f7808855b3a1459e0dc99ba16ca12efa674aac17355a9e194eb2d0565c27c2f43708a8f8f160eadca7d6703854af46195ba58b262a756d9b8e09d3abd4d203ce15507862c939002b306a8d05e9143ea114d5ed62e934e6e627ab03594106ea74a5f8da84b0f3e245312f1704ba9df3e598176cc386be30aaaaa977c54d098bda35013570a6eedf51c8a8a69164276dfdbb081d415c6d4458c4748fdd49dbcd9a9b7e12e31e428ea3fa114e6103eb0b0905cc1ee1cbd342379523823b1ca1b2dc145edff7f491037235631fb7962b31f117e3a9e7191519cb428f60ac5b61854790b33248662042678d04d8f47d4b2c184004937b870df325f4777f3cc9c3f332d389c9416870b37d51e33f5db8abbfc152b5f0d8dcbad14ae49fb9be83ab504008082a09827f34072f547b0f38c367cc2b1b0b850d73f5a41ed71380b4dc679c0c2f993639f6b7c156bc759f972727c270f3746fd9af245a83ffd0ad97733305144cf9e7c651a01aa7fcb29b241814d065bcee7604c630dd712215616decd14273a4d5871244d31ffcf635a921e47662e3cf1fc831c6bc56c78f3e03148ae46e6c145b8cd096d33a76925e48682e6aae175f6718c8fdbe7d50ce39d99230ada13276b2b961e66317bbce169f89b60a2f3e5cd90698789a959ed71b47a0cd836ed0598e29b00abe28a1bf54ba87dd8bfa93c6f9d1862033043ada2490ac89839697881f27bd98b233ba7ac0b010594cd6340813e3b036f2729ce365750a8b4f72abb0ec157afe221b6158afa7f1e6b946adf2c5131928b0199e4813f19fc2950789d49c8a4a921191bf0d30532f72e428bab4b241b2ec2575606b14a7449bb83b20173155aba302b80c963d602cb8a1e35d3a83c8db6e70ff3cb85fcb0e73b5c3d8023459ce15c3a6b5ea3e999c2cbd917ae9658d71cc53aa11f554be62c82f50c52b77a048a07e491201ef8163013340c3572966c0d504b9690ea9c6527348c20c39d4aa1a884973f43c15640c5728a14b5053da460998d9ba922ff8d4b481b87d07190d563e87c29786e38cb098232650788fcad049f0213fd22c660bd988529d441612ffd4f975350c7a484f284416f421f33f145a361404161e51059380e2e5dc79cd56229ea835bb239861cb1473413ba8c09cf16d374cc0bf0e3d2c5e464a8b7f868a1cbd065b1cc5ee2ccde7d0ea413b29708d2e89fb8bbe6e5204890e61766cf1a0653e2dc9a42056315183fe70bceb6a544572ed29d42e2a784296c1df23d85c48b031959b61b0e005033ef48c958eba75ed5a369b9a105e687bd0dbee91e3823bd5c0faa4272521497d0640a6d04f3242579219541094e77404416fb4a73b8874a007bc0516fc83261d9e2a867102152cf4ce677e74d133c4cbba7163102ce5bae382eb415f12acc8916e7f297f7c2a0416061d866a3a32a8cb783b59d810273d9bf5c955a7d0fe5c68165bc7a834d93301d4de703c8e82821f6cb2aa6ec467114142571bf4ede784111add2727e484f63a1bf871c7783079c2b92ea03b1117e1965427fee1c4b69c66811b433e6673cbee44ca16fc8969e45e981cd3548de3d57b7bfb8a95c68c0dccb6857c6932a90c14a9a22fc79ac947ec4d89ffd8e27e0f155633b3e4c9d821f8866325d62282b20a4a6f007b4106dfe38aa7c3ee7a07a0374c587a341bbacf28a801b2209f93149f5508723ed064dc87d17d293579f0b9629b5e69a227cfcb28398f1ef4ebfccee3d07daeb9a360472204cbd831b38736f30f00cf484a063deeed1cfc86dfb3931803823728303a8a39af3f0c70d82683beed67121582caf363b9cdc533e0384ba57244108dfa97054ad0bf3f9f557b6017ed20dc846e443bf51ba9f898a2f6bd063ff718d5fdcfdde4ffa4b7f0e266fcfc147138f99e908cc561d930a44a86320d3fc27dcf77c35b23be1ca22ce5985b99c6bcd18105cd668b72f25276bc168a534a0ca16980c3c6805a263b3d2b2aafa9b25ebaba4693816f3e4e4bfc0e55dd270a0c1c2cb1791d21c8543411c716a761593230f9c40f57931c73765d83e9e41edf5d577e66f4ab25c928711abd0213d06302916fe0f4b8a34a7d19b734e7384825d8aa05c6639681b8f327019ed6430d8a41bcec2adbd5527858aa7be19ccc0eff222d543fb176a502979191c743b5f61f6d483fc3d6d1990ecfee0fc3d8e2f927ab0f64d2ec3ac8f9b2ca94da28cd6672f8e8589a54f5fe669d09a071bd9955f6e90bad979b0d0e09514993b253228897d46561dc4a85aa01fe124c42d9c609a3bffbdc00c1fec6a8d1923a8466763ac2cbb0e3271a06ce8352dbbb0e7373fcc0550462d65dfc2d43b98542110d0eff1876218ca0672c7fc890e6b487455ab11dc1d644786bcaddd357c324d51cde128de3bee2ecfd67c5e1b2ee08d5fd5286d5cb83f837bb7b58d4f44c5b7ec0f3879eb9a2341a115b4e65369b28ebd8d19bfbf636f311c193ad5d2e2d7bd19fa03a9705c2705a3dc7f0a5c7be6b45626eb50bceda16acb41c3fc528badbc8a999db5462396ed71795d7fda5eaa7a548644202ae86f52795979ac17a52834843e5b6e88444aee8dde104992e28b6c28ddca07d41714327bdad13590e515055e85308190c01a317b35af639f07cf3e77850f418db51b9423db628c9677c483b47976fc0bb8e1f675de5664482f798aced0c48c4aa010e9c172ffa6a49f5ed6522f2bba011be6b83a65e7f15102c563bbf3c1053113ab9ad14a8c1eae06f6cbd256b517d9309cadbd802ca7299825f25e4ad203332ec397ab056578cfb516430543a5e940d4cc0b00f5c4c54eae30944672d56ce1c087f0a39f46e219290aa2483a88baf9416c9dc90c9ea5209623a5ed606d017e8ad14f6915aeae89d159be3b0ae3cdc196d80065d5db7181a3ad8cdaa2cf8dcb3583b9ebbe863d4dd76dc4804b5134e7db20f7b7917a9bf949b719df2014d80dd86c32b19aa36cba9fe0853a5b4d22c9be8557dcea76d8c110c1bb2c6f9eb0e47033d93ab9ef1d7cb223e78e7e13cdd3feb96dbb98120edf9c2b64a9dd256e45c1079afa2577c1cbbf9aa08e6f59750a76a6bac29b3f92d012cf1dedf8e98621b30ba903053fc2b4abba94dbc5cd59d2295c2fcc31bf40d623f5b1238057e505d93cc5490ed04572bf904740b9143ad31f434be861c181ba3bd79b999779665f8a92a733861cece882ee74a5e890ef13e31443c1672baca02596dca87b6fb918af4ca062c1bd8054d9768cf0f35f9db318e60d45e6fc18eb6114f9e94a3b6bbe804bef192166ccc5a3b5562db665f724cf77d3a106366a14033f64746ef4753ff18133813b6e6d86b2c46090a6a464229bccfc068e54f19cfebf1104436755b9ca86cb806d7731343c6e9131ead2f0c06d1a47ec818677635760294c3be62545096ba543dd663e31fa19dea5782bed88f8b333a2e80bdac754edbcd03b9c03c7f06643715c426f64ac6178c208c0a28128feee2a16df3deabb6f85927fd395bf8f25c48880fe18e14b0e1ff2e68abd45a5c573af218484912892909945a0fa9b5b9ceff221524af3ffb36a28a5b3d35b3250bbc581cbd1ae0fcdc1c185d31633909bce2d9120e1d0be6bf5f268ade5484ccef29aaffce8a68675ccf4a9984ad54da6c1ac7dbac23864ba40eedf76cb91673f62359db1e561597d41230dff87b554f3b6a99fd69e0260dae12193768fc0a842a446f78e4a99d8624e1b41618bc838ad38b4a17b6022db3c0e746089f121083fbc7084539487da398125c63b09b34c32f4d94a5548a0331d0b527d3192cf14c0a8f44bfeec3f187ae80dc463a61a994f0455c941c35a834552694817b5722fcdd28e034273cf1443d331d262b4427a0d0c4fa18f09bd36461f41812bbdb83b8c70ff1969912c0643a8fe2b22645a691c8d5569a81185ca41ef6c7015d637b7da5b69f4ea634d26cb3eb5891ef88978afa671eedd019d7219af4748bf2da31d098036199f3a234a1648a43ae6cd3ef5658ac5d16fb0a2badcdcd13c7744164a7bd34f4befbd1ccfbe41f0037bc5008e71bda682c0fded68a5866c0faa50b4cab26519a0e13540c508a3804bf135f3f5b460caab047ec8e3acd60f336dcc17c09b01d1a2ae651cb775eb81aa67265d06a81605ff6d919bdcb3bc23bda1d6582298b159bdecf441ecbaa98ce47301793f3477865f5827a49ec74b8e92d686b5e46bcb03bf34a3c06c2520708bc64c002196d0656341355140b8bbd97af3fa3d1b948e761c4a908e3576e812bd733c3da7e013e4ae2fdd8e16e6265de282cb8910fbb59f71cc190c8180d6a15f84b45bba4042f811ecf82d84c8764ac8aa3fb04b71a105535efac2740e540d12e1b976eabbb0906ca102db637d9179e923bd9696c04c577a7dcad7d28b4c2234e38ee476043123a6f658c234b7f3804ebc0525d159b0149125f2b802fa85a62650332d87410a6d9da79c73eeac5af77d47eb5d00cb5faeda5f9a91b8e7ceceda5b159d56cb5f5a14ce2917faec604ee7be6790c3722863399cc6816673c31eb6342d71f1bd0d012c4d855c7b121de3f969466c607187cb5bf9070a8ebaeca3eb4a06011728eefc95bd2731ea8c5adc71247d0b7d98b071ff1577f58792cbc1841211fa962bb95bb68bbce4773c14d8094bbcec79de55174c2fe2b00e09224a51766bb01325774bb83b4266d6e87ac5814b414f44d95108488fdad6ad55191c89378a44c3059428b591dc25535b3829826b6207dd3306af95ea28bd7e79681acff6224890792f0167b70b1d27f7c06c80a20adcf44f716aac1a38d79d9b431d2e1580e68f9f763450f4e59529632fa3c7ac4012f1323908fa39446ee86b6130216bad37e43434a4be2e4d6e64810b1099c09316d91d3d4557791da38eaef5a0ef3905ca128a7c3ca43144659cb67a64f5e7b1803a83f1bbbde1d77b92fe90a404ae12f34419ffec44df79143f275d2b0eae9b60209cf4b0b2caa81bbb37018a8475a6d2d8bc2c00937ee1ba7854d6e60fa1bd3842bc09ff34583d880ee1c94eaf9191580587b41bfdcc0151962da6b46e1618dc1d98a8e0a856b79100c6de4e996166da0636235e96891f5905b9f65b476962a013f1fda4a9213489ccd3ba51bcf0975921a753f2793b050a8510e46fade1a78088b9de7e620f66fd093a31b4c4f8f796c6aeeccc6a50aae6876e3bc460fd1eaef9f463622fa8af2bf3088c7e4227dca5e39cf854d18f2321292080c77d56ba71174d8d946903d489dffe793b77ef9daae2a7553cd9a164710af1a70c3ae70a833ff9b81aac21f6b0014a49d0978b5ffc50b7ed894271cab930ef2ba33caf30e2c3ac0c80a62c49c0af627c98e59ee5c56e4360decdd997e1f0b9105210e07fb85419e46689969586838d991382934de7714f82063d3cee5e1a73d8a3a6d812154d2917970bef5669048415d1304a93542057e2543ed39371fc2b7e575b5a9d52d861ff90cc16a95379594b90b1f660747574b336ad870594f2825ebd78f4a6b086173e56046f63a968e8e2e520edf226517902ab5d3915e8c6a1089a2d61309371e8826de74dc372b0053d6eb3ec1abaf518e47c9513bde567f0b6d91774166a6b817660843a9219d43db9256e1f2404a7f56f48776b3c426907b319d63107c24118678e90efacfdf235bfc4e812b90fb865428835deb8aa1b0e3e0adfc019adf98941cf5895f5df72b69cfb1f43f5b28264c4a5bf78e6bfef69dac69889fb44f6db5dfd048351d2c8972454a1d01281adc51a345b7d688be9057fee3e255527861d75440d590a5e8d7c729127abfc9495435e39e8c543818397fad7423503831b81009b97ad0a298e0bc45a17396743d5271e59b409bae13baf254d0189f2e712f1696242843a9ef247074ba7c10e6a03a2a5c864164accb3761f5246f329c4dbf388230ebd6ba46c02db41d736f071c97e3b710da16acd3e7a1ca8a20c0ec3a1c541d97fe9950a7bd5c8bb7ba21595e54b7d09ff3b86a85bd7c637f5a6869e9c09176d28dbec4d826e0eecfe5a5c7d64721a30c47d51223e273919a1fcca8ff73f9fd9933cd1602485ec380e246d2c70681a138e790b81b0f43ff9bcf96c3a6c7cbb3e75fd0bf98df8b2f2b54a01fd9b37f8d9d6c6ee169b462a1616c32712924eee8a4e6b6c45ee22133ab6c292f039f81aa54aab91021cfa9e288d0cf419b19deb4a27f710145353d2ab7cc53cebe20d683fa7a308a7de8715c2f12b0accf55fe1d732b6f687e3bea5cd1acf4c6ca83355747e63d11e532d4a022aac0b145b147ebea99ea8e2b5c1b1eec54e7183f18023d2f013fc61247aabe2feffbff1deeaabb51427d6f6d409551a23ae378435755c22ce0b68bea7726bba7e7d79f4db12ac0b9c6f113c1d0bf91744d6b4d0c824daef291266c2ee79c84e9db68b693f5d4d91d18c644678b5f41a1dc16521dc21d85f0723086e75aa3a3b939e3df439024d20056786fdeceedd833af2345281a95b72eb660a217c29ce0ea6e8704625eb50abb628be4e06924362bc6aae1c7f8df052cc59b83982abd0f39151459235747a87f04438d85f716e21b82f7437d4eeb686735702437edae813302f58ce83aa147e49dbc42555d1371b277c373b48e29cb3982eba61239a0cf04346496dc90501bf02066179cc6e1eb94e0d160ad5dc616969ec87564bbc282b60ff3c135bb95b53f7ee624b309cd88e916b9806280eb1e75017cfbb7a85006897b20d1d845d52b6816c3a23b707a89f7e569ff63b29e77ae890a7fbb9c95c921e86ee638da6a2a70a10128590688738de664845f26aa80edc124371b67e82b39f986e99229698f9cc0eb757c24abac71a4630c21ee5e95311b279e688be54010e06dc000b99c452369f5ddb50cbde8ce21838cfad2c369302167cc8992ab8e122db92c11aee44cee1e24221419726f20c5d752709f6eb7632ec6012148bbf5a28baab2ad959684c8c257f102ed28bf736514f67b0ec7899ffccfa7e00a7ff0b0d8143ef54f952dab383bbb9e685440ee6215aca6e018747f7e18dfd2d61b8c97fb352ec3f1bd7c8b24fec0b03ceb4b117072f0081bf9f81580933dfa55336aab4c3f0f96e092028fb07f93d7ecc834f21f43f1ff46d0ed593c09e1c3a6e2af9ffa24dd8b939d1b54af37f52d3ce29fd63d6fe24ec8cb547d4ee5e66c5d7bd571785c382a11f745bd0e2ff334a3bfb105a8d980f698cb36f3c326ae3d1d905c06ca619ddeeac4c751f9324c8608f38db98d8694f0098dfa39f586f30cec5abf62e3309178cc3f0a3178a16596c02c42e517c16e9ec41ab433b4182f0c569e401e32e13ac2c42143d8e1d8e594087c663324030c061ddb786f85c5286f46b921007dddfbe46a16650e92052516b29f1ba734274819116484cb0be40b1ee68f93c29ef8f7c6f5096ca0abcb944d21cd4eca8a592b46075a838e8bac4c83490fd02f7a355833e0fdd2a1d0676673a042bfe54f472bbf342f8a603a604a70369b396b446ec3692f3add1b3011188b5c51f21fab95d7839310c7f956788f243e013319e5f9becf0eb7b894f59577dabc9a2780fe17877768212182e2d53041f2b74b37920cb03ae78e4102e23282150d43c5951342bc8c52ae17e8f747f2cb4141b5e22a8281252db7098beff23aec8bb231ed93d58eabf32b20d35122ea9559efb10a8bd760a19f9636374b6346cca3fecad346dab783a3af845feaab86037b79f24d92d7ab396e3b01bf79df08697776b02b6fa69cd64c3b90b597b14375a30af5c8f72e49530b747c1617c3133078010f23a32d896aef448e990891377dfbd00a46c01301738fcb0639486bd2d885bc1795a586a0aad7d7c98e210ce1b99e874c15f2719430acd6956baa67ac4ffe8a25c2d7cf6bd08aba1280c463000a4c019895fba519c149c7193c015b5b610bd116ecefc2cc86e65d27f91513f8ff9a9fa98e38c7c8d0a15b4876ac06a6b2f6ddd5d405d58a57dc021fc49796fbd38e86d691670755850b1acd6be53b2d56bd6463666cd5b07d72568064c97a24d9df49077d8e72144b3d196268ac6cd44dfc082821dbfd10f859209e643334137bfcaf81ad638a6f1981721c7017423a203eb53ab2866044b0933281cf54815b5b1b0dc0e3551c73c9cc3e3310a105cf88a6a91041a4291e1ecf777792a83da00f196676134e30b4b11c3c29c20546ccd43969ec884ac3ff11bd742fd748e88559f8d670e9a44be8904cfae05e188189c54a666314a38700d3e4e5edef68b6a7b400da94350ae7194c4d0c501f79cab2899b0bdf4cbfa2a93ffd083c79f58517063b9e9f8440cef655e32e5b166cb91eda4dd49c5e3ca2070786f3245521d0b1cc73d4099b19afb5b1828e2843453889ffd18833906f0156afa39e6ca875f5b1dd76c9917ebe9c66cc87d60724086e6790032616ed9f0fd9fd89d2bcc19a865b539e51ab1420b580d1c9d49d2c394b5d45d34f78db5a48bc9436258d32b7f997074c85b93a6f622c70d01b97770b14b2c18a890d1e02ef45a036201fc05d4aa25a95b916bf3b47ed359ea0820f12c5696225c5060d18f67c029fb08d7755dfd8f52b01a6ea36e402488a7c4ca65b54e359654a813926ac0f131152c62ebcdd8ba1604aabec37464a820e0a02855d08f40f9d1976806c205d31c2c68cf6b84ce6bff09443d3e9d81bd5ead24f8cafaaf2a630ee4acbe0b888df616e19d8f9bbeab1fb466554eecd6956606cfe809238c508f7fa4131237a9e8c5b9f2cfdbc3182f73964b337e9859ffb001d15f42b7b97671e9a8f036e9855412dea553f4dc4386c9d4346240304e23df3fb4a56b37c3b80f4ceca07a3227b2aac9e42fb84daa13520adfffacf82374f6d7bf6f55912134f4d1649282c32c920f03096c37a3217e8e7d4295604ca07458116e4428becda0bde8773c5254e4ce31f02d941a7e226d74bd6a5027fcdea7a1511d0414d441c0caa4c6b851632304f61dd1d019641802e0678219220b547b412187185899a9292c6c95571dc9f72489b87eb9a68069aa826eb808b57e5ce5a67a84055ccc8320418b7dc6ebe33f42d68d9bc9db19c8483274b665a8e26820177457ff7af50cb0b4152fd00789919c4f4b0195b9d00e9a7e10f8edda7094ec87b24273398049c0f65a26813a3d96271e13a80901e52aca8cc7c806bb840274ca1298921aabe362cca759e7a8abb82cd6d62b1de881ade131d4c0796efedfe001ee40cee49ff17e9560378db0404a8f57e3457ada1cc75a4fd7a310c542507509a4b04dd77c2b9d5898b3232155bf972b9eda397ab74a53a83bab85cc1f18e41733d33f9fc169e9bf4cdb18e1e79f88d9bdd5adb87cf370f0ab386f109e7f813d673b711e89e1d1418976a802824ec8b0045430463e7e5deffd417b5abac4a4cdecf2b0694235e0a6c055b10cc238c9070d9a09ba1a7bbc74624479c8a22a5d2569f3644905cf728139d6cfb866696843ba019249dd6371b7dc01d33ce8e872ae31338c6c378c73fddc8c3e2476b96930d051a91b9f506e530a820324d4191db87c1f08659cd091bb6835bba2a6f49336cb031f46a48f0efa6574e073aaa94c893481377f42df470d073b592459934b599a5d120895ee9343a7ef2bd4e9f02a219d458fc0c065be42adddc5e501eede29a061805fc242f8f322f197dcffbdda159f81974820b235bff58e77f2d9b12ac8edace9dac12d12428c19f9e44fb77614598d158760b25d1c76e11887945e8ea396d5d797145a079564da0aa98dc983305ee396913be7a4e3fd9d9aa9603a0c65c7f291ec8786f4fad0b1b91ccf392ff89f47a13bc6d49bff5f37796ccb425fcf7b2768bd824fcfff24b803158f31e7ec0332fe54d5052f21df20911d8233c3f88559471479fd12e7d6091a7ae85876c428d138b797d74f4fe1af15522a31fd2b1dabaff6d22edc0ba6dcbd989abf3a36e0132613f86c4483db876617b046d9139a1e5a2722c8ea9e8e2d94f77cc1dd7e589b736f6696e8f176ef9d3905ea38c50ac64d630777f9fcd043c2f22a32ab3e47c6f41e7218733ae61aae563855e87a81f475783a56c180d9196b0cf56e22aa8eb455b2ac1395b82b21542ffef7a8cd1838a4ac0e187e1cc3aa074473958202e1a369c75ab4056803dd4630a8f6652bd91c8bd25c3da3b222edd64ce1003086ac706a592e39e65a17d7fd736c7fad76e1b48bed91baccb9a3b6113b06991f33c9e231a963abaa802a33fcc7b223411ff3de693fd141b5999ce886d0f6c8c42bed24b6115827dd656f30c087b382bcd6bb43a4e1403e227af5bf4efab0264f7063ac2a47715304b2e0fb9eacbf3c398d8e312bbec5429457d35258562d395db0035c6720003405f33d314e2c311ffd006814f7d6180d20e31f6fe9f318f1b5a810dbed759563e3816e69e8dde95b5dc514ebe430d445f31716d039d60edf9e85f6ed79673b9ebde4f17ca28806b6d01fa3c9e9e61d4cb949d0b70a09969dfadfc2f5f555d59e1b909f6f4ecd38fbecc9c0508034b80a1027b4a5e9e3ce8b38cb920c66e0e44053025f8c084fdd8d670be9e47e200c64452d9581c00f80772fd7c6910901bd8fe4e129bef72e8b3114a168a63878daa8ebba4d62720d14a9c85a3b7a05142504ed0e3e8bec702da8d283dd8b20ae96f061b07ee831a5ae433de991a23aceb4c5bbe7cd27d7b2fc759e58b66ef5de038b2d900cb3ac603b405c34b462c0ccaa9e7a436bd6fba3dae8c87ac67b039fdbd218c2fcac59b8a23012a4688c184435e15fd6aad21c037a3c34e8f17e58fb011a6c705b6dc798bd4f379b2e7713c02f685fb7b89f30354358180272976ed26ea4087e3f6d18ff437d4b1bb4b1c1f544a4843a96733ca7e6686b83919077b3c29e709999b285671d0d631facf48e44f2e8d2138a648a0d872de63ea95e9751c7374a09503378bd9fe10c7c00a103adfb53fe949436000c863e09102b12dbc021b1afce77aa1f3ee4d7def5be469799e3011e5eef56251c05c5e06f6a4b9a575245a1196d8bc49846db681df11be58e386a4fe1440a805bc267684eb98b72c0462bb14300eaadbe0d436e3d41cb45bafa9949bfba1fde70d4276df23a22f8a795efe3d90d604a97edf0da013b9a4a6f4a6e8d0722109ce27bc78f6d274eee0c6f28518cf5c2e8447cff6013cffdf73a5fe25cc5c3089351c2b356441f5f294ee120556e797f153e814f832497fb82c03867488f9ef443bcf45f9790ac839ed4caf581a8186d3522fc80e07da067096831fccd7de495f5c9c0bf6707caa7c0be34d2e0e06058acc11f319263c59a4e0992f8efb50942c3f9c3777db766653ec5d28eb570ff2b33d795e2f7e3f83505aac7d73680d7065d46eff22cc349b24a60e2d5cffea0fa3349e04a56b087df94c7fad589fb93bb747a37b2fda19a1828504d293e0ea1c93b023e80694120be5e59c8adc95a555e036da2c075996106616c8b8b0c517c82f125119f216e66ff2a0a9c4d4b83eb79fd8cf63584909f8ca076e29f839aec6e81398ddf87aa0f6e3318673ddf6539e83a633574a3e7b595dcbd864d2eca37221b0d5217e66333f77ebb27e26e4cf29d37e892efff891f6810615cd239e1e9ea8b9d9fd38b9e2ddfab8b3b02324e2b2f5beabb979cb6b2afea4327d6287dcf70284758ad6c407a7629e1ccd46c050b91916b49ffcb4459b2e61b4b4ce0c83b2f69bcbeec4ca640123b53a519be9be2664b1023b441d9bd55d00be4073b1b5c13bda0a92dbae2f975ad22e2a2f893eeb4306c865c93cb4cc39cde9120b1186166c9d127a6061a481ec723836f43b3a50ce723608b9c43f5fe44b9eb2eef5f6b6d2ebe413f5debb1e28abe9db4eb7ee79a99e34937db9f26e24f48b3155c7e5e4e840e275ac0f0e949e4f98775f1f062c965c314fd4ae762f43911e3d0f7ee5283fe111a24e360d5d9cc1d52cf0887154c00a000248784579d89d8051aadacffa90e5d4703b3d6b369540d5367dfd03f3d2f6110306eb780732a3cb24b136d44d37b103af05a585d7969e94aac528d1bcedfd8b8a22d34811df02d4efea6229d6ad89fb00958fe8e39cb28b344b80c953b9d6ab4c90a89f76eee7a427a5ef40aaf6de5bab90016bd2c3a403ead24a5fc06d6a20e0881537b96f0f6218b1a149145c31621f4cf31c3eea691bd6d6d64a922568d09414e30a8e9de6a570732751b3252394ddecebc2b9b795dbd007c74fd4befdeda0baf6ff7858a1cd6362bebaa890fde64b54d113e91ad127e03768e6b6d4cae80f74f9ffb98540a5c0b3e242f56b4de2a037979335955aa8603a6bb60729dac86ab8e68846cd3545557b40f7c634091b28ef496cdbb9ab5f3a5b83b6dce1552a466112a867e08be2c8e35e5a74bbc1f33860cfdd3c79140a08ef279640c4fba45038d51bf6472ea6f8847fe0d1e3b34a13d1373102c14989aa76e23d32a2606178e85f0592816115d2908db1a7e469adc1dcbf052f88b81ed777aee0ec3c24bf7d468010fa26a0680be1be167aed41add3180d32134592bcc50bfa57fdeb4f8dcafefe58aff9a85fbddf829cd651ce15bbbd2dda825775c661bfcf47a3e4dc8651b5fde3fae6aedca43c84e987bca1a5f85cb27f9e20845adf423809c77e6719a993f0c2d224bfd14a94544961ad0c658d546446a5796457a454b2da2ca440b9b3825e8b659c11250d369d04f8f1df950c1336c4f36a6afc5218a228631bebce1dadcd38bf16cf2264554c72660107a728e004eb1b78faa84a83b09714edbb40b2a60f4a49effe65b43bb8c1781f115ab0428ad9f923593248d4a2323830066cd8992a2d23329034a28003a6598ed877025a809d88bfaa7de5339a4ab2ea29b87500cb346d21f8d95ea3b443adb6117fbb0f5041aad9a043680360198438790623e3717734c2aca117c16b94adb7125e1a1a8f37b5e760df4408faa9976a8ca21cdf30fd03e93222c81c9059b0395b5ac8ce769c8110744b1f42ece227d44a75e05fff579d31016277b3c8f4cea6daaa3cd990408cd336176c4b43754b81142b5acda8ac352642c70193161c1e2274462aa9de683f72e82bd2d3fd783397889bbc65b571d4446cd2031fd9fb4c8cfa843fe70cfb884a35c6afdb144eca5e9ca3fb61944226436884e7c7c9a36405eb2e6aeaf2b1d603ceca406f0060849b304a6657d00e4dbe6fa76ab5db7fbb7871a59d9a0cc31c47ff241a037610e26fc13f6cc76ed42fa47fd1c96539734178d52364021655c822273ac7ebc9bd5fb67b80d2405d3d40fc0fd6e4a4f9ae6eca87be5234f1b0e622ae4540d9732c69c1c6bc376a83a5f592b2d321f7ff9e7b0d8ad24fe8ea2fee6a4a36d8557058a3a0f1c4633fce24e82410787052a34133e01e9e7882bcb60d847171ebc1757b858df438322b059d3ccfcda5d49e50601236d92b504a32f1651285686f7315d33d5c7de84946e5693a285aa51bf56af0f3e003d72358c09a8b77c96d3ee1b7cfc9c40a0a32820d84a74fe6ef7a7e64aa08060e1520e15dc658701e11c148e4924067d7f2a1c5ef014d0bc7f6e6e08cac4a7693ba798b46bf5b590924f3741c17d5586c4787e0ed2123f4725f16c78ed194e12a3d8b293c44cbcbbb98fcaff5136da5c4e1114ae7580d52cf54457067154edd40927b7e6d4550d5f5c70df08fd3304bf63cbe66bae7c1d3094317787a6ea4ba7dc48efccff8a6ee06339b86a8cfec13c5faddec7dc4a2877de40f87b961abd7dc8a895ca921e2384a338854a9a5a9a6e56720296d4f248fa2ca222237818bd9c6ba729b25861127450c81f6542360f77b1cb8def2039de2c8d2876090408fb92dfc6560b535f4169eba2c212c28f2e178d6a478f9dfaa2e83f8c137639cc15245342e85468610e0dcf5d8fa786baa8b387ee1691ddefff4e7cbb6856ef64dacd8ad2e229d66407128275dcb759b1bb032aa86314cc6fc9c2c6c74055d730f62d803d95435a93ff10b9bca7c724c3fb2bc03e772135edf385c28abf9ca510ece80eec780482e27ba888fb9dcd7b0f0a616fe2c4bfabd7d5017f00cd934fefdbd96f52cdc2efac168a8fe072be0f358f639628877b10400172c97892e9b365629b57d3b024f606ee19bc1e3cd3ea3625cabf3a48a179c1303a843c141784ca0c46a0e255602951cf6b419c20d93397da37f30bb709383dc189693b31a34522ce80f5cf4a95c38d4f19825bf30b14fff66e50f8ea4165d9e9177e0dcdb0a31fe921339b006a127be7fce2d20a03996093415ad7bc45fde949d1e606501d7bde5425df082e4bc55921836cd7bfbdf7fa44941dec0a05c109e590ba2cb36e6e36a9a66c11d3d03868c381a0faeba289f8a51e44b32a6c802c5b1a300d10730418acd9909120241f765bf8f43b39baebe5d18d39305337f93b67e056f17c495f08ece2d2b7ff3efe637b2cb8811b0867f2b7cf34a7ea88ce280c7bad93291eb99efbc651069176f2a21ad8365d13e7c8717c488c14671b42f5b4de536dfbbf8914f5e89940e8fe58ef88a91ed3332cc89df31be926898d33d4a0463349b49303aeb8b3ee0b1a1b370cb1e2e06510b34fa96c711fca9593922b0da15f0198771e0c4d6e4c37a37bd3cde0dee466b837b919dd1b6e46f7a69bc1bdc9cd706f7233ba37dc8cee4d37837b939be1dee466746fb819dd9b6e06f72637c3bdc9cde8de7033ba37dd0ce6deb4e4663295b9d7244326015fd22eb34ddf4752d588501913c70969073eee1ea1190825be2deced80cc184dbc4340ac63f0063f7f2a0baf1c8a61628b0216ab3573b439d9873c417c36af9a433705c604dbb96bf8d7c424e5c6bb3ee84d68aaad3fc41ddbf5f04bb930149e63b3b5521f2fb6215fdbfba1e169714f5852aced515b96a4b7c2218fcd463c833fc9c43ec93428268c5df9ba0b5199618e5bc6149c2aab329e1cd31e2828e88a49524e453de82245629f53d0cbb69eed28c3d44fb6acaca3cebcb7302cd7f2b8fd03b14526e05192f36775bee7399789a23c82afef75c56bd38fecfd4c60a9d977296d17b17d487ea222b1aa2a8fe3251b1087b222f4bfef9b9c94f38c21cb23a7ddbeac921d806fa5409e73e4f5caca8b74a49d270a2c6a48703b5ed18a8d78a096af16c4949f0f58c0255cb436c16e633bd33e278a783e45f67eb9bb5257b85c16afa65aed7d127ee82e8f2bd43158d32c7dda23ba3c65c933517749469c770b50c435bdabd72ef63307ccf87ce4d6e74c0ee235e09d519e65460b4cc35f0616a64b4d9a83e2b798150e0879f19cc7ec44cefa0af440e23acd256721c738320cd4accad948dd6fd626291b218675000379dd2a724b52c179d07b88456018b93d35337e500f6df1f10323d4b324126d18a20be291b451dd91565fbcd17426bb77441c04a132ba90193332a941e8cd582d9c32ef5aeedc7371255f22b4f290fcd0b9cb36111ee603e5129cd5ae1f33e2173ce3fc4a817de6e4108475771b5d5a529049a0f820b5b0db5da7744b83a04fabdf350b538a7bc8d84251089f60df16c3a551349ae811840f1a386d3edc6d7bca5305b322fc3f8ac3d7f242a7ac6a0d96edc4f534126ad0cb3ee487608841f5b13c53c8cb662160a245047f9714cf5305b7d99e1261bec02fad12c06bdada2173282cbf12f44b4f7e6ba8a894a78f54232548deb8e57c8cb694b3dfeee52a5865b7f99dafb610e0bb94278202d893f4b9171adb4933e03e5416501249b80d9c845a00a0f1ff7916c84103509194148f058d0bdffe1d44580942306355e9c0a9a1e0a865f970e24d352195aacc68b51ee8f94f251ecb6aa23c40b80e61ae30ef71b7bc8af426e47fd2f3cc9937889586039d1c9236be7a1895f5f11aa052565c39db9e3582c3616a91a0acd9f09b8b1e80f857258f3787e4cd93be2491a4c1a43e182f1d7350be444288af546436c1ab9378b12515d4e8480bb35f16a95cd040a94b7e5e07308cdb4a75413e6fc647060f4e510a87774a9fc2d51bc3b86c2e37db1e6d2dd74f9d0a8f11f2436b2125d7c21c3713d9b5d5b29a390909d057867a528161dd06bb316f9ea89d0c629aa1138a0e6d424a574b94fa4a72f5c36c0d0289766505b51c15e494507e8065492748cbaac1ddb24591fbae8b9508ac8cca4126ac104d029a206267c26b461f6182c020cb69b2d893417666be1ec252cee6bb4cf654d2cd4563388574237c90e6db0ac6e5ca6c784ed4dc1eb3e91bb2b9f0e629abdccbd59b6944c0d72f4e55085fa99e2fac98ae9b9a638654ce921e04d0e2014b577fe03d0e7e7197da8b79f26fca2853f048b5c907775e6d6961d7fcb3cb883cc243cd1e92b68c1f05aac7a6429f40c581edb4517359442d2eb25ceaf2102e076514fd791d3086251122562de3a484617e6d7a5ac72f4c587d758ed662ba61ec01a38c9b76b5ad333eea48bf38f970e39626f7be503d9ef13569f0eb3e5dbd888fabe5c478931e916778e99c9a46ea3df3e04c13fa8e81cad645211f149150910f0064b993837acb894d1e51b23ec36c3c997cc763bfd69f6673b893c7008a09c9030d523fe9243c1aee43f1ba45b77760369e036a0d82f9d1f3f090e8b6f3d4890609ccebaa6d507213bc94992014c96d0df798a3c64b297903307d2585178a80b9d0d40ef41ce57e48930df545ab4d2e532f7812f6802c6bb97ffd44534880bc13df4458e802181ca7a458b3bdc141f49e222109c138b3c9ae865f3a867a9ba9aa918ec6ebc47751788df9f9624b049b00cf0770f340e58eb8b129894296ea0ab247e6c2ba9678b5a206c1162dd8a9b7c53f0c41e060728431f0ec05ef695bc59a9031b13b101325bbe79d9508d306eef0f275e5ee6d8d70c570802dd97c0626f76a964c80b6c7a003f5eda3f6210332a5a9edb8f881c26c672c3c7d8c0313aafaa1c1f045a5d65bcf379a9055e8753464ccc9e0d2ab35a9e56a5f13c2998eefe8dedc4a36777a92ff362df39995811742a5af281a16820cddced991049e292cf0b446470460e1ac7b979f9758ca0d038bed16ba7d8311428f776caa14583d4095ff14e76ab640f6567e2c5747edea0d5bfb04a24b30a1e0a03c1510046932499cbbf04ae0cfb238592fa8952a44de6ccd87d11f0ee9f5b4c6274c5d2b911e42e70ca3c9ab50096d31c2be193ffdc239801b85c32391e95247be0ca28cd911b14e36b2d727c7000672b5d1de38409b827dffdff102a3785dfcc92f2231d6d004995aa92170173bf00ac7a14c81968837c5b37fcf780152278e8aa4e359ebf1d40f6d7032cf6083ecc1de240ffbcef54e664f0a0e7469508acd5643545f81eba542da44df676e696f15e2d4f3ae01d433dde0d1134c8e7d8f76599e0bbe3693e93472acc9c7c36370114be8d5d80387863455b3668938e3f53f624633f3d53e8160c9003de73140332ebb394409122ae3c926b6feac8cecbf7040b7dcafc4fb05d9819d3fdb16d4bee0d549d822e6a702c1fd67d1bc4f6f68541d02e08007f958dad82235dce7d76e1af2452e4ff4dc5d83f23cf87ea859c79918e1a5fb0d8e482ff1f8b83dccab247227786f4ece2b8aea60ae806553804b23edcb93fbc53d74ca32638e2a77238074b58c1e66ac23a8c36bd1f6c13758cb35f5eef6dbdf4902fa5bc2b3f6360b9e8bd81bc40e02d1a0f40be9357b5997b4f13717c29a262af246488e9fa70375d3c8d87439c2da2f680425f3101881e4a42dc27eb9dd86f1407cca48d09c4e27da27408f0ea951b1447ef4e119810e67e5104c2ecf1bd90d54eb64201af081c39578d8a0c0002700e9b8436dbf149cd2720dc1582d245cb06cd35b94cfaf5ca7be4aa839649f850eee9b942c49a02b5fe63732cbef3aca4e5a42377441e7fda0f80c257341454c801c632fa7fdb1ab9a702d49b183f47a51607761983734f73a2f714fbb1c1118b44235e96ced5e8150b8226ca65304243b62d87e0fb3472d0618fac76168bc45d3d284c83d0cdd09008971f05e26108866db4cd960550261ee5436018698b15ddeb049c6dcf6d08e855497268b28feed4c12b652036cbfdfab2cf662536dd8316b9840ad9c1322daa6743454a58d76d4432a03bd3539041f9fc93f912a56de478ab5a94e193caa12e1b173ab0baa7c26240a878213b1d16674e6a204fea7048bb0e4670bdccdc63b0fcb952e4ec926855e66ffa4d1dedac06381f595eaf2d0315e030780584c4296607c81cf68ab273e0a504e2d4de6ec0cb64b2000f6f93478933145d2f957106447944fa2aa3429b2342a41647a486ebd2191f531e58379665d407bc5a6a72c1610a8c9199caa1b63cbb1dcb8352cd5a3edd5b1d89cdd3ae04d9ec89857894d5244e0336fe4522ab9df0d8279b1fb46735c6d62262ce85ed401ffb9c00d99657fc684c20dc51e8504475b60f5bb4cd77240a5b54cfe7ae63d34debe3de32da7ec700a427d01b5500b5783962c5ab56df86b77c0d671ccf848a9092e17629b6a6f83d98013de1b58b0761a469241da428acc113bec03d6d2da0f4c688cfcdc075c27972d1561f79cd20c341d01817d0b0c5a4975619a0724c1b27c0b422421da577304ed31e41d764f458280a1572eee81788b21f42d5edc3d9214dc8bf90a4ce4db411f0720e5b7a73564de996d5c20fcbdc9b4d2a19fcd76b3832b150a360804eb6e016fa9ebd4c0511225e49ebf214c652e8e856fc201d6c65926dcae519ccaf5b31c2a4397ea7c21bdb25ea10fd243fc4428f9555c2b90aa595f5773682297803edcd635cbea3893f14041435a5e67abac997978ee03e3a0882599a0fa9b088e5acab8fba5fee7ba8cc6b8b032223bbf59b59d2371a8db5040f5d7babde3c3c88370f490001d7f22128b812cd31750f66065e7687d5925edff7e81ca08feb40df6e96c37afd26eebdee22f18019d1a90f35367d847110ea804b9527e1cb22a2b0ae70ab280432e0b1cd29c7ba9beb151273be693f951c0c0cad6ab93fb25a5c2cf42fa2ef36f50e3beac4f40f8665cc52455e770b68fa335e8fbee583e4f4690d89b030319f70f99a0c79b83bdab2ae888b43e42f2f18d7753e6098600955c371ba7d32d8566cd8248ea7a920da652b788234101c3ad084e37f715362c754ad809c150d0e3a944c675b3d1957b712844e37dc151a0a9167aeb4f2bb7fb56ea7349a6179791fdd6c43f449fc050b52ab1e548b16866d0db8a4742d9eeff3b79e87cf182b63df9ed233cae5650d3c5d784fba64c5d6bf431c7238a067db7382d40083233872fdc6ae1034883fe7bfae8f1f64cc8664d988961e0f9ad3ed902d6328b05de961065e4d0521c55eddbbf874186a7856243fdf7ae4c2a9c76a5974216d32981ca565e9e8f52c72495e2e63ca647f9628ac117428864b4c8a9c33756fc1f94541a0bbe2d7e848319f3f04ad0012297262941912e43ff15ecd2f5040179dd206394d3771540c1bd556b60a51d1195035a43ef010edc1a10c46566a50be0a4b2e54867fc766870210ba43153dc2294f3f69191e9f534c997f367c10a703adebce25ae2ab2170dea54022fc69f78720d764f336bcde65f3c05cbe0483e4366210d34efc78a01d47d55bfbaf3bcbc0860694ea4cefac82789cf3846f704bdc02150b4e505facb1ed6b5ed14833e327083f28eb834e6bcf6b19267ba46824dce0f025aebee3f0cab6777bbcbb74ea4a8f29662998e0ee9cb6cae95f7f5d4bb03428691b0cca858439554df7af5d76e3dbdff415ee15a2f827a67d28ec8fce1582fd958a4fbaf5e7a57a23be2194402161b209b6b0f62e461a743c5f7b5387604d26ed12069eeeb5ae956be91fa41a9ac9a31d77dbc41d6f73e640569064a68c16a5584ee4f4cf60982eafa4503f37557f5c3491aaba2ed02c402c83796f39622a59dae507fe285530ba806c92e830eab45762dba70bf40b2a08214bd8ac19c50ef87dac819bf8561b743b527273d320df1ee66690072b6cc88d25afdc1a98636bfa050e3acb734c5afbdbcc0664c4790faaf9fedfbb6d52fa9af3caf8dbc08d2de9e1f68708692530b5377a99ebb77aabc768cb7243367b71317bfc906f54dede2dbc81482358b4eb8208b7b5619394397489c353fbec94e9448efffe93c4ec55737e7bc28cc526ee13931667a546b400e3cc842c7e32dd61525e2842d92e22d854c026b0d127a8e77ea1c78103aface5d07c09cfe516255b72ec2526da5a560cb32ab289d102ca1434f08a24b0493c7ce2b02843b269fe0a7ecc34670cfe867539185bc6f0dd25daf2d964874463f37df06e6dccf0398af35928605fd07d671929e04e552e81ebccb2b65c4225d9b46f446ccaa8ebdfd93650d1616b12bfa988c05d8e374d09d8d262a86e7d1d22d203fd3b5507f488a1fe61373ae9832b91d813566fedf6c80de8de889e79bfec85ebc06eeae8cb563cbcf154bde6c7b96486dedfaa4fd93fb1fa9aac9d18756ccf866f135e92909a860985d4502a1069954691abbdc9542c0c78a029ea304adec16513db7ce61581a335a968be8cf1658297da53298c8dbc21029d026430669be403e38894204ceb18e979a8b5cf070caf548b539e3a855cbcfe8422c60028951cb8169e8ba6316ca225f9ce84147d7453903d51c6864b9c9090b1753c95aeefc0c30bc619ce92aa5eba84643fd2412187110454b9fac833fb9018a5b0773ff4dd042c4be3026b033cbc8841b70e7d363ff71316e6dc9bed266b77031dd9ef194b70dc2549de163223357a0e065e0e6a793b19935b389a267acc76c574e09d8a5a451f526757c6f0ad3c4daa3611146b1d6532de35061cd79e59e1cb00e934fb429bd99562ddafee963f13460960bf2b00e3c79c8a5f64af96cee2cac934d59773b0557e2083096c4964eb2132623d5f61bcc8b3b679821d996e8d4ced481022286eb9e85afda19c63550e250a7d422f5473802b648b86f7c730d3adf6acac194dd0d6e4580c2a86e4cd2559cb8184b79799f657edd33f76880d3bf4db973ed08fb8ae8cca5cec70b157d4ae38e5f77c04192d24fd71092790e667e94e600fed40a4a2c7a8bf4cee0ffd9c46c7be5e96f122691b469fbe6145302e4de929689b0da3ed2773db6dee5e531fe366ce3db600480b8c9900f8176f3bab96e7c790515b468221d0b19622b7c2af0ccb1f93d420c8222675d5f8f80bc5531b785d19eb504d7846322811c432a90945fee6dc2f19c2dde91bd811adee19410e5cccbb31f2baa146a5da1be34185ff7f934cdf8c1e005a948ad600e553d9ad4b3ab32f1368077386a5ee093c379c6480f2e0385642a9bf20ab05bb92bd13c18f82b6a1eea06860b125b44c61316e091d7518ef76e45edcf99ea95261428696e1e3378ae11b08842a024960c7e37a8af150e917832a5787b001a5d30ae14b1db0b48bab1997ca77d0a490b6bedc972fd5f39716bfed8bfbc583636469f9055b675f2eaeab99e56237efc6946d8204f61bc69a25670414935c04d777f232bf22f77fbb73d054874c661c13ccec0446c8a4ca96d404faf38e1798e7eba873f3adcf2c77640021438d708ea73247d627e32e1b3db05562e788d85e408de60133533cd18ba29a436c40092d5435e00333a54b3848872e3b76fa988d7b4d6c7f4c1a26b868fa161e1f934189673bfdf0fa72a43a1a8ca9bfc9057f0db7d51c2247976ed0f13b104d1ae9897d29e4e10d2b1ad65fad9a9198670a48b7623a993d0919589a808d379346c8ae52544e60d92487e00a2786446184b202e20c74155791777609e434e2541c653d5eb456396f855fefe30d3d619127f2672e159e6854a5e1bf13a2180b03040661f8a10da72bbcd534c02b720c9942a20815a9fec38e8f2e88484a5ea4f9e3b04c8465f4184f2594c16703136fe287b11e6d5d5a81fa8c03b399cc1859f5afe87a5c445be49af76603651b02b1b5aaef5fff989dfaf70430f90eeb9594461bf8e1edc8895f1712216babe82d23b2635986e30d7a2356350ae4a96bce945a422ab56c0674036af37b325601e3ec563a5422bd407cb643172433a67c380cb39f032e9f02d72a0c615286c9e74302aefef80a7d18fb30a61a98941c80f3b525bc054527b77287cc8884bdb22547eb4b50cb31b23c4c120dba5a76b42656c3707b2ece39cf00b463fb476b380944d2beec09a322b2c2967a4524a2b5529b6b401c3c026137891e9bcaada211d8fc111510a5cc4144308c404efd504e45c452f504d8c2172fa40992a6c261fc8d1cbc2dc872bb14fa3adfc9ca88f2eb76e38712ebffcf9905eceb3c007cabbb6401f7fd01186d74aab10fba006344c29006ab69586f33d506b1b22b2a02c0bcff39d19e65ec0b6b970ea0cffc5d6b4ad2f5b76d1c76f706c0b033cce11c64a57ead0573a2dec91faea1c1307ec0d2335cf49aa538cd6181dc02ac010de291a7980896d8a5b91481e6cfa12969f0a20172e08e15388e65bd1bf4e4d89edf6cd093ac6c509d0a1c2002943f00f772b5a500ad00bf00343434366cb85babca41a3ca81e3868d996b1d0ad7954c2dd57339bdc08801838a9191929941a386338c5483c60ca22121184c0c182f2717afb6984a1d47fae15a94d0cc8b7ed4c08cc333e64c957196d1a89c9041b2e418319859bee69cd4339f71ce39e76527534e4ae2ba92a9a57a2ea717183124cc4faf5099b6f9f4c07839b978b5c554ea38d2a665924e6e621ac39c734e9e73ce39e79c73cec973ce39e79c73fe0875864c4a460c0a26068c97938b575b3693924e3295d0cc428142a168a05028140d1209458386679686864645834645434aabb619336664a5193366ccc84aa5924c49c6649a512a954aa552a99445299568f55c4e2f3062c0a06264a464322953da66f376a6d236246f2b6dd3799738a84526252306051303c6cbc9c5ab2da612ece8dc142951a07cf48c49272929e92454c9ccfc0beb3aaccf980103c39452a64c2965ca9c514a9932f38dcc06aae6dc0da9542a954aa5ba8ee35234342a1a342a1a442dd57339bdc08801838a91919299b191b8ae649249c98841c1c480f17272f16a8ba9d455a132a5a312bad925acca8183553970e4c08143a562952a078e1b3666aea522232323232323532a759d0c0d8d8a068d6ae8abe7727a8111030615232325336323715dc9d442658a14964ae8664710131313131313134343a3a241a3a23165934a7ac68c193366cc986132954a336868543468543484de7339bdc08801838a91919299616a09599665cca8e7ce70998655cc3a68543970dcb031038b8a24c184a7e1868d19be616386f9c60d1b368814498209323051831a1807e3601c3878b875240d2a953b4a7bd2adda2d220d30060000008001000000008001a023cbb28cd9b933dcb0c1376cf08d1b366c10299284903408212323232323232363a557ad8a3264c8902143860c8e239164d0d0a868d0c4ded4523d97d30b8c1830a818192999191b89eb4a301931289818305e4e2e5e6d31957e5e55a8c4564237eb040ab56d553a8369a882a99324a5610c528e84c44388d0b60112c080b03804a108c440082204090821840808111242048510428c31ca2a766354590f221da01ea3df162b88b6f177a4a1d90c06a50d28af4065014860788eb6548e1ceda7730296a5973361a5ef7213596a20a18c0010a1b354b37c832c717e5b6c816905ef00d77104122b2638f2c788b65008bde434a803ee44a019084df815fac19e713ab7fa079db1ddb1c5281861dfbf0389704f0657a432e49f5b51a91c8e3fc3effe582d59187cd883d0d66fe74653f6403bd8895d44948870414246add68cb1bb9c69eedab8f00975418e7dc229c012f86a64047128297837bac5ff27bddbf114b7244c28b50e5a9b26948e8ae3b7939d0ba0dc6df118d1dce2c5174390e7415769465be5496ededa76381c8665d745cb243445d58f02fac75cdf72ff94592c36f50e19e8cab97d2024129af6e94bd81e688a74807a585ffb622ddb98998432cec613281c70e072dc44715ae5f40f060296e45f7d7e6e51ab75c65dabaca7115f6f4d0b2dd9923e15739e114ed6201cde960b37647c6afa113b03a374b30afd6089ca1739975028f8c1d936080424304835fbf467edf0affae1611b354563d52099a6fe03da5642a0b318210f39dfcf9a642055ddbc0561c30b5a98bf0ce38764df479a5a3aea7ba0a6995c2722841885f31882c7284250a2f2586f97f1ec201c88350ee8fdcc217691bca48d0f30c2459e4c615af89281b9a45cc2a2e40f619b1f1090c020d55e764a1f47f4360302047e5790684b1923cf957c9c9b64902a60aefd404a3a7d7bc85c59e72622c7ed718b6a7229b8e310785601829297ba3384feb435612895c3f0814f19768f7ea6a69147a02604f6e289c6352d4ae625de54642e4241e107b1cd0809a4d090aa277f9e033076984f7af99f42086f1bba5bdd94aebafcbf90bf3e1704435141f3fcbff0b87d80bd2249903039b4cba6510ff65b511f90b0ff07f897e6ab9c07614d11f5c1929a2b19b6d335ef89dbfe03021218a5dacb4c32207ba9d3ceea594c625eb0860460176a6453d29906f5c3922a2f3217a150f080d85e8404526848d5933f0f7e3beb4cb24e801800b8cfc115b603697b692d873132a24fc7188480508dd9faf62eeb4982dca2e8421019d9bf097213e5a64e190c63bb47013d6013a3d767ab00920bb7a5a19fb11dd4938021aabd4cc200b5778aade755b0d42914d48a7c8a6f8ad10fc0c3703ab07e8ae29624d60fd2f45bc6e9c37de0e4452738e0e2e65f1a076b3d1915d057090fb656d15ed3ffffea015cb8af8ecd76cf59f22e098f5057eb439626a3a160bad24197fd20b1ee52df69b1f67110682db92538160b477be17616dacd15435b636216d8002bbf625f7da0b01f60cd6225d0a64a7b6c30a7071739674950afe0edd46a909a3b5d14053c188ac53216d0243064a8972a131fa3fa6f994e323e869a8adf4a28634e5c04559758d4be3f97099d7a13a0aa5e2682959e8b23101782322863939d77cd5665737acf43fc52d3aa1816a126b4c536807af11839ff4159a4ecefd16e49be9b5af4d01cade3f0279f453bd241941ad776eee09d570cea996e9c90bc3a6a84038a83f43c0e65d82ce53e0ec53c882e052da328f86525bd3ca7e1c4ce1fe0b3e22ca91b22a89e4315cccb89afdfc90f04d941b8e0afc170b42ca87443e94bec9d7afb7f79ba2c0990506ce5cb32a730aa562b0623e8a21a0ac47813f7e674726bf635147376da4351547bcdad680cd6b885320285c2a1c03721edf712b8931b1e0c987b62d2d832ddbfc97b8ab8939ba240cada17c39db84944ed1c21b4ce4279090475054e0d859d0f56209c15271d4d99c019df4195112a3138a34f71ae89249599f5a8ed5ce21119b6f31049d68d84f2236bb015054019903210505223dc5b0d41b550ed1f0f1d70ccaef1ec451fd1a7b1d5deda5abb09914608d97befbd03710f7e0f8e0f9c76434e1071daad5688410b96d32e07c5150d2f4a6f234ebb1b145d68786b6f244ebb5a16503c6978df1b0aa75dd09186b7d45b89d36e66d3f0a27a3371dac5a61087271a5e19bd9d38ed5e4b1a5e95de6270daa54d1a5edb1b8ad3ee74b2c9484971da7d54782a6f25a4f1a0e1add19809d623b5aa9ce3364aab8e00bcb402a2431736b4dd13b97e6fc555ed30b019ea08200001805814167b01e6028df5a27ce705d602bb628da498d76e5cc1081a5e1e7ac36a2cec79cab7578ba83f5dbb2aad30fcf4a99f155fa8429f4e67b9d94897be95706a08eea5ef30d2f556edae3c65a4eb7d9dba4262afe009c097d363e4e9c64ee5db0639d34ff7aa3a4e1bdea19d33d2f0d69b9e2a19692824760a4f00be981e234f37e5a61baf5d598508e22a38c72ffa7a4a64411622bbfb8ddf00c2896639c57eb13309a161eea5439673f7a54ef5dd63223c9d4e37586ebc7433770e18e98a370004103f1c561d288a439370dd2bcb55580eafaae385e5c2a64ba4ca5dee3263e53ebc07eef55ceaf07458cf19617ae99ca984b9432e9b7ee30b58f989bb0ce05ec2da7f38775343a4ee447387d5088853a7c397aebdded4e9a6d713eef16257fa8b9de9269c9de0b2e9221eb057727d0a8fb8b0150b913f943090959f3090edf54264735888ec153c63e772edc67bb879f68c5f7588eef5b4f67079b19b711ff08cdd0c5c84ca5958bea9b0d4d73b630759be510e5ea039161596c75a75bc9c85e51a877364812c38e531e585931bcba54b2ec5a981657992d25f92bc979b6e76a24d55c7cbf34a0f95bfd89d52377521ce4eb4e950052321ddc66e25b5b2f2578d78f90dfcf2528f179c8dc448d38d71edbe98f872e15f859a663a7795d78ab310d9a6ab70dd4b97a24b87a6d4b59bad125d4f275ded74c23923dd17552a37a56ac54dc06e950b5fea5e822fed809d4be7809186e74caf9733dd1e1ae4b85b7a59b9fde9e6225589ce37be8285c82edd382cbdbcbcdcee2c39037de3366e56a26fdcb8e86627fa4624551d3f6068f1125248ecee31f1873b3bd61e594d439c896820ab6bef6e86cde10d00d150a72b9402f57a6c3dec01a5e8d3eadae5b4731a1099b63abc3724107dc299880e024403014403f151d57103432b4436107f5507108f89f5be2c54a08686d7d4db93990814bd5dab171c6c9ead1b2f9f91a2f9a0f269057700033cdb021020e68803a8f18c03e619a6c391b34843f56cdbd4f29cb5c994f317639cfee2c9c633aa4fa7383fa45259a752a866b12c7f2c379e51bd627bc5e539eb95d6211836c7291a9e758e47b2e291a88287a2e10f807366009c6d94a2e10b8067240b3e792a7802e09cc1e7c0d936fc0070464df154f03370cee05370b65534bc0ace28781c381f1e0038773038c33869f81a38e380479e0a1ebe05e74c45a3e648d6059e0a4a96029e0ade06ce287814ce3646cd69d2500beba46b892af802f8a0ddc02f2ef83aebe63845678ad3d299e264eac505c595245f4d3028b0242dbfba41dcbce1eb40dc14942dd992ad167c12553c2bb099e2d41c41071053814db9cca9820914164b81cd02b8007cf8f6ea09e708f4898390a747f6501cd92914e7e5d85e0eb9846ac1be1cf6066b112f9fb1fbc202c15d2f39d88aa10fac1be44ac750604dd7cebdd22590872eb9188de5aae4820dcdb84b9e4f628799c06aaf9885259bcea54c4f994ca573a5b33c7317f694cedd88d28170ef892b0e3f1ca95ab9f66de5c21ec8039fccd056aa0e0d435b6bcda9262c7d2a60f36c6d55421e69eb5db07d9a8d5675d49a439a41bad48e2e7b9e55a92a7fb69ee2d4882bca8f28a97fe232a4431e5210d813364f1b1d2992d362a4cacdf3e508e0a71ba4a57df80bac3a7cc08ed80c79a498132b81cdd366da481694f1c2a4385e8010f2acb05c86b006601a88e9da2bc4d8119b672b463879525af4dce9d8bd3ecd26a73b9b94b812c755eee6d2b9fa6038fc6257718c349dbba66324b079e220305db1f4c1b2277602b8d28b2f5a3e00f7c5aeca966c12bb1158d899e2c81e92d4e1812a78f96097339ebe519fd0f2f509905567ea4c160dd2e9acdeaa81a733e31b8c977bad2fcf387c7886c95d7efcc1c6fa19572eafcfe2aaf47a0e531cf903ce5987b3ed0167940f38ff05e76e05671c178daf974b0a578c5bb9a0a654b49c31e310bb5caed2c495f6c43e9deee1da55be69b7d2a8dc3a8389c06acf75a61ed1b019eb03f7d44b4f0bc7cb81c101032b44d94d722b3db6733a9680cd440f0ebb3c7e654508d39b90fd82299702694ccc8ea0cfb839c8d369eca07aa3c5743297b4dcc0d3a93371a572f94a13574fe5cef6e1cad646faab459e8e8c12ecb4ee30fdf4954b7b9b363613c766da4c1c0879322e932d97197f5587cb5fd531e32f61d84c71b697eb0e16080638eedcd4d17076a2b52bb47abe2cacf0a40a26842c01c3e87ad8efb9945ec23975966ff5969ebaaf3bd084ecd2eb5d021382477d09e795d7ab3c26d6598d30bd621eaf57f0129810c97267ab09d910cf2676b0a65f6058d8f38487e2d0242c2ba58a52e16c29ab5a6551f9b55bfae91aa1bd84336cedf5e6592ab1b0fc559514f7d4129c3ad8d433c581b809d9f05cad2b972681a9540ad32574b04fe2a671a4fb646c3fee522697524197dc0cfbe5249819c192ad84b55b5f718cdc1e13bb6a2f5db984ecd27655fe6ae931b17e42029c5eb5731cc771279c21e4b85b39eeb11ea5eaa8f5a7bbd5fa51d551b7d2bd71edaa6c9f2a2a8f2a27551d2a185a69d31b944775b5380ba117244086b21ab175c5177cd1a64d0fdd597e780a76dcfa822f9a8d64cd9654491f2e7fc019d5e169d303863c7175e349cf1cecf61b3849b80bbbde870bfbcd568515561f7694de92ac159c33159c33167cc29847d65a6b8d5588d2ebb7dfb8af5f62c39b69125ad6c3d797e4299397236ebf20016aece9ebc7a2ae037578eb14b17bc559d14eda43bd7eabb7dea09eeb4d9dc226c6ed5770ce443fe11fcee11e0e716e69a8fdc40284b32a72b0dd4be7ee0664a786d0ce5dc34dc8eefeba5e71b7d27d39cbbde1c35579b9a5dfb82c2bcff4855e1157b9ceacdc52ec522f5888d82f2b3fddd81427aea06d511d4999bc6c2b75a61e5979f946b9eea686b0f11a1772358d6fa70b1bd42d1e80b5c76c00c0bc6e0100ce2168d5e561ee7c2e2d2d7948ab54987b123b898474587bd8780d7cfa2665d58184f40d56235e6ee09c3afde58485c8a681314d12553a5eb08d676eb3612316b171e173b941e3dbe46c507aba71f85e6e7c0ea1b5876c1adf286763c36ebc5c1ea371ec64c3065e42f6e9347036d22f2e373eab8e97c3dae3741adfae0dab3a560eab11db6d3c561d36705ef9f68dc615227be5b00e31238c30c2e89595db00b2f21b972bb781391efbf2578d58f98d973b2a835d4959f90669c03e7d059ffef2ed74daa274e10eab8e976ff0f43833d327ccc40a77f85eb8cf976f913bdd2662af7c9b1cc71357999efeb2b26d7809d92bbf8133ec97e7c2714fe2ea84a58f0f577ac161d903e2cee1da8a9dac3971b019f2544bba0c6c71e61ae2f754224cc2efa97ec059a5a18642c17a53a7c84af5b5eaa818dabf777aa5c7e9b8e0605b22d05a9ecd95feb81809afcb4f37d32594490f376bd8e51bc7912e9479c3532ab8fb7abb44a4a0f572b25fd86c5b564893c48ebec166c873b9c166a8e332e3bed60e7b2084109e38970b675cf824763cf6f4ba033ea1382b2c3127d1da8ed0ebe1d5302c1d721ccb73a9b9bfa8d21cf7195914e72d4d71ea57304bc53909eddc8538c334574b37571c04a64be77e6f0a866e2a46ca4d89feda6a9526899da44b707c903ec2437e12e9243c84c495ded2f25775d030fd551d4f425a4833713db193b2259b481d8ec7460dd373a7a1ea8d546959e65ad3e4e8a6b430ecb40f974d746ce68d8f9192139e53dca8aeba096794ea259cadaadeb4ac3bbaabdc78d95c9e7a46354bead9364bea3fa4cea2d2934b37bf9e2e3d74b3119b0ef1749e2dba3a5dfb090c0dbfb205982a74adf0d0a5218da782afdf644f96b1fc49d3951d39d3852d7bb2acf4193abd3ee1f95ce06cee66233ab843c9ddedda7d79e9661ae4f5b4cb5fedb1dd0dbc9ed62eaa3a5e30b45aeae5c6bdb4ebf5c82871c129f81efe6a112af741aa5c1b5fb9194757fcc3cd59b3601f2ed783ea76d7461bece936be6d2fc4c272670b864279b6be90d32be7561efacae151eefd9cadd39d3aa7d924e503e5f717e5426273d76e440672f86135ee6ce2638160e0f4f7ebd36d6095874a0fadbc143abcd9c810300f692e142a9dbbe9ca5887a8870f5dd9039b2177f377984c28f7c9b0cc13ec7a1937f5430691d1a67261b3dcd91bc7c1ca52dfc4f4d09d4df26c0ecb97be95ee6c859e670b76e8c2e67ac074aa244bd766d7cbbdde2c67ba9ebbb9a5ebcb2a47a08cdc947c6c0e57a426e3e9fa3c1b1271d2f5a19b4f3a9de2b887e063247781c07a4f87575b02eb143609896dfae9723cb193a7fbda460dccf58c2e0a87336cee52f6c81ed9237b648fece19efac65da9235b6cb09ce464cfccb2395bd71a6c7ec8384acb391a231a58e6b45cc9440db63e4b267588fad0b50ba4e2147c7d08a750a1d99a2dc9b24f7532cd16ccf54dc0d6ce693fdd3c755a3689ab0da46a2a05918c0e47a1d7ab3da4697f0dab0e4dab5c49a6743500d31003e1aebd9642a520301dd2004c570c045ee51b0ce17c44876e86c9326b51a87fda6836d30b1b9ff219cfb3752a99bef21759fe62fde99aee8b5d29bfeb596e46757dea66dbb5954338084c6b3f647c5482355d1f13e1e55eaadce1e5ae72392671c5c91c0c27aeb0259285728931c172b0960e0fb7dac45a132b4dac3369a833f7c960f7b591254f2703bdde204fa77f9f4c2d854aa1da054a0be2cb4d4f0ebd4276a64b5ab02221e3291f281f7d84878c8e828f8b645a5081074b665c0945ec68627744e8db55758cba78b10be10c53334cd76f0f7ee53b206eb91118462a751558214ef5283df41da5876ea4b30aff2acbef4bcf4f61d94abd9d12cbed7e408355c1d93634fdc9143e3d74ebb9c32a447d4abdaf532ed581455d206060e0099b30cc2137ba239cf2313aca5146104278233231b2721f85aa567abda197ae11f5a14a02120ad54ac2291fa4a31c25564192a917c812a27a9d042b9c05b83870308190e6b4fca88b25f009c5a1389007f6501cc8037960cf12c9a24368f92458d1f24ba45c42719e8bbc0fe4a13814872689abf70423dc3c1b948ab87a2d3378d1ad4c71b2ce14a7455b5be074a63ad40965d2f2a10a672bae72cdb2a7e56c227b62d5623a51913409e4e1a998e22c8941c8f34099279bbba89bd2d2d975b9595345a6914b1a0961d00930e8a1871e60d6430f3df400b31e3a38a1aa7b2243860c193264c8d034192a55c7a2ea6a486447249492e91403252325a5b202d236ae9593220315e3642aa190465614aadc8d16a13ba8542d2dffbd9d0d5567a3068d161ef03dcb8c0dc3ce050e93a6e9916c27b52e9a09f948d686b71a2de4d3d976d3d9b78ce3de859d7d5661776a087eab91ac941ea9caae6d359db2a5f440169f6cf6c472a43c491f161fa9ca9e597c3a4be9e90cf4ecb49381f0299f763ae3c1a6b3f7a0d38f875972b2bd96dcc2f39a609fcd59cb9c5def3db94d25d84da342b55c70f0bec69c58b204fb1e23dfbd0e6f108c8b7ae10f7ac356706e4dcf67393dbf82f372a8f4ca92152a3afb4a153d6f85098cd070496faf6a9aa6ad50d1732589122cac2b38b1e3e9acf9683eb133fdd8c0e2acd44896a9c7d4232307f4159cb8a23dbf92a48a9e5fd959791259f08999152ae2ea59f182243d6baee8f99525ad9e2b3a3dbde8bce2a4e70a485b9922aeb2a9a7e6c626aef2ca14377135bf12455cc1297aeea0f38a145a94d28a27acd0485c0c31dbe403ba026c4dc37432a6d31a36f5643430f598bc30f9e41521f49c817d56b040a7b3e9a743a69f9ecf6cb2a9a7e74d3c9964a3f53c971cd2d1be88ddd47c6227839f964fd1b9ae9e0d00c9c8c891aa49b221d9f48c998c9cf92923670547aa260c7c424c5e0ef879ac0936673acf653ecb59836428d67ca46a3e0a9b57707a3e6b3e3df30a4e0b8f0c514103651a08a4c51c997850a6419b5247d18baf01a92c88133e8e4022ae4e1dafc4cc11ce0a1e1f4420894cc3621430330c091f474c788321d95e0b84c1f16264d1bfeec58e4a5667b30971c494bec9c389b83ae28308da43779a3ec1ae9e9fec44c79a396caf05741a473a83a10145678da373cb0e862db12d5e78aa4cb2725ac620392bc5602de6b095aaec3b302158d2cf493b92c5cac9326b593941b01a46621f57f9b53889ab4cda61e5c8ec2c2d222b7b0f33c17566dd74f66c5934b1cb58390e8032dc5933acd3b3b3b22a0ad9a45c968ccb425dd68c54658f714fa6aee59b852359f6462e912cd3b3b3984816ca33168ebd9964b196485566a58ac544aab2d7a35cd60dab46b2ae67676567d1c4d58c64b5781155d9b3b3aa88abf7bafaec2c2a228b7b765692c8b2cfdeb2235916b332fc9e8ad4d2f28c8a6cb02d3b2f47edac650e9db5b4a1b39633744683a6b34ca3a6331a3699c64d67c794587beeb0ee007508b7ec3c97ec740416c51ee53fec51b8134995fe642c4e857e70376122283855c297e9a42a3b875321fb1fd82d26a2c407f7eb442cca513011999898c4ae7664f6d54f5cc567d9da115eed74760e038285cf1a809dbb0fec1c7e52254565b0a4997ed9495bca880b4b9af98195cfa4c891b2bf5ac4d6b22355d97f60b7536105a30b07a3594559468b0eab11b273085a74f3a9458f75c7ec2586b4e8dbc5896e26b5e899488bbe619ce8e6daa2cf6ac4d5b9488b6ec65a745a8d1065d16339d1c5bd65dc5643175d1e3a7485c05af40d04b9180a5d746f876e06418bbe69f081b21090d0e79f146656d0f2825a7481844e8fd522b03ac47ce8f4f53e2cc2f0697959fad56b0896721a158e6819e852c8e287ab41676ea71fab8687d02e31100d57d8b3232fba3cea25a2a5c9d02539895d46da895d8603d24e673db8ee904f1d11bbecaf7dc42ecb4fa7a7e2dce2d359cb4ec66d2d3b9d69576b9a96e1259268202c9ece0eba197e3c14b98cc022509eac8061a8f8e28417656d43f887df2096c519941dbba813fb609e0bfcbcbc91c63b6cd7a4f4baaecf6fd7a4d745afeba23387a7a554435e245bde6b3cbf9cf7576be094fc75092110588d1a1889480135623ce6038b5335fe6444c770aac62f4c440a722e6128c601310c7c8689514054c55f50b00fa3ec13a49cf135623c8663330c0c0e39618e90ac20582b206e3cbe9d97e7f7e3830d58d34955bc4b84371d214e4b4b4b8df81a311ec3d969a121fac53c3c46ecd2b83fc992acd12da97442a5a8fc49d68cb31c46b270bcc663240bc761705c2b55028091f4ac1bb30ae20221801b800b800b735f7ee32ef787ebc3ede1aadb5d1b356068e0ae059f879b8454c5e37b84544955fc67dc27552c78e53ea952c1a9fba42a056788d31185635c68036b46a25b717e3d6f27c356468a2f2bd8ab0af69d644416a158cab605094113082c2ce817f65733100844294882b68dbbbc1bb76dcf40f422d10ed2340d9465d82593d8d97847cc2c484e2a245c8285ce3741fc268a9761482c6c76ecd7b39b6167323ebb9431460152b0f3f3597c16b7a8bd6f97577b11d3ee36330544166885612252d05200062f8c03c3589bea1173c67586e9e7cec624f6ea2dca18637cb44bd2b64e26a90bb6d7f29ee481db8b36f15c46ad6073b4d96683fa8231802af9f99c51ecf999842ad0ab3c8c0194d70ec279b53dc3f9466758730ce71a9d610d2a08b6073af006dc6b6c18eadce81c6d349d55e76813679e8bfc9c118a5843133b79eac4c61720b2ac543521c0cb01ba3c0e4880ecf2395e0eecf2a00ba3782e12062f8847800cc3163cd6cb8161f882e722a112c883dba0e56b22ac8133fd78c0e495d5c4150cd54b0a2ea0624483ce9c041e122f07d7f51178395e7e70e8fad4d0b50c5dbf3de572c2eb231057d8eb9388abecf517882bd02b4a7d3b1990ac978464d1bc1cafeb9190ac7838c3e16c4338679b14839d371d923eff83f4393a1169c244e247df28ad3a40a1073c551502d4218cc473a9a723b0f3310e6baa01f2f33fe42726a2c4c7e8f14448973815fa10253e4c3f7dc8902755f33fe2636022a3479c0a6124f1273cc4545fc256aaea250a56b2bdc648c318b2d0b54defcc0ea170014e872e076962579f145ab0860e5d50d3cb212155f5a47a29b4400e1b0d3a73e772a474e66ae86acddd2705178ca0edd53a561d90e6b95478118784645daaeab3aca2507fd765983ee2b9541b0ad52462571fc248c4aede89a5f5afa56220196664461017dbfc36e17cef592a6ce1d319f522dcc2769d6699123d8708997452fa7a0cc9e32eeedec442f94d72349b219c85cc861c46b21de2967815fd26b9c7550be5d1035b31b48135b20b16d24c7ba8633cb0f9b52e79c455e85a38a1c7a6c8cf0bc9eaf154f49452c97a32b46b0ad394d2ec1c0e5d1047339cdf43a7dc73286401fb1e0a3d7b4c44d5d32c7bad10e521ebb16ff5a26c2976d426d18fbe1457d9e95135e32eace1f17e18da54807671454fdf421fa60a4022e3f1b06b37e3b2b048bc8cf278a70fc339ab171ee251b9e16cb1aa2e9d9625c0613995008b5b2a81195448329882128e34ec1cc1d891731e113b7922e617ace605ab7dc3aa0e88e39cf38a1c5828df2476101f113bd98a4d584f466ab825ab8eb91d51b2f1b871bbb1357d80ddd89e7886b77ae745b76d988754411aa952e9588d003d6f9fda9ba92d6661a34e6c4d1f441d5a14b22b673bed0d976cece495337fe55c115b3aa0eb2476efc1071f7c3e2d0feb7c275959763100b2321c5b3cbce8c5e32a9ee175f2ad16963d2e5cf8d4f9f950ccd2f9f9e0d8f35ce4e7bcaeb8ae9ce8245f39f0d29946a2dc7c407d9a4612a858898319a1d904158e3ef1851ada35c3926137e0e1b22235332e095334ec0c7fde14922045a4c9118aaceaa059803dcfc00e6c863ab019f6c0a671159b1e82017de2ea1d694acf5dd7b30bcb0176632314715513a3882b27e08f6461a78f33180eac061f0b9ee1a9e81f08c31e3a029b1d255561b099eb2ba72e2958f8e7a41f4f5f18bb81854ff54c62933c177acc063f3b62479be7422fe845ec28f4c1b02776945e3ab1f1f0974762471f7bc80b891db54e664419c4ce219882094c31228c59e88aa73e991692d2180f771af40800df4bde9a93339869faedbdc83d9967fb816a9aca33646368ea85a607bd1ca0a6209aa6cfd94f53d04cd34c86704815152246e3881d85912afa9c61f7c9644c246be248153d5d2255f4b005612b6b2245d3673fa0239165d2c9b488ab974515479a3e699ab5b29e9cf91c91395524e99c81d1f4d93694d7643271a00e7200d314de50fa9993cdbc1cafe93cfdc4b94e234e4bece88fd9d80b3331fbfab709069b67ce74622596237bcb730b7bc95ff38a9e55c48e5e29f11966c6eeb1a34c1ebf6826663331e985b356eca80c6c7ed38c49d3d367f4591571254fdf125970e6cf5e38da8cb2331b16201d4a5be69c33ce38e79b73ceee3010064298be81e2089d514f0e499883e8e96c21681f133178ac495cc56b2868f8d77aa2354730694ed070ce349c226878d9f372d8c3cb35a001ae248f3cc3cb21bace1d1afec541870e0d1fcef2a7e1b39cc34aeec40e3e4b375428dbd070b6d51a3eca5694ada8237778e2eac18e3eb6a4cedc69f8479f6767c963adbd7def6536140a85de73d26f939c28140a8542a1d0437fd5866ee534100afbed777a73ecf779b396499d82e9f4e3c188859918b6c8dd2c8bbfae9f7d36ca2658f977f6d919575062200fbb309cc2303c5ffccba07e59ec24138b82f7e083504608ec1e1d06b201d972b046227480fca1a503103601e32384f1f331b109d90fae01e2b770ef3d7e8b4c2c210476fc12420eefbbbcaf3bf09808dfa37fb203523621e125cef2f04b602de1631b9930ae604b82858f91525ca7cb6fa2ecd83624c6b36f312ecc420b3f3932520616de01081c71853a063913cbb156ec309d180476d1650aace9a23fe5cdd3a564b92c3f5d3f7d939f1788447dfea13ee5bce9ddd3e73d5db23ce1c19a441566baf52c3c4fb0d60a561961299c827386d918a8ebda1f2a06815d5ea9c4ca784f0a50d8c18c0ce949ec30944b2cece9a6974e52427ad5f49898619f2ef9d32f79d337d3c55ab1c38e72b126b1c31ea560517eaa3de44ff2d785fa75df510f67f92660bf9b7efabb278924c64f37c6b163adb8321d7b8c5b8a2aecf527ac853589ac6ac23676580963248cf1c40ebbc4b119f454d619e3692c6772f4f746c72e1ca597e32a61fb72648da1e08c42917028749965dbf6b61abbe8862e13b472b6b16f1f02f6fc10b16367f2984f3f1e648420ae0dd00c3a4f208465e0f161d25226a1f009c9ef8b0bc427dfe45264116c8a7e004f250f9a19d1c0e77248e3c4e3793f1f782c941352b48c11a8a5855766314ad2eb049c8941c49624024a3ecba8bc13cf45469c8124622797f00461c2192794d87779049bdf9d90ac174b71f5600eb7647b3296fbf5142c0656a7dbb97c96c19e2722aede6adaa7c0e6ef50baa3d17a7a9d3b3d0f22b6e7d7e26a8feb1c3df6ebd267174886d9b17b3dbb70a66f02621cf798189180ce5d22224bfb3ce8b6f0882b8d080d7f2703333f9f4682c64e52da925d4794d0ec462076135f4824d1c520e6e93d0aec7bfe7551d0a494beaf8bc4a6859a36f83cfaaed7f311d0a2e761149105b5f0b900153de77b9409f88037df19a82402eaa21489246210f372c90ebce9c70395a21a549e96d751fa82d3380d76480b695a0c68642d305d424ee33413dc31b564914af7b50a0a705250889c7653b42003055e4c0e5e140ac268eda23a460a647071da3da52009c669d7948294de324ebba5147401e2b48b92450ae4d0f0867ad338ed924ab071f08e6c5abba3de384ebbd6070d6faa454b5abba2de42012f7479b98b6e4ea245b737c3b6973146378d70863dbabdbc33cbac65c01485605bc92a8dfe1e0a0a4ee19ca5601b036754e9a67789431808f7cae16c4464efe342dcc88a4cf3a81897a12203d523d1e96621d43e74d2b42785e06bbdb438c7b647c989e93963a8a0449701a382a347a2149b5dc65344a6bfc752798cd2533f65a7a78eb23d7aea2a179582f3655cd4c5f19eca84334ccfd125dda2846e2506228780aff5734a29eb3960641b5dde9cc4a80b7b19bad5725974edf6e6225d633abf8b7016422b6c0e7e3372139393e8f7182fb45408f939316e02f630359c91043ab5ae11d81e2ffebde7858e92679337432c843e78c904ec28597084e3c51f09c9433e156c6f6535bb3257f09199c444d92c7b18f53f0aa12d51b15b5da7a73cf2d3c1416f66d01ce8201197dfa2134a0c4a31306c4635ea3e22eb88920ed006723aea2450a2f4d327ca2ac6fff923e2caf4793a9daeddd3e9afea40527a4c44ddd37f3b401b08ca51db46718e33daf6778db8fa8a91f4a2fcba40e897c05ac339896847c72159a44f19d7bea16e7ea3565eca8c8b92aa99da2e90b76d38c5e3f586475de04c2f3c7d6bd98552c139c3299c8251a88b72eda25cc6cdf428df2487ba287f95478cab002262376fbaa5eb23aa268ec141073bc2362381cd387ae2101d138970882e17baf51600c717968661e1336cbb06d26013145a2a047cf0c27346a10951f47c6fe0890213c0e839674e4d13903c2f7a62579e8f2b95b89a3d674b11591118c24875908f0fca5ff8c92865941994382e0114619cb2e753cde7389f41f33092157124ebb1a2109e6a0a01e7c22955f3adc1e688735dd775514a1fe371220e8fec62d3344dd334d044b1344aa9695a28a4b5e00b3d105e472f51366f5f0f22d9d8820498f085c655163b20bcd5a6e1b7c9b8bd2fb4e8727d5d2b13db60b5f8295f89d483be8542f3462ce00bfd7663149e0b7d76e315cf85febad1dec8e4b9d08b624ed387b8bfc640a08fbebd48c584048843781d3d5d42d3e72b54ef90223d53b091a9d7b4739c8cb88a291f20d08dc8c0da0028136da48a7e1bdd881369a48ac61ba9a2198e159d6218866198c85e14458b7e551d22fb6bf68b2b5111b04538437ce1c48e5eb6297d8a8d2b4c881a8de117bb90e6840bccf0c36932530e7664af4d065a4ecfdfce73c99cc253cdbf67db5c2255f33e861480082aa891d96e4466db6eeac776ee1c9e375235a319786484107bc6abecb946cfd7c7691924409cc92935337aa67afe4d1a3c9769035fe6d4b459d3867e43cd857dd1b3cb971a1eecf2d545cf67d74fa38106659836f9e2a2af305c4ee0cbfcf4a2e77f3dde4c3f973c97f99c1dfb76a5ec780de79297e3f58c17bb762e2793672a89bfb1610381bf7840f8e299b6f3b5b37339892c17c84c9ca77a9d803bdc3cd56b524b1fc99a6378aaf933646de8f96bce39f43cc53e93e7b9cc5f3b3c3d777a6a3958ac25d860851a95f2616db0221186816ccfb66dc330ac6edb8661388bb0edbe2050b8c312ee7da1dfcdbe0d29c20615d4c884be6d8f31a67c6817fc11898e3db6c166d1b720f0a7310dc09f0612ff9a48e843523e48d74ec225302233baf60be7e590d1d8af2471f55e5f55340a66339445c1730969e2cc481596fa316ba40afb084b1fa9c23e69a40afb1acc60f385836118186c863f8d614fc1ced96378c485855f749e2d12a2468b702e42d35b07c200e34646bb4fa662873fbd5dd7b58ce120f86de1074df19483cd17ce8553b14b4372fd594ab3d6f5acc9d585a7baae2355974e5fbf74242b6bc9ab0b8f955de1a9ae5fdfb22bb426ce97157dfdcae90b47aaaeab9595c066bf6ca49472cef918950059d70c2a0b59f4f5079fd01784f0d262833a44228a55c8e4dae9ebbaae672ac874b21d1ed289d4a39c48e8a4c7e7c88483757e9362089d08e9a14794d7ff20d5a3fc473dca8fd049283893aa2b2b626220a3dbdb8faedb19732e2676d7676432a79cdc7c64125710f7f59135027b6a08d0471f6120efe59686933be8a6407fa32c74b31da9ba26fd052b87b3161476c3d74eecae6bf8d289ddf54b07755dd9955d572b763131cb5ed68a415c3a3188ebca5a592bbb9ef9f4f5d8ba5976445ebf6e67b0195a828c1cb76ddb2623173a11d04527a23df4b86dda89880e3a91d0b54710480381b428b9731cc74d6ed34051c66884ce8c052fc6390fdf4e121990acd02710723e0ae0b9cc03e0bdcc3f98eda113d12e3a916d6eda8984be3d5b4dfb8fd0374d536d0fd1d39b0d4131907ad0eb9d4d62376162370fd313087c369bc0c096a6d985a0cf461a7498d904245f67154720033bf0ca96376ed1a0fb6a36e79c59cff93967e68299b8da300d649f434d58fa960a3218581bf48c3ce8795885075b2f474acfc3262f4744c512583bcc39b73093645801b14322fa7691d4832e129a4c46747b91d05819117e31880c2fa4c273998753782f137405ac82cea9029b614bd4922c1186adfad67399a723b0f544b88b4e24f427a8a1a611d0ef095e5ca16185448888ce9d487de8a273ff511f4a3580bbe83fb88bf010253e44ff117ac543341911cea46a9e1e1e21553239a80200f143c3b74456066664411aa99a5c4985c78d79c2d2efd8b08bb576df16a02266c0d3cb6305611395528983310a8847e4c0560685c5305c02715260f37b6600857a910615bbd94dd40e84136e4f4ad065d501fa15b289443c6c6599b5a896d67e5d2666e3205d63d995c1565f17363181e51113bb993d617bce390f5b39b00592160a3a8d7d1302a7c5eca027038a40ecb00c432276d86cc50e3bc4332776d8b32766cea80b980c05167bc48e6118861dc3b08b5e0ef9a903a3a4c1f65ab62580b22d5e8ef87e3ef05494c863c1482786bc1cb0e9336c4253c884a646680a95401ed8000503ab0298124029e9452f4aff7e7a9048c289219165218d649564a8c44e3c175a92793f997b2df3b1ac54751d2985699aa1c0d2d32c7af7237a3962b6e4aac1f65ae8afc329b3276c8c31c61897c81891c0d3745e61b36f9152181c71155928076976e338901483d54e6474d089a05c7bb63548d7dc69d5c14d2c3c3975886847a1077d741fda51401ffd07e8a3214a7c8c54da514823fc6227faf6dce52e647183f05224774c9b122274f9548fd0e577842ead94d28ab687ee12300c26664720eec4f8be687aee02812346aae841579ac06278b6660e8c952c003c15fd00aca087792ef43b3b93471ab9b03bf834bd82745168d02606419f9d20268e7006a48a3eb2c14226308155bc1c120587a7863234856068fa0cedd0740b4dabd014e2196ca12db4205dc320b1a35956d19f43100af842ab881d7cc9108ba60f45a1e945f78aa6394d0fa180048049782ff44b782ef419ae400850430c993c177a3a024b44091194db13217d743158d289d8a39cc8e8a4a3dcde07e92394dbff40c1f607093b818768321667a31efb64349927a3042a416ba48a3ecbac45a1600dd40e3ad432406341cfaf674710eda06f910bdd878901348476f8d00dddd9a2fbb6e87a41adddf704322ca13e74cd48d71df3f5f0d58a534270af4ff5e05ebf837bc52dcf4574239de2f1ba6ecfb3451067ed4dc0aea10bba063a7797806130311b14458435908a974366508a08a768fa9234fd06ca4090c8825544153d55512995e8ebe90cc4558641f77590e80493cc0496d2674fd82eec71e090f4a1324be92113580399643e5b0c9940c4d3738a8ddb22c37939529a3e4bf2723c243c157dce985c4be8af259295e1c80b098f9509e16d9910e2e9331cc9ca570ee0bd694094b968a48a5e335245a319ae25333df45909ac3cfdc1b0186900e30c11e20f9afec1a883a6d146b22e8cd36db0f3b1420cad9dbf3af010e7664962479f1db133782afa1c34a543689ae1d8343d8e88e7aa8236d39894a4ccc9c8c9155788817d4ede7b181555782f47aab1c7262f87548184c193367892078d95c00e70684c0da8325830c42d34f6ec05f67ae6027b5d8ac1f2f88671b02e81802790a10b9993cedccb2cc4b0f8b8daa0fba050051bcc7e5e34e6a4312462875d61051774bca18657eb940c792eeca705367711079319853d63818d1df6ec662be0c9a40a3b8661180f26256cc153619f41863d5b0cc35a358db51abb36a335019481e2dfe381cee3e58019c88e40a05fb2ea419945dda7029d0365db48c36f1008040281fe5a4051e4b486c91a0bfae34f44d4cea3c7cb91e5a7456b9f4b24eb2d69ed97ac50ce6c08dfa7d2ae6958fb93ac0d6bcf2821b46b7f2d1a063273faf150641a81519260c6175f6c83d502c9c9155628c3e872d25c6c839517fd7bbcaf3df058d1e70789e7f28017464f1fad47b2329bf2a181ae611a12ed319187545933f85cad2ccb9e6534a201b22e553d90007106871c011d7afe41961b7a3ec6786ae14f4feca617d1a70b9b634fec893e190b2cec282476138c9ecf5690e3137b62e4108f8b5ee2a9e69f8f12cf25f65c3ada172833514a9c107cd6db153544893af381a5cf6060f3b9de241769e87aa8e9cd9b4d5c5d4e1a5a50b74a523ec3b1dcb3ed0bdbd849920fe90b48ca79399a50f35c904c0cc24d8a899f546577b0d721de6c485ac4eec239cb32a97da377bbb100fd4d5c519965b625de6e6c3629369b6b93da25812e892776326798d443da891de98bd00f4fcb877ee22a6f362130e22a6f38a299b882dc26ed112510937c483fb18365b099d4a4e52b60f36663135739f473135799e413fad9a408fd90be68924fcb937ce22a1ec6992c66da425293b8fa09fdd8cde627f413fac15aa11fac652dca0cc625212d39c2c645672ec667c5133280af3d4a412c04c675ae136339a0ce90d894ac0120992dd463d332d4d332232d79a0de342bbd882b7968298542e88c6a48218e2d7de2106a7ac628775e0e95865042e9448b96922706014f6fd6030b8f475c5839c89dad868bedb5e44d27b63c30d89c757462a594710b4ae37bdb161b8e12ec862359180e5cd2d2043ae8c9850e862359580b62382d311b2be3bc9c58623bd8cea6d38f074947c0830f68664bb3a915db6bc93de874f6672317ab03de9f95531b42237f981044fecc4f4e561df499d5be4d253c25d859854de9215dcf2a81079b9743a5331e725049e86c08a393181e2b3383654367f82487ce8e496141073d9f764e3b9295d2936d3cd84855b6039b537a527a52bc885bab35f858a79da7caae8d5a3ba6c55bc16bc7769ea669a7f79db6782cfc837fb8d0b69c869f3592056bc3635ac49576786c27ae7860c31c924edcb26f208e5ed8f4c2ce78606715369bc2661e684c5043ba7420b15295f140939d071a1ea0e0697a9425f2ba500685893cf9bc1cb5e94f5fc49576fad34f8c99b88a4d270b443968fa071f2ba5e7a9b253ade945372f074ad394d30e9686c7e2c146aab297f286ce9ee9c0f23013bbecf82776d937fa4419425c74e6de403510172bc5d0b2e47486039b493a984996b3d13c97ec57754094b99ee500ff74761e6c246babc952264de7941e924e03a20c4bce8dcda2990c07dc8ccc110e0f411f2477fed51e10a74687171d4b8d5e4fca326b51a8bfeb324cf3e8d4088b70e6c1a349271d8ebe827d7b5bc6c14bba6c624673e0381a1be1511776dacf9b479701fa04dde211172adf30581990711294e5273602748b81803e319096db2038dae220381a8467ec68b45cc6bb9b67e3cb3a04eaf6b1f668c12f76347016222dbe0d3c6387711622612d423b86332db316cb309965f0f6988633918bcbb25b3c25cea10cab91e11a0f65b706f6993df42dbb580d4613bb2b9b7f92373abc7fbd9947d7cb9bab8e7f7bb29335488d596bb169e1e816d3b0a15291ded920bd060993ae41d241304dba8874ee927e19c7f00803f9e7eb447d7e747bdcf2830bd6d138c19c4c5b097337080efcd12f961d67db02ea607034fe1da13ee721c639363e0fb7f61886a93894d2666a316d2514db83bdf65a6d0fb217d9577b528bbdaa87fbf01f5c6ebcd8ce468dd3f893b8e50676930bf603ce4f47aa7cc03d6057e16a8373d6d606086754dbe3fcb6afb86bdb8225ce30f7589ee53c8c8eefeb7b4718081c02656d965888ec2058cfcfc8f323cb039bdce8cecb639f7139676723359d651cc34182e0687819f37f8cfc45cdb8b9c84ecba869195fb99947cb38461357214c440a5a18145b2a95f595c248b85f5c13b0518fb587a9532e6c22e342d83a82155d84e1a01e51cf6ebda2e6d42a98c46ee65c12430c825346313a24e16cdbda675f49977344c2f506a341e1687b73b665d642b91d3689ab0de0682cae44bf0e752ec26844589459c9c24422d1375a758830ec873d1c324a523db0db5bbc1969524b4b5217bb8dc3d58646b2ea4d0e0a7362f3ccc9cf19fdfa6ce520304d3a94d2561b797b78df723b89ab14b10a9bb79b29e2cafefab624ae302c04b68e9cb84a61371b157dd930e9eb164ed1d88552d8c46e09169322ce2ba22a2776d7764577db8d546d61b79bedd7eb4d655271faaa4bfaaa55f4556d2e2657c40dc4d97b4d3084de34cede003cb1d3dbc6d96bc30428e88ddbe08b20ee0a8d7e6334765f0ecd91c6be60334683647b36084c678f89a3c88deeec11b7e9b0c7b00b654ad73e153ccacd9e0a9ebb5508db59637809277a644d928254a7e824ecbc5efb6191821e481a0945ec82c0e8c0b0c5f9880c33a4b1dcd2f2f6068169bb8944a26a4555c7082b594bc24e225d0b1b0a32b224a56b1a31f183fb76d1512e49d6c495c5b90543351c1dde4a96e9db1db21de5a20b01ee28dfec95357787b550c444d33d5d253eb8a3d840597bd8d18d8d5df4597bd8068289701d95c16226eca35fb507867fa852d42e0a1d92d2ab14f100349729fd7ab5892bd249db14a55b6fa4eaba8d17ec86b3ddc42e098bddf6c3620572e8170511a001e51bbcf5a6da906e95226b7812ae52d49bb88218e27a536daa4dbd89ab773189dd65efebabfee08e22b34d140406bb8ed5c415f6ed268abefe45e79aa4afeba56aadad3a482771554710ae4927551da4c35b5b6d21c42e0a072f4a63f761318509bada3c97ebd88eadbf2ea1882b52e8d7678e64c19cac73624d8aa4a93633a72f0945ec2e0cbb9c50227697e6d39a8fc43e0ed89e32e12150a674233219f7122682728e495c15e0dccd9e3c1292c5fdfa11920524d503e214c848e3940f8ebe010e22a091e16e44c64816bd8e0e2fe9a36b043c0967c85decf00219fd7d66986b492761f6d6435b3fb23808d721bb6125f3da1582edc0be8408a78680912cec044f75bd057d3de3c066d0d70583d13c97eb930e19a3e9ebd5a6ab4d5faf38d5a6da6058b529e9ac1499462e38b385edb5649ad31784587411453f29f4c3a20c4d7a8b5c1cc3129452122cc6000519a42451045538f99149f9380a0d69e0c18f8cc4456ef8c82881203ac5a6d9c642363e5e5883419bb8c2be3d638f18d6a4a2bc1b76a1cd8551c063d0064611bb6be6fa909f788812ec43e8e531ec23e5293c643ee5b006da882e9c02d66c18de74c186ae8330bd912cc9c5ee6e740a1a5c3f604106272949da0c5034edc2495fa75344d675d11b6813571c4e5c654b67e60f8ce23a9d912c0aa5285d7f195201abe88bded0197a4367281871856177ea588aca304a485656f37c604d2c91465614aadcfc89ddf59d2ae417052492c88010b24717e5a41b6f2fe9a23b7ae8dad72b3a774318866118e623e3afee983e7185c5150ad6a4c020fcc21a1883ebd00570751db6e0e588cfb007a4ceb0e619de206b215823038ffa209412a0196d7b0c7cc2268c7224e24a8999d8d19bf91357b02676d74d3bf3faebc91708048af198a8049d892bd02fedd761e9a6e763fa69a6afa3e84d5fdb7db0dbae5dd0cdeee99a6ee96670aba588a180ec0825e337478d94e2030702f2f30d8032b006c70f7dfd10577d5383619c459de694620c2f684bfaeafa7aaabe9e55ba1ffadde5e5c06abc97ebaad75d7fcfd62c6ed80a19e2e0a3e383f215f6028ca1b7c9c90ac21788ddf5965495fa7a22b830e5c6d617ad2b9c38e9c11b4396fa41530e783236939998c87c2683f2d49f0c17acca657cc83c6a831509191f026562fcc725438740186d62176f62103f31f0107a548ca429587fc8384a06e5fea04f1d15e3cab829f893ba44e6e9366fe491aaeb4ea268da516766878607c707365b349122b2a4b4f1810fe28e643d998b005520428eccf5d992ac9421348c2532c091a11082c1059b2267e24fec7e8a401f2ae0c8489ad85d120a2823e3f3a620bd349a4c8c3fd982cdf187870d36471b9e141af9235953b2e8f521d98c4c8ccb19a9ba8e4ab9f1476608e88ab88a3998166c8e4c983c2530850c4e3a0c3b4d3b471e39135719866646d6c4558e4c7c7ec0c0220c4c9a35652e1e9ccef20892cea5cef147465105ca513af12767d845010b86017ca668fa18ff411f033fa9c27ecc3fa942c13fd815ec061f8ca1256497de019616c202b9c7ba03cee15dd705c3e89212cfe54281f9f1726664523f621c7514269202fdc9c8780c9c02e1064099187f32a83f993bf4abb146a3dc97c3869dde9e45912276d763a20c544dfc91aaeb98156cbc89dd7514bc061ba340b92c5cbca03194c79fb8a27d3d82715de2482a22ebada1461e01434e5fd1268abe2e69d317cf16607496377dc9247d612830dac4558660dcc4558e3c7dfd823de88b07dd3cf1c9867201b045c3da03decc88a0e1bd5142bf0a8118a7813212b0311189cb6e28f7da518215991e13af9db842f9f5cb495cc55f18e69418fcfebc1ca65f8f77a0035c3dd869bf1ee7f07294be829f2c9ff89181b223d2a37c22a3947186b2b0d8d530bbb025cdf5d3d72118f3d7238d64d15f302f47e9d7592f07e9a3e70c017dd92785beae7785be1e04fc7500bcd5e9f955c1f4fca2d017cab30166a6c0f3ace8cb6600dd7106e3b101fd3a12da4f33d94d3ca0a3e03cafbfd9da8582828282f22c76287f15e5b9c0a39046f05614aa1c8c1a29a734d496f4285e2bc4833a7b394a1d6384f001729bf3b2f2a5d563e1795894e1879653ca8b4651cb4b3803506353b0f1d922690b27ce16fea23c4fe4bb689438675052a1078b2d9e343c4c01224be5868393a633d8350462469ab882b0060d2fa8a39d36be187344c085963d920525841053838538f6ac81d717db6bc9584ecb18fbba50065e3a7002931a9922dc1496c82889cf1666910df5e588d1f2dccb215bd24ca32536b5c472a292ebdb7b2f162076578c182676d78e1cbca0a3039c1aecd8a0c91e945364dc74c21272b0a3841f8cc7261bc1a6dd9da7bafe3ec5f058d8afae5f9e66c0f07412277e5195e793bef0908987402af4600933dc87140115a14646097c911b3e32335bee3e06715dcf4460f3dc9187efba3210dde9ebf466b1c9dc99b11715b40b3619c21d96c80c29026a838e8c92f822190b685058183bd727183e775e8e187d7d3a79392e10ce2838f495ad1afaca5919faa2337dd1237d7d5623b45406ba19f4548697d8113b3b76079b7dc34032e812b383cd73a7078fd85d4fd92ec5ee7accc2f66cdbdcd9b6d4101008e8d0080dff109b44d5f54d831a8ead2f66cf357726bc0eba5e77c877b1bbde4916f6eb310bc8c2f0115275fd3a0aa5d3f8d22e246277cd26b1bba60e9eb3f55caecf9dd6dce16aa689063c4dbf412da4d8c18c4c11d0197a64b22ade83545c173c0686e571c476e1552276971047c9633d880393bc1cb029a594421ff8056482760b103b8a81881d45000d7d7b08b033d4c1c05a44e8a2637500a26913aa4ebf435827c65141d379ac6d74e15f27dd0de70b03518476880b5075d86375b01047e248d137ab6940c0863874ddd721d116ba73d733f43a5688ebed76c87f0190b561250eb3d6f9b5a01474b0f006439bd86173b0f119da681ac4a9eb3c6488882a88d3824c200ecc2c0ae2347d768dd8409fcbcb312789443a89ce38d2c446664891ec063b170aa5b329a594524a29a514e592b6534c29e928572baeb6d339e7dcb6edb0ead8223de91b090b892a8af54af68b8213a2e8eb8272a8d169c90c29c20de1474649fd9022d30b2d99ec450e9023a3e4a28f5e402aa9d8a8b441530983a694524a293df6137d22187145337afca2a91d5d3a058bc941098945188b8385178383dd9e9d1c0d6cc550e667abc9426fdb86da3621342676dc95472c3c5640ece8bfb0f9e53cc19ab00614924e6e793aaf69a514ca19238484283df686d3ec94e221e669f4e942524aa304614a29a594527a4a4f29a5f494d26b37a0521d36c9bd0cca7037e523cbf010d2089eb044664891a9041c99ec45443a324ab61b9141521f837a40da28215b206b5e82d729e181c78a6c78aa79b96f910dd71b43cf4feef54699571dc049795d971a1eeb452f5e0e28231c5e4c8c73c69e1844f48941ccc718217d3a5168c21a9a5e94065d50c35a84fcb6c5edd7ddeea80b7b73120d5f149c0087d6f041426823c930cd65309cbab0123242bef881b1078232506b37da166a1a14352559d32ccb6662c48f9b1cb74500f8e4b4b86dceeb48344c7319900423aa68eabab0fc891dcd7e505786337a6d198c0e953f4d9f5b620132ec925fccc4559e50401157120cf9c591a67f120ff19e74cc72a0bdf7debb9901682403461b638c373378f10adb6bd9ecb32f5e8b6d7b1cc7dd2c76dc27876118b681ec503f63771d84dd9410da41d7755db232e05dcf765c3725447c36455808c350560bd996b24ce2aa816eea2919ff6c89e221aa78325f0e26c5b6c530d5d17b533e46c6c4d721b9c530d55adf63628cb4f7b5e8e68674beb9b2595c6d8f2bdf2eecd4677cc65152cef22f914403097db4856ee8f24ef8d1e8a4eda921441f3d7493688b53f5f2313e53f5a68fb2ec3d8b73129daa3806ce4924d1a38f2e6f1f23edcd9593778a2e2b27efe8219c97783791d21c30d2f5a13ffbecb33874f919bae8e6fa775a8948b9e8b4f2809df2d1cdf6213ce2c2dacf5fdf305819003b7445297974111e7161475808edd0a511290f612029176120a48f1e13a9c54268a7fc57d621e0478fb507093f79ec239c5fec50ce8267ec50f0b1c35a44eadb5f2d426ea96d1bd9ad883c3ace442e6edba6fcc8e28c6d7265c32bc75656f09b59ec623d9724ac21a804ec73d6c920964cd18c20010000a313003030180e08c582d17044a0c698da0f14000e98ba5476549a45414c29648c01200000000000000008000000a4cc78765825f3561f21676c73d507118add584d6a051c565d27c622d389ee63ef9a7eda5af0a0e60b6c666e2f3074af482a1cbf388720c11b33f5357c741ccb321d5d60e560f499b4f30c1dc7151ecd7700c32d44ec8169c25741c29b0f7ff36ef38f71e6d1aad83f73519410485cf43f00044fac1951ad22b793f4f604bfbfc02ffb382e603589aed87108db1c8dde24d230d2ceeb2745c73163f11799a22b6e16a61793c9029f43b5dec9fb38ae7ace67985f5a65226497df4329cfb9c2097bcff1b92cc849ded03e989a6ef16901c732ab18de0426d309e0f8f60688cb908a0de8aab4f949fdb7b10b2e20c30d6081085df008822bc02e8c4caf2541bfff136da2a6ccc1987237d9ed748346ee85f7707dee358f938be445d0f596a2c50f7fb7f3b42bbc8679167773dd7294df97210d851d2543710481a198a91778250c8e660a454104d96e3ec9f4dfdda80c4321fa55f75e04f3a35e2f15b939c197e7610aee226c1a248b1ed6eb5fa24f6d2277194ecaa114e7e35a8e137657448aea14a2e36333541c1076faa6b7a880b10b6477e08951db824b526d9aad17dc1bdbca6b9442ea71e3c7d3d1625723982b5ad86335e9d667a2d8cb80a675aa5e33c29a03936b1ac589d0e97a8beae7f602450f6e0284742fa1954bb9705cb3744178040293829956677ee83448e459c469574a0c6ae340b352210fa77518afbb95720cbfd62a93ccea4a589dc10a92f9ad634720e16610e711e0051793c83a1382baad51fd19d89cebb7a388aa04b5f7065b0950cd9ff854a08a29dc6fe8d0ae890cd0fd80dfac6b20b9dbc412b5aaacafa701abd1fe2a5687194d6da6c687f53185f66f6687e7990ac29570918cf6808434a15b17db52d847d025b201dbe3c145a25ed35bcf52b28e27d9335b8d01ebed8b5a0613f0814f805b710d4a05f7e98abd29a283bf5180a17e9e05e5fa947890e4f0b39e70a81bbf80386a40d7d1e742dddd79f1bc832c6f9c6bf5627d91c92e0959f2ab4c77da0e8abb8ad4372082d34856c191b2112ec35cb6011de49cc17f992e89053b1a6248de30e1a94d57d752c079ff106e1b66f84e475a438c96211ab42185bfe52929c5fb6e1f441fbeab13e09462a46a3645958f46a231aba4cc9544211ba45362d9b285ecf6d91acade2ac7b6f07ea5524437867f74e972a764e31643f11a353bab1f45fc9c8f78fb9cfb68d0d00423e2e6ffa2280e116e8ba2ad4b11f761aa52624f2de7369b97e62abb69698e2862013b430734ff8eaf6d58d27e4914a9ff546fc337d7560f0bb0059f996871790a5f0a0ca42476d50d42c20e14142c515fa59729a0afffa3139b1bcc9bd47f4753c571ff45cac4aa632d3fd7435279634d424045b11c71b3a6cea72fd8cf9528c5a6b314e5209e4754d9822aa286ffc61c6e48e290c976d0032fa5117ab97552aad0bad7e51318bdf31b665cc09808b2dfb6eb3a8df073d3a6413b484d7d46fd1310a7441b1944c757925acee0ecea36931c6572a62f03975cc05517fb2a5c6253b55be9dee03a83c98ccef0835498d70672431672a2da8aedc363b92944e0275099da6f40e6ec9cba976e27bd3c65568bd711efb033973a5a6c0a143e0c5b94494d85320147231ad47146d438249ec025238a0a94c114adecd8b4ea193904010484be98a1e2058fd751b1068b680f3c4006af71a439557a1267fa1be098872c405472aabb32115c51d04d397d3b5e5b18fcbde4bc4614e48b3ec334d64fcced55759bca9f88f80048bd58ee95f3746553ebb4e49bcbd02dcd41aef52042dd5c214cc01ce2dbf129c69c47bba036427e85bf1f82664ae643eee7b261098e0deeaeeb68520f18052a7ec31fdb1dad4d7ba2cf30af0043813951f3ec2609a76a1f0242851845c81f3c566de05343a4fe9bf9fb27f6cbb0983feabd55fbc67ef1b4e42306185e14518769506c132f200a32100f21e37d80789ee21386e90633e2991a5b6fc5aacadbc0f5021daf37504d1eb159fad6acd939e8363468ab6a819cb19221820cfa2cbe3da0e9c1944248c7531498dc86660e243da83a3b4084625914892f086d4fd73d5d55387c9fd436e80f81e36db83d976f2ff353ec18481c9958f37467398f8596a7c583f2b02b46e5741d85f40072e40d8d332087e9697c367e4339df874dff00a0e0993fd53424e5d833e7b8e345c6d84cb5c344fd44a4e04280d628cdc4670b8a4ad19cb584e342438f8cd0c8506f433dc5cb5c031329fcf109caedad17f93ee35d3432b41ea6083d07b6b9e31085bf7a5a7c91ab407c7e7e557335a77698c6bc452069c11c1ad340763d79a29a288058a19aa19d525cd07493ad047cd6923f70f19e28859b2e2247ddf5ac629c9da8a6dd09761dca43649d44fbf602bb09ae5de96b713e93e3a5aad9de76e83664458497da69381868f2bb9943548b044f67c9d092b06d55a5b8f0da33c7c2126214583651fab6287de20ea947f5c5994f67e58528ea92b434928474590634130e7600b8c5a6a159dc7356941447f52c56386a51237af7ff27e091949eec5854e9a7e82e703fd9ed8d470bd196293cab271ed676f8458a06e8a8095fbf3a745c8f41b263576e361f03d4e8c0288d4a75cfcf12557d27decdc58ca6dfe2501d8604b3b14f9d7d820c21e0638138ef2461d9cdf32f93a830021235139b13d198fc411a7a8c1ac9071d3cd601d3b3f580f5c7bd7816866dc57534638d545ab3d303b57147bba86485838ed1073a4ebfef6a187fe5929f799036c6192d6c96a9bf85729cd57f721a87537e61f48d19376e4811791c586b125745c29adcd621c64699bb3fcc59ba6e2c85308749c8d32a9cbff03a660dbc47f14cfb60ecf99e2531baffa1e7019b3cafc42ae24eaa2ff37640571db10f868eac2e169bc52af71f515580156c54bb3f918d09555f877cb2cb3fcf89ae50d31ccdfd2fa2cf81c8cb037399d802905c3324c776aa1cd8e4c5c4f6590c016b0f60ebd5459505e2f64a3dd10b13307287bbd17bea13b2b90d73753291c3cfea41500f7cc1aaba205563a33a3af9471e95adcd340952f8d753f0abbb4fa3ed08a1cbaa9f3a75828c50d51ca05c5081175d1174e3eda3f9d6db9b43d0f05c8818d6f8afc40756b719579c527160a57c248018ab8fb566d8c53fc66b82beb994cb7f93306c1814aee6b501c61e0a0da10eabf8884da3f67dcfde73fb1c7efca3d496f430f3653fa0bc076e1f0facbf82a80786f8a693ced143e5e5167bf1a39071723e18e3bbbee49b005d7b62affe5469182fb119fee928db8e263763be3ff221a69cee9bbd0c445db2d4a1418fc3fb18748532d3e9cc4069e412cd919cdb99911cfe60f70a99c12c0417fdea2ac192c6c54727d725bb06d8bbf4e0c22bcb9632d03751f09052b1a9824c7b8ca3bcceefd24d5cf70bd3110c53ed109372315de544b2514939da8369441f00ab32c794444bacf5b52f7ac037eff12f6ab9b910c0031c52fe0b74b98f1a316b57872908323f202eae3114527f19f4a290f405b3f083d23a0d4d63238861732fd982fabe3433d3608266376d300f13b5a628a632b69590194ed3d18b1ab45730fd626fe5c56b1e7f0f26bdb255986307bf655f59fe053b89a0b71baf087b863d2796fd5fa14fea63ddaa1028d1f088a03b2dc8b09d5311640f1a7131591dd53f5a60eac6d434eb6052ccd532219e3a827856698406df210a889a98d153bf0066c403ea939aa647ae72736b18dff8ac64b73a79d498ecc0e2aeba138b430e8f8b5528c06c220c859e569608ba2787b02ce1877cc6cd78189cbd5e3ea5be9da02c4b3980d8e318c83343587887bdf0b2ec9385d2548a8832e131e3e6c520ba69b23585ce3224adbfc6c4a56eb841b4700b8a01c8c49734203a5491946951b92909ff7d6794d0ff4d4323e39527f90e6bd88f6cbff5e4e97429980ed3c5e75a2fb110f66690acb28daa38697d19050bdc37e05283b91305e79e199e21b88ea6d5351b5b59661ba11c30d807aa8e21eaf3c37c8975ba4fb8ce20503049dd5a6254ce7c0ffa5067773e2ba33efc883ff8f9de4a045e6b410abb06cb488abd0af2ab957e959ef652f55c2fc42b1f54bff062c508ba9396829e5b4bed70dc304257e91827f50ba7bab7e57035e695e5e19a78e786722b4090dd75c1a063059916342dfb5e40d2bc1004ecf9d681df3da14acac73e75529796ed7a8e98ba2eba0a8311f2fb280df57ab3fa45d96ccef5cd0c4fa202a630426ade6f00ace0b3294c9e2b1d40a6a3f31b3f9e2830fdf4ea3ed3c8f88a0dc65aa495fc19c0a77c82b51e9001117e2a5023a76ae5587d9a24e9ef68d933e8945fedc18518556fdc2bb095b6bd47f4d946efa4778d4e0b68590fbc65b90951cad236746e0a4b2b3a5eac052dbdf290fd7f1e0dc9e845f51cfe2827d26bfa06f4c36e768eda95c9d5cd3acb4c016ee64ef1857c6806306e78b275cd9392ccb921f59b2060d0059f6ea3a58228b31d978b5b55888b05ee7f75001b076098f964f6e0c9a670f995d71d23b4e34bb795cbe9b2d9a0ca6dc23d0412cd54a4e473823687a5cfc53eca2a2dc15147f50a4ad71550680a26f76e16c5f54ead1ba51a22b5dff5b3418d696eb14a14361f628ae0c4fdd2555bdc00297ccd9320bbc991bd257662dfddcafe95853558700276fdd235c3dd4a54d0057d5148fe3853c5913fde8af61c4a1c8a5660594351d9fcd906fdb6e1da709410c5e64a6735eb92bfdad622720a2d726552d889ccb12c8e7c4a08469d3e65579d9601ecd70125ab80791b8fcfd8b1c022e6f65148ce33bee20a53644d8b7994edebe0799910cc3f8ca04f923dc3ac379e8aac951f1b6d78b4d779910a4a100a1b931e3de0fafdbedcd493fd31d0a04ff84fee9e61cc793027f83e3fc9d7f6cf3e451d919845bfd0333e07a28c4848f4a9f1951fc8a91f5f74f9610fda4c67097646e27323a536ebb01a64e701828dfdd413d91bb4d1a1b5d443182adb108923a77bd7d5dc266124fd3a020535fe0ac7f2f096916458b489ea081a1b93a26127c1a2800c9be29654a70483d9789efbe68393121d9d5ab973bc62105209d1739ca7fe48d491541108441217df2cc1a6af3c54d732ba21d4d749075933a831b6b0c0934ccaa157c305312362d45a238a545311a351400a701b9dc7c861fb1db86710c0f1be03adf50d34db2ea2921e5188e7b444b6d6eb0f8d6b022cb12b16405c12798c84a66e6fa053b8bcc0b1a9d6d9adff4a0540d7f4e2a122213f7b2561537c0fd3423865dde40934d64465ca8b38858c9602f7e9087d409b881b4f1bdf40486c3dccfd1bb24b11cf0f5c2b5d871841a440f62c739ac14942fb6ee5341e1b4c068034f9a1fb33a0f8dc507105c3e3da084dbcf829bdaeb61a83ee73b73b666131ade475e8bb086be51eeb3688b27116126e400889737f76726582655f7c7d3fa2a9be11e59fc4e9247ff8a6bf68bed3b0a75db6df699136048d697c50d720824a1c253b068fde6b5b340fee1c06371528a81475a15aacc6ed077622673878db069628a5e44bb9620e16e7cc8898f87a49435ee17ff06eadd6a4b398cc637f74ce7664964967716561b808106650368b27c52f15cf50f6288e622ba88a0d22627edf4aac909e5a648f0b0dd2f65c1b9b5aad62e26915f5361c52aacf123cadccb0c5b929218543eb8942aabb814b89078522a95ddd1f6a1cdba46a44e5d625e95db6ceb04040bd124c62872518a3ca210b70e4c425afa91c72bd47b779506ff0719f9460422fdc9787565a8775872a88e684d32713d2a622b606d26536b5626b14a33575d3888522edde47d9343511d33a24e1862694208c44e0f22bdc0cc8e1cea817d01b817be1a81bed69d31eea369e97b2b26a7e186b94546a863ed766211320564e08f4010dc35a9628ef12bdcb0eb4b193ca2bd96eae0f423b2cf0e15c35db2c7e31fcc29ce1e1636fe35d731a91979905b130f7b7fa0f1310186009953b205ab203d91ebc7405b43c3c6ac323d84aa1b159bf337d446c8b5645d4fedf95486cfe8e24a1b03d5b9d6ee186398bff80d929f60c5d2c7e9b981153846fc6aa0e566fa4f6a97e166f64b8125eaf74c5c3298adb394c5cad7f147c962a301d547e20f174eb7a93d6ae1161d36377994f5f0347d35115ddb82823fb9a1338f4b122cf06145414c9482ffc401a69de84c86464b7afcd2b4e18409509d2c28aad4527470e440550640a7114195c81a112cb40703b3745ce150c9682051e4d42616df7c880455806c678f22840446f60f042f557736a4e648683c254377a8c831cdf7baf542cf522ceb3a94fd87d03ebc829b554aca9d8d836b0b3ba878dc9fc3837a0b8ee1fa965c011b1d2941e4d2a9a27b69fc426206ea5d3e223db1b1a249ab322cd54f00a113d35ea27902f238a7ae7de3694c69f2b16c20ad5636574a7d9a02ea48c2b985576ae74ffd4ff3440dcbacd12bfd38e8e5bd4fc4ad13447a86171452cb8dcfdeacfb48c142470687d8611f53bbc351935d1aa19ccb3f8da3e0b25b3523d1bc9eb086606591b98b39d84ae45904378327c87d18704d388c1e67e8a55be486b73cad058663ea9502fee8f3bfd3fa63c62898ff4b00b0f621ef36867b3986aa2723e86747878938664a220a7cb3740fbc7d816bce19ee5c3dc0960319077443eb2ae128d5164cc144d2dc96f4b39956cee1b8f343da163aa721a7923578daf95a78b58102453382180d55e974a0e4a89631ba0f366f22052c5035bf9c41127811d0f93d51bbb3c843506ea927a7391037ee856234eb0ed042473afb2ddce1121f25806935b34ed9964674a601fb3df758eb651d3279764d6863da9094fd877faab6e11da1ef33f81e1ee4add7484885502689bb9505cb9044e1ee2e3c59f31ca7d8289ead483c5054304bc24f9ce5a6deebae5390bc5f7cf5c3409e0c4bda7dc2959183775198638fbef2428c093888b7c1c226b508226c700f77f56eb601e51f6952bd52bbc8a366dfe09763f3d873470146c2d89c51bc59b50793c56a95dacb817fd33257dd5ce488049d17f5a477f748e56ffeef3a541f7cef1c6900f785053a25e81b330180167375e3989d5f37d138a97e0ed4ac9e155ea0447944abc8bb0946ae528bae090c9597e962c857adbe788fa0201ad74a2921ae23c4977ebe2401353bda99c7dcf9fa0eead66d8cfccea74df29dc5428b9f1c9e82ad0438468ccb23044086f92b85561851d4c7961e75360bcd57e39f04386f6cb5ce8a97386ed894755f8514b9a9e01fbe434b82f7b1d6397e0b808ab94b6f3f5b90da014114c79ebdb3b14bd13e5cc4176a8c7a6e4db25aeedb324f7edfacdd4d518ee733e9f2aa5ea743b3f6c6ec949dc3af5c227bc7f40f85d88c2eee225e4322ae8f8f04bd676fa3fda9fbbc6b3f699278d6c85e81ceb41631981a0c6db5be369b382df823eb135889d6dc80652b5d57f790c6b82feb040ce3ed354e64fb7516d0080328595134628591e7b7de11163105c25c24c9fb6e8541960df49c912cbe88cbd40ff0a4ddab304cff1126e5e6d95d9589cdac5cf96b27c2a2b871f39953efc797cc2e02199614c49438b35cfbad11bd3b50fec0bf1cfcbbd39c6f14e77ac74223eb191421a814f7ad62d240d72df39a9bc2c0ba032d533b9e95c3a09243c54b974ba13c997808fcb85f0edeb0e5673c1f5cb8eb793301a5e883716844665daeef50cd6d3885daad96ff508b44a3e0ff660ef294e67c2f9b92638c5b6e388c9ecfab4fa38ff15834b21242bd09babacf2a84dd52304200890697358f03c569189ed5858d126772371800f30f1a44a6ca738068fe5ab090ee1dfbf7f9d856b23d62cf2bcb014abf9bb1e5d87ef33c8a823c4304b7e03a284dbd3a874baff9c945911be9c18cfc8096dd6bb3e83a2da7f710e7206fd0571d978ede1dcd43cd102c2818192dde952c939c422ff61f7164148c2837d58503f4dcab1a715018456650a5bba3bd4cccef37426b544d8dfd1ce5569699d84b63ce975aea069afa983174f11e22197b68a8bf7b3cd0e37fec7857d946ed73360dba463bda1741aaf0b3b5725f64c165861942897e83f57336a2b23389c10026d3dfe29c09560c21231a45d5010cc5a456c2334ab4d056e2a96bdbe95bf7f473b063b1ef0906f795b36e2136afb36fbf01a586a2d17e079e49861ab3daa47aec1a7cae1c7f432da35c0afc764ec38b1b1ca9758ea3dd8bb4b45de93b6789ef4aa43ec86302e4b448d11ab420c1ac8cb8a3e56a4379b55d97047796c5f67257b065ed1041fe527c988cda25bdb2af61b12836b4549da2109abb8e3afafb06d40d63a708b5a89fae0e4c869f47d63f485417bd46e96e2d454b49e653ed2ad03891bb7383f511a7f9dbc926f2681895f0c54db6ca2dbecde81d56b1848b48abd6012d56bce0d4a8fd7637996ee9fa6ec4ce62a83969fc8ef0fc5130c021deeffb522dbd56902dc22c5676e82ae3f9ae90ed12869c8ee47663501566ebe1f00ce42ececcf85dcaf872fe4d5415e2b9ba60c252855b14014fd13fef7fd36b225f9fdc46a16a206a7df297042fb77f54d604904578732f1d96d88a133a9e2ba70b5e50867dae9fa20fa7f4107bcee239c340c626bf929c3993231afe2e9e0e7819e6032b539f21a3543e4a2ace5a9851e60312b168570f36e762fd8dd9915ad10fc8b6d3eef226e11bce34a9bb8667a80b577d7e4ab77a39cb325aa89a33e606f7f745bcacd8a335be000f70dc67e0d3db502d193c3e00af6b9db0a078ee0f7359b457fffe56f6c9a43124cff89a6b8b158f86b75f131d00b38f92eef45a4e5b5dc2611b45e0914d13df19a8aac5055fc551e9f7550df83a5efec3954574de7d14240fb46950907169a3b58039d12b1258346deb45cac05bb6d11c04615f072613e364bee1467e06f01998926bfb57c379053749fa149e22dbc6182259043b8ec5aaa9d572074d1191666310195995d22a34f331f3954dd51b7f1f3c78c17f0d8e956f25c13f112da96625e95041c4c9d0a76b18d6a10a95bab0c3104b562022d1f10f7c86b70cad784b7ad1c39801ad0a8e4b3b6c1914a86aeae0cf422553e9ab98a14824ccc959a48014cd91d293725103788d17f9b90393296d0eca4f0ce556184cb2e3935b1185cca9f3159a5367a8388f260cef189e590f7f69718f5eda0f516e6bd0bedbcb73730155ecb7b03ab5db81d0fbae128b804dcac1ed23d71d85a97b1b590e52e231118693105c2d1a081d157c36c2e90fc23d4c565b871dfab72bf05e301a0c993244eae15a4edbe371a12160e57892eb31888614cf8ecf44706b1610231d505a9e4af7f15b17ebff28b4a125adebe554e62d67d928c7c9e929700e952a0216a2c2b740428c2825221cd7668a2767de7531e12e38761d26a9f4b54e9bbc3c8333dfd234d8b86759d862a6245e42d86ba1763ac62a8417fcc6e6094ed3170e5cb6fb1949a8b28d6d2f5e6d71294c91cbc4f60c9348262e92f1d05d797fab7ad2840d5daf264ed2819f8b9efcaf9a0e41593f923faec41ad07a1c86ba14543480d6d357f367050f47eb096d8eba1b856c5742afc1fcffc2516d65736c2949b3ae0102c401a12a711633750a47c05414c5acd0f13b8f5cad6393ade957353f996cf30d525e3495347a2791f98fe4c4f0e879178583be0617c431756513e210f508f6f4b12e1ee7c9247c20e99ff9fa49316f6884981060a5fa481dfd6e236b12a12c78791192fa9c726a89956c56c2b804e2d9bc8560fcf1a3ab2872f651b80cc88289b48f3f96e261610b46d7f20c22e6d46c9b8c841a135bc07347176f7bf27cca28ec6a5366a5d755930362acf1be05585556a2cbb16a2c1f1ca8fc7297781b9c64e3c3471bac235090154984f5aaf8a31941e4d63ddb0aab2c08fe60b4ff3abb02adcad72f6465481d2ff227e2934ffac0638d01c1321aa7342545bcd07d0b431280aa0b39e7ae3326935ca9513c4f32ab5609992258216233c0a48477f729171f288fd43d605e970e2ef8c211bb83735fb90dc506b6ae2a3f61b54203b89646e947644041590328adf0a9614feaf3f4e3304f433622f3112ee104004c8c3511ca1a4535152e4b941e07d789640929bf0eec09ff9300c0a4f1c18a5a92588abcaef5f4c98311491460ac4895469acc93436264e5a49c71767e742f0bad397febf6efb76281e606688ae9f9b07ffbac42141d9343a91918248e46b8c790056e60d980ecd66d4864b4e32677b005c725d6a9327c756d2075013f9628690603706ca0d3c9bbd2da69af771e2c205051d2d2ad40a9d96a15c3702b5d0ea942ea02ca2a63f3166af0e9773c12173e4b6525f5f414ee8253536ca5fce60034e7b14abf9bf2f01c1c4fb67a5722547fb835bb20ce58d20cafc998fc5d7871952e4885b4905a335bbe6b0198745a22cd02a4783223e55839fb14b7b98ae273e60350b76e0085b8b63e20f8d2e00e9f438d5aa814c8f00858632586e950eba571b06e708c09eedab09dc776d3b908753b2045379db13b5a8f28163c5334bded8056aa515f80435250dd83c39420e4278259b41f3f0c0316aa0a30955173bf6846ac5942683d1bd0d751c5ed2f7f30cbaf6a177bf6b342ca89fc4001552d0a381c02efa0df45d11754ff10521473b0c4e88c5100f68074999835773de170164548dca236ea1bdca66f6edb6443e058952f51ca55db2b37790bac94cd3d9364d766ee4e6fb4c2d5912d19d81866bd018dbbb95fcbc166d8cfca7b0774856770c07895a379c225e7de436388621f4ee5cda45eca10fbbed2d708c30445509ef8e93216f763993aebad6e7a99c8c9fd18828359256564e2728edf9c546c25b89229fa3076c62d73aeaa1034d92e76acb45dd282a8d0a9d66c07c96a049e8c9e74c9d660df1094c54a719a7440bfbf9ad8440b6d9719833add7366cd822e3b0bd64c01a4694107820fd65dd616c1e4e073d0389249304d6b24a748612cd6ef32c3b88c00dea890031142800d275880f230550247c720c5848d00e84611dad8c7609795205c861235c0a890d1fe4c5f041b1849be5538323e2a14acf754154d0bda1eeed0392f0a014a1267e3787d1560cd547b542e4c0d832040d45dbe9ab6b943fea9d3d48226ee10328f14a987b051f203e3897ed3219be15e89021d6807601baafeb596553bd8d8c7dc8b32b13397f25838fbee8125ba2c13c20f4b19e8e6435693671fa74483854578d32ca7c3250bc670d32a586bbb39856ee2e183026e323ad2092243839240471a2e1ba5689792dc2e4775349f05e3368a891832a29b0e119cd7898766088473651ca6c0a3c255859861e30f26eac3a93850030081e74c017e15562360d992933e10f1f7b6c4db8232e1df57e5ad0bdc1853cb78b792f5122f82dbdf76da8d5396b484196ab2532d4294c8d2b849ab440d0162c224910a85b7a10d29a1801509d527deef051f957e3c5035ecb7dae41c7281ca65df501004dbdcf0f49894a9b9d8ac4d1fda8cecaa6357d2100f4822d399e9c2b609cb7e6c7431bc5f84b066440e44818d781409ad4f79e9af821b914ac5b4a48f893eac9437414ead6a987c1a20984e5bf98af55f7bae022f49b6e23a5c8bddb964a1726511381c6832bfcb4cc1b7e94355742c3c516c9f28d9a9e70395ffadebf887f5ffeed6c7e0a2365e228844eedba080a5bb294d2953b95b709df96f57671e1ed98414ca702119a9acf9a3d04468e13c341764252121c8d1995822231d60f6da5d9d9903262004c0a5691a75468e28612e2dd11531fdf241effd3442379d24a3745308d77abbfce265af7e5f02150abc75948a7b5ae4c8d82e75bdbd838f8facbc9e0e33dc4fb8d804ca1d0ae489eba178d1541c2a5203528880103667e6f81c63b8092ae63859219469bf389d3901974fa6f7e791fc26508af0adfc66cf5728a160fee8df507cd3334c98170c4942ddfef145e3d3ec5a346e6fc6940576fbf00a989e6c356ea075e01cdbe4684fab54e6676a2b1856773ad93258726757bf5b035ef81a12fa820fc0433f506efc6dcc22c5791ee51a4e9cd7d9dd51bf5bb42ba0c5063a8b231e05e2e0892f10622b06edbbda3bbf509a0e6f335174b690eabc8cb1b3eb5ea8262b9c2c6f1cfb2d71a284a4a807900e474c808dfc96d183e9461aa913f6824ef9e82f39043c637865ed572b8b80d246bb39e4211346d1e0010ef0b6d5e0778aea28f4d5df618e102218a9b4f1c58707f313a470c45297c4d2085649b5b01c8d2ff4ab8c21d5e976dbff0ebc2d614595a743b37404554c4401485039b0b6fcc69c369a531980a18f32f2dd3fe0fb2d9ae046ac1781d3518c993d0659bcdfde85b1853962f940e96489eda551cc7c86c16356e469fb38d111b0037646c55f80ecd317ffdba76c5b469ca733cec8a859ae1b7abd260dd01928b47185bd0e852b8a22f59d0a297ac6477463468f7db86362d8dc2d6a837c24ecc650b4fa918c996454e9076818fcfbdf4fde0a478cf076119b3d7ee457b98252c87555a0ceed4c1e95f006f11e4dbfe278e04645a3050e227dd344f006ce520d5197174034413560c1b40b2ee2573838ddd36f327d7b0a61180caaac78c97989eaa5e5454091b6a7eb85d455fbc812789c6fee416e8d7c93636ad7a963085e8cde373f60c474ceb4f9c1ebf806744e6cd150599734e31014e02618ef7f0b49e5040ceaf0260556d0720388f395a18e3066bee36f55b41eaa44c5ab8220b6f000814e6ccdc51a385c9124f0c6df244ece93c0c5329103a0cbf730789406e02652bf44cf023f50cffb5dcba97b00b151a62d9838612774f88abf0c3b675521e0d61032cb5f2aec50e227dc6aaac3bb89f6039428197333a87cd287992e03c31c8877547c0a03383127825543eb2cd9d4ba66edb95ec5e980c5bffb34c6e46aa08c19114e075a3d49069d570f8f8b96984435f9833be96b4c5959ee08c1f8fa7280e48a29cc61960c860239d734692fe57e6630b087acead67ca408b8561b214ee883d024f1acafb0fc75ba5d10788ec3c95074e6b97eda86d8812a35f562e35ab832bc2f061cc9f5bb725550813851aae8c1ea509e1980f30060138b074557f391caff749466b34b4c98811c3d830970d92642c8bc00f306da6bbe30f60ab49e20125ee5ab65eca15706ccd99d03dae56bf3393a7c3e3960f9c154e4b67dcdee78517f6a0414a0607ba52ea2f465dfffea1c5b591537eb7f264b07f0ba9d83e62d3beec2b19153a971d30b24cdbfb41b11a1efb26f8716815a35b8e04507dde5608ba8c8f9dc2e557ef7e3316d53cd7829f57408f4c8ff313079b1a658d4cdeb45643fbad2c6a5bfeeee569f15acc5a4153af57102aaac18da6bcb1c7c4ed99bd9ff23629a1e40ad5320838086caf7baaec5871402fbf0c63dbe928d60533280a58d77ed3f01560237551265c7949493a857878ee6be8bed5c20955fbca1ac5313529c0c2d8bf4ce24b49e4cb312e18939eca0ae18222deb24e6abd45f2eba496f21e79ce5050a08262166fe3b5c19e216bf1a8a6112ba414e22afd70805458db89e2997159264dacef768843f0454c05ee57d1ef287e45454f9d599d72319028735da4546e2f86e07f7595c1d38bfb3985459fc6b13c5319174e9f8f6c605d5245b915c85392ba19de0ee26d11219ba0e97fb153ede8bdcbf83c39b058d4b87a4a3dd692821c92ef28f780ff79a7fdef988cf186f49ab221a4ed7aa3dead7c73a4dc65bba1c6d5fb5f0a1a6ab2706efe4146ca1f70e68e16483a4ca5a8970a4f59ac47eeb65214e0e636892fdc2b724355b63dae9d2f45453d444a995651887f80e5e410617f024503e2e3a5d5d567d80fcc7436c6e334964e8d14311891cbdb827702d37244a43825c035264e176170acbd50f5c6165018d89e3ad6ccc0b6193ced2ae09be55ffc288021c97f0302f120953b0b5ad68223240669b57816c8738115a17d7fff45001e79fa153c3dff2b3289bc370ed59290a63c26903cea733d82d3851d78500c7546e7b92116fddfe3d9829a3b8c2b05ed1428c70db07b871b22919e2bafa8c21b1089d64c22188da51a6afbdf15a3cadbee4d2667221695e05d67392b65507cf341ff359f3adc82a787029c198ded8d0c765e0bf623dc6356cd173e575c542c68b319c658cc4cc6d32963999522ba7eeb1d34e915edc84a8a5bc2815ec034a40798b7c7e099ed14c1f6e31c3e7e90ca7052464d65a0896ae164be10708b382d290076cf6d2ff3a7c09fdb45be7b4547752519b8042d5b52b8cf18e3c8df042dbb077018dd8c75908951ac1489dffd74227b8ebcab6f4068b45a2e3278bc556d3db0a42121cfac112ee25fee36875b18e5ec0c227f24c89c0e930967b25810591a91da58252bda8aa986f9cf8460461f49049280963bc0acd320e974e4d52fd82a4116b46f6fa00ddf8a18b0b568076f7ebc893c5006ebb2c27d07b282b4449acdd6c274c07d0e0a7027f9d9ff2ab290de2ed83b6eb584c420375ceb29046eeb3d1a6035d7a8813fab17179cdd3f83185dedfcb1d225434881efc5e1028506d3da5c640e945193dec4e11ea400603113a60ad315dcf63e40121b52c465ccbb0b09173741d58809ce2e749f83e12deb96576160a6aa2577babc7e03acfedebefd35b5298c3f755dadc4c2b0378d6707a6e1ee6376eccc959c48600e060d4c70916cdc04496cb101529306ff90aac8d7f44441379f61cbeeeeb0f5c4bc5affc8d30805c807112e54ee713f1b04eaa896509623b1b285bb1049673d6ab49734ec466307cbe07c700247a642728f275ccd0a50444bc55c1a59cc0268ef5ed239eb6e323d3c87655cb94350e28ed3693fc71d8ece1b59acc6f65b93f905f86282f76569014650350c0003404553170c6a5acea742c81329e07960524c7dcec84363328c212398a078e1815ddc2ef0c0237c948f6c07d3641c685e85f1caf0890d9336640fc70d8f410b7e1e71b2e981727d8c1924e1b13c5379a067d5644423dbf57570662f7f2a0f27d205ae3fd054c843a343d477898e06f4212343a1b36376e28ce40a607b80957c1162395d5c0435a0e9d61f4971652c11b4ad928ecc46a64b9a4de5a45d486b633fc4be07c3973440d5364becb8ef7ad1e0e4b7306ef3e33895e2a613e49f04f4d1a96dca4c1ac07d50e9415fe3525ed041cb6b3b7b7ecd8412db15b8f85cee3e085830e06fe73f1a04be849b74289c805bc396cfc1888f0396222dd798d3af227445804820e8c02ab5c5fe45d640b88412d741f9f0065d98ca459ee9165670d84157a03dd9a3ef470b9b850c9247ecaf38f0a903562b8789bf01b34bcc1be940135d817b4c2470f193b3c0417a4d8870e425dd416fc138189c2bc8c791f0735c0a0838e6ca2f15498b449bc8d13b5783997ea9fa651678a8a7d76a09c29b1c6cef216f1eaf9805c832c3277838d945944b1ec5b1787c31dfe925b59df282eac50010e12d060b3defa1340817ac6831aa877433dd4212737a1988550b6b5697807a503374392f5ab4351eb93ac95a19e7f89b41c510f8d33b9a6206285ea7a305203eb84280051252ced17cb1f907bb66151a72758661a889b335f4688bbbdf7bcb3a720920e96a712f1289b19d3aabdee361ecb9a055a93644d26cb8a4f39365fd5cf22e2a0d7569d1c9c1607b1b01089eeaf0e0d5ee5f13f9530213eaff01a0f28eef2a1ea0a11b1069bbe56253801157021a9bc3333bbd6d15e6e5ceafab3c3d980205f751d301b84a19fe40d8e646deef914ba0f6029df8ac8310afb4977b4f3e3d55b4cb6f0fe114830cf96c605390b530883845e690a096334f7d9599b63ce588b0d28f58454e90a884b66c92e101ddbbaad0237ad92e3bf518eb8e5f898057282bd9f091cb3f479dd10d3ccc4b980d915aeb6136391abc274e80b3dff32e04e1efe892ff70e521e018d0883a5b2ea07ffe0c802c1ed2ef6840c68d89120c0670a280796ef9682bbc7460612984bbd8d4e60b7e40648716f6c5cccc544e4db50d79eec2f69b3a25890b29c605366fa19df897e5b227e6883ce91e3af322343456e2189a436edb57cdb489e7021db4e8ef37850f8929b7830e22bac538b5f4412c72d6dbf4f1b94c980ec88fbadeb0ea0d4f8532a3c2588d11e4eaf890e15ec26e09306cf84d884533ccc7d4f1708220c357baa7fc0ad746c0ec29cc66eac847e866e8f3b5ac904f963285230d6f95885393b486d3b1ec24ebce9fcada5f0d0acd928acd60de3f675cd5ce919d6efbf744710cbc8269b73c6c7e35f9b0ddf222eff0001c2f3aa6c06cd5467f7f3c88229db1858b3bfd7487ea7b15b2406fb7072cf4d49ee2168ad7410788c87c9b0f10e065604220544ff5629381506ab2e4512108357d4841b1bd31c5d98efaf85858353175933d8be15569705beaca8f16c4ef7d900f22a54d3471b35e02af94eccb4b341feb2f8371edcad47816e7c8e992b11cc5d4019c3c94c343865dfb5e14bed9984226422a1a741affad638fb99624d59f108fc27763d3bf4057b0027fd303ab4d4a90ffa9684283f119a86398c9e74cee9e987d85e0910666689991c6a7a355fdc5e02931c804a20877d0223bd5638660b48931f56be645c71a7305a22825ab5ca631a121f7253dcc14e59de29508083690148d469f0d17dc4d7c3ea18e082113ea8496ea1bb4d6484ba44b028e98b0bea5ad61641fbaf68b253530eb562cd7b86f1af0463cdeac8021e7633597b3115439b12ce796da13dcb912c5f59beb063d9ea10f786d82e43ae2ffc83c0077fc1463aabba0514e1451f69faee801a28958575e093156ae91fba09f742d5bf4ae051e78a4665ecb07db1ab55b3398764ab7f8099f66ac0e6cff20cb929d0db63aa73b68f4461d93213ae4be5e2b8b3d020436a0e8d100094c0cd60cd396d570ddfebfd61c34e656b99cc1f407ed10c681e83642b2407bf246a444a5cc1e44410665132e2c1d77d740e541a1ccbb9458e756c801d34821c3701d7715ae869e6b843001ede696ba56e6da55e654c83f6486e05fc451d402884e8de5a27db4f9743c3b099ed55f2ce2087fc152d988b0760792c8de7ce61ef8efce9e48acbfed11154ee3c971d67070e324acaa9d673e3772e2f9e42c23e0f452a92c213c75a94065a7a5dd8738703169a5f95cbfc18bf0311b4942687f81dfae6f0deb52f93d6b4712ee93f0c5eb1767db9b7ae72d7ba0770f381bd9223c1ef27456ceff773b1cccbcdb1e0f2d9a40d93a9a63babd3dbe18c87213d2c834f039e6ebd8e201c6c91e4fea4156f3d01f22c1b46b718fb5820461ff1aec57dc3d2fc241226d59182e8fa32a001238848674053b548007d1b5b9295235b12775f8e55b74999385cba1d113fb7b9dd5eb32cfaaaea6e87b3ab7fa52746e2a1c60ff5768294edc1098dc4589438b4fb9d1e0e7c0ebbd9be89897246d9bffa99f9b56554995fbe984269bb59f13e7c32a4581e408f77876e4b5b5f45c951efba4d8755c6456e28eef46f74b82b8f5dd80dca17665ebe66634606241338c2ca5ae73f04372adb10e509941d3dc42d2669efecfaf94369646fc5acbd8feee3a487fc98fccc341e8f445363176486b84772b25fc9e6af29024c7ac0b7611f79fbeceebc1d81c3927b1ae6450076be89d6f4d275e5604c9fe4b538bfe358f87bcf211084cac02e47b223a3cd1a04952b535128080476b53fd4890d05155c6ff35c477b0096461c41e7b0e01aacae773fac9000651b8968216b847d490238fce8b219ffb8144aca98c2b709db0dab1f02bc0ed97168ed509d8052f983b99aead7b7ef56417ca225aa94da8cfe29411d8f780475dae89ce226c16aa85fc60e9e781555c741a8db2f51b88e5c295e0ed91cdc439703ed1e2390be1bb152382a050f2c4b8332248770fe76c80643ddfe22c3d7a2ab7178328dbe5d4981807401f45467486aeef6c89f4e68c78c314e997ccaa9b93d25d10650c102118b47d7171fdb7c22ca6e5dfe4798430ec2426d0b0102f1ee3fe010f9380caf1071313a332711d5180c80e1648a321f57eca20a9c06748c2251e2b9c816f29bb5e8f74bcd5cb969e5513d511fc1a389996fb41d69d8a44a5bdb496c421ecd2e393ac7038a13f8398e46532b8ab51a33396e2981b99d88fec93e6adcbd8400982799c9a69486312229731ce3005b76fd2cebc89c36c690061ad35a4830f1cc649bff4562e11735a4e4547c980bdc2b3312a2b7167339458b004847778c778981935068ca2c37e0359e89fd5661df168127a9153fe4bb41e779776d61acd96a23011aa23c24f4a41f501d52848cd3caa70a2b75aeb54e5c57ce6b3ee95d37cff47831112b52c8024da38109c165512cb1b68137b48223f6bc70c12006703f6cce15748b9f6637c9b0a9ad5f162ca7567e0342fc25021ea4b104886aa50bc91227a72053ccb85ee149cb952f6d4797bb3807741c27a91d6ecca8ca51510d214d4ae432c72dbf58913f1917915f3e87f411f1e7bfda7da2be07ac07d622138d990459a818bcab37e4d20d4a4de6f2f1eb28cae5a0708fef3cafc3b0bf7444be138a18a12dd4f40c0f111391808a11fc4d370bdf17b24e769596dea059fdbc29a6eab4d34bf7061dbd5e6a83222418bd98557d0bb05e4baae8e934567996820596d2b9416e81b61c3270c667301ad79acc93fbe355735f5cbb7c7bfddd434cb47cd8f3d322f43c31b1aee6cbe79d30ef76cb8a2fc201fc733ae17a80b5c5338c20ae9242b79d904c1b68cbd0aa97e51165be0d3d5c1eff931c0968ddd9d256941a967fa04b6e5f6b1ef0d06276b1a64cf37cb5304600aadda5fff0b67df3a30e52f28d6031112b22f349aae1a26fc362aa067405e8d3dd7154cb17f2d7d1263cf1b06ae6c240ec22c99313967c6932d8c3e110524b4e24084050a68438f10c346ece046be57c73790b80ac61c185423cf0f8d20471ae2f2ec2450dbe08c903919814d22199433e26c03ed362c737d740e889133ed8b39a7667ca2824fc4a822cec0382d778b8fcc809c7ea92ad12473c0a6c82e935feb36b181c10039c5111b268e04e890740cc01fde8ec80875c86b5d22da211a53eac33d68f8c70d433973a400f4a7377020f82f55371c6d1a99f20a5ce4fc8e72202bccc5c45f8e7312961b3187ca0d7b8fa09a488c36c0c7f584840990f7adb14ffa04e66a600a3f5088f5b853dfc47ab861a538434c3075870be157ba2425c6ff28835a952f79477ffadd1fd6b0621023721710e3dc837fbd7531babf0c45b786c842d065e5f56ff8a855f77099704af6520db1b633591be87ca21d522a1fdbae22120ee0a70ace6853b62a4587c724cbd1fafd85a0a610842834352c020572a9fa50d8270b44a22922b0fb3071016cb24d386f5e9fa14e9fa8a532a19d4854e2bb8896841b2e1930ca03963f426d60a0afb2d285cc5c7fe01a89845bd836c84aa3fcb309058c72ac110ee713641bc9d4b12f860334aa22411618b0b5e107df4ce1d54f1a023a4d773683122cbe2c8bbab836c03f1b0783b7e59fd2cfdc8f4ec9e2521e8385ed9bda74292f141cd86a2e083c19ec871f55f19ccf12ca3cb8387b65facff7187a315c8b6ecd73fce263d2f724ad89644c6193e5866515016f92e06808bfb292be6c14255ce9ed41c5a958e8b10ca8fb6f62ac7c49827a5f308d762392e50223f82b4b1fa9d990c6be2270811917c9c8fc31824f96ba1be3dce56fa8c808deda0245be53b24fdd2c6694ab546470d666e5b38652a1f9053ad552a9b501b1af5947cc1038992133d84a9577a3aad40c4a650a6a9fa029135571d9ae0ff3dd40a2ab3e2510cfd771e35d3741a67abe10db6e3f558f016710db3fc6dd55220cf18533957512e7c816a4e99a44fb16553f582400fe13543dba155017f0d765a08f66bd2152a74968366966d44c8a0b1ed68d49998ef9f21966881eb5c21e470aed3ca4903603616f0ee6dd4b79a3a002e36ec5c13331b401a215976e270b11847f6477cbef38d657cb4c0539cc6b9330f8c48c6e5f4cc70e673d6d5425c9e31e4705658e98f6918c282648d1438065c70b5ce1d66a070c01b8ad926e519f834b95a900325cfdf4d32399f4c8ec5bf6f9de85ce79c7d0f55cd6fa6541d11832660aa970fb1922670ac977593fad80d99b4506876bf71a98f2ef6db06470c9e397000306a75d31233f0655399e0a9420e173bb06cacaae18b9b43733f6f9301c5d31d754b020ca925c3a826078dee7341fd080ec415a94a03bec6103b1163a29b0b2285dd7bbe1b6c86d3cdc4d326c868348ba6fa41e62ec444723ad2cd3b2704b7415894e9b6e5ef64590736900f224f15b9ce68c842b4a2ad571403a19e78cb4530c0f72e22021815eafa148d33125a560854a6a45223492944afe9176ff020a35a824a34aa6afe330cd73446e946698e2fc5aa6b2209427ecbe1226ab4d4979a03d5adac75ba29f742ab488c038d82bcc8fa8a43f1d676a521228c891a4580ac78e33686e10ea7392de20546686cb7d9e293f244200548541f4cc976ca8ca76785149b1c62fa3f9f2fac89971ee61cbf7bed28b898087eafc7d18ba53d3729ed0ce4275996f521fa34f2df75843fc5a1e26a82a743c624b89d82b763697013b94a4157e27ec542751cde48ae4be4c0965770efda4481ec76b520a443f983675c7e0f187870c8a1eb4ab99b9696a2f61f3a2153b1dca25dbb9040360639b2e156464f6abee4780d977fce7dc13838a4a50775009c87385196da606e5bead83b46c4c24c981d3d5919274a56b181b14c46e8e6a4132c00c3348da250d70e6a0087164cbe71aac1b25fd48e6a15f21540665bad283784c44ba72d4c7ddff0cada84a2f9474020ad9df934896b22e2c86083243326a7f4b109f8704e476b6679cf6313ccadbe7c30ee891714ce7105d0c12f594b8f6c7b76f526901f51310853bc839a6915ed097527a1fccfd6aa3c26bea1213ede48e812db8b190cecc2f1d61c4907e6c57f0aed1276f749c02c242b14c60300dda4fda713b85d5269d38e44f89768bc42ee5b98019a1fa4eff56f114f79f9660c57d597a9eb31715ecd29057cee57f0da9f8fc84c19d98fe5878c524ae417d40d1bb82325026bd1cad68ad8a9bb6d5121aeab558e12b99066da38e6c80d4c1130b181cb120cf0490fc81af784fdc5093e54b485d317577176f9a68b958e86a0c10f6f4933f4c775bd9b58cbf3184f116996ee8a6be8a7840a4f420fb4603c8b04af1ab1ad1b931d165029a7f844094dae2bc7fa143650f0e428d4f999aa19f7d7d3958606dbb4cbd0f21cc64cec7b4188a2c4b2aaf4bab60dd8cbd56973f92b5d62de505e37fa48ef6996e8c2dad41be747bd4211485923e4df9cd213efb4a177b7a2a88f62374f693fafc26e0fbd330b6fde9a83bba7ed2f2bb9b14962303e2d338388a0519fec7235f2d3ba3ae66a44fa332a499105fc9ec45b51f765f7b02f630885d018fb64b4a4075fd76c31bd42afb447abf37744b3751ce5ea4f13ba7d607ee91ccbfaf8c6d5a7cd7f7353f847fff57154af96c4041a9e7c78b6ebe8597c600dd9d120266f0582783a4ace787d48add55dde9cf2902bd4a34ee205fad0bc529801acbe790d1bd88758e8a6eec5b38c40f331ba90c49ce1e970a6d23f8a409813ec02abb11dfcc8d7947dcb4854d53485bd23275d775c2739a1847e77b702d16f01dae62769faf28808f121c8b04a9e7590892ebb4e588f7681d3ca83608eb4c46d3f8a2f9fc29a581d9688e18c2090fbfcd50f31554ad9a1c51af4bb6875956f9a89417418331d9846adb1e6cc53d00170eacf167e737b5b71826b3afc2a25faa73d2de1add2897ffdd87baba7f1513a516f4c0a25bcc18fd01c2fa0bd606010c5b88bcf6054b1f5005c4d8cd7778ce10066ca022f781e52a39dc24f95abacb95d0aa36b142f4a1613d93719cf117178a3900fcb36832336a590df06fa4aeb89b53c8fd45e59823f8999ba37ce2988d06010699e51f55ccc3a3916d0925feb4a07843c0c68ebf8a6c83f2b31564e08023f68a15f6a61ee8bed89b05f857542aa0e07363f2999d9b7598fb9b56f446276cd02899e88d070746c75e630e6abf8eeab3a87f0e0c3b6566d40544ee415fd4f3cedd9c55ff2a879fba02d9d79fe49eafd6a0eb8655739a0283a7a0bfdce2a0d8efb5ef24fbaf3cfe06194ce938e3589271c8ae27c23c2b39700239707891ca08a2272b0718a195d4f56fefe3a53c140d38fed3b77d287547d338db97bb02fcf4a7c7662afd9a226f0f1fc1815e443ce23d0f0dd2492fbf9f9e09d2041a4156ae5b42d5255d7ccc317ffa8ba7bfff75a4be13b4aa45825114f80250ef7dc741e16eb97452516400f5a2f53f0b95d6b4fee92deed115623db8a0bd23a953ec6b0b94e04ecb05fc8b3fedf6378975f1bb17c5224e4ae2543c03979c3ebb5ffa56cbb9ef9de3ccf5e0fe2e524e8effdb3102451f8102b08f03fac53882714eb593cda9da8e79fa44b21e06ea879629a1bb14ed9848eeb813b7a5429db793b8a5f21657e8cd9536214c28ee2a282019fb8f7d4cf5c6d89fa6200f32f36e6e4171fa8d55ecf8ffa93e0e81767654b2a60ea7678f321ff813bf64cf966d0c958f82e4a0ddfb8a888671d7d9d9f40179047d6d49142be9d8f07d834c84ab806b08414a94067ad546f2a560a8ec7e1be342903582672f0296cc3760c1cd0865f0a5cfd859f8cd47d49235896632b93e6774b2692ed1ce39ad7821e6d97810003cfc049810f03c436a0665ad6c6222e30bd225b5c2454beb23d532a9a43ac899df6e91c9586b4d2c4aedd6ff4402b7debd49559afb0aa59e38b2887c7cc410ec5ee5a3c9a49aecc7bf08aa9cea6a1c000ad8a002dbaa188bd307cef40fe35efaf55f86001fa79363bed0bdc140d45ca12f413b0ba4f7ddd334b54ca131661c39fd692c01e5efd5b63e96182ee5086f4c45c3d28c8735a75e1fabf6ab6396aad08803596858be88145c9c264ac13649cfd0f4b7072d96362524733224de8dc3750a5a2219c2db70155749f3113fabf5e0cf93452ea612e073c7a58ae067d7d2d6433098a70c8717b60bec7806f599bb1b3bcdfcc0e6896ae7030ce5f7e1782e1d4058484f8be6d0bbaae8753cf2fa190ba17624837b41ffc7daaef1911739f0ba200f19c390fcfb9d2c4d45507cffe848f1d355346705573ab7b6bbf062df3a4c933b619a7a41f559b49d6cc2c3303d8b8dc69841debc02996067dd00a17fb8f177b261205aefd19689a1116ac1245adac7b4dfdfc3da35b2d60a6c4ef6d2f65e1202ecbd417c7d3cb152f77c147662a22efa21eddc583d3fc57e3682d17ba7c4d5f4d357721226ae74256697501bbc4d8e81899539b9fe94b1b1c278b1bcd51ff6163e2fc5c365f29a33be1f0524f07301e4fb4943e468ef63005018b041ea439d75059b719b7734e8850cf367fa9f54985aa4ea1707fb3121fb9bbb0f671f3d9551bae01f0d3e335e10070ca99ce6c256a713a601021d317a944c7d75c43d92b4c429d10a199175bc97957ec3442a1f92472f7fd05e2253db4dd4977a6b25c19415b2d81efb03bb363c44bd3a79a5292515bf77c1210840e1efe209b6f0c19e791e68ff9f2d035563fa4fe353057aa6f1c0d4bb8fb451d89b7470d8035dbe46ce3a64b0a977bcba35e3d78817dfc52eb40bcc5730d4c18abf787d1376a7c034c1c7ac939f3eb0ff9a9355c5cf24e2c42e99aaa66d9282f607367e0028a9efcbedcb07d015f3a4aac6498fec5c8c055e048993b2a107014f35a030bad256076e4dc0a7c0f343829b8daa8c7dc662e0ab9d1f9c2ecb5be1d7a7e0ce11eb15ce1e0936f14fe45eea3245d04e8ead07f5e118d2ebe6047a081b36d902694e819fe0905220c5f0a19beed99a28ef2afe11bec2d863670969abee22d843efda934a2dc042ef0bc835b35860ea443b2478adb04b7e901d424396b9f26fd53fa4bbe157531de6b3cc9b7fe4eb6b56df0e168f3f32213d4211f4555bad4bc2a41e8b27f230f8a06c78d1ced137616d384103900c1b311eaeb2b9f7a443b65ce27bb467f9afab8b4bf04002e37249bb47b6589c38c17e0852434506afd1545a1f5705527f6bb06a22584003e2134d6514bb4996a3b7f55ae541020f8ea3fd89a31706233f36fa1c8ada1fdd9161109c329b8d1298e0d7a27e58d8a0480d23cf073b6c3b98030030cf918e4107a13b452d885bcf2f46635ac937ae948dac4df597a783d1fac6aa455306a7b48ee0bf5231b37306f03388ba5930e9ed64d0d9f39961cb8b417a0a5c384508cbca7197f2d9513ec9f6f0a5a47e716147a0ee09e46cd2998f7d58d0a9295fcebc93c9820b83bfbd18300644c7c39046703d05208688200d71f61d39840262216bc435e22062b5c34e31ea91b17c9b73109beff6d298b54dc9f8e0a6fc2d87e5625218138a56bf02467d70ca7db55b026baf101127403728d0446e10d7dc4dd0566dffc9c86127d0e41811029956b3ba4ef2eb7b54b8ab32987fe26fb1cd2394795239c38277854da5516725830ad8466b582f3eb18440912549077e095276ab02276678b133614fb846e3b70e9c7b29b4a903b1a03e614bc0df76ca2f186ed5e3bed2b93cfcd5658bb4317b43ca3ecbfb7c86f44c3449d46f92c3fac58612e86d48a37e1c812287ada2f8a11583c31eb59c6abc7912061193b69749075dcc1011540aab12e63e26368faa0ade5011bce3a516b15b156dcd5f26d8ddb3c820dc2d1170c92fb2497a2b9b4e30629a71c5b0a6b191df22843c7b42023e78e1b54bac85c02826fa1e066aabf435f87194b4e1713bfcfdce77c0871779856560842bb46ad2b919a92e4a6cc436b292b4019a3c5e515f77c61a126b7ab97d91461e8ce6066e8d67f5b91d86096a2b119a502500244b747cd0411f487fdb7479d60f5872b6d522bb8eca96bb82f9077eef9ea9e666cf90d6d8225f5a5f81181ce131c54e52ba79064bdb6184e98a3a0f81b82c8fec0a83d35924c90ac8082bbb81674a5ebd7af5de3e5d611fec09e93b24f516a32d556d73f7466a19bd7ee7b80d8c2ef99af608275be417f1db4a376e5036a2519414796e36041130743f400d48a6e922c636f094ea533c39f5b02a90aa9c9156dc8feebe2cfaba637225f4d9d746d7b25962cc03090b1aaa730e25cfc308cca545173942e6f8de1d240c276feb9678fe77fe3ccca3c776d8b485748d717698f539106000b43b21978191c08080a8b1ac407c5add00784d90dd48305295229efc86f1ffeb3312d2099c099fa03366fabd510b0257e6234bce290676ce43c578fbb5e6daa44b1025bc828aff5f8f7f0ce41e371bfc26db19ea882147f6862c6da296a0e79893aff773e1fa1e0ac89da4aff73df653cd7a623d6c9245d5e3f90df7e3dfaf57404b15568373ea96fb57a92360777a7ae756703a8ba73fc2efb8f5836feffb0143170c1e3ba2750b4186e5bc8f4d9f6b607bbe05186ba4cda4c05296b6aed2602803ce851c77cb6c8bfadf265d7e6e8a04e2912d59c8923baacce9bf4920cc52d24d09bb28e8b60c58bff4a1ba3e83ab733816499e321f2022682e8054ce94ac8a8473aef134c88949ef4735248b5d72ce37de4202eb14e215b03bc21b3e18b3cc78dbfeb6b152a9a141287c288a05828bf740361e4b9472f9790e3ec97ca1770400d479cacc76af586e0825ab21d94f60debda8438b30c6b6d17b27047c1d73144f76369973243acaa12f7cb41490e044cb5023905cf7c92d7eb1ebfdf6eb3959698b3f3f5f2fccab5b1c203029b81ce24aa4e388286ee8d0b7fa1e9cd7746093dbe22260a16c5d53926e7ffd72076dc81b7f895d8b56abc75c99f8c4de6f92582e6cd939578cc6d1e8a79e2de7ed58533d4f47ef4aca9a0c2e84b20a3b5a0937a87e9d7da176ab875d23fdd130fe8c0d96e503a0a71ff9cc933b8bc48ddaa118338952deb7f01052d863a0a61337d1cc68b9f0def54e9b535a6f95d12f7db3c298c0d83c837c3fb44ca76f5a2f2b01105e81db3cc5dfbda2e4b7736c20f940c70ac7db35ff8097b506b55c4b271d32942008111167c0769d2eb2e961908b0c341d3e7ac1d86990b2d1120f374f9d5feeebba9cf5a22ff7a3e3ef91007383f7b4c9961aef58bcf2420881deacdce08d4c51fed4e32e808591c8f9dcf3977a79c882739da37284b0045080a816678e2a15f3d0601d468b05f7ec533c6e13f0e5669e7058259caffb72bd7cba683dee5340f1099dbc225527a102b5426063d92803d39533a68f2eaf43f1fedb4caace4411b606c104b3562f1a508c9cb49db5db7b57537c5d47b2d6383363b7d67e83d9d44110cb58693575e3ee148838c8728bd8f614088442d6b1d580629760a5bba48e518c821817fb8c64d391dbd0ec02f1b94aff25b758305db4d74e2ea39ae0b793d867f517b0b019b74bd460c476f813dce75548f2fa84b06bcaf1f267272a3bb245a41255488bc98d4c5e3e63dca697864612fcb75180312f373f9ea81d5810b6bd049f7a1103fc0c9a39d5020e925563010d8ad07d78a0e56e19e4dc68340c34070e9c12f35950a4451042fb8d83f66475d1f78cbe72860bf0b30dc31349bd0dcda7b91e8430b72c36bb9158f92dbbd8f0a5c3b3986109822e3f31e9d2cc9d2bf7874aa7110fc96c5922dd914c1c39c7c6fc119e95e792810efc6324cb5be7b6145d51570fb3e7203e67662b559291e8db26636337fc71d6734fe55849333e41f96507ed469c792367e19f326d86c2fb9451e1e2cc1687542dfa45e3eabd4628cbe93e5abd2a5274917e2f8e38f3063383be85548a76a303d049838dff7fdc9f254a35d4be915a6282fd5e0baf12caf6045d19a97e5113e5e0048edb8521cac19b72897eeb975eae987214698763a53186d15e68e2cf7f05b494a2c6da8a6b6c1e6c2c9c92fea8f62e44e545389510667c03c886636be74257240eb1572a1784cf517bc9379211f286db0519400b390034b29a536ec296984cf117b0704c26adfa82fd989e5a9f7ca058099f446f1742ecd3359a6e9f70e089c51cd9b09673971ee3de4d7bbe9a86d7adabb627f94eaa4a873571a8e7eb31262c7ca52376488da498338f599d9448626a3ef89f60ae7f452f0205e308559cf4655cfab42fc4515950c60ea87d049efe2b57e246b4a142134fca4c45bb5a965b9433232249afa39ad401eed46d8b8922f35bdd82e31b338b72cef9c828caf08cd06e8341660a4d3b88f00b4d1cbb74b2b55d3aaf23099c9bc28be06888b356de39e8e2ee86553bb4c0956a02fba37693f79b743c4618790d910e29650011115fbbbb84a371f5672919a25b5f2e36b7d17378809ff864266226eca83f9d521e591b3ec5147334e391fbe3e53e382c93afdd9f1a35417f18ace316d880f5869fa33f5d5ef4e799e170079471affdd7486c3f6b5b3ce1cc46fd303f57ff5b7ad1245dd2dedc6a3219d0de7afc05763e85d0fc250e71db74e86a405cb57e15e8d661e81fc65a5dcf71dac6e81fe56150ec0691514a1d9b77edb2c6fea4676671a5d175ccf641810a90d7a36ed9a75f5940ef6c943b40c98637ad4c8d02c5dceb61e606ea17ffaeb9d7d150e0c5c214873f26988bb0f5aa1726a4bdc79bd16b052a59e98b8cbbce026ca12d038acf1f90b51abfc0de4be4bf8a628ec7a0e9c49beeb8a6339a45fe5a931ceeef78e12c990bcc395432b66bf225ea2ea70b6449d422052404d9c98407313e2e7670c7990de1b4a002b2519e46b1e623c04029515bb10522c857edaf05562c4756290ea2ead108ca389699aa45b40c1a25ab8a9700a8244f373d2cbe860db222a7c1c7b9204d4d931b88c6a6d1467b445fbf220b3b3a9b8426225f5e1dbbc1fda5a8392eea2c135b700023245e17727240e2d4383a92f3dc0dbceb1c3e5a34a565c41674a114742485f2650908c78e5fbe756c87fb7c553805959247d5464606c089c89492b48d4ea46f8780f746dd40e4b9fbedeecd95cee1b775886fd59f077191008387e3d7192d5f1e3182e513a1468072c2230c1e84693b8c6b685de35d7470ae41b89758e320ab2029ae0d43de7895b06c0dade1a8484e429e558ddfda8bdb8ec0c76cc64af64748d7b2158dfba178d21e1d45233881a7e594fa88fa7687247af0c961b3017ab3d82b0f847f8e222051207ab794361acd5f355ae60eb9ba73c9ab3218d4ea807ca2351444abf512568720239d8fcf3dfa06afa6d707c85a5aa7aabcae9fb397890fef0aa5b404dc1a797cad970ce4f89b9fa4d8ded6f43ec2f3ce3b352aa8dda809f903335579386de3198199fa85c0c0a03f7eafc8d293392eab68b76bc0388960a816f9453e3e4fe72a053cb87c81ba0e6f8671ae9f3853165d5b080e4e68a48f52d438eecd8d52f0a757e54e5231b64eb2f2e9efaae400afabca0e1cfe60fe9efb108ee850b1dd977b6bd99ab8b1c8492b76a2a742ae96dd09160eaa1ae756a43956bbee8b9c1152f03a5f62912ab00fbeb34b317486e488ee7e3a151f9fb09af81697b1c833c24e992c9bb68af0dec093ea1564964034a03e413727b14cb2d0f338e8cd3ae9b5d24b4a18cbb4308ca568c18350814ec91c1fc1cb05a219fb089e9edfe89a617c5865e6995a435849590c46d252879f37f8fa0a012efe54c5bfb33d0b096d6e0e8de3ce0e7bbc13e51d03a70769a2381ff8d040b8c98e7eb9a75c530c9e678bd0dd12ee040ae7cac93e609e762ee81ed61201e994f1cd1d620b573a900255e9fd71bd79b3af2ade560fc62d40d460fe43ac552d48c6279edde6004537ba84b2c20f3c7e3ad940326e91de5906e097ce385d7c31a1b0a70bf96fc39a11ceab1f950b64efcd3946544c28c2bac93625af0c344e8192a035abb3e10e51bf4ac7b8b1297f705485082390c7d321d22bf80f3da8bbea90d06ee755a8594f55faee9e79f0ecf26d53a06dec50683e777ea23596bd3c9025c2f2ff4c9e78ae5ceaaa8d94e3392117861bb641acf4a0c60d710ad96961357b781b5ce9d0f74281c3bc85acf39634a660ed7dea338275226b77ba314facaf75e5468f5a39c4515dc55dd71faedec8450577dddcb0c4d48d8e1f394d093a3283c96cc8fc3d5fb9130337995c6b277a1e95166868a213b5d68725fcdad2096c36e08c765ea1e678499f458267ba7ce74adb4e668080b79450b357f9e16589c5ffd094df0ea20b0c89c8ce252d6ebc47748a32ddc2672bb23e98325171e6c4df6c8568f048bb4856c4efa54377ddff843e9b2ec28017e85bc1f2fe2719272b10254a01067d39786686977773ff09b26ed423f93c1be9ca7c11747197e712bad3778bbf4a358b897febcf2269762c8036189bb31ed58a0d088c04e7ec439bf780d3101e5c031809a10d4a876b511d3c7a3ba81d24f79730ca11bf6134a571109fbc5879d1015b2d5d90bf64c81945cc2f468d8bbf5981e9c34b07dfd5609055be008d06c2582adfa1b38e1dcb86beb08b32dcc3cc7b99470783c952df744c76e821cf0a2f80a8a552140f987d2325142baca5af6359ee4d85b997a54b2d9bcb754bbc1950755166e906dca8a021c7faa78cbea5b4e4c7b283261a1ca81135d60962ad635e79048c37494fa905145d6cb9e3b3271a55e673f053e96a7e36cbb758629959326d3e8a7758514c39960c8ac12419eda09322d86248a16e59edfe074fd19d485c5fc9ba83d5f46cd0b7f93e58dc4a3eb57fd8ad563b2975394061d8e6e5c074d0903cfe204ab3db63e2792ad9c4daa0bff47df4de3c77fc3de814f7dc73349406076ca1f1e47ba81e22b0a7be6bf2038692e8c64a42fa86acc6801243082de12969031ccf9c9974b5d32ac0ab9e1674b7f5eb8704bde7222ffd573743cbdb0a94a9468989e15657388c0208c54a99ae3e7119d6f700f98427b6cbb696c4484383aeda75828f8b92ddaa020e2d4ed32639cd07db87c06ce3b05cf6a398116c5472f58a05db7297e8dca931e848e2f5b04f4b5f68cabb3ffa7335665dd84be76abcc2d060ce339873bed80f52cc8135e5fdf24501734751c79b6985d7cef6a207a9e012874ba82474102eab7806e35cd5fba2590a7777f1547c8625bc5bc5743690ba148c6951182aa7c03542867e438edd2def087709a125e248c1b155483d5e60dd18ca7bbc44fbaabc4bf567e96e9929d3c91dd965d9e12c338a01fdf4b06fd1e8016571a52f4d5e227c13bceb78816eeb73991d29862a13a68be20c0824572fe36572828fde08aac64ece9bf60cc3505f888d1ae68752eb951efe99ddc2c9123ba6bf0e03aaa62e7c47d72bed7d14e526311615d0c987ffa3237995095ee01036826fa1c5022eaf06d60813365ffc3edeca9d96c16e86ecde9a5aab1aedc650ff06eff353eee3774864bf6fbc45470d45191077bee29802587fbd1183ee1c3adad9d420b0769a569e3e9036c0705aa71395c979248d86d29296e74feaa712291a4cd880ce138eea3163f1ea7a6830e124e2266665405179efe894e5a9ed46215a11540de844da1e36cf4b47fbed7ff4fce6bec67d2a6eff5c321220d111c9de8f077c61928fd650cdaa30417e4f24321520e4a284f8bd9bd5f2043ed88853514090670d3235f6e87f186657161d24ea79ac6141a267fec0a654f71d669aaadec3c200af247b1693c8949ef998d42881b32632f3895874c91e76ad9855ccfb47509d4a2cbaa235a6102303cc161d3999bee9e34d55eadb2472182a492e6a5874dd3922fd126054ca1be26cc2aad5b3c995b531a9c7d9b87974f3d2714d55407e36b878a711750f07afe879f4388196a262367fbb7e98c884e6c9a30dbd4f6f8fd551259905981866acf2979f0a310722117c3006703f65749c37c8c7518ada0333a4b89ef2ff61d7beccbc2f84666e075205d8e3bb95c1828e5a8db8a3cf79c397fe7b0341cbd90af8f0f58132b5e82d0631360a83780cc566c2f8d3d40f4eed0d934018543185e3c0704b8055396a06a76e6cc2f7fb233621256bcd766f3ffef7f801a2cf5fdd641a9780a599d9e6cc4ae7880389c4d60ce6704f00aef4c21242b5ef7b1c94beb2231c2d57e014043ec628b6efda99fb7248e5c28eccc5a9f902c0535120131bc2d48d116c6bb4835e63897b752d5fb6e7ede7a60af43e2a208dfb727704f0d87e22e20e4312f5a87e80c1f44961e02ae4609a1a6cbbc2b8dd70b732711c41b6f9da6964497b687fb8bccf27bd3a86b22f435c9738b54354d7a79c513436e8da88d06dde1ca713a72f20a91d5ba0e9b9dfc65876b56314ec66426067a7efd2a1ef737460e88b73d94cc039c87bc57cb84f018629928e70f7b8987f65a57fae99d63e81f3d7da9ae2c090df62f473b210c5b80c19552c8e1bac7a8598d8218b3046265d85301d0c898f0b083944259b8ceaf0e82a5f0d70aba89048753dfe6756549687b905911e68e10e1b1fdce6648d6d7fb675fbbfcae511b2483ff9be75b8ba122f85a4e8c2e24d5d145d394a38d99c7c637a03ffb56373199bfd0fc7563c935f166ee831521c3ece05512d0eac6a4753944ba1b305cf834bd9f59d7e860f14eb436ac0a2d403fce04f6357d471991f590e5299bac1df51df256e2c2d7acf066839ea137733d6b2db8011d84216eea512c0474c31efe3f0784647136d7512dc157cb062cd7bf89d4d0d7d7c52d147593b1ff73256f09e835c87819cbdc3948dfa6a8effb11d484bd4cb5cacaeed7ec51430c1195fb71ad8f8d4c47459be3fca2e7a1159d411565b5df0a7028c6a1d8c0c501812c520110b245ee5b6a22c6662283fbb7155b3ca37df330d50e15a799e51a175d38fec561ba9960386436a54088c320532f25116c633ca0893498758ab10c40f0c090dc6704eea6250778dde893ad1f469596e95132589d8c5819bf003b37548b1c8ca525c80f149da09b9d67a630acfed1a82b8c741ecbcadeb96c6ce77b646f1fd8e5aa564f23630b85bed934afac26b27355147408ae13971a68fa2f7507f9941fe781789dcd987f8c27ea8c10902fb5fd0d423185124234be14785606bb24049761c1c2501c82fc27ae47e0fcf78856ca15d4ffba3ecf7f0c3adeea75ef3c008df7b69f664521aaa5ccba0ba799473af3d720f55b6681b178e7bd2a82b8263e339aed34c113fea809d151d4d08d2053ae6e9d12da4c1f79026a03e494138a045a8af07c7d2f31410f14fb57020f1204a2c5e82b10a051b8c3a8e86da228779dd02f06c5d854e7ac571855fd2465cf0211fcfc3489d0a09862002ab30c0a5e278e69ea7388e8040880ec636b59c59f9d6aa17728a63de08f95d349497fc07268ff1be80e9a77d096dc09507174cece29b51858aeee3f4cd150ce1fec61b073561389fd4b01f3990729925f7dd9d19b5ece42bb5906ab1d8690bc91b35342e8177766a18248aafeb278272e67e9de2bf63062527fccd2cc7913b0d01414d486f77a311342ae920480e037d5aa8fd319b71320b28bdba9225b4f4de21326202b31ccb337eaa4d025a0c42250f7af0e7ef1117255d1804fe87e25b3c9bd79dfafd74aa902e70e518445df65d6dbb2bc732a3da47ddd3fc58ed9c520094049d4db87cee212a60111f3f3aefd6312f6c87f0fde20a0baac51cc7cd2112048101c449d8498d5d96ee80b760983dc779eac7a7320ed2c3f74659383ab99c42d2185006f61c9b0d145efa649f05cc93d9f8311849efef6ef936731b0dc62ba15107db8e90dc3d77d0fe92880c6ad55046b91a229329d69e63cc3d6e92f05f21c5c55195466ddb734c67b5b60fde88c269e88d7d86e6ea4f574ca59cff03c6d493308c822fc12ac5921c7afe5d903c15db275c7bbb39c918dd14fbd4f339266e877158de65afa1243b26778f6bd492ef53c699f7ea59061a123991c056f7cbc530edb43fe66bd81bc90a859c0c33366e3f5c8442bb8c3c765bf95ef6819536478f72a404fb481c24cfcaf8ca59ba58a8aa449b3b636560c74d489edaa9e7ca5ac580872cab30c397e43d86eeda4e7ccb717b686f58eb0140f4cd8f0c2285e96b40bda8a69c96393bd8a48c37cae9d11b57d10043e5b005f62480b5e4162a6c7ef7023978f7b84b18246b9a3da4c3b4c32c87413993d10858ad5a860aefcc252ab5e410fcee20c5e3290a409b35973bf3d15c8820b7960417c154e65c53446b5ad0a8bc1b2c194803458ac29b784402951c63ca0e89c2da04b459e6200157e27f31a4271a899bc9a10fb726cefd246e7c80a21e9f423942f081e6c03a5377da0ce212dfa283d21390b09e689559553818da83c6818ed508edd1b0b1efd8ac821f4fed6c272890b461227a735ad64d173c23b3643fbcbe222950edad60d2f4602afbfa3621617bc482169f916e4c5fb6c1a1a4012b888d9fb186efbf54adbb258ed005dddd9e6b4671821b6f41a38db40f3a4a637d545a234bf6b907de1dce3aaea5558708747f6e3c8302586ebc046bd9bebb0be180b8e0034b7fd34285f330a6f551b20466c7e3270d9b761e228f7880dfb9dd3cbc3ec3008cc9b72642fd49c20b87b3693d73c7337d9294cca4fa08e42b040614882c7042302d49b03a141f3fa53fef4caf1f8b9435d42c04ee1c3c8e004a24802e316e9b5e07a08e7e52b528c7d92d168f251570082918cbc29dc159a1718c82312a6cb9512b5b73934b660128499543ff59e0c5c98b5be3906c3096a9552f0e950a2e3e01360c5055398743b82443bf8c57060e1ae1b722437fb86ee701844d1fb38f7950c40c03918c45bb4f20a07636226cb6c86e472feb46460f15714f9858a6d8fe8b4bd651b6e7f876dc059492d23ca942eb6072bfa92316e3bb260ce6ef5f250ab406e503244bf12201d4b6f375a5687443a57b21be76730a6ab3966f52af4cfc9e6a68e49f0e4352f0ab869d22f6a84f03cafc8740b8db94bf1fbbf3a5801f5c0086475d4da059fbb0da7632418d11bd0cdf69fa931660a65eb1ac3f5603803198bc84ac5ea0624b499d0d22ed08c1847d29bae20aec1fedd1a82e6a2ef50d521400a8b0d1324a981a84106e0fbfe67330e23dc0fb91cf0fcb64e5c9703b3b991e7ba54391eb7434ddf46a87a37bb05d76cc3cd3be6c13f92d3232dd2203b4d2f4901e558821e6670bbb48099f101bf632e88e60346bd80d21640be196d86886017d812a302e6e2f1b819e484302f7e982f23c7ed700617bf7c85318dea6ff0b3334079c8cc87f0e7e11b015123a5196eb3dae2e641415c672b30be2f20e90c5266162392af5a37118e80740d3d6b8c272cad94228dcf9d5430511b63950ec84af5fc1d83cc1a4bac2bef04640216c0ede2a2388cbc90e9023a477e29f8b3f45d1731ce59a3e88c99dd0f997b0fe0dd9fbf78d1b3a911b0e80b9712e76759f3559e217244c8d5039af1037a5329256349a28929be7f178e05050b9f565dc5bd9009c5b9d0d993233ec309e646c25a20a157cc05b47ccb37b70db7bb05843a665c8b8012613c910ed8944dc55ecd4bbed2f615ed22670cfef1f5b7dbff36e475ca2bddc514615c9f5783af698c570605d524c4304bc82dfc439eaf5e3496287ac369c2d0a04b68bda66bb09589f48968a5e77a4d598932b453142e65738648ef6d3c69fe48c90111484b2764c7be0cac86ab9e416fbdce3714e23d7cc338c96996c1ed007fb415048719725672aeb5c5160e50dd3c3f7148686a77ecfd9b0b1325fb36bfbc3d66261d8d9f841ec3a35f01fabfa0b40d8adae271a3f6abff6547a47e516c39bbeb575f09fb406ba73d2253322eddb89cd26f3bba88957352b3a31a075be48b940321e1411dafca6dd9b76347baf353b55afa129cc4241c490287ba19436f9eb8b41e3613696ebf30945bf75e75003355e7bcca20d2b7b70d8ee93f218f0241c682892148ddbe1b34953924629ae00be4eeb17d2bf8a08decb7d2ff9ee807cb5d200fa0bdf71d91b6cbd61a534270b9473997af0c19088e273935b438ac548a419dc0eb934ec267337c40d1319d98694993e2b15609bcb74a59e7ac71b92b91ae34c152201579f879ca97f3d829d4df708bbe0cc60ec9984ead6b1f7e11a93eb56a4c8039e073308aed63f8ce5944c01458594310c0846baae09dbf75fcbe59015009f2f405b0064d62feaa43fde436368f89a38d2986b68b2d85d8ba096b467826f441011a411b26fc3f1a586d415ae403186a2961e743159595be933931ed1cc461b654ea071e671222a254c1af768ef9f6d52f34d9bdf1a222ba8dd4fc0701d03eedc6ed7547a8b5ae098868446afdb0295465d9c830000511b26cd1f3a357c632b0e6f4e82881550f14c2ea622aaa5177aecc26fad76afba528be10ebf667df6a224df42cd4c0c707be0af4bc9ce13c204718a1402f72f3db0a0229c8c868df4d8adc0134082f1843ee3f57f178f33f192cd890314f66a83b893ac6b3abc3b304845ab6b54f21a80339a00eeb53d5dde82a0b5e4673fbdcc28680169fd2dced58b22055e6fcdb182d9ffa65701c70d9c22e82832230365f89bddc419e309beee74599b3e3be710123565012f9755cc0a089c5c806dff134e414b342ad0a04f6531f47240cd8262784f04a179c9167c5c1b7353ad612ac09989b4dc5e43b2ebf9ad47a4d6a1d247b13c68baf80d7dc9e6780230210331825bed77219fa6ec2b5b45c7812e462fa07f06e40e472c4e6175b919fbbe53d363a7a05ec062e298a7c13b1c4ed9736860400a8dc73bc564e9cd49b6cfae670075e29449140e01176952587d96aec52d2e953b612a83f6ab6cf1db566c06e04f5f365b4792a123f09b6b02958515359996d9d48ea416b98105ee9f856219f23823070d16e868ea9d29089a596853041308ba27f505164c5b5f358dd3677e99c5e264039a122125ef5a446d8ace1af0823ed27a192ca0b41df32c185d79a9c903c5e8921d072fafa350532ea8466ba91667903e285de3ab0907e829d24c4b0cd40097caf156ef0197612e69375e9582e0675b86da25a362fe5af4b2a23c1ca15ad9a02f7243887af343c66e9b551e40cd7d2d85bba5c9eb3a2370f217c45499d72ce51b7bc029ce827f14c72c6560e431c5ce91108ab51c29a372cc29c95f53fcb666cb4d9d2fbdc8619a1545687a009ae01fce5d64bc03b61cdeb9eb2afa3e3e6d8aef1b40fb30a0a6006083a8885290b156fd8717985ea2a16cc048e67faa8170d98f5f6e6c8f2459f7b1bd3796443d31ced9f22be479260ccac9e39b453cbde22c2035ebb8e970886e21807460bbbe6ad67cba0f0cc773db39e7eb01e7e92654e5c4d39e05ab2713a296b942789ef77c4e971e9c5087d2e42268abbd36de28a906495282133f026c176d0540bc9441f7a9a9f4fce56c664e6411e0de04c20d8869352c02c4a732b3f431b7a032053282254443bb35f9b9c74bea98f146358747807ecf24bec3d38f2d9aba8b311b7a688a924ad0450be3aabc6a8a21b98654992e9a042cea3b8cc936042f40b1a64f33c6bf7717a3090704f2ec855fa13e8f02e6957dab2f2cf3b73e6ddafbf362cb38ae1c220c996911b8917f9820c42b3f2f6c77ff9737fd83d53f7cb337bb82ebc0ae3b2c728bc21618ef08f793461c1bc3935b0569d69eb5539497706e48090b508c8f93f6cbbe455d513c80d39a30aadd033503780b360de697f24a29166c97ea40437fdaa37f5604a5dd6f8b20fbb629db8955fbafe8a5d0138faec148723504285747975312d6b6524da0dce5da91ab42805140ca2bb0e64ee4ea786b5b472e81fea9ab2019c037aedd86f89e4b0e0263de7115d45b41fdf85fdfc68ccc8d12a0f2090b0ffa7f0892b3213604815b24587d0b1c7163fee1832432b4a168986d606907d57088ba45ca9622826f521abefea8f06f4aab08aa15ce313b0e41b105caf3fc8fd80b2c99eb6a39b9ac9105a10dc38caa33003fe582fb52282cdcda18ce66ff2416c46365cf258cd22e35000f440c5a38d777131cf6ef1918ce48d433b3ae2e7e490f980dea85890aa7e4aca46bae935f3643aaac3e3ddc06a5b8a0e3189431094d60eeb07eef445f4519bf1ec89cc95bfa992c8699c3e29fb3c1764de32133aa4e08336e191628647156e76cda8667bd150174308669620ea546fb608ac10898dbe7aa950c49c7e871d0be7790314e4afce766c18d0978b45a09a0f0123ff7dbea8e51c59673d5dd76879fbf108b4a07bee3a60de61b0cb4204cfdaa01a6104a664d15c84a01d76956f92064f808348f851b700af06380f97e927ef66738868b1c9a0031e12e62ef2fb6f542c9eb62b33b219590e9b8d808b917f710ce3870addf6e9d079921f17dfb40fc9f20d6f5428259e78cb261da4416a7519816988a940a090c178e1853350eff3b087f2eb8dfd6cbfa4cf9b43498ea1f433158e39198b0d18e349303c25e9da0c2a170dcce5d265661f7dda6fdf56ee680d964e52fceb8629171cd1617ff4b63098ef6a585941334766492fe4a1b2273ee828e4325ce052152316971a0452523c33bf1faa37577da130a75f1c89f7e7a5c48dde38a1c51f68dcc071d22fc7000c38faad2d690c22b79cf9007aa67c4900d3380cc3fdc7325f10c32aaaa9be110080e585616e2cf85593f25e92535f748aa5d015033fa4c2e2e7e10a36378a750f2607022824a5365a4d2d65e5469ce4126d9c0dc01b88526e4b8fae7baf64803b4f407596eccb7aeddab3a26c65d4916415420d825b11485994554060aae73fb71ba40ab0889b90a546b347f5447119ee09447ccbd2d1c4b502d6f6b65a06a85ead694a55b260f4c31304560f4089357c685fa7ebb26310983a3958ad3b00a3c701d6854e5dfaf06efb2eb18d209f516c53ecf292a6198131370ef59a6716f7eb47d30d707c47fab693ef55742f0f3b811949ce0960bb343f03f3142168b5d17d7e45ec614ea63eafc2acba84b88a4c076baf75c2cf8f3954363e2aefeeb667ca11fcf5f941fa336482c120855cc3d6512e45594d65b086365685ca33228002b5a18d0681b2a3d36076401dada46d73eb70ae972b1d87afd261c18cb081233f3c428a269b9314e41917b4803fb680a4ea56516afdc3a8451da120ccd45facf1c75f155158cbf8288f8c2c676e6a93651a124650192ed2bd1b0d22655c9b74c6bf1e7d2bf616add1d5549b55c7cd0e5319b3be53004253def56bf72375472a7053b433892549f0657d068b470d5c3f6342a0f178afc0f9824420a6e4cb5dc6fd49c81286e029b38096c24f9b5d812e9a87ebd11ee7c2f11703d12281ae2735bde39fb163dadc712aee0df2a8ca92a9a873703c044695c99b8226080dd5bed1995e1b69d40f2755c6bce6a1b8b00fb83335b7a92b7bb53f477641b1c0cbaf94c931e062b4ae1ed2cb4889462a39e9a44b11b5824e74ba1f2d60e1a7c022af567b1d2a25496be723242160baa3e9a54eefc17810b17f4df21fad6757e35b41540153bc1aa28af5ff91bc7e157737e0b6a79c16c53a6a3f8277c170a3cab63a6e455b7ec54f1cd5483418b1d7c9a7f4117781d3065c122828696d7a0265e2b930caf3c4cfc830a58f02ee1911b6e745402c60305bf9b2941c4c2cc33d286e4ac9c404ca708f94e6b7491fed04ea8b86ce84b276a69bdee725aafc5dc78556559165508095b499dbe86e37edfff0ca0a9101ae5c38fbf1f52da054d10041beb3ce98ff6f7244434d5241c61826d6fc42a9ddd262b21e67770787cc41bcd8c117c88a74bd4c43905ee74f83f0b1bb71c4045555d6c8d8c2319e1240cd04243ea8380969aaa25a538d76a679852fea54fd0609d4d0344e04feaf5ab06530668b4715354a2ba6329e0d0eca39bd5c700581f2b370bceb8503914947c017dfe27236067d02efc7b154f6e3f09b4129c9b015ab75005a8f946954949225b65622fae38b0391d96797c18bd42c143cee59bb1df66638cc3bd2a125d29fa12a95ef7ca5d5946d08280539bc729815fd846b05a3fceff26e388e805cbc9895059b0c05828bf0b330773251599747ea7133becde06bdf3ff8593528e39eecba83b2acd8d70eb2f29c843cf64723123e50316e185d00fe339c1fa28574bf31211b43d4958a265064930fd5b50a2574fcd08030617a93d04639d1d19aa7e6e9e6a663ff55707ce294602ce2996c62ff8852df846950e90cc102608a2a815c8cfc12ad9ab07bc3045e17f18668ebda446b08c8d31b5f21f04aa27df26044b59d18ad15fd9ccf893ba4c04a0b81db20e6a89e3c8bdbad2c48eee3416dfb54fe1c07b91b1991c2dbe8fe2145c6871442c0f109e2b55f341ed12cba7dc1f5f239196408a7f66257b749db3ab435ba26c5007facd8f20867508ea487159babfad21c5eb2ea68bc776931ac3f4cb80dcb33de3d65f1e326b1a570ddb08b8a29f0acc5f7842c88828888495eb5e2c7d518ddef694014e27e8a43f787af472886381bbbd4c1c7f54f43061a9b76bb8d8cea9660c942b82ff4248964de61d06577946b07c92d2ada2c791dad35f51750fdd3be9258a497268921b38346892b9ab92e9a584f7cf24c58a66662f2f0a73e94889df7c51e0b317c6a5689236c1156295e6e6d57fcb704593f4ef36c9656826692b478d381e0862d4fb1f35e246d02457f0b0ced8c98c26c1ebd1b70296b1df33e3ed935b712ba190283ef9997008626aadcfecb3ca9816e96bd11c0d8ce78eadfa67e27e61a2c8d394b4d91fc415446401be4fc019703f21f2ab3cd31c348276d877d8db550ed8138f1e209dba66fd0b451e4c6e9ff5c665bd6c6fbd07cecf4755924c0db9d5e7b7fa225060ec4aef90dbbf9f67646f08b37cee7420077f25741aba6d362b8ec76b68e075490d4e15e9bf0a3e44b6ad8afa1d01f43b8a0b384e73621622a0cd76065ec1ae8c471d55ca5e8c6abf67ae0698c406ba8e3a9b87ae66ac89c91ab6317e374e0f1312851d8b8ad1d051c918d57b7eb710e1d54c8e8523fc98cb248439fbbc7eb8d66a44810eaffd819523111ede40ec14d4c5702283c2be07b32a4a501668c12d884f25934bf49356a39df37ba71764bb2f027488746ede1892981fb754018cea328e7b71ad2e2b654895c71001c844eaa91daba91968fcad66be7b69da9b460f2521f2f76e0e9940d62adc29c2e27b0be6a1decde8e37aa00e76454d4d2ba456d4a8444f3ad2dc79346e9e69f452a5426249e690641177b69c0ff0394107d649b5cd9984f1def10095515105fab71c25cda08274a294e628637de8647df54940c1d04039e9a75b50890af4220b0d6add6e3abcad494a398a39b4666ba871d1638433e91d680abc937755d0d32f3da144eaa82641d91ad92a112520520a022a427a637cc7cbb3d3fabc1f9b33bd3bb71ecb957017f09a5ab60af4c5f591d2a7d82702362d12508de577458a959412ab5dc5243d149e0599247dbf3c368bf9aadc81671ce48be5f31804c427045a809fac57305a19271da9c93f41fc1bd8a61af07a28c9f1b99c68cb11278491c9bc2f07995bf07becd792c80dfd3a5aa437dc2c08900da439a28633870c172a9872b5d8523d75a2b137d1bf8badadad6d6fb384a83542f6de7b6f19080bad0aac0a55751cef2955eae687df0d027670f381f1d43c83e10c7c1014f7005fa443087d9a8622a98db19342377738742698a00abc829b0945e08083700c6e2921e0c154f0865fa84e040aace1d5b5d0c631a069445788e8a9d76ba28d96562fcd95abaeeaf5f85002abee7ba410a74384531997c37412d6187b24aee6f988232ebba6a98e7aabd44af555ea37620a656f4e1f8255a9b78b947c47a590e0fc562e5c3cf51b70f5a7d91d2eeccd50f554aabbb2da7b2a954aa53aa9328e9021f83da54ae50fe0f7942acb242b7be3e243f0b33962d5256713312a75334e557d95eb576fae2685caa9d7d57def068118f5decba8bbc84f07d7bfd533f872f90af5fa5e733a5077911f76f1675596d5ad7af7cb5e75d9af7b15eaaa53eaaa7c8cb81f547f37dba8fe76a8fe525ffd39793cbcd46fc4d56bea26bb71395efcdd9b7717d75ea856f9452a75119743f59bd5cd2fa41aa936540f0a8542a1502eeebb9337a35e64e75decca5bd8d2afdd6e6dabf16b02bbda72e86ab9af4886577f58f54ceff497fa5b5ca67ba3fa6a088f878adfbbaad77754cbeadea87ebaf9696f3ed76b79cff416572ac5c233f1053e95fa5b56fc713facde4fd7ded6e9f5a9bf2295c5cd197eaf4f592971eaf5a52013af5237953eed8a659163f59bd465f1c9edd8f0ea3ea24cd62fa98fdedc5bb6bb4b7db3b2bb946975730670f03b8bd24ba59bb89a92f6eca4f8641f56d9cc01ac52a94e8f323e56dc9cb16eaea84b919064b50d55af8772f5c6abd51fc6c1cfe6e78a5355654f298b81894ff70de1cda837d9fc9ee04a7ab5d8b5d7e40de1f150923ad84784ef38ba398b5bfff498d7ae10d1e77988eee34b2864e3a76d9a1ce7bb19ec9e6c12714c4360c45c9cb0e08b45b30d523ba59c8fdb91e1d9c51264f0d5401a3dbd0b0f08c8e0e97962cad798126a7e4670fc3302257cf5db7941101424a89c9040c209249c008015763005123fa9542a954aa5da908634a4810b3f5cb0020090b0c20ea640028927008084134e4c018093134f38e1c4134e3831c5a9678a9e29a6e8e1b457690eec6411d8c92c8a37ac1831b113880c48f2047a4dc870e4d148190528ca64d408f82a7d56213281cc40044f9c27509e53ca40855442c3d260fa043a5d9e1e2750cdac0854a0b681c2b25fa6e789067873c5a5fb27d9b3db34dac8c632e8e08927507e4f5eef8866a20c4ee4046a8ec7e8af0816453d3d0a13c050513982279e4de4e513f8c22e9b092a446415584619b9450185ab3e29a58c101b29c96e8816c1d488d2112cafc58db3421ecdf669859a7ae8add21f0dea336802c16e529941b09b5460f9869d7c1823433d3df4ed790201919dbb1fd81eba86b96005e70e6fa63981e08b8a3cd5a149a04c2fd1447e526106295812c1720661498b60498d60499160698ab3097ce5b8c4898c4b221348f3b807849ebaadd29b86fbe482d81efa6cc51944735aa5cb80473381aa60790c0a553eb9b28342b7351f7ab43db66bd74443d4c0d7c4df8018d0ac9011eaa9e3d06c33179113baad1edab9e3d0846eab4728745b23c8352089f8d021d780ecaa9faccab67ab0aea2611d87a639205667dd0fac6e165f4a25d1e925956d1a912dc50be4e67425aa976ec681f0c504caac2ea112aa67e8044bd3e5838832ab8b817b7a5c126be9ce937d271c9f6c734e2ec68dcbf12624891e3d9d7235a79b2c87a3e933d78b48351e0a6e4e07ac61dba9543a3d27b209eca47412e509964a602925cf1435cf2971933fd9d6e9347033710323b0c9d6c0cdc5d3a36d9dae74c2c40dd4804d9606c6b050f251a5fc869b891404cd27192e619193837346a9046a18796c4acd73ca9c32a180afd325e9f2f349947940f1453e08cb3f79557ab0f4c1324e25602727cf9d703ec1ef087c91479225814b1e9325127645b2e7576426cac81ff48b7c1132284ec07202a5504d9399ece925bbc3f4d3cd0f9bec4da69b25363dda1c6365bc653373b4a29b449f33ce9b83e01f1b26dd6c769b8db10f5d995d492fd644ad3281e604e226ce1c22e985a2b54b46f9607acd0b3e408998e0fe7baf4eae877b02cae8e0d34c4c618473f204538e8793821fcdab18564407ef98554224090c96600a188ba202a009ec5ec0f80df8aa051e0fc6eecdbb2888f842c7e0d33f2dc594263e3e1843131fe0cc25e13827d80d22cab4803c5cdf340f064b740044336f0b88ed03f3db0d22be5021f30ab1d979a77d3c2b3e8109fc00f3109c6151d45f7b1b3d9c02a5802f20a318cf3dac3cd3783235a3389d7e1f9d746d64a114240b816cc6c190ca18eadf5c0e972018c61eeeeeba7777ddb5b7eda839707d5c6169582c9624052000593e394196dca2927ea1cf186e6138468c77cb68ad6b3b4a5a86b341bf54ab1969187ace06313147fdf41bb0da108ef00c754a94d94eb1220210c0bb65b022fd422f00166b7b791105a1aca8ca14aad076e894251c0f13274ac0d7eb01a6e7a2c0d74b620a5228dd2c96e37324a70993b713052ae0268522b1080f7c827ed0219744198d4e61c0a3415d51951610db51475d2d87f2385d28869a399d8c15913c9a14a864c923ea1f2944c1529052862a02825811ca62c5272c4fe20b3dcb6bad377135f5076da39ea27e7a8e79c28308ea767c395d6e27433d12d4a6391d85848ab2270b95504fcfac9a7a713c2c75d030f4cdf5d87eba3127ca6c97026da16a30461209b32850bfd0b3dedd32d0556bbd740a5743a17812654459c6a24f68f684ca8fb89aec23aef4b841810235a1551e1328502ab48ae944142794d89e00c5138e44b90149f1781a28c911405262fc213e92b89aa8237fd030f4d5ca260d43af59b984d351617a6ea76d3c4ccfdda05f956342e957884825ae141e3cb1544207be98704de0cb9e9e73025f1d453321650743025f12d36b591496e0290a1251015f0f8966220a49342719f783080a54645110964305be1e1250a0f2b81fb62de374c82ac550e94f8781411474b395777d0c0a84e58882e0cbc5e95f0eeae9941c0a94064cbfc2850ea74d736fceb29bebca12f00ecf589119332e6fce66bc7473ed19dacef18cd78b713ae2ad2bc7a4a83a6de3c1bc054c0b981630cf2cdce2d5462225278ce049445b025f1906694ce0ebf1c0899c12f783c4d176139c486ec7dc429c8e6ab519e58ca3b8c3d372c8d5b36081e3058e97d3f1828c4860477374139ce07ba904bd6cf278e82883ba471dd1913a681bf1f472078f071797f1e64a8f44e08bc221055c6803ae52ed7b323f70aa56e2caed78391157ae01f3421e4dcbf4eda70ba75888b5cd7221d31da286742110ece84317fed07337e360970ba9c02926c0d905633e7cc08e5e88f842cf1365b6db2aa16ed3d04f7b2de6a20711c79b04c6feb89ad29f7d71ccbe783cb8f417d7b028eaeadadba8e07904d3d3aced704be02b63453023b0239c18a0c090869e63025ff0879d2883860a24fe067b7d956216487cad2708bb8a75a12af9c0f6d315f268389df937dff15deca6225c105891f8428108423190f88c834d9f17d3811d0572835dccc8c58e20815d50cd4f072bd97e033ec1ee7b3dfd7c0143ebedf10ce1c19567c8193036440d18eb8679493c1ef83ae8d6da9cc9b0198557ec102d760889616c8e37c0f42dec106f86cd110aa6dfc1e6f8054caf837551204c2f009b3926607a163b048cb1596341e68ec0f4316c006c8e2f36479cb12299d301a60780cdb5b31903415e0e4a8809f8c08aac6c9ec1ab3f1f2a03633422c6135fe8463a660466640b5c12f85af162f115a752bab8a28ca46136bf8755ac6215ab58f5015ffe95422397df85cb1d89421989f30163a563f6c70c2e352e499b575f71d6ca1f6733835b15c38c58718cc531ae66c531ae86c59f6dfc63465e3c13ddc55ddcd061bcbbc1c00cc68edd9b78d3a3ad7f1663bdd6bb641765c7e44d8f56fa1003ef0f07b77c3e283802a711154a81df6ffbe0005a1674576047b1ae7fd46e4211a0c0dc3128710f19a5c78ea831b09b9101bbcc4accd199b641c2b4b1d0b49d8029ed2a3945a2cc2cd40eb5b0a3de3423dbc23e7ad36890cb11c2330d334350479fc1b4c580f8d181881fdd0f24d16374f80f00018fba1f181d097aad64f3ccedc3a56f3f60e78e33562a8b32aa671dceaeb233f1853e6551a4ec721ca5336f66260777eccde9c0cecd97eccd8f191cfa8f991d791e3b76fa18f8e22ee954cba4d76b9c2ddd646db89732db0fdfc867eea1fa630693be5d23d998aebede1beed86fb867dc3125a373a3cb8032a3d377f0b59d7e647b802ff41d7c6d8d6540196ebb337489aadd5f16ece8e9126a63f726745110c3262a7dae3e60ed3383cd6099d4a0c029c0b7cbdb1ef763460976681b0fa1e31dde6cf31d916340fe318321f6f78e5d0128b8919f2ff1cf56dbd201e76dc963ba44edee6137658c9cc1f1314a9e688325ac9f150c0167289050ca4329524a09a57c50422ae76c280536016f7ed8897ef548e8052ce116b0dc32ec8152887f0fca38ea8691714a29a59454ca29e5a594d28787949916b29cce01b106b515f984dfb5d7f0efb15ff2ef58bfe6b3ffd0326f1f14f032c42de058051c1f44e86637b3b00f975e4d3e2963fc8436ddf38ef9e3435929c6d8598e94991151a3c10fce2e1d3e7e251c0fa5b48d76404fe101a580633c0f07b40c8c42bfc428e363175fe2e34b948f73ce19df835c290cd009fd121f92b07d7a7aea7dbc254c41019e3eaf7974b0bc0ce897f8108f8689140c47d8c11198b0832330e108475872842547c86267300bd98e2f2f83b2879a4108258c3060b58d1c8d590df3de9d6dd14a9bbb96b1ed96d938a5157d764f8a6c9675344960a52f54893151218f28c3a35fe2636a3c10d0cf4f0fcf4cc3ee201ca99451d0faef5af7fd1010576998077bea73acd2e47d07ca1dfc420df35e162aadb02f5910153a08e0c5ae2849c933df2402845ac397b57689f2787a608d9898d8cf598cc4f0348230bc8f1f50c6c64e3391831fdc52d4b783a3c0d783c10f3bf1be0bafbdf7de7b3492e893e034b56dcc0cac110576f0ed2c8135e08924116709625e0fac011fe1dbc13bcf35c6d0a58f4914e0b37963de92fb7660078f35a1ca981b31b362a08f76034deba6d8e51f6b5e79f363c777b3fec1f15adb90cfa4ad28269af004479c1f1f331365e0e311109968c20e8e77d97e80330a8b5273c6e3bddc536e5c218f063ebec2977c8c91abc964921ee09c6d47e05c79c497f823a3389961391420e90f949492cb8e00d845ec3ec06e62ecde80dd12f5ca1f28d98ffa40d3b4e6e01b3ba57408a673be21bc19f0933e27d0be37b7e3e148fbf084f0cfc2565fea60d9839b44a9b303c356eac0eec1d9ddf231c8c335efd1b61ece7cb389d6346a8ad600419215d75d24eceda2b5fa144bdc6387cbf80e4ba839c3f2be1cd8c947a48a6a7ffaaff5c48fab5931c0573c4a0ca2e05705779417ac80c8116c714b1141100bcb68c32cc41b47c550df5d70e82b976177788c127964664ee3b9cac838b531a75f6684b81e32bec31522e3598bf775a891e1dbf7c9f47bb96f71cd36c69650df3da4a2df7d3f19f8b3235d7430b4d7d2d2d26279f19675f9e36a5c30c9661c4cbad65575482548f51157e3a361e4cd45b42010ece88d88e16ea10f026b9a6573b54e5ba7b6dfb2f2cd78b885be19f4c6d68d402d36fee4b06caebecc38b2ed6db13c033898be7f235220110389380fc12c19a7e52e2831272712812fd7e563111f6da35dab6b91e549176b83526cdc5d56f595cd1173175281dd4a756110bc8b8552c04e9e64e10bab6487cfb059e2900cddc54ee8dd0d1dc6dde166352e8b77ac8fb1b9e5db479c0d6623b6363f6cdff6e156abd56ab55a2d6cd56ab95a2becf42e161617ab83f1e286758ce572b9b016f69b1f6eb55af4a499fa747aa84fcfb81c2efed351a8d309f5d35db89a93662a5dd3ba83f182b55aad56372a6cb562b15637acabb0d55966c4bc636e4096bb625dc5a22aca52ddf5d6238f662ab1b0b45c84b81c2cd8339656ceb00be372b0fc661573caa29958625e70352d957d98c562b1582aecf65956be19aecf702143a98c8534ec0e2c5a2d970bdbf8b9fe7e6407e3e6fa6246864483dbc1657596172ad60ac68ae530586e0bc65d6f91381797eb39c32d969bdf5cb1682696d2caa5456170352d183060bcb83953b156ab55abd572b158824ccc4a5d73d9d351f6743afdb6f10aaee6843a4febda4d2fdd95af9cc5caebe5b6ed2c2cadd66db55aadafb4d85c714b6b5bb5580cac3616ebf2ed11c1a1afd8dc52e0d05d5161a7ba380cf015a8be36439cdf0fb406b0f9c7238257bc1cf892619b26832f16d72e452f035c5e872bb3ed5a66350d06d00dd8303a97ebdeb01cc6fbe6968b2a05030604a23780014e312ec78b1b20140afdac60412a4a3020151825185dc9058cd25d745d6179898596280bcf0ad66ae5ad172f2ee272b8def7a60fe39acbb5b271395cbf597171ce4529a52e172ba20e84d1bdd868d06e479ffe856dfca4ccce4eb6c35a790e3275ac946e7ea515a79babe9ad95e70cbb485c8e95dfb8aee995dbb1e195479e156f966bb5d237b1e06a5ada4e5ca2b8d46d252eeda8522c77c51ae02d1b0a856e805073a16bdddd7d73bf959fed6ebd25cf9e91748d5a373f1676c4e910614ae272fc2cbafbb3ee44969bb3959babeb66d6a800cfdd4ecc7907e3450108d0c3358d6565656585a5755859616191825774a8f1c7c3ca5d2c47bd76d4b8af9b5d3bd0b03b581976e57dbb6b18fda26bacf475e108e9b7d096cb7e0bb5793ee1b237a80fc14d575a6ec6c12d2ddabaab65859e3e1e5ade72dd1ce43708c42cfdeed4bd6139ea7df3cacdaeb679f6e016ac0281ba391d2c47b5b0d80c81b0ab597e405dfa66b84edb755b2b91c745957accb1bbb8a6f5cd36f4fdbeebf2f1d077b5b42bb75a7e9b1ffe555c8e1a77dd1bd7515fd5b8f4cd68813b2f0078b74ccc59b5f80a5a83d21a2c2e07adf115f431c74505775a5c4b6bac5459b10fb3b0b0b0b0aca06e9fc5ca37a3751d6ccb6fc4ff06e4e1dd61fcc56b016eee08f07e7ab8796627caf070a38d16376703b8f7e63a73edcd2c997b1ab7bb1d5f32dc710177b06cf14635a5da738dbbeeabc55d37d7b859871b64621deeb2f4f1d0ca892f923ea7de723304c2ad77cbd0b88ce76c87120dbbc34975834c7c43df6fb9397583ccecba41266eb939c359cbbb59b8a5a5e5b2f739b3ae77bb6e76fd713fb4b83a5c976db578eb2d50003777313777336e7e4ccc0c7671f38ccbcdd95537d7a76e8e8cbb9207c0cd598cdbfd72e9e3c1f5d63304c22dbf41264eddb7bee272a47ee3baea2c6ec786537f3ffdeee6ac0fe3f65fdc1fecfeb8b83fed7aeb2e173e1e52aeab5a5a5abe82ab69d15c76ba2cc52decc394524a718b863951e606eae62ce5e3dadfccc2add9b3b2b2d272ade5b65a5a6e539b5feeb72ccb5dc7c16d1bbb6c9089592e7d335a5fb12cdeb2dab7ed5a6af6e0c813657e62ddc8b35d75b7a76e8c72f993e9461ed8c51e5843be344b50b7479e28f36842da718e3c3bf9c716b2390ebb2e8521471e2c4f6d163b9e2113070e811d46012951b00937134ed004f3f04009bc02370f0f76b046aab85198c562f43e9013695a404c213834b375ee21cbdd6433edd1172ac2b4dd64dfb7471af5043b18859b0927302265f371ea1d7c8d2e7caaa77a2ad59d1b8bb76c545f7d757346e772b814b91147c7cf0ef1b2acce1031b1eadbe1bb2cab751be2e12d24d235f9e650338c45f03cec91623255d3e9cde190f874bb614ebf01a114f8324f77c41a7dfe746d741a8d2eeb448a3a4348931d62e26ae50b0b5dd818170b5b58252bbf161e6951c2e22e4b44c4db592c100c6f57093cb7ed98d5581abc755ed342cd213166240864d52654d468346abc6558069dc05794b66124caac5cd8135fe667ebe6ecaeb8b9aea0112222ceae8246b42c542805beb24fd4a7e973f459ba394bdd5c2114789e3bc9621f4123f008d4813d500a8d4315cdd38a1ad9b474601f1d7b632ec77b3af3276b9a2fd9b7e43181dd3cc9be26ef09ec2637dfda26f4813db09b940d55bba167d8c3aa82f3d3f1a9a19b613a4b742636af0250d05387bcd41c8012ac29e78c700942d8793068d2a3859d5657c17046197a37d6a1ac8b10a263d179bbc862d52a8404823283dbe3ad7793403d3edee03320d64f9dd22f8d7dc882cff3214e9957888681dd13049c02cfeb83943c6b78434fa80a514ee04178797dd0c8d85f9621007b8661f4ef31f4fc2e04fdfb6f9e10a2d7fa84b03e26d013f0210484211b7303bb3eccc02e081ff1c69a652c56fff8f0118287c704e0ab7f5e6b103583f60e062abc16dc50c08006cc62e18612861eb88c4431088100b8a184618a44017edf8e1b8a185ed0036e286288c2dc90b0220935e18602240697139ecdd18f08c4cd63c4083820b21ba665c3f47d25a80d250c3d98c30d650c2e80ef2d203790704319c3ce0a6e2863f0410b3794313c4163811bca18c280591a1a2a8f1338b33ac637bc4f4c62d9ecd3db9f3774e76814fa0cfd066c8e0b85429fa1db34d78b6e6661faecd2f98ea873b66d4c274ee8cd21642965d65388348208d80ca8b22571bc0781f85df9de0e29421867f04efffa30830d8da8effdf778b697e352a55142c417f849210c320384d119f8caac1e20005fe085881006c1869a6366301843e338b256e02bd238831031194285fae6e33967e828d8c10e32f164c10eb23297a65164f2f108b3b38cc57a8b5da1339ba8ad5fa68c71ca9751387a4193348485425928c368f4005fe28c06849978b336028a508559dc61c1158ed05a06ced0a2d634ea861fcc42dd5650e55f932813135fe2b32795a7e7479bd7865061131fec311eb3580446e04b636ab10874b66b3e5186477cc9e9582c9f0c89e06804cc8e4024358a2238c32438fe661e20f0e0dc545027b5e6c786a9d4a4eca7cd4b23465251df03f27962caf381dd3c410f1ec7d446e3a8318ba2db03bec447f8e293c117aca9e0f82d05b595e16d6e198e5d9438326e35d0e2e51489bbbbbbbbbbbb4f6764e17e3d20e0ee6e17d8356475c5fdac656aecc06109128cb8429422d0f46bcbe01001c28f122c50010450f8014dbf5d3a8916df2ef9056189df89c89c254bde12d83d3ef088d1889472ce194fb91a4ab99a789f115ccd3302bbc9510edb425ccd119865b9b2b2fb8ee81778ed0799a80835749dd03db07ba298c96484cfbe226fc9106a7e3bcf488e6782eea07c91678296c10e79a0cf251c9f4f18b3af74f30f148e971df4b02c3415d8b09f803db06488267cefbd47b3dd8832429800c2ec88ffa02bc29b79fd6470f3bb0186afc87cf701dfa307707cd4247cfd5e77975f94d91c34780dda9a52186abc841d6e499cf1c05162da2ccb300cc330ecd9a1cd97b6686edb568af0f532f80921d643ffe82873f68f4a99c8ae79fe1d3b9124324adffbd6879a7f9785aa14be6dada767f5cb288a6118865115686f49bd95a5a10c910c7b3707dfbbbc798f9f72be378610de77b7db03ece67bce645d7b80af39807e99970287633ed7d73f0f461f748d0fca3ae52d9c330b6169c38723551aa68f04f54be379336e0c4f0609613f045ad3788f3e084fa950fb30cbda053e1a54944b4319516d9a9a519806beecad5048fa2c418426af48f45982083c383f234b0c61090e6199cd33311020d234d23e9c44963d74931dbb3cc050b337865c4d965d7236d9dd6007bb7859317c7c0ff8921701b08b37b017bc1dec68502a5414ab5bc648a920df93d9a57c4f3e7a19bff24c0a22d48049186480843404d1e4780fa18ce287067c21793def8997a4839ce0189fe02805034152cfcf040f04a736f52bd0324f27c6d0e80137cfec1ebd319b7547da5cb0c7b3aa29b27e5a1641ea48f22e4230d65ac9d6e88e7e0039b0c45e69906eaea1034b97a634307d54c066df5d85800ba655c492f1985af8c262f421cb6a0d9216034598f7e9344c3c2684c3cc278323a2ced3a934e02bfe60736a549ca04a19b41d8c5dab2e4d98420ca61848aa76c9d570071a610c9320c018760463d8e9146a76ad077c4108358c0a750549db98710cfd82c1a0ba20e9015f0f63c79c5498bd61d703761816841a391c905aa18eaebd355bf36edb1592c49cb7c776d1761c9a792350c3609f44ea1f06042c4a93f724ca848e6118e918149c1f0e71382226dd3805bef22b82b163117bdc6c048a2fd8b95805c63eb20d3bea53df27003bec13e80735e341e48546a14208c00e7b765bb59ebb4644332179421bc2906d48568004e74d5241821acd2690c10c2a14121b1eb0c3de62adc02e0255c9b89b654ef6088465dacd590462bb3d40dc882fd845da63a28ca8c5806dcb2e446a37bb3d42175d21f1a11b135f30d813815e130c56013b2ccb28146afc811df6ecc629b0c34e9da8f0394ec1987ce31e2c29d0c1919d1c9aa8edc0c9c5e0bd3e0b6630c3af097e0f3ef8de8924d14bea7b3acf08ec5e7e46f0bbeff0d18009147d81d40079b86f33f1cd38cda265e8fb79059ec9325aebbcf125deae13a261e07b138afa9e3be8e5401668381e86d4091b0d5e544745b48dd6c310bf73a05f15fa104fddbd735b36b245f4cd5d057e1ce8eefd9d15657c882fefdbcd5956433757d664e1d7e1787387e7152abc77f422083023481bb4113cdd06366cb23b77cb6e992d3129a6c507e18ba16c89fa4ea59c52ce6e1839a59c72896ed92de5262fffe494726eef9ab59412599bc66da3229a603e4a70f309b2c89c236e1b7123f913154debad45390b3dd92dbba57c37a837783790dd325aba451ab3876fa6163728ff68b70d4ae99473ce39e7a4b4bbbb5b4aec2da59c724a3973cd3018cae49c5304248f1d81abe9f79c734e29a514c9e310e138613d82f6de2e19f260f8aa344c070f9bc0173d3c74025ff2f0f0097c1981f03027dea04621d4775d1565d815898ec00e6a9b16c2aedd0e7610426cbbd8b56bef341b835dd3ae0cd8c12eeb62a011a8036bc0471ed47e864c6ae3befcb3ef71116335ccc3e204d2345021ee278c610e5a0bbe6c43f21ec25a5729a5d695f2c0f1d2c62ed4d5597f6f6d45ac1265547f92f51894cd311875b9e4a9562c1f586a6f125fde59ab934cc24927b07b973b45a8a28b9e432681dd3bdd26a97bf97a330bcf2b9f4827ef3d8cb2ed833bcac42af1e5fd65299904be2e108377e4924b29cdb08ca149a2652379fa6af1661cf6a4e658a50a7cc93f795f3cea2fbe4805762fa26c0c82ddbbe8e6192cbad66280eaf340a82e10a8d76b44a833777c3195baad542a7569f373c5a8d79b4ebf017130ca62004bdbf8648a40b07b914a95b8c52a5b952d56890d474ae6a39957080e4dc717eca11f3358c93c665bf2f432466a158082967cef74894a9750a9cc267c44431ea4a327f107bedefba12019cefe9761b4215bbb9946cc0283c7925069c3404cedcb2c36234fc8c2417abb61b2c40f5e9155321f9acf2c1119a619c418835842f81aa6e9fc9102013d828035603c86849a9b47103ec01af0cfde68523bcbb25a59acece74158a463ce1152d8c4079be5ae65f0b55aad56abedf1dab669dbb66ddbb65aad565fad56abcb728ce52c2c1772dcc66d1cc771dbb671dcb66ddbb62da0376edbb617062d431b293dcedfe36484b90237b871bf6700073790f8177aa871061f27670580b47064f83d481020187ef7469e1e07e3602d6eb1f3900ed97e86dd0c531c1929371e823e48c4f99dce13118160f83d664f9ec0854696c97ecc4cc773c307013e3ef0f0f0394f8eb9d18387864fac99d592e2407bdff1de2f067690b6a1f6e9a5d1f57081882f1111f79dc108801dec1104ece0b378560970400cc32685afbb386368409f28604fb660f3c1b00a7e41316ed816b99a18d19669e03883a3c8fe88c1d10231d9564b6de3bd2f1269a1d0b5b7a2823270497c812fb9e0f81704bb1e353ebf204c45aba5509ff0bc233a2c620cea93c3ccc1f10c11c320847fd1665b1375ee9040fba93b970d4ce049eec824b0834fe2d8f8c52ba3340c3c0312da468e87b1b6a161f8094f5a6ba31d58031e23417d4f6027799cb0862ae0684df8598a9934893b498e489d580511d841d3b3ad7788255e814d78b3adf776c21aa8c041559e80c2077670ca40a761608c970d235b589c48e68eec59719637eaf467a78e19248b1bab8854dc1804459da68d45277bb8fa089fe8893253475281af2adac60f596ece2aab45f670bfd5b2502712f88af0650f3f93c0570b7cb11c9e0e4ddb59dcfc15fb7e923d528af48941918a580576340e15f52c7b5aec8e968e77c342fd641f66716ba7ce44723b776007df62a7cbce25b08367815fb1b309ece051763ec101318b3b9de018abc420d8c15336e418148dc00ec22a9b6d27b0c10638da157e3ab0832ffd642bec74566c53e7996ece58b00742d373bde87009e9ababba4b52370775ba24d3cdac1a6f3e0b9624ec6230364f2dc9e60c8f6cee7096b96a5307c38b6c28ff88a102be2ee0f282fa61efb9d024c1c22db3cda7b5a207190ece720c0f3cdfabd40c951e6673d2196f06bb1809846ae252d79a3bdd682b77d58da59faca93edad4bb33d89deabd199db8d30807a76c0ef2927def372526472d7a147ddc1ecee06b75883a7dce308bb36091bee22b254ef578e3e8a5d34d2fd56b73bae9a76bbaadb2f9f43ee9b5644da6739ff1259bfae8a5db323dfe74ee23db32bd7e64ba36a6abae32dd523e3d3391f2e8a95bfa42353dee20dd746f5a1f3d082c5d093b16e76efe0aeb74f4c9d9b4588c585f7125ead825f703ea945e43d1d1887225ca7df488a2c7b6533aba5ce9668cc615bdab63abaf6ea69452d4714a56b5e3f4d4258d5eb2a8d2a95eb5e374fbaa6bb2a1d3e9a3a34e479d6e86265b7abdca9aaac984fac9362ea54aa5538cb1def8d1c89a5e3ad9d2478f71d346436ec077cde620b8a5902971038973683dd213729e56470fd9ed221bfac8ee103d74f3db31aadc4596f486434af73e4cb20f7740eb20b59b58820edeaed224901daaa34eed8eedf55adb11b4a2d3a01a3ba8c68b1efae89d88d8d2110abd099e29b805ee267884809b0bdd9b7733ea44407c935dd4d79ea6715cc571331269dac69d74911d5d6449a337fa1b6253afd5937e238e2eb2b9885a12521a91b60ce0606dbb46daae91dec231fa7b639b1fd6de6b188dbb19de0c4ba59bbb6138d2f31045e4e020106700078baabd013204d7375e59200fd77a33808345b71be69dfb7cca368c76524bc78df6eda27bf33e122204d7579b2bae334a980d916dea471fd157ca7d64df15d18fe8e82559efdc6206b787ebb79b7784bec9572042b0e906146957be0289d8b45df9e64cdf346a6f4c57d4aaa717dd645bf5a29b5eba43d88cfe5eafcd76eda2679c1c2cba44409b8c0816dd1bd23992cd4837d997b38d5e0ee65427fd713ab6ab0e391b94e875a4ba1907abb08b6c1682731038b22d9beda86f4761e72416912e2ac435010508bf871eb72385dfbd09dd807d4d865eb29b76b3101cfa661fb743a489ec26ba39641f6733daf14624cbd92c24f4aeaf092853f03bc76518a775a1be77e8a19c81d7da0f85eafb6917d95068fb68db44dffa3517817390aed9ced956e8a58bde0abd8644251b3ac98e381b2271b93e8fbe5d645bf5daa8de1ab546d7a6bef4feea242e645ba79b1ebab6b2a9ab4436951289489bcddcb549bdc5bd9ef4cc7d7bc9b6b86b534f2abdaf6a916ed2aeb2a3a72c0a7595d59e4269ef211ed6bed97cba36a5b748af1f3d93ae4dfd887b7fbb661a7db36f64b2a1976c25dd8c330abd391d02c02fc88b387489e002d5b650df8fd9f787670ae6a01e8b27c4c420a1358d4a8258f7e9a1d0a7cd9a7691e8a950e8a6d04ba1d7d0163aa9060e7d143af76e1917fd12fa81183eec43d37eb41f2d854a5dd930a1df8028c8d59cfeb81aecd36637d93c83b7976c8ec1dbabcd1dde4eb223cbddfc3c71e822fba3816c6008b31768a0d9f22db79c921104905ac65943a51229e7bd8187afc610627895c83f4e4991d3c83b240607421468ed92230f9eac5faebe5d83db8e8bf57acdaa74b31f0d84b71f36ecf2ab8ca38333eb3f1a08af8e59d95c4d0c2dc69695728c61312ec77633cc2c66371ca29b4bff8d88d9f72c9021192e7d64813c9cc5786fd7366b7a76bb59d69b7170ddb29faa1599b6ecdd1bec315e36c279a6182ffdc5f88ba1fae36a2c75e9578c67d923341d4ba16eb20f77f0268ee4e2328008c13772abc7ee8eec72c7bbe872746dde457ff7bdf404843e5a80bce86e576197f6a4e3f46c07765ba2ed996d893e7a26ba36222138bb28bfaf1085b29f6ee90b35c3ae12dd9b50f62010673708e4beddd26558cae988f12c48cc48777125ec48f70778d321f703764dd7a029cb4c9b3441d369ea2653b6c99ba90975330e365d140af50ebe50771ec36ea6d74cb63b0daa29874b07524c3a7569b390d4432f028fae3567231addd3cd38f874ec1bec463f59f87eaf37db21baa9975eb37b93fa86e988f1430867298bbd394cf4971d85ca627cbbd61dd8e276bac8e6ac082c47af374b2c121d751a9d45748978387b766f301d31be6d1886e5d1cd4f646d44b7b751e354eb239b87d8647908de5e7ac32e7473697b3895fa8d1823082e9dc5e62270e92d7685cd4270e97751dd57adc4f6c678e46c5238c657ac57f8f23e819e98127ba4bc2322ec198b9b9eb3ccdaec421fd1155dde07be3acb58cc47690445fa0d08e4cd4189caa4742d8a05bb7ac2346cc36a5a3a46c78ee1122cc16d05dc4d90c00767376336378eed1bec9e0dfce8744d24e0c12fb89b20c10b70733ab6ab84c56df8522faa16f590cd41e223d9a704ece0118831ec8d4d0f61d7b2ad847a9442d5b01fa027a6c41e29d95382e725793b12470efbc6e510dd74a111d84d0c2b12ad505dc72e6534e7311254ed35ec92c0ae0df521d1a0783a51061a29a57217a1119ddc405187c80e7ccd1c75f0fc7cec26a020c58c49f0bc16e348c65dae8dece932648c648c5858ee72f110c173806c40468ef116d764d8d363d8c61a88f8743ac5b044447c3a9d6eb6f637e0bd326c8c9f6c6efce21a88f11b301311718cbfb80c0b04c331de1c0e1f468f7173cb47f7a171cb0fa3ff9f8f4444507372727268585c098bd1c8926a767122499cae1158637e332223f42ce331aec9b056868c47234e326e3e06c067f75c5f9e332c43c6cd00988f315f6ecef0e9f46e191837b3f0291a01659ae7345b0065070a3ebdc4d59ce083830e76140a85459db6d12452a372a8a42c75d5b99a758a6804000000e313000030140c87c462d170389c28abdc0714800d9bb24e6c569866410e53ca1863080104800800000c0000048236086171c6545e341208ac1eae38b39c5529fe90f217577a6983f87fb8497fb59be68639363c663a58716eaca04ca9a722a4c0d22cfe9821306f3f3c97bb9c38aa380fde3142e1d2900336e440913664d141061597b0b43ae3c7d00cf1274eccede1143ba1cd4402da68270138711c9a5bb4dea3a9a7adbc18fbbfb235eaa64cb0efbe7dadee864dbcd42cef7256fcc4f98523854f5adf28cf501c9c074f87e5675f40efc43226c10516608e1ae13a0cabf0baad12ad40259a44909fe03fe77dfd95d5f873809ca348bc34ad9bc7b0e6ff084a422f66c89dc7c036a71f71616ab020debf21f4565a67574f9c56890403d5e552f4e466a9b76f4d9bde2a0e925e3e6f2f70155cba92e1c2a51c680320bebd398e37947ccf2304df65839e63936dbe413b6084bdca66446c3ffcaa2e712bf981cdd3ec8a2c6b6ee6f7eca65d632d10d247c6b9d35ff8e094ba1ac3aac07584f1927dfd0ab45f12931139f4b754e928087f508b678a92b039ad6a66e5d05c953f6f6cc584084f614bad6756ea7d65fea49d792ea179f820f4382e70ecf9e314fad346c40dcdfb84534709aec9bd119fa8bc795940819b7385504833991b0af39bdda9ede6effaa791c8b71a8e9293d96087e0e06c451bd01b8d8127f915a175e1a0a6b2bc38276c2f3ae97904db953391e7ddc404bd2407f9301ecc03b92a646cc73b4c081293a36e07237bbb4147fbb8961f66311705052605529e288e476bb8a99c3d13cb13a63ddc26f881a55e68b0b0fce0a9600b598dcf9a0dbfa2767e37bf8a77190f6dd9b605531c9648c87a5438b43d1bf9068e15d80a6b8e04af57512878853ef941df681a22fa0faa0495be4ac6691544a86ff6f457d5e1387544d1b811b33009f388c80308c8f765fa1d8ab44a91d2bf82e606331742c65f316efb0d9743d4e5db79688bb8daba544dab7d8d07aad6bb3ba8e3494a8c53db8e00778bb38484ad8fffc7709004d39d55e77fb8c0c046d3a044b0185d183be619571b4fae33d4f349976b24ae3f6788d055a95994ddf6bc25f46544c0e04ed4c6a0dac2a8e37148ef1a35ede0095e8edfe420394157c8bf8ff2fcda93e2fa7acdb61424b9d53b3f6922cc39b8b44e779d8fa98eae6748d7d4492f5b214c43d7ce02648d77c6363740f713dccbc16cd75910343e4424e66db655b85fc4662c1525f2cf976e122813a0176e4faccfa9eb72b86975f40d5a6d061f119d33e37ed99a46eac4488cdf920f54044a9d27236cf2d07e759611a569d4757f3995e50e44953da32c5df75e2632472dcb643b976ba4fee752dee8b11c3cfe7a9b3d03c19c4ce0edbc41ea06df53fc38ad67e04cd8a7731c6f334c1fbaaf52018fc26624223b4bce6b3b0560cc18d25714bacb1413e169d8f78cd30a61791bb19943baa478ff683755a43d40d3f2bf123cc87554c74956456bc2be5161397a9e798a1afb34943219f3c3928d383a8ef04b7b4dc0e8e895225465792de589851300002026c6f5406a2c9ade87bc8056f364cabc245ead9ed5bd772ad8cab3d9386270f4d19be235269638d8544a740407deb5fde14c7d702c44fb3263f19d829ad909c883e7e2d2826435a45230d5afd03ca29e27b561bd8969258942b8f7affa884df03cfd268ab2a1684fe52efae579b2a867d516979678548fce259d29eab561631d60d1ff17ff0f1857143f786fba7da2b0814f5511146e9fd4ea53842418d94703de8e03589e2d057985e58b099fd8a92766f7d9b211836580f796598ea95a065b6ece6a6925186350435555c677f3f48dc1e6787e2f7349504151614ab7cc6edeb901bee515ba4e4c42279d3d8066b548dcb6521fbd673e7a47d8dc840cc6c4882c9a4febbd291998c025d962f9ba5ccc25011e9b0bbc2af1aca2a18b4cf1e1a1cb0c289ef6bdba6a8a334595a0e4d214fe54bd311c80d658085b6ca6d9f6babe961a0ad3439c9a65d109e682a9ca5f6e3a18146656088c737aea60b39b9376b3f2480314617ec9fcb9bcfd0d8480ff2a612edcbca1b4b5783e389557e583b8a7b6a3cf8e157b9f3e7595a8d29dedaf8be7fcfc3adbe31e9d512b8a08634830e05a91a64a3cea7b56df93a75e8db08727cf3abb15ed7a2c4e3384605689b846895db4467e2d704a6c8c1448d57273aaca56074407a42074a40dc8ce08e7ce31af9a9757683be2dc05f6e3a7a4e9aaecbdc41758eaf913acfcff52a3c77c3250f9a6e644aea6e9f29b6cef95ea4eac74477fff75d29670541a3d128450dd3220d858769f6e69ec1a79ce44ce47fa0f919fe4d66a0a3ee272454c37a8b1ede34bc6d867b32ec3889d93bbcb607019d7f93492422d0eb24400528455de9538912fc391fa35f313b83e63ffc42a1602ca3fd81618bf1a388335e2e4c894f98dfd50761fd1bf4907ab8cca6018329bf673f2c9e03480f9fae733d818710206cc60b7a4dbfe453238091983a186aa1678c0360d4e8b1b71f1e3bad78a8abc836b0ea5513e5c28b479d00ee8825ecf05ddbe7fdcd4283d1efe01e160437046ed65a24e485e2478d44e2c85af3778bee93409960a8dc791d0f8ce9db8d86db8cf26772d77a5339744c1d50cee9956e5d46aeef6b6c52979e4797fc2b8841e13e53bb272e85f6f9367066feec6be993aa213b7cffe3718833358892220a74ddbdfdc4c2d71f23f6312a64794dc0e4a6813f26d595f42e9d3bad33620fd7d47823be352981a55492695dde6dd0315315c5b14215f324a78b5a8371ae4fa152a7b3d4aea5a50841172ebd5e2847e9bcd43f428df7f844c2c50c50edfa6acb58ee55bb5a424d21df68d5291455903e77666fabd1238193ef1ea6212f2d32e0dda7457b79a20c52e5c9695cd7ea60836b09f29f31f5db7bc5cd43b0c36183a74d82e7e3e71678af3f3f4e052b9868857501393ed9d29b15c78fe2f3adf059bdb7c1ca458c399c2047cb572b0240933c92c37537c92b4ea61cfc7fb5ea6800e1e043b84fce4f40c980d7a424d43b648e4e736cd94124ccd14b486a257bd88783afb1e2ab2847b8b4493cde0787fd49ae90469c4de286e68abb926397142bc78e397fd5962809a887bb43eb2d5434a1ecd07bae7bba0291dbc1d6e723420b400ffd7df8d57745b364d402f660cae5e3ba8a4dc3f0a55180f12283ec26ba22cd99c58fe5bffcdaf128919f62ab3c61ed4ac2ca7a4d9d468902f3d1f31252437b302324eaa0d76180ac6474da0305ea90c21de35c22b6ac81f7467e24e70aa023fa12ed2212009d03d4957e567caa4a866acc399e0afff4686c0147304e2e348e4a2acadbef982f8915f0ed022cedcb9958d169e3bee9186a314865eaf1926ac67e16a9eb4726be69a7e949f2f867793789e60c9462af4c29436884160f4864a6ed79c065ec8600ce3d774e4d49826ccf948c0ef8d7c87bd88688402bf267342fc6b3108d9f220ad9537e1393247e94ea622981dd0ddf4b6450a82680c28431a968109759b486066955a8b41875ab3a4bf8630ed24e72afbfad7c28215c9ee5f5189bf92405e5144d8ddc7f85ed3298ed0349c66277e448fe70ce8180939915a2f201e88872351d377ba22649822dcd135c8beabc1c18678d403649ed116fc43e2c8130857bc403cbab0ca63e402e77ae9fefc8dd7954c25f28be9e9ede5eb55d712403b7c006a6c50e3b26b6310b032dd62b4efa5a1a5d82ddf24648d9636c8ca6a09b8720a3bdeafcc2028fdd20228b2f77c3a77104fca4ba07ac9991ed4a2ffed133a82fe368c4f0611139c832a8264434f3d55f079a19b1a075b1524e33b9bd21c7ca2eb828e1192a07444e34535cb7fffa3d4359237698ee41272caba3e621bda1c83bdf90810bba565d279c0088e0c0307e51af087b7a2f91b07154189c645ea7144de865a22e53f7753763e16828c562773660eea30c6c097c5a3a491e4ba6d7807f1c06017f104e9164ac3f2ceecfe9356e7fe7dee2da6ba8e08d40f2672bffd33b2210ae493be4de8fe3f242d18ecea93cb5936188eeaa850471b2f217235d929be4011e109a58dc0978a198ef64a9c40cada0ecdc4abc3587205c8f0957f1925195ddac7c7fd608723521daed8e8d6dc0fc1fb9487aa4d43724c7bec0cfa54b7651cd0550402d3175c9a8d9ac1c80a2b73e4e0a300644cd540a3697f9ab5a27fa744aa13a1fdd5ef79c828cfee2b364f9c64d570cefdc6a3acc5b30ead686c673b08887661569182df461120432b2c7ee92062aea5e3ca088368981e299a08df89ef273d40da220baed06d9aae0f0fdf1bd7da573780564885440cbc5abe4277b5fb714a0d16c099f4fbc6c25f610fa5253c3db0862e06ddc1ae6fbe8aaf5ca6c4639d5d50e0c6f977115fcb04353ef4ad55c2839fcc398c4a8906ec650545176b798600999e78f715414f24c6e4e230ab4864c76cced4e0ee1b83f7d8d232c4f70efce98d9bc06f6acdd2761ca47a94c877968374e6330729e8cf820e52da58926681f974dfe5cd2cb3e133bcc0b1057986302d364228b8e0ec03e518f3da3836de810772f927e0ce4b819cc347b89b7c6bee15cfc83d9353f20ff5e81e4630dc7dfd0f7771631226127717155c4761dc3d0b2ecd370da7e770d4a756ef06dc4f525655c03c08013068cc1b316d0ce1bcbb3f8d563918939cad35bff5cb613a87406d0d84d6dc4072d7d7a9915774f188edf081fd2011d81126cba6a862224f2b5ac7430df3a5f907cc04a1ae8d6719d7da8605d5b66d21cef289a4f17667a24747d9aa8b41d90ad314045baf9349849b9850281f9c8060dfe245364bdb7933fc20b503ed2d9507ed8f030c7033356d680b691e993eab18c307d3a2821b2de9c2d4ed997360547a3dfb9d7eb5320e91bb38164215fa48a3b5f3440e48c3af12488a29fdd0a702e99ae1c4e42f1a71d026f7fbcff44d6d13d64cab2888bb02990b72a9dcc009c40a0fdfc28820eb75077c86d24c275711a4ad8b8f358881560ae5377e4e939816d6848b3218b848816ebb6354581d458ead86d389ad2e50e6208eeaf6f1138b33999f385fc643a664f007e3c56520203e13ace6d997f8728dc39bca2474bef238f1e8b924fefb05711ca6ab130055fd19a4a9290f0bd7b90c08969c1130cb384d056601005ee5c860aeff23d6f2e520fe42f4ba2a2bb79cc4e56dd76f492fe6ead305d572dcf73d245fd794af389f385c4338a60389eb9521902219f5e25c9aa4bb1807ecebb25c18c2e6ea79302c1be110bf8888dc067e8faad3a0d380f529cd899825720da78b4659501b762dc2462b55207d81a916613bfa7b0489a5f56bd814a1cbdd29ce46ab7dc803c71ad33520b75023e8c2462e6c1e1ee4d1e8a16fbe3a5883cf852052429b0100a2fa9059ce3643a442d1f473249044bb1eebe3b0a80939ae270f3e4e4ecb9b8e19b06693bb866969782231b64cadc28746e4ac7569183c990be389708bb96327816f5aecad0dd7194ff08468b015444e2d16dbc0ee31a7583cdeabe1ae978defdfd2b805dee4a325721bbd1bc57d86a969b854fd8bf8d49c7a65364fea05387e80e3b67ed1b5d0b61cfd53d260f300a8ba837a7ec541224da5979fc8a91ee8261afe85347cc4faf07da24a9230a5249b98cf4f110eba06dd75dc24fcacdf566f63b2233371b9029ef89daeab8415d685c893ea7bab51b3c61fb4396148591d70a189ead40172850b1716887933502b2e71408794e48454986619e57c669f59d381701a007e66b9a92f610a7a12cc1a5e09d123532cf2c44daabe4d49bd05c605f08b212da62977edb2c70f49b9b23941b41e25a39db6565592c5503680558f94d63f9bc339bf3ddcda260962ffc9346fe29ff24a561cfcd2d3282269b64669c8c228e0edace712a1f5825be081b0e1ed40ab21dfaa7b26bbcf2b75b04c8c4960410b76276769921d72c93bd27d9469008a5f6b051960092e485723512ea506db4932f9adac140e7741e6178b18a90cd5e6108cc811bfd1e55a94f82000f3cf763717fe08edb8a4d2ae04af232ce28e1868b8397ed5f7497707df57eaad433786b69c30a6fb9f97aa8322aeec006bbf82469f10f9833743eeb2cfba8c927583b5b2b5ec7718fe07aff1c502c4d42ac8427d62cbbdf6250e165d2eac08a4c53f26cc6225621882abdeaaca1458edbc90eb95ea4a28d5560079e420842529999f8252d4430e18f00b9e0dbc79893413d1b13c2d86cb6d36464e392df02ca6f9d8681d1e0e7bb3ea24bbaff1b0230e4aaa6c9dd85964b3c0e28c648041f3ef75d5891d349959807fc437d8d62ae6c4699b0fe5766c93235d067a809301c51379f861a27a693b690888a4c3673d4cf94d99184834576a583df26cb4995aa88b7a7edb753549058189e824058a56ae8071103d0da01408758906d9f5e982922f9159be3b1f6b2faed53caa6ff87cd38672e2b6421ddf355f0a019ff1e3c3ae3bdc34e4da3e090a579c9bf399688b14cfff20662d2aa09b72e1a062e3a69a14e590b6087e0413ac40be2ab54cca50f0a1fad7a520a03dcce7859eed5d972ad57a782654b415f96375218ff41a1229fbe86cc96ec2a38c6fb8af6b8c5febfe42a57c92c141aefdab106e8af77d617199aa492b485dd37c7e7c1aa5d5b3b6e5f5a362dfbc09f8a93ba347512eb6dd9bbfeaaa6ac889cc4462d671a798f24f224c0526e1b35dfa7ca6d53bcd4c36656d9681f886e1295ac9ff934ce329d464209648da5e560b662c272d9bc0b24729771ca1d8c34015cb30eb2c2027bc72c8bf4a14ea668857dd87bc2ec5d2bd11c802da32ec5a08b00e83bd3280cb2a0854ed9b51ac337d2b19b1558e83195923a5b7e0296d312a3b8c4d122414c256e6032b73ce62ae8cd5da6263630e37405b85eebc79e1f4a81c8f71de68ffb3b72840b97ec63a58d9515b60cd5ec068f733922c18c0b49028212fa95d2038cb9bd32a6381560a4c83ebb069f05e299f7a52e26cb8ae65056b709225270665cee89a3bfca5e97274269fa7aac312aeeaa4c549fb67c1a6c802295dde55fe1706f18b089cdd69377f908f6f6b86a501d8307e621afc50d0535ea21d43ee5e85b12d290d8e1ae5b97df1833f9f60c9b6e50b29e5aafa81cf1214ffa9dbecba23b9f4bf2fccd9a07860f34f408025abf129bbd6c6fd25440251d131a8288c452abea14b46be224ea6b9200b1a5c2be354d7dcf8bfa557b94b701c8ff13ceb0f86beb41f0f92776e5ebe536926b7f27c30d8a68e525a9a6b6903c816ed24cd61bef54f82ede67af10019d364886ed3c3587c10d893d8208a312255404646a7dd1903e0ea5775c8bfe7e47fd31a593940056c0802c91d53c559ea1f479ba75318540c2465588ec02184904481c4ba5f56817f6b314b8be8a800d0f06e356c1177e812cb7f32b76b3ba1493c6c677f565d166a73a3dad97483930ed9b3d1b1f5a01d471d64e526604e939ddb5c41dec4243384ecdf161bdb9bba43f80af88ad13b1513bac391d431dd56382700c97435378aa5f408a3fd38498c6ff9c667567d44695feabb759ecd2ceb06d60f8c98b511beb97291a359b5a224e17251b141f6d1b9271816f68dc2bc7fe6ebe8575317bad1a0e394fdab91708962aeb66028e46c18250346388502ae22b8c18260b6385b4a72c598fe5578e17cf7f73c3e68cb353429ffd5f0c29ff63744d73746fca75d855ce25df0d06d334a4bc9103e6a371d70033c6b51657be812a5fc0b1bc0eac396947a1f3b6c741b0075b03134c8c0585d36ddac62cff3907797a2c3e6bbf2fd8e9f2cab2ca54b599c4a3fbc8b86706f138a96619e6d56c1d92fbf7bd473f06d3b21fe6ed1ca6591301d956e4a27e67c5752ea5d9b5c4d6da9f27890c899dcc07b248d9cbccd54849d8b7e6624d18426cb698956b29af5a1e91a6861d4081bd688a64848f905ee85e7041a7ea30754a9b61d172573d3eb71c34e4e7bf49294df035dd51c3124154e67824e3b8654fb3a15342323140c6682a71083d1b3f79f1045f6780b0d3a9b6b7984e9976e4d0b1e9ce61e45e94497258eb0fe185f3e9cf235bf6b499aba2912f1c1d7456bd5ec9c77ac0094a32e310b8cc8cba6bd362fa8f22a5789921e82d8237bb05ea16b54b668a790195f71c6413eb3fa9d844d681c78ddac9ee80831318542129c59e1c809123bb5ffc36f22cbe67401f642167502b78299b6f5f54c1caf1cb660a27c4853c1dde4f43768b958b5936d6c0aeee8142c81d91e5c237280a3c1c7d43312ecb8437e7ea9a41444c47f0b2e8b3219a77cc9f8da8389604299e71cdcfe793d38aef1f7ea70c41e874908a180c81fc171582f2f5495c010247011b81f7ce7227f5d6bf753a624c1ec8730fde8abd32e02ff04165de78d8c6ab190493762e0c5cd04a7125add6b5a686b222e70c0a6a4e1a8b6541ae20b1af9017de8d729801c62b2f160177891318ff0b231f099a9acf059f2fb7386ce2b34ac472738cf68c924724a1b9b461a70917436ced7fe0cfa6d6c70d684456737905078820ca8adea3f5009c8ee59d8a18e67638802df61738ff67be0cd9937050dceac1768ae009663562c6e2db1550baae759c60102904d1c6de0c7423bb8df3e6bbc248516c37aa774c890469c9551e27d840f6d4b05af651061fa5c07cf25d95a7fff124381d8a205778caa4ffc9cb7533c9973e124a2a1a2eb7d5e8f542ae2e3fff05e9de0bc73b16417c5f2e4890851a066ba1f752e1353497ed8360694971e95adf68ead40b4d23bc4e3927bb06fae949914f0556084036798f606c8be00bbb309631d7a589c7157a8ead2350a150d9102a452a84148bca128a7107e952c6a80a419878e04a2ee2ba9783d2374c8903af467b772fdbb70d0c1d35f422aee7c1b9b9c7646d5495d6cd2a735a1607bccb00bbc6605f615881c553fe61f6ea82b848cbccb67fd860d0db73523e357a1c9bee886cb900208ecb97bcd115aad9859028122adc2424c611dd3f1df0745adddf82bb09a9e1bc2a8e5cb6e6139c8ae59ab651fac5bbce4928caa4381d4f44aa3690efdd552a201464353dbff8a7694b58b40128d1c8b1874b42554e4f6b1008e1819a3606504afc4b7416f19a030d0dcdb960646782533216d08ad0629c130c14dc717d592c13aa5fadc2b44bfb7222d00492eb0a1022956824c661f846c2e5962d51b84c89861a6dbc56e199d4e3d3d74adcbd992f3b4bb23322b947905b71085d84f7cbfc98eebd449260219dcc18881ae6b79988e8aba68c00a6ebb90164ca648c4c5f512cc0739e7dc50f13ec9c3590d1f2281ca7e6db9927b44af3f594fd1d4ed97747f86ee9b94900d81690330f986e75df4fa6dece3138a5d908c817e8d4e71d41b4d41d30026814148c678a8504761e25a617701697d22a8ab2a3a86356ca0f3a1c160146bcf132f2065fb00cdeaeefef264e7975b33b6b654a2f29b08eaefb579a1195318560bade2698f065500a24d319684cce6091de20ca5a15f0efaf92d582cd69b842ad03d2cd62f6cb27206f21906cd16b30f4dbab3327b52c39f31c4a76edf240dbb57b71949228f754887ed92bd8fbe120e75b9caa62c90f7f4e23825a5f85e8d97482994d720c2c2fba34a86144f0a535267ff65b5b8b70864b017b69ec89f2084ce148fe620331f4f7878529c19ff181a6b2fa000450d430a6f98864ccad403aa4dd657e2d0bbe4d83dc5ca5c7e5210dfaed6f8896ac202a4223029b7d3e3a05b83e679fc14cbeed6ad7ab92e064c2c95bcac932a0e34f293e34b8e12b41256317df8529b647110fffbe23a221a02e023f45144596fd2225d94a6f26f636b3434d46e80fd069993dbbf73f2841585085ca6b13ad3199ed53bd01806a2b80458aa3624e82210007e6b4ed071a5b4a6512e0fef34b20c09867030a55b74a0e1c6c8946c0268924e079bf2cdb5c9d9524cd156a21ead4a2e4369f4490403d529fe902b48bb04829a16e0f4dc232dffe1f6a1b992119a44c6bbc8ea2b48af8ae80b87d159f0f76f4c8a6c0202350ea3519eb021617d06cd73e02d091f121130b5792f32db42b8cdfee85a7650d465144d06582b2751ee94be1e27d76ed76cfc438225bfda469237255457120da395da38be40d3e6b1f2b8b899af4e297719c42fae9c7cd434660b09b5d595b0c8cfda38dd1a1103ea30df13f92d5d9bfa13f10b18c428c8ce156805a189bb2624f1a7812cd234281669fe686e700f7c478867404960dc8974afcdee12238da266d9ad891abb5ed7ea121660de9e61e50f41dc412921a385c2052df29369b670d495ecbc3dd20614aec2c09d4a07b37369ef23893b90911fa05674d5463b2697a9ffb3cc0da79234204b99c91cd6232f233ade2bf8d1498e5e2044e37c0b23710c1c3de285a7f5de8e771535c8e1a0a5e80745aa43ca72b9fb1ef5619a51d50e3463d698aefa669ec7347a963aad1cec1c83b788030049d9e750f6f510c173e0c21b132e12a7bae5eb2c86bb9c3514f0cd44f925993ac071279400009f74d650b48f90bc00b14b0ad504a43de52b5e81d4369616c71d5fd8fa9ee862345db794304ca84e14dbc628fa6e80419bffc9d0ab47dcba38c6d5b92e0ee56b46430a55c88ce9c9814b8e23443d8f96c31044b1f53f14fe8cf0b02b453184645425b1583080b9d7ba7bb4e11553d8938aa6f7b0f95207c2a88816cb4f46753ad74c72ef4d54789d36a6896d8533e51c447479ec7822ec5e10764fdcb246818b8b24b5ada3913ca8949f0f0d971b506d552ed3dddde84a42bf19c62e6de6ed9e69e8667ccafaed2ccc39c5b07c56301e596140a544ffdc7c8e5c599b862a6b60629b195e12c9e4aaeb1d87298fad1d9cdbbdd9d9d8cad9a4481ecf178f78179653a30b613a539e8ff4ffff99b2b74c5e11ec10bc2489b81f15f99bdacf06dbb5f9670755c46d28d7e6e96bd5b0286a6defbfa9b3b1ce25036025fd3d1760fb2502037f41b56324425e5e25ba9c8b953878887bcf3bf09e7c3aea028d7e1d0845b8765a5462f428667927400b473d580968b0402147bf65e18e7151dfea37e04a8861059e814e30e2ebc5564710459de6bcde8a9551e38b06c2fd5fbe7bc066435d874ad2cf7cacc82a3fb2997e661b23a5041ad39f8bad105cf76cd92b46bd286003d335746f9f433f93f86d334db344a7b33dd05508e7b76cea0fa823a7092e98b94f52609f127984b8ca54427e809c22f74d5a0663c0f77f24cf37c846c3bf636084f7f0117db52f102924b0b88a4b44d4376afdeadf05c6344ae372eae41101e18e7ad75bcad21eaca3dcccad1ffb799c975522da4f6a83a1d18a48e94d4f818e81f3560cf272529a0ce6155ad60d84b875bfd4cecf18b1c8acba7869ba3141081ced764642dedfb29c82613e4f1f24e93c5ba768936e9af37985b9df1a320f6caedc533e42e9940731c018db52290a268079e00a3eadb162feb5772c13f7b4a3f623084601eca7a913f5e5c5dbf4e93055d268458875c025c51ee346666ca0505ed5d0a4162ff24cd28ac42ee99d1e7d955cc974efdfca5d40a88680f2b90447ff630e5b828fe931b9fc887f31606bcafab5fbef53442bbdc3240e220335c13edc571000f5fee44e1f9f3759dce9462675daba68e6cb2d7d490b0d0d5f04f39eb091b065755a8cb307cb192f8c75f688c404770abba9e22b0b9a9c07efb445975308fc2f47fe5f982739bde3a435c53e62aad26324ced853e14eff578b419ce4bd2f082fab13f2aecedb1fac3e4558092a1d11c5442c11d5f240e8a6b98a9eb51150f65918c62f0e1672ad414bddf4cc4b4a42d180bdf2d04086789f6d55dfb8040518be9192b10e88d1ba2d22c306a4514fa94b5ba57e12edc1c7093b9493f1990785f354163faa0028da5ab7ab7056b38417dba0ddd2991ffdc235562e9c92d489490c0f353e24076af241de7a7e27feff345ae09cddd9a8d22244dbf51dc997532b7895913c80925e4ab4baff240496126ec389d2122f2e7194860fdfc29d4140a0645ca8b485a4784d99d29ff448c3b598d978222c145c128333b84f7bc3192ab53386d6cff5f114e268ef6082549f88c5a82929a9a0c0df0d521c4e82114a4346f8b10ab407f2285727e97841806c44c832bf91b8411673ecb8940fa085a11210434a7a87273a2d9e63541c56043791f73268ca7e0059bf40694999b5dac5692029e4c8931071339814b843114b0d32442127c5332f6ffe40dea1021d794c3114bb3ab95e3b4e0306134dc03584dc90713c6e01d9baf169ee1b89f11705307ee4836b2a4e03a2ed19f8ca17ea22b34449401814bf6c023b2c9d77315fcf9065297166ad22f847af2063c63f9fe4ec0d5b240ffed133ee86151d75fd03136fef258da359f747adaac54e59df9cec7b3fca09d5599cb5381921b3388b39628d3251324f08ce94646e790217a08f465a1ba11e527fc572ca227a6f0885e0f209ff8ca81a2f9ec0deb3f2e3f1641a02c56a34be445a5110f8e87971204c090487dc94a8644442a5b4ea6f075d0cd56ed7ea0f28d43fa24036cb5b51c2f2a488f9fb09878a8bded5fbad641ec01112fa4fb2575f45b578b15891b23c7b3bae068b64996d0912df67d791d50f220b8a8dde437edb994cb4f45f532f4bff506998ded82f2780512aeebbe9fc20dd73d75f26922f13e62236db64b8e52c3c14c8590cc998d8393d3112687af3ab63db870ad282d3fdcead5b96ce44454671c666fd614a76864da8d1eef668688666cd338e87bc94e7a62add75856dc108f6ea0a3c6aa52d0949557b1f029599649e67030cac00dd536966239841226fbe92121aa2171ddd9d3f083d06a7f3866600ef797abe04b673ab9d98c6b1324c6258a7ce7a3dd70421d0cde00fb23049566de1c96d219c1e5369528b9e3495c8ded2fada78510841fb4239ffb8a1c2497a5c72e71f0c71613cf0743a8f5d3b792b3eea994e35b26e70047997afa4a19252b125e78b41617ffbc026cc0cc6db9e75ae6743ecdf0df7999d5f69e6287757256d6dc14069cab0acaca8e2cb883924b061f9e5d0f7ea2c76e626343872cad942b65ae5e27b3216f18f33ef82f532ea81e5c2582139e2718cb2f2033b39a252acfcd1ea4471f320106a163c7e1a450dc2596a6b611376dc6fe1a91208d56e7434d7154020044558271450177b253bf5c23e8c0d445b6a96822e115ebf808fddaa6579bf2da86fe3a2ef852e0aeef7427ff9fda07058e45584e8357d7d29e0ce816bc1a40802ae1678a2c3743bf5d2a7254b9f6254fa141d4a9fe21192bb1176531a093b597eeab34f22c9f2d56c6650e45be534c66f4ffac074c76c66347eb2d92de92107549ab5418bd34d670b38f02632d53e20e4b7034c4194a09b1a6c1c3f26b5ada05f29d932f7104a5d8ebd80625abccd28393514733e1289edd8e75889a3c0881036f922b5249f069c8c637527b6cccdbed7241536819b78f6ede2e20e9a528350eafe7f433731667fd321b570fb6fc13b8810023e269ab7a97c75a76c397c665ec55b01358025882020da49cad33fd77c857b9ca670e0111c43782351cb7669707e5e2b283338ea9be5bf0385989460e39785612fabe904669d75891f1549eae9229d45facf8e31d1b9279aaeed45c340a5aa4a7dc5745114f55cdd765c695e546122364e44123e71936678a4ce94b902514d8b37cd62b4a05a98db611ba2f88f6c50c029125f2b232bb5d51f5b017d7d356a81cd878bf62db0d1e510955e162107a5a2c843bee93d47e6546b0bafae6d25aa6111788bc4ccd4f50c0c9f767ef42e9749fefdbc04685c269f2129308e0958fc503023a20b9d22c3ea6b5d26095ac50928e8528774eecb39b77491d14d2f47bf9c99e3aab6520cd62e2bdbd0705069c26ec8f2c042976eb058974c590af090871ebee4c2f89dcba9071337083de54e9f99d8b98768f911e3400b38142b604e58e06673b36321ced9675908442a2b23552c57c0b04796f04c564c4810df5f92b3841de1d7ee130967d5c94391b45dec94b19a67d97343d7cd2e055e25265e2912e3508faf39826ab0f17420a8aa8cd3f1bd7491ada9d889bd911d070c5f38d1564b846347f695a9864a53c73a067f17bc30587eb6a4daca94d290f892bdaab15c6d61a534681ace59c3318a9b702a4778706ec95e3d208c64a7fed6de72ba713755c07e1ca8d18cd42f1068dd44b1eafa0925b3b100b7a9379753400ca78a76ecd14cd2e059d155ed472b34d1d72f2cb865a2c5e7e20435e0871046c029f21632c34a8f729748cefdd1eb369c114c517103ac7774fd0bd1ba0e899680060bf783db59e23f036060a7ee9aa0759b26dc642d0cc8218805bc1034bb8f33d960e64f5827548b32a4e40c2d4af83f42faab2e1e355d3d397fcf8b0b4f4f4d90f063990fb905e5d86392f28d404d1c298aff3004e4a60683cdcab5c52f9165038ef89446201c5d39115db759da431f1b6d8e9ce942c4b1f233ae0f9663440d2968e61fffa9318b28a96aaa41caab0061e1633c05edf98b8ee4cbc79e4a67daa3aec86ecfb54cb5c38833cf1179155db3b8c84ab3c4743512ea142a5f62e7bed5febe29f216f7e620c6fc4a7e93569f6a233cb663cbd566d7ee0e6d41b5bb4cda90bbb5381fda48c0fbfed84471e191149513e498e683f7df73ae4fbbe5370faf479c5ace36357e638fcb236a4d783388912df241fdc95243a99f0d47bc404adf41da2758acdf9db06d7f849ccb881355b2dd3afeacb0003fea12c3949a11a68114d651d3c078d72d2f98de67295d2f19cbaebcff9e7c03f6c95f75abb415278ca6d50f343d87b71dea0699f3f84731624509c9ad112e61e09215bdb32901fbf971ceb87a5d0c5732dff06346a53ec4bb36e3f5cd68cc8284e0ce2ae87124bd64749bdaca4f0fd8dd2baf4426f91f4e933512aca0576205f5825426a2b02fefd33c65a3b0f496e04864f0d8d8024923d43c250808146edd10c785425148c9ca499eadbf6a23c66b25483bf8f81939193b702d541c0716932129e0862f9174c8d87b37a78dfd800aa2c01de58cb2f268a49fcec53c215860b0dc368ea9496b29dcd6fdaed912b5729e12bd3697bbfc865389e66564b88c6ae8914e706a6b69310accd6741f4282240a1c0b6b776c48d44180b8e1278cf0fb0b780fadc0229ba7ae5a10eb032f013dfecaf3c397964da222156fb00a77f818ef3f227625ed13feee011808945ec72a8f91e0d415272cf5035030304cdf48142bb4679d98be7ccac8929cc7d77d8e87ff355058bcfa08cea9594768a6963ab951571e57acd09b6d6e4847d190ff068713279ac1d309925015ca5e8fd02a28e43e8aed3d4498043602608a4f5fb14050e31cc1fedbdb41a17f75cceaf090949c19ab9179fc23b84b9a92653621f479cb023fb0f94c5e279c9baf456d3d5c1cfdcad0a50d52f55988c6ab0d3b42ffa35d8da103450a217453db8da495cdfb1ba54092938507fc04bb458de9565a0df433edbe09629bd6d34450b2e7fa4f3e901c514f68b3d3f0d546d0a7e27994b9b9a65f75d6f4d33be65184d22c1b6b8c66b624f75d5b0a83d52a31a4eb15b81fe84117025088414712230d1383e8eab5a9cc5cf19e057805b508ce07f15abe78d2d83e57c55e6431602b6215941dea0f60c8d667134934cbf59ef804c0e8d148ced6349577f8f11e88a06813e3b4bc39b39a5886f92fed31f30cc09f2ca344c9c88096422b3661c5813ede52ec4620e617a678ae5259990cdd32fa25da388a913711702ae6e0b9fa5342b1d56229752605b815cb022cbad60e738a9fce24b17a05ec8bfd716ddda693a80256cdbb68899e29bf65eadbc11c7e5520bc473ae3c4c78ea9b8ecc73f093d558cfaa291574f34953ad8543c306c74109e55694a8cdbb23e5d2c9bd32ff5c368287a2343b49eae72d2b730b2c5b00671142363484134b26d2dc149f8e54fa33b6906c14fd45ab779b3d829e36faba14f54cca4ee83027e0ce29fe3b3dcf6062327184f50ab008a89d86d04a2805437a137652f29906348336a73ac034495720daba87514f60bccbf32e827e261631dac9083c06f30b49a1dcbe6ae6c2fc7e727a2c0494381cb83d7ac7b8ae9104eb840fb5c5b687a4af020ff3bc2d1938dc914ca25a040b6c89e15a5aa89eac12ecc9c0f41919f2f031cf5845663c09b27b57577e33f32bca60526b462061d679d56f9d2165e5aee2ddf687b7eb0414a253c99228b48d4099b8a4bca0e089e87c9b2b4a4e9ce422759a70bbb2a8d899cd7800ae5874224c4acc7bfef7595564bafb167ff036cd42f3709f7c8800939a3f03c24fd0c00e65d69f9779da4f629453cb76888c147c2697bbdd2f192033c881dc2cc640276b2c09431fa43444a9bd0208e1d302d215310542cdd1bfccfc60e9d20c94976d50edcb9a082667e99fe68a022b8ab485a68d1e72b4ff94c846484f9e56109d3b81927de17db86065837014822b9e64300bede900dc5de893798ea4d09b4e5ae4d813e0e58a8bcbef89d3f63094c653e27c9e9a66286df1fb0cc72579613284ab84d58220ed373fd85def01070fbb6566bc5bc83dba2aecfa176bd592004178e1103a7d9721830cbd79d58d9f531c74cc441c4a4b6c346070983e42929838dcbca1a787301f65374507fba8969e1ea0fdcd4069d7ec1f1eb88a53f39cd28eb09b0ac69b13c353dfdf02df983647391bed77bc6653d2799f729c22d0e6619d9d1385595d1d4399823e4e308dd7a20cd94985580026c775bd63d425ae1f471e98f810fa100d40b0983e0205298fc52fe24d4174c16e067a3e9e4ab70ee1d1790df2236a626b7b99951fdf7515054cf54e73a4b9081cb2476e3af234dbaf898529ca6c9cc8c47fd229c7925865be51018839720b2b73d5a37edd62d98587b3420743cb62d5c3bc24cae664fe1b188694f4526911b51c0c8e0bb8339d7feb31c6a2cca8fd937978637d19ea82598ce52c7e54252306032a100ff6fc2eaf04d7262a0b3cf570aa74467c65db13e873acc21ea3860bb0f8a9a71ea80c35c9e928282b2c885c090306b0e6da1821600988e7f62810a7751edea8ae71b2a06a5df50a399199602a37448612f4a293a5146089e781ef20517bd491ee975110d5ab7f7b0084f39d65d6a9d952440018930fdb1507760d6d51838d8be06a2f57cb17b108f9320a1978efed831355d95614b9b6102fdf9aacd6ed372ab95b36bc668965bf3a4fb1af9d6cc4e9770164a084c30d13a748a95fbae5a2664223380651b0b3cc0c023c9442652461396050795e8eae0d9b11d80f0e3648403c010b9d95240d0d9d3505ad8d1ca51678f0170f72d78f0f52809223d59ef339864fb74c384bd3191c4ee3f4cefac1181a6d72013e852eaf0b06356b830bdfa410f2ba2f801d8270c6f3017b2f57cdc8e53d8f56a5dd2076e9d0a73f622d05d1b9f2a8873b233d1cda50c53cc1aca8dc78cf94c1ca415d64931dd159445748935337755e01396747c41ca131d5aa355abf0dc36640b0737a1c64f720f37af54d5460ba27305ca94f16bde54d0c55a0bf815831bd58487257984786ede03e15ad4c421811c88284492a70c2607499a87d032fab860156bd1b4eda83a179565d6eaee8dd8b585a2eb2e7c7b1140e63545f416605111beeb71908351a9b4448e4a01613a09ba20fed44363ab95741811ecb06272d912d53d8f5a6bcf479762b3999b3d1d82402dfe139314d8d337215dd8c15293b98b14b241b342b246d22d582c7236a2f5f2cdf7d0117c91741512bdfcd1c7d4d108b5e73c485f90bf1a9f09f65bbd53c566b2dee3ce02fd66e43aab7cd0bb9590e504bd3069948092c899128a6516aecf8e809581a9d6b37215c09c25614d763d2c0ec4a2bed9ed62dcc85a360e5bbf6609762c7a5dd66170c9b656d6b2169d65254ab2469a99bb8c1f18c838b81ff22249085424321cc2d18796882fb5278b84af953ab084aa811b20e89dbf12242481f01d6e0e1f48bd2febd27a68b36033c59d6ce37809a2c105d39c9dcd186ea6db17abf6270caf4abef00bcc05f43cd9636e62ae4ba4f6de20eab50dfc393013dc4ca92a429a589d4b296ebc60a545e053dd0e8d7cf6ac6552876f817343957e2f02b4dd48e2f0e8a5363f6b938508933404eee50df73c4eb333a5d54056b0a324d662af10048544365c41ec736a90598744196e4531cc39c262ecc8d6f7ca08a8fcb151da910f276ee113900a8b73908d89e01c61319c2b276cfe88f2aa250b83308fc862050de91cdd69437b7be3695a39ca5770ee549e45cae51b9802a89a1af2168a76f5d7eaad1c84e189f576ca3140594306e415bbacedb0b68c11577d8622f1402870021e6a38326ec9668b3f7d4620fef263c87a6322e371d4755bd9c43952f226a7591e3cabca3810f15326387c17f47a0cee9612d5c75a87368ffb789f159af813b5a67288568cce2a22358776fdd882bdc1055833e67907fde6c87f69d32929ef95424bc4f92c50d913d7adf98f57b4e37306f19c5cb58ec34b63e366f17de74a65c9a6e744146267b3eaa5c2a184ef7422fcdf18dea25509ec9dc7a0e78047889ebfcefde9d2c1d00324ced56bcd06af3c2bcbc8422b3ae6ebdd15424e02f00dd61178b2f972818044336084fef74d2587b88c6a0a12bce0851c21019c8061b4dbd67b4f83f8fa52fe642752b77941a122de2b41a8bfb37be92c3d3bb57411db7c07752ee311d58d89dd7b7b4a17d3763ae68fb7c80245edc562b513d1a329610a7e11208d380bee0a1ab804c8497726a476ac7b4256ce01f51e45a83809575fb127a62938e5cb9a1091c4c36b72c56ee158cacf1a0f22cdbff3e12afd6c24be9ab78eaf368d508b4eaa8f88839ba2cb3f63b0861332e8ab847edfdce9fe4088b378fc0399d154109b85b261c3d0d4de1cdc9ef15c868df20d49726e69c1bec6baba4c7b004f01f468e832f7c13e729c4f507f471a6f87a21c19387873ca3c9f090f56c7664b63f22c258a0162368528e582bf19ac836dff7b80a7359470ed1300b3a902e967f7bc54bae6d414f6e644070cdc8453d41c39874dfc7201110c097a5e75927b8ec36d9132069173740fd99d8ee3ee94b4690ca205e6988368ddb7971ae119ecdb3a2eacf858a83d8b6f525b7422e4edeb3e1a0075b81a08a602348160f4702f4b2c63e7330e9f0ac666b6757db6ff873ff5ee0f13ac21b386214fa05400be7b34b46814ec19d97b65ce863da779836ddb5898f3131307dc897fd1443d6be12fa5cd3f1f2aded3d0c43373b64fc60888277f87803966364df20f2ae59e92ace49598551b7c8e27483f0e1cce2a5932cba435a7d2b86cf9c25317a0c33f4c28cfc6055e0386422ad4fc6dd7e165f28c54cbc1c814a5dde61843e31cb9afb7238efe6373f0064b01db75fbb6af10de31520f86eaa5d923e9bdf3d910fc06e90bbcc9c35e036fa08dfd2fbdad5b53f6a224961c54590f20d7fbbbb3bfacbbb264b311791e32007eae4fb71688b0ff594da89c188fec1c2fc549d32d09634494ae843ace8103119eb93c20d0f084271d14c109dec2129ed58ed8686b0cea6ee7e55633224b298b783246f84e3c283c1bc0cb276a9fb737c4b160fd2827a60a235523e2c8a262a06d6fe986c558e0290034c4a8a60f10e48089d69915cf8442ed2d2cabcf6ecc4643e0fcfa3f67dd2c9a75f447b5197ae9e1a047ce465b3be071e84343d3f50fab7c80d5e88bc6ea1bf0eec8dc5eb96678fc2430e99d06957a368809510ec651f7ba8d4da876eeb294073d0f7167c73e915d95515d3b7c884ffc25626f032cb470d5eccf8ba60f3b33c9062d10f50dd6999fcca9892c63126602b3009ce08fe1e1b6193eba80c68c72014015e0be6d735a575dca37b42418480d1d4a118239b51c4e2dbca6adb5cd6b15244a368921551269aefa1b2184155b16d53c01a75c48be8d4f3b33d4fe11b87a0afe12c8cb7008a6cbacd7a6ad9bfcb91071888657e430f6139ce095729a0e071b735e0d806c82288092660863125911e8d2cd130f758d29ddcfffae30abbb5f5fe394a9b32f9c98f585a0fc2c9e21d928c0be50cf7014dff4f248a60cad0b739bf83d3b2405fae9957a05ed2f65bf8402411205f2bd7a8eb37d74325dfa4c48ce0cf5c29cae66803740f00131a21aec43a2a3846322d9739182b25146b8001b68099edbdecf879f94581d00da08912921239524d21b54faeaffe6b35a57e2df21443d7dcad97b2119c198fa1078284af4322ca080b10de2ec69ad25c1e787e3bee57f6f04b09aaead18b4792302da7530def4fc43f60ea5d67de521bc98c123ffbca9264b97e8b4c630e9dc747a515650a3330b36d2dc5e13d202c113ad589fb6587957152e1448ffdc70a16cca086332c07e08a2147f0342dfa192b81e292605eb7048304571732840218fe965b68caf815da58ddded5fafefa072622ae3258893bcc3f33b7801214172666348229ae485fc780809b89b551e6db5de27750cbf213905bc3f24f4409403f0c60cdcf71bcde01da875229cd7dc2297d8f0bd51d6d7efc4c40dd93cc20c61e1d1e5dab4c6a63b67d4d0a2cf06cb4041931f20fab4d48f81dac2a253cdfbd986770d37ba6724e3872e7ff8843f53c806c130b09ff2987368e0063f5e5c3a3179024d04d7bdc300e30de3166b21520134e2380b296062e3f1b7662f5ae89aac97597d3fd2adee7717f559e3ffbb881e1322e2024c39fb3559dd215e8a4648cf52aeb8510d50e04610501bcb4bc846d67810c5d29269da1ff9b39fd7d2b9d550a49626f3ae2adbffc77157d3829b565c33557d6276a8082bceea97f63169cba79814840675459f35fb992d1ab14ad873c3379d55ae2ab300d6da92345e1b1a0fd0465d25b385c57ed8e40a94ebe837a73efa36b17d0c440458b75aef18de754878abd3c99b67029f0b1b265820e03bfee71dfd717a770b74079cd23980224f6ce5af6efd427388c08428c32ad6ba41191160974ae1090e2d3d35f4baf971e707d9aa6f5ccc700a9eae03da65932b2ba7d6c70f813e04a38fc86ff2e10149cdc81da1a2d8f27cd205991591049d7549c33a43f44bde2ea2b36d212aaf20cc26c9338a016dd12375ee7fa4e82c7901fe7beccff6614836053b9a9692fc00f6273d2efac3392ed04b22bf357e372d78992345c5a5df3c96d63eb041485a6f63855a7c1150b14e477fc8da4afdeb15344af79a5da36e3f91a87f365646c7a47b29ce670c428fad1a033f108429ec578d159aed67b7ac06f86dea078c00acfbcdceee3d0752776116397382ccd30f8f04ba551082d22fd9ac440d048b4bfd2fbfb79f804172d9e052e4335bbc31d02d1983b08a45cf586984259e2b7c902776f9eb51f1481f52f427c6a52e8bf5aa625dddd30716f25cad7c4867615fa4edf43756647802914a90f4e413d3e7d4151c296a659f6cfae73a04d0a717346fc59e43d464716201a0b4b49a81a9a9385f20c00413ab6f11ae42db497efe507a54eb94a46d30c69eebfb023c0002587313abd74024d54ed108ea6956cc52cbdcee6af339edc12a74d560c19f5525b5ee018305a7463a6b2e058305932e63f54cf4977f3de33a35aa1713ca4c6961177cb2f455f59c27c246462d0856865e0f23b8b38346e36aeb5915f01c15f22f72f1945e2ed9f8a1af727c2d9263dde266396696eebdc9f1ef466c8a9779210b03a379b3c937715ef69ec1be2b0102670240ad4f401d32afb863c00cb94903d2262bcb5f20af4fab42869fd930e9ff059038b53df3ac6346fe7fb55b54d5cfa1fe1cfa8df906f11f85b4cd47a79b8dc3deba2a62e573c3af472c526ddfc990cde93c4995e814c17e730a2b850ff48149d2de5df2c605c132d25210161b8bee65cf9677ac9dbb72978f2640f7e6b604b5a0b92bd9afe2d4d5d11409174eb7718b75c0ef26787898780aff8c410ecf67451fd574a1ee7b1c0dd8e68c7685b481dfcaf54125803d10f1d24ca284f17e7bc67c9abcb18725a86e432b78b4e6f50997ffd881e92871936f5a0b8eafd3c16349802987d27e3654976c15a1142f77a8d3227c6df62b34293d59aa524a3d8c71d7ce708a4a5f25e9f6a608bf401d2c9223ec4711a3298de61e25e1fd1b7e519d2be8942250adff8dd19237b7ede131ad9b8505361a6930d27e0a35957ce4db89f12f101008a1823129f9c42580a0caf18ef3fdef7d3f1796142fa3d2226092ccda19ed9d75a5086e0d1a803179c2456ef73570b9bf15501f2e877de41d25e9ebf17028424d4f117fdb5d13c227846532bbe08f3f6a49f9295c6997ebb1a5ae0d4de0f34765044af7034a7236d0d0953079f30ec4ac21ddda8ace03c63e8ba94c288918d334b0c0b4e4c14d570de5b73396eb10ec3d3ccf6390858cbbabeb76560cd32e15a368ccb04aae397b5884faabe0067a3430f7674376ca468ea1a90b33035b9da5837017bfa8956ac73296e490dea7635e8cb92767a854966cda38e31a3b2d5534d8685bcfb670f4b09e1d62aa7087b9ee3b6cfacb5049d8b6fbcb3a0914290c61614bf2839877463e4f4ba6395ee29f1e787c76dfcf5c6c14d2141b914585bbd27a5a7139cb5d49913f66a149356df8a854688ebd5bcc80f90b43c7f066e8d23ab3730f235fe9ce8da4e5d4cc5913e5e3a3fbba5d9554c28affe711a75c074f3b0e2ef0d9928e3445beba4cd51b018aac814ab6c096c9877e2ad624000757f24a707eed7e20b3df1848683175254b55a32e7e3720b9bb081205a359d8887e96fc1fc46716c017b12d21cdde783728f4a4a14736f6fe91b46b65d28a1f4e4f666b640af656106084f35beebe378cc096fed7d10dedb244f5dd0effd4ee52ffcd0f92a5e083ea2d1ffb15b1a726d88cb601e7c545aa1e5672793ad7d4aa1d695ff6dde2f40ba1b12bd13454afbaa7435deaa47bfb74fa64668cd7d8a7aade6f2076ecce79ab9d3886f5ffd88a95047c996980db79ec87158e26cea4b8af523861ae1f81020ff4a62f2c4403d65bc8e465fe08a5843e5d8023912336da6a08b9979f8b2291332184ee467bd4584865f57b779769f91d82a622c49bf3f538c1a510ac2ef138fb1a0c9e6d17527802d72282bf263948c291f97962d1857497798ee950a7ef1c5b27544b49186eaffc139c809032bb8c87f4744f33c6e4384725299223c8f2a68d186f4c3b348a2826d272bdde7ee76249a58bddbc9513b47779539d10f0d71c5d9fcc8b54b6bde9d5c9340de8231da5f9568c4464ccdb71763eb2cb0aca86e76cd5503b2c61fc932365d926e92d3f2f49cc4bf57f3498af6008757e0a9285df23ee74b15845852215320f2e6ca644d884bd2e1fb77f5f7af39a7b3ec86b9bfbd255ffd1eb6bc6aa2d680ee4d458226c74234904c06a42bf5a81e7c0df5ef08dfe66b7b3f9b7793ed73e89a74048a012f7873f09120c7cb4c5bb6cc511d7dff892be78fd05ebe3b9063174a849b8418fcaf5dc82ecab4cd92dab629a5c361ddddada0ae9f2d52557974b877270d5b9ac1c6518da6caba57d9b1416ee0b9f87fc81a2ffa077f2fd62e64f73c25139f083f3e4a2e2a7b5697311d03bf140e128d49ce02d5dd8f4809cef34391784c909a09b4bc2950390f2fc44d3b9feba224fd0583a4651c578dfd008d308b297a0ec5a0dd7ed1226070a29900a6f3aaeff5d980f3ef620c6e490c79219bdc864ed110199d122df7937725873f4c731f6aeb299702551b2607ffc0f12331778de416b8e950c8fbdf4a0f7a88cd4710d50c09fb61ebed31a3e69370c882d7f513337dcd3348d873dc9765b9a4846640bc4fd0bf0544841261b35dd414f25de36f9522e1ab0aa78772747d2547ac9320abe8598755ee2e8eb04ab2bb147f804651a929c2af1c7dcb350f5605c380acf5a8d7baa12ae708cab95ac9637496b12692489e69969a7b4b4393da28540793a8765814a0619054c3fe0b6eb674dac088c8aa0b1cc88fe145839cedc417b4ac0e889de71240d4446760d7261756a04e329dc5100f50a380f9a539b2facd1bf0fbd08b9976b38173189ab51ab8b8bf70c457199c04c6c5ec0884b13096a7f8792256be43677d9e0fed6b7c4354bf9ecc6448fbaa4b6cfc447ddc12f02681a06d721658ef175b6ceec9ea3dd2baf659abdb94d1996dbe28134c05549657bbc98442fa26194a55065a6dd877cc7d965970b380ac90487177261b63bf1775adb93d5266a6c6a0065ef5a33ed1f9669fe5d04d08e4e90cdce5fae2c582af861a4a75e079456a0c7b2fa2c08cad16c7e435bcbff79a162acd2423ed37c7c8184e390ab20404ecd995adce666e831882cf872d85aa16c30f126cc7a1638c3d96ae07154312519c5c3a1707eef279814436cf2a6599b4a71ed1e6fdfd7b038318973ad5a028753587d4920499ab7f71290eef2e0839eb8747ec79ed25002d88c8673ddc3e80f97861b4349068ef6a119cf1bae1d67c0ea2652258c5fcac4baee77971c67f47cd5482fb9dead762fc24d98cf1b4bce0141fa6e59cd7e86d2a3a616f322f66f88a0692822d2319cce181b2bdb2c84b263e22d70c9af73b15914e1edfcb54a20afce41052e30a47af873baefb42fd9ecdd2bd9427a575b9db4d4171c55a3c002af8191cf600566228eaa691c1c123cb158cc5d54d130c1f11aba4ad67b7a958562a6c09f2f18f1e3ca06b2ac922a8dbc22e5591dc17f5291dfe1a1f20a28a1035c4fe227a5cd3114f108ccdf0b9518336ef45f8a4940fe0272954fd1582224c0d70843952ac5b3f668941ef9fa883f63c46e05414ddeedbfdbec5bbe21b725a79ec32f5f956f916b90db5c5cbd80058560a7f77753f4925ba7ca22e994d6a1e42a1b40ae706209a88f25bd480d2ca6336320567b0594010be641fe75e9c637e9b7fa2d13e61d53d50f7319e5bb315fff38639300898d7a9b8f44601b863d76282b44d355121173bd90c67a9fbb380e22cce85fce4c2381d6350204ca58b6cd280babf312e9b54102aba231d3a528910b5ada9ef8ff714bbb4c4cac4c2fc343baf361527c6909cea722f0b13f938b20d8cd52896bd36c88eba65d869839e3a5a550e924b82bada096d5649fab2e5b8e73c5cd58b46ec9a851db7283e2c1668eaa511c3c66cec8cf15728f0f558829416fd968513097b57044233aec86fd04dbc940daa27b1244fc163cb7f748c9195159927e351b889c301154f16e25902a7c4aa8bd24e3ff8e04093134ab83b91e23b669ab9b5bb90b8855ad3339c18638e26a08137b21e07eb08c59b1472b687721cbaf7ce217f1cb749782e501b9231263e9efbc9169ba42790427d880c3e55960674fe90623700a854de68bbfdb025540949cafd3641f1c0a103300c68b166f245f01503fa47cd4ddb2472b955c0a7f0a59ff073919a291498469882bd152dde6d2dc165652b43834bbe558e01e17c7d89ea40b8e419c613fd859c4eb004dba48f68ffe775d0c0a1c15ee00c700545675d046dfa6c68c527099abffaf65ed31fe61a591577a69169fc98f33bfe834b42f8d70b27866d2c91c6835ff8929fb11874a44da139b4f17b24588addc80e9a88e952c34748ad673222c70b1fd17914f11cd1777772f26bea7641b5222d85210c38057f6218aa1b371979fb0d543f832f5effec23ec380591fb2f78bb9ada17d1179acde59a5244e8e660b36959d99047d49764688b9504558b97cdb42f41c62713f3dc8fb2ad6b252c30bab203c16a2504853f91836e40e3bd09eaa79acf8f5a1517e6e0cabfa9e42fead9b968730f7878d913266b4c9dddc598046fae91743b48bb9cc6d85e9fd6a76c9d9b285986b892745a07e9a8f2efe87ed2d876fe080e1194e8d4dfe791f3b6fbfbe8740baacc6d10dbcf4e184ef478be6c490368f56933ffeba90cb6edb80cc4f3bd2671c6bc1fe989cbe3cc44573cf887f55cbf067a90a88ffc237d5b8bdaff52bd168211c75f36f6738c09f77fb9460d2598ca17fb24687b1ca34e9181f0ec9dbba63f588de7f9432173c33027edc0b0a2debe205b8b528ad6c8fab813431c1c1a2c057412746e0f80393a01333df3c2179bb1bbfa3ef6df2989cfcfa6643b27f6c78bc65f6200e61ef792072f4dfa4ee6a39c1f833e5e4539cd25fe8bc6865d68f6d5ef68875fe0e9658f0bde2bb6a0a5585e9cf7ca316f247c2d93fd07b4d4ed668661fe3db50a795be67fe678bfbd9c2c8ddc0526514783f9f4a261b4411512b423d3e50ab3126a3d8d98639307a5ab5e697c2eb86ab009c775d92d8a875e05d0969d6aa89742e4280230cdadb38b0b887690b3710a3848148e88fb678db2227af3486bb1c2693edb33be3a5dabd20b08e4dfb6ea6f4e1e5a1722e8e6113427386ea90d913c51ca6393f273837222888971703582b80d385af7c342d529300955184ec416e8388c98c8c1299604f1ec08235c5471ecf04aa064c2520fe5873529e778a031f6844f7ba89c3406dcc55c0ca2b58fb6fe39f05f135d3fb309275fc9ee2e12d0f70dd9f5e3c6f480f17408ffb35738a9000f38b201fdb4968f4b3b5d3c3634c11ad2aa61b8eded150c467df575dde6914be2670c434b2a5779a86f9c5a068aa42cbee43a45b69586b87f523072a8f0962e5bca1406c3f315d58aa1b9c7f35478483e01ed53f81ed799c7d2f248f563a2f7114b69b35bd550f6f356dfbca7155f023a3a279dcdc40683f18785c1b618a0c5c64c53a0a85a5700ccfc78b9280ea4bd6e6511775ec8a9cfa32be88cabe55b2c6991fb8e9891f85b9a935e1c2f4ab22aeb38484d68f921a400fe62a9164c2ab65ccb1a4e861a2629b51bbe1399c85f46ae5f629129d99e403d3d07a1417331fd34d9449311530a6b2dcb1b945d23792524a1dff35d209601392fcfe107a5b232ae295a8c908d5e10dc3f5db270e3b2c52724b33e86b552dd257e257647911536c5ccdd6034b2b860943f5a2e0e859a726854c3896d04ed468c6dc9b71c0c7c570b2fe8b43e0d33adfd5bba8cc4c35024bc8aba8d6fb3853c41dee73439c0c84152e452851d23b4b5c4ac318540906d13dd9803c08b16ca6030fb426271617316b9224d4fc3f0e46ff171d5a8615a2732242011dc3081b4cd88dfe8a1468d8603a6103995568444c03c102924c98ac6bda61c41490629f5cd56f2595f78cae3c563c4064266e41e15f703a91ee01f1da91021b586f790f2a324d756c66e2b87ad5fa06768499e33456e87fd41636201e3bfd57a14ca56e9cc4dd3430d88705f1c689b0a6d787c03f58421745115c86224603686b3fd5861127724638321676582febf67c1844753cf80de50fe25a2c3c7b3ee9b3852e21d7a7583d8c3de105b2c4be6ed609a266dd37882a91cff2260220468332a7096621110be77ef6feeae49c50e175842fbff255eed61427f2a22e8fcd4073fe84b71b8ff8b2afbdec7446a240aa044d14b1133e2af529d7199b29dff785f3e4854da1aa09003f99d4f7dc522520ca451e7ca9c2db299718444904dbc73d458b2e7f8260e1341aac3c488401fe50d760eeca827a2440db23c9b00219f52a3132e6b1e92f2a6ee7b4b2f74db8450c0429865630490bdcde4c76385a631a09dd5baa545017fb5696ae7d8ba2a733335637b2690649be18b9ab6962031a78892266800386a1e8b9a7ad067ab29e6443292c977945111721d92cc1e63f8f542d80f5697432f695f418404ff45e74df24f966e41b10efd5ecf0e7ae57cc7a5b1d3ee7d8a50e3fe57a21a6dffa06f3d8bee92ddcefeb3afcf7864f82e11ffffcf491bec9742f75f77ab7bb4fbcde68371b0c1f67c38f75f81dd61bec16f85e8c6387dd9cf1ef83e333a6a7f34df17b47ba5775fcd3f42cdc2b3e76d4f44a3cfce687cfa7e14ffb6f7d3b9cbb17d27bfd89ffd9b9169e9c13c75c78b4f7a945597ec79996af0cd69ad044b23daa594f2bd6b73c96d46f43270952d33194b4405541a4b93ca4eb4a538f31f6bd05d04ea2ba974827a28a4d8982fcef646c2721c9e3afa81d7e3bc8e4a82f63151b7716c92536589401144fe40a2a9bf2503114c10358affbca0fba2f663779af78cb93dd2a5d722f5dbcce060c85947f635caaa9594c1c65cae69ff4435b5b73f781f2dfe5edd0fba5bd7341f9a536b3dbb5cd3a71e22ce4269e0b5825ac77f5eab3b28676408c344acf93c0e98692ea6d0a7e80ba6076556ce20d190a7cf4562d3819d07a682e40e6f4aa76e8d07adb0661ee0034e58c6c2367078180cfefc098fd7c7142f5e15140025b739b47a3c0aa069f12aa13e7231d668a5132cc144541cd812bb7e64a6d51e0c1d158d848abc1b51e1d9e7c129ea9fd3900e7f4179eb28065bf9ac476279914894e3391fe43e3162f9853ebbdf7d3058e00b4798f5f6540c3d1279b47f44900a87b188444bf0ab74931173de96263058879dc84225e65feb11d121ea545d7fcefff1afe3ad8a198ab78f68cf3e7c05921d5ab1b859dfc71015943f06e488f2a6db173fe3998d7ddda8dbb5df1a34c42d7ac70df5c6a7a9d6413aa73fe573988dc447c712eddc5260f5cc2934db15d95e618d18a106c62874eff6144e92b08491bc5a4a1a20c05da20550848c4178c169f14cdbe6685294b045ac9714660b67649f84b1c79460b775bb95ceb38323a5382d82f531eb19bb24005e6ab48b1820c3d46bf4856aa4ff5fd00f230fef6fd7752f2dad29b68315f4a4a82948611b026e72e51a257e37789b0638c4c3707cbcacd2e812f989d2880a7d2e10d06223997ca3b65f16bc76b91db05e376aa9884abbf10010bd7558a08c5ce4f1bc002e38de19538bdb48bddb3abfedb6c61c9809a6aea72c80b6ed36871b4850a0bc47121afafe3038f0c00779efe9fce8cbe5ea42c51e8895e2378fa03f311e8d5ea6898c8463a24af61e73bd9a52ad7fd6443fb122bc423d519dc12e444d84e595727076574b4c882b9b36496c1878419591923f716a789424c75afc96b5c256313e131c02ce3fc93c12e7d7ccac0210a496f8431fb6e3f42ff166074a81a36c2c80260799d7b774dcdd54d05e382171fa281af0e45b8f0ed0c19d8dfd8025354605e5db1023bea336c347e212605e9f5ea0debea929cf8122ef5b717225d007e9a08799d56730776cf276055c244f1c06781e6f0d85bffc19495f65e0004f415d46c7adf2ba02c616c18afdaf7c1da4fbbb43c3fc034a106c61d60c4800ba8b170720e899e05e1486b0158428124b145eb197532c08b186dbc0d872dbc595e5792da78e5d5ce9b224b78937399a38e866aae2803b54ca99e9d4bfc69c2adba4d24a2aad7413670dc404f338c6eec5f29f4ed8d4b427ed2587f956bdc9408ca6b74a2fdf00e9a922e0efe108565c68af69caadad0054ef78f118fdcda8e9c446774036894065aebbf5507f5e77ba97efad87d1c26034ab254f835594e44d004d4ff6081769c9f5add411afefa1fb9cc726bf30430a9e600403d574cf2292c733dd094f973a1543e5bdb1885844572b6e62f06e4b4262c3faf541848d87a7ca435330e8a30ce5b1b86bc9713d02db2131740b05dc59ed6406f024e66555f1e6298b56b2e1179790c2bd5ce2a0bfde70aa3edac78ace3bd3babad4bb04c0697e43800159dd0bf22b791c8e8fa60ee2c97b7c26cd5cdfbce6ab211208ad77ffd5024e7372d8a3389601c5169ffabf9b8ee73390a5011a664f471d12f262973fddfedd490faa78c0155c853b2271dc7176a12f5ff285cde1a9437072a87ce6e66abc65bc92572f603f518f86064976c974e44788c0f459c2dcaaf6bbc990f098f23fb2fc4f7c38819b668073cae76a8c39fb02eb1cc0204c44d49298c67722d98fae39294d2a14e8f510c7f96ad0f22c854f02e6a4207ab5cf1a48728ec86aa091cf1eaf0b79171943c1dbaa294aa4318bc1e12405b8af01816a6113d25e3845e636f17eb2c16eaa5052a74e4e7b3106f4fb6e01cd489b86ac7ec5adbd471626e4ab0fa9585532196b25cdf3b8c7ab3a9f154b1af07d24b630477ef4c86624a256cea684ba2e0ede7fefd831410740801d68dc45705ebd0919879b9626d05693e346176c6246a49d0731682b328c4418d2da4d7a6c6591efb72f36779f9f49d4d13e904e15d733911467253fba04bc04879b830588cc362e1b38777fae4cd97454f450927eb1cfbbebaccf3779ef44f70060df7a1510caa24d61f2a4b230a514e0c86e9c46e54a4bd7111c665352e7f9ce490d2363980da4ba2eac047f335c9233e31ff3e240a353036503ed211fedf92b3b52509001e172d02ecdc48dc1781d3cc62a627faff483e77e9a0e08c234abbb776cc09d78c22f03b74822751a1db74f4c4d3c478fc24ee81b3ff9c2df7a902279935077a2f67e650a0fdaf62d49d4c77b246fda491b0d3155a2159a741a8f87ba91a15af372f29401cb49888ed44f470e9911d355028a65e28568419df3fbef574ced0f222c9836ad1c1ee57230fc7efcdd539b8b1c3792168ea84d38d71401a0a262943f4cc24fd514a2b8c1c81323a125e1a805a01250ddbe85fd2b7694562e30870b8746f9c1e726cf2177e44ea30f54dcee0229343a1e2a78416fcc2eebcca8e4900f6395e0d9dc6f144a9deef13739afd1dab677b472d84705cad8ef42b56ca8c6e32a47880040e025f0cef5a67b217e17b256c37c0c643392c250016e024cfe99c0de691d44f3d653a9c3890d71273e459e20d4dcf7b39bc2395c124affe6a2a8c9a417b64e45f4801cf578cf23a8dc8c34996216a428e76fa038de2253c7cac1b0093400b1feb5371e2339cd776641d67d88a8d3e6eabc87ed4390c7b8e3272fbc42401bc00be915008e70d7a832ff2d90217712cb650f61a963cfc861579cf538494ab83bedc8388849ccc988db57642add2c54e8bdafb688c2891e68e9ded24ff1ab1e359e4947cd316ceaf1f40143f87994f8349745c058f0473b62855e3441eb0f8918733a4f68fa877863b7e8397f588909e90a40f81f0f53a0cd7d47a21d43db586adda26f55a1ff785fb6a01b6a87719f8ae5479afc82a646074a288508dc4603b6cf27bc0a57a0a770d7b4f4ffa1454159628f3af3a32786c6455dc409e1d0cc2143e07278c4583f453395e9dd43cd337e6ecc1f69ea851ba7851376a1448229b4cb76930d13a06d15625b2e1918691575fbc8accbdaec2a19309f392c2a75ff2e16e49c421e0972705aa0837b51049f5b47bd063c44e1bcb96b21ed9149d36dcc89c212f0bc100f673ee1de1926835473e95580c7eeb26a2514bec2767fc4060a591bc92fe3a6d850032a47b0e39bc817675f72d0b0e39a43eca1b5c904c6979c8068a1a0da7dd6455b84282e80916f28e260f931608bfde380c40602f91b5770a22a6af0864c8545407209f295db67cd6e7555a53d028b2b48397b171231b3d5bb9834567c39b3098bede035463200b727c4e24c334d20deef33279f2e0af6f0c93bd7aa18ef23d9a4bcd6e40a951afd480b3f62d998cdd6cbfbefe13dad9a47e4aa5c3a7bb5a6736b25a880ac057a219513dedbd677455fb81088a81e53ca77fa9bd46f0c6ac0a8e2ec321f0143205d2f5fba27d40e277baffbf402971bdfceecd72c3a5ec9981dea42c054fc945b3c4ef3d3c87e9826e4f5280a989a7a663a302d6ea329956a213048392459d3e8e33c08b051439eb71bb1d0b081b56c3de089cdc8d574b1f596aafcfa117e0e3b1f769ec61212a94e231aa7c08791fdbd1e8bed6e34affb966e61a8bb733da3892de33c47df6d0094e917e1d66fbc1c1590f62ccae481a2612bddb1007fce1085c75a8d4245cc1ebab6e217a10d8e7274671e3d95eb4ec9d3d5b08893a4214089eaafd368efc015dd550f739e225de3cd653728e82764e92410a1c0ed4cbb55776506c9c957ecaf6fe7c4b1c31a8028d7d16761d85705282485d173502466dfa320564ff0936885927add9109d49d7fb8e9b7e94f682b68c95f2e36e3d50a706f16c5dd44b55f477261cf8a883a766178c8a1fe5651355c389d12f51473267ad98136d1657a6cfb80e74198557af6ebd8864db2484a3132e8f44e47dbc3df48139d8fa663670c6be5d893e92eb18fde1c2353adb67f17bd0dfd814068acfd124f8f85ca541028c30f2752f45dbaa6da2607e532fa28a99bf346a3b100059abf45533d072be0a609692809d3622ef3d0461f01f6e69e73874c911a1b8b81b195d1cdda9e5ad99e60878a0e7cf4ea9303f3f06edcb1fb0495a65ec95526e642f2140c58556cfca95e393234c82397ff8e4ceb1f27dccc71afb183ff3cdcced25811c8cb7609b7bf38defe858af7f035bbc2ea8e8883f842bacda00426d42354481a62447da4a81830a8a219fdb84d923d28a8c2cb2b77df7298e0b6b22b21d7471167fb99aa745a940daafe66bd4898caba7550477059e7904f60d54209c55493a4d79b01149ba3181150663ecc7ca41eee3e59b24af563398804d70f2115748f871196e6a17521e9e2cbea20945d14ac0d3d0d9b4d458f766501be5bd883fb5a9656db175c74608216413b2f7967b07840d2e0e1a0e9fd6250a75b3911d30087873734568d8d274aeb2a265e7a11d5d9a5cb9af775ceb2b8886238906e779994979c93b99d4787699d0f8b4d8cd7404356a5c4dbbb6c75d57ce30e4507cd24210cb3bffe4bde96e62972d97cfd9e5e57e407c5dcba680d87a2f87bc9906e7d1e565b985ddcaa8cb6b9624860a9fb75b37d3607aee6739e480e4589718de9ced5ae79e69f06cb9463a679705a36f4e887677401df45e230d6f8e65dd1d50c7bcafbb1d50875cb9b42b2b67d93026340e03392094c6e57ed067244c788e0383f531cb32b30306f1587ab3318a946b166b5cb91fd7b54e0fe7cb4810a6a483b512c987ca331e9225b570736594450ef567ba8b75f9897dca5bf0f4d605e9455f3a02588e29802486174d7245cc9bc23e4f7f5dda147698c26e102bacc0f3292aaf91f8c2727a73588edd9c96cb88e567c42c57b6bc7417d2654b4b93e488e0aebd3922e6cd90d3a69553b33e2fed721be763e5d7cd9b3647da1d7d7bd6d3aa519c97db35cd663d39e3c9aee82ed2af64f1ae4fbb72b802f3d71d36e79ddc6502f3da1dcbc57218169697be72ba72e90c7afda6e71f675959033adca5bc99bb48a7f433bb657395024bec30b60686c2d8d73216579f5d87d7cd99a7879c10d2299d73667a0de86069ad0872dd47e74a66f9e998143897ce72e74b596785742d43814ba5cfb0a98c27bb5454542417e41489381f2429f2e6fa62b2363ca56561da2d7b1dda22ac5b97d82d9b23ff30f6c7498dd226cd68ad6b243b9f235111314a248a524857c4739e5ede2862700edc6e8c4bd8020b00bf2ebe5084590e6f51f419f5d25d9c69d5bc467a04214f9096a784ac1c75d4cd417d25fbc3cd15d172e115dd658751bacb8ae0c0f25b764596f16c5cd86db50975877ac96676955849c794d4a0bb68f5c432d4eb906bb9f65c2eedf97417e7b4ac39a7a6a4bbeb0a4b4acd5e3cdd6d4425d3b5ca785e8f0bc76757b4aa8c3ae3749e581381e4cd345f3cf9e221b27a2c25ddc5bb58abe55a3c286b3de92e024599f8eb960d96f154eee68a62b919f577333202f17417a518aa8c92f16859b56e94d25d3c18aabc2a9f71d948444516790b4345c58e51d45dbc3146d1eeb645fca2dec4b99d46a218a5e394f858468c19cf0c7a03b62ecff6f88263da0811054a8982b30b2b2cc250b046146b6ca408b9fc75a5c09e93d2fe52f44f4a7763f8cc9e32b0c533e523163547a26aca787ca67573f693f1cc99f190562e1d002ec8cb7abccf92d292168c57d0a4f6b617ef8bf7e1ad3bc906219615873aaf4c619f42033aa4932e1593da14e99acd29d20d7261d2ab889874e5a040a650e13eaf910b63f6e19b38b255c43ac595c25e05d66e6653d80d42f1f5292e7cdd794ddd4511f11fd68aeae50c7664d724a1af8ac6f359865d6b4b5ad6b4a6a4c9304b1a439d7ff87a389dc441accbba38ba8b9fd7486379b7eeda0974461986f66232ecb9f6327b5a31c618a7d531767c794331ef13dd696ba83642c89756758f74420caa35e7397aaa30281b78ce791f95f2f5682d4eaadd274495dd4585b7249db7e69c53c6b4b483942233548200ca2885ba3b1b402d576d4ed134eb73ca2c630b2b09b4946068ed6068f96008ad2c30b43a06c52d347895e80e5ad610eeaaf55f6ea1223d249bebe19474178362cd9c42adede27c14e9a1064110ee27846b0b15e921c8cd29990a98d06b56899681d7b42648aff5e6223d84b5cb8b846dc20c557b7e5094688253d232706a709325cea755daf302e73905cb7a797391278435cb912cd723a56acf5c0f864aba83734aaca1ab28034f69ad28d4df753333365ab5f0a22bba5afd5d37f3a82c027ca6993f80a57c39ea2dce8789c891953be4266a3a9c925645f184703d3cd7e38344aa96108e1629215a144f08cb4be46e1ca54e709e5362509e53b05ab98b6151e825387ba65288507366a990d8140cdf99140c956855143d844413ad7add97097d0fe16891127245d14398c8adddc13734a455f048378448abfac24f7b80eea08cf7a63b88c210be6bd4ca0528ee67430275ae586a01f683672581e00a8c51279836c1d414846100d2abc15ec917938bc974d9354dd8b8c9f4d7ddbb66b244aac97469772f723e5ab432d41cb77100bca7dccfc71daca7553d7c1e53d2aa1b9fc77c5ad5f2d994d68a42fd5db7da60a6b96614ce32cd558855949917c033b5c9a87955ae1806065577a2cc7c8d5b3fad8af95f9fe277d6526cfffa7ff3f61adc6eeade1f8def4fb7b8f8e20453f02ce1796b152da15893441299a00a78de1a0a63ce14bd2f96f004dd930972f2f439c43305f25cf1cacccaf14a87578ee37906af4c8932f32b98929e3287b89902b9b9729fb919c55dc7cde7fec3cd1de68ee3e619ac6538ac9f2815c7c57c2ed6d3dd14433d01cd38345d6b89f5d33c66122daee7c0010021a6dbc38d1b9fa79bb2c974bae9743add9f7eba55447c3f7f001f3f76308e017e563633ddb1890005b889416f854f05c039a71a1b01ac6878a85e80d8f1971b80a7ee4effbc742f3edcc43c9b4cd602322d31cd9a421d75f3e9276b019d4e47fda65d6e466113cbcd159b4cf3a69f2cca5a4b381f260bc864e3d974ad9f19b6572dd43c4ecfbda2712b0ef51e6b22d6507a979beb2b03d39d1f37531f07b81985e1cf34000e3dbe3737d302dc5c4f809b51a60fe0e69b2ec4cd5d1037cf60d3cd3798be47d04a002b9bd50fa6af21525d1e3a3b989ea6770270775c7a206e46e1fe89359fb999eab8b9e21f6e46e11cf4382c3d006c8df5e3c39499ddcda8a7ee8c4b8fba93c5fa71b9a69b91fc60fa977b5282e97bb0f4375a5e1898de860fa68fb135d8282d3d3719d8a4450ec37eb4e966243d98c2224ceb572c1512dbdb1c53c3e6e704c6e6172589934c9364ba24532778d2b0d9748eda7a92356117752ba54fe2ee181ceb9c8d22627a939522627a8d40dc2c2d347657e40d610c0339f1a81c48c1f744e8c1a563db7588e965c2c31f67c4481bd91274385a4c0171153cd8245ad497e0f424123d466915718aebc710344e6fa6a7f1211ea640ddd1a31e3920a8a825d1827b2a17eb87bef49bbeb99e7ede457ba6375940d6927afa6cfd54d3cdcfa1d702b296583fbdb280ac1fce926ea62f7dd6e75289bef49cd24d277d9e4a30a5d27ce966d2b16b241b9b986cdc2206d1df740c6a1566d2a8c9f45e99ae046a8e41aba056e59ed2a45573f4f9b845ab5e3e53233babcafba755343edf7ba674880b18e687f2b0da819c101aaf22622c0b4c71a6a48b996e7144dc6baf0ad2b9536bba39b5f22a2236fd6d37b572835c18fb141736dd7473d093ec1417c66abdd6d8692ddd6abfd666105c81abcda952ca7483504c4f6fc6ee1417aef1df2a22ae71995c57b60c3d0dbb7547a3cd6f085396c3d85c5fec7ccafe2479ab1f3cef6253146f289b2f7dd6cfb482e68c9b51d6cf3c5d54abe8b56b3870a559624aaf912cc4a5d28c4d4a3782a19ab8d2c31869a59d7437bf7253a667373d7245942e13d38d4138718bee2eeaab4956956fd6cf7cd8f4ac83576eae279588c08e49b657abfa704d027fbcc023cb5941b8c9c0f4d5663e501a192ac48e4dadc26e144d064641ce072691341938d6d502fea6311b48a0ce0a928657104a181a1afac1bb0b11951a2fbb874c20479e36619f18033c12ad92175e432c91eea084778a2b475e242e913ad4fc86aa8818893924d6409c37849b8808cfe82d3aa849f380f7a2727fcf1dd4ddddcd5938c34231ba8352a6744f10ba809c14a66001e0b79a420f2e82a3bbfbbac4a2e6fe19c270cbea857550a64c46bfe9fe8935a3db3df0854ae99eee204bfb7451df95dcf6a941aba4c8de35884ca8b97b303c9482baf46fc6cda89b878c208e1e9f504f37fdafd74ea3d189a53fc3e6bc198fdc0f95a35077c6cdef55c0d3df697453ef0fa7dfedee424ad0bbb2962ebd94576fa62a5907f77bdf5c04077eef3219ddd732dc37cec66f16125998d92341410948415cd50ca1502c6a1359d6b5096dd7ac96ddacc309a97fdd69af9609aabe637f99c5ac9188b7dfc42d5bc1c2c2a2b5c56ed9c10e351e7b762dcb28c6b22c8b38c7e5d82fd41d418d3bbc6b75db46143bcadec4ac6a2aa3aba868c7b44ce530578c5d7b1c9220d9b9ec2aa85a5532125c352b50d648aca3572ee3b8c88d523f34f97a9c4ee222174734725c1c3d7252ec60237144675826a89fec141033e1390e2a729ca6699a15d7344dd3b4d1e89aa6d1a32ae5384ee362e519b9dc6c2472dac8b2b058c16235161696a851caa4e5be96893523a871873bdce10e38a816ec2df6b54c14a271375b513fa242b4c804755fcbbcbf8f6cb602bf1755c8808a1886da503252e06c24c61855545446a593cea9c4382a3d8f46a5a832bac6715ce4388e8b5c1c6d2950198329ba98e10767da10c6cb432311c3cff7778dc4f7a407079617d65845c4c2d2a695cf6a2938fae09b6efb5a8a0f6284d1eac1ad1263196a9ec14d69ad28d4df753318fe44a9f0a2aa186ac5e6d00c638a2114868a6960a855e5db7bf99357671862bc3a85baebd750a8734a1b9bdb6243a16edac836e763740d420ce6796955a60e9e462656b916d4618d689e19035fcf33f1673ef9a2e61a7fa6a44256d32303eee3a873ca39e39c4133fec49f58f3e64f02522024ad1efc78d05181da08b417a3e9bcb759869c12c9e82288a1fcc3f0b6942cb191c6f31ab136587ae59efdd5e78a9af1269d7ecdb026bb827d438dee4962a8dc353271d428909c7989e3cdd16eccb29be9c46e8ef578fac709a1f7b26ecefcc4454c3caf0575c86b411df01009b4e6108bb6b168dbb66d3e022ba8b97e5a3777b83bc6556d88712ad0ae24f536d11d14cda37f91e0432af69bd858cc63cdbbde12bb92d48e9d65c730ece6c668777d59699b0a89fb7204b568ca407b31d9f483c978af888c8ce665d6e77cd79bd79cd950264d9993eee4b5b292ad8ad0e06c5aa8eea4340001fe7298701041143159b688095b1830e179734cc75100217ed3d6e79c33bbb279cd695d186832304e0e6a302dce4d366b1c919b4170052672cd6613d69e0de0a73b39814c534977d2942489e924893ba790090635cfd5a4803599ac69a7bb244e81a2c040919c7c81bb5c7b75893fce071577c01fe72303bfe9285a126da779481305de430354e3a1a1f91234343c9eed4db777c0b3c9646fb2d636e0f639a65c1203cb97c46895bd5544dc80cbeb1862448988091f543bf672c6651bd52332c52693b5346afc27f502b3eae1868d96f770c3c64a0f374c3b5348d144b64ae2d964b21a8f49e3b19732d789cb807b6fb6d776bad378ecedef042ee3040328d1adbd564ba2f19818f06cba1ac47914b09994e691c431238614711dd88f02ae92c07df88b4c3c024754248870f98b335ff98935d8ea7fb1c65fa481c1a4b20308a0cb7e4c336c6ee3d84eacd176eec48e132fe2623fb1a664c415f033e412f80940acd17eb055ac59d989c011bf16899b4fc4cd5d026e9e113257aa23005b05c15643602b2c8f11c59a959f6c27d6acacb29f58b342c3074684a5006eae353bd8e6667a7345610dd8a6c2664bd8ec671589624d4634c54a8a6cd5c40a4f800802443ffe8029d4b97a3d4c97d774682e3fc368d59b61e4019c66009717ca489cbc1e333e9b30bb783d665c0ee010d3fca6219e61b42a9bfea45503b8fc1cd2c13497eff558e272893f6ec6b7f9a4557328d22c61a930994ce7e1003b1b60e716ddc967c0ce26ddc9d3589a571131cdcd33ee141713ec4bd887b59d280019274a44d1889be9909bab8e1981bf78c4cdb5de8c1addfcede6cee5e699999da8ba99fac0c46fa63568d080799137edc4236a47b4ddb09111c51acaf3e3fab8b91e80e8ba1ec5cd140337d7eb456e46e5dcfc7c7377819b67284fac992b79e366948d9bab89074b1b736532996cd89b5187c01ff022ae804be0af0370244ec413702147c0837c8803f98ffbf801cec4532d47bd7b0fbf711b8ff9bded35d4315a358122325a65ba3c37a5550cb83c5746ab7a5c3e02d602d77e5e8f6b029624866afa041e81085c584d11b0104fc0ce9dc9d302b810b899d6d8dc226e46616ec7775c0137d31d97c0cd75c70370330aab387191b8d986c725e2e699256eeef07c026eee1c7085dcfc065c04dc8c3262c8f4e166144a7573d57133a5f874000071207e809b291067e2e68a95a871330a03f1d4cd28acc4b59f1fde7233ea87a36eae346ea6f8871f8eb819859f780f153ff11b37d7274a4fbc8442411a7b33c53cf0705846bdbe805b75a89f41583e8943712946ab92b8ec263deceb8e01597b8e114f7772d483e56736b932ba93a31d5c86ba806b26dbdc004c376bcf81e39873d2aa249ee008dcdc4038fb4d12bda4004ffc00c469ee48c24389a44492258dadf6931b0a9b1b082fc0e6b680b59caca04c051002c76622b74893810b60008be3d68557bc4c41453155eb79c3135e81775c36bbc916713d9b578e4f4b80d38dc28477dc5c041731e1151f04b8b06a70238095d80041581c361731e195e7b809b06ca6e18898bf4cd65f77d62d42f3c37a667a3523e27c6452a2dcf4861a531087d18d5649d30e05a259d02dbec8c115b8067e5f603106d66816b8193d5738594191bec0628565ab72f683e565ee26cdc517580461796d8996db0996c7420ceda48224a6d2697bad22a35a30ef3803beb272cdb2d777d88737b0c3ba86dcfa100f0fe188b07ec44d3bad3aa2554adc0cb112973e5e1014e8e99003c0168f1c36b00573c21687ad892debbaa5c49db8a684d578ba9377c26a3b52aa1257e237adfdc41af86456564e5a798eb872222b5fc0ca75ac9c899f72ac9c7245d03ceb601cdc8f199ff9c9ce1c070fd56f3a136ad5ca95b555a69a8cc8bab988095fcf5697cd84c2c85699934ca8bb226e7a075943451aa883cc50ade706cac207247ce826467ce574207e78e2a67e00e21481249ec0611f6680cd888c5839c20ec99288c01328140ad5d2d2d2c2848b0e9705b8107129b9e47021b9683f2ea9542af5f2f2d24d6060606068d0a041a3468d1a35cef212d190cb212762c81330e442beb26384114780110f62c487b876c4e5df11271df11c47bc74c489dcfc23be809bbb23aee3e6197cc499d07e1670b9800359c07f2ce03ebeb222c2804b223f00911b80c8711870cc80df30e0056880032e1b700234e00368c08570c08370c07b38e002b89644db69951397d77894b00f3be184855971a82da5fa906e0f864ed80cb11367c2e6d7056662f4926861658899f84d6bd00dd549abf25c21f14c1ff05c21f06ab433d114a8c03954052c05ec04ce7144ecb88e73384e734d65fbe20a12acc4f4e05c712c2215a431cd1bd3dc898f38204e5c73c23671c80191c09900e23fdc7ae2b249dcd413d70ff6bd1cd681b0386c8618c777d82cf10e253e05041201d32f9bc477e0f812bf894ed88727208126eeebcee64c9cbe84cd47308f47c09a4ec7611f56c2a6ae292e9cc4ad22d65cdb8910b819f5809b2b127707cb3bc066894f6f8065c0e9444e5f80cd30093efd88d38d387dc8e945d89c000c4437e12e1ad43ce4b5cb2e2850a441ad7a58962c11cf34014276a28c444007e16106f380e3b9c33c1cf3c003c53cfcf180c23115c7501cb3b28a32f236706c18c0868d6b3f287ce3e606c537feba66e5460f15f740710f7f5d63eaa16b6877584655c0cd322f11c59a4ed232a75f814f27e2667a7a026eaea70b291161f9959d5803a33c99d3c7c0a723e0664a063e3dc8cdf5f421764e57399d3b5d3b7dc7cd3f1dc7cddde9a6d3af9b6d564ebf029f0ee466aa049ffee3e67aba8f951f2cbfb242146b0e703add0037d7d3715656589e8e6fa6a7dfdc5cc5c0a71760c532ed9c2ee593395d0a814f34f874ba10a69dd383b819757a8f0b844f17c0e584d0fc7567737347c1a76f1c109a575173738fe183c70e4b5bd29db42c1c38eedb7193cd3baef1b02a5b4563cb741ed766703e785c582d1e96e933b8211ea6f90c0e08cd692edef1eb6a40ddedb0da4f006e3e8281f8c675139a4577920651a0eea418ea0fcf1408cb731c27d49d6c2eba936ddd0643fde1e262f0e9990118884c0403b1e33f1c083b71641a9c006c5dbb382280f8dc71b3e9d733ee8705842d4283b35b76e67400d80c31001eb920d92d1df7191196ffc1beee4ed758b6c909b1a680f8bd1c2f87bcd6867a3a00fe84b41f9a4396547e5a05804b1cf66100f860733b91b1b99774960ad983cd31376cd8fc626c863c5cabfd5001639e930793c02538b7cd300acedda493f49222a7fb5836d9aaf95cb33857ad924ebaa69bbc98f24683acd28f45ba9dcacdb4de4c285b654e5ab552c484676761b52a6825b312af589709f6156cbe97b48a5a3765c9472c6aae4196d644fbb1b42ed668583c19791e60f9206847c0f25dac793854fbc9da8f90d5445ab30bd34feb248104eacc59851c9a584289251e11863d4d34d18345aa3d4ee5e623f0f0dec4fa9bd688aea20255a22dfd712abf6978256010a45f2d6b5f020641ba19f666b7ed4d44ce07bc899b8527d9fa07350dbb4a944a2558614fc946159525a00e0daedcacdd486b2a9a064767623ab4d6cd14621a6b4c97f3a1722d9c64c8a238464b815883da95d06e13ddc1d235ed39bb7655b2ed1543ed233b832fcb6a37d76b77c93498f46bf4d27689e5cd9937ff7acea09c187e0918847573aee68490ee1250c7e81a699c75ae9bb36d7709a803de91b604d4a11dbb666306e43afcc832e1ee6b99ed1ab499c2c3ac9329b6e233db74b354be2560100f13e19bd6a4760295b66027e9c3303a0aee21294565c09f9ef03334ddb50aa36999fed3707467d32a0b87297718c2160c85a2a4af87caa175ec9a656d66d050ade7194cd35dd3ee867433aa74735db942b844d2542cc4b25f9b887d48a4b293bdb309fb11febc1cddc19f077ba47269877100cf77d7aa86f4388ee009e1ed7a6658061d1a4c310bc31e0d8e16292151d0e009ab69c64c08da8bc9f1bd47c2d1f741d3f69b8e50d85143cd28d853320d86303660303c61c8e1e70d1fb6b4d89e529486da72202d352e8d2b6be0dc4035b49485b88150a7b4d6176bea4e6e51a4f5f662374a89b0839f17f0fb628b1e0cb93a468d2f166a0735bfb33cf7ce8c1f198e36ba79083c3a66b3d2f30c7e322414f677fa7ad03f1a9c7354de9906bf9b8bd0e0f7266a34d4ee28eff66d29a818e1b5bf084ffa8b342a55fe684c2f3c3db3c71d9636b900581e2b62835b2e391f2d3fd92e725939865dd32017e4ddb297cdd975159b53f034f861956716887695633605ef0fed2a57f9c38fb35cb2434bba1907ccf247e9b05d7e72f94dcc99b1fd61cde622347805cac9761119cdf9b06eb229ecf4d8379bc2fe70b6d296bd0cded2db7ae9282ad48cc21ac932a95fa9976fa2aa41154b3bcae3546e03752765a33a8b6e2054d737cfa0de4dd29ddce1691ef2d18bdc3bef3da0f780e014484677404da004921cbcb0a83baebea8a43b197b7c9a071675fe2a824cea6fba89624dbdf24168c14de5f23d041b4a17154aa1725b8cee9430a13690c45adeac72581f9f504957f94727d54aba06744a1702ffde3607be6d3f723fb2632fdd6ca471f755486f4b3a24d5db64b48c54b95dd4055011e42c20883debe007fb10a3c1f91d4e919dc5196aee1d7a151561f9dee924ad7af0cad4fb8e0ac6558d3f2a4820bc5e8a82b07cbda4bbd73fdd3da0e6f10e8b7e7a72fbec4026b128d6c40b89a2cc7bfc4d2780064328a55519becb84af0d5f8fe95a35fa75f9deaf3fec49e9a2628fd2dd3b76a1143846aba4185d388610785df4bdf3bedd086088d9870486bf2e25f0fbc4818bd0403276302cba56f0bae7bdde8191091da45da4158e2b2ad2dfb523f3f3dec451c45707d9b3ec985e9fd9e7addeb6edf210eb64dae7af531d8c592930bde69451478b2f41b0b189362de7612eceb4064ae575ade3babc58e62570bc7d39e4330edc00b04cdc87375143a686046874342600d3038c132f375e9e48d94851c025c6a5022d3cb45800755150b058960bccf88c7caa71ca31d13015598159c140e9a514052945ca4075a952a8b4a84c31428da8e058380d6c333623da49db4066caaac056300ed012b5e222e1ab03d6cb617960aacc0fc8913c12b908827e39e4dfeb31df8d04be1c32c2f8b0d7823d99a613eae4b060dd81f66232d7b5bb270d1862b12ac21797529601bef7640f12b146fba160cd1ed65843e945d59a6114bbefcdbc476f59f28ad79b28d4352d69eaeefde0c4eedeec0b05387f0008c7bf78735ec441fd7357631a54342d947670bab4836ffa1dc6c0fa83b06bb42e8d3232de6eb8022dfeb54aeb7935159d0833f05e47f91a6be4b30f4a7daf80fcb4345a28f5035abc32fb70b4de328a4387c02923b2cf13c1ae7d3ebba64d38b74db30f67085cc4063fa26cf32b655dfbc3c96ccaba2432d4e3d4ebb17651e642a2880db60e258e6c9978cb8b8aaa561366a4c4424f8c52839af6044d4c9118b8b52ba628868cc6d1e006346f230ee92520231a87f469238e0b490c953405e7525069675543ca86a24cc319955c02c21d658270e354ab62619198a158135394d157f16874f391d24fe9e7baa525455c4cd11653a4c514e1ee4a3fb89f3b8853fa819c8f2bc70ce18e012afd9496b4ea6a9c8e87977697856aa3072bc11036dafbf4d564efab61affbe63ea661d67ad8a5dd943302e214b1c15dc406f7a319b4d7aaf7ec015ab6ec960de7844f4ad98ff14a792f6b1ece2b830a9f14158450bc1cef1d87867832eff366291b49ebc8c66c30e97b1bbe9b943476102e785d7d358c5488abad11895b5ad182116bab9fd44eb25d2de0b5ae5538b2c7c9f9a043bc20f04a1cf198c46d438dc8ae42627871502750ac2f115c12bef71afe7a0d1c3442c4d0563d55a4ddf2d5db18a5ef4579658dc4e919f47bdd977f7d182fed9844d3e416aa16da47df6e9802e944fe4929a394d1ea02ae2a7cfccb740beeb28b52c6a020a2551cb878c11ff65ab36c8dd7ad6d514db1f7989dbe1af9ec62d654556eec6b319a50f135e4f1305b2dcaca432971a0c90df7650f2a135a2a4253129aa49741b011842784504a9431a27427063611e1792848a84660386354ecb1ba582e2e997c29bac193285d326b2534f4c0d004e7d39330620c518cd62f134f7733d6c4bf67eac1d347f668530d8897f14ff07cc1f36404213c4f405de009f4648e30250831453ca03058e018229819e049b10f5ecdc9e769389f804e4ef0fca1ac4879394e4eba9b6f75a528ce106ffd45bdee49e844d350334c4f0c51a6303ddd4d25314447dd08d3d33c607c9a074a3ea14a2f7e66b62e0c4c0f862b52607c4e3e148b4a85c4f9e483e7617a5a75d5cfc38c512d9b6590cbdcaa3d6571869a4fab13101aaa0e502ac87597bbdc3c23c975d913d1e5f219494e2b177b8ac2013965d1dd34a2074a1eec92638856a72c5a1585e43905491e8a1f7c9207470b1d9c0a026f63c975f0e37e441b3bdda57e446cddc692c7018936927437e9196a8e21ba942863869a63886c2469158cd22ad4e75fb6a1845a2ecf151543f41c33054f976c6387e70a3c6df8d8a8019ed9c6123ccf624f577437ef624f494e3b3ea8b8ae7599d09f7662cd84a71d981e981e1825302b98275d9382a94116303e3041304d609cc0fce0f9cb8227a17972d22a6884d3133c391fd9a5220c3c2f645a997ea2ccbc2caa24d07939097470e44f2b1a272179ed44a446e31ea1347ee4e552bb0ecefc693906d333ad431a1665ebcf6c8101c213a62742f912942f205c86fa83b30c5a19f5b56d47de6d67f38976eb89325c74776dab6bf3d99c0899ec26f4a4bb69fd64af265c74cddb9a6c5c6c2b29ad829fdbd0361465e667c4a8401b33a5bb98a2bbedfc809765eace05d6a016fc5c162cc2c9a45dd705af21966b9765b9f638202cbf0eed7594d524176a4c519437a628ca4c8e484bcbb5160be31365267c0b045a5aeee2f2c8117979b9f66269947179b12f8ff748fccb339baf2122f2514699ec9a866d92887cbc47e825c61189a7f74814030d4a767066a2cc7cc67560a8b96b089f7d382d6996c9ec30bf892f3973c184c06337c7ba2e87771beaeebd1c2ff6e134f7c3e5a9dfc416fb7052304abad3800e8617a606ddcdf71a9246d903d87a4b4c51cc9456a14e3ba71d3c895cf069670c356f43f2740d61171c43d4ddac87e9793daccf7c5ae1177c6289216a950b9edb183810c25bd1362509cb0a074011bbac9e564d22f8b4aa54839f566d9f875942fa3c4c16ad823f521b03976cbef2d683e7aba502aa6c97faf46c4eb626ade2eeb79d5833146b1e8e10e662bb79e3d18a8082b6a1eaf37a2ca16698cd1ecacbb12dc133e8e13c28932b720d61eb16e7c3ba9655e41aa20f85df35272d28034b1b5b910d70df490b9e583307588cb191414474f2022726324c5362884c65387141931f2e780a1af8bd1c3b4d00829255137e404673d629166adea0e0c959d7ac8bb338eb7209473c08bb4753c077d3990ca259d4cbb20f5b19a6074feb50a2ccfc0866166278b7a197639e8aa1d26de8e4d3dd0402a33e2f8ef004cf6dc807ca46b4daa46c435b185e1c210b3c2fb7909b18dbd03686cf0e046a55d752cf68955d3fd725122abc86590d403c5a6545f9fac11ccda25a97cd71e845a13814a144315af5d480e12f9febe702bab2685526252bcaa66465b4ea9282e1474d46ab91d0e849abae3360f8124f4f09be5483565d68c0f02728afc789086b963d01713b4d18c2d01643b0ac21981e49445e0bc80acef01435f0f50129185a11848b5c439a147c597467c704d808446178dfcb71dd77dae9ee1af202084eb6184243087f5f4b64915951cfce94720bea21b22e09d4643504a5ff93032cc2108388d3cac2f44499f9302451175cd8821b024351175c80c30908cfe7d30e4ccf69b5c510844421321eda13d069659d76607a4c64403195619a1243146b80624dbc379c4d77f33aa8fdd4756d43ad0aa355cf0b1b8c81e7b99d2bba065b6d62b4ea3961c10acf6d084f2845ab12e0bc4dc1537a710317e0cc25c153e2e48d08cf5f1684b2126ad58439c0f3527221f3cb7c50e2e787c41a1b415c9600388041073230c50f0c3aa0014368c13883920b3f30e810250a71f88141c615fa300e1a90d7051a48c0bd07bf70c250c40f8c29346083f6aef57bab2b8030dcc13004b006d6b4b43c1447de42829f65cdbf2c602438daaca38223b3f554900c5b770a952ce0192c9fedb86307373c57c405af452e5ec7b06fdb2517ea168f59ba63e776b3154178bb24aab1c835b45d4378935bea07c412471c4dad3a2a7e26d6c0d186c5d1a16c996871519150b30fdbcb56337a4cf9d4a45af064e0278e3e042559492949d500c395a024d44b14a55552ee18f08f45515ebdc5c3d7a379f08497856deff5b8362bb718e3378a6ddbf6e269ac51f9e8f1998aed91d246a456296d9765323a76a3b40cbc44dd69a1420cbff2d3aa10bc1a1f825696ac006158e41aca2b59601f8c807d18820f49c0f058dc4cdbeb19dbe5535f37ec2177d6807d088257eebc1c506abe4494487b4ff1a45a80b9f77a6ce72e766b8709157b4eede05492eee04db500c36b2b1bb5d0b49db668af530b71e4805c8f375f433078d39e2f1186dbf5218866a1661f8230843bafc776f8c7fda078bb4ff3214896b668e7b1d44eab92408b0a38af14b986ea4a50ac894571c508af26c6e1c9c4e19900c343b9f3e4085e8d6c19a84a81ccb48d5391f171a348f18e9dad4b27d088705f7f5751acb92eed4285cf147624031615716254f856c53170a6b9fb2acab850e1f35584ad3fd9aa7835a22803ed08f6ed2f26d315b620dc6cdca2f6e112bcc0b38313b9a856c49a212c54eef09d5238a15ebfe921628d85a237576975f30ae1547acc1e813b6803931d9cc9842a8f53d48a48377a5da9bd2a13d09d35c410199750e9610f66fb062ab8620727ab90c742d5772bac3725e79dfebaa48d492a3ddda23b4b9b5c9077fa725e8cf1e627e91f6dd29d4583bab36810b61eb9a8f94d813d5009f48135d8b055873a1fdc7001ac38d29db5d345cd6f8aa93babf25cb0c78aeb07bd2cebd2c7baae8804ebf108533008de91d7635ab7e2f5a030802ac8f087aea2e4c20079de261fa316e21557d494902ca7be7b6ef340a93396ae28dde6e9d1225e9343c56447db4db450e36bbcf0dacc53bbe1b84d184fa394dd73fb8aeedee58d37174161f87e8536a50a359456c5f827a555a9f8371f2c630a84d108951ebb42f26675d3ea9ba755f2b98984ae4761046260a803fca2208226584b0589a752d0674886e9ef7127d6ac7ce8f598f8a15094ce98c1c4baf62aead8e92ed93376d46da127c78edddb4fba7b4ef07b3be921946a3ea3de720df5de625b28c8112cdf72948f960b2b26d44fb0cf783fd95e358f87dd2cb1b43ec1a8a6e76ea29d7b37893547208ee9a6507f382cffb1a358a41d668c4e37092cda021eb5d033611793c1b25e436d3380410bf8bd656a8e3b0d1822ca3c29b19b5a955f7798a93b99213c22f39a27ca48a15aefb0cfdfda9dbc5a1cea7c86532c08fad6775e141c242f0a8ed51c127deb3eca64b708fa8843aa960763dbd542b3496013fc0ecbc89997d2c688d1474b3f5f2eea3135fb0b548c37c052c8b27d45cbbc4fdb3cdd3d211e284fdedc44f809cd1c01c32bf40c469da8b1644153a910420861111c8f5ed47738bb6aa9c4200d93ec3336a3ab051c6a0ebd76ec5d5b7e53b933f05acf74dd9fb31ddb1a439b3788aa94e2981c11f325120e1cfb14e9cb017fd3dc849ce5e6e4b8d36095df442e49e38c408ac7fde03ed32a158871d7f2aedcc7d1e0b9c54e7342545ebab4bbc635d6bca65d7304f03cc9bea90405b2311901511911c1736455ae41acb21d02d96063dfb29b9aa9f93bf3f015235862d5e0c9bccb6b76f8ea01e75cb3b366702cf9fab6ecded9c0f3110c3062a0c2a84f9eccc399e2113879320ff7fdb49d8d89c139f376dd75176fa36b72e0c41cfdd9d61c28256d5e006128eafbc20b219c512f6f23d55e81f662f284362e8a42fd43b0e3931821212a44c983d014e4bc5087143e2debe489754111e23fa6589661f402e3a235bea05ce07c1a4d60932fb00c260a9916c6cbd05014b42db5096ddc68a3790b0e9c8f298642fd5d0785118ac975b127545859629c506f389921463f27b89f85a0c11d8734142afbb1ae6766c6c6063b2195c4384181e2456945e8dd1483f3f14b35d10d85fa9bb0620a6365a80b5309bfd30cd2b69ac1b2bdda451926b0a05a36695f504b40b5b8704f092ea92d0a6df89d8bd44b43181a581268d4a04f0a126afc7a39c22d7e87454dec855128d65cf7d40897872d0a7edd235f8e22f010d36d33269b9755cc5f0e223cc6c6f6628dad1c131a65b02d6c6ceff005851ac28d97bce1c7744ddc28a5d715124285cfb187ed5dbbd1c30d1b313cdcb8f6c66bdca00173e3c68d971ba91b2e2d28961927d3ca8d12a9aa8c6e709b96ddb881d1ebc60debc694b1e11373a7639e68cf487d5f706108c31a77b8c31da8110bdf60b9ca81d78885e58d58f19013021f6fb78f93990b0c10ce6b54a899da77d73ce42b8eef1d8c0a7f04edc5c8fff5e8c76b31dadfcff624080aae2853abe4174f84707c4ca4c1116bd7f6683a9c9168f4be1ed6e3edeb411f1f03b1460fff83723f281574eb783d7b58e6ec5271dd9bc26e90be46224e09c9e9b78a0a23d695d6b5ac4bb91f4db767e169966fc65f5c10c216f87dd104285fe0e74510a4bc1ef579110428f87dd1042938bf15183e98018eef3d183b88c15073c51015553a60d45cf10184e887d314e718dc9f3bf871f2da48a10e71a355a1b68ea96bacdb59ddd7c09823a024db32c5905062183d0431e9895472a5d0e9f7f5247bd2f3e9a49be58d936c904624d231e93f2c1de652c49a1bb7ef6b191e46d7e56ea87bcd90a91a317f8fb93c90ac0e93669cc4c272299a567a4a73e7f29b8bccb41cc692c4504b375f970b24075e62d4cdb950cf2df66ecfa76ba4b1f499b885de9ceb42509504610b293bc9c65b36cb395b5a70904817b660c006b7dc1cf88b83b9f90886f966b7c3c0c044d48ffa3797ed7773f9cd3af877b128d45d5c502897a31e391fa89be86251bfad510385da2c8dc3d88cc663a441239ec69bf341030646c62043954a3da974888a10f5ed361b6d81d9aeece96e3b4a8a97d4cd15723e6a4bcb21249120845a6095b7d8227085494c562893d135933d7567d940daf215fba28c0635db38508abbdc8bba46340e77ad64594eb2335eede92ad674ce6a1fd9159b58434ba419cbb26e635923ce3a22e2689a8d388f8404ea48248dd1531a7a4587e06b66ce0b0333f15a9e12c2200ce10b86ad69a59f6c92d3d5c234f3b00a29c7f495f75d48a43154d31f56f9c5f9509126d3ca35555c2addf772a8a8a85c53774d029c6193262f473f2b41cdf5c968af2615ed916ce3d3eb75372f6196d92fea8c02aef095418ab10bae70b49817033338475e1a5748daba86b86bef75369efd9e8753ee366c0c0fd75a79dd89dd21385f48b51829ddb651b6691c9096ed52490ca450ab361f19b78a35339a36836299a16d979edbb68dc3b66399752478e3b68c7b9261a973bf69ec19f7f20d53a1ade2edc5adc3db76b15c6426dbb09b436f7dbb79db386ee32e95e04d8691836d9791e3be6d9bd0c6450cfbf6e9b269cff1d933fdf52dbb0b294ad5ae918e37bb14923377629b2a4584959ddbb29bb23ecf1dae6ad0686d7b767390ed5911dbb3cb9e5671c7322ecbf23fb9b7b46437273bb66ddc4aa9aa70bf30dbcbb51a97c66d795d98fb12a7602db3135b56666157c620934aa08ef9941dddc5c6dfc4ecca9e2636d4e9e69baeec8932f22b3777dd4937a3b8edde4db3b6ccba39d8b967973e8b010c22437cbd7837eee660bfbe5d0de3b6d39bb79ba2ef8935b0eb7e14aad695cc3ebf5992186a9119cc3d179989d948530e08f79ced72872b4a6bdd9e51f978fb5c71d9ad2b6300754c190318c4cbb00cc3b063d86f3a8b514619a7b42ceeda4d717f78b359e20d6e58b6d94c07d32b63207b640c848a60da4e419bc961826406478bfe955345c4505c7fd87ad6c1f397d500f7e3ce9b25925511f2f03771c64f3b8515494410829dee248e37c30cdf6b1c688f464e6dde180c238c518edecb216177437923d4f8cb19ac410e010f6fdd11a1be5a85c0f0534635c46bd7162ac44fda6c64c35d84ba7d5ec69db78a70080a3704c4db753522d418b3cb6e298f810df7cdb98e61d7329b85b845364c7fd9bce126a24c8742d1e028c4e5e43db95e1816114c328988601116341280e73857574d754a39692693eb26b95e82e35cf2c21ac6b4ac4bd27b9d5af3ba7edd795d7ae98b9961a0169d19f6be995a96ce5ff4baae189b0444d7753d5b12c3308ad14bcc82105e37076855fce3908e74065a1a78696cdeb5897706a777561007395f70cb32fd8018dae0e578d73a4a85a718102819fb34cbb25e8402785cc0ef9a6559d242bd1cefd3b2a665514b0849b06c3d024b14f01411634711e11eae5005972bc8e1587841cb10700d169e603b02ac5df3ba46535c18fb290b4bb0d65998823714e0520cb03637090614a014bc095b361be2026bd7262dbc65e9c346d75f8e7968c180c205a6d77d334985cf50004aa00186cf0a58daf705174278349bc77c87a1cac739682f4683d8173853fc9e900326f8599f27627dc24b841ea382c83c8d322f0a0e768fbc14fc2553f03a11eb57764b5e22d611edd64dc19b8280757a448b4bc43af5a2a70e45d8c1b1342dc37470a6a5f74876eca6e011fa79e7b1139918f60dfb91a9591d9c1beddb75042c00ede0e4b71a32d484b566ac0e4e66a1c8f4afd3e78662ed4c26ecc01e25d40c7b60500e6c4a6aaffe2c092245908a7f38f31e49c5fb03bea00a3b38138c1f2fece020815e00e1a41a308fe8ece0ccab85bc10084707e7b24285d0062f072ca23ab1afa218638c31c618638c91d627e59dc20a2ce5ad1b0fa48cb72ceba297469b2cc4cd8d35c95b0da5600730d0627c3962432c68b9566b42082184104208ad295f166cc41ae48244fcee7b398aa46852367c7d29bcc214542689e79ccf10cf19479f7234471becc96d99d5753b77cd8295dbaeb8715653b1544c95bb90c430fab65dbb46dadfd3314f67a6990fcc4661c2f370ce68c2d1a291c09e4e88913e096900d530e58c4cb0478b71c0c22743f1b490be8e5eda1d2a4ece079cf903d33e4cafeeba545a77334513cc51d6815b38c292275c7a416b29f55dd2ebbae825afc75dd6252deb568cd6a1b52ea7109e5330b453484e21292d29a58c6d53f0e2ec0e2aa3eb0f6690a377a357b0a25574b32cbb3547afec2e361123ea612bd49cec13e747d4c413501491c28815addae4a57525d44133cc7e13219121480c21a221a135c42612adba02362da803bb378c3ca359a1c299c71833c4d9823a6886c7f53d19011111141cdf93117081e36938a8631e626d1631f114f10e77a895bb160c82ce0caf0575cc676b26529ae90c07b523a460070eb508c155df6c645e1795f24282e565474beba0d8120c265cc8ee963d658c9acabba084b0a37c50221424a2ccd0137aab673343af154a9078506ce00970c316e07e470b3bf064fa21f8095af06ed034f6449f9f0814839aac80808080808080a49829eaa4d8d8c41e9b0b0a9194a2297127f20001010101010149f1eaeb6c6ca000d9b4d53f0dd4414d5642433e3e3e3e3e3e3e4040404040404052bca2a257f48a5e51fff81001c529a5684aef344ff7b48f8f8f8f8f8f8f0f240202020202020292e203f4de642534040512f9f8f8f8f8f8f8341124824430c80712e12974a7f2a07aeed3fdbc1ef2f1f1f1f1f1f199e283678a3a29274241a9ef0df5500ff5500ff55bf144993ead1585fabb6e063f9e1ed44c31ec1757002843b39e55ad6b358450ca1b2debd2fab40ead7e2fefb6ce84b2494f51174512c37cc0b82efafec4a24434f694f18a2b6cc529f859d69453c6f72e2e66955248ee344a7a61bd5b4df0fbb362519442859716b4ac79f5e80b1f29525e8eebb027c668499e28f3669431ca19639442d68c3d6594324629a59452ca18658cd28af15712ec3b4a4a29a5ec18a550d5628cf2a223ce083f361b8d327d2c2baeefaa454599be8a1d59cba60815e2396d6cba7138fb9e4d1f65832bbc48f455237633aa2fad78f0e13cb8b52a0a1b5a27b5b1c1f2421d292d18ccccccc027a915d7152fcc92b6fbb4a3ed4b2bafcf96d78541ddf56111a4f481413e4d5eb2ed18edceda6e3d67d9cd8a3228b251c66557db382119c62e2c020764c6b13f2dcb0e836011a486659c8f0c8a788241275376a9967dc3b6ec1bf69b88e5c023c199cd11632e97da2956039cb5cdc565bba641ec194b112e37df74a6fd9dde6da359966530d3aece112419866572498ecb9160cde688b34b9b259ed9b70ca32ecfb0cfee6ba431dd324ad3347a17aa4da9423d432ef03cbdf42ecf6cee2dfb7b2a9667974f857a763388dd0c42116b86a4ae20d9b56bd7b680416898a6e5898d38202fd76e8e7697732f2ba56ccb368edb3820d973b69b6176a56ec651214a29a5d0e56a700ba863b655798bb58e1afd26ced04897a79ba9897487c45bfbbe2853ba59a6418d5ec3300c833727fb468f5dbb7635175294ec538b528b528b52db6e4ef6ebdab59b61130d0a916cb52a19a51846c4a69d5e4cbb29fa79ec43620d14dae7b1edd988b4b659556e36222907647b0e7671456c783b14d8257689c98f9a60ec9ce50263371bd96e8645d0ec7c569605b086a8948cb5c5558e324533000000003314000030140e8884829158302a1576250f14000d94aa507a521a674190a410428a18200000000000020034080049a8d041533fc5c7c8bf49820cbe6391d4dff91996fc3850764229c553d145207c5f8bc6d707b9b31d7481395a419b2d16a42644030b6a9d0eac95b8a03900f5325a1ab7dd658ac853c90316d715cf3a85a82359306f727bf29dfdc3645f4f639fd6a822ac6d19045923c920bfcd3188f85e3ff4214cf90f85f9152e9e8383a808e02b90de313f4c936be77182ae322a8ab1864d0549d7af5d312199bcc510bd4546e3dc919eb74e97562827bbf2ce194dc014381a0775874c81b401987c7cf2390fb457fb87eaf4f041c7e6dbaa22fb08913426f6ea8ca0cf6d129761ca5e4f6cfc2a323393407daca867c893a8854156ca1ba7009d05a6ebef311fdf60fc5bfd86f1ba0fb7a2ea30f38ed14e652c3a50f2bffe537f77c6e5a3fa82b8549b40c8df9c6d72499f20a37fc4cff10f2a596c27f9b74aa137e97da85e2a46026bc6f75a1bfb41f95398b2e73c37aec10c0f5ddd2c79bfaace92a384e295353c9323115933e138c8ca458a3df25a34d4ba1ac1cbb4e6bb7fc6d337ea88d3f4c447c2dfbd38b06d6c2a1be6ee7cae5fe13ad33e8b64731c1bc74c4571f023dce5fa32c66d0e74b5c1d9bafc03a4eed5a0ccbbaf9c87689f6acf013d309e87468a35315b92ac6d9d0c6cc01c677af753c76be0633b02011c29e6ed03cc5768a498ded49167ccd92fe78fcdb9be1ba1473d796eef2fcd81f26fef7933938dcc0005ca41c8cd2f5205fc18815e55819d21139f28d7f5c47529a4f79c0d7ac468f24a82873c2cf7a2e48eda5336d69c6e8b8039cfcab3300880d83689e7f291cac2ce5d89376d6ca012ae7038f2ab546ca006e04cbe6f6357ea5cc69f22262f6662361fb034dff8ef873b40b7688295518079c8690d4b2ca143fa64e1a8be32b7227874849710d2499e1ce220ee99f840f9274571941803f662ccff8e5ee6bea44b3de16385fded69ff9fe14802c338ecef1ce3f61067b8991872781f4494d23869a808b2ffa4af4c88ee009d21b49593a5f58b38ca2d79f5823499d7c86c74e5988140ac04973ee0970fca5ddf22ed48c4e5a56af5505a6bb0a1be0384577a835c9966285d67c1d8b3876cbeb73dad6f794564e75e4e59fa2b8019706586195cea210ba410dc91ae99d2d9f05d183e8476ee4d01b77f1c5a669ec5f57ffa885b8fdb5811e38f3c13f98e9f3a93debbbcbe5a26498669fff633982762eaeb347929664c410b012049bc3df99c6c8ff3105fcd58770083e6ce8969b20836b4694d86f9832ee3bf9bc5052ea9e23b0424509eaf8fedd3c63b23922b8de9f731bcd6877f329e1afd5424d08093f95a2f568d1b8362835201208a0d87dfa91a33e854cb219cb617916ad40a9762c256f95381baed6be1b62a825e4d01628240da473a178d2b97aa331d3ac935065d932e13fcd80264e08d888a2380f3450c2d78dc9c6283b8fbcf068ff012f015fe14cf2f880c1dc3b1c01e9094964f4d230d1b4a2e18f1be1db4632f413557e35e6170ec90713c40c84099422250729b7f7822b43fcb3037440292911031a48012f933528b18132efe92200156a1f0d240b424e31c25cd8a5db9219629fbebf12a4e2c8abe6cc3f4f93d9adea25ce53a4bc34a4c75ead5a235b35d3d967fb9513f61c42e21ea7736f2682b2069c8681827008aa23688da268e24616311298e70d290202146ff85c1d443c0f11e2434a5f33a1d6bc10568412010d4303b8552e95cddb2a032cc45256b70a2e59e33c94ae468a1e1a35c22587c119e2b8dafcc5e628e1e0f35e34b8da944d1a5594b4a95dd03a6bfb31201016c701049c6fcf764ccfde74010323f512b74f64f3ae67247967f5461132646734847f0128aa016a175dab491287eed52334cf329fbb3cffe5f27ad9b785da953d3a93fd3e35ef4a400f5616767839fcb3492b662f6356d07f0218badbbf6fb44f8de23cb3202f48576830efeb6d337331e7d8fe1158d8219d41b53b30c7741603c03a4fe8c558399c516a7ded93cea8efb16b436a60037288dae210867a86030c47f08c28fb2d5dccf0ef81aeff621c668822ba9c7637cae349c09d871b83a3a600b178640ac52991c54d7927a55c0ee0ab195d70ba5d64a18d8f11897356e7f28728305d13d25bcd35077cf5d73db57ad3d4e7473a1b29f810502844eacb3e759c607d742961fbfa2f0ac19160582b06e3a1ba45b56b293d838c5e3c67db9651d7a1767fa3fc9ef0b885f051771526a014c0e01c588bb1c348d5b67314888dc7d097d780bce5cb5ec533226fa5f04d9eaff55e9578e6a3fcb9e029ca4643f17dd9a50d949fa82be6c0f4c10f226108e25a55e782078fc6be9b9586c1d452a09305eee6d6c6773eafb670e3cda1982661aca2c9741a2bcb77f2815e2bd64a7e3942ba6a1e38b53cb0d46c9c5296896426c56f1037c234355c1a1d801fb9ee916039b1bcfbd630c077661fd6ae2ce42113fc544631e3aac123da9985c68ab4417331d9d305237a493b34b086e604c9d01d9138ee5baa1c65c01b64a21cbc5e2f06082e1672a4c5edf441ca6df1ddda515f242f844a992ca49f9e3db26f0dfad00fd19dd47b82425b9a0072ceef4ff3c0eb5cdb616126d3553beb4e0b7d3d56bf4831ff0dc36c6c574788aaaf60a8d299f82befb02d2414996aa3140de245789225ba53385e43bb480efb67b71feadbe954c08c73f7e87dd74f32d602c2b8237e36cae1fe0b632ff5da87a544dcde076a87b32a029c6fdfd24aa538f32d02c24af848080b0101d06c658423b922242ecdc0094c3b1f4111f59e76cc98b3db342dedce61fabf14a63217273afb4f017b021dcb786da59c36cff302ea6d1d7767f245f04cecdd03fac2326bd98a3591568a027b495eaae29cc11a8e127676a5a046beda0c37fc594e04230b52ee4ce1534b1e4c2935ee2eae6835845abc10e15441c27922b44b335d44112c42bdb1fd3963a3545dac33b24cd1f62ff47eb65e63aa707029e08e9c88cff674e778490c702692c484dde66acdcaeb6c2f6f7a8d4aab6a3aaab7e794322fb7c824bc397da98fce3c3868b67e37cd04b9255f87c2d8482dd7d5de11139ac9b2463e355006225bc386f8f700f0d62c8768bedc3941c92ade61b4bc907b6ac96249ae48599c010982e8a9388bfacbb2b1f36c1cef2d5a0834b44f44b2edc112965baa51bb826857c2cdd9a2ea8196de479732ad307cb84fc6bf8ed8c5b87d40d04a90e5064d085de40bd2c3eeb571788277c52e74305c8e47944b4c4a2b0cac2de4046748cfbc15558992438202fe0ef8ba0407403f61a7836110316c3fc27864b0490b72dc5b7105cba234bc869e42ad87384efd7e450a75375fd2811af6f2eb161a369d89caaa18efc2cbb9a7ee3d8ae2c5390703e613b590d468405d6177620690a00f0033c22c32c883b4d46432aab6cd053a99297e67fdbc0243635e6b78f15987c077734c40b42ca8ab160b9a2bcd696ba9f69a2039247547f599d89b1a3d93bcdacd9a36e864b48655742bf5c8010c224b936c4851cf0df290efab15fc770fb61de359b4de933e2c9b4a3a305644a236b90ac55cd6bb8bd675c78ebae59007d4a4d304fdf225bf6117990b09ca23d846361bf6e104411b9cb00f80b95747f205caaebddf7114ad0524c3365b0185b7cf3c890cd187cdf8f9af4ed99b31fcf8b526fbc1b10de453292fe81c60252fa62ea0b35fe0d4b2de76101c5b689b06ca6ea3d83ddc93443b22d2700a443fbd0c556b0c20ef8dc24d8b769db17fcfb10326362c8919f0cd789663ae525c34d632a3b75aeb16adec9332c6c19e96893e69e18f1b4f2aab4e33dd6c74fdea4b29d3c6dc36996c3fdba224f559ca85c796484147dbc85a71b86f6f3cdff229243f99c2af3050febe2e2b7485e8a366585cf3013a7cae35147d71ccf5c09e0788daddcaed487624ae459af60f56f3dcebb6b88b5b51c95ebe11fa27a68c081d7de24d627c6282d31848960c3c1a014524265ec02903ea508b9b92c4c45b94ea9a39e9ceceecc7d1e79d074bb7c5133ae6aa4b9b10f0711d4276536aaeba61679aa6efc9c0f07908d52c191968f0c3b6e74d57a9935186063168b02f4f9e177e6f91f5de1637f0a2319d7a95a10ccea4b22c71657feb12cd086abcc45ee5b970df55c78f08b2b7780b937cec49ec12822c98d32be6fb1cc8ef90d2660b2e9c26440daef59d588078a2e42b039daf6ce32bd396dedbe0748af9817e93ef2883724d935152c2d10d7632d2672775b0b4ff22ee33561b96f249044a8ddb2cf328f23ee6c803e5b58d69cbb450b739fed88a0f6a15d709f6552ce236731cba576d4c675b70e8c8eab9fbbbd18bf60da7d065c8caf58efedc7949f199fbb29842d000546bfb06b34cacddd5337e6b1961bfbcb254704a19c565024f3f68bd4fa324992c5bdf53628bf4e7274b91e8bffaddcfadb925488d90371e5f49e7be6aa0986d5a2d45b53845e48a64082cf1ac5b8194b0f73ccd076142e2ebe70b5ae1c59ac8761eeb1586b93d49b387e117dd6b357eccab3f621ecf2622dc8a8d38bca95cf5aaca5f75d9a7b0dbb9734028cc92129d696373a8610622cd9fcb8d3462aa5497617587637b26a0116f0546a205db01ea1b16127f6bea2a21df8143d4b6d5a3f850929847ea152438d9f8622c903cd5f04b35383d34c5608dc54fb3985438b301191222196fb5f25e3c8782e8342a249ee08b3c84b6be0b8ea6dd49d3ed509a23c9ccb29fe2417020e07b1c9a689b9c995ca4ce6ece29e460f087619f41d730f22e8c655b9e9dec320cd6d87c669f821fc1fc7f7a8ae98669e5d628eec08e4f82dacb6f011a3d40b4e99a030b0173033932fcff54bad906325236b822e8d7ad00c1e17b993ce7ccef4b0c7841e5986e89eb1d975ebf14e11bb9d7cd2b69119b8c583a972eabb08edcbd9be28bf05109d3d9490e2f60155b652bcc652acb5e89e827dadccd86e9c8a14c7559a8fd3fa540be3194469f39f4549a9432a86c68d98fe0a583693cd42f885a8ad2d6fa2a1182c511669c25ff236ed908b79e133471f69c7a393344bcefcda8345540b944d19c155920d90aba4d6a81bdd409c6c3614c922400964aae17f91746a516795fdf3ea0d2196b067dbba6dc2a415a6e881ae5b29a2c03fbbd12317242eda8ce32425c94d69c8d3dfcfc1d2efdd5564c8de0bf66002b0b532d9349635c5c43ed2458ca6374a7a96ca85ef0a75bbc716b2fc1da1ae65d079277cb89f0068ea497baeaec3cdc649aa9d9343e7c0f459d0610dd2b3ef02d7bb64c113acbd1a8ca0ada2ec5533af79c14f6276d244c6e3f20f4b645ad2029ab08d79238ad923220e85a988d929a654dc30a26695c34b570cba5740a138e61a36461bb234cd84e3300f031fbf793b7b4420214dfba7ca084e891af50235f041123be44efe1ed99aefed0c30d348c6d21333c82e56553296bde7ea4390cd2f182ad0e52dc2f24c5249997ebb4686ca043b67130d0bbc5530bc334ab506de48086186d5a280fdaab467df71b8c5ba9f34de10add78246c8b50f43db37f00bf4b3287c4babcf837518ad9f5d625a275221700e8e85359a60e25da77a5b2c666679529c66b5f01ae0a1537a9376efcf9b136ac6361d42c016b4d10ddb00ae2600afeaa2df096afe0afd69067c49695ffbc1ef260a42d5f464cca07ba91d1ba90291cd0b4d571cb35e57d3fdae8dc524a82037d90176c96ed706803198fa124e5109239b4fd1402459ebefa23980449d491bc12a93fd433a877a93764583095b0c9fb082ec582ceb0146c6f9388661c2f0aecd99d64e92f78c7843a02c2e66255c56cdb52361ec022557288b3a18b32fcf8e808ce14f82d5a36b280bd81fc934941e261c1a9c199962f0ebebfa38462e218dff9837821a733e0c791ec86d8adac3983b09edf763300be3b9fa175e691f07ecbbb0191f07ead7979455ad2039574fe0fa3ac42f14b046b74b8583a648fd9ce59beae52005cee452a9ff54ba2bfc228d640ddcfe328574633620d8282a1b39bff1e4eb3af700f40cc7ebd93682c8099e90ac867d1b8e0478ad840e00a5d3afd86f6de62978e467ece7e111e5e887393a51cb32711f12a26a92eb332b1852e1051895ce43de023f54cc9814a0c7492b01ff23e764b08f91092003a5e7d77617bb0f625eafce7abf9620809a2242009c01b2bc85d36cb280641cde986a482f1cee9ee62712b31a4a095b25ebacfe572ca09862564f3e15be6e4ee5504cd6c6307a5bb725829e62bfc7505940522c24572dfb4e3cc7ab7c0868ae34d559ec41c0820a1f69aa5a618381cadab902efb14653657bc610e9d7fa09670191a6b4eb78e785ea461088fde8a40421d1a90dd061de6e0562e13a317d2648f4b30e67ed064cc5438a8e3661177a9870901d6aff9ace424c4b2ec635fbca8daf0f839a23c0fa30465a012610a9251ff80dfb7f6ee0028d648605e6c55246ae0f110fc7cbb95321981ac18d910acc1400a9ed670ae2b347018c79465c8211313c2c7d6a01a416dcbfafaa862bebf7f3db84b9a8dfcfcc26a083305b4916d52b6c67704bc48f7eaac5692eadd28a86615010af48fbd2fafb7ab172e3b5fc16538b111475a58768299d88687993810f061be68b79f6591d11c48d40b9986ba10e286511241dae74c521e2d6817ac7382f10688d6ce926e2529dd1473642f2c6c201fd701793d81a03f1a273fc54f1edb5ce208e164a3fda4de631674e093b93cc34f38672662305ab3c499afb0f708deb03df6c758aa7364a7737796be8f720a2fe678f681f9c568eeac6ec9609d7091f3c4304046b84304e80b3b0c2cbdb9d83774fc40875159ed744309929400c15845530e3498c7e5b20c2092f831da97bc08930af5f6f7a12f4078274a0ea9f9563af51745f5ecaa350a60fa88b2843189535d8d1240ccaa0c519562abac0522832c8f4210fb8afac608e5da07e8aabd78f9fff6d91734aabeedcdb9a3fd8f3a306e0e67e3a84976ce3742bff4288b35afbb378f303b70ff3aba99006cd0fcd2ae0061bf65a7ba7715027b355899608fdd95ff110e8ed7b6bb3de5eb00c176b66f92a1cebee31f19e23784f3162f22b92173dfb0f3c504b31a22c176c49817f821ae702ad6564a81c7c8f4567a9bb5390e425267bc6a70575f74a882eafaeb1884a05353ecd17350c8ffa62c38978795456b3df5507db89e11c1cb0bafe7daa19b6ff4d8184948a3ba59c30e9d9a207b2b5d42cc6d638f671bbe3887e8c2e9720873ded9822762840ab237081d821ee8ad46008a0f213be847649ffc669fbf8bc06ba3c289c0bd9cf4930ab24626731157a653a15bc058a8e5a0b3e7a4f46d019e7f164ad2c1478d5279f866ee7b2e0004f1feafc9c289a9b05128e8d76dc2cb3bb301bd1e524eed4a124f2ed6e1753c560e04cad07eaf164884845b1d72731b96548cf0e5766ce56e4a18c4e059a9d455142e3ab79d3491f7d41a8825a3736b7c363bdf96e86521bcb2e6134120f3d548892ba7a73ba1a1cf520053236d717d48ad9ba8a47112515d28933d948530470d92b199b10e338d25cf1b1b497a49c6bfd29bb011b77e74373491f44138ca487652144ff2862e9294ca800baa683350cf6da431ec9daba7461d7eba512aeda954ab1d699565a1fa723c7af006d480d9aac80384765d720a02792119cefaec7f7e380d2934efd6fab5647c1b4a8747333f9362e504398e7e939170654a0fe521f8fd9d4b095ccaaeca055b818bcd5198cdeaac9b9ce081f84ed28b5f4887bceda39d78f82d121d4b978897511235b807f9c9a963892da0b426b8d11f636d54f3c74f4bc19be42ffc0dff5805ee98d3d3197c46cafca15bc2458971cc410790c569cb3b97823cdae6265489638208e5711a40a1ba6ae6ffa61d26a41ccf95e18cebc255156faac742af4bed8a818b62bd1218127a4c773a584da658c4821219ac8d137bb9646e9416d53a1cb16594bf0ff4857af2503e4025a79e13d4dee2ff1b600d448713bf580734a578cd357706253240149a8b800a8705809144cf702aa00578d825f9d0745518518d03d685fbdc779c890dbdf96f85e1a6aa9b01d1fb9f8217de51d0190829b1cd9a6c3cd20f6836c97f11b2f9d8453fd83918e056959a954173cbe931dead1b74209618366f8b869064382bdd86d4fb7a07e6ab75ffc5e1dfe78ebd425c3a4df98cb13ee4e13281574c3c18750fa29091870ea50cde5ca178e6ced6b09228ca167937546ca3a30f6c88946efde6dd35b136f579daac62b92f1e63cdd8062b7bb9cf6cffb2fefbca16df220417b8f9e3ee5bc5054bab32e3764d4aa4566dfe962445b555c1e690d489012c62182f79c785d913c38492ac6aef4d6932cfd86ba4bbb5d53a09100e9f4d09f91e8690a38c6870141be5835e0eb3151f25e2ec37a02a076dd1d5bf09a4b083e503010489dc439a8c9e42f5e77e6752c94a767edaa9453238f8b1dc3a419da0d56aba99948c28c1907f563c89835e1bb5d677e6325c979f2231569c4970c5d8bec4eb252f612b2352bd65503c8fffcfc19032fa1651ed97be9696e5c5e7131eef31700114ffe482406800455409259b0677824efe1e4a16e4eb4b07bbf28b6eebae5db21c9546d399575528b349facc452417122bbaed5a01e6dd5d882393ad9b02a84208d1fc8e6d3301e9e3c128952ac2730ab38ce0085a0e4f39b0e3d4952c3634973fb330365938604b97d51c7e848a1b7bda8aaa5693f3484666918224be74ba57c7a22a26b2053a79ab08e52510399c6882016e1c1a9432105bfaf007fd8df8b16e56ee1c0dab3f53afbbd68d13f2445ed517d0d13b77f3f76240c7a1da1d6f82f23b4deee9f248c2cdc6355905190ce203a4ce5b568bd2da072f569a377e159f8afc2634b3c0409075e22a3fac536109af8dbce5e69d2520b59bdc443a2eaa116b024a6bff8650aba7f2ea8db62677675149693207721bf50510fc5556c755796b9f0b47029e84eeba15c893e85919d427e07bfe82192edfe0ce7a1cc90bf9aae87821b754f4b148b8e6656e69003bdcc1d70da5f8b08c1a740474e654920de180f66b7251aa370cad2d190695e18aae834b4148dfe31123d5e53a46bfdae9f55df7bf0d13dd0bfa054d68180e258d9ae8a82942f6668e795ca3b05f5e10a54c2cddb313beb1e290343a827827168f8418a7d032b911f8045507ac43bd448b70532fc70b848487760fe32994aa07e19f04c0f619a01aef1cce5259350ec1c898c179dec94638e8a4872032285cadec381159b42d3c9accf1a4131e06e51e1ad41b978eb96b3b87e4f739f7cda466d6ce8c84bbf145749ce691f66808d897ca12d656da17aa811f05398ffa4b9366b4a250430962730864dc4c88d759286df08a472d10d170fef2b923cdb9ea373a98de395cec3144a8c1525f80045263d4090801bbeb1960908bbe388be97ea9c3a097ed7f3930327f98cbb80ad522e10ba48be3d2b50911bc0953651948da7d8ce563a0d60ef02ee604407f59dc54e17a2436497288a1a8081dc7bd93e1f94709523d72ad3ec52643e24436ed7e61ba9bf8e1631022a35ef905e2e83a2cc71f86f8849a58e190c3e3b1fdaf85e4c9e7cb906dc00c22565716065201c65d987d0f89459a6d4de334c52c9789936094c3bd4294e10ecbe2d9279952750fab692174251153ffc16cc974b54ec7c58df939feb15cc4c9b8ad39f6e9badc3c8ba56869395eb8ec192d07b7c9c010494d8ffe63b31fee47458846383ef8dee967f19d818b6063516c198cac8b0c9384a0cdc1bbd0772979cde9973de472ff06d65b9fda36d081c54f34aa1cee57031062e649212b2ed1c4bc6514d7a29ce35d5b32edd04772e3dc598d7599824109f253c4b3f002950cb340630e98551cbdc06a9152b08cbfe25218a7c41e97ed6123c5e83a31b0ac3218e0948ab7dbc6d50c2e7538213a51b051f665781f357a535a5e2192280fb7ca16d0eccf7440694b7e9b900e13bdcb6b67c250901d545e46d74e4e8d78e407b545ba5bbc91ea7f95877590c6fd54a58030992826625ab35fb8da27d44cda35bd12d44045109261145d333c1bc198bf306bf9eb98db9077465dd4fef0334f41b99d4bea1dcd89b801f15c5d834f0979958dcd6b6956d3a9755ae7f43ded49a05f3e325d6d5bd34ee71c55d2ec3fd42ccb779e26a15350ca6520ebbdf90e944112a18bccd1e73fcbe4a2ee30c47ed3e7a69f0fec2a3bb069f1143ff6df012f205bb0850f56c8ce4d0ea10d6752a92e0adea16c2ef15e12ee4c7faec3e20690f1e24ec750e91bfef9ef4b6f21445dce296bb5c0f3db8a6c5cd5d6d53da14ff874c543f734193acf2b6666b6d18f8a5652e8eb11462427d87dc2eb5d103206cd1d270e51a97b8a466b54afa7b4192b8c9a2c6060c82fe39400624efa308bb9e633fc874f314305c5201370bc58882deeeaf99a09650708c0b6c767435c6e1f812539d01cab727193d64fb85a87981b553ceb3b213145f1c624ae7217679ee4e717bd014d46f6a58a84b89b8e322b75c26bc27085d9b479c6dd05f6b3279b26bab64936366ea473ffcfc071f7f341e4766da4e161e4ade77c445bec09a398c0dde60a18ec7de8f2f1cd55882d2914011d39a20c515ebad62a2b5c2b1629c974cdeaa6f099b82f977189b3a2f0197dce59e2b2cd6fba277a39a86cdca739a050aeb970d0649b02cee898e241a7aac9c48ab4fc16193400045b300614e3981038604c0d9e167c07e24158f78b189579135256b008febfb3cf35545c593a9d4a15c24e098441f953717b5fc990f3ff9f12f7c479db9fe4f2270d22c23807ed6dce6c8a57ac55a7224387129671514b2c6005c1b60cb05a47d6dd592704de0038d4470a01bfc9045cb0145c6c3e5e0add27997ca95977e0f4501443c96639a3281b4eac4ad31516bb549f63448b7569dbfbeba1acb3d19355fd4696e44d74464cb9f1a5e62a47adb6cf0794db00310ce8309fdde92a95aaaf40da164d5991e7b271a9bee1f307e0945164b583dffcf5d43451f1278caf75d68feea5b4eadc2391f9a685fef955dfbc1942efecde49cdb31a932cb74beda44b96a0c4170af527c2443402e926a7ad9ef9a0a644ee294a5949f325d257730f791c08d73590e2d0d1b4645e5735a1138dcbb733a43fdc57fb158370d15e1caa2ca500e1f5472a597a04b308bf7eef084441aaa38e7f158fe225203a692e113dd6a6fe0235cc01191c36d64d0481bb309a422af2287cb0ae42718ead368be1eb73ee1b56a69ff46fea7b88faf324e87dd5364c68c1244e58b5739dbf318d5b89e0622d65d338c31a79c4594846296d5a29116174d3b1abe76e20ac81d8a013375ff802b1c35a8a6befd724e5ad342e0d0674ae20032d1226603bf554e00dbe97ce2295364925afa45241fa121c27ea989f8d2101e83c59b3cfeebdc5f0e20d1d80ab6abf5b94c47a2d8eebe993d5c0f2de4a12d6401846e50d2d8ba2ed15d6630db3c8844cfc99053eaa6659549265ca1e88a86adda1b7b20060d40c91ff60f853c9bfcd4c5449e5a72d5a41a0f6a9f0eaf91bc2903c5c6cafa405bbf5dece27ba13c678e061ff8fc81a989a40aa9d532ab8ddd05058abfad68d639d9961b9b3a592f49ab5bee99443063e7d6a53d822ec3f2432b216caad07cbc1e073bfd0b9571ce039dc016588d48dd1aec89d3ec821bfd40559ad4b5cd1aec6c3849109630004857f3d91081c5cc9840c50cdd70e19cadfe55910b11c32ddc2949708ce1abd2e0d097ab780a25ed5fa652b1bd9bd9d71b84a3924abc0ba3696acdf7e50f7d27ade0605cca59afcd13238b44cc81032e6eec02b475aaeb657c8d7d40b50bf640edb231a480801f48eeb1b3bd8939ea110905b73ff41be3b54b43a99136afe83562e141947aa1a90a8d5cac92c9ccb9c0488e9d2ad226ec75c608342291fd389c6ef2328384111972b2a67d1bf1c60c9b7f104f32ee733e072d284b34592785056a808a9f166b86bf0866de8c795601a7a13513a381fdb8e6c6be3ff95945eada557cc282b4d94b1345b5f89e073c9a1c09115c25f73e9e1b91db51a1b6235846c4f3017983bd53485aeb727e58037bc54df0eed5c0adab17c8ea80e8084fa74b548d1b1599c304a730cfc8cd5e8ca4c0358d04fe65036e49ec44462641914c2f7193ed97ae1d9b8d52840417828580a431fc3eaa859d624f9069013c41a0762a3eac1dbbb1fda5cb4225643f049cdbe608aa23d03710dae5c2da911988098bba64cf25c318477736a0d518cdbc7d055219373124308524e7adf9a1e3075c642e279e9005f1b8cce0f45f156f26760394618305cd8bfe882d8958eebf1e75b9f8506e26cdf38251b33eb5f466613ba2f2792b8df4722faa6a9e5bab1b464fe3ff74c835371ac6f94773050bac584a5c19e79c323c42934655e0d4024d8af6193315db16ce4cd8eb689f3e5574b2b1fe13822e3b8df610878b2cbe3a5680906ec2c19b17039c172f355b4a0ecf868e23f3754524a1deae4c70b0ff144aeb2df85904e6208c97c70f8f3f2c7ee2afd6cca7d101240318a72b0130bfa7a93f21f6348071723334e38a568de1ea50331f83a779f807b867388d70cfa7618956eb717c1434c1f08632eced4cb7b5a017cc035c9306ff85103bc56d552773a6f0a83a8536d288737d86903c9dcd613c3e2633aa74ead1344fba718391e76c4cd1e84d311c2b4cb713f4827aafaaf9996ace9b78fa3030bb47fab00c2a1808c21c49da89beca7c1058db3a74071d932a3da0b22945b84d38df0465132183fcd819691fccf1866c2bc73de494dd558e92ffbcb2173b391413ba11ddbec315129bb63b2e56983c91c86af09dd6f269b81ac374d9d92e291787221a600a1da336552393e8921be095344fcf8194497a949d4f08c678e84b1726bc9786478c80c882cf8ded155e666fce03534c19577c7290ad38c35ab1542df031a15204b7f23d9d03618fe36b2b62b9b0cabaa79ba06cca1d79d6bcadeb7f117716b71a73da087a5a0eb71e0153bf0d08466a7efa04ec6e0c264e9687789455ce4c7823e271fd9122d24f618118c9a6be55f7803731b8a06d0048a04cdf6a82fa8e57b887e2a4af66dec18cbd80afa85221b3cfaa2a07e391c6688c29a002509c40df04b7afeda217c000e1a6a49cdfd0688e9c2f94767e1f46af4feb6fc9fe2fb2898339a1bdae4e4e7d8e0aba1f1067c9a878688d39c7ab9bada602bbbee6b9a5622592d453d9888a7ef55504f067db07ee5f489c80400069b98e63032c33b2e55544c13bf40d3759f499ce405396aaf23c2859fa5f0aec732354fffa65b6881c6916900d9940d25704d0903441409c5c0e7a0908666b09a70aa08033786716dcaf2a27544094347ab628291b36988a421e79e70c4e7c58af716afc9ae08a0af7c834f0cf1ea49fb6cfdff3441f81f91aac2d4cc68bf229c48681e873c92f257a09038d5f83c380f2a61bb135557d4c9f146482ac89ff1af6b151637ed226372bdbd74ca0a66fd6873d8500fb9264d6c3d718a530eefdbf1a2ecc720786a0365e431d73a2f1997479c5476f45368566732b09d28a9a929c970fd389d44c538fc77b2527c2d56f9b52bda73a18456bf1cd06678e0c542eaab98466d458516b49e91f0c8e11c2e77aac7706fd57d700511153e3c4e983b7a92896a3aadefca74071116936ac55786f9b01bfa45b9ce455c7401bb9ba3777c9db17023361ec8e0635ab6cc531507ea78295115558256ccaa951854ccca42564ec9d686ba7d14276536562cde439a6a82b9ea394bbed704e589405a8994b2efab62735ac7290808c347e439afb21d26298cce89bc94f78f03e226955f3240ee77a4bdac4f8e8617f9906238d17aa4297c57dbaafa25cfa174f1022845cb5d3f37313c14788bcf08256ea590d47a0f704a538aa9444b005d7941a1410281ea5a78fdcf9a042b5137dde43e9173085107e4a7c84369007a22a968415c94b4f29277d0335584bd74d5b842d12b00a3bad40b250f7793abe0e25afef7713ecdc7c97db8b30197ce381c9bf30d00eb7ab56f0365b4f74c3cdd94d5a6a2d9cb908de72f305b8a1914c173222db271598220bca3633b7756cd2a2ff04f3d7bc8873aa19dd50d695a393d63de7a9ff9262ef534c5246b3280f8d59e99ecefc98157e98384617cab67f60d442fb14fa5f4ae8e1e411ca58d6958323cbcc73e95f1205cf27cca9c2582c0f1f586b9e4ef84d13ba9d384e21c86a7dcc282c7dcabbad56fddce612c21671ce007198f4b050ed0a88b0f60a34dc1ac1b00a4934926498c7f151d32179534a2ed842198a708f72267003244bc5ec6f41c25200d42ba2c29a91f0958c5a7f13de75f497ba0da20e451d2226205f4a1cc5a1b77bb1a313215b800c63cc155713b0a8734b00a80620967276ea79b8e1e89a63b1b99b721e0da5c04b198ff1835916922f8a0fe12c41d1092590246eeb436a3a268774a963f363e6a16e0f210e2a08ec0b5ae9f4cfcc53eab5c65d996a6b6f9155106564adaf1082107684008e057d2417b140552f1a2ebed0057fa639c749190034639f7d68c61f85fe37694ad4145c2670d596107b41616ebd8d0d3ea986e68bcf402a8544bd0283bdc77fb5418b1ce94fda4a1d3c49ee4088746911df0e1e97c08dad3e8e6afeb94075acdd3dc1e1b44d69d32c1bc64f93cca7e0c76c5b3bd37ea0072c5d8f8f6d10222306221672fa1d64e0eb13059cd5c2e879c00c648d97065dde348f89ae0e95f8e0b497cf77dbf92478a9bb16a471b1644de99efc3a28412c540a47b09774e40017bf0f8d423224274692d3525b13a4808ef26a86250e302fa411bc33801261e795d6352259c947980c336adc703a531d971b0889bc2124452a0a6386b04e6b07a8811a9e04c769210c78fc667577204482f1e2897f05bac01639f54485bd2576b8a7475ca163ba6236682cb8cd8e2fc16ca30bd7d543a5bb50028d0305a374c63319df2aafdabb480d02bb8d2b0a665494c51410cd30224835105130a12a631b776b8c44c94087c87ca91ed2bba68241703a9a26273cdfe8d801c3d5f21d0d4f08fab2b32b03fa9fe950b4c4fc875bfb2398f35fcd165b7095c54c2cc74119d020a4d692c2eadb56ec6276ecdce073b090a80fdb404bb4041497f2ee204b4697dd0e812abbf810323428d40f558c1961eb77b1779945e755c40c081df4a6e8cd5f3a2eded9b1024243f173f670430f5ef8790903bc97bc5b027a8f94d6e84725e3ed1083c02dcaa38ee81ce693b9475c94646efc6fa70db7427aad9f5630817e4f2a8104f4031ff9eda236faea492005989bc4b77decc669e67c57a304f423a6f0accaf787b4b1a304f84407b1437112b89db32363badad60bc93ea0cb12276219d215e1597623009d43f7cb887c81d6f74f04f66224638853023faa08f4c9d8bea4da7a53825a7e8ccc28a57d877688c8787473b5b47311685a14ac35dafc47ef48ca92a880480d7a2d9d25382da6028a00ad2ab34d6d56435d0aa4a7ae64407db8f4458d76179df2e979bb8267488dd523b753090a226393612c11c7f1f766b4fb11aae26e2cbb45751e767456dcec98055dfcc38dd29705d4de22a875480e52e17e03086b912a980e9696305d4ac23da9721592ad5f0a5797a37db01c13ba524832add16c4ab023b309522e5013eda56da38aefc20de6d6eb79973d6b6ff04c8c6c513f6d8de1138547cc3e4cde3998e8b041f81821820a01329e5100acc52ab0282fea51aadfc1c55c0ea87c95a7b6a6be1b0f3c238d34a3cb5f5ff27612ae2b1dbccc402776af5ac35eef6208196b08d59034b15a785eb855ee156a701d0f35b1da1a31566a8af8c879e69bfdb572e9a156cd068cf31a2f3dc49e988c3b510c604543906084e76c34b4839fb4143815e0cc66e10c8d7bc694716b4a787dd52fecf6fa5a94cef5b6e5fb86aefbbe2cc492710ea18c121fb6e487c943d4551611bd8e4ec46fc2c3ed78a6f8175a306c5cd4152b828d82ac51437b33fbf64de8bc015552f011aa1e1aa5283f2c3e171c11d2b866128d54f4ee24eeddcd63ec41143221ce36302d204d2291b995c2536fd581041b2a9cabaf7ba45f313a2721e604debe5e2c4200b6e98831985f9dbc028c1f42a9c3fe8c8d280d1cf66e4396e0f10cd9c4a2087cebde4f9927a3ec8c0bdc0ba3fdb135a24f9dbb4dd5115ee4163cc0289f2c99b96b5a82cd68ae1af9788adb668a824d31b8285bf0845569d83b16059075afbb93838876f87111f831a26becacec37945e73f99404bc3ba0eae9135bb373520e077b696e8ad66bff8bcdd16b673197315fd5d264e2f0f267bac5f4ed4ee7f3227c2b406b737473976740cfac62d6cb6b63e70c2a3f12699b6920ad588de030d75802b11aba1efcfb26e37903b94ea587272e54057dc69d24c9b53fab30a87da60d7c8930725cb0754a91e0cece37b322e4aaac5c288b802af3c5a23625736b2cb4e5433293ba69df40a616b61fbafeb072912a43721b224abb27aebed685faf5dda3a1c2cce072384e83acaf2e578e177345ac2a468d8be38d0dad43f7c9ab8e29095aee8017be9690a33bd38651fe2557ccb385dcc3c82bb97b5e660ad1b7cb831172da61ffb816e0d689041cf562a98a30e3a72c97c27be9e82d2ecbcd552f80998101d8218ab4611799c62e72dcbe80adc13baaf8317ae52d8ae64385cb2620d1e62dbfb482f9171208359699170776315b7a577d7e6673f51f9c209d60b140c1b4f9286cafe12255b7d152afc028bcd61d3d09bd414a4aa99f5af6ad1bcd2f99e9a7035a58eacffa41fdf737dd2d2aa81ac0cce684c11842cb57c928f4c26c0c23e84eb399912f6854365c280e0a7b7322417820f89b20b249c2369c81f02f7c9cdd168b29083ef10e4cbfc8eb4adef7f4114b4d0fa3c893f0ad85f7f4fdb8e5d20426c2cba91fc846847cceb8bcb10d9a779bea099747fd97cb63eab2a783b8a4c7b41d9a7bd25297f7e28be6828b9bc4ad0bfd121a8c95ffd0ef414f4ddf83aecb7ff1b6489bda61c28f8f107fb10cd0d15631201f88b164cf0d06d047247fcc8dee5dea1f6cddd9a0b0f55a842d829c94f106bd525748e3b27e39000fad66e67ac16a9502ae051d9e2f6ed73fbb788b655376ddc199781a67d275dd5a91ff5361f6579ab234e48da42aa02007c1e3b9111077c65ad41479c1780579a5ce2ad9b8d4d7093944468b29a855bf9baffb87bb31fdb7da4e2963083128c38408d875f2c337c07890672778e163d24df28adfeeb7228c73ebdad52a6cd17c64595ef9b6925a0d42e4f5dde36fb75318dcfa37c7ed6dc72a732b92716e213217ae02a1a2241deb66a4225698628f3d8d6bd0c4b8be7a96ca1fc2978286538d9076621ab92f60fbb3221ca02589e90567080bf45fa21809646bf69806405b99d07ff0cd29d1a00b99e018bc973e55a62ff4fbf28ecf08d5622daab98868d9397b92fa0865bc49947d9be1ba3b38b8cfde374970b166e96a183c85de218b5f944d1a698f0fd5888cf767ea3b19f91d657f67d49933816c71c340da834e24df35f1f96e09b4c237a69b1a7910449edef5d9998a0ef844ce341449659b8c816971639c45bda868f6a5f0354b8c369c25b13d61e9974cf538c5998635b5d213fe75f99aa209dbddc2e96362650776b5cd22e400016989f641b44381e18483f4b36c58b0d0f37de425ada187e0fe1800576c8505f2aa0f9dde576b91dce7110356697b1fb8d0dbfe0269c4f788428ef141e2aba7f7f5c96b9e7b785d4f7d97d88c464a9663f402403037f081443074efd995d276bff7434f094d4b66fef3b73f08124e6f7ea9b303e192812b2658eb0061623bf166041818784919c7ec3b174a476812998b69239a11cc19b4a8a9c8c5fdb4f3b8d862813980788370a5f42d078ce9af0129462907b38aa146c9bf7d3a965207a2e7e31ab8141c2c29350f6ae6ed65370d5ab0cb0e79a388cc7312b1aa3b3953208204963b1bd398ef8292dfa6f58b785f1af95528da09c3817ba5d16c3c3fb7b2b7f5d1db42b5d2a722715520b6891b31425cf06ed8ff6fa4b379aab8bec2f7211c0d33d3281ce4eabfa2bceb1deba7ba8ffad11d9b6300bca239b129b6bccc64b9bfe178398d17e200255c51009a3f79de4bf25647ec7e3452c791f73367104b659631fb12492a8480eb57e4dfb21a834077405669b8bb61e2bb8cc41b0ff25c4e6f9d16cc5cdba1b8da9a81b76960488d230072f7bb5cd280b55c1405b8256efaf4dd25e5584e2abbdfbf9b783536e56c76536c42fd3be139b2c42b1a04cc468f5df1bfbd42015f10a1cbc102443a4e9e6baa3ad75b11a5027a9ae9bde20e768bfdad4684ac1e3fa918a2fb4982ec9a4f6a90a22548e5084d5cb38ff993cce0c982c08974788c3b1248552e9ab43ac0ba03279efa94a8f4ee4a3f2243c8861c0171158b77a5299418bdc402fc0274e31ef2fe1a88ef05a1d0694b5700fc7af560767f51a129e505fc4aaec7a2f4607329582808a1ce88c98370cb663c87d49c7342523a9975c48413129208a3d1f44763d4e3667cb7516460a87b81d86579a603977c292f610772ef37193ed3c18e60d8c16e0b8e45728dc1f8692a607149e16cfbe8dc22c3564b2f5bbe0071bfcd9f88e06a0bcfec03d1438b415c7e3e1b42f8b82d5ba41ff22f45f8991e42f583dc3d24f952810b01ecf349269e045c49c94bfa642cd4dda1089776f16582a14dd22ba84c66d6953205ac7f72be4e7f14c84e5f6ad4ee4d9601334c3aae5f59e12068f8652441b61eceb74502c87ae8e3fa76dfe8fe0e4a0a9ce6ff8f078256aa35efb86026ac922a10c6c7a8001b1cd5198da91286a9ad956d85149a2e1dd9d17225b053369c9722128c92d8b40eb1af7884dbe2c35f9a6cdb5dcb6a84e19207f30e44054feea562088c8f67d180c271ffc74dc54136c98aed73e349ec299be61386b83643bc6237b6a5775770b8a1b3d25b63441df1d3237a0a29f5b54d2a6bba48129c451d58c1f3efcf323f6573c43b2a958ae371096e0d5e2370e0697eaab6c6ba2c5dcbf7f311307522d4b5026809bc8ef9af70dd099defe7f5372634081bf51c8d59600fc843d154670198f446d19e4dafd99998d805ec0d68b7a0584557b14cd8a03261e3cafb8962bfe2fe1fd4900b0a9b45e3861a14cada4cf8593536e866238c6e457ff850b636367c4af9a086fc6fa527600132cd232fd9638810cdaca0c95d5d608ba9fb6cf74b97951426f11e478041bc9a9c9fbebce776f8db94fbc433b8d167205c4c5ab9f721e19102885b8b5c21bfc6f66fc56a6dd0b043f60e0808f45740ed19a7e8a0db019689204dcbb0f1a4579c05773d9f7fe895b0116799908cd400a5f033c80694e6ca829be4a6feb5002ee082b621e0a15760cc7254c3975e49028347e619878895fbbad5ba14277814f864738214ea8d39cee2dc1a946fe8710c6c61ae9e24e148d88dcf5af9e45208502fec2d9021ba5a02204f887573081fe7c0d0537f07fd972f17ee47dd8b2efbab77160199832e6de898a4715d2d9809c7d57888934873d46c25361376b4e8a0c5a5f9bd80a8e196e7b71474c67936cf9b655a508d01b6975144e7e01ee8f2d048076334cc3a676f599b571999ca681ccbd53d3232a3257f41ee8acadd82567cd9f0e70ac7da28a66b71a5895820cca052eb0cdc4b195ae2e67c067dabbc2cfcff2aeb356f19c33fd186ae25ac99b3cdbbb0874b69e4b4151021d231db5f95c5403c05a0eb3d643fc57d6b5261d94cbe9310fd9eecbcf645a1208dd40c59114eee149e76f4b8cabf2d4a62280fc94e9175f8a71028b855472b95799bed3b20d6e263b52c4a5fb0dd589a2b958e4c786188a6a40ca002463310a295946972d580c8a5aa37946201ef1286f131caccfc791d7ca237481f67bc35dc7cfb838a0176db3e9a6f80dfd7330d03e75433aeff708a38004f29feb4726b5042a59a436bb0fe0d27bd69b25903d7dccc118b4437ae67cc70da4bc12238eda2c803df4b9fe4875b2df3603e7f9ba6d3909cfde866445fe15033c399bea1e7323c7bba8059aa881b6329444af7604e01e320fa043d9437abc52c2fd9e1f853577ff402aa4de6dee74a108edca1654f4385331db4eddd7f3db16a933550c5e78b3ba04f612a7c4fe3f141a3cb7749adb6bb7356a287a5c63ecb2bea9124f2b0b38ac7cfebe0833de04b530799da040033356ee6d02044084a639ad5206397e5adc9be103092d67628b39755e14c8eebf6cc9ff696ae50438b0ba80b8120d56d216a7d07444c2ce752d2b5af9d1c55f65bd329a853194431b84af9b86fb490fefdd8967850a33df9e20883fcba2f5a60eca6d7347cbf57b797993836711218f6b12b12be5b9f74efc293add0ed97f5d255513a81a05083988750b3bb0aab3bbf1610f5d0ae8a0a271691f93ba9039083760b8f8ed747d73d3cfc46d8d7a6538f0f2a8f63f94aa98298a5283e07db69caaab5f17d77199042ce1686e5dc6c071095f04bf5c532dcbccf66bb605f66ec2218a649bdd2f4ea7fa1eaeafe46fce92cac77d1f3d0a2527b5403a072d1805df8ee2c3d6c1fa9d1d628d6317ef4e96c4da3eeb5cbc2fdc9c6c205e64fa382ff2b85fb50a5233d5460f78f26d6e713c72804d35d211b43fc1a3c461dcf5e3f3a0ded584bad4a650d023beb548cf2ed3a33ea9142802e30179ebc24c204139b379c4b618c383857b7fa5d2f5aecdab128ea88bc5a922074287e8682e6e5252fa3c18dade1c66cdf1231665d180dec07bae7201b45a3c1823c45511cd97270427bec2813a3ae15c382c12a279fb81acec89e4cb4e55ac37dc6bc329c9943f5b3820b0b9e27c6b974afaa4d02567ed652ad042ea914dc09c9feece6d81672eaf52e518311b47601b88d6aab085bdd306ce5ee3cc1c376837ee0ea1ef4bb85d5f0ba3cdece547c6ee73405e82be13e827bbd2c6544891653be118a3f8d6f022cee4869c7dd901ac59d2811e55db8fb50f38aa541e81e842b6fb7d9ed33001aab19c86d8ce4ca0e2c02fb5f20fe71be4e0f71e9c47c8b85b6673a522785d9cba2abb9137e263b0403be0290d2b40450949a2e9e55590a655722edcb4c67f3553648cde935e0aa6d88a494f5d86e1d52bf9dd718a1cd9ee44fb937bafd1cea5ad7000874c551daa813d233d8932c7630e6f3c11a6ad6379e1ae51342d464b05d598ed9e73fda55dcc10a5ba5d0562aca080030a04a3813cee1708c603a522bbb2b1c40764998e6102eda050c76d6ec681a7c42418a43e7f91cf4a9dc95aa6b16dbfd951eed04ed9ff528d73ca19bccd0a6edc6584ceb24230c709702c659dba9aab8541c277ad60a5d7dab54bdaf0ee4212a6a3a7bd2f445e54acc544e731e1480cb651a0d3e6fee00e364f887e6aa3854b8ef2dbe42fea0adbdf53d18f815007a813364de70132e3df58f952ae93fee5bb41809a0fec148f5631621b80294c166d910e74d5a00c8565328a74c3717c761d95c7f3b440deed1b15f1df6a6472d976399069fa997378836490a87b8292ff6e1bd645e10014a481b64ac23ffb4e4d67bdc7cbf39f39f525a8dc144bca1ce8fa88b4c56845e8488f2c37fd108afd8cb8da4b388d6a2e0c7f0a044c8bb9e5e7464e1535809c21fc587004ba02a205c559cf9f3bc206868a96cab494b0cf4a0a386fdd29c9dfed35c1dd010c504647a020129c10eec42e34cac0ef824e4a55f83626cc21c182d01c6ab727862e484bd19e6869a97e89329094ba16a55ee5f23f5fd4f96aff697e7dcd94bd223d28d8f93c9d0d8582836267ba0ced8535007240651aa08ac5e944a9c9c2dc6d0071c7fc47eac7286992db4ee011e8fa7e7e70e5cc49262b1b18c3e93a163ba9d61ac3074bd5db7d812b895f598b876867223e441d3f51fb81e0a5f6996727731435ec135e7042a3e9568e0692237d3d543362cf46e0bdf00f1fda84450401cc844c5d9434c8004eaf98a4889b18878b6ce2d14541fe0cd18fb4bcb79c8c3479ae38cc06adadcf78f618df8635abc6ebeac9d4a7dde2cfa374ae05c3279bb1894bac90e373181fbd6629bcc0810015a6264843e6c85ef63174b33df5bbb728f426cf8c25633e95254e1025a223129e074934caa6ed5b9032e4061a61454acaa3229bf5de50eaa78449017188874bacbee94fa0a09175b190b255113af0570d414dd8eea041278f6d7f3f8b75d8a0f3e98a5020a2cc9776d22f55cd28c8be376ab4930c6b7755430da4cf2b38ef98a196f0d41efcf13d5cbfff0a697b04e811c2b0da57a48b089dac946cc6342373caf4cfac2f6d1f41feb967455d5394796f23b81a1801f4d2928e9a202c9a8c42767659d62ff49794a9247b7ea31b3b65d1570acadae2c8314e94bc0ca04bd42bef57512c988acdc6b597b77b1da65ae4a3dfa00dda5cf7991b62c3dfbc33f6fe6321186c587416acf5162f0b2334bc3c71a500de1a419a1e97e064071508543962bdc6db841ac035fe9b83de36bf44231b3ee646783e9206a5a2674b7a2507d7df32f385946219b9d3e5bcbfff4ca01254d7740ae6ed8bd79b81068fa4a5f13ae2fbe18ed18119476f5da9402a7a3d76b3995600a9512c383b2faf8d4a08a6628a40cadfe9cbcf1dcd73a9674c74c0c2462f8ddfad073d88ae81c7cf91a31e7cebffd5ebed776ab95be33312173c00062ef2024953ca03edbee58bf3cb09ec79eff671dd41d1031cc9621566452f47c5c5fe6d1319c934ac5363152a6916d87f97cde2acc3d64f8040bf1538c6ce343654544abc3a6648cb9047000c46be087a2daacf693743bbb3381b6dde4d0b92ce9405bc28ec41f6e902d8936cbbfdfd2da81aa72c5473d60c32b6ac2be1c81fa9a67f110b05a8da550adb833b5ee34a5c20d4b58635603321d8dd93616b001814dc69310e0157ee9ef36cac2ddc63caa98d61e6dd00151308540348c17a069dd2269d5ddcff32ff1117b0ae1d6c365b0a646c2165796b73ed427b13c8f087265f6db5c3fa187704c517cf1b6617a80b3c7085e23fa44c8440ce6f6b910af5bca04be3da622de970f9e59b31e5a1083c2d54c806a6608e1bf5b17882dae1daeef077d293442f3d333fabf3f5c3218a01eca390552127358c182a44e3531daa8cbed26e21fcbfacf52275e07c701a59d97d619bb2e08bd7f082e401a1fd014e74d40d110c626710d88f9836f1c0d59ddb68346d477261cfb6e6806049c246c8542d2b21708aad68447a9dbdf676d902abfc4e77b57648e4110edb402204566bbdb01bf2d9fc4a4fbd2b952914bbe6c70a617916206eec7a602377fe0bf97247c62f296c25d7eb18181a26c9bfa1cd06ad3b0b7c2a83e8cf310daa82272571b89955cb520056f50a603cc2005d27f64e6f84fd95daf3f3c72b69f6a1c8a1634f936e86767c9839612b92a7bda086f7da50f1feffe36a8f5cadda0390dc83ee195d76951d03d5223325f99158ba5953543a367904399d8e443da0e6ed347740c0bcd55b0b273fcd1d3ccd1c02e964869bc20cde825540dec9a5246e370c6394beba7d81cea44b9a867f71d53288e945ac1be6e912fa0439cbe4f4e71a572253d9e0c566bf959a499ecbd051c2f049c583683f241e4d50520340c3b601cdf781d48dff1889dde230cc0729be5386bd1c9ee29b3a1a687cb775d81d155fe38beeea26dd43a38fbec4fe3c6a78796793132d82a8338151fe946a1999410970379a71d686d8d36a4608b1d9b092f6166fd367cb8f0fb4be869198c35a1a5e878d2e0fae0c0c261eb4790d94adab10027d271987b6be9874b675ff0c4d433cc8b241b1c208e953d74b4952b2a253afe85e3bfe98d1baf267520a436a56936437295a3a5ba338802a973a4d5486d967d2f6903df7ca666aa028ab59a5a4cb699ab56b30c774728042453b10c777a6d0fccef85554e371fa81835750834694e277880794596a27cbba4ab84168c4c5219e47a2bb79ca21164e2ac29d392c123ac9ea2a20e85137b37d489f4cadd751bc694867a68bf41bfa686c9ac8bc98a681895bdaec16e3dd626c2d032c9c068bb28f52e33023b27ecc28fdcd13133031e8daafadf94d3faabaaaf59d2e45032ab4d10077f319a3353c7d792735e8edee2e1f152b8c4ef9ac9faaa1ee1887c498ce0d51cdebe024e7543e8604f9c3a0d1805b83ec5238083af379bf960627bcc7f1e68f41a32ad0165d2c0be442d4f91b5671e3d130cf02d042930daa636db3cc5874b737384d1ca08ac003f61aaf23075b83bedac5961bca37410a6f5fa74a39544b11c43cc26214a3c74b8c822d3a0dd813e9689523c7cb83f5a709d2f28bd4b09151665eae8c9dc2204794c2ef7832e8473191b589015b6cf8577b2f30a764bea2fa9c867a22a793d0992c19c90da9c107a7d96ef6012dc79b51152350846c21806514df49cdc7fbe0893e5ef1adc115498ae7bc354a506c4968807ffa4c186a20f8e6ace7039614a45a367fcd1224f9f016b8d0401d1ddcc83cf0b8706930fb2e29fd02d72508060630f97d7c475ed9c88db780c548b5f2b569b0ad942e9f2285ba483255faf8e464970f31619d82cd5f0b77260da957340788a24a8d101437a5137cef3dab5fa0f3838ed28d48cda7d4da1133ca106dcfd8c536edd62e1645a2c30d03efc938d1cb9cdda942fb1bbf6e8453b982a591f2a21cd30f1d29fe2d2e7379777e69a23f66e3554fde303fc0d62a8e16973fd9806dbfb9294ad9cbf36ab2701712c078af8950c45dc6c115c16b44b9bc6452b352a6499617cd913847e0863e0e87b385ad63178e6c0bf5f9116d985f9969feda282df2125d40e1c63486c71198160d0410ff72d37b08285597ee210a032c66977b1195fad638e9653271dcb6183b18eaa27875f65db099d32b5a623369392ff5322dfa46bddc6c000d2ac7c68ef596d51172c7ad3fe27e0fd6d7f9205be4810cac3492a25a8d085ac602ca92817d03cddf494c1c4c42b4ca86938608010bf5194516b832f4d3caa54472ead3cd2932fd18e5bd7562ca9d338b3679acdbeb6a536207198156f144bf500f080d37e323d4e97e26b6164aaa3710163888a9756401d101bf91727fbeba8a2706475be6089defc8d4fb90833aa255f808281fcc5760c5b1278f2e59cc2ca70b1a276beb314fa1f9d8aa7bba18c32d0264fb8d1406a879856c3ae6071651aa9bb65d48926fc0e69c5aa25a5900a3700cb270395ac20a4b31c9e0ae926cc286bb5657963cf9981a504d18134d5dd20348fe36c4363e80e2db7e95687258e8741bb4e15f5f46d59d865eb3994ec6e48ce9665ca18e4d5f9605f6a06d1dd8d9403eb3d72a41f47c32da745a765d45e87e577ba4ffc5cba0656ae54eff07b205901aa08592e70ecef782c6f75370a2ecc8d854d40d18fef16a7c54dbc50608d7f1ff8b7ba7527d6547cf96e97478c066bc442aa5287bb4174e2fa9a4ab7bab248bcb5cfd2b63bea7f3d2fb28b43244f206fdbae1a946a23528a41d26325fe2168a3b7dac0022d8917d01bb61e3c6943dc0aa55347d50d50e1a29ff95e44b678db5a30f6a9a95233a240a1fa6d0f6c89e2627092245f2c138a05136205c690405edec39023805e46827dae7daa2781382d41f54ca09e4fa5d19e0be63a1ccb5c4f94150059ea4b3536f5a46f3d0931c0ef9d441bfbc76ee53c5e8928633e7a7c0e23264cdd13d3911252793897b4c2c678ed6d2b7b15bd34be89ede33d2be18c3265afb94ea3479c3d93be280d06c63cd18ef78f3db9c3e7bd34467654fce809244fa933ef0269ebbf5e9dc5e54031562345675e072c9f5c20c83e9e83827f9d687536244386f77f150e714d0ce9f597a53280992db26d443d46b32cc2f5f7a64d0cdbf0aacd138496fb308ebf3118a0338b3c273b382edb550a047935ffa0877024fdcb644cec49e97f9d01b5a473e6372babb8f309badf1b86cbb36f43527293afdde1dbdf7cdee527dae03d25bebc581d1188effac530d0519651a57e32b5c0840bf22861b76e2e78f5ca1c376c27a7da338494644b6452e74873c7fdc39439b4130148cf7c73582a473b0683477e48126ad98c50f5f704e4c91436d1fd0139a2f58c4184d88429e0794a272103b0465b54dc6dea7dd99b54b87fa49b19971f8ccf806c3d471553d440e8ca9f0205f7c171fd962c1cd180edb91566794c69a3c50b7ba24fced35a700dcede8eccd07a9c902e163fa6234b939ec020c6c71eff65de8c4eda2ea23a9ad2cf539ab8d72667594fb57731fcfd60d33477466f0dd004bb126812dd0b067bfcdec9871e1433a19cdfcd58fb6dd9e4a67c95a6660639760ad5b03f6a5c96bb5751b16e68db0f3b52c76939049095a8086f52cdd1b643902be812b5f8ccb056bd8941e69a49a038917eccac044c33a41cc1671de8032fc932c1ae563d8f6340043b306f1c38f0d709618fdcbd34cb4f33cacb5874b7459c6e9ede401dd402094dd171be4e185e87ea3ff14a0cf05187a165ed482139463d9e487e16d68d31fb3678ba93fb4003b4a806bad22b3e8152aa64865963b957051c7b1e0dd5291360b799c472f8a177d9cf37aa8195d90d9f70118c42262aac1c47f3101a817b733cd26617d0d64290fa6acc577b3d3518c3ae6b1aeace04717ae27198491657b3d1da9658139d0decf1f5acb37b725a686cf7e8f29d5a1b5aff80ea423dba8700b5e3e9c94bc925007e48fd2e63a0883a5fd33d6e7a3b4e718916bcaafb1c96174fa4e97b8f861b28a1bbc4ea2a0898ec564e87ee7197bb2261e762ee0246631dcd571a147da4b3b1ab3cb15e7201a3d4a800acf2cef21d3547db8b6fd6f583ea36fbe558c432828cc8270942ad259747be80c82986c0e90c4a3fc6f8df46b41bc7f1e32971e16e7d927c6c142a132c8c21fdef50cbbe786c518056a96fe57bfd1650f162013d34a97644733c907a28e8dafa066788dd8ed802340ebe9bb64cf883be6f208b873dec4d26dd62d6581b3ea4972d05016fd0ab0d190c703fb7b3dddbde4398ee2fa485999d93acf36bc0c8bc4405241258fba4c3d200641409b773ae3c93ba231856aa5b1672986720ca47f5407ec3480bf8fd561995a392919e1000c2cd2c0901970d97d5f2b8e5b1bf08ff26028a6208c3112aa542739eb40972ce19691079ef02af6c6b5e8113fe4549cf0b59346476adef46ab8bd4eaa063a02d8966cbdda9ea34d4b675f658b431946932a66848076e4a8f31fdfac57ddf95a5be3fc04fdf2a607f0a26d24072c9daa6971c09f0acb24ddc1bc75566ac0b0e32979fbed135ac56ec9696f1fd5180b6ad9883bcd98bbf396ee835535190a59bd6578c738c551669cf4c140018d9fd6ca5e2bcdbdc4b19d454489420ffebc0ca778b46da55821cbd6024c857f580b98afd017b826ad572bdaf4e3ed61388cef66c62ffc331563396acc47905b516965728d8a49cf1e5646aaa083393c626258ef3f989f590a68325f616d25c877f7f3a38c21bc65ff8dcd2d55f2164f3fd9dbafe112ade051c089d88180752a49a83843eea1c821a5555779ddfd1bc4640ec2959e99dca3159170aede1c54d9a372c8150e5905391d6757470b0750d6bb4a93696a387a10d0aeac4301acdde36860dff91637d8dd8cd27c32ad016a3be092841e78532718cb0cab52fed18cfb3932cf592b1fb039bfaea444e62b1cb3b166bb641f23a6e071e9032c7fc279fbdda5614a1725129e7e1727749447848d1b5d1c67c1835973c18837c3187760a1167d583fd01443a351d5bf132a9bb3bdd0e635def0c2f3dd507fa03a054816b2b07bd97d40f25afb616438f7de233886b91640752ec3559b825c0bfa994e8dd94fb0874c6e548183bada2b1be6773c7009a74085f90bbe13e3c21e2a63a49ca7a78c2b974d4d3f7f1e1f5fb7c799f1ebd6f1fb7a89592f5c91417bbe352bf32f411c23e36ebac946c5018cf95a6a4024276bc04b3f7dbcccbfcefcaf193edf8bf0fd7705465f04d89033506d33b4b9b49b11fef37b1b2f00e2a7dc887a1f02ad6a935ef816088c12efb01820b6e3b850896159602d2024258ebb6642afb341a6ebc70a608d35fa4ea4bef19c39ae70ad91ff2f0818e5580f7e7e317235ba237c40af5043bb3c4b66076bea4dfab1ed8fe4491cafad373b537ab0e128c623ac2ac0e73e62552028cfccc99119546b22a2061e54b1499627cd928f1936bd5235ba8e3d1b24789b94d2b56dc13b8e97841dab56376fa407d06f0e016e9d46ce822c2b0b6e0269051ed86237374fdd511c63b279792942b96dd40c499a8b8ab8e9c647e44f6d36c3f7ba39deb6870f07107acafb1de5b2b3515a6cfc7ef43d293214efd9cd6c0aa27a804221a0c64069d0f55836fbc954b0c00b6d023b45c2f68ed0c45b282d7ed8db21df938410038ca33e0c472c0eaabb4b94251869b550b7f9725d37530a2548ce8341951c01c6c578a5763c0075b88bd34196d649e2b4f41d1604f5d6e93960e31253e2aba319802f3d96be316d24fa84267097dd14f3f84cc66fd44a2d9f61c7122ddc54f0ca94e73e15a62a4c3581314b08a97ed243a84ff98c72c3eca03b6e17c6ee9f1bd5e6e2808f6683faba34fce1f670fb97beab5c54081f9a2018441bca7b338c5f6794a5bf892d3c8adf047d025c0b72d2268b9f021bc405036b1a6ac58f71eff33e1f9841d6ca8460c6107b584d734df815e834ae9841d286416aa9b68a4c2c91376b0e3347640dcb0ec80acfbb30342c6e1b383963a28456f8706579f1d6c9df04c7c76f0f67ec5bd5436d210da2da9fef7d9415b408577d03e3b08144b47f4f9b38311625b5f50e76a757d3befdeaa716528bbcf0eaea507965cb07d6af2c907a80d4e9c32e0b303c56246535145bb34e50b9e4690be0a12e99f45a7af1a9179cb9f9f9fcf41df4e72771aba5dc2ed12d80b3e770cd2bf8119dc4bf04170ddcb888b40da230ccb7e95532cffb0f50716cc15045c313680938ace5bedfd08023b9e9cb497814e94e0c0132bf3f4e8e50b5c325a583681e5294f2fa56d684f6fc2175480de9c365a1df379bf43aefb73b43a4bd31458fac0f74cca0ab9b6f545c99f5a4f0851e6d5aaa43568b0e8acf4fe052eb27367c0a893043c260a8350ce041c024848585ce658d64ec317623c266e14f276627c1f45c6bebf52473f3e730513aa3744791e3a04ba85630a8f028cc8694489420ca7835dfd3418d2c31010691e9f3537ebea212497c686bc635f3cb0ebd87afed98bf177a82ff777b6b56ca289705a5b2525274e36d1b8c2263abcb355a5e7dbbd35d1d475d3975d28e93939f0279adc7ea2493abf7bb9f85ab145254d708411635b79122a4336e022ed1581cf9cf6d320a680bd54379f469985572083cfac7725f4765318886e10f1019ecbf16e370f5b90564389a6d85ecb97678b8727020c184500858867cbf8d79d04551394bb2a1588159b48a91c973e5ce2cbcfd681aaceadcef4350cefe0d87dd6276c5949abe21b68404721aa781cbca6342a0ce377b57613fb072a2435e8394a472b1ce23e987537d06879101ccea3e97a2fb1172c9a4bd6f8e9f35e2e4eb3fe9f2369bc23deac550dc72ed64fe2bf7be458404606a8cbc8d13799ca00903b53747e53f181e4feb787760b5a6766afbc7b384ec9758c39368855554609b428f8b071d6020f8ccdc03974f22bf32c5d49a009e13a29bf40c3a157ed23ce10c8c3618cfbf244d32a39ac62510bc339d0c963e761a03f12fd0c36a65ee512f49b43e4c3003a202815e4651a73b79e1894b9e2cbeaf6510c6c4f45d014fcfcd224417d5556385c31c6103f35381d7a4a498d66bd4b66b325c97aa5316f0ec76fdf708898464ffeb5133e257ec709f1d0e824789bee8e2338516a07bb7e07399049ed5ed40131d2fe3f6e8282640aadce4ada0a3764ff5eac0a827738c4cb2544f6546ec979893d8203d70c55bc00312d1e2bd9b30c3daecfc2cac8a00b946e26483433a23999212cc245f39fd9c3e947597916ae59bd71f7eeb36461106f38c72e95309a4dc92ccfb0f0399d9c888bbe7bd9b7f8f0bd688de866a684edd74846afb732b8ed1e51796d5a55aaca55865d2b0e00643430ca4f8438172cdade53a0197d7125fe29ad61d3656b0e5f864983da9693cf3771a3893a1d85f67a40151c4dd942d0953701c2a01810e8ba2c4850ffa9d9768efef8580af1cbd099fc69fb8a841a540c8e6e92d2a40538f93dd2df2e8ea96473c87fa44703e3504d295225e14ec80871606ced2a1a87d5b04d638c899fc45d133e3c4801e6c5b483244a80ab72465987e04538d165a41e1410e325836241eb5c2c45af189cece795c7fbedf0e69299c0bdca6761f687753706efa5592cbdf5a80d48c6b8dc43b6c0be26916749d5e34c86ead83b8fb94e8a1443a070440e7db546b2bb40f41def8a361dc319ea9a033dbce2dd03a36ec0385b0000a2e706a1d0c18c82c8770c62fe88a9c9c0db7c279e888b96b3e1531be09d6dfd045486442403afa109d1c75b5e5b7557e7162b0b8204a547bf8023803f7a743263246bca131ab41fdb1a17f0d2b9803c410c5c6a40fbf8a8484be4276b041ee57fda3fcd8bdeb0929b3f6e856628605df7296fbcae5f717f657558cd97fdc5bb6113c4fa73e01a97236143151dba8088e0a2cc4e5a1440f82feed99ff7fa21ad004f9f7422f1035d84386ac6a35da35896b6cf3d85b1c7a6c3f1ecdfa508f5a8cba1bae6f5249ec12f9e335049e0c428a2316e24191211dfd798b28f6d59d354981738be63da3585df51b20c0f1c05a7810bc60d3bc07534ebe7e979eaf2e4226da8c4f92e73ea0699d946ccc90d96b1c531b7811119996b765897efa33c93db5ac97b3017dd443f1e4d78de504dcf446530a8ded719c42c1d0269ea9b3ffe9dd67031cb53ff3cd932d83ec9b09c8d46a63da91807d3402724cf604a68c0aa4e6d4c6379849eb2d52de7a8ca1f4cc2bd218409424ec28c8c32cb1466d3b27e2dda89468452666e40bbaf630f251c0b892acdbd5096e7054771174c9ffd609c06cf948acfc484d655a200fd13524a277a98b8043f373a000983a211577c7c3d5720ad4d0e1f723ca52caf07370d4d9d60010d91363745ad3876bef456fd0e377e8228c84adae1260e9224b1947760569eac57087e2393c732b86c3c3c0ca77010e475fd9a3a66e52786d77a77d5d12a27f952e082764bd5140b174263520dec8b5999990d0e0474c8f858c9a23d38e55fc9bb5cf1e5a07dd7c41d718467418b23f993445757c32a4b4fd58a28db8a36ce0445e9f9070f3b894040b420975fb819f984ac5c8d455d71eca4b9987c27e89ca273b796728304a8bd75142edec20871bebb5bc87dfa49ef182dfde8d6443eb524b97b723b92e4086d099fee85c0a098912ba7991e7fd4cfd65509aac95a80abfe33eaf7e2ec1812a5caedbf8f575a55a171c30f2a76a04cc1df9f4163078d375fb82a37e991526e322e2009c2082ef9e86e79bc139e2e28141542bf8d637865c911b4732f0b355f958a6beaf3a43d9599fc506783c78e910e9cd923ddebd6ef66316507e9eea60c32a8d98c42b6134be1cde64fefafb98a33c20bbd4e15136854d71ee63d2169ea492d7c70e68d1b36472b2aa900e06463814f3c96654e491c70386d04b304dbe34dc5b17446a44088157ff2ea530063f9a86ce7d0a2f327618c6704c9e4401544632e9a6bee6ad8188f326e9710b43e2ec602ab1ac5f4b50846d5d7c5c266e2a9c86a57e8f8e8bccbcd8b4b9560d5409db253baa26659a78a102cccc00d56f2e46965442ab7aab4fe3d5fa4d370333ee6a4c3996f6848219b60de076354464c5a0ff283694afb2ad924fb5bf7666713e0f599e2ddf44dbec659a3b131843921772967d0bd07aa415be65c427f619b8a4833b1a5f1ae6545d69c4fac7d6bb1d029a00bdb93139372c3f11d2e1fc9e3a9056342cbd243cbf10d6f4c30dd0b20e1593edb9b5a2020b8a2b1842eed863bae91117779f2677aac38766a492e8e67a3a4117255485cca1de09648588ee59dd7ed97a89a5b5a56beec89b9cd83be962ac68c01ffb3c33c4daeb9a748cbc31d20692b90204fc833c8cfe98adaae486e98bc36cff38ba01a9e2dcbbc307aadd4d859424a890ae713b1835899f143fd0a2fbc0555fdf48f5809759c82d4b4768acac2f88a8dc0b41e2b9f84d7f5c1a2606e2dcfd02cebaa65501e154d8faf3da04bdf03fcf3e3c1caa548dc7617177da63f681e16c72d61bfb710c5a607b0138d4db936fc3d813591da5deeaadadb2c4bd1aa2742c013d83370db0869ae52adb261d2bf95af6ee568485f71452e730f6f229c06b4c18297d7c1c7f6c86f437baacaf17f0e5d94223d2d41a0945c94c5082ddc0ca3db779f9aa6ff519b0495e21beb45c8b8303cc17a0ad4243ed9ac7476da7041d0c35137a6c9027a734d5bf1cb8aefb522b9a8bf2f332c9412e3714b34e748ba42f21336dcaab13cfd4dda1b9fe52d87019446f0ad06c2a6ee52a6ddd769aec060741fc0f7cc7118334f97afad86aded11d6c48ae18ab646b820eb04fb10cc04665d7bd7b78791d6cf9d95018a3b7ca66ec47d216ab8bdc1e3001b9c77956c9648624e5e0ee9d0a7b42df855e3907857dd89bf24ac91005893e25c46d08b5ecd427efc34b6a033dc8aa99922529f953868bd178a59ef65ec8c4103f55ef13f26953641bbd3ed86bba37cd890534a8521a7ba0fd03d8a041964b8840332d480920d7e386598c59fd8ba0a75d977dacb16c22d25f595c9be3a3420d31e7c514f31bb67a6d492b0b1d2183687c3b76f3ab4fe75461d8086dea1d7acd80ed1b4e6676801f9cb66b0ac93e4fcdaa9e14e2224416ea07c0c97525508a2876f9041b9930204aee667d5ad9a65a2879c89eb046a316dd71d5a452eaabc4480d7538caf7fadf653df87696037f5bb8bd0713128bb428060c71725617be526b37a7c701c500279ad892fa08579fa4aab2bb419c6cd341d69e98e18e13187d2b531f5500f099d325865a024aaf145f650729f109636acb0be38d8286dfed18550dbd8217a4bc3838e51b59fa7ad668921a0543f564f9ac31b6d1a0655937056d9d2828d0db2923f5aaa8d211d6b1cfb5ac80ebedf4104aa4d1edacb3442973301200175e9bd4a33faeeb7b92b4002dc91752a2346704443be32f27545469018440aebd06117c100df7def980ab10249c8807558fa79a2a7a01c0f673b8efe961232e49254a8a5f8a5bc517cfaf7e0f7c84bc80724a037727cedc082538d24930b040edf75fe738d2d9364fb476b4f1d069cc2be622e4a645c249e93060626ca001986dbd1995c0775b6ac7837e8a5425af1e721184df6a5d2ac09d9261593c563009e457470e9b52960912601cbbc6e278c84a4efe2e6b194c6d84ec31bcc8f8a11097973a456238e4c6b264b052fbe046cd360f1727fcfd928342252342c5ba66243b086ed3af40ae1836785bf65bf78a9e436febbeb30734c9243b5c9f60b54cb6cfb0575d7b2de06d9f6ab9479665d64871070db30fc01976397af987002dc688c6d59f89147d7548b59630fb6565978481c3c6a05317044bb3932fd704eb6d8886370cb239dcb5ed92b059351d4b3a7ef62ced5f81bffe7622cf933d8ca894e8de6d034b28aa26ce5dcdbfa27fbdd5b4e197069382297528834e3bb007f39c5775941e66a5e0b7364564e0c96a13ff411ab6dfc36f3425638114df0a3cde10e3d4b3d259f5f90ab6da04bfa2a96537c3b4ebc93de6ea84c77f4d9dede929f64243574417daa6d14d650887ff85842da40817180f6e182908ee84d27778837659c6cf6a67e3ececc19db9c898d6e61997fa14d523c85e93639fb529935020d7c810dd42c325538f3d4ad0f87007235b807dc682d754ef2d2255761c9cc55894aaf19f382f80bcea973c6aeb5ce901c6b0ee7b00aa2376715b10a1baa4e7d18bb349a3df00198ea227f92a18e2c343c754ebddcf804bdbca8fc63f2a0460081e4b530849f4d9e501bf1ed9c52c3cb2ac08e9f11aeb733343897d59e978f33768b215d35bf2ba5a5a999a35a6970034d8a5bcc95754ec13e543426e369ed7c8b2d1bb4c203bc70dab89caf92c885fd356fc0547b5d43fee5b3827b2067255d5247fdf5043d3d551de3070d4baf92c684d6f0c8769a86bd40550e9eefb4d88ddf3a0027c34f3cc47a89a090885b97aaa0c489a36ab4a6eb15b7934a57aa188f9b65905f62a40f22ecc2c17fc0e0c347f91a12dde6bd5e352e2a9e7ee0be76b6c2415c294448beb987a82e218d1273d48d46dda55dbc275ab14c3572bafdcfdc498059631952435f90d20ffee22f2e664f707548222f9bb1192d4d23f22e7707d65e1d7b64f315dd75cae5d07ff1cf7040416525477780db928eb817cb8ce77ae0fa4aa8ce5af299cb7693735de097364ce2abd00453c29f9f27fc7adb76b9d9ac4c81ca7acd318b14ea94297ccbc95ca417bbc4e4f0e76c3b723848af2bfd9168e9b1d18b8b46d23478a5b40d0cc39e414283eb9a5e988929e3c67edef51594e9c12522a693f49a824dc363016db52b5ee1fe413300296b2abdc433611c4731df1491fe321b2d38706766e2b8c1eb3c80e16ff43307e4d35c3986a81b0f63a7e2d2b58776fc29d10a80c903b66e6ca252fa2e26ed080a54b51ad3a3533e43dfc026c0c6d0cdc9c1e46980035226f844a469ae6237d82a0a050021dc6d84af3333816d1843cd58f52dffde9306c7480b55aaef47633807d524257f7d3c4df1b463d03556e5c6749ac8e37005d7caead629e7280c21c534b29eb11547e6bb315df3a32e7b4525a1c5f36d68dcfe13c80a3cb81247079b05fdd6f4677ed666e38897fd260de651fd6dd4e36117c930d52c03d36489c545dc0b45643de38b0a245718fe96139c7f72a7fcc8ca879573b942b92d1a5eb540dd8e7af0c6443dcb6ddeadb5cf6e6ab87df0ffdb0284db30abd22336a20ce51a888f7798a5cedb25066d098e79f1c0c42c82ed85bfbccb39ef6f8d23aa432bd03075a7577889baa7831f884d5581f5960ef24dfda00cd98461ad3d19cf721ad6ef5c79519697ac4b7bf7ccdc17d8a7d5422b6f62899ef42459d67356d07012960be00d61f2098cbd5c0612e50a38bd5c05bc295d5be46dc9ac0e6af25a9a24ab6f056d6a115231f0c98bc4c8b837a7a594af139ebf952628ce2f4098e7b3b68dbdaa085b75d0fd851c323abff735cd71d2b5f062a4ab80dd99b51b8bd802601d5d61409a5323cbb95c827592a808ab4aeab7060f6db83d3a49f007f90d60d5a1acb9b0c83b442597bfc8411d6149454b3497f21720c9f31659510fa607c42b72e653046d40d2c23cd4c2cf7b6bb028b80a99f2dc3b07ef1822f026e18ff9a646518610ff0b65844a020d8abce6a98f37a1816c3ac031fbfd6691643b43c9ebd40d3b9451638097d6c9d19ce0813fc89b7a87bd4cff5f35feadadbb305d64598fb52ed5cc154acaeebcc6916b518f164989d4676ce82985a0fac3ebb383a666741263d37855e0ad39f857a9a99967bf351e5ec306f492b5d039d547bc0c44a2412022ed3ff34c138254b0162b143c38e24b4bbbf13c95d44b27185f381b7e380a2e588697094f9f881896628103282c230786652bd187bcdeb4b5771b5f63ef7e56f0ee29860bf7026a6b35811940191484d9c96c270feab49a88a277208f409c4a3b1273d24324a368cc25a3af431de1977f39d3e00ab0806bbeffd2ced4d8f91d1ca2a4aa2258dde51df3a910ce84a81e8a163a549ab922c38a4235f8a5cbbbda7da73c1c95ef0b242a3d1cc97e692ad6890c78ecdeed29d32658f026a64b82b5f6dd608e91b6260cb7af6f567e70bedb3e4dabd40b6c80781aadb379d15a4ac04a69778901cd886e786830280049229c8d1100de7c0598a4644670cccafde6c14dd3c4544fcb2a69b351cf62db956be0125a4aca58ee8a19fc247be7d5192c4ce3eaff9191084875d1e8b9b4d274f848a04fb3c763ec1d0007651ab42b29de252e2bc29161293ce7b64fdb0ca32973e63ecd4c172600cb5756e4b0f4ac43e4ba251fefe9c96e3813596963ab34783e0be5137f3c6032cffe9f709e1a4c0a092180680d195d6f6b6f181f8ac3f78089ec4814c0d8c0fc5ee3ff5fac3a67b577df83c26301daf9e1cccea2e96887bcb576a91e284ecdbc7e59fb80b219a6b0db95d0b634c7366a8d384ec5da90b9c09685fb5e43eb57c5e1df02deca7618b955a098b266b636bd1ddd6271782d2ab882b24b451b99d3530e627e4544943debf50686a0d92363b815b27a17164ac72cd6a115c417d860970ae8f0a7d9da7fed65ee65876e783fcb72b4e612e8064e04896b8204e2b86705a381b4c88f1112103b9e5598288c4e17541564cdd064a77f8ee88fe61c2cd29e28b424b5cf47e842e5bbe87b950da44e4f98087b0f385e630cc120b7c00b4ae8d5fc5157da687bc5cd6ee46959eca3e1b7c1451c3c1f25908837cc798540ab3ce8cde04df686e45a2acf4d7cd2b6f78082867400bceb46bbe0231b967bc2936d2e3d06e1fab6f7207b988f80346f0055c8e433386a3d72d61c980bd03e99e657f34b718bea4ecb6fb5d98bd913827f5b96bcc4c92ebaee6e288834cd673209c30dd47f92be716ce1da30de4606de5c71d37f4dde4a7d3d3adf4253478ceaa50829dec524407afd88be1aadc69f461c2c4ccf1c17af4c026c52a0cf6e9d3bf96e4ae5e20ef0e16be3efd8d6f87621f116ed3bfd42551bb9c4f1c2a2b0d15a37b01ae73ae07687693b406fe352c102ce3e7441b0bd19880e73e7bed4dcec0d240d6b97c3ad615eeaa668eac2b969b6708f10af8a9baabbdd8dc757ef20b79d2d4158bf299eb2ec001edd9b31af13971a2808272ec43e48ec05952db33b355daf5daa7d0ef6dbf689b82146a398f034a7c1da6e06defd74518da6aa87255082b61812f1426b01124c57437df12b488a4596259328238d43311ae6968fd771e98cd88db0fa0b1a7b268a7770d5377c75f1659af70d5ba01a4b861d20dd5f39c6b29a48b6c187514337a08e6a13473a996b89584d05eeb88bb5962a679116cd370ea8ad129b19a09dcc88b31f5fc16bd5a5fc90278019102288c18281050473ac17e214c3a59de65b3aabd18be82726e8ea8fade15d1742f49bbc0c51947bac4b57c76017e485c61d0adf02a030418bd73ec02e876993f5652f921e1dd01f179ee545165fa36c69692ff9fd4a77776e580e89150dd9463d182023063beacbc9154f6f7cdc196e9b1c488995f8077ddaf151935be688a87caf19ceb23df0d4db83d515dac835d6a46a68b8212dc604811dcf6185c7d4364f843abb8c7141fb56307e2d8383b631e8001a1df7ba9b57bd01498c992ee20ecb5da45002595ca3de28f04fa04d2b515f51531a8048e0f4b18e7865506b945b2fa7c5fe910db0bb9a4f1cb7189bb2c7d1fe78b162db15b05581e240b09281e297d44f573005c5a7bdd65c39be8d710ede3a70915a8d1c1fdba2212c5e2d0ff7326dfbd4c7a8c626b1e93d507e944d94f82b88f7d382cfffc742d289c01a015818909280ffa77fb105cfe7c3c3d95e6f6c91ce941646af7c78a5bd180a078cd246f80d1be85d74c4a85510ac1a6ac9b1c31156394afad7bf48a12cc305ed374b88ae572b57d06100b22bd9634603035aac24ca2624058e4d79a3504a3802287cf74e6750ddf9269da91b558d54002c6255c7fea90571509fc0f267fa6c26a24ae15194532c331c800778af5a6c9f407dd8fe40a7f8c1397469c7774f57ac9a03d67f682b18e006e3054bef548e73eb34f86f30fd213f6d94aabaf74fa32465f938244cbec5d117c2c65b2fd6efbc330e8eab7607e3f5982fd4cc76a2f4e6fe2cf9990d9e4483d0c0795229d96af356a15ebd3955552966bb87244d5745c5b6b3f2b717eeca96ba2885979e97071851673a65c639d09cd8330656a52124478bb02e0c884453cc0752eb5cfb933597b88c862d4ed2e1f3d4fb4654242b50b13a7f1eef9ffde2cd20850fb0e7ed7a8c44c4f63e9107f9b0e6ce2319486a34ef616c8de60f05580b35800ce959fa7c2c8267bb6768f8b9213065a0634103d387b70106cf3fc7181e143b7d45d604e1d4b80b68e60660ed34ae618680dbf33f915b96867b4c43de6c238526b6f1499342f99991dad2dbbe34e1d570baab8e0eb33932bfc1426e74f6ccc81c1cbfecd49bf197ecd157b4635d355883646ee6d9fc8469b1339c3b0853ec9819c2a4f36fb874db3d07cb4fc3a06d472b8260a7139415cfe082b612906ce36617dbb7898f9ae4eb3410b5a458bc0c2b34052c16830ac7efe8d3de70cb61a9d318b5d161fd2f5493b1fac44ff56b658b012812efb73333321c0b8c6777efecf460dae2903c3ba4b8be46b34685ae833ea247efc93f66fb40658a42036ee45b84068bf8d33b825570a8592c2df16258adbe5136a4f36be049f065e9268c42b080d92a387101adc87062782e196807b4c5f8b8e51c7a2caa825b720dc9ed8a6b57ae3858d80081e191c837fecd442c13449c16888bb1049c9772d5b8ee492418c341ecd4a84088d891e246487ad096510d624d81925382a72836f07445641bb75c179993b756e833201724ba41f0858a36f586814561d3012a7c173a5237bea00416bc6e5537fb1ca8ce27a7c105a5e001e45f4200f6d0305368aab2159b4b7efc02eca174370c3808e03388bde8f4055f1ebb9d692072f5b09e4a876303bed08a5f88ce6d5604efaef628d25296948ac180fefc2e6f71fb7e065891a201feb700396be39aee92984cf56e7b5476f591417c39a5cead4b8a6d898e79357d0c41e9fe41d283f4b9b880ec0f6729a4942c20eeb87ab31ecc69c8b678ba8e5af019ea4c6a01c1ea093385fca6d6c685ab2e034550fe5672c265f33ca4e35fe275ebc349488df82afc64900b43fb213b5d0fb7198ec49541d2a92f5e46d676faa3888554c5a9524176b3ec01807af88c31dc62ec88c4b75084cc604592dbfe6756248530d0cc84b823d6c2740d68ff1ad916d799c3bb15b5909bb43e90aa4750eb9a6e4d5dd8148051398c7526e0459055d0a6a158c5c479228f9117d671f3888700f0e137f6c1c65078373f43adb78682eab5af9ac1bef8579b6abb02b3d6fcb3ceb4a878896583e74984a3fbf52c501f6f0210c5be17284aace9bbe61e96f1a2ffce16e0b50788254a60d41fa728cb14fe0b4944589e0f518721d08071e0488724eec7241c451632c0686371bd15251a5be8eff86cca5857242210efa108c08e592dc1a4c8bdf3458913886a143981eac750092abaf5e5e8a3ad579fde9f4b88b22050a001283d3c4780f54bc64d7654a9dd7cdfcb56bc8885a444fb5b7c5a75b6e5f29004b25a4855fc595a598c5bb1fb913660f8ea33ae52ec7128789eb6cd47c69d83acce6af739c3fbe0dc061a8fce48624fdfc16bc715cca08eab083c48aead4c54a526100e4ce2aabc51a91b79e4188bcafd3b22c4fa42080aeda3ab5317a8e246b2b0ece5edac32f1ae1a8dde82fb817cf5c6a4ae96e5ca3e9856e026cd34ce28568558a97de27f5f1ff3fd1f907b9a75746ba7ea55bbc0a71f6bb23d1a2f33bf20dcf6ba01fdf46e927773c105f4ee5254db89b23bf52a35e58e65c5d1edc03dba0d53a0daa4e0bfaaf2664bce565b94bad29b1c2018766f62ffd80c374a095ff0902c56ec31f32336c6dec2848bc99bf8dbc7c19ae0aae714d776565ed93d5cd09caf9d45ba37a286c0678d0084184e68b26b7610d32fa445a54e2e4f55521137a06d7565499fdb861644602e1eae49d3a8e3404d6c4f61e8271de42b834dac19c057179d6cb2f354076bde179ffd5ee6af85309886f7904223c83814a4376e508f8e2b9e972c8b244f3216ba75885b6a0f1f58d5646ff8d35290c67f7290ddbc6b6f50ee014c3b4e85d3037253e1ba8629199aba35d6bddbd35ab815d80aa76b218fa1204738c958bf34defff2baec40c88280b9e19167ce08608049ffe1d4ca20ee848974708e9c3c9a0f0cc6e62d38a0d5dff02f1f1c387c47ada5a0957d09bdbe69565752e42c6c59ed4cea42afd5f9ad464b142ea1ba4b1a66f04aa6797cc86ad41f88de69d4edfe319ca11a0d315ef2590ed1370fce315276e3c60d1dddf4abb9663d5b0706e323f404c53aa85f0aa5cb098bcfb676247d61d5315df6525c75dcd4ba5a16c0ce5a6444b8f5d98682d788de16c468d62d2e2f3d9ab16009e088ae20775d735360edd96e990ebdeec6eae0ac736c2b039551f5661bfa23e0061179b7062b8fcd99c246665f60abf1708ae96e9fe49487f4b808dcfdb591dae19d6e60f5d815cf98d3e511837999a3284713a5fe7f91be8f3075f96af840c9730b63cbdc1eed23dc0173075c328b115c19bfb506e36e28f3827e153c44984f5941433b20b245d758f87392e34bc4a30ed64a3309af3008ccb216314d1281154b2a7cf9ba0c9b6a7145b21177d636d4e1acb456fa1aa87720e138c9869d85c58ef43949049fa218fa78048fa084ce903b42163b20ac6797576818c9b3956136bd76065e8457ad9b372becccafdca06a0e47aa8d9d7f43114bdf54dad7955b6ce561662ff15b8ffeefd2aca9dca8e4a59a9fe5da4e7e1eee37fe60ef881000bf680874e8831e925404d38a9dc788d73620d56b7c3b92aeb57be24f3cb883c6915e054fa114f8207d1959638b752b48a18998efd0e565d2630cea0cd484d5ca5969e5f9645fb9809d9b474c16f343e16cbda2376b5b5912e551d903ceeddb68f545edbedea1bde51f2fe864fc871d55bdf332f34599f0f244028a565fa439885522c57affa905e5a237fb4cc1ed2a3929f4530b5d3e92e9db0c587f27c32c0a79caa6e97533fe15eb17337da13836558f2ebb49078dec77fff1adc7521dc48af86480aa10bc09f218197824ce9a46185e269d955b6cf367d4c9825bcb08b957b94f47897829aa2bd9ce86071478e4ff2a8f504d32dc0a13b90dfca66a8d52a61f8760f3edb9b6d25faff942e7d0c4b0b069ed946fac7088b4a2311c25f19e64c5a793a431de90f372b7a985ab6450244b007ecf3b6888cd9fa679e7c32f4482e5cf84ad671033c0c32be41bc193be2fcbf8cbed1762a8c31f5c5dcde830b32c3309ef5099833677ecb217e73e9f292520121229c36b3bf8f7d0102f44cde4dd47e294e4f71418c991480b3f015c6a18f4a55cf4ee85580644e22f44fc8a56fb82716ab43f256cd5b54f02342974fabbd4f5ada8ed0a13a27a3b96717b0bb7a9ceef3ff5c884106f4d89f69c93ee7c9617136235098d20796ee0a8d12785537c2549df8ba3c77e2a5dee93c190445a59b6ad414397511f0f5661d5aa1cd50eaee038a522b213a4a5ff7163d5dec567fff3bfb2f701e006a5e86be86795727e5b102bcf709d7f67768ac995464ad6f03107bacd8b05313241f4be5ee0bfa2c8afa1626833fedf046105031164f729c536876e363c209ce277dea22405a0e880d05bb2ded6c403c235d8e6f2e985819d2a2cc7c700a2bb3c3d7acee37f6c31d4232bef86374078eb00b19d6381bf5323aa18fb162fded26ccbcb3316c0950f169236f35dd479133bc1cc337196c8daa2e818890e5d644ebcce63d32c3c185a2c048209a9a186664ac9ba71741f6da95b8cdc24c43840f8339729b81858a36524f24622230d3c7b4d2e0f3d3c36551a6840b3cef3532299a6937fe0fbf19150564a5088c02bd73201b4f49e6b96ac25944cba5c79950096a415710b045075f8877e22f695fc7d9cfa996ceb7653b333c9cc9a5939901f0dd8dc55e25f8597ac5d58f85dc247b6c45a736005e0243b24345eeb4c538c0002708e745bb197caa8365f7e608e9f1e46b4f0d480046c18300dee876984e82d1e4589db4a318d5a694c03f748e96272abcdc92652964c23ef97695cd680a8ecfc8ffb378b1dcb347a3fb7e166e73fa8a65e8b64e5d1cc3029a6d88580100ae5cc65658e66594069ce4c58d91310d043321f84c8a94c091ac29ea4dbca1a13d7248214c4dbceb572187b989dffc9d15083ec7776c68841fb6b9212c971d8711e71d8bb47e83e14f3bc547f9be5e8a978187d932e79f7f91e6eb3d237cecc9d840812f317d88f023d5a5e9dbfe128d9f78011954f3cb61d739fb18fe9912d638d1707f911155c1f172166ee379be6423cd4e6895c32576f1f4e90fb2bd12863dbf1bf18b5dcb9784cd477ec7d6f03218c270883fece6a0390d13587c97ddcf44880018a2c768d9d9078ecba6a1aaaae850de4d8299942a31fc21534a45b7614dd102de236979724b13c087e35b58ae9259e6dde3f3a506cccf75be054ccc31a0db725f62aa42a56f65d81d481175d89f0b2f500f6ba01c1d8d720cb7d29552e61dc93edb19ad40f502206b06097e40b42225961d81284e70b8d654161c0e77624af598656c3ae9fed4daa007346402e350f0d292f0b9da59e6e00a60832d9780c71d3f8526afbef7cf4945f0509ffc620f1c3973e1e2f15ac7868ceea8a630605ab915dfafc26a345913201121327da27e9392f2b751522957008aa405e737cde162d3dd34b628ee9f5fba07943a2a386d26b2f3ab7cdffd3a0773b672ca11c9b070a722572f58c4b80007c9860d63f867e25b33ec29aef0889984527e30b2bdb55d5a7247594bf61c3bcc73a3a20c0d37653ad9422ac282baf63a59979cc493690f800a271c1498810041133100f51d774a467e761e611bd04a4a930b751717129751198352209e0c595e5604855b573226acb1872f8aee395bf7e8c437978d8bc387f00b032866ff5773a3311344efac490ea97a15c700d501042c41a2cdc3a7ce0e4aa552fb7331b9d7bad4c38f63c6e7cd60eea63164831e9c3ac41ef0b3e06d41a030a29fa6d59309e11a703232a151c80da32af31d8ed94d61184dfd106213f2014c56767f56a9aa109f729c2b735c87bd4bd3e0375d68e6920f8b6507ceb9aa1217068ed3f9687f0d8238cfc56fa6a08f2bb85adfcb6f7de526e29a54c5206c706c406d1065b6fef860cb93a19ce3263f6fc1c628d983863beccda3699bcfc9537d132595f3a4e960cdfabca78fb4d04eaa6ef92ee415bb772b3d9434ecf73c1f77ad6db2b335f2e307182c8da228a92197a697ea494ce09c576791b20f70c8d90c93b05fcbeddc03cecf82cb146fd58750e71867cdf61cbf739f37909b82fa2334ed1f6ae18ee51ef8220e72bba5506d1b2207f2edb45c64bd1da98df5acf7e9ed2e61dd425bb97d96829dde1525ddc93d27a27f796b5db64c8d716ee9ee5c0c7ca2a853a247bfb5812f5695eada0e84cf1c7c5add8d79ba2c96d9069ec33b7c19d9fdef5eb5f1abb97ab62571fdf7bef755d97d5bea242a65fdf89445f451a2791861321ba0f5c07bb3e96b41ae1e576e3858b2123e1224b1726acfa955260be5d4d96efff75d88e027a5dfc50d82c6c14f463914d793635b2296b532c36b518be2b1d7626b52876c09646a1c3c69d5dedb02f2ce4ef82e08d81977836a550b8e78412cad261cbedea285d6d2a9f7aa7e31ed55980bfcd727079a0c8e2cb8ffa26916f0c43dee2dc32872d6dd8f28371f9e0c087b865d45487b4906734a2ee1b637c8fbe6190c51537923f4a9a37603fc675c5067834a2ee3aafebbade5e978e54767527138962f49ae09d8feb3e5de4252c8bd1f3efad677ae2189e0c33e44be4511423d6148423a842b6e1de0ff24a43fea28f8d1fa40692bfe8636346775783bf8b217fd783b8eb788c532de4cf757cc7559e3386ace3ae139d47aa81462abbefeeea2a5617eebd5c4b797543543fa4764c701d5a0450870c4fa0828a273ce1092b420021c769e4279b828a1f6415ee41ffe3a4c281401d0e1194c7b181fbd0ff38a1801ed4e1c4e0421d0e11ee41cfe5cff4555e7ecafb6736e81fa718fac7c9861806e15efdd0e7c9521fa46bceda7d60b5f427b28c0bcc15b20df76a1142243b16d9b1086114381a02a1b79fffc749e5e334a9a4742a10007d7e21409f3b1c22298f13e341dddda24fe98400e1d8f0a0eec749f4394f16d18bb28a0a0074ca67291a0029ffc99e1394975778e993ab9493931459f38f0cebcb96d4c2347d8a4c61e4042545aebcf4c91d28ea890d3a868e9125935aee14942fe54d7ea63cca9f6893ed868cdb8de8beb9973f4d1ee5b369a23fbab947d1967b1967706f69d54c38f9d7e3fede13ee24c616ee83805e893f813a22291fb34cf9930f6521a77cdcdc6329bfb9944ff9b80191f2289fa54c0f6ceee4e57603e53379a2bfda81cdf548f13843a2a4a49ce8cf6ef928fae3c0e6523a8f9e444931f9136dd2f1983ba593df119be33ebb9ad4113404847310222a3b5e52e95050640ef72a5fb947f99c1d2a2f55eac554547a26cbc9a7e4681c1f1109f736dc074ece09143d534bd172bbdce1c08cd31ff72829dd77ef75595beb47774aca7faea23f9437f9b82dc0874c49d1262a1d8f6b9f78dce2b6e19cfef25601418912a00f6c4134205912181238e7feb88eb01ea838b403737320b6d4ff9cc606624b7d1fb145e5533e53d1129415c8dcc7fdc91d4e050525a505a097e27623a593594a9497dd27da27efa3a2fc8b93b7ff9dbcc967275af2c8d5c9c94b28dce3f1d24957a54927572b0c932eba9e2d85234fa1b72fd2990ff2277b3e971e3985974ebebef449f9fad9090c53768453f9e73e732d458b7ea07809e40cee5528901ff4598502a1b76f3ff419f7f55de5259035e2e6fe44c72de9919d49ed44bbb8577dc0e86a10d314c359e4af5c19b904644b3cf07fac1f30a56223608835d92e3a8c1fc131a4c8e2ca3c418e48b062042b48b022c8a62f4366c779753cb0ffa4ccb229f28bff5cbcc99f7c8f4f05060f896473a1a7bfe2a579c2752a30b49ff3b58ef6207fa11e3c7cec1da1d7aa8f1aa8d044520a9f3464715d54fbf3795c3b64877860fb92a76fa2b37bf24b3a150ae0df1eff564f718300915087234f1ed85efa296e33fe728bc0f6f9e92644c9e70e479e4a1ea4e96982f43cc52db575b1bb93c55e9ffdd838f2243b1ae98a8c975e2421069bbe475f06ed61535a3b99ad5d19e201f9fe7485d21ff3624158eb534aa91176e3a95d57c879bbe1d787ff0b0c68c0eee81e11eeb9c5cfe30623ec06a27eed76d4c7bfa33ec59dca02e4c61ab8c0f763e34e6501f4f1d36e88c9e34ea5beef4fee6ad2c57016ff1ffbbf1e36a532368db129cd46d85db3aa5f2445aeeeb92be9dedbc9889826ef016d5d35d223772e2677688fecc1b2e7c5a5bf4806fbfe319e561b66bf49b258ca68912b360f3b22a1c86a6711264fbbed7f46d8cf08bb67e7dddd80b0dd8e6a5f03765b08e4bb8db0dbff26a07e7d236cdd80f0f7dfc16387cb22682e25137a6610a0c023a5742618994180420de29cc28e94eafc9df86a2ca5f4225984c9f7e61ca9952fed53ff1bec535aadfdeaed6b8adf360a0b85dd0147b68f217afedfbc623be885c907c91ffa202f3e087e177f7d1025f2e97e092bee0f673d78c8bba58bed9f92e3b369b943a137097544e6bbd040e61a724e4adc53e8b356229f623cd64ae4938b7fa181c824a7fc570731790cfa4babeee99a6825fe64f22e5ebc8b8fa183c4c062686c8b18e3ff426365882ffe2e34268618e36fa2b12fc4177fac312ec40c8938c33fd31990e8bd7c981ab63f8644d698668834865c3284de1f3be2050875aa7cc2ef8f8121d21872bd3fa6852480ea4f25ef8fb5bc00259d2a9feefb6739b246ed3470378f2bc91a72761232530243832c61ef8fad21d21882df1fa48764adba275c02fa4b679a309f94eed241e9be92fd613e3afb5a6d7f8c679ab01f8c67fbd7fa36b6f81c61cb3ff9b02af6891527aafd451f0efb71ec677bdc59c713d67f778956ddd3f557abf2e9dab66ddbfebab77ddc6410fa4adc13902b4992242722737bf9339c59686cce905fb5cc40476cb53072ac90e9d77716198ddc88ae11e05ebcb1257dee12d93b99cec5bd4c95e37f2edb8810ee7910f35efbf2b276a6be7c9ff139e7c7208470cf59f36db81041ccc838ffeabf6c27e3f2834f103e73107a6fce734efa3e339dea1aa30e1274f6278ab288129208ed16ee3dec082363e617a2186e2af918e3679bcab66173ce39370c5f3dd838cb7c22e6bce69cf3b7f944c45664919fe9490426f3c61ec64b980bc60f83e322af6eaeb837e7bb747d4190e51361a7e8d28b0425e1c6346e7ef92037e8b398c9ed4656352ddec73922bf8bc779f14710c11e460643df17fc9c5ee8922249509db22e619dae8e67604116724e3f3ca7171a0ba2059253d657eb74750d25e0c0e7d219905ba50c6ac01f90d7a425a12c6b22a7fc277f3aaa51efe4cf762376591520702c54de2913544599b054354df6062aef96279ee2e9b33936c706b1aaec4696bddd6e84de6e3732149caf8a1057674b2204e1093f279c234a58a7fc476c3f307222923913ae7226ee0cc4909570a44484c58ebe0d79b1828d31481d7fa084310a36c63b4e8478754085cfae8915b231b8f1fd17da4ff8ad6ab2e0f72de4efae329dfcd91c8b44347916779f6805b6898d3bbc55d24766b1f1df136426f277572bea93aab2aba8aa0459256b65565b8209402fb000f7b7e261b13f19da094765becafc12d6e96a9d5c3c8ecafc9cb305eb04b20210d5e90822d8abccbf3bd0395d497a4e5fdeab1fbeb0f12d831a36c61fd8f82f91484365e3bf50441af11261e3eb031d88b290a9e004ef2a61e3cf48e0aacb33af8f97aec77f7bee63a7b7c8c6778a8da3e5f4750f7f89d6dcc37fa9f02cb0b862e3cf46905d354d3fdc0e87b0e5992cf879e04b44169c00bcbd73556c11c1475546ee8aaa28e63e0b69790b7d68bb91bd1292b8e0b0d8516ebbf980b77777155bf0d72472fefb996f26d9ed706c7001145e8024e794bb3c59f0e38a062460ce299e80cc24494e44aee62a2fe9f000ff4fa5e30184773ca60f71ffa7e815f7f0672108377e944efeb8877da82f59ee61b923fe21f96f13193f277acc957ce831e0a6fcf889f052f6f87f98265177579305ff4917e785d1e1eeaef0672677354df2c21746f1d958c7ed9bf6a5dc04934b97908590cd58b8d0aa3fe537d13ec45df2318742a15028eba27b408ac85df4122d63cbf5f42f13db7fdec63f55eee1dfb48f403b0a36fe5b828cffde9b739cf82dcfc4188bb8db51121e31af0b072ca8df2eb6d09733a85d9133e8eb105be87f3e237af46f914ddf09b06969d3ef625ebee810690820b6d0a7bf226bc88011e91036a534b6d5b3aec416ba32ed8aa5eec970ffdac970af56efa84894b37d4fbb789bca708fbab8b73d192e5ecadbdadaf5e0b61175fb47564d4316577818e06aa74cdf23dd713d7df99152faf2b34a838db58b2db5ed629125fc60630d634b06fcd87fd121b58b3e7d5002aab5d65a029a62db3b279d59bbf7f1bd77be56ebfc8daf5a31108b543a859c295a6428b27385cf4fa80576198bc0c89958a42a41e7cb4c1f218975db4f2777b4aec487c722b1482cf29e33f111122c018b25298aa6ec49b1e5fa2bd670993560e48ceb63c900d1bb3e8b57eceb69544294de178bb0af271161bbc82194228d023c8cacd1839c71fdf53062b4625fdf847dfd77b263a4625fa088847d7dc44fb5d43becc3c496ebbfea43dcd7c35c6f6356aabfdce3ba375f5e6352ea362e29a9f4413eedc1bdeb938f3f935acbb877c94b24ba17eb6cb8773dee64dcbbfeea1edcbbf2fe644a792f21d3839b524ed7090b4da46c95b8ab56a91f37bd9a7b97cc0ff492b9287dea380473769ffd68a3ce9345ca997d7dac8f6f9c55ca581fd748b5fb22ef89bb786fbc01035e8cf744bb8fee799d5ee179dec4d807ce2a8a1f09ee29a1d813bbb489f1e9fd6cce059404f7de7b5dd7755d978c8c8c8c8c8cb7ddc85ae44ec9d03294be3b138086d2d7ce5cb41abb53285d7736d2509aeeec85c66aa8aba5b48e4769b96b74f89155a93442e9b8371dfa66b2c8bfd10838c919f239bd638bfc1c386ce2dd02d048faee6b672f9a8d8e2792b69b46c75336d248ba6ebab39246a3753c49cf6da381dc90a446033922e7a4e3533a3e83d148dab78dcd6732570697eced6b743ca5743cd16c948e0ede7befbdf7baaeebbaaee837faeee91a37d239f44f16f93a70d898349496242db749d37767329ad4d7ce6868291d4f363a9e68ec9ed1f1944d4deabab31a9ad4746704d066748e94067243121b0da424499235e49c72f84ea53e338036a373d0682045e4780c5e363006e251b2514fa3e36946c7938ca71996baefde9c61ba4f247ae9beff9beef3bc0bc73df923cd013943fea637105be4d768993359e4e7c0a1f349d5965f848c8c8c8c8c8c0c8d1e34277cc79bf0251c892dc4c085689299b5c5737bb28fc8c8b3bc9f19de160d439917191919991f755fdcc2f60f9170052b5841d29c73ce395f4ce69c73ce490a3948c348e30a34a4210d694843692ac5c0bcdccc39e7c418638cb1e69c8f7c7394933a6badb5d6d65a6badb58823472201340368b79559314a2be4116410a4143bbebc41341541ff933c486e4e5689747ec70333ebb68a28c5c0bcdcbae8229d08ef0de9a51403235feecd22d18fbaef375297493334ddd6e5c26dddd66dddd66d49532906bf74f8a6cbb22ccbb20cc3300cc330cc75a88ed4ad56abd56a65006df49f5c492172053bca2676fce4123b7e1b8826b93232338bc5caacd57ce9bedbc4f6bfe9bebc82ed42b63fd77d3f83edab1f759f84c26d4d16ff7b731689fe25aa03d130b3b2159995599995599965c218638c7196655996655c37eab60ed5913a7777771986a10d2de4443c12b910af10a3b063b462c71d4dd2de9c45a27faf82329cdb12db6b3cd77d99c68fba4f3480df3a19ca3caa6322b34a3130ff72637aff2a249a708dee0b8568741f0aca00ba4febfd5599ee6361d95fd54ca50ec77418a6c32f1dbee930d78d3a5447eadcdddd8d90fe9341fd3732cdfcc762a2f94f9b52a69ac7d164f3d1c169b2e93624228b7f0dbea950a6411175df963359500e92bacfabd8fe71cb892d37c81fde72401004417086200d6f2bb32a48a1903138effd320c6618cc3098fde772b71cecc3b61c6ccbc1b61c6ccbf95c2a786fce2211ae20feccba997533eb66d6cdac9b6febde9cafdbba6eebbaadd0dad08636b4a10ded7f2e149ca67b731689fe3d0f9cf7e62c12fd7bde74c9307c515d8c2d7614b7ad8bb1857e5c99f127adf6ba3fc8338ff2f159f1f4fcfff7f0ac4070aaa6cedcd15aebb93375a66ae66cf937a7750449d7751d9223ad3034c2fac101071c70f86119f1f1150f9e31e36bb483de33b3025de53abeb3b2b2b2e23baee3aa2ba77504490e39e490039223ad309446244bfea0361db8afd1f28765c4c767c5d3b3c30e3becd0c3b30241a9923a72c7f33c4fee481da9b239d334f3ad235f4442627914cb6f2c3ffa1a9dd2343ab6b6fc991a4e53cdfb7fd1c8177f2a0f3cf050a36d4c16f9293da3abcf34e998f91cff7938fe73b1799a477d9ca6d46f1fa7a9e6473afee6f0320e972d03f0a4b791d9525493ca1bd57df769749c2ca4ae829345c71f3402f784d2d906b0cfa64639503720e8fe3a7081a8fbc3b91e08bb3f0fd80d886b7f476c94ae9f5d7b41a4a780fee69e40c7dafe2301fd455604f4178d40407ff14810fa8bad07e84ff638407f72d500fd49240cd09f3cb200fd798f02f4e73c40e8cf573fe8cf593ee8cf8d24407f73e786fea60a01fa9bab03e86ff2cc9ead3f6fd9d09f1f3180fe1c4901f4e72a02e8cf757ad09fefd4d09f3442437f923500fdc91f19fd4995497f52a7a43fb913a33f0f467f2e2ffa9319e96feafcccd09f8302d09f6cb5e84ff2c8d05f44c283fea24f002af8d99cedefe91df4677d3e1baee8ef02b73f0efabbc2eddfe9efe66c7fadbf0b7ed767fbdfa03f00e81ed706dd23c7d03dae4a8aa3e8ef45b3c7e574ab077e31c31ea1fd51b007cafe68d84366dda307de1f067be4fd6170eafc6c09dae803f2b8d93b423e5dc4e1473e62f4431e717f50a0da12ec6459c8891c3f8b3ae4849f218b301974049fe2bbb6815e6edbd6815aeeb9fd4c155bdcb70d0402814073e704e8b857b77f8fbabf4c55a39c2039a9b6e904d0cfaab6e91b3d7cfbf7f0baf9203b1e12f4a0196edbf673bbb1cd50ca4c04918606f25e22d650451aa01138a8e5a5edfd415a78497bd015db3f7e202bb6df0c05dbdf76996a7b065e5ff25fb63af90fc4da9e35919de08897309f398658c28610bd2cebd99ef16c87e15815dbff038546882cfe1fe8e7cac90182939373ba2e1d958f11e5a5be563fd384f14c2b626906246eb4a148302f371a37da5024b9cdba91482894dc64943b9483104ff4fc7da4983798339842e2cf26a2c94fb1c7c7080882200882330441100441f0a6d5b231302fdb8dc6494922ddac56abd56a25491a37923706e6e5466adc689321e52c12bd1c6d3429120e9b2d4aa773ce39e79c736e73ce39e79c734e495d8e364ebb79f116aa456ab55ade6a4d156c7f29dddddd5d92a494524a295dae340d14f2440c509c36c349da469c765384a3240882202863605e6eb412891b6da839e79c73ca6d44ba117202451a715a119244bad1b8d1e6f2528a8121bd68dc689331302f379db671a3148db4c10182429e8801088220086af5c298565282611886615818628c695b49c804c3300cc3303005d2e488d3569364ed755dd7755d2539a4f5de7befbd1886611886618c31c6d8abbbbbbb638c31c6f8de7befbd160441109473ce3927c6300cc330ec92d98eda6ea03e939b24bdf4b851f308b1e4ade8f947f702152e3e5ecff3802b109caa89846f21062e78142effb9beca3ca29ef7f18c4c96cb11aff561a4f486d47d33b63f95eeeefe72a3712352783b29a5cc2c498a8179b9d1b8d1862a428a503a82323203a0d1438d06853c110310044150ee19ce2b4c2ccc2c6866c5118220c50d9cf2200949611886d1258ca130f485de508d9648dc6843959cc2d0177a4335ca8d3614496e578b99118ad36e5e642825290cc3306442524a29955b0ccc4b28512e5a0ccccb8db671a3148db4c111bed0e81c9f7ad95eb6ed254593c26153c369341fa4e66faed7c5686c6c5235db96c218638cf19c73ce39e79c734e1c3697765d2cdb4a32c618638ce79c734e1dece004bd0a7a5dd7755d17c618638c413aefbdf7de8b31c6185fd7755dd765adb5d6da5a6badb5d619864c608c31c618c418638cb10dc3300cc3ed0649931be9493a6ec93a4210a4f01bf80c767c1702d270c6c0bc4894c6914839a6fbb2e8a53b08822028471b0a47dc21276428af20b120b3408d48fa6e12bdb9991aea0685bac1296b03874d0d28e489510d08e2006d4010ac9137db88d326e82c8d1b6d37dd37ab9038144241d15a6e9c0d14380d94201803c2802f735621b9d186d262605e6e34ae1b755b87ea48ddc68d640d8ad32a08ce692f8c69a092dbd29973ce39e7a47e5dd7755d97ecc2300cc33004411004410a822008de7befbdf7de7befbd9534e2b41b07a374f0e635ee47dddc3a296fce22d1cb1b8deb6ece22d1bf1c6da8994fe148cdc9fd8cd6f1299de369f4cc673576cf584dcaaacde8219ed3716dbdb08b81e614125b507ace891a5d2d6608d29044b140b3a0a05750e3c02a4872e3de9f9485a86dc4954c541e69c5f08745c169da9088a6aed4ad4008ad426edc0815d34998ee7379e96e3a5237848f1d4ebb99f920a99fa11acad25c58a349a530d6b499ebbaaeebbaaad56c52d7c5349a194cd36866b6cc62dd569d34a495096badb5d65ed7755dd765adb5d65a566645126ad36e6618e50c2765026f79c3300c4349637bfffa84ac817aff3aea2ad749cd71929392c320c52b4a29a594a23213f215df73b70b570b2f8d3ef541681e884c729af94cfa768a35461f1f01b184fa9a286fce22d1839b7e79d95eb6ed651bc2c706620bcaa666881d4ebbf12eaa86da999a9a78a2a91563944d0da594d26b433333536f763110c618639c63adb5d6da596badb5567054696c1f9f03b106eae3e3c412e971fc27756a7ec6e63f99f35f0cf1cd59247ad66489a192c6d4ccaad5e8788ad176a7aabd5acc85d1e9b2469b5d18a8827bd355486cf147e9fa849ce14faa1942dbe894468d36d23b8e9f79e9b42e2695a1f4cdd3681d3fa3737ca643c7538e2d47871ee26f700cf139a88643c7d38db63b758369347a88470df199957fb04aa75b19b30b03d9d031da4843d8d4a4b69c0d8948437bff2d0959837b1f7d9f63e3a4a726b55b8e4d0e6eb4e1a849d55a6badd53714ea7714422c5281ffe24f8e9ff92f863aae09639c6110a5eff6a9e5b0a11aaa6a281a6d811c16f8ecc21a8db6c08c057ecb99a6985d0c74f3180b893462de1f3f216bc0bc3f8e41ea83cc3ccd109f4bdd3e59a0025a87b6d1594ac7d36ba48f8f230dee47ff613b469a0f62f333ff793bd6a4f08a4563e1410b39d1a2cdd02a38d25eb4abd1e81c9fcde49058a6a536d0a59166b2463231e1461b0efd9e08a5a5b4cd96b3a9b40d54926d6c3e3379f122470ccccb10fa6dc416f9365a8fb45692cde87822e91b32d16a5cbcb0da0c2712c59dd2f184a3d65a6badd9850b4ec4a1a8a0d860834d0d87a2cdd0a0c400803613e306adcdd4d0a46ea8a9f90c071c523a9e70e878b2a98971c30ddd4a97c30e39b0b0608c31c6f8de7befbdd7755dd775596badb5b6cb21072f001e0fa91a1e665c33300cc3300cc318638cf1bd37a1cda82450f56b562a3423000000001000f3160000200c06040322e168a429722c0d14800a577c645e5038104a07e23047511943c83042c00000101100820ca08d0096f691b2912ddb73672c3dd5b62056a5b4bb3eafd4ce7a2cfbe3e435decc63755dc9779f43dd979d64fec4867fc09d47b26cb968e97e807d55bad0d96ed56093387bd46b31d9fdd54bcce14822efd2740f96da8da14f74e8732e788ff406db095862ec9dacfccd71b2d28d1c5532ce514179d00d7afc01374515ba3d758fb2b26145a9d5d5ea3b78d2d340f7a3d37c0780e0efde83431ae8689640a5baf5e09d5ffb1e0afc512a8601a792d585d53ffb3ff95126d1112ecafe88d87cb42e2ce566e58e7748a8c34fee9ce5ab15333c17085a7184cb4bc468d81f8b83969b859afd407190c6ffeb39d378bda5aeebe515b97e5970eb119cb5decb20cd0a1158ee486cae374cf528e178e11f5410b4062bceada01f0921b818e5c5f1548304cf1363eb37ee82415c140cfe06bea3aa4fccc561580e902e5c3f6301179699118d426a1e3fb5328d8e32c9dd70db2adc93a78448ee472ddd407c353f1122b00481909102d1fe6b04d28c7983f477cfb2df8e9f1912e7a24a6f3801e25e506ebdf4af67fca08575ee68ca615cc7d908c8183ee101dfe30c700ab38743875974e39b5ac466462b42c17785bf734c04c470fd7f224627798625caef1250dd14cbb0502b94f25a30864b495ffa62713eedefa1173892fc2477a177046aa0bf85cfe0c2d06668390ea95d3a61ef1b1a9acb01c6610f3539305879079dc9abaea2c061fa1666815af9089372202d4502d228f798a9611bbeb5c6248446539b9574957f2413df6f1caa64f1659cf1e51cdfa8365228b7e288f761ed900f1f66d2407e6348f3e2e3d7971e91e66ef3af6779de0c62e031171969d04eb6178660e09c375df3a3c1c2d1a514fb8b397767fd83a2b8c72210fb87fc73fac760301e44c19e04a8153bda32395cd8cb1e8af77e0604614070965cc15a8f4aef33bd9e336cd8c5197eabc6a00ef371f5a46e9875f92c035f2686c9cd7c1cabef1a25756dfa6541b52b454346acbdc7a2b72b771dd44224d75378a1da363b8db7ee15e308b20865e579b3102911576d62a05df62ffecc218fbae76abf0a107cbaedf25a0c19b2b66e6d61600bdbc3165ac7a14369ef64d8e3f33b22a0b2b542af83fa44792f5844397f28f90016663ee44aa00fb2e3f4616d737da8abf6674f21346d88cd4e1162bf2e9818b107729d4a732fb2c28396020b7cc52b0ec600f1c078b4df9c8438ef4c391a5ed710b64ea8aadfa05507da576f04e2870d69e000ca4160ff554ce734809c84cc839401086b8e816b2a9fa0aef044fe19940e19057825086e3246d92da17c8583602ba94878c5de2429d9b644739b1c75fb09e11b29fa010f4c523e6771605598f53a8642fa2362969d71c34099721878038881642331b08d2a06baffc54064ae086f4015922d5bd80fbc32a702b513b54fe6782034785b462cbc5796582396eeb33404cca957d34bc38ee616351268531d184735fb42ca5b6e87273b8827cf689d486fdfc1fb1c6c0e249e3b4068ea210ebd6bfc5ec89a3b006f4f115421b0572a9e3559efa7c6d1eb5db8e39bc45b6346e5abbc8bda3ca0103fe1b67ced94e5613d23f72a0985afa4b0dea4e7dbdded97200d49970dc74050b17eb3b41208d89821db1386edde8f5a678903933aeeac8b9dd4ea2ff64a540403c606bd70a2166a8488c7d15ace1b8da6e67ef49e0fa7314ebf19ee8dbdfc6309d9f0a8f7ef98927bcbe8072883a89fbd3ba0a2c6e249fa44815fbcc1e215639b91017f9a2a532c422e3ad29c1aeb15a8d6b93daa1dfe9d6a98c3aa5a924279ee04a129c3d8f6d3f8a7ad1a9fd90eef926480cd2c96afa493308ea9f5b0bde35dc0bfd09c93f479496f32fcf9f8512dd2c2ca3cd2bc20f47182e7980ff9a894ec5d8e294c1ad6b0ae7689c64ea540245de5124309c1caf82784339b39a963c6dff0d2e19fd01024851d6a77de0d054af93eb4b566407ec16a442e98a5cf82774fe76ac279bada46e695d6020b259678078105e3b34cd38cca9decdc15752b2b599c3fec871261d2144317aa40da8ade3702d3170830ab09937742f3fd7a23825f9606d6fa54b54415fc2440d16d072c10d0e78fc25be2147ffcacd2808d9d4b1837451f82cf5e5b5e33022d77874d93060a35690854934ca635d98d5e13761f3629142d4eecdc2ce2dca2458277b52876922d8aaabeb85b84623dd48fa1694dc7551a51da7ef005da1baa08fb6e9c826ce6d93a720ab64bf474c0d7c7ce71b98d24f8034712fb3118a1592c1da218bdfa7a18a69605f4001fa4540f28bc48bd0d3b883ed2de62eec0054113055ddd930f759cd9361cb20c1a53d875a5827e37c51acc7e7b435ede88ae71330f35c03a7b9e64e0683670243980f87ec7b825810f54f31d98cf170371bf39663117326f7802304080006a1336ba7040d138a56e574b7ab0a8837f7180bbff6c0df74cfab81c7b225c7c74034f0ace3de88373cb32e1e47b2f9ca4aa0d27539d327a645446f3ce982f5306f302e5cfab27bc174591167e98fd2d0e44048e1fffe241ca7861bf0b1e2688274b60f560c1c78220f80342810f59b65e002a2d64bd0d38ea556502a79a026362bdfc104d81ffbdc4ed7a3bd9d9d0539cba6b15b2dfc0495ddad3d444c21e1661e07aac92a2d2bf3f4fbcb3c8d08693f29c5e9b1371c9e57eb65546df256492b08b275377ad5e2bc90ab0a4bda9a79e7672dbff2c1d70b0563a89363aabe29a51b18860f7d3451e1e40637bbfed0e29948bdd8291e23b0aa495cb2dd9108e93e84ed85d6e87aa3dfc27d29bfd23c737814c6ddd71390c3d1d7bf8204dd99777efd5549af983fbe0b2e1a401d39169d139bb11b8ea7569694e31a11281308f623fb83396a005d8bc4b5c13088cefc1b63a996e87c3974c0208b9f7737f55039bf0cecd76ffbd0410cccbe75360b782f8d3d9ade8f9831efa51541bd7f9dc06c0089bff9d56f12fe76f7f8fe5f80b78d9ef369bd603f4bf0965a6374952bb89df2f375de3b709c4459bb8bc781bfbc5ff94c7ce7ef3d36db43dc113e27526dbe601d909ef9586172c69b0f9a3a50f7ed3186438dd5d4da19467ce52688c7dc7134aec9cf4041bb699a7d762e303e90ccfd0c5777af106c50c5f3e8864c0fafd65510ada6f45975ff6b10727c031aba428d962570aa57e1ca2a32b77a82315124afe34c991b2c929e85cd36afe4200fe48e7449df1d6fcd9c1f1fc22118d222a4890ff5d8b1e1351766cc2eb2d70b36f27864339754317e84ccfb2fb2145daa5f488b46d99281565275aae06b5c641f05c803e519c0ccd49329de2a337dc85ec263a4a71a7e3361fdb93d6e075ddac013decb10657148135a0dcd3d5e0dff3c3d3ab4b95fd0a9a0c670fa4147bdb6b6859d2a674a4c27d3ab108469a6cd1a0266d447edd678c50e4c97ee7156b52e8bb264ba0ebfb65939db06c327f1734b46ce8e59402371994feb71aac0b6e1602ee50f665edc83660f616bbe45542625e58f43797767140c9c85e4215464ccb6ba063ca8d7a0c808e2e58017761eb6232d1d70043942cfb37552bbb67c6b736ff1a075c7762f2db8ea810d09a90609985bca53f7320fff440e22b9df1129d8d1b8874e9997f2b049cedc7ff03de5e9cdc5d22f0ddb586e19dbb3cde054ee5ddac78decdae03488c97e69810c04bb30b23574c33b497c2acd5bd5027e528d3a449512a05c72c889b09f0a79de88c3a272b6df3d2a6d7ffbd5e531dcea402e9ce01cea7f4dbb6a050fa3394aadc3c15122d63ee032072003bdc57093231081591d9d00dc0ce4f1a49e9ed41835caef9be5fd27c417ede397b6036ed3cd0e6b00eef8ca291a343a9e86c53346b9a04726324acb5333c0d555381901d7081129bee6717527cda7d9c276646a04c72ecf47002dc8a4994ee2f9808075dafc9f752c2bc3f758f916ea78c58bc3fccc64a8ca0709cbda487364b191ba9ccef4cb0042330326aee065b978e5b9e2470e88d75dd372bf5f27f163ad503eddd27685ef05b67811634c32c8996baf4c1bd7c0821cdc20535482214a317f3d6132e46613529925e5c5a8dd028f47403eea2c54c26566a3ec7f9d57e9050065fcc9691944acc5e782a550e8d0ba4ff633f565c5a1b0d19296a5c9625212ac2c9fddeaa918b68332e428a1f3ce2c7ed1f39d559aef76fcdbbe54a415be2a33b812dac15ee61c072a42dd819b01872e24c181f5bed598d37ef59e87b8d498c3341ae8f61c7bb9a629c00deed0ace207112d92f2005fa8c7de3848d52987cd8b92b8857b6633dfef8b75aca2c71e83da34aee0e484528bbabd9463a5ed500e576895b779af7ef4a042811435df8f203635c95a07f79d7c7c19c9f52c1c20a2e40931c3e2b360dca04e27c6712425fd586f40dbf5f1cde9dff487b89d9c701548d1475de483ed7f0737ab88ddac47349397a5bfe4cc79e09cd1851842aeb74f1f1b55749fba2a35861043dd35b977db0df3d6813f02751ef26e935a2a4ebda3a9e40a0344fe9366d780742a81465b0ccb6047758c00361d20e93e24e5a1de5ec2ad83935394f1c72c2b40d1c612eed77de4bc61fad64a9e0d952e7b233bbe511d1c80ae3b3a6f4dfe9cf6d1f550077078fe407cc4df7c9ce6e7d962ac688cc71dc74c8e70d70794619c4a3d342724980c5115af082bc038b69efd8d3ee3bb8de7f07b96ae0c15ca70974088d6d5f54bcb986597eef73b52f7e0f7a13147d49ef415b50c4d33d980c23b48e751c1a311410ac63c827b914dcbb22251d042fb7f790a09c87719dc71f87773c2b28311014b2590d9ec4d177ec6cc2675b42f57aeb9cafc75d91472cb24e50763651c24c693da8da89dd20bea74e70754d442a60f0b1f21a12fb7de0d0adf718fa00785a5fcedaf260e7080a75431ff306ab6b848c7268ec5a00cb8a9244cdba2e98592bcc98b547e865fdc5d99ece2ab8ae87e15a06180e377ee10c1a2f5ca2d285dfa609f30c80c95dce9ed785b658258229914b689e97af01bf644c0bf39299405c318b7e66117288b74cd5f50f12b82ef458ab44f165ed1419acb9079fe97c33f934cd5a5ce7f905fb517fc13b0930d87906d87c9f4d4b5f2b4d5cad6b5dc00d8f5a6a1d033c5aff8ce3ac13a3d8b22debeffb97383dc26f36011982f41d185cef2643455864a6302561989cc5046484640edf0a330d1c27c409739e72cf575be70a8101898068c8f92ab3d55bd2f5a053543fcb0a979fcc432437d454fba2c69eb8811db5d7177b1087fa0f162e06ab7a9f53a277e75ed27722b0585b60a908d7fb02cf25bc18155bb42e0dab60e0e1cf7805c02dfe20faa4c437aa0ffb1d321b3fdcb03ed5ef9245edb11d0bbf3bed905612705a013cdee82dc5bee01582527f9c387c04652fe4284f1cb8faf2c95917d06d7108f6d5aeb8458b874579da9def1dbd73097ceabc4f6c82dc9d08973f757163aa36860e52f244e3cc4b91cd18480315dda811f154816ea5873ce17c939ea1bd4538a80642a611448fd6f549cb33d3f891509e2e051dc728e82bb5a40b0918a59e8d42c7654e52186fba09acf033a799c399dbfdb1f326ee353164ed487e45b3dcc04aafd210180ebcc3ee09d44eb5f654dc4072ba5c8a219f1e6d644bec8da37a3483d78030448286b90d0431adc41fbbc621c4de68fcef006ad0acd4dedde30c51e324f0bcf79562ed5ded6bbdfd57a5f782ad18709502c24711647ae3db7ca3ce0b0a1b38f85ac332ba432a1ea80648214b826fa0e7031e383973b89209042c74650094787806c76b24ebba001cf4e8c1052418f08ca9ea11c63a8cb82cb53ded91afd22c4579d97581ef72a7d759f339e2d860b20ef4d6a6338e8b85853cc7b3fcea3302620df011def6c0f606ae8541a9fc424d456dee0638b7779a6695dff8efc1c31a70f916c3ddd0b09f3b115978c58f850a6e2c8d90c5524b1178bdb912c7e6b0d0b86502cb53bed0d9641e69e5c44d91c952fa4ffcc85e25a5b82a0e339ba879e2393c7d6295d9958162693dd8940872266dadc4b921bf5d140f0a49d3b91a0378b4e711bdfe5cbb07160418b4dc686eeea6b4d4db3a135b0e07f8a6bc643d8bcb6e4d3f14eb893d14b9447728a0ffe750dc0fa414dd019bafdbe40fc0011299561646bb1d4d5d40f15c66dc7c12f040010e7493137ad920ada694ba5ea3b72f6d628e100978fb1d365d72bb43acd7625724a1cd6188f7e73f0ba2249921259c608649c09e0817dfec16809354c78509b160cd6c12f957ff987d2d0e88c801a9dc07564c4732ed8197326c11e87cd326b98e9875efba83be24f9630d32ec0886368e270a21ca37e0d571c37107119277fd0724cb1d4b88dadfe24a417e77128c83285e54431b2c0a780a88296e13bf770db796fab59e3c72f6a0ef63d275835fbe1f3b6a250b314b0341a1e0ab1359e5dc73d6304c7e0664199abbf8992a75c1d7f60fce8b32e1a2fd856f0f6cb8247bf9b88ff809d0b25e886165bca31ffe7c7db32617aafc44a26bd6ef70d61e000ae1d93f9b33189fcc68a27c49fd2ae4d429f5aab3bea0a501fdd31e386af1a4d76a280ca2edf12c4753a99e354457dfdf99d5d32f67cdc7468330e8172255ee3621894aae8c7db7b8b5817f03c869ce3e63470a867e00bc76bed265b6f18ece957b88078eeb730d441a1d34e932445aadcddaa99c225b3d2853fb6b46d44a208fec8f0cd216a11f62416a89430e1607609e3818aeb8144f0af2ae265f7a1ba9909a6f7f4946d648b252c745f592ea40f83987aa48f7cf43b3d0c0ffe358d77a74957b49e41865b8d7bbcfb45ca396833e04dff62cb440a46ad7391c8ddd469bf326af37ab50aafc4b961ef4eecbb69175f5be396a5a2645ae600bf357edf273bb55f0e07ff6b5faac49ee0bbace6815c86050fd644c4fcd60df295aa33a0d472ba7f55ae054e6a871ee4066bd31616d5355acf498c78b05f5e8d9c08b0fd9b1298a7e6c0eec6666fb1d5033b963239c53a6c6e376acae507309597d4ad94e448fb3c0e6e67ae52430963c8027053ddd886caab2917a4d178ad40c0f295d95924e3b06dd4a1ec1c8e250dec1f772bf15cea60e20a88621126672787206c628e43bce50710f925b07f719762a3fe30ef633d80d7f4639facf30ff001ac40c31cc0853fcdab558ac20a2410c0918e8603349422ecfd9eb56a0109e7c15383d38c619abd004a5ac4b044750e0b34099baeb30e8f9302f88f8d578520b2ca6f7c21a0832f300310e45e46d6a7afa81fa104b71777dc03e306c1b60330c41a0268f8cc541800ca6b70958721961c2c844ec2a9ddb5cf454323e744409bf7431eb2ea0ee7ceee37997bcb2c617a3bd2c082f48fb990a0cca4d16870ad86a92d87e5fbb4e6b3681fdab40469346a246a65da300cea17f5a9122a45fd3dcfb8f9f720610b64eff68b91027fe59816c9c1c4fe8f495b43ae0b17ea7c34a1b1299922f5b66059ef0c7a84bdb386f61180bd0b1a0cbf031a5046953b1f8ff15237c1e89a8eb2bc41734a17440e0133ee7e259f0bd139e29070f3d18c8b0ad43ef054872c34837de2df76952c8cd7699f02fc45db0de40c33173b544fbef6e1f8083d0809982f95e2740cba9f6d37a0ef5b3662fe73ad263f3959a26f22b11b4b0a496c6127396251e7d9640212d41d02e88d74c91604cc18d3330a9490052763b7b6d2c432ae6ca9527d510dbef2625cc15090225e2598abda8e84d4ed459ae0c971dd5568a712e3082880c66816faff85e913df7d167358dc3f45a97b2672df47ff8cda1876827c968b9fc8db8a3a0c40b147da73668c18fbbb67a482c412cb213969c808e0cf5474bd2f884f401133eef687ce64fa0294f6df4717528152f4b7fc8fda9cb5d7a06e9e955cf16b93b25b275ecce36b23b815f2db87416d6ee3462f29483a85b3c9d0f47b3bb7a6be96e29d765b73ec96b799d5325a971ba12f80ebd8bd5f759dc2d195db98f6808c862b7de356291ae33bfb41232fb11ccac1638812c507a1e38298f181850b8144dbc14a4f4ca0452305a7a876c0289fb214b45709bbb1a8b42b64c6984c1f2a1a1fd116e2059b397785b4d54f693b6c329fbd4a460c22fadd912e5703ec4b36429c215d46ff0d967e2ffdbc598ed618bc32b5f5619e3f69b06654f694f02df18b9c5ce93f67f39cedc238be30faf4bd5efe2cdd6a6535b920fbc6de4cdf6c21faeb54e02286bd4dc11f1edc3a40f02667d67797603e60bd8e2479fb137fb3e09a8865a0694c3e01b9206a7fd104a01b20ea928ee4133b2bd1c0cc2b4dec130bc8c74660f7a03c0347da437818d36dceda24a027e0d572076133dd24046e134d69bb4e06cd038d4b186a5755a512d18026b26e0cf1078930502ea393cfa7bd08a03c3aa453fc47d511abd85518ff59ef7b18c3202e461f522f85ba6fad62080ffacf9c8b42eaae307cddd8bdf7b87bbe42157e92225699e3b80b6c1f7722dab310a808c317ab861c81f230976ccab3ab75b15de0b3b61e7ccf31ba645ab61f72c54e5ec3b9ea40be35a10407190e0ffea77d0f895000a776acfc5b5a1cc0ed9143e54e59f80e975b2ab5c4fe5b48ddf3d5e5cf633c59c6a38eb6d9c34b1cd819b110b99aa48932483f7eb8fdf402aefc584547b6caec49bc1a70f9f235adc06750f816b61d86275de9a3a6981b0ee4608431e33b8907a4dd5d281389314267ba2b322848bf7c404e4bd5c33a3dbb7a853a37a633c10a58976e2c4085858de6572c7391668a3e4a1d5523291e1dce9c06b630f7acc25dd82c3dfcfbe71e10c6c1c50191a1e8bd1234298e5bea9637118566be9063f5700eec11c2d1068851ec23a2dcc2a343645e1b51fbfe9519b111b15807c9c3bd3cf3e241b27c3fbed78d6535dc4b103ae822e3d37ee3e19c4ab2606019bf844b3046ab6c423332000d275f3ff34a71853fc8c8e955d2f05101c39ddce1176bdf6fe5b00a6f2ba1d994276f7755c76f82b8fe36fbb81ca16a524ccd3c22592d2e8f54cb04c8095366783e73220e42d8ef80d1a264b1715dca5024c0cb4b7da626c61c13c46b84c9772515744e96570ac14d6a684149d92c23a10ea31d617032563fe0cc330c2a6aae5150874f0305c739977abb3c97d8fbeacfe40654505f407b9616c45f9dff440f98821a2d47d1edd9f91353f51b2dd26292302d1487af19988ca7c54c6bafd5db73e1062a840ff09898aafaeeeeda0ca1f62aeec62094adf60d6ca94bdee750c113592aaeee94049b34e6055449a16c8855506e461903c15f25b9f24db222092afa8b1a44f050019acac8a4e50b2fb4166ad6a0bd988c63a8162032f1a70c20d7cd00aa536120c387e942c30cdc9f1f3095af060322bcc000530b4597c77245894c38ae61c3bf237e97170ddf284c90fa5e4d1433c7b524a1d0f57fa95116adfc82023ce9e18e819fff35b0162e2c2a91128e29dbf2f9bbac91d0af5a981f55f15b4c53fe09ec44727e4b5d0f79dee5340e60d79415a9468f9c060126f9c296317d238513a7348a7878ee87426400d6ef7edd2da988bba80c1b848dafcf435fc5e5f612735e575f93857e1e91c6ec6a2b549b8448c202f66e9e88d10e6c42a80e1cf2cc14013001fdf31e5f727d197ab100e6bff716b08df494c39cbdc9abe4af2bee9dd755959b16c4b45939baafc3234dda4ca0b03f06040f57fdc9ac24d5275116d85460934007ec5496721386ff181c9916db4901a6f21530a192161a64b885e12fe18426ac285880eb2d807c136b83d5e907140a1c3fce49871d4aec77001b7411028750e92fbe0fda266c892abffce3d8e028a1b7045ed6b1208045a71b57485c6397232e56c3aee46cf6cb741d40ed5455f2b6ab95fde112bdadd641bf703bdd8c68901c481b23e004121c394b99fc6bf004d30a81d1656f1b8c943bcdecff20baa9437597d61fd207820e23982a7594439c1bc8ed63747ec8ab80175a5b869f159b2adc49e657c7204b42cb14e62f673c4135ce3f0736a8764d269ecf0fefb86941049501f4126183e5ce1dacd65ea644d3be0c6f059b0f62849540b36e29a41b0474912a06bc8ad191fd7935ee6b6a15010705040409632315d2489284b2e73ccf81ccfd8097b9fd8f46c8be59dc679b314ceda9430725e320db297cd9d89f0a0a63588ecddf37d05d204497fc6937500aeed91da780e98480d2cf8bb393d84b6241ea27161a8fbe9e9bf2f631e11f24518f6c025b91357c4d99b3acee6f6b165bf610ad377e9557346a9274c85ff8afa011bf5ac83d4936ea96fdda6be74ad8a0086d5cfd9ab042370322e5ea1deebaa88eee71201adfa4abf01b54c2cbe7e01120ad9f2c1964ea8736904cd01dcce05e8df1819f4d8b820b038542ad0f8f20a3a019130af86e6038bbe4ff512a7e295eb276d9a07dbb783b826801c75ed75337c0a28424516a34aa503089215de26b9c37c3700a2ec472dc94773f5ce1fd5fb4f3034848d7f182ee15303860b27a3ceb06b872388234090dece17f8ff3e65bfdf5e70cd87eab1cae077e0a67bb3f242204119c55b38af649e97084e03eba4432750fecabd6801e6c7eb718df5d5a8e62fe504b979f4844488422753d00e6846f36791ad4e08750290f651c938a1b959115c3f1e8bf47219e6d777652bceceeecb13b64bc1148d3567c1ed545f276089081fb5582c9d60b9b34e19ca53d5fd8199395116ca41e971e6c80d48851ec885e9a53a9462813a6e71390692448b823450de5854c181405c319e07fa5c85d42028928bd4140890fb7577e4ff294f80ef92f6897504fcf89f582f7fabfc3278d18e432aef40e7d526bf6fc581cc68d8c72379aaa50f0358b28745da1e7cc0db7102a2b9e0f6b9e475a328cb1d1e473c052ed2d1d9b0498893937dd74906e64901fac90f0c4a60f60f6516be51e5b2bc256192528b0a1e7966edbae9e3a9f9508a5f163d9bc77bcf3c3247285168805d3b40f44901d1a80cb92de91ea79a4193d23406143f6c5c094e993fa145f33a184e162fba6cd09d94e7627e0be5a4e17e8ed3d24a440f738695c44a2d7a3a6cd329c6f8a6d1329a220c189dda066dda19b56b84737e4cff9d39083c5bcd3c03949e1198203cb4f44437694d2e396e5c85511450cfd4af93d979d8d457ecc082e19fab80f7991f0338c22a7d4afc2caf6a2d3b149fd68ac11dbb906b5f553630fb8a679619c8f587a9812ded1d02b8c10e1d1a270b51a6851b96c0a4a5074e12c7b7c732bfc04ad87e5a12a1d2d9f7d0be63fb672c1e2f030eef31cd3cc340f57e33dea39a9f6fc7e968f335917ef26af5762ece1213186744ee5afaeb60dd8d1850e5e247b50d7e9e12789f7adf2e6a6a80ac430dc4fe9d421e685d918a2d87037ce92cf49aff53478e0082f53340c1ef2d20007b0e0898de04023a3922e39c8b8d271bc7ba9f07220c6d94835fbd802b3d20e31d44f1461bf55064f99db0d6b551b5a2f4f244df3412934d95a0c9c6bcbf077601c841dddf231faffc52818ac1f1a18b8329a9e95b9f1a3a0a61885b58022e8958f4461bb62a62a491b3a564409132a69836760e13da06dbcd8c3c92e6946123085d19bc7dbebb11e180bc7898cda73d9834c55bfb7c6b65ad64d4771e3f1c0644bd032f33323220361b60774974abbc4cbbdcbb29728e49cae096a6939815668f24da32352c9e941c08419f3161b343d2d62ed716b7a4efe60aa0ff93d704000593de0a8c2f826dc27f5b2cbdfb8cf5373ef7d7318b213aa94af855365121a68c72f649687f55e2b027f8a48cdd5ea215c1c498ff7be80632b03b14634485bd005c6ebac2b343bd2be19818896fe8994522d3608bfeb336627525623f7a0fdc2758abeee83661b493f38b0778ebefe10c3a2abd411ae204c67d711f6e810b1bdb70a496c473fa463e3bcface37d65a178839e62fca09b143898c612f27089d5525ce2b81dfb4488f36a3d94b3abe0738ea0bb13d4c66623a66efe8439edc38d5898238bd4be4e534d1632d4f88a36e418e64b6523ccae2981e1dfdf4678b62278bde59b215470d6d918795e835174ec11dbfdeda0b0e1887d4733a418d7928e139e314e93ccbbc5ae56a0c608e83c61f687d877a3fc0da23a86d10046c2c89c982610bc6a3e5570d4afed3cd1392d86ccc788da2c147979b2a47ee4a41ac8a07319e104accad2f005e90701afb071ec2e6c744b334ee9f24e3a07e36c7bb079e116e0f38c3e48f47d205babd7d84ec52be86c407ed6f5a6240886a242fdf0307d5092c6c1a12fbaf84b85107500db10ad133f0ebe582332b9917b28eb1592b47a656c5932078b1d4e5b8a4eb29e3920f78d27a8dea00f40e07812a44c0a7fb640beb6dff1ca625de1d7a21d5c7ade83514dc4b808f7e13ec03d3a2c016129d718cfc6043453d0e55aaaa2ad8ecf2abce9ddc0d433abcdc84c7a567846a6d0338f33b2749ed59a9101f38cdd8c7c9b66b1fc0b6432c2ca64c361804f4080da662d6abbbf9df06c552451cac96980bc2200c0905fdc316b53c2cc0bbbd1b3dcf46754ee706b9359972a97b8931cdd4587c873d7ebd86c21a115b17029134be05bcc5f51982bf37789f99b0952426553d385e277c259f8bcd5459026a1c2e3a80e32cd93f572ac4cb11bedd376c3e3a39fece301484bbb9d5ac4e648304644edd55dc420b459da16fe2ec17e086e473974ec63f4b73b1b9f0b57768441c2a7492c8199d8de909cb233c743d98bc2fcace88c0910385ff2d4a40991f33ae67f8ea266d1d82a548fb475d3def0fc869206dbb6037c430f0ff301dc95807b43c9ce37f622411a5478420c7450a0ff39dc21f6f9824f8d20790ee21217cd936ffa3e7cef5c16f51157276ef3b1b319c672ce9d1d1f817122b5f7d87fb38eeda9f12b1b756dbe53066e0fc502d5ce5a0e8e391a80e91d7b21f7e36f686f9411b95465470b869a02e2211882e9ed7ef6d261abcd21917227a2e6ab17605a84129f143779f2c2a5fea561e1851f1a67880224591c396dd198b87ab06cf3618491c1289f697d3f6aa513bae427c2d5f19b8a25bb15798d42698750f66c4253b186ed066ec98d7601be29c561de35b4168251fa74b7220f40021cf27e27b15ffe5ef98632964895e8367052d3001600c3805cdc7fa33de673731d75f67a402e6956a6b308e6903022379893da0f7faf7c47ddc9117fd82db25102f2996c1285c2864079709883637c9d787b76a6ff4882da32944d408e13e7070da1c446d512283e7defda4832964b3082353068008de58ebf2e62a87a7d219e0a92d50150332365de7ec5295ad10d7d3a6077676d1c875e719db8aea59ac2599fa6eeedfdf897e1c3544624712429e237b4afa66aab2781354f08d47435e79e3a441281d4a05c7b4a591164eb90eecaec9fd6cd94b6661f0bdf69562c81b3415c47aceaab513687cbea1faf89d0ebe06bad1857d3d652005bfa98bc51a48035e16ede388e83c9957caaf1a2665f593b0e427eae446428a1e0ce63fb5c48f23274c7e9fbb04e83131d58adc28dd7bedf7f7b264e83d4c70e08c84fd41843ce43b65647cf2eabab6955ddcc139446ee87c9359d39482e94eb71349676d98b2ae3121921e7a760cc064d931d4497e39a91dc700498d68ea766b379cbbc7e43583c8a556288ff77fba838862f682c20ed9a983d3ed7a69c1cf3ead695433604f614a8efd2de9568cb2d3577ec26b0bed42eb726877fa85914ac7925a6115476343b9de10fda4899b915676f5f01f06e747c7c20e24a809ee70f7d0515d28e5500eea9f0343fdc1a04ed4f8059c5eb881b4b06dab7184658ddd98ee1747ec5bb944810908517b0565b1a543702db8ef820e8afeea8e03f8c2e0ba8482cce0a78fe289a322b8dac77b6be56d4bbf741cf05aa26bec1d79c2c72d62b2095e412aab890fba7297d0e53486b09c0ea8a86733f87e94307a4e84b27f908239793ab68c5b457d3579194c4fb2b71e092c596151612e26424c88561763ce08515f8d16d980ccd7faf8525f7986d758766747215f7412ccac44397f9f153a3199cc470118355d7e343ee464027388dd3c9127a816ecd711097bde379e9d4b851ca6c5c2b99801fe9afa0572b07ca2627fbe3feecf13922fb50daea230aacb55c4b2cb4a805d66c89c516b2c49a16b5c0c2964c04937a0dd9d06634b891861bd448139b0d6dee4753e6460c9203fb79f4b07bfbb0631240497da4638e691ef7d7f668cd76e99c063f39c497aabfca145cb30d7cd48ca5914ca8a728c90574fb9b458960e2cd4e553d629e1bb3260631b691842712dbca597ed4a83f202323360bb49f5d708cfab496e20d4630bb865170620f4b13910c2ce2cee7e72c95a43046bb59cffe3ec2cb2a604568640ed4384d468ec00f31c53dab03c22c13a33cbddb8b222e41805626c54c1106a494fa898be3c1d5e17a421c51005b9c539c69e412a8fe7320ebce82f00511ec211872c5cb4bf36c96fe5b4d40208cb35dcfac0596f4f767c872a967208edef0935cd124299960494e2d779e3f5c6f7144537a3a6a1562c3941ade4411845faef1a2603a9a2ca59278c98ced29c9362b461e2b54aeb4c326e5660fbfa15ffbaa94b6e25b36ddf2013e6de670cd4b81f773d694ebe9c77c03d3126d19bdc84acfcd46538e4ce0b7aef084a435e2e9062fbb8d1e3f67b2049a84b8f37353cc002229f8963f24da2027439d5c8f46225c90df0fd0ef9d90dc6b13309f689b08a33b1a3f6194af821991d4df38d4f1bc53e0780decf729f1d50e3cabef04d325e1f59dedbde55b55af27df41f6d2f17901518ef4812d14420e69c0ea9ae63fa0d90e80fa3668b6e87c940d51eb927181693eadcbe2644c9f1550b932f6e0cdec9ccc0d0f0b8b4abcd7783015805652741b917b34664a0b2041afba159e7905dce8ff847582daf7aff340b847f19ebd51f2b83af88e6dc1c0f2e409dd1c5f816c2a0fb9b29e1909a82a9e4ea37fa441c98a453d740368232ef8673ae6d46552f0b296b6b42a37b580dbe22faa71bb22619663380bfe31eba8e5f8121e92e9730646ef061133c7c41124fbf911b9bdc95a87eada1e49a7e559e37c19a4585f660bbd9da5688d9d18838820ab30401971ad189ad8deda1dc7621b2cb1b7c40210c0661a6695a90bf293c270254d66732d8c2b9acfbc858df45a6a28ff905c9bcec8f5b154661d16ecedb17591a572fa70574fe9f47124b97f14bb2ac64ade435186804cf28a853630070932b2b756e1b59c0ce9255218c0028a8952cd6785d143a759efa207166e81e8358f5cd3b168030c738d037b02c3f60846b5a7141956b01549e1818b40cb3786acabab3de606aa46e1d62aa92fe3951c6943a0d1a20ef4e965544b69bc7bf896b8f15337e7e12c3a9554c8e5b46ab9711ea34893c2e0d8b76aaca467205b79ccc8c0ebf7ee9570521bfae678e75efd31f6d97b4443014bdd820f1523e9a629743a887e84a30df2b785c557d9fee7fc69d64e533f42af0ac513d6ba4cba547a1109eb6153f3a15df411163dd787a9fb9a67853127aae47fe3941d006dfc5fe072def9a00fcf575fb7dc1f04dd280ae194b1f2335e2492c96c042bc3c4e69cf81f9f3ccc90b07a68eceb35f6d6bcb5680dd476494f30c3ebf44f548344165af2121657c9ba2eb88f769ae64e7f7fce9355973ce22d4d3d74b521952dd463ee23d5386c02dc47d421aa364a44218e15fc88142d9bd5a81acab4b654830f5771d2ab8f32a31891a337dddad12d8235a5ea9484e2b4bd27c8c05e8b392529464b3d99d5cce2a3c08c116a710f7c20c23a9d0c90c3855f060e466887995049e8911760a6d36dbd1ac86ea1aff0c7c21cd10aa43e724dbdbae8977ae2b8aa8fbc501836236a9c5d57b18fb835d70fb580e1fb60aa04da2fda5c99062a783f25c4f0bc6052dde22cb51764f90e7e01251a52b300217949eb212f7a05a387ece3f9c3a042052f314efb2c576296504de71822e4aedc3c4b708868b4b798590ee3484069fbd4a865c5e12379f47ab58b5991e1f192c63277c751039bc2afb93dd3c16b9022e26b1ca5cc4ee5f1f134e3107089a2aad5b05a87ac7f84f55cb314645a4f21429a478e31ddfb28495dc1051b2881b16d094bbe374d8fb28c6a92956394bdca8922855677418a50a617fb9889863d62337a70a6c8328f13f874df0a67c8270c798d49e1d07752a5437ea95efbd79be2eaa3ae1f67367da5752cf3aa9a10e0457a05853d7d72bf0c49fb02b04fb9fe0dbdf6627104d920a29b772a2c4692075819059eb6c2022f7f024cdf3404c98fa87f092b5932e1cfe3baf5d223653281ce4a044fc9db4e8879c5d98f662baf5bf3af84e2e06c59497111dc250701596d2514218388c262b8f4435b92d9ab89eb4108cdfa8e381cf22c6f6c3138a4b94d9d7831befe9a1817554e61b46524a921e3e4d76090179525bd18c290851c53ca974baba098c041bc340c8914214525b447e896b39bcd2d7f21aa46a002e72b480e5c90670fc413bd09edb32b693659d2b78ea0111097bef3f36f81647f01b1502cffea455e033c643813a3c5f941d00a64a3656b9eecec98fd46f0ab77b03d38416d721fe71fd9722144cbe433aef6d80da692df93e19fea6ccb2a146ee345ad6066d06c8988e7ffe5619b2a7ba283849b598d6ae3e73ca4f20837c8fe77f85a31327acad464f4d6534ae4a8929bfa17350c563d8bab4cdd20434e62c1d3cf0e4c7c14636393a1128142d9573c2f567e0f25bdd6b23eff12218ef28211d8f7fb44c052c0ea7209fa56d8468693ca4299cb038981868f39204c926685d8151c985e07c3028ac1e1427211197b4f37c53667e7a8af678bf234a368889eb28d70809916998f899ef3fd44a9c50a76a9d05c895ef165289a72ef0decf782256a94771c3e43f8be05c4bd2c161026381efd8a8424caffd06eb63328baaab7254be3fe94f5f9cb33c22620c9fda0f99e3254b798fdcba6a3ba43fc41082a434129610d6e07e51df4662ff9022a8c6b09d285d8a035441de49683a016a703689e731069ade61033e8a97f667631f2fea80f9f8a13d1ce77fb7a2b87811ada5a776862b48a3e0ad1b20cc14e698e3651f6e321ebce91be38dc9d16cd3877cf7f2f19ef37ebbdb3767384979fbd95196e2d58450e184f858f519702a0f5c5ec09d5e76023e11584bd249974fa0b8c0a6b8e74686afb14020054a92f3ce48a45b6c7ee9709c14b8b5755f9a8cf17816958456ccd780e259cf97c9dde23773855d40be37872c6d7396e2bdb7a1f8938e2ee9355f4ddc799d0af1d152b51150595cb5a5219669bdea938b74cae76efa042f95bcdd0f1dbc0766cc3a8db87e7d2d7d38d984e43e187aff8dfa5a6bca20125de60f7c3d0c030df51831fe12017aa8bf5060e960e120e6691df58e17a1517f66847298cbc5b11c5a71bdc65e5c8d673cf4cf0b5bc142740da477902eddf77ca6bb46ab69eab8215011bef20c0a526ed070410265d1626d346504fc3f5782e2e5483a9d7851c695900db2e6203f426bfa1cc60876d619a8324f20b046c626b8a95bc2954bc9e78cb3fb99e71cc7c873c06e56b836c5a48117af3392581d67d678cce39db3839756d75a8717fefa06ecba6229830d874be4c70afe55c0caab656a0831ac285da4b5c437250f3c9b7645d62f811bd300d0f6e23fb66bd171a5cef789210ff3d77ab86ab9bf314f62fa3a47a81e7ced07b9a12f9802e5f674b26ed1e08f97d45d2d6147197e1e8b4cb63e91142b5b69a0985a0385c9d2e8c0d1de1c4d2b7a04ab777ee798d78ea5dc3b23871a2954483525d8aed4a0881552e468bbc2c484c94650335713d0716ccdf6a2ec8550e2a5a4131f2bf2b289896e4295d71bd1dedd20c3ba1f0284268bc477b26b34935a125f39a8fed660dff3543eca8b27aff89b0be44012b584b9ce66b4937deb1b24795d0a4424110c93040be484209dc79d922842fdc30dfe2cc6a375c074b47a0293cf77dc5a32de06ac2addbdcd2894a467921a8cde354ed4914f75388cfcb26362c6460f7779667f48b6a1239b72f829a89cf72d9215c6295e5733d24cb0d50cbbcf52d2150f43337865f3ae78c04b9c8cd098811ff2e4ffd02a3f7c1cbe3a831c52b6c06e85946108742f8f2785f2b9e0052cf08f2e2952798a7116429aa461755ba0676656c676c3280116de9d953321d039c2992acd83967792eaebdade59f58c8fb83487c2341ce89f51e6706fadac37c21783ceeb4a3a91dc5e8e8e91647516a415845ca1c9553465ce9e35f7c4ea5b5b14439af59fae7ea593b383464b61d4f09f540bec52afd98b4bec76b35ce10e47a93349888dc5e4fbe86eafaa7d001e2f7596bb18fde47ecad6d194e5c5717083aa8a65903b5cb79465a27c19d2c16b6543db35221b67dd8121f68ffef7ceabad5098ff3b8463dd4bb1a272a059387e67bfd43170992243d3be72680f5696e23c3da46a519b7869bf17b037dead1206cbd342f7db47add7f4e1863024bf0dc9749efa2ab1968c42044469e2afe663e48bea045eed00c5e011244e9492f9e92a10e38e8d088ef41628f0be5865acde29905a1f740c2ff63046129f9f9b0cbee1282decea1169951a010cf2fa885923f70bff9b22db46336dd767e1757f0011bffdca3b285ebf0b642583bba36f439f89236e8f4206fe465868913b40f55037f1f9985357131bf2c2267224be298714c518b67dddac42dc2a791ba568d112f5e89e990260496bbcf75f9bebbf0d37a44b4b4d5c121902c8459537f414e823e520c3cd31ba09d492c971a0061c183ce455b85159dfe419b0d5dd320915eccee3a69d97ca04009ce16597367d1071e1339b7451c7643c1ffec9512b7bbd146b12e8aff4570f56c351cc2f21c62b371cd47707e9a0f1a9da2e30c03ca369bf885853a8b96bed752cff8cea1c9ba5cfbb703b8e0283316527909832242975453f5fb529042e0131e90e4cd985046015c11d3348860e7bb9cdd9a0a2db830df6791f221db52ff5cfa14c78f3364454f4e8a3e2b5facd36415dcc4f177806f11dea0011a3426ff6c0e4ba6db2b5911ac249f7dd31ee1a9927cfb9153a7a672ed6adbd653d773f56474c9ff3ce2c14cdac8ab978f9475930885ea5085b14d42300aa533d5ef10aee62b8b20d27e6cc3a3ff201c99f4303ce800aa09572cda35501337ae6d7c7f18b3126882c6774efa096878df17f723f391b514864e9dc3a474774683a50f3d92f99bf111f900c878d55eeb712f20e6acc19e9cbbacd20043c824a4f49f05d17d520e0265b067c50ae795add746a6ec34948e3678e311dc734328bab69c7822f6144d9049d711d2a7eab510b285b559525393bec1ae4476f5139b28a1be90958d0906c32bba89fe18c0f5b58d1e0d5bf1f75c50087cdba26260f34046dc03f68c5f3e475599b0355033914162ebe5945b5e05e3a1549907246cda00f7e35b068ff1af55b0d2357b2a1de6fe71927f92d91d2ac22a0c508a6ed778c4404f62dc49c8d83bd4c2367203cda30ccc85c31149aa2d36736e9651d96d5b0347b399b3254ea7e4f32c18f67615fb4e8c2fced49219ab5459de48bcb14688722f0b8640bd25d0831896106b2538fd044a9de5299e2868269a6d992172ad08aa30c271b4a7ca8653552762a1e2ef0f6a58664d3aefec832c5a80d35089c22a840f5440b3207b4db1648d23fffd1b30d31585e22cfe1ef670359d137639d5df401a6d2df2ee2afaca4af7f24c4dfd4137aa28a44e8a134f37824f928e4c939e394217332d4a4723e2ec6a4c899282c19efb76906c49d98efbe3ef1bb1d448e71dc22fe155edb48c191879909153f3fd024291bcec50c8c231a007b982ce7141334bca2bfdb6d47f5e695341f39a55507fb6e76b5f82bbe77ac81c60555bb3b7eebacb09cf01502d1b0f3b49e8a9e748cc58224c8bbbd95137c8a2d897008b080b38980eff7e8b8119a48c3a464b7280781d7960781e748ac5da388d3031f2bcb7225b9337577356795d272fe3e6b790b670d45b648437ef45deeca85c83a6c126a427acd138f24350073a8607459c4f6ca6adada5d9e76b13f8d50d44d911f774cc3fef07641b4896a333a77778cb6c0f35aa924b422e8c1cd89c34c26b5499c3f1ae038a38b3508b79e1ebc0b0f501e6e902ecacd7638600a0a20775cf0b37766add1a342497719a65e113ae8017603f46a85671b3bd2d14ad38f588bbe5928a6bf0e9a8c01e62e867e67682d3714d8442cbbf79c9455b15372186d6dc610c1b611a734bd4b7c05adf5a6fc3cc5386a205bff3d8c279fa6edc03f6f239326efb0f33d7df40733dff5e28718edf7eac3d203138d0de96302ea9a9d849fe1ce2f105552d25fea288f21ebebea49bc699162f0ea252061e489d381bf654092fc0928c26fba57d0cbcc05e1e977fbb3982cb64e160319982d8503c694b562a88f58fe8283011a26226c9e1aa2b40772e195610e604e116b2234332495ce0d7be40d47cc8ad00a5d2acdd8dd08436350353b854e5874f72101cd34ebb4eea293e98e1f4bd0195c6708370780689dfe426bcc5147b109f4918774dea2da6c92611b6fec7d780a01c3233227a2da216da71ab8b7edee856e2f17ebf0fc40570cd937895b9cad951d9d3f9f98bc3957d4625bf7bdcd5c47e2078447789a2c2cf1633cb357195e6de3e2b6ce54eaf3f3fb220ce2f881767163873ced24b140fc7870c7ab164ffcdb9702d942a08d2ccbe9931c60b827b082f829b60a0c492e503afac084257e744a5e4a4b53e7d9aa3b7318bf723115f2107c4c6bf04cc6d99c48fc269ad41f41605cbc42671cd35465bdec0c610d6aa3665cc30e412d55704995483a942c3cf1db471bfdb40f62940a428178890e84280a9a6da56359e876695fe0024b3abeb1db8ff8506e9ae8734928db06d26006f2aa272ee899a9e0f888d389df1d2591649a65aa5361dd5f03a7ef905202faa1043136c4b7ea111fd45aaede59b9282a8ed66005298569d40119f5c90cc9ecae8015745d91c65dff4c853e8d1b86796a75e81948707d4c980e07583951e53e78dd1b0fa81564b0db3db87cd51f2476f4914d782914cc42cc2d53a2150a14838e71f8108aa402480ef1c254f40748d88a40e9bb4ff3041122aa89820fadb057e901b2282cdf088ac810b645129cf73d8dda5a3fe3718875160e2ad887043d6e4941e9b471444671891aa401fa30739300da2c62416b4f6f8517aa9c53dcfc1ed478c58320dfc86015d26eeeaa2b3e1124f5c4eea6a09d5732bad313c1c9535d68e1b3f06a39a12c60ba02967e46b83280e15404e9aa456f50c8bd92162e690a7120f1aa2b9ca68521bc766041007feded0ad6d105eccba2db111fb51988cd1b3815e65d941ac49136f1cc2c8854f4926b1515432d6c17fc73fc1b0b88fddf86e84a1da37a3aae96887a8efc96513118be355a06e57080dd9efe73d95beaf7a8d7e61e1b7129f7ab38d3a23649bfcd4646b44b5703b4d54a184f23a8e9559f831b64669222cd2e848587f7c1fbcc96eb0a3f8f858ffdc37c1cc05f5da6b9df521bf614c66d79445259382643a2817f4a2f991f6aad645dcccfaf250614aeda936474a371ee5a9eb21cc7eee64fbc35a9f7eb2882ffd7f72eb398342c4f73c0de51693c301bbeb7bb79ad8cbca4064415ae9a460d924c639395eec394a558c18b20fb9e331222516ac26098a1415f010b1a9323e2dfc692fcf6ac84266c4c798a5f3ede33601bc152431741a59ee41a3a337fe5f73a5e0d4f22560ef5f8a23a25155d58a9e696c8542c946731b84c17085118823c8dad07c5b4154efadebe2215e243ff57b3b62e1183f246a482c14ea102d8b82e057041557a25920056bba54563e55474c03725236aa0e7bbb9f1414aed0766a30d7dad72e374730d85907051374519d14e42a88f33bca1e1a35d30b737055789b193158c44de2703770ef53c1c39d2978f0094aa0a8b27d9d6ad817227dec17abf9874ab00021a243a3054f4d0c07431a215c50fd2a549107c128a48cbce4c04f450082900272ec1100c94a48a2f74dc007e15a1b28c082c0e17e23842eb32d2f17599d02a35fd6f6930abc71f171fd1317d0aa1226c6310188139907337cfee38a6f5dd84fc3bee0193cce1270587758c74787e73132084d63ed04ba06137476f9cbe035021b147b3ee445efa21a66a0c41aa56109651a537560bbf2b1f46237bb343c9ea695f03b63acdc10687c6ae543e451d48eb7813a09c4b8555500177063cf483f5c76f657939af1e062b47dcc33302e01c2b0ffe7ccbf7fce22dce2ea5fecaf87441a7b6cf19a5483990e3774b452be4ae014462d49bcd7e3b798caaac31604daddf467336aa23d621c4f35b2bf49d1c2805e395811234981007d7599cc719925eb4b6e88c9f46d81dc371c82e8b73f855ce289dc588e14957e6fd0b28c1c551c866a7c844eb47a910b8d221e9fd283ba5a40f2a9d43564f15ca568cab0cc16a542efd00af78d187225e7a7927529ecc11142dabb75de83340b81de301b80a855e2f55c5b0a96f5efc91c13b95a69500275f8cdd2b100fb0f1b7f701cc15b8312695d8eef4819ccc6240d5b608776ea173ae1a04f35d6ef4821bade61ea4997f9148f1a4ae0d6fa5216aeff63720fa290c596dcb30cd549868a9f4a98962da74d89c87b22e630e0f9491e8ac6043277ddba8c562df63228ed33afa2e6bb3cd0243098c5d7b86a8f1f538a2626578a4718e419f2c024eda11a8a136c14267935e08a3516c59d6e6834e16fe8c281114a5849ebeb4ba9bc74f079115772886e39ddf6114ed4451b4f77cc6e6f4672cc1747aac6a7a015494defc0371a088b26c7dc41304bfa098ea57a85a2f70af06fe0bdde42efc08d78a28e7c9d787ff62ee474c1686f9c353cab583ad21c3527d4124ce65b9df3016fa129786408d10c7c1c43f1625d3ba7558f9991e1ff4cec4c6357877383c0662666a2b5b1835fa37f34a96a42e19bbaa38e5bf0963bd9b60c861c58c834ce2149e055a96720d8ade5035a75cb030dd3bd8b02d68572ad5c5679efa79ac38da47153a63269d8c3942f0ab7e5a66daaf4076996da09d012318912b6931c8405d13edd42ce87c7dc99ca2fcb7577edac0b69f16e100f36b583225a8cb9542bf7a64fb90d2166a9e664eb19cc70f468c8cd7ed8d520343bbb9eb696f5ac5b415c829bd182150d757fe11685c5e8f0b8a6dc5c18898ad76ec63525f947c3a22b86b89c1d81dde00dd25c9e29d808eb1ddf5c501d3c864766784cd3bfe9648177a60ac529fabae456ffc8516e96c5e70e06d6a917487e2261f0371ac576df5c545cf6c556946095ad22d29f6e2d101f92e83ddb88ec21898603c2965727f0a9dbb96414f18695293e2f7237fff0cadb867efa2cad750f764e9ff5805c2c232268f50b3f4916009103540fc68028c7fb7d8f43ac87aa11d924626afe8d7218ac2a9d9f36f22274e9422eac4864f258917df5cc4d01fc90e2c88bdcd4743124629b8eddb802834d42f98ed727a6c5c703e6beac23e6a1429034e3b5fea0d19b71f92e62955091af7c3fcf2d771380d4f00412d8478d3cfd5705dd70686cf3bad1931291628dd1d3984d8c684f219762ef8bce03583113a42903b6b5f3a35d6b2c25431e9dce042d1f2c8f657d4a43752a1a69851d9d38c39aa168f8cb314769d82572245051de3ff057ae134e6debe06da7859b4616763af4f56a25512bda86c18564fd9c0eef093847d2179651c8b588062a083776dee984e7f4f3a7b5945834d1224d4ffbd698c786e46e03a66e6cf820d9332eb5e23fda544c71af459aaf21b28a502c2915fcd368ae3e8f10e8322e0081a53d779354fe79bc5bdee182afec0f520c788746df26c696560fe416948a79ee0cbe1fb2e0fefdba7a94dd4c0849937a3b105d840a2557faa3d157570ab7debd95d4aa2ccb61c827f53ca873bce381c779a5b128ef861e978545b933b9ce1f03b9ddd6975cc0bcbeab2d35076f9d8662421fbf7365a4a54134298ab78acccc907ce203451dc7db9247d0c7f1f9fea1250c4dea2e3089e2e203336c6bbd8a73324671741bc102fed8162ecc658b15499bce9f4105d08f30e15316a7d28e9999a4cd56bc5d34d964918e26c6ea8ff299a0fd9f47bc50fa858b0fc69506ab1b6df76377949979406ccb8d7573212374a327f2b5b75415b1495fe1fbbf4d59c1c58066f9427c577c930b6cbe38360686fb24616e288d7b9b2f224d92240630dabec056c68ae1ab497a3944a773c24d40070fb2b9e28d9527398f928aaf5479b04f01c72a2eb2e1647143df9209e59d7323e138ea77d89701f44b6dfe67060c4050917100335c9404b4e035cc629f4344d5eceaa82ff801059663493188a0e533ea958e975e9e48a55432195847ff8b7836118f65914ed6e6bd160c2cbfd5c26ab55d28206c5c7f3dd8d878b633a1af44f126dc4f5f001964a8a9da0e227d6c7c8e31b87e8220d11eec8b7e80abb08ad0795047a9aecf8d0c2d7ac21c173c88b17ba628d2595f436ad4d3d6e8ec36ec4cf8feee96bd28ae1e601254f7b1c85e6ee3ae7aa9e96a7789faa151c15f3695c68292e16e39706521db7575e8eb7cbdf2d35c9569374925fe8a00b13c333e6e1251182db302b7e56fb6fa0b0bb048ffcc0bf005e1690b97f3ddea404f10be3aa2d80adfd853445f3bbfd294aaa926030bec1b76f3a5ec00551e5638294b8b41494c15a734d0568af0d58140eb8dc0101b21a87ee5411d2cd1b1895f9f6b64595f5eb1a09443ff9f1b38fda283c841d6be5e1be5c9777c589a1358fd4b6cc2278213cfd47631a9019bc821ebe54eef129028aab4d920979c5c4a7fa7223aad43d88b3e002b9259053e4257282211db3d3292536e3caefcf673dc30732b2a2bc48da2b698350b0dd90ce05416108a10330140a084d93d7d9a6a8ecd667b3411c054e633ff426135813160102146a88b148204378f2a6d979e20213bd951023999821da990efb58339742c20d8e37973f429b5a37afa275612f908ed8a1f50f1b0ab843fe6870a4aa875cd800d8930895e729246526b467f0395727a1f2c811a2969d04b229d029bbf83f4c8ba888a804a0ae4484c0d0b2d1c31030c7337ef8e0d85e1ac49e9f4ced2374b74e291c84eb82801f708d35522d0c3a28776b500ce19d38ad4a8a74fd3322cf7150854ae7d58d5ff50b89feb9503c589dc0ca1d9763b7fd6ecdb722a4a5aaaabd447efbd0d8da921cce5490a9939b95f20842dab495d6c9353ab4df2d88be2d62c19f46dc1a728730adaa17ff11746a04f27f39a97105080cb30bd881c9475112d03ef38ba308a9cfd297b60391b02a9626b239d160ea68ba54d50afea8901508a06a848b83e4d3acdc4f2c7aacf56c2142e13f9f49d2454ff3ff94224a24873da63c5c430f77088adf6cd0dfbc4ff983d548b77b445d92949ca8331d8a0aeb7d771c1e9af29d6d4e3d43a07f0d08ec6534566438203f5d29c0e19d5c9ee47f5f28043f60548efe0336deed184c3d25b8356d9b1fc110283aae9f32a00767b410e0cd0e3565c7d012053156037a705b3195d33f68558c8fc496bf159798a73050a8db9f72d7eb1460c4be1a6a59a29b7b3a099ff992e065ef4a91ab576bf972f43d0146f18f4c4cce6626f09adf83412bdb2f00cfabd22721398904236c82c127cc09b2ef31f306b80c385fad476b1e30e2dfa536a1e8e6761291209f73716ce3da8ae9bc2fbc4e653d0042a33fe9560fc80a16f256dbf976e1f35a91dbe69c006a05e11418450f9e1d494748bf5cede09d89647789c76baac597a2c7125a71ab645d426abbd91f643b9e8fd2ece9ce21270ad1c921ed7126ce0b369860cb405cc8c03dacb2a8d502062cd38071192249e0816ee5ef37eb5017670cc2b3cc3abfa6f0f42d5ddf5dbbeebf7219a25d95da64995052c58b0f3646aacc499023bc787db795deb965454e4abf1d1252fbbbbbbb7c8de3225290317097a08a4088d62ff00a207c300a21b3ab8172b18b27fe5824400f7fe23a1585bb26fa5cd54519f68f589329679d3da10623308398040c826fc3bdcb4ace01fd10495fdb9951c5c1d9cdf3cd7597170c70e7209ff0deed0410ec09fc39d38c826fcbd73a2cb35eca8e489bf3dddde8c8de2dc64d93c874556c726dc18a13bab8e90ecd8ec78d454be6aa772d5da5f711ade1084e505c9139de7f78f2a8cf82ab3d21eef51b2768e7cc53c7cb519a33dbe69b56763ab70c54ca8a31a0959b8cf806026947d721d5567957d6c14f7150f5fe50d8323d8a2c2d55e045bd93707c83c989c36ad4dcb3f6ebb70bbdf2847bf70bb0dc913d3479e61bb3b4729a5d7755d18866118c6d55a6baddcf7e234dd17650bf3228e0c7ee64506685ef431f2e65b9117b328e5f99bd17671bb17b320e5f9990e0aee37cfc23dcb268b918e3a121ae198b23f286e5a45908a487544232dd9dfe2ed67f699d1e8a0a98385fb0d836334887b7fb0c5e1cd18fd015b8d92850fe801aa3d5266700cd965e1a665a770c58e8ae53ec862a7d551cd42889951f63729c99459dd25d71014230c40f0225f79d36a141114a3c36a1471d3da8cd128aa46916100c24af6ef04e98891121d8362ccae13c4ceceaaa3b251b8a27754d91f64358a18ed61c9137f5ff9c7244ffc7d95fddb249561253cd86a12ee7c6e8547afa99af29aa2c2e6bf39ceac7045bb7d8d4275a7d3d561a5d29759e18a3ecab3769915aed8aa5c62b14ee3a89259e17a5f8798198c782364bc8c5f5517070940a42107b9c9e9c84137fe7a4a72d0127f7dfe42e22f25fe4ae22feba0951f32fe577e60cf1ff1a28d3ce3394fa341d8ea67fc9429357ec6d34631f919a1c803eb6012dcc93230cbc9e393d0fa6786d73f1d5c04a704f3755d078fe40dc675b08849a805e94fe53a589337cb7570e6d48272f93181a9e3f3241c8e898efc337f094acad3f32c13ae68319845b64d53692b8da5613027d5c53fd3571d8cc977e37c24329d5ab0d6c85a69da17fdf137c1de32a2e4c9ede09b378eebe04f43692e5aca3f9e3962aca1f66834239c0ddd50ee6e1dd7c19e00b0d6e29ffb2e0a954cdec96bc168ad950a041d6347b5e77a260db970541ddc95f2f7fe4be07a03d7917ffcd4e21f7f2592c0d86872538bd5e2792bcfc8c1c775309765601692930ff6957f6609b697ebe00d639693273921e5932de41f7fdaf23cbb61b80ece40ae836d36e9e09a65601312ce06c6210bb208651b2f03937c0763b983c9c325f9196ff2db772a2635f034e91820b308d7c1d7077b24afe41f7f0ffdcfc652b587e33e181bbb09ff128cb54857c45af95978c611338ed8701d4c33c62c25ef311d81b5d13ffe01c01a4b5bf9c71f5bf9fb7b25993243ab5fc0188726d8e6a74f47380fa6f101c000f80ef62c03b394fc11f8867fe693e0a778e58711e1632b07612dacb5c29e694c0ee3ce466016fa217eace5204da5e2a866bc97e4192f6aabec0008bf3d13e329434668c4cbc034be83432368d0f6ccf8cd398c67a641df081a86337078db33bf6406162f87ebe036a2c3b008ae83278d6984111dae3363c63f16a928ff772c13ee8c9fd1a9d4cfe115cbf8c726dfc1242fbb2772b40cac022aca9d0740a76232039398604b236429791958661a25a124c94a3c2d739d13f6fbafb07e0e2f02dbe760d113b1b1863692c6a309f98bc5ffb078238b584bd4c6c8ce692a516b657f0d8b9a4c533da1829acad78bd4d6ae290ff3d1597496c5f43192c5f431b54f14ac11a848a6ccaf23dd411ded16aeb8b1c6dcaccd6a218b5cc87f8622fd52ad6d939c00b038b3005e0d806865a9063f3ce10f59aae10fab9c81199f2de18a37d59d0c323083aed4a1ba9517f24a1eca5b7da1aff4a11c74c5f77f2b07b9e0fb6fc8412ff8c903ce06a48b4c895225592d518ee2144df1e21c4d92384de23c89b3459c2ee24c8953254ed66ccd516c91d823b149629bc43e61f162b7c4e0c576e9f162a7c45689cd12bb25f628ba48f491e8a43982c18b7ef2961760eb026cafc075e59f8aaaa51ac230d40d6c80b1900f7c65812f1acc005f32c0160673347730453a98399838983598a11e31c0a20556b0a08a15a820053c5070021394800453cc951188200420f880073ac0810d682003f82a29e146f1a26569517c1d1d9481906cc28bb6f4e265c28b9c25bcf8790925bce8c94b70f1e28dbc044684938084176d36e2082fde6c44025e3ac88acff1d2412df8fcb55451d8aa868cf0e2cd49905e26f1f2a408083880019e6880030a904280c7480ed2c014df8f952ed4b522420002b0c58b370fe1459b3f1f2148213e8e970e42c183509a60620014f80abcb4c0d32f58fbf90249909e7e0cf46c4228da5b0ac5cb614228727e09a1f81e2584a267721162440ec29466124291454228da309c460831a75984b0594408e9dd2214ef10c22b84700a5c75448159b088c1ec010f5ee0822b9e84e4fb3198529e02631998abc9ea74be77d0022bba59f09b29f0a5230accb281110ee7fb71749fdad49b9191929f02531d5160961e1a916f11d18bb68adfac40052f7a4e2e0373ca5360d711056699a1b7ac6ce4200e4c1d7c0a783c159fc9346b0adc3aa2c02c1a785984c93f0da200b42d0789df5fc5ccc1f76fa6c053471498a503988b7993bf97e59f6ef9a7b7ca458159e6e8314960f56348dff7dbd1411307dfa22d81097ef39bad99c7e281d7f25c39686af130782cbe7f8e0e8ac1f7f4c1b70cbe67b081ef0f7cbf9fbcc54121f87eeff14d83ef2c7efee0dbc7f70c7d3f6d71d0acc14f207c3f653968dae0fb69cb41f306df4f470769e0bb03dfdf891c2482efef460e1ac1f7772407cd95f7c0f7672607cdd1f7672707cd207c7fd6c29941c0d76984af0ee00b08180bfd00631cc07503b8a27c80eb4a0b6c4b3dc076c5036c513bc03624c2b5a4038cad7280b1120ef0855ac123c0d23f15a0c0bc0196fe99c04f1b60e91f287ed600cf1096fef181b3c034c03d580e68c01333c032c031c0d23f4e3c16180658fa47e55f805d80a57f14f057e016602b300b701558fa0701bf022cfd7380570196fe31c0a700f3c05460114bffe07814e0136013e012601260e99f014c21c56f52e0257e9b9c14f8c66fcd498195f8cd39297012bf514e0a7cf2dbc549816dfc867152e01a997795dad32f05e67e5ca9863f987214bf92dd9c93c241004b6c3829644f260620850050a2406982890148218029006eb344174537c1c400a4e0504001a739b7aa75f59b564e7d792f4a6b0ac3bafa5bf53029a9fc1c4d6548c5fceb31ea85abba52662f337c71e090fef46b181c7dd3b0ccd23dd147de4a68e4961a27f1ecb6dfeae4386db3fd83be96d1a23ffd1e5ef9b16d1fb74d2d239a5ddd34b0eed032a55eb8e266a25f6ca6f6681d149bc937d366ba5cc5937e716917aed771bf5d2ec3d4a3ca5e86b77c31cbf765199b370d57f3c51cce3087e58b59baff9ae842eeebf6b553d9b84e25a30379d2cfe18ca83d5a8c322451eecf981a45cce82037898b27348a48bf3fa3039922c1f1b74dfbafdb519269b899e4c957ca3e5b9b59deed339d0a8f4ca7a2d13b5cfa399ce20dec54c00d6748192eda53cac215371329b7088eb9bfbbd84e9b17e098113988ebfead849378e6da956452da8a5d54ebbc6789579fcb1d8c905b5fb215d3ca94fa25fe13aba9cc49c40fbeca94fa548de1ca9fee72e5d7972e5a714eff417777fbaaa913fdedf1dcb8d113706bef754d1667575212f673765027a63cb9a058c1010e76602a7407c761dd8e6aed70351d660fb7ffcece09d147eedaedc8a4cde4c915085b075b07155b07144ae574522995c6d1d641c5d681c51a475b079965e784bbb8c8933580a8dc5e57b95755881d592eaa1874342477db2d725f181dd12d1ac3ae0bc3edc9a8c5aeebca1ec33d4326fad34f6db407c7ccaa46e91ec3b0704e4b853be9487b918e680f8ff685abd938c994fbbdb5d49557d6766158f0609d8a277570b59b40a6e30bbdf10a57f478e394ed796cf8e8b087f3c67cb172fb6ada6c7d75f92a63172a134409c53683440dee7c614b65570f9b78faf4be68ca740ca7e469d4f99506a7695b7b27a6088f8dd94fbb67763c33cd5cd25c2daed9079d550a5b4d6d73ced9ddcddddbc2a6748f9599aeebc2300cb33ed6927f8ee65a6b2d4743343c9e2fb144a0d41281b3dadd6ce63a4edeaeeb54a47069f81e6789703f2e33ddef5e0ccd4ca1cdc658d9b0965a6aadad18865dd87343c46181403171a4e6f773642b08a92cbe5d81abe9ee2c49bf95f6f427cafddf88729df7adb8f4cba3a52f14245fa115742b75b27c1bc6c5ea90c5adf4856601666e674521f7ccb0ff44fd85dad3edb8320dbf9012aeb88db690d6af538e0d7f885b29f77f25079158007bab030b49b4973ab2f7a1e3ab6d0f22ee67f10b8de837457d916b287ea4fc85e8c5c2eb0bd16f65d2f00bb5a745dd44bf7dc3159de52cff42a00be70bf94a9ef473c015bd6a69934cd4ca04866973ce6b4e29e79c735a5bf18d1c93860cc02145a374e8048d32bf0aef8b867ab822275b5560e1df7fc54a86d172894a75ee9019d0d0ea1bb21811a494725a1f73f2d8363987116ca03e56dd0218e6c9dd988a7f9d3c3c34a4c2432119534afda22729062b7cb19d5eb218ac80872cca203efb697449a3ccf776406c9289ebf5125926dcec677d0c53910adae6d9612fe9d3d165874dd2104b30250ffdeb92280cc36e7b2ef8fd1b88350fbea73d94c9411a937fda6a50e2e490ec852fc7216546fff493743426075953bea14683ca24d797bc0f1d1d4c723d7d1ff74ea0f3f42dd079daf92bb400c997843d4a9ee435a16e9f9bbc17a734755822dcec65c721d9fb399a23a1342ba2f6f493e06ff48f7f6a5f6ae2d8d7ac7c43345a8477a53ddda940b182031c6844fef974b7435303e9f1744701cd5708f9a91d660f77c32eccd3dcfbdbc52c24ef1d660ff7fee5b8d871bb78427bfaa345dccfd1b714725df29b97d0d14125df8e59927ffab1bf30ea6b39887e7f0d4567e56f7410c977c6e64cc6925652b4ad7c85a4eb6f48429584d2af10fc1c2d6a44a46b1235a1af109a1a889a91e8ad2c72249b9dd084deaacf7942b9be47497ef593605ff9a77e07571abaca3f958a1aa51b7c0ce6b70b03be6318165ea178611e54841179d40733d3b514951b9b1dbe7e930a1892afdf88e19fc9bce6faeffa0d04e6cc9c52a37c5fc4638f7510d8fc058a3ce7c1501c792ce490424e898a2aa828838f3df8de13dc5f17b8e33d124ce8c44c44ce5c0ffef51ee60122cf893c260f17bbec63dc5f9f79ef314cc23de6b1bf98840b3ff3f731589cc195655ee433211522cfa1785011261252cdd7cfbc774f684259447885e7cd63216dcf158adf63df1d04befffeca226f20cee0cb0122e6c129b2774140c47ce6c1907ea148838de3ec9509697bc0c778a188fd150e8a3ef275951ae5ea97d43e56222581c385f5ebc2dddffb5be7fa0c067126f3793bc0b0ebaeecbcae93f90e4648466c818f8c79ef350f8221e6359e737f75068b7694330f82f73b983c881c298331422e15e51b663ef32247caad0141ef313caac7f973200882df7681ef65fec2198cf9712fee312096b9c360318bcc2522ffb8220c5a59ac7f431e5494b9efeb27b6800583569ec198eb73488d8271b8680d1934288d8b9c2f98d9a5bd2525112cda248d5005cb2b285c45db6389a06a6c8970c55aaaa5dc994bb84d814c87a794706bc941d7d3ae25ffd077ccc5ed77d91eadd561e8546a6cc9779583aa0bbd2a9e2b3fb8d750ac60c14c44fe3efb7ecf835700efbb9efcd332c5d6d3d661399bff71d3858891e7554fb52537a6b9c34b88de6265cd33875939fb4217d21eadf3875d481ef27cbf835422c3b2db34cc822c42990b59b670d3aa977d16fa4a9e4ca9c3590e62e5f9be9a6fad0bf195c92baa2494db36e1419a95fef467a66b432ba246a158e6ebf2314f3cb114f898e9f5d647d157228fec0af77a2af29ff7d23b8e52114d06dc30180c0613dee768b2455f69975a167d57e19054947334a5b465b3f68e46b947d4b6e47e91b6d8911dd9911dd9516e4dc8b660148c2b5e91d8436429d03ab6704435862b7244a1dc9f3d87dbe2f66fc1651a4ad7b038b2cafd5694fb338e28fb5b7a853c7ccc25997b435003225a7280ca2629ae7e173c6fa6d445e340e57047e27047dedab0b6d04ce570476e6da9f58b5cbd90d3dbab3febe972c3dd6c5a4f72dab4eca6956111717470ef23239922bdf99bd19b70eba951bc08d876460abad018b36b9dca2833ca88329ef96e3641c4cd2aa3851719107fa72fe41fff0b9bb25752257da3ecef9ad01bfde35bc8c5e9bb153413f2c6305c710b85b61551a3645fe4eec5912db2ff886864d428b5e3ec8f841ae5736ff4bc50e4e1adfce1cd88badf66487bfcbfcfd15b4f0e9433572f931d9837e36648f6a964e2882867f0e63a6e0f529e4fe370a9b33208e21438eb3ec5f731f76908be773bbc3ceb8b995076d159799427de19473e60be33ca94f99ec3737467ec41ca3c9c65c5f4ed31cecad96fbeda425b48a4a145f6df420eb2bfd9cf73eade853432ce2aa57f516ab29a010063ab4fc8b2fb0edd1d5231e5cbafd49205267386529e4c3050f44b4ac44da97feb36d0894bf2b6d9a7d83e86bd58db90fb4bb2bffc4af2a4eb6f5a3225fbfef99936ad52ee2ef27c6acab3d49e19dd0e19997e4d85a96c9237ad121959469ed489199986dfa93dd304d584af84619996d13b5ccc665a48450da9c0be4e0cc3ecfb4f0f2517ae5853981336bbd3cf5256ccdcb462253f62957b4e2f5c7fe9f4fb8080713f1724dce9f2019931fa668c722ab764970fc847b769c1a09fca7e71c5abcafd1faa51bed327538e58516124ab4b96220d4929e5572e34de9ced53baf7c5f5c6f6b4973dbcf2638aac377a627413738a5e079d1fb2d0ee51ad53cb18d5a5dba997dcfcad74e14e520926632fd25083b6d2669a62f42793d1e25a69048432a246b9b28de420676da70de5242709f17097b5b141beea4f7f10300806aaa00053fe696f88b7e470bdc43cb4e7f0d43171266ff25e2df15be122478be098db1bfd3d4cbf03b3c66a90a7fad31f4618418208112286183ec618d9f603f9b8c89d5282d569a9b41ef6d23f1b2dd9f943720d45cd898f2866089ba4218e946e5f2ffac85728ce14b660b8fea2bd9cf674c99cdf9e7e8e56fa01c9fd1f9046a96dc815379744eecfd1f510b95f4c62526a87eb944449b63d0fe801ca7ea943845f4a9e7ca97cdb335272c22669889b53eedfe2705317755b31cd5af752d7252b8661d3762afe5887fd986ff1ca8fac7e31e7746da509d158ae025120191a541dab188bf6166b42fa43eb17aea598457bd7bc55c69eca3fa2ab3a0a643aacca833448bba82f5cd1bb6b062c4ab203d7d552f7755d98474d6daa00a24032802e2d57f452deaa51c44d1572a7c2f0545e104acad8a60a9ab62a82ab4a4f68900d3521ab25dc9463afc2ea455da674fedd790bfbaa358a59ea6bdecadaca4b8128ff06512590244f4094977250fd19a65035f45245b81b87e18cbb305cf3455df39e7273bae8462507db58371627917ae16efd16dbfa24212c4e797b7a87dbd81652d18f61fdb6bbbbb3dd5d7fd7ddb7fbeeee2edb366cdbb2ab990590530911cc4d45fd3d413434a90d26a8eb9f3265fbfe0ed3fe745ceeade33466b7de68776376ebeebedbebba316d7bc3304bf7b6eb2ef4d64d45b6b76e6bb92709b567beedae78d654c5be7bd3362ed0904cd93e6ff4b3c6f46d5f97d7a95c4ddd69d75b634c5629a8a94c857f7dbf8e98e1117fe1239e8698e5fa942441497c7d5a92a093aff5eb4f99225194f8fa56826e7cfd2b5196f8ea84cd3a5b15a3b6442aab88ee16b262ad34436cc88e59ab3b9500f475d12f6ee729a59d4a8dbf3a956b856b901a356a60d9a9d408ab109231eaa8d55665752a4860984bf57e9b7643d5ed65b7b5609dca67861b19dad32e7543c993feda41b1b5f8a7ab90caaaabdaa978feda6ae099b7cdb925f0fc1bd8c62b816b5495d8825c55582e995132a36446c98c173f9794cc78f1462e91d159758064938deaa27964243472381cce77e1ce36f0ca0f243e9f6993c446e59f7edb316d171780d921f15b568376357ed3389937aaaec66f1c87049ed92333edc2f5a2e5fef7b283e22bf967c68b1dd35f78668ef3b8cf943749e0ade59fb1e33c5866132d544c46ed6913913c310975ba684f9fdad3f865d731d5c0611235afe4ef45308cad853ba6f66c2cffb4112f764c947a8daf9d4ab551234763262d265ff4a706c90b09b2fa84e4cd8b601899650389df3a95ad53f9fc45ef70afcfe11746e2b54ec5640bf2a41f096cd2f2c1265f98a04c4c548d229a6c21b70b109354a384f1f9ebfb4db62053a4e6c58d4ae4c58ea9b2dab3aa816b100dc53cb105797e0d3c331278e60f9ed9836706c0575596fb0380673e22cf232e7f006095111863d17e556d2d1b95d869890e84048b5b2af777aaaa0ac9fd1c308c8d4a237254348b60181b54eec76c54e2fd3a2671733165b1aa3c4816c1305c4856957832175a931512974917a85ff67f0b35bd3ace5ed7256bad18864d6b6dfddaa9d43b60fb63bee32ccbb44d9b95244fb6d0d666e88a55924c91db4ac5acd6a9f0d03a952a310f1f696ec96235d5927f2ed7fda675df9d0a0f4acadc77a7c23db5c3edde621e9494a70a68874ac2958b5a32036887dc2c31da6b8db17d3f680799222ba992fcd32cee6fcb50b9e84f5712f5b42ce458eab018cb135f9c1c2ef61cd6b2bcd8298bce52bdbfed5458990f5b8894fbe6196e2179e205f6a297b2d9c32de49f328027992273631d6771866db6b8668aab65b91ebbc2cd762a34dc4264b8a2c70ae57e8fe5b19c9899a3f4f29e58b552dbb80ebc46c6e89f7db8228ed987d987d987ec257bc95eb297ec257bc95eb297d987ec257bc95eb297ec257bc95e661fb297ec257bc95eb297ec65f6217bc95eb297ec257b997dc85eb297ec257b997dc85eb297ec65f6217bc95eb2170a87db2491cd08c72922db3e236caf9ad51a6f38c94b7ef216476117f5c68103070e1c38704819dcd56c38a62aa407c7451d070e1c3870e010d970b84e09d61a3bd4a236f5a951edd2294a229148241269b55aad56ab95c96432996415ad56ab4322839b619abd9a2693191cd5e121492291482412a90535574d22914824126965539e4aa5ecbd1ccebfc773c3e4a2994aa552a9d493421189749128c9494670140e9746b7792ee992d264ab536d2f276c1a1c00462e729174111bee66b37afd9cc018b6964cd9ac70451f7d0cb56a604f57dc56ab6d95db8b2bfad862d1dc746bd1103301bf4dc7421678be7cd092b535cbb2cc6dcd6cb5b5d65aabad59e5b0ecca68566d566dd75a6dcd6626332dcbb4ec6cbf18f0afe0e48c15236fc5153673de8a2b6e2ee2afe0e4ce8b5b967f85cd335e04b3fc768d48cae64b2979f1a6c87811a3bdc829f94dc323fb4f79423329988141500526188359810c7c6f1525f8f33c2b3ab8eb5a5004e6b82b3878db5c308235ed051b9c6530b0b5c62083314c0620beae196030a53d2ef60f37167a7f752a142bb9f209da63ddb0598ce56d6ebd39777198e329b24e8a95d6810c48d5f5d69e40caa742764910b94b168042a61ccbe138da70e78b38ae97b5c3b8dfb60bcbac61cf335f7653a94cdcb87161df93e3b88e9312c57ae6597e869fe31f9bb2d6395b3b1b5de7f1f494947ad7e768ebdf752af43bcd732313254bb25070825c318e878727d0b0ee95791fc77519648ab6696016b35e9a90a73c859276da2bb4cf4eb510b495a75c75ca38db7393e64dfbf0ca0ffab23de52e16538bb3cc716fee2beefec3974de1ce2a29d3dece5cb1af5a5a6731dd5e503083b692547ead9584e62bb70b0ddda58e461cac33f62a15bb5664b8621dd5516bedae05168b4549944449241b867e226cf40f6b0c7d255b906d95fde5a6ca9ef28f0f694fa88efed6de3ad691764162c5812572906604a40b96ec35a36f959d95efa7198d642075c47c93587160614d4873efc5dc908af95ffe300bf818cc92798ac9a0198d0ce98fdb15155965bb17caa36674c39134b034230781ef239a11188e7ce3c85842f99f542b52897b910b5d9ae7695d87590cd33c4febba6abba0d96a9ea6954cac9668442a71216b6dfdb06c4fad43ba091fdb63c9c085ea903a72df18e2561a64bbdbe5e839bdb7d96f927ee176cef0ca0f6d849e9af0ff34350cb9a14659f1de7f64745086e242a6927f483422691ae6b54e0573454e8b2e38517bb2900b616819c60c735ca83d6958c99ebd7fe3e5cf1a5b3e8648d97dced788fc1b5378382bd38fc39a101a2e7d5113d2ac6c3d2f372fe6bedf9931dfcbee8656b8d78cb2536e64d48ca4e68d5a72b817a7c05b9ffd7e863bb88cb95e1c192d26e442f2c43f2e94ed7fa34ca19df676ec31caf42f2e94dd7eaddcbd46fdebd828f6b3ef322edcb48c9a6a8a6495a51159b40feb180d2eb896b52a97eb2fafa6a63825f4884a6d1861340a3d42aef85e498fc8d12205e3883b5caf296a04aba26058d519ae78ad2af75faec58566925e4bc654d376754c453131b24aa678c654581c303960413015a6c254980a1b92b115a6c28260aa76ed34bb51c465ecc66eec46a7f462b1582c168b7561e3388ee3388ee3388ee388d5711cc7711cc7711cc77144a15028140a55ed388ee3388e28140a8542a1bc937712b1950d4c85a9fc83a9ba620e86c01048024ba0081c4d1b2f6a261117113488a44104c80d2c4f64376d88b83808b3222e222eef99c0d4c162b1582cd6c5ba4ed7e9743a9d4ee3388ee338a25028140a85f24edee9848aa8888aa8888a4454a4994eb06612710989b84cdbd531172a1244c445a6781671114183481a4480348adf1071115989b044c4c822291195081011975077e1ae10f2a41fc39d21a612fd8ebb21ede95702cb24ae97a7a9a31badbd37c509c5efc6543766301492295946c0b45db363d74545708b7ce3c5c73c832199d23590293600571ac5957891230d7003bcf122f8840c864070050cc994696d3cc996aea9052ba1b0126b6559b7c5193fe411f55f27d3e93ab55c27d47572b94ea9eb94fbe9d8b2e30d71443ff290500e6a41a1502ea8144a855a891c14b2a23be290bee469179bba2aceea591e1bd8ca93f917e658097c03277192799304780a3c02cc00fff48b009f2004784a812708f074f9009e1ec02d6a53bb6c00374b03d84519c01e0596fec10096feb900b6804b055214504d8005454b02728c800802a307901c606ac0e9891606b8ec4839a152612da0a58039ea10e5510e52024c08381da0c5002e0548a5a808c0c2d102f588226a62c404690026019c96689180db08c5996dd02f78274c653ae57e4c2553580e22c1f76b26079dbc12dfafb538e8c6f76b2e1acb412378116c2e0e92e2fb371627e24c9c0bc77210073a934b122f72a2f81a2f1d848147e2a5832ef01f0b548002137800bc74101412f8087cf8d2411078fcd2410f704003dee4a5839e78192f1dc4801d4fe2c4775416a0801fd1915fe4a5837224e0332f1d84800318e0efcbcfeb40bfbd7410ca37c1c400be622f6f6025f03dd1341187749129a9922c1a58942d394ed11c4dd23489f3d4e29212a78a355be34644139bd4a653b75c4dec54ab9ad5ad1e453e7252c52ecde4b958df10c0478dee1f242294fb2f3030cc2f1a5fbae22d61d7e469c9de3a08fc2c14ab38f540f528893d9ed0c394a706f35b28f638e5198ad7db1b5cecc5dfd1e2a0cb62dd16564b6e6aa222f03538334d5f22264be6af69cb97b5b1723f87b34c4dee26ce9fc35af65ea4266bc25d684b65f8ef39d2ec2e0be6330ce29bda424c55e58befc9b6d4f07611b2749fa36fc9c3d20d1f738ea6264ce9deadced9ede8f23586e936cacc57684bed0172bf16b7693e434e76779123d952e67033e4414518c58436cabdf49c9a29e5543d8165fa854b37ea895860e99c952e2726a55f78e507f7d2727cecf754f630f27c6efe16244f1d14cfecd8d5d3550eeaa6d3a92762917d1bb9d738dc61cee9d562ae3d9c2a5368b41b8a90d2e67a592c0a3994f9758b969d025d8a70c50dc925f78654f1a6c5cc57fb94d755eb4894699d611d2de18a9b68547358c4ea0a82b7bce52daf7edfa280524ad15b2326d292296445605c710bb532a14a22552f26e8d21e7f0c0681b4c75f8341957fc015c8cafea0c9fd3b40bc15fb1991104cf9670c57cc8c2ab7eda82587dbda2ede0ce926fc333807afe3c7f7580631cbe6437943dad372d26053e9d2feea54b48d6edec78d3822aa64105d17766532185633e276d27c32996aadf7b653f9de762adef710f908868f592635d99e0a23fb8b68e8b6d29f2db4842d541fec8c7d3f6fcea7947e3f71f69b94b3e9cc2b3fee66bab03f86491948ca3f99cd439950cb8816dd843f38226a8f18aee879433eff6fa5fef733a0f2a834add496450d19221101000000002315002028180e890563a15892846aba7b0314000c85a644785e1b67520ec42864105086282000040000000044301a194414750009bd30e03522edf37543330e4a60ee30757298d2c63d780a83d7e9ecf74d915952dd88e811cb1857ed6cecc27f246220bd1df6db14409f4dfff521fd46e7c6b61308fe6f401fff9d96deb855a09b55c7b754fc4b7b9f2ba99b8d5235c92d21c5e7d3c20fd9fb81a7adc38020376681e24f9894c6beeec2f4d6f108903afd17852dcd7890966f3d405bd808921d674afe597ff910cfca26b98f5590eb2c16a953b8a367f9bee2b91fb76d70311b7620897502858eec6b1c804f51153163dcc0f5dabfd6a6629fdd2c1929cda452c7211ee626adf8c15019f8938ccb55195b57b2242f49f45e20e572dda527cb0d2903fd2d4ec4d68a224e6b4e65213b3072b9883691509222f3652155b66229106f96808a92b222c876ce29107397936b910e59cc872ac0b2b32cb8bc2563526d3e543e26cb712e890c321fd05bfd03a936d29fe018841ea6398503b136426c63cde278e48b59a4c68592de20b6409323b4139abc8a69b320d364c3aeb0950fde1136cbc373b78f3ce823a902add622b4eb6b0f6cf65b3ad4310f00555a0e77104d682f8097d9cd3e50c052e9f363960b8654c00ad35dde0b0945a3405b0635058b5899f75eb90b222204f244668c9600ddd09df203b745c119d94e22e2ff3e1f6ad8f98256c04997fdc8772d48fa5d95a306c5992126f778d700d28991a9f4f080e29e7b4f6d815dc09d8bb6a5fd820f18bf22b4aba984818c57bb3d227d88f88f69156c3e8f7e93f1c37e3900bf021ffa1b70741e622c2d1b7434390b7980d77717b59b8ddbfc6372da512686f7f6e8eb3006cd066bedd0d8e9a364d030aff9737856a6a22e3bb65a462af0d9fa3a0a5f2a7502aaefa572deb982dddad72201d4f617ffa15a3462e72f4c394b46e4e110da64377d22dd9472c0281a70fa814a4f4d98469f5f228ff90269b25c983b4b275a373ee785a6bbd2e3f2069ae8d3a31917b0284dba39c4632288614dd3bfedfaef5a60cac0176e14b8e9fb79315c82239791a38a94b970faf9721fb00d7b0ce16c0f85e6a173abf5a21d94ac3bff6f3dc0c8b710f9c3c9bd4fb91934b9ac225595b677258c99ac6d47003b35813601998d31b294237f231b3b3b85130b76c857ffe7c92b70c112a102a95b3418efa83f356d6c06456754d75c5f0a70520bed4775d2b4b9977598b7ad4cd430d17fa7ae0dee71ee42a2ebdd595fd7fe883c2c7de09451db5341e977f04b22d60e8388565abfced06dbc84f213c38c65a87135867d8bab1628eb923f997045488464102125bff93454c4d4b876455180d647993ef8a7b20bb516350da2fc0c42062bbc492bb32b137c9775adeb4894f5590ef5a3b5bdbb16d8bd448d051e27ec7c5162d84afe595f819ce59cf8d1bf98395967955ab6a72deb9878b2be797eb0a60a03850b3a96468d544132476929a1c4e700526e359af571e1e669314f84cb7f002261ad4f2986b254883214ef317a6e8cf3fff5d8a8c2919ac2227e56ed5611f6b3238c46b6b5249460dbdb987828eb9c0a370b134d59409ed0cacdff3505241a824d98f2cad231706b3300ce16fdcf8669384776e58a63a6a260a65ddbcb6176c0575413aa227b2080b14745acd7b9255b454b34cd613a6867e74638803fb6fa8000b334e0e06b340a3ebcbf34f4336ec20a5b42eb7a00863aa5595d2823ab71f12455566c9ad379634f8b95e0d1959ad4309839ae2149f21889555b7905a41b6d2f1a03688de3efd2aa55bae7ac8b7572a4a4175edb8b6442fabb7d1e2121e34b9baf575bbfdce312a193ba07161c8b87ab2b31498a726f021fb356c176eb31c5d0d60b1950c4fc2ab1968aaff9f6cc4bc6dc2fa0ddb0f6e945ac2034653bd42d2b9a778b8145b651cca031af760a2e948fe92d3f52a5243084b86de2d582ae287c5bfd18dffd6d4f67f6d8a4b4e93b5d28cb9c447d5fcfdfe9c1a80a818655433830787db41dca8745d93e9a32457b0ebb9510982ed3828d820ca74bd86ee481ded36540bda29d4d0b10b34b783c4db9922fd5ea964d86ab00583b57b6ef04319bdbe437c6ada4a9c712d940f254c166362d4d7511e868bf1f3b87b694ba58715d86fe614549408c548cb7e2708f1502c1fc1601064d083f204cc23debf006d41d49c86ca5f134f9a7541f023e0c4ec3f71f79ab79475b23801d3a04a70925a6d226923f4f53ebb4cc69112055937abd7a8db45a317ea20dd9a2a2d398399db38841a1abd2f332ee3bcd0c3ac87741abd70de7f8ecb4b9f7198e85068ab810689a5ed2c390cb612a92768f23012a35d19e29d270de071ce139fcb39242fc75d1fbddb37b7641e1780d2680860e8bcd2f0f0176c01393deaefc459f4dbf9e97fafb7a89943027b6c1d3307e03d6aa08e1407865284b2668a649f22ccdaf0d4e509a50b753a4db5af1e782dd96fdbf0bfcbd1bab55ea1605766da0b85a2fb5e1b407788bec6d1818d3573d3e2c13aca3d95f97c5cb38729836697305c911c7061178b72aea3988410e3d27ef874168164a3bcb232e5dbb15417aef4e4ca0d2f04723fb566ace8220bd80932f4430c84b26d75733f6d2724cf520fab6362feb58a2d6a19d1e1457bb5969c46c27be3102aab96123ca185620aa3082fc50dc0527381b75bb5cb9abc226a4e81dca7879ae89c6ee83a0b2a63f5e3c75968b14e4f59c46c36670c28c9ac820329f43a6750fc1b0f204a0ab76287398e5970dc093ca777d2567fdbed654007956231986f551399be0e09c1d60f224d6ae9b69b7765174b8f401060f9aff9151af514ee08e16c1016ee0bdf797129cf15a52287022c1b01a4cf7070d860724690ec3da796dd391a2a51041c98ac20b7a17a4f8172abc0ae30828bc303bd627c0b0286f274e93c89639fccf5c5c8361b586c807090aa8e6cabfd9d32a0c2be6533e1c94451bf0d326e5786ad205643e6158003b58aa251403d980959d5e961276b016134328cf6d6858e183a7fb4a0fa9192dab0579f70f351059766f4f5fffe48980b31653e03924278ebf3d347c9ab5107028a89d13b33306423834d0a2d35eb09a45bf3b0e47a6553ab1e2fcd406a7c8dc453c46f23ca93676a073cbb2d0f8326728261b5a4d5f8f47851e40ccb9639a7df7f6b93b3be25adf4e59f0424e238cdfdb5ff124e43abc10cb4581493aa4e85a489c1149e0e27317a99220b5ec2330d89fbb0ea0045eb3578772d9979fc057e1751f47025447024e456fd00614dafcdcb901eb2cad874d360cda23c6f7bcf1997ef4c660a6332e4353b295aeeb90199cba9bb3f7bbe98f6abfbacb1806da04c17f6516061b5ff512e80db4329e719495f7fff81056686094fef632bee6d20de29cd5a26341cea7b0e63e350f9b34e2f5bd8a1114fc9b7d93a49cbb35d10aba1d06125093b3b739ff435c6af9d5ff6e713a662c4702fc0c45a9401f37f2795c81db3271a9cc0bb265980a4c56381d5091d004da1de6b18837bb7bd6de04021bd291c1d90436a1c9ad883cbf39c6e4868365c7ca3481acf6a56ed7b50279deda8bed2bc82f051da6d3be1dbe5c9a130e5fb2da66dbae079732e5978b8842074c6a8417fa94f508b13063b8945e27f5d0f90308d313d5b9d6c67b813be14c154d3c5067f2c14fb3848a8df291eb01a86ec5467a53ef9a2957b9129416d829d65339b1379cd843c51be0da0f5ccfb41acf5bfc8067927431c1dacc346c2b5ceb91f7985671d8dbb4f0065a2aca4f2eed416fc4997a31630385f560ece39b58ed5d73ca29a3a4520273929e15a2f14afb6c8b18a6854d7b9e1862f74a7ad78578dee14e8959ad818b944cbf690a2b8cc99cd5ef61e5fd5843a5f6fce42abdf48f3cb307732ca0442f26b8bc0115bd34a39c124a526aa0a74c6fa5b7bae1646f2d7e0cd378a57db6453c6f22a7bc89a6c18b16a653b1d8e16cafa4ef5e8861dc18579f439f79d6becf82f771545766597b4fd6efc10a568a7cd865e41494f72b6a39779a91272029157b70429fdc33f560c60685f5c230e63751edbda6942843792504822a3dd152a612e52a35f029aca78298df70b2e71d270435bc717de32a4eef9853c44cd4c386155313d8ed62d627a76fac4522966edef00578d607db3bacc5f30e7be09a053d4ca86a3615fb02cf7a627bc6750cae5699eb8d5cf5ef2a5e52c45ec16a0de5dc3982aa1814aa6df8da539c630d39c59c333532bd41f71375c9d0ac1697e13de93d9ad1b05c369e923f4b5a75d26cdc83694b5cd7bbfed91efb6b37ce042ff7eefcee3041858c385a6dfddf918ae49b5085b4353702b06a2e0d1712e9eaefdf58fbc168d3d573c89b1b163881cd721f5ca7efe86c335a01f4a6648174db44f7a76198337922ef72d29d39f7050ec86c6d2445b95be7cbd091cdaa5a432d1363f30061b9322b4d0f45f3d386a24f4ce14f25b83d10718620a7d7a00b3d50820605b87daa7e16563218c0bdd481816260081848d0b70d1af4b13368dc81aadea22a43694a94ee81fde9993cb1e7dc85a8de9f78fda03c71654a50ba06041da676e43d39fe85481b29813628a7e58e9e2e5dea56055db2bcbea1773007f4813be2479d0aaa6f298a10c1ac7ba78d0197a90ddd4da82c0b8dda6c248670e627aa294d0097c52865cf8e3fdbde3b017b92429125ad94a84a79ce6884ec17d6854e51f26f9437f56363edafcfa0c9c5e3929b9b4ca034e4348596773d653875d636b0d60093e2e448ab590638e3d59d94c4b68d4f35cc131794fe5f7fef86825b63e2f9714568bce4847992bc8e2dd625bfa27d323b46474e3a0ace5db8e3203a5f270335a4b61e4f6396c44490f666d42ff8cbebed9a3e949ea773592337ab169350682cefaf2919d19e83f402179893d262d249c4481c577cf0d9eada8b174f20c270afadf2a526694e93a5b4ab11cd6fea7abc53ea11a7f93b1e452360e2b8afaffc023a867a7f748577a0985d552c2fe05591cc9b25111dce6a3a7fad79803cd6b7a52f72231ce3874df6ac4d6882ed0c84a6b17e478f06245c08b04d65cbb628e18dcf49fc158abe47016c0a6237ba8ee424d143982be96866fe7348c29117a757a9338652213e83aa12427ddd0f206a2196ef5c8362c96e158074ee44a192ecbc460b483f958002590d52c439a65920562f579d891c9f9a4916935148b6d1a94e8d8fc07806a712b7fff33121760542e6e30fc795eb8184ea282a215bfae55831cc85b66441e7c940b0a394a32789a9a8fe3825d4a658e83373ad68f980575743ead2690fa83b5418ddca630b1373d347430580186ef86181d13f77441edc875abf88dd701ce6c8104e9c839dfaa0f492f656102fe2cdc53b62ff9b040030eb1e4009c59449ae28a91d06096555b064d481eb24afc3f58f86a12a1b161ab85a0841db6fa279b1cc6499eb3ee82891e973c3e7a2829196f59a565031522bdccae81acb25462b50455532ea6d715c9336946d282751bbca7a9067b24455323ee2390519056b91098a48d0e92ec4809ee2568f47a49adc6390bc4709ab0dcd22cf1e3c538a9cb9d4741687ff4ebd9c7ec819c0dce0460c95c9537e808ff86146c00f70cc1fe65a6d067cf6c31ea80c484f3f5c6ac6d4d08c28b42d09c96ddaae11ca7655edc963878c548722558c208a947b8d22476a2796e9306f4811b35bf3c38659c94e3b2bf29372f60086c09bb5839292c63d188465a4e7bd02efa7ce82c76dec7bbee05e8145bb5feceb9750d9b7ecf117ad6c9c03aad14f2c4525b16ab8af445ec252ce6f2543de7ff5377dffea80cdfc2bfca4f757cf462c3a7ff54b74fc157cd0f72bbc01dbaf9270ef5dcc9a76779d46965b6a02ed37c0c5e23c68e676151349bf47a64fbb3a2fc2cc73f5e133e09b1557cfaf3f7b0862573381c0ece2a2eb62bb3ebc6bf56a5b572e086b7921b8504340caeae23b6c75410d4b117d569baa4bb724aaabeafe6226fbdeccf3e997568fd3fdf630e9b9d90a187f767fb94a2e0a902fe4a771504e7e9239d9888846c6fb9cd15ca2c6351f3c9c399fe12245fb0776b688e309bd188e95cccfa1123de979d084b33629b2241a1f33a4974a65c03fc9157067b80904538d22268bdb1a7b0ebe81c970c3ad63059d32d44f6e1db84f70011dfb90f0e270ea7def80649b1f027efda574e862c7cc5bf4e13974851ad354bcbddc81ce2cc213ffdd70f480c2dacda4a8680c375cff497c0e795ec1babcc859f8fce791a4ae6c37c9d1c873a88cce54fb566b643800a4edc54c4e75b1670f3a88ac3874a7ba74ea234ae824a61801aec7e45785db59fbd8ab320e557c7004560a9d94aaeefedbe45c2e299042750411b0e13c345c19f88c19ed51ee034b1306035e3c4e6ad16908fa500af342214f88c2fe7862022c08bd9d49aee18a0b854221ce4a468c691c86622054c9490391011cd61f3d44177318b3472cdf1055aa780f4011783beaa21b0d0f2146bc0931b2ec014c88b9a5cc3e4bce17bd0ad03baa8e1fb39b08e1de4848c6f57ba93ed51b4045ce98544adef3b1159780b2735ac6c7e59c89e023c3373f8dfd0060ce65e8af59134e5bbe0ec8f2f51af29cae79e323155455197ba1cc3541b68f311649474c015016e2b27ba5514adb916aa80de1b44921923b4dc6e89929f4413b2e79bdb800396fb96e0fe9e6097692d6282142b8b1a1df4cf0ad09fc4940a86e882b50d62a4bd3a6580b2cb383b0a0bddc993302fb5ef840b9e1a99ee98e2f8633628a68bb88e46f4c5e48b5ad829919fb8cacdf06041bfba8a03a06e9c98e5bb5cb24a694ae47a7cc9267bc6c94d203805dbc7185032b3e5acba11918c8e3b9373193b0e8a6cb7da67c964cfdde655502c7e4eb8f2d2b6c7544b5e5c16e461ac21750ee6f8913834824cc64490cbc1eeb677769ab9b3cb7251b968c171fdf81735741483d0443bdb78305d12095730a6658600c54e93c32cbc3cc276b4bf0f58032d0f5dc3c6bd544d568aeb97040f6dd1162dc109f85c9a81366696d295921a3d6aab38d6c8c2603bf2ed692b75650537f41d3138c56c0e10cbe3dcb344c32f62c4ef9d96be16423f794809498f5be99cff8e6783d5cebd55d523308da8b0c0b91f046e8bcee4fd951cf21f7b37bdaf5314d71232fd421f0bc1e2b284cc99df203b65a37cfdd0e870f01aa6242a3f1877c8198536e3e40f4eec35d22615b76cc93d869b3fec308c079b97bd912173a600270b1ad05e4796f38ac83812a83404c19181b49e5fdd11301c5a0d1b0ca589961695522b9e2e151b67231e7a3fcff7a7923648e021a446714b4e0999bca3f85773b48091d3a4b03d814160000808a8dcbcc4536bb00cab8b213494f3dd9b2da74065d3448a1f84945b6e6f709e1855ec316908491a07e72aba1608e2d95048d18af024a5c193f365aab77c123a83f0e960873b83d053d9aadaca2a143b7725846a60530d2f088fa9bfa43efb7f4e91b8158b91445af325b462d272d8e41e63dc5fc1fbc122ab5a6902fbae97e6e2a9af988c7a67a846d557600c3edd84a992d9e5e2130df027ca760c5034b51a8237254de342b456a168f07293676836dfafc28478a3c4ec61baa0e911a122cab1b7868d4754bd5a40e00ba208a9e154ea6ec57d0fe4357b52a8e59d4a612a94ff2a1a1554f2d0323b09c11f06878e0d402e9e86cc481f6d84bd33c90b303043f95ed2f103386caeef2ddb8233fc3ad71457c4106c50c6b56451517a2bdef43ce6c14350c0d1cdaf5319fbe0e306067b2115035710950599837310ecaa9c1028d4afea248702754d9b53a60e4cf1e39d5c4468432d710953685fe2c5d1cc378972b05103dfd2ac5b82b2fb60ab3b17eb03c63a3dce177b8c7a5445059b03d154ec5f9ead8f2406e84a197ca25766258839547eaca7ea595b88561af9a615d18e6ec5c5274b2b513d5f2b85608831563aa96b6aae56fcd0191d82c28143ad5641b91388d1a435833a5c09d52998fc8ea812a392b11530a233adfefdea0e9065b4a88cf72a68bc1ae8eb4eb1422af6ec7a08f3765b5f9e00582ef88b3d84001752411869454dd6722a8a8e4d175f3fd2b0f3483bfd2f2f6d35fa05d6ac62f11e001d8edde625af834db157de90d5bb1424e107ae98e743984560bf96f18da4f504c8c1ee65c647b64c15763f1614819a73a084a14845f99f460de0828947e3b5ac97419ad15172c7f08486ebfda3e0f3c4ce395d90541bc9329d01300f65ce9c04791189976b403314f57027a96a33580f6f14a127655fcd56177231f0f954a27c2a409772fddf871dc2e02cc394ec93bb8f575283f02877ee574115d11560fc9d8c99de09f44857fddc2dab6e158a52474ae4f2a0af5869e5a70025cdabc7cfe524786e1a3e73ac138464ecbe1ee5222e52d4da22f51a7e2d1d5bcbd189f225e50c099e10b85ac63905d87670adc821fb87617545f81f436e5cfd1e63f440336a400c78bcd96a2f0c31e79a7e0c9da0de569c60c90e233680a38f70c832b7cc34ab74c04715b080320915618ed61be2001f33bc615c32fcf07ad5053f5eb9bfe46db547f6321385b085602a6ae0e10eeb14dfb01aca0fb26e4642f6a904d25cc0ce202c462a0b872de5f655cd6201ebbf53910fcdfec532f0b1f2ea0672a7ea80d93844112fb69fa94e9887226fe2a9b1ba2fc8b7fbb5716a765f33050614d839b71b010498c5cf77dfbf2dbba3e390c299de77bb680430ef59988b8d2c8dad7613ed3c44c06b596cf274c56d3e814bea80e476935ba5bc326028613b82dffa09b9d5a5a608485219cdf492df852eef827df40c9de50399deb0c81b3cd6c62ec649b838b3b068ca5a61ea22c4d3042c3a055e3fb4a6d8d0a321cdd48b63d3a5577e88e8c6ad8fae333b943329d4fa4f4f6821476bb0b5126f0ceb927336945e3b275e44274ef75abe8bf1dde1b949c9ce718638557186612290bd97c094b8e5818511b98305208a4242bd5c54e822d8ee4c17a30e6ea4b0353b1e9f61cb7dc40b23e90a6228543938e7c9714cae678993d2af06bb30869ec326cbe416e155426d717cd08cb92a86d9fb9a29649e83e0929be4428d0a1ab5bb88815c3fe7075a4cef2c2de852462446f8912d7fe8d3de03a8e3d3fa73beebcde710dae6dde55c400d08b04ff46245e2940282728dafffbde789cd14e03c5f5969f9eb38ef2d31082180dd4ce68467292281608d0e6501e24f412d48eb5ac76d4727463cc2938f5f714e15f72305daca427b892760feb0a1821bf162e2203c42eb9ea8b88e4dd56dbab2927e483e95850bd434dbae8b9200a0aa3b9d420e8199a9673fbd392725a4b0d4eb856f0c2f7b689b83cd26fc985834fa44747c22878f16f9a3fcb53007c75e06d90b7e547436948546d38a4a1ad61bbf14ffc4501665e420591367e505f01928224f40157fd4de75aebb8917272ceac1f671a61619b5d758a534704fafeaff4ad0030e2811e818801d8514300b37af1e24e88b8af9a422d3c72ae2865fd01a4c8f063a0895ac580adc6c058e79e46214bbfd48009b607adade1c2bd1a723408d01214f51da90ee41d24e598899aee4c706c3fcb95dc102d405da39292be37bc6c05283ac28992fa7a12b6a355233c352334d2acd00ecb834543b3eeff882c59f185833f285a691d5dd351e69e2db4132098b0b764c705de525887a5f8ca4ee050f92c368299468b257816e3b5d853b2a5831f4929188b181e691350a14b915cc004948e3444f92f0aedce3ebd87a05f14eb1664ac555f61cf2806d646f468ba4688f34c20695dc120bd383849387c06df4b17cf5c753a634b33f688108df962fb68c0e7882a373ce4df3cad28bc1a80b3d09e2ca3a936f592cb19c9f7887165ef5740f077cb82e396032f47c7294d7e41c6eb6aab23ab331274690bd6c0358b116f992e9c8dc9b236799112134353de27ca8bf57488c93b9c738bea5f4d747d49bfe771d8c166be75135fcba9f5f1c44ea262f9efdceb9bd9fb29997f5314270b59ae3cee62c36e8dfe0c950d820a252673205f4b29248f9a7fbe118db58e3b527b5ee4a2e25beaa6443471c162497ddbb299582766a9589f8d77484c49ed60c6574c35086158315e2b46db79a3f61ce97f22b54b135f169a3b002713755e617c1e11a9d50a2aa1304d4d20a150494b1ef98b31ac450212b0d6114611f867e8c60a2d636f8a4bd272fbe0bc13a0e4d596c787d6eca00f76e1f0dba807c54be9dd06b1e4e38d27561bc508b08a3c61235728fc98377419887629160a5339d191b03a883659ff300c804c491a0c171d19b52420ec5f3f43a9c9ddf157770cf084dcab39546c7583534156c46f59581f88905460df37863e47e4b173ad58cd7ee40c6cf919fc2165bd249f721688931a95134e9ad5406c48d9f8743d13efe5cabf8c678cac09c4af63c180e0b42c489219449c659a0d4d8970c3f1ebd0ae0081ead0e862f6e1038b409e186b4acc087214af205164ef3e23516619814d18c1ed672d6123a87ece046d413c59795431ec76e38ef064dcdda0be4e15397f66c2820306a1ecfa49d39cee546f178a102e24df189f75e8b4c14d85d38a4c767448c19a21e4e7127da90268fc9e0dbadd11b311ddf56751e590cd23b94d13a642e784f826e59a0cda3211ae94ca899002327d678b9fb7fec1b20a017fa43bc991289cbf004f016944594d90e67d4da55567b2b31f8fd3e83204fc019796d8804131bf8840636b3fe94168acedeefab40d58fe481194402263a3202802348abb2c8a6208a57e58cb65166d9ba1ad5817818cb5742b38e5e6c0dc11213b780f1a2366db9cd0e2efb3eab81a8a87a8c3ba67dc3a7a705129a1479d138de326dd1e6c1a947e37a7ea83bda186a581ab1fdd4a6ed08252810a36dc63dd281b315b879a2154e6e4f282412ca55db118dd14a3aa54d36c70c4ccaf9713c61a0b42913cee350eeab94b32e4b814d8d34172d040efeb212b88fdc3ad2929322a089db8b2cf57d55bb74bde70076a987192d0b6b35a86dbcf8e186c10331be90a971eb7d81a77afd014490324023ef1db1b43cd40affd8e780127c5987fe20dca22f7f74ca537dc23f753e4eb26803bd01f91e263b0843cbdcea20f8d6550310e6f9b8818c07aadc0ed7ab311a3547b4cecdf110f23b164f70554cce571b5cc1b7c47ea932a0fd993fcbc61eaa368ac68924910a4eb54cec7402c99c59e7e88eb0bebb0b01cf8140dff4485de4a780c0773e5c964c80c5d7f82856d4124843d140b2d7cb90f62506d37b6d5d5c1c2abab1e5f74424211f6469d4546acb1d88dabd05634010e2ddcdcf1605c702000f958e61cf28ba38d69796c4ec41268cd93e5dc45833dd9ede75f95e0b1ed9de0345902cd7bc44377ba74a5027b04bfaf8083b92dc67266b65257c936651b540d8342ca2ddd40ba2d8f058067741fe2bf8f5e6e91ed0c93f62fd4ce4098e86ff0969772a445c8196ea32956370cde8957e40d86c84333ef303b8112eddb40b1f71c38846fe7f53accf414a0316724092210c0d1e788d77fc9e79feb6ef55eed51b02764ad9e85461a310ffd5ddceb95bec54b7576fc1b1209f1c50204b4a18f3ddf40cced4a2cf84d4812e060fe9fa9160dc8e94d8498285654032d6bb7a0d99124c0e44e4b8acec9efc8c42a581ef0be56cfee162509f00c490229263e5e09c0d2257e2c4134e4bed06b016058c82be84594530cf4e2762f7f5f2b5d4e570d2a07046d193fb3c3ea4aaca4d3426faa754482048553ba8b36dbd08504094276719167a93eb98173d0c6522441231466902001fac403edfa350f13b9962548c0107fe487ea0dbdf62ed91872a96076627352ed0c2c41334880d5ee5da431119c03169b6c81672508e93bd736a2e2da3281bb4c3257e23f3b525228acecb112e0dc55815f222fac10f478b2151eb46b6594b4d352ee688eda6225a06d2fdfbd726d7f91f592f5c8bc1b145f8ec299ed8c9730985bb6ad4ad9580998c185b3ac9054a159485228207d6b8c9520d6ab04fae3b8c9152b014f5334a43096c0bf764adb05e66448decd0288edb2ab97862907a68ca3e33f1160bdb9090417b372638d3a9d42532e8e1a67e123732871a83b69f6576f3dcf7583d18e9dbd40499a62887da5422c2cd19a6989db04da7bab550ac0f3793707c0c1d1891c4752dbff9db3d2ef62cbc63c120b2d727c503432058db2a933e6613ed19bc81e5b78515c8f4360cf3c1c7d512bf27356a1fb66d4e25332c50d9f90aa160e880c20a3823d9a696f69cf286f6fd41d9c57d1821656221586f86910ab0019b5ad0fcf669b9f8016258f2e3b503d70c6e623bc10b87cca770bee9056f510830a12d24a9f25a27b988b42dca1d275eb855b9d62a955c1a63f6f4597ebc9de337521607a52f5a44094d34efc44dba3d5371a5afd36521690c6fbeb9ad3a6fd91e6aa1efe89c5cfb67d88d177c596ab1343c4fde131f037a38982ccf15ff9b6273715a6b3e37f0b9901c233f3f6898386fbc096d582b33a230c570325d39a141457fad8504cf9d50c29f75dd35722d9430bf86e355dad5c48d61f2139c55096b0e1bef3a8135959415df19e653378693145be157262f805ce264b155082a921567aac1a8ef9a51f2704c8e3d7a4375751bfc7d86359f7c64cba023ef68f06b26f6ff1583327ef61092e8f0271b102726d517a3120a03369169fe01a131fed9c9ca27a892537d0fe29cd3857e5c06a667b104bb4619cc500678b064558ad942eab1586c1b168ca0974a0735b7a98c379764779c66827b28d0d7c9455d5f3075ed65013bec36adb3089b784b66a11f3b91c2538be31dfe173b46d32ba7c0a3a5fde78802f3132f289f3df12d4979502ba34c82196311298f265fb522ddf0d5404746cefd9a2c38fd5abbb0b1761675bd347a1bf2b84ebc31b6fa8e58d0fffee063eb0bff604d1741f7ddae60beeb428243b1cfe56652f76fe3ea257cfcfa1871a408e822c45950251990281a4de8e55dfe0023ca6fe70749416469257b989d400b85d80c24f90ca5a3c9565d0e986abab8cd2a949c915d440ba43c3b2816c5c88206cb652baa1dd6815d75c8dbc47beb018e1477512c3f2abeae3daa9a76dfa06a92670628ce7b141dbd2b0f0fed3b09c0ed4f29730e49fc9efbd2c81df6ca362faf93cc21e7549e2b2e02196fc2e0e4b16e9d8151e96a5fca6ca814b22d7c1c7aee8f766e5d535016fed3bb79a0fab0c776e5f1eb24870f6c2cdb699532c65278f993d70a5c264c3c00d211693ab39c89912594a25c621c8e4f7cd5d10024133904b1b32e2ffcb8044c72d7ff9f3e16ed87a9cbd01681c424aac60efb350ca2168817e4e6474c0b69c25f6f289175af667dbb148c9c6bb17adf440fbaa3816a1188f3797b54a301336f3f9b5c9c520551b1d59e513b95ea44790cbd86b6bd636640972261e5fc0ef22db1d78728d7cc33d9b9bb56ca857b2090b0c1d3c96f5dc58f0814c0a7896390a9b028149b5576116ae7c976c99d0a1b37cd38cbe3aec729a2e8616d8ff2b6c0c3e2fa13232b7f05c8d72205890911d68f12377c38854d47fca2f4879daefa6f85cb691d93069e998611f9c14f3cae672fb98b9fa5ae46c012b35b4b373dca9986e666253c0f765aa7b79df101ca524eb227c15b631f9f88b63ffb5cbfaa428be08f3d06f334f4113c2fa80cce489c2e940086ee0df6a79125265e18fa8225cd5a47fc0e003b8c76f189a3eefe4ac454dee5252e3392e2d086abd146a53b388331865d711903aebfe6914f5eb9fb20f1798c5bff37c100e4f0e6cc07cd6d1a384a2b997df44986a12a4264eb309820ad6458577e7583a6549ab14459262ffe934273927676c0a503ca797e59d4ead959e9af769ac7bc7481eed700a316abe50e3cfe3ccd1e7a2af52a7569502144d5489bff15962e80125600252a2c4bd1d84d3035daeb417384b43cd5e25bd78ca9d5fbfb717b2b0dc74118c5cb01c81feb1a8e09db6cc18571180ad959de52af67235dfe1ae7f61a1c07952e96ac429a5962a0a1c4d04b75526febab3585d1f63fa07bfd0cb45eb0aab7e3e0098499f1c9e62a1ed24b05aa4212313e62d28dd01acf682bb8f5f19ea6ca938d00b12d39f2c77cfa3ecade51823a8c066e280192890ead607065a0af63541c0933697736c4cc19dc52156b400cd8d32550fa571f05227bf67a4e0d6e5102354c0e6d63898918296b42be4b6dbc0c43a96d9dc442cf6281347017a723d03056e5db188712bc0a1df82276dae9c6339e965a18a12d6934bd1f198302664d4d0a2193b69eb26f5d3864a24db2d611afc8f3e68b6e5e3b7c161b7dbb78fe49c3e8674be8cd945655724b2d4f8fa43c3df8e4cccb7f74cd3e5ea83dea6dce3b8d1108266353c9691247a02d86f0f15e4beb0fda98793db0456bd612dfb87ef61ef0e6639937a551d9dbafa5a96f572d8fa97298151f44a8f1af73211c6cc7e6470f60c26c4910423f40862e9e08d9efc0af5939546ea0e0beab8084d1094c4723ffa3061ffb4e37ff2faef70fea79fffa77dd7ce0f008857e0ff577ee60ad0ffd97e558d7d42977d96aef52518d9f7dce4468958ab124308663091030190b4b48173fa14f602b9547fd290b2ec2ebeb2544075dac54c5a5496d5ed2f1305d3dea2cadc8d01906bd0ff317fd07f567be89f3b68f96764f6fe602b5ee6181f44cf98262afcd2a768593abcec4aefd2a574f8d8e3458f59853c2b04414c370c28f6f8fe0db4c6c7cceadc1e90e99e4097fccc4b76792b6442441ac21119fb9d8fd36f7bc854da04cf1ed997b6bc737bdc155149a0b8e24aadee5769548437ba483fa05863737322591f4b4444ba2cb7a4c759ce73d4c90c60917330c1cf61b1713458fdb8f7ac22d437aa886a491d1b1dd67e55dda739ba0fd29a05b24a07683507daaa1fc85507eeffee59b50c5cc5188e20a82ee540422fd130a49849682f6efeabeb4a9945e76250dfe562caa9908b99738b8b18f30817e743e7a735381dc47e3fdf5761883f9300f4f5497a1beb88e205f240223b08a22804cbf97e953ea14205ba42773774f177204ba50334328b88719a8281fea8c56428f85fe01d0f53282dc8d44bda00744268e208103d9986f898544ae58e4940b6f99fc9657f0807fac6ab6a1959ac2ea23ca138c700eee3b295928ab2153f7e64ab75af638bcc10eb5098141e271f2f49c7aea3f89de7690049a19ca48085ace160e64f5071e847f9af60272e634c34cd42bc896367fb7339a571acdcb9e70a3ccdad20fc1454af1b65ceab4d1813153f09bf54bf569d1d7e629ed60c596758d025b98a208d9eaa4a67c508ed671822f00e9a45faffac59fa070d7a36dc30a6821ed7295d832ab09ecc559a1e85f577b3f22eacd880f0693727289fa8531ad45727cc715da78c3afd8ccc928b354506aaafb1c6bb706aa1376711bac0c89a13a48491ba62a4204698604797f9611d108f5f65199fb9a81fbb323938711d055118022f4fb9236512b07d973c695d8afd10fecbfc29f43f29619d2450b7858e69c454c5a5f67f6e2368962ab18e148444257933256f499ca5413b33431ccee250fa0de02b3762e1439654d0c85dc5fcac102d9620262e974012a9039c2b6f6a4586eb36ef4799f70fe9c26f2b78a838c5bc014320f55543916663c8784c01e592f6d37b65631a70cbf6d0102ea362355e2d6d4a27f775620f6d21115c24425fd7f190ca4b0911e67b0c227aed4220317e60a450a2a1ad8c25a7619fe4c59a008e2affd8100ddae8ddfb81c488476fdd269249a9d232bed5af8586ad8abad86641a723915bc8dbb3cde1ab1cbcf6bf8864149c68ca14ee45908289dafb13ae526b22f1b40bc3eee21847ed285171e8c3cdc03c582ac4750f1019ae5de58732dd2bf50b08f8d89f2d5bb6bfbefc92cb654cccd1999eb0fa9d7a1012a78ac861c44a1b13229fc9f19faf90bb34866255231f1d015000324d5c55db56328826ad9defa8d7be26d4d6794175c8ffdefec990732e0dbaf368dc173a5ed347b7acb680a639090da8f8cfccfe207018711b0008e638a403a8adfd26fe66a7c8690eb68c430969f1835bf61a6b07d775486b344f3d69a29194fcd8efc1d7078387798d782f05619a3b89b9faae65c2472ccd9741d53d010c92d69c805807014003b11847819d898448fb69f265a2497f501dd8b21e03da7609c91d8892669f0f47e7cc5160468c529ec1f2166d3a6b69aa0c0b1049f463637a04d2c0cd1fc012f9005959f8fa9d03273c056c606167f274c001fa3a9be0796481b3da95a266309b26dc3e73033db68013c41d9a16edb7ad9a04eb05b4b4f6912ebd5aeaefc9a1fcd7db799a61d4b94267f42b6e6c29438b90d5b37fecf041cb59e56faba3980841c5494bba3759ad4a80b81fa802b3b6c75cce1f15351034b0ef215a26adacb25d71ef7ffb968ba74d99b0f3ef11dcdf0e76d863199d842ce071f9e8d8df3cef9095a32262d0be6f7872143295e8447d1bfc4ff79d29a56de75a5eab42a4a9d2ec5d4bdc52f1a0187e0116a12602b085407fe379e32ddd11e90bf51b0b08d0718cdb4be4d946e6e40a7237687f81da6cfd28a6c09888c75eae3a0b567eb1984d092183e60ec3cc63f8853ccd35b8082b0049d5e7f3d4d6da23f941b15a641a1e0a818ec33a294b24673252d778a19436680b2e9285a998d0784cbf7f510f5523dcda03d65162398a3f63fb574c3459e5baf01398d0a5dabd70ae9e83476268c1bedf4ef813738e29957eade3b4c6595770a057b5541fe389424dd3174d9a84bcba5782cedb8091f778efebc55e6ec3e058727a987f65666b65ce1862862b99c05d08141667956c980f2aea632330dda2b920fdd88149900a05b555d3315434ed55053ac04a1ed5cb851a20f79d6262dd985631be4ce52ff95283378d14ca0a946ab562c78540662be267c0b2c49c45a793a8e029fee3403454897cc6198251ebe0d43facd0346c5689304126cbf2041cec4d661f42ea35e659d30a6e8130acf4fdea8a6c8b71a53454a213813073c8fd9e231bb949b230c975c8eee325fe19fbc692b5bdf1d2c73e48763a3ccd58e9f08011fe551f48e60f82beb5b2e77a695034821143bf5bea8442a1c99610500d5606afc943fbeec70f3b0147a0796395d550bc2d722a761fa5a991349585bb771b4a9c58b65c6a861c11252c24ed638fe6e3786152efa761f45e5c69515511445a10b2e2cbfca31b91711750977fe75c3dcc9aa1882f73666aaf45520fc86f880ab23b333b4f0c5f7efaf1e34c3814db21fc987e3314c44108128bc9e1cfc62416598d9e5b22a2facc35ded1d2549bd90ac143837195bc6e5b78b8aea94c4d00c9fe289c5358d88630bff7f9195f030ca8c72c93e2e5190897d915c364d701f41ef4d844c90877033b2a5603c735ec8f9bed0e9ba82818310d77278373feb41b74239e30a9e00196cc9c5f4e33c0770312d666f454984861b0c0e5913f8986715844f0efd3c24f73180257b58a83684ece2e3b0bb31e208189232cd15979e6e8f9eb39d2fc5bea43501ed8ed447eed446eca5a78b5938747ee8f60adaea49db01f315c8b8fa25cdb096fead6c6a7882045dd09fe99ec49e8e3a5e8e0894dd77063b620938eef6bca99970a3bdfda9153f244c2368920c70de4722632d56f2df3d50364e6ddca01d11336a5c2a44de50d964f4f98a57563f5a7c105d4c9bc056a3968f3ea09edf92940f76108683475dc2c11a39b8d9b3788516b510d9d0df00f3962ccd2fd6939c91b244b17672fc7aa278061917fb253b40ea378da79a38ef0b999afe64737142c26d0ede63e9a530d6b71c89426a83d38bf7e4223c783c6820c4c66496119b5518fc7b287dddd687bc9b809043cfee663b1e357832a46caa5434ba57d10a17c711c966be6b60564ee0eebe0fbb04ec75cf1e3058b0a50892fe6712acaf2e15d0eeca3df41d68487d70110f78bbcdd0fc2b779edced4ff9640e4678d0b63159858d2bb9d896424d5ea1fa284192c8e755fb78b74c1726d998169458bcca6dba3cce21896f5b7f09d4fee16e3bc909e745bf2b281addd452e7aa1dabde13651847df8c5c7dd940facbe65eb32ebee8b9a171c4fbca9a5a5855ac5ac87338bf39b29ce5fc94a4cc03f2b69db9888ecb956d1f5047611582ace6fb132ce5f0797db6b859a7ae18d7d923df17b51294783a9880e919bae8d5af82b7c3b1747a94fce27aa5cdd8ce4203de2ae14c29e4aa1c5c52ea0a8cd995ceba896b98414590c0fbd61d167f8fe21134fc849b28ffcb04982bb4826989027dbe57770d847ecfd1a02888fb78a30ecb25c84109c0f7da19668507bd3b08fa0d07c06f55288a1c420774731b1698e8b14b99f31b1fa71d83b4052c8a85110f305e5e336e4aace5261943cbf1f195da4238f56e3c391ce0c10a48d42f6def4bfa1c17ca20c189f4e47699b2fdf62a11dcfb342a856148a9375e20c95019cb9a198f5681d9314aa16408c247cbaa094da6eb91264953a1274693aa6f51b77f69239634e197cf8adaa805d058bc5a367f2786f2ba148cca64237d294d16ceec83bb028ef0c0911113bc286b991be06207835fd607f5a7b40750937d21477b6d60379b077c123fb5fd34bdda586431b17a2136b84b5440afc1c18b1cd012bca49242603e791099cfa52c2b86a3cabf731be5a101d14f143348961e69f25623f49faba9422d2a349ac2fdbc21f267649bdaa6b0df697ca8c3ad151960b6190fe4700e8b979490bf55b841ca62a66d946099a41b93bc472a0bd87219e4458b4bffa4468d3933476e9900a727b438810e842f2413c62d4f52579585b090e2f64119fb19d88f881c55fb0a2c9a7244e36b4346c4132f83325c83e66ce1a2acc1d4d81e61d7231a2626b8d5c1419ec87c676efbe6c0e0e91cb77c6ca6bd7656edb54b74653d220bca1fd912c9176184590c3619ce75033c8d1b6acd0cbc6dca321287e629268bdb4663650f3be54a796d287e8f21d6dd66c6589eefa527943eb9b46240bd1821bc73078fdb22947a2b065e8991a26e2381ac91a118b427a02d1204e35d03bdf2d96a36ed61037d60f85bd48b02afb6bf3f63c9c0ddcbe3a9f243c4038bbc1cd35344e9fb8c955a7f403b3da9051c6bb56ef61c2f7606162134e6f73e018bb73a2eaeb257a5c83712b8d03df7268efe98d776c65a20c35e989c2d017964b120733bbc6eed16bb8bfdb0de3fdeb4b3a5ad1092cd5b9164553d52fdc2cd6ce04677d43357429348b18ea7ad65a87f50eea6f64553330909324cd0b4e5ed921eef5056965a5bd2ebad30a00ba087ecfa3247a424a3197ea461e3949c910467e8bddfe8f173a74e1be1151ac8a02cf4bd87e3a90b219593b9177aa0091c92669db7f7b4e1308b829db0a9fb15d630abe01a579f12afe8a4d27384c28386353f197ab21e2a849b7640efd11f0cb0733a4826f6e80e1bfc1c44b010d53c52afe8a711ff60e5c67aa87c33004acde94e0e618d72599a867debb07c563a6bf88732e3c55975468390c27c9fc11a53eea3d50a003994ddf03934e4263594fef8ce577871846ed731c6f059d625f0e2c44b4c93aa5ff2dd0277805dc4757210aad488ebefd161c9221e0f30306ced824c6150c99219230fe54cd16a47a8891c7445cb9d66eb7c8326a6ad8500993e91e8f672c6678660dd6019a1ca20e8986162c0553d0d4e0acd4b51af4f311d55a17afec3960c9f27f3ab81a26d5d583164155f6e58dd135b79a7add72719b878f94c8dcaa4a847beeff746eb50d3ecf1d51a3170bdb496bf238fb5d10920e3fcf19c8fe1673e3b858142742064eb5fdbf058ba45ece5c910a4c33874bb45ccb652a529b0e7294277a87cb0b535a12a8b9eedbc8a2b527d40e25fa6d4506b7435755c3f2c2d283c66f2d962d8c759d1a315a1c2d278dc6492b5661ee9281e1c8a8609ba72c09965f96a4a3a3fc45338bc97475ed355888d7a01e3fd3609460a0b052554f208394ad440a5c54eef98bca05488a8d532a76586e9e934fbf280081ef6a444a178da8a60bf0c99fe8c39d712d50d905f1e3a852fac43a0fb2b57c69205b4b6876fe918ddbdbbecc801727ce917fb640743784bf5187860d8da6d65610326d3f7a2fdb73a72e92cba492c5017817f232e429402e0da2cdda1f70a8daff8c69f04fdad6a9f5e19fca8326473393fa3367e62646831452f87139afac4eab90171f72652ed6a9531abd2fa9a466cd00c988a7bb51bcc9179fa8d6da468de7bd178d36c2f57b1610d281deec704b4036354ac281e4541fc9b63a850421f5d1d32308367a07f2450611393fe3e097b931aadf65fa98a3e4430a66020c5f59b0177b24c0a4491b60483fa15fb6685d78100851d584bfbd05a9b06ff9f367ae694e2bcaa72ab91a8d21519dfe9c3710c5a8f2186a376cef71ec52db0887602dd7eba8dc9ff3455d21b5838eb6acf937065636e6cfbd43de8e9668f64d9ca8068eb9a21001ac8b47494811e877b79b8acee9aaa91ad68c768583038a8e6d1990220075890519b6ae67c976552af71983f391d8a5bd8a5b71d1cb175b52a21260ab5f5ebfb410ccd155e36782eca55768d0cb5d3335255059c0b214660c6db231fe581adfd196aa97daa3da5ac54f0fcdb354fffabb590fdef9e978f0ac1a6c2e6d43bffa064b157b212cd13b6fd5c0e2d24559bdad272d4ef16d10064fc383de157e0ee01c5bdc53035ddd0cd7d2fc2c8aa7f9264b1368719f6389e54ec5f5014c71e251775d04c4d4419dea20ff88c3b44a11f637383599c40b7d1fc026843435691532ae810908929320f51a8fda32b9ebfb43196340f23dd12e4b901184f225dc68c1d59ba4b64ede63fd001b772728a80ae112cc274e073929d394d108b77ef63abee5dad296f7d2fa4f35c5517838aed8af2b70f70a0dbf0abc3f3e2c457c2f4f7fce88ce2264011d576e0a05961bd04ab13b778414aff71e6d01375e5cd8c96f18fa454307cf6e4aca295fc8ed0b56cc933d63af6246f88b429182b727d05f6c0217d329442b3dd9c7f80ea84c774f63f33594d9a1c9d3bafb636895288bf7ce36ba51ad362cca69fe684933a94090a1e11fe095e29bc2510728fb91ac0db22d7f5218e6c3e382c672ac1d33f32583067b01404d260a41d28e6a8a7738dbfdea1737c9d8ee8ddb2c62e159bb38648042e8280306f2732da14d4bb1fb07aa912a4dee0b62ef3198416872f2b0d868049b3321291d7b46a745fabc323bad622e22f7ab68c8839bb3823662d2e41212575d7ed5fd51adbd3eb3c89a4c8574079249ec41ae389a84df452d80aad9fb78f9ea6fe2429b155eff6673ac93af4582a1d4eae38386de4e6451cb989c437f4f20e49e4d967b27bba0ddfd9d86d51844b8bc25c5a6e87d57294a0fd65bd99693b002a5c89633de4fdf1b43db0aa5c87151e2826b28f24b58c0cd39efa9c719ba21e7c566fb120d6c9de28d8a944dbc3ab6e680df10fd5280e003902052b36156417efb410b67ff0151969a2ac1809c95d3c4446ccecce3ab670221422727723b7776ef8f1aa4d38bd2df9a4888375d1c827434c424923c4ce4b5033ce0981552c49855b8850689ddb4ec939d05a173ae4ae23c9d30f21d481878f51f476401d70baaf0910b189760c4432886c91192797a70d7d27d97009f8df0b8e895f33fbe0de9fe1f797fe5f25c548d562e4c3a4bd66183d0a2ad5ae586aabf05cb3d16cc4125110b4e40c6e3e52c7330a40d85bc340e68545be4153fafdfe458e1453e48a54606fbb045f82d2c0d540e1c3ffd8fd0c66ac7471388244a9e1f5f39cbf91dddbcb1c2a48ca3a0dd75bdea7a01d0ced3eaaada4d6262958377609fb4e74d82afbb3acd9a008e7923098a90d3991e3fce711bdd9e9ede6cba687ba384438b4179566ff005e434d0f61cac605a9c47a6a5cc43754a1a298f8d46248badcc6922e1a1dfac745322edda6229cc998708e6dc6454dfcdd12153e041d381b13232ed8c34952d9d12eaf6e59461b261fcf669a90c61f7834aa7c5946538c6c755345f51aae79d6df78229cab6371b6c8389d3c684ac7a7737c5b2a577338ae32816af0b49196ef7cae0b78165a2783571f7c89611705ea1fe6bc53df705c022741146402aed02b746049b8b733b8b571e441869caf6b0ae19fd55369a708e6fdf05e1961581257f135bd6464efffde57d046aed6d1d25f2cea2bcea0e7d119694e9dd80a5a3fe75b2a5e95c95e68fd4c1a3d1a03983f790e6d6121ef6f3b40d17222e0b02c497b95e75a160bb7ea2dadbe22062d70b9d0847bf76d42c6002057fb4bf76f8d9a58819a2de49865f314fc7ef928eff76362a7d7336c9c2a33c75f8aeb0278ac5e15062a44608a1c1b0e2381191e39138634688e87f90a06bf4a7f7c718ab84a041b3a7432760c656532499246cb05ae82fd6d3b52af4e233d19a12ce10cea0749b683889d0d6d753c06d3466c23e1171d138b1c1fdf236e150c2a5ddb2a38e7ad18d066fa4b198fdea2cfe0a79cfbe8bb854bddd2ee950f2c37db5ca4c87d7346b7271b43d91194cb5f93d8493d6063f0e9a4b961ea1ffa83bb421d52075b1b7ed66b2342b2e10e8527981a27b9e8dfc4198143166e2974856841421a2c18b865560deb119ea7012276538b734c63a6c2856b21ccb186cf31ddda267771862a242546c36cbd90d3157f90ec84da4335fe763c02b34ad4f54d34324a1659fa1808ed00b36d3ebe8d24ca3a7d52c8d668a50bd2573d2f8191898524a5a2e36fda2b4c77ba3d5de02b45013abbfbbec5b571a86ff24daca1a561ff572f93e5a341fa9d3e4b0f935528a925c16d2be9b2722d8ffadfae1ad12fbaec9b89b3488c3706898d90afd31442154c1a7b7d370c02c838a7450fdb9d809ff76471882b44bcc9cff232e5a1faa8302b93a1e04c5e1534d2c91537d09239f8ae47908e5a6c033f4ea7f27cec828032aae4039b2a92183a11cd25ffc801f7482b3e577c87b815d07c3c18fa7a03aac14daa6d0b1b0ab83753b4e448c3482734875bbbaaa34ab34383ee38917a13aef3065d12883eba331577d4f706696a2bdcb6f6d2a443abd88e9cd4d45aecc1846698831fa2508eaf2adc5c9a213c5d01b2d3b77651de45102633e26241dcfb122bdcd1f2e016ac29d41fedc183ac159ce9570b34b9210a45803a74dee1f8feb91382a937d7a96813d9cc857a56b4d670f7145425f9e6a454bc2cf0ac8a96363aea83b3b86de5a3edda76c10f2f53376b0f6077206e93191c197016715178368a59ca43b27f1b2eeb4f179288484e59191031d4d654bb24d5a2aeada403e862a72c61a255507eb27d996ec4daa5cdf9e9b47f3327aef73665742bfef7d2e7337017c9f5b9674d118177b45bf883a08d544b44cf6d579fc507077aeb315192f737ae17dcf524463167a1de3c4cecc8eb2b5ff7dbaa700ea904a3063d3c10c9188d2726425e1bf70132dd6c94aea0e9cd0cbaf762d1b145f8641cba6fb927689493c43338626b0da856a9fd8f98aa6d7d18acdd8f6389e11f0ee801b4d5a872cce41e9c9acc3061eba0104822215cc4aaf5b4677807d06839a0deee00d4ac5f9821e184e17b2f93f779e727e3766dab4e78f6c45f0a20e26709ca73f6f392fa49f54a0992e97d08df23117a2813955a0e7f6f38d44a3aa0ef194049bb835fc453b61b8ec839e715441589a3c7c37f70929eee65f02eb691f32a2a6d404b863177768e2a31f2d63ec5c372f615ad5e82a74babab578290abc31cacfbd486e5f7146ca18d821626fc6d108a7a3a0dd44c749271484b03c9fc2105e7c806629819cd78e16c63a1970f9a4c0c38a187373f1442e8f32fa2d70292919837d4772f3174a5a13a9b3a71632a191370304c30f628f2225110399e3b49de8d340b0b03055f1a30f836ab4b22831abe821ba5b3406133c6817456504dd4a3f03052e974adee5a46354812b4676ed05521c8f60ec01f8901a3cb276c8d675ba750a7b267ef503581439848e9308babd286c41f7284012703815e0211e74a253e6a6d0dbc691d938d609091b43aaed94c1f608a2057aad2576593faa5c1e2ee6da1e2fd6e556aeb93feedce509740bf9e451633da1064abde23c518dcd5c0d06f8c7f6df7f69db857fb77ae3af7234d2ee6bde91b69c87aba727f4eaa160baf39f2efa43b5e8ca1209004df1810b6bf7fd2c48f6dcfa2559b1be442680f99e410dc3e28541e6362a2be45c8b22519a9fb63ecba5b692e0b2784147f15af93701d6edd46e67370eae5e3c3206d91372509e38a5d8e0a33468e3a2ad741e8e04df0eb016610021f2e0360c4bc2065e94a5094b72a0dd4a653ad04a06cabb2f88b5663db7bdd39f975e6b1180eef5c8b4e0514f5a823d5e114d8e7cfef52c99e6c4f8693da207f5402920efd06755eb6e123641f04f20451a999d5ce273c1ad5f618255db54131b5a88715d6f1facb6485a8fa4147b9a1a17ebafd55fe010a54211212f4ad25ec005a000eff91359de28a60eb20c462a55563d344753b4303d33fe180c067ab375936e0008384907282a45a414f091b8c1ddb5f5877edcf73dffdec0343ff5c6e41396572e0294e0948f2c06181354ce4ce5c61b742ed5d23d8e423cf19e3cf4168353b9673afa0d4a48b20954fb938401e685a04673dcce1ef725e46753fd77dd489f5c9fd9ae0178e0a4374a9321999dcdd55fec7517f8d8b8d6993ffff4700ea9985c33e8bbc595ec13ca39e01f89d32ca3385dbb1d41f942240c05e35784ad275f73a6144fbac8f4a2303f0fced5e5c7d2da73a1f4fb3889c3aa46310ce08d8287d008d156f0a14970667289f2fd0f5ddff802e4b89303f5d37862578eedbc1b120e129a4c8a3894f4661d647f1c4de95736805639b69cae97b4605ad255a551f25beb0c552be3d9a4f39ff9c0570bf2e20269283e0d36c67d7923ed36bc7e967f845ece33e26554c4bda270f714e8cddfe59b5c982ae9d598c403089b29aa197492feb6c0e354fd6697941c2f6dcc053d1496118e959435bf43c42579f609758701c93be10abdfeba1ce102f3cdcc0d9b8370b33f4901604e4b223f12a0f4ba93026695650f1e2ccc621c29da4db1b876fff03ca79be703a8fe7ee20b1580a311c0da8815031c9b5f3953a5f9a60a2b3e17d5998d14d410515af25d8ff3622f74954d7efe77d11a3eef16283f16e6114a4e7d562cc4ad839cefe46346712172a0b3a34f71778a434e89eeaf58e3ccabaf6ae15a5e6fe60b1a9654d0a611e97f2a6bf96a92d134f463705a6a3c14e750513c9e298eae657ef824c149c2f889cae583f011edff5d5ce531e32b8ef772d1b7413b656ae8fa5efd2689db1e5915a1f19281de0fe23e116d61662b249a335c5992716e6bb4c50ba7625d68345ae81bff84173ee782de83b6e0dcb15a16f921bd6fcfbd6f3890a4434e46be7285665232a6df586a56bb653816095aeabd7b82cb4031d10db85a3a9ae5c98936413df7aabdc42370a277f03cb29ec538106bdf00e931280da2141562de3ee281564cec4ca5b47e577b2f6f51c0170c1afefab72f8642e1bed87d48d20c6e42c72dbda8a84e2dfdf765863e716ed6eb9b2b2b447e03c05a76fb9ae959bb0be843b1aa94db243145dec6e484651aa66e4b3c58d6f988f153a807119055c81c8db728b387c5f72980d6d6a17580f9779bc6ebc0821506726f9b6d0c6cacb423d345b15512df2c93f059bc3ce50e4d0c1b421df68a45dddfe174093e6ebbd1708aabe07e8b254842c6111eef7d4920173d9e09821abd538e6be57e667d72c099754ba4e05c05c562ed377a9127e4a76caee122967aaee1c338864001afd2c8f2659c7ad1e8e9a4faaa05c6e684ae0755f561feb2b9d3b3795f926cca2f5a01ccbf0d2d25f620843f8369b861f4ba381675eea04f8a8868e79960e87d912bfb8b136c721aa38e5f521e98f7f704334eca3ca80a26ebb10e8d5a8c8c18366837649e5e0badb813183d09e3a11d28c07da91f4566ea78627874c69d99ca529ee4329344e3bca1098bb2dd43eb59791ed523d6718efe87a04e1c4e2b8c85a90170410f8708c0252f8dd11ab00bf4bafb5b7e0b962c9b74eb5e8b600226d8ce764b2c1bec76cc981bec8d8c2b5ae66d2ed710fc0c2fedc9479a0a418287fc95ba1c4192bc58fac828e9f4f8ab015903cb9314122282abfce34957fc9fe9bf50066cf7f45f1640e8e5ecb51d8f89209ea6a7ba6be2b28411c90a7144be868200841b24204b12a292009b0c6ede51459b1512635888ecd29302ebae525d50e58cade5ed4f4dcb8b8df1edadd82c4220e63e17f8dc22499d163634f08cbefb16780f00800aaefc37a63b80f9d6bd5a8171d481b536ba602845f9e471026506178780cd0e57aeb6b74095fe060a8550e590f838e0faefbb3c08f46325027fffd70d70607b3c509c3fd5e28ed97e151415c10a6bee84a2f1e0d33b5876fc8bda816d3041944460b61e68c4498d800d9716ffa631c8b60ad88e4087cab4eabb8d203b1c60a980655a0774ddd609a7c0571bb0080314f0c1fb23fcc084a334c16a43d83f30f4ebf9eded086955fb7539c2266843249eaee109881587eaf3a8e19a0bf42feef22ef9f827d45352f03e93894bb4df73b7c829044783444e2424c84641553cdc779b342df19011d97aaac764df4bb23eb03c38a1d3af343e6e7c1910c5aeb01ce831f209043b317060ba0ccc99303dc9e3c647d4858d40153356255002ea839fc9768f482b17b15bce08d36793e45c23c917f46d00cf2450482928a8cd2c35cfeb781bdac9a74ff7469376d65b38bbdda9b934a1600e5c2d5045a99a18150f5d48910ab4d20ba8fbdf1b0f464ff2a5ecfc761ef4484bb5b100f6cd469cbcd244f758172dab27741ecd3a4ce54a3c966ea8fc0e941663fcd87528b65a67043ffb780acd593624bcb5d1b9e8533c0e452409cd12a3409403d796b258402463350a4f8caf5a8560248dbecceb3f337c3f4b28eb3b8e5f79292e392c78a692b109120d2208ed06ed515859cdd0837eade8458ef3f822decc7f984250eacda3102910d38e6a259e2a4257ff644192a7860088755e863a564aa96e1ec147766b57ea7d9c8877b69764f10dca7d543579f6db14b1a8db1267922654cf61d91bb834727b8922c1deaa7564195aaecd7ec8f8d98d234c50e1b75438c8ae41f28cf8f34229c0c30f184859344d937137b090fc8297dfe7f1e9941b114db6532b8597add63db0406995e665d51e1b6c764ea4f35d398af183412d3d9d9ad75b304215d22cf55b51e8cf41aeb3bd0824a086ad9f3b8902a4052d7128c9208583821787aeab4315ba84a065fd507e522a3efd4e217583ea329bf42cd8bf7188d4dbe2e0c86f00514268cc34bab2ca5e057c31649401bd37c608a4e3f2b862fcca8c153a236891df3be3bb1c2b420edc31d3ec00f6742908f1cc06209f0e3d4e357dc350649748fa92351173cfd723e8098e9cd33ea41d5673f2302717d4ea1b1f577518b10493f02b00f8c159a7728683c12add5a0270f2dc383a63459d389aa4ab133b8065358694d13753d59dd9ed75807cdf95c78686751b97e086c13493ad6463bcf28c46ec65a45728420c2ad46dc7e9a543ebbaffdf440f3f4894a4a93d05636b7e40e0a4e82ed9bb63bbd8e267b489081629207a159ccbce4d7506bf8a664e3007a48127af10c7ef21934ebb359ccd63d226da4977dd49458d62987129c8dedf4c600fb218cf8986621adb64d749c5423fa99455c13fb2ff4db8d9936a92ab3d4ca1bca3c4da05e88a7295466b9f98d636cfd4a43be0caebeac734f863fb1520df3617d75797208bc07f0100593afda08f6cc3e2bea39e9576ea27a1a37d15d263347dcd3cc4caaee50de83cc5c2d77b3d36ba5ef41cdac92a4593ebded80591f3ea6e72f55b8d565b52933bd69d793c188852cada9156bca6f05d73a85ce5d32631ea78e26311ebffcbf5df5277acd6e15b33e67f465a1cbbdc3773003a5b20e4802c68da748e02de539711a987b0fa384b6f50c672fdb34cc9e8b20f3f414cd119e1e259101a0faf8ae36db1425e78cde47d89acbc502dedd625a6ae4e63ea2645a6c444658a4d66a6ae097812d2689d7d0fbb26f6d7f32ce38840c5e98395a602026618c4b5a03e6ed0844a8c5288d4b876de34c1ffe54fa08cd569ff57c0d35a1f045288102fda286372c5213ed4cf04eabc03bb522062d5a603d7bb23f70756a46acf198a2916c30f6ffb6d9e26bda1b848453943d1e0ac66182544e66023c880ffcf7ffed9dd935d1beb40b4f04159a3755db6520e3fb49fdaa811d96d6fb9b7945bca94a40c880be10b750bf5e53bc9498d855bbb1427e4f78c2f5546dad4d9c8972e412ebcac72944272943039ca22f48addddb78b05bca32cf8ee12e5f4010c1c832ac916100a6b059c2fb28ff931c70d89519e8ef5e07ed98dabe229bec45326e7cc98bce06437ed79b75a1d3349a45e318b17116aa4487bf6a59edc1187aa579e3cc9bcae96cdb20b7b7b5d6e8364e75036bb5a492084106617e5474dd05a5f763faae8e5ffa05dca7cc812f29c7cd49ebf08bf93fc433842794ffee4f4ea24bee124d945b7dc7ec51463135cf14145e6054a818480644033201ad0111092367956202b6eb23f28e68af3d4a588ea520ce281ac15ab86a95429ccede80ffe4fe583fbf9ce9fabe2a93b4378755efbed41ffffd92018ccb5a0d408c591746946ed3baed25ca57dab24f3fee74ab2fb92fb9d7fa73d2dbbc1ad8ba22845550a4a45948a28a24857f1e042949b620d6eb01d5cfaf5311b5ced29be1da683fb65ad0eebea24f1fce741d9ab7c470c5047f61cf72cdbc1f641f8caf13d1e4f9cf3331c858f0b4ac52d3c153bc5ae81fc0616c09778b6f87375f660255bd8f85c8b1c63fe609829be6c47a4766e43afbf3a50147235ccda1d7d5d97e773c9335a1b3ffbb9f2126d4c7a9a9fc40a9068633e96fd0aeaba5cb0cdb778fcf94d90cecded30fb18b59ac52c86519c162c636567c11af3b1d49ddde703a3580e849c6c9020a9f6a086a5eef784b33208a63d7f90103cdc2f83c9e952bc626653f914e3ece20b27a44d590b94aa27590e0eee7c0b1252c59d4f71daa3ad1c617b1a0fdb7d12c57253e8536697b204fdfa4e84ba93ce6d9c64bf76f66977899888704437b0863f96ba5d441650caf3eef97cfefbec91270d5b4165d775c26e70e35c01126d60301ec33144386e7ab9e23bef2f6282df47cdddfb8b6e600ed003f1222ea00ed07328198f3b3ff19571e7eddd5a30b63f3b16420ee5266f41927d97a76cbf839d09f482c052d4fc9ddf40cfbec42f8e030b60ff05549c58e45b7fec371d96a266dcf912e8d9b712635f026bd80759fb763e26423f880ef61b27d997f6dd06d6b08fd9a045e3943f1f177f2ef72d861d7650c42f3e676135b8f131ed27c98b6843fb0b7fde4cd6525ec32a1608fc89e690fd65e0cf6f5468931c3f05c3f660e01c502a6b3d2151574e7bfe72bda0dc5c71b821ab61416e8cb6a36134b8f46b91d59c309eec61bcf87bec3619c88aab9358a06670b36ede0caf4c4fd96f84b415426e2c70efbd4aac6c506eca5ab1a272e4505dfd412bc50e7092bf678b3b53edb1c01d4e720e35bb2be76ac597203268b949beeceac98d18ead29893efbc48e72a2c06d725c38c73b580dc2f6b79b696d97d98787c4ef7cf87ab0217b2120bb72829f0d82bff2425f3cf70dc949275294bd417bd13a1a7dd14f4432f0a8d7e8ad0d72e25bbf28a1ee42ac7b4cf30c4b599dcbfd943786127afc8555eb5ce4f4e6ac1e1c6dc5f3c7d3e9fcf7fbe664fb32ccb70b624fb14cd0ac9342de3626650a36199abbaf465d992ec6e045b826519a6ddab61594bfcd2d94d14f187ed66363b0fb4e72268cf31ac4d9005b27c5a86d9f696b2447dfa1608bdfc14fb90c5c6a4d8eea3c4cbc9d3875bca12f2eb3b21bf76535cd104fdfa539cbcec522e27ea87ba29e8d72ee5ea96882ca1872c352784b3566d37dcabd51e2875796771b3a7d79f5c5b2d52b316cd75b9aa0b323885743071ba20032768365d400da1427ccf16494a154fae6a09b11f27640e72a0375b9061e5994dcde2ddaa83fd1d6d5fda738b6acf357b6a0fd72217946acf1f83c1bd9e4bc11cd0ff136167d561c11c17beb2967d2ba44b1f87baae9921921b0c8991fd2d8cdb1837bdc818559136bd5c3244c8fed6489be4cabea0ec75b5b854972215b23f27a44b717ef067554f78c03382f646ed31da8bf4a94b1dca48f6b7291ae602ec053f67aae3502d0c94b2a054064a21b1c1920c919c8ce4036488a406ad1c4306b6f66b17b732b951a5921f1b4cbb9e8be59e6e343fc351c88c7381bacf76ddd90d109ac4020817dcef3a75898966a19db3a8444d5769b937263016e857f6007c4d62717fe3f1580b6efd2ff3acc5a1ea6dce72292caea54140292e0827844365a0215c8a0bc2c570280ec5a140a9ec66d866660e859dee97b55a594e974e369ee28b675f64cf5a30f303346537d9cd0bb27f105c4cb69c46bb788afde9ada57e71e32216cc012b930b1232c4d3ad0b5599dc8f43b929cb6992db17d4a7cb5a97151c8a0bd225ec41dd57316c4fedd994aabdb8f1e77f35dfec27ce34fc6935dbb80ece6efcedd52415aea7ef70bff887fbe1e627fa89f5aca7b5504ef218b9e6dc2f6bbd2569d50f1f87ca5a5d9a34aa11ee97799126cdaea3a4bd8e4d7bfeb1c3da94e8d8537b31f2ec5cd55e1faeab5a03d024156ee5c3edb4ee77b5ae56e7502bbaa45df3bf3be74761628664d72ef7ebcb32c522fb5b9ce5b4e7db6644cc596b0f777ecc38291ada7455d62a52af1979d254f63933fdd96a92ff7c6f6b99574e9be84c93e2d3bc64a73541b27fb5c1ec4a0d4b00adef4080cd0821b2abdaf319d39ecf21d97fa43841a748994f218bece8ca49f15d58e24fec9eb53c9e9c904fbb78e23efb92fdeda9a5873bff03a5ae563c75e96a92c5931142e4abcb5a79b82d7a72137d1afa377f592b6b39a94303735cf1bf0c3a29b6cfe8028085f82004008447a231809529a9770400dc3adcf57c543a2831d3c552d12e1d85e4d82e9ca01f64865970b1873c6a2f76112c9cf1d995f651c7f65f6728338661f56f0ce181278aa0374870ac584bb04ae94d97be116562b18a99e17e3225513f342c6ffc6b37f296ea52368d64ad699c949b3489e685e6449adc7d23f31d2c4d978eb4297e67aa824c1d7af2e77644bcb6960cc7d2b869889e76b89f44cd96734bc9205dd23629b779f9a4c2bdc29df56d16c5f63e6acede610dfa14d6c862a615c21ab4932819a4bd9e6d7f3ec1bf2964c471b304c612bb1b124523ecceba969744611525837833debb5b5537bef59c94588a51d944fdacbeadb86e900db7bfb26018b25039e55f5d8fd9c92b3bde6175bdbd301446ccef37421a21633b949d0fbac498817639af3a8734a441c99cd7941e0afa48ebf98f1ab9f7c678a3f45c8fad9f8fa8056b380a0a25487bfe1f8c929ae1505d12c5b8efefb92c252c1a41b0d9628b33a8210d6a48c3164ab650b24511284751c9953f655fd7052ba5346253a26156acce5a5ba61adaf115f16936dfc6186da644c3ac589db5fbd0a09e85c6e87262aed18a555be7dce694b2d63ae574af589d32cb1726823dbc927a7d6c6ba92c89510c9358aed78cb8e65a358a856089f8ca1726e23fef703b2badc64db7c6492dbd63bc50b8008ae94854916bb3dd0de33032e51c8a43a9bad3f908d3265b39999c569e534e2ba26ad552d1d434b97187913033255532455445a4943013e64a4d95c9aa648acc14e9e45c5da79502a58474695edf13976565c7a1a959692a6d89c96f98e0dcd8704152291e50a6e1e2ef89ebc211927bc31c2a0542550e95b5dae4ac26f52749a244c992254c981489a11b965f645e91d2aa69311902808ae952fba6c15a8945fc81b282b7344e62715b08fd81fbb9bf1b237f29e1165abeacdd8dc1c219b1afc004bc6658e2384d44ab4b5c6816b4242a0b8982514ac7c9c932c28ed29bc8f61ad68035a24b6f79932d7817df5b5d7ac7716fd25efd6e84de6a2fbee3b41771bce56e83fda689885f5517462ec7c221568a98efd3ddfdeb7b7477f7ead5ab5777777f8a3d1cb3dbd1d5320ce126e943e4ce5f38ade6c9c6762987b871a3081cf29ad17e51ad4f2e56198de6bcdcc560e18c2be8432c6b57c0193d2598240c05f2210bc54dc80889982c90294b6cafbd05b6ce02ef89438f9becc2e2c2d2b2fbe20bf6f745fbe969c38502b6b20fcfb0009f4b9e736e46b864872c58e7f98eeb5f1b1207c8588436e615d62f9fee2eb74eeda4e849e5f482856ebae2fa262411930547c826e2e9748a9084a120f75728fc8b9c23fad445d1a7538e5d14537e8436a4055057408123f7f0b20b4bc5805c01058eecc30be02ebef170c9ce329b8ab92101ca734bc2b3ffe59bffd4a8bbd7d9a19d149d672a5888c7000ebd0883e029803ff04e5c006fe0338035f0b6e59233f03b1a05c32c67dc64b30049fdb5de3b1afdbbe7d92ce4aef5ded1e87faadca4d57aefe865a64abb71124cbf76336d6abd7734faf7ae959b3656c786e7fd8f46f7d67aef68f4ef756c78deff687431f03d0630f0109afc6d085fe0ad0670a8936a9610e0d0a3e0984598c88e9aaf8e4e28271b9a9cd1e48c26673439a3c919ed3f1b59e2481c892371248ec49138d90ad6e877026336aa5aef1d8dfeddf33a2a68c386e7fd8f46f74e1b15acd17f015c7160aed505036dd8f0bcffd1e8de6b553180eb09455114455114d59486d2501a4a4369284d0681cd4265f90026a2e36d6bdb6c6bb3adcdb636dbda6c6bb3addccf411b363cef7f34bad76bed7c0087de03b802b6455934994e47a623d391e9c874643a32b93ff41dc04d3c07300534998b45bbe138ed86d36e38ed86d36e38ed86fbcf46ee000e3d0730057e03d809ed66b26c31de7f636ecc8db93137e6c6640ee0d06f003b1123593696e73d1bcbb3b13c1bcbb3b13c1bcbf39f8dbc011c7a0d600b3c06f0b7b19ca593eaefd4806cd8f0bcffd1e8de4eaad67b4723ff077d07f49f8dfc75b0dac9404744e5bf4e4dee170247960b60222d6f014cc4015f014c248977021311e22980890ce09bc0446e34e0fb693db9a9e5db88efaf306ee2f1fd75c64d0e60b9e988077c3f06e3262420f0117809c0b829092596f866e27b022fe3bf1110ff793770e0ff604df71f5c01e03fc8fae00dc411e23fd842a5605403f82fcaccc49ab88aac78f3459c2fb60ef05fa3be4e7d0df3b5caf45fcbe0f8af67beaec9f15faf74fcd7acaf6fbec6f9baf539eaf354fecf613e577d2e133fda7226b02f815b09dc49e09600ee08e06803011c91c031c649f11f7084037818d1d200ec344e8acf00cc8233de8117105f013801b808ac03e7c0d04908c0384c2522f010f800d800b800f80601562b7800980626610f0b000b810380676000e00e63fc40c850c1b00646f78d4e7ed47defd9b0913faff10e798adc138ce58fb63edafa68eba3ad8fb63edafa68cbabe80e67910fb109918b1e428e5a549163feb853c6e102c3218004245cd8456e936d922d032367f1051d5ac664ff17798aa15215ffbab2a7ff6362ee0108a5cb9b611ea84accee46d7e8c60d98630958c3dfbf00d0c444e4a20d5980100dd9ff4340f624dc95f66685ab5ac4e54a4a259a80a68f8d06729864ff200be27cb0f5c517d9d1dfa95084b722659ab6a0c9858165b90d949ea449eeeeb2ab3cacbb7bcb2ae5c9e160e18c0f846321ecb7d65a6bedeff0b62d51b9bb1ef653de5a9cf2f61bdbc8d56858eae27038edcd0fe2f107d14d714513db07f153685d8abff6ffffdd4db17529dea52cf1afbd13df3911c46fbf7d101f4487b53dd262db76713f7bc3d15cf7bad7bd2e25c3a571d3f673344a79cbe777f7394e4a454585e3380ec3b00e9120362d88ce594e6a543ec123fcdde46b71fd1477c72a27edcdc9b5b826375d6a69a82e597cdb9b964997fc2d4eb63979fe949b115cf75defee93a8dc9dba5d83d8b41983ca30081c59e49c0f67106ee3980d2e97b24410bf7d134174dc6f5d136ee324eea1936c73476a389a2c9398ed307683ebd8eff0ecb3cf6718f45de3a3e618307e3e77a44b32de47cd40fc7c8e06e6e89f2a8ff25c16a00e95f7bc88c3818153bef19581c052d4dc2fe3636029ead622a38b374546ca37f73085fb8d7bedb99f9ccc3062a470af71da5b4fc17e03840ceead94c1bd0ac7358e390513d93ec6f63036ee358e7bee3b3fc29f4b7e9bc1cd08ac06d79ffbc65fbcd966dfc93a6f3bbfc34738f41d7cf2bdb59c705f1f057fdc16f27c51089f803ed863b16cd3f6aec1265dad49fef6086be94d077f2779be5b8e26cfa7379449975a15456f7670b7d7ec7ff646ebdfbafb7c64efba399c5477470737f3f6f6767af3ddf6e6abb437ed734f6fba84fdb4dd27b3b516a7bdf99d65d2de7c2c07f7fb3c397ce349f2c7e174f0a7cd9f716387fdfad3ca8b623bb8da6fff71381f87c3d13869be866bf2b437ed21e1c6e993c3e952932ed99fdd3fffa6ba94d293c3c9f3a2f2fcc619feb408c8ffbceb4e72572c41381e2ada85ca009021864cf60e8d5d325a6d810a49442079a2c21ef2475355e041fe2816b169e73b34d815f7ebd4648f43a656b4476168aa314852140d4267e891366138540890d5870ea128aaa232148bd81fd6c7e6f35992fd97d0e54f848648e4bebf480b988308aab2dcff627c442c8aeac4b8e913671753bb9825e4afeb682192fc3319237f1d9a2bd0e862c42c9a3e2cf8dc87e52610ca49fea3d19c73cef811847293688a58f58a585fc70bd93f769d261d1c18a17764d761023b35f73f2858037412b1442c911214216d42b1112d71418ca889c846d44239a10411dd80505dfa402750109090990e0dccd14f7d865294a49174889f9818b18889c866fb442c110be688289b9c75c1c9008101655d88c4004b55b4b2a224f98266b23fa8095087ab4046ba14fa404fc87e1fe6e07a001a0288084788a02b60a9f39e83ec0faa02eaa8ef202bb23fc8072023647f5011fc4149883ae28350202064ffac0b98c38b949c0951871bf1606742912e7d8cb4e74c80a58f1460b22ea28e0f1646baf4a191022c7db6f075fe6011757c6aa20d9ade02a8c3025413fd3fddd7f9fbd46417032c31017a0eb32e7214b2ff77800cbf0050871be9130b90cb227ad851e59b710773700f5f0858ea3cecc438c96564f81ea8a33e0465f800803ae2c30064f831a20e6badb544ee6798086ac47271b0dc7eb71bfe6c013dff8b3b34180db086ff87156d805ee20188f0c7b014376fcf61294679fb4f1a20c5528c32fd0e1760084b31cad8835e008ff877b41075cccfc287f5d102e4821afd3f68883ae437f44e2866288c8899d33e6b8035fcef07e70ed9bf333f73c8fee122fbc74fb4f17dbac8fea2cf470b48840c60e983a43d14cce1790f03f4fcbf4f908c93fd3b5c401d9f241d1a37ddf7efd4c01c483a628039b4e8a001e6d0debfa386d879032c753e669843aeff75b2f002d451c71075c8c89d2da00ef9de5992fd3b6d883ae2fb7f1d26d99f2677cac082396087e6c3cafe1d9a2e611f16cc113f1d142ddc833a2896882cf75b3c5db68235a69451f8b89f3064493e48ba9489017afe1f9d61512349a20eda0468c3e913b2fff731034d42b4e10fc2b408d086ff07531f441b1753949352b0867f07d32ba0e7bf617a844889006bf85b4c87006bf86798f600d610228d90fda715d9bfd21c64ff2810b2ff455131e2cf13600dff0e4d769ace912e412eb84006a74b309be60972410a2a514789287f9d9a8e8d4d17f2d7b971c192fc759a64ff29a38825b2e9d2f77982922e452264af42fe444bb247dc9f27c01c30470c99b849920b2c9c81ea4f622172dfe17e9d8ab1d5a92e79a71c53c2fd62abd5a5feee205dca6953ec8f7d6a0991e175f22a485e907248ad24485e441bfdf33dc6699c689c320d19528bc689c6c95754155322f6d0bf09f96ee5dbce85853e96ba42b8fe92aae077d7f655ec3e57b2aab8310ca35f679d4ff1e7915a242f9cc689e5bebae860e3648127b36c9593abbb7eb8f15a41f68644c818b96be732def62ace85b233e7744f038dc4e27e9e637db8dfc8b4d2f1a25866351c9d67898da5f88637871b33e5b1f23b1a87751cd812cd32bb9ae2c38def36de0d7a4929511245432518ea3dc19ef09695f8567922dd5dd6ab93a8cc05377e14d25bf9a2f2f216cb1524f056ae2787c295073ae4010eddddee550f41c823508659eca10bd775512a8723f9d3b41c396c799842e7c4e9c106b7a3078f9661163975f864196691d3078ee3b87bfff07222ca308b9c19cc127db8c09d01451389442214942cf45013ca300b3dc8c0c843911859fca106292a59fcc10a199e172060e82088d1125e8b780f5ae411de031cf2088bd1e94d0a2920a92934b9108e3498bbbbdba31c471e8e5659c9f1bda5171ce5ee8e4279bf7b773796badd7d3e302c0717fe3723c3ae78b8f02312da5ba6bc1a6f95bdfb7cc8c824dec01afd7153a2b292b4892e69523f93dc4d72f7cbc9bb4f4a184abd9342dacbc1fd66a466b4d72c36e26187c38d47e7ab93ddd5f070bb734dcd9656a8a72e2e7cea05582a00f4e2c7a7f1a1c718874092690d2b476a93e37beba5df59eacb77a2beeca6b8a2097ff953f4d78eca64f84e487fd9b1cceea3aa0ca70815c25aefd6524522514aab4b5f95c9f2e5a7b36da087ed79ea0c845215ca202c91b427ff23ff5a91e57736aff5ded1c8cb30d20aed9de5a6ec35eda512eddb625adcee10255976922159252608f7fa9ac27670b1cffe1b71375d529131a3182d358ac9924693b6d3524e9257e74a6cdabb3a951837658fbd3c89c930efbad3605e13d29ef49b545589c9f2a996caf27325375dba985c32e5b24949e9aea44b4ba6af600e9825880a77998e012b50eaaca632148b59a564c92559b29c24afc9a2343cf850fa2857adb5f6d864ad178a56b9f9d3b9bd8fae9db79f73933302f2b72fdafab646aef3b48bd56e486499761b8fec239527dbbaae1464fa4db12224f7c0e8f6964afaf1ea211fdb5680441dd7d7a69dc4d67dddd759ba86c9c7feeb7f957eecbe23e8c78f1feb5ff1afae7efd7cec7ac4df3efbd4af1776755facb5d6cf9cc170cc524a29b72ebef460fb17775ec3dcef70d7e68c4fe75f59ec564eedb5fa41371c4ea4f42b967b5cbf5d1f91d8ba2ee5b50e74933bfe7c8a3d6eb89f0fecebc6837e8fadfb22dd92d032fd7aea60d9ded6c59f740588fd15207f6d2d16cf9c5d398b32673148eeff34796aef85461ae9274fd25eb583227e214fd80d2efd4f9eaee86fa5747942b1c910002e9e0862435543cbe93433d3a252dd5bd53033733ad5d43415c20a90959795d30a6a05955766564e2ba81594ccb2ee8b39a392d24aa9c70d1cd7c54b395a2f4aafe7fad0eba194d2ecc21fecb979e5b4026456b802a4d6ffac9c3c2f311f58be4f3df7762b40a20dfad75b29b1ad4562991222617070a75fd99974e9e278938b3d6eb8f2ef7b3c5dbc924e2e72fcce1d72fc4d66681f6a9e9d8bcece058e9b6ef6cbf57736ace1cfb5c8df5d09b282ca40a28d8672e5b4f2b2725a01b282a276e5b402846e2d114a1cdc15149537665c685ae7f1504a7fa31c864e4ac266eaf96f942396597ed8dfd7f027b3f6dbf6127f37cb8f8fce9fb79eaf6eeabcc7f399e73fdd17e58644963df4faea384ddaf3f7561577fee71dcc0677fb6fb4611a2f344e5ecdbd482d520ea5344e736ba1a416c98bab255671699cbeba4979b27e1dc15a0839ce616c5a8533134fd77d90b20495cf0464798101ed60303bd9f1889247d7de78f8f58d87840f738a0360869d6ba14586fe96831f371ed7bc5cba74bb11b8cbdd254c8df119b7a93717e75ba667686a5610a75911a7756a54a71a266686a666c5b28937f58edef37e742b6af4de0dcf106eac0e8323f78783da34c4b95ad5ae9a383332dac83833613c9e604daf9a2562cf10ee773f47b14416c71d2f521c00b3e5528e880f9f477cf82e1e38dc1424bac8446c26da9d0997523221e79c1b13f3baaeebba36262e4a29a59409ca22df720ee3303636ad6a150ececc4c3cc19aceb384fb5d262a8b7c8bf57b774464e7b53b1ede7507df25c3ad3fe508ffde8cf08e8ae8d25d8960e18c18d9c58e7067f41116cef86c1f692f7ed75cbf9a2e273dd2a4f8f3294d97e6c7eeea68ac13b9b286aebad454264b2a438dc87e018bff9c540573cc97931e696f7694a63d8a1de1da1834d87e08b3fb7245f7477b5f200d8e2e7d2e59d6341134ed651207cd6834aa311ea9d951c411d8b0fbbe489a2642ca2edc4fca2ddc4fca9af6e44b1a49e3b2a64b304bf945343c72fd05b53b83208f3449fe45538f8c9ac6250d8ef6a2902a1cd9d7ada5522bdcce9ec22345b4276577f40e0e37d50aafe835f5a5949fc4aa106eff87235f8fe1fa14fb45f3f4972b2d0916cef8b04dee3f49e59611a5c1a8a4fc6885dc7c7bf70f6a05c8ca69e5650535e75c0192b3725a7959f97c3cf41e9cbdd6a5d0c3955397b2f7fcca4bd401b36705d525cf673f5766564e2b40725680e4ac9c5680e4540d6efe98116e0f193797dd0a102957506e058a6e2d9bbb3b75da5d77772c0757cb9151a4bd9621d35ecbc8c911e5e49ce4802493f63a4a9cb9a36f60d44e748393e9d33587219af73f4fce494e9691e4c27270b550969a46bea98966ca88109898212a99192c8ed4204912e3b595d30a90a803de1554c6e08d11a3fb6e86279dee3bc9f0e4d366d7260a3f3ea5f8b5ffd1f5768467182ef27a9263eff2e79c316274df13124bc2e639b13fa945caa1b1c327f6c7308ccf85d4227961a5e843387b0849a127e5441d3087689cba14faeca94cb65692bc8836a606dd34fa87b19a242fa28e2f4e25b9af166925c6524235b8891e1bc2ede13ff326f28ec629675fca84b4e8495e5c5b8be80383056387637f949a8aa115cb56ba7992c85039e9a4f39f0786eafe272309bca1d512ee232aa64011d5f94f461287b1aac1fd60ac721bd10e63d5de9cd3a707c62a84b95fef3fb10b6e0efa2fb4ca324e60acba34e70786aaca48125ac94892fbe9f5f5ea3e1fd231d67958ef49d25ee78a87ebe9ee10a14e4416dafd7061a1288a9b4594fd0986b19a56c895902864fe60acba247fbecc3949ff6fa272cf2033e5df848919925bfe378be49e32df34925b7e138bdcbf91bcc0a0c472fb4d6ba93589eeae670c577e86753faec0fe47d635415d58e47b8b470cf783ab1962b89f97db032650a209253eb8e4c65f7afedd5704b6e950d12e73de50693259baa7f8f7bbb0a4787f13f5bbfb7185ff8fdb04f7a33ed7d526b80b4d1daebbc17592c9fd20eb8693eccbd7804cdd70d3ecf00edc801a69d39e842c69c3046479e1bef36ee2ba29aef09fa29ffbab9ba27ea72565897eee9be8e7ba26ea77ba1d6da546315683ebeed996fd95d96e07c61ceb1a00a59cc9f277b843dc58b8fd94d26b6219982c6bb2fc0f36c9b2650c92e54d964faf595391c8af2bf8d524595e376932190240d628a49c497b38376ea36d55a6628c83853386702f766f26ea7bb5e36a91fbd5fa49947dd9de84f36d7ddf785cd96e1e38dc67038f99adffdc78c86c37262224cd67030fcf76e311a1379f0db93edd78749e2418548bb5ed94c0de7231678f3d06b20eab8f01253067451e9a6d4d6eddc1a717946ec3861c5d2215ed427d16b11e2df8ccfd2afd0ee81234c9d48c2172ffbf4c992b34a54172032eda23acb24f724320b40751d663dcc2c2199f8c54966f238c7d23cbcb0888638e6d871b331b42366d5b9d4b2975c36992fc4fab275725e7452f59fed6a46af74445ca1b1a62513a425dd129c4eaaef5b0bae459be474997a81256973acb874d422c0f130feb4ecc922fdfc3aa44b84bb27c1a85cc94d59e8c375bfe4236a12559be8dbfe17409876c9a887a849ae47e2156881575740bb2fcd0ca330373f44b145dc11ab26a8de10783c6b71628e217b9b278c44c2d96bf908dad564996ac3bdc19c2f942ad2c7f219b2c6da80da19b25224b48e52455961b8e47e6e2d8b829b238e13fbb100b63c28db685b2adf66488d51e6dc3ed108b0bf70bb142365dfa6a881552d29e8d279fe2ef866cda93318794b417b2e90fb13ea4a44d198bfc9965cb72537cf9760573d4976fc500736435f231ec6dd31a58a307f7a334b0867cda79584e92f43f0f8bd26c009946968f51969b5859dae17a58ffc1983943fe369c2cff0bb121cb0fb1600e955c43db1eb27c18313047c3ff422c0f2b4bf81f6dd19693e4db1d5cf91287d69ed560ec4edc5a2ecf17ed88ccf7baea064f060c21580bafffbcfe7b82ced8753da6cb15230cac7c388305b1ea60097778d1bf680c66c58d7fe1980c2736c1f2a7e5178c05c8b34cad89f0ff6e5d822b6992ff12af5db0aa10aea7c4b4c0eca6984f1f9b7d6537d857c9f23bcaae64dd60dd3762f945314b6a21d120ef20e520db205951b2583546b2244b2a99a82e0969d3898c5c229b481bd99aa71944de28618126a092ea2dab1208a197010b677cdc09665187558659c8c1088d0cb3a8c329533e40982304dfd9830a6708373db0a9822583dc2dc88d85e03b356e92b5de3b1aa1ccc819392367e48c9c9133f23d0573883ed67aef688433e7fc66c11c14f8a8ba5497ea525daa4b755d363cef7f34bad7867e47273edaf0bc7f180803532f986ac3f3fe47a37baf559481392cf0f15300735ce0232a4365a80c95a132547f66c3f3fe47a37b697e07cc91818f15e6c0c0c7b701ffd5dc8f8d61be6cc985386a808cee514ec78ac081e35eb062107a593725f631446f37289552b8a64c71031cf0df49f6d7daa48493faaf975fdf4aec801d62b80d50c24d2670bba9645804780457e7014a8251f67700267dc472450a121d094659b6177bf3daebf72a364f6e26b59a69f065842479692630018448e4896575baa582e5d1376e44e71199f07b5b4a9576e7c131015978c01cb31bc418cf60e10c4987bb86fcc5ea362760b1b04b7d73a3e41ee51640ee18b93f378cdca6dc1d3f94dbb13683fcd9414ee98759b05429dd9d64b91b435863cbedd2b1e160251d2e7c1875402531b258ff01168416912bc32c5a52c8a3f622fc08836c09d91559914c095912322464aa8c8896a21de16a9911b22117b6971581089e8f92108b35840b6b4027a9ff980bdb039d808470617b2191470bc285ed01e1c2f6dcadb823183136f8830bdb7b1fa4449598f560064c104f557870a31038e2ece0c2f6dc331d784dd708b9b0bd1c5cd85e5645960ac0142c7c1bfa1e18b4bb306c76dd4d90f6084d1824f5c370355c58236eded58026fb47e842e3245b2e3bc01ad9efe81b1be326eeab55e55a6b966959f616ef702868b6d8672ff9cbec77f0430e776f71466a75a49c68237bcc48f6d7ba190c5b99f6fc3b78abc9dee547b7c3b5ec31fcb9509129964d33dccfed90fda51d2aa665f8d33056839b6d46d80ec3a4a5c99a72a1dbde97a68171c292f73dc9b13340f30522740535575ee60a0a5b41751e37c8d347df3f1f58967d12c3fc5780ac00590172b28335227ee119c38d0fa36caff84ac73f371ed39d6a8efda2def10b52602911fafbfbc0b2774a58e5ee8056188661186885692b08b7f357872bd21e27c3a9ec0aeb3ccc6c06b22bad6a55ab9ad65a39b7725283561fb7caf3412b4f075a39a93bddc5b4d5a5ce77f7794e07d4790e77b6ad719d0eb4e1965dad5649aae7ccc0abdcde0aca8aebeb0a4880dcb4f2013244028323d97256e2581fe2efb6d6c56f8f3da0c8703bc223149ebb8bd0477fb1f3e1ef5b4b4fadb5f6e077f7d1c7bafecf7efd0ef656b96a313c4b9e70d6bd1d4bd31ec35e8d638f1baeedb2bf78d0ae47d67d32d6ae0745c2caceca2bc50366ac095813b026604d389d6666542aac09383833333146268860602413912192979c6c9f265f6f31ed31e9b1d7da979ded69276d976d3cea6b0fbb242f29ed4b0dc3adc5d68c6a9ae6a329eec185348dd217ab85e873a1eeebcc51cd5ace625f623fd9692e3fec659f9423dfd20892bff9b847e8a9c8d2655eafd13841e15fe7d04f29bf4aa9753de8875efeacf1565976f343167fd97f151401ae2379d17df10967a5703fdf1e71bd7c299fd492af7556d238d13865bb6d3c44a1d74436cbe425b297b522bbf1b8b2cb66d6ca4bbe48e299391caf4ce9539ab990fd6be3717dfd893fe2fb16cf3fc1d883f0f61fdc8139c75c19bdb4b717ac1d95d3be16afd7e6e7d98f5b0434faf3391cedb3ffbc9acc751e375cec3d183a89e3bacf87fcbc1a1ef64a42cb56d3a6bd3eeb485e905a242fea95a9ec360f4901c2b715be2b019d04dfb6e368b7243c7f2bc89290f96301b62531f3f7a34e41b72468fea8b8b6243aef78becd3a3d3a1d919a61aa591d2373c51c89c4f6fe2295851d846498851c8c1420c32cea6093a50ca0a9a6240ae6e8f78a85999926c820413584981e6487a922fb5b5a53d0860dc80058530d80705a89a5a708f7b32c969b7c55ff62e5b62b371de0fd6b6a88f7af316e22e2bdf4fe75e526d3fb571c37e17847c0fb63326ecaf1fed8ca4d3ade1fc3715311ef9fa5dc94807705bc7fb672d3027ec7fbdb949bf2fb5b1937b1bc37a0fb460ce83eefc6f57c40272111ca08468c1415194004f1b803c08c000821008f4463002b350860e346010cc092772c4001092842470e04e030958818e2000628c00d1b04a8b132001a244f0042046006003afc410021432525068c118a287402fa782ed7d9b42857125bc9ba9274257910e17e548bec29477c50c42fb27c6c3b891a9863ce9f1d1431c7f708e14a14acf145fe6407f38e4e4142fea5a570b854f79c9cb2bf85d5c688af6c5d5e5ac49d638e360999cab3fe14c2bdfe743a652b4f11aea752a9542a95eab0dcc4d57aef68f4cfd564efb0b814ac51e321c2f5ffb854765fdd939be6c4ee69b502d568b2f31a5843e3c13d395d2f585c1922a9c2488eaf0dc1324452050c922a5039432455b420f76b5dfa461949aa490ba10a546af66f9c7bf871cbe03b1bdcc035d71dce6b9c180a2a62ccd3e74f1cbfa1d82693bf61b7a152f31cb1dbe429bf4a2cd36247c4766e43a7bc34676dfe3732a51efde50a1089fd2fe99ec425576ee419bd32afcbddcb72257a37635e2e63bee6687ed557b08667b456acd28f0a39df5a29ffc2a49c6843925aeed7f48b0816f3729fefd23d529976a9eec9f9982cbf0ee13579a28a5aea24660ed7255f2947f88f7ce4f34747da93a32359fe91eeeeeeeed128e6e26e46ddaa2eb9632ed95e38e588eb5596b8649af6648a119efb5562548ed426f753992a4760beaeebeab89bdabaf3e5a522a362047e2a3435f53f952459aab054946459559664f997764f3499d684c8219a2acbefc6f06ef5e44f54f263d8a835a6d7d5de135fd70a4adb5aae1d3eb5ee73b9aecfb696abbb95fa2b2ff7fe0aaa4bf5efdbade5ced4de723aa7fbea72aa11b015202ba8ebbb7e98b42771da93377585b427fb2f7b5dd7f7b8ba0bd35d2bdabbba949cf6e4a93d1961c0e13849becac9493c382ea0e7c98f4c705c4092fc143edc6b7a1ef4d7f55c4a0e0fae89cac5ddc01af2af2ea5056bc4b8a918286f27a6dff9c274e993d7c5a2b717be301125a783305db202c61d250a091a69a99b82f1df1572f2da7fd78a2cab85a76e5077f7d720108cdf2a8c94efad4505a503eac4e884b81fa75cff3ac1ecb02135e594523b6cc8e924c30796e203f381f9c040313a21ae5351de5304fae9ba7eca531d72afaea2ecf0eb755e15f42828eff3af18973ce5db7df204c4559ffac0b2bf5651408f82e2ee9fbff0e7e3ca2828f534e4568c32c286dc2f05271f5846f9cf07565130e847f8f371cada0381bf149cb2f632f0f7e394d2c59ba2d2f9c0785c0f857752c40cfa9321273145b8a01fc59c8c40f29447316e528919c5a8c48c62546246312a31a3189598939893216dbab845ebe295a77c5dd7d57d3e302c07970857e5884a8cca101519151a57a95141a2cab255625466b2fcbe70fc7c1ca9b494968ad164ec07c36c5130cc09c8272f636477083abe3ad0e75251f0f670aba49ca80305e57d3a4af7c59eb89bc6696be97e941650b76f8ff2a41c528be405ca6fbf6d2ddb8651a27ffc2279d1efafc1ad372d6edd5a4c975e5375e9a271cad7cbcb0a6dc8d5286f358ba52e149db514ac215bedc98bcb690f064bddabbb1e2deedd653805c3366e57ea6231f7d352f5a14acc92de78ccbae4babe7b75f7f45aaa4b9e6a4fa27c544e51482dc5b5baa43d9793e53de527240aca635b0bca531ae3babe3ffa8eebfc50f7f5da137e73f25a28a4fd35fa0f86796e2ddaa3b48c62dc64187d0d694f7abe62cf5b11beae073109bd6f22d0f5221cb3e8afef3e2e022079f2de7d9def6e34bbabebe1dfef287f451e4f67e7d85ffb077cbe4ac03b8f1b62bc8d8eeffd7ec024717529f5afc729f5674aed26cacf46c1dffc14fff4c32d89cf7bd7e3f3b5ebb1bdff13dd3de137f9d349b921113a62eb20d7f9f00cfa7eefbe934e76bade22207a50f7452ab623e64fbfe87b155df4e77b27125db5fbfaf291aa4b97bcaeeef3e15684472a3c8af9c115bdc883f217f6fcc5df0f98f7eec363769ff6de45206694ae87e7eb117e9108a1bce75a32bf13b864fa28ef79efe87b5042d7e64beec7f0b8e1fec49e25d76ff2ed3e9ff4beca6f284faf233aa3743d90087dfdfa3ffcfa743e3c3f91805c5fc6e58ff245beaeeb51707d0a653cad2990c99ff657f7846b2830eff08a432f037f3e6a52b41fc574a9f36848db0d460c5c73dd1c00338c8e08f6759322e6d0c7ed88500e49182fdcd0bb15edc90ffded6498102ef61977c331e170448f84d324f75fa5d160aa4b46991d0babc16dfcdd7c3dadf53dabbca8648df466492d199a11000000009314002028140c888422b16038a28892341f14800d98aa4a76501aa74112630819640c0102200000000280d120240027b5dbbf778b4f64c62bff76cf5893ef7ef4b196a3f58f37dd4f27b3dbf959805b235f6a424164b49e15fa00c650b08cc39c503ce572f73906fe145ad5cc94aeec47ca564fae0da653a232a5eb02ee8ca4c74f62087fc5934a2a32f823ebedc19a7ceb7f4b4807257cb1b2065d8e07e157728fb0ee8530ef0a794eff7fa39110a5d188adefe9c03bdb66715df773b18b1ffd8625e2fd92d3c3377fd17befdf7b42dd6938afea00ef6daedcd023341c830f251ea64b2949d74dc07dd9ef7d69357d13dec614fd0093f3e7f04f44982597f2293bda453d4a863541f31eaf3699cccad73f1f21f871949862a4809420c0a9ef5911301d8c9b0587e7e9e31c53b161961b391893297aa65a07864bc4d77fe9eb3ce06f6008b78e1271bf58e828a90c6003b6849ff4e3ed5eb3cc11dded07a4daa48bff53ee2dca754ad33e09e978c806799aa9eee7db02e2973b4db87ea957fb7fb3d83a9506560bf5bff1740ae29115d559a95b31a03ef5d795057d2a0f4d2237b6175b921e59c0fe45b4dd8c88be33efa1334292693bce12368b225729fa9519d91785abb6fc242d27a24d7b03bdd7193626a926fd8681c7f31e4dca0c8afe3949c3760caf944d47a3ca3fdd86abdec9aa0e22367ebcb1dd353304362dec14d40576dbeb62b8ea060924ba804ce8c29649c64fe74a192adf84e9700d75af7902f9072ed4ed566fba92ab6510107b15fe5d947277a36a2516e1d07f6a672191d23c0e51f5ab3574faf8c62158229d2035a2a2229eff54914412e15302cb03f54c535aad06a734d5aede6a7710040ae1a5a439868db2c7b2285847c2e0747d940436f82a0f83641fee7b878139ea825981ba8fa58433d2ac5c1a531c24c81de1c9e6f2560d67a46c06451dc0686fe6a9519be7dea808eef83df21d82d8c58cec1790097837cbb09591b06b4441899f5031f932720206056cd1984b4050d0cb76b5ae97ea47f8e062ab590b3ede5f37b261363aa2e63a1166c6a91fcd8c00eac0daae08e207a1e78e4d6d7e24b60c8dcfe8556c79f240d1d534367b6509f739f008f29b9cceb58a3ee0e2095fd9a3c493f3db37fa50d12b21dfbe131fe86dd47e718a42d32a4d421bdadf59b45f953945acf7356e6f644fdfae4d00b21f61bf49091fc3c689d9c457f65b40f1b1dd3eea72bd827399a54c1a77f7d777c350537c0eb0da7198ff69dbbef9eb9e60db270d9c223a87dc2fdba7a9df7693d31e6d8e0caffee4dcacd8be27dcdfcaeeb6ec91d41867eaa1ee297bc2ee0d2dd8dac5857a045b1ab5cae971eec5aa7dbaf030890465fffa3c4182ef4f9024cd84a6e73bf7f080209b1b4ed9071d55214b222805dfe9a78f709f9b2f55e91f54fbf423120f98b40f4f234341581cb4ced7a852fb4ef5077617b58ff8985c046097577bc1a75ede4ffba4771e7b1d3d084efb4809c4399fbdbaf5996d9b043bb4409874d8ae4d5072d66f4ee35337e6e344444f31a6a6e65da29cee16e37aa7b5dd7712d1628ab81bcc5095a4d70fea9c62291d084a4664ab22d34fcf968120da3754663a1a9e2ad362ec420ce48dd32eb187aa64368cc5e74d84e586d5146dcad7f9de396c58e7a3b24205d76dc210c969fe7145240c4448448e7844f1af36a9e9ed06dab9931f771aa82f40f6efb58440d98ebd17dd434053a070e20ae01ad1b78d00ef50b7205e3056659442d2b2d492376ca67827a1155c6ed9927be66f40975d3336cdb3a6e542907e47987c3275553b956c95c101acab6e567ba64f1b9266bf798a8769fc8341bca52da79b0d515ab07d39c3eac9d7710e9332a098b712a149a1e2caf01a6923b00754cfeac5699881b412ea998b5da8f824e2c6ca2cd0166460a4793609fbd46a41ec1891665adc5e40b6669624e2a63c9271cfb538fc804d9806ccbae05a4b9da685cad2de56a198a26e3f65bc513989f2b6b24d1b47f6b484701396ba93cbb1127406aecfb14fb4bd43ae3f7734f4465548572b861c9bdfe462856a2a5ab792139c5cc2f086dfb9944bad5bab24f3be432c42093c4377f6d7765ea81b829b235d3592f80904d41eed8202d6e64d909576dc66e32d626a57d8786da283cbe0763c1b1c974c93ecc097deeb3d3ec1dfddabb12feb2c7948bbbb68a26bf796d578850b10bbd0eddebeb1f489259a2a729821cfeac4fee45ac1cd5efe36e9a56d66236da3c24c75db6f0b141bd908da6d72e2ef4c0da8e3b018204ada74747041a47b6f9a103d42c50519030ead28af00761fb81832d770f0abb30fcb0e32687f91a1e1531c23171fee5b2eeccb98471ad7b1807a1ed3712ee1e3280638646e93e547c4bd5ad912581eef7f05f81805fa12fe55f8c28bc7078851d701e39182616983ac2da95017d85ed58a069761cf4fb567a623c4397c7af1f1d0fbbc07b84f306e2ec6edfb532e8d728e414c7667773c22c8e198b626d7cd77738dcff1a69aec45c6541dd1209377869d44912997a7ae5fb1f8c3d13dd6858c51d76bd01455b2b74e72fa44be3e2191e0715c5ee27007469077d4640c062cc75fb0de8dee52c521fc8bd4781238adc35be341568a0a1f1b0f7b507468361377816224501cb30b9fb7ebadef0a9d14b88654beb025bb198a7cf920f76da4763739b7db51972e609936e7ea16299077fc192660c5226bc956774726e6f5f87b9d74f1ed3889024cf093b2867d705de534ea9208157a1391fe0b1ccdfc8315a7a09d39d55814c1991c73a39ce86c0c786226589712e5bf147afc405a293e30c59c8f687649a0df1e0a9ab575b8b772e93425bccae7b023c72197d2066c4eae76794f163e82a2bcf5707969fb8683c81027ca0191c2960f3561f3c3cb188f411df1a5ec1f893a65fda1da20f117f3f35b6bfbd10b399dcdde8c6ed8d8c10e98c4c0153b5e65c67bcbd0abed3f04e34c5e76845bc263ccb8758af9b5088b024f2f5191da5b1b0dca10df467b2aaa854b549e0d85036e82628049d884f2c9d0e3dcb7cdec659c095c470e216eca7b7a1520e8f5f524bf4de4966d53d4c050220f1bb566de75e636543c8ebea16762a54d35b90917c6e2cec2d6201fed6c4309575d9774f64d461b23c44a74a68b784ce286211abebdd4cf4c6a235df9591a4c1fce496a7ed2ad2488d294c386bdd53ed59f6aaeab0970930e5891f24216363db0afbbe6ab4892aa18cb682355a40048284f8c07679dc06679f8a85acd953a10dfc6dade3abfcbd907e27ba2042e3bbcdc1e3e71a5f55a42dea16e0ddf8a561976b8c06f32858f0f0bf8b80ef70d81c98a92bcd630f8acebf22c2622012a55de20c7266e14729f3927bace9bf27e7327e3d170a1ccad2ffec1fb011f330ba49be8665b24c59ac106dab240673fed8ad6c7181368599ad53f6f592c6557ef679bc54e3c0ac3c5fd2d03b2f8b1c4d8340e73a9e3bffce04d35c43ccc74b974959b00a5ce060c62f6112b5931346dfda01c58a5580978571725273df461f080fef00cf0120abe187989f174dc60e401e487c4254ff9c5ede24d851ff32ccc62cc693053f06dfe1767e30a1830e72fe84415b8258a210b55de6eaa3ff716298512b446d74c137305349741dd0f35b11840cfa86bb4c5fe5c9b1fa67a668de8e9ac57c03e43da7a56310404ba21256856a1f757f029aaf6b5548ea74c44e0188e9d6080b01d0bca49744486b987a9ead6d954712ed0d6d82dea6bddc713731deda8261f14c6a9a61a0751a719f4a3cd0f3a01bc8e7ac2623543d74af94b77539471c5640ab11b565a71d634fe1c37c64d9b70a9ba0a40cc06edf25b273e37d79646cc8cc07ed4256fc0b60927e71ff2062f90e5a466960be8d75c318bc36152a24d40901c69f6999eebc36745306994a40d4d946f8b0fdeee8044371d33e585e3cefa48ec1c74263b31e9adf96c50ac6670e369abe5e0b50072d6ced09a75c0e94dd345602b73cddd2fd0cbc16ba0926102d036d80d403536af927d1c53310d8d3fe15d87d48a548acd4f7e03f75218a92de2b050fb2193a0408afa3be8f1810247845bacb93c38d4b76ccb536cfebdc8906629c65bb340abfa217cc5748163a726e656fdac432194fb41ffbf4b84de0238a739b5dc135cee8f6966c123585f447f1adbfafa93aa357940ea0caf7269aac1f6799a246901e9e179df0076e54327c35439827700b2a25b25d9e375ddb62f23d3d5b5ece031e51e2b7916341ab3bcbc756c6e39225e9179a48a4848a1f32eeba870122cb068c65aa1e7bc9e8c8543fb8fce1f2ba22c8e091927269bbb3ef0a50c443173aea77ba2661d73d15ab355cb6c022eaa074e3fe0bd335d7d8e4b85688ec2724e98771caf59a31c5ba5157aaa40de5733287b81be52c22fc5f2df977f3cfdcdf040c5cc783f59ef191f256f1029ad3b0b0b8318a29ef6f613a64b1835961a1b56994f84f0039f3f84b0e419943e157c7cd1ea199651e01225c31e07e37d9bb6d7909c42624ffe69671d9542d94f2b6be4554b9851142fc390251fcb3d722818db69c877b1dc91619030913bd13cdceb8b6125a173450c4bc4564425bfe8f116884489b4b4aa625af40d8c60cf1a30121cbc88725b521926c8efeb760720c72be046a07769f8be71ae6fad74a1177be6d7d1322dab37e888442e338fb5e5e916eb5075f53544bd9b4145b75c226d4916c1e4918aab2e23b60cdd7c5b5958554dbb166585fe046a22d78a56c4f514b67aafa6b66f93cd6eb7038d58b7fe722c5bdec15c052455937aded608cd77802b013997d31d8b4727774523159527b2f18b547b2d0b8ad7bf09d35abdb51badf74bd04e4f59739fe8cbdc16b5c0cfae0bbad4a00bfbb59140cbba268c29e5732028823f13e263f78a218b987366286ba2738393c43e23c8cbad2a532e2d724c82b684e30ee9483e56ac8b2d94a6292ae29ac9ac04cb25cec8fccc2087592bce1242cc390f2cd2ae23c4907a9e09d18e6069fb4540dcd4aa11a344a4b5305a6a6498956c0b504387db4c3861d37c46851c5a461d6da20eee42075b9167ab80a3cdb0d346d0e9acb840b88a0c4b6a3e7877c71afa8aee791119d8dd1d9a6e0c6d6fd92dabb58a7836bf50715a805e78fe72430f2f329162059fb8a230c71420b0f386db75404c2dcda8eb832a384187ad70226b05caff4616c8ddb8f54d10be939cb4d7935ee7c84babd14b251f570c2b8b379a86ced7fe2f3cebed840969a825dc63a6bf364f9b2637cd8a2ef075f5fc3a5736c5bacde38fa07db521eb356cb70d1182afb26378f83e5c058e4841e92df7906ff757e5dbce0cb2aaf37956476d98dc72eea9c11888bcf22888c84c272949df42fafaa5e94cf8d836d21f4718c15d5fe3b13efb0b7ff5a4da4c6288335c1ab37ec4f1cf6240dd96d24961ea8f3ef0d79efea7150e756c1a8249a7cc02278744f35f22c33a725a142dc27a10259509b7e146dcc8cdc84405d7c1020db884c4054527898e4131af96388c583ae51130f40e1adf067c3949e1852ba1e61eda61c329d6d3b10ba16dc2c314dd530d97efa6419239ce4b15915927164b995750843bf654446618d4b5abc1a17c933c1d9cd36d6b6285b93e205205d03d159c0ebcb48710cbeedbb5d5f89b5fc694e8069520af340ae6efb51b888141c8c09aafedd16bd105b134c66c94e71ea6030659f46f5c71bb59b06ddc34a9e560c72b9101435991acec3e1edc3d6a18b96aa1103888d5df675cd781fb501b70b4e1f748b61ba404e94d7d1e65fa54c72367a78c57dc7cc61546f4c2967f0f38f110492c02ce6f1bc11625ff6708a84a0e46e660ef485b894d3de2ab022cebdc64985f94c3f226b8aa6236ec56d9504506b6d2936627d1842c4034c2d144d2dbc8640c3dc6fed7d1d0d91ba7797a9711b1d813238ff868765a45573250004b103a67ec46b26ddf4473e63e9628ff0cbd1c132564a618fad4978e2f3c07213727fb58314bee75232a12a0db46e38b17641fc83c74590367244b62f206e1b22ba3f5cd13d4323a3dfed7d340b311d7de23b88182ea31556eb5c8f0cc47ed766011b27c5075f14b5c4a625188c6448e3153cbd0c413c6618e61bb08de13e00e4b72f88eb6ba9df68e68bee47723dbcfc7b88d0ecb6fd4a7383c9b71d8d50163e128ee9c4bb6b79595a893cf1c49c66532a90b875c777690fd51014784ff164b573e3d8db08c3bab2d780909754c63501f8a2b841c02dcff0f9e0d3eee76c18e7d0468020e67e791a6130bbbf39763c519d446b561ee862049b235bb8747a84c2b2b89c4c453a782d49bbc723827d74841da223ad7f3f6e0371d6b6515b8a97558c99057c3146899ad1ad3ed8502c39169caac86bd26ed626d31a4190e2bdf7f4fc7d04e8e75683a8f1c9260c664d3dc594e801788f89f722ba45a66b6891221e87434cc3cd5ecddd7bb0f503beb86ccf59e1e46aef9880c48dea6b8f8fa89645d6611b2f061f679f7c1f4970dc56183c95d5176915d0f30284410b821e71b0faa435d7c0187c36e105c7a24a6d0cd64f725482eed42f38906120d0454a89d305985fbd14d4cfc8b6bce77658ad14b892ec4344976c09b785c4d33094e6b2ca4b657b1c8cc251601a2070591a4e566183192c1964c774b064ec4e23471a14db742a9d840cbf63d799d8a05ad52d0c583620aca66287f75a3eaea1a0cb94615430523b8471b24d2502f8b260e87501b7a60d1e39b433c0359b98b63ef23086299121b9a31fb999bfd6f3529ead6be283a4b1466a36f86f7a7f923151905250b35f2be5179f186669b7341cd898f7e2834e0a571793d8d348882f9145ff5ab7ff04d6161b09847a10734cee2262f1ae77133b281ffedbd05b078d2f7ec114472932fc318c1e397fe1d91945e126718bb934c3b0390dbe50b28ea72bcc0a549f19c4415dd927dca81f520221e3cf06993ce7ddb622ab67911623a8bed434ade1d7b060e76a55d31a6c3f3929072f4c3163935fb4bd47d1e66db159a364bd848560f66c93432a832fcc697b5c8925626cf9978b053d09bd367a371ac46a00b51ed00d5dbfa756c591c8fb1296184660a93e38f388cb4e0533f7999924e27dc26dc2925bb4c017d059eb2addee5017383c791257a70754aae5a1a6d15b566fd6cd989202e0dd7a23a50aaa6d7b4dedc0a3bc5460b9e38e47e3836bbdd1ee5245ccf9661ab6bbb9976f6d3fa7dda6bea63fcb27f067ca76a972531f50151118a76cf4d789206a7f3a45d34479cfdb6f25c4e538d8021d2beba655044c3b9fa24a68066c66ac8c0e9a7654a413538dbac04e98c98fa63731f43fefd4c00e7f1c8b5d82dca3026ef0f514aa91dd712a28409fdbadde15dabe4530b4a0c6b2d0c26d54cdef9b3cd6a0826cedf005e4e47076e7b1c881aeca2dbd7b0cf469bb5e30b29563f416c9b589478122a5667961a958269670de122b09e229b1e6c9f36bc9fa75fbab1a08afd26921dc8e7aa6712499e7c17d735ea8009e55bf85805f3220c3c0374ef5b418fc781391f329af23c7286b704e282b261431194a2df444320157094ec5104c357e20323615a0a40d80d01ca2530184d456027ce9b0770f46a4f3bd8c6b5ee6861ee6295f7fd88efb34c45453e6078344890ae6ec0c63c5de371261bdca9d1e69108e043313bd40f3098e416b541fb7ae89db2741b5db1681f76300a03bc82213a8579f45ca8aea26e6985ac06adecfee3e1a4dba888c50c87628502d68ef36ed8f37dbe815158e537934e3ef42fa3dd858209bb3f7446eb540a381afbb18c625c22871d35a6552aee5b85d9ec530217ee556110ace9a49a3b15c6273725666ead9e489265ba27aba89df99529aaadf02851e9e40ab98e3f1dabbaf5e983bf90f23a133dff43b4a882397864ab8d54810bc15d655ccc975c3ca7b95890bab59d670b1fe4a097125d3877bc9291b45eb7fad3145212c71a5da0720c35eb8a577cdf515051acfed83be30b79825cd0a444329234281df91984312ae52e51288cd15a3c55150201393d8ffdaf46abcc30ac910c84dc41570e234d6b7d11b160cffe3f5df001618f18c63feac3720a5e1ee53137a76c2b947036b94281186067f8cac45026627cbf88ed20021c385e18666237f02808e21e0898560639d5305e1a3e3f6fd08ea1713b38c57bb9bfa0c6056db9eb8cb78c3d64ca19e1f65a46b5e29c64ab670016adf9d5bf6bf25cd000377034a22f68e8590024068451d033ea226852cbbd88601a1ee83924326f99aa346ef9426a359bbd9c9c88473731067c47b16034c6ebb849a4bec550bae8149ce4c746ae377a12368d7df6478fd4a30edb18a545751e087c00e57273c507c4553513b30652f58663c39ecfdefcad76ac8610ed7f66b0db3484e70a364eb632a31917f6544c46283d3688bb7337a5fe3eabfd6e81167512931249a60993eedfa07a51705ef8a9ad7da720e6f4dab5b603a938b47bdb6464ce23dc0755102fbcd4a2d059bc388ff3ed81be316d86d27637313b9477ea415b679eee38010e2fe207a8494dfc78106353b64ce0bed2b7b93d798f41fc60d740a5eab6e250b420b89d32ce0dc4dc9701e8c0d4ca0ef45d653f0de0f762300265ac3432979a1081ea472181db4c05c56b6c428a4039a8dee75d9853141028904d42c815831956900114a0ee0831528b119403116b6f6fbd25306e32d772d670e882cfc6261d5a73959f4150ccd9d810fcdafcc6a5d9dc02f076c80e987a18ef804a3ec665d10a4e07f5a1ea3ddd165eaa2daa07513d239b2503823dded05b62d534b9973e5fbebd4da958d518137e9133e8906b9fb28328f33ce1bbef98eb693c47f7823c4bb8880e585e05c3293606bdc35e95d4bd0df132b1b90fcc82b20ba62e65d29a1e9b366671111876c988204b2d9186b9e43001b6b113626bda62d0fc6216f6d0f11601930cb0bc442c57f1afef0d2162e1b1adcbc373d4a23e9642897f945e638970e6a2a71adb9de211c2607102fa3d98f895f92bfde1dec43b3667784ecca3a2d2483d9f71f52e99d07423729384e3aab6d9206e0c508da305cb2312c04e5c380470a2a84d690d210b3e1aa5f9cd63cf23196ccfae5857d4f9cf676c94a53cdd75defd8ef4bd5f96facfb2362b6845edbe059c6f3c72d519628d5fd02607541c900cc920991f0010276cb4d6efbd90870ad8f44a29e43098e27ea06c04cf74ecc97a133ae1fa2a35af721ec001b6b69cce98d41be4e0a2bd6ba9aa3c8e38bddfb0d6abcba45dbbc445d4e25ee93e808bb17035701af70bbbdeacdd71af8cc85403e8633eaf1cbbed1dea8777ee95ff70e765f67dfedc2bcd51ab236b83822697a8eafd4261fc39ee642eb5766b7de75e197c960eb8a6c60089d887e8feb75c8d264189743a44e7b6e2c08454d782bda5c6197ce2da09be92b5a443c00f379f2d7a8875ed5d8057925b012765809a0bc5473979e3e472ab8dc31ae6721cc9911944ccb0a5e0910f26190bc5b3b2d7668878ed306e7b8f02c7da9adf8bc69800d6bf1656887c0271dba7e3a3b2f061fb450f06a17896f5a07a75504dce956acf758ba2f61878fe63d1e9c8e4006aa4152e85bcb2ddd07e7a7d8c8c85c882557333527a7df5b70a7925b8b3071899aa0a456e4d30adb753681d7fa8cbdce5abd5aee593c139de8be6a966cc8c6e684432405e496b327617861a87475e89b2c8e1da0d4dc82be1c169ed2be700f68e17edb49e17ba05d672bfd47c25c5de1df0373cd62d6b03bed5dcfa61c3a133392750bb9d845f652877083531c92508d5758e821bf0a15756fe39ad0b212f5dda7eb44036984d9057c2f744f2ab7b30f2ca06600020da1a02d3a77d63c9333fafb3b8758c6c408d6b9057ce92c3ac446c587d0aec2d3a57203b8bb34a89319ee9a343cfa3922302cc9df71d10d67992d362ab643bbe699c0884f8641522379aca9f55a9b07e74102e46d502a1fcdaeac2a51208a763f96e6bb119bbb964025a5a65c092420ec82bcbc9170cf7f1ae4cd84dd258236badb530ec37184d71bef9c071d02e744cbbe9f2e43a98c48a2677ac9433f9a608bcb2c02ec28001771f739525c812fa5d0fccbf262ab935937bb65901179d6561592286d20d20346e2a29aec1b540f54c8dd6dffe5ac1d86d122d489176205be9268931f6a5e99ca6d16e55e5352a860e15a975ef1a7f4aa1f0a23725630a9e0d2c7163ccbe0c2c4e95d1cc34d38b720000de2c241a813fda3c2d9082b5899858e0ebcd2b11b7a2ed36ec3174267f83281254247f5198c4420ea19d94bc64b7ed97f4378aee07a2a55eb07400287c2d6db50293c363559e7fea5cf5c40a130c4adbef4d933e9b9d69a268976ea1349a397ec8d2a292f288b5d2a88b2832b57c9cfd33c502543140d0cf7a3b2f38ee319e1b1aac890565df64be0218ab8be5ec7123f01face2f1dab91502342a11815677112695187566de4346fddee668ddf3b931585454fe6474124a7723026b5f33083eafab07a8c8a4f2b0bd8d81fb7d03e65cef083ab221bfa2c3462d9dba2245b9b252bba34f48c2a1066c8de0699e698331388461b59b6c17f252c4db9ca6c7210795f2393c0ce629941a0907153480d454fd9645ce85e731fa606951f33774b5af7a87d89ee20de1f3b7e79fb370c593d3d441d1eb477422b569170459c162df26d1e5797e7451b2c3bd84eef1b1594a7f0ecd3127b18c9620ed02846cd21323a052ad4a3a57f430583cb985cea306372a6f6090e7f509897f435bd885461f0e9b7dcf6c27b169ec195bde23e96d150320506da4db8d607fce4142a6b770b210f203d90e5ee4c05cc18e35e7f1318f7281cf2cd3d6d000480dee4a01a825a3331de91f2b394e4aca44e71525581a79b1bc2f856285f2420d3de464927c834802ba4fb5a8911e8aaf7e09c1f1c0f6818a80105b3b41bcdd0b0101c4c5239152a1d51eb974b8ec9cee032f4295538a3f53f567ad6ec127db078aad2df97c20ac5470d821d47b60268ea9f2a0ee66124a463f8955c4e28234920e85f708a88fa74312c65f22f582c06bc9b176e0156253efaa0a932a5936295e32eca33fe8cff60f53263dd1456d1dc3b8e349323a1103202322ae4af501ba6dea4576c0e2585e9db158a685492375504d15b359388faa918a68f7134d28d581157c6295888df769755b128766d7942c06bfb17b1dc78cfce36e3c96146ce949441abf30e6bb8fe2c541f93ffcaf5d84d5958a60575c384355591e696d2720bb3f6794dd6f900dccbef1769d66a37af645e090afc0d05b9d1ed49c2f5c7a0b2f561f0382c99a83b1717c72383f22cc081472e67ce173ca1b25196594e0584ac7b63389844b84956859319ac4d164ec9046ea8f8b95a4c5dbfe6f48f1e22da49f54b31931c84d7457eebb64fec975312cb3480d393e55eeaf6ed2075d85ca599dfcee0e3f0a2edc298eb8c1a447172f94cfe74f149b97fa11c19ed6170e76b47addb87cf1d5daae820fa71093c0d6149726e01a899b4d62596866d5d01d10c440c12ed0d7b12386f32e3a8159854427ea31502564e1ca4d1d1c8672cfcc118a6d0aab6291dbb2680f1141c11f533dd1a129a73047ff9f1f7b327d0cbf08d61ada96f1a9aeacc162330254acb9766e0cb3a91c3626053c2ba2c755fae20d2eb0c2d0cebf612e942e0cf4d22619aba2a6d11ce1b64ea3213a7dc8a88e1b49235a1ac0c3f4bd524e9ad2e04f3232d765d724ba0d28b87d13d8cb5e50bded47e4599fb5b986bb3100e7dd64cb5bd4e19d6e05558d5dd0f7aa05da2386fe03d7ae2b54adb3a8f24671ae5014d6512aa734cb81cb9e43e2530b617ceb41608c39449d8801d9b85dbe41a927f384e46d17c34c40af56e5ba871c141f64b4f01c1da67ca18e5b54921b2ab28b5381854de5e2167a06ab660dc78a0464ea51132a56e280502849190afcbc5af685543b48fccc76daf1266184fa16d96f313d5c541156f6e5ed5fd59ee9210fad5e23bb7361137238cc4c8176bbafdf6bfceda678238995aa0d573bbdba145b9e2f11d6ad9fee0813e00815b82333543fe3990d658364825ae0ad7defd28d70544c58a12c977227da86a08713a9ecf54d682c8eba2a76585e0bd0cf437511e78eb1374f2c75d0d4e4a6145acb586edda3fa889f39b4a93a33a8bee878e8913ce1ec7b9a4d788e8dae7e93b7a466d86942dc47ec907eddde7c3269ee74af5904bdc2eb4ffd6fbbc3ce76fd79b1d1a52a2c06ad764b95bdbbae1456e975578bef3bfd18ff4129220854222023d642660d48c8ec7d1b713e2e42e15cfe3ff17a9f9cccec5b6224c091ba9af020308cfa847413029d797be27c50f4967da265275a3e321891be7254ae0580b69aa98dad632248a865798159f8e99e658b09a2da7a90377a8f31d48ee39823290993d376d294195cae1e98416dc1e30e261fbb283de218010d78a28370bb7e6546ca88fde41af87921007774479195e91e969c64229717aac175c095b2d02ba04d01448e619d26fd05768f696f2136a365a3b52e80c801477d2e1de1c76d0968f77564cdcde6040485a983e7f08b1c59b81289487275bb2eaf8e599ca8a07fc0706f161016e5deeca021d6866e2384db3dfc4084c9dca64aac0914472cfcde302f6bc9c237d7e68d05f3d5826e91227f79280e16069b7c986b9ece289b7482ad43611b704fcad804e84443f621caf780f0013a5f341b620d349002300ef84216589d307e45406d5ad2589291729146e432915e4202a893be21822c75a5d2364148f3d51717aed6d440006b6a3c9cb44ec4eacdc0e2263c728633a7dd998e8ffb7794440925b5f60423b818e9bbe483ed23cbfc9db9aa11323cb09fe541cf3fd3bcec68ac199066047f184218af6aa0b44f3e0cb37c54571a2b240cec26f616e5f21db22b68a0925ee655e65212abc127c8dcad6ef6230ea1c08ae993edef213c4e6d276cf1e48c8787e4d4bcd1f172732d6dfe06cd53c0e98259b33f0da4536993ea1065d1bbe31b30095114f8e09da5e1d060cac1da11d28b47c65ba282c25fbc5047ef9ce2b4ef4c8058c8534d21143ed22865cd42c08e6ff33ccfebd07ae87953b780a50c1e15a28a4b826053406c7e2fa7d333dba9f591140b9ea06bfcf2bcf5306f4f62bb83a98b272a8c8bc9ea8686705ff270d9802389ee56c98200bd7e8e9378cd88e814c059beda063cb319d454a9fe3041a4b78d6e0ca40f34d59d08b4e7b05feb37d3f663db25b874ce6c4dc0816b81d10136253c6b62f26ae6470628b5c962b84c83f0d896f267f354ec9cf73a15e56a6115ec2ebe72fed329cfda6de0335dfcdd30e784a40c13952d102ea9f74cac5638b092fb938ff32b5811b65aa1a3a8390921ddef525b7890cbc9fa7110dbdcde8962064b9e82cec3df300f5860b906ab9ddf61d8de6b69dd6af04863aac46094627d5ead58356cf4b5966281c77da25716adbbd155065e8bf6c1f1fbf4505574fd144d6f884c70137eb404c16f8ec14d8243657440a772da0b11cf811178080c8f4aa50ddf0d29c1611b4ed9fa54e4216fb493c8280ed600a5bef2dd99113de8188b31ba8b027fe40d1a3ad52b840628f1e035e1bd02d37760bcf3100f712312240c426e61d9886778599ba4a35c7953daad97a0ca4ff1525f21420495501eeb70641f4c655d9efb97f4fd388da30e248168feac4e40c8b046f247d9a47c0b8bbf6d7e1931ed1664068885baa5153bbaba93c9a00be99fb4e875131904963a700433cdf4bcfdad92c6eed6239559bf4773a7d114a289fc123a560217513e0267a320a268e11206eb620adfcb8b2d229908a0cadd861639c0a4d755d8f417aa5c5dffd0a3cf5604d4527dd22d5020723f7b88dcb60c5618a2f70141eda474a7a16ee578e4aeb032c964019e97e0ebc864a62ba80505d6fb739cd58aadb2680f7eabe106439f6bcd4ca6667666d48f2c8f925661452bb65a5beb5ca736b4fe398467b6f99547c8237910a7e48a622c86ad0bfa30a762ecf17e14f645d430b9f9f14ba2ed69517b5fbf07a5a36dd9373f9317c14de8924c65f13dbebb737f5845538136008f70c9e10b9a7ed28ca38e496894f3fc4b98c1c7ec06a6dc115d643aed53ae05a7eea661024d27a585f7eea63bde8cd9c6d2b8ca1636d5fb09f080f6c9ff665c4da3dc0b6ce3750e8183d3f2388a8315ce8dd65d5aa698b43e12d4c3caa048295735a8efe5f12db65668ac81294cee69806e37a8f8914ba7e8ec5934ad0a5a48ca9bcae1bd333becfe6eff4494df5d8b0cfb36de9b70912cc3f73e9da1bcd38f2d42939d4e517d5db702275c8cc20938643b0153880ba9bf53b1b1b673cc879c29237ddef081820440f11caa2a6649e4185999491683623b39f47ae6edf6491470f83d2571b220abe4b682c9b73731f711527ea698b72d7231c0c3465263d00c8ae7e98b974a3efe5c0f49c332fea00e6533540efcd0498d8a3b4961b6c5a609b890a70cf3695cf8bacb1a42cffe9a247dc82abf096ba4f8615b459a6121efe1c46ce6fbe8f8a7b6bada9c71f6a6f3379955d16b932c13267c00c4908155f1eaf8d034eb99a6c7775a08fa508c0b85f98480e3133f1372f90d99493c5d9a6e966c91dac161401d13b882bee2d9279a5ec000a11c73190d0af90cad7d07650f2c396ed6eb220b9161b7db4eb2d3a93323c98dad0e9fb01a04d6c5c34b6670b11e6bd734055ae7f37e8762e829db7abc44eb53c9d320131111ac2a63571f05d7ce9a1debf9162bb55ce4d1cfacd10157ece4450a7e09f8319988bf37c14da237f363792768de9f1b72084d744eb110da204a0c3fe52112fc2a742b2c98db3d4455d04e561647ee07829d2b2bcfcdd86a51cd3fbc92880bee8c43e90b6a3c72780755adb9eef7c806343c1271cdba74f4d85cdba477468a9babb5c787fd8152daf68b2c47b07cf7a9c7b2b83984aa62a02161367437c54b4b2535a2f30cf484f77018f575f90abf6693b88463ce49b7e23ea5308563546172bfe16272dc33b59d2f5521511510a7043c82a55dad98e900e28fa5294e56af56a549402916aeea61eebedf57c42bc62d0c32e75832a7f863920fc8e24eea27074c7a4e9ee6cd6f47328895f83fd1d21b16dbcefdaaab824bd9f79f2e2c2799e7c40200f1f14f025aff085a26bf7f8fed7f2c783de410ff53eba4947a9a6480bbd4d58b947fd691bd8ece81484287f5c7a1afbaaa0a9384b17a4a61019abc57cfbd5ca9c5039d24bd50265e05c9f827deda3634a9c8ce69da8ddf2052107d68fea28446353a0274ed57524ad9e7d29e7fd0bb5e37f45eefcd997a7a4907c87664289b01c3344ce90b547ff5146a1b1028b201123854282124ab96ce335c87d6b242822348d56a2e6d569320d2dde64361edba89c9fc7c624848875b063606e374390eaae545f2dc24976d8ce2c4f0b9508167d65659e7f470fff73ff1c991df5a5e3fb1ba4a25286bb4d1ce2392568a1f991c9b7b05695890cc37c98a0bd10d830e1f81e1df12c62905067e13921ae9cc01da3c34254bc2286d94e07762a3b47a45ce12a490d7b7065546ee3909259b7280e04e72bb12b14d9d24234055d0ee60a0a49c54a4fadfc705779a50391216675e4b3acb37d4d95da49dee7a370eba5752bfd4cd938c83f2ffd899223dcb0a2de76941e53db7211825610a255cc8aec2f1e142a3ce8c1f51e0b5466cc9b23e9d134097282f8c1a9f5eb9ac30a18d3d008cd067d1c03ec13a8460605e8eabc888675356844778fe6116b97501bdd2d92a5880c76975d1edbf5f7cd26721c3383b4c2587250fe88f40ce48053cf7ed70c87a8fec81746b74f0aa648bfe23e09a4f2aac51b255217ec1250b245dda7d1e7141e660d1195c083b3e4e08755149e10de19dd8f70be39ef5a645ac985788051ec5e69d6018fd18811ec0ce2e8b26186416f4b04c33960562d40f54bf328d90fee9c1a58858e402901dc421bb63b11d6b57ed78bf0331fa673496b59df0246de168db044f60df89930477dd65c9b3a56f4ca7514d5b352ead55363bd2c2684a81dba8262d76c1c7c77729f6b7f38f183c93d69f4f9cb014b264173df6955cc18db612b968ebe374e3fd392c4d579772c72023099baddb709dac9448f18eae9a8691d164aac76ebd43ce40697ffa8593c4ada8dc45054c3e7d728e6f0f81492328cb9c54506ceb309dbfd23ea7de90341de403194cd04f38eef3e0898f48ac740989f68fbeb80591ec2d8a641adfac0c3f3ae49f446db16614d52b90129985f6e30d690dfa68544cafd09588baa2806554c82720063d1106e28ca8d2f94058b9dd485f20f7d8caa314a06a8a4618ff735d6888b046ef7db6e211b1435cb46ee81743ef3b71bc228548e16dac6430e6327113cae5d80a606ee3305a1173465e382fb12197870c573143e884b5892ae20c3c62e87291a337e4008f8a3edb4431c1f71c86d13d8531e8b2198c3f5b5d6d10cb4c1763d7c5ec76b15abbb019777146f0e280999534d4605ab41ac54dd721db1f1c2057c20fe5e6a2153f4995ba2a02341368fa3f4986c9d9b378bd3a124422cb38355d70a560392cec58929fe4bae9a47d5a0ffdb14b4a12354759196805a6afbe8bafdd55579515a763060f9cf8497db352bed542af9251b4d814e7992447c84bdeed6dd0dd657c9bb7895723cf46ea1ead51baa580da72fc5c4658ba362127230227117ae8e504025483a41011000e2d62dbdd7b89f8f329acd6cf277cfb771629350d3d73be439762e8bb0caf7b8b9c28f0aaa9304d40a772ea99075e180022cfb67cf3644a9d83874445701a2763e2dafa4fb07641100b5dd57cfc8afd03328c0f81da4243d320ef8e6e726c00dbfcb59edae0367c79518719c71ad592a85bc0142baeed572b06e1b3186bc26c51a4faf5c4dec103e30e9368241d344bd857ac1544645870645cfd91828be1600af6a2655dee122e2cee882e74f1399d86579d0b48c16599b80783ec945c5c82aa8f118b3d00922edd44a6197c8f711ab9fe4a0fec86c5ade7dd6098e4c4aa45102503e35fb70c23e6f33a8b1b60f2e0ea9825c88dfef666aacf46bf734b9bb5539e5703195779911af19cdf1e638eb1d3b4ab216f4d251708614e1d2f05dcfad898e60bdc8d9abb99b1faa91b06019259604b0da6581bf83bbd362362b9229258a02605536e324f31e904205c3197b0d8e55b1f64dba526be09b4f1e12238498f2387127d5f1690109cc84220483c2fd98d729c91d7209c1d28b697945b33eea9c4893aaf864ccb7ea1110648719427da1a5491124c4652489a2770acbe5d646c279ccd5827519be02e799da20b41579e183664c1cd229523f8e63ec2ec784275c923be6f284c8ae5762e8c2cf4fb590cd8b88a17f0673761d4c3747a2ff68c9b508d2bf123b85a74b54038a48a203b4c81919582c6e5b4034841a48524846b68c0caef456c55449c364172db09860c5a87f4b1f7e575ecf4b52961c75116ee9c5c27183c8f20ef03acf4f23471bb5acc1ef32cd9de7c026a12b41740769281ec255fe063cdfb09381f46b7695e8c90a5b8b019b7b21147fe9d92522bd2d8e636b12e0a252500631d40b0144a4402391109eb4f4082aff0ba68f8942dfa04346db6ec47ad53c436adb42e8a71d036dccbe059345ac571d41c8d7d8c3cf7c0ba1af16e18147e959859a3c8f1213b51a45747b4e8581089295913b561105d00b48808b5e80c05f7546f485158762ff8b6d9a4f0b3bc92408ce19d47fc879dd755a0a26ef42668800c3130cf5569f434508bef439ca2b13758d754e048c507b01bdcfdfd528642050a8a3adc4eb671937031ef4a91c64f8b68b10e961941e7f0a98fea08f46953d7b692ca034f2db04d8edaf0a91cd143c4d4ec9a2ae4ba75148ce4a6ec4819d159b3d14d84f59a3c098e858995a530b9790ccd7ab8a7b09612b94f6b40d398e62b859b0bc0f9be8af4ebbe0778d9f155036ed8bb31af10c6ec5a56f8442ff2fa71e206f28e9f8ec0f5cee26ddb6ee931a86c4d598ebe966b2081f7c72ea05ae1fc552a78fd13aab3a2a208fa5f739535db0783a7f69a00a6159644563c1678408e8c095d93fde1eae30402c675d771a0f85940a44b4597cb0e1e4a9f098b1a75524074fd7cb3044606f1b5ae8c112bb230d32ab14e01022323388c1a5bb48eda00b4977e39263c1bf77802892cf6e9e046e188bbda6468f4b7ba3e4ea952376e22e3f23bf64043cf7f0d22641bab59b7c8bb86095a1ff411103617a2513088c5149eadbdf8542501a2b29627578170b4212b3c97a68242ec23226e5cf50f643d7cd277c8e6ddbc1995180d69cdcc1212f214507e943ca3951e4b4ec0e77c0742211f1623a8e1a478da5ac95852bdcdd8e65a7ad41e343be5cdb58fbdd9ba84067e4e404c8eb322aad143187ce8725563f841e6b547eb6eff5d3ef2e735213a9591aa22350a3034d63122340745f298d7345cafbf02db5da92f248a787f41ff2f50864c37bbcd2d4ea739168e181e4fc9bcd3e203fbbf2aea3718624db89f4d04b1494fa16f2b340c036ed7f0e8674ece214c0b66e6b22234fd04aa866c60e7d07dd63e04c1cf8e9727a1ac18ac9f3a5bbf08fa2bc9c7f8cdd624a6666d5f19aa5006be86362c51f4a0d7479ae2876a96447d532332aecacee0668eb9d4e3d3f0d284d8a6577eadbcfc6b6fc132aa8503132c27b07e66cfabff3b0b7e9b9bf72ca1b568f7a0b0658516cb21d5e9c66d440f2cf2b75b8201e5892b2c798e68c2001705e8d29000a82fddc7dfcec8e40e8b9a77d293cc91d3ce9545cf7af3de3d66d7209308c5cc730558af1b8dcd6e4c1eef540b6469d0a90f3c388fbed36947d74da58aa9ae574979f73dfb9e1f0d4aa62284016085125161570abb2b8e090e6ada5ed2a4e2cf8aaf48f019faae799e57ae6dc63f7797097b94cd7af75cfb1642310046b758240fd141172382c301e5f060b897a623a59874c6a155ab2ca2c4625514ff46e1a88914d7335eef0e8191c82fc7dfd5d78bcb680def5043c8f91bb80dd543813807f9a86806652c1f15240520cd0e855657c32f38cb73312c97e94d812089305cde9aee5250085b78ca7495a680bd0e451de6b1e202957be5629185e5e7a8b5a9d06270c58d9d9132e716b805f300116bebe42c4b028490602c1676a14a1431a94093e0a63cf38c40a2aed45528f4bff5682eaf14f2d6b01aaacab26ca5461923addc05830597b1d0d8ca0f10c3b7cdf962143bc0cc928d24989b09258b2e2162c8e7e549f1cbe229f8015d62e3fb7de610665f04f6bcfa1891ce01091aca6e08e48966e84b0d210292209ad993d0b320162f2bce64058387c5695e830f7c4dd314148fd5b9f9768be91cb68589984a3e13a4c7ebdd4e7fabbc838f7aebb422173e374c837cab49fce882f39f3c890672e072ea9b0e77451f94de12cc16a1ab1db9c983ffc372fb8c446ede67eb6c7018deb8ad9ac8d2cf520608882a9de2ce4e57bbbfc5c9a4ad4e334efd86c41900093cda2438e4e86286927db8438655f2f071eb4eb83d0881de0972fc3458915dd7acacc61156d3c128469d965e45ac9a7db4df86968b46e5c65b717ff29cea469ad6d8ef1759b2300ec45b42153032dbe8a6be96c78e8df9b53f5e0897ea2633b10d401f813777129b0716cfdc5fae2a3c6159ccefc2d50c70b4bbb499fd0d61fd8343e5aa3eb7ecb4aa73cdaa90982cf76056d5d3d90592fb619e7f98d8bcf25c500daa6a0a8aa8517aaa1d4a7598d1a5d5bf4ca7a75325c0a92cbc4d5584f16f9b20e637025617e4b5d0fc51c6c5402b901e6933c1b74c457c602a6db9a8b5ff9494ba85d0158dcf87a5e019258448a470be70e95d22c46471923c142ecfc546fbd992b4d3ae382b00c05e0add29eac7eedfde6a0c5185040f800a20d6e43f0bd80e9e2d4dae06f6d6d02ae70563f95bc4069a1862f266053015863905defb6b40c3aa4fc148a51043615eda97ed43f0adfc2e3e80921d58dd231b71f53c128bd67b7ee42531c2adb6b7e50c90cefc55ce2ca4974844d4c6d7cfd473eb75faba3d0da9c13fcf67a385c813c8b2fd62341ef882d75b35be5ad10d70d505015787032cfa26185d86bbea971fa07c0b88491115cc8ac592d4dfbc2ce8d0486b557a64633c97f5bf328e4ff1f4b1f33ff2724d7c00f75645a24d1885a7d054e694739679454006dc6bb69daedcc8b2fff6e2148fab5ef4adbf5035b731632aabbe1bdc0bc589662a642e598e797fb8d3bbfcc04863204d04577438db10800c2e15faedfbb51ab6e792c9f7c51ff5a43ec22653302780f8446efd64e8760fbfdd88d6a7a89a8fab0f2d354bd4ce762e1be7698b96aa1d07b009472976376be89dcc9fba3fb1d992d6b2f74d733923a0dfb2936c20ce1bb620153df12c0ba96de710c54c9239157e9073fc743f6d8dd3df8d047f9f9deac3c379a961914cf1e3f84f6d3bdebc5c8077d6f2a7f7cff0cb7abf2554308cab4e03cabab624230c8bc5f72a8ede3d9cf670e4e52fcec0622ad7e2b1c3d06bad4fd35fb117e7fa339cfe05c215265d7f9bdd482462375dd1ab4964b8ac4fc8e71da29021c992d1c110aef325ee0269974ad7b476c469d568c764689a09959a8e02d4f32d48df9c630a2348ca0e208c83e6ee00eb7d0559adf56a291f6dfc43e194b7403c2b8fba5f097a2771c61a526ef5fff5757bc20df09d7e6d26658b9a53ce9528766b231fe18840d1b1d596ac68e280939245043e64ea228371f957793af29db588466ec869a45336ab9a01631a560a7689d8128401f5d772a80a02f89cff551c6ccd6e47ad5259c7890a1fb594d369a0d8d6d2352fff1b1fd9cbe26c5a14ef8850199ba87814ff08268470756df1e5d57def43235cfeb2f8e4c67d88560ae2bc6cf89d46cdf433cb000ace59f250fe9df537ee3ce3885a8daf62637abdae7beb25566b63bb7d22d41744eb0e3b10493c0351af7a6d6d74cecfa0b6bd2e9561954c4d5439524b286d0acea7e4a25a88da41785bd27f649ef96c7e957da94c469b363656541c120cb8783c44ffea3e6de5a963319cc120d119f31f99c6b8e3677fc0e3df53a0b70062d16c57087ef81cc5f21ec46982149cc7b790674d78e730e5028058f812c74bcf637e10f735a1292f80ea9327af82080eefffb566e76132f669a75eb3150828a53ee63ab4954969f099da97f7c38e23f6d14d31d6c5f2110264350afc68d46c929ecc376867c79e9a7c4b891c73c224933f3ab3c69f50abab983a2c1d3068f69e9fa349b0972f4d6cf2556571bda23055e6e4e5edeaa4b36f8fb41972204ae59d84a80c043abb3b03bdd92b6aa02f13211a68791c2e82315042d53193b3aaed8d98ab565038bdfaa148913135d3427d2ad3680df88862ea492161ea449fbfb4a82a5b78ac5bfa013bffef8757ba6b5cacb4ae9ba9b490834d692e1ca4b462645ca327954eecf7261df896180a8eeb8900a5f6151a815b49241c3bc66469630f5a5a795aa9f0dd1b5130acd4afbf80244912cfcc5f83f302fd4d348a37f763dda44c288cdee0382d87e2bc66184ebc12e0dcc6242aaddb9cdebc1b4b31d1e8a84ece623a6d15d1797f6e4e205ece95d7a0c4e99ecf0e3b93dda0db784f721e753e5aa233c27cce2d5d4511a2b7f3e5ceced4f675eee9a9931224cf5f579cc409dc6461c02614b39d5f903e93df7a40e433134ac7539b7f57367a1414a096e29dc697796a5e83ae92f47a1a94a828a2b298d7c8419283d7c87fccbc721f03db1325853d5e39861c2bc0b23c5392da071b1fb30120b3b1ac3dfe899978c0382ae523fafe1464f1fa416ca273d7d7c0f89382fab01c9df80dc14d1cc204198842396746f923e11d72c67f869e1aa6f6f4ae13971c5968c8cbc7ee3246fa429bfc3a5e97b94a9ac2de3268d6493a02b7b25f1a3d22504127675ad819a0281daa4e6d442812d0d31e995eb5fe8f1a8326523e707be5038493a88062500c0dbc6f2766af6d93fccca204b382046c85cc3b50a2af0631b718de860a472a99641bb1a744ff47e5a5ae251f8649b8302c97aac71888aa4785a16e847e4329c3c5a5ffb3a1a3ebdcd6b0130f76191870958cb2ae4c9039ea04c2e7de39f949f4caa3b1f14227f01347daf36362b27c571681ddbebc58815f6d1b501b3b2ed626bf799e68b7ccddaabd3de9dd53cd727633776ed226eee009a5759c6341813137066ce92f23faf6149d9f70faf90158a891202147c86ac3ad089c8ce8796199e474496a5fc284bafa6aaa39d72684530dc6900ba649a5b724b55b1bb6e8c075da491342e4a6a7753359d209f596d324a78bc53b7b726436c9635ad5aa9dbada66613b39d616f7446823a06836001ac5fc2b7a58aa752506dbe1fd407b26c5b62c912ed57c2e03763418cb9cb506ddfba4e169a814fcff48fb7bd69f9647f14f37de832efe1340018bf54afb98c807ed733e68525523c907c35ce8d367daba146aae076aee0339b28f0b5c8927abd39bd45827ff41d916bd7b73202053c20f7440dc1454036d5ff2247890c5b78e51e550ddb0b5660e6de1f2f89d51f5295e1ebf745dc6ef362cd036f5a799da1f1a9fb585dd7b70c467acd953ae2c44a7b51b006fe3458d2c17f6684876a7500b19f0815d140e395ecd46ee5114f2038006c1b024108c766e74a04f5af80d44d47e5544149805901a9abe718d469c9cdc87f07488b57fc92e8aeb883fa78542f94463c2a3cc0f7426751383eb73f01829caef79628da3ad08d2e235c00db63c6b755577373ba98060bac291be28479b86da17e5046f16ebd52bf6ede51b240eea40d70ac5b686bd7530993a316c7da7f77fb4ab2ca2017fbc68fb21c892f3afcc2f8cc941a2e65eac171375d79f6465f7a72eaff0fd7b115816a10a4a716a7644570e05f84f35226cf1b44c8b510e43d2259e096c890bea606f31b5a4052783239e9acb00d987fbf8824044dd8bc4a74cf6957470ff51849cb690f5884f3a1d674c0d7f4823a420659c0f0a3ad10b68602ca245c7543e4bcf97e5a0520818f902ac09c26462cba275d8e917fd4ca41a60f089224d3cb54ef579575736a9c9d9ddbc3d105864968914a234d64eeed1dd035b5f0e760062e73ef03b90bca636eb2818ce744247eb566cd07bf427f00bd584de7534431eae8e851c49154dc4c4316f0c961df454e673033b4b3af1d1f08fa4eec2cffdfc52e0763aee57b766671310d57aa478364cd1a31122835b1980b113b64fcd0536d896a05822f33cc580fa60c0cf16ce3ae38e1e53d6ae55b8a2138b2dede4192d026c3861c5a9f1ce34a2193e605bf4582145291726d7a56b9e570a834d20dcc3724c3f310048314452af04e40cd9bfc6d92975e90ba6c38ae51a0b662efe5879bdcd8561fffe2c015703035b86d3dbf80f4a7e057dbafa3b08fec5708a3b61fec9245d0eb5d3152f2a5d75780e03fd2458f73ab49e20dab174b1d413a4457653bf79582da642a3099dbe9513fa39a069e942534c32963a3a32ac376a86684ca388c1383910917f7237b059c265e35e29d6190afffaca90edfc919b46e3b2b9936e85d2826a6062e96abdb423c8d93da0a6100779b7c7bc018850ab0e678ff05bdb4a4f4b3ed1a55740aa68d6b9e696effd57c2ec88ce5a1831317d158ea06a3a9d9d669f34fd5c59f782a69ca04cac9c3d5169a42f501ba868fa4b7e4ff7e5bfd1543687da8d9f1b45629788459097317b3675d508a062971a0f5def7954a79b1b19684e8c0efed24b29fe940ce2a0af4deb647afec43b0f24c2d273a53f5f0ff6c44951b124df718b411a98f8ba181202834bd403dd17a67918bb02bb6ba44936305ba59eb1c4f342ea0b23a14b36c89d163272a3c3f096f32f3e29f00298b84b2a0c045226e32010371149bbee9eb33ef929f9b53975d90f362c161f803f3433c547f1784fb06aabbdaf867522228740bee6444daeca88310f1012800dbe2dee7c8d3e12f27f007068a9b33888ac15c3f4953e8609b67c1ebd494e5bbc1cb9d4ea2de8e734304985e4620c952a86bb6fa0006b978dd8cc87cf716e743018f7235ef7c3f511a31f8ae416d7dfdab6289ce2aeccbd71d360087f0b876dd7d7f8a726edb7f186137b30542463551ddd770a3333fca51034682285d55ae5a761c79d4cf8ae2f4cdc82e9a6bbcd235a488a806c9f2340f417d796d06902e1d193cb10bcde68b0785c4d09e8b8d1b4bae805b30b33aa817fe7ca8cf3cb59ab83b3ccc4cfc3d1dced7a5abef593f71ec15c28ee54f01339186ba5135b92d16a7e923b838f508c42ecc2484e0de553e56750dfb62ea7e99b93f491cdc89ff7bd5289259ab58e313b7a8ce45614bebc42e528ac3de1c04169ee8778057430eec787d2a174aadff64488dbdffae94baba5f443ad3b0759a4676061b15fc655d62cbf36f8905509b8e64c88bff975db8d23ea29a1d4343661b1ef8e7c5c1f168069ed29e680464dacae404b5c41f3c5de136158eb9a5a269ea1465d4b60b5901468b326772c14315516802e771209da3ab88f8b55c20efe4e9e9c92c3b57961a6e264c3bab0c29b8101118a0384b1585109f6cc518f1a26d55b8ce5e7e3f04c1340f49f44b69e960ee855885e924313bd345e716abd615d915d64d7706ca23c219c516e5dca0e12f6e45a59c40478776778fa7ea22b876df8ffcaf85ed9dd59d317f0ce76f389e7af4a4422e9ae21e2f6a54fe7a8f2938cf2544a78da9d705580b1a4a73cf4a1669100c70cfba11475b4e53026380aa64a75e1a2de2b6ca2241d7421b84f10824050d5a73f823e0cdd14ae5034b71480bb5dca4c8eb2f4edfd2c874557790e2a8cc20fdf790f420fbcd98aa47c342c44890c4f1b62b9c598181adb16611a5a4437a64f0d55100a96d5b94c00b0e6912ea9df56d40ee1827daa288c4d64cf5c47ccf4ac09fbb36d98ba60e4d06689834e9452f960ebce837f59accc46a6511ecf596b4e97a1e1800147865eae900cf5054a5e9b9567d13e607a3410ab3eb4060eec9312f127ec8006ad30fb6b31f876808daab85f6482363949a3e80e2c1acae4174a4d02cdcb55d57555d660989fec84ea06b95d95fd912168ead4ec4a36193545b633e387d7a4f48257c5a7abcd5eed04be36be75df83e445d638106b3caae09918c0114b534f65160057a6376cb27b821738241bac7beeea2be179c94ef86ea6154a5c5ab8e80ba12ebcb485445908ba42a72ab42069e1ba5b28120bf9f9193fa8529234db04f061ee8649141ca96d9b877307f394e5b85a43099dc71e6995cfd20fdc46d6e0b10fbbaedbe77dbdd4b2723faae7a87d31f327ea7fb76a9c0b79a6df0fd9137a45d1b88ad5896b064a69cc045e1c5619b91f210ed88df14252d306364a3e6cac12f44d7b7251d403c50f92c66ca2f91faf71b8a4b3195826de42150762ef203c7e4f98a1b790acfe67a56d356160b04b74ee073ac52db51ae20374c3affdf7572c0b6de77e87dbd45cb8cecfd6b1bf30b9662b3dd070f61b9d4d98c894c3a5e080e4ef06bdac99f6f6ddbf31c352d9cab6748c12ebbd68f0c6043ac4581cfaadd5e56bab19dec3d1db6cf8eebca5495aae4b2ce6037728f46d1c9292f8ed2909157763a9ac45318017ee8c2e1d18c5643eaaf45eaa22c0ee8b599f3036f689ef74d225f14cfc7b340f9011d31082125a0bd1db416462834a604f8f94bb9a84959ce479756ff42ec0d41d9e274a66893b1779718e1cb8da26c2b55c2d9f039e59b0c0e45ff02f17c6302c8b9e9aec8c1609e2fd69d4bc48c8164778e7d63f6ed0741521ede61b8eaf9b104b8b1579856cdb16034e4b588fafdfa5af5fd3e4407a02ae29c27093c2c0cad5ce6e342a5e00a4388f282bda91e5e8977efd3597013fe5c068d28cf8b1def8111ce9524f9dd96faf571c47d8d1053a3dad6717beaa80e01ae13233d5530c8db293ac52449500a6dbcd4004b12b6cd43e9e0649ed029d99f1a3cc114c4fd49c9cbceff6f4eee92a383f7fc982c2e27aac54441a6e7241a1ef6ba72aa724fd65008a77efabbbf31106dfe5155ba0094162662fcbabacafa37a26f4a91ccdf56867f0696816277ff7514e6614e96838557405a85c8672173802713c7f62d0dbe60c3e1252d9a30f85168992f5c047ea3af5c63425abc3b58595ec11671e03716de5b330f7ae3d82032beb3090eae6f5fc574cf5a8b4d9c812d594dbf24b8b8ccc2cec11e4cc5e2163141a32698cc2dfe8017e9e70ab49b9ed978e0c3d4cb62c0fb4d13acd8e54d5e35d891b3c3f6ebd2b5b752f751f2a5232b7b2a09bffcd3fb1cad9d1d07f2f567aa5aa343bba1aaab4efe5920c8a8a10333325f78cb1dc0b6fe1fb97596467b88a42d67496283521f563185420de2bd39a982193aef6689d904834729b42e123b061d34890cc42e5273aece7e684935228e19693168ae1c4c8989ce62dc3aebefa9e7090aaa240b4e3a3b9dad2704ad00a943a704df3dfc73e3ba2425fa36d557d7ae7a113a01b34d8e01c646db7b05fc6485d3e03d07612531faae7933efac05ae1fe3f72d7583ce2907fde2d96c2079e6f688753a895ad29e30767265a90b6e66d96143b41bd7069a6137bced8bcdf293ba07f63a8cc49d44389a2b6868acf12df3590ffecbe6e6d260854cf9e318a606ab7d4a900a5310191412dc10b9ec63b2d84fd0ed56a25ce9bf668116238500638027ba62487c8290b3c671248676e7256e9b9e94c510b16c33ac1a98741901368feaae4c7dfe498b075ea708ee8d87e93200e1b01f6ba5c6a743e66263f433bb01b45868d5f9cd94b5139222e501dddf9de291217e3b7c706c47cf43aee6603831e9b5aa1dd4782b9631f1c8b2406e7f374c3a8caff50309c4c53ccc0716daff153bd9ee4ac0747cafb4a29860fa1f75e80da28caaac0f2ee11003be171ff0fbefb1e7ac5a4637a6ef725dffdfaf83291b507407d05538bb0d7d6588356cda9b88c878f28c493e49f7f1ad7528055994789f8a1fc78ece08e836c36eb9a639222ea8a77de95cc180227f4dca8a41603f93eb2b97d76373c0cbc393e7d1b9248ac1dc46413713c006d1fd5edd2b4004453d4a34214d17dcb823245d34a2cee36ab9bc638cfbb01f11f9a1be3964004f727d2834cd8c2c8a32de60badb8cc73e2ee52e82542aa32c75b432daae42e2cbc85ae121555905154b15a30fe8e8c1191a27ad773862e15f58eb033d6e9d85f6fd981626c43946a88be3ce70fe053a4d41a771a4724f08f5161d4a26887f83fbd482472fcc59e116517caa537f988174eaad1157731fd6f8ebb05d6f8330be0a7d771c70fae9d3ec974e7ed0f615d8173ff4d9e4aa9e3bc2481996192070107c5d9b8af3981882c4411975ac462565529d7bfe009a0b820a10e17048cc77904588401166dcc8d210160e5ef30791e0af91a7a6382d01d0fd3d5f2d37d27a2083c16470d5195f289edf810a4a00e17d2ad6123fad2f67c0e22e2605bf954a1666ad1473705d1424cea906354175c34060e35ac46457abba41ff093fbe14b3c6e8cebe6fcddcf076ac14317b86604e3f0a61e1e65712210b1957d44ff286029217cff0a3ef00c83593a96f30798ce20c25235496e6fc105d7a82142b18d5baebabb50899f6d49a7f5df9aea37873a3a5ded5325e3b415281665315075a5fc164b1e4ffdb5de02203cc50e004981e6e8f805ee59e901847087398c5c122de39817eab75cf48ec3245f0502b4b5ec01fbd1bddf03087d2d31ccd34ad3e28da0e769618ff1cbfb7da2cec9d07932c4d8d64e7f73f0cd23359d86d0df4aab2e2a63665190b7d748ccae8b502eb2f99851fda7368ae8cbcc7f14ebe8681331f339a61610db2970aa39b1f52487d06e2d6f37369b60cac1b8661df18a1a4266394ecd0465e0de334ac78d13ad90cc077872025ac1e18e8554076c47b2a6a1827468d17f126048736c3138fd1232d76cc919c9537d67ee4beec540f70fd6e2280d76759200cc8854ef5cadf7c7d1dfd5fa59372ca2b9587d9a3bb35dfd1ed81b23249cc6e0c9a6ed4a72c059392e6a9616a4c7e1aad0a77cd90b22240028cc885ad688ee8496e1ccf3a475bca0615a8c4d1636125054ce0a1de6325ea64203df6271fac4bd722b803f3a843b12ef2c764bd6f9f42ae99ec9502fdb6027653921e77839b9f727b7fc56f12c383f03a479e582cff8976cd4d5497c2fff42c72a8cbf19a80524071233532753c81f841ebb3cc26eba02113378998a56b44c8b544b269313750eb2c3a4157ae319ff70001a25ab4d818e1df32fc8a2b2f1913754101c3b8c6f38b33b091c2ded976449bb5d32b4274b52a582e5cb2a02d567fb312e43702c21954732a7b4337774231718fed8264ac67013ce9c89e7b92ded088175fd8aa283c70ecadf26ee8acbdd9629e1f8117696e1268b3b8828d960d686add8784fd80ccbe6bf79aca37498ec9eeaf5b6ea0a027bbb7ae28e3f5f4ed1629dea3018e2d282f32debf4221cd501f3173a94395dcf50f7079c33457ab4d9c09a4a52274193b6f3efe6d163dcef7149019bc2b938948538f491e329a53d766316c4f8fe753dc68d74a177d3a82dc8a7e1f5c513c84d9bafdaa48dc0d6c6843955d4f46704b3b54f30d421888c807cbe60dc649238ed08f14f603e55e6565de7c3b5ac1a907400c67389ef102a251753049ceb43af3ab8f8b21fecf91806fafe014d6ccee6578f7e89ce9b6d3de89a0773a9b16131121d103dc953bd76e3a5af75d249e48ed36634f3eda56a3904bc764dfdcc1f821378dcc17b5e2ffd7b905ccad406b9a8cd1953f34c7384bd5e86052e4d7b33df529ffe6835fb38522e56dc818582b68c532f5d437313dd8273beba7592464973a7d9de97b7d59c4a627115b5d2635ea9d30a6b91837e0339fdc2e3ab7333c41e80fc1a0338f3c9c68d29b286b82f770d87ae6a4818912cc0827044539ec09d851d70e323b078dab90e5d64df8e73c89d8284fd23ee0553fb0dfeb5cb7320984cc587a4dec9d3d05ddacc82474506f2b8129510d52b566ae78fe3f1bc1d578253c319a032faeaa5a62ba135f9492b998e1014fc87013562b707b881b2812e7c6cac1ba6131a2a7b179340b0257d6037a883d8129bd2b18775615733d6557fd6ca2e2aec06e238dd538163831d49236dfc95ce9de46069a8c3cb5d607a8094ebce69a160a2226bc85b5f260f81f31f099edecbe1bb6034b08c2d88eef8d3cbb2ccdf959777ab43424a0842ffa0c90c2669d0bd2480b904dc660291bac44ed9d0c8a0478bb2c22902a0aa7352c38ac2705f32879049e8e90f2db7f4510c20a3007d5de9f23c377e8d4f24ab175c2d95aaaa3aa57efe7de04ded7b374b69a37275bbe4d032fd0c0ac9aba7f65b70cf818c054c0fb84f4cbdcd711eda5409a3aa7a366b84e75be2f0af499e63ea40acdac589d3c358e93d35311bd9ad58ce84244370c733837baa563a3198dab15cdcc54aad1243498fdae964818b8acd855e09f4235abe62bb09b0a23ba531ba613d038a0375d74b46d3fa8a6957117afbdbfac3d832c197c49f3da70cbbb1001006783c2ea64135a0963e6bbab80bee1e949890797a4cd18f4e17622ac5bbe8eebf2ebb0e4bb474f4161851715f4d08291044d4f46dc109e4a41e47203a937c5a5e56c6f554c1e01650758ecbc5da511c5887468b8f1e27fa8360d97d68522c2199fed0bcfa0ccffe31be27b8f27840ba1a77fc6600a983678276e13ef23e0edf9141609b129eea1eeb426def1cb14a8a217146d0880cd9e88b3037b295aebb334cb4059ecd84bbca1961ecd441eb9567498f910e8b4d92d2b623cf0897e0e7371f0e3966314614b8c1989cc7129fb93ca371b24225cd24600e8ca0853c30b2fc13deb8fd9434ee18f0da64068fe0b45ca93ac8d270b8e16813aefa0bfc0f7158cda2018c5e6b7a41d8c19a646fc6c838cf6b883d731c49f4269d511f84d85b4a0ec12b51e9e76abe9f851fc8e8c1492e1e678086cc3f5ac950920f3c044bb25f573c109ee5e1bff35330e40db2de7649f29954294ffd72d1201f5f49c4c0f146031dfffe8153dd43d57125adef39a6a16a17867f34d13e5a6d8dc6d54f1b3cf6556102eada9c1e138144818f3d24478a540c11a4d2da26a4692264aa0ea303799f451c17f4d17a7f5c48ac9e7bbf85c803c7a0e6ce1d99cfac5afac0f1957e196124b48c148aae49127c4443e4f55c9ce4528ede29a250a5ca9011ce8471d7c27e3a6a3231d5172ba85a3601c2e9eb88f0e79289e1f20db6635d9ac8889df492db3b43f69a220b2a05ae45386403df5f3ab989534e30b0f6d74a62bc90e658f7ee0b9947346f523a7cfc880dbe4ba54cee506050cf0424bb8bd4de8c8b82c6c4d2ac1ac7da60409eba4d16e7fdd2e1318d988ddbbe50df1a244188696a33462a9fd1bfe8cc8106458654f484bc746647c42d1f3c09d168140e8cf1be7d862fe59d65a1bc92081bb9b20f434e9f0691803a9776325f8e7694e1c94864f8463bdad662c2950226dcb5b404b83e412278b20b171900c1e525bfbf4f4f478c14966796bf7416ba7d02ab6e227385d9dabd99b8e4a810af0f0bfc3bf59745a205513b6b0436a3a19a0b635633c4651e0a36d552320bd738718ffe80a147d8d3f83f180e41884a838e3927252e327ac69c0645e874f5a235e3d7b122bbe29054a4428f56d3de320125578aecb6e212f78021ce06e5a3c7690af3c3ca9c72b8935196734677a2d3bf1c671244ea350376172cdae8a2fb32f45fbe33c328d32128392956455b78a5618532c055382fd4a3ab1ebb04dc86f2262ef6df27d9f349e78348abead718afb0fef7512272cfc0061860460f07b68f1909b60dc4a489ab4500702dc3b531cccbc4b1818b7f71cb0802cfb6e786025724104d0a3187e1e4ecaaf0aeb550c7f9f626a2db2fa2a8b956c125b52295f5480ac3103a621f3d343a108c3af5dac4f5dcfabad84bbe51bc3af44281e63db8f2c88502f5bea6e4628c12747c5c3dae7bf87f3913173902227b72389cb51db6fd83b5fbfbd9d9ee14bc3be0c00204f63e58ef5f45f24e3ae0ea536643cb2bea08bc444ffe83330e613223e780d673843da25bc6e3a6c7b995e610cb03c2af90a25b046a94cb5696a3e7ee42947e1a312d4d2b48dfb4dd853e1f1ca17978941cafbbd72dbcc1a824b0378625567de31420bd62bf13be558e54ccde81d816367573c1e9f9d917096739b184e460350afbc78a6dfcbcbf0ac49f52deed21ff3273884517eebccd76508d28dfa9a3c8597dd8c7d01652a9915c171570d83897e6f7ecca715b62059c1c428a1b2266ecbb6b9613b27347df031592579d53724fe1fdd54a8b2e6832898586b1a49e48c7b9f5fdf8e7aa928033d655a4d060f918a34e84d65251a67170e4f4e1b2299030f868f2faa46bb9852fc5352ba65eae4c40f2f5812dee8a35c57fb0dc8ca774587bf841a0a9059020d9bddf15cf860b05ea77ee50fed8065ae327fbb877fadd780077cbfdc473c3ef8d45fd879110ad3a0ba143abbc18aefc8668501299b3591ba7b8a14d8ca14a8487b589f978505196a61360eceb69c018833669a4a8a1040d433d69c6c7e19582b5ac0d14cbc3a2143438f75a88b6011f2051e238118fffb9a9bb4350a8091f3371f25016c2b06923772b63306f31dc2e60411b7918354651feb6834a1d2fa80112b61e4574102fa5043d1dffb4859830ebe62434acdd8a1bc500a43928ad5b3f8c9c49cc11ff6022e62ba4cd3d52d1309fc0faf91da0f585cfe7c1e15fd0871af6ba30f8dbd2a98816f67a011b93b8db381efb662d6d1e620a0084bcbef481017e6114845a64cb385cdb06c0e0df5989d400c2545c0f29f9ee7c75e6c8514a419661edc90937e96a04da165e12c60ec0c64a49622670b4f7b742b6f73a42839168725e0fc3a40e3c32070b4b09293548aaa862d841386028526f1058b6eddc49c2acf44a457a901ef4905c1cd0c252121cf1b7500d75875bc45a95f2df2062c43091aed61d305a30e96fea49e60d813b777d42e80fb51b4c4c8695a9ae723bead5e29587f5a301ac93f96562a66546fe310a78561de291009147b43a04819d9fc9e6020b6c55e30700061224315d5cfbbe2c637314a8e7d320d44279e54772c6f0fa3ed40a31bc8fdb93380dcb5fdf8006662b5c92e600050b1b81b54038c204d40baff90a3f4fd23fdb475e573c76c13c6ffdd95775bf42040a1ef5bf4c52e9ca2d64aa1c2d7e4163c8e9d2e2bbf45fd1c38f0a5f5d5acfbc490fdbb41eed9456ffb41edbc1d24a48b05d5c881f8c169d47b963d418d2138280250445a3670923da0d237862b9d0918384b7e4337f35ab1f2d5af03c3f7fef70059298e0d53f875fc85e3fb12968933d51d2d46e97e289dc53bee35631e05de388c6c656348aeca187904478544b17cad212b20ff44aa9c6b78932bd5a39fd08782f7290262c93c1fdc92caadbd07c88263d4dc6b52646dab4aa3d821df3d2aedd58b917a8eef10d66af90be272822c8d608f5ae8d7eae3b5c3b5ca2cc0cf04ad87151bf2d1253ae70626a3accaaade92d452d1f8dc85276a87d7384f15fa403a4b6c95e8ca706824279df4a86b55aca295a5fff786905d38863740279221ac8300592b8df6229b132f169047daa9599ee41c26b16e0068f26ae7fdc1abe733360b9520e836368f8fe224f645b587137f085c280c981378399861b8294476e975fac830441730c232d0af80b353ddbca0c74be24afd9bf5f941039d92156a26c0830753bee280b2a2aec76b6dec43c18d56a044b4e2b50039c73f37292e65e61830b4ceaee12e922b33f65d5e2e431eb3828bbba76cb24845500821b472a13872079478c656b219ef41d82f3cfdb54ab4162d0b45a85f949cf50e0e34a1405533803ef05a4a86606e04a1c35024b07ddfc01088755a25e87e8f4dcb936d14444607120105f44bffc74e08d529bae027c2003b5db471a409f69ecce51c02980feda14aae22c3fff1597926f96e797f7ca75848b165b33e5cb416549b49629003fe41f622a44fd002173f12877b140e948c639ca87ca2df041d1f4b80189ab4ac249c93201246ce224552c7b5f006b5fda75ee3459f5432c1065be5b4256f730e918395c358f4a209df66045875f24b5feda3ac6f5d649a4af63f932d3e38d1f50e2b60bf10c57114b00486d01d3b487151b2c8cda07b813438986e0babbde52a197b75df3177674fcb947b0747ae45f543c1becbe9cac6cbe349b875549cf0fe181e6f9c42c123ef880770191c90edefdb509eca34f8aef6b7d88f5ea203313b6e5ced49cfb516e33da73e4d636e7757f6b1b3bb54da83fe88d6a831b12546caa7d583f837c51e75c1357f27a32af7b9b498fe7ccba55098312d7b925997b136fd40051adb3e2e99a3176ca76e23280c5f7a2b395d454e712606ef915d44b1d2973c5810d7462564c5e8841fce78c642ca32a65edf712e617a46620719ee87ad84394c140589ab60e911c3404cbc9f81e0de80a4b7fce6a68b659285e9c111b469f42a1758bff933beb92a788dfbc4dd9ceb140d618de2fbba94465ae957f4183c98f5917955880e62fdb7a020e177610b9f0052410413e90464f244aa5a00a61cbb2eda72108178c54bd016aaaf015ad2265cd8540b0e30ae16b17d00e77c18aa638a851480b82c254082f8ea0faba14c2212f8fd80a1850ad68d841581028e11c18347d7788000e1c6e53b326e5a3e2cdf56c11d09dd9dfd8ede4ef4399d128d6f30b763ed8ef71b4ed232ce1e86fc45c76160a85806a0bd056a3d0ffe5c93d41d650658c66d6e5e0c7ab9509c68340d0bff1ba87f9e9ec44a2d3580d2ea340645b434119e01b465efb38750bb5670dba4bd4afaa7c27f0c239b5bec7f595505a814b861a3295cbf68250ff695c7358920e1a63437bdb26d8397926a3ab6d1c48cbdf47f11578056123ab6b7465eed65551253e324c02bd93feae5ff7324af5af99b2efff5a0f0f7a2ca4bde99edeb20a404ab30a5907202c3a2305930a63c90552f24870971d8eb4a4f49b1bb1156f63776032ff147b1b6882024409f87e36e9f576c698379edbf7e6a364f80290f0e85a61333c3f8a2f03e8f084e6ed00b471239174521024bd7c1843b78467a0fa672bb2c54f675f5652ee867621703289bb1462cf53d39545a3cb8f232816ad2e0a718426f73ad7c58c03a827210da8f699c1a25e5c21d72bac815bc8318e4075c874413a8acbc4dcbe4ab2bb6f9dbb22bd25719088a7f7b2e13e214ddb917df45a03dc8cf672eb404a105fc6019424743fc933ee66601ba05a24066c81c74ddd919e1f6eea320f9a340699b438ea977e6c203df8b673772252222ba977bc2ec2dfcd899127c3020962ff2a1220fced88a94b950e5ef91b5453206ec24829d0016279672d5c680a635591329f054ed7991f20ab45264157726a0dc670d14317e122316afe6e05a6877d697c56700b2b11ee565119425c08d7623ac0dded56545742775cac0950f0a69a3d4baf75c229280a9f7cfa6142f4804f834c6a9c480c13410cd0b71851ef20527b7c096c272446c11cfce59ba4a298b808d2f44057374e241f4810ab5466745cc9d4b6143a63daf904a139135380f3d6728397343ebe44adc54fb3c981c03b4d135a5aca7357b0f367fc32308ef8596de364389cedf8976c95f1a49e9950ac99503856fe1505a70c2fecbecc43ded51906af4471d709cf56f4df55040803305bedf0e168c07f623fb5080c8f9dee62c8a27eaa40bb99d2deec274882636808d0db1b81eff07965bd685f4084177d1fd9c62d3c5f609afd4795542f5e2c8f4a1b599a4321e4b04a3fbee53ad89d3542118dd24649b9fbba9027d3cd382037d1232ee17a02343f7c08c4e74537741545977b5ea371ef45aa7c69b0a2429dc7d849d07ca4b807d477132c2ebb07d857d6a491560ed8feb0abc178339adb81eacabcd40a510ef0bdb2a5bb2ca6f68241b0b2f42457c5e8ee6c52080a3111344028872d950026ed258c0182ec6e2920f7aa96d1de5f423f2f1edaa79b05518e07e581d84f30ad35366dc510f036128c28d3dba1a47594dc00df85b10fa464e24600f2a2771f965bf52cc4bba0354fe3802d4245e740b2cebee057f5913fa7b293e7c7e342c4c71f800b633b7453feec2e5a076734f89f50d811581e330aa99447f48883493170d0a009cc0be9edd3b516090a6f99131c80c88d7a9c3419d5d5ec705255c612b99cb84696c5064076d2c237eec34d8cb20ff10f8bb966e9d14141b5b717b4d8d5d16d301d8b141042a1f01d92bdc090c8cc3ae6c3618098e9a3dd95c39800edcaedea7bfa535807264f768acc76bee319602877e13139d72e56620afcd1660af063f3d21b7b8b42452748ea07786672474287819cf49e924066e4e412572758cb53a01fd322840a277feb056b04c0c161fcab4c992648418384661d995b9a8f2f7c7f6bcb795a4fee213873b98fbdf103f82667def1f6125458b3a26b0514832d627f1b1e35c11529114ce2ea4e3d892beafc2d70230250b97fb5c326ae28709fa2d106841b893e4b45790d942a6275051733988239f5a4baed7d20843b86b7084f7570820825e47c21dbfc9b80037a310d2c5b8de0f8099723bc8dc4a52a2e32ad4386c470844bc3085acf6c6e8e70fa42579363e56b69ddf9985f3978b0d767cb0d26f975b0fbe145f300eab08a8572c463cf90cedd6087602c21aa6094a9709dbfb682571f0766042ebd217a0ea4d091d8d5ace72a184ca456303726163fc1f12ba597ae9f0291078833378895f263a8c8c81d5bd19f1b1b0414ea4df497cc31d147eec2b1bb21d948640b0f404145f09ca0a2d33e936163c2ae133b7faf00fa3d5c551886d60b825bf22751331b2e907d6ff4fdf1771826a0756ebd023281a0d1d2d71e3e26a4fec2eff459109735dd7d282c3f8809668c0857ed0410482b8dd67af1bab03d1a315aa9ec41608a51b67aebc2246cecf1ad6848128ed1a8987324bce02b37667f7bc2375eaf037a9100f09d1bea7cc2bf86f183e848287e5bbd78e85dbb17d77afba7b0beeac62e7a0b84e4f908a68552fef2857e878190396a8251441e7146df72e7f304f2e4616949e85b4dce2a9bcd3e93326f8bf8758fcc89783f0163d7fb0ed7d0449ded9aeb0a3581863c34728145fc203f375a20742df2c34be6ca1f5bbf71c69f584dfb66fb8309379f15fcb585680658a1260264ccd360e16508a0726c5d3e931a74a809cd64a0fe9f2415b8ff62c5f69be10f93dc73a611b7bc995ac513889f1b92162442b4b89027b883292b31a860573428146e31827604913cd1e852da00648efe1d5d5f8fbc6436e814c94faff87338ab9fc9e96b90787110baf4ce7ee003e3819880be119909eba415db447a69795e3a11477c3671ccda401f47b20d64250ed648faefbffc8ed1d1ea48f3a0dce46c13e378b5328df470c89299417c462dbc98cfada073de23b0a4d59880847ca737b36d83852d46e6f4ba9eb6c8352e4abcf71cb0c52e23fdb14b5dc2c3e012544022d1852e817bdd6f2dbeacd663d95b109579ee5c7cebe2ec7d3da304d0d4c8d0e4210a708a6c8bff4462b09443444d0ce18a79a9561288ac708c40f54d5efed3df143f2791489f276432b6e283d5fdfff797d08dd9f8815731cd6a10e0ae35ff0293df55c84a885e01aa41ddbcb796329b26cca990bce34f98b292f471d0bf4dbb613d701d29563fc82ff063dedca6a931a7828c457a1245b30e196760906f7cfd7cdb62c83350c91814ce8f86d295796601512c65420061f78dacfec8bfef63d96180d2f4f5e2fa741d254a7d6b442d2ded9c23e36db66536db233d27fe362204910fcb49633472b15bfecfb78a330f390489dc467e56ad42738641f295c77f8c42f2417ccdc6541d056337c592dfa8c927eb6a4f1a325b8c09b54a5b1cf653e13f9896f500df33aa6ce5819815a19450a2235f38abecdcc988f5a15bbca005f9c430d6c8d7dc4bb42610b7d674965e14a66e51dbddf3209f08baea35c9175ef4d29eb54902f3b00b3bd5e821d1b8eb90643b694fdbb495d03daeef18563176721bdde35f84dad94176f24d3de02b493be111b321970dc80aed8a1883f9f0300ef53b7221de0267e483b30e7508e2b03331a847631ee55d3fb61bb2065ce8df0635c0eaf49acb581531dcb60979a2d0b3760a830e1fd6f21f51b6564cc173c2bd6272a0baf16a1bf44ec14a6a27d9dc0a21afaceee50096925e3b31c43fb87af974dce115e8927145253f1db2ec119b2bbb79918b4f8f6d724448ffd431256024269f30915524ad3957353224fc8a5d3b025c45d0cf8ce2c501229483c270039b833b86b56bc30abeec34a831b83e886b7d529efe8cbcdd7883abe7755dc2aa83649906cf805b07c1c82136e1c8abf034676376f44ca2ff24ee474a9cef19c994127e3d2698524fa1d8861953454e20b7e18fed630dfc0baec51a94a9ca0b0da52798ebe443acc48ac3041bbb2ea6c5d9bd534c838a1b13cf92207cfbe5d75bb999801b879b30e056cae4f89b5ee7e0453247074a70ffe8b076d173e1da39b38eceb6000f2b918a2f02ec763231b7170184335b28300b8998ff48077ae8d6a97068429e8db0f5608c2b8eb7bf0437605c142dd4d350e2427da24e498c63a9c881196a3808d39115e5656376d91cee91d8a1df09b1ab83fd651059f5ddf1c96d60564336ddd9e8c2d2279c2eb67719d7bab54b69a45bad007899892eebe41eda312215b6704c0b9573411d1c8f709906990f26a791b434c1bce53e3269c2bc35d556b15310f6d69d091a437c5e97acce54ecf45fb6c990d6719695cc0bd00845217b2d48c75ea0168a9d76aa980b451b7e4f226e57ebd4562982ae8601c2d9b982789f2eab1ceaf2e84327903198a54ee78c918fc041354f664f179eef414123aa213d143e7005a95d46338424aa8a934b85de2dc649ccf2fa1c0ebbdd6e0aa9234f6215c280d49b37a9f9ab5bf9f4adb314aff740209f1abee99f79499ed92f84bca3cb6f2eef0688c418ad9f11548a4af329bd4e9901c641ad1e68838611ecaea95d62ba9e5c0d0a13c169fd0a4124c91638b785c8ecef5740ea0abc2cf09873a7d99def72fcec47d681f1bfb97e1444d987c2c7dd4aaea3bf475ced3d66401752f7842a06af26ef864aa7a816a51aa120ebc5f2ce6d84a16bc20855133c3f5260fb168f5061e53fb8c14f9dc5276621b7d1e3c868808ac14a240d7906933385903eadd5be26db0d15b908b81a503f207bd3ece737081b9aa0e9ff2c407bca423a3447dcd0ce0844948e4ca2240e81d793a0b55af756b70665f031842718035aa737b8ebf59c8e11f0abb6fa82bf0378494e1a973582da9e9ac16e8542963c3867594486bfe7e559e79c008148a0609c9f40a904b3d43dd94f950b35866a3586434b0bce519e0d804f378490ad36b7f45d74052d35bd51b2f37899ac8197a8e58d36fcaef4a13bbccf236f75f10ec25546bc39372128122591085d323aa1c1c7278e5e151ed441d73b49a196e9e2fa97fc911314634a99b6ba49461eccb224fac948523bfa5b1bc403afd5e2fd68bcfb400a0aa48d399428f6b73681743750a5b2598720d015b80fc2689c37849efdb366002e1e270a4a6d9065745b4bc27f94ca03fa96ba8359409ad1380783cc3757ee1262e32549656fe5aec497edb5662b680fa0db8719c933003349cb6a976f9a0dccc4ed841b0ee40d603de7da1a1a84f04975338bcf5c59113a4b8179dc0c552322b603fd5ff95e5ab2b2b794294919f40744084808769b56eb8cb6751fc7911c47b7b5c6386392c01b7283d44e72b4990d510efb9cde2eee42af467b80bd6b6061b64fd986f4eb67a2c6d09a70e67e023ea2660ba4472928102926d9dd3fad0626491f0499be09327dbb026b9a5f5a130c04c10f6db7965620607ab50d076e1dfe70eedd380eb619f89b1e03e602a6dfdd4867db3ad7e3d1e8b67d305c97b54bcfb1dacce16ab36a59231f4c6bdb41197029ca4d52aba689486245524eba2814cc456da1080c96c3f79a19d58d4d5e4c97b1490b26cf67a4c44d42235e8f0183265d6dc639e79b58515b16307dbbbdbd271f8cfd91715bd662c10f86ebbc06bd2e824b6caaa676a9dff66bbd25271efd6a724d51d44bca7ebb7c601ec3a777b599c6ddedab3758cca0d5594ddec4a2686419dd28cd554967c36d38334cb27f8bc5b2e6ba62d0f71b673327c9d1feeb41cb1bb17269d8b0a07da1ddb424b2a573d49e6ee1ccdc764d340d9e015a3b8ec7c11dea82b5ef83d1421acb441a4b439b682c9b0edbf4c604dde4668e6963925ba7a4e420cd2e12c1f44ba51238b1985bc89d6d99764bdad54a09983573356b264bbc99b862b54a9ecdecc74366ed66b32f3b6b9996fde0397badbae7b5cd5a25abcd765f3685981fcde88ad52ab9d77dad7db7f1ac792527256092fd58f49703cd42741cc80829cf807bb5e6b95d01d3f79aa963f3ee5fb7777fda7447d5de5d7905d2fc854e2be7b25ccd0eaa6774b6bd827311c9fd1b2785d9d2afb56092c090fbbbe4b2c8964e20bb66812ef4cd775af69dbfb073f685346bd917ceecc9dce7b69002b786b362d6e8b7212785c955616a21f76b28e7b4c8fdcd95e1723559b77d30d9779a6b0dda944ad05cedde4b374d77b883e88e1d9de7374ae36a3c03352add61392a3425713594ec9f5c14284943a1ac90fbad803dba636e52d6bf174ccd33af5600b734c9fe1d9374a71072dfad5392799636f2cc511271269632ad69a954cae1daa23deb9aad6bbaa6ad9876241a7d32638b47a964c3d7104e6a5ab77d30d666de74d5eea39fd7d4702ecbc884ebd175dc365721cd58bcb690db1b0c5d73b5db635fd163770d6d5a5b5d7b54f4ecea73d6f73aad8b6bac1f8123fe9b61dcdd49de1ba48a1f020a71228545a68d4a7a35aeaa4fb27e77bdcd85b56c6d36ddc14e519a2af46a0637072b28b83bc9ea3ce03b7fd03410d845c8deab49ba0b9dd94cfc4b94fb5b38670b6192e8fcb28f90fdde4b97c82588d62095a231fd032a408066194d741460eab5fdb61f9ddc34994d5f30c9fe8bc194ddd8a76df1093aeaeedcf44c6a8249f6af60f4824c63664b3f152ed2fe4163b618aa0210075866a42ee8315ba6802d6d225fe1b31c63a826458c296301ed4986be22c6d6a983eeb8e2d31ada53ad9bb8419eeee815cc1afd4e740d9a056f6d77a31a355bfa6d256d55c9556c9415307dd1d4682c37aa51d53e6d4da60342270708100ffc4bf6f4fba5a3619b5e3a7f9974e248c20035738078e05fe8c4519fbeccc901325fe6cb8b7790d76ee78bc0b6d93966b452719302a6d66635d35cbb4d1b9c2d34c888b4bb9d63d791655402dd1290083ab310cfd147b64f6b666d75df4237451d6daf36d3eec6751e67ab718286e66a94d6d01ad4d0198ee79349c0081806361f123120d4445132f4444f4168ea03b23e880817d0e3102322150d15d063539593a81593ecdf561d16ada1435a41c825ad89428fcd27530a8123cba8b4726daf9eb4464963b4c66ba635b3c50a5cbf6f7ade7741dc27e3dbd6a9cf089dbbcdee0d5f0341f086ad38f458f9b0c385c1b7b5049b6d15b073ac36bb61bd6e2038969478944a3df658ff6a5d8dc8eefd548c4ab3a5dfb74baf58aaa50e65b4df6a7834d9259bc4c6bef58b854eab35b3d5d62dd36ce677ab80b5d62641e7e89ccc6bb8cdd1b7c9434dc26a1de76a9beaa2c681f95d87f3653a699ba4b55b05e88b12fe83363d4137dbc5dd364c8f6e0bd4396456314e244c27cc294c2c6c5ba7535212862459ce978d1c391830c92662ec07ab57ffeceed0aa995db599cd3aafe8ed565140d039c7a0bbdd4c46137d34d9a06b35ae6bcff3d1649dd7bed734264ce4898202ca4fd0d116ea2c5e67c8c850604ade4c1bb5bb7237958d8bc175a2ce4bf13ef1db8475c37918b562dc79d1f1b8f07c503e20d088c908490949080c8121b084a4c464c4e4047482f24171e171f1a2f3020686f19c0f37de9daa4e4cf152449d28061743655359b92ba336921929c3ca985167b0384b4bb7d0f068b4d068d9d807d760bb5adbddd5bd5afb968aa557bdf7f056ed6fe97920ca6f66698a1515ac25ccc6829c240f30f54a096cc2cb43bd758ed9d3ef07cf9b9a5599ee3d4469b2dfbdf09bd4799d178243c0ded93a51daa5082f5beffb5ff3ec779df8c3ab5ef62f94d9be87c0d2e4081ab50ab35b0b7a8ed6f6e03689fa842708a19b147c79a81540b4a9cbec118b3e9dbcdba74602a65ff6a92a81546b6327604a6bd04d91ed6eaf99694ef223e7f7f180f3672b75c9bef428dd0025d194a9d3eadf2bd6cc5a6b33ada64c46bc887899b2b71f4c76371f5946b3356b7a0ee9148f7286c9d4379a204d2821b6d99201820af99a48a5e8e68a251d82d2c492360167a209a57569aef08fbf6ddb26f35c69489d53c7588ec0ec4b2d4f13ad319f0bf12773a9109a726aea6f42eebf4dabc8fd9a180535d9ec22556d4dc0997daa3988085ddb299adbece4aedafe602c06b23f1dab3879a8d96df414d5da923c372d7baa512791e398c131ff384e1d330bd25d1be830f36c61fa5deb475f68a5c09ca4ac33153db3c55a077093f414d193b4b6daf6ef27e0d2cb4e31b83101d31f15c987ff7d07587520950ac4e1e0ce48370a3b9933d2e9783e2437c2ec6f08656ccc29468ce75eaed3aca31067ad08c9a843f2f98046421e27858a09994ea2f82943442e96a6699fd0c8084908bcb1c9213c8981094f4e03d844b09d5cb86a70084328273be6441233cdbc780143488ffd35ab1eefbd1c4eac7174f82d3fbf0370601cd828486ae44658e3710871fc00421b3f0abf502a840a9d4231a1d0832355947c3ea5f0c372d2c4c4e4f32f390cbdc2d0ccccc49f2a3e984fab471fe093efa8099dbef9b03a932f081b3542da448fa81c3a6fb1122fdf10ca08204600235b15dc8bc523a426244804404f261c6f14769e267c604ef697c250ab060402e12ddb102ee0e41bc2e503858897045060a3f0e61ba102503e213c5ab6c1c5d7a3c7ecc30edd0b205e8c780108b32f852a2fa3309b6309c6e807af516b7c07c3c61613628d420b80f084878ed0644778629a2dcfa9711207d66414d3c553799f90cd975f8c89266f845b4c8fb34921d6aa472f60fa2c27e1f8fe9398a96384bfe5b3faac465bcc1693fb49be0ac1e567550a71fc8eb0c68fc27a23d4119e9c9ceccf90265579fbd25b9554517eb1d02bd4eab1bbaec3218658598dac7e30a1b00ac1377f563d8e42cf37843238be147e48e187d563e3784e4de37609f1fdac9c146239d97f2fc6a1cf0a0c2fc28022d8292554d4997837c2faa370e61b4219fb3684a12a42ac508c9310c9c809e873327a946c4338730d1bb3a5863851f2fc688425ee6f09a972ff0c0e0cc68171602053195a418835e6f2b3faac9c8afb9fd5c8caa74009b1569fd567d53121135ca722c40ab13aa6acae92556e0d94de1662d5f2b3cadd4cb44b11284deb25fa74d2ca33e587d31f5de30755c2370150423745f5f57ddff77ddff77d9ef76d6e4704e793192244c2658c68c13e5c06d67780edc5871d582d050851d3f93c38f4587958f0087f3e10356dbe2f66e2b20248eeaf574c527dcd1791ec97755964b8aba9c3be8b977559fe7a8d906c11430307725313bd2c6afa6809f0e63516abb131c4fefb64403004360863b0847aaccf847e809a38304997c5a222886d45f06539a9c658b963b098b7f1bacf8bf1509182e172c6daabcdb4bb7115085fb8890197b57504cd656d75998a57355bb4c0a2aa6fe36d085080109d8bd3e11db0e765baa91bdf647dbaaa30701420eb7b1f0f5d0502f6782ad8a52721b9dfc72421112b525b740343abb6ae0e90f0aead0d864b7aaa50a8adca8449a22729e45661153d39e9aabcc3525cd524fb6f1493545b2d21642d30fdb2b6c6ee93f9919111924601411212921005611c0a853e983a6768c1a9525dd5f6852b6405e3e255a93a6ebb5a663b2fd58919d19f94c2307d2df0acdf281288d2ef6878c2439ee29c9c9abb493bd7ac44a515e8e6b748633309f76ea74e3b80ebd70be33f4eb96983a1431fd4557226b6f789c62e6e172d9b34d63496aba7604e4ae79c6e6b00582608a5d7d0399d40abcee9b8abb3e47127b98177d334dc5f0f5a068203f425131d057804ddb368016d016d410b40a4ec3376129d99a133332d983a9a766f5cb4b4034f67380f58fbb4fa0a3008f4317a7b6fa87867cbb6654fb7ed4ac0086b84047a6c296e3718dce414487ecfe276a10feaa9523961dcee78411f9a04822ea04942cc347c4023a22621c192fd46761e434854e528990201a27738611fbe4723e189e52d114b4c22963f229623482c47f933631eb104395d83bff17e86441a1b47c4720412cb12ae71128d7dc41a8c9f62b1c6389fe8b58b25e85cfbd02e4550203b00b1590a24a340726ddb504cb27f8a11154be856911789eb26eb8de133a7c9495a0c468b79a1080cf665d159705cb04cdfbf1cbaccd9ba80e7971c57a6dfd57e3a3f2d20dc0744706f79a9789ff09c8fe0e2ff1d51cf44a4c7be23df1fccc853daa2a18fe95d84c6d09353fab5d6aa5daddeea3ddd30f7fdc1f818e5ee29d5eebd3e46d947409e83280fab40a410abc9b91174dda4310d235194a37cd93527b559bd6a559db9a25d543ec6974d24d7ef2022f5447aea91c62c414f740991c6d80fc65d0b3854c58ea647277a5409533e46585f44515ede19b0c4e4a4f328dbe98adc3fb32099cbc577c47284457193b93ed113b7d3764af9aedff6ab0b3a279aeca7aa9923571b939ce12c999d4927a95b4d91b54ff94e0b3b55472302ac7d3a744e642e27fbaf472c2fee882506ff4759b70aa967ae7b3106c1ff711c8d6aa944f65a3c18ad73a25d8a9853644ff999f25d4a48714a08e359fbf6f3c429b4394516a4cc5ca258de502c71eeb88e7b1862f92fc47274e1de45b79d6090b9b6538ffdc4769a19859684782687aa892ed12e4574117a6a17cf0b6ba6957611922e92abe88d80322d7bd551ae20693b39d9d5fb5aab58fa98adec95b93480b52f33576e22dbe9de7bef2de5723bc9588bb7df3e04e08e9ab85937b19a5c803322ede26a9757adad56ae9e29449142d7cad455d217ca1c290d49082c3121c249fa1fcf7c0cb4cbf678ce2c9a485fd14de85945cf2137587834899e1ca54994e524add394af93e875219617453c114727f589082775a9341a8da0588eff20895882b8c420f1e212bf4aa511472c47e3462cc77fb004312796985230534a29a534eb9793fc5e8c41f07f1c47237fcdd0bf77c6efc5b84f20c86235ab4f7dead38972f337ee7e26d6b762fd162bcbfd057262694df0dac4d2aee0755f3338e520068a3c45aaf2a0b2e8839958829695e9f4fa7ad5577d591058135c7b62b97d41a6272af0a4feb3b749faf7c7c39dd6c3d9a36db9062309b03b71964d1808bc4b4d3dfa84c5f413302cd709bb58cbb2099b3098f521966e5ce7e18ee7130233ed7e1b0e6884e4cbce480340201f60f8f93820147a3c45743a0f1809318703814fb8d91ce109bf2f029dd0b35d3781ec1c4781ed6a597681ec369c3ce7d83b3eb3467f793917123af6975da535fae76ca95f9ee4e6704c20b0d96c4a8ef8be0f8c80e779a1ee765d6e92dc13e0b8110a6cdb06aac0bdf7931b09cd93db025927bb80b54970a68eec5bf38d67a0bff6b22cc06836846b0897a659add66d0d9a5733cc009cee4b95a9a2a320ab142f41f30a856e8a4a2d86b2bebdb536021822e14cb2823e9e0ee66c3aee15cbf36ad69b9a9c986c9cd6257c9bc1f43b8f66b74383cb7bef0e337706d0b4df7e636289ec5f83a02fdc37ea0ba25fb4d03d087fe16aad41d417ce5a6b83b02f5c9665591644f6c2699aa6695a10da0b176a2947bd5c194dcfc4602b953db5ae26766e80cb1ac47de1bee3b477194e9c4eba269ef0b0bdf63a6c9a6bf433c0f65af6d55dd7b91874f8733fbd624babd1585ae830275b63c5e06669d9616ad0b24f66565a03c2b634384c73d576ef889a9d88bb7a6cebb6aaa8a64a43e6226a2a4de564d05c5a5087d12fb7e8b0d9b2bd1ca6b9b62d9ab66b304ab74865e7d1a3bb4a3d7aa904e37b7c0f73f41d7af4192ce3d7b2c6b8cb498ff1f56bca492aa4e88a918c95ffd2873dae14f85fecd1a39734c3f8fae5706f16de2c0b2f47488fce59f5e81cd56ce1d038e9ae1e4359f8bf43bb6835ddc374d1cacf4b7314ff6e14d27819a1f831c29457d1f20a04c14f164d8adf891f184df873eaf80fc552fcae861f98187e5e2b5cbffcbc3e59542d72c9ffd70fa666d1a367d97f167ef879f5f8e51739aed9f2fa64d12e4538ecf36a17f1fd3f30ef831145afc67b35c41f0e83dd188d68388d8c4688670b36a2e5072dffa764fd1da05f3e9b196ecb7f98e5d9a4104dfe54a1028146522811cc3f444352c51a4e6aeaf8f7ce01be251c9d749977d29fb336d3ba6a5140d0769a76372ffb0f6b9e117e66521c7cc22695abd61a72a2490fd1804234187bbe13a279cddb36aefb6484f53ff44c861c9593fe9a735cb0edeb3aefdbf8006b1f364bf89999117e3e5298fe5a4d7b264e8c43a3e27c3eb0cf6bdbc253de7f7e07f8bc3eafef6484e19361ca8fa1f87f45de7e25ec5c3d7631997b9510c708b128e4bc5ceedeb9b26b443e98eec5c1ae2cbcdacfafabe9d153448e6b07530ceb6cc9ea8b2506c2acabe9cc71c538ff9f5d18a5671762f95941f647094f4c4ac22328d8d5cc7ca0c8fe1f2d0dd9df13a2c1319f1764f75c8668bcec887435353c4a3dfc2445a98b1f5489ee5e8aae7305ec2f172b5925c78ec01c90d9a3eb2cc3b9fad3784551211c85a51f601f7d5fa2f5e4a4fa73c519f9fa95bae0af7fa94be7eb7bd465038a65268e7af4cbc29e7bad41e785a51e391ce213f6e78825fe6e13e2181ce2131578f3253e65bcc4f76894f7c24bd4cd069f7a744ff462668b16665ea25d3adefbe3138ed978d8f3aabf36bf118bf017cb3732696f46369eb7b9f3072d7bd7134b24f286e4e1e68d1793c56c8033246f17d52316bd988bba3a78bff772420bc2f86edb563ddf388ee3849e3da117e3644c8f5a705dd76d3618e5c5a0b25f9493fe9ff0a65040b03b0a85ba4ddc548ffedd0783c58bead1519ee77d309d5af1d7d087c7361ccde39dd063e283c1a217a3c577379cdf7036d68fa0dc45a1aa17736354f25abf565445793fa812ad79c6b08a22254554cae1c284d60d1c3546a41b5a687cb535a38cafff36461627cd107d8a286c9448e4d2442b2a260e9c52ad76f1687aece9e2ed608e9ecad6b45a57149ab090a2b024afa8702ca8a25191e41515212a2fa846f28a8a109517544ca0624e4ea83e9a1b9f1bc250ea317ef7b4c890bee0109122154d8c4ac84a45230a3da53014133ad9707282f2797d5c1fd647f5a1f9a43e332330608cb8c02617e7f5e2458e198f9c993a44262a910d2a0ae2707067a4eb8838239d8ee74392bd28c4a5f0c4142b29f9ada695da418826e42d22262e918a46a512b2d254341c52188a71b24f2627496034608b45d33ea191119210386e728427269398cbc681cdf469b1624e4eb6e9950281465834dfe7e2bc5c2e128ecb254a498da43c2924df258cf1a2f00bc5844e24b19009e3ce87c63f35ab8fcae3d94e2157a8e68630b44a715c4ac84a53d1a862a4a8545e5e09656c889d986ce06c35aa1a34221b4461b7717968c5f23cd596555644e1cda39655566c84d98f61fd1921f9a230630959c89494181c974a14da5178623289c154bc1d74dfefd174df281547c618725c3d76e3e8e7b43e342a2791df7f629a3a44df8b1f1a1a11c7e552a9685842f26984292f0aeb187e687a8ca938d1a42a54135ab5dcb916298654aa14158d4a45d3a328f4bc12ca90cf127e66841f9593fd2ae4735aee32422a158d8a4645a3229be61515212ad538f38a8a10954aa4921243942286a119a7e245e8727d602110dc12d5e854705c0ffad03cd8a1096920f77342aad147a3320103ce5b484543b3b24aa470a518701af87c201a434d7403945463316ab240625b6cb1c587045de8749e79b9aba2645f1f50526d5dd515b3c5c40171420dfbe59ecc977eb92d3abbbb7f9cb4328d5229e0fa5a16764c8d67a2c9feae7aa8d177c7401392eb6b504c974ef5d8305f73f8fa9a6aea18c0d79e314d9285c21cfbad982eb6093dd697af3cbe02e02b0e4eeaf1f5bde5241d5f777cad39bed2a83097af8f324917367504e0c6d7bf186c17d25771f435c48e19858d1a750e2839fb8eb6577b372f0b476f432036b8c186ef54bb6ca78ec174d94430c77ebb729237e36413dac553f50885e9e2453147bbcaedad9a5353038375dd2834298514465faf366d6261097539496b9cbc2d8e05339c9174b4912d7842417aec99194acd96fe0c61f5887388e347e127f70843344ef64c0a758a6109855842faf212d29693944559b97184f3e524e5a419307dcf9bdff47c330a3d306128154209404565e513fbc03e359fd687f5597d683eaa9f31e3c74e1112c770609c980c1932280d9df1025c116c8de9918955d65912264704778a056cbd5a9bd54be9adf4d25a6d566d367b44655a7ba5b656a7dadc6830b3a7d6af0c3a20f45f6838b5cc5b34fbf4c5717826b6139d33adf380ef8b80176e5b663f17b921606ab5ac669adfb69a5794f7429ab1fdadbd371ea52d9d28b389f59b38b821889b3d5a2dcb5cf3416b6676cb2a688ed587fb38da246aa65ecbc00de184802f7502178427b82074dd265937ff4195a83fa8d317749d65a09ba292b65aafc782b482cc5d92544cc132494274dfc81d92a40d1b397208e1247a2f58d399c64c814f277aa220a0a7d9c23d91cd3aafe8dabb5514bac449cbbabe9d4797687a3abdb5deb6b1b415c5cabbf70fa6737777cf076da22bbb48a6dfaf86e5ccbb83e46d66eba38be4effd83f9dcdd6db55eddb78e3a25d2638b96723e46dd2bf478407067ecbceddbe4bf9f8f51cedc6db55edd3d1be22b4cbfcc561d1151015efc1eddbdb2ff52ee79cf9e133b578fdd2bfbb27311e95e582c319026b3f8da07e3f9da7942cfc4719fce6762e9397926ae817059b6ca56d9ca5a6badb5f66d149cf7cc399db0e6e68819e7de542af4dc9d9066cfe5f25c1e8575b2f7ece3dfe154ee3d20ed927dbf67f24e22d15373a67da6e1cf3eab75f6d89e923d55fdf0c387e20fff3f7c393c218633ff4061ab027c8fce3a22ed52c428bb5e1c372ac0a800a277bffb6d68134df6e43e55677cc63dde71ec1cdfb8ca555e80f71ffce3df41c4d24717a1a81e3b55bfa4a826c4cc92df51b20021f93f84fe1f3a4355307ec3c19df75c222e173abc8d1dfe061e1e07019ed4c3977cf81c8faa30605032da7340c0b3c72f4893fdfec1905fdb85e5e97764f8a546b154228fffcdb4cbcaca7be8292ef218aee230dc4bb98cf79527bf5b09bf992fb5f2417aecef6484d46584333f8ebfe16d7c8dafdb971535639b11ced922439c3d6e3d7c05665cf982b48b8be48a7849328459d9b4dfbe156dfc5104f588b7d525d22e3cbe4746b69593bd4307492a847328f4e5588e7228b481200b0896fcec123097c098e460b2629202f3092e6f5ea1dc8c82e2838b1e5cbc7802b878f13cb878f13bb878f13a88e528bbe021561427c56a47ef781d4dc3cba1229638865882385e24a688e5188ae5e8c5b2e499687c4bcbb36cae199bcbe4a4ce25c3449ac81f4d292775abf157728049e5ee623c0e627907209638e55f569d69cb620f5100627903b00160f32df5c497e221ee1075889e2b87e72a792e9258829fbfc721962f9663fefe06b11c6d10cb511e8dc4b294bfafe1b9a2f04c34c4f2b6882566f14cae196279658825265dab512cef8a58629555ea8ac4544aea7b510c5f04f3f7303a53453d5151569c2d7ac272d451a92aaa6750b255464403a205d186684482dc21ab2368e69ab0df5bca565bb92e9251c01e3d0e0798e20fe656584663ed62adbbbb3baef7c628cc7e4961b4488f15556badb56e44d45751325a87b1f65db68aa2e3dedfeb38311bd2643fe783d9c46c0504ec9fb39aad726f8adcac7e30f756edab66459f0e3fa812d64b52d01667f13aa3d2a9030274bac8fd00db8cbc99366a77e56e2a1b1783eb449d97e27de2b709eb86f3988af431eebce8785c783e2817890b1a31192129210981213004969094988c989c804e503e282e3c2e5e745ec0c0309ef3e1c6bbe2270ac1b3c7142f45d48962703154369595bb326a23999132ac8c1975068bb3b434ad9666efe20cd3b51074afd5daa9fdd4aa9669958b02bbd377cfe9bbe7bdbb47abf6b55d40af7ade83289dd7af87fbf53d4dab16675a16b0ad02768ed666b5bb298cc26811d8f510670a73f28a34e6035cad6895d0618e5ac1a3243b03b6c964324dfa6db27706d39cbabe4e31ee7252bd2f0c037b75592927d53b836972fbcb57208871371550d8933dbd5eaf178bc562d599997afab733b039b8160a3cc5cbced85697724e85297d82e3010fb81e703de078c03dc13da1699c1398525a2f40fb6eee992d9e2272e5380a34addd5d6bb5147b9f9cec25b81d78ccc35833a1831eb3d67090b9bb53ea94665916f6b01b8f527dedd2ea5c2601236e5c8dcbc10d71e8b2b08796659a6be210a2ef6df6f5a03d0eed5244c76561bdae6d1c88ebbccebb7eade67d1c8d7338c0fe6d28f539da4c89ccd6cc3d203a1ca1830e3a4cfa9aaff9f20fd4630331ca342baf8f51a61f1da2c75e408f3def839e879bf49e27e210d4027f3a80c41e9e0e475c40939d0dd1094b2588a0d30bd97befebd4e1794f2c7de0ef382111e11024c01c1d16f03dfa0ab9a42d2fe47eda725283a0ab5ab9efc51804ffc771342a4b39cbde7ed9f7794f58f327fb603e2a27f5bd18ab42efad67d7ccae995c2cd679fea3b3e57bed83f9789e8aa5129eaf8773945840bb14315f99f3f83998c3f99ef31cb188f9ca9ef889757edef47aac56598b76ec33c87d34ca43f0cd0faa84fb17852ed245a6a0d9c79c628a26c2844d18100aa4814431249fe47984286672d751cf6de6b2d7beab3b4cfe04e572dd8eedba683bb82f49f2dcd17de922cf1246fe1d9b2f452a796547e7cb199e2f5b5c3e5fd2d801fad2861b5fe2087d9903fc7247c9115042cedc842545c8fde02442ee0ff1c8e51d01e1f8783a347279271d4b1b723fc746eedfac7c3372bf37698d3225f773252e50f2c82a3b27965efa5b777aefbd396e3da11b14688c7b6f5b87871d9c7e8eb741fedd3a2593357f721ff8f9f39d55bee71d26d9bf846b05b883536b024a69ecc506f80655b0a20bb158aca3f1bc76b01a2de632794b7b3910b0c6f5a89a76674bcb40cc964d0dad7ba31df4f0cd30c6b9374ee3bad94a692fede5646bafceb39ef7d51a2080687d9ccfdb58dad154e7b6c8a243804514b2d86112a699a804ed594a7ac86824000000c315000020100c868522b1609e07b21eeb0114801369864c8072401467498c8228640c42c6100208000020003035346000065aabcaeff181b6f5cb1ff10e6f2cfc8aced6acf6a230955be5d873634c9ba7b1de6d48a1d02ddb71d8cf717012e01fa3dfa813c3f795b2151d08e703c35a9a5d2794cb5dbe29729c7035b53c4101fec9868e6c3e61f3c734ac8d2ddc221ee1f1e95748ea0b07bb4d1a8ad13b2a119c6b245b52c0305bbe64c7d62ba099f1e43a546dee5303e558be03446cc9ba51f542021ed7fb1fb6e74430da02a41b524a6827ab8d13f559d0a7b93aaa2d3130fef932a134f0eeeb9fded5cf29eaf176ad04d26d7d64dff46ab7eab5ee1a52a843ea3795cdefa5c5b94f52acb50ed3a0337a4caac96550f644dd794a37052daa5a79e8ceb8d6abe028b9768e5dd9bd46fd97f5b0bfee56be963770492a11aef5e696d4da8b969768e8132adf5a9565702df1d45b09c0a2fd56b7b66eb5231ec9be9cd7e5c52c86b5676f756ed2b5b723c6596886e9eada558a55088a55b903bed39a83ad956a77a668e31b89aa0cc9f90816f37d252fa36cda51c6eba99a1597cac46009d7da85678b2476d640f801d353714e0c65264eb60f4bb9d61630d88fc0b3ea3c628e8068bb1f104be65bf21227520b3c0cdcc95e94c2d9748e16b88e6495bdc1bd3b19c5557dcd592a2c1d9c0f0f3bff3c59ab12a27aea548e1c07f2139a3ac84ca13aa59830070fc46525a98975763d17c455b1bb20b2e6e9783b48128b8bb32e737a1743c61db5ba039b964d5f1f034f678dfa0bed883b5037f03671ffc5021feb44b986ec0635ab4789ee4d6d2f372d05749cf66cd809756f7710358997c8304e2b9a535fcd94557e69ef4e24cf70d3ce7cfc83b194c6bbae52765de840b3b98fda7b56e51566007b99a2988ec9eccfa3b398dee983f606afbf4159ccba33bd88de1ee866e352cff7735129e2efa65684f05cf5c8dd01f7d38c796112e109c315550a05dfdf16cd4a98623f699e911c4c4586997afa3a556bfd3978b9b004f0beb6ef0cf7dc05216e920c471430ea6ddc64a9c45ba434bcfbb3b8b0a2356d82e76c070b16f9678e5682f60306808ac5fa0304de687595f0bb46cd22c0c7540fb652f85beb2d199509d2b4e439aa6995ed8b992ec059ccbf6a5bc6446121c35e01f17dddf973a204e5526c4c1be4e8c7661e1a9acf0c649c6e23aa3e8c16332d22ae4392a33de9ea8069850414a44b153a1062025ec416a87034622f940696380d4d1f6d6099f38bf2b171483a1a6a9325435a273633913cda0ab5944f610f53e46baedcb96c4b5eeac72b4e112990f326c45e5e35c7e85bb4802114d09b8980b9a13262cb22c10953691e46a3c0b60dea188849a43a6afaaddfb0010e8c74e5bf152a16dbf15960233a85fc32a007b1749b337a159e48264c38ed4ac32a9a2605ad9a9e53428c4ed67b0eb258712191d991f34d1914bf22b69b76be73a40245957ca65ae8aed489d10b14bab669ab5a6dcecba72a14593ae84b82629c28c8a6a57c6171895aae5080a5fccae9d2402f7c3ccfbc800cc27a8626ac471f71ec26f1a3101d9040fcd89b4aed58c6aca1cf8c6a2d7f9a816453e19e38cf60d415bc834510d8762dae6ad4ddc0926927cb9deef27be5ed89e98a317f317890ba111bce2f833003e82d3650645f331266b6518007a6a24b84a30c146109fb26a0bb3b590aba58a46a32bae4d9b0549bc2cc90727da4808c5cb60284f407eeaaf4720001dbbcfd6f19b256d02fbc166344a97fe1825d39b49d9e71b924350407ad6521c86e3165a8995638af8a1257c4ca4f667e282190d8f4eb08c0ce0199f8b19812558850bf0ba3f81f957487b77d4993d35144f53addf7ee836955d62eb9250412d3c80cd319753260d20a6072e4e21e83566709a50f5238f91167c2c822a17580da262ecdc6f2346c9689078d72e24a3ee15da6eea5dee22596e86a57c57a896886fd993a5004a507956060602afdf6bd81aab4c6c292f14b362127530dcdf14c2aa54fe6f9f79693ba0129af99e52649ce46188b43cbc613ff6cddd1bf7894b15ec98e3aaec350936303ab3ad93f563dbffff59320f7a75e1a8b32f850f8562d6201c575548fc73e0123a1fa35c884d8fad06ad4d4b6de458be299e1f1fc63324fc90d38f45c0e2ed045ecd7450d12cff6d07a4f1e8918838807f639b30dc64827323852a6869a6b327a3fabd91602c9d39389789414e6e0aa2ba0c62b34a2b5221ea56221670093d3229e5f9a9358a29e4f31afa5f2e8a70f737dc60c65d155b3324886eaa325c5af2327e425371e1a2752b01cf1787cfbaaaef6a92daeda8f7032f5441e8878d4ae2a5f8490e090910cfcca2897067bd341a07834c2c484df7c54015598981cab02b7f6b857bb4a89d5316560981ca3df80f6a0b1b92d88a7b485d97a26169a7720283d2f5dc6434f28099a359ea287317593371169b26cc6f13e9684e5ae6505eed94f68467e5c151280bc6115e5f37506037c3dd0978f41bd3b4b2b25d8be01ac496edc3b947f608d610203e9a0def1dddb916fdcec7a4862f48d31e50ad3e1bfe4a4659c715f5457723eb2560c42958d8829fce901418d779a5dc068f358294a4fd4cb01703d2e112297e10186ac243131730e8065187c0bb94496acb61b29ab1d251775c760e8d404d39dc89168aa12914805e2bb33a2bd820c492e9e93cb3f0d865bb6d28afb8e5335aca291b37ae96b4a8000da4494026f4b9df8efc179e950f2f47a66b0d9083aad4e58fd205520db586da6c84ea402346fa28f1fa543ad9edcc4bbc70f3edacad266ef343eadcbf8d977ff6f1904c498b03c368e0ba20dcf57b9abef58ead450620efdef8f7705a31d962260e1990d82a5e1d11e327d9e752942ae66d970c7a588787dd808f81dae0a03c5c00c93cc10d28c689b91c819b09d81af3d6179e8367e0d69dfa9976982a2a6bd6a9ad39a3ec2a613daf4e76d7a41ec663c39323604f9dc4c59effebac012a021f942f3ea56c47a7d2066dce40dc64e7edc8523ade1ab8babfd635f52e9b6fb3141f4bb3c5db3e039cee025e946e088d48b6649eb0cb138c5eb67cd5b4fcc68a276e58ffabfa316286b254540bc03a8c350a8368424a496bafd80728347d67bd258848f5ac29d1db51cc0472db6f9a8f96f0fffd89147b9ab5430156c76c6655dbc90faf102cd1d57e6c8255c6879fd95b7806c3bdb9a62d033f1abd27d1eca7c9f5c41e1ce84fdcd8811dc2c62440ca704e05a2ed97fbc2c465fe74f0eac7ec857654ae8589c71cba62a1b41ce623772e29b5ab8174d8ecbda901d96114189d9de02cd5e9477da4fcbd690af117df96a2f44a7dea3ad29aa47c8966aababac2f16c7373082cd3f3cc8f57b205b23cab6f8b49b95dfa7a1aa87141cf1dc2c7ea71e0431cf29926408e9db0f2a8a90874793082d6b27c691cd67a30c32fbd2ff58f3d8376e6000d95993f7583330798691ccba340ff64b8a6d89fb5041e85b5dce6b3aaeaacb1eb4b78ecbd38f1a62f66305fea386e236059df55143e01b6bc3ae9307221db88feee117a94dcea2e78b5027671a4097f4e48ca81178d6c12e5f2cd767a9daf60da2a2a5eb23b67e239fdfe5ecc683c5418f285c2a6cbf1df237ad63ae443e531e6657962675d7354c8d74a03bc235a633aea3d41aa7ebcae72b84168ba166601c2c026eeaf7640a9bf885ca9c55ff7a8f459ba9e290d01e06028208eb02cab848250ca8aab9a0ee1c47f7227681a505b0618386c1321fa593cae5fed9398b1d2471602d0c95e042f60a637958214061d09af23cd54f832617d21fa537bdc03adbb00be0f06eb56d566b88b40b13e97226f2e8c5351c1db68013d41d679edf407722924090e2ea680ae85cc17bc89be2ccf94e834b341f7ec5191dfffc16c33db796b859f2e8337b2467537d3af2baf6bf1c6cbdd4838b935329db2e27284fa01f4059ab39c021c6611b2608ca1bf9cba8fbe4a79bd1b1e1bcfceb301c4768145fb579aad57ee0fc2de9bb76b8a9e65aea65e58dcc79cb9afaaf9b10bd29052345a57105f7fdb6f286adf36e809acba600583d5fa5a7fdab0f9a0d37d8983239a22952ded0205fbcbfd72b8c9ac6dacd68c19a752bddd7fd40dfbd64b6674b6e10eb3a8e0fd07b3506f1cfcdcd16a2ac7663ffd6dc41d1764202fd738ed8f99cc1cddb77ac1b729df3ff17fe999dec38ccef797f2c0a8cdd28b8a80bfcf3d19f7c48b56e3dc9a58bd747088664fffca065411f9ecf92c38654de186c658afe3ba603d144b914a54f4347328b2482f5e48b5eb0750e64beeb053ae722755b59c00c2e921f552b584653e46a5b20677b1a829c937475c1ba30a7af823e50909bf72329e2c569a874409e923f7adde0489be4a035f0d168aed9be218b05b1220473e712dbeecd77e657bec7f0fcd11b986838d73c2eb25f5505cc7521f9aa2860bc3f924fba826eb948ec5214e0b68bcc0d5d0a0e468aef2ba75a1720ab35166f5dbed6cf4b76f9d2b8a1554f83b12ea70f0c37a8059deb45b6455fd05b2f64db6a05dd74219ba92ec02d07894f7a41d679005994ad98b54c1296d0494ac5b8b46844ae1051170c21800315cb812ac1915a8a1beebc1578ac3fd492b54c29ae736b641b130bd83b3abf943ffb509890242c9be3ee534b002601b3f3b4146a94c93d1f7719d7c4147c7221378d13d18ed20f25a26dfb410148a59d75d7acc077ae1734b49f3ccfd312b79b5c8ec1135e6799fd999672be2470a8460f80b4df82a778970215208d932b137dd1e0e45912b8bdb48ceb2e976bf2e659da11eb0d78efa89394f14a1ad523b3c45eddd45e13cceb8caf32ad28bcb77b09f85e52328af4ccb25c29f3e16ad451d2242470d03f924543e85a6041b25420fd2d15ca1e046d2b6529cb87366fdad4e4d95fcfcf441e42975b0e53a6b38265e8a8a775159493a32e1ce5472db95b091eb6cc3496e611dcfad0aafb751e4fdac3320e41cd9ee8abd68aef0f7a07416ebe262d5ff727abf5e11372b82ff51007316a086f70c0a1316979add321a0ac037f681f50f89707d70382a4622b683a02391ec6feda9f042d850b19559207af6f4c62cb843a92944c3af5710005fad0229cae7e966caba474cfd64b0f18363fc6964695f0f53d50decd29d7a69c706271e705c6259163cc6c0dc1c57f49ea188e31ebd1c8cd78a4b0f3051c750343c0617aebb3f213c331a978df889c110b6150cd6c127853ce42f61d15d2974ec831c9ff80c1d1d1225104a33523bc5c76c988e00e4e3d21fcbba0e3e60c47b891a87bb596c8492ca93fdcb0d2ca8b7cff4ca1429ff24f6e283e2f36fc7c3c9a17cf43a5fda552e86c075f8c144125c61d40a3efb08283b2e7cce902835e364cbb43b80b45cc4ff2f5231196636cff74efa92c09805a0e806b7605ae3a0394351f3bab59bb08dcaca69e8346927240ce8fc7fe4455bd7bd9af34d381b4235aff654ee6da66851ffb6520cd612929653a17ac2d26a224e046c54ee93ba50f7e19d9f9560427303959278d92d680c06f2b268e4aa818c0f40eddead54649e9173c66f7d3c949ebdbe0ff5f900f10dced7a08ad437505278712ac939e5f72f51dfb2fa57acea03778a54f0df4eeaa360376c87bf7f2f7c91bab537c173a648db0838802f2ae998b4ba7b476a42a7dbb1576c875e30c347b3ca4f49975c0171cb5778c0838cda30b6d1dbec25b56d4d80b5b5d2b86871ebfbe4173afd06a1a7f1eef2341d304e3c23936c46125a7dc71157e738bf98dbe769a604bbaf8079205ec4296b8c09175cc4d8afb37261deaa4f35471ba1258b34238b962a247252bdb98f3599891bbb24ba1db5e7dd08e6713763dc66abd20b74d17b5520b6ac5e9a00801e869b00054d24ff629ee80e29da9d698f46fe80a20a52454f039d401a173bfcb31a0eab287a4beeeea55029768783111bfc7d99f4d7e2c0a3784cb7b84a7d51f5cb0b565c56bde6355cb43f92b9f6779a14eb486f8ce1ca93228427002ac8d70a30e9bc5aa39aca4b87a0515f49a51844b97739ba47ca2d04871ca981446b899b9f738c649548350a15c3b6c92de1504af749085478258b75fe20f58a96bf6793a66fe9dc9e9c26b0beada0d90cb6822939b6f5bccb840008c218d70f4c55b8f8b8dfdfd7a6a7a2e158e3749b19c2c42e2d876e174fb136bae0ce76368328228ad4c29051d51cd4931bf8c52f9469b6328aabfcee5720c47e9f2a4bc38faad943a503522c4a3cdf41112f7065bc02b631e6777ac68876073874c728ebdf34823dd75b762a96a5640e2e6d4adc85a5129701d6aa5febc295e54733b59591c1f197a40b5669ac77de6b5dc702774712e8e23541ced841abc7f1031e7f6438975071db31df63ec4bd98d8f2c582284a960223b8906e82442d33b74021212ff984d0c73f57dc9bce090845ce98f5bec36dc67ee7c922600f41a2efe9a0154adce1e0c9d22901b8ec07e8987997bc0f6efb9812ea47e94cfbd6d601548294646922705123185c3c1728484cc7dd20fcb9a4be4c3073137ae494a6fb7f90170522d2406bd92351d66b672dbbc9ae1e9b596eede1787a18cd93a8c0fe1e3f6b0d382c4432a9b2a827d9a9fb7658789c75ffc887776106636ef4f79202ee38da5c9a99b76bf7d692856a2ab9d440098b4f6382a173a9e55f4044d0ef008d433589e6f3cd4de4837ee4cc654a01cd735e09a826b22974f39348d31824598d603031bd7d18c181c0a05845c42bb330c75e93d70730c3a514c65ddf70627b00abf249907a80abcadbf9d2e732c5463caa76c630655b37b9498e8ca3db9e54700aeba69c91b396595710ca88a92ca74e483d41281407ba4aa2c229f55bcf964921137b37d9eaf3f73e3fc223e1a83819c1858c453c481050c25af95e5c647b5bbd7ddb48b584f5f32bb34d2290c964b5c1175818d3653d2fcecfa2e59d79b20582d236c65b04d8ea5a4eea0f5baf26ced33b359ffcd8ab1097bbf5563b6bbf5d8fe482721dbe9624a4ef77732948492d1c8e305447165e11d6c168ebddaa5bef78fbbb8ded7b7411387e78f8782b2783dc92d8cf79db76c23db3a0443cbdf8c41bc415aa16fa6697e4bb377f0d617427d039b813f0990b2b95d9a6f7034af42af6b848c85af9005d451f08dc6843d1d894a20f41dff3ec06e8a428817073afdbfd8f0b555a860a218c58b8268be0acdb5e2ff1ec4b2ac5ec6a6bf2e73208b942290580e927385ba987da710362b3661fbb9d5c693bff9d8d699359d9e5a0eb66fc987da1289016993fd0a8db9f51c37a5bb8a9235bd4a88904c88d3a3f220aa83f57c42c630e13a35d0ceb1210e0991b2e9fae4018eb2340f91e4a8b9ac0156fe0d491d6455c3f0b832962a074fb59fe5297d8d69a4eba1b6473f1b8f41e7a02a17d2dfd7f6711a4f85d4257acfeb8dbcf121da5b7339e79e98d3b43ae93c15853edef837f46f957e36f5d3a8b9e27d5392f9b44bdb924e925f0508cead32efff0db4959ac356833f3f2049f1b9a9d15fd35f98e1dde163a0508a0246a3cf25624e4eb1713c4b0a746107b4a44634f42207b0ac2f901399c4c8f414612ffb254ce4b97ec584f5b0257339dde732d298acff050df7512e678f6b9d27947eabec5f648c135e564e2b688e701a4bcec42b24ebcad452645a8951154a8eed1d7e56c3689c013886fb2f01e9205eb800b2c2f207d0916aa64e6ac0ffa53fd5f38b02710af48bada526dcafb4b6df4c66dd287693850a8f444c7cf779482d885687aef1be548d7059439b28b9d560f8fcc0292020a742f1599b02c31646899699d0091d483d677b920673d73fcc4af03da205803fa35c48e8c6552b108f20956ea5051ff0c1a3d7d241af4d8d3ad65c6b1b151be81003dfc9f84c9807e9fc7ce4c8dd6c51e580b2021c76a5cdb4e3fd70440e3ca5963aeae139cc54257b8b184807832455a3176303c59180eab2679bb6dccd4a1af7f729e5badb990d5aa3bab45b2173043f0b9beb48ac7428abb00b716c65a05940d47b1bb2d5353a8c0b8f2af66b4fee55525eeb241be867adacc09fc2381fc524134c74856dbd1d01a9aaa671d8f886ddfb9b4d15f2596e15b61a1cebee1ba526cf47320262dd8e5986dc087434015361cdf887259493913b8717f809f5c23cd8c65bf847940d178fbb65d05a02bef6bf37cc30adfc26152fb35ad55de45622453f89c1c0d051ba7b6e9bd4e2a43a20afc674d88fc0f63ccda1c2a808eee5d6cb577c7c676aae50f307a91c97ab637b68b7ba97504c2018d07764248691e63b463f3559e3f1eae65aaf70588075d357a1a7517410acaa6ce21eb7733e422116540084d3eb1a93ee6b74adafa033d8ccf27991db17dc48cd2ab86b9a12f5b69275fa5a55d1377722d88f0f17c17294041c2527cc228d621703f5969c5cc00073b7a31e77517c753d7308061f3dbdedd01ede42fcf1d859f998d25951717a9acec813c75010284cb4723d91a7f844596dcf1c50d51949c620d08e5415b189c395f6fa94513ccb2d6a128aa4bf120c694720258b13104368663fadff1bd2e3f64e539f81c7d15a05b92918b8490db49976c457e9758c84f0d5d75895001c8a310e684ef63217c631e02b679b839b01c01364c72fb5634570397e6bf2f081523b743040b032206d317f62e38d6e2afa04382bcccc14f4a88b9c6fe17cb6237bfa0913477d954f59a9cd557d9a7bb77b3e4af55a07f9e84822d1fd73d8a62dc848a856ab9b20673de79035f62c1d3597744f1c0afd9d253097194f3168a6591b320512d3c64881001f0289f49a73e884227dff9ffd972b113661d3e9a702cb4978b333b46f41bc4dff1b7e4af60cd3e1a1aa17bacc7cca7f71c2e0dcc1810d5f6ab0c0122a7ec48928e625d086d4749017ef047928990c9d674d05423f87d3222910d208645f730a04111e8e095d321e668474176781bfc0ebd96bb6dca61dc9e3f52259d11220a1d2e5212ac9e3be82202a8c68ffd7712261f38ee437352b67806d9fa86b5709dd75289007716225c8c96dc4736c92bf16b190155a4172ab065122ee988856499ee4e93b081024c59e199b36c3e9888c633de2a5a009a0b0cbeb67da976fa8fa0811a909fe3de9d72e559bb7ea591b8500c05596f33a807919fd4e850c829abf8dc3cda5b39bbc9a56959e4e6d1a34ccad9954cda589a37101cd189ec9c7e2544acdec902bd9fb6207e0cc081ae43c8fafb58bd2b59f8f000252fa742909ad5aa2bc948028408adb19646b5abaa3256ba0ff5d8481bdaf71640cd3f145662af1bf1d687ade9d842c5e6815c4c9c041a7e82a2fbe61f0a3a201d013f0c5adf850992ad97b33b590c84dc7ba48a2b9a9d4d404733e79fa34e441694e1250675390c791d47acf366e1e685c12a49259d050dfb53dcfca876f963b8336a1a7d12566d0fdd606aa4c18c02806425afe88ed67c2f7918101c76566814250f510f1f99758ff3181618a00aa37eb63ccf7dba3f4d8e48352ce01747e119067857a6dbc84e117c5a124010a4dbe78da6b3dbb65c55986b709ed281cb5096321daeabfaa1d016d68e5009c2a04272da009dafb355a12bc2b8be754fdd00aba7cbeb83ae706ac32dc0f089409791d03a88d402c55da0486657121f41e028b53e38ea9007304a5f6a9880e9049b0217c7d3902da4f4b71e50b05c14435ca89c852533131cac83d08991d0b348f6b6a32a8566daa5a701d5685051f1097e3948c3323b3c25d0538be4652c35172920b3750d1a154ee8e307354c16b09fc11a2916271f0bd335e2af086083f5a701cb7bdb922abf3545fc8b956be8424c6f464c7f18c5f9d9bf2d65a15135f985ef01ad91e98832896cab53db423f005325e629234083fc7c5964cf2f0ab35c95d05a6c95a08479ab8455a85c87b8195781aad0bfa6005c0e1c7187abb882d7fcb2e72a172703eb2a2aeb9d050c681137e0358654325f6f038355719ff8ac7442bc565c3993076670e22e7e1eb054b3883b99998912d8b64a13ccf2efed2970f9a057a58b3ccbeb835c7a3484e001417e3e08445e8a1862f90b8738dbedd3d83f7ce86010d75cd1af86633b4b97ad0bc922798575133cfd2e7c6a92b9cee907468b405614f0fabd2974ac1673d475c54ec0ef2af5b9fcdc06cd4426ee48445e0fc56930defd591611aaa170b469df4b9f82de6a4680d36b72bc265ff4183302ba48f7f4944e930a045f06bbb749df275fb59e9e0316c016bf8dfe01453e36c434eeba9df051feb0883d71ad97b747dc22c1266ecf1fa0424624f38724245b92428eea9f9504deb334dd0abb517da06d22ecb6f41aba09b55359ed0af269dc0cd71838d99eaf01105cdd0f08f4f15772ab5d0617ef0d027b0818304cd89b8f0c3028c351a00be03b17d91141f9b1049cf9100c50b06f508100a8f9b4b287282b7ccf9aad6186257159ee3e3701c15e016b0821fdae7ca7daccf5ad33831b0b808e96b9bec62b8f42b700edd7884ce67dd7b6f4308540e078bd29bc51b1ca615a44247ed84b4c6394fc407945339069812ad1f02c33faa073ba748e60cc8df1580acbb02a7fa60b89232be8f3215e2f03be46e2e95adbf3b2a926456ac038198c026f8a618a2c37c07dacd5ff8c041605a2c4df1f4bb08b6ce411c94634d49a86744e565be31133d4811f0870a86dbfd2f17d9c8f1d1db128071929ce64e841583a41f3745d4fa2338493cfff903fccc907260e16ab155a1ea804012f024855cc1e3c02818980febc72b36b349e6767025601a8cb7f83db378dcf06cf736c5c4ec7bda6e85ea6847e8b66752d5061a91c183fb6250ff40cc70b2f3d5a2076c2127f3c19d1e2fe4abbe5ad36589790f9561e40eb4e3d1d568caf81ad4d592a288c7a2f51fe5e68afff3e0555fcbb7443fb286e4724814ee919e00e4c11df0078bfe80d719b0130e82f3ecd065d9b067b7a83cfab402ec44c42ffe7b563682cf023001659ced3d913a2890cab416f35a9567aae815e174b247a4156269b6de1dc56ff702aeba9cccad50389a604626bb61f3f859a8ce48cf84a0ebaa7264deec5237fd5f40e449841285380f4a15e216817d4b1a3b3c2b67e326066218e1679c846c5c7a76627db443531dfccecc3684bf073d79041365387ecaee4d20a0afc4da72a1d0fce74c92eacd63a7817ee150f7b461e36aeb48f0a9de0b100d98b8617b5fb4385fe097e14a2760d6ac049f4b15cca999492d9b1d0a906ac5bc7810a0b6f288ea6be59219aad274271c8a79303c26ea00f901fb657c62d1675280a4b3ad128eee135eaeb5fe63416f8326bd06d47e25d157df39c81de644b3b0b5077583ffc3dac2ac56b9e183ca8ae055901864fac336a3228496085baa86346bdc65ecba215990f1dfc967c056686538231b7915453aeb1458416dde06d03598a9394cedbd60138c49a471f5fc31be886b6299618ba817e37878d7b4c55d148341d2e8c3788f1553c8c65d40b3ce7dd7469ff59e327f341a4d60fcb0954a93bc16f72ae7f7d95addc7266c23feb9fbcca28292620e017f1db873c8bb2db0a1c6c5233b1451e0c8f5c238aeb4eee6f2e238002ac99ade8eeb26258f24443d9b91290d01a059b049d89cbfcf2a1e87ed9606d602c6960a0a823212d1fd2516f793db1d171720f0c80ef8a5b78a4c83060212f7fcf4e1f73dcb32b7eb426214b78c3b2a260d579bb229b90e894a8340d25aa55cef25766b4f8a9eb5051da3a5b3a3a42b46eafc55d6586bbfa48adde9858abb01878719568b245c66feb5d27678d30c86369f44ca590631fe6185b311066206e58e377cf8c39b9c47266c9095665164a4071cbaccc889e3583da7b53ecea43024847f236971d000b49ad3e658fbfa4fbbf924ba5327ad38e6d405457d09422260a461b78cac5b268b05ea75204ba26e48f82d734a46efc7a7f73dc1c632aa9f2986852d40e8f0524e00c2af3bd51cb039572d791289a533d83aa0c7034d18d7ed6635da2751679d2164024d10064654d1afe50fb6db1ed3c8629f568f44b7f6e83c70c3852bc91aac648f528027cc2445dcf2d42abab95f6e41be70021d22c1b34fb6b5423f84b744f887134cb67620a2e23923c7b513ba42eb967cbb9209bd262d5414157b34107b1abff2c315aa146e2f086e89095f24088f53b6fa0ee8dcae64dd66e4be041c004c11d9736be248cbd4a93059a67ba2570e2afe0405ff979d404b4a481390accd1d322dcd703b305ab6f9413ef2f85c8d05f2f7578642f48ad4dbd1ddd1f158d59e0ffe2a12605e6e1e0739801915edbb5eb1073763f8a6feced3b03bae9e1dc3def114e176ef6e3ec382c20c29049a82cdcd25a1556e5282b3a0e5458ad2b1e99a67371eb282108dd5afb86b9cd82c65077ba30b7e1845004c4945c9fff494d34de5f4f4788e7877f12e80ebb1dc70e62f097e857fe93b33a802eec3f49c472f190066f1409a680bf67277be2ad376c28386cf1d65d9192007d5f8fd03249e1438925a769015206611a02f8492d051525a1bc2a964870a410ac2c8236dcd00338a82ae221b379c5bff532306616f8d9c0413915e5fa4734d84845f2cb3ab05981d6ed32628660037b73748e31c44a063e92c2bdf8a0515df039c3f239abfe6d56072ac30d806f4f539ccac7e7c13f6a56e9370a1c861b501635c9d066a1bb6dbc08892009a92f59011687a9e349aed472d9c84ddc63e5e27362f30ff6c1836bffc003d830f8a88a056b6d46bafc6abbbf5c42b56bac29419d3fa7504eb611f533c2ab326768246f1d69775acb8519617e83b04a6e6740ea03ed813697a97b10f35b1b54c7521b7caa8b0317b68173cd7a88a1b57316aa383b2013e8d43153a43107ea78e3f2c2b7f06d21186f41867b3082bc1fb6769d8c171cd28e39c3f0e29c416730ec7e0c0d3263bfb9c44a2ccaf1385d818583387c9b85b385ea719f8735f30bc2e6b5f9f1be0254ff99424fe7690e5daf7f2fdc103bfda6312d209db0bdb87b816331d6a5d4ea591428b1376873369cd532c6df4f60c18ebe82d132239a1fb260814d31150dad2a168a594c5c11e895af5d579c6d07f6660d4fb4f5c1a1ef9b03dbff63621749017761dd3f061c243a45845d8c56ea30f87f1a4e9f14203fce2ee2bad3a55d8c5e9ee291b4762b0868903ad50c17a8bbc8d0740c964213c4dd098d9d657a86edbf9d1dfd4805fc6baac45383e7c211cbee9f252405315a4c8a614102406b42dea20900930d0a2a561be30702363f29ac34023a43795af5abb531f94fa6da591311ce248eacd633729579a56a2328d648737164fd997243fd8f6d9cd69111d5ef482a58f41b193b05967db15ed59926bd91b28601c163155623d5a510c1dd48135853711dcd1859c178ba7691e08b91d69461a97028440cd52e221ad553329271484e26e823d291916726b27260eda3459b7dd72b14dbd4624983f4e771e9c5552f637acd4bafa3fa18f915d8e036d4a9f5f216dc2e789d86ff640fe27426d8c17e8cf47edc58c52bfd185df0c5ca324f5d24c6e4950452c8752bfdb29f790b3d0cea75d9df808cbd4a61e35dad3c1ddb8d9c5ee495b1a354c20079670f3daa57404250e4e8f622d2097c1a221eeafd384f54e4b26b0260bcf117379b64b7b1b9666c3b1781b7b32dcfe4d1fe5e6260a0dc8ef94512db51e711ae243e0f3fb58a5416be822afdf60d06e6870fca7f0e529700f006365ef65ba00bb8898c4256452477f1799ada798a6baa57ccf60425b6c50e165defa17d44f2f26038910de8a5132dbdd45e3c90eb0b028787bef879a1f899acaf4c78dcc4720517a2b58aa31d83e5b72a1de6a5d01d03f236e67b69c066d68496a9c60deca8593b30ef18cc3c6547d85b7ed7fb703ad1cde3986bd64c8ac53f4a647c7a1a6602c0bc005cc4b2eb0ab7fb574225918c305f0214daf8db06d977be02af966e7d544f79ac61b494e4c0d19eb931624c4c89072e736203aedd765595bd03b5e8ba79db074d7bfb747fffdadf94beb0b8545f473f349a81b9e8d5e9c15d7367d63df19eb8c5dadcc2145cae5cb0bc6d91fffb5931034067264dc2b6a929fd146ac9e1682f8c1c9e7cb16459cf4889930987c9925dfa0ac7ed1984e20d3894de6406f740e820f3e00737c009122818c73c85d42395789e67e6a9234bf14c5a7d1fbf0c79ee8e1692f71a8dbe456b5f4dae1ce87f66efe5f62acd832c328206b98fda84c4154df765f3069c6be19523b6e050f353705d977241c404fefb2191bf3ce20d5302ce1ff1078de301b6346da31af4508d5d07ec70b62245eaaa3e0a25ab63c59d5e00031b68a3f67035d97765602cf494381bc81e35345b781a7afc382f7244fa911ef484d203111b8ed622cfa2b61d8299a7eca455cf2585b58e9d73bf147eef4aa87eb2f4281037c7c9cfd0eb4b32e446d1bfcaf6e0b199fd8e8e779496d25223389f51e279f6b6473dab8c2e633c90c5b5d764f195d869f352dd361a95df56942648f6ce4779a5dea3743358b8a977974f5ffab286120950176fcd5f28259545cceba7008bc84646af68e19f9116009da691651f8c51f08e7e64360380cc70389e14dafeae6f30610555bb132e9a578f203553e52ca8f7fa0f6952ea388ec1621caef183a596a7b7207778662fcd5d57b43d3f4203b07da405e6efa9b7b5ce30e4f5c2acf827234b4f9ee06102fde33d88a3647677cda9911eea0be428435058a88ddea9b6adbe60e284c727e941bb4bf551ab2d3d03396bdffbe3001a65a5d198a82d14aea442b0c7a35b9f7da5560856c30f9070207b106183ad5856e4f810d341bd14b64ca83ec3c56b95bb26e41b09004d847d90d881c737eb49e58ef36816ad40d54a88de87bf0dd0c54b9a33e56a9b4899e37558474df815aedb8d90b87dba36fc7f1472e64e398d9ee8a0414ccc615c8ed031e287797a282ba1d3a97a848ae0bb349ca24622d8f5303aa39effa272b4dd6c53f81d280d54bcab62d917035d0e8049ac2e0bb8086d192ca7a60c56d7301eb9ed3a764359492f460bf625d59eb0e5325a25691a82e18298ef732f66772c9b38390d8e26d47ed7b2dc430382687fcdc6352ded8cf7e4f274e8b8dcfa788e8643fad4e1b8c6de7240be3cb897473bbd6df1e34ac297058e32058e106c0baf7d9542ebefd737891e004229d7933eca5daf6d6bc186d4ab723a199a5b7bc5adfd490d245f4d2203c241b8aff33cfc9ab9222bc1a23151d9883697fd6cc16efb561e0b9035c234c46fc884bb35cf9fa9be40aba88b3249535454ea55e09fb8fbc056450f6b8962d1e640fd42d478cc42ae930f44d92ceb610d313981592bfdab416e9c3caf2e0c8e6735a31ac4a59478c44e6c71872ebe286c983ccb4ba7fa228db425fad73f4d2e2fdd92f4e0f4760efcc06c1317e99aff6e66405dbba8b7f093117082c8d2c5d62736857172f244191077111f8f232649085b801009d42c9681495c236b110b985e66c54b5f4be465ce78d992b850e7ab6f1aa6a2b810b1be8fb0f4227c04aa4cba445c1058ac3bab7084e8102595d44a6b0d07afc76f34bb7fdc7cb843913d8fb18cac8cc8ac9ecc1f531e65ba017968f4767f8cd06645b8de1fbb2cdf1fd340dc67dd8fcbc53fce7dfd635c8c4783265998931ef43146585e205c0ca22b05221dfbb2f31a584950d2d8f9ee74ff8fd9295dccee1677e14c29494f53cc887cef4da65884d4f31d0844aba2ca40db83bd09ef2e404eb10d88fd932a39db65978708ee5d798fabc46e0f7df60ee518732c34b6fe8dabfefc0b27f5995a5681d59e80061f74d91e521f04c9b074da2dd9b0791a8ba8f4aee8f2eae2d8f84e696676fa1eaeb1771971ea7a4e22e6ac5b8638a51956927407795e35618377104daa46585e9a0bcd9d11f6b0734970fb24448b51e55f9a55d856fb43cc89562f3f6ce0e3b6fde81e49f85991630bb280b209a949dbbe45ced22647eac0d17ef7d3ce6a0a4756ce36a97500fbfa1ec821c37304837bc193bdaa029ec11e3fe81806da7c03c59fe2a601b4e8254fc50fe8c8cdada954e3f0c07893699c0427ad34f04091adad72f54439446b71a4b03403428835f43b017545cd02016678f65e48543949dd083d87fee130cf30b8a072be59522f57cb2b50be0825e72deb0fe95f7c757bdd1b8bf0a098a6c4d47a32d1cf0ae263a80aa791a5ac29139a7d3e0768fa9f518c7a24077ad0aa65c81f5e6f7044ab217017012a0932e8588c1966a410044719955e689d1a9b680500d9a043eaa7eaf84e1e6f49b091694d037d184d8218fe0f4dd92fe10e07f2fb938f3d33176fa5c3e810ecf8f26c3a487837a6868c2ff077000146ee7493170fa92081c8cb37e8beeb14620fa07c2c23d410a0d7b309410cc0b691686209f7f889f1e34cde5290f8cdab8677271352dc6c7c804944a48caccb1c84698c0391510882c7ddd358ff39ef06d8e689660ce8b7fced21bcc12193a3aef733dfc2e1c9f65ed0cd5777996669c49115859a09913690fb7911feebf34aaee7b50af7d02b0fbcb30931e51fd54172d3da8513534dbd12f40ec19f2660b2260629239525112ae1ef1927279cd203210ae3d20aa2adad4982fd0dbb4df52bfb82f4d7d1e2740a2e8cc94ef93b7a1bac6a5d79fd9466839a6c895e09dd70473b2ce09a79740279391b36245066c19ed2f53ec3047829688f3a17a70993e004d1dff318d66a40e31cf42ebf931963557e78a4466a167d2e0200783e05351bf94c0a5e03bd0bc2618f8f6e6788f9326321de45a654873b0079674529eb72e0e60aaf7fae6ca593eef622ea5b00473af5646cd5fe3b65e16abdc5a0f576f5c0c2f00b2bf2cfd9c1bad3a8bb20fd7e7dd8896a54e0158033ffef4137ce2875496b77b161641595b80658b2b670d4400af957e91140d50adf52c2e6d121f96518f8bd8a625633fc5bc0646e2ba7a2d83e35ed614552094db542525e622cb08b56f08be15b1efe22f257b5286abb6e0d30b75e7cfb8b8e044071325ae602eee97723c582c66908406972497ec13b559d9cd3f418110bbe20db5c6870b1f5a7214c2ce85a7de2134e7ecaf58a0bf4b9ff3b2d50413f3086777262ad3b4201e5f95314a9f01ed6ad2e0eafb5d719889e469f75d49eb2367a3aabb6a7e4e5aad5ddd07832a294b363a149dc824821b0a4396dbff94760a6f1bdfc87409fa23bf7744b480f8497d012869d2bcaa29d35ec11c05d188775501219420869668984f78881358195fb30f57927f035d24177e5c0c0501bf04d484a9755aaadd14f4861ceddb40ac80f61404382de9c493d30e8a41d8218c2cc337af43ea01134112a059d165da88a2dd96da8d903d4dfdb8751b3d26aed8856513e71b164c3ce3ead815560b3a189502fce317520099dc4baa189f0eac74db2ac50231c456466b8f6c8804d3a87647142e0ec10390657db39e312dc1c327bd7786f085aae0d5930699a947ced43e8ee0d62bfdc6b640b620b1bfd83b7994ed696bafdae7402a07f67380ab90e13eb8d1119028c0c530ca169fbe982c593706feb543db0623419064cb10d7f0f580d0401d1ce68c4820469b273be0629ea289c68e6a19d794058e6168d82cd1ccecf755b417d7dbdc6ac8555bccb47c44722343b6e62bbc052eb3bbe99c6ac831757e0537186e982b0a64aea6e8db2b699d21b80f2cdd5e1d413952e77a5c1f4e4c23a80d2f94f9db14fd7d06ad52d96ead324601ec648102c2d0ddc1c07bf029fad06690d5309872b4f515230652cf8b476082aa481194749fe4d9a51b704dec5dea54f61d065d5a2cb31102cbbef63836aa4250efc2534cc70f8febc17dd8fb116abdcd6d4f487128d81d60f02b0240968293e17a7fec41e0c3560268546a8b7af40fc73938dc690eb2e2c88419fac58b80a24406e99627fbdbee2714e9d21a933aae41a488d53eb84307c30372cf0716c80fa4a2b624057b0323804fab36f99bf7d9a1a7e3e41735f6a9a953016f3ce7e9a4a11501c42de8b8eadae1421b46123d6289e14e16fd834291cb1f3702b3d5e7c0dc94db9bc0abaa7b18a2034c450e657320146db6b4791c0fbf7bf80d2de0d609cd45147f22694dc560112671da62c96b566f096b6cb365e74a36a5330e8a065b3ee0d1d551f12acb79ef4bae2b99653633ac5812ad80124338b729e4939f968600949000006a7d3856cc4c5b204eb3c7feb4030139bcd97f5b49f4fa264037afe094d2b68f7ff10078c80b0da4f2263b1d81d9c175b87234a816af50cbb62b3b3c90a06ea5f43b71b600fddfc93e3b28a0df0451e4c26c5f35f91c3f61e0b8b0d4f8f01825dee5627681777ca103c8b1d3b433f3b152026b442d93d51d24b7b1decd3912b0de991cf91fb8db1fba167a6f69e3c2780af1495630115b7fe42bbd71c0109b17863b776a33fbe9a55243dfb05fa20fbfba7e8c5fcd85e2052bd8b1fa32bbbaabcf59a9da02ebcecadd13b73d75fb52cc560ea496297f45a9e5c6324a8604d25e5420aca0093f111a2a3023bc740f168c77a97007f3934ef360510cfabbdf2bc09c0e0965c3556bafe55f0b1a3df46ed8964c6790550d14882436c13f56bcbb71ad44e97b4a4646b9c46b760a95b2596014f5d8a0e815967e4c1629d3d24bcead4c0a365c719e20c3cfc67a06e479c883b912bb5bbe90d681d0f98f05b22f7dc99062b3d95e34647cb4ed40109235f48759759dc937824a66a916e29c8ee93407ef34a54a00e0584c01d9fb4e36170facc4e0491a548e02a059e3880723e033c1355db8060d35250d40ce0a8b09336da96a9c90c3f0611680cc84ce327c2df00b5b02656a88b202997a3ced404f84bcbb8061fdc672266262da3b23b98168ce2e936ed2fe4fb72b6978d098529e9cb29a0af617d3bbbc16051c0138802e0e37310c2c86c191e58e755c5b52785d2d099d660a5e826ffb40c57281e198adf105b23d3822d05340385f055ad40ba965ed139d45a387fbeee89508648529d476ddaa0e49a30b4d77be7b35c4b41b714a34c7f766ef2aceb85771780961e0532a89d3e2beb2903c8ceb6dcef924068ff3802aa05085f2dd21f5d5c199d8a72995faf4ccdfe976525596e7993248fa3e9cde44acbd9bf1641a6bb3fdf1344dbd1270852366fa9e3030baae16133acfb0b38d173b56e5e015e57279feb5a684a6caae75e29ef40a8498447ef45030e7cce7b3f942f2b8864f860c19868bbd3659178e0778b8e024d0259d5d31d22c1d16561c989fd5ce28d0483412974c1ad239f46434d5b165ef29dad904c0f25429e032a6a140df1c57bd3933091d3119c1b3a42534019cae240af4b27d7abea0ceb4dc741650386e0f822f4a3f0326ea0a6d5b5f2406424c1f05ebc4ee4275be09d6d02e1144ba96658cbb618072d8d51f9076ffa6e9c30d99a41dfa30a7d856b282662e86b0136603d346d1302f507f97bdeb6ae1820fdbac8aa85f2c05e48304017ce6215a6d7e038feaeb939bdd224fcd86dd31a63e2661bd512f1fa9372ea05ccd4f6114460acf06901f3b50121845788bd88e9814d4338fc330b2c890871f747fdc0a1b73afc29cf9e93690b254dfd99634c40a1af4109f0dd044eaa5e895ce61a8da057d66944676eb67a74684a61e762e324bf0a5fa6856b864e2439fb5b3a60932f1d38d9312a96d40f17060a1b34860500fbcec316198d749334633caa5aaa92189b521bdf87a66c1611c4e8a307c3529cd296bd32fb1f0c79b4d87573d286a99314396cc61fc58f6960c63cf6d2f25159c79f4df8ea4c7b125a67477c662d6c899e3d3efe27c5a8fc98a2fcc2ec147ba67ac7589f957fd4a9c498baffe11f8a2f54fe4f8276621f461f499122fb3c9e405e41ce5160fabada00ab003db70d9b4841c42368268a9286d6749d5dcc8134e3d1b322808d05d82cef9c1f45af78675500dda9d6b280171450537948b8638c0644848054810208593a72a9d28c0f14d67bd03503a74d477a79189104ab5658ad2fb04a19b0126dc0c4a309c3fbea94cf07b21e76fafd71345df8fd53af3a2b6d3f552f1fb02b5a98e72c2f574df3347d3653c5a23576164d361910be8c07893d61492b136f5a209e837879f34770694050566b2601923e6dc2e2aae29f6bb6d45201d095c5d4a65a0b618811e82adfdba44610a251a3f2375a7b1717031f4160386163f56dbf834a5caca1906dc1cd6444a10c9f62156a6ac87b0fb977677ab2480d02498453efa1ae5c544dafba09de1d580be0b4587088ab445929de13df8088c77da3b421330a56aea9bef4cb2ef44e2c72d03bdaee9415dcf9275abd837557a1bc49651a086f72f4c46cdcc83265402b3f112fc29a4b22caa1b1bbf7eee911f1c7bb7adbb1122d9b3c0a3ef18fbf193a6ff3f3fae89407fcf79fb13159471873eae4d1c019bde0802b833ed47c5ef954f2ad446fedda909b4d5931f052d5a8eb24d98fedf77e4d1a0e5fd402ad293c01da04a6e9e0a4cf6546d38fc06ad39593b42e9cbefac1608d12500640328206ffaa168922393c416a3ae243f8e043480562322353e15fd11cb1238316d7ee78007a6adc092b6b2481ee38bbb51efe714a576092794323fc6aa10ab85914bc3c0aa174a0bbad934c63c016e1e2911e136e24c052398f11ebc813308e4876a4318aa92ad9ef0266c221eae109621740d29a8289cbe16d3a34e720aa01e70ca7152128955ed7729ce1192ea4ee9a28569e3cea6cf205aaae0501d3e0244bbbb396a4569a448d26a8d06e2fc8f8c2c23d090a672e00efc58b7e7e613a0fd6475a3a00d7b70eaad473519906d6585e6435680cb6101856c7ff2d2b9b021512117c18a9b8fb1e2baf68abd57d1c0805adeade18c6f02e914303aab803ee961968ff621117ece5a6f2a19b92ab2552dc3c7460a1c709ae80f2b5e8e7cd65d0238142f44e60fdf340a5131c07fe26f219e06faf4093f389eb37f4d57b31ec65dd48401d8c995c6d40e5207a3f408378ceb054186a9e3a47c14ade98168c5c7bb275f2342d23119763b4f1fc40026d9be0ffb0f7b0ba04d618588483abfe2d4ee9f78ed9557fd43e78a8518d12164a1f59db178496fcc330cd309f1260bb28e2260e37f00aa116de81bb60420f4fcab799e861f2e261d97d606d16caf8ec65c31b5973758d0456d446b71070c7c715427b1b9aabd23b8cd8ace4c771b303f29591349155b3ab83ab0e86141260691bf4198d238a3812a131ca9f7b22b662a7e5e1df3c230f1d9669afc5404d10a8870fac5d569cda1849ffa80036a1ba6854a2fb382571d627e529de19a62165ef9152c769a8ecc2820baeb4ff1a977ed7eb6020e0b5a875a3cf6b958938e34c4b69d2229db39497037c959c5bf96a4e3da9760775d41667bcd3466ccd6d19f1548c2e68720c76809bb79e08b793d4627f4fa1613d12177a747829adb096da877776b0495291f84f54c9796544eddd0594d82939633865ac6dc69fb10d6ef7eb0ad59b527b8667cdc18454fe2999dfb4664e7df650e1bfa8a71484c15ec9bbcc7e5c5e893028fafc14098e586e64c842042a178eaf5f5195c2f5ea44f05d0185013fcd949544a726e182a13ed866225b0ed8bbf46d330a9a036015bb2dd459f200bdc4457812e240b926822b140907232e35f92bffdc522c7246601285773a696f3f752d4044ad98a0cbd6ab458af4779189b7d3da54cf818e7ea5980537bd7834feb4fadcb4e6610f8e13b8488d88e29b9f7570b1752f709ce246cefd33baa0815c75b84683cabe02a303e4de3bed0bec21977f25058a1cabeea2a187326037cf840251f8fff2a81a3d8a1bcd538392327693b25da5ff614efe245c7900405024afa8f248cf82c5b175f1eb403eecd58f885d8725573516b6be3c4d4fc3b49dcc0077d390b849af756179e4c76f31164fcb72b1576f5cc382131589585d30fb2241f50bf2c8481c0883b662b042541bac201a1239d3dcaa5a9cd964ee57899772a2b119e72f7ae3f19ac446fb01fc6718580bd8678ef1e37c59263170557fa0b763b93decb16c9705e33a1bc2d9d3b10d98af30096c459a94a69f33a66ba25b80a37a2efee4ceae9d888589654626bfa86215906b10b560d1dcdfd62c948910227d367e0667a25648c750a4f9ce415246d53e19ddedc6b4ad7cfac0948bf4ad38f202e3fca9e08ce528ba8d282344803c84f68edf690ff209d628e91a206e890ab354beee37c0e83df28890b9541b06d3fb8f8dd1582fe849094bcea762c836dc6e8c7f70a0b12997fd5cb20bb1cc30dcb5185323a362ab854747b4e34c58f37b431fcfd7efd6a40aab1641dfb335ec2df7c324963a58f2695c409c48951ef55780b423e2e78629299cbd28522283cc654bc540fccba973f5136abba698997400439d854e018f4676348a423aeb45ba05885fc3169e8b17f78c8c7e17e61875f26551defe7a0dced146bc0374d43f803e47b3c9c9c10337bcc3c3961b65c15a4a01339ba2ffc917e667ba7caec52ae2e2561cce0b132c16cc6dc4e32bbf26f5438d59cc3357534948a7f048a77f761e2c9a62714aa9aa7bff7a428a36e65002df66322c8a5926a4bd836fbaf6d26e37b3fb2bca250792a54b2120b18b13256091f91fa666bbb80e64cc46046cb9ed15b56a77ae50a042b642d489679e48571f56df4cae8d76df21e42264ac68f3dae2bb61dfb34e690bced94462b413638f8db66bfb89738a87924eaff94a53f5277eff3bc44d8ce3a44bf1fece5d601efcdbd4cf066378149bea61c2712f2ed7b18d7b4750ebd96e2df0f167d9efd9e075c508e37ef69eaedf48ce2ae437532b87008f247b424e99dd6a655b40a16516392973b6cf52b53e2174843ca053ffcce2b775f6a798f6e53e43cca0775df62f1d94b78f88ded0530d83c60c8e7049bd071c7a6a1aeaab41c0084d1b23dab97a675c8292a3d485b86cdef6b333a7d2b9f51236a4ee84bf699a04c38ffc45c8ceb4b910a7af17a2eb9629d29f9ff19a3f3d2a3dcac9b6f992a75c8a2a5e5ac366e7bcdbbc6936410a7bca119af83ad90a2f512b9c2a69385fa178490e37994673c7a8062c4a0f8f3da1441817ff9c83893b1a98e393552a4f0356c1da9ad58b9bf63bba4dc39451d3b01b762344f07cbb75b6fd9a409fcdfb202d7e072680aeb8b0adc82c58dbf9ab3538ed926851cb6a7da43901faf7086045454521940cafe859e5822d4d5895da610bcdfe3dd705eb17107438bf4eecef3b66b1d182322c6b02a9a98233d7ab9c9e1b8dc4e047399c88ade747ec4f416dd009b7a24d3bcb8b6a8d64cd0a46b74133aadeb9c76e2dc296cf9df75bfd9b7f42ba3cd3a6a44eab5028241474a0d3bef5cd1f30375bbb5855ab959e9cc1c543d03445cb292e3c68acb0407474e5f3fbdc423fc9365c43c90de3c3eb6a7754214a480e809fdea4cf50a2227c51b54b30f4f549a7b4e9933235c5d926a56cc06b8fc744943e7535f71a93d54b8fa826c26b99978a221011a1883597affbecb705fa3b0ad0fdd2ff8a5f9a6580403b1bd230aa20372f993de3a7d7bbe2642ef08a169e74bceca50f1d06cfff73cc2c9a8085f3da90245a3af3b3b93d68e570427036923ef0d2a3c889d111a25306e856e64387aabb502f4167c62b3630dd8d3670cca0cadef646e2ed88a36351eee9d9aff540da31bbfe2369561b088f44c93716f0aded038be383c575280e378914a55083abb63039ac9f65ea7b8895497bd515fe508d215131d3f072cda6828afa2aa23b97c299e5c1a96327d5276218a31b2661bbda8db4916d92698582119c804270b6ee096938340e5ae4b25fa107ddc3d4a008f688485b4beebca4995618b9c983bb0ce1e6c871d80ea703b2d7233790b7be7349f4431d6450e67a1c61d084b84580027b36a070f4124b4e474d3e3d1ac345e7923f7626d952e83eb68843fa28a9a5b12e5d2538eb3aca14c5d20a5869220fa53d3969754a9afc43b8e105828764c2e81444022491f502618f2d5cb2c94540f29e45f1c9807552a45172a5c21dda69b63b14df2ec66e9ed7ff6c6d824799bbdabaf40f01bfecb08e56ad43d125db0c110430a549b915b44df371f06aee79565da36bd6d7d05a0f65baa15f1b5c24852940ac14d18d3e31b44cae71d7819612e5a2ac990e8163c736810f0d171b9cb4ae57ba2a9fdc09a71712e0a4b557eb02764c835cf91dae7b2ddb1ab3b71edf1efdcb332da20dbe0aa60712ee5daf14c535acbce2939913c38f188777125a2db01eb23292dfe56e8d3e6b9017250d3928276e4c28a25561e732ed6c41983a1eb3c63ba40e24e652dc83de3b560599eb812c979d52ac7581814d93f618c7111a8bfa34823427b08701f7a9aba82b0f74d3f670b35fe70796fd7bf5ba04903e27655d83769b7e6601008254d72b639fb1554c887ed7b5380466362ee5e64f1b9c2001d92f215acc2c740a44ce7ce4e9f54d62eee28daeeb8830fc980cb597036b2ec1ad4767f860c7ce32a599a26e199f6f3e2b5f400a560941e09c310ad10224dec690312dc7e401421ea0a17a789744b00ce4108f22e78cd90a9ac5a9668e7e84eaf78e85aba8c4eb00794e1befe716a1771e77dcf0031f41fd1fdd7db64cebc3f12abdab82bfcfcde8920885eefed4a70556f3bd5698c68717a1830fd5132257e7dd0a664a420843748e22e467564ff5a0a9dbcd63b030839e3ca3fc397cbbc7f287a887a87e760854e671c0c511cf9995d54b5c1aca17cb540ca11883dca1b2207ed0b8bb9a456a137389a644b824b64b238d8a649ab55c3dc44fb0ab64d533fa0f8db92cc74e399d05aff66c9c12daeb62c8094916e0f6f23c25fe62e8a107e13555b07ccb8d077b26dfb2ca2f81043917e0104569e71895a04c1e8b8f709c126261d712082ced0bcf59099c558687aaff4541c1cb1c2650254505c06ec9ebed8cd1195cf390b4aa50bb87a67c4967a959c6114dac1ac1709ace8a784e073b630315a857c1333368bb2d3bfb68d21b8ebd85d84421b962a1822d02c7dcb014eda22c54ad49e365ab140408ffc9f1de7230807dddaa75770c11c6fe971fc405c84108095484f3c87d7428900fe10db4c014b4e45d9acc2690365b27bac40afe171e3f9feac1238b30c3249ffb82e02daffa4b3f073f8ce3c8155dc15ac08db6883a0c48125bd49c8a72b80c501ad0a353962a25d4f70e694f34f8a4fb3d5c79af79c755f2adfd03be7c50a465a350cd536d830aba6d02d375f74a7250a9838682f462363a15a2b86a90bdfced6eae4f2f97ee3ff2e2dfc87148747492604849edd157ebd7d56663ed04f166ccbfbb679731b88fb5cc9044d502f468a0ca381aa5d5007dc6288a8856211cefde5625f81b498ba0c111a9548d9ee35e8170699b319f90b68341e52185b4fcce10fa05550c4c08c81965665cda20181a3f5a31ae00c75aca3a57ee0864e92d5ac2b001a3340a6a877de6b8d70d0a0db3d625ef007d6f8a22fd31ca2f6f70528139f1f2b94aebdb5dd38ad790da816c5b3023b5bad1ac120030be034ac86db1b51431a9c7f30fa9be4167e7744f0b75f6017286abcf947cfe53e0653425583d74d9c68251b1d8bb0e91116f7accb6a51e214d20d544c0867551b364b1b48be3533e347353d7f8875d8deccd328eb7a82a47626f8754062cbc5417b3a0cb6e10165c2b0d683f95a4c1c3ba3c61192a5f0f100bc0312f2dab0f923add606fe8105679b38ffe922494b03c14ddaef9372622d9115369a784dfa690e0c0846aad7ca911275dc4e156ce05582e4c6762a58399c54e34280a328e83080195a6ba6adfd768254143372f4450c6f364164577e3d816e00277f2c8b4cc9af5e9531ca4ef5df18735d426225cc6f49b82a6634e7f74d108b53d1aa5054529bce583d18b7635540376d42957015eb3ec25119bdb6b69b956271512bf936e13f6324c448b89d90765b295ec88c2e2f05bd175e7c1dfb90edc64f83976e070ffa883893ae3a0359af59655898cd1e0b6f6f97c16e68e151f446390cbe88193c60cc6bec25d0b215cd649b7507f91d0c5cb15fdc0b3050d4bb8b1c84b3fe22081608685a004ec2bb4919fe61bc0bef7ff3569066390557233730a1f3577aeee919298e18a3b2b1810d52b829af8c287498691cca0461fb7d7c10adf4479ece5c2d34821c7d699ae88bcced45fa361f82b0ebc15ef2e337ade83dadaed65f7994b4de69479dc067f5c87b6a18805521bdda34a6b1a07c78dbac07d7dfcf147d37625cf6d868123d91b8bc579884c718abb98ee81aabcf4e32d1069e5ca8f324f8a09637c8b96ad2147fc00a791e6f2d619bd6367ea28e2b94a72e2abcd37df59a4a8c1e6d7414152f03b28bb96ddedb5c630f0ce7c76510c4bc7140651d81776c9d09390c4ad3ecedc9bc8fe873a4f9766d05c2ae19fe238edd9f1fb620366ed74998928da0035e2da68787418b82fd5e4ce4b7483c401b72901182059c2006aac7c433d68896ed23dd70570939b1c140904b37c90bc89dd650d1ac1bc8b81f352ea3376d1f286733051345afcccbe78ab5d40bbc5848904cfafaf8514946744bd736161cffebe63b6280b24820e6d0121068a319b9c2f06ace0e7b2367f32971302388b7e3d2a1af06a165152593f722be161bad277645575fcd3370b79fe26c5bb9f2ab5074f2233e51251198aefe4aa68f9bb391673e91090ddf87895ad8ccd04838bdf0b16de7a34044eeda627e2ee965dddc02752cc4e656b72ac8fac1e08c0c0465805676815561c5d9270c29b14e24030a07cfd69fb1a61b246c74900f334a1754c0e0ac330cd457aa6d16027334279a63e5ee3ad7f9e321cd998893ae59a76b38d10342f800c85e567d7030ab432d01fe005956f9820e293a041677200225b579f696f3c39b8a443d9a27dc43896fa53df3738b21a3dc0b0b445e04ffeba722389244a42058371d545e1cc15b6209860cd79f3700442d417400cc376e57e0bd8725a3e49110fad2bdc8f9a598e285fe141dd755fafd20e6513c7ae280f090013902337c017206434093b603744401deb7d17de430a1f3f4ef91ab172037c078635f760c3962eddb98d7456fc613179804ce89aff02bf5faea2937cb538dc45a3e8edc9fa31373ce725c56864552012686ff39a01f3f370873a3480331ad4e2fc33ff08f91e55a821b9dd192d01708425827344725d1f37425669328d779e1134bc163d8d973f75066c5086af85299459fe65c1650e77facfd01d17129a86b71781ad5f33bcbdd99440bb1b180177b350d179e5496a072301714508c3584ca1042d8ef6c463b0352b490c26ec6b65a7c9cbc90504c0f806915a20f739e0696c5898f5372b7aebb397c74e6e93f9229e2cb2945d3273a7cd6054f8f00cfe6eec09c2e5d608cbdb0da30c962b24b093c234f6fd28c7778d041d6d045708f059b655904ee1a987bba536550a345e3d082f76fa8e9365dbfd695975661abbcd7d730e608c1f276a5adf133f53d2f602d589e4b9a11082e3f34b4ea71e5914d977b67507eb05328fc44e3be11a310f25512525638233a63994efbda39f180c06269a995f30e72f3af41a11a609199b10e15c93685f58e1e1d09ea0ae0e948055f4962c2ae66dcdc35c062ea99a05459827950aa083536dc0654ea64051f17113cbb76a9a1205150a345b569f61f4e0eeef4ec10bdd9626f5e0764d58277a172fa51fd79411115e7919e58907580f5f0f17b636639788f251a3311d3ed704fbbc9ec55f917284275ab556d32038ea0c66608367c95b625dd4eb4171cb7f8e1d26a963a9617259bada984d1ce19d6aa6fa2095f5c9402ae2eb939ad8a3f1fb8c0b0e5b1329aa1e3200693873ff6308054756845fc938aebb0e56f544cdad235ba8040419050f813b147ef5206149dea0284648b9d60a5bd5605901f26c91f709dae52c6ac250276d20c11164b9afb5bfd29b725ff326a595a7e12eddda3b42db7fc563fae256fd57d9d04bd4a0e98d39e1a76280e309b6b09d8f5f84e63a06457e80c7ca7aa0c9c3ddaf8f086ab41c2e44dd28706d7fec47facbf890f42438d8a52d03d0784c6a132ce8c680069691906b399474750467f3c9c2b26f1483d9a4c68d6778b1e7f41d3cb6c711397231ac5241481846ed58aa4d867816da15f760d4155dfe802772e607a34b9d0f9a1f20c53a3c5d0b2d79119a4f5b616b2cd64969b1c3eac9b2911df6d2be1e5ef5e422af1e6cb7a7feaa9f87d1102ec221bbaa7e75e7d4085616bec217a34128e1fc428b1ccbff9bd8190df38092501aa28ad99ebd90f21bb9ba8c04e8ad59e11d9846d62488aacc461cccfb99c4639de24c7f785aff2222165c873c884e7c421be120c77c8b910e60ff352a0c5465a16e00346766824bc6e358d0c1cc9debf44762d2c8f45d89b4d0e57d8a201fe8563bcfb0e975a420436ecefb11f60eebed92222846c1b41a4c00ffcff5cae517c2ac8deed190d3ac9e0fde3869b1408050be2c3ddcfa53361dfee1e27c64c5965049c885a45dc8619806f58e6a81abde946ab8d2fd2fd20e66b40718f25857ff95242dadfa1c7732920165e64cd2a94a0603480483f29a4da22ab2376c1a5b671a17427c515e415f58dc7f61014737374c29a5d44be7287f90124e3f5d497a137980aadb3a2b2efea81d2fcecba798239a01932574999ee316931630452a7b41b8e92ca10b687b7c24902f6417ed364bb832459a71a948e203387eed86cbd4b9da1a7271b4f3ad5c678204a9e86fa5242bc8d887f0a349458fb4064e77d5c24da26128d689721f741234f2614fb18554d89957b3bd7dcf51d327f6f643320de4b565679159c6212c2a9bb99be31325a730bd04a62d2d5cfe61f254d5d451bec60437eadce8e89c5e41e9d45dcd68d7cbf409c7a522afb54bf081a8cdb34724f1c68407d528a0d07809e9c46402eff192f7b300878793f5b71396afb7332a93832ba039fdb0264f5e41c90aadc47a26a95867ac5189012cd058e39b3dbfd7e9d50766ec2ee7e917250da724e1e6b0dba6bd427b475fc7cc698efbbb6424418857c3ea1ae3d8adde0578400905b58cb2d01d972c3abe4884987bfc91f7a147ab75d415702b0fe051241d710134001774f457e92f988b8378ef5108be2d8e3eaa94dc86015a8ada8a186defd3e5238655b1cae6e07b54587bbc0830b8989b64e46fef45286d611e38c00503a5a3d46ec5a467f575dc2974dea49d9b893eae4bb8b66947069d45d25fcc94f62169a1613802b809c4600cd8112be583327744dbcbea2cf98d05ee13234628a020c53a345ea0decb1713adf97ffa558118780517ca3e501d56a93b8b21197e7fadc79a3bb891af16ca61b1108d5c91451d3ddcdb66e22e484038a460610f8514c501c924ca8c1c84178efea85ec3fb340729a5fc868c2f92a82efeeb4a6a8a690c6f105f91e21caa0e0d3f971a1c34ccb536e688f7bf9c96c950643a6866b2573c327c1fbb169903443d9bd3d464b32ce554e05a5b56646e71074a6f6a967bd40c686170bceac32e3bc095bf3d0dc32fa82cdd175875578ece99bfc37fe9ee7877967f790111d6b0101153c40ab3c70efb1cb73d89547315a935125ffb1256eb126a35a386c8c552b6cd95c57cd300f8f072696a2f2fa913e565d8a99c430a3ea0da9680db5fe256735724480746704cae9349af13b65cb07d195ab30aa1f632b6e604bee634b2c614b4c64b54ad495ccdab58cd88e8d46e7a05dbf16f40498a000b65f0e3a352df8705713ded783538667d1fd043a9de4bf096851ce6d53d616e14bc76446ced2468cdcba8da69bc9a8b889ad1d8b5d7b0dad7d05aab30359f6a3110e34dd1896c2096b22faf0434c35086525cbbe19345b7bd6aa77ba2ed1b5dc575902d3453378732171c8520d84e1b01987b9540de293aa0dc0dec028e86331e85d0198018ae3d8f1f0835e333f238164b964760edd549bf9257fc6af4f99193c59db7f52e596c52c7a57215b2152586b075263547093d9d3971325a04f032f07214445ba80c6b5dd455d2bd9d87212b3bb59c481dddfcdd714256794c6b2666f9ef9b31da0af15541b7d8dc06370a98861ca7e4826ed97120aeae712bd988a4e7a0bb44d07d4b74e169d24357df00fb2aa060f7208b84eb1145120b0c4c341e9981f97e032049e1ee6c418e4fd940894a2bb78de80c9339efe422d5215f74c138e236f7b6c1febc21f73b9518af002e51414d76f1b916f245beb33493896b21bf4d42e4771eb75c0a158b955637fcaf0855191bacda710c8e1aeb228ad5f1435eb73600a7abbf0ca208fdde9d6a6036b6e7c4e2618f29081ea442672d449679aaba1c65280e0479750821e1eab3e12348ba12ad2f23d2f4d950e0e57bcf2305340576ef3ae40d0d912a37c40248d56311092240c0b41398e46a8a28db275e707d5198a7033363c94fa925254a702859858cc1ae69e306c94689f2f960c390e4fec9c42e533356f542da35330a00fcc405879767860083a9f2d79654ea643830e8d253e20f51f82836da0b92c27de33b6bfdb0f4f94ac59e8654974860f305e310675f157f15a81e5079176ce9ed131524118cda325c36b202eac4f340939584d7b550fcf693058fc8713e02de252b8e6e5b0104c0b16a25758e7b410303565819dbc1039de83cd1d497dab20c8a4e0e44d2edae2a9793ec15dc621f9466cfaa319bd677e2dc739cac410ed5d1ed0ad193fd5fea8df09e5245378795691f956450419db7ecaeb1d5eb8238671ef85002f3c3aeb78a13a09ccb0f86a023945941c20d7cd99f89995e2f96cc4ab77ae728f87f1eb059e7d0560beb17a24c73f78bd5812d4fbf86b20736ea677c99b48765ac094bbd477beb6bb3ab1ef7fdadf87a523f34abeda557db6e7eeb0e14c0e50666e9ba1e0dbd7bb81265f953686f4b04dcd02b68646ace8c6dbe2b3d4c903d19ed02e3e5efff7e5f37f9a59ef8d3df8ee57ede3cf071f04197ec034320d901a37b21afaffd805dc36592b8feb47444d0ea53a8bd479583812e7ac88620573c442f06592cb1d41a7e3247d61bbb1d9e897a50e3ea9ed46fb098c6216e19a798750d28f3af813e5484799f6ef2b1bbee7a388256959aa26aeb35d0c2f52425f59f335c9aea8441eaf37096c174bc2ac817709a85fd025457e958406a4dedce5ed3958dbea6499875e0b1841834c696c855a79f1de72ab9cb80711abb251a075d8852bde9b2d2e2a8f5f2afacb08102d190de27120c975e8e44885093d9e6b7ccc21e8c931d948e350f68262ddcca558be44068555a08e67737e5340fe216e03fe2f390550b0b1cc0a7622d64d0db7e28f128a76901602bc8231a5c2e20ce1254b17020d97c9cb74edf231d0b1dc59bb2f4826708c70bb910d57fb3d2ffad289e8468d000c8bf898ecece53fbf547dba682686a36e7f5ca19f5cf76af857137bd8add79bc09a397edc107d60dfb6a97ed9e5a601e3d5aa8bf5a6a3b609a9a390d76ecdbd1fa752d7910dc35574906cbb0591bfecca5fb5e63e3a5d025e9acd12b4f64e6b931714ae2ce0cb396c8422c4738d5f2a04fbb308cd3bdb0037dc3acc949f0a2bed493231689b50dbece160a61cf72e67b90785711a65498e12ba487b6c271bcf0bd42d4bc3087eba77d2101da679f2e88435954ba8b06dcc8d1265f9007b13253e50582e630f7e3ce01a7756d096b85fd719fe872026f8c4726eec6671cb719d3314b0e4ccdc7e42b348c07148db93e2ef54b0bdd3e6b93231ba0ebe65bc378ec6cc63a689dcfb4251406aa2d7ce9c4abd3d48d332c7f43dc850d730e36269e7fd180cfd0e33491ffddc5819cf9c0e602f88eadc0014b328edd91f6b3f3cb8cfcd7a9f363bed77f0411c8a1433d8237e1a1e2c1b988ae09575bae57b97738c8070956e848609ade87ec03b5befc94195406022a30313e5e5014524d076a3caaf4253855d1db592e68488127e96bb4db19ffce01aefc7f054e7202c9fdf3bb77e23857e3ca3e3375aa470100d830f4db1c5a145cfbfc7627f153c7669d78fd5d7c1fede95dc7ac4b918b9aecb6f7965b4a29539252066503cd03ff035c2a75c38f1e41d6351e2c6be7b4beaf26adcdecbe3b1ecface28b27b785ac0cf5fe6d936c495516b45ba43bf06968750881da4b8e6e6dc3d85a19b9c5e6fd7dc8597b2f67adb5765b0cd44d5561a639833b1e4fe045fca91f9f1d917f50a828e57650765494dcccd12e9d629d1ab0a193b5104bb6fe087e437332273599dd13a6a75093bf7c601f9e711c73e0e074f885b59e74ce39e79c39f3e5371463ad4da6bdc390faf88d63ac35c6e3e8738e230f0f8f8f5ad6a85fd0411e7ca8496b7fc32b7bc980e7478f0f41fcf57abdf5d7dff0a3dffc07248aee27c1f83cef82e741615bffc492b75a98957dea64486b8a0937a847a1ed9e2e61e2ddfea2ceddf60509b31fbeffdcbffbbdd7ba3b0f7983d28db55b77097bf91b90ff6fb3ccdabcb5f53f877beebfd6ffb7b6d6baa71255b41b633bf7f506a428171857f7faefeef5ddddddbfd6b7b68669ff69f0b5fecb5b7fe8b9ed0fdbb66d1e63cd9e9e5a25def10cccf9347470b42ba8493dbf3b65c57663dda3a7586b0bdd788fb409df6bc11ab6df1eff08de6f03e8ae7b82b28aa8d0b4d200d0fd34d441d3e6ac4e7d07e077767676c4bb9d7ab5efeeb56e6bbdbedb498568b245074fb76e002eef9b994c35d4f9d79ce99cda321017a1d9bed5222c9a4868efd60b603caaaa9f217c1f59eed9fb6419175a2746a4259f6533265532394f3df83e1705ef232219999c6aa14df4c5d7fa40ff4642d323dab4dda00e6624f4a4aa897db886c1d7af5f2f97bf6af8e5cfe03bf5deafd9c685329109d61acdd8dad076bf661b17728b35b7d9623f424b1ae2d05733de7e01ace56c67c6ea15f9ffe319b3444cb1e35fed6d6949439ce10c6719df8b33f64a6ba061bfd65aebd31a68fcb4f605405fdb38cf3967caca463779fbdb36abddb60e7b88c3e15ac715c0458c3bed622844ed2c71d59b7ba0e7de349b2fd63e296ef56e381b51afadb76e1aced6d6eddf9561ddf656a05e5b6fcdb66eaf9ca5a15e1db2ad7dd95e9be17bbd5e6bf70d4a6b701f69b79eb3d34083661e54eec89c76cfcb43fdabbd7ef10b165340cb0e1d25698883e375a6986ae69e7a05a9eb75b486374d0b65bb2554ddad137322ca4dc3f69ba2673513413920ea94d65a6cdaf76ebf8e6d2682533813e1aff6651ee2c34796b1cfedee13fc39f1bcf7fa056706d28ec15c84f68dd63b67bd760759d72cb833f3a09d5e8c41199a28cb5a7c1b1a8c82a2cdc8a46a6262a0604c4c4e60b8bc64590bc659eec4af89898182c1262627305c5eb22ccb21f155363498e34a6664523531315030245209864bd7bd98baa02e08071ab27ce1aef95a36cd4763df8f133f26060a06939078305c5e46233d2393dab62cd308bf6cc526fea7c38c18cace0c916853cdb5dab61819480ccfd0749097586328948d5865220e7a218501af1d2930609185e50bf7fdae88738432be70b37c76bb7c2dfb7e567cfcf212d312ee1bf48677e57e55fc98182818cc7121182c2f2ed9d5d2ed14ef07bf7c2d1be60b370b0a6b5b675b955c25560b585add1047fe4f8796fdf2793fdeaa65772d8751450b9d2c9f7d5c5a65265617ffbef89f860f4af0db2b2aa71494131353895432f24844ba0b719b96297557a981841f21470b2e1147e22bd0f04698d21c4e2cc46521583cda1c042025131d696d32991bce59c8cc04e749e1ee205e25a1b3911674e448e11841dbb758b4d56a1908d94836927fb04b4a4a4834c564229148a539d25fabbbbb7ff5ac05f6cf4b98b24692832df216798bbc45dec25e7b6d0652778e9e1a7877f7cf4cd0bcc44ce120b7bc855de2348252993337bd3c4678eccead4b291253d63a697098bbcf40cbe93015409165286615598622cb50cc514a77bfd68e5870112f0fc5dafecb223c321824ce3717a165a8f59849dab05beebfa4269638a286bcd1e126f266e24fa3c4188ec52a7e5c7310a90e2a5daf9e9d9e9d1eda93811ed4c79c2f4a7ff6abf53299b4a63f42cc1c3c4663b156ac4563b4e55cd02e248aee0ce00f9040a4d4b90888beb71db988ba63d881c5bb7798c439834b4a2506f09c43b0c45667b94d5bd32e87e385d0a46d0a602943e30c9c53e417d6a64cf4e94ffa4d286a3b6f4dfbe66b06d9a0354a27cc6ff006ea9840ce7d67dde30d0609d36298e2a52abce99e4133e32cbb0e08c59f93c33169cfc4c0fd3b44e618000db7aff666cfb6fad9ceab0d8b780019e36dfb93e7befb92277de93ff4286ff2a6ffbc6d2110c504ea6c5398f23496d27502ba78d8fa4d4c2512180b52e291787be491cc9808d4c1557fdd03a0aa1c2d542de72c035fd2fb7e046bb572e7629042adaf6193a37654b1d66a022d4e0c5357b18213a832c863ee9e5d59899c84a5b6d2fd5445ed7419c44690b9e801ae7b7f5886f07726ef9cf389a7aa6d7ae92097384a97a43732384ac71c82a23e6325a175264ba473dcb64f1fbc6ae2ed23b1ee6cccbec9a2455843b868e803a99a92b66c4f31cd15b8e836faed9b2be0313700c36c42d61e18bf753aadb5320b69efee7608aa72c048ac9b8ef77238b26c644756ca2063374c17b8a60c5c3f7af4a809305b451b8d88947a4a3c252524d80b6495ace87cfc666fdf243069e3b4bd722ea89c54606ab5d65e7c6b1d696defbd38c376ab9062302d72b5787efc8950948f599cbc4db225e782366ae3e9628cb39ca1bedf2a9f8b2cdfd7f9784070966559cba8efb455c28f1423c148af2129dbf71d9df35abe593e6fc7513c8ef27eb6562bb4eb572ab156390bfd2bdf2b24dbb30e080dbb95d6fd743e34f40d7a3f46a8aca8a8cc70faa40c554049bd9fce87052a7a3f56e8b9331c52d92795d3dbc7e20d4ff9745c4401754855e8783db0d7f262a2ef12df232c44df9ee7918aa08d9e4bf4bd79af0e884f0cef3161cae78e2859fee45485162a2c612f47418e05ba431ca7bbcb711cc7698dbb576b50a7dbdaedeedd768f9713cf35f122b76fc7ddee5e07f88b2b1911e072cf7d8c854d3c92b39c8d64d734ad8eb4b66d5b77afceb4f08de3b8ee5ebd04170a85ba7b75a605f611c23dbaaeebeed5f8761c8e0edc7a96d07a77bad37286e9be7e472ab8154f37626ffd4bf1bd26fd75d31af8c0f866599639be5fb10e1d41da05ea8822bb176759143a10206f660f1044dad3a3615776318db9d974b95c07d0e14a40900e970f92245a4d5c15561053b851c3460e0a37382a1a3326a46aa88ae6de4b4ff7b1ae91e9aa49fcd40dd654db0c0dc77136a4547e8224854f06851c1b356e70f00c139319272a94991a9a94149ae292f966ce0d9991e56324d21a592a7c251fa51e278421ca8b7930cfe5b5bcd163793fde0a94210384111d89a17b3a58178b89895961eb60de8a6573e309445aa79135a6b2ec945f0511bfbceced1584c2b7b47c0fec94cab151e30607b7b4c050b9ccd0d464d9784a7d362ba820e25068e5460a28e4d8a87183b3f7a702676872ce5d0c0663e960309b9135e67c325bfc0060a3c60d0e36313951a1ccd0d4a4a4a494c052f84a2f14be52cb4745c58748eb34b24600d88cac711c4fd8371f0a4f8f947102c771355827c88c8a94c05c2412694c7d3636a9d46793c3c684cf66d77c2e39f7b358c6f3646c6c6cd4b8c1c1a150a7d233a91a1a999e1393c762d57c321be7b349dd609609111ad26deb70b1d2ab4543ca719473c980a571b491d935345826db54d3999135b246d6289322328e2922e39822328e34be19326262c0a0c21717182d2ce0b757544e29282726a612a964e491887417e236ad1543dfe0c06beeec504105152b68628a95145248d1458831c618df7befcd57c48429ccba5f3c0e9c3ea5d7da0b3ecf117ffb2fb7b0411c5f1b158dcc4c8c989a140a06860c9617177cefa5d97d7cbf9397969889f8d8d5555369db64482ae9643cf1533531315030182421013dcff346a3993333b67c3267f5d393af5801c15a65121b1a3ce37452999149d5c4c440c194beafb402e3c5656f554bca366d8e73618eba4e8b4a023da264f9ea45ab47d43151b781eedf98e6ade505684ab38d67cee6cce8cc2159a0d3ff77afdb7ffbcfc7a677c2c7d6f1a096c9edef93faee272e2fd2eaa1e50bb40f6a842148986208125c473e09464c253841e4ff6b7d238e2cc12d0f4782082280bcc945431e6dbea6fc5cd2b7386f52ca29bd278b3927a5ae22fc7fadd4c711eebd18cf971639674de382e3382e148a75a1b5d62291647931e7889b5b8e641270187244091f105c02022d7f3169e0450e734e4a877831c40ff10208300aed8b9d2f3c30036d52fffa830944538631fe610394529a6559cb1928c891cf56000509dab6ed8d608c31c715f98e88cf07dd754782f811831e22a668f9c0022dd2fa8e782b8188442402f24103241e09c90bb10315315d1225d0ea0a6fe4794300f91004c88722225d41312a198dfec7ef9856434a48252530a01fa278213c30d04a07a41289f4c30f1e6403cff3bc5249c809701017988082d8209a4c4e4c4cb21db689817a9002a8870f9ca09c9c08e961076f0b941414942d874d8b52480f36e02082300a1105cce489530a0781b984f9f9965c75215308018398e8de030e44178203d0aa03229d22367252399d8ab82887689182ffb14741a8aca8a8c8207ef010c40e2278207b65258b32881d84901232441027808138f706b4031fa0150ef8063a9c4ea7d3dea421acacacac7c1f900f2ed1f47138beef0341221e88072448941339e387f62fbf97327cc75eb82dd1e7ae600b5562d6907dcdecbd36ab8f757c5f6b7d62144a46a6468d20ef40b817e79cf35f9cb37b5d36f20c42144b24815da2dc19c70ea15593bad8a4b5a4a1b6d50db7d0826cd9a9e5a004134ac0463db027605a6bd30733e1ef71423fd526186ceb428a2258cbfdeec0bc6e2d502ff03378ad5446c66bb84fb33061eecfb68e66433569240dbafda32163260d2a7a8096327eeb9820d2ce8686a10bd5e82010e270423170db0d17814dcaf870eba844ba43cb369a047256932790619a8c02f88a7406cb7043aab222cdb25446e37fc6cfe0329c061ae39908371771b1be1857d778508b7da4764a2319bef8e6fb73662c1c88ff77af190b5baf63ec77f53befff3719d6ec6762124b4f124bc40a812b5175db91a8d9cd7e9e48228ab4a8e5cd7e9da86d21911337510b6df6d3c42c6a22fb65a226daec87afa8799bfdaca88d36fb55512bd1485b6933692827a1b9adb540bdf3faff7cdb0277cf4edca02c26a57863a793f2d8113dc8a6c230654dc079095d5827ad560b0c16108b1b03f5ed0775421aba0eb44ddded85c0ebf178bc9d8e06dd8f4965e350d51d4d90aa3b4486ae535af9c9be586081fa4e9be5dbdbe55bd92adf14f34fe7e3282dc8b5dab62dc667376a6f1857ec3131317198c5a10243802bfea3544049b1e802cd29f15ca1e7ee7c02973fa8d40d5dc7ae4610400000a317000010100886c4711c87a234575d0f14801048665a6a5c46178ce3a11c87711005410cc2300c830832061163184248512d023fa8393fe9a34c61d87fa4c7391c99acb289bc2fb7b096c43cb9da59c40c88ec1bb0af0e3ed753a7c64cc11598a1406a926662932cc2b810fb04ae49ca3f0dd6c72eedbf84d04ac4d90a3eba062480c3b6f1769e21e93d995482c298b4ad355723e4e4569ac025a1d584ab3b8204ee7b057c1092a7b4c6d34686cf509d5312ac45b16733ad02a2e19d5812e25ce80bbc093cf81bb659b18519b0d82750e189f833bec450e7ed897ece1416dde0c450b568c526764341faa93ed7631f7725714906a1d0393851d1005c507f32cef8e408765980727d5b28fdd24f9e6accb7575ddcf9192e5f754561a66fa8bc2f2fe16ab572158e1c3e515f081081d707cfac88936f89a0513d9d14657b0d6ef58d29f94c340079bf0fba38356cd3c6bd0daa3cb6e28d5e9092c18cdea16096fe1d8b9ed00cbb7fc4feee898692b9143f363f8e79df23c63c7783aa3cbd3503b057029cf4cf745ae2607a6ecb6cb6c28eb291268fdc6a4be6dfc3f3f1ca44270f18250ff860d0c7a2be53e624c3e1e7320ec96486ebc6f8e7e9d59f27abb62d38002b9e7c67396c87dbf28ee096603cea5b64e5a8a5fa43d6ee90b6e54c1f5d6c2cdf9315de8315e43d2903bc09171da96774734b2a0b60cc51d75fc1f3491078ab7ca0d696c55ec00d9741be50641169946069b49b642417816285c073df11cb178a2cefa3b3f412fb0e3ea9b03660161f0c566ad6d2a8ee89e72712f911af906376898750e6762bc3777ea05315de58c14ac32ba70bf7943c1df485a20da49717832fa668e8acc0d908f536a6cb432e910ce8bc021336a50055138b5cbfaaf60ab7f978253936e28842cdeca557176d3ef9438bd476952a515e1f24c1669c14b13727d23d0639af56251385b09bd4e7a3441e4627f43e45175f171755148b067739aecbeb66ac21c1f07ded72063af53ff1fc2d4b8fbda3c20cd240d18c1e93dd3fb03d06263bdf904db2434377b5e2c4869971aa1c078d3be0e15fc1c00052ac0ebb871e59b855afa49f51f61d2a12d64cb14eded82950f56a7acc0ba2f801ca7e535c8114a10a38313cff6f9da983e94900d24a32986b9eba376899c7f349039536e529f670fa5357e5c6a24eaee2523fd080e75a367099cd89f026d1d1b4b261241dcc86fa18053a9b010cf1d8a15c09d6a15115958ce6084970bc78ccbb5595c5dec6d0736ca36ab4d0bccdc2980fe00cfb1316e2725c10a5b75b614c9f7e59f2405c9b007032436920e00cfafc172a441b11b20e6ae187f294d323c9fc212403bc045ff5bb2655b29f7cf03685ebdd54160848fa9749e28c88ce4c2343deb570366fac7c041bd96d627d4951cc28c51e692068f33031c359653980247bf3afe19e811d87f56e00fba481800dad67b60b3a85404433012c615d0d23d5b14f1a28b6a1b8b00258ba48f9390404f5f4337355e089b09313ba6eb5f06caa60fc8e68e27c246313645a0387834b995d6ea3336d0b21c802dec95a86cd2e75d236fcd223828678f231ca05785083f9e92669da36254406eae594c8d8d4a71fa95c0ff8df098470803c910be585bc0bd680024cd67e4aa4876d96c0a2885f7e6b9926a2c57b7f01841f8a2101ae95d756716da3af6a80a73eca495eb08c61be7140059971dd41c778f7ab88edcccba483da9800811740e0ef2e652f3c32641de5e23b806f1694cd114de95a01ef39f6280a05c809e614e06ea7cd319b334beea583ee5a0940c1a1f7319b70c6152a4f023ae4cb0afcaff0e7af1268c3390163a2b612b77db085cdda16b10bb1f32ba4ccf81e11cef30decdebd858ad71102929c9ff8974d642af763382dbce8574cb8f599038ae14608797ea5065f072a277818f063b6dec782bc15db8e26107242b931d7ce4a3d355a691b44108a3e00a15921b3fad29ecfd57e3b1a85ed79a719851e22b1bde462530742274a30206bbcf0580524ab09d0d3969b058e36ac6f8380eb06da959dc8d70de8693edb113df5184ab47c9c8683f653ab8b19a2c1bae1dc8befe0d60dc2bd10a1889b0eb29d083b5d3eac43d4a0ba2178976c34e080dd42051cc93bcb89c0a9b83fd09800d24633ffad9b261330367241a011592802537d61926fcbbdcf059f5d81d6921ceac6cb0e0cf817702b812eff1119fe5326f0ff7cfed9a948682223492b9a79b10c71cbbce505b9a93ac166db501b94f84c108a58509da4dea0e78a0195bbabd46f3679b3b701369b75c58d681c244c9c13522a026501f3e30a0f92e42995bd95e945f44982c6158953de0d8e545ac49eab097f0715e3576d48b1518d5868561dabd229a490c30cdd49eeaf0d286ebb6c4da6bb6ed131597cda7b174627dc7090228ea1d3cd4c2aa4f227e1f67afdc003b7e8c51fc55a670c8739144587e63ffb28d6dfb984858f02dfcfb01a5794501588eb51749f829d7d2d111243db521e636c287d4721a7ac783ac1b529ed28d87e261d454a2188bbc33b1e72c9518c1c9c750db03ecd33ca88364693ad796ac528025d846aa051fdd1876f4824734edc4f29cff7d4fe8a7c4a4e484a6a1c3cb5b551545a33dfabcbde8fc93499b62bc5054d13108942450f76389ac33f32ad63eff43396d85703c4a1452b2251df4ce119c4ad89a215248e8bf16cb8bdbfff002cb6ed85b21f49baf03dce7b20d3df4bd308807636a51849d1017f1a49d1e062b9cb025d93371ed62b8d609e405070469c2508c554b3a2525ceb5be8404252c0f9a6649e94efe3af62de02af422148f91bb4b3a39803ea47a965e9450450c6cee003300e3c341a39b4d8366adbc3ba4d4da01eb0953a1435385080322b74da7647943e3f04be232071068f504f7161e21b0194188a11219103183de2517200266c8e384ba70451b224a16e562b5d6e86fd120d36c09dbf633b2262d4ad3c56e1daebac83756060e5e0ca615523dd5d18c09bf7984dfea543d42a6ae16bf4f46b0c421be1d38ea2029837628d618272a41f0651814e0184765605b474c4833c3d8ad17b32063fbff2e5ffd8299580e983327be17b12318feea757065b40ad606a7b6c3044b79198979eff8f4ed63b350fbbe24918b74c8bd0c0bc9358a0ea47bf2471aba696d231647ea593e8a89ec2db73fa673a89d8808b06d59ebc073344d5bf97236fe7369093e8ff32b0f9576e66687a204b0271c1e2ec42416ba6a18b25da312858082a0b0e09f97adaf84bf9549450eb149605ce84fb30979490c9412ce330c3c0a2aa633e9d450182fe19643d876fa3b260161900e0b09360ed8045156c51a531f4e11572de0458d4f28508b8d059286d015c2c900b6ecc1009636bcfa29fc29e7bb8162318c467fb8478521deb025461613b67d85e1ef6a677f710e9d1138ebdcd5d5c13ba42cdd7ae5c255326372b9e32ed9e400746ec098aadf8270f3e250e83a6623d1e9303f1671cce618a98eb93df0ee8a8aa419a067cf46853e1815c01eb1674aae29eb6c07b4bdc87afd74e02b05164fac35d296fccb40d33b9cb9d9bed87d80f2e758c512856b3917374a691cbe2f08998dc28cec45124359520f29ae41cac024bab86f77a43f2cc7489290d741cdbd96053e73043fe36d5254eb3892d104527fcdf75f433260a82332557d94a654d29d9b8db286b0211eebf752e005e53d8df3b6c6673f812ee4e988a2b00b64d37e85618e38d972039a6a4514811200db094449dd604819d86a6309a08ed9a2f6f2b58110eee239881d3f289e2c0357f46a335c7370d4677c83b69c023a69eff1d097bed6e78bc400cc219c51966a019015a6a9e6f5eaf0999e8df891891de61be62b1d1a1e08a5d4d9e6b92ce46616cca281056f361c797494dd425727f4af0dbc4b7f3aa23adbb4c4d61749c5cc4b4bb2a885589e6d500f865810d9313eed9e69c4bc2945229c16c36eb9e315499244a4271ea16c55b70e7bae99f23246e661822e7dc3b7b3881970234ae7052e98a2d36824ba0dbe230d597e2762e4b4237ebe7ca618f7ebf7d353cf1902eb372a146565f8379dfc93a79cacdf6c149e44f34d2b3a99aeb40abba437d6b1586369df14c32526b63d341f531f16642420d3540003d1b8d3b782c912c5cc2a64d1a73e2f1b0297910f21d4b485b54296eba8dfda01080204fefa35b53ecc63719920f626e9c1773a831a967b57cb99260b7a43e516be3a4a3afe38aadb49059ff9e068f68ba2fcc758df9c391adcaa6c5375ef3d837584f2809eb97ea56e634c92e24a4958266125e4b474cc1722344488c00eceba911a30789e2060643a6a8684341eda44dec804c51835b758fa54d5454007cc131f3711032c5aac01ebcd7036e8901299a232e1ad0f5e4fe971083a4188e556cfd854c71e6a7aeeeb2332bdc38ee1465a6be0929dabc2f090ca428dddb88a40f32c550a674446fedac8c75f96cb38fd9ca285eb932ba13df5a27271a8046dc59ac7da4c4b8442ac684f839f211854c198b568b8910c7fca303d8bd7c49091818e1d54c253ff872f7d00cf8034d5235a045fd57416574b4a8cbb499312148673b4bca69669da840a1a262cb0811f1d52fe32e2af677284a7f62a302e79a19d1185a5121f32e2a7827fd6d25eba8ab62a38234bba28272f39a7b2038741441ff6dd2ef939b72946ec2f40b94f83d7d275a46a20226595e004676b522c605000e2af6f67e8f51af781d549057d267b14a4e7c58545029c5452efc5680ed0457137224578ea8027ba30d6fa8382b0eaaa0474b8cf9347e47692c214fc5a67e3670ae450f334fde16978f54b1dcdf5fef250e72a8c2ea94ff5133d4a342612f90d7e3f0f6aee837370c4af608dc4f431baaef0d22d401286978263c765474eb3101d23635ece5e83b2a781a0cbd76315d09cf526354e0e954f18ce897eda7a242e1c21dabbc3117417c29aba890b964537162d4852ae9b10d36777002783f452a487c63bfe2507fb5124182d6ce3c94080ebca322e835ec3f9f0aae945c651815b681ef0350db6253daa2825406d75645c5d469d6bebfa6b3e90d17e393df9e3a505e230224a1afa89dd4004285d695f23a1baa101a0507d22e976001d34a272e5448f84a9d43dafc3b43c56cf28ead2e8f35f2d63f1fc5394834576de03909b853730ec2458a409a5011b5ae120b53337046268a3383d7307390f58350915370cc69aa338d063132261ea20b144529081564050b129f99bf641acf245dba761251f2c144174f591a5484c785395e8acb58a2d6638402075146120209df62e21d9c73bfe8b357fb48021a37e496f69718a3ae72ca1df14903af2f0a060f03150b079d5dc3041c27ff14a779cc0db6f8f714b54e610b51ff503c854a470670484b497eb24c3060da3fdaa042969b84ae1a9554e9cef801e7dd194e18e280bdc6b29ec82e731b298ec19a72a8381b61e534bee69938c3de88db3d76c82b913911be67e3c5a39e595cfa8fd9d66ca6d7f4ad4fd8d9264bb3f3aa9efe16814ec1939be695f7d74842f04898c18c74f70dd555759da1fff23c56653bd99afc032852bf55d2ebc5531f0d6d4d5c9a106bd225d7549c3696c29f009aba4a7a51085c357d913524482545337ee6290a308c0e4905a60106cc09771e0500e0b40900749bcb599e67934bd046c29849fb429576e5cdcb86e427b2712f48ef0bfdf52646e8fa6451695375053fd21c49d13152dbb5f0f1fe496f13c3b10c93dd2069626c82c3d18656d60a1d6a5ed5113aa4ef6528f24f3710802df6a779950fc846aabb271f3e3be20c39b99636b51231e05337ae63f0486839a17664df168d34a1471c6d18bfabcacd5bd7a3d74b6460c4ecec1699080490fa3d304dfe53b6e79d80587c4590f242029604bf470c33404caf56189c747205cd62b2e30e3b0296d97a8051086be831d03e6d9d3cccb17c65295073b738980cc3ea63e2d483ab816bf07e55134a09d7c88d4010c149674f9b2ec28cec37db062274d13c1600a8cd7eaf528ea454b9a74dcb7bcf5d7a39ade725c9868d4269c83129638e660a732c205c3f786bc3fd5551de28a2a81ca8418a2878922cdeb0fb48346bc77c1a44e9c485605d579549c531d1ad04729531891c958e64e4b1e52a4172d10ca8c3a78be8899a69e28877ff9a978e96900a82ca2cb48c49d0e437e7ba518b8b9c736dbd55f4a656debafa723f9eaf4454f83d1e3dde4863e125cf27ca407bb92f757ed60385e65191ebabbc04541c1259b1570dd82568d11789121d0a32093318930a0a2ae96067757bf118ee536431295f1989b1d6800c3b6b7c73a28f28dfda11a9e1e6765fc7312c26db18237ec15ac9c5246d5227b2d57f1532e15d83676d495ce1dd94ab67ee0bb92177596df45181c79cb4f7858110e7c0658849ab9a52455df4c865047754ebfa84659324b009bad312ff15933c96ec366a8cc90ff8e6a89d2d263c26679844fdfee09b61b22149eebf9366c13079240b32de77af326e56775107f2807a1ddff214e342feaa24ad9e5c5e1ba9e4dd93266230613cad29df30f9a6f2e2e9748d606859081867e93aa700134c8ec76a243a4b6b090fe5709fcf78751db2b6403bf01060cc2195f219a409ed383e0b2ef03a22522385a6c381c924fc0f6c30373ae8251adde4b2c0a4e1096e24a8d720963520412cf1c1203a09a9a0a744d5e45f74d47e4946dea16782a33044b9afe8aa8fb22c45d75abe6256e708bb3585817051800832104cbc817e679f381745afb198f3da6e4efeb7843ec3f7180276be4b56f6069935758f92fbed7f977d95d4ca7e502a5d0bfde79602882c2d4994db5ddfc7e04cab875e469312224709b7b04c99145c863a7c5e5ce497695092080ad1d1f602da70cd6c0c0ed92c4298262e7a70345a94c40523a6910761bda6a5b60bc4e417d07091ddfedb11b4e30121aba3c19673e24b4623fb353ff6577a209f1111209c324eb827bb409caab284ae0a08823b019144770beec12eb136468603ea377328f055072e06e8b3fe5b58042a62011358f06831905a1be6b7e8d1aa18b528629ca3ac840350b17d0b35bed2843373bf1314ca140683d1a1db2a8cde2b57f925a2b2263fc2cf10fe56417e4d0a93131da9f17f855abf033f9c6ea52674ba19c7c05008a665412cbe57039b9e276001109a79f350e81cb34611571892b02bacc60eaeb0426459ede69692080c5109cfb74298aa1daa33d4ac3dc36f682beb0d8218700d1bb3b87b0d02d9325e7827024850cbbc8983f2e4150c2206e6ed5d7aa745cb3c7cf33ec0cf98d7a01192cca3b4ccaf1d87c46f583f416c57256908c4b764b000dca486264560e5da58bb3092885111c8822a79ecbdc827b010b3247b2c9697dcadd1c110c528dcea0ed805ee12b28ee9857ed2248ca894f9a182cda75d8b62293f994f6b0cce6b68526efcaa22c462a1ee06fa543297a90f558444a8140bd25c00e81f482ec84cc3d8ed8306b943f07fe7396ca3f130670d94885476d18215ea621d94c642e6f31b57a9e933d2177e8d53703959de65cd83c024512f510951f3786023bb93287c2b17a5f6fcf0632657627d69c1321af46150918b8ce2e07dc25b9f24b2730ac2ef3147d0ded22dd8e6188eb618d4333961c28a63ee56f0b16888a80e73c7cbfcf462b86f3531675cfd790864da8cad3117f7e2cb528c51851659a046489ca95533b2b3ba25d5a25e1117e4b2c5fc88497782b5ce92438fd762be255d1a09e415942efe0baf3d325c7897d91b33f92662fa8c253ba438e1c222c14196e0c29e1e8e187021be4b6edaab73d2e703cac47154f261ffbf7c53f1e41010960b493d96f91a09d581237b823e44ece36de442453a982532c885107c0b6c99dc5fbc5cbb80134e271525342ec4123e3e95a803d2608ec43041895f0063bd10bd5ce87b6457212c17a80fa74248ca85d0057f40ae9cc17be060224797d038590f69d6e239eacb85ead9b97c8e2e95874726ae6a9daeb04180bb49e1cbb5b72a36b13a822f973128d0c4c8a1765df39689b8422eda2f225baae4c72ca3502a88ea340175774a413945051e21ad85cdc9d7cba567ac1af5be270fba255a6eaa2578fa07e6b4d22d05211796d0863a2f6ccb0a031abd1c99a3115875c1d0bcb007176ce8c620c0180ac0094e79b9a004d709ca1ffa569bd87b34162f902f2f1061e4648186d026b9b2396ccabcc0a3bc3f4599ebeb338f8f3523b6cea7b8a05399c784e370661a76fc723189f507c678e3d40200fc357b1848824b512b872d60101418adeb1b64be93546beefd05b9effc0bba0bfff12740282e176fd89d83ff02244d7e41da4147fa0becc07dcd48fc85d1a7afcf45858de7a72ce66940acb85f28f663d72feca6f39342bf70c741ee751d278e3f889533a0a706e0426900f10b6bfdf3fbc2f578bea9ba39a4edd41c1e1e44cbadaaa560afa53a2e9643ae64fc69c367b4b752fa287517f6d2903300123217ae77851a0b2e71ab120d037761a53ccecc03b5cd92ae0608b1819640f5af5de0fde71be81e2ecf20f01ea1e23f03e3857b84b2328738e858ca8bd48b5d00fdeb268b48d65f17ceb6fca3002d5678a2c775e1e93c3d918d330de787a70bc792d0295e6d76455577a6fd1edf55339b0b02726ee602f6703f5430176eec19132d179a143d46ab57b9d071d3d5cb6758c5e3f912ca9423e9264cf38f97728fc3caedc3bd3ccd2e91303b91e6ced12b574554725e1f1573ff4be9c04437e9da04ffbc49d1d418d347af0597ef4151ab59f6e53f3f872ebbbc64affc63a71847a87a2b608b79184615d048fc5f69265578692dac02528e3da96f50148522c81548623c1082b6db5d6e5358ab4b570bb5ccdcf1cb5cacd76cdac5b220336759f0eb95fb05aeac054010577437b87d2afc7fce22911d9a9242ea2d9ac89105a55e19b2689a732628f5d2681313415653cba2d2b8e94377ead6a4d845c845d31c5950fa9551296685b87886e0526561d9e7cbdaa252ceb3a0d74bbb51b805a96c187aa517c48639d0bd49b18bc813139e785b4df535b56e502ca7afa9690fcb2b5bf6f5dd3a104ba94e96de83eb288cb8da6acae8ea44fd2071c3fb4fa7a2ba154d5c0ac166393a4bfc633e2442379275c4db816aabfd73996044da21490520b0dd28e54ca6a8c8214314e127c59074490bbea7d300c5db0aab194227744080826e96299c28d933f34855c1dfc832193584a5d36ea654fa45effd7ad165004ead0b52fba21033fd1930b0f3f4e741e100db989b87662ff822a25f094b62e8234815efe47cbd118b000386c05b348391595295afcba2af7b855cb7b447f83a6d168c02cece7c22149272af4b993e3f2b9456a6a98499d600138ef85587f6bb63aec26f36edf2ba202beb2ce8f58afc22578e2220882bbb1b5c3e16fc6f6651c80e4c4941f3174de49c05a55f1a5930cd111b9c7e45b4a989908aa964515adcf4213bc5dea4dc69d482498e5870ea15d1524d85543c4370696561d9e613fb8252d659d0fb15bd28dc42aa6c187ac90342c31c08ad59b1cbc853133f7245f3c817bfddd4602987f1bdea6bca74e311b1c277bec0083ef32d6faab72eb313a526eb98af857f0b294bd43a59a6ec1558de3fa794c383bdf0ca3b707872b2165abe61f1a5611ff28cc0c2b087c6a5ec778f5c20bed574c390a07041713cd568a483e5076bef01e0a9914790590b1fcdd0c4711a0bfbf699642ae94587415b033b2fe927ddb62b6cb6f02eae70d1c5577b395f3fd4d74e4ae49be5066538efe6659895fc0bdb6e9d8e43ffc218d98392ba966733767e3bdffc51861bdd9dc747865b0b1813565331de7c4c0ae0a0b271afe8e95af1c134afbe3a7b0a0103e3a7f7930fbf667c25d18c6338a357c530a3c8d8c5d4bc4427441bd5f1472d5497d839cb7623d64051dc9cca3df64812345ce4e9abd4b6267d35f996192ab668019948ccb4fd22daf316fa1c3ffabb7de76f2dd9723ff5e5c539fbeb84c5d6e47130eb3101ba2db80dd5486ed94afa9fe63ad58daace2cb37520f63102f125c58bc1d1db7573106b9a0d30f5d1e7ab1604487cd8d45ce03c386b58500329c85770d6728165a29d47e113db8af684460f2c90555f7e9fc4a333d1728ab9dac314a4d9e5e200ec884bd5d69833306bf87ad1dcac5dffd0e1d02e057d84a24e249c11c236463d4a4da2b9d05a9e28b0e19852163409e0df1daf443301b6040016c42af05b05e21905727b20a93aa50127a43fc070d57ac2e4781d2268ee136ce55d5bbef6d8a88cdf0dca3880582a032ea5cf270f91033b3280fa36fdfc028da1ea5389f18f52f33858d1217e94d04bdf75520411d1b26d066bfef59cd540566c5dafc0e505cdf88f7288e28e5af1e4701b5e91a6884880a745b13240038d0ce48d15727b1e68ad20e7497d4d6ef88bc756284d27faf1e9cb971ca92e2b3dc8c69551ef2a82496eb1decbb1226f2822c730df323d76fff18a305e51152ea574d3fcda58c942b55a8c864043dc852778e4968d4eeb385031941728305948fceebbc0848b14486baaa9a66e22a729367011e3c76cd888878ba43361447b2776badec5c281341c1c056b379a863650ec42bbeeaf6f4d641685fe62ee8e8af052166e3eb70145351cda4a73b3f9dd29ba4083a37b16ba6893b0e3851b0d4105ffcb8180f2cf820db74cb2c916d6023d51a2a919b4043516e81dd31a64057a8f5b83c385a5eb4eaa3204be13025762f74c9afd6b11ba75619ada998c50adaa19b2240d1c52fc67c6f11a2b3fc5bf0f103d68495979654d9de833971f160d3c894b9124b1d8099c75f1da6cd47805c7b9cb0b6a43e0c2b9c32d91440caeb84ac44854c54dc4ad99d2a7887702aa0c8e0de3ee2c2e556184ba5b40d335a868aa44e9e3c8f349ca3022fdf3bf35ff278e0970a230e41c40bc63eea6c6c11967f9548d1f66ee3c88138aae91077f402da8e110809ac56cca4092c6cc1691c0383aa9a0737819a3143fd18f8e66ee855664c3281d44df5c752ff50b6caefae5f086ecbb8e60ea26c9b59a680095a391658763e17f924ed1e455608217a9e5f026f21ceddf6d95c38b18b5521d0713de00ab8a592cba68c654bd66086861fa85b7db7bd7a943f65c93c8dc026ac8eb81e4f0dabd9a115b8fe997113c108115f142cf470aa6eb361a8db900f182f176fcb3d4fe3e11429b70aac9e04edaf8df465a88d53e13c25709e195e0ecd4cd34f875cde1d5ee1643ade115b924d22a5a924088dd5b619dd1197b75e2fd004c9c2ffb431e42a42307afa43a310ea5b910c19f21ea73a3d9d24f84459bac5e150ede06c3d7a887bf5b9ebd7bc200d9bad81e262a785fa09cc0e6e21d66772631c833ef092c9dec394adc335e7087aeed45674b8f15287d3da7aafd29df4cd86c8587e65f8a1becab7d6f6d264c458135ee8afda960df6fd2ebd01440d59df551007ea4ba3df47d49a01f885e38b61ec5650a98d2c4432b5306a029c0e813cf553a917a8eb03a2e67a3a5a287040cb19c19b6cd8964980c33ebdbeb00516f9cd62ab2391091cc61e8d889e1e59f4b7b4fa5a7bbe80dd2f6885826ddb5596d6819b1585ffaccc57031a765a1cb0bf55a68200519085c8c05388810a06dc06aa18bdc173a258e3d83a5b02709f1e943f6e5be385d47b79e36f2209379b72711372e1c6a877d6e2e28e4aa3a4686ba86331cf95c86db7ca3ea864d666d6e4b34572dbb57214a3d77b9e7823cb7213368353d6815a687c68626f410d73d9ce4f4b6f727a208542811120dac71a23502ac2bf1f01c1fcb8cef7a958bc6adb905ec0292514012d26fd2c321cf233c0af00256ae3ac866461d51bb31642f36884f8abdb65befd946ad3a404a1b37ff7131dde17989272fbe71ab2028091dee183014f39f9b026116865dc4c38d350cbe9fe2732a49ebb725fe14697cc32461dfd68c5e893f22fb03450c9db0b334e8ccb56c973cabc8b188f3ce9e17106f1e099f9af0406b6c5c69ea2841563dc97ea686421de12fc591cafdf7cdf06a277415ef612bb1e34a8d8fc9501dc05c7fec580e95d9fac4613bc7325ead44e308dda814c456bf70de4b9b16b031583001dc7e372c5cf865eb67b8551e3b934248754be1df90f3d68549f75ce05f5daf4fcb3bffa9a7acb8e2148834c4d0b94858197027138fc6ab70b410adf10b1a78385ae481c1d3d5215bef5511586e8ae9e3289aa3ed6be7663ead5f021d38a11abb4d3cb06c7f464b4c69295ea8bccaedfb6775c9c6d96117d84c7aa50d053aaf3256e6b03237fa16abb96349afc018629aa021ff0254e69209fa3104a75455dcb057b5196a95261fef4971c0471145a7e7c2aee9dbca724d7d25aa2931a723d53cea7f95bf52c156a564c4a760f8a5ed1a8fa8f9e3f3498ea4e779dfa7b9932e438a506d3571da492adc6bb78d8982924ae605dc6787550b80782da835b005baba5306c8224c2344db1745cbc99f1f37894c96cdd9695cdc3711158485fadf08a32486b781158ff367560d40f2b4cfa7f81e01301c95e652dbecd355a79f40c12d256a30d5483aaf8ecae3151ba03bcbded3233c6eb462a16029d25677b1888e1b3a9bdcc8eea6ed682ec49a6f4042933a0711d2c69618b8933db8a6225c31ab35cff4a5e8bce8f8a4956cf62229c065cc4360a4348c5958dc64e8166dc27dfc864d5b9a565e99c316b23be19ca2c1d329b666d9f58c331e5935dd0fc650ec31971a9311561ff8fbf83745278224c9f78734887262fdf8945c6208584d5b75431f330155bbaa74065e0f46942c6057d8c0122d873c272bd0700dc5007c175eb24971c29a9c53cf82a237656276cba50e88f970b68b71a93c32cabcb284d12e9d16fe317f808af1865e9c5e268c0582975495582e126cc1977709639bd97d8a744aab8d7c2e4d0cd3e2f898858e1150e60f6a69473eb99f381b7a47ed4019624066de9ab98837068736389e07a51d7504a97fdbf645d2df2e51bdd1e943ec6b0280ce34f8e4b54639212edc517cdae3fe8978ac2fdcbfb9f3d01db0427b9e7b5c2a543c372b858ac14c5272b10b5e0b11f834b6e3fea47cb1a670a5e20a0a2dbdf1dec7cbcac8c3ffcf984ae678c35965155a031249c2619dab7b9fd3a210b188920f65bd0d195ac295882118e4e4ac46510e2a271304bb1c3813fc9667aedb8834e058466a102f49788fcd14db256a38fbd3698e481361efba4ef579b980db80a03d1ebfd7356bf19bfb56a198dc94a4d513fa69c51e04221d3f5daeeb883cc873c897325a58f8727843e7c596b8f53d78407524c81cbadf5e6b9bf0462d2edf1ea66638484cf6c6dc5d53adcc50b21a08e0c262d9273f534316fc6dd2825ac1ab9aa44e658069bae8e77e7277042d57ba002f82ecc44e669cdd55eb05f0d79fa59e9de2298b604bc6aed59e0f16a3eb85df1d1ec522c2a27f3f2c1ff8cadd71025d34b91124b2a914400badfa762df077ed022465de80fb31db71d90b5c6073f5fb636818127707babb42daf34085639cfde1da161bf70496ca90349beee51832ab99ee2b1e81732bb7e106a955f693c99b57435c5c177900b1952e7f509580f565233e95684f7548920b59e4204ae2ebed489f5ff3cf9c04fb36c99de8b414fe0a1cbeefab22b130da6301417249f6609212fa0aa8a7d6ab50ee9150e137f03c5fc9c4a9b0d0453dd45e1f5245358474ad7a7f07b87fc659846e5d59a490c8b0175ebf0b03ce951ce6c96565eff946fb7217bf0c040ba30ad9a1b1dd58194ca968c8aad35db5d4b4091ead2da1c0674319335c0848bd9bb73f5fa1877355c86248b3cb8ad8e7c61678f96d7eff95757a3a055b962a91d71cd26d2fddd6fa7bb13d3ef469f19f69dcabd2e7c04b7ae99740296efd9bdc699f1abc228c911830f5938d5b874737cd3f8fed0b02c86d981bbc7082e1402002c8554a8bc8d6fa3476ba204f0690235fa6c275b3aa55e7b250757042cadea646b875432c9f98617e9d6e0d17d4ea56cc54394884bf458081dbcf621a9524bcd842ef905b7adfc92686d9865c489cabf72396b745f88db7e3f38817836403e7f3986531480716e89941251db53d0ab74d873a98d29cb4030348b9ce94451d79201bc4b46101a2dd79fafc0c4150451bb7ca39aff39af35aaf5c8271158edb43793c238c7fbf0f32f82f6e318a7a0da1fcd89b11397256dcb6f518cc486b88d625c25a31e3086860b18668f85a2c3435b662a1a1b893bb7d9e70236d35449160a43a816b0874afc485b1d07bf2349b8b90fadbace155475243b458fbe534a06169245bdeddfe25a8212822e1d01b6cd0283ae032606b18062d2d66f96c283eb4d84c58a7fc7a58a9441b5c8b05dc007ace467c9c0def91af62bdd1f01a8ea6bdf00aefe42fad0b4f4d8c1fd97d44cd386cf0c03456430a68b5055de5c1dab452f8a957c6ea00f09b10a4242820914ce561b09c08ef763c0b3039e52197061f5ab7486335dbf0ce6ff67094876e6d7d08f368a63c08335e03b9d041db43403fb7645378a6d5280f7638d5675505eb5824deb27ce857b67a2ebcbae28844a2b984cd9e9bc9676246b54f648353f4b76304232c84abb36384eaf18f6a0ca19de81d61312d8e9f5bca93694517ffff4fb33c1136e4fc6e976a26a258f8eb07516cad81c894c3e30d6847e5b169863616621c50e1a8595bb1f3817ab762dfef72ba6076b7131310388b9398ef1a335ce64f73edb1d44590b788779575c5667fcfbc0ad6480dba210c479f206fabd4e9de7f8bc31ab8ea7b6ed421d6bdcfca34e5e7a44ad56e69f88f74bab9337769758f4e28f2a5440604ea226e7391706ec8d063c4dc280342214a4517fb6fce9af77febff449327dfa7c847abcb3e88e4fc9cd6fd2bade91ebd9384b3e9ec80987d0554197c37896704a45f7053e8d706a0b1e49f863a1c5b8201e6b00871edc48afe0cd3a6f256dea18dd77dfc54c3d3a85abe1ab1a73dc3948cd91e11ee14b11f124c23ea5a32cb2cbdcdb087e09d2c8111cafaaac72aa604540dffc27b5e65961b36ef1bdb424cab6ec687ad5b841300f8682c004b27f8e96f7da924eadf894eadf5a94a7e8ae6fe0e8db286125381daf6a6402010dc3b4abe4b62ed010fa458b03f4ac17865755643cbe9e73d400234eae05fa5a2f379311a2359bb9ad7ab4be912fc14325dc516b584429d61feb470d2141ce790f86202055558e961b2f07dd30555e27320367ce8467954c50cdfbccc8ee3695131e7eff00c3cd2a1a15825445cab8513f886ad953fae3ceac9a62b4e60cb4453613996a04d37912a2b0c0239b9f35970e5a843f90255ecb5867fd6603e28242bc65e15bbe5f091f267413030c063e7452747467bbfab7316f5434520f689a36c5a077e726cda9e8a5ee454cc4296b7931c501ae7f1f2a51919d9e6a051ec7f594fe9fb808f81a436326aa80db2fbf2e89d1890898c93fdebdb0782165b24b2f2e2cc8a8c795fcb32f4969a7ecbb60dc8019a0d27602c0a142f76a635da9bb28807a9b3ed434d9d73d05bc5845cff770ec5f280dab871daeb7ee7c0a76e3dda565d28c66a013ed5cc2da51b4373976182881fc75cb1cdacf3d04be6c91182d1891a7b60d3abbd054e3888e72c219bc5b12327b5aaed00e40b56fb453daedd675c694414037dd477e82875c3e681941fbf98cb730a1fc1242f12944b0a7a93339ff5c2a29f6e6f1fc547ae2a8d6a58aec3224cc95c099cd86526fb8b14c9ba19d1ce45a0b391861fc9600a89b07e69ff4202e1ce569e1cebbd605b9e4082e53194e15b2313004e42ee2c2c9e2545d0b084f824e149dd1f89f816b4f87070f75454b6873a7aac93675a0fc96462e6d0dff898c12de3fd6e5d8a6e7ea9b7c85e9231d19c2398503db82626f51af362c7b3730150703f76c210e11522ef7b12e5a34f407053fe4183a43d5a9349093c9fe78a9da8be30afd35f6bf3d5b65bcec320df472db76f95064357b6340b534fa41f0a571a938868de531a3a49e8be3a884e06190cdcfa119b895bb7c265e082b12f956725f5eec61dbe580fa19ac81e731a1c83790bb8d46313bcf029e91ec6d4d1a0f2b741773d9fd00c8eaaec50d7eb75b639b17a9905bccf52fbed2d9a6a0b5bc940fe284dfa9458d9b77b701b54f7c9fa16fb088fc7a76fb11af1cc1fda504ab835fcc8a81b600630e56207d0cedb0bd51408c68517210d506db08016cb13df7ed31aafd03742f0ad8af32e996a41dad9bdc044b8ef6d865711f09723a9ecbe0e1fd909a3445b5e0bf9f1e5554d7212b62e70c2f04ad7ab54d74f1b1b0d474db39eb77ba15a1f42c5e2f588bc6dec3c0f3d274e272bd0c0c53d946bccfeebdd7e86c662b47c695bb303a5692ea718b7184e0e15c0d11f71b1b2ae2574fdf53bbb28ccc3631042636c431ca7426342160fbd8bce14d51e61e482db6d6929db84c887921c2ecf34ecc0b4c4b3d56f6354d714fa23db3c61925f91ac514d202abb5a2fb57d9bfce05c97972913a84728e52504807fdd1ea2397fda8ab09c96bb54ea76d25fda5c69d3dd95e3f6fe2918e1ea77abcfbcc9cdefaa2d9bed1cb354c8c79871df0b46ea767f695618ce5882bbb319680f03f8c60be8bc31716baa948ad27da2915a243d9d332aef13db0fd1d896babd8c98d386de014878f2aaeae48c61f7a541ba191e05faa97296fc91c03649dd22a72559a3bb347a85c3ac42087298fa002f5a63a8ac16c2a9130332e73678a2a569303d055761b523d9dd59df422cb29b98e166c3fdb89d063cb443bc72cb3615fca29c2625c0c3894a1a5c6d6eea4e9953dc426e9ae82c151f11b70d9adfea1b1b3bed5d1bdeef9ad27de013135aab7a31c45c89d7d9582756beb27e04795c67e0d000259fcf33dc06a303390c0852afe81a11329119b8859287c196dff3d0214c17e43974cb5abf035ce45cb1ea5b3bd5a1d04916f4e791b725fc05a3b3d54c27aa9dd5f1e6dd36fc1293343806cf9bdd561d4e4941172771f318cf309009765847d75c73db95ff6434672fa53bec4952926c8cb4f72ec6ece0b61968a809977529b32dea47d2c418c321099cc7db6da93ce1a1c011878793e00ef49b029b4566d0ebd30ac4ccf0860e3b64fcffcb62cbda87ad1a601470d79986e8d66fa79fcea7c5b2b657ff149a2473f7264755dcac77c9dfc1a8ad2782bf1f5ae12e59096c8ba1a92d77624c64e020b8406227ab3170ab72402ea4fb9a254b90b8977db40d0de2ff6ab5ee091fb6b42d952849c2475efba3a8bf7eec2a98b6555f5e3412489ab47d9f022dd02250cad079d57b3c8e58a49a18d2f6821fb3bcbdb5bf855b70f2951548275454a97c2a216d6784b6a5645814225168ce96e3942de6059fb681abbb683f98fcd1ba3b66fc7e0afe0d69bb63b5c619f8bde1608903648afb3128d1a26d618e4819001edb32e3ac73b65f0b4bb61f8a3a22968fb42c69d196faae625087a5b5a83474c4d01694674e7a97dc41d767143486f2af534ec6445eb9b85814a648b485c73fe16a38f8eccd1985e233b415a25e1679852212e8cac900681006eaa986b6ae9e5b053653e49f0ff58a8560d1504fab0c0d6dab83c6819b9b5af80f8b89cecb1803e4c2e26a164530cdfd088e1d996f688b38ebab62f7a5f26911a6fd512fe716da7a70cfaa6d5c643bd27d750a894099ea90ec7bd0d633687cc0b7caf786a62b4182906f250677cca304caa4f7af56305ed9241df9b244e1274cfa96c9fa60d01a4246cf3427a9811d4a023b4ab12dbe860adbf4e3c6758cafddd3c1ddf79b6db50d3003119c1602fe4741d3b1aa057fb617ce70d11df6fbdb465a236413b2f7de7bcbbd03a40ad20ae60af516dfac422cdd202449592184d0ca60bb3d428670e6816ee72b725e7c48370b218cf012727d71c88f12422c5d2f33526b2da7fe45858d9770928c8f949eb112dd466f6fadfea87f813574513abcd0e20b613cd254d3077c0302dfce46180987a35d5e6e5820960e5d3cac170759fce2d21ecf5042c96c1941ba2e1ef016648637b3684cd2b5d9d85cd75a5fbbc286f18291b878c0d347dbcec2820e63af8f6ce86ce3632cf592c5eec28a7eb5c8e22d58dc7631cce5b6ea991124235e65120e476c6969b995d49411a4f6d6a89b032fdbcdf8488b554a296bbb256d3b4da3e946d38c20757b6604896af5182bd1f5215b91e8c5a3b5f77836add5fa245d634bc2e1689c041be12424c4d2d4c238eae686708f7b3dd6747106295074666a294f6a5e4b1182270d3f836d1c8e6bef33ee08bd7896cf5ecbfb4e4274703cbdd20f777a3a052a5288e283ea5477395b1dfecb9bd5c19a0f3af1a7203d34e6270f284be4411f9f09e9d6f2661be8c6433bbe2b65cfb4edd19ede0581fe78dee383f474fbce69764ee8ade34fedf284eeb274bbd9f57679b54beb1ee89e665b5747f496eb844256c6a3f575ab037abd8b3d6da047679bb99cff62795e576fa72ccf6bd0cb4b251f6feaad77a2d5d1e12175bcce695ee1e3d33b26ab6326a4e9614e6f66755aa3f1e43dcdcc3d484fd3d36839c2d4f7625b47d7588b420a463ac3ce35b0611452aca161145150a2e1476c037120d6ee49673746cfe22bfec5f29c5a9f5aa3c17fe789efe6c40aad97667e7c54bca7394f1be8fa91cd7929b95416b3a50aa42325ccd5c1fe72771ec5f39a8e6cc9e5faa04d4faf7cc8f2bc9c963b0fb2a5eafab8a7d9a27b9a3d6fb50bc85bde928fc716c516aa346c771dcf957ea01dcf23e3cd91a7eeb2744f4faba383bdbed33d05e9e9f8ea355a9ed36ceb273787ceb1deda65e976edc8d2efda019257bc6236a41ddff131ce5cb7ae20dbba35c85d0e85d885ac4e8cef31645b3b9ed7ee66915676d2577b1ae27355f9593b6b7f973cd7dbcbeab8efbccedc233dcd3ecdd38cbf3caf5ddc2805f73483f4340f75e743137f42ef05c0f857b8cb021813e0352c603954b0a01f10f7019fcbfe08b51d2e903286ec77dd0e9c858de069134620a56b746bc20868d0ee02f21ea312faca1710f7ece45cbc3bafe11d71a36d2646781d3ce4f5c0c77378a9708992bb7694eeae1d3177d7dfd8e642b8447b33ce755d0296bd2aaf0cafcab3f2aebc6705c55adc39c7ccce393874f46978b672e4e5eedac1824422914e499f249956839d6f6a335a0d8c23c1300ccc1573cc66f6d85b6cd672172e95e0edc740a55d2e03b3175d3b7ed1b5c3beb6b8b6f656c6e84586cdbd7d0c19afefe5bd3c900c8755ecd505c3e5450c098923b5c56a1800de72edd8e12dd70e00b8b44cbb76ecf0401606b2c9c1bc2a6c8acfca12b0785804874300b009d73ce8a4f9d03a1e22e11afb78b804440200c8a42d610c4bf45b809da0e3083a662f4b4d7df6e2d091073874bc7d7d300fe681ecb963aed5a5936b97f3c0e69f42cdd7ba80c0f3e571ed7233ec3277d70f328779bb78c89c49243a4b3f640e731899c704d7c878fc5bf26cee413124ae8179bcbb826b4a8f671f260200fba4b0297e07fba6b0295e07fba8b854d70fd6beb295799569711ed8a5928b52a9f4f7d942965cc8dcd20ffbd24bf65a2dd70fa19195b98b478907dabf974eae652ee3a750cb9071189f1710787b795cb7dc8c8f5d5e405c2ee3f2b896b91973287473b057cf79f11df762610f61d6a5a1d188af0e46be0cfb9cb029fedaf78467e2ad7d50d817854df131ec93824d71890e5967050ceb7eae6053fc0bcb3e9689b0299e64d90823c1a6f892e523b6856524f1550918cc49d7f14842b0291ec60ec1a67891ad148fd6a2b7e01b1b9a371369ba5d2f370836c527b0cc61c16205d7fc341f5c1eefded07c183dbeba58d7237bc240bff30504fe803b58838295240d17605bb77c00ada63e9ec6e130b91af1f13d341f78683422b55ab70ed98c97e87890cd4851898eb7acceec6a5fdb710d4fd9d3ccd278e0c79bf831482c9a43505e3c172788afcee568330dab4ec0b226251bc2451042700d74313e5ebb4324060c9ee6b956e5a9a1660fd2d3a7f98c9ee77511d5e5a97aadd583f4747583c4cf9feeb86eafceaa6c53f674ca341007396469f8203d0d6f90765b3365f49ee0a7119408083ed03c2d1a5e2547f01ff35f2bc2574835031a04c1052b48021492e0b457845fe4626fa6bd08690e6186459ecd11f14564947f33d484c51f415f64d229e33d828453245ede23284e11fa66dc87342a4be450648a152bcca1099c224df0e36d8f6d93228c4d508a2c36c1cb2628827c20582005d794dcf92d0a288834bfb18f0f04820552b0a935ec810c4f60451217c048e34d9490214f6c7884ca3e5466abc3e3357435dc79dc6e6c72ad39e750c0afdc5e433f507ce6f61ec835e7de7bec9c0ceafbc935cf2994c5e704dd2e202ded6e6681e6eb07aae1c543c6946df2757083edb18ba06c48c3464346c3e6442336b953d868b4f73cc73db8ce115195541c509fd4a428a673f4da0cf750c74ad4257549e6ceeed27d9edf29cb466815a29cb4ee200d1042c9469a561d6018941af9c94729215f0723076a063bced7a47c307ede7633075dc796038b879006b5351eede4b2c4a0d61a60ee8d793c76ee05b5c225608eef7e78fc1e15b1db6bd67a0f3608a570e476b16312461bbb7337da6834ae3c1862048ac1fd48a0bef70e2fe4c73dd1f1b3adb576b3d6629b33b6d6dc1433d844e9dd3cfcfca4cf9990a291a27f94d2466975b345782dea287d33adbdcab63793834d8dc2675931fd9ed447298a44e11f84a75e6bcda63ea32445c157d1f939299bde14203cbca1885441ad88cfac4f6b5ad2b260834221bced46231c9151b42a8a45ca6a6fb556b1d116e5a5f3cd5056a831c668fb3ddbef9df31e43e842adb588378b77309e6fe4fb60196ce342d5aa2874ab987003900880d1e8562baaaaaaea545555556ceef1645286599f379b75baaabd74ab9aa35455d1db1a0dae6205d9d45a6b95ac6e56b9271bd674bc48d3edaf551c54f81e656fbcf7e89dd1ed32d4a5dee97bef3d07a94b7af0d15319a5944eeb516f0dbe4777206c16759a5114a528ca9ff304b5c9641895a1247c6753a32274efc6cc37ead97bee3a0a1a6135f9289f132184562a951b2934514c50ee84d4047349b228637439a8a2a3959b2968a698a480829403bbd131be06e507023a47e60073f05d089f944fcad9b06e30d299c1763d7188636a0a0dc263f1666f39b0474d076fbc8bd05df6426d38d88b0d9f5ba2c23360b78d99d92151b1d69e230184d2ef2d7210ec2e47d9a12718b08c5266f7239f4177b903c1a6a703a3b0e9f500826bde0e949f148e528d602e088faa66cc1c449aa82e82e35422dc1f89143fef8dd5e11c75b7136f22c035f1b4d99bc7a0fc9603e3bb9b834dace3e626079bde7bbb3a6e60371c1a26c07b654d3794b2c5203f07e9c69b5185e5146a93815c53826fedfe183bb343426bd166e4e974583be7aebc30125bd2fcfc757917d6b3eb5c2f6b7360f3d7752f2f9f8314c3fc769d6f4bb161b7cb87f3f1e16ef32dbb39a5f251faf87aef45818a7631455f262949b2b1896a7a498d867c040106af902684a05e5d481342c05317525157087d334df0c4ce62b48c219d09205f8d602c23dfa34ce018b2e45b62becf351f2ea184d2dc9c4d6ff4a240282310ac65d8f46e7a363e5e83d2e35c93c5d31c3a5dcbebb018e385ef0fd5d5ea769847adb7e4a35e7451adac25a2542482b05fb54364159b3eaa5fbf2aeaa22a1805a9ca9585cd578fd6d4e58b07f5d3a36ec907f5fa4a896c0c9b7a62afee229130ab6b64d8e4dac560d789dfbb4199bf410867b0098ac9e6e5c536be86e01a7985b4487433ea9510416c012bf910bd7a25a20011f2599322049bf8069b68aa48ab8978363a9e10b27255575525a953d20d5802d8c4efe9d04d1ab0ac4199e727806be265116c6279ccead48b4e417a2a1b3a65add3ce6936559d44af5929f416a25a5aee22b2add1c0a4bd6b1dcfc5de92a852334214556b55fdaafaaaaeaaba0ea22a654bf53cef2ad5eb833655ddd36c0a23820258b0aa851b8d867361173250cd5de79c73ceb97b9a5dfde49ae773c2099f0f3a3b8ff194421eb8230875faf7eace70596854696306785e53b7073f5e7a7bb48e6ce2f3bc96f796dee1dd42bd0e7454ba0183251ff4d20d3af7c7bc7403569d6ab6e4f212f653909ed14757475ef496d14fb36b561a5d1fb3471d3ad61a8d50fd654fa2db1a8d969b954477e7e4b2744974d758c8c6839a3dcd923c4f495e1fb4db4fb3ebcd99f702af4b3fdae5e55bb7cbf36cc582bd917b4368f1697867fc9c95a5948b91f27392e59bf3366e80c3816f100ee11eca4f0a085ff6de7bd3bd17df730e08ae094236e174f00d9bb29bcef19aabe326c78d0e121612c8a16944029612ccc0f9842184c99c6c1e7e489c311e044574cacadd51378322ea209008441d24ba8e2772bf6c4e7d6b4a6451d7a1c321faf5284781a8d77ad1057a06722da0d6402dd7cd82f45c07bdbd7bafcbaea2e8cde613b90902e79e734e522ae9a47c65ce097a46a26805816aad94d28b525a0fbaacbb137b565445b9531829f6582c8f30a579e826c5114bfa0824ed50d04d0a2344ba86b8267ba72e028140a029b239993cfd1009028944d4e73dbdd6c1a305d05719ecd9d775b094ae06e8a0d767f508118d44eea2d175bc11e896cd09fdf548f4911bdd02ddd3cbb11e1a5d078b467720f91797961791f5d0e866ceb588ee950e47f5f99095ae06e842caa6dad5cde4291fef253ebdd2d598f74a5703b6b899841158310226dd43372944f0d335f4e477b8dfbb20b6e8bb9320d7d314d423c44197bdef704e7ceb66810e1d8e79d05b007c7b03f19596528cc0ca089e748d96bb4076c4a66c27d679d0e1c52367decc599324ba7f6f0684f19c93ba198651a02b3a68665217d990bdd97577623b2949d2d57897426a042e849a8c8c215fb4a84c150c050a5193abf170b4b81aaf391c2390ecf7cae1205d55bf831c8e989681fadde470dcd5787fc62d0e47fcfba84589829be4de12b833128d56e39ded8c46e3ddb2359ae9d5889401fa9dd6f47b8cf3a1dfdfb3fdb83d2b857da3d1a0f01851c480f104182fa2bc8871424ca90925174c70d1028a16a4259058288105cc13302f8dc6cb0801239703b8b418a045944384e1c0423e844005005d37976563d59a5a11a0a26e50740074f6d08d8673ecee5ea3f900f902683ebce6d3683e70a3e180bce6eb1a0d37a3f9e01a0de89a5502ffe38915360100e33729559584363f5b73f2adbefabb8baabeaab7d6faeb3955bb2ecfeb7aab73554ff0b3befa66aafbb2eba083ec651b75bd5da10abacf6a926ad86ca71c7919a75d0cd3e03852ae7177c6bbbf1d6fcebb7667fe93f6d9004746f8b07733cb40196b587e00c504586e60514081849a3473598e96375ace6829d3f2316c23472de5e531ae69b9bc1914561c6533eaa06ccacb263d037d3edb915ddd1cd2e58eeceae65407eda06193b4f4f2c8a6690046bbc52d81dee23bb2412f81de7aca9f62cccb070874500e6801a0934eba259e0a643da0cb9b957cc8934ebaa7f79e069de4cda94e0dc1267ee6dac4337c3ebfdc8cc48c89de7283300216841058485e3736df91d7753c90a5bf6c3643b6bc6bb2e54f31b264c9d23c1528fd702daf83e53de5c43b847bae37d100a577f028c11d4a6a509b8cce8c831ce690a5a99f2811107c603675471f8d228b5767653423cd519666317f8e6fb1e7195347d1eb993a89b660f5f20c756305593f49d0e569d130a7a89bc55b27f92039a08f9e037ab464adf2d4ad2c9e02bd826e81ee09e62a3982f422554522bdaa482faf60bc68f1222eaf5ea4c5499724db7806bb956d3c533adb69b3776974cbe766a31b6f1d468b17b6c88b8b0b9115386f518ff675a4e643b4e48336e8464ce7ce19a53030cf4c1de3eb4fa067423a5e9e16ede2237b1a3de635d66895626cd6d3a3836ebd66b164dd938babe4881627b5687112a945cb492f18cfc0dce545aa1711bd48e319189ed7458ccef5d64731c653d6bad1b2cd864001829d1a3df4174bedc8c51669b9d89b990f85ee250a0356efb27446ddbabb7658d7f9a06eddac2aa9ce55a40d7b0a2b1dd32d8a2d54d117983d7d7259e22dfda01e238f6b7a4b46ccbeef55d814b5c9b4d65a6b3372dc4d6c8287f1a7f94c48b7cbd3a2e9334a3e5e52144549ea9e687d0246737297e775116c8a40f4b4bbadcdc89aa366065b3365ee9ee855f23eafcc67dab9c944c18278ae6f9af14495d968f80cd3a15517c2c71ccd829f655d0c701d3170bd06d12d3927d033d9726a69696979909e6eb941ac839ec1686d76b9bbb7d890080bc5788338794feea0cb7257c9bc47cc17a174ced322b3be0875b117a997fa9f4d75294a2986dd781a36b54b1e3730f6bc37c350dd6b10b0f7f7dadd9f73466a93a94f60f0fc02d4c635ad0b4e74fca32cd94eaee14c191021307a205e3fe2bbc0c4bb78f4343c3df3704f4aefe9357c0b88f74df74650dd11ac4531650af822c7bf1723f39f95611384f753041bc3292f1ef4e240d2b49ca32f806e4ae6a8b8292cdb4c7447c3a6073af7e31d7ef5852b3850edf031261cc076f81714c0b0445f87cd8709ebf58383d2f3528abad9cc72a8eb8743a2f955552f1fd4abd0a9b7d0cd629abad97ceb78d3e5c05fd65d8ee8d8b31878fd706078d27cecd8a70fd1b1b7ff7a6df5716bee45d09ca76942843dbbd18f7d9ef5a2700d76fde06397c85e0759598c88447294134f6495c46350fa611d85c79b7e4eeaae053c286e46af457734f5d04f2f4b96a652fa4999e2cab3c20709244c347912654a952ae00fd710e11a6e224d5414154516a674f5eb5a00bf02cdebc783824da317058302cb1e947e55c7010d27046f0e3e38f220cb9d5d43aabeae1f3cae6116a0683ef481c13b5859f7e49a92afb0b9e6600451cf3cd014754f2e4b2b21221f6ff911611f1c49dda48e800004d02a0631623c1c69673df50a6da5b84249593641a8e73d857abee5c5039b3fb92a3deb9b43538f3f5e4f4bd96cc8079a6210f4b42f4b96e68b07fbf47cbdd93ce59aea658e8fd0d3f14040cf7b4240cfc3c71014849b47f6bcadd1702f0a941c711e9407c58b128fd4162e1051e14ea3bb14d0da0a0206db7b0c93509b4ce65c24a9c244abc21c5d8cade4d3042f28d1f031993e4df0c294179bd3d18326015ce376a0a48fd0eed99cea371ab0b95f411079e73b7e4994c08285936024d80827016164880562e998848d6081586abbac0a052b717508d4ebd53d60bdbe1e029507ae5b6f1d02f5d77b702050e2ab2384f56bdeba0e683858f5ea0d07c66724eb0d4796f8d57b70285be25b6a00f57a21a857214df015829e5e483df51e9c7635c6c0b3c13e2928886783dd4b02dd77f7ee06d834cf15ca77d834df2ebe3b6c4a0286c39fbf99efc135257e9bc135eef34d66de1c77c471148105432d6f32b5a552124be81074082fec0145108337db893773d7f5a36abe78d073c3433682856d6d2d48f5dc20e406398357d81c8b61bcc2f6caafb7b1c98ace1a0c182d86030f428bf563b6a17e105a503f86f6eac7d05afd18dada8fa1adfa31b4543f8696f66368673fe6c78fa17dfd98f9d91645123768b63b74cf7371891a06ac5d26a3dde8f5f2a2f9b155c7901f7cb708446081125a079c0c361d9a9f50658556891111bc4b0436f880132832480287044834ccac244bb8462271f2882a2d1f8e940e099d8d80608194675344d5355a5dc4159893265498743c33c1a6f8271ddfae3824ce4a4cc33860b0456122a5eed17c702e6834e4e57d341bf70237232f7d5045075968e96ad0f259a3827444d814057b773e8e4daf3ea3a877ea9493929294a4d83a1f47e4dde4bb0e763e5c039da490beda22d824b3f7733e3e5ce3ace09fe788704d93b2b21123d2d88a96672b2eb124d119a965125be810460483828489177705db309136138f441548b276859b826d2870f7c421794eb886fe0a2baca8a25b1556da4d7152382828c5301eade1b3302de26b476c50745452bdc601cb30243525ea3d9df5c830ac2e7faea9f246b5ae0a207846be079be412b0291d1236c9252424123e500dd8bdccb9ce009f23cbf3cde2658fd6b1a1cde03c17c1a755852f42877dbaded37cf7744e7c1194b4dc89bf13f9e6c4d30a677c95f5643dcd565aea19df2875a48411f6542e82c0f432198a3d9e9ebe5674cef35dad1484908534cc7ab8f4437e67bed239b92c98d539b92c18f63e621920b4e5d9ea58bfeeac4ee8a247ab531de3d3a4ded33dedce43797848cd6f315a20b32bcfec9c78d05beed8f2e4c0d3e6efc053909e766f1164b31e7bdab913145b32108457c7e52dd7a128cad14f4b04980ee8352b85de785e5ba1eb8336ff3433d03dcdcbd650e8efd0e579cd59a9fac42ccf6becd2ea60f374decce59ee669034dc9bf2f1ff43a1e64f80af995edce69f6f5203dbd736addc32179f1ebb4dec53c9de8a29075c742562893d761583b89591d663ea4accbc65b1164cd78dad354cda86b563352d7c155062fa90c9ef2a1896be0dfe579ef19018397e7fd786285265483da64e063e47c7bccb956b1996aa577315cc38d46ad77871d68fa77eda86ea3f04238a13b5f8eb1508db8d1cfbdb6018367ccbde6e0126e6e6ea2150cc8cfc75f603e079ee37555d8648507858ea11112094c748b6e4fc4c1a7f99a4f5e77e54d01cb5c9586b7d41c0516c8477870455781ecd3851b37dabde46ef47b3a3208670ffc685c0d6eed3d8e3a1a946e585a870e25580a4b61292d4a8bd2a25c555a620d09d8d4e13297322e3fadf891f18c5e41f9b424d292a1c864132a3019d7e1f3d5c99061020045dd3a6cc226099d60d3940ab14027b00c62692c90f290538ebdb5cd2955f7076e7de7e3cf61c4b87021c1bcbd11a87eda6b25156be5149776b318edf218378b01c3e52f625c5e72e1f21637a3302f2190552bf8038cba900a94f272985a29ad0d63c1820588d6099f6c22610d7cfcb264611c3487badee16e59b2f4a4b6b2944988a2d585b9a341560ff328659e858f0eec7a77605f301692acbb76cc978f2e50a3e6cd99afb55e643351634eaaebd6eb65a1130baf3b4161b4b508f4cb52d02314113ac1353c103671f2e69cf75d3c28bd310a09b097dbd8149f3479bf5cd5359a945615b58c6093073ab2500a9be45f2c9c02a970cdbc196d7a9d5e0aa58c7e3d42365dd3422a169b2ed817bd169baeeb9630d019fd0eac233885422b663eb2ada114380562b17c30d9e4ca256caa7e59c126a984870b23d2c44b767d1480bb1051918dfe7247d64a26d747cfe412980ba570cd35ba1c5db9c4e14cf90058f8c304908740c0aad7431e60b589ab212f9a711a9753b84600979754b86687cbcb299a0feebe35fbb7066a8111731717a4b7f8bc0126a5b11092d02713d8758ae4d9341c1c246fb483cdae1d2e000b9b882e69dc8c5bf41937e3296c92dfc14a2a52408fd4a0c3dc8c04fa1dc578117333d24d4dba99a9ad5f090fd7c1f3ca291a0d39631224d0075875dbe98519663ac866920b999443cb872c0b9b49294a944df23b9cb2a65b3bdc748e823a992e4b660b0f2d4d98004be6804525d824db35af647204e66233c985965189963bae7760d109d794b0b77e398d4c5a926ab52c4ae7b48c60b45a3102701d5c55a50cc09e39a5c3b80e0e511c0cf4928501e3a5d786c5bcd141af2fec8b8aa2a850555956567f553956a3efc1e1a85eaffb2cf479af974b7d86aeb3aa752abb9c855515f68cde1deec1e1085d3faa9eb70757033be8e2017317d1696e88ae1dd8bc598f9049add3cc5b0dca35298beb340e07fd753317a72ceb21520f0ec775aac527a9c5cdf84653cf5cdccb66ae43fc833abd999b940ffa09847ebed1381cf3d4ad6e7475189bb98679e8e211fabc39f3d44121db83ab415bdcebe2412d4a5d9a15cbb22ccba2eebc65695c8dfaea3a1e4ce8b56be8d45db387eb93a2d7add0ad1e5c8df9d0cdac5bba5e5fbd0787635af52fafb72e1ed6735e6ee67a7038ac5bbdf530ba7654d3c6be645ff30a5567d5aceea8ad3a0fead56d6ceae96933f81ab2a8ede9b9c31dba3db81af5b22e07d90c36e8228bbdf570edc0aec36eb448c703d998c7bc5d3b6413aee181c69cbad9ce1236c926526093896cb28016e6c1c6946ce93a5ec9c678615b65956c8c63598c5ba23e73ea9209d7f0c05e522ba595d600dc1265f96059b0a804d7ccdbd080657249f3816a99c9269974a2a574d2525eef350103fdfa3b934b40a76eb6532f1b91b013b0d0413ee62b9b535d3cacd753b67abb7c58379be7a96c08b40412aeb9e2153c23678e6489eb3e8b3f4ea6941a7426a1b4944be41c01a60325931248be04ba3fb80651f2207b59c964065875a54ffca182594b58b5decc9a1455df80cdd7677249bc824dd2876ba67439f6fa3aadf4893f47b0ebf359fc01723d67ded68a87cbc71f1eac64c23333f1876b662e1faf609b8623dfae0a078cba3109922c60d6abc8663b0db29aaaf439d5abac87898b6a5532caa4c74902828840113d3f737e68d6a6680c3b6d537afe349b123523acbe7e059b646d1868fa495142a8dd813d1b4699b0e9ca25b20913407e2ac1e6ab0389e8eb0ee4c1f260354b4f59253c7c5a1e8aaaee0eacf53aac5ad8d0c53abc7858d6cd99b76053af31c29e8f6d5e253cbc5dd3e2e196a8371cc984676489facca5ae5c82034c74a54ffc61937cfc39427b2697c82592896cc235d4e52b53095d4c9c78d28eb2ee3a4469771929da5d8694769f5394601bd8e4cd481b2885ef335682977055382b3277453bc1367209c4b2c336518a9bc24d715238289e3827982ca18443a2332cc3da8a2b84609b88e406dbc49f37232f3fe2ebb24d31458a1c3766c4581933d1b089947133aa44bbdf9b61f666247928c559d1ee316e86c180525a5e2e61d25ce92e6929a34821a54c91547a0a59a5e52116aac412ed24055a44f26c12e0ac701749092179485ac61f2aeed255f167c454ae2a32ef013808350cb6f87aa4e31534e69b4c4c43c3265883368757a50440e0252f87094a94297f48b826a36f8973146803ec08d728b1c47a4990701314b0414a9137eb64fadc8ba989f0cdf9370f678c911fa4f3e6ccdb18369907a5d41feeac574bbdb219f4514fdd715736a34d5fbd862cec1284651be81c7a7ebd944db5c26c0681806ead6e0e0dbd866c03821d74213d4d3dbb0eeb41d5db0504bb371b027aa36a2a5755f5ea663dd6fdc19dfa70a7968fc6a68a723d8574d6b20d746bdd434fc845184069cd1d3ae8745cf37b97dfb95abe9f9ec69b53f2f1cb53819e9637487c90781e51c71bc47de77ad79901c2471785128cb4fbfb133f3554dbf5c3359ccc534229a58c1710f7da2e647801717fbf80b847f8f80d4108c70d6bae05a3da7bb08d498626c710a25fd575dde52e57adaf2c6cae45f50a4896b03882831b30d16cb4372680150427802084211041490e74b003264530c293232021093c68a2073ef88103bdde2d81653057ba3d7369d2ed303fb2bacba8beb0803966c422bd858b52cc0b110c9687c188f116fb1ddecec207c78813d17b222220e1c8d0e1444440716460ae3c1b2222a0c1d9e1622268361a56a4d968272282e360447c9800eded3a586c05cd46bb8cc594683654d06cb4cbb0180b9a8df66bb116341bed228bb9a0d968b7161b41b3d17e8b1dd16cb4c7b018099a8d7618162b41b3d18e590c8966a3fd85c55ed06cb4c7580c06cd467bc9624b341bed2e2c168366a3bd85c564d06cb4932c368366a39d85c5926836da612c668266a3fdc562276836da47164341b3d1ee62b114341bcd46c8c66563de49c11a94ceb06e4f600108d875331aba19c9bad9413733613e0ebb7c4455a86e512ce1474a6771c99b8aeb0a0d87bedd4d01fb01143a8b4b9c1430d80d0a3f70a2b34869122664982fc67861bbc50496c525adbdf7e2e1922ebdd70087e396bc9976f72c7a1decdc9f8b07c583d8b56ed78e92b36cc91d881244b99711eced92c8a19ffc81eecc84131d83108a6e13d8e50394205079a014b1368d403240e88e91208472e8f7de73d70698fce19ad6e48fd5aabc99267f2e25559ecd4582a22a97a88abb557c9e8d7c439b69ff809123ba7da2a0db9fcfb3693846b2eb48b72703a7867ed7d4ce51ca61f6ed88d7a305dd740153a8d560b441bf6ce91d8812406153534239130e758d1ca7ded2bb970fce458467ac1a5c3eaec908faa75bf54307341c9a37d35c932c58267fa611eac29bcd23f2a7f11f0e67d7f4e9f6708ce851bb87c3ed700d5826aa027570040894d0f1a22a222b5cf3ac11a3cbe732c2a6f670de09e44fa3d17ef9747b267f8eb8266ee8ec42d2cde735e7d3c287450f1c02792e604a9320c040467b363d02643d754e9a24553a23c1592b2a58d6a0d4685f27806b7accd8632620be6a8d18757ccfde9ca7e6a8e39d54aed0f4b14181d24e336ffa7d4e789b3816ec9d3b5251dadb6bedbdcbc3bf771dd744182ddf18d9b50693387e30ca49a9aa5a172884895a5c462f302c482d5c94625ec088717b65c8e8e094e01a36ed2044cbd8b0326d66871d74909171ed63c078115372d182c402e665e4d222c242a0cbaa1545a78cf031dd40844db694a14ae922ecf8f66426df23378b0dd88b353a7cfd7838745c3b08dffba370c911244996347102854a952b587e7c8c2459d2c409942852ae60713f3e468e2069e2044a142954aaf818398224c9122c57aa50911285e6c64473237f518e508142a9248142935c8142af3481429bb41f28b4fd40a15028757757153188812806a2188862f00270456d3518cc610e63a42de8f3b04407e3b53e0f7d7ede157787237a95d8e3bcf26c5a257a656547d1ddb1d729c24456aab0b1c92ab0d42bf5b5c8b646237263202ada55d6b5ac57c9e8560d67fe1ce11a90125c233a2f21b2222a3091c83536636bab055846db59a7423067f167330a8d5c001a9910c6b6862cac68a5502a3ef3e7cd306c47db59ae826ced6706100ed0ddbcd272f75705d7b8900ec3e2922c0b16777f39cccb75188b1716d4e5f232655e612c2c5e1518121518db9ae40203aa021558c090ae92d18581a9fa5d7936589ecde8ee8e20534d7d5e0e82397f5ec1353a77397fc6a1f9c083b5e8fcf98686437478a4c5c2bcc5ca76716771100c8beb301816578fd63037bab0183d1bd830d9412fa416fb1ad468b8b8d8d62dad598c5c6ab876b1ad6120e8e52a195dd041174441d5a33d7ff8200a5427c84a0a1eb150091f166019ad325aa069896ce8200b4377c75e2f2cf45088524a2d10e8d7dd65e923cdfef37e32ab5ba42d2dbc7ab4f87e709a78d70a0d713d1c5f60e1d1ba45a039f77787c8e11a1052723b116c1a02befdb5cbdcb871a3284bc4106c8ac01044386a6f7adc20740c5104115cf3a073ce11c18f00d7dcac59698e45700dbce9391734c9670b561a7bef313f9a006b87b784f5884d4c32d1901e5d416d3518b5da45ea5555513d1aa56cc97b01aba385d3040f71cc455c3758215708a12966a486315c03cfef41185d8c8e34ab7c965d743ba69b133ea60e01fb25b94b3160196d086186f570ce647a94365395769712a720a194510819e173f0994cbfd998dee3cd6ed8c11f2481bddf30a594d2474a299dd7616f724ce02607d7c44f172fa30962d0d9e94b52848631c022e58c39734cf9de83905e5ad38dbbb952c41df3ddedc1a60704f30de202c1a6071f4485ce392a43704d8f67134f44d6ac500a4990ab44b184cede0f62992f68ed3d1bfa66de19ea1b45eb334a0f2036404488f7da957e5174704df604c409848b9381e099d7234710ee30881e2d0a1037396e72dcdcdce4e80144103147bc7933d86432355f129bde8180f18f64e1bd1b37de8d1bddacdcb8810267a9b7c357d7ae05bcce71cf39f72425e10e9c72073653e1dab3a9f04dc6eaf0c49f7662dcc989a70d85e8ecd0477df2c49f4a3b71bea77b2866666686a7b707e9e99d9eaef451907a34eabce7fede7b97f9b08181866442d23c03c2466a509e50a5f931a61955d43685237753b842a538c14834a3876c7a940a46a84c334368a5d99cb09cf7b8bdd65a065ff25135bc272cbcb766590ad5b927ca00053b1967e4093358b164a04091792aa8ed513c715038c23e10d253f8a48862b2aac024ecac026099a9f9260a559a3f836d1e4e8e9a8c72123a8b69a66dee2047113b097854aa5431d934e35133f8ced14929679a61927115d3337576ced2985c6573f0ccbb5102ff5c73191f704aeadc0e6c7a7960f3957910ca26380912471ca14183f2c43907a5134f7441c914f84417a08010c6d8052be0135db032e7a4f4092f24812dba3de105224f78a1c9135e48827dc20b5500511ed4269339d88d6b667b4db6fb2142db5544c2049b2a5c22734b26bc2ec9b4dc8e49a351af83ab894df50efa007be7ebc78e65677567d9481badcc2db609eaf8b165492bc7fa730d5d8e81c6da8a564677200ffaf867e123e4710d2de952b25c6cc9ba6f38323c536ff93ccb0f94de7a8defd168ad285e9d839be2967d39d8e4f8dec85bf1d602ae3feb65427a872f5bb2a02d59f707d710dab3a9feb2326caa6f0654de4dc0eb8c5a2d964813d1bdb71dd8884df5cc04ec5564b8a6e423f67bec7763a8c05ac71351ff36c0a68a85eaae1f346c72e776d7ab0789422f894458add511a90d4bd75a1d92aed531e92ac24218d8a957bbd295026caad725824dd5b25e1f01ae79370836d5d75bb6079bea1f0930ae6f34aa6555e7c3a67aeb6e804df5af09c6cfdacf8e1b6c72ef26536f8e0b65a109789b64e8a81827cb339bd89dbabf519b711452e66865f2505eca34a06c82436833b0da71e3fb9ff72845cd22b0132e023fe127cd55f0137ef2031a82cfa1a87bc64f7adc5c77e9cd9c75fda83ad68b078b5376d29e70cdb583a2d5b523f6a02ea84ee7dca7cd91cd85737342e9ac74ea9c8b79ea2e2917d2a6fee519f662ab9d937a36698f90eaeca48ae2e2439a8aaeaa5e3cbd2f56eee6b858fd511475291b416a9ab6aebb8b53bf193fe987dd50eeef2e321a339aa692962ebd253ec8f211dd0524d2b393aca2a898ea2c6ce69ac54139d45dfca21fcdbfb0e64baff4c5cd6862ee2cd12a9c734ebab8d4b3692ea23bcb4e5c8df716367492ad1a058335cca579b95c2910a4e8ad47b6b8080e07649b8603298537879e6ae78326528736db618be631537f771141c75c88a8880ff288cf01fd8acc5132ec8640f7c58b8be070b4ae2cd916d5ad44bd3af5694b3fb886f540bc1950a9ec0d386041bc2c600f42589d872ba2a9223aa38a6823482d2f17c1d5788f8bc04f981ae27aa8d8024a6d3778dc880c5b658eeef4311c47685b8cfcd6a8db1e4f9b1971a3b5188db8f183ea445b4253b1ceac2ba61fdb5297fab1c5da453f86b6453f664b2241968696c4a21f430bc3a4d9be5fa468b62e7ad48fada85dfa31b42dfd98ada803a90aa834adf5b44d2d9da201000000482314000028140e87842291503020522371fa14800ca0a850724e9968498e52c8184408102020000000230048102400452f8cde3bd025bf7c3275b0e59dc6696c1801edb6e21fe2e93e882cadecfe721356423b215e70ecc47b059185bcaba8bf5c37757e795c4d50845679868ca1a8ab6b2e4ba619e37f3f062f26669bf28124b0330adab008fb1f25d711fe6f063fa7d8be3c8247c0fb8e98c27afcf87f7e554db4819a3f01ae364348dec0161b7f1f83a3a8f347eb8b5a36f38642b0a233b2e61118cc12524ce4514f8542009171b1da04e2cc9d1ce1c31e731563cdfdb980e2bc6a748061d733564f9a1eb5810845a2db8f216c1d6ccb8d06af1d1f99a6784636c4861adbb03287350c5ca61bbe1d93e16237e6ca40e66190468838eb082513abf0e39b80e87fee04d233eb989a854c52d89991efee631c9884618ab26b4a1edb369e89298c3341589eed1f28db5410010cf9a964b75f8ec10bacbd4930470e01c336f143e2e49005b4779be3f50dac1fde18de9489f64988e4ec3b85ca3cf902a6747ae9bca8149575cf34a7ef1f07205fb3566fc27f78a93a8a427748ce87683070ae39f327d100dfa246e497687177f11f746b72aa4358cd7cadb49d8acdc46f55703bcd9118892768501a06b010c8431a1e5b83e5aacb53443cdec0db59085180b4890a5ef3dd382220b6f644a21c9562b86904d9325f3355a7fe781b315fa96c504cd0c234846efbc1e99f40e499bc2b34232e404081805b86044d9f35e111aecb50720ab51cc13d4df16a999e534854a1d98d4d890fec1d339e55c53ded99f5afcd335c5c7788d26ab970a2142d5fd63db2ec32e3b9f7d336952e22fbbfc21a470a4b62e538c2f0f85211bbe603415185d6d5ef469edd685f72efdd8ef66cab1a8ceb80e494926cdf4aac13bd5dbd3af7e82845b0c6aa6d1ff5727eae7001b14f7bdbe9df5bb97c6df999451ee0a4a6cfe379ef1a67701c9c315822db539c00cdce6455be2e8822c36a8392961fe3625d1894f4a84bf9916c101c8fbc76d6c86627c1ca1322db85f145baf181ded4ac8e781045c09fc394d3951343c080bd7e045efc72e701f5c74f2e8d876d8b533496671a5f8cbbdc058a9e9592bcc08130b06234b9a4146bc0462397fd666021889042d94b195b6b8069d0880029d0e2a2fb6a596e5bbff7e5e2e608017486e4a0158ea87343d47d19a9294f60a463b77e19028a7550201ae601c318ee6690d57946eec68c348ecf8f20d11097e0b3753f0f9eb1f8c3e89205029ec183cf2b479c03dcd2ef393078a34b6ee1ed0b8d108cd646d650d34078a1ac449aa21b4c07058000f8d10f765a4a17421647d0a41c2e17937c7f59ee3f187c0a9a4558bbc7d615e6acc469e74169013fe17ff7d36f0e84ab2d41459c97bfc4a2ee171ca04138612593b40ecb244b7e8d18acb7fafbffde14573cade3d330b2001c7cc85b673cd285dd30501ab16a05286183d91163ce440565315a8f30906312351d33acdcedd99ce64ef4b43f9dba4457d06c853b34b49c543e3a2129af9f985311ca181ca21b76687dedf29d347840b1dee82d9b512eed4c19aaa3fdc0b784a07d0b4c18bffccf1da817c7d2d6c33145761ef549f872989c9d989408d038e927188e5beceb868354da2f88a78ee15f53e3d27261ca405b2b38f26b30133dc39e3c727c443c5567232711af2d41a302ddae7aa849a95c5a97c4bd48e027c62f07c6c30ff5085b54dd0df2c2127d6078bd0b20a04dcc3f76eb2f7bc5dcb009585916dc50e0760eaeec4dc556bb94247149ad2c08e7ab37d81f6f190440b02a2c3bcd632d0fc4ecc2e350b43d31a1d89bbf5ce158525567896ed73b526a3566608364b8ff82234a331e88ad93e6b71a8478fd9466f610479e9bcf19a99ff99e37750fbe1ebeb3ee2eac1e5358c4748f654003b1d35cba8e1a3a5dc2ef0ab65de67c26a54e07459ff0be0f6a33caeeaa54430e640d6c4e5a23172a3ca64cfd555466a53d516168b69658be4be2f323ba4247748c0ee8185da00ff15ce37f44cfdd1837db0dbb596ec0cd74536ea69b7633a167c7cefe4027f44127748d3ed0197da313fa404f477f2b15ae133ad5fef30c930db3f70cfb9897adfac2c64a2c926572673cd3bf3518e456b4dcc7a8304fdd357b110ade4db972821c95a3ede84b4f1b535990fdb3ac3868f31638f248adbd2d2446656a534ace9e588a5d06fdeddf6f3daef888ba8b55b4ec382cf23431799a7c152d714f97bbd290dab1e0be63afe93bebbdcd7d433b31e6f5ca143c08bb779a1d3b0ee69dcf5611ca1b613be2ff3d504142eec3dd1331f1753a74cfb86289f9f1bb167293b5e889ea065ba317902a8541610414ed198a3c81cf6b78626fd912fededd8e789b62b7d65dbc1485d8eb01092061ce133b1fd0f51177cb426619c8223b5902537a25a817d6063db44a543a27569e78eb26c0ca493938012b81f51361cd841c4c90d52762fd09db0108ef7b26c6fa13b1c204ad35412b4fc4fa1362c12976e7be93832a901fb1fbb62b8b2253426259ba2bd69d849b72508c840a650917c591ca73b4ca5bfef5d7e591a5e7daef34fd75085257b4094cd7aea52ab9b9f47b5dbf96e18888725293eb1466c9fdff8a40d545ed8738e829b538e8522f11b12f30d75cc0299a0ce1a3de20380c7b490a10ad29de20129762c0f85485d087d24601c3f0cb270110ddba7d78641b489a86528f0087e7952434d071f256944e9a1316bcce38000c5745a0d36d2ad65c4358c5789043e5f040c78c813a4ebf6392e04ee7b23372fcfc4e0bf7923dd14152c5ea8c1b9ba39b8059a474417873a7b9d52fc637a42c75bab21415000545be5fa9a955e59d873535c17c0d90997244a51dea0fab6857b701272449f002886d4916cb07ed0db842c0909769975cbdb5898a85210a8e55b40af5f271a89a4f512341bd21ca1110e9feb693c7c8e467313d90673e9881bd0f3a4f5b5b5afa412adc9afa840a35a5120f6c6afe298c50d2718d70eee69b0563957e5ea5d146707d33f2ecebb048b80f5ce3d4daf2eab1b80c73016114b8128b543f0a745a5ea45efb5162a69ba6c9caf06f18c1214d985d60d22a3fab4c3b0c241d83e7e1f450d93155b07434e20877fe48fad14ac37b2ed8d42ec111366b7d7215b9bf3d3e844b8dad7341b05a62b50b50d81bcd73a542659c1db0b0c095860fff5b61512f17598aa143df862b3ae2bdec32464cf74281e2ae25417d07b5dd36108bc00003f7620ae630925fdfa2d64ea871e23ef428d2b73ee5a3f4c88f09b15f28a2fa0087f6e9275480d40c5f199fed91cea34eb44f245a2d0bdd900b43106e6d416d06c1e5d490513ef4410337157fd9a2b14cb8f2307de14ba9dd06341bc213341a90b54aefd267416dd7c52c6415c9fbed0a4cc3a05247c982b8a14b1cf9155eae69311eefa2ed0d141903112db78f0a5306c7665de9b8dc8ebe56be0a9bdc23c39d1af71313a57fb76b1f059d2c6a84a3e8783a41d254f10df3a8f26ce5490ed5bcf6cef0e7214d8b041254fa0a18496d82f5dda9b7324b0f892ab1fdd9a2288d22312383fd3a9135381d1538259627844f0e3bd6f7cd9d3476ca8afb28ecbdec6ef60e2684cd95e3d5eb604fdcb32d034fa63e2d7ce4a8e0ec6438a810d4be55fde739f77ee311740f045007417b263865123c18d21e2e13bec8a1d231571e55076fd830c6ee9c1adf2db52c3f1866a7ea4dfc8b0a5983a5eb9aaea4e3199ab3e2b00f5106556e77be4878e583c8db5a00a81c0e08f812f76e4916b55f938eeac99c244be5bc967bf927a485b7b5810ab6dfc283ae9d53aef7d61654fed11084f0fc001dd156eb967869d192f5133d99bfc289d390c3dc665602c2df6a4ecc3ca96b9d4bba55e4afd666066b0da2253c066e5dcaf2d1d3a44ea528ae0bd2c9d84c88e1bece57fa580b377e1dc0c2eed3eab1cd5230e215871342476fa79eb700659127af940924ceaa9bf8c7048e7124a37c32e24445ed821081af57177722f2825c5cf30f6a0af408f44cf8d996ee7ce31947ebc3436be17ae1878a43ff48b862c13025b1fc33f006d02f0ec532a3731fae5ba09fd3cedee919dafc95cae017b61bf04769c5221ec626f3ec7a812e53f4043421a1a6b6751854eaef319d050d18fe42b4ce66be0e6d53ae990eb24b0f0c6b4a3e0b48ad6e698d4bdb619aa907115387cacd6539b98a6c9524a2c4e8c7d3532cbdf9591b77eecf8e12677c031d15de646d0e5b87146a4a447617dfaf825e58d2638f6d63f94136adb75a44a7c474b14241c875ccd3200bf6920b6656130148825e9e33c4ecc706afadcd5748ebf8f6f84045d8a8f804eb49cd1c04fb4471469f572bfd4e3f301e65fbeec6efbb9e3b0f9ece4db6ddc94efd19b017db0978f50fcc29283b0cc50b2a694e21549225359dc9938917c1486188b4cafe43d0b087468447c7ab4ceba3b4a3c286912feaef0ccff6d9df2b9f90b9b5f734375de7e337a9a1fd58202cfdf323963fa46326ef40832994e356d1d85ef7212c5bf5f04b8be05adae6bff88185d12bd7488ac53e883d50d2da9f2ab6d55b54b394bdf5da10ea77213302f8d2ec85667d2b0c8516a2e3ad994572f70a164103e1dcc41a11c8571be3ff50021245c3860316f9677349d9ba3bef0466fa6b9762d994aa5f3cd80f1621761674cf350656768aab6f3769a6ec030d048d73bd949c2a3c3524736d0e2a486287cc05f3666abbe1b199ce5f7a93d89e9e8fae8896fd991b4132aca8559f4dc59882e505f350b29154d09967032f05016014e7b2e481d660381fa93ac6e26ef1ac674cb73ea144d6da763a780f07e3072946ab99f2ab210e40addf3eccfc3f08c8cc86859f00032725fc646dcd205037c80b3c0997ab866de1fd63038dd72a324ae0eaabebe5cc7a9c03408d91da41f0a17655828fac698ba4a02d70440768e655e0d218683e61407fb81fd94fb0cbefb3415c80507d35f3914c586c5ab8169b99d6ba273b513cbd2a4873d2625915d8a5546cd2432c3841032ef47ee254df060ad5c833931526d0dcb1e534aebb80a149f2fbd08c130aa27ca1f710c4260f685b34bb90c75506ccf46470f4e70749daec6daeb8fca0222fa37bc0602b65e0e8fd34e85495a153db4192eca467740a75ccf4883ab5c9cd20ade300add9c4fef2b4186c5722b13d5f679d71c78cabfc6152d4ee71e0779b91d45dc3cc56a5f7ba99d2a5d403783384bb9c740b62ac1a53d64b1379ac6f88cd9a12053a28313d58365c5a8cba842427bda47332b1816fc45c671a8e33c79891c653cf996de23fb718b7090dab44a56c7ce53488ba4e27546d7d1e8cf7435b640aa4427a38fa2398b38b0000b7d5f95b755a86d68174d2f7df22860b8526ea240594d805808174827e5a2fab0e2d91582941ca32994efdd5985c721d3b705c477dc671dc580a6bf4b47bc357b2b4e6aaf62d7d1aa8e19066b312b2f2b94d03718297889a9e148a0bcce6533f4bcdfa1d6d91d1e07a7634868538747fd5b2eb84bd3ae7293963b055a0d97023041417379cb1bcfc6b65276df536b0dd745704c7c689f265d8f999b09a33db4ae74a15e559df1433f9adb44a846b9c827f5cba9a10f16375530c182ba9e453dfaf3670835749611b5c74715a30f402667036d19dab6a7ed6dd18a26acde87f525f3e3bef50da9a6919690bc441fe871e23035783b4269bdf3ee553dfd08c22ee449a9f4cf5888926c972d8f749229ad9b15030a9e0b176dfc82545d72a6a27fa839475e568ac61b15b581c03cb67a9892f95c94af2364fab773bba77426e96079d441b493e2714004e3d93529db349e2ffdc4084c40bc5f7a3bc2ce553767939a2d77ae2d2e6e85bf815020a70c48ac433ab064ae046fba6cd11e026e09ce0c3c51a8432aff16873eca283b80443b2ddee48eeda176d8e67fe271582072216ce29cb077415f6c6000d75a146bbd65635c8c2a59c6e2f9e91d6822c845feefba6e6580b3a48b8c834cf61c5bf0f89c5168804f434bc45859dd619c65b881e5091249992aa531b79b1dfc65bac978f64ec467f664e52423fa1246ac4947a664fa2ac682dcaae8085246ff282313c5885fb0f475d83ad338d2be43a5777e1356d0117734f08f079bc6b4c5c3b48a8f0b4a1ee202622947478c918bbbd37561d48721cc0a2aa49601291e3df552768adc1f6c83f8a287f06cbc859d9f47f2da2d1446f5f6b21a1c9e5bdb47e47f6d48e0b61a1b24793e2ba473388055db5132d3ca12bdb4b50a448ef399d8e15105cffaa9a781ce95f4a52d47ca2877c7b9ff9b06598d26a4606181840af8050f5f73ed05ee6969b39b34d9540e1ae0b781bcc9b8a97c1e2ddf9033ebf94610559515f70d66ce0cc27af93c5867d999968d9996fafbe606a4fa9db25d892bab06f3e1fefe7d5021de8c0ae0c04c78c34b2ec20ede31645c074dbc11aad1c033b6edf66a3b967f56316b2147c9e8da470934dbb466cd028d9d4766703953db58d4aed9322d71d544a5a7d892de4ab52fc3f0c57a897c067becb8d9fefe13ab4d1f5bfff36d9c462b050cffd1ba0a6938fc40ce1bce0d77cad66e4ceef855270964bb81d7ff9d718e5f7f704e18c805835a3dbb43cb088ccafa3a10a6ba04c2a500bb17c9eefa4304b332b5be24d4d05523f6627b3d41e6d0628a4a744aa85dd1ef0056a326018a6061a25cde903eab248a33bbbdad5e6a21fb40438a2b189bc3b9488f82530218913f8f334a421274471bb94024531c786a348394e20db447a9b35e1222c8cf005d3217ddc3e9b00394c8e5a555e418aec7d013b446b040876ed2f0849d2d283bb5dac759cacc339fde20b909b0cfce9c71c555f5d2eeca4c31406f7520df632f86bb89767746429f839e86f35c40b86ff40cd46749895258626b283e500c4f5e6ace39b912bd3cbf67d6e52361515f6713fdbe29647090f41c996afa365a0d1d737028fd6d4ab0e44702975c8ec88f16f4df1fb4a2ba5ed2b5998317a03c6069bedd9e63f0f86e0943c24ff3b667198b89c6adb01a25cbd90780a20e366e2cad55e64060bca2ab17572061ec86a2a380cb3e076c9c676975ee03310e4836dc1d6410c733444aa5b0567136450a012b70f2e1fb9bf026cdcfe27e91e7bb19f81ffe6f03377bcc73b27af82c57789f8bb279873243ff6a24c3a60d6de7394aa57eedcac10c92ab204d31fa4200cc33ee4ae4e5d3b2c15f1c554bcc59b0e9d35be79c07dafebcbde0f3944b628c89be3e6eee81d056940aa2374bc2bbd07b68852a0e1467d0327110c294355c43efb796d341ffc1d459487cd73063f94b8324f84f409d842e0473368fa9c93ca5c1c3f0657ce4d9cc26abf961d6e1ea887856e49a92df8f4c7d81840cfad595a7d13eeee632ee5bbc9798bcc6fccbeed815e0c6ef2d3fdb346a0e766c6ea927fa5a84def7d55b89787fe8115d0aad5e90fe9fb8b8f14a717617bcc652e26bb38c5c555c262b2a755de5bd14ff30502206f900a0494555b88e3866681fe860f957368247c4d540b1e3323e3410ae5712e3b72859f4565d4dfba246e21c8a072d0355c54360df94be60cdbbb8ba9ddc64b59b73a91d4ce38c4c5217ea4a28cef19546ba7f970ce93a221b339f6690af1dfe80c1a789b21a0760866e152b78c54a05910980a3c5194f0a87a52657e64ceabd91a8a0548c0385292031a7b78851b1060877ca3d94982a418d267ce03a8bc700ac194e57f0b0d94b58a456dc41db1148dd3a36d1c79d3faf6ca42595408528324512012a7586ccadce4244e47165f9b99ede53d29b2a0a0d01da6a388fbd2fec1f5eaaabce729d201bbabbc98e478b87bbdbc4b0c49485328d08a84274e9d173c64118363234fce35d8e00a4753ab3db63c2cdd14be4af3db2eb10636a02c9497d65bd8ddb541c045d4702999ab47130a8de4f1ae77837a287920c325c256e7fbe77fbd9da2c9b1a991631852b670b91337059d3138131010e7fd7c745fcbed0daa8b2fe10a85707bcd671b67322ba813d56345a6b5d7d4d7996a6a1b3e330dd5b419d51ed9ef7264374eeb3ebc7b39d759b3f0a1636d9bba6f6f020d7da399d0930a644d15b35fd87101828c8514b53b8b16bb11aaed5e4394741cfb9cba4cb3085ec1376ca69a55146fb2be202374fb99cec6496902b0a4a2aebaa3ef14ba2fef67332664e7977b6dcdb10fb257cda7bc1fc9e1a2f2974053dfa1a2f447df67bf9443b35081be597a12d8ddd15a7bdda052cd1c0d5f2a782f5b72da4bdbce4c85ee8e991d026177feef4ea667a09edce544c8ebdd67a2b5b088d3181eb8e6327e964beeb9632cfecb0e751313fd9e227528f2988e69bdb64368be753fe034c5ad1b8aa711d823495c27d681e601d97b3ebc9a48bdaebd52c4a040bcbad9243bc5ad849ad8c5d1a6bb1b025334299f8eb48b7d21b50d2ee4015068969c1dae1aeafe389abc46b14b52851da630d1eab050a6441868de201f00515225d9c00a331d625eef0fc96bc7af4725fd94455b8b8765cce035fc62879ad630ce92891bd67f940e609f32553d4ed4f706dcb57e9f0de005dee2397b1058b40d64367ec08c99e133bdc02b09761a0b7c851ca484879bd753688de90bdb2076cf8382016e4643a610484c2322dbfe5839585e1a8b95a4a8badc5c21998a83aeeb4df936e2faaf5a2541d072b2fdb7fdee2ffa29ac375d60f0ac8193f106d569d1c95641bc9de5398d4af72f540bcfe10d4419e06d6207bedbab36360db7c5c2754b2cb6532fac9b949bfd4b89734b2b4fcd8d7a317bdac4ce1da8a500c2ff6f702dd9b3f893671b99b91075122d223f3163960058682be206ebf2267e88651c5253f03e9bc59fc3b4ee8d671c8df62243034c75d4f079edae86267895dabf3ca8b80a2010147c6c7ace8485ddebf31b14b6abcd7814857cdb254f1877b771073de0f9e2eeb7b6b573ecb99eb4e3d79bff81366a2bea901bf1fd36b0391c5d603b22fa1a43bccd2ca5317c2449fc4297b80ea5d2d8e0baaa95089fab2c5069f9143b899ccc615012366363410816668a0641e58a48484d4b75b90881b75ff9ee4b372a9d63d5b2a5378414b5d23777e9d81b40f68482ae47708ced0d77e7307bdac32d8274632928edb378bbc88dc9ea1f6ad8d1e814b43af7d487e3a7b5f2331c2055835a472d324d219f0f5b14e3178ae0bf207145577ca3052ba2aec65060df68eac5e9aea88ec74e0000dd9b809c818e645a403ba1c4cb953b186c1afe02f8a592b0ea19bb8f74e3ab211dd377f14aac8ce27512a88f8699abc7a80208b827824ddd9e5fe2b5e1fa12c04603593cc6ca1989b8cfb8d56a29b2b5c551394d6abe3a37384507752cf47504116b453c6ccbfb820bdda67c33a67359a65a5f7437c081c450447ed67710e06683eb25d8a4aee4310587023f21c5dbc5e949478535bfb6aa84a238de79ce8cbdb30c8f805549e7663fa4a67aab0e5246af8a1e58db6cde51c14e8be9488578777ec218c0ca3fc5400c118b75af1490e1604dcd6a02318b7b7f1a7a1e3846af646a2c2fde49f1d80df570a747356eaa5ae2c4f33ca4582fab49ab11790a57ff91827348814725a137c2742e3c90345c50b605ddcd635ac0fa9c3e3fdd2b68b45de099f9fe07ff753aa7db0d413d05a1d27ef7dbc2303f315b2891ab9cdbba6420f22cd962560eaf5334f86b301196101fa15b27c8a402b1c1f0e2bb12b68ef18755fe36433dd2f0794549d96c3e351bea31863970c8075ac23eee194ab99dee4caf640e8df19fbe62c1c949a83b656e366eb6b62272756b82773632248393276d9748c4c944531f0d47c126340d45683a41a6cca5439af0eebbcf63091445824f627569db7bd76ac1d56649883568e7bccab5167ebd839fed7ec6388eab88669027f89020b414316e5c85f0d281a1ba9d2ee0ca297258fdb55f6dbc39691fba6ed6609828796d798d0543c75676f9617f03e206842ba43d371c0431660d486491337d3345a8da753a20c89fecd0a2f1d0190fcd36ef4e676bbe6836aae8b756e991341d0931332c3183dad5cccb877f0cd087dc27d9b740632e6c031cbae278e266ee09bd12cb283e715076175136f37cece9e1c86b06a71b6effd8691c32bbb8ef8f465c985f424836a2469c0baf93d142cfd6550a76dc67811b7d8abf70a402719817b2e07f5ee1b7f642a50a2ca040d7ea3949b57467d960a53a74a5aa9afa655e17fa88c5cbded8dbfa3641c58bde6819a678804b05c9a8f44f2ce76709c1fad317e8d547c2c60cd18ee3fa87e8f0738f40e5efe6152fe97905036cb02b500ff58658740cb32e3ead431584333808a75da66affa8cc9ec92b7b75c2d3c3bea80b3a97f16005436248a4724c261475c1da946f41278516143d05324294e7c3ed758351e341ba4c4d6c7ae2d060065dada45d6a304397995dd990d2b806334419852669c5ae27060d66d00fd59c4656bd2ee63064dda1c10c7189c8dc94eb48a4a989dfa3db63c967e9a3c793d31fd363c547bd5f8197ba1f358df5fb199710e1af2a3e3bc137fc9511bc5cdc0eb706339c973fb699e73ee6c263772c9d0609c8b0a1fd117f2d895a3b2ca2e3c1ad5fef19fab07df5e6aff42f7f2e06b2d1ddab3b176ab8f2e24dcf59ec558c1a5566875b6f04cc517b17359430b8a8e05106cabb4e98fcb8528fe2b4092db5ec5f03258a2bd332c66648744db013bf9b77475c998514913342f82915b1d970ef377864dfc7883530a1134dacfa933dad0efe3016b9648473d985cf9e43f5953ed32887bb8fdd053ce1ff46d01276939671ea3b812272e3db453925326766a5cccf9c7d022b6087a1ef8ccafbf5a366f4ba63ffe85f7afefbfa0fb8b8e5e194ed30c6a5ff441b68aea529af287c94e5cc45291c502b533e8eb38f0cee3a7ba63faedebccf2950206852c5cc2a3d7da2b572b473883f983010009d26d19fdfcfa4f0cda11bbe0937d8552a4214a05ab5f91da7c23ac650911f9ab3024f000680455fe8ee5c0e18a2ab5408e06a69af16269b470093ae28066e57a7032997053b9c8ea3ee5c65bff38e0e0af843e8b54d07d0708c2b7b12820167931071c5ff2e5d6ff5737db5087775fb45454097e86acc6ab98c7a1c4a7ef3d8d8d1bac0ec922369e659ad32db6d0c11afb1ee30054ac33825e9e441e53911fcaddc07982e35a98ef9ad49a259db4ff72c45237cfd00ea988acb55628faca3d3fa19f1af8340207b0050c77007d8a595246b8a306dcbc9d8400b0a95a0000d69ede82af1c6a8d2f34b176bc246590f839ed55396ec57118c7a312d0c627c0d6171352f509ea9925614d2af7ca674f227708d151ba57e19f070bc65a6c207fbbc9484b09863af30e0411b0e51488ff0903bc0e7878c4e82fa53ebca9ed8621f66372910afcf161a218323312b1becb6e811e640b9d54d5975a602d693602ae4635ec482adf322c2e02342e927434cba7d3497b1d3ce3ba4b125c6a16222637f563bdf105da8547926ab156748ea0738b7ff18c964496ef87053a15a78fda3c1d14374b106d1ad93b501ffde4003c1c59e73f01b9e326a7488194602c8c73cfb98dc121e0bb6fae238d6c0d2c7978a11f4291c09e411cc5d8a3e8cce56f68e5a0d36f9c7fce428a3a88c3e24594f257c66d88be6d4773eeec98b8805c3b62f4e8888ae649c83c0782f73f999eb15798c09cdc328dddac011a82562cc78bfe9fa5fbfd164d308d7980caad9630f4ca6bf98c678031211c69c14653f84bd8899faf245eacb0252bd45d7bdd5911010cfd05aaa87f5080168523d396deef572d1548aa1d0eb866abb2ee773cf8d3aeb6e48823180caef268800bd0f5f05e770bcb90420f6a81f8cdcf8f86e1830b06dc80455530d2f55296856b0bc808b02dd20747a0e346946c0aa2678c0bb9ae6793ce562a002d2eb64a8e7975c3e487160b570576a9cf7cd7ee7c31beba23d5f2f353e1b30e5420c83a60a20b8cf133bd57b57483c283ecfd4cee092469a3865be9930d60795e753c5e7b1d81c2e788813c35ae3dbd771cc1e40b67e318318885e001780f346f029c39d68a887213ed865af6de6a96c4790e98dedfe260eeea279e878f51550cfe7acf5af646457f5447af1e3176f22a63d98eb4f56ace20464378d6d59905cac556ff3e6e2da7df01b3b59abc8f6ca62e3f27484d603090a422ed6eab35c8f38394a5c4711b93b6d2672e19df50ee4cb41b684eee1ef63864b32f44a472eb1701d2abdf9b6740ebd1803ccbef3d6c6896a0951a8399e6ac94c70b6a9984169ad7a3304275cff6cda63ffedd8c71be6b8f07fd647e77e42dcf75bb21a7996f48bc1f2b76a1b6e221534428ff9216d440721fef3e88e05a12ffef3a070d973d8fe75d1715c8239ffed7448e976e694e0b43a7ddeb293b9e164a91ea4ff004a5a62c5e76827a281859823828c74bb522b5d86789093fb394c168317473e0a84f47a8a05f02c86f792f7a313c9e764857c894d1fde14cee2991d45bf6977954fcdee9126f89ef5eba132bb94d678709c02f408de75ca81735f29e88ec241fc48a71d579f33f4bc017402edc6d7b128abed3de66245d140904eac2a5265e37770a2f49f6481c98a913ccb7e716fbe49ff3d4fdde4d17a6450b04d6bfaafba8b85bcaf2bca88721b8491dd3e66a6ea2d33b93d20e2205d8c7717859b8a290b3455a44704060c82549a71f944c61114bfb712285758c56dd0211afe206265135adbd2a632b30d47ff866a2fc3440fce657fe4ff9f12c385a0af644fc3520aafb0a0c1b1972b0f7b3d9a725607452355ae3d1e4553c9854b7c628c5f99492a52f85e5ffb051cd9611f4044c0ed6fa029c61b894f420dec536d241473b304a9008225505625b4ebcf3b0f37e40b5e827d5095524d8584b4e3cb7c39e7d81d83f215c26b3dc25a81b5a4e5b466966d6a30d8b264703fe9d22121eed30f8fb187f4fd1524f27c7132495ed2b0bd47fc7591c2edc3b5f51d6b694aea067b2157b797f61e94dd90f0d28ccc485397d8bd69e06dd459cc162f5e68290c3090c2c04c5d525f73f63730c89fbfd8ce0606acbe98b59315393b0991c02c65a4d74443c6a6f065b7b35d111d968e2543c89e3a99cbfdbd0864f7da82530e00ce1f817d9692f946c9314b3452029286497b2090878b47e7f71f82458f9bd84abfe176068c4b9f5c31be7b7e2f743adb0e4ac534756bd98babab3606ffe3273ab1c84f14094ed7aed78e4207f19f54e4cad1786000db5fe3505fa32c9ed098f3a17303bce1b8576fd842357fa224690409ad6b5cfad972fa9a15a0d449cb600302053da7d6e005d85fce16340f381698e3a05f3f33640ea0378570b75eff812ff681fe65c68df4436c6c6dff0c1c781efa31688b6f3ea08680ac54fe1c5932a03f1ec5f946063fce6ca0b7073daf0fa0f3ed8e82f17c8eb77e4c8cd3c233750ccb101d9b4f8292d86db5dc6af6a4cad76bd7811960e7ee68e996fa6387afeb31a9e75d7a1758c867ab9566c7e0ef0cd81006ff1968662ac832efa0f0231b65f34f858c757e0c185fa8775c613395e8ed1829aa920a92b7c1ed14a46d04cb25ff1f04d521360721c391e31011d8939a04e49020ac1bcc6452e18031c9d6afd9f6f81293c74fdad46587fc05088357b237a414c79b8406919b9acb1c10a2dc78c51ee27850277e6713c2d78f230ffefeadc53037275ce0e5fe14243ce0c233d185997d8863becf51a4ae46b81fb05e04715ab56fa7d7a22fff12a8f87ff650a34d8abb0cdab1796aa93e365b359badca40392c0100aca065fbf1f05da67db15907e56818e90dc924159137ce61db39d00e98f91097a5cf5b4065c5631ce6cc26ee6f46e1565930c9775ad87020f0372d3a05756ce611ebf451b5bf7c4c63f471d1de32c1fa46d1e3800a1b79271c1e1f8aa492652777a163f91b2b8bd709b2ffaa160c8c2e87680dc8c3701ca81215b8e394113e83b75fa0ddb8d2e1baf956f2a355c8bebb0ff2f130e9db9af0a0b44989e42cc6da53984f4969a6406e675b6f4876a5ff759f4baff259684f88e017536172245819e2187353c7eb8c999b281c179835a9254b21d8121c06b650a4627cabd28ab974f70b7d7471863d6a717e906852fcb7ccb627b445cdc41fd83d3b63b56aa67b5ca1e594fac5b8a4414b8a0188a1d23cc520b2928b4eeb5fcc303cd83a3f7ff1567dc6e591b31fac5eadd94dc810ac1e13f0599c02d953b965a3f8070afb31654acfd1d5bb66de70f4b39af74f04a1b244db00be13de2251b4220622fcc7168237e4f4ed68b02603b58629b63a075ecc039626891ccaaf39a3ff2b44281cbc78f000e2d5b7ad583789abbdea2233a1bcbdaf22d845f11975be818fcd8a58b961073a38a49661a8a04c33214e37407a32cdfce36f10fdf0bcf158e94ca33d517fba8cff1d19e716f4b4705b85a33b8434000de8a4cda60e37585b806990456f75184f586f420385205038dbf76871dee74bc43f4ac24f61849e0089a57a49dcc8d969b8024e67fb52de684f973f81b4d0f49a206860dcec261c3e80456a4f9e006b001593d75dabfa11de9f15424f3dfce692f8c106ae6e66b76b821b17de4081938c12771d4c29cce8b704c9215c7936975fde243bb7bb864882350c9ae621226a904254cb29b90a9c2c67d4c7045265cb0e7f21fc218774c5196482e365cc53be680b66ea0a837f11458d1952784312d7dbd348452e448b58fb0b42def21cc08529e40809590fc8dc021dc44a285205e2b68e1ee532152c9e51753b88f16c4e1a264989d4bb9d76805bec771b61a4e256d15256dbd073a3972014b1a344ac0e5f74951d87e8523b4583db9930afd055938f6a85f54c7decd3e5e582ecc0a83adf0a7246d154ea88612b6c94dae07a0927584b0c6448000c85114468fb133d52e17803c85bf4969b83934c14c920a870d4b44965d666ae24ff4c8bd23fcc031d018793df6cbfcd6ef3185e76028ee29d103f01e558181067a3580f41f163b4782c6b279132508590b44cda61fd0029daf97f7bf4b3d86365dbe8170331f2a86739bedc9a2f17b457323457896ab40ce55bab12e8a9862e3aaab4436c755ec3811b77ec29bf0f5d8beb9ec3a96420a7a0ce5b576cadcb9e57916155b6911576a3a6359cd81cec97b2a43f5ff8d781ffac50ac24c35f2570bf4e68c0638713bff2809a1420e0572de84fbf44b7a99f4ac9527c463d09d1fb481a0d9cd6e96d4b95ed10e740a15d67162c58ecff39f937243e5ccf0ecf038002c165eba99fa7641c3bf180ee036dd493b44a00c0da5a16f780adbc3b00c220318a6ab7c59c13c3f81275428baf632c3e4ec3632b7f21a2b8cc240eae7fd5d1a4a50b03e76981fe3d8590d16504e2fb992a4b4b5041d4fd5abd5bb61ab510b362d01951b0e6e88d1e125daf18e7e98398d5f1bab222218ce4fcca7223d8d0c8d3c635e9dae6813584d8e9c9540b8bbdf16d6a9a8e6f0950b8dfda0b08550f6cb246ccfa9a334cc638d9d72dd4b281f388f0e54aa13dadcd55117f336caa33c1716c40612b84d3fdef7d93359f10559e7e01f08faf6a697310876c78020e046399a7032721cefcdfbe0d4f16dd66e48092816eada1b68985f84a435368fcd4738d042a8eda47dd49d9353a951984323e8f0c315b09d251e5f9882862d71881040abfc08d5465a0e8de2e01f6caf6a82e55eeb32543691378b5f3c3f8e85f2a289dc5fc507536b0d98507c57748b071a0354681cf7e34d02cc46de36f0320c7b44e8d0940aff7f31ef10640d4958428153366d04445dc35bbd4c9f0c29ef86d9f10c1ed834710b18e5dd9d06778f35e7bad0d46cc26b24f6f3403af8ab81ee6212b85a29eddaa5d0a575925c563822d1051d503596d4563270c59619ce20c6fb08a5dee20ab4b7973fa7756fdde91a2e261288b87f147c55372f8020d746b6dc3ba8b8cd4407b476b0d2250732b0519f4ca642690dd9b63b595ecc67139b8f67f516ab07a7bda5102213c7131bfdab4d7f7d60408391ed82b1e6aced311f9066c9ce583dabe89757f9f02ce07933895298c4009630cbbbb4ac168b630373ee741e113a17ca0c03088dc651373860fdeed338f75e52e997640e0267f716bdd8d110d5d130d8d5a624f589f60494e5c70efd79bda365cad15a9cf898c40d72c41c95fa56014ec71791dc5f544d1c6649fc70253f9e0bf2bb4122c085d7e6cf66ef0a406a7e245bba56bb8eec5f636c86a3219f678a7a02cc0978d0827bb313118aa348dca5117ce18faffc5acd641563a5c0db2e346f8f456c1eb7c153bbf6af01934e8993123b8e00269c35340e8de4570c4f0c1e205a034908c9845d1dba09056f3a896a94d6b372fb5c4fb5af02f9f1965820e348f7543b295e2b3746828dd2e8070b1d3749c09399f4e5438576ac074e29b05fda7a5f79cf2fd0118e855a77db9af3d17aca0775bf8bd2764afdd72f5948ee8305ab5dcd496686d52c517d2100274669930086f560a1a96beea45cc86cc44d153f87753e2f79f521da12ef2f0f14ecf48bf2ac5bde7786c36b20fb944cfa0f3b0d5c6932bf3f09d06d76a643c692d8ba2d75d9aa6c759fde0a89c8fa7452839112123698c9419e4c6b68d625dbb3ab60919ff415f86dc874cbba5f9bf640e4184286fc28460e708c740377c8dcdadc2b4d98f34ab2bb6f39cb7ebe1a8c3cdaa3cf52c828c8b3dd488f4e06cb63858017c095a7785a45b317c56be331cdbae36e6c7bdb98a4e6d4a6116e3c6e960145bb362a0b29b99dab2c19c0a36fcf252e37e9f6bc34fd0cf8223b35a32d67b1e766e0c1908ec0191bcef0f85bd5f4b2a656424ee9953f23f8133128723226e7c19246d060873e93b56668dbf08baf2b077be727027adfaae3a1c518304ace84711a6025f2ba4713131d581be29ae45bf5407bd203469c5db5a67b0124d6897d5247299bca882e6feb71519c54eca2ec27361f20e3171b3fdac3da2b17379189968338b93f764b12a84471689f64b911098ae5d1d6ad8750a1647b4e2689ff5ffcdb2f896656aa2cd0e0eb283acac6809d7801dca0ae18d1f236e9e50ea9ccd017543a3660793298c8b90f3e961f210c2e8ea5ac7d32195aa6491073608521b6c124855a0581af51abb8280ac1f4ee03d2defb1037c05c8db27418ba9401d5ba61434f6985ad4485b2a9d3de351058692cd8fa7483c8eb95a3c7419593c6258e1d3b0547d6809ac6b0717c2b6b355d29cb6178600e192056d37547eb3b429890ea0521340eda42e10d3513c94fba130c8b2c6bf664bb878cc1db4bf1ef5e0f92c74d88bfe4a4133165a0cc58406fc94c4fd9126263cfb11434dfe3531417b3301c5f0299a197b3c57f7e2ec6543ce638e343141c775b9088f5afa0c0d8f719a71c6b69acc3531414ffea19dfdf5c864181eb0fc08ccf0f046b7fb1a1e3532d03d1c1efe2d1391c21eafa5e1b15ea9e71a1e022af76ccfca12b4189022c88cfb1661a954a581814beb63ead253b38f089e0a0a7b4c08d527eee7be584a0ccdb1ec47d3b815be8dc00ee54a625d7c60e36119b3715ea9c21e73407138244eafe564250e41887c823353e58335a9d8fd04dbdec75e6607763233815dc04a386a32da9115938ef7f90f6105d332130ab8482481805839b19dd2458a6165ff30c711c198fb015df9eff10b1c1ed6031d5eedaae9f94a72e4f2278f970c00012871e528662616559a19d2cfa5ff5aa134a3b26377f0c5977d6d2e22272bec1927ec6367dca3bf70ebce47ca3d6b8f572223a82e1f2f3745f8bf45b089dcb19fed1f07be71ad5226010a87a75ea23a06cd6019bbc7a16d251014fc2fa45b018290be807ca64117d6f0fae399fe711529ba3bb6e760db9d19ef90241c3cf2ce2aaec30a2dcc2d1cd80217dbf8cbca5169d77ee2826597c48ec249bfcdb8c2a21a49ede180adaf18b587c37da9e3b4072d8028f56dd9142c11fcf0066181e514365403c96b91367616504c90c9937f1ecf54f3dec33feae449aea07d465be589c52bdc407bbfbf92aa02cdc0efbe989266c3d2500442c21153d59c5800e6bf925563a8c336ceba90469817e5235942113e8bd67938c3a193540e541c4249f9b0008e2a09f0eb8ce632fffead7f41c4ffb5a9d342f6f00a5abb6f5dae8ec6dbc0aea6bb9f76770c1461a025dbac3d8698a21e44bbd46a25bf1696a18b60590f2f86b8d48ccbad6295cf537c6abc432cc46ca176aa1a64b323a5840bda21900393b739a497d2bd5b24025a69ee8f3f7f33fdae30159daf654a4c735fc8616b4ca0e0e463b9ad4f74784b1bca669964b14668309c244e393984c1d24f24c55f4ea2e33a209c00914a459f9686dac971bd292b0a07c44ffa5a5c574ed92fa7f9b3dbb7c725aa2d078fae2a1c640911c0abcba2ed6e1ea460c12c48236183fa4d8fedba163bbff53abe068d0b9bda40bef01be520dbc209ced463807800068408f2652ccbb0d99e12d0e7b63bbda6036b7170d33ee3d9bf903bec2c3c38054b2852ae6868a625c59a7214580a8e3b6cad7c8739c1c6f211f2816d1e8830996c083b7dba1bc888e98b617419f7d06c44e81e0041a6170b25db3cf785f7a4e6da2958ef5fd644db16493b3ca69218fb91394b8fba4d77ea3ed1763a127919d03609c3f599d4136d30c0318c44e528b327ac2c6dd8d158341e770d55eaf652794324c16068f4d8d44dfc22ed3b3f25b78b0a5631dc48053e26ed13de55f84c9603b11ff9240d0d64d14c53d39e682d84606322d4877422fb2b236809db9f347c8a5d3e8db59f9a9effe9a3e1a87f6e0d7373f9fb474828f30c32031088f6fcbb36ab5632e7845e82091ad607c1e8245bb958ce6ace9de9007a4d916af0bc60f8c020336fefdfdfec7a6a3aa4a5f8b9ce73d7112d74414284a64d4ed16125f7fb8321046275747b875253e743b2c0c0964eec2738a033c467b9a76de144b28c6ddf2cd7d9d5e415aeeae4b3c66d1f99e608ba24e749fb3b2b0a593ba6a5f3e3d24cdad2dbc2520f9c2a15a39e8bb492b0c612cc4778c0a4eb843a0bc446e5b0d6397e70128c34a3cf65fd0896d876f68e48fbeba0b172e8b9b67b2d3dc0fc24cf48e1ac20b92420c187ecba055af6dc91a4e4854305ad569350375c0874daf6105caad0d125cef9b1ff3fb6e644507d60fb564d2fde7ddb620cff4b53d697c993db2fa57d6c8b08fc8bc23a97057ded4eea8607ace07cb29e89345eddab57657f5caeabb0a2b487b64e0ab06ef0d6486e09d6e40849c4b8f7edf07fe59fc1732f887cb257d52c5f6cdbee34f126e53420a7b24f9d4e557a3c6af0a56ed92eacac631ee25ed0807ff6f5c7ae3d7d1989826b38c395b09fefdb5ff044617e6c18546fe36029d60f9d5c707a1928f91eceae230840cfeea0479d24f4da54d79caa4262a2d12cdf935d39a964ccec84c5d1013052163257b2404602cb19781772baa87b82de399999db6bccf27553d21e9e5ec38c03579e622f760340e54d86aea3b54427df42bd81dd25ee8aa73715d9cff4398454034804872c87ee1e396a3171b74c9e1d481ae4ba5116f5eb877f0311a9f75d5c1dba2fecda6ac52994cbe3d68ddaa1aab363d39910acc01c3e0244557e04c90f5fe1e4eb73205ea0c4d540d2ff5383797642b07dedc88ac7a513962d593be61980b9a76dfb2e0c0ca3663f84587d224d945171a768c6fa7db4eb5f2b3a6ba34796e2bb90c73740bfe668f95f704e39fc66818ef445300794842d7025d6b041eae407fd1904aabe2d025e33ef4d9031786a38dd4ba7d2772780a45a6ceb79a44bb01aed6fbe791841e3ab5f4a79baff69245ec767da0967c802cc5efaf58e001a8d3db4dc27346f7d3f25224261a19384dd62dd51723e98718b35ae80880cd7a18708c9ffd118e4882b7532c98b19a64b9796a1b0e718e0a4be34ed15818cd59b6f87c7c4512f2cc7db342fe28082eaad86ce2391a1225897caed8f4c6839e17ce8eb0c74c17e2602956e33d42935f23cbb0d5de32b7e3736341566cbeb791bb3801196b3ddca3592836d69f93c1dd6b6ab78456c5d873e43e152fea69c8f7e898ecd39afc97e17438ff2717dadb51505d32f8d3bc67ac735918539c3844d8154e384c2e53a6e0a7729b466c99f1f71102bd0bb2a2702e51b93b1db23666d749d70f30c30e2e82d41fd0dd0d3d11348ce952b59b97db10e150c3f570e1045c09b525ed8f3bf989e002769df5378aa7a4fd267e8f20c8fb7f9c917b3d9148e3f989f0f63d5aa74ce63fcca37f15701d0394f2e9cf4580069ae8103b3d780054d9e2b7abe4123cf30f80129cb2c5110934768495db3716c4ea96570b5b64f0236fc57f23485dde88d4a81ebb54c357e690e27fe7c64f1c1286df1cb33c07c8f667f8844392e489217604ef228b0797ba86fbdcd08617782634fa7f103f216bcfbd5516a22442f136f76f1374884af94a98910a7c3413f3186fc790043153079a87db0979dd32440d129452cc99b209df587cb2b465111928740cb3b39f82e818f416dea38149cfa529c3dc8acea6ca1eaf0b3957cfea1e278dba9aae1f05db37a71dd8eb59c5b6e0332c9d9f01068564cd08c25a748fa5c1dd3b4153fe00d2afebd30200f0cd483bb2822687d29fca4763a49f6070328d91596c71ac60ffd9e53b89f6d258c45c85ff7d4c3870156e8d80aefc548947608da9f94c7b8dff6a130a55dea5ea2731663b898244812e73feeb2596951c305c605f4d25fceababc5dd037c592f19402dcb103f02803d601b8804eaeea9d698959ed45de248a3ae9cd0e2d0df7cc4ef8b164a2435bcc3b6944a088bdeeb823dd2410d70578639d96e65ce618846e6bbbff12ba91f58e5a1408fb067bff83f4790b81b02b1f4343dc27547b2fc813d9928b824e2144b7b195431d565d010053793412b14248fc1c49327631894e2122ad84e497c7617104f904ec3e6740df416af0fca28535e99b8fcd9d330ece8d8e433f6e361e96c263eb87b432923577b1d4e7a6030ffe6445a570503534ecea272df80521e9616b13af9efce83ec081e63f2bf920f03cbd76cc2a140c2fa33a88bd3c5d4b16d7c3cf87fb4c4b1ed3a0ee65dd110c23011ca55a4a31ef175079cce502445cb0663246c9858862b01d364bf21e583dd2ffadfac34e9370e24e996cb50420eb3f823ff7b51581b7e44dddeea1018b977e260be6072378991e0de4b6123c693a7a23c025810df728f52be180f8f109d3f7270f6d7e5e0b09c3e0df8cc6befd1cb8fe8dc54344d1b02af215546d0dcb26d9fcde814246d6f9c739f61b41cff06feda19d06fdf2bdb98ac6b1d92402871767b82a93c93d8a8ee92321a2cdf443b9a93adfbfed808056f28f00ede72a6ec88a6b276424d171dfdc77149c466240077cd6f1f01e19094d5e5d09c3dc84467f3c5e49c09d02903e66141ba557b8115bc5a33705e882235f29ed23d68318c8c73c421eef8188814315109056950635b0229749e4aff7a0ccdf6a5260e8ff43cbda8e45264ec6ec37f09ce67df9f7aa01bdc14626851d6e8934e4d6c9ae2ff94a3bac9878252ecb6a5452b23740fd122ce9f91f672c88d6414f358b338dd4f24170da7ff3755019670b4d22c3c8a0f48efb4c2f1d594ed3f558decad36c3d99fc67064a16a5b9b02512c6a75da75d0d22b97bdd101db0059d079e1d2398102bf6481bd2f5cc4888f61da1540cc882f5cc8bb02e1462e4200b2a3a5cbe8a84b1a4259b0fa53c30e2abcb7b254f8cd9a81be60915ad10706233a5f15dbdc35a40d00ce40f83a8315712fbb37e101989bf1fb5ae3c08b5f611ad71b1a44ae49f6b381c641044a2cf0222d3f5396ea6a6605b78af846cb9fac1db9ba0f5934d30eca2e3d4707c0c0f403662bd546c6e8e2562ff62142300ddc22d744e3944dc971ee358e7bcf146155916ce3161aa700a934897ff66a9d6635f32b260a47709c72fd840392ddbac1ebbc436c8ee5a1b9427194b760dae648154a6cf3da261e712a9bb5da6e174e0856111596c0ac8a4c3142b42af29c6e39100594b89777c426f801df441b18f10d2ee60cf6bd01b7c4ccf61a9890c752a50016adeac8cc7c0ba1b1264e7c55682c2911c63e0a4a8d2ec4282cbd0dc5501aacd892444d9ad5f87ce86492a0e343ed4213640cc710ea2210831d968181f861cbb2234262f252b245e3082d7a86440677259b5f4674c1a49016a3f65ee949da4791cc7543acbbc1069c8243b076fe6091cbfbe158677a9a23f9954c3252972efba39cca1fee1e09c8022de2f719ec874eb95c005c13b44d049ab2ae090d297083552f9a4a6bcab5d6f04a9ca057a57af6f47ba332ba286f64c58119500dc8be2f713d321fe819e103de5f8ee1f813ada7bb3b59226d6040905cd5977fff2aaa337f7137c73739efe83dd6bcaaad177e3867d5f052c13c8c89d750c780e7bc47e923b71050253b283d77d5320c5c3ad813eb528b46d3e3c559a9d2a24864135541246e96bae9cfeee231fd32255ff9c3509b9834f22ba6029fdfac435b91659909e65739274d44e8a37fb9ce6d86f6cadbb484e58f09e4da484731a5ef1a15a5836849cb336ecb08cb9d1a0dd0d96e294e667b69ad5a197c1515026441ba4724ea296f6e0eaea454f8f0f1c3692a2ebc6c4458c27479fa37547f38dba0a9694d90c4864989f06e3beed781093bebdead13eb40c0e43510278765501f8f31977ccafe85843c628e7afc070cecc05c3f9bcf69a28bb25a67350bf4dae7501e65d312b8d39dad57cbd785ba65736924ad5ea2293f9244c51768ea8823d13dea9cfed4f1eb58133c734d14a30c5147f8012fb047a0d76bfa933f6396979dd562beec34da949164b62ea0cf2f06f76b963412987cae81233d10454cc2f9aab075cc61b946e0f9c5ce2ff34cfba0c25b859abb99360103322d2ef4b6f31f949ecb4638e9ac2140b625bfa3f4395742171dce69b21e90a9831368dc5bbbb219681fc188fb0f28e620debe2f949f04cdc3e12a69e3c2c935b38a4947bcd7761ffec97561e5ca9ebed1887ad3a7361a641e5f9846ae2cbdc34e47eb34b7c21e9c6470dc72bdb3bf302777031fa35c59e8757656ab4593b7b35b9b23ffa86123302269ffd4f8a4603923b93128854d8671f3170dbaa29428a0eeb1ef8c09e18f1340593980502623ff9c19c7af14d842f3f0c9857b15994494ff5c0916546063f6f4464f4cdbd3a56a270e2e823885c1b2a61d1751f3d18dae3f2e2bb9cba6bc437b8b0e25a211b2386b14305d92b277d5ce933ada7c0667cca0154ce49f7f2b1ca2335150c2a2c968b74f7ea0f2b79d3fab4bf4797e35caf5768ffd32a74bb18b2d90df877e7c8810e3f46b06666b5ecff02c5e1156d55a0923c50775f751ca0481727fbb5ed41f2fc5cdf2e85e0d1d1b7ee186e5a0b64d222f043b45ae198ecb1203022b8b392e456fbae40589bab29b65dbec98a523ac7bd0d5846549956e91a5fa74eab5dcf1b9167a29bfa96e244a171683253282ad14e032f6348cb9d7fe6a2ee850255d8fd14ba47ee82f6cbd9feb25e905f917257fc5808b41c9cec40f4412d551c273791592077b6bb3e52f2e3ef12ff8d67815a187f247eb9f5e60089b7e0144804e09c2fa4b9f9282cd885bde63704192a9bb09ef34deaf1d244d3e24737ba7e4bd035e1e104d1480a247a19bb050c87d65daa40f8768f5f03b5fb5500f4ec35dc39a1ace2b5a1f96cef24bf9bb6eb3954421fd6e98370e7ea417417d697b92062b89a4d23919b03a975991552eeb1d2631eb78640872a0bb259fc08e17e0f119fc0b4f90c20d9096af9708b899bb54bc6cbab86208dd8b2004b19090bfc2d727f430999f561ee27a1798f76c85117062d98782048b20cf45d0b788a9e7134a8157facfcac4fa714576f8eb96269c5f49fdf75fa43b02407339545e5d1935980f9651b2368415c7aabb7df1781dd00dcc3105ae88c5ed8ce46a8c23d07aadfc91d3cc58f08946c9bd271eec4f4c0496011180c162a42f73c1ad2b2264e85f8032a4864db901004e56162e440c769d67b261a9795a7105ac13e6a0f949bba01f66c8e1754bf15a9a570ad0619accf9c2f4420e237bb746b3bc10de462c34a62d9b772f83397ccab81906196d3b9f598014512fbb3460a7676824ebb8e6e986fa34a581ed1ea3d69a9676e19c6fe3ff7dc192aa82f97f20dee803ad3433cdd7a83545daeb1ecb0bc74736f6119bf7b1b7fc12682510bf3a3f1da866617ba713d7c15a409f6b219497b659b1f70187527b7f7bd0456a3e73eef0ab1715c6fc8052237320f10cde0914e2939f0f62f8a19557d808963f8235202515df9c0c372999c06f899457833add486e7ba0a6439b116c03a31ae600ec1976cc9f533a10a067b1e88edffb0ff92c87cae68b66272f65819ee57011d2a79c8f0750721a340819e1af925cadba3dc32b0608fe8882e3b0fd706f461300b9777163154b2820d80e3fcbdf36d29a57b3353abafb173b488bb8e7680daed2d6e48c55660ca705286fd2d16a866f60bad390be6946c7e9a9cd618723c3677e5ae246f530d2ec64c99e2dcc4513335183afb0e3175cb15c869f152da79066584ca2351f9bfcc5a47af63aca1eca73284b421996088aaf472bdda83c8764a01dc3b8d990d6c4dba7e890354df557e71c800d7ed8cf3a9cd52dc3377ada44d64c78425bc23fc08e8384f8468e590b3ca4456dedcf62b2015ae09f89147a6d4461e78d26733293c9ea0fff5ae226b3d3ab96749c8534acd64b97c18ad78b7df5c6ae1bd201d1f4ae8b9a0169f3a2d31bb546195e95f5cd6ae077a1876f26600a48ab957b1d6fcf81d5ebc4757abdb22e08ede9d6a2bb24ee48eca2dac99c8383064456f80383683b1f2ce9fbf742984721133b1e6691c5bd5c4a807ba2162b7e5c3e90a3f789f00c4dd9d014a6421e6d58c6762f4214a07ecd55d615d5ce72e02c065e91e415a0c55e1c72208a35a7c965bb32ad6321be5d752adcca62abd833f58abff78afd1eac8fa3488ccb88a573d95f3fd5a829c14632bb22785a16b2e5ed07b514a82b9e615fc576f1ae34eeb63ac090b00674c3e8e8dfea6eb008ca0085d51e263c311d0b36c88d99d9ca026f7146d518e44b247a0e4c02b51e22aef10ba498b10289ec0859d7856200cbeaccea1e5487713ea2acd1ae09b6c08046d8ffe91ad78ed30c4d4d83aff11a7b4d0f0da59407e94dd05235fb67eee14a0af8269b1b4a7752ff56999b948e883b58d75e4d0f20ae4b36e8104166432dbc7f26f984560b8273f7b186d9987aad2612ed2a7bcaafee66251ed45c526e9f6b2f01a03fff4abeee5c3ed177f2ea65ba8ce834ef00aba1e79648c6b7ad740b45217273062785c8b1b79ce1b9ad0cc93c34954857895f38947d44f834a56510f75ac84822dce71d9db6224827eedaa7ec7c881cf229aa9530db58d8e399e097541642d7a70adfd3108a532e6a10eb3c2e00a6fccb4967a12814c6a4b4e19499bc60be6135bb9adbb612596818310c6e6d764caf10de89c29cbc34b34a216d255c082aa3ed9619090923a84fe8abd92d715580a539d157687ba6a35f3824eacb31a745a2d12a84a64e355d359600ea4010caba8346c9bf3be13d2d11b51e85b94f97a6b263304adf2483d5da379c65fcd0ad987d0986c258867616d9ecbc15aef73e9544859431e36bade295cadddf066ad5c806844e90f15b2b1a94290061088e00e305abfb22633d042d94515e19cc0ae79ddc6422d23e4333af2f6e2b84bca33168a2c280fd30af00f1d9ce198c788788449f0f809d1be4795ddcfab2819d093b0b93f2475cf6288862201c8e4a4ff1a1c9f5646a970b9f8d9668022b19d20c5f34f18ad58ff314ae160ac32d26240f9b48291182a9969e360763ed935d167da18942b110f24ed2bc14a2b7f3538ef504c4873202ef98819ebd8f040137c9db4ac50959663c1f1bad24eb36e0181259f28bcd0c84de4334d8c18792a94884701f7944c207bbef0d8b0ea3478a0e0e310e89dc847a6e07891b8518a5b10d5b43ce1704956dc068c46b406e0dfd38ec7f63d63fd19209d212d4357ad49c508f2699366247a064a76b8ae8cb3a62053a74e6c02081a828ad1c0b4ec5520d4b567e4c82782c1099a27a6db6ce5ee30ac36f54d05425a66330de3ee38723e7a39bd98b8bc7b504ba2d4204f22bf4e8a9e653547d0bac17f9bc28fda4a0bd446bf924f7e57c0c588a5edcbc6654d428a58b71ded08a01e1431eabd830471cd5d9d41ad1e201e1c4134adc2b2ffc8b10d200afa428b37ad3d602c6a43fc63c0bf24044dfc4bb16ab670266b6ca362f60fcb46a2fed0517b35a6506f48b0bb4839bd9f18fa1a7f5eac0d5de3628f86a7bf1b04570da4f45fbdf2fdb63d8250e98bac7575ed0149bcf9f804473d58ce08fcfafa07f620c6d8dd93be33f99bfacff24c26eb3725bc5ff86f6a20396c28a880ff1c3bb2de07d91cc99ec29350ab82f55059a96fb607da35c6ce865f0a4be69bc1a033e06d1ec6473a424159a4f2e5234d89e1bc91e255a4447f1a9bb6d3ead02d44ad3c28b4ac7d274b6fca6a2bd80dd7e0e0cce2f7d70582487f758c94d44c36d37cbbff8104d3f45fe57dc88c1e367b237f4a7846df04a069e153f5d1d8a5d49e907a365facf5423bfad5a664a43aafe6fed29d25e2a80c8fc41d533da8e13b3dc47aefa3eb8f2e138154bf8c87f2fc67fd2244fa081c79a7e7ba889b933d01f12e8cac4b445694fd4618d29f8c04526d6ab30482eb0802741ca997536b7a04bce2088707932262776cd03f060d882015f75d55c3068ad75e7882185c0757335bd5c28b15594ffff7bb12260c09001336025c0cfe68543a8fc950137c152e5af5f8a6bf9e4306c74f29732883024d5c11d42f967e025277f893c8ee2b8cfd4ddc220cfe8dade2195861842143dd210e27fb9b9b78383958511e39f7a39141e86f7003deceb8b9d36982b6c2eafe842babbc8147e4b3517026e32b1e09e5e74eb77ff043d0d7a68f9eab804266eb04b1bc20f06556aaf3ba5ff00a108108577d56677b1805862753a464cbfcf2f8c9ed6d64febfd56b11073f7e0b77bc97f13879626c21ee42d6e0c76284ca09144a0a0acd08e15fa2158425720db65ed694f5504336286f0e389a4c113840b4eee64ed6f8582bdf3b8a155d90caf8289c082c4703a38ca2beaacde390957a3cdd792f550df4ce1afc65c628217ad6bb023cae3bb3d3ec73490aa7f568b91e620e1ea378d670824eac46c4357dbd9098f41e112c22b73ed3e0d849b9e17444bfc6cff90007162e2f52874c4c5c09ba2c636d1fdea7c191c81de4ac32faf1d5ffc074e8d456f60e94d6d12989b36a7268a292beba6064647b9fcc858eba79e3b9134c24b9db71407a77fda94f62abbcd295f0a0af85a5ed02a557fda947ed517fcc981b3c11a6319c5bc9970301f346e39190df6e197bbbc824a6552f20a9c7e0922fecb75efc83e7167e11187001e6c8cd13a5d272454dec4e5ff966bc13ea538e95aace11946e741d2c1b4dc7d537b2a4859e15f14c2cfbfcde306a9f449c8a5da416fce45048696845c192002434b919f14961641d557927f9b334ecfe692d812b89237df84e5f9f68d388e596368893ecb99d1a6b551488804c336d533da842eb0b9edb2bc9e4e64a3a2c55ace2c9ad146ea3b9891333756b7fdccd21a07c00fdc1b23f2b02b0d79837e3de25f7b52a3bfa87c7e34c88736e3481342f7d3ee8ba9edd94e397fe986cdefffd419674aa251d04903e0ad73a4db103c162d8486896e530391cccbf2a2d2ec9986149db2e41d56d8ccf5d837355a15f7545999aa88c2f536364a5c657236bcb8ea963871d62f8c0fec973dda16a1c0a66bbfb91fd5b0f99630cf81505705816eebf9b38df158aa08505e24d88a526983fffe8e0526c9d93650f8a9cc73b09c0dea4e9d056670d547ad18a0b71598f3a60a9f06c55d7410e587c8830e6dcb79517bd0315666e242d828c1c8ec74ea18649c1d11718b400b292f2e1c0563da6c08b9e63671a864fc5c0f4bb5eaa22059dbc75cc654581295564c7745197f8d9b38cd5ead827e028ca680a49809d6bb8a7e4df1146d52a6b119a2063b71a694498ee294d289e9e113eaac21e20fe3991704c51abb748f4bcff407ac1c480de8f10ff811eb25741ea46fbd8280cb26e6df4683d26059dc990a664482e09e8ecef6d48984c728b7ecbc9012ec400624f765a7be833ae11a54c50e4ac5548ea4a58391a85e2a885d3c70680ce335e76aaedd49f470a427069951ee133cf322943581c7ed5cfacb9f2a5d087614a8fbd804fcca5db6835031125801fe69eb82cb85dec31b87927275851921e7adb3bfade065d04c1d4787d270e69e65c2c166a5719d32b431e1c2365e6779c0b43a3c9dfa2aa04c7739fd7a69d82a3323d8acd3041881109bbac976f54375100ecb941ab17cd3668c4579d4d0b6f6e649b538b5b861978f61c3e329d48453600320dbfd1e00e6492e1f6c02a8030f07f058fc255a7a2a0b43079b104e0dedbeb1f11c110de0c1793203a680c1a103106c1482e649a8ca684a5a01ccfb46010cc84bc534253e9f887e4930184fff728363d006784ac0a69856056cd68ca1827cf1f05bd044b0fd96adffd6e54005c9ad234df217148e495b2157f4d4baf7cf391e55d44db54d683f28c8dee234a7668ea86c36026be3c59f5ea872c6e002ffe5a4d27c0182d30e8a276c2abc6b58f935c879d1165193615c47a5659a0d1949488074ff4231a08a530d6f34c46775445c7508462245cfc61186fa88d284b2d938504679c4d13677f8ac58f78fb7137849460c449009a1a142e722878612dca7b6bb0a8cec7a861826b241e1a3ce1cf7fcb50eb8a3680f9b64e8fae2f6c6e80e02bf9d43edfa50c518f8c1cc2e55d5da7502aec9ba5034b98fb7861afda7c375df11e2470c68c5212e9bff0b1509114a30fcfc4420fdf8a70a3c6776a2424ad8732722002d1e886d5e0c26d9be48076a4cb49092a4ee10b18eae1c70f8888e0d08a4c0dce0e4de872211018507b36f4dc6201468b2aa84b3d3cc0396c2dcb3ff002b99d7d4513f051abe6dfba535f7b93991ade10be25d4fbb2c31806a5d03e79380498e80be76290d1013ff0fed754fbc7995a559111c2826569bc67a2d90ccd7c5972d83994b67bc08fa50235f85ed5015f6a6d7f5b42e91b53600ffb60f5de8e19369176a8b5b285b41102ad314edb79739962552731c77838cbf6d968e6b8cf195b1517f4180c5b645fafb24fd9c68757799b3b318cb959fc64fc257dd74d77fa4c13484660580cc453f3e9a82c53ffac470eaa24d86c3c10859b72f5fff68315eea8e145ed24fa4df365a103b5aefc04626dfb5a16c53e230c1aee5c0416e127f8531a28c7a75ef04833e82d8e27afc18d6d80e4be41c094a8c57c20fd3e1f5f84a0da9da20c928ebfe49412322ccda89267e7ff071cdfe7b1f5165a3ab403acaeb93ec01e1a5bc7d2df8e73f82c417088004225f9a8b0c6dd86ef6074df44cdccff4ce8e255a45e36e8b812a87d90c00b99bd5a80e7a1004e895c326a5525be96665af5204a802d2e3fbaaeacde43c737d020210245f6994a4571c487d00b40f3fa9a219874b740a8c7f41d56c63d27ab26a48ed5afdb6d1c485fb73b0836a81fe06b6f1ba8ef32916013014b99e0d60ff25cb810e0b30495bdf17dbc5a156593ae2f18dc46ce5517cddb3d0d15b56a851ab29ac124dc0c0ec5873e10de60f2eed50745db188cb8063fef4708a2828919770ee1a20e41157328f05f38ba6225a848699706fc68b0a9445c06d498c2c2999e7fbafe43ecb8e857534e8549e8e34c6b8ea50de579adcdf5189b2cc8e99a2315e864513b840b7bfbb832704f60f3ed15954b5bfd3f485fc9e9215748c1980f070730733a7c83db02b804a5b4ce30288164939fc45f8f7933f0e0759d277a71765d4c717637d10dcc19d5bfcc178d37070c14714e308a845fc28bfe9db23c2e7230d795daa0e9123c8ad6d699d4612baf39135d664c1b82504a36049092c1137dcc5703ba984040ef6a5bf3eae4cf1173b7dfc71dfd2090bf0c1626fcbe959f6782b214afcd50a147dcac5c9398b02ea36e59af15a48a72550214a9e5ac98a8be8afaab44bd31161fe777dfc7a6f0a4220c43b811b48a6ed52652968d03047cc57bb7a9b69eb104db0278618828060e9ed2e22f0693c60e3e1edb845d257f1b62288a37fb59cb7a20386226bd84058f3e41a8005c5b22b01c5b659095d7bc05259701043a4aa03ea2e3730515e3028fc623b3994cb298b9b598caa18b2142dd8632b775970732f3b99b70f214118a2059d5c23c38523065fd5348afa2f525a0ceba00df9d786968e7cdc6133a693a8c4019afc143ed57ba7769bc49c12dcdc882646b1d86201f32815437af9a9bbb2b26ce2ddca225fb9849b188db8f8f3d2777172f7e2cfbf38fce6bcd6178fdb39c17f7a88874b01260be05bf4dbefd66c3acba9528afe2b1f5a6cfb710874e71d9c3b160abbbc04e740555b026715f2ab105c9e9103828f13db2e23b94f40eb4071d70b520219e13f7073b7d4896e319b65c987d7b8d4a0d29befc27ed7b59a1440088706a8816d57c82afda65608da953cdde6ebf4da0c93d39afac292dac3f4f3971dc54a168d31a9043022b5a00d3d472b0edc045af12704349612e828774a615727c747d0e200f0998925e1369f86766cc25d91f51d36e8311338e91b9e6977eccbf4351d81a65d67869d0d5d8c8a27b538ad1b19b4ff08472ff93873e25d5b167d84e840cf5d750d6355b13dfbec9a19c93fd3205c9d7db731f74eac691df0cd033228a378b62eb6c06dd9c4f60872c6d269840782bc298bcc4607d6cd6ec2bf18f4221d8a41724949f4dadcb165292698ca51dc3b4c7462c6fb902294b35412e247c5c3dd017b56fc07225558a6e8b463c26328810f13c724f82baf98f564bd133484162dc6d52890b7ccddef495d9070bfd2197a2f146c2bf8df41971fa90a6b9a9e23e03a4cdb5cf73ab30667d37eb51205a9b16d5b4555c3bd36cda456c38c7772fcc337becf283230b7688d2bf7253e8a2882cffc635f9046fb37b9360695d28d99feb520c24f3f15c1d597f1745161187338a32b32a646d8dd1a48c9726bf3c80d948ab0684b8f54d63d79009bf7c0143ddc5db7745395613c50d7982d6ad285ef598c6e9be9be0808102b131267f346af026b12fa6b4f387ce27e985f96c448c90827cedf4863464a5fc0f0124864317edba98da45aaa9304b72a178294d4943d82966a5257c0ff497ecb981b9d0b5073ecfe4f4992d428e64c446f481ea2d255a150670a69d43c5e7e3a388f9822227a9220ec825e88e1e1f6f79df3a23ba63d29289bfc3af369c200ac6a7b896a36226f6d2fd34c0f5ed1b236766d0102a0daae4075686055f16c336b55da3549064e08af0ddbae74074c8efa17c6a52e7964de88008486290bb82bc368a15246bcb635beea8857d69c55581e70a29579c07950241023d673bf6ef1e98f6b0ebdace94be353d7c82925cf2bbdcec9e2f2162a27da61e51e3a9fa6f878af6ba1b149def5ee948735d4685411c71a9a6692cb878e7e2b4b350d5051b7f9fdbe54d06001128938d96bc304108c0707c16d1c4f0ed2fc5d4755c5548865455c864de3e80005aebc83ad66e52baeb11692899d16004f24f0effe481b599577f4f3bfe04769f54f7058d9ca655583797e8662758e56fdd852b5652e343a627d6524bc47db6b57cb23514a0fe6470f8a1a0e260cabec8910936385bd5a681d785bcfdfc262b357c8eb3748e17eea197aec3b9930df549d66cbd343dd65de2bd126502d0eb74d35e6454418eca20959a0c7664aa4cbd7218720ed0ce0581a3b055290b8e11ab000e3c73fe274063abe5a00bab012995ba131f3bdfa0ffc3622a4606654befe561b003014a6fea1463178f06d9d987e1da73010af5983e8760fbe531f8ece9e539de025af5fe10800fd21b049d92a00110dcb812e0263e9d509310099f46b27fa38b046776001a9bb73220d006d2c9c9ee6a7154e0f22bb4cceaf3c2770cbfed700f2eb270f60b2eea2cce6bb1abe9d706936000916147b07d0948fa65a06946f4104453c4e3042a644b9e73e32d381480b8a07aae6e6561f32ef3765f992a8fb927b8e2beb49871916a363307f47c8b40ae395498999068bd367d97bff1466051be020afa1f42a364b41a8051244b75981b875b50087523b7aefc374815fef249fd4804a159f2ffdc6c612f1045dd6e5a0b36af2c47a5d36f967b8505c75d1c8820bf9ef4125c613be62fb00aae1967b26683c854924d8a68c8839898c201f514a350fe98c05836698064a2aae984a7bb8eac187966cd2710b3c08ffcba2570a30a7ecbe66792c965f9484a102c280f3aaeed8607027f81f423ff6005d1929c8cda5b4e3de8b4e257b9e256b82c1a99218c9d043a39b4fb2ce84d86f40aeb0f3b81c8451087cf615cbcd63662f5ab19cb2bee7e7d3a7bd42e9dddc206dbd4a55d2dbb8810ebd4f6640dd8b2d993dad971016ffe79d3e8b6630aba2944082364529dc2c276b7515a798cfbf33f8cb1cd8f6ba2df34cdd4b5b4e9fd9db4273495f86bdf525fc4113bd5c3bc4487bb45b48d4e0abbbb34a6344ed5b5221cb9c9994c4514d407c3df18c907eab376961d1e07fd21c23230c0e83431407ea093e062590d2d947cd5f2907d562911726e98f54c6bca53a604fe70ad71df7efe35fd914f6183d8201f45ec169d1460a5252ab4e0c9a43c176c88c0193ad023f2fa4539b3d5c37795fb37660ce7a9415d3f28231be586bc006f8247c6eab5bf7e585fea32c0ca5f4f89f2d22a9499b57752c202835334aac54d6a71c485fcddbbc42f03fcad3cf4e35ca14e8d2f9970fe6d6d311387480a2be4cda29da96ea816f8061cb76f4e02441eb0d976ae65765ec6dd6a832f93cd5fee8004996a4bdba6eec280b601f2b8e227b246f9f7384156b8e528c904313dfc35de0b0c5b30a9d2eeebf30ea7c1f5bef950957482e5169806d515e1e90a6af7de26567662c68f5d4a438bf1c82eba314aff90337ff8e6962c48208536346e9336d8257b4874f4fd46679a16f2d7facf34d1c449f2f2a77a11ca8e3efa058cf6dafc0c186900994c8b906046eade612a20e1a7074fde07f7546cd91df34008b84bb2b8439adc36c013cabc2430713790361392ed059648a0dc96f8d5081eb4a2e48c5598599571f908024f7cbf9f7e5c3a394fb63bfe74ed730395cff0b0cfa1db4489f65174ee7aa4be84f6940065632ab9e9ec22f9497dbf14e976ad851302514fa58eaa9715cd56a10252e542be9aaa7a718ba93cbcca205cc5af4175729dd786e75a3c9bdd1a095b92caaa9a3046291925c3e82c8b026e9d498f9874f208c1dd56353abc6da63867a2228b3a8202d52c7a29e9daf1e89ac305449c5ad58e8daf48412ccc9853a8c37722bdfc08bff72326b77425bd1dfeafbfc96255448ea710590645c1c2d4942d8ce83baaccc186b46e0d9cb7cff2d09387703fb0924dd6cb2119a591484c4036a8e4b95c855295f1ebe68fd997b54277e54a60fa634440a2ec45a91168f0e701e13e0a4534d04ced273b5cd7bd4a6be2eb96572bc42900884342adff1886e5727cabeb620e1a9f46e70fece37cac79d724aae91938f10502eaa1bb09d2b8775e2f9617651553722db448600527e8e935f75e56bf040c92101634452f8b4d4eb53baebc03ad6453c530c50cb81f02d7df6da23bfd99595812e74d7cab9d4fb7f8e60f3add955f958e6446019bdea3ded0a3e07ec73369ed75e7f35b0bfa4869b9e4bd8ede9f6b6f279f4e20420216ca450afd24549b7b24a67cef4528cdeb4694da7623d065906aaba902c5f0d9852f2a1469353bfc05e6899dab053f0166248e31e514327f339ded7c31afabcbf26c0afde0a9e653b681abb5eacd53942679fe5d4b8c9c39dbf39a591fec81047c8025f9a3667ad48a9a9b2a25b7122de08649bd180f20da41860bc3d57319c8ecccc6549c1b997a3e0a1f422f0bb197e816e99ab5338ba3c54ff7ab5e63da70090d4543dcd9712256474931838df808ac85d1c402ee743398e30e7cff6378daf8827b8ac481b53aaa405ba59676f4cbfba7ab8b255695cb629543dcaf0cd6f0183e9deffe12060f4443e15b3a441ea7a5b2a2dc7a623a1d79c783929983cb207590159acd67560b63387b8659284a7cca7eff22e23c2593863a0e282438f5c100c412bcda90aa5caa481cbd5a86feb641deced1615feb72eef08641aa57f194757607a12b61c573328f0bcc819f562adc1bf9e2beacc0d850809af3c038284e7215ce0f7240711a1d71a797a8ca680843f75f933b57c0343c5b08c764fc82fe8c8e29b1c7255d02b7bce615a8abcd9460d62899c20abd2a158902daf02a95d871c5dd89e870e0883ddd03228906c4ea316d07d33fd4f928ac04de6c0491267958445dc63baf696fd73a0ab3e4a37550daf781ade3545136ee5e8012900148e718668d8d15b0643d4c67f64c947bcb50e5ca609042e05646e988e08eba8d5ee70289f23d07d3e61b9c2f8b011d0d8382090b9c1c21d4ed30ac4a4b0386e0a41dd129c134a9f95814464d5376e304debf8860b88f922235ae1dd40bc0843e704a94c1af48520cfa350984d4d95a1257125e36d4ccce267961a0e35eb5f1f6791513be650b357b689c23b7ef2a805f2fa20790f7d337b38709f8dd447d152f2470b40d57503cbb7eabdbcb85f1281305cd332854b8e4409b50a0f7016fa9df5f48455ade17189fc397cdd8b031ba56153a057e2a7b43e7cad04a64227e82aa1ffa29431729e596225115e993b6d7799a88a635795832bfe5341dfcde151e44ffdaa08a8373ad103399abbc2a16c7363d9533d1695bfb827979ff0534e46162a21aed5b61008e8fc3764da2cc4d6022794c9ba2b7aadaa480a17bc994909f04cd65eaaf28e558e49a8ec5a4347e2f9943474d4c6a4a2aca5e53b04403df8179c1e6f9b5efaf5c180c784cb2ff944fae875df5e972e956f803b379d14832e3f606d2af854a72581aa08e854397c291e60d4106bd7f4104cdaa94cf237ea4fbfa48b4c680cc34f7a5bb09ea488621ad36e3ec918d41007cae82cff3df4ebb4aaf351c7f13a6071154adce6311512162424c4815865daba8a95b2815531d0a2816013cc1f2b19df2e1f12d3306205985d71d909c24537adff132f050da0a7b76a91ba34a0fc5526337b650d39d2d69c93447a4f175a581af56b287510dca7f4e63c3ed52b56172254debfdd7173e610331d378c0628a201348c1fbc7774dc9473f374a4d8b39b6e6dc359271ec7ea77f82c36cbe7f13cc8c2cfc1a98d07204d64e3b911d186964f84fe75dba9b0bdeb59b851ca854c898ee10db4529a8e69c103e469aa5ae52418babe8050e4323df666519f27aff50beb478dd230eaf612413edcf04eb9a4634d6cf50c454cc1de98e0fcaf71a5fa8ff10800b04c85a90188b7933b9a3bd60f49ade0fb9f4b47369955428dfbe94429e93c4d53a713b5f1441741ee73f9feab1837fc05262e3a9298fd21c46356a56390f99a3ea9d66ea5d4340d9322b0fd9687d4df9084c314d1ff341cb8b58a256a00e4077038f9df7694b2168c0f1fd5f292fc2188f3ee7d70210544fdb7afbe22d8c98eef294e13b24de83a7829edef169982914bab1d4645b2360bad8e3e5e2398c7c5a1901b4e0622deaf447e6ba37efeb5b272391605187dfca029bc311dd8cb73102941045ee0e2e016d2abbfdda8974ff590852d31c3b298486a2bca8d1e4a479f56328a2a966a0744a2aa48a45ac9a1adf4594957638ee4142739f68fd71427152d812e93719062e2a993c053469e28174427683aa58e532a15128252a529e9706c161e4be06464d98cf9ae1c159bda7499d5fe82616e2de5bea0b96f1ff2b483b7177153b6eb662effb3bbe46b110473d83a773213a0e869d4558400634788e7cc51037184a81c40c6b38e18416bf27019e4613fd6b5db7058a0e4809e35e828c082b3bc03054a1744d127e03d855e5d2538035ee7d4bf06a75f8efaa81797a416ed2f4333baedb2c71351b76eec6fd530681c9df2f96a5144dac273539007725ada7af9824aa3cd446f9bf94ae1fb89176fc84e77f561040f612d8c6043fda41af0290632aae15b5b8eb0091494128a7e3df18ccfa11a295bc2ed447c7e359841e047d2f02fe398fa6f119cbc3e881aa6ff5acb92d29d58cbd6d3b8b32c99b7807d0b027ec3342fa95232a8b8aba9d2d5ade2774481a1dc12577e518e7e70964714540e22844a6117f9ba99eddf9bdd2a6ad82e61bbc86b76714fe4a780563bbbbedeb469a2efe41f6c13d99db49a4b3480c67707882b67e9d9ef6ea0c09d74c52b8321530598bb24d0af82d0a984ab235ef5965c7a2413ae2196f9482252e39b3ec5f326b9e236dafa9dae68ac6ba0cf6dc6902013d21cd71abf110e58843d9af026b5f1099d0449eb8cd2911b006fa573f1eb85c27a128be2ca00a63f8eb020bf5f6f85fd1125028844c6a4f0492d08bae7672c6d62c1763e7c72d4b8c24057bf5fcf1a0b8a11bfcec6000e1816c2acb95fdb011d0c5f39945a5ac7f65c74b97f5c210dc4998bd5c8b6ad094a28b1b4d966db05005afa3d3c3df89800810fcf662587ba87cbf6b8f1e746b15caa0afeca5c95bb8d09263e9257dc5193e4fa12d5bb60a75e6031f3230d5c175e1d60a753b140695ac31c2f94b861b98f43c5418489c57fd3cebaeb2ea22656f020a5909bb3cce327cdcecc48b4fb14b750587321fa017836045374ed1f9cd02686f9ce41dc2bc5f5093330790682d75890a58fc069ae4c7a3cd488fffb13c05fe3919ba9012749c859da5331bf3c7ef9c4ede62c578c4d533b08f32079311c64277e57fca58372740577e32b64297dcf7b89af76716ad24b685c274ef44c7f8ca8f8101c5fc67de54376f434605a05d8bf2a43d3cf007bdbf5fba7b6d867d4ea64e0a45304cabc0978c8852abb01add0732ec81a1e2ddb4f70f49a8ab2bbf99d164b89d9979ca936269a91beb23b05f502a8c3d93b9c0124a940a531f29695685fcf5a16ac5bf6c74032a5e570e37f29d171ccd3472a01e1e86339cc0e3cefad18e6858e6ce8beddfa9103375fa8ff518100b247c891557f241e95f6e70f5766057bbba0840fa51378f8d001614be61ae3b5f0509e6539c535e62068c239039bf37dbab6401003a4c1c9631f6c381973c9c334b96641d22316e56161a87f46f85b2e68e186b665cada7398cdae306d9ddbd276d1074f3bc53c457496007c1a485bc094a52482e000f4830a8550bb2f347490207e4eb90647325147023aedd61bbfe6d144003a348925527192fd0d51581e9f3e8fc7fe081432b36118816a7010fcb008485ed99240aa6f47d4fd7ae81483bc51a9ceded16e00678496c71dbc5631ec3a33569dba74070df4d8d6fc599e36436953bcc27ba1c53a5116bb6309691f9d682ee2873b6e973be6441acd4c2601cd0e5e1f0933fd2259fd3213b85ecb70603399d7d36b998fae3c023fd00b5fdaeb5597c000f1caa3a416b66f334ba1663289eb9145ef03c4a53344c1ec76e1f97227d36f97b1576119e745235e01840ca55b51c74a8fff79f9022c3b050ead04a80e53205e15271d09edb431d93bc56d89ec9d68aeb9aeed44e68671342f86a173607e994c9ea7f2679cbb638cce82a217a2e180363c06532038bbc9d7254a872161ff5ef48ad656fcb6b64d1a21844893b609d972cbc70e720e4b0e509a8a66d25c5ceee9c9d171128b3f34363739eda447bebcc7bf90742bbe92b4eba75b9115d3be08afebe7bad8b87e5c61c4bf90bc6ada15abe09878e3fad9b87673212b96c5a417dedd59bd28dba31f7b593da31fafce5f561c42568c633e1bb773ffb2a0d8f8209913cbfdb27c989880159cc4da6067f75835a18138eb65fdc4b273dba7380f3650c12db677e3c10624fcc296abac58b7583dac279ecd7e6495d553594fba15cf8ab1d7d3aeed861b8b15eb56641289d423232bc67ad2af70263e927ae4cb4764528f65920ff9627dc1061b5972b031b2f060e37d6c2c99be13d9ac37d2f8c8b6ba52a29f39b15058d74f7753210a3da0997185d1ad98559f26227661082f89d44382121f9bba7e5e346008fb690849342c5010c2ec92aab8e10b9a19206088c44713114950388ee3ce05691717390ef562c5e44b906ec56fd40705d2add8d3840f2041e246eae956bc24f9742bf6f4d8781fed7ad9b87e80b85e4a6cfc6530b4978d8d7fd9b4abef936559d6230383ed77fdd1d5c14767c647b7e27510dea759ac58b3622fd813128aec8938bbb824a7939191318267dc901940bb3894675a71a25b9af66dab9a931bb312e9561cc2bb594dd3ae69a1f6ae9a16b6ab5d7ded1d28824033f499f10a3d3f1788c95e23b6bb5e27b4afb22c49bbd86a608d760d20b15a53a1e95c4185d5f8c76a9dce153ad0b44cf68e02cc80a707c8f6e5e30d08095dbc147c7ed07aeb3d4a459cbf1d45784cc278ef2beff198ccb2e961db704c8c73abfb2e2bed99935e6787c7c90d0e2c27d280c2306c852050188661bda00e44fb66db6ed337dd6a1b1d09a4a3b09154bb2351ece8c74ab0c7cac718bfc8833c4e24bfc86b72ca098a4940b14636c12ff261184e7ee1ef93f2fc222fda31f24ea2ad7774fbe816ac77bbb3c772920bc2b9a01d508f4cb7b8903b1783c61a8e3f19339c76c578ef46856656e030cc15927614b66d64a6632325d5ea9068efc4c93a0a1b663a38de1519cf77ed73ddeffc5863b9c7f9cd8f3520318473663738f3c68aecdb019a34f6449f2cd62eed3f4978a4131a7b37bb921a5dd27535332b34f68210de4c479b926637194e13d1bdc94d16962717d20342b8ead15dbe3b9fc2fe2944327dd600b34d7170c2db36a4b35643a059098a220dffb00ff7c4588777d8892635a9498ed9d0651ab404e821685ed2af886643f536f181f5c7bce8f2ce13d16c8c3314becb76c213cd28b893e9c46ff121214174e29cc11a7e210d3d140ab98064809d4f9e5e66782941322d12dd82ea47ba88ca930c7099ee0ce0dd009467f823e548299be6e70a7bb76c8b7e79994eb645dbf43862a58782f07ca78ea675cd7464a6936dd1aeee3add621d84b08903d2de15a0629152b1b813c7741008040281a4e4425092f052cec75ca6b530c2cb3d33c8e85abd1b924873839f18f8aca0679e2066021d15ecc020b38193289e82d60bac5603abfdde50629ec0c64f0a7a489798b7a3b0dae5a43d2e6911e74fd67b248afda8de1beff11ed547bb8a381f480c15c263fb56448d6111373cd051d81b154847615744e74e82409399a7d4681848b7f80a3fa00248bf684122908e22888f25e1fce51e2051d83b716ee4412cc830cc7462cd90b8631948bb3cd051f808c276fb7668e10eadaf7d5a7da2a3e8286cac2263d1883f51e9910649bb1e7f90f0057b9b26f61c11254a94997e98126a47d23e3134ec2559f992c9c6df943bf00b0ba027ca260036a08069b0550181260c850ac3b04e1c23c24f1811cdca4fd8c4a921d0ec94bcd2b66f07481b92d929eb4a93524ac95a120598616758a9c57f1a10e410944084fe1516d546b05d270e179d75d685d56a08e7c68b6e3635a9494d6a52939a8c671b41d14b4318652dd21687fb76807c60f61422893a64d0810d12ba108d2ea17982c2984033a35d6a5f2951815cd31ead16e41e907515ad69560f70d6f42ae616b349b7f8ce9cf924bcb3497b118a2edf37379de14ca04b4378b31b19098465b31b2b35baa4df7d5a0808cbca4c67db321db09db417dde28247678bf638d6db72437bfcb65856c618fdae586985caca737475bf29a2df9395b764a5c8ca280486e17b1147641269f06511372e41ff3a49d7144197f46fd025f126e288302b228ed80427e288394c228e98851038263a8161f8f1267e6485e5b3a8e27cb493740d0f956b524628b08823c69a441cf1494ec4d1369186133866068161b28838264ea4c1ff604f9ad8ae078d39478b7888de78474527d1ef31b4c78ba0dc6fd0d045a477dca36f24fadc829abaf5c5099b3b93c70ba93373449f0df36c25ddda89343872d1361147e48934228ed845a411048e895f60183e8edf1ee2cc0586e1c723ea85c21e714befad1540bdd10ae07c14bb783cc757d89584123f318ee864c42e249ee31cbb763c07c838a21720c61163676018fe0d11e0925d3a9ee304a0510d8c233e8934f83904f0f94e00b46f6c04701e02b84c47275722091e48ecd011cfa0867b117b42c40710bdb0ace301c8a1e33fe4d07100e4d0711b3974dc871c3aee9243c76be4d0711a39749c9543c785c8a1e3a81c3adecaa1e32d39741c26878ecfc8a1e335878e079143c75339749ce6d07130878e039143c75f72e8f873e8b88c1c3aaecaa1e32c39743c468e7366757c940d414a2174db1c9f58e8b8d1e6d051afbd4c8e7aed672e230540d9ced01f39ced61e71999e3abe1d73ead051573d8ef8fcac45349be347bc3ba256c04e661899c76f478e775126c7d45187e8c871840e991cf3881ccf741c71197aa9051d518548aba39e6172d06b013be7e30eca081c3b961f436711746ed12dfe0d3a9bc02dbe884e24c416ffa37308dce25b7ee4c2abdeb65f70d5db76c545eafcc8a33a3f76117170a4b17aea43d4db1c807a5be60f2c3100502f9da0dba8d387e9a24ad5a837460a45a3de95093a4bc5ce14558a9d27d4c94ed37982de5222c1d49b421acda8f734b233aca19da2d2043d759ea0d3f3041d9c9d6872e0fc9431559365c698a36c081c23a51038a627161c13190634f9194e9c356e216becf97c624ffc6c97e81cc6da8968f4e916946ef5c41e50f4118dbe1d20d047b39b0fe766c58aa9695a089e0e4a39aa32f2077aab0ff4ca70a1978545efaa855e954aaf89d23b3abd9fc7422f1783ded0896614a42b744587642a7abb4b42d19bd278dc2669d7e7d9cf64bf73afd88f65bfefbb688665d22ffc5aab8d6ce29b130da17c2552bb60d14933a1288a68b452dac88c8b6e655d2009b55f8f27eba25bb176add8ca2cfb435e74ed97659d88ee45b7f8a22b212ffa8f1bb5ba02d51e211096f622d1ce496b16cb9c9ce18af0c69ad1e8e6120c916021993fbf0871625b4c2674e017b603d0831bf8852dd865371cebddb299dd30bf7ce72dab1fd7efa3dd08bc44344b7a475ad297e94c47be624fe6a45d31f3c20ca11759d94d6645b72a13dde23a816e71bcc9ac6093d5b4675d2f109695cf70ba7523cfe7519d380cc3ef2a84b79368ef241a6b4362ccac60d9d92e1c097e3b62c6712c96d56a5351bd6e317712cb4fd254b40ed6345ec97bf205e184d589d32d7683bd132742e917922fb3241a93d08824c61a9ee107912f267cb42bac2b0e48bb4c1401dde263c1afb6619cc9ad03cbfcbe01f7c0f2bd1f84fcb0ad88d500b5826a255e0839e487bf2010e8a65da0ba6d1347be44da376dd32d25dde2b6699736e3b7438b21cf6ca75bfcece6e646be1a8ae55faf4b158bd8d3ae55c8397272ab5b9c33b526da1502cdfef8989840bbbab082d740cc3a2ce2b78d6c1bc9281baf8a509ec93c8340a0f0dfe577fe3e8968764992cff4579774dbb4927ee1d936375734d15a105edea93144b76a5ce2b414e19d389a16799a28b11247b3fcc9040c274ffac53c371c053740b1dc3696393ec6a02061e6a9b54dbb2e6fd14adac55f18205bddb046e0cc1cceaaac77ea4c1c9c2f46c4130d7211063a3e5afcc42ce7c1b2167778623b917cfc18c097d5488caf716f340de50b025058cc31843cc3bf21eba0c186ac051e7cacebb615a024edba1fcd87a45dfc85e54f2df010b3fcc9202a2c1f3cf8148d0f42581becec7b9d4ecceef9404a39eb47c35dbd89077e8d62f387636665064541e34731f90a81b49684de451a35142a0c79c2e7683a2127960faa027f5ad6020c51b025cb5728428e65cb57e8f90959d6020c4bb07714bb1f8da4e168701067762cdbfb39b1fc8f46c7e6c042d463bd9bb47714fb683c2bc26be231f1b08907c58536d0d4628c1fc56e09e7c6de90a3b1dce8238e147342e29cf08427f1cc48117e543b1df9c2f54858bb1df9c2fcf8d1743ab0aef423526cdbb91847d58cea112946a32d75d24957e98e48d1751fa93efac8f4942352703f41782938533dd2adbc7bb7fae98814a59f20bc9124019859d523dceadcb918f548a94af1f0e14df7e999f11931216238a92f5f41f9a8526c381a528a82997850b0930fece4c3031edcf12e4549472445f8136cf5c8096294192940075dd248835048b49d0ec3f0a30d2a89fd68804063af4a4e8a8d137b4f3e28987ca96c2ff56ea14a0c055389fdaac47a54623a355f12f9c20fb71ad4bd8d37086f09d6e9eccccc10c2c4136b10467b537a526c4e3e293d293ae196a43baa86bb8a0d9bd1536884e14ff5c876136f9f115e88f3e835dee9a4d8707554c34eeec631217460eae59e1941d4cb3ef6863a2936f2150251efd6aa37d4f921c566e74bb1b1fc938f7c855b780a4f3e9d0eff5cd6cb3c60a713ebe59fdbe978399dceceb63de439395189a19e1ac9f8e5cb08d7f574a373758a38a3e27e3d1d8efbead7db59b91e0f89f41825965fcfc9aa4e1167565f5979f7cbb118314efae51e963a459c6179e9977d6aa83ce5f746ea1525a3a27878879fa2281445a950948d7c41e9a06a5039f205f5235f503ef205d5235f7662f24587a29c505412f902932f97799827d4016f09e6e4a5de968dc154729258be4a6cebd9b8979cc817f619b5547ec20f45b36defba73574b3c5b2dedc817be0c6b4947bef0b78346b59413fe07235c2dc146e7abe4c8d7a896c256bd357ea877fbeabd11b20eaa5edeb1b7043bffc3912f234f946692046046e546ba93ceff9294ce46c29bce46b8a79cffddc89791d14fd703cfcc11d2bb1aa56f374c0fcf3a9c240033a894732aa78f7e79c70621ebe0c0ece51fb05efe49a1a61ef9c23f51938f7ce19ba8296672225ff8246ae2a1a61f9d110d4d3c1f8f7c9d6ee40bdfc7a7a727f6d1a8d498782c5fe506a612daed1e58ed5d23849c5e32071ed8db374e908063fa060ca39dd43556ab614eb447a258ee1b8d3c517beca25dffc26e9f47a2d81fdced1dd8ed1e8962bb4fbb7cc599ef2cb57fef968d3c3bb01a4f1301a57dddacb77b7f3cba0aa113dbadf6ad5eee91f3311344be68389c1c6c67c38548321a1b1cae084ab05dbd0db35adb68a18a847db6b05be559fbf133067a4242b18a5e1ca163d659f48c8adeb597e49d44be3849922434a613fa8d37dc6fa4f1a2a85ba247fe641a7c1286e92ccb6cb24ed299a8ca48b093841cbb8925f1369b8131cbe25b88e279639bb524f2d544ac46b3e19f9818c2be4785709bdbb6cd8c09c3344f1732cb346dc639ebdcee33bbd1c43a6d668d7dc519a651ed889dc1bad54de665c61d33b08b6ef1ccd9736bd92dcbb60c87664cba15bd298499bd733ef69c75dad41a25b63f95b46b6b574dbbaa6897172fbd3a24b3dbbb8c76a61269947d3ce88003357c61e76feb9c0e523c590312f30a2f68c31774c0811a62a76f945aede3318d20032b9c018979450aa070063b57500528f8d879fe0830aff08236c4ecacccadcb5638431aac3c65ab011b9e71186656a1a5209c36b3a6c3db37b366f587aaaf6a4dd58b4255e69a52b9cb4813bd3246a234dbfe6d4e388663111606cdb6d91b77a2a0061e7b234fb7ec8d345efc584df6231b6cfcc2f6f9c6300c9185ed73b8bdb9d626585ebe0996ef46d550ed36a2bbbb7608aa48c22f92d8cb5d1441878bacde5693f06638f3267c2242a14d12163a8a28b29a1899575d91b0d4cab40e3a665d108c856358285be69c1b597adbb941d984358cc39147bec4b61efe612fa4dea5689c893cf2c5339127f230cfec912ffd6d0b43146af6e0688fa19c843c3bda8eb6a3ed683b48c800d5dc69c342a395418544cbf20b8565a9363c637363bb27da20ecd16eb41df992e204a24b61e489d24cca53ded77aa4d613d364ccc9a538c96b4ea438fd042219e719294e4fa9da8eac474e55e3b1912f2331de3a2d3afdc6a3dd64383f32e3c978b6d78b0a65d4a963fb3cd386615af3893c7314f7f04cb44198e1a4526047321a9f9c24da8f4e4d96b249225ffa29d98d7ce9cf9a69d3e36361b347be9ac914ca90061bb4c00a33fde9235f5206790863491078008599fefc91af38c50ac210e527ca1766fa201af9b241851a9c21ca145bccc424e0210649ea00031ae9c4489c996ff94e79835239a07a645699440f5b983ab31ed1aaacd176b47a24abd226ab47649537a97a24a54a1cf9d2dd3a4964b0c898d326d22094f18ea5caa04264fc170afb0a0219345a16ca36da84b7756cff768f68a664a6cd0d74d14f3574aef33ef0f4948752148e48a6d257de6f27f2a5524f292aa895eaa9f75b47be62d4953ad946d4d8463c92293e933111f1fd153db18d781535b18df8142db18d78144d611bf12a54856dc4a75014db883fd114db8837d18d6dc49728886dc49368886dc48f28c736e243dab18d7811f5d8463c48556c836dc47b74856dc4773406db88e7280bdb880f51196c237ea320db8807d18f6dc44f2a621b36e2333a621bf19292d846fc0a8a28556ed08f8fc1af4df442dd921e4296df36593bab6f57dcb60dd5ad675fe956e4772b1ed5ad88b2b15135264ecbacb7eeeeeeeeeeeead3750e8c78976b5ed1b6917ebbc610b1b9b3447a1494facc2a6d81b69e2e7f3636f6412e38d69fb46283159b0033ba35ffa20daaad1a0e8f2351f3996add6d6dbcb59de1bc57995d5ad50d75cc7ee0eb506dae6d4fa6785ddeabed5c9b21012442b0648efdaeaab46be6b8762c63b1433f205f38a106ad42342d8f11061d7fd7daf9b187a1783be6e5e36312ed331bcca2a01a78777c0e9613d820503521efe8803c2abd4232935aca02bc2cb8add4d74965cbdef7a5b327d3a080821f753bb7eb8ec21f5214bf5b69e8dea92efdddcb2203e80106917aba789889f5008b79b2164f9726b64df3bd717c328d190c0e816c9871486eb07544212c69c4faeeb89166e08c36ecf3e7a976559967936cb5c3ddd72f9682b25e676286c27bf1eaaaf94d83ebff5507dcbe696cd99b51c74bed0995bf6ba7959d12e938dd74cbf4358d10c2b625991e8dca22912899ea9464f42d1ef0d574ff786b07f5d3d50aacba75bb187eae063c7618afa00e244b7e2493da67a5faa5d255522dd8aaf9a6ec51fd95f34f535eaedd95961acb68a44dbcd25897cb1165ff0c4941b2d6240e038f0687106d8963588bdb0f1fdaa820209e2a3332a5e49dab5cda9799aa6656f5dd23401822b5e21642abc40898df6b262b1200c2432155e4085ed99f8cb02c346cf824850dac55430c10d6c3cc90d6c601cae1fa6d1c331d24652c491e9c05ecfde70f5b8a078fd6d0769f68d2a01de24ace84def8dac751fdd0a725013c2cb3d33ed8a2c28bcf1c65bc655759ee119564cd6489a5ce8ac30da154723568cf5c485c625894b15f12e4a5850e2593e31c4917ada755f3836b27a60e1b669f5c504a75d59dd6abcea729cebe745d32e6ec481b8178debc71586eb67be68dab56d730b85362259f6b2611088158be149dd02d1974d0980dcb02e1f574fb74ca193e84dc29252a61238eab6f76ceeba671f57ef0dcbd59bc4e8d933993de34efa1cfd08cd068152a61208047a0ae53e7d443b0a3a08ca40f3d9ccb2f96cd6bbd2dbb3f3d8b29b84ed7afb2b0f5119f9c357423ffc10e3f153e2867dc9da0790f8a582b8dc8559eec38f20377eccec1d47415702f48dcef7b7c4bdb16d61884265d97650b7b59c3d97007d4ed0e779cced86bef2ae49db7f40653d46e70ea2dc377a93b0dbb72d0c51a86dab61b7d0390a7ad32576ccfe64c282449f94eb33c082449fe721eacf0958d04dc226113a10d7be2440f4ce5981dc88f1ec5b827450fd81faf6100572c36e406eb81cf595fb406fd6e30794cbea5bbd2cbc7ae4d52ab55a05498156ef401a84fa88a1a79870ea237a93b023c9ad914ad9bb378fd24b17d5c85bf010e96c3b210fca4977ee56f62d41bae8a21689ce23bba8daaea24361474722b2621b2a34d548a1dc89720f69cb72a24aa225caddda5eb8f726fa26da7a137d136dd9b7f3c8525ff95641f547eaa1d468d21f5b8f1f40a9ad8b1f0f28ec56b9f298dfb62cda6ddb424f51b6f3a16e9bb9bcc426566d9654574325e51496b40b02987609ff11573a4c04fdf050e85be94274fba07de129a5464a186ea491c887535695d172ee97f68ce5dcaff02ee77e9d5e295779aaa59afa4546bd1c7ba995552ff3f40bad3afde243bd376c73edeadd5cea0d4354e57aff54bd2d9bd55be3d6b01985e9202e0405bd44d9c2d00be446f629d1e387871ea26cef8dc9837bb833b9cf6ccef398b5ef8c2fc10d85e5013aa8caac4e1ecd6df53e61435f7936fb2b87c2a652979129fac30c7a9f7062571e04bd50d4d89503416f1276e52506cd6ce8257463068b22d1fef0c30a75fd505d3e36abae27dd8a6c5d3f2f9a179217154d44fcea20d78fc95eeec9a0c0db8866dbd65b2cab3d2e28ae27ae58bb548f2b9a7c29093568e5227a57cedd165ba58521dc7aabdcad9567b4bf1d22700b4d0ce1944008fbc7c67145a2ddbef229fa464107e925d2f1db21128132bad11bcaced16d72268e0b7d4ed066b939415ca8fee8c7e0ea852264c466f47a31cef2518cdf0e19a5180cbe03df3b5c583ddd41143f75f6e13fcced5dd73b97009dfb7ca82a013a7750e5cadc45f482cef210373f1a3dab2bee9dd195e8a26ac466e7eabca053d2a88ed010669548fffc2d413a577f901eaa3ff8199126d5ac5ba86f95e53fd09bd9d4e7d7238612a87ea95ba9fb50b36ea5ea4bcf3e037407df9f01baded87560f67ed734a3b1d3bcd6809de0f6ecdd812f79df0e9783e0acb704b609aca6974c26f0b19fd55b7a07525689b262370841d61397182eedb2c3e51db76b748e8ab8c76f899088eb2608544da1167a99c7d1d1b98bead62d50a8ba9ce5a29ad51f2e2e75bba4d3cffa8ede12d82d467617daa0ec5d16437a1cbddb75c2ce8beacd44a2cb488e7607b57c243f25da66f5478f18dfb6fe7610649433a20457790b9dad0be9acecb29c5489b4dd585c5c2e235d688c97e8ea2065cba2978865790bbd4e5896574ae9356259be7a8da10c19999551897c3cfab548b431ce9f12271be360742b6e2335907abac57a4202a38908a3898841028304861636be848463385ba1abedab6fd766b44c34d927a663278f1d6cf697925505d22fad45d87313053b639d5d94d5ea8119031614d4e91ee599ae630fa420386d3c0b4a77cd0ca1f6af502b9779eb3a9a34f890a4b32c7d6a2104b92871b9a12c1f2abf1de05daac8deb5ef9cfdf925fa3f483eed9a71d629faf64e44493ea41e1214d2165d3f5ad6f54543ea21f5907c7a5e36f2a5b9528f2781d12ed3e377d78fe57c90eae81c4d5193abc775ba4c77270aa45f4e946750f443d5d68246086da87943e723da6fd9b9dfe7ab5bbdac9f9a37785e4fd69ad1add8baac9facdeb0660853aef213ab50971af9129f427dc8d7a9fea15643efdab950d1aeedac1e8ec96cbc4b8d7c7d8f22912662c54c104e2384dd8330fbe5a28a2696485b214758105cfb771f32826c9f9bf121c1b2596dd247acd845854e7a7f3bba762430e4fa2f9a785f367bf62138663b485af9b41b56f4d0bb10f55c3fae302ed33ee4cbeb97ec51662799e8d62dd0bbdea85da6b36cdb4af4b28f8d3fa15809f08427300cdbfbb2a113c1386625c0139ac03478fb5dd97e5936c4b2a19bfae5f5cbf650e861bb460f7d088e990f6937ec474774ebd606723726206e1bcbceca1db4c3050e934e42450f941d2e709850e1a35bb1b3de699e6ec57360b4b8e09890a9d09385652b4021c75ed70f157a9858d74fbb980a342db0ae50bdb129f84dbe34d7cf37a7eb47be5e36a0fab28979d974eb7513827e5f36f6a5e475331a3dfea5a4eb402092070a8d60c100eddf8db07cf9aa911af2255e9ba06fe043a26ff3a08f46a35502be6b67e2ab5a6522ac0900cdcbb244092c77554b6496bba72534cbfd8aecbc20cbbddb3ceeddf426adb60379dcc703d462bb2e6e0d5e1258ee9352db799137d0941908cc9e8536143ac869ffb8ebaecffe85be1d9946bb0721f756400b8951629c8f76754c82b3137b92e0f44ebbba3ad1547464d2918b8e01278619dda3290c33baa42a0c337a47510c337a48530c337aa42a8619bd44570c33fa47571866f4a6311866f414656198d1515406c38c7ea26798d185c43d58ae8e688d0780de56a100a0d7b3b132e3b1a65b351e83469b9a30d6540f78b66ba2cd8c4be335ea2abe333b7bcada016a695420d42e49f21921ea2a7a4dc2d67412300ff320926f7c7c6650b64198c632c3cc90bad5ca49bbf8660bcb1accb2b66359e3b1ac796179a58a9c42796626de449896c15aedd94955dc605749a211270c0551b1b88d037bb70e9328ba7dac4085dde21c2680548662f9880c9601413526b489e5bf50ee96d480c0da8ea6a35dc1307c9884654dba0552cf08a16c17787ee7b4eb6630cb57d55996d39928dbb640506e98651eb0650da78866e5a78c4434db8f55c811594e36baca5fe8a88349188e847d2acec88f3e888ab3898ab295b00e16ca2b43d4925da8c783d835faa9613b4ca7d18ea88c5d4d74e64c98e977c2a68974d5b5205cc1da10583302bb4ee76b38114717e312872bccf2f1e62596e92d2c859fea51558aaac71fd1abb17cafa65daa585aad4ab15463b85aadc2b85245f0e063068b38e24dd8c52caf64fc8976dc8a1f5110b7e25154722b8ae24d3cc7976afca71222c162a5924be88daa5ff9152c5ed6b83aaf3e7ab7a23da28d2347a1c827cadcaa9ac5be4c9b28dba6dc57e8d592b0b52a1657c399d9c254bdda0e8f9398557911cdf6f913fc8196c0872c6c24428fa1c71a1abd446f105bfa4c2bd455aa7a83a852aaabfe65f1a7d28fd14326140ab55a3d3eae50ff2a0a4495b810cbe3b72346ace13f1a6dc356fefd6e967556d7729720f6c7eaf2ab83ef24557d74d59baa1ee9eafd2d21bf0241f09d2ac6abe80d6d9f94582da13aa9e24a5579758e00a6688af2e059428ff1def795afbfa2a9d4e55534888de0eaf1dd8a8e2ea9ea4d9740fdf415955f51793aea2b2acf5fe974d451aa9faa91be0a55b95ba35390bbba8c68ba8a5ef9541da1217cf62d617aac3f4c57d51fdee3579548664d35eb16eba04b177af4582a8ff5b6742b5779fc0cb0f2efbcf26fe58bf193e0271f57ea3d62bfabd47fdf6ba6f2855f0daf128661bdfdac5ee5dd471b461be706e1c724a84c5809ceaedeb43e456f109bba8ade6855976149d5a8ef006c4def3213eaa8d15750b5234dadc2d23b49b36e951eafc4488e1e1f47a5afd452a99e7b5cd51ff5a77a5251aeab2ac1d82faaaf6efa54dd745e9d4e6f552dc514ea936a3812353ab77c4181a6f897622d12edeaaa55fdd13f3d7e3d423ffdf4205682efe2e81ba9befa4a5e25a554d578f963f5d33be9ade8e975757ad31b4489787900b61978060f4a99ae7145db363d7d27bd4ad9aec027c156a5c4a7aa233584ab1ef2fdf6320bd6fb843d9dbb8afb29da5a2f232b0d517a1160b99fde262c7719f406b19c4a6d262c358631625ca6596254221c0a3d8335c99ee5b44b65f6b3da85acc27c95cbf4a8ca26a0ea574badaec51b552aa5baa6699aa6699aa6e5ace20d658b64562c56abaf7c948670758ede8ab28dab79fe9450ad747185decc881cb2eaf656b448dbd53be9add0ab95c0c6558ddc92aa55ea2ba92a44ca5f281ad62d6e26dd621963570953711fbcea1704c18332a75d60e56d75f96e45658e8475ab49b718269bb42ba75dcc5645a38c1127e2b4eb4a18ac5d77c2244c76376957e93c499fb053127bd2529eaaa813355198e597e845c23ab09bc1da1536099f6dfd9a0fdf936a4cfa85bb18c1aae1442194b5ab449ae79266d2ab3eb7168dc38c428538f2a501811ffbcc1a4eb7ac17d58f9565859c9638ddaaa1e5744c0c56560d876b28d1bcd6130d0527a1103d1133524f812634c3322b5c895d28c42ded5fc86a59c62d273423b60aa1287de0b51da206cb6aa1760e61b1638c6d63160f5ac2966d370660f242ab1981627116fb0b9b8c59ad8b2d54d4f201a1b6e5fdedf8ee5d41d2e01579f8457b0dd8951541062a8082d5c060b58ef9db512fd3b10bfc8a36710c56bbd784f0b64d6b5ce3d4df66322b7f1b8daeeb68d08db33d745d17d3c27a57e8ba6ecec955905a1e6cbb7b948ed410d2c89d67e68abbe95c6d721bc6b10eecddac9148f323aad71e5ba8e91f0876d105b59fe73d9c73ce796f9ee757c0772c962cd2f2aea5fbbc285f4396ca5d330127bf9067b092937bb052dac1ca7b120e564a355849a36d6969696921b5842d2d2d2d2d2df32d2dacb7c46f470b470a59735e32c3482965089a5e2b8d5d78f452eba53cfaf49d70d22ed23913308c46736404565564c807547cfcb09c062e10793c29f0d0b40938a66110737c9c8836d106aa1409543cca3a1635aa5dcaaaf6a9328daf45ebebed1fc8a8b7b1e0cec29dbb16a3588e09560f967b8cca9d3b57ee2bb5d268b7d885e85ac380c58abec238ba4606e3f02e3a8a5ddf452a561443028611d9409433625777910fc7aeeda283188713ec6ab948bbe892da1c182c813382d51e32b1ed840f6cc0319d0386d1228e56d242a3c3c2c616fdc2c6d7410fb76dde60e3d360e304417685dfe77d91e6073edf3bf0741aa9ea53542e8305b5f27d5f4915b6b4a8b4b05a482da494148914b25a2abd0c96955129a5b24a398950a09d734e2d3ccfeb3ccfeb4c073f9d0f148173cebeb982edba6eeb363678ef445db75aa94a27959419b4d02183e52ec30b967b8705cb7d450a963bcba94462b152ac9095c24a5151a5a480ef404a0a59a8932a355259b5ac88441be721b1d50cdcc0097220086e9313993ebd59b97b51c746b183bfeff33c4f8b43329d2b9ce0a30376a7d3883ec16eff0e6e9a70840f8be8835649f948216bd572e22f442ba0d76dd3ebb61dac58ae869b08fcee512eb3efb2d845b73454b7bc73f4ae5893d72d0f85dab639ebd62defda392a3d2a02b51527da059e3bc7dd0259b1e027aa2621ce3d6b5710e7beb5cb3b77eea87681e7ea05b262391c84a28d2e097da35149bf42211abbe817ed9c169574e4a122ecd80fec6d980dec0a2b5910da29c483b8e6817535e36c61ba39a7083c912024b5b0280ea2b01c8de5ae451c58ee326460b97f2cb0dc57a4b09c0b89994252b5b4b05a522d2d2a2d2d61a9b4cd94ca34e22385ac161138e78cc2ce77dca41b4a8402511f0a8512819f6976dbac97bbe4807414360821bed168b542a152548200a2461dd8ed34461169220e98c6f6cb20b2400a19464a230801ab86a47eb00738703af3a95e0d2029a952410051e9651861512a29a355142cfcb1c71bb3f6ed58f93c21a8e94150b69e8c02869a66d0307cf7ccf39ab0dd398a426d9bf79d88663baf63623929ac000b68e80e7e1d8d5ce4c10bcb55b0ac451e68ac776fbdeefb4e0a53aa528a4a940b347124045f0736a07d3b66f7d20842c0437e7820f5cb01d68087a4033b234a9f2aa592b20352a8c90f09f6b863eedb818a3c3cd3fba8e9e01736ded577b6e06d0c66376e0ce147512bddd2501c37ab8a08ec8a3cdcd2aed1d0ba2ef038e1a171973967db84e6d77d9f1773bc2e87c1b083a34143fc32ef4223bf4ccbd511c34c1158ce5e282c3743154976a3cfa34fb7e24f13a1795608b9bb9cc6a3cf0fce06b3839db7d9361ad4854627f245e36a8c795508391f17d8b9ddeb4178dbe6bbb4d16ce48bf6568dbb70dc6b50962fd3858654efa8778ebb473dd0b2dcbb6fc7c76d560b6929efa20d8e8d0d4eb49936b18bef6c596f2b841a4ed73652ebb87fdeb66d4568839d734e4e9572954ebb52f5dea6aea1b8e56ef5a6ae739bfa8d39a9b36a4bbd215865fc529ee28303bb39c16db5e3ee5279be6f0797c5b6cd1a73baa5a5dec587b4697a88ab6d234f10769ff5d3b87bdcbf5fefdd3bafe3eefd8777701381208d37364aa24d37c1f0dbd1753ef10261d7d89b76ddb863b547edd18a768521aa852edb4535308059914d0bcb7bb3e8aa87ca7613ed91c5132eac76178a847576acd66ad99813b368d7bca671daf945e39c76eea1796d48cb12f9ec4a099573e7ea8d56a5ae3c286cf4686b46cb08364e24d192588d7fda26c6150107f6a2220f035c4ea31a89332e2fadf3b7a3f5d8c59caf8e67869c68dc7c57238f575f3eef2f3c9346279f1779dae5396917733fdc878a857cb9fc1b037cb84b3512677ca8ab1a357068d4adce5a071cf8a45c45a34d0abda54f90de960559a496502442a1b69962e22e047718ee33522af72b43c5c23d881595558a8a3b8bbb8c920a772046f7149a4425d0726ff92c77162fe45ec1d0e7d9db3622ee34c4fd6f1dc81c340eb8ae546fb473ce95c934a7e9649aa69269ce391acd7ac1afbc5b99ab5369130266068862d59bb2b76d82a83786bd6dd3522fc9deb611d5dbd9db36f31b10f5a6d8db36b55e11ad97b3b76d2ea35e14a9e68e6cc845b05e990c0a368546bbb2b232575656a62aa59b671dcb5dbb912923b7ef404061441105896fb3d9b6b6da5b89f6dee92eda0a4d6b2eacb64dcea65d1a6b014613cb6cb0daa312cd7bebc59bf47adebf0f6c79cc61d1e31c9804a3d1b5934c2ccab1551f52e6163583dd7ecbad4d8661361c14601adb659cf9d5007ed96e007ed9beb29dc54b31a958ac909562a9b048a512ca53a5543cda16881f60c1042558ed2cdf08acb789400a57ac9316966b59116947a2440ef5a13cd48642a11ebf1da8cfdb5e5a946d09f660e73cc795600f164847d15ad8d8c5e83c4ec90f150bda374d84768eb64d8f8dcc00da0a3a385cc36c38f98a3346e28c0fbf0f1401f245dbc171a92b269a7012791846fb4e687742ee7bdfb48bc62ebaa5719547b491a7e3b46fb67bd778de498f39a76be7d3c3479f927627b4934007ccad7a13e5d8a24f516eeed6df364758ee327458ee2c6f1c702be118f05a0ecbfdd216cadcbad472dc45b71c0ecb3dc6998bb0dc514458ee1ef711b76bca74bc515d2396e35a90441a21b09c101c9d24d2d00e7a004753c1aa9703963b4797e9f75a2e0396b302c368bf6d5967edac7a9bb05cbddda39c41c8fd426191441c5d93448b38a2cf4ec4e144a46105d25b905851bdadcd8161b483f5b68ce4da567a1b0babfdc06a3fbddda499d04bb05a12acf6157a7b07bc63577448665529cadc425515da4a38b64ef576106c3a96bfed4890266dda75371b4f095fb66cb642556ebac55915fd748b7fc88ba0744b56518f088c6ef128aeb4d293920ff3f04b3da530b438831309b2280c86e14fba65d12d9d9c6e71144101c3a75dda79c6aba25541f1113de916472d5e14eb562df1887abac5252e44509a081118a59d143f75d14fbbe216962f0a43d4d3ae8367451ca51d2ee5c857565b936539c76a8fad6e713c883fe7c4406b5ece94d3b5772b5aa335a3d59a5163d54919ca6e5a35da7545b19c19438c2e8ab54bfe742aed703585ad6a06a4570445a4879c5809f493d951586a8284753aad29cf84280d3753e2e141c8ef388c13dc0141d04b3b252e4a3f2624a52eb69cd293124fa9a7e4530a0304695b4e169cd91217fdc2a59d6e313f8a629c35181946f484bb4ccb409916c562a227ed52926536217eeb3762d33481d26a45ee1d2f2f638cb10b4d5d45d2b02cd8f82ee42a12d66921c94a3bab1eda0a74b6f35cda41ad74abb4832a39d18295a59dd24ec39850da59d14829c2001a72da65aa2ce51395775245ca55fce9f5abfee82da795f39b93c20998d89365299ca00adb71c8dcb2a58c60fc80e3350f0d089bc28e0c646c29611cc316c9bc418990cc9890a570022796ad1085243665590a27c8c26a381ca33a1596bfeaee6a56b44bc246e2096ad25033f3040e2c14416766e580f91f3e6b098af80f67d6f5742c9fb40a7d3b3ac6483304273c926a8e94973408352cf8d538fcc28f57f04b6a1a10f8953de557238212b4c8ce5f555505b39a52351cf99244e017bed4a4a66359c389b5711ad644f0bd25e0c018868ba09d8d7c6969245220a89e01183b344062a5e59d19f884ef56bcdab12ed33dc38548b430bc5b7f488c2edf498e52824be6659a445352ce1f133d33bb3003d7401167d406ae8a39587aac45502352c4190d876df08b38891a8933a47719ed548a1b0916a9ee518a66b02c278b90f49ba552612ade3cdedc74aa66d945f94061ce5f02604e7a46e30c0cedda5b921d86fab0cae66cd2ad4e09618e24ead89768c6225902c35824394c835fa4b7ed8722fbd109436797bae5ac0913c23b619d2d2104fb1a0ec7f439aabc94bacabb2cce74fc25c087ca6f2a47198d333e50be9b8da3afe8a47126a33c133f1ea7c7a7c8afbaafa8f74a3526270d56359c6e75df40383bda383092d7b1ed76b528806748d408c90359f1edb8c940198c63dada6845bfbc9a7ef16c2c732e2ee02d080241593076006563fdb1f2f01101334224e048098af81471a688bae22ddb4378466da0aa1e53c1935275c9ac3b54ead6adfe0abd28db75e5327285726fa10558818e0628922c0314491c12bf1dfd15cadd85d62e096c75c904cb1206934bb03c55e215429e4215acb0d15e0d67c61ab48ba7408527ac6511057bbd6cc23826ba8610d96cc72170cce8fcbb451caa5fcf462158d6be4717910be859171a2e2e5fd18c5b2e1fd18e615c2ea9cbe3665daccbbbe8f5674ed774e6b4a78450f5c6d15c3e73dad5f53e613bcae30dc77c48b48d51ecd568ec75391190ed7833245ada7616d9ece7228a12258a8ba631a1a1c29ebc9a8c346e48a3f572429ee148b43d6f522436ed629fe91369f0517508dfc069787530f9c22dddac05aa88d0c68bedd4afb48da2ec92e1a2efa7300ed04da4c13880441aec6261974be87d51641ca9f737c681021faa017f43352e345413aa2254450dd974eb54e632e81197f467a13a1ea239ee4263bc8532718e1a81a2daf4e926e866a379bdb2bc6e7e858237ad94a8bc8a968ea3dea836349cf8aaf7e5aab70611f5b686a85b2cc673d0fe0a5ddda4bd44551b0dd3e06ea301f16cdb168b383658a4c1110713af1a355aada3502b6f6abaa4a5abd0683f3aa42d91cd8a1e69db95ca65bac665e8f623e8cb7550201e83d2b888826e040dc0353ae3fcedb01a4ed3a04dbc06b5c081a015f80ba5c0378a8100d00b7c069d400f01ba88f06a40970b7411017a35edba5bccab823140b50b506d090cc36f826a43b000d52a40350a506d02485c3302d3e04b40d398d408406302d3e00b40c60364b038802506c3c437e00c6a603c03c0f80580f10a00e31300c623e00c2e71060570068900e367cee001cea001ce6001ce608f33488033a8c4f943e2f318064ce20cf2e0424884360fdc7106397000e70f09f05a04af45f05a3c9378ee21646bdb9376b5ecae8dfa763433eadb115dc0450c1a818b2804dec5e4cb8b6db088638b3111718078220dfeab468d56eb47a122d0d9782328338c0e1204288d786d631a21d3d05033f346d025496ecccc378e44a1fe56abc6eb6575d00e426cf1413c11473f3e0ddb1b6c7c1d6cfc4b1297893f8232b7b6588a8de7b8c5c28d099f09ea858dece4333371e61c3f53573dec2502b2f2b22e3942fa6462de08165d49eff86300a9b27c996f0ad6eb234ada25e9164b2028db45a94235fb00ea007a352b587e03e8a50ca057c602e8655100bd311240ef0a02e85d2d41afea00f4a61880de5301e835f5a0b744007a494ad03bba221ef48248d0fbeda0b71b00bda1145ae97dd93b6135a800e84dd9abcdd0ab62af16aa227a27d52f6723e3383d7e631caac7cb52a401c03bcdb3976927c09fe44f57a98efa7efba4a2cc30a6978610d93a15aa31d19a684c60187ed393b684488363734e98d296a019e16a59540068b06ea950cd5aaa01806a1b08537e359ca61ac9c6a4536c3348a60867986d6844e000f03b9197a2a5a390f40ccf8cbc2861d94a94e99555c9147b748a57f91212c90814335390de33b35d4384c4285675229bfddea376b1ec102261f621d1560586ed7e1b472302d3e0aba8066318ad8996d32d86f11e73c2f91064fb2a75491197e7cf01f345d423d9673592f22948150b214758f04fcc803250834b52aee2803893f22ee56ca461958b2521ec5fce89652fba72e07ff48fb029d4489c49e9375d520229a098998f7409a98e60562371c6c81447483f62068a997919d9c50f8925a4775d528223293f32c31f02e6086635d23329d93d7a352398349c6b9a392b1cc5f68f308e1b4c83df97c30023a4c366b07d0a308e203ed8657a5f03dc04bb80787f023cc3b611fc0af9c8177645d7aa47f8ee615d6d670b32f18bbbe1178c6b06c8aed499a352270c096174c9ea911f3e459ce9912f1fcee79cb4cba5725e58668283441c40b89b1bf225557d50a7d18d2d54c92ebac51204ab9ce23332a789e0df3b42282bccf91a4c6b12719cae31c182bfda132c6b5db0da152cff6a51f8d59040aaa73a6191067f552b338c2aaaa2047b160154812a291b9cb05904cb075520684e100cc1f01d7174b109f32cabca77f4acea1d484f0f29ea4d258e7c05912ffc6deb3a9b783512b6eaaf4b67c6e1d5bc44bb3b04c16f35734af2ebc010044b72fef36a563a15156fb5ea56be958ec37045feebe8ea5da48fdf4a652955ef562bb1e4d57cddddddfd95d8a5fa55be9eeaf1de5566c82aefa0902231e3315611e78ccf8fc78c19ef38ac41970831835e20d2c70928f8c2d2f88c181fd54bede82bf47a76e52b2bef22b571d9b222d156feda16353cd33a3939e87474a22081f3d1c9492263ebd0d0d05431c3e10de33b93d5b0b82816aee5e3c2aae2a9ba18614b0888140caac6e9c53143884cabba90236c11530cc70c219259f04244b6484a0e8e192244da2228db2cef679acbfba02dd41253c4f338a648068aeafb2312eb7dd3290595eade5fad84efb3704c915046e97d5a592edffb3fb45e52ef07817a7f06ea45401a1c5364dae09822210038a6c8101c53844404c714e15c1c53a4adeafd1b1c53c42b82638a643838a6086804c714993ae2fb474c8e7179bfc431acf7cf31a5f77d0800c7acde97e1988eb5b02cb45d68ef748bdf427b8baeb459b4733cda4dba997418b453b451b47da0748bbfa2ddd32dbe8af6936ef141dab1f6224a21bc8df3e4890dc06fe3f0f82e24752128555f48945f2985fa8f8ce7439dfe23e322755afd47b6835aa9fe23dbe2a402ff23d35981fd1f5916aa0f1122a3de1f59ce90be438aa86c17fe47d684878c484100e2b15d85c8b8612d92624bf5fec8ba10f2d5bb64a6ea955ca0ea5d929dea955bacea5d92f2222aabaa5766d12d7e119505eb5d427a119595f51651119936fe8710191764632d9262bbca2ebac55f524411d563d53885b0712215322f32d8192593300cbf6b27edfa51fa220b2fbcd0432cf6e4494f0f14283e3e6080f1d3ae1ffd13a5c368d78f0e234a94302c5fd24824480889b654db89144215d88d974bc78918e25d0b4502042c34343456e6424a1722ba10ed427e21f442645c08cb858000c4635d0e02d6192253af10991751d9d2850c29897eb79b93480917da7f371bd4e9ef56c51654c6ef569392c1f2bb5191c587b0847eb724dcadefa50ae488212e0fd55b44655dea0502da8275f9dd68603e65b025975a24c5cad4fb23eb424689b2075bfa66c5f623037244943decc196aa4c6f30f99230f9c247d4dbd251ef73d48b32a2de1007cc4a2f38265696d78559966559966559966513366113366113d642a3f56abc1aafc6abf16abc1aafc6ab89c162b1183bb15d2c168bc560a52f853a751dac8395be14ea049b613b58a9837d1d2cd5c1501dec546faba3e9683a9a8ea6a3e9682c9fe3e1e1e1e1e1e1e178381e8e87e3b17cee86bbe16eb81bee86bbf1f1f1f1f1f1f1f1f1f1f1f1f1f1d109e9c464a77a7f9d981a6f8aa8b5b27c89b3c6423559846a4235a19a504da8e64ba14eabc729441515c287a8d8625b6c8b6db12db6c52c7fa301f180baa0a25f202faa50d22f10947ee133088c0da75d7775fec684639270cc14c21b6f78c2d8421e1e06dda8e4e9b1de7794b0d7caaa9e847512164a2a84202e382686a87a51a77abf02dd2069a9eafd5128597d7c6ed4bbbdea0d5df5a2ac0a1176880a52c2f5b6ec9d3e32a24489728ba8ec056dc1a22e234a942856c88d0b395dc8ea42c00b69b9107955942816e47a9dc8b4449c3fc168572cf5172fbb18cab3aab24048da05d62143888056c68714692b248661c1139996e54452ac109155adea9021443cfb0f2992a94e24b3f4444c56c81176753ed521444876880f21c259d18714995648d4b1abfbb40b95fa9053d3b4ab25e4f216f07c504dbb6ed4210c33fa904964b31ac38c4e04658548fbaaf22e1a196674226833cce8435010c38c2ea21bc38caed110c38cbea21cc38c7eda31cce8947a0c331a5d0605196674162a6298d1411a32cce8213a6298d15d288961466fa1258619bd5213c38ccea201ac94a8c48b15e6b922750acd8800000008006314003030180a87c4a201893c8f64b1b60714800e8ca658785a1ca7411063ca18420c100000000000000000260100657bbfddb576b4819e3bd5199cc16d127d6e0edb0447b509781048fb6bc3b31218e40126ee28643116eb60d3b4b5f252989bbd902863896f58afe95474eba850884e35636c869fbd832dfc0653c68c06a0ae188c5ef247370ba3bd48b11dbba345435517e0040e783aed560b6ed249de55d44dfc57a916f5f6a9e8e994db7baa37a208bf91f28b569f70b92dfa8305dd4c7a3ac1ab7b09bd249a7146df74fa6051104fbb6db5d0881a2812cacfe499b469f66bb304182d70e20adbd6bd73ec2feef5d2b7cf76f63e74a72fdf0ed741cee78c0178ef38fc80cbbd3c74f739b8c863d7473fc23e4688e2b2585ffac486405a3a57c955a5ab3b905b3051927fcc4aa9ed32f8f8a2b300fb5d28679c675688a522cd8797d289ec26a7c90bb1a0f3df9494f2965a0bd26ae17422829c66836928c79b007933c7cd5608ba3009951c070c19093a72641d3d9e4242bd02a35d15fc3f06bc92b0bed9bab5f57546d2f7cf0683b1a45a4d1564c4bbd2a25bc6f266ef3b3efbb10dead74860069aebfade6e81e5f3fae27baf43472f0d5bd0b4aca91c50850d7c1409963430542a3f72028a7d490c33d75f9961e670ea7c96909ee6c462469e8a196600a6d8ccf05f7d04742f5a5ac668548ec800e0bc2a5ce2797ab6a226aaae791c564881299a9b8a7032924353305cd908da24ec375c9e2bda31dec122147120a40c65c7c4014572da9b060a8cd4036a4f618e5281428c9022d95845d3af2bb957b660810399fc31d56df42e6bd5889095c946e018f75e8660acd967ead70e816c24491c4deb040c3f14bd8344519df9777fca4a0eae0f934a0e8e4f622ec3d3cdc42b3560978c135669f97a9e86bb4934c2dd0a5a3625f30b9a379dc01aee42f046944378b95afc3edeef337128cc2f3603b5e28554fc58101e65de29e6b84c403c8624acff94e80517583bff3812a71808e4c489ef047845e887137dc1015443e2f89bc7fa6ef1e1afd3894485865cace757755bc62f14980812def57421b49f7bd8650cc2d5c78fe332bc8adfde887f11771153b811239c2a0b0a4db3a3b8a2a6b6edbb0a81bf71043734c08bd9b04d418226aba341a186d7347c5ed35fe929005e326eb62d18a48677ba8509f6127157680d258d24a5ec09835c0ce8784f10bcf0abc4b2c34fdf366e1cb9cffa7ea061ee9b4e91f663080b729f820972390502020ae4fe9446012604c90fdab9ff752ad9c7cbc7899557436742e0826efe0fff7b0b3636a10573be026e9b793959cc210ca1ca53a902c54320ea9557e88c588e978bf5a371bf4300b3525bd118a826fab8ff7006666354f98475a9474bf7c0c04a1bfeb2d656d3d7ce54293fb487df30c3d4d7df22441a74f55ad3f871981e39deb9258a973248b8dbeabcf3db9a799280ded9a18c538e92cfe760075fadc7665041d59af4727f61a535a58775c9fe6f803e0d674c8815f2b92ae7245656f50eddd645c62fb1e5f96439c53472999257ad246d958983d45ecfae06be203a30a323aa4e4b2f378714d7701e2846ccc776494bc2cabc1493eb0384dbe8ae215103b35d40c64cfe56403c8d4d22bbb59516cac0fed8bd9d28816d7eb5e5327f73051f56a28218b3ebb2a878ac10c6bfac7239dcad194e7c6dc3f14e4424619deb966a37733710b15030d4fbf207dfa64d5f2a300f290c6fea760a81af09e0d3c8c5f32d365882e91812034c056e86cabf0c8196107493756d22e8bd4adf31e332af421afc5064bf69c1e8196c436c0374ba8ff4a17b1aada66452997bc2342a17381a9ac21b736a5b2397f18aae346769f9e94baf19ee91c6f87f387c524569d52991e1a3d865b67f4cc6a46792d4bcd053285d14eecc3fa7ec284dd0a530aea4eeb92f9576d595ad1d6269d37c076a491354199a977be25cf33f174f7216d202d8feda44e7240eaa4f083f0f71eae644c2f7c23ce9250e99cc64e3c4e912f1d9165432c01aeb6bf59a84c3428ff7bc83ab2682623bb0649f43f9a0e7cda7eac937b1da7987ab4b158578261079381ffd537cd90bcf1e80af1702d2f106a1fc25397c8800575a7241c8e191e9720dd7df9a11890b57ac8f37596ab779bb7b31c3398600c042cc31d2e39ee06643946c07007db734e6e9bfbd61d7f044641a8e546a92691611067ba0fcecf31973c0712a293e4f1e9ce4aeb7a1a80ef64aea5ab6227a0f056a34abf94d94b162674bec17493634b4f033e090658912ae9979a4320a08369c330a87b77f45a0c1e707acc732c5181dfc32c704f57fd052e65c22420c0086c41e404a7e68a6dc3744528265bf05d5f9176f575e3116ad4c4f477b3842e1e5bc7d11297fef502862d7374a1d2e56b8cb479960b801e9059de65f69c91b849083b7cbd34b79df330dd400e282799128572ce286cf07086c5f89b227251a0cc5a8f739dd88b759c79a302050e709af91ad2fb4941c1cbdc0f30d60ba6ad8c5e52aa6904f4a7e865f7190f331f1c3c6f541ab412268df10beecc099bb82402dcd486d01327c7f21cb110fee2783f4eae45af2b2c9a2390c64da148b9432bbf1d8c513d3387ab0448e93b00ac04e5a0616f1047288b5cb6c40930c79a036d876ae2ac0c55752168e7e44072673a7b533546b816ddadde155a93d36b7da2665c5eb969e50a48ab17fdcad2985fcf122e4067487672c0da5ea8201350d3c2f6d66d96c22e21a15518a139b669f84c5275b0b481f4f0366764fe9f5c5f591dfb9c16cfc934840b77d28e03bae89023411b30985ad8ab1a0520bbb5922a10c8ceb912e103cfcdf2aaeec162a275f706b575b353a55ee0e3070a479b1924ba42c40cf742bc700479cb7b08d4188cae79e67d178308ae260133a40ee343c847d89732a3d0a37d2bd7e946856261a7d9e18fa0aca464e988160e10fe49cc9e1b9a2c380f0138caa8163f2994286930fd39f615278cc15eccd88cdd0b8da99520d4d25e694912a8b963c6b5c31d42398daba7bc89acf7a97110eae7a7d1af23a2cc867751ab34126a4ca3d2aca7d746d47e1fb8e6ae1c1d1f1361136031e276a8e3cb0360afab7c2ff7c9870544eb0cf89a1a4e3033882b7219d8b5dfadd8446ec74cf5e039d821c30c0bd90bca22f05578d9ac33ba9dc9ce0c19b54204a682b4ea4b00e233971c3ed72f487b3f3d9fcc05bfb4754cb45aa8728473fb0dfb61562d01437c35eebaf212a0230c5a515fc90a1efb881ccb51b2ec03eab72750f7e1d26c4787d31d4b875683a02ec8f1397e27f27eeb6e5bc587e0cfac4c26d0a638bca080b4e1855ac11c255c280b7cf295267bb39b76bebf22ba6f7967141b19060c4b7f46e93bc0d0501c8209e14098ccf13cfa2e979475f621e75a07a635e18f7ffb706c0a57217a840035d73f9eb1ac01f82aa632c4866473d03871b7674d10f236cc8723c861a15e1d92b44ebba1d09432a14f4ae0f5f669397b85159c46e5e3fec26e4b0470e5d2f4514caa8f754f5f21b08fabf24e31b74367a141ecee469126a3b096382a2170ddf98d0383413492f96ef72d1d136ede1ed4bb6b6bbf6dc2a9c65e2aebdf1e549173bc0c5224fb0dc574a202c1dc693cda60a9fa807d62a60f3b9caa9ce27a34454bd02d42feb0ec218f7360a67e956e258e5125cac5b84def93e500ee71e36ddf5d3ea6837a1d1b1d4f8c53717d2a8a9f76890af203b268e4089bb077e039ce726b9dc7c006406caf70f3fd0c377469dec63c51df89cc3331d7c0140809a1dae055f908356ba199dfe6c733ac2859eb8886c01fd79e0297eb069de5bb8eea2d28975611b861920beca83e13d9fa384b07ddc4c2478cc1d59979d4e59713b65c3feee742519e4f609718bddbe398e7afb78a800782aa874c07ddd8163701f111c0cf7c50650e23e0e1864dc571cbc3deea3b9d3f2ba27c44eca2af71df161ee83097059884e15a33e7acd7d666e74ee1b6c60e81d9bb90fe82a288e739f02c5fd61b0fde7698d7bdcc3244522a48058635215de7e2ca9b4382e6aa748038ac96ca4b2baf8a6cf570eec87e709e3b62a0352e2e1abc57bcb4f3caf0118bcf7530b0314d281d463ac64687c281b5f4f3fdf92e568866e594179bf770d33c751d82b70a61c897f556ad91a2581be7e052e2791aced2c64464380dc4f9de35b4a1056e6346e2d41741585189d087821a2141bdcc687e86b5c80e1e97d7da239a2997cf30dcd3d3ba631fc230097675cc53923b73a2f09bb08946cc7abcf5cb17ca604c7e8d97c2f77885455b38b637170421d4676839279dafd7fdd7aa0d8e217a0620268ec3ae05fd838906b51b8d26e63e42a1b06dd0e9f4f95c9bad1b6213c2c1627ceee8480fcb761eac37fe5b2caa2616ec08ad9fc834eebe60935e90380403c396ab6a7959fdff27b90e3855cd9db4ddbf4192d5bd218a54d79c8d985e0dc0682f1a5fba065d817a7e71df836db7a18e4bbc3f4ec3e8aa9e907707c73c35bae381b56e949ed52af010e4c3ba442d1a2b04d1357358ec5a349aa4ddfc2083ef11eab20f45a19bd0e7dc0b2834df154471f95f34cb16692335996acd193e20874ca4e8c3cdf6739fef6d2d7bab402f785a16507edc91dddbb4e0511643c0f6f214f1e367060d45c834c645683b791bbcdcb7cc14678b9585f6d4627bc27b6ec0aa2757f9315111decaabaf6c4d0e0b00eec5f28a043a6a67664faae8d7f7a59bd3fd947abc6c8999af677c8c0e32502f0ba24edaf6dc125651756e99c21e9861de5990a3b88719b890d3f6d7e40e4f65c85652e58a6851e02d5b6124014bbf55af71e16680bdceefa981b89ebaea9aacd4674a6177228945e59cdf52eccc6acba3540e432bdfe8f8f7e8c1d89089007eaa5b9fd4fd0e2367d15f2273060dc04a0f0f5ebda10ae2950e0293b29f3c6de9fbdfbaec34f759aba798352fc87f27502dbdc1749e4784db9525df93eaa831cf7d6eedc53c33c3dec986354e266e5949576b050a1669317f361d5fbba76a7816e429a4db76b63de00e100efd1c2ef47aa4959ef66a863290b987146d653296ab6c5fa9471619217a73df3389100a4c0ffb00c4da7042f93da87f3b07951e1f4498c9d8482678d2a698367bddb75301662a9c27de4b39766c0c911df33e71377c1434bc459ddcad26ff7823a3015b250de957b76298b60c58162eef1ec968775b5a5f54612bab3e0d9ee73dfc672eb18a65c48a887e0ab70529e45d7e90f7ddcaf6736e84a39067f81562802305d8957a6b096b0fb93994898079d5d6aa150b549030b96c36d27036f76a25ab1029f7455c05c05076b3b7b84c27707c22a881a4af21b79374b48e6988635cc21f49e507624e9725708e4e145c329b5720a1495adbf7a0db0f461c2aba7f0cb93d8711d5c1721600551e55fd67448d264805adab71f45820091cd08b96680b04815060d5657bc4ad4457a2195557bbc0f116cb003e9e6b26f4a33481b9b88c7fdcb43f69cafa82ea932813288b9a2f27404362a602af5dfd2fe2a82e71ef6cb8b4093f7e48dd1b4379190b780ad97b88daeb42af72cb9e91dd7c184351218474c47eb921391d760c28469e1cfc114b60ccc6079431781d6e65a881670d0ba416b0e87ff4a1f0c447e4f2a599f90384c01249c31d8814314dbd04c4bd5696c896f82b1563d9634aaa333ba4488e101a0c44d8e88eb554767e4e041163dea3f6231290ff94ffec798fc3e6ed59a2a0631c87f172dc5673377112dd6a74b2a010e25131d4c44054a8d3181105f6ffc4493ea001663ca910d72d678a0cca9afa5994058b4bcfd0b3b07787a315073c342544844639821922c552e94d09a874023b86ed89132a6ea8fa1a369fec8d6c72f7dab40f2f17d1cbf10248c4de03028b9f4328d29d2cd6c2de100ef5c8d72b024b777aac963463a2cf184363d2f08b2063695c8a60cfe2a898484b70d746e94da91ac476dcdd0abe44582d1714d10539357094060a35aef8d584641b0db52013f42a7c7a2c26675640d91051125e507a4c7f62ca6de7c71fbe57b13c5c6dcce4a44d32a628963918c20fe0280a774208c1ecd32894a5fad00758d85f71c1bd1676416a5b4ceb0e3a0923c2c8de975452c27ccb5f06f6dff333a263f68b2e7e39030ad2d8b0348d42505a01459c3b01d85d94fa2ccc2059de66dcbf8c6b98d65db5ba071ac3d72dce1ba2996f22895a2896d683fd300eb8da5e040401b5c4ada28e3ab777d424180a354054c51b4e80b11f995ea480c10f48843004b8d6dc69ac3126b0fe58acbb69e7a69dd63f38f688dde7fda2eedc5c83658b998ec6d6a9df6657f084167e9d5488b57e1163ae438e14332fc43b1107a03a6ae5049a7e1ea5bab2d83409bf0fb5eb7e767e943f522b191147c7ac6ccb460f71a1a84fa927c5dd3057f08dbadc98f591cf6b3c65c445a97ff27863f611803187ad27b031ee2ca717e75584ee35361dd323dd6b2cecc16a0252274df722fcdf19b877fe44771c537c8d1ff57fdc3ea248c580a5124adfb1de602619ff940da011ffa6e977b4c2d5a71c5ff58521ca8dc935115f733567de3ac6f4a91ff9745a547414f6f5f948bfc95e27d334c83d63556af12baa37f8d10edc057fd6805aadddc43dd58c90aee220be77d507ac60ec659f37dee7b0a9c5f09bc0d5954e16f91d0a5014c886647dfb9945f21ffab64d799697c359f8c5221b605a49aaee53c29a4285dcbf5052ad8b03866b58a66de6824345bc81eb2ed4ea0c2cca24f82890612374afa8732c1359ecc0691ec777c373a6ec47e465a1d0f696a66aa99fa744e4329d8c714c8ca44892aa07708de998f35e2e5fbb57649432752309e540154c6f5e12b12f32b18dd7e05afcb221663f4dddd52fa34410dbed27594074514a1f42c320cbfc404592e9e145cf0e77f2e7276164b729f0ea262bb91150f2c19cb25bb61906f60990e4b4d8a6062a964621d522f31a0f9ff178d6b0ce302e5ffd500026e276fac603181abdd8d9ad5957611d01498a3005e654464cb6f94f234542bdbd595a1322bed59f10060aee305826eebe4f5ad262f2a331d8510d063d5abf3bc90a225ce9eec3c68b2effd6af4967df7bf43b74f107315bf4486de43277f367001fb4f77d5d2a660312f5fb4ba2abc1f9e0903631697c6313b42dff06749ad6eb9fc36787b77764064386b444be67c24263d513872373ce91a8aefd6b9ba7523900a130404d4c3f464375776046b2b2c0165c97da26de4d19425f82113ab27ee0c4d56001aafad25266c489213033451ac22c58c533112566c602c862cf8e41c4ad3f6fdcf40f4043d73a3de3437e99bdd4d7123167095a52cdb78f656bdf3462f9f81756af449b730011badd65cd86855078d98f1580dada85f5c7e2802e2baa6cf9d98c23d7dfa3fbe6fa381e3a00510619e41f127a3f436a3d7f5f3c696e19255d93e0d071fd4ac35845deefa7f54da96fee9891f61519ca78ea59148c7fc98701e2769c093b3cbff32eb55245349d1d688ed03412082abbe1a40a746afbb672497a3697c55fc0a0898431721253158a304d0ae0664507a4d8fbb2937bb9b3a37b56f358a1fa1c66dd0ef0ad4097392f40d6667d177ba8e72d25b65854a6f6e93fa23d1cf05ee45dd30378b1be666bd696ed437650527b2b05aa9b36ee3afd8f05d1b773e83bf0eb8017ab9b2217e4bf76b54c234c0e1320f3ab3b13b2790e27cb90238d19f00a27c045a00d65321413ac0dfdc40a6ff198a1cf8f9a8ea4d4a6cfa8c2aeb72f11177f8e38fce7402d5da5f4713b96bbc40d023ef91971360951d38bcb921a25db67ac9ae242f6e5044dd48703c32561d30e7bc3494a9b6874d2a146ab67845a34c089f08108ee56139746cd9f22c641dce06dd570b1732ed5feafd6b14c6d6771b4d339d7d8d06d9bbc91d56aed031c42319e171a08b0658d2c85ae36365e49e13926505053723f0f1a21e860ca10e6dcee44f7a38cf3d21379a2e4221824b522d41b384337f6d8dc2950f4f31baefbbb7e863e633d9e08662fbacda694a1e1b4d46e5379312d2e8624c2d5575d154bf16b616c908d58eaa6de70f4ca445b4564e46bbf2985df16885c6da3f6716948d21b5405143960a35f40924968154ffabfc89990759e7e53f7126602b61a3ea8aa91d11aa04a4bb6880b9010b08cf94cbcc5c48bda0eb84f47349c125fb50c46820fe382b73e1af88f0d7c899b8f6c791857c23dd270dfbeb05a48cb53f595871cae971c044743c9f7b6b76eee258637e642258d765c085f13eae3f2605ec1f0e0833e90ca61b36cfc4acf4e11bb655b6d7b4a382d1e996e22ba0f5949543268d2b82a091c53b1e6b2ce9ebdb40e23bae175de0f19cc1e34228c4d3ad6ee670eed33dd16e145535052d7c4d749f3e51e0aac0aec270652ed0d1d421276005b6eba9215ffc8087f7712299a7ccc3120e2dc3df5c99b8cc3fb923ccad2f81d24382ce3fa1b6d56f81d64f587c8590ad19214c718f337b48970cc1067210ab4de5eb20ef76d61267dcb5fe37d9eac3995d2861907bc198b8dfd3d39f60c792295a19d509557589fb20a31001a87f4d30c0dd06d0d46bca29b3f009657f283649844e94966432009100be7dee519b155581caab5b1218e951ecb629366cad1461cca09e78d217690733f70e2f3306b903d29611d98963b760735e42fdfedacf775ae5eb75978ec41339eee8641f20b470401f13a37ad04b32ad777d7771f65c53c89859ea2b135efd57b49c4a4e0ba875c1d255f173a74ddb0cdc645991b98b790cf60150a782ad0b3009922c835a5ad2206bd764651aed2c5f2382d89377ad38971443113ac8810bb236c2cb6955b229e0f6904b3377a4470231baab28269f9c27e6ff4a91911f6baf40699e69886f1282d3539b4de2b4b20f009fcd3a10929b1451741a7cf904460a7adcdc3ffc5c9a4c71102699068ec1ac8a40e568c71746fca58cadbd3da9a936ee6f17f0ce7872a84193a8d6c81a0a2f18895713bdaa5be81f530312e546c8f18a8f80c0a3367d8dad88a48b6c654712d7f5214e892c9b81a2611b8efe701a3d47ab28d13e1e6946cbd66c687e267f913e444672ce9efa952ffa82ac751a2e7ff0396d4ca26604250e9757ce3c03f0e52fc593751a035e68fc1e1c0e138be88662748868b8e0c4b8b02a3de866ffa68bd781c71ab1011bbec77009b9304ea545252e488f0a1b99b5e65c27a54e1171bf6e067c67d1df1321b1a6598aaa63871eb9508a3b05f231c81f6f5a9cfd583dee346e4395fe2e5ca164655397f40d668fce82b8086ec0aae7f31664edd85fcd0354c0fe7970f5ab80a13d72a0bd99e81eb26bafa93afccf2d3a9f8db61fed39d5dfc7d3b2186e666e7a3078f3feefe5844219329a5e912fda73c1b7683ddbdf863a8e7e93d2b9f02c382b3946c4470847609102948eb2e0cfc59f5f0fe458a8dcd64a4acae15c61d9840dcc605e17fa498792e04d3886d2f6c9dd03823c7eca16195ad7d141a3c32a25a2ced0b13884a6b77dd5ef42a831ec91cb0a5de0f40b5317129058a82f11b3526516db8ba297e202221894e00de0f0ee43e991fc0201398046157e2a078a01ead624df73689f89ebc559c82cf8c9b130826084a345152087c0ffea9a27480c15cecbb461651949fcb15d182d04344e5e4cd2b73f74af9752350ee6082a8c1cd6c5ee109b146da1880ef965bd10a52d45755b05342b4fec71d04d563c238d21211f8611cfe91bc8a4ed3cdf7b378668b730b9cdac7d449160adccf3b3a0d5e26d36c3a178df089bf71c655aaae5453e82021480c56232d0eda4e8407c00139a07dc184244e28726df3496f57357854c12456911385ea7390eab074ef56db2e32d41c289d8d300e296fd859711870447eace334d0b91e55418bf0bad6ecf470b5483bb1f03888674dcadb95165ea12ac407d99487a6da6f7f9d5a1afbbf122ec2de8cb8e248fde42db3860caec412f25c77c2d542b907039a7bae0a515bd2afdd3551fc8892f55a28008093813e4a01f0f2b13703c8927d21fb1e05ea0e391c38ce06117e0b68e621dcb482ec0bcf21af1b9029fa0ea9335981b18aa00c3b4aedee5f807664aa83a05bb3fd0b40c9afd409df4f92a0ec9ff2bef9eaf15276f1b65533e80bd3ae6db0774b525209833265a684c13f5c139e08302b1d733232acfed394a30b6b0e04941e45dcc9ad272b180bab9d41688d4ccc8fc06303f06b276776a19708b6e1b1f2d69c979c16341bcbc786b006fd3cb0b5e7e8ca7d8545e302e8e482879c16f270dd7934392fa17b1c7c7b270a045eedc117ed16e891b958fad937db30f0f9e8557b0bdb3581f1168a251ec80b1c10fa64c103019dfb46181bdd91a1c3f50f1c17bc82d8ce6297ed0a94a2875200125b5de3aa630640cd0f60ce189dd47c0d29a6e099c0354b6b41a6472b0ca96d6e293e00965a519c26a8555a60c5b5ad7b7d8a0eed4348eb30fc806edb84da5d4de1523da608fd4f1a15bb34014480c1087cb3ddc6985ec5275f248435725d0f103729a073aaccd03a67538ca108a604679b4b3041bf0602145e4a9ea1a025b962501274ac2bc14937832ee51ea31a241d1899c96137a4e881a2089477b9b9ec7c2c4436b0920a4193872218e2693ebd984f15c9d8e73989faa44264e6292c80bd4e069f6dc79827569c96d55a2a925acda67ef02afaf885b764ec4c865cff8e5ba61e1a85cc1c5cadd876c2cea739814109473351274779d2808c0dae6efd1db977b03abc231ef419b23d9012fe36f578c3236b7c967a71b7697d51bea83a250fc9b6916aa8b5d96521a5e455453d654c84c01e063059b178766191a2cd6329aa7a88f85c8c21b63e4f29abf42b61d3990458d8a555c82b5a0ffd009142158bd0b408414929328bb590eeeb6268fa4ac5a1d902ba423a5293a49b5fd7b0d9a567f57814c4ea918c1b74c6d657f5e1516a665f9be8943e93e5515f21381ad3f1e334f647729123a6838a3e61923c3d1230e39b855b32c8b7ac35c0bfde9fca2bb8029b1eaa6a9330d7c8a468038e4b7f6c04714571e4185dbd5a63587509696951fe65004004d9e2384e5fbfc3a97fe2abda24b3940f4c296e847579e923fd3f22d81524013de5a1458d775287048af3e71ef129595452fb00612812975d6ee23a3a03ad0d1ec218e2142e23189b05f42e4acf78660c4ce0b85d9946d95a54251b74105f430cc6a54887cf9d6c2be014f5a75ab83e5a85b098e5f30839c108b68c04c54bd0154043a7e603c97e71544d4e55191336488802abe4dcb72b1e80fc71444126ae9dfa5a35dac98e1545f7ef7325fb1d0ccead424be48025a11cf87991c46354d376984496938d1511290f0a117d34d90d43d8dcd156c15d6f80b81fe23b7696123360d46f5ddfebc3f1cfe8db5e926683c390c23dc9869bdad0f3bb5d94a1401bac470e38264660280caaf2d457d9a94f4f91ca1138b15061ff30c637ba5b5561816a910fb4fb7aa77627675813f697675e7749b33932298d61c0030ef99f4f308f687a026e0647aab958248b00bfb2c4d75494933cbdb20337426212d824f5873d7f03eff37b7f6953053989bccb8fdf00a6a57d92b6c02fc13d02b013f8b011095f3ffcd2393654aebb83bdad5899e0c59eaab5de56a932cec87fcdaff5f10dbf2aad81528acc80989fb09ca8880e5864d18812ebe08902d74d4a34a8d710170c9d3492a627ef665d92094c7921862ff9f6896a171816e158ac4b2bc0a74901b497161d90db52c7c096bbe966555daab1355b46fcd4e717c4ab4c31a6717bff20f96bc3ada03a652ffb960e248b7a636f6b4e13b9710daf75c20299b86d02cec9fcfd85e40f2a630896c9fa256a4ddb9b17c94a20baf986316bbe85663fe2eb45e1b80e9ff41595f5b23ee25c5facfef296243f45dad968e2dee0bcdedd3ac24b77f87dc192f740c7374c2647348dcc76b59c7dbb33b744fff65f253dc62529bd75f940e07d9e2138dfc361391c441a1e52c64962af37495b92859a3e58a55099b2f861c6c0f0e8647c66c768a15a9ca3f07c45b301e5fd68553a0f1a1be5b04bd073aa7d497015056d4951ca1a94d9d7d02327554bd03085b9b73d2c68a50d5c3c8752c60481b4549e5c0536f6ad444fd6dd2f357155c7372aa2951de59f143bf15b8ad2a1e926e1d4db20deff3708ba36be15ce6a88c28dd328293ac147b6394743138953cdc7c9219c10bef9a03ebffaf19b08b9895eb4cc040c1596e60f168d4a8d1d620a650e76c13d55bb14352810a7016c7667d8a85af9256eb000a9fb5ac173853d42f12aac762db572dd4e04b3adef67072decc9428c85b0bdaf246c370113fa9b3fe5e30ec7ab8e3bb944cca362ab1f34ab457e6ad867fabe76d081a12b77234cdba1f8720a1703565e4be3928ae3681b9eb58e46aea02440e77d36e52db77e7ea222fdb2a8f153daa54c98a80d657af3403c89ecc0c0ad00751cdb4e8cbd0c4bbcfd0c4456390d68935262bf3d7da516dcaf0b1742e840390a01e67b7226cb63c9dfbd4a4261a813246083492fa28773412012d7f324e6489ec07d3c5770428986a4b04d5463faed0f92375e2968f0fd7fcb7110363907576b27508839f632aefe4ce06b0d6ef6210b9fa2a4836d15cbce3ca749b948094c28a31d8d22cedb3b8685de8d6dc8751482f0439c8c12847e41b784ca4381493010a2f68b0653c1592d09f92bd13c0b92fd42351e8c5a6f63a6d6c1bed07ab870bea6090c04f6d64921321397209a361bb746229b91cf00d7278d83a9cfd8f23349868b93a41da6b4ddc20a92934166e3143c8a2910e0fa728ce2b8a1eab21324b5936f3ce4178e79602bcaf61f79b94a25f775b1c6338d648e56a372352a6563c6b7dd4b2790fe697424447e434a0a5350ec46c4c01309511eda61fab0065aa64b57ce3f483fe05ce5e28bbd803eebf5053ef318c3fd0a307a86683521bf0788baad81cfdab29a249b39c167189171156407db0d569050547bb74ddaabb305dd5c4f37555bb2deb3a2c05687c8478d43024763e48ee5c003864ee181c636bf1f928e38d95fee2e3101fe7f87c5d5fb73b14c62aab9fedda38c620dec1a5d100ec8bbc15fbce3f84654b2977ee2d4425bd659c6f45891a64fc546ab23246a11a2a451dbc6ed5e6ab56d3b1da52765c2de2a37eaa0cdcb254946e534259f333efb658a88a8bb2274c57d995ea581f543b31c9070fab3c1fe10be96f774cd0bb99c2800f719b33faae8f414a6e7c49c941fdd754f53dff1454c4470cbb0902934be022a6310027fe2785f2f301963035ff65bbe6145795dfff7c4360e1f71c2077e96de2e56e311c34cec7d3b896a071e64da693e6b3912cc6ad332e27484834aee5a44064d7680af2b38cb4a4f488170bf369e5d962329412d6a0fe2cea49c69b203a39d431af992c541ef785f7df1f5d703ea9088f819f4a28303057798df8f07854081e40edac421683a2ba20d0b3655192d3efec19c8b0ac9a02077a0371d76df010a9b25c19e5d2f7e5e0d05a7711f01606b9ce2b330d8e4126a34c26839a5ea6b15b4e0324b3665fa4ad0735fbae39042ec5c4d236914e58035b198b15da42da3a8a44ec55595a322b661130a1961134c93cf6f47b6c1e839900f32c2a6750520c6f2b43497a90ba259565cef9dae04e64ecf5a4c0cfdff5b4b3abe139323b64fe37fc5c2c99c0852b67fe1e17f4d96337b30b3eef3b8f67999b66dfe73dcf703a798729e134ace11938f0bb1b3c4aeea4500a696dd08ccb8872098caabdf11e6e12fdf073ef63d82f7b6c84464168eb5fbaeff0dbc0ef7badccc641f99c7ed2f7cde57ae92ce2cb307cf0dfaf035c198416fbaa273a178013d675cabf58429ae5bd53eb2fafe7b8cd043794dc2ca23e9693e7f4fed4036cf45d1033b7a06d4a391cda14981856ae697cf0021bb9e8ca2d23efa99de5c9dcf632764358d852b88b55ef28b2a9c7f7a87f65e982c6f6b46c67b36362375f6c10eee90dbbb7315ba978e6a2723d626721bc0243825052db29ba76dcd912c7edb5603ddeecc8e6c0ecef6fa43db742a358c6be80c48c5d6e0eb2f159448fbf91a974093e412646dd8a9a96172d500c40cdc04fdb1428fe37286a399c3eae78ded575272ead422a52db70647ea092236b3f2b867a2333db311d3537e3cca5e34941db9476e12ed04ebbdb04ed1dfdbb34b205de37c549ab533ead979476376bf83d507972eeead327b5e29ee34d606f2bfabe32579e2348f3ed0d464ed84a8ecb86b9619713e5d084e4826d0e5e8b5d3155f6510176c81b9744dc72f5bc9cee67f57f650a7c18cc6c8c23095ac902876bdcb03f19c99401b004413e6cd73ccfabb9d12ab670b8dacf92c505428fb434d12519fe3d15886a2c485e3f34f8d286b15e618b840d08cdf413a1769291e24f6a3b25c8c33283b6134c617a603fc8cf1a55aff890eddeba440c382f4142287e94d3eb9ff99ae2ef65b8776353caf75f295747754ec6d21f831ec583e1354ff7298f2f2e4314ebf31eaaa7cf20c1fdaca5f4f017f98bee57e480b68f509f4d9d46efb784763e94a174dbae3a80ee40d4980bf511fa3ba9fe33a788c27ec5d55c2354dca05681824c37ed1bc27133edba9291f815867edc9e60bc97f09d14fb12d10dc7e8ea3fe5f91806c2f42d948134946c3f527563acaa85f8c9d32488de059ee57d765145cb24b7de58d0d4594f181a00adf6dc5b798ccd1b52a9eb9449f3a848b1abd765a22183d838402dd13fea938772cde0aeac5ae14feef4b73992f8937cc3cb40ad8a3ebf4b8f9a0717684ec7f1dc80e29b5063db7134ced30ed8a8a5b0001ea41ee47e468c20706057e156965183d0dfa686a7817577e3b71a0dd1093f0cc4f66f15d90434aa434703636530efdeaea77c5e8b78d428c8f4e14d5f3f619e7875ffaf10ed61447257febddf451cd9444cc854c9ab1039729fd46d5581a5aa7c20298913b2b8ef1c613220aa816e2f3360c063b29358eaa69f590be18c5321b353b5730dbac9884d342ff870e813f92626fa68755ced80622a3fde763444ed9ed11c1d321eb35ee1e187a8ca40d5f1a0fa191eedc7f31081e631170ed9274d608df06685f822103fd7c3b4b5a59ef53eb6622bf4b3626c75aefced07a7dd476ca0d528e3f68be83844582eac475859125e82c9e4d46d0900649f5edb0b1df74007f0aa658de17bf13fb76d10f085b752e1554de31dabf9eae0e56b29902fcdfbd1e2eb6f7d193b18139983af7dc400c2092b22cc45b555ba6cb94d09072251d12b6541dd07ddab56f86182c95cd6184f7d21240c77bfb727e4657bbebeea75bdc8906e557a7371047591ebf4b1956150b15386dd5c75450bf47cbf4c61c3b4581f241f330df3d0b55b6bff96227fee021039398d7a75cef4ebe994c33b0c7783f11657d93b60dd9885753913f44c9e50b2587be2580c0d9cf9f23ab2c7a96a27e781a0ce0e11826ceb1a0cb360b92c84a235440bb064ef814f9e9c4d7af93826b02cbae99b144b05a33211ea5889a1437606acfe8f7d844b013f807f61282e7344dfafc3ddbb14d476cecd733974875cd6fca06dc0d3ff3797d152c7f6bd12995c764687eaef442d97e9c5a7ef5beeb8ff712167d9befe1c1a0f81737a25469850d01da60dc0492d941bec8eef00479d0f0aa578dc8ad7e562a57405424d989392074d7e75440751ed3f644a947925c8eccc79e80e0c9b5122efd018f06870a6361ae41f8cb6265c288be03dbff074a8d07f7e066759d90ffd41f2db2cf1f36af52dd36f864a3a06127097a20246ba31ab96e1344b3ee896b305830b2dc7d03883879f911884fc13b96ee45c3cad1731c0ca6674e64f5e66a4b4487d85dbe6e3ce89191cee492c5e23b405fea030ee8a8982fd026c4a1aa27d23f66f59ca8da16c58ce87a29b7ce42e2d612c5335833d98c5a5f2454036d5de0514e92e562f2aa81e3a48de30d7bf74eede25811ca45e47e62ba39879ca0ca936329e48ed01dae45c4857db98137ee4bcaf33038f988089bc23e6cf28367b765204990d8c512cd3721dcc1637de67bfbdb01fd482f70d334391e574f3858bf18a6f7bfc899bcd0f4d0cf47b77b6fabdbf9dfa1b44e13051e3f1419a5f21193b62e56762563282f5bc6ce4ff3e2d696ed0752b637ed5e916378e220a7480473d2c699ad5f53f36bdb4eb6184964676804dbd735b81a9208b6d368ee47415b45948ca49b1516338bfc9662ed8389b4bdaf88835a3d93b648abcb283e2e84a24bba19677e75252e2bb4a53aab22e1bccde0a6c267d3f771ce931b006e1b2d1c94655005bb95a7b6f5e8366b47826fb5ed07606523cf0fa6af8c4f92b3b03d06ee696c2abdb7d709e9536a3984ede74015211824928bebee601e8bb2a78ef787ec096c5decd293414b11861701a5b62e4218888420b0673a973ace0538f6e5418865c3bb4e916984ffbbfb04680b536ef4c53b7637e5daa2630f3d6c0ee2b74a051685f2fd18617851c8705640aaffa545e5efab13d710aa25463734928f8c8fc309605c52c23661d0233017747e83fd09ec3f3052608809511f5883c320ee549cfc4da94b1a52c4adc74ae3b571554b6978c1920c2c4bd35747897e3494cbe4eddf189a53828c2bbec2bb25b4fbc1d373576a01d794a2bfa7d15a7e3161caf384541bc58bc4db0ea01145becff85958e8b435b5d9525a0f3e5cf1d1d31fc5d75544ef8a46b8c93a7fe26ee827e9db367bfc6750e69e6a17f3027badfa305276c7ed430004e846c2d720acd4d8aa8610815a1d085e085b7c0f5efe931b46a3f4e66f0c8306293a1c875dafbda2bfe3159aa867fc0051c4ffc70e4984241ba7a0da21083ec1469ddf126dfe4dcb0984fdf139d8c9fbb432f9e894bb9a73905981b3cacf6ce93467b2de878bb4597a07666b3a6d35c8cfe19f2ed122eac039e3ad3748a58a07f2a1e3408171107ec744cb965963a4b52bc8310152d1d5232110db7c1fce0a21bf4eb4ba5bbb490356a5eb9683dd071c3ec8e173913572d71d4df903150ec21c54b21e53a0fb62d9c0bdbca92c02c9d9d38299253756aca45c0785bf1f5c5a31a9a4c16b730899c24b0c69222c42e87bb72d99520995fcde077e161772201d5fd87ba1bbe82c2f808baa7b280227c10137a3a03d353cf4463c1e6ba74094396c5d4464abf773412c4dd9a6e1e78294c2ea2dcd92682d2060e45360bf0c06c727b981c6e3dc018b382f9a44d853451c4738996f412410d9f080d12011f184175497308df27e537c26cfecbc8ac3b45106d491bbac021d5db2662a511f5ad4208993ae71c458062e1b6b4e6d6ed16b8852b2bca7170c5bfff76c785f8625d31b80703acb234f7668029ec0af46be56d5981f2c9859b28b53c38e32ddb555d6168996220b30c4197f792c10f4e9531d99b5b1305ec0f36eb0f4c8c72a5228845928826e68a29e32dfe902aaffc28dc3f556fe42aefc74f0254b2e779aabcb757b5f09f9e194993dfe4a11606d9e64271380e2d702d9822edb9912f91528e98440127b3756f1240d152cd51e1ac981c4a80633a4579980e341b5181ed3913b8179a38407f02a00a63004a0e0590b9b96f28c6dc717dbddc0012501357ffba0338500990e9c4475cba085cbc39c6f83a13e0f8b3295f964df13c0f720374f9e5991e9b52afc7b1813bdeefe7e7b94014d0a72ce0c99b148224f2f639f3faa77eb6e7bd9f3ac480457f85f7dfea93e8b906e41788a0c74b479cf42050f421c1529ef24b300b0106b2bb7c5ef759b681d7616c3cfb03be52cc02058ab887dbf8376b44d6e71190f8ce514f331b87eb727c9166b5427793d98cd1dfcbf7c14fde35f8d83df649b2f0a70228a6694ffe6407083f1ac589816b3ddd0b813655d721835f4cca78fc1ec67734662ea990ceb852d1970b57d91243ea487baf707af253b3955eaf68226a6218a37f25715a9b696f99fe44f02e55ef9303029af4287235798deb06018eac5a93cea2f4d0a6d8bcfc22b75344a237ce70355bf8d2f140c2e3de132ffe13e5c69cb5727098c70df0382f819047316887b1c47f518c45b61623fee2376119823d76598e33b52e6cf36745e643b6291fef17e30308250fcda2b1452c16c410c6b8b23301fe605e7412c71805046b0a8ab0c7b5689819452d01be784203346742c6f08908fbd9518643a9382462c312809515b2480a8217c64399eb3350f5c807046d62ea60429f450051ef5c04120b0ad6c8a5228e2e804778d812984b3700e41ff662b2694e2c1a889af44fd21158c78701a1d7a707b26b22d82f07d4f6b125925d088812a8aa96f0559871c1d21019461704f81efc05b9508f19f4823ea7d91029dd954252b1b3c6014b487f52ab5ed661bc68e3e9fcfa5a998520dc466c2b592eb7d8e9ff6cc9710a9824233da325a970d1b9abcea8bc25ed108261b059b04c40d6132d1414ddbf41db76a8fbc92172f36312bbff87f0bb5d1cd5c6e95b59661d44bb107526be34fd2847ba2bbae92b294c8a07ab3d672f15880c80286750bd6052d696b2f2742839dda60893c6ff3e4f6a407534a2e19f441025e626006f87a16e851bf74396c50bd02ef1e2d06505d7375aca02be1e3973d73cbcd6cc50ed0e3078681e166c451a73bbe86f6547d93890764a3e748f6601d215d5e44d73bd201b7e4850bb45d53bbd47dd68c8a0cf3a43bbcbc629c435117e6df2fa37d3c469e2f35b743c7f012cbfc736c086676597dc0ab03555896cad4e781d6f3a67eea4189f2c63a60e34d01421f84c2c55f895d76f91008726ff1c786b0075a973669012aefb15cca3a903c331ba1ff35e344eafac442c80902634115a6931ac4719c362d3ab82a3dd1b56e6105ccd5de2ef36cdd37ad98019206347cd03e84a06fa380e20826685987b7b2aa9dba8afb45032029fc06c1520ec6a02cd1931c11be82bad73e993435e52ec395ef864f9e6aeb3d372513d2953d8c5b04cb52465d4ca67ea8983e6e4c10785faf8ad825ea14ccd8aa5435e5c4ff78ffea2e4a20eceda66cab3ce6e1e40eae8b2caa6e93ff235297e94a9f672c912d6f0199358e61b1b070f240cd20868409c229fad8c5d9cb60fa3801c00c7745378a3528c96d5d70f392b504414a7ce1ba80f28c3f60440cdfb409485342a98e9d0c2328a68d53c78edbffb2328ba0249892d837f885e84b07e4a9c69307b56edee82ae0e0f24d07aeb700bbc0b7d7d1d9e55418b7678a4c36b1a578406ee9022f1b7358dae6b344c6bb7e828a56ab0f6ec00f762b6f75c58240cdce3bbe3e7df220f9a46673fbf656f48f6981cabcc622a9a04dbc96dbf5a371aba60e43864e8ffb30d0510068ec89f520bb8bcbf895709783ca694d266835a90f29e5c2345c800435be9aaa2bde1ae1087d7dc7258a44d33e4366642d60e702e5c83a1de6cbd52927f72ff98c2a11ca2b119b849a099a6b0ee16a95dd0f8e6fa5cd587251305147b62c041c7f195f49f7a7a13d47f4830c82654e060c4114e72d082517a3a215b13468010e3c6617c307240da23845f9b1dcbf4e969f295e352da54ed583c2e91df9934e8fba4014c8e3c16c36969a36934e20bc3d9a65d4d3cf29802690c9d0bf4ef19ec0f0a69616719c85388083989ace4c619e2eb8f69d40a83183ff2fa7b0e531a9a33fccc31b5b98ae38bbd9542593d9c456f01f71a60287fffaac480b7c7d2db4c9c2106b4dc60cddd3f766b263dfe15c72b85de02b00315a87000de4f6e6ec4fa3d7c33d9f7fc000d26b630c8390bcf568b0343daea81067357c8a85db69d52ad7407ee683814c7a65a756c980cd0ed4c78960a71a6926516801cbcd9500e0d1f887790f0d871b7b55f5028420a519ef5dd356518c1351e86a0ceeb0bf0be64c9c927c571852cd77ad0a378ebfa228309388019352ba6ba51c88cbe36168821da45609a63ff6941bf5235222366903433d2979ea1c1cce55a15969125141f5285512be982cec02a14c4f83b5c869cddb46c6d62aaddfb69bba574c49a3c387bbf5a9bb0ffbd28962519a412c4902f98d806a98d6b302b56d21759db00c2fc09b3f2e6352b49939abc18ee9072e65b583587009f9e668666f5238e412e3d5ba0b357907630d815842b379b751638433586d5788fa1a2a2ffaaddcc079d5cd285d65608e81bcf5a69c5060c79659a43c614138f170aa4d0b6e09e5afb09bb39198295b8f3f48de1c4d4d614e55e843c2df6457245538f06a946b7ffb3812f7326fa66e261872c051bd1680c3ee0965e52b92a9251c72177880f999e3780d68b9c43ad3fec50a6a635b8e24c120c878d0d1ec0049aa9bcbbd4826a15d85728ed36dfe2c324b4237557f620bcd4b486b51e8d43b312b3c45bf86d181ace4217b1dd1206b572f0b73d4b64a770becae1d420db3a5bfa8e8bba3ea957efc7fd47114f6e3d83a0cdbdd4e8f35aa8790f4fd5e4ac4b1f66d9e8f04964f75401253b7de419fd8e8607b98c71532ef5644e129c16cfc22b598873354f02b02dcd68b7ae770bc0fdb4962bc5965f2de8eca62eb4057c143813a2ba20f39f218952c1d1d5a7bfb41c03f29f084fdcf8be32908ac5e70963c54f65bb850096b5d808a20716b80ab44276ac1713bd2db85db9863786f48e42cc35a3bb51f19f2f6f2ebcb5fb1f264472ead9debf208fd07abb183a72ead7383e31fd5da9d56f1e0899c7761143daf33431f389054df748457973a5c08ec41bcf0be8270a267072a287caa027589be63196209e9acca3b51c1e8cc6f2b8b7eefdad68c7c7d309f5c202fc2ed9919442ed82ae7a2c4626b44d100a9f68e9e636bb7747c0bd02d337345d629666719b7dbf4b3d55274663cf2ac586995e2128dbb377dc0d740cf6a3bdf70c59d426f1b1acbd95d06a75553c1f206f28573b650f507dbfd94d3d47443fcd6e4bc35bb20a0420d6157cbf291dfb15d95e5b303110ae4494fd6bda1070b556451395e3312054ff904242fc3bd0a1b9dfb3ff8c85f9664c8f2a4d9b739102322fe25da9d438fc4b97e30a0b8601fc1c4ad3fc145fe6c96bff9a1b8ade8f86318334d3a3c538a340f2a00556595b9ae8b9152d4284751d6015b26c4f1a5f1799f4e2ef07e9974b417f04da91b327bc5fcbe0faf8a9aee61e8d23ed09ba937988c1cc507084dd2a08ae92b853ad84fde615bb42bd9a83d7cebd6b7f344e6574c0c23cd379976b1d40e58e4655ea6aa1321cc90e8e6584dcdb5a346b93d5440408f19bd9a0d0f3cad8e614de0d322cc2be8e2b969483739e7a18110fa5b89feaec0573b56f6bbacbf9884a637e860d2a4874739e62210080181305c51dc5092e2622e398cf696c22c66b66b554b83ed58ba60f46932c2a8c912f6ace45f737f289594d306ba844988f860c699c93520f8ab9aa4fb05ad652cbc33dc23856607cf5a4bc1279b88224576e195edb93d2773dfc81ce4e5ed9469ffdc1b84d94d1f73b2d59114d2d3671fd77a18fce24f756880144839b811ade3010faac4e9bbf1dd06cb3997e08d9c9c8ed6ea9a25650e74100886c81dc328a7c8d0f9bf511b25ca137af01ef1a5216edd4bd0c2549aa699fe79d3c296c047a78069f022cd857f9d50da19f06b443db09dbe6aa8446895ad00a95b2ff3b137868c23fa035d5bafc9f953779ae5dd5183d9087cf40a2fdf42d17ec21344f00e574a8c6bb25e407d94d1b0d99adfa71667dcf545865c210fc0aea700817a7e7a54c9a9b1dbf045f008e8635826002790d04dc228ca277842dab14d3f739c395f1642e3b3600d972b95892d74d9322619f17be3bd01217d4498ac43ecbb0c38d99c3f5e7d5a9b59ff9d1adf6c3056ced876fc1bb011067c5e010057b8a1576db9f45325a3b26b4d7d3cb028d6e57358c69b4636d1bab04a66283ce4757b13c3e57e799b3859095f7c8ee51541c83bc63e6c3352f6b1fa1a7906e9b4c33c28939fe4a0f35659a116442bf5edc78da05e8dc636760a11ecd4a0f4bd416d2bbdbda488f3d3597af0f43547d2d0d18b19e7ee22b8d7307a32580fec6351b3af28d57ccc82f10e583f4c8847adb2c2a74a73e7289c8fdb48de6a274ba3b99f21480d0f58dca80cf769bae8814c388a34789a7bc7400ca875009ffd0478d00a1f32b591f89433a090a750f43438a915fbd44306f294c4a9c61dd58f7e7f84009d8a8f9938e3ae2c5590ddcbc6ff816beb342c8f22da22c9bbf69347aad653544b03785c0abd15d439e35e14a37a01d4dd15defb796c313d58d99ee0a91ee214f3b99a90e5364785e96a42d6597505258d0e5184e42116ecabe7a25ffcd22ec665120ff63b02570ab6595ac44ab5354484d31e3b947a39a56db6885f8db001126e568a7a6582f2a3db961869fcab2437adeaa05812fda5e013e868049e7623adb3891427801de50917844f1af6fba120263047aa42592b5216c810c8e8400be8321b58618ba2abca46616e4033fe26822315ae5430d5806d66a221dd280f1269e6039f46c8725067df70f984e12e222a8f5cb1e9c88041653e0e9829a5b247b259e96d19da5cc40c28c90ffd9714ec2ca8860289986ebeda5817ca48a6d5a8331618fe8ececff21dadacd9b97ebcea5b047b3b783d84ec3e46ad48ed26d5b247eb953da3a93785c20cec6c83d1f42fa6d493c91d8edbcd07ecc74afe18f1c7ebe99f0675c1c26ebe16352aa15f35ec8e6f62efbddd092639240ff6e1390a0f871c6979c03d7c10238670b05664bdf6cfa8a98dc0a94c7098681d8f7036ed3b7cf4a69d6b3769336072a0bc61e572ebbcd95d29db65fd630e9ecb293618ecca8a01bcf34e4596170d8fbb275b590abd5820a9cd6e1f728aac8517df92b6c4aa1a604b77d9305212047aba355fac550e01b3d067bc361f54660e47af4c867f640f9718b649869901107bc331aedc5f6b9beefcb2ddfbb5277e30c13f6749c93e81664b1696489b454203371f651c4b1bf1493c92c0d186e1044e6815d310d9609ae6bb86efb486fc619e8bc70861559287c83f9b6d21ead1158a4c5db95b1a67634b81f9349bdfb42ef7bcc1d2887800f11aacdeb0d10966924d8c16452f598c1e3fa2aa4b12baee161fde78f6d23ba5630f7571e3e06bfd59814dc7fa467131ad78470a53c8abd42983fda8d438e753c85d56f1a43fdf24d7896df01cc7bc3765d2a06c1fd1a290efde37a273c4c9f9ab5ddf0dc1e44d2ef77912646b3c4ca868b4f705238be43ded5322f5ddb0c4764a3e31dd6187bd67cdfb98868701edaaa3047f73302332bdd6e813b6cc411402e2a6f1b86135a21c81a55e7c8942e816c7d005131ee4b0f72103f9bbc28846cfcec3719dd22fa5f3c438a1943f86e34005841fb6566406ec0d692fe7ad9c2ee5d679708161fc9f8020e297d20402ff4ea4626f38d4684f93a133cf4da3dc2b5dff0d860630372fb10d83a4f08cb74df523b7df73f7fd0f01e14acb9fb05efa6dd9b8fdfd7301aa1710281d02ded2c88105b0af2088d76699f9ca158f766126ee91010c15245041a40bb25ff40312e866a6844a0af92f57a8461fd98da830f695c54fa59ead0a8549c731c2cada556ccfd5c49fa5620e2b5e2fa4667bbf5566ef0f6d5d050903997a17d5828d26509c412bd1c239aca4714598c0bef90a5348fff4cc034086edf8880c4a0dc40c4eabd67d6a5173e1892324090abc23196d4ce638bffe8ffb0677ef835d55e739b6da043fb4af5aec1f9cd36fde049c05df72787f63f40093355586f809e6db5ef0ae8197fa0a9807caa9806cc1b55859493a52c34479ba430a67998518614bf279cba3e77fde9923ba257ec267ce8998259d037ca71e23e64009c020b5106fb9a844d8c894f454015e0b70a0991d5b940c229637eda393b4f7aa4afb3c3e530322924948cc169a18caca15fedc673c678720d56a9185259c89361ed451b496e205be18acc4ada9aef07e1868a1711ad74e17d9f7cc2ead5885d0732da0efcb7f07a3620fb451448026014214167f708d71c9e8d5493c337e49b64ab64aa3137c04ca9325aff5d060ca96ed88ee07aa89e3cac6b0509689195c3e8411a41c828fa91f6dc9950742a29f2524077c2aac9cecb762e2cc8b8c8db87d64c3a771c763ebca716fe6b964b3c4fea36d8212d3cd9b02e727bd1d80861b8d4c806dea1a2f010872c36dac45c47d7b26f3330e536380ebbbaa18a153d0581d4cc958037136bda6618339b80b391a6d274dc8aba09e744d8081d38923cd99a25f1bd8c9a1a2d6600076eefc50b1690c018b312b3d005ad0ce36548c535d1921c434b3e1b2e2cc6e85de66f9a4ba87bc88c068578c7b4c1d2e190aa972208234c3ec531b501e39d481723006be87dba1a69c5d728f2b2604d2d545b5d276b6b12d91890b5015620aeed521da7bd09834bc34b191bf3c9ed0ee1e80f3e716327cf16160e477d737cdcd7a03a072ecba4eb7ce82b3b3ce4a15aedeb560d29a9726834136d46690d2571addcc123531ebb263f6f3c365bd4bd85289f1065e3ac8837d6c49103710c0ea7ba21e1e8341b670ed92d17f784ae1ed8d016f881241ee49ec5146bf2ed31b198c217dd459c254c2a70257876c9f7cc5ef871faa9aa003bae338ab5b12089a565f18005d2be820a3287f3d8ef5c8a0ea25e2c269ac771acf4147b55b8b47254cefa262b63dfb052402be21da35395c6141a7259b0670dfc8437693cc17d6d72ce3a52a95aab54261c2c040e6bdc8ec62b854983ebf9fc3d11410265f34a3f271ca98f079c57c2a0bc9c9156661fb6a482184a192b8ad0fa3b4a39e817fe86d2fea52b11251821d6ed4d4a99fe2df34b69c74b4a18fa7c566d085c2c252d04f61be84710f579c87c30306ceb120309aa9e03c812f7148a4a39eec2b3396f05904e0e7d2001be2746f86a762ba3041267af6fc00d33419c0c1c61d7fae49c611d9cd71294bcf5b208f342ea049fcb5e59ec30834c0ef6593111d2ae497cccf18e5ea53057e0f3857d12b250254cdc7b39c8318341f6a6a8809be22ea2c4f4dc6aedab20d317cf118cae76656f65a546d08209c4e9419724ad74f8cac6964c00ede8485d24a0276cdeb0d4f49ba7f728fb001a1b2fef4b6854c35495447779936c92bc2edceafe96ecb64eccfbcc035d81521679f14ed673c964341f4b80e3af8fad926720a54891ce24a14512db5b684cc2a0e04e49da3ce00e7eaa72d015b1593efbdbf3d800815857d3c1adce9c023aca98b58f34517329c7533b685870ccfdf579a37f32e1769b4d1eff02a63451dd7be56e467a83ea122dbf91f6b76923cbca872e03d60f80dc67b2dd1e3ac1f2755c1db91b55f4e3ea03be47e091b9ad5752d9dd837208020c9b44c5556407f564d000d66da9072f37526d735cf20cd3808160bcd8f7d6b35128e41b721e0fad4541e15d64437fb66c679fee69b0e6d6a52c769ee36ae7d24b1e9c0bf8d6d255084850c6e204cd315fdd7b18bb73a0f3c5c603c750704c40bbad860729c4708673a4a1fbc872c85a5ffad3760c5c5ea4324ac194d5a892fda0ee369a6ff419969fc03427202b89b961d8fd322795ae406ea6fe3bcd7883f4cce8058ff66901b42632f7a89e86097a478d18d539899d08ae1807922add6423c9ec898633495b8613e4a11885efab5c714005968853bec569ea81711ff06ba03b2a2282c1f111b600ccb9cc421f6f46d7d432875626f3629852a8397952ed0dfaf6845ec46327c172b0c1337f6fd7464720d25b5cefd317c5f5e2ae46e9cf16c25783e3d89645598bb41b7092415ba3b5e5ac5f2082cbea9721c70a5e916894485b3df02c4892d9e6a9cac6799730d3f4e0cacaffb50546c2c1b70350bcf799eee3eced2647066c94e23a69b252baad72481ad73e974ade3a30e899fc1dad1b814472684eac1e7f70fedf438fa98e79b6b3879eaf9c037ac1e1170d47acf7b3159dc2ab77c808233e4215d1eece1b62937b61cdeeb970ec259ccc2ba79785b02c1b26e0bcd483276903f15abd9abab1b69a745ff9afe551a3bb2d2c7c3d80573f2098917a343e0b468b717b154cd7a41b15dd348b50033393619a8df2d6cd9468e5a5fa212936f83ef121f47214bad2d0f167f46af01a6c91344f5425a506f9cd421f92ff24a51988f266a5900a656d0542e9434db5d25ecb2ff0db17b8081e290893bca25ad90b60010c69a449ecad3f12314e95d1d4ff8350528988fd41d9238d823e961261599691740d2188cec0d988013cfaa15703304ff670a071ffe10d4436f777c4b38f6e6c82a9380e46014f94763a5633bf3740a58cf92039b48861086213548c4a15552d966042122ff49db8e4f646850325cb1946b0f41be1ebb0cd68ae2cc0c9974284637c5981a13225527e0b9c4a684be584f440a270b688f4ed05964cd6f9844328b2652754759e14c7fee45321a9d2d8533dd5e5c74da5ba6c6ee746aded4f28df9936414ffc2ac93ac029381356003cf50284402c886a169bbfc4878158a368244d4a34e16de41be0a90c7bf7688e0232a27bbd4f95ec045ab04428486cc94c1047dac8b40b56b62a9abc64ca0e1cf7fa6b4910786c8caa4687794271c80b6ebcc9d5b115ead1bc48fe43b792457d18fc977f1011850a34052f3b2a4a1236d876297fdc130c5618c99b7509067f4a3742cc3c1031d06ef58d4fde39c160e8481cee41af07c16bb04e52b665704cd966a30054826384886e3c8d621c5376169b63dca550cc5e99e3046ea94dbb7f594b71bd2fa5b4c4d476e690e8be201569e925acfd1f68c30818062b5ea7b901c45db81915874ea8e1fcf23dde9a3fdcb0c8e9613f78218652b05a7813c4e39e5507ec5677767432e50b80deb61c4670de523281309ed015baff8caf7e1de30506c360747c775f31e4f95b3bb604e30d3c7dc1f7c1b282142eadaf28a444e00b937ba6032a67a6bc4a83e822b8d235ab6247d33fd0306273e5038b9cbebaedc007f4bd010326e5e779072a8ae72d585d8d18c0f12e8bf818233e4e5f0b56dc26503454143aba5ead831c83f8d7a847b04cdd2a4098051f8cb43b79af102eb8dd2d06477b6a28e94712988c88d8d51a403cf1f11cd826d3afefc14e416950869e278cfdddefb3807129327a6556c962c913699e15bffeeba8baa1082c327a5b1a5b56f37440fed1d6a22d45b71ff639ee058fc0b3e818068e42282d8075f69181d5b4684258b5283ccc2f49777a734248bf64936ce130e8e38950232aef119b5849e009a230fd255f1245549ca1dfc5622a7c8e2f0904490d6b816dde64655976a4c41bfcd598e3a21ac4edb37d7be1dd58203cf3eaa7deaf2e4a344e996ea7e9f60938105398b724442d640687c442386ae717830693a8064bd26e422baf60be640153059063be052f46cd77a22ca6095f666832d0629ec93450aaa2b7ebac93e589c671132edac2cad238c19188a3f2d73eda2ed28200dd4c86ff0766c9a7b77b1d01ddff50531640dea23a00280ac42e099f3aa7a8495466ec41062655d4e7313d30813ded0406d38ee4b958a98d7e8afc20db1d62fb28cdc78362efe5d5d113f1b41959977c55c2d895c99f9eb9f0df9bc896e9e2336bf508e497a5b6f69464ed38b30553750c3d8811356193b8fce3efcb1efae6c00a924c1341953b5610ef36c77fed8c63479be436c4ba1866012c6b89668c1151af6bf9019eac75743d55f8b3c31c211b6796d4dd74d2d105e20e1a9497e216a5f83d40e2860c66edd1f416ec50281884c6163792cb000f6873639c11751255da59c30025a7cda4e94561e1eb383d81112dfe63ef42b158d2eb4766c71e69941dbdae6b2847941f4e18c8490c454eafb5140ca63e364fc99a8620934b6fc7d701bcf9add9dc45ab131427c8d37dbdf82dd47f08e38900cb803cf4459b1047383098842cd8b91d643f0355691faa041507b5ea9a077c755b79f885f5872a9b787521d841196ea5b6ffbf3094b578be500c834205812661cfc275f18ad3b642d22bc82a7819809488878cffad7d9165570b46409c60e50438a571e3044f9d123e97d0c60bc4b6e4fd4bc2d609c7efe136f939cc5687137c9684f7e9a7cc1e1230e60a92cee8c92e32764ab9616ed793b4e636f88697e237deb5df6383d68c45032d70cb248f481a43c60ee8e5a1fd59b84ef20335f1e2236efd2dfd78fe592abb0d2a7a4c5f8b19bcdd36225a6c06ee275a083167164847f76a656256dd5219ca77130c20164a3953b37fc70ccf96e7609834366c7b4f21f6118f345affa15e8a43a0d61fdab0d547130a740ac2de6cf7ad63fbdb2f0b00df8de776a4d42eac2086f77ffa836934355a229b56545fda0321e009743284d93e7508274dd245b6b732436b53504bb4904b50a4388a7c11eb6c2179448f7ad53045894666ef6c1bc631d1e12fe414b9c88c076d119f4c69e9457bfa8d39677814710762d975952e973d53dc56ab42b7d99d8bed3e5201090c20a69ea7f1d045269e6fae1abe50f6310ef8752ea4395410171a5f6816e00894fcf96c9193d29fd6a811ea9c877726b889afc12d6307d892f01e363bc1d5735068e281bd4ea902e30515ece96b61c2f86628374cc3099d9f98730bffd4c3130439b22ca34776cef98fd5b05f7a60c5c830b52a4c869e4428bcb536171a1efb04f3c774b208025aef2b45abefffdac1d3bb346d881078df03f5be573595bf93d7b3bf7938e2f56a52db8a64018ce2406b99b6984363cca044965ebac83e84d38021fc6b51db3fbace7537e538cd781499c7239403c1fa7dc7a8545f4a2d873c473462f0cc58d01de9fce2aadf02297caa4190704b53b35a86f90a9e5dd2c0946be32c7eee6fd6f5f04572bbebda02290fbee0e2901da37813455c7d217f661f328adab6871ba2a827bd00b34356e766adfdceb19fa6060d4c357d4117dbf9a93ff14c9bac08dbfed34e6fbade61090c028937f9c29f4ca0c1427194a946312907ccaa05dfc74381d05c10e19f8ad7388da125b07f243e38a7b7292f29bc1d6e3b0616cc5f3f47825f0c179469ce1fd1060b8207c2aeb628670e83f78e7fa8bfe251d1cf51b92c1180a3ad898f9058304c9ac92def0c7668409df8ec9fdb7a650f456562323cb7a7f813067422fb7374fd01a18b7d9111cf4e683723423b73d735d039a5b0c6e6b1f570f86e274b28861ea878062a8141532a4e904dd538de523482ae031733e9b30bcab1a49634b1bb1fb893da83c38d2a97e3b2fcf3d05b05048bb90abb5b111bb6c999e192220ab260a47b1d064ab7b301fe32d365052309032cd4aa4a8369446ccb8d4f69d1e99ec64a8538e6bb77c5e2d77c1f74f991c64514f10c9399379b6b67d5a693cc3b1bf87c388b5db0fae484850c2b461d85ca58b0e7323347b41237281073d336a7162afbc0f4d5520e9d102dee500c47d8f28f0ebdbb31f9d97b0616e01d09199c4771ee1ffe9ec09bd11fa04f25a6d9d27a49809ffbb1f3b003eb310e80606d2b019e5938d47a5da3217f8d127eeb9e4bc0cf10809b9d0a176d297ccaaa94c1dc715a6ada3990a17d59edf2966d3cf93fabe04527b818c8eab8b03693c322dc3226d728c87268a329d8c0cc93e0a578f987a005516ea061915b7cf64c1f161d1a121656cd1067416ca936b378d2c402cb1797c4e12ee47a3a10cf94a3281b9a4ea26414ab9a71c9953a3005532dc537a4d44ac828341e2457e9c5868ef9204360598188fefdd75258c384cc9402495cb1671bcc60004ac4467142d8bf7c557840793e3dc6fb9073ebd3cffff2a7a43d678f0db6da4a7934da9c93e9d1dc53f8ba86411e59ebfcf4111a4b7515260dcb3bd5bb9380dcd08b8802cdd6742e2aaf4cf7545bbcdfa8f3d9b1fa8715525a256c9ae0b06a9bd973cca51782d12ce8a666f7892aa6e170ffc9d1c41dcb442d358883f839d63e02794f590fe26fb5ef49b2960f7fcd375df68298310413fa65ac5ae3dd0d82892517da191e2d488cc0d12c178a86737612873e85e31cc644b08fdb72f2a1955876dcf632461dc7772dbc8f2ce5e07c4ad0020e66823ce0edd75e00ecae958b037345f813d64939623e521e74972d3bd4ad9f0d91e2f13194271f54d3691f6b664a0110d18442f032919916000b8a22bbd71a50908c2bf0697bfb884a0ea3edade3553bd5f686737c48595b192c39593b21d04a4904b6f4d5d72e2300b69db30b892d7b0baf8252cebb0acd437a051725c9ded60fae4e3bbb134450cf15228c708ba59f7c13742b23b24cd2d73bfd33e72eac4ad0bf3dd9bc7557e8940291bbcc2d77425f6ab307483be18e1766f7f7a4cc2de8c43bbb06116fe59b682e56a72084e98b74ac0b099012455d329ba35958273493d752314a6756e6ec1ef21d1fd1a26194a29ac773442e1302c3c71b2213870bba92acfa37f3b63bf3fb961ac1f80533a6e987a28690b160da509ac7e5449f2b30ebaf58682abd18081530383968e4507077542e20636581250203ebbb90cdde2c87bc0043be60daa5cdbb2d35e3f8adffdb32982f27f94568250bbf77f23f46abf14365a11801c46145634d471b22805af95a692940b27ff58d45e6411f434d591dad6a4699b438252816e972613fcb3faa50b0ef3664851360ff38718e9bcbd25ce410b9041966e13a872a14b189e05ec207bb25abc189abadd830d2e484e92ae1168ee91f0091b15f486c045680e03b49c37e4238dd2d17fd5212b7321f09d97e75f86ef2b06cc9062e6485b96beaeba11c04fb23d3b5c4b4112a43dec5d4e547ec0e1e6fd703168b5e605d6bc986a620b010c7b2789903d8225d9c2f043b29f0a4b8ea53c688ffc0ddb04731d5c079e3cb286507fdb3af165b7cb82742ee2f7c031be70fdb6c9041e15d41c3b0dc95fade1a478cc37ae78fc78a1402e30ba00671758f01514ba64437240cf87639c97e8c98c0f618060750a7359bde7fa7416d6aa16e3c0f3feeb6103d38d9f300a077c1fcd8f74721bc39a699cd98cd7e87d7d16b2af4c14f1d75a78403f40ae41aefeb15c5de7cc0072ddba0e84381f00368718590330d975d9e68206d288767993eb16ffc0a98929d19e395b0bc26787a1dedf721b4bbb1b33db26c504ed22e1b09934ea0229c0f8499861b6e1e6a97059caaded75526a13427d3ec5ad9477553ef21ddbbd1f734f3650184f5712114d75bfa1472fc1ea4f27e01d11cd68db49a27795568de0a54f499cf311b1a80408ebe3cd8fd55164536983c186746968d903224d1771df3175ad8ef0cc954c48a8c6b1f39fc2542137cf4b99b8c025ffee5271365c1e45c000b1d7546f3c386c066538e6b219ae72bc508957371929f9b363addb36332024f7aab938cf5d6a4e26eaa82bbb7f9572d18093d30d4ac2095880d3b034c52229fd386c45a05454956b23d139d798085f108d0552be84940f6518ef5f6c051de4bd5de82da7d53b5b5a05f79fccbc6b8693225a758110285b97a8d9d29b849a2543225d00c2b133b5d5266118cfd25dd4a74b6d7226040c6078b110375411048624052166bda73bd5a7112f9ca14ceeac2bf8831c04ea4c3268fca40110e0fe705ebd62eb26512f8d8f58852c5d8cc7eb70fdffdb2c558b5d736e806c7c1403df3c8e28bb80096ee62f6e7213b27e6a7ed47660c163ec30e82146869eecf21a21a130f69181d61ba91d619b7900c4b98b9f87c9260aa00a94d9bda1c657d29e67aa47bcf87ae7e7bdcef86b3eff63ca19abcff1215a990d1a261a948bfad7e72b4badce0490315a130514a2f5949436a7d9903f5e1f7ce52edb903c6ed01045b015c00732823778fa1e7a80f90eaf767f086cc667025b6f0d40186f1695ee754abb6833cca6956d5c18b9063fa60053cd571adad49ae209dcd1b857f37ca5ddb07f9ef3675b183503f31913c5cb9e1ee9ad6699456d7b91bbb0beead389c3cce27b73958a37487589366c7b0185fe2095cc4a63ae199083636d8ea2eb6caf4274f3293a12430e0359a19ea3940f86633f70a043f62c7f54912647862fc5e57ae8f98cf2e5339ce5c4b3df27b40543c505057cd081a96dc7315b3a7c573bc1183333f00e6b4c16c51c92b28ff9ed7f99832258771376816ac7790bb1b1c4367620776f295623104c71e9844ae4803808f47939e29401d5aa7dcdd9f7812b40f6bfac633794b392f4d273f38db1040e6d7baa8f0d9882f6df3850bcbdb8b2b1182f0e161b3588437624eb6ea881a48752df5a967c32c381ef0afe9af683d7d768648345ee0488977631d4ca7f58368a27e688c34371a41c23c322e019590e4e7597063deead06491aa9a474d8c5923cb2fd98736b26dc2c3edc06c7866841165c7ba188f38ea0e283af450429df15492f0bf75ff3bf26864167557399dda0745a837c92203647078e9394f5b448ae64a0a801954953fa76b6f53e0ff374246f7bfc368836c9c247efac142ac1977f20198a463f7b1dee07dd60535ff8a2e9d186fa6fab93261ece597b0bb44a4215ff2b3c7d3d1124976889f6aa8c6c5b0ab2cde3102a1e2cad23729e6e94ae99dead55ba2a89a200f64dd62c6a4cd4c0f57d7b85c4f0424999e0155a0ac0998f35ba15870de88ccaad2920a18c7a5c8ab6842136a98895003ca42cdc56c74f288a8d0b95d7fd4e952266589b0fee6a5626c5a843aa6770224e84f05042ac58cae6ae364d958602c70cecf517f9bff5ec50d36410710e31e8c5c78e851676f4701f21216852e2cdcfbea980bba4c095b6f501201fd3a73608f08ab61ac7548f8d1893acfcc9236305d8f29b7fd35e0065fd06788794efd7331a6c01afcda195cb95bb13057b29c2e06c74a89c50563119ef343c8f80f9253ecb2a79b5cf3ffce504c99785aa31d1ec3005e2d6feec18ee069c7c4bbfaee799a58b894f98204ababa5865ee96eb32638cf17229d163a876eaeb2a99972c09bee4181dd94bf97d20a727f59d6577d931aac605f630820f8d658a94bacf49f694332ba2be6bbfd33c2e4e708b469e074b567b10b016a0b240c870e8babe58fede89a3155b7551b9afdcfd26c1ae06ce0f110b6e72a397544fd83110475bb30435f3307c4203f7f599f1ed9f161cd40e5e58c7bfb45cb3c0a3743c076fe5ae2cc647a5441634fa2f5661665b37379ef93bd4c3829a992a0f4045f2750cd3e673d61fd45d5fa87d6a7832098210f9e3117a419be441d38d0f36bf644872451a4772e615796a01583debba8ae78b1954288bc98894e31d159487efd683f01d07c0c0a2882eb6bf349c11f37b4882979c68d5f6f32302ae8357f250239053615780b4637f126496628cf51904d893bf8daa0270cc96b3f2497e5f1276861828f2fb389615a9a2c8620d1ca364001ac1170ef162e14d33f9ea2bfa8bd86e32d0e974194664678aa11a095cae8df63041a107fbbd91d1326fc381fba4c9590ac5af78e0865da512172c1c762273131573976c43aab3437a8ebaf4f56e1b106df23f7bfb2601d36cb1cf998c1640d2e997c365c3856f0f9cc27a3364c3455e41004b5a2264d949164f4d978499ed9f0e76e2d8f966e1ae642fbbae6c4b6ecc5dccf665868e4742cff6013177c076a839226403fced090d3dbb00dca6c45384ea4af11133a115b43cda905c5dc14149f54de760e7e1b3f7411e1c7e49a89c82a1ba7e8381b253b8c804b5d670bc6078817d7abdcf9c7338a2fb35e6aba256b3cdc3a12aeeba40909ee11da8dca5f3c245c772c3631fbb956ac57e6b9c1eaf3678c1dd2f0f92001fa23e5e8274b01471e801fa36eae7b550c21a1bc4c11a696d9c9f616f72b4e8aa245011d7a43ee17faf1c147b29ea68610283247d366a6d44ac4d4efb202d3168cf3baf909dc26e600654bf1d1b8e2ccc168c44bb94609fbe985a55408f6b807523eabc7e522907db8a673c5b62a559febcb3d653b280ddc572f25f72b646d667ace948cb405b26c93eb4ea5cec1ca08b167a11dbf07f8f894a055cba4c340e0d43d9e3e55401fed80a303d9b150f14629b55899f66e6df3b7b755b73ed8f65a62f47e4a2ec5607a78c9c3be720eccf37d99f6d441f5dcc730124e323dbc13b44c0075fc8f087e88412563c5f82ed05fadf70ebf98ae48f6f336f57b6ee39dd679740fe2b93d22be01061200cd550fbf18935b5fa909ca49d41925bf7890b29709adcee3b2c0bdd18ba9911b34024b4cef357daa98073a4f309667e1747c6143158457c01f5f2c243de77942e57015351c148bb69e21c01e2a0aa7793f8fbcbe68327c4c0f2e0c5b7456c79d3c13bdae38297a13d45e06de8027c0cf21eee516520cbd703e332edbca1d244fb272ced674fcc1a64ef733c4b12635e8674ec6491eaa07014d00c56918403ea89cc3dc9ed97852f1980e08064051ced8fc0a5985a54c0310fd1cb5e69bd7c46f2e557aa5eb561d3db13db440a25f871dfc533fb106ead6db91f922a8f7e1835a0b4dad2fffb24d462743a49789bdf816814a750f12b8f770b179557078e2d6454030a2d91d4a0f7b3c88f84dfe3c6db147e7b88a3aae466c5bbbb365db7abc012612dea212211368e1c8d1bd46efa82c34b278193d1178505d1dc94428f487f76e08dab79aa820ba6feda57ffc1f2e29652d2a057fa72de43ec2d5747b2047c2bba9b3c845823874f958e81aec2ab15d4d2f2eea721319e6f7524a476d92a9fb9a210afc46a5f6ab456652be32c0e60d63d45b89e7c3becb4bd1f9d53c52e63bbbe58424fafaf11fd826e83ce74b26fe04179d141b0b84f4ea2d1411b5cdfeb4446288f120fcdc0c6b801497d87a94444709202179b30dc7c02437d91aa808c5126322fdba01c890183e39352909cb12c042f4761bd2c03d7032b516d9df2c7284f3cb00b09d197f5d6a2348560b2d50f793ee3ec11ed4915f005ce75d844a987f0edf3845173efcd6a08811d2460a8c228691bb07f8c9c1b8b0f8834db77ba88da4199cfd10199837cd9ffb5c70aa6d4b462981d31d138cd2ca74a0e1baa51ac64b5281331836b42cd3ad6fb922b5deb3638f1a94eca7e0470ef8c90f3681dd8332d635511f401595dff07d48ed0f36f94dfe36ba5dac02ce7021f8eb4fe1111842df6ba221449e1d23a563ea986293c23f00a8fe86964eea9eea56ea8e8247fd2cab27d37a4d3443d4de967e4af5fffb297c02ea4ff1a4d18455e85aafa9bbf6b6a31484dfd66beaefb10f3aa85d14c9dbc9fe6013c9fe9eeab3497f1ad2501d66cf41b71106247b62c3bc6ca333476cc222d2813e46a71af8935d3f982204e1978639d61d63ae4933fd6b10e40096b158a13bb9031d1bd9170d9c71fff5d01fd156a259e429109d526066280ebd8b8a76e2570159409cbdc8204e0ba664162bd4ae4903ee1dd70a2fe7cc0190b03bbd07fad87a72c51c008ffbcd0fb252646d9af460fbdf52996e32c11fa5aee7d45e576562e92808e9dcf9bd08f1d45f32a6ac2270fad2e32f7ffe4d3b93775e9081a1a6d06d93d28811ab2c631e215d792911cb055fe4ad3ddd6586214b04d7528175da40f58e080b8c736ea1d57e642dcb1a8e25c6a03d80bf6a107f65ecb3d08344daf4ea10b84cb55264c8f23ced478021082502c589954737a73709f0404bf5669fc8363215dc99ec888f60204dda995c851122c98bc4cea427a6772a03d75337b8ac0883fe865e344d568c9cf899db98bc3e2c451db557fe93b01e640038ddda110f4405e8c796c2a96df415c3673d95c1a2cacbe8592d87aa11366e059c9439042ba7c12b76f9cdca5ca67d81769aff4d719d0873c17f528535995052b8835231e3acb24fc4688b9300b04997664d29064667eaeaecce57eb0a58cc88e6f54ded38b48cd151663c1765f878b7f93f63d43fd4a370f524639e33e7957810a51e1c7305a0d658b53ead3d86ebea304b79797e0380a6f8a8459e75b3e27c929162bc553f33465dc1afc619756eaa329f29029eb590954b15105b09088cd01d0b6069fbd5179ab69dbf47ff20f928f1a1098d2f04e123f82e3dce9b33035aac5be62bdad4538fd58cf75711cab520a656c56b265fba5f3ae9270131108fd1267b5b1254b98a9aad5ea2860f62bea72556d9bbd0484aba4ecfc804aed1da31a42504e98d4b30bf7e5a1701914312e2ff5fee8aa77b9a1074bea44fcdea4be2b1f67403d1b4aeab3a1e3ed442fa1b0f14641b6cb51e6a404235ad6b1a99ee0c9e3c2adc6597d8110f10bbcc8b82a486d0c1689eed84ddb82f55bd6bff1d42f16b8aaee615ae576183b6c0bed74db27560a7246744cb9dd06f5d89633ba1f1da082d1ab8d6ed94f2cfe98c6af77c8b4dd9c059273b61d60f84209819e42c04298891e239c808071e04d081aa3871fd8bbe6bc74311999ab5f79f346111f6c12becf7136bbf7608210438b0c7e5c54418dacfece8b26ffcfd9dc6a63bbea00cb8a72bde38310e850ee44016092c960c42b60c37f974f018c62c3b6cdb16e6ae683089a10013c6268d7c4940873002abd445a669aa36e560ed437c7a06852835bc59797a5765c80e8ea150e134eab35bf368e21e5c3e4e8854b8c346fd6de64e54fd14a6c0a47f69abbf9c86a3ed0a9b744c42b002caa2ffd5b444f9b15acd5397b744471a57360751254a7d243fb3d4fb5038c57a27535bef54fafc264c3eb2c60efde3c00656b4ee1ebdefcdaa8b7bdf84d105396fbd4f3921b5cdd28848bc82834ad35ec079bc3d25586a223851e980e8699bacd3edb9b58623f9d44fe179f0e377f94d4be5721a7d610eb7bff97e996f60b7cad09e4de15d9b607d734e316231a10e32c6a04df7934ff968136e9111e75e466442c9ba1644ac90e0512497c96cd7b43d5fca1164e41f36d7a8fae2598cd8267826c1cc1faebfc061fc3fa7eeb756965aadd39ecbe55cc43f39858099c06e638e57352cc5caca81ee8de83233c621a312facc1899144bd1b975fcd2b209fadb257e18c039938b0a9b4e92a704b90e1790af2fa69150aa2f3f8c7a345d8cdf8392454c7a121763d54eb2ea65a0ea84c7e1f42c3f5a81d885ea1608a4b9fe61992d2660d9090e3e6461f309d30bb1c58a97a88cf81e6074f0d6699fd7c64da57685d1629acb03d389865d947dcd865389200fc7f39438de7e9d2b19329af0df77b3d04cd11d8e089841f3f1983e2808d78dc40cd81f084ab090f4056a0e06feb471a4edff005d0f2e31f6609a21d63ebba75a69bc9ef8c5078957523935016fd7dac38a45c057d5dda0322fdb87414fde2e074af1e9049af77cdc3f31112ba9e2954baeac18f45c1d1aeb2e8735cda8deea4633797d527158a125332b09c0c2771ce1a47285b09ee067dc4deafa4445248ef50a80858877141f5b593f984846303b9753a7a1e59b89236dbffced363ca24dda76b932be1e00492cf67a798581563c80809781bd4544df96e8facebde96edd58916b71fe54f4c00e7c4b8d70f8bc003de90b8d854fb8e67aa9fb9ae9a160e55707f8195ab1e0ed9541fc8f0f70f6815b3c0526b7db35ac287a9a592ab4657c5a65ce68d0f3b8910bc749b916011590bb3534f904ab6fd99caeeb420acc3e360fc4d49d7c77921fb18eb0b5cc27d7a6a24d62c065077a45fa776e0bb3d8e7bff5557a93fb2f4575cbf8d755ee53ec822f7af2a726ead47288d2b50f045074c078cdec329c648afe0db301f10e6b2bb2e53b8fc5a525a673426cb4874e8a1524f4578ab9fca01ae9ba81e42d9c03b5c1436f781f67dfee5fd0a3d5e0e626f8ead684921b1fd3e9b59fc68b81a6f33eb188f97465852f85f73824f62466a4e3c08a886f03bae65078dc99a2d465db8d9820e9faebab64e1fdedb4cc0cd4c962f861d84442a41d76c6b92798e41e30694b841f8ed315ceb9eae950b1d14f3d43cdb74e3e14a52d41d69efa4540ec7d91b1e1f2816a592405b6bfc60ba8b6e118b4d1063691ca1c64d3a2d57e0527302a35e59dbf2caed7a24b143f2c00da6cf5f9aba3d3370fb2470465ff35cfc79fc471d41ce6d689a2150b6809e36b053e17f95356404c8794e9fa157d13a5a299e0d156c84a2ab0bfe183128cb16f4377fc28ee09bf9c096222cecc4e614ec9202043220d213e037c3cdd0221ee28a77844f52c37c18cd9c28153068aba7863573abe97cdf50f4db38fa28db986a08a6c73e2ddaff2b734577734d1038e4823d925191ab83432a9b13022fb27b76830150a6f4132d62cf07c265842c1b23c43cf3fb4495f7d177805351e9a9555f52c14a33638c918a0836b34b0ddcf7e2f56e9d636f3b0e1e3bbfb4d955a4270e62c6b1d592043b950f0a5c8ecda2ee11f9ba6762a05043a79727bd5cf5a98eee1ed53c5eb0b170eff91ef879a628108ab8f4217c1c86ab44e7ea0bdf5bfe5bf60fb643261d5e7df565ba0eae424023769d5396097b87e1b2ac4d56a5a2c7fd086d131cf277210bc0e19af69e901263a3faabe5d666c3b39eec8067aa1bf5740ac3fe4eb02873fe84463a66d39e83bd67e8a3c5e75e78efbbc10822369d3385e65c1101515b4dafca8b47da606b740c889e644cc06a859f2b0802076c256540429fb6ba2fac7646e12650b3ccf04e585c5f51dcfcc32023a2cee298c90bf749c21de8f6b11de55a095dc2b899ec47364bbd12098f8ae079b18f0e4c988c4674f3f5d9d7967b55467c3219249c792313533dff115381ed24294288b6ac14723247eba5bff9c54fe2a4d23930b931ba558bf14163f6329c3522a2622027a7b98508ae7733a43e6ca33ff70be018fa86a1c2f795b71ba22f91478b52eafcf6e10338b0b26112c274b1cd85d16b1413d62e20a5ad85a9e9bede4c957b518ba42070cb19b21c03af6e4f18c811ff28ad8e2e0026bb5f15e0c834f540d859be52806dab594b333f102b951e9711133b5d6221cf1748358d7883294ed90590f84d7c3d6cdc27f4996bdc5fee4aa96e03e744c5fce7df30bad541f8c7aab96a3b5e038568e1ee802600af6a8f391b00c9c98956371c93b4245da4845355fc118a8c7371058bccf8aeffcad751848cf9bec84c397389681287e1a785931c1983d11e28ed51e364238be1304726829448c01cd6af0d053016afa31fcdafe75135cf600372cff06271920609c31b7834d997a3551e5809a3ed38fece0dfac0f6b9fdc3eadf681ad4f462630f083aa09189b153416b0bc04796fcb838ee5b78c8e374675c7c17f45e74cdbc511695f459caf6839a46644e8514489d839cc5438f2328bf4013a94c0192e6f9a5b4a9a0c52e1bd4b3fb9e8fab9b42342876bb3cc920c7b161afea0a71b3060032cc2048acd43c35c308e424e07ba567bedc0485f8949969a49c3ad4690ddcf85d024041b580fdfe642e835e431b0a1bf90db2e0c828dcea38f3c771b3fdd1084d9a3a10053a05c62398222fcc6fc4750df1b11c07ff10ffc24a4ed2df796524a29939401b30b3e0b850bf1032143f0f64fca44c89f6c9a9eb390d410b9b5cf9da77dbedf2d5d1fdebe4f5d5336752f51b7662ecd20f9f70bbb973207bb0fa5acfb2d1d1516ed0e848bf552fef087baa20dd4dfe79ed0f76bba57adb49ecdd9d73ce19a74cdcb2b9fb892148fa13e8fe2a0dcf9d88170ef2cc3b553a80ef52b2f94abef3c2143f49ccd5fddf0ef1cbcbf515e08b4ddffceed1ecec72e049cf79f9afe9517f78e1089e38534b6f567d9e42c997ad587fea977d9ee2e16b3ed9fa570d24af8e890b3c299af372485be1f0a85101dbc2b7944a3f15881d832c1292a45251d9a55dfb5d8d28b2de9f47a156a89a4c2961f392e3aec995b831dca7d5fc8c1fcb6ebe1f9bbfc399c1504841c3b7f892d200f928fc5961e6cf9a1e4e2c3d4f61b5b36f9beff8c243848b3cd873f27d4872bea92dff77da10462822bc9233333b6e391fa1ffef948fd0f7ffcd793b2fc4dd2e59e9fd4f2c9a62834f528b474d123d428e2a82fe9eb7e48936cf923ff10e9fdd03e486a77afd59b9dbbf76b3e41eefc997a13e6b349d29e4f94b6fca309db12e62ccff791b3ba2548ceca9d2b856e4494191aed6636d7842ed1252ac559d3a3e4b8439fc97782c178907c3164ca3c99d912cd9632944eaf1a5ec4ec90ba9c15462c5e98ecd99244928342fb13faa98b1ea11ed7a4fd23e744ce5262ceba9fcf7299d0b710e3b3d96c068299e3dc933207e5cb283bfc73ef76f8378f3828e76b4b9f451b72cb5cda726906c9c72e29ce0abb5f8a38b4973f8d8838f2cbeefde7921724b5ff7ea7f9f0cf59b078dafeb9f3f2c78e470e229bd0a1279d2077f77336c5749f2be5d08d100168fbe751c269b48780b4b3ea4bd96cc6009fc94f292a45a5a8a4c55b5aca2c199f61550d0751af7a139cd5bd7c2020901f4c233232a5bdca738083dda3bca6dd7dd44100ecd001b0b595e64a3e73314878c5d9dce87c084a2776f7dbafbc2676f73a5ef73908d80009e70b71cd17eaee555ff4201b2fa8fb94f70e769fbda2b4776902062513c934d4bd946fc26a25bfe60bc1fcaa2ffcd52a7fea7bff420c821c8a11f4cf5e18636104b33d06f94b300b81e06b6db4f30b753df2dfef3e5390ee43b96fe7859c165d3fc7f6d7beeeaa3eea20b54f7ff2a8c6e850dbf4659a3dbbfd236eff0a146d745f082436391101f7f9b167847b224544dd731e921c3b087cf8ddebbe10efec852370611ef7b3e4380844223ca9105277e89e9122570c76f43aa242111711922222efcaf8b246f79f1ed08e91ce640a5e64af9680187204726eee901fe7a0adb1c33a4abaadc014aa0102bdcf0d9e25441cb1020edaefa2430c3bb22f937860356efbf2c859ce9a6fff4717201e881f90206fd8b76fc2d04bafec47fb79e849f0b2e59f71f9714afba5cb2e01471c532a55233ccf4b0af19c85d2d33106cd2044364561d3da438c18bbdb9f77fbbc59abcda981f8daf679cb317fda6b1a38a4430a2ddf37ae3ba87a2813ed03c1b746938e388d42a550237f7aa4e1ed8cb3422a9b689c958a4039c619343df0cfc1f96bbcddf934cdf85b9f68436a1e7d51d7e698469b25c6d6110b85fedf1ff4e3ae93a3535ec14f2b67c925769c3e1147546161a7c5efd55a69adb4924af93286c5c999a770b5ebd4abd9d2e4105e23d155dad56fd20caa8f85d037494697b6620e5b8caf7e5a0945a65d6b7d89af95fedb53171bc5f452fbc5a98a57ca5a698c917e1f57b50f6bad55bb80b7e79c734e2fd31cdafbfde3b31e106fd31ae39c77d632e8ff74b95cae24a290ee39e794bf75b8f610ef2ea89d74ce39afa51fe9d72fc68f2f27c5757e21a62f3f6230314a192547841e4342b421bd884aaf21eac4d58a7e78befbd36a9d56b71ea9d65bea19345fcaace7d456f33dd0724e210787dc001c0b7488b78c311df2fc3cf3761830831810d4d4c101a8e77b0407e7534e8af615195a8c199f03b1355b3935c9807e064d9fcd8aac1f119c1f4696090e461cf6710ca25f7bd09f3f22cb04fa93fea4947ef534a6374fbfc68a36ade8d743eb2742fd9c90e0be3f2dc19f0814da49c0ff528f7e7d3981ac2e18fe8195bb3b90d56ade211704ff20a92177fb37a50f315a69bfda3ba594f24a7c7d0b9fb4d66afd497077f76ac11ad6b340f12790832821f93ef103f0e5ffc40f04f0f241cf0379c36d0ce05791555f3e4efc60481559e0cbdf222be8e5a3e207396efc4087bce14f146ddcf830b202f00b903780785b7bfb373c10a20dffac59ce8ad63cf08f03f842df436ee30b3d87d7c8f123def00f80e72382fe419e0424e80f7a16884420e8c0efbf80cedb17d8f21d00cfc1cf063480666c3e1af47c3cdeceaf7e7468e4649c19373e363d353caa1dbd4a71289d2e87c3c9379b8d5683f155595d638afa980ff01e0e8838de417fe7c00b2317d1059e065ef843c3f3c2193e3f5ed813f2ac747270c21b1b558e17ea14aae3362d2cda79875126ab89326f63abedb0f6f388a07cc0dbf22b0253904575d66431538f7a1adab75f7656eae5e7fca9385571eae09ceefc9c97fa1851281d28140a95d23b9592ae19343f954a7da5eff4a36bb6549ffe42fde9e8ed31305b393f75cca0f9f3e27963712a06dd78365e8abeed76d04fa17ea25020e447a1e8764efb428c57b34a182dc27886dc4382a6f5b8b29cd3e7a7570314c240e89022512240e66cdba7dd0e39a7cf7bc7238ed9f7d33c2221f06c8a9de8d0460601ade2eaf3c37bb9358f7e4fcf5f9c1ddf16e7512fbd10e5452f94f6ab7f511842a6fac0f17276429ffa854460389f4fd1eef1c2bbb4439f073267dbfbe9791acc660def26e779725ede6ec78f8e10cfe7d0781a37cfd9ccef47b5382fdf07eaefd7b7381f0f54fd7bbfc76bc0cee3bc0ebf3bf63578f9d5ebf9fbb2f321bf9e9efa383ffff654223022b02d3f443dd0dde9f980cc99067fbf1f3b8ff3fdb8f9f940e66cef7cd4411a6fbf9bf7791b2fa49b7bdb89e0f1b8a1217ff593fb9a2f1c3269d783e773debb1ef2cbf9cce38529ec9ccfb2e3e14d99535fe6f0e4fceae773e82a47e67c3abfd279a19c9f9739bffa9ce309810ec618effffc3c0ad5edf8f93c9d9cb5f3927bf9f1f4fcf4705ef278d293afc262a27cec3cd2d6e15161a1c13828a58f9d4ffebccffcecf7e3e7ef0faa7a3fe47bf67f64ad5f0864ce506f7fe7e7fc50bf63bdbff7e5177af5c21bdbf5a70a8bd9570f677efd9d47e1fc06df6377bcd9f110c1fbfb57caea853839f67d0e3e4b2e0412551fe5d597f77138781c2f4c615fa41dfa7cfd80ccd9be1f02f1b9f2ea70ef39f0421496b6cf6fe08528c4b6cf03792111d8f679d059ab1ca93f0dbecf89f6b17b7944feb3e381b3bdefb37b35887c3c07b810f3f97cd04d4524a93037407c0e053aa4481489c226e78193ee65f7797a534a29e967997d52a419142990b3c363c3c5f3cfc959e5ecf0e4e4803352626660d572e5a67fe137852281b24087dc510d2190071d724736329b261b271b3032354bcdc0d40ca448321d984e92a7a3a413c5c10d3bd9cc64f67be4eef9eac9dd0427d51a01c748b3a5fa8c9130926c13137128a16bbd312992105af394cf711ca64f76fcec1f3b0a684fbf1e12281189023445c488e81711e970ffc27574969c95f3f153b388c327e2a83651ae7f601325de88a89d515e6adfa6a69dc733681c6edb68c9f16c9a503bbba4337a45759b22d5cde506d83652342736319ba52a3ab4912d6dc7af4d91b00d3abc67f63d73d1e8dc24524ed146dcbebe9d13c9c14893d0f36517814884a9d763291209f4fd2312826f0b018d8822c91368999ac9e74ca0e74bbc3483a88bbe66d091d3123883a8e8104f9b27767c2984c6cf9efcd99a8142a1505d46d5f8a4b446a150a8ab039b4194e2a5292fa5dcf4298d802055c65972da5addce6abfafd3734233959f8d6c8a0ef1528c36e2c64b9f13fa61d1b672af7651289486ba585cb7c6278571136771b3d57d7c8c933825b4532e47aefef422091a0944fc8b2e1a9d7a1b99b37cfe0c6581ce4942e7d0c04cb8250ec6db73afe5a1f12176bdebe7a62ed5a519f4f3f3f38f875df7cc4573d1384b62d74f0a893bea3e0e096329746823cb80be676ca2ec33b3456dbe46bf4d1467f9bef91bbcf4abd7419aad198ff336329ba6199eced10c8a14697e88972e9779f10c4bc14bce8a392bc70993c165b0196f45303053dc732f6978db5b1f9f4fea4d6ed96d4f31302f2eaea73053d9f7a57f9e927a3bef3c5f3d3925cf8e0dcfcf8ec7067be7a594c9fd78520a0d6ff3642e79e3fe9d65f6954b30b9942fece9e9e9492e49293d2ef9814422deb8eff3852b9b6fd68f2a116ddc9d6adfb30dcf8cb7f1195f38dfe6ede77ced76e07ced76e47c8e36da895ab1308d9e1f9f19d365a5d6769d0de7d98cf794c58837eec720da88c53293b774fede6cadb57eaab5d61abfd65a6b1aafb5d6bae7b5d65affbcd65a6b9fd75a6b3de3b5d65abfc3b4d65a6badb5d65a6badb5d65a6badb5d65adba05e6badb5d6405aef3ccfebcfe97668ad46ab52b90ba34a69b94673384c87754da611a6c31a6f3d6168f468acfd84a1d1a37bb04f981fedd3736784f9d13edace303e33a6ae617c664c1a668699d33b8fd3062573b6b9b7dbe1f317473c513952e5a9a9d15c57b6e676186bbec95c398ea252dcb6d24c1e74ffde1a9e1e26fbfe4cba77c9bef76978d98c8f979f76bccce4e598833cde0c2f461b5336cbe42bfb7e263365b129bb59bcd8f7392b7498613067e5fcfddcc459387f43ccdd705568fdf36d3ecc306f51978b26b9a8d28f0a8db7280c468fc0a8116cc9fe4939798bc662b3fbf3938bb3b4fff919c55b144bd933262dfbe7a792b3f2fffc3cf256c5483f3f8d9cb5fa9ff732deaad5cd544753e791fdf34ec65935fff32ef356c54dda69ffbc3339abfb9ff726deaaf8c99e459949d93fef3067e1ff797779cbba4247da3f60bc65613031b03266f6cfcb9f974bdeb2b119741fc77e5e467156fd1f8b996cd964f664ffd0ff791078ebe27846bbf6cf3bc05b173683ee632e1acccfcf33c0594250347ea5876e4c68e5a3416fdd1890b384cce0fee7a95f213c1f44a6994163390683511a9bad9c69a699d2d96c653c73cd5cb3b5cd66ae996be682cdd6168bc162b0182c365b1b0c1683c560f7eb6cb636d70cba5f679babce5cb3a5cd66ae996be682cd96168bc162b0186c5f0d068bc162b0d8be6f67b3a5b9ecccceeccc355b783673cd5c33176cb6702c068bc16237365b1863adf18dedfb77365bd83583eeaf5657830ff57d952a958134f8be1cf3fe8bfdcf97750a9555a99c3fa7b42eab5239a7322a739b96b72db575abbc69798bc5f67dae6683cd0d96b74edb5cab9acd757fc3783667b39ad9beaff98d7da1c6f7b1b41a7774ab97cd80d17587f349c3586bcd75bbfab4de4b66e6b33abb9f6df7f3d6fbf1e2fef1e406e3abd53483c1c43c56633486a251dd9b6878be51be310c060bf10c8e6207af4a326df2a27cf37871cfe0ca386bf537a3b8aee67790f67d1f26fb7e0f6cdfcf379cc4aed9ca308c5d1986bacfb3f3653330cc1dadf2d386c99d9fbee80fb32b969ff6fdecca472ec65acfd8be3ba15cdaf7279aeb7b9a7196e4c0ec6bf3f765d36cc9a41974ffcebf2f999c85faabb1b84fad783eaf38eab9efac3cfb3b3c3c3bdec3ed7ceef942eb365fbdf9b987b33c3cfb1edbf7a91725d3be3b5e289784d42be7cb252925e288fb7ea6c15167592fe2a06fad0adb97b115ed671a74baa45151fe2bd7917d3fc768df1b6fc9be4cee879c94e2a083359c4e7da146dde4252efbbe4cba1f273b4b3d6944b471e552b4717fbedfbf3402ddef07d7a5208bf444210c5bffde7b87e896f3a7943d7cc8c120571e4d58e5a8d0613d5262bf1ec90fb6b7186bbd5a2525a1c20aa656b1ed4714cef4b5af9e55b2511cb4dd53effef4ee679366f785f8b3e6aa4b6892d29c181fe1e0ecb05a6e7af76f38a9e75efe19d6eb59a56d7fda28dbda242175036dce8bc61fda246bb7c69fbf763eeee3a78f1f7b27c8105b3806d9d735ac76d87646953b5a248be44b198720b7d7254ebafe7cf93489beb56f932efe1cbaf6dada17d278e3efc51f4aac6ddbfdb096effbbd5fe9cdf2ca2bafbcf27251e3bfdd0eedf390b362c421245d0ef14c1898b403dbf643556cd5fc4091753fe79c71d7c3a59447f9e33caa13568f1cb47589e7847b6e0a8dfa42a1c72f8f66907dfbd9d59e4d3cc8fec5df843968afcac7c1fb613dcaf6ebd112ed2d0ddb7ebe41408045b81ffdfbf2c8da7bb4a30676e68c9146d2481ae514b74328622add69763b620e1a9f82f9c0d01c517ff1e79046cd30d576a1d72382ff7cff58dfa506e4471bfe727a3f6cc7d91971502fc2858e8fe507727b3c41eefaf5f09874a6c963ca6cf93e06cc8e3dfca5ec76c877c949afb27a3efcabfc7ec877ff6a38f8de458e4052caeda5fc14c745e7dbedd0d106fd08fbb07df924df71d743fefc8c3b1e529b5f2c239fdcdddda57f9ce70029c950eada51f2a8c6e81fdbff0e2599bd3139a8b5974ff2c31fa65ec23a11b6976f3b1148b0539fd2db7ed813827f8804daf243f7af75bab4ce87b79a5a1ca4b4529f49d1067d4f9af3c39fa9f375cf713a42fc87e08df3f427fd18b34dceafbff3b8266d5feed09f367d7f7256f7f4dd8c5c72903ed5a13a9f83e34d72a54198525e4d35bd24676d4f67f5bdbed7f7c9699a4ae5492507e96b4f4671707b8dfb70fbcd9349f8b7ed836d9cf642bcb90d665fc64fc2a467bdd4871266e9a7529f27dd287412b1e98ff9436458fffee6fdb0165bce5a6b31e71ce6aaab20b7883668b5387f7dbbc9cdb940730e6e19235523329709ec5e32134fade76afe4f109c4796a4d0e7b6d03d20a066d26ca13e8cffcf382bf4266fa2ef5ce84b3254a2d9f439323a944a47b48c2f71ace9734ee818a31394146fa13e315ca4968edb3c99e4a09432dd0e2a3fa34da924136dd09954f15f3aa3ec70be8d38f2d39f45220e7f2a5db3f321dfe5bbcb9f73678ce935b385f81611870b646bba66107d2a5f205d85325cd3355b53053188fe0c62be8c98479b4e99481bfdee85c81dcea4f97216b6ab47d7f1f047753cfcef9d2e67dda73f8fcc17d7f1b8f5de5b6ffdfb759e03fcc30ed2df40faee49ce7a3299367d19ca299b4a290ed2329a937132a1244386be94e2743e056b3cd0ca47df70f4738a93491226b7e4e1344d566a5f7a51cba62f956414ab791af49fd2a79c568bc69fc3ce9f7536eda8c1360580546683d9f7a5962da56c39eb57edeb5bad6ab53eea33b7eb90cedb1e55b5ed515bf783fe10b9edc7fba997df7d1e42b7ef5e7adb77401be53dd61fdf670f59ededc3fadde71a6d6c3650dc6b9eea3b0fd7bce6c5af403b763e36d85c28f1df0e840e04f9f76dbcb068f78820f77db9af167202dd5fd8a34a4d86b5477d3923b369ec986526db59c668d93876cc224669dbaff6eb3fd972c7fd8cefd7189f47fb21bfbec6437ead5ff4a2ef678dd3bc0d841a72cb8fabb1a3ac515f0b51a8a7a80ef528ce8b96dfe5cd41d41772f13b2f3f17f31781768d68230649c92ffab05f7fd4faf6e953ac25b703755638df3fc41d177150499f46a0483540ed9454ce8fd34247f758164663d0ecf95930a1d45921260ab1d76cc9b3259593d2f78fe22ffc4db1f65888d4114710f9f4f94355ee61efc7630367e58823f2c81ec675e37982dcf3abe120fecd738083937e04aa1129965585f9fdb05fdf3f7f0868bab16f10ea0799699c7e312c8ad29b70ebf32fe06df9587ed841773a81781b7ba5f4a5b7a77fc9d7a5f4971fde7b2d9d7552a1230e6c31be727af042b22630f8da078a41927e3ada909f8e38a68c4f93871a23de2ee884f3e15ee6fbefade8fde47df9ad1cfc7bdfbe0f76f756586ede3b4bc62bdf31fe7c422020aefea1f43cf9b113c1c7c15a43f9fdb772b0ae5e4a29650782354ad8800791496857596ceab2d4ceaa559228b26b16bbfe0dfeb01ef2f9f1c72a498cb1b177771de2be2312a624065efc3adc82f7defbddb65eaca2840afb0e5d2984131b7f6005e313ad5d911c81423adb3f9ca4109b88a0a45e7b1f92dfcd6cff89858a23fbf77dfcd108c6f872dc6bcf69ef61eaab9c967211fc6ff71eff7e1e1069b4231ad10db45dc8c1285f4630b6c72be4f6e885f3b0f74488b8679f7d2438e82aa0df46901c8cfbdeefae1407f5bddf916d371ad7bbe810c3362e62e8985fd908c39cd545a2980b39b0de8a9865ac6d79d3b0125ff85839c5cbd2b6fb2a01854a4413031abc5861891335680180ce1aa940e6b0bdb6fcede5acb85b9448d26d6d12563841773ad02a86612ff68dfa3e4e72965c6d98fb3e7f21debe506b1f11c6492c71a0a12821b36b139e814b17195a3043d2154421be92251135bc7cdcc4c12467dd2fbc1f4efa300c6358d2125f91103dacc0c40a1cca6c994214e27d51355a09e206fa5bd3e6443fdc9af6c6e505c34deceb5e2490761dc0aed5c959548631b64253050a97242bacd842146ad90e57fb84333efc10e38245920c88c2df97891d82fbeed0834dfffe0843b3955f42cebaf70b8144a76dbfcdc941f91b07868e3bdcc4e830bfb66cda71871846458a1538f6d6e4acf939c085d8c6c55b914802cdb6d4494176d7b6a042ce3212bc158b36fda97f4eb91f1ea06e70e7eca6ce2e22b255aa1f41f287dc9f30b7092a941744f561d156a93ed587a068abbe10689fb7efbaeeb99fa8cec9fdd47d54d77179d3e8c7027d24b55224f4f123b1f791607ba79d757e3f6b919c36882a5934edf8d1267b088a5cbb7e9112b54e9fee852914b9ef05917be29ef9a18e5dbf687b9d9f80ed3f278da7414301148542fdec9ce39cbbfab69e4cb36bfd58ab17a3f723be3ff57ae6274202b6c7af874702b62760fb976667fa8578cb58add49af84fffe93fa5f3985f4cb94f4fa369dabb3bd5ea9c5fbff027be389730e9083dc2dbf1f0d7a846477016fdf9f34b08abf6c51a0e520700514a7d06dbfbf6be650e0a3d3f3ea165744a1d470e0a7da5cb1ed5763cfc37b949e958ca6dfb6a382841f953862a73c42aadfd82a4b69c344c150d534503c63f7f5e8cbf90da39448eb28ace5152b93b3406e1e6551fa2b02bce5795aae2a86e6af24ae7e74fff9abcd2f1f45ccda09acffb415f55c768d5cb34dbbb1d1b0f95139b975d0ab169b6881c8965a421b27923488a885e37f53555b5ea6b4afbeb88ad9caff56b6aa2cca6e6bf6a1f83eadfa15d57dec720d5eb805bf53936435ba5f3378f5371be10aff0cda70569618ecac68b31488573f341ec87286ced3b6167dfbc3f0ef64ffd0fdf42cde6b70dfb571bffcdbf20379f13166c1e099e41d3e68bcf8dd1f35573be9e2deee7af662bfffc1a55ea37fd85a9affe563b8ff3f46a06f9bd7f7fbb1a9576ce146811b65d09327df9b3d541fd11fc8bb183306a110104dbdecd3fc6a01b63508882d61ec97cfa483c4603dcc75e8c060889ecf07e2cc07d1cdec75f8c1ddcb7785b22f8f107c53e0537d8f11dac947e45321f89f6a0f83446f948a20715494af1950cc6f8230b090955ff66c47182f69a8ccc3ca30599ed7f93766cdf212e82a68dc9bc76dcfe59739af4c0de2e4c614bfbdb771ad5f598b4484af979e0609def2fbd2133d476783f14eac1753deefb97a75787d03d7bccd79efef659154eaea6eb313f9c9b37a7e7af3df52cf680b6ec7c6c2084d6743ee84ffaf30b42bfaaed5a6badb5c6a003ecfa594696fcfafac66bdfff7e2a2e3ab1eb87a0a7128ad486e366fa3db90b105b91e55f9dc7061b3ff542eb3c827cfe9c17eaeeee12a87eeed325159a462d2018da34c6c228c3f2c6a4b429047f05bb3873727bcd9349f209feece1efc9a6f531e6b81df5fe674dc2e493fa9b2761d84a986c3202a534562ff4edd1864b5458b4ab943888ec9f533b7c4720a06923b54395859e4f4398718bd2f6aff2be7dedb3adf7ad763fdfcdb7cfd9bbf9bb35bff673c6cec7c5afe56df3e86bd87e3fead7ef04b95f80863ee83f009791ab216ff8c7196f8e607d1f3c5ba958a33eb7a55329259df38bb3074a6f68b54fb7fa9a83f937afbee6d1f72aa46efaf80b1d57edabdb26e76f9edfc75eb5350acd2f58b894d9daa5a4f2134231f725149aabd58c38dc53db7f362647a07be3634179c37e5827959393338218bf7dd05a9cc2e0c6ce0a1f3b5829ae81e3a69125bfde54acc325d29127974ca1437739c65abb3bbed7bb1dfe497dfd5e107e5f77d894d64b0f201ef70f523f446173355ff385357ed43cf8058969b613ed43eefd33e7e5e4e4e4e4e47c41ee572e0b1d9f76608d1744ee9acf35ded739a068d77c31d608b90fdbf71fe10b52bfe6f1e61ee36d3f2cab4e042251042291cea7bed3f99c4a459d59e305a91faabe9a9fdd8e11569044366f3382fd7c3b10b8d7a8d7f9d4a33eeb78393a5ccef72128da41ea87357fc2dc4e4480f3fef3e6713c6bc43e91a211ec67c4089114d22811e68b188c41461a22fb488a88ec87647b9b9af71a0fbf4a7f292fdc604fd4f7d3468e4decf99e82243212d31069df6b87c83ef682dccf89fd58b08fa4841934ed37c20c9a5fb931ba84d9c21898ad4ffe2cc22938bd1d1839a7a2b3ece39059ae40dabf6396d999a5fa22d0f7b756d35a3fac3bf2d82004fade89405f7e9d5f2795524a1f723ef5b839bf08b48baa74eadad68691ccbf3b0bc59aac6d06c51b9feef8c1fdb8739cb356f7a2ecbcf972f0b9b7dc8720c7719cced99b46737a738983138668c3feccdabba7e1cc5d6dcb3f3d6fe2490edaeb69bf699f33a149fa29c7d53ce79f37fc8edff1bbf61835afd73cc7e3399223858e143a1287c43d0567efb46a0ae76bc81d6982a0cdb77d9ff67d5fe466bae7c33fb443477aba43e0ce87cff3e1aae7afcfe75f08f67cde04f33cd13b5fce361f24b56d7ee35e721cc7e5551ef256f49c73ce39e7cc71b92667948d975ff53b79dbb66ddbb66ddbb66ddbb61ddb8c1933f273286f7efcbc691a7e948ea979faf373ee6d8fff51987becd94d3ff7cec4be108a2495825cbcd4757ad57d08deeddefc493d01c00187bdfb645dee25deb07fbf6cfb9b986d7fceec67cfc9be73dea44986f48e249594e6b6fe7d2d6c8bddbee40dfb177f90d4c6ef9f71bcb8f50a6b4dd3b4e8b46f6c8ab2fb393ed8f70f1041a1d5eb9523e1f82677ce3b92fdf9922b8d5f37eeeeeeeeeeeeeedeed70eca99ea7f351f3fe9dc001e79ecf579e4633ca7cd26488c95c92b9d839e7ccc58d3767bfee5ec37c05715dca0b81dc3847a9c13a0dcec459396f71fe67779303c081d691e6d37c3d59309acbd4d27d986322a1dffe34f2967429b1ad6f9c0fa794a42812f664d564dbc9645f7f1b5cd49c92d2111b29fbffaf5d0d638c31c6186b9aa6618c31c6983ec618638c351a5d0f0d6f18a328a574aba1eecdf97a49572859d8333a1ff8dd258fc8974f2702be4856490935976c5bdeb62dd70e389f9bd3ef1dbe47b0cb75b77beff5bd5d1bf9eb398172a8cba334ad7bd4c1a8ed0fa0e3b1c126c141cb89d11e6500d943e11a136fd7489178c35a47faff950b3beca2e6bc17f7743df0d5eecda8fb2814ea7237b86efb94371dc9e70749edf915638c41a10757f368dbc7de9a2f1fcaa1630157ee7b2ff6e97ae0abdd580e6ea6c3d44fed77268785c6f9c7f9c94d6ee6fb854080b80f92ca43dbb66d534b0e07851e5c696f4925b9e7dc76ba1edb44cd99038801408ea238493430262763a4c4659ea14c72b7a3664ff539939b69a934bded674b2a81ffab95d64a2dd0e17c9a67ac0c76ce7c9a669c7506a713e1be6b5f883331d67ab5fa79a592929254d231e57157e870bea4cb15f734daae0a0bd4e76e436d176f3940323fbb89b29b0f630cc983ec871cbed13e2ba0e766dae66b90ae8ce2e0777f3d2a95bacc9723c9d77c6dfb4e436cc9188414773608be2fd0debe9e2072fb9f40f7fd20a97d3fed3b9deb20e084a0df3f85d2ba26266b729a759e4bb1b403b02316298cf6ec42b0e952287fd7f986c85d93a3bdd000dbbff36a3e12420f86b6735f18673e64809ef2fc1a02cedf3cee42b8794fa5507f02e55ef53ddb0749759d8f9ae7be13fc6d9eeb7ce0dfbe13648f08378ff338df8ffb43e40f9b6f0407ed0f91bb4655a35fe585d18bfe4870755f0ecca4b5acb86c07e3b3027ad07e16f2eb9d8037f73f5bcec483ec5b2699146bbd0937fb9cbb1d395307298e93ba8c15a56d5a8b6afc84d817b2bd71f8c7278c312632ab99766a5a096930b491cda0cba3671979c385d8a73f939e62f2c6fda5a4251f6f46907b1ade8d3982dc5b6f08de7e837bb9345ba918c469f1326fb169adb5766962a56a207e90624917295c8043034aa9a694fab029e56203172e6068109d9081096445921cf9e28464f5820a9e38820a2866f881224a97285af812c59821aed602d023579820064a66c042831fb98962ec5aadb5b6d6dac40d5b56d8b48a2d588471828a97a61a72e295a620bc5c79a2850e5030a0404b0c00606d0d0c66b2bcb0ebd39ac569572f57b404b1840d5b54e004174d6841820a37923a62d79c2b13ae4dc96cca844cb6e9df5c31b2a9982b57b4b882450acd548615332e4230bd5c054e2a69c2a47b2b4040b14411289688c2c60a035cb4486272c10c9e30e2456a9e6153a625ae58b941150ff0a99ce4858e879cabccae30253980c5810717525083155290a1456ca22a792d6dcbd900064909309a18f1830dee42254193af546101cda654858a94ba83d3174cc4204413527848a392402469e292f3942f9a70ca5c0e2adc70e403932652b0408931c18492921faec05086ae56c9a6d9da2bb131bbd65a65678aec5aaf4c51b26b153f9366120693e6072554b02289122e646845e8e0d4d4c425882a86a210334411b1084126cd105aacacea07343f206d01441129b000d1c5098bd20f588238e245e80527262331c810060a0c12cd4dad55698c5d9d9e14d1058ad1a658a0181166881898ccca3852468828ea18358829392799d1028b0abe10a087244d3d54b1d3030c584f0e80c587314fc4aa4c9141852532543143939c811031a7a6262e3407fcc4c99225b038a1024b120e5218a0881754b6cc9050e2243291aab506f16557bb6d479b7ec1d2848b2f4ba0b0a480cb0c0b0f5166f368b6b657054e50c59225b197114e32885e8e5e2fa37b448718467113590b92b67de2c892c10236aba2c817131cb18163ad4f66d8d5ca99920f664d507185931bb22bba40f1323a53cfe030032fa2800193a4c49933a107db8521cc6c5b7568329312260658a4f0a2003b5c1171830a391cf1ea62c507a2f063b043d02606316aad95c30203133654718c29bcb8800618c8a08621e2941f2398a0004d922092e000039c245fb0bce0c5ae5e66b3188616495d90a10188249a60a242b460c688d9153168c8a1b9970d5d3411e20b162f72200a71a87328a551d06cba6d340b952b6692d4e06c805882b357c250ea69e2b2bd7254781dbd8c325d41936c29c9c693cbe52ac1505d6203114a6470e50a1362d42761ec7af47a19e5bc44a98c8829362d020a272bc20827d90a6250c076a462a5a9a243195f90a61861a6ab5c94a3d7cb488a01c0d89589236ec9164cbc5460268b1484c16d4d3fac70f47ae5d7dc014666b6fe29e290cd56c4120b73e42292af39cd56d4665bbed6447be25a14294cdee262f2352ddeda71695c889e30932546da918dd1c456da29268bd202015e469ef4024c4ff036891840149145123bb4c0ca0baae43ed9099c34f0a39c1ca4233b2727e7c19c9c9c8f5d729c408995134c61a3554484732c921238f103132b4e3230509986cda239cf10c68a1513342180b635662f42cc8c58da32461556303dd578b1d65a29c6092b330c51c3567da4459727961c61818c2fa87d522b676589d2b64a2e97cb05aed65a9f28ed6ab97a546453268e645ab472f4c4951850d0440c5a2ca104caa6efc1500e2b4aa6d8744b0ab25891e129c69ccee03cc6798d83da38383867b6c4c1f96866534a298ed5ab1d8e6bc25a959cd2a50b95273cbbbebea1b2c4aeefc37194d221c0d894c3b12d534c494107fa0a61c417eb61db1ab7284ac6083386851e6a881dc1c18b2e0ae1849438a412583ab8581c9102207248f234832e6a05620c97ad123c00cd666b6ba2dc0d23262a8491c6c80b116576b892e1986378b269ce55c068615b2a35e6ac2aa2a1872e5e587832e224890b207850714f586c5beb0a65dc10436ae2c2530d2ea8a995dbb65a8dfe891355be18a3ca13969d167470a224868620ae6cb115d1e5cb997a81c4092fb80c79b0a330b196ebe2852d55ba001364eb0e37c4965a2947cb3cd1e08c182dd99283961f80884292d97c88c26d1bad52e6895d655eb28db4d6dac1a0e5cb2793c4b6dc4ecc52a68c0d4e38b100054f5ad424b1410b2da650aa3397cbb542adaa5ac4094a800314a52188c8a272506b4dad314cb1abb5d6aa6ae5b8342b604a33c68d1ea0b0e2424385905515394952052c4c962e96049145162f666044963170b0624c8e5d024b15d5071b12ef62db577129e821cc185d4cd0c2cb0851f8627608de1aed0b3aa8b8ca54460d5020dd3c76d6cebe8962dfe87d73737373f3914a018c10e3002cf8618315bd89656e871eec219a1821c38d1ac618b6114a919cb9a519ec205df9c14c0e4430e51083c4c21eb169ce945a590a6357e992aefadbb6d96dfb12bce54d2e976b06a2ed31305baaa5180e5314c1646605d1f626384bb6606f0f822df6b66dcf808dfbad03318851d174850c5c5041b4fd90b3f2de5ec70b7b5bed6ddbb6edb50b7bdb3ec378d855dbb7b8098ec49143b88936ecab3e5b55136b6d3ced60b59f8dcd17da577d49d9da0f27d54779715a1f22e9b36f228e10e2aeafebe3591f27e2c048441bf25fce92aa2f5cb976fe421fa2aa9b9a68b061d32e61e428a3a18c2864287802012f4421abe18ad8148348c5749306322661e0bc98b47440a3cc06322217d90d4fc4296438245119ccb5292a6957b9c990649be3b8ada2e08b292bb4808c1ea8509257a03abb35d59ab75a441931901104123458315375497c9b53f704a50b0b8e38729920c9689a9635ed4bd0348d29c985ade5ad699af6a0f642da0f396b676baf23b6b55f80b3f04ad31e6baf91b06ab6f6f97322dbd65adbd4a405014c4e58686d4a80d764e2e104bb1a60d7ba010c0899360124c298810c94b868218628c46176a8519a0f9b5a6bad6cdab57e01aeb42194975fb18c282ca499020d174f5c561c59a9b5d61438d99652d916696e80824505a6295554b97d61adb579db9a283135b162d72bb5d62e5d56e8b2822233b0b00251f8607608de3a5d2e970bc95abbd5ca3d8edae3240cdb3cdc44fb1fda6f9ff63dd6aace398c4da96c5d8d3372854d7f28870e249b3e092554000344ec6dd33701080894d8f48738abdbf451705664c241cba64fc459355c58367d79c45933367df97256648295b18f8ab0902413a61cb460d2e1884de31725136c1ab16c1a9976986d1a9b6256cbd24dd954b31fd30d4d70b0bdf00e57e8e043165958a881483fd6afc9d8fa6ead1fd42fad1f0a016c3fa28f632b6abd99e00a1770f8820b309ec4f005d7b8040c4c9aacd284d2372453a9d7b29d4aa51e4ca57ee52d0cc3210a2b3abc600a2b3b5c99c24a1318a8b3d4ed486daf4a374a352294546f73da9a36f9021b9bc593d21f58b0e9f66d4ed64a0e5b805edac7f851c0f849280163ac246963dc849b307ed05b422e97cb08117ea1211d626cfc0b70966ae317c6f8f1eba58dffc659ddc6af2959615b6bad4d02dbd63635c16065d3a7472b6cca7484654a0c2e5089a10970004f4449bef860d7177ad8b5bef0b4ab6cb5a5cbe572bd88a0d4af9efda263b7036b672c1529251836fd2117644942048e0ec2a44088a3d7531632a8c8d50718586bad110bbb5231ba42c35bd0166e60c516b8587181062617aaa8618b8a70e1a9c9c80a9219b278d96a15c205bb565c02a6295e35d4170c8a4d7ff57ac1a6efc3826cd32eb6d65a6d6aadb5566badadb8562463acacd0c3a69b52bac2d3a6d45a2ea640e2055bc4d8b2048453ae941611834dadb596624a8f58b1ebd38ae4865d99d056db293ae2071cc8b02246183b94994265b112a54d357c84062b472e978b05ccd55a9176b5d6da8a6391287e8abc20012a28c55478da20cef0c1a63f64a469d3cf418f2891d9d4131b8a1cb1aa945214a554081b36adb5564a29a5548a34d1a9609cc981090e50c854f1449715a594d65a2bc5d1a5655ba7aad578a60a18656cb1010a0f39540d6afd05d45a7f78c1aeb86adf2ad6fad88b2b6c4a1f733a4adef4573e4f86129b3e10e8da09d8f485ca4862d3f760c8c8a656369d9246b6e9944d5d2c6c5a65536ac9a8b55634606c6b6db55d1ce184839318522c399182664a29a543286d6aadc5446860d83501bb4e41d30490b69504606230f2c5121792d84214622e3bd496d25a6b8df433b3edb6b65a7c031221a84022e68b31bae0ad3ed96253b9f19431c2ec8ab36bfd4d69535ae248de8a4d2e970b09d17d7fdd8dccd36cc52cb2bc8098c18a2a2b3801d19551ecfbee7256a4d2c4927ddf8f386bdb5bd36c5f6d29365b452c60e2c4050d608e98a005a22ba1d8370b9a2dfbde7db7d791972f79345ba1921824baf03205081688ae7c62df973017f67dd9c45978df4761b6b4fb24948081fb2680e0887d7f88b3509b01f26340a0d06cf1bcc0240729568081162c20ba4d57bee47d75e032060b2cc0ec40e508a2ebc49514bcb244d994d3566cba65532d4f36d5b2a91667f98001f0bd35356591616fdedeb61930ed88854cd30e310ccb95ad691a6edd98828a8b28a4af69f86a58d3ce6cf957b2d818632a679b6e67660bc3ce5c09620760e3246761184ef218a5f2c9e5da21a55b4cca9781e1810623b3e57332d0617e296d8f662307254e9a41f4a35f3eaa5f7ea13c0c7be523d7413b6c6f4ab3b535491eb4d0a202accb0a3724d922841999131fadef72b95458d11fa0a8b5d62c367d4a6548ec9a4d752dc1982f9cc07e1813831de2151c19c413266488e21ac00758951a9e7c89c1054dd44041e22e91c4ae5260aa375d056979420619627061060451f85a7608664a2915b329cce572b540144619b6928ad1be57a4d860dfd73754a8cc605f2efb52a9b265df27f67d10877d807d5fc8832126a77d3f870e1f62143b52b152c6beb1d8543719e545298b4eb182d2274b5c14d1051351841143b3d005504a4bb069adb55a4a99d89773fdc5be7fe3acd8655f2a53acecfb3ecedad99508228ca041a2440b62b2c0626516a72e01abf8a8242c588a93182a5423020000001315000030100c06c582018138ce03d1b50714800e78a64e745ea008a32446624829638831868008000000c0c8681300c0cb858622cf1c57f70170dab4f45bfc072c55364dd26816a42a307cf7a4dd1af9b03971b40251c0fd198283693ea9d6b8f19aa261140ab2387382d2c890558c863b4db5bd3f74e09f6592ccd11e4347b39bddf408cbd12fa54e486fe9777ce0b3e480f0b0c7db3ce3fe34751a5d18a72439dd49de5ef4f19d296526b611f4fb525696830a39896b20d715139ce3b477a4306ab9344e6138142de4cdddc6f848a7dcf12b0e30beb7b1917a278d4ebc706e53acbd664a45b23b8459ef264deaf35fbfa4b50f8ca0593bf42ead6bc9a67fe4d6213e0854ac12cf3f4bb36bccafe564f6872425a4e38718587af12b073ed68ba19206d302e34b00d6e4e949540067fcd26c79b78c8bde8c2d607b922a62842e5ba01ba81e7bf18f44235a7dfacd3247216b829b7ddaa0c5ea78fc2b2bfd376339cf85cf913e0db397aac861ee0a5042617ccbff472a5e22f716dd2d7bff45813df01893499d72135912706a213df99a2da8c5bd4415f1ca23b1abac9d95cba40a473166dd3442b3c458d0742cfbd47981b78e4532a91d6b0bfd2b72324783e15506cb37eab452df4f125c0cf30af675297a14bd19f42cf22c746c356120e1b0ba1bbd676e28e5cf697439267ff30d0bb8808c2bb100888df1f51f14ddc34dfaa87a981f8e11781bdd831b6889415209310400db89328fc183d584ea07b17e3d3b99a7e6ba19b85bc492af361f46229b6dbf0ece3f5e78a918eb2302288494a5e380a5003a07151fda4bbfeb262f7dbf9b10a36db8dd93aca1a79e5711ed4562865419e561b465b7b43abb341245cc3e72d57a9dc24eb585ed0fc2b43bc157b8a06cf751710af4466e2e906611676e07d446d1c1f83b8a2dc02336682fe5e4be3e23a70179a8a1eb337838dbfb29ee9f02b169f0e7c4911b03046771e9d17664b62ab198c34d6eca14e56e46f2e5b1fe2ea357517e6c1b910caf8a9bb6d0c745937af7ccecf4e4a717f96de2832ae9d9fce4365e74bc02df2d19cb0945c86b2f3bb7a04f384f54b67c7b87584b69a2491550989496394b9a71ad45a1896e216196e247f4aa1581e814b79eb053e0c444d091a44eae247fc9e864280567dd08708a17e4aae1da18065ddedfef6bfa841b2d536b196228d27b5f91d035018274744e7255951a3760a00083880b8880a7d5260e035e707d201c004f3ec2f8b44b1d493aa336a58d12ccc81d3b958e23d3695003882924100de9ca0cb81058ce5ff098487e154321dfb20fce764ffbb6b7dba8e7b819c46cedf355a8f32fb9ad2111979583754c42696beab4ce0f086e9d242895ab4c72e870935c56494681e0a755a7d23e8896f39ed97a932289aa6691ee4a2408510edc0519cbd6ec21fedf5c803dc060a99fa5ae71545f4138fc647ccb1620be6aa233aedc3610a97a94137fc4010dc57452a6bd166b3466b4bc4c16a89a54241cfe29a74ac436b097a54bc50653b5fd0eae21ad739959f2cd063370aeb9abdd440cfe35c88dbb172905878503bb02e8857fda1e72e85b54f37e8850fcf9a29f4234c4d38bb62e7679ee9565a2bd0af6461fdb56dcbd306cc19660b867044fc28cdf00f61f8283d5399810565e73ba6a01664df33fc2fc1601b23192f583b414d3ffae9c36889180a4a4c8187f8f4a0a447862280ab49d50decf5efa2ddd630c3965f6aade53eb97ac12708e5706f35208bea510aa7dca2b139170dbd968ba203d0a6b3f92db3fe3530a27c99e18d458a22aa948c05b3594d10bc03529861aaab2129157930a7d54aabb5981514a56946d6048545442b855e7fa257154467d598f15cbc5a6a5de9cf01c23d32e3202148b43089aaf5447938e67fdaac7ce9fc476ba71ffce0b49357fb142f74f6be043a4219258813741fdcae985e425b2ff4caa7ea8ae287f0f3ec59efcaed425f96be9e01738543a4082ed00ba705494e88e383e4d96e147e667d2c6d1bef6f78ddc41ff18fa005391be728e87dd3ee18eae279ac5d844e7447ee8a30abd94b349ea48141137c59908fb790e042a422fcb9963f3bf86aef851f3413acad62b6f683158a83cbee69189b48a8240d36fed7de48042f91d45621e65716dcd4eda6ebdc0e78192dc35a1d2d07142cf1e11d3e6fb8a950c551222ba4ba5deb5388c0734c36d33e64ee89dc25521de78c90903e68c32bb9a7763c62352e675ef3e65fcf15e1741e152df66b547d56d39dea32369bffd7435afff5bf914d79a032c1a6586dd1110c77b38aa1ba91cb2c2a6cb8751479147a67cb4ab6457d7605312ac1455d4f7260610becd1901f4edc73e4e317d1a67b5dd189c0e3a40d0055ef1ff0361283b2e19ed2e9f0449dc7744a26ca8293b25ea1a0a3ec4f003b75c9860cc3ac60218abbee96beaea02da43708780e7cfded17346caae45f331532e59341fddd55751e12e78f407329d33ef8d6ea404932375ef9cfa73da043669ee57378b630c1f3b3bf3c785ef21085555821972da50d908d2f7c4f3afb443aec545bf559f49985e5f3f8cd7b15137e4a670561bf16c3136c205646a098e90e65a94de9edcc0f7d3804c20760a7981f50f0bc256aa3c547d1e868932c963f9c0848a487a25be35ce9084ef701bd56f50c5881e22d742183473e2382b81a9e147f72f621cc54a0cb05f213dc05ea6ccf44fd3fbaa1f8355076b20d3c9ac3f41a7bdc80001f10517ac1ac13c7df3759075e4d2220a43ad5fd3fb42b963a70b7ec941bb30f982608301f6a258555704aacdf2069993f0a91d7ca226074558163e07e2b1d9e82d8a628494d20cc7bd4e52ff337e8e122b3b86a863792a4dcac1b8c6aa3080cec17b3db924846d2b1f6f634983b22c8d15c048e30bb158bfb1ac32c9562b6f8fb03b8d3f2065de1d0d78d15c4e5d57aff28e06d6b6fff723cc523f48733f3c72b3738a01ba2efbf74fb6eec9823adf978ad71feb957620c2747b5890d84e2f10822449dac5948ff9821f8439f2828363b2857523d23af13883f7870c3476c0b30dd1b994c4b2aef35ea88457c1f1878b238d9dd1fa2125648bb431c647badd552b861255a5a8fec5eb3549aa106ba6e6d1c21c116c571dbcc9b94647fab8597589df440d37a7716027e26e40333fdf496b75114e3de07da35d7161ad6f2417cd9f5bf22e0806ac701c61697a369a0dced00507f0e7a006e60625adc347a88e46b6ea61c656e23695292c8d5d9a9bf5b5dd444dd4fa26ea3d62fcafe4dc1ed17a5a33945e2d14b69c9a387e4b0dbca7e0eee5597a9449814befd31e56ac47b47f065fbf088075d5e7abe04fe7bfd0c8ce814062fb9dd6a88617641d3ee2163965d3238711169ebcfea3bddb6954a65a8de5b8575568ac2b7fb552d26d61d0ac966cfb4c9312e1607eaa4be84e68aefdf9eb951331358f4ab1a097dcfdf7d91a196ff216864a07aa2b8517742ff8ffb9f5c0af0902979fb45c057cd6080278a56eb652a66d65b02e26032221e5da6b9d48c7a4c2cf2c3cb04e32aa22dc9c5b3ea91a815c294174266793d24fe3fb0f4ac9bf0b72f18206364a440b4060ffbbb22699b13238c100ad92cb95d62d0bc3e57fd79abb33c36b7a5b064f5a7869e68a1562d642c47a03d386d40113c7f4522c4361b8025a6ebfea46a430b70ab84da27804e412c5674e9762b744d2d325f41a86a71852ee600283213193fc26e583606c6af30c5f02d603f4a3463eaa9614e0cab1026b438e6239259b785c5f087a09bc5299dc0687845d07fe81c7c8f92521a73a3c16845c04c4b4c922f6a2806e457c7a2c30d356b724706f650724b150fafebe68027ffe70a48f749c1c2c4a3769b1cab2ad30e24ea02a7438389f19a02847947d655cf801a63dcd688ab357f6bc03baabaeabd8368c05f621d94a853318e40bb58818b02dc10ac3dcd74eb2573144bd0bb6203cb943a52e1e8ec24d40160223014d762dff278a88fabe83c2b3ffd28e2090756c25230320a9f53dec0bf922700da52aa6a39447b0bd9895bf2885b76d9ad4685249fc0ea0b6062f07e8bb64697aa2f1e5b4f8ead14b52a33c36d3b24860f995c3996d8de763f9a8a2d23b529455bf8666e6090d666aa52f73d613f2b910537d172a9fb5405b8e3906368df12fc4ed8b9ff22990e9bf308c1cb8d33174045e0f80ebe037ff12c1301ba1b78e8426a87df0c1e6f3160345910c9d4066bcda108cb1d9a83ea727f5a73bc9c32f14ef80de22d83b9b37d0397f609fe3cee6975f8ceecf08aa7a43861c1e1adb67487954950e5494ef31b4610e9ab1270782c1153032141b4f34ea3c6e838132d6ccb5f35887d437513035116d76b797b9469708fc9e69aba8a81e937cc6ef1bfe86e98945f1224d3abb11abd4392a3f3a9030ad67a3001a2548dff919fa248fb772b9b9778a60c008e1f9ccc46381f1084b16ffd06ea5470598de311ed5ef299e08289ca90892fb04bf72225fc1870d524fb877bc8934b3c93112ee5cc1656caf2b26b00c29ff5a59f76438743b321833ed3c28445cc12cc60257745202d6230d0219d50d41792c8a90b95fa2ce9c5c7ddc0af10695c95e4e22ea9e25c696eca48e0acf72e1930c755cd206b56e4c12d1052187a02deaab7a8b4d9c468071162e29b3b040fbab106b7ca56948920f1f2e68b28a9dfd39eefb8057cd554646267bbebef8c5b451e59e9561cc7ffccbcb70f41c8c0c8cf19eb829dc96d647362e538bda6eee4f1f4aeceb583a830987a27ab5e66dc2b3da2e25d4a622d8d9db665d350618e83cdcee81c920e8489407969199ecf7cd734d867dd157c28b2954366c77e3d5fe7b3e72e4cafff9754ef55ed15a839c880d90f5da0c44f54d7b5739f8d13b93b3b22b22c7084ec92e623f8c9ed9c208e35527228617505349eeeb60e3b854482e4f4be1c02df8095d50e09bcd9fde8aa08ed9e4dfd4d5934672ebf22e9bef70d41803adf16de3e342161ca8ceafee470f49287375937aad1e0326acaa1145e4b8910de5812a7e30ab1a91e5a50450a2475f1ae58af0b5cf8bdb08b3ccffaf87e7749c5651c8bc2cb1a8fdd5d2bac07db4ad982d6449fabb0ffd400f29bab82a2924b66e911881ad00b1f062ac2352ff6d7a4c009e3969ff19e42f1c75e1f80aea198b7d32bc493413f52df079ece368eee90177fa2d8677405fd758722247673c46ab9de33b201dd6e3c3ba8ba6580c58f7df04e5668cfd70ce2ba5f612de8f39b41d945dbc2c288ec413020c11cadceeeb4e3b7985689d7b1f70a24137f80437e6e8ddd632a69edac63408323eeeaadbe851ac14453fc7e0fa51bec5b557002b493db49609c5b4b411e0dc5690129d2c2b2be85c261356995ba03143c1015b5c59ed71188b5756bb25c56e933e9190d1f7884f3b6ac460e6e02cac81e502cc3fc82fd662263b5bd0468b91d87f178e8b8ea682e17ade88c32ffc140b357bb7ad69ed9adb69487c54da7896b2987156df387744b6d4b42d185610848a98d9131779312affd2fbeb90aebb77fb09f64ae60b27658541ab0b2558a3a77f9102476c7fd39fe020e0593a21d26c8ae082eddfc2ea6487b3f8261d9844578bf136ae534a9fa8d6ac8234524129e5fe39acf13251a2cb2ff953024fd0c57479834a464e8eceaaf25c65208c956086cb32278dc35cf925268de9e920f34d1376a0f2b038d494faa1e20186844031e0a06135e7d48899b6994cdf22f2feaeb0c35c8fab4f63e1845474c5a584e64197ccd77c72a583b5ad97d6b54e3a6947f1acf58e115086f08d573be9ab02dd93d236c9c5d4957a4c1715362db2b41cbf499a061bebae7c0799f679622f27197bb0081e01b4cbb1038d6487918ff5112e1812a008b7e7db267f486fd9ec9a0476b6e24de5a68582fec6e0eb3862e23b5c19b44a61146803f9477c619cb2179ed288cb7cc3a1fbddc3695235e056f8038a957a6f3c2479c36ea138d91fdb75a59033f37b07f1ff3dac25d2b14d9bed8595a731213a4fd599b0b02c49bfd4ebb1ce72daa004c05c66288563fe0effec68a1d35c3f56f7a506788c6e9abb14259a8965f4dfe28b117bb2353962e6faf993215293e49007873bdba3f1f99a5998adbd88405f37908a1394711f4d9154c6f1f6dcf1f22a50994f68e4588a14d6e616411cb7be9db594175378da2d768cdccb9e53e29126fc354c9a339c555faf5d7d27a743614042e8b79fd2eb2ea18e7cb3ed1a69100a8e32a47f82a5340e1e47e3263964a958062cdb226e3e2ef300221ae309065d96c6a08baf37c5e64c4a8049381c06cda212cf301af784bb03123e2c3f14acd62f24fbb093c9396554881ee448673ffab3a29b613464af228e9767da5a4991974fd7881822e400d1434884d42707eb77f18638af814ee959af813f5b0afe99fc4af3ace89f1709f2d252832bbfcf54754a79a14dea964a9d9d430fbdefd58a746068d165734be8583d447cdc6cc430617b390594d1fe3ad6f8d4b4c81b50a7dd8a377b666e04ddca788f4efb24191649365e6a0dc688594e9b7b2342a14d1fd6d790d69f1db16676e3838c525a3336f826ee219aa55ef374c3b1c5c87aa419af8cf1e68e2cd7e9c13b02abe170ffd66feb4fc58776a700b567c9778fcd28cdd18df70f3daec193721025bb4ec5f0c02779e4c4e4e506777778a289fa2b35e2fe843fe8178c96db5a4289c6842b70cc18e1c59dadc429c5e2776e3a699a38b346629c406a6b42a5c979ad1d0ec439e08142bba41e069cefb4dd04c35a9827e168fa15c3f9b321e6b62dae20bc70a6d2842211694ca2cd095ce3aed47156f71a80e93ab80d543f754416521c36f0e3384d48dcb906d29ac78aeeac229e1f5937c7d75ebeab344029d1a31982ed44613a386b519f34a4ea0f4e980cc70c953177b73a00b1a61bc68115e39145d11ac77810d8580bc76e152feda15e2ba4b2d2cedd3a05ec40e0f01f904c748252a4ed587e120e0ac6966d0093e411217a6502b221cf661eda8d24c9b04866c253c6ac8eaf7c9e00d39041862ee2782b4639efeee02eae136f358efd13cb4e10517176498541f11b96c6e5e7c23a484d1c4e2678aea532c0e3a2eafe44bd6b07b6d22fe3f0dfe8fb2748982a1caa70fd38f32128b33d46d25f0647bf24988687e6fea133ed3a2bbe771ced457a9303d9924473c88b95ddcd419584fe378b85b494a4d03105ac1994ae7c052fc2575d85912e84dff72e75b7c5cbe942c12dc2a63c9a2d6f19ea28e0a9e407b42e7546a3987e787ca4b0704a71e01ef426f42a077a20d4767ea39d3ed1f4ce5213508b5e3d3d60391fa1f4dc61d5f539a21ce4d2bc20b21feacc2df3c3f4a3a3a530e0097bbc7bcbc83c8f314c628352eaadc9b397ca4c717384124a2ea48ad4996f423301f64aa18862fd273435006bbe833714b52e1a69aebb6735dbd6dc03af3d76d6e8915f3be106980f1198eccb1caf0d1cc0eb24836bc2d145cc0f227cf2f351ddb2a153ce93520bb5828b59b6bfb05e5a00f924cf982f132bb4fd615a3232b37cd6a9fb715d914e4d1a93989521d95f9f17857e816c02f4d61d71eaa77d2a4fcfeaaeeaf13cb5a21a4cd405637144c5eb0ff40f8568bcc7b1bf216a3e3a9f71d751d40d5da76ba00d94441e8ebfea9b13a25f5d4eb52cf04bd58b78d4133b9c6f734c805def5184536abee93b82abd4d74cd7e36829782e30ea912fb6c34d9aef87876b7d2fa8f72eeaf927ca267a25b10f4765c1e03484c02f05ca8103caa520441615028a4b6ab4a970f70e0bd5903cd1d40eb03ab6ad389ac8141ff70be520eaa3cb6386c0d6cd82406e8a2c0dd2cce2857396aabebfae29ad4aa36b4b7e5841e52cb8612755425546651c79278a35ca9e693374dbc97313cbec60a2cfb0510e41d81f1da924eda22040c13a58c76f1eb767ce484d31135d0cf44b001dd4efb370a55f67d93706cc2f261618b86e31893d3a78f5a28159e78c18a71c0f43cf9947face2fa6db8997c14e1c9a3eaa6ac1cd4ce9de2b18d70845482c12e87228264ee22b8ff8fc2c8b2b2bc46037124022910b32fd7c59935dcdd65a3a1bd3b52bf853f1953c4923a9f4e1abbb77c32ba39d51ec534318e889faa938222c64040f3ed0a1323201ed745a63d36f83220b366a4a097945a56180d8472149a26c0099297159caa600cb264679347098700f1e3c803c6aa76635e43e12e7cb52e289198828fc790b0fb122a5d7d619774aa8f2ed8dd1be78c8bc2782788e42b1fad35d8fc126d3a81c1a4adc56652908154d324d71ed0d76d8a0c81464a3f966c94ee2805b8ab5ff324815a9c015c8d8e1bd73d04d505377395ef17383a9bb72befb4f6a2c5961bb30afacc3e8bfa6bc230d433e88d32775629bd50743efbbba272379ffddabddeb4d7b4cf2d1b42e00a9935d46a9c3d31c7479f8e584d9eade24913bbe0cae85f4923030a7428751405bc5404d09c83d10cf1fb67d20b32c5b1bd760b37b0f76ebd78e65d6d06b1b9be9a528be6536a968fa1add8b102ec88440b8b00bd0c4d5ef08f91f150572892e161b41a402adeaaef42ef62db59571af7188d5754cbf60f4d5e7d4c8dd79c6b77c6e9760cb453954e4dc47900b379743d251a7e62d518e20dacaf559ed35fcd9e057f28e2bb1251bb84ff752f754cd1b711de1751473810d06e75102ae3f3ac8868fc06c11a3236578355a61f187d49f96c78ee0c1c43c5f3f18339c523589423c751dabb457c1661755fa0af916499be75f8dc25da41c27c76abd860532543783fd8b10cf59e154d628837db5b46aeac3e72702b4e70b3ad4004787b773a7468ce575da206228de25c58e7369ed19232e955b9bdbaff4ac98510d259b6d6d78e87ab6e558e3a1591eea27647fc32a3b237c4f78c106723322e3134a40aa935fc95ff69918c88b7e4222fa88ad688be12575c7fedebcd3985a8e90c55927df0bbd13911be52eb0fa3617123371dcbeeecfb26734b5848b8e25135583bfe1a106eb9ac468f08c5079a60fc8e2f2d6adda4cf3e17ef84ce3a7c46e27739fb60ae5ebac9e2b0aceb4d38e5b5f60084b4b9a3fa6adead48981f71831582762464da3ce8977da99bb93db368c0b3b419425ee1ee4c27743ccb5789d9974b3f1d64142b052d614c3e45ce0fcf1db3e08297088cedba53c44993fba4cb036a663a392130d8a267abf83b877d0c08c066fe525d2ab35ef0618e0e00c72bc07f35a40865bcc97f400eb4f8f443bec0f6440850a3c469e34cb5b943373a456a4c2327680704d1496c5e3196e7e881f61d962377ee5914f87e1c7d75384289ecaeeb5bf5ae40f38391965867c8a6ac221cdad2e68aecc6375d4f4f500db3a3aa821797b0e7d22a8445e9ca40ca4601a40d580a950d9b737ca2e62e841d4704219376518e7411b9649eabf454f690c443f5833572ccb3fcf53bc24ca8f95911e0246288fbf27b9e212e1162bcf3a54b7589d1e7d3a0008f60f98e4fa2f9e5adede5cf6ec7f61a7c0b32a53d3135cd417cad026ccf006a8bde8fee70f11c77b659e4e0bf5db9239fbb982fd8c59bcf9907e925a22061674b8200b9040276544646aca97e47ecc18d5c5df0a52d14b461011184f15864740842b86289724f1dffe668899e15f445a4fb40514c145b50f7c939b969b366447064ad2d32836627d951757905093179ee35020e9223626cdb59c88dfa7312e380615b9be1a119049234403f2d1290b095f7c1982eee432d3100ec661c0f3dcf9909cc1009117431f0ea33d07806cb9139f5288187221c1c44ac7e7e33e9209037fb91c2fc61de9e842bbc344884c962489c230ff0db5c85c8b21126a60f277aa1d377ed87010d14bc1967f8cc727a3f0c0f2a9469a00ed8a406069c3bd2aee11542ff4ec31a7789ce11fa91109f516cf97cf00d587f1f704bfd2787d5f21143f3675bf50785bcff51bee3f8ebaddece10e774428042b0e9c784ef693f1f6905d4dd08711030262047125864c8c8891fee2487e9cae2221c6272146901dc07411e88d5eb356b0ea2cfc6e2bed666e483bd6db1e717818b253d1974ec95270458d6f73463c8f9090e143ae3c5fb1826b904fbc1b8bf5954da050aaa60cc443b2ebb60b51d5e41c7d30a015b9ad199a19ba3fcd0c0ed37da3d66025297358fe05f7880142d81a1f6bd37f39e176e148ae4f6fa32a46021655e42bbee226325f1f6887e5d9ce245d953d7a0a3c3baebc1600ecf164753456ee3083b4512f382b896983db6fcb13b8d860968c7fb4d3c4b02d1ef86a5d6c5af35236f86519f2c91cf9125c00fd7c344ef6f60407d26cf9ab925d5370f05c5a76f85223dd51764a66a3a821d93fda22255ebd993520b7855a9aed833d8048a20732a010d90754ae68848f41674d07d66b0d4156627696ddf22ba7815a87de0b0c6805e5eb1f1a56781946ae81cdf84111a0e9fa2931d25efd0006249b8b639011371091e9a18aca09452c9a4677e9b6cea13cbc002d08acb9d49c04b8b7ad84cd470a45090fcbc89d40709bcdc96efa9041e82b8d07253de8b441f7c6f8df10ea53497cae88081617646c3d87a0a613cdce1e49c4cf5fb707a759efab2a32409a135f1b12c451a00be72c925e572157bb6d8e8df77bf9842acd72c0fece5e1d979c060c624557513d0097c424df07d2af636468988fb4d90bb439d382ef54741477df9cce4184b5d2e522fd63ce6f2d9342ef97fd2d5fe5235789d356b3df244e16052384425444c70123e15302cf9d9a43d1e79ea93749f7bfbe31942b280c28ea579f002f740582b3125a003d03b0dcb17a7f452a891cb8d55515d11a5fb33e0e146f1022d1b2986ac37ffa0d78bcc9f2ecba2c662bb4925de1f46ed03401cabf60a06de3550f48c5f8acec3298bd8646018ec36a5f2e58cf1e1266abc1450aa7e70631fbafe581c67522353fc23d66b17d8b48374f3c5bb4cad75a94d3834336a072d05eb627b0abf46bc0b2b3017a6d20203684fb2603cc01b9523d92c47e114a128f913843b2564f5f1441a319f30cb9c108704d4836766d4b31a56db903ab724571052602a75d094361f55262c2bcc54ea07f7ca44dacd8612b30dd5ee907dfdf2b7f46b3c1c30580cbfee93c75c8cd910e270b0a1a0eaf8e115e3c84c7f0f1e2bb4661d7d0b32cc208be93668ea4ba6d1b5065d23547ea05964c9e62103bd76e5dc22839d453a899c61c0a3e45b68445d8199ccd85cca3e5e6c83044b63faffd8aa38d46d178e633e0bfb734cc572c436cfed96041d60eab605411613bb8ea36074b72e9e743aa4d247bd81cac79b2ae4a05d618ca788e10ba2afc31e7e0c6c3a0ffd9d746f1e5683a9c60f89f3350be0175ab5d75028cd546c4d354fcf5e757a5ab82f3748afa3a74a19219086520726d1b62236f8c687573567bb751df3f59781b44450a781d426f0592dfe886af38d6a678137aefcf647e7f37272750c116d33cabe622e4a5c4b61fdd345a8de8a0d4303946e8cc0e0c6a08d10175a1293838daffb3305121484285e84e50170553fcdf3c14f46b29c3d60ea06017bbf2356addf8506039573b15342c15e5c1463b6f8c6ec653cfc47c318f42663ee4f6ded23fc76db6f7bc88e9db63015215cfa846247c0333e3fd0ac9e104d471b25f872b3294940e14433ff9a5b29aad8e021785c8220835183351481f2533c81c33009297042f21c20438eb8e8b11c88b8958d6ce41a6112d6c01047ba0183cc3ca41c72164a3bd8f66166311563ef01c3c1215273f93243c2869f103d3fc38fc87173dbea6c368e8ceffac6a523dc73ed4801066ca1145819ce3b348190c221c5621644c6cb8828e6c28c8ffbede06203f9c4866ca354fafaac1dcd282601a8a1942f4832bb94d81997efdf44ee224a747322748d58da28f85942ed6d428e270e72d83880afcd0c211c8552c7c09d1c8ad88d00576df04f61b66fb335b722bbac80431fb3c652e908b16557cddd7e06f206059ec12378a4d53211283a416d7ea07d28433aa68871c1a47b88e4f2758d1b44f3d3496e4e0ee12712a6aa6fd0f9d2681bc06f4a2a79ca903d9244209b92742841691812bd0cea28c045ac50e91f0c161c92c148197eb4bdbcbb43f086230169b03ddb934b76f8d82f56233dae7a4c0e45ad45474bbb608ca218853f0c22c129d443ddd8f093c19398ab47e3facf7b80c2211b846acdee56519fc94ac339c1a49ede832f7986a3c2819927b557c4e96782ea6a0ef34efc02a90a4d41fe66113a3a114f9c7a0807b8994c9d9b9f263ff464c5c7c907cd1367123a102f4bd25bba7fa8ebb9f19383367dc3a6dabe3068f9b3a4692a06394bd3ef56253763e1fdb3b25267c2c86b01ac06b3087a38f96fa29f5f2502a20db8830370b11ede4f36415c50a89b71e99d904c3536c5657404a134c36720ec318bee1611d87f3b82bd7a50fa3bfcc6b37b016e20757b46b451cbbeeb05d3032ac0ce5c978196608bb6de70c6d60cb6d025aa52c69d10695386857de00e516b4a47fcd1977f25481c52874999e017522ef0aa2b4184638501d8d90717e84b0d50820fd0e0166f8083f380cf6fb154dc9c647e9103bc256ded5e393978ae4b76facf831fe9d6ee68fc06a799fe266ff99647308855a29b682bd6a0bb26405cfeaf9c274b704a2ce3deeab30c626f451fa35b19834a507057dc4570792d6d1784dd874b0e88996274fed3d0b2ea217ede25122be1cb387dba160319f25027527d8c0d9ebb784554898c5586a3f65033da07bff9c48212c3a7229cd8d0fee504025ec054877f135506ebc356a1f9307f72236d693416b433e7705ad70753d9742c98933ea235f200dba8ffb0bdac01e3ad978f4141c50108134aadb00e956044032ff2aef1163d1842ff7383c9aee0a655c9794970c7ef87ec5c84ffcac9c307d29240a1e0362670f716cebc286adefeb4808eae21fc42390501ca6866ebd425cec906e26e88b4a44abb37c8c20401b8c79c2df0203f002f270981d0496918681eded25ae94c4e48d0f88e85dcc69b68f8bb85ab8126ea9392b04816c34e1dc5bdfb9a5224f031cc216fcdd72944263db0de8d7a823b6d08f4c0bde82a6b167802c1f29a517edaae0ae8c7a8ce446146398bf6f0729ac20db23ec4ee41926757ee3006fe4a8ff84c5912c416ad30b624a32ce234ac0e51bb1913b2b8d07795123b0ac5ee25e8c0c7bf509a8e3e8589129c8bf48b9c6f51f2f5d0ce47c72f7bc376a9b1db7911503b5236c9c30ac18eead9c8082448530c31d8ac818b5e05ce5d2daa84b511754ec027cd04d6dcf0400908b4f12b893def147aade0f18894cca825d8d8231d131926a5bc03e63d0ae81cf41e3d23b108c746df7fe41afb1c8b0f84067df840e62d613c310e4667eadeb62ebf11ad67b3cc402bd0aabbc7e3fd44336cc85df1781549f722293be012136fadfc15b38ffaf3982aae412fdebd146d79aa6dd525fc3079ee4f461e4eebae4c2061aef38fe6cef2b332b518c4907401c0c9a6f998f78b0c9c0653ec8a75db423b6d1f041b2b9db80f3c5fa2cf221de9f3d93674a65c875f330e9104b914cb6edffc416629fdba23cb9027ce4e1b577b9162de57a800f116b7035291f103b93c5bc585f6b955cdd243b9b83afbe8ff07b94424f753e40a1ca8c7e52d709bef2accde08de22da7c1008af072a2baad166f1495ab8dca99ea6aca09ffe5d4dbda1436a42ff9667cc710791f8731305b69d000dd7a268cb58cad2da4cb4f5fdf3a1f7e50305fad1879a6da2a280c7e032206eebbc2b56d612a659a310374cf42f1712ac0641a093c3822c6f90bd86ffc97523dc181fc17cadf44b594a7ac6a112b6eff1c4ba3c354a8f99540f57f1b0421cf782b8fb20fe47902ccfe1cd22c308b911462b5f2fea940faf206ddbaf0e812856837eb6e8e48df560e7b9cca5233ca4ab2a576e5e28790b95525b6767f105a3565882f179dc30f61945b6f79920325b3b274d86d635a7459570e0130b7a9eb4e5b1af7552ca2bc964d7cc6e618e662fa2239d6c2d5797de5647d29f3a0cd7d72020f52b27023cd87b4d84210478250c36325d9fc9a0fb451fa906a4b5032f47b915c654b2bceea59648f59b79c45099429bc98c066f49ec3e7132302764434487d8e2c5a0764afc7fc66eb9a3b15b3cb5d2006472362afd5c9213710430c0265acaa6782cb86ccbeebd5c4a742786e605267cddd7dc7813207e255878432e4b11a59ce461e6891890bcd00328ea098a2647bf8c3a7c9076b315a234bcfef393c0b62972cec47f991ea283e7b165c7716b56fa9f0e1cada9f248fa04d3113b0558cd433b1abdb456b1b45542cf87e4b03d05e67f049892d5325727f2bcf9090b0f5061355b77403098959d0180b393c35138d04698a696015e2c3c006f399790f14e0b8335ba02b9f3605bad3847b8bb67687627f91fb355ba83940f51b790aac6f77ff2c6785873145b17bf5d7cd8f824ed9bd62e6001291478098ff5543315e199c9788080a684d4007906c8d1c376515c0b604acce433d0c4df3fcac7d8581a606f1c77d298604b085d5cf125eafa64f4ed4594d702b0d88e96c9532d48bb23cd33420b1cdf44272d288eccfc7e4b2d8f7d0031faf7c2aa637d167fed7b4b4e6cd32c39fb595e1e9aa377485714ac6c3ef3e3e1325d6cf26d5dcd859f241a2de32c3513a97d6465d4b4d7f8e6928dd78b721f657860e1f3fef2c35fd2fa1ea3d45f1eecd8dece6ed1ddb360e3140b0da5921e2d6944a7fa9e98d842bc6f562a44181c401f14b3fa8ce4513d79ac582a17d52b5c0e97dff3dfbc1f1718312d0107644cc88a5dcebadf8bd5e2cf793c60d318401def7d8781e6f837b2f26f57963eb03d30765f86a3be62bd9b73cfede66aa86fe3a5f153d51a2b78aab16f6c591d2cd50801879b57ed8c701c787e58a2c8d848161db0e256981407ccecc8c513239c387b5ce92fdd8c8917a810e62ffe69bc9492bc2a9b52bbf455ded3045e6649b32285f6b66ae2bcab36424848ebb2b88aba5ab4ab9481d2cdad96c992b3f4cd2987a18d709f87c7d124f8085f89766a24f0ce1e0d45c915a0aa65c75ac626d88f40ee2ee8365e91a46b87b7dd35641cfa1f1707795406f0e7a4e3a28ea441ad6cd660b2d7ff6dde696e89c27aa8e91a41d3f9e3d30077c0b61bca659c0e3c07897bb64c9d09c4f4c0f0b1ed86b869432af540f89e2ad7f49c1b9446a13a4165ada0a438e58e2412cb08b1d0e5c95eab4f671b5b73d70f031cd92ac9a34180667762e7f7e71f95caac34fd04a1229e885f2db9882be28299bdf663018acc8b7d0750bf1e23abbc71c035493200b573209491598f32b8ef0fb4d15c80b46bb849de2e2c6ddb53e7c30d566d82857b6a8d61d5d06e2a5d66b5bbfd5562eeb31e3b16106b4fe8456212bf1704ee52ab456c28875ab0f0349ea09fad666c895167719ae6247c2b19f2d3c531a088b306f009c337f82ca84aed0d64c19b4aab3134a83e232ccafb0e03843ad27396c8df3b5a08aa6c11861b2456c4e88dd18d2adeee76070a9014feee586834fd97463b3b9b6588ccdd1d1f3f2032f228f6e5bb436b7d52e2931656d1ec58f3670dba60414009f9f47abfa4c33d5a4b7723d14c1e1abdef20ab1fa8112547060dafd1a489c0c750194cb02f9d88254023135b9cc937b057e6ad502b5af7d0609782840e27f6dce5250028fd1085b644eb7404566ba966fa5d592984d50f24210ce299b47b364ff3e67d5f22a1bc09cdbfda4884602e1633e15704013a3ff42ecf6c77d50ccc6f95676b73238e564bf1e6f7f4c1bfa885ac90b05008a40850610c5f06bbce8630a9834285d283013e86b94679fb1708e27d193c867c6267a08340a693601cdd6de518f6d2ad4ecc1fafe67416605970fa799def4cd0f6cbbaadc3fb4e6b22596f5a65310bd5c94a1bf51ee072892a12d5fa383882cbe21035479cfa56a8af9842b0703e4a092c878732e6330492d81952fd6631f2790132716990ffa41eb9a66bd5b7305d2da83b6ba3b8fe5844c5329aa0b3c3ca59bd0d6bd14e81a465233b54f5cb1b3e52ab33b38722219f65a8dd35a45fb59e7195a57bb5dc7a6d70d7c68e3c04ee68956b10660c7e63551400662acd0ae476be0998c13b446eba24d22e92545caf4cab07b164716bd159fd7e6f6df1a58443ddd75ad2b6e6f5a949be64e12d1ff4fc2df9b9e686461116aefb0eea8bf453b9393d84d3fa3179641184043c09774711616b5c2038d41564c83b7b58e60a72d60a62536a781369dd1bab3ce8bf8e4ad5cdf9080e2b7378d751cc05dca427ab0d8d0c932f6be3fa2562f2c6221940ed0cd05902298181ede0131c718a0772c035368eafc219157039203300f82a070b4d38379f2480107fa435c0536679472667322e16c0e1857ddd0f5f4e0f19647b7231778ce8a1cf50c9c2ac918dafdbdd64569a1817051e9269fbf2b4fce3052885a20ca22543510416a0ab2861d126c7b6214834ee9c7d9d93e48f03704134f57028109c128d08ce55229e997b8f517fc531abfc0e77ee43dc21ad1cfd9667d0884cc28410c8c76e403b50938d8a7885b92da6475a548807e1780443ebb444bb376dd810e8bc28b0afdf65dc9e3e14a766c11514a1a89cf47108990745ff0e45126e193ec33c1df87d794b7403a5f84e63eba6f1ccfa39b953f44a83ca8301ceeb7853e6a342422e351af8823b3a3d09bd697e9cd5fa8ade294669e91ea75a36e2df1392136ea35092a61655f381384744aa9fc9bd10fe41203287a8e8765bdcd1076544800200ce2b940f3b49bad2a7a761993560131ef5f0a3bdad145b018229d40fbb742d69b852600b0080b347532b35ac1b2d326201579fb3b957cc45edec29f2d45d742a10a2ece39e585808625f66b502b39baa7f822d0dadff303d91119456cf01ba5d05cd9b54dbe03846108a5853ac82249411ae14d7849b43ea937061fe99d9f10fcbc0886fe18345648b028d30e89fa8c751c03855d6fe88aa67d8b6397f9318bf04ca5d327d81cb67f864a2355552956ac4251e9a7d2cb27942c6b7f32149a43c8136b74e70f3f81ab20bd6bf02b51426bc05f132dd57988bcd581b6cf37edcfdd314a493ffbf6e2e6e871e2c927a95389ddb64855f2a4094820aae8e95c3a206276fd0372c4818b583615489a9052f5e528760578800861643237c6c685ab82a3f02c2201b5367409c6b83e73a9e1e9dd776fd4eb6a4d4a940c41036b3d98e4b5ea6a007411bd5783f48776b341908adb11828aea969c739429c0bb115c01dfaefe9a0e15b68cd3f33e093484bdddfcd38b72eb79710161086810926904805e55c97e49133d17a09c0a1eb8ac3e43ac41acff7bc4cdfaa445c011f8811fe5364d37464df5b975cc40ff53923b59c184b06ce8abaf348a254b193aa8369b0148df5649055e5088f2515938b468ec178f193f42648eb3b3e44c5f9a6d63d99d2c6049f7194997965086b44e0883e7c571886438410dcfcbbe31ea4cae860e87e4584ab994bddb261aae2dcb7319565bb1e5bee0420d31da42ce8abcdcb6f7266705374a94d56b70e6e53f78d8247e4229a78318a0f9af4b1e54342db7e38494f3f7238a03ed0d570a83b94914652f7dd569ff28b3adbe1e8d9b4b045b1406c3e5d778b6fb80d7295172cd4003537dd53055c7d32664c37ffc9b9665d98be478d38af61167441435eddda0dd6c567f12662fe91b948258f8a35946445c661799c81f524f3ba53564c7e85b95bcae2a6f3dc76eff0f6e3b8fe7a31c47cfd7735f452a8c450cca2f37ac28f52a998e9af050c2450b1104235d90a28fc27a8a8ee26ca26cc5a55df0389b992ab08b1b6bd5ac65cdf81cfa1fee198fed512dd4d360567b8ac8e68be2536db8b4ba42947697878632888dc84825c875102e84ccc840c4c754a6761e1df7e5b1890b07c27b586bcbd141bbb9d60032302670fd7bca2989034e2d0b565a0abd3e055b988c2b95de55cdae4c8c414a65c89ac4016d8dd6ae5834ee7c97ce5e2738cd0e846fddc3728f215ea41fa2e9e85b5dccad3343ce6f59874a05e3a0721a454fb52c02eedd5698856d39f3bcfb1b078a0c473b52b42bde3487603cad2df8ade9e9739d9ae1e72a1881e4b1a66f0a1380e346da608b9829042beb79f9d2f9d689251fcfd50b344b7174bfd95a098f6de5ef1fa89177c0b9d68bfc7cae840eb2210cf09092b4af0e5971fc6e35a7a890c7beacec6193db3a095caca46410477cf1109756020f42efc6b7e8c52b2d0769b8cf989a63cb92d0a1218507431f49b3b0da7fd270150c3cad3f91ca04e1e82618e20baef8b8daa32aef70757dc6f19e32e82a9f69b828ecdc48c3f8949c4d619cc0cd6d1d6ac2f217799a39a2e1a246eac14f89f133ce9f3f7fc6ac5973e66a2ead4d13989de5e8d8c0bda27efe30796fba567be842781b557797bb246eefdce05dd4e04a1bcb369660a59a8c86072304df16eac4433f0738f3eef0706ba3cff1ded92cb1d576b2e08785c9c2f4b209e18eaaf9be373f7d8e6059d6f1e15abc79d79def4859c91e7e58f377dedce41991a5b2ea87d77e3f6f697a7885907b8ec8924c337830cb4e7f06023619e9ccc2c02f7bfa69c033b2a5916c37adf4f30fff987463eb66a249b5e96593d9872f5c24b4268599e40176d543db5aec85f3dd9803d32b475b4ba4de983cfa61607bdfb7bf30b1b34939a62dca502a5088dccef2fed7a194ce61a2ee82b8edf6e6a02f9f69a4b45ac78cea25f256da5a515f7da99192f55d3b6a3684dada6dd5049f6b5869eb0f7aa1b72e43bd26a17af1f4a6265480fe45d8d1bd1e628d8bc6983922af64dabbc02a16bd1afd4467ea39dcf4b7ee03485bd2e37d12a5e9d041e486557d9cf48a5704757f7ac135cf0bca08dbfe973b03864c29b48a996604f3cc6ea584e6d0adfc31e4be07f0acb3612a300e3ca76973c2cb15a5a1ffc8fd990cdf2d82d984ed31375d24249e3bfe02e123ec66228e62761b87892bbc7d9c5913ed1324a0ff9e8925de893f93f773c442ea39ea3492f7ec4f31e8893aa8489b10f426a249b0e0cc57fe42467abb91862757807317d41b91151dc0fe033f45edddc5ebbc0d8892b519d841821208edce521421d0e396dc395e7610ce760cc3f81d8623e4ad2f343b4fc3d0171dbb022b6764e6eb14e41cdafe778573ab21dbce1bc479c7303516c030c4e9ee8fe39d692d0aa7296955eeb3610fdb3950003fd4efc9b21ddbf091808bd43a77ba9b0da8d1b4317b422bec54c4d7b69fe677c452c01d5b9b8e3373c30fea270cf7f4ad983df63c9e5b04629beb09b8009b03a494ae9d31dcc9239e09964e4421dbcef37dadca001e89993c337e2a7f1e319c0ea65553d913931a30c6c0647388416842f814162c2a662c4f44719b017b5ecf3d5e25b49ca8910cb91b7e4cedcdb33b4e2eeb37dc04a0285bb67d5137485d8430cbc7073e6763537653374c05a75a8ab302bd45fe424619994f573a6bb2bf93948087a66b17e18022aae759aa47a0c0b04605265d5ef6293d45acd9fa97f1d3aeae6774c228c9a3cb7d6819e7847c2d37b8041826f8caf52784e2182a9df8414c36bb2f08159b3ab55d366c27b88591d4a04b62150ee9c933ab19ab709c07eff5e57d02214f8ba65bd3835c0bd220a6dc53f05c332816dadb4d99ac8a3d9bcadd216d69171cd3cb825e78d9108153c84addbe7ee49fdb85a060b17dd5fc06440ad456e34820edf89be94ac6b4f1ea2e1d3f792dd44658076a215137ade24e541e4fc171388748dd529db783d4bc4cdb0c65b73871193542ab3eb9c565c24154711d707be1e1357f86a5d1a154767aa49d4ea373ae27c1b35516d413046ba9aac09ec33998d61fb293f3aebc681cbd4c848ba87a540c90019c2fdb0d44ce69d1c4e6b4e0a7a05220b45eb45b174c2961470db8e94f92c3d9f8760ae5248380ade149801e064d8437d04c8345421058aefb5281e6d1a0aafb1c3dd9979a36ea23012752de247d8c0164e7e93427d2bec7d11d230372dba4087be70ffb015a9a1d82cc28b0ce1c5e41f2bb891baab41f94f16440508f0bd7cf104ff6ed98dfd692801299ad4b0afc7d145958e81429442db8d90302e929a661d47e664014e8259fb42ca2eec321594f0a2821d89b4d8384d47ea477ec7179081a3630108d880c9e3bc9e23e0cc38a312942658c461018e3521e5c8b46917e31551e217bbf51d7734ce86185a7cd513ceaaa291f2cecb48aa7fd0f1c24da6106fb824b6f689ad9723d776405cd25e3ed258b2e29ca13c6c31d19d7400895da17dc0843c0fc59179518f02757c64880d7346869ba5710882572d7048b04ee370f105781a3039c2241900a00b33666f6793f6fff650740148b39f6084b813ae756ff543ec611acb65597e6c3068b098a2387c3fb30babefc0bc43b208295046fbf5a7ebf7377929056352bae88beda48c10fca321320e8e1221f7aa865295c8e07799abbfba3d6d98e5437a90c2a99b8ce0bf1307d7d2619d8717d14020587aa66369582467a8905b9ce6e4e5922007756d492fcdc463c44d6093e5d3b22238594fe1aafd6a57e6b75404dd8cc1713c0d3166c66393ef90eed9601be287c22d0c24a88c3fccec59747fa5fe97d12f217a99ee8685b9178563ea052c749e4b8f5fc2e5349d875eb4c5eaa195c78056306d002fdeb3e11b6f1fced4ed792fa84d55fe4c24a4c9f2675a1b04ce8f03efde4abf927e55c0d5c699dff271619b739d55891a9b60e7416553275190bf4757eeebe5098be6da509f7a19a102ca853849087a3dc3ed39d1eb129baf38a341672b2a26880d0a739af4b02391839fd97d6b4432bdd434043c5c94fb624dd1678e591b68875627974133ff7f1abc40eca7a99ad0962c4d2b8afe42c87b88e1d17e29efc104c972dbb1da7c308474069eb9f95f3eeb3a472b3380a5b886a5edfd66c720f1391867e39f4f258935b9e9404a036d6585462c21f4e84b0edc9aa1260efda9bfb9e22463528e7c017f05df2a8b7a11e48bd66d973507e5c44af5b53226b8e8beeef9c49d3e6cff2f96d96b5d6135d69820bcf3ca5864938d4b27fb6a8febc2c7d919c941ee8dc74196c63d969021ebaf7958545aee1976ca3f1135e52fe3a286ef3e4614252feaf62ebbe0cdc9251d6368f0cfc67ba47f8d51c290446ef8a933498ac0ca9ef387f3c33b060fd42ecd130f8b0df84c4507e4c8e675264618d694ee1956bdbcd15e7509ebcf40432470b79fab771feaa1f3ce596b534247825500120c187e27050961d79864926d72637fd405491374a1238b7f735ab2a79271ab37f9190b608bfa314bcd2047388a978a3a90c4901ff3cdacea5517ba2d5984b2bf119896e1bcb1f14d740c0c4a86e8ea9995b5e70795e71643711cd756afc1b2de3e3a623335386205db2da9c878b57ec4e71a243511abe98e0cc209afc22e756002eb5cb574874ed40b6148d6145751321d2db99ac1ab96288caf3da6097aab2e0526ef9b897f7321da5e15f0f8e79a698d0df6ecbdc4bbc219dd552afc65fb2567db7b7630278ab8bb40d8532a61a64c0e7ac60af7d6d20f13dc39bcbe53861ea0c453f2b9117578b8fb854630ce4c38307fcbcf89f54487e378c094d5d5f161f02c0ffb9db5408dc940a5b15250da677becd824750b5e8d7fb72f595e8d1d39afef62e979400cbb9d25d3df7d022f1194246a349bd7e1240b1f4eb76f230205ff357ebc4c1b0492f98109c76f861677496c4eade183bbc83f314b6e0686884414fa0264c43cd66fc7dd66f38d92a03b5dc50d71300b045b6ed0137b35b865241595396e62834fb8cf0d53e82ff02d213e358de53d4b9719096a8113f5224c0c3b190207accc285d38d0fda684a92967bcc978eb91451ddc7701ee212e9cc93c8b63b22f6264f088ef5ea7e7cc45a3231107103514e9d4c0e7c9857605aa86b91d2baa37ee1263575c96c44fdb264c9ceb59256c5d41052e63d25af97a1ef5fffec2fb7d43f226cf4755b6b0684977690dc5621a171eeda968065fe0509bbe8a8670fc1a321812d435c94a10a7537df10c5b7035ba97eab1bd8b382f735c1d1f47363334416c99c892adec972117cecf1fd99881af546ac452fea8a58b6952bb960ea223969a550ffd0dada280a2cafa1ecd2fc630699fae3eada2b329dd302e5d64c2849cfcb2546683d8433210c44f13c4ff73aa2a7ee0bf4e0b28e42f443a30c2f58946d86adedf90129a68d5221528e558c9c35f6e79a6d93db29d3d9ed70772748e70c0714276902cd7b41732e098f8d68a68a141b5614b5c12dadd00e63bd1cf461278e91e90d00c67fe9355719dcaffca85f6530f25de0181522bf72361d652419e80ea3efe128773692790861d09af72394c154720c68361300bf0930c60452710588e3038178bdfe7413a1667e6a89b7a843dcbd8b7a0332085fc2d361a233eeb41d58087deb7735c7a6e2fda96e6bacd47343fb27fe60dee64e3fa45077e17a74986575e100de1daf8bc93a76ccb920f30aa095d900a7075fd5f12f1f4b089f3a5d4109cd7918077acb5229a5c8675e082dc3cf5563480e9bf1d30b93bc35b661a1f1ef859335d122b0187ff6b8269d95c131a26250e86c44e355bfee56c09bf4452fb6bca1dd0a128384ca9626a9b4daa73da14af6b92d20a7e5dfdd2657c69fc45d6cad04b1680245b6936abaec04858ddb12f30ef90f4a667c87e9f743ab6ab5f13987d7172765a899e3710948c41d7c8474d4f77a0b0ba283c46ceaf877c0e285c66c108902ad5b6e472e17e726ba4b0ea373ae857221de5b55388fb1802eb0a621f47f32940b2f38172e558cfaff10fef59ae28d36707c04f1dbc02ca04aa16b27cd8c8ed05ee09d581c61c99df4fc9365482e30783f9dd9af321aac71264a21e4a81d342e4d3e3fd999c001c15fae1e718b78d74b728734547909ccb4d17adad6d9afbe529625b6859b54517d8e7e3c56e94ffd0c90fc8679d7db13242b29645cd02acfb6e5d52fd8bcde76b69b1ffe2cea953ef258314a680738c0c81b1179941d415d64565c931be2559196457e9b795faad07a62d0186dbafa2416e7295fbe9f52984a23eec328a7bd1591d4ee32f8b23572adb42b6d82e92edb48eebbd1089fc777cb6935552e14a8d780e3cc603debde660af155f3d7b453c1dac981f1983a1e493336785b2d3b8495fa1363cb2b141e348b80ceef0590e4f8131a28181e738487d8e068981e373e4469ee6f0767eb7433a761ac32ad7cb460d93203a741387a8b875687b7a5ac022e1a34fe8e25478018eef62702aa2c3fdd33db9bb6d4a9bf8914e569986a15a4e041e59a16cc236f599d50e62cd698e8c789336f0b78fec845dcdd3277cd052e90936289038362c678891d96c72bad2e2c0746663385520b0f6f849edd61568f534b55a1fa7e5b23987a1ff006f12a042fa5c2022a6cd3581a6a78aa86ca516f0e141f4b74ff13eff3f3ca1f80d281242342d0610095fca0cd11ba92b15bfd9ceca8e4376ca1ab2b2867b1cb0a96542ba69683df07e797f20911a21e95203839f0ba4ba09403b504dba5b5ce81dd62862e2aab5a4f6080e1526d3b411208d412b476c7b0b420c3cd7f1c1611481b57dd518abecb3384ab1d69c08c3b35cf1a266815040af0a8a24a331a8ad53f54f422946805db5319a378b52100a7338af3ce08fdd6c51e13218af03aa05518584d9055f38df225a644357aca43cde86c85d1486b1e6a0075f712610ad673ee07166a1dc1309a651e5bf5997fd014aae58e6927fedc4bedf1129a4182fcad0039a0f832b90ab6d55dcea426299c113dede3939ebac3ccdf153713330bfd0a2c75be163c0649441f59fef4d67e77a6f49ffa051741801fbefe8c19a3be49878045fa4b692213339205c6d9aaf807412418e822063ddef519737a7a508b6c1f57ed378b5ee26ecb9687afb71e65e22d7842215294e831a186821ef45b95b9ba8780f6e328b9f0e463c9b371685c65c601f5c6a1868e2db2dddbe9a8bd78cf9810eab2fcbc5fbb315a5088bb385d36403763c3024de0fe5738ff45068945a4cf2056e36b43fff0c7a268c9444c342320d0a74522f2983839f86768fcf4dc80c11a097ea26f8d4c9a8f80796c1808e404c85e468204d2f5b9f61d4c36c19b4740ef51ef08965dd9c4306ce9fbe5bf83c3ccc4b7bf61b161cd650811f5e5ee9d281590ca88833ec61f45a3a9ba6c5ac6b62eaeb29b80a1430e93655f547453e7ec4bef8c63ce463804760fb53259509756728e97e5f00deba3e526d10e9f048802e8a8db9a56240bbba95219b9ef87b4ae9a12f2688b5a288accce99046759af8c57113978e326dd257ece4a8763bc00ce4a148313169a4377d99a9a6523489977163046842a40f5fe25e936ba724c9a6c70115a080cc2fd8a26704eaa9f0531feb793da9b14dee24370fed0a5cb226c4079d3c2dda57e2da5e3020d2cd4bc4e3bc78fc940da09b1687eaa7f63e0ec074c13768ad65684937a887c22e00d185796231f171faef869f9297bcab3493fa2b2a8bce369182a16fd57743c25aaa6a6b1389b8ab02a31c9a6574be328f032b42e948508420149017c3c60fecb3a60cc8de52b13b188bbed05388964059fe3a43e7ca2aadde1656903ddb70eb4cf8e7945217fa72d644980a1d601ea04bc06393c74e7f2f2fc7663d78c51776e7bdec73288a73515375a7a58df0c25756f391f94ee2c3b9240483758601b48730999feae47fe7a1189f5e437eb52d951682d59e03e2fd3be1c188c03eb5491f26b778a1af28725622371f2e276259821867617e197f8a117b43cc52403c02537aeffb39215b750f768380e62f7c6cb2559b4a969d274c3e0456d6d5e3662b306aeadf1f3bc21617f53379c064d50bf019d225724f5c4123ee3960063e5df83506c3c53943b71543b8cb20e8333989bd2f08e9df412227262fdf99ddca7de16c8d4757e011a3c5899dc5f8f3e4d688dea3b5594a10ff3c34ecd1816ba82db047463537e9f6d9a9298fa2201ae91d92bb4292bc85911cc9cae42307c6fc9ff6df6512b37db5ef92438b6f9b411e10bf9bde7821a1e8a1232316da7cdd7dbbbd20a05ba2662be7168c1d3b3b817c11377c7fa755547d8620d6dce986331ecb00795d89d770d53ef9823c9aefdb302338fff65b112136f20fe269c55073dd4013ce5002b22fa45c797e2a4f31d67f169b4d7f2b5cbf65385eed23891ac2b4a734fdf646f3cb1d5c6afd19f6f7c45e8a998c6dfe60413ac9db3e159d0506408cefa9ff163e19c29c2bb425e9854b5bf66c0cd21744fca3c669903bf97a165cb8886569f0a1daf8af5b32f9ccb68d2197258f2971a5aa24f81809c0b0d586f7c898b2521512014db7be65b935686b1bf358a71cc2fcf6197e1e37c4c0941b3f7625624c871a011303d0d980df001dcc6f52b089a471a3a3adf8cdc44b68c91d823be86675b193f7d56cea84fda80bfafd35384073402fc645d4a76ac32dda01adacf28e0b2877b6726d7600c96f1a0605506120ba70a837e8a249fa2aea589334d7e1460ea2128299b5c7164e83671ec663078b15ed0ceffb16a10618e43c82c5e88184abf3a7d27880a4d4ca8434ad7e286aec67ee74e287b26cae7b432a00d11fd7abc1b5cca0ac00912458ec23658ba25c0297bf46d774e48e70caea28de619e93f1d88c6bb091a923a0894025482f5f257808dccebb6bb115f5ee36ddee003eb14792c03be67080b2f649587957dd653f157f0691e1b670e59283ecc55742ca0654683d0f0e9ba5de6c81a549113366099b2f55d0f17c35651edb73f9b64324fd5ed8e2bbd9e0f6d6f6bba635d4c3445c7eb883bcd3a8dae69768a458950b7b76626d3d9baa6ba91eac9fc44212b9fa447e8a95934a00766a2c178b62efaa7887b8732f2ee4922290799806382a62b8a0a300e66d929c38c9ef9629d7bb1a509d20268820715f7bfb9853f34e83b367283b13e3b4268b4011d87fed061039b90610dc981f559e8eeded4607365944f7e48146e9d7c62b690e2d7f67e1416b7ecb3abcfa8e0d0e33ac6fc63cef2e1c6ecd73b579f11f16209be83b9ea02dcefe17bd37b1ef05601f14c821f548d7836263f9f2e2fc05dec0b55b30fc229c00856bc0b3ecf825a9dae995f09bac2b08cf2a756b73104ac7c132f525c60b117299b1e2f821b4d260459e1df49926d0d0d048fc866f331d4f72b58c014c1f6deab156a26748cfa05c3b5b2f18fe4b44fcd0a2ff98d5b72a97bdac52ba82c04a13d447e3842b3e76a0f56ba35321bc5783ff0dc8ec67e42a0f4a3182a001e7b1d0d48cc10000818e7714a23b124eb41f9b98e7373173920aea4ffe24c41884c53988ed7721b36a3d06875f70c1cb5f4be34bcee9b3b61b7e8425bf30a0645ee1c83bb47100c3f13a1fc024ff125185edab88f18ed62b9550dd8f2038bcf071e2173814f51972d17b09b53f0daa6118328d4c5e227b5ec272c55668fa0f29ce25d4d6e0adcc409d01f16d8ea5487c601355c662210931dfd218923b51da043ea08be39eaaa8a9b743d2f469a5a52d1c7c06b1eb90b0176c7edabb4a37f7979429a2a1d01f2438c3524f8f6ba86e488c3e1ba3cb91a22cb65c8ec17664909833f474f8354ace1610da302c403ecb04734ceedb9c0f37315e89f0fdab4f2dcc97bcf9850807a243b960c0b14df0667d10511f99981df83b75c347539c128dbfc0f05e5ebcb2514f1320e7a817a586f1914ff1765ae2f2ca1c7be151369b9b2e082635235cbb327bcc225d797a80343470e3ddae49ea8ea81e7143c3655c23ce5ebe20f1087e4fe1c64e6a6dff0529842cc388229612de40859ceab549aad6ce4b864e58588904e666598e60fea2d3d0347a8748490172f0a61bca81162091f7931dfe445c8c3f4dd8087f2e2469ab65137389717cf294a41ffd1f41615d79f46c81a94395a12b9c24e9b3dfc3b1ddc1504c5f85134f2f649b1e4cf533131a10fc04dd775d45810bc9f63ff73e8067d306dcd7cc8d18003729aa7f5934d1eeffa45db77c7005016f1bce3f750c1f8e09e34813dafa9f08b82020ae101aa6a95c91951c72a67199ba78ef9a596b1b1795c066d5542c017b37cc501dd37000a2ad075e4fbd948132808ade65c7944623c85d41d61ea7f05f455ad72f855af41ac9b808c167802e00ea96773789a958a51044554fea985cb63d67c84caab709acba01a0a5589c489939de064acea415386cef608fd5d69cd54730cc8177188ca44c9f41d04a3a48ac21a309a850fe8227ad4829ea4bc02902b22d6d9f120236804e481e11c3055b8b021498358566f8102f0ab1c8ab3bb1997b48416d30d77db81f0fd4dcd3dba9512bf1bca7aaba69fdc582cf2a05ffd18be212046853437b0e8d8a8ac587a86023c30a6011423c9d1132ef6fd78dd3e8a75dae63203d539443477d7f571f3b80746f43f001ed7c6e5bd44fc52b5ce1f612ab516d60cb7e85962ddb553a6a8c41b115c048cc5bdfcf3dd8c69e917d43205dc7b217aada6a48317747e52dbeb42f06c0304f7d8220b1690047c6c86fcfc305c8574045befeeb6eff3fc62e4b702ff1f4da08f342ac91aec97c97cce7407dad66bd3ef81ace355c2e6418fffe568b857168c9447dc96201214eea3452c7fe51e4e53c81836024062df4be0824433d900dcca5e8073e0eca2fa4868e194a7ea0983f4e4a6baed59c9cd5ec756b88ae37a05a1543c05133eb681a2c1b3f4ca31104f17b67e862d757ade56f8b30c3190c06d9b14fcc72df3b57fc7b7580582a075d133da95ed17987abbd793545c56462fc750a0e6f2ea627afade386f60b44d77b10e96197f01c8b1efd96cae5631ac48090fb416af92813db4f342486148889d59153cacb2601f99019cc582a80d4d807dd5334e18129b927881374107de7365bf24f065a22dd0f1d724a6b44e90ab5dd085ffc5cf89a64ca1b90294dd3d0b193669c293fd2145fa001e3a42547af10a73347bf8215f5942c6cdba3e239edc77d4fddf19dca8087c8a99461cf5ff001ddb480661a427880682a2844ef886c98d2ab636d8ed15d2ac2ebae9aeb6d868bbd090e37a3e21f457e3684151efb51eb77d3b6b7e826a9cd9c538406d66ac1dd504cb1f28c7eb23ec7b62a4d72e93de331950f4aa76f79b1d691601f282178a3b9bdc8ffc07d04f129238f8ca3897368db4102a8217cabba73dd178ccd7bb675a199734ab4b09a93f3e35065608d9bc6d96f9a14a76ab179019cd463f8b730d26d4e4aced35c5cc34a74eec913eb1063132e2458503af7f23bb2e31c3e4326365cf98dbfd348b187714544f8171e35dd0cefc80bf0991300c5883f2685a163a04240be8a082cb6535fe7dca86ba11741a73ecd2bb642dfc300e4643b9a910eaa87ca562f4279a2a407a70afa057259d7cd16569aca41ff10962404c1079d801f87c2140dd8d697de3de57ad7c7dc5d16edf2a6b8dbda411b430492b77c2ed3b6261be40ceef6d1fdcc2d5b7c88e390c070ef7fa998ca0ffe8499a22a2584f178596528cb8fdae2f2aa2d53d35c80d69b72a466f3b1a2a36f3cd94e19ab96a140350c22bf5034ea63019c3c7f221b25699a4e9dc4d059a304e994cf397e646e3134f61a7cf776d6b0ed89b2ad6c68aaa0ef3b30060173fdb440bd77c22bcb9aaa40eef11006e513d13efacaf3ed78f4f07aec11c8a08175a755be7bdf3b857ea30782e80dcc1d4fa7138bc27ee95ce55a0095f6675a759ce8b2c3e0bc802d1b68872e8b2496631aeb7039fddb1fa937a0ebc63c03d75e66294dad93f3d4fcfb43fdacdaf3d5644e319a85a21dbf113bd39c92182c692b7b84b7126039b2d7cd8cdbe5012e0b71f725090cda4954bbaad4204f83a6edd99fad286a9647257bf277756342b581cab0565d390da6fdbc37072a632dc877a217bb83dde2ecd3da221a9c1d66ef1fe598aaa3164b63c425e981ef90193921cb14388d85f1975ca9b104f13d8f81e1a9ca33ca8c71f79b254ee531742b966da69b8daba1208a76f1524672a1f965622c6cd00aa1b7eb6a40bc721399a4e7ab499d22ac36f33e0aae6120c94c25d88061e35acd38f99d981c79ef0a9cf18707f6b7fa0cf126525c32f10b5641f75f94f7c08a43c2a99573a0580b3818c96013f9686c81b12a81d130c0850832f80417514d5f4f22eb6999fc9943951327da856ed03dc129771a66024192589739386694e3877cf16ae60c15b55408e85ecdefce054e268d4c530dae9b0c76fe4397986d5e4740c29deafe4b68d9419024280fba294ad7b27baa78bfa01a629ac77f307a57a2f9975894c1aa956d358383c7355bdd54ccfec1cab38ee477cbf5d4dfa181086d90939c599748a4f14cad7d580c6c7ba9c20163456493c75e9f2da177b95cab15339e30386b51126b164c9cffdfeea7ee10f6d0797fcd0e50e8eea718136d0a64d2064d4dae4890bf3d4b5ebf1ad257348b5b3a24d2e080b6679a1329f61626f282ca68b42e820f93be6a9a1042cea3db40778806b78e547732b0fb247bd49677531d29bfa01284c0e0752f318567826ed26fcad94594b824d0a4685c68c231c956802d179a44bdb1320aec6506f134b1486d15250bc9b47722e137f7801978578f54615c1ca6698627e6913bee4ed3b8d18847df05a5fb8acc8cfdd80f60100c4317a209eb29a15cb0225490f6b79a1c787a35560b1643f14e90ada8c16bae22427ebd085f5393e7c6c778c505bb9863db22a9e9ad0fd5255ef9330f65335a41fe5077cfcc0e9ab009c60d2c5b8fd406f93da3a343a06c3da4dc95c1f2956d88925245910cfc381d7120fb0aa04657bd94c3650e4292e66dbc45d484287b2378c5471b3f1929082643a27600046784a22589ec3bb2bddca19d8047e442728472fad9b0a982ee1aea7ba4690e21657b9e3b1cfd6a3160a5c458562585033e5eb90746069267b6fc1a7ba7386fcfe249e93e763de3e1d31599b854614f9fac0fdb92c52cdb7446ba6e836636d5bc8d86bc43292729e58240830160556bb835b5b994f19ec7895f312bf791003770420a5533e8b20fa467ab8a4bfd77608e385e04e7cfb441280a6fd3bc7ca2f6d9a16bbb489ec6cc7bbf466b7fada4c23729edc8a0d34e9449ddf6dae5b470337fd451541f4721bb8afa0bc82d7ad818cc3681edd18fd6e4226eb912e1a7cf0d8b5ea27caf2b0828dd1ed0ca098c7bee12e8f2a5a3aaa97696ebbbfdce8a773fb49507f0231a12a93373cced2b18fed3573a7da380b9d2026c7874bcb001ebea8c21111bba5c298c132f4e748ce0a985604eacde46a4690a3ae4319d4267dd17403f5258bb9aa9ec3ea5d8fad6b57d1607248650d7f78c8cd5a4c2c3dde7dbe0a2157c846c7eecec4f48971d562152a029ee13014b053e83288f0cd748f159ae952af74b256ba2cc5996388732ca35ee0a8b010a315d9a433e3cba957663f01283475db0e59474c832e02c3d1a6d2fe1412da8836fc296ad0bf06cb060fe947a9888e9dedec39a91b8e4a94f87a21b1e9e2b645f1e10cfb06a1e26a157795b1a02d7db5e5bc42469fc9e714333e3c2f579066bcfd207f39853c46721ae30fdbabbe42895cf52de75f8e8619a23944cd8fe6605942ea3a4d5e04e0df214c6db8cf9f33012c43defb0033174e4907c1a2e444bd5f7ab0ccbdb96cfd8b00b2b059ff6c01c4689d8963898f95998ccd0d55300a4c2d728c62b6a8fd510a18a4ca2a008d4c3e0870bcd4db3303ac9e140814a88a8fd581c9d1915399f824f47d596ee0d8c924c9e3b761227d8d11aaed3cc51ee65cda58d3013f669a36b953aeb8162cb816d594a9c8ce40d5ce0f1c281afc0ad57b15a0edc81a55d0670fabfeef8b244a0268cccd40491a8b8e2ba52d84c42302f9bcf676a30e6277fd547432e4e2a126ed31cd752909c91ccf107940cb04796f77211112043e30ead4b30fd7ce0f43bcb08015ee54ddd4c4b6af02a56adc54baf66f3b0eaf9d79a11c2938a720d406f51e0f0a11836cba955d3b37610ec3b8242e0d8517c98d92b4b5c5bb09b919d020db24bd0bdc4d24f60e9b339d872a8882ae7527194a3b1456b362c3a01c9f893624cfc33be93e274a15808b699c95852348ce4b6554b0b5527b43ff04d34c43ebf79a697a5b03d037b0e1ff55cb503b41e6c5bbcbe3f23ca11f6deb3b410e2f607da0cadd13c8f8bee04b9d3f2d1ff2b4688966cd9eba0d852f71657c349b7025352591e15a60dcc18071a4004fa8df4becfd77fea49f08108edc4632ed4dee7613819da67fb12455115aa2d17aaed3f6313b684a2807d2e742e0a0098e4479f9196332204e458063fd0a16013e1fb487611a017dd42033eba75af8256b077823f937be94a3c91e94b0712093e1643876c4096679e09c93f1eada837262bfa568a67d2c66d72fe51ab10ca6759952c15cfa19f5d626abe873c9405250011e30c369e0001e85c766c0e05e727ca8a4e030e126ec52fd5f8b72884e9f8507b7a8b96f8401b72630c96ec64cc36f304bcea9e87eaf4ae8a7550885e4492161c419c5fecfc3f1a01b98928ca9c55d82ccdcd6832cce7783a409de19688a338d474a76d558f0473f59ea76bd20108a1e11d4cb4d726f8437c125a58e260a4e0c51cb242612c1dd402e94aa8f96c84a7a3a4eb8fce8b1c9d79061999380fd050df06ebe069380dc7e12a60f591ab3949facc7c21b2a4257014f2e56dfbe52f2d2be4403aa7ec9cb817a5b0b6c9a0dd6cf21193a532ff58a842174f1aae339a815d82d16ed43a5efb784fd8123ad447eb2738a6dae43af7d7e558bf1e1e080cfd485bc10fa5cff82393d7b2582c47a569a53929eb413b35d448d748a62ae2c27e73f43ed728e1890d521d72b115d30d9728ccc3f12828a56170b4fcf61ed95c057f40f5a9a25d4330bc29efe007f0b40d8484dfaee352100d1eb65bae2c7534f9d1156d8f3f9c7b8171be2e90d02a442989579ca3608084fb16acadb5f5383d933a308602e7f6a52d2205dd10304c964f4846ab4cf774603afffae3c1da4e51f483a230a4d6e156ba0ff9bebe86ee74b5949f4105997884af4132f0265d67466e04da1a7a1ca361da95f0c039435160d5fb6d123e6cc11a5530aca7c021cfa8dc461ec1feb53960dbff4b922deebbafdc3fd2359940f204d907f2d91c98dbefc966809edb29249c5a69dd1be44e4b54bece3efec4f154c68b04185844724cd106a1c99d4e01db6ad978f61ca4069bd9fe3c04f83863567a3ffdfd77a7ff7bab0af103723c0eabe6a51604335f30df13463942a51b6828cb6b9e3ef05ec9e8fee47f1d21f5c697d0302cc7ea45fa486d772dc5f7e5e2c80f03f6ebed9b8706b3b19de019662c735ce1fe37569a080ac82a4dbef59fb8a50cf12345eb303fe1dd127d7acd127ef46bcf05d093db722ac0e39b23d62314fd19396ad41d8d8665f8b0e5d8f1e006f9346b69e3d807b430a631ae8055a0e3202964ef93a11a071dfccb6f9950d86bc36b3cf3c67b5f1a38b2e04c3ba3ed3f011b1ca013c0b7b95cf4f59486521affb64e6a14954642e76f156b369f2a9d067e6a7fd8f258a3f53486d7b4584c4cbb119fc2314d083fd564900837a90ee6f65915216ea8e75ab06b9480487e7c80a54eb26675bb140204347e17723090c309753cf9212743a03d2b124f82a503ea9281b5095cfd6c18708c81e7d34082e3bb824eed3539d5a694819242a021092dbe5cf2db063559904e31703ae07863e296b70d249e256090d5f4b3fda323adf92e71b964ae3256868c22b2d075263861f04213570d60ad959a8d251ccda8769bfd39b6bef7765eebf6a7d1a88ce8a327cf10e4ffe088229d0cea296d9dd727eba97299858beb48899bd97d0f6b3ce42dc0c358a71334a18f4379c07884ec2d0d5804b779597db1c19b81b5cd80a10024553123e0ce214a6102d0031bc3c335066a193e06f6e2103140dde91618434b14f983459ea36a23fe6b666aeeb407d7c41fc99a2fc0ce8f6e939ed33e150badbe492a75d2aea0886c2e51b0407a9ae80024ae9ed59d37859bd49f237841db46d867e85db8c18afdd89c1293245fa57f17b577cb5a07da85af40122a0c7d4dec52595f517c1ae4267805297f75e450c480230a6e8f4b1e252158262760d88231e014184025d29aface406a3a1358790088c40ee29c0015f63c5f9315bfb2fe43864a48eb8606e346289c09940b5fffaffb27208f022bcda8405f7447941ecfb7704bbbdb679021106a33a6fff464259bceb3ec649160440b3636e63508952fda33a0fb3a5811e18d6c2e02e8844f54b6e679561aa3d4b29e74f1e9dda555cd52de6bf476c22fab7fb2b98ab8688582172fa81c805d0d0874c210aa72020d24cae1832d43fd43880b949c12119edbab9774b8509751f8a251f707630e125ee03fea45ef7882c2fed724ce500655c68ab46d16a3755088201379db50a14e4f86e9a7d4cfd773b96c20171ae9dba6abb406a74ae50189ecf1d1e4386b9c16074760e680c1fe71a0683b1b96062749a63688c8fe70083b1c11c6131349f7b388607e68084d1e85c21183e9f2b3c0666b350719fd2888efae2418d020abcefb86e0bd929676d54d1038d1c570411407accf5a932ce41d83253ef931ebde7a081b58302214f0a30f4a32c63448c9ac132cdb869cbc704829d832616fb29ab12a4a8b96ad80739de4852206a76503eb11a8d39b1d2cc4cacbe31c9f95830b9d4652591166b83237acaba3312ff33b4c62137a71f3dc8e65c5e0f5be48e2d2d4250a09566b249567f57126e7abbd5f3556c2dc4c0107be0d7b687f4ab25594bba50a88a27c259773f8905b40827b16f845369d1de5a47aa608212b11aab0ca1c450afaaa5348000445b644e76ca49a7a61220bc59f0edb20984af68491f01c54c989b587382c4a379ad7ea268a670cbfadf3ebad7ac717322a01e1189223dea83060d491a4851e05a0305e62141281028966d801e1f851ccd503f742d708bfb39f72edd9a25aa16031a0c1c428f755e360b0c11f25c40a452c734010b651eb573ee33bc944e1a5493a0bc4e69dfd0f7d8f5c22164573405a28136be682a77a398c3e4c42d4faa31a38057b5dff506bfc4300028b8c684594bdb7156f9960953998e0307f1c6aad392d952e961e222888326e5ea89718b982165966feb690c2b311260abb97560952a3911ba607dc3397607871298163ed493d724afd1b73fcb4073d2fe6f4c11cca7f72ca09e1919983399a263fa9952da1a05a08e472ad98e5070024d1ec6262d02fdea0b5d62a9696218b4a1b307d05d08b94888928afe7d0f12fad2c45820890a649e4c5ad8d3733881db2f87e515d418ec5e0b12169f7b6e32c9c6b112e8df57128f4fd52854be54d4712da418167ea94320e9b6a3335c2365b86d05ea4a4a9306761a06d91d00d49d48e03c2b39c2eae7ea0cc80b7d6a0ff315d9d12bc99e0b61c1d3ad29ff1e116600773f7a07d1dd1c20da28abec0579449415eef51265e20231b06b6a5d456e1fbdba28cdb6fc7b11aa658e1a9874a6975e6b1517af40ff281afb3d005a2809aa0389d6e832ee7a29f4c0674063b5437a2b494797b8e31a5e4efbd69accaa564ca5dd747048c3e699b2d811b14d8a5b9603c4713e5c9781de4cc1445bd281152906ab51e8633ffebde9b64143ae1182d1386beed1361b7fe3eb2f3bddd3798ba3fce10f8bbf71c74e5d85a1ad245bb839fdf751115c2ab495ab640b064fb583421c055e13786f6ab82f420a27dad43b3fc7c0d24e6797cb2fe6777f83191df941819de8cbb3f1335c0e8d3d667f37d38d1bd94827797933fcb407f39a10ee28536f3ee0d78ba7c630c8b33dedfcd91df3319f3e89f1c5a37c330b8c6f1e94264345a11e46439bf1cb15441aa467edd91da621292d1904b10badd21b1ab1d7bb03c49f724f65a737febed67f5a92bdd0825528cae6a0625fbfed339eec3e6d966f70b9e7a89c7812d98bf9b70b04b672021ed23573017aaccc6d5f89197d2510a221e8e2cc67187f3c681a55230ea74d9fb21dc06aba10d1101ccbeb13cf44e6442efc81da646bedd3f92ad46f894d74a27d1c3b63e2149bc8a108120c842e407cd4c90ca73849c4d6c4ceee5b8a80d5a4a651e7c2da2fec338e3c48c330a05195e5e187967dbeb92378ed59e77cfcc2862565f5262110a8f7aa99db6c6457745c282fcf9cce1c68f49b9890a84812f27d9092a302da6ca32679b0891359ee65f098c0f7f92e4cb97f4e2b4527996a0727d1e2e79e695c9cf7b8f95af78864156202b9117025f7f9f035af6d54d1b3740fa12ecf6f5199a7582823bb5a15f8b9b7d063b208fc8c9ee5f89112cb3e6b22e216d539cc155ac54abf6863d9fe44c9d6293dbf3fcd2e8a3aa5051dad90b5b035b194ae09506eda6db38b53f21e420c1e4b579d033178710618f318e14e12d44dad1882b65dc36e68b6cebbd9da1e590c99d1cb63439d8896da8e5d1d1ebdf91d05c5deb92b8f7f80ccbca8075d5961ef3a0ed4ec370e3a5194742cfcc172c88e9b2df8195ab5550bfa8bd61cbc12bc9fdd847c8f24bee1f17d9541c49e818032909b5e53b000dde5df0c908ee613f67ebb6afe3b7b884dc99983238bb7d095358bc680c7189c436ce89f58e135fd6a166bf953bcc464e19b67fa70a62a474790633169e2a090c707dbebddaea44089052eb60e1d452b0c745be96e6b240c414d1f9cc8530e497fed2d96346c85f30774d4d917f7a99efa14f25b9c2b0a6365251754c59a94ba935e701e19fa71f2aca2cb0ebd273542bb787462ac05ddfc7f800b009ced39a051adc14676d6e36e963c5d4a388626c6abf53ffe5267c36dd73ac158b5ab53eda9d40029c1f07c1b11053b3d1491a74eae978f55f67c1a22dc97af2a19cef7ba77e8739e0a8d90944ef39808fc022240f7e89c1857c396e83f0eb67b003c605ddfa1c0f09bd8bc791821f7f5aac765df1d9f3953d308c5e982d714aa84534d81426b457560581124343a0628e0065bbaa347b04f1e76bbe7d8b513b608898ab0e94b587d5871e8650f66be8a47ef3347157509c80624ead90a53fab47869ad5ce128eecc01b1fd097195edd33cb0494dd9fc26e8dbbc64b8db59b35779de0884f8c90bac2a2af60cfc84e3ef1821dac4ec6b4fda5e80deeea22912e897c68ffc958d2b59732fbb8baa76dc581304b02514c753e10175637a8e2883207c69d1d58893a90f8f66505f6fa1397d75cf53432cac79bccb5d39e7895924a060610b74d1bc1c54d4dda739c2b2e746f5505e31c52fd02fa3e6e5de793fb5518ed1d85eda1341ebbd9d1a012754e416900ff1eceb8008442fa1d21b91d8c17582fc3b491ad443256436461ca074a937e337387739a8c676fede66af1cbd029802e002bb1117df11186135a4c566609bdd5a8232cdea6e62d7df40a47964215f1bc6da0b0010f233255119f1d0806b730a720231e3faaacadf909d361d39609c773878c2b8c616c6093c44daf11c960a68b63d4f43b0aa49b8eb1e15e553eb158dc177235c073168c0e372a837cb49854a8793251df4a2600b3270c9355e03036f28134c0e608f540447152843dc1286aafa02310e49355fa0596cd634d405d911ac0684be5bc37c0d6fff6873fb186741a3d2e193a5577e49ace1319cf7fafb02ccfeee12feb4a6c628885a6d89d8192f1035f5436e56a495c40ede3a5ae915352b161b6b2340b882882c30009bbeb1d199e3081174e55ab34f5b65941e06c8e5b2592dfdb649748b7c4265864dc0fc8e28f26ae59d467e3bd5428509f8ca4c2c8cef4e2f24cec171c15a356d824994204d8b24e9d177c6aa8eea6d495d0645113d8342ee788ad27a9dc387116e6eec53808e12ca3e048a1b23e99f6229d460203b20d350d4030e5a3f6465d5db02b824801191fac1d7bc48ad0cf16f41d00b284fff297167d2288a6da8147e52a82e8f1dd3bbeb889fd0a9cf6af766780c2bbbc663d0b890fb84a81c683f3b74caccb8c9e284b137c190415ec8dce9d9cb724f63e618fcc02613077d8ef9105176aa5a53e8dba1f71b91932cc4ffe386d87b98837650002c7c911278645c19393b687fd396335e1e0b191697c1d955f8abdbe1c6efe2f1b918a00800c458ad1d209dea61e4720b8dd583ede7ed9142617842db36ca214f11672e54e5bf2d4e539a843f7456b60aa6a6901d62a4a0a3a709b42d157ba3b455c179d34b9cbe6f954e0ac92e00aa3daceef90f532c9b9773f5437c0c7d9b84c26e646b56fc3629e2a103d7b097e6e562efaca1f6995683d7f680178a60af45ba8d92d032e28c097c48037a27d3b057209028e41c0261bce0f8e664661c45dfa6ffa81fe6177af535f935da24eeb5b4f154463b518b7e5145a9fe938736d51c550084c5014098ee9da379212de3dc6d46103c8165045cda52dffe57dfee699a88888888502232450b8b0aa00a40554036590a5fb7c1eb1b783d04afa3e0c55ae2e2dff7c5795d87430727ffbec2f7f5d596e3dff746c91504acbe7ce57d3e63922926584a86beb785eba16849259fb8d7eb095b245d5ff3b3e6eb8baff9dbf0ef6b6eabf9ade6b89af36a58c6abaf394e2dc9d0d71c8486fd756ab55aedf51973860d48f92455753142e2e7ed1b2ffabeeffb0efff5016f7ceef3953f2f5f7fa33c54c90242d8c5869298c7d6f43c389fd91426495930c6ac621e6f1bcf93c3f6de976bf8efefe6f5f76d2c2434bed7eb09855fdef8e94d3c81a70f996c9f1e7f7a87288fe74faaaa2c96c62f7f7af9253c85a7fbe9a5b01ce6accef33ccfd35d80e54f9741047a7e7acee93a1c3a8c11fff4069c268cf9f37457580ab708ffe6e6e6664b90bff1dbcd5599d1dfdcdcdcdcdc78b69175bdcf4f9fcfe7b614eff39b4f0bd9fb9cd7f0faeef3d990fff3f3f76393576336de4978779fbfcf97c40224c215961efffaed751c887f9df75e6581f26f55d5151bdfebf57a5757ba7caf7765428eeff9dbc6effb9e373070926ca222a9868c1b4cb5de913f7dbfd6b896b092c2bfef7bded85208338a158b20d11125e6f15e7a9e1cf52d7b4637be35c8c90ce6b8d7bbaa82e55f3fafacf8f8d7c6e3b90dcbf36a9ec7e3f11cc7235286eacff5e4a9633e1e9a93e7f978afafc7439b41802fd5f8aac61ecf771ae9bdafef0aeb797ef2783e95d7856cd2ebf9c43ccf4f1ecf57e3f5d0d23b7de76975e579169ec7e3f57a371bc6c6f0a0a2c38ccad68a98c7bbc6f3e4f8a4f8781e8f57e3c517a2245717540d1a2dcf3734ebbdef8dcf6715e279ebebe30540c956092e1fa6be3ef40cf67d52e2ebf18a5489e12c2ded76bbdd6eb7db8dd9ed78bd1e8fb7dbed7c3b5ecfd7ebf578bcdd6eb7e3f17a3c5eafb7dbed763be7b9bbe3ed76bdddaeb7e3f5d4a1ced786dbd7b98dc8eb748e93a3735cc3afeb9ca7f34cccf0fbea945e1d15228e60bdb012f32483286946a66c0b18f1440c5b1e1ad31adf778813185faf8d4188a01e4742d0c85104a3a62b77349ed7cb3c5ec903aebb9dd7eb74baf7d5953b246544b2a0e590b2846c55b0a32864480e23194c2f5e1ef27d552a3624abcff37859576abc4ea703125264248602069256aa7973d470753b9d8e775a790a409615285e3a1d4fb7e3e92493b95c2e97cbe572b95c2e97cbe572395d4eb7d3e976b95c2eb77373ba5c6e97dbe574bb5c2e97d3e9783b9d8eb7dbe572b95d4ea7dbe572395e6ea7e3ed76b99cafc7cbe572b9ddee86a7ebe97cba1b5f8f97cbe57439dd2ed70a4b9ce37038cfc1e170593c7c1ee70d68b8f6381cce33ced7b6151f87c379043ab82a2d21c1c4bf7e7ba1a2fcebbc372b2ac7bf39af93d79f4f25aa9e8c7ced78f1014ea8a3459995c3e700bad77ddf97ccbf3b6553109ba6afaf1b4b7f2ac9ba8176ccc2a16400ba097059c5304392c50b131735633a60938a0cef8bcb6dc001d4509332c32d598c318fb7789e1c9dd5d8e370b8f7428e20b9f7d5d9e0f2bdef6ec30c2eeb567c7b7c5f5d968da0c79de7b9e106960caf8b03894eb7e4f33267ebf980eb52e7f4783b1e1bca17f7beeffbbeeffb4621f937a77b715934ccce33abc68e3fc38632642d3d3dc9622261fc2a165f5701f76442777249d97a1c0e67e129d9b65c51d2fe6d85654f930f17b3102cc40c93cde2567ac0bd3cdcb5f823be005064c4d9975088f81271399d1902de282b273d223e7cb4104b9eb0a4aa9374b82b3120bcd4c70cb6c6dc9bdb6d407526bc709e731797c3e1763acf28fcfbbeafdb58fcebb7d7ea67ec5fc7e96670e5f97acedd37f7bea72e4492c7adaf6ec3fa0ac9015ba3edcc3dd7e1803c3d60ee1c1defdc9db9f33cad4200c1f0ef3b66065b636eec71abf9e62389dc39b8155bfe7d5fa3196cabaaae9463ae7017d5704eaa2af75a421f8f7af9552ea13847bd140e4b62a944e5512f65d800dd00074280021710619a47591c1445bdc3d5a36d12457fb0f81e752030afd3e974e8eb74462310d3e772b9dced7339b1c7e170b8dce370224228e0dff767e93cfb0a8afcb6aa0a978b627a73680bb8026c8283a22f0e97d1c858496103a8298bd78ae7c9c92de972391054ffbe6fcec2dba404d71a732048fcbbe67ce635d12387fb806574fab2c673743874b062f135de809a9a9a9a9a1a9fafafa9a9a9f1aa3103a05a554f41a3aa3f6b6ad0b28a806142868588a22215aaaa01e6ce79df1f403fbcb000d9418216902ec72c10b4a8c01cb942d00a32e64b4b48d79fc7184eb2d610b4a00f4a44437829b481ebba1e01d7755dd75d907cd7657085ca0f181c65843658c4aeaf0d37d2bb6e7b7ad76f8d6bb8c65de7b9aeeb3aae7370bd83d3bbaebb421cf0cb907fdff735cdfe7db5905350b4be1cf16c362635356e2b3ccfb0336b79697ad775dd1e5cef5bd385cabb7ebaeebaa2a7ebba6e0d172dad2e498f16b1b9c0b22648d395342e4c920c0d9b88bac93f716fcd4e8972c1a15b519f722da3725aa65e0acb61a974fcb4e653b7c10652e740ea2140810bb83e4d85a91027f59cd475387410f2a937a0e1f771699abacdead3d4ddf55dd7c579d74d628484aca524c800a511edd1f3986c93af520f23224884cd00fa904225e10249d0510b09152d2314ae84244e42a612594428503c0fce7378d866def7880e2fad2364661ecccd289aa669da759e5e507f2609a165e4e8249d299fb4a45a5d4ace311c1acfa1711d0e5a286e3c8d37a0610b4fe31b6818751ae7008d4be3d2d0f84ae336e4d3d04480c633990da8cd162a3e311a0604ad132ffef4b724ba9a3241298bfd463877844559f312245d2eaaf438c1c4f1049a5f285bb48c6e3cea3754eb68f8a8d39ce739824b228992dc693483adf134fe506203852418d65912ed233445d12e28c8479dc3af35a264acb0d27efedc4a537285c29102582c7fbec09df26cf87576250a9ad586471dc74303f328929c344dd3316449923f6c3b582c8450895841f4327a1edc0a283d4e68c1832caa684df30be44f1445d1f25cb24269721494744bcc92ad314617a4a46890a5c5c4a809c58f194df4eab011a549849162d39228e86abb5084a2451b2caa4e0c5a506830a13abe28c263bb9d6793903fd3e2529747995230811180521ef342cc842a5d4b4b543db480a2787a9282c4015260052045971de2d21612880b3da0b4105351c308e4c5440d6af56d7b9e27703c7ac236824ded3c511445d1349c505689344d53f41c9a85111933119362110bad5c74e52d427e1961f9b68caa2ce1e1fb73eb68c99ffe818673d5d60923dd589abee729c4811f26105637840c990dbd26804c68096198e2d199e18b21292684a4f07814d33784118fa26f891f7f9e4328fe2c661d17c98d9017123956a1118ffa8b6e0999f0e8ae7487606f9010b011291e6db235828b552a812828223f51948e685d625713435ff7c59098b4b4ad0f57525a48063fa4a69490a6a4483c4f8e4d091fa88ba2692a1cfe291ca2e36e09bd20398566b0353ef9f35cd3903c4181e9515b4ab3bac02c4a1711a81e4692f48816cd6f8f3f4fe3174df9be64c0ac8a692a0cf08ea06bf1a26834a690f9a1718b645010e9d0280e18c92867318c14cf90708e6328dfa18e474bd4ec2949980f248411c2218c182962be8a637620c96e522849162f201d2a4e80a1424c504d2af4ae8ba22918a7b01384fe94523c414b2f9b0105008944474037e4d037ec519af4e70a5da12b94a2ba1a17e7e65cdd6aab01f2e0bc786d214fe020a77c45a4939d2f44c52f600670870da7a504aa8888fae101e507540b2f94691217e80e81aed07816bd100b601e0160c412c102ea678b0808030f1a32a86614399941569b21e6090da3ce8c92475f34455125b33f8b2fa8b660fc3c29c29832a518438894a28c24afb2b1b1b1711bcfe9608e6daa6c6c6c5c375b31416ac4d987a6af16f9484b04234ec18470c09cbcc0d22ca0b69921b1f478c565820b8aa222575284606a11377758e675dd2664394e881ef51bbae544cba37eda709e13706a65b50bfbf69dd7ceb83be61d9c6fdf5599c1b4c8b3f331833d51265474313a7124c88eb87d276cb8c57cfb6e68064b20fc0172463c0b11226edf111bee304b0d67a7a89d54d3b7efa81ab69d653865624a2b4366103383a993d3d89254c3b9d870367e1d657cbb2e4c8794e1942825d2257dbb4e4837d411f30ef0db753e66304d75c26fcf5599c15cd5c26c0814aea8164c717baed8709b7d7beed8701e6b3823cd924917df9e4bcb4d65183d3bcb517d7bee46ce292795777edf9e533283699a5b1ac3251bcec286f3f028476cb83d978403cb304a05a582c3e170c7bce3df8eab3283e8d8988f19b4304403f113c4c5b12a6ec7091bee13be1d37348319cd860d2c329256f02813b7e3880d37986fc72999410d43424cf159ea7aa1246ec72d35dc5f9ca27052c46fc751357c9e6518ddda4afb769b321b64bb4d32efdc7cbb8d9819448dc6b16fb75132833d33982c9161944cfb018adb6d961a6ee477be2286418102558928a8b8dbcbb7db5499c19e2522234aba3041258911b7db141bee2ec62f9b6392c4b7db84d9206518bd42af6c92bedd46c8666843cc3bbe6fc790d6c1566813e2db315499c19e2153299c4092d202052d6ec7506cb8b97c3b86230631337800255d96140145d1c012b763186bb8cbbe1d03720c996fc76086612ac32813ca8481eadb31dc68b8c6db31386190ca3bbd6fc7a06406d146312c7dfb05313338025a910b305cb22029c6ed17c61aee2ddf7e0169062d70c5d4220c160a5737e2f60bc9865bcbb763f03183d9ea2b284b9213529041c6ed18840d37d9f0080351ccb76348ba0096619408250afbf60b5e178ced17aacc204ae4b9e06306733064ca8a17b32c1057e2f60bc2862f0ccd600f8ead2f2b8ab2b0480116b75f2036dc59befd829219cc605c5a806ab41841a446dc8ec529ea8214976fbf40d5307b96e1f3ec2ceddb6f653764fb2d997776df7e133383a88fcfd8b7df94cc60cf91d408324c42aa2b1371fb6da9e17632833dc4272bc2bcbaf0b84114b7dfa41aee2bdf7eab32833d41989c20e42374c42c2d6ebf151b6e2bc6af63c3edb7b086572a5492befd26d4f0b0fd46cc3bba6fbff998c1738ce726cc65c83c0c09a1925f5cc4dd55bebdc66806b31419424165269058f911b7d71c1b6e2adf5e2366067b5460994da152fcd10244dc2d86344b8e09fbf69ab49aa90c9f5b5b3554df5e73a3c6a9462aefe4bebd46c90c9ec61a3133c800266221c44829757988bba77cbb05a419ec316a0a6b21b42264032bee96f2ed353e66b0c7274710a493e4d68810717b8db0e18e323caa2122f9f69a240b60193e9f9e2c847dbb052f0b460bc7bc833383a79494b06162c379a9e1ec1465418aaae10a67193e9190d2ca90c9bc632366064f25a5b16fa751328338a3a9a2272856296889db69961aeeb09e1c4a7aa4c092a5a835236ea7916ab8a17c3b4d95192c818764d28d272c346cc4ed34c586fb89f1ebd8703b4d180d52864f0fa7079aa46fa711a219d210f30e866fa7f13183a750282441191443944e7c487212b7db8a0d37d8b7db8c663073e9e062fafafa610516b7db8e0db79819cc4e548ce5782aeb324515b7dbc61a6e2748b386cde4541a1999cd66b349e59d0bdf6e43dac4cc60cf70c910918e20464212717b85b186bbc9b75748369c850de7e1918dd8e3db6d4915c0326c26495221ecdb2b7855305638e69ddbb7793c16bfbd828f19cc575e44475f51c0522489db2b081b6e26df5e81d8705e6a383b4555901ad3f4ed15a866ce326c4e99533369df3e53d6b08db7cf20679279a7e6cdaaaa192533988018537afc38e5e03115b7cf2c35dc5fdf3ee36406e1235959d0862e4e8811b7cf4835dc4bbe7da6ca0cf630a1f02a1202461130c2b87da6d8702b317e1ddb67c21a46bf7d0629c3e60bf3c54cd2b7cf08cd0c678879c7c2b7cff89841736946f8edb5e2b1e13cd670469a251b6eafa5d5a6326c06994135aa6fafdda839d5a4f20ecdb7d794cca0396c7f99342942e383921d4d71fb3bd67027f9f637d9707e1798283a41eb9285848abb8dc3a31ab1e8db6b490d8365b8bf7c79c3befdf57a8def31efd8befdad2a7dcc60f662858289205756607ac48de4bbc70887962a226a34c5888adb5f62c37d245b21a38080e234a6484cdc6dc429ea951af3f3ed2f55c3b5b30c3718585a193299772a7cbb2be68ef5284199e0e589172d2682c4edee52c3edf5edae54c3b9d870367e1dd1bedd0d6bd8fd761729c3dd6ed2b7bb42eeb083c4bc33d3c5627b5b65065b4036024b47962225cee2f6b6d870777d7b7b1433833d5163507aa0d055028459dcde8e35dc5c48b3866b5cbebd4d6b782ac3fde3474bf5eded8dd6a995ca3bb56f6f933ac8265b19636c52388cf2eded51076d713b0b96e17ed12fd8b06f67bd58237bcc3bef772f2d15bf9d15121bce4b0d67a728564a4cd7b7b3540d5b38cb700775505a59c31890c9bce3f6b0c7403976ed083392428bb87beb7b8bd5972d265b388468c5bd569941070829d1a3c90bb0319fb87d2d36dc5ac62f2857be7d0d6b1829c3e5972f5fae42eb4acc3bedb7af3e66b04c3604a4b88818b365a54cb1e1cefa76d568063d482b265908218d5911b7abc786bbc8771e833584a645c6102d3be27675ace1c6429a25b1d2a6325c8281a954dfaede509d54a9bcc37e9762dd134405942d6548563f4f7113f9ada628567a3009224514b7a7c986fbea1b841498c0bc3001118dc4dd56c32395d870264216f4ed6a520a96e1d2ca2aecdb53af86cd0ee678fd2e8ba686d25361c3b9e1bcd470768a4aa57e7c7b4ad5707b96e1928929eddbd13214d9c11cb7a3c9bca37e3b2a66064b27a7311844616205aac40cb422717755b1e16cfc6a47c31a46ca70495412a149df8e0a357cf37674987e97c4ee51822204b144298ad825ee1ef2ede7317721d30505942c2bb3a0b8fd1c6bb8852097cc1a6e934b690db7df7e4e65f8066727d5b79f371a6ebdfd743aa54e253358fa8c99c93c3c3a8928be2d7cbb09966111f0985e0db3e631ef54993e6670f581e6218c040e1628e20ef29dcfc064ec283b618290a0b8dd2436dc5402404b0252460b5a14a3b81b8893d4d0f77a966109e4adb4b2866dc864de31bf31606c6f2533d843c4044c8da51d46b4b2b87f4829ba62c6e3041645e2eea907010d22c7af2424b2acb8a58c5fc786339718a06fefb0869132bc6143d257f0f61e7673e85c86456647168e245d98e26e1fdf5e1e33924d96f9f632ad61f6dbcba90ce7724ee9392a3735dc68786d2fa5f24ef96d7620c365ce49220e1beeeef1dd9302840969215260b1c328eee6f1ed213083031053a3a8081728455c713b051a56bd1d03c1b567859712262246669cb01177544f1015081b227e9a684989db710d37d4f7922f55b218294ae1d514eff8769d02349c3e096d0d98f4a21f214278f082c2f0e9796c51655e1bdaf1c106a07ea01479e151c414f3ac4e17ca1e257cbe5587e9f9c9f77abe9680fa9ebf564326be87f379404b95ac2c32135386e8b8f56a7ccde703fb5ecf4a88c7f77abebcdab87cac4810dff7ab85702529f411e50b4995c3b685acfd6ab51e114682cf733319870edfaf3dfa7c5e0be2f13d3f7b56234a7ccf7753ab79aeddd46ab5a1089fcfe73b4ff84cc77c8fe87b7eeb09bb7ccf79bd9eef57abd128117ed11a32f274ace1a8a9359fd76ab59a7bad56ebf98dbbbd9b5eaff6abd5ba04aaf23e9fcfbd565bbf66fbda5babd56a35aaaf79cd57ab05f96db98ba9ea79709e537ec9e4f4a5f33ad831085fba0836b3e739738d277791216b309840f9bbd3cf3f7d02e99f401598c017e4e07317d909dfa173fbd93664aa932649713541ab323cd6d0a27466f84c048ac9b75d496f57b74471bf9659f1ebeaebcdf34ef92b10d8023760cb5f1372d1c304315bcaba3cd8707163eaf7b3754e69bbe16e9d53de7e1db1ae4d648e68750962928411af2d7e75db8b5fa160fcaa027129d0c6637b1418cc71d176d37dee8202fadbe7ae1d273c8fcdd9530bc48ac402d79f9fbba2b254113fa66a54d99a42e4424aacb278d56d524d7a3e3441290366c4a748233e93884025cb9ccf44a2807ee63311a8b33377fda1c05afbe01601f364add9b102d5208a0ba11958992d2b71baa2c694a615ef14133420ca2095d234cca76c89a632424d404d47378a7c52a648196b3f774961f2339fbba468992d911d13ed904320a1734a575334b72b0feaec7a02d58c66107e690e8a9a280a4451a0f973d3cc29cf699ed9cc2a40db5fa2adf436d932e57273c339e79ccd9cd16c96a84e76d7fce5b809c49d285a66cfed3ca7b983b2d124ae19ec1122738534aafa90c42456f105e0f0d941f812d8539629384d38a17ac215a24754506c22bdeab6b0a3d8ee735710119f7eee3a36d9e166d33c4db3f3099f66bf99420a8d8057010ccaaf5076ee9f0cfa4b93b8a647ab0b224dd7d5d7744d3dac44a486563231250ec367223eb8bced33111f5150146e2a5433bc0a46abc2e7aea8b02e304568cb20137b9a473b3e4f1265181590bb04c5a6c2b4e853c7adf87475d54befd0e5aadeaa7878afe2bcaa4ac578d5716a0a5c8110b0e5f34412a17f3aae0cbb9202ead01dbad450fa036cefe72b1f64defd7ce503692b4d55cb71fd12f2d13cba4e25161249b8b8c4b9009fdb642942e9f979745e5c9b2c11d01aab5a27d5511375f36776d878749ea784027cbb69baaaa63be039916bd72470762945384d34f513f9a8d259568a80fa999a68dabff5ecb2aa3d8fec1c54ed59cbb75db850e3ebbad6fc7876f0ebf049288d404aa01c518a707aaf9ebb14962298beaa1ce81cd5cf0b94234a114c5fdd5ff9dd6efece9deae5f0cbaaefd0e78f0366698372685e40357f6eebbff6b733fbc7c3e13ccff33cd71757b6c927dbebafbbc43a4f9b8440bbfe4a35e3c472f875b5d970ce020e9f6cd8e705f2d86c389ce7e4fcaba3135c955cb4e680f73439c43876126891efb62fee97ff5d9f6ac6c9d6b058c327da221ba6f1b2bdf2652ba31d6b95daa5ce119abf56a8bdf06b8fdad6086c8d38196670d856e769853338aa4c0dede5ed7cdf644d9fc99d83e3ec8f07f7adb1849cf7c0d71f8fed1d0080191d360f3c70d36970bea9e67751d3030f3c709b2b23efccc80858855984d2cb8cb562f8d3c24a0a5bc2d8247ee92eb1611c2fd71135be2c5d25d3a8fe4ad0493b2735b13a98a88a9aaaa9aaa6a9aaa6699e690a54fd5c41167b13a802d53ff056aa619f6f78f5f7c186f779eec793b13e97f3cf08688d5984d27328089df30e794783e79cd7b0089ec369f8e639e7c9f95cc3399ef39ce79ce7fd9cbb42609b44816a0006e0e5009ca77cdf8dbb599ad9e68237cd9c12745ed57913a802d66b5e739775f4c78383730fce00cb73f5df0b76f0a9eb5e50a6b89adfeab446495561adc5d5abe1d44ddfcdfc70edf9738009646f1cfdb5469e1274bee7373d77dd16b65e0fe74db5ad39403d4d1427c6d173f7f62bff8200807e038af02bdf0682973f2f7f3ade12201f7f83e79a03367887765d1478a2450e8faaa8fa5b413ef25ae7f11cf5f3c743c21b9c71e7c1f1e0384f8ece05b739eba773c83b353f5357593777f0abeb5e50fe6af39bc181c1155a28dd1d5ef8a9333866bcf475a9011c6a3f0ce4104cc7fd6a68d2991298812801fcfcf19440c2b7de1a794a2080bbe5abb6a50b9b7a01b5fd22e1d8703ecf1fe1979b00bf0d668d194f67803b2021c6a19a400e9d23c22f3ff0678660baff72e780f0cbabcdd460defc28c0811c8299c572803c2564b1f7b9997ff7e3595f07e479714e0de7bcf436aa831be2d23ff8f1e0887dbb2ec47bf05b41ce0300a8021c6fdba386792a80a1443c12b224cc8fb8f4d6a76133c597eeb63fd55db75fd6b3e35e3d813ca6e3982c100798e1f781142d43268c432f6aa008810cf7a5b5f4d4050624abc8891094dc1a3c69818568ca8e2043476fba2d04b012ed08c8ac74913dd91a02333a36cdece020d184a20692a2a7a237ddb601ccc39b6f9a0e407115c4451a0b135588b6664a77f3cc5b664401d163a949d031b6e5de749f7a5bb699be2ee1cc9c674d14b66c9af835055a1d9dfc09ec494221434ac530499289d8b4f0a6890396e1d6a975c2c1c1c139e61d9caac6297e3b8e8f19ec698a812c8204620c42236ec711366c0e7d3bced00cf68c3e606909f224a54cdc8e436cd82cf1ed384a66900042aeb21955500013246ec7596ad814728ac2916ab81d872ac3598657a4152943dab767286bf8f5f60cc80cc9bc9341cc0cb6559d61ecdb332899c1f3858a10515ac43866c5ed19961a36497c7b06273398538012e6cca889cc1296b83d8354c3e6886fcf5065067b40a46101196710c7bce2f60cc586cd20e3d7f1c3b76708cb8094e1d5c3ea21e9db330865186620e69d0ce5db33f898c155b866a832830ef02a928234640bb249dc0e2c366c0abf1d68348306f032a2408684953230e276e0b16113e8db816266b0002354d0c04202127211b703c71a364520cd920db70381531956d1d08054df0ebcd130cfdb814e40a9bc939f7c3b30a983ab1250c6b7ffc4cc60fe9a32840451951c47afb8fd37d6b0f9f3ed3fa419ac0194b331ab2f1f6008e3f65fb26133c4b7037dcc608f87193fc04c2457c8588adb81c2864d10df0e1c9ee1f876e05107d5b8fd079661958a4ae5f7fbfd8e79e7576506d5b1311f33d8c36446e20b900d24505f71fb4fd8b0f9e1db7f433338821530acc0a43c3d5189db7fc4867f4a66308b95159570093ad3228bdb7f4b0d9b3e4e513fa918dffea33acbb0bab59556864ce61d173383aad138f6edae64063d78d1058c8c254dc04c89db7da9e14ee1dbddc90cf608a17cd4302a928841246e77a986bbccb77b9519b45086040a1213a694b588dbbdd870a360fc3a36dcee618e9461f5eaca93bedd857ce8c4bc3380b40eba42771e0f51349ac10c66090e21122352664489db6f8e634814cc6ea632ac025181dc507dfbcd8d1ba71ba9bc13c2b7df2475b035dec8f876df980f6906414893811505ed47aa296ef7251bbe11de0ca97cfbcd51077971bb0f2cc3ea8b17beb06ff77935bcf3769fd177cc3b207cbbafca0caaaaaff8ed3e1f335803a30827114b45633ce2769fd03734832a10a3f1436bc848122671bb8fe85332831949122b4a864c25c2c4c4edbea586fbcc29ca27d5e4db7d5467195683d4a05eafac619db7f77ac9bc23806fef89994175a80ec7bebda764067315105a56744c79bd0812b7f7961a6e32dfde7332833d3da8148bae42fc50698adb7b520d37dab7f7aacc6006a67c4121c40926503de2f65eb1e13e337e1d1bce453c68f9f65e580f29c3e9972fbda46fef09359cf3f6deb047ecf998c13499f684dfceab328323b4f81036e665c8475adcce2bf28e6266f006326c709150d2e2c149dcce1b6bb8c720cd1aae491e499bca700a0646f5edbc1bcde349e59d9c6fe72999c154ac7d276606b318a1982f6660277c88186bb893499e8f19b421f382258889193d86713b4fd8708f191ef1880db7f3921aaef9f61d580e0cb8425cd7196eca002b5255683d9c55b1acef5a95dc61b6f97573111b4bbfbacfb3bf9bb906adab066014714161e3e7864fbc1a7f75dbd2af8e6bfa554d6ff9b4dd709fad7cbe6cde9e25dc4d915ec5f02a9ba638154b2cab03b7a6aaaaaaead18a8c166e555575858fa921af0f25e62c2aa5b6453d2cb86b4d5589c595685c89c79528d6a647659327cfb2ad9bb66e0d9eca962790ad219f48ae3e36216ee8c41ca5d6c0a258e2f0acbb6bd55a958548cd4a1c5b89c895985c917cd6b5c2d003201ea288085326eb08122421520ad76ddbd6b5f042bd11e62108cb5711d811a41a574853555fa85e30956dd32a2b6934e9fa297b63827cd9354dd3344d537655db12eeaa3a097372c5499913b3d655599665553ccbaeaaaa3a8e9a82f821e1aec4375d3a5921cbb2c7a163d1aaca7051235268090e787949f9912223c50ad3c8f1c591860e9bf3862b7ebefa4a1655d75666ad6e6be6ab244ecfbacaaee7959334d53d32d3477c501604cbb250cfae6d585a9eab92a8d690a9562c9b576b70957cb9dba6401f847931a1ea4a957689120a64453cd124a486161fafa34fd78ea23f31c47de9d4d4f465afa4043dcbfacab2351578c34d1933dff5046257b878d64dd3d47172d2740ad24dabb12cbb9eeb14a5164cabb22ccbde704eae2ac4d278f66a8a98675735f52c6eeab6e76c0027a7cadd63cbb2ceb2ac14a3a921ffbabaaeebabbbba3325ca80f84881ab6cec09991c1ccf1eb79e5dd594bd8a52b4b9ceb22c3bc5c7d490df756b42d98810101651092265655d1f4c44a9721c2b20c7e7711dd796745bb157d51bfaaadbb6c0f5899065819455386fb8284420646accbc9e2b942553433683b6a19eaade70614e61526155369b19cc4dafaeaeaaaaaaaa2a18d60ae6b5aeaa7a4555e455d557d56faeaa5fad217ffa24ac35e4e7596d6f6b38181f8fa686dc70be7dae32a3f1e8e7ae31639ec7e62cdb4384d5560a164c90574cae10d2408458ca6163288ccfad5c6eb5958ef39c8f99a593b66e189405be405be7e06eb716886b9b655996b57a7625924051118ce84b8bad1bc518cfa6f0e1d9564ddf6759d63396aff0acaf3736b32cdbb22ccbb24668cfb2ebbaae6bdad4aa693b455551755dd7f5e957f51dca1863620c9454930f57bc6afdea3620a3f697e338de3adbb228587689899856500a2c50319bf5acdba49e2d537c7655d39be354717962b4f53caed3be665d5d21a4d0c40411a62024222e8b785706f6479aa6270a1188304eb12a924247918985f42a0b97036b64c4af9fb18c7c406104b4a4332b6237623011e1c92a021b31d464a3cbbcca72a643699a36214202eb04ae4fb34ae4bc883c0879e2049773d1cf458424d179d3969d62d515e8a6ae97a7dbb2699721184952750dbb7121f1e24a140ae5d4225442c3a13eb995993f4a4331929ce607172ece90da6cbc7949a18553931b08676458f8b809e08c4c9290231acee48a2c203539c9a48a234d369c338c1824301728508b19d10bf1f493ec04a288dacd0d0c32c511199bef0cc305850b3168efa665cb091e5c786797b1232d13d6dd8d8b09464fc258ddd9a54a5119925aee06660a11da18aad3862c8c88680ac30d6cc834a68779e11c6b62c2aac9bd21990c25416bb47c95c852f4d27c492224a66603834428049a5b01e945e2884b6d064cd70818ab7be3b215c403ab3db3845b2a7b2b23021465a94dbd0c11d165683d6f5c8288f0a09a793dcb7efc9c28c3b60db8dedc2e3e42d470b433af6beb643c400859dd2c5d6dec9675fdb024c71dc776731cae2ac83f3f5b1d11791ed7b10089d2842e1384112e75e803a411e984cb74a3786c6f962590c7f4d5345dcdbf6c6a383d3d4fd5cdd42c813c672edbc64d088902d14ae3f6058c151b695bb2acbeb0b0fa32c30a69c6ba9fad9043bec2672ba4091e52112997950a646d9aa6690af6a99a8ae881255d21b02b302369a60225edc31522605dd0aac0849c56602c3efd6c0596e51cb1e1c60813c4d1ab7d62452653008df813174684187a4476e30413295430e1a2ca4fd4d54d6b8d7ca69019bd1e80581f10743ef8ace583e3317cd6f24941a6b3e50420ab1f431d5386ac6d9017b23397ecca4b028a868515b1888db464131f64423e18995a9ccc2242b6a45a6452d4754dd3344dd3d56807658b13530a13a604d132444b8b96baaa6c50122b2766ac0e870e0d8800061acef97cb9625a644a644d6664b8b98338b8b2a50a882ba5175954cf63fb8c336130028dd99ea6a99aa61928e3d2cba7f9d243aaaaaa4a34f6aa0af5aa0aa46a797031f48553b588aa7efdac45243524975380babe699aa6533e45556cb1a002f9e98c8b151f4eb8783f67a95892de70b2238a12d291284d980049c1ce892e5f2156143d4cfd10fae0031d4421c145e4e9059120e6140e05a1a61a5f4d640ca5d6d45555bc5a23bae0921aca513c1a12c5aa8f2033b682ec286d9fb7a8c64e102334daa67ff9d9d3ee0ce4393f97662e170ad4354d5da46995a6a023102272c0608ad31e5a90ad9839f5699a0e31f1e9abaaaa6a8057a95ec5013f6f5125dfe6f3961018566e3683302091020a5aceb28e61788c2084050a135851693f516bba12b9302121abc104cdca13132a0595ac1464ae85a309992d28461ec080983b881e882fd67455d530b0576b3e67a53882a69829b1c36285d90831ed07458d8c1f30305064c162c213d20aa41c3549470f633a9038e95184e6a4c2274b855185a20e9a9285d465b5dd70369fb38e94fced7316716c3daa6b6d44a9820c6a0b18332eb1385dc24458c57656e3c1c4a7ea11d5021107912f46a26479d0226300aa2d21c5364591a6198530b326326c60358d88531d665927caa867091aa868f185e9ec4998220a105bc1f553a6aeea19e4234c95b43150c27c41c949ca90bf012b45189ce780a0c3fbcc2554726bace9abaaaaaa7201255f3dea1932e1098c0752d197a758cdf1aadb42bc2a14fa13e7c1672e2025affbcc0524f5a18718d2070c2f294078e1e03d897180cf45302d3a2fd4d54fe828720b916eb13a029173d28183fac16143e744c506c5a286230c004f2d30e858a2216c9d11da91a22b4c6c068a8b0d09329f1b0e1f5d161e3912381d4516b86c50382e04e9e148c371229181cc4e878d5cd1a988e1a8268515003b66ac38399e569c883507d298b435f754667d83e0acb0e4d8918052b20271fcc02162f394e5c28d2d188a39985818cbf2694d555555b522337ad5cae8cb0dc0e7e20daba7f95cbce1948e40458405a6a4bcc4c02489a112ab5a96944142e2c3e40bd6ce59595c53550563f6a40897962e2f1e62b5f7aaaa9e0af041a3050f0f569c7888cf1b7f723d79f1b5cf5c4f8e52338c0399324cbcf85892a24b53ce4a322464ca140c2e3f19ec4c5dd3a03e2a61a4da568880e86c8b8ba22b27a238b591744355555555d5338810d5a9f94c840a4b9a62f95b9a7dfaa9afa9f9e9eaefbaae2bebeecaaeecbaae6c97b49fc5b1b7ce29d32a9ffa99a62c7a45256d6ddbd6e6eceb41eb53c7a5b89b2d4da57c9aa67e03f294809353023750bc05012a673e13a13a7bf73391204b9ec7e6ad0e1318bdd4082af2c5788c4ba61c135a97147e803099d2c55c2ab29f1bceb009b79765f9e56a4381bb13f880f24b2f9ffd0edd63963be8ded0c2830f369c60654b94633aa4d6745d85aaaf6a91f3898b3f1f508684051010184c8e98359ed4f855a7e6b3d513a19ff96c0556e6b491b7965419db721435c3884943c7e9c9c912e498a42e33509086001356f584f5ece7ae27a48c128c593dc150e143c58f8c011809a2f2e085c690185d15288336651463a584150c035c21fd50d184c7f0e8c5d918756d8b5ca0354db158247d7a02a96ad518d6794a41fd89c34aca22059436b9b900b6199caf82f73c4fcf0000a87c889142eb8b0817b109745343b9f51dba7f3cfea5ad745ce95e7a4e59f69420d654555555555555555595e673171494c7f0b92bcac92c76e7b22c0b60cbae0ac29b8efafb278f8dccea39f5d24f5ee794f1c9027d05e278a5fb4936463dfd5602ce9fb822cf344dd374039d1aa874ca1b2b6b122ae3cc8c0800000000e31700002008088824611a8659da62d701148014578e4c52503a8d86c2e15894a2408a61200a6118c0104088324431a41c75234100fe0a89eb00c638fdd0e4e0a8043719a630a35e96325983ecf75f7ebc22488f96e015a308e46d9df60adce5b63268578ab2f59ce9a3ce29b81ad41ff1689c00089d749172f15e4557ef8ea09d59e2456b95f228fa6be1611ea663e6e1bdae6ec50f200601f1d3427d2f10efe713c9f1ca3f4adbbe18690eea6a3a516c46fee1fc16e3442ddeb175226968fb1b6ddb92d7df557dd7bba82a0a4de247705efe6ffeeb392ed35a6525ad20477079342b10eb0b798382e58b4525eabd96f4b258aa0c2576d84de2cb013d35f64d9b047042eeee6ca41a319e2276720a235b0a4bdf1f778a3f28bd303769ebb497daab6ab4acbb9c01b10648dbbc881f4e132b12a2b703133db9ba1c82dfb2dfacc89a4a363071ddfd49cc2a4ba14da201b8caf7eb93cb7adf421774b3a25c6cc6de38f52b824803834696cc8ab002e88a42fe994241f0818ec3f8ce138e800d1687894c8b3cf051500b64f117f2db7fd12c367930a45a4a9aba4411b102fe2b218bd26da16bf7095f5674259e6584c17361565d38eb50ee46bc9e15939e0b4ed93b79a304a3b58ee161112bc3dde667e93e487a2aeeaac4b290ace86178ac3f62ec889c174a7e1228e7dc576237a97a9916ab9cb2c75292e67b9d29488d5e00a411cb61c4934182df4ffdb76a86a0f9c8076049aae0d8d37567d7e262e6378782548cb90307536561f0e012edb730df2bbdb9a1a236a56c95cb4a7552416e6a212d6f361122cb912aa4a59d303f394647680efe54e9fd15b1057af808a1b43755d7a5a2ced016d8f3eb20594747b615c222e00fc7e3297a5c1fd06c83815ca72a239860f24a3eaf875cd8edda19ac4d8444a7f0d7058292a20736739892bd4bc080bf4c4559c2d04322a1e139050748d6eada9d20eaa62bb7a6dcb50fe7faa4b0a2998f564c3a10a68a43a00b6e0e64cc084c1270967ab99c24e07496862cfc4a5dc48911e5059813c6376de79cb3fb906f039781da8237850fd456205c2e85280e2181809734095e20fee0d7fdf64ad41a6f2fa99f42a0742c0617be8fd8a4c340aeb59232e9130c66d9616872f3f9a375d7aef64e21b55598755003d7e461e8871b6689438cf8d51fc4e5557b0a5cd6f57b446ee9a2f5eb3921922714d8bc37d5990a6709690dba353d2cc8e73dd59b2f261d60a969f732e6d6a8d53e3d46c55987b79896bbb7f656a9c4e88c8bb2d33a1f76c245b085917405de5ecafd30f97c684cea791ab7c33abae7377124e8c7a37002328dccf1947c51930c8b3256067b254273bcc70f2833619ad13bc35d7e5afe1bbe06d9a42309288abaa717a6e9e9efac60c28edf21eeca5862ca43983ee948ac037bed0c6c046f9cc70cbf42c8e5693914722118101cef71cd727256557fe177a8d7ccb1b6c8d54eda7a8b45d6c63d14388db2daf031bd3ce3d454a37b0655587b0f55853831fd3ad9b0c94cd7d42e919cbe7226a36387f05b0e9d38b822a99cd42cd1eece385bf8ba455161cc1a626152d3f7a8d8a865a374cc61928706a89a7cffdf1d70c85775f09a996ff3c568af6d27abc086a1d09030d679c39b1dd951dd2c8767b2d7d909e3574c2232230cd56b890de000b9b103f0e40177e354bb657590e1e314f262420c638c5ae6b1ac8d63c9e483927b867e7e783d9bbfef9627e370cb2e9669b73ba8a1b0cdadbb0940dc2f06375b2a4d1306e922b1a43d62d6189d40aaff59e637d5458c6d91afc06ea7e9eb86bf6f9a90d72ed2c0afcc861633c3126633c65587a65fad4267d1d637cf8e6393d59d0fc278996d8b619501be1ad83554913c5b5076b0e24e190ece5cee73026518961ccf1cebbdd2b91937182d85a665b7af964b0b74af631de1086e1245051cc6a3dd1f04e088676c7ce7a2cae6459d752a8e450c50bd60cce6e894c69a2592e97039b125a0ccd7766371148a5a26272a678d3432472ca6b0898183c5bbae89f03a8411552f85417d0c21c4440e7d43d1c4baefc969646dc1bd5232c4699bca6710e00674df2f2259ee55e6b66ec723fd27ccf13e817dbf4b63fd4e90aa1a3a3d0c798d3f14bae2468c9c4d126f814e56fbea6699dd164c0d56191b0de291381ab4f03e3a0ca5679b2429a64e41ebb9c28d933c9222a57b391412642d105a713f96ce3120218a4b906a04499d595548f79c806ee37b1464bd4fe33b5c1d13533effd010e5ccd4aae9df86c4d130d573dae271d4dfede901e8e9c3b929fd48cbc3c87a1bcf89ae9c653c973693995dae70e30d443b80c46cf6e7a124c0863622fff67171c164fa2323bb600935ab4ccf1e98d3fb69bb6c990e259bdf2e0bdd96d668cb499c1c3fa52037aa7cab0736b56bbf5b2059ca5497bbf7175174090a02086b60af10ed314f52a79a17912968080e9c815eb0ec313f25b7310f445bc01041b083be2ab1efc5d62a52703c5a7ea036e6402b041d742a773d7a9ac61c0b044584bba9be58e802a414d42e689669bd5716ec38c80260d7a270d948d3be85d343e647dd67001c51525a34fb167815ed4e313eb84220149e0ada6c63dfc2e0793e2bb72cb746be4e0348f5ddacc25d02010f6a18348b6afd2907f668490be9d6837e9d1a321b2a5d0b56e8990881830dcd17b426c79e3c504df8e5ed0400c25d02091f6a19341bc1fe94097eb454b70c4125d5690d947dbafe941f7e0509b0d001420a6a17349bafde2b0976c4eed22168881c58815e29d5639e4b6e61068a4b4010205883be68d4a7f5494e6fee8a315021427083be48a78ff5929c6aee8a3b50101cf802bda6a5873c4b641b332529a6ab8b7ac823c98cbd4cb7823080020215743a9c1eb24905d34dadb00ce008069c415f58e9733d5a720836f34a21b6cb29fa584389cc624eefdf26c5aac0fef36947259be30ddc983302a54c60f4a014e1c2235067b0ca48943263d0636975e8263cb640cadf3ac6e77fcdb0474b5a94ae1e2bcee960f1949aa6fa0ca8b94230e13b4d036593d11f65c2afd854ba06b8225481a6cad04356d564b6727aff165325f8b09d7903d5f8e7fb80abefc9862bcb495fa86f41aa32deb540839e89107cd8ce6c816a61f5d48358750976a578853d865ae460a02e8615b90167cca6b15aeaaf526139f98720b317432a4d0389defcaf5f478dbec29edfcebeab3d7dae494b30af747d45ea7ea5edc67ca80ae90d00c730821d68ba46271ab4be5f8be3620153242641b977c975300d2fc088baa4bb26419eb145f679f32f0270572bb273409ceccbf32adf6387b552f0786bd741174f152d30000e93c6088a8daeff5cc30cc18fd1ed91bdfbe18ff5c9a31cf66976c30044882546d4bf07a3dbeba063c7789562c1cdbcc375ffc369feafc758642093ee3ac63d0bc6c79f3aee2fd3082a501058a7345e11e7b935caf4d20f552c2335de5e20737d37b786dca9c377f1cd571dab7874a7a712eae2e1e3d6185390d9b7574c1de821cafcc4b028929fa3a5d2f0c283a745654b09d0aa266d0d8e5a770adb96c04e8e4558f1ca84abaca41e9e24c0de53820ff6fbddac4ca1b9378f291212c121417815bb1c5087ba8dca508858a27e0f1c9a81860563fe58598d4f4d403b4037cc800825ba4ba055c99bbea565abe7d5407e6386e19a5d9371ecbfc4d76fe940a5847297bebe94429530d44d68c10bbf755c8415eeae7ede556736d61ea4a43f25580b036ce371887ae3faee44f1440f92818029b8afc648e9fc5122771f92dbbb5389dbdf868a1e9fd6d17157a3f75023e20dccc6fe3dd315ab91b98ff196e680e3f92329aa89d4b7c9d49a719fa43ca5f6f9e620aef53c90f25a65563297378e81ba04ded07cf02bcce265ed132709a93c93dfb91845ddf20c5fb9dc2f5036459bee6191c300e499457586dddaf554ef7be42fb2a49d87b9c3d86aa23898968e08f63fd8d5d71c26e8ad66e22f435049bb6af47616057129c0b1d53b8a35cdc87ae070f2389bf70ba98ddec42695419882c9508deb6d0f18e47248288e4b673ef93c9c9a44c8ee4a3506186af15119f83c3eaf511ffcd1c4f85e5b9e1c13453d47060e98a0c6cc5626357145a154c53121094562a2e3d4d425b59e474787ef16828162cf8fd8991458a9590874ad480580b66ca5fd0d558446d09cd56f74f62876a499b8c555980576a7bf63834b660a232465faf19c2e0f4b048cf911c13a8fe7b8adaa27ea38b7d321fb0e86393dce4cc981bf6d9c2543dbf42aab19cf7df73e8eeb9b4ce90c3c994ead898707dd0fcd748d5e7fcbc610dbc8bd58bdfeb5ef0e99d2282606373c3303c3e633f1ff44499b8d24b5df703015bfd346ec4216ee167fe55e527b853b9866f5fd9eee303847d76d6633c0c8091dfa55706962f9d5150f5843eb171a8f08ffb9a01c625e9ff5ada561c056dda852acd8578c29f8288dce19deb490815909bf7c931e1b7136d478b6ff78cbfd24791ab2355e24cc77a669a4f2528efa729a78bd45e717d5e4094c38cdaba809aff23bd15e33e51f64d81198393278071de09359a3ff91370e109e129f40f20813c297f1051082b502da38b2924d5908b4bc29e3fcb65fe71f74478598387dfcc5e41cd7974deeda1a69ee6b8b6d196d511896cde2c31bb8e926eea0172604519cdb73589c5f442491427cb24b2d77aee0d33af44032fe77259f0367d346e3e07bd61712b53a397b9154260ea3b9ea9c8462f0638046b4b27085c3723e76e504c29fb7b998b17602f58a1189643c6ab1dcce8b61770d79d471a89aa41f500a994b1c53acad1ebfad4f4de023c1ac584345edbbb31a0cab0ed614b99f0490dc7afae98513f076283afc9e1dc80c1dceed1e0e3afe202735f0ee0daf9c50089793dc6cc5a73cd93108f1b412f366df585c4a73773ce163495c93b8a75021e83c6a500362adbf254d66d03b2d7757ecaf2b0d25803ad6c50c76608a59274f6fb7521cdb5d0e1278de9452c4387cd81a0fe584ac9badf4610a22832113ab880c0bb35d3c110e06f128872ab6908d3dab2bd22285edfcbe37595ecbca1aff8410c0812140c79ad4ca74d52beb3c7811b37b81df34717c2edc1c66af3aefd6f3969dde9c2b88217dc8db18ea854738d4184dfc6c8aba0810eba79bae28f4995be42b4401358153665d8ac142efde14f541e99753958f645f222b969d798976e153b2c4c6512d4ee1eabea0dd91b5455b0ed4462855d06b90dd38c6970fb1c2194953ec173a3303821437f664a783ed55537faf7797925eb3fd639205d013d963d94623022843dd2c8889031374c351b13fd6f929999c793af2019ce30937bc002c1773ac125710b9d75cd516e03a074b75548de837fae0ecaa296a280a3c3ab35017449f8a19bd156d1d551296d793401f29013e68f9ea8ce154ee3054836c8bd964707e67b83a439ddf3ee05f6d214cced4bc556efe6583606e9a636dfaa88820e2af381494b04e173ad7a9408d995413c575845535aca9ae38af26444f555b53a414c8ab09828f948001d4dc6929c9eb49c18794f4ce5a60600998980e14f4ddf644047f2d2a8b1942b1232250f39508c59aaf459ef619ca9df363576961519435056d99551ab7e04143eddea8c3a0a55ed210a43d11c73a59917e5a1e03525728433fe6dd60f6aa71a82d88639fbac9a3f84e90c170359c9cad60c77e4bef17ed0df713e0f3ae2c8b82f5e8b5361a2916e15d35a5c17e1fc72b46ce5f63801686a2d6c5a6d412ccaa6adad1cfd19a6fd2290f75e8dc56c19a25a328ade4063816b849d2f26f917e62954da7f5cfb34a1b6cd226924419bf4daff8285a34ba4c9a40c127aad8e2f790c00d71cbc91ad2b213f12232fb47c3171833bc6dbcc77c8d31e5b8991b893db8abdc9ee6ea8aedb191c25f423d39d96f4c4113b918f791be32192743af3ad6e16594fe70b3ca71cf6c52112e6f00ac6c47f81bba19936ff69b301ce7e18699c180f3add616cd2764de7010688ade4d3212c0655054a498df26acb892f02fa68a0b03997dcdda2523dc66dbc29ed1a55404dafd1b1ede164504142d06c3e1a8a8b84b45c812c17c06a88b61a25b340077d654e9ef97a7526d4c1f5025e09cd8a553089932e08f2de1ab97a8fed2cf7aa07232112a7b5da445c96dc7b828edab13e5ca6de69244f7cc7781c6f4ca59bf20c3f4e968a519c30632e55efdc395ea6515e50c513310087f05f6d424d99801013023501e6520275b17b51f9efd8f9032b58b99eac526005f21fda4ec78322c5b3a915b274003cfb8b334de01e2fef7dd6cb0b38a57dc2a51258cfaf2f248185ee62be6e82a19f0c62d9edbb7167b337449793bedaf242a54fb2a29118d3af3999c14b3bacfc45a2884687d1c50e8e1d734eb39ff02d876e5e4e603762796127f0c37a4799935bfb91f86fb94d22020c26bdf91bb2fe75b99cf3466d9390a7a508b2fb431d6cfb3b868441b9f7908339cea925240bbd80bd459b604cf9d8086f0ba5255ea1bc86479492bc26d0a4e5f2ab0fa6499d49e03a8f1bf2c4a37e022fbc66e125fb0fcf0fd82bcd0a07e4806596cc96919610c71d8fb0e58b5c94058603bb1840370f06f0a9fb68d2d9def089b61598f25a7c2f84e397cba9967cbe921a0b2a08b00681d9c6139e2bcb6ee7f9ee9a7a5d030c6abc272c0166849fecf6642578a68f40c28c17a64179c4fda9903c49b5780edf74ba874683e5cd700c8293f7afc9026786f16352efd513d15e753e200f4c3225f3004ec3b3640464c0c2fbfec5fce9afd0fe6e5786eaa1591535f27fba0df401c14ed5cd604c8b18a14cfdfbca949f2bb78f5102fbd2bb1ad8234e617793c7d369bd5ef7df69067dd33aaf61ea3b2bae21e98aafaf8379697b2ef067b641f2370f683c79e3968b9e8ac772183374c7d8b9d25da4d72b57d5ee5d48d0d92b31b91db236cbb54b30e12c99c50fb5d5ef933da3693ab56a5c6ec379c596f1eb34313b2f73417b8ca4d360fe13e66705ebcd539f586d2ea05296b7bfa0668b2c67f1f29642364a9743d3aedc943b5ba7864549aa0010ee707307b34bc0e9c9792f15eb7bbaf99b3040b65cade4bd245f83e4ea8a580e9b398560e9835d2449e96969c329a583c3525ebeabb29bccc74d5f7da69e017c896a0f6168ee27e9d8492e42267a80466249f959dc22ca60a3b5f9f3bb4e4824ec3487ab9be793294c17506e00e3228833772e1aa93bff26a15d3fe7739fd0a9bdf22469c2b5ecec585ebc50facf3cfb3bb7929aa5a5b76406ae18d63c1fe5a0656a3573b13f84170f8bf964ec61302e2cd77f1a9528f65950835f43c84634b5f2b17b9f5d0a0d9f41a5fdd1aee3db00f27099bcf3f7452da88761b63d02aa8b7a375ec8f19da530f16bc8be7f1b54961445c4601842f64c443470a952a824e29e470cde28c100fd000ae1d07ba363407ad3cd055604a77f9dc87f5dc66175cb81c305e6648736bd1f00cf65ec1cc3898c88d05b4f023f96a058886407860db55f53a94614503052695f1f83204461e2505f0168522321f7e4dfc6120cbf4c5a3924800aef37623e56d67cfc3004e33ee8afad1b443d935b5d04008e04245dedd9c42fc20c980f3107f6a312be7855730cd115e01666336f10721cc340a34c6efa9767827a543e05119926be6850901d02627c6c69e8f28a244e4776456c4f8b59382e950c1a32449b0c12504e916194dbd3091d0b3ace219a6e6e73580b4996b1ca2dd093497d03a391bb9571f2ec9cdaa45777522ca8b45c91f60de14f52ac6b90c839e4fc9866ea1681824d9eb9a8695e37ecb5d38389db71183cea189b46a129ee8766a263ff4d8374a78184effeb1b84a8e4f7f2d7881465c8e9c05085472c46e4ed2433fe8e412b45d3ec24162957ae895768d4455035690d34cacb61007bb569f8dd37003df3cb538e7eadae4f3594aa231b131fe66adc510249d5a3e9102e513c4fc13d8c9d0ac642b2bcbd4f196b019f877aa300fce826fa74c24c917c85af6cdb2f3df4378d6dddd57b0d635f0832ae6f3c06774f2d637ceb530eec0ea3640f1a4c907e2bd40645ad57b0eed27a7935bb68fa93b3e68d072cea25b0684733b79a8b0c2f06bacbbb0be7201c504e436171a66f9fe2d86973e1bd1d53673aba2353c54de5a38f43a091c6046626558aa75d369fa91826991c6a48ec23c173cd629ae92f1bd00eda59add635af6079c341af487a443cf959b946524e841ee1ed7bbf8ef180b3b8a5a5e91f9a14710ca28474807ff36bf37dc783435d7f281c4ab2de6ab0b71a5c00f0357e1c6aba036599fbd1f97678bd94d96a4078144e90eb85dcaa146d3d8ca45a8cf3d049884ba7ecdfded870b253a6a451eb8cbf213aa390cf86ce181600a6e0e266bf96c265c4d3166569092acbae6f1306035b247e5d163fc11c08c816410aefcd8a9b1671fa0eaf54130e31bca6c11d0b4ebbe6fa2486e1c4cef568ebdd32c2fbd9d6a22bb0d3320c5bb321ab9d8fa295cd1e8a691f0c956ee5e21f74b153f5608d225dd160d8d1271c13dbd147a139d9f25d4e9e66ff6366213b8e9962618edee1c07872d62f83d691177e0c212f79ef5abccca8e0b3a8feba09e1033fb47cff0198da9581a19392a7ae6da2d7704a0c86d8805ecfb4a08602716b3818d7233d564480dd3c484bf8603c93c361dc4d147b695cff57dcc435d26f8fd9fe91863141bab352a232d09a13057e1e64fb652b77ead715c6f8ec944f58bae3da1cd704a35767cb78b2e433d5fee92a5b0472100fd504f22dfc2f95e67c7d0727cac0bfd8b302aabc9599dfd0f564f51821d8a1c4cb90470418e9d4588721e3e3b177a5abf149dc74e3b12ad8e15f621d0891eda1e274252e6430ed117ba38619d1efd085ca5681cf44668dd15aba9cc191e5f855bd2ee82948a3335bf454f784550dabc0412d5771f39d4dc7d88dd63d1ebd146a56bb754655dc573c55d467a55fbb2e3ba9eb239c42d6d5d619507b1a961254d8b70f0b766ff3aaaa54a16992f35319aeeade4e1f8e716c45f7993390d882d409b66e960e212b2691040a16fdae9f83c3c32d167ac7b5128baa95541052666ff2cc0bd03e78eed135ab163956502f465161b0129237a004e5c8a731bd01bbfc969f6c30b69f3d80c426aef36a4a93b0f9c1121b47a86fa8bed13e37f3e24d104768d3ffd1eb1d0a8161d819567ea3e8869cd71de502c181841c2bf185a8c27387708b13ed695e9087dcf613e79677c02eb308d5b880ab81f36674ac0d41c2bff5035af5e3376f2d7ca0956c59a9aad986815ef6bcc8ef71030765c61217a5772db8f402b79d776988582777ce9b600a9dd31c7cd19c96151aa70f95e90124619b0b8d8c1bb74549f6e7c2afe89cf5a48bc834b9c1c35caa0f96c115579416362d4001428d0363013a5be87ce0016453bcff5d4865128c30449499d395a1a967172f4bd36a45ffeac7a9f5fdcc4b5db42895b5dc4b9348df25cbb799c1a35d44d7ed15b1feb56cd6141a229e7545d877715683a3ec70b5d850c6ac20d88070d59940f989211ed2a08fc1b5ee7f74d747455a399066b7def05208206667903f411ebfe02c90cbb8a4313f7a9757fcd6fc6ada46ab01c49ad9f36b7aa4011562b5b7de278e590efcfc5995f849b4a379ae39f81481548c024374edae31a155c971c320436063389f7a890f9a3491a31dc80bbf308f1c4191ef3a4e2110f13cc868cf8a7c7a0a2afb5516b830d7261ca6e470b92f485ce5b978e4740c3f556674cd9c58053c24dc248403214ccdc669861a170e23e6795d3a7e3ac676b5a85743bf20683830240fa55a48884fb05d6d0b435cf1050c7cd46ba6b349b0c17cb7990e14966e2e6c71b689d21201fec2ed427f98ab0cac093117785edc8afdd966cc47e878865f2c3ba3c0ee6c082a60e4de47f43c6e6749f6569635ee4d1e38e48a77b35a483c04381a9e882cf4b7c22464e713538af745327ce143b08080cf0d72c218d3cbc22acdb8047eabb023aa5165c7e0702cee8c49efc05c1ee513f2fcc37ba126b7f5c785c5f862354dceed0481ed89474d042f5c00d444f9261fd52b52dcc5c294a513f0e85813d64022e2f4db4a59203117c4de8523f816fef707730a54ea2a987102272d4f2d366b023b6d75ae9d3e4483b521b0cc08a6a3890656318a628c48f9e8c84b0d48cb0a1a94b55a395dce96bcaabecae5dc0ab98b56ff08485019462e0dc94f8bbf823c49f3201c8b83ae6330613491d5fd82ab7bfd6d3539d14484be178b5919617830366ddcf898930e7d135d28c65789f1285e42471805f38c17d42cc0bb6a8f1f11cd35014bee9c34817cb4684d4cb7409ccbfb678cdd734464f770bd3b6d52b3a922b88688152444abb5b63a171943a8cac5d624e773111b446ff13a2c9afe4a244853f5c96ef297537a998a2ef54edeb9d10e0b6742ffc0e6d9f7d0b1444a38790085b26568f8d1a9e4d53050c1127c94c696625d9f0eb88057510fa20487199d352a9bf41773f218b96305ce04ddca741a0a02feff2cc1048151ee3a8fb67215032c0f298e068fc7170521a30296ce8b3efba3298252655ff133285515f165b728e46d0c510115dd1d6f7d10ec2902f5ae40c7b4443d88abf5e147ab8bc071f3fc6a63e47ca3941c018771add4447af8fd454046e083e2c94b7396fa693040a4e6f5d1cb7f91af80136937063eee397cb557bd51f99ec064509f9d3c2088bdf98f6e1e46b0de6532c4b4b146a3dd977bc7bf933976135a3a59c90981497690b5c5a05092dcd79ac922c20480c4385c8f461ccabe1eecd4c7ed60a3c9dbbba4d0bc345fa37050649b04996491dcb011396c99189a9a16b4ace6d23e7458af53e6cf2c7d735c7f09c5b8112ce03bafb53f87b0e273234e0523421114628addaccd08481c573eca0deff17be3856908339b90e069c26d0831d2123f4b903a0f017465cd494cd57699dabb5397cdcc57f2da73e373e103bf80c0fd9470b77249de6359637a6f9844721d55507d7ad07c2cea45d90b851c3d2c1f5164ff7185e79682c454f37a258073aa022e269944930325a4ba65c962433e4321d265aa3ce82a76d4c777c82970adef0a7d397185e4ea702a3e65ea0fa8e0232db8aa25919e59f29e46ab4e5647a8faf5d33e6be364c8c5657d9a0b12bb5d079a2b0a3aa72b3db895429e144eaf7ca7b3c6e8571c6e5921e03f06ea089983d835c1ce99709ce402e9c5c35eed910e91594304f0b2a29d4fd70f684b7bcdfc7df722445933777e95dc5c567fa9a3cbd9c02a5981df1e6f9a7de86369ffaa6d81a286130f89ce3f8f44e81496fd921f49efe4cf5973d852004fc0debe46f995554d2eb6dc215ff4398ad5d2daacab6a07763fe65684c33cb81e4defa120a97440cedc980bbfdfacf23bce1388c5431f1f53d7996c07c72b0d63738331b546b6d80aa0935064507879e9ead4c5c0c2b8fe5427c65f9d3920338c0e0b92a5ac5236c6c0e27fad61d15bb4e3218b4d0191108228f02e6b19d7de729d60c42eb7385064c33031b480f7b3f981fa03138040993c11937c4afacd3b443ec95475aeb2b396b157e28402704b43b34943de7e4b5913d575959cf26fc12d2bae3bf754369ae27341e17cd1393c9f747c8b3e87e83be195b7a3ed90a60235e4cdaf6940915c64a9fc19b24f68f34ee39baaed7ba2d387004d9c1c43240b74a9964bba7e30a25666a5a4e13e806bcd6a704803cdc38700a681a3fc6414aede16a980fe339d865a0dc2c1ac1fcaa65dbb09bb6c4021ebe2ea9982a6d6ef08a3375e821338ae00e658ad65415781e0e0d6ff66305d2fdd0eba484fa882b5f9ff0f466d2c6819522bfad5af6e292fcb57f19ea5729dea8bfa4380bc772cb1a773ef9f66425903d6035bf87ea4713609d43b1c78d999fc09d68d45cb5100a6f90c66b9c487a4e3ad9170d96685e64481a0c78e7a5d6613641a2dce21585049eb0fdcf4bc941e4040bcb1c857af6c8490b3aec9e7ffd3b06801c36091fda84cfd57ef38b3ab9d91ad8e1fa4dd7794452bc56e66235c13702e23d755a0a6cb0d515ced3c6dd0075f39177658332ed3b98a271cda2ae70a3149372b9c6a0b7af97f05a43860dabd209eef3ceb633e8926db649c5c4666fd780f87ebdd717598069724b4bbbfc9278ecfc7b0d9866f038d2e1e2513bb3b916b352940fc663aafec0aee2c3c33b679957805019b3b195fd1edf6b5fc6579c1a104a504bc5b13dd05108cc3abdd16d6d516ca67776deccfe2dbf854eb8b1c3babf3a9a9151aecd2950beacc7b0885eb0723ca5df62a55a246c64a0d426ba9d7aa08135b5bb76b958007265963bfa70548d2a97d369a84e1f2cf5529d3e3d7551627f613b629e627b01579db5e26416d888bd58e7f56441f53ec687e0297c7ff3bb60b13c5a1f511b97b613df6e999bf390d9b87af03a4b4636ea3b83ad6189a702ec24f0f338087fbad3bc9dc7ffbc1f901baa18d21cc6c97e505ac52a9c018e23b5f0de6cb0c93fa4f744db782c560a81faa21fc35d8d5e379072f4b538325a78074c84587660d360967f81c9d05248455f8582e7ae38dba880f0d30fbae158dd7104741bcf5b4bbbcb92f285f011174366733beeaf557d0b4fcc946c034c83d131be19b9918a6de6d7ec300ec702d8d6cde1aa5c23d9c907089f4adcddfe0bbad2ddbce8fbef38da577a6acb96e9ef214b560a69fa1abaea35c805d7e9869f2f0678f56a9f6ebf8f4a08beb7db46138ec093531db2ba7a3ba6f489d710dec7bd4545b693c093ec5907b11c65f4e0c8411f5ac27e751aec05dd56e4acb530eec3fc19dfe04f83e95ca562f7a8831506c7194e2d8c49aa9565c349e1be95adeff476a68e3cddeda73d7f26463babc7c17d6dda05703d0ed7c65e36d351ea014871f5be05ca29c436a8214ad21cb2ed3a5b8b800c38ba2e75df118e97e513fe01a65d268e1950cf519327d21de93ec7fc78675c1467913750d070989d2cbd9a08c21cd0d6ebbf33d88e859b4ad8393230af7c9b6cdfbf3d111858a55d6299cc2d2885b458a05edfab654f54bf4ade4826c436050798c9eb1dc657af57d56b9f93a4980cf3037ca611b25f40e9dac9761be915f8b1eb1328dfb917f02816de21001e2ea978378488a2a89b06e05084d6671d9365f7661b62b66afb3b69fc763a98cec2ceab387fe6ffa825e4495a36d9eb1fd3268ea142ef0713875b7c1e900fda6625529262577f32c35f615c6d80435be6dd0c35e563b6d8b62c067bb6cdd06769492703be13128ec3eca4697dbf38c6e0e86e34b4f414cb4d368a779cf6aac3f1b3a2c08fe3ceb99b91ceb1c813801e9a93dfddf008fd674431d3c54c899de4d47c0267c986b60f764074542c954fd3ebf5c7a19e938c757d5d0a6d551488e370c1b1c701ee2ba2b48869c14520a9de37f8978e5833874d1c3a12cfaccb017d9d8f09bbd052c06641c5407d78b76fe46da9c7a81e9a253323264515f582e8be1a9d1b30bb67636869042960621d3cbc160d17945cd800a60b6a25c0b8458c1efa9a3b321da041339fb8d218b45986fc67ee4321dc659ffe8f91c757ecf0ba7ab566f54677f9abfcd247e9835eef394e4fb5c350b72ce629789fa87fc8c25197dc99c00f8b503189c07ea09be335ca8485d8ac7493bb7af2d77623038c8eeafc4fc344f795386259ffa1d10720ec109f93499e633b22cad2748238a91c3a465b16d941df7399c43b1d50e690b2a73ad11422663464269a027344dbe02adbf5672115b50d54335aec33c17906d5df7a7b55ea5b5c3f0009c43f03b0ba464cf9bf370b2435077cc084c7623bd6735a54770ed59106ce55ae8ddc574bbc8fedf9fa6ea0569ecbb53aab740c18b2e28084674eb008b656f9582dc9cad68402db592eaa84770d23c3a41ada3348084b3a48848157a9a0705e08b9c06e16669d0f14a2b3fc23be275661ef83e315c99b5d09249d86809f661169f8e502cb2e06f10f20f076aa3381489e622dd26142dbcd0e16aab744fe3f74ec2df1904febebfc9317bc7e90fdfe48bd8836c19a82d7f80e8be018d346f9818b9ee8e986c95ce7df9e7c6e21fb6085616009c293acdf01e7c3e21be803714eb21ac9569ff141069665f4743eba84d65ddfba1bec277750bf58913979cd08cb54cbca879e94c28b71a9c5dbd269731ef6471fe31630a87975ac28d636aa14da167ed5653ca9ad6029548103851d20029ac4b425e49e0006b5b8b24758b663fdf82ebc4c1261cf16d4596d5e81fe4a3aef8feec1037ecac52468937c98ecfeacd43161afbb4cffea7ded153d4b9af11f46d79f2a6d98aca23f1a8bcb816293060acf09d10da4d893be42ce2437db25169d2110ea810aea6626dddb98988510da4552310761d956e25822d9ed0890864025bf7b51d78f3110ab34b5d95aa43b86c3327a915ea79f6e4d7a3675fbcea93196f180377f376b9e6dab577d25a8b945f297332fee560f16fe62170204332af446cd9b48dc1811d5c43db3aec79d62765fd9540dcf899b4f0ccc5e27ab359ea61c4bce1148293f0fa8c243cfcc38f51b7edc42e153ebb40fe490a82876b302f4444bf4ab1a2afa32ce1ead5a8bf656c848067f1606ef130a94d684b4348f24e8c6e224f234d7fa7920c81a78d947d29b53eb3aee4f03535228d120a1d0c69eaaab7b80a0e98634cc7143f0ee523f9418110f9816cf4546038f50f09a85418f284284d3839d5631ba408addbe41fd66e91dbf5b0e5da9b20c59d0b58800c7d15e1a325c51f57287f714bc0c34aa6a3ed36c20c95107463049527a5716816111258e4a3264f725534a60a193a0a821dcba5d27da3c0ba09069a20a906c97f594bcc22b412bb546023e70750544bf6847ab5d82f2e6de3196a169bf4036feb9f2f84111c310aec7768adf8bae66950cc972da4f3e719c8a97ea93530d8cb93216117f3cc4718c5306b48142385268cdc92256aa5fd4331b8f310c0d245520345270d792e10fc70ead33f46cd74e81a9a4590c8ef8434bd64879be318d18208f7c9ed47acc1234826dd5b84518fb593deb8dd17d6e186dc5478a54317c51061e139a32a1c48e06c9e111d7a417f6fe32354affddda003dd931b3ea42d31a557b04c1f1c9c6f86916e4c6008f4ba51fa3f788f2c2622a1edd034c97c7334530c49a2894676133ae09e627935899be9e8a2f42d924b7cb98641469abe06e75b5af3fb3f61faaedb552d293d4309f3b8a57f7abacc1ad8cc881c543907c7ace939b5398bdb6ead5ec0a9c62075cb8653672c28f2678cbfe4f8ac6075c9bc1814350947573f9977ddbd34ed12cdeba6678495ac94317f6e7f423ecda762df077985725ba17411179c70e30cca55e354a8376386c984fa071e33b87f72f5c45b70bb6c2c4ac023975f5c1b40eacb2adac8ea43f38dd744473066591411b5b4a89a008cd70d64b1690580d9efa7d10e395c5ce5d25e9088761b78d031c1ecafad1989a9c77588ca35b433e311d2b8b5aea586812b5db066d4b9fb2c21109d5ce0dfa1af664d30c9c39c8a14da3fd2e024c43101eba65ae051f152eb90cc78217a330ea4a26017469c4be4718bc5c0b39315f5b768eacc6928234e9990534a916067527a62aa7e1de8c8f5ac5658c4dd591776a07863746c2d2ab526088c634726f6e4e60c83950bd37412baa2fb656494848eb87d72ef84f06833455e7d0b52fbc19c6e86fbda61057d2b248dff0a05afd9f2c62a6d0840a560506148a9667e8f249e64511cf53c69b2debbde583a2a23131c1849ff9f2814b9f2b53644ed0d7540e9dbaebcb0086848ec520848e7cdb3ec782a88c18067daf40294724b966467a643f956fd955f0afe6f368b28452724fc97fb85750f7e273165410960008f2816fc4e22f46d81766362bb6dc8b4e247125052105046bab243186c6706aede2b2b496bde98bc7d1fc54bd46eadcb62276b3b77bf252d6efe8bef99b49c8b39cd98793b2f09da5ff6b0af87cd50e469d834b84cbde2a0b230d3bce929375a1b3eef1e363e895706eb600eedb6f26116f93b40b1514fba2fd20df378b19fa25ac60188089a77010746092a80ae74b9e7c912b40f5bcf219f82c8ee381a1706a1161a32b7d38dcc3bc9bcceca045f1ad234c638faab6fb59313a6a5f9600b70b683692aab2e8e282d5c62d706e99911ed630046ff3bd6a9fd92f99772dd9f9d9abf613723d473f58013c0d274957fb7f02f0a1ea7b9464307d52151c500708a9ee72c796d595ced644493fd422082c2e8eee22fc7ea2529de531aebc253f2aed27d0673a01f9ca3ff489fb5fab6feae9c7e88730dcecd6a900c66a0f2bbbabb77104f2ee251ee13c7b9c0c77b5c945da2f21784ba57841b3ca6cbf62498a54f9359aec42675aeb0bde39eded364f4f4ce21be18f87edb1d81af779b59593b17edb79ef8bbd5f1e7dea7a6e26f0e661552234bf2aa855b1b7bfdbfbbbece3a2ff562148722cf9bdd5552e396d4e6eb19fce5aeafffde674d6204c21f4e666ba14b35d32d4894538b55dfc6e2d93136d68430b76e3f35541780c2f11aad921eeeb161b510c08116dfa35830ba6dfa07108953f431929d8305624e51f9e4da2147be444169a44ed83c7fd691e5f0a8c848d2f4a72c4691c698f64ad59f4ceb553a59b4e00ee8b689aa5fb92edf2e83f0ab5c31af53fd85349c51e8eb383864391ee1d98bad360e4b37019db84614f6eb0686e89a0f930268d5b95aacaa743dd725d38e85974b225544bbf692c1eae1b02e3c400f231a3de0054cd3038702c00c81f9e5c6b1a579a721ca19e2f363e13532688f8cc10acfcdf1b5a6fab4aadc07bc6b2ebbae6acc052da07676e4028e4501106f98e4ed4e3c89ca82f492cceff1155f93bf795a317551880b5824c2f444cfafe568a7a04ecb1909f4cb2d15052966012e9e0ed826303ee45329b2a1a3b1f060847dbd8abba98332dc0f60568a6205ead5968352f708c21a168a491692a5a8902e9ef7102257a4109df4fd7f3b2f6f0186be0732ca32987841eba3a6abd427b760ec4f2e899af7247788a5e3524b3284314fbe40f36507d23bf8bedf14acc9df799f90b32d0f913eaf7b93dafdbf8631ecdb07f3fc05d6e55a374e45e961c77492dfa07c1d5efd2fe5e1979c23512fec794a81ca90c9ea0d72064083cebc1cb97825f9c29c9e80125340a4bf2e1f05f68c1a9ebff8c347c0e409f55b570ae2cdaa92ec79ad47eba5aedff0c5e7cb0d91585dadf6dac157d1b88330657cc1b51cb845b89c95f01aeed0023204b6a3c1683c923f2f4a6b05b4d2232546e39b3c2a93eff870bd6014b79b1bc8902dac0365df2134901cf250bfe2c14dcaa8167ea331ea439b70cc71da8730831c54d3db010dfea2a0fa5e5d13974802c73e92493df9c8a02c44ec62e08f48fc022d1a771d39474d2d5cb9d4daea90e127de03e65457b82ad14647e046a3134f65158806ce3b2cd615c8f94aa51dbbb66919dab5c0b11fc1002b9d5448d07847a4951046a82df984dd58cd8607256c67575ab781dbb4d44033268542dc8831b3a9826c6cd68269aa5929f633c4c854c90268b178ca094782661f46098d40f5934ac62deac8b7a5e8b14f396a05d05f9b85279a8190ff8016d081c32c9860ec4197b6a5e61fd329c3ce20540f0d90f480c6d29018109cc4f003c4ea36a64c58138e54021e0b28c07ca9f4f98c31fd3138d364b76a1e51b9932013fa9ee108b12ebdeab1e87fa64a21ab7cd65687cc7dc359e7d297a3721585cc1e45757770c2906f59d410b48d58251fb75131fc3d0e5595848c32b8305e8efa876a1703c3e1c35afaab0a08b0417b90715f42c56524711ac9423264a43bb039c608edf438f4e70351da69abdcec93cb49fa81d91936d10909afbbcc67b6757c31662737420e0afafc9717a8b575be6895744b86603987dfb53b713d9b18020b8ed097cef38cd665a042b07400ed09ad30354c6174635b09dad35c2a7a2754dc8077620e2739e358fea11696db8975485d10683cd9346cee437a25983c650714e29fdad372c80c9cd54c23c7e3b0c89b51b10d7a812fe85846c7a9ab3cba5f3798c9e6e767a6928f923ea93189215162358aa0aec6d6baade196ef11544a26f3a6efb4337c9dc040dcf63f6869d53b2acf5b47a28460149352077a09f2b42160f5a4642daa5cf7423b1509076f9b9ae47d3926fc726deeb62481050ea0adacc3f1ea0641c429b6e8846a89d5d3a5daf30d931443adf47508ff1573a8ec3ea0f50cfd12d59a95c04dfd05d299bf6d52f8f00a2e795cd227ef62d89a6e47502d1c7fe2a46fa416ba34b73c018c0c51a14e82054d921db869e41972802507aadcfe191b7396df8fcf0e6d3b88eb12257abf71d6d737e4cdc77f4bb1d77be650e869b4c16687b841f55776706654addcaf02bf1d1ca0ee91c7f5705759543b422229bfcbb13dd2dc906f969c550a7906660eae20b0e99161616590e4a20e431949c2cfe1f5f25a1260a5adf32f4d633ced500e53a1df2e9ce383766eb9d528aae09f021ac05d433907d44a8ef9e03f6066407b62b0593d410d44a395e881aa762feecb4be4d4fb90ccc7db72a40ee2aeb096497a68b9ca86130dcad7f502dde9514c1bc70f9f8f6c4c083a7f5de5533b2b80eb6bc2ee02b43e3dc6df6a7074dd42159ce6fe6ef8ee9cfa45e478d5812f48c22d1c7f00f946c40d521e03dc46e395734b2eaacad8c86c86c4497a2938df69a46c0903b04fe511ccca3276839361517b65978a3489e62f2e0e2bbeb3f546a3a45bf329621adb79809ea104314c8bb8cad7bd853e57b2041952c506490603909e352f8df97080c4b8360ac048838abf1dd78d1149225d68b6ec4051a1435fabd0e18e95200e5cace91f84d867b3f004f7bfbfab9c61eb872cc8cf10fdaff706493837c7923f256be53ba45a7f70c68020f28540832a3ca91778290a052007a17671e4975183d6e9477ca40ce78f8df8271b1b47344dab1e9f22e53c2216f310e638b3b9b80650f23600361994c73ad3aeb00a8fa119c553d78d69107f0e986ec98bfa28878978e3e318f9074a83c2ac1d0a6d371d910dde0f2c02116c67d7336013855219b996903273eb4eca08fd82f47286198e910c4e03954a769607557da08f6b8dee3b4c1f7d4040ab062915318e72e10377d83968d2cf17f12a253feb088b4f47df86ed1065dbdf757a691045984737f2d4c1e38dda82407384431a447e15ee608a1b0ebec9c12d6d4fe4952270ed799e0f9c3f81cef181987f7f4ac17cf2937888afc878d5fec7cecd1f25b1ebc82f698c3ef8db041eb64b13306323ee6a90a9cffdb8ad42d0348a7ae1f9ff86d13f742da876f479970387247da51903f7cb62a46e47dd4be25c0b3b97943e947b07b3c27e5cf8500b6e04d420c8a4e23782f1c21671a58ca8ab8bb99316ed6298a5d8622cda237dffd7fe687fede7a7e7f07faa45cde2424ed50b1ae469b89ec126389700dfae62a1037f43de728a3d0d71b54f273e14283fc9ba98531df7ddbeeb918480cb870ea16f91287896b95815496c0485029b7d1bb8828ac98c21536cb85de5dcb0d7b162b1c0391bff1b5ad60bce01bed43081280229e34f71f339d7e2db763addcb7e44b4125c1b664369dc0def06af63ba34376000c429d31e81bfe05a515092710547e0b944fc17e6680085eecd25a745fd5a0dd9506c93bb7cfe6035b7a7a19b17a666c8dc29a195fbc38333721f78349c78d38a0a222e700c8a01eff04c8755f5821ebb508d43f36714aa96a556b95519bdcc7fd227662769af8b2d57ba813ca3172f00387a2c9ecd2dd5db9245e5a8db9d33119bd0ab94191c0825eb44fbdf80e8f603b7a80402b13bdfdf35fcc20cdd79631df45c1abe7959d12b153762c9655a2cc3be4aad847f511e7153a773f35c689926f0d145e8f779019dc87654e49b5a1c157297a7d48604209d9aedbbc8309e0eb69677406ec77a4408663e9d40113d36d89b9b9fbf47f70adcd6857483be17fffdf4b183f1473697f2f8909f63d90f931189d8239bdbffd49187b789072f904cfa5e8e0fd05e259bbbddfbe5af4786c0cdef90b095273541ea3b455fd8ac2ea1e272cb562fb98c98b576db5f2f1b493bb1e3b6c02d010f7f8d2234426bbc88249709474aaebd1d898fef2849ec4127fe47dae9694740267d4cd78704fe587b05482cd0ab7d146da3196d51662cfaf1f717a4ee158cb3e4305982657884121d7d34a1971cda850e658ca830ec784e059b18a16810d7263c538832eb4c86a2ee44100b0ef36f4a5126e0d21979c8f33341dc025f685acbf0e074e4657a516e5034e7fb42e91c461e1f3082cd08816a6e1899663cbff2c983164de4b4289dd78bd66098c13a2eff7de55e16f04e4572305c6335c682b9c940614d2bb7bd95f8596d98724facc2ad48100d7e0aa1b1c619e99992e339501a01229ae03689a6ceb2b5dfc2d85f7e009e4cbce7a978b6ed90214e3e32ffed566fa90ba48c1038a47814fd3abd6921d9470ba67356068cf4b954a00ad208772c7b5759071801830144583fd2d13416f8f1a3b591253dd48a47d6eaa0e578d4f059e48ff6c3d427f66f971da5a57708f550d470c00f38c7e2603e308a3354855d65bd995cd9074f5105e8d49d7c4d872efe84436e7cfb7616b55ad73ac19ab2f44c342144d333135525ca42bb3095a063a0eee097a65cd2939f4185fe89eac6775fcc14902ca4465bab870667a47d0cc9bfedd3e1760f5fb441c01859e39c0a2d8441e518af6d045887a4b45f9a8b98a0a7de590bf040da5e9c2cf3a017a5cdfc2aa26d259da064a4d5490383d56032f072e2e5a8b8ab7ccaa0bd72929b30912cd8d0c782ab914d957dbc7efef88270b2000c0ebc5a1fdb900fe4709bbcb3735c68858a5a9aa973f4b51b2600d8feb120be2e807230a9c1bd992e0f9b9db58e88dc4cc00122eb6ebe325b0fa1bd386013ce1db3540c0701e2b92e53889c6724b0996b90bdfb695c9f428363465f7f8d20c91fd0d5c432057195b4af09f66f71363018be6aaebe24dd95dea9605d9d8be09c2fe37b29ec2405f495498f2012426de5c9a1549de0fa67f6e363b52b6dafee74c0e0c4ab2256e9fcb81b91707f76ed49b8e7c7763da6c89f1b55a8ce369e92bcbf4dcd23d865a8a89f42d04717246cab497fd65c6604e5c0f255ceeef54ad11c9c81377af284cb819dada003ffa5479024def63c3c06ed0d5be70017227c2898bcb52a6767e08c8dec0b43756da3e651fe0558d42bf3d0765ac493fa153c494adb74aac9b738e3d7ab28256dfe3b1c1c43b4e5f826c96a0f973fbdfb7a2faf95a8a4f30d02edd3d4faec1448eb76fa3a6d81392309619546dab3285122917a0a019d5728973e20e6279673b1fc47be3c53bf652e3bae805124772e0a1ae440d0f41124af37102138b82fc5c19e588c5f1446cb11b269e03a76e260529a447b18d3ca8ecb494aadabb1e198cd91e1930bfca8c4110e8d818c1dde5cd0baa6420cfa1e8749160747807c2d0ec9b9e53087d3ee6c67dc4b7acaea4c0ba65c0503a8a59e9d81a89ac79ef197059ce7832dbbfe5f22010950392c3ab7e93adad7ff013fbbcdd3bc5f2c63cd2563708e5cd83239528b457522151ff27ab25d54439d6cf61875977f2067a26e91ac05102cdb5b81e12b09c4a07eef0ee733147968bd65d51a0506afcbf1b90487e0947011fa9cfc0156b38b2db17c1210b5b8a5597242fc9319bfccb5d7083fc1e7621215e707ddbfc5f9d5c5e533cfb863b515afbcdb0b667e06202d3132ba656f6e739a0c31bdd74615e362399ca6507c890cd696cbd567d06607b067ed99934bb03d1ca3841c4e76dca767ba9c2740283232ee2b6b55c0d7afbdd23439fd81b762f570cb8a58209b3168d5ae198bb5217cb801ca5ecd485d8088ee281d0a7283e4cc3430573d28db89fb951ff353c364540a15c3060a392f1ea4adc22669a4ed0d6442331de9499ec6304cf7399caaff2468f779a41d5b867d7658ca9deae6cf273f628dc7b7bdd824fb458ffadb9632698f980c126604b10430043250442026195a521148c804094f3820291522345505e5cc20385505bdb83003f6829a66313baa8226f00233a341f92a0dd44f16a4c4f6c243289433417634149a710017259f90154ccb114f480b26663e8a0814aa420156f562667ec182567d145fd8b8d03a7a2f2cb0c03c762fb42a7cd8cbad05c49e1945eadd88c0122594994c475fd5cbcbfcd40ee84b2253ce6840e2fb30405458314f43957bd9c82f10460f864ab3e3561f08215b3e7bc05f9a20492f1b499aa4a9809304d24822db720a37ede0cebfc66b0752061f14a1ea215245c202219fc5bf61821a532a98e8a64a6c7806e793b8aeceef4839bf54566b96a0dad62e56aeb5c7e805ab74b6038121573d22545c27742f0c929cea6b4596ae30b7a8b58967f8d28208bb61aca69e2633d294d5f607cd8af90aa594f2089971a4f4797c2f1bf923b3e716a315b6037bad95161c9636b28a583436103c36e084836520c992010a4f1cf00d333330029d0abd62be0285b5aed5edbfbf1db3cc2cac2a6d24b1d880d058e3010d80182429f9802b0679fa2aa0a1a6a176abb1a253faffcc34167346f3e1c1be1a883202119bd1702f1b791c98d45603525d483b156aab01a8ae1ef78ded1a4dbf52bbfb40aeaa9359f66a00f915220e87bb49a2e395ac24704ad7c946ad9369b2994c36a3cd48ac2c017ae0e4e42f55a0c6544a2b45159ed60ea522d4fa897569d1904065a7d504eb6aa08be741b00362e3de3711b86005921c2e849824a1e291e39162469ab25a9bb95aedefcea5ff39f4f831f366bd21d8d1d10876648a555d20e3c023a9c9a8080c8723999354c269d5b8752a5de62b17164ae992cd926e4907d6cc9452da3b1c0e8782ca1298c974c4943bc99281d6f1ddee4ea222e5eceedaacbbbb5b49a7a4a3c4a304a434a4545499f9dfdd2f3333f36b4b97331a124f230135d250231535d2513b8054f7d6ddddddbbddddddcd4c89be9b54c544e5dddd95812b6d646ec7ebf97e0ec8305a60cbf87ef7b5af1d0e876321bcf02499888c270b591eb040c58d146ec80720afa9259ebee962a9820982b674801827780151b261036805050d6eb1ba141664df4c960b2cd4b06bb0edfffb1fff8c0695ebf7d63d36ef0679c050a7a2935106b323764b283d3eeca0f8109936eceb8273a5aace955272eeffddddddfdbfbbbbbbff776fa359489a79619f19c6c9ccccccfc64f4b2916f9f7e99971aeeee75bedcc1157f94ef6523ffffff77b7fcffe3ce9f9999cdaee39ca57aa58d7440ca77198d82d26ba6606e1d88cac14c30491999967e6e5b12e5b22f325b551ac4b538228105986bd1c5e68cd6d41301635c1133a3017f3120d03bc0e4fb915aa8034d435f04a75933c04dc9ca488d6bd2b7fe2885ed7eafc0c28afc4eaed5a5301c2df545db5da095eedc254b06e8eeeeefdcfdeeeeee6aa8f1be99cc724613a27572ed5fe15f99f9c5083008af77febbfbdd1dfd973d1c0e97a23864a9757792c0a1d48bee16a33029f5a7a76f00898f491f3102661199f9081187198895f4ff2f209df34878ab15c56d989affab984f54f3391e4b39a31921b6387d2d3f515482c241504e0c9f9510111d3443e18acccc0ca20ae787e7c70e16080c9ebcaea0468c60e65b8dfd82c05449da20867b8ab205c3735a1281cc27e30147f49150f341150e0b3555700738c9252263ed859da071ac364f0d0fecb1254a777769108d59ccffec7e783fbd1fdfcfefc7a8ffa28704738263692371b91dafc645ef26e34bbf755f50c99a5f415aa58ddcaa09eab2d1e9d408f1d4fd8eeeffef65263a792b3767c194335a0badd2466ed5b4e8aae9b1e99a41430c9dfa828bc6cccc3eb9d246ee6a7c7875efbb39ffffff130ca69201992c08212c389fe306059f5b8cc294c43a46e95fdfefbf33606666660a8addccfce598afe0a8c2413cc1b5f3538c1e66ee3f15fd66ff7348d5e4a00a21f3ddfdff72430b0653c5fc14e28821b762c2cf4686212320189e6c9c50a8f91175156a6454f92ed410f98219884f2236a8d00b51a1a6c837c207434d8d9f8fe1d3082b01d4d030e22ee07a005033e3a744a1e686ef0a438d8d21849aa1a3ed249786aad498e65b122202f3844b3a7fe2ffdb083aff3f7de8ddb880c0099fb488a901f19311b514a3ca12d14fcc2755da482a1adf154bd6f9db490267cca8b529b47d43817e771709d0910c9d53f4e0c19402480f46941b0c3899833c4f27d3a5bb28a4701d11c999bab1f9f1d2c037442b0c0ab4f82b6da4515251482b0e6b0b9c35059488152c6030516816f3e453960e3f838623276f572230cdcccc42ba4a1b69533344f7d7c37012f3ba2a7277db9cdddddd3fbb4683e1dfddddddffdfdddddded136185f7a3470c0a222c335ff16ec80a9e92f49c646cfdbf39829b721839e99468a869a8dd6a851f1e92bd3233333962921d45e8253f2030dc43caa25d4911a92bc39ac7b590406b3810164560a95952d4b998339a121f88588dd610aaa5268931a92a56d34418ab61725c9a214596031c3ab2d01811fec8b820050b1eab2556106cf8cbeabcd0c8d06cb3c4732d94e53f8f3982009847723c605e341be47ec894335ad6f065232f2482847e777791fc689018c964688e081770924b14f0e012b718ed6518f75e5ecb18a53e44183333f3bfbb7b6666e6ee3ebfef83f3b27585d6ebbd6ca406281f9ccb7f0fbdaa7f0aeb82ef9e851121a40f5130e8e193c10baa47bcd5171ecc47e11598995b54953692780f2d8a34a08c9e82f91540e5906c4a66c2ce68422b4646829f890f68b4e30a081258180dd522f4f8a42640304280e465b66208819496189d9f8818989d22efe565c7080605d98ae3cfc50569d6a282a744644a166361648a81e5147519c4aa8a61ad53f06c66bc93e3d1beeb4182e1cf35426679bd5f053aa3a5384ac98a572f1e22f0419d6002c1034f1208007840911424000f3950375100f0c02b22e02481307ad458038f07ccd348b30027b9f4ab40f65a29de625b613e54154e6bad545b65d7abacbee9a98f5143018018953632495869800c6b9452dad33929019e8854886633efc4a394521f1616f8517c6d3eb0a78100760027a53a8eafbf369f2ea53f1f4e4a6b9f09e0a494528adbe5534a29a574eb4f8c0502d0e3f703248386196d78fc81b200007cec26d81980023f76132c61c810349aa088859ad03741950918cc2f15978c32173c09172a10b28b1a32162ce8b9102e5041eae7c24881029311100415262ce118e845b5eac2f5278ccc3b317ac3e381b11811632784c1165c14571504faddddd521751d54321b542f2b4614b8cc9cf0017f5b35ae396eb15398d1844be506124b1b5934ce008fb8dc0cd36ee956230bd94af02a9815d46a238cda546c32361d83b8bfd65affddd531bd93cd796ebed5963e532e5af73f140faa07e583fafdbf6e47eb561dadb532f3026875722ab6303314712773abb0105aedf473d2c1f532e3445cf215bf0c631f50c76a3d1e1d99606f6666664ae97ee90d73cd47492a6da47067a20c77fb8be37d0a4258dac8210d88aa5a4dae936bd7debacd3e1f669b87c2030508ca108db9bbfb5b97be26f313e2cb46be42f18b649e329c52358538a538c5d8bddbbee15f0a714627d7bafbbeaa7eddbadacaeababb4044a21fc01cbea60d4be4dc1582209efb7f777777ffefbe62d1ff52804a1b39543423e5e87fadb5d69b777ff7ffefebfeffdbdb6721c08e1087840b331bf129a594527e57fd8ca693abff5f2b17ad9b23ac1bb8344571b3a283a3194623319a40d98488766bad5beb1036af539caae68c96837bd9c82fbdbc76469add51f61dafb5ce6838c4ca40ad35ce5a6bad95763e4552adafb5d69aacfe7f65e62abcf12d4d0adc028e9458c522dc06c7ac64031808217c4a3a7899893032018bb111462083b1e909c1bc94d819b9c84cf09638b990182e9992b540e0335263373d184c84d288a80a41d59226113a67535937c4899d848f67b625aa909cfe5abf171a13432d25179a133fad218d26e7d32a52a0d1f5988490199163c2433362f8c3824d0b396979d9dd3d3534553475547b35805ca10f5eefeeee76ba3a3abbb6ad6b0ed2bb2167f7cfccfc58ebbabb8fcee6e5114b506c60642a0a120e9c0c793388cacc41a44a1b49f52bd94c10add2b6c0ce7872d7fe8d0521c51619b14a0f1bc69629a534aba8b4913359479731a59452ba4b6caa2c45928a0877777777775743edbc27826913c951692399669048d55a6badeffa3ab27bd9c83333732fbfff5a621167b08addba6f250ac5bec2cc467e2f1b59ef44e4b5ecffa24e692379668a40b5d6ba0b6e9d6f6ed6c90879aa1844401565f4436627a823ac1765d3331a919b1771e7531231fece1d72748a527a991932e4ddeafe48d734d4de4e3b3cb5bea1f5622ef0d32b6da4ef37f363d47d838ab9afaa93749291ab227ee8fb0c4b1b5935e343ec333333371341d0b22b3db8d246e6be93f168bdd2b6333dbedbeeeeeefedfddddddffbbbbbbdbddddba9b73ffef6b4fc4e24e4154e7ffffffffdf6908c479a6adb8c168d7ef4ffb56d801eb06981b981956abccfca6ec64e3d7a60ca68002dd23de8419f6ff337acc28a4d46ac3970244777187713a97ff70ba15fa6243441ed8cc8c24190d630a1f2ce933357a452f334346b1191abe212a357ee9a1df0f19cfd7ccf34b4dd294d132eb16fbc25650fab2c92a6da4d696079b2ed8f6cdd20af521e7d2339a88abd2467a1091f5fef68fb20581cb3dbe969b8f92db9e596c014245fdbecc73115fa19cf8b794c27bd9486666e6ceb1fcffcfc5e3c0d5eb5a0ebbb91b083333cbff1b39ff6d8282fbbfd5e3b0e5fb1ffbff3735293adff2371d839cc740e33e9ac430ff7f15f387981b733ab27dc2033addc19837fe7c0ca39a8351188483935fd60b070e845198c393e3ed8a2ad6a49be8be7bb84b55f4b2b52adeeeff2f15afc2eeee62207cd9c80b5901d977904a444c65315f456c22c19cd170bdc780c6cccc418e2f1bc9ccbd4a10ca19cd0ac86ae8fba917135632a0ea90c11504c19ca573ffefee3e38c573e930811e10c78e292a9e58391169159dfc9f445b45e9700068d02a040686a59452dae1498f7ec50c255424d0fa901355e2b544440ea5742bad2d42e010c273414fd08d0dacc48a2e0b1146a86759a3f1c6e39de0ee2477273b978dd274eed6fa962d29b55616153c6cf40c6508d16101910d9be4dc8d42756ead7529a0889284cb66eb90599b335a520b978aaaabb5d6fa04f6aab53a21be6c64cba8d86dc138ebffd75a8a5a15b0010746281b3f229e6ca8c5b3d620978bb3ee2e9f7744fba8af5d95845491c0254f692381868a8e989ab79a6a2b0d510153cd4339d62d5cddcabd76cb89b2172546308ad177886b5b8820d687e1bc2c17298a0764d084fb81a585abb2c19260159ccbb6f90e1fec741f11ecfd7c83548cb20e5584ba0304b72ae822172931805766e65d6923a7f02e2bf28b692ac522401996927475e15dbcae9e2c58648acc91889553a18b8855634665f7b291c702ca7011b1ae264c29627159f0c06724e7c2114771174e52898910d98ea62d5cea5fdddd4cbf331925c928d7ca4cc4d246163b3019773918d46df315050f26d99c5ceb5ea641e584514a89201fbf24243ebebed2151284fd0fe4296d24d050d1115307a0540c86039e8078984ce010a78e346160a4ab0bef9515643a069b48c4809088e1ef18324b40af03d7843404b3397c2f1bf95e0bc54163028b791e5befc0a3eb1d8e6c68c2988e5f10ce0d71e980e318046212d3c168180cc2cd3ae830de2c9ca4d2119c1ab7e8a890200894528ab5c3e261f52815b223a6884e6923793c1401a2117fb55ba55cb71711563c107d9448cecc0391630e334311e9013544c9add25e941cfaad43dbb0ffb02517bd936bf5fdfe3b68cb9edc8edd1d84d715f33f5a3ca4cccc45277777f3e8989979c9c77832f38cb85872d175ab31a896ed58d08a3e6da95bb7d6682d96e181155a7fa2857a2f1b2901aa21f1040f102438584a51dfa5a01c0b4c810d41c26a13f231cbb176887543106e03501594a35bac52d84f426fad3413bbb4b6d304dd90ae487704a3634bcaa1c468a7c4cec5062ea263c2a0d65a7bbf54a3c80413b56bb7da2b6e4120acec78f538491076c305dc2aeda9f559e8cdfc014946f6c33055e02689f98312161cdc870e624c1c239dcbcb2c6327127092c018506a8799b8c52a37ac2be85a71fc7018e148c2215c5904ff0f6ba1b329a5dddddd9452ca4019492434333313e59a6847c49311f568af1e2014ecb052e13b3aea11a3a248908347adb5f67119fa651ec7f1a756ce68457548895766888c7548030b334549382372e07290f8ff5b8de0229720a8e42af66ac70606d31a04100180811c07a2944a490014000e25b26894c47c30268d478430182020c3300cc4300cc3300044810cc351149043950e7a63a6b0d039557d8d443d8f2c60b7216d3c9aefede52e9fad1278ec8cbd1a3253595e0cef31d65eec8c0673c18e51764e4d9686a713adeccdc08684a02cf819b8fa34a470334e476b439040592f3e0369a157635fa494ef52a4221fc6c5351c20b693ba69336c16b663827f5b452c33890e3966f5b71b3858dfd5459293dd4c09c010abab158f1cd3e1c0843b1764c2128073a8f88ba1b784f025bcf8a241a9d2dd38ed3a31337e4d90829b4fc5c9492658c82979dcd145b1e2d52766bc9a0ec77c72a1dbcebbc61242ec10df9dd98376d739d57dc13c1e6f0b7d5a4c5f7a2bd816687e6ffad3ee79dfdba5b30e8da8a4235159d977698bd39a4ba8c6e6feb30b5ddcce4257f531dcede186b8622de793423f9a6f0dfe37f218b82c568370100dcf5213976cbc2c3581898426b229f1fedcc7e2d3dcba03702f1bb68b44abb058df3370a7ba393e9b51d1dfb8011515843b2187359892ac44027489f17478591c5183ea093523eccba6a2f38daf9761fb140e17c571bf0744f5af64a65086624bf596bf198b2c3050ef4ae65ee46b900a100b725dd7418538dea1f07528313f9fe967f6a4720783dc4466bf11f2b6ca8a6d932704558840a85f876760633d98331c7fae885efa39ad644fb5ab8aa1bb74d21543cb316c8e705e2a473ede7928be55c679457419614c8dbe1d1c9b80c0c60a5faa06667394795f4f360da4b03647f51bcd7cc200dca7be8aa3329beca5ffc7f075d979d931cb0d3ab3bd80bfe41178b00a6c9176e9c991c5879416e93553616924de2dc2932276afee97c4ce00ca66b1d62a79ae261c0cc27020b26244cb61d5d47ca9302d20e4f21c036f9b6ecdf8d426c2d2c9d403290ecc2956f2e017ee9d9141d71a73cc19d09f96cb4c30fde7db4f976c29e7061ea1e679c6bf0d2996dc91c5a984b06d544b7cb271655dfcb8db740375082fee1cdba776c638fba0b514fa2f505c5c63188fab452654dbeb2d026c726aca2f40a096f90068f63fc718e347d074be9c107d9e38422d920e534a46bef4e5ac30f5e9d1731fc87c31ede5f9dbae18ba98736964e581cbe2b14d8a86ad908d2630376851ac38494d85d89c78e6a52677b9ab02138e15e73d7e6552e41634036d81350c00f1632d6a082f924ece78ea651086ccfe46b269439b78c26682d97e846092268910fb01c375956c078d3c0f5d0fb2130b8189be6fe015385ad4a388a6aea0a8da17a398fb2cb8e7eb4bde8cf867896fd1dcd0d9ed9cf9990e5d02bd2bda1322bd24dc73965fa334a9f02fc80249a1b83a2577fab5f909e3c8f9f147f89e6df801943c88135fd4a14a0da09c9214ab718a0a9ecbd4fb5101918e4fce1a9302b6a09c308f4ed75f402df68527a1d9000f056cc1fb691be24a916df69100fdb628cd291f5068aeb68b3e0d825229a7db494719df0e969e8ab52f8e90447f97ca2609090e8fd3afb5d5a10eb2f30d6803c568625e91db147f17014a65c48627b05ce861836c7b5b28fc2392a37d427832bcdf0bb5ab9d5ad39eba67388ccf8d07d7f7ee0d35b1998a654fb14afec1c94423171fd0aeda541a254e455b050b264e8292279b760e0ac7d04bf1ba090ba0a5b05fe0b181e23ba6142d35b20e270660eb249ebc05d0689d6c3533b956b8892da0cee37ab035cfd8f1a8ef40328170b84e2c9f1f47d7cc809fff10b7b44f12d07b0b580717d72a4e1ac9435254b916dff628af1b2257896bd07382577ac3056910b81ee5429b71e122ca21bbc35465fe11c54848392a560bc93728d20e890a4dce3af5fa9c61ab44427ea4b10dd67986bb12ec37802028ba0210cef52add6500a57f785622926025cc4a2369e794de125282634d12472764a36203a7312fecbcd561d365b8832122474460546c4808425618a8844253dc0cbd08c9334c485571b980915364f5cb24a0b9cf1b53791d548c0f8b4bbe144b9d8d261b52192a8dd0933162655d48e6f07b2e736b11057e5ca58c3373cf53450cfc93b1829250c710d78e39c27aed35839f2ea12486d170ad34bab9071e3e8d0b2787bb37f9855969a4667fb25b3846417e6ae6811ffe1841c6add9b290b6349f10c5e588aeedf5594f884aa885f1847c7b41244dd4362a3251e9d75e4adebb13c0fea0768afb6b3ed99e4fe90168126c6456222928a8932bd6555001135142189a23098589312b92234894113e7f24768c5eba925e84cd10e7bfacd4c6d40604ae01a5dc9db8b02bb9293de59626eac374c10ac7c516b7f9f1741075768b59a5abe583387ec323bc1949ba9a8dc83ebabe922560a2c79860d80935bc7f41f2cce1914e6ef818975f9d6a7f0c689b9081aff0431bdbc85a920ff06b9d7a718c846dc02c85eeba459bb79f34f1d87682bf0621bd161db399b542161a3892a3bc2e542198ab2cf907f584b207a4220f65d048e9b44cfb87ef58d1a47293353664e9ac26ca071fc054bb53426e89d909c5415f3ca3c430203e00342f5edbf48e31383d53b6374602f9c5f211ce3ff03607491f4cc378e73089b62b29c193461cfd60c2322421cb33569dfc389a1470622a32555234c4f6329cc48b85e937f3bff719fcb0998464e9212ba2e59081739a83ce5fbcbc1f920f428597948740197e9e94d7344e0d479c1b3d5d8c60b72f64ac2ae373bce6970a454908f941b6dbd94079709d59154f14ffea1b7d13146147e8c805c9978ca42e0e4a572808cdf3a91af070f1487b7e707af202bf3276116c0972c9d7ebacbbac479ef5990f41023e05f08f5b3685b20922b53bf9ce1f6328036d41fddc80ba91141282ebc2ba0cbd46cab88d75dd34e15e791e184efcf254507be5062486fc0e192374e8959a8b909833ae6b97a1eb833e2a85ea82968a6a9042f92cc1e8f602e752ab53a5eccbc354c03c18ca669bf97cebb3a018b0ed4db4adce7420d19e1323c63b98113dc9e35fc21af3ac15eb4b161708274231dc4a4a9efd501473ccb70c3dc1cef10c34a9e16e9cdfbebe35e110d86c943b65f1504608ee5a1dd7d5d89107e90900495737e2d2a1179e85855afc253460ff2ca9536497c496ab884edf24ec8dad32164e83e88f722c7bd22de5e90ab2169b6dfd8e97f0a94a90714783033526f68e582411362434259270ff0c04b8fed2ba2815a097bab7a28d302322d883e2d82edd608ca33ecccc5d1c49d7679999808fe92df3744d9ebe7c637bfd8ee9e9806de7b3ad1763e129ccd088fbae264002be2c09135ed15a19aaa7c3045baee841868122c205cd4fc2b36698b88472072078dec0d74e7ce63dbe9d9c9d34fb211f82537d117d554d5aa0fef19c5605ded84ae3ef2f2ab45f80db4e317dc9d14924bf5b6b0d29bf86b3edd70df90b870ae0ee02204e93c10ff405420fa54144242b24cbab33c1e62ddf6413016e8befb8ce8fb6bfe09adbee2a60da7fa5a79ba02bea8c4933e7f6c3a142bb069e33beca15cd8ca85661a0dd5ab0096abff5e9f15a231ff681ac87161d4b02b7f15a98c762b60c254a14b4a1a3a814085707d5d134dc59e273c848f087ac1bc1de3605dedf0849da55f4704bff5af5df73287d80952167c7fe5609dd1a3552d2354b5838428f3fee6e2ba53687e6550e5aa35a8e0ba08ea0bb44bb7a05030ace53e844ffa644170746f3a987e0a8bdb6c377e2587bbfd084d8fc0f018d20fb5f064d3749d1c009fc9b61b2361fb30f7536e7a727e9f1900158975d804c62305377648153ea73e0e9c68cfa1b356f7846076cda6d0273171faf25b0a0180305b4181c395a545e85c7acaa2b45660bdef4b6daa58648c0f4549b7204ba8260a71c6ba9ce67644da0dca44d3d964a185999211fdffbafaafdef2311ccc081b9475c7f3253d1a05e80f6aa285acaa8ff7949b4df34c3dd39cfe01a1aeb5ccc788dd4c8107c6279454d595ab3ee50550738f0930ea9896df15715fb2ce09124eddf47f76a5563d2e7a0124968d5d24b238d387dc4892b5d4ea8f41faca9eb9488d0dc7049f9d5b7349b8c276b5bfd9be333cc35e456de253915918f65dc367802a3541289669049097c892cfd3209934f5ecd874482f0c522e2fedd2f4fb643c832113ea6596b734b4b11c865cda9735cdc456cdcbfd1c4aa9d506695a26f1ca5974bc248ba9d72b3b47d764bea44277ae52a7348dff07c90d41d5c51b408b5f2c0943cc32e14195603c699581436ab2c9a08eb81e225669e66cd509d48250cf8cb497d1a0ea393a2c6720460a5e149d5d05a8a487cc2105666feb814a8a4deae6b31a7ccce485f896da756503cb6a094cdfdd360ebec1d2ce60dd39710a7ae75aba02f4eb74666be04ce91a494edaf7cfb45961844ca214a7db3689e3edc5736e926a3ff484dc2f2086a9f24906b7a1a9f35087a48d4e5c9464a5178b9652343eafd19da876e1a1ac279b237b89e6a6eeced885e83fbc84630651379619cd1166f32223825caaa59cd322dce14379801c0708cafea2c697d0c85d237b5af2c04768e7f380058423d44cbd85834d9e2002e8ae1f664b8bfe0d7d99253c547327c0ca78fcdbc8cfb0b7c00070f86baef930354ab5dae9ce1317d8d606e50a42e164c30b79800a0aa07f755c809b9198d2b503137976a7ee7682818146b54ac3242bfc8814c0426b5085a269b554e1c32efa338dbc3c6dab7b589e9e89a12f88812206f4b908b88605857491de624828aa5c5f37bdb79d564cf4ca38a1cd5a53a2b244fd8c456b628e870150415e49e3f605356609d244320f679351900d86d2da9d939c169a2c9b5a2f3ed81876e2fbcf6e8733fd72150336319377ee9ef798fdcc814ee7a6fed3fa09c32b585cd19e2e43cc76887e45ed160c0aa38e68c39a09956929433cd0b07ff2b389d5fe901e0907072a7e720fd81aa2f0dd0bcb02b6210360b3a4204e2d4b402d1857518f0d8aa7ae15c965d70348fd9c150139d7354a09ac8677b0a7c58ebe789ad1c18714c61da1f15b1cb6c4cb472770837466e08f9d5dd1a1dd188a6dd0feeccdd5ea123db31c48bfca75eb3367a2b01ee138aed938b567a0be702a0858c1359911d3942a318fbef9ffb96807769fa9825b6bb4052f23fb88e9c1ea0a97c1ebc48e60cd0c96e1c10898c5c6b0785631a448f4b784ecd0b35e15c9de5392911ed85f3da80837710440cabf25e0a69e19deb1d0dcf3920c8eefc099d01bcca263da4149c1b3a71cda1b6998d9d719a0388cb8e20054b8afeaa0765df55a86f3b8ad9cd44196236d2f17a1d886340a643489962ed62172add0f6b00cd87e86a0a90be2987ac1ba82f30f2256264679e4a48e09c789b6ae8100f69987b38339834dd370f91987f23ca464ad0038348da19145eac63c8b2e9e0adfca328c70425afc1f9d0f3049f5a6db53901ecc024c93ba14eea4ff171c9293f3885e602e79bec683943b341ec5cd2f84fbb34e42eccb52aa472f20fe353a32b0ed73b2451ea19cc2b3c3c9129a3a5480df8d0932f9ad14566e1c6a98d32dc090c3a3a419ea26d02ded4a4132f5a4bd5ad3a9859e46ce1f83001650f20eb8b9a13d7813a9a9a0a2f8ffa39a913c14bed8ff4c752b063fcc844936b88943758944e3946809172d7df8164d89883567e1774a7cf73137836ddc1c3a028117fe37c1aacd2c366d4a12d7236ea1cc83d474bd1dbd1200bfffc17638152f684af539819d358b94b8ba6581f291dd16e4f5af239b238d722fc7816147c890531260bb62225eb95aa1c79f91892025bb69e1bee2c437c570e34c1a66cf4d0af82eaad4a52040e1f603c051e1d62be5d5d0920fa80830c25dd70f2cd5eb21ac5be54ac8222af5d1371d5463ad036c4b41a03940edc51e7a58023e44279e56f232594517d3b08d48c383d4308a2a97d56c7e279c608000f054ad5d8bf143b243405cf0a6e4ba19fdebd3a9c5844ffcd158ea104f1d7b07c96fd66a1d299b1cdd4c5256c65797321ef7cf5224e717bfef1381b47395974a128bbe78014e1912057ab95dc08218e9815524c1a9d05bfe2b2c22f35170324a4824939e075f665a419e1589158f19b848b5cf2654339f95cc0f13c8861ca381b311a4094e451f6006adfa2def101a4246f11a4b7376e1f3f8a1ef34741b1a467246c3662bbd8200109f58294cb500c08de191f91e2ac53e60494c8d9b46fc3eb04801e0f85c5d380a1aa77ef6191881732e9d8578dcd604d7aecad6ecf78f3e952eddf15eaa8d9ce6b8172227e8355e3855d4b727cb01a2e1c7fc2a54a1a8ccd714b983d58001163f0c8480f1160114815da230af3164de9daa3c45af234bcca26f95052f1a115261e88ca983332d8912d2eb964b3513fb8cd9b1b2f15f16b2020c43d0663434736726e9d7bb26fc51867fdfbc3cf033b76531cb91c277451f6166a4ccf70cfef2fb5337e3e40b34b4df1b48bf214cdec6eca3e1d0e36034fd8ffaa5cca15713915cdedf8ace54481cf3698603b40364bad9449f15f6f2a22d036a0b8b739040a33fb70805faf2d07d7cec4c7260757a8bea924bb82e51c252ff36b20efb8f2528ee3d0fba350f61962a9f22e9846b5f47cebed992f8dcb0460df59d76d8799f5b5508963fa5de6c28c6dc318f4a2623b21979defceb4018eb5c8184c27f91db425abdc3adcc63125667f5e3bcd3a85466181b755288a584dc2446ebbc14d695b69ce8d957849867d8eaa50f30b1696ce03134485c51cdd5f6aa1001876e1f4efb51d1e60e2bfb2d8dd858a606a9e202dd7c130409e472363b935d26ceee2c65aeb50d7850347223a90663c5bb9b7d2316866910aaa41c48271eeb241242fa9c0a2b121d7468bbfcf7a39c5a14c676834bc3b885b1d9eb404c491db562ea48912c9e5a1912a2e483cb6b5d3bbbcacdf609b06cd4f4eeddc1641f04b4ef59fcf5c7ef048170f405e54666dd41c94b1755f76f9313a8317076f759e4a156155a50a1c6f68ddf483f450edde0e0083875536e0020fcabc8023caac7400ee8cd23d5c350d684dc0b8c538f2cacc5e6cc9a9d9653dfc31622aa463608f11a998ee813d4690b972ffbd11c45746d5d44345418a4df612d2553f487ae54aef720ec14a5a320d59bf2bda7d8520ee474241ca03fdfb7041048d64d9e48cc5fc928d8cafa9893b5a38ce1c46f38a6e7e11614a876bdb13600b6bd914e9fceade7789afe58c2247b85d7d1a48523752a15e887ed0ece0df3a665487c8d29bb0e1f29c2ba63705abf7c5c58edcb8eaff5c5a1177a82b68f918908d7581d8113fb18be91d27fb7f2c5014a4fda53e8eb203d4fff77312224fbc93c78351b824d23bb3a3e4352d608abc17df723120136b82e343b600def164629b69d2d7bd96b11f3020f2e0f8e38272ccbc081fa5a3df877268b0e27b5472c39c3aec6ce62a3696126025af9645d617792ca1cd7418095cd614d81f0773b9693f9ac811852bbae2bafc992a0d98450d64cf7b387135cc12784d8aafd84b1e32bb70a4541001788009b8a206cd8576250173f863511393d9a6307338a0a3794f414ca714c169fa6770a7640379241a770f10dcea0cf042f6e07be903c4a8ffc80a54d1dec0f142b097d83b75fae9ce0ce3bb38ef165c5490ec68e275cc4ac4dd826a9e3a4ba8489e824faa7cdf4a0be6cb9806e533e4dc1c540d7e067b99d3f724674aa8513208d58904e386d2e464bbb299be1bc6b6458432d2e8d55f37a5cb3535cad766c567458929d3567a338d7efb434fa9456fa5e6e41709c9e35960d780b4027a5118b97a9269d1fbf7e2ceb2797acdaadc345779e69d3de9157fe027c8a5309fcec039728ac43b20437ce1f418dfa11fd52bd00657daf0321137e875a002df4e81badf5b487ebf02cc2a44b0d0c7285216314d5a8f04628de15c9fd448533ba16afc4cbb4756235135fdd0dbd23185d9b7668c6c52a422b4da96c8e0999aff13e1964a35365961fdbe3573e49526817c958629f65d84776e4d9543d8dc7c4a94af780d8137f2180862bc9556ef5b930728d8630817a766c9425a78df9a1c4d32bfd99afd5370f541c1486035cf9a58d3de6b4058e9d680c8396ebefdd022eb3b1cb6e05cd9c0fb469f2dd19e23a76c0024978cb07e6c6533a604436feebc7247ccabe1e0bd113d0debfba520dca8348aae89c3f82950ba0fc7b90107b0a5fb4b307933944c4be5f187046231cf1aef9e326308979812e60d304dd4049b167b0ee79bdeda4b74aac799bb4478210da92cd8eca8d4d4ed26b2db6872b81e600a18728430d0b4c4c4215ceee1614aaf684d5626d86f49854eefac98a70b5090fd12a7adb685754932b2b60dc250eeb49e6148f4a740ec4d2d49aba139bf66a0d70771243d141e2372fa472663babf883954ab6322278c8812c10b4245ac85b5d34895c623677fcbc986eef2cbbfb35ead02c29f0a4d30cf06238a47e6b5bb334e66b5efd275d1346446a58df20bdd5705ca1319a3f0a54423c6e016923b1fc07d6435868a4c6dbb04b28527830010f437b9b09de3ac3e890c3979237f0646d9a7391104d8ca6f6f21c4e89d55cb0d78970afe09abd3ece0567ec26d92ceee955431cc7959790cf45f8edb01af5515a7d520e9b4d589320fb1b48440a7a87ceb9049587db4115bc47e2eec53f0e1167f0625f2fb29c365bc7c383ef1494da34489b4890e5bac2141701c587e9147a9063b86fa265fe3a5628e845e8aacc72621981211f283b8a2349a753abb264a9107fdb60f9d1354e0627e1279bce20893b81308037b446e0cacc1c1e1887c1d5190d5e3c193a687acae6f1d11569e0329527c9afcc77460e99afbd362278baed1d3e0c567ffe1dee5d7f87f32f4cfce0eb24475d554d9d946b0b391fda36b9d5b548d9e7638eea7c444af5142268c2a5c41b9c626864d5ff0a03dd0273eca92b3100c5c878ecfb744d8bccf5c443db5cc2c788d5461af266784b296af03a4583cf98f69461c3e8c10a6d50830de062fb3e61c190d4f4820c0b35f8b8cca4f0143c64d30dec3d19e38c878b587ace6ff744aa69ae21b5553e7615a0c76d1a862e9de659e3dff9a3831bab1b33ffd2c7b1b3ab4a6482a04e89297bb637b6a4672eaf7d88e1b53f43bf90d5713ea3ee22d0c67b6ba76e2851b260bb59ac14258cf7f58c86b7a21d46574b21bea10c0e68252bfb7610c77121d8a92d91ddb6c69d24b2f1ab13863a44b65bd84300239c802b62b84c8e39b948f1d43411299326222767ff2aeaebffd36ae76244a870241131de8b9b6899120d1e4b9e92aecb7118821876b90a275cc8cb7357a8a20571eb30215d179c6c197b1e65ae76a29c070d6239ebf0354d47a9c1e5d174d6137602ca012e90199a4fd002f90ccbbcba86a9058bf762626aa10cdb696dc27cee0cc0f471cc3175906d936c6debd77d7dad9d88a318a80a021d0ad1154513a50d007b4312b574a68fcbae63c1520f568b89ec0ec9f6414938a6a3397ac245bb0b0002710506e9df34f9f1a22c7bb8734ab18f4bf35415fdba9c82a76acd035751ed045f6d35e1a63dac4644939f66ebd9a8477349b144885ee102ec6d67e9159c3adb292c5eb93b5513e172d35319b62b932662e11d0695e1b94f341755dc636ad8c3f86cde480837c49ced6fc6fe9fa336424442867d6dc8f6bf39862f95b13078a0c6414268dd75283d911502f5bf33f4a3e13abd73577da4aa4d57f2d4345292a1a3d16bedd4fedb979f57c43c9d77c39903f4250e5c08ede9de6bc7d5a477b5716ab3e3f413f7ccdedd6c9f0caef7ed21956b22f87dd7d8550286ecb83fec6ed8367f6ef60908664f2a88c1b7e5632c28b73c8a87ae4a38bea671b4b8e2d79577920efc0360cdea3bcf6134ac1300f6081bb7fbbd566741408df9546752869a5b730951dee1ebdd447f0ba52cbfbefc096c20498e25915ad4107563a987d54e4bc8a0fe1737f8bfc1899724a8068f55954919a53ff7e08f7f0d65da96e106907b102cce7aedaa9ee01b3c1278cc716efd727f18308f217a5eccd9e9e8c5c6d80fb4d00e570450849cb014c58349ab06e64c0bf15eea43daeb8f525c3042ec2b645270fc781294b560d57b4b6c2e593916b4e59ab88162572c9024df7cd63b3ea6da6a9a351ff035ca2d90c29386bc03a78912a9547b1efcfcf56d5db4bf572c25172f48078d9a42cadd02ab729147c79e3bbaaf279206c5e6f322ac12bc5171346d9a10fe2c2704a5409d77bfbc2e697325fc2544aed85c2217360080a0518da0b5d9b5d16ada50cc97432b15469ce0aaf983ae04e89168107b52a5a9e58a3981ed3f38425f9e21002b30cb76cb56095b754515dd5177db0ebcabadac0d19120e18c0a3a211d8d8b3ba9a5c036402fe8636975b097ae16d41a0da6ed57a181435ce551acd5448b929c499614282ad9df9be75cce5d5aab04bc1c0e9933230c0938b0029116290fab16a829dda4bb4f9ed7a2aaa622af2e9da06f413d5089e8190ab346c02d9694a8bf08ed66af06d1f1fda45d3de3797c083a66b3e2bc30c1895930ddd9fd0cdfc2366123e6368026c34ecb1b36fa039a5654ad244976d83a41542f8380dde35c75681b8ebab71750ccbcde6bef8fe1e8a1106d30ca684542a61db25c4fc374f61bd4e13305a701e9f6681d402a3455bbe90cc8106e9ddc47dfdc8593b2210e5ca0a7838b682e0cc5f2aeebf010d9470aa6561d6a3ae58ac8f998e35e6eb1312c4e4041372a6bd449d75884ad038358f882806655cc4ce3f3f6e0406a222c687dbef56b60f612fd6856e9b03e442bf779e4b9f9a4f67e56371951093ad62ad18d606c9cf532d5f2a4ed8230e5c469799595db668c0b47d4f989949015ce074ab7372cdeb208ef5f40a1a10e4ebc99a01778d6260ce24e2e648def087a84ad78593dcb8a6f5e6e44a4d43a66eddb9b531b96ca6ba1c5234d2d1fb78ab249a58235b28654f6fc383bb76a9813b832dbb57d2e7fcf8ce8159c55f45a1a049e1dd792ea4b6de4cde15065c7843066c5c44ae48c990bd96b75fd7a2310cdeccec8371ef4b8c8fe5e6099307f0c1ac26c65ecd95cf20a5d4263ec633726872303d3713d1778358b462afd498adc65ca1ff1963085e9e116f66e0f1b268c32a2b04f80c15be5b4c89906410f89ba68403aa728bd51767cc9d923cf5aec8b4e27c14da9b0da153dbae5e48129641003f93e33044086aca5ab6a3024595ccb433a860c41683e05ac0ea2d1c300fa0a49fd6ee64406e19563cd8d0268ab6852d564a7f49076e31b40a4b958d28f80440adde10fc9dc0ae5c01d2195662b57ccf1842c1d8a0fdec8ed0824acaac21729760b472ad46c500bc3390d859c73218e40e14e18099bdc909990dc78cc023da13405868aa8ecbcee84811b88c5526e336e01d538eda634a59059d0887ca87a7e102a9a0c60058ff37a20f785b0f25b7fdbfa2cc01058108db86da2e9641d57465bd26623735ee52eb76a55d31f6ec07aac7277f5ca0df6f14eed44217feb6f90e390cac07ccede00917215de62df9751a88a3745a61dea9a802aa5ecc5eedf98fbb59ef1c6b19092b984bb3d80f17acd96e6e569a614a766c9f2f240dec89f9a3ca79dd610266b0d66d3066b7693a506b326a05220d942ed0e7d339ee1218f48bced90bf45aab34977d9cf5b904a88638bdb292c98b50d5efcb85b0c525ccc323623efe56b7c401c75d678a9383a69a89025ca4fbf43e5e444c8efe3e715a5905a5cbc24e728ed3327a9e7b354ef4e1009ba3d8ff81babd93a813c782191324d0853e900e86f38ad5b7b1111585bbb4b484ad87028f864c1834a4cca15ba839b6f15411ee4b00b167f0d04c280a37a3c10e2f6db0a524e78a9bb6621083fa644bab64b54ad63e9bd913750b9f714728a02235b5abad2214339d3f966c5bb207ab5bd2a989f59300dc70d86c0d5c141e4a25746f1638778d34bba7ef62da1e762922228556898d194b0534e51b023839d0c8504432c04c482ba00748487582c2405344eb468f88e3b27cb7291f73661ec06f26a3f6d6a398718b91b62b46c890c3fc957d4a2adb9f47288c3c58f4b40a20b0c52d3ad2b1f92d1069e6347514c0a5e5c43e051c74c1b9720b9643889357adfc080861986b9e6225de1a9b35c9797b5aea76c5685a2a956ff6fbc276569ddd2ea8a8c7090d768e569ac5437c4b95440e0065e0b75bab0241f1789d13c58c1c5658daaff07db23095d1e52156d7eeaa4c240080391b5cbbb08f4cfd0e2da44c94ecc1078668b49e959635c18aa83aa64147519a4799b1bff8a2d36023febabe6a1d647676b8ec4663bad9519e651a2524b1851f0bd62c07c3b5762f3455fce28628daaaeda0a76d74f1353d41ac230ccc6c0fffaf48139bc607ad5f8c2e7f19871fa1a84bcad69b16e3962513ce7541a3d0a4334942c40e1a3d00f4fcc3238feaf5e986effb23667002cb7261a13bb9076fe9e771c2c58090da0ee92df27f6096007733dec2904b75916eba27f2c7e3c9a923ff0f8eef241b3afdb88e678b5462221fe5527b4b9255f86c5a56efa0d8d5a5e84330a7bc4384c2bd121061316bc8ad49103cb48eb04784198f51f2446af5c83e0f732c961924fb05b2a6e184e107be0126342b1d1e51fff8189fcb1c599d68d522ed9c762835914f9ab85ef183353b83d36e2bfeb624fb3b74158b53169a78628c3acf9cf76f31885f25b33ef4012c9fa1274abb8a61e40275581711532aa198a44a3cbedf6a1d0567399cbb0e8d0f038554f44c44b35c820911d6a6ab19a4682e5f917161bb41b45ad59dbf4a58534306a6ae3c38db416e23611c0219b370bd9a6b703d95b715fae367677c06f906fde8183a5185e42a7d8529aea39a63bbad12d9f927fcc8b1ec54015ef954dbc3f8a254489ce27f4d0bec505eef6781b93d90b1f7881881e205cae8f6292a3a84dcdd1f65cb80f331791849ef906c1869ee825019d663caf77994ef24e192c3f8bb2631c7d4db7dd25e4c76a6557d22213775157b7b7ad6caad596a6ead31c2b4fd83a988bb7f041c3f1b85a795d920d5b699e9824c7872b3e30a21ee1be99679999e8d7ef7a25559c2cffae66488f2865e1a2235d10d86a74f71451dfa1710d13c65246628912ef325296eee15e1c2156e4ec08c8e070135d0dabf3bbb98dac22642821428c72186cf9441ffb61e70c763f9cfb0fc95d7a4a03bad0d7ebeff7d83be4ce8e025131bf04068f6fa29f8455d5ed811c076f1c6b7a4f708e88e89630aba9f9afd12d1a78e4478865d4fc83b75c97c809b406021a90b5555b400cad950e266105916068bfe5053c24af236c7f1182c482f0115f9e7946b879a8680bad200749279492e7569eb8614a69dd012fb5efa0792273c7d084bfaa90885315eb4e205becfa36e5102ab4898db5b1b7943225b9e5de7b07040504055d054aae72cefff9f3bbbb7bfefceeeeee3967cf3767b7ffbab535ea845f627bab2cfbfdbbe524d1fa6062a34e5886b6c1d4302e721285c2d09524238039ebb96b5d6d61f91d53a9f911ca9151270c7a856d2864189ff8410993efbdf7e6c747a4d4cf9909d9a8139e6d2669f84408963ca1515931ab12a527778952b473ce39e7fcff9f5554604a193060563c39f1a2c3be5d6c4fb2ff8e7cdd7befde3a260b701d59a9c2e50cc81486455921c2e784335feddea9995c7f8ad4099f6848b68fada8deca0afde11b84aaeb7c235fa7075123b23263abae88d6ca12ad4d47a49754b3854ccdf85d444a47f6207bc8911342329add44d4505c977d52aad7ebbde87263fbbf7dfbc1b1a4ed3a7fedeb22e8854ca5eaf57a3484e474be1d06d5da7cb8fceaf57a3cba64bd38a2ed309876b61dedf743058cb1bb7bd2f6aac29dcdc965103d51d93012a6460e2e2f726cc7efeeee7eefbdb70b935cb00c6adfdbbbf7de7b310e0c0359c666b8cff9ed0ae32d30f4c79cce4dcaddfdaf8f01a2a208777777ffffffbf2ed6bcac91d9feff7f1f7f708cd5ffff8b70fbca45ffaf7526ecff37b3fdef17df1b7c9bc2937164e88cdfecb4f7cc0fa6ec5e1a934d8c49199b1ce64b69068b9992ca77ea4584297aafef056d878d08316d24586803abb122620c55b0c917dc97af133422c0503969818af8d2a6bb22d3a46fcd0f9ef3f1b5d99ea5b9893136814cbb226badb5d6626badb5d6ba5b6bad75ecd89e8df99c0e4bcc15928d87e8bdc0a3af9e5b91f1d862ad254ddd7bef9d81b1bb63777cdf4a8e19cf58a7c4b6b1fe979ac087bfff5ba42f77c718638cb1bb638c31c6d8ddb1b750823d1cd57abd9e53d5c535a70b8141beedfadf6a638c31c67eefbdf73abe9ab14eea9c7b1d7822a849106813138f3940134c628edfca948bb3e8ee4014686818638cf1a300e4f896f75e2c3029f66dc38f31ca84eb6da11a7a6164638a540336a9f59e27ef20c17e02ce963c1fcddddd9972ced7dd1d2accf60b84527b72c72731f21fdfac22e79c95ec3c6367772f73ce399bed9cffff73bdf7de5b05cabed95f64a1198b50570c80dafac73977f7a8a2ed38c5084b7a2200217b71238cdc52a54b0babfcf9ef95952acfc01756a7df7b9f7c9f9fb8c8fe2eb6eead91ad6fca8759fada5030725d4805b393cf09035e50457906b85043a104eeee0c704243736d30f29475a68c496b8165d8f6d5f9bf30c6b7a94c920941a6a860e4e54d0b1731f863dc60119ae3530caa48db57638c560a5dfd378897d28494be1d0689bcf6f56dec93b1d645c2152244595420b3840591a47491a13245ac9822e3c1ef58d9668b37e80d3963be469d502cfb8c29cb99c92deb97a931ea8422bc4f9920a88e090aae395d8f6dd4097b6e3f84a6d07500c4a473f0979d9e83828c3ae191a09753f17bb3e41f73bab7b351274c63cb3e6f6e43399353ac565058dbe92219b251273cf32193f6133271efbdd78d6ad409ad7cdcae489e9cd57395b6fcff1752bb175713542498648f6a66ec80c88ac6694537d146ea84af25e4cbee3e4485e6b2a0fa5e257b5fb4d6da0e8492ee15e33bbf83a02c7588631536b674cf2a610a9f416c9054e9eeee6467db7beeeeeed802916b39fbff09dc45b55eafb7c24626eb876d3bcc3a436bd3b244c5ff9ea4eaf57a4f395c4c23dbfffffffffff783a85ccc2a4b3385c2ecfb31b4fcb698701c54f5ffff636f87595e68fbc7deffff6bf9da5ffe676da9b13fb3d02265ed2c6760cb43ece39c7ddab64ceb6fedbdf7de6badb5d6fa0ebcba4f9e9c1cad75ba13040f1eb6d51aaeeb9973c4d524ecd51aeb7f14c538e581e0619f5a439ade14435ab5881d5ce79cf585d3279fbb72bfdd7fee179b8821b2482486c8e98cd821453d20f5a94790faac1e4aec3cee4fab96acab5ac410e1769baa36e6841a761882186246ecd05653d1877373238aa28876b3bbc059cdce370edda6ddb92e3f1597db8dbecccbed71e7c26ccd9a9dc865839b35a2d84e0cdb895f6a583bd6230f049e7d6aac475bfe4c4dbadb6dc05175d63bb7795ab7cd8a2db6e358448248aad7cdf4d4bf13cf9de8db895263cea8677c606d8a50e307330da18abe6d635a30c7f3f431f5b9ab66fa53477c619a9dcd8ea777b6d1260744b04b5e895d92bb2cc7068c39a3f6518715f7e69813e6308092a4fe6cada5c131a3cf543c3dc0dbc4e7089c36c3f003d1484cba397db0b9cb33bb210b9a48f7a057e71d0fdd199bfacc589f23d8a63e45a8bb23f167ca2b51b3bee90d07c89d138dc410a7c624ae7e1b6deaf084402eb54979a3894fd3c426ae1bebb3840848b0f107625116a148e46ece6eea3375fd336e3393b8a676cdb31aebf4f199fe8cfb4c7f469e4d7fc66dce5c9dc33638e739f373ca137fc80caf5d6753e3538b456208accf146f7c93350e77e6f479e69b349b16b246b3798e304d3367b8fa9db8efbdf77e2ec55a2c123bb8b6d9d1e89a9dd51c90b85d88d30fc61cd743a826d23d331ae33faf3eb1c6803b4349983aebf36a6c248670cd0bc970ca0bc9b66b729f290953bfc63ae589a2d6e2f9809c8a46a9a9719ae16ad78fb5a73833f487dc59f37ec87d6a0fc702bc9ed9d5b1009ff27e481adecff8e788ac499c9f73caeb40898db5d51f188921c26d35cee963afddd7dc66ddd70179bf36b58f679a810255cf6809543d9396d87887b5ff35772576de856277f743ee4f4523b1836b0ec852e70f44233129d4e31509c412381288e2788a08ca64188e2907a38eef902bcc171c5bbea7addbe14fecca0f85313b4b15610d59d25db0432c215a36dee14f8a0ab41c9d9442522b28c1c2a3caef851039c6c9962b1dac1de5f885c1d33677f893023404cb9e59c2a169a344aec28a55f5db353bfc8945414731ece6164b2e98d7fcd580da5667b76ad65a6bad7577b7d65a6badbbbb5b6badb5d6ddddadb5d65aebee6e6d0b1d15b8bbeb7cb81d296d11f2f2226306e412b39d4c521dc11fffaf85d1feffbf8136ea846afb465baf68e348f28b6f531a05fef7de7b7d908d3ae159daf6c1f64138dfdb048673efbdb747520f5f0fa91e533da8324ee9aa04ecb9090b876ff5858d3a21d9591adbf6b985e387dca61426e80976ff41e17befbd37471724262e34ac3c41216913615fec3b2e7c4ef7db71a4e7ef4d5034bf29b2ed1ae3b6991f15db7617ee0e46c58fa5eceeee42b6fbe3c7ff6bf2d57b9bcabaa698fdd3bd5f4630ea50c4737ab6a62d8263ddb17aa34e5894b4b17ca65f6badb5f6fdfdb620b5ec7d126ee472ce39e71c141b75c260d907d1d0a09a4e1785497199614664eb45f8244acfef5f12565c38b986b85270317141bd63ff8cc5587837c3c8469df06c87a519e1fc10722459ce5c34ea844c929e890fd531f12495102548875419192f65aa8668e0fb1749d9e93849d2a813fa7e279142dff3235972c1f1c5bf1282ecabff9f08fa399d97cf4bca6bca8bcacbaa2967322456da847c559e62f464b6b39ddd3de79c7376f7fb17474dce39e79c816ac0b6602f58144c72ec38e79c7376f79c1d09938dbd0a5e795d855d915d772443682e95488d3ae11495d50ed65a6bffbafd657101b0282657a84039c2d5636bd1b63bcc2b5f45c150926ddfa868cdca0653d9911329209c8e38054da016545cab859716354ca4b519a123dbd2a0a88104c4726d7b2af5d0482abb6243052838ea09a423213a8e907cdb6bbe3bcc420a42edd5db9a2e125f46b052a872726306515995e378e1048dc7519031204d4c740961a2220995b26b568ab40dc60fa18aa01974875929966c9c1d66a5a0a2914329af9441c9c8441ad89a171f3d3e1475a415e564c2e98b931bce09510baa6dca89ce6638f9a0da96a4f5b8fe72449dc0480cccd412254958b71cbfe0306077875d41b08858a4764613bf5da114ff1fa96acbbe6edf0e558dd11ce57205b27a4315d79ed96156d591cdd33c8ee56fad55b2ed5b26db626bf564dbb388dfec106815d5c5934d1b8a39ddb2e69c35d39c356dd18a305764a8e5c8d16b1232c1225d32ac45161c91239ae6ccf732c5b884628cd6171f09483d37e8ed7dc428723b51de4c1ebd210a5994af1699068b0b505f76dd55eb740e071e28321c59c69fc0420156e46a488b102315280a49d022d5142748182bc1c68a213d7e617b948f60548db7231295a02e2a2cb0a770afbdb42f644e36cd0ebbc8ae6c25f33f8b804c22cb65c83ed13af1d61544cbdf83bcc2700ac5c4508cb81d6a9d280bcb164065e0099a6f29aa04412a626f62eac7142835d25e94d1004e98ed3becfaa1f4f6ebad2d81c874f1284d7813b22a27c0c8aa01a403052e6124191e0210adae7e590cc5712cb5487230da31c7a6a2e6801cb5386a52bcc01eb5288a3cdd4fb9c55dae63ad625886624d234992244f7d6a9cc669d2d470d42b676842d0a14673e3079c464b1dea09c20388fa73783c9bb43b1fafdae21f7204a9d39c73b9734b8a3b9c70e7d4b934cf5d08e31649fd3a9bbbdcd54d8a3535e4fedd99edbf59dea4bc12fbc6024e0824a9338020ebfe0c389ad41957961876f9871ce1a446d9501e7a6127ea9cae397d6eb478fa58d01c9037bb53d7e8f074c0865d6e60c32ef5cce9f3b99d57bd36d7a626cd7787ee723b1d1b3a13863b1d88bb468be99f3eafc5d307a7cb1daa49d4ea9a1d896adc2e446976a526c9f0f431eb9ed9913be39457b5d434b103399224094224c9b2d672c72bb1c9511c45516b1c390363ac236a288afaa76e31cde081a84b2dea32fd11774d45a9210c6a9119e38daa39f090204450a54406a3a9cbc7d453dfba8634b9412fd2cacaaa8040d20d5824474944ccaed92190081a59c278b5477df5696a9c39f303c59d1d7cfd0cbacd1b8b78c41021dc6c1ce6d80f6178801afdbaee3e40ea8cbadcb565a0430d5a6790f244b0b1d68021e57d86344c793a9bf2346ced298fc3c6a999d6987a873ae75367d7bcaab681b9c1186e99da4c3dc535a70718778ec8409f5a77ea304c0bab96aa963b7df0899e3ea6d63e1b0c38ba0b1a74cef6de7bed8ec4873bf75acbb6791ae8f3eeec587d72d07887c389793a1016344f63a0793c3b3b0c7621a97381b6b0437733bbbab336ac69d56dc77776b4a9ab960094e73f8aea745ae3f49a1ccaf4ea1d5dd576d99598d517d5d6d41e356f831dbcc3e1cd94276a905a4d82188b6a72381a5197614d134360b50e5967b0cbed689b1c006c48754852804f9e13d79c234e4dc26a0d34ee84805993f27ecca5ba91261553136b9eb44c3ba4ae014e29b593562da26f820a76165c70a3efaea671d865d001d865cd01994106a1e82341e8e85183e8b399d118521e8a6a9cd10206fa42cacbd149c7a29c94c7c3830100525ece05292fc742aa2d48791a4d77294fa7d30a460ad2b3894dfa1aa729d65fb588214422b1c3a8791872381a8d75cef8e14663cd61fc80a3b1c6baf000351aebba138bc60b1a9b1a83e001040f20781845ff19f18ec7b3cf07dc53dbdda701594e172d0be9aa9065e2a61074bb56826bf72c88c52c68864270ac4a10ac2cd8558220f084a0112a412065599665f9ee65599665e96470c75890c694e09394e09258f0284a5008ca98276b61402c6040331380632500c1be805d4e349aa3370081b5c9aeb5d65a9d246badb556b234c20488d78e2e1a5c4f4b96b680474a80425a63b2d68258806658633f2cb0bfc2ea5a0016500158461280050401583b4260d13800d69301b09636c03a028125f4e137a600bf350f3f2c04f8990de03726801f18cfafeb3bfc80afc1cfc8effc803c87df8e0fc08fc667f07b7a9ddfd2e7a05a87e6c6721cc7711c4b0ffe3bda55d71f75adb5d65a9d246badb556b2fc090160cc056b1bb05860968eedc0745705400a8c4c0044c38e0c34303ce12ce9ae8e2e5c09dd8cb1b096c362635633860343bb688033464e20e68e4ce331d46d7a244f72c226e995616a1712c532a25a87e6be3cd3a51e736c5a96d643a9bf2ccb0dc894c743c8539665170964bb2c2b0f99f28c1f460f2388b0078f241b96d2aff592c506a7bcd74b0aaecbf80b8c9af242c64ee4a596cd4ddd7d857a2de0b2fc2faf172266ced39ecd1724b4e6cb97199c9b1613158369de86ee8c9bd5cd69c1f4925593a3d0e02f5416ae1711ce5741e35fb25cfb0685a1043384b3f7de7777f71eba4fa5bc2db7726f433414c976c5ff8e13ec5df2d0044a92a0a6aa1c4d3cba7255658f4abee0f94b96655922b991fd7df3a21943dd86cbd4410f16627014a18155a68ad0f596b6edf5dbd6c496a9b5e51117a62914c0c4386b92aa3bc488e5385b19b7b6dcf03bec6a0bfbaa166323a4488149c807198a1eaf3ab67315f1526b151f757777a6edeeee4e06dda156d3592fe3d0b774dbf3afa536cb5bea9b13b2276e2d7d875d6f5964927c64718bd90485510c20337ce8a83946d001050c1b9914143ea67048011192840a70842f38c6328dd0cc1ab944346dbe9f73cef8da145f6687f55104c10a9f0ca424232c41dd2813634cf16355f515430a17341b36ca2c9509f21a81a0a12743b65c8d11a935b05b338ff7b135338bff27b3c5de281645ca94a04c94352230a6689039e166f3340f8f4a02f904e30ddc91134aa1bbc32093295b482209b88df181c6454405ac3366785d856d2139d9f1d65365744d20858ba22a37321d40aa5406a2b2a6175d515d5d6a8c2122d49c73be36e881342f252204df54e0526104adb04ee49a2985629464e182724625c4aa4601bda1b919255aa490d5c44b9294137a5428a0312ae81956ece2041a110a455342b6ea131016500c6bff338ec2522b03baa1d8515f00d93077d805b49485e4f0c65b7777f7b7d6dddf7e8c25fb821d6ac5a8d18496fe588869adb5568b46926dad958adaf65c61a580a4906c5808400a8700b462a8e1b46820ed0976a835838b27414baf43c09cd28c1631ac28393a12a4575d2c31a962bf8294f848818b95147c3db6fab65d5ab3d65a6bfdc8dd5de984dcae5a579594bae88c721854a5ae3db3c39f5a943fe200324561aaac68f244e444fadf296bedabb0d6817c2b2cd1990f2ae89b213aa5b06b7618740a438f5c69868dc2c195aa24576c6848437abc05d30f262bf720138fed36b8c4b6733b0c2e959d48bac4c4886d39b1d050875ea6378ed6b437cb288635834068eca928c65118ae263032512a80445d1173c442c658cf65e2125296630256bd81dce60eb9842899b204044305475990a4a2b7a54abe99f6cbde7234ff8f5cc9bd256ad30df8be5fc12a5feb096c4077a8e44a92e5a2f45dc63cb16222c211250258164cc0c47a2c011e11a3c4c2ad32d5a8b17a4baec04085a615b69ab8f256538a7db3c3ada612a640610192c4ad6c2d49031ea8c8e234b564841fbf151589980a1644474c7851914e212f286badb51617c3a9a688d6885c511353553c49795ac1df6f8d2513515640abf1e30420299e623c4d3d41914f493c3870e2c869c8cf4414d2d1077c4d29f4300b53d4c5a892302a0062652caccd04295515850d95bca8540b9e4a4aa6664c020000e31800008420180782248992a0e36c0f14800c3bac6cb0d4601a11860462180c0c0b82200662380a010000622888c1280842cee40d70ee0296027a0d2b802dc236c0d66315b0b5d856a6b04a6062676a0efbd614564928ec0c4d61df9a8185a56bfbbde80b6164e319dbda3d5623cf362ae7eda658b766614b43c4cadc10ebc6146c69282b6333ebb6596c695858991bc4ba35892de9d0d76f65ca952a26d8ebc42aabaea5095b3ac2a45426fef059860f3f68b07d1813e26c64dd9eb24ac1d94c9b5937a7ac12d0b0991b62dd9c669582b2991b59b77df6ba57d2aae88bf9b549979c157d3b7971dd12da39bad5ef95697d89957923b65b207625112ceb2058ab48612d03b05693c3b20a8f5d4d846519186b1551ac7570acd524585641b0abc9615907614dc60cecbb4480358c79b1ef1a05d630e7c59e4b44acc9dcd92ba1bcdfe4e486e0f57e103060c5bab1c07454ccea9ef945b79f869212cfac4d301241e4b720489b65a3ba04f128b65924daa6683737cb6558693457a9c77214a41f4867d86654defb3dcb35c85a45662dc3592bc92cab30bb92c8b20cb3561159cb61d64a32cb2accae26b32cc3ac5584b09681b05692595661762599651dc85a41642d83acd5449645985d4dcab20cb356902feb0f605ed6c4e1ec49a46cab306b8508b64500f62a32cb32cc5e514957bda5472b76380f0e03f9bfcd24f0f6ad009c0f6394155b8fb8c60fe7c70235949d0b4467c58eafb3718305f6656954d7e06e22c83a78506419b0793d8d58fa3ae8142a933532165f8376cc524c6abe6c380c28cdfa5f14cb1d1571af6875cbbdf8afa07322d3e040ad8956b32b3962b546555ade02122692bdccfe9b8e164c144ebdebc98eaa15fb88f2fed4a97c21f3001d058186a22a5f62fdf7e0c990b0325650e802e2997449c4aa8640e780547a2120ca0a13bbcf0ae7fbb02a6f59bac184fc9d277053c2bb05fbb99dc07344eca2c8af130dcd09e878dfe9fc241154bc311905a761fb9f72c76104d38b9e7fd7139fa9b1c8e4e40b52ff5dbdc58e5ad0d42fc14efd22cc759661d62ec2426709b67a1660687ff1847fe19962d7f6ed61a4a95b849dba25ecbe6558a95bc0acd7a287c9f33efc0b4fa7237bfea6773c36a78710f045c3051e1dbd32349878848ca4c621b5d184eaaf124ce2d230deaf3b8511e8bf689314d020818f15bf1ab392fb3e9182649a5faf488930497c9b2bdc4d0ead0f43e52d22b2b45a84da72afa54125a26ef627a7833a61171ff357ef40961e9b4311a46982acdbc40fc55fc1becb83d774aa9df329f49fb5191f5c3e3ec6b6c129b620d3eb756d2d31c2a45da19172296ac06e418c565f69cbeba205e01c63abadea58a8880847b4cf4300ed13812eeeb1d444d5f5e5aaba2912556c96744966b3977db4751362684fb21d9653002d8cf0ad63b2fe56591fe50391f543a6b4a198f3ea3cf8d93827007c725439e33777d769e92d6348276bc26a1cbe87e4b81fe1cfe436a9aeb29b9cedefeb2fe89ddd6bb751e48455eaa22246f7c56432f0404e3e1b858a727ab2580861ecf3b2f677b60266727938115a1f85a50737cd439586243552acec47a7519c6488d3939ff3c517016dc64eccc750e7c4267d5282f17a86500c70cc5184b41a35dfc8327c1567e0ebfec65bc4570dc0cb0538975daaa8c3acb6966c2e4008b3382a18768c9d7bbba45a124ff216dc67d6bbd9394899bf65071145f021971395b127a1cdf240b9ce70bb0f28904de7bb22f94a3fed2e37611fbd27cdd7493285b4398fc2985b7c0f130dcc123f13a335b85730956c9207f7ae8eec55f483923cb2d14a9cffbf393ba7149ce744608c6ccad498a93ae62135522a836727cc9c0ac1c58861a6ace15388461e29f97c75f53634f4065061c558fb86b65fcd599996cf29141856b59e9b8ab38036b1ac99e87a2e174313977d7afc7c9878c85874550ab4892bea03f9737467eb3b376d40cebcf6f368a5cd478a117a1a814e3791ff5729be4c5cebf936be45108ae7bf5a497ccd3ba2e423245096ef6703d0952c6bb33cad8d9f2aa3b5046789a97896ff8bbf37985f8b7f39cb9731d81547e627c57ac7c40e7d57203de38c749587b7ca476e7ce90dc66fe94980eed4f6558af9702adb7c3993d4f2202af41617ec825c4e644c8ecf01ab473bcc879d1de8189bb2c93f9fa20b92c599bb66182d14147e7874f9866c48b38680f5a6456f73df1a1af317800d76e69aa3f02836475e09ed2a72a2c37a0b7df5db830bf05c289be267ef1afe7d4f9f1c3ad0092e1a5fc44b2079c3af59f0cabce88fa0faf3f7db3f7c44c365943623276988f2dc3f7c12ee0a768951b300e9cf0b515a938ad3e2d533ce3b3ed753a6e41756d4a9f9b40650c0880d3963275ba4536cee71eb681d1cd773736741e649e4947b1202114b2d7756f747e5442908ea82aabcdc5ff51aef5930a1c50ba884fc361aa414429f1eb948abdb811326e091088c41858c6cd4256729a21ef796fe8d91809737e612ba5d4d0e0a8c59cfea9819562ab6e711dfdd9e44b61880c27a60807a485c4f9e022c3aee121a8220f38ab77873578cfde6be197eb5f123fabae08d0591b4195760317f97d465d08223b57959c15cca2ecba6518c0916027e309ebc8a55b4c162b73d9db98596019f034ace26a041c3f967665ceda5ea3b0c73617842cdacdbf1b85158ce001b55a1b39537e5acb4b1be65643efb53fa65b2b51dcf6ec4671c0c4964a22ca02e936c5f07a7a7ce92438977b60a545151795574d6ac4e5187c44fb92d960f5ec0384f4846b31ccecb1aa0eac8031b840453ae6bf3e1a43a3a2a8fe618390fa5307db8936b85e9c7db4d6fae958af3d8b1c3658567f2030554ef1f91b4c59d297471af2918e1843d57f3bc310de1f1d5822655c12b207fe40b5626bfedf87fe0e30236a6dc48479e369e6806a81f7d1b2de8b5d946db3726f37637abd4c63eae4b8db4c8da9bf67b12315f2a6721c8e8a045d1ac4ccb1283b08c0723a6c674e1e536f6c51853aaf42b65b734fcca1801c8d5328a6ba55cddbaec791805d10432ae20224f955c3ca509b840c4d028a7e86e393d0521f41631d42c98d5a1a944a70f680664de2eff9a3e0062a0840e0f257d91dccbafc62cb50e775ea9400cb0d19bafb5e19c03bc06cd78990fe41bbdae8b05a8dacf04758eeb1210be3bbce3ec8b78bd63d8baa1646706e54a24fae516488a7471b38bdd7ba43f8e3a5896d3024439b2535dfd99757a1fba5cfeac88d13542a9de114761e841dc91a2eae4fcf1f8629504a7f17b61056b21051590adb610e0a83d1d76615f15887037c5d0a562a3ed1d580869924e9692393fba28b55a7338d11a3bbfaa7d6a4f61487e7f815d1f2db58061d035d5da954da1b600896bfa4a72b89b9ed675aba35e741b33df330a9b410899d8497014dcd5f48ab5525ae47fa474b1ee1392fa2487b54d9d0e687e1a802d28014c5327c2f8b481e5473ca197755aad87d64a238ed50f8b43e79dd4f3304cd0d2330323aae769f33306e4d131ac325e7cbefae07313e18363dea12fb13a832717b6f5d40972082ffa3010ba3700d17449573ab5724c655dd3232457fda071284fbc378bdc8a4b41b20c937fc83a0311c93d6a366dc6d667304a7650cccdc268d8bb5eedfa3eb686e8e60591e52f3b340ccb5d342fa720a03a6df1613964186a678f6ab0a6ceb8c17a22d1bf30d40c3987448746dd2c7015226616d03ebf4eb85500e041ad9ee4a2fcb1c46fa5a3f1ad409137552e7d8b8aeb4d109b45878a86ea02253d02968b947a26d989c539cae0297097024e30aa808eeb7d7cd8286cbdcbff4e0c8110eee3b65fbc7d3203164cdbba060d9e81551c9d856ab98b254a9690be0bf76684fc7ac5b506e62b3139de3d31bd331f313fc61a6a2c04916f1ef2c3f07603e2dfee9fb26b76c4008592bee558a053b7a7aa01c2ba0518f6ed4ddd4bd8ea0859ba688bec1050ec3b8ad929d602538302189131f23a330d324da6cc765f7a611f840f02fa405992314044f5daa889f67e3dd1ec80dab47749341644906d3113c4040740447dcd6ae49f6ba6a8fe96a0c82fa940a9d77d297b1bc8da5668918029c031868ba0d0f07715439d4c64e778f0fd11de3b34f8b6a78b074a289292fd9a143d14834b272dceb8af7e4e5321b36fb743b8d58ec9836b0e48119e568a14293755b8789266fbd2e7d0c79afaee81384e08d6e5670312a4427afccccf00e2449017e87c1ad8dc2aa1d28873b128e8b483fd8e75bb0bd41237f591a50039cb9447ca05c534c45bd97d96dc8281d5137a5d518198eb4cb55fc213ee235eabe582aaadb3929052ec7e556ffabf251aa3dd1f2fcf296da0289d7f209fcb181364cc4bba2aea0a8ebe3707123cbbcc79b9a048955cc2125868689d43798b41ae683419a693378f5b7fe5cf093bf69db5fb097ac7cd7a3026b4139bec2aeef73faf5a54da7487fd4990323890e23d3b6a7e05c4d0bae6ca6f1089715eb7d2a6b7219bb3a3b420a2cf5bdff1321944e9102d13c8773fdb3322f570da381944f83cde2592aabb0c482a819f45f4d1957080d3f8040c600cea5787618d4f108cf92ca69aa95d7417744dd02fd8c4e543e00f4ac146d1a7898d08681b6cc99ffb9aae9982250f9c18b36eb734cb86218191a3d920b04a01137a971925a512a9c6f14bb32aff109c351d20bd7a6892422c5ae64d88c8556510ad670148feee3d2f00acb545616adf1e262dcddcba34abe447b37606470f1c0503db1510f4b9e57301b1205bde79bad6108f3ef4a149edcc6753d9a309c7e29647f493f5e98404fa1a4d388311cbe4436e79b1b4600e02c9e4c55cb8b341c0ad675e269d63e6a5290fc272264ab71cc17de168dbb58a290381214e3005483da38662e125f55fe905798ea576327cb74a5b167777e59d639d1d8c616bc1d1928b7ce36bcbe0419ca198131cfd96937623f4349ddbd58d87c4fe5919551080138b59024d6ae87778ea0bc16862ce19ba75dea1678567abdfdaea357962c0bd6b638272b788653e00a463a70b26e6e610f74b6b79f4a6e1f980da4f5bcc591841f421a0116d2dd1038f6c9e92e51c07c01cf6562ef98b64ca59a6eaa80bccf689aae24898866688151f4922508bcd7a8e86b117aff8ef01ea26d67ebbbc1a8325724b058cc4d322351937bf40c220dbf3ebb851885c280154fc09570633c5bc60e2336c80509d4b41a77d3216696d30a2577bdc7d4f8e4cc4e1f03c3c139d6ca977fa9a503b532588223d205fb8f7e92c4cee196440943153a6d80a7648af63f68ebbdd2378ed0e85db005a4fc66e70810357a343cfb9d31f0c75973cdbb6192431279c08e357ded9318861c8661ff9578e96616157bdf93bcb983195a18dea702683be16bb2555fe0c7efbcd4b9926ef4ed6ebfd775b61f2e683fe7542bb6dce94baa0e37cc4c46d3d17f7d1e4393f003b0e0d97092f0f6b7e92d433c63ab9a9743accea79fb3fd161e7f40350a1797085f54d61e44282b05f021cb216b9294b5c6edf992e30379fb00e7b4333600059cb696e43839233f014a25b59456de150ce025aae55b9058e5419cc1cbbf7740ce20a9095832d1b7772caa18cfb9095dd16a052972d173d44207371f02f9db65e3f59f0d744aa8c528170ff0ea0db9ba5320f0bf23e8a0c66e107700ea0a07ca421bf7fbc428204fe0a67628338961b19207bdf96bb73eb9992e494aed8c09887f0221bcbf51adce277f4055c5b49b28d45c2574a24582a9f1963b8db09d8d05815cd0efe5b6bc4c78661cccb5ee80e23d3553e50d67fd90f6a74f687d53c3c9c8e99c3f8c0315797a4490f373361cd9d290ad950b30b72a8d70da17f63dc0d6dc93f5b634abc4291cdea464a3067e5e3b96fef0f9aa2b1d487204e0111e2c65e14d4d3192b4e0a81267d185080444ff5323e2019b973ca6d5866b171440c2a7932036e9e0c3427c565895e387c9d1c2f6ecee694e88211248d262f86422c1c2bace008bdf0422d2501a9b47dd0bbbb309a407807f042f2b469b0aff3e948153794d184cb17fd9e39f2ac49421525cc66a248f54daff982022b9bd5dff462d0a4c05e9a05e98b34b14688a0ceedb4c799b9adeee2a8e730a00045c8827c5710671ab7a5ddcca10082a25253af0f154d64c187806a0a5724f9f21b27d1aa09e6930a2bd46e91010352cf54446daefb5682748871124536062a640b06bd410edd31cb01e97c73ad99d9c59b848020aa07788094298d9cd1642fe00161050b4ef7734ec959fd47012e7dbc33dbab508020e23838c7d4445b6261eb3544da2420cd1d459093492a2f895e517fa6e3619ed081008a0270874f7d43898d81dc86941489eca54c544701946316735b4f610203a2213bfd73933cf8d9c81d39760d1a2485f3d65c5877cfba396094a5aea6948a8b248bf8f45126c756e1c40962a32c9ade5c399c35ca3cb94304c3cce914a23daf9c612cbfc403e412b07f39b87fabbf16e2f5d09e13b07d52e5da8c86876b56715ba36a93e983fea4a98714bbe7db19ef1f81ceb13d8aa1e4a5203106faa1ffc888295cbff1f1fce853a0470f1721e2c5cf57873dee4681a8fc696cfb8952cbede15be5f62f2ce4e17644319e6d30e5fd8336355883298c4f045084facfce28aae83aef96f2cba2968c2bad2d5d7209ec9fb41cafe06cfadab004497796778d2c284171bb0bd19a98b16157afc564bb23fd5f63df9d3712319103b96fa13eea7a75722703c4415726754d6d5d85bf20b595a4d250ddb5fc009248b8c91c8b31df70a153873e652e3c7ea59bfe41ef04bb1c00e0940905e3e887c0c95849ca7594965a97fc1cd80e7cce270ecb83b165d9b50168205f88111a6b583b9006afb4fdbd3ee10e3dfa496228c39f5154d6543b9dbce43429ea112aff0fa753e21661c437e47896955078090beb378687810460003d6463ff93e504436d1afc11155131b7a818054d9eceb710198f33c8d2d6308d9cfac42190f4ffb03391b28431ec943e711caa271b1bff79eb44bac90ad598a52e8f7150e7d97de01a2cfd0ec807c8052e90405b035aaebd9dce678b6ddda616747d9899d0627e4a56752f8b59c9a4513251f5638d3b088228c9ca89b3e1b28a242b9b1887f731c7c8a4a1f2d694ac979be4d28efa42231e70ab5e409da5f96e859883295068c7b25e1c01dc7f09cfd58e9d79e5f930ad5f5258a623d0aa9aad97bda109ba08359c757e1b56947821ee067cfa9e8fedeaedc79955918f1fefa3c7d85707d6e9ccb8e3752b76cd31f4efb95641117f9e31600b99a74d4e94e745ff2bd01c94be1e2ec09ab4e973e69acfea33512813cedf2c8e8730c89caf558a46d661609b9f68b90e40b7cf30d26959bb108542c044a16a78fe0b210110071dad178ce2a9ff02e0e9f0a651874f9446594c43e42701e944daee036a2fd5205ae7a5d9b8523f472a749dc6d00b5b47cbb25958c490989e880808a7c2234faf54c9812b3a303a47991ed038befb062234c5d641edb13a2421f508bff3279f0f57557bbf2872d18acabb94a57e93fe4472f29fa0de1fdab2a72cfbb026ffa1ce71880ca75e9cb99a997c81f30ba48f18370ffa2ee6cb58dd8bfbee85cac27ea12046888c7f72c6f6c91946228a36517a6768b10c1a4b383259e6e7e257cdfecc1df00bb5ae24964135aaeab8c58c81df4d23868146f33ce1b1c8ac2049341ef6f1232ee269d969e16d5178fd42928fb903516b8d0f70b416a4e286bfe87bdcaccacc5a65dafc43ab5cf2f877916c78a5d8669eff18099b6cd7708749cecb3cf7931050d76a0c3a6268a38426df725b3d8f9eae4fd7facf16cb27df8bce2feb94c3ac33fd69cc5b071371266a557b0344fea21b50d18efd80fef0ca3792f101e0ddcec72576cea117d00ba027cf0b22ded082005b82673981b0d6ab5d756c00d03618d98edf00c9a2e15c72b27b1520e00af9061161c390f387bd05646c76dd275c3717051830983380c125af888144c3125b8edab78dcc66e328182b80e14cc1cae07b34a62915c91c5c8ccc5a04cf2ca1d3f7e5b8c53f3652c8378a90b4880d33eacf8466f4209f93a2b815badd37fa018c20463d9898fa4a209e8c891404b87d26a8246019500fbc09e08411360484458b0cd209b03ae0d7c2c40d4018c48749cdaf4a88958ab158d36662eda35ae7973d31f72ca68f65fb7abd2903b22a75266de0637ec59564299316037af9f1318ba66527a8b46f14314fb6934f0fb988654aef8cd70e3e9ed52c45bcda5652b8b7cd7dcac116bbd0f9a5a64ef1467db4704e9b059d812776c4a31166e4e7859eb8e0ac727241aca62e705647c33b396b064f13bd02b0aa3f030e1fe7457360b169e46a6b77910c32310a37a5f7d968892a3163b30dc226553927fcb14c5322b3bbad7dceeaa712e014b7941f84e2515b46ecda659a801af20804695b55acdf62ab5093f90e2e3d0ccd9eac2a95951cfb5dde3a7911cffeb5ab6cc6682199fef7a4a94c7a40ae4febf9c93f901a7d1110e06896f5b85508b779507f211de60225bee952b865c742f9cb0c1b5aebbbeee0f6816b2a7b8e0ad8ae24ec706521781fa700088996d7305427dde5c1e98bf543f55b2cfffe31722d02a94e696d633c918ba43bf3eecf0001785718cdfa1953d7fc8fdd4d74c15b246ab4258bfbec24ace540ebd6a169141742579eaac473a7a1679ee28984d3d9ff169228e172ae768046a507325a7e7e1a2586c5414bd232f6f97346c4c84552a75657d7afee957ea1fdf6721f70ccb94eb4684576199a607559c984cd83ab5451c059cd9e6affdde02a8eea151f610b43fde5d7b08c7bdfc14e106e804b22eeba6689b9ad201fe1c82b1d0322e1d3f34064d6110de609ad4b63f3cafb0d640fcdefb5b2831365a3ea151927bf19a7bd21e888161275708bd923aa3bc467ccc572f9be6fdd49ff96ac6e114e21a2f3437b325d90e9124b40695356c9121beabef748267d5377ac872b7828cd487bf9a40ea8098150665989b941a0ab1130f491dedaed87f411b3e6efdda8ddec675088e405274fc1883b85c33a08d85ad9c9629bebad6eb558c2daee9fe458f0b2d54af9c8a7e4ff32ba49e2fd48896410a472d44106431fbe1e83ff7237738488aff45d2cea6b5e5ef502165d2b7d32144a4bdac5c6df89a8e22bd444afff9d8822003b594e0e51268d77e140460da0b7b3d7a45efd392f6944f21ad2ca76cb9b4648f011addb41db40f4714274f79c617b87fc3b560a8503239605378351c4de8d601eb3a493b1e4abd2e7e053d3c23e2ed1afb820ded3d4f71ca3f823a46ebe37f4bb8f92259a4a20ab079fb43c520e1a3624508d230d9666cddf2b43f4db057eb13f17aa74d11f95479de621d486a81c178050bf99254b5b32caaa8e346a50cd6535556953f695697cef9814c3470821df886a6658c905873c7fa15f6728f893e6bd28011573398397e026ba43346828218546dff1d6b2ed6cede6996aa69121e3c854ca0e6e15f1a96bab89781e4b20c6af884fd18ac6b43a5c0fd69b9deeb4e66f1509b0d5a27f5dbc8079d50e961605eede80ca473cc5ba29dda6bba8f45c2e5061ca545fdb98c006a26e26a2217e80df67a0be0121f0b4ecfc4e3ae80bb795aeb5851bea472c04c08a475b2db69193a4c22023b42af3a91792e980a271cff20b8618b899d42b8a516a044873e2f70a1b23badf54663ee9258827a77a5061b7f030e5e1664aef31c229deeccfbdbaab0ecd292318337e220f3bbdad9b4a4d8789371b49db24ba1003ea82261a81fde3ad3d17542063f91e30cbd27002ffc419f831309745e3345f07c3817dd8b4e9aeaacab8ae423f752916387d47064fa0a0c75a2fcdefce2140bb2d005c7f2b5f121c20c162e87fa3a76c6fe1b89d8fad00ec643b675d4f078696acee688ab330591e3dd43ea4e9bc3fdf4c74857ac78e69768762a89dfca1c7b5720136004b0970e313a5a69545d463c0a788010ea54f47cfcb048859da598d0cab39fb4d4ff3719d2dce162c4fabc239ec1ad901130c55a992a0e4127921c5a01ffdadacba63b94502e13503092cbd00a0898a30115a494c685f2ec5c7962233fba3ef9bd6862b5a81be6132cd72c816a45796a317ff4dbf64ba76c3926cc03ce6fe496e4997c6c40057a864a35344d41c584417778404c0e93fe73d8fa8c1e6de3bc7f94aae889982d31a1ab36df83858b53be547a2069254b98ec2ba1b1cec5ea8e8480a4a606490e975564567e50180ff94389250c21705552bd0f6b52c82a0aca2c3fa1ddbc46d62c8974ad473c14b545e3db12d86405b2f3ccfc7817ee4a6bdf2f650379c8db8071c735df4ea6a8d8b86ea0bc09eeeeab58dcd8f853926b0a3be3158a3625c000aaab29d66f9eb11ccb1c5b63931139d96fed771c81492f48819d20fa614870d411a5ccc8df73f07ba384a96e200f526be971e7752cf19e9b1da19cc4e230fba6fe27586a24215138cddc857e85025369672e32a4103984f9985cd2a105d043d5f4e041d6e36e387d7d96bc8db1ec578e7f940514ed7f4c37e85e8f07992f7167d42b533ac6becaec69a1ea9a3987363fe726fb440de5c6aabc1d6a00579ccbf0f4b8be82f6f8e4cca157d00716d20675d4c10bc7de784d3452c49f979f2668c5fc5c0dea485c20e4c19e1ea67cbd5220cc0718cace503bbfa167304994bf5235024ec11e150b0296e82d3a60566cb5a5c98a236f2c6ae8a41419c414d065de6e10bbe8f71dc62b1aa485334ad836aabc95855e85e75d0f1db72d7ec7229274b3ca5c07124558a58ba84f5548a0eb7a38da5da3235e284b848c49927f8eb5d82712699059857e2118318e62efef3dd917c3f06d42e1fc71e274be03c214c7a110ec9c44e6a9c0f2f08c046b00ab0ed8c235b56376013ef3ccf1302fa87e74c785bab5b4f1a7bf52451c694f074b2976c2636cb36a37e87c047b6904dc0f3789eee9a22325189d0c9952ff3c00a8fd373c0a5313b2b440ce92b75e25c8e85c935063adf8fa9d54e177cc3e4bae1c308d0d448a7622ac0b4cf2f3b90f89646700438ccf03403f54b2d1224307fe6298fd056c80076cda6c00c8d82b22567acd9a1d7984786fc9b7a4a6048c705144db1c6e95952dcd39b850a71d852112863b356e5ac4222e1ec3b090907ea2ff0545cd30e61917bb33fbc0e3a40281803f3cab6b29d4b37b23f8313cf7c5081806a27083a92c4bf16c33302a4aad6f441bcc74d2c6446cfb00df62c92bc2adee6fbca7c31114e9454b27997dd300c7b5004626d3713088ed86ef4a2e5143c36496a0f03ee0b801280e3aa85542391efc6adcc2e1aeb0ea8eb5a694538a742a113d074b99089c40b9176eb1847d255d0ca6562e176d11e527bfa81878414073b249782fd5a65af2415163067f5fdf0b71b99575af0ce5e682931242e858b88a9aa9b62aedbdf6c5af6ba9fcbea825d228e91721667c640a6a8d0c19f4b8c8352380ab3142220b9e7ffa59bda0bd72e4e7a1a55f3946d4517896de166e999f1b1820e1e32ba6b4af5691d0cad7050d92520bceb217c9d15baee6af31cbd9151489e8b03149e96e3bf4f480660443d0cd9b07b863433db9d4b04ac7cafa749890cc3db9496180fc15fe06287172dc38e988d5da1efddc86cecd810cea7cf1b553aa753c926f3464ff92d0f787839fdb1f05550ec207c7ab75b9028b17fc7475b9a09e9d9cdc1772d492ba97491ab53ba310b5e6faf8a2c964925a0b18ecac1e70db9ec1bb398ff06700e404c4141f742c02a576a9d8b5bc566f3a657ce76a93ad49095af90a5978e403845c04b0803319fe4c564310727c357bf673185971a229351ce9e96e0889aea12bcec13f0619a31795f4350843483127013bc6be8633d42ecacd796542922ca9bde0cd2c4775395b6bd2fdd2c8b35c89defa454e52d964d6bac1a0ca024cd22932ab09c786c10a79570fa08c02bfaa01013f9b0e2e0b51e6dff676f9f55bdfaec5e4778f4e1f935a18b927c94cbfa8c8f7435524c98a58e2f185e73d899404140d1431681a82a4c15e4eb5073e2e6867004d46a3351839db3195bd75b637ba76069abe596c6322a523e06a38145572d963263c907890b82969ba077ed7ac1061a2c6128f6afe2b743684649952ea762ad841dd0500f088506fc960bfa95314ce0c2f2a6665e167e6f0266226a3463b61d5c72b07bbe66654a07ce07597fa711069bece4200ca03b871e85d1168cbb021a65aa9b942d615a7b43d82601591714f62443c609fe054131deed36e92ab14153f11a5603ae47fa9077cd0816491c5299427e1115a151df3a8e863231dc7c8d9709dc0d04660a1352ea1d2841788c72f5c7277eceea03e928272cabfa49475e8e052b68c579831b606d5bd9f395e00cbdceb6f7f9ddb88f908d81f8aef31a71976a470aec22d073c072c0b53c728a32819a551bf7d48f1a97918da4c3d4b7060277c37d9d759e57e8d681547fd5ca0322e7a17e728400070677bcb9778f2b36d021b71583c7ee35f4067d263f0ee333541a42d70bef5145607233455823128c6a53eae828d8227284b59855b4cd452d7be914ff95a4443e2c6f89a843b1344f66e9ceae3d90ad74c9bb9a7944d21ded922d143c63f08780066a469ecf438081133b359a80b28b2cf3e39fb84e8f5fd250d8b6506ca6efdcaf3e97ca7232ed4ce9baceba3a67ad949d2ed893c932a635b05d2e5ebc956599ecf7e7fa20e6e5c04b143db11c51e430d6f720448613db15dc059d0439da068e4793500fa4460ddce5a7cc420ef2b1668d0c58e016bdaaf0d285d20c25bc3ce72c4b97eea715bf73de74a45049916f77ae60725fd8baeed5ab128c5e24ac1a5e2ab4028f642de55a0f8fe0c67f5cf72dc97bc93bf52d9de38e3111f04d20bf10aaebd7319d46c48bd253b6d8c4de468fa44cbc52fb085b8af0ca5f01e610f570a39851efb4c8195f7ebdc93c4e169346b786190068937f65807530587bb2f46f177e5f448e4eb1556ae2350226008647ce97807ccc122a34949fbb2b2db4499d0d6bdbb72474238b699e1a7495d26f7ad448bd229e968d891d2fe76322febff7913cb2a24faa8666f035bc065c81f425b718b1103b5994f1b0d18d23f9e6a9fba10049295ee8872a0d7a3634bc6604b8df08808201ae95a8ba64c21076799dd4c9b13aa15907fefd7919ae5af3cb8b24dbb782a7319e0357d06c3e1062c9ddcbb9cb63ec1c9a8dd1f30f206b27b82801ccee15bd49b5ea53355ddc5665eafea849123de8439a0b9ac249a49477ea845e07db37a331729cd69262202e54fb9c6fef4489173f17a31914176f1df88fe55a44857f5bc7d81022113bc96f8a3fbad24cbdb1cff4a6813b09b10ade18ffeee32c4179bc2009265470aa7177d421858d7cb88ad75f2d6f94872d390f048a75c12bfb2fc89416d28746ef78e76010c4ab4a52396c93d922f83521398a35f8317034231f244d2ba4400fe6629131071a1b158f2b1403c5cd0228e857e0831538034acc0641194367bfbfe71710722ea51a31becd51e1358672e7b106c7c3dc6874276682b747c656a082a914898d12aee6ed0cc20062e8e3f25a5ed5f2cbb8e0416271ad7e4e165970a91b1b7014c5d6c1b4c199b03d0d14e387262594e8847f29f45c5c3b4f8bedbede35999162befb32da541ccf915cef854d14cc300c08a3cade1731d535747118135dc17891a5c764ea4440f21221695d3ef5e540cecc08cb2880f770fcedb58530868593b07f9cc9addcb817e95a0543cb04061ba0d80897d891781594afb371bfc96665906b71a77064c58e7c34b5ef67b4fdeab474b487a29631e01f0f74bbb42ca85e2882d4e2b4074a7b488e9224c6217284585188a8b212d43c1f348ab96a0e85a9189d11aa74db99209be7ad700fc3a61d6209e880c04c514285a513574b207dda8d87fb13004a9d4169589b231518e90bf53a004ca1bbf51001ee593470f46f061d1939c2cdea3f66b1c188d179bb032e4678187708baf8003372186d53c3d542ced5270fed4a4c2bc96f067fae4fe4eaae304cbb3b0c2c7223a2f12b6332a26e47c7af0f50b4970afbae0efa7989df67e045012d4580df7f6b5394fe2df3f8b9ec8705a0d940432e327aa57055f2d33832a39e2ceaf520fdbf355c85acb43d0fce26adbdabda3fcc0511ac30b886e9c8189e133b3cc2ae97a353a8ab4f77cc1c026326392fbba6c2e1d1c620079547cdd87ba184b2654ad7cf1138c30b1a7ae4c234cea58e27f8a10a15fe1168c2d957c8fb7188254c2a3fc36e80df610558104e879554a2d48f1b107ea4345e80c7ce289cf66cddf402599a098db240ae061a44f517a6e47deb257f87a0b5f13ef00860465e81b7c4370a5b4cc8e4953fe4058d84ed6a526a9b27af616c923afd58fead413fe1078022e4f2d22dac9b3a7551400d1e2e4a032e34a849faf8f1dcf342b0c4d970646667fedc971e82f20bb9213374ae2789be82a8926ed69f832fee6532ef35bf99ea78f4cea5c1858bb84f43cb24e3c0577b04c74a612860bcc9b0ead9bfa2a5d86343eba93d8268aa011ab2a461c28c14b4e2e025238bb6fbe88783ab68010b06d61e7282de99c501f0b388383f68a9f05f95749ebb671c16bf4b2d439b5906cd8405c5beaa47a5c476ffdb25453414e6f2a475cfad8cc3e3123dc508f9600d39e7875b30659f82266122bc88d34872a2e685822c1a234fc1e54fc74cfa6231d55fb33050e755d4723fa317bc1e815f668cd5a78cec4a491dd7fa787301e2c4ab28085389245d5915fe8dfd8f44e808343b533b2a1f9806b01042507531648562244faced3759e38ed9cac89e57a5312bc93bc8687c170bdc091de915862f162746b76cf9de929d406d96b29f8be19a6531a9a94e4f66ad6b238ac5b396b486996cb584b53a97a853be32801a72dc29fd8709e8475ede6352022a35e81a114d41a3450fabc9af089a71d8b9bdd70e056abc69b436c04df290430bd7e3dfee88f6a973225375a230222c3b94b79a64d352c795a285d5029672877f3915466cb8e245a4bdc35273669e622093001858ede89b512773c71919bc5f9558ed029093336947f18436cf3d019136db14cefd810bb415bf960c8e19ed9d7db3fad8ad90bf8ac5f92f6a12fa4b4b156c6e6a3b44ecfba288a978b409c2a825ea0129747319249a558be53dde016f0a2d465cb85d3134669e8ccfac3f288cf22dc8cb6e03291d033f2c17e920ef654806bec13f0d1b04a1670691be665936bc78e9d09395386c59774dec0028a41c95a98001cfd3e4544db892eb7df60f9885c6389e595492c354eded87b4124746b9e0e250a48e16c0be743f024130f791457edc8caebd29a9b84b43f824de1f20b4676b6463d4f4b99236bf89f599ec20f0b17c6a8f8f04628837bcdfe21a794c252435567ce45c2728807d72fda90fcf205f0cf4f442eaef0bdf8f047bc755716a8f0d216d80de38d3221e1bff7e11a7fda5fdcab0af818b39104bcc2fb5355ae4fabdf53f7b1b64c6038d8b9670862e59ac2cb4c4d4ffaea98401a84fddf44b32e9c4f7cd9beb83a19f684346814d909318c24aac58acc484e097b101b4ed00aab1d8245780d0dda4030af76ffbec3f764259dde0d9d9c4b247bafe21f9b0c1282c92b70b2cc45738a0a20e3438e080350555eaff6d959b5b8a62873a87b45b0a521c30e59e431c65be33d3034d692f6c2a2fbd899449ee25dba405a202150205025e2d4c037348381a54853b9aa524a32a3b35e00e594823218c354025344994593aaa74483b4d56a00eaa2354406b824c018387059d2337b26c5438aa197b450b452f8b0a396cc272501541d1461bd50a2a11648711a6370804479831f08d2778108205194c50c16c948d8701672566253e9df11b5fbe11e61b23f8c609beb1826fb4e01b33f8460fbe31041904331ef21b47f8c613be6fd6844d67e154e081c90146c7e3226764071892cf63b261e49c8dcd619c29f062b3cdf8b3d9f2aeb288bc2158783a30de8f2f9e91176fc715de8f155e4f151e4f0d3c11547833bd9d57d76e8b6be7646b9764ca6e4aca2e8a861d90283ba41976425aa3f832da7636a08835184f5238d9e534d9d1300193a12b062859584b8c60f1943825f18164e80ac88a85232b544591a08aaa3192a50895a91988640da9927a0106a8179484f0e005ed6644b10862421724442e880ab82a50343ce9647012c79a48d35995e38b4e0a8838d6449a2ed7348a2fa34dc7f443ace96e4c3a1d4b3a1f259d8b24dd091f3a9c1e3a19a4dc95a3dc14a35c935b0e49518e088f5c10a25cd350eec8855c0b42b91a2de45eecc8a1d0911b9123f72108f78503c705847b7203a7c406ae480ddcee0757fae07a7c34702e7c3370373e19b8181f0b38155f0c9cce070307e27b0185e5eb81ea7d2e46f165b441697d2dc4da1216542b84acf0a4222905110a1c3c324eacd8812a6102caa64418891a74a2e4c430e28808187070374b218a6c72d4d000d18266e7c3d3cdcc9307192b9f07299f0a4cc2aeb20cc1a203fbf165e4b5e38ad30f5b11c79a48eb216795f1c589876b10c79a487312c120151204411004773603411004c1d9749ae9955e5de51673954e78ab4cc253ca29965246310d25108e5222f10ca5106b8de2cb682b6df08442ce39e79cdf9d73ce397756c2e02762312ffa5241f9abc79b7f20918ce9be86c0d4e67d4f8a6c3233f7b66453a4d5ba28f853213fffffffffcf39ffff9f73fe93be57453641f0ffff39e7ffff73ceffffe79c5fcabd2be41cc1396b74ce39e73c9fe79cbd2f19a594d2cfc99fb3874566b3404f08ce921f99b02c1e5c4a6043369b0eec03d80a98abad215a2217cc110511c19832ab71f2de0a8bd96ceef630a5567e444a69d129b5f24436d9411ce70a1da71b970d0f592566b011b344545c2c81ba2b4b5e46687c7706a073b41dcd8807f43233f3ebd63d68404c04676a85d2358ad4a34a7aacb5c6fa4844c2dd10abe09d02204064e68740f222f98b6434c76a1bdba8a7de85566366fe7ef7a685e688cd4d939b30a72121bda2bd9189babbbbbbb5d6dd35921105a0d5c09b5601e2d6ca37242dcbccccbc48a0d1906feca6dbddddddddddadb5eeeeee6ead757777776bad5b6f4ab5d65a69b590a8939018000bd64d911752259e5cf81a829423ac2e474748315a425ae5b920050e1a9858ad403305e688c637878422ecf1c53676518801786c16aab5d65a8bb0be3c6a70a967e6b6f1d62b0356045f7d6aadb5d6990488bcd65a6bad3bb576d083898c8a2632503462aa10594b6ca833b5d65ae483ace1cd03300021596a22ca92015b0061c54765a2cd590d1738a2d65a9999b9f2186a9960586bad956bad3c7ec83a82afb576a8d55aeb4cadb5d6faffa5dad45a6badbb5b6b98f936a346d940abcf191921802894999999524a29a5fca532e227add6b429a594524af94b0b3833333333332f7f29a59452da4d29a5f4fdee2f75611933a594f299f9ff99f9bcb4fea3ef7ebf99524a297dd923e01c6de0511439c958ee8683ec30c2b44d08819e29508482d4f040e0787042512b9a622865aea0f6148806000aa1294b645cbce0f5240be044092d965c9968b163e784535996655996655996655996655996a505534b6a76747ac4c829755466c81632a6eb11a161ff4134719cc92055483549da3145c70ac80737469234d1f02a820236a1e020e86b2baac9ca0b273f5a306da0d59608583261a7b5a5034b5317d1d20b4a124cdd6c98c0c27ca45a68b52497fd6ae0930eb0626af1046548e94a124c3340d4affdc71e7618031ff6f6ee76d82d7c90ccbd3dbabbfbffff7777ffef6e9f8eb24146ab01f59b0066664e61c68da421228646ec14f56006022302d380d4d2221624a574b7b7775b504a412492522824fd7e774629a594eee9003bf97fffffffeeeefeffffdddd7ffffdffffbbffff7f7777ffffffeeeefffdffffffffddffff6ff8bbbbfff7ffff7fceff174991efffff3f04d26ae0086666fe6999d9303373f78a9695d16add352e3bbb659904b35691293019455a356e62f8c8a728488739c8c6c06d9eca62339c146e620851120a2b92a2849117109f1a2537187635329ea47862f6e625a2c998ae57f4e503863928e0c85193e5498623ac1b7a70a0b4f940e5db2008488b05168d90293120ef03511345e787e6e605d4285352a344523256daa8d079932c7237c49655afc7029031a62d5dc89512b5f49485ccccbdb4776ab4fca3d54eb00ae6133d241dc1a536a8d1d664ccc90413d96184e1a9390283aa173ca80f3d233ec4549dd89f75a82c4951c4c69132870e0e55343a131c899142c797d05553cc6b08b56ecc78d0e08103e69df4f9faa41bdd8f0373687b3333f3d486dddd3834fe46db08d3c7197b29c894d6b0c96886f6fc389cd2c2ffff29a0fd16369703a5d5684d37272493b1a65b12b283384e26e18b1026180dc1c53329584f3880aa27610c3e3d833b43422c24b292b11f583a6490c9bed045f863e24437f3acbb3d54c1a9b1ca99da8a61c7410477773773778b80649395a5070aab27a6c128b2bb77b7bbbbbb77b7bbbbbb77b7bbbbbb77b79b7a2bedeeeededddddda6dbdce2e7a4d55aab007091b4cc16a9b9996e73bb7cca98bbbbbbb7bbbbbbb94f7b79ebe7eeee82bbbb6f3ef3ee2edddd5dba7b6b01a639e0c0d49e74432e2573ce709268998f0bd36a238694a400919294c4c4151884cb4a6fc9e4351219fcff0f33a9f3e439658c5bdaec4a42655d5c1ba6489b5c5d736d5cf667dbffff9fb61e0b006636420a8e2fa34dec0dcdc4f1f41f6dba1ed30160618d007678c29c9c2c613076e438aa62a273a169587f5a2d0704225c17cd968a284a319b3b7a62f4a36577f706b9a0511133a594f22e9f4f29a55c038c56a8b46a397b02041403331b0c0014c56114c518e3580314800c22947498ec4c281c0e8b83003818120682613018182cc0000c02310843321888e1a0f30d0062835ed23e97ec7db63c4014222f35a1563b92cdb1732ca2b748684a7f4c5f28625afb111d67e1c1b30891c075eaba17984d7d4c36f0ec9c5a33afa4c73751059fe12a5eab22ed878bee191639eb99aad5c64ec55f622d8089003ca0d5c4a08bee144cba0b6ba9a163547d3e3ee4ad30c96c9779f72b8745deab0ddba4e887be68abadac6be417a7e575ea0d920bc643dcb78ca440c0b327708d7e1b681ba69ff55ccbef2ef2d2ea8ecabbd1d58b8b1cd942c6aab8417a874b1028281a1d1b96cb0a7f624295e8f19e6875b6483f84f54f56aa73d02afadf232e264c680cefc3a455e1a60e2e3aeac6bb7375051f3a171185ef541cb23f69c63304a62c1af7a17261f089bc14153315354d00c79c2ba18e6e054a4cb91c2f8830c408a58ee85c673f28a5923c6896d1bfecc45adc5dd0d1bcca39d76dd5404557d083ba55f9cc533f7bc15f9fd3b9ee2a359a2de32c096cd6f6ac3bcf587291ee7bb29c6bcd64c9d519c9a2c4adc7762968c9d5a41d9f5eded76fca8d1000b4b15484404656ea08f95ce21203dcb3e1e1612d671878322c998400c7d0538030f52f1eec4158bb4eb0024fa7d07d772837c0231836cb0080a015a68d578fc569504546e2cca6688dc7c7a8b066a027b07241d805038d6d18c1424ba0e4ddb123a03f47f1d63a80971e0b1bb2d4c64cb4c35a86dc0a41983cf21fbe66257f131d97f9bd03aa57a70a9ad4ec35f094b7ff1a2bfd098322dfa5d11f09913507e1d9e57a50653af16ba1ef4f18729ce576b4bd238cf4a48ad2b4f8269ddbb04238732334da53d268ab71a4b1f9199438828350ae99227b1edf026a3259f179ef814318998ddd0efcd417d60efb5992e6b04081e0ed65fc8e22a7921bb97ae00c7d8cd5150307b690fbb99defbb450f3d46545d70ea10f78c5e06c8ba4d1a840d174db97e5a2098beb82a6af29eb24b14671a979ba18d81df85f61134f54438472c7da570407f75602e10b380254b964adc200a56fa12c5533494375a8d763a566df82200ad237e8844f6302d5aba759a2e09c84e1600f568a7491c025052d0e0d66ceeb1c30d409a7850e35d5154a37603d8605a440c0f547c0518d67ada1d8cd8425f0f11fa997f336f1c83435e93e2de2cb840afe2f400187ef46274698148c91c6348b0f47db8422cd771b269b04a2cf679b569b0d20ca27f2e7e81cff9b00f6cf68ca78983e38505f9eafc5df5ba29af09200be968aa39fabb430f4c6223ea37670c0fe59aa64428f6b4ec8b3b53a60744a327e3b1fa7b42456db3411b334204d0230a47f2d1ba54080b9c8abe8acae739726e8b30148f037ed0a00063933cb04b9971fe8d9562e8b781915d31bed00873be037ba012f8877abe9f950da315a79cfb6fcd4e882363f9f17f11664e9d468ccf5290ba96cf75bd084c39f1459e94265e57055c860c30d0ebe4293d2863b45642f330888ee3501488240c9c345204550b50fd578fea6725999909fb3c36bdeb6b1079f230b0fb0eae58765cf0ca16924dc3f0b82e4d4b578d265ec651645adf17ed3ef0f085e13128ba20433d547312e44dc7a5aa471026dfa71d39ef06e3a2aab8137417ae4e291098a9389487b5063a85a0386dc4ee2802e8b981dad05a8a6c011d99e48f0dd3b2544c6dbde2d76bd39856bd70c8170d45b8662115b932d117981173e07666489ccfa0ad3698fc8edec15388283e821e7d95db8e4d54c30484648a904178ca898b1aa21b28ef486550962b5375f24b122825049de5f7456a5e16ed5862ba20cbd1f8fac182f0fcf69a41697029ae07653e82f15d21002c8864689fc25a3c8d142a9495b2c485da4672fd7591936e33d51c6ff2a1d462167616f356ea0094d50c23d0a6f2b99138043e4b2f9d3510b455ecfcb58c02e606e361960a7de0a31a5133b383c0f0679e6aca8894a326d42c4b1e2fed745db95cd4d888548ae7eb2419fd945251d10b21a9917a6b95853a8e50baa312c873efcf9094cc467ab8917ccdeb8186cb81afa95733ba41b893c731ee1fa2e6f63f52722846a9313150c0b8059bbbd2fc87e26b9a82bdf9d0c61f0d4a4e683c0bac9bbf339bcc015461f62ac695f42805db7074e1c67bc54ff9af1dbdb912abdfc25360c44ab1e7025e986980943eee65df71e7109b1aebb5ec184c1ee3ca56e2d7e97596ed46580c8443a9eae99dce1d431b7a6abbff550a788a9fac74d2e118e841586f4f0c232ea27b495caaffef807d4c61a00b08e9fb8d1b052eb9b8146c0b412e3f6d77b263dd67eb6802b2d9e459d523edd683c6f1fa22b9d54849dd767039daf039b67612b108560a3811191f3bc853ba2947df2dac268897116599545bbd5d003524521f7de9bf1af5558a682d70f4b566b493c795a8b690a72bfcd05041fe3c86cd02df509ff6a3f4e3bfde1d93098cbedb86d80ca414770dd206a66c46e81d49269dcb6b85eea2b4cbce743f261657a5fb02a5903dc3304412d0a5bc2e5017c93394f5631fe1a9a3b74381a00647704d3008ae7b5af35f677c856bb9ca001fd5d42f1ec67a5f05f416359edd400e4e2ae5305898507ff919f5ae31046a3bfef7eb8dde60245072b3dc3e7d48616f9899dbb5bdf1c7d7405bb9c405b6f4b74e9a9a858438acdf8fc2ffe6f6016fc8b92318a098d4dfc5560e4ba9028d7d2f3eba4d2f2ff13d48a2d2da0cf5a0c9948a8d01dfbf8ce9707ab1a3c46a73f09d26a8578e361a502849185280fe8983e7340dbd72b6d580d244c08b02346287766e1a7d6514a281230137218595390ee5ec34baca2c4c830e613e1585e57290e0e6d8554c617a74f8f8841c57ea507bcd91aa9098c2d8c5bcda2b8e37aca8bdc248c981b507d90e23fc3f9a0f17199369507a841bbdb7a0271c79ec6cfb16e45c7dae29b40c3646d15c9bf2ab671cf791f4d8f09e5e64d40db95d29e5a1cf80323daefec2b6eb20e140c1cb4775f99112ce9a1dd1a87b7331a9afeeb3c36b08abd20467b7d0c305ab4318a1b361948d0b37193d16fb8e4f74a397bbe4edd732e35ad51e7bc980ca1e532f7581a171353326bc442ea789512d8e6ba24ea8396cf8dc2585ba94de24d07f8efdab0c31f6f77ff9718d6a9fd266506549a987bab800b9dad01427d0d3b936a20045ef4702dd323ff85c178c5c153e3f23b90e0db6c1ce4cd94e292e0e79d7b9f9793f2463232cd13c285f69e8b1f90e117f3e23a63e3fae8040613743d410542f31b61a40e9eaddb8191528095abb928bbc14afb75703674c110b5ed8c83f29d2c8873dbc88534b8c41e4f1250fda927a0f790be1985c0db1cabf2e9930ad6e605827ed7d372fe8c0e35d53131b291d1c054c24e87486ec1e05896867b13e5e082725d2e952b39fca4af3afaafe44cbc79b84b415feadec878b7c4c3aaf1ef2dac50efb9b6accf3a48cce97465af8bef2ab1c8a2bddec497d2f293aac3bc7007289d732369a9a3cc3c82a403e82d0728ff72511c3b9576935a55952c4ae395d647c4329e6c475cd263e66c8ab0494c6ed220aa296b7c2cf07c08b2a86d8a4a493eb0aa084896d9629d858fe3e775dcbb6ef8b2c10cd5dd317dda1000fe162207ccb7bb7a49fc16c43aef0fa80a6249c7996bf254891154a0f4d4d8db559d33df5dee996804d028405551939aad37730f3810b3e7d802901cffc69e9c3671fdebd2d6436d7e577fdc31848dcd30765e7521c91071864b93b3723e1cc9f2abd494b31901513098c0f54212f16353fd65dde78fb503c09c4900c958f097f85ddb06fec92fc2d71f1907352f1b2a09844d5e339fbbf41492f6583c6f6a6e015157d5885548ed4ead8dba2f0bbd47d9845d85cdc587a1fc3256a994e37aff8c7909d554a031598194e59244951d2837c40f152370dd920183bcd5ba5f71b2e5ddfc679acf43f98114ee5d9969be31ad73ca154eb3d7019d20d4ff00ca1ef359c6c855437e61b2bddc781af5c3969bb6bb044f8278d74a3157698751ad8a3a41ed19e1a6f6ad89435d0ab969a7ce13e52d8e10477691a59af2cd5ab2032cebf482bc4481e49a42e04b33e38287be0ae7b2a46b50d80dd69a122d7af278e2dafb0ae4255ed20349acab5e93adc0f115c39199374b6736e35edd527ea891ffcaf633acad76412318057257ec32659da74d170e5d1b8788133e0d1d96bac7255766fecfb64cf79913ddc45108e3f208a18271a347f7c5d35a025511edeab26e09b0fa2fd95420008c26103e2b6f793f1f7cf8cbbdad0e9a60bc2c11988977588c8d7b7d34a6f2c515a6ba3c361d41ce3108ebc40842a9c96ecd00ea1ee505e161dab39e0c379367e0bb3e60768dc4891934c960785f3882352c95118db12454232cfa474a875c0f4458c54de88e55d35f7c0cb70bc03263514068fb73c7c4a28dd3c4e7ff15d664c6ac0bfa245bad4a4892ead854ecb1c7ea0c9798b3c2b36e292f18d985f1432ade8554d8c6f6be68ded476361adc0b14d41a7488b31df4577ba27ae4fafb749d665c53e8d5e2bd76ab5a7782c621b65d473590e4a220e3cdc14ea2385a9459998af3059ab736ab8e82c4c9292f4d61a4ef95543e9f28b30f0d72c4c49a8e4eff2ebcefed44447c111a32a07dd4198ee54c1c54fa9d1619c4ad18c86db2f2be140f3eec82027b4aaab7218bec6981cb6b8728c6d9e0c9bc613f5212ada79a6e7c889671a0a5f2797a3ab3a2fd1e2b399e91e59ed18ecb4f9c391cd48d79f6a6aac31368f2e7f810e9ad141d2224bac18fbed1ed3c47d8a5b27b3dd26d765d3b392e3d6031311331f4c48d10094a0312acb2701fb923c12e8c49b82fbffc1ac4ee76c0c8bffd0a29499667cdcea02f34fb70d301e0278e551efa24bb2a0c61e6d193c449584d7dfb015215ed8bf3216e09268e1accf1a62b57781ff349a6c6aedd52500c2ef58f25a28334c030067d9265a5240adfe0701707b239201f66ceff605903664711255f709e26d3f89df5043e5de2da750589e7f0c86b60242e5914ef8db785fe28a7d52bf9ffb384d4529a2722ada674a0c5d933211418274542573c52f0b10f611375f7a0a4f570915cfb8148d8c39cfb045a02e5bfc846335a03122bea182dbd1a3ae5b4a018e3f29dbed404c69e3d3a040335b4d5705a5f44e4114ab4a2b84d9a411be3afde6e77740ed90e7f507724ff2bda984c4f35744bcef0a5fe0a1db98c0ef9c60bbf1babac7b8425df038dc2195619e9b814c5bf31df165496d8cea5a607f130f35db8e7176b7581b7995b9b909f19d2bb1953be6baffb2fb92fa7ea60e930771c9e14acf6ddf4d8f2320e988f2c8d9ecdbb251f505e1ae60b2a746cc9dced08e45f894ea59f0081637ac4b735fc90f6ea8e60e13821e14853efe0e54e7fa512cce148ee0d6d3482cfb38aa34586dd6c1f423e3828f2625c0fd1a2f142edc0bae6c1e64b3d00528786010042335a75685b0a5687c114512bf9e69bae4e09414bf5ba33418caa85756701083ef48232570be75d50b01c59ef75ed505b64426f9e51f82c35681f75ed21ae936e7ae92a6857caa16da0a9b7b31a705ffaf4296ecff36bae73a300c6713124c72d8e531cb53cb047a5bedde952268c82ba8653aec0391e115db9a037c6bba1462435ceb368a9d5912e25cf1474b2d48f7a07ef7cd0b2f365358ea2ec8f8230beb956ae1f089cd5715480cdc5af092e8b59e638e449c7ff350f7b2d9e28f2a0a7db7e0e8812a547af8fe85e5430b8c83d0d47a10e97a5433e9183c72d6eb60f7a3e21d1306958fc37198076163d2f70ae4ceeb98db1fa084812e0c673af46ee7f7ee3a4e6c560b8425467c2cb30edef8c6d6ee24718e5cfc0d299eceb2f49516e3098e5725e528accf05e787891546d4426553438d0796af90b3b6facf8cac0fe9d203194256064d8823abbbcf617b0003dbdf4bb40455d305ac549f0e2982cb9912936d57030ec8f1eea79e1101d1e9f8ba74fd9ccd9f0ff8b285b208ef3c760d5ce6f8d7258a90dbb3fb5077e633119a3b44764acaf88fd8143aee599a1b6734a16fd4a959dacdc530d43864d966e546c032fa79953c267b67bbb7c746276a3c8ada11fbd808ae158c47ebfb0238b23c2e6fb0ab048154d5b56aa592b07b189c69cbc6f6ebe5e86980364a22e7343f884bf866795a2525292f3d75dc195a06e65a5903841b7a7debbcdd6fa8f882cc12fa45037c29960568e9050221963b7a3887ad8a2cb7564554ab35623aeaa8b8c353626bc46970b08b1e20688cfdc983f048b4c0a314f1a0da238f640816a900ad35878e469a6703d1f3126db560acc430e378821ded76618baedd6ead79511cf82c348959cb758fbb300fcfa428f1ab3be69f27a38f1e671850d7794be4387f45fd473b513259cf84217fc2f891e3f482aa24e3d06434c9356f5071a7e0c9f606ec0e4852b82ae27cf4c7326db83223bbfc138eca7c2e2983eb391315b8a997c8fb9be2b102f790743731ba9ce6d91eb507645993c4aaf06fe95a39f4ae624fa2ed74019eef59bd7f2afb7a3b6527e3fbaffb50fffb377521d5eeaec3e39b1678f781af863921c5438ba67b2756a46e80da2d16b1ad235608833d4a613b37d6fb8dbda66297abd8e68a1d42600f62d89e1ffb3d612f49d8c53eb671c50e21d863935e2fa57b4612e8fde34e7f8ccdb7884d6c92328f6a91f53cd8e723769db3c5cd9a3e1b86d9a1647d9e7dfeec9ab2e595353d1b84d9b1ccba2cecfb03bb4ed9f2666d970dc3ec58b23ecf3e5f764dd9f2ce9a9e0d83ec58667dcebe3fb1eb1c6c7165adcf861bf0ba3f4a40525822b489b22ab1aef9a999e10c973d3036d4b80379a56ef71f656a42912642612dda6ab4b94d5f630fe78a0b6361136d6cdf8d0da262d3a2d8ce8afd7e602f69d8e53eb639610740d8833cb663c57e3fd86b0676b9886d7db04328ec218dedb9b1df57ec3515bbac625b0fec000c7b94c77626ece7097b25a9d8aef062e3e6179bced2d877556367ea1d9b6e62ecdb44fd7a2933e1df81b0eb11dd9550152323ad8439cc8c60ebb241981d4ad667d9e7cbae295bde59d3b36120ec5810ebf3ecfbb3eb9c2d6ed676d930cc8e25ebf3ecf365d7942deface9d930c88e25b13e3ff67dd9954f59f7b32c16b354997559f6fdd975ce96376b42ff752f501601b2f77ba4bd268cc8e9e3842925ce61e747ec80712060ff20fdcabe3329d124c54cde8cc408b2164f44e1332aa76d2cc9eaf982d2a66d07ab9593b06fdd1abb9a09d8b76a8fdd9a5cec5935c74e4d31bdb6f65e7000a4da7f807865d39d8848fa664aa689c408b01e4f44e1332aa7e15a648afb8a8d05242105dec104230f52108055358d01b0aa0c0266625bdc62142d83b8ddf641327fc28aa5614dd77500d5db6f1f62f819e71d43f5fffcf5b2c35e13865c6dd7dc8a9de7726f071b112969441ba9c3ba092d697bef2de5de5b4a2965500f840ed10ede110f89575baddc43aa334f658b58dec1ffec986ef2c292ed42b587a41255220be08ca8742d82c43a8bf54d5f0f69d76879e9f9d4747a2e88d25c27f1a3b84f628d4867e24f2fe5d176dd3defc9fe01b2ef9694ba2a774775b8c31dee70d7c1e4ac4bbaf73473dd3495e79e4494565b52a5684899ceee2f8f3ffb7b35ddcbf95b1e371cf2498f290f219fe42e5b2a13ff4dd094394f0f01cf81ba877cb263c4a50d50ba4b29af8ecaa3cdc6fa258f779ff4286e17da9257dc16a2eaab6f4b9af7fb4aff4aef58ce01a90ea462d1ac058067390bf8b3f3e96e45f56fb9dd1dd98769c4fe76d00ffb90eb0f4471074da5f40e0a4f5610e1c183fa08eee1e5ce67ca73a3b2dddf056788d25334a57ef316e503daf29674bb6cf769e3701e82669ff408c43efdbb6305ea5a40ac7e885448a211d863e836d998c9a8aa6dd4b77f37bedf0f7fd9a753bdcbde65d8e91cdd46691c343bc5a9b257a332ba5ad1de128cc17b48e69c73ce1312afe8fb112aa393e85e515cadc62d893b83181ed43f3b293b38e3a00155b4e70d9941f43e7a5e6dfbe0fdfb967dbcb3b0a631b7ecdb9246992ab5ddeddd76551e39a0913b426943d09c4eef21f1b890e774ca76c57d721fcdc6daa7bbf77ddbddee9771d0ecfb019afd691f7cd33f20f6f52a915789bc4ae455224f0bfb71ab44495138204a4b9de2a34e22fe702a4f541e2f6e49e3d53868f6d65d869bf7230c223c77ef4783ffb303865cd6ac0570070f6a23b01332b0a268c708ee608ed462e3ffec8c33c8c6975d74e7e6d047b371d0eced7708c7e94b6713c8a6354b2afb017bcc9f558ff9f3f5a016d317c88096409a6f7bfd28a24e3abb8e3f7b7aaad7f0b455799e673dcdea11efbd86782fe5e2e981e86e4abe20107abc283d8a273daebc4cc4ae74d72ce6f95af3ddc3f58ae23d0d6a9a9d259dc9fa8fcafafb1a75d690a7eaee33acf535bcd7ffec8a7f7959b7cb8af3aaf54e4a2abfe991665b2d25d2f5421daa43b50ed144efb29ae0b79caec00f3289a690496416d9b8681ed97822494264884808c8a6f844d49aca62218144dc5c84115368faa032fb6d77d9bb95fb7e52c4200ec110c4401b076d23a88ce21d5f11b41be23e5b405026f704134be8884c26ec6ea8d650f12660ee50a12588738f76490d3eaa337a3c649128edfb91ea5e294449653a9ad04749da5090b478327f18412164d33359a2a446c5d1a6f420a5f7926c7a1a2096608cb933601c343443d07c5e9e425446bf21256a65142f884384be13db416b62a72782d2b6793a7d6c4a858ca0353469066d0a5a222aa3560895d10fd06c9f79f022d51945bae10d71f8019aedd1e07c81d878a4b1f338cfcb90e5d27cf888d6482f1061256528c235fc0423e1287809762285b0a66fae3e439ed54d332ffd67e726519a4ff75a6bbded3a0f7b165b4ba16c7b9feee1553eee58257cfd9042d003b187b11e55fe6db5fbb87359ee55969bc33f52e4fe2a6853ac8aca7dea6bf6b95f7ddc8e43d65661addc7dea6f17d6d5c371cedf3ce2d8c0ec83effdc31f07d6b0c6ea57d7b8d7233e8fee3af576e7b229cb9d580e52e23b46568fcd3dc3d5d7a9f0d052d7e1237bc3bbf7d0f34cb9d47561d7655cebbed26d6880d0933550e32115affbb70447ee729ef7eb71df417b6c29b3166032fd67c794e54ed86151f4b810bf4669183cf78f0b7f35b6fb06dd1e67b2262f88ab6f1ff190178221a872afdea4eee3cff6ba97322c4c657c34c3f0a80aa3a46d1f3ed9f6b0e31aad71920bc27418ec306d040b87077e210ef047088237bce1ca3b78cf21893e1ce0fe2df1914abc0e1d55ff40d5f1c1f0867df8e910b4aadb1aab7fe1bd1c82faeb0e86f507a2f76efc4e05a5f1a01cfe37c154b6f78635f0f7677f5881dc2af13bae85a97f291b1e346263d5439be756e51df4462a752fe449d100f1bdf01c779dba57790cb5c640ac10c78b1404ec267dc4cc615d963b3cae5d7c44a12076b3bb9769e81df4bcebd0b9f111a6627f7aa45036f810ac2a1fc2c3bf3cdec36ed2ac05ccbcf49236a2f419dde32a91820f8a7678d042df8979197c986f7807f53893f88097f6abe192662da074d34db8f49f1d9dea659f1ca62eba88b2bdcb5dca724786372e938d73d43d0485b2f155c943667e330e0a851504eca69bf411a6c3b42dda2965b973916acd8cc640f448e237c194284304cc1d3c546754c8a68fe1a2110f99b0d1a6c740b50603a9333a622cb4e94d4cc4f13ed9f4b4f16ac1a4a8c912274030144a1b6d90204a1b2d910f4aa3aeebb74eb1924dc5fc1146b63fe2289b7a409bfe245e2d28ed22b94f28ed26d9814b06ff4d2988f2280b27dbeeb11b62b2893a219b5a1ae05d42ed727778a3580303effaf0f843c40e4769b45d9f8ba90ba2a7f1e83a0e1a9e29fb0c7b68768c3db6dafee3389873210fcc7f8a640db76a9a42d9391fe18342c138042f716c4c441d8338fe1cd9f81469eb7b190785f2f202c4a6099f6c3074ddcb386874d80f0a591079d80033e4799192ba4aa4f90e3e44d06c7cac7deebffa87f33d0d6f80bf0f7188431ce230fc8769b637d2c87bb5cade7b677835abe7fb7d8defd75e8655e4bc8efb56ad55c759fc551eef5d2f000b1ec163f0e1652ec72baaa754f7c2ecfde6390fde6630bcbf4c66efe5efdc57b9dfffecfbb97ff667c17b2ba7f21a57dbffeccfced577ba552eafb24a06c70bd6ee6620b6bd9f7ddb6c1ec14f7dba4204350e1ad96d7883e558fbb0fcd33e2bc7bf1907cd06350e9acda22d95b53c5cb9eb3be4d16e119f863d2bde69b4a532511b2075d5656880d4554f79796e20cec00e55e0bde3941e8fe8c02fe47971952ad423ea3bea4ed1e3cf56e994a35e75a82aa71cd7282d45538c5547fd53a16e20aa54df37c31e6fdfcb2310fbc7d40511dcc21e7c7b9deacd8e3398eb7ef1ef45f601efd554ca767105cb6662b05a0f5e06638c377c9909babcf8f75570877bde31c6a992091693c5602b11db5c15efa1ac9b975a69a1319de5b1cf7c45a347b964264b3a6bd1b12ce96c45c3b2a433518fd248d2598a1e6d367e2977439e1e57d2936d4f4687ef80b1e63137f89ae5967971d72da87d5edcbeb83d98ade538189e8ee3386e7b0def5bf7d72ccb2f36ed7d94d1ed7d1f05bde33c02b1f1bf0abec8e0bf09821a4605415005d4ac1eefe06b7807eb69461a153d8a1b63dc659b1c1b8cff5d891f62fb1c3ec117596eee67e37f53e26faf8135015836e4c63c58af3e43ac593dddc1ff6c1ae2cbb05e87cac48dbdcffbed5cafd9c60f5446cf65218eddd0288f4439c317c1bbf68b17d7a92fb2cb55596e1df2f843b45dcf218f3d90b6ebb33c02b15d28fdc30a8e70c823d3538c89b90e95c5601a97dbb02765bb18956ea21fb9a40d24b4e95b4e62d8b16c6b74460fcbf688ce8ce88cbe942d123aa3e7ca20da25f41e689bd4190f4427446c9758263608a5d9265446c5d12e6101b180d3296a4f28a88b3c7dc2c2f33a2049b5c67241cee8c1904406a12d367d92d0d0a6b423c2b209940e87f8bb560a233224f130f8ef0e0119ea88286dc42e7888d27e7a8b84d25e07876c940df3ca92ca34985d0eb240d0ca279820daf49bd00f5a23a340a2474f9236b54d6cd2a6409bfab04f36b550363de8e1b087ee1f6650db823856a12a547d70dcd193a3ce8e33c82412b2893ffd529a78f94fcc97caa84c14cfcae2412fe532e4d96c122ac3f888ca28151269687bc7540b22be4ec548dbfb8044da58fb7cafffbe5cff7dc7f9fb47b520aafcabe096bd3dc31adede8e6bb4c31677437adcb1e15ac6472c54e8506b44699b96483852fe6dd91a658b240516c9a6360995d11d9d05351145d018f49eee8624920e1e8c6bc80d1e1fe7309fb0105f810d6a0fe7168d8f766c9b45e35ad883574e7f2f1211b546ee5cb11b9232940e692a4465f4740b220b0c7f5421aca9186424d4dd500784c618b725e60e3d98858800955169bba1d23bbd62722d9549a48d51b7dd5037a4c3a2be655925d2878fe8d0273f79234aa33240d9728a279264b634caa207db2e91375c90353448800c010a3760e20a5076e83b209416ea6a3bcb591bfe0689e17f5c87d68eabf11d6b3b432e43b1c37bfaee07b7daf752d6d87b6b97e093c8b2f1ad1e575fad210f0e09c5065f431ef0f888d292ecf0188f3f5b4a197cef5f1e438d4342b1f13d0c84ca28fee165bca1401cf1d0a6ff2ce8a5ae432d124a4b39bd4d82ca297affb08223cb84caa85d4265f4380be2d80d6dfa0ed79f6d8a2542f6c76a5610a6976ed22cef2b48768c5841b2637a09bf03b586eee03ab4b1d4a62ac40ee40a50995df20447310425ecd1226d6a97546ac5a03934defd52967226430374db488ba02ddbd2a80c49b6933dda1ab38b1d86fa848578f7387fecf0d2288b1becb97f36c620fed77d7a2ce267e31d75775acb6aad37b4e52ba507fd01ef148a01ee3e0f73366001501b2e13ab031554a10a5297006ac2bedcd619e9b82aac0c8280b0837a02290009ed200e5d8c010e3ba8a6e802076068c9d81f446183eac5146e888311950e3f70431c96108208a3da811ab0b0b737e0420aa14b950334c0c1c81a36172b832ce000c40cad1a8ca10b315c1610276360825bc070548590a5075e88e203bba2d24117a2289184aa2283255b6c29150db05045285a215468e27e2aa2a319c8208a29de70820eab64f0841646b89cb43330d2c2b5aa4f074990d0d51c24610a37d420c811da00071c36c4e8e00af60bb60a44dd96512c8104062c6ce0630a4836c0c210a280e10adde5d4b02991052b9638320629b008421976b8264261101a437791e084ccb039b0ebba4e0bbb3b85d20522254558c3134b00fa8250168ebaf8402117e0cb711dd7715ced05862248a034d10426cae00536707709a48e0a00b8620a2b08430d94a0031a582b70000415b86514425178c18702257e5ec0852dce30c517ccb0062a98d88db621e643fdc0f1c30930d042095ad001165d68c245e743e5096e0802071800010d64a88209254c24d9a82da5c04410a4b8dced81a6b63cfad106710b44432c61085140e1481b8838810b731a498a720620a8814911a0d8253be871851249d802c90c7ec0c516be1f33c906474f58b694c2064440e2d4753268c1ee4a40a6e002892940010627401206ab8526508183c4010770689204225bb0a00d360b3fc820c50f2e7e3ca1ebbaaeeb4c2de88274218b6e091b04097508419a40e3da528a2040b6694b2982a440e49ea821ca41155660053364a1022558b8410649842105457003145800bdcb3541a8eb407b31c618e3cb843878aac3845b4681095becf1345ec702b08a0f0b264c116e2985214d86304142dc2e37855c4091f8eef009aa5005ec0219dcc0471217562459618b2b2c0143144b140d7d3d70030e9c8841122a9eb0426764a5d044134d50e172de0e82541187214884a01839b1d3d5722044e4725cd8755dc7861d334b2a1b626dedd1fd0ca0c7fca17615e41bdaf45c14d10695d11340468158004c0532006348003e825b8a1bc673dea2b419e786447cb7af2585ef5f9de90a117772bfbe8d2bdf41b70f0e69c51e557e3a0e69c58ef1170c949d4325aa42429e94963fcf5d89fc2c1597eb8f76ab50283ea5a35eba15f58843fc0c6fa05eba81ada77bb0eeb4adb554eb14bbcfecd50ae07280eef630af77dd577febc7597c29e77c43d4aceee2ebed5199c5ea74cf7cbdc974743a9d3c6ff372c92b7d3595ba4aa54a954aaea7f23651af97aebb3a54166fb8bcd33e2eef6ed2382814d6edea2bafa10faf77a7610febe59d1eb5cacbdffaffbff0a4fc7f79cb75cb5f5aae439f5b5a9e32ff977fcf95c84bae4455c85d4f2922535e439e947f5b92d5a30bea3997c623906c2a95ea5e3195124ddfb2ad2e476914dd39cf9df3dc2ef97485883ad21eed46fdc6d87d3b9a604a14c57b750deff767e3a77e3ae909cc9994984d4f65eb05245b654b27aa98c2de66ddee66d25bb6f75039e52b97214f2be5ae14d775aa4c99292dde18829fd4f1f7d47cdde57a47f7f7edc9f68e5b5a4e57dccb272722850225a5c3b799cad3f5bacbe51d638c71c621add8aecb5c0f013ec287e90ab1bba4323cb3eb933b65c497fdcb32345d218e2500b2c795bbbef2b95352ae5353f2ebcf72cbf23802217be53aacbcc0e829c264bb650e9242d931c263eed769d893b25fdae774d43da4ef947dc4a37e03dfd35dd77dded7795d8c8fe255dee57173b2c795a352a7ab52a99f4eb8c3a92e25e6f1678b9fd57eb7541253aaaffc94e746fd247e6296fba3b2492a751bf2a46a5815dd2a3d8154bd97a9283546691f95c778e70271dc5177ebf9598698c722b698fad7e5916e719c343cfdfd5efc97a52af5d67568974aa5b298bfa37e0fc1cfc67a08183d3076d7b2e1232d937894f88e0b795c79ee53d4c5dbcbdf254711dbe79eea9d1ebbefc6f67deff2bd2a8fdbf30b703ac0f7abbdb7a8542f627f9a957af77b6f63a5748fa4b2bbddedababd2a72b44ac77d496d3aff6393da57d4cc7757f7a47dd27ed999eef9247bbedb9d087568f498fb7a89750173b9488dffdeb32eec4ee133b94f85218f2b82e8ad7dea7c792d85551d7972aedde69714b125d45e4f7ae88bdb940d54f3da84b2a4b759d1e8bd8db3b941e025ea4b2d3e5dc27496527d7b3feb48febb7c7b5a5dccbb2fbee8d21f8411d1fdc8efa5abff7ddb65d855307b307debd8da7bfaeda3eedd3b57eefefbf6ef3f25844cfa7bf7c9f728da7b33ee69f2ebbefb65eca2f173bb0f35f792462e7a7e4551e8bd8f92f2d7a8a5ab7ae435bbad9bdb7be9457db78259f6cfc51c49761cf0cb255e3f69907e3d6a4e03b92cebcd9bb9c2b8cadd2e30f3ba571c0d83270c0d8328e439eaca7b8a36e1dca451171be7acd679975f397dfd470d131fe792a77f13e55f238b74a873dda6d796fdd93a8fa375b178542b1beeffb6e4b8be6e6ccbd4e45e59adfbc5289a793a82af5508295624a355679a834f585cc0e332af134b339581dac35bd4c302699a9853553a69e13e5725d97ebcb39e7cf28224d8f369ef71ebcc3bcc778de63de79f04ee3793f7917bdabbccf78dfc1bb8cf7179e0ede73f03ef33cef32ef30de5fdeb5f714efac16cff3bca33cefd7f35cbef2ce656e9bec9a265b4b345a8f7195aeebbe182f656f86a2d722da8afa2745243406c54518490fb098180f342f647698a97696830e432f18990a2b4517b55ca6c943ea4e93b40718adc0ee1e33141be241a7c81655d4cc0e325ef7173a60a41c9aeceeb322291b923043d2687757a78c3d887677d6114c7677af565b35971a4a8f3d8076f7ecd2a21e8f68b2bb9b682731b5e1fb752b31de7a29b7aeb29232f41f17e27de9f726fd7ffe5ddff8c3a3fa37bdcbcdea706efdec6ec7b65b9a9b339f2ad7fccbab6f4bb625d883828b5c7287b587e425b93c240fc94bba483111d3ec60b353343b25dba97c770a17ad364adca8bb51a8a19a52757dd516ab6259d6444da639a3882315b2ef613488ceee7dccbd8fddeb44ceee3d0dbe9fc1f73b68217276ef5deef3bdeb5e0617ddbfc045f73ae0a2fb1cf468b3f1fdec5e760f930102c8d9bd7f0dddeba1fb94a17b56d1bd4ad17d4bd185a1b36be5ecfe5e756bf7dfc55797bef24ecb0dd361b9209b26d9940917a50bd231e9a26c3a6e3e768cebd01719a166dd5cee80df6a26d0e6836e40945673ba41b1e99664d3ed48eae326640b326e3f36dd827066933d4ea2182b390019a8a3340aa511d1c859273f20a90940e96f72256a81d8754df0607f5d5763430eb6f78e0522d6ac13714ee8d35b52d7012aa315a032fa0e09511e7f944d661cc68b4b653a5436bf9c2cf78c2c774e0ed7a133b2dc30ba6e769c71c89a4b879e59769d863c3a0c51198c9c9367649c34bbcce132e4c9e13ab4bbe7799eaced4efb787ff9e7e597977beff22f439e17796e99ec155159504d2284558f6aad2aa94c68cd0432aa45bc50b4e96b51ad9958ecbabbbc7ba731c63809278d38640de90462f7112341c1495446b7242091a63ebb9cdaec199a99ef193df39a699999b90c2f92948952b382882df264ae989e47df30c484090dc32eaa6d30624254eb24187ab62de9a93b3ef7a3eb36568d03d09115513edcdd5a54ab51da0eb3069bbe16a1b46df7ecf0d6bf1ade685da6f52da1a17ae9a9ac6364d9f3a8a9f3a8dbf42deb1859a70f759578d5b79732a884a8a3bef4d4bbacc3647374fbfeeab1ded2bdffbeba3bce3a50facb51c4f6516956cff7f7ef4ff3a81bebd45486f916824e7b4ab4f783cabc5a139103a232994c76179298ff8f956848a4b3eeb4e5b5ea888c686c76ce96cababbb43218f25c4b2aabbd98bd25cf641ee8e66ddb9d49455d88c2014921eec7a6dfae47679f21fe4b1e71cc8e8b286dbb4944283615fb1ee3adb3bb93b51d23f878e822ed902f9575a7d13a2d24249d4365f3b34c339f434e6af916a53bf572cc2eb838883e1cf0fe2d75c89388aa0a477bdc9230472484d22ce57c6c5a64e3cf4f8fa7bbbeeffb3e1a36f03f3d8ac7b721312eeabe893947b765ae3c8978d42dd353081c44947e4165330381572d505481dfe9b753611962ba4f7a3462a78400827b8398fa286ba9775f00a5d1f0bd0e775b94bc255119ed52a994e680dc208ed2080767b55a95aafd704dcd6ab5fae9deaa542dcad6521bc4d56b50a8d56bb2dc385eb75a7d0b7956dd71b2dcdf2acb0ec6f1379c2c770d7930edfe35a1b4aeb432751aebad49de9650190d124b1fb7251b13bd3541aa3578c865aa218fed5eba0f9ec1b141cc793ece5dcee5eeba19d974975c9fb3ebcf2dac62ca335eb3cb5d39bf955f5d26a4ea72d5975ca68a5404a564aaae7f1b9893593eb0fefa0e6ea77c47a9a695acc8604a352dd3a309f6cae961b29532daabe99515ed2969b1fe2ab95c6fb5f4c82ab94a292ed647afc62ab1eed55a4a58ad947f16646d5ba9d5ba576b2971a5b04ab59612574a89c52ad5525ca72fb55ca51453fd0c6f98ce3a0d79587a4ca9f52c9ffa164b7b3597eb2d573e8941ac97db7455c863aadb94e72eddf5af5432d11ebb34a50c2e9d964e4b5a47c59f7206df965ca55ac34aacebb69a4c3a47dd2d3dceedd2e3cf2e4919ecd5280d97544a58e30e771d2ed5772bdda25f74d7e1aeab6f7969a15e50281e6260a7969796cc5b66fe42f396288db6e93b7cb4196974f828dbdd8d8c1ca4910066321b550dcc2bd5f2d24a79cb4b6b5b752a1dadfbdee9f1db74baf2f16e974b9b6ebaeb3a54caae9b44a8ac9b9266fad84da21e0ed3e38dd13cf020cec8eca0479b1dfe42079c1b3daeb62723076fa6c795a852bd60f428ee548d4e616ddb4a8fabfd7db4efbee851dc37861eefbe1706aa07580c0f34334294d030b1a14206c593ac82ac7c5c27302fcd2485b56ab9ad6f5379e269a44276d76d4ca8ec081f4b3626f7f32ed2bd48576b3cb4ea7838ec368f47f8d8f632a9d600e0e0c71b7e14591e0380ae44a106b5904a445f4b9e89d2a36e9d10c749348926d247f3cd7c9f377465ee8babc3b591c972f8f88a577b138bbcda4d5dd2d54e7d5b895b754955aad5288ed7259e4e9f51441ebac71c2305edee7abc3f76f7193d8a74078c3434bbcb0cc9ee2ff4d096ab5d6577d9bd762f7547e9cff42893e991668f9508468f36bba83bedfed2e3fd21ee20bbbb5773b2bbcbeeb47b8a1e579d16bbbb0a95dd572d2f1e922cea72767797eeef9e458f26c18c120ae92448c81eb7242741368f2500b2f163b03c62dde18e13e2824a4f020889a2fd2da938c1917d32021f6b9d7aa36ed475e8933deea03a35473d5d8676e26cc7debfeffbbe4d8f737e3ff8fb30febe65d4f8b3392fe4c1dfcd558ff384ba3d9d4eff429e13eae66f03532aa23ae36e7c1b6b6ece78b84854a52637678a6acdbcf634eb7165c2453aa7b7c1b541443dcadc445876dd243a51ad67d7755d2592988634eef1a773cc2ef6877acdf21bb914e00e5f7a4e48ded08d3a3771e44671496297bb9546792acff3561ed2eaa38704e53ab4cb49475da56b6cefb4cacb3eb774557eeaf7fee6cbad3a3e52caf562463d95ed4fd9543a2a8ba67cfa27e90975d6e8d550d6a2aeca744f11084754849ee3846c458dded0564269720bfb8719d4501b9833cb0795ebefe036eb3bea56f9a7ca73e3bd32829d720af35265b95760f468829d72fa57b652666525e5294354aeb5ea5fad21cf10f0df0c6fd8eb91a5badc39661756a577d4cdd25b143aa35b9214a2ca47afe8535139eda192a79431b1fe595065db54a64f3963ba57643262873d75b3fe6da0cad7993ad63b958a8ace51b7eaa61f55b6218fea499bf575210fea33bc51aff211f5fa8f9577d48dfa0c7d70a1aee283bae91475156d457ba94f6210512aa87f9335b70aa5bafda7527d562a65ee55579d863d160868abb40ed4a79cb9b7745b1e74a38a286ddc46136cd5a9bd0d7da81bf56fd23a6ba9569da36e7b29a3a2b47b959e445cf9eae94da2abf11ac4b112e1a216fd13b9686feee7559ebbab41b33d240f8a2a75b7a43a53e9942600f53c4e0d22fe96d4612da98c036ae5d1d3386870c0542154462b916f4bfabe2d698b5285212e8849d10f201c115764d3224a1b27d1913989702522aa445c1a448e0b71a449ea5efaf694149594122abbdffd525e515a4565f52ea12806c180052820010840c05f5cb1196bb140fd2a42e576097980d02f224bbcac5c642d1de03a342603f12ddf382ccf4dcbdb3e804b0b84bdd0b2dd2f61ec2f2e202dd71d935f45825e4534c6a65f44a4102710640c23b2087256efc2717085b1bb5ec01999c6b94c801b20d7f80fd9c67dc835a765ba63b28ed877dccddd26072531bbd8e1e9b912772789d9c58e9102fcab910d701bf9877f35d9877fb18c372c067bc1608fe5bb63603130301d0cc66d02641d31d863210dba0ba09320cedbc835388ee362b01c8bc5f21613b381b16c65b20e8ce5ba6bb22867b117200f11ba3b3cefc942e20e8f5ed1fe0a70319fc1c13e69336266b019dd366ac0669c16f3791a326a6e78326d460e3139e410cb53071d62596e1959ca59ec37397602641d397a006d021c76192362b3487260f975f422ec1177ec850c2ec57e17c8e59de7e4011c270be036eb7ccbfbb43c372c00ff6ca67b0039284889efe81d3db9126c8e4a99fd2becb11b36801c9484eb3bdb719e44058006706bc44e9652c6c56c9dfc424265f502c8af2474568f935f50d018f55b0e40868181c54ef3c11979877379e63999e6383987dbacc3b72cf39bdcc365e418b7c900784d86715a963b26f3f08fcbdbde21bf8ac4c8af22183d64596733190039484a1ec6d7d1ae4fa207d00e0062e7fe8a652edbfc3ab23075cbe457117a8426bf8ceaac9e87ac6387b85f429032f52f20c899fa99ace3752465ea73f400da33878534e67e11a151989b6626bf8a76c8af2354561f93c9af57d1111aa33e16d2c0fb45040ee2fcf822f222cbe8a01757e23b2f223446d521bf8a50597d0ef9555467f531459032f5a628e2bccc56ba4dc99562d7210fecdfabf562b5b0bc562b2f951455eaf542bd5eaf93f8329542f07b79f8f5baaf57f77abd5edc665ff5f5a2f3f5921928c50ed3e34f2c4b992ccbbd996096a794c52c95b51413fbbc2ccf6d290df6f9982ca54c4c4b2a8369983cbe8476fd2b8fa2cea398f30802edfae7f140bbde95c70fedfa973c66a45def9247d9a4954789c4ca23adb5b86aa36c324aa4953cd29a4a1e6f0ad0ae57e5b1b5646c3d195f8e746c7b74d57458531e617eecfa521e6184ecfa308f8fb2ebc117915dff8d5768c442db7bb2eb6f57ab77d398a12d5f5d0ffc437bd81f5aed567bd44929d783d29fda83fed0c975dccfec617b50981ef387e6986268c3a476b396ab2740922aabe5361a4aab87b1fdd6f0d228c451267b4169ad70ea95a8029a76681209416942f307ad992818ca00a5c928200d6d2a6b50822c5114922451d92429682b7272853d25b562d82637c85b20e24843536bb09cd1d3e4ad403582383fca2593e8099f8419412d98ecf9e9645bb2e7bf3188f2f52348344454a7d5e3561b4ac2e442a135148922011dd92357134ab247ae36f40388903ddfa2c372b54a0469cf5a1e72cffda0355753a43a9be7827042f6e48aec3927272552ada9571457ab5f5622322223cd96b4127122527905d562d3adf68541ac1a23d1b8a812d9f31f1844f9111781451de5d4f0c91b511ea14168cb299e383a3ac312d98465b195353695b3a935629dcd5ff1136b8d0c399b776215853dada06da4ccbc0ea55110471a8e46876c1c28823636a8486f5327b569626b05839d1dccbd57decb6fb2e6cad9bdbc3c8e177bbe93bd1a69ca6109737125ad85c267e9be9537b37eca9b7ae9b2650a28bfc99ac717bb729f59ee9b7dea275d5199e8047114377dd52c7a1d7a249d10ffaaadd844118e5a446bd17cd02c42a9a85ad062c8ee29b6a064d3b75e8033cb103fa75802543377a8b459f8e8e7a6596e69b58c1864445e898bf588cfdb320a203f766b8a5d8c1aeea38c0b800b03d401941161c4980d97d1b5032dfc1843f33e9e45b55a9dbcb1aa5450ab39b37d346df9e1b4e6ccf639b37de2c08013477602f77671e2bcb031716836d5c48131675613c766ceb4264ece278ece9c8181c3de5e52d1d5de5a7bfb965dc8d6f0020d344f6080c166e2c83933ca2af6f66dfb49b6c5de2ebec8626f37d15cb1b79760ec9a6f48d976ab85bd7d5a317ab20c7b7b28b968c3b63d679458d89137079032dbb7eb4c9c1fe6ccf6ed36288d7edcc66d57ecd17f5ea7d2f9d363d3aba594e9f210ce87244ea8ce410c3252e9c73904d6e09330c41db69402122da468b7afe6ffd01aef5fcd5e16a3102b8cb5f5b6daef54a7aa286d08505c553a437c492f43f082fb8692463184d334e4d9f4a96cee496943e8e741aa5f883a54876e9b7dc247636e5aeba5b2ab835867a3dd238bc6dcf7761ba1af31b7fc6909717bbd84b93e3e0933724352f42a100882dde636dd421c2d904d81ea933ae342a4464990502ed027d502a1b41b64d36d7f340a171cedba478a840a212543945683a80b886c7a9a84d6d81d8aa4fa70b2ebc6016e0fdc1e781fe6fbe436d9d4072a04a571a78f00a5814ff93893d8742e9154672bb831d8f452de60cf1eec29844de711361d2712151d743171e89139432f97a868ead1b1f260530a6526a1f428b3c799b4e95156f5f899d4d1a76424203d3271ea09e40c9539222bb2e9517a3c45a2ea28929a8494a1bf47804c48224da2485446cfa58109559061ff10478a44f502a84c0b4afb81caa0505a7855629dd10a6442c316dad0ced07b056b90e90ca21054f6b9a5a4811fab1095017935a80a519a873f7aba0a55a00a24e403f8b16e4e5b29f36448c3ee1c46ec7b49855889253d750da232efe3d555a8026d96dd3588be02519ac7d382334899dce3ca18c42fc8194f0bb6206752646d1d1af278af9996ae43bd0cfe10c71d1b57da89406679a71568c8ab40943bbdf4f1fed69a1315e5e5be91bb8fbdc5d9c7dbc21ab38b0d62cd0ac1dc7dfcb6af40564565e2dddcd0962ffb035a951f54a4bf94664bb3b64ea36de5a7c40181b6ac353f3ba338d26cb9a2b205cccb7aeb6cbb0efd367bfb491e88e3f5610647f60eba45b0da3b569b9eb559fb9f4da710bf1a577bbcdbde6a37a35983a0a6f76bc37756e7d3d6f3c21a9bb51e8f0db3a4320fd472bb146f1886e10e7a0ac3fb648fde49ebd079bac716853d54e885e0cca3b8bbcebe9b9f483ef83db6cda3dddcbc37bb3bbb73e30e3d4e27fb5e2738401c9cc5b7d6527deff1f4ecd4d6d3acf05c0d8de9e09c9f4213c7ded39db561580375ab7decf141d44df6dc989adebc8fa7c7e94dcf4b6950db698feaba1ffbb379db6168ed0e718d7959faf56afe7ecaddbdb959ae8a7abc55d384f717df89c3abc17ded3d4ffbe0b8eee1b40608f5f5a6665d9a5a6334cf81dbfb8803dce1c1f05c772eace1dd67de00b7779d1a867ac401ee79d0889bc7dd548193fd4d3badb59d9e2a9833dcabfc36935b0a16df84f21981b4ebe916f473522aa50cbdd413471da25a107fea9c463efb9c43f4e12ef7c8e9aee3b8aee3389a0ebb395a3389e6a58ebb37bbb76d7e4e28dfbc84a91dd9f4ad0b59ed95746d3a8514449b1e94c1c7715d0f7ea7398ecba388e7b9e9eda8e3cf06c54f1aa0361d97f458c4be75cbf086a8877c17e796b4e6d259f7ee5f47651dd63edcb7245ca5cb17b12fbd251f4c177c2d950c60d243c2efa8dc25f73dd4a0de51f7bd39c21b3f9ba331cf71f85dee99e7f4dc33bcddb8a3725bcd6307b69478db80504a6ba594528eabe18d792b5f6bad517cb2042609d3325920ca29ae20b4e7782fef73cf7dd3d20a495b6fbdbf8f8256ebf81ecef1de7ee474f0a87a7339b665d8e3599acd2a3d47b7bb9155e25177a723c7dc3c727432f73be6b65e77d0d6873947117b2c82852f378fba330bb3b0a6d1edee966e09b379938ee1eba9f2b66edbe679b7ce997fb68704ff6c296f3b293b3d01a92595b9c1092c8e6cbd84913ef68acaa43e8c1351c7e643bdbcd43e9b8aa22840d91f054dd5de4a2d8db64efd4693139fedf2464a19997b6c9bc79f3dcacf6f210daa2dfed9b6060d7974d4efa8fbf6d0dba82da101e24389244e60d4a468679413473629daa37c12d49d25051494d01d829fcd636e792f6c51d91454a461af3e69e42368afa88c6e69e403057b456555dba032cabd4a198ed3477bdc7309f150ec7a648f3645bbde46de6c4b88728a23a23d4aa3a320db46ad09eab4917996942790caeae5963b22101010d00ebd0c6588a33ce23ede06a5c929a01065d3ff406bec8e5c8d36343af40480a1b4da042852e0eac9a66f515a1d55dc39edb3e91cdd0e2acab0e9ed144f10d923b8e9a5dd2a56f24929b95cfa964de1bf2debe80e3e478e1d39bacd6d9739c07717b797324b2ce5985d98327e295f2c65423db240f0cb5eced1b13a56a77beeaeaf7ae4748e6ed7f3a8bbfe80932af9e4679655664965df04a90c69965557ba6ddb36a7133b37cb4d15e46d3ad9f4c7169a33f39b94af799ecb76de3ecb5dc4e644562975280ffdd9e62684abe726a54d231a1b19cd652bf15eca0f49acf8ee4dd6648d4a4b5fe36862f70ec661bce635bf1cedb4c688d27a8082d2621c514169389f717aaa84d264509a8cef9c9e36a14e609c9e6ae105000441d086001f69783eca68d408c71bca6276087607f07195455b7b39b99c5a278b74da3a02d8863e2491e5f40995b11c7fb2ac6ef4f8b36f3ee7b73cdae4f1c709db46868d8f3cf47c9c15e063f6e123cb0f1f4f06f8880ff071eeed0079cad9bc01f20fd9875c80dc93e76df030cf853c379f218fcd75ea4d8661937148277a60e421a4137b9b9932a13216183c930ba7964eec186961d98a00709aa199a11d86b65aed8a3ae8a21cb1861e5734f4781e3dca08a0479a985ae38ab81a27d3e36aa64731a6c7bb617a5cc15e455a675d1b406dd3ef64aa84ca58eeca740995b1dc22d55ad315d51990cba5a5b71e573a4302c8d1e3dd01d033647c561932ce72199ae51fcea7c58981d38536e4c6d12c9a26a13296cbd0e3cf96719b3c8adbc6ee9b9b9b1b3dda9cf69c7cba429cbf794e8e9e624e9e38f9265b199f210d9bc3b84e95916b6e03e3359987dd305e431e9a9e228c6f2c596e1a8ccd8536e486a177d8ddc3b9b0460f3d688a84ca580ec6402cb2594e855019cbc75ac4c272006896f3b015b19ca6c6c2f219cdf21db61a0bfd86c4c2f2171b12cb75d890589ec386c4721596a7b05cc5f2d4b9221696cf34cb659ae5315cd1a6e76a1c120bcb631ccb611ccb613896bf38966b8ee5592375432ca7ef8a585cddd04b37c4721796b7ba2296b374518b0e697434ee59f4fc2a6f72afe4ee2a79bc4cb521d9ec7143d261f7785f6c7ad1e46316995af81869914d3f0485b2b78ff672760772e7ea51dc1be526c705a7b2e25c5a2e2f9fa186e1e6ae4be6931a86baa432a94d6abd2e1f2b94cd7135cae63ee79c94d239e71a3687ca2cab2a652d2de75a5a5a8e5b7e5b7e5a5969a12b9735a4f1bdf24f862f3fe5f135a6aea22e2ef62fd5a5f87a4ac8a39f12f2bcfea980aa3cf74b7ce9176cc502ab81f94b6796ca524bb0cfd347e3f4af7495ebdc2794a42814880651a14f0594e2ec2a218fec2a21cfecdf8aea953f29ce64b3d74a66a1e3ad4b2877510911f5d11659204f966cee56091327668bec11ee754e9fcbdc8c937131dc2b94fa84d2e6b9572d826cee15696563b039bb829ad126b1b9fa86cd55366cee72ac6bd85c4b6da9a5d78b6a3eb961afd2e3e9b1cf9046ec2da75f59b9dd4acb5b623508a5c1cec1dcf472ee935ba1b99cfbe4b8cf723da232ee32ee31b9d6565eaf7f34c7fec558e761b78b4bcbc5c5e5f51d8b736969960fafbbdce5a57d5c2a155025a4219efefb56a09882c15eaf31d87398364c4b2933c2fe772ffad3b9f086ea30cd63ee981ee95dd7a954fb9cfeddc7f51d5367b93f1650d2af05ccf2e6f4d4294f3248190e966b114cae47e88cfb2bd7243a57a39c2b1422e5fe3c91a88cbb2a4f2854c6dd95671295717fc9330a95716fc91488ba642a4465dc5b99faa032eeac4c87a8ec8994e1bef296ebd496ac72162993b2cb3637d2533d7268385d21ae5ce594d2d086f4017590cab6ebd0d54a0682ca3814c7c91a599d713c5445dbf89c10c7f964725a501a3df789246f54e73eb7903729e75252d741d2c0e7206fb494e1cead6e18724f36f712f7f0f33a2d6fa494e17e7a8e1eeb7145250ca77dacd14b6595e19330e327a59c1394d25a7981d81b0da59766539a3f40b337ed53ff5d87d2e83f20f64833d26c42ecf9d1767aa43868f605756638af936d86c4799b43699b1e02dcdbed6df667eda6e1f639c11d23f3209d59cc2095ddfe661c6e3652c6cab6c521cfdc36ed8133dcf417f27c129c20387da81b531c5e9d432795cd5a6d2987caac8d88029146cba88cc3e21d486be48e8d8d8d8d4d93e9658132a14c286542e7e4b8799144341cc8ebb67be9c4d4ab9496b669c52761c65ac3b81eed5b674710a7cc9c28c07bde4badf5b684a13ebe4977e4ad1faddc57218d16fc06714e39dbe8676fad9972b65d6ef553bed6d49d8d56f15d8a71b7e5a7bc99df534f2963e9664d720cb7ac9362cf565d73f0617943e54da7b194d9b6fae903dd9dbe52663bcd74d34cf72cfa24cc1833b4639fd19e1d1415883863e7f28823f64fd26ad077b7a947dbead40e09a5c96edf25a1b4d9adc6d1d53677ce0922d721d9e315aae9a6b6a1a1b2fa0a441cafd067842b246f68afbf29b83e280d767fdc2094665f715e735e7f8bee91fcef49ada141afff906a0d4de2f55f52ada1481c3fe0f5de124aabc0eb3d26944681d708bcde73426912b80ae83ea9350e78fd45a234215e7fa1505a035e7f91dca35a53f3fabba4d6d8b846361f6fadc6c7db64a7d4eaaccec813e95c9e5b3c274f2e8e93671a7e932794cbc8930daf91e71a6e23cf36dc264f35bc26cfa43f20d313bc0299029d027976f108e419874b204f38dc0179bae142e4f9863720cf28a7e5968e1d1705d7b163b5e912df216e25c61493d11e598a5a8a529aa43ca1326cebc7d93088a3abc665d3a641f9455467f59b8b4b1259cad95dd28508a03b5310e74b1bbfe1de8b438ba9075a2588294d282dc6628d9059cffbb8fc6d1a9435924eaa332024511cef4b66929b6427f949d6c2e58ae24a7221b99ab86a2da03aab9f6ca031c6d7913d91b488c467840405f9050425f22b084b7cdeb69406be88701973610c64691f7a48ffd0407490d68b9cc8895c5ab89eb89ab8967ce8402ea403b9902bc9c585cbf78584b74393104f205f405a5eaa47d012973b93c9c4650e144591cb1b1759a54a4306e5cc8227ef64c11d4ae44f041405d9bb9bcb95481192246c488534ec7e11d9c24b9d56604e604f605ac09060505630413040afa43ae3220df955f47af25af23a7a21bd9abc6a2c2c1c0d0a5f446248aa10017867d3ae5a0cb44a10c7169012c4d15553e98f2941d975944476d590c8ae25755651a727c82f4728507e41d2457e491287fc620487fc020595d5d4c79628b9a5e40db95573436e1dd559eb0795b586a8ac25d486dc4292945b44d8905b40d660a486a25d3fa1b4886aadb96a08c03b2f2254049a6978bdeb48dec45e539e122200efcc34dc23589a32d3c0c51648f90585135a1322a0ee6c7ac5c3572cc5ce853c0ec8930c9f65c8427c66911b705a66a5d4ea85dd6b9373efcc71c0219045ce3cc3a7193ec930b5f84483cd9590ede4bc886034d838439e66c85abcc6f1ccc20616c318020ec018368f7e8032dc9b47079859c0bc067846ec98946d16c726679681e609916719de803cb3b051e336394868b553e34ac876829410778eb0eb8bb0eb2719c8f01c9b065c88d7d4dcc69590edd4d02f20c859ac0142641b318a14d5dc644967340db3c9e1ba9067469e5e3897e7179e93a793e3e4d985dfe4c9e432f2b4e235f214c36de489c5e792ec80d372cbb6c94163b891f9e43030bc6686e1414ac866932b41b363645ef1c172dd4cf0244f29f3c21ebb69f73c6f468c476793fc02c215f9158439533f9f8c010b31dc014b3e1a932ce96c86fe62609f93037c1e3d76459e7226f619869bcbf80443ccc1b0876edac1d007ba6793399b7cc10b563091916f3e8f0ec013d3059c18580517b61096e456c56d9e5cb803f25cb285c3b2bc21cfbcc2b73cb1705a66d938d9c8b4c263aa50fb07d35a7f550025a5130b796ae1f30a7966e1b396a792cf2ad47d048df947b170052bd4aa7030a48177153205bf70d23a29a6e5d5f6c21bdc8eddc3e08c3c9d784e9e51fc264f275c469e46b7c9538ad7e409c5697965c7134ff807cbdc9e4e642b651c187b02042715a640c56179a3c214a82899c2703a91a7143e8df29ce2f3097946e1b06c37eddf94c21451308534f09e4fc0fe44c63bc65dca94aa89ee194514178d4c28d03e9ff009450ed2013a0067650ceeb11cfb29ecb17b1ed979a447232614b8d3e9009f4fa09d66dc48c903a74f538a1c64847625be63f3f984273ea3c8f9cd9590ed189950c878cd84623ec1264b19633e41cb279c30caaf234e48b2eb6b64cc80a1ec66716e7250a80ffc94b004242469c2695985094d30910424a626968004269490842692c004122528a1094b400213443189288a4d30713a9d9a6002854235c1442a955a42134950021348542a954a95042448682225252525a5092654545456c0100467e459742ecf22dce669e437791ae135791e392da76c19d9c83cc2718a08e13939c8c824c210fe5d11ef5a843c642b22045dd4bd88501911b20c6978df87a3a3e81c978494d58f95768a1d891521bfa0d8f2eb0835925f4547c8a7b0e72601bebe0504befe348d703a6da79cbaa150286bb9944de5a4708a08a1e6702aab5271e02c421e927322e421389f45399f4218020ebd91f1baea404e16459c94b0e7a6a4c848b9e9c04984214cd8a7910c16c92ae08e2b65d6aa702a2a179c4584b0491c9ab3b292b3b28a3d2c854388002108a765d5290840203204854a954ae08c3c7b702e4f21cfc9d307c7c9f307a7e5d48ec9ae1a95d5cf6617132a93a0ab266feaae3fc8af221f08c92fa31ee4171438747bc5d12f2248a80c09dd369715246d88d0ddc1799d5c2aecb9a930c7dc437074958138ffa9a6a4a61208cb5334a1f629e489d16b4051d104e6e4a983e3e46983d3f269c3b20ed873f01d7702794c8efd9b3bc856f3206f9a28c750293979b003a2c3329d416ef3bcc1b93c7170188fbb270e3e75908392104017b3065307ff660ef2c4417e0921487e11e106f9850429ab9f36c8af25c859fdac81943d8c2f28ecfad713648c7ad50492e7a65198b4348100c974d2406badd229b2d252cc75e896270d6ef39cc16379cae0305c8f483989a0880a7bec8689312915ea04cec8b305e7f2fcf19c3c5d709c3c876ef37cc169d9b46bf20b490c063606ff64c460f0e3c75f46b566f522f22a42691306b7a165f355b4eb0bc9aebfc93706aab0479c30c856ca2ccda5e405d9c56428bb9ab820bb9eb8905c56706141a572d55cb516a86ce4d7519dc554a6a4a5d8532870469e42e7f254c173f244c171f254e236cf257e93e70a2e234f169c964b7bcb4146603e660a60294192c6982b889929805d25e479115101a7040a8e545456a68ffc2242654556210dcfd4450cb682b1b4c02a8cb6944041ab3564fb64c1f4b182a90215e04881d05c420914702e1ccca54a8133f20c3a976712cfc913e838799ee036ff9c96c35d935d4d6c5c4f767d8fc74c24fe7dde0ab72da5c5c456646457ad6e4a282d4669b4d7b732b092b28fae251be7a3abc9aeab0ed0b24acaec6fb295337b9c6cad0ac7ca1a21a50cb60a7bec0a962dcb0c6281e5ca696bb989444bd823ee1e338999c45d4b6acdcdeb5d4decab8c572b23dfe48904119bfbc9af232798403362602c589eb1162ccb5dfae90183c5525420978b784e26c171b2096eb311dff211a765b0042b45ac1c6184094a4002129ca5089616951430278fe0383904b779c7b72c82d3f2b779ec989508768480c708585a79ee9690a765043968bb0ed008ce63c6bf2dff73919396623b53043b423083a7b5a202daace3b4eced580eda679c964b7b46d6b13f58ae2d312db4eced1999c78665ba6367c1744c8e96176bb56819b567e421362ccbad234b299b31438f251d39b2078bb9c4b8bc543aa52dc5be5a01676422cee50e3c27fb1c278fbfc91fb88c0c82db641cafc9439c96f1de72cb03ff6299dbad205ab3bd1e35c4983d8fc7e6a89cd9b7843d77c3beb1581c112c0ab684282de6f5b019af2fe9f0621ecb767b3c66648e83b56a07b28e19f603f9ca99bd07608fb94580204b39b3335cc29ebb39170b823cc407b2ac331c2fa35d5d350fbc8408a83ba63874a0665f62796ece27bf8cc6fc42e2810e74e02da05a9f636759815cd6c073f2068e9331709b33f02d0719b100077e81d3f2dd9fcd1d8bc5b55adbb6401eb29d03db3780f39c0d6860cb000672702ee0e2e2f1b040e662e762fac582365717fdcc5dcc2b761ddac2024e204be0b4dced0ae42110380520f014241550add6a434a965e9e2424109e4091c96292c0673792193b9b8c0f2dc352626a5c9aeb70809642b65b1f902f3bfbc80527cc05d21cf1008fcaba10f75d32c4d8f4644204b2983c0035a5456bf5a51b1c716500c50ad6129aab33ac600ed7aaf28867785348aecd28b2a9224140a3aa382ca6a5456ef800c234486f14165f50dc830434aa8133aabb7915f374c76bd8d16bbbe46967436bea2ec7a96a25a23698ca568d7bb98389dac16302607f19c8c80e36405dce6057ccb0c382d730960406e05d159bd4bc813444c8f3f3bf696d01cafe8aad5593d671fc43f9b5b4254561f446e010589f6630b68bb6a75861e6f8c86b96aa01483f883f8439ea95b4154a64363d7a12d204a0be2f5ada096900e79820822cfadb7cd69960f311edb0eaa77a8044b170b54390b15332323100000001315002028100c08c5a2d168a4652190e57e14000f90a45e644a19e74912a394310a19630c10020000300230236d1a0049d9232a400be154ed3215835723dad4b5dcae5b30d5a2833ef4529d9251ae7ec95ebcaa028314a46d17e4ad1fe219131cd17b1db3f30c914deeb26b56d857578a9cc81005b841642d8fe3ce8c1d597099874c3807ac281b5813390d39cc9bf28544069af2a1f7382bc7935e6a3e0ea5e989e1dd24c44b9e9f75de7a4d0fd7961bfacc8188e5e74d1c4b71e0c8a7da9ebea64d71c2b10091c484747854551a005a1b9db13d55b2414960df21b5b8b6f715552400d9276389f1d28119fef9fe02e7314b01642e10cd019845a5485e730cdad74ff9aca15998667a805ddcc633a1f11787f58936ce4d2da4bdaf76e89d8b17b047bc05eec1c5708417820a0a3b884ff553c437e7142cdafcb2d7114d692fc645d2a21f59146ce59d0658ef6d5e065eeb1b0de828d67d440c8389084d0dad27f505c063dfd0fb3813955c0a00e90105001166313feabcd565156802d4143245bb0f4b41df2498e0680f1806be7b5a242667e81d541edd8253404be26321727b9135d385fd76912fcbd4522aa043a0d2b3173dd9e1718776863ef233892c8f785e5e32496a844c956d5b7e0f74d026e83db876abad552c422343ef6d4e889ffaf11358e36e592dc1fcb800809d40691c463042f9a499c2d9f503e6ce8059d0da2aa6ee9dc92a60ca2cf1007827454d8624bf2b0f8dee3a7c9521de80363253bead77b6b90a698c33326c9786de31ef431c2302add4e05970030052db856d9c12f205a05d240f2f2e51d7c2cfbc4e62becdf43cbe7a7c2c5ce56a2ad8e0e630f12f1aec56519b16d2fb4fe08107f1fb096c62df14879ac1d8bb0288af8d7f929af0eab8475ec5ab2e8753166f6a6812f7a2395ef8fcd4b39c92449c893cd69ebc0bd179dc22a808d7419c22aca057fbb71e8d512d50a351da230861d207a445bb705f4ba8e3450e25742946e909124dec840b2188b94fdedb1910194a8a1c87741f2a2de25a9aaeaa17f1e6e0f14427d1eaccfcd7d6560418e7d427d821d99149df644b27ef6954de7739de17e9957a34c2a8869760b37cf2eebfea8ae679f1953e6ddb8d8d4b2a1228b0fa6273051d7ca8e33557112f1d8cc3fc220f4e977b2191598195b63fc54de88201f482662c0675b763b8f20f66e0293e4b91b767d183ef0986a6fa64215d70596a15341838d0fc3715b3bc5343e9cd70977bcc271e01c0a7c1925515670fe5b2ae0ef4b4e55ae36677bd4f5413b3bfaa9cd5ba563cecf0c389959233b823fa8122df4b1ed42599e4dc4b4174ea7e3f4ae4962bb3f601e2f384e9e419494cbb512572cf8426fa8fe1130e3bb9a7d0982b9641b0c7e3e3fd7e090b60ba0d7eb453f2dcb3b8810b6850435bed69a41bfeaa97b4c9c941d66a0e26e5f27238d362b4c1e29337e855b34db41295523acd81d9d523454c15dc6b7e83a33bea7f4fb9418887c45632d85454e803d8f3e8700fe16202b68d1c55feedef843303cf4275421720c3beacfbe212f2c2f38b01224a72e53ce8b9358f0338c851b1fe215f22ff7d68c2272752d02e7210348fc7a4432213255eb4a276537fb807c97ae77473444c4b3b4745e12c3a35fd88165de2044da457f57030e18e620d91ca5f878cc489da82c1a962f8a792320b649f40e0c54dbb4536eada418a2142862a06d47d9b395165b6b7b6c0ae0f2839e50c2113994e5e87366476f3a68f7e121a5fd40a6b886696b12880c28282421827e312b543693a3f40201c000214cae444068730ad8236b9e6279e0aafa9f8f50108713c4792480a38322e3d559d1801a23d5f92a10db5f810ba62a03246300061e44fcac25ca50283a3036ad90551a5d4bbc3a885dad0e96b777e295d5768cfb5e41c8e33538c1e80c2f84fd3e94209bd52fde38927ee4e3662b6c92261b825ed97e22c737e9c085ea4e51ee2de45c9bf688e150077a9c308f205cb4083fa85d5246b38cd060f8ed52c9b6a10ab0c0905c72c901c57edd46eb4a27aad4a623e023556cc0ee7c36c3e9ece14fe9c53a20836a8b82c60c87d0743f80a7398d28fe53aa266945a6114bc179f40d2865e047c11829c36e3d7c7a97e515e8617a3c1c41ad0b3e2b4e0614d140958b7c96186f8da26e84a2b21e68c257748103250fbd7c0c2f761ac0dfa9840554a6bda0cba06ff5a3044acf4de93338b28382051b3138f2974ce522f5a68467e952640902436d7ab472925a87947a2229416e90fbb857870d039195f94a0325ae13622a1daea7e2e2a5e40ac01ad41f12b62c37ef72d95e32796f0738fd66c2e6c4795946d25a6cfff74853ef78e30860c08da126512fa0ff228ada88e07d2793a6c3ba3c8e226d6a24c163d2d2cee0cc1f77579be307425f87553cd08906d22a2b6d0f43274997c42beb82220184375ee73bb451c8b0050a87b03cedf79fe5a1f2ac052549726820ed89c9131c51fad766745701d58149fa8715d56333f0c66b49fce4c00a062e25458259aa8fe1fd070a66caccf7ab5d261ce32b1c8906e3881e35aea26d4f8e3600ada20de4624dec6f32328eade4e06129391fb2c96a9e31eea49396bfa007ddbcae1b45242a15358a0091d26a1a058ce7227299f2d0304914c52d06a24373199aad17fc53ffef5fe188429e839830d1afbff0541985f15d9f6f2080c441cb8f738c3347f27075de4bbb26c6d6a9900714a61639e79a0f952c0e2c90fca20986a0eaf8e55e92ee502cff5d2fe35eba9caeaa4142f6f5d55ee89fedc99d71e8952484322141f8a9d5df62c1743407ad0d071fbe7578ee1390b4ac465f7c9a79c00200a69a66043d1d65a372bf07ae4997a213af9c9552fc9b573409a5ef1d11b66f7c39a5676d1d936d1c0920f8fd9614957e56061b7da1da7da9b0aeccaeb60aef122c40dd0b047c248b1e124f9326cd928740907fc701915b47aa3407b4e2e4fc429b3118a13cba73a694e40cf9e45fec549373347620480e2f5bf2f3ca38b29d9d3cac2174eca7f4e5c9825d4609f67fae196c334da418bf797f24bfcb19f5324af7a8ee3f2126c069e328a9753a38b7476b90655f1b494bc882c80f74508d512f106b94b7184cb9fc7abe4df656b30e23b86fd0759a008d7d684b82fab5f00d6cc5d3d7225afb8d8156ecf18af204a950bc781fcc95eea0290082b611589b3334d75f29de43190fcc56e89695569e949883ba5975b8e8f008b1c17c2dc541157b19cd4900511c228f8ef3d51fbb0c448f3dda3606dfa30bf6c315e72ff896320a715e48ffe1987e05e4efd9f70957f3a12c7a71ff1dee3a8b926770812a112538865044c96884cb6a07b5fc9c88b3b853fca23b30caeb95160e64409538dc02f5c10edef14fd26853ad568abe48f7fc2c6d45f9f2458732e00776872bb5b959865dfcf07e5aa1b2ad64bab9381f67ec170b547192d45b6efe28b94ddedc113d493e5a543f20aad3d08edaefc4246aac2ea1c5394274b3bf00b39c01267a482d885182f65c65c31f0e44e3eae69a421600dee05a52b0ce95c12302378fb2bdc3e910971d15aa8a4453818f9e15f6226b24e13618cca2416631b554ba3ede39a22c4d54580e4ea412883c1b10981a3a9ab39ff5ec7f206d4b571e7936ff7d03ec76a8234e6fb76ef4c5b5759051527bfbb9e6fc79c4e595c7fe11a5a325f8ddd3a6f62a0eeb1d2ef16ae1aad77c77b4aa81e6ad78824377ba0a4cfe22d0ef023039325ea2c9b6a05c26efa75a8531459dcb08c8749ed7ee62aa0fbe1b50456a0be05f5d6ef3884ed454cb9adb12b3c44c0c6eb668e2a34dcfb64ec22a88c529517399f80a3e24f3bb080d722d42aa26e5786a1c2a4a033fcd69ba8f3c0fe7a0970e6ad39a318f57b7e1b4d8a68749ac3ce9809d787d2f84b2c9be65e14df4f7d39b50c2840fd48ef8c9b1cca99952f63f4e606340b68e9d2e18061cfd27b9d9c23bcc09ec6702cc73257f2117f9a6fe575c57ac8d1e8ca92d5bd9b28108419d266264a05a2842aa3dd9edad36e6b530284e1ae10291a06e47a180cfd027c1e10be3e47bc3ee0e6ad1277cbfe387889f7c803116eea8bf2aaa872cec49f1727e2248151a344712fd1fb5d4829f9cc18d4f0ca690ad6e02fd6ad8512b5fe6e48eda51c1c787b434a3f163f06d8f95043289657452f970f1dfdb09581e76bd5163d90356389daa182323ecb52731de3fcd95378fd2f2af81e3c46b3815e91c1cbee8d1acf1e2e0e66e0644432f9bd7c638aaf5596a3ef8e0650cb133f8e5fde57731f7f5a88bb19088663212fba0efb4f278ebfb9e2e1e5ef5c579258470adb78519ac604610edfb90a9680749196d8fed6cfb5e686c398aaf938b3f87e0d018b07478c3b405639e86f931c3074b8e4c856259cc3b056720357f91b2d7d10e368659a98c797a76aeaf8a004f099f62844f826ec2067004712844607924fefda4f9e723363841328243f070f103adfd022d1774651f0eb776a0fb59becbdbd4d39c2c27b926e9c534c4c7a8be8165c6cde37eb224becd9443c1a1ed1961164b3f3c4100e05a4ff4ce1b2d27d96925352481ea9407bda8bb72214b9ddb161449a9d97d921077e7218ab1c516d49811c3e97ac6f5b880adfd67f4b4b37adbde7ab5c84209e0a0d3fd6459f947c4cddd39fa9abadbc3eb0f2583289c2d064c0ddfe57681aebef20a4b772016d287c078a7712fffe1d1da47fe46911183706183274c2670c56570c3431d4ab0acc534a46c23ad0f69d49ab1370dd64135ccda79c34bee0a3fb38fe489138961384e7d68c3a6a5427cd238159c067aa1b776838fbf06e95af347a0870e9784ebef82dc5021ef2ff66da8003a3396bbd59ef3e2e1939010ec537a366486e531d039b0599a8f20a5fec70f0f90043c8ef427f95b2b7cb818dce6a0ce3b5b6f3352d9818d6025c1bf14644646894422107de4eed04970ec78c1c73698e3ff38fec451520ba69329bbae013fd865d2a08e177d20dffcbfd2ded82f9527d473a627cdf3ffc4cd13f7440a7787714965fedbe8710261eae5d05c56bda35f663004b1c0176f39e5c835d99a60bdcdc45b06364438927813dbfa64397a8afa20a5290ee68a21df6284c50667ba0a0c8caf0bf358a381934177bd6c35e8e292beab35b2584c4979bf5b680e34441510a1fb14bebc1cc9d9f924902dd4b24e8c15863c307a213d671feb1b03c0d71545d19fcd8a0991a47579e4debfbe204b4086dabc241be6bfbd464c7e649f6595d32873df8ac504ee1d1af4483a0a6cd29a112cac2204cb2443004d6bfc49d62b2755a9fe28be67754ccecb40498befc6c420e92a0e1785748ffb559c8f4841bc27dc56556bd849762eee684b01054c93deec1558c52100dbc14dab4ecbdef63a6e6aef7bcbe39b4bc41296bc90f2fd416376601a3eb5103730df410edcd248a42950f6e6d07943c8b676aa64c42d582cbe42a864a80c81de6bcc5bdfff5cad5eac11974f690a2299fc758a1c02983bb00532d0bbb091f10ab4fdb84ce09d754f0ca7282639ac72c5898bc5e9425042a4877b397016ba4631cf2444c150cace755f3e02e907b1fb75787aa14f85f383f62c738c0a56ae515547d517405633824a2766570644b8b3bf49c70c4f9d28c1fa2e469a7ab155676ff5a4b20fbea8349723be18ccfa20be648c2cbe79e5bab9e3f2b14f263422cbf845115f25a1f1a3f628e30c957dfbd93ee68336c4289178a3b6800ab8bbe51c2c6a40357d5c3ff1aa0589cd1d0f82e73da6cfc954a812845398b4eb468c605c0c8c70969993249e62876480e1d77755cd81dbcd1a1190964f271ee99610ca2b59407d25b8492bc25057f34c9820363e5b4cf85492109a4a14121dc19bd620d29c34490ab78bc036b9b4988408e7b67cede01d8788e5e72a476ffbef36044d9c4a0670a85c9256d967130de46305b8ecd89adc68509bad2de96b2c11678885e03195a452b19f7a46e5e0e21c54b5a92afbe6c155d462c0354c6c6104c2e813f2155d769fc349fcebd10712e25fddc44c87b257fade676d8caf28f9e3e42445edcfd573a060b94ad2e5c19bc7b4d179c2766eff02f7b331e8d8793768b4b31038d1573c15c3995ef3fa7ba5b585c7f452890b34e1502ad7cef2d6f3dee963bf4b862cd560d93544c0f4993e1a95ceebe0a1ecfd42995c00139ae64dcf7d0b58a5384419ea7458f7817d7a5ce9559e5bd366329bebf9b5a7d35b273a98a4c84a93a92604960e1cf813cd9930a209e62820920e5a1b1d3c9da7c33f9181112a4859c7bdf44e93d045a380d77680940f7f244d6a9c55fcf24ee00e52efd2fe23d821e5c7e852b550ed80436113c2ce40cdf03b950e3a30ef55e9497c68ce110f3b524f89995461cf99a0b2e6802a9f439d6b39c77823330d800a236bc3c87bdd961a2a85111dff2ce05a91fe5cf82328f0bc5d07a6570dc79dba026cd174b3efed8a41230122e0b62afa6562ebab6642449dfdd29c2cd531a28909daa46a03736fc3e96091f71e0544b9a9daa483f107fdeb03a42f1971610c839a6e1088e62dede98351e0bd1fa577e19208f3ac8f17621c8b7661af8da52b5a6834f0aeed8f7a9459e84c71763d40d4d4a49ce988a0e54443cfe84986d3fc6c2bb45887e27d271995c922f24c658b1f0382d04b0290ab7df3f338b66fec7f45f1c35c2684bc835fc8a8b25d04e7909d4323692d0e942cbcdc5d253eddd1e042432d1624c20408d105cdc5620d0904006ccf5e93b3ac15c5d1e91b4387c66caf7bcbd97d4bc2e0121d4cc83dfdf6328986cab2d0bc7d471003442880428533492ba640bfadbbbb55927a66f8470b4240f3c49617b0c0370c4f853b8ac4c3a95ab1cfb277c1c5d073fa5bc271036087c3d3d54f5277c3c0776d4b9b7ec9d3eaf1401c688ba595aa9b53ede298675ac1a93e25a7aa8cba80f12014dc8f4abb31b9ac3fe8c895431e566ade2c4eacc6fcf9f4cb413b14680b4c8151519c948cd8aebb1e6cd46b37951a683cf37d145a1f8358b487f8e53149f4c477769644600c63a12ee305a62323346179fc23f36d0d504f3c5eb56f78b851e6c0c01f3131b3c5df5dd7debfa86dd8e4aecb44e36747f07c7e9dfa109aa55f99bb79e24abeb6c0137a322a47bca23c5ade77131f83a9c2a712924e81a3dc35c4ef96fc852be744a754e39ae59bd45ccb85199b182f4a41c2a34d23f024a55fda229ca6eeee8208bc4dd77998655d7d4cdcf3bdedcb4900960290baccc2189da7d0a0281eba05c8c1f2c6718dd1b96bacf21d07a2558ab12d8380ef62a71912131d6468dadc0322a25bb0f908451152e03b7d2f124054344baeec692f7bc2b9c648559f25f082acba994b237839688a8626cb6cfc7595724240d15ef66636cef83ebc26db865e6805888cb1569eddbd1b1338e861df4202323f6433c74f261058298bbddb3d430d5a144631c201cb17b0eca135e36425b00206bb33f3be804ae49a9f1ceb9f6d6feea8782505e441c01a46c6f86721b904d7f9faf9fe931ca3e4f038c18b0637ac481ef3ced8423a892b235e9f4c1e9e35635f4ac83fff836a53f0780372e7bb4cff9acc52742af580cf5eca70232981d1830ce1454e3286244bd1f636af9baf34c669d195cf239f9f352afc2c0391c1b2c5eddb042f20e460f516126bf50ba16298ea1f3281b59158138d91dee89c723f6db1c3f52f408a3fe591ecef7f78492a588d316bce8c7efb344b757812a863e8270a5cb1d91bb91dc801fd5d7684f450d54c1b52b14cf23a1da009f1c15688258f03253c04e9514eff4d0d2798f7a9384283ac0ffe360b523119682e4f3c1bf1b43e65ddc551db6b6e3b289e5c40fcc902d9d964a68df3e55798abf2be7883edf4cbe387528c53c291be12d8d0214ec4a99a447ff64a9868c79b79f11453eb1906901d734736d4c05ebd0f82507a676455bc9daa3f918bbb2d2b24b805858e31ba46875f4a617799358042dab6d3039698f21a3361070df7c593d01592f29790b1d1f540c03e770f6a0168d758000e94f03b1345ce8a8f0fee75a2409546ddc9b9eba7ea1dfbb24ad1bee558b9cb0c311cbe2f4368b5b5961adbd68093509cbe352acf6b16a29433b10d155f629f3f20e76ddf7fdfe80da520ffa704380d717da4b475cb3da59505061b2998c5ad17f3e3f748e5c0cb80a62bd64b165f8cf34369ebe236bdb7f9a36d7dc7e68eddfca3b516aefe2125f9536436592ed44e2a434b8b48970e0c9eabe73aefec5a6be1669c56c6b4550ac47951a5ebabd77b2e1255a93b01d0534f5ab3af488deca7d880ae321a6b263eaeaea0194e995081c6080bdeb8bbfd00733d8781f7f9b6bf71002244dc539762c1d5746f2f9d8e661a941fbd53b556fb1524134e2b85e8cdca9826f682c4078675d93cb1bf11e31b03eda32dcb2eb615f6359f31c2be82ce5417abbc3f5ceac8de777c6a37f552a5cb4218be08b480ffe2b4b20a0e6591ad395ccc2c5d49178dd32075b39bc35dc204f12a62d120793f59e16e3f0a28677fee7bdcd9f7fd026ec2c6b02b277198180f579f656a674a7fc18276e1a8053c52b3de9121d6a180e456c908a5b11a8767bffb36849ba5d21c6b3220c995d1046ecc5f91036067f314b3abe0cce5b6a144f70fd93bb7fff7f0cb92566cfff1f8321b913a0d787f7720d7814447a047add5629d5d12ef37cbbed4c079d132c8a840408f2e1e13a1af0a3417f99007b58981546b241f55e5e3ea67be649fbeb9284445a88a492e70f59f599a14f35c42e91e016a13f2d8ba46541d39f5537755a698e4b9a4854fbe8079858d165707fd1318b98e5f4f08ac067a318ca89e676df4e5aa6f7c427663274a6b5b9d644813f0f11b4af360287896677f3d74b3f2e4f2fcf753f0cc54f36827b94c52e08fdfcb8eef244d669fdb52451d3f5f04c2ddae94e100a4ac111f95025a314bcc0f7cc703039be5a1822594f0cb35c0f5a7529e352002f56bc62299ff4d26bd536a26daf2ab780d927b651c77c99625f8b3997104a238d892ab4acff67006a37c781afe31c23fd3f721486112d13f1130b2e48889214ff06ef40cb8e6f06f655001208c8ce42edbef62f76b0bb1561fe4f907b041b8b3b47dec02d5eb0de173e87336546eda4c0e4896a5a818445883b7532179af87ce916804e3f5e03dd12b5f0383563c48744255ccb8424e9612ea319a02afcc8a5b88849b55947940bc80f372795fef7e517904c39a1b212708f762b97122e20cdd6198189d1e2a6cdf022df7603f069f9217171c2a9709b3ceb73c041918c3ed736d4c16bfaf2c6fce813ade87ff9e38039a9f0088fdbb991f5415bd8a2298fedc0871a41c0f1bb768dc2ec9b9753cf3acae0bcf646ab935ad12ca25f79b7b0ac2b346cb4204374f698590200aa76252ef1b0c4befdecf0d4e9dbfbcde1e26e3fefbbaaa6e6979f2cff0b62619b65216d22ceb7fd25c0c251c9409cfc0b66cffdbbe8d2c38b7e0938411895e25da479c096db042aedc30fb9210603665fd4a94a2e27d37b13c58ab693025e5711c2f8e6e8956e931d6f7d8ea079fa9c4880990b58c84a1c15fe30086c3dbf0ff290e0c9e53d2e179b57b3994827e224e9fd7354c1952ba206e9d4191281f9cd91997432d02f0f1173bef134cb2454b280cc2baa4b2c766272365fbbe8710559ec93fc39fe240168e7bc35baaeede488b1975c3c1b004c55ebc1b4d3fbd118571c9a4ca6ecd9d9ebb5302a35d3883e690d0b80f1baef8aa5769d0b1ab1ce69753de9f519bf76b0e3d7b468f5500168092671b10674f76118b50b4ad54cb01103a4af0edc4510c764f8561c39842206838f926de5b7607d88147f3416fa38d17ff4c03b6d0f31db61f32b67dc6118a868b5567eb5dd9fc0ed6644a7be1f010bee6bfc4f7acb535253d84d951a1b222b7c1c2052b5950b7c200a6858b49c2b5f6b89a77c2ba90d3956c23b07828461d89d904c0bd66721f816aba35e07c2bec007ca11450b7c9a8ba4c290c68182272096b47d3cabaca5db49264a4daf57cce3e2b33051f247298d31e0141f47cca6bf27570164b337e8d357d2280ab79b1ca68adb4816ddbecba39bb16853f80b5950959d313923144e1c421a658d25bc2cdc4f97800f6b1a2dda7510c19092445cad620e929770882081a4322aefab4e09e9644d8ee20e8de07058d3204d97accab63b5c49ef4e60075112d8948c0aa56415c11570e4358adba2a7141f1b73f9fce13dc228f8d81d3060c66301889e89a0bb13d7efcedf5ec0d2e71330cefc81acf1e640d8429eb5469e4a037ea9a3b2c530abedd746ffc5b18c721557ae0c38763beede6beb70750e8161644096256505d8569250b8675a31e11dbbc7951302ede3ed13531586173901871767168730e3382065d9827f8898cf09fa080294c2c53b858ecf33b8c6eed306cf83401897e747969a3ce94c2b840e9ca22c971d4795d8375f19929b2ef192e85832d40e3f845e360d856e8c03a485ec2a72c6e68aef4e443480207a77648894bfa7525d8fc095af4cceec80602771b906de66e1c1b24bb5b0fb17fac5ff0d1d89698b9022864c0d794b55c82ae73137709d8588fc2d823b86aba008fa10549d832f105334ad34b0f50af87493def9ccf4c8a9c9961a915ac6dfa9851fb205966a7509cc805fcc4ec1b72c20a310b75903930ed45ee9d21b0afc359de0d9388065412309bc1761342a38b709dca7cd3a8e9024cabfe97680f3b7c5211ed43bd71006fef2cad1876bd3351ffa59c0c48362458a605e4612f9af2ee877a5828f392f49d97644722848e1174da322004d4b53e8405807e0d4b9ea4ca60a2bc2649800f502b196fa819095079d3331077f2cc34cbd5c6b9c1524dc7d563d8b0a19ed59d4a5e4c71cdd6d809788e7cb07e1cdd108cac60170df945a97bc41053c4b014410c98fe59882ce0e3d54c58e9bd82ad71f9f900b78a2bec77c2bfb5b512322ad0ef3014d193a6029d0290ec973182be61d40d2452a35e4f4b5c291ecafdbf2eb6d4d30d78797ed1342669158a0e0477b65bc70f9a531490180e2f2e8c784b71f51d3f97ddeeacb0557e89f933a3a5186201596e06a214f8e5ed68cbd78799a65a7265e64328f1c8aadbf42a941034bbbb77a604758fb6b13a5cecf18232e2c20d8ac718708df43399523a9056b12eff1b054aa1f4dc50071a46ad698f526fecfdc44f51151acd51ee5e168eccaf3039f336f553e46ad31aa1444afe49e06bdb7a4a6ebcbcd297d51d02b9466b805f38bc7dee8ac96e7f17eac7192e121a3c17fcdfb781f06e7371c5d03dd857161c263c6ce05869747149f8ae0c38bf3b6e02e2c8c8b011cfc6b441641b32ef2131b4d15587a67a591089c6945472e903d6663208ceb1ee916110698dc901b168c4d7489aeaa493eae7c284c057029db0672d67aee8b10cd34caffb8ef3c3eb75afe9ec9f68a6ec507fb712eec7350906332502a72674a97af5178a867a772fece628a56d1a02900dd360fba62100274970bac3a68cfbe8d6447d57fb0027985de1023648dbdbb75f954a2c815f143ffc409828eb37015793560a451ee6677dbc7efac9c8bda8a781a479338ab4582c29860296b0eed220e473e8dbe8388363d5061f0b2acd038cc4307e456c2890c77d0d7b13885407408490cfec1a91e384ed2ef02225f64ab3d1856a4302a45b2a1a413ff8e2d11f5925677823f624d0c66d7240ea391acbf0221ba2143c75ea107768444967842b09922a6cbcd891c204cf93e5693de7e1944dc4b69c9cfc01639fde4d7710150225937e0cb94e959753e62c51e4875942c48a7534a419666f32307f63106d14e73d380a2975574eb52c7ebb7f40eacf6183482a6c8187e1d815a1bbdc885ad72dc6c0b6d0987d52c526fd45b8ac9b755e0d705aded8754d25a4fbf46fda47c54e0a85c5cb1b213f641444e4e634118055cc0e9272323f31d994c7800003d0d69043bf9aad20b728752b88870b54ca9ffd83f22d62d6cfae98b3f2cc6164fa4e93ea99e3b50bb3c138dab7da26252d4685e4f4bb7f85df3041f823430df132504b89d26b62b6dd07893d61191fc1cb36441325c2658e5f2854599524196d9dc1aac4616d2f7b09ac41269aa42a263f709405b63eb0d351209e64e4ac5d457f133dae619b2d31f847a81ce8d6525fc8b047ff6804e29dbc91130ea322d1c5ae5a328f6c90189cafeac97a9bce6605c8d166261fcb82371a43b43bd418e0644db227668d397b9c8d470ce0be4f87f2a78977d4353ece15d33ba66e9dc484359f098bd981453dea92960d579dad93b12a3deffa23ce1ea8c4b8fc62608710e884a8ee547c686c22f750a3856b3008838d51fd446cc95d58c26d59d0fa9768afabcfb9ff059cf20c55d458742392efb1d65bba1afe54a6e805a06e1c22a9985ba53f06381a24c667fceb3c7226523828de68911c6eac2c17f597d904157947151d544c63e76ac6ee1c02815dc04ae6587bddca69f83f4921a72cc0cfe8e3d6cd5a00f111a23fc7f5b2bf24f32419cf1a5e46bcc8d6ab83fb52832f369acec0d581f478bc0920ea2061bd9824ef32f47dddde91eea60c544ee17b0835d7b1bbef1750cab881078e206d16630e3fe40da8f227e4941e791b1a24106451eb2d18ea6b811b68cd0af18df42d9414d93b626f32ffb86075422ef750e85190361200463428685090e01d32ff32bb4837ac4fda1a9d88a444ea70f235cfd031491fbdf133a7ba9451eded6e1380807a22ab09ecccb62160e64926868840321118b1e77f00907921285c114cb469f37b0aea463652cec28c618beb26e325c601ab086cc26ba536ad3374ec1893c43743da3895c405b8de48da6ab2c98daa15634db870048d784bc1c1a5b645d740cd151232c41a9badc950fc53bf75f82fd8ee219bd83e8a4e1514d5ddf957f03d623767a5c88cfb0ddfeff61e1d9b550f4dd38c69ac918ebdf1ab793bac84de3626b2a0377f7a4126a2543389f78f1e6040c4a1892c7f35705ef0c61f31775810156cabd98b8b07dede1ed471c6461c17a4dde35e091f71958b342ba475f1373489ce855019c25051d81a7d8c7741c3f5b698b0e045fe4a54c1d8005877f3c8f9d33f2045dce3d952e0562fbe1434d2cb4ee84e07c2c901c33d6a689f74919917f1b28cb0c910a413d77e731ce785cf278164c72210fb712befb6b8f4a58ed7cc69076b01f80a32059f041232a169c2f1001f4eedef22607c671ee6bcc152235563c54b608a38131a98b65fdfa8ee9669dd9ee9085a069fe521dd6125b375258b5356a0b47cc9c62714106a4f9ff4a78e875092f1d9aa7fca45f89b2f6c2b5d31fd03f9e025261b89528400dfb0904c1eb94fe6e173059b55e161d7d067938586992affcb550328060a795ef5626342056d6887512b96bb8b2abbe959ea8d24f75519119d3f38b6527aad62a3463240e0ba41a0322ab5e9c1391ae0714d2fa79d6769354f447f8a51d8ef937fa0385e4e63697b9fe16faaf5b03eb356560bc51c73b9c4c2f9439ee716160695fb841c6fd621f87d55c2308573c81aa1c69b168485e01892e75064502ab674d35e14571a828deafb65c9c911fb0fc80b87d35c605ec5e454eebdf02e769d01c5eadb40f484bea50c61f7f75ca13b60092a3bd7a590ee1d620b459dbe44a82802151ac2128061cd17839b20cb38bd52f40899d02a682a2a1073b854c1d7dda281e342a5bab6168c5187f30cc76fc95c636e323ed2795880ccfeb432a3b7f66f2d6d28cf488dcd8857bd9ea5e27abd64f059c573ef42ed1a010a07119b66c5846555711c15baf7da841e95f299197d4c6f2a739b24243c1f30e408cd49e5f108869a27328e36a955e8f84f4e74b5dca4317199f2b4cedfb0447414633a6703cac4a315988f8ab6481f2a93f7794f90328964633a6a3cc5703c4101d6e43f51e8e3f458c2fdc7d6edae64ac41d270669e54319ba4012a0119d9d744cfb4962d5eca160ef82562f8b39ef00200360b6cd95baf625c679b9a90fe81f5904b60307c9ec0d68843e52a9168a6cfb5cf88cad33f5dcb42491e0a3795d5752e516340c1429be9d19ff567c5fdd9dc4e7df8844a03a3af91b4954c9a8b33761dc956f827ef1d5b5a1a69e19552b18e2e0855780240fe36e00def81f502a888aac5c2a86d5db16850e1262b6124c58772da6208bd0464f75d48cb99f6ab4327ab634b63ab6e6704d81c220b457a6773012a7102c8db94c5831af92693d4bb3b6908170139011148cfac065991b659f31cf757b9a1016acb7720f704be18c90087fde6c77591c61952a8d8b9d08aa73714a7b33c6ef6235ebbfbefddb03c4a8ec9148cb8b4241f1d6159c252bd8cb383fad37ce5a893f893597e3ccc3107eeb5c31e4e39ca858d0dabf88542ec477717ce9cf18a4a47c6f72ce93014b1196205c9200bfa226f11ba752adc0e3fa4ea31a6ea6d5c2ebee7033a2778f9a41ba429667322830634821af383af2ed25236d404f9dbf1fcf05df61c3aa3b179a70faf16d76382c478b6e04918116b0b3ec7c0a00746119338774457c4bb7a70de824e8f618891463ef17345d15ae1a5f4fb0a469ac37e46ae742e04a524e616d23fa21b4e510831680d02301a999585d7a7c11a063fa4d08ecc9c23647419241fb780fdca0aeb743cd8ecc754238bdadb91c79d80ccc3a9ed38873c14838eba4419e9f5c869a8c9f1f892d4c01ab11c6d8862e970f5e836272129167850c8dd01a558cc41d746fcd685d48261c8af6aac88b886c5692ad060a0a9866707f0a39227a4267a16a32019fa041d503bc09b94da9d6168c9b5acac8abf435004a1f746243711de8c0987c09d931bd2e3cf23798cd6352590847cc27978fe23436015a08a817d19e3b1dc5ea83408a8878ceca9f85596413d2bed77c2574cf55ebc4761e579a5370131a672d74a2238b40cccfee5660f7c87f28aa21b6c790fc943e685b43c89b239bf8c61c858d3305a890d56e0630964f3bdc32cefdd3fa2bd25d1f14eef33d1810fa18fdb3ef353f20144a2c17a2ad8692086d733bbefb24f92b643e67f9012b85e35b99fa2b8f1ac2bc909fb25388a313e0d2cc983cf0726e6c2f841c945ed5e2cc06e9817cac443b90815106d5e48ea7c407cbc3d8e48801bae1f5d9a2f4478f98651af79d38b4ad312f79b091203f12b69b67d698479eb5b594db11ae070ba8e8e1e80734e869dceaadc636cf9cbc8c87ce593bc034fd6c375c759b24781f85054d9fb625c7287ebe8d4d616bf7d88b4eb50aed10241f13aa76b8fd2c7f32fd6a422fa41f1301062315e3fa2142a864491ac50475c561c0b57365ce5972a589680789ec1460991d4f4f28a66b883fb5f326e990308a8408a4002b78914b6622020d4f9bc263c8a3dd615ad913762e12cd6d9eeed3f453fc094988406490c40a61dc3bacfceaaf5189ec4c3d0566ce08122210fc29fb3a1d82262c8c40287c1af3d8ef9aff7fa013fd9fef79911061433735021edac26a88c123e1237e4e5b54a87ae0ac9cd114a7823ca1714344696820f6661c5170d522d0f1316d4cd24e4beb079906c824ae4588ac1de51cbc62436db40d745d67220d62c56d7cc380568f7ad25f2279785e3e33147cff2f0a667d1ef0aab80f1b6ff83f33f9c41f132b0504d94d7118325839d3ee81222e78c604a4b5390d8f20d0c9f2b03ae539281fc8eb7e08a59d3e1e90be90aaa27d0f71a8c5f67cd1930b4b29a6923adb070680b7a4c776cbdb7e285ada8763e667d4dcd53ea4b5817b33c4c043a6b36ad3eef2b731a3d521825b33bc39cdf98d9b201041d2996905f916f6777dd4ca07fb039e2c9d8b54b696587fe880258437bb906e793cdc1e4a047642b060aac010aa5b24f4721f17517c96931cf94c25da2747d8b2d02ec9b37dd7840109ddc78b27c0255c2574c666894775c5d253f094e510302077ed5306e75893091ecde01bae1aaf462a1578da3bf24accd4c4d05ef48c661749c89e7dbcf0d92dc666b52fd6ed0290a72394eecec465be72a8a319acc7ae0a8bf201fc697b0a3f3f60f04fcea7083c1cc051e9f6371cf2d7418ac5259207766ee648c7ec7a94c674a02291df83d8e513de623eb2a32184a46b6871c6aefec2cad240010aba4b7de8bfa2f7ae33e6b4a8cc7c25461d3f165283a049646d3c3524a14889f59ee1b5727d717b53e4a18bf678951a89d1f62becde725e28338e2dd62847f731dcc33921569e9b0a39db9c819ca840a520ba15b35ea188bb104ef49a8e2497d3b841b4e2489f2f4cbf3a744a0a44213ed762360d61fd69563f46a11b0d86f54b315d1d08d5946f5e951b2dcba3f1c5a3d42aca8aca138c0d8b298f4947e1cbb861fc7e3c9491900ee8f2b67540425fd405450c23ec2e5163df0b1d9c6f07544ef64a60ffbc97eeb0ce402288f9a5eb43c1dc68aff66acb81a801ac6fbe295796658781aa22381d2ccb45dc9d8d46787af5e7a1f8b03bfd63d498062f8d0af7cec8692f3f0f969bcf705582078e16ff5b535b2a0663c0492be078638afa4d1a706c5174cd7c6d30801b2b7b81e39bd471c00a0674c0711c3d7ad73f53f535ee350120637312f66c9a24db11d46fc9c7b1aa0b2f2ef2a8db23da78fdb181976a268f32806a31d04d2b245bb279656237b92a2c212415ef10d3e22047904a4298136b0c211c3b1879bce2e797875bfc421eafd393f67187128e1090730c4f3380679cddcc8ba5d4f8287ea317d5d38eb323f1dff56865ee4ff17b47a9245744e1cd8bc53e7e033915d9144e854dcfa6b55d08d04391452425b3dace52d4dc9068a4ffa9dafd8b9313230aab312cf28c2cea21ef5210ac3eced0b0df2f5c1b8378966b6bef4ade86386d3ff5334fb2d7cc27a9c70a1c53c87200e6d893d464ac0f52366c0ebd8a416d85008b737e55506141a1a129af3f7f2ad6f15780ed8a06a9006d8d7dd060bd34ac37410f86dfe15154a2411c78c9e7096807107bd69487678a71b2fcd4afacc1e9694f5daaefa27a3a57371ed6151362a22517f2f76757781978e15f7078f72df201bad575c4663e2f9c885f9cb3b6d34323ae323bd0069a660a1a47574f21c20008ee63c5fc36b43683babdaa18f0111cbddc60e60519589b2afcb207eed002ed63440cf82c64886a2eeba37bdd346fe18fec9547053786c30743b77300b6a7f8a927845982343b2b6690de50d9b3406e4c398e15c9c801ea4e2280606eefe6509b7b02b854041269f125dc41a0093fa9c36d6e69b84ad9a16f0b0fdbb37bddaecb940ea35d210c6b227930c4f478b7d20172b59c33c3ceb85ff0a4df5644823dcac3e31955d8b5e22f38c2e050b158a038f25d7af8093529ea9bf82845d19003afc7e500585ba43dd5c42b9a8c27ebbdf04c6fd455bed0b59501c9db9f6ac99b5d214776744df6cdddd3dacd4b0aab8b7a38aab0666c874169a23189cd8bcb9c0ff421644db74953d0c9260d70168435b6d349765a5314f14012136284873339ddd07d5ee3b2005ffeb506681ecb39a12a022060679cef455cf934b0536e1fc39336c3123dd2f1542a6a04b9e673185a5f4e1fd81bac3d69aa2c952e4f92080d6f309a3e5458cac90165b5744724084de6c8ca94ae9a72d0f082626c07281c243b0fd841d59e6a3586a5a7c3d17d7fcb5b69ac05d307b7f0cd2ba8c072f41ff67f253259cbc3685999a17beffe1b05afe43bf14ceb285959bb6b4664c41e588de83a7aec9165e0414cb6571830b7dc1db6be31385c747bcc77c4cebc0e16c93e1bd06645ed3d3c2a48000ecb70e9f076a8755aeaf9738ec300e6eea48c76e94a57d6c260b4095919d542359748fcb306458bb2ca434fd4a04a7fe2d2810e35da400e4716927c9e3bcb7d2912544d98acd749c359c8380c36ceba01f73b93f14babedb6f48ac8e24cc5cf6d0ce9422f9fe40f0e7a83b639d0a3e9f2ce38ca6cbe652513a0e85aeb62b4aff1ae79ddb279fb712478541973074b6f45e4b5794d4c101cd0437b9f30a01cf957837e4fcb66b65a0d355970012cbd2458d63418d1e7a5d201a9661c0fab2c0802a2cc401b36ff9f6501d1a66c9e9a9ae5d4471ffae921d46b5b52a4a458d8a09f60789c86b34160af09535605f4c5851e5b8297af34697a2da7772e7d71b259b66fd2864e114e26c3a823c6b2c8495eace6a687d527cedcf7228e4b0eaabab4d7de66301ad1b050624b4aecfe8ca8a1512fc914dad3c4b946a0971cf86859c98425069c96da129f559aa1c5aa8d2ea98ef68ab5d79fca13e214336a77108ac0b804f78b16f22ec59bd97f1bcb82e90e980ec1b7844fbe5382403514e98cafa70428ee5465f3d573e5113659a8938c71bcac3314b9435eb44bb8919db6bfeae1dd0b41c6fbc344b392a3d01e7f2fe2fc6766ec892523825a71a0a1ae0d722bf6884082c5c0872b22d5d9bfcede3a1b7066649e7bbf9b2fe1012a20a441c2517f481839d19393ed5387a1d1414a792aed1d97aa58cfbff732f622ef3c1167a4e930d44641dd7829f7e8cd82e9b6e4979845c09f20d2610552ff10544f373b588943041929d04d468f6eedd1b26405873365f5d265cca6550b3642c6382488ec779533a8b7871832d315f1dfe36f6acf2e5e8b0edf7b00470db3f907f08bc4105914202b5d275d35e4f0fc8c492dd70d3b01cc0d226e21ce6586c0388a47f60e16e6c71aa14960de7375b707bff8fafb162c2ef1614d962ea16ac2604d0251d9883d2891b5459d0510031c0806453edd1069c68b46190d12f6341a93d88378dfd4f15d2685a05e2d9332c440b2d4f87bf58a260910a1843db7053541ee1c2b0b473831b2b237680d877fb96193ca825da74603e116d88c2736f643369d30a4a09ba006e0e9281999d9e67abb389f7cc1e3a3952f7ee9e2dfa4d9766b3500bae32f1e7eeffa9cb58f9a75e4b5900341172d256900e4686aeca3308eb0d7161d989ee9ca744c57aab6fbf634acd8f1f260d209ca73901be4dc8e89a7805340a6cbd874c9520c3a32cf36bd760b8815d7a518ee4b62f1d161dea793f3e02ecf2484629a3df81bb2e46d5073fb54afc59190135730f4f563e655952476c83bf694901675e1e489f7038cb0cec73f5153204725126ed6c63e0e94ef741995ee4e100ef8dac3d087f8003cc606a59a66479826224d68335bd881dec844d86d4fba2d0fcd1c9bbb06413d5fb54d75e25bd4f3747de28217fc6ee4821243a595132993fb14b4aeb7554aea6b14a09f49a8f9d6d3135092b0fa01e7ca2128cf5a2d12768b5be223e64f12f11cc276030fe4e2fb42cdf3d2ff56b6ddc871a0bf61943677f565cde1f128c842ca956afb49d68daf4fccf460067b5873fe1eb99d745a14d93b93a927ded808ae1a29fc253e6815d72a8dcf8862890a48c3155ba195d0630ab007fcba1b41982c7c442dca1b1245ae39cd4288aebff792520bc9ee55686ada8d918c4158e4bbc88d722c385369216eb713731fce0f05cea90c6aecf721bb0965226c6d426ef10556f9d8a46899bde3e3dff5943018ddcd040a1cb85d63aa4db48935d126200ca87f026d63d46537f27578173021d3677ab647da1bc528bce659a05fb1a7181a40860173202bda1a473ae6d5c10437ccf0df91ad847d069ced879ec0c0fa43a364fd01a7381f6372d09d9d6c5aba3b706874b46d55acf856a772530a0419c33b025432be357128951d8fcd2478042014dd9917c22c1ce9186c621016b9aeb2fbf8e71525b34c1db6f339790887d918e5e0f9f9a291026f093fbcf3d414ffad6cf4609f572a449f0d5e5c508887762bc0c5ffbd51841706be542d71f630370dd1a8a6afd8341292492e40ccbed46d2767536469a223682fb5344149da03bf860a4a6bb52f8e60746415e3f6b2834f0db3c5067ba951d1d6da933ad1c2eea0500c666ee903f3ed7cd83840326b60096e16b60739f05e622feb1318efae634f3b387d2d0aee81f796ce48f8de6b3d887939ac32fa69a547abd4e643c050b7883655dd6dbafe9dad438cae8c540f702e31f2d2f9dff74dd463967ab1a9b8d3a236a0681292bb651fe2e01aa50369ebf78bf3f3fabe67c95268aded32302645c164031c78821ca6926b70e41ec862e2f4bb38f2756744824c3eb8d4ed9bbb8eeccbfb63a1e1503bd4af29d27140d23cc8478a45878d1d1dd16b14d315c7c51978829d6ab5448a325b3b9ffd9e561169cf02d143891a2243c4e575082832d0b9bd6691ad2ec33faf5da9a777a3aa4f4b6ed7675209104529cbf9aa6256d3655b9bd8ec1cd4367ad07c3f3816f2382a78d9a6b0194c01ed1a12731589bbaf7166b2ea0eabf59ccbbd71975477fb482f024a6f7a0909b66d984fd7d333f74605d57426527a0c07b404698ad314e84bed5abb59049b184d52fe21db1d4a41ca22516ead40725916eb8dc2c89a87eaa2c6ad2ff974fe2f7d1a5cbaa24edb21e172db57bf92ae515c3f5df11495cab1b55f80aae941ab3c40c5ccd74647001548a445419abafeefa1cdc900a8db5da64ef4eb729a23d8aca7833cbe4b69f79b18a8c7589d21d652b6ab998cefeca1be22848790859e31f02f0b359f6286fc5730aa9bf99b46195527e8a6a70ff9c111b5cd33da22e856eca3672a2d46188212634d4f1bc51175b000d167b8901c135a3808ead8a8f89b2b5d2532400d843ed26d0e5c30fb3457a5b09e9f9aca568a40299cca3f624f75e63f6130823ecb550d1cc24618ba4b229c9ced7ec6f7a120a0504162566762e2859d9c4100af6a19dbe94e401b19ad2cf7e0c3f46a6529c145c4124c7951bd04d40c875ec2c064014fd7e0e5da8a08239f3849fc1c4fa1c012972a791e114140e77b5586343b68d95c7dd1e0e63e3450f9606c31cfe4d10e1f28ccdf5e073e518dfb5df6409e4483443c20254e995a329af6357d9d72df675ca4e293d00f4d8246303fc622350870eadbd57b538fe0a5189291f9ae16ff358597c51899142828bf442ceb4edece97711d0f97e9dd7cca63cacb44c0edae2b2c9bee4500ae2ce9bec9f51a8df6efd80f340786b2faf26833b41dab2716f3542d5b3d97ea994eea12714a729e3d048c71e441e8871f87434a33743f0964cb5d77e3da46c9188eb285304f1c6ce73bcbbcff7bc9b409507aa2bda1ba8e0b6761410c92f46492c17af170f836099ae0cb11f82b1a62257963d126035af83f0684a89e5734fb789c85674456a2ceedc0bf0e2aa3c26c7b2ed0051d3851784a74d56859693bd7b192a65cbaf4b745b01212785b301dbffe7dc773bbe95cf54149416967f54b58d039582252338578d49dd059216c67f05f9a5120318d46f69c22ce0e69cd9f8b146652b9e0e8295ea675215a8235cd3beea403729b766e205e54f5ed27b609492d1e496d692f7b040c30f2046a87cfcb1b62e554f9ba78400b5ed857db78db265dae5e731abed3ce89236644a12f0f9898818694f740ceee5cde20b65699d7c73b15358bc231a079f93f387933ec163402f2f1bad89f83f472ae3a50b66773604de43ee62c6a8b106cf641fe963569c2aa6870c77854656691f1a39a73a8c163e842ceb1d70a2ba2eff83857f53e21f83aed64aef4a7214522c73155459c928506a408049640d7f7b0ce4fed1e453eddaeb1ff3116f5ffbc260d7eb454d556f9377afc274344ae52a34b1c1c2601fd414a79b6f1fdba565f04b86b02bc96bcba3c99c0a4a192327f0d236a13be1fc088651f40d2d007ba780b0dbdc0025fc262decc9ff961659b5a324d3203506900fb4e753f323012440cb3fd9dd09bb5d8032bca7737341ecb002ffe05459790b32a6d83ff934dacc0407179af3135eca1d2f714d9ec8aacf5d698f08eb63153968ab7cb6211949e6945de4e28476c475022ae017c735aba390034f082bef8b21b23ed0c4c632c7978b6741e330cec554487c571bb11be4e3086bdff5d0310dd08bd7fd44c93e2225d89111151298a93b8d721d39af08484473418a77983c3e8a6da22261a1686dd076a1b732421ff11da5118642429ae0736b2a24e7378b5cb826bc99290defa2ece52249bdafe11ec96d8ef7bfd779e5a27129403fd942181679db6f1c0cb35e90ec88dbd7eb151333f27821adcf761732a8740c0dc6a724e4d61dcf3620ddcfccf7dc6d295d2fcff01aafaca823040360c13c55af0cdf1e771a5f6732afa6083ccd1a284a2c98b54d080b590c94f6a46f1286c4bc3919c8c494181c0fccb5a542cbc0d0865afb7a1f6b578a50cf625fc64a4500bd957c5f0c7eca6d05149888efab89d5ba5143d485d6f28abddc28a86f202d7ce1efee5bc809b518030e6ed25b1531b90a796602793375afa9ffade0920920d8f7766c5ce018078dfb46be8788d303c516a33d44dfc31daefa0fd230a0d4e9539c49685b0c3fb2147d9c1a5a00481a708c81acb19f899a0899b12589a65eea58fb69feba39eee5f50adbf1b2d2a916c086eb77450337cdbe19d9a020554b0cc1cd2fe2020287e89a7b629ee8234415b4a22bdbff6694348b7e7ef4d2481c641167c077e21135c5c9bebb5bb6168a22c165881a1d6fad42ee5bcf83dd26875e13da1aaf169ec8eff290b854b7f33775edf06799f1ddb4c61df4ace2abd895e854d3250fac36cb93814b73f28c3befe53f795033d992a562707171568d97cc88cd6d4a5c0d220cadc001b0f15591092853c243755eccc0a7bd80ddac5cb0b4d4853f7f416cb88cd219f1be02fd27c16bce7bf62fbb8b898fdacf4a3b6a660e17908049651d62a14d044947f7c1fce76e9554ee3eda2ed3b1de7222c171918b2238a4e81a9447fdff11da77b631d1417737ed719cd0823ed4d23381098b929bbc002baf347ff41c2e840d08dc86dfcd25a787d763ae364bdb52c195efe55a7e76002a118f4f408f139e2064277fa9f2245d23897ed5690381070d2717807b76a1db99e8e8fd10aa1e8c8feec8e57f49256633739e3848130df3825507c20b4243a29b8e542911f94c2e1ee064294a7cd79abd860ff38fff36d2c1a49e45d6ce835bb1aadab58f5833eeb95d529dfef8e8b1e3ccf4b8819ac5996d3a8a418888deda55bdbea515cf2738dd08b1edd4c1a08c733e3e753ccb3a35b24437e12620fba6fe56024327bd08363c6b3ecd0639c034102d51b621b57acfd6b32809a5e4ba9b9d943775da5bc03e176a9150adbc3bdeddef52dceb72f66789b57baf562756f4f4f6e8c7c7178e817e17619b3c0d132f7ebbab9a10344115d88f2f4e065b4a8b5314402dd18b03e56d734ecd54cd4379499a4a0105100546173d5271965918be62e0d1cceeaf02fe64a7fac85d1bf90ac9acc66d17b99120a4a3637ab54ac2861cfd69bbf899e8d5f9816150d4b0168c849b6523c63598b46d4afb3f66e196d7f3bd6214b7e144b4ce4b20c26a0ba881a09f0855649fc688988e80d2bcd3917520f3f83dcba4a0ae13b96c19443270b1c3e0b8485dcc695ff5588546537a50998229ba32db534267aa4bc15664c996c9862b21e84ebdac1ded95513422c01558f511e27082e03ef714964d88b172344700ff26aace3e93c4e2ceb38ed34179c929bbeeb3c7267a1af23e4fe1b5fdf69bb7d3a9716c33564068dce850367d3208cc34b62af157ff0a07ec59c06ba2fbaa35dbc78074eb662a818cc19ba64d05826ffa85add152eac747caf1bc66beb94f2c8dcd988b6581396f764b12031797d2d415c4f53333d0a3b67df905a61d7acc13aaa4568ecbaebb0d5d491eacba4b66e0bacd6d9ca4a6c2e3616b13c484c88d5193b13b7f7b4d3947af93018a861c127b6f258ce253eb1db5fc6559003d7bde233ce54b7d35a396be7cba9520b180736d7a7620eaec60e15445f561d67638c30701e9c5e2d623bbceb28b1f9f22f3224851168b3a436f1605d85b6e923e97a67f0312a1fc6efc84848311d50972b746b8d3b84bffda561ff5c37e78d7d69dedfa4aa59f974729fdad2422b02d0f45898e39ce688673d8ad32f21caa2ec211cc62d2e35d6c934ff07628ce57ad0d64bb6006b6ca613683e1fa2c3f5cc884cb8ad59a6a1d6d4dc1cf707e85da884aaceaddf37155017a1a94376cbceb3aea5b1e6ccb776fcb2458cec16cccf7388aed254f98d5ece0bf2ba14979ef5a1277ad031ccd9c3c667e9e1cd7db0f0a59fb94ba5229c380d734938b72d18a26e65a27d041e5ac4b0a5e97773349c0ede4153cf59f683453b08d08d0a6a5cb6e925c21c04797168fb40b6309ebb4c93ddf17c6a8dd8225a6364a6f229c062ee7a9a905527ec56fa8a4bad257324c9a1495cd18eb92bf4bca993d181332c7420e77a43c9636abc72dd439541b37cb6ca5f5fb493aea568e30a8e4ebffc84718157d58c7c1e5d7f5b649062aa09f9e0b85eef458baf9067e95eb465b2afdce25300fab78c94e7e7fe73eeea109dfd30675120852705f454e5bbbe8a12abd07b87ba7eea3d2f7dd602d2b88d28c5ba9bee8868015c6600a10281e31096fb50826a7c261f4a5cea69be5c6a14ba1ca47362e3101520d8f79d10264ac1ea59c18f7a0ffed4658f772a9f61d267d98e6dc868e0bf97b0b137e9fa84674398daa2653b8d3f9d13679819ec6604f58b4f5638a752ab2d5a6a0848e8c150c8df2b57eeae0f8a3aa33424126a3669a1c78df233af8adfca40f54fd301c0300f6af83909cdbd8c36dd5e2253a93e0ac0e7580f4745fd78c49b8e7073683c835d51c80202d9bf2696549264890a7c9f886d6334dd7b2e2d0f735edde6ef9b98632d47dd1ce36afdc7487f7ea449d0954dc1a08404fd011dcb5b70df3aef9b8595a45e55ec14f03a361212fe175a2f910e7490e1e3eeaa783e436ebe49d73294b7ada44f4be554414559a746c10bedb3e4356c3b946ae31175982dfb96409a5740f328b31d8fc3623457d5cb619cdcae715aa7cdf5676d29c8d7177c7a9e92f6d1dbc055f4905352a96b870f3d452987f6cda5eccfae34e1b098d547210ce1fda4f055142f971997e3fffd003e2dfa8fb2b3c40cac1cd07b92b4fa8c098c2d5f63d631cf302578219e05fe21388683d984f211b0702960bc5a315f16e4aca5660d2d7674187e8a836cfb365f89760ea88a4d352b9aa25050137c4d4756945e01513c39c9f1d49cede26ab00d46ce23d1e86a6054d016be7021115881563b500264b0683e4a78c52de984441fe6427df3b8dc20da713dbedd3ad28250dd7d8f17d2112010d10b04858c467428cd3f0d9571c0b572b08673a7565ecacf5fa78697ea5c98092914ee09c8addcfdccd3ac1fc5f55237dacd38dde45e1fa48748ebc8e62b4fb5469f224dd9352ba716872dd988a97059f8b511b6aba69e8089ceef025d2867d63a1117bba38083b55cf70fe245b2f64cb1ab8742966473ffd7dad7ebaa4a73a7b7751a0342c875cfa0a3e917aea7adc50a65a78df64feb920f59cd865d785794ed9aab56516e5d5f3e1617973cbf05dc11eece354503c1964b4bc2f7fdae8b8dbdc41cdbc51cf7a2718fbb9898ca32b8db6f1750e5d644d33119f5f1740251deb218e22a0374d30403df5fb94fe7bd12d4c2bc31052a4b8a788a33b466f2d1ede35906ca2bcd31066d9412ee6a8e20e4de209eada5af2df7a26abbbe35f6d511150b9fb189ec8c53b28fbe54d396d89b760b0588ec3d5acc14e1a2faa509106395409864ebcb1751f7037905bc93c3844e1e94ae2030dcb41280515a93e49f4da6661a7b45ab7991e22cb1a2382698b1f285fdbbc070d449ee44fde07f7ed137949d3c9ed11856b719aaa33c18e7817d1644eab74e3d38b14fa514e07c2607842effe0b25f00f3e0a217395e6f8913af409df7d2a4c8633bda7ffcf518510413012fb646f13faa40aa9ec7a506c4e78f6fb1221edbba507346bb4ac715e5b12911e05b300b232335b79a0012a45e303abf5d511e4b8698d4bd81263cb04e1ed2933cf02a1b3a45d68c253342b8430212b2fa16d0bf1f7646a8b294d071bb4dbd86eaa8304a38b66b2d90886f93332788356b50cce46b2b75a859f461bea1d2a2eb723657ade017c0ddc7f7cf3bc12701617dab353484b6fcc86389e48882bb7f28edded442a26b2b93f7465f5b275b78631b569ef5856c83a82a00b7cece7f78454f0e775690cb8b9883d040f8e9432e1dfcdfce4ce9a8a45809534e432ab506bc81f58ed1610d1d19ee41ea3dd1f926530a8bfd33e3cb607fc31b31f54ae0352bfabc659adc2cd775d11c5d65119634491b3fe3357f25488d0c22c5e4547b2c0f25786648e9d886c5c1172623e73add80ec61614bc5d86c6b8ee1d9ca56d0857e96e39f2ae3c3654d4e373097e0ff877aa857435c53469797ce6739c75a0fac6f598ce103cc91aef42cc1be101a70c03c70c77c941c16b85fa3df34bb343015cf492a053b24e536ce3ab4ff7fb0a4fd537219a8ba52a080c4d784d6a900f1ab4ccdce89cce12241a1a4519a2b5922176dd8e963ca6d949bf8af2fa4f0e468efa79ebddab074914d3ae13de49b3dc91e72f0040d2c88c893cb7be1881773e68c8f1e52acfea6094b18374d75de49bdcef8d055cf4fba7d091b4717de08ba9c28022a3fb2ef26511f977d6e591ae75ac5668407cf3b7fc949a6e8a013911d2b22391138d200d8241f5b22b266683a742fbcab1292ea09372f8a67bfe1c28a5d7c2aa419b38c957fdccbf87dca68a6dc2390a22caceea307b3b80644fe26424a43503bf3443b31becb2ac64510ab4ae1612f009f69e168490da8a0533f59233428447563058f979b8c04d7962efafe951c485aec3bab01aa66805177bf413b23de47254b24a27a3ed791ab60fbcc1344dff24c8658c49841e90cabf83c4fe9d363800d9ac00f5ffb086be720d5cc2be5679460c047719f78b473af9f233508b27c758e488d04e6ef523a9c3cc6bb56808738b45ea42eb0905c2baafcd40b462a604cb707a702c9330b0936239a44dbab19bb9e3f8b149ec8d066b3fc2c72eafafd8c99a08e47b4f199011b97e04693661b34c812b92fdc9114f4be0017c854325701db4312277b0f8ac06ad553f11be9f73064aa598bc4b4cc7e4549d26c23c9b3cc194247ed988da9560386083b163408d82203e820b43eed204040c6f3c9d73e340412de95b4bb2cfff0213336b4a607492ecc41ac3d213553576e963cd3b2e72b0b89907200aa6af13bf3a5167b56b43fcebdcc52ba8580c05687fd4af411ecceee3a93974eb195f86554327bf894178be96889cde4bfc92d928309584a68e7d8cea5b52e3d521940ff6e2ff7fe0c74e3bde4dc4b905f84ed0724f0befbe35d619b5eb6bc30418615cef886b9161296143b7ab9759e55506b0a1d7bad5890b41f059ecc8e4570a9d0899023a99e25b44bb9c369d626f9611150026b2fe6f2138a67be3c7622e5d76a561e2231c3a04866134f943d410bb549720b299c283e7f8f5c615b2460df3a3bfcd9817364bae14cb228743f35cb1182650c742a9a5d10ec1ab9c6f5aeb48bb8b25a517e211ee97444faa3b140068ab90f489358073af9194c3eba5e322e6ee2f88581979bceb78fff7be7ad6ba7e61ebfc4ceaad64dc1362b3d21d6152f573ac41eb712e68c16dcc6c8a7feed7503e115ac34e379a2c71c7288540ca00660fbc3e421bd354830693f0ab872fae4c3396bee5ceb924f397a6492248322ae291d5d57772371e987804ea44966f32329f65a7c11d2d085855d365b6acc78c3103f53da185233d6a51ed4eae17eca156c2996bb485b28fe8d6aea24108acb59f463587bea33ae0991a9b48a0165210d05c90766f9af00540af4f5baa0b810a52968aa59bd037a1dcca740fc56192fc891ef0df1255c60c0a1c8e597e3f6f0dc6df4e2a8c0d3a2cb95fee0f9b8de49fd91f92a98d351dc7b4d3ba200d74de06cbb6920ba48fbad6eff9b054ef62795ff3ae0cf65eac972ccdc1f3aee9b6d1fe17af1e2d5780ebf04b0f44257a1bb3a335eff5abf92f6a12b58d8a053c5eed7a2118883ad80d44aea3246fb0f02561a248daa3a903c55cab57332f59172cf43963722634ec6062cf028bcf43520f2a98ff4280563db57a477b7c86073e516c476677ed69a9c5d4eda41edbdb3ef874e5b535229403d7937f62dfda7d08562b18a6ddd7ef9bb7596725bdb196f54ac79193c6b4b972ce05ed12b0373615f9869088ac04ab193528a7b6043fc44482ee5c8cbc180c16ea33023090d17fab9a732f23bd1aa2df2489f52fafeb6eddaf327e5248eb42c9ef999dcc7b0b1b1f748e9257ea610bea3f970f55893c39d8ee69bd67ae18aa1d3f1ba9fc093965cf27559397a29591359a924a2a585565129332098769bd4f36a562adb6a87f5fc262706bb5c3ec5bf3b256b0d171f7b96cf8489099866ebbe9d846827132ede41129ba74389ab2509c2f4c98b5ac61cb9edd1b0e6f20d66a246e7bbd4f62291dba992f88b77013cf3ad22f2277e90cf9e23b378761c2ef44da884eea838bc3936bc070a2c2d9f2c676251e306e4a1e4fbc422f955114c55a75f41f7fe5cc5aa1c59767254ab08dd2c424d18225154a8aacb62248c02862e734a1fe66a5ff7fbdaac875170636ad388c9a8448bf143771aabd86f1a735f8b32eba5d2be0e01b129e3b230dcaa8db70e3776ef04315be6502e25a864cfb17dfaa4d2fba8b135828b9eb8b20e4d791308575268c149f70de2555c083b2d8d32e6c7f47068425d03807913872d3cb0a1f2c1e79a56fd870d3425081d936f321fc16ae7f258ba85230a45086aff8a8e193a3b5cf1decdf05f95d73725d00470c50d28dbf7f218ae4330abf81d296d3b804aa18f1be9ff6be4edfd0615b499e009c7862a202e888428b68b4b6f0ccf416da1b1b9d1a9deb412550b996f2bfd43bd1035b8ed928c07fabb2fc5fa34188b5b6855d1e9d70c51c4493fa988d0c034e60c53965a03108db8ba6e7948285807ce9ccff17b00c819d4adf9f84ee7407593184268896fd37a4799a3d50b356ad538dd2554126c5614f47a1c59f68165193e970cd891518ec317366288082f434d32a917e01aa1d6395b52b25d7fe595d14d3d4f6d9b8f931b8024306d36ba84ebd3ac1f971053a1e84bf687cef2aa959859e36049ec676ad43ea87aa22a5887576b5a3912095661f48e33e5f9cdc064feb2d64d1abfb760e70cf9db562fbce3decff31bb6b3d33326fdbe0edb76e11c9c88fc784f300f3d6e56e4dfa2a4631a1633feae178af90974b4e950368295b3f13268125d332677d05a4530b98acd28ccede58c6ebe82bee099632fc15f2ad3bc720da4bbe17b60ffad3217b7c0d400a4eb46200aabd6a71d1e5ce52ac1624b30e6b2350f96a76af59a3c60697e75e389f13e930416be516c677a21b609ca1eb36ad257e006fb501c23c171067d781dd39e3b97efbd72f659a2297f15259eee78b442b6715c655eb4363e07c1f2b270535283a07174307d633ffad1896df3442ca5814ca3107389e5e997664f16ef890b067d2403a489dcf35ae48aeda6a3e854a32d3ae1747c7f34c5aaa4530d396b39d12a9ef25ccfee5ef1cd52a50a527ca3e11cd2058fb8f89c369a29f85a58a26537628589b78fd3e6f433617a4b72ffee68f391ef2507a445fd5e691975e6f8a9f436ae4f21d78c5e02d11c48fed6aedd18c3036d37eca7c6c23010403b809e7cfb37891977063d9194cbd5e164da407770d89280525294412d6599979f96ec12061e50ea76e930a172a5b4f0b9a43526b2638df925a9daaae9ade1988d8d998a1eafacb08c60718727acdbd10c4d42b07aec08c74200ce27c1d64e722e10dcd2ac8088768df4885b787550f39a3ddad12d3a4f7e0593e2af34d2cb70567c88f91d529701d4c165497505258bad59d72aad5352b50c4bae01134d8dfaab471e6b31ca7807a84aca57e8fbfea648e99d5d6db570425ac8b4cc0c4778e07ad156ab4b0a5861877676ae4723ebd1d08b3310084cdab01f50082d7a53e402c55422b5708d0e3c4033b45c7d072f7d4a1b2cbc8133f8028d12d8c763003b14a33b3350e9564556f626463d8a869012b374a8d545314e0b7c7a45b8d0eeaf91cfa9b2d0e97df540236b5dbdba758442f295c996b9887e19fbf048b7ad8d525f7db3999731d6a0c169f5c15bb149411bf429212abf51371fae11af3e7049749ee6e4bac7b9c005c8447f821d4408dee5034a350d44addc068a9f3b965a8299520ee19d042b7eb41f3f1bd4608ed4402f3d3176526554f71d576f12c7d14850a6aeadd563b3272b6c9739fc94c2ca8f59ff6aa59568fdcc6f315eeba74e1c0cfefddc023f95c136281747b20b33921c101c572ef17bbd46f6f9d7e3251e7092037290dc3a267d50360929d0bf06021a571de32eda4de82c917579dc4e132f136667d2a75ebed950847140597031e939241a295c47d456fc363f38cba30628e9b689e9ebd6a7e23168cc0ccde3524dcd452831ac67082219e27d72c5564b3d14375375419b3800ec13cca1c3a406cb3f69036ba46fc4442f36a586471387bbf7088b61bc9c6b25b8b623ead7a824b6d3754d34afc753aa88fd9cd0aa3bdc32c3b40fe4f69a182c3316d0b91f041404279417973bdca865af36627c865256770e93a50d027d8e11f3c6b113b445c7a32825928339aba4f5e86e8e28b93b49301d54c9528ed6732f0283d0ce8c272cad1c4a1b574ea60440d7f75879eff876162e7d9b4246c0fa126c07ac9a5b825347db132660300755518166dec56ac3e872b3dfa022a5f010896bc53afe62e9c0b22c5b36bfd1f65c29b5670ac4c715bd2044c9d22d3643a316ee7e2b127e358f919ea0ffd0befde2bc1f15368dcdd0b0d21b7a3106ccef00c715e0e2956d11ffae6b406eac73bb4671e8b17a014aa41efe066304b0a780f46da96887cbb530e0563612e6b60fe6c3caee0eda877386c5d33be877aba097390faf1c314c9ed9bcb6ce4d0b419c59fa7209ae149266b62aa2220704ddcadd676b8cfa623dd6d6961c6179fbc444b4560ec7f43b395796db52d54bda53af8657414efe784c61c1964228abb9b37d082519b033a9cfdc73d121c401f558034a85a05c5aa66dd1d33547a8fe4162fa59a71dea95938e26c9f3732a99012e584f3e46a44b53daa0dc2f22412abca3da03a6306ca1e797d008b1e51b276c9ec21550ecfaa48db789fa2b0af947a65bdc2a44ded680131725c9381cfc647775f899698ef6b08a85ee542473ecdfa93ff1bfbd4a3aaffe39e1c9e8f805d14fc61bd3378605c12b4b5c628589305b6d7339429feff0fd7f6a11c17dc1e895796a705b43704a7d0e93dbe520e69c580769ab96004d5ea5ec1e15dd6a9694d8726a9c2ef930665e6c414e5b281509750dd371ced380b2c4fadd48b01fb27019ad6efae54177480bc57e5ae0d941972897e6b0df35161484c0abc9fdf58d5697cf288ec257d1f3dd93502857ee1c603c79f209ee21e34ebc408073da15bef9b5c9bf8efdda6cdfbeb90e88840cd069b4bbf692b7265d33003cd455ffa7f950b13c7b0fca80e83c6746705aae215ce34c11166d5d5116ab50c04c0ca508309856a818671e5cb03e0d4239deca449876581ead459b284ad8bb60b293e6cc97c0d3781a15a1d7ed211e1ef0a396911eb0b3a3e5b37b172c7bbb5da6f1f0c68783f886ed70108189ac7cc2e269776ac2c2e6f05cb19a7fe8a3dde4a512f13c54a0d1842a266402ca97b5a015e6b97f9baef99bc6c7117e05172a9661804517451f51d5d55c4a5e19268a4cb8f0cdd3c97c5107ef7e415066ea1602ca870a3fb97b5fbf117a618d374d4ea887e6ab5c54473310d4805c3394f07c30cb3fc8695178082e0e1967ad292cbbf15d79b93a54533bc06d380982273863c5e88a56f6221515c3c38e349cd4833f69581a2bc760b06c1975600b3b74d6f65189e76cef5b2d35d6e17e08033dacd6a816ca02582e404d2ae7a604b770fb99e0166f42a16283be197dbda0488c6c747dcbcc222ffff5944d5b9f5e936d2565a38449a2d13465a1feb9496edb3e7e2d735ddc4c81ce28a1b717cb0aa8a28adc883031249b93cfc76ec969ac9be1ab794cea223981d3ebab13178531d68db27abda3b0a2fd22e7dee8bf0cd4ce1fe814a5a097cee4bfa45a4a67c2c71c1c340091d60f473fd7776753dbc813ca2abd619d281805b4bc9e54ca2bf2d81956083b1000d6ac0a19b8458ce09c9dc811c8f35543a33e600f867df2a0b002cd79f01244521d8d16bf1fd78ab33acc47c0b0f44c02425abd3f48b23c2a3f46cf89e2fd540d31ee48e16e8a480c2942c26a6887517750b3882b079a576e365110a6252977456efd0b7782aabafd4e9564eae551977d9cfad0733a96c9d71f06c4f036f82229a2fd326743e26a9937294f63e4bf97ad8d2ec1f2ee16c169d13699e644e1ea54ccd16f46026c6f1bfea40f142c8e2a894a579021a34a0a76d05450e0a7dc0295881c76973f911fb9fc2e28c4c5516769ec538fcfdc21d0a55bd4f3479d923c8c0cf3e203ebc6dfb1acd4aa81d5c60a2a1f725ce73abd782752ff8d89df641df46de2a43733e8e04d901c16206677dc0ff4ab1b9d8adbefac11abcea52a9ac9ecf7fe3cde58fa72ac2ce54d16b1eaa6218b2539e8238d84545d9e308d9524f27a12d17db3aa0d384ce1daaa64fdc6b44c6d7165c70e6f04d7dec5b722d96d415730024113589fedd413f0c040618038114cfeb1e8218de426d205c445036adf3d438070c718d41412e8256cd72e0498791deef09692c355277092c19c803f939f51cbf84b728592a1ac79b25d0857921262f834a1e47cc77f95f254527bc07f6b7e768f80c763850f5d6ba9319f9a7cf52239812bf2ff67ee577b9e2fdda5a52ff4054e9546ec7b27b6b3ca1d8cc6362cc318396d0579031b5f3dbde0d06f1af08ba20e144b46a5817a5b8eaa10568cbfcdedc6bc7b0a1a4af190eff2607b9d57e15c63dc62a071010a8507edc5758ecd9f6285279ce4863a9198036815cb180ce14bbc426998984074d926be9d5c263ca0f9318cf65fe11effc542e85761a8582a2943e9ee0dbb36fd87740bd3c42b102809b73f2cc18003055edbdd7c2ad5314af37b60b81a9bdea10ebbf07731422c8479da7860a0d17c2321c7accb2e3eabf1b5d0b2459cfe876b58560e4f73dadd244c81b7a0d0a9d74e2db5e14893f2afd052e7b873f4bd55eeda285a23243d24150c635376ca14a40797421b36e2f61e7e0101eaa0d0c3d59f29beb1b3e828b99b73261f3176f47bbd039775c03008c471192546093fbf1085f9bf08be2c059293dc548e016a80023dcaf72ccef0a6d5a64365aa33b2dce7bbbb15a222878b94f0639ec952c5e8078db0307e7f9bb8edc2360fbf3f8372a0775de93757e272c029160055624c679a8d44e6a44dcb15b06c719873f6f5da632575be0444f83d78df44280158ae452175cfbee354166189e517db486d3fec22b5aaa8b8bcb26a5ee0560b7d70e3ac313f48dbaeeab52c597347bc1af673279611dda75c0956a05c56b2b0585c21c2262da7091458779ad6d34ed36cd94f0e1148d1c1f62746ab1f01138a4d76626e8cba1dce62f6e5bcca8add311ec64633375c0c5d83b96735caea3298c287032c583effe8b66008222cef8e8b66d80ed8d7384a43ef94c2766c325f8c533b5dc594c2d6a4340c40d0685b8cba1a2765dab1c98a0d5cb18fcad8e76efc860c2e461f3ebf51b66ed63f252cdaa06997ee03f2e9bec74d5af9a4678b44e1df4668de0a3c8c5d5c68bf40b2609833d4a12a8ea9460b7e39bfbd7808a0156dd4f9ed784cc836f35ce38d1a912f72d891732ba75448893d96370fdd8bf496b490cd6ce4550dc71978346805050bf663ea73618a646ddd0d73c002ea5cc120d29c1d34b2c1ec23eed29c71e4106f1b04ee5054330b45a1da1f14b545f08f4897f4c0597ed4959a4a65ecaf4b2192da7daa5592aa117fa2c0bfd39e66a3190a50dd2ed1d320b62bc6b6f5f923fff66cb469c4750bfdea6261d1e78b64826c3d05be6df381e9870dcedcb6ccddf30f8fc2d555cce7720deee9f8403d1acc4c0ddc750a571ce345b8a159848cf81b27e2d30bf7d449468dd546d46366c736ba599831200da905eaadad4aec05a4db37c9fad7daeb0bc3e62b03067408dc8d8e2e868cbfad94a2cedf8a5140fab87be4cf29455ac5e5be40e36f1d5930698276f27c53e4b167408fdcf31a704be9d1e2dc581574c99a9e52d1a5a680a6ee8ddcacd453944831f6569f8f0920b447c897516e6262267208938e4148ff63e7228c0c79bcbbae960a6c264731bf0e4013e92a43a34097e04039c222bf27a2c8da92255a52bef5784f2603ae84ad70d33568be99bdd2cca76b1272240de83f09ed41077c77c11b6178fd1e11315f463960c0058e210fddd56c935e5457369ee2f20fbbc3ef5a77331caaf40d352c0d2fee314d1e4fef96e9aa8b336711d9a350c1ef6612b4644a79797b2b50403c451e0c9d191df62615b7834f6b19dc391da4895d31bbe54251a11a00ccf81a475914dc71797b69d4aa478cad4129ab033bb830416bffa63bc44f80d18872b80901a4307ef0d76d25d280a819de8edf32d822ca47b9cbc571a86155981a919ec87763aaf6df9dc972d0c6f2fb2ee8246fd1d8c5335d07e2d3a7d5a639fabc346efdcbeb40dbc73705df0d7368c4aaf43d3564606aea52e42953cba4184278fb14553cafe2837f0379acf19177ec05595b434293024ea43440e5f7fdae57448d2994c3a93cc461958f5939214e09cbc0449f0eaa680561c6abf2bc329a2a5f31c0af89d63ec5f76fd1f4950496c3e57b4376b16ac5e4647b57cd9a13b179194bf5da2ce9517ebe36099aeb1777b5d5c9cf79c39f0efb4fcc20446e2838dd16108daafeb1a1a3d4bd0c6013d3eca27b6ea6f4b4d48ab5a7e6367a53ba02bed209bc436055425bae3443c02d18fdfb58d69dc1ab0b6350f77cda8aad0495617cf31c98ba7d34ebda0174c75a997be1ee1956582db8c738f70892c5569e9b6cb6a42568c3ca03ae7a3dad77ec573484c08cedc3e9c9d3856ad6cbb9bb101a14330c5ac3664811f6c2735de9eb15afcb97765f2a91f1a31836bfc08bb626d9df0d4115748ce2b53d8e33739a6fb25aa815f28994a9a0405612fc108d676b77cfaec387dd22f618be4f5477abd80e39f8748762619fb9d29cfeb2dfdf2cd904ac1e1b7951e539cdaa8cb7f862b7b4753410de58e022baadbad0ec5e0ab3cfd3dcce75e188c862b4ed8aaefcb8db9466814483bc681c27b1710c04421f212e6fc16bdfca76e810ef767547b8c345223f42dd184489c7ef72e750a7c55f1f6b870e79abf752a0c524411f206282df70e15d40099a58a57668aeec01ab1810aa814460f7fd10bd46b3345a1484b26f268c7824544267849e8a3d9063acc9b298f6ad71b60d90ef14cc0fb576e86e487a5cf0ea9b94bcbe821c181f14c23adc08baa344e93bc1a3d58d0f3b13a22e6b40ce189930d8cb6cbe419e13ee9dbf8d2e63206314982c787b1bdf7965e59b7c8c59a1f2439b14e85169c1373927a9dbff8859a131c39b2cd04bb17c6f750f56777058cac4108c8cba93056cc1d277d6b6196c3ef88628149637a10400e39ca485afdfe05cdbe0f141374493b0d4a4288c3106270de4aad1efd17a817386efbeeb328032422616bcd5c0df6d9b7afac426a522a64246fb3d198e80337db72b99fecaa17e2b7bfeeb88deed22d1179cdf447fe570c3f77791f446a9e3779a07ab1bfac85ba26943ca8412608c481306b8e6f41b5cade0dee9b75dcb74a854e677cda3bf12b1995bd4d86b740d81903135a180ac877f63f29681e403ed189d62c7267300c4c8937c29055cbcd518205fb8e7281c3637198268466492c15eec0507e19a02f924e931a561c1c99c716f70cf51a337d335045246d42403b2380a0ec23505329fabbe86443527907ba851dada0eb76e729cc8e6313c51c016de82676cabc1e6837c8e426079130b843462c7810efa8d333fb8513df73367dc73d4f8ed2e8a1b728f0747073eacbcf5fe259ff048a588727206fc0d84f444cbff591262b0759869a400654043d87abff75de300c642784bcd9d2f90a5bfe1dd95ea49d2d7f5f7d502a847596405617a95916c570468b391793b40f2349867c26f409bf67294d70736eb57a9561d91d160615034c1b06d1c2948b836943882541a8bdfd506e5909940cf37bc538baf0f7a9d07a5b34ce9e0cc6a7d3153912f577d78c2ca80ea4927a7fd170940ea35a05c203d00b31ab346862814e3618a2750d213d5843460a27f4c02788a6d2211ae204a209f05528928126952c975fc884a42fe079dc285165b23d276e9e34a3ffa9443a410c5a5265e0c6e185b128ee5df1d85ee696029588e7a0caf763c1093ae81d4e1bd339a91e60c61052ef3ea2aad94dba7915c6ffdd28da8727dd10119b6504619e687e990b53deabefaf365c21bca2fef5abf88ca21f306246f06dc18c35106cbf2a423fc1912f8103df65644d447359a0521ef006e8788c36a6597161eff49c6ee7bfbaf732e87d88f8eaaff97b63e0fa3fe56ad361c4f732bf7ec5ca5a65cefccdde30b7e59f1d1594ec5819087cb44530739188cac50eafd2156b2f21473aa1fb9601a62db5a03825c339e3f0f86c179f3dcd456ea06e2a38162a982345bc16e40094f60a3aacab613c79e22a607fae09a31cdba10bc29ae57b54c95cb3ae588615d6121a3b170b4c430334b5aac2b45fe93ffe79c4f55f1d85f377faab2de7a0b6e30e52d5528b79257d504a983cd90e4e226b13cf4b385345051ac7670634d7a0ed4f018771f07162b449582502b0bd19ceaf782fb6842acca09bf1776acbc7c0938ac7015c21b4ca6582565ed1f245af5a7cf46ec3717392e79ac31a877c4b6929bd97f1081630273781042b9a447f9c24e24a0f0a5f99ef989519d7119c3838563dde8ab7b354d8c115cb694cfe9a1edda818168a17672a8c4b67910855e1d14746c2c2759ed8a642e0416a9aa65ae4d642d8fe606ac3a922381c939f739358245dd1ed0153e1af169d81ce33416306525a5046c4c7ad42d53e9dcc658a5b91c4beb3a6b5c2f6f3246ad41563c5039661d806ea09df9a0875b548e619f9a18671df1585fde20e163b30f0f91ba9bb427a208511df85ad8525c99ddcaf7cee0aeedf6e811c07b6c1812d6770453ea0981174c2349a568edd19836e0cd51f77ca53a85dcfabcbdfb3c5a40216ad2eecaa33e85dbf50dd1ab6ef132427006ac9dea3d3533be520cedf2619e29b27b283707f7d09da444b53453035a89c5b963ed07065cb5bd699c0186c7e2fc7e6efd14ca551e4c0a95874dbcae70a9ba92633deea8cde005fe75e8c5c4843ac0b355b1171338aa59899224c85af4aa05fe91040d0e54301e15370729d23070078ca9613073d880a37dd8cc310cdbcd613b3c61b803a5d80eae06fbd34f1cbf07d25a00002b00602c1175038bdc1939ee38d6cee1a64795ff2433ce179f8837442d6db4b4b4b4899429a5c90d1c0ef70da83150adde4fe8e42e7b3710909c6d15068a4a79351f0ee89d2817d63307866a9a10d532c7e3f2b8be95950f923912c49239d6dfab6961aa9963a6260ac4dab6abd9c0ab41a1a4341b702954237fe3010d822d82f5e4682d54a846963ab575a8c6ca7f718ec67229395a597f501178e4bf846d0aeb3feba556b0fe5d535ccbfa6f3e36d6b6e2da8258282910cbba57b3ad3e951cb934511df85faf86ab14a5e904c749b74d282927dd131c8be324ae27455074a0b42cff80c96438bab71a53b88aa970432a5c71217d58ffccfcd0e883df913c8bfc4e92f5b51ab2f837e4aa71cf7ffb431f7d85634de3babbbfb7cfb3b7bd7cfee6df7edb64ba888f9b139aed2b639bb797e2a7c5ee49c0f7fad368d8aaefdfde6bf13731fcaee14a7fca90c9b6ce63e5a3bbca4f76b2369735acc99a2e9e2d57b526909a3a6b266bb2668dd7fd2d63bb55b2e442b3c38817d0d002227530f9b7f370d04e1fdce20f123fdbcf719de561b967b16d0cb7a0eda99a3cc4b9f2d1f3253f7df0103f3e6da0d77d75fb990a3c08a996a9c0c390f7e4a76a77523bfd167de52a57a9563e9cc483652cc9b66df2f3a972aa260f1218297db4aa55cd83fe94814e86993fb8a5c10978685dc2f325f546b781652af917a772d4ecb5eafb92cd0d453e5d84ff23651549295bbcdb67b7e7271141af915451c6b60d69419ff788ad92230e046bd344807bee5fa427de66358ac7f4d144b495adfa9481eec86137ad351d376cd56cf5a93479f8c8a78f2a545aa5f2f1c3067a5d355b55d82b553d5bb33581089938bacb5680e0d94efb94816adf3d8b0da566a2941fb6338f481d37d29651b58bf828c3bf5d64e54f3ebb6126bf7f9307fd284b5c7d59b1e255fe45963e9bd55be31355d148544791e8c55f516d482bfa947ff1b32b565eac6f526d48bbe2534e64c4787eda153566a5aef0fcffadf1d9f0bfde598482c207d5db39302b453526fc157ff20ed2587152c31ae379cc4a3009cc7a587c26b260512364c14c7a42d693752064b31a235ff41ebf688f414fbd37ace733b157e0f1c815cf60a39a88933ff9ecbb2e3ba92c5d129eed3a514a295f6427ca3f11eb95913072c57b44162b56ac58f1128459e1f5b742ec1a3cc2b352ca67c9daba6765ed1574103db80771efad88a215719425ef5b882c1f8a28f586ac0c45941e5c045a3ccb37088352591ce5c8a5e8204cf85e286e3eae3ccbca7b44cfa00cd1af8422cab3882d5e8a2b77b4ddaf881f0b51f65f2662282b2269431479f22ba29393efcabc48cffd1ea52db59ff798fe8b11334416af7d8acaff0f219b7df7282fc50cfbae7b15ed59682fdff3b28f411ae177ef11c347116f0d8b22f2bcfc95cf449e17b1d7b0224f5da9a27a6bd80ee59e3cc97b99274f5e76ef81a285fd808c3d79cf872c4a86f297da4c3483ed49f5bc7ccfcbcf503e14efc97f8f8148acf8f0b14ebc9e47a9d9d3f7b4061fd016e5bdedf388e133f880b62bba0f2b080db4ab354216e5e553941ab3e2c31aa3f2dd895823e4a9354276459d2afffd0fe29df6b1ef5452e483befbaf0ffa061dc0e265bd6d59bcc64293622635a9b1a8370aab7d5a56274893a256c50789a2c94b4f03491c504d3b79131f8cf25234f950bc356c285d762f9262963d80eb0d85dfa1b41d6589cb3ad1af889e134526ffbdac282727ff22438fc82f8ef2f219f488ba6ce55b6c3613859efb019994e7c41a21ebf91414ec4f4e5e8eb6a3c08af05974e1b758c93e7c4f5c1143b66bf12b2b58fcb318b1a82bea0dd98c13576c16d6cb62b394f7845ff22a28ef41a931f24fb03f917ff25996497943cc9e7ce84ffe03326d1b2063bb97e2ad213fcb4e5e9a641f7a8f7871d813901ae8662f05ecfd3eab3542f6e46f8d9095ff5d199413ec3523ecf725e2a5400d12a8c4265a9b52717e42a61f26167b314286ec26239be1a4ecaf0d92e765bdddbf0ca14638e699fc36c3fec549dffb1bf1dff79f97bc77e12307b3cfc7714be111b7d80e0e54d2d8b219ea88405f255b00d2c0927d3e6ebc6dcc5fb74dcc5e8a77c547ffae97bf7fab2e30f89debf7bff031947f43182ed725747901a336edcfc40d9b957ec0406f18aefcdd5c76acff8b22ca40fbf9e5b7cb8a18d21f5097ef85d6580dc211852262fd3b47a8637becc34eb9102817a2517ca0a2cd7e616b53eb14aa51284dcb428f36aa51ae6959bd2ed6c32cab93625d67a5520c4d4ce52f1df366d9dd594f7ece596f7e72b331b0d7eeb4d98765d6d3be0cb3def669dcb749eb751fe71d18e3fb4019d87b3a8e3d8fc49eb14dc61ba377db8458ff0fa7c8910f769a3afe1eedc107b8c5ff096ef177825bfce7ce6cd13b75fa89b9e3249f3ae2dc697ba7cee4ac0d6ed9993af3c8dca922ae31da7ac0b6f51b7aa70e633856fe667239d02ed2398df32abdb94b9644d6d19115bb9153e7a66fbeed64f98799bd60e647f6f255e6f7ff9d565229863414da904aeac3facf907fd65bca8c62e2e4699b5eaad313a5a3e3b74f7687f5ef199d233ed3392cdb937c0e9c7ac6492db64eeb5cdeb1376aac216365db7b40963ecfbcd3270ff30b16d4e7a510c4c0fa77aa8370993ddfde6139d018d88b68cc98e923f78e93ba27a6ddf100d8ae4a9d21b48e10c852dfc851ea66e726050169daa44e86d26922fa087873e3d2c46004dcb4fd8b4b1d2c478e9a886c0603331496a1b29923d6dfdb4437794c2507a4f6528673143a47c74c1391a98083f0e79173319d8c059914d6df4399e52bf0f9afe2104da04ddfb7e9aba8cff479d434cd7c2fc566f2fc26b6c9c125a6e953a538c1c7f4bd9bfce2f088cd05f0361825bef7402e805775ba1dcafd953a598e4cab198aab9ca1ec26ba89412464b49fd609ee83d55e6ab2728065f9071c32cbba25f06c233efa7412677356de31e2a3ccd3e1802c61af5550911a32e54dff84a173dac8f6b777aca6dd29e74f10262702d284552c478e7440fb2f76696c4dc854e7b40e26533265a7838c9d3025783482147121d832cbcd5a569e6ee06ae160a68af6d4f7d315da6f42671a870a964118aea91ba0eccd686e70ca5652069485d8c06585d014b1a536ad321f74a0579e7c0ef4091bd46638e016ffcc061c84ffa53a39b753a41bb661c67aebc0010e5257ead0be1bd2b46d6b8e7310a6931394c1ccccccccccfc189df981d52cbb61612f6db6c349ee99ca493b9c6442b967c6bedbdf934e4119a39420480d149b32b009ca901693d3835df9db63f5cae7c4196fbd8658a9630666fe0465f4cf4c8793a40be89527117d71e703dd68f798c8f566348e73c4ce5377559e44d8b3e54f75e3cc7a25ed9727e7aaac77eb28c6e24705a596a350a3864c621833332653b6656a7e63a0dfd02b4f2a8b71f2040169e26aa6c39eba5c6bc894ab508f2d65213b82d82b4ff6663413882db5d431df372b6fe8d87efe40dbad3ef1440cb7dbc7c0ecf6313ebb55afbf8dc5eca728633554f553abb21d3e7a4a96640978e4af021a18a8ac4b1bac6c4a96d844e32a5fc953a6ca687cbc198d75ef02550965caf28cf56feec71ac3babb2b5643a66cbff814bd79fa1876ca49f24947acec943cf9e83407d453d6dfdf7538a9ff4f594bd4048f5990a0c1cb5ea18688e52b3481c6beb07c052530c132784466bbd217f73c2468e0925e7fde628b040d84d058b69e37bb07091ab89c24ea6fdb15091ab87c64e11929de242fe3cc10957021fcbf3c50ffea6c2862fd957012bbd840c44a3608b1fe73aac15e1e621d079459dc3b0871f05a72c4aeed456fe4886d03a08023479e7fa1e5e79eff5968fd7c94a3ad760e3832b01a8893b41af2514aa97d81f6aa55da107a9bd52c59aae196cb34e675f02eed9f3e7235a12cebec056e15e4dcb0b80b5c5c5c5c5c5c5ca8904ebb296517428a97721ee997ef7d3ca673a32e562a71a36f086ab8cc24a623a11f73f95bc3c5b6e6a08c9e20ccd68d550cfba86c961e4cb6fcebd5eb62bdd06fd785c558407f572c763f8b5d8f8892bf9cf57ca1ca3eba218bd5eb3d0741e2f553967e8f088afdd5aed7fbf9dd666713b3561ced65f30e2c2c2c3566a7ac56a3539aa635d129ad46a764a74c3fa873c163963b4fb60feda47ec197f1109ecf3e9f2c03e7d7a08cf9de4bd17b09ca9056629fc3532fd02cf6b27a8a5b1ce5630ae8f746c2905299922397a5effd5de524f0258b256b0ba51e78f4bfd262ac9b1d1f7de3917c50a43cca9763703dc81df92e53f25dba7c2a82e4cb1b09438ee4bb0859a8bcf957e8a22d110dcf4bcf3bc0537b4441ffa3c0f7377ec87a3fcfe012940316fcefa5f8a99703f23d9b8fe04bb14668e5486ae2e534640e03eb757618e7042aa47ce56d80f6b3f76196c94d39a70dcdce2f09743af67d9232f33e583f714b57af0dcd72affdb49d894ff4499e641be44f9f36b331eddcac8d2979ca600b3277df4cc96a6ef16f072d8bde547021270c1eb374f318380d96f90d96ebc0443ccc45786964e1425e9a2147fe30ec0c59eafaa9e31682e316a2be7abb085dbdbd04ebf5f614216f3c6a1ac6cf8d7140963a083cf2dfb153c4e895f511c3ba5f99cc703ce4a3df91e5977fbd0fb14c7b26e24507e19cd3ae174d4413e920fc5d2fda254b4ac811912602031d84ffb7754fc4ba736287716267cb60af9720a773dad5ae57e3c81145d1fbcf8201ff9757ef66dbe556ecd19f759de9efb65dc40807a49b8183f07734708bff6d2aac3f86c32dceae1fd9cf70524cf6dc7b9d913d631284c9dec10c3c22ab1f12db6597a735cf400283c16a113e6aa2c3f0d11f7b0eff622fe9a685167bcf2ac54431243d06ab61e384bcf431f9c73a4ee7032cc3300cd3fadbc7a7fc91eaf536318b03dd7eabdbcbeff7349a7d07c2f8cbece57b1c0823a54ff7c7c0194c23ab9ac8222b6ba0cfc7ecaf8bbf8b2cb1cb94dc06ca789b6101f65f5c241e61c477bf228a62fcca770cf8179f2b59f2bc558d2c75393935393539353938b2d46d1ba561d8b5640963bdb816e052400ecda130fe86a5bfefb92ef66a2f4da2b2ec05ea0097decd02f177f31659d250db76436b841803f3467c0c91c6ca77efcd88f1a2193586db192fe33523beb229d65f9bc9526f98c2fa6f2727cd7869267bb9a18875afa5117112bbde803343460c11091a086123c45bf2463c8ce8019407c0af88311e40f9007c8bf78cd0ec41bff2a2bf9e1d72b237a236111f51fe53074a82a1b6cd319487ea56448e016267123b2b763958effeb2000598bcc927e065f245bc4c9e88d710f56e08a897c2a8372cd5fba47a47216ac64a79e984ff223b4096b10af0fabc4b100e44cdbca566eee2a50d497928013c3f00cf8f287d5163bda81ef1d1b11dcc0cf4623a9daf886ebbd6d74496e7367b471aebff112fafac89f672d4d55e02a8215956e55d44118d16fd2dea2d7994670b005144a3e4e7cf1ad3d5f325cf96e456edbfed3d1511c611da7f5de6ac4d48969def2acee0fc413442dc6ad7193ca0577b857ca4825e2de7d5cc1cf2782eba9cce888fde35417cf45015ba9c2ec7c2e135716058134c0747092327ebbf84f6d28a742e07b168f122683be32156904c189dab6b796fe85a9d102d14b597f66aa1bdda623a72db6ec802888ee71f0b7105260c33249c1a7c23b4e4e7dfd786683b32da6a2f20d03b1fe56f977302c6201157be45ef41269afd6c70a5de1976e541f1ca58f049660efdeb62e7c8ce6716ed4cb113a4bde4684ed14fcf670ffeacb7068e8f30dc40b3bf1347c62c92d599e3e3cb3bce0379a4e8f324a276a3e158cfd1b983f515b1060c9bf2138449f98fd8b53a213efae741916d839c78499efb952bea7f61d97a9e4494d1bde74151d43546c796419048f448be45af92dcb6937eff8b34f929be484ef47d4acc09f6355e58f1d67061e70d1bfaaed509f1129b401f1245e07f0f7e8928e2be6d3f66c2b421190909fd0cf4b46a373e6a2f2ddc2e47ec21ff23fe2ce213477e3f719cf415f1127b2aa6e302aae174671976c447fea088e9fc7cc9ef5963fdb33e506d88f672d2a7e5a09de862a462ccb217bf96f091bf262aa1bd349c1cebdacb656ded65b9e5a92cff20f382a3655c6b620b2ea89722d67fc5e5851096efa7f45c7cd4fe62188661db7b2edc7c01e3058cf91383d18ecabc477962e8a3acf1d9ae766d202297cd5355d8d92d5f6a81de30445d5eea65978b4b4aebc3e8061b0e652eda631886f9f4d1a70dccb6b8f536c5d006864d41e50e3c7e4199b0237fc547fe211ffdf31f32a9e4fb5798141a4124dfdf31897ebf6492e66273e920fcfb72267f3d8f88d590135fce842ba38b26a2880ea28978e92040f5fae6e2c42506b7f89bd4ca010c5c8027d0a3bf16038ce9d7de7f4613c11c84f7790ff2b70d7a6f7e1e534f87a893bcd26941f5f65f767de807e32e580f83f5ef9cdbb62aa2916156ab21a7fea1cf24eb88965ca16b1cc47f654df8728893ae5cf124b9913846fce5112ff1142f2944c7b60879e5038893e61aacbb8b86e4907b8230cdcdddbd006701f1b177d0b0bbe78ac0f21f6911becc11ee1cf1d15b7c284e1f37dba2f2bb5ad6f891cd32c855ae5864f1b246befb0e15afdb58865c9d888ffe383eba8dbbb86e6fa02bf889e9aeeb475c3bf2245347faaf1bb1ee45acbb0fb1ae23476e631de3bfce4364432d3cc8f596d7f848fa7ff843bd21ad75b329d5b5b1d4bbd1957a69a8def0eb0d5bd41b569d3e22eee888c067fb7dc8624537d7cb8405fd8b778b67590a5978bfc2f33c0a7afa9d08fa926f10862408e63418869dacbfbb867889a38083021ed69f815c57798d9ce214c45e6f79ad961dd260afdbb8103603bb5a14a8a911126406124c440ab1fe1ebfa054dcec68204c4a583f14dbfe872b2d98b031dd635e2776df22831e1385ffe1b7ca63af899709abbda71dd155e47d3f8b6791f72b3a16799545bd4c30d1af5def4d58e5db7bf00827de42a1623ff0af7df7fdfc2fb213bb5711aff7b4c5ab68df69cf5fd2892a5d27aab450a9203450acdac04a9ec1245a7c57635abc4a8d113df63630addac06c8b3a7d6479163d5d7909d2003df60e1ec152438fd5fbc3ca7fe83fecfff0437eeeb03569c37f71fefef04361c8756af586c2ae61ad1faab5deb661770dbd178a3224ca1a1cc81a19c4fb949457112f1356e5358def76290bec57bce769b4bbdfaa3cd6f53bf3ca0aac05b3a8bfe2e7af4879fa5dbb1a93f25e8a0aa7742998b689198bdf44de428b7122763f20236251077acffb5e79b1cc2cc44ce53717951761584ca505ddb06fa1b2e2994be2b3f8e744ec3fa3d9ff8b62d802fb4dcc2e8c298e964527bfc2ef158ab69d48ec6a4cd300bdf7deb37899b8dd7d3dfe8e99e8bf2f7adab34d517994f7fec55efa2ad50666bdbfb413dba6a48050e89f88f7c5d237112f13968624085342493e060949b581d9ae158ab6a0234c2ce82d3fed7bb2f4d9891b16f42fee84b4a0d74018507595d3f80e215017d0db1e8fac21898eb05d438906ca160bd91e593546c30f8acff2ad2c7433e800cc03b2c64958151d81bdf65abd4d34e1bdf6a223dc76cf3601332d2b8374751a16f48620f62cf698df2c5ae22b8ef9f33d8c4602665abec34909986971ed714ac04ccb8463d61ffc3fb0f71fdcb6411ada7b5544c376f5ca60eb81d7acd72591b54065f95dd8d007cbb5c7e947133db8efc791809996e9c4bd6889ece78b269045b17d5645dab3297b36cd09cc7ae34713099869d9fe1f32d87a2001332d110dd38fae9918e88b6fe297032a1ad9e432ae30182f7da0d76956ac3d58ac5e6759ffe62aa3ed0ada429c24df9bdb4669bfacf12f50e9417c741a9735b2e5426029601753810e9991e334b26606122ea7f11d3efa9535b24647e7880c7242e15eb8bcd7e6632f63124d007ccf7b1e64b1cc3f32b77ccfe2ad7c2ce28a8f2bb665f8dc6fdf9529da3df7598de12a8bc4e1323d6517bc991f184acb3a2a15036e69e976d1d45ce1093636c5f21582a8ecd73541807ced83f589bdf2d11367ca47543fb77815ab39f8ef44f177e51a0488f344f93853f3ef447dccac33e5e3e88f79e2adc1a8cab2be6271a626cad2983952cc2dfeecb91c98dd452225b8671b011993c47e7359513fe55efe129c944feb0d51ff28ff067dd047804d7f23a423f732a687d1f58925404ff2116013ad37b67ac3f02f0cccc42692bf5b3f3f05e4c8455c9f58423ef711609312f5c60c19d3732f6302e5d025e8cba7f547133d44344c3f3293b74e2793a86beb9c4e56d6131571155500f4dc2f51f2a1ef0f819eab37da04fa9297315d7641804db48a26209f7bae8a26d026eedbc4bd4479a2a68ff21308bdac51c80f3d4a48e5a308b129e5d9e43428efa19cfefc1655440fc8917f8ac8724483e2d53b55b4cef469562986c4895203652b5262c6b625f97066467ee867e8a3bca83f7c19138948f24b3c49586fa0d4d992237ffa3742d52563f2a828455a45fd242f63bac17204beaca2ae2208c8a7bf847cfafdb4def8d17509fa24f506adf386ac322619138311f034d0ed6570f725accf2a6b9e1e8825bd7a1fc4e25a5259020983803ef5be90d166d60cf1ee97f51f62e363374808c8056af9e89937f754016f2427cbbc0509a9e7cdef094ecf7b734e4fed07eb9dfd9f8881301e06c27412fc3df83df845f0f7ece3a782dfc7254f8e1c9954f611ac9ed2347dea9c9f6590c67c0f026d7234d0a6e9948f67a0d79393faa87c7496680292be7c367d1426900ffa1ba02a9a007dd0836a14a61bf2411f08b049d64f4a8efc87a84f3d73f23ccff33c0c7bbd5eafd7ebf579937f5bbdb7ada42863dac1d573079bb9bf9fe2fd3c0c5404d011b8c51965e30f3f214cfe16247c94d4a7d6464951102b5403c22962fd33e7c9669ed3d4364ec749d793e3c9f161fd3d469c2473cc1d9e239fd0c982f3c5162c56ac88545242941393500909887e3ce0e775dca665d894ce2dfc1fd8dcc2efd16f0bc236046e01bd04b6eb3acdfa838ec04364d29a0cf1f16486594076f8e80d62354a8e9cc5fa18a1abecfbef09cb44e524ff6e205e523151f1b101b11e12f277b3b1fe2738b24471eef6038ab68c2ab2070f91d88cfd5f3c93963129d0ec6fa7ac2c4d542a95fa71f43e100b64041e625a10cb4974c7a90413e5a3fb904ca01bab6e2b1fe51268572f6361f5f9fccc8fad9e9ca05c08ffdb964ff4d293f77d1fd1e4c572d2b6e35402931b6c0a7a4d5e96ce587f0ea4f1f9ec37f0884f15b19df444936577aa262acb341006bbe19609cad8ec27889b81de4f90cf444d166cabf98289da6ab6d566b309d96c36219b6bb3d9b69b4e00db164c046027ca49bed571a24aea4812e670385208d205ebbfad4a3622202934c1a5f2fa5a43585268820e09090ebd1f21ad20d6dfa3dfcacd607d085c04d4b2201ccb34727463fda70f1e3eb25f4d1f3ea0386f7d403f9ffd09ce09cb491fff6c2bad98bc08383ad38fec4f4098ad365db15b8df52f796e5b75bddbaba4760e8ff8491ed43adba5957974fd64f96f38051dce20639a3b26ea533331508f24732256889742154f318721d6676a2553736083bd93f59de860027b67101ed63fe3920f540426821b74041e020a0a2a021391bd7b19e8fdb8ac3f572132fcd39273cee93de79c9341cf95b19f504a96422b1ff987521e17e0f8b178775bd12cc46385924249a1a45052289daa41498180dc91fbfba0ef140949653902b19cd6156e64a92eec05b15c0e54fb96010f0145c38089e8d08df527bcff9e88f521a20d6abdee90cdc7df8b6362e813a7274e16700b8a5bdcc07da846964e70e4c87fdb284ef83fe2b0582c168bc53a399d9c4e4e27a793d3c9e9e4f4afd7ebf57a59ffcfe465a2da3ed41382262a1395f5ff4c54a1ed5329d5792ca4335abaa277a274acff44cdd46c6fa2402c500da805b201dd74f586ec05b13010eb7310466e1b654f4e49564f4e0908c32b1993ff5623c449af20f63b31a4820f4a8e3c741243012d44cfe24940346fbf920f8d1cf93f8b16a290f61624d2d1ca50fd6a2da1f9acbca7e4537e85942b1e68f220385fca9f528252cee9cd8fa8e455fe037a5f027aa048640b8aa27f9122d144c5fb14f1be58ef43f132613d96933ed94e366962f2794f6e41bec9fb77101313f926b2768cc98780c0fc8b76129fefd047146525ffe221f81e05bf033fa6ebd07fc4926ff1034b442830dbbf750cb0a5067e89c856036580e0aabb9beb5e3261e783c4b781d9b7ed244f8502b3a02892ff5518ef3d4f6cda1fa3fb99d9c06cf75927a50dbd4dd392665ec1f29cf315032b69e6d4696d4dd3ab3965a591b22b8dd4b000d060de7f16970d114d47f2702032d4dac18e9b4db2dca66bdbda66079bf192c9690ed16e5e3a55482d472322a7cd7c4d17c6d2708860acb6588ec58c58cf4ed659d80ea6831dd9de1d65274b96b41bd674f9a84d9b9693f8492bef1dede6e66242b46cbae6f672126bf5ce21d9109f2e8d886bbaec0e1796ab76a3dd5859270be540ac11e89dacc96a4d477a4486a082289ce10e43ec5085e538589ec20e2db021cb35ae567248f908575c00c9703c60167eddbfb88b2c85408e4abd92a31f9ed0c8aa08984a517749d74de81ab197adfaac406f6875582fc8c2952ca58823eb72c5aa91e1aaa665ed957f3e1896cd172508f3c13e22f8ed3531c278360b7ea248ce2c9b5d15c9da2b1f3ef21ed01bae461dece573622606aa7d834b64afd51b6dcaea56658823372fc79be15a887e173717a2ffa3a2e58ecc45f0887fd62bbb3129e56bef492deb6da3f4b5ea636ff2278c8d164137399a95256798141ebfa07838d93be4b08dea2a5ae31440ef5f1c03a2edd9a4fdffe8de9f022fb2d45e85ab488d6a1a6ef1ffac8052b5aa57cd6a15ab5594661989c44024204c4a108666e0d36cf6c07a346115f526af8a666d55f3f051276662a0dc368ae1c39875ec16f67543748a48f1cb8149071bbf94d07159ff25daebbe51461852fab9f0d1e59ce39cda9cdff7fd364170caedbd6dfbd9a6fed1477719df858b93badeae3f248729c12f4f09591af9fb2b214b6c629c394a1dd0cbaf91891c25a678c7d17eddcdf2237a444dc44018f01b84f9b807c5ee7b6c62b4fd72b3ddec91f5d0bec11ea8376915c768caeaac4a7c3da0776c6e8d62a00cea6438a48c9cdf0e162ffffcaebe7296af9ce583b5721fbc5a59bfe3c8b2fe2e563e82883d30173eea9ab96b7c2f3e6340efe83e9cd4d53889bf4d1e067ac7958f74865e5fa1a0c81aec1dc167d9a33dfdbfcaf59bcfebc29364591060b6b157808b1a9b47e8f5d5e835cccfcfcd1a297b85d5dfb66ddbb6f6e1a307c17ffa12acbf645ff5aa57a2f62df3a0c02deb9e34795921c733f65a634dcbfa2445051de8602b6fb9cdca3aaf301f72a0bee32447fe9903c5583e564e83fde9744a81e94a9b929fe428486b93ec27e97eb24ee3a3abe4c87d0576f51d5c17e8f514bf02e68ffcb11aeb7f2953a193c3fa876876b88f15eb333efad4711a11c356d74fd5551d13e869a625655a7250f0f805fd1b86711862fd57461745b0f4e925ea319f4d5314ddfde5aad98ddc567ddca40b86cd3abab818ab8baec668fbbbd1c7d1ba93e4b3683e5663b49c9b5efcc5edc3884390d14511db88d1311bf938861e92e4f451b6b7e81aacb776852b69acf3e8a2880f538d2e8410fe20102833912237afb1bbdb85cb085225c910079e2116f904faa18ff4862edd84bb6d70d8b1fe5f8e912ab0538b648de156760e5b210c4368dac88bad408715ebcc78ec6d1d94a77c87e49e3b369cd43968233a39fe92a3cf1c68e7587f6d814bad7212e86183192418acbf4401974cdeffca19f9b22e5b206740f257e600f457fec0fa5ff9e34a2458974e30a9ce02e6929ad511866dc952e77cb2f3d4db020d3939b22402d6c991fc750e7b9d33dacb5d7b80055c6a1ef0c83f08d665705be538b8ad721f58bfadf22158c1fa111a0cd6a5a06a02ed1a822928a669b383c185318e43acbf0b3bbaa080ded1e51b5d6827a0dcea9d71844310ebef620612445e587f1d2466f8e82e5c461fb116bdecd27ea3d9f4f1888dc719fd52f0667e8036919b5f647b3cdbb7c8d653f202cbb212cf0361fa995f3ccbb2928ced16fa7e06b390d7ef11459eef1adb39f6c5bdcdd3e2b67d88adc7f3dbc6dbf61e4fa861b0cf4098ed41e2465d086fd07749f37f3c49533a116ef9633e7f59a41b7faab775d792f7cd4719916ed7c596d49b65dd59d6598744eeb22c095e282466a150e685de133bcf536cebb736a69d25e0916db64ff71f0e3bac3fcbf6ad781cfa2cf3603c1ff925f3c49018ca3e74bd661896ab57c10f9481f29eed1b08778d93361066fb4d9698f0982079cf2bf13ccf2be1d0f34a4a82d8abf29917a6947c7657a4d415f57a4a89c7594affb5f191b9d1fce916e28931a0c7619b4bb2cce3f73e1fca4a92e0ec3f1fea92efaf4dbf6ac32dad31de834aaa0db7dc35f67361302147ee7d0a0def41a1cf67290e0065cfe255a95915956c94f93b09fecebe81d450b72884f21f5046067a0f9804af80d9abfcb7e2fd7945bd353efa60a612ca2911db7a9ee77925a0da4c7cef890da483f87c8a087e28863e4c90540ffcc9f7497a24fcdc1c937dc9f35f1beec90fbb6d495889af43df55055484c6644ff2f54332af0bf783aa485241fff9d0bf2c6d27fd1f2e7994bf2e36f4363c54f227fc1b4abd2ef653523f27a1d07712420f026142355996651988e4244b26b264525d6457aec9fee385aa8886f7a197e17d88091b7a19dbe29d9fe59078fb4124ff253225a20db7249f078997e5bab09f7f919e8fb8bdc74e4a4213c1760341984d965c780554bea76153d49f7d23c102d77c9629ce40e54671b48c63231e84e111ebbf824df68065aa69a28d695d087fad07ed2aea17750d57804037965fc0dc0b1ebfa014c7fadfe0199af9d12f5f6e81fab7188221f4f20e87e0c68b76bb9fc0e3171bcac93a91287858490484e9596db4974ec4fbbc9cd4dedd371fd7e795fdc7e5e3e795fdfdb83229f6c7f57949f99fcf4bfee76573a7f671f9f8f2f13faecf4b8a1b8d933e374eb2b1fe9b8e8feb4364dbe11ff5ebaeeb36b63ded37b63527623f0fbe078adb09e84788f757d6abbdb4aed34874908044921d1cd5ba17f911db7efcfb886d9d0496682994237f10043f0f7a1e9c4ec486b2e4467caa8c6cbf99c94ccef953ec80f6b2b2c6682fdbded7db659aa4215191f0f0d1fdb5f3b1f151b31f574a255563bb5e6941f17e5e9d78bb5a437b59ae45dbf6717d6c84cc78497e8614b1fe7959ffe458ffe858ff54617dd3b21bbae88fcdc7f5d1039dd80773612ecc668a5e858fbeb3a55e958414d8bbadb654f796423979423e682aeb2e20d65fb37196037121da10ebcfe958c78668aed70ce8d53cfe18649e36d61f04e223d76c7c9c43acc4a68fc963ee983a3029598ea38b0b0c18d8d55cd86b36988d9020407cf0903a30e61c3347300cd35c2d6c7c086b2f9b5008b51ec481f8c8351bede524c9ef7ab5bd9aebca58cdc659afd6349766d3738893fa46622a59caaa6683a1b0d3dc993913a71bb2e288b0b622359a9156a61d7169557cb6c6591a1a28ffc5545273612a5fd9eb2c57113b8d587fbeb1d15e9acbc7ca3c5ecdc5e96032539250217f3ef62a2034b04b257853a6be3f02fde041a2726c36435cfdd150e2212553e0f10b0ae30d33d6ff3bc9d91d76d378fc822a31a388f547e234a3a375bee51a68d775f225152ad8711217f112dff4e026258548968b8a1470c15ef9c282e0067b25914eb6e42175388ee36896abe3544195f810f8e8fa4ecc55c4cfd673fa527d62ee135785f5af5e3e625d7baf5e26f25da5b2c45549e96ad6d1c50546ae6489254b962b962b971912080d120a791beb7f92447cf8c89f5750a0347429123a383219971ecae31794319d971eeee33caeebbaee3bc746ad945df599fa28e8d5cb7128ee3d708777e48e273be5244ea61a85ea94945c1be563a73ac77b1fe3d5fe6ae7902c19c5dbb6f5b66df2b5d3286e716677b134c2d7d967950374ab2c77aedcb142acbfac0295a377cc19ec25a764b9f3aac24b334ee2debb0f79d8a963da60437ce4d80b7bc91d7e4f8d0ce255c992554c77edf4c0ded303bd8dea1d5ed2d134d56b6d22b20a1ff15fb963519dc347fe3a7a478e6c1ed6731a3503dbb4dfaadc91da0662437664a961b0d98007d62ff6e2b1b121fd8e6d38a68c9424527cf899e5ca96f5165fee9c7232738bdf88d076cf7012cf1739a39fab2f3efa0c23b8d57586113fe3c58817f7fcff7918c1435c787b15764aef817d26b60e09c4472e5952a0fd2d69e51be1237f1b182f77a0fc2debe416ae9d717500b36716c97ad949f22c3b6f5abbe9d66e9cc4fd790d6a4f37e73a9c44d97e0fe43bb6dfe32fcf711cbf71178c964bcdc8cadc5d7b81a276b3001d47edbc72706e58ddaa59d96e9a8c751ad5a76a2473ce03f2d40b82eff9174f81a276a30df151c51b4ca6dd382907fc0c7ccf839f04789dd02cf8a08f015528a405fb9d48833c05023c1ef05fdce3f1bc688691fd7d9b89600a0802ebb7f0fc0445eda63de04df6dacbc722b497e623c9bfb8f6f2f14645e5876837934474a19545b4fd8b1bd96155be6bde70c40ae049fe09402c022c4f510638b8ac012cbbe030633d4ffb66bd2fec156da7d8e91c97b0662260d37e15927ac3b6da0b94c25ed643568d444e51f49cb8f2a21a2f6c0fd49b369128eaffbe3d50ad2e6090bccab378b05e171a8b25532c49c352b1e4ea25473a1b3dbd58fe62f90d0b879593da68a82a5c3d6bac7197ce464fafed06a7595b0d6da55ce18aaa685261a31a25473a5dc4361bb1cd393f24b411d22ae259c2151aea76b1cd1663c992af58bef26dcb58b2e4399ec3f21c16cb6aaf30fcf1254b72db28dd36e972b96469aee4c87fdb2845adba962ccd1a39caf90f434a6b5adb4669187adf76c36d3a4908e045a248f4d4f40cc20421dbef2f594d8414400d40bd0e009179bc2eb649b41296dfea3f27b2d4265c2c6b4ab8d8ff1fc4dbb5868bedff122ed16cb6c11d0cbab48ce51209c2802f41f99eba0945ea2579f32d7e93a4da7239c0d7c492c7c4b6f2a6a1d86c635ff2da7b266c3de00cae4e741ffef3f1ff590cf9f8efabe7ff8fc0e79d86a57b3c2231fd5af37fdec5328501bdf28686746bb8f84b1c2795b0d63a2d5a3c8b57095b523b47b610513e134d9ea39f4a4a57d13b39484e4cded3401892dab4499a9bfde4795089e9a95190e07b29da94e3242363cf8f8204f3a568d3ac37dae49538e01f93240924228aee5510b8d4ab29fa34e363b69180c4eb16e4b29d00215a00c052c2691a57226fe44d49a59a0d8c596c11049a9e0f7dfaf18833cb38ad068b053da3fa94a2da73edd17dcf38a96b132cb6df1f05e2e6e6137cba9f214bf4e399f4fd6ed643abfc6c9bbca1d9f62f2ea5e4a427ca1b23d65fb258ac3e51297324aa4a2237120c3cf237038a0d72e016297388704899c621b5195478fe5127611fdd2806c2743f39cea381daa7695de7e027ffc278a22748a39b8f61d8ac221a1c5727f652fe266e3cc25e6e5a9d371ebfa09aaba478d35cb9103f57f49b2a1ecccc200ce8391e2b1f49b44668993910daa6f4ab115a9567730236a0d8ccb6e804c8cf94e4bd4e888f9dcb7ad757a04c052ba0ecf4a420c4a5fdacd88388d73e192b73e2d3873e7c2f55aa31f01842a108c8951c8d8a28c247183262b40f3bf3526c26ed87f83b5718733c5c35a8d1e46b9f5dcc871582477ec90770ceeb240e8efbf86d68b46b3dd18f95344dcc80f84886c97f9fd59c742d0bf0101ea97533e76c0e0697a62ac44cc238958ffc615ecb9b02c7d1f7673b55b204834794a3ddc98ee3ee3a4ca42b9ecd586088d229043879d7523e9e37f627fddc490144204eeaedeeeeeeeeeeeeee6e18dfcdcc598d8f3ef36308047cf7f6218208eda4baa8ab5073699aabba7474a8a6d39cb22727cf797ff29cb8d1f8e86d3a7c14b1baa57cf4ef4d87939cf89a13b74fdc76bc80de2d75f22fce0e84f8ede016ff5a6bf55a9ecbb3f15e3fb0fcf0c30f3fb0b0b0f01296406fd7126f88fa5d34c0911f10225705b7f8afe48721a5fe4488dc1022870091f30143e458ae7f7f4d47fc0fe9bbc25047a7ad8b442922faa2f7e44745feaeb58387e85cbc7fe72a7d00b6003ccbd201fe860178f17713e22f253103e04b220c39a24f1285105f8821d100224be9420006f8bb59013cbb00de001eb1a3a2ef5a3c44f7ded58d5bd8f380100b40f986a83f0aeddbb479cf3df66e6a9106f631fd0bb09ed7df9a0834a9c9ef4d1381566fb869db543c446f5cfd8f7782718fbdc97b4c5b1a655b73f147c14468aea76f08ebc03796d90abc85cb53d8d1f89cc83c0e601b8508782a66acefcbb60da5751b8bf7e84b71468acf5efef61a4a86b416d06621e8d3cf344b0f70314b716409868fe8b73617a554436d5a6b0c96be67943e46dffb2aa5f437917e26d207822b3579fad5db280ea5e279bff1102e3a257adcf373a18f8230a06ff3df746c342740fce5fffcad3140bcf79f67b146a72c1035067b4e02f35c9e10afe55245fc2e5fa3539f1e3da4f7ed3d7b3586dff380780f08cfe3f7ea151de13d100f44ed40a39cf0b03b552e2a734bcbb378529bc0d876dc871a65bd6f790f04c27c3e1f7f221ad67b19ebc92fac037dc305b8c45980870862007ff986b730fe8047fe372501172b02e56202ff6a9b8a3a8915003e9f7ca866ac1331ab3971f99cd836081188d68fa3cb6800bce2efc7dea9da7ec025ad053c925c1a6ccb6b2c280b162dcf02081103dcd2f252446d266d6680472def2e2aaaab1fd41ec23ab4def0e2a396f79fdef2382d8fd3f25fcb73b5e5f9c6b6e0b43c8ef56f69f94ca472d4f29818fad8f20c46207baf5136a6fb9fa18b7f71e6e744ae627c71ecd84fbdddcf0fc5987e172127f27f1ff77dd8e796bff0f35c1c3bb6632e7b16bb8a6d9ec82ebc16b97edc47c4b067b19fe3aca6316a3e27b6bce7e22908d3529b7e5ac4cd7a2e6a34caba78cf85c83d87c07ea2076c460002fc478c7151430288284f45921391ed00bc9678477b3d017401e800d0b17830aa78790c22a782d142bc3c067b39d59d4ae8b0d0f672aa275a851fe53dff3491f67f200cfb4745926f903f45cc78642a20198bad09c97b9e4f942a4ee5630ba0258580303c44b7e578f06ffd355bc9bf990a544293af69bffda48db2256f63b31fe73ea8d8b6ed109ee0ff62388b36a8e509a46583108305dd07c5664b3ec943257d70952ad51c428917fa444ec52ddc5471dc9caf49c44790b99aade99a4326a77279fd037b3f4ec5434ceb5dcb493cc5ccc9c2b03eedd6a9b64f888fbef198aa3e59af254b1ce5e1257ab277aa504098cec3be8f53f9c8f1b02a6e7101bd9c0af3a1e2e1247e1f4eeac7ec4ae5230fedef5495cc95cadbd21450367d2df6d01e434198033a830d6b81c566acff0c0293360f3bede4cc21d34688d7c2b13388f5018fee1b8ffab91ff8e60355bf3bede754ddcda99a5335a7eabf1e8ed72a81a9f77b2e026c620ed87eae696a84b6551c73eee9a1fdbf38e6c36b79425272f47966eb9d6cb70d1a06ad82129c9c32c7d99e2aead39b20fbcd25cf3728f25b1b98e56c68d67be63cafc53db71027758542b3fd200c6f25251f951a0509b497a24d9ad63b44106893f6313d4470a34d2811c8973171cbb66db0022296f5868c499bac5933551ca7f25af6762d8e534d14bd52359bc7264e951cade4c8552eafe5b578587f4fc854f198403c9b89792d1f81d8c9ea02bd9eac93878f54b76b4d15ed5a5ecb49b76bd99627e46b6532b2bb268c781e4fe96d3deccb40195cdd7a5bc6df79f0f8050db18a0a8abc01bdf2555ebe9c94692e962f27318a285f36d2255fa12a6da4aba57c6d815e29a5cb26245f56daf81812db0ed1446f71cbcb47e9922e27f54e49002d394416912f992375aae04eb90e87f1160f21a5f5215e9a41f99990c9fbfbebb57d7ce53e4228282861a7c22c7ce26d0b8566afccc97a28cf22cad7ed9223e9e242dbb78b595694eed07f4ca027ee5b54f94ffc44e173208c4a6d6a03b3a1d896e9f61e27fa4a74e2e3a306ab1ae8b01e1b41c3eff7a68928d442267dda730d756b5a17985bc221940514e53914bf67110acd5e1b9aed0f555fbdb39cd4200c0a4aa6d9efb38f0f8df58130a190a6551b9ae5d74019fc4e7caafbf0f1fbf063be0f43d159d3320803b295ae1b27cd21255d9288a388506a0cb728f3c8a843852a14913328dcbeb2418ebd1fed1ef3de0b89cc62db181e500666f93d6f69bbbb51be51501885f92bf1d00161caf7a53c8d946f76823f14aaa20b49a96eb3027abd15e304a778feb1db90c821b9050e22246aefe012258fd51b22d38af79ee52450bd6d41efcfdf5f89f2262ffaef19f4dc7b20d159a0f7e1a31fe1ff5e8231dca27cfe764a6e8183f04711e54b9443e48d8f2d94a6804e08b01c5d1b737e1fa37dff0d914aa511fa18fe05d81b3226eca3c0aa143f9c58800dbd9bdab402e5f9197b14b1c7ac22c026369f57602f02acde70d38a0f1da17dca636012daf787a2bb4a7e45bde1b79ca45527bedb36f4b518fa90a426efcdcf06652aa6d0b2e087c06af586c089efb77a51448fc5efc3bfe17b251f0a28431da6bcf387a11aa3f2df87a1f7d0731221f9720888f857dec6b4fce1db9036868aca5fa9f2a9d498ef553ee67b56019310bd4a1541b1812b63555ec67eaf52afe8081048abbd8c75e2fb98d0b7135f4cc8e4594ca9504ccb21b036a4450937fbf98032fa9de03e88fadddeb6506c00a5deb65048db2f633d072150f2cc23930ffd8b7ba01813fa1bfaed4f44b660e8e44f440acee023fa2950f22c590c5514f1f26f27a1dfdee44f42d586b4e07bda0782ffe224e00cb632f6f66b21b025228948f29a18033edb17f9e22462076a4bc52bbb208974efcd0f14db7ebe63a53255576980b2bd4e43b343091acf00c56a1424c85e8a366148b0a04563c543609855691a51d31450acde40818c6904d8474102eca56813566fb449b674ddf49538ae6ed768e370b4cc8763ca74369202861c7646174568a294d245bed6f2e5df51be0beea5e8a249cd45e39adb443db41e3383a1693840a6b0a3cf9511ab975bb26631f0667e60f3f3d14ff3eb7a29753ef969727fe763d54f332794cf9c3851fb1363989f9c84394aa4d5cd3e81591bd3724d9d4e271eb85e38df12af008336ac58352a894a491a79cad1d9c171bd6e5a352a4967f69f93b27a6d4cb7d936dae1c6a61b3ed1e1895b1c0bf4ca9c5780ff69bb6128071cebbf729ad121abcff8e8c49f184c9e3cf90140851173a73e629399034031500ae87cc792e0f10b2abfbb332933e68cb95e00d80f13edf79ec94c6699acf7fbdec67cdb3bc76ddbd6354db36ddbc63bb4ebbaae5eeef9c68a1bf789f7b9eae127475ea5dbd752be5caa56c8a2ab936a3be1e0504096bc2547ee2a9d9c164ef8a2aeee149e28168e30032ace60b37afb86adfcacb32bc0a00d66b057aadc26076a3083bd92055688828ebd8e63d39252529bcc555996d12b480f93009b662607218c893d268f503ec90d3a9009fb69555755bd036c1a1f55264d63229fd4f641917a26e26d6b022269ca8495f57adf26625b13cf04f37c2da5946df22fde1988793ed0f33e5da37c83302792655cc98107cd8ef651f2252ffad149d83fd622f4bce257a6090bec35aca4e43f9f12f0fb3d3f3f9f0fe8f9eabfc88f78c10f6509282728e5477ee4477e40f95ef625d94ff17e3e2f1fa5a4242b613089ecbb1ac3e227383f598b972cdefb9590c94f162d66e857d4e963a8de4d7b4cc3a4c4e607c3e64b0dfb0dc3e4fcd4bb618fd5ffedffc531f131118689e3638e812f024560897899b025cf4cb9bb4529a5942d4b7eca19fabeec7bcfe779a2074515fc882c124d4f8bac8404c4ddaf7cd3843ee9f995cee441f0fb72cbbe582903b1d8a874ccf4b651ce2a45230000000000c313000028100e084462e18048a64b5b043f14800c94a84e82569aa7491053c818430c0000000000000000000000cae6128079bec5ce5b642cfe1041f31364df947737cdc7cd3e72dbe11332a913c78decde1076fe8b350f338ea5a604e27bcd05b622401df0a833c67e2f735ab55602aa2e03587e16bfaa11686a15ec427261ef997fac98e47635aa2dbe34c649988c60930cac295d9d09de538aa93d970ff73455eb871652a9405b050c7492845e835d01b1adad9b7c6f8e0cc40a30b21c35159a80c5f4158527c47c09a4876cf38a8995bb0e99cd7358168fc374642c6f2e10ede4c9c08618bb012993ccaeca6695ab430684f9f7e46d1311502802b3e237fe6ad1ee0a49c48b8d89fe997349e864247a5990c7bb840d60cf6b76529e53f359a2566c65ff80aa36969a78254463a9e5176a4f6a23c699ecd5dc3eb9a1b384893ac13ac1449359dd6c6b6cf3e20da1a8cc50a89365dd4de14a714bd8383323b6d3b74fcbbcc26b74bdb0b7b19746a50ab841f5f047adc8fbedc8de67b18215569061c79e084d3f9d5c649b2905f55a25e44c259e084fb871dfa81a7f5b3ddfa62714fc96aa70141a74b3f6fab8d6bee2981cc126a0af98bb3f1c11c36706565f87a0d2a7bf04c54649eb8d26bc07334e8d60f3b7431dc813e2e2d19fcaa2800002dfff9e63e84181ac181c4e622a8d8283ff0a60cc71abaf80569fb79eea2d9e1851215b77955022fe45ec6f999b02ebefe27be87279de6c4c6cce3c71aa689444fc1ede9d1d3463a12528bf4f2286fc49da169a71761442d11e347bc3c4becd18e8a92334436fb4cca7c80bc47d06f55b6a79490852beace6239b4744b3d280ec0b615d9e2dc2a24b9a29ce6f16cd6d19534a36b51cd931e167036fe1c9e41f97892ccdc2bbf95720075f8ca3781f52bc1e160d4e43fd2ac11eede37f0d4a72bbcbba0d98bb53a241f283b9c0e10184533f4f83dd0c5870098a751ddaae533f96a71835d1e85aff4d718b16acc73c7363ca11d73d18c83f35d8b77760954c7bc6f155a7c265b9a1780bc5ff84591bd289a77358fbe481a1b074eef28f25c6c735ebab403e5ea03508fc41eacebe8680d808799cf14375c694b2e9e2a8339071c8d3c6c8f1290182b07f1b0e2d51039db3f46ba6f6e7edb487335f225f4a5abaa5630c568414396c2e82d7a7d76bb3ebc579af10fc63b16b0fe29aa366efd642e79c8176678f1286176765ed618c732c515009f709e12a79c2818682220675cffe6ae95bd84dd6776a55c0c55af8e3e52ebbb77fa2f7cee0a5a80d87f34201ca853e38aa958432df111146b4ba12ceb3e077c24c1d544a0e3aece385eb077d302d77322fdb597f70c43f86645354e45ba0c4cf62eda4df9161e66afeaeff6e5b5586443b35a918e1148ff2da6b035d93acdcdc66a9faef22e88c94cc31b70a67a554ec9b7374433337a067627cec8e4a51d08c470d2b9a5c110157ed8c89db484a70ea6bf1b24e32f443fb0afd3fd0eedf7cd60f1389a76664368009b46905ec8c5b6eb690882805490eabbf954b52596df5c7914037b7571ca92ae63c8ef8a5b250dd299d5a4f20fcbd594a73b4a86b7d3bcc94a062f954faef4e41b52ee8779460d31e30e88a484e44149765ac5767de2893e61089b84e1b68d5975a80143fd4ba3db06ae89e8fdbadeab714cabd54811e3998c25befa19add73fc9d96d257ccf4624baf3c282ccccb665f2482aa2ccb46f6893c4e339146a9e9ae0cbfdf39f315826bda4101804bb53cf22fd59365136d69c4505b75311477320536531e609c578abd59d3d684ea05347ce145aa8dbf90baa6edd50f1e5dab6c72caa867c92c317357ab090d99cd78cd939ff1d78b8c819baa696901387d2cae8cd81590395da49170f99a403dce7ab4f9110fb059fcbc835f49da2baaa91a9914c609c6145ae7b8e853094e2ce7ba35fae6bd5af9855fac5d0c20ae5cb43c4be81ed3cda8f157551593a6094296f96f91b0c075e28ee8f24c814fdbc16c2e1550d59cef4a9b7aafe4001c0902a55375660b166f07e022675a80b9d2c97e73a170ee0ce9eaf6f7caf90d710d28fa9c68c2790c7f5275ecf0675af3cc02342c1f2c163e838c8127ac16ef9a4e2c179813dce7813ce8ffc7a06d7630130168db1c3c3d9e3834c9c0096720265852c411da9c2704ecbfbedc6db01698a8bba310cc81c54869cf5c0df36b84737e54f8b3fff5fe602cf0c4e7534c27c54bc0c57383b26d0103d3be684f3e72ece1dcd32c31999f3d15c5cec00fc6071b3ee70f70601fc71fec0c4fba3e78f59187b2a2095a09046fc7295d2e237393ab9107986e825ff77c3869546c7a433f5260a0f112526a3703f318be4715bcfc5dacd601e229eaccef5b6a95f6a4123f9636e94649eca1856c77221697bfb28152b609421fc5c6a70f80f32811ae1af9d6d7e7f01c484f2a4f519b96ad89cde25ff33b646f1c50009158217d8048b7d323a599ec8863c7313ddd28370847dcbfbb8b42e5ed166a9134778b6dc58b903503dac40baa3753100e3ebc77e1f69b31448e467273d97c4773b267f3940a53e80b7461069ec54c93964668dc3a815dd76371ca91b58bf894e827da6b7238bce590ef202acf862209c1e66e0443027b10bd1c11e77bf063be36759b2261c1ba69060e89f9f1b2ef4b5d746a06ec9089e982bf22f24f4339acb355a7bbfb4b1c4827668590242e666676b81024069514ac1d8c2ce80ee5b578264a98a62f80c3a94e91520384707224208752e3238f5fcf79296a5402346348aa3cd674a534178ade324760d847b1ae569444d722f163d8206b2b88b31569a74fa5613f75ba30480b5d070e20789d8616526edaeb37b34c2e5c16f6d3e8024d23ce9a32654bcfb53477ba2865db04c922baa1b303775be0c3925cae5bbad12dddd2adebdb9d7cf5fdcb727d9930b178b2a7128a81bb20d963fd876052bca37156ddd30ff9cbab6fa2d9c6e801f3ee68abd971549174078c5940d5c09756fb81e22f02b40f76e51c0791c3aa0ad00c10d8b4cfe7c42b208ed2065c37d73ad33fa9a60debe2ac2884fb1883606b86f9dbde243784f0f1e51af2863bd4656ba27dec8442ae914fa7f3dd6242e0f3f50b084aac76b1400a699c5d210e63eaafee9fbe6590ecc132dfddac43186abdda76419c5953baea69da06caafb67a6a03935395117fb1ad32f050df7aa7fb6a0ced8f33232408f45e7d78dd21600315516505be838a04a74ab8409a1a7732cfced32f489df09c5dedd046f31c08e9669ff91603c53d7c0ae1a67e02f0da2f11cf9d5149a2a438760ab43497fd4e384bd9507c6978140fc5ead65f4788b533d3c0c05e08435883290914e7246436d65f179e4e2bb9363c89c11e8b9bfe01fc9a1d6453f33bb8ec03003a696d17772d71f37288dd8e8ebbf98b08b70d54308243321d5ca708b623069c824c3cb9f4d5d1592d87211f6d2aa1d3487fc1f195cc8f05045df9da63ec2939df96f0dbc3c92df9899fa7c7cb6aca6a7d83a4d60808ac18f240b6af43d67b3fb5bb08bff7f510e7f411fcd0f49a327b4e450fcc8bd3299cdfd397bcd6b3f7ba1420bc267e27fce1e4697796665aee2abb512a51e1a3b7ba3f299f3a3897c44ca8bdfa3ba39be771dfdc1bd4898eaacb959fb443b3b92c7f324e35eb9f2175a1ec00a4019a7a26f5283ea2809572f1d836bc3533a111118baf0067624c7d461834081d64262cb4d89b08be3ef44e64dfa0c95e27b3c80a1956e22bc671ed17f839da470fc1a6907a762828f8fb5a3fe94e5c131d6355916d79afab4af987b5da702d312f8702acb178ab7b9a3b9101c6b022fcf29afd5476ea541d5b4b953c7af2eabfcf142a1a8887dc53ab4d4a04fb5ea5946bd22204193d86b7d4eb4ff04a445caa05643617990911800cd4e0a9fea9078d80443bb69e5b1856a605bb4da9a9ccb4f9bf0bf209215140038c471c9e7ca49bed5f4b8c79652abf5544dfc69572f44e24603996ecf947127731e0901b48f7c381eb2ce07aa9154afd6de688a4f9672e09bedecb42005984f3534a39afe95a64b8c82f072d34daa9356bc06e825c9d1c467720db180fc1e8ad81c7a58fbf9d529a161e8633ff34fa079d96741df09a53eed8a26eb442df02727bd3d75683cd80925947d6c46bc37df6817d8d645b3544204af67d3b78de9f2e004533c543776a1628c0ad8a0cfce5c4990380806c91d274604a7b59b14925072024eddc162a0733e371142d4618e746ce383e3617b17345ad0bf123f24669fe896cd7eb17784264e6e91a5297f344b5a8b81ead48221f45de65a6a0230dfa168c9ebcb2b841d9e4ae43a1c7bf3de59dfae3315246572f1eb2c4d9baef998c3ddbbebe914e5f8b640451ce16e27ea9c7f043352fa46cd19284905d7f371f40f8d26762483f562564bd45a1ed175a23cf527ae6a331e0c161a7d12d64c883db33a507ad93aeec32404dc608317bc0a0c759b32ffb9a5d5b0c1abb03a9ccf6761632903d5cb8d0fbf409fd31f1d12f723b5b2758d3bb13cb192352d16f3a2cd4e11b86da80c777c9f200d62becdb5387b0bcc3d8db5362c671cdefaa00f80d12d0abdda941db864ceb4207b02a5db147bf6c028768cd387ddd1cfd17e8133127474b568733ccede533b9bb3c14c6d9df970ae3b9c3822805c24afc287cebe499355209e474785acda860932311cd0c8dacdb53a09e944a9489de96a0515af2fcd80e58f9fa24a2266482e1dbf7b0ec34fdaa5585f0f90f27230e4fb04e9dc5e923d42f3f24a41976c2a4120af28d9212805a014ebc2e5621fcac30b95493ef76cff5d85b58e53367369392859d82029344ca6d31c9c6a0af7b50be7b4a882a906e179273ac5c23ef92d4e44735cc135499b3e0354e06380cf3a748822193badb15f0c9d8ec00eac6826a9e8225cda9252f66b4d31a0621a03059f0013522b42f7fd8d58958f1e64e684beab198a2e464aa052f5b86a8e44fae9e484c3127024d4e38d99fea617fd9184ea58f6aa46827b54c30df1c29cdc1a4d213c2a9b878ba8feec74745c05b6189cf2fdf2742bfb14d8991aa58660f1edf60d24eb624428e552d8d0906bad68631983cfd71d760c310ee23838a1dab285a84540fd2fb5eecd442449a1bbb184b1b476938623303e93d0effc9488d870026298491d82a98d9d71477875ce6372840c7eb57138e9a428e43a6a4fb2019e88d52425714da393b5e40dcc886d4f45abbb0ffc08b26676bb2cdd92d16fefe0cc8af5318c0fbf66804f73ae16cb3b6f5c8041737aa28abce0afe84c2a5a445fbd036436824a554cfa737d03d40606066ab313b047fe6d67920cbfa40a24aba6ade2192970ccfb0a905197047b7eb8c0f7636ed50d5d753fc1c03b93cba48b96944366ff43c3eda870543ab1b37ae5562d42f97fe3357bb0241019fd4701b480eb77cf1e30ddfec446c33c41b9b3e75f5b06254b6218a4d77cd1bf6749dab874a9747b5ddf2e3d46bc1de0cd46c6965d520b3fdeda597781e906f61f72960a2c9b848cd34184690a39dc980ab118c5e1c2a11834e56e3973af9fa1a725f42fb0d05d61dce0851ac33a726b03ac85508bc6fab485a2bb010480c7561f008ff3e7311680454f6d3aeb758754b0acdbafa70958b91e95a9036a81471d03398ed0e9d3659fe07683840ee9a5280d798a8a6d2a5dfce9aea55072abf34a90108aa4947bf63f180d5a14bac5ce355e6f62263a1a87b52439aabb7c8b63adddba19bd6fda444f3bbbcb1620420988ced65df7c5048e9b1967ddbda74306f73356311aa30e45ad9e8844428bd64ae42109b305c4cb8f12a22800f93db555fbf22f48857041b67f43879f409b041be452f5eefe255ec5d0941d287aa615d431015e0405027efff84f232d95423f2001e4345b5742ff998facd8c1b26f71f102cbef2595fda1325934e9f53eb2ed0f206186a4af6670ef7617c45cdd4a3ed89a1dff89c0a2da4926e8b054dbdf279d5c9f2c039ba0594f9f47b80bc9e27e87da88d0bf37dd95ac7135d0d518f0a2bc9ad067fabae6a9b3681e0cb62b17516fcc79ed6620cae64cf78a22b8eb35294876a8b27bf8132d175d2221120b70e9ab44314ecaa705891f20bbed6cc04ce24565fc1f9286a99552bac0679d7daaa2b8cbcf97bcf24e382eee991e7d50dfb8551c679ab329c7b628e46dac7168b3b8cef7b102e6a301d351b4d606111fd3a1b19372e6365ab88e7687b9714ebe637a779c55587d6c7cc9ea53b94208b3ddd438696afa5f904bd47e9328664b0e63ac13ce9e26190a4039f479910bab9317a3c8a582ce61fafa2d84a390bcb723dc5910833662ab50c5674b3e9d8aa98e427b4727473a8bba379d9e35910c8c64d7b6226f4a559b6320f340298ec905f119134ac974a6015a32a64ba0126c0392ac05fca638e601447f7d098aaab622f3d7d90cc126112b19c6ef6500085f1eff13fe2f76ace78a8e096b24406004d50ec96669137db11a5cc0ef7f056bcd1399f23b23bda559810e9f122d3180075a5ae303b8bc8108b3c28aa2ecd86267776aa0b0febe84789c53b0f37227cf8a06194b56b6543f6a9f7f5037ffbce1e46682a8d3120fbdc9ba01f2cff6b5de33f6105f58de00a7649328a9229f83577ecea64320560ab4896211b21b2936674740360989a24122efe252c6a3c0a5cda201df1e0fca5ed52e0d608171c0417b8a5b451756b2bae4ba02712afd17248885d8a57cdac711a1d5eb914eb1a98edb2396544162f2f5f080e82c657f25310fb6bd79ee593c550053dbb75d781f591a93b09ac675bbaeb78743fc879464921ce8b26fe2e26d1ee507a9c796ea37e76247bca96c1d8af4500c8003a2ec02980950476773b0b69ef5b5319aa9b8bd427cd904031002402016a7d1859d7185bce93ba3fc8ead45fe5a87811d424eaf4fd50a7c9a520c98bac69541f272c6fa412f14f9917e155fe492933646af4f9bbbe40c8361e1852f0ca334f527f1e27f578cd5bd47b8dea8908228df0945efa5b3455733ba5a089c3a139d1da2ab2dc35098398910e1d4f35048837a8a10ac83f8b142127e26109266b1d61ef20c0bac394dc1c94db41937fe2761199555d175b8219b4bd6ac25ebf7609e29e04ff59a5e915f420cc29f03758a72c355e06c05caf675d108def3c835a4005ee8397b9b93d023a206c80666cbbfa2b4aa2dad0367ba54dd579661a3f417cd1bb3c6ed108fbd437bc53d877ae641f087afcea1b619112fe82eb7477f955f09f696c96c5c5f113befeedfe72938b2fafe81f9b7cd389016793e164674c309b1bc71c9566f023c61d0dc5d6667cbb6c08c51698b7389594b6e02d4178d9db18ad12fd1276a8933a19069d0363383905c3f7e654f715ea7ca8aba671b3452f482492f71188a6dc7e935c4dd7807489405b0afcf8e676cc678d88691344fbcc8277543f5671f65e2a6cd33a0caabe1c70fbad512c6246bc6175b0f62520d62b95d5d8a80ec54906c7aa2235c1ee761ff0671a549f54015ea33a8a965cd46683fa7e018112c0b5e503a25e6ea953437de9da3151e00c06bcfb196ee1977713bb3eaf2653296e2080ef6cad305f79d13027d7376319654bf0034fd13e0d25fe7e34cdbf51d1ebc492a6d388a559ba81d4de4988a331135bc97da70107866749a511556194ee7cb7ff5297182b2b3607dbfcf9260218135060fb1706067d3fb44f5642750404e672a05acf65dc71b2c87e1d82e305672880c7511d00c64ec105bed88472e181bad6181abc9e8c8f6223f852ae00ebb46098d8278e1ab424c9ded2074051caa09c6c8359d1649220b3c6521ab5eeff1e6f2352c9d02a6138682267c40bf988624c2a5c69fbd468afd1bd00a41a5b7575667e108fd3fc568994ef2de30d818b9f6349f984c046631e446dacb44db8b2b0f9268c28c2649068cb8568cf6932a2fa1cab51ee928fac3c9bc25ba6ad34a52237c0612f5a9d3446cf4b389ba06d331c34afdb7364aa6858d33e04baad4151a2b0584451a67b74b28cc709e064c27def325c04a2034267622a4a4b8091719a920266696696a0a2534beb8be2943a2ec1e393d7b31a06eef948e753b956963a25f7a6ac7adcd56e9e12859a8f62cd31d761afd69a0f9f7c9948f7df8ec5aae53c61364eb99983e2198525224c2951643bf3f49f3b75d92bbeb555ebc18440ce8b13c4d85d88a7cf3a32638e9afdd28509fb95483980df14a98807fd8d541adc1f50bc526331055627955a19ea235ce1b4cb7fe2851e06491185b5667724f125da6677c92a520761d6e6e17b70b1bb5c2ab27604a7f3d027d76952fb5edd81c679f4b2ffb11089ee2a0a97f8bcd9f5b12acdcbecbe50bb3f669868801f39d0b68a003a26f113d889c06483afff72cfb01ee1507dfa633c81606b1460fe213622e9d47bb3e07076116ecfd8fd45a2da09b472d382bc7fde209bb5936fb24f2550b2e2eadef434a76f68e1b7e4125d4c0731ab99f2b4792cdd1ddbb71128b46b76bb7b63c3ee409391224492486ce4060a2b725acabc03facf784c6d2c0560ecf699fb60b77af8c0ad88b2daad485102ec219171bb370a421a897b918d52af20122b01ee4b05cbbf591f6d9579f066508cca22dbe603876910634f9dcc75c9b7b9eeeba8d99b8f95216b587c973bc3ae9ead7a1e6ba93e3f7a4b7bcbe04234e346e47e5bcfe0c490851e2f94dbe98d51b4188e63ea51458e57fe8dde9a8dcd722055b54282c1b168fa1e57ff81ad44984b91e0f4c4e4668ab1e8427f820264aa067ed10f422a95007e5d70a46b7f8c4f760007dcbe3d6dceeb674281cf969f67a8503d60632a2334780a8515192f81e8671600a428e8e5fe9345c507d3f20401f2f3368240981420f12d81df3b0302ff5e1cc4ef5b0a4dafffcfc8124ff0340c49c12d1b2cebf97b2f4a56dbdeadbd27d2f963cbca4a1ca9dd58a707cb884e7818b20a177e4fc325728e812ca95a07fb502bb4c79cd25a91822d3abd25ea30484c00b33e3d45a3ed88aa204bc3a25baf1771b2b548b9e6cd6e5ab2bd2d62cf7ed71aad239f93ac8c0fcb6579162abcdc5f9c9c6cad288f16a9aaeee58d18b72f02910ac16cc5222b0cffa57a5506b53e50d4c820ae264c0a6b632ae63d98a70c8238492b91ab2b72626c4b2918e9e4b4fc3bd887c515a2757bd6551fa84515c8a774b513481c1b7abef4a1cee2767c274568d1d339d062e7cf2fbfabb3984c8404cab81ff21f2bb53abd7855449cd2fa88a80a3fda63b2bbdfe1e09a25be13ba012d0d93770303ac127716d6bd6313caf7040769b11f7f983a2cc758e7fda717802ed5b85c4dc278f34f02411cb51e8e2cb7579ebdf3bbc4b178a0018c8756f9c996dc7a755fc8fbe97c737df1989095f00103ccd6af7ae67fcab63d7cd516e72dd64163edd79661adefc01942e22dd6bbcd4c8bbc4759f525a38f867b3f1d426b0165c6dc710b4ea5d9cedc227f44dea6b95997db987605cac9ee69ecf4a28f39883c4639925297bedbd65084366bd027452b5add3a69fc840c19ef68aa75d77628219c0573f7795af936430be1ac989570d31aa03b3a1e1f1dfaaa5a7c565e7090f4897ca76d25ac9b6f1ddc21252fc1363e4d97a7cba8d1cb9cac6b742f6648284d33ee25626e2fc6ef3643479adf189fdf1241b92c5434014bf8568f6c1704db63b15876c599cd5abfc061bc972aa677f557a0e139e55bf1ba94621eed3e8505a607a7ec9c8ccc9f5d924f8ae0a395267861783203ac6d7cb76428d37f90d29337cf5831b7dc574c1d0bc6eb6da4e183b7977225ed7c15a846216c3283eb833ebdd86da8b8aa3348f142d3c2c0e44fd38034047cfb0610f083f2a1477c3fa9ad8a1d473f761d794ae1b70b1a27599a5ace7819391fd20fe17e4813ce55cce11bf6a90a8ec5fb3ddfb66d04974d0bcc8f0f486184e4506cb173756709189590b9bab6460bb2d2749ea38d075e43364f322b76e31be4cc682c5754ae988a6f4954f29795298d40b4343db3aae499dae74953812c51827e45043fcfa2285eeef5192d86d623cdefd1149f5faf3d80f4e5b511e1781a5fe1ddfa06e45e29903f7062e6bbe3011d879ae7cbacee9cb770410ab4275414d4d32e84004fc735ac8acaaa914acee1da17d8626f81d87b20effc183d3f53489ed9dd716d6d04bd53c3f9852edec86705b5ab3ba7116a441b3c84cbee5e4a147a75c17ff01b188926b6048be4638c21e5a06cf698d358bd4e01b680a50939a247b4a6648bf1f1dc815022ce5d14731023b4b37e89fd3b830346133f27453bac2ae5262e4aedca5920046a85607ef918f511a0036bba29ac221b6ea67ce46988a5442c5a264504d957882bc2a44b95053c84c73706163e7f8ce3ba759123bd33222edde2716a7886c478a4289f8f4e1b358c2c86a4ad995cde0aa64e6353cb6fa4802f5e7ea1d4ea29fdbf2066f910e1223b3c45dccbc0f20929dd6b014b5e23e8ca6a25281f6db10cea56877912cfb5367f1f48d1f6206d6e224e0a657165e107ff48336e6b5d68561d41afcfca895749c85f9ef79be2560d26e3c709cc4c0401d487f56672e023fb04816437f1762b9863ad082e76272177197c4effa0dce81a6a0961b701f5b3fee649706f1513099ed73ef092adab190dac190071f178cffaefa22169a2dd8008bb7b64868ec5e7ce0efed641c52281bc4e5a4c8b23edece956805442f265e4f098a5b3930efc0e50be9a8adfc78032448e05d19deeb4f7c32630f5044a9d1becd17242741c34c45fed5b162cece446c7213104da9ccf91a249cc81b3c21917a2ace8f5b1da7c32671c968786568072628672a272675c1e3b0b7197d12b118732a625dca198db0cd5c2db41d14aba15aabdae31b07cba19d5887d48ec3df0be14debee950025467dbbb60a7852687b2340efd62580a809b1020e60b6c977c6698fec3e42a474a0ecf727603fc060524dd0d02254bfb611b8e904e792516cf8b4bd57e5f2be00dcaeb2de6f77ae51d4e79259895eb2181e4acb4af0ac794d704d253a7b611db54c7e8437c5e62db9c9e3ca97d5f218487269ee456de55407b29a7df4437e575a219ec7775cde06c94be0bac2f3034117f4e448cf86129a0b7a1c8303ae5f53fc0b108b144717a56955265a13859d9ab544fcb1a053d1564fcc9a55638d3a44688dff829afa614483baa965768a40de963c1ec5df26ee2b4cdb89857b3803062833c7231dac9ed8299414a7346239fed1e4045cf1c0d4ddce864b1d83effd7642f291fabb440de73459857ba0c3ddb484483076595d1e40be810c153cfb1ee0ed90f21139c288f32511eb78799404507f5114aa5ac80f3ca3b7139b21ea2ac514ea11ecfc6100f41f913ceeb3f851bfadd40375c379d8195f0f8e0b7548c8d277e7e570dd6660bddc3d8446c1c2a79df06e4cc4fc143c1e84c3e0fe6dacbf6a50e4d890e1e3bbd844a867ab54140c31a68286e3ede902db0b07c77c4cf915f5d500382659383d20da4029c2e829ec4dada27b06b91c1574dbe95e22bfe7d098513379ab15b054ab349cf42e6380478e3bd09453144d7332a4d795a94c0a024b090cd8d06a54e82ab5bdfee2957436a8206e3abd1cc8b4373670c4baf9999aef9ecea48440ec97c9ba922a162a9ff2f95e09ec612b9b7f3c0b83ede46fe79ae4ebda945a6c3b87ad11da5c73721d6eedbf1e8abe1ee670df8da3a08c3b83e7b86bb438c6bc5d5133219d7dd4a73d46c6d0d1f86fbd4974fdf5f1ad7137490253d2513840ae811cab0cae2a56e84d647c068b40a04c8cf83af186bbc1bc1bc669ada2d3c2c2498296e1d76b89ba6a3f215685e6400b99fd396ed0c641b05e3f6540f0ad6104ef874b508de34e2e121ba570fa17e685fd40da330286274e18b503048504500215d124a8d7a5e566e0585ee652292c4d47ac4e6dabee0484641611c2de44d945c6b5fe44479e0781f7145f83d9118bbd5072eee8491a9930f4f6e59e692f75987369233b29cc5cbe799fc8d02a18841064b57e909f34af4346ea27c2d40343c2b7fb368e7238cf239164d6c4733d769ef151942fbf3ca312e99d3fec46502b7805d11a9ed4f5ecf9c12faf057fdb05a77dbd3de6faa10240cdb2bd4c0908ad8a05083593099a5e58cd8aa1358dbf83452419d4b049f4b5659219b84ae33621812977b53a5d145962ab7daa542e408c15b495687467b8fe058b3ee5b29561d9e255bc55045a2322780c113380559f9d4063b3950207240c8833c730f14a6e33e04f388480be26e56ae60f89a064dbac31c6681dfc273d70b7c6c3b7b77b9e95da93af51c09a4d8c805e6a7be7c11ac0aa538061f9fc5ff204eaf8dfa52c3b529ddb2fdef1bf3a3deacd775db7f428d37236b10f75f747bc544ba61d6179e7d8e85dc7ace5fa11d79447dd13f110b07c5f2faf25617f391a7be5422ad144238acb274b5b6572688f72293ba179afbc071762f99b58c9da398de69a6ca8aca1086e086fd08ed1bd1e38aa9b8dddfed55acaf60b3d98fd4f0e42f8b3a1bb29cbdf9ef2f8ff2870acbd5b6835cb4d15e8ab2ece16f098ef12ff1dc64ee347d61daa180318d21f63ab8d221513dad2d04b2f765832740aacb06501d025f4ffc35e365ce5296ff3b33d525f281fb60e1f3958c94931b6d29a9474e4f6f452729e5d3c295f741d0297f6f7c24df38c36fb0637dae76f61cbaf23abbf03fcb20ef365d7ca0a461f14df541a046fa6829a1f2ba4032bbcbd13b24dc56a45e991919e152cda51cab60b1cd07c43cd8ca9a61c83a10c9e0850e2c5d418b7bd45a75f76434fdcccdb9ce621519020a080ae7c35032a8f4ab0017653700daa3d74767c2a4ea20de142da577f3909801b011bc5f7a47e42e72290d5f742a044c626e3541014bbefcdb1dbbd54de956c5cd06559815eb6164524de93cf75beb6f6657c3bd01d0df30d4d6d84646a4888b28fdd5fc7e9de929f92813ba040521a9f577dcbcde78c8a2b809ee75f3afa8f6a6520d41687f128fc8b66f2d6efe1c567d6b152ff8d9e6bbae19217311df0eb1324d8a865ac77b69a1bb69c33aaf86ee84ed0c3bb5969d7cd13fab5982892a8592a005af5e5619e5d4f3132791bd83387b787b1c88b185a618f7fa42caff477b51b711425f082fbf780289963f2712a0c334232f31a9a96fd04a8d14bdea5b06fbe29a7a5f8f75b3868b22ca3f99e53451ec0ff0b6bd8ce0cf1e367c8d27b4c276166773aecc592a0bf7bf1376f2977b2a9dc16bce7f1320869382153eff939abc5a17fc34d8e524c625a6dfa1acabc9ec0631545066011f597362e5b6d36d65e1409689a48e86d21543ce1b171e58f494a3f417b2e0dc362990aa141b45081c3e147d5019b0b1c0e3ce784a794d69a270852bcb001de3dafe1aaac2bf33e034482e8aa054ec2ac9237bac0c87444b9ca26bb093820e2bacc24de567e426dc3473fd9f713b879621d6402f1c849a21970f5ce635936d526f82e2ec725d0ac7f81cfe1ba8701fd46cccab58c5e1a66c676e651c835aed3428a35e6e36873d8f6ed46c2d15e8c0a98e54208cb8b76954d179966f30600c43108df2d7ed152923620e3145b62bf9132f5176b1261f026fff5f92314a40e5474def298ce5f93a6600c1476c054d5f6d9e86955e68828e4049180872551ee8f785542d3f469628cb1e53562fc5d340aba181d3126a479c9ea8607710e2298c74d49af3a43458172fb4740163866b75502d805a05526541d83d66bf4f90302c36205ca5d0559025d28b6a6dac8c3957e00ae97f301677a89f202a97fa37d35d35274d9d423d7ba7a9f6f5c2781f38efedf9d6797e05b927b4c46da819ed1f8eca0156d8d129500fe9bc63121656dc6343c2293f817ac780d1d21de89194709c7f7960cb41b66292aecc51b34ae6028eeb6e0bdeabe190952587de1287032f0e4f32488067e787c2747f71c80eb8fd336ddcea1db270433b7d15f9e279988409100f434928fc7f924257c4d66ecc0b592bc4429b6923b1343beaf641e2ba98c78ec5ff16bea28392d228504c84a1d123b420cae7698c569f7079d2ef78a8ff5f85c144eb1076d0a48c6bdc8a0f21e4e0cc2fea65c5880b476bb37d7a4071e8b6264f7fbabcd266f2c3af828230e0212a0bd548e7aa77c935f1febb3d79e851047fc2e18c4051f728fede9c402dc44b9e68c0370e3c3c09e4600c17f3826155f39b86650610d137a56a95995951bbb28b338faac8ad2a2a394a91ed5c498eef382b6e01dc02d780cfa500e2b860a0632701b4d798b1c9ecbd040179f5c283ee6b0c3a9f1cb1bfadb632d2e51e97064ad530dbaf8c6380dd49bbb0ea9bdc5b79543a50fc062b42f8ee2352776c05562114845ab52edb95656d94831bc92a84a9541507a958bfde9a94d6a07abb219ac01df2d3ffe107478b3ecf63dd6d46390db7bc745176f1be54753f23535c0bb51f43bbda4439eb8413785ae1d0f7b2e1e515274bc9d4d72dbabacd4127162ae4aad29b7adb13a33743aed10d3dc2b234f5b0649ca6d88c626411c278675e0f0025ce202a5940b7710164d3507009cdf8b8f46acf62a76ef5502c7898117ea9729d4a9be912e4457deb402544a2d45e560132eebf11bac7f927f1b633640849336b587af10cc8ff2dbf99d6d73ade905dc13a044a9433f1d627cbf6e3c2d927762f9180053ec5609bb8840134c477014dc87db0aae8db1f80c30d93194942a0ce48c1b16ca84521a4437e53435ac49ea2be422447c1aaeb5449632b5fcc92d73dd2e6a2f8516c9e2405a3a33ef07f0952db8abdf212dc0b9ce2db36ef4a16063ee9d30f00156f1ad86a91224c943e9c53e84aaaacf89ed46cbee805afcac1a7ee82b7172f1c7fbde1710441c1b1e7da415faa62a0ce179a8fc2139f3767f86e6d222285281dd06ad2466f2f91a43a91c7a442143a70439faa796bf391e95aa469aa79382121e674d16de79c3472947f3d415df8ac7c85b35492afef5c22590a11074641e0de086143b118af4dc8901c22b38800be267f28a99aaa99e4a556dd744387523487b85df62ce5e4d745ef2a2f5b94f6352fe1d8880478fac209c92d5555a24a54a04e4cce62a9d9a60c4f6f1c02be0bffae97f0b15deccdb25e677f6faba2874b1e066b539e2ab4564c6d8b5eb589bb1f7844015d9dcffbc981cb0d6557e970700c1e6ec3e1a1071b4e7798590e5da9875e4372f801ef50692a95f1ca6bbb97ed7cff39372e22173794a88c8fe778e1ec824113c773136ab959049a7b2560889b0ed4111c30a3a95022920bc147a99dfb135280fed1c2102fef2289ca56a26155f5dd29c2a066c18ac3622927fba6ac37aefd9c86d97aaca3e5e16f0ec11fb68f8de0e111a29eee674e31259a7e4ed1c96a29c939d888444c40863a58e1c0f495e06237bced38d7197aa10c9498f2876b9f5598081d1de8283daac8d4439a6a26a4a8ffb5d7e16b95280a106759a2f140113b4183ebd307f1404bd8535c48b4465142ed10ba1d9f3a39de153b80922ba4644d47a03b19284bde0ed398788b34b19876d9cd1f150e0968f3cd65ac1656ab102cf77d1692df41fd1d629a797dad8be26a7685537f40ee2b38f64e24b057f649de0121680a135b1545a064f040abb94501f2546a8ae06fb8c01b07089267a0d104e6d9f5aa0b98e615285a2bcaf004b8a93230b83205207e5e632501f799235a94490db43a315b3d9d823d21b3e4550a280efed1d23b8b80ac0300f8a50f528afb16311457d7d52691fe34bcb8021a36466f1eaa7e0a15025ec4aad2a266f9d567d872d842709673b9ab04b4e5109bbb85cda89faa9d09c8063aecd0b68a23b87608bb256c1ad9bdd9945da2d35f33612e34edded54b9ecb40013b2c5e1c672fdbbcaf9f799ebe72328b40acecb0c5db29edb435a4f7725d6c96efb7f7ad6327025128a1bfa95bd8a3366f3ca5c5290db7f4747bd8bc9c2863665cee03c878e0bbf39c22608fe2cdca7933ef689206a6dc17dc2f93ccd0b5a5a4a5a448e2bcd6ba4b6bd912fab4102cd4223b0e4f4be06f40e97ad2ba042751a4fed341b7137079945f86bbfac8750fc31fd11730abb33f7ae89ab61b9664de078ee6b4b3dd019186087ae857e2e1be1019a26f734918c0b5f2acd222a55e6fe31690040ce08b970b6f0c99a51a80b859d22d0057f470eb03f4859b5b675b51fa5b4b912d70542a870a29eec19d1eabc0394bbadc19e60d50e277b3d9bff1e9ecb986e85ce5205b1fcb0d495792763e99b162e777bc83c5cf97a85af1632902d756aec5efe4c9f8e0b2cce995d240eea88085933745f485efdf6f60d4d83942e21938420b260dd08af861b04c61d8cbebca86009ba3450839644669e256db7fbc22d8b642553d3a325051886c3e65eba4224e388923184c81b37e4ac90030babd04e28837dd9dbf83b6a306d560fb0bf7c4edbebda79e2415f695a0ef2e7f5cbc0b678054414012baa91eaece79c82e811144650b29154acfc8f544f7446c4bd6a608f85adc881ff0f46e6a61fe0291fa22d9badb838b48c9e5615f08ee33a6f1bfb5ee1bbf0d1202a7571f2ae2b8a205110f169dfc26543c287c8d8152be2e81f52774c6b1d561a7a1cd52f7f94cad05433d2e25396a23156cd648e202b9cbda03ae64271a469b166f2c338651a45e6bcf8041c89759020b995c177a81db05a9c3320e4f8c2f7eae8e83e9b019af06d0777123aca7a0e1ff807b5f761725eb5336aa90d13246465ab41efef97cefd7e39a1949120c3fe10290216cc0e903d2067a578114939613bfc9a09fd47aef6c0e28d26307f7e444212cc6b7cc9334781a0bbd9d44afeba65afcf4a07d305af873eb087df458041ac88be49f963e5d247b6fabf7c0f0b0ba62a94083b92d56dd368be97932bd5923ab1b7cf1b4d8a643ffe68d3f20c627bfd31166371ab18a66e43868c24d60b3fb74ca9e968910a1fd8fab2b34298d7d83591264fa85b6e259e70f1068e70f3fb8408dd76b07bff85cd992a1b376913784866ed0d4574f4afa90688f18207b9fe1f90accd65f4929cec3146437a168ec113c468ade1f225dc944d1fc726c658f405239e078cc69d94dcceebf16bfeb5166f84e6cd3af61bc5b36c5c737d0c7a6a10f5090b6be0d9071a330b4fc34abd8abcfc0d15a60f188bf32ffc65af2ec110a1c61a01dcd7bb15704f275b12ba4d86e59653f42bd8584fa2f5470dfb5504dd60f5ad9541848b871e753102832c814246eb87fcea83e7f03007af9d8f06b29fb05eb62411a24e50790f04a34f3e604dfca9af0cc929000800c04807f7600722d27ffc59cc98b774293aa9bd0d819b27a22249d3bf493a3f298a8a79698e0cf2502ccfe813de00a8971271ee3907f67616caa27aada9f4081ab00d01ac2d90b6c821a7828963abe7df306cc9364239e7e5e95f19de46a3bea681de7d96d6106c26b51d3fc098e16f52ffabd2d1dbc865bc2c14c75a9db9402182d462e9cf376e8697db9cb043fe65121e6bc83e970714c574598eee41574245fb3fff174fc2ae9cf6ffffe974b57495bf98fbd36e99865445c25b551e8891485d3619b731949b0b5526c9a523a2ff8491a8c5342b6a8044c75955f6a09a9d4056833f8f48c08b19525483fd0f18b6e09ae438ec42b9d8bef62165f8795457b6d52d0307f4540dd1d74d17b1f13e5f7ecbd9dc6b8b8c146ae3a5138d9ad040e4bdbbb541b575c2915e13d9b0ec8db385a7c2bfb4a9ebcbb5644c6f83bd059fbfbb6533fb1eb3e15d5d821a7ee6d4bd371708a3b27cd0eee3a503150c46bcac4e7abf1b468b9007a9ca655bd5580dfb888aa38e8944aeb8b147434d0c749edf840b7162fb01704b5c6110e29a1a69f4f616624ca979a447a58b1763eee1d4ef7ae24d92f91c7c7bdb3119ccf4fa6498237d494aeb5b71023faae41a8bb3d3a59cb830efa730763334032d17a55f8473751fb9be63d30aa1eca2efdb908660675f177d10c29784aa077bb9ec089a704d32a0bda5b4df55ce1f6377d89a558fdb4c3dac3de7ca9437ea33171135cb851120392bdba03f99247bce7cb75a486d55d51f5ae2925ff3ebf1c6d6b6efca06d281c271bddd2ba3b2e521d90355ae63bb10c035c22ec3da35e68e418826231615ecc17e926ab13f3eb4820799884121a91b3a9bdb2a2041b333292b4c38225a34cc77ffb002657b6b84e960ca7f3a547c08bc1e5ebb7d068484617f7f88c4834b3cfb5977bd0c5976c9cdee06cdca2a13d9de88389dd79f326e553a782f9131a735e363b38ae51b10bc16da6ac3a9e8c3d8fbe2da0467e2211c53d61b728edd5915b66bf05982c1ed4df9a7c730463d00e185500932a2f93656e932c29e7964887aabfb336861217bfa08d24fb6462ac317b8436a1e6947f964bc7eb7420da7ef8fe5b5ed48d19a728956a363f6d075c9d85c3135c11a997e8045c69c4568776c485fd9084dcd15a10575d39da81b4731ec7cdfdcd76ddaa685b7d2eafcf2a791c5b8b2d9995dd70d1907e6fa44823b7b279cc533b03f67f03d7210da523f842946c137b9b423203f9c7884cd031126f8ed29a83596f014b9e03edf28cbb20bbc1f72aa1c016e2d1ca960b1485ba43d6e6d09508689764e7e5904cd168a84eff50f7c8dc537fd9c77ca4ddd0a6be31717c9f599f625775b85876ee2d9b8b1a902f7d82962c6d65fe7f90741b01e33e15677d3c5f400a31fc65885b825e7bb50fd8f94e45a523584d0b25ee06d36499137e4ddd714213ba1ec8e7716515f9ac22514952e1823e0a3e1c8cbdf758e0a53c8c1fc8b1ddab7a0adc507415f768c1fd0c3dd72753f0a7f767a1e30bb835342f2d5e8d34e5cc352dc212ea41268ce2a6afc74cdc14c42407b44dade34490587848c4007f71269e9beaef6a4297354f39442dfdc3665e04675bf898766420851b41d97d5e9dfdeb48e1ea53b01bd89462058c8a0bb988a3bc3c1071214c4fd236df30d2855bf8152322eee28c1143694f58dd96d2f650f6530c0e4ec7327a939c63503e9d8a9464ccf7446bd4f78d11bb7b51d3d5f27e1849b1238f56f90d17ab27c0a965ec4ffdf600ecf3bc6ae17237aeae541111f8d3032ea307cae59be292c8f54495fb68730c011b27cea565d5fcdfb87d533d7554518a4407789b35ef9e4d70c4926548ca57f8fcc0af1f71cc735aa02ffc5ae2989c87a744352aa8f4f53a70efa388de6d6f843fbf53502b62ef67ef2de7fd4aaf67a42cfa4b3087f4a505f2e96fce01fc27011c48ffbe1a318d70d623aa57e94574e620d82329925f12308ecddfc598ab02a151fa4c18ace29ff20bf218ef6557d537d0d47141717f0dfd1dbe5080ab342a55c5205faa7dad438f5be27c7e11dd19826f376beed9c3f443dcb899698031df3abc13d16204efcbb8a758c170ec59023976d7af0b27b7df788b6e91d94560f1eed20d3d06df8fb0a6cbae1dcf5266a41d70db66949c82a0e2e715493cf5c98e26b6692436d333d3545dcbbb41ee186329f0562cd7934b1ba55e571a661a2ed8069fe3449b7ee5ba4a7f1c24617402cd3103d0ad00b142dfe61c5ba2034c6786cfbbcb5134755dc187c27836911780906ec7e6fffe4feaa2b17a7046d1d22e095ebb2dc721a996d0d53e02281716b343d7a5422694f82c3dc5cb47d04f42089f8c2e7f3f7a0b8d09028bdb3fdc4898d65d9aa1b6496abf8706bc5194d89fcf1ebfa88b92e32316c1dbdc9d82928da3df5e0803fd36c18182bd89e3d07e96956239a4853558d050a29a49e9314a667be06f7bbe2e37386e2b4949c7d53576b5731d4c76af858d84e180ef624573f33589b67247d04c339dfee7dca7d965cc138437d588bd2df631d02adfba3d3eb6cdacf580f3937b3d8411f370ecb365c73c27758324679fecc2324842160809a0b05a78e74211adbf220b11bb3bc45a12df99e5c54759c9d9d9df3da1c4470934503c270d4576ea9bd7e4456526035f09ec9cb33361c00246b9359e1b865fbcc2eefe5a75078add652cbfa3d5358941df22b3509e598dd6f3eef492e259f11622b85e3ff361182485e2ce660429afef26503aee8eaecb61ec087d19da8c75b75f88f4e42d38d8b3b9fd6ed75aee42721603c073da9fd72df0fa0096261a5027abc4b8048f8f3ad95bf3c7d75d85ae9218aec5d1711e12e67c4a2074b6463db023a1630d3dfb9c45bd71188eadcea72f55457c14eadbea8f3178dd19c6ec369221d18708844664695adca08eedf119308d1f4c9061bc7c3125c03af4d76876c07b782fb75c369b91181783839931b8b9bda3e3ad6d11ab57481d22e8a293846b534401efea7553e6fec708180362bf337abb74ba0cd7d3842ed45954446f412f4fdec912fde403d7a728ad12b6a3d344227f1b07fba1c1951dc427d30690fcfa7339ca5ac4f0e1a3124fd1d54270fff50b44169880f705f16b7de992e6ec681f58a6248bc860b2b61849458a5d5d12190229eb0b81bc15af3594c5d6a782c9eae8281f366a9cf4c7a6bb27573967e5980a81d226edf10bdbd28c7b575c9e97b8aa95d7e83e9386ecb03ceddee00fb4e1575a362bb679dd386f4254388d88bda6301790c7c07de123c72e7aecd094071ff80e83c7d0d5b993b10973ea3841ec88011a08bc4f430ac1c2fab365d8370eb1cd3c28bd77fdf36302fac4cbb84ccfee09f3eeab5dd45afd15ffd349220b18c1a38ea60e2a3ced982c1ab51d3b7b6ce5ca4b5582945e8e53332e0e9074931b25cf0f39d4b4750b403f2f59eb9028e704f0011123f45467d3e4a3881a97d6f7d1dc80adb114105654e2f1b18e7ccf8af63c61b3be575563963a02ea0e7568676a7e2ef47597b22d3949d11d47f9c50d33a21c39df277fc4b1a14fcea2dae1662ddacb1768e24e5ce5ac9df5c08c1063aa48a03d28f425134b557ba36ab25210dbb831ca48ecef973191673681ff836c3b6e0ac410a5cc8d0b2a2b2000a95c9613b399b106aa6c480db094b3c11525ff49e9e152bf6da9edae7adf894c15a80ec372980d25fa3a964f8b6f255ae12391b981e42ec90f1aa7e422d05a035647429af960a28830214ece5ff9681ce90e4f709ecf5b9620a899eb594126d2411c286bd66c56cdc12396530508cc4d3ef5de824064898841a12cb41753885a334136d418c4bcc8d9ab62c801b82e73c817ac95620ab8c49bf5dd4dcabfe2274a11a0f47b8a0c152d2f3790b17e976feb8a3353e493e6834503c1ddfa94eb2b3184a0907b0a3747e2068c32074ad8a69eefad9511b4e74ae3726ffa4af1327d791f4d2e9b36c0214fb779ed19048b4b2625be44512c6547dfcc7f864a08faf41982a71182898261f5f1f2e74590e1cb9a1c04531134189d61a17a5af4103369901ac357967dceb1938dd561e5f371e2eff3e7b6b5732fa48db8ef2193e61587338e54b2d160f75072fa615d42150438730285e086ffd22782c253a3ac1da48f2c1fc1741256ab9127693a435f6c7b1ae80b92365b3ad72d70522b1ee3b371480aeb507ae923f50ad5c8647e53d1cf38840129c1d474dd3b8b18f1851dd84f79e210a345b67ea0f125f45cdf9e38ad4c65946738e2a9c568d161d55255483baac500e65b8d8519432640ec1a14525f8ca56d6d2603a270ce6b8c13f0caabcd34222423dbaa4662d546ce7a449b650401b2e924606af64583d084c2262f81c9f6b635c2170d2c20c4fe61d5b1b8dcd9f4d9e3ea06ee3c6519c26ab55d45d44861ea9024f58c1b8780016d9ac303d8a9a838e9a61152ab4c76b09b09a41440dd6c12f1d865d1e59af6f72bf62860a76ef510a4049759c63159556768816ab438fb1941c124e4ec7677cfdb4aa1049f5f7e37dd58dc2423d773da4d913ca804c582347dc6d08031a62c91288d542bc81a404b340171fe1eadc9e71ece692ca8b97ffd00d8ab4189271b2440eb0b1f26e3b62ae90a946b61b06b218bd61409adc933141c293edaf0338fdbefab941a70991cbda144f966d4aae290cfefc13c5f0615946e54a01afe8714e44aae41b8732af39f1064b241d10648b971ab300ff6bc788b7e7e5196b0a54b8555cd5a9007469e742fb8b7f8327550866870636f684f5fa3b2a92fe2f08e8137f59bdfc78b0d9286dbc1e98b48428588be5a76c757b296c16f9a81ea745d40df49ab598b62ff7dbea9bb4584f4f3397bee9fd124ce9a0e95ac26b23c8052e51a530940e11f6c048bbca3d7d34483d7461cb57786c878996ba1d9a8ef908221e902db22821407a717c497f03d55f2e7b9d2187d3ba1dc229b05242a80c00389795741683c704bcb53bbb8c870eac8003224a04425efab97159abcbdf0220c4f91034237b1a6484fa95e0f9d6f729f3ec72c312df2662a2e62184f3555430084117a0f41ec5b4f8263cbd49eb5035bd47ae8610e2d3acef032d5094877e8d921551cb1587869bee4d200a6f791b0c82424757d69483090f002f0fa50b98e1f26c08e95073e04070be2dc295cea8c844dd83b5046de970598a0726e1300327db531330d322086b6bf5cae3ca86d80f044814075e19d1880c196c5a8d83411195a22b16b823da2f939ec0e974bc6eb9789d34f3567256a7ac99c6285abacf7aa99571ea1d8de29d2e3ef1c855240c968346ba1040e295df86ce8be0ad14b63b4048070a2a124a8fa3024c5b63ea4d0d492067a0f6a46e375e049cd11c2e9c15ed39dd20d4faee3722ee4d5fd3dde429ab5a68081ebaf31c1951314ff02e2c10d4ecdf6afcb62d6328e94755c3bcd5d9ab8e840e8c8ec6a5b2874ee72b22018bae5f8091937184cf08e84cdc40610e432437ac4f0aa8cc8390e303e377421737ec81d12570843ba2d75263a4f37ab1b33b2a267f0e60fb096e26a89273690490b58f3f16858904f99265900328fffda1156de11d06221e8e35e4df0b8627bf6a9a80425e1b15edb89c7f273e54a7dbaf3cf09975438b266ddbfd982f8714e71c74f3934c4c7ca3f82751f7c9a6183f7b87c61736436a0d6bb085f3203f5070e9367f0f9ee8949662e3ff7ef0359ed2782474934752c89be5a36a8f75de539f99a99a22220c134f68fa5cba813e913c7412ed08e1076f14d1551e35aa27ed36b698b98b21e5b16c846c6ca339aedd9f766108ab903ff65df12b0c71f5d146b661de21a5b5b1befe4800cfaca4056f748278e9356819d592556a5247dddac17c7a5315688c763dcfff5db5ef881b44600db096e80d72377e1564d3300be9739cfc0e47c0c9d2c3b562cd00730d57bb8a0c9adcc16be73fcf91db5ff644758694a419a671703bee22979f2fb536aca961e63e99e63ec63bdfa4076c40b50c7ee8e6d3ce4c9212618af9c1d2d6b21e88b45a478f20376a4c7faf0e38e9b38fe4f46a94b46394ea8c3195038440783890dbe49dc5a114315275229905c6098bcf884b3948ff45cf53773455c512c81e8319f6278314dacec0049c7ee620e4c37ad9ca70af46c4658403f1e51917e773a0da6d3a24327bc845103c8e052b640d5170dc9356282244812477aac6fbf975a984e04e4c8ffcb5557f4d5b6f863334226803e2e4b817a6cdc1a220a4736cc9cf537f68fb6b3dd3c10d020ab1f06e4bec193fbddca2e78458773b981a06b3a306d4814dceb83383a4c4fb7c22b727dccf10ca169d02e7df53fafb157b982c50259265ca0f9befdb9d4cec032583b75ca860f55224d49652d1b7a6f4bafcbb6fd6d296a1f560c3c6ba597d213ed9fc9fe176db5a4c9e1edd201bc8c7392fc8b783ff15b06611c87711db849ce73fcc6de979815b1018874b4d0a3d449f65c495ecac71ff34af20f41f95f23c627833eafa4820ddf8d196413f323af2b9c426b512da1f3c7762b73fa25609047aa259fc936a29b79599f049d4535fd51baaf8f94d0c1fa23ddba4a7b8c1241803af01628cb376e50092c5c78b8125b715d0f832db3cbbc0f41360466a7aee54f9ea0cd290f984f7f06a4739b85b340fda64d44763e8e18307a514a453c7e988ac00e87788347d6d647dd95aa03a8ecbdd2f7e0f6a161fb5662644ac3e57030b4ef7199c398c060ed6455df12341d93dfd3a72b75dc3f20a6de81be825db8797a2f018b5ca13f9be1820bb7cd1a53915ef471442353f8377ab68519c1443a4a66ba49fda126a6d2338a1840a3a6f0e3d1802134295b6ad43d3148afcf57f789daa5ee82d18b2cda3721f4821d50683af61193557c0ebb3174f272eeb0fdd4177e5f41d3d9a8b77dfdf5cb4313d4b006bf897f993c242ffdfebd7426980ab086ac7790efac346322d3306a2cac8e61ef92eb49807af3cd8abd98d168c8b19ff2618827c626b92a7b707dc1de30c9f8b4e35a9558fa1c23a6760662da936781e680a3235ecba0267f5b797009940475395084ac9f57e0bde854c1b4a4851524c084dac19ea975e44ea05669c3206270d2b5a94b53d9e4ea1a1fdda5feccc5748635b144ddf7492b3f84716a650c0adf1bccfcc4559b6e3649ea94557818c9ebd4081307ac3e9c6ab5df6741782ef82d644df3e01d09a1c67923d78f8065a3e8cdd347dc2bcf6c522117ef722d49edfee64c9e0ea6bc87d472ae73a29f4ce3edc25dcbe265dc0362dc8ff17b2102b0d31e02635623da2307a23e4eabeed9fd3b42cf55f5b2060798589261817af39c38b6617624308346f4efe0a65139e2c94d3993afdba1834aa413aef25a6cc8868e337455c1ea7a3be8808f9d83202050f5ac3a1f170e880d25f656a7033e5da428fc01421d884987afddacd918419dc590f55c1c18b56521e2a9ad1446bbf192153de98ba51cbfb98cc2f8476277fc0034ea5a1cc9d6fc33f88b34153946027a0960b11fa843c4a5ea51a75e6f3b56aba7f35c4f63169eff715e0dee232708a9aa180fe5ff9c4e766a4fecbda17fb6caf86e1ae48a5decdd74095a9c5347a1f04254084c1c11d715f7fa281a6ab5ccfb45a4096188f1754ce474304729d544f7b4e8ac2008e9443b3b69b0b4134fa40b62392faf292f56a61e3d58f2c12ffdc9e28becde3dd1cc25f2247006099db07ccadb14fc0e2b8cd1c2ca8ee16ec4844255315de5578049abe53e1b2e63f3d02fe1c3387bb2309d54cb5a27b4ff85200eea3ecf357866e465942c3b6a8e43cccf6bfe12ab6e65c54fd1f6107097635f6ce6f7a03a76b29cad0081b124d0e58bc730b74a3f3c5df84aba3eb3d0d80fa1e8e3067bf6c4837a1de9caf725abe0b27b5a02d7c741902bdc247a5aae5b22452472d5867c39c32431bf273b108060d1c9f27c6fbba08f04b8744490bdfd2f1f02fc5fe545018bb0b6956e1900b14676ac9843f1f018129cd81e799b446967204c00bb981506cf628687def6f27cc046ad963c6f741a4f50204efeb5dd8a93cfc4dedf233c430bac750858331ed83a7cf653bde65e3088834a736f1f548042bdf93bfb03602bd9db42d2a486e8dc9e666680ed2a30d3f6cdde0c6e71b81946bc3dc23806e58cb70b2fa944f313d917c61b186c01c8a32c131c4ed710ae43cae682993d68236581ab65ae65777fcd99c6f5d0b3cc287a21b099fc7e844706ed11eca7a9fae2738b3f77612f102b33d1cdb00d9809467bc67fde02b51faad571ed314fc8530dc4f4fae4784b777db636c6e4f622963d17abd63b36010bea88b215a73a4526ca5ec4edd007f4c486b3c1eb198218658d1bfaee18f38b41e1ed24786d58e254a03abb78120a144483b20531a46da25595378907f2080bb88e517acfa0ac437b135c5efd7a5135c9f951a1f15ea69ee3d230d351363c20280ce371416432dba8b6205798366b74ca365693ecd11cf93976fc4fa3bd22f3bb5936780ea7c3c707fa79d24b8410640ceb50fb9245240dfd8c5a22029ad9632c16487f2d941d2eb097e0fd52b79050f4b70b9a964fff83a2baaaa2a355bd4a785d4b957276c55e56a78583c6c43b434544d1c6b54af773da3e92bb28114250f05980bc88e4d0afb79668d34565c7794857f8b5f7b401821dc83f5d2e4f173acc55e09aafc337137501f9b087fe05dc51e36a7cc5924eb1812f678be602cc1881ae78b26198b0a25d4133e79c5feb159e8b8df871d2b93ef8484dc0a840ec52b331954e6bf06ddf54b7b144402a06c9e841faacb6345f897b82083c7546b1b8d2eb730658b9aa0ff2b17d0ee179ab4c6722ac4e16a0659616f91d56022fb351657fa328f112c9081e6f36bd1f4233882187607a4eb0ec20f09cb201a3012bbfa3a35bc562a2cfa4065e75aca0f9401ea2bd464ac31ebf13b5b290f21ab0101136c790d6d301d36a88aea38cd513c9a6d6a3c826117b293ec087354f19c87657c0b59a29270cc679127ba896dd720562c1ab4aea09bed6781684b34176ec13d300a65279739f62fe581dca76c995f396108bb3587699443b45a3a645fc83307ec64bcc0f8141b020d201fce3d9498b8d305e520f25b6c68761305d403e3eb5f6c4e0c5468548f2bd0029e0d4bdf778b6860a23c833677965f41af46f1d4a1cdf46fb0f99aeb29b984676423f8d6e7ea2a8e64e2ac5ab57d42bde0a533782cfb7a9dad9259ebe926acde74640e1cef22356e4bcb10a25c7aed8da6d37c41ac10245ae9139699d765e8a13a61c496cc058d39e61ff545444b19d08b35cc1b40d3f15b8207e8e1b921f854f0542f465e2554a9cd5b25398f41f7a4d4c48442e2f8d31a11173cdf302d3b31d2c2bdaa0d7bb741f8cafaa23732b736435d65cc53ad4f3a2e63bbe3312b60205bd9bfdb85b676b6f43dab559d0f65a9ea152ebe42e360c8eb72dc7951bd6256a8809c69018ab115a04c07112c50397e876e1f59406cc348baf12d27fc0089419e0c94ae0505049b2abbd0903b5a6c54e71f9c35cb1593d65b30d05376956007facd8cf5ad5a6373ad5320f9bc51eec2d1c609bff328cb6772a83206a2044d1043c4d14ac9415b2b105801d42221c4550ff7f0f3f28322347923489521adc1d92dd5a5ee4ffca4c4f5efdb888ec367a937035f65cc7c18fe206fd8fdbe6a7795f7ab636dece9e956029432b7156d42f728187e6fb096c6930b18a3e1847fd02fb8ba76d0307f0b907890e59b8d175a37e68c8be7ddfdb3019367e3ec5dc7828772f8e377badda65eb50688220d041e4c13850a43bbc8b215ffb906553e3b676cb0a3687a378beeb899cd8742326a080fccc01f9f0a934de7fe427663faf7d4264e3e48e93dcbaa220d82dbf5ca7c225da817b5898fbf041dd7f5fe3709c83d19201a02568352312aa7a00789ff7465ef1b9bed88f80217f862fbce61042d0a54adde126ae69fe3c853e403bfd647821c59b523ce7d6e04ff506899974a5e8d54c4042b17c3ba2895b466aeb13df6030233cf272c4f5b2fe6c463056c8afdbe37a4c7254c6926959bc7a92dc0d88395e5e50ba8fcaf37e40b4f27c9e634990edbcd6664bb321fbf8f06b2562667928d19aa36c23723d20f6a6b5f6af0fe7ac03006c37f8d598038016a3788157863f4fbe6ad4f32f6beb18a168b9cd39f50e6c5a6f31c428d4d92933262cad7f2b195d5ac1747e983662f0f1572edf877c0d7cf63a32a0d0f7da3ad243d4c0a2ad9c1519fcca719672eb0233a5c0aabbcb35aab9fde4af23791f871b4e7203638e64b6f4f4fb5f4a5870b0c04b743a35bd9e93cfd8154a6e347e9ca1e5c8f23d4716789f4ffa83ecdd5ba56037d65ce84811fb15e0f3c2296232c62966323ab2c58cb489c43a46ea5075da1e7806a9c453bd1e6b6885856581ac65b8c0c4d5183abf55f24b78baa1a98fb47c9765486ee4b1c703a654654b9e5bf7978cff58e1d76c06a60d324228107a055c8049622f9f67aa514b9719cc923d0f4fbdcf6401c64247b59689eb5976d03d8d78536c1641aeb27163dccdd2fe692efbd908383b44f7f0e540e6b36d4ee64db29dcc36ff10af6da1d52de4fe6f6b7812478a3e2a955d0470c4f7c9114b795ce6f288582adb8044a593ebb2fc33878670ea897cd59af085bb59d4a80e95b5e9d111f7e550759ffd4e04594c71d208ec8cdfa05a3e3c604d229925c7c81a92a6d9237e70cf2e8a0149596a7389df8a1718fbf8b73ea18562b63e81dc9cd43d77d945019c212e4531de1270d77e1e9091478b153dda5e05c2a9d833ae089adee726b9a4dd53cab1d894f00eeaa272c823c1538044f5df42ccba48e84338651344b427b3e449b64908805457d0a794b5646776c60bec3160e2d5fe3cdd64a21cd7de755f5f460f882c0a39dd40cb8a9e3bc98f36969a8721089b2c115bff1e05464d28c1a100576c9617ad09e12e8e4796ddbea90f2e750b5720eb1ee0d8ddc0561a7132f06f04fe865a23256186285e2d0eb8ae985a7a9a4c123e32b1cf0306f4fca453c77507058968350ab351f98ab869266c133fb883f3d1c9f90086afccc94fabd324999813736129d4c33b24efd3ddf4a5a0803f91fd7848f87a552a256e42ca1aaa28c708506f5356bdee10e270ada998060b45105c5aff35a6070a5914e1905512be2e0c8a5a41ed5d09920c5240267b5bbe132ddb85625b3c02795e9ed50fd75fb6fdfbe139ee7509b16005f9c46171d233f8d56947b1d6eff0f2b5ca172e1c5cd0d3c8ee7fc6db277052050c0315442a5fda044cd904027acc95da389b25bec3992277b665ee901e9f77b666be63b8340bc8e6105f00ce61a6108bffa7a0b92bdb1baf56e172782efce2f13120a8b672ea4d523ed5dfcafaf1fc826eb4fb7465432621b3637d4f93d9aa5f0081f9b5b759eb6cda66c40ca95030fa33a887d0c395571a7c1030fd49af5134d0572637f4d66a1d99ddfe49a981848ed7c1a1094291384cc82b2a7030eca3297db7809e04fc46ec82777574b1703debca623b5aec836650baf2345454d1b91a4df34589c8bad248363bbb9a52c6fa2db79c1bb1a5647648a9f5e76cd7b1869948e1b753cf71631fc2bde7fce562c4d96e7f69b57ceca5664fefdc06a412797af5bc0b83789c615d7305e97918e9fe52e6aff933df1949b63eb49d3633d46bcb5f6f312df457069f7072ed022e91aac99529e230f4fbece9066f648b61a7d9005062dfb01923dcfdbecd379b3b0925a5e9cfd85442a3ab1842cf763f4b26263721bd16b814dd3aed6150d4f6e8674dd453f37f6c2a1f78d69850a1c0a386edba3758caf3ddcf05a359ddd19e8bad74141d4f61df209be9ad3e43729a246fb95177bfd8e04215e707d9371de0eeb714072c56413c0e70e386edad81651072d5d13e997cfd3c1ac91f92212a1887e67cec940ca0740fac08e7d864bdd6ea08a562e3808a7c9b3ae68cc14a9824edd33300d3fabfd197213d733f9a96fc0e9aea883eb26daed0fc8e8bca49b5276833b144cbfc7c875394f9caef0c5254b07ac7e51db9810b38be746ce06fbbf22264a31a9a8b92d1e2b8ee018604349716c9b4d97623d60d0f29349ba0779fc6119994b8ef5e7f7c67ea0d44e39684ffccd5066baf0df741b222d9cbb5beb9b3a57b1716e3d41e2b9eec9d199661c40c86fa78e837e3b95f6c9eb317b50a217719ab422979a5cc25585f9e63931bf714e3ae9478eb8a0aa5c1e164aec0670ebc9bf7efdf901fde920e1221094cef8517ee73b9d831ac0071b3e4b0aac8ede4d0ff6b5c7961e88650283def500d8ce26401da44a8339c778c0a80e965bc39f8958b8f6c46d188ae45db220017af5f6a2f0128abfd43194a846e6a9dbaf9c88ec9862205c5b4f7f79a4a2ca32707dcd5aba775b5c98eed4b834eeeaec94f9815fdbdb4798936ced4518df425be06dfb6be007e3f1018527c245288ddbbd0d05da530f8edddcea4a06ff7e4e4c288272b38f0f6c8e8b419ddfbee5f0c984ad45a9f73dcdf1030c7eb7f51634c9198c3751603aa0bcb54f321219fc49ce95970e3556063fed9f267210083b51ddc870190fd561b28546ea4ce47632fac7d60f209c99ef8a634a5bda83a8840a6dd917ec6e7165f72065cde0c6d8655b6e0955868298881df06f8a976c9da92bc17c9882e2db0f7348edbefeb09bb005c598496398c0592346477a0b25cb54d5a35cbc68b8c6cdb774081d2e4845094139d0c5ab0afecffbd86fd4586b0b8e78bdc885f40b6c715a3acc0b18764b483d941793a7c719ab1b0b513343ad40b484e9d4df183e016e82b590c9e9627064ba77a73616ad11a74c2256967ad78dfcef2dc5f8e1b7de90a7f32389ad0f36ef56b6e8eadca4d7e7dbd0b02192ae00541b01237d6a8c5ea665b434cffc21a47af30e4e8508ca03561e0d9ded6dda083aee944c09a8ef62c5ebbf71927ceb54aec95b43e6f20e49b3dd7e6a664bf7eb84afc751206ab1d9d6a34f178d92c44e153b60d8cc1cfdead51fe5fd649a7b3c8d0be76540f474aa6ee99701ad8f0850e9ca7aad6a52750b35c8b030cb1f4896810c3756973625c5c0c4b44a233ff6773a874a6ca711592e16c38fd8a74dddf362fd108a2ee822a21c3c8e6ec2312786a5e84be480897b0b7f5c205e542c09fefda572f5a4514496fa84187e535975dfbcd0bc10b5e4590ceb7d7b85de4da643ea18d858302394e602d8c0c2c54f43eb57d6f497232434c3248447a8c4f62b29b0081e50f1f57964c6726f0629209dd0cdf635f80214e7a7b0211b0add5368536972a14130d7310267945641700cafc7484ab03734b360c91164b44ef1b9b048c485f50e39d92fdda992a4f1a8ff102e7e644304a222ad6207f4d4aeb018a923d8893c5c34a2179189df71bcfbcd252805b1d0712ebc539e215da6c2558edf53a23f7ce9b9d300ffa9fa17b75b3242a19a39c4a816544f59f90484e6c9be69ef70691ecde97f86112e16672a8faecbff9eee550f15c4a15549a25256d3267cbe11333f4d5cc03e3d1d8588e02f48b9bfef005cc8b83ed17a5da25d73f149900a996ea7d2d0985897f11f97f93f5805de03363f28ae373dbe4837b6065928cb2c1e6c6e606bd72c946a5478661639c5ce87e01f9d547a5f43748a467d2b21d78317aa7f2d0f13c206fc0af04d015f832d357cf1bc88502df4e0eed6acfcaae3a2b93fae2e0438cf5efdb4d97e15ced78899967bc2354a1079dc055ec4572e74c4ede086a425ec15a168141d05789a0d4b96af4ccebcb859b0cae0929d3522ba4a7bb5c83b3a9b89a46157ddeeb24781be82419de823ae7ab4799ec1532abb1c164a01d3b16ff154c8c2182e56b2082641abdf239b78bd1c5d0f2177c863fc6963916151392504c977d334832da08cdb6a19114bbccfb1fa9309f1c6f861aca405ff6cdd5625aeff605afe8e346a3de0e6e9f55345f514a1141b19132d282ceddb113a6faf231e52f2da0a350bcc26ea8a01d6c77ac25f08068bffbb11ff50ae22447c67454a2f2fba625480c81ca41052acf33f739d932e39a3a0f7f90dfd7c5eefef8a923bc12c6d42f2ce01436502fd0475c3f375010f6b9b6899d7d5e1395e2e5023d4d4c58f7c9120d4c1ab6724e776499b90b61546df7e4269b3921e307c38ceda00f9e24205653c98a0fcffcf6b04af5f14ec9e4d8866eb9f38f7d46c3486de65e57601ddbd5b0816863dcebfcd0e0f2776571ed196d7a1188be9c822ac66ce34f6f2f19d74c1e38175cae24f6f5813a54a161fa65274a0ddee0a0c02cfb9a4b0c870f8f393dacd0509fa05917ebc7d9d64a5a32a6375ec56b467f6bfb74b145caff194be4c5c4944b74e5975b8f39d4efd665744eef41b0553aff39d0b300fb6c9c03592c2e5f5bcd699d902be31c98a15fd4f6b771c13436dd17d7b977bb2f92276fd7dba2ae3795333aaf48cc2aa7fb14895337f7067d6ef9f8d4b1ccb115633df6f62ff743338bdeac26966744262ddb33f2d9b78bc02b7271469804471869b0cd56fa3bd74c3a9f66280a0ddd9e5d7c5637720bdbd6e3ea60ed99b8e1292730832832ffee9acdec9bcdbf095ab680fdaec2c01159666d75e4a8514c55f0ac6bfe805a4fd4487629c82acedcb8eb1bc848b367923299513cfdb236e9966a209a5ef8a647ca276f8d9c333f51730296386c9aeff17a1694830e816cb452ac776b70fcba3653e642556fc091126808986d3e2c461fda0860062eed5772fce29621b507122eec93df60dfba05a40ddaeddf788281882d533b5bb999e9d62fe91a680e2a6b0bfcf03b797a86f6990e6a13b7eac66ddd00b784ef8b1111234ae5b8e726e5b35291cdf2fdc5a5a8736371464b2d28c53e8b8f5f7a2e8596999c4f1f5ab575adb21af78a97ec4d58b7d408c9fdba5d683fe635e42e9259aaa8cd473e55b46c9452a37ec8a418031a1fa351bdbfdc2cf98f879431dd44e9e3d4b84fdf582cf19c8aedb12691fe2d1a5ca9816217279e37def7984c4eb404ae0d41582c9d42431d4d03be6a7dfd07dc2fb873d56e42814a99fcaa416d3904608164ad9fa3000a884b3769c09b86351a26951ecc71cc686d09769f424180840dbef359112018722bbb02676d62c676878b5e1bfff61793e11274a4c05f3530b1904eae13ade2846c7ba45cf2110d5346fa8d8633a1ff3822c7675301d57286583135f25b0c5b9f7d5bdf4d969e4ac48a195a739637857b9307a998333034ad2db7b61ff7599378b97927fdbb8fdf7c0807ff8504a1f4cbb647848c8228fcd33a053154db36d709745efe6308ec7a4993ee1ebfdf725e078421ea076835c08a3f740ab8c107b58901735035c1667a9e4f16e237a3d02c9f9038e52a8646e48526eca1089200e4f43990b1de599958e60b41506be68239c13878ce1bcd8e05bb54de7b9ae0fdc42c2147b8c4d7d3cdfcb595b10071e20bd55c9cdc48098baf87e97e7a25667de434f63a6368a1454d0614f2c08f64eb72121248ee6825b45b58c170902768cf3cf165f5b3b8f6d1c827cad7b2ccd46664633615da66720e2441829a7346cc1415fc0e09119010aa2c74477bfd997e0ddc9528f2a6fd995ae3709ac5d2a803042daa170f574689baa15d925e9fc5e1f58426c129b63fc1ce466ec8d325886817446a91429e12c4d8a28d244a894b1d552204d06b9a2fa89eeec3abe8684f877ebd41b9f1a783b722710b32f2cf5c118c3618c4e9cdb6c49b1b1eb139606ea1db957a26deeec2c86c26a6a565554cf1c0db07054eae4ac69899a192e98ca2edd67e37dab5ee49e78e740cb09794b19284f1d5dda540aff6b50dd366ad274c225381eba21177a9f6feb4feaa3422fe78307470833244c2d2f4abf1571e2af4eb21bdcf05d4e8e9a489b02dd2feb7e24229d4795fc1a0fe353ecf90f42fe088753568c1c5feb85829263b18c5de1215ba6a653c6a6ecc86d12ce4c1cba0403ff3a307ac4fa4404bd9cdcd017523e62f7c21275bfb85be72204ec2bfdc3d7cf33ae0c7812dfb0d85cc49340bc9229a9bcf543e673ff18f34882d88fd6e747fbfca87cf158aecd53fd7e2e524ddaffd1b129f29a49afac0e7691fd0a56c67405ff5cd382a9b530368501b8037a21a9f662976d8f549662667556597372f32e960788b2a24ee93c92ed01deddf2c7b80507821ee6e5c8a3d8984e64e997986320cb4127919cf5c7b83e481646be8470fe83b0c880095e9374125b0f067ec2ffb0da9fc9128a2251a801f3f4bb219e636b3b5a6615a9780925c027d421f9031e108099435899f0ed2ff66aca692bbb1fff91508124161d55b8329eba56f02333f494ee8948014d125abb9f1af2ec39caad6e5c97e4542aae6058286b570d06bebe490bb5387338dcb55d7361aed3635c0b54ebe09cd79c21c8901ab673b398792ae2e04a554def282be6ba5aea90bc09d8b3ea5a60c67f30ac0f9507c24c3d760d011af224612cdc7d09326fedde4e25c605760fc83de506aaccdddaa53ac7ae6e9ce0369e8e09194734cafd9805c8e8eee58900ad5957f34140a302a5d387435b3c57408a601afefbe6cd5cd1cc3de77300028d3814c277836a56e6e1ac7cc407576050c2b5f5c1808037fb055be2af856213e19c171941744be9c51e2259b76ab379ba736d34bb3e7f9452491631b619f20cccc07a9bf34a5e06a69591c92da1cb782d6cd0247a112713154a936f515819a79478a415fccbcf3615103994d75f4a402dc3b28992300eb1e42f10f7b869aceeb16dfc0fa31a98d66046d252ea69f1f8fa7492b9acb54c9767ade51a7a5b104f5f90d315defd4ebacd0f71d1e95f607961ed44b0ed846dc79c06493d2246a43ceeed62729df5797c586046d841b2c02b12f767cda4a2b5ad7aabd5ab2273412eda3542e1fc1377c693ff9fd592bad3aabb66555ca0dc3fbb134dfd9ec55475045612f94afbed556aa14ff43a798e39e676e13885e7a6efca671f44e79358d9a226a87ec63759d658ef683407a3686d0cc034665a7120dda5b4b83879307d97cb5671b304a27dbe92db9c007edaee6d9703ff2167ea91e7f9424e079ea8d514d6f9171cb22eeded971c2861e792c159a95f4d752f762137a1307bfbdf37c351f19cd5410cf0dbf3e6192093de9c55518946ef7fd529f8b245f98b565703d423d0f659640f1b63a2dd54a8378993a2c18f971c5e9c09bee9f5fc52d874ada82c14a3e41487f6d431fb4f1147d8f62805ab98283155824b1d4d332e5e131259c7f27e61cf055f595220707d1761cffe5d4e407fc3c0eb045795ff6aa4158046e9675a25554d9956cf8ca8b85d2a174af07d885194ae268dd027f8ea4d6a6809263a882129456aa795abc85ddc71f0a3a6e8a268728dd882289f82006292b56b8985176eea6150e76cb034f5b0c128d28ce246c86cde9d2a61b1b683a827cbb963120528ffa2174c339241d1a076f4f013c1ea8e014a3252d467e6b2d23e78f5cda89f86cb31a4ff76cf62feb4f434dd66681038b7067882c75d65f145b7a06e69a2de27a25183808da343f90e03083bd56ae4c0db3e1a51765a450a25b57d14494f128cc23c3d725a2637f028381b8a18685027e0432dd9f3c93eb31ac22d92b14ba199da0115d926144e55a6189072f09079d1f0805d61bcb7677ea09356b3ebd272ab4104506ef8e09c8dfe78e7392ca5f0d9eed67b228e8c531ddc54febcea7226988214c387e34cee81702a641b75be04ccffbcf02b5660a0d0006c5137dfb1a0eda98d9a866927db54acf96494205292966c765fd4b00b87e6584d9b75069a108a18f77b6d196f13fd7f663e21307d07e8881ebe5f65570754e148d2642ea72d97942173bee89e2e0ecb6559ebac561ddef6cfe429165e0108725e1240d32bab42f0ddcb9f20820c1a75a399426ee7cb4620c95e8da474e9ece325483a7a4080cbc43e9153e58c39a94cc55d5e84c2cd9794e9390f8828d48be59c8bf73a2d51e9b720e8f803dbaf61d4c8d30b12723bd27a3746dceba146d5d82f6d71b7f524681d7a49b9fa4f3e7a5b6f7bc35f280dde7ce324c3f07dea476651f1badbb290c26f76199037e7fb3555319b701ab001d3d5fd7c7154a47070cdf0dd3fe95cf0592bb95f43c294b9f7dddd847680212032b9fc075699cccc5885de034c239135650a4689dca57a40dcccc640dc2585f2fd6de655d818b5a44c7cd081cc5fd85e4ea54b12ad5958a85704671a2c6a462b97743db4449adfecfe80ca5088fd81c67cfd1536e1dfd774f8a332561d303a90f251f29a8b571c0aa43c419ce01ca33a2c0aa559327a01eaab61a51b79e57ee9637bd6b9df8f6a1ecf3944a85955ddda163908d4363f0da923a2c14215a7e58b5739f1fd6687a6277a9fa17ab00d70fbe313e0e036fd4a74811bac3595b3e260affdd5f65679fc2fd6df07fb66aaea75ce3ec787bcbc1d802a83b29636d3848f250df5d3c8701ca30ea1bc339dae9270767e7d336e5f19ee241d12c2301057a5bc7b1a3ad5ef49e4fa5b3a84281a2cc306d6cf30722663f5cf9112a0f0a1a42a6a59e780a45541b00c907687a992e8384bbc8925bc6e90dfe1395c3a2b2b1290593a00ebc2e0a456ff4d9ca416f1e942e01ac2b8136b0c7c7d76bb17cc9081514d9d2ffaa2da076071284df7f6107b175692023dcc38e2020dbc5d0a947796e0521db5f09ebef7c1de13a362eafec1601d504ce23a852704fc7734d8f20e7e1d9bd952898a418dd3d52ec1144db41e14cc90886e23e37b26b78957904c77996e80a237e7b21240d489432f40c3ca7fab7308e4414289f07a71f97b12eb597123854a150c6ae1002cb32d292e236e8486415db706efd372267068d6a0a4c76cec0505086ca17ba1b06e96e1c67ed82c0a8d9b63f9d6aefcece10674b0e532faec4ebdfa631ca052e83e18f9d654bbe91c2c0a3c2e763501c40c3945bef53416a2dd1be4bfe158ec2b278fb4aa1c1b2c9ae4e30ccf06d2ded8a1bfa34496fc78ac0d93dbd7c0857e65bde66ac9543b6286cbdb83f262a9b5b9dad0e1062ed2e23fe2c27f6733d7f9b5ffd605f4733d629cd105ce7dc65f9e7a6ca725996846f3a18459da366290d10f11725c2bd06db6a08838c6e9b2dbbb0528eb8158cc270b82b6e5b81d50d8af752192d3eebbce77e3af6caabb550fc16e0cd92d4242dc50c5b4b4bbf6ba4e70b1fe241e6d318400528c855e0c3b1ffda2fbe719ef12d11a86a604b6dd3fdbc72a44d463eac6be748b140c75e94a692194a54b9c9005b88c1a6039641304d14b3d37e452b8fa7b1114c685b858e6b5c78d468f49ee6463ede2376c13b8d26da94a248bfea3145907c7620a0b05a56711f76b8120885c4e6f9d1e8fff435b2da44574892bc1925598b820f431c681cca5621d2d7132962dac70675b60eb50890bd212ec59b8c0959523b35b7cbe0cb7158e0e7d4f369607734aa72a914ce0174e221a8b0654b06c9660b7a0c4a1a9c370c0121490c292afa5ddbfc1c8c94f2893d8941f2d8b7a0df0286ff9204ef6777e0e0ca14d670f43ee7326c8c6bedd8960099e02a8e6112e06f00c59af8a68ee99fc95e11c9a1387414f2d6c5b677963f4bfeb10d0b0b05a01d5cc2c3fbdc43c05cca0c222d0cc2fbd8305e6cd0c22d1b9eee9bfb5ba724cb48367120d0f44dddb2fe87d309c8b0c886025a9d02dc8727c87d3dc14922bb536a61e08176c704582fd4dba46478451b0b6e2470602447453ad3004c3e8ec3f81be7cbc54a282ccb5d39da957854aa46505ce05b1d24038c56e5aee20010c8adb9bd54b966bc9a1c1cb0046b4d128a593f75a9988db59a64c0d4d0a3c3161f0e7b60f041e7ca8d993dd9fd2dc2602205553ab44db862b63ebfc3ca291187e766ae594d6a92a776998953956a124ec5255ca463df6751181558f53dec909b2c6696c5c0dd3b6238334545c5de0d3625c20164688f60f62995e1dae697ce2cce7050ff6d62cd4f05f0a6c5dea5392f8f7d8c8cb9fcad81ba7307d1c2db9031ad66d26dbe30ce8a2cdee6e38bb74427dea6fad1db64170f1e42a6f073d3c478c6395bdd38497714063061b54e2f2f624a7449ac9550d0aea9b6e26b83f86f413b64a8854443f5c6799fb671ea6edfac76f12ec1311bcb976bff619535b17f0377678b8de5021bc8f4dc4197a3377cacda67e6a40c8088d0fbc4357fc926707fa75dcacee6486bae8ed5a21776bd6a824defa6535a0edf737156304a283bb46d89f591ee4008c1ead459d7ad8f1836df29bf71e33558290139cd55f08c0af05c0e1022c3de766b6d2a7d67a9431581f19ecb990d9721abb8967436bfac9c150182a78ff93c6c9c95aa1515f2fc72a82d15343d9533a0fd08f9f2f2e9f7b246834112f51d990bc4ccce9af1b0281fccd03ca617d7f67a38d0ecf1b8bad18c23d2dc4e1b074449052c107232ef81b98ade9e99ce7a4adc8df99a5526b4dbc273574b94796c9dfb9f4b344f87e359840895dc9413f5dc165d308a8a0c4aaa695edb3bbf8a842ef559b0e8db7268e88e9aa0f08e787d90a4fbf95e10254c61564e123da58284bb938b68a199eb5177629c5450662429fdc5efad8d473fd738d6306c1a86be165b016fd60b664d0c6e9f7d6ea9755e89b923a03b5b1f255de0d8ab664db3a38a2c2a67d183a8554aaec8e53ab19e0bd5377222e2742e20359946ccd3733baf571ef9c5fb8fc8b805bac477d7fbe8ff884bc5754c2887b51a8348ca3f36931df8552ab1e11eb35514ab440b0cb1eaad23ec074ce273a52c3bb673ba841820363eb15f9eb0a965691bdc10bea5d8853dcb1419e037ee47edc619c598ac371052b99482b14b2c046be19d9df83beaced21b8ce18a6060a381be96251aa6d584ade0d380f9c1701d0cc386afdb3ee87b65721e8cb61b7c4bfe74e721cf0c311e11e157bb54647131a7c54d96d610dc16b3db0eefea6b68193550a349905bebb57affc32a6eb480d326a91ccca87d8164460c3120df23148d780c263a2989369c81fd540fb94adae14ea8bac700d461c1ff7e78dc678224aaefe55bd19f29a106c115df530851d50c24d71ed9b19840b9d8320a5ba688b0a8a43fc741da3bd340be7bedb469cbabe8c2410b45a7dde5b1906fa4a08d0961fb13dad87e2c1277e365c5bab6e472983df1a57c720c6aa6e05e1b188acdc7650b086f265a3e80534902105c3cc141035e359284368ffdc5ea406f317e36c019d58a65b4456d78b3045aad59081f8e79cd293053023ce3b66182ef0451cf646cf791cec245a8f91db2016da8a0fa971b02d99493201d91669981181d86c87b5fa2e84d217cb8c99059873848ae78a796154df99c3dbb8ac8f27e3a28413d061d8938d22a9ed0fc816e8569592e11a36d2d33385673350234188a8fa993b1001014091f04e0403e8cd749a75cb4c3f429588a1aaaf90c9f112d1146a0da7662e14178a7a688419d9a06d7f0e00330af609c79d0bc3ff7aabdbbb7c4042ab95c3056676f567fa435b4292c0b4f149aac894a30a9dbac2059db38ba3dd12564d645bdb59b6a1b16832e99131c27ca79b3e510afa32ccb768ce015475130ee09f214f92e0ad281b8e79dec968a9affce0fafc59f314f6e75447c452d55fb946584b56ed1b2364e8c962ad9d1458b88b4db0518b9b4225e82d4174c62f5a6618046204512775176230e22a9feff870731dd36973166a9b59a04fed91b6eaf0264a7c4c1993129cda9f1843c02885def8ed0c0d0af5c507bb3dc2abcc5a2a198a974f0a767d86c6e6419460c996e39b3506da8d26f4ed147f905bef4e49c3d2cbb7ba4ba5500535ff1201ab90037d4f3a66d59354c5f67654e3162f4f133fda80b5e813b862260b592f01a081b051ce75828c06adb0565a61c7fb13de16d50dac612409ce77b24f6dd58184cc83c79ced6180d3d601206fda4ab35b6e447c4a2f64cee2c6b2f30547a36d43179c004ce4810a31b56ae2dc9f1ea49c949f1c6381fb9d269a72c05c7aca565e3aedbb9eebfab65b3622d1e6979d48cb98a99f74626ccccdaa6e8bbcc9a437e6139f78a421cdea5b306e82c2d63e55d3453c992c5d5c97aaff242be5c1cb30666bad8c40f5a176051d03e217d45e729ba92b425ec0131be28780248b3cc1ac682d10c86be7eeee9b950387a8bf2c64e82a2f28e199545110bfd81c1436a00a41c4616bf14c8a9f464d67fb360bd7780adc6a9319e166f3b0eb793ff424622bed10cc9118d01d43bf77cf4b8006005b636eb8d0c86c2c43e962d2f6c178233e092b3e3ff8d716e5138425e540fbe3c128b5f7a805387b4cbac693a9678f4836b3d74e033a3b504d613d3b74c3530bdd92bdcd69b2e43f976226c1c0578f2004b638e5b5d5594ab1247f03b38ae44e3609be856886d1a68daa5dcad5e570d9b7aa3691a56d06ac20c43e4a41725d1a431070a1ea565d45a04b2d40ae1ae8fe04fb86bdc3481e170a6c393d65aa9355f26cf3e812220b59df5631461d2d6b0628bce59d902d3891575ee4a208c3703022b41456052afb81d1b2c0765fa75bb7bdaae9d5d58a8fc50b58dd5570155930192015ce28dd279ebffddcde4638c425d189020abdd61d36e0f14affb29d3a0794051a9cac9a1996058b40ed94a04bfcfa46615fa164016c790a26a4be4730d4f0acf3705b8389fddff92ccda70e3bd137a59ae20289e7aa20e840061d5a73f5edff9f00cf2a79a912c657fbd0d25ec17f06a5e49e878179fae95d841b4d738e4d0b3a9ca889fdeab952a6b69e9a7228d74e6c47f06c5fc09afda904ed98a71af33e4fffc726cd69f2644c0aa2020d2efe61d4a9b8408bd1bb450301114d26ecff2df8e7c69778a40d1d8f2b21cbce36ddf64591816645349e225a8716ff69206d31d35eb03c560a0e23b55ba2796aa9a27027fb1c9abde9b6b855ff929d0c2d6ab7576ae579926469c3024a239306a5b666efd12ddc6f8d787c98f22f4ca466670ba28c823515dcf14223e8b53c2d9619aac3015bd53b55353aa1747723a1e92b1cf5255abecb5798df94d096d6cf7318fa0af1c45290f5c00d728914910b829103e8a92ac8d152cbe85ac38489f94e633f6175df01c897c03b7a0fe9430be3250f92feb0c693f63a8b82c87c10d82e5c16b4d2ccdad01b0e118cd830236429868e903f51a08ac4bedaa0eef78f72753403e696d7004cdc29561d5f2260ce8e38200c0be2994ddc9581b20736ba5a00f71adfdc736eef40d3fe68ba493895e3203b0465f5f10dc2b970201326725de3eace3794d6779d46fffbf8bbe532a7bcf4be9d62ce91bc18a217a2d200af79fcb0dd36af177ed652f485664bcb190b250b8fa9e89f0e9d0644946b341b7d9f4af2cf9719dc2befa4f0c746cdcd95b9dc43727f666a20a3f136f9a00883431bf9ef7997197da6e391fad6b331fbcd2be12a7010880b06b20e9ad9329d9db4fa2d10c54e5e8e8463e8228768208f38dabdd7c90ec9ab5c8654d1316a2f80281c1a1219c084a353a69b5382ee68e464d13d9745ad3c4be1ac74394307b205d2ebc606bf60ed5799b236c4d85115d27b57132a77d5f149bc4fa1e266d01f0614a4098e9ed543cb1a5afefee28ce68b09442439d852bbd637a1db95d72d987810745cfb118115db7e315ccdea66713694963a49b3cdd90b673a9709a6d2793b1ad3fd1fe78c4d7bd6e9cc14e65493bdefa78d9b5130c976e4b9383881863d6d59d3eceb4ff88d6325ff5688eb5afb771630e88f92b0bd1e71f8be6d9bd5a47c66840669b26ab6c386bdd81856155fe4c996540ded3373577cee09c763d7b7f3a9abd0ad807eb1c2bbdcdd89051f641943c142890492e1221619df5a9406fff44f5ce8ae544d1867cca114ab32074e2d750c33d6292ccde7056ca88595d0bea48c29af5d0a8cfa7c157b224dfe513820913c9ce7ece6d1872d90e52ff3039fd2482db01f2cc50fde86a8b91165404d40501f2624f2e940a0e69e0c3ed0db9cbbcf7822d0d03b3853ee5027ae4210c6b949ff8a8b5f360f76a5c92c79dcf3821b68f7999043edfafada1ee1831716645718af2b771a6ac08066b06914e7a2ec6fcbad425e187a78afeac7d9c9be8b8eba4140e4bba02deb1c12459adeed243acfbd327b11d992fbb8217ba0328b23d3afd3b5b626c6452259f70ad137755d78d4206f9d58a40172f98d36392a234a759e1b6967d5661654b8b5bcf77c600aa96ad73774a0d163728c84f30a3c9bcde1653dd4938f48ed025c809674ed210212a1cc30838c6b9a16e2bb6925143b4199c469c13be0b72749143054fcb3694394da73df9124e173ac21a257a8339a954a49ecdfcc2940c9dcd3dd49909dfa58a609b7ef822135e0bbfd17418e3cf99f1bd0cd149aac69186a5275c1905a468f29ab73c18f26c9296f63a2782bb3326df5d2d7770d79d0f5d9ba83735a4ba2b4ed5ac83102b24b9f866a5a1fc706e479e72466e4e23e96356d54d0e52e0cf2a8f1204262c0422642b25a7d902452dfc7a1b2b2164dfc8d008d0c2470db50144d28ad611d065a7758e48b5b6b9d19447310de7c7b4c314269219f12833319dd1f9554b8ff6e05afc2048c14aa268dc615e8f7cf27c782046beac4d7f025944169fd6481b3f46ccce71a33baf6f096bab1b900924d913d981775a9d66071a6906eb8dd3e36583e156f54bb20b20eb1e641ebe30359055b14cac6acc1d5389becd23b23cb5c6f7a95884946f0481f0539adf607a647687f456ddb20a65416161528d419bf6bce87d36f48bbd4095d05d6b9155d80fa2074ce08361638d1d78d798d53079900c4605ce79c6bafec2b37b74ef84f8a44831db13b3c090b280e4bb8cd56a8d8c3c095ed26f28b0f447c90efd2405d1a5dcab911fc05e6e051ac5b8b3ef7331b7aa47dc9df6996182a626dab85428a712a8b6e1af3f54c4533ab69ca2f9e72cc4aa415871f66328d6dfc40582169cdd483cd0071004f43916e907813da061265354447d938de4f5e78e2c7f15ab09964660309704b34b808a095cd89f60b7270a625e0a4e2f41059494e74bcee19bf0016ae5e57f03b172287c1a24fb1bc128f14c196e83c56529685c5b4de133c66a21504d0e8c557a52f38181ddca465372c0c749c25b196103c138c0171654c0e51400d71c782ce9ea14d573108844d720601a21c06d4fe93be63a3cf146e2581bd8f269e28de78d0b2b8f7a57dfd37eaff6540bc044c428d5792d601c4a876c2406f5302714502e6b1db50b9bc27edee51e9383f0e8227fad9d2ce0ec6c4312de6faaa1e5b38c12099cf8ac6c3d353eb6b076aa546799d4760a1468a8d96c360498cf2d85a585bb98c3e14159534f12f1a9341ee580376c603bacc7d54644758431025277200fac6209e8b45b9a76108c5c028d44445c6f2dd30b12b18ef6957911cfa75780f6d6e60b00bff2606458350df507adffc8801083ade64be67a98c8eee7fc31ddb3550f268cb903ccb23d61161bd6fc43ef6cfab8c5e311217f6ebaf4530eb0e7a6f007dfbc93229be8ab2f98ed669e95735bff3b2e52ffd63dc5fea2c912ac4f8172bba5bdb521d86c62d65ca05cfdc5a3d5a7ee2da28f1445f4269a804afc3a969ec9c482c9ca2452fe5431168b8404caa19738954643bbaa643455deb5efab42a1c487f61728578a1c28c312b44001dbe27e17380ded8643e2439bd27147db737af49f55f1cb5abda5638903b6912b34a3caa27fb47418bb4493280623e22ec6a50cf18bb1d292642e3ffa177c7041d7c264343f2df8d95517624e6460717facfa77fe62f905929ae5af62a0e6fac2a48abb2165b2e8bc5dce5f428b3014fc4f74d7172bb24d579cf5a8e4c376a99e3cedae98f848ddea5478851967accfefea40755ee93204d5fa8a17d1e2bc4ffdec4b0565b170fe8d44c7c3a0976d6f3e099c64db93abb8265135696c7b255c3042f7b53d9e725e68ea4c5bdb43c8b05ba841ca38fbd088adb4eed5f60872ada859608718f893b7f66e106959525cd9fcbb63f0ffa04f83f651392d76356b441dbc7e4b5df86d883b887cdea194e7819abcb47d3adbc233b1145b917adffecf7b402d156db70098050267090013794610a69336bfdfe77bfb9f626bd81c0484dc5b8023f7d64377724d7875e5ec616df8eb4cdc504bf06e6e49fe1e02cff8a1bc2d13af051d3b2d8284c5e2b5cf292ac49b04885b4aed04bff0a82442d4e7ae5f458483545cdb28ae83b9433bd2b0741d968be095af85cd67f9ad29408892460581b343911783f7fb3ca55c447523aef55b8d850565c535b115db9db3b898195e72015024457ae83b2d093fa9f6216dc5660da2463ebff512f61c1933b0213e9352384d2bdd11523041106abcb7923dc8c283f5bdcb8664bb1a3bc761c30642c90ffc68e9a836db36adf35d9b9110a9b29b0b2657c03b7c5de29289bcc9d58a93edc4fb423dfbd3f1256cc5c969ae29c6fcc3cec6db48b590bdcf0b573347feb6e2b6f1da1977e7755cc8b2d92584ab2020e80d58872d10d1cf3f3c67e7221750ce63f96c2fe2f0e99adbbb5bc7d909da70d03807639d85212ff16972781579ffac0e8d2fe13229d201c78a65d9aac2c5a49e57754321a231691d64eae6de464e8d4abe42ff61d157cf0ad13601323a6dd62d4439f1d49393771f569b9f99cc28aa0b15328b053a850ef8f819a99e8e2723dadf12c416e6c95faf5d0d44cb46401a287f39e8314e9067d3cce3853b080ce4be292d295aadc4f5408e9dec3ce6eeb56d4383a60bf25ed71d158e928a172081aa30bc03d468e9f00c910276fd6675a36e9bcbf36d35a82f630ec8758e34165d991f5427702ce5a9d9c891ae1689ccdb1cc99f367a0beee6049c7da1606702b30c87aeb6ccad6a0dbdc9a3adfe3481942f7bf8be2600e853d819ee78b9d0c817ef65eeacb642d4c332b6f2ee2379a28b1c86b94ec01991bdf95270045ce0587290b293cc9c6ea0f0b0b88cec9dd46b8ef9c690829fd9e566db61b616873b373721dbbd9ffb591a51f66b1370e2911b8346a7a62f2061ef131f8c1bf0be183ebd65ad901181f574a2b8762e349d85b83717d6bf6b54ad6853e8e09dbde258f9205b0882714ad6fad042a4dfabea3a68f67f3db5990067aebd0ce5657c4c6b8cc1da82365457f51380fac1631c155ebebd5f1fad6e632150662f845dee78cddc457fcb1d0006f761de575d644a925f04a31de27286a6970d528cc523a2ef42569ae4e3aecc21b6f028ab361b18fd9422251ea2f261be447a401541257744f38183372b9334872d7ab1f32653ae670c2bf354127b419a7a5aee9c6a0af806fdeceea5e4a8cb53953ac7fc47a593c8102948fa52713143926d54898a411275d081386b173b4ee00a6fc94204f121008b827ddf3753903ce09bd1e0e59f596050765613dc455dfe92acbe108afc67cfc4f08dcbe777064a3473b8d158d59620ab6e086bd50c50e521390e00837924e9ea09a0b6db58533d27a457d2d3935f10daeb59c9d8dc1c508bf6453a5b9090443ac84e11dabc8a7f32085734768378b31d44d910c6126d8ebec3854aa74ef0cde85c109e217c0558c2c290921bdfee57a3eef19cfba251cae5904d42ddaa746748bc039615347ab6ef8b848829e163d7a961cd9dfe027c2ba33b63c6b3a5695fcabeee6435ed0954bb9ee70f0fd87ed6a7a2789897d0c3c5ea0eb552f5c7908a91558fe223c453e5d6d5533608d6118ab082d71924cf4bfb22c4b7eadbd8c1f173702b17bd71366ab6c881801330acd413471f9af2256066ad846e5401c3264bcb218703500ba5138282a00386d2db8ab45e96501552982928087e4b01490807fe49e47e32087f7cb09c40df634f4e18f99b9f00b72debedc82a123c241d821c5925c3b1540fc724c082360a701c03646804ee5c04c10e571050076b731bd68bab0d7024716031bcf5d7934ff60faedcf0809b0d9a613839fa175706a43b9afc834d1037513b38fc109bf62bb7ca65ff73dbcf8b7c3f1ec4f9f15c3655fdb6699a3784fa63c3ccccaeecde524a9902450e860e550f376acbc5829fb35b38223bc672e9ec984c74b1dc3414188583e5b3bcec160f5f3038c8317e0c35e543e635e6c3e08001bd5c30a0c6011fe7f53eaf95d62e0c3512790ee67e7e3063642fe78ecb5ae3efbb2a95fdb4f7a95ca353b6de1176b40f9e5085135c708004173c41843353a0e78eebbaaeebba8ecb4ac880071874d19284158021c255f812170457490c112e2d0609dd7550c8a083628ad554c7415184cc030b8b39000bfc3e310ed0d6b90c8aa1800782375030319ae07b07a841178f035f124f70a33301c40e7a02abd514dd141445e0817500ed00311470f71d3bc54a0c11230ecd37fa173148dc97973a039ce7799e54f65c8320f0125f9200828b6e01a3238228c205ce949982092aac0ed0d43a7b6c057efe5566dd516a64ea5a211e5b63462696cb86796cb15c4cdd68533b3532d98c36b5b7318a0b37d03fb032efdfcfeea2df575eb2e2019ff4cde117663a8dae03345f5f924802c7e6e06829abc4ca8e9e7dbc8e1b41971338ed7d9faf6c8001eefbcf88cca96e7030f0659c8e03471084aaebbccef380d0237081979bcf518dfe25092c46f37dbed60a56ee0316d00459f71504267ee60817a800153b90c011ca10f957c3baafac03345f59ca07303cc60b5e9615a57c901a2dc63fac78c01cc566317a8833c81ab377ffde4a727fa913f57d1141e7c718b782705934b9ab03afe332bef60361f00a563831c40f901971eecb5a7bf10b2c18cac52f1fb82248cedef22f4860194d96cde85f90d832e2e42e35498c345528f0c30c44f0a4810ba4e00703a8620aa9ecf988275c2a75bab20117b8000928ca301181194750e06bc2f35410820abe1c8180b1e3a233fafbf04cd6856ae101212802045044410605449e0f8e2080abcc079a0839efd35f8c50000c9d393328745df7c50340d05d07deb046ffe201108c26f85ea680d6525c46ff8201234673f42f18f06154bd77ff7d161f02fd8b06a246ff828125465363a001e38ac6350ea2b25a859dd7ea5a49ee77e292df97f7f7350ea2e244b4fa8bc5f4c993df1c559e4863587e1dfce630d73b7eef4f56a2c6b05692ee5d34555a0497eecb5fbf1d973cb1e3dce225b013953167b7b82552b93d40a9d1fb96757d4d6852196b3c8321d41381efb7072852f19ba37b2ae0eb5004cdfbcd5193c47baff9be0b559f9dc865e2579d7c64ad44d349f5718f5b41f0e3e75e07eba4c2f94a116056345d8f4f346f4bc5c2ad96eba914c1faef5b9f5d34344fe3a2a161b99ee562b56c5671aadc7a9577991b7245d37e21d4137db7c7275229c2ff7b56eb57efaefa96b8745ff54437f491b5f224de9b544653ff7a3dfc2ec2905f755b4188f205627a1144af77f4c64e8401437efcb9c3ba02454c5d207c39fcf9de2bae7708c7894bf81f5319ef63bfaf2cfabd6ecf70cf61ac592366b92a3f8bf55805d284ae9015e6566e0df95e144defade6dec3efe37223cedc789d5c160b80e35ce0b2b513507d9c68829a65b9b09b82e98edebb37aa3edb1d395b1e39f12ab1f21cd3879633fa7be6eccd5863716a5cae9a1a970d8d0d8d8f582372e62c67743d6773462b2e75bff2423367c4b940abf73ec605aa79efdf87c0f754ef7deb3d51fbc02ed7b3324d68fe48c3b271d58053a089f3b2ae9cbf096932ce27e6600fbc2f9b9f256a8d3916ac1c07e8b3f2b1b9fb1e7335372e9e7bd605c2798ed3a3b962f77cd4277427bcb7829c200e618313c6085d4580f74b08c19b0ba4aa799bfffbdae517e85bfc7dd9b7d160686a7074899c7e700860f7eeb1c21c826f66d5cda3732e6441f3b94e20e668b0b23fc45a6bad75df71d10e00f42f4240c01bfd0b1151d48cfe85083034a37f2182ccf561e517c8defc2ac605d29de584c062c40f0306fdded3bc7ed3fb568b77dfb1b1095b84a6fe1a53bf37040446fc2d86b03272af7fb562c508557fe3992dfe7e12fc2d44d34bc2e95fb958b715a4fb9b0ba4c5b7c1acb7096174ef7ad0fbfb60080306ee699e7b1a1146f73060703deb5d224b490f9608cafdc7d47f7fb5c412314c046f9c34a6c12a4a10fb5d94a2bf5689319b4e131871b0cae18a06ff0adb179c46771deebe5fdbe2de8b707f45f3be73a208e37e8e32e589871d6e2fbfe2927f142a4e9cbd3c58b9dd01f42f4330317af941e7c2250cd4bdcf52f7f98bb484749f772c101ff7e5439ed765cf42ea766b7da78be43ce2d15b45c0dbc87d57c4de46ae25c497b8dd460e7729f769149fbaddc6d5665cfd8ae358dfd4f745716164e957a9d2b5f3160c16075c9414c6282e8cd677eef8e9ff6c16469c464e74d7f970cb889312a3bb8e893f0bc1efbd17c487543bb27cc77a62768dd652017ae7340a71f6b12de23bf67ddcbbbadd08be58206accb92ce89c0856c6fb1963d1b4368c18219bdf7add55bdf620fdaa507b2f2c6231780c0e63c33886dd31580c1e83c364a929c0ce8cefdc23745357486a6a2a4c960a63bb1eac3cc7648d19f1af94701026729c735fafefdec755c262a17050f7987bfc230ed3fd0bdca5e3c264ce0b33e2ef96b82fece5bef07b27e53bf8bd2d1886dfc7fdc0488d58d505c3f087138375839e3506237181cc6e4b9929cf37dd12e37d70b4b7f1728fb188a3eeeb82f6f1152cd65e8ce5bea2f095fbc262458c0547e1a8286c05687fd539d1cab2ae60c1519d1927a2151776a1f74e44646060f1f173229522b0e8847b4f04d3498519ef779d97f1765d30cc7f888f1d07889ca8cb78bfb5e4765b3cecb858d1cc5bba2bd6e8003471143683613d00ed7b376f8795e300cb88c1a143444bf7f2b95abb179f97ceeb75819c73cfa1c5760b69b31861bebad824c697d6dace30f5c468e28c44acd55a1bc1c5080f064c30c1041520150d9041031aa05f659618ef67d7a30d12711e27c67b8f8313e38bc8228ef6a2004d9c118693efbbef9d883e31078d6130f23ba662897288b2643f3f1689bad0893e068e99335e9dcf7969c7c9971b008e140896c932debf8981ad75770b062760e53840fcdd7b5180dcda8d514cfcf9ed83e00d16a32c65d131901004451e39de686fa3b7ac28d40290888fd50b409305065f6c8332379c1ff510c68cf7599f83e306c6124b94df89f0dbb7dab21ec330cc6bc27a2d10a5b45c17b5791fffeae2cf39a307758fef5f1d7619c8cbf88af7f3cdf73ebe7f2dbea2ce19070e42014200bfc5b25a796b862cd6945a537ce7be49637431c377582bb6e7b6defee7f810f7f6411c945fa3bfcf02401f82c38abd58b0dd72397b85497efc537cc82a4dd1efe2e66d94ddf1821253788f8f2f28c103dff11154c241f9bf660ad0be8fddab5a41ba96fd1c52b144d88abee2441f3e80005155014d07a2df61fe180895f1732b48e7d5740f83658db840b68b95b25e2c13f6891b84a5b4b0becbe51a71593a7498cd67760f8eacd0c6a6eb8a74dddb70ffb9cd5b9bd0cc548ee0b4fb558f3ddc5fa63b766f7266008ee04eccdfe78ef5362c310a1e3b27222190fbba3e5cea4a79574be7bd79bdd8efdebc52ddfb05ea58abaebb4b48fde85ccbfd66f1bbe5bec82c34d6be0f0c76b70b172338f11a71bb709cc8854b97bbc262ed95dac10763cdd7841683a179439a70044f72eb7d5c7be502a91e8b1d8ecaa431bae7f8907dff19bee366b13df7fd66b13b2e17db73b3bc14d62ec55d202b3a11172c607ef34ad5b690511a82d4787f860502192843c5126125253a305e3258b02cc98ff163918a156d12be731fc402d6901fff93fcf8af140ec2f959ac0b94baef58eb3bf6d3151cafefd85f7146ec3b9615668759f1661d2d95d182195d05adc375b2fa042f560a0487b065bc7f1323c782b939c2dc1cf75b4780deeb2f22883bf69c004d0be606c187a8b03bb8bf6fc580c160c0dcdc0e7c2ba5735f970adb7361f77d184deb23e626868b37082a1680c9a3ce1477b91e18c0802670804228e3d6053e1561c557278408568e038c9af2efbe0ef514a0cd44b7866137ca6640cb85c0789f6a9e786f174ab444770cb61d1650dfd7fd4e08d0a7706a38c802e1b0fbfa66a3de827162746ba1e8629718ef632372161ca6ca13e13137c7e331f9fb3017c872c15cb0113d18edcd8417c6c1b7efbb29a1c6c75dd98476c45d2c86f27018cfc361b018a82b52dc70193c069bb959f16e26e6f274c3503e94f388b95c201bc47ad66833705f778bef7c617c88cbfacffa75b5c0626e102bb560a6b0142d2b2d42ff56ba82160c0e02390bc67b1cc63d0b21cb5fdc6d097123ba70b14f16cade70948dc561b828a80480a6bdd95bd7755df7384a3475d0298c1e6813e61d7fefee507246f7b8a42e5ab941f906b99e0345f366f477d1cc21ebc2ece71ceb79a0cf14991c28a37b9ef5709633da90b39e672d99fbb2726176aa25c4c5db58327fc7f030de1b74e372c2e020d0619ddd611f8f19710b1cb278f0f75ab4e0ec88479c133e05cebf162cf88dbaafabdf0bf17f2d58f88f85c72e1670ae181bf15a8982f21d8bb95c311728caeb41d5dbd7b940384ce80a7368c5dc315f8e78a5b8029a374ccefbb83834ad0cee3d1658f8ae25c48e1c0e8760bd66dd2d52200240f386195b467499d122b437fb6465c890e184e6f3afc004806002401373c9ab2e5ce133ab85950bbbcf4288afdcd79542e16ff7a27bd1bde8fe858fd8880bd47df7337e05a31564c68cd0deacc0c58766fc0a6fa6a0727ff1aad0fd69e0302be030336c2c76f15dfe1cf25b2230639cb34b6ccaaeec02735316a95c22f0bdb584e6c1b772b9bf3068cc78f38e31c860d87d184fb6e77e8cc7a1ce7d59bbc3ff8a5172deb4a3cde7803de617823344f372a2d94288f736efa2fbf781339fd1439acf68c525ee55f8d517aaf05ca84217bab8ef33fee39cb10b7d87bda980c3ec845c0bd717ca0b5b3c0ee31241e744efe9de7b75af4396af6c6c686d720b772d212ebe7b212abc154d1ffcde1703d40143579857c05c6ccf7df39b21aebed0f4fe5bb958372dd89bdfb7b0119760efdfe26dfeb68ac0c4259bffde7bdc4a62f3deafdc42b508ed93bdd510617c5fe3673ee3f72d8670893af81015e16fdadb7fdfd2e7b077983f5392d3e8a38b268c22feb087d17c46fc4ee3e74b36384c3914e144f5f673f8fee6a0527d558ab044353900a37816a3272e0dd1747f88a6fcf9318c25f9ef3bc16f9f6b29b9dfb594e4e7c4a5e78e58692a2ec618d3701e8be35adcb7581dabd56a7ddf62b95aad67b16066686a3cb55cac164d8d1b0df8ae9a77d1b45e743d8dabc562c1cec0cec0cec0ce5cd7f5b4649086066686e66158d0d4b002d2d078204d8d1bec0cec8ccdd38020cc0cf8302cc01a56686a6868ecdbd0bc4d8d27107c1fb78606b4b1b1362dbea646346d3c9046ac799bbf091db3bec6e2309ef91e48033b033b033b033b83c7d05c2f0a8fcbe8c2f8a6f1dbceadd7b8b9b54e546066fc6158d8f71a56ac3bcc0c0c0bb3c6936b5de356e3a6b5d6afbf0b6ba400c1efde9ce1307e45730d93bfc6f5a2460a7186c3d0d0b844bd12b316cd9797b17bd819d819d819d8192eaaacaf3c31d6189d091fb6b43a8c318be33817f7ae7c3ded75aaefbabe775d97ebba5cd7f53a4fdf75e9dc58a2a963e5337558fd75b14c56c73d6eb9be5fb1be157e3a55b4687a1d87b3cb76478035cf0a4d7074a2623f7bf90a8bd53dcbb3df5b2fb374a074aabca5f91c9ae0e844a526d7bcce538d68ea5c194dfbeb5d72bd8fac6cf3ab9cedd3e467599bd0d4615c6225717d96a286c67e63f7dcf71ef85e8d68ba44d38e2c30a411cdf5cbaf53c5653b2edf686c2704fd2b276caef7b24c3b6afcb6cb3a50de15b2325dcc4e542ed6b992f193dd713feb5851bd4a07eaaa54e14de8bdb97eddbfe8ee90a52b9af6cbaf12d76ffc44d3496b9d2a76872776af5345a70a27ea54b13d587765b4d4883fdf2c54bea93e0b7caccfb2be1a80668eca51384867d1597254187049f5dc68ea2cacd79ded2e104b3ffe4fd4795ae9dc54a24e159d9bbea2a33496acb1d815a7b17c16c859b6a85434c8515bc280362a5fc9f83304b2962c5b74aaa872d4053275169d456bc951f94ad6a2534525ea3ce9dc74aa7ce3fa8dda5ad15cbf1ca553454b59d511569e637a531608a35dbdb5e2ca8a2cfd05c1728d91820c2b7489da06a0d6646aa00097bee746d303e3f2c05ca0d6ebc72c31633c293c3217c8a5f16b96d5368f9ff83e7067456f89fb92ba2ffc5ee879f1a4bc252e90e7e50279b6c5795e2e10ebf17f41b438d819dbd3124da71a31a04746aa060ad07e0fd44d5d205d0663c11a4d3b9ab033b6c7d6781a4d267a1883cd5c20d373267a78e202e1113f26838180b1809db13d5a8461617bb88e839db13bac683a8d5d1ef59b6b0e55a2c769b1b36fade889dac46432be4e1e5e2dc14494144c44c1408afb727fe741933f67208cd79b1aef17058279f52b5367d1b95d20071275a0ee0b6b7d5f188b31cd6398a3a6e840dd57cea195d1ccbfde91b512cdf51b599f573a4fb667a573bbafbc4aa253c5f6acc42b7e5f3a2a2adf1c8aac5fad4253bfea34ae7e15e6cfef03afa2e0b11b575afc66009a345972162d7acb05a2f121d7a1e934eace57aad0ae4233dfbe1fc0d5db2f34f3f8e555e87dd6791abd2e34b163511711855f5e4673bda139c36146ee718d1bec0c0c0bdb73b199fbc24c14804b7ea71a37cce1f77133c6d71ae13120c2110998f852811eb430314584a7bf0af8c19517a3dee2ab306656488042420f658cd0c0af74c7a9380e093d8c1cc7e995a8f10f4e4700e1032184e00a027890449991e3384f7b5a731cc7711ca73d90e3388ee338f0c635fa172460194df09f58f9904f77decad3fa8a3278cbca08151201f8e283a70c35ba73b30c35ea19d8dc036bedbd47c0e20856e0c00ee1764502acb5f75e21013ce60a2f61ae30a20c1246b82201ab3239b84202421ca107fa085668ad7bcac4e0e60a2ba3f93e1958d56861c5c09ee13aad3dadb5d65a7b5ed7755ed769adb5d6dae33e0ea7eb3adddd7c9dee3c0fb0380775f63aeed35a6badb5e769adb5d65ec775dad35a6badb5d6fa054f2eadb5d65a6badb5d6daf3baaef3ba4e6badb5d61ed769ed69adb5d65a6badb5e7755de7759dd65a6bad3deed33766c498b0c4ca041dc7479b0942fe3aad454ea53bfd99b1c2e3ba4e053366bc0cb542145118bc31a10647d8d25def545dd7755df7698fb36027c608547c391081b5c10a8250b9e720586b2fb622e7cc753733663ccfd31f9628954aa55ab18ec0e5085b5aad96cbf584068d4085b88a413755c5a7f3f77d373819ca89040d20c0028aa0801f9878c110acb032c5835ba5090664ae58c00a1050c50484e000cff338ee575610a1f23ccff338cff338ed812e3f89f99470711ce879dea7392b5ac0ca2a5167ed795e0f564cbda0e33c213cb93ccfbbc1e17a708243c02a5fcff35450c1e8715c98e30391141f28000966b004114f449e1556d0a08a2f1e17cff33ccff33c14bc4e0820e83c4f084ae034e1c35279ab0ad8e89c59f95b8da006dfe0e023b8267407765dc775c1477c5a065eb63736c801a779a07269c0477b40d0dd4d1565561c584516197c1cf006eaf332c7a93a20b87cb9ef811bc0a7bdaeebbaceeb3a2ee773a61c309aefa3cac0c7755aba8c3fd173e7799ee77977f4386ee57580f33cd1b49ec7dda8549ee7791e8e38a40a2f587ba2971bf0a68a27c62fa3097e174486ca503843dd1e3818733ca09ee8be79e33499eb71bf07d413f90eefcd1bc4f1c8f775e7fe694f657dc7f698d709eb906f96c00a8fd1f8337e96a959586700d4425a437c4cb31d038195bdf787707fdf69c42d2cc22892dffe90fcd94504bf5b2d2b9cf3dfebe3f37add2196090e0641ad5b436860d4ec00bcc9b9cbc119828bf8df1fe2a2cde37dfdde3bd1ef6951001d77edbdf68a5dcd06eee3704891fb59d51287e42239b4598ca6d3785f8ff757daf5e7ba8ff15f2cbaa84376c2576f59716f1f4f693264b26d0db97a0806716b488661c7dc1a420383888f2b1a2bb2bed6906eec7ed575dc779fd8893096dcc7ef445f51003aff7d4e1c228737c4615a512c170ee98a74efe116d775ac7bb94b841fe39cb9cc652e13e1e7388e63c211e1efbaaeeb9874445ce8799ee779ce711cc771351a004d70b45f8b8926c2bf52b9bd38739da75d4360d1314c1cd2711c8c22a3d3e82d215d8b8913e1e7429bc5784327127198d01239599c5b0658790ef681835cbce5f1b0238ff438bcc64137dfa264a95ee7880fba609c60c23b0e7a7d092abce3201c1fbea7f08e020b346600fd8d9f9edf79c7413d7ec7eb78e183887c8e1f4d7e5cf22eb450e487c8f0416278264a9018f91a7e06d93f89bd9323cf04ffbe0fd2ef30ff719890c3ee9b268cf7cd7088a49536c36f7c1c949394febe50a9948414ee5016c6c2a310df301494b0069186d0316c06d1bc649e8831848e614ec4264c96848e614a44f37a39620486178a10091dc38688e6e54234fa70a187685e2c3bc4211d424140a13563a5ac170bc686b1595e34569891133a86a9208aa16358289a16ca46592c3e06477451c28d0d180f83612cd1a534bed65a1b5641b89d960bdc7b31b661155ef225420a32508801e3c5093826b828c173410b9b1a90c6d562ad549fc60678cf5905450197fc7d34edd5c102461868c6fc3864ca6316a3d82c68a0fdf1b72d7bcbfe020d046e55a6abc2fba072ce1c0784e7799ed6b98a0ea8a616e0715a563615b03523b85d7c3075c4783f4f35816d30decf533298ca81174647e5d1bf586165b4375358dccf53558456641971eeebde8bf1972abaa846ff6205111cc775dd13da035aeb4f75c58e5628d1b2a20c1efd8b15533856b4c0c5f2c11216c766d793b5d65a2c842ca37f993233e2675931c60a1a8c39424080cbe572d1d0f8a08c10b8688fa608ad008ecc6bcc87f1d2e5060546e160d9e263e635f56470c6806134184be4eeeeae73e865d9c2a58b540e3ba21a971b5414962d99c88e91ba414561c9b2058b66e5f06a0c733017ccd52e4e1c228b58ca0a3db1f21c0cc4f442b6ef597f477d16d28745f99f1bb537f578033ddf04c7a1771ce4c2f71067d0f8155eb33742fb17a430ec3e91f7254bdf247c9b020a30feda1fdf711090fff18e83847c90176f715c0c796bea11c93b92f24d70547a538f31bcc790f43224fb34d816365fd3fac741acb7aa201bde3e94c7e11d07916ff45a01a0d5208883f3d681a6dc5700fcb5dfdf3593686ad0269a20ce2a9a38af8ae6bf52d17c8d5144d367b4606aa2d5a868ead36a9a68ea99d48d5a12b578cb314ae29824d1049144538f413a6cf83c8f4e8d37ff96b956800143b4c3215c1873c940a001feba3808df30ec4563c6df3771a2ec18283b86f381b5f82b087fe120ec250ae32e5cc05833388c359389763844110c06af003311fe7de99781a730cc4cd48889763804932752c341435e7c096f9a80adc065fc75b35ca21d0e51c318f06d20901be0af4b240abc5c2cd10e87b0e18d7050be6158f6d7fdcf512f1cd0cb0e87387a22d6070f8003592bfebacff2b21a22eff01bef181c84e373fcfd3b858382fefe35838374fc8ee7f12de02017de07d103f92be487148101071df99be4ef2bf9cbc4c9dfcf371cf4e4ef67281c24c3cf80836ab0e16f287a1207e53ffa984cbc1f0b410cb37f1492a163989158143a86e120de103a8641116d086b081dc36810670865089f848e6131884e42c7b0262293d0316c89a8244c123a8621114d9b65c43023a269cd60d80ba269a7308c88382414123a86051181848e613f44a2d0316c14cdbb05c37a882d843cc21da163d890685ea911c384ec07858e6140628e1047e8187643fc117b44136719edf3848e613b220ba289b960184c3471171ae1253362588e68de29510cc30f65848e6128883142c73018e28b104734ad97d1be09a163980bd1b4606c981ad1b450368a157644396769a103c6f73add252254873197b1e75dadedf7b97bda23422b0093196d861af1e39096a1c62b2ed96c2d14ab95f61f6247c738b370cbc5ac33ba8f5dee3a7c6d27664502d0be478431c618e3319a0c388573cdfc6d8be60276c1917a2f2f3053da9a016f38501ff5c23206c3ba6829d00b0e980ff31a63c790f1e1f2daf25970b0805117cbcd8b060386c11943c674332fa1f7c179414161587ed7fa5e8ebb602ed18dc282254b962d5bb858971a5d6ab4eeee7e737f7777777777f79ba58b9494172f60dcdd8cbbfbbb90739a4808078dd16484a684ccbcd088a14c218fa876b36cd15cc02b0526fb544764b75832535bcc6cb9b72d176a4b436b8ad66a36b568d3c814a90428ee6b8a2aa98fa2ab924a2afdd056d3cdb4d3efc1fd86bb77c0dd8fbc060803dc5db6a3fc0ed9b96d6749fb1e2f3bb71299ae4736d53153026008a10b0ecf4f3c09e820c3e2de0c861481044c426e7b40550cd8c00bdc2b42962201e081e1dc020a10b4012413b87d21ce920144f8a5edd8c00b4d2fe716804f7063851cced57001204138f2ee30af460158e8e1bec4040b62a002076e4fe014d581eec9bd1330908220b048e2f92bc195a21230b957c54b14942bb2f06ec98a6cc14b16ee1e79d72466f0fb03223c32c040877b122e70bbc1870ffc76b141246381827b0250801037231270af0a1c20300296917b0c2c80c50f3811f00e068d175c59b8f8f5418b000a685978a75a51818f26298e9d0022856f4c1c2b51c254c30600f0ee015756e880153438f7404de4e00359b8a72305b12c3c44e01c0f286064a5606eb7bc7694708ec0f11116b4a0614a05dca76e46eed13ccf2d58f79cabb19ed358ce8575596d230739be926578576b2e636bdd84cbe3d7ed92ec82756f07e7d7adb5f812b1d6b3d75adc01e0da6bbdeb8289b59df5fcda160fbe5df752bdcdf7e6289badbd2a4b846b3fe76cbe785b6b5e6baf8ee1c2b8f676f9da1f5c6bbb6b975813acc5579f80c39ecbbab0b6048d6d16db5d6b2f2eb237ab3e1c97657b68cbe5e016ac776ffec1aa7b2d8c06c80620ffac1a703dfbb580cdf895b96bb1730ab039b07e1d0441b76eb3bd960aab6f0d6b2f772fb6f686edb1dab2eebdb7fb6169dc9baff5c13cab13f40ab665f3e232c072f7049b2db67e95dc57d9ecb7ecfc8dac01b08727b0ee230517dbce66cfb62cc672af1ec25608db7bf35fd6f7b29cb59e4ffe49c1c75e55a7af67ed90bd170adcd9ef66cc64c56bb316efd86f75adf6ecf571655c191705ecd82d8dedeeb5ad0ce27c4fb8f7dace6624fbe5d815772d675d4130ee0bddeabbf648b3bc6b97586d2dbe365b221685abe3c6b8abeb5dce627bed5d5d2f5bcc616b832cb62ffb5996b57687957155d8b33adb6bed90b59d8b7b63f3b5dccae22bc3627c6fbed9eab8d7beb82afb599dafb576c8a270551eb659676b6dd05b9c1a9a076681b3d87e36e3d8ef1b5ad90043865521db7bbbeb6d0b96e0b32262edb5d75abbe39ed75c862cec940ca7ff9328c8807912440e34100319854f9328c63893b006be240817ec25a413ae24882422a02444932489c29c3212ca18c2902862f8e80802a74707e9c2405014ad9ca0506581a2b0490032ca4202407fc6798c902063c768cbd5192304aaf33e3558c8a253450a46cf4ae14db0f12c2d6e70230e08ffdc833b7677efe1ee4c5c067718dcfde52058922b292bea9e5433bedc3e4feb4ea5eab81546e1f330874b6039d90189a85f9d4a0b65168dcd2c8f06d68a5b18e4c2f4e0805be7bade97755a280869e0a67ac292651dd70e17070c2e866c3b1e26b8b56004484d0f37abb21198116e639e2c375493828f1d6e7e8177627063218a5b0a4a9e4aa02112001eb2c3006e277c32b06e1c701352424dabaa22dc78acdf10230480de875bdc52f6c1ca0e3ad7e09d1b3bf080025f0d193c69330c70dd15e7a3c6d39161d83670e1a105f7520951add041c9353c1d3c802088213cb8e0879ea756cc080196b8ad6c480fe8a16583c622713b01680795a7a35369170e2a3204a3a012e2ed50a4d5441381114488ea23c26a22e301829b09590748d50db56875aa55101107216e2a4d44c651016e1c0639db2de954dc8eaec6e8c2caf6d1d0443a9577420bc89793917c26dcc458e1858b1afa8584c90a3ba8348f77a37523a888128f95bd17dc1006fa5899c6fbf03e4f957b3818b2900fcbc1c021e7c2e7d331ac23c80e1cad72f105edf003c90a877ee59c9cd35de056c39581702c7032be9c1c83e607a3c0c38da7c76224bc93311700118704a0e7063400468acb062ea085004e394c51979076cc08072835ccf02486264a8cbc406448e8c66b85192a7c4e010ab2a802083c70a1c70cf1c5095e9616303184104b82b830844209ac55b74412212862cb105a2a10449608c4f0a2d1c3f3000764814599a31aaaa042892214013f94483d76a8bc2d4044057d340843c496211d4026dcac54da8b0103890f40d9b224485e28222488040ee0c3006cc6e418c10634700127199e0401e1dc64178019c2931e2d007d5ec7812a21e80005169080020460021290c00f4990f4d84183659170afb866f2d45371c9641edc28b831b606770657065f0c584f5c175c276e12780377299b3647a3c0c5689d704db825d89b9a169ccdadb16076dd15a7ba9fd6d7f3b89b2db6b6f3160d86814970cb06b865235d8db71e11760085b8711ccb5ba1063be4207eb2092c2d18e80870cb463e17aa18383ddc3e1a720d58c66aed585a8816ea5478078e8afb72d35d6e375076f882700484c0c2c18dcbe2c6b15ec8e0c65a4512dc3e1cd7f576703ddc15a81256273080876ce54613d28478a7a647e3d464c103c78216f278601acc436bb9e1233f3d9daacbc00dafba175967f5836d66651d95108e058f86ee45a7ea4cd60debe6c3f95c7834e024f0d0bdc05c78e0bcdc669899f6453350c8432c9aae265bbc837f64252d17ddf564f0607848b8125cb65b612eb330c6177b58e34f1523632f06cf864689aac6eb3c8bbd8c23f764ab4fc03076f852e03070736560879a2ec3d04078c838e0412c7acfe20c0f6810c6056056e0c596d40488a820442eb410849e5550d14303a4d19e0d3524419245134fbc20851f7cb030c087037030032754a004121b18a287678505d8d61fd49408564c8989c1132838c249071ca0d4304312244384a420c304174988c069031ad02187221462a0670a2e1cdc200aed96c5192314018a0d26b8a899810a5250022590f800077e38800f4538d020431224459c6822052d1801162250d4c0892654800225482084960208a0072ba666100325489044079e6e5b5624484d6b6a0a2970b002148820044610018401b6ac08072836c85024c88e21584dcb89265610810700f1b46538bc504448901d43ae56f629a470a20916a44004213082034420e0004f37bc50a4851d4341387e603635d9b398428a1bb060052940810842c001221000c4010cf09483a21ba0b8d0c38305128cc040e3b2418c282b059841061f0a18a0004d538af8b2c0676e123824dc2b3406f2052e1177086be3fe601fcbb3dac12ce07791c28d6161782ff00916279b605d7c2d6c6c3098695a2eb0f58275c22a86aae6f374e7ddaee3386cddfd85abdc7d8683aa2eeeaea63c7b7644ae6799d67ab60c8d95a7ad7350450077d70eaa7870f7151c544181bdbad7a6a3d7ff9695ea59be5afe5afe8ea6944c49a5d893e5ab6a80aa15dcdde5a00ac7dde893ce722b4979d8b7c0e35f2df0f88f8cbbaf1cfc6ce06ef448e8abe5af4d4737f0f0f0d8e0ee35ee167477151cd45a32be6ed59447ed4957161cd4a4367296abba65e8f9b0970a6a1e8de3b273afe4aba0839e19d9b94507bd147846bcd29a74eed923a1ff298a9492abfa3be92453b7c17b52539e542946dbb49e1d2b67aa6b99bb0c777d8347c42f0fee7707f77bb353b8ebf8f91e9fa6b6580d1d3a847404e900d29143070e1d3774d8d0f1a3c347870e2121a1202120a11c4238846e08d910fa11f211d21124141414041494230847d08d201b413f413e413a808480828080807200e100ba016403e807c80748470ea11c41398072e4c88123c78d1c3672fce4f0c9a10387108e201c403872e0c081e3060e1b387e70f8e0d07143e846d00da01b396ee0b871e3868d1b3f377c6ee8b0216423c806908d1c3670d8b861c3868d1f1b3e3674fc08fd04fd00fde4f8c1f173e3c7c6cfcf8fcf8f0e1f219f201f209f1c3e387c6ef8d8f0f9f1f1f139f271dfee0ec3c1aea5a63c34db79834ae7a57ae5f0397c005ea5a30ac0bbfbb87be8ee3d5c126acaa3a65b362b6d473d3b4563ffffeed7c9fdeae07e73600165e16e70779683dc1217dcfd0407b9157ec8c8e887543a46463fb422edd9bfca08b62a2595e9ff8ab4672fa31f4252c9165ae0dcdddfc13cc6fdd572b51dfdabe59f7b36a43e12faab0dfd295b861dcc4cc8e8f1d7a1f12bf9b2bd142b4fb2e67ea9e42b3665a6b8fbd06a3b22054d5394a869add1829c49561465b2ee21ebb957b5544f34761671bf01f0144dd3203b45d726b2bdd66c698afe503713b98dc8ca19c97416495125e71ed2b4d668fbd5f2b76d4632fd8cb4ad31f295622b49fb95c6a96e54f6ffb29d92b3d806927496aa5ad25e2d1f0945d3da6fa5f569688af4e44aca7e9fe4ecd1df3234b6658fae2fdbb39214b2eea49474b28e67492afdd8b1d4863659c7a1a14d2bd7d39616d58ed6d386c662e48eecb421edecd8899e45b27ddad2da69235712c83e492345337245d7a655ddb2195a7496452a4ddd65ba9ebb28dd4de46ca745b22d4b49293b3d6db1fd642d89980051d7994ddd6991526c256b6a293bcba47dd4b461507712a9aafb88ecb4a147ab2d49d259aeb16d6e26eb6ed2b49629aab4da4674ad35a5b1a1217533956b492bd35a5113d2de475ead0407affb5ace6aea1bada4918d83f609f71939648283f68abbdf38686fde42bad5b374f7963b57639da8298f0ca5f5c436136813c00aeeeec2410b9e7bf63c7e1fbd6c664395d487bd5abe7eca969de56f2694b6d3a21a29457577cefdda005d0a35e5896da6222964eaee31dc2f1077c771d045e06acab3d2907a62a9da13436733b2a72925d3a37296a269baff245fb6cfd4b6eef44fb45cc9f5dcb43dabd1ca5f4b325d3fe92cd795a4a528d293ee1700ee6efd32b9df26f73bc5fd4af1ec7e995c788ac111470cf94c90ca000c8915505162031238417202470f58b320af700742605a48d13c5760010292990f5a3e211136811f302d4e20000faea940725c30a10450010d03d602a4562e75bb8d8e590ba862558413ef554fe509ea89382a5474b88f5f07fbf975f85ebf53a9f2449c4845874f847a225187eeb5e8893a742227e2f7d7a1b3e78582ca4f5059acb2c47dbea26d0de1c4ec03fbb83e3a61fb8273f6e2cc75de38c5f36c97aeeb30c7711ce63e8f3973a2799f8a7d8b9dc6e7debc5d143cde77caf6965939c6667ecbdd9bdf7fe46e8e8245b0d238e87e952af909aa88282e8c4bb84a165d6ac43a582b8376d73538f01c8ec7ca7334888358e15d61962ab444f73bf176dfae56afbd2fff77ef53fed5db3007fdf66a56e874d361151788f07fe1139425c25fc505184bf2b3de095ebd2a742216eb3fd54359a2ef69f5b47ad6db3087efad167328c2c9f7f673508118c6bd2a64c1f0de857109ff104df75dca04591d2b742255f8a4fa27d65779a2ef2d4bbce5a003fe4fbce1fffe139fa09e88f5b855037e5698830ef855e20dff7d27f8effbb85f086589bed7219425d2af0a9faab840f43d942552fdea86acb7218c25f9595f03fed577e19396c189882506640c9dbd4c2d77f646929de43769c1dd9338c8840a26376062c579765aaa5b96a2484db3754b41d73ff263866f3ac94fdae9abb66f422ad7a4139d3d7a3271f7250e2e61c192132ca92d51e2ee4b0e2a99420913a01253c98dbbc71c4cc201777fc1c1244960128d6409e7d92aa9144b6db5233f66d0d9498b8c7e8747dd1be9bf89aca1eb59d2f65a16ed8d64f43b3cfba8893cf23c7b23a16b536ca5edb5dce131b27143566434fa93fc749f3b0909fdf1878c9a52b28c9548fbdc4746bfc3f3fa99c1e853f475d0f55f766e23188c87e7a5b39e3b2595bc6ccc60f4fb2856d69ad69fcd4a199e679db2878c5675cb92ce939442a63224b446c652748d6da637528dca72f66a79a24d64edf716c283ae3f2363e84c5d370d55df091220288ea4c0dd9f3878a4e6ee363878a404f0c8cadd9b3868a40b0e078da05f63d350b5c68e132dd1b569d6546345cf1aaf96331b92aaee58cca6fef843419c2441c2b36524ed44cb935c91d027b7d2aaa265f96769b4164d21694628129ea6d98c4cd16f9a25a934a3ad24853c479dd7999127f94640186a004309681c84a1033018f1a8477ecc60f43b3c7bc8c8e8777856146572e4878c8c7e4729c986a6a78d4643c9992d56ae29597b723643d7294168b1296ad16caf451c7c61084fd3d1c76abf9ee43ed11fb319f96325d32d5b6de8a695eb564fb4a6eeb4074cc8f63a42b65753d13e6a226933143d2a52cb2619b9992841b2144367444de9b62da1c5a614c9cead169140112c3a3fb4aa5b96b980404000aac1102bee5e34840677ffa11445e2693ac9472a5f672791abfa2a8db54cd132ad3df92aa996b27d6ef5c95fc9741bd9b861d3916d29e86c4602791e29e8b9b454cea43c0f12fa345a8a229de56f29af9eab8ad25e255f474d6de84e491a9a229de96c363e8f3a4b49a697829e4bbfa5fc6ac4f6b29da231155592f2aad13e5124468f54e4794e29e8b974da5e2d91d0233f667820cf039bcdc8b57ca4f27f7e556da66a7bbd6cd76a64baa62559dbb619f9e479d292ac3dcca85c67b623462fdb3aaf47428172d8781b7b899c1d95dfb461781eb546a6ebaf5b55c94f3a4b7597496789269d284f53ba6d516625c944ce62e44ecf18766a9b95a410d9b9ce4a21b323f28c61cf8eca35dd4c67911545022445956227b999ace879923fd475abead874924750d4094964444612a1489af0100141424a22db29baaa30d949bed27d9ea58eba44ee9a8ac64ef4d552869e449e07f67a26478e3c8f128a327926478efcaaee9534f2298dc6a3d2f69aa2af6e269254e2394b343dd19d9e1d97c9c8b4692f156d5a99d65272cf6245eb56f75e51a6ada2b3d88c54d11a9ad6d452562aa9ea9ed96428ad47dd49b2323d4a69b41db588a99c9145b5bd976633b2283d6daad3dd6770b0c7aaa63c658decc1c1e36383c76727b699d6f2a807931e46dc7f8849d35acecad556b47396e47ada50dace9e2da5298d5644801ed43d8b9db6a275ab38f08052f74c46eed9a3ebab6b79f42512924d7dd95e914a25550677271d0c6af9dcc0c186ba674d27f9eaa6a5aa0d2d9976aa64dd6aad5452d37d44dbb41d5a49eea33525b7d29ecdd0182ab3a9a8cca6162595ea4f51d126cb7566a315a964d16cc74e32b68fc8a37d440a45c01d3d5f0010c801cf8aa2ebefd91179c6d074249ba14aea4e95d69f91b4f22c692f059deda38df44a78f649ce9a4e92f628ea8447b6674764a9e4a40c3a6db4231b3c3e3b47b29d5da66bec068f8d9d9d3d2363ea4ed35aa6642d3665a787169bd2a30e0dd1625376807870f7d141a01168c8dd8d8c62af32bd91d1ef9c499e0756a3c6eb55dacfc833ddeb59be2afbffa14b15591c9083cd54ae2453996e59914ace66e4914a1649a1832b645b5632adaa8d76841c4a56d9fea6d9563acbafd1c855ddb4d2894f8d5c555ab9ae5bdd49a9ad462bc9596cef1429dd48ea49a66bd18ea528d206c0de291259939d649a74da8a622853698bb28b647b362357b568afe8a91ea929cf914c46369553d0b4a6da505ad3899ee45ecf4d93edd86943cf932c6a9a82a6b35989a4ee24b2565423b752d1ba55b568b5a14a6b2965dd6ad16c562e1529ada594a2a594a4edf467ca85b8e5c0b5abbbd6b416fd2c608acf59269569929f26e00f127767e2a00f167e03141ba0d470d067023e4d3e393e1cec91c2dde865fbb7d2ba6747a4115aa41ad9be6936236d2749fb74afe4ecf7d19f648c6746da642553293bcb3fd79d24b31df584a0878abbdf004547c706283c473f9b95525e76929fd2d026ee8e82833d48dc7dc8c19e1bbf01cacb765adaa2ecf47592ce52b69562a4ec24955ec909c833049e256e80f23ab2f26d80c2b369686cb5a13c4fee8e843ed3db8a04c0f384e7c88f19bec88e954ce96e720649375312d9662a776c33516da4d2942032c4200ba29e310899222b8b6a36344d929de5d24ed11fb2b384a1689db2cf1e3c62fbc9ba552424b468a768ac295dcf20e9122674b4b83b1007758cdc9d67af28d3279de5ce4e6b5b694d5f25a5e8e460618c910c8d193dcf96a1b117f244c99347651a538f6ceaa79f6ea5b5dc4edc9d87832c6051c9daefd516db53f6a3eb932959fb910523f494b2cf20075978d5368e91915ba9461623595944a664cde879c89454f2a4edc73525d726484c4b46d95e512432721391b291c8f6cc26db4ab12632721391ed9594d562d832f4474aa2474848494e292890a4b3dcb358536c239546c8945422eb21e311db4fd25dfe483712928d683d77592b633beda1a4924464e4562a8a45a1151525a9b41a2d25b20150aa4545e9969d5bdd4964916cd3d255ddb6289bc98f73d792d4682991bda2b4cd6446c65023aa6c6848055f33bc5abcdcd39d9492b3ff29b2f253524acd46630b6dafa5100769149942d254b2f6a714344dfacd442a6ddbb645f91acdf65b6945d30d8047423f45d592a9943d996ed95992b49dfe2667b6d88c8cd5687b5dc9233120b2e3e00a5cdcfdf54925d289c6bee9682d69e9aefd492aad294a6bc1c1158cdc5d2d4fdb4b055758e1ddbdc7ce94fd277a3ef9e8faebb9d557cb9fc10270069717cd462ba7903434699fe00c281b00a5fa361edcfdc7c119aa1c32fefa6f5acb185923633fdba76caf64b99649e83e776cca9642be92234c88fc56929d5b7577200773b6b8fbbc5a2e390224270730a7c8fd9b6627fa6a59148526d3f9165e9692524e29a8ac48b65575c7d0b4b699d2ad6e26b2ad92db886ccbce204d3272a7b3719db29128a924912d437f9c68b9c6b6796453d7da8ec5c81e409a7ac8a66cd9d0d00f936c6fb58886ca4e32ed3134f4c3b463a5ec2c8b3653b9c6481b3d603bb5ade499543679f23a2f1eb1fd4455955452a968afa4ac949d646cdd4db6d28f19c984a6b5dab865271adb4d92ce72294612c9ce1286d556534b206b8a1e8d32722b8de890f5dcea4e959c68b9c6ca7455371375a768ace8549bf692dab4978a9ad2cd84c6d45286229d4564bbacd962b1243b457fec945692b31f3272a74a2b99924a6a35b2683d37ed4c2a55951c1afa9912642d63e5ac462ba2ee751d9bd65256cec827b51a5994a22b399ba1b1a1211fa6a1a1b3249562644ad68a5654462ecdd05a6ccbd01f3d7a08d978c4f613d92c89ec1cd52635dd2552b9a248b66c37d93b895c9b2495474eb454d3fdc4dd3de0c3135149293f9b91b1210ea66086547af2cf92b6d7f2f72ce92cd51fdddd86832974414f590a0a70f7181c4cc187f3cc665b8a4abe4ed259ae6a5a223d125ae4799a66331bd2c764a5ecd5fd48e8aba36cd3f65a44b6d73dabd1d01f7b3d8b28c55692683d77193bc79f27ea56c93ddb4c6490c0dd913828a3e6ee3cabba93926ceaaf4a4925ed77ad69253fdd4734dbf95b69d5d94a2bcd9694924aebef1545f23c2f652369226523e92124c4490c3cdc3d0765bc64e4c80069d0f81e2db4f03468fc100d1abf93c8145dd547427f4a89b4d3dabb7b0b0751c881bb1f71100505a030ba3bcf0d505e4776964b3640e151b7924aced4df2b192b67359b4cb6d752456b5bb69e9b69bf5a2a39799e159da9bf69e5fab0588954c6764ddd919de5d24b76926f5474a2a5aa6ed568d76aa4d21bc9ce72c9e8cfcd542621a12fdb6b8ad676fae89f64ba959cace8acc9a6954eb62d0a594bb2a23375d3ca55769630ecd8b9919092a0d0f9ae35adafaee7660a5254ab9143433a7e72e4b091aa4343fb2c67275a442bdd9d868331b8384f1ae3a6dac8da7aee34b5fd88a18447b6cb59ad46feb9f7d1aba4d2af5bfd97b291ac5b2d22659b66533713759752369294462b2a5af76c46d6dc3d050761f0c03d6cda30c4cad9914dc9d320244810229f229f221b4f7c8a7c8a7e9ec4d4f2486dab3b3454060408638abb5a2aadaf142b95a4bc8e13d9566d50d8ddb3bbc3b02fc8f8a3ebab49e40ce9653be924956235f4b7ed2cd7138d95e9fa369406772aae54e49fbbe3e0ee4e1c7ce1c3dd068f0fcf0f5310a2244c9c3431b26eb75835e5d94768baaa3f3c3e3c3676ce72966e5a0f17cafd0ec0fd5671f085be697bbbed7053dddc6f37bf37c737f7e1e6052880bbca3f77877227c0cdbfdb6d875b016eeeb71b01fcc683bbbb91bbd3e020ce13ee52c8d487c7c60f8fcfce29054d8f6ed8108a6d1d47321d3a6c00c562fb678786c6788e6c4a6b99d494ae6a99b4539b2280907496e9da445d63648d86fe181a8a6d191a4391ce225b46a649b51856953452aee5590400e58c3c4b21419a66b5dad84355c959ac28ddb529246d2986ce8e8aa690b41e3c4eb45c6b49a690b458a99e65ba4ed9455b258fd2ad44ed61e3868d47ba954c21694343f6026b6ca7291afb153da5fc23952fdb6b6cd7a6fc5672f23b8c8a52b4c8e895d652cacbb6925a9e25d213b915e2ee501c749181df47abbad7df29f9ea3ab391485bf67b7654aae76ea2a63cea5ad2ca196daf6a93fb1580bb5bbf4c7b2d53293272a7ab5252b9653802c2646fa422b589ac35a5e84aca4ef2c88c4c772dc98ca4a528125525673f9a4825eef769ef54484c2d694343eab997d0756848556d2bb936d9b1939c9144eaa60145a2a63c4a2aa9d4d303e42324741464a3e7c706e9137423864376e3060e219f1db4b357325dd5239bdaa3ae367429b695623d6b99d48326a564ac6746c6d0594faada7a9454526928a1a6a8b4ccd4a58996744a2134333202080000e314003030181089c4a2e168a0269220e20314000c81a8506c4e19c9a3284a4118a40c32862043082186c0008cc0086d14f0ecb5a860cfec240ceaa74020e907459b5d6c74d0908893f335005870c5c7a5dbe4239054e9383b36b9575eace635c3cf2f337cdfc8e4e0afe6839b13e6bece90b27a435dda3f51b5ac989dcfee1b3d7487d9ff1d13e6aee3de19c9d12262f9d21cfe5505752df60f4b67247f6c1d47e91fa94404f1251152b529d20f508dabcd2ffb211bea5aea05be72d66596b1c279353211015c0e7eedc85d6120ff796b1f32e9fee1bdf6dd1d8ffe08d48a229831e4d854adc53883a8187717efdfd43ba0909c1fb4d2627cff2eac5932cdf94613352d758b4400d0f7811903e3a7650020124c20c6e0298ddbe76b14146fed902fd16ee158243c7ff1b25822e8778be76785dc9591139fa6868a96bf902e380c7dce17f9eb7598ebd64a88288aedd176f0a4a1a5e1af1f1cd03d31c258d647ca7959c1d19314b8cd40149baf151ffa0b1b1d9ef83debedbe5b17dc5e6eb0fc3f0d5225879453fc799fa3737a24f812774e869d25ff0f678c7ed4889be284956bb83b8891aaa8aa4fda19c7b5bd2380a1dfb9adcd359f6f1f89e7910eb1bd1ca78185fac03b413a5e265aa577158afd3731431d868cac5524409bb584fa56332be5cd3a7881128b20bb83bd6bd8517e51c173ba09cfd383b4e03b7a804d99dc2fb1c4f3ada748bf78f889f666183c9f474b9ce7aacd5716395d69d0c1a799ceb9603527ea38336481cf43eb884dedbe08f02aeda7b5f94b939cce4df4cd43a320eb8880790583db20168e4010a0b6fad28d9347140515863c44c0812940074a0c25d03f702290f795858d2e4f5f04a925ffa5cf7b3a57cf5c539ef0a8e633b520d96c791591f6984eb8b7cd45225d27d3a1a942b44475930dc34ff2540d9a69fbf3a61aa4944ae827b3c64397e4763b7421f1ace5e5699dc1cec9c7cbd21657cc94464b957270f7c93806f93da0307dccdff96379554a0169d4057f5c61438fdb911aa31c65cc35f72c853b109e05142e927955177eda22bfe1628dff7f034286dc57a8673fdc6b30c5df1e72120ef2fbe33e50a865b43d15db81793a70c20d33c45140c11cf7ba27e080ad780a04e6d208938c86f1972efa5cdef05303179da54a9400b01ead8342081fe766e6bd10fb2a97b752e3e4c9099459ec52f61709d88b0a68fe71cf93ce7ad496ec842ea2c5d1c59457fa81206e110e9f8fe365f2a62f62bdaa3b838f1bb1a208f982da5e397cc1a0657d94e84f3e8e8c72e47f816bfb1ba29738775ba266d13eeec0105f07d6489293363772e1f48b9b14f4f352cc396e6a19cfa8d8b007f4c723953e9a7f37a549dc4ad8f6b5017e6b71687d57fe680abbab787dc91a845f291e57b86acf8625ed5af5859a6b4e8d83f9b7975e9d93104c6afa0b8deab9d1d03b109c2fb22f5e10d9eca79438af5218664ac628b1f411148c3126bbba43e46c2fa1f9851391767e353cf1c2b14e414b493ade015f25efcae22feca4cc4ec5852bfadd181dff25e47fc191d9f32047ab496b3160c04fd88991291326c7b4e0cb53350d0393cc57a97bdebfa17beb8e09dcf4a91d8d59457e011bdd875f59988db58f2bb17e8df68413ccdc0377a524847a6b49a41962cb447328ea5558b7e68c5ef456d201d5a9f4203b51d8d3d2aef1f204489c5afde511c91598aa5b95ba9aaabbf3c91158645fcabd0795f06b5c606384a6ffdf198e6af479d31a970093d66fd6c5bc2c6dcf198184630869c0380870f0e03a141fa85f289b4a18c4933e0bb039389c2127ef9ffa1c8487e649967f8fa1d3a3150b6cb280e615fd6b41904090833b5d479db235e3be4f4fe547e5143b9e9f9c33deb2b8daf3134eca91bc524801ce9b76b18a4309bd32d9f5b2c232e50ff65600de7515ba9f11b1d85ddf701fcfafaf95f3c8f1b4d9f5b238d1a45935f4806a7b4acea4257d7a45c1bb172de154c07457f02ccedb17166866b02af343a1fc89e747738522c214711a5e51fd640866d7d47fb78305e2814ea2828fb2766001b8ef687dbbae90978856cca41b2ad5178adda5b7f3a3037ee7a876d4ec75d6caa62b7f6f6549738959eb8490ab410ca3c09ef3b9d9bbbbf57d06347f68d01179010cb1d5fe2356553fb93ff7c1e318c633bc55bd0726fb1c42a3f9c275f87774875c9b82aaf51a2d462a6cf2106cadac96c8a589e7a48c92ece8e42c7736fe81630e4984baffe18b207c4ef5f093e4032f360540bc6729890d3372fcd0e60947bf9a5894a81cd3e281f5c68729954ae9f1100a7ef39600f459fcac1e93c25526957cb6edc4fd41fbbb5f653cf65a18fb9e3ab5dd7d585b48fb2553b3d5858a4a469e8f2cafbebf0a9547050aabe4ef59d27b216e66ce03406e77a38bc17125ed7bad3dd16f74a64f0a68cd3e6702da11ade8473c0b08b35b43291b06d1a215cd07b97a689673fcde5f92e139687aaf2cf4ad3a58f29f6198a9c93359a064b04427344535c9265be81ee85f41a41f62f188d7f60f4ba730e2a24cce626d93d04c404c39e589989bc98812aa2ce714925f60a92f19de56ee5f2c41e83b71ffc32593984c191db4dbc84d27acb8b0fffde05800165f20b2fe473567d785e1d0b77f66383708e9369ecce10532854777590261eb7ab26f5e68c9754e56bc257eca08ba9b814f2019f6d6f0ae4af2331816cbf503065ad861bfd406e958c1f7983cdfa9a3c8c28fb7dc20bb415a6e2f79a876692fea4f8b88a1401271cece3c0e30e588c8bba81af1f83556905674c14e787666419f7778edbb4d8c64b9ddc734cc88bfc7207f03e7611a117839f6ebf8207a48b9bd84841d22bd4b6c8c0864c43fc4cd911d2a052bc20b971e407a4f7a586528009dbeab385237303bec4d2f989859f6fa23bca596aba559983c6b82c61f022fb0f3a56afb0180029f97bb1046fdfe165b5c3f50361bb3be0ef258cb0eededc280fbca70bc770c770fe5f8cf1c5a4f68f7884ede3a3a9ec34d3788f0a725e99bbaf47cfdad21131717f41640220095065075b0ef897f0c7ec4c66d197233a4b3d1fe18d484470f906f7417d46d6e1d5d0457c80aa166a55eed0e5dd4b57b09312ad8b397549e333d2b3ddc7874b43d066286c5eacd495a9e3a71f1a5e93157c9c900da62ad178757455d92f4ea410a4df5d8747f1089333aee404857e20bf188e311cd50d1440c871487767181d633365363417eed35f9347563bfa2bfe0dccac441960f535ff8083f9cf90a5671e9d1eb49a3fce1df496db5c4a1810d71789340c9ed666d967c64b2de0eecb44462b1e9a13ae0dee74b5742f6b0996b0d007fd4b237448e5a3db063e8ad3dae801fe2d52fab27c2eafccde1a5ae5f73a2a776f44a246135032b1f207fd4045848e0d2f222638ca226be0e0a062dbd2c2e46f678694414c3ac0f7c05e31883504f1a808fee8a8185bfed91d8b4811b04047fcf198d9887001a066852ab5d783a3c0bc42a14c22331eff6757a67bb0684de3eb8836d344db257a0a9024e937f170cd35158839d8fc621a658c20e05d010e9a34d18003a3457190374b87a1f70831e67f0b682d1d2cb8c89d5ca7f878c370b3b4303049386247611bdc7012170ef6b39206041eecbff2d17dc7114f67414be15de8e1d0912460278d0c81850b98175388aa1e546b6b564c47612994369ed9eba99cafbe916b06ed05bda4b8be1b3953d3f6adc304408ad05f375d99be1e5bb7677ca2be9b38ac5d619b6935e716d47bf804e936a2830bbb7622f9b4e2398627af008aed15ed8008ddfb07069bae3be28c4e62d08d2a68a190723ce3b08c77400601a601dbec860f2f93f5a78647f5bd8cc15fd0e01dc0ac1de7e651053d8787bd659c6873f1b9699ab371e2ea0e06e2393e3aba72b1755c00d68ec159fb13c8f4c1c9d9c9a2c5ad22f97b372452367633f4de2baa783c59d6b653f70e762adab4466bccd88dd51766ea8dc9cec5f7881c800f8f63f06b09ff993fc998a0aa307260ff603c501163585e4abd55e58fe6d845b8bcddafeade5d7828ec92b59987890b07a4ab669eeafe168bd45c3652e200d0c4ffc7bb6eae24f9b33093ed9437c1e653a185bc925a0c364d25542c3c8e912fe1e59301557e1dba5126897a42fa54e813cae04489fc0c9cde1daa19c0f7b14f4eca3e90abee5ebf84905c158fc9949415d03677accda0d7963d9a5e395b0afe33b5055fd29a0122ee8af322193de2c39f3693c8139f5adcac1e6c82c443b58677eee111890e222f2459fd486e7f153aeca0e2432fed00b4e79d020ff3e0c7def58f2fcf807b22e3008f24e15f7cd0d607a9a26fd4f5abbb1d7a198d5f5676245044603f614f8638caab073febb02e894ad8cca151745aa8158dfaf9265fe529bfd0151bd2f7cfddbb28ef861a8fd9d26ff4e99a0574abb0199ab7f7d916b268199a6c05db9dbf2f2d6196ceb419b827d418de6ec7742811915b7c77e380f0a3f2e645fe8d7e989a9d01563bf2f72bf9523ca47be9e46a1ead9eedb0436e5ddeea14bfc1c9cd0ada2c8b2ccf1a3bac312ba8e86e4669cdf938b2971ad91ce0ed53bbb9aabbbeb7b501feaf1e1688fbb7ff890b31f1cb981af069a38e67aeb7a486bd0a41865999f78f4e8f23d1316a3a7b6426e420ab7e81c9e62ee62cb2fd41db559061e1ff7f639e2633baefb26728ef7117598ed412956f91de33fe47ed2a734f718283bb3ba65b51b887fd01ad943f57ef301cd28218c8c347a56c4165b6da362eac990373f09165707c677bb0521911b8baa8885c11dd2bfbb5eb50823b06464cd2a8cf8df3fc513fdbd283341d0cb195c8c98ba2429e1580735680752d4cd39a010a38ea7b72ada5efe09bd21ebffa05bbd5d4f7743e6904a05fef7b65949d40fb11db1814faf9ee837795eea5dca7f047da5c9616a619cd81577a7f98adc958bd75c635e0ad8e7d54e59fc4e4de9b379ff20007a92f1999f7fc7f67f0eff8f723f64261363441261e371e9e5528aa2ae7d162e076b8fd227b74aceb435598a924bb7f3ca982b50a4a87bb98018999e2c48b3456298ce6812f26a9c9a944cece8cc4da4ffbb57896133677706970e9462bbaa4073c544d6c26b12f916a677ab1a82c5205af05eb7083c6c03a65de205b60c8f29d1e98126763e67f3082b82a66d34822149b895c5514da570c8811a9a2b15392a9bf992bd9ba240911eeed201b2a9b798c9c422614f37bbef6e36bcdbcf86a65b64748477ccd025b6154462db448d394e851269c7ccdc5085aebf3226dc36a3f946200c45562b59be1093bd0861e66d9210ba340658491f013ba1075b4209043d40d80c695df103f3aef8262772c706938f44bd0de555e1ef2c299b3e23d8c199f42b5ea0f77d85c7c6addf838a440eb72aeb130e5586bc852b11700623b742372b50a361d4933f20d57abe86c9397151d29b25574363bc1d264ab8520dce0552537219b8d68113dd581f65aee1279e50048721ea77c416c3f4ba45b14e9d22689a6565f03e7e20cb7596c6e0caace7fcd5e1abe8843a555123547039d4d584c8b4d49c2b0bfb8b443bc53000203d57f973070eea7a525f3a77ee0a63a509a48be95c8c1012d4d17a37ed601d33a13bb90bad7b8bd670dc4d79f54395ccf40407ae5a68565e084b98cd3dbe8bc0fdad55ad1443954e78b100437942eddb5ec4c25912f519ea5274539c1a332d205dc94c248b56a9487068087ac45d7bb9380a74b978861303980ab5c403ba9f60de6b8d8751f6cd19c63449757b508bd6cdc7713bad197543d12d92fe992745170833090e7aae870ee33e5217c25c25d1ed48615fce18204c3e730c00d3e5f1dc8b0e62430543c1369335d5631063b7fb4daee8e8015736271f1fb5f198951f5ae128d1b5446719453bbcda7c0216ea74fd521d5a40e8bb1f34da37e2e722141c0088b0b7001971a54718fe44dfdd4c94f8c07ac0f9e5a367895990f1e9c8e8369c19ff06185bd84194d96aa686c39a2f067b9a3f8e3b312edaf19ac836c79ce5aaa636f06dff5b71dc42069d32cc8bba99e82fd31107a7bc851fa3578f47ab4c128eec90efdc982adcc927780dceec7cef0aa6b9bdd5f03c4ccd6cb4c13f5e25c3518727b01d3c35ddaed00dccec3c467dceba5c27a558b20c89ef71dc92deb88103a7c5cd26c11ca01cb560ad9a458f52d4936e69211bc80ad8abe564631ab2d625b8361c6eeca6a348e7fdc6494c5890c6598bf0f3d78a56c10bd83be0ad3d0e180b5b0f392edf11b13a3b9606a80882413625e0201649b59beb4f1f79fb3d03b138c6fa0e7f5cdb9595a8bd98c49259e0211545f5442cf88bcdb726e8e5ef6d5331aff7f035ca65cf1c3cdfa62f96987a37def1c3475a5c6affa58d80de126b1b09feb37cd86d1d11a7b918ce5ee535b9091e82f902e57f544f4d6f48220cb6cedc1c06ef654ce105feaeee7b8b25a800670a55d648626ba08331c1cc92dd0275efc2fe0579c209b9d3297dbb2cba0c7b053c52b0e6d1b39228913e57d143363616591df469b28318c751111c783d27eaaeac01ca8a81ac74d2d2af55792aeb5a13c17af1f97133b8f425c3c1bb0484c6535905e3aa5f8ab43083971dd8a2c105a381d929e7a6c3b0b67dada9ce72659a1ecc966c1d1222da81f88c3d6eee3c2a81c90692456c36024fa53b468d8a45f26136ad0f9c7c9ea3c9a2b5eb1bca90ab2b8ada6fd5a07d8c1a1211bb7478c82397d204ca98d645b08c3d16fd5e71b1e54ceb97e3840110e5c7d7d3256291d74d31586c2ea9ae7200c416f730a68ee0fd837a17b04f2ece71cd4fe5a6fc7242144fda1ee0e096c5f04bbb20059155d19ff4fb701cb22aa7b00fbd301cc2bbd37117b227ef9c7f0bcbf3650cc599a3663319ab9294679c7332b652a2bfdb517f09641ae5d7c8386ad2686aaf2a28efdc3938916d5dac8aae23b2c78df55c865d084b0a66f69e4329bf67ede6320cb72c847097a6b90cd6b68740b8b8d4462153074c81b79ceb15a8248346731984004c13c5388c3a4d3e3765600babe244ee25caa1c18e9a10ceb6ba83189dfda0a667c2fbe43f767dc3a6abac7e39c10a110d8a323d9705f65c506d0f444aa6e29ce5ae02116764e550217f72abd2f51f54e6d78fbb5323a5cd2c583aecb01abcad4a6740ce3d66a04e904537eae20208fa9f63ab9296900751ddb62aeb59c160db5a38ffe1357b7a476e2d6fc7336c9dd33fdf8b4c65abb275d171f3c938d42ed611eb35fe51d16208ff3d01b5fc9e357fadca051fe18251f0fcf02eede19b61d7b52aa73d900919265975ae286f0b94ca8b7bddb79909218e796ead4af39bb4bc71a629ce218ef44c38cfb857f8ccf9d1ad5559f117e3b0890b4f860beb38c171674d151f30225268db2cea23c1881684cf498273ca9e3b78a1797166365c0e301f84a921ee791d3352719461954e2a840a3d0d22ca2924342a13d90b2b7800d1b2fecd2560bfd42fce83ebb59d1ac36864f269bfcb2796012d914d4c224103f280deb22d21a803954a87b0c33cf1ddbb7391196fe7d7997100ef2f1e45f6068309323cdc70a2602054f64b4a9df2464ef765313606a5664772ea01f2b26877820f7699cba721110df5864c5994470a11ea060691fdf9bd2c35701d8606dd129e66df9817253d449663ad732102e291482273d709a3e7c14ccbc89ebee31e598c382b0fa206a61872840194b1c5a38349f06d221b30e49ed81a35de88f1177238b3bad323d3cb2f886cbe2d771dcadda952c3ae1faea7b887479343fc60203f7ff8518329b8ed5b3f7740683cf35133ea8c0ab6a0c21fb928ec7f891cafb63054933feeb0470d4bedc831761e7198039a01de4bf4f9a6df641fc8dc9fe206af1c156da5637339b085f50d3db7b75d15de9416b92822ddc905d67e1306c12ce65690a64077caeb1c69fbc2cceb01cbb8c0b45c73f61828ab4344b2effce9369325f03fb1e9c586a144f079e26584970ba44cd98ce44a806fd4d8555eb7542145ebf1c9bd73ce02d488923c4d9bf0a1ca234aae43f7da8094fd50cf578ffc178df8a18f452666f047f25a9ae1dd6e8b1a1bd6603e4d8460f3bdcf933f5c2b63ac043ddc452f3f6e832937b14b45807da16d5254d7223fd911c6aff54066f197e58d6d6ee2854e95e7ed2b938eeff19846f2c248e46517462ed4c581641921b0c0ac812c60960a1f610132a514726d773437e2099d3b0e4cf311d00d3aba212bdcd9a7e93bce70520653891c19518eb1bd05b26ab0ec476845fe754497cf6e278cb1dcbece48e20b1b76c7dc186d4c1106d111c78d797f0827f44df0897e145e950c9f6348fd31dacf705a5eb52b4cfbd3570fc6d3a1b756d7ace931243f1dc5baa1ae212c725e8a29f47ed33efa212c5ccfaaf6716d6edc9455ae481bf77d1aa327d4452f91e0434bb3e852edad1b49c1dbab3b1826333c94b8201ba41f41ce29cbcacf35b351b8b91f48366059bffc86f9efdf15213e680cdb42cf2b78f112451908d953c3c2fa754f17ce36e0afa7eb3bd076c4ef3155ac718f0163544e335d0393dc11114444ce827963c272bbb7649495b1a4d5a3c4ac1989fc7faf4a3ded24ad075821ff1416270292ca69774334d8ac7fa6579fb14edd14056410de7914ecdb72f7c55240b585a0049b5e20253284a1797aa08762a33786ba72bf9052222c54a3d3679c083193713d1cd8bdd321bebb02bdffa6efa2c9aa8b62c0abb7ca116f3e098d8ac605bcd0bb172502d1779fede1909f097c74247381d4d71c2e771a7744635cbc7925ab84b25a360925323ae4b912428b0ad6e20a7098e891c57a1cbfb2b09e85f1916b7ce0c409c5985cb6b2e3a07bf65efdd70a18fe4018a1f293d9612fc6a1dafe9bcfde2e99fdfb8fb572e33cb9c3cf7b26cce63d96c7db194a8aa6d1299330116fa5233728090ed09a39122b7e12d1a97346b071c3dae893a21a90c2514fe8e94a13897462cf31f23f807a2844f3a17b44be589b8e52173730fe0910be086fd0bdc94fcaa6333fc4bab548d962a15e8484de7d34efc6dd02e828af0f5dfa3a923d60f76eea1989de0d7dd9ba299d0fbfb5872fc3d6d743513e7a25c53dac5234ab879ed492736ec49ba5a19751de60028fb1edc0a16d15a353b17e367f7b0594210b428427538079063bca187035093fd115191c71039be869a12de08202187a8c8380f7ceca6b0af6c36bc493e50eeaab24b6c5ac537e9b82e2a87a89ac87a47702bd36715ba06b083a1d772d3ae3658dcf7acafc58bb2205de14891719e53d13d885f9945e76f920959b7692504f6cf77732caac0ce79ed75a5c3cd14b3005152897214e711314a3101a28c79d82be2f6a3560f959d04b9b5a9f608079fa5e89fdc52343c51bf34549cc010d7338002e9ed4629a3e8b7b257bc89b60b80106ffc7253b4a0ffa25345c8b981e9571f6939ea6b3bc17420677f65305f0aa6e4415f9661bbd998fdfac8a37f2220db974d5fb998de5aea56e8c179e96f81550bd74f1158d4c1a681fde4df0c0e0ff9aa9f5bff226d09463856eddf1226deac4024e880dc450243e8b72afa9ab327da52496131a5b5902fec559e801330b8b58e4c730fbadc56a655e3d25686ba58e611ee555ba15d93a334fe85bdc9ec9906fd6ec37727df23691036337f982860764ceed7a825e02498b0f77352c76655906e1ed6f398ab93f88f3bd9490390db06e6a2047085a11e5fdf8d8b4eedefb0779aa498b7d5fe1be21c0cde28b35b52001594868d5d99019ce54c605a45ad3be814c7cccef63ac6df864995af58698b4d11e17dbe8547d0afa35164d884b2a6a8963caf3d023fcf1e87d68e27c53d67e884dda8c50e6e95fa986fa759116b0492179cc845567ccee61a21d89cb8c5a66825396ae6f1ef5b88e7ca64ebae070123a1ecf60ff50bb3136915330609a4dad7a3fea028285d1856c478132b149ce00a9b3e40c8b3778f58a576d31ddacc4550319401dcabbe1ec9d135d8481647cb337fe1b5d0e64406bd7c6ed0922da0d2d27bc5d497df5af987ecba859f99ba934fa8da85033db1551a616fc4d7084ea3ee53b7f4a812b00125e71de9e6915d890622396f5d4eb96581911fcda8e3ba9ca98de42a1644c7d3d8b8cda8c6303a4e9880ad0195602cda99bff04b55c9c9a71747d90c6f1da0a5eefe5b46e9f7cb0e267305617f22d7240c2557aaf5735e9e451c47735293573a834a8326d6a6e2e76a9f7d23b67b5633601e6f18c1f767438fda0b6d8d9ad05cd7d69c7515384fc6e262ebf5480120b52dcf861eaff462a61b670f22157539c6f0cbd19f5f10ce0ffd0f9115eb629c6d91f10a8f5bd94e4401afd4f04bf0ae86dd21f15e074cf9afa2f6e5080cf43c62fd7be690c10611be5dd00f2a095993a291190c34c87a6af338262371ecb910f2dbdf5f0f763627304a7e4ca64632a9540e0b973da949217cf1dc6e8f54eca8d37a16ee2f3405ddc42c770ee730dfa2e12ed901ef744d1faec9d973f3c1cc0a7bff0e3f79ca23e374dda97aaab8067b767b4582fa6733f18237b2932bc7109d396c959ef98bff1e1b4c110ae4e18af6eee65b7cbf190cf66fe91792913ac71c93a7a87ccf37a35039ec5b42b6e8b4c4e6387d1f1a01c6786b671e43d45881e3a8f80ba3f74c9ec0e0e8803501a614c45ea43db911fa36599b184fe29ae08f875cac502f0d5126578a69417a23695030d8697c48cc94247c916bdc3ba295d99a2a91dc880e45ed78b5cb0ec721284d0351294ea620883efd65644a5a42678c7254ee70097c348b2ca7301a77543d35f729ebf9988daa59390ae0113e0a9ac1ae7b285c43fcb14a14821944801db8ce4534406fe7ca8a0599adee803a524d335e928558ee1643c6d0860df5b04b45255afc2f1bc48111da9513adaee2ce31cbe7ecea1aedc64603775dbe1a59e8bf2d277b7a9531ad897bed8248a3c4ad76bfb41abeb366fdaeb10985c45dad4b9c2a348ff959216962fa3a60415c99071d93e7685a953cd889492d637bf869d24d60057306432cef31b73cb85db10263a733e7395094d7074c6061afd16d11904c1034c8a151ca8f5717eb61e18ccf8bf5426536c03db90baffa178a46229df3b394c16ca56ee538c1a8914bec540a2c8f7308efc0e2449a9961d162405217b3be83e6e3fb3811ec081ba749ed0a1fee016051dcfa116e1f0983eda21322262eed4db260278c5a219c37337e288d3c61d7b1993a859023615e3c28642a5fb4c193ce1561bbf95cea4e3225d48ce77bdbf050d1b9e56a1e12aa4c05a60eb402eaaab428e9723da2a8787c067418066d35f251198229691580743291b6bb9d021d8b70c865c32462f751199077ae631a8875b868b0ab37a41ccc70487c4bb85df27bcd4595919533e66b935e16d68ed8d402226fdbc3890b93483c7f285f2d1ffdcbcee07e4a7a645035aa90904499468bbb1dfef7c86b34bdb6b8ffee342f0123d304d0619768e77ffcacc320f6e313ad594b755664a8d95314649d37205c138c076e774297dcf030208f269c967c9d102dbac2c126048cb3129f78cd2458628edaacfacf658b35db809aadba6e1d5ffc02b5648bf0888284aae003a0999f442c3d1c04782e7a7e0e260cefe6672e5a1a8c1cb7c338378768a3acb545570fb7cc8aeb72b4b7da6bb13992109a265de30b3f24b21f3d851e018152842086f928f766f60e16164829512fac737b5c9554aed7e48268327e24b038a10fdc986e9182cfc0feae5230c6e040b2a20c1ef38e73403004c24ca257e208563bb794d4516e355d44bb7cb3361a4a23316c1d3714d25c0b10945700cabbd7ab7d8de4b943405982b4e66c146c413de5d2a509ce30b9d562f216a5d00b6879932d2bd6aa4812291df1fa27e4abd599f925c595891550e1325af4d71bbeb131c3069b0a7f0e481f7810878ed2b60ae6f7e59fbe70246c63e41224b1185db9c6606a9a50dcceea4fe990d08aa41588c4d593302d5b7fe9d28218847f760b3eab6853b0d91e020e0f3e35a0c05e537605d4f89888283267e3667eb30f5d8649d493d3b730c28b07c7c9d50b6f4cd2ad83fe5e0ed71275b9bad47473d0a06da13ce602143917634c771a641329871368188f60141de99f2edf168d917364ce0982891986c4e15092f442485626b0a7941366567a51e9319330645c99a320281cf63bb3b2e21c037ec496b3b9a033068cb6dbbe44d8a2490f97d0c347bcfa0366540c49c39b25dcb9c49ecd15e998240d4aa70e11988894662e46bfc17459baa25a9c6de5ec3381b129249d90dd674daa31db323e55ae4d182c1fe81c1c6b14fda80fce957a34f60c2e24ac77fda924d120c1e4cb6ea2de2890449a24f101842e141bfeb52058191654bda0859bd4cb4494b972036a9d854289f4162d579ac2e7df9a9f37c46a2cec91aa3eb76cd022e2ea359e4085a55efe87467854e0b0778b1ec31785792d4b62241036acbb723e298ec60921ecf28b5fb644a49eeadc99bbafcb5e2d8ea7eb112f923e06e70688342ce5950c679e9f037c8bf6dc5a8568b766699313d6909aee56fb02b81860c4ba69eaf6a93154ef7cc398d8e18222705d7d761adecd88c2c146e5479bd7a1f06cadb4bd03fa5e963fa28bc6c529a48d155d6772edeae2ef518b06a3b12cab80a18f5ec3cfe3e6089031c48fa0ff365426dffbdcc8883f786f432266ce77b0304d3129c5d56a621d1622fe8ea37377858eb31f5db95297087295ab6db737f5b5b0295e0a2d3fad1753cec47c5579b62b9c35f289840163f624460a2707ed73b0132e6432ba9c874d8f24e52f4e988aea6e82d8fb6f31e05185cb188022b5b9009f848c0bc325961dc03301958a733a6cfec01a1ec8c1f8c76087e1cf5d4b50344c9c0e86ded2b34705652d80560b177ad65a2384b645393efd4093a21823e12b8ebe223a987957790a390c0b2ea8a6a99afef64a7002dcd7ff1114f05c5047074f944f16037de57ce13068a8a2397c9a826703bdca2f3690388b223cb8d523a3d56eb75cd75e5370bfa08a21dba64d41de4e5c0e25bcaa5033d3651ce23c3df07fd120376b428a9b83eb4a4a085c67392ba5e587c0b4f960197cead501c956c611192441b5c6d73f99ad2e5d53719ab2a8bdac12762bc74b656b25efe05777920ad3ddcd9ce83af6b6d1c87db921dde30fe9ad40bc67dbae9760530637a5de5d73305633fe24b99e53202d7017d4d946e08c9989998ecd5455f350f3a503b7ed24a1960d538a9ed19ec6377c8a92b6ca047aead346c304268e34fb35f26db4cc8d3e2e5907f47024602c0115b5e26862a35a385b15b32e30d5607377a9ddd619dda8c9cd892dcba5067c3b377fac96427643a2340df7e19ac1b227c1a00472f08e9799effd15802c03142910903f489870281c0319a68337d215714dc1b3cd8d254195c80786c01132aaa500750e041a0cafb8182ac23f7fc32ba5e21762e2723cf69f178d2f155eb4acea357b0625b22ad4b28dbd5620ce8078b42ff85c99be705cecf057773efb65018078b9f47e87b7fcf286d5783d5778c05b2a640bebfa3b03dab81223f643b572b8b3e4710324c95059440225f531a7128903f11e2e34e4a04c31594f62cf2e859a1e57ca88d333bf53cc0bc7c3b60fa1cd868cfd0cd0d8b06f448256a26eb89a32d3213288c1894705a0c727b7756e735ef3f7e0f6fdf7d95c72f45cfd1fa6481992a15d693c313b10e55604d8564fd0e261d18f5e18834c464b8dc17d1ffcbc438dd26cb73550feff17a425efbadc79a6f53c7932626c79d56d3c79c2637e1c6e777e021a56b79489a3bc04e8b624ea69777606e3b6935c9986933f518696372ec696b7a1fb6466e0904f1ed258f3327853f8db0fc18a3096059c6d36031a3613ba0f68943c48f4e757c15a5c2e98a5c1562c58e6467f8542cdd78ccd2c1730dfce45668b14f5cfd809f342f0eab7558316f653f18fa3e39bddcc86e0d9006cc9064d1a3a66cd9aa2595c0125636dea0df48dde5efb13a31afb4ed9d47df582fd500b0562100e263fa0da353185cb978e30192f917675e4797151b256f1b9205663edb051714f9eb581a7985e2a25097814edfb04b507054900a9634fdaa58c6c94d41ffe85cff5cac9e1c482e9b12eda407e319d50a87ae0340fac9e59c5cb0c8f6659c7b87a99e31961d044d0c1b7ce5300eabebe0a501b29b83a6622cb7b8ef83ad7ad9a5316e79717affef2e13a3061cc7d25ee84eb884858eef89c3860c04c37803530803aeb5efddcc54325aa0f528294d476f5d4c60ad79f32cf7de7d94291eaaacdec530e3b68cc6da27691cca8c0d5506a19f22c1685c173b6f81ff898a2e2e66a3d5e4f421fa0a105f50ebb63dbc87ee3510fe10b46133881c69f5a369fd902308b6bd7a0aaf85c56de60d71bf8d84215b6d63e2a50f56a71e9b22834cce192ba41bbc21e9d05c70d231e92a13ee48304f51567ec2d0997da7875f70b31a7d964e61e5bd4e9b974bbf02220472573106885aab139d6f9ed3ca0842628fab3c0bdce7239ab2f21399bf42b2c4fb83e6a7976e835672c39250fdb4d143df24402fc9a0c74793d82423f30897274d2bab549ecb26edb2151225a342a763ee9f67fb51a93c023f8b2dc55d3a022a593ec349728cf062b216c9592e29e3dec12130b20a52b26fa6262622d994259e58da1bdc78e49946e37d2f24a7dddfe66eead308cdd0e5d200eee89f1370e293257bdb9be5bec99e88404be0ddb4fc0d6b69deb3652f44eba218fc87c9bd263bf9dc7d4c3ef2b1231ccc68936859b8701b7baeb3275dc3c272e8dc51f7f8cf8548fdf90561e8518404cf756ecaa79665ecb7b81b2778a33bbae8cb175d0a8c66afa5bef79fe9dde4a37131d60bbf58ed172aa49702d15cbb97d493b1c1529309e13b9ffcf20d836770cfdeb963e755e1cd0f5e423284ae0c8486dcdfc14c8c295c37c507e9cd97829b6a0d85ca7b1326e710405c88dd0dc3bb45b7429bd94012b1ad462de8c859ad02608503cfa583d6ab8489a4dec9ca7aa2bdbb82e4e6215baf3aeec183e2bad264b83e3595c8dcb5e1b7228b60d7a74b713f402ef6b53e95a44937c30fb2d9ccdddb34aa57afa7e932780d8780be99c1c3e3b984b151ed9b9cf44b7be03421e7981d4eae6c4b7a0ca649307558886c9672dbbd7e1358de82e5f17749be762cc0e0896ba05d9b066c6d341dca03be60743330754f108d07a6c0b7f32d30d65550472bb1269da16840f785a5e453c2d1c3eedff5b0c9ca7e0acc4ef5d120b9285c3b3f5cdab2b0b2b04a881610ea028de355e26c5d81376e86ca03f8fd28cfb6f616bd530d9134b11feeb12824dc41fd0ffec8bd0c4f9243ce15119e32e7e4c81fdc4e1e8932344b8859e6b2679a1d9299f178801f1b79b82d4e427d44357c02a87921f1f3598317efe02e15c5d4bdeb0c8522913e2e66ddbbd85847f0978c945f762a14163d286043f0a7676e28091c56b744aac8422e7d4db55706e76623f0f64f79f8edf8f49f5d0ce3f673f40520af34e6dd3fa1e9d184dbf966611893d6f2aeede6c3b80e413976502786384ee1711c871d05eb212ba244881fc4774cc0045a279d728bd670f276c8715d11aec3b5f7af5400131195203ea912d8623f7486f5c5bd702fa0127f7c27f65cfa84917342718888ba52c37fd6f9a163306d0bef82b3850531406551b06d1e82a4b9762a67fb415c85d9096ce75bf65fae2843e323d54e86199b3e22f666e8d5318aebbe2bedd4b536c357b168b323879b8520e46bdda9d8e6327b5d18c049b71872289435d886d257a781b22bc285c4a753943a23adcf3bc45d8022e52438bcd6cf055fe05817cceb94ca0016589431ec4c77c964991ef63fe7289d6459a4379f9c74814912413b2eef228872d9aabaa55812b9b1438fa67bff53048f708070b399d33759328bdffd9989760de84362cf435d0e81c543b43b22c1502fd10eea28d8b94cd011c3571f191fcac2156531be8a95622488125fd3b8234f312634ce47d409b9eb58a06b9b27552dcf9b007a6bef34824f7955f6ff9f55fb7cf8427971374ad872363e4af63c68dfd29946809a7f2a97eb67d8962256276b233e1ce001f4c710cc5763604c5543ebd24e076415b9bebdfe1aa28be430dcbe997030d3e217701c0418bdc5c2cb9ec53ed9e2079d0b9668b88650bfa3e7fd1b731fdee3cc64f35b801b090a5ae66ff48d351cfda5c6d1a647f08d3cfa818cd4b5a642efb2725f6b9261da78be91e7db3df7955640573979de65750786e3faa9ab234110afdbc38547c2aea5d4261d58c4af9bad0e54f3f98d10d9ec53845c43eb6242399eec5720290d811ba3fb62d60aecea7068bf7bf3c0226ed8134b93c5108adc426813465d8af00998ab2060a0e479a46d60d3d09c9188306946d49d97df87233ca85786f5812a3850411d86c052190391220f6f849f65e11e266d84ad371550eacdf49462d8497a42c57a2bde62e64708865d2d5aabd83c4abfbf062db17df56ff1b3bb006585f8c7837e776de48927a27dee5f3d6fa588bb412036c4d888db4d89b3a1530f383f81fbabd6c0e3c221d0777fdeb23f0dd489944af6af88cfc0099962cd3215e8df8478ada9bc620da071add678d7f970cd072bc0d0188a85b5dcf5d8cfa12f18ec93e2ad5e576369d2e410ffd1dfc6bb4beb94f54995b6b41ae7287d91e89aa34b1a38eec430e23e20b4bdb2ca2a9649078593134207774114e9335d71852ac85a24edf29ef74e60352ae7710ad7af06a6806ab3d3c1d28ac65ae51e9f6c8b365ac4ed683c1cca5fb47f44260751a62ec251103518ef5ebf4d0efb0d95d89483c76e613d1923cf2183a5df90c4c361df67a3837e1d83d3fa58accfb152204cb065cbf2f6a142bd63a7a509d11c1403b0b8cd87af045aaec253964293fdb9bd4c44f6f7ad8051efd2ae934527da3120320b7159954445900cafc86f30a11424a7a89b356b0f0e68ec10c0c9f2e66111ecadb707147b5db510a24a3c5f5de4157d39a2bfdf752a07f5b369e5235f87d982cf67c2df018953c99397e470862ea0aef3b0f6f82ac4c71dcedee48a281eb97271c9c195f3dd2cfd025cd38c01f709b8154a6ca53ca41575cbf317dd14b898d99b19921b779dd73d50b9746839dae55253f343b29eaf308fa596131a09f86b01a9999e5f6da7f81f89757b6b1dac68a00bc258b4233a2ecd30f1e8552d41bca34fa39992f06892edcc6211881a410346f1d5e8688a7d68fe35cddaf30789d41094786be5e79c7f99e70daf40f14dcf424457877f0b23c1f5ea1deae90df8daf4cff3edd67db78b7576c8898d3768c1d700bdde68e9b401cd675a9cd72620a99d6d781285b538a0b73f2fe8ee324773e9ba77854c50607757f9c6a144bce7184d78347a7bbebd23e6de2bd63d211f3376ea134e82ee1dfdc7eaecf63ec17b207c737cf4f61c0736147c13184292233a92d61c20f67fa15118b17b5c589fb1590c062e4db01c2e91b9ec3674bd6db0af0d73d91862cff222cb289072bf856a4559a826bd171abadefd3fed26058fc95e93f940ad8a89e510081e6db7caf1da87c6507a17c4aa39f9d3086af036df22a9fd4d5dfeb66ae1e81e5b6bb0f6646243f16e150884e61dbf79b0b27f26a46c811615dbc2a09d687ae1d18d1d6dccd880419fa216af46c8e31899f4082b1161e21820af7b0b93db8884a38da7fc8aabb7cb12e3596964442af8b334d9f19ce8124c946a0f252007116d6f0e615de4defeed4dee047b24d45e99c08d5362b2f10dcc6a4cbdbff953e2af0fd9ad6d1ba7505cbb64e2f8aac7002a56d0cd620e5fc5800514c27dd5cdbf99ce6a514c95b2748f44a99341dc5f31c46003df75218c1fb347abf394f277fbaec4286b8a163fc932ac61a44d3c91f6491fd4fb954f9c8da35827a6461c374c1c6cac488c6a61a16f590322f0fdebc018d18619467105f5937a6ccf0fe37b40e5127977883202de5eac4b90eaec06c0bf910731673da95355c71bbbd38f7ced1687680d2995c3e608a8da32b550bfc6903b74480a4a8c3acc9ccd09d315a1b40a9b8aaf1df17c49ea324a5850857ea493f1fe3cfb0462275b7cf027716439893b428fecdcd2a1771e8f322730b767f924ee5063831efba42c102d219451867d5280897d10f4d7e5cf918e6eef179e30cc91af87e99bd3a4b9fbd6c4c982979443041bcaafb985e2417d08ecd9890c22aa033e4f6075f753bac140a7d07cc8f09d07f74a397ec69117282e6daf805e46e9e757f18daaf86364443c254f61f625eb8aa49702392c1c07092d48ae58c82b907a78ca2a11e621c79e9d055e443285a74374a982b4cbfb28e764e9fdcde70b6c224ada8b08badee8652db19f80b7eb174d7e3f9fd143c87ae1b1b057c857b3bde9a0d3bf4185769bbe15a9978e981fd355ddc71831a55e3f963ba0b4ca03a036431e1645bc5e536ebaf35d6ed457e3aa0941221b44a7f8ca194aef79163dc1d37f4248e9d9e9830867ce7210312c4c27777e3ec8eddf630ad7ce89a5e42f5e149c9376dac595a505c78698519d0971fe566e94091fa36ac273e2be947f44504a3d6cbfad78c35c09b45bc8dc6479f22e71c43f9d5741136a3b394685762e84abbc952ae28bd80518d9f2c636dd5ea11b621d1c9c44dc7f7655127d884a814eb468bb70bf9cf5fc0d8f3c2cf75c09ed259dc4358bcba7094e932d6580f965134ee5d9e475e078a5054f4c50a1c96983f07f4fb6eb47b2d15a4eed6cf79b108f29b270e51a3438c0a5c637fb38ddf4164c99ba7c15bd91121b0b1e8a406b33c9e4fe14e1ad2ca2626ab09c37bd05433d17f0c8d4765749baa231e043bd40fc97c1b997d4f189eff9f31188da3467c528a60df8171441d682f17d548265b9dd7a2f61741848352f4a60edfc0feb5bc458fa85649610f81bff3d3a8020e2120e1fed22b7104a75c4e38d5fe12c20f8ad8c26a1d6c9f4eeab8f03289fd7911788070d6a643b46d6fc98140c009046248def1ae392d6882c32622d527310b6d5b43ad3b45ce0a0a77c2214dec06bbd84f5e9f3a10d0416d6dfbb28b80e8ae44a8acc8f3db2e09fdc03712d866d61484d44efc87e93a8d5effc70070856a643108150fcd15509faa167992d841e7dd0d07299b2c36acc2ec1bc3eb8faf6ea854bd9221b5b7d4c62f9d7e904ccaa3e26a03c306f2e198693ec394a629d36a7a0f3717887eb86bae788404002c0a81784b6340823ff97cd1ae339deae8ddde9e9fe78a9894110cb8ba619266a8cfd5b6f3949bf8ce81c974f4d7e5c01fd247d5709cc8b563aace39d600b4fe203aa58e52c2f74268bd3001b7dd9a12f769a9f86b4a18a122dae88d7a35c1a5694870d4bcebeeaf8282d78e169037ec4f42f4464529a2da53edfe37710ddff26c56a83e59ea524866f1093b7a578fb1359ba61433877dee925974a0fa56963a5b10934f2cea62a06193772056c88cc0f0bf4061c8c21b40eddb754894d8302568c2e412c20223fe6388a8cb92ace8e206404b4d5169f15f1d16a6db6f772c69e88cae2e7448e884151985a474b4e0da23db376669b7b178805d563455329c84b822b48f01d8d1c2cf1ef02187ff2277ad12d056f670e9f98238305551610fda2f933405c1ca3b27cf13657579a33e1ce01e8097d523e9e80d44b7d0b4ea247673acbb62c8bc2198d6cb3b19e0f46970e84a1320bf9c4f89073eddaf8859f62f3fe931b0992bb838dc2783498a7bf6a2dfaec7db0874683d4277cca463ce0e4668b2c9abdb5562c032bba64f873ed3f9824394e8558af7844f68072b672c470023d19391405d418479d8968f22e6dd6682a92c1dca072ef2b868a41d00d0130ac094fa471591ebcf14c8f9ca1c99b0183a08822161356b9f5965fde368893404e121e8ff9426ab753a44d84df681ed1901042e3edc9ffe0323ea56fca60a4c3e64122443bc164808e1c163b64d8a7d0b49fb1e68807919a4beeaac47d1875a9ae0884d7167a6f2cccf7aad5afcc894fa19b4d584a64186b8594c6b43348dc47f1be50a86c1c325435c03d49406710f339df05381ecac75a037f29d520569e42bd556bee1090c59b7c00d49e4361c8a0f39e79aa291ee85ded9440ae755472ebf923c5d408de2fa1ef15513e637a7c32695073134df33e308673bbf7aaa91644fbd37a57a365499e8c06906a93c438556be3a63942833b1bf9f18ea06ef7f1cd7f50f19b08054d3f308dee0c4b37e713ffd7c39232a34f7d98670abeac402058612ad68274dc34cb206592d3bea86efd18adec01c976c6ae74247a960bff9b48fdefc782a949a1cf49fd7361f49b6b5103afbfe310d2bcae5c6cb8ff610577c34679f8a95b40c575b83188805724a971e8448fcba3381ae080ba19b11d50823d13aa9487467e8bd7c772ecf1a7c225a80b9873bb3cd1e10a6e78e8b10ea2ff06277acc50ce26be12ec0b4005613922690b7f15ab3a45a71166aebd75aa38380f6b2c86018667beddc54837d96e463c1357e70234fea6ae3c2a8f68ab6f4690f70449b10a3305f60c1cf73f811103540baa1405c0fd80466d9bf440c3af1c2fc09f54a11f14f7afbbbf37610f4dce1556466b56c872e8280de611327e770bf004df05bd39f724de008cf161c054cc83f94ee35d478925137f1102bab51dd831325b882544ddaceb1e56af491935b30d3d3bed96c0c6b0ce3a7a73cd467685f8c0e31c36be6c7d37b11401bbe8665453f16ea4cf890293f469d6ec22de61679872ad589558a1e1f5845716e1682d34cf45f31ec04c462b9bfa31955e6bce5c61279d2b4c9ed60b33b31561d9dc3fb1c301ae5927d0a3eb44b31d96d37f15c263ee6d8aded4e77c38dcc855cc21d9d53d705d43233ba683588180291e0ac3ddcb872b5bf9215505475a0074fc6941833d2b0f654bc24608e000f4a033cc8d60a4923c4ec1dedbc1540e43f0a2ae1635ad0e213aa204e6315b6e91ba910ce01da19ff8c5563b1c6a670eef20704fced73bb5a1d5e56a156268c3b31f6045611f60827f31e42661ded5179ac6c99c623dcddfe01b94e22325217695b1168738442b8d9b4d9b86e9105c17e1d6ee15871186f115273f621e41fb0d17cc3f6a848a59f5fad19ac80010ea605f9182b65e418360398d52fc0920e132b2e0df17230f1134447ea60c03b8a15f118ff31f4846a3bd7b23ed127000321a1b280d5a31a31cae6f18731b8b17d61a3dc39b081afba305b85a18228e9673f1fed86d66b29edc3a340e4cab940baed2964a3a61d0a85506dd1977d0eee3234409d731cd751fdf0024c19196dc093205e76f1f1f13a0604d721ae0954d6e7bdd331822106f86ad0b5ec954c486ba0cd4e69c047af9469835420762774e6cf847079c49caf6542df755c6ae512526326f721a1e8861e273dc610094073cdffb05768d83f1b0c1995bb9c9ea41fdaae2005da690e4c045ad6faf9783ca1886989329a76a746a23c08be8a7e65a0d81c1f30578c32b3ff742c5ce988ca399565ac00a7774d9e424fe717edb003d5657a12e02d3dcc8c32d1f924377ae807c7262249231a7ee2e456c4e5d0e1f5288b82077f8829ad47e3e699770277a23a447a2d74d11f60db728d85bac0310720f6b7fe93196dbce832ade7c25977553142abe245f850547c05257adaf4ef49b53145f4379b66530c99f807762c085efac37ed5ddb2c637d18af166ff3b93f3969a45fb71b4ef8503e8f79a8b567e0106431db547fa38fd2bc1fab3c2780affa8ee16b24bed7242aba225e927faaddc8ec66d47186269183c43a5d17622fa5c39b35ec9bda73ad8539c5ea1f27653eb7b3f5c277f045cfaf0694bdaed3743bf373504f4eb0aaf2c5175da3511c354eecac8e3a16aa53236ececca257226bee229fa535b658095dbaa69e00c9fc04107fe744b84227847b58eb010509ce565134357ada951951b28cd7c2133a5ca03dfc400e88384d7e2a5622908ec118b0f096e588d53885710eec511b8297e81f912d33aaeb33130615cd918b4d8bac257877da4bfb02d636fb8a90572932c116d6065be69605f362305e84eb2c85c8df9f4e5a48dbc764c47bd42579f4b07241bec90f6d3e401789b0eca951eeb9c2ac541ec7e7b0045e797d3fc9d872bacd242097231a35ea93a7898ed4f3bf9c418928e7797f884ba0683c9de925b7f5eebf5e7e5d43366327ac5ca472fbd68ec547e31119fec9734fecb29eb1395b5d0d763412fb43a3a2df2cffe824fe7e4c5d23a28e518a380584b9591721adc0902b5ac80bf3fd835967d0d018cf545a8b35ef5ee5ad059daf546bd37adfdaedd16a19fd81d7cc0e8938b82ac7eea53d459918e83ad875d55e6c9dcd377a213c747e697212b97621e235b35621e8589f33d59d51e86da774210698f9b34770cc20a08e4876d7c045bab0561790f8a0793fc79cf894e1e74147861aa48e7f3fd8278b881a3fd0479bf5b9d0d5ea1a9a7a97c6ee7bd7c9d21b83a9be9b88ed1b43299f08c066092c101c2c95c4a8a7e981bdc1194ecafc82485532ae05a1742f065878c6bf132eaab82518e10e4f6e97d75fcbbfec33e3d7c26d9929b37c69f9e3db5d3eb73e0e787a0f74c100e4b225097055251f45a665f9c4810b1d4f1f0ba80ac510c6ff1bf87fde8e7c611c9aa17b8c959293b4e1da486fbc352844bb17a4e7a00cd1e306247aa0ed137ac65c0867a1a4f4286ddd95ad5e51a4f83d588769fc9ca31a3e308524d5a45e451cabc0e2b8f57dc93cb90f9dc3faca5875b0eea05cba40902265c35d0852ba355b545b08a3ef9fc43bbbd38ee3a06a2d170120017f7500b1bcc30ed5ec691bae963bbde51d229250a048b7a774ebf7e0c627cbee339a244033095ac5da2b96d841597ed852451f7f297f2472a579caf61175f073007aa3ea0d03ee3ab28e2b206526e01b54e52cc1ff0316754f130c992a09b6455ca6fc08064ac9dc6426dab4a5964bcc55162e19e793c2324006145472c72c73f597a6961bdcf2514e06d82b3e47a24f2500e48355eca7d03d58790d2ef134bb0eb5b578cc993f18d344aa70ec237e61ab2bdf5c4527524188e8a79974590cb4f5760fbd2cd8e5a292596faf3b154864fe48dadc8f6716c2bcd138bc07c470cd7c50cc9ef354e95eaac8af646a1045a44afb618c20f4275e548c73599d6694bf4a01e0e68324dfc911db303a63332dc02941b91aa6dc3c4128b70078a6ea8ec62a5e8420ba245197335f0e0522602fdb332f93447b4543a62da0ffb9ae3217b8d684c90c4c10f8aff27c989d70439578e6c13d4a7dd667bb94ad10d32d27fe618e2d6d2fe7d2182120421a0c918725d86f44c716cd9b564a5d2da6330ae6546bedd67e194c6d19119f68c17d0d1384092c5b5ac6007f7a97f037c012703f512e90a7c038848f7284ccaf1c2517224082740468807b58a3ae401c3e31183dac8389d918454b5d9290aa27844e8c5d5e57f21bcb7a2729f3529fe54d40f260f7aec4736d55376fb28f1b4193d7e1d6570be89eececfb88b502a8b80f033f1d8a88a4f4cce5a78ddf38350083bdf236ccf49c4006ee1dbece2fe524645b0d24a2ab6cd209798676395c590b3810b634b8f3ef2dbd4d4e222b0d66c3a3b33cabe3f2f9cd74e6158f7171d48f5e53d975c181e51e1dbffc9e953002c4aff8555ef9c671e29232e3f77b8b8b2e89020eeab0fe7afebbad31a90c7493e3f2e94307e69f52d09cc671be6c3b012d16b2aa3b01d3c1cdc28663a4e648be2651a408a084e405484a7296fdfbca6fd5900ff736dfee8ab5ff5209877f75749670276072b7160338d7365b22e2d99e5dfcaec6be0cff234c266a51eba5bc7c1538fa750828392392b21101e80a4f4746b0d4d21b7608ed0e5fc9cc410644147f2c618128c1941ccb3f584b0f5b24445ec442e4c3e182dba168d03c9e035e48320211959d240ec428fd42ed9e2bec52a69a942d11132bed82a32e148ce88b89214a57f5c205cce50e6d13f95b4739dbb294a72eb068ecf866dbc4ffaebb575126c6876720016fbc903c5c5be1ab1f393c8427ca7468e4ca903a7e27715e5f9b5e6580f8f51c4facfd70aa2c5e15c04d93426f8817d22ccc16f6a3782fd7f5e2447a1116a59edb58ebddc2cfe87dd3abaae9a78ffb01498ff0dda9ce95d9795dacfdaf0d44055b66e17703b09da4488633bd53ad8396252c2fd7024176a1761765975ef0ad9f84891ed5fd9a52d730f36aa56e4d42480c655261b69fca1ff302af96506ebb88565dd8118cb01a1a022510989059ad8c5416cd89636881f5dda24a4105fec8af11765eccf766689ade08e147d9f3707bbb7dcd7e96aaf3eea5a2f7fb3ef1bed607c6d441ebc2c1274e12c30ee73a5d6c05ea3da2565ec620ee78a1cf7d3b3622796748e8a77bed438a737c87fa08b917ed025bc56e14ed8e64cb9389242904e4de3a5e5dc8eac4fdea322afea025c0f24aec7ad62beacbc17e205250d03635047c144106c0550c0a92a5a191d4d82b56a9956ac27080e1caae9668ca2a68a487e524c3e7c9e21aaec0bb7814e4bda67c9cfea7a35570901358f0bac7baf1464fc5b475c01248b67fb6e8ec36596639f77f9140cada52e529f9dfc6b00fb568604176e289b78fb553306a1401303942643febdcbe33eb7c085c38b909133b5a5f926c3c4b071eed97a7493873f661dcaa0b380b790f621bd71e5a743712552420a58b95932837d927af18e211ca37610e2c446ea457616ef67faba32f86e5c57bb4f19c4f99b5a2db8c50d46e028e04ecaa422bf16ac465b29547cca9abaee05d33db2b9b7328691f6a4396dd9d3cea412b14563074dc30deebcdc6cb37bd64156cd3c485c54f635189697d71c75bd0e10af780651816f555bfd1c38493a504956991284a7ad1aa109fbdf2c63cd6d2ec2685727af9a3b26e7d4f9b348f8acd0c7f315e75f8a6ae296bf7a59851501b64410690bd6f9d2125d2a228c41e2a6af88dff2f636acbfb4790b305d5535fed8ba39901764aee8e439868a3bb13e9f0ccff25fd34c1caf403fa661951e2cf0596536710a219f654914c8c7a38fca2ea1c394a80bbc0c66e6ca4239bc53c818bd243ee27c8b8bbd0857d5f79168aa4e8068d26054f9e65c9518c460474dbb4531c5440d7e7191fba5d1d30bfd4d475002c93f0762ab77fd90879d0eba3a6f5440151bfb66f2e08fa518a86f8cacd009e0a9b99d101dfbfc2f972775088578ef632278e3f30910729a48920ac5fe678b862b10a3940cbd788e162abf118081d1a0853976b73d362f86afc30b249491a9b945a3939da55728210e797073b14522a87dad6b4dcdc6e17abb58658209e03d8977b404bce86c3dc67df43ee5841ea454d1209397d4d7efcf4556d0759539f5badb7a0e869aa9b929d36a1ee8b194a456db9d77c205609689f9afaf0500082687bbec3e20c0ff1e1484523dcefa1b1d659d08d2d571c5738c51b80aed43190ba23320bf76b1c4254488ba8c89ea8807e1b805b9ec365a514afd549734483c031cee2ec35452a8eaa5dd7c2bc9709d40aedc9818f7334a46be6c4ae4dce84177bb295afd475a56bff036382ff1daf10442ba1744e6d40ef9a62b280e8a1fdd08c0afabe8b3f43d38d0143c82ced875854649935d88083525f9c0821eb009081cbff042d9ca60733a9c7f27df38c249fa3bb736b1de64c6cf43fd28267334848a4ddb91c0a04ed4f751c4e31686894240b626435767c25110888803d38828f5395c3987c79257985addb0675ca0eea09c5b2b6486059c5612cccd7c4e5883c13aa341468475116b79cf01b0a2581086f2009cca998c0387292c9202beb1b8b0209376f6b5496cfb3239728961915b1a8e56214f10ad4a18cfb42d314c2c3cd3bffb1c22dcc6ca30c8eb29edc7070fc2fa6832ac16985ed4d28296076f8bc1070bf71ae9f5507d0a83d665f01526ad513bc71a13a08b705d48c92a93783388579f57f377fb5972e66c2abc2c86c2dc927c37383e6545078804bb0929760eed38ffb6c684b2cf123c27e9be1413ef6319da8a1a3d9f0fe6c613652cca9bc8c164fc40aaf025114d741f7e8242ef204448f887c2d7cdf5774af9292280bf216ff1201034bb0ab9825999d60c66ea8072392910f3607be9d6224b7b5280e1b34326ac66c46640547843324c39c750025139a32fe35733f3a12072023199c0f7d578be8f213707f68a731166293ea9786795dbdd3d1b23378469486d6513210e54d254cc543905bd1e68914ab068a08510feeb25222625db6e9a04810ffba62a1a31c8ac77f97e9049904fe97885efacc6816d2626ea8e4e29622839c4398ff68c56388444c8cdecb5a51c1057606dfd8f3e1633c91e0c3ec13e1649c930de066f50ca473bc00f1bde0e33b38228f56e5fbaa2e5c3bb5eb9c33de36e5b29625e1f2bd5a5090c5c9bf6317ca2c48268410d182bd5d9b448675bec40b7a95f9ea9f166c1fbd389bead8dc24f36ee3de36338d7b7a74a5feb9a0c5918ca26f05f3f4253a5f62f28b6c127b3ac8f6865d6c1ae4336098e2806443502902fdd9ec7348edd51bb640ad70df540118f8c00b679077ed429b8ee8c1c08aafad66f718dad1283f94c4347ca4993b86dab43933195c91865ef3c4c95e05da7a25fe0ce6a57de594f03bd7150364f9793d6df1e555dff09ffd874e2fefe801397f156a479519ea3161f16308a9d78f27b5b40261b81842de5bd56823614e6a9b3460478b23b5dbe2faaad41b9811ed23d3e418d29d58d689cc802aacb19ac293a1b36762db8cb589743973b6b3ef8c0913045dd571aa91d568854f4346510ab30514e51d8880862a6626335ceebb2e893eb096dc6f738b4c376e26448a243f037c726a4752ebe2cdeee09e2db5b32ce2474c23cc9afc9cda2d789115cdca3f378263ada60007f47cceebb74b703ec12c059d737b725bc04622d6a649c867df90dc6ece4cc4db25b6a5e00029fd011d9d8574fb282be4091d057288951e39ef58802c5b74966d9865614908973804091d3f76519ffc8bb80d9241519ded438cb86aa0a1e4adaa06b143fd38bd37ac1b1df057e7353f01ba77afb934f05bf5a9a91c27a1b4cae26007375f0980baed414570f1b179dd8239ec98eb40e9608ee7b98054915966abda4233c930bc6c7cfb1fbf4b9a08b28a283285c611b4c965884b0f4c304ea45deb62df89231f8081fd3f2a01339691777e7c65a8098317e9724d60a9cc987e6cb69d31be3163a07137838713ee9025aec58e5b4a7b2841628ef501006cae75d3acd65404ed70c9719ee60ea8e9a15fdbbeacdc4a960177e0a5a80c34581f27bb2b196d104ec6aa8925e593e94df835eeca7763f73a225f3df7cf86f7ffff41ce0c1d3b1e5814efcada0d0f5845c0e03a1fc207dbf050c32650711d0f0f9101836179314fcf2303c3f86a1b6cb92cfca1eab4b6a6245d8be05de29d72318fee19c43326e76051710a93c115cdba9482261a5e9883180aa13b78fe05a583ee7a8f0d1f249cc1a145f394a35a188d8df914b38e0967e5878ed0411f9cd6f9c7320eac1700b4af7cf0f948515a57233336c2dac7f1a458655d4261a70d170912be9eff2999a74316c3d951da5412f5be312b097aaa48da4f53f0aaaa5410cc1f25ba3063a65139f457130d97d03c7ccf31fd9bd652d32d9ba5a9e16f58b2256d43e4ed3a503add74de61a4e761292f8ee79ae40f6196959df35371b764648cf95e18be8f22c9f1760568ca740c0648bc2f30e160a6d6ec0afa2be90fb798fca39bf7a14815aaa4037883b53281af29fea138c8b352d9ecc05b33d7828847995e3f108d6bd3f7316053859c9e552b266b02b07c886f33e59d909923642e64d93461bee790f53fe25bad3a35a19f2dd305c318538223e01ea1b9176c5f5bd6372f3ee5cd292286cdad0611478dcd85ab90a37e916ce893a6183ab501752da14f74105b50bb4ee7341127f09c0171fddeaef9b9b0243f1edd2614572fd49f1af22c016a40d0adef82b7f5c1052c80d3eb63c9b3af6ea53677a329305ea44a4a4dcd603ede023112ee3330ffc96e7af67caaf7ebacb917d97f33239d01f33bec2c7f008c19806706fcd98fde1b4844c992ba008c991d7d89db7795d3d9900f7528b848778e2899948bb8696e591349b8b212ddc0f717f144072e6f00b768d9c440f0eaa850962ba833352d2901748f3ab3554922152ca85a94ad83a136a5b509a9609c35a0e245ff082bb004fb5f16df88aba6b6bde7901b44310b19545cea504bb32491520f79391c4500b595285c2a6477f8fc63bbfb7e8c17008143bc5936085bd8f877b51a05303351b90190a9e39e04c114f22b009e5b8660111c1b1cc86665f66f8e1229f16051b8e90c07368c330801a1a7ad23e1624c5110b5de737f1e1ed79c5b0ef05bc04672d705cc531345e3ed3b8f6603f9c7dd927fb7a3b13407d048a551c97ce310259f07da14088337fc7b730f7b2074cb0d7157d83031865bdd1638c1b2eb6b084fd18dabe51aa8c02a16da5f15975458ee5affb5bd0fb066971c0a2ce83af792ceaeabada3796fdca8f39c29d353e8df7acf8061ca8426d57ca790fe3b5d0c72d8901b137bb9313b95630733d63673a5b68eb2e7d9eb01511db1156ac12bee4300ff7eeb388c3e9f21c5c057d06a100a69d54a93d7660a75efa3633b5aa8c761e5cc713016e88ccbab1319109513c3495f17efa624588bb1bea841f0bda844cb1216bf6325a82b0a6c5d12447b06d32b8346591f9da077ce5c2e0dd75151f8ac3bebf0219ff55ecfa032749313f173e8dc0a02d02389d457beb88e0fd208b60b72e2810062286b23893ca9ebff8baee69ca3477596e8a019fd9324963532d874c71944156dc03b259dbacf16787ca267f0c443eb17192068e62e61e188d864bda810389dc93128082d1c13a2f34470959c38324936b22150d2e926444e8f96cee8c7c376db1846bad348aad1d25c9f20c7475c96d51c253e1dfaac215d5008ae8fc18ab5d04e2481044ac8063d814a0f707d22e858014a2ba0da43f65c0009328e97f51c6fa20b4b199bf2608c98428c9384691a8701fe45aeeb87cbd8755febea5bcd50f00a9f0cd6144ccb18be96d975f413e0681963d35f94f955b59cf83a8f415cea598a519f8f44e6c0933ab1b4e82ace8af161b46a0a682a2e41bf01e7a5c05798813d35da87270ea0e87b430ab093f024208657973a002b461a033c59ad7c8963963ea97d824db84103c045add1e307cc5745ae5aa96de1a502bab11a0a1dc0493ce7c668543903c69e7b923b443ed6f3013cc445a40aa46d427592b73e797e24073b727ca5f28d1a4086edc4ec564f921ae061fbf6f9b28c38202fdefb211d5bfaa3bdab4ab0bb2d44ca904334efe324cad7e0cc40707f365875c67bc918a7b73d4c30ae115758fbcafe5c6aa3866deed8aa950f12de7483543d86e720c670297015b2db0e8abf2cd5859695ce3471b8ac30115238f71d1638e301a05d31126b02f8af82e476b51892ac8578d0d419dfa8d6349a2c3f998ececd5baf0b9ab9fb184a8614c2ac9e05daf2cbc653201c12a7030e1a601e818305083143cec8b8c4738770e61ae3450b939a7151681cdb8d6c29726c297748c86e3bc96e62a3fe4267c8dc7fd001f481ff3b1bbaec193ad89756b529d549afb8a0f595542e469d02cc0b7d0c890c14a39e69072a9cbc820c38ff8a2cae88f00a22dd0d03f37d92ef7bbe4f62a9c574e0840e5e72f04677c3cff27a1886bfef4979d8f36ffbf1e3c70f8873d04577a6dcabe420cbc1c70a335821c56522eec15e9b9e3d6b0512dd0d3392153fac50e98e2117fb3d32470a1352a014084839401568a8420c55a8a08a9b2a5a1a62fa377ff75714c6900c6827622e3e82a15f515ce375598aea7004790c99403bd12f171f455495586c455366a34c8c2193037119d04ef411647d153bba1b6e1b4d82832eba61275f73ecc35eba4a718f3129f54c4c3888017c538948112613bc4f33e9997a3625abc5f2791c7ef97e676fe74264c95d5b43a4088c85288288c9e4f3a18ffc481c7e8f5d612999e5d4b0b40179f7dfc3798ee35c980877e8d5522de2ea19f510c81f6fb2c661b4d8a7774fcfc91a1d666c37cfe25c23cbb318125dd7091435fc37b39f3fcbac7398baaad2a7976ed8286b2aba61b423bdb47e56a96169735d2790bb94390e33a69b4798d34b9cf573a5f43dff3687166fd24519bf8ace388c1ffd4b797e9387b00fdc490ee4d821fe4ee6a86cf6ec759b0c79a59bccf6e470e666dbbcac93af5dcf491dec3bd3dfd8139eff3a34f6c459996a75b64dcaece0008d93d8adce4f8b5ddd3b5001032560500a81b284814a7713699529c6903fbb7558e2ba5ee0862956defceb953acb6e995f546571aec7522b3d965a0773c2686773aebfe291594e7c71ae9e95c99e07dfe73c5c2d26b39cb15945d9fb5150d556ec3bdccadc759d46d552ec02249837ededfc73acaa145fd8021ef4a4b2ab4a7e7692857b30bba13c283f51d8af5870b52c19668404847c10f94166ca056b918010226f84045c82048980112e2e2f9f089121117822292386b060197b97055f785d1c26c50c62be456bf085f3afd4f07561ee7ed7719fb3dd30aa7add2d036e0d9c17383258a084b3b706b3ecb6915057bb1abed0f33a6eceebc2175e79513f2df6a8fcacaf374f8bcdc75ef550df633b54b6ea50d7f5b37ad9df5f6d16633a339d6fbfc776db26519fbd14bdb95a8c56ba7dfdce3eb61b2a6354fdcea23aee6aacaf93a660aeeb747f6ef6046374c349373a375be4cb34d79fd4e76b58a62cfc0489fb767ad80912fedae90433e8768284c31e6b33e9ab9dc1243b3dd3f749269d9ee904b14f60a4fbeb75c16034cbdc793dd6e25cd7e9c56aac968dd9368999000a13bc348c628b2846d0dd495a258a23f0be8fe0873dd1b64916145c407103289a74376c696911b5b83890b86d128bcec4473004f2cff4b262b696274ac7ff041c4fa4f1c4149e00e30924a83cf1c4134e3c21a4bb595ebc47cc8c7fddf111c453fe9def23187201edf808e6c57b409409b57ddfc3fa1a8aacaf11e433d7d7b247c21265a7879a5f3d949d1eb6d3c3f0fb1eb7d3c3d14ecfd40449a5042d92440233ba1b531898eb3abdbcb46ccc759dbeef2181cb08b43082108ca0a51be6ffbcbed43ccbf9b5caadfb8b7feb60b51115dde66a7d5e8bc9ada4e2c41868d0dd34ade2c4132718e00401440086089ce8ee985611810dd4300f87a2928f20cff4dbaa9d556e1b6569d9a6fc665ca95449ebdff75499d1fb2babe5bf96aea4f6294c39960fa5aa72ebf0d396ccc14f33db9239fe1c3df560768b81a114eefe7ac47ce42e11e4118b8efde7639962f9f55434739b7d9374456fc668c674a3f82fe69fa28921c5a47e2567660f466fca62b793e49f4d998ce5267a8ee6d06389c9cfb8528fd16d6adb64e6d90fe4a24f991cdafb51beec594c61b55ee56f98632a31759ce995d459d6c621ee3cff4a37aeeb680fae34fb697218c23765dd669fdfa259676fae9bb59dfc79ad57da83c99bfd99388c3ad15d463ad1bfed6795d89f8a62f44a3d87b2d765cf7a0dcf12997d543b27ae546e9d7f57626ffaec6ce79fda9e66d766586af73bcfa8c7e7ac298632d077e5b51df727879fecb1aacf95ca1a4d71d46487c929b3aeaab4c69678bdbc6dd2bfda4ff9b35ce43b0ea3cd09890e0d0eeaa443938384c684d2d9b939c928e13999747664503c34333a4aa2dbec9de799e5543f9af29f953fe55966473fe5cd2efd7b24e7cfc4e1cdb85acce3d17158df316d39c4aaf91bcbd69e51a5161b49d7300f3b7e6cbbeb7557e2fbab29bdd6c756c32aa692f55bc7c9d6fbb5350ebb90f5c7dbe7effeea418ee95fe9d845f757cfb29a8bf066319beded1ca35a27afaa520b90723cdf38e4ee67c7e8f6a5bc2dab94aa2add529c54f9b559ca4f3b3a7e3229c9f932bd1ef626efe1f047ae8fbf6e3457cf5b1cd32c5b5f593bdf27d9f952fe93aee8ec1c7cd0a142aba765f9d33ffb940f31228920ae61123f467578a182811b60200a8897e8d8d101a571ba75d81ecc6e986f9b64b9cdcfd96f1da94c3d6e1bed89cff2222a0db31d4deb5802bffc99c41a961763d51f6284e719f5225f6d7dee93ac4d0e31c2d330db3dac197b4a4ce99e8ae410ab2aad5732c921878818df19ba3b66bb9962b61ba6f9948cc117a664ea6b38aa9485babbaad24fc9149eb90f03f3a2e4e53d283f83fd12ac83ca586ef386a724edf6c9ee3ffbafc15d4a663983da36592deabe4a456f1ea13689d16b33a6da0895431332ade251d119cb6dfb2b57d33b75871cc6413efae4261d53ef005ebbf4cdb38fcafab05a63793acf5e24f6fe11f6fe11f6fe1138dbcdc4b29ac9ead8fb477c148a7f5a99295f6bc99c95ed388a33afb4f928d4b4b2a596cce95012c579d3d2fb25d2a94aed84f1e3701e472bcde9ee2e3eb9fd44a15816c7da13bef9e4f633bf643e0dae371d776d5a32075f58a5dd26cb5eecb35df2b794ad4af84279658779b2bbd7e86eae55a0cc00ca053696ebc2d5525c3fb71ecaa9fdfa644cb70e3ca15681a2c3f7f8f73ddd3ac46e8cee152e90d14dd1dd9e65e8bdef7b40ad03125d48663933e5db707f4bafba12c7dad34f2bc37a9d6e1d25982975eb20818e11f45cc9ddcf9249c75d9b6e1d4e74dcb5f9693994aadecfcfc92b519fa1b0fc8b557a7f45b79f28bb618eb3d80a95597b3bd4973354a65ccac3f72bcba2f2637be188c35a2c1cd6ba8fe2b016be4fef95296e061c0ab828dd7e6128915f74fefd1e79fabee7bbb9bedb7a7fc2dcbf3f79ae0ba33a8c372af3cfece08c5f4567b6f6a2b2d76958da741a9636da7561f4fe946ff358b53a98e2af8fa4f4aa2b351993bd7f44b53aad530ff6d877a62fd34de66b7398b4040922842579e64deb679518ff9d93943d3bcaeeaad2517657353c4b342c6d6a7896dc4bd3b343634411416c76ae8bc39acc1b981e2094788212b961f6accf6b5d243375d1fdd5d74fc3b2e4e4a7fc935209127da337af92a812680d288ead11f53d3247997d4a4a84f68696acccd2685a0a341835542f50d9646910cdb7d9bf2d2553d465bdbfb22acf71f86d298ab1c59ebdafaa72866cf629ff82beadcbb6c8a86851ae4fca2a6c95ecc81324444e9080553a26b74ed42a9fc68bf1511e02dd4f90e83cf9299b45a28ca39962509941985afd1546b3e46cf6649daf9de603b02f20961a660109b40ae6a93152ad7e8284b724e72251de3c4cffaa7204523ef4132444f209324b6f18432e9a37712535ac7a9957246e9b94892ee7a73c8f63884388b39f20e1333722274840d6579badb5773a962ce9536aa408040a0e282922e9b802285337957ffddba8ac39d5ef91a7c73cdfd36f4a9eaa24d73791ba3b6b95275c681e3c78f4f0eec45f3bf1e0c1a387275974c327ad86b37a367bacfefdecef1310f6a4c42ac548bcd130ab16892ea820d1447767d63fc9725b3d8bb0642171a469e731fad02a48f8d0dda55671f2050ce5c83499b76b619ea93ff624f629872af8201527d8e6d15f192733dddd573ad9714416dd294c763d98dc5ce24e6af74b0ebd520fa92acd9ebd76bacdf02105f97b18538b25eb885657caddcf3fb18fd31144babb6d5ac50268c0f9f96fb7a5a2ffc90250babb79f0e0d103744c79f0e0d143088f669523cc725984ac582c85106376b2b05cb8cb59033dc14e9cb3197b323c78f0e80166dba4cc75c1c8e0cfe458fae9050626047ae1b026301cd624e39f304b5e5a36860908981081d46df659257d2ddbdc83494b8eb0e4044b5eba1b461fc150f792faa772649a681994c93729d981121c2512503991d13fbd0dab145339af645d9b49cfac7b55d1bfbf3a9d724c7098a4b0d937e941c11267cb69f9dbb6a8e823e8d147b0da6f538daa75914c4be6409c69f542221028b3407c4874281d7bfdce9e5e075b1dd6d7587bba3fef4eb693bd1dfcf4da7a637554d55e262c8b63afcdd7be60bf04e625576abbd7583673f666ff37c3a80f112ddd9d4943c4a1bb77fa3304c676f3ec5951f6524344f14334e98643a8c01004baf8406009189aff3783c0916e1862f578c366904fefd3038b1e48cc6ab1ccb16499e66b586e262633cbee79f2638b93b137339f6567a511a28c8ef90821455351ed2344abbb9be523444b07d146f72681f4278829fe09228aee66d9cdadcd41ecf4ca4928d6d7ff9ba1585fafebf471349c8b86a79d1d1eff522e65e06329a9c491f838fc381061c01e1b973508fd7a8ee621242001f9c489bf06040680087d8000e2016134fce4767f653ddb9aa529cb16cde70146fc80c60f41f821fe3000076ce100283e0e407d1cb0d380381a504503763e0c68c38701537ab8c38c2fc53eae3b0cbd773348badbecbf7996add0e34d662011969a6f9b44c9dfac1d4108b1fc2ec22a79ffabf24b757f3bcf7ea2f9f2a644a1f81e8d5ef1ea7e95596a19a37e4b49945f9aeb2f20079f058860013c6ef0c1061f1fa07c7cf0a100323e0a48c247015a2840fb284026016a7c1280834f02a27c1260c407016a404017dd908b99715bbf6bb9f79e88a5c738abb7c98cbd99eb3a459ef9a96aafabeeb88fdc21e6a522aa4a0c157de47ef1406fd5f9d2f18d8fe0bf297b5da5a24d6234d38b67443eeeacf183009e0f020cf03940140ec081ee46d29f0314f91c4001dd30666b6f744c4311e48f555bff8ae63beb2ba4b7f350bcd964b6a708f230a670fedf9a286f5a32a7e2b4640ea419bf7bb63adfd99e6b59f9abb3beb6c0161864e596933a0e6715a54cd67d8314c7e81ebe32e2c7229c65f6a7bc1fe3315ac0638c9e017718981799e58c8bae8b605eb2ed4d2f1cd54c9dcc799534e2ee7e0177ff8d769cc56c8d31d2780fc79956cf793c28f4669334d7ff15dd48dd7f12d5121af93318e3db83599c1ecce2fc67280c53eee679b0cc72c603497c08d0bee4338030bc94230f20059dc6009ac04953687c06e08335e5f84277fbe88f00ca98c991858f003601b8349c58677edea486c214c6e6a5656332a63819d3ed26bf6952547e6cd3dd4fba5b049f0084a0f1852c783e94224d4839d735c4081fcf72ec69b948b62bac5acc3b6b37cf6c91fca6fbd92ef92f355a591c1c12e7619879f3894c5f0f2217c964ca71169bd5b3f705fb2528fcd9ae94b82ed4fd2e853d0a7417d11f1e507c78f4f068822f7c1e3e743bc6b2eb6e2cc68a18005089c21a9f1d52bafdf220aaa51fd3dd3bfab3430abf3e3b947c7680a05f30414cef0f0f66f81584c7e4c343167e75b702fac30314dd30b8745da797968dc112fb251f00600180283e0078f9ec70c66707147c76983b14e0a3431930a63c8c9a2f0ae2f2a31443185fcf55b27cba673f9b3d639efdaad554958eaa87ab673fcf6ebc4af817725fb5d37bdcf9fc8f0e407c7238635669ef6f566371af65ce66f9c981c84747187444f1d131f3c9c1c62707169f1c19c841c4a7cbf834139fc63e3dd331fab6fd4fc94917c548ab74d1c921e63cecd29e9de8322119d0ce6319735df827c8e195986637323fe7b9ca8c29c863f42b5799faaa4cbd290e3a88c3d70d43202c5137d775922814c4f329476564cac3718cd10d39ead847a6bfa25bfe247148a113876675e238f23d713884031c2c00079737ace10d63bc81046f68f2868f1bcae86e9167167316fb547e0c23febec7e48608b8a100709001870ee030c101db90853674a00df08d38de08235e3335e3a3288af8fb24b9f53ad14531db99a7989af11104e14951dff75c17ced8624e7288bffb422e323e821a96196f19fb4b439bacf23990631f3337fe29783f8441dff700f1386fbefb4edf27893d11556dbcf9551a76e563ffaeac3445bbeff915c4dff7601fff9889c3f91ed5aec53724abf37d9289bf4f6275ac8e1acae86e5555c307b297fab6ae53c3a8bbdd65e536bbc7832f7459b1acae0b87444e1cfeb51967d6fdda3bfad177b3fb671d2ce8d6b182a73777eb5041b78e1474eb4041b78e1374eb3041aba0e145050d2d3aa2e8d601c50e1d4f9c018d999b3374d1ddf00c1c0881bcf39c543f8a3d83374be7061add6e74e146142737763689fd95559eda38411b5d1b346dfc60830c36c2600303dd35f4a3d89b8daaad5245a9ed6accf085193e6086963260a10c5a74f7df9abf19aa56d2df35c258038a35a0ac11841a6fa8d104354aa006916eabc44770feb558647346fd8ad147a1d15f102a5bcb83af97e268dd5ecb3e6ad248220d22d260401a39c89003329041081a5be81048e4377ee1913ba69d1dd9ea978fe0a7467f6d96bd636ad1f081c601d0d83186369e3006248c0106639063f831061d3a8499b04cf93ceee257cc8c8f765c3c2e3ace94a381d12fd8fa59a5cfc0d66ffeda8994ad8e927a93ad4eae5f2577bf24061c31ec80a15fd16d86a18bd672183c50adc56e71189284a107189aa05f514a42cd8f823f0503e3220dcb3368cee0010c4f004313ddaf65074304ccf0851b7c417e81015e9082174660edf52f557720963e3f8ae3fbd9ae704b4b8b8beadad1d4b273de66b3a6a2da2737d163c752932a7752694687c483e4b1f7146e36ce9bfc5b8ade6739ced7663f7ef86b99cedc787eec2487d77a665d88fc5888107e8a51ce568bfd5665a520efe6e8f05595c58221176d20bff263ffdc9aac3da12e154db9b58f3d59fa15c5f92cb3294bd48479c998e27c3a3a1309be5095497c210b176eb80067a53d2eba2ca6a4bb43b0051174e3cab23549b696872579307933d5d7ffabfa89cab2b7d85b99ff1a7b6252b540829e1bd5fcc2b9510d53d1820edd0da5bb6dab64a195051e8cf0a2f18559306581a5bb21feebdf590cd5239fd5239f8909fb156afe7561bf64fe8542e9ecdc98786896a068909078764e2614eac2176298722cad83045a0796d4f5b06715993fba3e9ea50390235f687c216b88328428a30dc0830d0cc043135738c32f2c65aef0822e6dbf7a9cce9e6c965dd7fd5cbff37e72584b66fcf8425465d9b9598bd5cf7f51f4e6bf19eaa2f263547edc63ed8652556a6d4b728f55693b4e7618d5925cf62cea399a515f0a653114cb6a18652b2a3fd6f2a42cd46b98c428bb79d372a8ecae50a8fcb8253954c77928544b72f4a3508c511d8af32aaa2539544b72a88e436d39a3549566bbca8f3f0c85b1ecbe142a3f16030a319e10238bb1b55ff7512216bfe6b3606febae875d244611ddd7a238ac55298ac35ad7c561ad2820210a53a036e917eaaf8d42a9a3c0002898d10df3978202152428680dbf8d347f4ed29c32a430dee80e638cee86d9560f43cad7f26c7bec734a0f63091a464b7743fcaadfe88adece7196187e2903461bdf96abb559b46d54643074bab18f4a8d70f1604e2fd98e86a5cdb6491998271ca0a338a108307c61822f62bed081451390684210266c8109623021034c287577a4defae8a3e8a392432c3b9b6ff451a55f257965c90ee325246109db124addd7cbcfe385155ebc170780b687470955090b48c21a3f7e58d28f1f0eb1e8ab9d9e518fd1bf94bd90e8dce8f090986c5b126490000712c6683871bc5f957481862e86d0450aba38d2459123a07184328ec0c4114647288011b8308266841c2310a0085d74bbb8aad21cbf7666764e30cb2ac52211a6352dd11f7b197b4a78f6f3bf3e3cfb2971188af13989b9c712939e8aa638e9578c3e82b4f55bf62b8af12657f35b7604a563187f4bd14afd31657daef24a4fa5e1bf994baf2cd9998a40002ea4c045135cb470a14377431fc1972cff423182f0a5d5baf4b7a109ca8144c821c20286808421b0600823180211182a817c56f9654cb6dee457c4201e1823a652082a219084109a72c694194c59c1949c293c6cb1842d98d8824810bc10042a1a3ebe4a3e8217c9475766291cc1cc7ab649ed535e2d37ba7009c64dfec5b65e2c63e2579b258e1dd570b594621663e9f15afcd7cb5ef6a991863b070f82a0c15993631555e2af176971182f325fc35ee7197b14206244d4b0b4892e8a3064840bc8e747979bd564fd2b47cfd15c6ac99ccc3aa8fe0643a0870ec48308891eafcd98aca9ef6927873246cf6cc6d5db3a0f2264ce29fd6b7df758cec0f97d4f0c8132fb51288e8ea99c537afde4afaefdbe07e45fcb4a6e7b4df4573a961a7e3cab676bb2d5c956e7b794ac4aaabd5fb23ab32ac9b637591d140a85faba6d5aeeb354fdf6f3bb2fa3befb4ed5663ff3b5ec2d6ddab649ec6bd94bf2493d3fce8ffd352c359bd51b9b558ac2e28bba23a563c4a2894efe257537045a058b26dddd58106912161f2c59a4f93cbf6d3409eb753c130fa8803cb069d5f5ecfd28a31da8b1832cba1bc678ad4cdc2446f3dd3d8156d9c1c446d556c7529b01527e10841f48317275e7907940abacb8f0039b1fc01f40a0bbfd3fcb3eaac4dc6f0e2645a60fa2e8769b211418233ea9ada26d839cdbfbf4abc4f962be463bd51b9ceb9bf25b205b1d7c6d0e77ed4955e9774ffd012cc8a89e7ff56e379fbb58b2b2f8210b01b4f3e00b71be2e2c9cc8ddee7e3f871560010416ddd5bbcf8331fcba5fe5c6032aa2e8f6ebcb610c1e508007241eb444a1d8a1cd39f460076fd8c119dd4ef8ec80093b68b911f791e7fa1dc6646ae7ba4ef326db993757a8718594865768f2ef15ae8333ba7bf374d0021d94bae1acd2b270eeeb200765e4a0898658c77390a43313d4b649996d9332d87749ac1862c50f2b88b062c705fd72e89985dd396872509162034c7d7e770e17299894169bc92e0703aaf0c20b5544d1dddd6ea80289ee66a38a01e0c08c6ebf64770e1d38b8c2afee1e03074834173860c00ddef06c552e72879cfbd5dd3658f9e0065edce08aeed10df00d7a2eaf5606636c832e3ac74b770e241f1b20c0065d83345cee725c0daa500332fe8993ee1c27a8411335f0400d66fbf5d783709b3dc716354080a3585fafeb7ee76199e58481b971d1e9e5a565635034b0e9ee19b4610664c018fd4b3de7e54ddacc20053378f95021062a5640058e97653770569b6166b3c53099d1fb4b64600519302103203220400cb898311000ac9466a9c92cbf0d93b7cb8f69ea4affaa4cd91c03832b60d0a4bb43f3ca5965c6d76653bc617238c5143845133d4513d2142addf0055974c3b959c7f4054bc01710e96e382b65bd6007185c1006ccececc2c70525e8f6cb66df3175ff49ec09e2af4aac611ee7f8db3a8ee291e3ff6ffb69afeac24d6e2949777e6214b0800d2c30a3bb3f2b5890050b96e8ee20be6df332fc18e63dc102097467b71909a42e7aefe650c4d56e528b2ab965ce79f3ba3e4c5ecc723f7d66cce299fa2635e970939ef1a73a7933ced6a6b2e3e9987ac49ac7985752c3ddfd060a86645377afe1046968883dfc84232b170a13b4718214b45fdb66337fbced28c9365bcbf33141174c0006f46bd647e1ffcc77e88d86a536e7cd5789f3556e2cc9a36169735ddfe4ecad81a2d5707e364181c45d346f2e988a42757893cf735d30303c33362f2fd82f49dd9ff2533c333632cb996b33149e3030f3e6a5e3aecd0bf64baa8d42afd56030cc4f2bc3fada430826e422d00bf64b52f94df33b7931d3bc9199f2b56ced95f76596f37eb7b21d8ccdcbccb5b983417d9912f15cd492c238d7755d2f30362fb9cb988bccfc1e4cc6c0f42072d1cb7fcd7f86b29607b56d5246e6feac4a64fe1c9a8ebb36b8f5f38b79dac99c6ce7a35013eee43d71b23361fcd3ea60ac6169e3d5609c3d8f86a5cd17f3d3ca6079654906639ceb73d846c3d2a6e3aecd09cb2c67f036e5db749265a21c87bf4a1cca0463d29cd5abf94013cf9efdc090eefe8000bafbe3013578c00b7e598de5227ce1fddcc929511ff6f1c07ba02435968b28aa4aacbf604110ddb33ecd328db1f974e0889117cfb1cc34d5016c59270e4c0e34d1dd3e763840848937e03ff6221f26c468d1c771de4c6699f0fc39491f269660627693e6944c04600937969802c69dfcf879aeeb34fadb71d131965962b4013736c085cddff76c20b7dc00cb0604d0dd1a908106581ab0e986b9cadcfa3867a9932c539c53c6583bc9326900001940a3e724e5c75663c50cdce0938125ba61dc798e7e3207422cc27e89cf177554ebce81530409185003036560c00818d0e013273e31c5ffd97a8136ba1b761ece94922e40c505b40b80a248214a14bea218ff07ca2e55958aa2b4148942808f8b18435f0ae4f34320cb3969cef94be67fb13ff753ab8c8e38b3126b4de956b5a46895e0b75df92d221ca6392d952058637477b3ac808181b979599556417866f87840f036e055c02b400e43b62263201bc98dc5c036c050e009e0075c333a26db31c2b3f3a578686c4e3734d7bb7cdf83ba2e4c83b81198203815eabc6b433188bf38c82986b03ff7ba05f84081c2078a13a078507a40e9ce0bff4c7aca3339b40f3f593f39495dec807440d8277c2c151f3bbb3b66c681e4b8aad25965cc895e72201ee5a79aaa03ea872302d7e276b81f36316c3cd84cb0cdacd103869e117c7a8628b1858f12285082a4c4ca8776f1a13dd487c64246a1e8528a208f5bb5f3ab324809b413dd63b29d28c447d1457e4550101f0529bd4a72f46fe7d1a5443f1b813cc60429391077293910cf71201e73bd38c48d18f110e8ba328b8a53febdae574949572e131d089c40e0c5e6afa86461ccc3d5525c6d4ae2ec06ba7fd5b1d454958aa46b4b68559bda482506951700e88fca082aadb39d6c97fcf8815b922b95403bf0078499155117b96893d8ce642a7f84f7c07f3f4477efd09ff7094712a6137335b9cf9cc1d8c09080f57c30892d20b5845416a92952352902c8227c240cfaab75d6d7b9d9df7ebae4e0588a3ef2182ab97fa617b4135d14433931333e8a25d6578f3aa1f9a3d14f8b8df0686ed6638e8e03f1524e8f1e5025abe4b0fae1cdcbfe4a2c46ff2a093e894efcb5ec9b4ad6388afedac97b408a236ec99c38739574dedc384a1fa3d53fc66b47351f10e394f4cce26e7bed61e853027465e6163bb68ea186a5e6324a0015473708af3c04f26c75723edb25df76258db527fc559933ebe34fd64f723657a9955039bffa24d18624c048624ac310c8432067bd4e124bd4c7fe26d1a4d24f12a0ee4ee2f3c48cee86af9d9e7cf1840a18d6d72718960e23cbd6185d1c481cfdf46da32cc804fb634d456dac3dcd9f73dbc9610295231fe86e189b9b8e6a98fb7c23afec9c70a0bb71245d62b2c1df279998465569f56e09cb129699d866f5e6b1ddee7ff7bd0ae052c6bf52d55fd1e0af9f258edd4c48f06f58553283c9c43c965a69defcfd3ec95f9a9fc79ef07d12ee3c7b91e012fe6b658208513227c99e30c5c18fa5cd73f496f0abaae4d1326532ab677972eb755aaf8367b2bbe43fdb253bd95a1edc29b1c13719539ccf7649b62af560768b794c250feb757eebe83dd9d3b425ee8695a3aaf8e976250d29bfe9cb76342c6d3e93263cff75eae36c1b093fbdf6e93de5d6ebd464fc31f7e9d6fdd7e4d6ebe0ef93e0a7f3063fcd76337d26715582bf4f82afcdd2e65cd789656b1b27334e4d9c5e4e3c98d860aac2744d3f98ee7f8fccd73529c84331e4928af94d75277a66411e6f628c5fca5352732cb54e76130a3c5474630fca63981730789474435c2da69e15c9eb91fcda1a8714d79e6bb187ebe36ab1eb590b38c4d8eba4fff821591f3381fcaaf9df4d1898d3cb6f9d777ac17e890e1a3a59c0386f747043ce5617d5ff1d6b916c1be9a3f3d151d1b92e18aceb4837394f7290e0b401270a3857e0ac701e10dd45118b62c4d75e342c3449e2154349403b51a25a0f69ea6f2808724f42e3403c09cccdf8e5cb145f9b656c3b2739fc7913615eee779dbc4c62f4cc4a793f67a4e8d766f873ccadd78918ff55d9dba9a8cca4c4f8b1affe5a163de64d7ba964b9cb9f146e7352eedb349567338f3e4bc324a9c776eb204391afb959e283c40548a220b920f7cb9ff8e58465c4527f43612d7b24940d4c0f2e827111110fc64544bc17fc9566dedcff92ced56044c5d73089c9ccba776a3e1498fdec271df75d81c7a8fbd9ae86b8c096d1c881545b4326172d012d818199372e32b948c352bb25181d17d9bc747f4bf7b3bc58fd2d5bcbf35bcffd9ccb71f94dadd7f9b2ff1819d0fdce33c5bcd173a39a0c16315af427e6049f9826b4c71403ea180190d068bf44fe79a9ebc2b97eb51d676554956225dd44e0c9c999a26224898dca8c2727075f883a12870e260511c263318b592631f03eb6d8737dce46c754725ea5e9f9bec7f19d9bd5387a3b9aaf4ab72cb397aa5255a53052c034a9f6398b6140dd9eca481ababb9b24c37a9d8f91259af59991964e79f651fd544677ae743ae9258a6e5b492f44ba3f45d0487df7595e640a94591629d2a4e1b51ea408a8210efdb51cc8bf2aaf364e57160dafd8f093accf459265753e170420962c98d3cbb6491998f982fd92172248882ce0138130ba3f4634a0082a14518222ae228018e28521570c999f21a5210b10e28590fa11020ae285205704691244c7c7450d2e38e8ee24fd7171e2c2f26971a3658a508c9e5110f61f4032fb19dd1c67eaa27731391037a9ec06da8920afbf8d5a471cb16dd281b8298aaea598ee388c2ed1bf8dfa1545cf7e34dbba39f688b1b7752ea2d3c5479ed98cca161e1f963758b0c0820296ffb0c8b0e400b580b1b1b7957cf4d5eac8f8acf20807e247807660debcdfe48a7a503a7a37399acf71379f1105463b88c0206a820807229688082057b0c107c80b3e40342014f881861f657c7e34f143c8e7878ed00e5cc4e3a2272419272ebafc1ac15f59d1b5c3729359227c93b6d372f42f85418f26910863d9dd11c8b3d5581e02390e79e4119557789c58e159adf018d1dd36bd52013354400accd6f25ccf7e7893dc5d49cdbbb9023f4a64582975519ac04a49003b4f58d9a1c2b1c59e8b766c5676ac0e11567454a073a4e1ab5e93b47afe7900bd9283861c18e49020a788151c365670a4802c2c43f10433fec7d666f958c5dc5fcbf7b3672d2b3bcc496a4cfcaa9666ccc2554ac754e6388495aaaa9c342e2ad1c0182ab9e806143ddec4581af9853d940239acd44312e4f0e1cd63f79f457614a31984e9756179334cb3c4d81b9db0dde8df0d23c5186ae2221428b29ac41842b9a809283a965ac42cab39eec1e4cdf8feaad2cfb4ca8ecbf824f351a8e9fe119f6445a94aea773b187fcd94490e36548086186395f955457afebb88b9888aa41d47b0c88efc7024012b1300630229589940092650330101c06c6105a6073b7e4588bde82398d92bc24f72d104437f59768bd1379af1aba6d7925c8cf543f2ca0e94ddf8c8a157eb657c5ff551a809bb57aa65f8459959bf72ad370e3dbb59ccaee4e388b3b4768b423f7f57d28db6b0cd51c621863b3537355e2954411a87d572f8fe6a279403b299dd2826fac8e1d76baf288aa1500ec8c645312e5afded40d12faea7521a97a9400ec6dd43f8eecb23e8b652ebde5c56d7855d56d7453b39cabd62c4b558e760a58833da65c5b2751c45d14e16310517b144c3575d896da95b476924c505541401ea4a65ce8f8790d178666588152b4396e87627434add528708a01b0b2b428c20e48a152151b4c82f23fe04e56445c811eb75f356840c11640c98eb677625eb9f568244b112a4095e09e2ddd0c58dee7692cbd7ddd02b0d743cff5e8c56d9497c5322f9a0c921f1d4487ab364e15c5f06df1d25580631e81d545a8756ebc05a613940b71ae017ed46607c05d6006e2f0e0ac2af8ce5966d8544fcc24fba5b875e810d58813ab89120dc2f9f32e54f4654e8c699a650468270d4fcec5d4894c48cbaee1ecc6e31a36a1f8fe63f1ee5008372595d178b48e5daec7eb702a48b6ebfe915205b77ab2a9def70abdf636fca31657d054244b75f3fbee8ee20627e7840aefcc07ea8781273ac04ba7b3787cc08496131ff6aa809288d15501556404b40d6572a4d70a75740a086d9ebdc071addddee231f52baa18f12ed5a5fbfb344b44184144410e99521d018428a5e19a225b9218824800cdd0dd32b10408305812624045a567a98b1d2838a86b6c7110fb3d3e7f6d5ca38a411c28c152196e886955ecc3de6d4f02c8976ae087104571a65c94ec95b920b028dee20a474102d775f0922ae04b1039672786c6cf7189659cfa21be2cc62efda33b69d057ac577602b404801a2bb40f8d00db3d765eaa295074c79c0039c931dfe610cfcd95bf9410acf577e88dd2b3fb434f41fdc571c20a5bbe18a03a07437c49eb1cfb20cf3b5f8af7cee7ece8f1fc7192f1c244bcce28de430856189a994d8bb66684e24191a9e12cd4ce8abd2330af215cdacd7f92814c30411e2a1a08b4cc6d606e2a71f340261f46aafc96d56e947514e79767aa53ebedad1971a6599f541b35cd19b12c96d4675de018458314014560cb04437fc14de3699a25fa9aafe7603f167f44a0fc32c56cd8fd82f892eb9cf94e4f0fdf3c99d5eb9c232530fc38440d171f65c7e55d4b2cd8f23fe2894a3b9bb359552d153aae1cdda54745925f7264c1de7ff1ab8a297b3f5db2cc41da55bc7c967c58ef352d6e4b0a3d9e2cd8b84807811ffe140fc3f33e21dcda8fc5b9150473308db248632e25ffe8d85c545197b37c6e8b0a32917853a9a418e47df76e546398a47b9da9bc5e8d2f38dcbcd537534639953f63f43c5f8657aeda5d60ad1d17ce94a08ff48b72ed3cde348fe5ff3f98ba97674bf939ff9e8d6c104cb06dd0de1f7493c0709728ca0c1c0da55c95477aa5b76b6cb7175f7ec951edad0cd7141a010d8321aa57a3015e632be2eec57d735334675b8075cb3d2838a93788cf1c472cf91567834f15e5fda6d8587cd0a8f1d3bbed8b14477c3ccaeec10c2031a1d9f38890e73ce7e9bd26ebec2c30a1c5e3b4936d34933698ccddc36d2fc12ebe70a00ca5801c0946eb8028026ddbf0200d00e6674e3acec904577afecd024ff47ddc7ca0e0e7f450733ea8a0e52744717e5d38a0e2dd76eb6e470ca951cca10b2924316f9bf951c567268d2bd92834a77434c577474d1423ef55f577444d15de98a8e5277afe800355cd191238bbeb24a51fe8fb492234affb43a967b0ea6bb93f44abb61a5bbe88626ee39eb350e6dc4418b4f1c7610079e38f0104719718011472b8e0ac461800f1ca4c0a1d50deb08e28ceb0d8cd8c7ac5e76ad1789b37e2cf23743f96b796676542435ba7e54fa430487077cde10c61b3cf0069c181ddfffa46806ca6b37496af5c70d5eb841046e08024719ddf35522cf7e6e5554769cc45c55291c22806383a6187b6c098e1d6dd002fa5f69b3c4fe698346274d1b7890b77ad9f749beab3407c64865be8fc94f858498d5cb3096af1322f50344f279436fbedf83c97bbab43e4d5d8b7fb56d31194b9c4a536faeaca1d936c999ac3d7552e6fe6a87b433698c5783adce8c3d7d535ecf729f93dd255607e676127b7af3632a67f56afe96eeaf5ec7529cd6a1c47c282e0ec495885e24527f712562eb9857144da5128ebf388d6850030d3840c3a93b3e1175de9dd283e28fd1d08033a8e1730629284659d9748699ee3318c08d29ddf1898b60273bc9b9d1c5274ea2c36d2339c90d21da18a39d44870e651b50b4f1a43b3e7191c86a2c2711b24893c6cccf12c3769bff463764a38c6e36a468369668c8461398b1ecd8009dd868fd34038f326c510655198658830a6b08618d6c0d0aa8a1063570a046498d9a34d2d090e593a65ecbd147327b9bc52999f1a5317a66737dfcd5da1c7d14cabe54c759ec5ad1cccd28e5e19437ffe249631c865a7f6527b749a5e424f6ec5799378fa3d86edd83682a8d551a233260810c5ec0f93146ff1495970c2220434f8f2af59aed66ba5fc2b97a56e65555f264bb997066bd87118f2c1ea3439ba5bdf96f146a72538b8fce718b0b9e34151aa53c0c72d6fd39a97491105308ec594f4573b55be7652aca372559aa3756c7ea783b6120f2c44974d6d7339870860bceb801c31be213918bae68529493081dfb9057769d9537b71ed31ae8559a5993f53a609862c1e044bd60d8d1103bbe2ebaf237992fe4e00bb7bb8fe8cf177cb8ae53b479abb47ed759c98ad9b3a898b1af5ed08117a2f0428c196e9821e5ab5eeaef6bdc6bf57b4c72884f3bf04bb9db4c55bf6d72546db5d53199f9d79f774ed98d72f61ba63ff27f3fbc625766f757200f654cb72a41185f59e3d031f52c4667e8036155a53bd9eac82b4bdded43778e5505c11690b0058dce38690b25b8851d5ac04277370c8735b92efbd2b231587549f2ca92164addad850164614a165add30469be85566c1060b6f60414a7f4a626176b705fa8385007cca0843c308e347a138db2aaf2cc9e43a7f7e19dd2d6347377cec554b6995dc15ae20e50aad86f3e6fe154a5128be424bb7bcb2bbc28eb6f563852fac20055a41eb6e688523566040c3f9a72a60552000194720432363850a43f850210a1566a028747d7caf651b874208e19bac96bb9f47aa6a379755626ef17312779dfcaebd52d449ce712759389545de7592659a020ca6a0eaeeefcf1474484108dd7da43f52f8a400c788638c2eba61f44af2e823c8828a3e8291461f8dd11a03881868745feb1bcb6e9becae1850c46881dbe34c6fb496e76e9b688b284089824c14f0953337ded2d2e2324a79d845f39df4070a47a0108130d808a30b49f4270c26c2f03e6120e0034610c0c0c0806968b3999b1e3d6066f17f0d0beed103cedcb05c8b7d8c8f48dea3074c29b12c379ebf98fba52c67e0e7af5a8a2de65d2abb1843d062b72212c8e17c1f95db5274e6c6e5950e71b63af367b2ad56c666f546de4f17a32f98f8a289dbec0bef6e421af39bd044136c3a5feb4d70883f4c7883096330210b2674700b4f2ce148378cf1dbae6b093bae55e28516396abc50d2ddde719fe5fd12bcdf410ee28c658e2855a0814a15701230d09d0426499040b73bcc30e4f052c76f67e49525abf37633edb464ce7d14cc8b4cc92348b1a2f808257c04ef2e19418a36826604507b11dc28421630c6d7b217a1080e311743e0426b48e5a7b8d8d130f4556e9bcc3203651a89f04537fc5244d046a1ffcc895044373cddbfae132a4bd4a43f6dce0e0a8527457d95db7fcde93f43cd2a514208a31bb208010542382204d0acd28338107c613a058d295ff414294a537a6c01852d34b0c5093aae99661594a596631c7e951b56557a53b8d22dbcfdea4010d4088216fe557a4855a98e2382d022d3adc30810d80084298e57ee970e2440a840fb85fdcab13bbe818f4dea485c8b35bafd2a831633d0a2055a2ce19791498d5c42d082468b205aec30223232abcd11b28ba85493c606b25a324533000000080043100040a020a1c1704426154d48b5760a14000069c054ae621f0ae42ce79431c610210100001000000000189205c335d5e193fad7b19b95614ea1d44aaaa9d7628f31b06d6d4b237ceb37be352b1322a95123831c26da692599a308e74a933da2c12a9b8a79031f3ba9f160b88f158ef28f1d0571d6fff51c6f038ceb150a52920c35755c2321035122e6385d5648bfe8d8b97ea7292358b58568427c219dae31ab6377415a0509716fd77e502520b4d8482a3046a7dbc3984e48facb1691f043b5dcc9e0dd16a66a6b023e0e5a61100265441eb7213bd61c6d2d9b595497370d10a198ec3edc2175626ef444d84f7f0b7d84d1b54303cb22916df4fc5d80b9f899497c911911321954691558e2d5fdf3556a2a74ba69f0726a198e6c1372c502e706042999616291d83d3d42a01c0dc6b318bc8ccc7a4e92a97c7c878b00b8a128e225aa4d77b8f52190085a8f61eba5773c5483c8cbd188f2c85ae248e801f7d61afaad3eeeef9a1ab2eff72dec395113c7b65c62afbb866ccdd24796c1cb4f74a84b4ca7f79d6d85a3ac8b24c94ba0aa8eb481274c2ef89b50d2ad151bc2ab84fc16440717dc9b9b711a78720187b6d77b50c7c72fdf27789001446f355920801aa34172d209a7278f722ea28d54f07e2092d3480295210f1fc8786de4b45198cea1b485deb6497a0f462a36115a249a88f86bcda7787a6c240ad4e040206e09f017accb9c9f2c999264af3ad2c3ad0a8b27de487c5f7a0b7585e7e4014f8099951f8a855ed54507613ffec4126fc81b4a4ddb2a0cd34ed7cb27fb807ad8f9e1aa926fc125f247e0bc2b8e046fab02b25d041dbd8d2a1a580c51ccfd03ec02b8f1d112c02eadafd9a4ccaf8018f20513d4caf90b30cc5a0041c6881d3636f7ac14428253db8ab9641b16111615f5c902fc465fa7821e466a9dde25f804de36d778b2cffa7724fd2fbb5261cf35ba60027c34ea4fdaf83520052b8fdf507b21defeb737808e85503fcdc57161506e5f1810c0a61455dbe12d14a92a26b011b3b14ac1dba28837c2ac433b9420981aeeb1e4f05d776f69d3815e49cab69abb65e6c6c6766ea4daebd16301eb103e74735762fb355c84301334e6f9c72484e23f1cd6d633e59934f85a43ad4f382ac04e03e2af5d76d1022dddece82b9e78e6e63d6b5c9ae635fb40756143c85c4537c60dc99bad53716543384e6577416241f901b7e2a1ee1f9661a688546af0c3913c8e27d4e90af98fcb5f0acb3780577d40274636caaf4a6053b4f2e1bbe7b50b659d948523decb1e455ae2d7135f2d93bf1905ec6ba809cbf94df7724ece82f43cd54500e4c67ee2224bb478c6fe0454ed43c2c006c5281784e2e48a1f4416f346e1bdcd48594171fec79708da81a4ee400607b82af2574b102c79414faa724ba7057cf06791c202a31a1d0c83665dfa934aba14ccca5f9841fb5c50e6b5595f62558309fec6fe48769ec3caa60275d9ed1b7a49d424e46551a5a45cc783bc2a4e10a87a36952f420941595a816c5e049f527ade590992f05a16ec2a695980eda74b7fce5c2f250ebcde9de97987c4617a8982d36592a4114ba3639260b3a8ef9878ff91e2f1e432a0c7e927b2411f8b5978ee48c6aac003245e18a817c04806331d4f27c68773dcb071ff6464449534e4ee5a1b3e676d5a66ac6c3a084ab7096f02c3f3757d6ae0f79acdf8889abf3fb46e28ff033775eaff63b08cc6ca388b80a9f737c36ab72cfc54f3c3785e679d0c6c6dd28ef94538cd5e5d1f5b2bcb93633aba190dbb68e5f76699b1a70507d2fb8e9a61e3fb9f63392c9afefff67f7487f7eee88a81ddf4c79e8232848568e8117c4b996514d4e65a5a9822e95164316f96ca33ec3210e9bce99e1c278b48cc3e0f7b43189f626f50cbc17d02614f1c61344389e7e7746afe557ed7a52d7f7127c80c9e5afd949ef3f1f184cb298f0ba93880aec962781b1333673f5daa793fea96038fba8df9ad9d78779be44d127c7b5a7b1867cc5f5cdff3c511bca88d3770e583e1d43730e3c36e18e41126c017f349f17c8d5147088737f906feab6fe0e936da562fcb95f3f0623f8f6fd683eb29a53e19ff5868d193d72dea996acdb786a58fd02b9acc0cc7e4cde327a101ae85fb902c137011038688a59614de283e8b92a1849b2fe0be7ecaf8a5da469809146bf9221f9d7358aad2644a389a97c0df5a4cdb53ba18008500943573b50f45c95f007b08d2c0d874767cdb59abd6a9938756c57227b8e75acec66319fab791f91edbb6f1d7e74d7f5c3bbc05ea07b36a3e0b4e1d4f0568efe3d66f4610b86e3f05fb4ad11a7b0e7a7d936b099c5a38f2200b4f70605e72354ec3693688cba536cd316d10de30a5e37a2617b8c137750d28fe8c8a59248eb27c844e142f7b701f93a3636c5f4180c9c790733fa17d680d80a675acb89d9415587635efb02039ebd293610b7cf1308476e2f19f55e8345cbedaa689f764150b467f3dd83ad0c22f59d5dc986f5f1434eba1c03f3eb91c83eceb6e18ad4d5edb39dd47026265a18e13e87c04737f6f559a0cd1629be480946bdd08b9f82444ba2c80c802f4e604b3d8fcb296379c46086a10e0fe2b19df81a7c773f8d6b59552f4c151dffa1d618366482b833c11703e0fc0fdcf48ff81cd4592d5942d2c9ddeb6e0222f6ef888dfa08691621bf564da180d9492f9f8f47cabb8d9a09e7fc33698bfef69f0959c4e53f47e51cd3bd59422f312280711fcfa296d92d6de7c5f0e5f07e70fe92f3029efe6ac8a98055a73c7feb006cc202a383d8957f216dc3b738a4750b9dbfd2664e26165081eec92c80b7484410ce8b3070493726aa383f94043b9878ee9f72066ab023122cb1ab295327b883f5869f89d9bcbdfc7601977d578ff2cb489077b7f1a82615b85ac627ed2299ab1f28b6ed0131ff772c3cc0080684aec6a2d2f0f7effbe9c2f896ebb64483d4aac92ebbd001aa06398db54a307bb1885abf8803d4837d51fbe01221d5f10cda041d2b02391c724159b5f5e38695c9aef57fb6a3a0e5effc5ead328ea14f27c8bfeb32648c470e06214f50dca6df1d9cd692e542449def1a4070480475388bc3499093b992f5e41b2ae63c95e915b69fb4f24bb06f512cd583eef2f7a2eb85075894ac4c039828bde06268227d757559d7a25ccd0e3cfefcf53979438834716ef492fabb4dc7e225f1585dda60df9a793aa771356f49327809164b51a9fd7736c854fe16502fd0240b2fbd2035f9bd1dc753ca64955f76fb73d17708031d40b02ae1602d8760c587f9969267080588f285a20b389944b8e3e26a9a5762cbd3a0b7e086d948a511e36d478b8d8ddc6e5a0aeee912b3004d56d8a9b74c8f8c2c0e6524accf1b3684bde563243b33c5504ab07dde9892e054016d3919a0813e75582c6285e6829bead0cde8cff8f686620a110e6894133197d4221b7c260e9fb340b382f0375cb216f8470a18f1e2f7c6bb4b15408c0e1eff27254e3ca0f732644a7fc15c02eb149574a96a1bf8d9028543df3ec2068e775d3989e885675e40f99727711b9cb6f33bf4512f8cf86d0c01d4734cd0cca79c0fa39a4ed51ad2ea6e7c7a500b7af52a55bedc068459571b816e43be3ec4be395e13ca0c29bf862f4f596c0e17c43b4630537e89d4a64ae3d6ed680cc5bae023f91890f29027b27692283edf318832695f1a3304485d688a9fb4f9022b8898d229081f45903bc6469f4020bdbf73b49edafb8ad6c1c783c2feaa6f6ce0ada123822dee52cd0ef604d82f7406aac937526877b9fe5779483b00a06f3fe009933f90a02e73d85bf29be7deceb3c40d4650c521e2767e4b1122ad8e2ebbd1868bfa0fc0c8f37737aff881c9332178e98b8e35c3649ee048d2e700d9aca7089579e3a369210d6d2b6abf02a28967799e559858540907169fba500efc257fa0a06d18e344d93d75a445a514f3410e05e7a8d2d09cb97198829dd261ba5534a1cce6cbc63c48307191cf1ade01292dfa5f8b9fdbab32d50127f8f822f61e646adbeb591b4d26a3052c13e9ac91e2c3478231efdc7f6b12dd13a4e1dfb93938837794fa514be10d326cbeff69897307b486e37c8107270fe0f355e40f3127e0a5ae706d5a1bf9225dd47203ecc54f44f57c36df674c8ae4689c274669bc0e07508d0bbdceadcfa8885b811a4d981158c9073fed77a85eddd1ad6b10720cb5b3239a7acadb75d79888eee8514928e1e664886dccbd114a30ea02e5960419ed203638e46055017b79d3f75319d8aafe1f9aaa2730065000f5032495f405ecc735c0826da82664dc588c332ff7b9726d19b47de1beb3d4c4f761c43a1aa0fc1b14b357eb5bbb54fc7841595895287744e26bd4b70903bb61a05531c3cf013482ee839c380df7d2eaae6a9ceae247227e6829fa9022fa40e97e705eaf725ac6506c8207a40121f01d9edf8edd4829b77622191beb2f5e750425a803bda38ce916512b9be71f06d62608b21e2b670309aff63ab31085a839ff7c0cfb934229a97b14395dddb346daa267771252f43391535524bb2083bd8b76988adbc64d9aef6ffcf666106167fe740416b3947a206c1475fb52a06cac8a8d179c74f00d4e4a735cbdd22ec1c704172d5d163fbeb8ce9afb705a1a39c1b31d64a8ec026fab51bc842b637d3f5806d1bb5a7b043ea73b6bb1cc70ac021e8b7f15da0be3a4f02e7438d8a8d36db9ee87c48be093edc3334586527cff837106da9f04fc986fce59cc382da9df43acc68264b67555830d7ecd46a998752e741b443201c7f3023b313f9f222f107c0908c045824cb024c4d63f0761538978354341deee69ec3d77b97cce724b843c842a9c74361c249361f1870f5cde9b8e15f6c0bdff3148ec538bef635eb93c438b83a3d6a149a736245a9a99383630d626db7e4b99b9d8125f9e69d27f38d9d4deecf424c7779bc7903197e7687234a533f074f31f88b51a70a8ae953aa9bd24f237ade0a12765b854d6dc3e56315ea0e76ee5041a8c3b552bc186b192efda850087bbd87fed5d2bd74abc78531ccc18b3b27eb1bc7690b0f2000d882b8f54701703c24618a229dce66b3ac72415f523b833a46bb1e3941bc636d904bbeb59848300c4dc968704413c64761177f12da334df5b3cb1b8bd52a287684ec5de8d5fd3faefa07c2200734bdd808e208645d977a397506b46dd0cf5c4c60379b934a52a6fd713f32e475b86a59b2880d88b8edfbbec66cab025800ebd320eb64dda0a9d995cda4e39435540a06e81c47b487426ba4649fee9f29f7cc93a4dd6fb927a4152b8bc2c0fc2e86c240d8533a1b600f79c35a3e67c7a24ec1eedfea902c34660c081dd08b5f138a3be79716e6a34bce60698737c7570b45285d98ab73e864823c76ab22fd472c56fca3475e2e4376048ac44ba79ec2757b543cb81d4ce785a13f0bec2b531c73fa326adb9ca9a90f84623b303c76a79ab82ab0a480b64ea7748fe610589c91f0df8d1044a993d8f7a39b05e100c54c11e6517df08329a78a9c300ec9b1a803d376d7464cdc70e4b15d8cac90dfa022e7d6099441cafa9a183b8e6ee9060584d722abfc4ccf49e6fa46508f5bb6d922344e58ff3aaad2f86efedf728b6cb2dcd6216b04fe88f4ba3862b75d0e042aaa1151cf47c4dd2f91033a9139b047e7674679342687a543a721ba9fa238888e3ed8821729264dbba1191aa9b156e87fdb50e498edb6551509f228e8f3a5681220ba90bd8cf26e41a48901eb51d7fc760f367321e7c684c8abdb3ee7215203ba8de1ee9dfb5688c760edd84b62c737f8267e8f680f3fee0946728b6176a266193ff1cec2bff4616ca71909282bc94f655f271a78e84e82cb3c4490e5db2d20cb00667f15fc8ebd0e2d20bba0317d4e9af041f4618873e8b875b71c272c7d4d943b5a2231709ac0026a12c52cbfd01d04999dc40cf44210ad333e8919598a0bb175bc48ebb33ab9707f22472f3159379ca5bbe7fb062f3d7114edd4b862b659f104b341610b73747bd8a4757709b9b74f4754d960d136ded394d824a9363708ae8a96e5c172ff63a0634bf192fd08ab3794d8965b396213d1f3f16034efe6b521da353f5fada6364fc9a1afdeb615ef539ad0eff4fb0a02fd1fff317650247d953196c29b72cf2a601dcdd77a2d3e0c05a70a1a239615b645ec8fa566357e544c747d8d034a039da0d73b1999e6edb3273b60d2f3b9713639f8f796108cb4f452f92ed754bdf2aa8f6344141e3cee2ee7a9a017224949614249556f1984b4e8ce7b4d7ca15959230bfdbda94fc1ae27afc478cad60ffa0887f17f1e9a94d6ae8bf22662f2c02a8e2b08c13c5d1cf4f05a97c778a08b44e90f376a5731e3dc559cb45b1d83c92d40be1327f7d6938abfd598b426552ab8af82a4466670249f81f286b5698ff018e3ba548a2cf9d4e9e3f42f7920ffa1ef050ef5f2279a772e3a11d5c8cd9296148da1b96f1ece9f8bd44ea1d12e8130200f96c3c9504366f022759df6f0c83e40b108204e787325b2f3216a3bdb240b2ef9a78910302c75b1fe70c786bbe696bb5d5d0b326190ffc6ff709fa76edc3a7d74830a174715d7c02de77658afaa735f739c85259908e004bb4a165026bfeebe1bea235d00fb6b9dd49c568924847455693d6698648f7b20340fa7fbcf85926b8236fdb9a1da5bb01cd479b7acb9f20c2eda6fa1ffb1f63ae6488ca1145f73192ebc2ac4269dc104a2cbe3408e357a3541a6488d16978d2c3eb07397f6bf8239263b977dddee4f978fa5b6b50d0fa1e8472d201d04a8c5b4be72d1320492741006333cee7f36f4f9d62e244e4a7d9a68e489b2a90114dd4e613dccd50a43b2dea1cc1583df23a76e8457f2e6d1c01b39caa0531be7317e9c9c0dd1f49e8a2603fc27ca9c306c238f779b465f9991e6662c5a28d559858190c2c5f1d1598ff609da679bb0a5445331d167ba9de72086b3d05cb5d9f463d9d98d0b0c48c301cc0eadc7acd87dbed2cb7ecf3a54b92b545bc06c178633d58ec885a72a7dc706a03738ac66dca4e287436b4b32ddcaf00043071b85f3902ecf69b5319cec3089111138ae56fdb1de93bbec3d27c3a774c081f385d3739d18721e1234a4764c55185ca2f14033b66894dba34bdc8ed0edb0fe094edd27ad6025dc1963312541b992ed0d551025641417e1af5b606bc442b41c947caf29b7ce97505287c16c2cee49e67e8f8daf10013f633a2c632b4d2922119f0b368e3c7e70b2776c883c3b99ccaaa0a35bc18f81a3509d62a3c1380ae2b397f9f8d56bfdc1b90f1b5c6b9f36660c6c36981291216be8530e3dcb0bf64b9f2c4cfd8653e3bfac6df80e9c6d6d16304ed5609126b2c06b4e4b3a7929348a56d1ae4467d8bc9d713b62ca5f24cb565af82c80df79006c12ff80b46873715ae68ed1c553dcff2bf9cf5d0d342c74320b6b6c84c29ab57a01842753456198d0a98c1358aa74c57179d886ac636e61352d674d1c2a9a105070477cfcb57a31d01f5dae02dcadf82244b7c5a47414b0db7da5aaff1fe01669cbffed29f358c1c0d17220558df37d3d1cd25e0fa771db0c0f18d831b3e3f44993948c021c129b3bf3f1fccfcc597c1c1907f4455d6d1705268d684968dc22fea0edb3ae87ae0faf6f75293004e6ee4667b37422de7a7e6b5a76ad8232d62ab85706d5bad3c4cbb700409bd16f05d3ec8b3ccb555d5c3c64d36c886303045f78e8530e47c884fffb2159c76f6859241d1f8cddd168cc9b7233d7df5523b0e2454137f17903ba03355870f6f04b91efc34bc7cc9806b5941f74830ee8f14ba645769ce435898b9c7c051b89c09783847f1b53432d59699974fe6220a2e5cfaf4e2c05c5e0cb175156c9f54dced9d074be72c3b002db02bdcd58658d70f7dfcb07671618805fb635bbd779530cdcc7c0472cee9e45deb7c69f326fcbf0de86a12234441f7794d571b3d140ed40aa197886eb033d745ce3a132ecde332efd67d92f5cc833714050c20e853d286311286b8571bc07dcacd914f88229ba376092c2f1013814175364daf3bd633fb815abc6dc7e83e5e02f727db8f66ee9662fa68408db4c72e35f89c62c9ac40248e481e35ef52e633b9d38669dd1bda8534572fe493522c00cf30d5f7ef42327a38952757950a9ebd059713b4df3520b54fe1570c812ed01b353b0a5af1565b3e2ec9aa3ad17e5c19d3aac0546197a5077b80b847c850b66eea1ba241f67d4de5ef8318dccad4fcdc7c80e4bd8ad55f2c5941fd5baba083ca013ef4ca59a2e672a021bdc31f9c4484804e66d4a2aee8f8706600494fd000e2cdf68499cd0805fd1296e630bbc6e472e24a7c9bc6cf6e358db8de91b17c3bae2d4d793c239c513f3e3954a84af13e227147a4928ee4b77a97afee2aa6d349e9546c378d803c92e249b5faad2db2cfa552b00bb860d468c3657338fc1bd7aecb283b37d633c5c2a1263a87a4f07984d904bd5cafa45cc3abd9ae4535bbf93746c402c4d74d681727db709e17836208a3c5934af82e7e396dfe049ac5a3667f2340b5c50600cdc0101cbb5d0484df6324718772d83ffb4bec6825c90ec608fabd9fe35460c2875c3e5512fccf33f6733ab97535229a02eebc20836289e2f99ee954c88bdeebb29f3e0802f4ae69d7e6c9192e3ea0192d46687bc482aa527234fa48636a70f67754a90c753e9922bfb78de37345ed399382ba5b34b161e623676cd49de5eb9344cddfb1bd70f5c048022d771027746193704585621cc2a83c6f0b834de8c2e6426e9c26a735b2141b556be769878ef9a7298e6c6e23dcd41f7b7d0949daa2c84c2f8bc742d9d499c4ccc60c5313e188a719fa76e53f88025b2a19c9413f393eb3417ba18dce8bc20189158649684d0eddbd12d5a34b866e7ec468a01fa2eb8dea14b969fbb4b39816984a9369f58b455511ed7712b095101728e2ab924eb9a48ad63cbba86e1e5a553f93665e525e5ce0648d42323560a642ba78e0b291b151786a12cab1d700baaabe3d916061b9e2e74e59bea8d64122caa07e4a5a757e6898ba6bc9ea653702aa073371b8c64c16852f0383d5a0e66623ab90444faedb9fb90044c7844f581636e12f562fe61ff013b859531f0411752e55e9c4adad873e04719089702fb413b595809821f72cc3582d9b7bc2631d21f22da6d3f22e9cab65087241c0acc93b3240f9551bdbf2e151c8093cc308f52dae7bbf182750896eae36b199d5375bdff3711fab9ecc2d8542c535355d5a4a9ae26dfe7f4dbba5a69161993eb6b38db883d1e0eb0f52ecc7582e380f9743bfcddcf29efa13faffa435a8b33d63b5aa8352afb19bf853f73ee50fe852a9c21797e580506eec8438c95589c80febd7758e54adcf5a39780fa9ad1d328247bdf8c1e6d86418bc6e8b6e71d25a63afae7a8876874f85e61be72e62d21a24448d2f46f90eb453eb1e714f88b6289d6af30c3b006ab1cd287bbb512be6438ea8396a99d884f2ee6e82211f360082906bcadf8f5114b49c4447c84c2591c7d23adaa5689a20fa0db255f0ed72c5aa70eced8fa11acaba103909def550c331a8de96bd4924e2d91fbf7e28d1689d3c713abc14c497f8fd33ad60e7166da6c6f269c5f25dec00cc3c0b3f598ca9153ad53de1c1fee4e6fea25ab445cea91865f1a1fb725a016b832b7c142a259f1ebed6537309cdb0fece494dc4f63de4e4123ab7f04c3fa32fbdb58b9c425b6aebf43761f92bc48b39a07246145b4c0110464837432a65b594244066026f9036f145d89cf0bebb17aad180da8a4bd55a1a044675b063e4dd8e2ecfc3e3345ba4de9dc5a587baaedcab82777dfa81857de05e8bf9b9807eca3b55f4b2d5b0b50c5b827a9ea714e9851926e41c09b59563689286a27d829f80ff803ae4aec79ad3dd36b751ba0aa4ae7b7c387486d5f78d02d50b6d0756bf895dca6ed2339496cce819d11e91126ccc262cf38127fa1ec02119a185f9bdc67034d433d79482afca2edb485dc36086ba0720d4b00a617e37d41063a655190ab80ac0bae3ff1819a34ea97cf932da6528dfa3df50648f54f657410858f77fdbd21dfdef0ccaf201bdc62386a04da306ee7a848848b0b3ae98c6209c4fcde94d61a114b86255a3285870185693906b35dd1a9df45970349f906eb8942935be442ee8958712036a3d3db0a1594cf791ca13db8807f2ba29ebdbb14a91a57cc3355aec1bf70e857a3d785405f1067a9843d315eb725004da9b0c9cecbdebe66ca55865b60f6cb5f85389522657b597f11745b27481a2100fe4c88842a5095ddc04db2035f0a40b7c40a43a8b1cd0edd7b039004a0d7e59f55b30290c9fbb40faa478941ff1c338b9aadd414bd3e26089d55a1112c204d457ea860823fcf404640361cfaae6be465359e197688575425b048bb5ecfb260aa0dce15ee56640590590915fb1cc1cb8b5155b407519a996b47bb49f8c51c62ee147e901ad05dbb834a15e57bd891346fcb852a704635004f4df8b729edd14e36881dfad166a3b15dcc52d557888ca852c99225816e810b1b80e33e51298bd0b6bb08856d8102bf9a972dbbfd1fac4f38a3125c011bb92a9fbd597173ab381b7cfa2d12a160a1970a1b4d82e5a7cd24a141d598f4ca1fd3fc7bdaaa8accab4bd14cfe738422b0e5b2e29977a8f8637178f7e86b2db2aead99651cbe1a20b076c709399f737cf06429820a418cbe65891a4c3ebd55b072cc9552e8e3a3ae6c28ea8be74ec2b3f27ae636f9f754fe5ec5716a17adfd0c77f14ed6f5bcb9c4878bb5e87bd989c12d8388b2f66b51f4e2f574f01bae83a775d8d670ab5bfffadcfbf411692738bd7bfeb8063aefc7c2558df68d40930519de0346e70b9c999d2ef1dd864e3183fdd0aa36b3e5b045d3e921d0418d702f210821467616d04c151dd9c1840b6e7bc71a91c072a9588d3e997272d18f0bf138dd4099ba0e1a5b2196cf0ee46f7b4d6ce9bfeb33aaaba86fbb5f8d42fa02950d4b314565f47490718d4986f6bf6b00fc5db40fa01fab051c6295328e0b87fa3f9eb6796ea335061c4abe24b3f4fccacf5e22b41b33d4c8d3fef7bcdf22671859216b063467789e9695ae7070ffbd60dd40d160ec3cc9dc99cd314e922c0088ba4d1ab34e9cc6143662c05d08e7e816322c4324f4420b301d1445fce02561309c5579a90bbd72f7bf78801cebf0123c828572c8621ba4ee899d7cabadcf280c64bd91d7a0836df10763b1c75309f4fea7c36cd2401d9696fba985d98bcc59b3cc81d398d72c22b945340c240d7458a1273c39301677eb95683947b9bb7d6f3bb8664a55a8487041358fbb64c8772911ded35d8bbcb37760d7aba430488a5e26402495b3d09f0150a0f9b2039735656a9943d83b5c4a7cf7a4d1e62cc8c347134f7b97730c4456ce7826212da48332c72c902dcf2a4d77b6fb3e87723846a9c7471c879147f4bbdf0a2c2bba64d8f87afa2a3297c8682d5565585bbc41a92dd64befcf8425c065f2ae8c57701674eef8396d8e3b996a6d6abfe94c999e5e1aa20037f9451042e8ec79a3b6feb5632c073c8c5fab530089781c6d91c4872dfd4520de6da9a76ce8983a5a56c79b87a33f2b0e469d526eb37ae6308ddb4f67e373a22be74bc20678f974e0014adf8c78f99b0e56dd286062da2ac43d30610dac40a37916818661a27e2b48b33aadb5e6fa086c865d438e04bfd4fa5c98903f4057a2acda4860e5544d88c82f17cf846aa51164ce4016fb3a70cab25fa517d4c3a9a39d2588fa42f48dd49faa088fa19c6be6ebef8154d2f3684e2eca212ebed47996279ff071ea8bf09515fd05afbeff090ea245cc1c192a737959e786d98c83b3ee53d46d71a2834e67aa5f77d89b0a28c161ef5fbccb39d899b96fda2279ebb7159f13049a20e6ace44efb021729d6d0fff2fff4a2f009e8c9ead3e6c6209734b47a1cb811534b0cdebacaead592641b6711c04b41c87f73ee531b37741f20b47cfd4298e7a82fe6a36a7905e3ee9bc7f0f73fd00158121d0489b90a08300bb003178cfbd2c269a46f96e56012609ed0cbb9fa64e9ceb6d6b2a114135abf8316730d317685e6f65cad571a03352eaf9447d53306552ef6ca774642301b9e307f029fe03ef6560c4771204e7a5920d5b5eb1702e6dabb65f8ba095c84289606edd04b9e693660366f88e8f7e09cb029aedeb540bf6d1f21d244c85d414f5ed64122d2bd1470b2f0bb7df63fd0b08b0b8d9bcf58d6c8ff7c3e9f4ff899547e3b83db5388b2abdc7beaf6aaf708926423ce5407fc0dec8954ba4c7498d13185295a4d176077ed3bf46a558eaa927cabc1831912e6ab80fee467555a1857a0ae1d10075ea1c7ca9bbe4b5818555546e93ae0ae62376ffe73600e4770c4715a6d78767f33923a0a6118b67cc019622de20a6ea1f341b5c8d209610e4e2f26c2e4f46628a8570169aa742706023e5eea73baa203f07ab07cc8bb0842aff3b28076aaace5ad9e1c3e9351e918b9f866b1f16dc98db8117b9cba24d6a3ca079eb2c20232460cd2d43de63b8044040f8afad5e99da5de55a4c79934b446a062499485446f2dca16061c042cf46b871eabc9b3dd04e8eb740c924d56954b35ec8b3459392f93e8e52946fd062eebb8ae306d42cdbabc8579a3b119ca4e96b607a402af92d60c44af4ba759ac503230dea9dcdbff9a91f938bcf6df28b18b8ed8e4eb3d8a2a390834f1cc312cdf57cde6957c8cfb8c392de2c50707ccf364ab1f4e1e44a5af558898c933ca58f637e4e4177df231b66e31b3f0c64680c9251a96b958b86f36450364c6a3b30f3d2276ebcf8761d06f9359b2a0684277ad3a13cb9bc6001e22d9d2621e2face2d633e157f5f4f491bd2d0a402043c85c1efe591bfe72fcaa8dd0fb78b75088dd90269a417d47663c263cff388ea6198e5f19a5223e6ecb645fbd1f680978afc55a03777d6f4e84bdbfc85b7a2b6999a0891769955edc537b7e48f36df9188d2dc78a9bdedeeffd68de81acb721ef75b5cddbd4abf24e1d97a2e4edaac0750520460d53f47229abcc92ea1955dbc88fc2a392908bd2e9fc632c52870a9649f18c84688e4c0e9fcc24d961c03a494ff465830545d688b9a5058b6f16c57c67b4d76bc80440a93b23828f42e91308b7de11a045bd2286dce7405f5d3d0bb078b0c08b90dd3c190e47462248ca80a6a0bba203ed9f3a3150f007ec4ae61df68a3e13d30ab2976f973fa5c42f54f83f07d8550e6ff261095a02210b3960a672ec92e87ac247add5f419067ecae1f187bc63ea80a9dbe996ab86b946ac01cf7a81d4b710b48b06a8f12448d41f75e7f073ce12859be72182e8413f9f48ea8a363580c63d21ff0fc8989c45ebf08528ff8ea222148043b0c0b99dfbd39e04a6bd8958b91ed6fc92e8b7aaf49c1cb023e25c3d1cfd7b78b1571fa86213098be59e90e45606b72846bb8647c4cb9a9ef872bfa752bec0dbd89d04c14b5d4a078e9ffc0a2f664b15467231315a02da9d6cd4500eb53e60fbf7f4fdd2bafc3d3879c09d20aaea7aa5680cea7cf38ff5bba14319836dcedba62a0c41d77a92aa5615a717a8b741bf64ac9b16d35e5e04f1e1d944a4231a649e617c89061fe8b2c78cdd76889dcf27fa94f1eee8682d1d0beb224dadff0ca272fd22bb5019e008caa5edfee63684e62d0c079685c5af998d7b7229a73305f1672c4cef969574b66e79bd05731a1058a77223c1092dc9db491d29393ace5434c900f525db1866d859476b5fb82ee7a5bbd26c96f4136509c5801d37b5510c293f04b1d9b4620548e891b9cb59a0c3fbb1d5eed64c1558af51632d3cb40e1bed0170e32ccad9105b2d32dd7cf18835f6d04fb2a822de7d96d55b6f8cfcf96c6f47f201d11f0a691bd1f7a559ac047043cd91152b1fcc83ff94519e60eb3cc226433a617440bd74f331748e08633bc05e426eddd5593c49fb1cba12146716a6239a15164e8537431a5082cf341cf93014bb9d88bb691c9e7b78707c723be0fe33eae6edf455f06172a7e8acb73940a533f3265d5adcf839ea65d5b781ac59b75cd81a4596bffc86d11cc835b334c107298e40128f3cc1cf41605eb51faaeecbb961d284a2c7224f3575fde14115733f8b7e60da77e4f4bc51da8ed7ab2b913c934308705d32e06751ae498619e1eb5c760e1a7b650b38e67cc7a4356c4ebeaf499595fe3fa67ad3ae0f79d7e8a68a80c16be22ccb18db47c4b0a2cb3528b0f95b1f7ee7aab6384865e547dde066171addab36eb9abe3c9bb67e0fa3af4fa2dbec20e75f7ccb165cc4c56d1704b689aaae50f5201394446a6c2b33724bf065fc9012ceb7933331863e96daad1a2bed084b4d829ea46ac60d7147fd243eb066f303fa141ef9f1e1a60d18d900a87b8b828335c73358a3f9bb029b59940e84f1607f549bd5e51f2018ca29ca2413a5508d85413e9c075660808d7f950343c4e7df8a02f6c5e4b73cb523a4b95a90ea3a89cf3d1412a7c6ace3f1dd747e3d2c705db777abe51d0c4c1e941de9e1ab6ab42f3b6988fa7fd8ffe62df71c12bfd3bb60e9c5fffebfe80ceb7587f7f85488f5feaa6a5765e21b31c41a80f402e95f0559f58e338419473e41513fcb73dafcf142e4616c7fb0f3cae812afbb1a3e3e61dfa5d05cc6b38962185a639dc02b32204d34cd7cb053a69fb43ba9449371e1b8ff63dd69dd49c44d25e97e34f9c2c60356cf078358f75d68d3b52bc0e3dbe68000df195dfa0cf95e5c581ff0535fc5509a561f30b8c4d62bfa4836086baefafaf154d7f902fca7b34143ac4ea36a83757b875feafa120886442993a8aa69d96e0b6945f8962ab99a28e544e41a2bdf137ff10e8943cf40e79efd93da0ca76fbc6c1e3f770d600b9ba069d6614161af1b0b703abf02cde16580c520b0d116e242aefb2ab82fc6da9958a4fd167961903c863e6a50f8839be672aa9502f902565988f657393fdb1b9293117acb0769b5e46156f46bf2f8dafcbc076cc4fdd162396256f2aa4d9dbeb3ee60c4974991574818b93f48ab92c67a0cf0cc845cf920df935de30de703636ffc31cddcce8c3c6a06cb4b514cc510cafa6ad2cbe6f511a67db88aa61e9a672af4e5bca2610a74d08b7d94b155e02d383a7883d64de42dba890b3ea4ae19fc9e2ba50274363c20f208d0bc6af5d0a60f47bfc5816b023fdf0b04f733f119debbd09e3bc2c7c67e9ae6b75a30b0e8b867f5cf4471ddada9e3b5f2fc3c15c8514f9e468459b61bf4be057facc9db0272683fcf8ef02c13516d20614ca39bff4439a618b730c4d6f8747c23ef3b566eedb7e415c9a626fc513a1774217f6fca5b477fd9cb41da2a12dbbbbbef9894205b97a193e902bc32e9ef330b4c81aef763ccfe80d8a9cca6e57085153062e4df387fc8494d3b5c20556c3edff5d9876900290f7305dc808e07bdbee95ff02de55f91dc341f3548ac56e8a3fd89dfbf80e4cc6eebd536cd33eddbb651a33e53c32f81cea45ba9fffbadcb28cbf2e13788d7a929086d693dd0a44e0364f30488d8fa8028d2931ff35dafe4b07a82308e02d877824aaa88bc44015ffc0ded0678fda896c88e8c4821922d10c497d73ca238fe9fb98e506ae400795840b8807b057a221479b8ddef3e553a0dc72b6a6243a1b06abae84e8dfb62e43f9e16ccca6f828044ab96680347e347bdaedf1cd69ec300f6cbcb87cde4d2b33309da1a8acbbd78d6ebfe949d745d6a70fafc0f044ae3c38e233b0a50c0cf0816b9ccdf3b168c14572bacc32bbd55963bc56f5a28d259c90aa4bee49ff183d0b3dc19f7ffc3733e150eb62150c88673b4d59d4b739bc5b070f21e7b00e156366081b8fcd8308bf0ee99ab6f66594aa1afcf9ebcd58657ad4f567899d505deb89619f2adc3d128607648b3fdfbc993fa99c4a98b693b3cbc7b75107988c11aa79a3d3636c194d20d256a88df4182b5accea38fdf9a8971c69e08102035d3cb04cc8d4060874976e45c4771f861ee8c1b8b1ca1bac90463835f327e76c879925d81aa13e40f5877c405085d71f355aa5218d13b6cc58dc35433cc57db8020140eaa3df86f23841ff6962635f414dbc93bc7f2ea1b6205d8bd9b78f882257457b988c9a752bfb8139741d3944f33bdc902d74d93488d84544030fcc1eb0dc78331f18aa30535ffbdc119a9e1dadc2f9118a3ee51471dc8ceac138e04a9c71ca91a60425738b09050ef80e6b840b7be51ca508583767718dce386ee3c307c62f0a215be954ea61859a813fd43d59a53704f34ce1fa23a3bf20fc89806f07d002908b4e468cca3c07e5aa2a55b705c0e8d12b2c0ad6e4bf5c81ff4c9c05fe14f71ee3a3a79e0ad7c0754fc1ba39715d5bfd40d96f0ac3b66d254ce0312f8891a4b549c6d189ed87970d7a2bdffdb291845b9aeb2d0444bbc84d993e6f91de812a8f9055f71e981479ae7f37129a5c07b3dbacb3aa7c720eda27873d7210e6f28ae753a864dfacefbc940dbf0f3df7a0edd3ae05483e82a3ff7d73b22e8d9ed31cd877e24f361e30a72d20cc44763f663242ac3f6cb70b081c91ede76d4df8bd155807af91e6259bc6f266fc19716540a4550cf062b8f887b7dc51b9c315bb22f68b10f1f9834b90f183f3ada966edd255981ff0f35898b669d7d29fe78648d4c5f5962e20786bf3bfe2481f3e4c413e02092f3545ab77b14f5f15cf1a2169a873e924f6e0b170f56350aeb07b460d44dd481138e60d3c9087392b663ab41f222aff6ea169daa63f2625faaaee25fd4e286ba19ffe7d3874016911b3a64ba665989f048c2630380a316cc1de3c41c48c82f51ba426d3636b59711960573e6d79f89c8a4e6d6b86aa5d573d8924d871e20e6f0baae7b92fd025c0651f81c552fef69fab66d7ea991dc949ae79636c8fc7721d9daa25a4828894172d4b91ec1e83d3aac9aa750c0c56440c4a9cebe57bd868a04887c2fc9ed1801d1ca920826ccd4fb5c89c25fb308e11897e4d63df8337647f982e1165bee329859977be36792541e95e2ab29bf089a5bf089b43d2d68911ef4b293782095f95e0b4f9e4f097d7879511ff0d2207454a2beb81f6c330ce6a86f5b69f237e9cf6dd28f7bce0f77cf663d52a340c440fe5aafe5fb9382762a06ee748d285490372ca5360b6fe40532c37f24925f96e9698acbceca4efcc6fbd317263643466addaa20106bcf7828632305e4f2b71eca4ffc50781e94a2343fd1fa0cbc7e40c50f71e53210082c535da071084d24a60211fe06d71ac49b654955435fb5d54b2cbfe05830357667273c367e5a703acc3d7710ccd1724753a935bc3cf85868555a3cc47c575b6eb580540d392d0a98c0e2011fb246639add4c30a55f440f5a2b94d178fd09fa7080312fb169c8163987844ff149dcc355aeb65bc460490343998c08c70c739cfefafddf5dac919ce4c0a50d7f67c3ef7fc62b85a2db990f1c0dbbde68b9d177c7a05e787bd6289f79e835bb69c1867b9b965d9630a13032edca77b861050dcad62f461c3f094a44880c68c9a68648d3b3da6a97f1a2083328a713daed044a90cf4cbbb91410d526ee4bdca34fd749d32c50baeef881565c4d7dc97168beb159fa65156b63175098dd85e1843b09a38f4352ebe53a22a6e54fb2c626bc6ce9ecff764b08ede5bace7914b44ff1940527d7e633c871bedb419bfde1ef56de9483dffdac0fd622f49d86e105e841236289a355fe5c34fb88423241a33360cdfd70961aae24b68fea83fc0c4c79152f4b356a53e7a3ede047d3736a97e3f3699f4257a9a6f8aa279762ed8a9196a60715b1d955f1e821e3832f85df3545a9c579c7d344cc63776070618f056ec479289abce8ead478c12a2c008e4ee3eb5f2379f47c9a5e30e088bfdd81de7a475b7a3d57cb4413db0777d78d89b975fdaa7c3311b8fc4de1f5644e552bf43e35752f4e0ac6ea5338e3cf60ae878b3209fae81052733c9e919992627ddec617ef0776918b0f535c0f629ac766eb580404c59f417d556c5fb2dd3edabd8e181f5c8c22edf99440f59cf764074be1cfbf27f6bd521325fc4c6050f40cebdaf1a051ba5f229d360959aa5617e4453ea6ee135ed75351540d6663f433c105d2893c6210a28e3343a4692fcf937ee9c736e5de3dc18e22c1f58bf4bc66219f062b9625a3ad26471c0415de5f9844ed787ac427e559b29613c0529be58302fa97b264a5a8058f44d5a917a00d399b8920dd33f3197684c19202e99b1c1b1e4e8b7c501af04b47140512fb075c54e03f42320da8db3f0a3ff1c25b1fba4ea48bc05aabf073e2260f7f5d337379dbcee47cd47dddf0cf0a9aee3e4ba6b784a5ca6e94d7399f230a601137305ea241dd94f5bd3126e1022e846b9111d4fabf8dfe00ab6af13c275f3778a20a252e28f956285a41f1a56fb865ae9163944fe252854e15f563e7074a927acb1b104a06c97e14056524daf47c8707c79f26c59d2a10ebf201406f98e1f1793070f048e4909ea2c22cd15af0af01953c4a025aa6fc8fe5d82f2ecbbae5562e64ceda00fba08e33a30a6ed318453088d8cec909f3943803432d077f25f3de923eaa89901a3c8dfb7d139984e7a4b64f67a33b75f33529cd5b2df42d85be98329373ee5607c945b2682b5e1c9c68b0c8d7ae8d1b1839eb0174bdf998fb45a122511fe6875f16214b41032a981bc00a1f6606f27d22fcd59e4d121382ad518571048813b352a79165e5c474c68441add94ffe0c850d6bcc397a2de6c696ca75a1a940b1aecd6bf64fea2fec48594c62f5c849d18ec1861da6ae7fa45b2ad680c7defb1b338ba554d7ad01b8b0ac6e526b59da4380697b87d4169759db4e15ec0cfc10644b1214dc017e3c21714b285d3eeed01e40a15fa0b11e11720e0d1ad064155e4f15213e1e61289fd195cd6594d3b736707d631fbfa6bca5ae74fd9e3769416b5269b180dc0a72275721ca1a838250e7b92b727711b065f27591aca4756065709db1d63bdbcc690d21d4dfb2e3cba3daf530ccafa58cabb09c6655daec00d372634f2566d305b2e9ee46b3e10670e8c05ed3698c1d8d99b744b1a9c80e5b090f90d8915254a76220a2c0b280bbc6d171808c64afc5b9c0d3aee57015e1b4b87a030e351f842b266d252057df455d6ba382fda3bb459838e5f4d3298a47734fab03354efefc9f26f9b14ecdda1714646a85e4591be30befabaf73e8ab537916e62b16e50c681aa91cb735e1f2d21e34dd48455e0d93613e644768e03900c9ea6d5dc4fb306d59f640691a69c21af5fd24d90c6ed63dfb4bd4fb4336af2633046e8f0b2f814a7719950dca93a491c263af8b3a9778d25af7ab92c9d310d18cfad5a452d7f1a7f81d24890c3d78d8813a485509e8664ea329078dea66c47d76271859584131c4f6f614420cf35a94b11f225c71408ec014c28284d5c464a08d8f93487ceafbd0a117952e3366e19e0ba72686782a452403b427076b884e51118468b0629f2eaba721c7778de90b4369acab69e0e2ad435f8da9e5c1313a875037cbcb83e4e1487996a0ab0e7fa1cf3334115364fcedc6ce76cfa3ffc5d70a6e5ff8df32553c10073532a8410d6dc4c8ee0bd81a99883b800170f81b9cfac141452caf9dba667674e0e5b6d59020f87218a2e5349d258b58bda7926c86e33a6621dcd6c533ee5bb71c6a156cd92760309a807153ce646e227a1fa6892f26ead87238dcc53f79f0c5737518d84cec9865e5b1c32a845ccae212e2285ac0c0cf7ce258bdc74a48af8398460a18c6a23e3358c964ba2adc17e39c910268de897c36b62236bd7bc7efab85deb4f1da0fc88f4599bd7b6f2e1729364bb45e4f0c5e81450d9c41f731fa452135c4f47cd4c769d57b27b19d6e6b18214ea1197668f33c3584e4e1ba6cba8985a2f2289bbcdeda9b300e91c73fffbd3322f0ef4efcd10670cd2f7a1d88ead951b3fc54ed503ae99ad78d230516e5532fa960536ec3e4fdceea8ddf50937a00d695b19930a12dc31ecfc2d824b4c30c9f1e43dacdb4f111cf6141066ee1ae667186f1f3d8d422892b1305b43d7d7567da9d20bc3c715c20341eae298e55d2fe4da29d319dbbfde8dccdaa5a285b4d28813380628ad74f8a546abeec45fd55e8c0370c079ab37cc830eadf5df2dd8ffe1ded6a388a1f8090662399baa95a82fbae0df51d5539f04787b400be215cfbd0071783cfacbc1b0c2c4f6d9bdfb2171ea90dd1db60e002a72a00d8000cff1ee9ff700b3d2c4495cdbc07dda3cb2c247cd1268c5c71e3ca52df79d2dca76f552f0eb1a4a4496a3d469f8ac9af77dc2d5d07ae8773d0bb47f7f19d6a8d5ed7ee3607f1d83827a27710565e2ccb220f54b11ee6ffe6944d3fbc088ad3fde3ed166c9da60e6a69b2d6852e6f1b911626383a76e54216aeb68d39bd8555782fc043a464161f70a62404dca9133b9b67b3687988dc32b8ac9db2fca4ae7e8d8a9cdec82d967b89b2babb036124c39531671f073525aebf203730538f4b950f251997bca319484de905b59361fbc46ff9d6b10fa13ec8acfb84f488913064162a8edb77e7809e0ffb954bf0f2cbf143f19ada9235f5c75abae02889fb73f4d7e9ed78a82b3963a5bc6eb86c016f860d0a4b57d0ec66d2b8a0b59d955686caf5653317425c9829248b3407521472fb9f48b4cd7fe701f70f42d2d84a799509da41eaeac12525a299c8bd61de66ba5f73de28bfa721a6fe097a77d9a20142d07822927965bb66f61b75b66ab2c3f4af10ae736c6a496da1ee4fe401423663784c47e61c80d0c7ab759a0af1e1c6526c470be932abb079cdeed5f3cc1a65b04942b0f70ea9015d4a9df50f5833290aea92ffcb39e850b8082e46dd45defac088a7d70fac3c751006a7e3621ecb6cac69eed23760674af50b486cd2e212a307ff13dca125ee9a3011d64751af35ff3ab6766d232b392fcb01bbb084bbdb4cf95293b256fdb005b0f584a03816a7e99cde45c5d29cc072f5288939d543b7d457f6dacb21a5430309ed86b6aba12e3596a65e3bfbe549615184b0c6737a4e65685fb68b1820731990afb2745a69316b8cb537633943e3e2ca1e83a18fb316858a29bfe4e13b7d13007a4ec1e3d33b093c27be925f137e77c9ff863c1f316c4e62fef07f41f00fba4ec2c3f7b9ef2411d3e83c9c1fe37d21787ef49750b2e408995ef3ff290bf661a45edfad44c3db5ebf65f9df27bf3a0c604853d8e438e748f60508a7624a986e17910c447ce673b0e9de5c2115ab314b5d71c6072640d0c3b7e81c57e9a362ac8d02ff01217eecab63cd2d69e89dd31945a486b440c3594717a1fdeed3985eae0d03722af6ad07cdd1402755892efaf144b4215930e4e90c2d66e4112a84e4f729ebb7bf1fc0621e93d183e9642035eac3f2c7cce92036aa02ebed06b4b0fbd13f8a3fdd21d03272bf9f2eb3e6b32208a6eaffe526aa3da8f21d27d1e27d7060a4f08ffb1d3e13ec82d1b72b18b6d6ecfbb1d34edbb2fa57c5786222171f27cea5b5ad0894c949bb4e3ba125ea49b800000d7c3cc9da52af1529e242dc662ff554390603543bbd82e014c99c406cae362dec2517cabbbf24abb31a6be8106451db4286f3f8c027915e8ea7e9d756568e7d732dc3f24320cdf57c5e09e837311870c7d755b0cbe868d1c723b82b8cfc98d5dca63da08326f4731ba7478663596b19d9472ae470f0769887a7a32b3346dcdc121209512ca979812533ba9a4b83359a35846ee0beb23d77011d106b497d83cc7dfe8dfee1a2d3490f6092ed3307807069e6dff8fc7fea1b187b84524e2cfd7e9dab26bd5fe6e1bc62ab61f87ca36e9fb81f7cbee444b844a0a365ecc5f3d52809636bffde63493dd453d9526486e5ea2eef901bc36f6f168e215e344120e9042e98375abf82311a2043dd2aeaf4e807603c002a18578d7ce0afad66f1afac987b6da5236e4e11480d832b8a81ab2b87394585b689607ff4824f0b0d7f811d25bf3bb3ee1fb929633535d63a64261c275010e11f6e40d247908ca81779a7fcd89c182e0008698e25957a6c819a3c706a863e2c604d7e1b36bd6f0a96ef3f19e4e00730b5d2893cb3e644f4156cc65421f5456e40a8f1a8c5dd2a3282e087ff752b30c9fc5c25a94bfa90dbcef787b729254c8564d476c216e9b8a26be9f7516744ee1c6a1ca4b54fa594910fafbbd9dc2c4f7d5adf68a91671acddf0eeafd738f8242882afaea5ca09565c15100c580208b208a020450e8cc35b20ee3d61a3456969699d20d8671dc19160df3e4b40147b2da2b04c48690415028e318a5c5b25664827a9a737438743e197f4cd0001d2a3669171c1dc6e723429bf3188cf09c6f62d63274553897ef27716f9ae017465b2cf88bae0d0b85e32e32a96478b7b1dddd7617d9d86044ed3d5c7a6c9239380956b43f23d6dc3834cb3e98cfd9fc98610acc7a68c780ab6f8410756be55cbed227d081891a781b9ca437fc371054aaed2533145ce36c5902f1d2075326608847b294fe5e1fd792f137638782fe6536dd30f7cbbf848e28be116c139bc04364018ecce37ca62445b74b1b66936627f7f9c09491c61a46a494cbe7e40d45ea4b570e8eac1ddbd08cb41e81aee185ee413d82c68fbaf12d8e19318cf292be2b37bb73421dab96d5b9bfa0628e043c0030adefbbdfc95488a9f8dd4400adc9b4b3eb79707446aa2e7886d6c40dd0de83a5419cc383bebe75ca0ad1e41379e9e30a1f14f3cd4d5c81ba10c44e345b0899f5783b27f7713ed3672994f42a1750f68e745bb0f80251d5238c66fcaf88d661b6499ae280752806f5669a73456dcc978dc9f3c0b97394b7bcbc3719b18f4ce6e31bae3c4bec522b94523d6ddd92747195b7882a1f0c52f55a58be249dd653a67d1928c73531fc8fa9a7495273ff037fe086bb1d4b6f80ae8a95288f2b82303f864d197dbcb8227c96b5ac1e72fd9b31bf27ad331ef3488ac00074a29878308885c368ea04662a897605c28459cf743ab9cc4a58cf7942f0f37e369d7fd190408e98840ebb83152a94d5bd26686c66e04fe0eb9a1e3c7b30d5373945be0b02102a058e6c1f452ab07a31631670b6c40647de6336a889cc49590c4db643c18b308699c7386080f4950429541c772712e610f75c70f4a8d4c41a44fe731278d9bc23b2934eb926c358c7b4fb98a3bec728b94b1b528dc47212580607a55f6510e2e08ea1d717127720723769bd41fdfdc1401b0d0b03c166c11bc1e17c7deb0a8f0a1a0f5a9c6ca4a4e4b917029f786b1f00db2fb9afdb098491e5dcbf6c4546f054fdd6126ea2f3cdcb6f38b3e7403bbbb5387ec3f5cb6864faf8b994b667ee4f6f65810ec2a63126bf5f6ea6fd5395c645b90230537a192bd5d5396274941dec2a7688c30e5f8368e631b5e1085dd34361f5d5c5e410a549ba2db93d4058e6568093689566394f34e9d8ca6fd26a6034413681a98566809c741078f757a015ca91c90004976e00ac27aa6abd851d42a48505b6f1ffbae1fe2cc4087345ecc0cb6af2583beb11200e0100503f5f5ffeb4cf7e4215acc3337c0aabc77e45d13a90cc3fa94a5a14cdb4dc71a4153b09d5d41f7eec7362e495fd2b5f42f86fde8443e19623e00682384775555d5f133f4b4aeb42cba5e00c68033a9949134a6efd2cbc8be4dfd806b92208e20a709b87384680a2e9fc95c7a5961dcc21edaea050b13cf58df6247244083ed92ba88bb4ac3d1ebeeedb249724427afb84ebd460c208006520a7ac5302e8197ad1b4dbced05b65da398139a51effaa96cca007c0c24d81861e786f0520cd0fc1a1f72898091bbea6c30fba60f211073aba6a6a7b67416c3561c99482427707dfc224aced65547770be6008b7999ffc254c6061802dbf3d2ae1404e51245f1be52b927781fba3606ebaee4badaf968a972466b421152a40e1d228824126ac8689677bf8501af0c4eafb0f6782462a751302b31c88fa8fcaf9dd3571160af89365ee1728f49d47b4164990c09ad3aba36cb2c8b41c58dfbc3fccb61a5f6e9f025871232c16ea2928c8a2c79754b3fd204a2a3cfedd040c320b0ca8f9f5f4ca03e16dfd36bb86785b2b627b4db266ae4481abcc5d3375a1a5a547eea68a895fee0ccb43b64b159a3af4c71a5aa1de1cc45636be9f3ee273d9470bf8a7280e994dd58345a942b8443c371a5d02fa995bf621b6c7cfa73b60f5b3117f09de6dcdf2e45212192dd14f087366d67b49764f49bd94e77ae9d20641d3fe976651e3101cc452abf9667fcab88387dea094b7947bd7f3400e5791bcd1c8daf88932c9bc6009eef6c698d9daec5dee756d0e409c7d44e7898c55f8f68dc7ac0350591624a9097fedb0ba2d1a62ea9b4027aa5d4bfb02d571eb734eea98a68f224b3c8d7d22c7e4c5aaaa6199355ccef33fa9f53189a9de420303d741e64cc8fa5bac5f8cb57e4f14d46ebeaad626a80cf3428fa440c151a703b3db5a15aa6388623c05952f74d2cdf5c22514926a564285e92cb83c320850a831e1d7a2921e4d1774692f562f0d8a99c766087e34b615bb44359767d736bc3f682a5f764c46eadfc521bb4deb4077f94fafe804ca86ee140f677a5bf531a41abdfe06a04a6fe4b392967d267ccb0f561af3a3eafe5362948d9d1b19e20df830331a214cf0ef7da904694e0725d101614d5083b88208c331050d7af83460fdcd96806d222e0ae37fc3b193605d52b116b6ac74636bb4178872c782ee82629104af2b3bc3416fc7d28774238cec8d5f6c6fae4405587154c41b83f030c1d79a98b11bfe949830eeec5cc3519230ebc55161409d6fd629e4d5d9c9d25cb1fba252000aac5926940bf6c8802d4f64010f83a37f426a0bf1418a69eabb0e28081d934c0785917ac56f74b00488cd5113c155edc772ce0304a13915dd4d2edfca911764c1131ec93292ce8ffd40b7de56873f04562b07a37f3c34a299fe530aecdd4a703b20fde54c6ab5e3589d20fb16fa2faf213c5f987220aa75d8060a48b746cb75679700fe2e483da21330bcaea6176ef4ec2b0f2ee91cf467af2f26eaedbab1dcc7c818a6b4e937e5bb53e0a093c3b99127c6ac8feec24a4d0829b384d7f61f4b1dabd0660cf5c87b2109b13718857cf8d6d2aa0b60a3ea9b485d590d8cd097a47389e5951abee495202ac88add7c3a4b2ad103d03ad7c7483e7f869152d5e50b87af35cca0913ae360b3502645d68bc8d8410a8754319a1fc7d094fdb13047f772b18e3c66947c121fe48162b88a7e5f5e9655acf0579bc73dcf8f8d4c4909c066d6e208b78c634545be62e10ccf7f86b49eb45e4a0d549b4fb2dd9ecfc840197282aed113e56e2c6c82c830b1b206d95d3f202867ca3afaf2d17cc7b94899db093a14f83d660e68b606f69e2ead43b80280f440c3625baf82bb6b01340c9f3d37453d39fa7ca007ad7df5ffbe9bb9f1c8835579f0879da4bb1f3153ec6a77f08437f4adc1b36f5beea86e62f6ff807f82cd000afc4899e62c91e52aa8138386b607e034d0f55af25b2fc6f80ff70993ca3804084bd710d08492dd856580e63fbaccd4e27877f87c02426a32d995ce3a85a533dc7085e4a43694574492272b67113531088b8b3a4d47ddbdc38aa334f3d5f699f8fbc4baad5f736fbeb173eba52f3ea2ad8288e58479a2fde8f0920fb28c46a6c7813104d275d9c404a93116a86a94e13bfe685b2432c00ae4c008ac3d485a5d12c45184656a49a533eae36e434595c9c6f2cdde5d47c6a49a92771596152843028829a3932d33342f6e169936cb9dcd56d24f309edfad0f6b379f64b7109c819e058c8285d5a79b0789e7c7afe130c10cb41a9b973fa2a20cb4ba91762b67e0abb7863a7c212ba648419299c45021eb651936ec70ba6205c5eeb0cbf98acbb54eac318b4a19753372d4c0c3e77c10ee004d8d7df4d8cd4236cc02083313a252f84225934fe245fca52d9fa3f47ca9f00d159b2e321a0b8df8339fc32205aa0b5c374895515a0ac62de1acc895caf10765f4438324e908cd07547bbdd93d40eadcfc0892df9fe24fb27fa7eeca3db563f558de5c81d3ce9de33f86be62708f047e9ca87e50446fcf5c0c03ec3f43a7d32c2d91842571e99e6640ef85e272136a30807397b90fe0ccb3206b872f11f749e32cd9bac928279044da61ff2fdfefc3aa7e3fb43eaaddfb38d7ae326721f972a3d68f0470b550b512a4aabe015f6051e3d94d708c7833a45cfe3e0bb2bb447d31593d01a9ef348ea62f49826fef835e40c4f7baa9a61835fecf116fce8073e17733a0b37dd43c33be308304dbd6f387baca8ab484858fbdae5fa48873e9590f8f771e0f216eda42165c87e1a99934fec9e84abcc582ef407bc69a6ffe844eea57c02259dc5040b549c7027c088b12012d768f85344d4b6d9173292d4667a18c68f174fa4e9c5cfa1371feb2598a51e8c8c42b537724bd83017433efa6cda6f26560aba67918a3048c96178ae4103e7647e27bdb333c6aafeb8f9608210838585e699bd10c1a643159e51cd2ec63a89c476143287c6c37e4e4bcaf519c5f23859d2d57ec8ac9e41709e95fdc532777886bf0c329250b1dce5876152899794d05c5eb905abb53560e2a9b5b864a89b6d166393772330d9201b77b682c4578d90b0fae16fc2ffcb6a9b829054f7076007f33647c6daf7f3847ee79c183038ecea1c606f823367ab47b6170792bc409021b623188b76479418dce35d9094978860dbfe132031d83c3ee454f0f2d4baea1b1f044e553846bb8a02aa0932f14a847ecaf58bea7173586feefb17440304ca76a07c27b2536eb80e0901e6f3ea87dc77c7ed64ce6e16090dc26edfde46685e5f05c723c7b9754413e19b96c76fbc953ee3bed484af03286bb00d128fda610bad5d9a5c83daae03ecd53f423f75a06c55b72b6f6af8fb69f432e939476d44d5dfb2e6d981b28abc65e980c4d0c1ded4a7d594d55560cc850907dcc3f5074a1f89d4ccaafedcf6af17db91457e8fec446a4e278675f6816ae785724319f6451df55fad2474b2713c46d2e0bc7ceaa0f0c8ff665eec87826e2a9fe5c98cfce474b0fc06f215dd16162f1e9e02fb2e89fc28f2fd1d26cbbe6007567d8c77b08947c683f721c7a839dff388612faf20281e24f741436ea27d646f69f7bd029cb2cc3272f3152c043079c4a672b154ed26c01713863e6746748dc67d76c021da1cfed318f4b573ad0a42327ac8a31cca1b5689acb27d59ae404ec37e2e3b8c6325eb2616ef5bb07a1cc79662549afc3893913e807241338a6a08aaa3c07231c04212c9121f8111d59f356fa24e06b8c7ac924c4635420667ebe4da833f4a183e9ed362a0863d5b1e0be8685651fbdb26d97d6a0b4e54bbe3593059f133f4b85ce3ceb812f380d4f4bacc00e5d3f48a0835934c743c95d097b1542eeb87438e23cd5bae2ac6fa0c67c4e97f87cda7e0fdccaceb37c8f6d0a571e1954d158e9b25da0c94f0fa0ba184bcaa7b8a44b9ee45a67786dadeeada4f8d3755f184a75f85c90a635c6cb41de6967b691e98aaaa759bf0a5a127ad0c54a8f1b65cfa32cc47546ebe3017d32d384be6fba8995f6244711f6f0551e53ca651e63b0b9dd244f36ada11ddca328c5fdf3ea5e4c936d4dada2aafe23a4d81f070c011a6810ff4f8a3ff68a3d3c5bd5f2c115c641e3bfb4bc67e24fa62bb6744f56108e7c43e0c9d6ff75f390055e85ea96f94e4a1f29de2f7116d0d76879c15a98fa6315f60bce18f65b07306f892e8af3a3dae51772b55d75e022790fdb3e6b12d9ca9e630de42cfdd9ac41aad4200979c2e5008ab3ab258ae178ff8ed0ea53a51887ea16f3c68013881740d901eb7f08b6ca8b76226c138af8b845e684a2f2dcfb36c6b857e2b83e2ce842f819b164719e87d2e4e95d3eb597f8a47c55530e732ecc9387b0f6f07bf25a1c9e8ed2f6a69765fa6887780804b038144d223085444384cc1f0d91db38933ec913593a6d867d6a307405cf55ca5518409645c2bb316d79697814cb5124542035d7f0ae2e35140e2a168eb508355a61c8100e9c407ca9022421407b073ac3a6f7b6ebbd9849ae4d02745310425eb478508148717fdbe5eb809004e981ddc84a09b6ffb961fc8352fdae67fef0377580cf4a15ca7424b7cf84feb36b2fe169517f0a2642d64ec799a3e18411b8609e61d9a938ba932cca2955dcd48c460290cfd6b27495b8fb5ab847346d693513f30a84119a3a0d1b342c493d2b810e3339dbde1b835cedafe1f8703ce170db890b234933921468955053f0b4be5e491dad3065b5aea380700403d67e615e188a6239947d240d1376d464b843d75c00dfb61cc2925fd6cbb7574db35f9a85d2c6206f55447002c6d00aeb848141e07686692363855afa1ce057a4da6d205515bcb67a3978d4069748c9a59ff6257571285cbf6add05f461e42f25c9d8540d74f5ff5cc066621b31ee8b3f8e5894635641770846194675b59e1690abadebb042dcdf416ff8b58c43f449dbc6826670ad1b5d3c3904c2ea13c51652b050468eae7f15901a1215c7206fea080482352101716e7ca42eeff00088e79eeff11056c9fdcd2c320723f4ad0ab7e2bc0603ffea25918f7b8c35de76fd7aa41b6482178c073c79789baf5203d1c89b7c687a2f1ff46ae4e24f19bddf97220babc8942b2513fcf61eaf4f8658283456fd7e8d33503af41177c939a8baca9c8d79390bd2f3f2932555907778a17430ede3bae0c0d261b35a142ff646641bb4a796fd6f4815282438a8fd764b57228029e2e992f2784316f2d838cffbdb21e5444fba83d3a4ced866f6d8001f1469cf42a56cadc07e14b92d0c2fcb4c39fda83d065538a4ddcfb4a50120f6a53677a966dd597d088ddcf0a0fa3b347471a66748a7cf51b9d17d36c56aaffd227ef6e5275279a404b725490ecdbcc3628b08d51fe8064431247e096e04df586ff7e30272b3f0a9a4617388ef293283743cbc0e686fb5119a0da88b0d49e8157d7f8a46eaeb28fac03dd9e763cc2e6fd502c9cffc8d31ed2d532ba6a92f7d7463d8958e81e27c6cb0ebfe05c70fa9938ed2a2d828cc32cc2724d9761fb64745403dfbdef5aa04bc4a35dbb85dafd45d5e7002c2aacb437c39b3f740cdb0e75dadb67a75a3b523e9c47a9859f8ae103367f94671bd84d0a1dc4a4cfa2aa26a63a9ce803af69ea1824fe985eac8ea4a78bca26b14d969960ea5e0f83ee5e5a052093d252866ffcbb7092671e25febbfd6357c0409ead8d2c61d074570e0ce4cb48c372c60ed35c05e1003cec60605786fc0aa7fcd72e7926249d64d85cda972929f048f8869916e95701d07bb9a93b58e2bf75dcbec37282f8dd2742de92c510a0c706a46ecb234592eeb1c252d0302ff0390f2ed2b3f837c8631ff0726f861b8350e5f2e7b433134ba5758e28b7ee11e6b03f6936a691777e0b86219766b420c6a8aea4aad74e67d92566534a5961fc66bdf1994029bff4c0d25291586f3d844bc9d5df2b4ffa899934397689bbd483304999e4a784334fc19f8119641c0aa2f076346c88d90d59628886eddbad108e706ffadaa79fe05ab34fabc62519b154a0d2ac85b8f622981f31ba35c5aac73a5e5913b1333fbec16d8d01f55338b384006cfebe7572cbbaccee22aa5b38cfc9aee64949b849aacc4c50f3d14c0ad96bef1b21d8c66a288543db16883969c91ab868aa27a4fce016337a70b7e65ec738bf440f2ed3b105df1f64e6a71199c1575fb9b92e9a378bbeebc0c0c7d863464017bf480cb5cf467635be6f652e7e80585ab06f4e62e571b5921a7c3b4ea3363a117a6327b28b6f055a8a91db008cac58326713d2c5ec8a997f9d099b16cc8199edf3335b74a0d20c9b035f19b4040d2dd7f0c4a30c0a4b7980f216f89b37855fd55f1db587165f80416032adcdbd04d5c881af8c697dd335258a701ac60a135e693d9f71a9cb8c14e5e0c7b21eb8c189728f73f75a1f31ff8c9e04c87980be5c0e7447239ce31a46feaea8501c77c921c7a1f254d8305f854e472a8285e8ac1ed3c5c8823243114678a1f0ee96feab3db319250b070bd590e35e87c4288056228141027e05a60cbfd4a36e3a3c4a75e553bc657b982dab8db96a0d519a2c9cc8aed0ca6d198e8922eebb64baf542bfea40bc9c429ebefe7c0d2a3d08a667c622881414dbd691d44835cac4e3e76372cefcc37116af3df1cc73f5c68bbb48093ca8c0a7ae23eac63d2becd8404a9cf05bcb411c5283d77e66ab391b8a1b8011e6e340f6a761c776c4dcbda1289b7edb8248815b09cd231dcab1b70a0677f2f94f34ac138242bd6fc315b8fb84dec9ea2a8b08b2e634be79adb7f099595b8a4c1afc53b020e4d13c564e95fe27055610285026b40e2cf2f715cc71ef511dfb1fe89ad27a56aa82832dd12db928e67a4d8272b7c3c737661e8d273196d0e0e91e8b6b3f5040d1707f70623dbc4757067ef05b95f41e097ae75ad3f1a0f8c628540fe6bce5a735f4f79edc394bd38e9e0d006a10b7b72e2876561c6b9f609168f3fb0c12dfc07ba13347ac3f1671ddde7e87c2a4485274dbc092f2484f023ed7f0cac04424acfd902e0e3caf2a232f9c696e8aec6a664c08d0cdf890584d71b5f7395923381280b653fb331119e242c884f49dce85e2de292ec2276e8103c9ee461bb9786e37ea92b85de4ff540b78c789aad0513604212a9a535507a48a3d001a7c27964e50ea0050f470ec3a4e439a49b09f43d61e0b9a8dd37cc9d42cc68986f019efc188e50e676b114559bff436062607d7fb89dc0390d42404cdee24fce6e85afd38cdd69ed5ad21b5d4aa720a07e3a439743a4269f38d4fc54df1a8b3d98e2dd8dbe4b0a4ef93571a954fc96f2ea80c806dc5bf3f30dfe33d9f428a7a74a2a18bf9944ed68e80c7d8b41be6b504283ea3a30a47d69746835a9126a6c30837b607ce79f4d2cb73162192425f80e2c9b0667efca0bbc19a1b56db37fc796155449f1a4209cf10a8dbe93f3aa7243ca1af8390fda8b70d7d029b8d688e1acef0a233951dc4a381e190f3eea3161c5f2713253f7efc905c6318ec1c9f778749baa7929c93755f6f5124c6ac5d7fee8db7f1022a2bd37c2589797b2b342105b065c6615baf1a3d6b097e5bbc9ea93aa1d06dcd75f4fb57f2585897628f6254d9aaa39f5df1960aec7d749c7a5a115d2c871ef5255761bc49f141817722162ff52bc61ce6b446ac373644e23fe034c4abe1eb12c56796d35b52e3b80ade5f4b6c00f52519308bea3648b717bd9223344e60544ef968c976924c7092f443878d3d3dbda8eb7d28f6ab3e3cb04778809a34b4b702f680ab45ea809696243fd3ac9a27ed40d7ab62c5b2fdc50f5c2c848322ba5fdc5dbafc9b0a39dc302caddd6512fccaaec526bec7e94757a7d87b67398593e8c9fc7c03c8c9913b9c48a2154bb591d65033743f9a9dcef94fd96038748fd922d0a986a75249336910e7252dd14fa6aceee026c0f27bf4bb25d1c64c226ff7cbfffcff11dac0a32e0f4042c3d02df44045abb52165755e72e5062aef01565ffa0d9fdc2a6e9f601219efd01f9bd61452db244dd47f89be67ba4f9af48c6e1ba90fd05e0b59b46205be7e82fc0063ecb83e93aedf312d800823a6794735d34ce307550ba301b8d08c79b1721883a11364dcd3e9cad48ca1e9a864c30aa0ba836792b54849182c27831617bc9706ec8b15786fe129792417d349ea09c71e02f79825fb48ba11fb89a5e9d31b7d47764f08e09634a008f6341af4f4fbb701e728407abd8d51285979b8963a3df8570ecc5dce0b56a6b063e93cc3ee800a85acef876b9dd43aa65ac4aa0e1ea61e2b24c824a2bb9f47317a607ebd3a4e55d33a3052796f0c3b6e27b454e7bd3a1a82ebf2e30d0d9b43f3c8fe7a41a69e8ab9408ce7ff6248f91fddc7b2b1cdd5a34353e44f161e7bebbd7790b6ec6e4e26c8b634120d77ee3050a6971a77e27d900b7cbef87f1ab8ead8edf8739cbaf56aa07badd7ced1e238d8d7fb4eb871acfab77c48a05b2ecd6bb6586eee01a25392e4f5c50695729e96e07965e6aca3902f681ef4231500a14571503f89938e216626c9ff6d30ebeb8870da53f1284ebe7d4ea7a5e9062a6af442ab8afaed2ca9a08658221779adc35656377e5e09160da6a2fc11beb0bfd6a8794f6ffe83c6600010cbbcfd4fca3969fc857f1c5ffd9cce84a58d87e0bdd21acf9762f30e7cc36b843465438802245d877036f28192c959fc93bbea1ca6bca3d571e9c0f5930d6ec4924522730d5bfe9d24c07903c8832d801368b5038b790d207a4e98bdf9ff99b3c0bc851ef1fcc00b3d75238efc070dc725cb3bf834804f40a8ff6536e5e11bfb22918d1bf14e6d9c4f10fa6177163b0670aa839670f1b3d1cdb3bb8beccc0b35a71c0034c16614fdc04168afbfe83587658537da54feaeb3b3fc23391be0dec6c67084e98ad572c1cdfd849f8178503a5780194296321cf8ca89d0272aa12b090349ac2322f6a567fcb04b943adca8bc02052bd6e2bb04c9e3d14176464bea1d3284e89edeaacc1b0a755061919c5eb3e7d1b0128b1fb07e3a83614d60db74623f9fc43faa80171bb0cd88d9f2c75199a453820fe86e0ea9eb8d25fe6541afe5cd432d291f5530153f90befe6ab959a00cc40a66ae92d6d87a08b03048d9b6734fbd4443b2c3cd49844d1e089b8cc3aa97420b499315c587d8a3056c65dc22352be5e75bda4634093e28684d310fa1acf80608aea12d2436537bfbe5fc7170ef0f171e6f1514d544f9a9abf01a7ab84737aca553d77641c9952670814c18d98973bcbcee18ea25162b397be518581a4e30fea440946b06cc0b8f12b3eeef3ef909d4afd59ab4a5ca9172c13652e3788c6e4926ea75e39d4e49237deab0f1796d00055a7ca8677e6743d19db0f6d20d3bc9f033395896942aa4e9a851efc42d65ba8695f6e493970a4050513c29d9646cf0a2e884cf164251d6149541827f1ff038a591a5cf150d92c28a6149d10ad5684954ebcaa0960413c387000da4bda25a172a098378f433741bb1afd30a8b0fafcfd9c6e1758c4c1a932bfa0a30cac6eeb5558a7fa58d539e0d44c5c30cc16aa255e9221004607559003f088cb93db1afbf28b4a64fbe53746b9e60ee1eceb02b6c308f70aee6381be82f90df4ca33c187b62ed170e3c5d022dd155610b4c94bfe70d29f3702e334aed0dfc9aed7829cbd3a7476426fa4a7bb8efee32872a4b5f7b490bb6b6b3ffb5ec98ed49e0d2b16c0493e598c6ada9a6f5d815d479581ee45a475460f4206dcdfd565b8caa4cee9852749f3056da0dce9e939c5df85e7755d6784b8ed49c1368cf4e66e0be8acf494f0c930183d07b14809d699057277087e7ddad1171759a3ffe3fcbfbc2804dc3432c6b80b5c94a4a59ba144be1e74b2554ce193e6a4072b172a46126587b1c1cb346c9a2fbc1e88ccd4d87be0844feaac67c76c8df501d55a93125983370aaac43f30eec1cec10d1f211774a5622ca52cd1290f9125c90649a9c7ff4f4b4b2b75ccc4ff2b68f1b603cd98f34384c20e2af546b9c4c3753e408c71d46e46b0a384711ec177c1effd229c4e696d2e721d9e81b7839b33f0ff2357b79db71297e2cad8a04156725d0ff628de95d124555391b1ec9cd46005aa289a4971b6108d7cd69a89f1426129449e4a3d86987867c1abb540d8dcaef0086c6502beb8c10dca71d09eba8ef235e3b519a337fda1e9801c5720396f8cea8a25c592d97778d0889eb834434a3cdd36c07aec4d1e5613b1cc2d84c2639e14b599c5a617b19b957ad5d03ad10d98dd04e565b93012e90eb2d5ad800b6f113e49cd70b6b76ff29cd4145728760775846e19e7369c6c5d3aca4f01c08abe2542088fdddd8cd06e5a7c8707817f230fc0d0c329a741618971e83cb07329a469fbe564f9453291a4dc07f7df395003c22dbfe668a2ceeccc76735662880bf8780808e61a2e604b4b560f4c2738350dcef84587a2906d9d217a0c5f478a9f7fba5303ddef133f049d08f48669ba7eec71136b94198b0933aaf70cc0ae3ef00d008716ecb01fee17d86e0b328c60fddde798574a4ffa5a9db85d7d78a012d956c581d7ce0d9de4b840a0001d0274ab99d8d8faea4c201bb9e296e40c31bc538c1d09617c6483ba9ce77a66ca3616acd00cf91de1e5856d7b18a32b940766adc58438a0ac96cf920dbee368bec106d2d419ec1fa7b14cfe8ffafc346fd67ba79e21099f474efc4b4e5073db3ead740176f1c83c4d48bc3da28c933fd5f07314c41700e31119526bfefdf67f9b85109898205357d5b09b3be0e9b204ce289740adfacc5f88161149d5f66139792a8891dab7de955a0c2c0703e0fb379a744f73babd31741c6f6c8925bb87c41569801bc8d4be18bd8402a772c11548792bd49adca7162df8c4eaa6328b6ac8e165151eff73732fee330f1b0d420fb12804bd0c605e10256ab643b256096e14337a8d0452cf3dda5d1986b4d8e142338509dcbe8e5b85ff90bcf3a477d63af47fde4f97adbbc98b6ed21e6410288f26ac072712c70ac6bd81f334644aefc580e447f7f6f228016661489c7da159973ba0b058cfe4d66af53f50c86abb31aaeb53e316e1433a9d4ce2781a683c4b0ff47e3a95286b45a3651f62f65ac842d9f3e3224fc09dc0da69a53d22ef7219ff1da3288a56516c90a07357ea68c8b48c9c89b5ddfc2cba35b72a585892e06d3db4062313604a704c085e54986559a8faf04b940967f18f6b3c4369c6d3d4e1dd1672bd19266b8d1b36c442b6d2532fe55faf946566064ed9a6929407057db3e153b7e07246761e94ea93014ca759c613bb6a8bd99a5c0a78ace32088674dc724e26581c662e9aa10d9d905993b08205f3d9a16253f00dc78faee6b24dc13154dc9b0c7e0dcbda35d0c60291226f846571fd7c64e5b88221cd58df1dca0bff7a5abfa5d61ed60f833e459d31bca7b0d89ef5a223c89ffb662a8ba9260d8dd6fb0fe02a3892274dcd1e47c9bf85cd0bddf1084e8940281425d157f1feaf819fe5a14de8c8bac2232a432761985b98decb72cc0054647b66e61f0f3493c5813c2dc3d17a4468019d910361e1f322090789a079d4610f8b81c53912e428cb72c1e55805c4faaa9a0e3a876e9f7ca1acf952f6d53455f620d0085dee3af718a743b5c6d75e5c452895de82ceb2323465f42ccf8f681c5753e762d20e67dbd1003a57463510057f76da6d5dbe853a9effb38bc22703047a606cf11d87580e8f1afd8e78c1e0220e275b6be7dc9d6237d4b7505d4ef16ef5f977c4ad789c6f71a48909812fe6b53e9773eb467372fdb39cbb395f5d2be0f224bfaa256f314f79fbf48ecc418d3f871c5c2db98f071875239acc580d2f10222abf7cc3a6e6ba869a89ba8e3444df007e5d09bfd24c4db51810f5cbe0089796ed716029551e88932817888c112a4b01bde428aca48908c652a659125d555368bf83b5decb0bd43808a9ef924890811ce67549d3b5aabf592fe6ebe96f5a71fc49e038e4ae543131facd7b730dc8553a6454ccf45012130fa16de214caf1d82771e30b0d8463995829a8b9788769f5e580432f7388359b85af5bb2b0645667f4a5877e1f29abb32950430a5f3fa7f95cef1264599057497914b9ef4d2340d80decfb1dbedb06016805bc47dd0cd1d5cedde4f6ce78eb50f23467342a219af355187a28a412facc9da83dad1dc6f8797a8b9f6b098a0dc73c87098f21b4902efa04f47c60644a8a4c67d64906402ca63ede09dd95963bc66e9ef57ac91efcc08e84f3b8538593524abe589b75d65c044a869291eaa186d28198ea4730bafd32d5922af4f9a1cd2e6f2a907e7fa59bd14c93bb3a8096d2e809ae16e869ffd77d2b449a811701333863993f79869300ffe64ce92ff406b41975b9ee222904a6dc2f5cf8b252f86a2c31a977f9038c989569009cb1455e63e9851a4747905cb90e6465c8a71e702eb444318ffa8b4cacf25773a78be12cd6353bfabe1f8549b598379dbf641b26b6efc0b5cc86d07d4cdaea0500077d1c4e01187618892d755e348bcdf741ca575cb772d9caed88e416ba80c01c7d73ebb58d067ca9cce4e69d5952a294d23311afad72518afad81cef417d059a24d6bfa28158710545dafcd7a8d38b6ec483fa525d401b539a40268e035da917565c19efc9950263d2d3baac27cec6e3305b28f0836b9582d5d9b83047b8bf8740acb0897b3da3bd399a8cabfb0ab733c4b825afe3956a437809972ffa269fe7d5d7a341b0c19791e460e01507a257556ff46cb196ccd091000ceaa307d4d94b4b3340cf0efc55388d091e4b8167ec1030f3cf0a4f40f1e89329d0463ee49a9d4f14e6a954a4feadebb2df6def51c5cbfa5e7bfce374accda57c98e951d2ecf8d3995e16d9eb7d961de46bcf0a61f399698a71ffc7e8929b8a821d906af3488fdde692e11998869cea5ba83db9b25b479ff020ec47d8db04ec3be04e75dedf3559177fd85dfe9dce4503d4363208f0953ee3b5183baf83e5b9651ba261dc0185a49f2e24a428e97241a2fc424474edecda626ed920ef2d195778436294f03337c36c48d5efdb0ad3a6cfc2704f9c0683706ae1b83d66af829a0167eb5fdac6ff09fa3ec443e2963224cf444a458d03ddd9fab861caa81c109d8613a5884af2e781867dd315789ddcfe9b82d762357362d7a56e16f675b3aaee43808981d71b56c28acfd7734823aa3d55f45244494106eefdf10b8c9899722f1adf7ed88dc0f1fd7777ccf7ae7d6b4368a42f202707db4d761f33c1b3d46fa0c51353f65bdcc05ba0e8c38e0b667b8d31d834297afcc8bd526a108bd56c30ef83c24c75d0a5e074808dcbe1ebca144f43557ef0df17a14ff9c596bfabd923bf30f6a2ab356a91b4975a63af1df2c09bfe6abc0e3dde790fd16230a563675c7700580b98fd050b25d794cbe0214604717621ece92f9e9214d681d1c2b78b4c39f3fb6f5f9a523d8d7200aaf0f4513caa4b0e9fffe9480e2f169002ca8a8fb604f01125613e52f13ae021706c133c59be7821cf46ed758e3419eeaf187aa8c66b3788ef07f4e64a98dfabf743edf1266d57102193290d7925f69634e93f6a9b3fd96fadb1459ba747af9e19fad9928f95bf35e451f4fc64f77fbdc194119ff3c3fa2020338dd0316575a3deb0869b8f25f2877be471bfc2e16af2454b990f258bdcfa56562e2fff9b74d39bdccfaff80e413b1b6fd6212605b277cc290041a61bf37da616b74902fa9e8a9516cd04c430322176f0a56f38bc65c0370b874920028a23fa835c8a0f5d3f019eb63c60a9ceb2f43f2fac7d05fa4ca467d353d00af710e6f694d85801d87f9f30188f85ead6ace89e92fe75beb0b855157a553674a995417293ccde95bd6cde39903aaeba81d7e6bb2c7f85bc768ec800a495b5f320863bfc11f67f708cf93765f3f4360b9be5e6552f3dffa560a302ea2cc0a2903573a362b0505c00d4d76d18c48010815c14288b007dc180b52697148054c08fdb1db762e06e1d0b82469ff64af413bb9d4e713936a09a5111864c722f836f814160b14c0b1f523e0cc72bf8fffdfbd1af584efdb592995d395dbd43b1d41e7753e4395c224f6ec08a1e1b1d5baccb480ac59b6087f2387b59b67c65934fb84010ee71feae3b96776fa0cbd74ccddf30527a0bdf0fea7107bb8b860c4d29df822854d62439e40bd6232edd4a967e85280dc90d7aa1f94178c0a38764b5713668415a01ce468483acde6b9f9c4accaf209507cdc66e592273ddf79297d9387e9db39b3141aa69a53cc6daccd795d3e2e8d786fb0d0395f55d40d6de5ebcbd68ff11de8e1897d142a6e32f573e4c56117dc3636df210de7e3569ea04e1e0d4175ae4d082943f7ae8bbbfaa31e747ae060d3dafbff6d218a0d97f9cad44b3d58263ea146988097638bd3f6ba3790897f55ceac9eddf7d9a6b5d3fca2ed721fea7e0bdbafcb1def68b7c4f98cadf6222cec42750bcd4f90c79e4e89b51c45163630c8e875fd5be688278366f97eb5c21e56f3b8dc209ab80f40d9634c89b946f8f589b547b80b62bbc5494af80a745ab9f86b9ce21ad99f43cf6546e4ba8b308f70d2ea772a005846508a14e85345bb0cdc62e888b4ff04fb70bb3f594c5f188efbef3d3736c539563e3f4fcaf1eeab73b52e2e9699e6b0cb25119b10e66a45dcbd126797c8efb50abbec2bf9ab0982328d0898a653d02e2c1222167888cf0ff7237360a156821ce63cbc750f36f444c311de3cdc50bc269438d0bc838a9eb58c7280b648c8a3ff9b13c0ebfafa1789888e7e2b6dce7dae7d4f264616f3cb418ba0c2fa524194dd53755d88b92c6384a02b6613e516674d7cc165b1ce10d9a136f64f292f86d0223a00eafbf890fa5a506ba56301e609652d2a30dbe9066d0777564befc8c621ccae989e4b86ae89ed3accf4b242265c8b9a28d8534e4c92c2258be3c22a38b3c6e34ad9b94b4634a265a00678cfe597fa1fc5724eef388942875fb1aa10b42228d936216196b24bed2d5273e469d52fa259fe312b2a8370ed96be788150dc9fd7449e9f0cf9b9895074298e6099b5bee17436f52b04375d8e4ca9240551ad02a0b0646d9c33e597e8db24903a2f31dd48f26e2c95973a05f74102680b4386ee2af63a65556adbde0c0c43430a5ded4242edb0df74c0c3681674bbd01cb87732ef9a41f72c5af94744e7c90fe7aea60c9f7381dff80f86e5be3608389899a081b95483307f78a6564cdd862f80b950766bdcb89a1e07f04567a2dfc82fc8d4aa3012a2c42e642658813c554b5b6cd01c24a4dfa2e42bfa1257226de0528d649391069be152ac303276eafc68877a978afcabc267db08c6be48bcbaa9b7715a008abe88008c7aca6297af2206aebe3ab0f8379cce59e2bb802b155f28a77e9dcd25e8b1fd1dfa2657163bcef7bdf2ea2d9e4c2a0926ad99426c20d882737c8c20e7f54b369d97a0707e471a448a0f35b208c81359d79aea8eeb6c208e133c1909af1f714a79807bed06e58bed901e19a53ae2590102b9875669330a135200d3c63332019ca05d201582004c39857a03db97161ef1bb89bc57d13f331d4703f51245870c9f4ff5d7725c4508ecfe7ca9b4688de3608c319e025294c284733c31cf8364fb68bdc0d2f4dcc6f0dd2f39f3a05b2eab9f4d619b1bf30ca08acd5cc13a5d57332e3900c0581c312c8b70371f7c42e45f5cfe0e6f9ff4eb9ae4d53345c6473d90ff71f90a5029ca2b05f8d27d7d3e9efde1495d26b350838922734b59645de010ae2519ff17a22762f8b3f8d271c60e6ef37efb03b9d55360db1fbf47cb8b9a63f9d048fc806ae9d23e5e7fe56f63fcdb37805d81fae2fa40366522744fb7271e4aa52a6e3deffd8f8d724ab0ac2e7576376b8eb00e037806a30dd47ff74972c8a7d3efe9e1bd803b4b0dfaf3435331ceabc6114ae62901eceac39ee28632bbd4940da1231ce76c716f10d31744fc9afb870faf604a9a422c57ae1321791be2783325e7a70b45ae470a3800a31e0d191278318a0f30157301ae43a03354990f9b119ce4f0aae9daf7230169859e40775b5b79fd4dd068608fc3e7ab06b88c96ef380134870d59fe60b1fa46c7afc463d700a1fdaeab854a9325e9ef9d0740fc0758fb1ea01171e6216fa81a6fc690c25aa32f3ab8f142b1a3e8ffd6bf2a2870ef893821c29db654ae5582fa0af0ff4ded4daba094fc5862ed4c4051c85f49385f5bcaa9369b93d056e59387b4724e458d4bca6180cf1355f8713221199de050c3bd0523c1b6585795afb3ff01bef06d206a77b7b0467336c246bc0814785a7acfc2cd08647aa0865a1f7e44fc66744ed63ef7537a930305b49b5fb527df8a1cc7483d632fb81f84803dfe211d2ba3469f2e741707b1700ac53e5db702fd6973bfa20055797c6cc2fd37cc0c2adff17a896e20a1321f1c8ecb0af992a1574d735a1494e23e29df220a62bb09988a4888e8c53283e83f1d17d1cfc9c624c74f66588752df8c31629269e12e46ba7e70283a4990f85a309b17b4003447ce88cfd98d80179b39b8aab05e2c1d4343a0d440ce7d2e5168266387494a4574a581bc3884387c4cd48895ea413a0002dbb195628f703d06107a67487506eda5d4f6c9580fad245d2356da5fe808ff6106da47d83de22762ed8a3b64df28e0100725d2e154c158007abe55db0d254e3d6c87793bcd7a817f8dc807ec9428a8e613afc33ea44b75386e4725438b9ff2b0316a40a2615480d05112f3c91dc36cccfd4c57470e5ba91444f96330f1fb3d7f634427a74eab9a18248737f10ab759e03b8c741426539ee08cdec9f7123d96fd7088b151c972c2e5435f2161724009abbd380dba8f12bb5e84edc03aa93623ce74095c9e3d8faf207ed1cb462ef84973c520da4586b3d1bbc6a782e1804c5fbfa5146fe140762c838661654c25387635490c763edd4fc932d7e5035dbe8330505869775df38403aee85b0682f6e31ecc30e7d55a3f6187c29cf79242b23f9db173b334305d2b823002505d9cb6fbf651e5eca3790ebab2cb166fab2d5830c6832fa43056207d19a90ae218c0d42f96d00ddbf2212d37127bdfd9503d54829b1da2e8e53290b949173676a2df0b76831bf5e06df6175972c7f18d57541c2969f5ba61a10581337a1d8d60d7e5806e0caf565fd85f4b350dd26c89a433c5d0249c73b027f36006c4875390d9cc0a2d34873e12129e36ce35298f228e34c8b34152f249a7cc6ee2702a68235f1252ac91a4a9d830a0426ac8bc9f78c895c7355301cb812556a4b950216e481a0ef1bb0133ee25fc7e4b0422842b479fd9e4591c04bd975fb7d32ea5ea4453d04dd878c8720d045acdc07ec3834619a3ef53962fc7cb87ef6b7ada4dbb4f84aa765ffec84b2fb8082a96727f1fc500815fbd90cc73429aa96eda3efa2ff6401b7919caa90e77ba91203b949c4534b4b8a3fccb89dea5daf344be2f987bc647058c39af7ccfafb6e7e76c4181655f92b857a2225dd65d32c7e8dfed6be12fa0c30d4358f30a8d0948f3480aed8915c28aea05d3aa526bb993472f60930f710fb2818dc3b7d87988fbd489d36627842e1ad594a211333df1a3beb637319163a15a7e227075ff77de134919679e949c090c005a8892549e92e754812830bfc05f133080559af1325762367bcaafec3105b23e810575ee85df589f359ef78b59735407a29438b6703afe36796aaadd0db58b338a9f393300c7a33108e972ea907d53d065855bf8be1b0f08650e6a470b147fdacfa9403e4704a760fd5264f716686bab67e3b0e31e1a1707e21cdb77a16e373d3578450e0183317cc4a23c8f906ba4ba2dfb4e5982af07c7846ed83795639c1d1ca82f90221c4dda8226d582e3d551566c0bc9ac103fa517fd19f26aa684fb726e6232968e7c2dd9578f06f31e05344138e097c57f3095176bcb26d51510f4ef3ce5f1369114fbf8d20aa6c9caf4b5446fcb37616dbbd081c8cdcce6970469c977c8f1aeafad14a17a4b32e5b5dbd529de2aa6cc22514138c9c3c4b82c4d2d8ad44f2fb8f99fef690a95ec6c84e30b8cb239d348c36615cf33beca89f4885d91b781a9cb4569bfee1f287d3ce5994d22f8c7bfbbcc615bcfcbb16affa75ebdf6b296e72b6218dea952ce1787978b63dba49d608ac239b5a84bac100e6d92979d6eac6b06ed4cafd6dacb877c089294097e34dc3589134c69ab1ebd9946879a9ef8e9ffb19912d72fa52a1774bd35bc6aee89eeffd5f1f2dfd83b5c0d9b162beff7def1f53610f43094d7fcb196c706533030166195c9138156990762710a34151446d8b9a4dd700b34394df929cb84911739d67b8aa3ca5d9f698d1144098a1b1fd6ca907cd3eb8b268135759d2b1eeb32d78a138532f006bf46ec1d1da81440814af9721647b63af3888af0cd22b70ed347874f6787c99865f384cbceefe22b1770d1214f6a9e18b62b7828614994c753c110800c32d9f21910c80f9d3c8ddf99b384d4bb640c7e87e9a200946bb34d4558178cb5432aac357852c72f3ca22dd1a418c57bbee8640b1e1fbaa53b411e004543e7c3e702765eb517e653a14f8334f74506202cd61c79ec26f92ae7b7e2f842f1f4984e38fad32b4cc078474cabba0f8fb7c5af6f7cf8d793b922f772feeb10e7edf8ff0e25f96e7bfb908dd539025016a2a24a95c2310a6928a192222f5d18edf03e992e800c83632b0632e0c771cbc34fa821a956406342a4cfee708f203ec20572c1a688c4e761ff41f24ed623499a1f75d3317016c0261ec0d1a94a57894cfb7863ecacc78a2d8dd36006ac4c016226428a5a37ffe584acd03c70d18d0dd3ad71623fa852dcd8feb91a25ec12acbc5f0595a49cdebebb5032726e0d0eec0a27e391d16140336db27443eb8acc1c487150b6a25d789cc4f7e0350eec430c379af015328d6278b68cd4de40efd7d6f4e2375ae76464b0b76732f04623bf8c0c8d1fb245ec8dc2b35ef13da82646f2138114e208ec9f6aff3ff0fbffd88a26a6ca8c28e219a135d1db5ce2c637afc3e9ad1e2cc1b6339f70a081ea68656df4c40da9de30699b89f6b411f35395576e1dd72ccee2fdb033a550e1ed06e2a4b1518a1d8f3a6bd734df65d2e81bdf270782ce851348799be3dff1ac95775026a285e77581802898f30e0c41bb4a91a16b890f33ef2e7b221d7412cff321311877732a99ec1c9d0787f13d6f9dd1575612e62207ea0e837e0b2910bfd1a16b2f8efea25eda7a5475189bee6f7c9b7da7f0ede856d57301cb6454f08bc43d50f1891609f3bd8cb592af944307b0cd9945c20b5df66ca27beac030883f299b34986352016f5f4cefa12669220a3c46446f17b8036f02e68fa935eac36396782499a8be616545237dc512ba6669130f2518a7f25648272f96b33aedd0d5763b3b737e569692a3a4d070284a9b8f4e2ad740cdbac041c0e64c44f6801884b34dd60041022ffb677c992f7c256a54285ba5355a23a94436298f482a89232d15cd508874d4e4eeaa6417d83f4cbac55d79433610ab968ac9552e319173c70513f7c03316241308c367a3a446c93f23b27fc4955fa764f7de1fae8550ae4ac6f8a51586128564f26af503a90a738a8752b7617dcc1a5500f205cd9be3f2d19a690a2954f9f1178b0f09151854b8166cc624a2e263ca223b42a88a1c1581648ba85dda938a1780ad61dc013239d27f80c25daa51bef74a4f80e4f10653c3d71f5220fab6e25dde7e3c5fcece8f881c0acbbf27bc7f83411f62e8b44414ac336b581b5d9e38d5470ac08e689a0d7f51fc2fa56cd5e575369b75a414a5630f7ae7e9975037a03d5aac4d9be88c89b3129479d019adfc225f482a70c0253edf47d75f2a66a07f7250e83dbd74dd598e03445c71d556553469524602fa64bfc31f616b33d20b43e6a07d42a4be079b59de3963d4988a6f09da3c34401c43c26a3e6c30bf8edd1f4861967ff8f499e5e89aabe2993372df9450c630b8a45efb4225319e0684c7799cc895888d4bbe49cc5133a68f7bb6a21bb186db1a4e833a3b9a189901fc1f34db7ddda39726b0c7d7d817626e631271bd0e93eff1b414870a9b71b48c8649b3edd0086a979fbc22cfe12874007eed3a6a5cf658e80a83922123145b27f19ff7ac1aceb8fa3690f88f1d7080faea986cfc5816a2ec9b925f2c032f7db82a26bff198503609d0ad18f3342fd000bb01c0489a0d60ffde048a80a99f1c9a6a54cd14e6fedf50daf1abc0135ce74726d6a6426b941f6c90598afd22a45de3a3809f8eea70cb7d691ebb7366159be8d44ee63614e68b403a2b10820504bea2b5c411becbb98b32d91c14e644de13a07fb60cf6ff57191f99e7b3587018b075737055c067e9487de64c9537a7bfbac7d8221e69fd5f7bdcc72a7074304e410d3e18e113658b7050a8d42b3eeaf85052ad96df1fc0647017f2958f7c9a0e1865ee78af3e9eb5b5118bcc9922ae28668ec5595e86884705f4444b22b70c04ff9119b02d83daa581f41daafc6624f3ee9dd7a6357df1dabedb1761a9498ef142a5138f50391569525b36a5b6d59e27887c955639879742bee6544f31d43b219d775d4b761daf34b2839ecaf6a818210279368bb0b19648456241db56c875350784760a862c5e0904d384acc5a7cf57c16d458382350b8bbb9ae5b00167c35266fa96cee1865fece7fd0b478018fc7958186c518b8eb76819d1ccb0d95f8b92a3104ab87cb43db0d0f155550a8cd1ad145826d59ca896bc4a87378f4c2946a92e7bb57dc0ee6046742aa5c1ed62c913e72165b6b7c3432b18c6e66915a91483a06bcc276966752b862a367aa79fde0e6eb686c00398009128cd746475550dd07353f23b2d54d92b5bf5e5b81b4581e1b7155a223bab1b9a24d5de382a9ed262b4e56d7ece8c12994bcf32eaf0ece50662f354bdfe7462cd96e8b4d8f68f754c031e54a4053a77f13c0e5c501866ed04ee5e2abdd05677be90ae0dbb0bed45877b7b703ab7a030b65af3ff09508e6a70c5c9265099a9d0bae1f8a2a6b06df9c3680de2f5dd045a8a4d2f4d146f5dca7d37f9449d5a6f69ce343979feda0b2abceb0cb064e3237b5a1991ad4e9cb7dc711a545808040f0e1c3d6b0a8613c705a0fc2eed6c932a4ebffeae1b15205266b1ee4f60b5accfe7536750e1b65ddf35797d612f1723adb17c8ae8c65be7381d7dc7f212598c20dd2ab8c1fb36e4e7313c0079b9b0cb71e6ca115bced8239c652caaee425548214c997f953b63db5431b7892da791b0ac8c4275a4f244d863d99d1331748746ed1c0e41208c5ea40833f8ac1a7ddc425c067daf23c27721bbdde24e03e56a80e945a2795dfb298ac8dcb5909d9ac91cabeb44fdf120916497bf4d4e97a92793af33b9170688ec505dff01bfbfe354a1cb8f7c412595ce3b5802f3ccf399c0d80fc51634bbd71c48b3a694c985e03a015a6d772753371c9e66c9f67a6e959a6f5cc28bc7fb9db200da89d9bdc2fac43b729fe46ce6b11f2edf8b5a5806bf4983aceca3a895c8c11f6a3c83e33800919789a7c0499b0eded7cc80a7108ce4de611dfa0a143180403302d23ca354492163aaef86c8ffe43f1fcdd7cdd40c26db6988d4b55d527a034a33e156c54565d1ec56c306e84fa7fd59ed7cff3e11f6d073acd04ec95720268db040a82153d65efdd229d3ff06b78a181741d7635103659e7d06474ba6326dc8b0080ecd8fbfb798eb61781355b72ac08ef8f271dc6254f4a23c72e50c991cba5cfc86f0cc4a451226f477aa4b9035ab61e03dfdf2e1454adda323e2e55b46420c9bb701ba99f37b0ef99cd81d4d61b8864210bbb10e6d7ddcbc7904db22140bc29bf9c00050678d8f46eb7e1ae8ac03bc36db2cbfa483f2c2301796125db3815919fa8b5a721fa0de136f4c0e51b0f659a33536388a0e6fdfdc7428b9d02ccb3bf6bc2de929c1198c4928589a191d38b03a67a6ced01e341e7ef5e7e3ac4d8340fb3aa2469983ed892d5f6b9ec338444654eb0ca30b066cf59573d9be782e2637adb5ccbc493f3159d229d343a686a1ec05b284781025b2246903afbb3cec893541bc963ecf7bbfaf16159e96a988925eb912c5e240fc415c648798d99030cf17211a96fb14dbc9178404134e3fb8ed4ee6ad71b41824bcde045303ea5340a834892f51bcd0d6d5ba4e2294cbd9be1daed6188db3b83ded01febde72514d2afc6491f7bc9a0fc31b67b68b4664e19f890034f2eb7c8dcf4a273a327baf50ce7280df29c85249de8be9900182a193093bcdb80ed189b201001ff35e72cbd8daad497ae9035381aaacd3d0ec6588b7338e3fe9657b97ef0fa51f4cf74958da80bb374fe1498fa828656e3b046eca42a0446c53e0c9b2a2865b15c77faec25b5a2181956008f36cbe47e43848623eedf321c75549d16b6e1638c9fe50f154c50f958fc02f8f0a80da41421a70b01f0ce7148193649c56ba180ab642fa866114d40326b1f6bab7bb3e455b86ea0e4b1a351448cb0b21fccd3907050b2984536a3dc32c13a5dc14fd1d84028b801feb395cdfeefee89f590289f36323b89188ac2c873184ca03b783d7c48eae6ff87b16f7ebf1a19574422a6e9eed385cd665e2869b12fda98a6506cef739178b7414b7a54b3f9db697acb1d020a77df37bbe69de3c7b3196bd6496d3234a0dee427c9cce12d5e0c5bb64f3baea87c5301c6dd0d540583e0ebedb155f21516008d32c38752cf2e69fde957535cbf65e0deffcb0a2278c42bf110acb2cd7a8a29d54a69dbc97d57cc66fe6a581934958f69eac0c0cc2e3680e1862dc62913af6bd17fe484b81d32f145f9da693c3adfd55c8d5160b1edbb8b97f0889dfc71ee795ac5d9ade28ee624fb7fb58af08b32e0e27026684ada8dca9b37f17fb98aa6daecd1dc93329b5c18b34bb2ddd9e2a92fed76202c1cd2c8b7f0c791f97a62682954078fda23586acb7cb8106c7ae74ed96f539831f10e98195ff316a9481dbf3e2039e41ae533299e29534f94c147bb6f0a05fb533d34bf5d5ea868f8521654ea20075557903e1db2312ee21838f38ee83ee23f04aec19e7e328ef32d6ebefd910d80bda6e1020bad0f504f5cd308b053eb47b5831ca36341e119e45938df1523aa9b718cddf04d5794998a24329cfb046382440b5c1feb7006c6707c1bb6dc0aca415990e1675692721f80bb37306f5ea7a0e6f889df3651d07fc3a5f120e9de45aca497fa4cb26842e5e07b29213a0601d6b98ae2ac2025742fe94da12bef99579e5e7198ae363b889af4da70f3f8cc88aece74c29158838004a02c6385cd58c2f1d2e8e56815b0755d020d45e0706d49c13e24b544bc0c05caa8d41247ea98184e7613fc5eee6ab493d64a1536beb4be98f2daa93cf6501c63b065e00862ada06834fa406d3b327cfff380b578a3cd16a9f20b48126795432611448640ed714b107972105f5017b371099217dac44720bd9e934ff8b22a449426ed01af3077378d701c43b048e2745360f461080479b36fcffffffffc55555d5eadc455d4128fb0288fe6f6a85113adfeec36ea46e3676ca24398df1043d38e4e5e1005b86d1447677f7e68477e03c80be38030c8888ad91ef12130eb30dcdfb5c74eaf955b74aa30702026fec3d764dd6e6df6f795e16ef5aab1765bead4af6cc39624f7fe009b85845fa0e36c5afcae599d3473fe79c2f3e589cb015445ca05c11327c0abe4bbad633e7a844eabc608105a72403b30197f901a9dcb3d79a622c9da3ce333b2d5355c5e48b4d514723c7f6ccf9a5cfc80906646da8d662aa35e8cc5ef5cc396709a66a20ee6abd91d7637049c7da33271370996ca76ec5d854b3e69e393b73b607231229e1543fb78d4db62f740f3d73cec95a94afb2e75e8b5b1b73f6cce91f62fc0ee3aacd24ab46b779e624f93fa953fa2573be70486c048ad29c1e127bd885b430225167c9a8d351624140bd774a249951a76300275647046a591d269ac8004bf3c0920fc9021de8c184067a6c0c8ca83b3f5a4c9edb987e12e4800636c0246f0dac0b64c0bf031860b9c0828005f6539fb33adfe4419d270cd311812a50810b506002abf31e0948a047043aa51197380001528f07f4700013ee7e269c067018504b329d092c606140013d96e8000f0e24800308e87430700092040ce01228c08a4423081080f480014440000f0800059428fd120e0060e4a08fa79958696f022a4f444e4a144889bb509edb4e6749e8f3e4399bd581a180667546a212774a4f5e025302fa600036c6d03c0c87520cc0860d4804d04482000398c4a0032ff8982604404001130f443c51620093187460051f934a0aca4603802293128d04380280e40e3a0460892c9220a0115ea431841603a002a6442016a1040224110728b18526c420e08b218c50420e20f450629a5652361b274cd3460c9dc90aa2924c7f1d1386c44e5ca669b2c01200e8c3344d1e98960000159c580200a5e95f122d99895902001e9896844adc017121965831230505292748293d609a52bc48895992c5a4c40f38304dd31c9b074c9a49808034fa34614d27c5114e3ea412021584b6606179c285f3c49978e29f1ea5fa534c2b465594ea4fc1e17038a12d50c079e29fce2ff1efc841094950f181e88997fa2095d0132e1ee0841ed4e9384884c20619530a152ad3b4028612c9394f3cc1e9112988e2bca47061098d16a6775188b3848606d3c499d3052c589c269ee0b4fc12ffd112d31d5316478600f151c407108e0be7897f34419698a0208d5a9c88611827fe4725ea042924dad8418969dad4619a26254cf488e1919390cc9c40482fbbe6544df68a35a76a3264121598a6495db1ae0821f17f618265994c0f970d1d76248a118d4248627874e4472f649a36732802490e504cd3260ea00f1670a85580403e1cf4c1629a366f204dd3c60d21993a4d9b36f890d26fd8c0c55bb14dd3660d4d0d71864769786bd90c8f463ea808f48314fa4801d349fc913811812a921012104826c83bff98a60d1648ff4196843e443e06e641944b22220e120989e2c5a5ff0a987e0202c910594936094bd292b8242f094c129390483e40201fa5f671c783e867494826484844e44b3fea900848dc251365b850db9e0c17cb46b041c3b2f6ec987926d3b43983da999f79294022d898a1342a837f4632a022a511179971d18fef8f6814a4e40346147a87118542ec39f2323e64c6453f4a9f10922840dc9f90a7ffc837f92cf92940fce98fcb8cc087cc847c4cd3860c0cc3241929343f8c10a962c8112044908ca093c40715a25047c363111d98a62507458461228d5a3aeaf3010f49e6495d708834f130a077c25152414f52328d410c685842c50cd3b41963724218a66952620386699a7af005263e242272440a881883346a2955000431d8c08f154c62146062c19043a480c8d4031eac314d6b78f1422a80c78721baf8c07234c0093d48719eb00027f4203a3c314d76987630a9311501018f424c314d0fa2f4b3c60ea629069f69ea82106e90462defa2100a0a5e3831dc1d271f527143a30661c734c196d5447f1310886148252ef55f41fac4f8207d627849081403f32139110199864c21e8bc8b429f51e925cab8f477de638a20118dbe04333f4444fe038583644458381181fe0790201b2f58212242ea42e899888e4cd3860b3ea669b385d1e899e41d8591289e5b919323cf84413f5e96884030322322a4900f1f9f261f2882fcc7431f4ee84f201a959e44e210134e443d42433e1c4f691422754b092443e2a70cf2d142fa0f8058c60bfeb11163938589071f08c0a3e75114ce39e79c6badb5d65a6b8d31c618638cb1ddddddddddb5d65a6badb5d4aa55ab56ad5ab56ad5aa95524a29a59432c618638c3146082184104208df7befbdf7de73ce39e79c73aeb5d65a6bad35c618638c31c67677777777d75a6badb594524a29a5945a524a29a59452c618638c31c6082184104208e17befbdf7de7bce39e79c73ceb5d65a6badb5c618638c31c6d8eeeeeeeeee5a6badb5d6524b46f85c63bba88019326521073b8cde89fe38d123d29028a200f11b01322a02f3a5211b2c6c5c708569da58619a3655780e676ec6c0030e4898941051c2c1629aa61e4c5319a6696232f188c3004031301fcd3491346ebc41101369d432439b6b139f51933ece8191093d0c899d704442b8c4504cd3860a535812faf883b8e402ff88ae70e7ff7446ff315c34b99c5be7c23d2e18e37c20ca68c124ef9ff3473f223de51f41acb822f4615011231ef25124268699684f86c3d29e4c8f26cd4e2786f4e489c854111a12c48a2b9ef28f287ef8f8114302813e74f445e22e246e98a6a98b89071b769ae6ecc490d8c08389346ae9c45d327197cca78a78aca1483781f91169d452fad0b8ab431a7d0ce83d24cda80bcd478382a9086ac4400a350829853e324b3e14a6010fa4518b87bef4e48900e3ef78dcb18829d4197de9d381118d6aa73f86e4447f93993b68b0e40e0d708c133325d5b29a10d5d0a74492b182e329cda928890a454953a44860c2c1122a0898a68d142ca092c6a462061a58465f2a718c13a39215a6e88c3ea63fa5875932f1384315ec38620714766ce03d24f68464acc042e43246464290404132f2947f70585c46a22020ca02f08fe88a393ba177ff78624824d1377911c0fa1e3227a9d39953341afd9405984e82840a2056604145e59f620443c508860a91cb1811b98c1120242b90c4c04031e211173142e2111701428af9784821d1e729ff98a64d14e888c2346dea98a60d1d734cd3060a4f90639a367138a18e27d3f4b50e9f26510dd531c554478f699a3a9d3a9498263ed0e185699a3a704c24d0874bef74a4609ae8f069f41dd2678a69a283659a48a407d1e18099fa197d133aa6692a3d490cef7320619a26d2cc3399238d89f49f39c278f221d0344d731499e688d334cda180988f87d481021ca669d2c234f9070a6e4c65bc000a5f4cd3f4a3980ea9368981c216d3040528a62924824206a6190a8969e243c70b187fc21da2fa042990783c0107d3d4e9a4210fa0a93312d5ce13a6203d81657a8212d334c90188692275ee20c1a1e29846cf642472d2a95524471a9dff6222c9e113498e29a689871c6d9223037210200e444cd3949205137ac471471c6d4c32313f9cb0c53461200e270871c20f37826084224b44c10b100436d0a20a1a8cd1032988b6f8c2116754a0080cf2407130440b60a0f10432bc0108ec05347a2c25da30831336e0821080e00140cc614517a69087699a340d0800024a744ce188334cd3a44952063be070c01cd25083699a347010808c231158821f864cd3a429e30f156062a4e2f206165058808611dc7102cf344d9b186040016cdc41036008c3344d28890884099a80842da81188699a364fc0bc04018d0dcb12a669da4c110508f2500607ca58c00ccc200834d290821dd334a9ac91034668ee989208c1344d1a3c24a2062980041a7780d334a5ec400900d4f084a18b394c936ad9264d34e1e222aa2e2e4ff9878be8480638247621cdbc14f59f7e5c86434b48cc238e0989603e4f998678b4048e30f0800309ef7024e101c79c5a96e38127b9fb6802c7b404331079f1212dfe2e228d3aa216b568441a89263189494cd334350f2528b138a10f285405cc344d4840008f2450314d13c909273cfd254e2986f381914c7de770ccbf144dfac0a4680690861378d10338f01044159020c6d4d2a41091951f3cecf8416749e833528af4061e5a6644a22375bcf183696ac182d3c229f11b2b78a3f4c69137da3435bf4180699a8ec0874dca22529a60a24787f4699979261d0b6c60d2f8684748310223a6a9a5659a52c4600429c4f0c889119e4c9cc989e191138ea8b4690213263426251b38364b5082121a40f0708307938a13378e844420202b2a7c10390b8b11953304600c452891462d4528c299438ae080699a48a499181536da8883346a69438c3650d006a98dd21412953eb4094eff152850e0d14608a68953818d079a10618e690244052631894910a1344d9c89f207222060baa289c9002598780c21069313a352cce841202ca669da904a1f3a4d9b244cd30609237776841018c143088b100222a6170e8bcbe68d298e2318c18d22b4b121421dd310a669523284c923844d100070802094b0a0c419cbe900278663b85b2ae8499b0b20400d004cd30608d3b4f9414c1330a126ea880d1f6c7a906285490d0d0f02b083cd1a0a9888a0c4c403e0829aa6290b282a138ae607624c1369d4d84a05d8e0c3132e1cffc04cd3b4c9801a2e48632364d2d8c10777784a9f113b418a11b5903e4e846384346a2139b14d4acfa43fa5271f1f6fc4c84331e207017919f2213d6198189188c87ac23023d1278484fa37f16ff25942faaffd5794e87b6846e687902751a826fee97ccc4ca9f3e2f244f4634eff27223ae74854e20f133d4a24114ca7c49d1718d128883f90d0c75401c4c913898119098162551317984e32e76ae21dff0d10444c9a3d6c9413438af8e097994f9b98013961298540cc440f4e88498758c479252d4a381de070389344aa225213bd243403fa88380a4e8b528ef30447394e07381f251dd2c745a590c8d31f980f837c705a98a8c529f12471e594421cfac0885ca9c5619901517ef29c964fa948131c25a41f895a48d334cd60e251832713084824960ecd90022000209334a7c604356099944c9b144c9b9e361ad82880063ca0c1cc344d1c28ae28c23942831e33e0c30c98a0840b0e8b124e8b8f19a809062433fab80c08d13c64c00519a42183181689587ef4231f3210d2423a83106758a1899028d48373060da696d01949789c1127331861861584981133b57048e4c38c1ed3344d2433a6696a29830d2d65c4314d2d57888a94a1031e4a9490c18869e241061baa20e3073cc878028ae10021238e4108265abaf41c1616a63d788ce185699a5ac6f8028a313854c499a12431bc50fac4bc184fa6a98534eac1f9218663e1b4943e9f3fc1c70809e42384645485911092ff51101e71112f3d2989887848bc24f4212d097d481f2a9c5fc84804c48a694281c41d7f70811d6130629a788491061e616c218c31a6d0a7e32311901f899a34ea94b893a232a140628d093411510e7dbe24638587c442c0a00218614c4ab8d822247a984f098c0bb4c00e2d6083470b94d4d28f162060d2620b4ecb1766f8a207d33429e16ca1a44554ad28c954e10ff339f2056762011d26991816c031b1408ca925246281101684449c15d8517ad2973e4e3ec46909fd093e1c4f89039f0f7d4a213ec10c55e2e4eb88431f4ff33711f34d421fd248443a520a3d0c0cc718f9924c8c7f8c186951a28432e1304734e2980fe89b7c46a2992fa689336b93981997c90225d2678a0ecd9038ef39f28411d33479a80f0e3f91c214238303928b80f078029aa6fa2404d33479783c71c0448513334c13c7437222060f27459cf0682286691ac93451429324d3d4d2a4c7d44288c92333c704e21249a68a825c5144464d241e25464c9397b6304dd3248229919c7ca8948447090324349054406a53cb92d0c74929f4ee32a467293d559cfae1313ac32805a5cf48d405c334f98fa77a8859dc8b327881022f2e10f3859826311410818187c80622171e22054cd3d4f2f5e371c201396125b54462c20f22957ec96886340aa916fa2eead00cc807a7c57d84fe105242a8a56534c3012c5a648a8438306c98a616982f661844e20d1c74b088699a0c30f18039324d2418034cd3c4d2a2440b2e9468c161e18254fab4843e33ec84877c932523e6903e9c96129364461f2631d18361421f1f9c96108f9ec39f269c19faf9d1cbb0904a1fce88c4a4dfb909d1120e739428e13cf1c2816288735abc9b90461fc3690262192f1ec41c1627fe2e8af970483cfafc480433136212a94849a6fdc3e2e1182e9428d1a2c97f46144813ceef816208270402314889128ea8e483d3c2a407817c70405c326284e42119d18f5a4549a60a109511416164d23c6064c5d47921c97097b8e3a5cf8f0e69093f49868194b853e2cecb0b1117d2c358e1d27f058fb888095aa6a985346a017d4a32a04f49860b1e4ccf44243a326d0ef19f8d2152ece0b18515a629258d2d5c85a383226ca1812d1c304d3130234f0cccc8a3051c38d09993035a84e1999470c16169d162968010d3d432531a718c0f38b450c269f9982a4ae0440917fee9b0cc781674985a483cb280433472c2217db24892859ab250626a217d782461438be2903e3c92b8314d1c1e493c496212044c2d58cc81050f2c3857f0616ab9628e2bbe680131158196f0b82204d3d404f424182474985a90a8600a917c887f3a47a27064098f231830c2062360187162240313cc88c4692105b13a4142a71e55dc5693945925c2a609dd94535625c3e7de1d03c28609dd56d277ee6b854f5507c7568ecdbb2e289fbb544b58c79cab6eb74267ae461d6c94a0b646f9562de6ded7b3d111364970affbdc32091974dbd8b341c2bff776416fb056e59cdb60f346f4f558f77a17d9ebd723a8b70c1dca06998471750f364668670dba6c2c726b271d0f366e7c57caa86b279f0f36459094395cf96a2d16f98de8a60dc81c235c916d5dc90c6e88405573e83ac6081d7b465db2d80cc17ddfc5b6cfbb7d954420d2460810b676f84bbefa90d2e799f3894d105cf4baaa64feae9ba95a840d10da939245dafe97a3be164824a248363f78ebbbbdb2d67625a46ac3d8b0e14c3ea896bf57ef8bfa60ad7fabb956a38aaf15ec01bb6aeab917f47e6c1b161b1e3cf7eabf45a562fea08b3ba86adf5586cb6e351adbee0a366bb08bad2a6e3072bbe80b84e5078b8f1e49366ab42869437e5d19cbca561abef0abaa4bd18a8663cb793b6dbfb6c97f196c7400e34bf9de9879a3bda0199b1c38f5ac774556f73146a90b36387049a9aaeb6975b68fad7503fa913ac9a85c51ba8270ceb55eb0b1015dadd87b513957177b5d831561fb48dbc66550b1d7b4604383aa56d76ef755526f16373350b41d3a7dc58da157c9828d0c96daafccd82b5f874ecf88ae78557b7f267f4906f36110908d19d5e192eca9a68cab7a57c1a60c45d552476b5d8a6b8b2c051b329673d74cd67629ddabbb19c3e1bfd798ba375b05d78ac1460cba709b7e5b927fb9c86a6c62e0fdcc977a64d0f5830e061b18a8b5da638a1d6bec71410f0db9a2059b173c5bb99ce3f8152ef71a9b30a2d3d7d4ebca1c36fa1a1a1b1740676d19f3fd66efabd2d8804197ababadefc3265fab39d8b4c0b9e6c85ebb7ed55b64732e91cd17be163eecb7ea2b836b21d14cc25b3ed76feccefff9f2cc39e7cb12d11430a25190c5864612947e958b39c7985abbdacb1117902612f2617cee29a374a3cbb8826820c19c5af7dc0ddf3eaa9e67cece92d04735a142f308d6edeb4ab9a264de9cca40e308ca1eddaed2e5beddf62ed034c219af37469b31cf9c3ee40c0d23a263bb2a5dcbbd8c8bed0d348b78ca29fecadceb2b4aa799814611d515ff36c358e373ebc7d024c2373e5729fb83ffceffe4858cde89680aa641846b302a7ead97730537ba50cd211aefeae546b72d64913eb74296680cb1a46cac42f5ec9f6caf3460680ab1cc5e33eacd4fe5ca2ea221c44af6fddbaf5663cfd5156806a12addf7fd62a3cd605d914610ae17ab0c1d65eba9e60e4463b0bd736eec38ba522bd00002cad7fdef9c2afa4bfb0fbeeb3506d98a8a17dbea07b52c57d1ba9a7b8ca9f5f4a1ee5bd85f1bcab52b3d051a3e50964dbd7daccaa7d68b10cd1edad3255b7da5abe163a52943a30797eb5b2b097797635dcf9c53cc39d2e481a9069d72f4a71e5ceb31d14383878e4d3a7dae9b57b54c45c172c4a50bcd1dbc3628a3dcf8deabf55a3576a08fd1e578ab5a2917ca3a3425a5a4126e6355ba542dd0d021365a5b52eaa0777ccc73a0db8b95b38e6e7731f4ccd9592202cd19028d1c564205ebbf3367d79ad2c4a1adab10365f874d4907e1005d7b15aad722f38d6c9f68deb0bbdebbd8adbd5a29e390c60db5adacfc6873ac316e740d4d1ba8c30757badc559d2b67a261c33fa58d3ad3a71a34346b68875c2347e7caad7a12051a357c944b5519dbe37e2b66e2078b8f1e5768d2102b7cec35dabfdd12b6269a3b38763f6f55f953acb50702e2393fc4a08e8b48838626d7fb63dde462f1bb9968ec58ac2ae5e798390adb7a5d68ced0cef9abcf0d297c2bf997841e04624fffd098013683bffad1d71e83cf3e346568f664f76ade1c3f46fbc89c6490fdcb41271bbfb61a636360f555451bef56a868ad9e39634473c65d46e69cf369c4c078c9e8f69947d7cfd7d3e930a1094343ae6cd73df7e8621e920ca83e0d18ea836aab748cfe6f55d4d3345f60bc14fdaeed3d732e114d31e712d114312222732e11815ca2c60bf2fdd1da8bbd2a6f66232f485da854baf8d5d557cf3d900c4c08345c68ac94bf277fa1faaeb149e74ff099937e403e345b78c71cb65f8f50d5ddea9953a9b7ea9c1c8d169e8bddca573d8cb4494d16dae37bb568a32ffb9dce80401c644e1f1a2c30d87cb9940b237c77d508c9853557e87ff5418fb21d5219f789c60a6fa9179f8bccfac5b8505305a68a576c5d9dbb45d5520d15fa65647e481f5c8ffba6e0ea253fe8deba8490c2198d142064081d3fb5fad1fde6d144013ab9dccfbf98aed5540a347550f6eac5f6eeb69832a8a1e3b1529252f55eb9525085a199435677b6ac5a6da791c6271a28c865da8b59736d41f848a2cf11cd13202faf8dbb515e7e7469e460667715ae85b4592eba441387dbf5a4ac5245e9cd987da171426475fdd748155bd9f6896a68880a344d7070c97ef692636b5f6d051a2638974f3125e95b4597d70c1791d1c0d16dc555fd2a758e3a5c2e344b9032c2868e3ecabf755ba38486ab1a7d2caae87edf79346968920029b7ef2a5bc5189b8b44344870bf5f57ad52b9f692421f2c477e68de60b24ae6985cd5146b879a237c65d80ca58bd055e6eb99f39b8860e624a23102531256f92a7c4ad24aa367ce4fad2f473823511d1224088c681464ced971a271033e375dca8ad2b59e131e754abf446a8ac0e48bac9d425fcd8cb9674e10e8c364cea76943c5e7fca0ece66db96ccf8b1020ed3d113939e242354490d4ddae74ec15adcbab19825c6fc5b4391869ed959e398f688400e93eaa96738a238dbe495c826882b09883ac5875e75fd4b1ce9c2f51ccd9eff5ad28f59c9d8e8b171a20f8beaf922db6ca3157ee222a8586cc592a42854b48f303c670e5ae5a2ecad72863a3c2555f43555f7bd72a353e58af1ae34aa1626f79f19d52cff9e2451422202eace9015d8eb5b56e1eb7c1d83c738e444d18543b4b3e20d0cf69c59ca252e94725d267c403577d3d19e3abae7d35e899f3d3e994465e90e67c59816607cf2ef721d77e55235dcf9c201998395f5ee624c58836e0a26182660dd75e4a2afdbdc5f6a975228ac142a3868bcac118ab5b90b162292acdb95c140efa4f9039e7f450093469fca2bfbec57eecb57c22a21d26cd203ae7834a548694010d1a4dbeb5ea7a8e52bee6d033a728c46d64ce1183b84973327910fb3719c9f4108d0ed436f6b5993ae9f2ed7ad1e4c0c5b6f531bad0b562d57d7010bbc1660a1dfc2a6b7f6ec0de5a52bd5ed5ad6bb0d9a0715c2ed992aea153e7a8d0d4a0396efbb7e636aec66a27f4a0396762443de70b1747b420a2a18153af9ae3d8a25bb4f1f2cc292a853e9df6643a4f1a71ccd2cc20b25a976bcdde1c7ccae2ae116864f0bbac3a746e19db93d133e7cca814fa394b0f3567287f913ac720abb4428e663c844b6b6b96ea1beca529c3fdc5752d2e29db39538f860c56e3aacfdd728b8e2de619437aab8ab62b57d9ef578d184ffed3a564a5ff71b567646a6200b765c5e891b1559de3666f0a0d0ce477ad2d9b7b947e33e99973352f78ba94834bc26fed794e0f3dcc7b6278b4644e1168c2a08cfd724fc586f0b1ca2eab71c153f8de63c960852d3ef9f2c487b8b88c400346d767d529ed45d93a739a16ac7492bac8fa2926e5633e9c8b18d17c2163543146d57a3d77ec2c68a7a43376ea9f63afde0ad8b34823bbf4d65551e5997386414b05cefa31a8a493f5357b54480a7a9faf9731b6f8b536392708f41d050a245dd60aaea4cec5adffc4092a95ee9ce2d72a736de702c50c8471b1e5d63a6de5e2ee93d7d2bd3bfbdfe6459d13d892b97f5819535c21f5cc099bf4da95bbfba27af545ea999345a6ad940f2957efca54740f8252734b59a363c9da9d56cf9ca107759ebc877c90225d50a9f7f6add8246b9e39818cbc65ed075b6d968dbef7cc09e2d112e79820ce0bf796af9455aef6a08c33211f73ce84d865c57474c66d55af1e2384d233e7cbe84b435c80cce9ff89d9804b27f4e9c488463ee7a8240ac9741210a2ef163a5a5f94eb9d5a9e4e09a63a01431965afad469d739561f5cc497a20e6dcdd5ec2baae352b8fa8030271cff91daa221464ce39499289c7f74bd5ab7debadb7a312c96575f11ebea48b3e4a196faf231b70511ff618af6e8e6b5787cd9e39e75c2243472f3dcf1c5d51fda2fdb47a9dd305c912c78f1fb7a81eba5ef2d56dfdd85aeb3d5ae53f13fe98d9097db8f32026a387e950260d827fecadf77e71bfe4a6d0250b578dfdfedabaacc6c8cc827ee81e74d9dab245e3421a1dfbb618ff6b2dc2b83c730e9973241a7de9f38365fd75ae902557af117ae62c7187441d77314c144a9e7b257bf25b8dec7a79e6f44fa7f34427aa77b5c657bde0d26fcf9c0efac8fc20cd490262021a1d8dd56d74d1bf6d7be6ecc450c985b77d4cd5f7551beb674cb6f0b5caf929affcaf9c1c69a198624c56b8567534f68a32464ae0de36471dad6f45d7222b4aa2624e982ce06afdeedc9046cab28d9238bad897b9e366b2b94158acfa77e5582e3f7dcbb820c2f9c0112db0b862fdf397bc6063cf77f52361ae3915b9356dacd8aa23ac62db26e1d667103af61861c716938ab57650c2f62e42ac800c1f2f7be35e0895f2cce944345ad2420266c6e23ee9747d3db78a2cf835b6a6ed5e3ef8a267ce9f730455d446d755c58bb6b628cbf6648e10692fd93e6bc85665d5d94b53b16c5d4358a19310b273d114cf8cdb467ee76293af4a6fc4450a29dceac8b8bb23f3161ff52c91a10f85176fe4e5084b152ea5cf8f1f1a3146f0aaaf73eef43d159d45d190772c3a8f4f46ca1132b844883b271d736f39c50f951281924dade756bd64af64f3cce9e44345e6f494368853527d64fe8c6e33b83c3133a5395f38353467a733270aa25055b157ab19ac52c9273fa018920f28182a86acc9d5cc55a50e043eee85ab7625658bd9cb0fcaa8370ad963cbd6aab1091fef0fa9528aba66ae57f5bc2c9361500ce903052806e6e332670ccc674e1899109110bc0b8fe3eb2793d205d95f5f33fc589973dfa0142e44f5a4636da1822e2ea59e942dbcd37e668ebda5baf613853a295a80be8b52071d4b49e3723148c94275cd557ee5d45a0a2b759282855aa18bca7d7b6b0db2bf8273b7aabad52fa65881eeb2ff65ac32a8224b3252aac054ff2e6e2b237dffa8674e232954a8dfde79a9255dacdb94674e2a52a6d020f4faf435f69e63cf458a14aa628e8a9b722aebc3e59973ce8d22250a6add3ec91aba7b712d1349a943d558b9f25b5a6994910521850ee9227dec55c7368b9439da3926fdad5675a1d38502ac1b1f7bbd2f9d57dc9427ac972c19dc56eb5b6654884b8a1c35368791b93509a5a22d258e9790e9a394bae4776e9de05c32585f525f55b57e4de85a9f3dea5cad0c4a1999f0f849a6567bb0add894c2a118d3ef7e5fab655b98b2847576ce686dbfe0d2954a78f4b7f5337bfde76c79e67c11d5d0100d1a2949586ead234b672ea15460a42081caa5ff1f99926fbb31cf9c296f3cc99a52d4a3bb0aabc323fccbdf2757c66f6cc96a0466ecf15bcf5a7be67c193d49060a9ae2c65b8e156d2f297deb397f2f4264cb1fc7afefbb6e49cf9c9d0e7dae4869a31faf7a6e29656dd22922b0aab641d96884bf1cbe94217c8dd0d56ddd523dad9145888b145284f0cda9566a1d85d43d055f88b8e02025088f5d7cd94e72754f290504cad64bd6e452b541da7c05293f88b439a75ee13a6cf65605296c2c6b6c6b37b83aaaa6d007d241091936f5146b8ea91eb4e8be5dacf03d58d57b0a0fda8bec1f3a5b57d9be4ad9417d143ee5917d7dcea5afa15675901fbf6f303ef5296a4826d946e77165f3539886fb670fd75f2ec98bf5162968c8b5d8c2b79a7cae10be2ba4e820ca4ad9c24a176defc73970d9b5a3e3eaef1c6d8d8376fea89c5db674fc6ef0aeb1cade33e71c1b6c36a0ad18322999bd54fb5f83eab2b1dea6d6626b1d0d7ed75a8f6da58d318b6c060b2e65decfb22ef6cd3288cb543947d9bf968b67b4cb8e2fffdd43572b3583562855db267d4957b996c1d09d7e64a828191e69cb751b95f2a7601c43b96f2f964abd53342e31de7a57ae1272adbd3ec6c07d5ccb6f455797350983cacec5575b736ef6be5fb056736486eeebc5f617c663925d738d76a5d0d97201e386abb2b3166b640f86578691197dea1136b62d90cb39ad4a36cae8abdb52be602b52d82bd5aeeacf3d09e8f5d1a64f976b11be97c4af7b7ff549d596f35d9150bed677b7afcf94d721a118553552e6f5c17ea51e11e9a3bdee2f3e978c4247c0c8cbdb3ec78ff5796cc482bbab31d61af22e2f231ceee3e58a757df9cc17e1cf25b7acf0c928955484accf25c3dabeddadae89a8fcdcab4f35c720951b11a15aa51cdbca8d95591dc26d63ad3db6602fdb460d41bb49177bc1d8ce49768570591b2f53b7ac9e524588dea6cf4a52a6be14a48358e6dfd8afe6ba7ddf128472cebdbba092cae50a04b7adfdeeb45fb7a82420602f74be96576ff217fea1c2a85c6d7155252374ec87fafd187b677e927eab7d78e645df35ac4d56f68fc207f84cf1c7ead83e648fb287275747a554538792b5a3e821caaa1a5c6cd5ab91a5f2cc498a81197950f2f0b8bfb92fb5bfde37c5c3fa27e9badbd5626cad7ae674fe1110943b48ea94c5a5943a3bd0f7947a4c3d7b1d17ae67ce928ca8d341a9c32fa5166b32f263af3bfe2874d808d7bf8295fecbe5a8674e106535a0cca1215db5947d8c1f5b088a1cdab5848a2d737ede5a8b83faf8a47747f7ee0b170e2bdb1df6e2b53acae86f804ef6bed3e7e257b96e58cf51d57c39b6e657ac0d51bae6b81de56efb5e6543f75ab65b17abcf99b7353c37e6d893f57564ec520d2d3ab8b06e53cfad9302250dfba4ab0e4a8fbd9a8bb40c943b5ab256d1797b864f79d1a05484d4f1924bae0a1fdbd14d2915178dbfd5b5073d24403903afb7628d916e5b76c94a28668811bad55a6f855cd72b4354bf4c636f6d9431d5c8e0be3ab77e3deae2534da18c61a3dbe60c7aa42e998b6268edea32199f4a46bbd13038bbdafe797d534efa930fcdf902e2262298b7225405cb11972728609014ba752c5db327236d5ff0d8ecdaf2d58e6ea58ce285aa6a47776fce75813af9f82964af14cbb5b840a37cd579efb6aa58ae2db8e76f5d25ad8cb55290a4057eb8757bc52657acd1b3b08fb68ad55975b554642c28baa86c4595c3a5a27a57f0f71f592fa3d041e5cd0aac52c79c7c05d7b187b20a0eae76d79555a3c2b677fdba5c3b8f8b32850529644d9d97c1a7144b81753bb777bf712bfbe5993f9a02250a353e7e92ab3764dbf5eb586eb15dcba66add55910eb7f19793ef5b7773fae678fe8bb15ea7245c6a3d14e4fba7b89b5732f4e84f806b23538d460897abb1caf1b14a875d57af5de6681c4fb655555d471b7f7c319d2f8942284ee88d8c2dc7f76eeb83df84fed8edad5f2f15d3ba3c73d61f755098405765bd8a9b61b7650dc7bbadaab96ccc7d75922d81d16ecdb7f9c367ee5c098ddf6af51553af5b7c9b8407958ab1bef4e68f2ee959010a12e22f5ed51e5757ac6a1050de708d31a56daddaeafb8347a0d2bdb36f0da5ef37263d612a58665e0a1614a018811faa65c531b2bfb79e1b4ad28e0cc2baef2874cdf3f2211108c89c1f12813a084a119c6390c266bb60fd26a167ce5f32a7173ce2004a1bccb58c8f5bc25ffd4c112176a3ed8ad5b65cbdda213409237bad9af9731b5d0b2842f006db976ad998eaf50f0275cc550899b6c3fa2e02c1ab7377dbded99bd3d805ca0ff83d7d152ee81c2ef9ce865a8ac108bbb15b4a421f74adacfe5f398c157af7606dfc18193bd8dedd9d07d1fd3fe96a7d29b83b5071b1fd75b4b50629f71af2e5af08dbd75bcb85286a38267d3d63eeb5c147a5e7074a1a91352557ab664fc5657804050dde0aa1b7b820bb465be9202ed56bd1a7919b2537941cd0b5b13d6eb82c55ab4b53060a0ea472c970e1626f97e4877283eafab9758bc57f193b9d1249e4e98446ff19958ca0d8804ae81146272b57d660ab8164cdacbdc617232fb668e056fa52dcce0e6506ec6d73fd2aebe7a2eae79993042832701fdb82aa5d7defe0a21e271f1aa19c116153768d45e64bc5aacc807231f50cdb63fbf518a58cfa148c5151b7cc598b908ca5aca4942e3265cce918dbb2696d95396ef85a254111632594ec2b33172b54cb2831788d494865944b396fe83c73823834433b33a09820283050cabd7ffb25d7a2ad1de50555b97e513dc654ac4e194a188bfd2fe68abd8b759bb9c02d86bfdc6390b9c7af2860b857bd967bd17fbd39456981fb520bae956cb7c50a1be50b169b5a4ac27eefb507f9a71312cd09f221a12ae6243111893c4c2c16d5c325663389aecd3baafa1cec57e97be66422127940fec1c14612aeb1539449cafeeb929180142ebab139833052ef2d3690e0baeb1636b7e847e9eab2126c1e511d8392327fde9e398f6c1cf16a198db231a594552b368df02a9dc7772ac6155543cf9c2f8c60bbced847964e1fee5bb259846c0d3ed7d892ac32c611c94611cabdf55a2d6ca8a08c9294c52611cd1994bcdf9a934bbe68b141446c2b5bdc17eb6b723dba39444708abc35e0cb297b291bc8d21e076af6cf515a451f9d81482b2d62e5b29a7f0df338b873e52b0b074b121845a4a315daa6bf3c7b2f42189625e4cb0190474dba296a9c51e2953702965526c04c1f8b9c70a596576ae2b100e7a93ae2de8ec3d7c101075177c92bafb7b4b79e77c894203c6e60fcd623b87be92975acb0fae9ec6569d2f06e1dbedc3aa4eaafaec6585ce4bf18136ddf5ae8abdeeb5a40744198bcd1e9c8c152ae52a940c5d33cf9c73bebc0c617199e92a6cf4d09ad26557fc4db9a6d453dae4a1b57caddae3a28dd6fa9e393778a8eefad73b5bb5ecdceee08b49c99cdab5e2af5e3b54d8d1ab92d0e5d67ece33e7bf90367588ffdcf9c1c7cec7860ef5c586bee0e366099d7be67cd9cca11553b80eae1a7bb9514c47e425d8c8a15f2dd305e336ecd5bea4f42258b289c336facfc97db2b5b396323170606f1a1ff57ddc0d5fbd813117a9f3a8e042e651bdbcb83c88321b1b3754d75ae5d8945b1a213fcf9c2c2c20100361719953c3834d1b226dcc99a3fc9c624d32cf9c676cd80015ebc5f451289f95da35346f7534b2cad8a2fef21b35b0d8db18b658db2edde599f3069b3454d9d472da6b216c56ec8e5d16eb8abd2d3e84ef9e3999b408443b2fa12a809040201f2c2c2c73ca608306ff7dcb9035d80aaec65d6ceca0ebea57595f7b2e97b693cd199837b95acb27bff73508da9861357bed143aeec5b4ba9782c41c172d366578cfd10697b7b8eaa36f695eb021c3d36dce6ec1965b5737144d3663682d52f662aff4ba729f1822f7abb8546c52b55571ce0e4c3f09c1260c55b6a675294a6bfbab100cf09daeb6ac7133e91abb08d97c81c6ea16a5b56da34bd5f282a4b57694ce2873ac74375d60b1fd32c3d5e053ae6ba7bf49c7c7860b4ff2abaa78594bb7da31d96c61296cdeb497b1944d45cf9c5b6cb4a07aad75e995fdeb75ce33e79c2f475c8c6cb2e0ab3aff5daa5993ac49cf9c73be6cb0d0ae4a48216ce5ab9d42cf9c7173054a97292fa4efcc5055cf9c235107c8c60a2cd686107e6dd91acaf5ccd945826caae0b4b5e4f6147a43c5754385a67431575f6b8cbec7ea8b088eb8bc0c889b6ca6e071df56596133d6b5d733e792d067c6e77cb982450a97d19786c430cc9c536ca4c0ecb65974eada93bded29b289c2b25fd5dc542f5faf946deaa8dfde727ff0db237b7c6e85b800d9d0c1dd94c166af0ec6763e87b3b558334aa564ba72bbd84061e5d3cade68a4945f944fa070995b8575d5e5685b72bca4ebcbf52f6bca57fb6063138753f45bc7f5b6b162014c40c1d2c3250c2b70901d256bdb969492495e526848694e52878a95372c1a578dacde51275d052a40010ae69462c50d4cb28ef255b8ef3193ccd3a14cc3586903f4e6aaab1a5731e5bcc89c3130255861c36af4e9bee854932d5b5b5903a4edd6df6256fb0c5235548feb455a6595ab21929534f083cb28852b4a15df532b77b0daa23beadc2fdfaed23f68705c5743e9aea16375b11dffee796daef049ba5cc360e50cad15adad1d8b4e5b49da09893e2b6688b065b376d0fd4a762c8c9532445a5b56a67cbde6ea3f19a4625ed7f2b58f35a97c0cd2adaeedd5f7cb8a1894aaaaf67a3f95fd9c87e13d47bd2a7ff80ad2e66078aeb1868c1b5c7ef029cf9c9d2c56be0039caca643be91bbd52cf9c2b5e58d0fdc6dacedbb6dd3d73923e5358e902fbfef5cf5bcaa7183bcf9c55d4e1822fa72093913983ed155dd982e3aeadfeda45d7a3bd9d19504c0cd7b1a205f9b8c6aade73664ebdb3c070c9ff7eb43db6578a850a696bd6eaed5aeb0a0b4a6e925129a57b0fd967c50aaf99d7eed6bca363493d73ae54e1e1fe7a92b11a1f55af98e8e1a256a8b0e4aad1b9ada69435f63aa5173556a640953fdcafbb8c4975c58a14b6524817c7750d3edf17b21205b8e8b6ebc79c3fbaf77534b3f660dceadb56f345c73ac57e1d73fe6cad6c73a8ad4b32ca5c5bda9872283c19db5bdd923e81a9f61e53afd87ab3bae4700c5f837075958c598c2b7170c7f6dcaf235cbbbd449d3b569ce0e2b2dcaeee595b2bbbc94a13ba294a65cbe66afdb63a3ce7cba80d2b4c68ca687bef49c9bb963b38aafb37461daba58d555e026b8bd57df6e794f25b9e399520abaadea2e46fb49b7a9e39e74a127c5b2e66ea1baf4585ac2081b2a54abee7ff5e72852b6fbca5aee2624f32940ed911d899afeadd5d15d99911fe3dc5147d08e972c775a3add55aabea1fdcc81a17c151e8a02f93b297fda26db427575bd5562b9631fe085688e0bca05b5a1d4ba6bef8c8ca10dc7b73b70fb25bec392a04a5686d15eeb6cace350a49b21284e7a2e2b7efa2521cd91b893aa30f3901c2a2db4aba73749532cb321918acfc80ba07e9dab79ab18b2e7a3a6cd017abab0aaeaa0f2eaa567ce02e7aababe1378b1e97cc3487be33332af5402d6d51b20515afb791c52586a9f81f1df9a1f1c10a0ffcad2fc7ab314a9babe5e98860650711ae62f0dfad8fcffa5de6f4b1b20637e9d6f1525ce3f367359e47e85abfaa5cb5b3b79206552ec2d7ee9a5a4143512abf9ffd82aedd521dc8fef7a6685b2d075136935249d6287c0a2e1c3c5dacd5c5fcc9e6ddf106ded83dba6c416583e6cf6c39e8bc15a40e6bc0b4f2524df136ec854e8397cc6a5ba5544b762b33686c6d54523e8fb4d52b5664a0167b0699c6c8b595839e39ffeb919533e852dfec41aeab24af98e11e36161d7375b11a1f7be6c462a50c4a97d5c768a5302eeacd33e70a1991bdea8fa9d88b7e7c6ec8ca18af3e42e672c5c8cb2b7be624b222462ff55d1c17edede7a467ce9518a8287dc985f2bda6627b2b30a052aebaf045d5d6fb058ac1e8aa82ab7f99fa5d09e33de82b9b4927df496ecf9c2b2ef8a65aa34e3519abab7581d19e5afa24b375b03aaa565a507f9b528d55d74be9832b5f28251f85aee2938fb1a69e394b231169a94ca235f6dfe85e3fa9a4649e518c121549b8ec6e2de94628e32ff5ccd9e9399b884125122c1d65063dbefae8e20689b5b2baf6a473afe5e78e0f9547f87352aa7ddf5e5d9023771ca12a2f7cdec5dc1f6cc4bb65c5fa5f6b95f9075418f118ffeb16e1a2ac29183d73fa22a4a4ca5b39a53cb6ca14d114af8acc643f55ada067ce44447705a147f88bd98bca33a70a22e242f671e3f7be33a79e390fc11aa4aac2a7d15f6cb579e6340493cc9d69af3f4af7fff343a51094be646f3108e5db5daba34208c5e4a335723bdc27fb3d733ea132881663afe751526ebadb1e417c2ff5e6e0e3deb6b879e60ca21288d61883b22354eb29d9ee9953042a8068b245261757e5cfd4aa9e3941a0f207b75e31d6ec9cb1efeacce907e5e83fd8cb94accb5a93b142a50fb0ad5c582964ebfd9a29a2c287b59c3bd8cba4fbd55e9342650fadb957cecd903d730251d1c3b7aae437b37ccf5b4b953cc8d8fe587b93a650c1038dd279a45c5dbfa42c7ae61439142a7778714119b7ad18bda1541ed29c4fc50e4ebeb82ee95bfc6a9da9d4615145654328e38a9039153aa8ea4ef5aa7d2e95838c7654e6d01653b44ada5aabf5492507ca71bb4606a1a25fe3e0b035451754b0b182b4e12029a40b21e5251ffb1876428a612746425554953744aebcdc2dc82be3369442c50db2d57bcb71f76bbd8d3d7376a65069c382ad7e95af99f3ba6dd9b00dbe650f3e0a5d747e6b8032fe37675fb96d43e599330a153540b52e3ab6dc3ae998b167cece48d4514983d3c54d1d566e26d53acf9c2a7738575b74096375dbf435090d1ba53f3ff9983dafcdb91d5e238dcc55ffc84f3de899330a9533387fbfb1bd15d7f6a2d0a3620666afeba25b217386747954cae05da3d3afbc9a5b8fcc33a7101532a8d85c5b2d99d60a7bb567ce1818244058603a890b93d0c7084c27d1d840650c3446d95ead0d4aafb5ff878a181ac2b69c21431506ef57fe74f12f5695734f1455a88081ad53dcd2bf32536f95ca17a274cd634749b7595dcc25191818152facc64ca9e7ced5d1a6a447a50bd0b1d6dc42f8ec991346662492f162ce9756e102536d217ccd2584de6a6c2a5ba095765595637595515e1918152dd4ea1d3db28cfddcbe4a165adb555bd7ea64f752a8b2ed15ecf80e32e5999334f34ce654a27285d62ef26afeffb0adb656708eb2abcce23be6623bcf9c2a5568fc2f1d858e39a4d4a5674e152abc16d9b5f4b8b05949f7ccf94e86ca14dc73aeca48ddabea1d371529b0a4adea6bb1c646ab7b9e396da012858e0e1f7372df55b79ed7e12ed972b7aa9c6acb8c0e86b0d7c3dace6afde6e6f8fff6989f944f9b640e0a0aca5fab7f9941564c9fc0d85bd19f56499f5b3139e2ab6c495f1afbdd3b8e832a661e95a455414a6975c253507a6debd7be728b35812db89a5cf0bd5dc56e99c06bb7975b395a255d8663db62b7a8826bb1fc5897d0e0bba3ebd1fa966c5009fdfdd4d6fa9e7451499584b68cf935a8dabae5d491c0cbbddf4aea1abf48d71b1e576410caa58ebe7d47808b196b459b43c79aa346780e6965dbcc41063dba212bedda0e5d5ca896ca2230770b5bc6afeefc5b6c83cad8ab5855e6b5d442227c7b7055e64dbe5ad5ed10a06a19f92bacde14a42b8467e9bc981faec59c5241685ff9bdab8bc2dd08231014f342e80da17c51edfe203aafcaeba5dcaade4a36dc7a51cab5cdcce3b6f401a5b5e9aaeea08cb4a5f7402d6f8dbd56aab29594f2c02de55ac996b5ab6bec3b70b44ad5553e66fc605d833e6fb2b5d7abca856ad560f8187ef5cae0ab66310db9dcc566bc6a51afcea1f15646d8f1b7ad0e222f752ce953af3e952e07ab7efbeef58eb29d371cfc4b48d925645969f70de07ec348775939fab16df0f01f85fbab29f5adb106ca39ca5e6dacfdc5baee99bd03151a50a7e032f96d29cf9c2a33a094f173cb5ea5d5fd9301fd57d5aa4dbaea608d5139a335f794accbd556bb589bb1cf55576b63bbdcfae85aa58c7dcc216bb51995ffea91c18d3d5e5d5b5b5c97ab31b81b5c55f5da288692cf5a56ee08eb2f67222e3b50898154db2455353a97afcaa602832823eda7ad41a6f2025e8c41aa28530943c6570d5953f4f9d3e802c9145d716964ad697bdfa10286affb930cddb3ea2caab4c0e5726dad62ce17b328b750f98249ded7fe3a3e84ed7412de64abfad16395fe2f095e4a2d5adb354a65e35d232512aaf133b86d2363b8be79e6147191020908ffa1aadffeb54aabf4ccd944ca236495fe2fc65654d54a9767ce961447bcff7eb0ae8baa1154a925e1831c5b2a259d67ce1446c8aa9ef3e7fec587cc92b288e7ca8dd687b036e91c2ba245e5cdd5ea6a7df3d7825871c59ca067321a894275d4c4c5939288e512367db7aac3281f23027ea3b5aeaccbb5467f3f2aa23123e510901d3ecbe528ab1a63ec428a21d85b18d9ad5a0cd295454a21a294bdda52bd5c65b8a40749a88a39613e2984f0f558fd6ae67dabc126829441a8c694628add72cbc96621242948114464ad5156a9541c5985cd3367a754faf0e8c8272510ef3918dfbed747abab35940208a6dc52eda483cbb952d23327496604297f68a99482bfca29acf5450f8c6814a43fc6c89c9de207f9f4b15fb0454561c7eda4f44146d64b41afeaa9970be72c3d89a2e3297ce8d6712dd960f5eaef65a67e468f24650f10422921940e693be93d4ad1c3c6f5a0642b6ebb651132a1ac6051246051455854152c8a088ba282454dc1a2a4e8d1d1d420250f1ddb53ec1ef355a97b918a520a1e183ef6566545bd3a09e393f7108b0b89f46da4dc41d6f5b831b3cba5be498f1d9a47f8523ee576d521bacafcd8c295cb15db4507dad1a9ae70595d32d21624650ed12d4855d777b5b2077bce242972a09432cacaad5b15f2622b0edd8b52b8983a63ca9f5355a4c0814ad5701f6db728652f58a4bc613d57e5621232cae06e5c6e60a7cf14d265f26b7b22a50d52b1854edb4949e163ce33677d2b40296cd87f70296d5f51d297cf33e78b90943540a7ec634377bca06af9821435c4ad9563a354498fce551a20a49429de5e4b9953ee0e77bc0f57bde74a574b41035c91d6c7be947b59a1b2e3e93efccaeef55b75f104296758c6afd7adf56c3db7b86b9462065e18fbc185ee952a83834daad5af767caeb1eaa83052c8a01c3afe8ff295fbdd1623650c72df6a1af729748bae6f2f450c0cf95bf3d5bb8ba5ab0b8c9430c0de081f5be6c7dae9a6808149a7565cb1db3fe79e8320e50b8bb915616c0d32fa28939a3352bce08f57059bc2a8a4d2a734819483180641000008ea620d029311002030281e8ec6c3019154441ae6011480025780529a5636144943014910a328088220886180318618a30c300821e6ee0ef94da9d5d68b4006d7bcd5f48a8e73be721ab784b20ca0f96a7fe5eb582881d82f4bb873db3a707e8e5d2ee04864ca22a90420d969ae8d6851d60864d2cc5989d907ae9aa81eab32cf5d2c60722c97b72985c30e4350b543fcd76b211b2bbcdeccbc3c012b8a45249a9e00715b80509924252568fa7b01890b28cb0b7bc5d10dca58537174fbfac5c26ef160fd3fa577e1e13c3c94688d26de0e6d2d08ac2412aa2e9491d15dfccc74de58037769e0887163a330b15bad030f437598aff210fcee9fc4b414bf8d54cd0b81d48a3650edcad7e867a6b6bd95fe62c4f1e24dd2e3996c8df040ec4ea50dea90102ab963f0138e17578bd20ca0bb7d2b8679a1378a5409a9911121c2090422204e4a205356adca761ad3b9c07084da6b2e6c97d357db04f13a1659b1ef24ed9dcba4be3edbf4d5cf1cf60c30cb4e3991c1fa23227b20ecd0faad503851811b3bfe21bd5fca79dabfe482bf6b9800f943e2808ad8515f7b3bd23c7fd4d1adcfc249d7b70ab293078290cc4e12ca4e62274815f0d9531f2fc1d75326b9424a9a32c05456465a4a2411db0674f5883fcc4bed71b6ab79c2e592fe9dacfcc6fa6966f948a1505a462b5a55ad8755f6cb63c5cd0a5cad5c561f99c2071bde29e04b11774f36c7cd5d96f20dffe29dc92f1b15fa765b966fa050829849fd62a44ed57ff82769d18333c5b41c2ca48b46e446c2f7172376578761e59a93815f5219678392d1355f8ffb8a7bf05657d31fec8ade0078529b8097b89d39d1087013b0a75c1068f711013e2f9f8b58225be859b6e6f2ddf666cccc5d0757f8e45a044448203556d8679a2b5eb381d09c9b29035ab0c49d5ddcf4d4f52f249b0ea6c69eb918655c10f27e7e1c7b355f9f6bb4e973c5a538b1dfb450973f698948558081f2395ab00ca4cd54d728c81ba47e153617f6e356e15871375ac608fa5ceaa6d2bda8f59ef3374eee405a48b34bd3617becd49d8f91973c70ed091fae9ddb00633ec1979e042ad5d5781d76b5f4e0bde13ffdb35cc597c7483051f5ad4a1195ed1f5580068c1cdd3b5c52d0609407fe45663e5805b9e6f0f344f8be583aab3a55b7396a08d13bbed812f2525f873eb8fab2802f42216c79ed6b3b124d31358a859e922e42da61594c4ee0483ee2d985b232108261b1205e6ab5be3e40522703cf7101cfbd7f56c52d50e43dc90d188fdd7cb0b34c17dc0b9dcd0711df81c3b1d626b439c3f4ee7e917b1bcf249c13d5282f15e4243b2046ab391e8f68f4967b60608a0ccad152253f94be6519542f453e30e9cdf21ea4fea28f771b0564242ea1e22c03b9b851cc3dc801851e34855c070f5df7155c50f1222278c79978291372e4a212038d0cf14fa1ba556f04f829438966b18f7d4062c91bbfd7748bfbd33e7173ef0f17306a223ad10027d3061c515a866c4849901cb06f55100383871ec0fa845eb77feb90a851befd2d0237a38613a31da65a486a0e4d4e0d2899342c8041ff6593f08be78b6b05689d1fca3d34e49097dfa60a538f97ca12af7d0a119da776e5b5f1f7730402e5df552086cb2a5ea8188c4473e518e8400d57fe08fd0bd67d7f8b2e71dfb47db4b71b01b8172b78027a1a3eca1f6db6e8c1bf3c26c538e2a22820943fe8d52263c48b9851e4503454367f07c61d8fbbe8366ea42e357b00eb32db5645f6d86251b55f44990d1724c045327b91c1b103ddd3dd2267cdf321163df3a67492336942f612444bc44f2420db300c320a17624b01febedb97d6164fcf70af8cc4cc6b436b386b5c78d32dd4f87ee8ff86fe0f932e810a963a38b37a39a32c2317cafac11c37070d4f752046f9ba89f4a917f082df8bc6f784ab9b4e54540b360da2a4d972b2c9532e818c738e4ac1554abed0951e514a7379f952e32e06718e394871107d14d376dcaf818b389b652f10dc452bd1fc8dcef7a41b930b6d84395c7d7354bbe2ba4e2cb6aa7d4d6086d5a78d58e6b1381a519f0b08167d4ecb8f9c2e608a95d633a2a1b10cff8a5137a0927f9ef7055bae0644b5e35d1ac38a028b1f44865f5bdc8539850cc695146edefedcf4c90816cada599ac85787abb98f99a402c2c84fff8828c1e1d4155b938a5f1b212b6e89364445d2b859a893a29b729eb274a882a1c00eaa16d441a3d6275dd31102367f277b05473611955c3b985c4a05bf67e54c8b2490098db9c6c274e9c5fdcc633e4e04ce95993815b0cfb9313634fb636c28248491e90f2291c51b178d35afc317347ede46bb7dbca57107dfdc20f95e27687eba4ed994a793fd2ebfe2f98ac0d063b3dbabd99f5f2f990fad2b5d7efa6bb0e949441a1f5802098ab319557d88b8154bdeed3e98516e646c89c533e038fce8eae5d81c91ab72ead19131c7a95df4762eb2172ea0372ffa5617e8f98bebe50bbacd0bf5eae27afe826ef942bd6971bdcaa09bbf502f5f5c6f5ad0ad32d4f316d7cb19749b17ead5c5f5fc05ddf2857af3e27a7541377fa15ebeb8debca05b5da8e72fae972fe8362dd4ab8cebf90bbae50be9cd16bd2de376fde55f5c6f5df08d58a0e719d78317e4a62e446d4b6339cadc758082383450b3a97d1d58294c20f9e70e7e6cb0aed0fe19b7f058bfd21b8337c517787d4ada36665fd75a66d5496bc704d8762f5fdd1d6c0ed8b66ad5abec13bd199a1f788887fc60441c8afeddce68d9b9e8dc6b82d5d42a9017ba28284d6f6fabf6d1d1e67929a407977a436023fe3969bf072a9aba254dbc7863ff7456cde1ae17437f752ce4f1ce47046a39b397dd5f501cb9c5a0905268c22d94a244802f29714bd1929dac75143edf686d40f29fca2aad71eb25cae664f545f93ca10d72f83ffa62c9e18c534f10cff8c7e014a2dd1d68b763c2cf86de65909e170e795ae8ff071eeba926cb638a63d7ace409eba9ff3b15f11b929af893669dae09e1a0616c17fe29720da9bf8257c751cf3fdce41ddd2162ad3d103ee681fc05038af9c77614a4b919018e7e99a94b7ad62bf682c380bb451ebb6fa90bd0db7375815915f7bbe213f0c78fe68211bc1c4433ade480c16144a9a5607094b7660db9b5c73e54c0375bcf960c4bb5028fb94c2e3ac9a0ec0480b08f2222d159b4e02bf42cd7ed084f2cde5daf18ede6aa9e1e9bd82d6699f8acabdb4bbf05e383cdfbce79eb7b974c94d733833fab25d173aa50e1f8574443d7acc3e8cb9c23b4303c9d1316b25b3183310bef9f692de98bca24fd1ca39aee225654a5737267ca44244cf2cbb0ec8c0f1cae0b953bc49c2268f20244afa735c5327fb5ac82186d2cdb410153a96475addd84af5c7f11a6331362f2caf3b00ad3eea0ed5ee6176f4769c70e034b3c3b81e89d4f8da563946e314edf99b2a7843f0ec323951e013f87257e45fa44b9b73b93d9cc30f9052ed6c30d0cbf0b972aaaeea5cfefb05ec2f9e0c54be90de2bb8e6c5fd19f3e8979f4d3bb14056e607c16886327f9ddc5c442620ae3ac16780ba699cabec7dc3b134dc8a3b0eb8ffda95b533bc9aa0afa9586f0d31d6e9beb59f5eef97170ab5a1dc36a083ef1c125400699f95d133150a3357092f9e57a7afa89ee0fcb949a7fb817039a0f16ce1cfb4f33d119c7cf1b62d745967b1fe24ba268df4b06813d4c9321e1b353db1f7a4920c082189b426a065a4ca0344791fe5f631ba821592a3df463c50a6b20c385174298e0125f7329ea3d0c6fa876db36ea4ed2dc05e968f3a081808d21407f01b588f2962b4f844aeec0a37f4c9552737a53b3d2ee9a1883256efce16a1db90b58b5529de7aba71346228619b5bfa1b91563f84a4c89e83503e694d38c15264817b5f04dc6ef10d9bcee697741e6f5130e52b40d9aa222a0fd18e55de3f2e646c87481904720641a0e2b038a62403e1042baf1fa77d65a213c18c0c04d10be11e6c82a4a8e5a224418bbe311e3af02206184ef38892a0633a1d3fa510bddc0fd7f635d2d06a3d68a67d3ffb19c44463a2a5b18813e8a78cc53d13c35e921cfea02acb0123f2043403f73ac5e8820f242e7ddce073365c99882e0341583c829cfd5615556b4d0ffe0d72280d2b5b9c567d798f589fe4ac40e0232e8445649bf1b7b82529277243d6758d0fcf6d4af5d85033bbfcfa525b06214c8b14a115d75a833640a507dae8c496bd5ed0cf1ba364f912b5ec0ef49286d21dfa860cf5bd8f27e028858d39054971228d46a3f70baaa4526ff98e86f145d27abd8919fa728106380034e8b4ced278a1245ad4275e6a6e2f1886361bb3902f4aecaef9e134e1c57b8e22805ab4fa751c7ba5000456472397891fc5808825e589c825264b8516e9979cacd6947d5f94d8e160d11814f4118ce83cfe7981cedd2a255d5a7fe11d34510c9ddb8867439f5a2f888161fd12cf26e65a53a1be765ef16cde4431e3cc7847552ed8ce67e78853010805d7d96db45759450d63601bf5c38388bb46a6cb82f45ed567670b41337b32b2630f39259e45876b6daa91f4d4fcf5dcdead7a4ebcb7b32d763f9e144ebd97f39ee91f1a025fc29561e1f0f9af68f0cf4b754402bfee5739e1e50576fb8787f38f59fe19f2cf79ac0e0aefa34e15f9ffb733020b4fab2987f023e7de18b9bff99fa64f9af49feffe627aebe32dedfca01ade6d757fe9c0f089dbfacf93fa94f9fffe2b27f660654d697d8ff7ff91337bf6d99ea1a67a5916847e0338d7bdbb5175e66886a07c588597c39b30aced4480565706a6499784102128da84697e18dec46af7116554abd9586a4866709a285f716e68dd2f81855b23e5e3c85f440e4732978cc568859d75c05c26b45df2f09c304c7960206c137baafdea0d2142f49ca642dece537fe05c842afb93d6fbe000f04c5b92c45bdd92768dd254b7226f787f7b821b289b9d90ebe83308049b65bdfdd4de5cb4a81a9e8d4be7252aefebac99703f38aad29b2904d081cdeac73503864fe0558e3853cb328c0e18fd92c4ebdb182ecdb45a93a9d912d056bb2ba8092d7287601f04b315a2c5b2d21aee83d5643f0a4e186d7cd4a3172d8097cfe6093cc94f9388b0307ce68662025cfaf5d020b3a8d3c15253c1261d0d077bbb510933710b42cc92236e0ef6ecde87c5d539a33272fd9036e932fc31703a1d348045d00aea5dbd974e1fa5bfb352f35fbb97c03bf163e696f8135aca723b7e3ad28be494928d69b32ddbf110e1b361a2c5831725dd8420c9ad47ead82e108f65a87090b37c6295ff80e1649862d1c416fca6e7a71cda56f8a6fbc21ffcd8d00cadaf42372e236934b4cccc5342705d494b2938c8d9f50fd08d258d584ac25a66490b5ac1523a235e6d4ff53b61f9f4d1869a27fb84b888b507ac569da264a501ee4a58604bd10704489dd683a62340f810844282cc0149cd89c3c89d40a05a92eb8ba577354cb71e1b7379f1ab4066e92182424b22e7a8b38b0759215d7e50a6ed92b36ed1af430631083b150ad45d8b8f3ecb8ce5b3346acd14921491ec22a808578388d5a31188c43a6275bdfed625fa158405d2620fb398d81fea34270d4dddc55e38accc6dfd81f1b070324e115cd83b901c058a1fb3143dd417551e9bd79d141fc32886ab48724d1096992245173875a9b9425ef4ca99da7fde21096e7a8a127de7d3decbda16e7bb0badda5bd53aa83c97fc0933c82f8eb300c5d003f181cb1316c3c18903cc4f4bc6aa77e3d52ec0670bfb0efa70ec9708fef6409dc34f5b47e13bf8511961e793ee56eb4f8cf4657fb34600dc540f59b5b1448e2c6b5da2fdef0e4e4b01eee3341033b025dccd608c9c03de289ac90ce6c7ae16ff97240e5cb397010dcc2628cc2a870ea73ef289569e061a091b08f86f48ec6f6f8625465d2485fc849b9d1e237888865307e005f598faeca07971d57010fc62b9d58572858fea242b15e6310f1779a1ac78dfcb5c50c86c1068eab3686294adc7681eda0059523d22130b00b0f0c9e189f7006a3889d070becf54e7a481151bd26f3d957a275e324b5703205add256cf359560e31b01f2c0d41f7fe9bb4017f1c21d66643ace73f8af766790d3f6f81c86cffbb76a8ab89a7a32b229d3eda1b73dd4b85a905333273c73afc2176cda7f918c22d32aff62c2d74c909184a92e900cdac1d98442fa539afa7573a8b12e62af0cdebef726708926a0dc4153b4d3c0be7b8709de982c638888454d41ee466ad6e2ebe2369141502c9a1b6130a26f3d03ac5e955dfaaf89ad9523250ecea18df2206a89e8aee40c7122b0676e5f40bd22b3340908c02cd9ee331ac50e6b006a1fc231c0130c30822100bde8b437c0623c2fd48614240cdb77506c1196da2b5e8cfedac33e93a3f49fbd5675117952a4c856e5f574b4c1d0b3a5d2ef82c57e99cb87a900518a9264beaca57b42d805f93c8a64740de6b87c9c49803d12b9f6666d13e603494433068514eb4ea0df130ad248bfd0ac6ea3ef2c81cbad8286e5401530a21e3f6bb8dd437c6116b3a86c8ffaab668ee4fcf616f1753473b358aa9ae883edbed44cbc6e4336ff0321ae0d34a15b5fc240495d5c494b52e1ca567a2456bc271ac2473578827154800e28607db55fcb5b9e775404342eb0a140baade5b7730ac32eee951a5a95e7387d0ffa74a2fc3a3a092ea3712629d86a3603d7ca7246dcf1c74e5ecbb6c3b3ec97303df09e4845030f326c75be3f4d4983e219287b21bb264ed3b37e77ac32974f16e2551b515b9eea5aef278f244ccfc13a6438a4c10e3292f4bc3b5ae1447d9d7c6d8116d42f363c68a56f88c31d32b842aa38e1ec0f0904d41c6b24c0beae93cf6805878c7fe0c6aa8945b050ea5250938eaabe6b60b0a072392f14f1c5129f4092643a207b0e16442724955ee7b4f009a534c8e2c53407bb6e92e8a0c9b1fddb738f300c54979f553172b04cace0554480ee76c8f2e592617548b919539ff626b868b706a343da12d8ee2907d3666ce81d6f7e383ebeddeb02dae39883057349a49b32dffc45cc936ce22b6833ac312986bd59b656b32e761e64fc1bb901fc5816b5e79efb45cf73f573a3ef64fe8c2a4ab95cfaa226f05db8df48a772bc3317168575ae2041550b3539a8549280689c9a5e6e5f5edae96f5f5516a0ebf840c4c0c48ae26927384ff3ec8c02152f638192005a6a1747bdb786a40b46f0d928211178c821440ae7accd97872097ad2e9ecde27b086d2d86e9763325670890f90789591486a234f58a9f6528289b5d244cbc9eb3eeb89541b56ffe543546eea194f4ee0a0be90594c00d75d92882df495a314dcbd292eb4933e24687f48b5fc0b6e072a4017d4ac2502a8580fbff45f10ec510f4ab49f3b9225e8775ff1973244761fa71f7a090e5c335f083c399c06e8bdc84c24e7dba12ec72ee601c27837468992fa71e95f7217fe0bf171a343a2101a9a7132204fb0c7a5db822c49373d4217d6a10af2512cfe23f9380acbc6ea04790095aacd0c49635673a4168515f90a508bc5173d97e7285f5074c5969937352a5ce706294eee04ec20dbc600cba3cbb5d844600ef38fe2607348b64eac185c8005b72332e2922a39a2d1bc5b0abb550fd17e9b9c6db2bfabe7208f2b451e9975f50a9ffe7820e513d3c9e776da0a2c778c16c2f8fecbeef6d6bd4d54957bcca501fc9c851e0db9ca5e81cdd922f7a42d7f4c3fbff663a008f3adaa73186a8d63444487b492845608df15226fc85302b9bd2a4b9bb2df04f54851274895ed2af20d55c187fd93ca25e07a83d86c8bc7c572d06a67b73b1ad4d3ffd5916c1ea83e276d67b1c4a21bcf7f1b78ef500d817e9a67f41d51e9f13d070780e8e7e8075d899bbc4bddc3e8452006f61347fb84abe4145211618180290ddcb6bb330ed10f8cc058c7d28567cea4ea4c425c3294865e4d269b265c7367ba7597f3a8f4fbf6fe0fafacc8c45ccbe0dc60a9b295f0af99e8204718348f3f0d3202fa8df46cda69694ce2b35bb388762f3bd39ff83954c71c0ec38eefe1b06cd502de3bdcb44dde1cd953f9fec4e31cb4b78bcdc89665bee3db49767735156799918441883ab9228d7d2b26ed503365378330df943db1bd7297d17816b4471c8603077720847d7bf65944ee240da7b3be0774096a2a8a8806c4c640252b1be69177260c3ed36d745b47452b45decae845cd509420285d018565e2c195dee998f704ac1a680a3f415e44d0fdc8bb3e57acb517e1992bb762d176ef3e421c2cd91f08a09dc581d165e07e55df3acee8e295d0464167c653981c52ac97e2ecda652e77c554c69af9121ea26701d631efb3b6066a45f1bef6c1950b8d458b0df2d28543eabd052fab6ce5eeb8192310c732badd3d548c7a0220ef0ab89204c0e5868b6dbf8c48327e511dcf7a1628eef2dd07b772216f2c983973b89bb24976be9b384981bc99103d6d5a2057d529c29e15e60337282b22f16f8afe26d74a92b8804e21550301f99ab64e89ef034ffc66100a5bcf3dedde65d419644b17e9b2769560f025695e3158b952c477094064c14997b102366d07f8431e1413dab146b31ede77ed7db7a8a9b33a885e64355015a4c9cf0e07270849bdcce7231ed159d7c8081cd12758228e78f21631a2ca277c109754cbebdd98d6614706b48e7d9f2c23355dc2a0f1706432b2716df9562d3d1672dcb49d4b6887a79bcc76fbc4bd83a741acfc363f12d91282a60c1862c2183bbe3897a47f161891257e5371647712de201286fc81fb23f6bca92eacc2b94418f3097383893b651fe91be4e40bc567fb05c20e71b3290a72c42214397e80f701c35c4b7a23b1736d3558b1307635465140e052340859ad50fd915f6097929f16ae5d2af82eb1bf7df15ae87a635ac65729c395ab4e69777843393ef4936f20190f8f0c1aa95ab7343ae9a02efa017dc370dd416c3f0cc318e18673ad8ad3e4dd82f418452963c2885aa229462ed540cd01f7bcbc257d9658b1530911e6e2c897bfe5d7e5401282b40e2e3f7ccea4ec1d97710a74c61861564df7b826f713e6a6365fd24a68cf4559ca84e7b16336fbd9f456ae9c2ea98dd9dc74270bf8e11fd178d0d5b627324b08a034f8511f38a0cffbd042ad891d9c97946093488300950170faec513f03751e6e2227f8a8e9c509f78434a2325e2c2b960f94558fa19ff80b79622e1520de7423b3f6ebb82445ce903ea4148a56e4a32bbbbd5f2fa9b04957b4a1a4cbbe89d4c5fd1db73d7ff4527ec7b4ea0400d4c832474f0ec2539764b826e70a204c719eb1c356c2421d798eb16635f1b19114942bb2a9f2bd1ee8e853460ef018978f3c32edb9145ba22d153fb50067315346140527b6d112e4521a194f615f2777b34079fce822629ad4ff2adab8737f0bb74ec1f240c7cef88108d491b9693b656fd029dc89f1d0e4ea108362085ab4699a5443fe249c8b6cee65d3ae1bc484629d76d952b43fee967b33be6b3714eab0b6f55ce7a669ab039a81439e2ee652ecc158dd7b037908b6d2ba2893e20d3ca8aefcaaae63ed22896183a03852bf6e79c59a4f93a5b287d2c832d24b53714063e944a3c9c307a4610169c1468a2d888add064dc1d1c5353d89b96962b0734cce5b78347973a4fc8a8f0b9a627811173c362ed1a030f0e3646fe5b91d6e502cd34fb29960da2fbf1dd9d39242968f3324f01321caf3416d1fb03874358cf97629f0cfb2dda841794df340ab36c456a2ef2d49a3e91d01782af4105b24f1b34298cd63ff84cecdb664471244d00ad63b065d597b42efcb841c121f5d25f9d026d2951e08977952a9c20af7990ea0c94b80b4b7eea8d11deb98f9f17b50df77e0585ca4d77a47645571ba433fc2ccdac36ad6cbef51a0cfe79ae1661f2ec4b26cdfde8a28ed53a8c755ad44ed70d993e0994d836b592edd2b314652e665a516bf20206a4bf662940612e310a92ccac12dd21d628a7cbc6848b3ce8fcf7f7dbb259d9abbb30edfd5aa211d9bf10c09694ab533966cd88e7e7f9479865de14d4fcdae7e73855636252ed86b2d97957c9ea88a1e029325de4f32f511738f9640be1f92596eb6003e461b119eea47dfaf91a47b0c4c60031f41309fdb154a326e4cbcbcbf23fdadd07361c87c11ae80db9b0396599b54510b5b742442a2a52f8a0476be8e5ee5ee093cafa35c05ceb13d2653f728075a4c29d5044026e90db5056481aa853065a688817389ff7914217a2da921b8f6b4afc69ae5c920ca63559d866dbe2ea3577e6d6880db0fab80a88864ad863791a7277171b65bd064e5ba0387309d4003d0883698c044ea15b34f99b6ff9c441f2172d7a29a1c0fcc0ea7cff75fd60a01cf6fcfdb57327c737434b273ee214e8aee357e8c0c2a047d987e43c7cf907257bcc4986cca09eff57137f50ecc654eb66d86d700663d62cb7b55855b38146e0822d8f57a48171f14a2d214cdb1307f6436e80ed8ee9e7219a7a1440dc0daa3c5d2ae9d775cbcf7dce3a11b3521b4338d666fc51f24f2f173f7cef0cfbacc7e3929e4f0ff2312c9eb6d502521e40e6620645d982f73404611e4e3b8757f7e705380ec9019158068f454b5dedec07c2c1ec4f1902512eedbfc364391f186141a0cebac9ea18cb5c66317608b6a52178ec519559dd06cd38261f4699e1c7bec58181c30873174e888e7372c2891da876870d2d5d60bfe322a5069b8f919f25356b601676b72d57136a86d697b77693fb503e85589afd2058e6cf1322790b9d58f1ce8acdf3c29434e3c80b532926c3f21dc742d76b37dc58a183adb251f72cbdc2bdbce17d30addd5a2609de82b0e398735f04c2deb088c442c154909b5da3a099c8d3d87e814f8b96eb414d9964c63c926b58c335aa9067504dab31746d9f7c9d1b03410b465fbf9ee60a9fc64e81f659c15f27fc786aaa84180c2b8bd1f53898e78424e14723dfb7d93ee61b9b6f99404239577f2e99f9743d3c0e943bef58ea5b87e915f69595c214ee18aed1552ef58a0f4f10e95d8b7a1254d50da2a7b6a27687e9bc1a677d64ff9775d7d4a0f7e11dfdba86ab3771bc47d48548bd4743cda3d85a5c11cd079b188a1e565728aa10bcc68070d46f4f6485a7fe774622365d5d0197a867d84456a6d71e5f45ae2246f40257678efce0502730dbd1ff90ae912a93c6892f5590ccc12d42e68079db421c6b5daf463123d7399404ef1f8422a7ac78cc51227a9912db0ae4e458bac4e4068d377caab13cfe17a734e98cffc898d289dce7562c8da886606fe26bbcd05b8694a46706a9581ea7c0c1bd76cd073438ff1ac8d896c0604eaa5093173d5caca4e5828740d96ac6701c732be774cc45879618e5c5297e510300bac94fb09d4c04f5979755e5b0afc065e09d58414c0251d2bd23d17215f8fc9ad6d77868a2d1ecc1435c8cffd945a9002f297a21f4d03218f0b5778f6212b92b006648a22894a94e801c5beee1bdb6209eec1a22475f38aac4d828035d07929a1125a2e2423c0606a08d20aa7127d95bd8775ec7322cd6233ba6cf2a20f000b9128a095b560a6a0490dec5a1b4db74e1a2ae04625c64aa07f9419d61361d630dcc4d266b2fe5f8a866027e03e3f30d6d0087d58ee8406ad84c07312518c153afb3d4eb485e6a30a0d85aa54ca05bac079aa874d71f13e4008204f18e0184d41cc0a32356a06aa6326c6671835df97b4f19aae0a62d8ccba1f32fb2d4b5916a903f557447a46921e9f84fa59f57d0703f69200b08ead1788adf836c1abc762cd77f0af03bb6f2861f954920daf6fb502d64c02a39d520fbcc7bd020dbc68ecc69fcdb38e023db8e64c2be994f22e3a94ac9b0e44af30a88d4027aa5c83ae6f84ffc768e01537c07c692142b7603aa0637a5eedec0b66323557f1e663cd8fa23ca4b53fd4e8415a1c1463463b18decff31befdde438ce1fbd090ab73b54b3efcaf0d06867a034b56a1d30cf048f925bbd430e9f71b0e1933bc8c9b47d6d36bc06c2c0ab265a8d3f2a2cfb27316db39ea1d90fe11d7218fc4176f4f6bf30b5490a934d5fbabe9d8ceac0d89dede40d3038797aa30fcff987eb152c8b2e00d4ad938c1f6e678ddca7fe33f5f707ffa82a707cac3ba0a4fb5144c8291ad2abe9ec44f42a45e0cdf3b41fab4cfcb1490fa01f3a133d1797ee482232c19cac1643702f80dc2c067d50b8d6d0722b703a9c692b65721d7b303d31a77d89e2a5f2ff1113fe14694211e0a260ff1679b6217bc7aa33b2bef8f390713557f8cfb68ebb82b32e68a8129d9714ce4fcb4f8db2849a02494911f6695e0771debfca1ccef8ef7cd37435716a0ceaf72ab8b759e9d708dc5338ba80a29590506507c78c61329a47bfca099f57d13ff68dc0ffb4a741b59fa5b555b8bf3acc25fa3349cadbbd19d8b03fb8c9b943b26f41e3b6da2b5ee1e25776bc9103f091b0b3322c23e0cff71d187484e9c31f41982355a76df79004c403d0cf39fe9137738d2fafc24f52bd7b1ded9473465d47918971ff45608dbae638b172d200ad66565a54ca79fec7c96f4c3f642a745a8dc527fceb7f185b78325b30157c38849e282606a67ead23dbb1cd7266c7d1368ba31dd55dd1f8b7675b7111f38d553624c88c3a89167d84454de5b8a723cf9f60c2abd82152b4f58c2e33a35e9dd113af94d576d23083a19074748123b7b4cea8de26ee2e92bc0a37e539dc16d66bcb7b7b8ff6ef5ed6b7effc9672d8dbddb2e221b250e1e19269529bb4a7ab8df8dc5d934ff4594f3d4ab0ff31c417fb80782a648519c07c1df30132215066c2ec06fd91fca7ac33618e23e2a6c091551ba7fcc218dbf6f7f85be00cb8f69443369ee20eb74c1cd6b4f55bcf3e928ba90571c2df6d7d4a4e550eaf1467cab6de1f07bbb2f7163c2c12742724ab4091b77c728c8479c1859edebd5f940bba54f7c3b359520bc45a8125f05bf1f48116fc08e3b542588517873262aa88b8de312ef412a24e7d6a288f43fe1274bd5773011bb776d162998b98728eda31476298960ef475f1b39942c5d7cd6a687abef93690ec07f4214359d9affa6e061868ce98dfb2b1e17f940a8af930a048ed9120137fad941d22421d4bd33ad6c953944dd14d9596b90fc801ff3bc9c09d8bd2bb996c2b82b09274d76abbd980aadaf58cba5bcad743f78ae06e2044e66fb5a10c46e49f2cae555a9be49187819c93496bf8b8165719384541f57f96661868f66ae0de893911244442b8e4eb80bf38d45752d36ac81e4931e3bdaefe7a1375d0aa0ce35489626f7c7e96994801bec76929e1dbb19f035d6afb1e2922750feabf5fb1a2f4173019fe77993ebfc5d8ba242ea5c65e80554200ac864aeba83d875cd3bba6fa46c06211043cdb7ab75f47fe365a25b12466460bad56222630b3a536b283f894c99e8cbc01f0a59c7599af939f243b9e1fd85f0f717d0bca3e6c8a1ff3821ae80c21e10526972c8be67fdb36eb7c69fb416d297d22be2f42a11c55c8fd6f1280b695cf6a27981da051b8a60b0bf5114fb8878d742cab878708995304024d6e729bc4e77cbb2461b484a697b379ee0d84163bdff919410e2c61193aa5bb9f46da9c57e46738a29869b3f97f0c34a8a93bf9375c7177b432a72df01ff4d76465026f87d4e377c28ef316ccfdee6a10dbbe540898c1e2a797dd5a376ccb77b06d0fa4091ac87011dcda4f7fa33b2458569bb5fd27d91724896c4d0978b6a1c6070629a9bf36f8556ef1d1b566d1d9966782ef7c87f8a0cf9e17fb7b85a762cd87ee8a84fc2bf8c6c0edca3ddec87963e4c9bfd406b4d072118aa62c7f56723d56f94681bd6c38f2d93ce98b9066577621cb99628d212cecbf085486e2c0a1fb96d9821b35750e43cd7dd627856cce3f4041c2de1dd2972becfb9b77355a63d2204c32b4c23ea5be02c0d05ff7a10ad6395dba9d1cd6535ea638a648a20f5ee5cf653ce997366d89d35a201f7b700fd52b9cb0e9b58c508806f1f2bc375d1ac9401140b43e81cc42af38f42a1a32dfe091e66d29bdc027eba0db606137ab05a9b2060b26462d18b6989d2c9d50d5b5bf0668704e9a12138712ce0cd6da46c21524a13bf7f76c9fd3a891d6eeef22753608144e1c47a3f36691d0b137d9550ace159f80e4eac4c1da5867517322439f3e18a714e31c52085eaa1c9ddf73b2a6c11d08cd107ccb9d6ddba959322c083aeeb84e7164bbb3981f9ac285a37f9ba4e4809a6ee135c8b87e7fef6a2e0cc4d5d37ade3a52e3fbb3ce1d41360ca8160d2298ff85b5cc29675e9303e81bec887a1c3e4a575abfd6cfe6a4fe2f843d6e47d660483ac1e3d46811f0c98acbf70d122bd4f30b3b8705e40a2533f3bd665d55e2ef2527c50a4a2f4f9ded647ab2dd39192230269f2047ba2ccb2b3b3c708ebc96c4635d1455428f74d96d861be800a31a873c5032501324d3cd181a67d838d1439dc52238ea658afeb5ad6e171dcd7624d754c4b59c72d4f42734de01e7d3f3241fad1ffcb904b90a831605f71f11b976a8a3a19d0b1764a47db50492df92b407010bda962d0043821c224f8bc6460a01057c4ef3c0b6ba11fdb005b148ca8bb4e158df19dd72ac14df5f098947c2f3fb633bac881bf5c09e319fb75ee82144a380893d5c62b0e564657f0c6d9ab079b190811f6bdfcf66aca0ae0f31c9b9525053adc34b4f1ac67f1d614da8b9ca0afebd6c3766f7de4e56582d38fb3fb6e2a08405e596ba9987c6cca1a3eb8682f2f7a2101d4cf05e960ed0d43060e871b7f90c6c6d6e225bb54b8106e6b16be48753b30dec9381a96eb133d64be54f5dcacd1654708dde924ed5b0ee805d514fa0b086bfe4db0f2590285be1129e40815318f13ae7e9e70c1afc4093c4449d421c22b9c275cf83bd1428f51147588204a5f9e3a855c98b8e57f2671643ea1a6f473daf51fa72cf618814aa70812f49e08e1c7a98b3f4ca8da4982043d1125fc01eae28f13ae7c9630814f44093a44bd88e384ab9f2758e81b91820e5112753c01eae70917fe4cacb08394441d2248fd09c285bf132ff82835918708523a457801578794cb552d61c3ed9d6dfd68e332dbf2d8207eed716bddab319fda42643c4f7cdd8f124dc65fa492eb10cd8bf09fe4e2dfa7b4b8f72829d62d4a89753f25c4bf4f79f16f5356bc9b9412eb16a5c47f83f2e2dfa7bcd8772927e62d4a89758bf2c5b84f79f1ef535adc7b9414eb16a5c4ba9f12e2dfa7bcf8b7292bde4d4a8975d68429e9f8236b40947f98ef8cdf449e01f652dd0389f7348bbd46a3a84ba493302a2052f8ff216d1d4e9fb74ceab1eb4c359f0a5d17f42862a40995a9da7b9687525628ad3a5fdf2855ccf04992048e86a036cd8f0166791a4d79ae157e142b4ff78bf3735a60144cbf0e333b7d7fc994d949bfdebf32c510072262f9c4fb220573341dc67e7a794135a716a604964f36c7ce9a87f8ee6361f6b39f9561385d09088e8bb1e00b5aaaacaa05c9b72c7a671bbd48f0bcc9455506d26b68ae393f0e4aa5846ee9d07f4dfbcd198af21cff7a0c0a2df9ec289f90987e8ea0bfd50a483f56222f3b433e28079ca99d01368639126b4ab63149ea0d898e815613c6041df7a62c765cbbe7c41a90852af5d7c1b9c14c0707982838e122be1c39454f00f2a027c0d9f55001ec2992e3bac7209e67910a8052865194b94d29b3a35414eed51864060fd1b47ec35566818d720d008c9d9dc4e025c005fd99d136f10e0008d3be7ac799fbe4b3e6999874f6c01bb69156bb3703968d35ae412fd63c9851d3cb79672a794e41c868387f03cb09286e6c00ac8dc8eea1c22a5398ac39bc789a19b7f56b3ed6073575f85f0a0805da1aab8188f2e98e020f10b4550261b88ff9d8623b167f1fee2e6dcfb2ec80de1ac7d5c89565850145178f917216bfbee8f15c66fcc05e8f4f5187f3df70e41b64b2d29564098bc4b9f0e6c74b1f3c08a8f52b6a4db7615bf66db05eba4412370bbf189f761f8d2372982b84703502bcaf4959fabcb638f8bde7e626c02e8567361f7d51e72d79db664d3b2937fedb6629f977fe4aa2c64926686876da55e5425220ccef48adb5b7fec7f9a1d581d0f42425975bb50c9a5f1d9dd706d81c4fef5daffdb5fef958fe30b81858d54f51ed6a51746258e872e20687fe3c96727e9f8c4f881436c8958deb4fea8b9f0e7693b17f18225d3068de9d8c0cc0237930d67b8632ee60a5dcee1e3b2c399a4a3cfe81bb341796461070f3795c90d0ebb96f09e92e927d6c0c5794393731af215bbc206ebeba3d2926c44cda36a51398319f9a9cb6d3e52f8caca83aed29aa691f22b6b6f04d77f81593da13b50a789461519d687d490833e2adfd9df709d996d63c78b16ead17aa53fcba1c5df643f4574e8a65b44f6c5c4c53e05a62088d8a36c2150478824d34515f397f59113895051f11d16a007e401103c635c9099870cac114b1ba7bef45d4502496ac84b0548aac1c33b9ec4b31634440a35cb4d565681aa1052eaad5eeb45fcccc059ee4276aa526747a01437f0cc8045030c4075e6dae913f851c3129de28e0db289453bc14d9c79e88031fce3913ac454397042aa8add72e755e102a85e6929810be1ed09bdc9043be1dc650f16173ec2f871ac5eb79d81edc71b82a2ff7c939c4b76177059ab4f8a8c1cefa75b043cb9378bc4985bb70f9a63bb68729f0c0c0134eada174f95ae55e1340b110dd6b3f7a5ad7ff73301c54751fb513bb3bef654b389b21c87e0a01de4b6ae0808ddc5820e9bdd7831a908cb7df1f203b1c46a2509f58103f1c09eefc89ce5e869fb0a9048d97afa16fe46961fa1b854837b8abe0a04e5ede89198b511728dcfb298f11a6c5d2c31b7f98e682cc91c576fa6dfebad01d52e2042761a9ee93a1059a507aac061bf33fd2693b9e73d6407c7ecc61a8fd3e79d638e3f64ee70960ce6832beca69421f1facef44af031034fba1a5a663f0f75adbfc51930b170e56589f71c8add3220ce4a0da5b66c4beceb8b03388481178b1d039a465ab5e4bd22c10c3ee32694ddb4c00725a28b12c14c556812cd3ee02baddd16f422cd82917e5b2af13bd18e1fab0e25f7c565f869e1a08d3e01038280dd59bec51bffdadfa216e88df3c7395941935f5a6193418d87cecdc5cdd6542b3a0baaefd8167d62df8a7f5b3fd779d76d6fcf74e3be3bf87dc38cf9cbc11d1b3198d20924f9a5afc69fa8ad4c8e0b87e949341bec8502e1fa4cd1e8a39ac19de388992f330fb2edb069d6001fe77746062997928f80c3f44a032512e9d78f203a32601ee57eeea378abbf4c85a711ed7ef0b601f7421cf60bcfdd7e6a25b3f16050144e5025e0cc8b96f82d77ec088a797c7900529f0fbe84feb2b6808b906238b96ca88d672d44b16d1ae194647446f10cc15c45dc494f618962c59fd1072b31142ddac83e9210805b862ec8e0ce410f676c3253168cb31f011895f5e293a9d83408b9868a30dd9b71ecc9c2ef125b1979ae0e452d789ae1afdd6faf43895f0fa7b10d8ade8028570b8599b5608366b174cc85e3c29fe98c9035a8eeeacc008ff6f1c77c31a935ca097bc91edbe44f16534208c9fd3fa40d4d05d65a7e97f188f8b49995530c1e7b93e70165a71b94c185ba8b6f24790a457796ae4c05e1c7eb404ceed621e2be5f109a60cbe21925d44086039655882e8434835b39431e1749adc12c4f99dc40bb4eebd316a78048981d8c79c37d899813984df50bb41ae8c25bf0a66db92cb76007053106870a782a1d2407375845a2cfcff9cd790b47ba43ffa5185aff8c23ea334a70f16b19f613a9940c90425139e4ca0648264109eaeea3f54ff2c5e48613db4b36ad92d9d36d1f594f9469e5578c557148774644fe541fe6c221dce99c6d552ab26e5dac756b23cc789ef4daa65f1c1445673da6b4905354d00cba05253a0a2ab0c8ab41d798c66881be7df86cd3474115b240391402a15a31bb55c3bcddb8bef5743d7396ec555bfd115d28cdec23122acb369e5fa5969fe5e4fc4bce2aaecb4c64f102fc169f8135bb0ee3342f860edd8e6328283a828b2432e36fdeb392acccfc1f949fccc0ee43821d8ddba75a5c80650078fadaa596a780ba85ca44ed5b7267efbf593d1199cfd6bc2150107475555dc3a08a2d31f7c286360c1a1e67df4c868beec44b40c99db8a0cd4c2aa6a1ff902c23941dfad9986796435caec43504a0a18c9da9d428423eefa36553bf53acd985f31c5bac4749d4eea3df744d6656084cf4d2536f8038a7c4e92c78f08dfd41f7d4569c11aec49c09c17e10d3fc6e2e0c6eccc0e2ac1332a0a6029b19d810a83d911bb95cbfd6b436e8e8a959502ec536211856881d40a38a5a35850b2b0ebf36d989722055cd5626204fc5c853f05cb00cc7b2c847b0c8cbb678acc392e1dd59816d5f576c81300f8817e35d9511af0958e10e63980d8160c136cde4891a9ff4cf9da4404ff085b796c8e64cbd567a77e00482a1b9719303857bd9021150a1914745bf79ed17202b280c86557ed63137f6000cb85c0f9384656ff914aeacdbc089f8b35cfa6989bb304d942304740d591f0f441a6ea1c4d76c272aadbb65301bc47cebb73e85d40dd5f7b26f60f338cc07a860724c6ebef27ae5339d82fe6103ee08eafeee7308967ca39089fd48c361ff189dc3f11bf22067f464c106f3910f607ae336ab0892b468207224974f469568a085e9964165e353e5007731cf1dd6b05c94ab2b25afdb9edc5d2cfb2fdacf0a094bc7abc91db1432eb457561ca232ea0ff473885ee2f5287d5bdfec3b8958387de849cd543d5507f034c392c8ce139dea22034ac57485a413364cc8f0ca2d43b317dc5516088e660a0f03bfc9e9f14617f5d95ff30e351caa3c9fd6dba8fc5289da203c0bf888f59646d317cee4dde71bbdbe2fc4c963bd067df112de1332fdebf4d7bf548159d699f57a3395cd1858ffc1a855cbfcb35e560d9d7feb39f32ee24a3c10e45e24a3a0a85881e587f261a480e9cd34afb341666ace04766feeb246e61440b6f4b297d73f1fcf0f85b3d856322efcd46d358168304f98ad964df0c7744293caab179f616f2ba5c00fecf27d7e7ea730b169a39f4377396701dbf1407124f80ec8c7e2043303d85f306d960d94476af26d653a1dab087e281be0767a184e269e3d7d3b6e74bf6553429d935e5b5a7eb3022c9111570ac5919d58e8085869cb73003dcc9666602157742b5460855ef5152ac1ee113380dca4b6ea03e349df371ca8a6e0f76a8ee587027e455745347a05d41828a341a45f08bf5118d66f81f35e84e3a3916147a4e87526293dc6399912d4c879f2f769d8b32fee91daa5dd89be09bf7e3f3dd17bd0da50880c010eba841abc3dbd5b090962f65e20817ba0079da0018248228d4a09158d41e909c6be0d20c9a7857198c53d11fd7d6ac4f2c2e0f313c5c727270e9af66addd04ebbaa6e38273467e020c78e67939b2743e53727d39bb4503a0e9eb9da647bb6aea2e943171c9bd068ce218c3c8f9dacc12dc1027191e08c80b4b507c9a9ec65687692f635ccbe66e4321268ac260ede123b8d057c5ce385e8a631c69f839a0a50f64452aa1e253c75aa0e0428bed1c8784813a96e98c2a32cdbda90647ffd8cb7f0b561066c8f4aef30db7f0394fa53e685cfb5fac16ece1c781817f279ba25afa1e23420e0fd8e7d94c6ed504a40be837f0e1d8f07dc72bfc4579b6e7e9a10f6607f277f16584e29b3f5f8c5495a77409d25218fb8a04bd5b069fff582c02be4fd4a8405b58058efa1a048fd5a56fd2bbcf6232748e40ae07164bfcfe2518859d8f07bd40b47e0c02dfdf078410e21fb73f2512ddf1be771aaa6db2f6ced43d8d70c86e9a023f632c1b4656aa4fca65579b096ec556c27a60d60c1c32ade0c2abee6cc26261ce72e577ca6040bc4a8d223a5df9f94833e9192f0243e1c4a6e811324c2fee8d4eb1c1d8a76e4bded1becb675fbcbbcbb05ad46b0e6306ae4c459bbe406432df8b02c880896e936a479e6040299ce8919ab71c3922ca9e664b56f6c66a852738fa3caf2e3800940194b3eb09b0c73aa1779662bd7d176ee244cb60a8691f0e98cd982338952439056bf310dd9134945e0086eabdd28690290fce4a8761f52263489658978c736fe0e6fa31901520f274410e0711f7674ab94a24383c6a66c1f479a2d83b444529877393c240970a8987bfb46bb06ee0993746de4f9591b96ef9e66ae298196ee0bee86942b411775a0251bd537511fb718ec94ba808f5517e22a1a364afea657a702cf4c64328b4f3461bab7f89b3ef7e3c0deac6cfcf540af0e4e90168f4125b14efb935ab057d45d28eaddc74021c936250d3f2149926b837afdc2bd5e14225cf591dee6b5bc5b1f2651c90fae3911d0ff2caee20f265f87b1e1a2ebddf7787efb4634a82a962f3b75151887afe5ace9e568bb417c540e1a82d8c3ca7367e5c1f60b1c613cc42af1aa888ea6ef20c1442ced719b9a8623098f6065f02493b1d211f3dd74d2f8395494db9d66f1e01aadf38ae576b98629bce1ad102c9e3224f46cfeca75e10bb3f16a3e38cb73bac896d57f00d4734a0239cf4edeb0584184cab292ef8604ae3f66460354b7bd3fa8ebb120c5d9109308365d51c2b417923460fb5e83dc17da21de1bfd7d6c256849f61678573491d7eac13131605ec1c542dcfa87506ddae1decd5962d1d31077e249410ed0031bae87362eba25e84da5942c023c21ac4de1baf3e4c9435d708a96f1daf9bcef5ba97f90a09fae67304efe9632a139eaf8069cad3b17debdba15f1ba0f66c10ba7b616b3a4626f86715865783250c6f37de6e8e6b7fd3368cac0ba84355b957fd75c88149649c300d422750ea214818df6d3feef900243c221a18da30a08e8706fd95fc1151a7de85ac1fd7008eed744797965141df71115a05e01f7d813b905d0dd5a18620ef6a3a364389fce306c6949bde478be8af3126cbf6f8aeccd5423f05c3bb8fc18cfce0c006a00c7141fb444cac931c59c79cc5d82f80a8ce5758ecfb858bfde2b97005e275589c3844bf3d01fdadead029bf4412d0c115f3735038136cd838f31321a16a3f735df6133c673134395793b3e25a6e0468f245883e553a02866c4405fc8035e15bc5f4ead5be0be9da15baababc28efc582d9f286e4cd8d5ecc82133a6a9bd6b534fdb32e7c1c78b4650f1ba66dbed7a4589c4a436335920eb9b819f3757955b8efde7f121d6d4c6127a3a0ddc94f397a7afd90767090b18127418b55e725d143ed9bc3f46d94edb365385cbff7f49f9cb9914b8493be2732f45e7e3d99ed4f671f183e7a9c80e697050320d444b8e67deca6aeb24e8570beeebdf48a09f9d6d0cadc1e061a2658dcf7361627aca0050eb93a107e7ee2579ff9075c0007367530b3ee0fb28a78104904dde867e15550059b4208f243da914eba9847fbd3fe3fddaeb145767dba73b76189d9dac4113d18fb399910f6474ad2f0ea8797d06887644032ee01fd4b3b2aa733173c15175ed86154ecc61d38baaf353c892a357bdcdc67d1eb0010401ece4f52f87c52ff72141699445b4a5154112b3549ec82b520ac3314701cb86a40f653610865e7c42356a5b6a8e1cb481861082c8a0045e0e40806e40c2bdaec48853cfa2a99fbd6aee22e93abd8f454229d3d5225bffaf97a1972528328883d0519cae8cd6fa49e63b9c6868c386eba4e10a34b4fa5182bd7be6f2602e04bcbb959887d027f9425aebc8c293fa004695e792233d1b40786897cd2b317688aefb7148d0a4c51404ff6609bce457c9a7c0ebf246ca718a718cffea839e225e2c0d4abf439a29f4e96b5c74cb2e967ae985b49ed3e242c7e100920fd3e959edcd8d08c4c157eac718a7f78f36a78c1574c60c7002b3253a8c44f176ea5c63f8c7047582ba50f4c26c8907e16541bd82f9d03aebdfebea165ef15b0a4a956bc4b81dd637d8af2b48842cf33021f543e74281b60defa5c8b52c49aecf3c8e76efe6a250016f8be546d480c5383d65c69a1aac584d70abd2aafee1593961e2418d3b9e2d7150e035593f2db02334cb272f017a982ee6ab56149cd635e172041ea4c095158763fb15def094b42c49d7b529d03c7fcc4d425ebe7b7b14e615b5aa5996ae42573c877302fb1e8b26d0da18de8390c575604b8224e5173a3923272dcee2c2380201af0026dee36f785d01ed2e1d16e472448f48bc4ce849541a1ddfc916eb778394ce5b648afeaba4a43f6ea0f1b92fa3407630f9572964ffc1e2c9292c05bebbe79193ec5fb6bd06898182cce63a00097e2bbab90e4b81d1533e2779170b1cca3a3b436fa895c8c6c4161f4a02855acef08e68a63affec511d7342d327f0e5a2fba42bbda5cd5350d12f37584d9a74eeb3a4fb454cea3ed92b07c3eb8d6e2369c1d88f05acd979dcef89182119369a9e6e0dd43970d8da6ad0f4f6dbb5488f9cf3f754ac986b7815438d735688d84cd9a9ed8d43d458003845309c9030f871cd07df859b995626914392ad3c03fae103ef6ba59af452b88271b01b8e0e98412d33c354c877961256193483c643f7a5d21d44d9e94333b29b5f6a90f576232b11ae0d8610ba49fa6defc9662140ca5485d72588dd1a9e2e9969345fd94e30cf96327f7d4d4a305539d6f2d9174621676a3d040840292bc7b641ddd498a763d40076418b69704b97fb2d4c7685a40e043c92761756baf46a86274e8e06b42603f6d8419f32084bdeca93beed814bae3de58d6c48215d4a12994d1e6ea8700282da85a56ca308503478dd10e4d7a45e47534a0261a4d0dd01f0e05a3b0328b49380bce1bcb62316a03fc7e19be5b270ac5f6985d1c156d3e2f0b9e3d8a620139ab2cb88d2c18be97d0988c0eb635dcf5f38ad89262e57be49eacb6d3e627910542e4edf9fb10189afdb9a145409fa3755f86191259171b6e5bc01d136021be40b844f9d3632a2afd1012107dd0d5cb8a888ea8c8762e9b37de3071ca48fc6018e7fc9b99166ce1ba1fb7bf30216c1bad8254be41e09a71056cb1e34ac45160c663cf7253a310ac298ce140caddbd841b8b079c14632595aa3a5a0f2a0c79c026821d41c8289404a7b1065dc21aaab61ff15443ea2e184f573bf0e168b6bfee6cde06b6880f48f3505bd44e8502d8482f9aba1aa3204289288d038694674f2875361775766b5059009e4adf29560432136298fda147ed67cd48871b273ed0d8035037ff50e1f612f910ff49567471b9047bd6ff15a81fa699f711e740e7e0526ac37fa0a3d4a529d888ce312cf8b2b0188eefb22ff0c5b41536f9f2dfa2a679d370300efff5c70ba449fbef3537131d16b81452b19c31f038006965f74fac717711d4732e057d666b168fe273e0cc5fd9268021a243d37ed86086d23bcfeed36101161448e68c342bd7e247605f6ea8a6393d74cce50be32dbdce50a203ed8e8d5a146a31078a6685719c1bd41e977bcc91f265c3f0609ca936d79c31cb8f99c025608cd492bc4fc7c8f25bdd13cd594333edc6ce5c5fe04a0bc629fca5d8587a27364b094415133fb0365381b3d26df6e2d5c64d81ee502e369b00dde35e2f7898e8cc5ebcb71592ec9178cb22e594a2ccd1f507ccf70cd549f2afc1d5996e964c46a87933c977e332a2ceda7dc055d49777af2872700c4df2e92e4777deb04facf127c86c8169a40e9642fbd61ff0a07d52d98f694c03c56a5fc87153fd8ae45eb8b0aa5262e025ddfb4b4e9a4d3389d02219291a8882ef07f2d688c066781de8cd544b00e0a7ab1a6a43e0b4a68bb5a518610582163f83da1d700f42eef897d2b2a6a2ed11270ddd64d792b2af653cf1e9f03d00d1ad3d5751a6c829d12572b825b00a0df2a11bbd42724afa07fced6d37e9e872c97cf60a4852d9c631695eacac7f5f1fe5bb80e48391f939d861fe4efd1ef167bc93764da9de6527f1e99bf1fee9891791a56569f848bb92e5295f8a3d515eeee25cbd372658b46b9e63497452568f3adb58882a459ad321fe46da118841b2111aa3217cda2105902103a904af891db3712aae9e63e97df42eb17710239f3109d0aab15d485c64bc7c70c50baa7e79e8a20d8ef0948b7d16fcef8a67a032abc1063d5de590cf3a06dc3f977604537deee96c41a22ee187bb7f0406f5637e22da300199950d3ac320d3c89c1fbd261ba537b81123c5f62e5847af5803a29a2725ede52957000cec5a012e369fd4a4889123f8f2d42e42e691da8fa0f2ba47c61d0f6fb575fc6f2fad2cbf0ddd3aa5b6f4fe7332157012428efdc89774f45327a52307238403370db1d8ad9668fe6db3fd05bfa27f8bdb0eee05212ef185cbdd6d111491a2e8542d79082348114d82ad4cff1ce40c6067885686229cb32293d8fd4c8bb81c0a04bf2658c2490cb6c2a7966d21679ade5c1342358f6da4c1bca1c7c7628e5c5097cbb57e3436d1783a7d9bb61c59f0ce14efe64ed1c35f43a1d2fd58af8d64063a4a5b5d194d8296ce3dc8f6ebe6d8a389967a734cdd038fdbe0e09d1a8b392de8f1248806fab51e697a435551641ba76c111fa1422186bda25a17d730040e171dda28128e64e34d2f20039c444fdf87d2f74dca29c00a81d1f3c80d660288813987177c3aaf43108ddbc633d9681955e0d3cc67aaa8f1e277297c1ddc4243ab877313f37c89fc81af2389612b1de2f2243736a1a112c7fb55f0127d020e6726a9a79b37b862e7d9a2135e1ec78972813051fe5c098cab929abbebdc4baae241222e63b4e7d59b98d27375aeb4010eb430d74038e3111588e66006a554d933b689ac4c9281ec03f8f8fe31742069987f50f19d6f4414b55e011c97c09f429d5f6d764723e6f3ad967578768ca946ccaca592cf6f440e52810353ed0688f0780aca70e896e28eeac1d537fb6f1d089436a04ad44383aa71d5f46dc372a9026ddbe74105163df2b87b9a329a3eb54b7caf48040a95ff5c42087b7d7fc1895a2af3ac696ce3431334c57424556b9997249adab30947794fd1e66c5155753b822f72fcee21a4f6e9561157b243839b4ac751c7fb5155a4b12c1d4acec8950d00afe5adfb8eb5baeb23b08f4b5089c10459592498276ec181e49ed249cb65cb94bb2888160dd43c697154df680a08805e416b4bbae3e51b77ad9f55f66f8923cfde68c789112391bb2f6997ab69aa6e4cb190cb365af0eb8eac5f42e0973fbe17a39f24bc6ded42681d16f4b058ee6c179fc24ba52737ebd5259c9a4aa2ebe4e57e1a6b8901e5895931661349bbd14fd7d25275024d0013ab35d69d50db243a1f9983122f0397d48b2d970d8b9de0ffb823dc928964d51c2e2e02cedac46109a3222d48f2c96170a299a77a2d1d674c7747bd1e4bf695d449e99b7e05704ede984f482a224aaad012af1b5dde0e91dcb8f407c16028d4960f0e764fdc28ddd32dfdc14b21ee18a187733974a6e376f8907f6f182995b8f2cfd7b11118c6e855cc831ee1cbde8ae794380fd8ec6cde0618a491e095f06b81e358a5d5c9a19297651044eb5622e22749d18f7cd174546f0c5822ba160fade0d3a1c51022c953ccc2a5212249a2c0809146b49ea753c56fc931a1325db0a712d612863d6ea224ebc2181d5ee3475bc071a512a0839178969a33eb0ae3784354f42a86548d2cc724ab540b60869806bf87f67cd8570af219265f586f438219edda8755c6917467d0e8973410ae402f2750a03580d851247b30af90daff2cb9feea77707813b6431c6a8362c188f24cca46727fbbe0dc72676ed4c18c14423576643d7f7379c861d4b814b4c58768cb7b9a326e54186712c74140c4f36e0a1cc077068c23e0585dbbc4dc82b9d51bed7892c9560259303e029e985fe36851cb493750f6e6f48bdd00cda8b99d3451797a9a686a94a836b3588164a41c5554129d5748a72392b551a7c78ceb4c10bb9fe9d07fda8bd610d76b5d3e33061b5221088968c46c95ecb1e8e6964d6ef44631276dd95cec843d632313d44d0617d0092594256ecd752b597ce2e3fa75468024ed0b700884b747bfcfb64b75e0edabfbf369ac3e7693ba6791628c116b90bbe5e1a72c3a5a6baa49493a6cee2c8230a92a2bb7d5127b56f32916c9b21508dba5d627679438f7c9b2fe3ae304fd1c86cf32cbe9c9c304e7e3cb918c8a48bbdcfcfe3cf55459b308db1b3a261211237a86cc6ac78e49a99433dae9f554887cc151180d8eb1bf42ef0e493353ca93cc49101be2b18c7ca3bf5ef4e5d59ef8e8958fc55999a4a68a589e6e096b3638704702b8874001e844a81c2d114ed4d980b2749f9cf6074e0190c09d704ead4a37c3d8a00fd62839e686e71397afc0162c249752a065b2f677cb5fcbc1970229a1a5da2a7eed70b3285acbc1036ff7cab5de6c041fbaffcc414c4ec396ada62365c85792e784405a9dd545aa2d9bd69edc10e055a162935116a231d67c876b34a28a4577350af21a440b840cf8a40c053e7cf598be9dece12c25b77e03da3134bed4bd787fbb30582cec9fc3236c35eaf7e7478a7b133484dab1c9f56e816cb5f7b7c5e49c41e294a61bdb0c7e4334f5839a3744ac90545b61d2d6c53cfa4a6679fa768228ede076799d1b282e79f8d0d300c6045ebe965926985d6c2674631f419349f36933393bb423dd7983510e642556bb4b3c722cfd2441382ce8ae3d96af4f6023f0585e1c07a475974aa06623be49cc860a21124ae489d81168f1033436ca341ddb8db2d1d971d667817559566503512a0b9b72bd63b478d427c51c634bce60644ef169fc328c1782568fe953578d1c3de4459af50059fb5c7d357fec830bf4d1db22da0813fa30437af66f73280f994a26a57ce7642b511c0fa0e4196753854faa03b2155f2dc7e912eaf7d7de141c35ded5980d768c3a0ac424bd12564c1d855665d3d83642b03de43c5a10d3840f066393c0c3c0c3c0c3c0cbc62344a61d4dcb18f4c292500fd09a62534c2b69432c994525ce53cec04fb0eb0ef00fb51237befbddb0817e00d390dd00d5c84acc2cdd2f493a9717a54a210a20af46de91cb4974e2a4221a9f8467e98b08d0c337cb0193e4e082a6eeda4728a962cc78e7ec82932551ec3cd6ff4959d434c716acff80d4ac57cf5434a910753ab5ca31b5cf7098490023f7d712e84388bf91d059e5a755565f1424c272626392c10228a5269d30df2ed635f0b05d24ca814445ad8e02502be0fe0e3c7fbf071e3865bc00e21a0405f76aecd9545e759273b227003029f5036677f64892e10e2093f53b80dd359b6f3a16302219d488c2a1d7b9ff1b25d219c40988ed6c89c357fda131313312c10b209c6e67fbecff445a74334a1a67ddb4c42d378704332a15c58879d0f7d3d6308266e8d9e29bca8cbc108b904efd6b5b2a5e3a19a25f6353551cdd3cdf957258a298cc5f30fa5bc948c128b57f4a04475cc7226a186bda4f2e5b933a90398438824f0f6afad9894bbc63a12ef7b186d51b272f021a105ed51514d56b1d623aef6abbad8f850aa71846e39fc0933ad1ac3db086f936e6bdb523e9a3f914008230e4b0fa3e35b26ad79c822342d17d4d9259d84500a51845f61aa4bd69ce5ca89e0327d4a4a73d61c3b0511de6d58d809dd1821873898caa912d23afc96218648ad09d970af249474cd0a8189c61b7d72c763ee8410e25ca1eef14b98fc1c5a41c820ae2027fee517b72d2b41e41efc54f214f574760291e68a7b0775f918ad318400c25c2d512998cc1e95fc032a16dad44eb7662cfde09c58fd0f57e6c9e33ea01654d555ccdae1443eacc1f2a6f9dc25df7eab3d942fe8b4bcff184ca3397c7821440fabcb860b7e4284eb0683903ce0b123b7b374fed11e0f068d17b5153e4708b983b731a579e9f44aaa628754f5b283f8912354558752341953ca5328214f1e49c7193d7e7071c3022174485c4e69ddff9c9898e4b8b15edcc891030107b821804c84ccc1f8b2d172c757d6925b00c78f1d669c80f1c50a42e4d0a8124beaa4de6cae4e481c0ea3f35f4e714f41a7c08113e31f45af8db685c9f861861726e40d8d5c8eca9f8405775f0339ca0871431d677b631ee9d673296bc32e322daf6bc9d8910dc90dea73d52c27db42d670c555bb54b1ea085103322c26252f878f53190b4983bb7ec9d37ddce07b0142081abe1844f67616992b9667308d95d86a89112ad7665076ebda43d5c6c52bc33aeaa45afe54a3d2870c75cca09ee5fb4a369c819031a4f24d09f5396c98751f081143cad2a5b5fa8fcca61386c4061396f2f322040c9c3e9d6665c475f9e72447193c7a4cc0c4a40c1e3dbc8b902f289af3849e0a9f6f522fa8c96f74505f7935fd2626215d4868ec5a8bd1734c4b43b8503cadde1fb7ae3c03215be0b43cef3b066dd99d8468e1f4182e8308abd4292f011c5edc90c08d3070e088414816cc413b697cbf0c175458e02ed6c588f018dfd274107285e3dc6fe65a8b2634294788158e5f7183301dff9a633a105205b5b23be935952908951c3fde870f218450c1cc5d95b47c68cc7390d121f01d0f0602301032853f9d16cfa92e29a871f35ba5203aede92151e83a65d7c9afa4e12914d88c5dd1b2f20719daf145c813cea8154e9fc9d45996131eff811f3dbe052be83d79408813ac204efbff74f3084703429ac07f4a9de52ad6493c00f0208409c7574c6bd35d9a4616b204745011f5ebeb7ff1064294f028136697df5f4dc75b4748120c9df34a95fb490812169fdd316f4d722b25e408c87d5b9271efebcc1023e8eed133db55ea257548114a1b3ba5d7eec88af9a620840866bdbf504b5e9e633384438906a5d7e256cc4e089ee7b0faa1337ba90bc229b6e6f66d5d9ae547100284846ec81c4769121bfd901f2c365a36a251bd541ee2834c6cfb26cbed531a13d20393ce768e2b220f9031ace9203fecbe213bb8a266f94b612fdf68768011a283aaaa77a3bb6f72d9427280c74a3ffffab9830a9e989878080e52163d881e79b932e749c80d9241a64ee53dd232867784d8c00e539794fae8e0e12b00a905ea5f3c7fbf070b154f7284b100105af8b3b9efd3d38d1c1964168fbcb3f230d5594aff1f3c3ef02d3002882c8ee9a25ae9ecfd8a90196528002416e733f1bd9d4bcf3306169a29bdea79fb2d9abf2251d9ad724a3d6de2718531c50e627ef36df9dd8ae2e366c857d0ce0d62859e2bba7e5f8347db5771d0f138b79c644e915105deb7197a73f57838a5e20b97b4c83f4bdb1d4685f94268bd7dca162d9e22f9f7a792d2933afa640a6ed3c6cd10257784bc145eae64b25a3ea45094cfd58db447719a2799353fab688b0310513c427cac9cc3e2a5ed9c98988084a268592d4e59a608bd6b00028a54cef2f3a2829f674d01904f9c472e8bfc7bae54338e0a807802cbaa6d9be284e8a06d17209d40c652ab96e8a60d17274cea3ccc55fa9c5cec33166413899393e279940a441326d31bce53b5c98e316661dc280be300380c48262cf74a1b42c5a47357788060e2ac61a6345a26264800b9c4f1991fb6655723453fdec711402ce1a968c2322d8ba81d37005289a4c5d4bafc25ee9d3231c93104104a6455d274d8d19c3aac93c8a288cda7f29e554918e75d64aeeb8cfa6c24d6d49ff2e87ace780c9cf8d82e6e4460025e9898b0ebf8020824aacd9e633fdb6faa3407401e516eaa145aefbb745bbac0d1c302208e30c7f8ab984677e99c6c44e2298e2669732f33e290254f5f7f7eec141751e8c6122545f945b928424d26738e51e3694cee8d3000500890449c7212c22e756c744b262624004184966450aeb2d949a89c2e400e81b091df23453c899d27262667e4c881e3865bc07740e0070f1e5fdcf8e7e22b70e386056e8481c3c78f1d4fc619cb811f2086c84a568e97e99673104d4c400aa18e07d7b58ddaa76408c1e9242e7eac9d7bae0751bab87127f32a754e27676c8f1e2b88c49226f91196d7168204829191633a0611212320f6341b573d5d17f3e80f85b22c6a5d5345b316c40f8caef78fe9734e9ff63e20ee730c155a4e3485207c4855e55b7650b9ec0ac81e92cd94a62d6acd4d450f8ddeca499e550599f41100c943b739e7ecaa597a73b8438c3d91c0193d7ef8f8de01012d80e061edeb8df9dd74a8549e9898b460053ad2fe183a72e4f8000672fc30c38b008001e40e0775295c6386da1c83392c8063078f31708c0162877fa3d98eef5f50973b01a40e76d99cc7d5201b3c4c07ddb52e087da1afb31e04c81cf8380b3a9de55b0d426672589392d3fe31c9b76780c421f9f42e5bf1a5c572103820627367c5132bee316f3028351516ebc5e64d1037e0e1547cffe52e40da90aa0caefde2f55a2a369462443f4639f139e93d7e07c81a0cda347d0cf2319f4ad5b09f8f7e8ac94d47463e4c4c4000920635a53319bfb77f370d8286b2063bd59b45cf53746262e2e33301720634dd6b596d92364a6386528c7a691296320857b03f40cab08c9d781da54473dce40021434177865e0799d37e8dc12bf198be4dc8a0ec1743fe17f3734c422e49d3c9492340c250fa87e73aa1cef22f303c6b75abe9935fb85370514d1e34af8337fe00e28542a8d457d97a3b3305d285e56d84b527f5a362940ba50c26ac827bb877b905ddc7ea947692b54973e2634f12440b5ce6d1984207b9324600240b9ed9a894e458965459052058408aec1caf94880c902ba069746e3fbd1023272ba064eecdf8294703902aa4be52ba5359f495470545596c25a52d6dc64a0c40a6a07bccd19cb4495375e020a343f038002005102914429f2aad9f84b70671800112854d73924feaed46e6c2f100102820fcbf338ed507994bad00c813de682e2fda7d943ca5337a84c103c4097d7b58348da1148034c1f8a6e3f205ed5d4989878e15b4182be80108134e5973aab86b62cd2b2c0059021ec2fb545c8e1d4c33cc30028812aa4e1ef5572d7da8f6c4c42409458d15427d2e4f9ad5d12305204848e7e35f25bf08204748ee83b8ceea18b1eb0db78014408ca0055997b399ecd29e2726262b18c30c363131014811bacba563e473ecef0a11fe20f7174fa85f7600320454aa7031dd449516440858c577503a86758a2190202c4a8d3e15bf5c436b4028ced7467fe81d59f1898909195b860f901f24dd83d729f59bc2431f6ca72b6591d3f5a373407a90b2703e72744a712a83f080d3eb1bee61cb92ce4176e0a514da629b83accc80e8c05c7a649cba967713480e3071aa22e38631193dffef2106101c54419b985bd012236b901b98b6ee5a47473d31c70d0ee0f0df910231c05001880dda9cf162d5fc57dfa216765ca7e6afef8c6768b18becde4aa9e974cc5fc6f73031c12d6671da9717992ac79022fbf160b8600b59a074be9dd1f75926fb58dcb953e58e7fa39338c716b0b0bc73cc74b19c61dd31cad09178e8e01c39c6d81d3d3690f63370e303373070c37f870b366062d2e357d063c948ffc53b0f0dec7881180900a3d8e2159f8c2659395b08bd1957a084d0d8b779efc4dec1430703b668059fafb21f7aab44bb2d58a1c597cecf8c15c4d71313931d62e810c416ab2855523127b5dce9d2262626d84215958ac93d8e8ebfc15393d822155c55da8badfdbca8a8289a0c523474c71a696d718a2d36bfebaee5ca161f3dcce8efa1802d4c61f0ce2de3273f44a54ab1ba56e5db7e27d8821487537e4a9aadc7cee9c96d318ae6bcd6ba4d6e87f7c7ba0e426c210ab4547cd74e8dde36b045288eadccda6196b4a68b3f6c018ad49c48afe4419d8e312fd8e213be77d7ba871121bef4c4b1b45cdeb1e0be3b3a3131e9f12999c19d703c47fdd2ece7b28a136bafc985f29c37cdd962137567c5bc7c8ae63e41610b4d20375c9c55fc1d9dd72d32710ca5a4e6e7989139c404bfa67f342bd4d39d2e81eaa4feab2c3edc42096c610984a6562bed6c3a26ba331e0337aec7db198f811bd6842d2af1b9965abed5b44b9b12bd264b555ae319fee03106185b4ca219a5b16c77f6dbdd93b83d8572ba55caa1d3e379c7112452a8d5aaf3625aecf118439044c1ce57e1a992fa8db5764002855af49da7f80c6d560203c9133c6dee41859e5165a913f8b5cd499bc9489a50b8943b56d0f159ea65c23317752ced64cc1d932ce17e99578da644a204c4a6245b69ddc18387240925abeae4df999a4c640609122c6dff73cad4f3956c01244730c864aac6bbf66ed3682031c2e5d1f3e72054264f3245408fcda87fd4d934cb8f4f010911ee52b79f47cb780c1e92219c358e0a7d42ac9b2442702f7c081b599526c4272441389e5d69d698d2e693eeb1ef430723122068557f31864ff1d8f8a780e407dd756d5cd9bb5a4f9780c4077e8e72b31adbcea326e90162d64aaf275defd19d808084076cc5746fb6354aa7bc834b6672758b6f724645076c599dee9fbaa867e520dd9c72cfe6f422548703f4e74c496eb0cba6ab308f35d771121b183faa99aca07c45abb5e044e5cf6b8cbdd9b881115a7cfaaf4bdcc5d350d62cf2f09b395cae2b76922cb4da94747a6facefa0589ce5455d6deef4b50f0b74544ab972e8fe6ce5c82b92361fd2feae748c992beeb0943429ed5ceae79156741a5c6ba368d3197b5658eabb92d458edbeaec28e737f1a545acae151c5b2593d3aa7ad1baf54b07f32da850fa202b79c759a3fe8b21d9de2341b63b0602564f96c0a76ed2e6bfa6bcdde4a61381537a94c3123a4f8cc624ccdca354be191519ce942e8b86eaa2a5832181145275c6bafaa345d4e23a1683f74b8c6af25b52e28be4d3b5a4a3c94de9c4ff0aab9a96abd3ede79e2f4d8159edd72a5349d38066531e7db5042698b1927b4e8e993aebf5bd67d13fd9fbe067951cf738a265071ff4eb66bbc5b3b13d7fba7ebd192a3e61ec1c44966738becf6f8ec250a32df62078d19644c575922fd50212d7992e71b2d178c54e28df21f7c2ef6c6b73346288152da36346d47ddbbdc4d02a57d6e426f997c86cd2471d4ced371b4072562a98a84e626ff157e3302897e552d493913bb153ec20ff39fd5552ef4cb11471cdef1474d4f33a872a41167904b22f4be5e3aa11146142be97c865537ffd8c8228cb91cb3d5a5f6d23ba288934c0d32cdcb533c11e67d3f4dba2b23884856afcaa80e116b77e410e73429224e6543302ae87c10233b83ce0bf1ede71df3dd4608c185ecbaefa68c0cc214535ae76b503ba21a1104ea99b27a699041ab3b12082b47dc59bbc816f5190144552927214506f54109fda11cf1b9728a09e5991df1c3b156326f76849d4c47fa608c950cdb17b7fb2f1f92f53ebb9dd64cfd3cb287fc6f5b3ba6594c7f8fe841d35763732a5ff536920743560595cafb7b541fc183393f53d4770bdd497c237740a9e91cc3e875f7cd8cd8c18af331eda7bad1221ea9436f4266b88ea9b4a77e840ef8fe86916f19bb6f0c1e3c1807172373c85e2e888c2784bad68cc8a1ff6a3b95763a7ff0e3c06c38554acf629a8a2370309e8bb696124fd18346ded0a570f36973d00d797a9dffd5311dcf1e69435b27639031e5eeddd8081b90a742bea9cca373e1c81aae30727d612ded7b8a1abc16a17ae3b16664d563240d7a654ea772acea9ece2d70a308236848689727df7ce6bd9ee1f64f79f3764c0b2a3d620634d56639f91696d33352067e5c334598dbccbf2364c0db5f44a896e9ca69640c7686fc8f75e78818b20db5a6f93607399b9130246c54888a234bc8d18f80a1cdea6ba54d2b747f46be60d786cd45f3cb27d2112f1464aafa54cf8a5de14817106a1ece6dc7c4f33dc28574a75156e9f3fde973640b28a55e75743a393298235a60ad765d3cbb454fe2912c1cfbb2e7e6dbe4a61ac142ae25162f47ffb1cf8e5c41f1fc9c2bbca694b21cb18249c839fdce3afdfa8f5421ed91b5e963b3e5ce46a8605233fa44e538dbac8f4c81efa4a6cb4346be4a2352c8bc45260df2ea92308d4401cb3436aab33ff40747a070529b79c48be91c9368e409e86cc86a714de95f8e38011d6bb2c1728a9df18e34410b5bd699eeff37bf1126a066db761d53d986776409e84a1774efa8cc27ff1125f47e63d9bdedf428dd481272d329969a78e638aa112434d2a2c8862e61d1d32347602ba8cb676610dbf588112cdbb6cc306a7e35a6468a70982b5da62a88af6e8950b24f49731077b57208ba5e6ec688dd14ec240443ae2b3de6ecd1998390d865d13c9da1ee942340c032c567f29ce37ddc7e901cd9502a85c75371f9a02832c6ec1abe2fc72c0b467a507669984f75f28489f330c2034b5dba336532de32bc8364ce4e5dd43de71f8de8a0eba4f16390594244399203abced2f36b165ddf6004075cce4a3dea96dfae8fdca034d22f76f20fd6a6346283e35de5b2b8cd39f83bccd0e101915a70d9540a0b93795a15a185a792e9e9ff1915be1499c5c1ee4c8b10b9d1cb230311599873ab8be9f4dd2b620f9158f49a4974c5d0d6247df7d101115824c5fe45fd87db143f35107905a2975d36d4cbd6a8ae48e8f4793abcc3bc9a5a51a7f2a4fadd2e8dccb1c2fe7c31a5b4dfdd939bada2ccdaca94368a5d8ea92211cd5971152b89a588a462df8a5f1aec730eb7082ad054f6e14775f389788acaee4ce851ef9af3770211539c57a2b5ac94dd5cfc22a5f8a2a8be9ee665111329cee1f63ed59278e571147b988e23f774aabad34c14a6e41aa7d9de1bb5ac0a4531543093a57222028ab4b4e85149f9c77775f7894a2ccac5d123a3d435f3041bdff36c7d3d4d49a4137809f5c184904f31334e1c6ae46592aeaebb9a0f914d6c1dcd34cb5dad65d744715773dde9d3387b65a22fd1266f535c0413c9e829d425cf415c9d8b10b9842935988846bb119d12b184e5336bb15d329a1c0160102295284308755bbb9cbd5c10229438a35a9c7a57c5121b0e442651ba8b779a3aafba9d00d005114934aa92d4f1d178f667245097328f96f9132a4e9060ff7634084f9323aec8237c39b59915e382695ec411fcdf77cc4165c4e8cf1713e80287482396cbf739682aa5d9644658324699db0c0f9e5b91457823ed6ecc2bdd642a0b228a40455ff67b88d79bdf8b1e22896874cce136d866d8b424208288c784e618933adbf13f04e39e2763fc8be60a03114358797266ef74ec264b072285a8e6d4648cd52284388977e9909e31cb72066189d829f14dc1475b826894b8cc395cfc1cab0182482038a14ee88bef39be5182082018f19dc2c713fafe2c2488fc01e5a6a7baa704801744fc60364d3bae15f45266fbb07eece83162a36c6cd420c2872d9810eb517263acdb8349ff58126795a9f78205113d1c2d2c87f2ecb68d9b3c6ceaefe1acf3c8542e1e16f1b61b96eaaed37907ce44f478dc539ae1e205113be8739f2d9e71a4cec605913aac9f95fdc357c68e213688d021a1d9cdb3862d15f407069139b449ff995f10e25f951c44e4709d9d18213a34069d1589031b6fbae4b9e54f9682c32184e714bd983f73fc062e878eef30c2f48eed06cf624ab9d9d207226db83765538b7af94d8d0d5cbe583b428cca96541c88ace150193bbb2c2a621a1e88a8a13ccd7e1fc49487fd32104943994b795c36659e93120dd76ece5242e7584c9f899ce16efd74d375ddab30878b98a11efb7c962a662c74226528c71242a654ad2173d7e3870f03b40819d8bf1893889e0f32f2e0d16345c6f0fbeff67f09cfd95420202286826916cba457e7661309439df2362d3ba99cff61810818be0a7a63d09f2dfe5a3abe80b2943e8529953fe68a88170a21f363f3b734d527d285d73ee834d395a54314e1821e67bd3e25b51895b305efb3857edcf8ae225af0f4c8b7f614c57e7344b2d0d8eb0571ba546766cd10c14225eb629b34e9496fe6c444c718fb3f7c8c40e40ac9e8eacc57fb599f5ae1307a21545ea7532ffab1637b3ff0854815cca129a5603a63d2f952e1dcb9b26f942d9325f33dcae042640a469d99755b937191c263e1396456b9f4e78942e17bafdb632a9797a1a0066b4f5a174c830838c007449e80f967a9af59b40ba28813960b7d4f2a582a15f203449ab05f28ff6cfba6d4c84598b05c7cfed39487c185c812d8147cee34abc65a9088121859fd1b3a6474dea048129cf91c3a42e8b70b322494fdc7548e527aebe989193e747ce0060676881c0115e364baebef865ac40876dc7b72d9911e7a3d998048114c6116223207cb3835204284b22a08fdda8ed6193ec9e13d36d085c810ba4afa953c5cf0aaee878810f260a95fdd215a6379e2c3c424470f334482909cfaee8fd7bcbc7f428618eba30c1e3d5c0408a9ce68e5223eb2ac7580c80fae8d31dea597777d7b8471e3c63f173cc2908017447c50b4ba4ed7d3d3628f1eafa388f4e06021fb6ff5bdf9492f10e141ca4bed752f647f4a9f98984440640768df20efa9abd43b25a2034fbac9d3e43316ca746262d2432407a54ab1f4bb652e4da6080e52ff5cbf417c572be864c7064c4c76f02843e40685cb979d33954b6df2c70b9c042236b8677de4a51883a8d49f9898f8a8c549ebee42e3adbcf5133f84d0c2f6b09e2f8acaf8531b408004e440c00d031c00c719fe858949f708994561a1b2954a774fc972626242811059383f22949a924b0d32bee3c1f09058144aa92b3779b9da0deff127fd63bdb801813e84c0a2598b19997942c7ce2b1ab3f9aacf94d9b171057273c6eafebd68e19d98983420a415a5ca96784efa466b7f6262b2011c8d67005042082bceed131f2ce9a94a8e304c4c026cbee2e09d4eae6f9947b57e3bd08003fb7dfdfa49e5b6da6fa843638ac176769346c30db99e3c1993e64040a30d6dad596acaa02a2f850d0651a2ba2b8bd8b0316be03ce45818215233b36af82fda59f8b99119a7c1704a5a0cbd331af094992be574ffb91c8d33d41ac4e7a83183a94765af14d45ad0416530cca9095979d486ba64d04e9ecad44168e7e88d6159932294e7e5e52d89217d57a7c446a9b4638661171b377d4ac7da5860a894b89c159992e798ff02d6e5e137d796ac9c42c30b891332fd778d32f7bb0bab7bfcfd609b73c7cf8536e4999a574a5f9fdd02e7d13ce74f2c28198d818616d2d57a96b275880da62cd89572d61f7ec9ab8305fcc3e5d3a7dc15389d754dbfeb8f1ad3b00252d4e6a29c08041a55485ce9e7991b0d0b3d1a6850a190a2f93465c66031ea3d78f47f41061a53f0938cface7c21d5935238c4b995f5c6cfe91741230a89ef0a112aee36d08002ff5a4a8ae6ec0977e7605edb192fe592133a312237847510f23b1c4fa309c78f57dbcec75ec59880f60c99347c6ad129f4430c32c4c8c00d0de098018d252434e54a9d840a619a721a4ab02e9be84ebaed368793e05f9e75b6d6cde21e12ecce67e2b9c5eb447684324486b870bae984c908da05a5944e2948a308485597d3397df3839c087c48ab94219666770dc15c5a742add7bed9f14c271794af3ce5d92f6e9f17ea3c77f81834610967319cd59df8fc9054239344bd5580c8d1f1494f652d1a249c3854d4c0080031a3e28c45466e6ed8c79547a805d89f18cd93c251f1a3cf83a58afee05cf52a50b68ec40cf55ea31d36a2e4bd3d001a7b7a3893db5b9cece80460edc8ff14d5fbaa0574b3470506f76f814cc33cc3c1a37b84d8bdcf04d712e46c306c84f17c32c9c4eb2944328a9c55b499355920d1af34946092daa9442b6076ddd8c2f1837c2f042c92c5a4d9677bab66175a995c802e19ea2e7ddb45d194a41492c2ebb8a6dd1a961fd8385d1f4c57c1df39e5af80725af48db47dd0e4ad999a95c71109d274d4d89762f95b4c26025d6dab4ed27fb6e50c28a2abf3d9ae994e92a57b28aec4a86eb78f1b8ca95a8c23839910b1797d2e5bea3241579ce9afb4e0d9bb49e637fec0470f0483b5051fe184b9dace6da939ea20b2a4f55649f76874fbec81253e449a97c7233ec5c09bf2829c5ba9a8498d2ff9db3c328218539d32e365b86ce192f41c928d65c79fbf2eceb9ee5647d40200425a2e854c4c5479d1621b4ef3c3450128a2fe53fe131c5bbfcef830425a0683c73cadfe427c4b79f2846fb96bd8ede495f3450e209d4ae6c79e64bf3b1d2924ef42ea743aa58f81447259cd0b64ebc3bac58aaf0a4641359cada31f21bde2a0d83124d2054c84abad596f2067d492612bdd5ebf35231bd8fc143470f2e4a30e1cd58989f0d7a51720994d2d822735bfe520243033a4a2cc1e83ca5e2353eb89d95b84ac8594a3ad4befc059450c2ec7c76e6395ea8b9c0d0400e1328de3800009c50320983cb8afc54156e83ecc402259230f99f75b0181d3d78881189d232889acb9482c69c3070fc78304e7c6c1725907074b544f4c51cf2ad131cfd1f3031b192472ca3f57ec244484b193e768841811247582294556c59efbe4d064a1ab16f5cd1252ea36d2a75e428610497f36d96b24f3abebd88ad4565d59af8ce4303679428c20fff593e063962529d40492294919ad63d6df2fc313e768c129420e234f13b9dc674de7f88410619198040c9211042d5ae5e994ab38e1d3d4a0c61ca1e2bdea386ee4d3131c90186064c4c7e0c66315050520834776f146941aab7678789498e2e21c4396625f11a9d274e3b3131e1f12303381a50328873d0588bf35cffa39608c218e937ef167f965f203095ddb2f2ef3e560d84124024a459e638d7ffc1cd9d64e84fa52b7296a0c40f28591bdfa9ecdd7275521ff861068f3336033acaf04183923eb42e3e5a3999bcae9417a34718387e98e1450426f062f40883718451c287d37f6e95f72dd9f41ed01caa4e998c6baf460f6f87511d77740999da3c602a56f3acc455d5598207c48a8ef63ea14c7a5e72073fc8b766cc9ec45cc90eeb87c9a02bb46b954a8fff21c661e08661e0c7e02594d4e118bd4ec61c619dd5a543b1a62673fcd81cccf00ef71ea71c4e991f764f0661f12e05a25012874b3c6b8ea2daa1ea0307d42be6d8ff9562de98931c9f821eef8589c9a7a0c767e0461738bae40d7fdb6e8a99d44a46c68ff13abe078f1f60dc20e3c7a0008e2fbcf0c2c4e47b904106084adc90d0224d9da85015af6f03964e4bf7c7e45b3164434af46ce52474cc1b258e1f0fc61953285983f2aa6a1e64e76c41470da8783faadecb3acfa6e36120c618bf821e4f0696a4c1cc4d8b992d07d9244443b22d2f443b69b9d2f958010f1e5d90410600a45072863d34ebbbf263502b01a2c40c26b15bd3384a49117b19d8bbb49e9405f1b9260342a590d595d518fc554f15af6314afee040208d0926528114367318ac613918b1b2e098349bdec3ea80aa272a6040cdd9552c1526e32b3bde40b78f68d333a2e5eba9d4abce087decc6f49ff18f2922ea4192dc9de6e8d680d17d87d8dfbb9fcbadf02a2561557adb736cb131393931f3c2220068f322850a205c333fb359d90b10d41491650d7f9fe92b6fcfa3716ca682572f99dad332483922b285625731e0f2a8aa8c40a46d754eaf4a8c549afa40ab9c8d556f6d2eaf24f78f420410915761d110f75a7974c011dbdfd12ba3a31312991029e628d298b41540d4649144e3d5d7232ed29559d209440c1e077a3f66bfda3ba952879c27695ea315cce3d5750e2042fcc89dbea1494b7c64050d28463bc5cb759658ee114821226942f5ace6571c540c912708d6984502978bcc74f4c4c5e60c6eac87182122594d537a74a99395ffd25494058381795a73674ff272626558204ae740ea637567284b2a90aa5947c6bfe518911f44e3a5ebbe6b00ce78989c9193dc2c0f162f40823053b4a8a600a55ba49bc835e111281d1d7b651997e5486a0cce7dc31e7641b83528910ca5d964c7cc7a4e4664b82808c2c29224a2f6d654a8070c8519f7f7f3d19c6921fa0656154c652beaa5ee203a4e9cf1b456fe6eb4e0f4eebb24e1f740a65151dbe3cc63031c9e163bc18a9840708994d5aff8f3b30eb547ae578bf63bb0eb814aabd5fb61c286a39ff4608e1a0b892d5a3826556164b6e70e5d4ff1599a9a2e7536283ca620e931663f9a7588bf38cdebb10f5d1575a18435346590d3ac7ba7a50000238cc2099c53aa36ff19241228ba3073b319e729699430337bae0402c16193f3343a9f3300f16d5752539b3c933f9fd8a82bd9bbc4bfa3bdbc815a9c9ecb955d2496f6b80a415a6cdd62154f250b2c40aa325ed7b7a4bb8c5eb8610485671c5591ccbd5b2f9e91c61e08803892a0c5139272de12537e454fca7326c3a15f5628e27262661e018830415c60bca6fcb2a48fdd8c7efd8400a484e5185f292f1139662ab2731c561ef97b4eb3447fd4b911011f2d6ba66c5f42724a4285489f2f48bf9deec5168ad2383ccd14108d178fcd041228a6673d478971b1537180a93e9ef57cf16d5450745e2b733a74fc8e7f31377c6144d7e9271d72d9e28254f23930ef93e9174821d4d339934c7f72d7122ffd29e53f6afa6b56a40b28972cc1f5dad3ec37e491379760779f768f37667a29dfd0f9dd1c544593a8a3e21a74b6cad99c357ae9839692c91140b9ede3c57ebf31313931d3cc41863719054e2acf7d9ea271b5356c70af67b7092506259f5507ffaa7b74d65ec9f904ce2dc703fca2c944ef27462622209eb53acaa70b91ea2520619629898f4208904b6b9f3476c50ea5429d831b8208104da22a7af93f24a656280e411a75810da7b49c9cc1e89236ecddb601ab7a1e34ed2085cfed4e858391b43010923cacd9472c8abcfd222c92232f5b7d4679e1a1af44f418f27c34914915b5a4bca458392a63be941029244e831ba664f39660dab23824f21dd3cb37672cd0fd16ebe60b2de8468490ce16bbcf4164cb52c66480ae1450d2fa517fb44c5112021041fc5eb54abc70a161cc4ebd1d3ada9ab7c190581b6ff9895e3ff8ed84f7088802410875042a9cbdab89a0d083d6633a1fa32ace23cf91e63f086e182fde201247fd0843ef1efcd9953e71c40e207e456fd2555ca2b967c626242c68341d2877aeec67eaefcaf5e1090f021a5c2c7a718b21b2f26fd177ba847eb4a7dfc69f80b891e3e955be9cbf41db891011c86240ff778588b2ffe8989894b0091e0414f991d4299f2d660d900c91d1099e3eba5a43a3131d900891d9af9502a660e9a35a790d4c1f08f577ae4e2867a3a404287ccb467363b4ff9348703247328fe8c7cea34ae31d3273fc4600990c8e1334bdaf76de9d4e30c90c4a1d496368d6d8a35f1c9e0d1830b0d90c0e18f55ed9cf32fc9a848dee0a6bdc688adad11a609b480c40da87899ef67d5e4aa0ec3c484bd00246dd0d4c5860c7ee9e9f11b5de088c004d8c3b8c105066e7481e30b1236d4a583e5db53315c09c1b87148d690be96d5dc41df7d874e724ce0c7fe0801891ab02826433ce6b0f8501a8a5749dd557c725f9b040d5e3a7df2f13e7ad8e0190cd9a69b739cccc0dc7a7c0f33005e4152067bc4e594f369bcf0f38989090919d09be752b6b29d4f8618273e7eb4200631e882640cb9688edb56afb67d3ac9710a1231209a2e08954dcc83909b8501ddfa512c364f0286344696d258539d4d1a907c41d10f0f534d56be49122fb0b2292744e52c989ca40b8a054da6f1b3c6c728091714d3ad3977568fa782c220d942f164cc7fa5b2fb2bd602122d9cd4d693f8fa30afc902a6cbcd324dc5052458e84db89f1e255fa19cc7d4d97eb6aeaf58c151d2428e36d9bd3649aa70a9050fb7168446f94b404285425b2c4df973fa0138b0218a94d0e0e1292ed3ffc4c34d4c7284f1011ba138e9ed2899b43c6f776c80a28a9ad5f4eae282b5370e70c38b1b391070801b3e7c3cc8256c7ca2503556d1cb3c85cae9f114b0e189bcf3927ed93af9dc70fc20830b189ce1021c13b0d189e42f6692cf537d3287c306274c3f31428ed2f55a2a3636819db8d55796c8bc996143137bb053d24ee693b2fa898909ebb09189cfd36b98568ffe416f03137d3811def9b793b57109e3f855d6be8f1ef23bf92106e7f071f2050edf01811f6244c0c4e487183c860d4b649b719dc54e77dc6782d3c3462574cd49c4085377169394f84e637a91219746e43626b18e52f1fef6ac38a61c362481ce9051b9546ec66d4442bf3ce2bedf4ac6476d40a2f851ec47c45c65ff2626397ebc80023e96003ecaf081e36d3cc24a419a50cf29a79c261b8e60c553d0315e9d9cbc1af1c720f42e93d0996f4694f6726abdb5794a7d11a9be5d51f921a23dcc021b8ae883c56aedc7e8be5d22d0699a2f93d87ce0865be00c1b8828c98fa73be7902ff2cac0c621b864bbb9973556b218437875e51e740e9d71540a61ee32db0621523ada688deef8ad29251e67d81844d144c6b34c63431089a86ec8bea09f921688b74627f1ca1563080d1085a6cb1d7a31d754f5874a9969bd67daa667fd70d0bcb9b3d0b5fc928d3ea0ba39a81bcde1f3d5050e1b7c400819663e8bae8ce9b2b1873c7d9ccd9e9bd4e3d783aa3f422baac7e8f1ca83f316631c954958cc992cd8c0c356325fba7a781425b6718743588edda73ec3932c0336ec90ceadb125a73158ec36eae0e5ce515468a9c7bc74b0e367139bfe475af93e6ccc21b5ccb017e199ff35b721872e28553a2e324ba5681cca993b89e51ded622b0d6cc0e1cbf9b23ba81335ff0d306e68e0861936dee0bce6d78a755f9d8a0b6cb8a120bb3d55a94a4a47f6061b6de8cad3fbf9a88d315f3dbc701b6c28e5dc665bb6d42e590c1e1f00818d359c948e9ea6e465430d6c97c9f67cb2ed1eef818d349464122352e45f8e5042839676740871cafd4ce6068e21d838431694bc2db149e46d063df792f28d71337ed62db0031b65f85753b8fbf21874866d908191e14f376d5554cf8da1cbb69b6bf95f3994623893f29849b7180694952515b65ba3740c0ca8fad764a26f332a567da10d294265f6fc28e1dbf0424a76926ab2626f5fa80b79b413bd52192e1c73c605536167d3f45bb0ba3dc917216bf4c55a583489e85e99cfa5f7316c64211ddcbf342b8fc95eb06009d915472cbcc23faa19d3eb66854f2fe827ddd12c465d857256d097cd63d72e37a3c241c8f9943f26ebaae41498d7b551972e36a47046f7d29e8a826342572e0fcaa4e551d9c00614acb7db4b315c7b2b53f5042ba88d994e6729c58a138c93d91d239a34c84e13b20d13a979993b26dc3196ff637c674b29664b48275f53234753439b554a405ec9acf4b1f25b35664978c46c5b639cd5cc521512cc16dd94aa21fbee64868d23b421837e7c6bb64e9b111add77761f5b26450506368a90c6fc59772bf467aec4c00611d07279afed2a5a06cb04368690a8da14ae936c132adb021b4228662bf34de86e2308f9a5bbe69a9899376d00a1ceb129b27ddf447d1b3fe03226bb78f2b1e103af3e664ebb580a6cf4e09823f557c3a699d9bab851811b5cdca0c08d09dc601b3c2854dc7dcc0eafb1c4db83022626dbe36deca04a133b7ae6c426ab9cd8d081b2767e6d196693eae8b09183e4a9e0162ab57593f8c4060eb612e6713f273dfd91c0c60d6ebbd8a9e4621e19e425b061834247fbcb726d2dde4cb5554b1e76e7d5a0059b322d4b3b8f2a699a45428c5e5aa93d8fff5f0b4e504316c805cfa5a6e68214371658e86afca926a1af048b2a3b7d14d10aa374f88ab673d52d6f324fb2bbe2e031a88cf55b6130cdbbcd286a4d74acf84e07a53464bc043556f1f97e06552acd526f5524937bd63acd2132a75b231579592c8d3ac2435654f059ad2f2f88be4a9718354ef109534164ff988ccd14d9b956e672f5a0ce2dc54987ad8751423cde8714bd971451a75a8d51e43175bcfccbae26255158b9426bee202eede58462179d348f664c206a80c24aa97d1dd2922e1dca438d4f1c1b639eb1ce3e7d0a1e6a78a2ed2e8f36faa23708c5a04627565326c72bc9702215162e7de6ed05353681f8b576dee0693aa54ca18626ca9ed9d272ca9a455b99b0529a065d8dda66a51f35305157a666cf5bd991f92596cd6a2a686509af4cc4643ea9ce295e89b357734d464ecb459440c911aa1ef6c936d63526c1e60f420673dbb352129689f18e553a5b554a244e415bce9e1e93a5fc4082b58fa1f36cd019b2f288d209157385afdacf640d47a47477bcee8d9c98a5115ea6f0bf14e3b5fb32c22b9351a1e69ab2588be8ba469db5d58ab84756a8a5d2a14d756a24c2a08428d5b12a29eb3c22ae34572e32e71c46e48778ebb3667c3f9d53b08621cc5eb17639948f0c652114954d590eab6042de3508f1e79dd3ee369d34f7411cc3670591688b6a9b4aaf694bddb881e30d3502719f90bdaf0e39f27a40dca5cfbd63eee854a23f28aeeea92abdf3a9d80f780c16a3887bab50e1316af4a191b9ebb49e890f85ee9adc0d2a2663efa11447e94c4d9723ead2c31a2ef66fa47e4e5974830835f2a0c52b69629ffa4edf46a88187f4dbe855ce3175ca768763caf8bd97f35344f5841a7678dec26ac45fea8058bf5cddd153d8fd38e8f05907ad71747b54b5e7809ed1a684c58fb94ab782e651430ee8f4601de21977c358230e59a82b790def9e9a931a70d8e47d2ed952a7a1fbaff106b4bb6e2af9cbca217443d2f245bc07d9d8ebdb90d850937e4954d2a354830de57c796f8d5eed3cd75803ea747fca128d4d316950430de7dca9e173975e33768302386aa421998210bd5a1b5a2c4c460f1e5cf4e0c1011313327af04867fcd81a6840ae9ee5ca513cebe76778a49ce96d7e5141b6931a66c83ca827172d65299a35cab08ec82872d4635deb6620a10619d297abf3755c11f7f8331e50630c5ad80e1be379d5f3e6a48618325d42ffd69ba6a79c1a613037cfe8dace4ff98455a80106748ede79616f5747fee6b1430a35be60ebf6a94f39f6b3a65ea8e185642caa86adb87193a90258a8d10537c6bd9c56d7f4a9f307186a70e1502664447443dfa7cd50630bf687caf013b3a93eeb861a5af83fb6e5f6da26cd651935b260501f47666bf9da67b050f8b49fa26af49c2a0b6a5c019b8d22e472785fd66150c30a7856d2f18bfa571dae02fa7fd39a66ca7a321e831a5430e6346b8a61efcdaa29fc1e4367e5288583ecc7a9b4646ada37a346142a7bedb28c3929b3ae0614144f7a79646a359ed089e96ccbf55a1db213b2d2dbd79473fdd7a909dd9559d03adea1d5648297ab7616e336a8b104f6e74de5655916d995c0f709154bc9f0063592f0a978e2512e880b1a1238912d5fb792a36356e3085b8cfe2644a850d23b46289ece71f5ff52a30888d199bc53f46dd86c0d2220fc72c73d373b79fa418d21ec229eaff1fa82ab4d851a42c0c4d5081dc35a851a417873a57657870d32ae3f6a00a1cb71295fd60eb79d54e307fc7786cca57139098d0f10673a6ff5a8102133357a50acc6d075657d49f460a8c103bcd7366ba9cf8aa5b48353f254e9edb26e78280c357450b00feb3e76696b5c34d4c8411fa2a5936c3f8ba34f430d1c9834b55ed8cd8daacc09356ed0b8a69cd599bd54e66ad8804df5ad7e3a3e81462df26bad1d6db314a6430b945678755231ed7d74169a7cd586aa70b7a791056fbd17ca4af35b1f8b64d2146ab24bfdb306166d9b58d778e62b8a23aa94561eb95e4aaeb837468fe927f7f3ddadb0e4e8274f531a6f635618c386a5de4b2a687b5ca0b18a3d2b27cdd12eb9fbab62cdcfe7bbaf1bd69b2ed04845f9eff74da6609e35890a34505158c81117cd3b84aa9c425316327ac6b4fb60a9020d53a83f4a8a0cff162aac6698510adec256668b49a65341664c810629acd8e759545a45f17c149ea6359d84b814b54c31d010054288cd14d65eaf3366051aa160e6e2ed2f8f4613f22bd0004579645ed8f88cbd1bffc429876bb49c661a687822eb515b39889668e5d0e8c41e739b1ae3553bcb9c28e9526e59639e45c5be40631396ccd897e62edabfc5020d4d5c779fe49f92cd109b19686482d98e31efab31df9967a081898488d295a1eba3e7ef127ddc4b9fdf3e95a26b897e2c6fd655d35e5d5582cf31c4ed7fce2373a744a634775c8dd016312751dc4c9ec352f09cbf22096379ce994de76cae94481c3ccd529b50f3ca0d0d6840a291e98389d02737daa606341ec1c9f8bf99bc6209353a229dcba453cc5d92b1461c6feba5495edcd91c23beb825eb6f72449a4b6311e91115aba5e14f2e4511f777eab0716ff6f79d41231156e88baa9b2c590cd24044576f5af306d7078d433cef16ddef627ad0308495cd4ee5e2e55ca2ffa051082b8787d32ef1b624ffb1e35b4088a39dd03ea23c99aa141a83d8c22721d42e298863d6ea67cd9640a4415a49bdf94b962a20aedd1ea5945b9a110f8d3f18930a9eacb3c71477f783269f54f7873a4d5af6c1b0ceaf16544d830fa9b3ba0fe232175fdd8372666befe3df63417ae82c8c854eaa92031a79f8d2c8588ce93b3aa54f030f8b673fad29d768a97d07be5cb37456be8ca57f2e70ec8fa5610753ac8b693b2e8df6b30e56e68b16bc62fc358f1934e87012eb69339aa518f71381c61caed75c7a212a46a021072c67cdd4193614905da82433a350200c06428140180c008041ac7e03731108303844229208c4d1b0549aaa0f1400003e2c205a422c26341e18181e8c05237150240e0743813028100886844110c891440d25f50059178d39c98d5e724dfdce19eed15230051a77a3a6f0281a310ddc5a9cc74525500655ae3f70bebed8858114b6e4ab335ba0abbe0eb2a4890ba6bfafa615629c7b03ce6fec7a165458510ae16d7732e6dfd539c70cc024bf8a2469a293b00f0c683d1bb406d3f9759ab0e077d1066f4163e5d1bd250a067bb50a82aae18c8c19a27b412a3e388726278d8866b991958a62ece3788a81bb8ce5743497159ad0c5cc6f7b3811d8829901c97ef5fd5bc55873c99e4da5a983d1cd0ac245cd2b343d83ccbdeaf8f67f2079a00de39ae5565b77f6fa928e61b48050378cb35e6b206ec8a5481eac93b06c61775e6c928e34d73611cdf568b7dc9a2179da67105dd9bb5fbe9b2f9b7836036b5c0cd44abdad91f0cb1c1ffa47c3c96508bc47329156e63c1f3d08a3e159cb53ebe26637253f3ab438f60b528f4b3d7dc8e2154256079b6e8093393477990cd515cd4334e1321e0b3e111e5d9be170014e285ea882c0ef74ac6489798d3f9eb7e567ce5d7d4ee372d682ceea8defb3f9500e9c02f46f074695a9e0a3c41cdf43379aff0646e8eb1a91f4a1eff4b1717ef0b81f25ecc97cb798dc11302fcc57f797445dc3a5dc658c77971a5bcb69ad125f699201025193a49059619cccfa69c777f1a46f37d24e89272219cba26dd1fc22c4a675d6b414187958ae2c595a28202350e5ada57a0630fb1c5b3d988070454c0b76c242d503a23b8776f054631fc07fcddce5457af2a895a7a6a48a57967fc0cd4beeef85c18b921f8dc0ce83f9f77625b944651867e1b2c736193f1eecd7e6194501b6af53c68d2bb4ac352cea0c1ffa839c7e134ab41a82e100f89c220a5788cfb8ba9965f5bd6a806693af807743f161681ec5c73075f79242709e829893f6f206aa6d9eb3d249de1765fca2ece7d25b386d0bff6b91404d40dcda563f1ee5efa4850fc84447271e1b808ca32341ee6d920c277db9284718ae4d0373cf91d30feeff12aedd3572d743120a1c70ddcbf1a857ec57e917024c1a622c1f5fc9433d2ba795ad1fb061141bc3f8a7b2c04c79e3a40c508ea5446fd8e3e6f459cebb8c4dbdd2829e608070f612c29d8a3019424eb59e6520811e0da5cb174c97e00575e5082cd8c38207c11d6f862bdc83ad70d9bb192743b347514b74397d510f75e2d3618bab275d9994f289540117e5a261f4b3990e1c808b54263f83e131037993dd243a9b008523d654e983cb9144b42cc57586971e12e550d8c76288612ce67d2b629f9664c49888b10c0afe4287e001c01902f61ddaac516469afa7c3d24bea6391ba887b26519b019058e0f1a0883fd43534817c818c2745f020286e9805c901be38f8f9c1aacaa9b7f37faa694bbb36a2be4289fcd9a6d7bf602f2fc9b2337dc52e90c84d28c21588045a1b978d1edbb76ef0f5f09b592da89143f3162c201d772cf82500096d3d29bd5e1ea8c08938724f9705a2d5af6ea92bb66779a18ece66ff5144b2898d95c64a1651c7e15a995540063d19f0a8b21917a3e7884e9d98eb2ff66cecafe8a7bfe42da21c2e09da0869163b440992eb6209a28b5c4198a33e7bb29f6c00b019fe6a2ee3fc89ccca8be9a8216b5bb2c035d32e99311cb175f7fa0de4e4425a85b47dc0f8aed97bcd31f02922809d0d4326020f52e90b51d4cc194660824dfa96d670949334a9dfb772c827ae4ae82dad7483a4028057c2e6802315c2b766fcd1143c2a9a93a562532bec7d52c67c4cd1953a548e40b3d01a1ef1b8c8f6355a557613be3ef0ad1be312d6023d9a4625a167cf74c9dbc561f93875934faa25528ad0654d58243c896b3cb82499d2b372adfc92ec1f4252e154272707cc19418f625287fdab1c91df1824881d47dbe9983b24cba473ce2e1ec57b3284ac9dc4bfd1b33f3e9065fcb7e0fa8a257665620cdb521b7fbb9f3ebcd0acbe9ce137a00ea2af1710d2486dc8017b362bd20b036f9c90636474a23a984e45c81672c76f3d228f249ecad0cd90c31ccd6114f288a1f7fde3850cd09ae728adc72e56e5a3e72ecec3b080a0b26abb0e0291bf0d71b0a3f2c46ff6e785b5eba2c7b404f514dc97deb1ddb6f21afec62af60a200f3ed98d0192366ff5d5fe52b224630274f847be402f81988cac25808861167d9454dbbc70b9942164d04fb82a8a9b062b38709d0a3db65fca58d2ba11ea41b80375008ba209d211a5ce8805a855d1c867565f01b6990e9a4a18796e000f99d61feff88bfcf2c56e99607dd730518f7918ce3b9988df2f0f73758e7ed1d0ac275bd626537bbd65ed2d9ef42c552e5014aa5b73481a3156a500fdc0c240439d5fb19783b6caed8d55072299d7b34ca8832b2d4ea156bba1504e19419f87d45155ae8258fa482129f4aa4235bc282a90755ad3a20a0061f9a4537af88ca10c506926d2b28bfcf5f0cf0f77dea7dcc00396b9e0d840b9731801966508e853ec8d5426314f20df93962e74fe17bd7a881cd8afd97fc24b951804059f3dead2f31c883c7b2964d3290cf83fd7dda602750ba07971c69bc53b038f63b2a611b1a4b4a9084b823238760a35814c19873b4d963d20dc67de576349a061b33f35946828174b31897f6574cd788980f6527af1092b406d19c3f34b85363dcb737f7b5d71d6dd6549a50a8348443ce63f8ebe08e69826a0f7c2276c4051d1ca0348350a4e55d11d331e6b61d4baaf7d87f6cf4561488b01d363f1407809b1d5292514f43c5ad81c69fd9ccb38100bc89da5bcdc042af6765494f06c6ad09c690b6e321fea138fbabf02148617beb889228bf28b67f31b530d5d8c157ad5bc2a8cf5497507dcc6e8ab5ea7a2705da2690774c5c062c52432a63f7b14dd8b1a72483c273e3ff33667fa62119d7c04ef6f0dc20ce0efe5c75b7956b158e7df8add8d451b53c441b5d4ec64ab0ee1e7701317ab7590e9f3d209995b08b429a63774e4c8c07ab4898fe06bd1ed0c1abbb64e01f6c319f497f24602d40bfb69e3070e6f13e9f49d1e6221cb7473e34cf8c1b6fbee0efb8f7660f0eb1a715c25905aec5be77a1150028929f3853788773bbd7c64cd74505b1a97d9c00dbebb287d1b500630418d4bbc06472406803f406bcd370b307088b0141b02e1b136ca0d0a2c11f801250082a1b17ec02a3650e91afdb80a228ae25581a85ffc4ae05f11c410bdf158bc068b37ed2139efbd908d3db8da6965ddce4cd1b1a54fbf6a0370db49829b06697343c80a2e43a1c8b13b3380701e09eae7510ba2608c241f8235051af8282503d1358ffc9590afd47ad72d3375ba1e5d5e532ef999ec5d6baf8efcd774771d9c7436c26e9d319df39e43a7bd0746e2bb5f5503af3ec04786e668a8c5220bb2c6d150d3f20772227792945f10e0904f73119d64606c314373be296af49d1b141dd8bfd0686663b1b350a0e1fadf12841888a221caf4459ac030520d485f4cdb21de6d44287c47f25f542492b12aef69e346e1b77d912804dcaf29a4180d9ddf95743d574e5a1195f70786fcfb5436151199f32a0f10127ae25e6eabb76ad89233fb7e44adca90ff8b15f51531187bdf95076cc3032de904dc75850403b5470c7ffe17f236a7ae06c00eec9389f6119e01d7b9e6f5a6ecd04893b7d17d7f88590242c339683c03dfb3694aa37621f6598e645b3b0612edde1a492d8976c0c4d1ecc73a3d68a3e29fb170157bb5edccac12329881e07a8fff9492463fd32e80dc23a6820b45dc5a9b9750f26bd826f776d436382aa413d60863161671c8b212739ef0578d58a4b57257dbd4794f0076c5280d00b910a8477d46e07ab37f0023ba82eb56ebe4e0e7800826823b45adb479038bfb877d7bfb97359acdf945e0387e6b3ab2b1c0125220215b3b306c08fe9701908ee6740e69bb97706d50787fd1fed100f20a4775f5fcb7f6bf2760a9e2e49f20293d2c77378b39d4cf397d1d81a1142eca57080029a587e5ae42c2a7f996a3507d154482006b00ed430ad8002176c5ca4948bdc0a2f43abefa543df373f3295c1a2001bbd42a39023c83f823fa737d232f4a71d7825d5bdff30a32c628a0de71b31fe5dfc3cf917e69807483e3d9e208fca27c2af31d641ccb50151999f127d4a05b56e2ff65037cb73eee20befffa48693b72e9a5fe178dca1b7ba2ceba999b4edcf76c9a7db92bddae47d780e30f9068f321b2331c8df2a90725ed4ad10b0d05d9a19187d6da138f54271d94e875dcefc838b9ab7937910e2e60c833345ff0530b4b6d6b981155dc17d2e2c84c811fca61f42cde46e8d7ef740afa9a9ea1f564e8e2fa05d724149c0bf94ac5648a4ed6933bbbfc3e9639d5b30c0b73b1a70848f61af6e492ba5e62f10a8d9d8e840c969d134a24f7a98cfa712c81cedb01bcda4a7213ae31ba1bae82a07471ba8087b16b05a782a8b046edee403f0a48bacbdc687dad6ec80bbc2d45eac3a138a7e9b6d131151cbb2ae2957db36a22e3f4b092d6c08ee44bc222941e7673c89650e9620ab0c45c50cbab137b1db78b6b7fba969488b46c5cf4422eea19d91fa81fafc5528957e2ea9b29b40a63a3930e136b4e4b8fae25e345c1a9652bae2cc74378c4f3bd8593a0c688d8b0dccbd317552a8e20b328e5a4f29622d54bea7e25548eaa38cbb62af3caaee3de9268df6a009fe99e5b55017c41b4a3d2923962b1a59544e0c51bc366a97e50a92a44810d6e4cf9632515a8718217a4b07b18c2a0dd52ed083b2dbe20e891738d3c8526b3d2bcf0f17d517d64977ce5cb4d21fefee11a49d85bb86155fc3d89419600340a7c2d0f6bc3b5487d43584a198d24e677870534d74219438e9bc35cc3814eb2a16c5493c9c76c04d4bd2b1724ea233285f388ab21a88e522542b95c3c6f1939bdaa4a379d5ec0bf18388d5b625673b113cf422c525668a58c7e61a643ab8cd199b9d9f698819d9e0789304dcf9c08b4b58ea503c8419b5ae70c284270b722187266e45bd4fa3650b91f2db9bb9ac5ad245c49099ea28511a735a18db412532eae8b6b28ba2979038b97da525b3836b31fa4a453bf351172525df89c6a3aaed5e04b1aecb5c5cc828084e18ab05e14cda44ed24c1cb05a67ce4c6c224a0a42bac2ecf677396374584b034f426b11848e11fd2fa5771801cb6e7ce0b60329a714714c3a29e5a91c4d3102e8e2de064bc3a1458f6320a30ae5e6acee3bf531cf49444be240ceff8fddcc75a233f99202630fd7c7995158f8e305a8619a887c6c7853ba714fc1e9f7f65266cc3c6b16471e40224aa78387cab19b818a21a162511132e2d87665654c4d58fb6c81557424a355c4b54a1089965efeea70f03a15925966620d0384f8f7aa88e5fdda4c2a9afa0afb749668973274434bfa7e71d4632f0c88c1ed55ac25206a4d48a821ac7026718f0d020b3b08c393f53d7c8d298049ec0526dff678f10b33ae6db7364578ff7de939cc8775d9eac3ca86654630d8b11a551ef9dfc1eda5596138b1d7e823f7d9c385ecbba33e6b31446e8b31a7fba866d20e46bc110af77f84baed5d318d381c4d6d5f265ed6d6dbd5423a40fb3d7b0292b97cb2a3a91bcbe143fa022a4ef3b5e2f1ba7d0caec6abab07396efc7a77d9af600db657b448fa63953673cbc969ee4d82b505576d2d2e06679413d09ee7d5c2712d8e7964a7dd39445eb07fa2918cad7368eb956832e31ca8c07fb58c9ddb30dc109b37334c595610b1640f714ee550fd9ec95ef4e4b4086edc3932889d846371dc237a7ed1f1140ee27c406b7490a4f403dd8a6a240fa482e578f0d5518954cb02898d5fd2118188612ccd3a112e3ed442a47be302cfb339b428fa8eb92387444837e2a837bca3bf9e59ff1914a21eeade51ebf433295de6acde5280c0d9f6b981a2ce08a8350a70f55f64a5dc21cd0d3a434a6b80a20b0ebefdb05fd60e301b8b24a875a568a7847177f3a2c76b345d92c2251702d24bf8db2b41bebf08e11147a7138c3aae290a6ad90d9eb2e7b9b075fff0a0292c24d1cc8075d81552f64b5c9691c97f917b135d514bbae31f6fb10405a162bf4e72e025c20e9e857d3c93f2d5313816f1b5c72752704ff6809e2a7b109714770adb775859e42bc580a6123b9f48c723878d3e4d8fc6a7e9afc8cfd5165ab394ff1477adc3cd2caf1c36581ba6f8d1b2a6e0185857c1616c5d5b069e60951a9639ecc2d7f372a6c2730e43a56b4ee6c90f1e2c0694db803cbf274d8b0bffc9723be74cbf4fa40c49d82ab44427188a996f2d75e7e727e6f9c74dbb16e9420a21cbfab4743fa6a60c50643772f4822551a6c850b38ebc95de951a610c5c6a5b09d9ef6a2ca849728a307983031c4cc061602911121d4864447d10fcbd406b7bd4a3a4aefc741e872974aec73412ccc09306f2e59adbf51f93a7ed1a6d12c614862889f8f9538a25da83f5512a33fc12e8a8a4cdd7df3578b7af42fa41360a9f15820c67582ab77679b19c6ddbd46d08ba110ec355c21709dc03164d77468ee20ae062e29db987e01709f60370166ff0626013f21b2f97b1353d92152699832ac1ff458a7d72c7933f7e84fda92f5f730c47eaba984cfce80c7cb73d833468ee1c943d7cc37e95dfdc156e33fc78b5c5d10549be0d94ba6a38519aac1ae4c6ed6ba08e12385a7ff1845a826f1f55c1968742fe3c477ce20d7a8d9652b7aa25211f4ab613a5ea492cb0372228856a3bfdb676fb2f20ab68f1a2006b29c3646c50c398617a086e88745428c57d9c1436037cf82375239dce99da49cba658c212a5ffdbb27bcb4ec9dd5ed7dad385d6e713d7bf034b1063a005060d3eb418121ff69e7557e671aa3ac7ce3e2e73849022d29c06ce11082cf5f08e92f00b75c920bb627d4a53bdb1d90ece2e13e48e897ab212194eeb8834f20bd72344c14f70d94d4d482917d9d49a0a588f546971236a8d24882bfbf846866fe0fc0757b7fcb0306a2366df0f16353cd6474465d01c4c4d8dd13422b218ae4034b811639386463803ac3e0aec53d4a6ea1a633a497041574ad703addba07883ba06c797a656d769a6d58138b9158dd167dac2e19e3a00bf79a05ecde8ec8cfdf09554f71e6eb6756c0da271f7af1fe199baa30c9aec8db6040385be8bc59096847668e880e9755f59bf2b8a6a22b93444b172170520e52b24564ee6c856f4cd7723bf07be5f90b4351b5f848bb1958c63ea6f07dc4f9f3c9a793db6083e38d32afb2e23658c0356dfdaaba8d1e21c4e6fcc0d1e98f28c0a61237a203610cf46ba5446c8ff96c20a7b6358f941c1616ac529cb88ca0526e12515067c2cead7336d27d5f206d20c356169c5ae40608c57b1aa9b8fe8f67ddd4b69694d2ed6c13f83360cc8938782da9bafce572edfd2f77698879f92e6ba98a4dccefb34b05fdbf994510e95d0b6d952016005612880c301ca446a4db54a38d87ec8375eae40e52bcec588449c890d191b31fc1c65ec36187636a8bb664bf21903391c7ef27bd7bf4756dd27e04dfa99f93eeda45a0e0873aca01e7a78091ba81edad3fb229ccbb5cf1cbb14be41538c922cc5fd964f86e645a2ad8fa92c2a8ec6b9b880b98bca5ac5a83629e38df6f5d62679440b60ad3c4fd15d7d79034ac19374f202a9bf1c1e9d4a550d342872d303a7bbcef9e101d4d993f7bca846491c1214d90564aaed45efcec7389fb41dcd18b3ef63682a585bc94affdb2d1ab4b817c64874f45fd60444468f8481ac443434f29b12587ea4eaa1d0f2bcc7ed9456814a795722437567fc96c9b6f8e29ac89100d56e85996b0a428cf48e3f1fe5c8194df8c84fcd6ea164cab4042b42e8ad54859d47256cbcebe132bd121f9ba9e052785369934e42fdee03ee52fc384bbb9fb3dc23f3f160e51919fb9161f8119c10fb2db539b2a73e2ba02c9482ff92fc889cf1413a0e0aea1e2c7162e516d0c41f8c0f6b6f9ea5690dd9f9e9e340eb0decec6599efdeeee274ebf426479ca11c8ac3da109e328dd82955ef6ee8ba704d6c16b63078babe01713c0ca9db28e5ce4d50ab7df97e89f14dceda2cf40e24ba8354a1dae8b21a99e5a89149a8d2639b2c1775a0c94abe207d08b78db977eb8d750cbcd2aa5d1a46c69219ac398ff81d0b0f842bb360a9c96571462424686278b473abec6738bc7d5ffd57eb76960e66326cf1f21c7b03ccba3a34559962bcba1888b63870999965725d8227fcf956b2d6f38ab95c85b1074dba67790b66005c69405d19b67a9f50e37ae4c5627641282f81016f551ad04f1195f2180887c740dd03d229f464606e8d28147a2cd50f9210cc8b248a9afc4982d167674401137dbd98d3b2491ce403aa5c25d2ca19afdff9d8352ce36d82c26965403143c89c3e05f5c27096516a216834982836832bdc04a4e6115a7c5959ab84c7cf4845ab6aa41aaff1bc3229f3b9b821bc5a51542d572f1c96f304c3c2070b88d40e57092ba803bc90f752f7c1bebaa9f31c8dad9002572199522ef239eb4c74092e32a6469db40df54ea06254dc8bd75f7edcb40d49c27eab593d150828410cfbe395d78710e6339bbbb86c5e53c87580fe9942c689d348fae85b17811ecf3c1cf0cf1d7176d234580035db745320d3d78bfb90e08954085ea3a9e160073f838b2c73db739d0c4f04c02ca1c602520e5173c58454c617edd2a811bff2a8e98f0973d3418b1e2c4421a80d132a87171d5657d87c620318cfa5f3cc32d4c5d27572502a19e67cbb33f1fe5646385a5ede46b04baa456595f5fa7f425be1d297e4ef3322052e11bba2ad19d3fcd69a6e497b489dd0876ce1a9a1b8e3eb872e8c57bc42a632a2b614ba59944ecfcff6e5624ee8c417a69d1e2415ac0cec0570985e914561967f90356c01d6e2d5dd9c3eaa92de72f67c1fe3207c9faa25e45b1279b4fdbf1afb85536201625a7021794597b814581e0ec4a01ecf22a121be49385f95887352cde69ca516d3a48fdb024bb9460d99d3097b902fc1213d72d5e0e695ed15e2bed489fe367f2103fb5ee1962c167f10e712c39fd79b07d02d9d1a25b35ed7c00dad40e3d536578ae1466b02be5c03d7d164c2344532c0e779abd9f953847216dbd845ddc8ad6bfc07eebce5d76c571defc61a2729f4d9a599e71e71aa3fae6d726bfcbac4f8207539db09f5e195c2c5224abc7746f775814ba2550c8176aadfee44b91ef474539cb0b943d470fa102d85f5f60e83c157ed124b1b7ff71bc7022543d95617141fb76bfe9a362139767f8015db5c1ebbd296c7ae56b22674b4e5758e8aef08661edcb11d46995c8a5f5b2a16d190ce9f8c4625fb4a83a94f1f7e05d6afe9c51e2a3e0331a5a425aa0ed375ac907cc9a2273e1e11981508eec4c1a0691f144b550301dc70360959f3d9fd300fdcaeabe3292bec5e7f023bd9ebaa5e3eabff896705fff4c5451102f15129730e76df8b94f9cd10127c3aab009a7e225650a4981bdf60c09955cf438ff9a007204d4065348a646c43ceb018298331c170c661ed174607c1648e9f5f1f15440289e225d62a58eb3b88e6ec804b770a3d680444f49418235e5cdac9cba07c2b29bee8922ca7b26a9e1ea32e16e58503cb01415af993c2e192d20a9444730ecc2ae86970a0c5cbeb588ba859ae92d0ea9cdde4fb69067eae66e6dda84326c77c40e6740d2ef2a7251d57fdf5df2b812766fcd2685503205973ebc4eb7b6bbe535a170583cb3633bd5dd8117cd7220540dd66927493697afa298f3386c1d3c9bc93f535bc5819e98ad6cea5e488b3d8eed2169dcfaf41966db39571bf140251c6689a786e3295966f6940b4051e830bb9a7fec9887a5e5d5f12ba23f31e2ea497d2efb9503f95eba744b765de6745fa4bfd422554e2c58834c93d2795ca8ab7aad2877a568ce6d4749a78f28d5656296a6f899fc2978a5abb922df265ddba94cbefa398fd71d2f5e5177cd3de0bf898c31e6bf53d5e830461eebb602c7ba8d76c6f4198afcb7abe012017f1ab6966e06c63e9e3f24cd54b2b4da5a1231fc4d6a48a61ad28d05a830fa7a655111cf17a2bcc9c04b361913ab987511ee03a492100b6150eb0b139c96550322ec4e5ab3a7986efd1c94f8993b4011208cb6ece6d56523b39b42ed041ba7f17acb9cd7fe794f934f44062ab7544ff816b222c1d267440653525131ce4fd3793588083275260ea51e94d5c79d82d477cdc8fafd4798a5569f0accca3b81d2b4a43e2b9502b7d3cd8c8f524ca9a98b92da832618867134251abf996ac62bdce387597d917080b3e377d2833740f45807a360cee8889ea560cbab35384458730895c8f7c3366fe5e138261fd8bd093dad01c201399c4a308086140896f9aed794b41748960528ceca5fdc247db849dc1ff477fc0a42e6fa8acdf9bdeef5ceb7609519a52b2f24d39635b57645048a897e281e388b3e6d396b5b9b62359dd35fcbc4d6fd6c2aefced9702f11ce32cc771d90d74c6e84c51f4b7137ea20819a0a9fb59e62e3d32b0e8c19fcf2a7c4d2c6102ccd979e0f1332c1586387e9b71432055927594a59d28b1816f80941c582e3d89ca41884eec25aa732ddf4b642e2a2b28bd39394269568b178008b3d33d8e528019fe71bb320c66887f9d1fbcdf31f8e5ebbb5bce34d7083e42ea11b977930f0495fdc07cde9ac72e42d0b3fef7d844f81ea9189c01801d1ebb4ea1343f80788b172fc7d2728319a93f41a1e7b22a9d6034e26d86ef6f5c0ce326052fc4cad8ba6019055e7bca35aac6247b1e98e1a70910c1adb1a12d3b9a42c8fdc0e401189bb293665007510273f8084845f08e3216b509629b7bce44feb86fa9dc6b573a6149d3ad3946b1e5caf55729408475874c77fbcc960e64659b3b441ded2db9f51669587ca4ce3144f034ebcc82260a98031ab0e0939bddb1de5488daaf6a81dd188570331c83d8fbbe60e0b0cd9444e0136258bc8ba3698c0d9bcfe667da247b422341d6b1220c423b0672d73ea1302f5975c0e9127c1d67fad7a8d59aab366b274cf9e37e74f5d82549ae1bc6d622a05f1b89ae4e8bad77471a6ff29c76fd0fc17dbea910c49969f3a8efbb390abe2ef3be995ac86bebaf8b4636b07f90c7cfad1beb32a26d41206a8c5b97b06ea972c6de076795cc0400195338d69f2891f87fc264283a346788bbf9a70f88514a292ec7aa61e3a56e9ac9607b2ccab88c9f044476afb73991b40416c5705b205f3b21ce871ad3338b0e41b77ad0de770cb423ca34021039fecc0048df1bca6e28c1cb294da8ce0bf27efc2689e0acc1d7b189124d33775197f9ad495deed046dc5b2ba6179d9aacbfbf1a76659123a4dd45a69c287228d39973abd46dad44f2b447a9fdc678c43e3b3008ed242eb9ed0f703e1fdf2ec26817483efa353d5b74957456e8472723c1e8ab4948e275b0a6f5b2d251deb209b77a31a547abdabd04f08b452520aaad22749a7e6471b15a1e926a7f209a2d9567fc9c2ea4b48c274410833cfc275a7ceab3caec08af6692d8980f01ec26bda6278dd9d2eca58704def9ea75030f6157d474dff0f780279ea32f830806f2c18d7a7d6cc14dddb6dcd82c643a4e1b2f32676cf0f71d92cda42f72ee0749aa578215c0e2d39e6af6bc6b00679a0991bff3943ddb66b954789a198d4056a9c84bee9476f18693da2edbf9abf9bf3b3495646148dbb1446fdf2d749b6d92957c0d301ef3b6d1184873c7934abd664d0f28399be32911bef2e32718cd16e84d227c655e002737fd5390f3151cf996c5aaaec85f7d476664bf0c616b5f0396cdd62e7aae49d01958b77f4c963870611107f28c10923839d4c43b85d50f441bd6b643ab42d20b9bfef2e93fe2d5dde801398da0fbb6b9b24816a215cd96a0948165d2be07c906fa29f8bf92c5416b566f84ac679ee45b24de5ea31d4490730ae025dace8d1d401062f5604139fc31112e402465984fde2b5a026aaf0c45f2eaceff700d2ea59c2211b5f1445b4cdd2cb497e26d61e03a7df4272a3f695e651fa7b25d7d28699bf1568c53286e938bd9358145a9b943e76ee3b30b146d69a033a5e1fe965654908b833063f857950c0b453152d2250bc3ed51ffeda7494db888e1d4552aa364905b52419b61125562f49626d8eff1a75bcfe455dbcd50d37197d905340a404296660e257b43b11cfb5202a5977c24ddc0ee256b2f8948e1e723a02b19ec1bd912ea0ed048715bff4ba4ed8f6ff715ed1fa775c545cd13e6c56c840d2ae970af2bf21b02662873ac22c1b7ea3220a7ef8f640f2ad2b41bcd99b4ad7a8414631f7d1831783a3679d09e1b4c9c78d2451a7c7871df9bbaa7b1175c7ccde9fac165dd238d635f7a72f1e1ff42eaa2648116d21c00f74a5fe2c8c02c3adf2e90a10b0c24fe22849d3bd18a8a672fe788df5271eabe962723788d1ac3be2a906f6feee40785fb5d573fb504b7d2fdee0ca2c6e0931506a9eb58000fa86e0bcfdedc0e173eb10cd7bf164fd4fc5cf90968745bba2dcd5b4ae70f6086610967f7760dabaa68219cce0c6c048ce2ffdc5666ff902b8839f77a217e81c955e34fa029cbb212d5c4dd0264319fac6a3ac46d2cf0fa07252502f5b8c4f3c6e7ba1c758bd1472d70ea06bb0eb08a55858636efdc7713b48276d56365f4cb65a416a3721aa0fcfcc07a543d5d783de2a78961d114c98a6933df4b16932732c32a8b27e2a1aefb53ba4b35259aac8a678dbe73ce3f2369ca25cb90bf57679095513536181f74313107ad555c06791eba276a66a5fd4190d6e33784fc9ca98ddf6e8a458e7e7083b2398f02087cb6a171b1ebe15ee148377da797db1485061f63d78bca50b1b0a0c50affb34047e16df5ac226cfe73710f265f165ed788b02b3e9aef5e9c7b8f2d2cca069d93230d773eb29fb69ed54cfdb0e931164c344f3a19ad17f67c5f50142f3a0dd1f0c4ba157a84f927d053ba8ac648ff3b6c025e22ec280f4f1c7a15e70eb1bdc0ab80edfc8c9b9833c40042142ee679ed087adaf79085c43a92745e02a5ccfde4e820f40c7fd7461079026dafba2a845c957d084fcf996a5d36eb7b9b8d912b343e07d6a76e18cb777f1d6007e6b8b6e852bf96cb70a921bd6323f976a436a9e2dfc22c7fd42bc893b99936ca81ec091364e8b864605ecca1ceec8821360d057592047d90045a5943d285a1785a241c1771b8e8ae96436137a3f31ea18e6b867210becf902dd9b9b9ba78c278fc0953469bee4abc5050506864d4df097f7b2f060bc1293568a6201bc89e9c4ac3acc33ccde82066098713c91d73e9160b5791f956ec02576ca7e024da1d64730c80d04ee075d0268076bad0c18a41a4817aede3f0c0ea216e2f4f3dbe04e0bb2a7e8c240d4db90ff478c64c2007feb5b047447c7f8bf124a8cafd17f1b9625254f4b4cd60d1f802565a1db2991888edff720acdc096810e4f11f2a88bf525b65b0f91e2e459f07b6a61c77a72f4f2cfb715763863569762be283111c1a5e8adc926f89abe013f338f21e5dca6c44f4e889fa47331c5b0954086d8dbeb9da54616ee78185c293b8f143c3c78e80cfc7ae02e83dfc5741004e4cbdb4cabb118765a501f428fe0037ae941a08e2a612b6c1c167ad3030d1787ca214423391352f6b5a666ab7030102d9291c322177e4b905b287a2b45b57063dc36eaec752c0f185160cb9185120ab0bdf3fa465e30a496efb089af0ed212f2db38a1be6900a09f3af3210c99b91aea6d46625cf75b346004b61b5b32f0a37a545a953624d108feaa888abfa2577998449dfcd2e7f0708f8e1f3bce012321e8a30195107e7398c8be359080dc38a34c0dd7215a347b89ba5cadeef67648200ed42c5751bc322ce43c6b76c3ff98b41307a750f29bac05d2b1450a7b6bc3aa8ecfa2aa92ae19932d27c981382a814601aa94eebf217fb91c38a46ab901aaac0c4f75fdedefae9434de206dbd961f3f2c1fb9c4edf7f206f82c2c69c967c0aebce42f15de245c8d5b5c02c2cfa90c37d8552427dede909edbf6da499fc2cab0704a0b3f95187bf7518a8b53a47bad881421fb11cb2c170db45d220896c15e7a835fc914b669ba1ac73e5676e4e01f3dc263bc10fa7bf0f152b314409be48e73b11b9f4df7484b2efae2dd49dd1ce0978e57b6ed69177a778fb5009ca176d390b603468206043b0d4012f4ba922402496a6f6f0549f8a2d4312c2dc9725b4efd4254414334d251a1074dabf163f69081ac7946706678dbe5de821b80685f636e6723a878dbf3ff98ed35fc5cb5ed5af82e6f898d63bb0edd3ecabd6e3f0fbc6deef6e0fba1150347c3666db14f9a385340379c50efdb9ecadec9251d616ba10b5d926b3d9a23bd2869b6518bfefe4bbf9df6469519e7715f7059eba5b3253035770a53be7d82f7dc33d03c1b7845122916f44d7008eaf18fd0e30ba05a73735ed948dcdd1b5ea475145da0c68ac2fc9ec4052d34bdb06a16581b91b636f2db4a04bf9941241481513061aad039e1aabe8a1086aabe57ccea5a07accaf9d1579f6d9a2ec356b953107486feb1ea81891813dc326ea8d42c83197affd9f309c44ecdff15668478b33a820fb3c0d119fc0d72c9e861084ac6898207e3e79e9d5e300520d843c3e841a2423329851f89739b874281dbebbdcf51c4b239ca88eb771604b985a58da35d27209097beb82e66645e2dffd158774b67a29643258e3203319e9ae31d0d73cd5cc1e6730c57218608fbde36b3e4195171ed61f2fe53612668b277e1fc32dc08cc59b0f9fbeb448e65dee2cf64def8456673a78b3fd7183f10f487f7ec8f2e3bb81ef21b9c62d0f61ff289eb02b25ae239eb44ad2e158a9699052e372a5ad6db3113acbd9a21a774b8142c2de10706e0565bf0f17ea961383f41d4937e89d3bab165879dc19c3177a0aaad883d823166725e7a741037ebacb9a00f68ac4ea488d54f5149da2e26cf5aad7c6a1470e2f287d308cfbdbc2cfcb7bd8c0fcfcbaa50b3eaf9c235aeb797d8e495e26747be6cdf27e1629b0f01c5d7020972b38ec7e915ed7de4dab2a0604492b0a1574e8c6e787512d9a0d748b68ce32ed032bd546821fa93b28ec51c4e16f135e1842e5ea2bddb3cae6066a39139407b03d8bca4278d37124faeba71a7fc789461fcf3b52efc0249fc06b2f9f2e4cbd7c5f90afa886f5970640aabdef8de9503f502e3de337addcf522fdbff782b1a965be260f48732ec4650c8890d219d3002876a17aecf20371bb7d66cc9b4855f2bc26b23c2e3a83069bf81597b888bf9dbc4377e8f5249f7cd546343ca3124b5d005ab5e77e4d1f50209020b73ae7bf52ce3026ed25bb3e646c837e1d1d537e6841166156b6c077c7f5f430bdbd09d08b544cd3950d951d2bb4bab6e956e43568b068cbe316d7c033d26520f8a8f59a81acaf0df811c64c82e04da1f61bbe61f57ed070bb7c15690092cf408906944e198b80763d69e66270ac8f3220f8a6116e200791dd11f25ad9ab98aac6e712533c5f5e59c9a22a9c2c71c12fb746e54485a6532bfeaad30fe81f19a0d6db24561e552fe12539a3d8ae6bf7f82b74c5847b70e390b607994fb97c95410c2f644e2465f03d58492bd7c06d0fbcc2cc380078cf95a9956208f0ed58601bbb2bcdab981062336833ec848777244ff34a13f3542ac83c2f47a97594c24c72bd0057c4cdf70de6a5024f9a0bbf6ba53a343cb743acb2d8b1914b3dc50d4222dd468d153f78a122eb1e453a8ce1f8aee65e79e0d4346346bb1550600aa1a3173491696f1c2933e1cc82c1f6ff9ac438ba042e57d379d57d881cf0dfb4d2d24316a114dca43032c501d11e57de07ce13435fee163775caf5882021a5bd565a7b246c79196b51da6020374c7dc4a609a38abb556b23058f4462fb55cc17966af55efbb1895bea4975e7c6330b4aa390e45ccfcc0c312b47b572fb44b23f80d42335fbe8a5078ebab38a2390e8ffe752a5af507c5a05ef13cac1df88f0b1083797cb0a4f3a18971fb8239ec270ddfdedff2a20112fe17e4a4746bb27702e5dd5a73e4d8b15ec293ecfae2c7fee94e3fa4e4eba648bda392b4443618eede124ba38835e326384fd2b1045a8fd792286b4cad1010788531ac1655edc48abf9f23e51d06fa612620162ea2ab4452b556c5018190b9dd870936f22879c60c624bc40461f7423e1243d42ed6e1860c3415f83d1b0061504ccb8826ecfac6124077ac7492b25fdcfe88eae53bed0a715d781a45dee13cc151ad0586e7307c69f096c353a94cf26e551c56ac360f6c69c09a16eb2bc09a2be78f0d0cd06a34994cc56e45c062f3e337773f8570722495a362004e114af2084ad43c246c618567b272f3509cead731ab6c6afddfebcde7342fea80a9e9b9f21078dcb961c5758d995cd20865663fc0f23e60640049605e4bec882107c22b0bea0a1f3c88caeb3dacc112b43e1fb1204b8b8cc85f4b6e61064063f22fbb4ba98351070f185046e8f9eb4f1d20eb31d398f0b5f75312eb668d88d055978908f41530daaa60c9fd0f0d2bce080f4345e514eafe08bf63d094065decd6cbbaa9ad83573179b6d6567b5e666a5488985400b68e63670899d7fdcb0481d010295908220cd1071fe5d30ced4e126217c6c6039b44e096277ccaac5baaaae5b31ebc409d046ab88d09f4ccb9f281869b4be46940d368e999e79cff44c09b1ecfa14abc796d81f702b6cd211d7f69a2e285a50a62efbaaa9268ffb5ec76d36af78da3769e3628387feceafbebac6defeb9b1a0b1cff6eb01714fd858c95f4d3f7df16ed67dd210b4b5025684a5769031a8ef171e44a66e178e469751529f629ad875df4c2c67971c29e7d3f047ccde2e6c9587ad614fc3637c72f14ee3add0b703c09bf3b0c80317b839bcf6d055d97004ae73c293330b0246d00000000000000403800f4fe6d6bde368b31cdfece141b5c406eaae452b5456e6e99498eff63da889489d8b31686027302c3025f02bcd4c5772a9019bdcb6f010c3586024a8c08a974d42343d932e680cca8301250607ca3732be56e6dba4afb8baf6fb2a40cfabb750b41be13aa37ca0b7ebb1eb784afdfafb72eded9b6b37b2b636b3db9a8af55c6247b2ba15b07d5168edbb2a4cdd1def70cb558b4e172848eade9fc4c551674b65b3f9dadeaecad2df79021a1ca47d36e6120d3baa703441416ef91d96bd21f854e27ab2b5e64ab49dab4c56631b6153c77bd285fec9deed6ace279b2ca626532b25efb1415909ffde77aedd1e5209c22be46b9b6e9aa7b0bb72a2966dcf5e5e66b9197cb26e18c406a6e2013039934228c74d0a828f69db5954b76958e41a8a068dcb12eac6ed1c6f655f5445dbc265c2c57e4a5732a27daf5daeaeee16f9ccb9180864c0b22cc204b320517c8a421d38b6a22cecaf89f62a2e956e6aaefb2b7db52480812d088a096f8196ba494cd55e962b94634e2514a74bbc7965cc9efdfebab24e2ece6e25a5e195cf735a49070c6dc4dd833bab794511db1eb4dc9f4b147635bad2923dcc2c86fbafa2ece39e70e36c52ccacd0e195b4ff282ab6443cc3e5bedad87ce786c8689ecc55f6da7b39e2fa330b2799bdc29d75ab45db509c619a51bd9bd5929e3d936c054b8bc2d9cbde2c34719c8e69725e13f93eb2a6b90b5c3d979276c7c697055d9fd5d5d079b5e5af7a2cb38c2e669c3cb9afdb69b37d71859f28e08c4d3032a0df13b57d8ec02d7626f79e339df638fe9e21a7dce9b4dd890aba322e46093cb43c6de9bef4dda51da60838bbb777e746d8b54f2321c9b5b58ce459f4fca94b10727cee7f3828d2dbcea93b37eedb66bc660538b8c6cbd7efedba8f360434bd39faf35f616b76cd46696f892add64b767512beaa424028629a72acbcee0d3e191d0ef39832eaf377d7f9d51f9430112eb7fc92b75b8cdb2a18770f7b42e773576b0e9816e773fc151f6d285ffd42973d63d145972ccec56b429e82f2c5d5e5ae9b219bf2d72e9d5e7ca56c171964df4ddde553bcc805277fbb8bbb95f2844625520e0e6a42277c3e1fb54b6c6b3eda58a5efa0d757bab486ffa0c3da3e9775f34966bd383e36ddc285d9728c9f6c71317e74e27c3ea2929cea9626d9773ddcfacc68741e650b7b1c2bc3499b8c41d5f25a65fd3cae75eeaf6ff43710216f4442a4f97c4250b4b8566bdc5f6ceeba5b8ef3f98440a450a8d403d52c6d2dc9b3aba4fdeeec3488500ae5f0dc302af5a064611d272f5f5b17f76a1b0b070a168694f6c2ca3ba9c745714038a590103cef54bd020af18c51aed01dd104aa951b566e56b951c58c4aa58c42e54694860375ca2a534050a5e888462b9851a4b819354a19254a83114ee9fc4ecab5280b850305ca8e44234a7382fae4c602e5c9cd18d589058a93920d63d42613284da094b25bcff51c9fd6a632594061f2284fcadf8bb5ba442706069425a5278146a210cf9906542515284ae2a2717deb4766b5b2e37c3e68d424cd2f698dad799504cae978d9846b5f6332a84848443c10162848481f0af19cb1403de2942319a84614508cfce3fdb6d4e96c72d2b78822a00854223b3d219e333fe5090c28443850874065c803aa105088e70c0b142842704812e7023508064a101588040a903ffce8435421507c90f620a3f4a8943a0ad77c2c82762a48872485008144a511541e13283ceed840d9a181aa634714e2e140d1411aa3e6a040c9216ac1011547dbd6b2396fefebd11a141ca010cf99d1033112dd58a0de60cbda43e61bfb77425347443f9f1b941bfe6ad4c8341fa836d890933d9bde3bbdb72d24a935c628352250697c9c6c1b366bfcded7b8230ac1a1d00049a0ce9894190ca8325cfb8fed0d636c9255450664091b3b48038b67caa3d6375b6c673abfb54f78b06bac7dbb3d63ecb937dd117763ef46d734a466a7a78276443b2052e8f34161b2e31ff5a6db185de7f1ad3a78e7e2f73ccac7b531c9c24447ecdacb1fbed5e6940bc334077d76e71c5cce47a16ac224c7845ba78410322a5f738b63525fd4c5f8d26dec7f70ccb935fa828fbe26258d6f34161f9d10fe5b37627bfa224b06a793ebdc868c6db2272b8d54ee9ace06dcc8a05b3e97af31996f7c729fd7c63ed785498db7dcab8e57726cad57db118d2a0b531acce79b8cc166473f32c6f9904a98d0d8b898191ba6332abf83dc1e77594337273320d7e6f2bd5abdad3625cee743420b5319b06b6419e9af74f7ddcf6785890c8eeeb15d4609a731e4ce5e74c67d71bbba9bc460cb3832f82f258b1de114c6eaad1dff796d8cbfad1022143e9f3a81c11a5bcc936d7b4f1879fac2d97df3d8568bcde55c5eb8f8d2e3ce1819ced445abebd05b7c0fddf2a513171bab73caa8844b679cbe05a38fb99795d946f9ccb4a090b2ee55d774add2d9593cfacbd166e7ec13168edb3a7cfedb0c3a9b57347bef229dbc569d5c9f151de336f79c21e3d8d4a72ad8ab4f678bcbd899f64f5440389dc6df461795f3fd340557592b7db4729b6192e2f1b72ff7cd59b7f7e20d5314f1d743dab5fe74524a0a9aa068ac1bf663ebb83ddde909c6b27dd3fabdcec90ad5a811e54c4ed0d82b57fe639579742a2aedb83035d1de632ca56bf713138cd95cd835b673e99c4f4bb4b6b2b9d893dfadea7c6652825ba494b67471ae9992f895f5678ccbd884c44bdafef62353d07404ebc5e0f305e59a8c5891395c389769b77daf8a61b81e3e18e3ec5e193d1ebc5586b1326cd78ee9600c1139251c35a19d32cb0c74669806b444ea1911100011b34c020094483d360c10c0ab913d6a7664ce010290464f7b5c34e2410007001874c0e40a874a231c520e0884c0d40a8f0e65a5f4a4557e8d4847e7750c9854218287eabc4e01532a1c2ae5e090242a1c2aad09f9291c2ab948a70704426032a56143fe3add6b1cb8ace7f3d1f911684dc841fe45847264883e0fa934fa9c108f8e88a2994a818efd9cee6e59b2c5a4bcc9b2d5662bf6b77c6c94af5e2badddec7f39e7a2b443f91cadae2d8f75c25066f32ee7163695aba1f46102e5eb736b46d82873f09b9b3e69343ec7496bbfc99335e7bfe35ff7cc5cc64ede6cebabbf9fcb175b3e7132fb55d66e41479b940d3769ecad28297343daec8bf340c8349f0f69d2a44e39a15be90c4e994017fd25935d7dd5b68b3361f25a7c70174b7792e7b29e18465f0a62ba04b6a7ee19d37d4bda7931476393352e16d75409bbb96a7cf2e7c28d715222e17a5e8dbbf95bb76b92e5f5dff9452ac93ec9903d6b724af99c8b64f7793b930dfe46ba3c277443c40409e45959ba9f713eb25ec7f6ba5a9dcbf1b7c911091b84d2dbd225177637b2cbd7a2b0ada38e1d5b8cf4ac2c4eb66e7d11d8d5a1f39e4dd6f72653e4c528fbebb7eb6d862e11d68db1b7da395ef37b22f2efe583d435ede9105a1fec6e0b321e4d864076f2e75ad8a093ed6a216e3a85904209fbb5a54d487c5a9dbf77cbc768ab8c0de28fadb593d615eb5a0c0a321f32c95673d3562775434c813c3abbd2b5d3197b933220d5d9b945d7f2fac7d24ad7aa2d5fdbb772f9e1a27b6f8bdf687d2eca3e5a9d6bba579e928f1777f937d65a2becd768104d7b3c75b3f69ccfdf5cb1e94c7abc739eefe2c66f0b5782e2a8223c06438620420c210242a8271db2081204044110c3308e03691e3f1240f0400a47418e83280c116308218410420821841067448484c61903c70c784ebb80187d0dfdcb90d0c7c796b52647c0c5c9babe4f5984258bd30a206f19a2346b457bbc097eec72f2615db14514b0d8ac0192c5db0b4d4df8803332a392a6c61c5523262dca70b4e09605aaa7e5b4d19bb9c812312aa3fa15ed40d79751e7afbff27ff1226c47bc1b53bcbe6651fd0f2362b1695e3001d4b8e1514f7b3d5db2055ca7bb9d97dbb87f309e4e2747d3c7a5f2dfc92261398e48b028dfe5e9b9e5c35325d9e9fb6641718ea46d2b6a3f6f46d902bcb12967644628a2094a7fc4e5bd498472291469a8353172912fd9057f18f66a104c3cbb7630e833ae48b6e44e0fda89d61029f3bf6de540891299e7346ef52a9eb3f43872fee53bb78c05e4822dd0c2ed0edb1ff838c14b60556dbb58710e454a6b269c5d83e52fa8694d7335dee0148557bf93e148e192730d855ca2a0229c6cce6db0ff07bcf4935d8d55f081893609aab2bbacc9ed7534bcf9c666db47064ae60d92cf82a5c45bd251f93a6aed6ed0904902fbabd1acb3dcbc32811b5b064da5fba031fde27e90e8407672fe19dfca079170f849f97b736279d06ba934ea5bab680a9f92f5f1c97a49616a64a6218d0a11cb58888d18af867fbf1e6e88b13e443aeeedbcfa2c5353260741105a30da7a1a703fa7f81e053c1cdf0e95e6caa8dce79efab89020a4b413e776182fb2a55e04e3be836072a7239a34a0cb8ae7a3e299034e5e954e40543e37c6276624afade58e96a369588f634b1b4eb944e8d8dd3fad2c91d33adfa3680a1c972a97f1031e44189a8ff37e3b28755848e1fe14973d6595b3884ce006b4e54ba9cb8b22c4a920b6c491c4912aa6cf028b2824b09df15dc3e798a4cde097e2b334867ab9b9dab5a992fb0d4f30b22d14a988d0826ed65b35636fe9264cf6a329ab9333ac9f1fa98d3663b8a98cfd589a3280b7b410dace4b2f4410e3b78afe806d64d58d01a17896e138d42d390cd3e27313653298d401d1375374800f1883efac9056e5c893e125b907d6b05faaaea5fddfe1de631dc7cf1fd164fe70cdcc558609a8ee8d1a763f1f42965f0814bba395410cb49de0795a3b4810bce95b6bc8c7fe38c8704a2a0fce961715dc7772d15f1025a783ac6fdf980d142f12a9d1f6da287f7b68b41e8f976f6738039a84dedf5ce8f2aa2cd03ae032c519ff2dd1898a5297c6658678eded7296f2184394c28234d4452b8443e0e55dd952d7bbde66c1492ce40b8846872a1e1053e09984ce720af56f46c83aed403f0e766f9666700f0e2e7be318e35f000bebf6fd0dc335b49b9e19a8070160ecb4800c183e903df997e8322cabd326dd90c2dccbee36e93fba1151eb7d096f04430ce75372371f8cecc9c324ef348931b111681acceabe5f1d91227751ad885933210e4e1daa99a528ca590ad9ce471f006d1c1960d6e815b723be150165107217ee6d835a12137940bcba0400d9839163cce3a646c399aa901115b1dac17db49d1032a4e8b70b1ca0c9aa35ea29a063d47d5ba00ee99fc3c62958511b8cb0cb05e1e9f084199aa781a9db7e0a449074f96a5d0c599b080708a1377dc4eb7c526d7e3d10f37ed97929983dc31634cf684d996d93d8c04837ee7a65501cca0abf0c7e72d5cc2d8531aa175eed647ec54d6523007cb0545ccf3d6b3cf89635bc19eea6343a15f9be18680c9bee06f68fd55eedf6584b2a4a420fc9d4b1bc4c86a7ad4af1690cbb5d78efdc4cf97028f2a8dd37602bb6ef0862fcc0d1eded94c3de5963f5636d07abd9145132b9ba256a4b3c7c3d70dcf46852569e36216a5eb84e9bbe4cecc0ff865be4b463d5f270d3de8ca39420ba57d32e88c4a4f7fc3eb7366accb4ed21307d4bd021b4b1fe82e540cd6ba8d2c0811360e2d73874207422a6c20a839cc253a8de11a3699a6a1718b71653b451a8b6f6ecb1ff5fd477aadf3f645928449bdc356f1cddb3d8f996c0479b86147311efcd96d3a4120b6d87e89e47e8be67db02768ccb6a261c6405bb4ac8a0417e7a67535db1e408125534efcacd30b4718dc40dcb568d25e1b3de8b54a9e57b9ac00c0b8cb8ea5eea21534f28f3d3fd04aa10c6ef774344418fede2f427347a854b023221d4d674285343527567a66ac8c8ee41a68151b5b179385155725e596ed416af0f10e3b973cd7dc71885ba8207129aff0a34a13d11ccaa406688551453447a54de2d37ed1e3e315494d65c36b7766a13c9f914d028ae30ec6e0ae5c7bb38a51ff84301f75f477adec35774ae8339d223d5ef3635bf75dce5db8f4951f22fce2a900a64b932b0625db985cf305db6c6d54e7536f0bbb2b6d1578ebbfd13f35ab7533e0e67684e1590fe051ee0533e552863cf83f298705f9507ca77084b00fbddf5e5504937729421b176dc368ed0d73287d9f3436822d06ee6582b300eab4d9b52f4bc7abe09443077ffd8b874d3bca0cfd3ed68df34de28d0267eaca25fd72fc5890c72cd91c071c6482b40a311ac43407cd6a38b33ba2eb2f24684e28a46b2c5d51966d34a44bbd302092efa4969903f96a8cc7ae489cc82aa10e19204db11a07f9d924afbde4e352ad6dc7c88b625a201d61c489bb8ccd59053e5b7036bc6516dde2f799df6e85bf5e1bde47cb6225918dd2c8dfb47008d86df2030b14c3794073d3daaf469d21e760230efd4a986f819c1012dd86b96f9df6dab8c56ae4b6c419bd650bdca43db003800758270d29cae52bd215e4caa9b2879b48b3c4f2f51d23549074a55aae90452995ba77508cbb2f570633c734139d2022fc0c636c3dd69c610cf63518c83b18ab7830855887d9df813aca7112ce7c36118768552ccc76508ad0a86048505f0e09a7c9bc2fa5798d086747d0d422c6dffa0dfc8c8da172b49676f423aefcef22819c7f02e4e78125898549756880d3d6e62c5374e37eaca116ca2a75bca1ca3638b9ddd4aa3e85f59e359d2a1a86cdfc75046b36379a61140623ba19481a3d61a350c26a15f99a2c4ca90df0e09f0923cc091ba46eb34ab681ce85c7f03", + "0x3a636f6465": "0x52bc537646db8e0528b52ffd00589c9b044ee2c5de12521040ec381d7b04e003d545abfe38ed9fa1139deccebf67615500b32060027cf47266f80b144514ee1f24fb3e00147918a63b7e9769dcb9893ce34affc1f8d444582ee9d0da8bf9b4a4edddd6a4dc52ca245300146f118812debec5fa7981f98060a217cde557243f89972407b50bf301c1d09bb364bef4395dfa8cb0189b328e31d385ecd90c175f3c09cf66b8b0c1475934dad8b3ce5d9222994473a08e689e5acd4fcebe719742f5e9f2db9a9bab32de9c9f75f9f1d72f2c927f72eb5be4e6f413ab5da7d9ae7679edf5e6c7ea1675edeb1878d337e6e44743bb66f5f0f527e776593fdd50bae69be466978276713cf96345f250bf21b3093d2b65bce921b379eab14ba1a85bd4a7db6f768b528f322039bff8f2e35ec84d198fd17c943d752bedd29c7a51ff783299cc08a43edb255dd39cfd815a7e5cb73cf933414a7dce6bbb45576678a17deadeaef8d459a840bbd80c173478ea50da359d7a0cf184f8d4b92559fe443034e21fbacb64321965359e8221b7f111cdf307311a29135bf4703e530fb967e7fe690f8b3c7b88e499c93c3bf3117ef656bba4b397d03f1664d7be8d1be0b1193cb8fcead9cc1d5fbe7f782693c9b680a1ce6bcefdc360b8f39ab3fc29a263698c991cee88a2095073db2efa9a6b666240e6b51b4ef1f9e8f32ef1f8a3b3fcb1608c2ebffe66f3445f80c77a9e19cd5e7b3633861c1f9d77222cc6a26c208c968cbab0095e7b685f4a97d2a57429d7bc9452ca2958c86099e28a173d3eb709ecdc6d6c82c7331cd8bcb7abbd27ab5ded3bed9adf331cbef876ae7f24383f2cf2adf3edd1a7ca163d7efea465774be9f6e5cd59229dba6c79c3f83dbf7d8b2ea38732ba748e2e4572fc269bbf72a3ea9ffd15addb24c77c247a18c697cebec90ff4a4b3739782bc76935cfce47757344ecd5fe1527c6428ca5e08858fdededd0a5326fbe8b153c1937d74ae5dfc2de38f77bae1d8f8b95d613bfb6c8f1eb273b7b85bd34ff0da576897c2f20275ace3033636c19b1eb29eba4fbb426ba45da1d76a57e8f3d4a997d02ef974a6658fa7aed33f0d2279fa6191a7eeb5ab9d3a4ebba453a7ceb52b3a75dea1570acf9e3f88c508dbd87927f479e91b7ff1b7d82599dd8acedd8a372c923f3b7649e255613a7ffcdbc65d0ada0dfd35b7dd715ccd6eddb0483eca59edda5cba4ebbea564fa71b9e1ce5a7ca79cfeeb5abba749c769d5cfa56bff8dbe9e36e71b7388f5d0af167b7b81b728ef2faf1735f91fc936fb139ca14d78f7ffbf85127d6b35bf993c5416e1ee69e50e7f9869a5397be49e6f985f1855060b75f117de6be7ddb9ae34ebbf1e32fb4cf2e3b8e2beed6363be615d7ad9d6e49afeeddaa52fbe60de36bce9ff771b7dae9b5dd6a8fd52e7ee9f3e3f776b14bb7f267caa4b7f8880c775ebacff3073154a4406c8c82c7331c64cf33591b023ccf6ec8e2fddbb93b803793a9f9707e3b50dbe8d6b2fce1e609bd8f1e7a1fda6f9fed626fe77669ce3edb55fdd9b7faf16b5ffc8d5d9ee4629744bbd1abce9d02b8fa163b1534af37d45cf3ad3b15bcd79cbbd9ade9dc25a10ed49a732737eeec0d636fbd7ea1d5ea17ceafce5d12eb5bfdc2047cf58dbbd30d69f893d72fe4d957d7be5053000b15681283959086afceddaa0e24b58ffff409c9a6a6a636af79fd42243f7d8b5cfda6af50bfda4fa8be76c3f8f50ac5a6a6a6a60f634f7d8b9cf6f17357249f5eee56383fce8fbb155d7edcad10e7a38d92065b689f7deb2f7efc62e4fae39feda2cebec5c8d1e85b73ecb50bb929e3496fa72ebb24f4462ffa2639fac5ef2e3a77d2819abb24ed40bd452e7efcfdc5e7ce01fcd1811aa86331c620362ec1db54bc137a2f9ddb159d9ddbd53e3d7eb35bd237767931b42f9dbb24dc2de9408dc48b1f3d273a7fdf9c25df3767493bf5767a8be2c7cbdd9a379ccf2e9d3b15a2f70ddba30335efc82bc57bfe202663d4b231f3784653e9036fc46c6432990c04c366ca183d3fef6cec5300233f1ed38d39e085f6db6dbbf8cc962fdfceb58b673aecf1ed5ebbd8db71da15bd9dc547e2b7f34e5f29fefc412cc6036c6c82c7b31b9af8d03ebb6d179b0981d2b373fd13417656bbf8cc962fcfceede20f759e9d77f84af1e70f6231a2b045e77685ecf172b7d8d9633102d97826537aae1b1ff1986e3c82c774638f9db51b2662087850037513829b2e6e966e98b8a9e2868a9b296ebedc3c71e3e546e9e6881b236e8ab821e266cb8d969b1d6e926eb2dce87063c58d183739dcdc7003c52a8f559b550d563458cdb18a63b56645c7ca8e951c2b19ac62b072c1aa05ab345667b83cb8369c1e1c08382e1c0f1c10dc0f9c0fa81b5032ef0ecf0e0f0d6f049b0bb637b6156c6a6e94d854b0b5b1bd80bb6263c1c6060148e0acf0f8f0fa885be20e148b150bb61678676c29e0be705eba341c145c976e0d6e89ee049d09ec169c0cb8187071706b6e3e10e3886b221c2b34d104f18cf845f42286207211bb8860c4302b36918aa844548a4944282212f188d8438ca2862a110c021e88861b2c6ea4b8e97223c44d10ab3e567cace0882058c160a566c586b78757038f8de6a17ff0d27866bc32decc138117860786f7851782d50a566e785a78597408bc2b3c2bbc25af0acf8bf784e784d784f78317c40d12de0e1e17ef03de164f8be7c3cd105e0f1e083c1dbc2c1e9277e4dde0f1e02579407846374edc347103e626899b28547aa8f250e1a1ba4355c70a05ab363cd9cd152a3b54365035a9fa50f1e1e5e0e1e009e161f186f0ba784578447848b416ef8866c333228aa7e429e12da1da437503ef8b97840785278537455be151e181692e3c2cbc2d9a098f0baf0b2f8ce785c784aa062a1a44362b3d3c31de18151b151daa39542f50bda17281aa052a16a8e450c9401503551caa14a8d2f41d2a13a8d450ad81a22a818a04aa349ca8d0509da13aa32aa31a41935199a12a4345a6cbb4193d46f5850a8e88874a0b150c5457a8c0a8a2504111cfa89a5031a15a428584ea8898864a8d6a052a37542a50b5a162438502d51aaa13a8d0a8cca8985464a8c65089a11aa312a39af50854225085d16ba8c05079a10a81aa0b551815172d856a0b55162a2c5456a8965455a8a8504da19242f545e545f584ca099512ab3556275029a99258eda132623503551755102a20543fa87c50f5a002818a8b8a07d50eaa2d2a2daa0fa87450655125a9725021a98e5446b10f1516150eaa1b54b25453aa8f141fa93d523748e991ca23d5268547ea8e941da93a523648d5204583149b141da939523348c99192412a06a938526b5270a460907a41ea8d940b522d48b120a526b582941b2915a4da48a520c5460a059d269526b546ea0429133409526aa44a9022412a8d149ad4085268a4ce489d49994995499991628a364895912223ee911a23e6912293122335262526354b892015460a8cd417292f52214875910a93e2a275486d91d22295450a8bd415292b524ba92a5254a4c0a4a64849b181541441a92f195821e525f544ca89541329266209524ba4944829a590481d91322255447b91222235449f91ead245b4999410a9205240a47ee834fa8ac622e543aa8714081a4d8a87d40ea92d292da90fb41a291d52595249a91c5248a9a394510a4b0a87d40d2959d7d4f5d1f1d135e8f6e86ed0e9d1b5e9f0e8eee8ece8eae86c10f9e8681069d0b1e9e8e8e6e866d0c9d1c9a08b411747b7a683a38341f782ee8d488278829882a882e846c7824e4db7824e055d1b5d0a3a2a3a293a2864e888e8ba6c6e7419dc1b340ad40fa71870479c487042e374e654866e59313920d6204e11da312c192b869dc52f560aeb846de274c349566b506950d9d434aa1755899ad464687468736040fba2c94e655010502e9407bac38c63aee9281a8afe32e1e8144c30e617d38b1982d9c50c33b9985b4c2d6616138b79c5b4622ecd2a261513cc9c624a31a39850cc2fd3cb7c623a319b984ccc25a612536926319198474c236611938839c4ec328598414c20e60fd387d9c304c11c437e21ef9075c81a4c2e720a29850442fe20b934974e872e8bb4414463950215a21d5d47b3a0db50cda051d054f4091a4c97a04dd04274108d469fe92e2d467b693bba8916d3b3164187d15f7416fd443bd15d749806416fd15af45257d14b7851f4144d4403d13da8daf496fe40dfb0c26355c7ca06ab3b5a169be20da21e2b15c4360d46bc23d611a5886ae20a220a621b918d9826ae11d588238868a219f1892882e825865114bb442162d2ea054f5c68c2a46d008107b0b04ac38024318788348386658bcf719be3d43288c8890b4cac38098a8109932d4a285482983041710c9ae28293222a33bcc0a4e849d050142854a23061d201b82a23e885105663709517a8446152c350d00c424ca258f9222a4132d4e084055f91e1a02754aa5061e2e409952a0e28a2324395274f7ec84a0c0a546921849518269a12c54951082b117050d00b5688a240a96128e84a942941509804c1e084882848062641454e648852441444c509038a6658a14a0be02a0c0af80a0c86524414e44291922a4faa3ca902015f7dc14444415386acbaf8b1e242860600596dc14541444c5e080a0283acb48052e549101422ab2b98a88620294435042d89c0b7b2228a95af81284a026af86fb564c2aa8a9d15154c4310959bd5142c05c7f0a48a95a09c55143c34030c515ea052e5099328563ec8052720901514fc42952a43569858891203d15010150e54615243909410565f184a101518a2105199e149952b5166100a62523454c54ad090919517861285495110d1d00c4f3a583dc14441518aa20c5589a16806274c606012c5ca3bb102858a93a1143c5839c131103989e1ae9ae0a0212b4c8286a2cc201434c484e8852b563e5831c14554826478e18a95d66a09260a2aaa728509132a5574564a700d2e3051229a1244858a93189e30b122c3500c4ca05099a18a0b54a2245144a5ca13264232404182abbc2064750413155109ba126404c340250a142a4156980415398112050a15274f8aac88e02028559e0c590dc143555e200a22eac244453358299aa10a005642c83003119113105641b0932227509850a912054a50115114a2a1202b21ac7e60a2a0a12a4f98d45014654a14179c4c89e2e48a135ff9c0445666a8320403130f563d30d1509522a22a0a7032e48405d60a04cc8128567e2848ca50150aacf0ad78e0a0a019826678400b50826080c1490b0258edc044529e04c5f0e4034c544425682828062a517ca50395282fe4ac92f84914222a51868a68086252c3142b569c30190a823225ca0ca0942755a6803aab1c5806264e8a9c40715214d480d50aa90351a638895214854a14202b2c2ce54995292e30092a9ae149100d4137ab1b78a80a02b802a86650cf84217b8e6d3c93c93ec664079a66a419452bb14e0738801da044093b8063571b7b7a8c6de79c3172c719a38c316a3a761a891d7f749fdaf68fd38ffef1e3c70ffba3fef8f1a3fbc7cd8f031c20c638edecd81e489dda5a03ba67b436ced90ce8396b5beeee1b5bad6d59a34eb78e119d9eb556dbfdcd6e9f96534776cb960da43d38803cc9967d92f1a6bbb1dd9a66638cd6d6da565a1ba3ed8e4bdada8e76b64e4bdb3d75ba63b7d56ce5dab1da2a422f408bdd32ca18675b3b8fc4d8b635db5a6b5a5befeed6acd63dada6d99eadc54e75c78e9683b636c6d955848ed3da193bb6085fabd01da3eda980e63a6ddb38a38d1ed8e8d1ce4ea1bbdbcee9818dd146db6d7fda48f7eca9c91c2dce1bd6ec96dd9d806e4d2ae9197b769d75da6a6d12db1d13a0b5d6dd5384b693c5ddcd1c58db5adbd6348b80186337d8f3a6bbdaeeae3776d66a65d759a38db365db19bb3df8b6ed8165c58e76862025d06c96d69ad6f1a6234bb37dc362f54da3c0e2ee6aadd63707e88eb15b9bb36f0e60808ae484236dad2d809455d639abac56a7d66a44b694d2c88fab5a5bab35c184dad2846edb9a2dc1f6076d653701ac071a6bce683bf66c126ced683df0605a5b7b04db22d86eeba355dbd5dad64498db8c6d670fa035db13e4eb6e19bb88d6d14a29adb5d3fee8d93d7bdaee689bce9bad65cfc9415b3b5bb68c72f6b4d6f60f01f4a9bbb5ee68bb6dcfeeaedd76da1880386df368b69bd2793367dbd62a4e1b0200da76c7486476d7b6ddddb663b4316a52ca396dcf19a3edee39a5b4b5edec38bb6df79c33ce19a7bc892c0faa6ddbddd15adb5ac706618763e4183fb8d1c658ebac1cdbc6d8dd1d63d4b1dc9f9fe6241263dbe6c8b13d88733690d933760fd1b1ad9333e79cd1ce96b36dc78e1d59724b7b73737373d3379a7673336f98b87142762ecc40c4234394222a330c5dae8810274143424888f242d09095cb010c55a674000208ac29415782a630a1c1890c4c60a012050618aa4c21d2c150109520184e35044961f224ca141766b0d20a226222431528549c0c5d169428539c5c614214e583140d4131e8b062208a4225ca0bad189e14397121040e5a41608842f40129725244c444ca50150e140551d9c18142c50993a021275664a8f2a4043ac5c9932a535a1b0d4150a8446142258a93189ebcf042154fbd50340393222a5186ac30794214458621234009fae0079310444414346445862a4f980c055da9f2246888891322284f82988c20c5650209569e04fd449141862a4f5a529e387161ca942a4301b8e111a8548952f4c40911152743454c8a869c141185b00ac163125e885280114c308184212226558aacd430f4e40314511151141a8274ba1a82a43029a221888a071b8f00854a90152b4e744e42544c42952a434ca0040d054119aac2c46502094151868a0220c5c9932741527c23ea2095d375c01505c110c236e42468ca132641303819aa5244c404ca9428313c6152346506272f0441e129c135c46502094e43150e1479803242c2084c480892e2648a0b4c60a0122506222731b826830757a804c9c92330a152250ad150d015264141432f3019aa52e4e4499529539c3029a22148e70a952089c35dc35015198264d0ae5009923e2a2e9a292cb6d5580c0683c16032366130182c766ac230541386c16cd78461b00883c562131661b0d9040683c56c138ec534182c16ab4d3816a3b1da241661b209734c6bc2b0580c169331d90416b9492cc260b0d86c02636ec230182c269bc4620cd64d18d64d1806eb26b1088b4d6051ce26b1188b4d601116eb261c8b4d38168bc562b4097793588cc562b2c90a93059199a30c444e38409c01030924c4a4b9c2062083eca14f0b2e9381d1b5b42b84c8a56351ce25e4a41e63b594ba744bbd52aacd2f26e9e7326c9c911de5e2595ffc4d7271fa9d7276b7e0c90db6d883d7291edaf8265b8c3d78d143ae8bcff191e8ed5cbb38d6417df211cdd9e9a651eadcc9d0c61e3c8b72ba39b54ead53dfaca3ac757a724a29750ef88875f93cdbf22536b975e9cf62d644f13676d673aacbefcff90ac6ba76b2f5a3dddca1728b4d287e03d12505cea9f74714bf4f570afdc27eeaf11b8adc43bdc8be1037fde6dd29e11ce528df2e7520c97da78fa773cef9c9b78d6edca580f2537f61ecdbc3934be79c3b154ece395057df3c7e9b9f3ece65b7c47af478997ba20335f7857d23f7c4663f5db12f24fb903d7bfdc2a2f85aec1644d977943dfbd63f1df0a448e70fa32c0e343eae106f78be619475d3f9bb329f7d7e4b54cf2e3fe623e19c5748f51c72d387d2db81e4e742decb280b63e3feb13ebff8679e8af15a1bef5f95be789f9d0a2d3461e6c314fa283ae2c322190c6a3e2ce22213fab0a805683e7a380308ca38438d1a25283648bc103735f5b1c408163a3e268945785dc5f3ac4b976fa5e719106dbef53c03e2cbcb2e16e1c92d9e6746a4e0e3ec795644111f80e7191165bcf4d8ad6065328d9b9f7cfb19311aa2fa57fa61188a75deeab15b42bd6f385bc2889fde4e3b253326c64fa79f14ea2151ece7bd0244dbe827c44d4d4d2bf857af378cd1ef0a1025223f1da8fba362bcf615f54f8fdd12223f974c6fd73e29ad84aa40bddea2edb95b21cf9430e28bfa4a7c4d7efedae73f8bb6178a1f4378ee9208b5ece5773f764984a64cf6ed73d4e0ebf88d725aa784dbf8e81b534dd3b429a3a6d9562a7abffc7c1e1663b4b52abc107e56a9494d636f8ebacca95256b7da9753a3f6cd972fa3d44e272dc5cec7c74fbe5659c63a53cc6d3c7f7776ab9b7be2105edff0f47add0ae1e765752bd628d76c72935f24c22bf3461391082f3abfcf108d3c9ef950c70be0378e593cea928b0258a8400f6da494b2d5ae1ceac31b96ab40131fc84c704ef9831adfa940bbc2569376855e0ced9accf4d3a733c07ddac5b31fc2fcf412fa8782f366ae98def8c972fca43e3fbd48bb42e9ad1863a42ea933472fd29e3dfe4ebbe610538ff41322129dbb0544b951a94929bf50ba079efacb061b6015d6378c7dbb647bc37629f586d2d943295dded0866fe7ef8eee5b7f324aef25d1e592e89a4fd76917a51fbf87c3b31e46f0f4a3efe1b42bf2d1471fcf5d131761a75f6c7aee645c841da8e9d7b21b3e329b53161bc720521b47203cce4e211bc71fbc397d4eb75cbba48bd0ce9baaaf944fb2c74e092f61efe85373fef6f8b56fdad74e57d0bcbd7e52b44f73d93540f366153476ed8611f5859bc7ed93529dbd3b25f5e55567e7069c9c6fec846830c2e106d90fa19c28f628940b851cb8011f4d4fc468befca0c36f4e14fbed72b75037e425a7dba5807a4dd328a5734e296577c7f8b45312bfbab48efaf8e9c65c774a50979d764a50cfdc13a250394baab3b3d79006be52ac5bb75fa879bbf6f18a7b9e6d69e227f7d0cfb28c9d227d23c8c62678d1dbbdf666f9ed3c7ba73972f1da432e02205582ed79a603d319107ca1e5033af877002fb4d199394a87b2452cde5c6db35b382cb42bf42f588d9f3e5debe9af510f39cd6b6e447385d68ba15da11124ed92af7905da78cd33d03f13949c86c9bc86f3a11196bde63aedead7344d63d372b0583ad2bd76499c4f61932a15a853a7f2e3af9a7559ddba26a5662bfdaec497df95f8d63aad5eafbfbd52343fb96c8066bdba665dba2624ad157a51fa92c96437fc2639eeacd5340792dd25b1b56a5a6d2df62d5febe65e94524a29a542b5a9a9698fafbe35671da8e72724df5ea1ed869273f98545fd2947f9c65d12ee8af753a6ec860fad0bd53d6e68fa2bf6adcf4fcae69dbca11786a19d42d608871b7ee88af6d5afd4278a7d951fca6d281de5f216f5a7ae50dce3b7ee2beadf9cfb84e46f37478538fbe9b34b321df5c9d0fae6f3bbd23f7deb7e946f918b54df50be7df58642af9f2efd0ba9c77ac3d8d798a4be5e73693fd9d2ad0349a197fca25bf92151eca34b17924fad90fce9dda9307f5e29d4dbbb5b3255a0574a7479855e1fca8fdece9d0adeb79fbe4df5e5f497b349eb5bac1edd7ed565ec94b457b75fbb54a1bd5697d65ae74e052b4d16102b62a95bd7349722bdfa66a5953e54c4bdf422eda54b2bfd4dde5a692f7391ee945097d73a90949f4e74fb45afdaa59fec5288933dc64555181024b58938c41bb8a4e1f2a563301b4eb2b5cd8f3f76dec2167d53699bb3f43016515fa704e5d281e4dbc82c65e466fe9c7b7c9e5d5341f314a26b401d3f7efe583add629d6e754a4eaaf89bd72d949fdc86b18ff663cd6fd3be2bf1c3f8288fdf95f828d4dc6447295342f27394c83ff9e93af7b0c7d73ed49562fde4f1e39f9d906d80f5d355519fde79a03a7bb4dd628bba61ec51a72f5c40f49303c9f8b59f3efe2d72dca1ae907ce92759bf9e7ffb8539f10ac5d704f0dc2589ae916013a1093d3e50c41a32de5801c8dcc6bd31afdef0bc6733658c3ebe013c23ed8a463e7a7424ed527d748fbef361093ee7d7014fcaf4103e7c3eb3e50bf391d0e7b5d816394d05d46bae510fe70d613f3d3c35805df0daf5a2397fd4b56f0222ac21a609649f5ff8fa19569f1233e2ad87b0d79cf9046611429e6d81c117c5b7970abff142b2a9e9ebf5f26287c5ac6003d22b0b5fafdd707a787a19c23b77176034b8801cc2b76c35b68db99814c2dd4a815f43f39d64a6c3ecdb912880012bb04b8fdd01a6535740bb421f236e9cf976240c6857fc2e5242919dbbd3ad76ceb280244ba75dfcdc29892fe48546befd0be3b30349fe606fa45dd2db914846d3516c1c651eaad5ae0fa8699a650f15b74b5ab98152df98c80b61c8e3990e5a9e9f7f93dc6c578c6fdb253dfa3603eb8b58dfda3724c44ddf5e547ffa4639d91f734fd8ad405dc66fd7be9c25548a74eafc5ab72484a7de5d12fa492aad8fdcd360f4d82591dedd0aad9797b9a72f73a7c54623aaa6f3ce36bffbd4b99d51de1d03622290fd459403f5c6d1076f7394c72d852f3cb914ce37df505fb87d392a4c99ec3b9f2f9f3befafbf73a0ee2f7e17a23c4705d4a3ae906ae5bcc6fbacbce5ac1d79d2aaa5544e5946ba6d93e32e09c755759453dfbc2fc773fe30f69ea3be219f178a7fa5a8dff3d497e3f10d3ef5f56fcdf5271ff5b11d9ffae46f924b7df3b7cab1e5ac1a1f9f92af4af93639ce39532ad4c76da8be4e61753fdb2de9a92f769a4b41f9e621cab963404c049b739742f46ddb1ca8b7d92900e8998b84a8d829898e4225413950cb4e05946fbec54e49fc90e31ee93672ec38537de310de94ddf09d4bdf4e5f38ffe4b253c26464b2efee9010b391c9bee8e6552e6511f72a4f39772b58497d4342287c73cfc98bb44f85fd27efbea1941769af72ee9630517d4244be3df509a1f0917b4ebe45ae6b3f7d61fc9373c780d8f7652e72e2be930349a0066a76fb85d1b939aeeaf5ba759f5e56b73abe2a563b362b5e7466d6c6ce6ef908fd4ae89694e27d42d64b8f2e7fac4b6fc99f9374237cc4b94773e9a7cffb6cf3686ee50fab793497cee2e0a587decb2d5a3e2ce1a573c047e24ba7fcb49f675bb0006a8e2bcea3c72e677afcfe9ce93cdba2c5731936ce3c159a5fe737bbc5dcc33ca3dd6cb6e829f00bc5a64f8c0db23cab59cfb3243264921bcfea567749d8e3f36ccb16cf129adf5d12a1d8f427ee69ef2e854f76ecf18bcf9f506cfa78a7e59e7621543c9e25b5f9907beec447b8ddf211d4f32c498ed5f32c4bd2b3ba957a9e6519e2595376649a6ac9838c529b1f17c99fd38be44725d18562f4f931baf4788be2cf18c1d8b68d3bc9bed14ffba678d4999d4ea0fd86b1970e0365974456607adf570c7c496fb05f31303a7749647ba85d6a7d8ac7cf2d449ff7050391c008a1f09a47907ef26a5f289f7a7fd38124fdf8e7d720772d48303a504b0663121663111667ef50e91d7346ead1e99c13298e9f734e3a719e674826f89b67329620e343cf83d03cb4ec35c7c8fa79a76724b9b05c404869708b3f5c012199c13cfce1e9db23ff002189611efe7620ece26f34df7da3a7f340cd3b518b91051bef8473e97d8b30cfb32ce4f8b0bf9dd53ccfb448f3cd47e20f094d80ba7516ac766da06e35ebb576b15ce852989646af4c923c128d64926b249bd9b74b1f129a80e6d459a0cedd04722640bd7abd36684e6f4e74ea3190c11c16aa9f9c41ee845838257d3b0418ac57d682e6392c287dfb2b36bf7c3b0ce4ae859c7859e836ddc63a77157869b2cdb7cbdb6d244fbbbd5226793aec364c69ac4b97d6ad1a344cdfbe3597564afafed25d9acb771af9b3e6db231ac9d32e6fce04a453a7d706ebf2b2f97606190ca39a34df0bcc04e21c5a94918138f80b265d26a317261d07d9860c7e908116a82393fc895d28abd1dcde9c074490254fd8b29e3301ebd5ed8d4c92a7bdfa68bc865e963c6154fa0ef3d1c338fbf6f9c5302684f18b8f73e9f903188dd3aeb1e5b0d01e3d06f24e28959ebd3f963cf163c913fab3c3e08531ccb3b3371bf9c3679c402393c9643780ec91893dcee40f83ec318cfcb94123c41b32701626450609ca7059fa728488325f6632306ca5ee9274c21957ccc0b065b10d1b0194000f3796646018d73c4735610c2379d8c3665aa3264da379064399f4ecbcc3578a547afe00d6b1d88d8220485200410a0208d20ddef3ec88062917b0cc08b18283e732b074f163c170ca96df6c9e5e80d73d9be142cdcf67335ccc001663dd5108141f4dd0c0880630d0230e3064a53ef45aa4550f0814bad0830463cc800d355b80d46dbbbaa7ee69393242524a291de38c0f4f69ad9aa679d5eaec2887d5b3183dc87865b4fe897571c5124b286863031b4c0186f699fbd07b664917a89631636662f448a222c5b260c9c2056bb2c8e00928b6328c92c8a0420cea7966c407955ccc9ddef11ac9c04207a4ae3eaf576375ae0ed49efc611da33786703e12b51bc64dfbac063c4dfe7892277a74e79eb29eceb270e2a9cffe8932994c8604d2a7379cb2f3d43d0d78fcd1f97a38dbb3983c92f8eeb90ca3127ce8f9d4d2b2bb77d8dad9b7f90d0911c57ad8af44d9f3179e86ac17c9a765dac8a2d54699149c6990abf6d58feb56fb05bceaa1fd960ed45ebbe40d53e017aa3ffd74a7f765ae5df5daad39edf45d913f6f38dd5ea1aac4be506c7acd37ed0ba76b439a17c94f22a536a05e29da15aad33b15ec2b99eda2f78a7c79db278ccdeb1f963cd243d6b34767b780d72ee78f376ff4e2777461d33e7eef9aab5ffb16bbe8dbe4d893d3a557975d92aa6d1ae56697247a77d36597447ad4bef8b1090ac4dfc18c174956287537572a7dce39e79c734e9e5ffca6507d7aa54cff42e944b19fce9d92e9d237fb85d6514e5dbba1b5b56a1aa5734ad9af79d82ad43f395fed0b236b1e1d480ad5475d29dae90ba913c594681ebfd0fac9b7d317c9782854a3ac73371da8515f77494ed17efc1bed929c66a700fed31737d9a9603dde50ca74e956caf4f859fb49d19cfa36391bbbe9dc69f49b369e623ddad8e56deccd6e699ee4d19cad4febd2c339adcf15ac4b998ed32d6d32fff8481ecde70da97bddd2a887de12d54ba13e9d5ecd997f58f230ffb8e4d1bc6f48bd7da31fab5b9af7e7754bf3f9e1744bf30978def387de6bbec56e89eaa7e3d08f5f7649fa466f7a770ae09f11bca1bfbdb65b9ae603a6bde93ee7959e51cf24e085eeed0a7d76da15f2ec35d7bc457d7a58e43567cfba8f758d7942fbf6b66704663a928360a8d71bda0f7d5e73ded1ae149e4d2ea66fecd1163ceade33194868f1fc233d6ca7bef5f7b1f64dfbdd92fa52dab53b6dbbfa86f3359fceec6a0fb56bbb359ddef9fcd3fb636ef59cce3b338a8ddb157100433be5cf0b8c355a3c11821a9cc00ed447f7a2b3da653f721779d8e209dc11928de50f972088337c2c31051439740143eb3a7de87de8d3df923f1364e70a54977604b681040a948e00234711768b2f7cfa46bfead1a903758c377afd5cdb8738af79153167a4e162044a74e851cd600943c6092854cf649ab8e3b9e799511a2ab7d898575ca8f3d155cf678ef8e1593a1b471ebc762ea9012c10c28a1bc0e8a103111a993052cf66c82c35a58067bf7a0fd4dcdfcef695b4d73e40260a254e53743b2ca00c28ce90c1c509ba70810720e00209ad6a292eb06c51077503b5b1cbdb54b45acf0833b966ec92c813149a76c56bd6a96f965a6a6ff47a43adb58a5106135f9d55350a2bc11c6248d0c61b6b9c009c437ee2f1c4ff8c1eeb811aa8bd6731c8e043a349120805cce1059b17ec91658714e86cd1c66c8b156cc1f4dbf3181388317b099b8303c2a0c28e366d666bac20e74c0e3bace0ed33938c8e4a291b95d699c50954cfb32ccab046a72f6c7c99238c1e511021240b1164f1c39698105968c9a20f14d8800813747046e6258b2e1ad219248cce1c2df1e49ec7c8a18467668b2c5948f1014a359a45970f3dd7c28443192c419ec52863cbcfe759163f6461344617633c6b8e284224401932253023090b3e8c3e789e61c1c677cf332ccef0a423b973649e78e5043676193d475e25fdd2f9cc962ffdec4612d03f560d4ebb7886c50c4de82386186f80f0a1f7ad6e26c6cc870f91843bcf2e3b3eca33e2996dd7698bdc9d8a373279683accc6fe45a6f94dee91378cc5253c9e2d7df1738e19438b6785b14936cfd17b85d3ad1ccd79e645162f3d47bb4afa358fcf45d03c7b05a0f48f9c95d02e36a305d3fb3093d19469a1e6434663c4b1c9c2cc87dc468b0160d4d12d7efa31000c39bac52f3f0680c1a65ba1dd6917eb990160ecd12d7ea06ecdc7e956bc5e2cc3b39e512f81e1d915685c81c6b373edfac16c70604af36cc68c377e00cf6698befca6f2e487d33cedade185566e3276a7987bac97e825c9c1e8cec416cbf0aa6704a665dcd934232407b94d2012299033ed47b7915e1c36de9180c7e23c9c97ac4b3d2330d1911c04d3ce64bafc4e28e956fa0ad2255fc91a7b648d4ac9ccacb194ac49596dadf2ea744b7afbe90bfda5c76dfc85cc6e3dacceecd5a3947ab95b548bfc853164d698bdd6f00b8be8b3dba38dd9c51eb6b34bbfb47dded971baa6ece6f6d8edede2ef84beb23b36a36c628b2de5a449a6d625b15ced6c97645e1b299301c1cc48998b6460c74ad1eb4cd9795ac2cb22dd921a1210ccc4d13eafce59c4c72773da14243f59da67bb252fb5947a811901c1c4c8499f9746bce95bec9214759279a317d80e08867ab733e5ca0a77be4eeeb3ddaad716d19f2e377ac326a16becfcfae921ab883e95de7346a629e9f3a547ef74a09e62e4466d2b21f4a218cd6ba86955d3a6b4d427a545763e528d86f6d9e7a347315ebcf1d55781b867e5f40b99ccaf901849dd70e7538e3ac9cdc3e996dd73dba76e95773e3feb9df59c25f6a7db9f376749e7d33bebb653617a7743ea53ca743badb576ce6929dd4e74523aada5d35a4aa7b594d2ebdd4ab1ba959ad55a6b6d2a455394d254e538cb59cb59cbd994a75225a4be22dd5a796ba75b2b17c3456ee55be438e674bab5f293a77cfb4ed4765dd775965a4b29b594526b29a5d6da5b42b7363f7d2192df38cee3386b5bddda68a594d24a378ea31ca594729452ba853abfa5a0d1df24d753f66f1a4739ad5332e536e79cdc9cb5a5e56cdc2427e7e4e6b4b5d6bb39d7adcd398efb6d73ea5e0afc46b86772959b1ca51ca5945a0f29e528b573526a3da494a3d4ce49a9f590528e523be756b795776be5dc2e2e468ea3f5da6ead3cae72b7e5adbc7de54092fb6ebe700a93f9e92b5f6d2a3f7daa128a74ebe4aa2f34f227df3ace39a9941cc751ca7194524ab9fa75eba74ccd8e72da5651f674b2a8ba691ced664aaada8b2b4e951ac23d27a71ae5c29d3f791453b7ca719782e7299f9fd775db54514a29ed2e0957d42d392e4ace434a29e578f6f3ea746b3a4eb7a67b5fb8f393bba5bace3dd3e3186f525aa9576729b5d64a3dacb5d65a6badb5d6cdc35a6bdd28ad75f3b0d65a374a6bdd3cacb5d68dd229535f386547eb92506fcdcfbb758a958b633c763ae70cfd4fbe71cb49b51ad9a674b8e7e429d0bb6d72560fe79cb3d63a67f570ce396badd56bad97ffc6c916a86badb5d65a6badb5d65a6badb5d65a6badb5d65a6bad95d2f9d3298b7e5eb74ebeddd07ef5cd2d679d5d93ed744dd9b2a9a94f682943f1b9a9e92d45a16e5f58b96e9dbc4f7e0aa718f9e9a7934dc5ae39b94d143d691cb72b9c4e5dabdd3ac17329348af1d8bbbdda0fa7f3095efce9dc2daea99086d7be703e4f764d0f99afb78a556ae0d6ea70f050b628b28846568a2964d720dfee45a1e68be44b97958fc81399d99d41d9d0a488430a363329f29822690a20a6e832855214536431c518de146698e066053fa680c18f9b158e4fed638b2d9e4d51c7b71701a3a55b8f24043e32813cce872d7de88af7ec42fe57e4cf5ef6437e9bdcfc84fc46b9f9b19e83df2a37bf20bf596e7e3f7e3b71f3bbf90dc5cd6f84df366e7e3ebf71dcfcb8df3a6e7ea8df52dcfcb4df54dcfce86f1e37bff9db6abbe1e6d7bffd5879373f705277a8c87b11d8e7ecb976f195496cf1005ec8fa6eb5ab7558fa2ed238edfaf1ed5c519714709eb947092d4ac8e607d828d9f14a72609951216b2ec618bba9d072344fcf332aaa48aa5fbea9308242d1868a315484d1ba5021c74bf951d1061525e89e67549051bde7191535b05cfcaac0e184e2823a7344c4c6c58d08ae8a2caaa802e544c74532290e8d8a724f7b17f93c0373e6378f8b4b5644ca3db38a393e5a23b8e759152df8c947281f3973b4c5b3565cfcdadcd8e719981178aa54c76da893ad1a9db223af52374b6c29f0924c7b9e55d146b483a348ea9613d3b94d74667989c238e3d6b7472b947c7ac86d4246336fd87af6b0256fd8fae8ecad66892a61e1a5bc8d9f3c6434274f79d8fab0995437e4361fca3593cb54237f5e916de06e2b499ee6238d2e2b258f394781cd3697bebfacf16e779836df3d933c8de6c3d886d17c94711ebfac3cf41b0f593f3cf4709c250f4d8a6d3c990d51969494c4850b17c9c3d3dede5dba481e9eb6212a491e9ef62f1f36936d264fb2913faf11809eb7cb36408004910509e2ed3349fe70e02f96b7b7da9d9d75db3df973249b9a9a402c9b1fb55bf92307e85d9fe8f10b90200efb017aee39901bbfacee11100e562b5f9dfc74738f80b038b836dcdcf88d03b92c7954ae72963f3fee11078e85f3a3232c9b0371d6b5e1c70fffe11c5cc6b947388e85eb9cc1a3232c9b3378f44a220018e4dae05d1b38ce39c7f1ee8b4b5ebd9dfff8a29a2faef9be98e68bf1238abd155ef496d5e90d6dea86ad0fe51a6fef3eb9867bda63165e1865214d8ab21274a104112fa001134c4872e0a1c30c9a4029d10803832364797801d2cea38e276439c8a00059f258af1c83232c694ca0023040963c283f394d923fdcc685898f2fbaa0514a4387fc6935d7865e23061d607b51f350c8dae51af9f38aa08fe46947ddd09e6e68ed0dbd7a434fbb21cb27f4ef35dfeef31d3d946be8d22926611d3bcdd51e958d17b2b81597bc21cd51ce475de7a7944b6bfddad06ddea7d3766db09ccf6de3ae0d27951f7171c9138a5f99b8473a83479cbf920800aaae0d5beadac045ad8dd646fe74f7a8fba2b5913cd2b97bc431ddd0b77bb4cdf886acd33d3a3996ea47310c4b9ee9f386de875a9b7b641d4bbd3660894d2098e90c1ec5a5be61952d7943286f8f58783cfbb2d45f34344c5f78f665e951f1cb17f9f3c222613fc07a723f5516ebe4791fc62faf240280960f34200a6cc02f71c99bde378c42935e220f2b534fd81f7fb4c28b56786155d2da8455294dfcd21f56a6ca247fe217c923dd5acffb1256267f5955aa4c5589dff85043a3b5d1d090f0a126d3be6832ba44d3d0259c0fa71a9a34d5a03e9c5c66987072a11fca995c23bbc859b3915d98d8b4928ce94b2bb5f912c6363e5116da97697c42fb3262e1c52bbcf8ed61fc52d9c8d89cde121bef8492cbbfbc89923319f5c9c9cdde9794cd5aa6ba2febd55f72facb3a775fcda697acf86091dec95f29b97928d9f94b729ee4f28a685e1cb9b0f06aa56dd56a248f74edbe9a44361e9754ce9c949d662d9b713e27364b6c964e5e5bcde639839b87add4a971a61e7a290fd9535d4f5d8ba6e32e6bbb5e73395dcf5e161ad80fb05e0b6a97c17959f2b4e4f2fc014c158b8d3a63e39d30b27969abb37bf247737696fca1ceeef2673a3b16d9d404a29c7e58e4fceaf702e2f67b71e0b01f60f559fda5395204357f719974facb3a52b4fe924e4f543a0ac80f3528478a20ca5f40eecb08a90339304a420104e24811e4407a908b1441203837ca248f5473912288ba2f1fc9237d75ad481ee9a7fb6a2279a47b17298254baeabee24cf2484f5da408dafbf2248ff4ee4625c923bdde17779122a8dded462e9287a2e1a2b9e651a593877136d138ab719fea6ca83388f230aad19c41d485fd00a9873c3b5dd80f703a8315b4b27edae7499ee8f463499ee8f373c913d93c7f00c389c5ae68b60e1889519208603bd224227f900052478a600b914892381d46928433849124e97820efab7a120138466294d4034e47d2408ac348922a104692a40ac2489238e080912411613192a410c0be2fcd9308a03112232c154cf201db9124386fc748923ac54892502a469274e3319224212b46927441e9ec378c242900a0bc2fea4904a88c2489824892ba132349028262244943c08924090470de97f42402444692649b912479929124b126234972dacece8ca4ef6b3aec07586b6b5abd2c4ab5ebc9fb4a2200281d8bbc56f2444f2200f8fa21e585fd00930800f675981627d3a6e29ee82a3ec21e77423afbf68da5f3279db87c7bb80a69976f0f3b78f6c83f94973c7f79e327143d2e7957ea0b45d90b11c51e001ec61e009728a44adff1a9175f801186084270722c138b2cb4d8828b305d5051c592155780612475facbb13cc1488cb0a8c0241fb03a9217469234bf3092240e0a46928413052349d291829124ed80533092a422e0bcafa412c0ea58a8128c24c92ec148923c26184912ab094692e44e3092a41658bd9d2a31927a5ff4e6800278baaf974cbb39a000dafb8a4d312607f095030ae0bcaf1a8e42906445992c9ac0570e2880f5be607018c146972f697c008d903850cbf1ce5f4bdf9e84035a8d6a3a9e6a9fd119c459fe0a42fd474433c457edcd0fbc9efc05a685eb1ff8ebf3cbc6fd9b44dcd574e044fce58177e02f5973a9a71d070188108fb21bc799ddf82b0907acae62354adf1c388acb3708f775f29dcbc207f70574efcbca37ddef2b12b92fefe0bea407b759f7e51384fa8ffb8a68865ccfd33c755f2c79da756e9cc59c8b5404b4ee633de4191b2b84e51dacfc14c4d17ca7dc93b394bf94bebdeba51f6eb928452e1ddcd7c959377201725f5186735f7d735f4845c0eaaafb8a6c9ab4d294717025174623d34e41701c08e7da8dbfc0b4b039e72f34df28df66df2747351b959f94961ac87d698e737b755feddd979ca5ee2b2abd7ae935b9fcb8522972a1dacd7d8169c1f395bf5e605ad0dcfa2ba90430a5a1f9f61798163aa752aeeecbba7725775f72bbaf39933ceda8fb6a36a7fb9a4aaa2b971a0d97008c3c66d3de97111207a6ee0b4c0bd6a7bfa69a6f4f2a019cf765ef542379daa76bf735e97dcd25c9d3de5d29d5687a8c81071a5a98b9014dece20227e058c34b8575195958d1431a7b1401ce3bd9489ef670aa598ab388c693bdcb923c3091db506e84c402ad1b9d1cc98b49f0917885b8e96912dcf351247884f6eda347f008eda88f1ac123b4db8f16c123b4d78f12c123681eb21a2eb249a65da3241d217884f62080b08ee420fd61073c5d2cb2a909d43c8c4a4a5ca851520b34423202521e7884f61d5a20ddc202eda51ef6526d6aea03056b942942695ea3a4124023eb4846409a038fd08ec4815aa687924d9ce3046cb8200926364006ab57120871822e723863062083f562a94d4d4df61a21f98014a905d2231ea1dd08c9416ac423b463513535353581d5c3c9e6dba94cfed4cbcc135d63b1a8e7c99f7999a9ec9b0817890ed47476632d759a6066c95bc2b414cfea169bc1c3cbb3987bf83614f4f9cc91145772f82e20f6ecaf084e41147b7630df96376294fe812d12e171f267858f893be61b5ede30ca9ee57765febccc92bdf9e51783e011d8b96bb5ab07233cb6a9bc85a43627eca5e6829f57483635d9d33c5d2af686d6a7c4ac60f3dab51eca1b271a3cbcbd5e36d887d1a546c50046b3d768784985d1e0f29a871df8a95d16be8421c21a63260f675ee779c603156f0458bdc882b86105963864d3a317d9902d4efca034048252154cb2222bfcc67b9189b0c618d9150318cd68e8c06bee05077e03ac57c66f807c5fec302a482881821bf690c9407a654632999597f393de1d771358b1c08d27fac0d2d404b202705ede58536db6359797de5f073c299a87f0a176a3966e6909e223433eef853dc630f0e8cc775e23a41e707ad20f504bbb705eba901b335e38e5a3966e49f779010b463336e18551cb4b0ff9052ffdc5ee499e18c87618c145125c2ca991c9c0e9d1c1f8c9a6143b3081c312608046483d60f4a41fa0115283d4930e00469f5fd201c0179816a2bf58903cd2239a973efd05a605eaf3be80248f747a5f605a981eefcb258ff4797d58f2cc66d14346c377e460869719b011050b48709386c7602c6030d1cdba786372608929420893184895524a291a699e7a5d3800c797357cccc1061e6a9851868f3a6655050238667830d95184d2991e98d050aa2235040c9a18c10e6a34318322e828e38c3cd0c8814b1e3698a34b155a42e082199051c6066da0a00429a630be6c9402e08c399e6a5563f9d0022d4c42907982892d7180da18678871460ab6e7d919613cea15617b6ab33396680f750c1952209d7184111bbbbc19e64b89de1e726fe7d65fe823fd011d18c1185cf4610796299000e59807eafe427f80124fd4c146892560e0051912be00c38b1d6e8c4972038c62f0c091a629cb166bdc71c7988f11a86bb0b1fc89456102234e900409e6104305e0875e5bc09b5a652f5e55d8c1440e67d4c8010d48cfa439d302aa85524addfbe2a956b5d49630e4d0220f3a9ad0e28a3c503853e6358d4e9e3f9e6767b8f0e699a49c38ce70b1f54c119c36abd5a29a7367ce3967cb5bb3334649eebed3c187eea3d523b6d422e60bd4c8420935ec10019b03c4314b93447786f019c1d20bee28c3861347063083c677cccc3e741f4b8fa89a992e72a89a36a7992c7e4ecfc3999979e243cfa98c9aa69949e2354da393e7cdf3cccc166f3617d7e88c6f7cf570e60c0577a02e0e0f4b8c4962cac368cc1b4e8015c9d7190b76f070b8e799991b3ef45c9b410c29a307e5410c1274e0c103164b88618313e888635646062cd8a1a50e52b6e822823034780304761c21c389323faae7591919507904eab90c116a4ecf6588f8522449cc1a622ce5208b020c5905f8d06b51124160182dc5a08f1b3ca1861132982002e7b9cc1075d823f24891507d197bee92347d2cc61936eef9c7084cd88e253681394a2c51ec8b84ea4f8f7dec439ce790fbd0c3400864c858a2069f7a26238a366590002208109e6766e431a3a3368dd669e7696e73439da8a59552aad1498418a4133ca5744e54ec3c3c49399cef7843d6649e293b672f721e5a9487ac9f29a7cea9db5dfee16e68b71b7aa89fd82f1d84672f5a109ef9a77a38e4a58740dec3eea553fed15c9eacb59e17b2a847ef2e49bcd1f3e9938fc4107411c49897203c50c7286cc6a4a463a29f7c3b7da818bd192fca99e9b35b6fb2583f43fad1d1d089c3193d90f9e97c9ab1536c2b3676b14bea60051268da15e39ced8a71cad9ea563c9d6c956d4356f5d0d33cde8e2ea3d728a34ba7dff46f296577bbad33195b4a295bca96cc925936f709edcccccccc5da627a594777a46609a4b609726a5579f6e5dedce3bab87734e7963471959ddbab267cf3a2947ab6fb5efec566be114eea7cb3ec26b9fd7da58b17893721965a4c1014c1c722851059924ec40e3470e302b30a37b36c38b15501906cb1035fa59cc0acc88decef34570a2872052cf657821cb21007c0ce1c1f3cc8c14bc7d26c34b1bdd1a62a3fe44b4e9410ca6d0b41b16f976a9338b41d20d773ebed72e172b7e1c688af84c243666b1a61781591c697e3e8b7123054018b11a3250e30839b8e03003374c10a3a60f2627ce7cf75c460835cc40335d32c73a2ea0d22cb0336ef0c308c6600107094a48220b1a387059bac876389325cc77cf6770c872a21355cf20257db55feb69d2e9f4ce69a75647206b3ddd2db5c6b8b8028c2eea18130513196025c0d77a06872c5fa9a73dcfe260fad07d2c4d220001f031c30b11d25b3bbec3a769a7193efcc4f9d9dc9a739e2c9d2c7f4cf8410a32b3338cc450034e127ece9919627ed2cab4871094ce39674c2ff8290438e7a473e7e67956c71d0fe479c684e643f7f1418c8ccbd2921819cffa40f3a10d27d3ecdbaddd6919366666962da594524a3a392aa594724a249a5a45f890e343161f6fb436d58cb2a318e6c93c7522eb79f28c38dd62d722ed295b52e954f3f08428a99cde8d72768b7dca3965649ecc539b94755beb2cb2cb61a13aff86ba464846c0ea4916dc4e75bb28afdfc95a7979a513e069b784e17879bde4507ff10caca17a0d279fae29db27206b9f3087e23b75cf91978593d30b010627800253ca3d3c23bb985b38383f24ab93bc90c5ea83e9db755aac752db40c3cf9263f76faa9209d6f185fde240b9ebc5de3a845ebe5742b4bf2d0f0726a9a66af94a27e79afc89ffee36bb724849fd74b0dd5a76bca964d4d53ce199f9b9ac0ca3c99a797eadc4d0005eec975c05a3d7be8fde9f927320f7bbce17476ffb984c84be91cbce8349c969373ce088b313a85a861dbd836f6d82f334bd9f16d25619fdbe4689784af4d42bb14e26fac4d4d931d35ed948a2ad8a856edc9f2ac4d5c5ad34a692417eb95676de2d29a564ad354ab5a9bb8b4a6959a6a94676de2d29aa673d6262eb5cb90676d9a7d5335529cf194921da5ec4fc66c3c5db1f18eed16373d94720252e43c3a3a3a3a3a3a3af2a4576b53d32747398dab9cd29a5e6a338b496de449dff86453b383008356f2781f168f3db4329cfc0cb6cb34df524d65639b2b58233aad22484e1acab27929dd4a77efe338a04609c056f9c39292e778d92fa5e34867c9d3b5ac22524a29a54f2b7a8b0ab1d18308227ee0d2051e23b0a67bbb04f0d35b33f8e9457c7e93811837e010e3061c62dc88018b71030eed2b163e282d5a190cd14d3fa1ea8783a39dacd6039b808c973b9a906e7087123e32c8419bfc03caf2e401cc0d468411c10b982001132270614ad72c3da54f6bd5e187a538a29042090723a818401c484fa7c6c445ab370dadcef2dc052098def2dff1d6d4f1944a4ae9fd4002c29019838e229e80410ac09ea7eeb1e4783a6fcbcf182991c59d52336bf4784a29d5aaa6e1b89919ec70e4a867337194f9eed90c1c6458950f3e9c4579e8edf195fb2aad73d65aa62fdb17c6b7a86f6787a52a740853461a476bf6006b91af5090f93aa60a147cbd2d3ab6d8664ab2d6933fce821dacb77ca75546186b5dfe7863a4e171f5c86043461b6e17dda2450af2f0620b1948d1c40f02c0c30c1c6468dad7f21df79d76596da75bb19e39228d967bcb63f94e1bee833aa9e08c1623701883298b9067a62f29d0c850813a8db1741a238ca765c818452461460e316e20e304c7c6926349175075ab271f994c8665ccac6adb455d16638fe661a3e6e10fed6b64b4348fc6edb23b1031f10226bab8c18b2a640120d345e9ebc9a9673f1c6bbd7651b71ea751ad3370e3cc192c61e810054f0b709891f901684c180e9ec56099c24f748724a42d5bbcd882060a2ed6b4c8b8d1830e2a58020e2dd0387334440871e4717a3643860e4124a19034471a38c4e185154000a0e906deb39931d2e041274d135288e0a88d29ba00410b003ccfc6c82ae0563b2179764d9fa5a96d4fa7d3b56d28ad629cb1c3d7b8d57a594cb33295bf562031a793fd70ba5a6bddf93a13c3e5eb9349923cfc738a91293d7d162346970f3daf5a0e22b801298c1b20d9e7d918b33337acc112061e4662f288028b8703051e5f9fc944a1c6879e6b916da24be61ea6eac546a59451065e3f6f5a52585bd429f532cf4e7da75d1f3c751be6a973ed6a30983ef49edaa7f4037fa678427c7633f8488ceddd37a670f3b1cccdd3d6344d63ee899a6b37d4b41b99b8a7e916720eaf3d0c367f53c68b68de670023dce173c421470d5278c136aba8827ba41f218a69708ff44805f748a7cef40ac588868f4c347cc6cf1bd1708f0cbc9b47134f20011fe1974c1fc63430f0dc883f405f848079f8a57374017d3126c2e0e316cf1fde7c18d3bcf498a65d405f64c12d7ee9b18d7802d0176158047e258e8b8de391273db43cf302cdcfd9b37967c2b0498f5ed27c647ac9f49129cae1f12c0c354f061d6b3eac3f0b230debfb997e492c43ded92511da79a38f4fbc506c8a2f99e209fcec30f0d8a3173e42148d3e7ae11ef623444f7cb1e623d30bc5a6ae01b10c25f189c8c44788a633f74897654433f84864e21e7633b8873d96e123d1d9f988bc423e9336dee9e939cdcdd3aef8535d7a1123096857b43a2f9b873ddcf1d0e7e7e4211216337d374fbb46e78e84c9d8ec68828dfb796e2e7f8638bb02acc89f2ef247c723cad981e4cfc9d963903f0170f6c845feb87fa0727623f227e5ec4de48f07ce1e93e40fe7ec7149fe8080e3ec3ef2e787b35740fedc387b94c99f109c3defc059cece82fc21e2ec34c89f20ce1e95e4cf157243fb42bc3f1d1e6f39009c7e43ee518e0f71edfb60c73ff0cfebe7f7480380f3b8fd02708f9a7a007cfb40b847207cbee3dde741afbe106e08ae79cb817cf71e7d701d04e7e023728f0200c4ad77f01d1d11711d9f79f1e585384e11d003223ec455df11919b4500e051e7443cc75139374b0a74d7b9471db8ca87dc2c40c0a3ea39ced2711c47f98fef4807c787786a88a71ce76691e0110747436e961ef068e543528ef2f91da56e160380479b1341dd2c3ae011ca735ce766c1018f747cfacd7704c4de2c1d8047d673bc6f160b1ee978bb0cc0cd12c1231c1fe2406e160d3c4a3911a737cb0d7804c4551ee43be2b95972c0231da7ad9b65073c62b9ca4370ee3b0ae16641814737dacda2028f3827e200b8598c80479ae7b8f71d61398a8120dc2c2180473a2efdbb5978c0a320ae3af9e7d7e377b473b33478e4f910c77214033fb8590e001ea99cc83d3ae1f80fbff1957b9e258244fcde2c3fe0d1c973ee518e6789e0e7df91ce3dca12411d2782f2937b740fbea31f3ee41ee974e02ce7c0833810cf12c19c7b747474a4f29477cef9e64052c8079b7d071feb6b491e760e3e16240f7b908f06c9c30ee48b4a92871de7b39287fdc7e72379d86fbe0a481ef6d517659287ddfbe217c9c3aefa3cc9c39efa8c481ef6ee6b2279d8b92f26491ef6ed8b4b92871df5b1240ffbe903923cecf68b41f2b0d72f72913cecda17c3481e76fab9e4619f9f02240fbbfcac481ef6fe6217c933933cec302f16611d480b458b8f10792013da5c08e5422717b22e545d487321ea424415cd4b27e2d94f4f3214b9a1ed868ef221d40d754e3e74ba21cbfa90bd214ef5a17a434ff321ed861cf5213a249d0b93eab82d4c9854c76d61c2a8419d6c55a30675b2558d1ad4c9563561521db7850993baa1ed6ee87137646d61bec3c830920bea64abe482ba272b6f5d83b26bbebdae29329bcd66b3ee52d3b4f5428f45bbcbb74f36df5db61bc67e2bf26cd8b061c386e9db231b26262626a6c81495a252548a4a34b469d3a64d1b1628a361342dabb5662b6cbd46a70bbce833493bddd0a3ac9f33e90d4faaa137f458cf9252cd77ac8b05486aaf65aa65d72de5ecee03e41c09e553debe2f98e69aaba4f7a40e3bb975769d9e563aece494d5de8e144198e6b3ba950e43e14c6f8759d736a7d5612897ceeedda8a6f57618756d75f2eab0edc6836dbe398cf5e092424281dded3c7f21a1c0d4c54204e5b0d3b692ae4d87516f4f1202aafce527876d5e1d09057a170b91d47d9daab77598f4e94942c08ebbdb65d4c927755875eb2f18758abad35fb0d3b5d661d5a78555ed05a31326fb7a9bb08a3504db940778e578921050ded7f41792064a172202ab6980f2be9052a0f4a420e0148a93625135250901a5bfb0104142d179b11079c13a0f922404148273e3a5b615a7d2c10972e3a5b61faa152bc80d8e97da80ac7ee004c1f16eecd47e00f18604c1b949398c734f673b55ea30cda59721391d388b3a8b75b110f117cca2723ae8c05f30d4b4ac0717504748109c1b6f7318e7297f21a1c09c8b854853531328a403d67d25090139b82f18ca83e0dc78a9ed54a9c33897fe82590f8273e3a5b6937418e7d55fb0e94170fc0503e237fe82fd70cf5fb095a7fc0553f9e62f58e7d5619c9ffc05d33cc8dd01723d9ceb3f2ececdd5595d967759aaab93ba38dddd7118777dbb1eeaf2e972f6ce36217abdb64d687fc1b4cbb50926b4c3e6b56d427479679bd0ce0ecb8927a68da7f4a655b316754a393bb771292fea95e72a1c67c749fd0d8e1769ffc38b82bc908ac53d101fba329f032f9a1fc48b705e0885cf192aba79960f15a1be031fbaa27d8e17f50b191a2af2de031f2ab23fc475bc88f542f2890c15a57ee84a3f91dbeec127b927fa906f724f749d8f724ff49cefc43dd1857c967ba277f055ee89cefa34ee89cec1c7714ff420dfc63dd1817c28ee898ef3fdf852dc13fde6ebb827faeaf3b827baf7adbe1bee899efa82704ff4ee03c23dd1b90f877ba26fdf0fee898efa3ae09ee8a78fc53dd1edc701f744af9f0ef744d7be1cee894e3f21dc137d7e43b827bafc3c20c23dd1631e44d966e37611699a0b1121a2d485884e279413715ce7442a95e74437373f9c9dd52e22298138bb4ebb888204e1c0d9bd5d442c178a4ec472a10eae94212121254a84a20be1b89074a1950ba55c68fae64b882c894d4d4d44ed42b16f28149bae08f90e6ec8ba424442e7e08641747080dc50e2dc90b5fa71c39bd50d7152de0d55a91b7a9b5f11f2dd0db92b448443ddf07445c84fbf22e4ed0d79f6e115215f6f58d378ed0a11a15788c80daf087979c329358d971e16692fef9520df77c763ac38bb98433ef4340a543a4495d91e52e831440dbeb0b9588831e9a494f361f5850996c0c20a30d650f19999c30561823ccfc21071a25a6aedaf93d61a46f6b5d67a9abe9d3ed6c943ef4fb5d6ea5c83afa9af5eeb29bac5c2871a2ccf82dcf398313c3c7d1e3386cd879ed7936f9aa6b96bd4c696e8e30d304d6a00512607d77252420a204ee0060e3cbca0871510614ae344a9089ea2b430c1962e661fb23e7afc68a68ba58f31ba085e7b64d4a9c8b35b0fb99fdef4e9a8d3e94e9db0f5734ef758e0acd7ef126779316275eb328b25ed4b29e5d64438db0c1e4a434be2e74c9f3f7d89f6f34a6133783011a1ada874a9574a44490d42c710a21192d1248002e315004030241a8e86f3400ef4f00314801086a858524417c8a228c851144651c618430021001800803186848886043412b71b6f028abe6f8458d9354aadc435a657d0da5cae46e81fcbb718ed3d60fe12f11cd33fb06031342429fca29fbda6ada9867e43f5594b93d124a5bcc71edafea7955d340b3a5b4a6ce0a97dc63a9376625447cb353552454c0a768e406694fef7e8d9581f1d6d970e0ecdc604aa4204b71408c4fa517bcc6ad1b325b827b2b20a70c55df1d1ed2044083986905d0d37f9c442dc26fcf1b7d94fe8f0baa75a009e839f4a5532d12cdddef5e2ff27bb4d785239bc37ccb5376c958e76815625294d2e77372ea890244abaf8d1fb305ea932e1d532c3012387fc1ed7b5b15efa01f6f95f14966f2f5a685dfea32e3114f22706dfac751c88b4c7c0fade7abf43d6d517168deec5b91547b84e1db8c4ce3c25a7f6d18c6bb39c55cdde95a96d8698566664169a320f188ce5960c668635c233ff510250afa3000e2f66395f00356eae80b54127434d93b1e00ac2632ad8e72cfd3ea58226ca482819c1043c9b2c95515067e91301094277fc8f50e6bb767d82759471842204eda88e095303c15500fb57c1e62e8b70c81f82b752144a40f2534d86b46b726742be29aca2fe1664a41c451ae03b500856bac220e7b0a062ad7939661a5690e9b5d98ae1d366fb01045691263f6b57ae4d68c7fe8a6ad166a385dc503074eb5ac5ec14651dd5b926eee1afdf1f936a3f7c4fe904d048a98371f1cc8df593433bf98a4591dea80ea247384fb5eb1afa1318b02caf64ef20199690e0e87aed9b018357cdeca13a2170476036386246558899c93a94a27624334437ddb39cd9f911a5db2288607d8dbacc30f4e72ca4d22075a4d64e2e9660353998510359173b1cf2680aa939feb2d16eb6e8c7eed14846868d5f1d5c79e377545e8a3226f984a7a779fcc4af6ab7c3273a83f5656c0deea7c03625fe6a214a1fe29114c53970dfac3f30f27870f1549b01a268c178d0a05ef0b9a44ab4d73c9b1f32da9dda54ab26f9cd650cc8398dd1fb3515d69db0d0cbea998ff07b16d7d5ff6728b9877de1874dc27a79603941bc9264ab4dd15648362ce20a661c0799cd4ddfd2f7af72aa08daea0978f40f7862eaab9fba0759cdb5f1c01d7d209ec112582c4981ea9bbfd277aed98fdc1d9e76c4b484d4e0027cffe78d585d1f4de36583a6c2b3f2956d2d698ecb15967ac3dbe3d478f3ac9ed498793986dd992355c6c5e5d0ed6d6a008798d56156cbb1fed468c149204708e0b46227dd1e517ba1b27e1ad1cea09208e485e59962e7c60a4a6bf98337621153354c742fed558fb55f3267260d8e998e180f20b4f9066531e5b3d3afa2c7aeec91152048f6e40fefca5c5330852916f82cde50989872f62081fa3093073b57e67caf2412d3d02859e2da0fb9d2cf9a785cf0c922ed106b01d397b7206bcddd51ed2325c89e2ecce8d89a735e29c572758ad0fbf8077985081f008f8602861eb2e356d8b74bab821cba3fdca4907de1642511642fb7a0f3de44ec516ccde1a09a0eca1ecdb357c0a25aa006ee0056d6385779009c6ee8434ec16b9b811e5fa03cff346733663b175b29f9278e8028e4e4eadc4543f1624e4531870b5809ee40edde853da3895e4d99ba3dff136aaa3dd28bf9d3e11ee4161874d48a61eeea9eadd318db848877f7cbfadff65be4c2678939be8e0b1accb9181a09d8ae8b860c2b0944966ff748ead3b5dc235956dc16df3df9d5db22dc430fb7daaccad2db1f162315ca12a90f7e735be1a2b1448c9c8f10ff1120c67f82e8b7c57fb18977a01e1e21f76bb11e1c20ce19b85be016159e3110393d950c8908ef84b210961425967667afc900c39d7e0b2c1b700bb162f031501feec83ee2d3fd0cd473d342f62f942ea1ee4c924b5f70ca03cc60c2218395219e7b28551f4997d9253cac05a89846791f06a3c8d60ee44431197700ae2de0304a24d6025181f642ac79205e39acdcc325a030ac124998de1cd554c16abfa40600ff5921c431c92ba5ee6cbab1fad59d29b8c6a6f1e6f9f7d871ece30c94227c6953edd9c214dc131145e71ad52d20e1fd89c6fa8f29c704ea9235be351554e0d32c26e5e92ec753a48f27bb6f4d0549ea32cfecac7c39098b247fd6720172994667bab87fe25706c253b3a02576ad27132bb8525de9ab8466f573410001874ac7e8848e1e908c383e52f7354e411f1d98db746641cbd0db24531d9277c867dd7e3155e0712c7a03d525c208339d12f65337a82b2d86d9a3450d663c7c2172ced312f9944d84478e0fb584aa73286197e3894ee5f4f9441d5dc3beb9236350a24e3c6bbb5896947d14dadc33cedd773a7da8520c240729d5d4f170f6cb1ddd5caf5b57e3c6ef48c8c591630279d17cedeb709572c087c6969ddd673602ab818474226c447223b532d49e5d891b4877a4a19c9e02e6fb37b1af3c2a4982344df036dcf678998d6e5ac62800dbb699fcb6cfea54bc3c0b04afabe984ed0e6c6ee967dde48248d3effc8b35ef5787f45c44122d7f6d490b9c56eaa087d3cfc4e8c0a92ae91b1b378cb6ac4f87c0e6c9c10167d6b6f42b25d40fa8a1c1249c4e16642aa6d01d401488adaa620e1df52d773df4e52c756fefc5a9adc395179ccac76d8dc508f60a457ca3618888ccd05290bf0c2c135981cc636ee98061fc22ca4fba5d0cea3570a4dda558ff0934cde2976e17593a3ad925b2296a778f3207fd8f738e325c6e732a61a4f23897ccac6955f04b471ea86fe8a7706d27bb6da82a11f2667ff5aa2189dc033975901cc86fa808184fe6e11d72d2cd78d3e51e800b7c3545adc32ed9262ea64ccadc42f6e790813721330624d7a79c78a66f15bb192d00c2098c20413ad7c02ef846add00a1cb7bdf75dd0ac9083c28652d12138f44e37bc6b43e9c6a87acc6e6f91e0815ac39418f4a4d297c2f7af09f60f3b014df02cb4e2e0a8376337488151a7a38232d703a1e4b65f86099edf03255e50ea0612c544d8a836201a429c233df4c68ee9fe38e560cf7740cb705c34fb0689c4a3b62be1fc51997c75c35b1b71840085058cb72f1a6d6839103fd774837219262732de86a0503304448a7c5aee038c00c0f4531f5b2586add2b9fee05c2dd705a874446878cadd98c55e0f12b492f7dbff4b43add1d81dfc44081804bf363d1c2f3dc572fbbee278464885058c51da05914d7243c5b7680572f829b7361db00a33e38221899e1cc6ff2195798ddb58f472faea2059f2a2ac81ff06845448b4d601b6d4b555bc650d31670828595be0f1ee256e31c8ad2889929ea8806ff71fa3cb364c541ec7f2b6635ef1a0f21cc3d5d638620da15b254a675a4efa7e5c4e6790bd04f5f21eafe5ad2ebe7cd817a34ac493e1b3d38f9569ab0541ec0503902cb41252e51be65c91d5cbfd4446c27d03072bea7f0594d5f20feb2600b28fe73ef9c38ec581feb5ab982bf1fd372b30eec8168d459b77693d01f6b0cbca463048208125f7bca73407a4a2977269b25629d286484b07f87e772cf1126c6245e28dd5dd22475e407250a612af74c2e4a3e5ab8ac4b56f78c25b5925b1d40ccf3f620fe72d5b044bdd61adf7865ab5ccc811078e797bdafb510103d0888ee492384dd29c7cdc0881f3f525af4c8c25fa565ed5ecb19d5f3291ad3999bfbff537bc362daf2698da88aeb169089f419cf8e86d3055710b552a4be2eea9160a3ab9b84fdf13e8b0c52248f2b6d319456586690148b67829a931195363ac9d633bd4ebeb0f87fc430fb85d6d0ba46f336a4a8f23e821bb122712bc71a96ad537b955cf609fd7f89bbec45df0913ac526980b4909558b9ea1b5fa5adbdb2985768636c28bebcb2d126c30770c41f1593a6b3215b20c0074b297218ba937be032ba70244b6c68231a89a9347919d2b9095d8b69a1a7a6a0324c6ceb27fb42fcacbfa3cf417a7df37a40c8bc2b7b58687e4f309ff9a74468006dfac9c9e5f8d0c0de97e26b6b547484e2a881118b138d8b9750b48c8ccc37dc55dbf9b2fcf69f815da874f59aa0c1a39caa48aa4f00e6360bc2cf971cfb41e14ca4ff7d4dce8c8f8e24a60947480d2104ce66f3f0501356738e5b131f9affc6a6725d36a11bedc91637af8fcd12f9f23225940837ffde864c43f6967600d4b0984341515262b2c4d82c649e309bb60cf5b24873f4abd4d4fd39e96550a1f0e86e1bb1988e95de6ddb38aeb01211699f07364f65b920812315b5d92282e3a965f5a88389097cc37d6711add8a0666b3f5b78617d984be5e0837ad96c91b42b21054b0030a654f59e23eacddeb05554e32d5998298cdc01a75ea4a035cb563dc948c54c333684889a1698214fb53c3f54e8004d5136e70a5f15d2c43730a2801e1696c64c1addc76794284fb29652d02ce3c8141dd1e6d32fc1c8ceeeaf34e9e27de3fa3b98554d45ce748db2daf2e9e4ab6d759191339d8a0b03d6ef61591b92fa4e6334944170352feaf3bdd6fa0d2b2372238f2d125a3bf7b57157b0cf4abe684f7c8d64925c87269b413df6f2566267225a9803ad5b8eb1a1b0ee234ee3f658114a7d3b8c0e9250406ca260e539607465d9e1247cc4a11c5afdf30c393e1597f50b064ba1505c8721e8746413c9f6b685f4ce81c1dfd1c821c218839ee50e215cbb3c80e22e43980cd43722ccd99ea3f0e86de50a7d604eaa979625a2d1f465d692c62fde682bbcbfcf18ae1e7d860745249737549b83a8bdf4c70faaf0c9d2778ca42b9ce737970c00599e40733bc46a49e559328f33b89aa76aca0bb557c9ce501f53b5f092dc2ac1dce13b6ab422bb7e0519b06a1afcdfa1818732912278e45b33152ac841e0c21984f30157c0ce80aa89aaac61611db2da83a5136d4b693203974aa8becc85bf238945365d9145656b36d37a78a03dea1cdd5c57cf0b55387557a8ec8350eebe9a18943f2e44af3f7a371263d007b6fc844a811fc64c779d35cd0cbe4ed1a73959ce7addd462696179547d30c60c01f8c475f7cd50a1b6834b02f033d5e08a6d928090424c5e92d541ea7ef62dfd2a629f25b29f4fab4297e1fa21fb714a1a9dc1835447d0951f5566cb00a0e3bebc19205bb262d303c1a0cfb7339236f1d2f3aaa8f6b561f9e253f453f2c2f0befbdc5b48e9fa694f65aae058e73c78feacbae01e537e25b400777e2bee2c3478b4153e79152dca8b1200d18610fd93f4abb5599399c0b88ce130cdfd1976c4fdd09e9f7eec3a05dc110cb930f49f62185a5046b1d3111876a6464cbfe799dfcfcf81ced3dd0108f4c6ccfda60fce09a703aaa6cd8dbd3d112f6f7454ac136ace6601f74b711dc13a5bf39a8ea88f3736a4156a7c91efeabeee34fd97cfec43a27e57a6143805b671aac117977c55fc988c2a096d6be499d22cb3d29e6e10e5e09bad3a820dae21c86867f1dd8d08f26eb25dc997ef5b318b930b249ed8c4e768020290b2191090379225de06f9a11f0d10b32a536af18f8f4e3e3f5c00a68911c6d2f660c4c92c518f3d0c03f265fcff2e330abc14f7bdbca99a861f8e2843a25362f9b1920106563910cb6fba01a62dfa6db32e81c805f2cc94aa405fd760a74783067248b7e7246360261ce9503d1d68e95308ca9cf6e7d60f5c1e5e0d46fbb94281746ddd2807eee46f5e096bc97c5affac56720298e869ebbf1eef8157e41cb93d0e587c6584378f9e0e0e4e5605d9683db9a83d136924eb8da8a6cf48041a067652b6e8afab34902f17081cb6c35336c4598eb1c2dc213cf28a09c6e096bea306e7676c3eef956b1f3a516fdadae9fc50741fc69c4b21efe240221a22ae29a203118e3b83f4e3c8d24f3309736216f6fb6cb4faa10b975c6adeb9d7d46b0cab7d7a6f947b1284a77434e1c1a7accc42a97f56d3494207d0601b3241d244b3e53d49560a02dbbb027db0bd146805cc4268fc5a4e928b6b8444aec1e7e5cae769709621fafc3a6be1216278c80785a95fabc97e819533aa0b861aa19fed700344bb09eb641e09fe35286cddc868c2d465bc662b218284d58de19f66f71b131ca602fc1bb9e53254ed9a0d7603c81be04b11a04a720e1d369ddd506ff913da2c4268b44d8a01d551f5b3d8b9b4970f7394396c450f8b7c915f380c79249a639920080247f785f9ee5d70404afe44d8c996566873225d33b76ee7ae74f9ee2f75ed0d172aea79ac8093b407e79116349ada86b31e4a89c3b1c758cb76d48b5d49b0ea61a5375dfaa4f4e17b64d2a3fafeb151d0098915d92d6e76770811b6cedbe2b47a3ddedc8e12424e75c2d0767384ce79e0d0f410a82effdde512ec2d5a672e875ee1a79fef06f1d81ac3c7551ae519394490e98ad22388f34d5bc6d7f395468bcf80942a481d755d766be56e7afa773a4eb64b2f555bafa1a4701771368892429386fab5c830d82d80fbc0ee6df903239f9860699655693e031dd9e6de5329929d4509fe6839329620241e217aad03dcdca726aa2352d9f0244b008943a96d4d231444a8c1838aabb10a4779b9bb790b2f85097fe9a733692911a2fcfd0a1ab62d7d6d1fa842fccb608a4e0414dd7771772c11a300c4ac0e468e0e438d0bac47ee5364fd005b6a3c92d2191258988eac2d1b174790b76a14425e61b8992499c196a4bb4c623c5d2d675e2cc71413a4dfa106f0156d0a2e90079883e7c6ce960570b37d83109e40b698e8918875de8b660633d81843ec1f1fd1674c3d1736373eef9a737582a2347f713abc1bbcff17489e2609e4b226b0b30436c49087dddac524bf77183b727a43f4ca84c55d1fce57184d25f31be5aa2ef0c09abcbd83c4b3d20be0ba9105326a472f36487662f298bc4149fba7bb9586b80b8dc588d027a3c9f6206629fb80c60dc5b5fdb59c4690e95d27ba754db729ec6ec4500cc01a46e4259e573509f1526ba07943d8a8c7243993693b56a6a0cb3c6b9dd6a40564193d8e20c27c5bfc1ce19a0ebf90a252e053e68425bee6e88346c5c86cd103b2c9ca2bc9e343e62edc4689df8791d29b12a9bce2fe3fc5240a64956ed72229ff42d7e162a419b9b6325c7bccf8dff26ee6ded478927ce31bf72a6a8610f6f933b4c5da9e5a6677eff5b4761917e1248e8b5f6b3f41594137550d9acce31c82e09afa9df58f5b625bd75115185a2fe6785d651afa61662540f7031f631a9f7043c02e8a150cf8de3bf22a0641827867845b4c0453951af41de4c45acf5274e62f59f1775cc8aa79609a556a61d7c5132b324ad61b0323f6e2264f6880e31e19ccfafc7849e5818aede8e2c7f882c24b0778f70dbbb7b735fc98e71fdff013701dc48cdfd07f063bbb1fddfa8f4020ae7e3ee1dad27eba25c9b668ff2e203b6d8eb4412bdf9132e18f2a9212c33946cf321ccebb3f2b40b8ca0f6990a434155c341b23f913fe1ff30f2b08b2f4870a7310a850107f4d0537d310a69379257e958bd70b7b25489592d898bcb12ea735cb991ac08077aefae29525662ed4a379133e06ec9d6c2218c0ddfdbbc32be2772a5d43309f724734b00719faa28a12fa2f68b5aa9a8684f62ef0fe6e6568ab65d9df9399797d23096944c36ce55007a75caa019b9786c82690def7e57954d45870f686d67b23cff2860be07dc3978bc08ee0fcdef7091d77e2fed1154e9b517af5e67c5c935ed697cf4812ab4ed77dd3ca2910669c210ff02c0802ed77d894c865b8a6ab7fd9719989d951d0867774ff8036df504d35e8f9e7f27702f0313788ec39b1c69a10064146f40cfc63a12d32ddb7bbb3f2291f2e2c7612da0ef68a4f3b38f0dbaa7c454bc395b065ea8975848037f73f07c6ce85e67490dfa8c1dd91e2c46c317a6e9a3036fb913c7c36be3f4f1d615d6f0b0f2ac894a15f79430de50efbc4001c0900f602f7d4c6a16d2fc214a1790e4838e8abbb0ca2c47eeddc7a1d70a1694178cfc08194c5d76e56aa1758f11a11f4b216c62ee06d29e2c1d4e2501c9b7d93d46da1896c4484b87b141942778d7ae4d12d5fe0b5c48c3de8ce9566a8b2235f9a3a6c6b9835225a4c6656ec7acc77d2f63e15d5d2869e880a484795dfbede11804732da4b83d2e25b3484c87c485ad33d54e0f67d717f6a2a37dc2a82fe0f976a2a084fcc46b8d8d0cb2337fbb769fc7b4bc45940e3aae9bbd16878cf000ba80ad4733960a3eedcc086a5b911181415aba66405dbc7583b8115c82add0583af011366ced65b143c7b78b6aafb4deaf4e0575b23d6bc1e353315068a70e83df3482de5e47b9693484826c0390109e1a364e82b16e08fee09b49fdefce2a36f4fa24975188f4145cb4553c7cdd4397b29c87a63fd90c89a10c369ee218be9713f3089257265137b8c989698cdaf141b94464e1e809b52d37fa7c341997567a1ce91569def28a33f5adb83201f81c1a6aa4510a0e3513540359a82ac226dcceb50859417f6631cc7676f2f8f22d218a519bad6adb118b533d3fd48b62ddec2d7148488e1934bf816b5ed4b7e79a732e2430aafa662350ea007e81c35a5ac1bb0e3675d556dab05f802900a9685ec008c22e8deac2c12ddd9779899e9e296f7d84c7d9a392654effb8b108b79d0d56f846060f90f92fbb99b1b991607177c5c5407cd7e86b5e09f664dd8679d4e1ffdd9f88b0ecf18daf016d1a4748f203dfc2ad6bcfc529b0ff6e93bff1838f633b0e8b2db88dbb23747723df0fec76995c05ab9f290c4ecfbac1e0fa79da143f01e221dab14ee9756e77696166ce0d65c68f84a4da04db66c4dc5091c261b4207326babb76667a8a2e2b32232d48ee32a7f9fdd2d9180ff0f71058014a239c6665825438e6244c8418e462cc38ccd0ccc9fee7aabf517eb7b16c63f0b1d75516318f477f9e194445e6a8a00e24af0a7d8ba91f4ed8f8fe15077d89d754651902d447e9575a5227366d68c788c40ce95963df010025215d4eb7e887c3447b762c0385a0539ba0a8e43fd26217db89705be82754e313478c1f1fc3da891bf6f2acd32837d9f7460ecad53838ed28455f01a4c48eaad9bbea19636a90833ab357ae8956af3e8ef77372a40e0bad3d3bc217278f6d189f84f83b614efd303767ab54e0e53eca68281cd335b314b64e55af25e8414e38d59c8c9d56d9503ff02f7f5692ac25f1081b9d2a61be73cc834197eae1d77f7c374e30d85da85bd02bd8f500b45740d3499dc050e313cc4a7157c411e4588090ebfa56f7fceaeb1043ef45811cd043b062f00dc5e0ee85bc89b3434f76786c904bb9682cfaf45fb501fbf13391d234191ffce3abd37e0edb0e3108539a08dce9bb02ffa3815d15e639946da543e110a2211195b5fddb756099a920afb0ef3cc38f4e0ad484d8c61e37a65dbc5a85eb55fe08a4d5f95ba9e5723b5cf50f2174ddcda428386f3b932b936f9ae3baba7a0013784e5b9dfc8ef4fa49905961dc98a58c8739bfd4b92c0e8c578e6b8b42af08c0a49b23cf21c89f8d910396094fbba25fc25c1cc6b9361319cdce3def18ea79098248ee50eeb20928f408f30257fd074b9c186ab86075ad98c46b84b8e3e6d2e2f44d3496ee95ec19a06bd1eb458875c6d65eb781d728caf1e30987f9dd025ac81ddc1c8fb5edc27ed97e4e0199f2a2f1fb9a9ab04b1708871baf52eef9c31ec51e8de8619be72a14fdfa7110824da2dd1b22bd852f3adfbbf6cea930d85a95183c45dfbb9270685b35bef9718bfa516ee32e3b7063f2a58e15383b370406898060bed50252e80c6b3ec742e65314eec7166120ca9f8dbcad08f7d0c1bab25931341c5326b89fff0dbc4ab7da4a78c25a175c3bd5f658de3af8160d7d570df407c53e4fb52b86d39820673f8b42628bd85e1badbce5707f4542e8d9feaa75b4c68a9f5cda39483d865bc61e60da84c708c36ba3270e745e486760bad3edc4d66aa387882d4c3715f2d6200c6ba8790cdea6c009898d357f2f43ffbad7aac11bccb1a9cfc80921986cb763df9c0944e84fb9585102512675f4a201eed07998133b627d8f02420022389a08840634d225edea04b652b6c2a1b0f648ee25bd495819b740e40b7d59f39990582e66c60f1faa342e222ff0882898a85ba5ef8a254a211168742f98398ee7dd654e47515be1ed8a51387fa460333895e8859508e2d515fd0dd5dcc5e4f8d65ec01b0294ebcb566c988443442b5f4f79c42562e68cc0c11086e0d662601fecf0818bd60a6620d94aa76eb656c69e409da1ad87a5020d6f67f20885a6f70d8926d204abb330721c0fb0a61784aa2ff0d74eb41dad9905577e8d405cb7909c507e2d903851d41b828aa5752764513b20b212bece1754446f0490c81eb6a29719504400f8d7273d04590181b66c5df170f4a422feb9d89669dccaa2acad3a5222e37482308e003a3aacc85f41235549affd35066f14a4f7b3e4a9aa6224265bdb36b19bb54a054745d6cd161acc1bee1de265e240cba64ea6cf4c9f573bd6d4bee75881ceb156b6d415231f9c33363a23c5341f86dbad4148e948266588a0db51017e86549cf6d92c7eed3dfaf204eafec8cca82c63c8827d613d0b3e5e5be467b1cf8ff3f1bc8cf663eb741b06086a9dae3b848a5446fe531ae528cf89936cfa17ca1e1952212446934882119808a4de52f69821e4c31736c2026b433d5250909baa2d0893615314243ec8453223d17c0c67140690fd99aae2c8e30da08b547aa675dd1d04aefbefc0702eafacb39735f4271bded77c60c8bf00e00740ec30f561866572bb74b8aa7d2fc6b3e9b514d6e82c9bf53ddb8751f491670ae2af941958dba1e6e060cc3d923466365a862ccd539a4be39c901e921c4c673be5f6d42407e351a89a7def0a8385f9bea636f6cba090c60292f0b784dd508533ae8ee9b095c9f537c719c206fa44004c6d1b6bdf297466eb8b392b68ec5de8bbdd898611859977eec4cfd1f91e4fd0d7b10810279aca62cd133eb8f0fd052535e726e78a665a044f113e335f4dfeccbc90e818608732b07ff374546d23208ea5b1d3a96cb68dce06308fd6da3cc80a30cdc92369f5c7d45f1a8b8928c9770e0e2fc215be5df48fe8e2dfb48294c9d0bca764c1f301372b90d48654e2d01bbbd53d46a5b0aebaa2212526272bc922072c61f487ff3277eb5ea6c5c07761cb8a548863db5b094022dc9214c17bb92d64839ffd673c91e2bd3d359c0b52d94891a7341241d2164b5256654191184baac60637b431bc9ec8775410481788d3dd2d1e8ee10b6a5c596b4402a2a8712a9c482554f8f1e4422175a637d408e0dbfc52968607d6e1da971c5d878b3b9069a1b6c2e8320d51623ca6e5a8d68a78aa68a0ffc7a05fc7742e15aca718abda9578fddc39cea17a21348e01056cb3d06aff6cf5120129d969d113ea40b14b824c6fdce73c1711aeb644100b2a2c7a7ba5d3407bd192c397e06221b3f18f588bd53850757df31e176a29775fb2ec5b91fa01982cb4e0ee5fda3f9f5231985155956f154568c401dccf41345229252b9c4c9bf730e081417c2c7d040d6e2083da8ca0bc2476cab892c921347f5838cfff6814d83b6eac58a24ad1400dfdcd69306ba161dd5941b920a820c7acb782c9748849624409c954215ed5f8ff703cad9e15492c2228b575941fc3b0933c8303a310c080ba3ce09dd6bfc464de485713a12332e183ccf126999656da1cfc7607e8d823b29596f1a0c9c006c6f21cdd394066a0c83baff44d9bab20261fed3afbd454f809042234fc3a61931b0d8087a39267557542ff825bb9c300023d8dc4fbe17e80fd606dc11e705895296879acf943d555befbd0b0a222e2d16e5a646fd769fde3eef9072099e0c168108643bec6fd15a5715eadc19ba7279bc624c6cda7c749c7f3194f4dfda685980a148aa0f9110e385f8389d677cd2682df9a1ac4b2516a01153373d4fc9b10be359456b05cc70ff65985187f4492e26b8f352499372652e37a4fc48721ddd1a6fccea8966730535407cd1ba993fa8f1be57f6313b51d36307526d08d170af801605ba6d3e45de5075751f1ea3f559a5215530a22c54bab6debe4db7c32e47ccb5e3bbf090e7b72ed2de40616cddac4cceb3a30a14cf242d547db0952afaac5bc3b008cd50560f389d2cf8b5271adf2a5bebcf99a8ab40739b15f7b67b02098d8cb7f96fb598be7bafbaedc47f56d4aa37da21b2bec143f52c901986c07156d7604c448485cd3950ce1d23f53fa345a3e9b88ac9b3c02edacb564df3408e9c23659e70753af05732603a968bcadeb3e0b7715a1db34d6745fd755a36bf53603cf4c3af450468010fc610e461c43bd38f1cf50b06bea85bc2b42d1e861214282744008518b02ed9a15aad74126028c95406a5cbc5541df593511b328ceddb95536aa8277b090f7220ac8a97d309d1235fceaf074828860926b44941820f3845099d217d2671a6ba9f947b769372923380b807204a66113012b047f789bb741203b7683d7b7beb49d644f5f14f707120e453a08167a434cd506d5d6d24594b30865b3ca7cb90a75e82139e3780f6963862ba89111f42731c2ea789f7bf6ee3c698c3a3c2501107182b58a5ceec5b42f5f572a35e56ce0ded4547202578d85d81ceec688df6a71603b3561ebf53cfb1562c778e6d6ac5f7280bb5004c0c217eb84183db3d9753814b05501d28dbcdcfea1cb369cdbb9628d1fd36987982874da9ddf139a833d8375b6a574346f8ef6dad1de3adacb477b7fe4ef47e7ede8bd1df5b7a37f7bf4378ef6d6915ec7d166f283fb39c911bf380346c6b9d196bf0f794160989e51f68a5ef5ccca2d13c1dfa78e3575f05c49369f6fbc65b099e20ae54b0b2b9c3d1637c9eedc7facedcd959fad551609c703eff9711d4768b3e61b36ee03720130496c5c17f3ccbfd769023867a1119bf8144ed659cbe51c2607f0e385bd3f54b0ea2c37c42d4610427508180b2e1155d9c96212c61927ff4406ebdb58f8d7b7fd517312e1af357f8ce3402addb45a0051328e1a000c7a9b42c7baa2251a4cf8551ecb0f093b02daa33afb9893a2fedc4d7871550156941cd4efad5b69aa4e6b3be103ca3041cb14ea8a0ac2226c14e47a07f63f1819557848363dd0ae1fe81897ff8df5a8fee4b2e14285198a1a3fbd76275fa3833738e04e6961584632541572f8eefbab72f802745b819d01b074eceb70c028388db1178a1c8ead31b40dc33d1ba3632b427d8f6f9f739c688438a9a9a52b11eed3311d48abf879fc051f898540e022fdd27a123d2c7c2cc157f4cdaf290874ec3c647feef78c785cf5edd4a4d4a69b8fbd2b32f320164d998467600bfba4ba8b02ea4f940eb95ba2d99c7118dd15c432c7e93ced03981be683108c6dcaabf629c6f46018f837800f8781555799637cf6932665dff143817d027338fabb5f9ba9c3017cef2fdf951a8492e90569513c1a8bc7ded9e92ceda6a269df89d57b4eecde7762f79e1bdb3d0ec7c67cb8a15c4e32e356c3732d627640bad17d8419ae37abfca924cb48eac6016ef2920046dfbc15003f69bce03030698561c7d773d5493d59931e3f248e39d40e8f48e517ca8375da1c1d5c999821b8ead6896dfccceeb5166ad2d0e8a82e163330c1c6e40e97033fbe807251cb609aed760f8814c75da99d9109983463bc7141eccddf2394cdb6dbd778417526ecee53658d3a21bf69d1794449cdcd90c6c3286ec1670100819d961d18f13181056142d2773932dcbf54e8e1d6ce74e230d221f8bed109d663e6614735a375e2d52fdb6a6864025c8b09ecbca8bd6124f3754263c5a77b515d8890822df102bb755a2eaff5e4df2d7a1768d055d1d751e15da0ce30e90677df266deb09606ae4d548373e4e09a340ae887841301893bacdc2cadc1305c65012751de87c6633eb05479c07182da5ec38ce7ef786ecb3ef9c3b8b660d53405b508cbb990f098892412362f45b0ba13ea9712bea21577c64794d4552f3da9912cb48324d5d2e497404d740b3a8c109c5bd6ef77441754e5a581317bd12856616a1b9945e7e0c58dbc1d3be59add9d08ca603e2f934965131ea216c2e1aeed461ac13669fd24d03af9c609011157ae1f2bf106211d53c7cee2ed07d7a94f9f019a3644335c22849eb0300b653de609d542ea91aab567842756ba58f574c62ef757722ad37132eb62eca3f8345d2159345f57fc40b2c5f99f45bc26d5277f4679eb90cc6f13c2818dc76adceaa811e90f04c7574a1547d05454880cc272a9a1130f75450a688206cff36784687009bf0a318f597b8dd90e5c4228a44a43e66d95a9dca10e0beef3d1773820f82ce5ea3a8f8ebc886235d1b2a4e2aa343779530acfc2d76a833597b7012f439e73ae7e8c3a3e7c98f6d5bfdff3834439cabc68da08be2a67672920bef3743132a551b96b4e4d556cfe3dab453abc33e429d7aee9d43e8a5b4fcc585d2be174d1a72c883ac6bf1f95807633e88f23bd70c1eee9b3aea9e123090fd6a75247e1f4975b847a07b90d65bc78ca2afb8faab6a4f4c4105b41a7b71911a6eabcac24abde3eab91fa4c0ed44fc6c0050354da8f18016afb22e15e2a2c2586023a0042ba8cae566466dffea30da8cf56d5754ca71e1a18ec743d01341949e80ba484dd68aa1a964657993066448552a718851fc7efe6db54f31d548d50cd241ef2b8438a057a9caa58da43e26ca105a5a43a4b9f113c3d909c6f4be81bd0aa71d64a34ef9dd3a633d425706fbc5045b4e6db5ddb8b16dd6e96598383b47cddf93ff1cb53f9b94c01d04b5648dab1d6e0e3fcb26edf7c7118f34ec6b76ab1d420edfe56cee314fff5ff8f02e8c0462483c222061e669c085c53b5f33d5a0409c93298bab908610c747e2098f1c18be4638442821351a7fb0508abb8c9c437a42ec97117d924ea33fb97f523338c5b91944c42b12daffff5788436e09123a4c0a82f7dcd80953ff8763574c85655c3ac6a0e6ec55c1485773d88742ad70bec0a9d66bc0c92bdfd3162d68a9d68bf185fb8981b86e8b2cde8e7a7847f755a5c59717b0b6da8505213b1c2cc5a8dde1326e3e66127d80ea34b83a9af8bb65a4277be6c88921b59fb07b36d8f57c5c0cf73749588b9800bd95012cd7fb2a14d51f7cec396253527219910142818f95cead1d0492eb773adb9f65d9643c00abdfdf9f0c7a82a864aaedad99d5c1120d431f14c29bf59488a8690836808e0116ffd50d920d0fe9c8d7308ad42f58c5f83dc65fd05ec3e1052d6850a5175e46c5378709d2233a4063edfd13ee0a61e4e75f620c6f91abb7e04434038abd838a9327dca7171b9ae7908d82bdafa145584a507b38029cd6bc0ab7ffc3f1ffa27026b3fc6a688aa57a6e816b4ef727288873617eeaac2dacb1655014a10a29bea9e828b569eca6033f29efec26fd400539f50ae020151008caaf0360fc2bbac755cf7a62ad250cefc86dd009f33272d69980179da5a9bf74f37e2909986daaffe52cd1d1c40309d8867bf0784f1345e5058bdb82dece59bc071a899060d935420b6150161b9bdb8a0e547ff971a6cdd5c69a7f847e865d2fd25e247c74132b13b8b8e8d18a281a5c555e1f24194d45e437ee11d2ebb83ffa28bf774c9ccdecfe4780d02ee29df679cb5cfefe6b339c184c8a34243f02c32893fe45c855bb1de1d23daff40a15b071e090ce0879f82607a64ec74338693dfadee9d21ad02613441a7d7c73962a6a37034d3952c0faba35415e05161791f4296b9f94dfd12650e973c2059ff7269d3d7a54ca3a9808e3e50fb31ffe2031f90d1e84137df8838b61a97b80c8ce2ba811884693d404f6fb354df7d065124c34e74220ead75846ad9ccfb2220e062ec96debe019f66fd45f045213025bddddc6e4a8e95f9c92f7e469805fd3890cedbed47a58bf6eaeaa0ff1a8fc7fe506856fc6085597eee9fb021534c8e88ec754e1c3904d9280272c12d8647018d4a30c24f0c759c3865c54c3d7c412e9f6aa2aa3b3a1f3798294e0c7f82c2730222d2822401eb8fe493d42349464002feb685a2e2b15c0e1f1fbb253d6874453bf30efba91d6bf7b92d3e79247d8c6ee60de38cccd212ab2e546929eb346314649231f1f642a493f159f0e7c225851403b26cf3a4e8432aa2bcb56a6f69b620717daf846df638aedf99144af60b42e4f31256ad0b448069d76e65dd11d20e67a90ddfc0124e8125c48a564867f7070f020b6246fe18a46b88c04288dc4b021cd2d44bd920981139d88108ff622958916a8f0defff5c3db9418e9734c0ed595b58d539d92743d3c4a6a3571069611634576b93476fcb1b53e7676d9c00a965b38c98d6eef346458f1ddb5a83df4c8c962c1f6d10ae29f1c0b5cf43c1b7fc4241c4a9b5a350cce64ea39cd4dcbf72d13643995b1ea9666982545d256e652fdd2b8c6deae894347c6df3709f07231a6a9ba5e8ed866002b70f08fcbb32e9e32b7df694d8d549e58e03fa4254c48d45f712f9e4126e0d03d6725e7a13e91a7edda08d0f9087dad84b3448a0af8fa031275aaff5d3c3be26fc39bca36ba3ecb2120fe1d986b7302c5a5c7e2ddbd83688034b1865494438d9f84468283966bdae272ed0636886b426a6e790d3656e7cacb39356c68fa1e1555a30a64d5b0698022c8826a33a43c44a383bb4a6a2e3a0b15ef69023e6ecfb3c971e4e8afc2fa47f14f2658ca0fbf69a452c4cf6cebdd39e3cb375b0b0c402064eddb604c8e6e376f4dae5cd1acf2000574ac73125760deca46e5d853b2353ed683c73af6a7a0c341a19d810786427ef3ce1db38236244c36a99347676cd2a28298dd00d2626c14925165a0045da072e54a66edc3544ad628c110b4382616f9ad8d87b3969b4bd3f849ac743734d0834aedf55dc5ee21d98978cba2b1d549ef47e262aedcf0c0ccab7b66dddabe715527894c76faa758874567a9713a88568efbbb5075d0da8c455a3aa77546329212652c22f1e7af6e1cb220e790e5b036846f6e61d011105c008e91838335bb78201284ecf10a15482b01f0f094b8165530817a234a8f8e44e440d29af190f5eb2ecf2f2571c822f7863ccf0bf4322e6f5a0c67ecac91585d159dff0bdc484c0e43da9cac02185c9ffb0598b3fa5a65b9ae88dc5db18c199fb26ae203db82c0c243751de9bf475f1ff64917b9520256d2eaa54fdcc4bda09c95c72f32fdd00685b22050911c117222957847165bb3ab52647534a3165e701d7bca9e141f0c17775729c1b228873a2ca451cd06eebcb26683e64152cefac64679f1a0cca9b220274913877d64347ac213cc594b6549aa0802be96cba937d9537a18e6894bb7e862e09cd552cf841e65b3140296052b21d10aaf03b6664a0004e08839ba5c5c9acf036841fbbd633236d801ababa4c3b82b4eea847251bb7baa76c899955c4ae8ce47b3ac110bb068865ee550931691331a2e660c6a4829c49b45f4d0da59b3d8dea8cf3996626385d5d2518a9c6ff6c9d1bab8ddb02bfe9b75aed7b8bf41374a49d118002b549d3a4dae071ab616e15038381e28e5894e6d561405275243ca2865db209dba3ee0ac51f4a4c538aaf537b58d78372424144e82790ed73cc1b8e418a6bda42ef7c0193d9605f69d62fe1806451f8bd2dfcd11dc98bc6663e737a6d8df03a7114726ab401b3832e709dc64f09df0244f980e4c99e4e5ca26064e8103fc5366836dbd84ce94b0e85866d1cb96e8d3fc792f835e432f461cc91319625445c77a653c9f16b2eb74e683f42a5b119775c9a971b06b2a0454dc40eb524b50fd3f976a652b93fbcc0cdbeb4657978e0a56a7ab366b925f81f73eb8db46235cd495dc795f38252921f592ed95920f191e4e0d0db1c81450fe188d82024886327084243d408c126c641300ad88f36c6e0eb8b3b8f6abc8e11673a0a76f1139543c6e1ccb650fc352a8e1cdbd8dc0e00b7b3ef7f8cc67e87f0ec0789cd66646c4adf4277f7461be6e58a1b754e52a65410a259fca19c3698fe86eb54d84596515cd2c55259d31d6089017f544d57cb19418d0d9e3827078d26b3ede484336fd9468386acb6bd40b7cf27a97c2ef38f2ab2d5689e24eb2bc15df3fedca31ad9eb55be0732a5142c79483b7b4c940f6bc82e0d57312656eb9ac0b48196e6e24421a699d35ea7c8fb65c8d84aeae35daad92701ad99926434cbe1ac90ccdb80d2838583bf11b43ac26e610214e4b09f63de4ab46a2e1030e67c55671393f6dfeb1ad0263cf8288e7c86cdd7f01aad5697650c4ed76e7b091fa688b19f9782b1caffae3746d3aa623ebd768203ea8b008f200ae7bb65a2a344f0031dbf8c15d94dc25b2fb13f33965fd8f9455b3df4ba18aa1989a2955b38c0d5a6f4975b9e10f5459ae3ccbbf70e7e6e7aa9b3c171f2de063c3b35966229ce60aacd2ee1a8e4010e20238e0b0bb346826812efff3b857d723b13c48f75b77b01bea2ab54966f46f88317204d2afb99ccb4eb7cb302ca1d72f4e9107d0108017fa9d7f2ad976e5adefab36a6c250fe78cd24eceb323fecd06a40aeee80988048de12d9d85e0908bd9daa2403f92e7d1aed8809039842b2f70b4dfbe1b9097b7ca3e5e50e41c5d0184c504f70e20bad0799d136efc9d45760346797508c058a612410c33e8fd1215fef3a83475ffc7fd957ef6396efc4ac0e44cbc5df301ec81453c8f5fb00a80daa060df0cf71a56800bf00e77809473c40977a397901fd983488d425125130d1238b2c8cbeac99b81d308280230d11c758f920a2e6ce51c99f97beaa05161f04b2f1ddf325170369e3df3ad8921fa7229eef95068dea0705ae55d2dcf4f1c830bedc4eed2f2b65aa8dbed45c1574a364b04494f725003705999e2bb12b843705aef947ffff07f1ff7af2b40d05dd975e161e7af4fd936fedb2fb9261f97ad993ac5036c3d0376638c50f1ac4b5247e265810448206712a7093d1b4e1ac5bcf5b6f630509a80175c791de7f28334441477fd0910332e25d81337c8d1441b2365e69e3cd90f28f23adb853eca704ed38be76d2432813e5e4910d5ba28d4ba086e052d56b1d0e8eb43f88e89752eb1ecf2b8a0d0d54b6f41cba4045e3b962cc0ac30f7fa3a8b465d7b585f10e12d3a35cc9b49874d7f78a39f78a163027b322be33902cb4a4223e33242b810a9bcb5e1d889ec3e62b409533b88515a6b5ef4d4fc50320772a96f8537c57d4398a6fb7b79932fba7f4c78a6eacb07b6664e35979e899c2f74666478887ac7c74f83ba2d840890c76b3416b67ef1d6c50aa50faf8a558e88454a0770be0ba4351754e0dc3c16630539a60d059e88a134a40b06b049d4aba8872a6bcaee454e9a29f802adcf4b5e358513f7d9c112ad43c4ea1c99b7406390940c991f0a203e7ae752976302f7c3c6997653ccaab549e1e5a085aaf6139018b474b0037111f0213de6a30d41eda26b89c80700b29f0aa7ff6745c9a9fb8a260b465459a0794e77dc21c8aba5a89bddd9aaed1f0fe9966d6bd2b2d6d3a07147420c435eb7570d9847e3aeba5ee71e6aa604392038a2ae9db30088df9550220c225f29500502ab5cb40e9b10b9959dce667f129a101d745f450b7c9d0bba86eed80c2214c158765b3fd013db4e3ec1796e04164632529fa3092605e4f4fea06e6b9c6c51dc43341841b69a832bab16ed725abc785e337a34d04687a49cb56844b098202e5d6131c41222d0409294afa5258c59045b809e83fa5d956df94c8424cc2338df8ee0763dd19061d296e928ed08e162890fa2d3757a842f5c41829dbd4211888b5103528b3b0b808b1608354fab3f60096ecde52ed077d67a0c3f12160c0d88b3e459ba7594583111ac4b3fab002fd26877461489d516c3b086f9b8ec89fddf6df71fe5c0724214ed8b93f7cf10f8373917401b67d0caf49793fa0ad66223280b321151a1b033f5490320fffa01e14bc351544d099641ca6d29bc03d994b8a6cb1b928d9b870f5f9d42c91305009dfe034074416927f7fcb4c6d73d6fbdcd2ad24fdc4e45d3ceae7f832a185bda004f56a53824b6293f2cf394122a3dfffc15e441eec8bda07647ba3aebba6522202d49f85697f9c8b25b91fd3b26309e7f1b2afb4d4d38b6414f8b81d87f4a712e2e43087591fc206e71ac76401cf6e4f0cae824c30ed51e71501c20ada6532638bff576cb1ef41cd8435f8ee570a2e369766b7c45f3f82fe09d333dc26705b681f0cd1c7630200e441c76e091d74ceb1fe549107a80eee768c8e672675be09cf42d568a437d1f1a455435cf5d13e02a0fbf8cdd7e465805e01bb7c43b33d7aae02c308ca02f7f7d2e0b90535b16f97af7344f5b06b4a9232035a118cf092f35f121a81dd71bcc445359661df69ef91ccf0e57f107bef3ccefe7e9f5e2947d82cdd4711ff8897470f7b28b18810f0dd85f5a8ec7ab959b1590e2cdbf5af1b733594613bcfb6834dc9b523e0577f6dd25463e0f9837e712c1438cc6f4145cd0bfe0fad33f0f53eb67f53c9527f1fc30191d0b9dc7ed5561c23378ef3a635c9d3c3b19c20d423aa1069b7761ec47a109c74181ab8560eb1b0a93377e3ea69910eef2f0345071ab20d00c1c9be9cb2c98ae792e7d7366081050b6d727dc0a96c0de02e4cad3de7e55b3d51b48bc1fa97fe0bef4fa6992ac422590eaa4e03d5b80231a24d027b0de2c8567f991f0581069a386753f8fc0128ee3edf3c7f80ff4c48a443b8c45a7cb7b171f116051e233b0b92b59fa614a9b9844a8230f8fff0a81b7075cb2b0c5054ac7bd24f8afacba33bb99d26531ecfea0bdc829c0be04f26e1854518d1eebe7046a0dce1fbebf5870813aa2d876d0a22c5c57528a07448597f8da6240d0fba56df46a28dd03d529c5368eb83108ad5abbc6ad15a74ab3946d38eb6d5d77ee97158f91671d45f213f8ffae13a0bf0265d2120696be36fb6af490e960bc00cb073fa9d7d97afb7d7ea31c100dc061339d0872ddd5cd1e927b08c4a9dd588161d355320c3f04b561e62f3b0314df74f2fb7d627fe1ebb2d72eb4705fc35cbfff629746eecb73f87eeac38b0d505a8ff74c35f67ecf6d31cf5524e7b49bc66dc38555b0723541d661e8f570be84bbcb67070f3e6da6b16abdba219e4560ed3234fede26e360410a2faffdc7c0e50e05c07c00ae6030dc5f98a2d21940335be52038c9026b71fe06ccfe3a9691107efd1d2f86ab2d3759d5ad08e560f2406647881282b6c82d2996a81e8bf309ba31f77d613b2cd0c7c28fba40046947ea05bd31cfc317d4e9d7283211e56426e2e4ba30c82c73d934bbd3653c15fd07b6d79ecca906e439315999a3d10fbe6e986dd778950de56d0d666ee57765835db6e9f4f8ae3de319ab516828af1fe2debc5e3bdbb516ee875ddf96d2de5d6188c4e4070c7c4ac061f30caad7f90e83f66ad6816593d9aedb9457c6d701b317d745cd6e61cc6e8d6110369a99a282d8c9a118be539e448930e1b4f6ad46e1e07d6444f418b499b8538c5f0779031f6e7c5b67d9c9c0c3586206e29464afe730be328dff84b6406a0b8fe51b2efccb24d38c4e227feb362cb9baf1ae8684c06b7ab306718101c05cd02a084f083016f89ab289514e6c1c3dbe450be0ee266710f7a8eae3f502a048774d714111dfafe5153254fc38df3ef4b30d5e9498f5abb6e069f8608372d01074606f3650c8428fb6f37c0869ae9f16be221011f2614f5c6aa96ec69322ccb29a46ecd6aed4f0cca3526961dcd45a5618475fb1eb5d0f6d7663c388e9de672b48f6791d5b9805c8fcc6489edad4c072c380c50fa24721dc80976aad6f4d960017be27e4595f2a88e12d68e0a9495973be8d4884dddc83c164722c1b7cf3eac55aa5df960565029885083aa16533bb315e330619904cd0d5e31103f74b29d215908ec56a0f1c1ff839e97dc915bb37e1389ce98e66f0d6e20900ef3fbed98472e0706a9914be4134ae1ff082cd02b0ce622d56058cb2c511e248e8052a98e3e185d183cf2635cd438e0563990a9e282aa24bd55a5a5c517a6c03998541ef603065e37aa81f766b1e6c6f3e3ea1afe79cb50e7a8826d9998bde6c48c378412475834513067a81ee38ef4a62501abf78980cf2795d3ff481d16752349de56305430a8d02b20da8d5070ceefb560dcbd86924cf25ff476b60e8158a1c75c181c0da2db46fb09c20b30f87276af684275c84aa6ee4dd6344ad5c32d4a7def13140e55fdb3c19212dd42b99e606b334187c460e3ee4311603466b7243b16c2402af100e08c6e163dbf434a2fc69d7d0980ca20cefa24f228f75330e24f3853c7399e03d0cfbf8df4d4199f248f2ab048df7a45a4ed499c7b7e0241afd778adc06fd803f14f5220dcf5bae332bcf84ae8520e3a19146cf4c0dadc96745d3e835ad9f131dc245fdf0ba904dcd1be186ea31f41407abb3eb18a35be542aa64e353150d6e1b2a0158897570f799e78e992c2f33096e2926fc8e83a9ff5434c3d7b06acb3fc833156f927086e90dde933c08ac9ca853c844b3ce8703b63008a3b456cd17cadc4689fc29c238d802790d03eb75e6fb42f7e0a80e0c696a6fc466973b783de552667c123c24cbb8481d0ffb4219da0a2fc05b5b1c32fb8d3f04e18a66b71d6dc582a153beee09056dd880256652307f39212990a23b14198d550491def7491cc4170035ea91dd71696c127ff4af2cc45bfaf6cfda8581c464d5102b06234926a921cc00066c1989e232b89aa8d86405c1d247345fc7e492585dd63f5c7c593eccc2389da17117f9111fcc9c0307fa19bbf0d33acdda46c39b2b3cd8ded86be62238028cc77205c7cdf218bc914bc82af2f498d1a6ef28214870a8d0c8d3fc49b2d367ca7420599de16f8b1da7226070110346e90894f749e551a43b116a304acf0fac753e395a2ba3f6305c78621a8561ac9177fac9d42ea3af7f3c9773e3852ebfaa67156b03728238368f78612bc29ff9802b12e75a549c9f196ecd6cb4c949661cdf10ffd8141d46071c24df9b2b689fd9bb454ee1729c34e16fa4be9fba495a220f7247b2e993020fa1fe6715f975f1be74be81b5f9c4fbad1b21797e1c4fc1eee00d78ad31107c1452054b627cfe0cb630c88e8771fc0838fe775113d66572c0b3969d579c588e754a6f2501ac913e94a28e67fef552b00411be85dfc6c93937b322b7da8f3520c5afce745cf104235c0b3139074958884446084aa36f57f78fb0e55f1870d345bfcb580351eae9ade968dfe14a5e840c40935562ac044706bafb3686d4dc43c4f21f3d4f87b52ace9f29248d32b30ccbe5a1e5a69d326543efd93a4bfa173ecf171a6dfd8bd37e367dcfd06937484cfbc99bbfa1679e11a2af85a7a0e05722c36a4e7dce42b29c578bba15f858e0018899668487df550b58d7d7e9d7bfb844b565b986291e8baa2000728e25b8d77aa1f3b46d0a1fc013815005900f7dfccf48ce2edbaf0ffd0cb95a6da061cd6b4f5d59a3e42cf850464faeb120f4ca86fc4c48a8095d3b5f7081c91c39c36073508f4256bf942bbebe4c732bfb4d8dc89c84a1281eddd6310befcd0b223018ccd424c09f2365998b01edacfe0baff02830f0e95a803e1e3e2c786d90497115572440734c33a26df1842bd6ab152f96a6d6490c7e373fa3404fb67dc571f5c34478fd01c5ef72df829c8abb8e6d3829911bb5b3e4009da2729d3ffaf4d0b74821a9d807ef5b7b7bddfa16ca2fddcd4cb777f967b5f6ed942a8c7251d8dc1eb6047aee0a12355de90525af27c5a60ee61a0cdf2852dd673ad1e67d171906b2051bdb05ca5cfbf8c80183d76edb85ad67b12be80e81b2cb1d84ea59ab52a853e43b2878ce441ecfa5cf41c63c9db189effd11133e09d41c14c6095f013a0d96ba11c62cf30254808929d59ae321564b0009c6821080c25cc6dce23e859aef2c18c6ab67daf3504a8929b083e254710a730b2954eccd97b09c4e3e021a793065904b4cd4c7ab33a991dfbb91308c203af58bf5049f1d51832fe8853694f26592cda7c069ec498ff6420e6be7ba608afc711fef92896ddfee1134d30cea4f31dccb7b78f1db141c0115923756affe1b1806a5ed8f492eb9ff6aca9c3c22903b7f1ba55e9c870d3ace34a990e21902dcc5e8a2462f78a5fb31e020df0a3a53bf194a77bdd791ea1abd519e81d9cf41d2b27d2e6b17236ec21081c31efb47d587d6f7b9edb168b7e33d1ff73efd2279ff3942ccce2748e5e5be9753863b631e5549ead800ff7b4c9b021054b3959cbac0240a344af6786264ca7afa07e3c80c811941484030c6b5bc02ce6a69d2547c33691dc08c561b7ee10a74683d7e2715b505bd2e8b3f7a09abd68979df6aa8db1feb159050d1cc56385cee3a150d883566ee9c7c606f6a41488ed6fc8eb71aa8bf61d85a28c12f5a725e8d6792609b0fbc6a87db2ebdfb0475bd17f1ba0deb4ad93924a021cb8040b43a424a2e4c03fd1bf7e7da9042e4720d0db7f9877699d055676ef4d04e9725c10c50788c3299e385cb9f3836ee4e0035a5dd29273e0033d450062dea46097243fca637edaf79fdffa35bf4b1fcf479b845b4e305a194b29e19fb2261c92cf0cae5108fe232f920f825123245bf3960b3d59a6bb3768402a77920e2160d16bbca4c37689da4892c896490d07391e7062dfec6da92bf93ba943cee55cbb2bd78ed5f7c6eefc7168540997741ef842f67f0f65fb0f3ec50f0042d5fce836fe7bc1eba33431606e721e1b1587b863649241148089ef9785466567f44412cff7e20dae7f8c282bfb34378aa005b80660fc23758654ae59f037f2dce2aef74b5d004b40d35797626c5c602f5cbb57e26d0fb443acd8b241f86f311dce9eb69a556552be86c0ae0ab52f34d143d6d60e557308cd19af0266145ff7d540a71cc4f4781bca83dd695a267fe74ce445b03e3b9f07de5c4cb14bf4d2f39cc73309ccf2612d36f81a4001be5871c6c4d51a5bd07c314637a6089cffb3ee4693cd4370a4313e01b753116eb06fc26dbcd6a011c96204b685a32b189ddcd7025ace6a0824a3784a5989044f604e4eb8fbedf99c8d56b49dc6046cf21008a2c8ed531ab5121f7bfc0f6b29283e0eb4fc16e724af6be3d2c8c830f97582cce2c90ff78fa402347c48c40623f8d86fcadc7bdf9667ba9f3b5c30add10007825b89d130ad4210d1c436dc27e3d0247bbf9848ca8d8fc5250551fe3a66386ca69273811cd921c43654c191d1eb3c6733152fc9e9f05d3fa4ea2410d7574b27a6027003d41e9c1346da8728f95e7b5d25559981ef374310a2b89ed19f718c6a534bbf02c7a20804d5ae7c67b66bbbcb114b0a5a3ef3c7341733601580012d04c293ba624d8ee22fec83b1de0d7367980cc5b69e80fea040087d6517249b68320b4520afc4c4c70d003fdc67d40763f83ca759bd8e22b6f1ffba10068b529eb951bfadbffea96e17ebcba63cdc821c6f867a4ed4d21edcc06ad713af0654d5a18a6a9f3110b8705e5d897b6d30ab46046da4429427d913603344d43487a6a46235b6beae00b19d33377a0ec66ee17659fa5ff59601dbe59e52434eca3baab183a10c6074fd05c79a173251e1591e199b8a8769d131e2b7846fcdc38fe45a6115708bd6487d0080f190f9a06553f6cc9240445cd22e2b89059aae76524be09115643ede30a5892d398d99bad9898619b97f2f027e08cfe7336fffd4ecd116cdca01720288521296516101caa18b007bf1079fbb019210f64f78100b366edc6f4767d381a6567e2c9a6b71bc6ec1198dbda8c6e7a926e668a3790281f479ca88aaf3014babe629a18f0a3a6b1ba09b2a840c0a858c78d4b006d9842b2bcb4d06f13c0f4a06ef7e72ae2682747a3e3ef3e7466ea81e82c053c690570e9d911d9db2f0af51d83542650a47c2c0f4bc5037512ee3cfaa78255f95026a1571dd714087a8884183cda6951e7c1ea019bb19c8d5bd5b92faf3810100a5b9a72953a88069d28d447fc3ada2066028f5225117cd73bbb415575b0acf0f07374da09f26da6e02a4f004be2f0563105d301656493a7ddd83ca709f70d83b58300fbfb2374322f7603394ae667c0bb2d96c4399747f0874bf26991ea26926107df3d9c0e01e8fcee6ef01eb1b15c3b17e6108b02fb558c1ccc45e441ddb5247dbdab26d2384904608217bcbbd03f110a610e70faa4ae454be304a347788308281c4483a4f749eacc408edc00004d408065258416184008506a6d8905e2f0001257a419324ed9a4cbaec25831310c9400b283a00bc7a926022060daa6002084309298149018329744ef079461950931a64910935098a4227049e8b116604450ca48042083a3b3b61349941077486e8b00d0e1e347985d8b99a73229f340a7fe83c62235f9d635226557bf61c93a81115525c815d72bccbec77e78e101d56d7de3db3da316bd38d81241462ef264fbb569e65683ceba8f16cc39fa3907d8e53dce73884c2738462e33912a5f01ca3a8f01c8b56788e52c0e768d47a8e5358788e472d3c472a2e3c47a41bcfb1ca0bcf3109c7732443e659be60789639313c4b1d199ea5919767b9737a964750cf92e77b964806f02c7b04f02c9d08c0b3f4b1e15926a9e15902d1f02c9500e05906e978964b669ea590eb594e11439f25144c2511ccb38c8265517dae333cab589ecffad63334a737039146d8f4b963b293078b6afa913b79606ce6f08b6677583d9b4a72583deb62b3985487f9a462b2a90659aabba3b1cad4ae8a9494338d5430a6cea75db99170129a151a356e2f0a3652506105b0c5420b2edc7801870c0c314479b1b4e864a91494a54603b0f4480096520980a54836585aa5064b9368b0940c0058eca5c362393316d37159cc08b683553b8bec3c62d9af89a87c599b06671369705eeb2a8dd42eed4ed3bf4fd3f3f7d17fff6650bbbe9b8f613e55cf9bf75cf1e7f2acc2df639cf96e8679f70ec6cea00964a7920627edb463edabe93ae9d10454222f1b99d3ae9609547a76ef314a24b0a7ba9ecd1b6eb1b9a3e0f9926d223c37fcd90d6336e62006490885f143c0eab272a0fffedddc985e56f7985dd6b73367b6707ef2fca096014577c9f1cffad0e07c661d50463dce93c8a874731a68491176a1944a209d21708eab695a2687be58f50c813145cc8886c080a20d85018496d19aef8689e994062757733a9fced101758e2c6aee7c3aa029189276650e7f9fa745edfa3e3f89e64ce9f33369cecc70193e4f73da15c3e7a94ebb60b84be6f374a75d383e4f8fb4eb85cf539e76ddf83c45d22e173e4f7bdad5c2e7a913ed62e1f3d4a75dadcfd324ed023f4f81dab5c2e7a99276a9f0791ad4ae143e4f97b4cbc6e7a950bb50f83c9da25df7f374a85df6f3144abbfe794ad4ae1a9fa751da45e3f3544abb667c9e1ab52be6f3944abbbccfd32aed5a7d9e26b50be6f3948c76a93e8fbddaf5f2792ca75d2e9fc774dad5f279cc48bb529fc776da85fa3c76a45da7cf633c58cf2c9a332b9faccff9e769548fb3929d33d82983a5af06e763b034a7c179182cd5b1d44883f3382cdd79c1d21b96f23438ef82a5481a9c6fc1d21e162c75a2c1f996a5a0a52b58aa82a529586ac3d2250dcea360a95083f3d7d2291a9cb7f3b7144a0d4b891a9ca76169144b8b1a9c9f61a99406e7632c35b2f4a8c1f9153b8b666b9e65e7d16ccd7b54f0bc0909cfafaae07998243cafa264e0f997179e77c9c1f32d2923781e851dc1f32c36ce56b571b66e689c5d3ae513a212b58b769aadd8e9947635769f3b1f29b4640531ccb24fd3615445289b598f1433080286d4048a1fd0ce47d6d078fed3bcd74beac81ae88d30b55f10354f2222296a402489b2ebbd92f0bc97d3ae0f03c2803c80bd9ac8a0c951a540555e465548b083930a444b9af0032744e0d94a4446af9e1e2214210bed86101055f40821f56048d35e63148128091ba0018719210991048889105240b1adec108105111322849084a301447b982421099e11132a3c4580e084d445134043d082031bd6d3462f287a8a4004243493d07c3119224a276404308a08a2f411012541098794042b72984fd0a8a64d22a12a46aa1ea1242471692126ba9d25b400679a6384e7b58c1269974dbb26021afbb46bbe4bd2ae0ccf7335e7e77b17ab96a4c12cfbee046a700665cf6e07d4e0fc0ff4cea006e7a712cd7e4054211403cd19d4ae388de61111913913adf8229439787ec5c6b08bf57bfc6a3ecc524062fa8eda9a531635c3dfa393a427e0f8f5108d849840b4e20bdc7d1acd4cdf59a6bba3b1e9de27d19c51e8ab5d46a614202a78ce8984e74cc293e6e069f23ea076e5269a4a34ccde1feddddc31799fa63b771a9c5fc49f95b8db3cf97d1a9006e7bd3b8f44e068029d1d22843a77e691ce27b35d920667e7c3dd9fdc11b52bc7a428edbad4a13d5a602294cecf27d4634a29501520d042f64cd1833322ecf4a55abadbfdd13e8da6168d9abc006735fb249a7756ece64423229230bd44de4e772371543712a7743371e8cdc4f1e4949f54f883790d76132a769a89014901e96abbba55aad90292c29509b5bd06652fa162cf2a2c376a29c62ceda49a372029bc61191bd4a008274d5082c41332c828e1d864085cb0707cc244074fa400226a008a120c010826469630451361b685099e5071040f645a0b169045131d8431440ba2c8011092ac80a2a16af0648c249d952550948002274a884190932947c84a2fa051c40ea8e0c08a2182b0841f24c1044958010be8ab09103e4082888aa31093c20429638ca1841b43064ec660e2648c24b8c3d1c918232891a0eb91f2d5b8c33c2444d103309010822fb8c07d9c7d37644818628a1070f6640361708184107c61847b5a8ba9cd52e886cc051d70d205eecb6f479602239a74b12343e28a264806c89e6c200c23dc110a067ca28d8e0beca3338182b86729b4ed64c91381d9c7616ecff2b53dc72495518e459b4cd691635f0ed10dff4865843bcb22dc5c88c0e24ea8bbf94688bb59f6dc18bd5ed108a787623408a881e97dc0f3c7f352891446175db56d342865624bbed22cd3ad4e4f2af688b3f92c737a52593ad4c07decfed07feecbcae198fe985e79c4021f24810193288e8014e6be20b59179b101200c01471bb2afe89e946adf411f640018b6433ec800a8aca28b36b2ecc1339bbe72fa2e9ade496f759aa20ec1b0297bf73c04c32befaefc76ac74a69bec26830ce0d1d44325161c63119e71c57add45cf64bb7b76e527964a136772cd1b36bdf2100c9bda74ec9d690895bedfc9584d97afadd6db55ee2b37ab7c98332ea7395d63a9a9e7da72d4b32ad5e272636cad3c7b8b5d79caae1c65574c261b1bfc4e9fddb0f2cef469fae96695e92c3757d3eb5db9f9d8b4a3bbc964bdd34c8fb339dbab74f3b6dd5cb59b55d9cd0765f0d4d154a3db0e4a9125c2ccd42a5fa7566f57737eb69a6ab0b32c3f3755832d530db6a7dadedb263f1d269e4fcd9952cd3be7b76f87b7451b7d2371e89c499853524a3bcee4608f3ffdec87ecf4a4f623a60f699f76372893e86490590619fd92f146dfe0feeb85b52b23885d00f7a5662dd039d0ec43363c31761971609dc3c49f051a671f02e66c394ddae3b763e2ecce5b0322b0c1bc3a39d1b46ddb5438c3664bd37cd4e388d929f3b6cd2bd3603f01e00c36b48e2970e330b19a13856690572d81039c8f7bf6acb10a268030dd59e9d4ccf6d8d971e8eeeeeeeeee0cd314a0b7779bfdd1b4977ed09e692fddd393aa3de219c369259e5756edd98743c45a0edaf5ae0d0df6b30e1deda2efdbd0ae76a1c19ee0e7555d7e51e54e36e90cba468f5a9a71aed22a112ad63182f4cad376655eacf259f6d5dc14a6b5afc2de1f0e11637748e30cc72fbb2c1d2cd098de79bd06372154f9bc35952edae8e89c73ce39e794826786511b9d04bf1ab0a7d4acc25315d32eafc119e5dd1a9c11698aa08b36264b3b779c505a9676593ccccbf79897d72eafcd8f767b6ce7ae0d4bfbe938e1761b967685f490af2ba607a9d7c6a69ee5f238e1bcd7e6273f71511727bc3f5a3d6171b234b3d59f9687b42c56e6169cad96f7272a6a0c4bdfde952c4eb8599cd03b67b96bd602126bf7ac0e13cbd7f6d2b5f1e11299adbe901e621881d9ea07e92186dc7b8861698b48b86534c27dacc91eb9f3f1703d3b9f9558abf9be59ee9ed5ae0524f6fed9208dbd7e7f427ac873d7c6863b7725d08db3d5bd8718e6c8e7c82b83e42510ee187a61fc6a248ee1666518bf9a883b4873f50e132c928e640dfdc2d8cd928a17d29ba551d819cebc99991685931b1ca1d83fa49f1dc860063baf57486d0c3bf9d564ef4ada59a5bba371e9db7138803c119923df433e62f91ca7607932b08c4358beb469f6005120b932588076451f609965d4c606676850822eb44bb543451418d8fab28b0001963b8d3327dde9a28ddc3b581e02557e4c5882a72894a17c959741209652280e45222ca31196f1084b242c63520a4a18c227ccf2a583e511904f0f0f9692a8779674b15d9adce89c5ba944336f70d61e40925e53fa69b3c7afa66787f5b3fe3cb5fda63d92d2775b3a44296d509eb2fa7408d3a41d22b84f67d75e53ab6153c6699a947e7d8fb3c9ac045d43e179452fd64e26fce1def1c032787b17abf7f8d56c3670f79205228337b041ee0d723a1aec6fefaf66bb3300a1ca6ceddab6f7c17669ef18dcdd7846274508c2f11d98290f770f07635d174ddbd6755dbec1ddfd6cc4253b84f390c6dfbd7bffa8121247e9dce91189c32b5dbad3a047959038bc73a577d493d1b3a573f67b0203281df5e2b7dd4c046f2f593a34e79783863bef661cecbd64e95083a56f36e3e0adc6bb41b4ce7e355cc769ca5e83d16f56bb7188c435f49865d11bf18c4259922eb337d4c8ae94b25f118c236c03c71e4822be956a56c25969cbb22ccb328cd6540b3836918107eab524b6520ab0de2e676d504a3528b8ed665503b46c0823b6c022075c2041011134a0450a28a5946698d0761b508e08036b385f66db50b0615c17483865a56ceb522a307c4a600095c0082a8121d4ad88b96b9aa669cfde6d167c83d8b7d3f46d80251b0d6a9a966546afd78b888c0b9c6559961de5742b1ad98e54242a27ba158f926c1811a5524903d8151c4882b152a98461188661a55209c34a4f5c684da9be30f2c59152492b954a5d2cc1a552e9a952690b8213414802dec66dbc5d1811a552a9542a699aa6c96ba52e5460ea946aca92295314710028523002263e4081078a8618ea02c949aabca052f2a24a171af8bc70c28b2446689aa60979a1a4c90b84103344a61d817382234938e288883166d0c3832e8830a219a8a20c20a8e8200b22aa2c09b11d608c8b2f88c09c2802c6a8112f2847241929a1451354e8c0092720f0a9128473a54c6a1b876559b609318366990e294a29a5d408cac51738d79ba053810c8a3046193b36504194ba830ea092f8811341802209438c116639e0620993148e425cf8745c84c006a323a3a22ee386aae6ddd8a0a5ddcd8c868c88b8a09aa55455c828f9e0042b1bb685ceb6c5cea6695ac90721f0369a5201616733a269334aa552a9e4830d78936e434e48754af5839d4d8c53296e74934234b30ceb8116274dca0e119aa669562c51050b3836094a42867b01428d188661580f8830b692811d42473809c1132476404688e1400646b062062f4f27054f8800c4030506318072032b64a045154f4859c1d10a2b4490c59223d9131dc0923842a3500f5e49ccb8d168446bda115764c181232e8e576061440b3070aec734a44ab5986118867981b12ccbb22c8b14c451488b1468a144c5281639726080458b21346d331201319868628c1260f193436484a225704200429665599615e5a0722c30519179502a132204612a62872a2fb80110626460094db280410e68910b4a4528b0385e71450c8a8ed4cd080c1481541404113c70c2103c28c22b383af100179d6dc4e4149da266c7b06358dfede6e399413c319b5dc05876f9ede86f41329b7b60202e607a4c6252a69d74b5b3a2093c582841882c76e8101d1426820c0053e0383eba6081841c2ca8146145069c8053385ab1440b640d580d2b1990028c2a50909469180730cc48c9132348e9c10f84ba08312c8280310e6439381f3001139ea0c4106a4083286c80c5164c4010050b8e573421c78b2ed756c0890542e82009141938220b2822f069628b317ac688010d9e28800536b00112585045cf0d9c28e0b9f68f1aa54e526b337db4082229b4b991371003288c9de366c61352f8d890b22335651c2246908257c87971ce6418e809bb1ab07811c978f1eb4c58ecc857bbcdd69cc1c02802063daff0f3e29cd18e4269328151d20a910978b0bcb5043d2508c2d20241b432ca48c29908667102e9e4c539232344134321ca462e19c21248e1cd6442c7e64612e1054e50e0e206d80c9a38a2cd04068cbc427a9b1bfa9b921234b013d2bb511fd4e6c011c2d0095b0453746014761996695d250330f009bb5494420c2f82427ae36ce184b14500322803e847db3c20dd842a4f33a5dd3e2d90546db0371a742eb18a114a00824e688312b2180a6da211ac48415078a31dd9cc232e7284c29b97209b198a62a01366369882c52bbc79098a1946b5d992c80545000abb971e147be9f438210e0f19e9451b2c854a4c3af003a0d006bb6743a472f34203244821123c8f134a1b2496b1617207cb4d06cb9b79e09b2dca93120085a5ae4233a5d52c90ae82bb4edadc11753c9b1318d065f5a036acd860ee2558bec4e3848a5728371004131c2485f43821cda436869a0db252461964608eeeb049c15a67834c2c81ae82b59b8b18c140ba0ad6345588d918963a150974248cc40006bae8096d6e5047400a63e7b8994d88ab18284faa108aa10dc290812c84c28ee5c539c3dad1ed24e704416177400b279062cc0c2fce99223c64624cc38b73c64607cb431901109677c8c434de9035bc3867e215525c0014368eef2e6bb069a01920e104aff086e3014ff8c3d2610a969df5e29ca161466a6f56889a0c1e1c853fac1ce4b56b38787ee1c5ce0d0e2a4549589dadde6eb4a330760ecda3d6e627bbcdcd8b66f72688fadec2c3b22463c994713015253d300a6727af7d0d1a3362582b18557c716949a14e2c75c5143faf8b912ba96092423d713a6b010ad5f23cf69c9f98314ab1534cbbb4414ae933f9e11025a65412c99e1044ad352dd39022bec44d67aac159bd76c2c7bd709c3c357341786eafade844aaa197d04bc756fbd53eb3d51308f37901b5cf9c99443d432aa18a05bd54aa5a7db0cc96bcb1d882e64c8c312806512d081341ed17d66e2624ade9f34c1f96c52a5772d5b4e72c086bf7566e56993c9b2d6930136a9714a176c996cf821abc995083601785a0caa4a06c49cf6c617f7e35122ba2c788b0a11ea1c6823023ac8bec855b3e6741e0fe8adb82fa59cf9cf1beacc7eb19c2928630240c8981db1bf202f3d424628604f6322132f98d0009126e242f29c32eff19a99fceb7d339b0fb04f7fce994dec9cfc74a196594f184b0748b04315fbacdf6d265f928bd7b778b6c2fdd1f56a42167573e1e62485f463d8f94f9ebc1fde948e90dcd19ef68b6b4d43a84fb9f92065bc8908a3f24e28dfe6744c4d1f78ee6cc67a4f3a7e38414fe8ee0be77e41d1de10eb3e7844f674651bfa00fe8635223ce1f106ef9cd2661790f68c703923a9303918625e28c175b3bb2061971c8f76712717a20bab0c3f8e06e02374fc511476c9ab4d3746c8273639159ba35287970d3dbe1274431170d7471862aa594f36ef276d379cbca81e2f8e5205f2f2c3f6d6389bd76c9bb3151fb59f284a0f64c01cb778e4791494b298463a421dead659c261bf186c490c81c3c7be83002b325bf837bee50497d809ab740e5a9390bca291cbbaf3b9ad8b681115bfd2d4909b88d80b411cd1687a707aaec8eda252f6b6bb0a7122aa0ea33b1a31edc9f4b604732b96615779e68047c93f5ba259fcd25a22b36286d56e1d22b8c1a9b50710463184b6a579e3c3cedcaa525b8a75db9f42a2d6917aba6b0a376c52654e4e03e46a52792764521608c0cdc5fe03c9dc0fd2ea36638c3dd1102282ebde2c7631b9a2d1bb1c9d6bb09cdd665f120c3ec2c1fd94d37ddecdbd09c29e574ab7f3add86661d9af2e67bdbd0b70de17e29a7674a427dbad94bc5acdc6c63e5decd2e78ff6e9e01e7d20bf74b423d23e3dd3c03b872b30bcf365431299c4b4b360fe7d212214164195876d850a660181c9f3801c25d7b5ccde91cfa3a62cd574e68ceb0e665f1909dbb0fd3eb2d52bae9dc2df2d3a374d365cd22ddb3cb9a37d9cf385b33892a9fd40f472a9ae4e00d77d33b957772a0def48d49bca1bdeff1cc192ec9eb9933a5ed2a6f67fae86cddb3e7f3f1d02177697be890fbdc40ed9266abd56a6179cb8de17c972491727754ca4ad3f404776a379c7d3e3ae4dec9306a6412061958e2dc1db52b773b5d52bb3217c42d69570c42bb22933096e07e47a56764d89181fbb1db6957cb3b35507377c4f291d5678f21f6fda8cf8e7d3dc8d0c4753df146bf470a20ce5667f2a6a52f9cbd70d75ed71369e0be1e3a344d9e39c3713c3c4596339a37e4cd35033577472b43eda29f6f507a91b2c4063d90d2214c7ffa6a681872a6eb99ad8e34801169a00ff2826082ecba23e07edc3c233c6dbf7097f2e427bb9e39534a4a1d752acff1cc196e53e152d29c6179eae60d7573e582e60ccbfb5dcf9c61b95cf6ef6695e9decdf52b5c50dde6cd9be9c6d9eae9c1fd8eb3322cd9ce62a046cce291a37d3b0b9698256f537a76eedcb5a9371d27cc5c510d8f9c9ceca59b637abd5e4f67b299dd61c9d7e3842c79593c6437bd4776d3e54dd7e647de1ea6d7fbc27dd3ed6c74ba24dcc70971c2d0c4a33b9aad8ee13452bddf10bf6bdfde1dfba9fbe9dbd138883cbd70890caea773f4b34f246aee8e4a49967b758e5212ee7b497aa6dbd95182fb9ecfdcb6a3c9d31df1744793a73bea8ee62587a4c106c2fd6e67ce784abad5ef90bc25b87f15781950878c0ebc337976787c80828486baa37944e57a2ec7d3e03482e3c1cdf261aa373d86dd996c9120b867b7c92ecb472dbd3e8636dc4b5ff978708f1f0ffbc39299a1c14e5a314a5a797734677a4552494d162794dd5187d4364ec2390bc21d2bbdcb57336b908f62c41bfd3c3130228e7ed7d2d3e3d1a9395bd2bdd0226a2fa15a194f7861792711356743b83fc50d8d8570974d193753c6c1595083fd96ef86c6770e913dce9cda1d7548730627ec77497386867d6f27d220e9cdde4bdeece96c412edeb442e4876cb80b43e2682c6f0746bcd13975f26c7553d5abc0f37447f186103573457863126ff43dbb09c51bfdce6e4136dbb1590fee6f3eb8af6540b8cf15cd191eb3d5dfb65ab9a20eb39bd1f42a12cd206a963d41b8df5199407448b73b7a55968e88735746ad383669c2049c75e0feeae4a4f610ce1812eee78984083b8a37fa4fa8b93bc23d77b07cee8e70a0294083fd764245f5cc9bbec970e8f6421036cfdbb02252a9192a0d78daec61ba75cd9cf236c5b05933338c4eaf6dc4d3e64af3967d35ad7d38442c6596124f6cb63cc6a1726ed1450fb3b5d26a6da4103b3a100ab11f8a7918f625414a6807d425995f4d770d08d5f46c16355833a3ec905806ed0745511ad4a4d4ef7a3adeabc1322a8e67ef55b51e541ccf93c8cbc9669459d439a62745cd93488611bf1a8ca13322c3e35723039206a7c974194ca6ae7b0ccfdfb3779ff574ba7fcfdeabfb0f9fa703c3a7ccf3566180c17a3adecbcbf15ef4190c36e2d2e6bd3c1dd3ed7aba9d186ca72383ed7890f07c87d455e992c8f05e4d65d8999af7d2c91d924ebb3c23ed4a7548accf773cedc2e1e22273a7689754a212451aba4843c797c7f8d22cdfbb293a22895d868a3a29dd949e896118754a92e0f92e68ce7438df7dd90c9a4bda15a7e0799a79f2cb01f5dc09f97c3b24ce5e7de64c23cdd67c0ccf1b0c9d8fccb30a68cecc2d57199e5594a671d8498404f3f9b9a382b94c23c11c864682790c5775197654aaefd8992c7d74faec2da5c1f9db45b74bdff7c52324266020f932baeaa6126fcc9b6c0734c5a85ddfbbcef3408d786ea0b27ad495f884234121766bb0410b8442ecb27a6036d8c56e73f3a3dde6e6c73bcbb7d2ca7142d671c27aa7d1d400d1663f242aea5cfd61f223c5e8eb4edf443a647716ddfe5a4ae7e8299d633e5cd9dc5284509c67153cff628560384f22248a73c75331abe3c1f32de5a85dd10b3cdf547ac25cf1b67d32c69b6bfd88a67c691105feae4e0fbe2734db9d08ce8efab421136b2cfa185e2255c88acc06bbb661cf30ecfbee51a076f7def5f79c3dfbfc6abe6f148b2a311d32b177f9d578c7ec67e3a74377cfb39ae75d43793662adcb3aecda746b9e622cbb44be24134c221b9b9bb8c50a725e21f69bfbf3c2bb585ba0499e607936a1a86f81c5e6b0c0c25fb02cbc85f757c3c23beab1d86885144dbcc22edad48f0255fb0b77e132946ace4f46ab90c1e60dcbf02e56998ef202c3e3570383a6fdc8dc381d7a390c8fe15f17434d66d341a82d9f3886e7d45ffef2c5707f70790c14a831dce50a22201cc3b377f4dbf1ddbce1efa9cb234059762257500132f55c818511b9c48e93208eb4ac0bdc78357f5089d0eedee3ea11e6aa67b6f389377c220dd9a7ea6615cccdaad5355d894bde6312cceaf2080c0c11cf4a6c235f9247f6c8245289cc913a30ab46f23c1b31914d8567d0ccbc57bbb46777e78a1a1bccdf5fdef23c773e1b71ca0e99d8e5382c6d30bfbcbf1c5c1ec3e58780ec661cecf2185cde49cfc56a2e2ed79e65998b8d588be199cdb426862b5f445e2cc530dcd0f8bb320787953a56d41bb78b6815b5e5c60665786e196c0ba75688c42ebcf0164ebf9a17ce62855861390bf68717aefd85d374f782cd5eb859e217bee9707ac1469c49ad859f6c46bdc3bc17ee133a0f596e97a45bf3051b710b9662161bc3f8b5c0828d782aa933c059ee50d4b34b876cd0957a8bfae9d4f8f5f8d14e50593eb0b39ce516f98aa8ac2dac93f53d862c8f61c9c610a3c1d605d63eab6a709ec5be06354f22a02160ede6791485887802ea23a276b15222ed62810dce67b703bade91eefbde7d9ff6cc7bcedef934d80169df41fb0fd981da956d59a6323d7b67b21d50833e5d92eed94d36e2eeabc9b80f878867feee0cba93c7b37307a8892e463fb5d8b8c0130c3ce90d6229013bedeab29b3b2598d53d1a1551c1da2b7b6765669011dac1dacd2e51bcf1532b153110a3eb926825a83f64ff9e81c42962520da4f4149124fbf72eb3de97602d4ef1ed803aa5b6f3be6b16489c027fdfed3aac8a8f88fa0d81ba2b96d5a3648313968e137e3931a95f3fd84ba84a12e88ed0183a3b11efec1c31c5049a02973e24213a0024a4042da6e8810936cf094a0851e939a20658a9c70808293d401ce188206dca0f911019313842055caa67ca112538c11da1138321e5189c2791ce1826a01293810ec8688c1b00153105151a20414a0ba22670a00a8c9a3d3b4e8c4002242745f8811150d48e28870926395018b1020d8917134460040ab012520f94ef0504239e004a124ab2a2095a422a022624451013462831913229a240caa4a041134610b1ed50a3262de800456232a50a2380c05c806000069527e82495b817144a7890b8182ca189922108a1148311514e4f131ab0a00733886a59e7a36949474b981c2dc1d3054f19f608e109b943240515425a46b9984ca87912d9c8104bc2f2954f2704758ef915bb6193c944c368348da6b44b66529948b34abb4e49ed4291d1ae548bcb8b919d233c487a9c589da669a7cd1dda75b4d3e6ce8c358351812ba4a08217fed878d7d19b3d4c35aac23b9b817858bb0a2dd81977c1d2f80d5be32fd81f87d52e63610e83a58fc1aa2e83057fb2dd517685a76c0a6fb1f72e5685bf581b6fd9140a9f39022cd80a2435c37a13a834ec1641148660efd32382bd47108537110a9fd8da9b6db087c2e76f630451b84dd4e0f46e47b1a1a9407190c25d01ec547712cd2b669459d4e09c44f38aaf03faca763e347bee7c90aad0ecdf8759560fec2b5fb936343ab0cbea218638ccd63c4e88134a1c3c68f2d2816737069250d75fcd298beccea2196512add49c09d439e631666368b299fae0e3a90a20ce8ed91fedcaae0cc2ac046a506650ae100c0301716c304b9f06c1274c90e02c7d849292045191440fa622099e22292576278a528461d8744195dfa5248a22a560098238cbb214b63db35d7765cdb2ec3ed1cfbe1bf0b8a58f4cd22e6e49bb4c975eb761dbddd17833d9c672a85d124b2853e8c90b86a44edd9022963aedca92471ae95a314fe24ee2cfca08d6b8eca9b142e39d8cb346c455f6d4b8b2a74149e3661cbcf2952b9d68f089bed73d4befee68ecbd5e0eb5abb1bc849294d333a61d19a55d518a2992b09c82a594af293c80915c9084b32403cb30cbdac5264a8480e5a5119b0c0323c0dbbd124a0fb5a066d94323985df66422187b04330dbbc4de239d681703be9aecfe68505ef2b44b5e2269d7b10c2272827d90b2c05d845d9e00677248ce8bbde5fef8a09ebabc049a337d1fa8a76491a66537cb309c1efdd4b1dba3e52ed7c60607a787cb53d7e607bbcde92ec76e0f1b96ab7c5236866dfba9fb68b9cb2de2f216978b13b6bc48caa5e531646197c583cb53f7e1f2d42df2d383e5aa1739dde53e544f3d758bb02ce0e5a99365692c96a5b95816f619c709559685dde538618b65656d59d9e759dec1c468318739ebab67e9c3dade5d7be76267b06c9cadec6619c4cabe3a4e086359d959c7093bdb83e5f39be581e5f39a959ff46950dec80749aa24a1e7f50a59d8638e13b2b0c31c278489c15aeef296bbb056aaf755cfd2072754a9827c583e64d897613f86457e7a8445602e0b7bea2f575d16767dbc3cf5976bf3c3e2f1f21e62f8727d64494a881182100cbd5e363a1dbefce695ba6ab6e45c82c40bb0c062cacb0d22ab5a2c4ee8e222df12e4934a3df57e86819e19a6ec8f58b4cd168b8744c2162744a16c9cad5914801ca13086323c5970b6e459ac04b1976a03d52c87767eb02677b2976adf1cfafac972a8087b29016b374ba3a112f6f8d5d8342839285dce0fe703de8e5949a4c58e28cb5ebad469d7cab32c9346599649230d4aeef1aba95cce4f77221e7ada86b573570ed9eddbad57e26ee54a1deffe38b572c8ca1db263974caaec691776a27645a9d3e04ee7c0ae9c3eb325ef108cda385bb3f5223284a44c0709a541f927fa997d42e761dfa667faf244da55ba916e65121389a52b755650255183b241f9a982aa5d960e1b1a94cf3a8a84a4886268e8c76cc96ff5c79c9157c496fc0db4c05272816511962f551fdc18bb7228de909f3f354b9fa120a02e7056491f9937f98eb27accf73c4e48af2c9243b3251f8f700403b37c74917923c6c2c26e1030f0dbb27c7491f9ef070f568f8903cd6cc9be9268b6b69051a8f4fa70bc9b89233102e874d1464b6c6768505e1d574666eac0b24fedcab48bd58f58fe180770763388bd6277567ae7ad94b6133a9944e38d0e8f4cc2fd802eda795b5d17238dae8b7582e1cfecba09a9bb2d3179626cc10550069489e1118fc29f49e5064406b7ca039188c64824bbc1f9eafa94c648b71a3a638c194823d1bd6c644e2403a7a40d28112a8b121dc08e6049d4bc610ed4bc618d28fc991608cfb7cd1a11eed32254201a119eb34d7209a4da7fe26626853fd446075323d4096426614a698d9408951ea1769cadd85286294e2005cb5729a534001dc1abcad084d25301151e522db0e1be382de5ab6b1b6005e586f30d9697c61b9b4fcd9bf744cd5b3c4dcb4b318d37aa096acb38354ddbb652a9c4498ee3b6af467e9b82260e954ae7382e7627bbaecb388eeb66096aaeb8eb6ae225ea9cf0477a29da0d2485e7f564ecd2d77d359ebcf7d5f4bdaf46be6d134e38e1449d4dd4ece1a89232ca95959588dd5a63fa6ed0566cc0f12b5f8d900c8b8c5dbf9a583d1696d309854ab5d01653c6c124a899e2d3e9d4a1bcd38742a1bc54eaab914f7d35f1d616193b959254707c2ade78e22622853ff12d5f8d6cf96a46505d5c5c5ebe9af8f232038e57e9c0f12a1919230c0ccc6ab5aa35ac78037bf154dfcb8ba752a954a998d8536383f2664fc656a9be9a0ae3c1c078de1337aaf0277ef5d5c8afbe9a783d950af73d162b2666c68c151a34620d59635b42044c84606522a939b544cddea66577f5adbc55b7e256abd56a55da56abd56ad5320513ce94359c744d71830dde06288fe8a9a2c677524ad9a69af3d397a77344bb1d19aa454456d4bcedf4e5bb96ddfd6da7b7231bcfc6d3a07cde7676369e76c5ced976da45af3dc6775f8da8af16a541f95945cd154b7a59b1bb39b287bbf16a43ed921a14ac156119d4c9581b933845738018ed08cb6717746039059612dbb423232aed8a3ed0323b7127bdcc36eea626630e14b7a4719ab6230d6e3b0dca9cfb9335a41d2caf19b54b5e9bd2ae572701e74d076b481a1296076b6f3d4d3b2b68404b5aa9b46d32cc2c265bce79a413d22f5c7ab4914b3b78c33ecc19563c761c56bc3dfe7ddf65451b7a79591127dc86bed265d07667955b83db395b676bbbc9c639f4dd79eb9d55debe492a2bb2e265c5d31edde97d78c7b08e153f4462d67c0ff9ef7d8959f14530160fdfe57b7c457ee2ed613af622dfe58bfcf4ed817541f874ee2b4733a72b83b6be2b37ce56bc59a5da64d09cf96c6ddfb65cb72a0d6ea59c06b7794baf06b7924ee7d872e9356764b8cdf8965ba767b6b6ff46abd3b02b9f615d1e6359ceb2f52b8b3a8c3dfdc5b69cb3a9c78f35699a868de10c1bc3181b43ae67fba6e3237bb6ec6e490d6e8f7743da90f06663d86129a8391ae1cd0455c342e82663f0c9a078633bd5c189cc999fbe2c5f794ebdcbe365cdcb4345bfdd874760ce70dfb05f56fccb71b6cb8a97c5c3cae963bc3d5cfe726dea5d6ec3f295e36c742a5183220dadd2a2de006fbf026f8f374b2678dbe29ce9a6274b10699078e3817ee53de857e4e9fbf6e0ee726db0c790fb2eefc374ec1659b9e9f216f9e9b172d38bc87fe791d3f214ea2796d71c7ace010d6e747bb5db59ecf6938d733bcaa66c9cdb5b6c528b8d61cac610656378b23164b131ac5c041adcded78706b74f236abe118b07f9ef3fe4f71f2bf43de4e9b5f9e9dbbc6f0f7aeedc668a21f78e5a6941569f1e27b461f565f1208fbd87b4f9e9abc2ae149aaded369737a441b3b519a97d213b24de21ef9dc58364f990c78e5d5edbe26c3d5eb5bdc6e3ed9e8d71b6aecc6cc5c6d1c6767f28b5e0749f36906174dac8eea4934e4ae333bd20767fb0521a7ba8c350a065d846b98de34a942b6d34c656b7fa98adb1d5f4062182e9e99d3713874e2ad4451b1933c2b31bc330ecd38812614699fc59b113d40c67d7a76679845b5ef92959520d7a0d62c7ee346ab085c87823dec08c8cd0451b7913c2d9667b6c76a33bf0be3d933e522b713273c6bbd9dd58b49b6b5565a1d499db16762cdba79da6813498b24965d9737e68cb2712359361b67a16b36749c47a963caa67d903f32c7d5c9e25d0cb5976fbcab21cc6a2aeb2a757cbd2ba95bb787fb1dfe347d3ac18c2d818aa6c0c5f6c0c5daa8d61c7830867cf9e63118f3913c3ace54e80de081c35b675e92cf731dfb7487f9e65b29458ecd67195c79c61692ffd98332cefee837b897bc715e1ce72595af6ce7eb6b22c33d260268d8837b2c78fa6a90eaafc57138495fa292083d06ba7518450256a963a4150df9e733acbe965a52e0feeb2e8bbe384a5cba297c5c3f6ee299d4843e34c9e0067720438931fc099dc0036419d5808c53912f58834d0674f409c9146c456f64c6ee007387b7679a54ebc911d2b41ddce72fa8e7e2c1ef53dc4b0ded251f79142cf0aac2823acd7a6fef4f8613cba6bf393baa8eedb23eec15d9bd365692c2c1e4adfeea3f4ed16f9e9d1af2f325fba2ccd473dcb2dd2af97a5dd1e629893b3f29cef39dd4bcf313dc77b0ef7ed31dc4ed33d1accb2976c76ce66ef7c70760f0867ff8270769310cebe628770f6c5b0b331e46c0ca5ce6c653f2e8f06b3ecd388ca23677eeb1b0fa7698dd2693a3aefdd71a567d0b3d17bdfb31da6491dac3d4722ac65b66e5139ed07272c599c304947264d16d418f6b77fb6b4b751ddaccc6c69ef2e2aabc7b7dbafd9d29e65b076cd86767f983d7fbad8ae186fa632d9a473c68373ce8b550cfb1667b46397d2379d94d2033428df376ff1f3468b438312cf190bd0a0bc7dec469abed807329a655886d1db00b1d481e5508412896294c79694892d49135bf259478d2deb45708b3482f274471492c1f40699c02bc66e9009608a83d8608a61ec06b1c194dee9614dabdc4667b1e71b4c40cd32323a6ca0e9ae3974ce1a914010039c55f1065deca6a9067f2c205188603fcf701870cce0a69da06e1687d9eaaf106582449939f3630269d77dcd16100fcf0ba4c1be03906ac4394e399e1467f9ca40ddb094d9644ecfd4b0df5f8df6630244fa38080d7d8603b0d479591986e7e9737eb4ae4acdf138f06857c45d8990bc8098b971cc6e0ed9bf1b6ca86e5073c5cdda621a9471e847370e9d3732ea4ed65a083a1c1aeccf60ab41c205b11571bc8db701b62bde78c137d80727206bd0328c6e5a86514a8df014294793d226088997df5e38662f1ced10896f90381e20ca8b038fced1d7806abeb682ea8076e588d4a3676a906822b622eee370801a245210a5c8f704640dd9fb42e40c76fa1c992083c02d5bf259da88e3a2105bfd1664a80070c18f371a05b54ec06b82107a809e9147dd8aefe3d0ae7e4d49c2f1394ac971a8e71ca313e2bd30f668234fa0c65dac947b96984d61f7599ebe93d6ca6bf80739e59577469ceb9c9161eb4889048c7135bb3f524aeccaa4197bc4cf9694728baa3d913d7e3ffad583fbf7efda7897bbac1e5b77e591ec4e7e3ee26c698f5f0f32dc3e5bdc359cf0a5f7d783bb766db47337ce56964638cb233c2f91be1e64983d7e3cc870bbaad9a207678b5eb3ac1e311e27ec92a4109ecfad8367105986349a33b2e868ce48a2d9429a3372a84a0dcc8a9fe0c1431abffb7d591bc6c15d864c6a9d12e0a4243a81e4cdc499b43445f7181b3255e3ad01e2c9292552986b96c131aae6718cdd4aea256d0d1a3362582b18d58b4b4b0a7562a92ba6cfebb8d2a665189d2de38d7e62c6beb127135db491a59013356f581a01e3a828bcc99c280a3b0ee1e08b1fe88437a59c1e56766da214af293be10d4684574873c003c413de644890423a0396c7993259932f98f0843637357a42ec37db0f7842fa2c7be9da4429449081a4b0f4ecb27c64f79e5d1bb9f30224f88436d96fb0318e427aefdac41caca068282c5d9becdeac108537d8173c21bd3894d2538ac4054873624d54f9194495aa96592035218a4393880546548818003184c92452d0039451b10514495a0e52f083b451f103c45149074d14715644d10123313c8004466ed20c4071e4514c054b2489114507b321083008dab2e9d568efa4cd356f586a975f8d7667f76987503182000a6de86fa40eb6000a7fb8e3849d8d4256e6b5bbec4e67908983c46ddb485033109984b94de28873e6450c2e5e1193dbb5b150a6cc206a6cb073bca678b193ea1c523e110411445163f9a0c74eaf8df4620326380a6f568842aa833194f884372f4132581a418a902cd16b83726268881e3b4eb8cd1637430e50d084507883c1a087278c9d039331d3b01154210feba971b65e9e308425ec843313a2090e08853731ca0c6410ea70a1cdf68a6238514528ec308a69f1c6164478be81e64c8ecfb87dd6edc3e4b82c6c5beb5e20cff68a1a09a19fcdc732d86c5245ac7aa7b2b2ae76788f79fc56ab3b04c3defbbbc17bcc55d1236de94e0ff52ee5f1a266ba83a7d7453d3dd32423252b96e73d91e35ccdf959dd1f3e748e4f286a0526fe8175d459af573dd5d2b275abe5299b2b6e41a18ef2ec4baae5a64e335f605aceea50acd376a1ce7a4c8c75f9c93e41e3a81bbbc5627d46cab25a7008225bce7afc5a725c06e4b03164b1ee0f251589855b6febdecbe3c6a3d782b9cbcd14bb3c86194ed30c88a169aee67aef393fab13f190c6f7ec3de652237a34a5de7ba646b8fe07efd2a34b8dea147a44bf9a182ca6aeec0f1fb8a8a853ccfbab69545f788e45db940186c7cca2ea1df368d7c4a1f32c0f2254ef390e1d80c76a6e514d377df50375fa71d4fde9bee5b6b4dc0e6a2020d4d573afe60faa91ea71cee8467a79eae60dbf5cdebca12eebe67aba59855fde72b3ea74a951bc317f92128b7cf0821e4c2de8947bd439e6fb8b5954255ebda341accf37ceac7b37b73ce53de627fb83f798779ecd129fde492fc69e3ebf1daba31ebf1c5647b5dc218d4f377bb780c4a7a71e63593f5956c7a271aaa467685c96f71832a05bf3a9cbf24eb117453364e0013cc348f54e7aacd4a5b3a8365e7df2a0ae9e29109d9ff7469ae1b37ebec968970caf76c590a31369f04ecf8d713cc61a2891c4318fe3d8bb582991aca181248ef99969a5e1fdd42c2956cb291929d6ddd19895a247d80bd3c18e60482812ab2505d4ae4c7bb0126a3483a5532a15245a0548d610230e994f99e7c6b981bc4b93e28df91d9c7c4059063438bd138d9bf31313e3dd4e8ab18da483ba8ad99c2da3d4d58d0dba9ca65dec8dbf582152c666181c36c3e0176c6e32f0fc0c6a34a4b1f71b3759160d2e40eb348dc3e4d165d4472124afa991a7ba798b0c68593aa55b5ecbc6f0c68d4bdb8bbaba3efc6870e6a0c6bbd082a50dbab05640a1563ee0d36af5e9c57831313137af8eba8db45aad9efaca76528313b55a61852885507cba403300c2636cf601c7789ee7ad56312afc6457b867538fb1292babb76385afdefdddb0c2577785155e1393ea2a0dce9497c23b1b7cf25ca867efa9db489d673bc97b5759c10c69dcd29eeda496066a57cbe7aa93da15f1aa57431ab79ca61f01a31d9ce38f93c73add1d8d4f3f1870a473a4673a2007b42b5e01c508cf24ba73059426e02c5f57d80049ac82e74f2b6f47cb57384d671cbc72b2832a38e6a877edad602356c14a0cfad0ae156e9678854f1acf5beb31ceb0f0acc2ab15aec259b031b65ad63b0d1b63abc33cd032a04115ec0f1cd4159e63d10d0c6870e621185edde5fded10f3d53d7bba99e2f8ed48ddfb0a56e21f0ce8993a572aac54506185bacb5538fd6a54b8b2ca17eee2c97a37537c3a7d65b30d5e5d7e35ab94cdab3ba471cb65ed90f8e53167e5d0f298b73ce6a77730f6f4ae4b7d65533628d43ddd9bdf0e31479d7e3bc43c75330e5e1d65e70deaea31f74e1fd238260675330e465154ea9ecd97b4b7e9d18aa532bc7a5661ef71f51c833def343308111c73fa4ac31907c7a06c100dc79caeacdec9c3bc9863df0d3131a7f81473a3f9eca85ddd332a78e60c29ab82679684674606d65e393ada4ebf70c429dc9f1c8bb08dfb73a44c93a891370466c5d8cdc29cc5badcda98b758ef28d8d3afbd21e2d45fec0d11a3eebb58578facc7af66759a46c1663e18195815168b19ad584c4a4b8ff57a78708e459502cdd67c0335385b4903cd2c6a6e20395f9ee7bd913c6fc6b12aed8ab924ca72480ac9a0974c8d6080b0a423784603c100dd9b55f8e626c2f3e62ec2f3dedc4778566957e3d93826e360ef2b54cc59a8bba331ea2719f18c4c028852392aa247d80b1b5ab2049c311dec0845429d625a8ead8e7d352d97127d35ab4ba3c058e96265ca4a2ab24a8333c622c5066bccafc6c3de29d09ca1711ab462d1b80d746383a66fe59ec77ade5e9e6bcbf3339865b20ebc7a8c39ccea1d8c6551bd8bb154652910a53408c6d6af6620c1338cf08cc776ad3e23e60d14633b28e64a6e23207e853467bc7b670161ef2f8f73c6bbcbe39cf1def23867bca71ebda3bc9fce8333c5de0a0609f64c57d90dbf58a40ce2dc485906e746ca3a706e240ab462bd9bde1d0444833e5a64833aa1d44c89b091a5532c3da254344b9168159ad420194f2a86e3500c46803335d288b86679b2084834cd054ecabb6d923b66398ec3bc1917ba25d335d2cd53c964169c4eaaf60c9ea64dcf369fa5c1304fda40bf9a8eb3254bf3d56c57c715351f37cdcc8e35ed0289c132931288c13668bc0d55cad364d0455795977ba62f515cc2b67e296ef16a364baf5d598c5708c54326ee6662be98f0a276180bc3b2eeee96c1dddd54706399946957ae2d756c36f4dcac8e4e7a9946d3c74edb3564d2581d6154f9ac8346103b8845102bdd8576956eb6c1197641fae540718683311d36d0744bcad2019b38bb2e744c832dffc2bae8a20de9357d7f3532b6a9dfc5c8fe2695aa78439a78fce84145f5c101ed1222b10a4b49238d8490032c233f23ce94a22ad220b13c4c74d11ec4c0892ab0f4e28c8c4b07464b738606e59ca9bac939279db7e9e90c209ef49a26433fe9dce6b66d57a6411d33d01a33803a1a9432584a1ded92320d4a6a6a99a9a35d1169eb0f0853a63c9a65d9bf59dae8cd40c039c5636bfea59b55f8be7f6c78db6ef601fb7238a6a7991910709300b835f58010d65e390d6af11d0ca6413862fa95d374ad2b916e5f900df5ee069f386a2ba5f7f45aad6fee849a5eb5d367c6575724ee1ae74c1b71b7063e383e99c1148c03c727345802aec10db000e8b57a7a7f355fcde9769222db5188725035eddcb79ea971e5e5e59c7da15747fac821620061e93a32dc4e6b5228d44cd25646479068848760f8648339971b4e3737f7b634363f3dfaf4dad0f7e5315bda6d841c9bb89f6c504d374814c2df23c5dc353de22f13c1f50998bb8b0d223177bbf65233c2b631ecdaeb53feb894959893a8171e8261ee4e20161cd42440dd8a559db3a7c7ca49ef05b3a8b8c7d8ae58b3c2992ebf1af9d548ee5dacf5d1745bc90cd59471f089c548e69decea9f65396701d65797df0e2ce7ee0fdc591e7fe0fedd957f36dbe0cf02a80f49dd74e9b703cb4d2c9f9cc5c1dfea36480dfc03eb11a36c901a98f515fb5d8957efaf06e627db3ded84657d319dd464d8d334f7ef8482e9f574d35fcebd9cfb7eeabc58bbafa6c6bbaf66c69d93a77bf277ce74eee6ef520007a35edf71a8575beff2ef1e0addb783e9b5568bbac94e173b794e3b9c8e3a87e2587250f3d4c1daf3e4f95cde9dbe1a179369eab4abc6b54f23ed9a71ed73e774d3a9c6396eab81fa6a6a5c59bf1a9fe99b71d377c38c19d766445c8362ce461cb93b5fde7d283c31af7a3967facbbbd44f379f2e6f363d9f2e0570f08c7f48f0ca4ddf593a48ac5d62edb2fe1a77a9a9afd7644fa8a77efafc7658b9e966ee2bef6f87efa89bb967d3bfd3cc93cd363f983ea37ec6cda65a673cd2885f0d8dd37487028f3e0adab7848c19f4e02896e0f864498e0ac72733b802afdcf4e9a37d26d13e83e692120a05145057880ff9be0f7a296f1179fa2236f2fed838ea287cc5460abf4fe12944dca16ca06c1c65038582f6d5dc771de783fea7a250f5a8d73a63c6abcb517835994ed395e3bcf89d6ec6c13dc4b04d36db60d363bb7e78a21fb1e9d5d4759d17bf1b566e9678e5c7c41df5d8026099ae101ff494de22f4312c6243ef8fe9fd18a2cef2edf09d7b67b228fc3e7e35f7a61a47e1261dea51b83facbcd2ccb6315cb111a36cb6c1d93e75cec68f4380cb4d347d6d27591d6abcde8c836bbcf4d59cec234edda6ac67bdd365fdea50e32eaf71e7abf1e9b993668e7838ffbd7e35dfc99e9cd4a7deb17c35a9f8d59cfe7d0dd4b5fbec8cbb5889e5877afc7238dd8c834fafff62f73cfb76589971ce5200079f1e3f04d49f7efa6a665c59b919dcc7d1f8f7dd4083c669dc2c31ea9df468d88867ec80fae9e67a7b4983da5143b3a53d652976919f8fa2d9d24ed3f2db412b83a8416dc5a2839adb48680ad111109576e54682b56bb97b709576e55e8235a22e9a3341f487e68c50bba2e9dc6db11907c73c7e3cc4b087343ebd814ef787d3b9db410d6a3b70ff4c37dd4c011cfcdd1cf3d36d24edd34bda15735bae9d6602f5cc99e9137b4ca676a2def47c7ac7693fd9e9d3a076ef08f53ba7754f83daab1dd2f8e3bce93393e088237e128511ccfd87ef1177262fce191f664b3b61514b3bb3a569ef28a55f4d3dfd6a56aeb2117799b73a3da9119f3e934c9f769dae9d4edb7703f720b30cfad570f787efdcb50f01df6d9f9b1b4983da5d1e2bc79de52cff9e1b88e33e7b72525337bdfbbe1a53fc6a60beb344a972e555fbee7d35df95959e6ce34e7a270be4bbe95dfc503f590b487cfa67817cff8eb23a4c20a6b382487cbac49fc427cbfa27bb4dac0b81d860ea342d31cc235eadaeac302b1818161696ef11ab5457d64ff57d2f2f2f97a583c42e97d8e566895bee0f2ce7de48dac5820096d7cfaf867b4cdd7e35c852eb5756bef2d5d4af7c352bf9bbdca90da233c5a79b6ca60278f5e9cd899dc374221ed29f4ebf1cf277eedc69a6c956fac3d24162d32536fd64f30fa8366a176aca77edf48851ffbe1ad495f5843afdc321e2d3ddbe1bbe0799655c960e983bcb6d9d06b5de6950fb8aed230d36cf0ed6389628552635a8fdbb12e9a84110d49e7b475669507bbfb0f67e754ea9b4b94cf7890d09a94a37a52c38a8591a61edd2a85ddcb5cb29da630b803b6d0178e7beb500741e76e7eeb500ba73efbe1a2e7e35427ac8cf6b63232720af901e622875664bd3bc6b8f616b9ef6aed3eed91eed40b3a57d8b616b3f61a1bd9bd32bd9ec9bc52e3f1e622885664b3bf63e7d7f3c7224d16c69a796c5b56571a7cfb2cbe291bd871866f72143ec32c4ee5d16f7cbe2e87dc8a97df6e5616e1a47e610a38b9f32dac6524a29a594524a69c3ca28656cf95e42176d74dbd46143048614008c526444456b09bab0b577699ff0ae0bdd9a9759f6016b9769972ce5dae96869652c38842a9fc11b5c6870ea9833f3ef7460eee67a1d786ea75f8dbccfc0766d9f7721e26e7e35db1d82e1defab274c82c8061eddab8f46f17c5a87c953aa3c1124c083d41d26e0c76777777776b19b5d1387e32251d20788f334e946dc26ecf96474aa28b61a41d4b5e9b7e0c435e3e8671da0e03cbc7df5085123c5528b1537a61f9ee678b097fb07ed75d2c668fdb353b83b4296768b730ac850189699b43c4c31fec661c8c35d613066de405ced26808d39e489df301ea1cf2138a9a5d7be9ddbbcc72efbaad44f482aa437633766dc8c45ceaca24dd9229ed663e1856ba591a0df5ed2e96a4c1beaf327096464398500870c7a865324983d99540d247faf84ca0899d7659cce43465989671a52edb2cc55dcfd88d3bbac9d8da3aba31e007111b0c8b4454e02c85b02b6950be481a0d659f4a6050b6b612a8831a94b16e5b0b615104ee408cbdb465dfdec9a14d3b4d6f9b4ab541e92e90a71ea8a44af4f6d128271953442292000004a314003030180e894503f27822a8ca3e14800c91b658724c17864110831042c6184008000000000022300243c609802a598d551b641ee87a7f52e0bd36e77bfb45d92b65c49905768bf85e5f39779001ca2140e2cb1bb5070624d4ee7501a7d4e2f8a4c68815c79ad693ab1194d07c8ca6d467341a5c0f6c0520c7be240a23bebcef2c54790985185c79a8604012e881ba001a5d2fbc7a8b05f96c4cca84313587b2c809cce1ae1f8c7fa504666a7e3717cf6a4ddb49ca40cc427f897503a67905e84ddde7e2ba29231f565b2db92ba78c7837e4e1a2277cf66a426c72d13f2fce19f81af16be060a0dac87224a82a431989d89b24dc9e57ed50a1959ff11fd01dfb0fdbd17c455221008983c5563bef0c03fc9860d2cf545fe75d235df4a46554748ce15793c73aff7aa761d4111d0fcfcfe76e2f1459e98454a55bca1b2c6975512c7f8f7765a70232d20949e71388dea9a397510724c3491ddaf78236328edc3ff8177cf981d49245420c459270c41676010b340cb662074614be096fb6038c4ce1093d363180635f54d996548237d0c76d04435bfae82b7a15bac748867d02d4f4734037815bbaf615236c6e7695dae9a88dd707820781634da23fa1369846e4e47bb93d5588f44601e8a34c7bc8495605d4d5bdb0975e26c33f17a9cd25fa5a906369b1217e844110680c3a360f5e4617e3af35e84be91fe47a0d8df55039d9965974c1dd00aa8b4d8d4e1554e582265a3387d81675da5f5355c825ed92ebcc932dbec66c8607c9acbd329a625c930055dd95dc1928192df5dd4e340b6ea5d2c2f194b8f3d186db41222314c559eed75bb6b9a034d38fe9efd81352db726d8b33a6711474b63f882c552ed6e648365297dc29a57b1990a8072d0120ff38e713e776fb3b0ca57b97fe15464c26e3c8a00eaadffbf011c4c4448ebc368ed5fe432632246c4cbc0ab434a1a0810bba50978554c5d1e52305d4c627ff4d2e023d0b7baaeba36a84deed17d2e661fab287b4653dc3ffcea30615038722cb0771dd5b66c8768c7ee5ee1b478fb072e615faf0713dfa4d419b63e848f54abc2ea87f5a8e147a44f8eabea65918777a7958ff06282b90131a8ca90e128b3d2b54c203db9abc56b324a2e5b7b1c55c44253c0f7eda75a0f8a074be9405866eef2f781d8b602d1fa50381d3153320e71d2bc048e1f2aaec448ed4a71f8537627327d13b2f0e3ac6585a857fe7f69b438eecf7e12ec25fa002db041fcc23acf982e8c895d87bc8c20c6ca7c514b89047814092b84430d2a9659b0d940719cb953e3f75cc15be8efa209b11405c4d10bc79e0216eefdb081f76a1b7b83b1edfd4e1d055fb39cd650a4d8631fa3076ff85df4c9a1644833cc74611d2188fd42f303696248281a76241318b329f4d0384ab679fb93363786b997dea90b6e3cf2682913fc6caff5124727df9dab64e0b510958c5ffda6c230a339811d4808a60792a220630539d42e31260694ee932ea2fa97b5762c31494161b12000fe9e6c22a7296f88e5eb086e4f3694f48510d579767a39840e69137aa64e780782be44d53287340d9992aba4ffa8e7ef2b1930f1abce9e210763e21df2ac44a2755f203e1c553c8ba100109aa2b16d34812f45901f0a7ebbc8f7cbbcb04a1e0ac2790a0a598d823049427f87472705207ed4554aa583a1413011d654ac23d09c8699dd1e7cd13220dacb5e1c9cfd5d6f7c4240eae0320422f16b132d499c63585551f801982479d6fac6e29cbde4a1366536ac30e53bdfcb5d46e528e5f8fb7c28ea79f913252f72ca285b2f8f1f1b34c473010a5a0babacbbcdd0346abb919029d5be7b8e28cbd40f3e12ee5c4ae1c4c377f100873e198cf7cc1dfc4c4a464f29d23b22ae43a5ee425c6eb05f08e8326040a711df42a2ba040378d314110102149644238199998204337dbea94977cc9f5471f4338db055d446599ac1462edea31133e4daa21614e524d774316f7a98d689dabf188b5c7422be788cc632749620bca4550d06acda0687c4cda4c4877ec41744c70964ffb070ab0b8851f68a22fceb9eda5d34fa80d7d69cd73db9ff8b303d080d4bb74a578085d3662eaa0e3c6b89728dc05e87f2dc101c6c28c829910aa37e200f0efeb9d3f7b9deff1143eafdc9929ea628a8406e8e649f08c7f9df7339450cacb39f5e185b728f66e5a28fd7dfca48190dc6ffd72613b19a8a377ca0f6c7ec6cbb200baa2c5794a1a4dd3301a9a4d14287a37ad436bd810fbe2f4f6262da82ebf5424d3bff499f462c96881cac0b86c273a807021a2abe5891e4335fc6652553d2617005d6185f1fe375a1671b4ff64813f55d503436b321291aff32f15fe937bcdce392058d32b1777ec78c4327e904aa0cb0420ff3ea5b064d2bc4624d0b24abb0f9378ebd07f2a23527b83b83121a77e5a65448a5b5eba0a8d2c683f0ac980558be4bdc9741f8ec22eea6328c4eed05f420c1269b64afa8777e262ec95471df7e20aed1538455efbb06c86127ca8254a4ad51f0d7968a8ac3500e247e8f9d4d153e35a4fc459c37b046e08c2c705d096471e6abf889bf4fe8b20bd19c07b1abdafd629a4457d5e2250a4508efbb10e9ae27cabe029f2ae6c62a3fadf07dcea680e7ea929fec0931f2c944fb9ce6e9174637ee2fde76d1236b98477724f2f5c62ea6c3d7b485c8e28f7339f2535f31b747f9b1238c86a231f09ef92bc996da578d45d715fe249e8db27d483273a9d966a28f2e09cf6c0f189219a8a0495489892f8ee59828986f57e163474a206c1fcfcfd01d64165f14a796603cb5f5ce4b4348f68881920471c094745e852064f903da5601f63e43b692dc18aa15edb2980e4f97f4bfb8ea7952e5286d8f89af566bd8cb76a619b9def22057b205833c2edc8e6efe9a27856fd5e5aa27069368af843a2004ae588b52f3f37c146cd8d69a7fbbec62ddb78db9976c3f426838fb0a4f32dfed981c4f3b1bf2a18880e1804496993d37b254c7bd08f36c545079fd5c319d27a24e3fdeac3983829597f79fb2a299fd2211dc6f87bdbcd977e1cec46916a6745e5e6c37df0d2c114440f314736cc2a32edf220fb6d11752d5c91eb5eabefdae43a4409d3fcb457ac83f32f0beb210ced6621b9e9eaadb4d8792a856ad4c265484d19261b81f191e5b41591a023c5db4502999625d401459c1922c4648c4eb353116ae20b3253d8be20079d83e0896536273f44896daf5f2f35bd8e6d9c9d5add27a40f3c53088073a4d2687d7d8b308a990bf11e4acac0a18c4aa2e8ee8621500be425dd97c0630493666fa37efcfb35742ad46ce315eecaff7394bf639f779cf6dfa24c2b834b696ba820a641cb5b3dcda1061bff76289b99ef91f0da357436196ffc8be704780c33067add9be6d14db08445141d2e461ba157089411ec765e77571a48df33d213ea15f6ebdde2e4851ce246253ccde41fcc523105ff0698c358decc302623d0705f3a2e4260c52629a73d126a49146cb3a8620aa8146137c489ab966c47293cad29b24e593faa29822d03819b894b3a129cd2eddf13599e82bdcfbd473544df8108043df7afe5d271d75f6c3c222b178036d440dc25e5ba302d2e48891ec05da09a9a74a4ec72591778ad2918c65db95dd9813bd9647fe9d1afc2a7c159d0d8885846896ca7fd8211b00e4756da166648938fbb2cdca986ccd84cd70e64fd2f7c09cdbafdd38df2fbaa50e51cb1b2f9fcd979e03827417bf1fe4e00cadb1a0d6a5e30c92b43f1751a1284866e05996de3e8ed95adc1309d81f4662dd2bd38cd3be445a6a5503e6d58197dff004069ae0d157ac70e751f2aa4c480086698cfe0822f6129b6e2f7739f860d6e007d19865abd029224f24ea6091f3675c266afe0d70c7df6bcec51c79f5a59c1410be3f11e11204b500d1eb6640dd79d568455ab0e8933b6f43b1b323dd512d59efaf783a64e32424ae7dab98024c5da5c8b21e7650492e181ed15404fc0ba18b5929803035174ad2abaed665fcedef9b395a34debf957f695a58217b403e1158a0c3b40f0479adb5f5adfaeccfbd18acd09f05babc2ae1fb9c9751948a0fa302fd26142fcd579829fdf516dc5d025246e95f894ed3c81410731d748b3cb95bc3696431c4892efd93093bde0015d982ca72a16681ae471f24bb0130df03eb96c1b8e1d97b023aee3736ceac198f888b0bfa2957cb295322c5f171866a96e643cb0ccb5f9de251b763335a4e1eda74ebb75f5f30d42032763840c8942cf16cda3257313179d3dca65d4f92054f8b6d0f2eb888252edbbf2584e5b623945406eda10dce7e3c64d213dbd1f526307baf8113247b3b7d3902d3cdeddc6f9fa6947d1327e075f5dfbdb62eeead9d996d565d0bf75ee6057af0c233809c9bea546cb4c0215ef0cd659f16e771eccf9661d80e4084dcc4bd0d1b35ffb84714f895ff187f25e761fdacbb8fa0515cc1b82c7dd6ba87d17aca8edc4920a0dece342c2a329d3d726c300795794bd28b70a22988c00b0b431b47461dec1f9079a71985c97a285a4aea7a52eedb54d1965653c4c07d428327cc301f8ab63987747786b8934dcb517bd88db1ce7cba385ec65500d89ec6b4885eca8c3222e7e7ee8e3df6f165a67f6b6f644f365ed8e15cc31d3bfcbb3cad2f7506b48471b5445350780cbaa6227b7662af83e067d80c1b0a4e6e46e3ac74d64d4ee657ac02940007bf50f1c98faaaf1620cea6ac8a42827aed2b767cdf7b2d3b357b364f615c0aed12286d2a98a9fa492d3e6418e52fef66568035ca0c8a6f8de76d458d545f1e96417594f1171fa54b17f34fbffefb6d0427d7fe7acaee4fd30c53787239e7c1ca8ee2ed191dab15aba368bd9b1f6499af85a4666081a67bceaf8b2827c0e36b52ad897ed9d4ceea5f4698bea0e0548aca1bf81ed3b32d8f40dbac94210e6d33045dfe396b93682ca7c97bead5e46d92f55681d5b73ae22d4165b94506511107211ab028c7dd0c286397cccbd5f3341d40f480424be9754bb0122708c3b2d7d037647406534899a2f30139ceec529b11e0d2efdd0e168f9ac83276ed042f8bab908d4fcc9d33535b14ab4524448ba6f27bc6bfe2cc34b05edad9fc07090e709cf21d1c650edf43cac8119d6702a8af351fb444934ccf8172c641994cc7bff490920e89e29b41696fa4413832a0123763e4b462e8ffcee25a1d90b15baef47d333aefbcdcaca502e77d7db91595ca25c49dbc645afce141bb20d0f15942714b0649f9c876de52039e248384a65acfd44081a82c7129a1102cfa47f3254a0a51b3486826382f6b5c12f7a96cb3b40c917fb77c9da5eb734ac0a862bc914b6e558055ce9d947b66d04867e1168f741b02380315c08e54d637e0f3b01e8071704db49b9e751dbc52c47452b9d96c9ba806333be840af94b550d5e51eaef28176b46b1da730f8e770c134b0428fa5a292db5e857f6a5dd26f76b596c824671f29e14582532e5e8b8f4712403f545f8e1b8728f506ca9aaa4f938b475b4e613824fd29fdf8f53ee8a687c30356951aa8251c43bf217c8b0188556eff35553ae4a13d56921dd037cc9f5c02a33d11442bf22c463d99d98e10ad45857b58198981341289643f8da0cf3c3e42dea376929f81c33c179464ffe69409a6e819410f53aadd778a80bcf197d6ec58db20d36c115a06c138557f52a0f75cfdc13f4dcf4e615340ec3063b0a5ea13eb3b45135ed4c92e475a7e2cc6eeca5904b08aa9bcaddb2e34523dfe8b0d3ed500bb0a984ad22c0dcaa0099a3ef21c61ea3d588f0c42c2354490630d963b8603e03e975996554f1fe71963f2789094a0e189f13f80ef488eb3c46aa232da87501a2300753511a5b15c1211fc1430f317be8f5b2c5e626895bffc4f012e15cd4932c3e4a93e5d5a918915018b28680857050fb443c51ba28ab80f81e84d4bf42a336ea21a0453134fbafafd21660cc197999582b058bc90326931d5baa9c3644ebcf99fcebd94515bd9f24da3e9ec095f54c7a4f9d5834ca789235031dc393b6927da06575921d7dc43a8173ab78d5fc3ecbcb1dcabb10e93821c86c2413fcadafa8e9016cd750299a15590deeab84fd75073cc219a4cfd7eb44a703cdfa5dc7561c06009cc3ea2ff34923a66324602bb25524ab6fabcf2438566292dbe20da7700e87884722adca5c1eaa23ecc7b485c2434c59e9dc0abd3e4de5163884595ee73a455ea1c52d33edd848552e11ef2190d7ae6bf59cf82aa78e97e83f8dd26bfda65f876a24ce5cbbd150c6c4681c3f34bcf33217489818e085aee8aeb2f755e46e5e2fc0efa37205ae0dee1a3f3059100093fff6d26070ab4c0ff45239b9c6774c5a79630bf04fb60f39d912c14cb3fc77abded3f91e9b281df0daca8a6a50e733762ac9ddf05ec2fc738f79bbcafd7afd2f637a8dfd3e060cc361c8292499a5057c368bec8a666be49505e463206f0927d671e8c7d9efae3b2dfdbd344915acfde4efa107d90ab12eabe7fa14ea2d22eb900ecb5d50e24052c6d22fc5fd69daca2ed39fdd9475a9b287d5f655c6efa5600a7a2c3d7212a4527bd73da440efdc3e2b4f0b8129880356c843317ca76c460640272103ec15fdc1d3180e340c20c21a8d65ba158816175dea2d696f3a3911ae91c72bbffe501c036e8ab17747b3127b08797734cd28e28f420d37cd5f55993d95cb3a6e37521eb20e76997bc57399cbd2f0d3a4fcbf991a9424512fc3735153a179ce9f773ba74fc2f12bf18987089e3be22aa04edece367ea2db34853d58fb9821eb3d4c879161002de461744e6a5ac70d1fdccbed48557b61699db6a729ef944e5080e737da0e93b0cb6d9cc0a419a1e71d5f7bddd4b5363ba2103081fa3a94938e1420c47d4d6c59440640028dc13c59b9b451a70eb35c410da6e6d0bea900700173f2799922ee372739076f54da58336727b06dd856cb4aadace3e45293c577743149cbe08f6c4f5338fd5e98d78e922962c3cf340e4d70e305869e9bb3eb5b180db5581bcf3ad561c8d9486927bace386d621bfd8039dc2f70b69f8279e4c997a7fc3c8441e4dc953cbc63eaf515031db87036ee675c01486df1879451e3904cad2cb5248bd549d8520e9601e28dc05e77b58ee963bc5a6e448fe079db1e16cc5cc97bd642f05fd7a26bce8c7b0bb51fe021e466151ceb99bf7190e306332684ea3bb11ac197f9964e09fe9761b2139fd13ede62181a6e01283ce9b68357aeca3c441bf44e81b115abd712f1e1cb4665ad84297caf165f2e1b2c5ee79810eed5f98c51024a605ecc2033d99f44b2a135e7f82a6faf5f14dc3bf6945bac529335af43c3b4462efda7dc680124e9ed4506ea7cbe81ddfb13d9f122041411e87126caec48152bcc1d007b70735a35f5b652330fdd35c2047ac432839e526372fdbe314527f5b642e2540f32c933edaca8e6d052253fd539f54379e9be691cb6846455bedd270dc095829b79492924b9ed49de6974a653177bde0a086fdf32e13509bfc76fef02e81dac59534508b2e80349c345dac0bc5e9ecb04ce7b65b6c883068db554b0ec6a58b672801f2462ac6ce05aaa74e668fa4ea395ac1409bd06345b5d24cd692d4364035055f449816ecd2a95e73f30a31c8ff33a857b5beb490e45f63f00f141c60ae82648f3567322e56c2fd8110e746f203cd6946d62a72b6beb4c60e591899ee41d97d38d02552d2c2e6ffb9ce00f1a3388be49ca70a2ccace9e524cb1e7ab56790dc0374159fa04bdbaa8a8fb2c1221523eb2759e18dcfcda28f0f86a832d4b0a04ebe194f819bc829950d0dc2a257304387cefc143cb1163c44a943ec3d8f0a1123841c061ce57b603a88a0364d02ac499e409c08890802c4c3c3723fdb20f7ec1f622069e7e96e979e0d12a1eff9c7ed396def37daf7e37ec907354dc00e820b776e7e65d1d1e561dc856f8e94fa52454ea001d2d427e3f62854dc3da1f3f0ae17200ce242c58fdbf8c7877f6edf72b26da44aea71a8a6eec5461679b1a1a2d8a220ea48819e9b0db43e98b6fdcb07f61a840705729896788183f50979d1a90abad35e329030ad28564e221748cdc5cb1c837fb88c22351258b1047c2571db2234a2f4e73111682bc4cb49dc4d082acfa952b5cca7731c6de51a3c4b40930cfe8dc7f4f67b43093d70f4a5b38e252bbdab882a14cf02f9c700def4927a6687c7f8dacd847bb067f79160ffcf05774d16905f531a28cec3354cac3dd5dd50e5daf6559dca9ff2b5245272dfebac1595a0dc051c56e372d805eaea880759c7b72a9791fb64c8584a81807f16fa6c043f4b69dfb1e087390720e3ef4ffec71483329d7c20e5458db8484ed9b34b1438192d91eb5e6c5f44df80433bfab089da45dd17a0f074c6157df10d214dce09c9b74ef1e8e782b4689ae6e8563def626d2a8bc5a570b628a0ed9d5b2b735840277de8f200cd42fd1f26a1cba47dcc638f40849247e1db704576a387b5c52bb6396d0ecbe01ff85b2d0804dc6eda844c7a69a6a9cc616c8712aa139bef4906e05b26aba8532c254baf6b2eee1d2a9618fde7190bce7389c1e8dba5a9859659e601869b1d4eb3c53aecbcd5e096a34ed97fb04893c048da9ba2f82d7662465a3cb8757c48268cd432e0a934856403146a92c1c7a0c9c0187eb66dce0b13444a29a28f6a3eea51ae97070d2f5bb19e6b01485b9e724f9cbdee6431a2396abbc787915debd6b696176d390b17d609d5b197e8735d614efd3f81159deb1b80d754a684cd8f49a818701825c1a3bee13b2c4a0491c9f60f69014a308fd82935000f94704274aab02e86201d3df05bb0afd9aa4c3245057626a2157be073fafbf770072a16068e66193afcc47daafcbf029ac6320e8c571a7d5ef9c0b02570c974cb7380a8f211a725ab5909c5f253ad0f74d5745919cb05493c2ebe6976671ec58e33bf0f7da5266c1f1547695466ba868d21ff9801b7e0102019511e95df000b1c3780842343f523cfb91f6c667e9b5ec1dc6a27b2a260d213f66974a32af63e25280a6812a100ce66a4852d620228fcaebb858e66aa03617a2a572d61d7821d674fca361760269ec28181d34155aed4384623cb218dfbebd8060aee23dab42121fbefb31eabd5651ecf5a47dba0b101eb23f2cbb74c4ee059884978a4c920f52e37d6f255d5268d017ad61e8045072e5afe61275a6f5092d57257c0da8dd23fcab7b04508482cf8df55e76baa711029306d88c188d9ee584853de9d28792e78d78f4a320bead26616b00b8dbc67de2d5a3e1a56225030fe79e2e9e33e593a45602d5a617b2e6144885838cb516b69605b8d939f57e5e99aead830a13594435577d28d9d3bab18955b85b5e8c4972e834f9210faec58be70aacb10062c348e2239b72be886fec1cfa0fc5e5995145654dd44a50d65ff4ca485c0261fa1149b386b4180e8cbaf96a7edfba1ed241c8b86b3e561fe1db0ef4ff52c524b8a8dd279d12fd9447ffdc5a55cc1717d0ab07eb1b66289e21094d31690b9e99abf5cb56a1158a306f55396342f28ece254e07fcb2d73f83379f0b87bcfb7cd888b34438297179cf40045aee6dac031dbb1185ae979e19f555a087ffad87c1ae8d9487f1b83ed2871f7cd071b7ed03361b81028e95742ff189df11870da6bcd9bd7d223ff8a17ec66b7ea46580768c60c808d2e96c1853954b0f964885c62ad20fbb3796c3b975ed396f313bdd16828f13010f29ad226ebb7bc188d0d25f7a9357ab97c70cfcc056213456d1ad6ea10e6a38530994161747ada01f26f46d030d0832cd94b2deefa0a3c635cf51650d9822bcba9cbbb4af874358724374976b2d239a8ef7ba29508404719a20b44ebdb665a31c78ef4b35e7935039d4e28eb433d1ab903d437164085d361c6f7222f99a85e02ac343aa891df6a79c3495e98e50c1e6df50b7f7f71cf2deffea3c8c8a312e6a40aec5d7d0011a7ec39b6b161aefe1fda6d947a427efb6ab3da63389d49354cc02498cb9fb37fae077ab13369c0ca99b1a191334c4d40e061cd84b755d16bee5152d42169cb13a332ac291bfe995dd59bf4aa37ce4f723c3ebf8cc9ec7cc49494f90c452e9824702317a364092c30fd7a31bbaa558f7ea92d0a8e691e0588887961a87bb7a80cb67643c33f2edbb6f4172184a9163f75f80476ac810e70ed908a4a4725f187d9b42ee73940c15546262b0e7445413a7a616509d9dc2853cca695fd1c647b80883272b31b487d46d4f6dc2b2f00d49ca02d762400dd8848cb555be9c04ec5f3058a36c3285196ccf28afeefc643eb4811cab11134849601457b3e19d2a7a445914dfe0c8f4617d0f649e1f343043e259c90ac2ca24e1dccf172c4a2818c8b7ec5ea8d173afd244590e8c8d5d5c5c8a64ad3cf2997b33d519c3949ff8cc5dfe55394ac560ce55ee1e045f04c467f1e4e5522dd30cecde9fd0cc1e66701a736be7f28a7b15d68bae80eff9a360ad3a669568edadd55960b36c7255437260f508b4c37b25dc742aa25af647b909bb732b1b73859e4378e7b07d3f54d381622c3d03a962636f491f5652b911e0f2363141f6bd9e5bf02af6807399843c34284da59e2ac0cb20ff7d7b4d9d662b8072e9b6f4b40aa1e882c3b0f191860c1ac2a0f30d430f4f6f615f62f27aaaeaeba0b34a1233c559e0817b053b7c50782f93eaf46cece014169daaa1b8c81287bbdc5c05e43e9ec39d399a78733f842e3b1995cd525c42d08dd03c51a0680226f2f84fccef4116f8dd41472d0b35561f42720e5a9b9a4def3ec0482f1c55e311c6620f9030f237f4826485e05bdbef561715df50e8664923a2fc03f295d15404c4c7b009760829bec6631f1660a13510f792806aa961c2ca13a22d074b4ba39d90d05b3c10f8f5374173c3d5ec63fef2bb3e39ca0e1aadb17273fc511d7f7ca8f58972b90c946e30d908e46e7acfbf1616a59c04195b107769850fed4c3354055b2067366c925c84d8ca3aff0f4639209b0b24d726a72ba0d531e900f687d26800a685e37a4493e2ad45680901b683a28e095b825a87095628ab8817d7d3b70ed93f1959280825e06529b5400cc3b28de6949bf824e2e32ac564c13cb76146748c45d6010cb9ad3c5ff109ec75b970c6a1d9066743596334c033c12413021298176b688a6d1cf3d4bd12592f16a4367df663188a74b130290d245dd21192f822115522a06c140b76c6f58f67805ffd9651c1b50ed35c0d1264c5d70b0318f85686a6fa0663c492ad500e4f6ba84e75088fcabf171398311caf21bfb6aa10f760f501b3a77497d63506e90fa77a38ffd5565f8721fa9f43f5668d014af9ab1edddfe30c3e19ec36ca9ac4860b016b49bc9ed58749853badaaf1197874ee1a9b409b77ea9e450f1901922b1e06967680617143c467ba4388f1d3dfc54027df90e8be63d30c250c0ccdffb8ab1ef281a1097b306f3f1c5e873d175d4d35d059e31d73e86c85dc7a9adca9b9615ecbb5c9f64e2d9ae9cd0d80171f66d5cc84d10734ee8081c088e7a84aa4fc520d8470fd61bf230f2533a7360a63f80b5f4a338ba455d9aaa8e9766e2c3a13a0fd66caf2fb212339f1d6c4ba17b9ee1e9b6c39738dc13641a2213be73f527124012c10cdf7b5bfe95f2177a29228ab08370b761be053aaf5154814c442f3554e983bd3764b49ad3129e51c0dbc9885aca83501785717aed6c4be1154dc555ca53b9764b81da08245c9dad426ecb3ac479a7db229fc23b87b49e90293c3f2d5fee2843bf0dcde6e7717763ca9c3aa1da05eadd41e6df8c1fc45438a518b433dec6e0efab359943a78398464d6973a757fcb07dcffa51d432cd702006f3d0d4861d99b4d1ea32a6645022df5d24a5db5389a99bace9242204998001b9efbc9f2f50042dba8050a94658cb2279d0adbe2b21bd619087889cba6103ad970abf8e83b7671222d6b29012c2a31262c18f04ce498224785200749a0989ffe4357b0b167fec4c97ebd037fe1a48d34124c014d751b339bcbb85563241b0fa53197cce525f041f374db19737e2128585fc08fb2c873ce61516380931b6cd4fc085ee3f7e2fdac1d1e0cafcd81c07b17b8b610a06c5308875521dd34a7d58be1fd294705735baa4c6a989f044eb033b02910917a7763b9bb02c164afc544c1ffdb3a4807d92dddb54312105fd4d1b885f15b9421a6812476c0776590123004e12462cef412eb8466b50bdc7a0c8104aedc039b2926070afc77f3a4d0bef9578728df5ac936620415104776351c99967806d27485f3cabe4f73f338e19395081e1918cd5221899b7262f7bd36bb82c89c57c43a0248a81ebed859b559613a066e34c90fe3c44335306ec03ba48c047be4e80a08e70a4acf3f1b7e2036478de78c4ff78f05dbd3965ac70c83ea807ac09d8e60d2fd03d7b5074256042d138e66624ae64ae60214172512a7e07d3f7877a0375423bc9ace51c07475496debb328436551d2799b63706f38382db60831cb5e8f85b7ff61e06ac7e2b35fc03eca24d80d64f9949c1be6feefcb5ad22d80269e8380008b04c1106079607b0037652da8e2bb6f8a60f94a89a36639ffcd81b2ebd17eea9a560bfd7493ebb278cf61e8a589f6467209224a96c3f023b0afddea1ad700329530568a3d85ed89e7ea52c84693241d9813ee4bbeed16f310e4a3829961511c08209f917a2a4abe337c31bb1d83d13d3bb4cf346d511f424223ab4c0c08c07ca11418a810d04fe55ce0813aa3304e9dab1725906205d7967f155b2c30a12e17dc47276431d3d7a778a78afb29cf109054a85d39459e2c6c759108787c67a3adc5c74cd55b68101939f1218e0597543eb055c7de358349966e490fdd548d43d3ca33ae9a396f5f3556f11d3a4535509336420deb8072373e4c65c22aed31b28bd9157382b40e27697c80b31c7a405c179855e0c733d346b01144469c13bc21c58d688509c24e044704d8b8ab3920284bcf28c8063d4c8f28eb47aa7404165f76c35498fd35e2383fcb9c46a968a64abdeb8a7816f78e22135d03eb1c208f017ad7ff2ef6afba19d9ed01154180ab550bdd0aa444e774093fabdfb972e0f590e268fb8d0287145c55baa281089f28f2064311c973659a82e234bf2b9ac671aa485747e968e99b4ffe4268864a572390deda52b55009024f387a2ec6032078729a29718851b404ff48fd0c15c190612660d5d9b9bb11d0849a0c1acf8b951c2f22cb8ee9705a0261e5dbf70015d1b9c533a581f0bae600201605f6425145b24d0cf5cb4c8061f804205e5c1b02466e25a4294286f814f285dd8dd0c048603eb7401440e3f7686a62ab8a7e55ac0a9cf3f1c6d21c074aa63712b62679d4bb8d15c7af2dce05984781c1115f9944b06538d1d0d6b0e60b110f7a0bec59fd8277148bef374c3d65364f494f5f6c947222f416928216c8132a1884dfd20967a245d55a4e4148f1734f586ff2f80f3674e6285f70274c97b538625fc6b69ecfbb6118c782dedb846f86550f5e9719fd6853ee6bf797b8d4f879fb84858fe1fe09e2ffc788f6abcbf46576143ba6b687e93c14dcb7e55d2d9ecb9084811355e84ac7603e365e63a9c941054f94186ec74b758636f159fbceca6a53b43aa7bc2a80abf044eaf2bef781483a1040c46fd0db08d0832c7a0b9bde6718dec55022ca6e582852c60434725049999f245b9f5fe9693cec6d5e45170fbd732326850808f37772c0ac8b3c587fc9c96e4dd81e424192050eb7c7c2b1ae0ced1c1214e84be61b9b00f3ab92fae4eca9fee03bf676d58ed53f32f414dc605eaf184def775bad0c30b3f234aaee3399f05a6bdda907816287c7e6dfdb2e231cc9adcb97226dad0e6e197310985a473c0ed471bc5a9e7ea5dc013243d1306d0031a87aa60a5b8f6454f5848377fa8cc15fa9014ff623f2215bba7204df507f1774349b33639623eabb3a9a4a2f4926b68a2323b26670a7b87c7f04eeee3f42e765d6fcaac963aa91bac74505f154311b0483404633ef1a5905ec4714d359e5a8687eb1f7da150f5f7da0b872a75df542993fa12a49c23448d02d6fedd32158f7661e3dbaf1b8d3a7bacf67522efbeb23895f530ecb8a0c30ac1166919b93537bf469cc70462572c7d6a07d283dc50865201cbc63837c901d87aa98a1317cbcf798097100c1ca6b908c495af0cb93c42620132965179c9d0189f0ca6897d50bb0550c541a3112251800e3e55d91ebdbb3363e13cb9b77d59e4e46896a4d7e1dba4d0c06502a47ae38cd50c8e0a0f2e9b54f864ae1c59e5a69262a6e6992bdbb1c0023ea19e82414c104b58e6cfe7d21bc4dc49dffa1c35fc6726f30903af0cada0c63e4330290063de42c27c37c5b77e7f53f0a060f946e785b2d4e2c934f452436620cbdbd7e6cacdfef1691d13fdab6de591d0d91fc05cf9e7e2d861738af1874c3085812e736c427c1c50bfc397b22476dda2486a302793866a51a319edbe946625a672b12ebcea6a2d114a3c5c6131deba95378b02a0288b944f30e2793958f7efd4428d77e3cc4f0893c24530ae76b78f9fb4ee769eb4449327e78e5d2d199ac1fdaf326d0e6151427e1ae4ccbd3743adddc351b11c26c333c94c75d9863aa50cab16dea7ff8548d485de97db0bdf8ef65bfa7b2b85b0c8d646ae52029cb7470223f78529293d6a1143835ddf81bb8708a30c839a48d017c58480bca1759bd12e88ca615c114b483001efce5efd6505db901a615d94045fe9138627c00a1e6449bf486c9aa477407d0b037770751d47ad8e310ec3349c3839fcb4f9cfd266fcfb239af51cde1d6d63a86a70087127e8041e63f713626124ad003a7d7df5c868fe18362e27f6a060346d70876860e7c49c3570896ebc4557129baa765d7f729eff93751d88030d82384d112725688fbe36043959c6b4264c603aa2888c06352af27d23ac1e43b2b316e8285bf31c556adf313e24c116550faa907dd26c8dad094d8a84c72dc6354dd192c2492df285d60554690080d7451446a488154ded0de46023f2e5486d5e0fe2dea202a6de08e262538301741121797042137340d5dbf10c599751cdbd29976eac1ef721d2d378d353ae05d41703a4fb9edcc45037697199983433f1dc445c6e038ee1d3936932ddd0aac411c7bb5b89c35a018f913430971efa546c0aa4c5ee23a030b65fc304d46e4a0aeba9e700c4219c7097786f2f837ada98859d9c87d9f571644386f61ba21ab4e056a371a90217d5649d3a2320e4a4241dadb1deea69aa06ad6e92bf550012204543f307b519352a03405421a4a7e23613499e0338134ba637afd9a634851abda9b412490df80ced8fdb5d1c840d6fcf973b1c7ce012bf08afc04f4001a6100dc2fb9cac0cbda27d2de63c1fb6ea4a5e930084d3f5b0a47f25a97e0d45d647ffe077c4701aa09500d8fd19d449cc7f248487b4ec096b11adfc2445ed7eeddaf5807eb2a9093ad996020842f6db1779292cb2aab59a3bafd5c4fd9110ca5a84df39cd88d7ff31728f74999a976d73f5ef10fb403655187e202efbb67c7adca752c8a64a52a2dece450a784c119a1d3db884270a6573c97cec4156a22420e8c985449171662a2bd859137de1c28911c45b0f2c67940f31de8b6a536419a8070ba4b3f411a7bab3952f24e90c329b71e8caf83940d72b87ae82016c392b9721b00e932cf706e1aa47f90d89a41821d0bf826753bbb65b7a4683adaae0fc9f4daceb99c8d456c3ae6a894d4096a1c5e9114dd063991583861f33865dd1af11172c6f4691fa277ea59462c620343dbfff5bdfa3fef2bd13d0338a729d9a8146fde85ce6d116b804c05d452c446264724d8b0b3f5056212aaafeb7ab216f8e569d4264992ba3acafbf53ac41b9c88d403c69853fb1801ad7519c38b3f4fc80b9a3ff381a67183a101b7c1fcd0d66ba308d357d41f3f1e234f7e94b10a07be5614cf6a7e132274d043cbdb25d0148d12ec6642d20bf935723ee35e6970cb98870c16cfd86bddeffe641a1ae7ab6142365ac2f601b533f283281868421edb592b5401a60778aa88003d5990c5d4d7d382a9bf3ac1413d28b5ca5329c21126a38353fd8bbdf3fccb7799ad996eb082489307e6ebdb6128604473da99b5f2dec0871b7add434540af2f1b7de878d064807448d00961528948a2d56ece01d452bec1e414182687009a96c82dd562ff7cbbac69ab817a5bd905cf73e9c33fa5337bdf2973df2133dc93b3fc99f7ae9938e2f27f07bba2746871bba0326caa408847d6df9105ddb6c8e6a9ee4219e914b460354c4af5aba4b559040d227f0cb47236e6205f7e2698f03405b77039a9adfb49b777d71b85294216c84bfc17f65093e7ffa276044bbe13d50593271aa087515ea605aa624fe0f724a6e5e000f06f2a45eba271f92f95fcc3b21d10375f906c4040bdbe0fb2e51dc85f283673582b41423c5d4e069d747e73c3e26a548380fcd2601cd0bd580be5d1e7b601565eb9f8fc1510574793ed9d698be4ba1f51269aacdfd1903f3f012fd09710e464c005bc671bbb7582224aa1813acf61ca9ee84bfae6fe80483002e04c8a116f3926b7f2b53fd553e2c4cab197cd132e97303b89eb33df33b507de56ce9cb97774843c33eb883b50a7bb5311da4e629ccf3bdba1a51186ec20e8ded992d4b4a7809e287bedd8c825cdbb7dc0b8c8e0b95589be30db7cbdb070a8f1455d0eb9cbc98a1692da76e408ea70c006d60695dd25e545cd0a9ab7cf1de7fff4fc316964241486638ad738d907cedacb1eba61a8b1c6c484c50bf6aee27bb6e393e7f311bb1b15a8bd64537cc1649655bd1532a971d7b2ac4d4bf774562815ca7c124a6638e5ce8665d7c88af02cd6e8de91f28734d7c0dea78aa0e6c62789fe1fb678d4a82f6ecbab14b56ef6888747be6af06bd19c78a5012c603c80e76a6d12afe20f735995451f4128bdba1052d1de00296a2922492aaa6579a2573be14e1b654ff79ac42194e5b44c1d84e832430c625924b218fa3dd7f23b9bc40f58701b4027c3c9b53b3bd9f8934de7deb426e4db8b0a19aeae1348398d2a2a57110941261ee3ca484af804f2b5335caa964ffa632abb4c9907ab620cc13165753d1066f37d432d0679f3c775347106196d7dd83a86d7a14b86bef0795fd183330cb067981ec1e1fd3cbd4b9a183c57ca303313bdae0014ee1c0993c240b726e3f737fdb44f6c2ea8bf57ce6c8b0fd93b20ab33eb6ad558c49d424ea0674dadea110d03269bc56097a747e06aac98d923314e574a14ac82f10c5161798a61365cea86c1b6bc6560c870547da41bc33db5d916accdf551e5b7a4735479801e1d1d14ed20c17a5fb94e22a08d6f644e3954bbfc748c5cbddb01541f3b03424e0e76b901c70f7fcec0896e7dc06ae8fef467a07fc5df17719340408b6c8fefbe53f1fdcc732ea9c7d97b4c15549ed12fc6f967cf2fda1c89b850d76a87eaabd1b822a108fe36b57520ba95c7154f94bb15d7e25aaf5878b5a4e3530e871aa354a2a5a53b47932cec93d61ccaebcc77384f88c4dbc4f07bf02d61be9d6afa04bde4c5a5d913e5ca56a1c4ddb26d2a6a991056fa5ad679fdb87941825b825e478af1c286d5ce24b10edfcb0db0e2dbeccb89200ce824391cb0b0bcab78a8169306a289ba1488466b75468765942b3b321db6b3328975d9b35228383a00d2516002e2e99ad5c4ec4dc5b5ea33cc2867a226bdfde8e0ebd49ffb6933ea7b12777dfcf7a1a328edb2d0b36ab05c006be3a274c38c8733f1f1c0c961510c0e8d49051b98ce07fc420ed8c170ebd17b1530e2a8b55bbdee72ab9754b260a24699df026107cdacbe05c87be52bf45a2e532267ae88aa30f45f872f94c5243772a0543effb8571010b42017da7668d05bdc83252a22d889fc42a01882cb682962934ecbc63ceb8a35535624d6f398882421b67d711c520646f2acdd0fe6ef614b925b262640ba24aca3a99bc42bc3c6851ca154182094805878342c0dd9a1e29f9464e9462c4ebca67af309ec8bdbb73b51be3586e025fb7fb1cbd327454494c3b58cc675b1b537e55cf03e13f8348f61cdb391fd8bb120471c172b852c26d9869f89de892a6605c408d5b22ab2ffe6392fe52d834650b52727a8c30403793b1d8f225634eb4ea7a8aeb96d5f0381089c2f43d6000ea5096a030c68de421627f2536688e11b303db2bfecf18ab96c47f2dec0f140bf93546da08505cc61d6710d35623163050581024db631ef7a07665392c2f60f481945c45e430663217da6d5998881f86fe731fbd493e44e70d96d87cc7529b68200ba88b4017fd2e70c30c29275c839e58b0bb75f6477cf8eb0f5d3dc3ad2330e61abca5fb2d5417c1806a25c83c59a23fd69abf10abfc5bd283925cd226291c4f283b241fc0083ac6df7956760e79d0a19d94409411d991bfb459b9d79ff68c2b8d460d5a5bbe69d2887b0858a5958a2edd4701328fc2a62aedd66ffabb1497ce8a90342212568d1bae65eefaabc072b21321e4846169015e5141b42a2175af58238176b5069ef839781ca8381f0027716f7053e4867d4b52f59cc080be88aee976cf8498edf2c3bd1b5ec09c505ef6599de08259ec95d8e005398a6991ee45ff1868908d5da34e3a05d4a324a43af2d119769735a232f3572e510f28bbf8da762292f7ae4c6f868205c84461783f4ba0a31f45d6dce2b667affbd956c8b4c927b070f1947db13a19cad94b270dc252ed7e9823b05553bf9e3aa11457b78fee1da5b5a1bb91cde80bbe910e95086c5f4746dcdc60c08226620db7431aca4a6b0c3e76b13b8cfb4c545bf7c667f015cd17abfcf0623442abf78868e996f5b101cc01108b25e6bb78ff11c0878833d2340a6025b3d42be2e64125b81eb95cb470e33e0315f40bcee4b9b8d7fe4de50fd3e99467d9d2f8e646ada2faa101478a55a57bc00227eb77b0f718403003b352cfb5b210ef72cfacf277b99a02d3668b80808ab2717998580b384a5dc582e0567de8df06b0bcdc06adbab46687ddf6454220be09b3972396e74b9eb4d85a79c738e83b233739c69cfb7782a8f20cabef22fa831b7cdb2d3f095e34c4226d5d52bf1e279a99d429a758935e3d30e07b9224f0a0c0699c6649288854e51d0513b912f222954f507c2d57b78b5fda1a97970f29f60ce287dc0da3cebcca2e0ae298fa11fffc5012a3eef3773af401336e3c156d05a8091787cbaefc5270a78f5136d2bcea0e1a7610612e663cd35266bbadce3a6698f167f275025b4f42d1c43ccb83a96269c52b6cc717eda988b3ff19218ca19d1e15aa9238937d19d71237cc9b68167b009afc476e64e50c8142cd24eb4b6d393eedc90a3d9aa11642fefd7a79077362baa56c99e3a3aad182c4d35da371893baefe0ed1fd3513d27aa9488520b2ddbe54394695ab186c4b5b32259745951925d83ab9050a07f8a6104d975bea43ae540a0ba3da6fc262eb46006f311eb59c5a41dc19b9f5e835d3b8def587648876cf7284f3d8e7ab3e92a609d136510f93b8db3fccced1a48531e1fa11b689cbbce2175aa5b948618dc146b72980f891fdc0a952824e208f4cf02da5e22c96300e84bd9fb065fee697b9a5200e879e47989f77b49b4e6871914be33e80bdd96bee90fcf74c8644a6be9a444d788f92e4f72e87a3f2c296de4b9fd5c406db91e76143d766825dcb40b355b320b54dd29837d28ecba1b2f47c3a859dcc1e0021ecaf67425f45f254f6ed5634702f355c07530ddcfe5be4ca295eab4e941506f605b99e8d3d054b41551fae7e214dad3fd818541cab499843edf772175e531aa892fb7203fba757601898ee2c88553315532947f33ad3827272da84a8fe40dce1802d9f9f3d37383f41636fa3650b1e09d55a9808a3e5d4b7b8d1c9ef108ec2cef8c8a0a8f04ad55000441626b96330438bd2b2dddab03e84c7924d5a77a877ec0f86bd735ffb8598caeae4a2aac0c7b565f9b193abc7a0a4435658d3f665ac14068d31a828e89d5621ec0f132f5c82970c1fa8f33c436280e91047523cc3e440525b123b3bace98f53030c2c4131aa1233e78b1a2ad033d424d476bdcf698fc9e5e8f25f7836704eb9b9467cd04396d500ce20885358e5999fe07b0b84ca565c926eaa2acb85eeddd28d8fe742b661bfa8960966aa030a104fe644df3a1f94e735ca6ad8be9a678c944ff5cf8dabc4e042e4bf4cca5e32ea2187c98f02f57a97f61d313b48ef1f9290ec7db29c11f2f4ebb7623fd33a6d4f62c73994100cdf4c7df4600abad663eb0b761f52cdc5e87c0ce3c6c336d5c7a25d8be0049e161422195f7f94810335947adaaccebfdc3de530a6d23ded1b3a01188ebf673c717912480d494b230f17a96df30f7df7244caac231b7661567cf2d4b6b98f81eb6b8f66a7eac30a47a701e6cbe48b194174af09d884dafb2e7b044255392252cb697ee847630cab7c308a91d0627151562ef6a8d2255032d7e21c6b5b8aa32b1d4543737d69d9afbf6a8385e35848d7149a6331a5c7d023af3e857d3b676bed4998c3ca1600efc72280197616c71e80ab9bc7f917fb264259d4ddaa159f01f6c712519172c5ac29b2a24fcb0585a697844fcd2093ef789e1547091f2075dbc69fd961ee787bfa0a45969b8391bd6c4874476fb9d8524bdcd04ead886f6c605ec04abefc46726c553bf6ce429938104a70ca5bcc2900ac5f7ca28f2679d21129961899fce656e613812a363d41dec517bdca4ffdf9024074774058273dba9fa1baabb44a83bf7f2694e6732bb5d2505c9c9e1c540a287db69bb30f025120942d0a3352287be7d4b2c3e1424338a86fdf465afb312308422fac1cf6d0cdae911a83c87a04ad28fda4c90278d19c0a2eaaba1645b1b679968340a84f2ff839235b40646aa59df7823d8521b56e4d2e52b5037b2b498e8ff39407e44df3e0783457307378e18aa8ab9e5111de5f12c5e70c64691494a5875b1fa36c3507db8509c085b0ce58b91a23494c7ff211c83473428066bca552fa4a407258ebe5dfd3b3c30322831bb6f64bee50937cf1394d58332cb41de6aa53f7fda7a89b66fe6ad0f17908f53211a7f647ba0131f4bfdeaba76cffef727c712aac9d4eeb40c7cf684a013b05c87d738c5c3c564665a1e47d01d50e0b5532b9442246a792caa07a7fbf82ef9eac24ee39f4d2ffa235d2bf75a1500b9229808116b8d11b6d40ce8bb67e82058b9eac197793d398c171ff9587058f1bba33f218e35c43b3ed5819321ac788f4bf8da326741b803eb9a4c937d2700996072f6df83db063ee0f5c9bb271c930b1cad1e8a621c2854b9061a0d8385f28605018f5b99934af9208d547d67afab081b534c3da1d3592b87b0cbf3abfe15e9d87fe3ebf287646614f9451d1baed977f9b8e3d7bec28c6a08fd7cd5759e4307455f1caedfb5c9d2e4edcc93d3f59ca803551b455eb344d69b39e064a2fb202673320cf40c4b145a8d5c0fbe142b067503e8d54fb792d7f983a0775db9685903f55d55e1eb9e9ee9a5b084d42db299477132f3077d5383f48684f60f9e40aee7e57aa32321164dac666b50764a055c9d5ab69f95ffed412c517ef6c09bc6903c4d69400b5c0ffa0c7bfab02b68a4aecc7f291b430320001af4b196590dd0144ec8d7e6ddd2d67740bf7fcbc83f8f1853a4722adc45c06905ce0105a52afa95d49d360797f9e33ea386a8246b261b16f942517ed0fbf1885c6a58b4be078cfd091807ced212970f22767b79a4f0883022fa79c7d139a993405d19bfd9634879b714e09f6c3154fba306fa3b2830a138f1bca3af418f2ae0e3bbabe99bf03e48263236aa842e8c788470731222276de58096785ce6fce38ee2387d38a562fbd30e944b8a5d86314d5b019c04d5b54c8593b92217266fc4b1aa6e0d5041425d038b2a23a78a779f1ff1a0e445f2f23e740292c0ee3f21953ab3c81a64187f24b5c49c49ca3b976003096b5e5ae0bf8630744add40323f6e96ebbed25016d06d6d305af9511c044ab79310ba9b080f87080feed0fc3e4458ea5056954e53aa3831c0a15ebc8aec0df30eb6a539567bfb43c47ab9c13bd60e521994cc27ed79112be1eea680235250a27c20c8de6609ee53842533c525a2982ce6a0fd5006df4b228cc9af84a09cc199c8d8db21b8b478f1608fd032c826d875d4a0239ce63ff6aeb314d0b2870761d31876078000059705c856ad136fca391e488302298702006c439498c9220cf8069237359507d8923a6395b88fa82a95d82076271fe58006792c0259cc933fb8c8273dcbf08d51a48cb0f9219fc9ad34f7e398e5cfcb46dc739680a9e806f79057e5132506a0322dacb413c8de673b1b594556afdb319afc50a70361ed5830fdb7cf3f1194c3775d9b835c22e43382e4f2440786700153b510e0abb83aed1cf0f9adce94e07e00321fbf63c0ebb8a169f5006562633820d0c7dd7b17225bacc44a3e58b3f2d015e5fc478524a0a718986519d28276604dd731471c9b153da407472a4b4b3b67131401513de94f365f65a64751cd080523c4712298247df8a8b1ecd74128cd57536b33178213f0d2c3e50aecc1822eda6cccf7a44f5ec40762dea894219e465aa725e3b266a30a0c67b1ef4188d2242cf238e24653a89645a7ceab23018958c3bf35ddd3ae6986ba552e24c950c315f879c6eae4157d7526f0ce6c6d97364392e9d8b630060eb6b7a7cdca51751bdf8195368465e47d9e417cef3c47fae9a07da749b98350e0e76723d6b4a478cbc6111465003d3367e21093cf7e86c65ed3ca3375794d086fbc1f58c2835ce52c0444170bdd2aff1a2b2fcbcc14136e2d859b95ede4612bd588548e491b127ea2e01ad15e3ab2bb2de92f54e45af3904af0fd476576b9b6d78e4a1b086b6c6b9a343cf117257ba1b550a0bf8056ddeb626889fa375e40cc11f4cc94dbfe8df1aed71daaf18f7cd1e9166cfaefc3fe61b440b5813fa40f59f0f37e1f80f3d3ee552bcc1aae752454cc0e3ebb2dd48ea1f4671556e489585899602759c5f25ebafd7d28f4406f561e0fd720778439d10a211c2b85ae8a95fba3c33b29a252dce46e26cbfc1d8a09135945b2d2a8a0bcce303b8309263906ebdb7ebbdeef34d6ee7365190fe32bc47dc258ea006fc7086044a3017ed7ceadb0be2796bfe57c3a3ccd1960bc229a325515a7c4642081b7b4ff7dc194ab7d0bbc3981c3689b7e322e00bcd1d785c03f49a7e6fdb5680ccda8b230733fcecfe4f841e3963f3f57196613a9069e30bd8cd2f8d770e57f0a630346c7ca7258562d705d1e9c61db43f398135ed363fe1b0b9f6a5ba27181f87ecc1ab133879dd9491262d9aa330bc43a95d9948bfcba2acd45374e0c44e2edaf1597531b523034e447d9812d27233806ac61cc507c628846b6d6217ad82259c5b18084ba3bb6f27fa9785cbd496fbcc5bc3fa3af9390cad105a9d3ca0a27bb70ab4f61712a7cb41ddc371e23994685e20505e6cb1c00537eb962a0b145a565f3b40926dbdb425bdb36810f30a9bb9b07a7c483e2ee39367bbd109738a77bce70ec9e8c70cbaab860be02326328af1ef92667666924b31087c9769f54017fdd964e3e1b6548c413d6f1094106c7859540bdcf09809dc49acc90a908ebd1fa10918ef04be6a7eb6387893158fa5fad557278f60e4283fca0d0a7c38735814d2eb0dee020a11b8ad5cc1768cbbaf233b5ceb52ea2b4847ab4fb7ded73fc170088631b3ce0bf76b0c8a66a64fb55c40204c73d576132556a804ae077971f148d079098dde4eec0ab9132128e52407c4286f6783f43ee7a3f042c672f82059faa2ac8aa6ff345de3d6585eecc6a11472bc2339947440fa7f4831d71f8498293dd82e1c218f5fff4da2750405fa38ac301c385aabecb886cfeff1fd9c068fee521bcb2d5bf0b580111eaa9152b3bbcdf0ce437ae47715ee3026935cad34bff9c59f55ef3f9bfa69cd71d21361d76524922bbe559c246263ad6eb717ef363feb25070a71a537f8cbc75d19c7a525ca3b86a765d894a69fca2a4e52304babc3874ee9594c8bdd56480682eb42f2d5b21515236b4c9336456133f6fc625e99a8fb4b85ddee56a09844121f5470d37367379186130290d7f824a508e8873753c6a4916bed61f428c77cdb30390b86625ae4cf9ab289b29e4bda06ee57da81ab9f92e96eb3496f11005b51f6adfe2fb2426a60d8d97d6ad94ce075693c59d5a182d0a60f58e0570d066e7fac5da30b27d7f8cd608c93c013fe5daf6ab6947eee674ea5370c3eb25d4caef2452e4bee9e46a55232fa54ee12d7105735768ba3e4dfe6f550061bb7bcf83a5c3afbb350d17f8038c9ae3da04b1b28054c723ebc2199d64593b7ceb88dc9d6bfeead47c6a277eda76e064d8977eb4751d1b94bed39393363796873620fc07b29de2dca4ae45aceaafbf6de3d570415531c43caed48ee233c1c9615487475caa18843466dca0043441ecf8215ec331b6bc7af98d67d46ce1e5108055e713153dcb47cc2f58d8cc64023ec3e8565ca883d76cefa77b74a52c2ef115c2a73c431412a7821c6f2412e8cf618a78fcbf1568d52d580778e2861b46991d4e8db903d751edd9692ba12395945c1431ba01b05b002c113b1825d131fcb164102a6b9747276474e3623171a6d6e81876006941dff4047687184f1d51d40276d67e9b89e3fb88d666139235408a296878279115d989e71f17b503230d95fc908547fcbfbe80672899432d9f73ca1feabe5aa691820a33253f4ec82810d99feb22bc4ab6313d11bb057f9de618012e33d261e1a8ada9b20ddcd790380252c4fb2b8850d50111047445da18c60f1d2a55323e6358255bea608753943954cf818f6ab0c06325e9157f12f8b9f0a126dff29928f59c593e149d01f5452c551a2da319ba54a2cbae0d6acc5994c8b6c685366f941c4ab101085b3fcc84ba0fe9331a1016aee65310184342f208affdb27743410d7a35382d2d1182ce007bf17a05d03f8e46f10a342fa8575aba8a8c771ae4c3338c75cadf71b12bf92147c3a7f321ad491f50581a8911ea66e381a9014294e238ecf9ea183e68f84b55e092bc6e810790e2cdc05b3879cf7767db58cfd1dec6785f268a1288d68381242d6ad999f341069023f8db9251e825a920475bf777b050ecedf152c5d0166f550c6df15685d1164fd5186df1548d911d4f9518dbf15489b11d5e9518ba89d16c2aa054686b025ee0293714b01d1e7d9ca053036935d79ac343cadc894e5f0843d5f4dcdeca435b6512a2838c3ccf8c015920c35106cccbca01f036bf703f1242eeafc6776a7f2f6feb1b6afbd84fa9e07b0304e90c12bc1c8705e3711a5d79298ec091b4b4466d99e90643a96ac65305041d8854a5dc68f77e5e0ef6793492f8af77336924fabbcddfb5745db5969e4fb98a4fa3a5f66f2141f5f7a6449b0f585cf9be119de43fce4a6d41a97c51ed480e860175c7400bcb3092d988a2416672e08999e31f4f4f902788265184447ba69e9583f19bdcfc8977eea06f54237f6ccdfcee4935809fd4e022cbbb5f59f159ac300434949526e73ed6e29365eaa4831145e3e5544fa207e0eb0582e20493e7072fdf5557cc914b5a9a73566115f97718c8379061e85161db465ad5169ae1a14093384169058e428c1e99c165f7a3845e506dfa5f0292b94466a21fe85654e0257bbc5e6770f6c733ebe51950cc9b6977e85f54cbc66960ee5b1a725eb99a8e2ad111db455ec24b675431519fa5d7d966128993f58b53fbe703acb8c4e49ad19daa68b6830241d7d2112d8b716fc3c42eed41944b5b1cfd6078435088ec102c64b32a432141b19ce68403d22e91cd31a8189f20c32974e4ccdc4c3b8078bf1f8bbdee7974e28a0cc9b55c3de9cd7d44a1dbd898696176e6b01398de1b4e70cf6abcb7a1f6226d4152eb387b58e0cc7f7e82f64521aa4bfb079e606ca1dae4b6f88c131b5cb442f6fb44c3d7566615a1175b42ba01a0c76308bf15b0a95d1e5033760ad8f3991be9c91f74bbc19c3f60b46d944870cd603ef49bc72c8abd46e1cb2a420c4d4ba6c820e227b95027f9ac60fa1f976ece0431e48dba4544471092461310eee5bb539688aa8405237d2753a8383f4bc9e2eb154aa6ef861aa6b0dba98e5370f4e2d86fd8ff2a4c048db77d979b70b09fca9d68a0730c587baf068296fb23affc26549eac5bed73b13965bcca324f594e16aa4649805164ad59989c0201ec9250e1d41f44b187bac5a0104b3f48831bfdfb36a18f971f1a86f28f76e4e1d6085d760da3c2adf9d489b0e9587f79685fba5a4516ad8813936b94124b15690cc233d2a923625d2956ba1b161b2e8c17bafa1cd9ec37f5ce42aa6a6c1aece3678edd5ffa7f10696b9462c76ee6757187c475abd8a15dfc6f320546855f7e64b60e1296edb9471084145c01abd9b700cf69462473e7b08f090b4b6aec4e20bbc21cdf6ea6dd76b598b50d390a1cb82fc87b0f1c5ff275fd2bdb69583ff97348354f984c57376133fa7259b89c3e91f40c5b35b9ad07f7b7bb4871bfb663dc4fcb4054e3ec8408a1c8ca9ae933ba00027e823cc28aaa012e5a5aaa22653c1c3340af1adcd2032c0ff3a0f079eb482816f1ed6c43771bb5496b71624e8da4fe756ded327e75c1a6300597bfae3a7dfb9ac6fc939bed1477ecc56dca29c370ca78fa8d104569282a804e3c0b3215e750c89705e2a9867de5a42fe50eb0a2d9ccb5f2fe4deefc0b799006af9e2979381a5e45c34bb771acc8b1a32180468908840cbcaf845fd95e0537079206d26e88545964145372908cdaae8eed834b6fff827dc9247d34cd7c792d31723c16e6755782e058f97adbdc8a5294b462e8d7d246090d3d2aaef62f77422c924ef25a13181e2cd0b42131ffc0723d6a33d9541198f31a0c8c41ab06c4e4eda9a626652af4c0ab0a9c780535923e44e4b06c5c584a47a8959e1b6e97e3c98f42f4b0de5a3e9f09f1a7dc028d50c1f221de1ac336033e5c04bb6e6c5ddb17b4112ea73c46631446e53298c056c62154284744c295932f094f8294a3ab01704f2402ce75bc4661b96ec6f0e699b60e75bde0bd9d9348354eba4afea01c558e2715e885eb5ff4c6772160add7863be2cf2635046f1f390d7b9b71e25571bd7a142e9ecd395ef5ce858cbe522e3ae0bf108b3f7efa5d9751020ea694449693821c66fe9caacd2a59afb340aa68054ee78e1b39ec5105a2d27b979902caf9e5b90e955efbd330532e95bf8499b9846bdb612616deaebd5618961bfdd8627e0681ada4b77c4fb0ea3ec643027df0af2b6e8927ac2006a8f37b383f065245837b80eb2878b479842c510c2e3c8b4b0ac7044872edc20fa83a3c9252d4fad8728cea1e6c5ee7629e7e23b779a3d7ff40e8e9911216c0468da18fa1f61cbfcb0316deab88a1ef34abf47ee3e1e8ec484fba09168a0f85660df6450ff588e42353798c43c2543baec5369ab6cd427b33f233b95848460d3a75db8a12296cb133837ce96266c5c8e228f83281b28cacbe163dab1387385451edccdd78c14bb970cf879a1750d22aab62d5dd5c57ea2d730154e7e4ec09da8ea15729d23dda1444024625e66efef593ececd704500775a269b0f431903a3b6f83d0ac3608a42148a25230c7093ed8ae4680dc20df1ccbbc9df5aff56c5cb333e187435400b44dd2c919d7a178c3f0c2299030b0a7efc3167d4e2451884242d547a83dde02a61378a244b414c3018079df9c6143e7a3615b708958b60bb9b4b6518a6877b9b850873c8328ba6236fcf9984ccb368e89b807015f74fa0a80de0dd506a61cbda39bb3700988961f48fbd6067144c6c335059ad497467978548f9ebaa6d201aa42297ac9d85a682f7a456ceadd79a3206d2dfed581865c49b16a3ee462460107ed8cd1e11f7e222271eb8b2640bf84bf8a8241b1d839579e3081e33d24ae0919573e2e0c179f0cb40608f6602661b4013247b316102f9c299599c5bfa0c9e3ab15471a453ff5bdda75a72929e93d1cbe111fefac4b550966fbe6c2a2d2ca8dccde31dcdcc8189fa64336c7f304c6c2465a116b5d0d40a0c6ae388d5c49bff882fb4e90e1bf3648e11b9f6d20699283811de48de3d5f1a70f90e14158b3abd001b5d38acde7002f91eabdf66993f668e607bbb261c2ceab158f74d5e813db945f1f312ce8ff88e3164b5bc2600a999beb0fd8f7cb45bfd1a3b95cc6cf89db46e38264686be43ace4012b8a4796e3291aaef33a10b74b54ceefa13332e8d93bbc0614612ed5af6a3234ddd5f51abee93c726664a35a9172e71cb10a983160214d3922a8656dafcbb968001706c47428419eb21ad298e817a6b6b40ed1c08e037ebc40176b63fa6b6f71f18d2547aa89745faa0319c3f1c69e1612142edcb879ed9459a06f3a64f72fc0b8aa03377984fc2a2006042caf069a550584cd1cae5a7eb37c74d876c483da4f1074492c0adcf441a8dcd4b2c6a13366d4ee74dc686ec16b43bde595ba2f801aa8f971ca308367e5c0ddf428780374a581234bd21a0648dd38fc3f5210e0de6d813f42a7fd62114bd6af5ba6aef0681c9a0e4f5edc3240519e6f9e6ff9934af5a92111d8d3456ef1028e62515ed4fed47017491d04a4012db3bc8a2ee64d2ea8f325e0294ed8548df2a31d326309cab1c08d9d3fa394eea20e5856386be3085d6206bf4f71b6b1de94eaaf40f8e5e6a2f2995652b86096c2ba3a335867c80bbde26bf291dc92af5e87861332a385ecc77ef0ca2e1d6466360c3e82a828f850f419cab7d4f788717600164142779a8682316ebc86171e6448e1c725162d6859c46fb066e0c028c6358e8b441a7803ed32056983d0988fcfef2c20a25932655a269fbe3f4d54123266f2014a34541577363c6939ad92f16cbeabe02cd88e8fd03a0a015ccb10d94dfcd7c9189a1d25c4520d900d9c66d0ce1268ef20b338f28f71b1f633e24ee11e47773f2c0fc63102534f790c17862f97966fdf61f1e402bc2017978a71ea211306839cd42e6cbdf9c304164f1ff02d7096a2c93e379eab4d4a282fcdf9e2c99d64b2558add3590d057139e5309ead0f85b84e7517afbd8ef9c8a2c5546500101fb6b42b142f3658471e963609aa1c235ef885d893e09adc91dbf8de2f161305f546556a0c796634c2e4ce8738ef3675c3f8a32ae63ca8eecf8bf380a69de58dde92fdd681bcd7f8cbc2cd5d9a48da2e9f422cec80a5a3578687bcfaec368ffbaef3cedf4013d9a4977734668ffdac75723e3e93b22a5b123d8322e3c218cd44dc567049af7bc81f42b963abc8f0289d154f8e8a3a093430f123927102ebf049020cbe9dea0e4ff4e505dae21d0a2c3b62ad01ef097ac1e04361bc7fa300b60b8a54357bc7911f382dcefa20af8d257fa615412ffc5a3bd223fd2d2594039e3e8f2a2918da44fca1f1112b8c1e255c5e864ed4259704b002bb2031f981c485f4494be4a615568f509cad8d35e134c4f248475d10ada9ba46fa0eaacefd32de91ddfa21fcc2372b5c403732a898fd1cd2b5187e9107157c2b25f5af4dd13034085f678c8314e12c7cd88b933e928e7e4884994afbeaec4f4015788221020ad63a323a850f1e305294274554c1bb93c513b8aa343fc78cb708055d17cd36187617af462871c5c0081b7c8d1101d5b8faae48dd799dd017356890722c4b696ea5e464a330fc23a011fe3dadd4433550abf7fd0cd9acc34b7213457f557e48d0411f74ee412feae166eb6a9c663d9d664f5a34f87e4e17c4f2412d2c35ebdd898549c9ec605613d2abd74b6ad39ce0d0534ffa976e377a5dfae48432d0dc14b5d83b29e1700d1801d4dc150fe0a7c7e2887ed95697ec5ef652dc1cec9ff73986ded6864cab4ca00832f4a7713747e7fd9ad157e173c99373296aeeea73afa4ee82e200e53e313f4f29a88221dce81e6870734f300a80abe3a613cf6deef8dcc6b37a0551e9d7b9e35d417d9574708f4b2ccf4fd9019958bd6763cdf3565084ddb48228ec05810ac10b06981544bb8ce04c730220aa14754035dbed7d130404e64b6a2f1aa6205c9b404ce9bfc84da7c13365b65f8b3ce592ab02c0e19e1697c3b9cfc4b8be6acea2952998abd62bbe7d9e5d0bf8d55ad80404ea1dee98425881029d2709f739901982844304ff4c0048503fd49349a0fcecee5cf3e9b2f48420adfab4e845de6bf3e55a02deee2a023b02b401f8a40b8b384bce23f53b94af0d49deb69e9bbb7d217ca886b4e9b04b72d08ec8dcc934c39fef86509aac0bd1c145e96b71900e825d38fb16090c55751dcded9f26078a08b9377ffc42fa10b044bf018440831f2af46b00309a1cf130c317332eff071af3b0e7e99755327a48824197ca87a966ff3ea827c76c4cf9477b2543fda14d24516fd9067b7403dab544563f07b4db5318b8a6ca12ca6f234621da3b7c76cc0acf167374caccf2251de2da8378d15dbda89c831f117067ef387eb1d0a185705ab57c3e6384576f074757e4588048c0af03829ececcacc0b04316479b28a2e95b6638c01ab845bcb2e4a1f31c44339e0f4eac80d26c1f981831e02209e8e26e0650012278368dcec779ca0760cb4c85f67046b025de2de07a36b3c4b0628467f832dd1e2a1b3dae8964d9f79737ab973e48be22dabbed1840eac35796ccdac0de3c1cbcfbe1abd012c62dee49fbe86f76febdef00d8cfa4688f499c14d7b818a0aed037427a48a20c1ef4e1c8c319e05f4bc16a97c0f5044ddfea28554e9b4bc1df754907dfb5e3029ec7d82ec10d6706fe7709b97bf64525c454c5e6d69acfe8f020be833b8c06b5c99fbd4ae2a49ddb953f061a83f6370d446fe02be4a92c7583cb364330c03b031ee2b84923d7d2f1bc6242c8e5334170b9c03f1c61c8cf11c65e29f76079214a59702a589ffbf9900f6745dede6b1e70831876c34359986fdcf1a92ce8e2b19b43ef556f888eaaf3794c0f116ba0658e0a1b20062c944cee63ed65d2a350d8f60e03766d1fb79cb16b6ffb405b7d28ee222d64ede22f0102584c8795ea128b1bdc602b27b7af150a07b90691257a73ce5146bc180fa545f9d2c10ba0c28e11a4c4a9b4b7aca5e65f01caaab461eaa031d106e58e21baf6d5c8ce3d3f8768c434e6c203d318e630e76876d1115306be191c23d3381610e44cc8403468551664564151a0a7aacc8b2820b6c7dd3068ef05d9f766a1fd2131505d30b09b9883e6c12da3068815213458694313c32968bd1b4009e782b6b26b01f620eb45e5fbb1c2ae87e6d0dfdee5f84feef65d62d819c6df42df616d5b73a75fb136154f92f856ef42d7c08797479f3d3e20b36f35ff92192ce79d1092c17252f3916be10fd5ba460c140d4055fe238efd53bf6ee142a8ddafd0c3895d6709e9c5b844dbc496ee33929d8f6514e51978b02855fd873766d1f959aa2f4b1516926634516b8fc9837788a4563397cbad06386d5b22a77d18e22099e419e02411748eb48fc16319ffcb7d7d36866831c3df9e1d35520e0386c8fb2e51627aee1f2d1f2b8bd31648e6bdebc1917dd5c0257dc69b2f9d3c7dcd56ee0ff81064fb4c008a889a107dc3d8bcb0dd59cd3a79130d96491cb885af14ce9554d32ab8ab2450523ac1aa9ff48bfb10be6ccc0933e5f15b131eda9cea1ff5cb3f1df7ec33eb43af3ff63d352881d6bc5be9682f9cec412d48e10a31f3c55ae61353d03e172960e8f220e20f0e4c883e0f00488e050c510a277c37e75aa6bfe743c954c5dc907ecb6ee83bd22b16f424c621faa8972a895b0c57074bcd33ce9e7e99a9e26a01fc20d9f3d18bf969bdfc19fc34a68fc1d2e543ddcda06657fbffe278f6da1a4b6b699af73f087e4cfd00b2fb9b5e0abe07b833e4ff7628f72a526628330bb8a370b940e83f845988a50509a3dd7835cb82030d2ae90a2bceac40d5816e3636bf7b6dc1bc37d485c3580495dc27f79144ba7f896c4f0a820cff107edb755051da2bfaf864e4154c87de638dd67df2464e2a7b1c2db5969501ebc352baada42a2bcae830a0aa0b0782559ffa1d0881c098ba59c68569061e4920f67d70dcf3bb175f72b4619ddcf0b721b7eacd6c6442fdce473adeb09a5719317a7ad06bd36b1d5ac252922baf8ec24dbb52d35581124d499439ca196093a03e9391d1a66607e0351e0a8f111ff948e47b3b50bcbb83d709556870beda1f2752ac5ccb1cc1ad4351e7dbbdecc41bd42304fd7d1d2d2dc6369ac58e1f475f474537de3e2f6084bdcc3dfdcf4f0598bf4743e27c2e91a4d6402f697d7fa5fd956872072ac10e9322e7fa8cf9b7792d53cf914247b0c3ef1f76c1d89d66c573cadea75983ed66cfeec48d07d6efe1d0c454cd1b6b1c1d49c17b348ce32593d13281e3db979470e4e905defab1b95aa2864e03b1511979271986ed887ab09a8147e97fd87557786ba92fe5ad3fdbdf6010add255dc9817404066ffbb599f2a89516fd760fe04ea537fe2688cc52881a5c54cec26ec003e92196fbdd98e479c0fa072f12f6dc67c207700854dadc129cc8eb81d7345223c04337251f5d62cc737199d04a809c8072c8a2c8d3af58aef47fca569e66697ca418032cd126d666985416ef2e11419d2acf38f8169bd4592f3ec16acd12e0e75fea8fe1f62585f63586bd4dfed0c02d5aa88c1d1cb3d84592a2ffa9b8da0dbfa54eba0356a114a7d8db36b8e94cc2a09a704d3f71ecd2c36c33c0842f9082f08a20630ef8f677713fcba99604d8ac84c784668b6fd5304a2f9ed4915018940ecad4367c8813b04626f782e6f40e1632cc005ea34ad570786b2de53f0022370b16ffa64a1a004979e5b4984cd22b74f804c6e4468db7621b6b762bfd2f1bd7b6a8a5996fde009fc8f858cc4bf5d2e21e00d4f49349e23cc7a7f594e2b2715afb79102c3556b1407b2e3b371e3d4040e2537433d6170ed43c9b99e78dc936297083c4834b12ef6837a1eff44e54b817b09fe3c2ea49e4b78a54e6587877d9b2b27a72fe03b9ba88e9abbc3a5f6d1717733963a4effa1081816992bb55f375deb26cb515aaf0ce0876415bab880a07f611ea4badf212f52e56cdcdc3cd27d3a9712eecea5a02fad5e72e591e2715b1d5b99ba18467f8964b4470b0e73594aa5b58b9bfd74ee5daacb4c924326b7c9a8a0b0b32115f7d005473a599c70ff66021c523ff26357fafa8bf03a355c7bd30197da52ae5b80135ff7df566ff28b2c9b56159c453f3d127ce5951ab6232076d80ebb356fd577f28a8867d45537647d0888c535bc50baec8d854a1870c4eb57f3d5d7b25889c1f86f5724e404026b2c950dde126e27085c1a4a2c5cfdf34de8829a17bc77619aba434a6ec96b85c5374166c6de8db4aff42ecbea1d9e0b5a919e70e7cfa0a1bff162a6f10ffb6ac5bb0f04fd5a2baf1903b71f4f657f5807c0375cc469040adc9bbf58209a19271d454962da8c292cca9545248ca5aa0834b8a094478cd72dbb1cfe314689e1a0ebc454d821ed9f8a01104026b108b27ca51a7a2d3cf13511fdcfc3fc169057b1971a48dd9adadf8c20b546885a2384ecbde5de01df0b400c770bf2d589caa432c1f23308740afa33a7ccf983a59379843863faa05bf558820f1425044f48187ce0d7dd2fe89fc7b80be28cd9834e06f1f0e055f8127e152303745d5aa57495528180802a152cab144abb4ad931774249baeb17a49568a954a294d210742c4e9a5c8c49879813d892edb1dbc0abae499507aa3c4fd51ea89aa2a5ea93bbf13eb92237e06dc80e6c2e568878418660525e02f0c8dd0420871b3a9ae82808b4d396654c74272f743f56382a065f3178c10e3fd055f0dbf3e7dd0c44a978a03b75a03b75a4ef5bdd748d2ae94a30fe9612ea1ae540f7e22e4b74b983366b72b114284e9714ea569e08a344c7d2956e8f92dbf3c2f4497acb0a3c8926917a8316c88b4b81b61b3b4c5da01692e9b1591e78cdb3a92c5607b50db56d9a26399cd26da8be99aca9e5284bf1cab6906ccf8bb7d8cdce2670aa537d7bca6ed7441d00bec30e20084ace86774f9a4ed68057402d2996065dc01d3eb5d0b1fc2dd75c5cbea34a37956e42ddccf2ddb3df77297661b93f56326e4b4a698257dbd6524a6da04b5d035d2a654f5fd91d2c00accaf6b83738d4cd4830cab4ddf4ec79dbbd6fcff10ee6639694e7b1d8203f2c903865fb8f6695c018f1069ee36ec41f41c0ed7615227e0461b5acfe64d6ee05b86d73c90f3ec5a45494a7539d6ca6f8c513558f0ee76f488cfaeab1dbb64d3b2207eae0b675913d1ea86f26d3c581fae6cd3774e0bd9bc19bc09f9e4d26f0a6e7984a2695696532dd9c3acbb5148beda02d3a0864f138ee86e5cacefbc8eba0aee281b7a7e8274124fa64d6cee51fa87aec40f0ceeec54b244bafc0f32ed6670b6f8e5962212ad59228f0eae60fabfe63ded9bdb8a59b25deeec5030c103bbca6271b3a956a9b6ee87207c917b6a76819f35b7cee2705f824c0e7003e2f9d348bc667109f974c9a35a33467ab0797b3663e2f9f344b9ba1593aa1850e17cdd0cc2636af59279df7549e077aa04a3349bc994c200d5803044d2fbd06cddc365b3299bed9de3653092c8125b0048207e2a56f366f25d5c16ddbb67baa1d705841e5eedfa7f6d9aed2fd7beea0afab34eb1ba94ea5522927c1a50d2c4d0ec70fb207f05e2946f6b0bda43a68bdd7b4b6959e77b08ac54aec35f8cd8257d995ea323866816b1ad4e61119ad37ef3b321d6e57d5cc221856695d659c23969b58b6cc8912b6405952672afde8be726dc57650c7622aa5de6253a93cbb0e277512cc795831adacac3cc69587b89b951653cb4b2d07ef8a95586bb1a97b16b438a47bd7588eb27907a3a4e99ae9ae7278371dc7fb0e36d90c9e0507fc6907833fc81e58542daf99240b73adb716cbc33d1b71cae6631e605e024b25afe48138fc7bc49f8d585a09dad2f779345e0d0fbcf75dbe060d085e9bdbc802f9c14527f1f71db4cdf1802979e03df849cfbbc7c3a588bb9130f7ae0f3653ecc3419b7d780f979c0d1f6e9738c1c7d18a26aec05aa3ecf6edd6ccd56b1a65512f95262e65797ae44a28d3753a539c75fa07198429723c2e683710dc36f0db39ee66ab99a0dd6eb237ef68287b7ac9aa6e8c399d2ed3aceda76fdccde9ca2e6681b792951c0e0dd7ccede26e3c0b9e044fb00e385a41022522d00287385a2102289807a770b4c20459606d6e350a8532b1779b86c4de05bdc7c82022f6ae4c87a0e95906e7efde5928269de5d974969b653078116743e292e9e053281b3b6cc91fcbcd547238392ca71875734e28d2d5e96cbaab9b69c5e07f9041a46ecee9a87b6f2e07ca6bc93ba79bc3f28a27c7a36296fb83ec0194c1de0fb207af6455f7ac6a7483bab143d4298743c3e0fd41f680baa649ce86e92c8fdca9e583e31d345d2bd9d435d9d821f8c89dae0defa087e3bd740db429161b3b2c3d7a25d3ed7991da9eb2a3ab5ed8b6d9fe830c22e2edde0f1fc960d0bbe695ac77cf964c67f14a2c2f59d54f162c95aea95462b9e7994af74a2cf73c5389e5e66cff81c59477583cd022c1aa11ea1a91b9e46e6a48aaabbed204a7de62050a98c0a96fd734b955eea6bf209908d69938a7e5a9bf5b9dbb0072bcabee1dc471fa76f376c9f150dde301da4c31c87271985ebaa97463e9279b4d1fdd00abb3bca687f05eba5e159d77f032db3d8bbaa6a9eed98c84c77657a56f371dbccaae4a67b9eab159abd2c551fae9a792677a4ce991bb21f10a75bd2a3ad5dd2ef3c8f158bd74735657e9345edd9b755a00f6e272fc70d52b8763e592aeba99bbb4c3ee9e74caed6879eacdedd86e96b8e5a96b2d3627c129d5b76b9b55598a63e2d4b5ba6d46606f52c9edc897769875266eb93903d9b67137fd148f493bdc0e5eecdd4cfa77f30e4eddefa47f29fb3d48b3be3bbf9da64eba96b2417e3418ba54ea35dd07af491ea2a6b1592c2f5d2b59d469bbc9964c3858de42b1c9c6e5fd645726d33575b5dbe8d6a1c9847ae9a79b7568323d723c58eee8a7abba397db02f984f8fb967f157366320c70f077784b6476e63956e325560079b8ebae92bd5b5283bd081df6ebab9b1e92c2fd99ce123f8c5bdc7f65efa0b1bdba5f49a6973160f7bd788c4aa956d0e4763d5cdd90e7e72397ec0b11dfc0ede22de9ec15760076f9be9268ba374b56b5359f0d3b3f97421ce6273120c5ed4cda39fae4e6370032568fb35f387932cc542d8ac8347b7b1f9081e1ddbdce1d163b48dbb91b9b2ab79e46e6a5ed33296e28dbb1171cd2d8204eb48fc8314bcdd8c04e7f4f0fb2cb1ea1a699c9160fb91f5aae8ec7bf8f61077b389b804441b976b72c3c1071bf1b5d95e9dc638f4702d1e00e08392109a6de8b6efd8ae7a4d837795235e75d5cd613d3e626db2a1bbf9b1862ee2edce39a5f4600a4149b89c5c4e5c4cae27ae261dceb041aa742e36daf46029d624d7834b0ff7c70e36da001102622b81a592278d904c7820ddc10269172090b04d29e338c0792ad9b61e4914a08b2ebab0a129ddb330df2c0f072dc7ddf0708d071b3023988f381c18986b72e3c14a1a181b310fa5db416ae8729cf213043238e140146636ee66e6dacc0cc775f7e47422cc7cc9f616decd1021cd02ef79335662c9e97096bd5a1dc6fe6144cb182286eb92e224074608f9b15d8c0934743f801841a4593a9486018377db382fcbbaeefbfe98981ca7703740e64a47f9f61cd5c167d59b8a0e278743757b0a28a15ed94015ddc06ba33158959c40d5469fd0cb8a0833ef5920417e34150d057c53f1b369d2fbf61caa9e02b4340b202aa0b40c93cd4d059e67e920951454346b8bd2ac18062be20cf90454a96eeef0066e13c80828005a825532aecfcabbc4330918a4414303aa3ecbd0650aa4ba2653cf0bd38df03eff4284f41ce2d5419b33e405a73ee405a38234cbbb39a9a33eaf695a96a9be7cacda9e43ac52e5a47efaea2dafc00e069f296639cb419b037a2f792fb18060cb41dbd2a25279a7af5e337f7488fa89c3012fea64adc4da0b8b84c88bd42bb0834b3f792fd99ceddeb5528985e5963c9b7ac9a68aec8075bc4b1cb91c157b1747ec7065757f7488233ea1ee8b17ffb1fd00d2e1246da7abed76d04f0fc630c9d072d4299542a14010044110dc0e5ef59a19b9d12975d0e6fe90d451a7dccde9dac9ca6e2557af5ca7c3096563ea238b2375991a22df599cd4b7d45756a7712a47fe935f996e96d8f4b99d3e6bd6e99be9dd3593ed2a1d14d4999e3b688b2cf1aa74ef6e364bcaf24dd2cee646bb6ababe2330bc3d8358057ebb2a853a1db4434e5f9da2acec5a5a46afdc8d885b5eb9d36b1a6529ae992b1bb18962165be4083ebdc5ea343e7d64751adb387d7b5b9cd3b79b22f25d070a7cd7c1860c948a0e8fdccdf79a7eb1f1517d8b0eeab0ca183aefa92f39829419e0fbbd5de673e6d9bc83b3f792ea4803bdc429ad27120b25b9a598601215ea5f2975cdb362e84a47f128dd1cd4bfe7a0ee59d477956d293afc8efaf79a066ff681c16f36bfe0ed5a9066cdd2c79261958a02dd3ce4057bffa17936c8d4a2f39ee314204180e686b79f4c31f0f652a77eb2a01df28251b7a7e82761e83ebbcab15df5ed14b0d7e166d5495ecf8bab7a8b76991da48ab8b7d081e153bda6bfd0c97f4b84d044d5dbec51ec795245eb8a9207ee906f708810f01ad1e17c1020de6b7a52e10e4556a240a0b4140a27d4097de249cb594adea717ba4c8132969b33ef5de804701d3ebbd0e9f0c8f1c0e120916681374b4ce44786bbaec3dd87bbe38e5ea13aeae6ec7473c7724b37bf34b9d0952e9d22258b2ef79355e82edfa0451b1d7dcd1eb3678ab33a848e9e72382a97a33e3b66732a87231f7a66e54317bbb97ed263b67e554f71bdeeaade487b0bdd5feb9c4b683146fdae2d9e66f431eb51f2c519db1767748c30a1874237a18bc61eead25dd7d641b780067df96d8561524a29a594524aacca480c6b92c381e1be31c248ec1dcaac0a5d3c0f087e5670022800e1148e555c51056b242d72387a4a3709f7d2fbcdd3aced6659baf66287344b46d1a245b3a47cd481b98db3a46856b679bccca259f276932d9aa5c309908b78971ff01b5a1acdca3ede52f8685666009066e51f978f3d7ff6d803e3d7630fcc711e3302de3de61e978fb9e7c5b3c7dcd3f2eb31f7ec70211eb301dedd66028b66e51b97b79dc83da0a4d2acdcb37a50b3728f0e2fc0e3238dc7d3201e9fcd78fc06c4e33b053cfe23e21900e7f118e3433c9e66c7e36b681e5f63e6f137588fd721e3f13d1af0f81f0b78fc919bc723d1c123d31280921f98f0614902981c600a4c458dc7cb9f666509a559b97bcc2b8f9756342b7b8f99f41c8f97539a9545c7f1785965008f597bcde31b8a398384dae4f0f8e6c1c1b67c0610635b3e3c7ab02d9f1d3cd8960fce8b6df9dc04c0b67c8470b12d1f1c5a025c655b3e0a28e229dbf27180bd2d9f0c2417711e2905f070402a4504909b1d70055c24ba226e5640aa081e44f848e1f0803b8405f2000b010b0410dbd91d4052403cc001079252c08bb848642920330e440a0808dc0cc4cd40fc01a9ab44ea2d1f07dcdc630fe42ac0be887b95e8e12d9f1937f7a43e0388d48138112a227c9c876a88ef50f1a0a10ae244a8ae12aa9e7b1e43dcef8879cb87c6cd3daad30842f520fed9964f031870946df92c800818b7e5937de4218e83e28143040ab5c3c7cd449cc745a21be2661ea8217076e840fdc0a188db80e1a308180a8021c3078c0ec68d0f948c2288b80f148f0f7191c8503e58978192a1809b65dc2ce345a0ae12a8b77c88b8b907c67d9c078c0ff1abc4cb5b3eac9b7b5067c9405dc6777c3b741ce7b3f19b0f87e69bf98eef2af1f5fc3836fe1b1edef2a1b9b9e73bcdccf7999f6ccb270108388b6df91c6047cb6df9641dd9c68560c11162070bcb8d8e9b771ce722d1d9b81987c5861037352e12580f1c867861d3825bf0102d3c5a7cd0d1d2b5601dd8103bae8305e7362e12198b8e1fee030b8f9b7db8d9870fc172956079cb67c7cd3d2dd7f102a7e536947079cbe7879b7b58fe830f2cf7e137a79b1a17e264737c91c884903909e037a7abc4a9e7c585c0c1e6c5310e578900bce5237373cfe93202385d0037d9964f0e1c0cf0926df9e0b859dd964faef19a8b44966d8428c04d09d7bce553e3e69b0b7191e86c6e16a2645300ace62281ddc0c106785b3eb9e6045811e003580dc0c60a67e5d55875ab01d4c03c1b37af5112e2361789ace553c366e55e09e766ef66ef364a5789d25b3e3737f7ac5e031462751bf02a81c35b3e2b37f794bee295ee1d5f2430dc63836b32dc6322c0077091c85a3e051880bc8da93bbe486c5809d35b3e3537f7802f404800f003b84874b847c96dc2ab44f8968fbcb9c774d9ddfcee359346103380a09961c99011c00f3ec4d81cde839de7c1c25c24d22687bfd8f900d81d2e92b6c9e12e763eb43a5c24d32687dbf201408c713b8a0ee371b0f3d762b7b6fe163b0c5bffc2626fb1f5a0c5beb2f52a3b7aca86fed9d15136f4931d9dc5866eb2a3976ce89b1561cf5e53d040155be0158b2541091572803b3b51a0812863c0d25e1f104210173692ed19dd56e223bfd9e6b117d99ed0edc198f4d4db33ef93bc837522202f7b48a2ed7492951d9aa477a624dd1dd08e61cb90a7428831c6cc5229a1a0c566456aa515513a8ca752220c941f2aa690e24914503cd161bc754ee9a4096d49e373adb572d289254c2891ad0e250f92233a44860831a2a3f47e9162d7e7adb5333a837408249bb9326cbafcf0d143c78d1a3534683a8ca752c6286727e91dda2a0d48200904458b31f274a2591d994829e5bc31ca9cb994326762153f5858c233e50f175b689145fc7e6413299878a267b69f98e289f7d133d1a647b31ac7c734d64b9ae544ffb415dda4a3c0b29960d94fb0ec29b06c2858f655abcc27d914ddcf17e552c229b897e0bef309fa233fa9344b0b9e6e354f87cd93e514c945b34ea5a7c82933283b42759295b24c8b32a3cc49e79c73ceab46dc4ffa868e0e65a9879c825b4a799651e44fd7dd04f79950dcdde3c6123a1d3fe68cacf76ece6a77f347baf9f5a39bc398faed669a3c4f391b8d459762d1a13cfda9116524b81f43d1ade95086fac98c82e56fe8681696c9211228a38004c27d6bc49f9a664d3abfce5d9d781d5202d09b153b0c42779cbf70ae01e70f7f1d63e7afbfefd6d0cb9b69d4761bedb69a39938a2ef3d3e279ea82e77da88934721fed31818050032c6f4dd322bad3675b47a0ba04051bfcc974ead789a133514a1f04fb85519d2a8dd449052db26227459d4874b3e851f4d0a3cd0f892ebab1c350945146aa53b1ec26b44965ba004937907073316a6ea36de8e4e72f2538f482a326ba421401f4e64925cb3e118eefa66c00eaa6e0f8a66be84cb40a15ec49954e4e201cdf92d46d61f68c413da31638624163116ad79641d8903dc858041c0f000cab5598b42515e8ecd884177a5d1856319ad5194e9a65a1502856518b6edc44184d0700b6ba5d58968544dac68d483c605b968562422cc4d1c45ca2aa51eeebd1a5247d1ded60b2d026b5ec85aaa193a2ada3db9645980068226cd3626c17572537ca468f744eda210c296f0e5dcfe24cfd15a254ca5c535e128bbfee9cd87cd42e89bd74182f994598d832daba892ec6acc3a2e8e6eef26a899a264b4c9f623eb0dbae4e26e6a7526f96da244fab2e5cd9bc92cadb62a94b269334b1008025c2a4bcadb4752651dd44976597e9a59a68f649d3d0c9f727b193890563395da7b0c3785a51957e33a5da32b9ca4a2c5b9f240a8b9e32afa068e8e4bf4e4305c1d7a9cdc734c678f371b441748f76e66414bb4e32a5f5a7a9b6c8e1d067593dbde23c8c21618abb89177d1b161fb1500a9b5776a7bc97cd1da60aad32109331c2e48884eb45a58f32adec8bc3d64d74af3686628432ec12d1d5163628fbdd048e972f6884899f2098dde882676ed36f39ae2d7dedc526616c7d9778ba85dde8193a9982e926ba4a29a594b64c6a812b681a494aee46f6ec286746b99b2a83935d1786b515580a86611887d338931b1d0335432727499e54868ee162e2cf180e10b2e982ba953174b92b954a479e90019332a9e0783a06cd64a2d36432995a4692966197a66955a313c482341963d6755269f3bca472be4a192f9c65db9d2a2f2164e10c27a5434cd3c6603218cdc4a2d3cb18c4a571339b8926a6d91023136b8ccafdf502bfefaad14718f9f0f5224978b0768cbbe14c18d7753286737238280e4dccd91aad1b2da39f0491ed1977a3dd1a2a9de4322f74211a9a2d43a1500c8d22c57287ce192343d372888902a697508a685e56a8e28a29724993214419638c3146296394523eca18a59432462979e88a525a65660bb33ef5f5594e76a3cd75713762bddb9d21f87526baa45914d39e39dec8b0eb3ada85de1b44e86868d8970ea58ffca44dcc7a55db211c57708ca733ce286a4fbdf4525e9ef9950f06348f0dbd3cf3ae8a9036f3d2665e243e0888361b8859d8c8f3c42c6c8ab091ef2418b4285b291c87900410ae220c5270ace20a25385e01c72ac070059c352b5611062af00aee6b240ac417995d708187c42c22bd949702f32b1cf1b27930bd1498779503cf9b71222642812d68b1005d1cc211a0c0b18a274c79c1710846e002cbd39ea9f966808024d074911f3d26ce5429b347e42217b948ba554acf3cbdf983c17511d774bda2c3be554a9dd232e4a710babc83bbef2ac7cd137082eb23dede376fdd560b3de2acebbb7511b77cba0fd72bb63aa5597d73bf929eebbb5ba5d4d7e72a25a7de3ae58a9f8e926cec905629754a87320fd9e64f277a95d2ac2bea14a9dd88b2a645a7366f984e2cb2ac57b48b1c9166bd55ca0c4247ba13a84329cfd3f5b5f7b6513cb7db333fe74db2d9f888de77c88645d74477456bfaf1665905ea5ca9542913085d8e3f4073a63621bac84f01cb6701cbd72f00cd99689345ae4a8930b24aa1320519f09439a5bbeb50775decfae42a45d22aa5d2634a30269a1585000628581e9b0283d233b2054f30279a158760842660a6d9e4e38c29913f21c039c4946c98122c5f6933b9d1a4870b7ebc20080c843c41a459591ea109969741a84e2c6956ae3cc03c8833da0b385a71058873fc895968218373fc41c931489ca51317952ba84aa9750a1cdccd6874c308330afbc8e8126975dcb7e718c4b5cee421fabcf947d02ca343a4c37e92de0925913bb36a540842c10d8e40825aaf2bf66037005dc4314675e29b6ac0f9d99422393a852e7f58c6ae99d372a75667ee682bf78e60efc60e576e462231e51eb567569b358a8ed317c5789c95c79a9e16af748e76d26b7a8e462befe3ac8cde7d7a9c1e6999cebcd1381c8d49a64beea6344156f7852f589e7237941e46f6545637b97a66257eb35697a9679f37bf386a766f392a87aee0a89f37cf539c1dec3dc32bf1daf0bec2217a3c8e287ade71e2ce0a7db5d93b7703748f43acdc744d6e2ba36bda111ef3d2af785f89ae0dedf538f5a2e3d42bca478ee0f998bdb3d0ae3fba5e155d5f9d69a237a77bbc39304e7526a65767e2ee52183948a79f1c0e182faeeaf4e6964bc1ab7a733b523b52cfe8ccb81cb93f57ae89b65196ba3903a12ddb412f5db959759db9ba7907677775d5c7dd7ccfecea28abc2ab2bbfd1e7cdaa6b994aa21e391be0471a7ddaef9dcd4770f7ef2b4faddc2cf10abd14d5e378af9be8ae70c48b8e132f9ad3765fe9b9eed9152bf17cea97a55fe1f0be729c951d4cef0ac7cae97156b8d339ba39dfb5ef6a6de3e8b3f3916b7adade733d779a1a6917bd6d673311dc3deb10b9bef2d804083dded82e2b37f7b96724b15de2cdddb92a3222f1688e6ecebc46ba36afd9585959a111afac7ca4450e6707afbcafea47dfc1de5dc58bbe83a9f5de967ec566895770280e8ae39d3e5a1cde36b2da2387b3f2d48a8df8fbe9299b93e01dbc5af90a473f1e6707afdc150efa95e3783713c1a99bb977576762ed2bdc77b026f1f7bd667e9674b25908e6ce62f311ccfd9b33d4a6549af31a91385870d64832c52b2b3573c566a73623c1a49e501d691abdd3d2d0006364bef0c5f418dd076e1d9e1b5d59f144afefbe72f30e5ec9f0f43e2df7c8adbcc8147127d9887bae6b93bbe1b0bc3a1367e3b69b3591c8f660d742a18c89094e4af1f56da1a3b7f3c0ec39a53b2591b58236d064dc0969f3f6fda470398279d4bf8c4641fbbc9039d3a7272cf4ef7e7346bb22d4cd59566fa422ef87a78d909965353d4dd009991dc0530378c635e09963196473f4a4e39ba7941022738645895c32d2a0b07d162bdf59d149b67e644de7bc6b76e591ab69958d362cda8f1fa95b4343131f0add0c60970fdd0cf8f8c0ae6720f4beabf879441e25a47f7abc6c365d48d01d1f99127585cc3e51c12809088930335ed145eea6c8eafb2b208b9c4e7f3a3dca8ade6fd5cb9feeeabb3d4277757ae83b3658e83efa2124a2f74fd7877ce8a18ba46ad2ae4e97dfb169bb3add9fbe13ea4286342b26a18a169392ce14d9c2708e4152c97c52851653c0592e71a2841638cb261feaf483074f3c570708bdef23f4be487c4ed72e92eca19fae0fecf222b98e65e07abdc866c0c7c77557a76720bbabd35d1da07fbd08f97a9d5a04441b966ab58744dc3ddb7dc5921eb91e2cb7d5eab28b5ed3970d9669f3a379d27c37a38d90e93283fc6861af6f65bf2eea11028560737aa09b1dc89c2459d969da6d51674bd9fdac76cf963de7a4731ae119564d3dc3125d644b0ce5c5e1184a9c7370ed1bdf338bf9d24ddffd3a1b9315b372723732ab3488e8728c72a3593a7acc78c58fa6d4521a1dde1a1a4c43690731c1f9f419a54055c9139cf04405590035090194afa5b4a00c381f67314218c112274e649d6346d9a31ec9ddc47b77e85a9dc435dd02cd470f1df3468735669d351dc6d0fb33449f514a23b3323161c4be6fce5a6bd5a978f6c466fd81b21884e38c2ef1f3523c392ae9dd8e30bbe79cdddddd545e1d899b1a81fef0f0f03c61f365b1fbe20c834623d39146f802be69db6049365da664409d05853211c63dcbe0484303c73f472829d5eb25922251a8e523a312c48528246dc459b372b8b514619c76af140a755917ca42215bfad6bd746c63b1a6189ebe1a2c37b29cad6cb75add3cc4a4b25b0c4faad76896ea662298e5dda56c16c393cee9a9d76856eae62398e5fdcfd2189e32c9ed98f87b0d2498e57d948d313cdd9a6631d9adb99b127582b762638749da48bbb9c3a29b658fa1a881546ec7c4d96f64b7ef4317bb357474d85974f5fd1acd6a99d046eb4f8e89813bca8de9d23130a53f6e807304ba3155928b0175829c18c5b02b06bb688c4c675796613d5a12da64574c5fe6a5ebad6939e59c35061a9531867d73d792de4687f5d4f65c97766b975a27a574d2d936c0b4eca295d56c120a893ea16849dc27dc9f4ee69329c5a46232d19f4b662813cde6a21f238ab9f21d7b8ee8d9b3e85b871c0ed1bd5a087b7f955d74b0c33ec9f469f4b77e27c27a8b06676b2a993ca2e7c983fba2dfb4d8ddadc32b8a0e85a29b6d34c3a66d8ae475041e5cdf51f4939e692adaa51eca1456fc5c11050b29594cd102d7b805aecf4d054728a6684297b3aeabd101d69bbe9808e52fd93679c02084ba993af08bf1175c6570a5119ff5ccd62ef5b1ab6db318ca224870cb9594194d8d9e192de1e1e1d1804dbd690aae9d6370c50110aef5090ece80338d0f574965532953075326868632a17bd875fc692d6c5ba88b516e74c3f1aad7d434ec0ae3df21b5618772ce18e386b3bf342b9b99ed5f7ffc8cf10ed9f0fc411534c654267ce4172caf550c7b08c3b07e560f83d6c66ce80abd8fddc7965d2f3ae4a50e79a94fcc39277d69abd32f7d4adfa743a02ffd32040934a25532a9553269126566fe3c51454a219dc8297eaca8d711242fd7c8cec6302cecafc33fae23d3453e0b1d993392c974916752258718d64b26a21d702d02f7bfafeb32ca809c83669bc3711cba404d484698fa9a9ae42674ed8ab21bd7846e03712d5a811663d06c6b5aebcb457a0dedd31c13db1ed2a535140a89eac18df60bbeaea945775d610cfb2fb87de03a925b9c122386fd8302c9315af41acd12613753dcb7a6c319ea7ea1fd826b072581f3b1cca494198c3ab4440dd57a7c89ba0ef737e79591627a752aee1e683146c67ee6b19b378c4989055d4217b1ac82dc425907854e6626e862e20c0c77cce28c0cf717e375d5b442172f6d76e72f7b44c5557e66d80f0bb06bda39d1761b12733ef2761dfa90bec46d46d77470fcd7ac79a5fd649eef3adbd1d0d799be8b3dda211b9ecf6cf7859ee5e375ed5409dd76eea451165d7c9fdb2c0dc17f9bd714aa3842942aac00147774b18a2b3081411cabb04210be3e6d3cb545305c0409fa24384698f979b391898b1899da158b6038de2ca3cecc14477c3d7dbdb888bc5b873262ec395fafbf2ec65e3f6f4efdd661671dd622baeb35a7be0886e78dc4d3e7d4cfd78b1325c7e345304c9f615a99a06114c3303a69bd2257e426741b12639a48bbb61832e108e2f87cd3730c1ca9c9d26897f9d9591a126b72a73d633a77bb6b225b43239a53b3129b6ccbf4256e1342027375e52fcd5ab9a61ab1c9b69220627ae921f72843f3ae6132f628e41e61b41b7237dc6b26c9e61dacd1d0a8117572c88649a4bbcaa15160c3dc7dd1b44f118da1c6fda559dccd48b0487b0cb51b8aee4b8793c6a4e9709e4687f334d40a1a53ef741d6acdd9b3e78d59bbd93c35c8942037b9ba2e4c4a29a594524ec16ee8d0d103c3b0ee1643d7fd9afe2135ac267bad71b56c0c3352f1d54e1a4341b51aed1c4ca7639f5ecddd54492b9d618817752d3a638c31d22b74d2c96cf9482d46123af9f050baabbbe86687e7943dd0a28d0efbbc9481197a786ce825a59fbf9ebf9f38253e67c674482f2d8d91b72774ec1ae57260cfc92eaf6538b63ff1bc39bb11893d0bc9f44ce8f431210bb60bc531f4f3fb7a645f97bd8666353aa4177559289336646fb40c7a8a84aca6437a6b7448653aa437a6439a96414fa37439fe6ca14bc7cc9765d9bf0e2976df217d83a1cbc00ee9b3c7f8e64ccded11628abf1fbb3a3aa447e8aedb65d1085d7cce2250680b32a803f531c607cadff0d133120d4faa48624996c1325a41676c1619c2f0c41631f41d4a8d5d9479a75afb7538ef8ad67483b48beef72342179fbf08449b8ea0490c8056b0849f14bcc18994288a332e599bce49bb4a7abf2e765f16f954b22ccb4455ba8e30a2d0cd599665a26fab1ba06ce8faa1d70d747dd19431a956c9d55635d0f5b32c88ee60c61e0f630b8dd60bcb42a24c44eb8565212c44a59d4ca1f5c2b22ba3f5c22a56453ea1522f7a55914f689df1a70aed9c559e96dddd1d92212644f13ac51e3b0c91224cffb2a22eba2344b70886e3753309777cf6ac66d305fb75631631ecde385d9868940bda74522ea6ac314e259d3fdad78d024729706c2a707c22bac477bfc10952d61a92dd72ca39eb9c95448a33ae391ac51995725c9c41ebb6c519f3d270cf684c24caa1d085e539eb9c75c638639cb456cae262186b9d34c2cc3bb1ce628c31c6186328c3442dea82169b25654b396756eb5ca269dd6ab55aad56abd56ab55aad56abd56ab55aad56abd56ab55a2dd38decb268067a2fec0a1c8f6152703c354397332ccbb24c1b350ca8121a33554295501a8f34c11289132c913841c2045325d20a9a94b2bbe7c471e1186126d763dbb278b5c07106c94bc639a232b39840b5d6ebba32ba5501ffcf9465d996519e186178f00bc2d1b4c9a08dbbe138ced491381c89b592575ae94aa552a994d2caa069ad4417af45ebc4469be5136b6dce6c9e4ba6b4132af2499556a2cb198e6ad056f111af6c481c6fc412939ad668b15995d2ae3289269f75fdeeeeee6e493fa5a4934afac99ce1ee70cb7e91ee501e3bfd7579498cca7a8494b788bc39f4197da673f63f846c7ebee8a03132319bf68e46306d6ce4c338534c69b53b143b5604c335646485e9cd7986fb5286ae910c4bfaad8b15d8c1fdbe3a4530dca324b4c97ab24b233dbda8acd2093e82d2faec3232b1bcb9d29766d1f93fc1f3319a55b1945a841d9ce59bf2f0b46a38bfc46d92905dd8f8c0088a5c1229e514917e87b624428bcdeab249074a6394b5d20c7b56ef1f67c7d4396ba0492ab179a0c89e74537c3f8f12e28d064849b68489166350acc2132593822350f61c4393655f3b8931fe890c60411a3daedcfc753777a4dbadd1cd19e0a2a6b3a0499a7038e2cf135854d9e282c62c769acc08858a8e81753283c18cb2fb2bf5c61972a7ca9682169b45e575d1ebf28ab123d12d747252d9f7a5431ae3baef303e49efd4a64858810f64341a4ddbe69c73ce39b5ad7ecd021f23143d728fd165fbc8c6e8b2b97c4a088b900780e365c499af0811ac69ffe64c96c9c881eb69b24cbb8925e7e02a1fcab0cbd46dddb708125c65e28ca67347d417152a18010ba6c439897478a4654c7aaa858ec83c6285b48cf9688374384fb130459e405bf998fd7991c82820e10b3c364892c8102c61041e9bd947920415862cf0d8cc2349429d78828acdbc3ef149280ace10c5a6af8ffc8e4d92963eb418436a37f1f415d37ec431709f761d52263a39457775db35477d4a47d73c66e7bcaeed0a0992cd67dbd442f7d1b38cf40aec60ec5d7c3d6673e2abc43e391bf45777e38874cc921e49b747c96db2bbb58bc4d9e866dc15b2dd2059ddeacdba2c74f49d5d3439d085ae3d674b60557ed3451ebb34228cecae2ba4de2058e866044a4277b07919e1890a7830839a24215b82659ccf5ec4c46806b4cb1f31866ec8b6e174913fb0d0bdd143a3d8b317813dcbea3c765735da64580c8d282626c378b03ccf9c5955f94cc99c59d5471becf287ec42bf21eb65941fd7bd51e97cdf8833fa5ff8b2d04d216b42cc95578685a08edf14ba262001779f0a919ca2c3fe6919fdf981ee334248b3b0e718a45dd99bbb3942bb344d14dff0838526ba6a3645b3a8e84b2a728b9e911a008a4380d204f714dc520bdcf20adccfae288388387eb6ecd10505876ebe111d76d8f5df9c8936fd6a3f0f74f4761dc882ae8b0d4ef8cc0f74f1924a19458e26e8e28c88a5945fc0320b587e8563a79e5228641451545e12ba1845fe982e724e0d7cb467866cf8eba84629add8c4e6f57a43bb8e7237d71cb2e15ae9a5c086af9e4e3027d90cdd0614138a8ea259d7fb494bd154f44f43c191e69692c5708b92058efd8305be02472b70dc74b0e831dcde1c0e8ab5ed0816c5186ed7684301c5e4724cac3d6e9afc95d92a563c818fa038b7942a1df6b3a882fbfd647e5fd701a117c59c6cb27221d62cc3b06eec1d0a6559c8ea501ca2d865fac04d1b7159a623c5b09ba2d36b6bee66946362aff348975fe948dcd5a8c8f66cda26b5cb1d18d18d3ddb43f6c668977ee56e1e4a1cfaa689280e856cd8852e84134386bb11dd1851f650e85287ae72600f3d748d509c5d7ac10e9be259ad4c8734315ce8e4734c4dd23ba219228146a97d99b466d945d9cc324a29ad174d18435e703dfd00a5b5522abc9768a1d5e3b18a2c7081e7656a7c2cc102cf9b7a46da4459ca9a1461e6358d740a862ebbf7958bced9234e473ddaccf2782c508163a4d0d4e41820325788827347034f13ce3b47c408a39365f6082345305c5f4476818b603a2b1cc7dc23e66e4e11d905aed74886b16738fbac9cbdac0c8d96d922376a582345b022343231f5d9af634778ef4eb247988c4cbc72942d720473d7aa5d491860f9021cb96aa50b701639e904470e23d922478a6078e59ccd319dbb96d9236eea2d82e11cd4eb23b7037573ae67b81e27e213cb35327176f3758b60987bbdc9926c4e77495fb1d9bb45304c7a96fd38bb462626fd6856ad3ff7f91e51e0791fcda238abd5669291c9d923b0932eed1145305c6fc67ebdc8119c43ba520b55edc608d3bdeb48b7dacc66367a8fdcf3c419f7dc3893987b9638e36e7673ad4590e0ac4eb0c3ecaeb2d71eed5a4f12db95dc66f41861483ddb8d11863b77449118618ad4d34498f92215d8c1f57e1166be5e5387a4db33ba32ed327bb66beac768977991a55153a35de62f0e47e27a0ddb64d7e18ce9f0d7638ec1d95dd54b277865236b01962ca8d78d4c7c3d93f0c46e110ccb158e0cd767b85e529c11710602cf98661999583e495fd816022394c009ee01472338518666ad72cc5fafd799781280feba4626ae57e7c2b5f29037d7cd1288878707575353e9ba1c5b43319bce6cce396b8c898539a5acb5d65a65953da56c59ebcd145b1a1d4a4a7f56f0016a8558eb4334746fa4221ab70ee5754d34eb14dd101643b7665aebecc2d6acbeaeabaf9edd7376d9e7ac99146156c6b0c366851dce1ed1a5d12e73f6a45983a1931dce8742a1be665fd7bcfaca5e0e6ecd6a13d6d7187ea0b002dc8f439ca48005ac4e669af3f0f0f0fcd8c41f1c2bbd9d932570fee22441964093095d7cdf3c44020d914053d0a413cd6aecc3e363646868688fbfd1ac8dfb88e495be946a05b6f0340bc6e365ab59b7d7097a1c9e65130044f9048e120a1c651438c6182515b88718f32ca1e01805472b708c8f39b03ca21e05100a2014c0cd48700e97ffc1c6188639c41043275fb20f1f6c8ce892c5001263ff203d5810348207fb7d4260acc934e4c5761d9100d86dd3d9c166d911174b63984398437833121ce3f23ad818c31c2e0062e070a3164c60ba059e57a2a4cab5b2255b49b8b056f2481e9e5b245cb460d8235594bcb03a5b30d16289042d01ed102d9c5859215498a8ac11593449d920310472f2592031a447591da72b28164fb0581ad185de64a1601aadd89102cfcb8e468d92a5a1b9e15919191d2bf625ba642f3ef00cc31f241b23069091fd837016048dd8ecf709c1d3641a22b25d472464371d3cb318d2ec0846af19437a63cf5412bad349e40e09239981f696444fdaddddddddddddb4298d41d3475bf96824338a6e5584fcfc9c512469c94393262a50410a52800214306172821398c004252881134e9080042318810844b064490842d04413200001134c7ce0031ef040073aa044090738b0c4124a28d16a2591c40636a0010d481ec9d345176f78831bdcc005176d68031bd8b0863554a9a20635a4210d6840c3165b9ce10c66304319ca1014047e3a14771b11dcddd4a1b84d1b8db16d109bd25a1f638759cb88a757e87ae6e38ded22a56d9d39af4d1ba35de2435d8bd27718e3f33b397f7e80e5a38ce9275af7d424ba9ce1d6aa6dd593b6256ee3337ab55bd69958a4a4e34eadd06ddddd1ce53826babe111df6b568a3437d84042b9ce048051c91900428180949f8e9f4db462d1f93163ad44fcf99cd12afa0be72f3677586d0a1fe1d75ede272a03efaca3d9b33facab5d257ac573222b187ba67473da4ebf40ce9f43ec96eedd244e60cb5199d6ec67285986e100f74d829161df7eddd9c2179efd2fbfdbe42d72bb74372afe9cae1689c3170c52b1b8d36b0c3c720d92ba77ea8e42b18499b1a654ccd0c0400000803150000201410884442916844a8aac30f14800f8ca248784c1748931c87611032061963004100000040860668140a02dc9200d57379a4ac196ca5fb88b7af5d64008ac9b8882b7c1d99403178209922970de1f7445f1e7aa8ab24fb0ce8b51c7383fdbf4919b760c82ec1e5bf1af2d59dd0e7915c09059dbfd2ec16e03df931cbbc25f9730bf35565fa29a8b9fa5b191fefd507fe70597dd9cb755a28d5ff3fa90ce35127681de82432ef37e8a55066e3803a2e49b4b44c424c3c52a6a6a2152778a28917263bdebdfa2331a1662315b3a150c3c522b6aebde5feea333061aa81a98ee1a24d63844a4f160e17d06983bbdc9a8acb935bb888048643eb284f0a14a2aaed52b848f564e405801684f10980a952af848bb44730c76b9d35805e8d857f3282529e4f223adb220648c25bcc6cf908eb65fa9b854a9042e19db56c087caed06e9dd2f3adcac5bf2ea26226dbcb7ee29dd280d75d9b4fcbd14db269399571b7078836a8da17f9fac13fcb2c26d657f39e52a80154274f76c8b1e5c6c2592019c0b552241bb46f010ffa6c739f0702c32fd05b5f3237e7d85b3811595a1022381361132cdc2219ca9e974a3acb96f8cc95f186e0d67488557fb783957a676ed7a2cba312aae7d81a25fa2476ac4b2076b85e5a8d245f901e13d35f498a598c1767512033f29031999842cc87ca100f5628a3e30951586dfd9a701889ae3f4bd54cf1b633c5149ef860018cdef3cf56352bddbb640504f64070268d735a3a05603a81ab2904a39f8d02d1cf0ecd9dd10b477b23d4f507b4713ead5269fd525144bc0d3915c1b118034815f9574031d732b6570e5ef82dda5277b5054e0e2374c03a03407f10f546468c622078c8fa197293d9926bf021b8bd8e3fdc79280879025c1e378d4f487722baaf27c1225a0e80d2ba36d432889264c9b18a54d7ae98815debda679ebddd1f9f2a90c56e6328997ed0166330821bb64c98e80bbeb02058b7a3529fc1dfc9d3cfd9842683237ac01dba456937c40c25069429f1dc5efc646740f5e488fe8ee832bc977c6d17d2bdf97ca25847838e78fbdc620c51ea018ef8f7531ec314fa87d80699118ab1e496029a70817e59b5f0c6d7fea2e2002f16965f0cba3d06ad286abbb4c164e274b71884f9c8a4a1ceab617a15ddd629fb14a0cc55b4f6f60ad4fb8f50662c713c60d45727ac4aad5827382c6b0acd0f76755cfe774094dc126c0ca9f60cf6f71527cee9fd49aef7108335c569af42a1a87ad32fe9809334d339c528a5c6d6d6014516908254043504a1c09891984bb71a711df44e14725ded47dae2db37d2323a5ec54e93e2ccc726a5231aec7ed333a6fcb7d7ba0a5887e48a2805e8c8f2479e3f70cdfc5bfc7cba20440cfd6ae947d86f7adf5cbf8644ff31bfc20337a2e597418ebb3ae542827b494394f2ae2d9425c66af0f2edd5145b3a2bf9e05aae838040c09e37ee8993a5f2320cb23570ff2b232e3a41e634ee57b245ccafe5a6652ec701e3f69b7d9715f5e72f95d5522737e8ae654f87b31650dc788f7d5e105b44987ad29d6b085daa147497559166f7b100b2d588f18dd4abb9cecac9b824e11ec818c480595826c44af07305873c183511aa6164b5220e15b9f2a7fa9a72c545a3a40eb9ed61d653a3a34f314e4e728bf9d73239df252efd4ea58bdc85ddd3d63969069d34b68c1964c029b8f466afa77036a93c57b87d4027cf85f10ea33f4c44cecd64c5c121513a84b851190e7a6993c0e0ffdf761749e93b55d1a4680feba7f5db120c0df28de1d43743dab0a2f68f97889d76fb4318a0f53f35d4b83cfd23666f5ac0d44879a8b492502e7e69a3a426967ea3f1d0445a060db828e64a4bf679ee57c4f243ebb31bc60b437ab45cd761c493b8b7cc25fa5e5a37c3468f1043dcc2fa00f5bc9d8f859dd68cb279021967270cc59a36ab33d5df2bc319b16e2e5dff5f4c15a5b58490500d86bdcec3bcccbe7da0c5af88322d2ae4924eb6e260adf97b88604e291e6990f9ad40d3a318bed7175ec00a6d82508d2b330fa52bdcc5e5ca2c29ce1a0c207ef6e4fcca4238173e6fdb02ad8470f62c704947677a46c6a242984770b692e55635b94936720f878b5fa7c78bbae0a3bc9a0956a8b9ef856465fcdbe076fb76996803beed085011c3f06e2af96a48ad2c111f5ed69eba40d07e83e507f3456d1001b2033f7f7bbf2d0eb22cabe746c6c66de3a77a5396e15c0cb467aa5c9ebe4367a850b3cc156b45f2fcf47262ab3646f2d9cc5b4b049d478c923a4ca55b27e8130a44ac8f80ac4f090460734f9b961b6a560114628c15b9040488b63d18bdaa5655c3140cd6e3c942d29efc793d6caced31702299641484d9aadd6681349a03799276da8b7702c8c032791826f58505588e0e2da58822ed8917c5a77713fafe7eb1b67d1f8bbe2ff61310cf7f876fff2b4d41b1e21baba5fc2b19d8f578407d26de2d6c640f47953034490f58f9d219ffe8cd55e6d0c1fd860d13a5da45f6e4947ce6363dd872690d6647b826cfac9f8e05581e7c10a966621d4e3f9f067c6bfd73d1b2fe91d5c88e7bba282e7a9363e6fec01a07bd38f0fd3b7b296de6be19efdfd36d62b7729a015853542c97acff0956831ab17f5f5bf3f6f576b1f3d56f10f627a9c77418b0a392402987ecfe8d48ddb81b88a2a2475d17b9928ecdb2094920b868c33ee0be25918f4860351fbd1d166222e90094de1382d180f75361408106d48c322a1e9119e46c74852d83f4ab961dea1976a99c6fc9502bc49d12c2e3362528e8af9bb126b2bd1ac80969577c66adfee63c8bf44f11376f99287cf879f02d5a458288cbfe787c9e045802cd57c4486152563a6c3a19b697b71af96ad2d4ee75c39b8e5635bc4928a77645822b1ef7eaf4b16d913aab7cf22575966001ef4293e59c6b7fe23d14d1d95d85ecff3b9a8c738d22fc589d255404b9036f5f2b2249dfc5c42261e89692a050040633c4031efa2842a4b5df752298109de501f1d09c68d0cdd38a743b3235944b02a9318696cd54dd662167796bf02266523b1be0848a1827364653795cc8aa25c999c446619ff8f6ce0f80c28d579a418cea408768a6893793389fb3bb6071f4db1ccc13769c45d6e3acbf554dcde9aaf69a42bdc0fcf47f8cc7c1bd95560cd1e20ba6a8debe3f357409fd6fe919c804c4b9c365eb7ff3c9ce30dc110301e14416d8ed16c308c3acbb2a0ca140ba810d72ad195ae185a96d185e50e3941ba440497644bf5e3d512cf7b62753328002b213415e89983efe9c549a94186d54115635e6fd32f490d5a048d6378c503312230931326de034859cde0d647b0037d1d43f35f8bcc8fe45346d482f15bc29656f4e8e77ac22f0ae3a73e12060a624082d07d6022a9115b2998608956c2bd4398fb1789a09d59835893f10f41dbfe0bf85a106c1cb2bbb00d06c60a34e24fa5cd1e7f811fae0effd7cd8a1ed36b03463a4cf09f9905a5a4ec677563f4d5af0ff538ebdcaeeb1e504665ef1eea26dc404687a3b403e9cb0e62874939fbb30646f15ff41c3b3569d63caa8392d26fedd5f31f543f041b71add8e0eb0992c370553cc860e87533e11cfc5309a48d36f20d946b604f0254f28db6f83270f21a0881d4f05af9c934a115b5bcb0e0e1a8f10d6b69ca4e4a4ae5ed66843489baf89b55133e34623a2aaebeff31ecc5896b728f9943566c2275c7de2c6afb3c4b11959c21045ce68ac3b7529cf4e863a1bf85044c02fa8c171b81957b6d393740e09ee58c13d43d6cfdaeaf2aed3087ac768e9721b574bac393774d9a3ae927198a124591043312caa72b3fd2b22fdb75e97e1c4201d43e3c13cf38a4c7a164130533d2ef507ce5815086032cf0f93bf146b4e8a3561ffe87733855a3415890fd7b128c6d0ca7a3eb8ec1f7c099b01ae2a83fae2f1ea56310af7e14fdb0e805d5dd9d9ffb8cf6ccc7ca84225c81772b220c0888c47079b9b2dd5eafa2eca40ead655ecae89db4c8750f813915f5babc5cd3e4a9d46f930dae17d3a9c2db78ee13b4664c47b69bab5e66cd27f3adefc8026c28c11086fc2cb5fa176068f94551330654f797feed6a152ce0aaea585a6dde42122ab73270d82bf1ddba312238f0f9ef298cf27ab6d664d2f01102b8e25acb2583a510e42f472a01697368710d9aa4550c964cac0fa01b11d9ac973235555213f608dcf00039ac38ab6792496208b951fc56c63f7fcb58930236395e991ac442645b078eabe0c90ef52e17f85b849354dfc503f3b84d51a151528ab4a6d2f6f17d54d95466e3611c64162dc6b15429626879196b38ce860e336f1527d653af4a0446ac9f0100b21a94312532f518d3781990863faac0505947c486faa6ecec48236595334433b2d459df3bc13133b3e96008276fec6de8d57c37b368254b60de1992d52cb7fa10cbe0eae85f41215d44fe28bc195be8b11d642ca0553c2730a8a7bae02406fbdc16897868b0d3cb3d76ad430b4946035b446ebf8c4a9156423cd5be47f67502d1f606719a67b5b749b0246fd5dec18c1fcdf26b6681bd797b3785106b8e9a9af8f3b41706142e7407045398ed5068d057fa5061c680e92ce616cbe36f70d6e0923dad53e65265ba32e1fcff13755b077ee93036d6e6b5db7ddfd13aaa64a46be6e8a74b133735dbe94b3d38c3a05744ff8d2aac4eb2217819a6311c438f39215a7acc7c7f6f26314f9349de5b8024d5897ec8e042d19b4b5272f7d0283d17704ec836582108cf91e1f406214d88bd3e3cef5f432c7bca56adf18b4d1be6d15361f81502f748a4ac4e23a6396819277334d53050180f85dc7ad445873e2a6dbb068052f8dc6577a8dd7452784974adf286e74c24b5b18cce47b15dd25af6318f4d0b95145b3b140aa1cc8a575e0bb5d590c17fb948e6aeba3f15ae5db930b8bf647a36bb1328f8f399b66ffa3fdf30bad4b4003670234ee4b0ad271c0c6049174bc924112c477164c0ad1ad2481d7246ae266dd3437423b05a23ba7c2ba6a6b8ea2457ed13914d4f3069622c1b6ef2860337d6925ae118292cfccb60bed8fb2a794ee5b14503904306ca04ddb0383d18b959140206faca09eac89ced56cab73c8673a6397fbe6653f5f2bfbfbcc04c5c07c5ca0887cb7485307e7766edcc48b42b2603cdfbf9daa4f6f84bd4286638dfd53506928fe69a072815be11114bcde9e9c19e8fbc91e33aa647c823786e1320087b5681d6fbe6f8ce8394105d8bf06f2a3c59834fd40e0596e5d8ce3d005f81fc156f3ebfce6842aea98a635500aa6eca6e76a64a4d16626883daee0ff45ab5195d0c145e455a0d39ec110ac82f58c3a449b0aa116891b38a75e0736f31fb264cf8ae1ca0c16b74edccadb1615fd35b2ed3e8f1bd098b5735bdb96e0a1b7b773be6d007041fdb105a1d9cd50e418e74532ccab075add5e07a11b877acfd671ef4a781db0605de72e72a578f04d2efcd832b8ec13515ea14a3475d6fa8446765c9bb0729935c181ef56399e2191d24049558ee27764e19ebef9a65db8cb1846c035c958efab761c24793441ad8a7ebd4b9459db0bd29d5ceae7027f31c91a8c35a90823839c3f4be6408a474d48bf89a2290328dacf58a11130c338782278d8e4678bc0befe6ee2de37f839879faf37dbccfcb8713ca495af3c11fa9ab28c146d5083578d04be37fb3ef969e4ab70ee641d35a841a37aed598a3a2bbb3e231251a4a344e2f82c3ed7a2ddfe24ed80b228a3dc7eb12d57e95c79acdb3e1766d4762bea3cfcab7460cbad70e24ff3f37e033cbf3c0085aad76f312ff787b01233eab4d1f0757f18b5daffcf8118370eecc62597c50b3a8032af5783af4a5da5cdfc2aa3ad9acf67bcb1c396049153bc28a7026ba5f7895391d30e11ac736157a97f1d55fb90fcbcaf543b98bf3d28ef8bd5e7bbfc70bdaf83106dfd6f247b310faebe0af1b1f75279b9b047c8ec1f469305b21ac81b8b0028211ae36034ad512f80ff036baea7453ccfd633e50b03abb69e3b8d0b5264f78a37f98e390e91882f098e642274a052a232a48986df9c49e34bfd78a77f3bfed0119d7677198f36d45f6c912efe9a51a5b1c60236e640afc03e2d6d9a21dd8d29161811013d4d0576c233d9a882cf830ff63dff906dbeb28dece378eea6d9cd1cf8a2524fd03a0a773bddab81611530ab26a6b399d716d7a62b24576c33ea565429c07bf4558cae38ffb709009c436442488d5b5d2651e1ee722a164176ff8984eb6eebcaffbf3e35ddb969f5b5cff2e96e384a9e9d9bbc678d3c054fb9203586f1c9a523329eb90d07e6225ebcc4a2d092ad591447bdde49444aac1daeb692e802585a330b424c7cc4b66213d7022b6c866c1b4fa3360f26fe4171e282c49d55ee018858abcb551e953166927b63f672620908cf82146bdfe79cce7e987b3a60a80abb2f192773a0fb2fa8a163ac9bc5382dd35e1fc1562574d4c90bf9aab64ae6fd036cc38a0da67218082c119e7a68fb523f3d2af0f4fb6f2e825fab219ee1a147dcd3f5a90670df19454cb576b7a75ab6a474d9c6f083e1d84fdebc9d0e3e4f492c3e8595762bce4db93689df59ebffb2e8980c01eeafab729e3a3925ccbff65fec5af930e2e42fdfd3fdb25977dc5116614f72a279de693b26d49991769d7c7caacbbd279306476317a088befce684ff5134064482b335d47c65d20b0ba2ef77e4502d3c5c334556c22fcbbf3bce9cccaa9240fd32eb30cde1afa92347baf837cfdb621a3e89df3c0b8e0043549b1e774818daa40568389e33b6a74eb3cfefeea01e8fe88f6d7a5c38bf817f4864149ec0b9b86d9f243715cc6d17457aca4664ed7a67c6bc869f3974aaa9cf17ac2d2a82515f19e27896621cbae51377a3a964ec69f90a7f6f1d837b9008f36e89ddba1970e2c4b03838855e5469a0e6291c144c17a308ff390999342929ca4d9634a7b524eeb151b1aaddd3c1d24bacaa87ef14c476b2cf946c585d3be12fa818fd72895a7d1c622eac3337741658f3212b6380c9f30863857180bd39a8f793f61e7e86020e2e2397efa91ca5918673080d430ffa94575ffd2e1ebdbe104ab121e434181e8fe69416974681562e430faa11f4d9cf5cc2065fcf8ca90d03f9d46197f348d869f226bb0121444c37160389f34d28455cd1bb4f48962b5ac59c43d0f2aab9d4b7624e5fcc9c232908baf17355d29cdfb863798e643571e6e824b94c1dbbc56485181586b415a8c0344f0c93d1ff8b9dfada96ba46870e96274901f7d0798ac36a8561756bc98c1309678ae382025c179e59026816e6f225e991b0b948361f291487fca2430d910c0f4e7a3dbb0ca0fce25322b7a4bb247adb8c925b97b1228b6d29b4381dc5a9a66eca5ca7555cab6a14fa6f12dcde27ecbd8106f72dd66c97192e08683b84142f367baab1f1c59e90d0cbb69c00a85cb4f85566a48783dc8d90a2bdcb55f51543673122a318bc37f9c3e1fc7993ef33b18398c13e9a94781e22a14faba3347fad036b0e82482faa0b22a140cd87ddec262f2779db4b282686e9639fd6f423d48cf0bf0a91e8111e4644dc4442e52eae2a1a44277d24223e87849dfd40c6545e3525503c2560ca0629262fa250098c4f772bc5871491f0efd167bb5cb002622b11b15dfa04c9a2d7b27d20fa6a09c2e2c9a19a69401f12a32590b3e3a0ef6e28b82f7de6d517414f668b03630bb373ad60cbea204a3d17ad163e06268b0fff081eb8dd8a333b7f749b7f80320510c9391886863257ce2e57762d3e4fd538cf81f8a3c779ce8fc1781f5349eb5838570dec20f30556cb27c6c8142b87978d07878c058d0ea8d6d244744e4da4b8caf4798b6d111ef7c8d3cb07315080d28e2bf6212aa0fffabfdde00d6b60045e359e143db0005796313f74c50bb803ef10b51a4b7a9ba4fbe17ea0187aa00ace6996d1e7a63fa50c7937dcf06a5f5a57c20298c613b0c2c7d327af0bb6808988ebb2df751d145ceab82e36de16dc5a57c4df2a477ff9597f21780f2af4e47fe90dc08a15608ec6f89b85840880cec7f5edc8330f4ed653656f7d1b7a95bae5e3e3032c55d469bbe7a767e0948ec27052956db701619763ce4c7f38482307d8024a01cc493ed01b8543b41e0fab77b94a14db83b883ee4e1a45ceaa06d68414dd697171bfe9bdd6c8ddcd168b992c79cdb3468970f92fc9faacfde9c333e44a1e72925e5aa612767561ad074328e63564db8acf565d924db8764038397ddccd447174440f58bfd6ebab1df64e0068ecafda0a055a4a756a68d4a94d52a716651db44475d692d649cb66a5ba00bc02762b969fc5503b35df6c79b488dfc80d432cc3508372dadc9e98269fb5be81d47ce5be43ecbffaa8b134badc7752fda3ca04fbebd2441221df0bc9764e66558f31b5b1222e5effc80b6bf68e706e6fc90cb123005941a4ad7c181da50df22c8dd4a0a3b3f111cd6432cfe6bbcbc2f37dc4b2ad4041acc9994d96cb3ad71fce608cd76d2c26dcbee6be0801414ba9952f3e6592a54563685a9a2db3d896a901cd72e93fa82dee9a2e472192db503a50ef6e0c6f39e553b20a3046b69dffeb72dd683e4fe80fdf13e2b309f966623e9a808f4de49389f26d427c37219f4cc86713f1b5097c32713e4d88ef26f09d89f96e223e9b904f26cab789f8de443e32219f26c27713f0c9c47c3611df9bc82713e4dbc462ff82ce6726e4ab89f86e62be9920df26e06b13f9ccc47c36019f4dc83713e5d3047c6f029f99984f13e3bbcd175f9c19480b6954798482eca5aa29915a7e5ea8c77bac4f568f6f514ce5393de9fc7975d0db5e8a066e2f12894ad55c8aa510acd0f36db4533f7ebfc89e5c7ef448d89f5258492e9da79e159ff6b9eeac334d890a63004b5cf099564b9f8081a7127f92e05bc0b843aec3564a563106a5bef796574c242100e405de5f912a75399fb2a4ff81aefc990d5e745f1e2886c94da6e773d2dbaeffc5d88d67c3f220798624d5a45dacf8100a348c93b070dc8cc1a7a82b453271e8a5f7ec0aec3905bb61320c56027b792100ac431f387b269d95f6a1555855d05c5f154e708b25b0b4546a308fee1725a715beb938ccc4bdcee5fe07ce13ebc4ff560aa2f92f43480eecbe9596a57fb76aae07edeab413100a7ecb953d58b61860322add6d28e56076617bdcb06cd608783cd7d24421b95129a9eae1c077d88081c73a2703b3d95a72a4cd4069010d04ad31ae423b0eacb0be605cbd6c60527f34c4e026df6280c0c325a132d1f6e6a479980473afb12836b232421c7ee82a7f118c76eb63f80c9c96c9db5dd8383036ae7b1d6d7084993b003205d75dd876bf7c4616796c45671e32723d6b2a37c711c7000da43f26e2f6885650e4000d2c842b4d28570f9de09b067d939343db7b171490802a03767711409f227d64aef206f80314ae966558ecbbcc4915da8c3525e72dc835ede2b062d16349f7258c5018a3551c0ac0f75fddbd61a4f69f6cced200b3e2564636e4be755f0d16bc0fca76eb204aa9d400af7cc066947e931a10bbabe3ffcaa7eb060ba99e05569789f1643cbb8e650f296b6654ae21a3fd9e58b2e9248f28535872089f2251e992cc6b64dc8ea54e7883f73220ede0da51e49f471bae240f41042c1fe3ea0a4f75fb7c653089440a8b6349e453a3b73ea5ca1dd4da31418f6e202edaebb384d312c1b21eed62779fa5d7ddc1739b52597d3b3e107dd4402c7e2e0fa609f1337715f5e90b2a4982daf6753afad3fb722ab2debeca08ed3c64e6a56c744381e637d6d5be9371ac41eed81fe44c5e953e5be9088f34aa3729fdc369a75f9c3add8557b5f3f5e6c7fa33d68de24f53328c885baceb98a2cb74c238def064e7643b90e539feebaf0b546176836a8f0a59cf5c11a3ebd65229ad82060e918a2cfdcd34a63174a72becece75d9bc5ba405b5037790599ccdb282e6f1d5064c574f2e9c54dbec9381623ae6cf2121151c6715c04c9172b2a582140e802e93ad42b3161c47c98f96c1b438c7819b940e3a86da082fd4d6e8cc239a3e326eb4467476ffefea53ba814c9fd5d6a69344b90179f773ca6983c3c54936351d7b1aa8f6894aaeb94eec83add8b033fea3ac3d678de75be132e3c7a3d5ef17dd70171b62247c7a3525b43e8316eac547195d442e0a789f5c7b5aef5e69e507144b538d26587be181ead4a0b6eb128d679e24424afcbba10a90084a8107195e5acf3563ce0dfaccdc92952cba06dbe8b48a760d29b2ec3e3dde8f4b1056d0abd2cd445c3e492d207344c4963742b192d063f13f77a98cd48f201e4c53162639d392eadf8be9fa8dd5a67dfc45dd7c110fce9b0a09a29672ef3b00391d719d5d09dbcf6ca42d77a2789bf796a8641e8c918eb45c675fac31353d49e5397c0fd400908c3f962bcd6ae60817a928c05809b8d58eba3d813e17588c49a7614be18aa43605afff3e5a8084d3c13fdc6538b4332a43ac722e37a68c463702abababd2e90bc101d94e8f19238642a67f1f9d0afb3e4f78b595c3771d9296535aa87bb14c7027916532d14e95bba483952e81a0847365150cfe64789e961aa2d67b64861e9a327eb3fe0daf7a7479af62f418dc313e970979b03732756b43c1f236f277d60d9717a2dedd0cd382dc7b00ba86f15c6e5ce2a36e57fd6a9b206be25c81ee19901f968224fa07c96e1e60404251e58160c67dbb2bf904db74baafd6137710c2d9de29bd40a84d0e7f811e798109417cecf9a6e504a2f3af331e90ad68293422ae528543ac38fb6657a1c9bdea13eb6b64824f114b018f13ba29f1a37dedb3d9ba6170f458d08ae68fa69c08774585c2c7b16d01a42f4460a901e99ea836cde7a1d8be509c0b9bfa7596db3b57b5653bfb79c71cc757a246c36ef9299d779038658b9d0d82c0a1aeaaa2c03f81199a6dc66ab0cdd5933cd1857e881699d9b911f5041801c720128c3e94eaa07975b06238341cb8034fdebd9461cda7295533524f437c77b03eaebb48397fde5857d09cf0f91c2e2c772f0eb09bc85416033700372070c29d5a9edae14e003c3edde727543685622ffd5fd4f174d275e8c287afc787cf6d3de085f24f61ea6158aceffef8587bdb0e7ae1bdb356072737fd1ae7cee7f8c8dd6d75e6df7887d4c3a77b65d18cbc4bc53b680c1ac68a8013282b329124cdca0fc83d4632247a08bb584d073aee35ff3ce2ac7e9dc92e703fdfa371004123946495a7c13c092bd193d1e4f689317fb8b438e4a0eead3b138d2439d30634627ef07147bb0a0ca4efd8d692e48c3cc702003f3fa6b110d2be1efdf917309a57f27cf726d803b338e1ecc66212f012c2f85ef0f1acbb798bdcf08c8310940731ec10c716f034851ca20d954ef9cd4af922e34d468fab4f3014830fe8be6315900219277281ae125ccbaf751c6629ad4b7a8e33ac1b6dedf748f5b40df45fa1bb2fbb97f5974ea0f117093e69cb443935f1df0288dc35ed28bf594ac91bdeedd89d3aadc1f1743f775ffd7dca07844b3a74c2788cb917dff25a87f052e4d227cb8040633f4d4b003a22be264c2c77988d4c754986f3826ca7c4092bf7ffdf70a9908796b087c2410d51944209002a5adc96db7648716a5fda60cb7f7ce95d15a6c4a84e4096bd5b26c0d2f8c54cfac45a5216aecd3b407206f5ed9b842ffb78291e5c8c44421f256efbf09b11732449725782cdd9341c483b86958fd59c80335e72478234d128c69491a543dd43f831b2aa50768b58d80c63352b00d2e7dcb08cf844a29778c20e08cc48e80b80b0da629123c448e04abb3eee5f7a193ea17a88037521d400adabea35d6970b0ffe460f9b62efd76d3d354a52bc2ccc04a9f8142a2e0d79450061123a791f03b48d71fe30c8a95974aecbd0026973b74a332785c5ef78f617296eee3080298e643152f65003bb3c293004fe635985c3002206c5fb953ec99f1ab50c28c800d8e8ba0e84b369377c5ef03a7b61a2627ff4ec433d396837b72bfbbaad93df8c108b67baf49d844129c076eefd8f5399a35997d9900cd55c12867d25f32056b57f5429208530e26e36ee7179622eabcfbc0788dfc64bd972f960e6fa63a8b5a8f4e1212ae68b7bd2a804ea30fe23da1356ef051e8772929047729515242991a246a8f0b67947b3304cb5e8911b78881020f8c281060cc29184b9493082397fe2ec898ba9c1735823bb9f41407998ff3aa11dc11eef92c9f94a1b28c39b7553bae42daa85507d1b97a7dc6a241deb3d0db2a4a14d2047ea35e28846c5ff46100d179e78e3ed482f9f0bb38ab9e8bac642c46179f87d5724513b96ad4acb4759cdb17ddef770e23dafbeb34dd9f3f9db7aa03ebb9bac5c027e7ef7d78482fc85dbd83d17870f80ffbbf614e5bba0acc61d3e480b849061764e7e9a7234fa0be3fd61420fbd0f3090254d7fb0c025cdd43bd8d062bc5af018bba6c7073a165e61434c715cf070e09634e44e91fbae67193b402acf05d801fe9760f6079e9a677b3c5c4609e1c22bcf7db249dd78dc2d0a51ae214bcc86124bcef4694f7efb1fc0b635384e026f43e314f25c287d64181390b3cd8479f5cc4796f4ab2a540ec516e1d525dc80ddd3e26d238b7288b97e842c2757ba3a54cb7509b18857be82b37182cd1464c7e3eb2df2923e8d3aabe1ed8fe8db0502115fb3748f36aa43c29945f3d30b273aa9e4516b5b3754879d8ab1fe7bd946a97f52d229dd5afd6cab4ddf0c4e66095b17225ec4eabb40d51383fceebde54a7fecc52d07b81389c32db03006148f121c6a5714ae528ea0ff351e4d4e1e8051aee9c80334715397c41f20a03341d817ba17978e010b23419d532ed61ccebc29882c0951f39764e0a539f282805c11949badddc40a67a27679e263f78aa77bbeb8c29fd8c5d43f4be64d2921b9a525b06579fac0c808e06d1aacfc69b10b449e0acbdf1498368f636ad1c075fe534f9ab41f61af86833a3a0b9dca170ff0e7fcb7fa705ccac1a59a0c0c7db9a770ac097d6c72f97a01fe2e36a19eab9ecaaef2b92a08b10bf57c34d0a74731ea05635fbfbaebdbad8be4bfb12c6a3f61fc4f0e1faebcdd8671057835a47db3be8f798492e8a409d908dea1ff370c91723c5d873c45a71234b04b1ada56807956c7e9aa8ccd19bf6f5248dcd8f5f5b2558d388de448da27d5a64c70b541e548a7391a2006c629452c49a847f52c5495ac871e9fda5354c4a25ee73d8bf7af4ba4410ef8d073373ad12f0754240f421fdabab81f14322ad2dd4da197db20e94b2ce055e6693f529ccefd4ac7c2bcc6c7dc00eda0e36b2df93878505d82b8fc67eb62bb77642fc8f115521bfd0d4c58c86d3b68086d62d90e5dbe39a7fd3f54dc06a73640d06d3faedd40c97e3ae142a009fc67b036c4b85ba45787220f7ca83974913a2e235b5a7d844c5bb3cfe0c6a5b0d229a17961e1b5644af351767046c240ab804276a83b2f6083cdbcc80fbf7387b985329d163a6e7b97986df5c483a5f2f28b87c0b42c51188464292d5b4ebd9b8dfc6f6d895be4ae9f98f2b9ccee0a88b36bccce1212f1905bc4637d02c430e8a73fd8db0151c10c2ea552f11ba27a186edc681e2ea0f2cca047c9bf0834040728abe57d01b55155d19b3e15b4ee034df832b524f73ca995e07691db8ad7d0cb9888458bc9a7e76dd8797ad1f5d5a6fcbfb9dae67f313ad36079f2523e8d331f03d7fc994f7a82b07492938ac655f5e46f73f876cd2a2b930d277f2a7890c769a02f1427d875a7e53a93ff55ab6435dadbfd7a0be7df3da75fe01d62a4ca00fcea12b729755b0ba0acc0d9f2b273cd136e4d291274eaa8f9a529c3eef46c78fc496539cc2c42db1b9c91976e9e5bc93eae02067b45bc5d91f3301c13a5b717688300924dde2cb4b5754522584d59cc3e9140fac159625188678f5817cdc268de3813dabc794c5e23da3ada7af9c980937ca822bdc05a59347ddf3980189e7d10228af1e955e296243d6ab439da0e02c4a4b0f584706f456e0dfc14cda3742760e7afb8a144f812dfa123091314ec5325559d7143e45a94c4831e38e05637f58f210dc5982b04dad3f09f6a0c2fa4d11072525ab2b86c8ae815ec71e2a095633eba0af1ed1b69fd9b2f0446b6166118624faf252c9b176ca7f9b453eed8dfdfda6b164bc532b3ea150e9c4e6329c552c0c51b1a6ad890e5c5d0f3938c55eb9554c7eab45457749dea93608b592dc5f4ce505bc3bf1921ae08a837c7754cc9b87323d2af6f672251024a04229bcc11915fda8a07221fe4394bc952cc7a2f3116b473c0d2692ee08babfbe16cbc4f8029e44365c310a421b5e3b06430bfa6554ec6fba8bb0b65aa07145e7ce3a35cf080a99da7e163b7b4855ff056a306f820f565abf5f795aa8f27e9ee1b539fe190486894aa3fd5869989c24dd649dfc13320a7230365ad5bf2b67d7602e99d8d2aba46e55b47f8818107667de6e5e7c2c0e0cc79eab44c5a7d2945fc0fcb7678f691b67d1f66ddf96809803f3d8d428eee6c8470207a037a8a725a04436c45f879ace61ecc0564e8f9b5f213810774eb08dd663811111d606ef3141add19043df82a381c1fcf57f864885f835c9a76ddeea740f81a6ac1cc11fa67c739c6ff686969f1d8886141fe5d646a15f9e9d2876b31499dca3acd0d3a4054b4de9710add988e41ad17c7961d7ac76bc31422ad95a29fc78a55e763c250cf508485ee4a2c03778bac7c7c694aad3f44523ddc89a7dcb905a8e934251c8a83aa20a87002b7c994587bb0220fb29c087ebf88bf9f904a80ac92d1833810e546c0a1fceaa86fea841a8e4b0d63200774bccbdd34fb4bbd884137698aeb2a4361c64cabb47197ca612b36c5bbcf4d124a9cd491e69b17cb957c4b998bbe929cf2d4640dbd778b5089286145512b5460d3adb80ea0df2b07504cd9be6104a1e65ba65badbb9aa40d5e7068f08c65fd68191efd81a131d0ccc8fdd03f81f3d86a0e96e22b62af2c7561cadece80c42ecd11d118206eb3e984ccccd3232bac4fbea94c8023ab81cf28531d362549c2cf59277681afdb16f63ff48654e8d03e137cb875a19eff13710eeca3b4302478cb317df242321f6cdc0afbe04cdde50ac532db4f543c3a51eb452a83c46d164be89e9bea6a374172e7c715a8691a98dd2b50755207ae924067f67674a1aa3e47b5d0ea0b18b9b107f4205eb5cd2025364e9b738d8e4d6eb7004ff72c5b2cdc692d54a222d00db76a5f1a7e5254f82aead2c1e65311e8d7e6d4b6890592cbdf35bc6548181cf859c15b4d746059b2360ade0ac44e9cad8ceab3d184faad9dead37d0c406ebda2d376dabe3f6d3e0ca88d60c24ec4b87133bf06b992c2399e4821f085e9c18e6e42f40321322bce63624dca946d126ca7bcda0820d367782378cf5fe3fc7e3967bd4a9a7349291466f91dd0d4692b151d9165516b1f2a3626477afdd359611bb9db42ef5bf6c90b5d3c1cb0267b0a5224a0dc2b7d129d3292413204655db7cd23f35c1f5dde5b2e6e60fd8ff41c82b14777f34d89ccc19b9d56af147d31ef529f54ed08ed600a1795f0d2632681fec9cc94fb8ec2c7f9662c555512a0e854483f140dae62671967da7c1a39fc5c7c4b7263f11ddcda38891e920f2f938228d1e1e1226ac2f78d92c8f70bb03519d717ee2059d5a917091e4066c958d5702e5bbd2928d3241502fd44c70c9331e059a998a18755443ed505faaf4d335c1358dd4211902653ee461e7f122c9366fa2778cc1d948a68a672a4934d2319a83116adf2624c9a0c43f0a975b4cd0b55df0e0aa907b5852530d89ea0a6a7450778a1a71edaf1286c364fe2a7306d179faee10179680406544d6a3bdfbddce25dd31e0077d86d6887c1cf59b21664619554fb093785634a378f3e9e81d80405e0602d696d5c5853aac31a472f076bedd71f01b840daa49f6d0be511647f6fa0f7d2552bff2cdd68a803c201de934447e55e03c1cd3380a6a19041a0759ba7342d5b3e95df1bf5173ffa3b478a5cb23b1b1a6717ed62e088abea98cc87eb4cdcf5cd63700a126bbcd451f20290a380b5f71be943941d3f9f21930d463c14126b25998423d038efecc865f7e18334bfbf8409462866acf3860a8100ed64ac6397f6412ce332c792f0bd4d1e0e7bfa51f33f1dd62a5d1ac9661ac68eb7934700f2a4ccf4fd4f5ce7d81c196233ee9f106ac3d0d9bc8dd668e8c0df60157a0833f8ab790afab033a18bff45ed00d60f0b6441fef8dea53b76647afd9b181c7258db9e0ecda47d2d7a1ecaa5cded7272bc7be656f2142315a8f6913e5a48edadd8ce23ad231019d099cdee6e087fdd3220e7d033b1cc412561d43827836a52d317b96c00c24fa3e69713a23ae9ab33e96f39bbee8cc749fa4c40356f4c90e04e131a3ebf38e282c383662a2d1b20c00266adab2fb3035042354b5dfdbfafd029addda9222bef9c7418f34bdaec8aba3b6b428491f433f64d8248dbd1741649ca5207b44078c8c29251fe434097bd07d04b9ffda835e389f794d7a637fa4a6b8d149c750868a7193de1a79989be8e940fbe9b9fa60c38c78abf7f815c3f11394303d40a96e6f5bc8afe34eee27d9a975b2614ef29032cc986965184f93a6dc74a26102dfe8e91b48b05f2cbba649734e3c45ab0527346f3a8a92c5ad3df31d8264bfed9f7e21ac1573b98ee5fc26a518232cdb47e4919664ace450a97fb8f5c02862148fcf99e6b7bb93f89e67a0fbedd0442c2d3d3be9b1a378268e42ba9d27b916f75eb9efb5d77f7356697c4646e83dfaa933ec8f31015541411aafbb4b0024fb692766043af8cf9cbd222ed8ddc42a4d72a48823e670889ae1001b84c3e23786906556566670bd2c86bbc53637b68d2921f09e11a074892b0fbd63e890a1825a4a37e7332c2d5eb2a6c747b8472d6ad402b100122202e8176cd4eb6923bc0cd14ab887ac54635a81fe25f438251a4c994022b469a105c127fa4e946b3c72d4292da17bc6814c67ae2f38f70c4d05ad38979538eaad00344cd64a9d224fa75a25fcb333a5af7a2c0c112a0a0e0581baa9496c397b741a2ca2b229e15c662455bc1db67745ce19e44fbf774935e28008455ea0e5b3759e86706fa3fc081f24b0792223f33738b0734327039478db56cc82c34312804aa088662bb642b61e2d13c742bfc4de6601c98aa290486d8964ae57f0b3854903f01d6d3a804c51f7b493cfe88b407ed5bc86fc7f05754b35b1db8724749de3b8a7416be7eb9a34a9eae4b484c0f2fe3b982c5240974fdbe87aca5d792fd36565d0480b0288a93c1f8cf364614b918390ecee8514abf6985118854154fe0faa8c06c3aba33ca5685e7713ae2ef526a75e5231846ab46ad6a4ac348827ab23113e5829fa6172ea60242654f160afa6892fa1d61135a1ceae49a954ef7ce13685877347ce43f44d5f0e2830ff80db608f1f6e444f31189ae6f83a5d2acf6aa53a116b81da2607f7b64e924df49176d4f864e8a44b0ae75a4c92b82777c2b3a8aaa15adf787cccadab688dc75748cb7a2f493f645483a2a96044c2d0c0342d181db2c7b235a4025d76963eaaa6c692c358b9e18d94c27c3fb0d067d720f284fd261ec60deeaf1170375d7a478f2497ea5e8f107b2fad1cdc4e701bd424a0d408e277558afff5241e33536892954b0120bfd769288a73d68851dd3922365c8de3a908d1f59207e8abc98d6375972ea8bee94f920ccf921625f92495ef101f1c49cd9e13e7e688fc38d4cb016e72eb36669ed0db117e7c0814dbfbe9b46bb78848d6e29542d847521c4802dbf3c1b6e91cab527ba0f4f3caa23a5858264ed339ae60510e1c49e5ad01c80afa954df456f265911b166ce624fba18edd8451f20fca9bb005c64034bdfafbdf0ead249a859820313f5212b6f6c652722af8bf170c7d830d23850c5de5a8ebeeb3888f054e58dd1344337298bd10e677b4c9c315ac2c9c40f7819c1a6102393ec7720ab525260e224fa12ce17039189db640022ae40e32aa4615c8c0800791c5e14f1c35c5a847f5448e4160ce3e49d4955816ffee278f516e264e170a9fefdf640435e2527648921d241937589b5170dc26f53bcdab06a997d5f8bbc021fab01aa94e5520f1d15ec28ae20e342049d04633df2e9fdedf4467cb1c36c316de76e01776a01d6cf72d16a508a1cfb5e16ba4ad421aa3cb23c44995345b46474d2a16439abe87ef2d3c0ed0010769ea6b5d598b34608692f1fac2ce21e922a3ccd76183cc78c447c2661cee6a65da4f7ee124ac9151aaac29a1d0f29a00eae1df217c7e0890f7905c4696d35a04891951372229dadd06ebbe09841161f4f750a08e45d273b8096f423be37c1826068af03e9a7aa5f7bf9f3292c6f1f748242d2c31213b37a3c1c34e56021cfa4f091a341052f487bb2a957260845ec661d905cc475a20172ea243284f6d7e95ae1fa9768efa1c481551011529642a3aa6f4dd59b098dc9dc363fefb396610b1c101149590834bfa7e1637ae662ef9b6bd8ca2f02977997a980debe77053d520ab6f0fce16bac5687d1a22f4aed3d9b547be64a97697b4f24b5191596f759326c5f4c2eec3ecd825eaee0e947926443f4b538626b9bb6dd638523968563448cdef3f4d41ecb9f033e7bab110882489d7a38f2bd7d133adb2228250c64e967d809f267d109da0ce7396b9f034c8a06f1a57e8010fc1da0387e1c0adfd5b0612a3a79215234783ed9844ce8ff591306668dffc39e0bebbeea02b2f16c8e99ad5824330dc75c488baa1fb3217cb966b63f26ed6c29906bf41e959de99023ef06f1ff08ff45bfcaa4c247355dcbf5524e1942bdf0c4987a067608794d585c11893277ca4f3554bd7e3d128c501ef8587cd6e69b5ecb69a1638fe916f5f54e55acffcaf58f7eba9e1cf9f57d353e1df484de0bdb2b24d655e86b5ff696d328db24bbf38e4b84b813f18db98bf03577998bbdf75c6813e9a38ff7bf0cb2f4a58c927aa133ec85f21f97f36b69b3d7aa355258416772ffe3551a881004a3692726a8fd40bb7904d4f202675c76037ac9d588a6433c28ad510f321bca40f42c09a5959db9918a81343196a87a034840893e8fbe95f01bfd3cc7afbe14bfcc8bd5754e5f880006374c1ba0d02bab6065cea4ad938069279a1d0f89ca7c72a8a4034c51739ecd450dc134070dfa9fdb8f8c62812ea7070232c613110968765afb28ef57a985a23ba7de57da8a2945266effdb01b8204fac5dd43208c4243afa4e2ce0341828378840d5f10ab2ca1225903652770e684cbcb09c14673993f02daac36284c66d79a10d2a24aeb5afe6d49c8c6e910281cd54dd094e78de1cf45ad10b28ede4264bd963017b409887d8e0613157a48b6410592b0821430539a0432f2fcb92f82b89a2763f49cf830081fafd44409d0a31cc1587ee1930423f889d29b1ab79e1a0dd0b7ba7588a9198903963eb75cab185eaa04809cc622605d7da8174b2b9491c04eac829b737a02282b62385cc88edae0caeb1ce3237fcb3e00a204506ea6a52291d96351fba5798ff5d7b910e5e407addf409b82ac7aa83863044fa960240979be11aced9d1bd14d689843a2336e75405f126b775b8dc25837315487a6e6cc5ba3213bd60535484acb4473c436ee4d6a2bbca32dd7932ae837e5ac08ef2d22e8b80a558219dc643fa18201025877478bb4229dcb421175386f855d1d4837d718e4ab497025cb829f250972665dfa058fa10bdc2fb5fc10be66c0292eba6be805154563b0813e692df92033ade8c86f0ba8ddd4b5d3b23c0d31f766ef510776a5b874b59323457c98d838dadb72ecba017648a9a9075f68866c86ddc3a352eb47c374fc5eb204f0b5851569a6411b0140ba47344cc2da303448820086f57590a973666204a10bfb402a21dfc862f68ffe18284b81474a1385605e67f192fabc30ac8164c3e8153775ee8383ada608a3bb87cd3128520a6ac17ec7454b7013164c515e815f6ca8c28c411d3ccb95c8292dbf9852219ca60e5a3ae49afb929244106e6537e203d953595579e0d193640e6c19b0f9bdb22fba8be65d56212756e0f0025abdc4801d1940fdbaa16e3176810c0951f8fb8285bbd1f0fde80df7caa8a5c4f28ebf960b5a2a55025f9079197cc5d0524afa4be805510567364e6230707576e1a981061e94f7c5e3b41b7e4983beb820f1eff4a81e8f2bacd049710b3bf2833cfb1b81c33261198722438420f261683118ac8e1f7109f5375e880198d64ead6ad1b9e6103f1a6b4bb49772a9a729e64c0a05ed3acaa9b7881ece4cc21f756e80765e322bd1c45b7c95f393b3ff62f985ba77fd0464386d83f874d39e210fa89d421fcfb56486d81651c8f83c4592ffedd5ead2c584faee0584e476ae77ad4c66fded4aa39f46fe26d2768de140c90d146cc5242e5d02e45d73ce3f55d637c802725686ce0a2bdb88b81f7a1c9f050488f4dcf24a9fe979e23780d13c30f3dea1ed3a5143b3a9e2b7e9ce61f117da2b1227ca5e7781f89294ac8ff42964dcfd273ab0a3f59c3f384ba7830c952151e52d14a6b52cfd3c7318a54f8ef3d7431bceab00f3a5b1cc2ca35ff9a0c5ff34d90c451f56f9bab5421cb1481aa77d606f908428f2020160189cbcd110e1d1c7b740be9e6d820f749074713b40f1506e6d0db43441562502315e1d85ee208c044073f2ce229ab0124ca49e418bc371a69cab63bcec25a14eb48cd48faba688efab0657817f547bc3b63d04f6e20dd181b723be9c1d827b8d9d1f13f4b308acac8a4066aedcad144e615b4972e5b3b7437e4eec60f889176bcdc1c7959535501a5f729a9e0e7d52daa79228875ea80171367dfa18a81e4de083090f810c6fbb330342dd72877e53cd6c09efa01d3c1bdfa9e707d93cc1bd006d9b7075d0e4edc953a4ac011b038ac04c82c76ba25a094b29f8a2b1e5ab11c71a95fbee13558894d927eeb71f0d5daec39f074871dedca1c4eec2a6b2a49a304fd0c35ec02358fec58e6badde0d31644e0f8251170a201ed45383120a03d9338a2103f0d799efa7c97c5313d6d867e0dd3b465df6e82b76d44ea7297cd5f4c53698106e3ace0e9ed7b9a150a734fa33453fddfe29af1a479891cc5c763aabff3aad0d9946373516e684ed67ac1df8dbe9aa051a4f452ee16870408946d6f6e993df9942437024e0f3a2d444e260da47214c3ac3d0d5b0f195a60e2b70d4da44d9d66b74db3d2dc43337165d441d294a9cf19e6fc320dcb4b31b5dfeb6afbba1487a48f4614a15901a05692bcb0082bdaf5326e50db3dc9fcdbb11556f756aa0edab3cb3e3c05160fff9c63d1f4d0c46388935e533e0e8c8ffabfa5d50ee6cc7303e6ebe6c9ba07a4e3c43ad7ab71e90500125e2c973e632e5736ee333f5157579e2686aa33c9dc67abe074fa2945ea0923e6fe17a00324cad7b7f08d7a6b183e99945ade638c33b1358f0688d89aa1f7d8de722081109e7125e67ec80473c59a8308e7203a11a76563954a6f41657ba92b8241ea215a670012a9e8bac085685194c20be66b903d64291d21d3b3d87e4536aaec457574ad396ea1a7404e3e3be91000f6cb6190019252eb010774b8ed21148848392ccd968ae067d3e767314c5408ebcb9f1961165c895f6594a1ac0f1fc1541aeebf48270a23f9223fb3c1d72dc1241af678640ff589f7f6b443bd34f06a2b65086d47e6db142e333b64009c1d198c40f11e732917969b4f995774f194145002d69d52047111d4357d2d8349a9db9f927ca4997c042e3aa14db263ba8c0b9b9df9725484fbd685cbb300194a4f14ac38430f54289501fa9caaa74bb4539e0eb2d7bac1ac27fbd65e190c63d8d1588ad28d2b64ef178cf3ffd51aa3c4c16fd83717133900607a2b18d5140a13526ac4ec295fbf96d44981227df7de0c1326e7dff7ab1b4f72c93659e36d5dca06db3cf0b7ca946a5cb970871656d75eb9c20b894a5a84fed3c618357eea781f3e0e7f4174879fcfddd011288f1538350dd95694568b1c1c72f158b878e59c16c6e251749981321b1cf126c1b31b7c7d4f373223bab87ba830024e144932af071876fbb42cc6c73aae2049cbed34ae08888f2ba4508289043093d16f73b9667adafe5b4f7f9dff5685b896338130574e5a67fdb7f7aa6f9b138011a6068a9b9906e155338af34c0e3a84d984dee6e32944b7c4e3f76d226283a2d8f6375818e2f2c851823c01c7e858e5b5338386493bb3dab806268fee5a4683ffb6a813d1b16c4c7b01ddb8902f45548b5933fea5bac789a91e7f65e08941068d97ae626141806308b15f48249b4a4e0486da9cb0e02ec02324dce2ba1e24f98c79988ef2c61382c67b531233f2f357986e2fc31915d94f944aa8cf5d43a66146d2e8cc5cd7cdad92d73d04d6b408e03ba0541da3e8c3a15d6302a087077c3539e64052c4d88ce10a58505798d5d52d9d5e530fda3c8e9cb08979ccedc9eba20a445a49a93a8e4f08342531c3b84526503f820af0ef2c6d34cdaf90b08a4d1522755efdbce3f73c76c83118c585cddcc85596c5145143b469d9fb9d68c2026bc8f0b745a1896f509e6a3d3113e2ec12015824b2755a1200100f2170a43b90d0172edf8a553af736f7bbecb9c83e166666cef722df7db74cbaa50cc52fdf8d21da662ad5a9da7058495710f193fdf8251bfef4d15ffb43f10f311bf1dd6e42794c3cdeb88ab3c5e03f102dbf8566849574baf725a095591e2322b85381fcfdcdb998b919009802a5481d60cff2eb52df9baacc7630b70d33d8dec7688e2750dc78912f0335331b990b4d9c544a74f9c2c7d567885e941ad966dfef976589defff92d91caf7b3d1e11245c47b057de3d0448cbb329f5899871f4ab70edcaf45ffdf99e5f7c90f21329347a335339ae5ef3ce5d0ab12e97cb4a73722bdeae11fd7d21dc9a876948d99fb9150925a0c9e68f017d76dd9f5b309e1e83d40b53c8c372e973a9820c13b648b6ead684cb4decc7ef37776a5135748883ce91c724262e05381e2e6dd18b457d16de81afda47d52f69bd1e35450ba797430f65bd2536de0f6c5f355b9687f8a54def2595922a46796bb33f6f28880564a75a20cf5c36874c2c8cd1414fb2396aba790ba1a826a351892c32adc01e04cc9533c5f2698c873a1fc7210ce84095e8bcb9ea7e42c2f22f34362d585efd426baf9862007d4d269bcc66bfe771675f31d515d9f37b08a09715b3a9b2d003111e6717d38dfffb63ce8544022f00aefbb92a59a5c1ce2814f781895551321c3926b802cacea65fae4cd36580e14198cb37084334f4a5375fc640e50aec170884b3f1fe07795be88ea48c0405dc37b48cce7ef7f16c5f7c1254d6bd4c72f4112b554f4490dff252efbede28fae69cebe88d47d835d74bd060bcf62bbb3d72950a62b20ba379ee57a537d6235b2b36db769d25e6816eb9cd19135b520adc5e7c1a0799e583b9233cb1a27f88e9dd5098f305f862e5a37de12a7e16d2f822720fa2451ca51104023ca14e41cbb689b51173d418e355a620ce1bb0b167843717c7b6bcdc11ab1b45eaa3741962cc174df90f1e60c7ba365cd93044dea27c0f9108242587e1f9848a688510297b7c82b1d33b6950df769f49041db2c4691a61aa55e7ab83cd4c374397244e3f680c30e92f634f7584479f7cbf42f477294c0f85b55127140514122770462c648c698a892243793aaa73f2a13e9769920124e7fc1287b6f6dfc0435d783a1c1147ccbfb470fc4a8d1d97ea98b69b2ed7c096b39114325c0d684ce912172316a2d200aa7f04be4ec3aef812f9dbb30a25e83aa9e42569c047c608ee0308915f3d7dca84fdccfe510ae89b6bd3b46017af884820dbf38b6f1b45a57c85eb02a15c57e5163a901e3347280c07d3a4e73134000c2cb487148d481cea72b80028bf085ca8e73b3623063e114caf9da4145aeeb12968095896501860e975a11580d0eae2a3d5c33989367d458889dc2d28c08b9112fe11001c97380c1eb6fe7a25dba22aead30cfe1adb2ea257389ff7716a8311668d18cb8936d400206d38b05770eaecae52f1b511691f903913b93b050ea2ce3570c0ec4d7f3c5a5bd11b81a46cc718e3ab53f98619bec9dbd1f8288dddd92b4dd63e91a80ce3a8d1f172c7783397b92064d7168d1163554943502e17364e5c6523122353075192e0d6a26cbe5c936620c4d63885103681f28af78c2e6ee1f2b23e42198d7b0b6853273481a9c2733e07f66433e9819d5085f6ec8d02ca76dc795d11d88f97af46eb1b4e5ab245d76bf509ee0a57a92c6e22c9b2b9d38bd3011c8b09336bf566a54652eebbe1e43164d14cd99730914b6704004c67835d5ad39acc8b8055cb763daaaa893cd9a6a2afe49f08f560cdac4946fc203605dac223d48d845f0202ab662d2e4e53406409ba12c58312c7c445f54ea899020a2a0337cb996acb2d58f1223b9b86831c0796354ae2d6e94b9052b662787e1532ad1140559915106546c054e92329a8ebfbe584e5e5efffe114251d306b01974e458057f53242065ce9e82ca9ae7c7d7c1c8d7881aad44457f72d9e8cd698a7c863ff50bdde639ed1dde26bb06c85c1caf065d05364cf254daf4b2cde2dceeafad9834a15c9155c6c6af3947239ba6b038ef7423e55f5a759ee8d678de0cbf49504224c2375189d886030e7f349c343ca323bb28c50900467afb90e288a1521b951298c7f8ca546407176ec78d2021ef956a27161b42b638cabe64153ec248ade2d2c43527c094703865cc019c3e7ed80ac6feb44479ef54e32521b9bec6b3cc19ae818c0e057a286efe92fa8730f6822603f7fc34aa1ee2ae133fdf115550e53ffcb66397d93896816763475c81ef984b39cb596f0d0fd946faebeaebfe50b7912d183114d81671c64160c7bdb56c9c2c851dec100a251320e550d0d83fac62c00ee21bd68adbc9aed05b4ff3b17667362ccddf59a9fa6136a62995bb40f5d183ce6f74cc68b4bb1e46c744942d53295bcc97b5857fa3c6ab828895f45ffaf50505bb106347ce8c4114d59aef64d0c75a4e55b2bcbdb2b285f9caec352ba492fc7dd9dce1ceb944ed7747580d3093964eb3eb81b7582490040405cf6e8d50cfb63de93be8364e8dd4c84f753d3edfb88313bc66d0e3333fd7b4aa8283be0988a129f9ef9128e5ad43e88ce339dc6aea175252193b16a0e16ed3efe9c8d4457ed868a344d4b81f55182de1ae2fbccffb1ebbd32e2e71be599deb95dd9a793bc9cf751aa0375181ce1ae4812298df86393ec97f9381eb4c82b44b7ecbbbab0d4c13ab618cdf78665ebf1099c80a60572c46b4311d05f2e9b38293b6836e1510a008d879be8ba1703236787e001e404eed90171b98f67f8122d7b6729ed1a28dbd15ffbd04444f82fe3e8f0ccfd6f9ecd16bb614fb536477f2fdc0a28835c92369c8f832fb40e520dd03ca06e8ad0c7408032c2269870aa5dbb6cbe4fedb039215f472f755a81ecf5bf2523ed244a9c035e1570312a7aaa6ec4160701cf2724585838d0ecddc2ec1e4b58192e41d7ca1b39e09812b53901e7336679385b96b7ba2dc40e9a22ccdbc4abe83b03fe4a9c914565b0c50d161af6c5a57f6a044597882216bc2e83e43269770b9feca792b979ac3ec20cc74621b568bbca6a34e01cf0984cca21a991a7ff47e5d8f4a1ea9f1b876bc51de9ec45f0d9fc3f63ef3f52cc7c90e8359f7a8d7b5a2edc18654905e70fed2f1548354fe716cc3a638ec8ef9f882e84716b8716b8a6c3dbf88f7651cd3780a90b7d5e62ff826444099a5b88873ccb44fa1c9469f7fc6a04c12669e67729a437e9b4ac6b052d1769479147f90ad72d043fdc0158ae7fed26e606e4fb3fdc07e6852e3b78fcdc8d6a2535105d11cd40552b51d30b676e06eac77337e547fdfa4ce89822c1a56284a420f346ae090b2cee7580c2b7168a7487de4bccecfce36108b61f98c1d8fbedd526e3f9ea9e748abb2009b7abc4080c8bd0b8aa7f840f49f20a3a123ace45decbc0bf655329e574e11d190d71c839f3332b5e48b011ce325ef6b5d6b99e0121c83252e1e04e0f8bed050b0caca00b60a96140f4dd47596aa5166e45a21202c4e1a2efbed5b682c4e4052570bb06a1510bb4f3d3e5866118129bcaf07d1a5f5b207efb7fa11db03c811270f1527ca7b98be3456a8b80764a3cfc42c8aa71a54410f87a91f94f53ea05b0797d4f9eb0e72c17e28f64448e1e57a2598ee42ce4f1adce325e818ac8871209f12ee33dd3a580bf7634daaa5d17f2d7862b8d20f2e571efd8f7f293cc9ce484191cb3f697f309508203e57f8de5800cd2740a810a526a55fdf4c1a8705b157e159578174eaf004886795eb23cf1074981294d5e8bc7567f157c2eceff4e68614e82573455807563b998da043c86fb491555e73fdc1fb67287a19b7550a3ddad8ffc68ed52be5c9728f1546be1d1c74437cba5d4f8a84c48124b458748a93d951f98dc9b4817469889e05d3d9f98df6ed5d2f92d7cc9b743e04bfd3f5d1546d5f72306a2309ac9ceae18b6b288ef4fc016b04db010ddf5276eb4b18fb6daa21a196a93582170b6c9a2e0a982952450ed6c1947f58b0f20ca3594293ba988233d88727a33b3cb062f7d738764a5f26b1f1d351992207e3d720317d90d1218dab71bb09f4615d4aeef548aea0fe7d5f78d20a00a283869af3b3e5de80b6498d82c4f885ff9b9dc63346cc284adb36f7b1216e0bfa1cfd6a10af8a1260cfb1b8172d78fc5e3c5de7c31cc5c312dd1ffaeaa0883ce6088fb4cc54c75e968a38011a040486169f05507508e3663873f482827f546d9330479fce0b0c755d79c92110e8e0a5ae5c71e683be1a764300652c65b1abf55c143c5f2f13c0bbddd9bdc27302222321db0892e72bb0f78327c7846afde8aae3d11ed60214c3ded0baaddd6e9b3c0ca1450582287070cc24feb51fbff72cbefcd7275ac10ce65b718998368adbbfd0ad0d27e9636bfd900c1e38803dec96ddbc3aa308ab5d6c36cb4b618fa576c6e568b198f82dd8345018ae26dc82cda4d33cffe49cfc83d13c54d9c740fb8503e49c8b4a7ec7241006abdb4e45778a963d87fa6648af7c5819a10d99684decd6fb0251c572f61a20668402f909a48df034273cc015ee6722376899b73c49825858ca0383613de9120fa57b6493c1ff2063f2297e7ecce74cf7fe5f552ac456159370064cd7adf1e08b0166a4448e01b0027859984f0d8900a7a686222a6540c0da5fa317523e6a6364cc5ae5862492f72ddbbb25155ea2e8d3e4570102910cc1650c8f1f4d50993a2874c30ae94380208be581215f34be4d65e8e86393e08c8265b0ca907e7b56ac1d299a76a1b08449a11b6a994dd6092ad972a68567d84efab0be1fc019b86b5eaec4af9a4a2999673f66253d76ad9303e7aa16940ec7c9a8fd6449cb26c4ba45598b015140b8fbdc46914df7277bacbced9df6fc1e8e4a939126708efdf78b2313d1a76018cea3a49dd68269ba3d052f55e9b7112b68c039eb1270fa3a74752a3357044105aa44872a026bbee6dd7df29e71e55d65fca643908d51de13e542352f386fbf7ec735d9ecdde8239907fea50116173c35e4ffc22cf36151d2c5f2a4d2c23354fabe760b53800a7c3062aebc37fa348a2dff9698b6408322656f3542f8afcdb1fae95aa005a70af1794ab151c834d58c781fd4c4da5492bb459eee66be7b84cfd2d4a68833ee80ea6b4d26c77224c157c8ee8630dfc17bdc353b6dfdf54d204e8d7b9dd24aab972974972e0f7222f1865d9fdcda00110c7bec7fac372534382049f171cb7727fa595ae6be7b7e05736f1302acb3d55d8154edcb2ab76efbb2523becf575d30bc5efc984600a00842b0354ef5147f1d4fcc3a84cc564070fc3248914203604ff1cc3a5ebd91ccf95ff3f546d104e0089e8e8cfc038010b0bc3c3b052b78301e7ebade9f440451194e5c8780c62ce4b6b4a31ca238ec405265afb71179c284030ef9d07569a002a5c5943faa2f4d152217b30d44b5fca2863356dfc40549af674141c4930920b424da9a131e03fa62cd0aaa9e46b606f2afb44658091e68f6f7305f0cf4e904b82d6aef2329159a38b22469bd2edc688a180a4c8f1c247cf73c20d464ace5369b2e39dbf9cbad6f85f01ed63dec1e1ef1b424fcee92ee79fa53ad0261c114a7a8cb117c3051887e8951183853da5ee425c14e74f54c290364b37bd9a37e858ce717d00ebcdda3c799232f119ca13113272980f3d0aaeeaf98d0918b0493ae2b04211ce4ff9f68b35236f545b1dfb31b2b3bd4e833db6def808b1c3de9ca62033a1a5d64d4adf398c087230fce496c0755f8553a27a48a430a65cc2b58aa4d5406b76c66588dd6077f8048c0c4879719904fa85491f47e51c73ad6820660a9f29a3417b7c7c12d777f121758c624083ead289e54b36002bbdb899b1cc6571b0671799405f0b4d9c6e6b40c5dd540dba73c5a45118fc16fc2ecdb16eaed4b9a2682c29888b74dad3e66cfc188eefe038dc60d0489819319ee216634e6c5956a4388ab8a8680b5af7481190c0bb50b941830cac9e8a474ebba6358cd6de9a41b16b9cfdbd11d308d61b7e28321df110448f766a52784f51ca0a52d12df66bf8372fa3473e710e5fe080c34e71767348a06836b521c23bc93a66d5ef962981550c638735831ab21715322c85b0cf7d690dd4a179cef2ae7876abaa037c371eab0a12259950372e34d772650e44db57833fd497dc402eb8cf70eb7da136c11999a1468bbe6c8af9488a620bde758944f0887257b3c72ab317a6590d46a80fbdda4a999617a46e6dc2bc0297b3992ac09cd6f23d587839c30de64c7600f2954debe3cde0195d71baabced2f4f45209912a9e63a235a1dca768ef8ad35ae65d9b2e2c9d73553991ac9d4ee340d81bab4b71ca8367603b94a1c21ab47444b6f652b79d8273a615f37c0f64d763852b9c4611ac726132e2250dd1e112052801582bbad973fc5191b228b475c5bfd1bee725b0e50af91eeec8d88b6071fb738c820c49ff5ff032a676bdab184ddb452eaa247e89b2d78ecbf9e37bf002a2730fdd4f2813aa8a3339454d900575adb98a88c937b603c203041929668590021842e1767a26b4ce11ab64a947fa1bac18b292e8002ddbe5b04ea0f8072b1f127c86d1ace472634d92821169288f5dcae76a46df1b09f2ce5e56e0e7107e00fec13ec5b93c20975c395fdcffb2331471e544e4b36f06bcdc840b74903e909711232411bf812fe013658100dc492474c346a83a760ed564e85eeeee8545321daa94041e466991a8589c16941f4506aab90e99c5c8de4bb7032e363250961cbd034db9ddcb522284294d10e7c1409bc78f18037c8d1dbc1dc337c1149cc8480153e2135d9d51fc6391743d069d0b3c71d6c193b336c92965d1a0f0706d09abd76e295ec90f6418cb9ebed2943ea3054fba6ed6d66dc4693adf5c886c88d4435c6027bd2c3278ff96089f25b448783a1d8ce15d87dddd0c7715d0d71d4dbc80d8cd795ae22a404d14ce8ed6cb27c69122897667342c3069da779749da6aa347a817ef57b0d5d1d04e7677a293940a81209fd71279fb4dbc1ba85e8e9a407a8c44837289669f909fc42fdc654134a7b9385ee014a30a75476ca34775e01f5515236a55ff11850399589c3adf0e1aa351e88dfe76c855433ff379c322f65823899588c6c20dab9eb3f5c1fdc7121567f331a5088ca47838549b6b43754e231f82e46dfad5b9b3b59440c40dbfe525f7931a28497f6cab7d100bdecf43b6a632075c40fe2ab01c6b18c7e24a3c2b94bbcdfe5c31f2540e91cdc072cb8a1eb9fa022f5198bc6797a8892841dd6b19730f9d46f68977b290490ee830f5fee20646212f2f554d142dd2d01ffedc52b085352022ef8652e71ecbe946d4882282496ac985b97903907e90a765b9e0e53d5a73be6e345922f01ab75c204219ea143bd8a3d4c15a2f1691e98bdabe3d91bdd6224066ea717937d182590e83fdc885380d55085a308899bbf0688e4bdf0b670bfc9c14cdfc2f42b93acbdd20900a2848a85c287f30a659cd70537e8c18020747b9716fdc2bd48c412876b083c621300bd2bd933f5c676d324b750617a2b56b161a0fa673d7a2cd9335675a622e8f7d705e6a957b50852f61ba97be6fc0219712fdaf3f386d93f65801cdb9c957ae5018a9cc52dadd7ebde1d7f7b46b0303e806d09b237a359f33a563b7000625fc57e8b1bd166adf4719ec5da47c4295ef16913229cffc40ae5c0b3517981dd2fdbcd6a7ae07a1aca98ed42399f8cbe4ec2562e1608ce2f6cec6bab3d613ef6a30d28bc5c73e66a669474c58df777c544edf63a8912fcb17d5d07432984bc903843fb0d2ed6a76a053ab67bd36a9e688ab374d88592ce206719de33b5109de540b74002ac2db7e1aa31076f312e2658b73b8e5674eba7b08639d92c80591b39798a5888611178dc1d6046c2162034a99cb7a5ab830716498df656dcbb6a2573681208bd3002fc80bdc5ebe298b2b73f469739bd97eb8990c7780b3274a64540ac1ec80f060134d61d0323242d1b85e46cc505ffb9890bda971a7bbd8d987745fe9c720e9637dfc2753a51b235ec72d36a72603b1fda6778a69fef203cbad3af7ac88ac65e686e8007bd70fa3f2b30c4565b970ad26e4ce40959b98042126c2fb37ac07d98015a4768ad48c81d7ce52285fd217d684bef1daf501c7138b10f09459c24e13c54f2c802e883d8ea72a440224fbbb2378ea0d875d750fe85fdf08726d5c59a929907e23514311846f7d4111f7d3036586dc3952e842182ee45fa5332c8e127f338b8e1f0d1820a698fa7170c474917e246a4a2e639a9aea28981470a169223c45b2c7858990958788e7bf4eef2c574516d57efd2e86b80058bc8cefc751a65efaf6b610092e7c7e7523c2ffcbd6b026d8c7500bad449f872e8036efc4dce68aef73573ecd0e182e4ebaf566eb0197ed60d2bfddb42cc0f857c0128ff59ca5e73b9ad9d91be7f5d3c40600c793adf8bda7edc4cbd7034b35506cfe47dcf67e470cf6b7192daf9000344cb3472808f34e3b368706b2ab4d0248c9af70760e18c1bcdd85bea785b1e23c15e0c7a3d3037073cf5853e900223e4752a8b442343b8095ed86db7d45bb63859c0d4004eb43ea9e98c7aeb8bf6f36512fc639193f962d77ffc3a9da5a7b9dfea76d573585fb9f37e222d453f3c1520320b65c175851acc77538774df4e156131ec287306a32e9a285ce4671bc3a330b71d18e6f24b65c69dbf62e05d2170a3fe5118fb7eb42109ab61b1abd85274bcc19ea4789242c045da8999164f3be1e65406e5870086efcab7a81858fd7df721662f7b77527fe009457ebd2e31140f9f5cce007b7cf979b01d86c4f7e9d26fb4452f002e729b740a0139ada08e4efae7ba571b77210188e3972ebf4e3bb987f7e7af57b1b857ee70fed7a8c446bff3787f2e9fe86aa4f7bcaf4608481e650809490703f1bdeeb3b63d88d482a57d97fe6e3fb02835a71b45723865a164079167fde7834f906e34f14d08ff13a40b78079ab6f713c0c1dfbd90e0756dc052d873804d303bae52e2ec557606fbe7a1489b57912f02f479b52c5db6363bdd749be91c651dabf095de100653a7e65f24ed345d7e2ca322063f206160224fa032b9481637211b49bc1adad6d71d6ab4e23572ab2554ade509dde629fa81b70eb4fc60e363cd55f05b7a25a302fdddc79ae30a2bff836a0770751a3f95c49357097237646648f262f5defc4775c9ae8c9f846b7d989bf3d115a7a87bba9de483f9f704914b1c1738f08b1afc06d2d38237d0524381b97a3250f220579e81d54ea2d989d1f91250173344d2d62f9732923f4244b63ba7fe77a581d29981dd8191e16bd063bced31ff449f53ffb5a1723a3e176f449b88de3ce083cc6ba4cfb731fe2d09dc95fb2b9d0f40b0b563c14d486b26812ac88197a919b9f5b6f7c75f512d50a059a2817ddde0db9f3ea85d679b4f7925800d0ce30cd036dd0efd9cc9d3fdc415f370eda67f491c6df98483f3fed8d86c9bf85cc6b28dd00eb6c48aca7fdaab30c230af5382620c963d441e9a8b35ec9d53fefb4a58871e097bee0f539149bcfb76437033d911cc634454cde1711a1c790874dc621f73b066ca8c80a32806439f84b0702f2483bce74d80bc75161eac2c5b2c150bc874bd5985e2e4026d18d628e40e5ed2af8662634d6447c5084264a5b8503c515934e36f4607083df28a07a088468f2e9f4d66541c205d01c8074a6b6566a04701725b6902938f35d4262ac57b97861b875966395b5e3f44f45652b8bc237cf79ecc7f76508d008ac581b9fb356e66bbc29d814043ad55cbbdf91281b93e1cc798b2847815c1408e61094793ff44f4650cc2f92f983c0f6606648a0727841d3411b31fef5d1864bbe473475c50ea7eb8f6ae81137abe93a751186598a4a63f9cbad5d534045cc7ee6095e801c2266472700fa8f56aed4c40cd78cdf97b192f9546085fddaffdef3b22d488cdae91025135375c7b990d45bc00fa01ea5f0b6c2535c54f3987bcbe8b0fd76559043c05342474058b5561501d8b498cdc94d5a5700e261a0ee6ce54290a8acb2bf4df46a1c0c36c9015d63e8b201aec66d0d6fae06841fbf8ecfe0189bc11a5b3a8c95b91b070c1a8f90327ea48d3751265e58ce79ec7b8304d806433c4996883bc21b4279473c86ea1c7b636ac7c9e0e1f38779e5d43f549e16f8786d458b1c62f6925fda1b193dc91695bc6b84ef0025b5726b79b66f7460e919988a2acb8ac5db2f59bc5f5c5f443227a37e82a2bbf54965ba524a26d0739332da09c30e639a784e0f4c371e72a2974dcd7f88ebe4dacbb4e35599a6470d3a08d41ab6f8ff217fb39c6a3b1b12d3e21e4472ff26b67f8b6ac97eeba1d954dfc26abf6880c102ab2b8836615a970b79e5a9fb76906039eb58f8d544321d3b44015df2943720bcb15461d2e8156ebe77b6f0256c7d26cdae2d9499f07362d5393613de2b1a539005ae0eac952bffe3bea93da8e1763f7c9040f68e5d77c1f5c74d0a37904e38cc6a67c541e5c6c4f638a096a0264bde08c6bb33c80fda9522223c10535f60420f698584542913cb40017d849074ffe1abc1938f143be73958034010b6d8352008bce7818605eed9036b85c6f5ef51d4a8d4d8b414e8c27ada29cb8b09c467f306f7c85528776ec093b96308534804ba7f0ecc3de3a79c0dd7052578b7d9d1ac7881300e51b85ce7404394390d801eb7337a379806bd61b0419e86d6b41eded56c0977fa4fd513aebb56cb393f956bf1266beac3fbe661f96ef4594f331155b81bd926c301b7095a0dd68530d2868faadd388dd30969e322b5295937c7d41866b50c074ea1029eecffd671fdb9354d746465261b268a24b53d61019c7a816fb465473021270fd26e12e2f310417053401c82e9e7eaed62caae6c01b9255e8617d820507978ed1bf220165e91cc02a6f22cc2013a1860eba352636a11360cf0f5b208505c50af876c9b8be1e0d1f8f8466de73588bae80597200060cac3f7fccaf02f40eff3ce05615b2b4a3061eeaa38c4b7a91299404ce82846455e18f39c315def08b4cb69f482586426a7c9892d10577a820fb8c1439ce3c645853528c03e0e8c5022417194954e46a47b1d13dca6039add0a94572094b24a07cad73b9b679f6fbad34030c24831a2cdcef7814839beb92cf5e04213e21097445058d021a2e7d142d5f057ade155c93446d775e514123dfce431354f41ad54aebc401aa81ab72fffde7bcbbda59452ca2403b5083109770911c9b62728c3fc24322a1a760eeec44a49046d3e7d2f4188ef9919e64c9a493c1e1825a04e9ae6e8b4e90f893bab192290fb9446309bd25fcd3077aa96d1263e8d97b18ac13c43b4a18f42d14f9a5c0d737bbc893bf28c3efdc706b9fcecd8a4b7da9aab7d4a8a37f46e4fb2d7dada7ec83e278684ec9fc37196ab68abad110d1fb21300861f2b7c0fd97ff3c9fe38093ebb3007df55d7259e7813b38b81bbfe48c171b01a6fe2e464b7f1b0ed90fd7dc49b986d18b9e93031d06e3dd9cba8986e1ac763e7064acede30aa67d921de6871cc2d876779428323fb27a152ebc2dac675327926cfccfcc09064deb09bd49050b9cf4e312b744a9ff1bccbc2c6759d4cb6c1e28d9dd25dca6cda113423ccac34994ecbdbbd580465381edb638be094334f6c31079d32d2c764f51d3c74ecd8ac12d91fa3d8ecf127ec70140c269480a1aea5f95155744aedc9e55a11b275e1b16bb31ad49642b9675161aabad1bc4d6942d492b9fc841ea8bcf1b034345b4a55b35513e809d8e421bf845ab11d19ecde2bb3c384cde9c4729c8054bfb8a009d195ebf3e0786a3d81e3a9f66ba51a9b28c81eee034be1da8a7d5a0df7dd6f60b7bd6c92ab4dfbaa0700001b30359339c6de5a558c373586a965e9b64d2ec9d5f69a14dadb5338b2630e0c916cb83e120c39abbf7fadbdd66a9a7e912b8624bab6fd3af33f4016f40a28d8f458f95021851454f0b1ea6183c20a9a05f0c7dff0c84ec0312107009b2a00340248b9807aa1049d1d3b3a60c831800f8817648600b90006e80e10430c5bad7bdb1a0b23204b00c673855819ea0c74c85480a461010cf8c1c20a362b1552b8e9c00d06187272562b6badb563b23f76af86d5aa250a9a1b9a10a4478cc2d603dca16789c275382366d915dcd58747d9854eb6b5d6c7f6139d2a92e8b4edf7e078ec57abad8f2cab2964f186aa30572f692325574b53d854d8e4cf95b4f11542273bc61b3b43aac2567790abad66819236aeb991bd7eed92fdab37edca82f4387dc356b83fa6fdfb58b4472e466da41b0b1c8fd56e365aef636f1fbb8fd570ff0856abfdfa3f381e5b6f680b38399b1c22dbaff684aab98d8f1e28d0ec4fca78cf1283d80fe79c732a510d91d9f365f6d00ae82fa17ba847a55b1b8bea2891c891e3a3ae67adb5563ae5ac5e2bad5e69ad745aa323a28c74772925a5d43a59fbe3b4fd6b124eee73cc7cda31a2b0338c908911e5ee52ca39e713a59466db64adfc8a44531bf9de1ac83172cca63fd9d8f29b90c42cf2251325228752684b1d528a448ed9d2ba7b49223b134c30a186a645202020243223a24ca0ecbf714252d831b62494bc41d1b4988fd0ee52ca2857b5566bedbdb736815d0cc334ea2552ccdd7f4e8ec729a5b5566a2990b52c68aa4b50a0588dc814c3b02214d1c0e390000e491c8e6d02271b078fc37d0538781c14f09edfd959413e127f3a710b16913d2cfa110c730871a0dbbe6a88076daba70e73c82cfaa17dd510bcad4e22b3ab1ea24ef68c13f49e3dc1242579a1d444a794524ecf22a5ac938bf52a699c314ecf2269757b291c746673d289cd39e79c93d249e7a474da39e99c73ce49e7a473ce39e9a473d21f66889a73ce49279d93d2e973529c03cd29ceea9c95de5b2bbdd5d63ae79cb3528acd0cc719e3dc3a8d8839e79c94ce3967fde75173969993ce492776e9a473d2e971153f9cb3ce49e7a4b587ec3f7dce39e7bd64c40aa566f54345847edc45640f6b7bcd0eb13fad46b7aa5b188bbe8c439bd69e82b58225d8f6b3fb617c1cb31833ec5a01ec18f590cad25741a53a74caa76ead7dfb34c638443591fa56df105955c76963e4002caaa5a4758c5a6badf4a9feacb5ca1d683e99aa8f764ae79c53ca9f71ce2c6a1039c49c2b227b58f82d38847e6c612cfc3262b55eace7c73053b02986614796c84df5b72347830abbea2115d45a6b9cd36bfcb0d65ae39cb4d65ae39cfa297583b6f6741bc3c9b4e74bfb51aea27db7d1e51140d42718a594d2da03ad94e6c8f1cdba43fe814a4a292a5382e6cfa14e27a864e6f3cbbc7c6d7bfb4932ec6bdc31ea285182036adf4f32e1e8d94a92dc377a7af6126cdf5f82daf743267b6317b44e70c0b6fd7b7f3e86836ac8d7efed63d82fd138e48d6918e48aba2057b4c74aaee8cf9bc4eaa125f6ab1eaa7f3ffbdf3e834952b0e76b58e65330a18b654952b0f34ff0c8f6f3b5fa7dfac87d2c739de4e23035f6193cb2646eecfd3770c9dc19fd475ae5fcebd0a794d20b86ae6409b6ed7335fc9e41ea604675d3d7eccedbfdb8afce3bbfadbf6510060b2659c51b4aed91a1560e4bfbb893c47833a4fd50eb599aee215faee8f6f62b06aaf26f1be853b650dd340b2ab176fb6ccb66b48cc661eaec311087b93d9b41ea64f67fd34f80d499d8cae821ecc45630b49f61d67ebef5d65b333b9368150df6ebd7b71ad7619c8ef1e6ce2d72f4e28c28f4bd60ead994e66cea420fb9a29fc4625653fa981eea740f6943f510a7a9b4a1bf811a1865f8180c7f531badfcb0d65aeb9c33d9d0762a19e85332a14cc34025188661f6ef7d1ce6be3a4c72b7cb90e4d69f4f73904e6cf5ba50592d9d314e0965c7b732ca8e5fa5941d5f4a1f36c6bc91c6120c4a9bfe971516d4152b98503ce2503c8a4b719f39e798fc068a031f238d547fc194725cdaf1134000940b3bfed891f68836f1a90e2946e7d4a6b4b4d2f85bceeb9b125a6db55aad56abd56ab55aad56abd56ab55aad56abd56ab55aad56abd56ab55aad18658c1255428c324629a59c5407cdf1793359a6e3360d67d8b5954ee9349d9329659c8894464a63d4219356fd21fb5324f3e9e911a4945246f7a85d4a2965a09152caaa83742969a45eb4ebdaf7e96beeeeee98bb7bde3ba4a60ea8cdddddeb0e8b613a76886118e63976e8ee5e77700ab4dddd9dfef890e567de038661984fc6300cc3ea0edbe6693709cf681b9d4f1789879cb7adea50799071e732467b329c84b510c3300c0c5121edc2e9748f78c8f27188611826b3d51d304d66da3699b66379a34f1a76f7b26ff32ceeee588ecdb37816cf72e9b6619ffd86c11db29f5b939bcb2d647242b0df99c56088dabe63a346c8f25dcec73e2a1b6a1ee78da83e47f5382ad537a97120b99aaf023d68a8b6bc0a568553e1e47ce46afee67d54ff384e587163bae671be48cde3682645f499dce8264545529ff34d70fe3eced76895535d44f5355fa399bc6e92d22a8bf346eee3e0bc11d4e77ccea33e47abfc23abe6555ae5dac784f7c1799af739e17dc0f7a9f9941396b7047e3fe017346de683e067f421e1b4d0020846164eca63f25e5670447c7c72bee67d705ef534349fc2c951d5d4d6565bd8c5037b581cd1fbbaaf2c2943aa2d571833894c44f5610b113f281148dc56e89390c4a4eccf280a56922b2df92802c13fdf1551e7be803c48f5719c39836cc56e1ada4cec307135bfd22628f6fc9ad8f3b52dc336fd1dc59b30fa62da4a8db10bbbae5c79c156b9c8fee17d5dd9ee2b02c17b3efd21df473d56f7d79a3b9dcb3586a9f68a5df6498bcd919eb8c87487f689069b835809bf30d39e5fb9c8d2b1dca37d8fe68ecabeea22cd1d95d52a1b525ff346685ea59be43ccdd7e8264545729e86e69bf8f89456d98facd4475692a7c08985e3d1dec10f4ade8e85e3f99e7c2d2c36aa8405e7b87db7effa86c802c06b2d3ccefbdc7c8fb75a8535111f5ae539ba854f7d91163e85a39b1415011fe79ba0f039dfc2bb2e72f3a94f69263d7413f071fe268bcd41d9da91e351d990fa9a2f92fa1acda4c83e1314b4ca3fe7efa7deea2235af351350dfcf7923a8c7799c477dcdc720b51cb0c7e380287c0ba0fe1b10fc1f600acf02e8e35700576f03aaf091230200ede3b37a9f14dea7c7ebf751e17d7cbc0f0a0f7e0c32078c2c1c30b25a0023eb068cac1f6064b10046d60a6064d95c2ca046a1878f145458adc0c852018cac14c0c8f20146560f30b25000234b5fa47b94211d71447cfe799cf026a4be86e6551f8304c1c802bf1fa03d6d52e009471fd29eff60d206238b07185927809165420d1859aaeea53bd7d70abd235796cde73eca0323bf0f2e896f7f1c3477320c0b0a4ae13b8a37f3af1437287342654e9953d517e8fed00fefefd03bdaf3c30c69236548195286e46931df3ba24104e261117534140e32187b7a5d6cb1f9169b0af7156fe66b958b3cf7d79a36758b1c5921769920c49428413dac0b46167661d97b5ff577e485c1b2e77f5744a06933df68cf8f687ead2c19ebfa830466cf33f67cdbadb1e77b93f52035e2f84f544d76dab467587db68f78e3af612b57185b6010b40506405992e0b3a54eccf2c61b1b48ea7c526c50a17a5a7062ddaf5aa0b41db720fde051dfb922104fe92294becfa4842356ea234724a573a6cd94ab59831caee68e5bb460c30727c477ce285d147ead6cc72d5714fdb0431862744a5df7922fcc2c327e9f224cfbced5bda44e44edb8250b974db7185bd41656816a945a94c3fbe2a262497d4ce9ceb5703744d6bd60c5227b2f6fc96bf25e5e1a7bb6f67d5d307187e6539fa15e7efcda9a3b34fa828936f353990eef19184ac768237578d7d0b78d3dbfb525285b4d5630ec5e7327b2baa6dd39edf97aed89691583628c9104aa4b96f08ace356d26b7ed60170dba6c26a75c9dab5ef15549edf06bcd845f6b0c4c297bab44c6263732fc0698acd5ab261f679f285ff0e12d12d40de48371e73e76cd9dab3b57885d323bec5c32db3bd7dcf99e449bf9f32be2b5e7d79921046fd75feb2867e167830d0795f0f1c6bb703c58088c4d0718753cdd25c455095d38064cf7428bdc0d4e9a30d2410849702922c30c5694363a3e0758820eb79de375801ae85e381eed6740df31cc1d20926d5728d2667e0ef00bc723f39af62375347d5fc7635267e675e810c9b6b597794d03eb4f4b9bd1a163e6e7ebd03868e6fd0b6e08b6673e86198394d1f1716b0cc8da1f40d321a343ab68c831826dcf682ca4a97fe122165732e1b665b48fab99f72fdafb178e01737b8f85b49fd1f33318e34a46e3a0cebf682c2457f3391ebcf9171c56a1c8d5fc8d47eada6aca210ebac14138080b794c14f41c0c8ec7b5f79a41cede7ee88d21f70b8c4442ae32c85f6390b16b4f2f62c6d8767f50be965c7d3f1e948465879d6bcfef5c73e77e506403b0ed602c9827f1664ab9c3090839fc82f6dcdfcffe5af166ba6b9aa63d2657da7fad08246e0d2b62895604e27beed831667f2fd82ec84b94e1af79980db5afe4f06bed68dac186d4c13f6bb0e9877a875f6bcfff9eccff5a1188fc590515455e62cfaf883d5f8b7132cd34aed55b3e0b3f6e5ac0c901400004e0c20b516707860100a131c149cec19d507a95e862324929e56492abe8ee4868996269472fc678da5e76cc0205cace3950427b0e61d9532f91fb04a81d96a0a7a7672f41ed18725b7ef805e1228efc7026723bcaecf8b1823893ee2a432b77dcd77e7d595f7a95744e2a311d73d8ff448b3d2a952c1dab6cb02fdfc894afbd91f9dbcbd7369510df34ee18a4ca1fb33650c5d24095730067f727116cdadc97f7ef631a0372756f74925256f178b5586bad31c0000305820d19cbfe9c73e6ac56d65afba89884aafa8867354aad48ae0b03fa912b272c4d8b1c0f058bccb79a499e350546dbdfb9212c298718d18c48aecbff48fd98c676214a83e44a3ea5b4566a944424759cc8a8821855518a11499dbae5635698b67cec85a52177a8117645eac42db0786df9415ab67c2c694b6984850f7688b9b6dcc20a313bc49668750a923a21264548ea3851b6dda869d6b9cd41df35282bd56ccfeeda4646d7b5b51ddb045545e6d4f266397fcddb2c4703c5a4489d10fbd9f2b378e347eaf84b2bb6fceb8a4066b6ff55927749eee4db2475e4768f3b1851b4f1a7d1a88851ab32413b723650caf1549acd5a776c5b1d9a5363449e963c6b4cc2b08a55cc2b18623c988394a8568c0823aaf56e70d80aca70fedae56ec858961ac995a44860189390683c2f321272488d6252925188bdb3b89e4c7f8b23d36751f0ce97468382321e72488d82b67c6a34c10d8ecbf154aa9a52a552a9a84715eea6572d264777ef91002dea689a6b3ae70ed99d2ea1bb6223f0a74df5117f2a9aaa88df1059d2b5aa88bf7d7bc314f4b85615b12a6ab5aa88fded37cdc48f10071211cb6a557dfb4e58b18704b1c8923fb18b65198681aa21f7f1e38b61f766d8d5e1928d7d04a346b2fdb499ef60be21b256d366a2a64d0443e8c90f2bb2fcc3dc09c18b132bb2e8cc81a62a22738836f801ab4845c33ca21a12dff6eca855db89d4aa2259a699f81b4098c2c5cae18522379258454b3610c9b6ef8739e08f570d998f3da6c34f326d0d3df6b4db9e3a5cb2ed0777bb0e5196563b3bed2b27646e4db7b2d7fcc452ab1d6665f84e8dc61faef0a1dea1f7a241b991ca5e0f5018dea1f7dab95abb8ea6431c147e2d1cf443a63accbacce4d0be4f91d4de11927c4146e11d35c955d59916b99abf7143a456cd1e9f1e1f7248399e1caf78836545c49ef843991ff6447571ecd91501bf216de6fb605072149426e535a19577f2b352271762fcfc4e4c8c385e6d6746ecd0883a19feb00bc29eaf4d608bb9fe04381e6b7bc83502544b96c01633f712f05e021c8ff7e517e259e492f0ccbc10a7b13e39c7f77a99e73eac3348e8be82ee6bdffbba4c738dfb9ad9757b4b4c52a76a8fbdebc71a78c45f723c1e18f997d4ad698f5f82d83b86698f49aea687460ebd57565b33ddab5bdaf2e3bc317bbe4cf7b467e7e2411a3848025cbd92adf65e5c60cbb24f51f616e0e8772fe98f5f4aef5c748b8c737034608e0677e7c0e69c0cf5b597a0d51cbf05f11dbadf29c99d7bc10f8ab4999d6bee50d6d7ba4cf725579e560d91aa0924575280beadede8a5d583972f93873c7f6614b9fad9f3cb1772871c76aef9c5176e75b01af6b5b09d21f520c72e6c206ddf9993d40933a43073f22a5dd82072d786c2f68e22ce7c8d669a9155d8c78de56c8113ca6ccd3372f8b5bed6dcb9af7c5f616dc9237258eb5fb1da6361dd8e7558b3dd6a49f785992ac0dd1059d815478ebbc802db6c410e3b17c67064df9293c177ce57637bdbd14bcb894db77fd8b9bad8dfb1e3162cb2d8dcf6020349c880170dbc91eb06be700009d976e00b0f1c21df0fd8000446080118e1d31117922288208c111081046294600849c65032c6044a4b847002327070235714dc20056da800072b706201ea7bc41d9f89d4e5891d7734c915d0d78a37609a042187329c0021d79e303afc20df1d967860c327073df8c0071dfcd08396194fd600822988262867082166881d10a1c60f1a45f0c088348e48230a0f904023093594d801909825cec89589a62698a4ace18419f989fa06b8df03287410e4832872d00236a45812fac1943054803054065110aa8099c2898a9795368a7050851b56dcc048082e20e3056360a07465081e034e06bc3bd71859065be7ba7253bdd8bc30de2baee66b325066f0ccf733de5d52aaf26d962049df9f3a768991efeb32e578efbd9f2962028d68839fbde3b770a3afcadffd2744b3162277963b88a6d1fcefe8c322777c38271868913bddcf17052877b42809467016c76329e8023743b415c45e82333bb40c9ac662e07866023083916c9b8b2dad2db7d401923a718b15a13dbf53923a91087b3e56923a53b27cc85d637b5e0c1c4f8e00b8106e51533e27b4aa7edce192bab92fe1c30f8912dc8be6d266481e44eacc29ba8ef106cb320c3fb6bf4d41957fdce244133b6e71a2b52fe8a3b16e6d4111e23e3e602c1e6e1c71c4c12ab21f0120dfe6e064a0db6a9adc716ba17d6924cbaffa487dba8fd4ef5cdd6b88ccc9aa87d41f211e460e6b4bcaeacadcebd02af9f4c6d39e8ff493b4e5c63c0c057af90246c677c72d5ac860df1dbdfc00c617216c80b19e21b6f8051136c058cfcf16b1462bf6a547dc417dfc1f2804a9f6c983544d9b5c6a29512016c2563c088e024b116fe687b4077bbe1b8183e2cdfcfa45a6466cde831cb7e02269fb165c201971c1c8d2b263940d0929ff804e2e23999f1fa9f338c3aed7577f7e8899b612b9bf27f1a67ead7853b55f270fcc7d79affbf25ed763f29abcd711db115bfd22d71d7a47496c314bac845d2ff9c2fc1944c6fe6b7d4adfeb5bfa59aa216faa79aa0ebf9fed49703644d6d79a36525fa6972bc17d4fe2cd0eb612df2e6fee64b8cdfbd01bc2dda5f65e1e93dc79d67cef25e4829808c4417245eb0b6122f982f7921e537dfc54caa650364927b91ad346963ac65518bd184214db39b0b3ce9575b8fd805e8ae881e6240427d438437305d1650b27cd486651c61a9b0eb51f2989a4cecfd7649c302ce7f98a37de8b0db99a4f9d68935cd52fd815f43bc4447b7ef552bdc861e63484c895de75aecc291200f5f3b336e24e9625da4cd4cccc0e33a70c29439a3b289d2585b565c125e4125b06cac87ca6fdc85a6bad124492e38bf265493aee6057b4998fad9003b01dc8f60753db67b667dbdfa3eb1049d482c12c2943c29dd679d731b1d5a46cb712aa84a7bae6048b6fee252e811be2af3d2a7f3646aee66b66ef3559de470ebbe2cdcc9eb44f7134b856c97f07e278b44a838c5fb8d62eaf975c2d61d70bbb9a76886dff4e7b1d9009d7197d0f0c33a8c477135b4dca738738080749d93290bee4eacb802192e89425491dac693a44c2e90c09cc92bac8fe5ab2242e39cc90549249aed298944be23e8ddc4bde36b6c2d1802b166add06f4878cc5e85cd8d5e5a00365dc68e7c2ae273614d829499b6913764b1ea40b23e2cc9f63c49bf9a1dc343c493c8e94f7fa9a80e28927381e1ce44150401145f4283414cddf3792fad45fdda4a8084a7f13956b1591fba86fc2a4c8084a3749fdfdab55de84e6515fe43eeafd519a49916692f3a86782f3f79db0222bb2689424a1c177cd2be1a94fa4e62397b25f4b69cf97dfeb9ba8fc693ef5f78da05ea59bd07cea8da8bee6555ff3a8b728f0fbb9382a9a9a140abfbc97f7cae28d09d1c9298c0be69ec1c3350ed8c632ef1b8a40866a7efea744dc41fdfc0f0a9eec5d46e9b3ebdce8ba2e4cdcc1aece09e7a0097768f02491dec7e87376da4b0dca8d5dd855e3b5a592f567eea8a44a55f3a857d5c813a444924912690ac7535334526097141b55ca2176b910c7934425ff89a854f2849a8f9c4afbf8dcbc0f8ff731e171dee7dfa785f7013f27c9fdd4fba09ee6ad56494de404ed8455a3fa22f755a9bfefba088ae651b24241812abfa0ca6940953fea232b05aafcef479696037e3f382068420b3cfe86d5420e112645456a3ef54ceeab744a33417d8d16630b3c06c6010e835d1e2443425d2634a64c9932c5a950a1e244d18990907c0c2cc59e9f8a3a3828aee67bafdaaa2daffe744c4aecf9ba736dc9be7d8abcecc30f88cc8d1d44d4a1ff1d113d48e6e438f3f260cfa7cec920b796e9cb19a79c9db699eccf5d3fe464acd4c61b9aa35c6da03f0ae436aa0aa12a361a30b2349c51784d43c3e3514fc383864504024caeafb99f7a23a8af417d0a85fa26387f2f086293136d2990c7145b0ae4a179952d05f2f8c8f1a452291e9ffa263935388fc3e33ecde7bc119c4f7dea7168bec87d1e1f5945504ff3a8a7d12aab55346f04e779e82645348fa3993c939a1c23341230c375d4c3a2d14c54a99cc761d5d4a4e2b4c9c9c14141fbc81ead53aacf7923349fd24d524ff3393439df8426b2583dde52f5f46cef357754fe391ed3dc51b90e9d2b06495bc600497289416b4f2e31e8719c7d72046202dfb6cad29e4a31cb5cb404ede9455a809c0172c7ecee7a6d8c1bf84e6d89e13a1d10bc53c3751076af29ba579e92bb97eb2b497bde6be50a9267a7f9fb5a5d26b99a3f60928f6aca34ba28f557c78e5bb0d821d392245f989fcab4c89d67591e474bdeebf57a7d3f5fab8b6322b90ac2476ce430739a3e70d72268473522172d7ea4c7c69e5fa9d8221571452457f39d8aa873bdc41591d4b94972757f7a90d7c82176d5e0ca9e351092b6e9fe88c96e9fe60e5d23dacca76dd0278ab70a7e50e2cd2744b4918284b46ae4fbf7a76ada14638c403053963b8755e41af7481fdf216d22030739c1850c21a7020745209c10cb831cdefbe1d7923a594605e1a06963d3c8e13dc2227590a48e778469ef057a69c895d724b5c784460ebf56164fd4e0b4ed0ecec8a1f7ca9c300c8583e68e7706d11a7b7e1b7b4e706a9b83b5d6aa71dbc6f1709c7ccfa863d2344dd3f747ae3cca8e2203edd5fcaec855907d8ac28b9424a9f32df119fd609972b6c38f6e3868ee441691d1c647de2bdebc3825b864a1b4ebfd896a70c9e28b77347768ae7784f28ebca3cf7bdd9fc9d5e0316dca84850b70bd223b0d7ed8df8e5e9e80d93f94c6759833ec38fe15dca26881192d9042075208e54068cad2142a61a80c95314404a60552bc72e8bdb0172685036a6b69fc88f28d3b26bc6c482184834cf3d8bf5c1896330af5bf5ae9c033237a458840f07b62e20eeabd20084db941eab529b545e5bec8c835afea894eadf8f4d303d40a3b57644a35491d185e39ae3026a160c839dfb141654829138d91b52a62e4b0bb81d24eeaa716a41363b12b67fb6bc5d404ae52205efd70baa0ea480aa130b2d01457cefe4ea1024696217a2f6ba986a90cd920e31f22fa226b4f89aa7cc943f7c3fbb261ccb862bcbf68642e546a6d348c659990a3f67ccbe5e31196b0d3729c297fc61b75e86b2f8ff8678f8991b3b8e510d10d732dd09e5ba4edc27ac95849aa3476d94fcadadbd7bc4aa41603dade929786e7bd2210e9bdbcabd5560daa40b5a5c4bf27df12338bfc5be3250ccb19bb783018a6339a365ec369cfaa4405a2065189a847d4a10ac5a6a26eb6cb136f8ac27a71add52a1556a2ed92c3af95e5bae3961ab4911571811457f3aba8506a943d3f1b535b78572d5a2d39b32d8adfe2b738c83bc25e1a4919bfa5943eb55b06fa764ef3c0c86f317e0fc484e4cef596bcd7efda3a23dacc5f036b63cf37c29e7fc5bcae19178d5b841b849d0921738aabf91268cfb75d582ed885da9243eff571f9e1caf62d759028171f266bbe77f449a95178e0b45623d79ad592a5b51ac59a962c39cd391ab277fbe4383303b14f55c31bc709c1ac96ec1c7e09d68fda03a36615cc1ee37832ed794b58d532afb6e4aa1a552f7000014415d8765f66604b75b42088a1d5dece557598c33e6991e921c0930b4e3f50984ee9ba8e4ac745a632b4c51051965cdfade33852ae567b7f8dca9016997b7f9e7893445403a22a5954b94bf735c57d610963b30d7b1dcfbec518638cf11418632a3016d97bec372aacd020d3d71ebf95aeeb8aba2b7251154755583103231964ecb3c701a63a5a17844e4ccd401f76fb6b5b0adb1f5bfdc819c21813e118e4fbc29d0fb49ddb85d105a10b837aa22a5772ea372c843057ccf541dcb99f7d10ece72dc24563cfa73ba84faa32050c32ea65887be83ef6e1d7f220d17142ba75e041f0b7a6a0e205597b9a6118e538e10adb9f6eded6637b9c3b1774d676c1c8aa32859529a8700115568cb295222b7251155564550d4d0a756b308c26e7140af5efb222de60638bb21546568c5c4045be2f59dad3770116ff829dd2143668668a171c6d7981d1f753df9bffea8ca238127587d845848f0b5e0003bf5283a8adb89aefa4f6b80e778b942759f1fb6b43e436c44627c2076a3cb1c4644e2b19367b44ae41949f142d648dd2c3e61ddd32e2ced59f94a42f7ec8f168dacc0fbbc94596b92c016649ae2693ad9225a884977093d4f129f67ccc4604e252eab80ec7e3ee25cbecc8450a0c84705bd4d67dd59616b9a16eb443dabbea6746a9740d188c466ba8bbe242011d958edb33fc5a5180acbd5fc1c8523ebdf174b5efd0b77cea23573db4478b1d54b43582e884b42914b99a3488a2e5a480ad734520b2fa16a85b5b77e9de34f6fcdaf22017cc0d5381d8f3b505483071e77bf2b51ab0cd24366ba7c4cf684fcc44a443fc4279115b5cc183a01e56d8b9b6ac52ab6890716d7f19d776add29a261b4dbbdb714b161d4829b4553f8a4096f8ee64360c6bef60984e5f191d6239675abfa6c3d50abfb0cb4a91eb87d8a5a505d9d6b7ef73b35164fb36284f19b5e852765b0355f4b5772157d35329db9772daff7ebe965cd5d7a8935c8da142ae9e4abeb77817506c3feef609e9bd3c7f2d2f4cc4e212c37276ad64cd92ad66b2af7d68ffbe2e93bfb59749ea583ded65baafbb745dc620a5ebae73719189b14ee4fa0e625bf3e8eeee31c9dd5329d7bf3b5a29998bebcec5c325c5dd3df7dee797f9ed679e95a35aac933511753428a20e9522ea60df7d39ce7c0f92451cd7b6ff37036e32d9e31c753522db45dd3288703cf68974f126e86b9f3da679ac0bc3e29aefc18516cb44ee5c3e1863733b7a6995b1b5784b5cbeb961170e2362977497ba93129cd99adce80f19f5291f72902bd686ee6b748c8cefd5f04bfa120c314e88c5af85beef12dd17ebfb923eda4bd0db9afe88e2cd9497e9e5f3f6259877e484f8d76f499dfaf669d07e2ab9c44c97fcbaa59e4bf7355f51b5e3162c43cc34e48a690b1d2273e94288fc054d9b2e92e893dca5e2ced78a36f33f22b0d2d2768d5d1a76494e06bcb16b89ecbf61ab7559dadea58b50e4b140f932bd6488ea1199d21f4a915cd717e553222f499d78bf1febfe7b7ed1d99ff755b3e98e5e5a5df814f9d77250e66bd922748025decc77b0dbf6392152cf2fdc4c4aea8293c85a9090f6fc8bea5cf2821f14d417657f4fbe20e28d187bfe6691c8daeb8945ae8ee46abe8d92e757ad868dc81159dab039e711f5f72fea9db092c8d99e5feb50eaad1119957af996e391d58b0c7ab6c730ce233f28dfbc2257d3c8d65bf52d22cbcfc6481da9eb8f74b0b67ef2fdb012d988c032972eeeeb89ec96086ac4010ef07700c753b50370943ddf019cbfcf9e31c8cbb49b32fec12db99a1868cfc73f76882c44a66fa164fa9a0d22d70f3320b2bf4afb2deb6c8c5c65493a7b43674e0fc03b34522b046ad522709db21ddea7096014d8eeeb32adc2973acc4f72a1e3a8146dd645452c999a1100100080005315000020100c08c5c21171202a82f5011400106f864a6a563a9286035110a3288aa220a3142184004000328a9019a2a90202646a851d4b22eb3345b17a5caec43f58d3e69d11aa5b30c35bd2d8d9034db3147f496f4bf87a70872cd044e5c2931bd9f5899bf02a3aa17739cf4d09fb9984172595d631f860745db10448950a4adefa8a774819a948fe89190a005eb4fe20c671079938ae56325d27bfcae446a9770ebdc810d16b199b2dd9e3cb5629df56263d30267f8cc5aa67350867daa91554b9a7f91eb9cc5310d991d8ca51efccfe9a28b4e77d46b2c9ff0e6fa8bd0bf08d570e24b800529e30f9c57693f9bba9482469db57e72b79aa9fd1c9dd89f2e6aabf700f206279088f724e40776cba7a5841a3a88be57c3bd1a3a0ed2894f3c84e2453f4c1580527013cc64b01598fc25df5a982e206d2107a759ca1d081007b8e68c0c09d0576753ddc43113c35d52c1937ddfc37924055c38d82c47bb243c4f246db43338f09d019fb4a65c76d54c3c63cad7c5be1f5ec13d852c4b674d1c1265e41e9166ce99a888e45810d0b3a1759508171a5a9447800ba07167286da3c1bed3e1daadc2af6dc38eb64481ad247cdcdc28712d1ebea015fb465bbe35f7ef1ee9c7199139e69a8a029567f5888f244c03ac3dc5e3cb9ce0dced9248ca3bca407624329144cd70642e4872b1784ed7f0eea419045e977f12901faef49209b974e09bb7a2ba32206746429eb12a3e89e64056db3509ab334aea6cf82a5ec9411982954aa2a57f3e979687620927baa07e9e8fda18e9b5dcb733bc5726cbe1709d3d3374f3658171785d9aa41d110c4c06b9cc0ad169a31693157466872fe48218f1dfc6b701f4d11ba83b1119ba94776bb87485c077222374c1373d6a59f4747ece7111751c8a85d22371c44265a34520ae910d682e8061c7d5f2d715df2e8fe30e81edadf7c4c7562cb8c26a5c19b613590551a0aa81a8b159dab6fff3915dfcb80ed1f8a3a0fb61187bc5bb2790e5e0a9731d99162387180dff9f179014ee6fc433f20595f7a46cab243609f941e20c6ca94058311be302194c0691afa15ca1030d9b8d77c1e0982d161a85d049d0e7dbad63c5a054fb17a74e6b6274eab23c6f5b29720e24d22ed0b30a30c98b1a194d28eb5f6f7c456845640ec05e7d135f42ca9e871eed3b51a7313f57f38924cadacb8d27beb3f542d942d6fc793398b4bda003da068b8987b60db0e18b35ee52cf6edb0a11e62ec69328ac24b44a3792a24fb76da6bd295838c8696dfa99e0d6143ea049cf4f0e9a6f3500819b1da43e6294ac04f0fea011fcc650df8f8d11c2526d5392d731988dc0e500ffd640450b2b0aaaa3f231ef7b73030d9c5de429a0ade50b031ba02a667ea7f9c82f75c84b5f3fb9b37952983014077021bf704b8dd61b6dffe0a9c48be7e3c57fdd64c20d7f404aa162780d8969e855f9140c58c3d55b66201dc9c5eee4250698944b819088d48f1e2cc5e6ae8a3f6aa40c6fad1bb2aa3db2459e7aaca034a4e6a60927f5989abe3202fb05c4a2d55e62d8fd33a247d4ebd494f10279dca7cae916194bd1fa619863f84b221f99c8de112067f3433807ac9d6eacae9f2123d1146bf82d5270e28818013002c11992bff8a0e87fba14a33fbc31bacd14575975b273103edc73168d8a3fcdca94f8e79a667975eba3203f976f548639f7e079d6465a2f8bb3ead73d7ee07d6a9bff783d5a1737790df665ac5405cc99b9ceb05757ca4129cb2293d7544b7c08eae218f7c6be0853af1f06639487940bb021ee6b616a12edf4b42b96cc478f70e47ce41cc89045221fa4d97b95cc1e77939371766d0ce8f0377dafba5e75a0b5633372d933afa340e560be7e0354f0259f1589d4cfd6533d481292cb6d34b53041e153c8efa64fe9bcfaa54c8e6619eefd87b740348652f8bcf7da064fd0dbff4f00b40824ea1c931e6ae5b80ef6ebfe99ebeddb34ed797c9253bc128a9ffbbf748997abf9a99106e7ec1909eb4cf9e15b0c6efa41c0f165b516c6a1c1a6c818d36a58a8b618c355978d5b2f6f30f1976f55766d47e86f5c58d96538e574cfdf94e24b8cb0bd78a393ae6d75b33057d241a4706b5f0cf4a21b2797cec72ccb0d5e50e8fc16aa6bbc70a7774106322c4917dec959161e613fcd50cde7213975492159fbceee2b352c9d45140ff3ffe700c89ebe819a9c39a9f169672cf4300ba58a6f3da4c8297d62d1ef38b724fe0ba84a1082a2090784e53ef73bb81381ff14fb2c9b81f1b0f07c1e37901a6877a2a858f7b9fa64b489d9559773c77591ba3e88f86b496efaaddb0835c8455ce305e29893a852225b04b8bdcbc98d830b0fe13f010cdc0e31f841cac50114ae59776577a7ac7f42777c778d1edacfec9603103e8ed20dd4863dd29c38c3e5872ec508cd74999eccea8ab31ecc768c7f45676117b9abb477fe5162bb9be7b7a9a64554b9fdb48ae4e2e3dc88c8cb111427021cd70876a27cf0af7e1ef453a9c5b6ddfc563659aeb55564fa3981d1c28d15e3788e8b1419943a13393002b8064d9773a5d9104394b44c7db123585cd0a5596f66ad8db544c0a07a647ddcd0f5515f2b9e3cd3843a1e44119df8168005b6b21e83d5e32bd43a329163ad9bd68eb0bd81820b9df9e7b88f739db3f405bfab514d037d70ede83a7522c33fb93692e14dbddab079c514130442f3f114bfb71c14bb9fa9e903a2b013289aa54706e0db94fbd2ee39e718c6062301ca66c12196013262e69e0131ac24517f8461f983610df5b545b812abb0e1314bf720ea1d903fe0267bd5c2128fccc5c6adbc3fd5799ddf2d29b1c33e3e0012e88170175d1c94a3ed103559598491de0db57e3472159b3d18dcbb48cd654d99c041fd821d97e94d9835c468890cea09619d8669311277afcdf83f3c1664f426064eda0d19a7e4211fb639d24090139ed06c173ef68c78e5be2685694f29114701f1407b18e397c584796b0d3616eed85f177f209b2b8f91af74b4198171b439bac12d676ab0bfca07347fbd9fc1047308db52f306a7fe0b6139129f87e72fe0d4d848ac2c285dee94e9447e60c764c24b21a5b4ee512b306df00da498a05f69d5d7ce03417e5c0d07ddbd7ff3daa9b41d9ef16653822f62b8687dbd496d5d664cf61cd0d501ae2629e95a5aad8746bf7a77e6d15bb3633f3c682e9bac88a8b1443eba79f6f82970608eb5d2b866f4899a1c0b0688ccb166d38b8fe707e13e9dcdde290b2f15bde7829cb6dc5d104337efe9ea0c320fd2e0855288b3fc698044aae568594e3ac1bc145ba08defaff5a8f10826828598ab4f191a3e711a64902cb5769625d7c5d12aed3088eabc7ab4a52a486da100d496644e8db6670fb6dc1bf19dbcf9e291dd4d4cdea8101e82236225abd091eb14198374fc5c665ddc63e993c1ea99a8b4ea06916673359b23f1add085fe6040d81fd32a137725c2bbf17a3d4d5dac263430adfa2a161d6dd8c1467829263079e13c42c96e173f13e6e0a39996107bab0e350b2a9349551d206b1b5dfb2da12e676e62216a3aaeb022e8a44f866ea518b242bccab4d3dafe9b8511632c85b2e3e414c8661030ee88f445a17efdd72cf3cf9b03818829f43e4d668485912bffa22d8ef46e47b4ddc712a245a395cfa75711a96a7c4ec3a99d7a23ad2b72dd0b9e07e71f3791c3fcb57d07c53f4a095cd9702b55142f140cb2bd7eae1e6c409d45133d961e0c7d998c57f9f4651a51fea159ad207fac0a4c9794dfac88b883d828c6c752b07a3d838635ec52925ec01a3d150dc99ecc3610889c43eeba006a30de39a5702d0fa496e71915b7ab16c86470fcefd8a9d0f2d7713a0e2a8f04abaeb8c0d0383dedaf68c23f91291ce9993e384a32aa4a3766fa48dee1e6471d96bc0cf60fe5580cbbcc23fe7bd747c93c08529289a14d2a1962944edeefcbec31edfc02e802b3bab7217a049b54ef9d8397530565ff3b559ba906a71b5fd7481d5ddafc6db7175545b268983d47926fc75d301e90dd0e2f861218d2c56ed7d06f7eacc92383c286b27bca03680cf64d8a7c2204645d2afd8e13e04476f5e034dc6082f2fae93740ae8d10fe838a636afed76b6d8d0ccab97f8c417a23c99a003be207dda95c1c8aea15c04d6cd6ef3564fde8c61c05c7d7edce4fd892bbe80882dd3bc9b74b2ab665cb8c556ecd370a2dda547295617d911107d69fc6a96cadc549617ccd8377e6711fb82abc49009e42330e1dc9f8845f63ea27bf1b9946f75b8f078f3bb9ee02ef93144ea49054e86df37d7733fa2bef9d6985ca0f231151c7cf748ede949719b78ef70f10e5b52aa4c02ffd93417e943029fda433291de20e4426b9ac2d2ec9c4ab9cf87ccc35689885b998f70dd3680573e8489ff43957bf492e7272c8566fcf844ddcefdc185b03a75582968ac773f9cb61a696753871d20097fc8139761b1040a9f57a0822b89a6f11974dc96d5363f4f4751ef2f839b1f24954ed345752cbe755d00e533b46764bd84bc519dbb732c441ff940079c26d5a7cb189f56e0e81c88609528621e1cb95ebd3ff717e53415a6819f1369eee016e4fa2ae0df31049bdff3b193e80e189be1f3804ae4f160412e7c5f78d9a7904765331ff57b5725dfd92cb51682e7521ca4a250effe8d22874374c023e80680e9f1c7f69dc8a21b732ca656072a7179b51dc1540bf2f5f60b16f0b28e48b83d1cdfc764a7b724230bcbdafca4694897c3137899f039fcf22b8601f6c530a4ccbbd1cc0a0c18db6c4635283f27e9f98f28ccd01b17c360f11cce817de9c84ca22365e4ab346ce614277d4486c215753eda6104db863075cacd611da0236e1a38bcf69ffb1975f4f7820f5dd6f9fff73e22b30e34befbb9465947a589e7268c59d78466d576a2a5624ee2ba290c7072b42041db6275e3d33f3f8118d39bc1dfbcb71ef62404fba09b6a528a2c6446a6d6df79b7553f5f3366b03cfc1498a79f827de4fff5993a86dbbd4fb2d0ab33232db32c20ecd0eeb4c001e37918a3da6fabbe570217dac736e58b752445a1da275220723b8e6288805b1ef9ce010fbce57557f7e1a10cb280120054d64760823c81efccf39f2100f70a2fd675440eb437a0b5e8d38da5b0259168f417d102ad1105b9f22725c58e1e26eab87cc967a368a384a5d0bc13ae2b0bd8321c71a2997500e1e7f1b297c32cb9cce263e0b74064e257e9b81bc7b7d4a7f0bda0a7fa6a41ecc6f3d58c09f57066444134f106c19254f3c645e6ffcd57f841318fbe006e7b0c494ee2bf1096ed65908ff5e6286ae1e6e94f906843d2007a2b253e18f906010f962a2ad89b2676a270580d503ae57a53fa58cf97c8fc2b486cc8a8432ea30dcccbb775ce6fde00fa495c524118f679c68ef17ff1e45ea6889aa5d5f2583ccf10e170e48f9328485e6a7bef5c9554e1daaf08d9c9c4b7c4cc1c099cb3c4ce16311bbd7ee18570e210512350931bb64ac429e53ac7b66897ec4b354ddf744d24a394e15595f3b5668d832787c6ee395374a8f704295f0b87fd75b11734b6b3b256119503d2f9f5e705230eb49bd53c66221fdabd8feebfde23195e07357d442f496adacb5e6b8786c737fd96875bbeff28e6a9e860f1172e7b13e06c9cec3b61401d059bc3f9605e3330fb405e053ed4a53776643caca012484075c0b062cd29d2437072804462057d3b4ca9720104bcf2cf67336c689084d4992fbdd6f7f3c38151a5907aab93a95d6520139e3309f5f03d3385ea56a7cbda509efa9063d6ec90323b9393c17d41e1852ddb01d5eb062e7e6590c75db382cfab29f0c1a7ef1d09c7c8d229577a811c5e0604087b31b6d3c61e6d58cb42873b16bb78edf576a3ba675bbe039b3a93d0c231781f0a40c40a4a69c49f0b81163f17e4d9f392e30435b2b235686a94343cf1531d4a4e6e25034efeed219fc27b45a51b77a7c974b99c4e8c16df14814e8c3b1e2e7b42ee292d8eacb120f29e5db386f9e472014c1b39745181c937dc7753f0a77649595a867c0101fbac96a4c8913f7fd2e3311e2d23c4d638d6cc29f8828e695045e1e7483baad427162f6156314025e4e0ee678bb87af7a66bf05b0f4c024aa2741b0b688b7595b1b3cab46acefc1ef791e81c5b65e5f0c81c6a0ac10a0d539ec25de0a1e540c4a4ada318c7577700b64906afe7c2ee210df8e86d507a1d954030babebd008b0d5636a1f70b0b0e95afb2c740487ff2e2137f2800642625387fc89a3962b613655ed0586c43bf5acbc4ad984091628200ad04bf93399d49b58cf587cd28c453a0b1e3db6394404c1061e2a5821995cacc1185de1045083f94f57f4ea588aa823d0c8ac60f836d5813426e28f8b4129f50e7ffe232c6042b816a0ef279f13b6d59d6f0a9009b9c0f5249a654d37fc16872395a7516b46e13fd4d6a1267f88b96fadb45d0a5a669bf9615e01a18dd4b0687445e96237e0e05f3981b883c97277a4371b4adf98e39be3e9144939642fec2f2814393e694a30eed9c47a853d0bbc261e707aac00040f4bec9c8879805d959902c4809b8ec5970a8ec1bd31a5a8fd149d45cdfeb138995eb4d215d0e04f1442f52566d3eed024396a5f5aab2dc4435fb0d06e233ca8460cc2901a09b5fe71337d7c8a0895431491d95b6a741465f1e1bb29ebf9dc3d99ab9595954ccf3462d4d63bf6fa3918579c6edc466c90ccfed614fce3353809658a6253d0d03fa441758897fd50c493445d20651dfa030611abbbf021f545d6c67a450799372c74e325b772dcda6f7cd847b67509f5edbc8538795832b6760be3bbecb9fa72fadafd0c8869c5f58fd88cf367d7d102b89585aca544d3d586598118b3ab0af4adb181ec9bd7d46c52674a772b64ccc12b59107ece7af06e25f37cd7295d232f7db64f28335aaf0fe7d95c374375166b04bcb4d6f80c0f062e6932ff1fa1ed0a66220b4937ae652169f2289ef19acb84026e70a210e60f3816b7b9cf44f14c2f0a4f26486c1776489be9beabf4ad3c91c3a53ec73d69130fbf12dabbe605d1d30654c2f23c0af4646cc74485ebff865e701e6df1efca10cec7262af963d8bc8b80d191738a2f128ee868b1253aac36134decb9b4cd5a7e848de2e621d4d5bf4d53aaccc7afd127b7fb38d674bd336a254529580eb62f625b3aae471083ca49d4a42de76b960e35e3b69b7e88373449cb273a0fdd1f3bc7c56366b779d41899b3ddc024aef4e2844e0046fcd77889009fad397d42e0a5c64821620b4befa17e3630bf95e2223ebdecad872236206f7f2e80b0e1348fc5ed5db20772248b09f688ee66d1acb9038e6bd5844c15d214a73ede2d47f3e4abb1ee54f3902e8e72abd8c5920a0efd0aa522ecd621d3e04f4241c803685089b0aaa032d570854139cac8ee8fab0cb4e1750150e47a2b6c695f1832a1a87dbae36ac8eb6d00e1912de9bcb5430fbc9fe05564c6adc32f3d505b015f594573e550ce51de7196beef0960378140aa818fbf6fbbce123bba0a7af01eb93946ce6b01f09757c98ce9e176bd65f723aac353a3666fdf6f3871c24c1663ed7cca60c3b9d0da712938c28f84c37f3a981fd02b91ff63ab3d726c093b5910d04e951ec2380377d80159c4b33b3ca78d9c27eb7d71d0f2d3d7b0a3dd86ca881fc3764a19fc3d34b527d617938a9a7e03f7143b986ab500a91b14b0c18a8de14b31a1c5ae36e85e34862f2f3ef97a86df5bded41ed3a920e5e2560b3ec21ba404e1b4542e292c72d2a9df5731ff165a84b6b1dc9fa87755c7682d812538407642332c64361abca5c6434f7f70ce4e6b51ee894615c2eff2d5528c864f450fcf76edb0cdeb242a6318900f3b87f0609aa0ea52e1bd530f2c06a16fe9d17eede1b1a976ade08bc4288223c54588ddbe33452db81ec4ed76748b8c0bf52fd6d9791dcd44737d4ee16fccd591ec36f443d52be7529a0f51cbb7e7f17bbcc7261b981d2bc343ff46d9c71db9d4581a77c39fb129911bfe61e81364611439e3bcbdef94ee9cc5dd0c4b014464d59f19771c399dfa76cfb6e9a113ca4efc63ebd8f6b4b60bfaaa710c46a667048453b578c0b2d1fc6fc1bc8a286f1254191d953eb30aeccbfda6c56665a2d9f171bf4b4098b6a1af892be768c66140e3e8b3fd240ef1cf9b95b8f84759930b7d8eb75b43fbcf61e8febb40b33e5a20011f6914063bc3bab8f7e5ef6b7703366ee931a5b0c11a4071647185f67df26c60605dbc30c2f1daee4a0f7ef1cb566eceaa415de13dea6a4efce4803900fd0076055a095899524de9c2af94b31e275e699846535a28537a3c06aa7e78584a24f860eabe0e7a636c48ad7cf0b97a46d2c7bfc37b1bee7632ed1f3ae2c2dfe0e45e2fa3370909698a02a685ee27aaced9e00d777ce79591fce7b5af6db88906c612fd7358cc3d1c101a10b9930bdf93366534d08587dc9e1b55e523dc260df37cbd9396ac2df41b8ef1024202a168016254fc20d777a306ac6a06eba9499524ac9b6a4585ab24e58999047c7e4c859b8b91019df7e4ce912277c2a70497198e84d2fd25386821634b92c0be8e1a725ce6628cf7c912e64c9d72fb2c7a967998dec4762a97d22fe1180ac6bf8e4a7766db5ac6a8918b0d8bd511ce3f9344641ffa004f2b14869bd08f6eca853654ed62ce998a9a632f88fefd82818dc0be06fc7fa4e08883023843059d968de2ea1f3819bd98d39bc50db318c8c3b069ac6b6a67cc5b21102427e886517d219c2d2f5c6457e135d2dc11074293110436826212619d6b02ab87463b03c26590a0b033b31828b6d4f45f4e4b0d4bd6b66732dd5366618c69a65be84c5b3d6f9b243a0f4666d22ff49d349f8baf5fb4ae5c336e3ee2d68cbbaca32112fc04ca31f60d9f1e1573c31a4673f5af0274c0c1a66ebea2b83a0e1693e2a85430a62aa126f320dc7fb3b75e0910180f494fb49beb5c8bb7262f015127f21778e20d007329b02385428dd1d25ce28418cbe5fb471ec4f9f3ded306d268efb2fd1362dcb85cbb0454c877a2d259375b4ceeb67746a17db194b19834206347238def795eea0f680738a38cb1b01e896a1721a0e844dfb0a7e318cf8c962b817ebb149877cc127ceb147e8575cc48f567e828d345b9445f70d25d05c0ac77ff76e908a56ca1b77eb56a333216f050a148c4ce5e28c5bc8114d29c2e87f9b2c2534d9cc0dc03ec335874e5e54f92efd3a824b7f9236b62a096e257eae336463a978019fafbb6653c1846dbb5ba6c091ff449afd4d194fdebf44a3c2b8844ea3650bfc39c61186113087ba6d4d7d7881129b8322bb74cc31f7eb7d84e780d7cad957e88fd222312be8b35f8161dceba4b6ed3cd017fc1452dcc98f7e131774dec2ba95039b7b55a99e6c148e8fcd756bd059ab33fa89e65b7790c685d6b91ca20a8bef606efaf9814bdef72d0d081d6e6a5a4968f9139796d181fdb44d30d9093cb400a7d829e07da5197f61b41d1e8f6afc4c63659dc83995fd962d6c3397e306373344ac5f469a0a760da8202833f7c3ec5b733d3f8bc11923e623f7a7bb9ccf15a066167c1b1bb90904a037ece1550b77e0729d138b327e4a3c1c71efe022473c23f58a1cff669f3dbf591455fbe4fed3fc811d649c5a1106ff217bc1d2ffec859d0067ce67440fa49fb2aebb3f05604b5d1d8e4f0ca908d7a40dc01e614b7a085bd55b8fc8c2633e8ac5e39c14d85dfc8600541c88c8cdf5a8c680431adb0bdea20841a9cc84b705109bc0bcec4fcad3b9d06e891a838453a257fc373c39ff7275992f1162ada93be5989b1b1d9b67837d2ab5db1e3b8a3e74104f9ff502c3d5bf00a21e713deff629a9ab1e7477430a93db68d7a47d964e1904f4955cda97dcb73e5a89ce964c3a05d5786cd6a6f15232a7d926f87066f4ada279324f4adeb260fa74359c0c2c0c84a1fa73be8cfd039ce8c117821faad14801a198c3e971ce1f44118b7aa413ed4e7ef37341d0ae380885c584686a3f2f43398f6077f79b4d3fe409dd579b6847ad143a99d4440db23f139b5fb6dda862cf7622ef64d34528e67436ad8529cfc98173e620b50ab32eeeb3e61a31785dcaf610f4709a0e5bb4878b7a50194dba750a5031a09d8ec6702413e0d1698fedbc2398c05b8350d0324162c53a28827bfefd95c5f64e63c9803a5cb2cdaa6bf58634af649b1090f893b01820c4aed27db364c8d5924d2ffa7c5de6139ab91f8188803a44beb7af08088e3064e9bdfc91de42c870af4d4c76116c980e81aee77d114d5896d3b87ffa8b817de14fc282b2bf33bfe01b500bc1b525197cdf20024dbd1b0318553f04933983fc08453574e9a302206bad467a7d201b88442263773a3529d4c680c25bda741460ba5ce95a19e86a0640b4641629d1c04a54afe8be890dab47045308a1b979f628ff25d3f6ad5d6c78561fc761f2b332bfe66bdfb75982589db86826b336d73c56193f48d27b937d1dc275e4c49b94d51c161cbbdb5667cbe4665f8d9e2f17d4e1245aaf1c2313dbc4894df5fdf51d0dd4ff8e98a25402acff5c2b9ec772fd6b1198d353363c75ab28ba706729ab545e056e2b90c317585b0bda0c743a6d0d4f65b635cf957112da613ab2f0ca6dd34beb1749903dd9c49daccdcad5fb8fb2b872e52316adaf7dced2c5cbcfb2bc72e133962d2f7dced2d5cb8fb2bc70e733962d2f7dccd2d54bfefc099744d07b62aaf274a46136d5d6b2db9393b9ee8b5c7646dc39c3607f806a01119bc4e0b91865851677b70ecb6bd71f65e1faeae72c58b9fa188b6bd79f65e1f2eac7ac59b9fa188b4bd79f65e1faeec72c58b8fb18ababeee5f3bb938d2342e39815bc5951a911db230d5c012230a4112d4926a24d0e83397b0c42b5ca43f71f373d099574d113cb124468457da594dce3d42a171c04a1c991b64d91f492d2ad4b86eba8981681ddac7932361bb9b07dc968fbec680bec3e5bc2034fdfd7c47dcf3e1b05a7a2fa89a32215dccf2da30cea42697f1e12ba3933ff498b0f618d6b3bb28b4f7e4ac0c6c5b8014b05cc77e51314ae52083ac80f471f8a708a1d1ba38416ba73684319db7b15066f55bd6931b107b00ddcce61ef8c680ed3162bc7e73328669d7e163a746986acdc51f48d635ce852c66909bd32fd109582bc6c07a283854a7a7dfe80c7658f206f241b24171032ed415867da98cafd1123751182a247b9e320db7c2c9a6f03d875d79d2a017baadc04f5d278f1487cac48e01c0db1310bcfdac2a51f41f6f7c287b81c2a03e24a213d631fa8acc71331d4c3476ed22b336622cf107507a4fd4a9f68d89f677dd5315115e4e6a0de8d879a4a179dd42985acb4bc2531b1a751e3d7d6612a0327639e59b32fc59b373fa129e8201b7ed0b2591d09535bf3658a74562649efe81431ca49f67f6162e5794e0be85eec2b1b52a1d1e02d902f74e2e2c8a992e987ddeb2a78fc43432e3c72377dd32c519aa546cde27026a9a984b202d7a9add1d23396362265e973a705a3977387888e3c23a527dab47d6154611bc310eb1322543376df8ad4f74d852488e4233f5ec78e45a63efb99410b189a78cd0702c33712fc48adc6f320dd551dc15301ce4edd24a0b10453090e347ef9cf97445329e5af13432aec18d5a2f5a9d30a489a265a7d1ff53e2ff69a896afffeba90059c56b94f92af82c76fea97fdeb0837ca2068b7833228c5846318f7d394a9c4c7a1e0c326144ec82d08a17c97cdb4c9a15b1a482d47d20c14ac396e5fa0ec3958152829caa93464402842573714eeb1d6e10163cf612b2093ae7388c250403337b61f0c8a9c5faa13b7ec2dfc8d32330255e879a7be65bc20d8f1a162e14ded4ba5cb5b689d482b141d15d13aa4fe3eafa5b7ee5edf39ef1ded459dcb5a3569309706eca8eed8c11d6b9c6f6117a450b54b10d09c8160ebd23c7ac807a069e22d67edda74de7f1f99fbdbf85ebec07913b2d88372b700fcf77220739927942b24fcb3c4d0a1a2b7e66ab0616fae5b86898d9172950fd27b9f4f6cb2a95b32f434996a5ce30268918b9954dccf17964b936c80b97844b449f9b2b21a9bf3508cbd254961237b4b2a4a00183a1a5742edaab323c6170aa4510300c807d0fd80a4af17a20f7bfca81b878854afab82271299b0882c5dce76ea4259d152527a1259af8744fa63f932bbb711d9b4d3b37d0aa94349f78b069c3489db0fa825ffe1aa1424494642d9a75428d572d0962c7a3901fb5b3a850f8b255ea260f7809ea5233ff93bd8e74d8a7d362331662fe29ab26ce5b54165f74942fa1e093c75304a61353e9848a02dcab925885b657c49df5c73d28f336dae9259290c0f9af9848fc4c1fb25d70f95118d8654b5c4fe1885c28eebd174f070e1e851f9002c09c7a473030a42a3863f6b30336bff4f6cda286c0613866b690b09c9d99c69b3e7e1c156cbb28c3700b6cd481757b3b51019acad5e1ac4b5353e92dde733649e9625ead0e9f21abb36961bd9ab04ddd6a909b49bb64b3e03b84ce8050158a580ac48d9c0616cd91541f27eaacfa6c16e5f65e3e9c8c4a203558c03c583f886e20a85d573aeca70b98172d8813e92efd7c4f72cd72bcfe526a97ae17300c77901f7ff439b00b47818a203d6bae25d59661984485bd6c09d80364d92ee00fc6d4016139b3d42bd42148f2f1de25c4ac67ced12583a250394ec959d55fb6f622a6207e45d66deb56795377438ea4b51d95eee143c9c81c0e5305663c2f2bec7e649687a791159f25999cc8506a53dcacd1513b818ced8e7af5a0cb8f051f955a387fbea8481ae920774ce1dfcac25f46c0c336af790ed1169832d3bb6e7c3aaf3735177ed92e707564a4b2b6809f2259d814ae6f8b3ecaf3bdda2fa2beee7f3b0ef76bc8f0f622217f6adc34411d5628e37c1eea8f20214acdca138825ddb484f33e0210ecc700152dd88d88c35edc6c7bb158115f11c4ae339bda9a1af71d12c10807964fc206d323d53b7083101289ce08c26ba80753575d2bbc84b67cc68cc2fb785456b2ba6bd624eb5037725a8e1370cb937c89b39b2be9659745ed5657547a0c58f3fe66bbad2446c5e55925854ff500a02c1231142b0841fc01c0a7e46c41a4c8666b1247ded0426579af6b22b96920906540ec9b292de6c845246c479809cdb5859c33ac08444c11e7306417683a6222bf3305d9073206b2f04e8c780c3357ba8371aedd39d22c715fb1a1a9f991f59e5af33aa1cd290c66559de7aa0911a0954dadb7b67151f6362088aab6fb3840d6ff88013c42e110f18639983c3d64cfa55e83a2aab3b43f7e2e012fcbd2c84a75bc4782723d10429e60261f9c54a6dfd7c2620d2f9e8ffb3e5f697fb6a07c4ab66c6d570b1ee29b1dc5f597d0c9aaea7165fee844e5a2a38f6e62c4cab099ae1b209422d2e5e9913a287f61d36c8f19bb4f789a31b7ab11eb97907647ba333d718924400d6c04adf7b07dfb901f132002f7fe44597aae4cbe2ff2c164fa2b77457089e013c393a1b5836509fc7d211b90a7511206f66c3a36cdae0435f28b0a6bf00358eb2b579ca809bb17ec80f784b288517f92eee11b3f794e56dc29a4cafb910f701f24a2ea3a5a135ddd3154884105a49efee2ee12afbefde9cc3cf84c3c7f6a79d848296cab0a1c6af1c5f524b2d577d36be336e96aa7f6931ed2ec2af71046361d5428e55e90349c1b1ae4adc59c6684b3e31ec98bd4665b7fde216904c7bf6153bbc0a850ecad851fbee086de3862f7810bf172c2ef4de69b144c660bceb0bf7cba374b72b76ac735835b552cd2981eac374f90a642d9227107a47d4b1e4714d412734bda7124113648e77c406e686031b9793f492c287656916edc0024a68c0809d97c5ce291d2e5f3a06da3dc59b8d1fde6cc6f1d81ef6956aef2d138abc728dc1c466f0e0c220c4c9e206fc4080295ee1b107868b7120947803641ec38d6e3aeb550b6f31ecc81e90ad0fd2a845bedd43681b4970dad6cf6f9f0a9f92af5da094046e12401088b4c50da0775f583204369e75b6f3c628e19593b55a71603d0a7fcc2f477e2d291b68c00faaffbb1727578cf7206dd16407b8ce662ff222337b1390eca2bca03706471ea7b63261a190bdc069143dca67a4b8191131d2b4e36cf94cdb3a5eaf881a0816225524e6d27ee57f3a612418147302f6592dc6d435723bace82b01b956233486fb945e5630e66ca3759dc67a9aebb7bb8984237e9d927060c48a65943a77b960c40c419a1392c08944a1855bae402a09f272be43ff215196477c5590583622b200610d0f60ad3ea5aaa3dd880ef4b233fd1c1ab27984a9cbbe5ce304aacd71c21a539cdec6e4a465eee778591131658518a2bf1866b94c36f9b1c77679e98acf576f52d3f13d2f9e9ded4950f885dabfe4747d6556fbd578fcef07619bc3402ce68c2d0214bfd419b096057f29f8e24a0f8c3daf874b2c38f9c13f722ffb15425f380a8761b649ab99d35b5b7c903ece8d34c7d6a403bbe314d525ad48897f16d0648cf69575922f15505b0b2d83c60237a89d77a2df6792e58b9325f6adaed38eccf3049ae87eac38166c9e370a3b4b5352f2e5a1b7abc0f84355cc52bcd763a3c23d19c266e553e07bf7b4a510d2cc18e737f3c0f6cab50d7dc714318e68bd04fed6db643c81b8b443cf817cef280929ffdc09b371e59db45c87097be90d18ab972752f59bf2278d5e88f66499e0b2946df96542a575090fee82491ac4ecf7bc0302eee7d681eb4337c7958bb477608233260face943dbd05fbe8b9e297bc7a7e4641089b99333c1518d8f0085be0f77ab2ddf3a2dfdbdc501749e42d073f4349554864ec8974a9e2e46ed049299be1c1d727bff27cc5e69abad04a9968d982f1e9a9e1c8d02a1e3f8792a89ce47cd6fbc4a836ef845e72a6184e23004247c15de57c68051471b6ab3482b784198e3429133c4e34ade585ecb7b310c38c34465565d0cb09cfd62ded6c1e044cd2e0d8c8645959536600c1a7e141e7a8df0f7514c7d34aa9ef07b08bdf9a74cda59324163acf7040d8a93cb8cc8a2e4b4f6e1877b03e226dba58b06a5eb9c983774b0698435e79bbd1c081d88c2cf26f7988e668246b77066cac19ab20095b31df4938542113be8f05f3bc84c90fcc752c0ac88214e463a928c184fece897fc6ae02acbf3f1c4ce812c41f377f3a7601a43fdfe5845c12091752b61e6f36e18e2270a17a10b11841be0838b575223c06e8a0e1a4c4456ce801220a5454bf04b554d506145f97280560f897e9866b281d422f0f7656a949139df53b0ce70b97aaa73be88e62a69438da2c1957162140c0a308962dd6646273eb20af9ea369b1791d4264605a12446006d3c62a93ca1aba6b265d3da60ab1f69468029cea48bb726960352a08d230939b7be1839d6da0a258969e1892ae0d92c3f1e499c268164e12047efe0b920bc7ddc87b74ae0421a84bc0c3ba3852fdc54908998a79374bcac77c35b5fecdd6ce676019a23145431a025301e3d4405174c022444f0175dbc5926d41e81fd09680f2145b8ecf5f70c9b585ae45bb4ac06db206e62d361271b51f386b40213f9238911547d4538a75d0b2b6d41bdcd0df82fbffbb009f5354f96484ca40131e54ccd766a4295f52c7264130cb9d73fd1ed9740bbb1e6f1cdfbcaf0ceaa1acca1a6964305717b82ca20a5af98a3173b3b094e73869af2a7db0c55fcf22d151fa6c18f14abd8ff96fd57a10ae90b36dab430921674de50b1c8c3ef532c1d862c2fcc7603ea62e9fb853e9ac6f5a65b3444b0ee68bdffd206ecb18b5790be1d0fdc52e36630b5adbd6885dc8e9e838c4763353a1d63bde93f6e980e1406815507093b7e439bb44cd4dc2401968519dc67edf81c3d44db450852a8db12458525d027eeb0bb4158de369d5566a4c7be52ce5ff622dfe29b425a7400725b5ebf22d03beee306e53b441d0d471086e24d3d2d517d026abaa40d9a7eb996a13c688d792390dac60948cd5054e84895d73aa8421c99fd169a629803d128c0f602b94c1e1269a82246d8dac6761757c64dc0f9c7a55bf0791bd09758547ec3f7dbc62fd04841f59be9a6c819c9e2e78a2f0487a4ba88f0ed1622bd7d8f09453bb3c31aa9e8766d7d8dca6f59d94d75e509ed5251132cc2d8816bd9656b66eb3d07943a49502c0d7d6d30a132f6adca872df96892be4283b2e4c436a6c1207b6175d079953e5fb4e0a5498114257d38e2ad548bc1c3c04c9a12cfa6bf38c9c2a5cfa0e208204bf82b1303c56fe3b4dadd1b8ac555171111f4d1645dd8d05d58f55ecf60af214f89ee16a5d3f3e6f53a884ba2a0b499b6d4e627ba8d61061baf350cc324878124218a2d44d71df082283212b6bac0e5d93561e8c7791de6ba131b1d67feeaa2a58099e070ef2264ea75be449f70a07bf98d181ddd51069d0c3790c1dda3ebaa2b0139efd14603029a190f1a49e85bad0720335587123c7237cf8544be4a463e8a8b56bc98e34280d5b90f06fb9f6c864260100bde7da0b0547738387ce379cd66418099f0ef031327cd01695b408819c64c71d75cb123eefe8e9fc10989b6813be4305fc5318e0fe229e4d368b189e7645aee8849a49cbb8c69596763584893d36f42c4b3079cb9e098b71ad6d411122c6b081509d037120085649679ccdf12b8c181fff4472fa38dd4a54669b9d1391d935162d1a56b80b0b465c09d3785c5666a8c24492663192fa80324f93070d09c9e87779ba7ec8bc64c82c72d49c8f06b9e9f44d58cbae93a44472003ed40ac427e5d0f6e54aee8a8e84b67ec92d21c10aea0f3db71e41be29868d732127038a8e4ae758ca2121026c5a179e70690a23b70809abc9c290cfb7b5bc0ece20896e3764d478b03443ad71e05baefde176bd201b0acf173ff8f30babb5fd05b096558d18242b0b92935ee8c680564a971e8212b48d238237f04231d1a31cafd41bae173f835c0395cc24001b0e95453524733cc625506fbb3f9e67d09d04a6f9f7efe9cd3e7447e72c99356033ce8e7e2ce2a9bef5aa45fedb37920ed5b00169d1325c0fdee01c0ce61a4bfbc5ff3a1bc062d531c8afef5d00814c5d671525e71a1df1a63aaa81891b31e4376a13d7cfe677b4cee478b1da1a90d10b5c07602c83074f33c0755e365711099f07a13a672da4fb4b003bca2375d8c080fd5644df931a8bfa046075d5ac62cbaa49104e26d364f55c33ccdc51e045e5aa03bba1c5c7efef1bb3c952ff1b82e8b061b1cbc8dc4c5538428ce4eee51e57b6a39428aec4b4a6da33aa13057cfdfdeae376e1911da02c6aebb7e6ab6be955cbd2c5cb63bdf2b2dfeafed7b47f489a71422ca6be0cd8fde519c9e3cf88f1c63c9530a08221c015e2a4b23f2330d22f4e0b41db5627cd914965c382113535c3efcaaca40bf7a55012b8a45530d4e1322e36d2c53c58886c99caf51bac7eb6b0aa95a4552df5cb5f6dc7d7f66c0b96eeec94d1e914437410c17f7f5dd3ab7b99b09f4db4a9a40c5bb106ea34970e7515bd26cd188420f893869f103250048b1a017c8759ea7b1fc56f4c65242a206388567c992a6a8b36011630c685a997fa364799f9f10662c8c58a6e636608c177d2a2e230e9d8da89d370089280f22adb54d7f6aad3b956e0f91cf3d3ded5585d37a39500f072dca80c13f51f83ac981345c657afe314d86e8ec4141be343422a8fbf444248ce107037b336854ca28dca0e6f67a0d900a1581c222fe6a3622d6f7a1d3d9754994addb4e77a66ce88a8f78d09089f8b6abd17aba42e1704eb8e9032987ecada954252146beeb01f3814fcf64bfd808026d82b6c23a47db5d95aac03c460c638e220a8b0d2d3b5e96daf350a45278148757a7aa7f4b748392f0b0772434c2e3af4c73009709c56fbab5e7dfac7c0e0473c4ccb17ad625e1202daf8a0473ed7c882d157e479fefa8e398ddf66162e9d83b7dcd0b027a6bbdfb33b98fa16d819445eced39ff8e41d8c8af64a30be23f9f7b5cb75dce27d84a97ffdd627a0a411c3aea9f7d7e1f30b52eafa25d8912c4103e55a85aae041edd3fb3324ca9b1fc3ab7ba809762e15f87d15d128a0a2b34a361e04761569f410c29e38da2cb5db9c81d55e3e5177a93c1deb4a09212ad1328ed80d7745ac73f82ba6adafd63e883d5a5d2a42e8fa8c60f9113a53ae151f9b02cfa5b19eafe396fce1e5431c76713e4ad1d3147f74390ab3695f302b337616ae7b4f6e87fa61b6af5ff387905e3443f1de0b6ffaa86e02ee401c7d34e7c61a81b397980e7871ffaba755acba054582fe14088a3ff2499fea4abcbf0fce5339848f5451b0b01440dcbc3c7701def5da8de500b04acc3ab172fea7eafad7a4f1a2a4f58311a4384af7cc4c0baceb3d9fe59f29be09fcd9356a98df3ecf5ce3d3748f05d8d904cf1da52734a5b70e667ae275db3674845e6eb34969e94ea41cb59a5bc897c008c9cec088e31e3056f077c72c50241aacede9ff77ed61dffff01e3b5b1bbb45f814c0c9007c081a51c5e9ac30560c8d01498e758fd22a63ed9630f79b36f950802c6b8db99b1821f22106ced24c0bb66e5483779d6e090596ef353c4e3e9ba9d19db1406dfdccdcb5988aef35ab6f7f066127000e0ebfcbcd6e03cbd356a5cca39cd5c72e922e6abb05658f3924343b09f060b73cc34288480d383784eabd452bbf675ffe1154e4fe1c444652503580876fca3da8698d7f873f91ec070e396f421139acee847958980c6623224434170f3d0cae04133e0d13e60b3f71d88384c74f1a9b4205f7b39dca8c779c1cb231d7ecc128c07bb10df163bc1a238ae6dfab5cefbbb407d723eb9ea4000087ff957c480dd2c16cebc07ee486f5838b086b5fee2fae123e65162bbca699e16c95d9602d32613e11026cfdb2de5d5c7d8df6815f70c4f0bdb84d46dfca04396c592bbb5c89e7b90df04aa331c73c6a4146588a1d5f43ea83aef28ea700e223d64e1918167b8f067ba75ac00cf0b45ec50d043b381d620d629435bd0339bc549d62a793926d41c5a87d170cb59f1841dc89f3b18d42200b3ce9713552d5a5dcef4b221b9c183d0a39d418a2e45d0c36884bfa41f1345f91636076b2cf5abe4464857df2d46cf207f5539add3e1c6b39c9704db7a9613d2afa691ce1f34309f598357f06aed186ea8270230c29497065fb8c2b8632f279c0713c652a7735ef24b1f743500d9b45375a2ac1e09778bc5e814ee665f5ef463cb5442515556ac18f8f4449ce57f8c3dc08d137bc06ea342c3f7eb133e45e76f55d29776a1ebbc83509423c2604ab6f613448038dbfd9a8f44d3891c22d34baa546c31e9cbe10c44d8c4655c3f08a2745d6f094494ca282a5e460f9ad84423d610d155e76ab5b2490ed344c00bdfa15003c55938c3223104b9dcdcfb5494560bba9c788b06859f5ad548e491789c303f876aab89e57eed1402fb6ee2967614f09ad8d19b7c2ebf6b747fe039a9ca17e2555e7d0f63c39241a6a754004a7de7658bd7378ae7db1ae8af34c1f2bc53ac67422792229784e1102973e8126e410eca01cd323bfdf064f3102147d438011ce24c670509c9440e1829a8aca0ac92c857f65df38a33994ac6d6784400b5265e6fa81298c24528399669200b22b58a4c51da441662ddce17f6b45a696c5b731ce5de8feb5fd8a1c7d5a375e99a39ac4369f09df0f701e066573422ee1364c862c559127564405a8e41e51d84aa63e6734a27d5ae06935fae7beb6c52ffb46979a38bc756e1aa8b7d72c7c050a1183e96aacfd6af691871c7ad32d7990984a4332a85fbf3e86096a1bf327d664665231e63a841c0d0f2a149629e819e83d7c34e15533ca22260d9e75cca57f51fe95017742e162f547830f6ea927f77ef08e6c01678c731d1b81513df51c49a7d0e14547183fb0245f93a70a539bdca80ff841548dad8b57fffae7a721c03031173c287b14f7bbda48a2acf09c17357d0331efa7e831677942f829a7d988613e439f24ad9c2caa80f9645cc77bbf026092caff40004cbc262f670669c4d617d7781a3fcec46d29d0bccd2c264c2759421a898a109e637c881c6ab645c6a48586df6942c478ece460873b6b39a09a07665fab372c7717850b149b7ac437090095fceaa218e05224b62a117f764925dbf51c30e9ce8adbc7c12146da909f44cfaca57036a8635d559a875c81435859d104374e1a6dfe1d0391ed21cccbc424a14cd40184f342e68d23ce91d3cef7841977e61078e2ebd1da71db6b33cf12d52295217386e562c7e03feaaf751745ea2b5899990a61dbb314e1aedc394ee4303babbd75eba4f4a0d6383c357b315406802f1ba330c0b2aa4c751744ae0b570a343f9560161656a296118f3f3361d443149044b4dadd286f0ca9afbf450e2182ecf9fcd5543359f4384a38c3a82d901f763fbe465d996bd38817135f188c738b4fb909109b6fd2871e88975b1c6ffd334581c88af316df50db37861c5841c12e69866f5d17db4e78387955d46596d5da5a2abefc6b59d260210599fcac9adaeebec979bed829d1862dc72608ccd8cd8d842c1131511305d826d0f560c238800242a9de37f9a3f7c687f9287e21131ce0e1069e02dcc2a6c53d13e6c56302946498287e3cc143cc3fc2ae10156dd0c3fab0499d959fa1e8700c765098c54cb9c84fe0038d79c07776ad7583080265f6e5f7e4c28e9fd1674cf80281d568a0bb2449f685befe805f3569a5c210d620b19ec1eba1df9fad594b07da3f1041aa037c669c056788d700d16088e77e216f39e539d4284aa6da382c277034662c4341c0e6da206e9e15efe26b634cea4e7d71185641e1a488189cb4f4d96bb24944539039c70e91668cffa3c178171d3b64731eed63b266c49a8846370bc1684359488e6cd3a6ecd14150a83e060530223b1c50f6440a288cf025619abad32c6110d05b2b8040af037f209c6274aba81b152141317eb3fb0766d6bb2d15ec75a48391d542f07826d38288d2a37007e7736fb243fee4f0f506630f8de668081fd53ec2ffb59562442215a808380fc1265028754f2c27a0ceeacceffa6f0fc47de4fff084a14c9f561094995c80f4987facb124d2fa3d03fe6b05b95cac244ad1eadbe160dd6d1cc91ea0dbb2806fffa3d10da2009f2ee946b76d94813749d3e346a1607861176b678aaf64a9855532d5753b86bd97c7cecaf10329381adba84c4f2e86c1f43e1558d0896d31dccfb6e7300e9d9de1c72edbcf24da4d7fafe4d336e011f195fa3bf28e62ad18879570fc1b4bb5b767a490c305bd3046a22a76330ca264814d1a07c45635bc839159e41f07b3083c94b876e3689717a2ab8022af0d17a4a04221704188f9b2b4c5112dbc2e94db102d0dfe661c87b2b1ce9bfb43135849ce4d06be6f996dab1a06bfbf846e3335c01da2d08c5875ef81155b2030192545dc87fd7084df7c0bb19bcdfa5007bc706b3c9213d61c8c2b03be92a406556225f8536a13c8f7bbdb18ba14b49e9dee8008d3c448ecb826916572079a1a74e7956c3f4dffc3d3ec836be860e04536f0e118d435f00f4a0d07b87b35c5a80254ca3807de8252c13226708aefd5fca425697a6c1bc2c87c60d2224aed8f5e175c73058f15f89c6d9cd9fe5f384fbc091e806a5c73d01f9279aa023ce5433852228beac7059443bfeb39b8b01b456e44b2a063b98fddc24d2d37a46447e66607af1da9683709d220e49f4209a188dfda9c80e2c6a7a987293703b673a14c7f8b525912ca9500f2c1be6aa9e73376ea62b226d40d2aab789c90cc082b02169b2f74f0d044d6895fd45708789d06262ca778382a1e2adac7314301f9060cf41c1acc22c68c2132c226f952f7249e623a4127b14966247468093c1f0a7438106976251380d8617a37758187b81add23755bf5adff003abea3e1258d969760d7a0033aa02c0d45a909c22ac31cf863af45330c3e0ddf04123823123140fa7c95e581a3bc07649561b4fde04b9ccba67731810f913d78e86a8310f8a6181cbc258c90f1a53562130ba0752f575e99984cdf0c0aa819a8e6e5e2178317d0eb8448d2d41c139a132980cbccc7134c0f906c7d57bf60e0db3a0840ffba268204405aa015697cc91b257916bf86e91504573451d05662851331c0eb4461d85ad27e9f5302ad6414c96c1a79f772e628ae9a67e2322d1879f5fcfebea2f5438091eacf757068b593ec4b613f410001fe040e4cb597b7979ec17316c1b2aa04db29d47ac1692d8a6a8bb7b11cc9883e1322706bf773705ed87bfa498943eb4ad8daac5dbaf7ed89692de682f9d1f95721142699f457f3cd3e5082dcb1062bf8f7b174fc3d5434ef4d4b5e18566ca53abae9b5b438d92b259334b1dddadd022345eae820d0e3fa8cc9a5b8d325ec3b2251d0d7ed6d6ad6d14ba4d6a11e72f5146c24f34a030f0e08918719046adfcfdac714cea1cb35d59f35f06050f292769427c999e042b79d8cdfb8285d6f43f7dfb01e6edb46492428dc3d29f33f7bbd337e6e8c429fe2da06d3c10d366e1d88f37dcf4229a7f7792ea52f04bfae049066325826005e1315d4c68072a994de74e166093cf2b897d0cabbfb3f20acbcd311e1e900943f4cc22c7682235e2d5355cbd74eace32068421f920df0028ccc594f5e33425eb4eb75704a8e56d004e6ecb390605d53ed3b0205bcf1d2c60cb196605d5be67acc8386fe73a3b292ef2aff1e173cad3b783db87c1f82f0d4d4f434d778177a49cd9338e0bb073de5141769e735e80cd738c14a0e9dcb182b6ee338664b1da5a24880c96950b52ce5dc75853a4371274b4980ee16934c7406ff819dc40e9589ec25e19e0f62fcc259ec3d04742a1c087d431b9f3585542b95ddd532afa76dc177ed7ba264068b131981b2af85d173b3fe9724124ee70d367883a39aa7d976a9b71dffe6bd57755f2b1b3b8d74c652beae6cd3f19ac343f38b4e81a1c4071d06195962ec44596a9e2e2086cc6f339d98958b43bf51a44e9788b26518b1c5d554df8f02c6fd151eb48c28db8b443865de2b646aa0fe4830e2018864f318f4987ca1c33edf7893e8712e83b0fb479643c801ed5f1cb8646893c4a73b31334d22df037a76921d680f0a964dba3f20b07544b9f3a2d288179dd880df9255515fd79137899fb3de092ac68a630b867d6c797712170f9334c60ba4d85478f404c1b0a1a5f61b7d2ddaa6b08648027541c108edd2cbaa6cbe8af68ebac6f2a01c7a7dd87ea31b4a9ffb3eb048ce89577235ae3f198b35f1bd4aa0a487588a632bc8973d99fd27e038ffdf9e8460ff60e14deb8f85f580e4508c8bfdcab1059d3d609df9f801ffc54f349a8cf7fb750c73f26b2df4a2a2cd9fffda57865b2ddb2c0ef781c8768ad199777ea8f54c60ec87ceefa3129ccca95a6a1dfc43ce340b7aa740d845276c5bc66ffaef3069ece5069dbff40abf350b944ae2e33141c475af9816460227ba34fab60564630ba4afdc82c7aede0b40cf18bf7f0d673c46c532fa2aabb068bb08e67942eabe5c698815c9c9ed7d298294015fb757a58a53b04ac207c8b20b20b0ea86c8c208fd0071f93e8c97229247d78cbef0968b8e78743ff1c86b9cb33107d646ffd3afad60ae8a0e13544622100c4d847972af18eccf418016dd7c18b082e7714756b51aecc9519683d187506cbbf4883655efa7e8e1fa67f19f4173c3702c25227c5e4c4396905dd6bc45065e94baa3fff9d158362576332b9be3da30eaf3c385e4808a6be0144d49aa4dd6ccda0702eeaee03e082e6917a095d240ce125f58c0bd4bdf09635048d8fbba44577d39e509d8650c83e53a11ea22cac96dd0ddfca3a3d164300315822abdfd3a3f1e83514002094b527c862616c24cc86ff64e091a46f7ae396aee50d2f8b9f1a57f377fd90746576921ad43f9720fc1f60f222bef8f0f1423d71125337ea07eed1793fcf0c56cea3766d5770b05e56195a48308acb50970e085349e227bffdff46716d76ced45d11b40cf29aa737187e3dd187b431039c4e38b0e0bc86fe4ba16da068d5416bed0b6c9a3c18a4f239008329409825020e334e1a463f19a6880112d0b45b413606feff76409f09ac92e6465455a234f134907269158a3c09d9b89615b0bbe0e68bd10e56e69f305684f8102999ba8a35c3886b443a044331174cc443e8c01df5a0efc7b8ef01cf813bbed5e15bc880ad17761ce5f78479830f906e9d85b874acf9e497dc2a6c817f131d8982044428b84b1278848fc51f3512c7d6603b2f13479d5b0534652e74cab8ff3a364186c0bb6e720d1d86546f05d5dd507d93f66df52856298bb525cfcceb070b1fafc397a427291dc57a7dcd303dc22a28e2561a97d60fa8e32c07cccfac93625ac316d8a1dbc271312bb5f881c827f28b3da3d0f5370c1493a46458a90eed295ccca1b0853feb532f6d4fb81552e60f8fb24de95201d4d5a232a038b1d48e37343774e2f75fa1fbc8cf62acc9b74a968f771fb520278165e9d6fdcf9ce1a431a31da16f3cd230430342b92aea77249936499be2363f80f35ce717fc81d0ee3570f0067f86556b70306dbcad82d1a510b0c4db683b11a4bbf143dd8b8b52230a52b58b9e8aa25d2aa83bab58413a0164b75b6997f955b68214f863d214eee9e1bacc122dd7ace81b29c9e0e22a3aff587c96a70c156d4d05c60f1341f289b60eab15c7d1204907b49b3355c5b152a8676b17bb38ee861689b7eae2f8fd73169ff43d9708610461b6da7c4cfb8cb85f974160db45aa601ca36fe7d3cc296d512b8cbc645875c136a7f67fd72a908c9c8bac80fb0a67f930cdf5764fe63660aa5d90e9ac2d065eb0dddb71df98c3822a0e0576f266ad33d12e067db70fd476b30704d7b7eabc0d63a66b4ca9b1f484ffd7043739ac4b49841754afcdba26bf23c2f3bd4c5cf3dee01eff7b828aca2919d01126b3af67c45e3c0f544e1d2a186a30dc77405eae58aa086966c23fd3665653d744b54d7e6cdfd1dd0e90e924264dbaf0e21c8d1ad2780db39e22d12e250e79cd638367d8fe52a02a7e22e25386e8dc25f7534ca8a1748f8194fc4f13ea4971fae26279cbb6761a64bc310c0e701c53f5e5a3c33e098cbb821e428d6a42019b24b1124412ed322e0cf23cb40c890aa15417fdeffaad423c92ba86282fc6b8f41085d78a5dc48c14a5e15af92d9d9c9c7a39a4580117c09f0c3abb28391c0985acb773282cc9eae6d8fecb860aceac44d049dc0e21124e6bc4131892730e0d154b7f2098e9e5d0e08f835215acafd6636a1db91e059b93c09d2fd8c9a1d7f6c290668f814b51859811fd5a5e4bded124cea5fd56b88e7b0a9c4dfae8759401ee5a488fd9e41a250598e8fd8b7593dc6a825779a4b8dd19040548a641b7fe16f1a0d757b23a079b4c1a2ea2d904d7a013b0cdfbf5d05064482d77e42ef7c4e4eae28bb0904c758359a29d008196913e282cb652af74f1ab044c5091e49b505130dc46df4784c85d4f28ccaf12e989d15f6707cd88a14bf90499a01ecb74dc6bc9b65ded2485b719a9580ccba32c253087e992ef7e4039f8a5bb35c3c790ad4101e303861014b907da3c4ce9b1b6c4d3d92474d2b88b137eb3dc5e6d7ebd5eca867f32e023170cf5fc89f911ed69d2a3d23e47e9ddb27dd3d89c938ae62153f16345f8fc8c52f8c1c3d235b70f104fead271901680ed85f11e09e7a787491671ab3634db8d3caf991c1392499622d119b73b7f30482526a520c13a19884ffcd5af7b2bbec2da04f5ee8bd87fd05cb87dba18337c62bbf140b33b1fdb51c61b46f4ffbf6805aa3c1c9fb86c20339c220ab9f19a39f5e3f404a3fc43211a148d1f5411b962b6e626fcaf81056ceeb34a7c2f5cf1d3124bd1947d1f1a67e43159cc274f4264de26780e689852e7856e42c1e7cb33d018c9a1efafa0c1f1f51c7820a470ff6005f2549b0cf38825943ac762ef32ebea0d3e7026ea5330ce9f65be116bbaff49f3696376477c654443aef1a00544e419672e24a23644c865d5822108a11a9623d00844d4608d64bfc648bf937ef426d7084201696566edd360708194e0359d7385eadf3c8534c030e60379bc73ce099f89a852b83ae48c70f988562464c85f64cddc4304cf55dcf1b4e2818f55add49046f277136d84ce1a1feb9785258677c927d7df46ad915250856d7cf172de4480b0a56b956eb546541676197582eddd9bcdbb883825140ea2441976f33e3178210196cd6cc209d2f206c868cf26430db47d547a57243fb75f8ac9cd60ce0a230d33aa832d018236a5955c73c39615b68d41e3a931823bdc8e448dd1840080cdbf7c3a460bb0acf6d691cee6313b3ea016fca8279d1050aeddbe4bf8ee0b065e697d4349bb37ccaef111a69f891eaffbb45173483d4d2c493c6a8a28336643481c295ee366f2879b9d069457118e67406b2c0be35cc186f3942c428974f1f72ef943b46b0a96c4765bb1374b1ae0148c064c05e7347496dca23885ac9ebb1d441a7bb2c908497998bd79959d82166a51b3785be3724834587dce65284ea903a43808a1f1ddaaf4d261d0a910afd76a5fa75a19a520fb72e775167d92e2c2ddda871832e391ed0ea93f243ffd002631ce1acb8fe2a9fae0c8adcb2d8120ec8abcd919817f3b32890be349e82313033a934ac1122e9d87682825ca2a7eb4b1392a423a23544749d3ea5f48b97b140912545737f12da5bf92195f235d7f4d16bcd613d183e5e06d9da0b378c3be186ef3b4ec46cf9c10dc36c60125b3dba054b8bab65c48ec2775ede86c9d91ae08047d896471500e5b6ea3a35a10671b19c157b9838f0fbc8046aa77b34029525d3aa65cd6207afe54feffbd1a8d6d5be0e34cdec8429d7bc833a0955856321dbfac8a0d79379d05d528c82561ba541360361c38d7f35ecac6c7b1e20c8a4e6c43d24f08fe6cf0c21853ac0b82102651c56bd07041dd211305e40b188259216215c2e92c220832f892cbc5dc5f604d70dcc5d6780b87af5af35bb5fc0be36940a287b07dc841b8da05518b13deacfe18115a18930236a8ce5418b6183197047b71af9d4f03500d2761fb4471570a527e1b840366b00e0244de8896164383f6fdb2d1d07c6baf04c1d1c7d128dae850472749a1c4d0423845b479cb5d4a6c4339bbd12e0603dbacc2fa877e8bf81a427a5bb413b047ef841ee2d845b645d1db76ca415407de884a88077377baddb5856374a73c20d599fdd6558350246600770618aa29618e2b9faff17f1b71b423023b2218e96b8bbac58458b61a32fea4fc770a737711ded5581ce737ea449699e14b97ee86fee48cf826681c61b0fdccff0eca9f5ab1854c2ac4ae8d105f410ae44fdc4376417052854ea368a22e0f3e64b0aeaed38413073043637eceb135618317100d5b7e8f301c2b7f20932d5984a8098204431acf238c868d324243854a539294d94c0aa4224f6d1be4589d35a137087fabd0c70ed4d5a7e6588ffb889fb89bc9f8579283da74a84fd1245f9b094564c690be84574a8690b7eb08669327dfe7455a8cc2df256a707f374dd7e7939d4bd5edb1bd744101049e15500586f816ff70423ec637aacb49bfcf39e845eb77cf89cb92d4a740eaf6d5de3f673468d899ef6c9a9ca448ec00e920db93df2f064800ce405915c3f5013e4fc43784c8e7592310ddd2bba3d33c5642f93271ed937962e287d73b5a4c833a189f6619bce1602002734ec9f1774fe423f4591d6081c11801f9d3fa5a229e1e3c7d5178733ca79c63aa4d1d0ccd9de7d39cf00a034fcaa4f0181c0a37536a0e08130d2bcfe4296230cac96a21888ad7debe700875aadb6382fa398e29512f03ab47e7bb7da7c594a9f92d51afdb30a6f8a63375b51897080555ff2b35793a9c395434e1dd59b789ce8a996856dd44b7e626b8553bd15af109d6aa4f30d6cd44b3ea26f85971110f02b271d730f7b49438df4e5fc9d06dd0f747c2ec367d66ce13f4309998d2ace02ed3650cb7947855a2d2b13d3c3c2c0d4c076424959d3ee9a116518561c7d06422470ac2a522a036b656238fee19a2ab99da1e1e19584e66bfff6524e384437ef9d1d52074bff377b2e35d4d2ec6a7d237f917199c5e0cc4957b416888eccf6051df1ae110229de11412dc3bca6edfd6bd85f0efc5253fd5d6aabcbe08665b274fc79b37dc0ce5230461ea790562aafe6c853e97669a687ef97f1e518d71af81dac464f1188feb3d9c8f80e579e25af409794f1742bbb9912e3d382e62d328a77d4ff92bf33306272be12cf839752dd96604f7d58f1903c336c935e4a1fc156d84ec012368a7e8c226dd5240bb68555674639446a16a5e3e1431bb37b7395bf119b13f292f353ae85984e3525a959777524a1643c3e502f9b36f81d54a62da6c845a1a3ed561d0d095bea9fab8bf9e7afb3e26a1807922479cef79c63a7cf2b142238dfe9848d2f2410467240ab8c1686784a62ac40536831f86542f365d8c15153c1283fb4c47d9386929e07839cbfd1ca0002714608bd789ccff5af86c2ae7b2db8e794d0d5584087fb86d807d33f8eba0df3648dc2f31fe8f80256c51708cb2c953eee21bb708d6919fc8d28cb2d901d0ca90c03a545e38f8ecf0831654c1f5b4eba04205f6c012bdd9c03d68986c3477391d4f828c0435586cdbdcefe2ab71c46892bd7320df8eb18655701b9b3d8bfd3cfc48061eb1bf03b37dd619e2a8122cff28a26448ba180682a9ebd65a8044e196ce130dbee2716104d4ba30993e823148681f105255a26f9034c91e925ea2c3799094e132aeb0c87e1e31507311e5b8624642bb423b76c90ea300e271c6d62760d68026571977e4e47c7a29af68e41d03ea6fe67a55205e554d072f5f041ebb5c16cf80a54a07cf7056a0791bd3cc5373eef3fcd7331d632f22b5df29554c6b8cb75e17611be3d8efa8c9fd8940d1ed80a71b3b75475133a9942b87a7e6a9090935217bef2da5943225191c087e075907a377f11e2e7c11c0852f01b8f0050017bea4d457855558eda93c9567d5393b3fa72de4f8dcd7587dd5d89daeee81131065839e576f4b96bc32842adf52c15965ab2a2505aba4e870893a2c144dc88770b5ea565f83e3ebc7583dcf3765d9700c8cbab45bdd7e81918e7ac95f6dd98e77fa61d9b841a3069ec1baabf76ef737eecadbb8ff352e8ca771efcfb83c3cbe319e75e1cbe9e70474fa390165581b12f5a89b07183162702de201660a5f6413db39661917c7ddb2c6edd0df4a69a9fcb7030f2218613116164c53735fa506490dcba7d80075500b0165b85ae5f82e07ae51f94b4353c3f2298f4446e5ef90dfb886583ee565eeabb07cca1b715f25c7db742fb3faeefb3b4c83a4314d4d8e57d52091c9f1d526476795e339301e06ae810103d7a83ec7779886a6a6fbfa4864549fe357f085c77bfce53cb9eb97e9bebe4c8e573d1c758d8be8bebe11395ef55858791efebf97f1fd8efa50af158c72c5c7990c0c230bc6bdcf02e3391e6ebf64190fdde5e20dacabeaa8a93bbdf1137dbcff503a35fe43edd8f80fc533e33f540f8dff502f140cbf77ebdfb8aab77153bec655f9ee1faffc0c1e9ec695f170e4e29d2bb6503f3387c37463d184b69d762e002725db8e00a416d08bbf13a1b0b37bdbe981dd9e0a2738d196481040a18c84f622516f3bb1456ad29363566611c8167d031d825e7c8e234025bd9af43a29392d79b50fa7249c96a0841cdf5f3e9c5ead090df90098b0f4730c70001289840097fc920005c0fc004410422c80c7104430a001314538e00132103022023d2430010a1c51010b5cc0070632a0810d70a0031ef8f181cf63e956d543426a5bfc82dd5e8220042f0d065f5be69208e2d588fd34a1785242821294a0aa7c260b13904e80021a21d5e674f399164bc8f10696a665c0042a5cb5be90ac0708f65231129144e53cf14d5640a726e42db59041a7977b5ac096d312a0177fdb29796f3ba757a5010b5a703ac98972b162033297e469fc653b3c3d75e64e0b4eae26f597582e8caf5da83f39de3eecde277d1817a563baa81c5745f2c928120aa8710e6a175ce01af243a58135b5e6a9289a4994c0a2b0d9cbcd2706a7bad7cd87498e317fce5c2fb85ae65c23426ac272f3fba2e423957e3479fabb44dcf5cbdc3218baa68c52425aa2fec01dce4477dd350f72d4428be54691e42569db644f1a4a94d250449506b6e6af9e44950616b5592125aa34b0269468dbe1e13828da7e3ea7a23282317dc72d4446d457e19457a15c5c0c6a923b6b4cbc0562717a1257a2a0274e804cefe24142c8a794b845163dca65338a5282e229a15c167f19de542fd216ef8fc47c52102651c1f913c46024b7063b7d0bf482188a147192065485edef14447a42122205b9f7a46fe71a5485fa554e2318974e1272af0d70079c53cb7e3e49c3a86cbb950796241484857b5e24b501aec428ba3097ee87ea71e22d730b6f210db50f7e43c2a2d48d72edd8919348292929aa26293eaad18e919dd4cc992ece858ae894223afdc01da7532745133370d4ab3e61bffa5383ba5fbd11f557dd4a557760555ef5df1cc5e0a8581d57d55969309a409d40ca778e6356aff2f0a56f29a3727446446444dc6b40e672af0655a15ac44e1d9dd3146ce7509a3f920fc5714f0776e3d9d97260b5ffb61d920e28e5260e604b3675b0aa4d58983f944be5498f8a82933b9d237e03a145f41faa0839b694fe432d01e50403d4ff505614c0655fea7f2829d400073948a4cfc1d2a96088eacf0e6cfc79f69121ba24adcec06a5f75ac7fc581fd502e94126f813167e22dfd2a548f8e0ce00b724cad20c74709f9c4d68686fc138182d200d9807a4346cd618e84e8775c6f60b7114cb581d59e1b9daad042bda0a108ca81179af5a16890e38b2a115b6b60b5278d789cde9f1271fa2e898e47f7a8d2c07127732491d24808d1f7db9110a76ffcd57c7a534e509e0f212a85e2e2058993da49342aad72a083ad48375763607b7391cbd111213a5e90383e523794eb67e077abb9473130b25ac6f6edfab3dc249f1c1914d92a0b9c8831b0fe037deeebab3e0b4dca42723de880e9c04991fee8441d6263d6b1dbb6ede0077a033b9fbe0dac8c4ed86fd621b63d7f2868d819a97778d082cc291451c0c0ceef99796044ba78145b1d62bd32612927fbb756dd564fb92ee2c40eec97bdc0d625ec9c459220e981133c98ae76d2b6b9e08ecd8a1a3cc90ee4caa14356d460498ef185e42384fca572758185a92d10d51b4bf337eb8d3fb759d8121814e4209a2eb863c256add3b559d557fff9137713c6dc6312c3d9ac0a933e9b3c7177ca908a262461891bb861d24983f8530e2648e7095960bbe234b14074f6e973faa415a7ded8cedf74598183a1ec390c56e000a88390bfd4a9735d81853866df460d98b9aac04ecce1efc50b92cf8bfc6d3e312b8872b879a9f5c6ceffa62b956b0aecbc5a86f46bd684bcc571275f4a5ed1a74ff7e9fe9dddb76ddb46a2e9ea2fd51beb2fb273b0540e760221731cac9321cf872ff0e543b972cca825b298812a533858bf59ee117d83fde616f2fc893bd993c4bd9a650fe706db3373d0faf436d8fe2038b212f33bf788c7cc13f7d38bd2812b4d40567c521624a00c85e79268ab2f9dd8c190eddfc1136c70a2dae289d79f277676a05883a576078d12859c14a54f3c7142e57c28222292859c0b4a0514cc9029ca15b38c137dbd3013dfefb3fbc8b355adbaf576f4ec1b6504d3b67fc83efb3a02227bc75a6b27fb849011211f1ca9420d4778aa9051851aa4a8a28a2daa885145156af8c11669104283905015671012aac2c9cf4f1555703b4dea81f48a74e895e3731cc7715b13f7503827a113d0e9c9490c37a736d4fc9d847a50bac98ef090aeb0239ca669dac391ea472fac48bbdec49d04e99ca2af59296b8fad42b0f2b787b085b245a1d852f9ec2be6704cc9b292b558f4aafbc3f7022b31b3e94f7f7a1717e5c2300104c8823925ca9f8c7d9f455f7a17f7586c45a1c8028219c6e2ab41b028fc8932a769505801935245623dc7114c8f2398f8d0b2d8d234fc01f138bf3edc93cfdd1e4bac432963b1954196a66d4ff1a7ca64ac628f8d84f83c1222cbdb47eee51fe12ddacbf7c16d23188e62201ea7e18e470c819737ec4cb09423e89eccc27e1e8bb933f1034826eec9d2ed1cf77839c20956fa6039858554301145fe2410ecac4296a62cca3e2d8b9ebb596ed8d261ba9db5cc64534edb08e6c48d442e3ac1dc237b250057e4eb88ad09344bbe3c4315c690e5c32f64f9b2075c913f597a8c4cbca59231c982857592e5279b1ce9644a7318e11b24da7746cc1ffd08d774474a0f5f463f5dbc4a61b36b234bfe7482fd642c0a3c205d9bfde73095c752e980d1bb4f64c95864c91f691748aa89fb44967c91ff64e9244b20597bbf5fca01f1c56347ac3ff7da0592cadbf7169b78cc631e8b3ef127fa449f289d897b4252c835ec31f7a48f0f40be50963fa5e03e0ef325def2e9c8e0d0077fb22c658cf664f9d2651064f90b65fea21be936b33901688183b6b3cc5a2887e0badb7dcedfb45376156f967f8c524a291f8ea27fc34c33a55c289d7a7bf4e8d1fd7bb66c27f2e30dac0777c02c3dca110c37e5c719bd1515f6ab403aa28defc9287fb3f171a00f153db90ac526b8b6c2aea0b8e81eaf4d370122153666e9397f9f287bc467e0e0431a30069541020173c3951823d44c29f149ee0f67f81f8edccfba3005c208e4e26234fc20ccc53d872d41b81784b7c4b8e79ff24189cee10fe34b9786ad7c354c70339ca44b0357fc6346f85be50f0ef588ad1aa844fb600298c3df251c82598cf24f46015cf18ff8836b981182ddc926d6c1f2b178fe137f2a55c41e3f9751d3273cbabbbbbbbbbbbbbbbb4f22b8bbfb4b48c3b9f676d1283e815864089dc0261c5c92473d786b8798f256103f96903836911d0a29bc21b024414763ff3904fb2366f85305e595ef01a32c4730212bcb73a2204aefd9362b12439f19b91e94e00b4924b1b07d7d9a4d586c1d0c232ba3ad2375505e3848eb3c492b2d6e977b3207c9c94ad92f52e5a5fc86bdf8af63a8ffdac7f4ddadaf7269f62f2ef72eeef6a63b7ad415b989f3115b4059be0cca52fa904116f7cd09cf4820d8efa70fba09b822bf47ad0357e4cf2e65bf47414e3f4f4850b4af27dca5b0fc8f2d24f6e57bb1455f7e4c6c911e77a747c1ba13ee8aa8f5fd4f284c933d7d1aedebdbc8927c7a4d5fbaf149d75b07eef02c9390e510b294224b28b26c9fae88faa897a98fc234484e4f13bffe09cbd037611a7f0a5fec8d29c544ff12c6c1d1be3e8ee87136179f527e95afc9df3891fc51bdf085b64e6449cf3df9527e5cc2cacc67b3f14c94e34e2990549e9245d54ddcebf6f9f101b4c7a07dfea5bf7d5c89143a7296a9bac7b5d82afcf9b708601c77df80239de3ee712f896f1952a104474711f14587102cf78325540085eef196fa0d047dc75f2a57fffc2390549e9a663265d8220064358c0eb8d24ce81e1d0dfb3ad63d99d7285efc3b46693fc435f07bc39dacf43d8de52b6dfa46c0afb8467bf814d72091a981313da04f033510eda07ef832fd980689c43210d2c06f9b17f7c960fe9b374c870f85c11ad6d1499da49d6f27bf0649f635fdf46b904c2c531f7e0ded24ee222ea29fbe4c3fc532f0ebd754fc6306c1f67f7027b64c0059fe29c896b03398812b0e8772c3b2372cb6fc3bd62ef873c63b8bb10643ed72d839d967bc231c824252725be0200db87d7c99ede3c38fdad36cf4b3b77969176781907bedb264d4ba44c71f8cb16c1ce662b61ef1eb1b417fc335dbd3afb80689ccf6b446fb883bd92ef4e743cb3d4b6c0e470b234bb2b8d0893f18636151d9b49039670fd7ef9242085b0b9e0cafd0a289eef6b8b31191524e78835eb387bb22287645d0cfe88a20306cdbb671dc155abcae08daa2a465c804070a2bcaf08a2037944aa592b5575c8103775c4186186495f7b6855793273370cae80d6d54a66b515879143421fc95f2577ff0e6b36d714a6163fe483ea552f511b92b412571afc88e7b11a523050f684518f2e9fbba0f2c9c821b8432cae52da6ff464dd1e32da84fc11d281f1f258524db0eca488e27255c915f4ab8d1899b433aa35c984bef2ede47302e9e2395ac260433f56842edc3b6b3ed70270a872de8108a3ea16218823bda4082d51458e16a9f1ec4b21327980d88905e24588e40d98a8eaaa87414e6ba93e36b149ad0e915371f94157e804e2f29a06f27cbf2b1e4f865aaffbc124b097f2c9ef722fcbdca6678a552ad4a1c13f722ae2f586faf1a9b8f8d19347858b936aecad7b8ddd3b8ab9f11e379b830fedeff942b835bb99bcfe6b3fd6cb8fad4d896bda55ff59b132cd8af94c3bd7e754f8f48e5ba72727c98eb95ddf40cf108ed94744e2f52506c21a158e5578fd33dfec61d876372b07c0e19954ff9fe14fcddd3ac3eafc396cb81b1cce3be4fb9fd9272e10ba7fd683e300d56a7702f562635567d684c00f5555f3d00200037bc141b3d5c1e5e0077e50370733c002e8df7ee0e7fe3eaf0362e8e4fb9ac87012aa729d8f8d30858abaad22a2b6599b10010b09f9787f016ff186f898ea78ec62e5f8f603b96bf07f281e774b5aa5641c8d08836c64adde54344d019ae448b233de709d52b8b9cc55a6c86bf54ce9e56f810c26a53def22af82b08b184b5d62ccb7e8062628c55ab5fa5067fb2f413ac8daa2cfbfa5c36ed63810a2a7878a6e089cdd018a5cfa67002012e814b96f8cee967feb413773991c642a7b768a01ef21b1f3269ebd0d3c4ddea1159fd38be00647fd83bb2b74e2d542bf5fe17ee18bd7feaa2fe7449443a476fffc5ec2f7d5a31135bfd8a2c22ed4337e91cfd2a13fe54b68449f853714322dc4d88e4ee5737d9be5571fbcffbe7e7e776ee1fd13784824d13f27c95ca5a4a1ae18b1560813c25f4fc66bf409ed0f389027777b8443a5c92a77b96ed64384348b431b9488b6d275329a0884dc419b8748905cba223b64e4fff476c69df39adf3402af8c382bf6ce863c91f4bbf7850cc320fd2dcddbfa81377b2cc5a95eaffff55aa2fcb4c5262bc50995c702831aea6f22f6ef71c8ac9858bc740b9f085f32882222cd0e7324dcb704d96b9a6411a6513eb32eafcfa4856dae3748fdab24722038fa087622bf5f4db27b6501f24a33dea394cd33dcae6e56b21bfa1ce43752cfe52b75f4e3788d2d4852f1e14978829f036f8194ed9a430b0ffb847817c00f4657c64c27a108da7907e8d9b3d8d7bfa1917e5f14dbd49f5316e67dfc5dffbe2e1a883f1a61efa3dd45f99cac0ee138bf5d0e76acff68aadce715744f6dc1ba169cf69b8cb70e74e5fa39f510f82597d5f7fe21e7d99b918e00a7d38f2201823e83cdfbefd20289f4ddcc1c09cc9e43d9ec459f4a32bc9d47ba60fec8ac3dd7c6ec3ddc43448e6c432a799bb186efbd59dd9474178745ebd8f6060bc8f624cbfc5789b172efbed65b2df7efe76fa189826f5a7a741f9ec6d9c982e8c24af4c8126f69f9f4c834eef79753d667b07c0970d77307e7b9b970ec6f632da6f9806098ca75179ed616019d46fab2b731c7545984caba7916ffa1596d11e8569e26797fbd3dd5eeb8ae0b8f8dbd7c8e7506fc4f6275c137fc3a777f19853b7b30f5f528f723b8b531ee7c5e3a03cea71548fe3e271527f7af882f2daedaae976b5bb5d55b95d1207c017d37327540ac5c50b55ca7d59ec3dde93693371211f8a37d11575e24ee4f1a0c8a2edd331f728fdb884f5df5c0867d342321bcf64ec44f8759691b2c015ed33d8aaafe14c46eaf22d64519c65d34b34e528a3fb44c1490f0f0e8fce4c94d11b429985f4c8492c24115bd9e7d48fad0dffd0be5fb2fba3dfd254bc81fd216526a949a2244a9a7ec4247e5e3d7ae0d08d2be72479e8abdcec247a7bbbe9e276f3c54595e0cba947cf0ba807907431611dd25b99a804599e1f33146ddc8ff6c15d529ade84bb22b4af6f84f675abb84bd5d77097920fade9674c261c2de9511e5ad4ff40bd44e168b5377dea66f6caa019120afefa26f53f522f53385a2df5f302714f9aa494b38ae808264887fa1f41e76932fd4c5dfadae3644f7a13ee5038a6e2ce54c29d49867ed59ebe09cb645fbf621ad28f0bc45952fe802bd20736e6d393aecd6ee9670f6cfdd2cb1cfdf432da9f300d12d3d3c4d7dee4d9d7c4a7b89b46645fc235fe19eea68b7753bbdd11f2c695a3b3c3e363e21e30e86787b3715a8a018ba6655a5669a86c6716b8d2ff90d53f2f4bf620496477150bdce1197e84303a04ecc7927d077771dfe1c68928e29711f128dddddddddddddd63cc522d9a910533a35956b34ae7859095c578c3514a29a52d299df423a55f679c32dac0a5e8264b28e2360dcace5f96e1d63f9bfbc6691a9c531003502652656e078d935280ad1e10ee8866b05ac8d20a593e0560cb333064a94596300d594a7792a58423984d66229b5265f7ece30d3293fbb71ba41e19bdf7c81f2ae1b93f8828eb9b4ee64758c8e8477805374842a0bdbf90172421d0be13627bff0d038979c4c35fd3beb3f621884eb42072931d7355e49c7d2cb27cd9c43df993dd08f6934d620aecf6fe3e700ff7e04f14726f286eb11d1103eb5aeb5fe4d7118ce631b03da2dcee17bf28d4637b3914ef9191086496b1d8f2584ce52d32169744987b31266964af9e8a3e91253febef9eeb6e8425b12d971c197d768fb8fe65f4d127e22f831b46bde6e29248148aaeeaf173847c19934e62bc54e22c291249d88b189630f9924ae20bfc6526fcd914fe54314625ee49f9924a248c138d60b84c899963773c441f3fbee845d8023942b8429f6bbf1f0d1f111145c0bd12599e91eb5f98a3be8f848899de1278e6bec6470122a2085fe8d5972321248fe8b123297bbfdffd21660e3f5ca9efe2df05728c3206fe3218f8b32b1ce5cb29dc935cc592c73db9c9973bd288b738963adb9539ee69b2817898b7742f3f2ef196955db7caddd63d1dc174b86df7e41eb12599384b3ec61f14caf2933199ab8fecaf5d1f6d58c68a60b5ff640c753fc71c7c77e22d1142d843c3dee4ba133258ee513fd89d7890b748d55b559c40bc8c84f6a98f1a47049be2e00f36f5da734edd47301af626fee342689f7a1993dac7e72e121aeeea6b1f7157b10c8cac0f8897392df5dc4dbd0693c21ee44043d098987e130a7de36b7765d5ae1507abbf0b9a6c179a6c172eba5b6a3c734efaf5679c73ce49f194936e9c68442a59d3099542712163eb458fb7a86aa6e9e4a0a45027932d9146226ed378e8342284c485397bce39e79c73ce3967cf39e79c73ce39e79c93ce4929a594524a29a5b48dcc39279d73ce39e7cc622707cd681ccdead60107cbbb61a3060d992e92056edcdd18c7f477c146db681b36ba9350c2460d1a33da460d1a337a860d1b356a746555af561c2cef868d1a3466c4c4204a75c0c1f26eb44a87afcfe95075d00107a5944529a594524aa977a32ba594d24a637c553dbc3168d5aaa683ea7642d0af5f69ad95565a6ba59556add64a2bad37eafdda5fdbf3706817c7d75bb38daff8eb8caf9555bd5a71b0bc1bfd5d90f1534aa28ffde22bb66ce45431de9bfcf4102c1695e444964eb6e3af1ed2394dc43db6cb27b22213b80574028120163a0ae01016837af076781aaa958d2f6779c45f0c2ad81831dec5a3126f7926b229d5ea69e42fbebc1d74f84f891c67721c8a2c1fea237272727254ffcaf11559fe2f1f1b97cd14363d39da10c951c8508e42e090a3cd4d8e36383966d6851a28b2fc29fe843cc971c67f427e7214e224472140f9fe27240ae1c9117faaa79a0a7f0df4c58f5f8134508e8155eef96bb713a23fcf9de7108bd1a77b58f084501649b27f4f93a61de34ef66fe92140d113e4ea48448b4677c75b8c784b7de771517bf68f4a1c6ee1addec19230fc64f7f8933d02658f658f4db23fed28cad17bee26d3b8df77cbb9c9f7c6f7d5f20d2258acaf57071f11215f878f3ad8f8bed46de06f2220ece626e377f119df44ccc0c16a380ad239c6f8cab1577c451d6e3f69a1c8f2fe01eaa1201cb79be4c456f74496ff2b83d99c9ceccff2cec976fcbddb437c62ab6fda75e32661e32a51e3ceb8e74fe3d200c5d6069ce5fe336e8c7bfef8cadceb43c8f3fe55aa17128a98a3b7e3d137b987b8e73fcaa24cc36538e211736eb20ff772125a862322e2d7a744c8afb89f545782429999e18847c36e6e728c7bddc43df79e4276a633097d0702e6faa2f70f22b646effe3d7cf8ff4822b64eef3f135ba8f7ef9bd84aa1bcbb787ff1ae7a9fef53782b7bff8ea9bc7ffb37506cadde61bc7f0bc11d3164bcbf8ed8facf2c7f655cdb3f70a57d3a96d32f6ebbb8283789fb23b2222bfee9f688b9a5eb72755cd1cd222bb2362dc69f4372fc6a24c7a737e24ec84efe8034508e6fc43d1ef7fcb32a32b19f95dcb46921249b16d23654931154bbfbe9c398f5ac53e45e7f94463a1f098a65762f42f7883a721d613e3850c8955384d6186ff95864827e00d1f116a84477774eeea6d587b734149264d14273ff06bc257a1c0901a93003119619a2c78f1e313e323f82080a0a2248668818991e436441784bfcfe21bca5003adaf6f09eb53d9a111deec55ae543f9d2bdee6ea9695aa6699acc3429bf0cb78e25f047fa1205c4a823e6833f51c70e1519501738d8e211c6160ed2f8349f2c9f8b353bfe547265adc7d5cfbbd24aa526606b06b2e08e986530e4520c4191e5a300b6b61564c94456750d5a1b769dc872d824673f135b9be339e3ac35c618638c51fb5a2a693f6f8c23184d2b954a5a2996de9f9a54583c497423cee3463c6adf3733eec121c71f4b76299af3bd89471d6b58c36a4c356c2ef98aa3caa7d2b08e79c36660f155ee91518b4066202cd95d60b00be4474aa9545beb9d4912951ee53994fba3f41f0c0222ea9dc69f4d792c606ef2ef44d2eb174cbec798c87723ce23d268e494f15f36c459a4fbf9c8a4f71cd789aca95dcf99d75d4334156cf10acff971887b92f430bb7c9f539b3f49cf71a449e2b47ed2d4b008b46e12a7f59326d7244dd41afeef0279ce4419f8cb6260184313fb4dc3c13df9b05d7e0b7503b917632cfdf01694970f2495515619854646419941f93a824199892d2f82bfbec15fbb34fc750eccab2bb38df7fb895d27fee7d85fc65b3495a11eeaa19e69ed231ec23d19ed511e8e808891714f4a9556d2b4ec35968c447c95d7fe63c9da4a0956e56147a8a87c8c2cd1878871cf15105f65262bd98844c41de9bfceb823e11f3a77dc67d9db640e77468c7e7b0790fa57bfbd4dd64ad0b955beafca4715bcba3de2b7d86fb12f57a4d9b36133c69427a9a229de2164aa488bd7eaf8ce90eb14711d4fe22db1e5aec8922f7e55f21c77b927dd95a50ff11c6f893162cf7197bb3ce72587534f6a5877a89d547d951f3e957d716198580264c1ece2ce5b8fa05a0d8b2cf9d049843014fc89b2ec3334a2d10e25893e95a7636b12eccc3e47303334eec9beb1b1e53a29961c5fbb99714f3e0fab13654c9e2f5d279252a3eb4293c8f3e94c9e4f9de7b399a1e91b6e3482d132202cd9b366c9132ba069964b2f5f017e005942cdd00c1521df5ee25ecc5bdc71c71ae69e6c58c75a59d6afdfb0f595fbfaa2114cb59d47263922a24e1ef135915f9b1259d52aaa686c5eb6ff5cc78bb8275f3407eb3b5e5f16bec46ca5114cb71d05f127c5e8f2a3378ed75245c2b6240605e12d90c65bd0679a48969f8be48893e573a6d10f1167c73df9d195a5ebb48e09e0ca09e47fad17b40ae44b1738bd88b720d4093222348527b99a4fcbd101ac18820316423fb48eee355100059c6da8d4ecb685490e158d40000400f314002028100c864362c16038266abafa14000f7a9848765ea048a324475114660c22c610028801008088c0c0c84cd50468d7a814714ab8e1010b61f70e433600f81b1e264287a437d4b6145b6652b87b508c19e67f618e5bb50ee4bd67a74db7d485cc23ddfa84561ca467b4829ea654e8971957b11f8c95e0418cbfe3bd75f096680c4d45950e1587077d6c3af1e208a4f12336446adfe15e1331640c03281cab104d49a0723812fa004db8280eda3d7b6078889895e2d18c1ae7dde657924541a92578209d9ad02f79340357047646123e3cdad50fd8557f192ecb5877781d13896f5c456f45ff9226fe3f09c6ef8adcf8dc084bbe7fc889e75f0250138e7342ec0195559956e613305652e0ed17689862bb87eb103d6aefb296a461144ff9db1c4d071feba713086f0d3feaea0d53dd8956ae6854d4bb148fde52bd101dd16b27f5bdaf1ff29e6e44727bd18fd6d72539a348ee3ab2b4a23c49884541f750824581eb937fab8fa96d6a947f7aa0bc57040bca39bdf76c1be16dccc5b2138aff0eed17909f09790ae424efcdcd294962b43e134d8c12f6d89c04f624a547cabdb9bdcc03819f1eb5f97b1b82b81202e213bbed124b74fe63e4347b6e9efe690e088f657ac20a291f5edf3ae45fc20e2e8ae0ef7ff5a925d96ed6daf9f7060896a22afd6c55f5838393f353103d08129275f9c7942ff16c93805720ac7a4a1f083246a0adc8cde67263ab61e87781f8fdda8b607c6ec4b07e818ad7e0a21f09ccefb5bd0ca400f25fa08045d4124e79e1703385d1d1eab99306644f95caf7e0727e6ca87afd4a9925262c1fd175d6e5ee9a41425f0faa5b4ffe7994e54b1cf90190ce3154347a5da4043edd3754ed135ab82559913f144137f9818feb9f86741797b0599ff39b7a813f2125d97e3aa84d1a084552050b7cf1483acab404535cf2c7f6b59709bab03cf03b9cd05b02b089428b4ef5eb750db2e9c064331ffe2e13dcc74bdb939162d5f5ac51b53d53d48516b387d240cab1d4939060401de95588d8272ec0550a42d8fc632fd0726a48774143c9344cacb84209afd0523aeed3c9c0923a5b2a94751449447e8cd90defc41772790059dbf3d70d60a7234219161db58e568ec5075238e1a277e646760aa0223205ce5edde8a423ae939fcb1f42be570962e982c42ef2df0536dc2a8af975c49adf7026743c2ac425d104d974832ef5f7f6e6cc0f8a4d57d87d73d704d0412f5000c23efdc8670495e291bfa0f4d960c3c1797d13d52441bc1fb3a761b06d521816bcd7252abfff7b4fcf2dd6a28700891d5af6ed05a472d38356b0b71840b0821e355df0a981c58cbec0920854602b17d20c989e7217fb9778f4b53fd392583a33cbf8c82350445f0fb6e7c1a24f8460b95ecce77ff5a7610b55476878e532acd481ade5cb9acbda1fe9692cc29e6972d7e15f9d7d29f86fba661340f8fb749c63c6ac180e1786ae95287642155212752e32cb1989f66acecd372dd0976c0140a399745b376f76218f5c76c83a3f9c6b1bbb8222a94486ad9e0cac064b848363cc6ac519c250fc63c67a0410a3ae886111eb3d81390091a2c70303d7df5c0b6949d0f19c47e68135fa809953be3c949fd84a32360c56e9c659bc2228d1028a4ff9e29a345c0c0b4a6ef27af34748848ea10e03f55c5dc7994c4ff555cb3d91f644185ba3842ef067542dc74267b60f2a641e2b87a444848f6a7b576963cdd67367eb912eabd603510674d28656d3cd0034ed4952d0a6664b69e20483081ded9128ef05beb3ef3ec33370af0bfdc581ea00412f700d15ebf0db39188cec0195fffe9f26da2c9d1cc89eb4ef1c92204a9912a9c212d0785bbb6bd4174631a14de01110920c675fe287bbd5de64fa03f99b021767425b316ec7c314759b701c00e55ea27bd00d773c5da0fa2b27defb6df3d5e2ed8aa0e9c36479a355cf8cba081b7eb38018631d3f1cb4410d6a4a9ead94fe0dd109f90aebc76f8b740ca6169329ac86a8cc62b1c06b1f651bb2446e6cb0dde07438d6f75422e7f469347213ed391fd017d598c0a1869a0258130325289e2d2362da1f1d052c68eb8099b5faf409577d50b4803fcc4bb7f25440d4211be747b9adce2d3ac91f609427ac90e141dce51d68303c881fe3265a167af5351ae9b8c2afa68f14d1a7cf9d0be685b0c9c6e74e15b80f695d3aed8c796f7a1ff589f395db714a0b86255826cbcde8e2cc839b3c44f547c7352f0c7f9a7849bd15865e8cb7b0dd8a73a53fdfd3ad738a80a25850a351f9936b55f7ec9c4a452be4cc54f3caca6062a0ab51fcfaf5014ee8c68bc023073a106c13913adfd6beb3bc4ae9d29d2829d2a729237b08adbb44ef760c0d1affc7022f26f4751ecfb483bed04911b46357bb51f26d04b5015c67f5ac025f94a7d1a36cd13953e2aa1840c312b3f15911fecd900e1233e044f0d18ddc32d03cd5251e0cfdfb519c50aca83af4b3b7d43f4df08f72a13add57c905a2dd033b7299dd56f1b2d7aed0bf04f730c165b10b2cd4409a682a98b013159d41c378ec13e62e117116cf7070c722efc2d0620ec5238ed0b308fd8debeb0725a1bf1115fdade499fcceb9f8ecf73fbeb0c0dcfbe62fa91162ecfdd52e13b79bafcf79b3f4d3a6cffde70a778d9d8b0475472c26002a61137a87ceb50b6d407f53c904c5bd7b1428a7f661d80c79b1e0506cc8d49777096e42134c7c57b8e9c92158cfb455e704de52f4b113c34bf30c72950d54ebad403bfa14062e3df85cc50666b2a56f04cccd4f9cbaa160559002e0a39fff46cb9238901f8ee020684e961d42eb0e20a8604a4e06c831fd7ba933cea68361f7e8543026f244b6c89a37a100e0baca0abbd9bf9fe4d73445b88fc462178cd6f446024038d520bae8895fa10018d0e8a7109a2514794c002c2fc6ae181e98fb6a1a0c3d56e94009ff9fbd053317eb90499539d866c998b69047b137ea10fa3fbd5523a723e5f75c4886d695244322bcf5f4cbae166249cf54f54200c184d502d91b6df37fb4fefc73f922457334ed8506b152782d2ba65bff3aceadbb26331d2bbca992ba906ac40763c3ad27d1e226529c1b647204e9d1c910b29b965d016a66d423ba5073636cb2a50583ae126abec329d2425a047931b602cac6f5d585512042e5869f6ca1d78a48e51b5e245db6e7912252cfc1414455369befa3874e2a8037a82cdd0ef7ba81e00dcb0e30466f84598f9994c0116987fa4352f910e10714190157f15823d16a23ff4bdba16c67f46fc4e39014c71a3a1f1d45c35221ec0382f1d1c1918f35750fb30cba5797a012ebee3de1b306e53e65b21e7cd6c84feb20da9d662bc397b22b90c130955bd540357573f2ce1ad583afb295e5483fdcfcf4a6d65c61fc8dd0d0a065b77c22a2f7ac9c7eac716b62cc2ffb966ae66c4b695a8fe63a34ebe386554322722fe83becf9625bd692aee6d8c21267001ebb409f5302702c8c2964b5a879e2183fe53a3c02d40a0590959388ecf36395de13ee6e965311e7b81306f4f20558248daa2b4ad42268dceb1f239e280e67ed12fa17c1dca26103c82201491ccae90eaee141602365c412e67b3c76a96f0b0705e05b070255e78c7c30c9a5c114c3930842d0df61b9845602aea4573af7262d321d9d2d977436fadd193c02750e654e67e6abe75ec3fa38e2e3f57b49bcc19e94651ce27068279fcea6533aefdac2bfc4ed4f0e82829aafb669679253eda165439660f7891e40c0a1e3e094b4b1baf6cc046ffbd801830b049f45dfbef88ab2d7f1c046906f9dae06b87bd636673db0024ae6a10324945f69a9542f321f294a4151699f85016e1931e729a091ef80109280156c73f5b04f9966aeebfdfcec31ad0d18beb0263333c749a0494e5088516f767e1062ec6250d7d7a590fcb2ad20d5ad7dc76471a7ee48d213d0a711ceda5ef021fd0223bdee1e03929d5e4534e82aafc88d393ba6940661b54957ebb01c0fa30c78669e24053dcf436ed717d2fd6d63fef0b803887a758f80edccad6649e94e269bf970403bbc068131ca76b6e6a8d8ca3d529c2ece2ec9b719558abb0f99037f6f41af9cca99512668cf431bfbad371917fcace72f2734ec52792d6cb2b4da112ee93f2c25507e139d1b65449f238107bffc986ce15bc1d59e6cdd894750da53e783ba136e420bed08bae2decf6c7dd8fa4cd7273b0294c53de492232c039317ef9365dcc22550ef8f1b68443001715a4dec87d874b1c9c1d50440997942ec6a29f3c90b51010b9f07caceab6ea50050b635dbdb717b5ae4f27566cbac6bcf92709535cafd9005d86f80ca9f5068abcc411926b54631ef4255b136d0e9db13983c5033ace75e8d1e6176f9fd02f9e7db596905e8bc583ca34c5ede81a251def6d6724fa397bb130b9032f250ee0b060bb6e3724f9974d1d1c5465ddae9454615a150f42c3d9c0b6543448faa2ca608729fafb9a176d1d656bfd9658992d3a6f289c0957d319f16227a3dd1644fd4b52e4c6de80e14494611a143f6f859c2065167b2b2493c1e3599b9f598b1daf553165c9bdc2c70418bc6277ee75538564c78684d46d90bd6904fad3573adc962638e844dfac49ce126ab492d7323ab21bc208c96868f4b6e325d57dc54dffb32a2209d9b6c1714d75831c2292312272af2213bff91e970eb8140aee051f7611dff47430222d70a06e45a35f489ed43d01d713ab1dd6594d00f1bb8fc29574b3e08d3f03b4e8a416c167450ad0f48cddbf88065fa1bd0cef11b642252ec965282146949a098f777f9cb0643a2169b0ea312bcf36681b5893903c34cda7d75f3809d594cc6705031505fb10d39b2ab3c9ce7979ed9a7f52074090b6956c0434145e438d109481720d1fb0341aa465341fa29da2360321f3e9ba0e7503560ba9f83bb1d4edee54887a635f0b89b4d86f0e7b3907c28fe39c731ce6f1e87a6a89489199863754f469c6c707c15489d442f73d08b1d8e2066ba8b14e18bccb15c5aa74a4da632a1f8ff9a222ab761c3df5282b359991e1929e9cc7316abd66497698aa465e783e2bdd84c57fffe5e88d7b915062d6f8511388b1ccbc11b903a647316aea581104e1814e187fef7824ab8859dc642f9a24ea88eee4243f6c845e66c9e0e76f0ebb76fbf3e906a854159ccf14aadff26bea616b5659e236aa5a29b27028fb0569f427478722616158de2ce5bfd6f416a11da18af5a11e2e11097de30e5561e17d626c1f442b8e39ac52b1630291fc658a32d71fdcc75e7ac489df421fce720d677f0fa0d7d1ab63f42b23056db21282eb9770c4b2de34000f0a6d058c1470c9275f962612100d3552bdc023b8206f6cc71426ebd9917c50aa7aee23e23f8a9f221a452d2f0d09971fa10044384f950970052b91fa1e278a96c9e1e558364092639980b998f8b470fe5b2d2311eb9e5fb79de59b85fa4ff835b349f9dcd6d486e211931306731e2ea67eecd73f64ee4930e3e912fa13f0912aca4d6fa15b2eae5873fa1dea504af815a7a53a981414a7c656ca0683155aa2b1b2f3e656d3bf195b3c55c222143140ce6997ccdbde74f983e451a60a4b9c74e10ed1eaf86df6654045bb257c4a3455f4771fddfc0985694146b0910a4cbfbdad47c82c76d655c808f5dca37b7d617249a33339e053e03c2b529f811b5aa9505c6f8e0c13dcb47e973099312bc4a559bbde6a345ed359027520084d510f465e9ef21709032701a9a05289e9f8b15f3c52fcdc97b580424e5c1559b5e5578302c33acd194d1f62ab09eba01eeaa52eebdf66381a1689380251f01bba95709d5e7a23a25b5b8b581b09c011898d30ef11a51d6dfc478efb080e3d9ed6a7fbd2624c8846d8590c0ad7799101463400ba8dd47dc4b86399276e67bd49564cfd5fe84de86aaa257979d23c6814a5e1a55aef0b7d34c18b49c921e9b3248738bf7146a4c86ae6ef82b0c1bb3aac733bec5fc6dee0bc286ecaecfdd789d54eb9745e13bdec8f11dbd6ff3d1a7df8631ff31214234775a01c026534ed4cabed0ee2ded1da182793e8e5761a3d80cb4f8f973b7f65792cea0add3a9b790f76438a57856db2cc2d961cc667001f453fe309d8c2a598952955a2855e7a255f80377043daaafb0e0b2ee7e2f68c6aa2e06c275e54a75260cbb632bdba422d4bff05dd629bc052bc1be9548e1c8234b3158ef494520a71fe983b2c28ff9ef1969d329057a5c88d6464efbaeeea6d42ff01def64086524ab1c393e17a1ebc32097cfd087ae15ed3c26277b8d78419190ae88c54b861f8bc227cb372c290aa4455a7a56b98c79734c7f6840938a4c3935566f916920d151a034edb60e898b60ccfe72f3784b65ada65f53d5f03478917d6e8e3189febb4935dad89d7297b0f5ed40502d9a3b659c57f1f478e55dce9d264a0906bd11e49cb5e0672d40aed589016332b321008c3bd769a2cc66eeafb86c68a8a76cf04151202c75233bb0f6ae2bfbdfca401e2536713a39fc8ef6c05f8c373639bb1a6999d0f5150e366e73b8d4bab9acdaad12a6ea0337121e41b36e06cda04f883437a4b0270cc186bf71d6d9510efec18b776e2eb1a64f36e5d4a74ce32a67bc673d9f50f990f49256fd549553aa4caefad321d13d4c4afaa5019584939a3ea98dfde4d6ac03d04768ca90ae5eab0350942e77562eb1619cd4b762e2fc92f54ed22830abbb8745fb1d417fc59c416b6128385502aeab7da80b483a003a01d93d55a1598a5df7cd25630fc6b3234fad9b7a37a1c10770a66186c0adaa844a98eef4e0a5c07323d3d0da5f3656750f3380885f0048e6eb00968f362f8c61c4e66e8f874133b499cbd90a03b8a4d40cb7bdf586e10251a11a9665ef123ed900c42380298f3602c4f58c591e71a0c6458be3b570c81d1ad321af9cc419bde5acf7a76c080cda093352119f62f2588107acb0d4f92d7dfced96d54cf712791fdbbf50603e576e91687cf54d8367911b7f57ba59317678c3ed6a9e15d375782ea0859a6a0721bd6885e0b95ce0874b81b4e6187c7d303ecf00045c7eae2086b841f1ac3200d44d0d9a0cbea32400bcb7003868b25b04839a0840d35fe8b9d7de2f35d4bfec94b8f687e62f22cf63e8c8e2700200f82e5d8455c162ff8f076c98040ede95e10ec85142fab70bda5682827bc4a407d786d4a10872851a4e74becda9c5d6a260ae5f5116d83401f58018ab525de9967356b44a224a2db7dcdcfb89d38dadf55d84d74e334eb61b4221d173f988dc1a6373681e16e0adcd5e663972c04ddaa6763c20f06eea0d5771f6c66b59f825ab60bf42ff0d68c2c42935548013e0c4697bbc108f8a5b70d0302ef4e9fd5ece4b38511007129f3b35acd0262e27c7ffe9870ba889af29d3c52771810b03f230208e7ccc0202c4e174f10ed04a1ad535f65318c1f39cc0c490168de0abcf96b33055ebff86b86440974e3456c84860e2f6a7a40b707070d647343c83aa175d03a6d5b36d3e21f2ae2f751413c7f3e8dd42478e0647d5be8865103098c76f875d4fc5dd11f6c1e5ae0bfcfb215f64c0a2cb509b0a0b63ab105435235080908ac88bcb6e27b75dd096d26dd87e25d23acbb6a1390c20135d96731a060feec157032be07b500260dc7ef2dc8c79408264fa9ceb0792914928258390c6af93b100ab30022da96eb1ae6ee7e17ce872f49ba3a87ea4c5a9543430530016a7280c972e087545bf853f8ded1884d3b4b454540f21d16f672e0d861c2c5e1b8aaac48ac868685eb1165f80803b1698c9aadc61058dcc6409a089feb1038580b582724f6d2c9a50874aa70908da0ec068fb9e18b07d3050ce9a8471462930ac81621e01af3617f14bd39f4f8eb5f8374341f31a8b7ca9236931aebccf96b24693c04a499c22f3063e16376ef5e4c35a12585568c863844f6b5dd3ba8e9c0b5117f1c2842b15a8381542ab1154bfe38e2b47b89caccd57e8ee310f6d179148f2cbad253317b7b779cbd5fa9254e39f147d413c8a558a321ea3e31301f935c75a3ca7166e729eabb603a546fbfc787b4467599815c4c2d8c6586b32a451fec6d56dfeb9d1dd246cbeb4fdf18609a8fff5fea7cea6d76c2f1f30a6d62ee17003dbc6aa2e17f1634162b36d0351739a0cdfe4a9fbfde6709ebe216c0751ed0cd238f11e01474f64eeb0ea7e430a409d709936a8d785b54297c7adafd37ca8d76f786e6852db4ca3b17aa85e49ad7b7518232ad2331af09aeee14a476bfb5d00178bd0cf84013fe0a7cfab5a5402b1f17fcd4e541579454dcf986feda1d9ecf49bd77f9e601ae8d69a7d9a49b86e93d9c29d1cd37105926ff4efa5762774db8047be916983ed4c7d6fd0cd37739b494218addcc6e2551bdfeaa4d64d4efe0c79fc233787a99be99447ab0113e817da99537c9e780e01384cb93702b98e1b44c15c75d9bbcde7fc70e7fe9e28afd5a515a0620e4aab94450dc0174348d4a6f187f70da52b53d32ca7899a9307ee18c8206e5fd286b92f970354e816ac528683c965b19425a397897241095771119206f71aa968b0e63750afb88a3bae8e2b2245e48d1d087c4c0a29f13329ca1b800c40af3bab2422eb644e21a9846db05449340cb3394b05dd05fffa1e887eed874e82d5b11418df9ced4793f2c7358631a637253afb9980300fd4e5526b1b950dad368897a87fce83d8ff557d4bcffd1b47c3b39a2ea368ff58b3e856985ec2e29b5b9cf5ff098ab8f2c785a5c691fddf9ec836db3f6708844a092697eb2e8715617265fb4b3df4bff9b90a35a9fbc1f66f8b1343ee3c95d6b7b4d5ecba32ea863ebcc3eb819333011a2bfdf8cfbaba108fea9f8a6cbe543effe9e40f9727549bc11ce39479acceac935c2a258fe05fffe1d55ed9ca85148d96dfc60541d3a4b61643d0e45b975e78d420d82f84f2b7960e68a45d33684cc36b7423a128fac46b917e922e55bf9f104ba637fa39ec3009a31578ca4392dbbc364c243e7656aa88ec62a8344721d0efc97ba6ece8a4b06598dde6f54fa772468d245cc7b5334125c0acf852b1e13011281e42c4a44eb3787743cfe7d1fb7e4123285b146e9c14f3317adbbe148bd69819bf25fbdeeac77db3f4d44db0c3619dc82e6d1651dd93a2f6de98ed8e03a0a426526588874e1f2fe84b4fcbd87533994be098ae1556de949eb32dfdbae4801f06f598019cf808edfa5eb139ba0bf5dde5d43680de7df67899deb285fa6fb66f327d75d0d44c45a7ef4350d4972b75cd283d2c02be6572250433e157d9b59d7a39802df344f796fe589938fe506a3e5098f51b312a6f6a72215b775535b1e6e07e970f880af765ce83dccded28668f771192bd392f71c3d2a85cd94442d325215c0f8ad35f087852dbc14bd6db1eefc8ad592cb0e56f0012c333f341d1ee53136766f728c3ebd4b1385e7d1a1999943cc14c806a0e52fd96ca79200d608d3c2bb4e459d9a841751377f099d3f625198f404807674a79b699460f7ee7183444f9283164730914c1922a36ce2be74ab1232ce3a0298108e337ae3ea2b363b58912d9b220f770c1edc05be2a5482328468d37713a5526ae07accac8cb2e95a82d99be836aa3923f1320e7e5b9fdd2e47adf94729557f13718ca20071989e3c8503c9ff0a0f21e00587610e8221885819dae33a835c2b36464f555064d4b8312622f28c3432dfd7ead442febd0340c13626a90d5774d55d38c10ff85ba40d3a0a137a25ce49c1323404fed2d70177346b61696d6a718ec899bac1028816f8e13b961ee43189bce4af2479c0d13fcf189c18aaffab26dbee4300848ed58348d07f121b21921497010e252fb6995c5222a02102692009a502974b3423c7d9c2047887288c0bfb10011f24da5d645ae828958bd2879d108fcf5e1895caf773e7c4081b46e71b213f8f9a640c76a1577102c2f176c500ddfba34359ba2e7e46722299d68881e4e7fee04cd8d9d804418e9d09ad833a5a0ddf4475107ea8d0483b3b0f6d408ab2d60863528e33ebc45745e8dfb5fd36a8d9e7cc3c49f98e8ad917c9052f06a85458d667dddf4ea9349b63fcc6852e575209050dbaf72d5dc3f0c6c2e07ca4b392029e195f96cc9b58839f4d7b94ea4f179b349570b1c7d555c91122f6ec8d7393f9aaed138d2c2afa871af78ea4c8841b77d5661035d0a48c7917133e5a045b016987e72707438eeef6af4e609aa7b6e58effd9b1181108a4ebc0ca38c222961dc67256b579b03a1b760d5c1650c8e6d940d683c60945ac7daa9e109fac71b7e3ef7419b33b0d389927ecb3da125257452860fab3ace2f511b5611efe2d06d980ce521331c7fd6ed0531750a7bdb51714f68276127254ee78dbd3c32767e86c18dc58f62afe78441a564526ccebfa3830a23f4cb02adf024d760ee3de71e51739aa07e816c4925456f5989c3b0a048d88e045c10b1cb7a451529faf25d60db4c372121e9eae67b2afdff50c324d1a5cb8ba06984341e388328143b1f2f0f2a622c8404c215ac4b1d372bc84cc73927dff0b2a5b9066181720acd23545137d2406ee2e2f46a10e2d7ac6c11ed02717b8f88659812c3d2f9889f52dcfc18031195e24d5b38be652dcbdd289721e86eb2623e8760c2ffbfb34490f68a3b2839f80f2fe8b78bad4aa4d720cb031319e295b0a365b0b1b8871dc9d1cc0181e0c36ad59054196b0fc736e8fe3f4a771807e2cdd6e7da08d91f801230a973f7820e20b505ecdd1f40bc8001d5a1ff797e5bb11e31eae73de7ffd30dfabced1103f1c802e71544058f37f4580771b0830bc0e09bedf222e03e0dfa5fd76a880b658734666d5b68eb06e5b1bb6569c28ac24deb9ce6bac73d2836aa58b0f8192baa47b6d006a057df2167c53714773d4b473e382f6bf50a0b3e83c3d883c6e526bac98ef6f729fd47f996ee35c0b3d263cd221f9937c33dec89d0e3960395d132fb6d79babba76ba9613f4be49d41c340a545766ed1b5324241ff0029cf14913cfa04158ba9d4ad27827a07ce6efdadeabfbefb3fd4243b6b478aaba04e522cf574f740a1580dddc768020e9240d99931861a5442f46fa80d34b0d23ea74472f026727870a216c61fb2aaad408faf8c82723ac5fb42c5c6b543a3874718edaddb4853488225008298c7715e388dfd96a0ea78c65806ff0d2c0ce1292b71da47b487ea089ca14c0b343ea5df42033a888c77f960ca6d9e8a77b5052abb7685b6adc95b2931922b724ba539733761b044eb24eed950a7bf08884e59380f8e9b87b45b2cf11282a930acfb2438e75715ea00b9fabb3f1d32d37876b3967b9d19c20a6491176c9779ade2f11041d4a0261cc28923e36af96616b27e0c27002b3a7b365a2843482f2bb6bc12530029a82e849aff075ea9ee9bde0b0a495c5ff2270dcd3aaf4ceb1d930dc85cc021c655fc483c80dc6c4f9cab1bd773dde02e4648d0d8c94ed0b520ab6f0a893c92837ee81632a72730c7b64c828c639a807c92dc41870a1d8b4e0437e871fd387431bfaf356b26bef886fe7857ddf97c2dd3ae2014a6f2e496ee1e078dd3eee2f0fd586395e7614fcd34fae0b6f969db9dd1b35e6f10097311ead7fd65e92b9d4f1e5c4ca2b77fcf34ce9de3c811145ecfc0cc7a186ec18e6e98726ea4db6e95f8183079ca7f4bcaf044bde37e379b33de621ebb8a51a98c22bbbde09c1e1022591c58fd81b5163d9911f21b621e4df1684a06389223746b1ecd397c262513c492b156835930d39917917c9b932b26d6dab0ec83dc47e50778e3c62dc04a79a4089664c0026b9522c06d5c45b290dbe9278e2cfc1d340e9f246d702dd6c19af68affef8a9bddbb37b01c648b5284f69b87d55cfc2065e75d6a006ce471e7ce03f344d14f621347d1e76ae1f7d58c50132dabb16e2364052d9a866c0e524d87687bd190017fa7fd6f8e617598c5e1d36b0d86fc904354eec0695047c0675bca5519ed9b8c7a8c1fae3faae64f850b7833163202267f70e1021661ee882a678eadf6f4bf85522e06b9b6b7ff05c3b38e9c5ad87d6dfa36a69294754af4afa7150825232d01630671dd2ee033a3e17d95783e8f4412bad20ed3f14a00ff1b424cdeb94294d25055ad842d1d22c175bdc14e39d8f83bf4edcd8879f70e1c65021686391861cded27f8a66ce8d485e9772319d4357a733c41d2ed8481567abc5f407c7790a12af581b76284f798b3acb96a6b302ea8261d1328f1e62e542085c13f21bc9805e3b347f34136481bd1ba9731cd8bc296ccfda35c2994b48df931efb6725681fee68db631f56498dfd8aa952f41df020c7b73c18606217b86371ec7dd25624bf6287bcc83751c6c15c85ae60e29e28704364a808f089bb77e01fd95c45876ea0fa80b57a0be64a4dd9aadd87bdee52c5b7de4a4bf39ef9af2b9b814abff5cf9fce4bdc10d26f913fddb058d56d132c7688e08385dfa0636417f901f3e49deac087f91fbd63f89928f0ecee1aff0674ae011550a14426b8940afc99f857a8d1f89e96b599fe0014f621008fe89bd815603a0395a3c6a6dc40e591517e508212c1a4a411365f2c95876f0a9d32c4c778912feb25560c62f03e23bf82b7e55ebdda16f7b32c1962d987321786c123ac840ee700b4f5ecaea6e65b43d1e8a41cb7a16a4c373458fcb9a7494892a445470c12d8efceea4d638d3944e25bdebe1144cb12572dc740a4edb660bc4df79ed576f2c1d2ec91004baedb702297fa20c983e6c85bc24c59d2f586e6f24ac8b608b8c18ce92c37b8c7d2092052f28d10b56648f50ab007d3c263caaef3d8618d885036efd27607d664c55ee095107b161b25ff693c1331c75fe8afdb2f0f09e4fcb638f8e848de924ad489f68388e52d96dbde3110593e8de5b8912ac25114bce2b95fb685e3fbbe8e64e422e46ed9dd9108602805e8ccbb6a3518766087841476c987d067de13b4cc59fec17802e049a55722ae8f68c0d4a266a43d8bc462e4b927ae1a6abf2da2fd83b4db311685aeefca998a633d7e819ca124fe24dc88a6d17a01845004229136db85aefe1519632c9cd062c4888863e77db5a707399b17e11bba720a0309cde2fc0004317951428cceb5919cafc6239d44c5f31d36b24d2480d1dba03b91a84c32864344be29c920bc6726445a581979d2af3bad1289e661a0d44e740e5c7dcbc30345f112b94a23c7bb1210bae9c941ad2fc3142137b81aac2552ef82ddd27702d0ed1b3e6c918c114144d603384ca56dfa077a833e8ac620da47b66389a8c019a9d6df7538bc98616c53ef66cbc3e6186845dc4e169a1aac40ff3507f4c2b53b2dd4be52aa507b2276d1590cf5b93ffe1a125c88d18bca955d242ca4459ad6cdbfee19576c43226c9923207dd750b13935005c80b7ede524755e759dcd94c0b59ef04a7b11775e603ed118ddeb448ae07dfbc6f6d569759867b0c9de3825d4021ea2913799c8b66e660f894307f5719dad681e0d90413203df6de942bca0155d711a4c538e04ba89486862a9d2dab9559cc27d06583a168dd49ee7b18e428e7286566ab061a6561eb68ac46978b1295d26ba25e53623d0b3057bf880770eae2b8c0de7483d9eae8f627c2765cd2fc35de2ff5e3281903a922d154a3d16152785111fdf42e7357f767c94f09c8f3ae559bbb460af99bd80833b08d2d93e8739fcb2f864ede2934ba958cb7dfe61c70e8007a79deb66b2ecb8b8e90ab1c6ac4d38453f8640fdd2cae17b9829fcf5c2062f1b021f0f16708c2fb9243aca1aca56f44c457e848982bcdd8716b13381b1b65ad969d55140710781a8b07c52ef9c0966c04a4eb0795831172f58803f533b1a84d95670480ab760e7d26f2d34fa023dc6d1c0bb4426003cd7ee5f53e7fff3010cce8ac348df3c5127a769a82111892d656728a1a66839004747fab286e9992527e5c43521bf2cf9e881765c3c490ea120401c5cd1a6067337c3c939212c1ce6e40f4273975540da24c6a7714bc685eaa6c9fb2f57b178454b77abaa0ae489aa7ee9cb8cfb676e6ff68e65fabb0abba29050de0ac67c42cd7069bb10cfa9af25850d68c123bf89f23d734457ba58fa28f4e4a1545041ffc0e8457a47278506e0543ebef3a38345441326da0acbcd7be25e4e050be08df5da066f518628bf0b30b25570b8cc315210cd0af3bb9e54cf37b82cd49d7c614270348957eb6bd4f333daac9df33860332c33f9a47bf40cc0826574db9854ef626dba1f8e9c5afd1bd8b5918987e43e0f5018110c54e42ef9896f976b9a10861b4d9d183969f12301fac78ca0e3b4d8d3c1858b50f536c3cd3dc82c5d71a985826d7dfbca025e49ae8f628bafc8c56d88c26a65542202c80a8a6f50b9156a681fe17d40f97329ca4897d9410f18c39bc4d9d085d907f50572572e821de4d95b8871dd8f864c287453c975874083d4f216d341a313a03f226c5f570ff19a1906eabd65ca293e63164f6e513a5063ee1f7dc81fd903aed6369130f1aa35528fe1ed4a5290b4514fadaa06d28881b1eb7e548ef9e5fdf9d4b24dfa4ddeeccac49e43e6aba3874cdb2563c00dbde117c1e788f64bb6c7b1272b8fb7d882b58e58d59e064eae46c3f244aabb4db145c01ba1f867873286b237067e274a28b86500b6782a5a1c268c8846b79f57f74f2211f6f437f9128ba068fa2fbbef36fe6dca1f332e1ca0377fed8e8c94c0ba63fa888f574d5b544c7923efe1b2ab096429de30b9dd6e0cd7e7fe8bacf2d4e27bc60ff7586ba9efd36ba5df562a380e92c383930f4e712d33972174828d3d3c3662c59a4fb0641a2557b845ec8af9dc21f024ab95bb6cc8e0dea4bd0428bd24e58bfcce1dac89d7d1c96c1f2f46a2b17d644829ec5bbc7ee6d24bb01a2ace86a95ff5466ab537d06ec953fd4f7fceabe3206aa8603ccbd24e30f8dd42c18d03f03c9e533fd98afbbb952e2eef61f8e25163b1673022c6253a013715b856b0751024d373f75c6d5ff092acd557d1d7e079ff8883deb8281351bdfc2a2041203fada9cc8536bfa6caee8e821467894899540e0e326c8473481d54dc998a025ff8257dc94d04ef800e590add143c549a2b639c5544606c18a6e5d87e37992248eb268f7b5444f4be3af3ac4c26b7110febfe487071d439bb0052be04a8c82bd64a51529244fd235e9cd9058cda1152977049afd2fb359942884c3c071cf758a89fcd863b2b6ad6ca928fbfa26a99c8e1f148e1430f9593d0447ef1538a2fd05713bdf5343119f6ce0b92e0bc6b58774daa0f8fe2af6af298a8b7c1bf821bce46f12fca11b36116528560a41f18fefc7b33a6402ec472f5f82b68b986265301c29cddce443bfc620af4add33aaf33dfeb1fb7a133363e33fae07ba92df56f123909601067607deea72730580ef058b42bdbcdfe107deb56cc83a1e642bd3b5882ba224e499ed52077fa17dcd7d5e0861bf0e0244739cf63be57f7192d89415118777183bc5cedfe99b6efe9ed01afec0c86c4653ad19bc401c2268030d20620b2891485a721d66945d03d5f7c6cafa2fd9181aefd890ee40c3ba7b01bfc79f3f137e0f142ea0ce7bda13703f94cef654244f12f8a91ae4b755526972ba0dff7c7cb2c6273b68929a8dafd8f59fc6de9537a6e4467bd6d5612ab2cf63e530793296e23b3c8f92290adb38dcd22ffd2ee9c73da604c3d19e0b0baac95730693204d57480eab580f23c15432358e2639724cb1894bddd33d2b6c8650a5899bd3ed995436ec638c6e9e4405329c28e2d30f9874545966be440628b8c1a0ccccd04afc13e159eabd7c296ea1cfda387bd97022ac6dbb12714f77e3183f4bd719b37c2a9092ee25daf15ecd3ed51fec3a25eecac1c8e5405b56eefe8c913b081588d2ae8a9ecea71effeeab01bff972af42b6aa561e1a3fb525c3b13d405a1b12f81f21f48cfb8c1152ee3861bb54fefce1010dbcbca69ee340455624d06fa46e332b5dc20ab3cb05fc082e580ea8a23f24845f87dac3d6a4dac6a0c6b97e9accc2b8ae08a19669053e30f5f1380a899c27c4ae05d2783e93e379c1faa417e758a729bc6e80cd7c7eb40b2dff7a46e240fa2bb7f0fd5e0d11ba0b809cefe0dfd9daefe5a585b6070225caf32af0814f7f7059d9e8d6e5459b97148664b8347da66104f002f2ea4eca6a29029a8167d59cdf14fa9d6fe9b031dfc9d2a828e2d4cdc2c9e7f0c7441d0c78b1c14f05c6ab0e5eeb41d145e406b18ba24272a4c5016d0b05a9b8fd4dd7809a4578b93082dff8c5c013719fc9c8719ab9b0ecc0f87c1b4a64aa621882ebcbf73aa081b9a1e62909bdc0da9bdd830f9c1ee9cba2467c2273e73ed6fc9f36891362ee6d0bb40cca2440a03b85a377132d5024cd3df606f16217301075f3ad4c6c8cc85ffeffbfac9b0ea2317b31daf744e3f5ca6452179c2361522f3630c6dcde2489cf578bd194ff412c6d1bd57de329611cefb32e3c9f5a7588b061d3c8024f368664ca34529a7fc9d935dda29f46709d1de50c03355e77f802304339bce4f01056b53919de2c266770f77a86f22c7d13b2931305f4a29f79295bc2da53c2f1c3fa3fa3c18f306ec195a63c0f269f3c5be0997021a1e5018649f603f87bea1d146db8fe16f235580755e0a351f28672d7dbfc728c280eb950efb30cbd6a24caaf3cd062d4db8f0584cc97e2549fa898ad0fba60b6ddcbc3215fd35b396b4627fd04020f62f2aca825b9172847c29d354ed67d9a325514f78d0cd8ec5946a6fa7b1ce740ed22ccf81c2ed298c10e25cf20f2ee3b3f616e01f6a018804d13a5e3c1e23c3304d047b0d69c5dab541aa3d023052c114221550a2d3940c7e3412b02ae548695ff00163670dd5f9f0ac7c0c4315fd19fb8d290098b0d307350bfb182f6411553c84cb98d8ea28319117ed24ed52ccd97a241529d4ea1365f554021a95e2006bf9ee7c2e7b573ef74a55225d53ea95e85cbfd0a302102e9e67032e9e4d33fd1b78feeca86985a672a31a0d011da6a42c5e10804fa6ed3f9fd2278663e830f068be37ce7d56ca0ad0e90728e3c9747a5c2f4ef938fff8631c49c1d1a6f2aa3a6103497ccd547b222415f591cb7d189c6a953cb9efa67280cf2eb0eb5e53104641816ef594ff3cc0a029250b4399e5244f47d49eda32a8313eec1559b1a1699549230e45a759f884d26fca4ebe1fdc1702b3e0818846a35e46591629ed3dfcf074e9dbc06d2d5663852e00b9276805df1a409836ac752a2a8e51ba3f897e04bb936c3e250d8d0ceea04d90e84c80e36d633638cc1872d8d53d13aba7dd8b55621836c6b4af88c61e83b9f3a0a350e0801b1668898eb2b141529c7c2848d0f42f6f2ee81e1f6581680ba0451e528b35d85d0025bbd787b4627cf76047730a12c85dfd4f8f9a239b2b867582d6e746d79e128ebf66c7e44a16d32002536af1b1cf067acb204460bf4c69b8fd5906414816811d2dee6cc6f3cb1a57168ef12776ca09488c5c88dd014d5ebef3ea2d579b7b4a4ec0132cf9d6f60671f2b5a088aff3673b2363358f840f0de240afb36fca5cd8c0904d5c4418ac1688eeb9117c05caf0f2cf811a440196bb215fda26e9b72493889b1091f9c744b5f2818d1c9501ea423088cf3e08c4d49c203b249acfd8162513d1046cc55cce56d18dd2029877d8f725c0010e33b4aaf1a10644eeb9fd5362502b5551c5854b80d19b09f7abf88b729007dae4dc5c0cb74b3521309f6a083d95130289276c59cb3758d07ec4f9d1bfe2f44501c1dd8a987e34a12b0d8083947ba305d7e1c4b86d15e2555c00215d8c8f4dd05e4d828230a14626f07ba47a6510168b93a3ca166b1d06bc4c6e5234d5fcd6aaa42433dfc22ca562b5837a45ccc05cd8a5b11628b1c38bbbf92e3315d952486e752b10584aeacce0ee34c12b8d3de51b2fc568203e0580b75b2d70669e3205b65c15fdbe4dcac02074ce41b9ee3a18edb2c5a4436074c6254451661aa7fcf174b69552c870866223613d02d4519aea97fa1ce16b7780cf94a0a16b503f782c65b3b79ac0252da077e1fca5e2e10f5cb2a096fcb580b8f3c510b68164ca1ec84a8755e4e921d7285e649e3d2f270c8777fa6d0d126f6c04b671d8a95b1ce2895b923ec9af86ebdf106cde8d31650e1e6c2a8f343dc2a6d441209cfb8881294265ed43e386fe2a5ba8b0a285d8fd0ed60d38ecff4474f370da5a7de03f34bb19dbb954db674055657c12f66e94c18a9bd8d8a57edcf58064b55334147020332a602a0c795720e84e335826209bce3c9b7e6a01ca7659934b1a6cd3b038c0b0afdd97e46da39f6b23f98c27b73d4fbce93801d227f9d6a839937acb03b2eddcc96d632fd9b670fe85a6c7c56b6440b867e023551907813dc26efc4b74895948918841e98fff5b126fd37da8e9c8faa0140611101f3ee0e79214f62c8cee65f39f967f87d8131b355a7d06f1ae411962e3285bb886a9e0cc822c55c4264e831770a68caa5db09b265590b5f6c23e03ecfc7944037011eb8a3440de59a5768e4ebdaa7b4489b9577bcbeef6225a3b69fcc1bdfc3855fa97e88b332b26afba99fbaa11529618122d7a6647782cffb2594272aad96cee0cb20f240923067bb1f2e2499797cbae46cc823ae7f6b55ac5385873fe61ae092941a33cae8e08518c51ec0f961a9bc1527670692ee03e10a51c061a76f610440e952d3c4de41091a38e43c209ada273fa01836b5812ef058fe640d219f4a2b36c7b905cea78503ff34a053735dd8d55fcefc9d96ec826c8977b831e620d139b009c5b2c435654eb43b08806050de15d05c988f23e6c382f3b1c1a2e813256a2eb2534294988ebb8f86efe99cfa60e42f51a573ed22f3538dae0c53dd5df5c40916182d21ba204ed8e88d10c9ec096ba4fe6b781314a35b22c1c8eff2fa560b469199940483740494db04c5e03ae78606149190498465dfd680f1d2bb959a8459e2863bd05f65277bdc43408bcbe168278fdfd7b9e5e49fc3ceb0cc8a37e144041aecf2862d603026a3a2624f845604ebbb9412be4a35204bd428565e6cffce43e574058792ef809d1a1f2d7656a003d6366126b1037c59ac4cd620d319338b3b821c62466169bb2fa9a67d1971cb56cbf4d310631b398214696fd9b216612631633c49bc4cce20c319318b3d8940dbec8b664f691af12779af5dd286e16678a99c54d624d31a358a3b829c6b862a62d31529bc18c95f095ec69fae4ebb39c3a8b5a02d76235cbf01578fa5b0facda7e20dfdaf243ead31eacebdb9ed7e56c023bf830b700e76881cd7ba328bc2ca41279612fa7c567387f201762eff77b26cdcb47270b7949838b738350d25d412d83ee69452dbb1b39ca14bb45d552fc25ecefa78b9e441fdbc4d2b0a9063508f6d1b995a67628e520f6917f2990bd3b57574b3026c61365f81581e487cd2a8e07e83108234358991d811c0b47601123830cd80c9607aa0abc3fb33c38e639c6523870d331db0dd05d6c29bb16e25bb03f09698d2de4a1a7929f2afc815ce7f92bd569e72522b4b42a33c55aca20dc24396218af79d3c0ae54246f4fed016da9cb55cee266506a5d5639f3b408d191567a3af57bb152f17374df4289e5efe4bdd44529807e343964fb0c020ee9cb8125bc04c21fcb3d26246b717a4c984ae3484fade974fccf44daa4e8b15d340313748492bdb02bac22f29e1530b417d2c425dab4f4eb5d20b2995a653d4280b69469dbd1f83999397d222a22494a81741e866c9b9f0defb888e7f5351caa83b688a61e9340e63e7ac72cb3670f39444b6805da3a21313b8eda5c3f15f21534218a939dc3ec6df456d541fe6f9101fef1ad2cc46e96127c9de780ccc74f2e6590900fb1bdac1e48c651ff302007dd415d8c6cebbf3d55d3c932766edbcf8665d557762eff4f68e4f26c9f7e63ef8127d8bc5dff9bc9818630eb98871c296d4f9af2720f281c2668c46e800b83375c00e609251d36c47abb04cb013339bf01c7841c901c5c6af5cc800a422db30f3e09045763e4f09e1a5a183a688f733d8aac60313661ea74d8bfcf9c43e8a2bf74772c785e7fce83957c13af4549f010aa89c4754b32706921541fccc3a4c8d93584aa8d66cadc1d5127a9b6398290c331f17ed4b1ac1c1037920e1983c92515bb8b2af1ec4dca82e6e1a70fdb6d8daabc279ce02c0d9ca22c4530c07060ea9cf4b0b58328ec3738af3fcd6562f143c7f811c7dff2d1bbf156f6346e5def194ab8f937521e1bd6000d5a6bdee2a12d9c5ac0992807f1f2f5a6500e14034ebee607afe27fdc8332087b940d573181483cebf3ae6a6701c251c9f7b7bb1441f1c8c312e92223cfac70c3aa17580161638025d31f6a321c557a9c0af9fcccd0b577dd4b6151d3d34a1066e68ed971cdd06460a1d732eb07cc67055a85234aab1cf502ecb416ab8d547ee7286fb34c8e78752c9b2b5ad44c587532b334aeca82b74c418420cb6470ff82d2a6e7f8f9eb4037705fcb6329d6f8a1d5c366d6e5d9c17d7439b6d42177c8c6cf1d631b86c05cda7866a6bb917f27e32bd5da79a2a6e42ac91c5df87b59b94351104f70f4c914ec598d5551dc193a4723d938c4a2cc205df0c2c3dba0d7c9d27d1a0de78d6874d7d52f5b01d3a605e73a7719c98412c07ec6f884640c90cc52098f438de6318648923e06ef32bcd0adcee75ce4bc417d0e0d9ba5088d3607fcd83d04b9c58927e5c9a8cfda71044493fb2bfd7352d8bd71bc80b6470b6fa040040e6d6ab1ef203a0e9d0344d90695bc48eb1efb08bcbd6c3f59b144525fac1c4ce6a5db015b054b84393c78f03380556aa271794b409b6e90f71e6c22d28d1b844dab2792ef8c5d97210bf8258e1ad6e23c52eca17e6a2acdbe6130943c0fbddd1391cc418dac0a610f2d7fc415993e8bb77033dab2d93a289b0011df2c2f0050d492c7dc2390a9227025d7aad61bc6f353e2f2c50c7b734b9862ae6163503105e27533384520a239f124b08802d7e204520e5974ae8843de624c68865b259fb14187437c834c1ef3173ac86424b26e87233debff7d201ac24b7e3485412156cbd403510850d0c11aba52a479662387cb48cfde7bdb6d582233c8211d2783301903a30e3b46ab07df438a6c5889bb553179c96d7bf0dee83089232449c0a5e280802b7452648b40c898f3566f710b5c6b999bedf6a5d1eb74133c5398db53a7138e57c7a2168ee7e07b3f313d38bf5e73a76b7d460892faa8a027d8ee40b3b5817efcc41a7bdc57313701077da44359ffcfc93d56c32bdc3b53b178c855e5a73bb530d01e601150731b51d486570848352e7db1c8d8a6040dc398724d4b767ce956871c61149c7d6ca18cc03ae0e2747416000b36a4127e699dbc204f5c1c83875c85c2496ebb3290c8c143a5c01aee4509909bdf3a7bb88cf5f0440bbaf4e1fe9ad1d5bb2c7b644f2e19fbbb2f95393e6bf3ba8e2b7959a135b5bca59bfb7c8e5fbb8cfb0140965fa80d7ce7ce5ec32b16a1fee2472c4df31a01d5394f53e1ce09cc9704cd3a12b443294df8f6ee1d41bb65dd99db30be6ea874e9c8923c97b79d0da8ef7d4b8a1d16d8ba0064e394b02b553f34c28402109ab953ebadd3d0adc27e6c844ecfd4fbf27d8b8c0bfc447a8224b9c23dca144a58ed2e51d87de2f6b39b70cfdcaccc97062e3fe92fea7280d8a0d3ad662357436e7e49e37971c8bedfd1b8373843e205042e6bf3a0f52742386a1b35db01f8c53aab6b99b4eb5926db92c81c7a93ade62df37dd3cffe7f6058f06e0ada371ec716e1a56047308fd2424aa37d604874dd87220decca939ce848b6b792f1735a4549a175722f122725476e201261c6d42093259ecbc1f4eeebe231f28521af19e171e4c24a195570250a2c38ecd2154e65dcce26970d6f6b10950a19d16880dbfb605ec3a648a66ca46ccaf1789d5a0a04b7cf15cfc7bd077c7ad57207b70bb51b58d7497e20c196fa097bd7aac1d170e55f36b60ca8838309901958f2a9f005697aff26d94fe803712e428efde16da57f390846d3b54d93cd21b60741dd4232d81772518f196ab819b0a40ce0f1662ce6777f849a902d9d2f2815eaf41bb638159472d603f8e02ef03bf4de5ebcf7ba4856ae1c177cc247908d66516f2ec2b201d4d77c52a2f026dbfffbad87bf15fcaac4262f0eb6bccd36be642687685a08a12483cc07189e8ba6254bd7e3d90c43d118e9e67408802c159e065d34e5d31cba88a4500d99a67e260a97b0e367e818cfaba15e0900b42e3870298b3265172a0aa62920dc15a9437c62a3445321d648492e8fd69acc8817c6310e8a2502c6e0f8a5013a8697e57fdd1516f9743d8d598b0290a7bd59361e1ba09270776229c45554922158af7de5a879a90157dde1a2a87f8b0e946d4a60dcf860d2b2204ec45a7af50cf6fb2a7977007728b0481a7c977df35617432d21c66e4f71cdd3112d71b6523234d2ac40e89e607a521a9110dd6998d4d437ad5dfb30fefcde61cf86c6cb4c72e1c9e9e6ea0ca652f01219f9b82f79f9d71d6d8c474a198046a775f559f3b2dbad46e8ad28f5505c056f3434f2c47be472724a809d1f65dc2f448d05577ea18e5db7c638b7f66ed4c1167b7c0b32c0fd1d5578a885776df76d1006b8eef45b4698794b6b2412cf94e784d8c29d5bb0d1a6148648aa905cc6251b6f860b302759b6308e0468c16e788833d59821582483b563b3c7133bc29c163648e02f8b45172de40dc909b9aa956c46040876824813be37f07528046dfd4794e695ffec399f3a4d8cb427c2d12046eddb48b0f72a39700630dbcb399de9ddb7e913e8c1b819c5305a6327cc144cfbba8cd9060b70aaf612d526c0eb9100734802a35372223cefe607357ad63ad8385e08d41852e4ad3ac96a048147b8b8df4845264118c5830cee66ab96834e9de0eeba2c5d92597361f77ad5e9b9e6fcd95202e2585c165b4319e7b0df0c1437816020453c69a439ee4c3d2f74fa12df01a3860ba69592b7ce5f36a950c946fed00afe3794275403e6b9c21dbf1f22cf88ac10f61a1095abe144dbcf13139b2122e9244570be16516e18299d7b576fae2fea6b1c82ea72753a227b300febf463192ce8162dfa292da4d11721d64d233a500a405e0e88272ea653de933aec26dab7204635a3c10d549d2256e783fe8c1611d86d33eb1086ce56e23f585f5f838832de89d23203e2c487025e9e1173c39cecccd5a72021f251c8a017628bc22a849c77b3d6c9f78b5cdf253a25bbf1da3d6abb485eb5d488d8208033b9086ee4a7c8945c0145d0ecdf1f036dbb52990758dd7d997c700216826f83a752cb91c1a8927d6981ff93f6d4b45cb5bf0e17e28708e574c95c4e59d033f1db94868a9d355393e81dc9f4c2876dc84c1e6d401ab876d6263e3d29eb30e7a84144ab73ec66844a80035b4fc4ffd487371e8ec0f224b8472fa5b728efaec4094dc9948267b774a77e665a0415c5a7b0ffb32eae0de21428418d6ec97d6d5087392545587292aec6c5c0ceffe25a37f39ba5275011a8d29cc81b00017f13d20e746b42a39c21f6750a23ff0b4335d81efa5ebd105a538db8e7ef05cecb84d63c2f776e02ec00881ebfbdf314e4cd11d316baf9ce00f31674915e4fe1883e5fb8de36ae5005ada5f6196bebe8f96dd48cb31bf45d043c91b017e725ac6225b7f933cff8a8c3a8fe36aadc01dda2a3f6eda56f24a9dc302d1e1fc36173ba4b362bc02784eb596abe48977c0c3b55931ccebe9f4f5b4f328851cff9c510de81dd88bc225785e8ef12561cfe17cd49a6328d2907300acca296040ad7656ed07f2e595c72c6ac44fb05f1643d25c50102ef2867458f05718080db0456370090a031366be3e24cd7024f6468993ee6c04fc1b86a4b756076e9c3b6b1a9063a1479743a2b946a9939121e50ef56ce13f1f01e8e421b1bf7050931cb6eacea1cf3994c7950daf83d5db47d8517f80384087e0ff82b0a36d2534e65b470eecddaf9631f60fd7bd49901587938fdfd2317d8899ecb14602fbf8728c1f1a7263f8dea75128af5ab21fda71daf4d6e954642452f75a74695ef4635364892473427e8876cf3399e7edc16de9e4b966616453d96a270b91bb791abb41f0b36dcc8ef28d09c63e4bb6e123e0ebf775d1da3e469ce11649ce6b01eca4ed62821cc9ba842cd11ed9a989a15fdb8761b1bcc16a71c531b858fe3c3fc4f5ecceacf657c166de85e442cae92844e70c5c7f680821b787e6b06c29ccc372ebdf8f21fd2e444b962045cf4c28ee79bdefc6a79b0ec93c0f9d1b26f0dd9a862e3218b3181192e5dd81619209f3441bf2a9a56dc889303ade16ad80b9bfe9afe9b470b05f52d086fb4199a12e5c5b9f93aae6624746c7aaac13294034d07cbf57b6b42077dd95674d67c9b229a6d517dc951fdb0425917a7099b93ae4479f4c45f63018a1d6bd8a4bd54c9ef3e097a66aabc0b1f301b38335f9191db35a107311916d66c41905c92b4cf8b9adf1938b31d589795978e92822cd90dd2ce0cce07fdc113666efbbf9eed3c720e4618a17bd75027377f215200b1fb8b7bce4977936b28789ca82e2d20f1736a51f1303ba53216f7f2d4e825acbfa2735c62b33712276f56983e0bbc2621abf489e976d38d769b1f8c560ebc815bd9001b63f9ccdb85d60ba0931e507ab9c4487aabd5dd6a6c940d7b796ec8bdf192bd6aee4a3e597fb55b1c1a9543c0a87d320bcae7a19165431f1aaf24555fab79ac92e5d01593f0274c1d3c395c6ea71772c0d140ec68ce23b795d18b3da25ff5183f1c59dac63589787dd11f3ccf48f8af72954df5cdbaf8fae1085da87443ff05259d38a0a0f127b4c7aceae280e4291313a9f1d4ee68e6919d222665f5bbca80a6fa5230a0302ac17c57ce684a920024908b2d23a019101e4dd3f5ce493469e96c50373bf7ee74bc94edad6875a0dec5fa4470b76421ec43000677b23c306de206949aed23d6b3bc57b6b4a52da50c7630d10093e9f0b623b08a473c714a1d88c2d10b7adb255b3322f2bbbbb442b66664576c77097444e905a6009f009e00396766c10ea6343b94524a29a5ccc241e905144913555957b5d8c54b47dc8af4a004982294004d0965427fe3c117b3f5b22a6a9222e87168c56e3a382c501850b11708930258221dc21e39f8791db769d9bec2300c7be4e0e775dca6653b5f39bcbe6def2d40f196acf7de7559a6691cec91839fd7719b96edd950e7812269a22aebaa16bb38ebc8fe0b32a2b3060c17362eaba22629821e8736534e681e8d8b2592a142c8ef7236d4d9b898ad9755519314418f439b0f8f0ea5e2c473f07b0e7ee0f771fe9c839fd7719b967de0d8608c71a40dc54def5cf7c85f03144913555957b5d8c539cad950e79920e1c3a383c32285b5d65adb3bd79d6b0f69a1a1e44873ce393ad4c9b477ae7be4fa3144d24455d6552d7671761e28e38bd97a5915354911f4484743690040e36289a0a853d75aebd45256adf792f5deb9ee93eb0e9999c5c9015be721d33946c6ffef2684d7bdd7bde775dd028c8c0f0794c96f10031304cb8831c6b2c68aa3fcad4c2a3089611836e5c464ef5cf7c81f84f3409134519575558b5d9ca39c0dc517b3f5b22a6a9222e87168333d9c8b183171a5063fafe3362d8bf7de2b35f8791db769598df54690cbb2efd3daf3346ddbb4d4e0e775dca66593df0aa8cc08893befbdb799cd9d9a8332f9fd409134519575558b5d9c634c1886e14b26e46ff19d97b0d35a6ba794b677aefbe4fa4750e7812269a22aebaa16bb3847391b0c17b3f5b22a6a9222e8716823e1e31b3824628d3566daf307ffbbe4e0e775dca665cc067febc85c96c886655916e6c126c4ffbfc4c860a000648670cffd2fc0c860f0214248c87ffffdf7417830220c3b0f3b77a04c7e8780e0de1562202d45f8ff2f1380649ffd7f9611288040c2bc442291302f895918869eb70583d4a882c14fd21c628e440289a19931d60112a060784006b108053108c32084104208111042081110012146400831c430ccd801166e30133385ebf9db761bdc109814cf2fd7f908581223802e54b3e37b8f474abfd8afa2a8662f53de28571e4320c7889f885cc307850a81572d4f6901a313e3fdf8910cbb62ee1a930a6c0df3de040196617ec30b185dedbb28416fab5c2c2e91ba563ef1de9660ab9584cf6ec1ff12fd1d3ee3ec4ae06d74aad92a653cf818429d2e3142e712e2465fd7bb778f6e76ceb607d2c7a4810f0a78041176cba074924cce20f72c272935ec33fbf8f9bc52e1f90b9baa7d0eddc20c3efbecd3103eba64c9f5eeaf427ebf683bfaa9766e9581231e710a380579bc635b2e8bf82f0ca786ac088d8bf573f2d95202973c2ac601dec723cbec9abf47793a0a71ea856d58f01a856b66e089764bfe1b6202c1893ad910bcaa4893bbf57794d0994bf66b948ddddf0d7338d59dfcb8eec9ea4232444f408c26b87270fd32407bb77e2270ef7cfe6a5eb96d343bbca2e42f8435d8af5e0f81532da4266dc03a378f4312ef5230ffd80a22dd6e34c8512710a8a7e9debef52fa0e71ff5184bf3ef1a70108e08a9b7008488a09883c26979202fe9f98c4a84836f75686e9217856b747ab5fedcc4cfffb4082e79a2e81de60f8edbf40a7b26ff434924842f513b0fbe1332600d2ac8bb3ad8d1999f748f9442875ef73df4abb959a846841716a2cd2bde711748edaabfef30719d54cbd548e9d0ab86aa4324d3e2b6b5a0a27d7aea8ac2cfbbeeb64ee723323f7dc0cc1323d214ee3732574f9b31a7fa56ea02ab7d94df185e3f36fece505a678ccbf56b92bdab4236876a316e231c6e9b4076e4f78bc659e9fdc6f98a47763d38f1f77a2b2b318ad2cc18e546c0bfb8cf78deb377f3533df1db3ac5d11bcacfeeb8ad9cbb6b89dc6b687d7a68f0d7cb1ce2b2293fbb302c874f403efbb7500074d584ba7b9320d3ffc643aaca37f54016a5802d61b693114069c87cf7266b0ad4bdb6cffee13f2fcbb4eda5d8aefffe4df4e8f383656716f5dc7fe901f62fd4a280344a1897e5627ca222dcd3fa04710efa32cd87723b8cd6a782d4b13f81657d7dc3a0748b861cd72e0aafd1b21341a2d4a783627c877febefff202d306ea27d6759058045fe7b0411c8ff3d9aba6c48b84eb9b38be1322aa26bb2fee38b20a0d37eae8d49fef49a477410122e6fb9ae9f02fa76ca51c20563cb21ee3b12e6d5a571cf1f3b3eafd8479080f69f0c0a002250d6feadaaaa2b87def7f0cc9b5bfc419da3feb31c8113107e96296bcd7f0cb49cf2a5b811f02ffbbdc8f32f38000da942a0a3827d1ca8b2f3e11a90f8334f211b27d8fb622920e03e0ef93ef5f75382ee6dede3b0efab7eef3698701a5bd86bbf0a65f3b2d4af5e9ffd1ed8d95038fc31b8d8bf70b1a3962a66e6b4383e3c388fed5891b3bfa386465463a213a3733c963c0f075164621b7611c022cf62e89e6865490c513499a3bc11f82f37bdc8f12f38001aa942a0a38a2fb7a594765e7ea2c2f0509adaec3c9a89f7551705cb6fc07f0bfadb862ff73a019a0cfb5aa64f83d8cfe04ee31700e39a7f8d1a105163589e37caa5d3b608d8e651beeb24d6f1837ed0105502a1c9d7e1af6e7b13b478fee5a85f8af28b69b37c6731fecd49166b9a1fe5f2377a0a8f010f00150fa37e9dae8a0eae4c350993bd1f3cd57ac19f1325b50cdb5de7b0ea149dc4330b3a4738e57154e5693485326993764a1ebff3673352c2bf4f201769df13011fd7f986f0bf0e05a0e143c109e769cba2b9fb36b7ffa1199d9c38d009edc3189d40631c269a8448c8acacb7afa08040e0fa54cff81cfa35994f7175f9b6c5927f4150a25f8265ffbe21404acdd4971ce0bee279a562d75ef5da42e37ae055a3f424994e43ef590cf602487fb1a4dd59cb1214c5afcd4aef744a4bba7c5e9e0347ea1bdf4efbea46fff8d24b5072599f2d8f78ef4cb88d85d8a70bccaae42e277a7d8950e0ae5d43d790df80915c85088051889954b24b349ce5057e5205631053205e15271df95c32d36724ffc26847aece08654a393b89bb06fdc617d13772c92f2c8cd9c6d8f7c2580185d2124ba8f298a2aa11030bd1edb4bc720350dc34f29b19e30dd1b3b6355b6b092184ecbdf7de7bef4a104b101310700b2ff4b056f6e1a9d1ed4566babd589db955ed6e2fb6493cd96797e4e9799cf5229eec85696b7f61624a72b209bc45620a14135356e74a115376279eecad6d4918b72d7b1b7b40840bc40fe3132b6d13f049f693cff7d2e55993b349b6c0a56c04e571f275e630ddf4fa6ec4d22b574ac2b24c5838efb67d58c6c82bb94884198255c9307277b5a398b289c7f6f74d72570c38e59ddca6dc6e2f29d7e2c9de788a47d817390223c6651a70e9272f71727b3979f2a53ff99367279c6dc5937d0a6799c493fdcc02979ef252e9f27d723fe4dfb399839ba6397f52fae44a4779a7704650ecc9ed51382da2ec6b6b6f75e48d912d4e3cd9c3c896e505dc61b7d6da7f3ef23e97987ab7d79e8d4acaa1df67e3b61de5ae5482a1d01f77a1a0dd5d2820c8b6eceb35aec863b5da3ee330cec4e3e2ba78e5af4c3f20b421115edc0618c8061e169c6f4224720d30720b144cd172494b09257c1b88a94e25c21bda5868f9c9059c1643cbfb5ae4e31f6e20843910c22251c2fc02219c8134374d851530bc9442422b620a0a286bf0fb7df4033384792d3837371bb83d804fb879100b2d2116132b72247738c33b3978630669861b12257f2f2e958ac4937cc243c9638183057913338c8130373063b8248f780a9190200bdec4d37b076fdee18dbc8930a119640f07d64e9f62e380df6b51d2bd85f37ba58e3360dac7936cc26b6dd5daca968829aa55ec955e7bfd753040bbcd46ae6bcfe8c6433bfd516f9fd5df5b8efed68b00f695956a0cd0819a3a96a07f174f37501f0f13b5154ff2b4c8917a3b9b57a778c47ce5ce04fcde9dd66397acb29668d6059b142879f5d1d7f314988731708aa8824b643010536f8b22323d7bd2575fcbbc04de7d6ee8599b906698373f6927ae735e32c18f6552095a81fda3ef3663ae44c2fd7229bfbfbf975f6403be3d60e92eabe5290ef04a0bc330ce09523f26dd035fbf2b17b6a5d7f588c1869d9530ccdaed372286728b6116c3300cbbae631786b2b2f26c09d528dd5e504618117d8583fde4c905cbb60b7c7dc51eff3dfb68d50db87b70c05d958181fadb5e50cf5afb066cdd80b3c3db1d1dd844a78b36b05c25fa0d219e45cb066c7192b02711d1260ef42d09fc70e6d0a463f4c3220d306812e92a5c47a455e2ca4a36f1b8bef21cd757564ea4ed49294721d21648ec946c015804e9f124aef4eb994e8f6eb7175276e51cd9af7c9d4843fbd151568834e45ea3640bc02246f123aef48c03715df4020700b6db2496659308b106dcc9204ebf0ad745d12aa4d817de705c39fbca48e519f75048f6a7df88904422cd5099f115aebb0e02226db3078c30a2e103609358ed5d9d1029dad2edc5da83549ea242e35538d852e7f610bfd0741a87b90bfd5e47392429617f2931faca6f67a3bc921f7cb67214ae1b7dc6490db8be92455be0ebd935f88b4341b9fdc57551f475b82901b38974f81513e9a35b52def1e269e52f9e461fe52e8a281afe1a3d860ed8267b942cda025b786d25ff309d947f806e0f445e79c6d38ccf8dc76907280f914bb7b9a39167280391714b22e52a2a5c37a455ce59a8921d5ecf300da492a2f2928a8acd1388ec983b22ad92e34bdb8b8cab70f1972bfd6d4a44a91353315f87b9f44c85933ab2a5f2cb44c6e93ae4647cc47551f4e819b7bdc8b849899443140eaa48b98ba253b2117c1c4fa60bf68b26199ff12bff90f1151979a5e519f792b8fa92c1c1cc7e66b9ebe267dc1e5b9497aeaf1ca2e42e661c89eb3ed0a477404c1f8808f8dcf4f7c92fa246b9cb3ee35d908832e58ef41931c51e6611c0be8e0264db11fb921b8fd3bf0261b7f26b743be2765cf67005e52fe33ad28958f940977237e3a40c44f6ca8c15d83264fc8694c19d88e0ba0df48cb770dded198fc17551f48c99210ec0dff61280dcd340629f7e236adc6cbaedb8320d73c780fec1f2ec27ae837d650f18d1195251eaf00e4845af74d7591e85116dff22ca662c87dc0cd91d6c0f18d12bb96340df884674108f40640771b9bd04f1ecd22e4e36dc5eac6d82e101c075363b11bd6821bee51b3aa52038d824a2e4df8a8525431d35b088d05bcb968e34e094d79a2a68d080ad0eee9c6069781887f1aed20cf1ec6d28b9a340a31c76114ff2caa44e96337b067cffb61d3f56bef2ec2d17d866b9239bd85b33e0d1ed8c9dc2ca940177d2ce7456c6ca5826f8cab5067b3ce98b789264c0f659b632b01bfd7af6f0e82aa3d1caaf959bde5dcf66567e29b1f21fd74c4c5d2552be9e3d2b7176c6ca4c6165ac7dd675da9c6b4dae3df164e22a4fa589a708e0ceca8066a88829a823a3bd8c952bb3acb9bd58a8c343a30b2bf32159d21fb6d6e68ca16366227a9123f6da31e0ceb25e5256ae2c7725d01571451e0bc6513827587a8820b8d7b6853b8859999978843ceeac8c9d89a977c95615c200756e97c414296257e9804bff183d7b0905e6eeb664c828e1286979191cc82e51e94aa9d7ad62ed755d17d7019795ec6df06fde8601779605f3e8ba48871356d26c387bc4cdb661c0a45c676070b50a2b5a1e556beca5b960c0f0a4e3df1a1b68f383a79136aa7568f95a07a892371225532f9ef640ad85f6e5b4cd3fe041cf208c0f27da1a2e34ba9ff08acaededb52c5ba7dcdd21728769e4aee4f21aa752ee6a803ef116243f1ac6752fa74bdcd518d7a4e58b271cb0b10cba582fa769bc73e2e54896bcb15fc0d93b792391c8d6121c5a51c1a9f1582e2e0da185166aa51d3322143bae0c9bb60864ab6413e456ea697050cc580fb22c3ba3c4d6306989c27a39ab23735e9a5bb3e5207dcb258e76666564ac8ca5d1e1ae765bb075694a2a33647b0177b2350364bb807f68c064fa0c3414e93bbb9312c813f6bd9695afe42e0428b71fd52a682a0f69c62f07c5947114ee09db3280c83659560e26bdb3ac2de0d0ef472faf61001517234a27224867c125150d936e36fa758d0eb9194fd806a17019dd5e66ccd87280402650963a2b9c64124f2d2de00eea846c887bdd24aade0a736f85fb5e9cdc792df2234e36910f71323432c809626fb31232bb94f1b7adfc46b49f1089d16df6ebbaae6b941d5e1767afcbdaebf6a0edc5de9017673fe26e446bbf6d2f365be168e40e368d679c8cfb2943c6e34e4cddcbf8677b91912196339d414d0677573848359477373d0991e8a0dc94c8da66a8238738c8743acaca8eac2b2c22bb8c54599644497b799a913b3c44eeae4e4cd1b8bc9759c0f7349e3d2c5bf12499c4935cf9c5c1860d2fc29f0f87b9951c23cb922aa83323671928f9ca9675411d7965692d8ed1edafccddd3e05e876243ce1ede7e242f779e8d785f2112afefaf9db64a30cb2dcb215797bcb6628a2577b0590eca4cd97b2a2bc352735896c4933c8b95413d888372770110e35796616998dd345a390ed8a31fd75166c8380ed828960bbcf2d12fce03b24d3cb25fcfb20864affcb529ab5e842e83a3f1191ce8236e88af70a75f4ecb421cca6970320ee2667c086ef413b7728dbb201a0f5d7a11539dbc01d1c83862d300ddc4c596ad98823a31857b26cc9372874608746990bced89171ac7013b34c4e3f6c4cbe938600ff18c6a260ef6d5448c2000cfe0abf1d3f21bd1c4bd262200b933410b71f9166ebe162288e882b41042e47b05fee974ca406a9f86b8dc5e8ce067705362886b8fdb8b76fa10a72c994494fccb1059b6ba6ba3c5211a075fcb498867939a4e87af88d367901e62876c219ed1cc9eac10b726d385c81d911ee2f226eebd96d3e7f632c46970261ea66ba77120b24d87db0ed3b52c02d9343290daa0d033bbbd80683c6e2f3472077ae819dc9e7820d04f3f401f02f453be3698c6dfa604e843e47b85880b0cfaebd0638020e83b40a68b40662653280e0971f0b50cf10c9a1e371d1306a64d190ad075f88ab83e83b4e97288675133712288d726a63a6aba1c02140ae527649f72077b88d76263cab566e36a15b1d2c4933c92559aecf2e22acf1698a7e5c9e5fd9ce4f750a82c0a2277da7d2800e4878a913b95869c64e160b364cfa94bde8abd6cebda5e2ccc7ba3b7f2583a0a7476d9d2481d2157fa88eba4dc81c175592e3d2b6998832b969782c78878b00b13f77a06371b84f28863a1bcbd02ce19d7b974b644dbbf7b63e9160b9cfdfa0a37bae59c70e9d1e810623c6249d55ca1cc56815c869225841042948fb83a53659ac493d4d102a3bc833ab0095481b96ba2b38f1eb71cdcca250a071beac0265a5f7f91d4974a5f570bcab46cd99bb2cd5d137dbd78b2f0d7eb9511c438138cbf8ef114cea4fdf56631d9924c489cd491ad1ef89f1ce4c7f87874963a453cc92c0bc2f22056aec86c6657ee4d3cc94b73ab88a79a6b03803f21feb617217e6b32bb6273244a92526e2f8dc9ce2149870ead00f3adb13276269e3e177d8e90b2a5220775d447b92ba150394e305f108e55125329ef4aad627a875bc5f421b86e7669e590b376a7af675c4764a6339dee2cabede8a432343cca175cb2d0d8adf003343ca2614b100f65595255ef9f1c71b223ec4a23237c727e48231cb34979be96d92b5c47a4570ee50a9772cb817e711d75e2ed74cab3cb9a5e8d885e3723315f89724a4a369968fc6d49941eba2c7100380ad7d5682c0fc175b843dca581e264006093e0d1018003079936dd66a6431177f2d1e588b3389635b2497c703fc9a61ea29ffc4474fb956ef2c0b487574eb71721aa807f6860f4f7ebd101902d2b9ea4ca887b2deaae739cc9c78990cf4ffe381e30485b20d17ec4bdb8f1c0241770072107245a16bcdb0b8ae9f5c559964d327ac6d924c789a991bd656587b367430eb665a170b3311e4534fc055f2e8cf3804b430bd3d82dd7b134d6a92c51224243e2c12c6d88ccd569ec426cbac8a4b1675c97e500690b6f48cb39a135e4b2436ee56fbb48dbcb4a861848bc36f12401c0cd168294ef0df6e144bf3595a6d2549a4a53692a8d44799671b7e6d26481b357114fb256114ff295e65e8c4b25161618fa38b988e55910cfa01644ae332c5c95a9362db167b7dc0f2c77d004330ed8a578b2ac1269b4e2840b76d993b891fc95bf55dc9a17940c310a378d7c0eb78fb576f4fac375c0a561fe71dd1e5bc956b2cb75c0a5b1fc037229cfde966599e53a977b71e956c65a4b051c2fe333de59992659d38bef246ec4c1ed65c5c4756fec2a1c0ad7e1c632abcbb2132e6d7d9cfcb322d3d86f44c85dcf565c1acb570a77c9d429ea4c4cd94b1da9129dee501e202a4c8d699922e20247987e407032274a9c285951de4ce1ae26f73acb20966b3df75619867d25833083a36c0433087abdc2e99018974efd80632c82460f37d20b38f40cd19dd4e9d9618014be60e2e4a61ea27ffec9413e17e5e72177091742b0591d99c727b222b29ac149199c8c813a2f9ea0cb758cb3cfb2aab934f6ecc19b9e0366961369f80793680bf8441a6e309b76ac3c7b8e956727d277837f9bcabff2ee28b97bac86a387f227574e44480177b2d59df2e84fa264d2330efb85bd849d7046b8b8ec40526ec1255c3e2e90f5c9a61e9f8b2efa4022abf787eb9f0cc3308c6118cea61ef8a28b30063a86309475dc30408dae86dc819b680b2cd9823a7007ea409dc7922a898696920e2d0f593a3c1066b3b3a0c2152d3f63e614510500d6c3e969d292d59dd4e9a13870e8e96ec248d1728541564c7550a7ab3c3931d5551a2b1353492a4d4ce978e589a979257649cb69592d2513a823a5d48947c8ebc8564baaa0ed58545a44c1c99a44ee104864661954421b70e80053f3850a1164a2382e3d1b32d41dcb2908000c81a2771802623101a77f35e4ebeeadb9c3b88405172864c11db873d16011bf01c4d3f4ee607bf36ca434fd4572739a5e2c34bd5834bdaf2ca9aaf9de4854ad91aa4a849b2b744d02ab69959128ba448d91281a83caaa3194feb601cb57987b2310204422c294a01095d0f40fc622348d96467626353983e706a7e4de6be9ae0e3cdcee4d3c5d3660a98a3f78287a22dc24343d7d42a4792d9482782a1c3098b6d9bb76b876c0b09f7cefd92bb2f022ceb3616afba8e4d99030b8367892074f0aa12455d0873b9c242a0ea535e032c42fb4fdcd03aebf78c0568744d9c76b077cdfb3bf76c03177af8bb68739e82d13f164df291dd4a93d77c05dac8935f75afb5b071c0fe114f7d24127e2d8df8ba5b54fca2867f050f6d6bebbd65a99d7622d4edb6330570e9794f78aff8e5fd7f16cc07be1104a5f172e710f755dbbbaf7f5beaeebbaae3f966b06d963e926abb1279ffdf5025f7ffc19805dc7773c1bd7624f62d8c59fcc3d14760ccb58fe6bc1debd31ec8f05cb3f260b4609a3d333bef866300cbd76c0b361ec9190464c3b94fd7cc6c195e55e43163c958491816de2b5ac208c545de0be833878d97b26cfeb89dc173d8f5d7f1867ea9161cfea89ac8c643a326e89b79231b09ff75e6bed69dc038c3470019428e8f918634fcbf77c21617a80bbd8137b606e1d30ec533ccd22f1347fe980bbd8137ba4eac69eab43461e4f0d7d82896709c2f4f47ceca93a346a7318c1687bc017245d31c0f4570fb87bcb49397acca469864252297fc1006339684b118f1752c47a36e0e52f0e645e8bcc322aee1430cd198db4a225a2fb7aafcc66b88ca6cb66e869628a4a8aafd3671797d164331915d90c7c46454c4d7b219c912ab87af066d14e8e48279ebcf8f4e87c6a60620a1e7e7ab21919453c338b7ae229a2007722253c2d676662aafbf4d0c45446c5a747e445cb775a8fa4221e9e988a2d65846122a148494cf57c7a7036e3806bf5e9b1389f1e8b834730366655886cee1eb00987dd60b62c29f095f2bdbb079c3de05a659f9d7b45364d38d6d985651731258fa914ba2b3d0af38c2d796212647ac6d6b3a1d2a4215dd24b624aeac423e02927af1760f82cda02cb4cc60cd963e9321ca9b597dec006193d7c8fc6f71e332b5a3e837fef740afc9cb0398fcb6ae2c9427bf78065d39cd5d0d71aa9b23816c7d6b4c49903ee6c2bcecbdcdd996d2b939505401061890a8e243a1b7e81464edf8ce6c33323c4f3d9943d703e3a64b267ce789a770fd84e8971b0a71ca20b7027cac93d40c4c8014b9ec983bb4ce66a770fb86a40cc3c1b2a7ddf01c12a3da16f123a207ed037c6199eeab601cfa16f8c3cf4bdb503be7ec5684955ca0ecc194d5fdcd5b429073ce570b5600f781a79570cee5276527652bab8315a0f75ff52f4f0b6f5e06d0c323c55eec93d6ae87b98c948553dfd9c912a6b97d896d5792c510e88a6b3ab05962b49d4bddc8ce018dc0111d317887b20a4b83a4d3fb219ddc4e07936b6a68fe1458c9e1398989201e8074d6d77293baa949d87a207d13c1ba3a6a74f81c3530131f3522976e8fb8b0518089878bacf3d40ccd83d6019acbe8ae04e94936f9e0d1c502e8b792dd70a724fdf0331933263ba4bd911e5f4bddd1c105732582ac01d08e62a82e93f3cf1444130229c67e3f5fd8747aa32997b9fd265343c3219a94ad991a87b2ca7ecc4d37d96b293022c83e7ce791f9f0c9e2a79ae950c1e89baef64f0f44dd9e97bfdc6685d39464ba26e17a3d5178899bea79113e2c91e4bc7a2d32b351d27d3f3b27a7ea5e6d950e9952b5690f4b4d7dd03aec7309b9eafb5d6952b9a5bb1229e566e566ae229b64ee3a08df1c8015f28c0352b3252056307c64ea3b0601d3084584a69e17b0f464b93add4c414edf9152b9af4fc4a6ba549544115f0ac5c11530f8b1c2ce9b92293a4e78a0d4ecf959c9e5386758798ee5698f45cb9e9f90cab2b55c454076347866626a6ba952a6862aa43599922a6a0137a36a1bb152a5a3c66c3e0c1b6d0d5e63496d335c3d8b97fc0b0b1773060749161f0c4134eb782849e7ec00f0b1bf47407a3a7e76f1f60ecf43c0c1d4b239ac1765e4bf7c9c1bcc07a7a1ee3f9a2a7e553726ab534282c289a11cdf46ccdec3d1bf1ee015f0fb856f4acee6ea3b07a9e722b351235f5c0f35a3e37cf06fcfcc501eeaecc792df3b7bbbd39e05ad18cf148d4ecc1dd4a4dcf77184fcf6ea58645476e2cecbad87561f10d3ad7c574c4543c03a27d3146895ae249d46345d16309263e10db6084024d605601f35a267a2c01692c109eacd17fa7f8fb669038e7949583ab292b07576fbb818ad53788227def128414b446772c2d7b5f1059c4f050576678b200e39c652c51f77de3e9feba008b7a624afbbda875f1bd2dc0da63aa7b2c4c62ea5e4523552a988bb18aa62fc845052355d96f3c95a4cc1d0b16a9b454c1f4d5b4acbd88cae40d304bebd9d84a7ac0746071435f1634f47d10317d8390e91bc44cdf2068fafec660fcec5a66696581498771884fba0f4c7a7621a6ed389bb4e3bf958fec30b21052366df9ab9344dd67d9a4659303ecf17dd8e32c44081692dd882cc0a9fb544f4cc5df7b7128a75a7deff15d418dbe2607d867ef619f655007a4f647d47a2d987ef722181560f94ed412b5a42aaeeedf9604c6d292a8fbab028c7d0878f61b0296fd34b9edb8fd7936b50fd7a1f4a78bd19fc720fde944fd7927e4c3755b7f3e37256a7743faf3ec6a1faeb3fd39dd94b0dd11d1ea10b0fd70b9b3ab65dbf60f07446f1c0edb9f6717d4e267fb87e37ae3ba12f4e71906df753f3f3633b4e4aefe703fb6d3db2d097abbf198df6eb71df3f41af7ae1003564b4ec6108630045c77cc967cdcaecce3bacc3ffe5a833b3a348e01389888493cdd563c5d2a885a3b36dab1c32d87bc698978ba7fdd239e6ef772762e2aa0a0b5dcb1f05c6769dd2c632cadbe6f4903b9ea75dd882a961c12ebc8055718438f1552585163aa2fbd38f1c30de15fccdd756f6b0d02e55cb8a887ac4e4a6bad9fcfeaa4b59e565a6ba593d506397f1b9aaef7676392788a9115718a6023315fd9f7dbefded840564c1251f1564606145e016de08d9cd006dec809ab88a718e34d01ee644e8cd18bc8ea98d2e19a610dbcdd01d6017e8f54523fd41e5420e077f8140b030c9f625780df1f8c2bd0e018810a23a4c02827adf65e58a66d1f8b8292cd11ba7b4c1b64b21c2cddcb8cb09884458ed034e07bfb0ee3c0f7f270b3f9ca1b9c02b2c0f799dc78dc18b71c6f66f65ed715105557ca92220aded02171f50236ed88ddd5fa5e4ad9c2f2b5b3889f0dac610bb0ec0ec3186394d37e3a22ef922463c6252638e74ada926909218490e6d9882d218d9cf134c57d2df259f501ce2094fd5ecbf60d48151c0244c9cf7797d67725fbeef7dde91a02c47ee52e95fde62e00dd419adbdc09d11da429c129e026c023681722cb01e82ed66019eaa4ba8b3551868a481367e46b52cf430744e25e7e01cfc6bcfcc5c12a5e8b14c2530044e266f8835784bc14ba06135c8eb43ccd3008af45be83b106d2d4b44c3f20acb44ec8b6a88a1d6689a8ed91dba098f58a37a8c063e2d9d07a3b059e8dd7bd3bf4f6e2f0b6674fb12fc0f5db291053f6db9b88a9fbed1888a9eb38aa42dbab1070f75a1b90db9b902af9ed703b135215bfe5ed7d7277b3c9023c3f3a3ce8f33e409fa0fbc01f6521f1f859d4de653f1278a80d07d69fccc46bd94eb3c0f3306e7280fcbc0ff999851ce9811f2f04f420477a8c4e7a90233d441f3dc893f7110f230bc18fd9f4c946e24939c8280711652c519d11bd75357afbe4ce00bd65df4ee08086fb0ef7762805edb9edc80e63e2693bd53edcb6551fe0cfab0fb0f6a21dc4bd15c61c13dbe1f60f9735dcb47f38d94c6cbf176bb9c3a5d27f3ac9cea597782ddb676b229eb67f3213f1b46d7f2c5bfe71652c91282f16d07e31f552114a0ac5145e14a14811724e44210cfa6cdabdb04cdb3e201c126ddae80221ab871f68fc824c0ec8ecc98078a233eb8827ba443c82bec891eca200bf732cf1440fdf7b0fe6533cb101bf78baae77988d6c7f9925aab6d37fe3181051f4d9d42e5573a5e39e006b19ce64280383a1a5cfb0a7bd3cfb07dc3d9c4b14fdfd12cc44a3f4d60faf0ba9daf150f4945234504a690bbd1470966dee1e774d51baa7cfdedde3cb95deefbdfd8d58d24ee9a5975eed251c4f94de077ebf26fa5d7bfa129df6d252fb329c89270a65e2893e0258a6e9cf1253ddc3a14f0131054f99b83ade65e2511deff459cae39d26f30194b60ff00b0c2fdfbb22a7a526b3894d2e661a7617711e16b8906949262d3fa78e431873a292b8242a89380f47478ca989f3fc94dbcb2c7264ea88a99c7884bcedc13bcf861b5eea27899229205e172d714e599d3b9e0e1823517305715322cb9986e5e0cc3060f872b536dccaca4e3bcba4970e2769f92ce2c41c17e04ea539a8c3e4bd071f7c70de7a6a0054dd1c712410b18be8867792c7c1b1f781a1e218dd3d1e9a9f44c9e8eef1cc1c674d52712a2be27495d5b2e64489c9a0c234bdfae500df7eb6dfb3a9d51ce0da2f079876cd019efd728065bf6756dbe2a6616f61a382ab2e52d1f4d66e2f7526fe037cc038c01de4814d634a8a3745d3fa5a7fed1eb0cd69ab07db83a988343155454c41981763a4ca9ee60177b02fed5d0ff2403a3c14fdeb2b439ed7426fb6f91245eada992c1e30fc63d24fa76bb677c0f0a6db63c01da9e991bc167aeb058e875b8ed8b1e6b550e8453c51d8134ff435439e78a2f4b3088ea797db8e7928453cd120f144b380bb520e70cd0186107e6a26c514ac3055090fd3095bddddeb21015f11f011becb5a9339c0420a6208d0ef027848ccbfff0f0b2998e9878514186913cd38403d6a1b315c5a8ae8770c919879cb91d26743e201a6e9b32b55310673e0816ff5a4cba984af54997ad8cfcf1c24c6600e3c2b7b222b79c9e098a6ef6e4fd30b265aeeca8f91f91a12451f391c275d239ea88b44d901bfd57c772df756f746aa668d44d1d35973d3b49bd9e4ae8d44d1431ca86449d3df9eab4854c1c8b94b62ea6da105244d9b34bd3977a729e451e282377477799a4a96169a7477bf68fa0e379491ce9aa6a7d70632e18aeeb4ee5c96d0dd4b72235570453f5917e6d9787d6da4aa665a1155134944d1d3bf9b789a03ee2ece4dcb5f9c94facea5e9bb1ae7d9b84e6eb868c062683a59313eb29a3e8397499a4e24f144e3f6a2dd542f6e9a76cc17279ea81c70776f709afedec454772f92a88230f7464aafc594c43031664cc8e015f01de59ce5de7b6dac96564b2fadb4464c752e47a40a3e9e860727e8aef492cc15642f85b30f6771e4805f63cc050dff7056803351d03066b6a0e184b9efe6091ae2c34b39bc01a6a4cea51b9e0dd073fcd0c9161e72f6d0f02f77b2a7a1d4434ab6641d1a5ed2a1e16cfcc7bdc61a3e4a9c88b9d71227e6c8d63c8427fa882373ba89313e7eef61fccf07a73f9ff75e2635d07b9fcf677b1f0c5fcbfb87db380dbb4a95ebb04ed42936e70c99099ea573d1ee1f0e1fc6418414c24b3760f9784a4f986228e97cacf4f5199d4fb4050c845e04b04fe5936ac016c638648fa5c30f3ed804bf1f0008ec1dd972815f1389f001d96309413c96354e350c105350ccc624966b8f05b180851cd6a4920855f424c2929e518ca49c745ece4925adcf2ad7d1dccdfc43d6eee86dacf3efd9c820162f79a7a5b5523bafbc220633ed3d1b4fab5964f159e472bc8602c2792d9ede9f00024320ff849d8f5c6c221286005e36c1f048402cd8a8e0dec6dc6941507e9fa17001b3ce80d1c20b9b9644b49c2e2d2b8da09697d0082dff8080e30fe1d018cedc6116acb397c295aec02c914fa5218db26596f026299f166fc86978170344950a4b2bc1534323669c31101e4922c67808bdd02fb2641083ee2e94f36e816196ef2933618d03075791ebdef5074ee8b1590db13488591d89eff09337d8de7d364e6cc89634889613b2648c47b2ea527f23666ac09918e02083181c9d21a09cd5bc6fb6e2a95ec24d83560a4e3043cf2ac8900a0718d9c54c1a64d70cbb58be996b3d54fdfb3cc39b736883cd93499cf94554379bcc2ebada5ba8e40b44d8590519627370569f0719327710b33a02b9c723ea2d57424329e2c87b2f7a44575b5d4fb9d9d2c1b535a906b700c20c58ab2043ac0b685647e287cc22b45647e03b5cba676849296f30cb504fba7e3279366ad7dc95ee1087aedd5d43d74a8b288199eec575d74d373f719f23f6cd4fc03ff43503becf3fbaebf2960177b3b543473cd59b5e93e2a93efe01e39d6ccbd967f69a69396e3bb0ecf0afe1a6049689805c541251f519a6c5a993655adcb01ca9cdce6cd52ab99743fe144ff527a9b2af8f5b4095cd4bbc54bab976a1ebe1f6c2443cd53a73e2a9bed689335b38b3a5c9c48843f658b2576b34dd36faf872945c01b31a42a920b3baa02329c12b9ad25ae12f13ac238a78043de43e104fb046aa7e088f3cd583d08a670336a56568fa85a614f2504aa9023094271779985de289425516127146c413bd01620a26819d5ea35dc0b4bb6f2f38bb5ae9e4f213196a28fedce6e1f639e43a23401c6cac72af2167046cf8e96ae55ec36f104228e107420821d660e64ef144eb9643fef144ff054055963ff05209532d77f775218a78a2548c01439a0c67ae18b08e1503220a427871a9a6a675681d3541a7a5fc93327b52157aab1067ea711f7a28079161062cc0d40f914b7456f786a48e189a72e1349be634953514a31c704228446d4c4c61a7736218169b6214424843c7b84c4487fe5e4359c794428754c17c6182c01e2eb4c0661564c81d026b75447b9021710637abfb9a234f7565cdb371d2f4d20a4ae51a9aca3234bdfc42d32c94ac80a52099d0f4b765454cd9e0e053d0673be66a0cf00d0384c9dd2df5050386dcfd02ce1e9e54c413a58947d0e3d0cfd03cc10b2ea8a254c254c6c413959152c4139559ca2cc19d8ca1b162b6da5c956e50b294881d2f310c6162e211f4d70ba74b4f54d6c423a84d3c821ecb55d6c4139556c413b5e901969735d28662aff5d8956fae94dec81a4a29a5945ed6d4603af7440acc26cee0f897610d73bdb53648880c35a85905197272b33a727d483cc1ceca5a23d80de89c7f9dfc41cf9f4ee88c3d32f740180ef4b0a027f6b72da143a2e6121235a59494f6e1a96efce2d9803d6d7061f0a40a7a7601c3863d7183a7197be21113261e31afb85da7dcc5cdae8986d9440f81d0366273cc33848145226a9edac818d803a1c692696ae36d7aefe502d7c7fcb4a9695914808e1660b46cce7a23588ef9ea925f4414ad875db3ecb1c1dded29d59b2fad2e2c2a5970470358d913539df40226a6ba2945d353f9454c79318b34fd932f4e994864ca5b832c7bda8da96dcbf2dbb8bb7d6eb5d67aaf5f138eeb9d81aa169f63b71c694a4a298d5b035e4b9b23de9a70c477e53eb983fdf9ac9f12873feff0e737e2bc1daef4af35184d37c9c75793c49395832ce2f8225c92bdd423c431c64853c50b8c5bc842f893c9ec524a29e537901485b0e30f8661b9232241b023121b52d28da9d0470fbdbb9df2141847b909f467204ed31e23f451e892c776ed206e7bc6754d74964dd8e5f1a709fbe71a280365a00c94bb26da84659cbb26ba89d67eec929bf26a929ba0dc3df116414a8380486307fd26d025a86380e8dbe9a6233b288bb6c0d927dc1a001bc46d7f5b03608b7e236e59b405d632102a3a28ff107dcb3f625cbbe43a519ef194423bc6df4d72e30177c4c82f9e52601c254f20126e498c1efadb9290a15128f48c6a320b69a3aa854259ee482119caa593425ce9ca3ee549593e5ef0ca44327eae65d025776fa9743833d858aa4eb4bff7d1e7a2dcdd50fe1ce7aef4f909f71eeaf34f967f5cc7ae8d0371efca2eec93415cf7067d76337a5e1ecbdccd902163654545c5644a49414129954e4e62c4800183441a8d44a250086310e8f3d9364dcb320cbb7a5e2d45a23cdf59188ff1f76ce07774142377b5e74987c1bdd742ca5d6df9906d397aaf2584b914feccddf6f77792b903fdbd89de0ee23e9c08606759fea11d7bdc78c063d7f1344dd3362de3b05f9cc6fd98975cd7446f015f76975dfbf67b8dfb813df68deedeb70c8436f6a7f57511a1e99ae8b7aa95c3213fdf130980301ac2902856783a193da458c03b5e090d580cdde3423de5e0dfa603fe46849750c08e27a9820f151faa115f4bfc9928e9a0c34b5dac92638529d041e55d2537f1f9de6d2ebdabc4d37c3c95e269febd475fd5f1ba9753e3d154d1ddbd306d1b91de65f21e5155e4480868ff181dc653f081506af4894ffa8ccf2f1153a2cf271290c5d14fb89191d06f4418dce833b810d0fe81633ccb5eee224c3f4b697ec236c5b7db6b4815e8f35926b5b7e588f1936730b8ee2de330fe9e6ae51d6e18a5867119dc0aa7c265d674cad9bf5cdf01a117de72f0af7b9ffcbd5a4bd3a6e493a3e49397720906877fc2e1185cf78e9f490d0687ffb69781d0a659c7886300b704d723a266be114ff38e017ff2966f13dcd59855bb21b50e08edf7eb86016a2cc11507c3dfffd147293c054221a638e0eb63ccf0b3860190f4fc068044d5b3438e0262ea59818b2a7a967ad4dd63c970b1857e5df47cb5fb634a25a666cf4f964e0206b32216cc3a6fa4aff431caf8096313b46041ce9f15b280847e5ab040a74d32e3e86e3f0d6fa02d2e9e189f8cf311494cc98e588858f454dd1c6f246a7ed6494f3d5135aed0734e2c51f34ad4a43575a6d64a698c371d6f78669c4690695a6badf5f7de0ab7c0ef19c6bd150c8c8d44a10dae28365f45a10d672fbbf7e61ff5175c91f0952ad29fe81b46ca97e250a9b45decbdacd6eda52271dd2b67708dbf6bc077cad37bffb9afbf213f9f4ff6d7252c5542b60731f5101dbb28ab80c8eaf417e5a9a2181e8a9e46961b9abee3babb2ff25cd7e7f2061b1764c81446e8596daff5b6e82f131a2404b31067f2118a3912451fcad146a268c491287a5bb4e7b67aaa4ed3d7d6bdf7de0bc207cd34e8767b01e1dbed05678867dfd72d09d8a0dcc1aead78a2b64653ed35626ac321447f2a16051b6460563d5d392e1ebbd98979051ee156d3564c513f74cd100763997e40405ab71b2ca7e1e7747141a9e6bc912868ea8171261fd8b3671967d64814644914bc8c017c8a44018671ce0855330622116168526626d673ce39678c54d51d898287a519d310d69d8b678db90789fb6c725cece9453cf5c4d4cc7247a2ae3c7b20eec91353f3f0d38ba8a2c10ad63cd46b05bc80268a5aee48d5a4c343c1433d343c4143da82863caf051eee34cc584e8d58163c2d33b8418c5a3983b3df9056d36cfe91fd5a1b376bb32ccbb2dbd7967b6bc0dded77af0d32a4083439abcfb3ec9af6184d3db04bbb9cc19dd53a007bfa87f6d7423e0f62ea113af650560191153ef67af36ca0b47c451211107a5797b4ac4a5ae25bc2a397262b346f26ab63240a73261f78cec81e89925346d29a18e0aede488902dc45980de445771387100dca6f484c6724a0420f6822f77a83f9610f7b3ae33ad89371f5d8843d4dbf5084a6f40adcd59b7ab3f1d88a19a1b4a674fd55f26cbc96b35e2e74fdf59a23559f7c7124aabece2a7307bae9fa8487aaaf3861e88a454e571a89aa3312556b4e9db96dc05726a6e4e79c534aa904a87a11a6b445165dff60d5a915c2ed05ff8a78aad126de6097e7e6b4a46af47a75bad69cd792d59c988262c625bc96fa988457447d7d5d1255b5d324cd028f2ee473d285803e7a7c7d86e7e8a00b21fd7321a3831e49ffdcc7e873d27d7c4ef201fa8854eb57a3d0af5f738642a28be4bc2e6a419fdaaa3527c4bdbe423bec4d3cb6871eeaa93dbb343983e9af7c73e2a91e7320eeb624aafec33d7871e680b37c239eeab15c239eeaaf7a58eb6dd58b53eb55124fb524ef7d17271e5173e211b507f417e7d65f9eae97dbb5dcbd6cc0f3f1d2e6b5d47a0c73274826cb629c910ad963e928cc839faced932555530c0f353f5b13a7f116a617f134b1be308410f26c1cd64d6c00345baf6566ad98826223c06b9917c02b625e6584cb965dae7f2ee41e7421d73fef3013b3f56c60169bd785807eaf7718f47b1fa0dfeb1e741ff720d005d29e3ddb7247a4b7ce0922485a9b0de10ff8bae5d872c6691cec261a762cb089789a14d88044cd9a67cfe489a73be79c7f2e8fc2cc9b45367f75177930676442cfc332bcf86ca4f43c64f26cc4d29c77ce3bf48c43cf35f4fc9b3388b5353105058455782df3108b57c4fc8449226a9e8575135205897033879ef58f493c4d03dc8847cc5f1efa36d8ba17c79a1d0ce70cebb5ccd32cf076fcaec44a02bf2cf4404527a05f163d6368b8c1679f832e047fbb90cfa703f0b7fbf81c6472c0767c1fdb710e72a48744f900fd9383602b9ce1219c91a80973c9009d1144945430a959a2aa8644cd98b23230865e01d7773086c78caeaf1c84314c226a7eaacc095bb254bad78b77ce095b73c05a863051cc789a13efc02bb7e0cd17de47fabbc3842cb5eec5b8d49683629ebac2b7859533c10c5b6fc0376ab80117a0c66b99af015b97cc15434fc869fb1d5ce34d124f9602f164ed759988273b71f264c593bdb52e370ef6d15a6badb5f6d61ef46cc8cf1c37d8ec60da438287a29a90a7729151047936204462be83532831011fb93c28d900c340054d29e0443cd10dc4d307e211d4fe76f1769868228a202499a3782d94b4ea30647936e2e1e75361094f1d371cb061add4e5c601d3d30ed4f402785860c1e5b5d0772ea06723dea6c2648f8505719e01f114239c309f1e4fd70d38c6c718e38e8cd108d96331229e2884204a7fbbc0dd6341b8810e6360f05438468a676396acf0a4c0849210a00d9ae6c02c348547ee6fc4d4059d7e09a98271fa5a309e5dc8e8d885c078767d3e1b302646c21821d84717921dc6b18fde233b0cec2313e86f45ca41b0d5288368a71dfeee607c10f7031e3f83a1d32d076c10080402e1f81c74d38ecf41cff13948040281365108f48b39ed50fb877b02fe018ad91888cf8bf7850e6e0989a2c7b8ab801b6fc036d770792c8ca5ea0294eaa1e99b782df4314f27e6b2ec904884cecb09344d8374114ff449e289529c7804fdede27e058fd908de912a9c61cc8dc131a51a79037ca4293d8cc35395246a0776f16cc892109a461ed8a0290c4a5105b80fa53b600cab91288a23a3da0ebefdee0e8eafda640116220474d185e0876a9e0d223c1574c38503eb98e14e1658c8911ea1e30b111d7421a16757839b29be87e8a0f7d84c313b4074d07d88f2932850c6f711ca7046a2e8710e82ad40f962abb73a1263a63b12457f2fde81cf1e218c8103ce2e4576ee73c8d18644bae698afaf38b6d79b766cafcfb1bd6696d7624fa49f49c7ebfa1caf6bd6decdb6f1c36587d937ee09f80728e60efdbd18974a5d761664a9d063a7b00b15151229c21d982442166cf26cc80b9544b82442264d0f63249481333006cb70279ee81bf095214c8e229ee87503ee4a4d033d2f1744af31202967ceccd900bec1b341eaf99745efea0c620ee56a45b5913952b63ec7fe56d987937c68d2b4bb992313535d8cd189a92a454e4c3d2df8b064d6297ad698253e10670a18a4ed41a7697733270a750f3953aab65f70ce8f919ba56645e88adeb820709541d2af9b421f1daeaa4c8d892729e2a94e51637030e835c6c7fd968564bf9e591ba2a650a8c65429e6eb4d4d12552f8b3a451f667a56d1b3d6f4ac363d2b9290a43367c9c489a9f879a9848b2bb84de03a299b42746322fb756a925546a22a8d2994679de9395b39ad2b9be8af4bae4706c58bf697564c89827c4619eda28069fad7d831ecdb89acae6cea7165d3276e0f38227f3d6e0fb8a61e272727b27a9b8f183fc94262e42b51d1944df2af438fd77e23c288f9891fa1bf78ea228e1118d7b291181488a8f9182418390a26b44721bd2875d1d3e4bd50e852c28726ec42e234e939e76d02ce4010d31ec63629b32d47ecbae1885ae8690f711d888a381395b8e349c70bdf952f75b49a8849d3c72f9a5e9a88d33a629a881375ccb4c8992825b588c33a6e222ef44cd3b6177c34b4881b40671f0d4499609864e248d55c1251f39349ced4b902ee680ffd22a69870363568116744671f2d724f0b2458d122ee88861b88ea5098a4e7b57e5ae4200bb4d5459c9499032f10c43e50c96bc9c26b9917715b47cacd87ee15b8d61a98789a558a989297e959a9e829e117f134a13663968069cf6cc9495b55269e668cc139352a4ebb9c4a31313131554a25f134654e9653e64815ac22a2e6adb85740244ac0a06b31c6186384333344c4537c0d392f868b869e6ee8b9cd1a9333e2b044cdb79a4034227d433aa1f58350ceb4839a76502a392d2425a79d522c69ee8038a135889e4a12e572899a577e1275b3ac7986569a9e3586d698de5873562184903d968ea4d3f55995dd26e5b66dad26513580ed8a1e265b92cd66db98345c496c636eec31071f174d68fa71a1863774119d6adc84132d3a93f049f97942b6e8a532509104246d3390d84fd806c16cd133c9863bb4c602510dda84ffb86883101a1f72267c524fcc0c4b1a1f72f3d9bb0ffb705b4bee71d18627f4b45374157122b86db395a20f7da780556ce2a9e6bfed25ff4694b80390d536ff90073db35acd7aa8783aaf498b9583451ebeb0315874b75db1d56c4920ce644d9611b36657b4cd4c4895e909d8f86f057bd0041c9a15cd261fdae9691642af652624aad66f40aa82d07c7a21f419b224aab3530eb27e0c60a00f9d091a6fd89d02467906b5d84289add824a69eb8af356ab8b8749740e0d0af2671a70b2d30ca0f7919bf1199b897fb7b1cf70c6a12c0391efe9528f89cfdad5ecfac86850547aa34a91ac5d2d48208a226a2ea83b0f0d9c0174208215e5b52a5e5ade66600fc45003cc3f55bcde9f40e743ae96f5b628435bcc18e5469af3686c6a3f1f75436e6a1ea69944a9ac9748c070d3bd9b6b16ab61c244994c4d4b624a62015d070536b570b0363615848e012cca013cfe0858c41720626714b82c7ac912a938fecdab38dc6017045ca588fc98776d249398391a83a6d9e8d2546198b41666326ab46a7d5f4b141c7a6fb69a1736304633bd1c6d452e906f51eea18e38fb6179c846703bf923e7ae772b34411527e1235ca9b8d44cd8dc76c12476435e288ace0f6b2d52401bf9544451d4ce24a310d18671cb0a7105e8bf651963052a5e5ca235180bbc9ca2294b5557ab5554b7f6f882130ce95677ba95edc4815766fbda917bf2b6d076d2fd841db6495a1b63656dd815328436552bba04c6c98d48c01670c30320f366fe78a28e46146caae979f29e2a9feb3bdc8733309afa51e7333e3668d44d5ad2646d76f365b12de76020410cf30278b4c242764b0c2c66c13899d89a96edb36241b2ba608f0fa2d494cbd3648d1aab9aab754c4d434c3144d333348d1f5598624a6b624ea55069d6ea3a9adca24a6a014cad082d796c4d4ecc663628c279e6e1618cf0906c41f3e575b1b0dc633e3f53106f8b5f2d49e8d26a6fefadaaa43d77f06272b8f54c1d5c98681c8a289a86969f9965b3e73cb61ee4addbbe538679a56371e30c7fc62819f0d58c4035044008a084011ef4a1d80634e16c164f8a269cb225d6b76454c412464e8026f49cc770536cc4d094ad26e46e5a4f223695e4bfd64b93c6e78db048043888679aba1c2311ecc8b989254c453cdf1aec0863e79576043d74f1b88c4ebfa592355a49357d2f67a393385f06c0c012231e303904562aaf2010666c843d7479ed82355f4f066f341af5dcb4246a77f2bcccd066d4a40986ed0f600fa207065125dfb28c716173bd3b8fb1165285eae1c3f39ead4cbc8b18bd86a4137d1443cd50d40d62465ee649b018f20613ed2f62bb7dcca415ce7047c76a78053f070d3b48353747ded6c8c95a2de4ef1b4c08315511557f51b92988a49ccace6e6645626a6ec13f03fecf18681d427e03b288fa36aab7909de8c0443f14414fd63bbfc132180176d19886c78517ec2b63cce1dde1123a5c05904b2e52bcc4684681fe57a19b709d06bf9d12cb3bde83762ccdb26406f637ad003a9fd047c47a44576269eea7fd86c65ec1454c4d3167007678c683336f0c6e67aba92270bb386cca1ed103bb47daf051e81ac07c8c7630407c54ce15008c07577005c476a2038017050b87050cc2e82ebe40fba3e001c14b085eb24165d4f04d7493574fd105c276970ddf685ae477150c413d76533e87a0070dd1482ebb627747d105cc7c2c275b24d5c27bbb331ddc684aee7b80e7f00484c612843da00066c8ce55e3f014f51ae40da46d1f6a15bc992280ab46540db1efdb152581928e06ec37824aa7ee33a1dbdcd380161d7cdacb5d65a8be17ce937a2fd8464acac883e4386e82721d1411fd131d12fd1af4824ca9d8eb628449ca8e1448d2e1de593eb8874e94fc0d8c658293619b732338e613677f92b27dde7dc57e0458797cf20872f398bf14fb083b05bc86dc75ca7a331fcfcbd08628821861862aca34d335fb9d3a1a34517dd90d84efb2782190d821a6d4d781ee5f33986b74f81187e3a08f353fe7e7cbee51f27c777a246e3ec448dfe9c1ce572e3513a7edc769ce49c8148cce5f91c3adc92001d3b06e2ba218db1c57874f21662f2f8364f50ee84540dc3709e40646333f28c8756381b134f33bec28566e40e3626037be819c6599978aa0f7136e60d183b0e19a56fcfa08c5faed3d1f72251e732a1e5f09fc412638bb13dacd112db191c1039e7cf98f393afdcb968dc947194db0c377945dc9301656ca2dc11e96a70bf8c3f19fa5c20f2658480c83973b9bb9f914f4057ce73abc1d8741184f987fc56fa26bf6d97f1036e0b20a2c31e42083978954beec736bb2322d31dca6776a2466fef9ca801b7d2bb21ad46b989eb7434caed4bb189a9b7bda4a470b7a7f6a98900ee8081f16c2fa563f9c513ce87833832585eda1ad1230ea8e4216e5bb25ddcb6711b4e3c4d56859975334bc6c8182962ea9253c4542731de0eafbbe5cdc6c6c09edceba23177c2c1ec1027a63eaf874a608b72cce763633e9fcfaf544d6b6fbfd1df36a4c6ea08ce261eb3ed67db6cda9133222d129de2093e9e20c6235577558ff5c49496b71a89da6c242ae775f60677937539a79298ea9c7069d125cc12e76ecec0e34bee2ca778b29acddb664534c3569359711353360381fd625f9fe1c494c9feb57c86a46b06a9a81ca4a2cec4531970b7c119cdc6d66b5c56235115ba58016d0cacb13112e504dc6d355d2655998d5469db4d6fac4d49d7ada6b6ac88aab7c21cc7a4b34bc3dc0052d019a6610e002c60426719065fbc59fdccdf88276db9c78a4142df26e04e8a0eb79737b9d9d9c3787b91f8777b99cf38b82271f8a1f047dc7d287c2d6e38308edb363f11454388ad14988356c6c6f4c0b3b77e5aec200cfdac20032088b8c94a124fd5c81097d59199c408e9903342bf44e34b693b96161d734eb834e53210c85a0bda30066d2fd3da27fae33a9128eb4831e9cadea0b87e634ad6b3343e357e5215034b55766c634487c1695c1018d77e7113185dc3e1260f2c9f04851f837b0f05833bd26374ed19e62c871bc7c61cdd76e0fe618f8f715b4d3cd58bb8c016c6f6324575db6133119b15dba90d2723a46f564404c47c457afd565349dc66c3049cd9643532060258fbf667051900c1c6589998aaad78aa75f331ba267afd4c32713290c808e9da9685b4d0f6022f31de2eb90ef46da4c98fb617791b1353b0ebab0ec6ac76afc05bcdcd869361aeb2e2a96e56c414be4dd70d496facaec75cbd89a7fad8b862da50ccdb72bb97315295bd5ed6fa182b2351f524ce898ed4f6910fd80952db1418989a8ed96a5e4bfd5d02fe8054d59b7a8c47f26c36db155d0f71304fd7e80ee26c3b9d4b0d51ee4e2e38773f958eb79acd0a5bd380274e7d4503eeb259636d56633325e0cfe1b777f5667b4076530fd2611c460e0257a41359ddd1495988f6512ba60cf091646209a9b2c7c7f8f01067d375ccfeb5964d3db48f3eca41e835ad02d1387bc839a17528d4b9705874117e42e2edd6867083b2135a7f2ccef291798c036273d83f01fac31ffed0369b78f4bc9d41d7e7a0ebed0f625e4bdd6ccc56d35b4dd76fdb5663ed5643d291316412a9f00463a8ef49e0a7c51d62fa5da19f165eb0fa456eef79a187b532f5788c2b740093b3927908286775e4c24012b0f6889d9ec8aa62d9e400f9f91ef2f3d8670e7204cb3dee690e422f4f64550feb61128824bf78bade411644124ff597c320bcb1c15a8eb0c666daeb1dacb119765803ad38c1687107259d0aad30a72b64b2b2cfb0eba4aeafa5180883817a18f3bae85aff7422059888294e8ba75aa3e16bc87a2bacc11e17386bd604e42f06968035f0e6d6e00de426608d1146040177b0e6c6dafa1a6beb4925a992afa7873c516a219bae7fab2b559447a2ea312e95fe8eeec8b4dcc961f25631ca9ed294229e2a8f54d11c89a27487d4f5a524ad42e3a84e4e1554091c709ef0da60f2413f3fb310d303de8ac88afead56d3c75dcd2c64feaee2b7bf1512f0e7d783cc5fb831713d085cd9fba82b1a04aea8a43bf1c4138fb87a6c0e427fdfeac399e4ad8febf737e2f441bf99e43198959531c9fc561b27649ec6c95d3912550f0798964e14de70138528501dd992aafac921910525b0563447aab420350541a0016b45e51748c0dae7ed31987cf5c41316134f558aeb70353993a45c0cb6b2d79223e0ab75e56801d31da9d2b2493e085c6987ab18a9a22c2a5593e2c804b9302b7b71d8125854125314e7d70adc5156d75316c5b1dc1139e370d3f4eaa902a6068b61f5f45c5f6811079aae7255a1d01d5684d4ddd543935096c459c0dd9553d3f534d31a89aa578e545d3d17cb0de0eeeac110621876c96dd877d0913b40c7edc5e400fa791ff433f774bd8f49798880bb09d358f4b43a7206e80c6e2f4fc64f0c818c0622a3638602c61c37fc800e44d043d79984aeef507acee4e4c82be7cac950c02be7ea792d35eae15d3dcf467602dc82d2d5b3e974dd9a74ad2e004257ec075db11c74c566d0156b4157ec045d9f71979278aa74e7b55c381c14b06d11dc9584b843bf8d89c78259997cd8dfdf2cc4b4b2f7ad6e4402b4e41e1679c8a2dff612bb88a78ac55c3d12556f0da63c74e7eac11d45d2f514098474870b1cbba3f0eab9bea8c76ab02ba2eab141a61e2bd285155d293645d70e83e98acd74d579c34e635674c562ba1e46b913531dad2287761153f0095d6fbaa35e74ed2be75a92454e007ce8b8ed80343027e05a724f8b238ca1df3601fb18b8ca00be1161e4140fc2373faf6f107077f560311293e97af54879f5743dad82d648d57c3db5912a7a9a96f5a5904d1c2289c0c9f920de6783d4315a9604a629b07ca8a4ac92d6c124764cd18c000010009313002038180c880583f1704422e790de0f14000da1b05078521b46394c216410218480000c000000001000000068dc5f0be7d9c165952132ece6cf6c51687c059a64928acd874c2224f9e9efb6550d0791b94d910a5915c4b2ab46b316839f469aa81d13e6a7e0c5a24e86bac3aadf993d6f561df7b5e42be2b839819bd27dbdcb538f78d93c281bf00715ea954dc92c04d44e3748676b1f61b8a3fc2f8a0aebaf2895bac1e6405ece8490b5343ded7829de5efc80fbad04aa70d009d423e7bbd7d43af39433425cf7be4d211b87026dd9695853c5bf436913dfdc86bf4cf77f1a12b02e7d2d04fcc611b491fd19503cbe377297b04f72d15b4312261ee1e5d2c3025a3da53116b623136ec4164f469337ba63909135ffb22e58ae26ef7c8e25e028084f201ca759e6c70e907381f16b5898080e4e366e029b80ff68c1d15d1025ccb898f12b09a20c774c93ec8efee7a76b60e64f5a5c1db84caaecf9f9e83e3fa3a0f08ae6b778c426401079d8ea5f6bd6dacd81a51994392cf42888aca23f3cb7727801843fafe914bb46d95977ba9564709185fa08d4f0aca4309956d1fdfacf42f40f1496f906f91f6ace29bca78d0b8a1eb7c4166b5a8a346850f33209f10836b2acc1cc23ec97b9cd9919072c81586952f1c7f5b7068aa889ec5a432fb6b051f5c7b652727d079d2399f733ba2704bc3322fda452df3cb4e6e5b913f79ed3fadc920a6238ab9c4fa7d04274600c8e7c7eab33992d0072bce74a692d51e328272f22d560726d9773ed2237dd9bd3ad83710c21cfa53e528d3e551d72cbff59ee90c58f3d51b5c14118abc4d07999e82c35eed3f20ad2e594ddf5d3f93ae96edbcbadb3844149dc35d8a603a56f71b0e10494d6bb5b6ba2a0dca092ac9b2fc36521ac716510ebc9c16601a62a13e91a1c4945cbccef65c1a11a540cab23c5c39af49afee5c2733ada46d4cd3b8f7874eb62ae52ef80830f99a89acd2d8fc8d2610e8fc25c759546fcc6fbd7cd359c9ab09f097147a42be13fd982bb14b508a15124489678eb38b3ad8945da1295a886334e4de870de8212a20cc47026492a3da4e34b7366d34ed3380d3855c9113a3464b45c7b6457a895a206e36bf98c8e1d97fc530ea5cc2320644a810216d5d9dfbeee75b8e39b9ea55f20f8d90d4cccdc59f14d5ed07dd0819d257434414b3d68e61d3b71ff611b7a1e296f6f3c23186710867fb66c6938043ca21484582de2a410159991e819f56305c10a2f9887261cd641dc6a34e1b0ab81b2a913c7cb58f661d8114622d005cceac09219a3ae5940764a84d0d437ffcbfa40baa49501746923da101248104dfc7a243284fd2ef54cc7b4c2dd38f68746e199533cce4af748b0bf2ffd12b150b2fa53e79dfd0996d8f53a9180e06e8c9f7a71ba381bbc28d1c6f131544fc0610f281fa2b099830ee01524d069ab1a4d4418ba05e17c0413b08c6e5e3950000c35a8ea0c6a99a69f07fc9baff1d057d0590eeddfa9a5592ab9b4dd17ea955bad2773456e335ff9e71f78315242033b561a42bf01df6b1f1dd15524c2257d03cfc91f67013dbfd7af604455dc1a3493d548d1a7b60105d36b099f1e21e02e7bcdad425e6c296b85f9e899189f627a1a2e21dab9eae67dc9d7d59413499f4744d94d449d82293611803626a7416c0a2b5873ffd3a8168f0289091bd076c6a98a76791f3cebb63a42530fd8d060e2ef6033c20125c783cb07a42007f43b7d22a19a00e03795442ef811114148eaa1a55bb6e5f5e107a230583394107c40ffb237090fed66dd72e003ac251c611b2c49e15bec509e870d4aa5b188005923f8e13c5dca38aa2030e02de55a110dcf36d659f69c6d71e311e0c177581c6133a54d1db50180adde5f0a2373134e382037e537c0dba01e091bd3ac0e2e0b062f5581b807bc4518a45a528e69c1e00e68856e9602d13dd8f0669daaa2b883ac9b4e3068f735264769d8f3f310d3c4a29dbfbb4304007bf61abba6cb06b4f6e837390e6f7274cdec1042bb0d11ccd25b39f5b706b313c2fe9ca059876f2680f9cbc3fcb7468a53443eb0fa9542610b909cff60eb7fa4fa0a953c27a0478801ccd7b67ea7e11947794233ac6c34c555c7f39c72dcb10e12324bfa8408d6ba22780abb05d64a3fa7f611d3b9701ac2b26a34b5ac48bc25ed461e912dc23d173911108b59f895690bd42ee732b7487e9e38de7c26ebce9afe53f252470ed34eb24c54f37191fe21351bfdc70259d75cabec346bab5dbd9e8958454cd8db946c138b3f81fe27525a990ae83f0bb51dd55032433c53cafccb4df0a1ba5db6d89c768d208014318961270dcb3f59c39f10bba13107d392f0a20f8ca95d4f53fb181d36913d96ec1eec4b3c38005addd20e837a7fe5672f46853a496d552da91ebe412535d4f9cce549875fe3b8ddd307797c3d7cf26b3b1b343a865c3ca690f2dc54821dda9c5b45c1a74ab37decd0d31d522ee4a2e980aa7b606a92a610a4db7bd428c003e397d46c0b77a3499ad82bfceae9020826f87365cbdf0f226b8cb3f199d94ac1ae686ed9938b6bcb772218176dad9098e5ae31574cc2df59b87311f4e192930f64ee70ba29f9b53db929dd9c4ee94953e9695f4a8a04c49e39237b6fe64b585fb8749856c544c7a746957369bb0e926c8804df19174cb0f07d4fac17202fefb341dc98595937d3c8ed91b9cc88aaba78910f089d86140241dcf47548e671e492810f05d0c5e497435b32fd7e58a81fed2dc25fea76391eb4c3b90b9128049aeb049c3e008da36a1238d219b88e11aa0ae16a984d6c48442cf8079479dd05927a371061052ac9ea3b583e24e2c25a57f97b5b211540c9e1bca826df26ad94aecfd1c378575f92f93cfa1357f4d27732c081694a1aab8973a59e162765bf038fab47db8710076f0fcb800c1ca73eba20ca60eaa333ba9093e9a0998166da13595c6f8dc7a036ad15b7c95e44d609be36b47171ff4c7b402cd665af60923ac9d434560a4d85a3ad36d735de1b5f5de803efc3c8dd61dc15a6cfa7ca33a694f696b8998e29ef3bb8001912ee533bf7ab1abdb45ff62677f4b0df5c8ee762b6276c7501ef7cfcd6ce5991c71a457ef6a6d532e6dd1a0b9da752e10b82b94f3f0b286cc5117e79387d669718c680acac16cf980e72a4acb3cc5126ccef81c52c5a65d8dfcefb96e4435e2876993138a1ad524c11290c7188d17c9ecec1d8560defb610c61d98170df6c985d46f6d8b277cbbaf82b985d09634f9878d880ba1b51c73024949b13292087009d5cef207988b7007ff0aa22687331b29a70b2a3cd87b6328882615be1c1f8645611d1d6f3277b2738fe983115c1ba1a3b953d699047499e63cef003ae4b8f544cf9e170a8650c6044fc4a53ca9514342a5c49664c48a5bb9692e7f0f2bc8c4015c1ecf81c96a7580f584a01d5fdaf2a359fb0237fe7a67fd2b4a6e5f1c736a9bd99ba1f67c094bc8dd3e01cf0bc5cf3870036d89ccb8d3896a6a2f6a9fc21bb2de88254a2875a60fdd6b4019bf8356572d2c48bd12894e6c061945be86e76386a82eb07c26762ab971cddd7f49fd538a5853762dacb6a3be9dc237798af886e8134bc72cf0d9431950f7b9d6ecf85d991ca9294e416223bd81710a74d40f5dd6760b61395a7639be3381f93f0c7b19f6ac33f88ce73195b8a0c6aaef8f1e57d8d494002adb7c594728a4f843289d1ee09d28163584f2ef9ff8fc1a9c3399c2e64c0639c3ffe965716fc827188574e250cc1f0386b3e60998b06d845dbd21934c6fc1180c7497ccc6b3932b7215fab7926b893a505d5153537f67ab9a6daa009019a89c6e9599dbb26fd7a2f70020ad35911c039e513a2d1ea07c20a43c848cc283a0a6995146d5634daf3259e2adcbb4137e85209b8a4b263a04e80cdc0d5197cfc84e591914c41902c444d59fe9e7dfc5e389a6eaba36e34fb8ca9cd4653279e9ad901b34ab04ecff49e2c0c94c598504db937e948f14fece61f7ca46cf22d4d77b0b4096bfd9f54d3c9dc92879277644f6719ee5a4f3252b9b365e1ee4cb1239ebd11295de7721713f9e9a546d9dce3ecd96a2da0b02a5132140a73b38a450b240478c040520ba594a2eeac9d5e7ba523092cca4dc6f1dcff5fbbc429d54d656096a636ddb2f2003fcdbc4a4939abfbb713c7d8b4f66bf9feb3a500538a91dfbd6c64f06ceffc047b4d7033480178cc6de179a90c1eadb078e39de9e6333ab46741ff0358d784e49415c67321477e478604bf0125b34a9041e435af5762de4e63d090601c325969e75e58c6d0f8b970c20cb58a9578b6d899b5ce8e9d5e4fa8fd73a1dc3fcba9c0b2fb77de53280f63910582c8b695e78f0328f009b41dcd21681d8e636a5eb3941f9acb42da12ae61ef4e43863aa81b09579cab79540562338718a2f57216bfc3d14bbd3bc95da24afbe19cb2d4943489f434901798e0795c9e89885076981a8b047214b6218e6712707281746a20a9f9bc426da6d2f9c700a65e3a266c786464c84af1f4256c5f2e72a3ce1086d4bc0693a8d02c2d7a935a37fd8ab63faa2259384862386f7c44c7c317ae49f9084ae8a078764d932f886ebc93eb069ea7dc0f4c2989a19b9f8a5b15c4cca85fa03c4383c6c866676b25722dd298f37d161342390974ac3a1af89a1522ea82e3cc8d870fe4b4e9ec8b8792c2cb746303a038fd698ccb06f37f5f0c479a001b984deb048214a9a8dc354a8e0eea5f56c856a6f9d59e94249c8bc93016d149af9aac15e9288384fbe91a61860b3d24ab1651d5553d0f4bd51c2e9927cb9205441759f9ed911bf8654d2684bdc564f1344349d2bd557bef6d5b70a9a26fdbf908385b25296c0570f53adf52d49848c915d8cfd4183aa0e238de5d9130d8d2bd3158a24676d718751217679690f0dd6efe4e0777b1ae31ad1585fcbdabe78fb977959e81c87bf6a9871737ff13c619ff66bdbb058f702c117e01d30de85b089095dbb3de4d04dea4ca093c1dac104d1b5b6e7455c79bf1269de116e886a2f016b4e32f9a02b94e04fcaf3a8bd55e3f1fbffeee7966e562ec064ca644c41a2d67f17468622281efab470ba3b8c1a68f48cf82d5433ee58e8b4c0f2e9e26b81d5f251b42c45476e4ba40b50b48353ab0a459b00c608d46ba08e435c06a3cc83e06f6530e7e1ecfbad2fb781ab89331f06685799ed1c22ef16686efef6459b8ce2262d8281843857172eda7fc21f83e98bd6a021813eefdbddae5a8f5212d1a0bb6f77fdbec6bb686568992e3ed021689a716133d6962a49312c9bc10877b48b0f890bdcf496b57dad9d57b912c99e6808e35c234e0b688bbae356c45f535c80f178fefa19707a0e775143a9be5445e6469567faa4f92f9b1340d05d9c96c20119f51493c4c243322abf1f02a07a646a9ef82c4d75d7e9f2aa5f2c1b01d77eba8a3d314eb9d89a217c5018918a5acd5f040d9405f638ef58cf876516d7bd59a1b32eace7faa3000478dbc90e565e229e5e69c7a2ea118705ca1c03fc946250c5c57190f02dd259d5e2b81920a7e6a0725173877633ac4be4269fa7ef58f44af9a2c220d651e38c21cfaa9d43af6243b572114360d13831c4d0bfc5e70bc78a30f3dbe1cfb18e0ce06a539b83bd0b244852790e2ea9f6755dcb2f00f7b92b6cea704cb327c86a0c2be433e70ccb3c87e48e4cac5f3d71022d9c77556f3df6bedaa447c34d7a43f6eb202670e90ab2614659d113c76459b7180cd8439736b2902d68697bb899023d04031de6cde2ae622e8ad53579bae6dceb07841cf6263b0ce856524359f2255f542474bf3ef3a0efa516b31732e8668ee5e986696e944967d8c229ede95af0f2e285243174f0d7f786d341dde24559047960a773984e55663e9c80d3aad25f23d66334745940c87269160e663adc5a63c82835cafcb2d7f03eccc3f983b76b7688f637a33c8258dfd9f26d2ce63a9dfde2e9883a444729e5e57b5d95872171ab25f3ddb573e4ca905c0277b435e4abb899ca08d86c26e7390eac148e48f656dc04b8e51d71b355ab284436e67b248904163ca70f426c52c0568ee6e5bc33bcb343a5befcc6b09461b0781ec1a37531b021dbe120bf37499a88ff2914f1da630b5b159baf3c9661365a64cb855138ca2b889d35358dbc6f03207ba03d4310b1c9ba023d37408f521273deb2dc2c7e6c8ab1a66d927d66eb3882f0f0ef05328cafc2d40113ddd57336329a76ad6b6a919ba5e8ead973d0c7e361ea821a09487422e1169511b03c29a46769bc6dd5ba8c3ff8ecd05543022188a2d9bf5707f20735dd489a21f256399f45b32a13b651666c975bb492e71650b69825a78c783a7b21cc0c392b1efea4b3cf02c7589d4ba106b769003ac862860a1ac939380fd4610f895e0790e5e2de68bf5b648ce1638c78c81b29386207767f656212d0b2ea59b620388dec810ba1f296dc5da87da057f8e313d0450da11699ba8709a925119cb21ed85596569c0b1a518f648a1fa30ae906879338c6242cad4cdc8ad7d777083ea520c5c94b7e778e6131e2bda4e662a923f713a913121844bb0c6f74be59dfa533a3e93b08122a728e58ad70871eccfe1587448ffa946009f234575f570e2d00cbfb034d4d9b7633f285c8bff275be0b84ab764f506caea4e069f514ce35695d1b03d6003ac443bbfeda3dc89a72f10fff6a96304e984f3888babd72fab1d809c472a2f6d598cd0b3f1114277251468b442567563d2a69226385412f68f80eb609da1baaaa0600343376cc31386797af988b66e1b808a564584664fa4dc053772ade3946e43441c4b13403525a737492d7a5c7169385842e608cc66547fb0bc0f8fbf8177185c5ad446c2f1a21dfa9d43514d528f32ae85a2bdc101f59ef8db91855001069470b073743678b23ad8c3deb2b32b178e4f72e929a712c0741b8889842374640fc0adac86e67c37971544bbd9e5362d1cbb16b621954092b29ab296cb1b35220758c6c5803c15716da1e48ff5caf44e7467f357ed98396faa21888012466074856a47c16b27cb80bf95b017db16d85c4c0b94fa4ccccc0e9f2fe80fcb9225f31d2221a16440b90483e39ed8bd6bc95276f4d5c330ae749b248ac5aeab116282a82178d518571dc184888f2a1a8817847c25f0f206828a8e0c8db16b0a278fc39eccb9249fca051e8666bee105ce8cda88506845528162b1364085d51b007a8b4f1f26447390aba486cc61000d17c01d7298ccd3b37e9aa873a3ed0b76e2740a38300b179abaf9c23228599cf5aa2aac73c8cc3ae143db990c55acfcb1d1f384ab5d710b2464e4a1eb74dd8c7770659fbe50bd0540b270ead5c20bb136995e8cf9d9da15292e0d033072f7981001459dacdbaf63c0d9f82bca3b64a6a400647efdef67a4eb1d430cb613f00053a584a5941f4cb473999c05ee7e55e0f5d85adac6a4b88f7d7528593c82c8b76cf6657a5b7ae6a23904358d735e9610947d42ad8c6842c36575f1c7792c9e36b66a7529278355b105714a31afb210b3ac4e7783346219d45de23560c173d8907f6838d3fa52ee8f93510bfebb59880d1679a6e8cbea3bda388e57676fbcd4a8da8ba888a897621f758a02631a36041086844da64b73b8ee254856b87844e65f46382d4ab44fc8fee34356581cbb49d9b52e2d39dbaf653ddb1493e4a54c4812c575ea9db93663cb44cedea65ba72a9554bfc373e470ddca12d08366485f4f178ca10632aa3efae107346aaa897d7b2cdddec60d2918dff961c1cb93276c44d37630b612bb1baff0e586af6f184ebb2f399ac62ed8193674821fe1283428c3508a90cbad1baf9ef5dfd87d844c6f38d634108812712e39bc3c0b2418fb3979fc341750e5423b0650eb990314f652049a65320829b2290673f8aadf301e23de0e28688fc68b8170e7383f051441cab6d18e0d04a7bbb15d01d58cb1072965ced6d1b253666a79eb9d8c3ae058076884b88714891433d254e1b18fa14ee46c066cf036cc4340da24f0ae7e04870aa77e430f7c54c7a7895f5d8a34bfda28966423163a6fa5869506a08018bc673a0538dc3327267c8e68cdbfe88dd300cb0c071988557e52214138b0f479028adb66e44d20de7b7a2ffa6c2333b925a094bf2c965a443015c166713cd14515d168a085dd08c8d6048c03576b68ed5e368cb0c523b95afac2013856c9d69b234532ab050e9b5ea3cd93df2c51b26dc055b2aef8a885155895a9675a50a42534f40dd23a00cba9c42074f09b9b107fb45389aabd388b00e149035f81cfabee10f77b27b0973245d778b45f3c94f00c27a0e598791a73f448a270254308488c16000da4512c13bed0b59c571d048b09cd7c0125100c332a5d9672d810a2b3647cc0882aecc4ca8d0dd72294207e3753388e530e408c206ce053b4b754f0e68b856df8a4c894505f636457283bae13b3bf44c7ba6412a10bc52a468cd50b3f8ccd5c2bdae1863e0f71dc3dab48d51a4a4b682cc55eb82656662022ce23049297821381975d99f8b06653abb1282ba680619624eb97a7628e3de8e247170e4f59bb0fccb1f9c755430a06bd3f5af59ebc40cda1989998306ec2506b15cdbb6bdbc77e9988b728b01aad31200b9006ba0c5dc52678fa215b84156cdc5e00833ab47b40a0a479cf1834e5293f4b6c88913b39405f3a11b468504241a7108fc794bcdeb9e5443b4284e4523ad0f8cdeb72ac36e83392f225e9c486c6b5f73b3b49777f9549da1b273e1ea6dcda91814858ff8af98bcfb2a5ea9e3d7728e00df2a767cc40143f3443910cef1b358dd7d63b07ad767ef2b1463a5cec97e1db30c9301638b76794baf024e34aedf9a0018b464b40318e182ee2d0c753539425b5cbc17572aca33b8232850a6a108c609c15f38f10ea9085f90f32df538797542c6bb786b95aa39008dfe3a68273f997d12af8188fc670e819c8129cbff5a153a283dacdc2546f1034c3e1cb1ceed704815c1518e0a171f0a77f410636bb8afc1cad1efac7d38f1ee018a6ce79553e70c8c487e26c4b7f4aafc0594963a202adbe9fee65f1a070fce4ab463a7ec2e0c200a020f30a1bde69d755da863d990814eac658e6d4f13f45847eee989894ba622c423095bb32c49f6a389fdd15f0b78277d39873b8ef18f252f33140f1c5f2dafcb9f8e6800c6dfedf40fe6a59d5d0fcfb163827bcbc2f69194d4c589ca4d29e1675dda36a471d1ab1c56e731218fcadcaf60757bed61d80c18c445a640bc25f6cd3d43cdac0d8058734ea5e49d54caab4e0d8d87ac775d475911b1b2a1c633663bc34558fcba56885f88934dee716edc828cdfc3b5b43d3f8e3931e6eef482fa08571390984e8e0445dd13524c29a2d896768592b1191ac96b90a6c583d2ad34e37f507546e4b8ab997a30c4bb62fd23e64843dcd881f269dc5045d5e0e41366e37d349fd74c116e6339d5f0bcec2d4996a3213a424867bef53e1ad44b3b6da050026b339013534956ead9f5aa066166beefa09b8d289fe1245965af42b956e60f15a8165d0cf1b57aa77b85b50ac2419ca04a3c812ea82bea210804ee8bba2de5b0396a51c5100e9afef1a09757d93a08f8a6a3f005d4845afe690e6dab742f946a50856de390eb2ea2d1c552f4c35a2d6dfb618c7a5998bfeaceeb6639174024c4899a4f1a28cd00048813ea43dd41eeafc3f8ce22e899e49040908651444e669db02bb14fa77267089759921e49e81550a548e0f8bbc6019b0f70520e83076280ad647902492ee9d0b491926104ec6be484f3a991845aa43ef343738bdec67af2090f02425f5aab1c2909891f801c086e4df6eb45876d755c78a36fb88ae0cef2c824c2397a4ada1b5d979a0baa3c7720aa4414a67f84a3aff413f0545056be52dfe9b44f1d038e01c72ee0d29ed3b6a4efb71575e40d37bdc1034d6fd59b9fdf266d107e400de6ee0def8bb2c57bc3b093befb50b2f8d8871479ca9706631ca0ee0ecef051b6610890a1198f43c3c85b904328ab20b1ca4861361958abfe084c16876972a235a4305d9d95a55e9d1595f5438bebf1e812662dd3fe4f5cd4c7dabf1ed40500158d8a785b86963f436e1bf1345a98f68817e6aea52e936f0034c1641c06f1341854e16f64bb8de11b793860f634d32449df063816d73ce00c701ed77c21031c2bcad73a137723d37c04787470082f3b85d75b8fd77f4c5156ed23bed0b6a596d3deecff5ff4fd5c905ab29fe0a0954a041f4b1e2d77e4da2ab5e89c51aab7bbc9acb1a80ddebc46a0773b4e975cbcc249cee036036bbf2f9001bd534c1063cde71d8cf98a8e8cc12223a64dbb17370dc5aa720a2e409fef77197f38d752d71500921a6e386b0318e9ec46a0282bfb0e47fc54a8f1feb7ca2b74f88ca1ae5ed3de634b87af6965d80ce4f70d5a6a9ca04765e90cd5b79265303cb9adf64508f00ea576bdd7c141b2b6c5388047bcc610c77cd30ff3865274331e367a938cef43a8b3293b490cea0f111b78ca52e8c73afb57c895d54a527822249107a346f6ae2d3aaa7e121e88e839d9d07942c6a3082e0411434c473f4e98ce2323658a5f16e6ea306b741fef66c755d0786d1e892537cb565871b08ecffd5d7152ae989517ea456829bde74eb8ed0c375fc36fe384c33444e44f371cd8fe6bc0b2848e212d013bcc584157935cfec77c1b343439e3f341ba49e785b4d132bfbadfcd06e488a35479f44a67433776ee4c4c609db286ab8a4c223bc43f57a09d5ca89c0c951bc1f68fb3c5b1afa0265a4a4b5a6600334d1d212bf7da4330cada9877d170e179da647c6913428b88a09c54c6590070afc595d20248c8ad356c9152da0b0e378c6b2818c677f9c40b023d8a2b3a3165f5393393d8bcf56a202a56e84da1230344b74e17797f0b9187c57155e4f7fe787b2ade2a7080de1e8e107cc48f43dba5486c9bf215d4bc6bef1bf42806e356e78a3608986606d39eaa6d2b46baec69b81981813f6b8a6558a089131677df99c39f7dab38fc50fbd4db2415e151f8081662bddace975be16201e7135b068b3462d90f1b2ea238f591e1c02628c00e4f555938dd6f17c11d763e743959de67e212dd822580f6167e043eb747f75ef4a28782ec757c2ed1e8d45f4fcdaaa1f066d173cd5ec5e54c04d2f86e1515f1dd33ae90975d9429b88e614f7a3b8921a7371c5abb1b182b1b71636635a6a785a92903e6977d45628ab9b83f791d7d2926e9266e1d153dee9dace2a51eae2b8a11ca27501b6289182c004cb4efe638b5fd743b657842b5cf6013012c957c65291fb29daf2c3653d33326412baf703060f049ddfde0800441ae7ba1f3f2af976227938436288bb38ad7d6b30f5a928559c3012c8b6c5e880e90d625ec95256a81f42ac496b82530781442b9fdf3a1d44605d0157bb188d1c796f2419ea9b3a072b0463448ed81a7ca51e6cf12c2b75d8f03eab2ef507c834299c45d22b789fcaceb9d25a98837183d6388ae0e8318f2c6c411443959dc525560f6566dcae2e6630ba3d1b712bd20e57c8c4a334e596cb0bda22d20c0c5ca4a78163fc57a0dfaf6757558e3adcf3fcec82c9ec407714860370cb3226ae88edcff94d1ba9110343f32b9ca603066334e3fa6083fd4a8534fece09f3e2cffbad73c37e83f3e54fe7aafc5a6e048fbbe8eed9ee7703d87ae22ace83bf7a04ff1e9a1ca4c38e655a5a7f526aae6507f5bcf0a871bf4d17fd291772ea2280c066cef9426b2dd1cfb77a4b024e0e401969c5e871a5c2ec117808294f3957fb9599e4aff80057f162d0766cc967aa0d528fc923fe41c399e7b354aea0625aefb53c17e0f54c452c1ca7d8acc184e6ea40457a7c362184fefbeb997b3dc291327e9d02c37a53c5c89364523198ca33b7b490fa29d323ebf0e8c4023125b4fb03c8337669c0d6e0b58c4e6f7cdf3e8a208674ab9e2c996d6abda27b8121fb3ddf0b304e93e636f13b455e611b88434410b6d10f75aed4ee38efcd0ed9554f7a586be78168347bf5e29bc155030d09f8dc931416fb3a091207802ddb626347d420fdedc25806c6486011d31e94c317d2e63a440c85241fe6450d791d90541cae1dab32a50970223778f9223f1d21da63b582244877b56516915791ea368fa319deaeae284d5049b33177b2e70a8ea87a6982dfa86a266589ba22cb240abc222f1d3b54de5f76167a5116f3cbe472f9a3f19bfaa08f422814f9a8c99ebb41c9103c5ef706cf09960ecb138386985634878924ae6f515ce55cd03a5d844ab2108298c9acfb23dfbe05c3fbc316237a5894730b947cf4430f3ad6e7e6da67014715d7b27d41a3cd0b259226003263aacbba144aecb5a8ac5348cc30aa38ac85d6860e214153740ad43ad4682ba22a074a8187f8eebc0aa3fb1832a774c79b6fec5e16755ed0a8456e871b90408b48ac5460c5b9d3835cc9cb009ca320b562e3aadbee0ef1f0fff43dfe200fba3839fb4f0a4ac6dbb90a2cdc1fa91d277aa0002c7dae70fb5e42322ffd3f1270bc8bc2d05e53e4b80b59056dfc20db121c602471f6cc301b98587abe28cd8d4050dfca770bc133d63585bcc5eeeb39c2e816e35d0c0882e7d874b8490be6620c9114889d254f4ea18d2a7d4b033bbfc8ccc9bef13020bbe7d46a4089eac6e32b4085e27bb3398e4546165b7c69b38a2083ff414732c4d4f310f92b8491a6ff1082d0bd1a48f11a3465fae90d7cc65f722c742f2147593a50ea7e6c15e45c0c1d925c133e05410e42d9e6aa9dcce0eaebde775b8f0180315c14008efe00a0df08ad4cd35ae5c90d327f83ccdc32eada8e34cdd4bf323b65ed7cda416367e7aa29b0cb556f36ab7abcbdca556c8010d9d4ac4eb39934459aec424e97b2bbeeab24ea65fe54aa9f6f40bc9c2e6986da943b03766b1114ece46903e04146abd9d3c5b8f412c11b0a9fdc53c2bafee353596c5fc56d8ceb11706bc40e0d6043fb204793dc41cc596b56e4e336c524c1b5bc98f5b6df98a3a0ac872b59f0e6141b1a9e198954d6adea1f25614646e54e117041b84eb4b51d32f35e37e3f44765de538340608cb83035b0ad800b0881c11af6d254f7c52b83ac450af2703de1b59d67d02af83657617375f230424011cf4462beb209c8efdfd647b7f3eb453df84e17ea930a4201ccc19dc6c761a9510af8ca42c686ec0a115db810409e4c94bbfe9e95e0464cd350ed80f75a7ddf8680f0052286380fe164faffddbe925d0520e4ea5599339ba63a8422a575638663e48b4655933a96e06481d1ac706c45c8d3bef1cba63035bf4ce5f0be620fa8722056cb6b4a4e4cf59e210b4d9b8fb3929c159b2e5c503f73487fe1cb12a50d417e58a146a7ce9dca636ee0a96b340835cfc98f32b681e1c25d79735a7755e335cfed912b3e608c28ec71a1010c4a985f103bd6a600b52778819808376d5e1edef917a830d043eff7eb8b2e3ea2e10713e88988a90bfb4bc53bee22cc50d70df99daf79550d8fc35fa259cf31d4df82cf1d01db105cc179a8a4e8bbfcd8cb7dc03ec2ba9a751e78699286588d99423913581015d4068f951acd82e5e9e2d3fc9a6844bb454751ebd166c1c12b53661b7c2dabd1256f8d470e43b51fbe051448cc68caf8f1ba3020b3d8b6c1085807d75cc102b6864100ca0876fd27c8e15ff86f657a488ba6f54918ce595fe66c17953a6200921893cb99eff7f5af9b5f565a3ebd5fb2299c0e7c21d817c60829b7f8659e55fc45ac150068f2f89cebbecd48ddf4df2fc965e7874d88f776a0a95207403494218180870e2c364691e7aaaca82a20232dcc085e85ed7069b02916a948bd0bd6f951f1de0679fac1e3ed3002423e50b9cc699d0e11e405cf1708488b820e71a0f59290f1c85d846f32806227820a196032662dcd3259e950df0fef4b9e9346cd73d313062c4a5b2bd57c2fd8f3fed7d99240e4f937999a3c0eacdf6b9016380cd02f5b2d671fc1423d80c843a599a201054a2b663be0e6cf705ef8cdf03038b60ff4643dbe32cd7eb5e7ce3663aba6ae405be178791ad367be6dad0dc45b99c2c6ef5ddaef611852aee2a1ce609a5d12be607531ee4fe86f3c4968776c4f2cacb22a8d4953d9c41e686b417f1814a63b2b01e717f05b0b4347aacaed750d87197fdaaabc1798b0a610881f991c29a68c3c0a88cd2c9d10b404652c3bc5561f893c82c7aa35b14b14e92f30465c13ca2e0cb0e9a32816a78cbeea436a5955d4215c220b6349d784cf87e71aecba40299c0b5ee7ed36eb1532138d7a9d0616a8a2c14458042e1c25103284af69486728465d92eef01a48acc827c5da9df7a72346d498274c7efcc73c4b95f6e11e3100ffc26abfa850e4c412a9b94b7ef16242b82e344698df0dd2899888df07d21bdf65c422e7b9a8d25ad71cdda5b0b281d073a331b035109b2c96ed8b116819249e9417fa436a933b99a395236226e309b99b3a13988c923886a2d10afe18b9b7ac03d12c5ea097850c2a4c9b0f44c0b8b1f0fee6ed13744ca2b8b9cfbd9c87e7e8c21c51396b47365ac75554ae9df2096ec9fc41a52b1cac23622ad6f6262e090a01551b31ff5b0900169f6e2d2a3e73079153f401da597b02e5cd900a945411ea595180a6eb5a264fb5b14fe0556a402eec283e3bd650e502e085c254cc386bf79ec18d7f4afd616d7f0eaad1fc21a9846dbc92c195e5819da9166b6f3a513e8f21c50523620a0c9f738b323d23424eb6526aa259f1a8d03967c6d2688f4c655a0afb0b4e94049f551ec3df8cd6bc9e687493014290247daf4215e0937be1bab8896e1a37e24ae0bf1ae5cdf3c4c34b44e62e2c5be1332e56088a213137712d6ac805f8e4f1ca65a1234bf1cab78a62829e87e38ae384d570668fd384e719ab41c687c74bc6234b54cd0fb625cc5346599a0fa6d1c626ada1241dbaf4a2a56457298bffbc43d063a3990a980452153707e0f84624438824cddf77c66cbd3372c486db2f16b345ad10dca1d6fe0154f001eb0e83bb1f3f55de592a05f2ba62502740d966c7d89a64ec862f0b68e1960a8a8ab0cbef3f4cbd23bc296200d4fbe5527f318376117c11edcbe82324180aa30f072a127d01aca40775d77dc17aad0409bc1fa1dc735793622a1d6c21820d3e2e86acbd03625a35a601c554807a161c6833c5b2a3eee02bf8b16509d3f2186936163971a48a85202ead72148ffb69003740f71a1c15e5b9ba66299b558524d5429c823d1845f263a19d4a44c8b6b6344760e8b35d3346f6c9b26f2f2e29ef9b50b661fe22382a61af7bfdbe5623ac9dcf71e7c2d08654741125ffbdc83639523587cc27366f477bd334e2596e7b486ec0417ca43d953fe18b7a8d9e13b1c428634034ac57464cc699f3adc1fbd9645a7dd2d61269e9a05df6640a218d09d449109dd6a8c4c76823f2303387196bcd53aa4b434c9e9709152864bf6a0efd3f71a7090d811e0963e5b262071171bc1b93640ed2c6e847c49f2d20767f6cb3fced8a815e3ec7d6b2dafb83f7c29125b6cb2c680302bbabd2076cdeb5ef428d5991f91f61975b8d29cdbcedc9ae14793a90a35c74be952b134a6103411f8bb38cad6c58b4ffbdca3004b6f3c6693d54cadb92bc0b14d58aba5c0b50e40aca10e878171c8bab09a0791f69efd6c8de118fa29e5c64b4a322e0bda3a5e5f4e11344fb3ec500738eba6842e00d133aaf72a418f5ecb08604a8778d1ea22483096cf2df6af372785daa220cb7848b132ac2edd96b3780feeac0961f42371487cdd12831bec53f527ce34fb30de7890c43f425b4e0bd13e510a2efe8e9dd7a380296d55c65d9955cbafcabd7bf49148b5a74d24e500c757e9a930dae31efb8b2d312ea851174240ae5d0d50c812017699c41f33b86e468f9f69b51ae31e892252515b39d57c67df510cc2f06708d001b803c3d717d945c7923b941d8b4e3b3dd9a484183d6df4efa7c7f5fa51c5857609f646c7d9b8fb12c64b33a21f83d7a94a0e4a36550ea194d8ecacc09a8de30c556c1f303a4867d83cc4ff3c1e20a206ec8e9d2edc5708c1a647c2bdad13cdf6c740f4b03f803d1a87c430f278a20fdaa741d0b6fe14d0f4d3e06ee6e6b3d3dc44b7834f8cbe3cfa9f90acc93ba1bba0e98d5f7a47ca9d36723466ad71f0db00030440b4b642e19094f44cd1222a0caab1a1983a3b622c780861234db6c612f4fdd24d651d52ff527eab5e49f8a784bedc5bc276fe2fbb3006bad604a04f2486882eb97a0900c697dc0fc5d2e47fdc23d5fc1fffda1b6f655f116df35162272d8781ae26604f8085f1d1391e520ecefb182cfcf0113271c86f46220dce4c35b8dc329665b7ac7f185d281adbb9e911f26028d616db1d722218dce5429d14205e1e5cb650828de6b91f0498edf7eac04515219cda945994271846c40524d86f03fb2b90a60056a1acb501b95acbf50e14e87608b130af4bafe002cb1dcbd11177fe120a1d656cd73310fbc9cd0611a161bc8816b083acca116ad00c91d0243834c6c047399760a106b8bffe9ba51be9d606a176288ff4021216a09bfe7584f09d496f254e0a5fa818d6d9af05aaa28090d69dc64b4fee4bf9532e694ef0333465620c97cf3a999b57897b747da677b7c4542a617fb256291636defde8c27c0df21ae823cec230ce8b4232411890cbf2a8d005ffa7fe17617bb560fc0287647b59dac1cc67d3a4876fe579a8ab29afb833a7bc28e341cbf4eaea54d1aa54b4d1026b4f02037be8c7f1700562f1369c259b060eacf32f912aae18fcaee4d250cb67c5ac336fbaea4df852ca4ea15b5bc0a0eab2431c441d17f29fa9ea526a10c970b68eac5cf38e1c86f6ca0996e04350394cce0cda4c89c00fe0a9515803d718459a4c31e6a44f904ca93925c43177faca79726002b94c30779ae0f37e9d3a1c7273081e982259393012b723902015be8fd6535a21c44986e2632c18ccacdb6d7ff9983d305c6356e139356d02a6020abb8f182de61363304ed550b6006aec3b76b4df9ce522c13a5e8df9f239a0b1db4b033bc2d68d9cba249284700e746bec33a96aaf03424102ead8f41dea713885742a6c16923c0c0b95ecfb0a0c1585dddc70fc0a78690d9adcfb2b3773affe99c8e6f405796c161804bee72a3a799ec03fa9a5779a17993ceca92c2da76851e8c458e58dd403b9a344b35adb724252bb74280b11310f98033175bf68d393525702acd45582944bbd94425b95f1b71be44d4def999f10f9f6e756024fd54612418ba99f9f124188f949c1940762126f0287f8502bce793ec1b36f6f900a169cba52286686ef8c9e2c071d2db18ad088bdd2d9d7e3ce0f160bea0013d4afad8e2fb5821d91634e20be39ab459f4d3d1ffcd02c7d1a7b117107068f06008f837c28a80b5d4ecee2984cb016454f8abf6d876e7173170593a51fc41f8f4dab5f2ea63e0fe306479a53bba2c02412c20945ef547180a3ba4f1bb0d7ca64767e871b3d520a6ce09c545019512485b22b6d60e855845273b01f0fff47d4258bdd11f56b1ac41f109efdf87b9f2cd6f9bb02ac4b0787fac5ca8a76e2f034538cfd3a9dd3123ae0673a43c94759d574c0eb1238600990d02b0254f445b6a0abe4a71c18dac08f388a498f1cbb02284ac88b837425e714052b6d8d491e3590fae72c5e60a2936b3829b14bc4766a8a7e2a49cca104e1877a1e12bd4050f0b930abe5cd9dbda9a0a347909b7a144ae814e9eb69622a3eb2012f6087d88f6ea9bc267d7f7ec09a9e685d58151ef63b1591095ab61f990beb52d671ae97b270687a7852a040fc29d80bc3db1d0db508eb6cd3d9e6b0b3b1e10cadbedbb360d3de100609045afa296c3680634cc50fa5a46e7755cab35a40c334ce92204c5340172fd39f59363a4226e4db9ddc2383ebd1df1a0690cbe6904bd8460872cae9c43dafe65f9a0fb601f9a88c4c9090ab49bc11e4d519e1044f5e6092bc00db3c07e2ec30a721a2405e3fc1dbed214ddbb5bb51cc3428d7870f847c6cac405bf4bf3acea871213bc2de52c8f87fc437cd168c614b121489d45bfb03c454915ceab953a5a335baac00486743edff772be7f1ca14985a544cab720007fbd485b7a7b65b3e0a705f2477b26efc1845e355b460fadffc8558660ac8871d217bf3d13276a6302c078989ed599d79e033ab58a137dcb7f48437d24d3d5c3dd9d0e134a5423b865af6605d346218913c998c3317fb8d423d073cce33eb261b1b24ab9297a4cc03a459e8fb874ef31e5010b4241db2a1444071e98c00c465f04c52b9cef0818a14ad5cb029f22b57597688c185452b97a2abd204bb276b6c4035a6a772e5a4b0811c1607ce35a6209b153e70c05505100858b9aade4858958b578b8d3d0c28d56535b9c0d1be36cbe6ffdc3ac5a7c38cf2cb50899d86888db7b08b1317e1bf1888bb8256247858f6c483a20445110e6ce571ecd0f5ea9dc8f83d2e7b28cd95816ed3811d5173aebeb3194158216c43439b8b02c493b50e06ad3c88d0d50409b102eecb596409e71fc2776addc2f9c3491d9312e28465530ec4e89023b69f1d2ce783770c70e03e3f064f1215b510e4ad2fe40de165426715aea9107d9d62a8ce849c7f33fb67b337173590ce30802153f37345a4ddd420482689dfc4b7693463f01829f800e4f7e1d546b2d70c9895cdca0e559bb0175fa11a390741546a84398921a14935640de794d449ae8ed1773b5486d69ff07627547d13aae166d634a0b8bf7046feccfe610054829991a5147c96722558d7dac58b562d2323600ba5b1ac6d750562b70e512a14ef0082de3086f2be05ee83a03ea3799fd0bcd5cfb08580eacf2d41f14f45a8468d84554764eaeb6c00732c0ac30973d00d8880538305cdfca16b1d44b32cc3a1440863283dd75e158d829d32e721a8872baa0229ede57d5644f8f5eb087dbf4b09cf06d85db823b435daa94e4604695f2c8e78348d2d32db8d14527ca4abca053dd1c009345bcdfd1cf41461232193a384afca6f281364a790fdef0f26e29dc3af8eef86cc5af382e936f29115f7f5d43682937a95be952b9811f43ad847b03d68ebec82a70cd31943e06071442dcd9819cc828f1ad59a59f6300adc219da30399d5a3668fa8b56c7498212d4e6bc6e57b4ec2dc516219ab0e6c3d091100bda00b2c8b6843bc1afbd8b6ce8c1b5ba296c33a3c1afadefcaac2fce1dbc87275068fc2d18beb33042c185a1e6278fba275d732f202ab3a969a2abc20ae61ab1c772f9996d4c0d097a37fb2487746ccfff1f9100cf201dcdf46ac6a50a0511b2da2a83afbf68fd801e752b2ee63e17c5fdee799ddd47692f1084be4913c8012fd110c7066284ae0b8bfa38672d6513912236aafadd1f14626ef2eca227d27de17c17ab44046dcb83f82f6ea11c6dd159a0dab4c8293f108b0470f41d188711bfbc1ae9c6b49dbc31724ff84f56b7bf6c0d6c57f1ad8da249333d063bf211ee061006b540250ac19881fc0a9944f0304a1a7d4d87fc9b6ef7159af517157c8e031f34a7608a41f942372f3f8a5ded7783c324944dc4734111debc4389951ac63717256daa36e996f58ee6d78848ff302b7e1a376d514ec32d62bc8df791651052f30ced8034601acd6f87f108576ce08ff9620cf3073411f85ac71156592e7a326af424c8d7c9d2b572f4b945087168213367ef893f98a3871f2854958038517540e15ed0737917c04e16b05d8177118301187b77106c8afc7f883294a20c606af2aa10a90560485f7671dd1966f47e1f937f14baa249e2c722540804fe170cd308ea7e0e919bfbb82e7d3a481ae1d695260206249f8b8bbeb2a60b57575cf45f3fb075983cdf78f2d0a8d233a51d901ae66217b39fe23ca4abf6e06923ce3e8d99433ee2a51d25234c6d9c9ea07fcf09a1ac51b0c43d29076190d86b3b215c40241892c6f47949510e29574a93754c43cde07291df8d0bc7dd80f43e3b5491f475a0ac54745eaf9c07b44f01a5f65b9b09f1a9f4204a6a59aabba31762665034591a52e3556c220096f5c6eccabbec0d1bda685aa9a2b886310e9cb01142474e4ee66c13338cbef19dd9e847a83510fd79aaa70861f2253e92a79f336691a4535097b34c086709ba55c9ac71e36c12942868630ea7e04689e755d8488c8426b9f3c22826b542921562836647b842450abd5b4172e50880135f3484342f1ae0d04caa668ecccb530246588534de22c08f29f01dc7d75e382a0f95fac495a10a466d3a5463f6b11a38fc1b2df6e880ae612e2f6171976753d40979569dd59e8567fb7cc088a0760476510f6a9aff2240ff517b0f376d7aa700dd5ef2f595c5022e49c560e9432fa5e735a9b7a49c921a5d19f18a7fb92ee6f409b17302474c0915d317c35e5a92b28e6b08954596c934d37281302d002757e82eef9569301daa24c122b7bfefac37c63b7a0094f5aa7a9de4134f6df4e68a936be7be24ae80ca14d9293edc2fd7803591dc93f70f4f6e058dfdce6b0be046971ea698531f4aeb22a9db0b07dde21f87178649bbc94b27538ce71ef0323a3b08bf911542e8ef7b15551f50369014abaf2a041afe52280f5f4d8af249bcc881b2cd118e6d428a04f018b2728e46fb20425fcd519b4b15ac6cfc40959cde40a9a754fa1e7bfdbd3c5a96b3dfcd221748d600f985e206f39aa77c3e727f9332995f28a2a15694b06a96861b0588001cc05746e7f702f64e7566f410f752ac248f0bfee51866c29b0646e02ddcf9b94ebc8163704090c8db227df379470dc112e77cec6f79416c67c02a85813a2ae74a103ee21672c5de02dd42a96a16b541aa8f205fb233ff2e31f3157400c897c7045e880a350e0f1d55af96be7ec38942a50bab5a018c81aaca6f7a2c4f82e34406d78ddf200cda9287155ea2c7412c354b351de6edb4a7f3a2467fe2cc8a6101fa5489ef2fe75f760fc2f8d38b42c858a0d9aa8d6fa92921b8cd38fe69bb8a6412bd71b8e7f1445bcf43d07b47baf274a89f6cdfac7396ecb3878a50cd27e303f5bd071b8d457f66f5cc5b1dee317f10b0092615e056083e715fd66f95b3f667348d2cf0098d895197d06d0d43715288814c5ce9dfdcf9b10e38032c7afd3334363721aec620d0f81a68ff3dd436fb9afab18f2e24044fc85479b56aa0357ad09104a689a3bc62193b5bb8ffea513181df61505cccecc0f9cb0a19b9d541ca3865bf718135f367e98c89455001a64f29dc5f0f252ae3693182fd83f5a2423f71655d292fe41fa2649130070126dd52ae6165eaed060e21684efa0a9a80cbc58d444b28b5b9e4391d83ac7f0050fe8519ab0a8c07480219019470281b153304aa14811afdfb3e4cf7eedd04a1b86feb45e8b3dd6acc5d0058de963bf22ff496c98005dd2ce5119712ff4dbf7020c26cf65059f16e6018487dab49810406baacd59711dfcb323b5be27ac0ed3e9435660d08a99d20558c6eb4d22dd519c52c9ced7e97b878cdeec08445cfa7110f6b489023514850201b500ed5f240ae20630d50010034dc588ce2e319ac257ac8a5631a9b39227d62b6091573e15ff200463da1a8ec5e0e27a5c4cb45f7f4eafa2011c7edd73f370eea29e30d3d5d9de073aa7ad5bb46f6a4885f45fff5b368fce93ff455126a6f89b515a9063ba87ac89be822095b117d974c60912d00c32572776e01e207408e2d3a4f9bd65d4652e6082af883a819549a668411ce521d058680f7ad556fb026ced79c9f0f0dd11e55458e69adadfd45168ad2ddcc4ffc474c6a26c28aae0f8c8d9f4886935179d748aee41f0f9fc2135f141046d12c8b9acc94b9a43c0471c0fdf867d7c938c99552d850790a02e5799e1ab006796456ed76ad7ad7fb47b025cf35035b7f71acb45d2863d77c116d8b85a1a6bfd88ace8a915ada157f4fece161f427dba417c823ce3c665512a3a8413270efe7ce60923d3c7007a1fcf2f61740ed6503152a7305b87a93ccfdb4a42aa8295c9a1e9f82716cf93c0e072660149de84ba5f684a83dc82cbd3368b32b4193f8a96967683e23d93d49764d54293696065530fa88b1d2a55e06aea1cb46b4a15f27efede0214d4b7c49e04b11eb5187587991dfd0b8cd37b0b427050dc7fd2a9cc42a4d577a283d86d0aeb9509b29fa21d13ea16805e612d90761f18e9592a225a6e1884e0772a69026185508bf2abbd6529a7adbbebf6b6596f9301da80a82fcee7dfcf25e8bbc504a3a818375528ae538841d3d660175bd413f8fb899b1866d8b7220993c85324f73c16343aa997f13bdfefee1e295f178b76c9a11606217af34fcbde34826d5d227028d9982808b8b7a2088959adca01458b125f10ff37d102e802f76e45da6a60b9670770a350dba820ba846e186c7d0cf44ea1233d1a12fe92c592842b66c86caa9717f7e14715f4993b707b1a4a414fe3f9547f2a109c47fb28c9beed0e62dc7e900f49f1d5e641e0b207038b3f144126003a871302ec644c3bfdc1149b80cd668013b644788651504de6e81afc55c4a22c96c3f67ab8c6b24cac09c30e734250391987556a927cc16d4f72f2f0d25e7d5f8c7185c5951eb524331f146afb17747a365d70e5960f6df5f38640f11facafecd0d7c78d43682bfc405ac6a4c5ebcd5a1ff187a4d06253ec2b20ab3c9ba9014a0d0d8e4c243d8574a362c2f0de3194b969fc4c633e1b46857a2302fae1b70f471d3a4b90763ce3b689ca301846dfb3c4c160c1bb811a0d10fd9d0d8c3571ca1b4f915ca0d85aea89f6e279eba44f54e853bfb001311f88ba0e475d5dd86d4aa4c61e54eb8b7010c6d75791f7084df892c487cc1af74b408b9000ea5494125e7b31af2a6e9827ee5aa74408bc3131da72b25d15730d0caf2935e709fce2b02d20e44e8c83627864b69cfb302bd405a02677980c2c8fb234c3cf560f42d4126207a5cbc22c2efd82ca7078a387b14d15c9470a1298455e5e9bb0235f908cf95454ea1360131e581bad35fd139f26022560cc9ddbee743fec0793694745a335614083c0a51a3f2a96549a528829367dd8d295c0dae1f407599b4587c70a9b8a71c3eb3c2c1cbd5930456eef0097536fda652d8a957f6aa32ff9816068ab813120a5b505fc8496c6488eb50a64cbe825db50184bb0fb417298399fca47e2ad5de39919a926b2636004acccac2a4d908e328d997ab2617999cafde73cf7f95243fe21b9ee5384a8444053cbb8ba5eab5181d97b9fa5eb17ed561d56dece9d21b426dbe050f40d1d780cf61c2d90148be57f66f9ad5daff84e031f8237ece69c5d44a0f5a589b06b478f7dba3a34e5e9c7642742dff3f3467df0d3efed10549d1bd8a37769ccacc173ff665cc1379dc36eade015f91f8dd1c21cae0e9dd3648509a319acc0cc8ef07df7fb5eee20ddda0bd5a94f5659bd14489666d6d713d44b996e8304011a7ff38712c4d0a81b529b241f65462ea4292645238b9391848647a9d34726eb7162c10ba2a10690030f80bc963e57113423129f3e8cf825508d62c39be4bbde6610781cb2fe689982e5ce0419d35eca0bef6fc466187015bb03327ff82eedb14c59fbcced7e7291046b097596d24842357e376e66737158a4083ca3783e255fbd0f6869099cfe8f3728f17bab1d0de81d717619324e7aee583e96f0adb92baf3c9577edd67a880232013ecc6acf581c74c8a4e46767f4d707d448afd5068494cf6334ab190692716ce863168707f3c0c1db0027a57d100f348fad9f3519bb6a82d6e6633ccd2d44716d2950d2d5cbc89836216e52e9f0df1b2f2307043f082e38636e3c8c77cebf782169b44092a98488b0971465344a4a72a107ecd7b93718fea92938ca4510baff33c6fbb5242cc1dcce58d6d81eee0904fdb51df2eb05685580c6bc8a6321e51213238b85a9cde98b191f04a7a462817a49297e08266199e18d45886fa58699c86f152c1fe8a1615dd1aa29c129dc882316ea4adf63df567c9af7f01f2f1b3be61892d4befd564a0d03cc81bbc39bbc518380dca488a20072a14c06bff7f1d86b41d3d98cfc8a981b0508106229489e00f95e5314a0016f2a3fabb862a612dd704d89b89eb91225bac4441d8d81fed40eb0353e5d642cb7e8924743385a427bc0332208493cde558ff72adcf44d585171204a5ebd8b82291adc0109354e351c0d6938868e6092e205fb10b3660d0648c926b8f47fff486cf10e667d1142a30ff4cbc4e8e7fa5a912830bc1948103a01611032843059b47cb0e04aa7525d0eade983375847eb36fa84f9f6a1d215113a059afbc578261a8cd0f751858065ca72443fa3be6011cdce0a0399d1c280861c7100e02764d2eb902037834bb939f856476332e0d66e6ff12c607c7a58947ec6e1d04443734856e03985294f1c4ffecca0d3ab9124e111963cee9452d12312d1f60d70755ae00822b9c6e9ef0503b1c10d37d3033c9ef67b5fa10a17ce5cfafeda74fe5321cbf8c7b69b597689a58c8c5f43636c682e48870fc6124e525dc82f8fe20aa827520bff1f137b8bec7ed17b149a10ffba9f90858ddc52dcd4f8e9365119fd3396e9942f5f4a838a7b67c66360df00b8db0e81832d2284011dac8837c5351312a2ed50e360543ee646beb4448eb7b1ff2becc767eb7dd498fcfd1f52b8a8ea24bde99c3421646b5ced19a706a6b9b96dc7df7bb54c08a2de5f0fe0a9a5b8f56bde3d8d2a750220941e3164ee73f2800bbd2dbf0f56a30fa5590f08e6ca1564e4bf37c615e6f03b44d6de4728e91f52953018d05e1a8924720d1b4bbe3c618d743a9560608ba9c286ca53f874ed46691db5af2dd5379e0019dff111003d65afed41b04abb5fe9c0205b016a5a3f4708c31a09230212823f8d6cf176def298c1c94f9f0125232d33e3c84366d049da31ce356cc5a488b44f8f48bc6f48f0251a63444c538e23923608c48ae8b7b5c5127b945012ba82ffff3f02873ca5be48e13c6a144e9c9f3abdd5df60fc66c09e069b57757e47ed1b9ec3a9b3e988d9e02bf58eb886fec2ffc9833961a42bda58fd841f278ca05a3784e879237e0e6b9aa02704f8087abf48288e4fb1bec129a85f3d5614ae0657204cda076f217cf74a0a63f75ed7cd57d659d96f086aa198d244b0f58b952adc3a82058e248f6861a64a82745545b8fda98689ae7f75b226c7ad950060b3ecaa7c79a9a1b6ceb72935320ec6fc57445780b0dabd2f9ee7100513d5b42d3ad4e83cdb6d3194984aef9921e4338d31ba212d387d68fc8902a7abf5cb3e06a21bd62872e6609f813d0d7ee6422378b116c6278ada452ec6d52823025d40f77d1ea6765d3fab536bd331aa819b75453df5121643a5f12d0a76f44ed746f57f5e966b2c097c836c971bf808a6841c6c49d88356d341f8b1cf8dee02dcb4ece4a81c5fa1a9411e59c76c9027da29711197317833cdd22096ff196c07184381a4c1a2ca6f1ebf393dcadd8ccd62baaa55633c43f6d195c8b5d9d6595150244e9dba15829ef4754f79af4ca99264b75f9bc09ee31377f5b1d51fb6ee5c25f3da829f3de4702c7ac9ecf6967ee7dbca78c5269e323f467fcc539067deda6c44d5a168ca6c35cc611112c4bdf229dc148ca469f21b4dfc1017b6e50133cb8bf697b0a3bf39eb291057da8ebf685380bbc2561a8b57084d3cc06fbd7a35530974c0aac5d09545378781f482eda9d10249ded5c48c053f6b9da9502fa32f6dfdc1fdfa1d67e18613cac8652e84b4002ea632885908c1778e0b7cdf8e50c99eb909818ea8f9f61e1823f074608d8fe7e571a193a8e658cf09cd55a0058f11285546f6620b1b7fef65bfb61692cced4fca18862c516205e058101f9d7f48e9cb3bb2acabf550162183e30494515a8785a379691da8b5b0ec302fc67bc7629f0e0b9ef75a61b015713389916c82161c8c22ce6740ca2d519bc138545cad87a2243cc5fe10a02ffcdb1203af95e544bc68e6c0d1f89e526ff4da10ca14f447cfa759c51942d3ec3cde28506786a8fd2cb48912b27add4be2cbe0fcd445e42a52953eb1f5f8faa1aab76d8755bcb71effd1b784ad3ef60a62aeaf3882de59c98a28ba902029859e6248e4dff8b5e178c73a36d7160f2cf4870063c543775501df895fadad783e177cb10693bd4dccfee8e5258b07edd19bfbc21e2bf298436ec0e47240179166864710f11347a6d9dec36a56f0f535451d7f25bd1bee9566070d6ef151b964520b82c487c6440a54c2ed0e0e16b0b32e6c45e08a948000fdd8b6cd73cbd45ece49b3f558afd904b8d0ebb201e01a22e9ed0594eb1d5ac4aed6111034ef24b8eaecef94c98d94b00087be982b8d8d0b1557de3bab27b17e94f41e7435a90a55d7cf1082ced8069456446fde8925217ffdda59e16b9021c076243ecfa857d309bc404eca579d06d4828783817e9908170aaf2a6fd00e5cac3c6807824208f7f3057a599af05798370a81c8c98c052948baf095e8f4c792798e61981064d668806ea5bbcc72dc6a8329a0eee832ddc9929a08af1fa94c64502a73a4cd3a83dd0264149861ba44b91d1c3aab82a5f55fc66331f2fdc9ac14dfb2398f822775462ffa92dc509cb2720cf2bb9646cac715a160f473a6d5732de579edd2f557d1e8eb46a30ba469669c512318f550bde4e6e1090665b446475a14e7f3079a36bcab36b05b254435ba3877ecb91fe87e19b26ae0d4808bae174a86a4b5fdf9e6165d0c5f741c66187a98c3d0e1e77c2031748969eda388f63d8ccbf1aeb41234757d2607e7972d7a695efb7c1dce0647ab2bdba217c70b37832c49ef5d1227693587e11d282efa7b9811eebdf01a2ad871d1678e7a47be454f06d2fbe39e7533effc173ef496770388388afdfee7fd128aef295a988641af8c59b0eeb6095f289e0b8fcaf7b5af6318457eee5e542664fb7b24140b5d0b2ab6bfe9c2dc26524d16474bc784fa46feabf244d20bd4853dcc17b17429a6ff65ee9d1bae7fe7bf17fe07fb1670b31db5c9c9a82468a67f455a01e744fd181f30cc8d77385057b5c58b38289ede3f048475dddbb038e6b2d527d91955bb948ad5dda9aa80e5374e8685f13f3d18ea62e0caa0edf38052d461ac5de90cbdae28d7178eef8e0ae897129f6ad4d3b47ca8de0f05076238184df2be7e223efae12b1f918bd7ea7e2920d5420676b64cd3aa960fcb3edb48c9a999110befa3eb9907b2a1d22b85f40d28e36e96364e7b97f7e30a93c4d1979de460f8735d0e7329bf83794e1dd9ca5585e93384c5e6dc638dd46356435b8bd2a00b6be1164dffdeb3e987222fd9391b99f4734ee6e7b7d1f8adba94ec506e651cbd4b2443097e6ce98095397793468715682119befbe37151d80fb6fb90078cdba41665e4e0072174983f1e1d19ce38c7271a81853a3eebc949d275cd2d66b0164080ccc2d9f5c2f21c2f41983bb167bbf2081295072c5c942a8709ad111dadac0e6e6cc812302d473aa1c83963d6b79ada248e7658ff9b0fcc276bf3c9e1c9d6acd03c67f9328e1b302b65ea08fa5baa04ed9f925d939b441b091cdd4277933bf6ba324cf5438bf6e8e24c5852235be67e25aa1ea56b1d88b371baa9138e8b8518ec88c84f34803f3b3cabb684c9ed361393260f0838b13e2ebb3e48f2b0e4a25bcd3a57459945755819402028decf4fdf1ad656607a018e5f70d7e347594f9ab87adc1bd7c0b2ba23f86b81a24341399dea54198d033079f6af5abae5a1cc99a4989bee23dfe1fca2110525c73cab76f3a2987f186b50b1f4858ab9c1214eea05e3260957d14e02b00cf54b24cc4d5577978541659ee78cd921422dce54c4a48a8e952cc18b97ac9086ef82efe711efeff2c70bc88ed7094f52861bc4e3c62bfd628268a3a3e016503200532619f541bd7badb6b9d036f8c7e6163579c7e7d7c33ecc6ff4dfa809da4eed604dc95c98de6b02b9b171369402dcf2937217788a8b199a6f774eb58e5a5c17d6778c23f0334ecebe2a9a1b1662f0ba8abbdf77e1e93825fc3c644e8e9ef292b28bda42f8b8e82986f3866d2f2e8c542b8c93dc2355ba6e1d42d051fbf2b5a3b49e0b0c94da42c7bbebb58774693b68e2627b7e37fe5c734424610ac42e7662c9f03cac2e6965060dde9d959c25274cb9b9a10ebbb2dd7d496153da040f294f2c3f82a7cb34ec1df0e24e6c96b7ebb55d742a40a8a3af476f215e9a5e701f1edc7dcf5c50c1dd69a0a68f84a55093d9ee33eb926169044b3b1aaf2e79ec7edce9a95c91a975a31c1db1afd6238598ce7c77c61b999f46e47eba770f913650122cde793188169674693c6db6994e40c5157cd37fd2cae4ccb5a10d3b369a75ec27b9f763241697542990ccd4b9f65242824839363c99686f7a8c8278c968f6e70d5eb4dd53dd1bbf5690c25730795dfffdd323bdd1a37aa8473dd453bdd20bbdd543f4ce8df9bde81baffc8a1c8c7fb38d68165da16cb4dfc7f47da980b6210d4b055cdc646e8e24937e1395bbe52772b28db31643286970a575c424850964115c581d0c34f23595d64a2752fb234a53e5766956c0dea5e63439b682518fb6ce54f8c80390477929f79dbc1473cdc385d9afb94a3d1bf50aad346e9ca643d2abd42fa3d007f5420d6d5936ca2978bda5fedceaa23658a6c8dc7ec67546d1425c5950fca57fd7b7525f57f5bae671b385998b6ae89b898265574a2ed2b27565ca76554f53a70ca1778c1dea1361c6f4b3e08070109ff710f1c7add9dadae4cbb2a978a531bebee5076a0cc6c7ac919f648fa6b97a9df371754c988c4990394f1a0eae11fd7cebe84e63ddc312624c3760d341e0a09bb21288d5aa08d844d12f8d74a3d47fc0984e6fed91d2923fcab9d67142ba08bda3b041158d251de25327ccbe918429510c7f358088a2aa5094e5d58db3e65e89f038166982fe8d21f62ebbb594e1c3260dcf5cf11f9c88fd5662d17a5d494da4c846156b5f61557e713d0cb4738c25d8a78d4b37e62bd77aa963ddcbca778c2e4ccb840a45bcc275dc1b36c1e82a182747eec233b73a617feec225af304aa170230891e4259a512cfb8fb46f081b48883f17cb68a2c3f911d1e62cfb217fd6d5d5bed21d21c5e2d146798022ca5d6337dec7884bb88db12a1a982f030c24933758f4ade9388e0eeb778b553a81c8f4e9e10ccfd3707aec654cda17cad05cdae33998540cb33a5b26f9e8dc8a54c16a8254df4300ba87bd6816ec06042dc79a9731ed3cd222c539b83d86aae0f62d48ade47a214a1658722a18354fec5fdd096087952361d11f3cd83d7df7ea3580c3eaf1e0aba8fe73a8833a232c385756a3d94d5c478188aec13a6ecf52cf237aa4a6e7671e43c9ddf490575c8613bad0c4d2ae086f3fb268cc00293c96bce12d63f5bf212849f562c8ef460524cb1f055cf911c92a59ad0d25caf6075dcb1389f6550e174d88755f8094f74678af1d7445eae78f4d950b8e1be468098c8d4c9918d42188727c39e69504b422f75a206427a087c3fa3701b00c8747d41d6606b1648c89b894e22f179a0206d029a46b61248b9b72e1db2732f5fa45344cce38dc4626ab0bef20195d4c8aea593cb9cc55483c582407a835f1c0e1c37166a457103d3eeb48a16485d45648fe52a4e7178f9eb7299c2d76425020fae39ee99e2241a2dd32b319bc1efe617333305bd019a004392d8ca46ffaaac71d6308fdf868e5083f84d6a357f5566ff5548fead5cd402ffda4777a57eff4ae977aab577aa1a7f4365a104cdcc451269ce51be5feaeb55b6364c5ccaecfc2721d63a4aff372cde5f1e655ba94197edcc25ede5e6f724d12c3ef42f63a3a052797fab86ff65995dbbec420e977cea55f6ea75d46293e9d2bc23445ec97962c1517c49f8262a5c42d3793e8b4b710ec74aa11a0f2e75f224ad2fef27fabd7da4cdc3a0f5ddaa4cc8d4c720bcad9a0938b5b227c8a832b6f84f68909e53dfad02d96427fd85bb7a465c050b83047eca3ac5829178048bb18ce8e0ad23a7d62f24bbbc90db97e7c0fc7940b30cf48fbbc2c6a2dbf0eebaf5ee796726e7db8fe8df7cf475bbb2fa2d2c7dfee99391cf9306318ad413e62ba7d60ba1b692d7a6fdbce66e0eec2cf8d44b06364e869988f3433331f33d558e68588b8fdab179df6d6c38bc94b61ed9be9afa565b619b6c7762b769b33ed5d84b0075276caecc118653c3fa52ac15fdd80a3962b07ea18a3a5ffce6a630b3475e632de02be6febf11bca9f8f8adb711b43f3454788d8271bc5c5f5c8bd56bedc01f17e536ce954d7c284fb6c3b2b31680511f3f2d6b25d564f17347f4fdf943052cea079e5de03fab753bdcde24f41e3b5c3a7cfd39335e7a1c92017574f9a362fdce69d8733ad8d134384ff65b628e2de7d542e5e14379cef7ca0b499c360ea27f9dd0ba051d48b5d3c7dc9e48b31f3529cfc4ce104562bbc6662c4bbfb1a9a10708b63563e8ad6966605aea6b3904572028c1346d86e50733ce255b6355d1027072b1506007715a974e1e4d3d8d550d9ea6cacaccb92d74fd20f892ab88ac6ee4d0113027d81894e8fff9c28661de1193e4471baeef300255939dfae980c0513f9723b2cd2bc3c99c3b9b5c89f23a09b562b5c9e8e05ac6631464d90f9bbcd9e419a9047b7e48786723264992b817faa5fbebb34d5c19a5ef86492204db8dcfcfb7e8b51a4894874620a36b0147c9e0e60494c31ee3308dc1f5c6b1962680015422882c114c35ddb852e90df1ef9967c285b417528527aedca440572f7597b18344b7376139ed94f75e310b132490579920a427a48eda01d4a74a05f7b48c4a158b5b41c7c749ed9b739ee32d988b23c373ff98ff074440b27c657795cafe7c0eeaeb7371b9aacd2053d1c1168720da49e79e60538aa955c4f11392adca07929d8c9f676e06b5e8124e098820cd3cc21f8ea9a8ab1e73588894a80773142d2cb70da816ca64b6a49bf3f9aafb443c0ef8f52522902a373033733df992406d1e83afbeaa262b68de6c2416c2ceef3cac4e81c3f8ff52bcfc22ad209dd47569166858e55fd83b3a549224a0c2f7d6c6ccf5336f335acb15e2087499375747c33aae134a167635db3120cb6c7f570dc462479f75ca183ab8564ddff9a7354a1d18bbc7d94dad691ad3fc1698c4d2dca8f17a01b804a698dfb5e8d3125c9b98e3d4d3f32c0fcac5700b0e97c5195d06443132ebd2d77e58ef774d8e3777e39d1e3d7edf364e1da102c5ad24f84490eebc7c45fefed25ab1e9854f202b91b8bf0d2c52a2c04fc15c8414a47431f885550d2c1c12fe460753058786ac1f2908a6240c4b2ba1d1842b5c230ab7f2d3ff730c6f5416a7715326a4ae41c673daa757e7fca1ee41652a8d12d496193e175002a529fe0684e43a943de20ac081f5cf34437e3b22d19dd2b13017ac328198e61c577d9a70178e6865237d40d0bcb0d9cca59527c81ba718ab1a498e91b69ddc36238ee6094fa4a4e74b95b696de650bcaf7bd033e36eafebfceceb1eddf4b289af9b96980f2d5b56e44c2ba437e188a53c1d1e3eb1a119e423b2d5e38b83ffc9e9b597111212839b157e5698d8ce71b209ffd84e1eab55b6d8a3d9ba1899cb2d377c01a691d914b82dbc89fd9651e5c7b1db2379379ad72f3284fe4044ff5c8ef737e23503f48cfcb2edfea9aa34c24587529b4c8eb8893012bbeaa48825bf58148e5e688fad97371e9ff95a923201b0cd4f599ff44bff5d750ef3dcd0e2062487af9921850d09d8914aa298781dce1b68570903ce123a1860ea8aa09a3748f74e3ab985c8b233b818bcbcd9def7db71c5f97bc597c3ecad50baa5ceed8d3870d73282f660f6afeb6036b8f081ed6c320dfbe63b8eab0b469435b709f17027e051e2e01fd1f26e58b66e38d6ec93fc97848bd11988e854ade0fc3ac2649b5a287180a05c5f71c42ebab758a183da2fa2057c754a9cb41bcee5ec3d0fdef8f14e8d1cbf41a0ee95daea1449c8f6890e3fa320c28571229f459619ab5378c08047e2da467f74a894be86747f56f035c49255922fa7a8d9067b6cd4336c88d96343c5258c6a0002ce722091305ab22b87cce2d6d066ebd36fc917871a72adce27e23891b2af41b31e329710fe6a0b28241582c209b624289274a697431b91552d3a38ed6b69eeb4c5f54574c8c46d745574ecd2a88db2ea5cc3962535f5a276ba3e3f6ed8417805c8f49ded74b5b2ca3992e2434806884bb9269490fc0043f2060f6d49304b7e867a8c2f2aea976db1fd8a2b31f61040df80a1289e919bef8d7b6abb1eb08bb2c73bb88074f017c8821f1da35831d50db36127a289880cfcbaaf7e4ff6c6c9314ff67d577897033d9f39e04b738ed988cd16e48dd72b8cb88e5ecc8b2c75bd5cede8049284deba965f59c14849a85e9c76e8e0a5732ab9e509eadb3bfd9a3acf3239d90c7ba0f5d0e3313de6d4d48429fee0794c6e8f764bc5452718f4adee26ffa81431f6a04ce9422d85d39a67b4a1409c3843d9a6429c73542d228322a752fac117f0656e767dcab38dc9124560766261a8b1d2288d3a56964b63bf42ca45d1d3fa1ad604f48fe5a0bc68bb5ef88cca933837c54a053575e063c337db261d8fab76fa36e8d47f6d45c8b30b7f198cebe74539ee520211ec1afdf47839c0f68514079de8e7ebe513db434bb8dde30947d35a6e7ba37c70e4840d40641b935a4e9bcd93a634f2018888d5f745561f6e1778ab6587c476b71bb40232322d2d98018c4ffcb0e024aee4ed579d57f416e930824ce44eadbe3054bda2a0d580a7dc88bfd88d2b3de2f7ad4bf9b8e904cf3cc20f6918ccc0b13f94981ac699bc6b5991eb1f31dbef86edd86e1f32541e8478ad5b71985395b42051450e1a073e83163e5638214ac2fda496eca377d6a1d132a3b86a32108c411c2909f5918dc3bc58896df6d87c94eee38c52b4a7241043e3882cf0d8abf72c88670b4d3dab74b4218142252c45a519992410de76e9e7e466e041eaf7a550c54a57dd0a73b3200240f8369e2e3a8d65a8b524ba604442000da7c7f595e2d7937e67c130937e748347c2e51b3b0ed2e3fdb8cfc4172a1999f0e22e48e652739b0db521ddd87ec54d77976ff0d92ac3899f561bc0f6d388e88d03246d9c346d20a036d069254429366ca6216a5b1dcc3ae5cd552f03abf756362532a27615dd6622f2f42f222f0d5ef273553c1371526b421828b4494c5bbc40a1c14ced3c677433721df983f45622145a0c8bc34839547c10ada2b8018ea05ddfbe71414c76422bec38e7ad7b624dc0b017227d82914f34ee138b7942e33ec1884f18e989c4fa24639f604c796280c5c5ad32b008dd74204e90b1b2bb40f43ead71fe1cad95561490247c9c9ea084d37ceb4ded5591e004431fb07cae871b3d4f268dfaec2aca3e2e6f7564822232288580ee77707e57d94c55ec2704b502ad2fb95dc1467020ac5e5c7b74e9c5a456b95f75ba1e3ef93ff10bd6fade1013e63215482a2d80beeb9e3b3251853734886a8f2cebc1da92e51f3da6b9884378127cd06c94ee67b01b11b7c4784c88cd5f3f7b97b2c4ccb40df92414863bbe43965573ee5a87bf9ef0d3e94459326216756d4026c47978a33a25b5688fc358741ce92dba338ae313e1c4c75dd6db5c70e6fe41b75a86d03601a9236edd44de29f6d87d289a714452821161402d36b48931d8a246e935e8b817813c7acb1933cfa19140f5410f8af443e4f877c168505b88e1f73a4745a5cb835bc18cf9a5a70c417c7ee89a18873cfba8ebe4c4d62c4a36b0244a4ae1827fc353194d8c112c27018bab8973425be6500a67c23fa909e91b0a09d095bf4ccf7f947e80087f4973f32c8c66080f5f34c3f84c2325f8aea09541a062c0a192545bfc86deac27c1ef50150b6566386f074b62ae4824da91e438c0c244b176bab5d53e2a8bcb2df9a70fb8361f42fdd672ea1e244c96a006d7928fe3696f7eb3b2e1085b49ce027d38a09c0d19a5c8f685c1e2c1e2d527df4d79f716ce7c9bff2e02607dddab7958364b5309585b8dd2ab662ff434afb19b6d004d6abe6add00bc3fe2078051cca2a6b759474e370f14b0b9761aa836494eabb44410a582b4014410518fac4e0c3417d360f38714ff6f9f650d62ef09815cdd49f5d93de4ddf12d7ffb7e235b538b696c63922a356a15a5f62aea6ce13910bb856c1d8be860f5fe4b92148216d205e579059eea84e9ad9455751ab88eff49af79d9f11a299bb1c5f532c7071779bd841a7968a38af32d2889a9a29e2edf4aa93fb6ba34102d934c1e074f774a768f70fa0d8921ec6efe9451f80eb99618248b32856870b51fdeafcc310162a775e0a8a114d5348036a9aadd8ab32669ec420d58869a78b55b47578b5bf9acff5ebdad5b69ce89607c9c9e39e5b43846636eac0fbd60a108d4ef593a0222dfa91fe39c48911c2038504d3f4539ebd04cae0849799488e7f00f37d7b2af42f105e086b36290263e48b43e4b40c86f2be5e5ddd06671a6941ce787c3ddd0e54a872bcfc00983f8108d32d048d0994f5c9e80cae2d2ac650dd0fe39c017a8d78803f4c163392e636ac2fe50e0e9ca5c6ae2acad12ad61b6c99437514c99807b34c715a324bb899811f1800ab5d39921597be8188e5bc845e680223ac35e1fd5e36e951d86af4d7738befc2534abc41eddb7ca5aac567d059c9281c2850e22ff091d0db7e8a39e0cae3c762961e509d4565af9b961d9a38df8c2777d5a459238ab77ac7a78d62be00fe6d839968ad2e2fe66aff3b296aa4c6a9a51699841098ec395279609328ac68086eaaa809af5b8e7e0c03aa4fdf2721a81c5cc1da420ae3c0d82f6f90df28db08948fb3b7fa3365597b9336930d272cd8a322e816a3604bb3388c50ff13bf10be95a8f7aa6f939b382c43e5ed4a84bcd5c6785800bbfb04ba148d9eb86030816bfe2881d7222364550bbe96bac64a01d8f83b07a8ccd3cbddcef0c9c77338d12063b8623a95c2d52af363ea93040047039726c4d3f2b7fde0f5c0a3a8308ec1e915f8c9c99f940e0950341d4104c423cdb0bdcba3095f8d55319dc236ff13426a861e53e2c6c4a400061ff07e4fe531ab229e8342a3b8e624fd0e14bb4302755f588d735c3cd89fa4e33e7cec55a6eed539482152ce9110fbaafd0d3184852e2fbb379d298ca369759152adb6a10ff4f12ddd396269c8787cdde441c35a7949267467b625764019f0449c19d52ba1bb79288328819ed7522d3578a8ef0492fa61199d1d6160d9b0cc39fdb4e0da7850f4baba985de484a05957cf234b91679196d1db50f9aa57f3f9cb66438c2bab9d0bbcb68730b0ad304b7a308361fc096d12ec9fe6ed8c19826f4e8dc7502276cc91189cd24e476dfbd33302464325f7bf3b117c3956f7886d1a365a853208e9a5a1ea7b4c885e505df57a13a24962d0f1c86cfb7deb01bedffc191e67234601f5972e165450a260745b415d0596a09081b391f1f34b2f1a18bfee9c87b78da60f88b0d513de3af8ce073e90180e09ba8a0a01486fbd4b02de020f0768bdac17a06bf1e442368c12bde7f78657f65a20343a2fb7e7db5050ca1c6c7fd4147d4af8608b1af0025fe02400e07a0b80a0107d6b6508629ce715c595c1c58d90debb020d9a43dea87b4fe2022ee9b18db2115b95e05a0ab32d38cef391bcf9ebe5252f3170e743582502056347893d44525a80cfd6b987870a8e14cc2c324b0e87688962751cbd2c15e35b08545dba18b2eb529211f7b7659bba8749b77b32deca8e505976922fc18cebdfdab2ffdbade0862850e90953296530c61800afae7c297e594fc3d91935901b9a6aa55a9bad8a591297e0e7ca1294f8b684ba0d6c38d2944c4b9fc56223257fbd87909f5d130f4eb1808c87b525154904cf0e0960707b17d5e75aa1d3ee77bf8f15e07db15c5a1b6ae31e0db4f0aa2382a1475588dd2053293ee6336a102d56cce38cb40c20b9c98aeae6031f20dd7861b7a25fc8b844d8b29209e4e353a5a00105097274f856ba9d621122f210e878a44471f6634c47d78bc7fa971e3542b83f92e6668da79d003cf3ce6007e686e072e982a7c1e60ab6662fe5212a0ccdd9ae26bb7e6602e08abd1f4d9b1527d11a89cd8cf3a1234fc3245fa21e7d4b3e7a21c23afd0b5b721303276f4fc03d0932481974722822e443bb41656d2af05ac0be8246fb1524134f13eb696523b0853d2878086c3cd7e282eaa069e80032fb3df7aaab6ab9d932b7a13bb05b020a7b184c6493e6450691a4c9df2553228b0ce3fa9c5c15fae0224c1092c792f78bd3783b41216d2dca8059adc64da757246d853b18ff00350459f5a700a707a1c28009f90c2e1b4bb4df7fdcc472ea3cd0e916ac88bfecccfe34bbda5b7419b1eeeff94bb99f146a6019f8323bfd9661a17259215eb2977ac5dbd7e768c273f37ee0460a0667a35f010468810e3177feef38a7e954303b3ea9fc4f621543601ba88cd684a374ddcfe0546ce2c0425003e2bdb3d163b0e7bb3fdf3e8655765731b35e3ce2ba8acfd2123843d453bf2396a53a8cd2a39562e3803d2a163d8d30b001e890b9ee1979b06527602c1b3c0e14bc095958322be37980ab8d3d71ea9fe56f240c001fbd5da9e7db96a2d610531803fdd0ef361afcbbc45d02eb3988501fd586609a39e80f02816ef9c0f222e576ae6b77ca15e89ae9151067f7c25877cce84f0b61809507216dd8ee326ef7c330bb38d53422242d58c82f58cfd8baf1b08d73a3367caedf3f51e43b4adcfdcaadb4b1562208c57c89a8eb20b65fb00d55e54b500c28f2c92e54b366364863e3e3e3700b42d8c161281594c78e76c0878d3c0c974e278625173613e0681dd1179cba065eba90e58673e6057ee9b0228400bf3f5b1f626dc01bbea8278fd01bb7be4e7f509250e99c852c13748d7dc9698289c9c9025fce250663a81b3866891501b825d0f4091537c96460fddf7b87aeb9abab9da9123b93a0b61c5200fa2208e30ba5fd309cc5a45fddf7691f604c5b15281e8fa0aa5a01698dcad6498523bf7e01c360638c0c579ca8827b016eab597b6f3d7e10469aa9181adcb33761b3c8e0551e6516c2508959eb1ab9ea8f3cfd8ddf00f9b0718fa752680452ac0c85e8ee9b5eb0331b9f7af10c97d1a519f7f9dc722d6a1ba05d07d89b1018f2b2f59cac83167ae683df5e02cc7ee74832eba57d5d2a3f6542d8cdd9187542b15f7782004e0aee0ad99776eb9046e001acb30983e0852bfe0eea8d8715972118875d983288a62805b3c5d3e24ec8d6f71e943fa779f8b32cc38a5b28bb8cfbe34ad8e0cb0a4cc74e2a1506640e02377be58b8cef50ba7bb05552abb934a3c41637875237b7f0dbcde60963fefb50529f4f41ef326121015dac97000ec5cbc1223cd187c7846b60ec10b2905e7043d3a8131e30f23856f0b38f6574826dc2321be86565531b5eaa55d5403e4cdaeb2e41a18e4eae73896bde9fccc4e6b34f4ad0a721f01aa38b09504c1b457d3c4adf17c4bb44b0175d3970082f61f39bd8786f909b25632be48d50e99ba7cc0d69aceee0572667e48785513c8e8af7f58a934cfe1ca0e96272c3f17d2a7a1d4eea48f86488fb4bacff1e49108ec166077e099b5c4ef6295f724d800cbc016059e7eae87ad2c5c82a9b646db39dc7ece7e8dd8071bda625f50aa4320fff46594f21eea73e1ddec3a7ff54a162a22d0905c9891275cc67d435d7cb148d0d01770141d950c9c2c93aa9c7919e34d9bfa56a581202faaec97237bc4edeb86f405cd9230e11c829bda395355fc1a700cb61fe6221ca9866c6557f6769e29ae4b08df0e15cade25507277b6a25138a12febe74938181ac941009ea14ee441463397e0001dd90813e46edbf911a6dd2b9fd2cc1e266ece489b94c84617e720653589b8dc0ac150b82cd2f865b99d2e104e6f8cf9807e6133b278e7d7cfcb1e494682385b89b855fdc63b24944de092dffe4e2bd910020d3e9a690e6daca6bcc33420178f14b4c38b7c71e477133ca1624e788f21853e11a7886f37896aa0d369764a2cf03efbce0435c79c73e313ac9283b34964aac5ad411727f8f2566c7278ae631bbed68fb6b640d6678dc778fc1eb57437d43ec67700a37bfc507c4670d1ebfef7d293c1868a0aa46742ec5f60815cb9432803e42080f2a3ab2861b8de87118ea22d63af4ff256bcbd8c996d135c3a5716e8d4236923113f5a964bb7c5013771e2185c893898a9f112ce1460dfa12ba74bbda191c7194f33b72e5d5ee78246c3b1227dd5db0ce0b4fbcb214ae1be2c5f8dc640d094681c594a603fec8e867c8f4cb7428e7aff290080e142754f62047359bc407eca5e1d2dc090a2b1d0829a62bab70550c9099168749bee53f1a1ec8c83de61f4abfc7834236f1dc8357503a59a9fe7c69f6091676b7babbbfe0fab957ae7ed9ced0a537f77fcd3831ca297f23e1fded1fa7acfb5ca40af41c1eef721c7acb4228591f8a4e69b49a97986a8ad05a385a22f4ffe182eed8793707a36c08f67b815883d58cae03ae3580b54fcf55104be8e2cb172176203e7626797d5f8ae1e9014afd601844b1f46bec270ddd4442ed737db8b01b555c188fcfdf74ccb1e317ae9a637f89caafb358369588a2804b2bbf5f564091de996bbde2504cbd6a123992cdca366232f1985849c97042021380be7090471f5935da4fd8f59fc8edb0394c368b47d0b692c0a46311ee4ca8e8977b17e9d937deed75cd3db0b2008e0703a7cf8215c22cae9a31277ab5141117809320496df445a25af731839ba89f9dc423004744b0a22b6ce8860bda83740cd2a0d37931f620a6ea8ff694a5126e4e77218200733fb7addbd03909d74a429be65b71edb99639d92f08b940934fd9ca58579736809070b5638b317f9dccd5c8ec1056e99e7c04b5e58d6f3ce82244a33fc4ed10098cda0779127e3049da951389665578768ce64f6ae86c89046cee2e820326b0a44d8daeb07573990dbd02112d88094a955fc44ff98b459fbbb75730607b750831c41ef3d9cdd5e19153e356919ae0fe27497674e481cc05873b254a83a08d0ed747d7f88f534e2c78da2902a04bd9fb486b427af6c6c0bb1b26892024a7d28b75622f9b287a973c6e8bb781cd2d5ddf572811bda8080d60dbbf098e8b52c97f1a86c63706a858058b00f80f90b86039cedcfa854d83112a3a1430598011417d465b31e62ec64ee0d2802e01abccc2debf9a6c4bb2e909bee4557dad7685931869002143c2a9c128308926d60110ef95a4df6037178739130ef19de80d75ee82d2a471077e0bd399be5a3508b35666a763bd38387a440f47898a1996980c7267f71a703695127cd17682257c456f4780948d6f54c3d9139a02d906d68658cb257ca8c720576a0096eebaa582159b7d0c7833f5becb6d5e891a18d6151afa8b7fee30f044992849bb4488eff2931d10427c8f29bf2a855e8881e7b50030502290ad6437d10c1d9249222b408d634e81582716b3f3b2554ed14f7963602d368f7909905fe81a61eaf8f2a6d42a1677eade5bbb1fb77e40895374f50fd561c7ce5307b985f55e1adaf652a74a3f67e1b9089a26fbe1158dca1e304206b94261016cd1fad1dac7f6a3a7b28e231c1e9203acdeaec7d59b18bd217de9e03a53d7e5e4eb33dd0624d2c0843a2a070740db34adbd4066a923354b54ad095091b0a730b53f4ff3668b2cc289c709747cd0a66d6c1de60412588f320cf0b27b80a4c855a01f1ac1098a72d9d0c3d1bd76149900820a1a83a99d98988909d01b621a0788211ddffb34bd0b356beeb1d3af2254fdb807e703e1fe0117191b218e1cd3aa3405c44c83c010d7b6e6e54e302459fe8970b22560471c1a7bf6c4d08d79ef3207ee563a3bd85201928d1590062419c6d77176db8a83c05cd8f717a3cb378870c2778e244e2f487cc9246190ee26e82ea00e7397a7460e93b529c9b3856451e573dcf3f6b914ebe8ed5233ee229024350414e9af8f7343be346f4d602daea00bd4040bd3bd0a246d4d31630d2045bd652a59b92b5ed9b6aabf9a6268a6da1004459d506974e9f25f11aa6e2f4b4d3c0cf464b1e19f4657a5ad421b23d4181f7bebaa453481bd7073028e73bce441a8c74646dce51b5d33a9423e9bbcb8361ed8ea5425f59bcd267bd1ee5adb48d9c52bdfe8d39728d556dfcaf7a8e9b8020714fd415c33927a0f4d1e7ad8b8151f727c495c650dafd87e7f59778278650ee5c45cbed41c757c11877409aecf8778115470c3834ee5266f38152f1e55768eba37145ef148f8554144521b86cef638909994cd295fc3b368b4fc9fbb48c9bccca3f4f61a5c127de2d537d6357249ab0997c46fbe7de3f21523cbe4b012d02769888e7148d0f2427ed153ed0d044cc8141bf34c305a47de3da14794058b52bc9fd19805dd981e7ce0907db8c644abe718a35678caf31d6621e0863d333c53d07b3e66c6a2098cfc026297ff2704d538c459f3a3626f35fa08a15f7f20917c45f47bbc427abd8757a050bd1770ab725ff9b548c2d6e580812c3b3f47443d53b7fd5053f09ad323d1d9255e98cc8fe8d3ab4e57824728e13c32f4f0715ce4b71c351cabc3c1d5498912369b86064c265b06ae58e27a2049b7197a72ae7db90624c956893395c600e12afd8f0fea9d0f3fd516154a7c9b518706b0a5d4b2a3e2349b6bcf7e4c0e48a4b0c08e45bc6d6b8490d0577641b8c263d53079b0d1c17c05c4b255c188e5a2d02f6911c79d275268b8845c5bdad28f0c68f9e693ebfa0070778aba3e8c74b86a60c655fcb00548fa67dba8edb9fee9cee265431c5f0343fec49edc63e369f21a353b47632f4e72910aa89fb0afce840dcde14a5421fb50e026b1dd4f9704836d57e1bebf4db5ec87a8a15b0887ad14af221e8d2f4055d5ac467b83d99f0644d6466dc91160b7acd990d35f39dd38c1c52509863fe0630a44ce08706b5002ae8db28d0a1afe61b0eaf194479fc1daeb69c9ee371ecd809abd452c8aa1b59d8f3c840cdd8e6a0139657887912ca022839355a75d7a785bd99024cc5942d95633009695817bd3ca8148c02a7e741c6374005039cc43e6c526d9c5b913cf00bbcb05806703258162e56215efdb519b70204cdb197e80ba60ff01082f2569598a270e5345169eb8ed28b5526a8ad215507a6c75118ed9dbdb50719406477fbd8aa7e6940e08abc002d7867f0dcb3670d325e12f699b325792a103e40588086b577fdd3612e42f4c5ad0a472cbc3b00ec55f0490ec357f5508c17876fe12107592b43c5154c75ffb224f110b26bbdb1783ffe952c8763343d4d1fd2927b437e1db7de3fc064a35761f4117d3d1273030b015a7dc06c1feadee5268ea3acb534c550d6aa4bf14bb75b9816192c91ea6816c033f70fc0d8aedf849c44bb7b2db591b23fa96ba3ec04f9b7245afa03da880f1ac50351a6992d60f6a86221ee0341f8688185e011bcf791cdf0f67e107c7e1841ea02b952d59979c0ec760865c3206d81a5adbf5230e41610ec6f440b37d601c9f22c3907d315939ff011e72b8e1b36b7bea57ca924821aaf82f38a67c04e7f7a0960e9668f64264ad42b9a93da999141195e83bceb9dcd8552c1a1cd37f774045a3683e43065104f3e7dcb21f2991060cfee7869a31f4598d58151c07695ade914eabf0c1a4f0210cc016f1e232c89e1e5b13b9206d1717838505af0b703b81facf9dde18e90f4e3e92c6a2d29bba83f365a3e5ba772a5d5691dca154d564fe47a2b17e64f685e18a693b0936e1344595e7f5a2a6e8788b4709c8934f033f4d1678dc1883b8cfa41b66a43e5d55f4dcc7d65e794dceea093f1c45fe0eb8ea5c89204fc4d35660ea1242ea76c2f66e8238f9c249898ac10d1548c291be8a02a98cd5db52f4ee079f86d281fc1b6f29cb8658372e8f3fde5aba2c40e12609ca60a87e2bfab0bad0e585b02bc4c41d33bbb6eba229678204cccd9ac002e33dc601f893f47aa3cd4cdd8f7a5077c8de8d619cc115a462453c87764580a9197adbadaf7b1f30d3587a76a0fa7e5e2e099e3e11275069e17185d12357ff706b410065850787f063fed5fa4f583d270cf2b1d8d27f6a443519d3805419f0fd1933387c7c832f9c87d4ed0d2f579b2ac88c2711c71e3d29c2b743b8e9bc06dc7de0148199b984ac0deed19b405a273910877b9c0f7c1a6f507c86fe3b20010f490c1fd104b385a2b9cdd1b965c467a16a870262eef81fd88a808fcc78f04681d61539b63432838cf080dd21ba1af888e87986b5c9c35006ca28ec009b7049ee74d98f0627e11431b9c531fb104636a483b3386194679e5a0528688e3d541d4afd1830b94a03dd54d88038335389c828450f3392b13e20612d062e54d0bbec1dca06687b972f5fa0e850cb1be95d409ce04860b1d9da33e0838afe911b73edb5e03ad88764f71a65c21372587d3bf84f9d58591e50a05a542544d77fce8254d037c117cfa1e49389a9a0f2f18dc657b42f4e5fe71a742ec45ad21b8a32b873b86a4c987f1dfffd3d6321e56d9be4e899398bdb09c82f5ee8f36c446cb83375e56b493310b4f4f64b0f01eed194316ca07deff161203c4290c4688f7616aceb619eee6a0b5f49ca2b3082398a30a3d94326099e4e272434120a079b25033268745332fd3148dea820ac6321bdf7b8376c195caecf8ed11269588678315163003928d16b000ae82386585a92490bddc8d5be6be7086076518b43a8afce03a2d510243f3eacfb0c11fb7de9d1e5612f838107770b52ed0d48a85541b33d18078abf3951f00cf71958de5b61c264c8ea03660748eb5ee68195f18273149707cee5d783bd13d9ea4e5ec8fb6a9004f8e785bb143af75c805c649539ccefa42738cc845c26f14d5004fa9765518315fa74a79514b77412cc18d76ff144948e6eb996874f4b0dd595c3b222b3858283584c40255f2f5d170e5270388a410c792ccbe3c15d6f7bda38061e93f31ef1b13f59775eea6c4c760029e0e74619ee67813f7e12e38091f24757c0fe610a08c1130f2a96d7d55a993abddbea36c7fe4795738954802829ace71dd28897bf3f08112dd9a14e9dda394e8cf835199ba5a25bbd226aea1c58191d9d2801de64650c1319f83ebebfeffc33b5dd9cc39fd4745bcf218b1f9eb827911d5decad17bd49bd65016ccee6faeb78358457628cf14f33cacd62b34a7a5a2c9a08229b5593e381995eaf8aafafbb530ea248d78613e17cf5bda4f680472c3a7ba3300183cfe3c87d70b8278d46f0aa2481f59abf7e1448338cd86b06ffcea8f55b8d266c1efde5bb10d3f6ae9f844d8e7567d3db754105cc48802bf51cceb4bf1b5d31045e23ceb51d1aa5b05bc360981e6e53ea82684a2525607c499ac054a5e4808eeea18ece8c06db3c66a32d6783b957da986a8171ce55efc469b8bf06e888ab5fd51d6ed65abffa246a42cb78595bcd745b87c0db646b32c569f8024842d4d8c19786207091038c7816bd7258046c960ab7f59d3d6c07f14036a0849ed6229cb8d100f5776e4209c16acacb9b15899fd5be7fbf06c57ac3659d1b64002efd0cf53302bce52649d0a794961b1ca7a2124c032287c422920adb41f9b2127eb655dc24fa19ef30f5d8683e86b236d99f67ce3531d0faed9cd1e3405f26ed4deabc979a35ddf5dc46491dd30f6219d84150a72cb32bc0f11613a4415e03b7d839199c14bf6cbdfd11d2787eabccc6614bbe182c044850ec910ab70a18db58cfa559b7f4d0f64cd43b04946c2d6feda3dc1c2770953a4439e915864e3cb5f25a039f249b6a79747bf2a1ca340d598b5d981eb0ca3c169be23583a38c64168cd59e69275cfa568984bb53681a5234f4744fb254f058b8e02cd5bec60e9d2cfc4ce4772ba5c85950e2290195770d3623d52e2ca9aae5b1e4bc73971a4266192916492257aece9a5b4b174948ae75fe9005493158b5be9d040a308c4b274d8ca0093b2997e0b2b7c2377cb6710965d916efed009512b624b50b7739384034fb10f5185b9147016155761bd05e752c6364833a5b9acca6890c3206a5acb9feabb6702a01e89275540b7de0895dabadf039f0d51965f529eaaae641e7c7da33d92d0446d25ca31e1c9bec40b535aa1feb5ee03a158d169232c29788b5bd8b31c89de6bb52511987a1e24b1e5c3164c979df501ed11afe5c512fe2793a72b4461d07e265e9768839e84bdccb2cfd5ffc87a0b354099a5f018a9f4811d2667d144a533ac59689cb3e240b3f263e1c262a47727ff1425264c5aa46975b8a0a86adb826c646f0872e52735035fa63a3e9fd9c0a726a8cc5adf308f0530d7eb96a871ccabd63e00434ab9a838c8259cb0081edb12b72691d41a5daf3a1f5316101df1796a854004142ae2c3e3c5c83e03e06aacc2df9b4faa57a472392927d80ad75a637ef0a8bc9e79c5fc6cfadd658c9f4220468e34d6b68a1da6a8439a9fb4c76ee49f3a1d7a26210431d19c8b6a8a5ad16fa8d0a41d06a78e49c3e79b573f262c95c5212bc558cb3eab1ed0dd01ebdb43073cf203ca36839c58309cd5261d8d84da5ca9a9d35d2c6fe15d4200ae97a244a8375a72afaa482e162491949841d48e06e3c6ab2018a4318e6ba73bf919ce394077e5541ea7c5fe190a767fbd378f8ad6dfd6d6b6d1364b88344208d97bcb2d03e809cb0990093dd420337ee970fe0e2f55bd17d73bad0ecfe5731d9e0d892d4e2c3f467d77da8fcae3f9f18be99cec19ec2198a6611414b71ca3c7b74ec3a41cb4e59859c2f22b8aea9deeaa1bcbf2ad6ed316a555a857948fa2f1f1509d85a67a3c5415556113162cd36e62cdaaeacc67a140a0e5a0adae108bcd34b35c7bc1ec27cd8586d11edf3b337c839f56dd1b8b71180a8542dd1ec2426fb42c282d94b1d0e682e5eaf1a091aed19473b5b3e82ea6d4d619a2427b0bda4c28921eeea137da19d965b60c893104ced71ed243bd6a003a27878e66d7983ecb5b8fab3b68350dd334ad86d3344e8534d26a0dc7a990461cc79d4c40c0f060a2d3e974fe4d40c050218d380cd38e611cad096118c75dc3b887b06b1e4e53218db010f71017aab8900908189a8679b61d1aa669d8b5edd05e83796e69262060689eca711cc771216ec81cc9c45c65241303aa61f590a2a99046188769e7b49ae24040dc4ac1346bdb81bd460bbdda7a68163bc48926203418582806c7711cc76d18966d5a75968ae559d47e9af6f4eb74169dea96e304b7d3392a3a8a9e0e716e0202c6ca59aa0a69f436d42b21569eb1d4cb57e259966b0f9d858652f43e22767e855ee6829d351b69a9d467e0ecae4fa14d47e9a9cfc0d38cdb3ad0db265aa2f7c723625346c098874325bb0788c71dea9d97d5b46717cdb2183b33cd315a56e6881906afd49af918173512c198f331624c8873aa0e041097d5b6a31e088873327d2482313b0d93d67031e6ec2e668c5a33cfc568d1a1478c7adb72d7a1de1e89604c8e9b15c79de5a827a612a78eaaf5d8b663e55c6bf831ee59e9277025956d3b565e93d2e1da4a5555d58a0e939b73ced931664ba56c33a85d3d704a8f9457af94ed8ba27a278c7a4ff73aa5bef21173eaa9193a6ae5b352b983204e5cf969e5a695129f3b6d3958a8b493b2adece46867ca3554a7a46018860141d962bfe8b3a3de01e2288a1de2c493a91453474f04a306733b49e15a8332bba4bc079af21934e53eca8c3acbb6f5757f7b0755b78d87c7569f6d87e82afccc66e7eaf9c0962f9b344c767e43eabd56e26680dfae00bf2f3ffcca64d9cb81dd0e0638c39802fcf02c4b49a552a995a7304da55252b25849511836fe7c487d05068c8d0ab392e2dfd4b972c73bb00e6c83b9aefc26089fa56279e4b354576eb1426b605c88e52ac552ef8d658916557da57277a8afb0a460c078f5eaf9c072d44ae5573ef3a8da482baa35298771ae3755ef0a33bdb289459db9a3f4ce3cb10e28182cd58e5d896790e90c4bf764998758795579a5a65210a725c61956013c00cfe159c6f5d230cb57be52f92c2c9b5816d147db0e1b5f21d9a8d5e381a587b8c8e82725d3a9b25155364adb8ecac64d5b0fad25467d0f396954d94045b1594a2a45d9a6a4a4a4a4a460548e8f07d4296561ebc3bbef701d0eaa7103d4dbf5f002bc9c1fea951902637ca8fde4467d2500a9de295347f59e625e7e5f4300bf5d0f95a14b007a480e3d846795fdda78aac2ac3c55af8d7a69b591963ef50c6a1e5a3d1fee638e81a6eaa52afb4d9de5b7772cea353ea3875983f64067a4541b79967a5395e577a5da487b9fad5858585850293a733a4353e92918a9d43995fadb8658a9d5e3814feb7d297a96a3de4f604c0fa0de4e00f5762ff59e877a5f0250ef0b8d7a656c0ef5cae4f0967aaf96c7a877bed67b9a514bdd65d47bed7000d43b75b84bf57c5839ea2ca96a232d57d449db8ed46bb8d697b61e9a4dfde5ec583ebfabf7e2efc07c1d7272a8f76aa92b473d46bd275b3d1f522baf2c2c376d39582a69e90aad2ca56cabaa5aa1d50a8d96f26144519665cfa67d36fb0ec7cc5c9cd9ec5336b1473d457bcb917a16595858be832d4bbdb1cc422f1f45617ce537966da48551abc703ea333095693830269aea9db65463e635aada45f59e20143154b90a716092b6113f2b0ec48130095bec037186dc1f9a87edf5eef815db8a5e389d121cf844deb490bea984bc9bce9a4018328699394a7060532ce72831629dd8916524b08009e9778e4abd81211047aa01f206873c8abe34ccb5026358420f8dbe4233cad0c588226ca85ed4b9195bf6348e764dcc140da988d26fb763c69fe957e8a7d347a4d141f5fe4a19914ebaa9deabc99da4d0493f550788aa037c84ea233d8ba2ecc43e7ae37535f7fe8c8621bdff52398e7bd730a373e7c7d1cb7276ce48a493ea7f68977ee9f722fd4e991066926997bea9de9feabd280996d2ef87ebd8b705a9b2cb652676545b2efb18bad499eefacf05b35fcaba46b65d30af8c6d9986792fc2fed030a377b30e571d1258308555b18c0416a8c01ab12f96b330c113abd91d48b725cfa6a3b3d83386319b021847e9a1678fbed3e91246e9e57c4a67a8a1ea7d23aa6d3c3c96946d3b5a3eb2d83eb6eff17db4e57832f31fd175a0a587a8e8fd92a454fe2c23d5a3e89d36447a0815223d84fa0c44a590e88516757e36bea7a0ee84bd2fa4438f1c8efa4c87fe2e69871e39d41d669af448a41a0afdda441289440a9178db01ed7d157512bdd3de0411b2842595ee06ec7b89742314f6da348ad6982ec43e7aa1253d6e34d0864af5de88484789729442b5266e3d6e5bd34917a16a77b5699bf2dedf15c5a834e5a6fb447f0ff5ab6172382ae522692a514149292799502927855ebae832531b824443fa23fd958efa9be2f9f08eaadca51016f3c623b6f4167a9f6d3968dbb1c35fad7937fdb34349f4124944daa154127ddb76903452a9542aed2022c110a534b1594a2844d9a6a4a4a4a4844ca2faa6783c843e0375a0a6e74061dc43e55b5a421f02635eea31eabd6ad33744018c23c95ba553f55efd48a4f7a7f2572a954aaf35a4a34acfa0167aaf5e9b6b136fe83d54ad21fd54ef8b7993e599ce42995db6af506617d025259d4bcc25d24b7fdb10a877955aa235a572d343671823035dfadc41db4337d1182deaa19f6ca42da16e3a5d521874ab37f46bdb517a0daa87664b97811365ba56aa773b9d5eda729c3292b42a942bab42d992e8cd8025fd6ac0924824ab92d9d353a294d62159d6afe783e7c3b3d6ab8e3102ba2899dae4263d7411851285427d075b540d6981fa4d8992e87d967414cd5a23d1d38d2d510bd827eda93e1f3c1e4237d1fba8b0a1cfc0cca4f566d537e3116b04f67b91ea137e628d1ea2d665605f1603d54fddaa563bab413c973e3cf5d005a3f092328efb43d61812d23751c8bb811600c07082a7ee9ab9bbbfadc765553a78852183b161d872f5ea2d3e1c30a3c91198d3640b198f34ccbd9e13b005f33e2330f1e1a8e031142e944cc18a1d74a1832c74900697d730cacaba304f07a24882288a28904481240a254a4a00058a19661085122544209148241289c486339ce10c422082104a104514258002c50c3390228a1b441145144890cc200a11122990209102491437401245143310c960063298c10c649063e3b3ecf19449ba8b154e77f16ac34e55e455d186270f478c5c280263ae0a070dc33d564770a048e285ce3b12c58b9cc845efbfae2272ac9e9c32c696f26a98582f66e30d216a4005d3602b440d94b00b66d9b617a6b55cb081c916cee4f775bd17c498ee0cbb30cc8a3a47b042c749439d2358917304243469ccba8ab82f0e805580443c9e67a5b8ae6335d72dac869430af738eab6a445c3a92fab816883e886898ae8f06d1dd15d32222c5e31cf8971a16ce1cc51861a545c63011ca6ed891869430533c586ae2ed8d354573f8ba0c46589b0b3f80010ebcd00258bbee6c4b111cfdeb185152a3616075c48f77e44161032184958ca2df2702cb8f0396b90d96f914606d9e2fd330dcf9078bf93f02c69ca00bfce9fec4cc4d2eee400fd14dc7156dac4082d878ce386a832f01763c4b53836954d3c6e561e53fb4855daa6f336c758d9e27531d35ae03ac9434d3ca9f4ea753ce0c8c3902bac0e7e4f41188f007379a5beb72153745b0f1ba324999c6fb8b7ffd8a5e0a81c71a0d039f12282dcd043a4fd400c75a073d2ba1607a2c144ccb42c1c42c14cccbf2f66bcb01fa582b8ac05a9103163483b59ab0d6ad5b4fccfb8c8886e9eb6a0b051364f9990782815dac330aa64823a288cb04b39fc94d873c77474477d6558209371d6dd1607ebe3d2553523b11d8b51a440af9209108ed1eed3738de33b8c334ac4b24ccea5d24984c30cbb296dc67b54d07b4d2be224cc3825128dc812e5e0c8162ad5b3098efd9af4d07b470878979f920c2d0c5c50281e5c4ccaa04e2c6e3aa96f5f96d47b35030331a1fdd594f9dbab3ce56a53beba7285a8d43acf51debcaeabd6003b4da8019e862dd93fd45d3ae0789d7ea55e1b1fa025daca3aca7c45aed4577d665c127155a2e986d9de1339c969e2ade7b3ff5af7e399229b18f5fbf7eeff2000e8c49d230fc8eb48d77ae212ce653f2562004288c148992350bb15ce11693df9fe521edab34fd38a63a5f2ec5ca5c5735a73c9de2613da297e8aedf0c65483391e978963b883714c10113299c50218d44216e823e9b9669db0734b99068442a611dc85e675533df48e9e8b6ef1960981374793022eede3f5b665d9ee912ec857d19e0ee5d08e8f2bed57bcdd3a9aaf7dca4b34b68f0867c5e7b71a9203ec13080c21cb822093b5724218ae52bb0e880e52c8c2444f8ae58b223451a72d0c4122bd6ab5ac218a1ecea5d4bc876785aa78fb2c630bb08d3e83791eeba8f9313dfef268dd3384db49186e125c02c9c4e5d7543d15d675ae6b9d6b32ad35d6bf4076ba666eff79b5d26a333d6b3accefc709299691cda49da461f4261f26f3b996c39be4a04b3218d54a3a7d6b1a02c033f794110e1a38877ad605ef601631e0e211e9d71c3e4eb9af374fafba53d903d0fccb6ac0436e8c0bef3274bf5bb3427baab2bcbbab530b15ffd0cfe4e69efb40f6e1786c93e76293bc3b28d07f6a6357df9ace97df192c2d8f017766e241e8f076bab9297f07c5f64bfdff5d9884109031d4f8c0f8b3104d3f4d35f668a02634a153ba4371efbf162e188de173b7a4cd230d73c31065dde4d947aa6e8ee3de23431b163877f4a445509a9921e95c81aa9e8ee4df19e1d51d6b10c636014e8f21e05fb7b8422098675167b974522cf9b90171c52c09ae261233c8c47669a6184319e462358af2dd678a5605e18254ac3c4bf18ffe053f16c478f4cd807471442e9eec9c858ec997c03b2da80d1e73d2898f29ebf5f937273cf208944fa0eb6a41ad262deded848efefb4a3f8f990e8c68ea80544d446dad0fc0ce428dce9eec12eba7b51de756951203ff841929db706340e862e92de0a897c65238451ba7bef969109ab6582d98f611c4fc7728cae3e3a804f1ae69d8948e141e23697bd7edb327fe3f16c56c1d6b18ef08df8fec58259fd4227f655f4f170a57d0dc3bedfcd76559969dc6891c863f4823ab0ed830dfb310da6f12c9cea091cb284481180708509a2e4608a1c3861790da3acac0b935aa0a93796e3d3594113e76ea9c5ec31d867a30d938f44769d5bae05c556d5667533badbfea295e96e86c87ce94e66c6ece00aa60cdf003157e724d8aae22e96d8aaaa9e98d615497062b75b1e7b65ac135824983be2b18f68cafa9c716471dbe1b1324c4356313f57e6f306c07f6a7f030de88fea063e1504d5b38ca357c672d939b80d617dfbfcde5e178c29fdfaedae97a80c74a9441374d56d3bc1dc3ee3332d23aab3deb963db42549ea3353f642cf61f323daebcf5d2305bd5305b054d1068cb110a519aeddc45af676be2ef467381ae3d03d1976e7e9bb566030db1dd42f2f9463fa3633eafde358cf6ea1ffa43bb6c97ed5eb499d59fbaab4e3ce2ad5a83d5d4ecae6adb5fccdf2904ebc8583216942b665738e3c4a1b3a735e57e8748ac0d091e3d3605bc1f32b6b3d6ba5e9af7d603f65feafdb22a58136bf44b773cfaefafd6704dd1bc54946c2d23f3745faec7dbcd08b5c0b9e2090cd6a0238215c47311e38bb19f80628c31c696f271d154e87a9f1518c6c9f3a1876c678877eb2c3c292b59c528636c2731c62a4619638c31c6782746ae370cb1909b99463fd3d843240e49395d917dcf5efff6df21c3c4bf5b0cf3eb4370cc85e01b9c8547c0c770ea0284822de25d5588571d99f22f3e7e107e9869fc58e484f8cb0f8f5d1c8410c24b0a462cccae23931f177c83db09dfe0e4a9b350dd081863d57672d50ba261275fb0f005ba74d005364c3c94f2ede4f514b0c8753bb1c0cb16beb0d28818017681c72e0e1ede89c788f5012bcc60c51366b0e2092bac806205142b72e005149de508238cf1578dddf58bf55e578cf4aae2bbe3b41aaee0c434de9947f5de749d15892e2b12896ea20ce745d412d1cb42aa75f73a1c52ccb40f8e118277341bcf7fe1988e27c75c237a4776740474e9ef741be6e897777270cf5a24fa4c8b2a92d03b54858c704831a71030c607e8097cb9723cf59ee655c9c950ecd5dd9019ad13647c287f19126def05a3308d1771a2287911a731a6f1feaeab8f710c73f4c1978601d8270017fbae14fb2ef762ce0e18ca60cacc0a6419cf77c5eed84f02d9cb6992051cfe9d3225e54bc344dbaff1c476cc0d9cb682073a96756c77e3b85356f1e1307938705aa04a418ead21051f04f485cab48d86cd5c9dfb335dc17e382f894cc24b120f7d4de8cbe9ae1f4ef73d5895e2bed8b6ea63018431026097fed5dd7f79491e4e77fd0b67c6fe6246a703f69eec0b8c42c62d1efe8c864955d6e34956222f47083bb0b1f2840c5fbd5a7691ec424077906fc40b46010a7b718e0c8ce9c30701ad88021316be056af61dc1de91ed2b06f35e3e94c4c05e7632f3ba067938faf0105ed59359f9802ef0c71d6df1b2deb6e309818058fdb8a3ed7af6ae20ba837f9b05ad3a0383f95e493564d6b9e5c214bfb2d112d1c367bc0727b498d74f173d6369df96438561666523b5f2952c634dc4048a2dec8b6299c90caa7082292cb59cc5098c681af68ce5726266df36eb07d005aecca03d1c4201713a46e631bf578d73c7cc7845fb09bb783c4fd8c5b31131e30149acf5cdd2ded683f4ce348b563b739426fbf68a6af506e96e3ef3d0ec918641f5ded879cfdf06e2334f2738c92eb71ed5b9bb4fbdd1569e73d70a6e3dac6fbdf5f054de7abc6fd7a62d99af3a56dde7f99cda9bd93db4aa4eafaa7b7ea2dc2e9ecf400fe54a89377f9fcdac9643fb4653d5391ad053d5e73f55a599ff68cf385a1d443fd7b4cf375a81280ddff9abfd730f4dcd4a533af7945669e6b9f34d07a5b673d75ed194e8a157cf4c94f4121dfdf3f150d24dd4f312c973df5669484f7d3e0ffafd7c3b47531f5029057ae89f97a876121d7da3a397687692c6483c51a5e19e027d5efb05559a79edfced598882ce51eddba4da2b0a7a8856e7e89c5ae5677908c0bef703daaa2ad1f63dd372803c2b35cd08f301a92e7f51be45df67a024f59051a36210bbb9afd930f4ebf2788e617d5de7aecfeba02bbbfeb9be5dd7ae67cfaeeb8911f0baaecfb4e8ded850bc4565f609a2b7b3d93f74a31abd97cdeafd95f63a467f64f04252fd6d3bb27e241416a2afa6f7c7a31549ac6afad166206e18ee072392f8b82129721cb10a79e9fe83ed8494e191114fcfde91d37ca719812e7245c6f957c378cea693f543c67b1b22abd77efacd117b65fc07efd8d32baa999e59f4c21ca0b6a80eac5ed36db2cf4021b6ba454114c82359a42ab31ee3bdeccbac478e625766d59aeaa46755a6acded88bd67ba351138954fadb72a4a00a29d4d72b4b24bafc27c7f848bb758d7b557b58d77abc63d79ed11b6d06aa345865eca61fe073d0673a01dab19abd545da3f1595653d86fd11476d02dacd260e7ce55f71d857dac97ce5b8fcfb15af3b16cda6ad5a6ede759e8a68faa8d07e921ee6e7b8c1abbdbeafbd77b1ba2aaf7b5655552abb4abda80bd0eb71c2dbf2ead5e7855a2ab8a0e45a2bf614455568f909eba933b54ba932dcf3889496a895b8e962f6141ffa3a07a63eb88b55ac2becb82ae7507d21ee9a7ff0e029db71ea0969bce55abd6b43c6ba91775ad9e31db42ab97c40d96bdba96b0395cd38e3d07caed02c2aed1cbfd7f4a3c6bfd75ada99e1d6e3c48cfb21b5b555cbdd993b0284669b06ad10cd4a2725056af109bdd64ca5a5ade424987d7c69a7e7a97b0a6577a356b3295684c5555896749871b0dc9927eb2b61ca63f71d25d163a394cdea799d0b4ea560e9f5feb1aed26507b93b8e5d0e295036d236d43b4f5148f0a1ca9e3d9aa9a680a25d1c94510adaa59cdabbb140fd0ab57b605462c47c1321647a8b03a32ed55adbb47d307cd0f1647925817cb58b0000e96371e59459243bd4487d54543e09617d137457792893662e5b1ea6c3fb72e8afd536d3bb003815f641f4d86c7088c99edf2de9da4e686794f5711e67d46ae6831ec71fbd48a8b0a7e31575e6d3a9e35bb2d2a4ccf57b8bbe78412a64684793ba78b843611bc5d17c9b25b163cd230b7bdb0f25232d1302c97514228ac7c0621e802a0a7fe431515209e0c0182012096e5645c46bd178096ab17742096e52ee3990c5acfd114144a06a5e7288cf73604e82b87441a66e5f27048c378e1011628338d2407106f39b87908332332ae5f1977792683521932cec9a8f71600979d8c7a0150a14b8545ec8545b833733ad47bb21c64421e1691285882b3c472076d39b8ac1fd41ae748f5c955058ff00d6e6969697916df13f3764e117b5dbe99f00db6f2f37911f68b1f8e7b0eb4993408648138509d1ca88522f1eca43948487b3be7ce1c6cf518b4abb48b50da4d9c360b4522da15aa04b4302a7767ba0a5502daec290ac4b2993c8a2a016d8ad4b48a5ede91cf3a47e7300d796d087347b4cc34b8df2e929dce26c3b47e2fad3b899dab0ca2d15a3f78c75a952587c037b2cbadded39580d6faa8a9268499d330dce53b8bec3254eff5d9a448c20ed1ea59176926da48e734936ed29da5d3d00d73fb5cc79b5c88be24ddc9148faac66acf087d4d4c0aa2cf89eee43f7493d7e84bc96ed239dd492ca6a75e324a1be655b9bb0ac74875b5c85a03730e653c20a394b0ab30c2146f053a506c73bf9630625764c6989788479c64773ac5783a35a9175e6ab7756a0d98b7b75affa2e2a4640a2186b7e5b042c0180af4a17c3656de29229ac1ca2a44734e1c9a604f8047d408e208cbea1bd1f4887e5fcdb3deebfdeca2471821017e12fb5743238e8042c8cc5ccd0858fb5ed71519308dd039a26124d0303afcc4c7fba180a10993292c63f18428efa3d37bef976bc284c947c618bbe35f7cfde27bb0f67b0f07d9fb186c601f8be52563b8a2a7e52564e8c018bc004f969790a18a152862197e5000cb4bc840054902fb2e7acb4bcac0821f2c2f2943132acd0829515821cb4ba08061c5f212284ab89690a109bb595e620615dc0821943760a01978547690a52c2f31c312ec4943595e62861d7bda362f5c2ff0e5084c7022084ec4202839c253c9087b035f983948b01c022d42a0e359d37c6fb6f855c564e52a3fff609798c61b63b2d32a67d5af5abd114c96ccf1067bd207f1f2c6286394ccdd49e620161e26e690f7da62b3e0f34e5b1dbe8636d2be7a696b98ef2c8438a367bc192d2a1aacfac73b02854d77376655320e6897fe05af59040fe61156f4d1508a27f3c34b6729e994c81d5491c5888d30beae53bff71e36eaaee3d9465ad92df631d77b594aee032b6240c407b2aa2e86f0d69fac0c23ac57ad465abdd5a50f0daf0ac76b3439f0228c94980c2603218410420821765955f8a15da04cabd48bd70097508507bc08029320e8bc7e1c77c03c7ba667da054c84c007377877f3903d9e0cb587c4b351d61aed025fba934ae6cb9377df8ece7b3eb670529f4e7744dc5e3e989a1a66bc9686f92af8cb3a2fd8b663fe05c66497f69255223cd7c585a7d32e97bb783a1a1a66ca6ad00898f39e9cefdaf5545a6094d7193278762223f3c3113641f0999d58e62ef89584fc98742ddd719f78dac0794312223021052640c0c19f1c734384074f904ce1091c60c20e70bc215064f2d5e5dbe2a5a4413479afbba1dcaa5a55f6c7c8c2f86ecd5495558d38a26df46512b8af6eadfad0edc556d7bab62c23f79396631ef30deb2d62ce56bf5cf58b31d3a8eafd31b2f2b1c6ee2447c8d64dd55515324da68b172e745c7c0bcb308bfee13463b65856e151c7cc4097fe7b8f263e1c714bc242cd46c631c3dddddd40809b110dd30bb0f03934c9be57122661e135106f2c338d9b775921a4c5848fddbd7798b297e5c34c7833045bc9eeee8b317959315e922586699eb8e5e8867992b1df2b5acc342233913f9889ad7690653c995fcbe41d331d828c6bcc2a34affcbb7522525c55f5ce753e7a1ac9bf575555d54c4fd387778dfa34b2d52dcbb21eaf9833261129208c8c6bcc8c99ab9786812772597fe93e56d38f97c7ead59d7c4809b3cf164258a5bc2c7ac54ce311e94e32e442a014f65bee5908f4646053ef891802d11cbba7d6c45fd6f31d6c4d1588a584e81eedd1f37ed1e51f8efc834244a2570928a24878aedda24800b12c90256c8d566da0c56e652f4423bdefda0874030402d5fbae3dd619f88004b1317222faa33b191fffb67f26f7f9640de4fd15611af2d5239886fcab12e84e7215c9ec4f9540bbc8476a019b7679f419794db48bfcb5ed78da3302ab228ec5fe9eb02f0616bb12d062bf8c052b7ff90910cb5a299aeb5508dc278222bab30e83197d1411c262c62bb12c91937ef261866498a5d2e74561ee21f67d87f9398991b78062096039470b1cdb7f5074f7badb49dbd062dec6d1b1cf3acfc6b056a2e453916c9fe9c681315b6d23a6db62fbeaee36d2ddbbc9481fe937d1479c68180b78de4ec030ccb7f34ef02ad57bfad46bd348b67fdefb47ff7cb66da42711ade9261eb4a64b879b0ed04fa75a2a7df40fe94dda6a4fd12e2fda8d320ede46b595f41694f055e10c55229d43067bbd1daedac0ce7aaf2d7e7e54249bf6e43909d24a22913864078a61dee7e45ac27cd242fa465a5a1ab26b74a31eed9322316d946d95dd254aa592e74dab5b4e70c284afeef1782a8fc7036d4dcaab5ba6ea01962fae679c65ef9ad5d4aa4f1237f6e6f3b9e6f9f09df39e49693cdf3cff98e6fc08b1335bc26403e7e7e6d9b68cfbe7291d1a76b69e47be31fab6c10da2b60dc2cd0243ac0d4421317d44e54dd4066e9ba669da1297f39aa6699aa669123302d3300dd32ef9d3bc24c76ddcc66d18ade130ec9e739cb6c15984dbb052a9b444896aa55249cb608c0758bef8e28b2f7098ce1d737a56411eda56ef12f0e2a19dbbab201253e5766166ceaec72d8785e454b9b9634c37516e972cc32233fd4620ef371ac0648053355d9bcf0cf4d93658fd43b72cfb67fb5c23a53ea06d4b850e7af68aa6b87f5e793c22b86d9f0ffda6b64a331f02fd43539f87be3d2bd1d14954247a361265483c9b9d8683dae7da070ac0be27a18908a28a60e1240defbd6e2c9cc021c628251653287259460210be8827888da31bf42ae3781288f568b481f6bdcb9a75c3bcb720cb32defa5c55952565f578e84b5ac5c7c37bc56ffa28dbf7aa57913e2b63ffd14ef17bc7c22316bed7c3b2af2b104b3273bccdb339de61ff463e29456b269838ddbd4097fe75cd793afd10077bb9623e2b2628dbaee359ecc3dd5c74f7840bbdd35d6098130d0913ab3009d498cc68652a1f35175c38d942ea7016b1ca260d03231966c5e9ae7fbdea2ebb37dbf61b1be365a46c3fb57a3cc8cfc099dea8e7925e5d58eb17e2bc74d75ca861de29bbb0fd87844ad79f11238c518918ac7c89462c8c95910c0719b73c1adf9af4224681696828cfbe1a63bcfe6cfac2fa62557a687ebedd739ea7d245e740678e21dd3a73898ea8885e8d5d663d590f613137ad7a0eb71db0d664157a3cf55ed2c69aeaf0d77553d51a7969675a5a59abc7437cd5e3e13d47c8d32af9842cc3300cc3304c8e36cf31ea7986611886611886719af478300fe6b9c7e339e6c130cce3c1300cc3eec112c01896b1ed4116cf177316e446d814e0cfc067558f48ae67925200085663bb74530008338d7bd1885c9580876578cb4b8debc2b8e1c532dd5f72667482d01122c7874ece7d2122a786cecccbfbbc278e4faa27b2f71e7cccba8e67afcf3457d452c27cbf6a8d1f5ef8f05c9580f605618928a2fae84e87799e6890710b8c575b22de7bef3d2b88f767bb1f7730c21cf225d21adbad12c4f08436123528b6df8e8f17fbb2f7de4ecb98dd1a3683f5be63efc542ebd539be9818e766f26262547e2ef33157e5e772af2c6c9f1fcc9b76f6b39859d983d2303d6ab1f06fa7bbf780097fdf8eed2ea0e448b961ee70e1c910baeb9883832450449ce8c4919e02df48bddf4ef80663616243a01cbb9339388871ed0832a761582a9149b04862fb5b3811c1d82466d15d3f20d142b60fd6d805d3e85b816fec7816f28d8c6fb0edcfcae752e65061de084552518469d9f987533921251139c48b28dd754c43777d1dcfbe4e49205869e7531894439039dd41c9505f3943d2a3928a25f3761228a213478830251530264259c96a4a17a11ce11d4905d3e8738750608ca402ba3421a1e01bf0bd52ef957d74d021d58430e51024150df3f725938659795f66d1302aefcb2d582eca52eaa5ef344289698851e291e844c4e96eae5c6e39542e573eba8ed74ef8c6b37d4aa54e77fd9ef2945a93423a9554c82174d767a132a7bbfe0a9530a86c426516d249aaca2dba234527baeb8853e391eefa0ff5471452d15d431cad8ad9920ad88619fa95928acb6699a4a2af8beabd5268887b8b7e4fa3dfd9385a57edbe28ef212ab71c5c8ddd61b7a8fc4527452276df4ba399a462f6cbeb023b769d37212d38a490afa8fcdb810f8abc34282821efa68aa738b4b48020e91f3ae7687e46ff843e29696eff7c46b5067ece9f7a239a3796744ec6ecf3b94a759376995ea5549e023aea30b87fce7d1b1dc2cfb96d561ad14317852a873ea25774fe01409f9fe904700fd5101693fb7609cf5112e99f9a0a1d5ef4ed1f9a0a7dfe13aa34a1500d3203397a45b742a07f4eaa212ce6a7dab4053d546b409fb546e59fbe5c8ddda5bed57b18f4469bf26ae3f1feb9dc68542a7cf64fbda81abb4ba9cf1eb7214c37559f4fb555db3f87a67a3760ab675b0eed55f5d9b2db407baaa767f074d23ebfb87abcb6699b1647cf46d4f49b101d9d1b8634a2a173b4a1cfa4a08fa869f450bdba0b556d54b56fdab5698e5e4ffb6822d1efe87cee1ce9f31da27adb8a3e97b0a57325caed12225d3439ae2af1ec87f419d5ed49dc58f8cf8786ce5111a5e1fef9d06d6a9eed23043eab699f81ef198dd643af8de563f42e11836472cb216d1a08fc6204414ebc6bf750ed1fd07c965534bb8756df288de755bdafc736b3cf3d14e4a95788e5eaf6ec235d741215d68a3d48175dd21ed9e733cfad23ccebba758409ef392b01533caabfbf57c7c2093b3686652c9ac0a4e65da22bd1b6c674cff58cbf4dcfb6d1a9a366fb685a56efe79eed1efae16ffccf79d28cd2cc6b9f2dfb08799b8e090a02da3edf6896c48dd5ae7d5e4a874d671ae5f79846e942ec7cd7db56e38649e2dd7791586288f54c0a44889dbce99849dc58cfb3d1fe49f1f07c7e7a6a0d7f0b12c4ce4f7aa79ddcfc462f4df52d6e9e6ff5d26cdbb5807db27ae437b99d0f8a93bb876654835767cfce67f56667be31390cfb3ca35a8d9fd062aff1bc6192d67852f3f29e633435ef3906aa48d06ce7cf4a935dbbc7539568eba1b988584fadf9fcdd24fae7187d43acb6bd21f6d17ffe361ed949ef8d467492673b6f3c442759f7d01bc45e9bde688a26bbe8d9454f08a23ba874cc16b5558e3a4523000004003314000028100c078422b160301e9296b90f14800c99aa5274541787410ca39031861862080008080000008080608011023c0a65d02d969001976e6a5355da80b189a8eb43e7769e705822ea65323676c4db6ddaa9a1b46cf2430c41c09125f976e5af07f9b3f0446bbd18856ce9baf243cb0d5456e32682048006a58d1daedb259f775a8c260cee071be071f186ff81f938473000a5d969435a9892cc1d35a671bb400f457ac40eb709f6c2c9b41f3d5848fc42e77b51cf57e0494a1151d30f05ae1a97891f8a7ea857b60f35a52cb143b5a701db80f59368aa19491b4bb227ef04999e8a64f7b7f8d479134f6c46c8f53a7de5d85156b10bcd924f3a3a03abed6da612102984b99876e4d72afae85a17adc67c6c1169fbb5b4b5d5e2e3b519d39f9f879a1449931f8af306ffd1bfc8677636b6571de673d3e15896be10a2e9c836acb7097e9a6ef0dae33b05db7af9161bfd83acdb6671e4cd8b9aa22c30f761b343edaa831947b6c178864178f34dc246abd1d2cd81b79406c7f52bf30b390276176ceefaff7ff8dec9ecfcf8cdf87055d10473c0688483105704ba6e8ca22a34dbfc262ce67149b61a5c1d2ae417f24bc4a1daa1e9c0bc7a31b9c04baf0e22f61d7972db5fd96e180c4dd8f5c08bab8a931e63f40c10090d95ec2988c6d750d8df2aecea7cddd225687a73eddfd5e4fcd0eec6250d6865a05f95120b88bdbc36505e6646345466f459f25fdbb9485ab7d3673b4d666f94c1bd7aae1f3f6d9cc5e848d85b565a381239e8c1008b520158eb068ea676dbb8f16073f63882e7c03e7c474488ec720f3a60c72ceebd582e73819818b742fcb61252e5dfc3f015bd9249d8c3395ff0a1ac645aecd1d83e6108eeade167c6530538f0486aa4086c9a5e7c06fbf2e7e53602b3342e48d1958d2dd64b644d36aa4dc033d7548a3a179c28c6f1bbe4cc3ae89eeba1f719ade81e8d9290859a4cea7aac80c8b3b3933e0785d21cc6ca7363e6c8d46353a74e3c288e9cbd31b6d0c6dc5840f9d50d5863cd376f368b8ed13b8d0d63530b80e5613f944b4a4f01282811b610445eae5b07e822f86fe8d21eeb6a6dc5d2e456d882479cccc36556ad42839de4556f2c6e25196f499dd24482b85ca56c6a18f0e38efe49907e5e334219ccc839bcff50a10068a8340b69d2e5c109e609cbb0f00139c3d52fc59b46ffd98774219818d160366a58ebd570871dbe958e6198505f2a9cc854d2cf36190dcd52ad2783fe5b36b6d60e65d7e3c2c6aa88ea8e81b46e2771cd673d6dc32232d93b2c5a40c06e1c4b9347aa21595f45322626241b4b66ae0113b9b10f19a393859ef04daf632191898440adb25ce39b79da2569c87412d8ece15172150187072c9621df2e4be6fce5b945f40e480e5b95ad343b1ef6dcf8e71a9bd3d6b6d6cb2d5ca77b6595196c53a3b2bfc1856a925c838ce55d8ab1273be04cb9062c0d55b4d16ab40e4bf7964e30eb2b64fc8957f844388304610d0e5e7308b6ece323adf16b6dbdb4bcdfca619b515981357a72b976a7a923407a40a9026ad01d0aa3124064dd12a451cc52aa973114d480a1bb7ae5a04649718d894ba43933290028146c975daa5f24c52ee8d8c87c84785fa366541d367a2381d6ba76a7b6eb9e4858b8051147da03ed0a89bacb877ab37803ac51438b9c3f99b4953e7e8d1fe20fe4fefc400d66eea4250c871c6fd3b3d4cdc4e9212c16a234ecf39f0713fb64435595d2e8e7ca3c163dbae23e2157f21914644b3e84d57d99a3417f47834461ccee898664cd4887f486231ca588321f39f91b1a1ddbcd4cd4364e8468e433922dd55d1831c2c63704bd1c5317eae21133ac98e32f012dd14e6a309867e8488ac58f104552a25726ae46b0a892c3056a0d33c33bd2f834c497581a95425d6023e0b5466998d053fb29f36ba97d1618992471c7647bc5fe1d64d61a0d549f11343488e05a8330dab4b86d8462546bac803ebb17a3609e6ac48b21828d710837db97ab1667adc1254ca14af18456daa0088ce9a74e525b7e21537d8d1c51366870686c9b55be3675bed926045a129d5a18bad45a45dde77a957f334c7263d0c5b6a39c030f91b375135d626f3261c817f902a158f6fd97b6f80a80dd9b2915dcbadb6e39d696d1cb510eb0cb06928a6fda8178bfa29dd3077d06b4d52a66c8051f2ae4ff683b09f000982bf709ff9584ea2f865f75420f8630b2192bb960ad3dcc0d9d9df0add727533ca7a7a1cd8803bb05612a7c0de7d084e8533e01f0d83bac708320ce24495b5bdba27273dfcaf905d95d710f5d4c174bb26c33cb6c71c464db8fe72df763cac340996d77f02d17460092ce021522fbdb54e71afe0383f13775d76670d8484586685c61fff78ea7668c1215e355198c86013ebdbb7afe576685f7f703b0aed1a2b886bb441c4dddd96c688b0c7e529b3a45e8ef141bbc0e68b10a03224e17016984354a32a9922e665192efec053416ae69a474b0a03be50a1b194594f81b13f87f93793575d29998439559bd3566e8002dcc683a015218ed911cd7d9a43205c5b1919a3124a83c4498084deb419f9e134a770de944fba2999e2f62b1c8bb6164e555c8879f728992d4bca5c347c6d72c1765fc1be517abb2410ff3e760d024a272452991327dff68438b2d50da502524e85ac551cbd4cc4a561e8cc3ecf4acebb91ec33451647a57e5b9fdca800e350e639afba8a6e1a8b8094f8d38574dc39b365ae147b54379f731489c403209341e9887251cd11d4cca66153ea0b5728951d482c7b3c1deb9114f81f13bbfe50f6c2ddc38a2d8d16bcfd73b7ae21f8d880a537e778bae92f43e3a2cf97edeb6f64db442efd720942f1fed41c12eab8c4dc5d22078c04961b31bcc4f5d1783d7325337c5a55b940c05e3d13528ab9d08e2a2e9e726d2447d2efa903284057456c59bdb84a692594a1475fa544ecc7aca4e7f7f95dc34ed4f604734c72f5e37c4913b9cf7a63a5c9ab3ff40e3f72cf48a1020b723e8c0ed858a7728dcd72f3d81b4b04ed7352c21f44c52bcdb49c81333dd9c1caf0e899fc66fd7534ba59495feb80c8ef409509aa6ad76d435f496288cf98b1d04d82b016bb54ece34d52ab2007072b42f519d0149efdc434a5e714c90e8ef91c3441debc0c3ce8728ed951a3eef9a89a047304c406ea4e2b4774041a7cec199d3967131b8b18ea6f3080bf24e492fecb7e1ea3816791d594f277d584745bace2efd760da8d34130671e63c0db2c44bf883a08a61c04143169a4d4de422c411595f8464fa435b58102ed03c5fb297ac614dfeca9e6272544665a64d13ac30fd8d54669b9a498bd9dbc1d1a11ea083b34277d47852d2a59bb8769de18484edf1393bbcf4cecb91fe4028255924e100a7ed0a53442410128bb93621b5e046342e82ee29537c674b0a5e833d7b999f85c620d718dd90847d2718af7bc477a42f3278cd738f4c06251a94a0cc0fa158ff43c9452fbaf2418a90a9648de83d74639e8afc0ccdffcb5e2fe8b95688551bc16233dc421e695c37880b3c2da4f7af40b7aacdf63e959fc1e3d62c223f230530f0fcfa1f127b3d1ebc34eaa0c537aa45de8e12f1d41d58ad0ab39c984d2be81258ba85fdc9093d551a4f0c07906dd293d2201891646d20929b8d293f82b4b8ff31bd534e8f4255d90dd23e4ce05542b400cb8c024010dfe477ef68bb3667227c9edf11c8d97305d4aadae798c3c576a56db465fa73cae82854ad9303dbb33d950aebfdd6263d48b6e5406ef6dce72cce4a5864e0edf0ad1497fbae8c881fb1253c477713794454e619aa3ba7c7a5ccf861e1b6f93948aa7c0cb4be569cf714268cf6c3702274b9e4e241e0fff87bbb09898234d23df7cbbb4a701e612190d632dc11dc923785ff693ef6b6803eed918ef65c9035b5aec6a9c33087f8e158532798a1c7e77f200c6e1c0cb2a46c1752ec17b6159f4eca6ce94b6cb8352f5b96e868641b6214205c2b761eb460ea1acd9cdaf9927c7e5a223d960742af4fdc41ca02740728d0a7e325772c1d07f626675322360afda936af020fc560513fcf96b3edbd465f5c7b467ac678d01114b66f4bdea04ed859ab55a066f981225761659975c1c15feb1043c598cabbd570c05b5dec54f0ae898e930aeaa15668c14c4346c7a8dcc78382a25d374a216eab0482269631aeee4519df4565de7b2bf9899dbaa7630b6394dd35f10421a17f21c0f6be25e5cbe67898700dcc7a431d836cf3095d02cae9b07e5708cfdd4526dcbe649e69d4744fc1512f93bed4358ee109ec99a709f3e3ce532f21e97bcf1ff1fda36264a161e7505faebf55efd89c6061fd4edc8386fba25225e1aeed4bac8c7468be199e36542cb7370a1cf37fe7643d8d287004b3374f14d8953c71214f8b03979521a8ed69887d32ad177c076064a7e6a0f69485b5ed33b19a09809766e49f0868b22bd2b7b012b73a25cf043d6cf52379c9ad02c636231f33ca7d9d54eed710a6f5110bcc8b0b60aa3b4a087ab54c0c138774ba9d60a7e6eacb1ee3c3e8df570fea9a70df9b86ef6912dfaf7ae0660ef7cbecddb0abf2b5bf27d4c9881a48586440e449b6102df65b35f8d15951f44b05bf683413adb2fcb99c75a27c3aca4bc2af4f695432bbd5948ea7d73416f896c7f7dd1f86d26960c5823a4fb3a9ad8e559019eae6f849f7c79d2b394ce24c0efe732c183e27ac4214c0f0745a1100736620b9127a0864dc4b805bbbc679ccd2ee2a3127c7a3a5dce6b6a59a1e10fded4bd6c3e59bb74e6a0bd8a15d825461329b4bb72d9cd2bd71a21a1bda81e288c85de5fd09289e10cef83ca0501f8c59f348d3c67b01e60aa174f435fcfa89ef82cc3140bbfd8429c433038cece94206f7661049d987021545584fc2a8e25031eecd827bd0bd2cc936c04607effd9c4076cc238bd5dcb1ea63eeca06c3df03df864ec0481abd17dcf2d020f850ca891534095e9d8a4bd11aec268e534fc61d4dc832d5e4fbdaa9878b7e8d86da37e2a46b1496b23a7d7c074f17014742e0759963c4305aed9a5509bc1f180fcdad2e967554f815fb9c1b81b3d12032c16ba210c26bdccdc36961cc9f14fbb1913d62d8515fb8a7539ea33811043f88da3d6a4a8b452197ae09f812bd7877fd9cc3ee1f7748499d4916bbd3206718dab1150af31e187111a93ac2a2664ba32f978533903f72f596b6f51bb50f32679d7c8d6e7de3d2de7b7d4722bcd1429e496818273ce1db87ccc3d002d170b3ef3b1dc412afc0c644319506fa188f225d02e4749e555c99903467b0f3b3b3b77616b11056473694c9b0c260f818c2a2ef2e746e618347317dabead1ec4018756bdf9516d7b28b2cb90086083e919f9c800551cd9dd8f886a863407c682983ab674adcb4bcde6087e8c228ac49a8cb0d80b45e0ef46f115bd4e162cdbf5bdc71261f38d3fb70bbb476ba8a77b31a996a76dae0806322849daf5c9fc5bb081860d3df7507e5429c837909c67f271a027a63b22124d491f5f3e37fa47277bdd872255b20c995b55a57f2877cab487b9a9a9b4b0e586f609a5a5af16ed7383e17115602d2eb94efa169c610a919949bde683224eddea5102f4bedd6486b0901fb9478e7345b0b0a45ece58dbc1bc7e42cbb37f6b2f0fdada5571d4972c57d9c576215dc98729085a4ba2a0f6ab764b951d904f8424de6fa59ead9e4cade30b293d1282633f48a9b2033985bc273693c3049a775613ae7e45db11bb186a92810148052f34436fe30465b1ca571cf2725079bbd4622475d1c31f0f60e674fd83173c02b0202a784f9d4e99aecd1d93466bef78845da65f60d2f391394eef4a7760ff45a4ea9ca081e200a63dbf43f5cdea22a509660ea8bde3ac066380f197ac2b5f7517654f3a27f2a2474f48a85f6299e114bfeba6110b10b32a4f49d6b3a0e1ce13c2a46134d8f3e49a7e7b6ec4f3a9b8ca056f5c612759b774e52a4c16bc2386cbe011c226f43a098e1e03418a033229f612fbfbee3c561716d4f158236b1d899fdaf859b1500c140df3410dcb848ee39d7c50cd5b479454b1f0bf1577927b2ff247dfc3818fd07d30bfb24bdf17711bb45a71ae8d887a69765794fdbbe878e8ba7ed293b4211de1c63d2ba655c42a4ecfb0edb0c0269a2775a5af7356f5f4a6f916338ba60b780fd029920dda678eb7e54bf15458640d379981b42154817f66bf44d84c1bbc9363f5ffbd68dced91aebe8f4b632bafc8427c5dbef4d594d7ec60ab2995f178a68a0e777bc9f415d4db8239fc7c1cfba4065f0489f5491c3de833a5aa700170cfa429e095c9541a182118e1203c961957fc27cd90bc7b80373df6527a728f5f665cf05819a9868c6f0e13e4153eaeab2e7bf084f8c485f1855b6a5664843b0d4c2419f16ac5a5bd5c7189d3b7b4797d75713801dd756b01052f4c0951881e0ee80b4483c971f748f6119278e2089d4ad6522f1cf0e077079e6e9712631c2eabc32c938d62dc67e5ed0924b20842ba6342ebc6826e08e285973bc2625e4059e340888ad4dacdcc718159e3b5aa14465576e7bacf23b774fa55e627697028174329251b9082e8359ff4b53ebc992739efe04d09e26a3594a4d60e0ae18a10850689742c5d5c255753f794bc2146ebea8678c4d52789f8ae98980e20159545c49fe8c64ee50dd583d9cafa364e4880b663bf84a1a507a21759bbbbd277647f526a7cb9758b252772a6c195353c15a3b05f57b36a6122bff21244208a3c04edff3a9e5af50f8967667c1493c00bf908361ba7a86e4d235496837ec33ae05bfd3a665c8d78b1a8567eb89ae64a5348044c7cc4c0556f0b680e6604f041621e1fffe8608adc27624c4e7823fecf0c07e1db83a313a235bc30b564108d31f2ed6df677277f9947595136b42296f2a938b01dedfa4a282e051d6fc44e3c282074308ac65539943053bd64ee9533e65b7fd7ad4c60749b7d61515fed7ccf325726a72ac148900263e4e981286806cd1b929213ab928c6c6cf1be8476dacde3378617a8715d1b33f6bf327d8f112a9ebd1d0cfe907b846220e0c91b02f200ab0ec5f95fed024f420daffb9bf8389b1280b1449facf55dcd6cf301588e24db6d9fa888c9f35f740508b42a7d0ddbbdd2d3f336da9a9b9eb788c0cf243eb8c9903a3c1c25af556850e67f04d6937065180309d16e1d1a8d191f19e69b47659c55e85544c92072b093fcb060674898da4cbbb991aa52bcbcb7af484d75dc4bfd6b8b6693d4d7127ecffbec2575d0f9fc17dc19d3e990f90596d00eb42818b0801bda5be2f6153c04ac74a554f94a915f76e147fdcbd6d28e022b8918ca4a88e06402c1afcffab1371fc9dd002d2d67ab64a45039cb30e429f6b532f211ab961ddfd1b608d32bae6ecd0ae7a806673d02b07d1fb5741d4721b191cbea2325b32f5919f7ee313c91bf6acf8951d428529bd5f582824e4c365e1b854c991606503126ae79aa98711ece67b61a9ecb3c23e6481d90b806259fd73130d80e4b499131f3980475389ad167a27e21da3a28406fb1765ff8b168ee27303c43b77d9a2b52f2a597f9162fabe51f75574833baf7120dc7c8cd5f519f8cd28b283d3fe2696457009de054bd697897585baa2298c4a4884d61b2756db043930353766b90d124a7b808cfd22861d5201ca4feba2467bbd3be6bb3dfd62dbf5b541d50c93f0fc3ccc6e472c29f00c49e4aae0891728aa80f500001c08b1b46989da08f311fcec4531c01f687de4d1143b2b255688d87ae6a3a0b042c2843bdfe7343f16f7d8452ad472c8964145899b55263267dbc47d445b5edb9ceed7ea56bcf6711d3017c0b7f8b5dfb102b546a7242d8d88c55edc93724b7ff8e6e32792588022e7e8a321f20ba2c1b67a517661d6ec171c504066fe0eb731724b4df700155951855a3b728614562432532ce33a9ce43e219f80d7e1341a28109d0d2c0f0119b8e1af8a5ac069e5dd7c0d1181b780b6e04179703eca454480b0d586b5b77091ddcc030d681bece0dfc04ad7297ab71cf887d131045824bf6bd1946bcd2a41bb8f5e1751025a34d81bf2bba129128955c0bf331dcfc7a90ca2d92d8ab22c604b2111e803c720ba30dffc278ed6d00bdc85f8e551b1967103902652ad5d44089013b04c935590a88c4fd4f9fca8e329c28cdf545abd775088fe04253532ff4534324a076a18d3b61f99d14c068dba0e0633ae22771dac45c45fa43249681703652f61e59aec5b120a0e4ac31c55672ef6a85cb534f1d48717ae659aad3ae37208afc9b6d25ff69a35e7f6140ad1f8bc4590df40b075b0d1030886ef81bc12449c72d3bb4fcad0e958f69cb7d429265ab56e54e508b6c9d23082c506132e98b350658f41efa142708f3759268d96ad7275bf0098e4bb9d6653c3f7cc2da4b0a46639a617562e07ce026128aa551892be641dad96696cc78e2263258465c31231a02bbdb668ef82657a110369e2843067eaf01e3ec8aec23a4c5329f815dee2a2898ca213f3db97a5931df14f01f8ae1e191e33a752799605247eacf3238baf2e1dfc74ced2ef76c61cd23435e292050c02ae5f4a0417355192e3514786c7e98402bf5d3769807339db0344430be5693072a46623cc13a097a40b71433b3d211e2b1020695d679ae9a4ef990eaebf6a1bf6954355019e912451e9b30efb3df39a76f2e5346d58ace1534e13927315e62e65bf6d1d958727c1ac54c0c59f386017c3e4adf00ba1acde14f1eb10b2f3089c5112ddcb0acbf4b51075ac946ad50902374637d8661a4f4abfd59192928d06df0e65ee6077c2116fd393ac41766577b90a146b9aa64443f286bc2b03c8a0177e378eb0ec27ebe8927e8f0c25e867df1255d9decce711e58c71726b4d0be6005de34a8086644a3a8aee899143aed9c4130a33910b6d6e7742aa5fc408db2aeb78daf00c615dc97d6816d1a65313cc58f1c58b359b2f5b615ae3085e67ae965c1bc5b73715a4e9e228e79aa6a7b057f2e4f11f035353273240386a2d7efabb13ec995c72cabd144a85c65615f815066a02ba3434f978946cd5488458699a095634ee8f2f34279132385854663a42bef99d2295ad107fd69e47fd8e792fc4bfdae5bf26dad7800db3890f0e0c66feaf1640d07245985a322b785736e7238dfc51cd5a103aace8c3a7498d7f8de500d3ea5027b1c46cc3ed666fb70d067eca9966b9ccfb0c1ac5411c379c8fdefaeca2e99a83b4a36d2341b74b0a6c86a4067c4efd84f0320c41e74ef6a7998bdc19d0c51675795cd2b3d56d59fc11c63c9b66db62c0e3e7fe412cbb477e99b05de6a7edb2703b7e6ce0b0abfa5ec2cc1783063ef3f0566d17f792da60d74a304e7997bc30b1216c1de3bf0be60bd6b08e84f18b05fda457e5a31179d3c667b61d028324ff6ea12a1a56cb313636c148c7a77f33958d6f527b50f5fcc4a0d1fc618c806255563c98e1e1a8eaf869aec2ef8e00de6960c882938cb07b215cac948f22925a43432924f8dd93c970f05958f80ddd3245001d3722a0909f4c0968c5590bccf89513c7c2476678afc2127f86db034c62302317f52be23429cd6949737c2a5dd7bcb80170bf42ca644183b5a641ba49aa1e72400ddbd7bd258654eba337d49118d61de2d19b15466dcc38b2da403b4b338260e072308c57d565f581d648c6a9afd103e0d7fe618d012d5379de5438df454d1345c7d4a7ad2afa69b802ed4d50f4c64a5c4283b1a8bd05811c29147e6eabef30e1c7972fc906da0ba2af204da9c6caa63081450a4020ca625f0a666716133cf62026e7930acf828c0d343602addb8c3f8c13a6e2a16193d9992c738ba5d1b05215d4f828ae3fc2651dcf0c48bec97000d9121d9af7d5c4209f8d437ee28872a0110a48d33d3a90cf227628215babd331a2a5f2f52f0de7fd8d937a7b40002cd53e691d8a7dda13a62b941e226db514cc72002ed762d6a640736f177a1bb1aa44c9785bb4c97e4c92e36b04111a89e47178c6f50783aecc6801db9fbea0b93c0fac7dd0ef115c843feca11e67f5cd1fb9aa7bc8b4ef0b17bebc8eb6f78ec6246bcc52be115ba35dd3384e221f229964ce822ab93b5d10952079c417ba0f953cb3dea5cc378c77dd368fc8453a88dce3c76d302925916e1260de85e755f42987867a6c1356b58057a919efb582a80b2700a8596eb59dc58565a2d420eb568f81270e4bc7575bb7e36d1944b71ec7d0cfe09ef33d6262768d622baf61a70dd6087c48ca97dd0dbf63fd68f8edfa6d3f681b464b9019881c049b0c0f2c1956484dd79c5ecebbb8c140cc4e8c93db332fd3702293c2442ba3cd457872984d59804edceeeb75075017ca836194c57552fa815aca578de9bee41db02049d0d10b3d47d96356db405d4d26258cfc899f4f25ee00f3cb3822e15c90b3c2297bdfc99289bfdcd109f3566fc5ccbf7e2f6527b6fc58fcb0104c43fd77ba94c4445b6853eb7f93c01ec73855d0301ac9e698de614602dd6f42c7a40fae368e273a8ca29eb235a6228eacb9414c08fd6f1a08f71599f91033840d06c5d563d86c1f59aa65fb0b4349e8e705cf003e4118c393c1e31fb3885a0f5ef7702e6c9955bd796e06446f41625262dc229bf9929453f048e97e8f1c5e790c50df80e1124ce97bd84edd4f35db2abcb1d94e8eb880dfc43e307b3e709c1cc3822bc6c2371485b9054e629a1679aa2637e008488fd44bb56a01a7047226a6838ca15485368224965156e76c8a48cdbc39841ee2786a40a46e60175145006ceac066cf596770bb7c7deccd28e0de8a704a7d08a3cb6a2561bfc62c41ce1deed87edcfc35324428cac89cd537984605579880fff50923f02a833d95994d501cf5c69465ce3dd3438e4ed9ffd7fe446e1c10b9ed8575344f2c8408e258c229d027a6a97c6a08681a5f24c45078d2d487196ed256e623836486bab0387cd6b86099a384d24b7883984107d812f7781e2b66391d1f32f079901e62b045fdfd3f9d60713924a766031677d5e1687b1df33587a633e54aa3e1f2fe58bc6d4c06d1c6640c1655f3ccfc4e9fe116c48484d5c3afa7336ad21d79a010e58ee1b814bc68dac6c233927d18077d9c7787a26f8139e670c1978c24584024989b51cb66ea680fba7b18536d1be98172faeaee216aa496e8ae3473786b948b0d31b0e7a2e5b648c5f6fb2b323ba667392dc3a29b6636805ee4e41212428e81d72909048dca8524d6d57f18968cd8dd197d6d489461d6d7317ea51081126a2ef693f65b0f0e0616773002da045c0ecf01d657035db5d35322dc8a7ef510b8def6f952b29688f60141621256f2ef2b79aad94d3a75a8494d17d36ace3e753d357cdc5fa093cef7c19f92febc4274e42b07f71abc64274af5557f37438e4013e6096499d459ec707e9011308ecfb454a6413648669c594095834f9f99a28fb78ab87ab002f781bbbd7f9518732a2cd5c805eaa3bd4662250f01a60041197bc983f11c1c35a83851c50ab9a9bf505e984b01b4b3b57714532430e276998e1cf00671a8546d0d6ad1d9c0f568fea82f35753b1172f3e2af2f4b21976cc4ef6bb70ab7521617c95010dc8c87a12a53ac3389f23aca2f5db94d799ce79f661c41e1708ae2c1cca2611d4642c768c384306b09a85c541f703674d23c32de4a1968c718a5f880129e44d36ff950cff43737f9a074c7714425281ac24c2704d05db1c14082d825e234ef639fea6f5fcc1398cb92452d3344648b8f3b73b6f51f27d887d4d297599654b1f151635529b0ae4471d9ab36a06c34e1ee95933871ea7ee6c0c6944ab9d7f6a81a7cc22c9776c4a8dccb22696a3c23b559cc08354f9106fbcd141ea02d63c965df2a3cfcdb7e8398d0d33b980c225224d7b60634f37de7004d78a530b4ae2fdaabda26d7a3ecda44133e976960a6e469b912d8f91819fcccc00b526e8a63960e60a0841d0d9b9bafc812bb53708b6d5d51656ceee3adf859b38dcd699ff2f232104995a642bf16c5f9e135f5e6c1eb2794634896220461f92f23d256ef92db06f8c3e164a18992998d65fb0177d4fdd6e222b7c2cc6241b7d84622659ddd7cb6935dfc582daa13984e13c1b26881eeb41be47f812f2818c51d505e945e133ab319a2f6e82f8760b4f652b8850b9dbd49e73f37b47a64868932bd8479a6bd268a0d7e23c458ac248671e55630159786851733aba9b5239c7ab55187c4be8859cb43e35f89ecbe80efdacd9cf190b950e7daf2c5134fb34bae7edbb5278b296626b4b0b0e77f1ef8748ffffcd3181eafc6a64970dc87158408a0799a10685beb5a828db8f196429d8e951ec8ab558104bb9c5b564cdc209f83303c9f5f3a93f3f6c33b38b837e9e3e89051c03920b7314cabbb011a2aa76a51c4b7fa0ab9199b537641f0b27a3aa4b4646a98beec959510694a2e7e549dfc840eaeaf955d56f5a8bff91e5fa146114dddb0ff6d450d4fa1139da8a380d2b3bde46849563bd16560f03a7e49c47c38048e8ebb682b318508e63025b3c80223fe4e2d8f91fe8886e90e2e0a44b9bf94994821e37f99966223e8e0cac0ec461eee4c170a0e7040a3581ed718bc870285ebcd6807c9d1a30263a3aa24de1bdb88c67e0a6e30192d3cacba52f0beaf42c4cef244e489a332a0ebd3e7fa9893395e989a666ea808b877e4d3fc3e1be4ff20c7298820d6c367e4e09a523e64cc81db1ee8281f41bd154769e006c98acd34804f50ec29a412e21db69a8e1c14fa5cb6217c902f3c6dca615d9ea31044108e3938044a3db5094868f95a04a4c78b1b6f7a10581a62f09c9f7b2e9c8b53951df3838c51ffce34813bc491ca1ef9aa0333d2e92e82490f0ad4be553bbbbd4731726f819ce4f2f034521c30082b68e36df8dc40b0344ef6dd151b4e08cc9b823a61b484c7556ccc2a12366ee8a0c29e7b1b10c4a3bc062a4e7bcd9597e21669150e5a2999afe72f301d60be236f45363d3ba8d6b984515522c7c412512c89eb125a522c8a6290b28c115fa045ee83ab970246dc438dbe858057494af4816df6e19d7eab0bcb5673089e715751c2cc9ddba0b4d04d7abccf525c44fc074fc29030eca3be5954ff84c8b48a193e85ad408927c4653a70d9d3ed9d84afb82bab6d53068f1c525e775e21b4a44f2301b16266d48f76261dc3588ea4ee6e450de517f31d3a6010d54e2a3a0c8c023d0a5d34012f13b0d011e41a6bee24d9f346a3875b7ee0a55699355e438095f06d69c14b7642cc7158ba8a198b4059fb1abbe204f075ca0ce6e495c0a47895b2102e2b229e82b054f8b0247bd5372c4a6c5c9d220ed0de0e32810016b3a08913881cadd8f3461e88d781ceb16e707e24ae1c14220f8a2c54d766cc1024bf9fde5a2732f0ba43b08470846966c8c313f550016e985c032162127b7c96b3b10f0af0cbf51cc209e180b355c67dc57627de8636d8cc2e14a09e525101048f7cb0055720252b3f74a41d22c982dac63a7f52c977753d76b687bb448ececae725d440e126ff7a4cdce19b408345756c0eb36cb10a6d07947ad2dadf88d1c06e78f4745e3fb5e9a68aeedb34d3c59f8f322281bb27892815489c190f874a0eb5de38a69c7ac086e7cfbf4909528aedf1aa5ba607779256e5d480116a2451247193aaa718d0af322aba4761a2671169dbe7fc1810bd09222a7324412e7a74f3afbe887098afe48b3ca0aecb14b2c23f6368b24929e584ee0cff387a49aaaef45531a9ad1cc16e143cc61df5604c190d74db8d612cc51a5f76306279906850465dbeb6508bd149120f5cdd5c19b1e3eb542d3b280e9d8f36e8975b5dcc1d760d07a4f90cbd79b99b2c7168603823aef625f9524ac5391f6ac7bc55b095c11d72a1f7bc7b05628c2fac0100740d6ad823369554c469617cd2fd8de5965d704715633a6cf2ff5c8e9d26c07c6b9e32eb06c9a45613851aca560a56fdaa5f93380bb1b98f25c9ff3ad7e1f08acb520c1d86208684975372113c9513a02c2755f477c2268f4f20a78ded932d19cece648eece84f50208d76c7186715cea163055a3e176f4c9dc44de5f3bc2f62cf1db50dcb712a146e4f7b3bd119ede157199cb1389e4139a0c635614c966d7d4109f242b76c4a366f80cd1ea0068b216d59ac99430fce1a41b585d196f6e3e5109e86ccc208417fa0a39d6f9f7ef578cf7204628d1979724cbaaebf9ba06b9ec6c1539365e6091cf8b8e081bab6cbd630072709e53b705f5c3fc2e7a6ece46748197cd335aa64fb83961c3e4eb0632ce535592b4472c3e1dbc8b4d76ea3ee4a664eebd1e178c61b6673e45aad933cc8a880753028d28f641d0c2ecdac688322f627ce42e524c5c60da14157c45a338afc7ca3a3e5645fe4f9fd4cfc9c43f733d848582fa7f78a91a1032218b62c17600897ca0bfcf9e64c5f2ad46383103d182ac7570b85f44fd8a8c800cf68df6d24e0dc9d092cff68986b5500dcb8bb8e0ee252739d8e0b244ca4f0d13a15f85ffa2cf2a1c845f9e55a2514569e0795e9026c4794ed33445c37139f5abf03c81603f95a96bed807ac44ec0a5f742a6d717c32940fd344fb0a40e138d1733353a2c1301ee1f440f90c1f9971cb708dbe36b84f62b998304aaf554e062d3634ae512d0f5ef8574288103dd79aa5473dedef010b0270049afbe5e9ac0937ecd52dbaa79b631da3489663a1c28db117b9ae384b459401f1af9da401ac4f309c4e0928733f805a500119ea7c6ab77843a677319d69b02bba2e744f5562e242066c28649e3f575fa230b290585f243d10b8c562728e1d5dbb58382d1a81360a110c5aa40e6213ae112eb6f85b2b24d255c34369c81b32042af28009ef1067ecaca1e1b4bd4ea136e50526a2a22c102f68e25505436b37cd19ddeef25bb27faa1b2181bf602a6e7f350e14b79bacac13b28010275c57b77666d2691066ed89fbda4c720f0437bd97de721150d4bc6940a16342520961c7d0ee33d454b3c1f561375a41ac0f05c0f6ad87a64680f8ae6662e603d68c79dc8a4a8b2944d5f7ff824542d63a5390aa1c94cc7af61255afb1270a8eec03c2beae267ffa909ad123e6f9af58c930480099dc3f703b6a479187eb91f99faff240da3e1012541c7a80a24a33778eca4edf0836adb56b42cbad2beef181f326b197068d342ee213ba199cb3484c592955e278b6cc14e6f218e241a4fdb901741264ad981a83ccb9cf50c2e4531730bfdab42411637a9de7b09cc11a69621008fe9aa20c9c52ff45706f1a6168ad60eaedceeef42f06dc5c73ace822a672ed269262df5fca887e705ae317345faee0ba476d000994b957a33cf2856098b8c9c2deb3fdd399af4a411a11ccdd281157599fcda7b2fddd3b24b14e22b00953628058c828741ae5aec7167f78208d105f8406ad7d4bd4ce4befdb6290e1f387989e3ef7c300173b656f9b0d621c8fc0fdef9ea7b6d4652058e6eadab1e256ba0e9c8a67b44f6a62f0fd06dab5692542f9ab70f13a4bb9955ebdc203dd6d87426d61dc4af0dcb95fa1dbe95c9b8f880f365ca6562ce47a54a7509523810c10d3c7a4979c233983f4ff7a249d394316c0110f28208db2ce9de82026c8d8ae0dd3c858679f4303b1a15cdbe32b12de1b7a00f97ca77bf18bd59adc56cb52e5ca4d8a2bbd4c77f89ea9269c477f42580ee5102e9caf150831df12f554352ae9e4f04134ac22c2f87093bc901c97434019eb53abf102948adaee65a0ab00e2b1394c2f4b409be34a85dbc3de909c32ba9691a5a49445a7b64d8e3b42c4713d64638d2cc4f2a4d84755b21db3326a9099b3aca131121d4e6d97c1942d2ece74758cc36d037b5a6fd4ea3a6cc504300c2c66a765b6a321f05160a1d834f51fae2a3fc7bc8e393e0c59da4024d5e25558c04f9ce5a112f2a310b477f7f48ba069c42e81aae73df4cd3267d69103805b4d6c9ebf73c3ca74c7aff36ffd86370de3a47e2b8c74f1e02191ed2dc62b04551bc024508236bdb1165c9cf1a59b201cbe26d7ac6dfba06347a0e0884f50d5ecc8548b76582015f6e500c924ab2ff3efd0fc9fbd53a673150774ef39e8f04a411cf406a6a1c062eeeecbe839b1f2f79c187a1c39b6f5bfacdc1e0eb8e896b11203818ba3b134014178f1376c818a849ba6dbd861b5672f25a48b965ca35eb42eb0e37b5efab3506632be093a088c966246aa37ecd1023eb8ada8b72793d6861c8a19cc41fae2dd4089ccf427b25c6913dcf5f72a57ac649105c4382300cb03a61f6cf535a264773ea7efde961c9242fe45b01943035b7a85c7b246cfd69af1748a69e512594cc3c77ea1a11479572872b9a8bb50936cae415bf5daf27979635eb9ebc23eded6f1e0cd6c02b725f6aa80513667b100180281659be1facff678aa8ff7757c90bfb0369ac59fbf3b8a20845c357de73e4b37e63705367a69f971355a886666eaf97cd08d7d3d7774806ba6c99c5e5b897b29cb4a4fc87157bf5e899a52623ef45cf59c929e5527896d3d30b4217ba9459dd6b668f5cbdb04202cc671864142b2496bbe77a5ccc70a59c37a07259bbfb56a434e77a47c08396f99e44a96de26ebd7fe536d2b983bb34d30a925b9080f21b5f239bdf4b5bac9aa84b338fad85c95bb357cdb0f426386839c1e2986568a8714433c0c1a6fc060df60dfed6178284d8e606d45f2e3ca0a5bce7c160ec1d961bad436b78b41b8578e0609fb297033fab6f459d292f43631364d3197cc4a9a95b48c0b90a314ca0dbd4a8d3d8070ce8d34b131978348f7e9eca87f6390b519c9e6b8ad0b7edce64eec85bdb362e3ce29a680aa8c9f802acf345a345a2b5575d90835c545ee048231b0e01e2a88b16e6b846fe9ac7b29c16c69033ecec94376e108c6b0761184e55f0a17876cc7c69e21c49cdd1346e59ada77ba5c992936525fc09148eb82462832b9e63f13b8632cb8bab20033da1e38c33c82d55330696960854ccb3cd873b08c799ba6de87274f268d360a5d389bd31b4c69848305e6dc41471ecc43201fc4ff769933f4f6ee66f188e16b56142f385ee558490c368f02e07a6c8b34e5a0e9dc491967bda2c00654c8dbd591b0cf7f84e3a2fcf4204394a2090ce16583cde9d8853f30da192c35e38299b11d8583059fc8a20a00a95caa0e97948e3ed9013c13ed0240434d01229f17b382975f970cb0309484651b6fa76f0262f2e1ed3482622bc172957d28f0e14f37c062dd01e3632df70509cc12f1aac7316366a075330f88d3963c2e3427620e5b95eaba6e8c9349835aa179930f888ae62774ea6808ba663ea8417c61a32d989ecaa112cada305fb53884dbbb8093ff40a43df07070eeda6f43f10538dca3c990cfaefacaab2aa374f39f275017eb9bd5f40c134a22a2820f0c2d5290b85ffebeab0fb0c85848538353ea872fed647888b41b92e34aa3a1812f39d901112dd19a304879ac9d69e3608e9e007877d0818774758a0d6e9fd2c15f89b0917e33b6c68ef87c1ea5c105cc18f3d71762af416308ce25d8ffd923821cce33f40c143237e5f1f33ffb7d4a556d95f7972a00181925a115954410fde0aae6ce557600699fa3050316dad1934da5dfa53bb5f2dc77730ee64ddb8f896077e5e777b90b7a586a06f8eab24774a53c0a2eb5a031734130f27f7c9ea26b99899768b08114b09f0626ed21c8ab815dcb644fb05c80d89a8f5f74fcab844cb597801360119e0d41066215b61020b4512081ba5a9ad92682b4070d566ab0ab0d3368a29e6c1a0ce0c2c6cf4b2b25e193afd3b8f38c55a315db52c2b4cda3cc0e820efa4e186cc8149e6f4ae8b34e0c00556f6dfa81a51d1b2a450a596c4f572c69879620939a9ffadca5acd376006f000d512db7b618761851d52d39c41de465512c6770046a238ee44eab740f4b4e1de2b06e28ec841c94683b678e490dac94dd4fda1dd3ec8c93cbdc25fd3f39c312772ef4500e87e8dcff3c9849d0108fc395e795c5ffba819c657b4bc09ce7a15352026b4ad193ca41346f4f2a7b25256b4ef334b8e25ec6b1493b0dfdc39f1a6256511ec04c3a1818cd8af2dac28b3b5428e6828fbf8b1b2e71071d09789e27c046fcf4da67ec8e54c7cc85d26f5c19b1cad987f3ee62af33ee462e63fc26da6fa74a3628897fca5d19aa8b64d24b165fb2787108efbaf1f30443fc2dcad56627541834a666f44f3d954ff66d77dbf7bd9895db68b6d7c7507a2423db73441e9d892b612f06aa5f5bcd107a9730501f5b29d98e75749eb63d260fccaadc0ae54e8bab58a197da50511d9c5243063f63ffcde15c070b77dde783bec1d5e2cba4c06178ded2d439f33352a5c942706eb0af652d131bb16dc90f97960df7e33f8e8a5c90ccc3ff0b8ea099328115bc21c0f89ad2c9b115b6dec233208504242113bbd0e6329b2f6a44e65365a8c8b1e8d2f92e91f3069cf1b30671823439931ac21c35b30a4a930025db2d511e6c11a014d34bb97776a14e66daa54f3a0a97d2b73f1c59f17b5506c908097128e60025a0237d5ea1109f12a874c96fac8b943490c457cb2ec59c062f6d61b488e73e34598ba639c21ba4be6eedc0087cc769238cc9728bd3e149149b3c28acd2822a66245efc0a230a50a1aecb03f74fe13a8dd135c708e284dfbed0bd8cb1792bf98ec6fe708115f16e5592a102dc3b68b62766346078d2ab0c85de378f8b426c98f038b38d615275dd7320e76e4e0af52413d7d8161af8c838dd881a56486f97c3cdace709b82657612cba4b63409babfe90961d7b0beba01202180ba7096cac9cd8e5e105f4fa66f7074a4b13025d98aa9bd0c7ff42bf92988a8bd78db0045e2313fb6563e9358bd005a9c524981a5884a009dc9e9e66a89fbec884aa7513c162a3f1b0201612993f621a7dabe57a0fd167e4f75264c940fabe0bb9160a002fb7506537d0dc59ae96917c320da981263cd5b2ecdb8251ebb402332a308e58a49dc94e0af5d79855142008264919049aa7b1ade62cc18d4af2687c2f6c7ea63210ab3c0d19cfc132b42d261c377a23008d64dee4aeec096d8d42cfee951844414e66b5841418c2096bacb6fb84fe2b1e49a0d26a050048bccd08df64aeafd210a73d121bb914b95543b19d15da5306850faf2c261843e20989ff1f296238fed6fcd066f2b8d83346174c7ba412cae2fb42b68146b08735a57ac3363d7329155917aa1284589492dad2109f7bb3b1af755d038005562090a74276b5d371d25a24edb85209e5bab6b26681a0fba4f67d364eccde63cc5bfb6d0d3869bfef9508427ed3801d49644796f5e0aa54db567dd996413a3a473ccd292eab834ea2a9b88b2461052e65d3f3208321a93c43d4c4a6035d690f488eb2a5893dd541f306b8df3b3b59598a64819ae08310e7fe35c639f39b211dbb722c56fbec2fe45eae663b20b73db2f4fba4c2bd5dd3076f71483ddb015b2a13bb5f33f268c8961f8c9f68e31c40658ffbc843abcbcc007ac026814c0104f41bf016471199d602316daece47131e3c99b1885b0179807676a835a505ecf56e242c49957ab0621a27e698602a01101d81ec43a1c33370fa0ee835024155995c18f17241a7cd87a5f36a90426f9c312bab0667ab6acb6d09f8be7bc8f9814bd3780815f737c31034f39abcd9a0b74351d3d471e1dce002369f847f52087110ba15bb64ea305d9bd7424c6e2d82f83fd7ebbf4de9e5d881dde2d44d340a5651dab4d3e18cec9470b06215d9656d52dff1fff4dd47b37ce5755689ad4c1fbcea1c07c9e6918e30360252611b67542887a5210184703701ac6e871a25b448a370ddc87d5727107740073801c70e26c81d40a02d5f7ac067e189c6f831093db6420052c051a8e2bfc745a9a20f50fd7f64e3c3a24b083a0ef3f3e1c7daa94e8977ed60ec44793e809864dccf72ae956821d878e0e50d8396bb3c9026575d6c1424408bc0594fb3f2806b7268e527e640c428478504ac9888df2e5d34efbfc540648cdcb26bd092d45068c7cc01b1593c71f37541af79c2a29dbae78048efa32d82bcbbd4a88500ca284bcda1dc77ad32fdacd8d136f242b394041475db65c30fbf9b7d66fca1472b82ece2a5db960aa15e77afeadfe9c2c8579cbc195dc540d8ae0151c801ff45eb616b42f0c01367c5ee8861af0b81813149501c84d6385585c8a57f14d9393214f7c728626e1caeeb5f8f37e640b13762a89672721f3a976ba0a82b66634f0b2a9b0f31f334bd1565f9ddf3d570a336d1292800482e53cada6a0301fb8cc5250b761a266d0e25e6a163eed183a6869315d89361c51cffba16fe00154c8e431ade145d2cfe3104da08570b55cdf92144012ce1f24bbec4d830a2fac4a680eb159f1b1e1e6d2122f155c67383340af8239c34bca7339f4050bc715f85e21e9e284941ff4cf84c83c057d0e6edc3f3fe036739fe336b37d40d36163f3a68377f84e0795626aaef66c8db55b2aa674363c78c3deb652bfaaab1e6fb0cefcb68ee041e8d548a5018a76932db83a35b062f2622b8933d2882914426035a33b82580a021a4a098bba48542ae60a40c857e4d574250e91662e1ab3390c310bc69c12929ee9d93c400ae4deaeb79f0d9f13e586a0f0ec8e16481c234313dbf59c54c65f32b91ee5850700ec3c56a00d0ffc2a357943b0e6fd64a814d4e048ccd5caebda8c2a2093afc736a6861e0191e07b5bf6f3a69245f85ac771bc51102e270e352bec966871107970b4990605e7f80cd52e4cd113d63020af8c221811a5c36d2bf92737579f938a21b6d19aac3b99b950e76bbd79e6690dcbdb88daaa718ffb0e1233c03be1f46f39f4f2cbce3595c6a8d524f147815a1bba19a8079e93d6b260fd4e7482c399ce01b09943474be76d817a040173bc58fbd04e953aa6c681522f65f71b0e1045f32ba427c6f2a5cfbac8be9257232677562348d7b95b4e47d249e2c26d1479f51157d12842886a8cf73b19af0b59ede4fb5d84f9ba2d8cd527e7c1f67a2d2d6b31251362820095ffa1ab43dc42b7f2924aed2486e79b458c531919a4114f8409291efa4a95506d43a6e6d7056c5fd19bfd3830ebc4f44361f822cedad515772f4cb988af1f67885c884b46c1895b1fc74300ecf976d03f5d9c0325792c5486b33c9df2e788d2cdb0aca84bd298d68561af153a80024812c4c7ad9c4a454bc3274813e00871c2395aba80a30a795a8e29d26ac74e316418ca7023bf9f19c5ef83c6563b0503bc7915c18bbe2659247982b189e483efa3dd871de72d54651935665a244bf0c71d8c4c8ce0d9a8e9437a289f16f9ecfcf325562fed41f0509e7cb49f2991bc9252ef7fbde636b4b12844853498f9e742b8c7ca3771ea0c3b22bd9162b9dd001c75aac12165fbe0e708ac1b2650d7e3f6dbd6a476b5f403524e50c73e983b4fdb043e2145b5285adfed246331358dd911f03689722d53efd43201b877c7efc654c88daff28101db714c0cb2ba179807db23e414f28982ad932accf6a51d889f07e6cf0f91c21b6470aeb5ec3e33c0bb1c0f4ca4b23adca4d6340a735fa65e08c325d8da56935c36cf1c8c7a80a8ec48efd7c047bac754c7f33de0c4b41420d926f66986f61b62c13026f54338f2ad58e48042cc81f745429af1ee27904f4dc80d75d7ddf96e4e873f670db6e6751dbb8881b55ff5a33b8dbcb31db2c14efc55a6689f19a203f993577fd9abd5ec4965a7d031957d1678f1259bc1125afffea8d3d62f11c40ddb971adbc19cbd7f70bd119ec6d74553d43abf7765f84db86b45760728319c1ba1de43947bf16175b96a06a413d944b9d9d9416591d1928a536323e12392ec9849b33c650184c525055075f77cb8ac246e1027787f75feb5ccab593648693607fdb6101c54a017fd7045366d545eb83538818806836e6d7fd3d62aa478095c4104605897f9cbde23bccb424427a6b0ce23845c2623a5964b54b1faadffa3489626662028bd30c4ff60bf04abd5f3d82161d3393f7c14e03935373de9b739cbb079e1ff05c590d514a1f67f7d290c9b1765358c00a499a8d12069a2adbd1523a57c6f71d24bb866a2202aec890d90ed57b69b4b5fbce761a66f34adfcd6878cc524e9482f40705bb1f4ecff874bb81928495c8c4badc9191532adf7353262e7448299eb2763b907f45e46cdb3e1c9e95caa515d8b4a028dc3120be741628b003c06febdbad41f77bd78949dcc6c128a66d481f1958493803e2c8efc89f2076ed019817c29d5558c51683e50e9b4bfef31ccf6cfe13dea9d26ca8de17b888752a3ee6c3991bc3f5982afea4b1a24bbcf7b6adf0a412bc3732f93165f18f07aff27c0d9f97dc721062164f3775441c766d7a9efd06c184fefaae5f292af4c411ceb77b6aa4f154b064acd11e4e562c9705cd4a890c58812228fa6056bb5425fc5abfef9a938d61adb5596a16027acd90ea3f0404e1042340f7d61e0b03ac87b142f12ad47b3ced45b4a9901bc40b1298bede10db9f1e9e3ff133b4457ca9b3f6e7094ae9e3ef4f6202f9945e6cb1bd231e1b37b67bd0c2d597c72d601fd02465ad6b7c6d3ce08b34fcf64c7e828b1488184e061b3ecfcdd0e61f90cfb454bcce9de53338deb430a245a68dd9ab1998730ea61f0f44abc52cb4d755900229b7e29ad6ca500d78e791172c38730961cbbbe3085d2f321ec7056470de6fe3961a240e9c29c81acf61a63361b786d418dd7932ef7317828162c40d415fcfe6ceef11c62978304109733c293d4444e88244e2ca5062657067f53e44fa46419843040c9012b0eb961935a4203cf45413e8465254600f930f66b1224023a5dd1d63e09d774f63cb56c65214fab07f258175bff3883d27c834663bb74ccf1ee438265d1979b5aaf758d82a248718bf29b6c45cd135f9f53b14cd0c89c001c853968e5435fb5f1f82f39a8368bd94dfce18e1930ab3c5ecd8fa77873285a3af5b6ef84783075a2105a4068fae0193be861a2a8aa0af7a6413ab998748b58f8b8f49937a488c7914c1c97e68265489d663cb892de96ee36747e7265852d4419fa271e48ecd431bc94c9044cb61230b3512eaf3b254a2049abd0b461f2dacb089d2916212505f48881858bb8a6c4794568cee8ef45712d7ed6119d874df26d040280147b6b4460de429a46fea2c9635a50b6035073b819439b6cfea371d9090ca7ae3f467573c47ca3674bf8fe522603aeefc272f5244e9cf535701e630d11a1805fbde7b69a7247cd2b4e95d90bbcb4e00ac3b7fce4f5ce3089779514b1cffc450d41f6e9f1cc9a35c5431613c950fd8d0cc1dc7020fa8bb2b6298db204c0baadc670987fedaf24e84032929d88349adf8d3f683b8f1f96134b71d087f7a161e68fc4a362e22a09c4ea58226ee90f5db353124b6af9b3ae5e5432539e50a04e8ac7f15ac31a21b92fb33cfaaf6702d1b37f8e76f956b38acd84d1dfdcb56d677282edc0a14ccf20d4d6374d95d1f2a55ce4899c78805e4b67984790f31441d7acefc4add13e691056b998e6cb0eda0216e059faa178cb551f3b0983d1052422fa134b18e7fba1266417a44013de03c525470b80a30067b5694bc70e8d13a42181494b3aed5c7ffb7522328aaa63b17f104f712a6fb2332529f29e2b8fd7526484f31f40444782427d085733b1e514f42f3eb356f11c07880a5088f2e7798e57d142ce38a377b9c294a75e2cd81da277431e60c52fade5a3c03c8575a6b3aff85ca434f6490d6759d32ebe1761694ea850fa886a4b0aafe231b09bc8bf98e1f10b6d135cf585644a04f68fe8e6c9766547b8087a61d92cf78100c58c7576ac971268f6410bec2301fd3654e35babf4227605841968a0eb3e7c9493a3ad74dbd764c61f56bb521f8dbf846263c2875f894ad9a138bcdaf57ef99e4d0e81549d2d96fbf1cbfb5169e882bf64bb30e96b9e14cd8060fffc01739352c24789b6760c53198a707a4b63013265148bdb57c0eecc7967395ca9afbdb372280441ea36a12a59b7ef1c2a529b52f088e52fe54c67fd11fc907a4f9d7b4050c05e355f97ed8c422676cd7102ca1401ea6d7b670d54b6c37f773bd0389ba6cc1a0391368c090d4358316948ecbaab313857913cf61695bec62b9407449662b2eef0260694659709c80ac68ebedbd5744e142059108c5ee73a3dd0f8c62f3eba73a052ea2037b9193f4c194721353492cb11649dbb88aced12fb6811a796c0295989789658c7157457628f6dae259f8dde2a6151705a3475b1c38bdf402459df511bf0ddd0e88e935df4be13db235700e6bd206610b322a6259b3954665495d4421496e67dd3eb708d51eba3751b41220e4f5d65d73b44ae95631848ad5a485881d96a4cfabbde09b51d291e1c73bb2a980894742f940d3aa52dc82c016bc060a2dd4b82291ee1fba106bf02ae305e0124ef723545660fd093a1cdbdeab90f64016d7b05ccee66841a82d9edab9e38b9c9a864cfd4d2ed96debe8c88f9cdc35dcc8048b3cc4eeec5d970dc069e0cb60dbe7a6ce8b8c090b21e5de56defe0a4b2b8097c3e084059faae006a8d12bdeeff09473879657e13e8001f181b91452774b5f134cce3372dd2e288d161623192ad972b847b51480f0ce356f1c1e3871193ed7f4b7070209b88641ac6335dd1d010677f577c7ba3b1e48446161baf20c741ca4161a2a422677df6a90e94abaeb36ad63e7ae6de9623bb3743689b6fa5eba49f4626f7d08e6197409ef0768357babe470f194991096a3312dabecc6a33ecfcc8f024f1dbb92709fb4d7ca4abc4cbf5306999702ab19bac6f660319c5c5b5606a60d607575abc8c2f119922b5ec63fa495c125152c6eebe097d7aca11662549afb59107cf08fe0c44fac8255122ebfec43a6f3390ed638c0923edd28aa64754d88ae0bb50fb3fffd930eea59bf6e3114f5dae76f477441a03f9901e752b1989d155f760a32fd45abc38170f92504625edb96cc7130e7080a3a335a88ea907278e991fd6a294371cae8eee422afda0e8260be24df1ec8cf2f983ffb011eec3d5ad4c4eafd394e29ea3fb2b812d834fd94d60f4d650aaf01d685c1f7a9033cb8b3a4c2bd082e0ca03cea48d1b2ffabddf4daeab64005d4411ca42aa07131dc21473a1d04ebd028f8311d0dd23d5f3f059c38b9bed096237c3f28ef0138198c883609cd119c6beaffffd240b10cec4c649bcd926850cd5e898eb2fb59d85d09a45d6cdd7cb3c5a408367cf403e1a282aff326512ff63dd6dcaaf2efa1ce8206c29acddae5c859353731485559de0c8cb95310248b9458a058a41ad35868bcaca84f8c8ce14d8f94bb4efd35ca393f8ca14afcfc4ae131b67c865dc2624272bf6bf3c0be94a5cc1a3b415fe44557285b1cdf16ec880b9e5cdfe143cd600b943717b66accb141cdb13150d4aa60334405b4c13e99d93f870c558c42b98b7ddf6846f8340a5e28e28dea5955c942101250bf92b1d6ad0a9f0032d9d5c218194e254e65390a9a21ee0a4d41b149caf7bd04d9c3d7b4e4005c21bd547a3aec2a83a4cc14f40bbbf59a92c6976b2f5844849e67f69719ba85d0daa3feca025ea6004e8aaf5d2a620db795a78209847a48402275cf8a051ce1596c646192fbc1ba037484db1c07bf66856d2e60ab2c90fc21a21db68ad2f4cf556f5739a8bb05f9b56da730c511aac7cd06e7b3320555da689f687fd18b95789036b2d7f7d51371a8271759bebfee0f265030d919941d628469210ed2a832dd19638020529cd4abb3108a8c9b9acd6b07deb17aad43e4ec6b406b8e32728c2aa5fdc170b59100a025d436d5c5072f3cd35830c00406ace5e3bc078b4e0687e5372e2ba49ce8328fa6278a144077ac614b7bd45c47eb86223589644c98168d5b25ecdcdf13c7f0b14f74a955395d3d82fa38bf0311169369d266517a3e98d650489ad6bd9c667629bfa0d9ccdfcf2b95238a7c59c0afb387263fd9d14191f40f86e374a6d895fde2d31a246119977ad4fb702df90a9ab82b60567c4a04c68fb0f983a502f1592115a9b78624be48985fb394e0e361cb1592ec302a0f494c6b564fd607a1348bba18c116f8d0fc6a477f874454343d26c7ff462895e202a624125aa7c28e90444414103194483530ad9d925deac67a76042bd3b7de5990f31eac0990f8f0f24ca48bb733183b98e8d83ae86a76a6c2da24296eaa188b3fec61422dc31cc8b925c2362dba3d74f3bd1e12884f8249ca4835e952f04f86f33ccd785846a2f8d1e8c4ec1857895b03a316839ad876033a42379d86fb1a8f9e68613dad5e1a59257be1cc1c2efd9f633ca9a4781a40a24f07b0585e3deb5f27cfa2782518088fdf0bffa3def14c91874860c4534d7f31a8cdad813afa8b3ba0fb573bafb03780b57d0cf8aa64ebcd67b4d41c1ef3e64c49b27222b85eb625117222816fc7098b3e8ce2c6eda12445c8f7eb830cff214e100879f032fda0df4a765c5d8641efda700e661837ed8fb077661380262b979db2d20fc551d46982dff7ab5390b8957418d78197021c8e37449b797adbf8d8d01ad56f1818b4bea5d0f2c3198bfd9733d824d4c5657a671d38e00450a4669d140ba1615b790f5ace2630178d844420e27ae9f019a0de82168ebe1e2d46e27b23f7d8ea8bc9aabcccbefc895ebcb99a4ec2e2e78514a226ab925674d8fed04fdc9d5b788c6813e22e3cf2b3946e45a8aed5d2b78b960882b8a6b9d85653ed90ec03d45e1b63410343646b7c49267edf792661ed256b9c94e31033db51c34cb95946660e733907c911723ff707318a4e7c7a28e407b6d7009d930c8f078ef27b5423a918340ca17b0280f69f5098d4166440081d266ae86e0be8d644aa972d4351b9ff4645772137911fa561e6238170e1444845f8082058de2443090bb194700499876eb0200d7935070a281fbdfd6638686e473c9fdc2897189deb4d1aacec62a7d0c537dc5fa8756a2f42933e755871e18d53d30c21ce4340fed2a824e835db14a613417e0a171282321552ad5c46e76c373a1aa84dff76d292a290ed58bd3a6b44159c1dfc8b39cb2b33868ff8902f13fce54049e747380520333529a7756192fa87e7fd1871676f69c182eb584a469506917b9e79cf2beaea58afd102c971565668714f7f8db89af149da3df32865371a5b39b9746280da7769270083bd2d95578b7d48066219a45a0fb27d94743e295e42ea5ec6e863844f33dd6d0d0bbe26622a0a143b1572ab0e38ae5fe2c508856a5e1c509a2779038aef7b2a834a80fc2c12006552cd43db854a33c521d2f5580c345042f6cdd0d6a2ec0aa3c75889f41133f679c8d811dd7b41138c2a8acbdef9a37295bbc428636f40f8f3f095027430d9760572b625da5f87632932ee6b26b934b62c42e91fc9b251f649469078a7d0bf2f30ce907510b8161e47ef6d67ad501a5c8beb913ae61b22e5176a938dfd5b91f7c7e61415de939173360f3ff3b983e41ecbbc12e19448c139fe74951f251f3170cd12c3a03660cb125443c7f15b13a33e2368fd8789104bf5f588c07879ae38af3b4e6e7241a138dd52e2849a70d31d0ec18f6a6a4d8277123771e5ff7333f779856f9d1b0cf5bed811b60b5ffe0b0516589a0b7b8d9ce3beff8b532bed89fc8c1027ec78918b34a049a449e3095cdfa372ff2652380bd74f4aff3f62c7def36701dfdcc50b163fef3318279fd0b9d0585458282dbfc86facddb81beeef9e967a71526336137cc080c986c290c03e80b5990189f1941289cbeffb7f164de9809039ffa9a529bee17158eeecd7d1a567a1eca820b95037034ea43535755d37f4a3b49ff225e032c9203b27b85f926fa4dbcef1308e2965ccf31a1e059eb9638f2d5d9b9c85fd25991fb043ff8a86ddb53a2bbb1c720bbbb8271ff0864f59b847dcbd9213c4e2c07c374e55479b6411164483368a435f3f5fb49e536565fa450d5531a64c584d25e5270b90a7b2672a763a5484c24600e95d9a470981f8b94a2d194b814b44b2cf4305d9aa1aa1f54eb14169baef42972f1f84493f3208b656177beae44c05b4d9307c7350ccf74b193bb37ae51ead34b379fe6d466baca6016047924bf82fe842e71a15a85075677a18816f3a1665dcb4b22827e9ef0b1f7947fef436a7649fd812325e4ab4ae60729652390f2f94c300541c42450e25027d63ca98743e13b2f9a4660dafefaddd96c583eb8ea479c59f2d846d478d7d3baf4ac599a2cc336b8ec86c2302842a6fb940b60c1a75e03d52db39e0ddaa0d4449809c388f87a5c8989f663244aea20fb7747830855560ab283d2fc8ced7d5cf1f297c442f41a65dc5979235814381a80151125855f5c203eb414d53eacc7139909203004ee5758b1ffb1a5d54dec6db27859632746793906a65bbcd93cd92d43d9e98a0b58697847b62d3762b5d9bc7ae4142841d12eb71ccc442ae7064e5eda4831f9075e936bf7808f0f9344db9af8b22ca0fe1d1243900a181f0027d83bf9c68280e8f3be21a70fbd3bd6451802d424bb9ed00b0120b717e651812d8f892e83c0d107c9d1157bcb92d1f9442bfb7b28064d36c99e59f50fe39e92a73780a78a05a27db9025e8d225d002b5aae0c27a3413b4d10038468fd8ae4571604382d11acac37fca45c6bd58aea190a630d3100482c1d527e720163924b446f7e655a71a918f7b0e3239a7fa24890352467f122503ede81abb653d1a27690d2638227aff8448f9f12b86bb8e7e2865a4a1fb794316aa87f63345bd1c2b000170e5f49853f47f02ac6ba7945429f972effef24aa52a15392bdd8a9f7c4cd579792ba309a813f33aaa4b18ea600d992f6cff9aba80e2dc880059d5169c2377956c8cb54caddcefa8987d2011b3992e2f83240f43d996db3af5b68c51e55dec2e8adf5d65985d931b863d0cd95e22100de63da5ac34184cce769f8da1b86f6482dbd3790740442902585ed3250d943ef711854e2e7684ac1990c636fed787a4a70e1fc0812c6aad5950689cbcc03da40a6206bdd4f5185d54c375e5dfcb334378e0cf5e1b3bf21b5687d446659afcf564881062f9cf308faa0615465ee89530111c125511858ac900cc2d6cf60220145ed4c183029e692ee82aed28ea25f38f2df3016117fa5449356c052ac1628ef6f624794ac2aba9d5d47acb8053f73c644fe92c4f48cd9b255f344d9ff035873bc88ce74b212c836f9f814e30e4f60ed95149b101f15ae4b5b9aefa23a43c898d7c6f24aaf339a910c7a9a7e4de8469d1b14301d695914208a06c952d28d288b42d0b02ba1f749f765f0f679221942c663cc5defb20ff2bbb563f3940a21ef9481bb461cecc92e2ca91e03754e4cc9e42822baab5fa9b4b87a8b65c88e66f1d1118970588b91c08b610f4d1cb9cc49a75e8943c689660eca80dba9a1a20c3aa983326e9c0a4ab498c125f6089b2d1a47810d0850d84d3b4ec9a14f16c90eb24ecb1d6ba9b52a056ed36126942722b5a5ade2759f32f621e3db47a0fb48e37d98be23da4961a226ec1f1216b34db03b08f3f8e43e0be31dcc5510a785866c0772a9921bf9badbc6d91e942dfcaa594d41bc73aff114a942791b223054fcb7162e6ddd0aeec6e0af9d8a8c66172ac142a3703ead1be1207387ed361494148021fe1edb1fe91bccdc4340cd748d43038d8a395b77ee80ca6f54c48d51aef4c3ce2b1a784dd12ae1eb78089a708eccf20cc87d736746cdb3f25362d0787ed650d39104cad40088887348a174ce4ea84438164426ce70f7e7bf4502b3c2f0e5547a589900bf1d3a74c3eca8059f2515855ef6007a2935159585ed9abed5bf59321fc83c7c9d67d337f1b8015e89e607e18dbd5674a74e240c8714970e1fd2e7d36ccd548a26913be2b8ced4b86d48c9bb4f49b68d3e0e045c26a05806155323fb280ff9cbd4e189afd22f18a87018ebc583404d2e822c96686acedf0415e82b8ade856d8b56f6a299b8b20ed10a42bebbe9efe3be09fb04ab53f8c65829bd898100f4f718a310e6bf8679f1a5fc21845ae67d05e3840abeb5efb7d1b5d340362684d8b0590a06ff87234ef2cae051dbabee37d66a2e2c390ad8d6e4ae200f29306d20aab153673b80cb4a2bb6eb0ef6e56ae2e14c51b8d5c33a7261f2688948710aa487925935a3a01a89a3292406170e4d16a25815e4e90337ecb211296d1bce6e5e68782eb5a8d0588783d97f6584ba04d923f703e1f0ae5fc4228bb090c560054ada59ca191d0ce90a92b5c6bb62f8628f6cd1177248229f2ab5daa7a6c75676528d3a5a12307194630b0616f4c6fa67f70f19c156ac1e2e3d8ab3cfbe503586f66743edfca402da711ea5ea94b40c5d4a9a80ae6027fb20d20e52ad740d9395e2e65b3f00b027b77312435b22dcf183365712dbf215e2be5223b4bdaf6b3e23f7426cdf120574456fe05af635e994221fde73272b26ce872c3f6041787978cada3c4db8691994f104b8a55d4ad7d86e880be6bd530f6e9da2fe9340d8ed763345a1396165cc9dcdba48e0e62288d5a2b97b2b551d1fcd5659135c40fc52eb20fd360d244b653895ae164ce8d8905c33441e94268016858fdb368a42b9faa8ea03174d6d4f4864e6809570c6ead5630d48ce540b895d8d32409aab36e3bc04a5d59fc5dcdf7fc1c21df3b3b4e7120c624ed386ee8b398aba49763ae73e4052d45d86517862867158e249c26053a7fbe42d69f4c1c964ad80000b399681f4a8bd2b6cabebb2f7a8e0073c887c10f17977dada52f71705ad49faa2d4fad78416d9869d60f82d1848b34f986c086e19ac4db68159e5ee4e9fe3910a575c455c9bb2ef0017a853ed072c6ec110b383d7c4f4ad1be18027e45220c335a1c3e1442d1d15f7576231a94a99878e240f852fc44128ea935884875ef9a2048f9d44b24141d8b9663d40d4f9eef098732153f88150a7787776fb790e82ac9de75f4654668b8dc4a3953f7b89191d567ad2c8bc20636720d3bf08603e407f8d8fe899c746395855a674221e421915d6f0dcae357238b1932703ab3c9703782eb7a3716d4a2bcdc7bf49ba40d609df81b6870bbdaa8d26d99a6f4ea540b4323fdca7ebd58c0872b552eefffa15becd87de9b10cc5b40e5fb0dfadb875ccecc47b9cce40f7203d9d7fe00b3af8e58127be8b32b38b939887e597a14c62631f65a5e436e582ffc0de36f2444afc01b4cf24cbbe152e197e8d37d1352b6c2b3f506c4f45ad0634a8f905e80eb3da9c2ef9ff00518bee497f026927457eb1500f06562f743bb317feebde9b0b7c2f43001fe4d85af85f0b93d696e58c70fd7709b2ba82b0dc74ac58d088417c71b60f941c43678e359fc50b1982b7cc62eb2df433fa1a37be3783ca0ffde8438af9b97f6122c3e15f0b70996b2e8fca7bb49751c1c8827908a8bde709160a313cdc9f245553fa4d3deaea24e4600e54c039755615746c16442009375208794607945cc131b37e2eae9c0d48aac7de1522a820e7bc7491fce8041f1caa313a159e44d6411bb1b4d7038011ccd63570d1bd8072c7305ee6dc49c0d54205e514d3a2f1fcd29f31c18a523c63a64edf0716abe192478f16932127a64e22a308b4bed0f474d8a10aa0005760ae5513ad7ce77b3d3ff30add3a932219646b1372b6a2d6c6a66d6d65a42082184ecbdb7dc3b6c0dce0d7a0d1afeb09831a952c2b073e1b61be991e923b7e89e98b75f20864ebf3dcbfe859ee10ff220114121510aebf513c734e8d28b30087f9454e3257ba9981ef42f745008c7f4a4393e03d1884e09bad94f26875eb20c6720ce883c79c319883336ecdb95df2e0e9bf4d985397e8bf7d2c7ec2cfd61f2dabd267e06a21130439e4c4594d9e646830da27c72a6d2de991142087d7ea61decd73eedd33f9da35751251ae9557ceb681dbda37774155dc5165b1c39c2073e5891a357f11ce8557c9122438608110204081658fcf871c5155554913f2cc71d7147d41175c40fcb478ef0810f0c681505f42aaaa0f42a7e1629326448fc07851c71040d1a31629898943eaeabb05f5b61859cb976d42970c41f3976d8f0b8a2d2885da0a917238687d25e9692e251112c02f498d2e7c060b186d0c391bbf7a7a0188afa73a58f7d2b70851e74630edd15f4e229701910c8f42894b5dd4d6095e3bb0361ecd908b8376b8a8c82e3119f461ce4f662a4f415694410d0c814a34cf99c0cc806513608a1857006e6803de8c00db1b144d23fcd4ae14823c717ff62e408c4498ea61cbb1cff717925a76effb437afbaedf3059b9a2517b7e68b17f87b91b7931b73b7a40a867dd685ced69c8b7b82617d0522199e21c32056e8c9b1b35eb0f2f09f255d96ce05a5633f781412303b09896d44fa9792e12d5141655974780c1661720843237f2ff67ded107f3034327cf3705de03102f167bfbd71f7a02687d1b0a2688263e99ff7a5ac7c08c8f31acc4a4e7d762ea9976efbf491f666297636e0e872c7eea78aa791618dd0b16b5715311221d8914c3a6f8f37c35f8c183b24ec639b9cc4046612ccaa3b730a755f4e303472e9d8ed25b2d31e8e6c7afbfc98ae4afbccda614b4732696f721be9a4b737513ff643e5197beef610bd74db48ab886e3f2f6a1ea9325b668e8d82ef6e5fd1dd5a83375110f74e8cced1344dc49472b0dbe17f264e9cad9685f3734a9b2662d6e41963f4893d445245842709c68e9c7d4bae66ec9df6e6777213d9c2c60f69225da45950c47791f676b4377b27cf776b6a58e3d8b9c01ea2ff341153747b916874d28b762da6fb76f4bea33ed2ab29b2b87dda9b3304ea56d46284321e7f70dfb437fb8a1debe3d3ad3c73cc378f66cd928c8345f1a022522aa44cbc4e62705363c423ed49085b4d04fce482fda24fe67a501fa94271e4912b49a3c5070372bdbc1f8d2c7b9a7595f28502faf509557a46aee02fec57d6b385cde0217cb645b3a0e87f3183e0af5f187bcfc00b03595e79785d17c85f0c1af4f1c84c6e9977669ff6e0177d6a64cc2142feda26c39e91120ef68b3c39074ddf5079ad41c499a40ee1e386637e62948c267343e69aba24f3935e8b34628d527a96192f8aa567e732b54bf27a4d4c52a9d4492e3b179254b5b165f9c57c72088b38fda391bf79ed8be921a211da3cdd1ef719eef1cf8be11737052faee4e890b92385b44ecc1a9ef39a8659324dfb975dcb7eca3e49ae9d5e086568f8a391bfee1aea24f724a8d3fd68e4ab714ccf18f14b93d0a3fed1c873844fff327cc2430c118dc0f04b3cc9af77a704c9058a728838636a43c419da4daeddd437ca995c98af67b7c7ffe2e6f8cccccc4c4b0a9e9041ec6a5c9f1886bdba6037e8a322bfc052c7aee82425957aec5c521bc9fda6c8249dabad98fe7a2439bd30c3ae4d0cc36432c91591548f56d368341d29d1595a0b28d0b0a0164fd0a1d9685564a96907911c45f2d99de4c6acd5a04e82bf92a740dfe9279ff83379a9d7be4dfc4ded35fe7a8d1852d117703ad68051105b4fb36f13abb0cf5f2a0cdb80d76b7ce97496d6eea76938e6aad32ffc723a865f40d764c531329f40177d764a906c8070098e911afe4ef034c13132a3deef6e09d412a80d753f2a32c9e7b779b549423f4124f49a0932c94948343cf1d78f919904e3ee7d79359af6a4cbe824b77beab656d3ac0e8fae4fdcdf48ae56a3d190fcd368523aced223d2e8f17e53c43c7a91dd893a6c0fc3b41b3f9940e11e2f6edb3bc57cfa8bd349f4d1eb28dad3fb325f6bfd8b7f336bff370ff0e2c72f2eec9586913ee7fcbc5ffdb569df14362eace5796cd2878e41913fd1ab68d6d1e82c723473e87e1e28692c98f386b950b998739248988649f79b99749409a7719466afb1de2cbb21f31551729c53d49f329b1ebb1aa6df8826d3bc097fd72706014a7e895ce0c905c8f00a4998c9db06b913762462a6475d1ed59e94320514ad4a09d1cbe8228c6a8f3bccdd3141c2a5f6b873ed71303172e57696a858d3d11ea7d1703897c3a2bd1c0e088732694f725cc85a910c6cad55b427ab4d7bb2221173569252995c565c3cda9336ed4191b5cf4bb51b33f3dcd19e24e1f0a5839290cc8be60676441a81aed1c022ae2cafe9685667f9aec29668a48a6c4dfc61df45237974dc5a5377a46e2db9b58aae76b70a694fb6e44a765f5bc132d9922a1a8d45fd9e375bd9d468b060677605ab69937237ed498a650f963ced7140ac8643aff7eb2d72e9cab9aee0868442770b1f4d1ad130f7436a725e9841dd9d59fb91977c909aa6699a462357726ad84be16e4bcd9ae78e6a163dc72357f2d8cc28f94bd3b0e4891d87a3356142a5c4d45e3114d75f5419cf56b3ed684f3ec3361dedc9fb74cd14b4903c53f2548dc646a39934595e9463d204d829d25e4bd0e5f3f38e9756b0dfe5d32c7849933bc71c45c474e40863ca3cec5f44e2b1cf760fecf7a3c022b61c8f028be81829f65175f05d44724c9172e26f45f612f0f3d2b15de9202bad9775d639eb8c6098b2592a25e4e15536fa1273edcd31d8ef530910c82c437f94665d5a58c811b15e7bf3879c18ac4d514168462547867d4c0cabb3565ae9944c605e9db1b3316777579704cc54898a63ccd96ec0a2c96b4f32d44a278ac99b95447b524a4f015c184c9ad564b8838da7b8c34cf60405c4a494628861731eb687414cd2679811767e30b41e487bb57e13a3af54ceb987dee9c738e58c32c6f89eed0981478e18ec545d5769aa8e8a5381d41db1de542cb0fe562490d830ed450cab5dedb0be5078a0bd883576719546aa34017a13f1b873e94145efb4f8c07e752ed84d7093bb9ddc20a8d3e2a3e2fe5a07a67772a5c183fd20cf85e955dc0e45b380348b3bd63a19c3f0a7777243c105db110a99830de955a41b073e990cc28834abc3b10af9ab343964a14eeece7deb2e4604dbd982edfe613bd890973cda7f5ecab792b51fa95282a1153e192864eca89595534a0a89e799fe120a45da2ed11208c8a2db1bf396c1d8a04f8672a004199b50c67ced5c7a7e3842f7096ca759dce3b121189109037532a752a2410075328639403b0c48f627b2ac620eb417b57fd88ef663245ed37e727c566972f4000c140dd33bf3ea9dcc015c6a2fdebac13e512f84de131c6856e318e3ca11cdba87cae101aae3912100a8c064446db350bb03c9c1586450e36410768bc1f4910cea2319c32ff6dd1bfb06614f3e01a540a01a894110fe605072f6d0b7ec62ed1d0336ab35f2c352559ee05a037a83f0b6ddb447475ab09b4e7bf4db7c369f0fcb7546d2529d2992438f61d69248dd43327d6b6d27aa93937a45ad09b2039e4c9fe9eb4dc5912a39264f0e9e90e96b4e05e2864c5f85b4ca0078c0204be07132028d6e36d3cd1659910b919745aa7f2959b41d698f9e6a28fc594dbb0bfc5d7b890a7f29d9474aa5c2db4f7bf429bcf9b4c75dc19e64278fa914ae35d5a689a0cfe1e3e42b78cb754e88fd6acd7565ab89a03f39b9b4b020faed8aed46aae04895eda9126b2d768aa164ec2ef067b197e00f855d65b1a7f0e7996048c60e5a5d17f6eac4043bd9de0fe67c7d24838e8d409d47261082d567ddca5f36a3dd286616dd284cd9ccd756e4d2fdfa47feb2996f1392e94dee07fae89be4ecfd300cd347727c856f2c5e31824066eca00b85cc188e89990475d8b9a0ced259866510c3063dfbc04bf6d37fe4e4f8ee57e88989a08330fc9dfcc6955dbc5b4b9c5c0a99afc821ac7271983fccc54d0e6177344fefaec6e9a4231141233b829055f20ffb086733d8cd68b21c18ce68b21ced69c1922e9f6534201ac21ff6d169f76f341a559b66854e47a66c46aee847f80bdddad49a5a8359d03b178ba3053deb928019044158b6daa311b030a727ef6896eaf4b58a66a5ce22a9dd4e4f4ea10956b2a36377140ac51b314b71e3caa0db7be3caf6b57319e14f0a99b10f060911286bf793428aee8d2b63f803e11b5726e11e179ebdc27e72b9f6309cddefb3aafb61a99e1c30a727d397dcec921c75ba1f0cdcc91826c110ab31e10f95cdd012063dbebb5f8cdc61d86b0db6856ecc75477bb4da585c6b322076140285a415edd11ed73fed24ac1a7d668b55235c6b2ae8bd06fbd168941ddad1b399d1e9084bbbcd642ac25ff7d097005db6ace411077a6c66ee6e57bbd985250133867b5ca71d157d249e1b51d1f46ed8d951430e1e33333536b6c0f8419e667df18a5cd32c9aa35932d32067d0c9f41c803c5147a6a11a29ea84c8cae7f0210afd8b176126e64bbc1371268716f68b3333d1740abc0927daa31a8032e8b78d3be946713ac9eb4bf743bd44fa246131c71ce74525a190149868f412911425a1504908521db18674e78d897bd0782d5d8f55f6f8d0452f71370aeea46bf7c61459fb9689b22c9489a6c8a36bf7453ba9648912fc123a26e250217ce31add971899b3189965379986628c0a66117eb911ff9043580a2c471c69f244cd1b05843222fe64586408df903914ba289463de1bd12684fd46a409d104a43d5a059d2d32e5746a76801021c2f1703a9c902ae808c92ab365b6b8219c0e6724d39b6a4a3fd104a4590deda80694a35d3cae673704318372349f8b47eeb219d82a77a48edc9144a01c72fc6573f1b85ad715cdd27a341fed47e343b3ae9e1c0fc201e5807440429a75c121c78f686a4636a32a9a75c521c79b8840134f3601e966a81005232db9eacb898965f780d802650d52bef28d1725e8c9df143719e6daf9b69e8ccdccb020c7c40bc75bfa69efdaa90216391d633c86a70c4d44ee49166bd83179b250c3916ee7073e59ac8109d304a4f46322d2528215260fb9a29fdc0d0f7cea3579dce0e8ec282147094bf82164c8948fd704c444a4967e4e5aa52d764a474a3e261e52454a8065f2902a726a3e3ca8a1dbc43856e48a5ebed614b9a2cf746cad95d369d6756a044323f98467de10e18c6c3b5438821be249ab95e9ed9fb42ed575713a9c9066c12a14e18a4ccffd74395a25cbe186340b02a96227d316cd1fb7d39369cc29c215f2c7f9643a6f8ae085fc717c982d1f4724d35f35b67672729a356f9ad59f3f2616992a61b632cd7047459e3e09a9320f04a7001e425ad0c23214d2021f688107205786425a60a32304052de8c35603660821911999a110157021ca61836fd953ca2f6c10e51b622677844c5cf946fcc3dd6427a7b8c9d78e0a73ed64adcb3ea3cad15e9c540756621f7891c73e37d5cc32cb6b28f914a9221f41374ad0e3ec95ac3ef6933ef90b829b33550574a9b251cd4006719383a4daf1a9aa20ddfcc0621e23b8076fd1ac0fe6da897f8e3db112aa66f9088ba011cac0ae7ad53b61115996d7b03b318ebbe431a9123ae8f25ae842b9025df9ad7391205187469c767b6023bd8a98a7bd1c1b733c8947b3e4e3e709a04a103770151faf1d921539c6209a908350421050c8f19aac250eb68923e1ae39d83974c73c871cc44dc473269b82fd300fe6d9e05534cdd2543328e29a1182d5fea966b22a074b63d50c72fc462a71f27e97899317bbec6a6097f8bb76b27c77354e72e5fe611e244c72c541dc4019f199146c9c33b088fa58b9206e72fc76a388f1a2ce4535a3ca117f71217fa49b1cffdd78ed58173999742355a48f5c919a0055241e241e200b727c9c3370a600aaccfee60b62a95e58a66d5c179a1276208921942187e05af407391b5e3e52e5c218165b1e893e3e1d15e416f9c3e09ce97cf9401959d866c9d95182aa0cba491c6c38b2738fb1afe4b1fd288533d0ccb44837d829ea2b0a43e163afb37412520565515307a593d9ebbaaeeb92dd0318e89869d9a09db0c25aff068be9e44a03b3a8027e0a09ebaf0b1efbfc26bd60b1633fdaab30bb38e210ead063a6a5e6b0f359851d621c567fb04f11e1afd3fb02ef8671f4623fe4af4b65a4d821f6c6b9d8cd1aec87dde40a7f624ddc116d9af5c52aae1d4b0f233705bd7505f5f587e6aa5354176b73f8c026101b3bd4c5061b67a668af1ab126802a10e28045d05ca30a72fd14b0080c65835c230cbec803cb897282ba10a48a1a9c1c383fd624aa3a254b268a9e2a0996691bd78142563422954c242754494a6512bb134d0d9b0e3861381ad95844ca05ab522274eca1c31c4f80617d8ec7d67f308d8302fb0ae4c30eebca1198e4b294d82336a7849f189535dc35ad83438325d22c8963627691f01f2afec0a883a6a689808fd6be699a552fa5fc9a47e7d1ee3092631032cc420d72f2a6b28189a0c098b0edd57a483abc9c912aa3efc022a8a669218bc2a23d484d27d37cf61c3e505fc15b4af65f76136e9d4cc87cf6af75f24b86710b01d23ba69b7efa66823f7dad334f87d94d2e271c6df6d6c950b771da832fddce6922e06b8d25fd6b9ceddd1b878455a7c31692ffd94f97e45ab982a75298a012ce117dfc9041ad034919b6f4ce5e59d41b6c1a7a0c19667025672490845cc18f70dfc096acd4acafd4de8c38fa5d2357b069e48a06961ee6b6bd89b933fc98a04f3f038db450018db4d0c34b0af429be5c59cc04767916095bb49be5af753e9bbbcb611fdb8d7c78895d8dec9a86257679b15793f620ea6aa1ef3f10a992471ef2bc0ec4d2f6e329bcbc4dd31e6c9da6212277aac8137fcda39302e4930ad9a18010a39483d52e314869c8787bd4cbee7366b02fd997d2d6c618638cdd26a55471c289fcc1302067a0cb6fcddd40025ebb6da59452862ee5bb8360c61f0672bc0dc5289dc8da8d59ce6b503b066f0fecf17e31f2470f43e325fe7ab40291dc57ccb618a576787334f6c6acec18451d6bcc1ed8a126dbdb36aef376e163b768dd1269f4aa55f35ac3dbcb52c6c1f6310a32c2b6f9d8ae31d80ff234b16d28972a70969a95bdafc3fa8b08c77ddbbaaddb36796edbb42bfbec878a62ce3c9b35c560fb325da43a280e6c7f8350fb51eb29bdbed6c1d9361ab21e65be6f24496619e0f000879dcb01ced2254abf29e42d658a5fee5fb0200001f8c32e4a2f6aba4cf4a27dac568a5ffa34e697d1e4f92f9b2d333b926790223f04c83048112017f5b9b8be3468bccf9df2d022940815d29ea6a3d21eeab3d9c17eb487f6501fad666ad88d8c43f9a5e44781e11a3077af11334784e376aec00a704e88fd341aada60037bb6922e6e9cd5aedcdac4867a459759edba259427c9ef33161b487860030fe61990071c6b39684618510b75bed693418b5e1e214ab94a02f409ce21ab5baf875ecbb11ff70d1987d9a4531bd10b4470296f6d4a05bfc8af112c2ceccccd0b44c217e752e42e068b1bcd58dde1b300ea10cd3bb73317d6b0e7bbdf4c8a5a64bb11bd721944127dda23d18b7ce48d1f57a204eff7ff4a2d75581b8e81545adf52e5e8038965d60b903e214087ce3cadd5d602964ee700f0eeb11804623314b040a763383c01f86c20058ad3e006cf521f097922f2336bb813dd2acfac3f1a19b69d68ccf77399a1580cfcbb8475c6bc122aeeba274529cf66688142285421866ed87caa295959414cffb51286bbdc740a1ac05fdc3724aab4e3e51286b3514cada929f50a8f8aec2aeaef26bc77a584ffbdc88d31d336e00aecdba6e47d7e5686f7634530656e55bec8ee757caf7be38278400423286bfaecfb87b695bd115f7e9bd679197e5f76e5fddaf8db85fb754eed7561c7157b4167724cfa74a46f67e10d43eb1448aad0fe58340a09194fbc51c31ee17ad3012ba5fe7a8d7bddbfbb220e0d2c8f7058f471d263fa8af94e98e3d82fb301d192b41bee8fd66aed785a1991ae0b003412963f883c99d8b0170b4316d803b733ec06d20edc19432c93706c45cef47435ed765a22f15c3d0a8df4c36b0db26d2dd70d9b822560676c665e7223b97946f241012a89f0ec3ce384bb74eb34830cba4224429579dd6430e10d31ba7593b301a0e176c9df3a6189065e8e034ebd36866cc137f1efb816191957024bfc830881286e46dd6eb57c55f3d8dab5cd364b744fd009e6dd1ac01340b36abe23904fe621ee21fc442ae778146603770c63440ae44c80022d7935c4db976596bd15ceb272ce27ac5433c886f43dcee09e236cf16ec10439ca5e14ad34ed21e00eda59bb5b30ea50a895421c057ee75bb6322050922ae09e1dd745dd4547b880bf3002e0d2284b876cfb4fa7593107565c2df859528e01f964b1250d2f20f954bb29c6249a508f06f25ab541eebdf5587288b65131db99a5759f967f38911ff50f9e4edd3acd5278a887f36bba071d82a598f5ccdbb88f10f65f38b9e7f71d83fec7b07c0b11ee9ddbb02f087794f408ff716dc432355a211ef99c63b0b8d7704d0442bbc93bc07c07bc93b0b7ff74ea2b5a4f74df34e00fcade44f6b49959803aebc7b3f40cbbb015ade8f68e5f94c47aa7000663d52450170e5ddbb11f843795fc19ff5aea2e39d06ce7abc1391f548ef5ad683d22bef13aebc4fef31f087f20e037f367b17027b37e10fe5fdc29ff55e7110af3d5be71204c7411d5aca41547c696169674365a373ca3ba79c75d8d5609de3ba52a550853bfc8445980e8f71dac445385818440938790a49c169d6d7334f184409ad3caf5da16191270ff2d77cc061515c6d15ada5dde48993a736e2ae2dec287f33e32064dd2f66d689b81fcc2213b141d8b9683a72f8a858d36a9a8858063baf0969d6bcd6bac16eb01bec46aee65188384b739f453cd4bd885b80bb72ad5b22c683b8d62d01e329df348e75691c7635544e44ec6a10e042c4aec6ead761c038341d0a716f5c59886b9d4b7dd6b95c42e02fe66aba423cc69db172dfde54b91f0ccc22d338115fd55fdfb20e09025c88b394b888f04ee3c2f686f8e59d00f7c6952bfe84c003f865c47affb01b25520edb1b027f6d247bcfba1a29976200f8eb2db237a36a57b4376b1542880ae3a66d86e933be95742e3370b43595f2545723e529879d4b0a9e716736a994c81f0c97eb61fcc2da4d7b30aed6d25a02c01f8e2ce3a1ae7db01f58b0180e76d31e7705bb9ab71db7d3deacb37f707340ec6aab1d4af6fe4520cbf89cc8326ac4f8ead885f1d1d8aa096bad6bfab585ed4c31f027c4af0b71d3a56791303432f67a6168e4fa937720ee1733108f9d0dec4160afbdb9bab03def5bc98d884119f3f31c19ac874f07e29fa6b5a62d5d14eade429a05040c1200dcafadc03d79fedeaf81dce743c95ffb7cf2479e3fb99f1c92e74dee278fe479d5fde68e92fbcd23791e457fc2b03df84da32a9b4bed63c2e58ff6648b73b55ad7c41d6ed606a47526d73f6e9aa5e16838da6b76ddccb3655e21d3ad665d58751d4a2dcc63574bc3b9b41cada5a548158d0870358f843cef842c52664a8ed68232e6a7b5e4ccd53ef3aa2bb0dff314f1c4a022ca60d401459ec8c00532007972ac79e2091a6cb00b6d373e62924c0642a1788168847d0cc771b62ff70b702e91457219d8b62b7ae8c20b884417bd3b1791dc7028948138631be12fa633108df842b1143119f5592a1d6bd6c822415232fd44fac9844bb86ced459de4926e229de42fa3db9360d2a904c3702829121d762251e97e5c2eddde2f265b6ab15c2a9dc270f67ea6631f5d2962063d8adebd3b25e445ef4027390824127d261cd31946e6ee19e876e744f7054472d149f7747b47a5fbc5e4d24577647f3ae924f765842de826d0277a76936af417fbd24778c405abb2615f2ae111fe3c90bf781186e172177a0c49edbb404c8ebf372bd7e2438a98a5294799385dc001a397672bad75d64965a8c785735c5fc15bae89678cd876660ea1b55e9362776298d25f985e188546356c10a57e16666f0cab5a4631893129a56d15f0c418e32716e3c4a6ec5c6a4f6c9e6547013c497cf5b2fba6c44be34bc92b0dbdf86fe215895352a44a6ce9aff44c0f9640aba8b356da91075006fc4629ad357eb048869f59748c30a7d65a2d0065c0d7fa596b7d2c22c328efed189f29a5141600ca801f0084157f95d62a6bad95d65a6bada85ab18b524d08ada2226b5561873968b016faecf3d260d70a565ae6755d2a0cdb168a5d6543cb18be11ca17ee410fc5905372e702690c828d9f995415e755c5cce678ca3143e5389b0024cfc72618c933fb26b91ce71de518af0ac35ecad7bc5a8ef1629ff7aa5f4119f4d88dd1e5785d8a3d2883fec3be90e38541b8e09363b447bdf6529a087ad9024b8fe578cd8e328d3172bcaa267204d9a94286798b1d94012710368802835ce1060b19d6d33b514f716418c7e5aaa370823efb0360cb680b16b640232d19c661e5aa1d405fef047d55c55f5315b5d7899da8db6b05eab13b719dc3387c4427eab1631887ac424d1f9830d352372dbb4c0bbd18c6a13dc3aa88033bc5aa88550ea0cfeec4b31489039369d9ae4c0bcb76ee7242185a332d1fcc696267bb3525b776b54ba47b9a081444ea8c5c75abc1d27f7126d6f0d82fd6c41b345cd57cbc4cb63151909d5049d842310e95c448c42c2f7dd4c00b332d540b1e679869a12256a1d5a29200c52133d342b18f8963ab45a605bbc27e31f200ca684c46f605874d4a29a594524a29256661c9621c11aeebbaae5a69c5df5523adf18a914a1c019bb272040b6e9b03e6ecec400cb2075798c316934a2618c9b3093bf21442ca9d4d4aa89351ed41d911081606e9c28e39a9608525d8221b14d66ef0d2cb914e1478a5eccb788812bb27e6983146288c018592189cd3fae1a605578803ca2669dd3acb1ed9e5cd4610e12a667a237661b4e412b15882cec6ac107a17c6da435df157e732736357473238c18a2b40199f6ad8ba27971abbae0bbbe675d5d3eb9ab5ced74bcafa78ebe7a43a99fe6496ae5467529d39eb9c73ca867d551167192c6e29d8200a0682285ede2e370c97ac65c2679a8571d7381c2fd604fbadac4814f7c3be64a7f9833d9a0760a09802c74cb334dc5b9c26d2441d73c6199d9d45c60b6c97024f50e002db13cdba62469fe098509fd11bf20f7f9891e1257c2b447ed81815c080666d317f35cec0706fd15ebc9019cc4cd1ac0f1259f9c9f24774121790f7804a6c297da5aec61911cf9e4c500cb31daed108ec7abc7e57349ce16b25d6702bb0893fe28d9442e86fb1a1952b08797820cf0e4a2707622b2cdd706666a60a36fe896b3e4a29e585ebe5260a0525250315ac2042052b7af26792e19f3f140f88006428c4ea098dc91a692379c896bcc1c969b55aad56ab05458a8fd7b3b3b2023d59b3d2dfe24584a7c7e747ce489a56abd56ab55a50e460d6a2504f592162c3d3f259e9da3cbad53738393a3b36363636363636ad56abd56ab5a0f0813ed007fa409fe661c3d392b4c7e7a7679aa66bdac6c6c6c6c6c6c626f2b45aad56abd5eab169e1e4e8ec10893c36363636363636cd1379224fbcb1893c3fd88ca541d5dcc6e3016d6c6c6c6c6c6c7e6c527cbc9e431e1a49d33b3bbdd33bbdd33b30a72f1ab9ea63d6a250bfe7a5c8954c06f6c36872cb1c21f8b0554a2dfeb09e35f6c430574cce596b6d8852699c4bd820ca8c1335b114d0ed3298156c06187e0b77b7cb22b1fc0d20cb8f099bb19ba506f27cfc76c1089b95c9d0ce6565251e6b9a939202273645f6eb925726b1f7fb180e7c6c4426c419fd79e7757ae38f38a35f634f26349dd0c6264f9d78636383c54a840db2ecbb1044f922f7ebcb321b82383d3920fc45ad5342cb5dd6d53839067fd8348bfe09a902b7ebc6dfe4aad44725926f5b87b7abfb05baba5f2c12b475f79319f4a2ebea37d0b7ebc50f3a4b5faf2f1d7e8731febaabd7bbae6250c771dde34d9d56bc68a722d7ee8add411da769ef1ebb714ce7ed9f9c72cab96d31ca29a79c715362bbd6995854b7bdd340f8bbce3dfe09a9c2f2eb42d4bde2cf46f7faee953ba81e84a74dfd22d77535fe8ab9732652ec621739ae46f76b1dc7fd62ee2e62a8a87bb43a79dbae6ddbb60bd71f2f2ef793d0fbdabbb8f1a6e4982a853f5409ae274c624bf8b318ca1569d4755554b55710080412e197ee1b8809d1880b7f31f38b99b0d697ee1a4e3e96a3bd3b08043a082fb1d56b18abb673bfce2251286bebaf73dcbf98993d350a72fd8b381afe62e605aa4f4c1008744dae3e7bbc01752e59476bd775efba6fda513b30e26058ac17f6d520100804ba4caef77b7741f7abbf3699cc5d28f2a65dd8d671b1b379624e9e998b8a96d9e84915d88a5c59912b52827a3e41063fc891c21de4a43eb09b9492025265bb249237fc2855300c47b8ea7f28ab655886318410a24eb157fcd179d10c8394568ce5cb1c48fb52c136bf121cb69432de3ce10752ca191f383cc1c6a9329a69e9d14c6669c8e17c06b3d26a25ee8e2dd8e4f326f1b926a05c51bc853eb0c1b6526542ce09167e03b206363a21b614746beeeacee55ac9dce9b13b917d3b7655dcb7c316ecaa3829e513397ebb57bb4681fc25916156f2843cb9ceaba22a62db62a50a86b2f55863c73094ab5a52b54cd4cc427e8bdb5651786a44c946ba5bb6c8f19054f493bf512bf73f6fc443ae7a349331ac5ecd042ba1e4c855c7951cff8d78641eb941f7422fbebb40c0557ce87e442891eb5172a40a0a4f4eceb0b640ae9f06723d0a8f54e9e841283c283cb9b773975e0857ddd978d620d532149316d8451c0b44cb7ae920893c0fa90a7d462b3da4f8eb67d98535c358ad38c2ac48231b84570193a5bd29f1115b5f71d2c86da5bc87674a7bd785ad3c0655e825b621b9827880f33309b8829ff2856c9988d1608ad18678ce46c2a4b15bc6cc23ae9859e5cac56a2cff6171eb3adb603b07877d44ecdb4bbcf60d7b31c6ce46c433868cf7647cbebaeb7579961a335b8a99238e31e9c4595f2a683ae4ef9894c11521bcb218b35f7f1183c611289d5d59262fcc709665107226b3593307b27677f7ac73563a5b768e8dcb1f8413c219e9dce69c734e2c574a2badb5564aeb5569c56add64ec8e5cadb562734eda439f71f3c7c65f8f45d4ab5608218474e21a2b372bac150512c56ddd7175d6392b688a9b6b27061d3d818da775d6392ba8e340f3f6e74e2dcb024e08277dcc226601278493fb849737c2c2cf4748e7a473561426f3d65c9c47629ed65ae9a4909b7db0715e1cec2084f0b573818771ce49290a6c7c9d93ce492d767586c54de34ad093e1e73ca7c3c64f9869930f2985913f994e0aa9363f2d14b68dd6c086fadd0da14cc70883684bfd392f4a7bbf8d410e16720dce451f5cc36bfb10dbbea86e2c427849e7335cb2193e6209ef9d52a224ecd81e11f050463fbb1665d25ecf0b51249d556c7072b93f89d80a6c376cd07c23fe210fb1f0727fb02d011e1b6d3f42940f8899183128876e564986cd42e559f1d63c458c14692f0ec9b544249776e460391d4e47aeb22e58698d2024cf7cd303dd00ab60842bb2ca94262259c8dfc98f259cb4a4894756922af2259aec725d5e55cb9675c1dec00e3192a949a6a62ff0646a02320620b00b996621d3932c323d7142a63c4e909069b6376101aa986ae48a9ab6fc9980988a64fafbc02232edd925f14019343315698fe6f0918954b03d2ac2261e6c2292ed58530893f067512737ed793cf6307fec77d231b031f3dc986a322e58534da63f69c9935614b0bdcfa423d3f79067e912ed9586b3ad083f99e6efa4652ad2acc8d3accfda64ba23abc8132c4c46a21092e9737209a76443afb0a6ab40a6259ee42a906999d74e5a59158f32f1cc9feec4fce9f127ec288cc3740cab220e924fac8a8714077b76d2a2133bd1137a9293e9498bceeba4457293391d2d581e5907880f74e489f2c3f51c21f77b50a4d225fc30c26d91fb07c7c4db0f272f4723571bfc512bddc1e1d47335f6725870391c9066c10ca43d5a6fefc5e17037dc8fcbf1342b9e5a11a7c3e9c8155531f188d784f363bac1db0f12f1aaa9686f80f4e0e6aa110bd775c56ba7f4edbaa55f8ff73add614d375245e584fc94d824739265b7025e8f9f5cd15e4b086472c4273fdaa38722d047826cba31e1344b2bfd987864fa52a685fd389d9fbc9353d9c4c344e4a4058ba8a79f8948a6f0bb76ecb50fc6dec4a359a94c39235700c95c0fe7c3f1e194738515999e2322b3ab9eb49a7545b3e2156e9a05fa817382c5494eb3bad39fb048d28d228e6e14733392e92de87ed7c7d1648ab91a1aa902b168ee46aa602df4dbcfa62355600b904c399c0d7fdcccd6d3cadf6c5d379c8ead8145c4d36338b0f1dea7abe05a2da91d203c8694b6f031f1281d01e2039ddc2191ca375cb417a9e0841b2a38a1a6abcfa2603539d4c1461abb4137b21bf306b56fb6b219d8abd2fa6fb632b703d26ecc11733a50067d96058b713aa69af6683140f99a27532778c4164e54fd5fc42253d845ce0756757ae8322daa53288471f8481d07e9f493cbb4a4420f611c2e4e2718878fd3433f8d3e9a3779bceafd8d74655a5c34415f4397dacb15e5b1df238e5cd1371af04a7bf42934a460596ee740244320195e610e3b1c504f6269950aab1c100aa98ee3e421ec4408878b87b04c4bbcb5721571c496ab5edcd3e9be38fd8bad12d42390667d91c7a9a4e464337dd4c931679640a4087d34d22a32fec029419d2e03a2e0d35ee4610535b1252e2e84abd24f2e84abcde4c67cba30cfce86cda8eff4d2e7a964f2ee5c4c649744e72273eaa859ba163a4432d4220b46f2175ba86fb284239bfc4a3dc219a95f9372a594c9332ff52c2b79a9044219a9d7cec52447e82b784b08fb381d5a93c3d428883dbde4232dece9f374da2501f3e93975427d3b4913e41484324a1e4bee474b9053519c4cde708609ea742ab95fcd2647dd8f043975c20d3d13d4a9f492fb75367909df90f98423946172964efd5bc699987c6b13dc23d483e62d218cd91c3e5426b76996ea2c131c6754770a1f3ff9a602a4d71ed82fc2969851a7a7cde7d49d0bea5b343131790d984df0880bf62657a96e7252a564728ca1b904770ce28c13eaa6b447719af5a5b450db09d3688f5e02a3873e7ae8a4ab9200e9f5f5a44f215548f087615b098f6e1352c584ee88ae5c4510b6f58af8fa66fee04e8952ac00dca3564c693444a1918aee281333521a3688423935ec644f0d3a793ec6ca11793e0b1408e1504172fcf053e447febc3cbfd2ac20652892e7bd184798e439ff6051ff4420f3e9a57f52c84c493e4de73ebf75af251fbdded1bb7be3caa44358c48d10c864296ec43fe4ee7126d7679dcb8854723f29641ebde2afe4f4ef4637ae3cc25f779273370ad2633a1bf5a3a3346b84554a8cce9dc32fa48f708ccc5757e346fcc3758efbbeeba3d3d129f65e46a77f193d86a7c4a8bd79097c1e1317fe5e4a2e932926bdfe651423a55923fcd580b92bc11fc9643ac9270a4771e3ca27fcd5dfb8f2e825469aae143273979d8d7ad2519a45fac43d4c00bae8f3a52b8178115649003be8d841bf917dbbe84397b6c4ce013e48580a994718476c3101e8210af463f700d045e73a27ec4518476cb10fddd9d271a12b5b605701108618d3bebd9312476c89dfba1ea5593d4c0073a60cdd76b666c1981ae3e79c73c6d44ca5e43029d8cec5e7c37263b674dd24068af67a6ef38aa999de86c42ff4f22f528a0e7c32f3f213f7b0975845dff98b9962945ef5bc7744a691670c14933ce56adaaed63b57c551523abb612d25471e9d83e5e0b8b3033b37ad79cca37851c654296ae4017596850dd2b062e0c9426418440c3ff2168a5f7f4a096baeff626aa6ef178c75367a8949bb1a31f313b0588ea9b91f233312f2375e3ca6d2afdf32f2e03a8b710d328b33f8c418bbd750233bc32cce20878c82120c194ed48510c2d8402494504279655fbfaee6ecebbb4eafebd4cb178fdbd4d0cc5c17f5f21580fc72512fa5454259bd4f0f884c2fad709283c2b11f96676ec1bc8702044a7ea1d8435191d1226564d8553c5cd47f008105818541c250933f94098a13c12262ce9885190a8141ab5fb041948f46206c624b21283a3a389013003a379814c71936a037c3efa817774486dfff8c659a9661570d2eec050d302cf27717381187069976a26d434c7676b6196c9c8aabb15c07daa1f19218f97bc6b2dff3646041210e360b15030bdb0bd9130a0cac8501840416690864fb77c44723b7dcd95028edcfbc9a94949595ac43342a6222f2821149274609257fcf26b6847128d4ef025269086967a70516b6571a999a25cad0e368484e1c6c96cdf0f672c5020bdb3ba14ab899e1e53569afb715a04a521d548185eda5541c97e17398c8b89db8c8b614b87881c19e0d052f7e996c27f8f5c9dfb7998be5b13f580c00cec8ccb06b2694e1070bdb03004a736df23e1c0508eeda1e985cf1c14220b81cf8688242ed01c67bd5d7f97e1dc3b00bebe86832001c6c168c0cbfc108000c20500000035f187f01c3c5090c18304c60a860a44a5027125389040346c76d1a0c181976c180516170805219da404ca1b2d0485f228ea9793ea6becc47f9d829112fe540133b26e6239e9d93f310449102e46eac87dfdef789314c5e191f36de0f587b1bed98c58cc9ed867608656cf5c63c8432a88b2d5579ad3e3bfdf5f85a6b1679d428b26cd263795e7a38310c472b85943f98c24d864186d804c9b00a52309211606115a43024c320435a594e6aa7ec4d0aa82bc3f950c087921b255560cbf38792fb7466e50836898959382548958abd0b574cfb9c0ffb615262b8e3870da264124b5d142d3289c821bd13734a484e7dee88f8f6a9fbd4bfa993238ca752a98f5824ff4e2f39145205060602c35e01e0b4a15439b9aa572e1eea15f7cb64525fa0a450f087e5d401803fec059ef8b3159fe0949753f84b9dc39fc77271cee33014cd1d7f96bb0acb10e6b08b0ba1f7c73b0a624718262587ec512fb9a320f684f1ed55f13387f0cb85e35147dd386d684671f8e57ae8d692e00bbfc488c2a954f6d49559addc51a8185beac6542ac6185347a5708ca9fb81958cc22ff174835d0a7f3872eadc65912fb8a75229f9a9f37328140a8592252814eadc31873afe64f28fbaf1b30615238a45a26efcef8b7f322e9eba998bcbcf1d37982ede9d8b0b173529f96685ec45a3c792182364a956b8ab24c541716282438f16857a8ca9548c31868eba3031a786ea3d48ef96ed2c5dbaa6f64e77253746dae276bb05f6001d0aa9b282b103baa5fb36baa78b2e49e8964097f478314cbbe8daab695f912a977631b9d24e35d9b25dca16ed4e0c66a566de8087a833ccc4b33261d3a67365c67753da1d7dc0c49cdc13c748633cd239b96b0aa52879bed63a25c533fac8f126c790bddd36d3cd61c23e4a2917e6d08db974d14be9a477e9226cb5b0a5c3d26b9704cc25122e7df6c63cc210ca0861db5e7729aa207f1107a70e36bb13aeb6db667d3139f4f6b6431c39d4f9524556d0adefb45963cc1ebb1e15cb1f48c914bf4c8c61ae73a86899beaee042215088935845e55a9bc8dbac094d9da34016571b90129ad6d520cd1df1b366de40e75ce7529b902a50febaf2243704a58ab7816a7b1b067919f4d9b963d65c20aefbb6cd1a4e48be21f3cb657abdae75aea02640206c2af907930293627ab940a150e8734768c84be954e43a4120093a271fd31914da4a075d9280b47fdc33d065d5f0cbf512fe385c75b2acf893f5a5d2bb43a9620f21cb04aa0755acd21eba4ca950251008143af7b983d3097d532787405d0daef4ae6382cba07321fb99c225781444a27009c7a1be59dce10d77894449d14fdeaeebbaae4b2b495c3f779cee48f4be35ed5d9fa9939b728e40d7f077fcd5cd7498946a0abd56ed75de00c3ac45a1bcca811e02e12fa633d7714dccce923eb8d3e79608e17983380374ad82b04a8b2da9d2c4e7bcc106939243ff6052f2f675d94717eb6a84feb261fbab6382cba13701baf7a340f88349f1bad0bcc1ac09711ac7711ca7552965fd0da21171ea70b473d92e9341f7bb5f4aaea13be2829d1974aebb5e65f2766152b286e70d224827be4fa98832938a2803a22842d85e24f62285cc3d48701da6e03a0e9996eb9b0a3a0760fc61d104334ccc14c8cce4f0a8a1c9818213ccb4a840a605ca95bcc45ffc628e6f29444b3d19a59cb1e525ebe4a00eac7c9f461c6d4ade62b70098b9f6726027a5320e5bcbd8525629a594b14f2f3b17f9beae5ab75aa5ec4b76a5fdab4ad951deee4f8c6b0fd6eeae0d2568362bcea38109561e4623620ac61c4cc712e9928899cb81fd20cf1312c3ac95dbb11fb6b97336b607cda5cc34477a0573a6999bec5cfa94520e7800266235baa0fea29126ceb84ebbafbed7ebc55c10675cc7fe44b7845dffba7d451d39629159baafd9b95cf3baba4628415a7644d6b46b665875496c7e4a1484f6fa118d018142f0b439ec1c7af2e14dc69f97391cc839bb66d30266298f5985b4e91d31976ab23d2c59d2bfa803f4d247c225fc451dd99e929ce4dd4b0e5bc564baf6974a4a5e7a0a8f825812acd578197d6612fcb26192ee1f0c9749eff03769b626fc423ac941ef4e09125009fe6448f86534c2b8145d106794428f5ca9341afd035cb6f8a5f4ed366eb003e10f87bdc52c7274d0953764069d6ec961073a4bdb479a68c4e936ea387d24ba6874c25fcca28fb2089ff027934f175d2b12592bbafdec5c2c8b145dfbd3d5ac7d772e167443f8f4485352f2a8a359118b927b028126972d1e8d405bb638baa04b57f4adbb768b1cc9b5a7f78569c4054bba3dc94ba2d9839e744f72bbd3fba2f48dc2ae63695b637be92c6d4f2fdd787b630e9d1e5d108d80f9f42dea207977bf98dc9d4aec4bdf36d88d441d0344a2db8b4637915c76a26f2fb9b3bd2f8246078d46f88473c9925c7b61b84c7216d95d984d9144caab5a94f6e66934fac976d4767bc5ec352bf4b999a44aaeba0bd1472fd938dd826e4752bcc82190c9a097b08ae42fa4834e423ae824902d811e4725278d4abfec47b7ebbe984c7aec98b0584552bae8aa480eba8874c22a126cfacbe924379d4ef2537ba3833e3ae9a0fbc564d147a063a20eff3aec9828f908bf949c845f4e3e3a0c5782677b262f9d3cde45ed94901f9d76364eec55f8d33eb777b784ddbea1ee4745de4a25bb59d0b68d5eba456dd740db56b21f699b0d6d38742df41bbad7acd0b49fd7dbfe1d458a445fb055a8f4ac95b5498e324433120000001314000028140c8884629150302ad766290f14000e98ac50784c9a86498e440821440801001000000001001a04006e2194db9358fb9af3e6329a42e72a875ebd58afd2fcd4f98ec4b8aea9290fa8c8f096b9c77dc4368d00c0a65d763bba8893cb20613547b12209c47c83a3066bac712ba63966c3ac0184ab647b5ffc47c6df8dc33fb54689de1c626f4d30b57da2f9df669b0eed9d836acb18a839796afa417156ebb0ce938db75f9610b132d32d4aceb39ed9d807dbd0ec1daf12f02b61a43e6ed93dd8240ddd001f369a4a382797f56867e2d26d712228d8c437c87325f7f06587419556f3f52abc8f96222bf81fac43e41fb098964bddb00af8b8f0f7717d686df108182ee8a79e2c19824332583d1004cd31e04164390c0931c5b0eccc914dc4dc52538aca405e7eaf6fc63b62256d6f486166c7a7728a1f8c860d0a4f1937d9032ca27791c0b39eb086b19ed5eccd981690d5b8f5fea47adf5f25e412a29e6e89cf99388a2793996e005ba813a387e4348dd0cc96e7f4207a5bb648082d5e410bd4a815afbf88b3d198fbbc123e1e9cc66796bd2db3c4f68964d029b0f0a96d3b88dd0b41e9d947b6e88f50989546bccb0aee09a63f4c1404ba5314609c430a548fe512684e46396552efe808fe2972de1cf49bb3a8919f8752a586dea516445f3b27696eafc406a177430139a5a4a6cec348ce2cad5972233f57cd2b6dddfc611650df3515feede2674afb08a137c8bfb09047e8b4409e7c338f3b1b59ca551961377e5af622185790b83ef3b46d31e036874087e693e0efe8344a264ea50375c20f8528be84e920e1c0820474473675ac7ff292ded7365ecf4f0f90dff64c45690f07227f345ab1c1a54ee307bc2dfc8f304c1c35a43ad5258622d132c71bdf7ae01c127380358b3b97a66533919d38a40cf2be9ed19ae908d0da911d2bac7a8279ac206f37a17f164251d100ebec61590178b1490c95b93c8f33b74c0a4a25e5dd7ea9aacb70037726ffc45a5e3f86787f71d26ec598d53789a55f24fde9c20a61df6c48ffd8b17f0540503c8d235bba258737847b4313c26a9f661771056ffa46e54244ad2f346752e877a324dc99e2dff09fb6463241f60f54564a4145a805a3bd0c33fccf699f5452d0cccb21dbc5aff0adaab7dfaacecc2b3d2a67775108c9d397ca1836622ddc4a405cffd657b7225c8436bc579294c3a2e6e0ce8d87584e75985408b28fba93f12a793989038371e58ff1ee7befe187d56ac70b823fbca3f778ed229b15e484ee1d2441ed9877116679a85c051d429fafb4e3f7de69bba46db261bf9cbdddf4b4d421672dd71c0806c4a9835c1cff629d13621ff4474f6f8ef3eee85dc173a691ad513d9e325e52e8519b0ed85453c57fc90b0bb916c34c5bec2d4c298175aa9b7eff31ab9cf4a7c1f432400f7adad0d6a949a59deb5fcb6caa7ad742a303199236f483b797e021b10b433e71764ca0c5e37becc7ffa385cb86ec59fd9d452527b15aee3d681f968a62f042db4772f9aa1d7ca6d9ca0846e4465329310627da8892b71a9be9e17c53ca9b7a6e9f134d77bee57f1ad2484679108ba4f72ebbd5f71108f8e4b5c2942ed7df39e3fb6bea1fbab1aa48cdbe8ac126394558c6ed15f5fa260a042ca5e2bb5bcf3a503eeaff9f71155774c2e85ecaf12a65519ca9222beb2e2ee973aec42e7339965aa5eeabdf5f233e6021931aa0f2c31e04e9f17c2c2baa0cb99228467c8c052cd2458204a235a3c70c8d2821975a88f6365b29de914648623f24f5a29994a718e702339735c79197f489a0152e6c8b22e8af7698719ec219b870b4d7d72adee3158b57c4908476e702485f3665092c036cd319a99b2dd55e9f5a61ae58e2510b289bdaeda5b8035f136daac859a964c5225edd3c0b8c374543929f466e930f4c58d776c728db784367a3ad78cd799e0572065dc6a526be5771e961b9e4c0bed7c79f2e5928d01e7c89495385b370826e8395da4c7455014a77a02a2685ad417ba0199e064f7eb9d8039216737a544a4206cdfa6dd6c103f54052513f0fa6845c9b780fbe1607578642ed8cbdb04608062dcd99eb6c9156fffa3359bbe5231ba72c8f9d731a16ff18b1e031cbe472f2aab17b098eb4f85a4527fa4aedb8dc0e357d5747a18fdc0f5223909d85a229a79a8941f6304d42cb22fd4dc4944df4a8186ff14b5f070fce4abc35dd0adac68838f3322744b0cf17d314dfdd573587efe1452382fb80d4aac69291247c9b19ca6adfe2c572e0570e13d5792ff81ed290851cc02e002c748987a7d1bd79c40c2efd2b95b59498d7c27787f0ad885f8a66c1249c1c3b639a73628ba2ebabfe12c29418248028c939593fa3b7f8a2f1764fb2bd3c5a4c20d3eb7edb744e9726d0624b71085b642f202553a809d2085515339ebade9c313aee7a7ea6eb355e74bff389e83ab161938bd42d3783c542cdbcc616fa0917c50d63dac8842a5814b37e049f53932486d0865397c9a26453b2238e9492c09d28bb17a519af3b349b39666ec0a3e00d7811022b8a6bd8cc18448672a7daa846a0516c3c0d75e10c38dd17460f513e88acfa4da0af8ebab74c6d7917197e22c7c646356142e88a06c99c05462b4450163db2b240f6b7503d9d74034853923a4866d70450fa7c1535f4cdc6871d1ef69478ac3c6c894c667c88eb320b7bbbde27c0e2d751758803ec001a67254fe22756e47140d8bd9150553464f078ab7a027c650c900216db02e5e320c21033d5e326263d1a4fa9834a687a51921ccc503be1b557c5a3d97114721953241d4130b34e62609c5d631282b9769435ea3e26ba8c64483e752f8ed06c0b08bf93c76ffc18ff0050367e8a52ebf1e476002ef65ac53ae12bf2b753669067b658c89907982404cb56105dee7f9ba62cf830bc1cc92dea3d146915221db1e611e43109547d9dc2342cf13afe5d4662112a5cf332e64181d4fb1c4c596bc05fb622296dd3e8c89578b9b1dc1476f3af9d6c0c7c8cd38d1166193c4d1dd38954f9d3c9ae2f06793be5d9f762a6a117972fcca930c65ba54fa90810f95d5f0d69261bae36783a701532b57ff45ffa23689f2b6619434b35b17e16c3655ec7e5e60f029cece12a8a59f0959f785e422aa4a5d8fc64eab6d3a4ae1ff8e7858319a3311f2b6e45491e0cbe03d119421417da0d6bbd3e6cf65c304145d98ad1ab226ca3fca9ccfa946e20c47f59ee1aa87697b781a280fef60c31d53a4be2785770eb801f84414d3b39d5224eadabb41e96c4ac1bc1a3867f7350037d01c63c28ae238a474e1e9cd39d97b1ec33595c5730954fd5271c660f7f7d689bc75a6467e7b09aa6818cddd9d0a703f7155fa3128f3a3b6430ad23eda42243ca86ef477f2a2cd89d2046140f421dc0cd26bba33aac44975df6f69aae47dd9d4643aa527c4b0bd230cab05956637c533cebe7aa23f969b2f8d31f10b0bf82e8ea139516086bf78b67b547fe0f3d23945a85f5e73201f6ae6d1486b95ca9c3bba76e71bcb7fb3e34dd437d8848b2d996370eebfc78b9083bdc887f723b4c7f6fe8ddf232118a028218435480782b380523649f98f3f85981b9508cbaeeb5cae1e593d5b68b79006d946d7c4a223a6e2ba53cfb8d03df642a4d695eafa48e8356a79111f43210c6f9df847c5fc4b7a292f05c8491351263fdb96bebe29995f8ec10be776388e3dde35228535c02950c7b610b1fb85ba48f8489ad485374234988d08e0c3027382b95616f3ee85df4e5d706bfea4129444ab28e0944dcf7c273d79ade102f310be3d9c057933d16760a0de04410e981133ad83c2948df5690e9fdd5d8dc2f1eab74088bc44cbf121b3cf6efa3f82332ead43185b3d506e782f47b0c6ecd4358434c067122b5f06c1edc6ec1b0fbc43bdc7fc24705ff87c65c8d36f38aeec2602806fa9112336ac33ce7bde155be67c1e61e5aefd89fc8cc101a35f225e44dc0be1e845508fbfb92ba41697d1bb6f22214c2df788ac298ed2acef47904ea414d60988815f0eaa700396b86a7cc6b133ff4ce7e6fb62f01d0e0affb5b546e10025001d322c75ea0e6c93e576523956d296674b267243b28e81650f3dc041e8cd1df376027d80e03eef70c2ac13ffd1c9062e68e555456ccbafbbc5fc0b948072eabf12d31576d752e1197639eb5ccf3fc43569ce90ecee9f3c840a74b1e3f5f0c2d4be2d3fe9c92101da96571f00266fe2d480b39d923edb4572764d37886e9f18f24f09955ba1101dbef1a4f853e2c72642231d5e798773b92c9856943f653d3e6c645d9434db2760c6df299203f25385c735714d430fa5a6d2fb30370d1b45874be53144f040e6e03e9b52f8499bc7158d6328be642c064a4d74a2939a8eaa8b0780165638d1cf94030e87193b043f2533872d0f6fcb6aec0147235325792c353656d4370cbd1682287adc73af62c0687fb2b24ed55088b5aaef724692ed8828783a16f9648f91e70be7d4d080a29fac0c85516d0a7600b3a98e293d831a7f10f8df924ce1ae00b3fc60aed10715241e2a3e18d68e380b1bbfd5d70cc2623266c5408ba6692aacf55836ecf40535ee047ddc8c38c5600417e5abeb42df8e69b1b80fa1d71d42db8b2bc6ab6b82c59935425892859171f0c767215c7315b8bb27a73dd2615a2e4939added693f835fc56e1d4ee0471383c3689797acd378f14001d6bc82f50ec8655a102fce0455bc3af813f36c623029a6ca825f6c9efbbba1c1548d7cc6a5098bd4da924d75a2f8f3dc36bd0c3b0af0fe6efa72f2adc5382d22a364c37312e69e5ade212677824f0776c5b72c268a60a41d7119172c7edda4b6c152a3daf8e5b0b2328d1845eae0054e7f129026f04171b030889b93a8eeeab606063f91d6840173d04806871eaa43d547d5475d7f8f475c7636b30960ef7d60f850ab2305049b767b8203d7a69b8f704f3a12d710595954231ac4490551f63a8e848b02dbaaafd16905e437df4d5814872d9badf01ad18db74b66e608725cf8b3a2e545fc3b81fbc5d8e1d10424ed6357bcfbb4713a0238afdfb0313a75e39234e8c47899734d677afbabb90465fab3104416ae8cd67f268834bd008f03a8b91258a681f53537a34aa1142cf10a41bb25190431469630a90a82dd95526b694492cccf2900c126256a76bdcaee712ff79cb8b826c321b851dacbc4aa089bf56041b2eded775601657e5a31860edfb7551e95a6213a7c0d230f908d58dbca9efb8a31f641c0f080ecc7776100f4749b14fc4cad9274b16de9938e619e90e341185fc25e319e11dce931ee3d0c407723067391023aa4c66e4d6d5120a9604987fd94796f0eb1f3666295f279dd1a69b6b1f6f80dab30237326fb08722eacc22a51f31c6dc3ce07028455e55561ddfa9228766822b0f1ebb361b1085619e188f8131341d7703a63a1f48665e9509cfb049723efe837e307a8027baab66023125aa4998b98fb0ecfd6a49995ebccb6195598fe66f7ff3f1b5ac1e6de12c189f2a26a015d47878c5c620aeae152e6ce7c0e298644b6a5f26145122b51552de1148582b01f02938b91394f44bca2bbc8804cd412b9e634ecfd2449e77ddd08aa280f2a0ec6d28479e3aa435c2ac1113b0536931d5a87c5ff7da4044081d32cb6dbdbfd58a94ed9dece6d976afd84faa798ebc445ccf37ca8d73cb7e639c3d1d17e724619e19bba4c1e9c321e67e1dcd92472eba50d5c5d3b6e1d763818d6e98513de5fe0f240560cd998d26d85efce175e2b3e2b01f80b2b96d15d96970af08c4aeca9476263003d527ed05f5519b45ea4a28b186738ca308338f5b2888839249c00c97f41f53540e3111847c183e6e5e6d311cce32bfa4c325e325ac4d4d0249b7ee1350cf5abcde50e81ba41a51f97f5499eac7c411c991445898728130f9ec3af43619e45861c677ec6db2c6dbe83729f7556c13b9b37bb2bc0892ae1fc273cc647e1a2d647d805ab9d453b185cbfd5d256560ee82694f7a0fdfcf855a154f375fa5c9e349c24b3b2b82b2b2057c96ef9b3e338937cd067b97d930b82c6ca3a2c7ca1f31577b30a372835b0660a5a1ab0e4e9f687ac997764389529a33763c5b90817f9828c86096924f2f3884c3c0cfb49c0cf9a37e117f4080e2ebb684d650b18431a725f9ce32840df902da26361721a071da1ec83574938bb20663f905db4bc08f34ed3df0a970a26030449e206faec040acf4963f524b2487f360ff674b6f31200533c82e9c23f0059a8c7848d2c0903851a729c325cc36f448159a47928fd9d6299aabc4ee362cb04be742955bf70680847d8ad32413ae2ae74b4fb6e4d98573fcf7da6f8ec1b08add773c2c5fd0fc284bb384eac5b70b0433e31f8e1139afe4d5d9b9305159899d825246c724d84185653bc3ff9a145c4bc4d070a841e05272ed3913e2cbc906846fed581e97da173702f4c1e97c36f7a5a11b436215323c3a1d1e29e5a256fa0c54448b2a3a60aa436251a6c134242c9d72dff0704b397e92e301a4a35403004a0fc65a3295ca668835062113ffff96341cc78a9f161e0deaccf9293f5e19e34f2acbdf9812a2cf7c7478047ba9168949bef22bd1ab7b9792a59c57267d2c650f86f566dd2f2030891b0e599b2cd1fc8ed959345d1bac81c9c2cc00311622c4d30c2347f5a382cd25d830721c036e73d861d2f03fc2238a0166d18002f240015270b099ab807bc8c5df4525fbffde6a3c5da016a4ebdb8a180057fd95b28654e7f0fdb51273cfe22474ead8439c99d0e72e3416c2e360824a9c5fb272d63606b7d1c269584abf8f1543233cc5fc06c42c0a688e61faf19e768a48e11940b0728d205219110984e28fb7ab06e5e5b1a2cba9d1133f80ef5bf180cc80ef352901d7121115c3ba2f37d3d23e5bb704076501cce1468680e0034473ccf0c490a2d8c5e82af1aaad72c5a5ff4f7f504168023610a8e8385c3cbbc8d18918da38f2252e80b89db1eaedba30a76200bd5f840072c76b3f15b3472b46afc982463c964515b26f21cb5e193d05cdb17c6a5875c64ac8808fad276ec81172daa1983bd51eb9a60261e14290005130400c90d021b46d709a6278714b0c1d67502aed6e619fc592724eb8534d05725d8c4fefcb1056cf83b4b2fe6d7099ec116810d81ae9b8399acc006668c0defd8b93c16fbe9fa9a2ae7e4080fcd012e4c1916a80a9331624e2c7fb33203976bc01bbe0ded21075b4213592077fa568b245aae322d2a85b68b1e512947994c6fc9accb047f52e15db7963d92ea6ab0c4a88a66021e17d0e72de7532e20b1df9d70f672d4980656df8abd313a4e58ddd99b7a7c4f6fabc80806a449d9d65bc905fcc270d5fbe599fdb6a21942581fc6cdba644733b011fd1a85131e2f8653646b863d274581592cf60ae5287efe95365f3431ef06de86eadfc20df5088626b4af5236d7d52078d63812f8b46fd240c26f049e8f040c6e02b84f4f8e20f088f0762c758ea1b6fd030d3b81b85925861e042133de94dc25869f3195fe7203060fe0d00e718e9555434d80b502df1d0240e02752b8b755c443741c8ee3cea1f26c2b9f3fd7233b1f905162471e581ff58df6c606d79e21e0912efa1878e70157f4fd189906ff6ac2046be84030e7f32f80680484f8d60e1cbf0d2f73733e2c2c947d7d385a9dc6015c74aa3db42d7aed7907bfa2d2a1fa4d6349c1523e704b417ab12e5e0329f86fd8f6efa721ce521083e1f029a94d593569cbb018ebe7052b55fed60f9a7fe03b80ce33191c66f72578fe4f72ca8c1312ba5961ce4c0df9563b10bf61ae2655899132f0012e606acb3f70b959603b7b2caca0e9b74e4d119a48829b09d32eb98c6b6cc6e01d0598f0bb0582343ba607e600ab2f6a3c3a08904082ff2c48f75948fd077f7ef1b98b2f8ebbb349e85d98e60151fbfe903522396cabfe8450fa9c55627e0203725fdef7ad1b9a73cb234c96a8003aae2fb4f556cf64d2739247c8f6b98e8541139aaedbdf49446372c1558b70591a93a8702ffb731299b94eb55eec689fabe3179028ee83d281b804a08a4104d7518c878f11fa5a81547f203b404827111535bde090ea6bed4c731e3f1be12fcff660bb87404c7047e032614630e147df13fa81314af0f5c3419241d4de5298a9a656cebfe02391117ba0e03cd49af4a2e42e23c8ce7bd6f0dbf03a0f96bc1a88a145045f9409b3aa218c118b316d0364857f9d3dba1149180c9fd762e93b18a6c4c40e7463f6425226ddd8df62bab60fddbb30eccb5d41d1f63dba872d8d48fc6d1af59fdf6d2f2d81fec4c0b0b16f3ccfb29fd76dfdf9bf27ba27deae06eac138d16d83c3412620419fe1acddedd49ab5bb4d82a8d31f51fba56cb1306e50d195109f04da89682a0e9c2986471876d5ce9e2741031455a8562405179b30b345be2f54a47f23a3f832eb3009f966afb6c707cdfeb38c08ea2103032a5fe48e3e7e0781322911ed177388cd3e89ae632e6918ec54124950e87831e107b1eb50777c324b728ee75b66be3a046e6703b98e9ceec2e0335fec82fc7c22fe1426126ee2872da38cfb852a49893f1af5865e4f6e83b0a4e10800df654a5edb65d7d8d0009d8508315232fa637ac43e255c1229a84b8448512ef7c1c5ddf405e38bdeabd383cd64ea2570ce3e929ad6620da8782f60cee9bda9cf7006957751f035a108460232fa2b88b67a64b5e4491b6c09d9a80404c3d329694c1a8c8dbc5e4eda298a3ec41f2265f680556d07a046bfbae4b4979cef3991cce0ee7d79b860d988a8b7496d7b825b37fa3d05523c87863b8288c2228b430457e088eb05bc2c0bb4c723ab1c3f42ff36accc3d77e72fa4e77228b2dad2ad5d38a2e8393d9539a4b9f3157222b386b0d902a6a462085eab9096f89c7b8601911d7633f4d4208bc4444b7e82d49b0887e728c99530d012da3d4ac84f08bd74cf07b7ab472adaefb5ddd067bde86092b6151cdb4e734ad6ad41dda10fcbfac886307d89069a986411f92982af3717d106fe812f805924217d62c500f86247065f048e1e941a996f8e3ec90363aa45d5be74b42b4a89b19b53df2fb6da7368fe3e6ae5b258cfac63ad93d161f53cdb1d84858277713c1d1000701e611458239458951aab2463e056fac9aff0a7daa95482f2a7290e4e2bd20bcad91651578c000a73c8c9a9ee383476272e9caf3c92a3343ec07fa3a915f56dd1556b8e0ab35e79162985992468dfc9e303431db016e8a082f8eb5def3e271e48a306c409cd84515a94e83fee4b64a206c1a5da6ed6201448d25561f19397cb7e491da4d01533b16d127eeb4177408789aa4b11e7305f9d8ed1bd76f08034c7ece1ef58ad16db4522443202248f1f219aa600892083bb39ab1d3bd00b274c16ea2246ba295e974e0b6d551efa488d8cee5ad614d12bae49a234aba9ba0e7ff0c62f946f5799974bf2acdba5b28bfab176e9a432b95b35cf3b1eddca54165676c25e28445b6b942fccd5e66bb4ad33203fa491af871fc70e8cf94405ef5b233e32a03fc105fe0cf720d15643a6286c56d5495641c4f973c4985af195070c1002be1145b3f0ddf6f82ed615c5a1556a35deaa2dcd8d573d28b46b3441173ef43c0ef8d1fae37a7bf3ba54172509ff0c0f780dd4430dee422ad7e26084eed4f07b6e07c3dfb27ff2ec4f4721a7723957f2bdbe53c89cac198017ce5a3bd58b2ab3c16e8547c8b355a63de1ce76b1894021d7a170f1d506d401d941bf328ef882596e368b8ab0977d81c40b0e16a76dbdef380b6fea6e56b15a24605c12dc6732b390552c014a428459da753b7b04d03a2c1089d8bf0b4076fdc2a806c28523fc3ba1d04f94e7fc003b781b45c537a768aee4fd5381af8eb966241fd0bc5d446530f0b0a9244aa9327cc094f8ecab37d63bbed695b41177a4c57815f112391d1144097b69e5373946678896fcad58129bbf5b527d79272b808905e8e3006b0eb8e49bcaa1ac61d9b100210c8c61e178e1908ec624e866c8ff50888fda92a8d96d4ff855f4fa75cbee18f300d0c9556a48529ab2d9ea81e30d741dc0108c6cf57da152642b2cb154e910b6578f00801231823d15768366fa375aa924497b957e48ca94cdc1e47178dcdc28878ebf5b7cdb345065abee9a523238eab4d403a92f336d7287950955daafb0e4287d5efe3be43830b4b497d06724277cc571046cd575711a658ee5c4b7f6f43e34cf8b286e63a76c4292bb7e30592f06d745a3a7cab840b13a4df9cce74a49752cd54f931f22795db872df0eec3ca8ee8a3182658fd39585774459c7924827b206b10d5adc4decba3a580eb02fa9e5ed6cf4fab9980f5ee54dae8ada5fd5442909c2abdb6f16bfc92669a3ed43cc9eb67761133eb42bd4baaf3b1e3484a575c43a06725659cbfe23a2500e13756b0555e68224460573d5517b1253c230581ec35e7529d18c9c8c554b5da73cba8e22f25bc3c53ac52d2c244202853d8ccfb085c2ecc226a8f3966f1b01abaaa6befbf6b4b16158d7785e169d24ed25128eddc0e7e86f282d6cf15ba8e28b743b178f227b4d41c498b0a5e113f9c395bc69c2051bfa250ffe53fb8650934b6258d5b51ad0b211dea9432d166187cb04f0f3ce3fca63c07a19b94508334a30173999415260140e6e5837314b9e4f6a0afed7756171a84badc4a46d888a43c06e196e3d9806d3b00133a263eb337c80edffe32718483306899739f2570740954f53b9ec439db6cba285f7df3d615e06a9cac9e56de40a7cab1fe39f4c82ca90ae035bc399b3def47457d38b8f663d283c6e715eec17dd7e6795f5afd60c9bbb88e1e253c02f8d723da70e182e1e61604d109432e385bd46e4585ac7b87cf1f7b9de2a6cbe06ce2872431020da947f6c11b30d2906209e3fffd0f7064e98d4a7db73845f0f4bc8fb57698acc20844837b97165500580fd5c0111dba759483a2264770baf2161af227ba2590785701ccbec3e7618d7cf296fb548292ac6d917b8247e677cefedca9983d59ca19aa0df0801ddbc2d8f7296f1eb6ae6862c8f7a0db021675b7a444e3f8edb10d2bf0b7c6ab3c5f17adad6087d6046824ce41e1c14cc95ddce940b6d18d7a2d413c1fef1496d18285ce869432202c6851b3c063a4705339ab121f0910f22b600e883a158d25b70dbf3d161ab43bee1078c498957c33b0db5039fe9881a765a3a420d20346716af4c86384eaf5ef560f14db007e187de9f357066b2655cf0444a9bad7ae8ee98bb44a1298bcf8c24c7318466c29587188e32fbd8e81b24e1012b43b91d77b656e4a808f219c358d13cc5852818f3497750a4aadf40e960700b5df5d8c8e028c6ef62741873f109151bf57dad9eeec7adaca0dd76b6adedadb614699023ebf00922adb25703ad80c2724f586268453683b63519fef9f3fe286d68446b1baf6a9dbbaafe4944357bad99b6b32c214aa30725c4c2c092d4d2f5f87c0b71cd9895e6269c9ee650cd2489097d8a4b0f4538c4c6305ade4971819a4c40faf063b14a8768dfa48394e84cb2e3cabc8393149d8d49b75326c0d15a5d844371b1c2453b4145df619c4344ba0cf05f9d0e4edd2e5e61d9e51dd996c37874363070cf51cb05c8c6a26ec42b60c51d44c119f024c9b4fe209424c460188704aaa28b440b89e17ee7fde65170c81a5ef9165f3395e388bd676d975dc1fa610a4648bf5901238ffc48dd93eda6b48040665b3e59dd170cbb924540e8379bc7f2a10d0613adf8d9769007a9e87d36a66cb05d19f64ad0c1d9244b256b14a0587fc16c8708014c051704460bc5d0fa7bc82fae103f99842d0427a13a5c313092620f97a3178c33e277e2d10772513110840e861bc2d2e589b083c1f465f9a588c1aa1f6f2f0a7a679abd472236c3ef733ef41a2d65ecb2afcf2839e56236992a43d4cd88378c922a83c9ceb9a3ca2ec937a83207e24bda8ddf5399d64ec79b1f1dca93fcff4f65beb01bdb206abfd0946b8275fd7b47235ccbd44402791c276c8a3fa10ac54303c2dc8769d0ab758c19e13129e66d31d53326c50918d44c9e050cfb2f6d229cd0f88121864b94932d515c65526c3bd257aa186ad80275de82e03f75f3fea4881bbfd929afcc4a72f2cd2ed729a54e40a583b47bba6d199c8f40cd8cc6796d4194d292db6d293e5e5263b655feb159ad4e1973e0ea2e56974bfb6e453eaf852d64dd94ea6a58d6cbff972dd9fc95452d0f2165a027d8fedb1b6c093d3bbaef35cc287cafc8adaa443033e47949c1253df1acb997227cabaa65524b8e41c0539b3144b0d51527dae10af9c38b52ad72af95432a494296edc00b76306c369bee7964b2047670aed134bde08d44e8e6d1053c50f344304b20a01143d8e8f889e88388082ebe822aa83a7abd1031c269c971219298e4777c10f57808b8383c42550784dd8aa9db0f90350f54eae933fd8673e85e21c90ece762a0fc04d1915174c8e000a41ed84ff7e86853cdd2c0874e2953c0695878db6a75a843f4424fed4387dc8421f85058b1d9be3c6cb5fc691faacb9416be10f1a464c00eaa484ded940adbdaad5a22a403df7c17478063316842a099bb10a05f738158a4eea3f057083534605b98fab80aeba728b23602a9123fd555df3522b6a24516b5228299bd0133a493b01639f5dd279e2d4790a0cb83eddc4b0e9284fa26621fe376cf79901805d3c0ee7348d92f68b502c69a9886a120e9b14787d6e11d120ab73842c585ac3acf131feac0cec992de06eb78f3b4dc820f5f9c0249ade589d33b6fd0845439fa51179a2a31447987d9067b43632aa8359de158fced4cff56b07b022a63a78706b0fcacd0c3a910c68103d3272ea5e7087f0b77c44df59d8d3b96ef20c00f22562edcf0a01cb6b5f7f5d029b221019ee525447a2270b9b189b60633752ef8e62ac34392e353ec882d85c05fdc7cfa7d02fb7272ee6049bc8ccc506f4b914529caf0b532c4903efa3e01b2ce3a68e048eec2aed41b69a34847c40d479183501f1dfcc82fac9445d84f3a14279b7f862fde6d970441eaf1f2139c1301c885efe5cefb6ab0f0cff547abf6b2bff3e1e7f445d8ba5fcbc8c768b4e80fe8e14924008778382f731313129b393aa738498f4374e1e56b78abbad2d14250369c77a907dac890f88f6abda7db87ee0fb84521e4121edeb8f852d39be1142326e007d21f5f3ac1ae17e242bc201afcf7e578549d420ef414bfbc884cee9142e651be580880e25f27da0f9af964a3e616272df95686a72129e0116dc82a5dbda6ae04c960e84a9a5b3470d933e46492f8df90139ffd9199020e076127a6ac9e287c38406d445203c8ef978b19494e3ede8316fc5f409614288793ac52bccbed16f5d13b391ca8970b9f5ae3981c37f80757015297cf8d96e32ca45231740fc0d0b60173f404969f4e8ccedf8c0f2f8f9b560c05fcfe2c750e0c45b3b256c0cbfd2b61f0c2e5fd2dfa66bb585c0d486ccc0131d57a745242efeba8f0755ccf94de14077e905f771505130efc03ef03cee8f195bc492e600fd22991bf74751134c3b7c70d2a2b41a68018d20a6cb6a434cdaba3699f8dca2d1de1b6e4460b1ffc2e7fc475fd2fdb8435abdb57f6e0de37a08cf62179051264ce1e34e8ed10a161b6ec1f5c1d7e9bf754e091c60de0e955b953aa6b3c5efc75dfe5bfb13d66b68369087f13ba5aa46b08dd8625f1544705323ebe30e9c394696c5052d5315c031cc95d40cc49eef1c8de1b477502f18a7c7c740fbfea8f30290395206f0f8104b4ba76b2b6df131513ec3ac9d498ff88d3d55e8fa6adf51be3428b2463ae7d05d68da362bf731cdfbbfffcdcceae414a27f4111a11bc89a1fc0d17cbc400cc1a14e7a12450ddab4202ec76183ad1740a809769a4a3df34659649c07151259bce8be458dab550384cbf03722025d056764fc24f772d7bc2a692dc4d465e04f2e54631b515d3e5d82c78987c32f560dbd49c1f0bbf8043bb49b2383bbce85d1e81df20171787a26cd83bc6a746fc7200b02ddd682c92993e976f5fbc7c6e02cb4f48749ed18db9d2aa5f12c483f5b7fae896c2b529160b18e3d5baedc8535fea043696d28500742e27c66685340a7f666729002a2da75a29104e0a69fdf7bc1aafca8798577d0ee85b22e06cac29d8a17da10e690a04887a18c49a2560e3c316f6e00ec7ce0b7094778b42f3403313d6fab78d7d0171853cbcda0c9e10ac8f4b14bd4230e0fcd34426c8210077a138b6b69c734745edda13dc78110576af7be2c130b2933468d7597f7e062e48b9d79712b52d29d7d6d06dd577c33a7a0491c82ce1e419d76cf9b57efe71f7f88c026f3af6f8c5fcd6482eb1c63d49e80532ae6f2420fb4c9b7347078b35262c998f98cd69dbaa37840f9755d54e90d4f4584972bc3940dd21e5ea9bbf438aa43321986050a16bea4135de1139342609dadcc6bf04db98f1c308db60ae5d8ba0b2c67aaada5f12e6f4d36cb9f3f247a61ff72642f44be413babd829483f26a3d1077166bfbfa622c1e838c6dc0496e7cc2076457166da556ac09ddb765e11d110452f711a0ca60a83d25a1085d70cda536eed04692d1ecbab3652c28a5902fc0cbbe1ed21c89f83a473bd1821c764efd834ab5ca5e44ebddce1369bf229e8017b209ad7f9ed264accf375209c7ecc0d46477de8fe92929cad004a3ee72944541750fd51e34dfe0eea86b46046bded9ceb6b342c349fc599d3fa4e48eb722b54ca250ab570972b259ce34a11d44e480a95f08e2b5db8eb8a12559cc80a74618eeb5ab843ae78d97c112ea9183ec2bd98fdbd809ae061a1e1011be6ae1308e0df308b578417184a854c185f75be46ce0cce93b3b7d934041850b4a6f589c929795bb16003d190c3f1c543ec1fb60a1d9ee62a678222f479c6926d155822f9241112de208710a00e538c8eea67b92bc68f3921dddea216c671ad0b775cd1c21db7e0416cdcea61f834f4983e6c4da4b8eb5a11e6baa2843b72bd874d17e152c5e4135c8bd5d2b40aabaf0459072e0b47d63024077b003396bda726ecd118e25b68065856f56640859359613324b72906549b419018e59d31306f57ac82551642e2293c79bb8d885a0a37dfe640eb3ab11f72518cc7136df868f51a7d5abd4df9484d8d7c5002b1f9802b6258e627c0a576fb828215af1d233865652be3d6636a3297c5f8092ec4fedb851c6532c7834bda9c0a1771377068d5f8a020990c1dd53157361c610f5690ba82ed670fa2f2696ecbb4ac62c2713a8518388315069e658530b843c70be4528ae523dc8bd9d2d4d745d75491835be9fcb5404461d91cb40416da6c6199c0b06622ac98184b18cb3a9045fba28080444ea67601c1fae8fc3a5342762e17c5f201ee27b22681487823469f9c838d339e64feb67a426209c7fa3f7823ac407cc00db17c8083000942ffed21cec7b270c554025b0a7c1ce95d8ec8913ddd06f4e527938bd6abb5143ddc5268a504a7654032b3011d2d86e0b05863eda6f4a92fa2500707c6adcca30b536efe55a876fee3694729d7730307889e396b4d8c1513389308422121b20e4a8aa0ce77a026eb2e47931093a1c60963b126126dff63527c5a102f5d4b81c44d0e129d83e02dd8c3f5d21df486807e1a01d064bf564bd6b43d1911ea319b404b7c896323b890fda570a0cdefce1e120280e2378e76a228c7a1770900e4323219b2268bab80937aed68a6c7ac350cac593b2ac1b129249c53705c101e551e6502108dcd17fc7135fba1dbfeadf8da1d874882c9f87455fe153d060a2664a3405955eb9c1ea1dca52ca5a53e210931ea6124018a28bf2a56a102e19dd4be7846d295073ac4c095618ac24d2189e1b861fedc736a0d12b3770f0443bd3a3135a50cfeff7e350c888b3517c64e81f7bf62feebc07e9f7d21565fb9dd7591721094e52a43e3241eeb139649606a6be1b46b8d9034085c9dd9351f6b1f9e3b800b8f01b3aadb3da92ac549f00d3cb7fee9edccdfe4fa9d1ba1cda3d413630284db07521c346b7f8dae24baf496999084a588dcc121f18716fd48003667a0fe0ad886a1dfe6f971ec3fb7940f9a5557d7915375709ac9c6693e452a26f38e8057dda30ccbada1bda2884bedf891bc5024cbad012620adbdce1d2a50655ffb06d412a18d02fac9bd612845af7dd1963effc9757a0f3a3e4d838b2fd1cfe1f8f1cae667256c9f41861084ebbd69ee028a82bd51c2cfd67fa8267af29a7115c45707bf07e89996361d0dec0aed20095d34c2be004404e0b532b151b36e3626c6bd6ed2a8bd4a7ab37cae0b5882f45d05cd74cc23bf7bd4da1b789d96984e55ccc6efba83b5ff2e9a66fa6d7a12a1131158f1f1e0521433afe88ffa721ab36fefe510e0afa6e491556fc5635b63b7bdf53c2de119d09d2d10cbd510446a8977e55d6bd0adbff9b7cb42d22ff9fffd7aece1b7dbf15d04a2a4c042f4395a834a6158c3aec4fedf3cae49f45a0d85a7893038dc9b8b814638bd837e2a9d50863fc198306e87199561f7276defdb8132fa3531c35b6f9d389b0ce13d82e14903f0b1f894bb56087144e6b6e9a739c1556acce67c3f76dfbb9aab3a8d459b43675f2ba1c3a1abe6519042f361daae30b78c038f57c732d1e23f97088eac18e972390c19c98cd12f99f9ab60578f4a4a5fd4541b6c3e98aa55a217d194cf00f0c6608ed34391157b5d3858fb95fd08da595acad4fd5c6303c7ad0947f91731a810e4e4591c71e1fa79d400a3d23aafd8655165ae4db4dfd9ec4fd0b2f5a2cca56028a1cbee5c9677fe6e6c3a566773b130f8059fe489098636a71ba49e41b8d6f4e1300d71495c0e58666e145ec14803fc57844111859d9c2127ee5704ae6817f10150c653ce36c1d2db665db3d847e513f913821e951b65f3c1a4fd2e58beea2c6713f4a804f87cc03522d8c24001e49c30355c4cae05c247efcc20a2b0c837f47fa2cc9b5bcf580bb6763d36d2c651e020e824ce9516a7d23ad8536d47018c0b88fd117776f6df5d269db3bb13538aa42ddf7da55e23d4d9bb7393cd219ebb17151002883bd2d213683b7a6e4a0d795256c3460c07557630e72f959e9d864fc315b4feb1cc7ac6607266994dac8bd2027111b40d10dfed1baa22ea93e48bdfaa7662a0ffa5c66e6f7f9563e171ef61dcc1f3cc787b9547323986d863e7cd1419405404b129504204861b61139e2ee1491e2624532c987919fcee85287e4c4801a4843727c424fb6701c37ee9a650360db56458ae93cae191be49b1536b28281562b1d06f57aa9b36b0083fcd57e08100aa0173bfacb22d8e1d406d73bb3a88ee6f1b3e2e1532e483f36e6508da43da0b961529bb5568bb5228c948e4f51b7bb5581c8c1b63e8025b48edaf1348eb45924416b8b36e5a2e7ac626ecb62b55dc9ca31260f7299ebde66ce559c673cd21b2b0d2ab8a06ecd33937b1fb83ccddf2dca19a716a677c42d9ed10f901e8dc9786a7198e1265629d9cb3e05c39a6688e3a22e637c388225c0df376da3b8ac2579f8ac6a3918efe28f6f17429cfa302cd0a6dfafbdee80ea0173d60e9c631599f7b4231710c09ca0cbc21151b05d73ade888602f761806f1cc89eb319368519c226d2a66cb815858636657366fbaedb2dc1ae0a2df99630e1dedf2c410a52c0aa649c9b2fce92140f6cb8abce4c3e5ca451404abb1ed8bd7a52cdf046390cd2a82cbb551df2b89eb6357cdba3b8496430019135c53542ec0234b02911c29330b98d09d08d9c5f64b82825f3af9338a5662f012f0f3109f60d60ad5f03717f583548b45d815d801cc5cab08ab254108f03760e8accb714f77ef1f9a5d17bb45c5f0620150c6a7de779ae636e751ba568ad1c256308d260f75befe9895f9022d55e3b6ae4def0a1a43c3031627887dc11efcac4052dbe56166bd5a4ba8c5e70fc6e56869baa2cff67a963916d7c208274e94e8557bf265f3fe8ed9fe05b520aac53265962fa33e9436137132c7a5c1bf7f612f455a7c307c50b66dae1b26315b71719f5c9c2eb99d7d34bd39447365a50f691109aed0842c7cacf590ec660050216f44244393160f0877c8dd290b45da19456b5afb37c49773c8cc2fe71d18c21d9d7ebcf91c68deeba8ccdf0bd4f41dba37bfc6ba28810c8d8a6ff0a8edf9c354625f4b47123a2a15f183b7c8b24a6336a388835ecf95884cc5d9daba709ff9106d28bd989c0dccbf71e6bd889c078fb71f4fb7d5cc7a58356df406550bd2990e7cae9593a33d703ae89629311faf9e33b4bbdba32d3927bc5184313dc31cb14b05843bb3f2615058c500cf76bb44deea29c4fa160a115269f4b41cdedf02916a66ddb831d956d697cdc546082d8a310a2e58f9b1af296c4ddb89807b606ad6b0954d55dcf35eaa0c91e4291564ede9fa9c776cf523a6f8c415c2db956ecd516aaa6c098f1f9ffcd01db9e5a9718d17346136abc5b423a082085e46817538ad52a5f2db0ee889735d7460724335d490effd8bc93521d6f6df4029b5c1da09aac1470b82b2e5c6b4da4a97ff7656e7c1ada6312c30285d3a8de702fda875e4b3c9669904768d3afbca8c1edd55da498cbaa018863e82f11eb320886144a5a890455e8b6a676ebc88feaaa6dec57dd8ba946c96677b410a8d208475e83e80b355ca1196bcf3746511a7c946785828ee63422ad5fb60bdd548cadc72642018113fb61c8dd5e82bd5cd64f42b3cd82c27b050de1bbde54ed3e5469a5e01e2bdc5c386858f20007cb8c4db759e855d0a1244a2e5713fcdee740a1016588ab7ccf8e702033d9d85c14ad2139059f797682d12804a2db1aa109e8c57df7c9cc042092726f8291bf14e726f8d615fb4db8a2a5cea649323ca441e5e4cdbf9c24d20662c246b88ab55d8c115fa38c2dc45324dc1311d0d0306fdccf385d3496eba23dd57d72cb920c9801aa9b1383dfda5f06de7562b3d692ef56c94c9bdae05887986e201b4d425988815ad78d1a195a882f1729d09f18eb1b075d8fdd67a81358ad342bce40f5ea52377eb2677f47f96b20aba2352f3663b0490851fe147e84563899ebf5665dff269524683c2d0a8b2eeb20a668d761c653f14845904241ed556acf6bba6087327c041110cd2a73b628bb50c10536d2c5f12a8cdc97eee0904adc4a66761415788b958de7622f8947d48da65436d7803032c7e6cde751273ae7704030962b0a3b018d294b043792dddf3da4810030077ea6b6ecd1aab75429f8704f6abc96bfafa7cc8a918b838e96c869b2702268caa6a124101551d9e7f9d68ede38d88dd94d9a6da6371015bd939cbc30b474df8126107d9fb4329f6663d0e7375743755f5632c5d870dadc2767358ed26571a76f71df0eba9cd36506bf026a33a0ffc0e48cd384b93c8a5c463ea6f1e3b748cc79995d99058df50820bf1f1e3b326c0159608e5f669cd8f79be09e6709ccf6e72bad53f8f8d185489297715bebec30de8a421d09c2080d32e994f811046c78fc4568e04b09b61251820e64140ca6886d23e773a6414569a316dbd3929c4dfa4fed04e8aa047bb5e37cae9824b387c5d9a742e7b7a26ab381bba9f4ee22f4d9070711fa0a73a4dd06964bc3b92f7a20869d5296b3c1fab0699ed128fd8756f2e2d12a1ee0b8739454dd6abaf7c0d3e9b77cf048a5e02173f919f375485ea22c71d7bef6ff105045b59e931f5a38bff6b6c3e7874f371e77380411b9d4c5ed6031c00f02b8f49df041404049479b282c4b0e2e56929aa64200b4fb0da68e023848bd7c32f8605be3f25fdfb7430d737f1bad95652b1f8bdc4e7504fe8cce84e4a458a366be1755eb29958ebf175cd99a937c74c23af2c0a56bda3b7b5896cd64f41d4962d7bb6e14e3ad0d0edeaa31c354fedd4363005062bc15a9bbc40b6ab8f58001ffde0a8cf9fee58a30cad24520d9347de243a16f6ee43955b10b90f331337f330654450ff520c2b709885b0bdb0af0794f4e9992619e7c166e286bad53fb69f26b9fe36bd3a546d3da07c419fe6f980ac688e635948c3f1e88ab7618e5b6f2405329e95c9e858fcda59882a8fe6b641a472ea603a4227344a0d682a0c199b606cfc7c2c5ce7294efc09722d316eeb6c60df68b4c23ad4f5eab16cfb96d088d32376aa6776326609c8bf2e33fafd491afefa6aa6ad4a789cf08245ddeaacea5d3f5376d7895a8f293554ad6a3b81f33dece26fc5349c17838206fb9b1b75b1d83566641a6df3d255d86eab8bc4a468d923a061be2f5fbe1d148d8b665933cec81515e7ce16cb0c132ad2621525fcb8f3e1e9621f8ba659155700d4655037112018172080a675b05a72737a54353aafea2e474a34a9133308f337db6794dc8b1956aab0a3865acd42724bda5488dd1cb1416cb86660c2c38c1c68968f29e5977c848dd55a47b475f6c24b2878cbbe7316ad55070816067f3a05ed321994659f90b95f65a443f7e9782703a3383831081cdbf50c40408032074978aeeb81c9d99c2440d7128d673b7b52020190ea55fc3a7b550c53c4890163b1c0b8fb1ed139a565fb80ca4352519f20350b7185c6fa101c277d225d2affbe35c454802650299b359a641642d4420096410b0cb3ddd437eaa674af3e27a12246eb4351e339c461e41bbf130fa39200fab18ea7ee4faf5a7164a9b0e69f6c41efb34b7ee1b50036b795aad1a0cb09e156e595acb8bfd5e9adac718270848a2c907cf102d12de7daa4676e0176d21c7c7920877a644383ecef4be3c9c38a596172cf8cae3f914c1aac51e0f93a39eda9020edd69250a011c6ccb4115f36f417c636836c85ab379603f689ddf582e29f63bf63c15b27d855b1da0a500f839c68e2a43d6394075b8e8157c3cf9f8672b0ef255f0ee5787a42e5e28706c32fad1162a73f0a1408dc72383dcbf030788a5889cd3d71d177dfe9c691fe7dc023b795fd13bcd8a396a2a658a0264d3590faf64c5db993c003e2917979b406ac8e06a51bb73b8298ffc82717ad91f53551c2cf3a60b1d431dbfc16d1d3d9c6f198ad20972970324007ee68d6a7ead4181fb6f3cbb79f354a9211e60a2d1d95ffdc95f9f5f9eb1475e34d3340698ecad62a5edbd6a59523dd79792d4314f66b88aaa6b6c3b16f7f8a8663ebd09314eb8b015cf1de04ab984074e8c7d8860027a85fde8109281f24605b220ee300e9c9cd796e5262123b764872585a7e3ba29d425b1cc38aaa836bb468e2b55d2b45ca6c834a53b4f1805bae36e1282037d2abcbd19194945c9d50741f8bd78bce4e93c2ed35a19be7d263a77917f49ed8357e17d8da7551a23ac8a621dc27e1bfa2c762906ca6f331f0871444539b624b3a4c43447c4b2e42b1de690a22d2aed159a37e75d6ddc79c62660cef8e2ee265526c7371944bee57da2963b78a86124ef60e9ce364e595556c5082540612a509357b56a13e47ea3127eba8c0aeee8af000d5c0205703881065756c1860cbaa148ae8911abe917e73135dec60eb80540c7416fb0641722170b6d68c150fe7b294b635872a2b62c0b287975dfd82ac141dbc8237d837a8742d0bbf2249d5e1044e04bf90ceadca7ca9c1c6f434b8d34902b126ade5fb47b0782eb461ad8ee6d5444a19ebc109f2df266e586f39799dfccaa3273e955b42c705948548fc7f775c530b679865a11bff72105884c4ba318f4fc8059fca8c292bddf1cbcacf746f88f894484c40b1aad8bbdb83fa84dad5b56c89ade85c2a0d4b35952a6ec1a874452ac248e46e51f0aa05db354780072f4ffa1de0f641490b757306e28fcd6f612511585d555f4c9df142857be756959ada7e4528f36df26c0e3aab6c5a622da07181ed7651f44d7c193ef38cef4c7164f1ab3fd0441a479007f42e6dcf6f90a5afae47a6e0ae365619305a69512f5b950f09087ad24efd4c8df50242e1616722e2ecdff52a46c308bba6f5fbe7f520b98d01e098bb4a1a6df27fc285f1a20532e543adba856f957943409c49e521bea289717fe402602e372537e154cb790d8ebde3651260952f147fa8286ae9673cf4096507e1222ccc493f2cf371734e38c30d13b959f02c82496a1144b4cba613a65e69f1b373b2e55127235d9e4232564518eb42a7883943be85edbf75d85b824b429f34b6ba870a36a8287c0aa98376012010c59655a1e31564b8c6e50143a4d6bbf34900f76e9d005d0e321fd80fbc8f095e8beba545bb2fb31ea2c6b3a5e0fa6f8de73304c6a7ed16a65a7ca17cd65e878f82431a7f10190cff31cc11f91d9299480ccae46744c0cff36050ed448849f0da8e9cb7878c054b132e3fcfa507557e95a13bca80340968c3c8f6eed725c78365510a28272b1780951646685ff8a63a16ae70aed4504600cfd1526b1bfbf0af9ec08403b80cef3be92bf4783bcbdf050d15adeaec556912cacc4f4a1e5ed29684f0b6e449343f7ec2292189a07be234abd1c68373534a901a3b50e91ca591ad2e23ead3c30a9ff25e548a22b056ed1c93e9edeaefea935a7855987f233ffd6d14491e7fff21fdd2b20efb9209a8557d484af2e43de1b6c4ae176957fb5065cbfb2a9a13fd91a3d79bba4284ce397d80fedc61f6762384f11de5e0379b53bcf075142574ffa345a57e43190190a772f6a79c50bd85972c1d30c2014d5f04691d5cd0473e78adba366ecb231649ef53057c027da2ee6a7081cdcd76b3f05962b6118f7f8800a400b469da1c1061f28080f028759b0831f1e54b4401afaf9e5113d0e1fc7e7fed07670c8734c97ba088702a09e87b5fe8d254c915eb7a025b8ef32a8215176cdb7c366d97fdd5b5ea5ffddaaca11e92dcb5d548529305706cfa06a083c3225ff878e0c15119207b2c0acae416decc26afcadf85a9c8b91a8137942cc5a834edb6dc746f2846f5bd6cf3961ed49cee412ea3c649d6987aedba44dfd09c5296b487bc963278b0205f495f2cf1c38ea12bacb0f04ea8cd3b2af9cc1bcbc68b7aab1b912e696ddb31bd46369bd2bb20c29421917c7487a56100ccfb505b23978012119c7b035166febfff43b16bff18ef092b9b36c9e968f6f59f28188c2e02a4e7f6e8ba2c0974ff993a3d8b9e178a7942f141f9335ad66a2caafef1d202ba36bc28fb62698b65d7a006e504483374099549494afe360f04c8beb0013b45e4543465d5c9e83bba67aca1ac31a6ba4fe31fc7a56bc99809844bef96048f8f6df8cef72ddf0f9ac2feded7a08ce8ddbd95439a5eddbd4da5ccd9fdbbf4bdc08d61b7b24a6de86d2cde021237b825fe9c02319ac269625c7d5cb96887611e943b6f3d1458315e98f64b3f87e5f874812ee576d72a26ecc8cae3bd7bd81ac7fd4133e47ef367076d2fce2446a9a075abba123c1674e185cc778034b2549f749e98c7d816b153095dda801d0399112194d1c3f44e0d507e607d07aceb4393289a043fc68fb873641fca9e262c1609b1882cb98362b84d0fa71688b7190e850345cc18e12cbfbc6614a968ea8f98b18fb21653faa1989be64f74c3b14f9ad3262375aae08de65f5f69fc597db0f1622b09619b40f6cdaa1ee9d6f02e735ca122504ca12f539b1f2a456fcc52797b24df619f69407f00206c5e1f8f1da20428b468824a9310814907cb0f2275bb2fe7e5d3ef4d3fa9432cc3bfafb8e21b7a0ad8821900346b47d2427347ea9abd974f02fee39708d2e9ab7abdb7f92c579e13e69362421700346cd679fed04a6fa86ca8eb5b41b5670f5484b016dd323e403eb31e8f86d69ea853b55937af63470e23444628e28d31bca5949b2c0702f41b9c95977c45170b0edba06a361cef6a157eca96925c359b4e322b5c5c05957947982e2f004e10f305e142c88524178a5d30e376983e0f2665b9128f82117ffbf1f70e30282de1dd128f8e37ff12609b50cd80ebb88c6dd6cd7843f630844e1bd8fc00f326cb05c543dbaa01de46a202f242ea308ec6b6806c68a6ce7ec6b520198bcb3a82d833652fe8ddf6877613b95bf1c1049b846544c080acf3f189711fc8a0558074f6dfc4235dcefe1686f61e47db24c32ecc8478fb7746a3f28bb4887ee1b9a345fddb0b39f7d66054117142a042db5d581374c7de4c20f50d9ae8b83ba09c3b65de6f8d79ff1b3c49b1a8498dfe0faaeb60a27fd83e2d9c560e1c28b7fed1257b1f93c8b3914fe189432df01bce6f131e91f23467a777e57f03ef9f6a5240c575424e6d00b484903275f273ac1fb84d7fb1fc489a56c2c9d6c5a0a5399fedd5ef15bbe945717a1fa3d16380c9846925547e25e4f27e45c4a32f97ad727be7f0a89f0a2eea4b9fdd90d724fe17f786cee8279c79838145d9c44f8ab10a1ba795a8f9bbe77e97c1a7f1797f9c9f010f8d522020ceb9b84c9131cf0706374963b16b651b6db87cbaf0cb667c0ec173d1b1737d83d4738bb52dce80916ff48fb27d1a2a8271e208142bafcfc44a03c1087080687e400e601efb6b405c6e3dcbbd701120c79f791b1d077d30cdf1a1da5ad6733d2203f886e2b685341e3432f9cb8033e15354f235dae88026f3cb6f845227d3720f6a1dba9285e5f84873531ed4ee3f3c48a51b1eb670efb7b4135d210cfedb60f8759edbf675441aa8f4455ee47dbe7355da720a02bbcf160ed53b0249145f4acfb8a252efee5ee554a5c491f9a770377305cedcdd9dcd7926fed2fb56755f53a0fbd3528d7639c6e5ec093e8a25b4dbf23b26d6e8165de57dfc4e9157d232c19bb0bc03189dd7513ee25cf075eaba9a34e59f06f7e20607ddd7afd3757008888fc87d12f3430332e2248742d3290dc3a67925c523ee2291a595a99bd7e415f8776c035f7014830a01ea484a4c59bfff19fd344123bad88548e288ee4bdc1df714c7dfae404f0aea6ad566c9396811fdd2a9550922ccbee0524d8265a469df8feb3f4495f13ef84b15a0a0c05fc90581563faef6cc02018e701cd4bbe485e57e26d5a6df768df7fd6acafa0dc92517b2a7735fc0e00db6d96b20fc56bf39a31f58b6acbf9d6707d5cf75c638d9fc6eb8670e40bbd83c662326d4772dbe5f6166bbfd4c79ba9d38c5e0f38bb849de4bef251318d4ef79da03cf110e07e05c5e7e556e5248ff9a224c6120513ff38cc8a5f5dd5dc542b9d2089dc14c4584c9bf07e52632ae6f2b2252dc0f6cc99dad7dd3c2f3d9dae235ad9bf7b435bf207dfff4fe97e280e2f7e06b0984be6c32b3ef5188fbeacfa98a245e22e54a51f15a18b0c061720dbf26fc3f8b368c9a55e39ed44a91f8772ec5dbbf4362c2d405636edc84a7bf3f0d0ae2747c7ea301ad2c429cb6995176af5bfe18403d76720472b5b6d5ca5535ea3900445241d6e168cdcd04875fdccd44b55474aecbba43a2abaee4b14c60894629516b4ba1c4211727796945f9220b8cbf9aad96fdf9141226126ecdad95d26254d7264a67630365afb657a665677c6998966d6485d86d31b1c925c0d8ad65294e3fe1ca1fe85609c6ee529adfcd0b608ae4d9a4e5f579d30c80ef7670b7b81c69eec42e73d3f4230f10d4f31eba0f64ea08551fafd7f7637d6b5e18c31a55f191bd5cfc43102c5640e36608982883c5e879e08f7a634aa96908022d8d38488801e022c33e331265f432677f7c781d72bee5b2c17120b3c4112c4f7b3f86eaa5a524ec670691a0f72844877fd90bc0962327a187f4c587dd8fc51937dd98c161445a1a393baaf0015fcab1106bb53489059284ac2daf7320ca388ebb0f01439a281868cd00e186505af296ac4a2cdfc4cc17d78e3a0a51ae8752704a32c276329c73581c9cc8ee83604e46f1c22c1b9c6a2410148666227f93fe63b740cc786909bbdb0d8cb20fbda023df67bdad2dc7c74745a76a56a13639c1c06bf4cfacb40f3de5d73d3092ab9a49cf2eeefb659ab232128189267922030c6bc6037fc15239f055d9b9e9d5d2f601d942be46b93f406581732fc762d69126098ebb15d60cad7e86ceb45e48d2454ea9e16bd60748f086ccef3f913a58b08dca1524c666a127a1c6ef7b5e201f4a133d2d0646bf12c62766e0f249f1f96cec823a29e240ba66e166eeaec1e99c5dd386174859400a777c358caf605b2d2f3fad6e910558606cd8f926ebd1828584ea341f819ab083e96e55e4372c01ee0f0f61841dbc60b6d8da7ace844cfd6d19645d90cba8ed4b07d1c55185168e651719a0c01189b717423cfd92f8b40cbeee2f36d45ab4fc0a0af8fb5496d46351cd39f0f2dc49b192ee919bb75f78e9a8bb9a12a10b11a06f7febf9777993510c1a5f65a0fb2ba7d471326494cca739c54d72256efabda6ed56916cd125f32cacd10e911a046c5dab0c952c1150c042a2ca9fca1e060afc8ecb78415bdc00b4f0fa150e11dd7163ef1ed6581a69d2034a132e67d116425c329b7e236f6d672422d3de7968c27eba4dba0e6d0e2e723cf906cfd0d868954aebbcb6539a61925ca375eba092f5e129a2bf2f1774472b4127b21660cfdb146285e5c95d4ddba4981699f545610c08dd22488ad00ca271a0f7a7f46128f8d157960d757d198058d961d2b2bf581a2d74649e11cf490b8287aa206de788c2b31a265b33ab8f5a5b57ddf3bb063b9a99b84f15017b094a3628310e97fc77a7702568f5f4800383f8220c22d2dedbaab7a43a36aa65a37a36aa65a116483dac5ae623f8cbcdb8891b700337e226dcc04db8891b700337e026dcc48db8891b710337c08d7b88aac33e350ad57021f841e54ef50e57f129946cefe51b870ea6dca551f5135e33a1642475b3fa2cbc57ba60f95147dd2202dad3dcb2e4b6681b201c1098acac51ba437e14fb1687b8ab39d9af6625e09bf79d3f5cb8c61ecf3ab0e8f870e8245a3d99eaf18f070191c360962b2edf0b709f460b068222d43867872232336fed3c0254428843440c5e5210558f1d8ec50551aab15fc3de84c2cdd84d29f8812ea58c1e0dfeb90c061f9ecb3611f767b1a550ede02bd7fecdb06ccd19db295be0f10eace92840e00bf3cfe1f264df6a027c0ac1f5e9b223511c638dbc0e4f21b307b6b7f23fb0313ba084e2ee0ee5b660da2b66cdd55f7d8cb5fcbd577d07d8fc7c4158ff72a7dec17fad4039a59579e28bce8cdff8a1b5d08c3f9577c73d4b8b2d5816567897a93ce88e82527382e05abbefb65cfc87feffbab44a1365003ffb8be3cb7eda44c7bea62d5a73b38f31260410f5e8842b4ea33f9a17f26aae2ad96cf8b805d571323fcfe31e4834233a288513ef8052eb8fa69e25c4886075291ac5bb63929369488125072a8ef5f247b7053798daa05de84e76836f1c46bc872e9c749b0ba7181ce12673dbb141c187ff65d6139563c1ac9e2a007cf6e3977afba0daf5726732ee3ef34759b0b4ca6521a8cb447a18e8c885a3f2da0b0330088f9365415b269e17b238741e04729e37a054609bd4ac2bf521364e464c1d546769dcda565932bf3fef27ace5e5db346c36bacc0dbb51698357d317dcdba53f9de6680c49ac032e34beaa43a3175f799a440239c1741da74c0b9aa2f2b9a23b65733edc73f21c21907a8d030e84ce5fbb8074ca58abe209aeaf6b7eee3868ae8a621b5add7e1e59c520821da8a85c3bbd388f01ad6dc15f6d474115826d1ddd2b6d27640f6df150026c8684890284029eb0088846197a6cf6c626d69519d832459377cd8969e6db9e162ec788d7b5f3e37933b906b091d768dac5b14563c2fbf8c0540f2e7dd93ea020632f8cbea91f7005a0188b7f7c9ac4bfcc5414de55ad91d1582b58a4986616ea83a57b88fa9e9433bca840c3b76f88b0bee7211abed4841ec4a91706406e870ae836a3cbbd861fde9f87ca82b5254ad2d1c2bb2ed6a8c4a43a7456a3feb0b82c0ecac63ca2f7e04fdec64b1c080c877d21e2cee876fb9c0fb51c1a05a78e24fcc534ba0e1567e173c0aeb2ca9eb030b0a232590d0721a0de89b2e82f3f90a55ee0d46a9253e851325defde43401804d02794c2d7718f10739a01a9367b2c24b5d7f7bbd48c396b9eaa686e69228a25f00b35e56de8ccd9c392a9db62bebb0df40fd9f384771ab231bd08796139082aed384af3d57e2e5fa41c7cf29da7216e8a4fc09381b2493341300654196cbe9420ed9749e6b2d0b2dc0b233be5f83d77ca4ab7ebd515e1336ac99b464c4d6b3cf3609c0808054bd38f00ccc2f8e019e83406c2563dfdb60b8469f9f9ac4b5512fe9623e7c2cd2f75cff15ce66ae01b77af9852af10d8129ea451fda07df113dc86d0d42b8b85933fe1432289d4c202942531d178eabddc784cbc9ba902fdae9c785fc868dbce296909a3fe525c1f37ed30ec1836645b6154fe98762a1536ae8b30006b8c1b3a902f84cff9247dcf8a44d5511bf57c5af89b7e730a46fc7bfa12e43dff9956db248e4e171190634f9b43869bd8189b9a920f4319e7d2677cdf40441b9d92645169887532dd34725af5de7cf40cc931e9adc938d878f3c873c63f92ac6066045590b13474a5cfa9d23776b04dd7329f14b8eccda54cc1dcfa81ce2faf9049d83eda3014af7c837e3b08c5187d243d945f3d0803cb2a54253030ff69509346b668d2cf7d44598e0cd043bd88548e76e32c63f2632945f30d17b3d30c166d7fa84b29d02f288984eb8979c3a3a5ce0384a6ca90de28e2f12631c04917809892d6da9c80be4d7a3781b8a1401262f9607abc233f8f8c82d9c7df2a2f4ef742fe5e15dbdb47237ff9731f44a9ce9589f16c30d54a0fdcbbf7165e1f3519df9e51bf737b119cd86cc12b8edb7e3853c7ddeb5fe22eddb5ed19e6c7f5239b52987d8189c7d991136809b6daf70907a5f5629aa556391d5a3d10ec23d6595dc5588dd65f06753bef71260a6b8d534bd81249417c3b73029756e467b18630b455e9546e04d28e820aea437d9bb0af63f6be0d8773e81745374fd1db7b6b6673d8294e482517e76c25b2775b83f9c29db5af537a82080559b557041f9445d1a0a3e657bf2297e42f0cb8eb850e83384e4e7aa0315dc63240d69dbacf8b66322d6f2033d0121ee401a8f2ccf3b8b35ada6b2f4de3974d22933fb6fcc14f600a1b5cdd4d47909b422f06c5926f0f6dee90d4086c4e10a177295f1f2ee13fd8020f5e827a4595c0b9682f063996d905e44d7eb7f67e8b2eb769ef657675722f0df6b9f2e231680f5767386c7631ec2bca898d7d57c1d1f549c2e4aafad750885ac5226578d2f8652fdcb8ae8e51ef6aab2eb1a8522b98e8133938c1b07e844f42483ce5c5ef3026c4602d19f94dbb085939d5d089c2c92a6a3f478a53e68e7dcc8d4b23348b9ad3aa2ea524115140fb4842525e2adec14a15c52d61ef2237f2d493b3bfd0277067efc8bad456b8e9034c662c324248cb978aa9fa60159fa37429491b1136d9fad636b36f99d3c661b6c8d0d2475d65630bf575af40cd7f7ef1a45db5fba0c4e0319709621139e4cdcc598dbc8c98b85291fd87b897c64ce926e3fc8bc728ef38a6d6229356a090041935889a0b890da1922cb6a331d41e40eae41deeb6d1a53107840e916605e65e73d4c0a262f414eb2468e04bc5a5a7bf8bb1b4f8e5701dbab8589c53de245e43ef5387a88687e0c1553edcf98985bb0a80f29fa08f8e6aca40b1051079bd24248724ef199e54223448dc7509ab3890ea4e48847a8378420b99c1298cf6dacc28f2348ac50e0f5c9f7e1dc137db9b5576c84afeb5b06c98d29cae4c8706a75b017d8cef80523f3e82da369b70336a5f8865eab6ea6feeae4c0558641a37ab784a814be1fd715057013f2c939884d0a1d4b4d75bd224f2677b0a7527043a675242d51b3f188370eb6bd13c0f808c3a0376a9fb84c458dc3fea2494e322376d20abc16a86ce4a6b14fd766b9c102f48f7e555a98a21a422e5b106f11f43fd307e71fe74f3a21cbc897a3e2bbfdb7e2adb26b7b7c45813350dc7c70186cd1b13c52da0126e387a322bc5a0755c4853c4f20e48d19e0158dc273cef04f1746e282abe3c6fd55da281da5eff9e89fe8497041b7ae0ec7c66c42f3481611e1f51102f8c4cc14a4084d10210333419d7901afad75129944a7b806096600f30d90e1a9d0cc2314f1330e47af5091b873cb8b18793598f4d86a65f1f3625c32b1ca2ed4f7540167552965505aa3030c40291981d9541b3130e4a3f12f022c9e68fdaa028a4b8926d93a0122778c844c2f90ce0c25ca95b0a3c4b641eb5c62ad9ac09931c4510ea2d0c2579d3290389a8c1d2cc8a0e89c816e2fac01106ecfa0e8b17d0084ca084b4659ce700eb1b9f44eb413f607b1ae8882a2e81afe62e6d626b3c180a801d24f6687b3414cb88b9176d715547f3b2cc627be9a9d51005c89caa4e3d05a4fb09b75e5e8ab536b8dc3d449876be6e2aaa034c10e180d926965eb5e1297933ebc88518166b2f0b685a11c728758c18baf326dd8ffdda07a20065ad68fab1872a8b718a383387da2b2bb65cdf3b3bae4e8f66045290e9942c4411074a2e3b35dfc7c04a9fef472d040f2ab316a7b552d394062730ffd847b25df16132ff27a3896e629d581534a26496d54be859aab42780f3f6ee36b0c0af008dd0bb4b47b48eb1460b0c279ad67b64adfb70fb894b698266cd463ddd50829e82eaa7e89564cd3ac76afd6983c6858a05d03413e9bfaf937afcb395db1f7207880f8499507d59776c99e6515c7653cdb41c6e0ce1a5e682bf83de20ef1b0ba68c210825cd406a836ed5f9acd4fb2734f53b297c1b739eefda128363c6859d6771c862ea5778aec66803c26d999bc51b757f44a0034b5ae83fca56821c156a9181cac8444c939f718fb7a4c4c71dd577a2887d22157d699013f0501ae5a1d2ce27a64b41171cce4c547b54979cf23a9b6f0064e8407f1c4c94820745657b4b792bb65e0e67dc6422c5dd9a270776e0b51ca9b599856e34c4b4193a2bfeb979053dd68672a7738685b37185314f5f0cacf06c49190686e06de807de5fea8b53e48eda4e25e473d75820d39341f9cc1d48ef779deb3b78f19d9de6a456de823c9806bc88c8b010f8fb25f34eccfe62721283f145ffaff393efe74bc38db498f2456d21e99e08dc926032f9953b3119fd69b9a3e6c188b2908d2c2d20167976698b545ae115d7a9690b6b31911c85a4c1310d3b182f7ae77be9e7c1780412f63e46ac0dccaaf900607b177bcc5b2400f8c925213689f491d27dfb3387de4e0d6692dd069a7d468b14407aa90d588bf44ce1c44ac547cb28198077a5dfc9d79ce3299d0ca6e031433d1cf95b2e8076f26b93b9f938677e16e042d20e462477ab0feb4e19ee39347188be8ed9378c9807ecd9b8db50893bb7ec27e21746b1cdbaf035b2760b919a55273aed973391db71748832a213e33cc51e9d0851878b3563e152cb9d2487315a9aff3272db0f00d24ad482ad3531639ae586fee41942b8721dd96355dd73f043add1560a07e468826905146c3b5168f93fb05d71b86e8cc301002e6540ab46d3ffe0ceee5479f7a0466f63ccced98bc2944c37f768a5f0e942abd6f63bba51c327d2d237abf805ff495fbb9917595bc67904b11354f947c068bc2571a06afed005b180f8cafd5c7ce1d514103187b0299f2f91d2265a8ea12682237af417cffc523df49bdea0a3e7fd99db33613b47ad0f2781881d58147e6f0b16b5d41c7f69b6ba16c7a4f98f6cbd82a6a71186eb3ecf3c6c5afc84bb81464970825231d31061be76c4f24fba8c64fc4c922fc4b5faec2cd18c80a216666712aa9bcd8e6c6ecf0c6df8a73db5e626c15a0839564385a3adf52eb3d177adfb1615edab02e9094f702cf2373812446e91fc7a03aed9c6ef4037e8fbeb21166d6e12f63dec69ee6f28e0466a99dbcaa42d0e0cf4e2d4cc4db782ba5a90f3adc2fafa63bbcc650fc7c290896c4059f13fe642dcb35e29c63fa12721e499962ab92b8457dd3faa62bfdaa0fd6c26d32dafd4dcd4b889acf7519d34e2eb347e7eee8473731ab9ca39ad86d278fd6e603aa9f7ce4c90ec2985843152724746b228419d10fdc60d048eb736fdc7f2c18551c1a681e9d2152ca2dcb212883cb925638c79290a96d8aeead4ce2f054a824f512f5929572150773112e149cea79644e852c18e1b5277c453796603bbdb17a1f441b97f74dbf64331306d8442c00bc2318e588cdf49b7e7fb946c86671dd32ec295469ef8a742955b205c7a45d00846819f69edde333b1334af87b4f98a41f70a14592b8d18789b0eb20ef480975c58f60aa16a148b642571728c12c14adb25c8cf13c952de0056d24d98b393593b1495f07fe10e3a53716f49730b59320e818743b898c68e057217f13dd6b890e6e5f2de530e450ce3bebd815d82c2d799edd0f5aabcbf830d4e5f0599d566296e2ede36ca13185ba34e4c66bc3285a0e7324ae10733d7b5933fc843a3d64514cbbea83a34fd6e9275539797c6c4be486968c382c244cb035a11ed7e87f14eaa1a19d4b05faeaacd988f562343ed269f19d83b2d8056b3618141975eeb8c6f031a3a8ca934e1221f5317215bc85554f945223043e1362f1c7c3f46d543a2e4e77691fd788de5b40cd572b8f73981bb5c9d55aad5160a3d446b313e7ea2ad8461e4d56771470351b04c58377e5b3d74598e0afa6fbaea1947f726fc1e740bec80475bbb9bf029825ded0d29f74f2f2d971e2001352ea392f284569c6513dd55baf152a934036e841a50f2a6017d5483f58ce5b55030bac85bc266c36010d30ce507432028e5ae8fd42f6bf1e8bc47b9f6d2fc7d1282d1a1cf09bf0b89c21e71444202c1483b7262d2f300a19382d84d0ff4974ca4cd86a29757820e6c0ca4393d2457de019db3d5eb21e115d7b836f0833d8ccfdd6022ad5f0ab8878e1de61e0ec90d183b3fbe7af92b3212c91f54e1e83e20501908777c85cac01740dbcf55204be0384601e6af861c4d76bdcebae0996a771a4e774781dc16f53d7ec07338da4b997e6406f4d67f2e4766b496965546a484387d4d689921fa5e9952bff47d1c9e20ffb7e21b5e10dc647a541c6f009dcdda0cfb345cdced6355f658afd3d9f1319ed029b6284ffd1c422f885093d6536f99ae49a0291b45d0b066c06b0a726a99608b469b02302f64b6bdfc1045ef2783d19c7f3d644cbd608bb0860d4fe04275a289536c340500b8e03916b3836a9ee2603fda518066ab880ad4da1ba0983c75248c0e9a2554b6702075d146c9f21cd119a8c0e765c45fa302491c32cdcafe004582142c3c90f096baf02c2bf1a05bf9ec830751fa33faeb6975dfadee6230820a807a8e6631c093e27ecca4b8e70da68ed04e9db4b3803ef277f10b640122ecad20d5b4a3b06fce708281bcf27b4d7b24a47179c5cc06a6ba1b531daf4006b55e0e44a7d941b94c215f3127791cc55231440ba7d42c4d5c2841e31121186baee20a58b955ad50883afb5e1c561b20aae55a84f60158a21898d8992a2b5ce6ac177a0a7d8ac4cd3d256104ed645964551c723b566be2fb8a43bd401d40a580ad1f6c1bdfe3e85b11778fc267c7bce8a25cec05c805de064577f8828351d352bbea70e4c44edb0d131884cc40b9b52b7a3e5ba477e7422c184098590d968bf2a021249077c83bc0dfb4980d75defd90dc28643a975067334dada5c2b546f9a67dabbe9740e417dfdb034530027de3c327e40ae1a0709d92573733993b82697bce00f5b3f114fc2e2863fa9294931b527b33ab90588e2a5289c9cc67bb1fc31c4223197cc50919724d4d4d229f91d0706e63ece8042496e4ac171a7808b56ac9c7a445788bfeca8b093ba9b36bdfbc2ce59253d52ccda0547c3b75cfc3c5a24820d1273ab74fc928432fa67ffddb226681ad189a9fc68be4740124ed5c8b516d4721d76f55fcce603f3e93bab3200b9f8d33ceeb03c641092d311a9fb549936b17283fc6c8f4c11f325970f736e320534aa49b9c168f00a5289ebba0e03a00c203ca8c68b70276fd99f4eaa63e892e5c9795527b885fef9d49ea508e51caf69caad2dee23cec65e2b52c93a53905bd1cfbfec68ebfcfe39c45a57b0d58050bec6f8df6d5a740c6d537e7834f248be58c0c2df642914d5f8e21dcc62732c50911ecec4c67ee1d89e87bbc275af8b1949458f352f7df8b7e1528523eee1c6493427f579dc2d700391f47276add244bb4496df122fe0204a5566a58f7124ca91e6e683c1d129cd09162aae8357054f2984c22b49c3a80d7756f4da82ae2a504691915219f0bec78223ee2d797f79c4e4639656ed915ad2b4f7f1b183d3b5b77f3b3a54d9bf7b12843d2fe1e621100b9cf2a020656d925979d07f547afd1aaf653947508cd9280463326dd269e3f3645f8d1d509acd778a262e30f88ca0d22c9d438a62ca018bbd6e2e4634095f48722854af89f3560e1458c3c731c8ec55c221223dd1a372eb4ad288ef8a5ebfba8285e6a771080e3bdbcbde390230f5b3d00b0971dec13de5c4abba9f1c470a833814992a5a1c2eb74cea31194e33db9b92791fa2d5dcf8293a4744a4b50f1e3f62eb0d7dffbdf16fafc56670fdd16046aa0c3b5f5681c86913eadd9d2af7138239bd0a6f1db3103b8b028944eb6fe6df5d40abb3ac80ce58e1b254e885088518646c73730785ddd5e330da65aabb0de26b337c55f4df45f5d47c0ae3739381c3b6f0d223a38be863ac0c3f78b1eb376821d4b60d924aff587e4abf4fecac5147a892f374372d3ab545c16adeedd51e19c7e666df2bbded5f1dec4b8b6062519290388f3f506f16098db0eea0fa544d9e1bba89580961c4eb9dc745ed68fc75a4b0f1aabcdc8d5894eae4da542e5d8c60e2dec6671558ac8b92a430f20aacbef8734bad34cea10795c92f30ab568bc890d01e232f7686a60e9850f39406fc65bd2f8282a5b0bb04aee039496a48aa776f6667253b628b2301c1315a1f91f204e10dbe70d0bdc42001e8a6f027ef8738e346292eb09ea5dc65c6123faf939222b0f22d6238372822322b6665ba4a62ca1080800b65af9001731c992161e01fd1aa44d35ea384b95104b3bd7da12a8a5efce4c003512c65741c3b5c4bafbb876c9650c0a08d53b666b71d8f3ed70731f1cb628020fc7d1e67b046495d1d7f1924ff2615271db3619bda4698eb2e02d428cbec6a157d010bcf377123ad40124b151a1b6b49ffc45311fec7493b5076527bf709cd094d574c7f39f63db01fbd5897811dcf90fef04562c1d2961c98e47a55b84be4e925c219f403bfe84ea6ce8264aeff30ebed6d7ad29dd98b4e47eadaf600cf05b7a46f24ab0b5f6bac9c8ad60c9dc777f7ef4fb1745f01b07ef3204ca2cb276cb4d7c4630cacb1e9dcc0a4665a239b97e09f6c1e881a7e369aa2e4dd782d937d86792c36aede5b54983704cd7964f5ebc820dfc82ca9c7099bcedc7674cab10e88cbc2dd8ed0aba1ed6de6515d7837d3ac2f9419de648bb2e222ed7e25b26b4f0d78e398f53d881495d83471e24306feec9ad4da2f8fae36ec609d6b474b72b7e6bb1826b843a2a7d828562c889128022d2e1c1f58ca528ac9a6b84a5b78164e73f9c1dd53b399be78219fd8b097b7ab4063a9d0711a2a7e19afa84a4017ac709d65e8e0af3a26c1b659abf8dd27527d88d1d4a8506ecce37facea4d69ad4acdfdc28c7b8c806b814cbe57da5e53a2ab960f543f7dfd2c3227e3f5fcb7408cc3d253b91c821af9ce5e18c5484da0921907e3e1dc60043c741f157a7b3444147bac81853909608e2e88dd3d34565249883695b20573118573656d374fe05542ac2a89a0d917672e44f617cf0bbb17c45bee229568193015c11703da06bef9e04d6b90dfd8bb0067a4957ded2d796d228d31bfd55a0efd5619ccc6407b21bb1a4f699ce332c6c0761e1f8659183fc057a25757dbc9b5397554e93a2be566ef9ce0515e0174e045175882084659ef0c8a0563f470e9b7900a64bdd1e2365e2804fcf4914de9a64f89f3a21b628899a9ef00921aac8384e54401dbc6ce0a1d90cc9b63ad1ba071aeb0e723f02a7619f8ba3647982cbe490136f676efb1842a1890216de0ab210e9d59a294da067a603b830f6d80891072d81131362c64c9a2f7e66858cd5aa570afcee71dfca7bd000ad0fff232416f8fda47ed284a2e52a1fddba4258cf96d7926e96f643f197246ec32bf429571b0877892555e84f0b340a8a8756ff10b26ef5c4b695e1b4f95ec1188480f85a4f91354603032f80b69f68f06222c7bee24fa13ead9d7d1221f77e6a5bd0d9eb259d6a7e97db392b79c5e308638e419d6995934b41f2a04407caf4b938c1c83d96244792767b8cf8254b9adc03c0ad821ba6535c1fbe8356939f446f93481ccab1448c7189f34af824db890b020c5088c1d5ba4b6fbdc752cfc26abb26fbed54f98e4e52b7b7602d77eb2d10f35681c6338a6ca996150de0be02c8f2876997ebd693f4e4a19c64ed834b50889a2bd28f1c5698c83e5463963db3262c1d4ba72bb59c59190e15cf4505ad206a348e5b58234a6e679e9e0c3c6dec269eb735b9db16110133f8097968a39c5990c528b5a2639e658544e5c803bca7cbef9fe1cd7fec1dfa200dec4fe32e45e2cb2aa353ebbb94326372c0f7b9ea82bd52a69e1799817a56d5aa5cc964dc7c96f0ca675615d95b95864d6b7a5e6c4a781093e8109a1ef24bfb7157dd2e18024140807fcd846583839f907a185acc5d6e445a9fd294f3c119843b049e5067df108deafe8d0ca23cd6e2aa4e281566824090b2021fea3554db66e6d2d926c713d009d3ceff98a3c2cbaf48a43894ef47d8709288add1ae4d1d24d54ed1b11398b1249df3e2e5dee9f415a7a8e73d1a39f4e07dcfc503fd6bee813d64d5f768114a093e1406e4bba2ce79076366790f3227e4cc3311c87dd8cac136204cee515ce6ffb301ebc6b3d0204b266a31506cab44546846e30d28fbf0de6a0bf98af097e150c86fb2a1cd51dfcae5acf7f546717435efa8f241030fef1d834f334352774369209e974597a46f69d8afeac7f0e4583f12e4c898a6a311b4ec061f0774e535c6f0a212966aeeed08700723f587f7d05a138156504988f7e6b74466dbd3951f9295d171fce95c1f4d46b21687ea4323c968dc6461b93c61b65db161388062c18453847c0a407186c5017e8e267e3d48a677b7a4e7b635ae5dad9871dd3fe81576812764688e617dc618ba79ecd6059ee02d918d6e33f49d1d3c0b550fc5119ba36d3985f4a0ef4e160e29a2f6a1033f3ee81c9463fc4c140325a2ffe33f95d9cfa9f6f06a9d156b5538f18e8ceeba4e68b8a223237e3bb2fcdb0843745c047b37c9d158a134984738bf31c517504186e2edb4509e08c2a547e9f6f33afe8bd36222c935c06cc6b61c5182241429c32dbeb7d6507b806328fe3ec6ef8778e59a2f3239b9bb166bce70a0e7da04706eb5cb3429715d2ad66a6cc986796d3b70e98c9faf010904f21f2de37fd92548d082c3daa9dd4a67bf5bccf6fcdb8da8cb268a305290ac00eca9f6d2c9baa03574a2dcc2c5bde392a60640d0630379a8486be69d2a72b1ca8b5b3a258d04b434c9f2199c996e9707f315822aac1c58b881b50904c5a17048b9c06e1e017b0b4f94d916d05dfc19bfeac13457926e6d8bfb4fcfd0b8d378e3937685c26a22044026008037f564bedc3abf283f537320a09c5c4af6735c451ac83f4a97dac04ae8453a5290d1d501403621043550bac5c591ebec5604e26b754fc7d39ff0f494730c8a406290c9887705b8c8b49806698d8c52a76e9eceb93d479d27406ebaee043ceddc6530822fe9cac5983778192a8ea824fe4c38b911df6af61511491f8764388100a9944f6378a25ef56483a92b16d0d320c51eedca661aaf2f2e5baf34f40ff718440e64cae36bf046eaa187467a744c90242d7f4bcb6dda9a32946f381fffd322c2b74581598594c021319faa32d23b3fed21565ca3a9f6eec815ae9062c44ef4efd0899f9e61c711ecab29ab6f335ab45e7656884bd5b5ddcbd12fccc35657d0fb0146fc8e38e8f53ddcc423063e3fb4c08993d2b588205f5a3156d63e7460a9280e4f0bc8636028409223c7944d07ec0bb78369e8b0156f318ab9dfadd5c66a3bf39de0974ccc58ac0aca6cf71c013604ad709f1066b8bade6a467470d06aed70805400f49d4f8979600f4e43312e84789a2dc370da5a17c8f456b78979982b9e9c785b934bbdf02b135b61e3933d0a4cb5504eb732a9f76e3499c5def79f7c87fecf20f991f44399cd50d78adf40aab5e975a4407dfdf2a59c3138125ef4329c79e254163f6d0533139c2f0920a03d0dc8b8d2e4c677652f96eeded00e2960791991d2b0a23074782b4a557a61ed680d83d3e268cf67334091286849cc23b43356aedb670040ac1d54fc6e17b4cfdb339816036386b7c0452a0977857a380fd9470eed7458b1b3b2a9688ae8b8d42fdc5de942a69a3654993474726a0a07759115d6576688297347812a445db6d402cd6474491c8f80d03ce6165015cc0e3c666486bb4a9306c9eea7574abca07dc163bb0c0996010e26a9778830f92bdc90bd242ac67a6e76b021d5e3565fc5b266bb71337da2931fa953073538afcc4122461dee97eb9a7da21b40fec03b78611412e02402a64a6a80978a3687dd6569c3ba540637933c2bdda52aab271a524b0507d75e25968ae7876ed51053695d078320135f5e41a7d20d70d92979de7c5b8fdb1f5b0ff3ae7ebe81410eca27a0ce6278d56ab7b5b781272d46f1bedb520dfc110191e6c05e10d105433dc53f495db69d13e32114f8691edcfbff1363252905fbffe923b49335814fe5c73c20b6d5dc9dd6aa288fd6506fedccdb3c4d80aac5889da9a8d8ba628849b48a266423befedc82da9a5f161edc3739616939f7fbd2bd15320b750d58e10ecdc9d2a774ca273235ae1babf0f04e9a29e6342b79434f4332439c5bb0b858f98e8985cbe1492f99bee12a471bb121c6f5e06277073b9f1457b5718344a2dd57489a76a1dacb547a3f111a0d8d7bb9daf6b3d3a9d07ac264d05c616e0d1095fe012f8edcc4bc34a55d77d9af0ca5c63fac97788076f2abc282c7c90cee86d793d8a183d63484814ee6ae77c4d57bc7516a779fb945dc0944278b46a9167706491c4b70034792b8309b4c1644e3e600fa2df83b62b35a604b96db4a40f9145097e21b981feef70e68176a7c9979b5b8538e17fb26286d7c8a5ca3a7eb718e0d793b08b7477c7cf650f77d4bba7db6a57ca416213430ffa746d4179e3ce34b4addc91a1682c597458a12f6f76110d43d67874660b283209b431492c6b5f12ca25b6c0e51074f3363b070f95a7b5b0717cdbe4d71e231d18f15eabc813db573183e29a5e12e540f9212917bf5ff9c3b0804ed62dbbb25e62efeb6012715168e5292179af5aac6509890abe973dd137f86af46ae214bd038816ff6a81be58f66225926a39b10b536a0b43d23fefb1afa0225a7e05df1b111f025f20e3d55d863961fd88f96ccb24ad34576e5590e5f99de82b40596a2b23d242886d66bc6872e4ff80be3ffba34de3f495ce3494c245de091f1b3e3fcb0fc851573b777773fb01879ba2d694b8a7f825a9c4b6d3fab7944c85db50e8f733a471199882342aec3a60627c9124162f98698145c5538a6f3f937e9e9c3b5ca3289886a9371c805336732bae48b8ae1086d9a4cd8c504682b43575c559c750959a1764ae00de91f5c9900e7e660169f7995d23250ba0685f0edf1a5024a719e9f563ba6a9abf969be472a2772cc335d2bbf8e14183f2eb2ef4835b10b918d3dfd2bc57d14a4c9578040340b1da6a7466a457b2227e4547f191b8c21a3658614888633e29b136413c5c68395c0eb502b7f5f5c14a15c831be818f264b4417c0c44c856c5cd254357c3afcb922c1087af4ec4ff82ea718b8a70f223eff31bb4683a5ca7d94470923a02ddfedd5c6d6f71a000f31e7906b197df539792ad1853651066b5eae97b43e7412deac848aed5f2886574d79829669e9bfa741112562566c8dc6198fd33e7972d55e6f1ac5470f3b947ac90104ec8084fa38e1bc29d6053dbc640174766d8c966b871c4302194ad5a9a12a0a5fad46b3eb51450378ee7a1a983a272650be43eeed18872a66cc5d4da3d9d236eb96cb077000a9d58277e034d86e3b1bd5a603f5790430054966c4693000478ceac8445e4d46a7fe6f10ca524ac6760b6fa2e881d07621fa06bb57514f7558406e952993210a32fe31cf15845380d49782dbad4a5a89d1b3acf69eadef642fbca9b0e396d220ce10d56106d236d4fb8adc7b5cec1e3a859a91f4de899d7be226087d4c124aa3da7ff58b159d8da6787b2ed471ae306f7b31cc0a56f68489cfe41dff373fb3cd21bcf8bbd83875f7538eea8c09d46cbbe30e3312b31c1a63dc5c86083daa4a121c46642496e13bc89602c3feb8a98ab54e40d47a0c75d3ef26c33ef70034f5f9962edda00b5fa0401a6301bdecdd5cf6e2c4ab62898d3758e961fe97c4481a0359f99a268a1df77abe27a88ae53d5182bd95aa16230700482b19ae1a5cec7931d6f3504c500c93a3c18d52dbf47248b84c4e60862283cf2476888a8c693a0210c81bbd958cd1d40ccc11e2c0525703e8845a170a8980ec6d40f9912eee8d777331edbf8a0c07b5005529aa588eced695b2b23a884e3c37ce4991c3a0b3e93bd821d29cae9cb7fe1d6db3ab4180375c00985764bfa6230ece0c72374d602ed91349f6db758dcc55b4cc91cda6d5d9dc817d7bfa0404a0894b85f52d9cd5468dde47235eae0ee5d4a8b1b7eda9aa5718f78a45b61581fecc2f9b4ce2370e257c9ca5562e9427545db43bca87fe3ff406a930f1e02761ed2d62dcff6ad98b15e4cf659be3ed83124d25aa4c4377003d56ca120c7dcee392eae01e9ace09b0172d877d63585671f9d3f32e19286ed64d9b6e08d59d14da90f249fb84b2b23069066893754cb50deb8686035ce8c742990326b406236fd65fcddc70b1f451d064a875d2a3920b707c9d814da469dcb433d45a9ddda0286673d351372239af39007bc4388224d3b983d6361ade6d1c3c7d4382c07fc3ddca48cd20b10846a8fb4d5801943300e4e1fe302aa0654fbd9d1be7e05228e0f8130cb667dfb45c6b47b6f8813d2bb53e7c12c24fa08925dc330886701e77093a64bc02daf7c726206cc0d55da3bc2a2ca17018eb5492f286ba20c83879c7572330dc98a9de39e5548008b1c81e07cd610c8b38043f6c6286998cfac41d4a186ed5608ddccb99e4e7c10b931d653a8095e08f63335c6c63f1b5bfe6208988b839b6277d4fba3ffe008c88126f500878c5690499774f136743d0096bcc815c244a47d5d339f81ba3bbdbe37fdd7fb2d559b5dba0b2d1ff6cdf261c85af487c1a0487b42aa13bbf4b70ebd33a5fb80e469b5d24c3573dd4fad752186098fb7e1d238f8b211cb710003510ffcb67bbdbdfb23ee20318b1959ceea83d4b8d9daada78e5f04911d0944bfb6bf77a7bbdb25b426d7540052a2ce622f00f0c05f7a46cbc1329e6f504e3c87e44748a7f8f9052d4e50b7ff7da7be1e8dd0f33f84dd18a17c49d00e7b7767a2281fd72c53841c1c9c1f49805bf84da51601f745dfa87cb4970c7c2961abee08ebd9b09ddf7996d18fe645913ba2d1e8a2e67ce9f7e722ca6e06fb6a8485d81e44d2c874f22deaf647475c2937d0f73db209e99bc930670e2bd67772224305eeb64aeedab887fbba905713e6ab2e6cb0262e4397cf5f233b602a269173aec60bb7286a4452c7f68a67b9a0250bf372b6ef9243e09dc60414734d2e85e4bf5fd1ae60a6f683008737ee765959b83bc2832c72474beca610db38cc501c3d33d701e1b5b52d4e547704801730ce94b2956f93cbcc88879b456f78a63a915fcbe8e6466305aa3c98ba04d579bbc2d2cf323ebbc6010690fe6e26afa35d8eb19c7d39e8b4f706cab9f4911b45d1e25ce0c68f66685e820e50ea6fdeca9310ea1d1aad2cde99dde6e61ed27b995cfbb86de4d9484d2245770706bd7e7bdfba3fde4e10eae6c26494766617d448fb2bb5b489fcb9043280b3b51e8229cdbc3a68b07d8495343f26d34446bb65ec4a4343d40697d835b45472988f1effbf163e69c0804e0828f14946661d541b3f6cb50e348f6c104a2e6c890ddaa77ece0e035c7355bc6b73c639aba91a5bd9443d3e4581c55ee60db9044775580a5c632bf11d305925c878250c387340f6a6be50b7c01a0d0673ef95aaa4e863e4fc9363e738cd42b0e2d7f2813c8ce59276479891959c7f002c032dbbbb767f0a36619e8506e6411ad30b76369e9bf0b446071d57217e748d9f56b62e2504f16df9e3720b40e15cc15085ad87e94979e14ba993cb9c4c9f032af083586d32c656ec2c8d23eae682738f3fc84c96d756bf4f4e8ef7a25f5783ca2409221bcbc03ebd8d632b3bddd415589f415aa865dd5ff053546797afdde330176d692d56d707c286417e8328c00a829d83f149939a365bbe36fd21d4ebbbe155220c1011fa16baacea356a26bab55f18f91d7ad9153db5f3766d0379c267ff8952f8fd229276257ae27be00040be2c1e488a22a7b6a2f6d044e47f11e593390697b80a1daca2172d0f6fe5243cf90410fb78336e7661216ccf4a18c4dbfe26f93555608363c459054d222afdb2eb770cb5ca94a803268b9f8c2209bb5c23203da5b2e9883928063d6627fa946177300f80f06e73875a73dc9155ea3ee2a5cce734afc4dc54f0f596eb6273c6e3d027aff4e7c8827fd42f0be8defc5c6047a6b158eeb0c22fa176116780e5b3d0283196354dda8996c0e57d21d6b41fe70b09738c903b960a8b9a89f6c22b29c73b100f2710a4bafa22f075a033b8ed9f8516111fe798b933798dffd06ed8276b06c469459463cf4caf55c92b8bd6031a2dbef0105d73f190444f176881a0c42bd82bf14f31b2b826aec3d6e48b353ae210d2fb4fa2d0887358c72e17b726827f3b5d376d3586a62b5f90f6febca2eac50734a0aaade1ebfcf6e9dc5859a53a2cb7938a15e043cf3d4f98f788af740d76665fa9d62c146c36060f4c150c0e1ff8d667066c2630852fb30b29c694e78a8ad666d6d7377b7053d38c13a7a3171384187840585f0de7891bcb6325957004f78af0b1674cac1baffa989a3f30c05de51290533ecb1cee235dc0a7d630e7752068c670f646a2ace55e39a81598af23822f96286a4a15fd22ad74cfb6b69ea5a6967c0dd484833dd4baa7fc656d910c28c3c0fa9a3f670350a4bb666f97c0a391f78865a9a2baaf1952814b5de6017ee6ea71737cfaeb81105776b0b75bf994208bcd3729a844e445f6bb941e88fbcc838fbdd70fcaca187a1109c85a6d5460a0095701b0dba0ba03a15cd91372606f295ceb6d764b3a89fcf4c50cbcad02babbf95558505ed13407499c3d40244b7c36247396b690da40fa1b18f0fde2e2fac82fcee7aac5349667b45d5201786eed1180818d0dc411d71372e62b4ba6e163f1b9bf1e48bb8a6fbf9469a785505544425a68699326a5c82d53923250055c053f05b1c556a9850cf686e9a54952190ca3feb90e7a333a44f62390ba00fa502532ef3cc690865cd9906b3541ae4f95782c37e4fa94078fe5218108b9fe60c3058b852c855c9f09b9fe34866ea15d8baff4abfd3a69915c7fdeb906fbb9c595a2abb8421472fd490cb6f2c09afbf2a4a1b694fb74d09722d74171fb2822d78f581a21d77fddf24eeaf3e8290c5b6ce96828b6449756d17cfd08b34443efa4be44c4daa70f1f5618c54300a00653b0c1a8e56331754ffde7d21a46415a3eeff3c38f1cf928d1b1a555683ca07f7b8135a080c61af01e5edeb4563fbe8c3ba3b5fa13182cfc583f0686301bf952e4fafdd25aad956badfe15629fa6c16e346444080db98ecdd71797e62dd03aecd7af000fd7b1c134e49efa153ff7bcc0d55a4dfd09bb2f4f1f1a9a5fe7cf3a6bab54d4042598218cb9f124c5a6a25c23ce8d2789caee082e980f767b78f9fa67351a8d4683e36bed471016bfbe2e7c27f36365616a06db3f7df55e754b6bf5abdb2eadd5a7ae0a727d7a85ad4f29b57613caf5a5a8d6ccab1803574c6b612862052e4aee832239fa208b1caf5041aa27cfc42a5139a7a4528d199f9a82d5abacf9c35b3ee945b739f6c7fe894bfa252dce39bfb558d26f739c42bce82dc82df260bb7a9c1f1fbef427d8f81effe14f776607c05cb1ccaf62000932e6040e48d6291522e1d79e945883cbba2c89ba47b752555515a6547a7f4a9a2497666c284a75b4421009a56c0bac385441762a56767845acadb5ee90210e1d1404e21591a0e0f134e8454870e16d53612a72e49199b83aac9a96e106a0299ff4e6bfe9b676de348410c28f117e14406b73fe04ef4a4a6b93c219638c78cbe095942b80d6e64aabd8ec234500ad43c6677ec850848c7c6f90fa88b5f91121b2863c5f9a73ce39e77c9db4627a2ad69f9d753e08a77a29f516d93d7b7d932449ffa4f720fc44bcc54c3b4e11b5d6606b0d351cd49f4e92b4802bc397558f9b1b0ba9308ef6f8c7aa8756929223fb9bbc1d391e8a3fb42ef899955b494ab9c0ca5e31c9709340eecda6d69cc1ff4ee03fa4408ffaef156f15c8fd3e71a4b896279d5a6e5c12a598699a84fb47f78d9124646a84bc51261021030c3c4a4d646f220ad9ad40a5265c1ed32afecfba28fb43f8f1b3e30d668f81505861fdb71bf9bde7ed98ef252de6357928f0bb4686ed150f99973671c38367a924035a96192c44cc717e6b71c6266f68cca2480a444552d03d21bc167002d306337c4991244d7a2b493736c6409c2449923006602561a079e8aa07e684a654a8940cac54044948e6e54f5a18b2f590adbf9025e9b7ce0246020b7d1e508a54925e8282ba47b237939d0576ebd7f5c443a4afb5564ae99cb68794c0c697be89f02418b9375268263412aa11973ea65752f316332d5a8b2d6f14017f29724ffc172266189f4e374c52249b9031520c438851c2e428a9c8515691e394a9405a659320184434c80824d3c88da5282303bbd1508e344479d02a1207add1c8b09a328844a2551a4b20ad5dc9b5b6807ef9244a06165291a486e93dfc27035b3d18193e6592a18bd93131bd7fcc09f6fdc2fb382065fadeebf77230e1e003f25bcc39a597f026494992f27140ca9243393f3a68da6c28d57a0cb631edc04fb4db37ade2f4cd900d35e9e2708d89b9e9f766b48a84fb67b44ae3178398198466f4b3ad750b0124a07374c72301f0a6d0d7516aed66f33fea77906d1720ad350c1a48e7004936b05b0301d2a01c2d50b05b03a1b4457004530511ff91ffe33af2dea7ce5a29a4f3dfa7ef6bc0ab220b9198fb8f8419d01ef80960e2e2680d3a1027da6391203728020c82021c20410a5094bc0934e4f8032472f4000c6c8f929cb4667e34a1073d600110700084222cf841911fa001c707994c26d3c11673b0066338c33006c6eca076a0301f55d5c3f5d27913387d6545d16371f1fd7189a7a3d6c09b461323060dbcdd9b3d9ebc4591c885099e70852f4c3bd8620dc6708641201008042200d52e76e6f0bf79ee6f17eb20f94da3a3e4ff9560cac7f3f493548a35f6c6d83ca65adca36950c6f0d650d49c61aa058381dda8a8c5ddddbdebbaaeeb3a8ee3388e6b98869976a0b8cee7e87a89a276b13493a1199aa1199aa1192aa2540ba5d66e36ff9af6ea6f29ed4ea38846118d227abdcc79bdcceb655e2ff37a99d7cbbc5e72ff9472ca29a79c72ca39ea7eef9c526b379bffe85d4a76ae3d25672afd57c9f8afe2e0f74e7c85f228c9495fb5cc60a908be8848e010a09fcecd7c00045b0866a500296f434805c8bc8940aa1430f33682fce24f74528bf39cfb3200eee64066dcada9b8e16e1dc48a0d8a36777b2318777bdd8bbbd1ece27676b7e8c416afc8fd9abb493bc8fdf66e5216367944ee29b659c47c22777fe66e0e646b2a2684a20c2d0e12093892c486283c91822c98408209982dc0f628c9496b66a2aa2d4c13e6c3be9fdec57c5c2db9ebe755ffb2dfac516eeb8adcd617725b59c86dc5e4a622f70433811e0b12ad72c4db4183c792f96a024da26d1a927bea7650bf4d49e4dea6bc4d2037f24efa290c181abc590cfb6dbee4f050faedf52101eee9a797c78a7b52ee8deb79289ba6324991df7b144fe565ac78f9c15723a7f957f5e0f06aefe4b58a6559d81ab5d653e84ea06a84dda650eed73cac2e0ffd99f76d0aa24992f4a05bf07b80188977d253a4aacbc384c44f1255dd1e9d8568a9825803f008eb27d03be9118410425855553581e08e1184371e4b07ace7ed90be5f7b2cd6f7e36895e9bbfaa6beff6d8e862b727b37dfc576e7905b8719c43d8f8a1c81b44ac6486bf1054f257386e79998d10c727f0cd1d2f29922f7186995d975e60c4f651ec1058c7bfab35a2ffbf00ac1019a2190d65a25c63983c45c98297d178a95f027c27e64fcbc2fde8508fbd9fc0f6f43cb8708fa997f5d17187f7d75ebe5e887669e47c3b844fc07c66f62fce6655c1722fe535f4646c69d8a7839fa63dcc9044f87fecd9d7cbc1cfd306e860d4f87feeb66b07893110fa55fbad30b9ef674d8a615e4fe89833b88782c42e8f74f2e2d5d8089399b6943260b4800ee3fa32e80c59cfd50b863c22e802ad3f74f32782cf1fb27144095ccf74f2c782c42eaf75b57c8fc17d6fa29721d999809486b47782ad30b9ed6df788a26d04beecfc0c008c1019ba5187fc1936202d25138153913c3e57eac21cd6f2f473ff5afcbd94f855555554f5babae8bcb0f78e4a3447c22e8e7c73c72e4c807565f4d3d74b6708c57d15a7cf8dca74b921b27e24b0f5b40f8dec88a7fc8a3b52f58c72badc16f9cd2da64857dbfa5e423fcd01a109da33719a584ff7e7bef436b40fc0044ab3cdcefcf9fbf87b7f9405c1f7e78fe3ff800c4731f8090f0bb13d0f9e0b82184f0c1f8d02a3fb40a10de3cde7bef01a1421345aaa00379061c9b1ddcf38cd651fdcb404aa9bbbbbbbbbb53afee04dae34f371b7f3017f0015a41614a5ffd1f2e40f1fc1f3cf0c3103e4418a586ad79c16ecf8a0bb4f78cf38ac9f54dddc3cbd64fcf3573768f21a08b094e309256107d94c86c00e617df555f6ca82680d3e3bf682619bf41188c71d5a3213d83ed0cab17df512ef13cf59dc8b505b9bef886d248ca42b638f653cfaa87e667d563fa57adb56f37c9e5fad4fe0828164093a2268ae90e9ea72e912b97e9906e41aea0aa1242a5a81e916b4d22cbf8ad8672ad1506b956d0d54eb9d01b24bc27639aa02c8f080521cb2472f5411ab9a7ca16f7d49fd228d79f8cd84d1a49a3c702737d090b1fb9e2cd16218dc8b5259ec0c221eea9f5a91a6c19ec4643a12bb6079a852fdc2e1e00619debdf05ffc598d26992524a29a5537abdccd168341a8d46a376711f8d46514836d190524a2965942449929e8a224cc3b92ce79e739e8407c1662c9cef8f4cc01d9aef8f166b1ddcc93a9d2ceb78f74efafd0927e245327c3597122e293a1aaad1585362730d338b56b18fdfe5fe0f78e4f38feffb947447fbef3f6f07e7df23e0a960ff2089e846bb68341acb031f00c110374058e7d2607bc44f42f23ed7c64791a784c4a32429a5b08f71c8a4198b8a44548b24499224491e638c31c618638cd18462e1fc7b10bc1d9a7f3fc453c15efb0d0221f9ff0d824a7e832d8f5abbd9bcbfb8e742cf6c50119290dcf781529e2495dd2833d11b4a6f4e32634511e7c625de49bfe64626204a3f766313adf593dcf729b91acbc1beb5ff9f708a8537edc2db2677f06635d7fa7b6dfc5f8fc743512d36ee8db7b4fb63042d9f1bef993a529acc384a5686baf7c66b6efcf572c164a4e82de19b66c6e2f14e321b968395dc20c1540be5e3b15cdf4f9500eee87c3fe5d22ad65383e27460638f92522d251dcbf1682478d2a818638c3136d542b5502d548b46693e3f22afc8c96f8f0acfffb3f11e0ca594d20907d5d2988a688e94e6ce3c49949c24a5b992e671bc07c74f95d2cc6966aceaa9e8b160df4f97782c26df4f99803b9ac0eff27f7ffb1bbf6d288985a916f774fe9c5c1cd7c62db913beef6383c2fe7d7d2c9d7fffe00efb5b66a3b4fb2e25ff247808154d3428ecbe9cd5a05ec67c7828cc070af58cbc2fbc2c3c2abc29f2d301633e5914c57807bfc5ef63daf3d37b0240b9bbfba41567a6497d755dd5da48903b96a379487009d542719989aa4a4a7eba341a8f099c6e7579bc93ec6fbc76ddedc5905c7b2b35fd7d1f8bc22eb52e8ac46a24f5990b172fe3fb3e5a8ea2cadacc45f662f342868cec05f537c60dd4c798c1a19ee4e21924243ffdbf76dfa78424c68c199ddbc12598c6a44129a594d239e79c734a29a5945292244992a40ec626354c341b1a8e89e3d65a6bad95524a29a573ce39e794524a29e58a2449926452f5986c5017b787baf77da61b271409c62185c22457520a5f1b2454e4d91bd1418739e79c734a29a5941201ad7df23b7931397b2dfb92ecdf0d0a8714aae4becfc521071da87b6d94601b4f62e3a71c4a4a7eca91a35e99f324f77df06bd09c73ce39a594524af968aeef24fbcecdd84bb566e396dce75300280d1600ead23ce9406177e6290785afcc7fdf47ca930a85dd98a715cff8fee81c29b93fae2347dad0f2f17c678c7f62a1fe7a1ebb30dffb2308cf5351f61dcad96f74c88e9ab1347065cddffb3e7fdf07bb2f97dcf7718ee3388eabb5d65a2ba594524ae79c73ce6982374aadddfc6bb27387682d7b7b410051b2e7dc0fbc93ec3d377b0d48ce9ea425678f2f97b318638c31aef4cacaca0a7661ce2ecc3aa8ae416d4417d13eb0b8e20b4fc78a4b5688e810db6d5e1e46a3c263e6c8dddddd57382b6ff1f6bc8099c009cb388ee3382eab4ce0845d150f0d93cd1166553c34c8478e858f7ce4231ff9484a29a5941cc7711c4729a594d2893186332c49922449528c31c618833062c44883602015f2835344f18413f93d5ce2e908224628a22d96db00799016e47a99a3208ae8608b31ec9c6704de20f7af8c38596502276c62a1ba51bbd839ba5e6aae3af7f453bbd93c27c319766e8e26167334477334477334e79c73ce5a6badb5721cc771190e8542a1508885da41f928000563ec6f300493d8e01146541f783a60e825fbed8df21389a2e87a8121e71891fb88dc49e4fe0ea67600436ff106a780f9b073e49e7e4aaddd6cfe352de3604d8cebd1601f5d2f5714d7cbf572bd5c2fd70ba594524a33994cb93f08d7314707c01f9c310f6c005c00bca1842801f046ed0e78b31b163c8015bca1e40d8674e00d4553c19b9603e36d43039bdc1adfa04e07d40175401d5007d4f90da573a9ff3b3f0de3d5575ffd86926bdcd9bd931a5787efdceaffca8f7396c5599cc5599cc559bfa1d4b801f8ceb5feaff4f1eebabaabbbbaabbbbaeb37945ce3e6f09d7bfddff8f191eb78ebd6ad5bb76e7f43a97153be73edfff5cf1cf56b5ef31b4a8d8bf29dabf9bffdb95ebc1f0545d3fe6b5c1cbe73b1ff0b3f548b67efe2652f7b194ace7e43a9168daf710580e39077d2dfb9d99bdc4cd6e14eee9df407e0ca1cae4cb952cc3be947b952e89df4e370a39177d27fdfc7e427930b809f20657267fcd494c9bde127a74cae8c9f22657263fc24512677f393a44cee8bf968b568e0286a0d860bec5bc2c88adcc1b8d17c59d3b54b85d9ce65bd9e73ce39e768341a8d46a3aeebbaaeebe054599889c95459d8d5b11c0d9daacb84e2a9b2ae2ceb588ec6b3ee092245baaeeb26aad268381c4e3669eee35c987f64dbf2b4fece095fc277e049bc7723a803717777f7aeebbaaeeb388ee3388eb33419c7ba320d665d1dcbf15028140a8542585358a56457c77256306b379bcf3417631dd7ddc93a59d67910852b02052ae0388ee360c3344c4fd14fe828c058d7045bd39db71835b49cce65557688c60ea9ec10cb0eb9ec908e1d6287582fe47ed973ce093529179c2aebea9e205204771bcee2163d2688d9ce6505d1eeeeee0ebbaeebba8c4e957599601dcbd16099bbbbbbbbfb86825df5c01ee35ee43498ed5c41c05899c009abe0545997bbbbbbbb3bcc9d07ba278814e9ba8e4406480281402010088a5a6bad55ca593394757520108e31c618a3bbbbbb4f00a030dbb9421e0ad589aa5cd46841e3858b5a6badb5721cc7715c45b5cbc398d8826bce39e79cb5d65a6b0581402010a8b228a59452daa1240c0c0ccc13d55a6bad75566ca5ea913dac300d86f9f0289e8a1df2b4fe270429ba2130a12020e7dc4763d157bc6f2acca6c261dcddddab0ede365707c31b4aee8f59655d1d8bc1188a31180a6541b8bbbbbbbb4f5ce72b2bb1235159675219a5b2ce4433d6ca3be91f00cb0edd13448a745dd7751dc715810215701cc7719c0b0ac6a4e1d8ce65c1988ea2510c1613131313d32d80d5c804eb588ea6a1099c2aebca3a96a3e1d84e09c9fc69359dcbaa600cc46262626262629a526b379bff8c03a72ae3388ee338eed260f8667884efbd9ec7b8a485b3d77d1712ecd4becf0caa61628d16345e7494b35214a594524ab592ce29a59452ca711cc7719c4b83bca198a494524a4929a594d2cc14e79c73ce29711cc7715c10e69c73cef994524a299573ce39a7bbbb3b7d41c1a0aa1e19acb2189c0c98289e70a297e81de4f79dc4d301434f7690d11149786571581445511461189c2a0b04cae69c3383b9731803b300b500abb8a1b1d848f34b737bd758732d4b636934160fad84a47b82881769154bd2755a57d2751dc92483bac1c5e2d8ced5307d752cc7c25b1f694ab3ab63338eed94649cc9a573350c8ca239e79c73c2c07430863992fb61865d0f4e957575ac06478dc6b2f729e73cca5929aaeb388ee3388e9372d60c655d7304a4ba94524a29ddddddbbaeebbaae33895dd7759d94524a2925499224492aa1e69c73ce29b9bbbbfb9c4161b673590d7a0db23a163b07c3aeebbaaeeb32ebea600ee3388ee3328ee61fbf0600aa71e7ffda787c3d53a43292cf269549d4df1bdfb141e5ccd08cd530efa4bfa7e0dc7e82e676145e63395ce7eeeeeeeeeedef5d599301fb0eae133cc7e77be339211c6b1262ea0bf187798ce4567d2755d570698692c07e29f1ba8a4909663e9d48c00000000400073170000180c0604c341013911e4b495061480094f7c545e54362093d123b21c06661c859023c61002002000422233da062b05a45310b872d17a9117e5540efd0d79c52a65a731c8eb2b28af7afe7831e26414af4e7d75a3fc40f4c5938ba43de5a5ab13b68489bb852ad83dbde6b7bb20fe4c0bf07f939476571a5d44b082c45c80c0505d9ff8b0a24b71e890d6240394a325d4622c3add16c3227423cf07f12453fccc3fa9729ad7a8bdf95981eaba1f1a8db890aed116f6cad8adb2e11ac351d71135b53f20273c87260e7fbc6dd931b46ddb293451465d9de86e15036149899b09e2830eead782eef1494f11efc8b467a099823449b64e89ef45043725377fd7f05478290e972806ff2f6043317e7c71eb48ef587134ca4ab7878333405414739ea34cb5aee4ff9bb0f20db6ec7903aa5459d22780d75dff83eff30ac8946f625f4099e526bc4a033f281f0158b0d682a4c1b1910124481885319c984f7a5fab99d34a2373017555c93c7baee87049033d6c8e4355a6392e5717c414cba66bc96ebbe3e32440534477f54770793cec413e84218061a432feefa9c862198bdadfdb2aa9692f2f725cbf375afbc92c023a64ef6d955f4e261320f5fee91999cca89f9505a6919f3243dac4f616fdbbb4aa987e35c77d815bf7fbb5b45ad7e21b07289d7423634548d7353b839e58f7a885214f5965b0871296f3289c1a0d389e00165775c619c0a1d348b757d5d600962491663bd1c75d8eb58f838c6a85f420d80950e611be3e7060118859149067fbadb5e22d3d80688a6e9dfb63354f93a2bf2094c695135aaffa25297e80f536774219a481e4cbe3e43e7aac99c979ec053b1b81676f8383fc04753bd5b50817e96db4e5124c0f102a9ab3326f924a574959e1929a522695ba802db7016603c998660d6f10db51bc4ca71c77c5d3a25828c5bd76fda1d7d89ba9ccfd713b62f45db07e936aa0706c3a674b130d86c05e3021d79b678891de120294d12127194fdf24cbceb49a20cec3f4509c4296a7d812197e61d666192fe78542a3e02a4af4eaa96ef2e2aaa94d69922a3db311fe6082e0f564531889bc1473591218f8c34f2fe23549371fd0c442014a3094e66f843bb57e719b3847a050b19fb6e70f4fe8e2e390d29ce4e1c120986228ae0421886ff8651e109cc890f291e1ea0955f039108d9223df16f062a88943e8cea4ce0421d454fdc3c79d3ec1174ce4a6040658a01873d21319c23cffa47709d0ce0c3852a5e3ebf1f817b429461f0dede3cd896ad81cb26e4751e5f127bdbbbc86d4c95244874d67417779ba2f574909268d9a811f87fbacd2e75f4dc0a4ed3038e70403de77287f227c5a10bde843f302efaee1c6de5ed08e9aadf093392b4d3089136ab7834bf2941adbe0a4305ee85f096aa3983049dc84bd5c4f10440c05f37d5208f033e17439172caac44b6e54f82e2142a100bce52c27d2f09513ce03af4c4a5e9c05989a791d315701b7800e62631e1cef19e457c690f1d20bddbd9b066080b1366ef6c30e0518c8ae53d6a687d9603383e136f0d0166b871c6afd19ea8027cbdaceb4a58152a33606db177397b97f86a7adbd746deb99de6e372089c56bcf0a7967384f0ccc74a878bee06c37fa8c25ee6d0512d9471ac596329a742c0aea251c38a0704292cedeeaa4182a24cfe2c8c0aa9882301ebe6c62d63ffff9b55a7df96579820e622ceca65e9a130aba96b985b4dcff42a51ec1bd725e45d4b83791c4dcebd5726c0afe578d45c267f23d239ec4e1cb7d9b5ff2992df61960fa1997fc33fe177ba6c97e29dd36b20434c23a0f597f40a6635e833a490df01e2af2e4e75ceed4f08d3f53e47aecf049b2ec4921fbdf6b9b9d92ba17b76fed5d48b4e663ede618206c5beff5fab62866533efb283cc251e696d3c4dc6119dde38bcf46b623f829d74aac1a9da14b8c78ba2ff2b41c6c432871031779f491bca43907048f39f71e464ce0c64f7acf04ccec3ad521224ed93a353ae3d5e5edfc70ea0892103399bbc5923bb64a727fcb2375645fe4de1744eeeedc8d6ccf2b68ef71072453d37da244cdba474f1022b5b51e436b78e6948024b5e259d4f30eea88d79c704887a161577c44b77696f2a99ab94b68073c3df61428152fae6cc371f7e85cf93d4c78854f00ea977797e829459e0b2743cd222dccab11afcc00c417c8932129eca448f809faa57b50b174218d2d9a3535f44bcd4a7050a132a3ce99c0ec228e827e408447952dc211b11c09f3b67a240cc7784ef447680248ab820275793d8573cced684bbd2e33473d9a04d9267d49f621cedc5cba4c8c6697a726b8126408e1d33b90eb2709fd957ff9c06e352092962a7f1e1fa0ca4b642bb3c0fb1b32afb2243df08893dbf51e00a4c789cfebc86f4d4338bdaf57446f669dc0397e7a9f3a8314818e0ba0a591c87546f25eb00fe7afdb77e76f732f8f497b3963af3b13f3000d8476b3c632916f925c3079d9fe968c86a8a93195371d99caab16921d411428bb2e146546a4e893c1108da9d71df73fe9bcbe8517d953d7c66109b0dffc02a013b08b6db81b7f859d00ba8eda39abb39e249ad4aace17c1a916afb498ee4e654f556976868f06b58a249495530914ca1e415fd7cdefc2779962ee6aa97df53ffeebfbdc989e9ce3d8b0247ff37411f2c67077b484171bf1a2d9746d44684dcfd63d7baf4bef0a04a05e55814f026ab9cf93b841500df3d74178fc8e81ff9bf7dbfe31be019b02e1209e40155e57e3cf2c48c617cbc864f3fce33db541c82c75325821f469035b31775973c936bc95316144392b6749953015a9c48b052f05fbc6cfcca1d5a8a8f758386a86fd913aecd4636de331f5964bfe0aabc9ddad74551dcf7e62338eace9935428d007bb4b678551ba2044ba141e21c75d46cf319a6b999f36dc63510d6fa05d787768bc80452027379132646f92dbbd6ad29bb8e92621645545f1ab8b23c357c49619ab50ec8b63b03e618160ae0f280d796dafd02c343d288db86597582af40e90315adf358c52e0058aa02cf0a2b30b587fddac4fe82cadd0e2ee47ae0f8a99cf186bfe2c774e240e387da9f1206c2e9286bcba56c824361e163a1c09bf1946ca6fb7ca9082039170ed1a52e3829064f4351d8c50cacd725923c145f848e34694b1fcb885783126c5e4619555090504cf0a23df3ea9998cb5623e872c3fe800bf848efa4974a4ef47c77b413ac65fa03563629f4158bf0e4a0983503ab8ed6c0cd74ad1cb943e4aa60ee7755f614915fe6f2f08b01eba006aa8d8d2ab7950b2cd0485f09a50e001e51a816787bdb99f000c149d811cb0a8cbda23055b1df746e815a72d8f7495f1c46182e7f2e45e7b737e634685dc08c6a77ea9a689d9528d2121beb242dc2e5913f8189eb8f645f6ee218f6b06869664a9cb2b37af5cec0f6235521aab335b15749b29039d13207b1122cc30cee8eb186f2570115935d43955dea468e2100cd1f2b437f3f78cbf5238a0b7a1f910dbfc6baa7c2b7b7e14f63087d428c384dd53da95a7c18af0bb799032d3b9612b872fbba642758140d66775261258e9aab125b1492b0f76123e541e9225318ffb479e00742a04cd4e69ca4237d2b50ffbd737965e2eeb6a612498ce97dd237f337d7901eda4531c0029717e25568d54053567752369766790cd9b7b74f4eea1c4a7255fe23ddfaa5f9df5a6c98864baeba6b3c3b0f85da785542c9c759a3ff17b0d9ece4e2aa8703cf1e16ce719888054719b41b273067706fa51b1b647640ddbacfd9a79c9e412a9029e6c8a9759bb9437b8ea642d1be911411fb9ae6d175d2767f9c2202b57c1aa900654e68b6a65e18aea1075970bdb7cc9d5a3a162d3c1d4bec67701b7d45e0551190d53d833908397d3322455143afb201a7a07aeaf2732d017874ca952455f77acc7fb693cded9bbe3fb221d272d4783e1e7a590b65f423fc811152667ee133df3f9ce7d91c3f64d7fd6f7d88bbe6f94f32dc6e54b17b92032575935723d423c52d86030b01124b65d66e7fff161de5fd7e4e19d06bcec6d530229259d8250753bb537856778a2f9178646933e68bd63401b37fbac6347cf0ebd16f054c1b9db12ce611b3546228aa82a1466826970c9f2d7a4f65b8378adbe8d0abca7fb879ee7becbece569d0de13ff7534e0a9d299c8f8dba0d629aad6d73a6d686bdc899181b31ec6ea0d8077a1e32fba13f2872da4fa2199ef2fb67da889b3eb7906458f22b45c5ea1966562baae7ae8bf45dbd95ac35e99ab3466c2bcbaf5e230dcea05f737ea850b31d30be8e4d18ba9842785a5c9dda9f5510d3abbf361ef0c33c4dd139ee54463918cc0dbe09e8b321f448e31c8752e1030cab9301ef0e6e2968912e5da07cba361c370d88d142caa63347513762c521aa1b015712225fb1a0cf68d4d5e171ede9ce5ad34954c5125e3ac921f61258f50b320b7922f6759b4b99221c55958bf92e006b330574b4ff1fb4f71d859f40b81b0173b3da98bf5b0508005324509c288fdb106eecf32d7524caf850fc2284cffbaf9ec4ea3b3d85e72d5645d45f9c1f4a3abb88f2256ff8a05312463cd2fb733fb09feed6ec742db8e9be4768bf06e176af5764aa66f87be0777efcd32c3228ec751fc63a7d783bc80b4cdbebfef236d19524c61bd62782a943634e14d78a0d836f8c63837271dbcbcccfecd1a4932d2584eb2d2b3080da97965d4db7106ec699ac9b814a1755db1559969ccad7de18e9d74206c56dcb0a0c680e8dc71891d518d6813af1aff1455008483eb06af906714b8982c52ae303ebba49e3641a343e5f8ee2f5bd934d7ad40fb352ced2c2147ec83758cf9b67f91acb86f34da2ce325eedf94a23702e5d2f903804289ebc3ddb89e4468e17925701d53b69963846dba43071cc6f913b94cd1589ed4915cdef143e1bc7c04b06ad9ca646f316c23a4a90f3cd8e594a5c5b93177289e4010ebd83a5f99d80e01b5edf47e074e09cb6791a22abbc9d1af7553d720adc51b44c83bdbd691f948c0ed4b4410fd0122840a06a055b75deb89078b14a8c1d42dfea1d5e922d54da414c3cc07c627024eee97a498b5d1a7bd7407dca537c2310f3d9719f481d97ba23b85cd93b69018ccd18779f4765ae0a6a4d1e96f476ffc79f4e83aa4d7b548cf0c91f4177366c8b2ed94b690773e5a888838b281d5ea2ca8ed3c1a735a0eebcb78e7944b8d24b1f1b130e4d5adc293d83ba0a491cdae836cb19dd4d8f4c7ae970a6ad45229b2334aa29794880afdc66dec2b97538816a255764ddace47c2e8dd419261d6ce5d3b667f9bfb1b167a80ad7074b6c6a7cd4389c1a6637cab4fb3b9e391fe6f4cfb02fa7a20db184b15da4b69f4e329e52142a557bfe883bb783ed3920c7579e4e69103fb412ec60a636566e9926a136da0833f934e319a59c639203d8333fc88a1e567efdceff33fd260464f4fe4bbecb1cd79e734ec0988c02aacaa2e04a7e24462c6c70ce7077aa4467380d1d912a8600872d86567195ff7d96c539fff2dc92ed58fad0c3f36e94c1a6345c63378307b15435870d9219589a9329ecfdd38eb980bb97574f4bb0ec8b2afa36a2decb892f38c63081ad28bee8c85d507a7997ceb9783a68646fa607f7088602fd6f25de945966a2256669d702d2e5cadf540e992ea45bbd5c389598735b5ce4ee17ad9e71ca16742e704f2e061a01aeac38aeb5ebc86b8dbab5541bd5aafa4576f1fc6ade455bd6552cfe9c0732c96b48b4e4a8558b84181b6dae19e059e4470e3a6d052c6e53225b68a7003f779300b6c91b5544d222cbe86e920f9b20fe7a15b44639f32ca1501b4e700f09cfb7f8615fe23e7fa477de7df8a0900dd2f07c4034fc475a1e532d22d9f595dea4b34915e1a9808fc077d2cf735ab51d303bc1d8e858bce988eeee29f6930030296c4c1f9c918f2f5300e5f9366f9eaeba42f21b37d297fe35740694eae888779b09444f8fa1f8f49e4834fe270cc470e5ecf08efe8cde06bfbc330d182076e48cd798e2d734469e89d6942b7659e252b66045944b33b51521d418c60474b13649f3a6ad45fa697f3f7b026917d64caf124cbe11beb094a16a092c47aa6209dabe270a55a80f46139b478ba1ce23682b80358f53b8b16b65a468fbf4756bdc3171d4ad0b0a71bd5a6daae491361d09a297dfac59fa7fa5f42218d7c255b1d9a2bc6f16b371f0cbeeb8ee345e689e3c5cfa50a6fb96fbcafc188ebca97f9dc5a4ba60d8438fc09bbc78df4ed826ccb1da7c2d901a5287ef0cea975512b6e950da48471a6e6865fac6cf1632ae7c821fa248f78a0a42ffff195ab5460e28243000fc6b446ee2817de3fd2c786b8ac899fdf799fb1bf6aef69e5a76a0a4438550a2ab3d09182c1b1e46b5d9e48f93102539efbee779a0db4264d9e25d22cf7b921e2506ad2e4d43d3fd655c8d2df51e3148e48abdd66a5a18d1a67d8af5b430cddae8e90e4f54ea286beb07d3acc7cc26cd8c8f51b48ca38152417cd3d7a3cce08a195a290ce08b26c39a1bd589c6c35284188b6b4cda30ef87d8b50bab8302693ba112db988b1460562a1f61935716b314da13125e9b2935b401664c42c64304edd9dba16bec75dcad81e3425e8d8e7aa49b4c403ae97f6a2879b959faaff5060a2a30cb80114b5138f2f8ef504e0f240c05711d9afa00796d5f2a3202a7723e2caeb936ef17919950084f6690a96d703300195d6ac95afe5f69c601dc9672c1de381a5cc34b0723f403eec2a3cb60bae438d9b398a6c0a477e1f6e864fb8667e81d42ca5699292ce4cb02066f56c5c13933222b078f4ef460482ce212ce9621921ddb02c177c58937a215c034a3f3dd5c1651af021048027d97bfbe06da0cb15a8d18bf8e3e12bb1c13bbf10c9c9cac61ce30481c864ae4b25866c655793345fa153cf7c1bee5b4c774d7dc1f1d2407821ecfa22d9adbd189b403a7310d34757c8a881d887927927b77495f72fc4853e4d6e9fa5c18de34ad5955b206c100b1acee6cb378d5c92684164c9f3fade11a28311eabe88d91d9221a61c63ca5b321643777c9765649713c1335d684e9c6cd4921e6e99f5e809d8d147ea4e7067dbc5a5254b234f0d5de6694664d10ad753676385053a4d889f0f289fef9e34a34cf30d62e741d1f181e0b5f72a09384fab84e1fdaa44759954892de55389c0dc4b25f3604093c0db0d975ddb7a97b9e79920dbecf8cdee670c1d2f7bb37fcffa958321783b22af32c1834f212fe191cc14be30e60bf7ea04a4bf02b0e0baf6afc1e3f84d3194dae1c0ac1a21b519d74dc3718b7631ed07b295e3c72e8d1985e88de3efd5d9c1bcac3a5384948f69466419c397a38ea822a1c0d61b01b67ada27767488d7c369cfb1f79adc4dd62deb9d178b837303353c4d7d4badd1cb66877133d67f18154e3436911aa80c9d04b2d98efe0eed91bef46a05b60f74dc3b84fecaeb8690709579fd19f97fe401a336ac796cab5bcf18629be7032ffed139ec612a694dcc310d665a776f47fd7af1c90894219c05695dc80b2cad054141db9efa00349d4c0ed57ee0bb8eb26b91468b5caa4926324ec651665ca6302868a86913e5bf9d7d4dd3712cae836b51ba36a8be4d2c6a461bd957d1c1eb2f68f924144291b4c4ae62cf504b4987f46494b768d496aef0e9e36cbf6c2ad1dcf62dd3031839ae396caf4209ac4e51404840298ea615c5f6ac5ce1862d96f50f6436842a622a8f0ae51413670babb4237113a42d76f4239e1fed762e690e6f8be17b265c788a3b85ecf8f19a5fdd5f7eb0601feec2a69d317a8fb7cd7234c8860617b41b9e9ca3b8b5744387ef5c598402334549a2d9d62ad303b0be504c0fbd22c4113d2ad59683acdb8e3669640c4107fa11752e72c873a3e201554d81b06688121d2cd7238aec5b062a16b151190dc1d6be10d8cc3223fc839574d0e2cb6968a333870d499ef1bc4948847288fcdf88801d33ccfda6ee4c769ef6cea100c69466ed21180b8b26178a5f0f551a33b45637f8ec2f8f2b4d2b192459fa2a07165dc5f7291306c3a363ea85749c13221d01bba473d04e3abc1e4a07b0e30e78382e51340e12028f92bdc84c6ee4068d9b3d9465f4817ff087906b81f8ee80ffc7653588fa4e8a1123cdef8f82f2899fc87f542110961d867f40f42387c8860a505298e30a7ea40c61e088ec5198f00d1965df4b31b8bb992efc81cd1057d5a44dd721524017f943e220470c670868ee7f70f276d57ce8d4abdd1f4c8f9bd38a98b3c2b034a6b78090b7e3e19afa6f139ddb8896b8638322b66be48fa26af2ced3211bbedd37dc47336bd10ade9767f16eb6184cc60f7daf11ebac92203b2f09656890e7600ff4cd7d6c25cbbdf6887cdf22342e86300f128444dc1fdc3c1e76eae128b0778b585aba21875159b984f38470cfa40d8b4564302d54c798ee6c70192bcfef5c8c5738506b2525c3a278176031219292872ca762e0aeacaa038ea3eddbb3b32498956d3cfb7b7a3256f364a975581cf1b6bdc0a2d0bb159711b7844432780445027c46512ec5464876dfe3817e2a34227c751a782e6b1c1f7531f1be8d7101354359f70283092af67792013c953748079f20f9e90f885750e5a632f4e414e93251a5cf23409585d072ab61c1c6bdaa320ff2aa972fe18582559979a7c8c3f78d16f9ffa79c48253f0537d11036ff42e52b2138cf4f1cf9f598878fbfd6f7fac9dcf377a33daed2dc3069f3e9008299f7e0dbb9a5ef2ad59cef5db7d22fc219aadddb0b51d5c3e3de88277d14fa0facbdd14655574ef49fed6abe293d0841bdd194210a81f4610a3815ecbad5fb986120538a4749fa7f2c93d2d922b0d6b13bd29698c9ecdfc331e2839d1772acda1b03e059458d3733480a6c5e3fd4e4cfcd11be3dc277eb15261f83dd085acd6b847099de535b6e411b27c04fb92be4980ca73a03f7b7f88b94714f848ff6075e7006ff44a0bd2743ce43b89b7156bd1229c0b7f01c9b670c9d919717b769eb423c7ab53646d17c57f256a2576c8a14057b75da9f46e0cd7b6edeb9b6694e3d712ceef2950768768e5624ba5ee991f004fab3bacc08c3064dd8914dc3aa4c2c2728097577df120957214a0e0699a978855e016f1d0b58108d59a5703387f25fa1388a03228d284ab1baab24fd0c8afb6770621c0473ba581615dddf80ba6adf94937bcee67647b3d1c446218d34a1b06625ded816f3403f5c2bd7630b4644c48e11b0af3f39d03b128b34daa431adbc8dc317fd57817501f63fa4210d1870c98a93a1efc046719691be975c6c8991769b006d43291e5dbd6d0dba1b6c527ef60e684729288c4e58f8462e5dc86dd25d43eac162313dea027f0698012c244c7bd2bfe044f0703f085ee880ab3cb29ab5b4f1444d284ee23e837a3ae5d6cc03738ca2b02495c368ae1702fef6834b0c5939ff705b84c96197b712dedc88769a192d4dd84a407c4e451124a9116665cad816a77289e1a3d2c1dd2d3248f440a960ad47595a88e0607b23c5b96eeb3a0d497e5d9cc1c423f54ca2f9125504077dab52efbc1533066933016c35a32075ff169170a5d7596fea0715d6fa330aa90a248933d49d9e71f851dcd01f7cca6222832b2608464aae44cac1aee678fa9eaec8d5b66a017e195ff22ba3df56f63b6d28f889acccc011d4f112cc181d5520834332966c5a87066f72443bbcbb67e1b6a047deeaee47c23a011f7457ddf98ba4d06bbdc92e02862133fd592f4264453497036c8e0490f48269f39653bd2e9209ae4888b3d955e5deadb301945762c7a49600256aab0abb71eacff5155cc1a7796a9439846d791cdab768adb20700b20099fad05f386418b1c9fda04dc73218ae47247f87863776a0432bde8313fdb8e46c06741f1bda38a86c6a753b5a91232fd2a86a3ce360d82f178994699da36b4d29b7d31b7738c4956489c547600794d0ae4401146fcda191e4d09e564e147a66349149de296e5bb6f29224df814e164e49941e81e903d26bfadb1db11db967d5a3974bc54fc00b7e36dca4f513b3a30ec982578d9e99dcdb7ff87e807c091495281fb14de1f05549fcc83366581ff315379db4911e9ebdc9687aab6a75387160faad2296dc8077b3e3b0a8967222b6bb7825cd222128ebe3ace5c18d41c1516339a859406c749cdb124c651871320655b76a764c00a354b54b30f6211afb2e436a581c982059d235afe0c115b895cbb73938bc1e801dd9201a3d3969e910c6a6b962130784620b832ea283187da770ebd6d31483b89c683a644c30b4454005b1de488522c4fb81e48f9f827f192e3d0d5501e68784dbd7641f09c754b72b1e3bfef3a0595a57fb10d511b11d03551b0af5e6c632106c8392c24aa2e1e118ef9aa7dcf3c76d9014cf316b1fb7f3e8b83a76e07c4d9ca728e083fec0c6803cb413f28db563fb48d7dea4ec22c7a89f6ed720064a323bdd96161058c3ce425c08f1c6c4f274a5f6b20542498e737e52d33c59bd2eba8b9903e2b23d830fb79b5e8fe62a76db41c6cf7703165253fcfea02ef87238b12baa64b054a9a814eae2606138f7769190d716fcec825f7d6efd5471d3f70f2c0efa8dad8f16a249222f0b145b35a05755de3c58d6b77f8571a86c7b3ba066c3f4973a5020e194297de37159920ae9114c52c33d9f556fb1ae4961851059757fcc7c88777d69dbe16efc7118ba1185e09e81b0d1c9b15611c960ad4543d2cff0fdf1c8fa92ace9311a652b479f643e75849a64ea1d891a7194e7cb940fa83de37dc4441d26c534b8a296a156dfb0cbcb143a5651f804239a50a9ea159585a9a4821c5356036a1c7cfc5532dc560679cb2a8f4b8e457ca067a272306be143eeb960ddabde623ddcbb0b7af6986fbfef7d6e74342a9c0999ef1a00be124643a4841ba34911a21f897cb090b9f705af620b5d1444c8dc0a16d64286e5c6513373f60404b0f03be18a2544c7d7baab2ed3ffa5956e28f029864c55fedbaa58a0f9950f13a7bb9e1ddcddd26077427d38d19a6aa9125d562b582ad4dfe48e3b9f6592f8ad1d2cacc5587a2203d107998dbbe9dc3ca7f72845c38b0d173c964f805159496f227e5eaa21e47c57a346a9bbbb094db09fccc9dc5b8eb4f83b861a6f2f1390e338ffb77f9564720a26972d1c93b0e19343a543218a8c2f0b2c90000d66d387858c5a90d64a8419a3e6659adc6493103afc57fdb34ff0d7621efb5edc4d6771cdd4da838eb741c1c637ec76e420790435250886464eb0492413d408fd2128dcc0c74d40a7e5f9037e4a85a018f638f781d8c4b2eb94e6f5f028c161f736308f067276d34d16d4028740bd51e1fb7a013d8910238d574c18d94569316c96de62511f772aeaa42af0ad29cb5a753fac60e9060940ed01e1aedf4b17f4b08a2e1d4b5e02a0512805e4b2cd3202aac3117db7ab8c9df0bce7f886e2e005b0d27cbff804e9e023486ffe6f7005f2e44050a5e3aad300bf51ab71c54fe0b03fc13b32d92c44596a1cf66241ed385f40557341d521a16ab7a12a3ea2aa3c22b17323a15df6135ad9ff1b2bfad2b6b97146f0dc500137ca3f365365e99d60cd88ae2d8877d9edbb97121744747f216ad7e219b64bff399942c7d564ea3dc7408040ade73a186fda8153ab69aa095695bd17dfbae570195d358a3f9501bdb7152e83322d34bc5ae318840d7f268a50c1405e29d2776cc629ec79049a17d368a9dabd83f16d124a9d100c6d8a613e4e43f8ed1c6b7cfb0ee48e77c9d80bb502e99e891a6e371cf222ddfdc376780db04c2633d89c67320914654ed61e6e4e4a87208830f8fe2dd47aaaf0fe8e50b6c62045aca196e19b2ede38bdcbb87cdce01b5f8f44e474f934aabf2256bef1779b3999a0671ed01310f24a41b9d9a1670d1b094af9e2235e76cc0685d64bffd5e7cb5976e7e511dd24a7496a844707319a0783827106d6ae96182eda491fb61c02515da5316b55127d589fd682b3e8ada15a0bf20d37b4aded8f08de003d801fe79b256c65326c77112bf70458f5ccb84a338dd5fab79fd54047e26ab37167cc996a182112aba7c79c2c900ceb6ba4a19a996902b11c118b3224b3cdc6e35bd6ce53ea0f079265004664b3165cc4ac914159d6b4574fd6b838226bf0431d6b729003902e2026b3ff685e07fcc680606823838097ed5591ea051e3b1e86ab0474aa8739a20285bb4e8374224e8a2fa6a526af5c787361b5c3d9f60d62e740a9c33c70f493451db9b7487fdb450dc7bee8f11546c1096334005371c160114a4697801f195386495c343c1ed493c387129ad955db59e0db10da5dc761734d8f1ff4782b79d7adc33250ef6ec5605124c44eee3b1c99cb9dbe2fc6b46c6219bdd077c73010231c37c630d2040d2a261cd719a50f7612e6a96955da251a995f151934867c24fecef07db2faebed84f003a0a1490f307f0d00ebb9f8d5d1ec46eda8017400360c51ac322c32c5ee460f1d7d9f9e93ded76dbeccb4b8f4c846f1e86b5097236d2a5961e1864024054e1491a065a96556ccdffaa8cb0a6c103d32f9994978383ea21610f2f0ebe28c7eef60dbe985486482f6305d7ca246113f9be7f04b9a10e5c56b425469070c9d40bd4f0f06c50e4c09ee1da56d9289ea559c840611a1ae647cc4bb64a18699b99d7af136a5b89089c8904c72bd2476a4d60a4290e63f1d4d685f2aabc2c475cbd54cb58f826c93768918b59016013a139f74b1239f05e94298dde4f7033069dc5061d337e5d174a428324d083ada861dd26a9749da6195a622450f98312ba81bb9d4636aca1720b1de211b8e484145176bf85d1233d81eb83b5441a700cfe2972b8f9c04b51ceae4b67073b4f076dc733e04f7a5e8385cdc25d36986dc94d591d2dc4e245e294c4c99f13adddfc598168ab10b5b8cc374318483c518b66737fc4a1036142712270ffea217962617807af7fb850789938f2165a7b79c89c42cf7fedd0129e8fa6eb1c0a7b4494e04cdbf349accddd5410395ece075947cdf4031dda2ff5198f380ad7f71eabc7c64a415b4b5e7f5ed0a0bcc3789692db63de8f4f10522580d5cc57f5fc3b1d9ef092e272219a01beec0e42e0192084b3362b8cd0d740f50c9a243643b1d6ed7ea201dae93fb96b0ea19601b946d249a5438075f52659fa96015547c940a6aae4ae86449637574ec7f0717dd4abb4254f0fa199c0cb74d9d4bf852bfc4b7126e83867a8927c3846c418ec3c08d752892918b4ea32de0446f0ba21739c61cb1880f9dbb6801123fa7fbb87951d76207a52c9c6aa78bf20ca07c3d872b9183ea2ea4e17628348917d750c32307bf5c912f5b5d762630914563d0500e580834223fc142000cf9f9140246c8afaa1060417ec40a0105e427bc1018d7a36c084ee509a4037e5b4a14e5ce89c401af6e259aa48d47c298d7f7021bc4cec1520fd6b0cbf03c2af6624528e5c7822dcde799b0f528265ed6833d4a83c2331ad5753a52d7d507e70fc330fc8a5c949f926dc8144a0ac151d99f8bebfe2d988eb91ea41048ef479f6e539d4bb911bb4c1591fa240dbb6449d0d39ae6b6f1ac6f7f27d0b8cdcf973fe53e8d121253b83d05791e799e1e8dc3eebe939b605825ead463dc03863949538479f19f330aed1eed878b14e6de89372da01e076e4301da8c04e8d1bba6ba689e21692a49f2c4731ed200d0581f501c012b5606a359b97c421954c6f45f149b13c9035e5d6a34091b1f0923afee1536899d03a51e67763d945182480cc83be45e8b21b25ea34e9978b22012f00a0b2933bcff0f5225d168ca86947b1151625f32f5efd9cd0e81db23154724ece3dc0817be46a56437113411156602e9169db6aa585d7cb421451777ccbece93b0ab0b37fc0c5d5fbae36d334bb7bc114088a92e506f9f54e93d241426ac35bfa8742e160a1754e95fd03b1faf20a3c6a4a430520057c43bec8fd34546c62426bed618839286a35845d6e3ac22e1235a45d86889ca5544ac2536a19c4651df898b0f0642ca5b65fa1210009a247f1211b708b011033b156fa4d92093fd67ed6d7871b9e489d7c3d3e9f9f8d4df132d9a8b05acc9f551c96ee9ef090fd9a6b92cbd0f5501f3d9a27b0eadeafc29d6af4e6107fff5f2c78ef658a3ceea5fb4ccb60268c5d0d093609097ab31b6ce44cd61eb844901abd8b0da7796693982bccf8cce4607a41d5211e432c286f4785e65793e06e80e02bdb0c9dd7748d714c4c995f0c8e05aa65255fba2f4fde6024417935a429eb57c04b7026f1a956b04a734a3e61544ff9fd66240405b364f1b11b996bdf7edb376fbfeb2f24f42262cebb7b1c5eb6cd44a8b88627ff3893074837ece2c0caa70418b054c92e1b9be39723cf519edf693bc7bd6d88b5af30409f40085c9c5fe9524dd29ac7282091b1be85c595c1389b16eea655039c6b1df3f035b60ee93d8cf7c306b27b1d719334fcfdd5f33f66d48b3a3e504cfdf15be5f4780e3e4d681687cbe544b3b4d101fe519d49ecf94ac34932971fd417a21143484e9c623888d33120990e837b2bf19c702457cb8c1e40b2bf21163797a40e362940ea41d47fc128b2d0078e985cb4002175860022d9040041a884011987f4bf3ffb7a296c012288aa0ae4c0f4661d5188ddbc16175da8ebbcc7eb5a7a27740b8a0169ea8a04b7e19100cf29546d9b835618d56097051107212288cd42119dd7649852635d31023f5e238c572a7c3571ef3e9bf44189aae2a10ca2b75049a18f52b9b71b80a6ab952c7b072b26a38cd9a356befcb48837a106523d424aaa85865c4469684668d3dccaaa0be791d2f8182517268a5e126c755c5ad2c7c699e780a0bae804f3a6794d297a80831e3b323aa921cfe74b5415be138546e78feb93be0701742535bcba2df84633937331a7ff808f48261c9f1a12b1dc9a042eb3dad1edcaec595e8aaa1e2b3af793f131c0688aa5765612172bb18711d40ce1925da34acc58b19e8f905ccd6dcf6b88325acf50ad6283b797cbc0b90e7c3170971224dd417de0ee7219d0a150b2b447bac7121637ab7be7e789d67b56394402bfd437fd17d1216d860260e0e3ce03a5f7ec817ccb62134dc024c665b8382ff3471281704fb3a898b7842330b6c5a8dd61c8bcda00c4c5c4198a7004eb1c965c1ac0064281f574cfb4ca6dfbee20efae80c6e0c93432fafc910b4b7c312a10ad433209d65463b5209ee3d6c5bf1faaae192673d14d254806db76db7451b56d4482deaf9227aa94dfe2d2f7f62acae316a89869e077c223464f55309fe376d853998d9a0257d93b4d428a90e9aac1c6054c4324c074a8a2e0647f7f567ad4a36dc6471781fc806b7e5644b13e240baa67627cb4fa20bc2f1f7a36b76d7d9b9fefa604285a3dbf568dc1d1d3212ec173a03d74eec6dca8d0d0bf5eef43af43b3114c2cc2fcdd1ce0fcafd15eed46b183d033ecf285f5b90ab8d515c3790e1ea1117fdc1170d4353d3eefb2f7781252a85be8e3af259380f9a8617279d2e50815c182a7aa27044e190b1f457e8a820d4928977c5f070bc0e28faf1d3184cf85c3d9a6c67514d8455ff37caebd75bd355b7e7c61d397614a6fd2b23ed782d2599ff9d99f7174e4dd42bca7c2331e0407fc64cda8c98b48eda32888e9f5e7408e83d0280c582efa6234d0e96391b0f7e506995ba11f6e9b8b678004c51ab58914bc4a503067249e74d81fea3771332bfc07152b4c628c89840fa6cd69b4e699dff1f35b8b9512bdaf8053ebbd4a1e8e1760c5c11a19c1591c51691377b2e3165b20bf77cf7a92c600b67580e77e8576b9b630cc16e3aca2e641929ecf1efb97ae589678a28549f9b6ed499d061bb06facfddd68f9bf552c1186f4d28b9992d9a47aeb7d71bc14c1ce4139f6c3069ac90f84f4ad6f4e119362a9dfa16822c39b02acf82c7150ed06329a46cec80603411d89e3811843f7bcdb8283a823490d14809370d2e6d9ef5bd335b0d3ccb14585c4bdd243c183f8316ea5e401b4f39bdae0f00aeb69e73a61e69855d9859acaf1d6471928c945088eab873cc80849a465f0b7712546b18a3bbc0975d9e8d5e6c04e36bd61f9567c644284404f787612241c4624902b13374016a2fff7577b809d615f771bcb493980aed6ab11caa1788e7a13b13788cb09e6b0541a9a3bf2c616eca9b7ea194e54aeb76a458e81d40b65341c372ffc393ddd608fcd858e9d27665aa0b0fa39fa6c5e4db465f605be8667d56f02437f38f0e7526e3068852ae00f4cc015a42ff6c15c9797b84806953d025a1a9689e6d453a5b5740e3795f049d3ded9ebd4b23b2289696be683c8760b86d02e035a4a8dc7e0c1a68b154050f2b49dfe04d2191c64856bf15f076ef7ed9db11bde4128c6c5c0210f0289cf5c30100ed6d8f201f7943af3cf5c0e7c34e687dceb7ff1c58dc62f3c7e24389fa61c6e97ce64e1978cd2bc336e45616d69beab14fc62bf1a67e3b1ff6458bcd38d4d054c65e974f6cdc091f8251dc05cbf9ba9e8f77c6d11c38cbbc600ef1c570d131cfd695f1a97b2a1c9e406f01198243485c279fafdb38c99193184fc102c850fd0b8d2ff611cc63cb51ac0d443dd8c33a1e56139b9149254e118e72982884d96ce4a08961663828ed89c221ffb64d299283ff0ac8847ac2b93dc6289aeb928a2dac7436d1987c724ca0695673df5aef88c831abce2030fc1f91e26692aee68dd51112cbfa03f39f2d37730ba9763bd3ba62d73aa123db4d29c24e5aa2e1bc3d334e39189e19e6ad0f0dcfeccd4e2cd20b58a583fd858f0b7e1a7100dcd9c5b5ffb3e80f694dd246890f25e979ae5cce5b0fd0fe76fb3e97376cd7ecc211c48457e06c2426478baef2642b70cf9b102620ce763f226176553c723a860042fc04ef90c9b41cc423d555a51464936210b6fbb10997a71eff8700bae95d72343c6f96838dccc8b744422ab0378ca9aca33619be2c60c7115323fca2f3a9f10c5511a99367fbc99d57d183093eb0b458b4080b8ab5f15407de3aa9df474363b4e2ce93df3e6984a4701b946af43c6178fccd190652908f2e5ea64bb7efe6d69d3802ea67f3b0f6a43e842654ea45f6153e3a4d2e348a69664b001da68a42ab6e76854a82c81d7eae73f2218cd4fd2858766e04b9930cf7a15adfb29367ff25664c5266564c9417bfad5668a327a188e0a0775e151098e39b18741bc955732863ea8b058a92a53be8695ff43531629c4741c23dc724420143a203a74f9c0d4c8ece648fcde4c69f28bc25ad07ce88a4b42cf6d19c568d070d26497626e417d855422688ce24c8904299e7a01d9fc37dd93cb7ec0492be8226a87ccab9bcb7063c69f6c6f0488196a960b5e8e2eb81e8440f1063ae3b039dc5b99e0197d99dab598ef91703e7c0a5af1f644dd9554390604a42d624e647673870b941707b7529ae2d7e18f4e425f3e86a6f985a6efc531811f16fa2cfc8723b45eb18831ca4e053d84856ae53acc7f820aecb953a57c4e4cc549bc40968fb526e4c468b09a1d73cebdf5140c7133ee792a9a9a5580e7d4950e74fe2310cb2abda7003847547266e335024c1a87354ada7e9826810b415d500a5ec72b838f04ea5f4bbc013600dec969668c6e524fb7a97283b258dc3f232b024973971dc70a771b8ccaf64a76c5005b7efbe8944793a58414c6e6533ce93cfac3be947f1826a2b055962e9355f136f0bbf3e7ccd335c325bcc77c28b00e4c03e0d4ff201bf4f28ef5a7199c55ad94e1757257caef2b3b4ecafc975a5afb8b483bb803856090b3b4da2f37d83f9fd738ddeb19d083af566a07dc1695791e26b25d5bf4cba8b9046f013e96674ecdddeab16d2fa1865e863a5a51e3f6ca79957f54856bd005e230b31b4bc639970d57a95c3a0a52cadb0ccabc74d77cfb0ca9fa3eea0baf03cd6c2b43134b1fb117843241c622a7110cc28255215ba7f453b6e7682092a8f09af01dec95b1f0827322ce8a8293e0ec401e1f73469513ea44f5f3e13d5ea9990f4b093252a2d45743d3d6ba3d379cb2079b1facb9b2f0a24a6385095aa0e62057b9bdc276173807816a668b29fb7e500430d1c84080f4d02bf02927fc227581dd8753707d63cbd4439e3afd7df5f179ba6ee54aafd7918482cdd5948c3b3eae2c170da03fd1802fd3f60d8bcaf08738e2f6815d61fe310d23855d8972f7569607e791fe2f5e06caac5a2ab9f1ed0fa01aa2962ec16d454243a59b94e2296631c2b514aee8f5ebbd90cb9d6f76a51a280484556e99697d847552cca964e482c85df3ae8042ed643068ae839a4981d349d422aa488d3d68e98e83147cf1d1d91185d4ee600376884cef4582f8fbac760ae28ea627920f6d3e13349544a47c01f7014d2eea693ff5209b717edac6111e81d8838934d14a5e0a2d7ef90dcfc170c4647068348372b95296e316c8ae0e1c7c35d3cef788b622ccb917bd0fda60057b9a59fb3af5b5ee50fc6d88d70152fbd34b7d20595fb242f38db3e426848d5fb726b4ab022dbba6c9d0663b4adbb5b50c28a687fb135254c91ba035c6101dc9ba3f2f92cd49c83ec3c9fb47d4474ce37c7804017ab31335cb3908e71da423991ca8fb190940e67b547985cd3cd51814ae5f5a53a0e287c9c4c9de9b8631ec68915071d48548a6edcc0233777633fc760f0ba41b05b2c74935c086373c81fe719f1f154da46fe1002d9f310d2b93893795c00dcb4e511a1cd53e8ca6f40127cbd2bd3bc958c80587947cb85b91255e1b3166f7e892050bef6b236727f6373c6fdd69032d0ea537da7ef8a912a8e45069683005ef31c6cf50826c85278ce0490d9e0442cf1e06781139d9f250a4806c252565a6e07a33ddf4b8511366b8d9ec27a824c629e4dc138ffa83fbfce28c22d2c96ab4502baab5c94ddcd917b9fb8049644aa07e5f8d1112740666e2ad96686ad803663adaa4a53472f04d1ecf027ae3acc402e1cda38205c35ed5ba9ad53acd0e648a94e19628533c3b1fb0155e3c03186bebb398e4edf78876ba27f3ed12adb34d645f3512443bc0a67cc245495a63dbf97bbc842b5ed1e7155f9ca960fb8d0fb9bddc92d6edc1c8a7369f7fad3f50a8e59b196872e4500663980babadf27429503f733c0d3da14e6fc0101b09e307620bdd70ba334c78034d83d90340fd7c8551715c6637cc05890514aecf30481f10506894ca565b6fa0ccdbf9146315f20390fec0606a082841992371a3fed610989ad579faabf20c25556a2a7457446324a8e7c939d7f60c59bc33f0838afdea70b9b14e840018a35484f90c6db62cd53a00a9693f99f2e13a6daf0362c34b6d4d194a256488f1509ffec429142838e43067a74fb004d67eaa4697a02b49699f43c576465de491ae8b8566e709ec3569e57682ca36e937bdedd09d5b43606b17320f8e3b3273c4b35d0245fc223ae1136a8c1515f7dcbfcde9b3dbd8a503279ad70100d545d704b71a14668cda22c96541afdd5ad3f3de5f73d077b9e24c59b2df82733a48df4839a07a44d5ea48af376ad53bb95f4bddb4d181dc0707c6b160dab821f45b120fb96512ee9c98008a66a40848a15b3a04dd77b01e20b51fadb4c00cec42f9c6642688f0f84481fc7f98172653aa56d2e64c6b0b00220fd3d42f2b0ef501001d9e6a69dcc6428d30fb9055a7a70ed16984f0699a585c557c378f3e7565e7e3b7d7205ad73f044d07140535f88a28295fd832d34fa6ab5da4f9588a9791d34924320c5da0b2ab9bf7dc3bade1f564612b764e9e53c0f40a6585469a1e7c8ce4abeb9b5b3c8661584371c5e092659129dd42328774b27c2d18503110f220a8737b852167bc09dfbd8dd40ad2d0c13fb5cd9f02857a4d16a08fb129f6912fe1a279ffd0c0a974389871ec08636034b24e127311d22596b02e55c70e6d6de78c91c920e536b82c2fa6c5311c4c0acf8173514c939481d63e42acee28dc5d58cc84f6d89076e4315b07850a46409f75262536a9121825ec225e11d3f8ec6c1e016257b56c177dbd6e44e0919b3dbe76ebc4c9747df147aa40c1a71ff66c6bc4b49782ef1c8dd7963bac07f134b6d1476a8a51e66840bb19bf006caa000e93fa9eaaff830998ee32a9f2ddd562663921eb7f04247a08c3ba625e2a2fb86893194e00331667c6fe8865f258cd49f3066c752e2a28127d8ffdfb28579b99c9b5d560113b56fc47534aaf5a04d2c15da22b349940e28caf98a49c20cbcc5ce92228d522728f86c0b074e1fa4ece748a7e717f1878539cb0fa0aceea0b3f925032f81d8914a44b50ec678fc58c647d6b772b37948e14e3cbbdc075c5ffc7b76c5ada5272761e9cb9049ea8b53fab20a10b903afcd49e6ccaf3b165a6c9e7866e42236fa13703b83c8f3d3c496f68e4c2751e6af46a597826973189151fd6d66d728be8f45a7f5188a62b13ddbd694e1e6bcb130388b18628877c2d349cbf77157ef02248ef9d17b42e46e7ffa2cc71dbdd7ba23a695e018150e9a234bcf67f11dea7f329a73a9c54749adcaf8e308d95c57227812e7295c5cfcb8900b31cba0d363100ad072485ce690a8b3119898bdecaa7b44a6c8d10792bbdc185421bb8edfd6cff95f8f0ab00a61aaaeeca11c3b351be11b14f88ce1233d5c6760378cde2aae078ef525bcfe7660546574ad7b488e76f01a79b42e5a7888e366731d2b1e6a165ba3d076b4d52477a52c3fe1652e89fc814089eda82ff315bab83c55214c705eb3f1a4516c30a9760a1416bcdad0bdb4bf36a53b32e2cad9d10a82611163bb1941d2819f03a715ec2e10991dadb9a2bec3e1e8d991abb14fa31d7765fed9110dc38db9a79c5846a457752bcd11b149b20e9ccee3492b3d7a275da4f4e8faf6be728e9b64b6435f1aac9994736d834ad5f364067cc4a2a166751a652ec6b9ed306bf33e5d8b119697ccac5d5c872d0f713377e0be586770af18b5aee3ba61a34ea02cb759e8692ea2c2c029220f00cdd6204501d670ab4aa702246a6d6251b2b33699aaf4909105f5182ea100031492b0f9246622d72cb407c2e736113cee66c6c262eedf73382e0fee03241114370432eaa90db1646827e76042dd433db318d02a9a2049d56e95d8a87293cc54a9b71aef6d4fbf9f267801a61fd5fbc8637ff488ad2b9ea90fb095cf6e9db541cb16df5e3d2bb9cc09bd13c4318b380512636430fc6a4492007c67fa055d134ca83ad5de69c1388fd1e078ce8afdf86f478f6f0cbc50066025aa25274ceccd0778465c00fe2727df6c3314b607704d94b1cd889ee1b3893a5485dcf0ebaf65dc6a66ceb08e8866743721f4166c662d0dd546925830ab04a653691559ee9256427c67d13df430d5b101a649a7593d86cabe90345de62167e2c02e2bed706d25b5201c8f38617cfc996287178f0560f570bc133bd809b0a6455b178d7f46374ed344c144eb6cff709a389a4db7a69fae483a8e1a63c78b74b225a50aad885149b2f9aa84b253e67c254b53f5613b57a2a44cb304d1f8e40b6742ae3943b72ca366ad3d4b273d3ac088faa9cf68b5c525b631ab24acaf29a5bd779468d18388bad1042a80c0847712c35b74ad9b3f7a1a51ef28c304a403ba1780ad5d0220b942975e63536f262d150f88321e7a858e130c26ed1617bf209733672a457469a3c187c2d1c1122aa20dd444ec7b69ec736394b5c74ca3cc8272aabf447d0c24926637f83fe6a52873a335bd62113aa41158d839dfbcf847bdfc3a10a97481969e6e644a20a4a02deca0129639375e0a42bca371d0ddcd923947c886da71fc3fb3c0d1e310bcc1baae71deb7b7fe59a87eba399957e9a5006d463c1388c0e422ce3acdde71af60192b1b3549e1894cd6b40891d302cd647364d55839e009e7187fe11d5531853891da1c5770cc39ba855b39d28edfc08fe1f01ccdf65bcab3331fbe8f6729d32f1a32d53598f4b4e62615a06330a5acf43e5e58e56f163d57f0e37b5b957245adbd26ea7ee4f36a2d7f3ccd1ecf7b47856d27f43b4fa5b83412577fb02f4249d8dcc2b99a9aa3a86abc850e16b45b8f2151719bf1981ce7c9706aa9980797c7c5bdb852c7bd83c2cfb53ed0c860285c4a93d44aa61c3285b1a61c07f8f93e9b588b233f5a209ec91bd354023b6a4769d730654cdcb173480a734dbe10c8028c2beb95c040d4fa76954e84873aee53dabbf45e9e66f58cd02b409746fa5d342b4109dd16d6c2b825fe979d86e9dc543a904e27e57244fc94619230c09270e2df6bee35687311615e2934a889f57477b63abc30f24a0accb118081dae7d525db163d049ac2d9181f20de1ae5a07efe5bb16423d18a066ff72ca8e21c22cecfe0e52f660203d3af9f58fe90bfdda003f01eda1148d752be13c6fb054131a5fdff1ec93bda24f4a905ccfb656ceed0bfc5fbea4cbfe184cf5468de5398c30d45810a8464cb474681d3a0ce65db8ead60ffde8062ce0767042f24160e5f7937003034b92fc2e0ce393024cd3e044014f9ccbaa0ee07242a82303ddaa38e260260793ec32a2c21ca2c6ac894df621e065b773206279a732792a12e6db172dade7440db880f8f5f73db785c86cd9b92dd434adfae29cb0efc099e36ac2b1e0992c890f0ac5abe6091bd8230d50a65eddb27e45907382d60f7080d2113420ca566d61d4af9396522047020c3ae16ed84540dd65e866069a845b0b9a98c31962372ad215be42103773096860c97b668ec964b6bd69373e96bbb3cb6504803177eb07fdc947bed9c2faabc2d5acfab9ccfe95ac72399850057b843ecda713215f35aca5072361b588ead28b4b1c2f1113d4a508e884d74fe151cd406b9974750cacf76b1180e071049b590e2096b1823b4c2a5fd1c79c9aad8ed9c0862ee035bbd86f8016d6d811f46d4fecedb0c201037ae8c612717b2b5f6458a127e005bd4664764d3d9de8122aed9608442bd07895b2c0ca0801dbb37adb1bd74ed6b71eb02581687b76354f7f7f775109c800674c4ce1d2b3f17997b7a2b284859998f279c946447910fecffcbbce342fac8ca62c58cb448b3611e758e94791f4928b43c05a9a1090e6db54f6fe69698aecefc7b3e0c162bde116a8c0061aa8c0062a500656a19676118a1ab9a8e6cd3ca6871fd1269dbf193a167580de5be82dbc23de1008f26b0e5877ed6a56d25474ecf5c0fc9fac3c01ce944aef64a584c0036ab24686564022d1a80358f30217b264776b22a30122061bcd8b0abf2346e7bf69c6c67a1d69084ca683adb2dd222843320cbe46b203c0742af3a2a9149000a1787a548f5af5fdba25b3f8e734026684c8267befbda5945ba62465600850082b08bfbde631fb557615c03e92eeb1dffcf61593741e49f7d1f8fbf7d6df60f7b38dc756c0f39b6f08cf77df1023bff98eaa43fd17db98a4eaf9e6c8532046be28f2857cb343d807763e1578ce4c20f3d8c76e029c0cb6d960ac8b00785f83dddffc07be60e3388b6d347febabc0b3a676c64e8d8271dd7b4ea60eb58709cebbc730f79ef7f3b369f006fb4852de7440f826f39fcd07da9824cdd76d33dcdbb00efbd8611867da4cce94fb67f6b7ebbe21b0dfb68d8646a3d13c866158e6359b46f318065d106e4a17c3347f3f66ce7bede51d36a50bb2e09541fade676392f296790ae290154c812bbb20ccf43d26f79c549d283a318d7d2b903904b339bacc8fd3969c3a37248e9e2d9cd8a249cb59d35671dda3ade2a3b5dc7ef7950c2e584fbecab39eba9e5c34df710c6e7fd45e6d8555f455cb5fb1e33babbacb535a7870af75dfef3f1aa508fafd9e8633440464bedf575125fb4eb53acc7d8669a6ef799fbc1c0704aba90a93b9c5311200f497bbb2678e7a9fffe8908663a61ef61ff1447e06a721cbf733441fe46f58875d2c26e2c628739fcbf66db566e8d3cf5b2e96c5fe5e65a6fec35b288f9d0aab63e894b2195c902b71a546d1d129b345fdad956edfe8095fae3c3fda98a4adc33bb8db83377734cdfbecc7e6b80c7aabdf5b3eddf5d2e68393e529d9cf2fc6742cdd27ef3d65efe5a27ed72bcc2057920172a5a87229e5f4304ffaf29b71b856885ec93ecfe5a2fecc890b5e5329f76dc29a66135c9e983581469032e68f7d363ccc9d52758d0836084312aaeca2957d6e127b5edd1596a71417f416123289db514a3b16fb5598992596c4ed7e73f78ea52b4c7da24291eb131d725953d47441a40e85fceb7faa0e39685453b1a6ea138d225f01a49f4202c05a85ec5fa11017b0bd77df76da501eaae591b2ff061a816800ca0182417734b6dc1f68c40329e242e4370fc6708804f017c1f80dd100fe1bc66c8831fcbda3d1e5feb06b07b7512888d428f3fd37e72ceedcd845e4374cb22b22df071a05b92076357dfcca8ea9c8fe1b463b16da4939e170678b12a92da421080bd7c43c430244e7feceb343ad2a4ca1b5c2a33f4d74c84ff63769bb97d886b772835a9ad431fc755cf073e2b0cb653b79caf689a84454db94a2412317e19846f1b7e1ad0e8bc488a892b8dd8322aa0c1a758f595bf7db29c5e5a6b8dce7e4222701a25fbeec2ff6074a57bbcf39310cc328a594d65a6bad9cf7a044dd07e34bf3a08cbc79ce830fe83c88a39479f0062bf7db90076f9c727f57e38332653ab8dc8337ba20369177d9de45e44629f786e58afca4484e24acecbf013fa7921816a3ecef619005ccc7450403ba6f0cca57ce3e66cc125991b23fa8fb5c48bfb2bd865db6e770142db261504b8bfc737a89a83cc5aef88bc4641fa874410c0a7d35830c7ea37eec726fec72918a2a2d1fc4ae184fbe8d958f5d8d82657f0ca447f6ffbe263a45eee085a9689468851d44011a657ff06bc1af8f94fd2b65ff98c061f6b7b241a346013740402dfe5be6b6fa3740da3b8981d80ee117766536c0aeecadec0ec4154f42a878e2bfca92ba90382c051d61ab535cc995e4e0ee6eebaaaea2d864a75275a914d6d1d3c9d394b8a0974a9a12b74f7d72b9526118552c9a1237e3c91c3b1a340b5bfce1665ad9577c8df19401a0e2cf59f214017cfc69f294938fef2d4fe9e1e3bbcb535e7c0cc047007c6cd116e8e3c3f014938f7f3d9ec2c3bbf8f879fa32aa849ed20facf68349f207c3d74512af704fb61f6b3fd67ef048de30ee83453e38a4e4d37cb4a8721fdcc99be53e98938251c5f01022aef4a0d1a04a2e927f324d79db2cde64cfb6692cada5b9b47b07806b8c8ba41a2ee82d8dfb604d2e9150a90ccccbf3b20c8a16f99784f7836fde382ff780359516a3ad5c34524b2ea2611d75a8eb341a8d1a2e783f383300acc1b848e47d00a4d10995496560eeabc57103c0ae62811de6ce518c27c37d7077ca21ef7f82ab4900b89632291817f907000098862e7294061355a8bf72858927f2d5e0711fccf580bde522c902dbcb7df066ca9d071dc6046fa3d66bdb2cce36dc07db5cc2e13eb866125cc27568c6700b0fd147c48d511661244fbfa46445f7809879086199290ec1720f38f302674e2ef2e78187ef81e3627548d37ac034c4f46587eba1affc2efbb19fcfe7b38970204c82ca9b071d26fb9b602d7491bf0bacf180b516d658995354a199edc1d558ce8a27f2ad7d10c882482c0909163b96126cf307cfbc8d702ef0f71fec9904bbb078130cc345f2412c1ec32dd8e3164f5b9e425faf96af3c9e1da218e3a72f4fd1582ef2778de5617949a60f6a2d1a9ffc7ddf2189718bc7b05c212169f124f8ff9397e4495ab860588b6f412f0b6c3dcd82058b151204027d381026c13149f9f316831a2b6bb99f971d0bc95b5cf25b0bfa69c1e25bb0f86e4cd20a8f126c73ec483e92ce9ffd19be026f263024825f303a98a5bd4219d4589955f6bf1a7d7518ec6490be40ed07a85191fd358dd5f19f6d73bb60df9d8b5d899f69f5c80d89a3b51e7a60835c704e5254915fc359831ac613262eb8b972bf6b73d96c89173772f971abd7b6450e84419941753822472ecc210c6ec8910b559c72ec82f8cecf292e38533635baa017e3c5a8b2c8873c37f294ff99bac36df19a8b8f31e57ee041eb81076feec0831e0e3cf81b7830a481afa4a86280efa7aba85280efa7a6a84280201ef4c1020f8684b8000632f011020ffa108107431278f027f0a087020fde0a788fb5a20a8ca8e2c3b7032ecba5716bdc075c20ee02340cd0ccd064cd8aa6013105053f5f516500df3f531326aafcf0321ef4e1000f86541efc0428e0e326e5411f3227047ee6783891f3730a6befdd42a00f797b9bbaa30f8c3c30eac08803a30d8c3470616c063ed05e0c7ce0f55ce0033d2fc407be0582f8401f2af08196021f7827f0811e097ce0e708404006100fa84183e573808c1a13cc39b908e522121c73078a0eb50b556e1730d945ca45d847871ab772e396cd2d70cd2d99f3e0a78573c2ac20382617b1e8609949306c5a6b2be8412d1e3452d2027bfe91350f7e5ab2e9c35ec945dde239d07340fe1f046af10f72f1ea50bb70b958838bd0852bf7f7406a14d0c51a5c848d12a487510f2df8fffb5dac21aa44efef839895fb31f64c8fbd92a7c33b02ab29c8a0af50f048150a206781492470e3cafd1f10e93b798f0c7e5a38238fe4e9f01f1ccc82914110a993418f44e27c5a58bc72832012b809272a831ec97d64f0d35284cca047cafedceca1f40d3ac3e41c93f6b791964dc7be8ad131fa310c8bb5564aa9b4d67a6a8d71892b7f86e35a39d9d23148599675f273b9314d2b3ce4cb166b2db6314d1ba9431d4fb21d955a5a9fc6ad85da3aa5b85ac7526786c96045d5938b2e27bfcae39a6147d828e0c60cb95d403af3ca50d128d9dbefdf9821aac46aaa261751ec424202ae4cb4a8fb332f6d1b39cd16635812973e27b196e3a5a90cba8b055653ee8f15bbf85b575ec33632c59be5b78de28912f4fddbbf6de422246c52b4e37026b1cd137b1353ec796b69517fdbe80817ccb846b93fe3cab8b2879b13f396b4daa86d5c878da021478e1c3972e4c89123478e1c3972e4c89123478e1c3972e4c85eb297ec257bc95eb297ec257bc991bd642fd94bf692bd642fd94b8eec257bc95eb297ec257bc991bd642fd94bf692bde4c85eb297ec257bc991bd642fd94b8eec257bc95e5ce55961bbe576ab5dafd04d7ef294c3b88a6228140a8542a164c8902143860c19d1eba623e209c9c0a6b70c193264c80811f17025afb0519d6a9856754cafa6c96432994c26140a8542a1501f128e450b6c05b532b9098542a150281408cf1549b2f77a3cffa1100c0923553246b264ab4d2693c96432b55ab2255b267b3d2f57abd5ea4dd6544dd48499a6c94d3c70265c8c607cd9feb0cf7a89442291484e72c2b559c55e4a0b5c618b26e0167970472f18643bb8e0d66a6daddc4a5cd0c399e7f69271e0a4724b796bd57ea3dcec6a49268286ccbf550eebaa877615c352150eb763e1bafa5bcdc8bc7158d219e984c3adacf740ab657f338c75ff416d82b4a85fc39b907344697a0671640e478dbb32472cbb4a8db39c239ac344c7e8cf60cea9637058e629b3c621658ea943f3758b98b986cc1baa435a17c48672bbc53c5f774ad1cd8f43ea508667889537dc6578cb1e76c964b2adc3d5ece18b330ed3ec6197ed333806f7d55a8f28913ac4a101c7846a14904383dc262638a746698243835038f26cdcc66d15d7d0f2fced729109afaba14d38cc6f4381de293b4ae679b5e7702ab6c4d5be724e1dea4dc7b209e3497fe6830b6e28536e70b3634b6d4f6c420ec953b80639255cc432d7ae248bb6526c6a9db72cc9d4c75cfe6ca22842daa852bf73959c14269283cd5b797eac2e7d86374e19bffe8cae547e8e036fb9b77a7e87423060b405dcda7bbd9341394b4a627b260d59030ba22547f41c3528cbacc171b4ab51b32cdc4eb7f1c2edff6447c3bb7635b268b37882c521c30216542a96548ae5740ac30c0b2c19165cae30ccb0e031f1e4a40b1b556eafadfac3961a255620417257576e3bca6d49b9ad8edcb54e1d6d7fb0303a64a79d3676b5be9494da8a6db87c8b5dbcef8716f5cf8e058600588dc27dad363c892b6bfcd0a19ea5edc1599a4684e8b74d71b7fa09201555ee675f5b9ee2f2940c353578e362d9b1749f3d1c57b40737180b642b992f13f62013cad89950f78138381cf20db772bf9609eb0b4786f1838c9e36bc95ad09bc952b2dc92ace3337c4929cd26991cc989dd895b16bc63fda1293986c6caa4807359e1259ad4989a727d6ed7191dbec5a2c669a1526211499f56bdd0360c8ec6ee2c5a81273ac36ab19c794d5896ddb7e9352caee6eee5e5b05a795300ca394521bd6927f4fe75a6b2d374726a1d097d82ae24f4f8e5772dadd6ce6ba2e7ed7b1cc0c07777e9fe16c15d7e3b4d2d5ccac95be98ad360a09c05a6b1fb3d5566b316f8c62a00cdb2388f6c18f0cbefba62585bbcb6bf148b9bdd2e4ba8cd7e2d1b1ccc91b6da7ae9f1c3f93c22d4306b79337920890b9dd6584fc2d3ce46fa70c7ba4f6461dcaf3f3b2185c70ab2a1dfdf3edad2b0ddc4eb9bd93a790c815fa658f63e5eb9c54b86f4bfdb5485598eb077aa6dcde08fb46d96be950cfcf1b75a8491da33f8bc205dd85a537f2563c69cfa6554d3dc301524619e5473bb333b3d9ccdacac0333a245b724482464141101d830b722f14b45aa082468961c8fd0a01185bca26244522c618a38c52dad8e208b66852a507aafb572ce73744fc91a7cf29b199eaeead3bfa98d24bbaa451e47bfb107c76fdace5ca072d951dfd18fb4b128a92d34606d7e7e831ecabb5d68d0caee6fb370d1e1979cd873c65b2509ed241b9a86d47e531590c6b69b8580d6e624eb8a283f294b61d54ee4e4745823dc9e358598149b09f8fc3f32cb0e2e76360c5cf158f7d18f83cc96704c97fbe33e274bbdce2c54e72c55671b38f9dc7143b2068f67e464f55a7a5f3c1de0a1c5dd4e0f5d8efb478413a47d8efb6cc8e2588961c393a241789ba46070631146a213a5e1551542fc6598ad14cc7fb3cecf279ef365eb8dedf26ba1a7747131d6a2f1479ffee6a5cefe34c42c8159220482627f414926faf56938b5ae5bd3c657e3ffd4077652ff494cf6f42d6e429d87bac09fb4cd87bd6a49a24920ffb3aa491e9a2bc2a72bfc4600706b97f0372a64e29db4c63e49b4d74a85f13a21fa2bfd19fa6feb4e8fc9cf59e924699f7fef601b1df7c20a679af8f61d807ba20c46163922e8e59a395ae7cad74c18e2a77f530d171bf61ecb758e3c61e4a4091b1e7ec18c13eb3c9ec39354ae6b1d77c603701ce63aff17cc86b3eb0f3f5f3983ecfa943adf9fa9aeeb1fb98a686bc4326b91f0d7987bcf9341dfdd849c0f35d4f8a2735c0eff88fc01aae583ec953dcde958744ca2f582f585125cbd276cd4e316c822f80645654f1fc82f5620c51657eff0b32c8173e1ac55fb06202b4075f7bf045906cc117acfcc2c70b565491f64f267bbaa82c9b9e1c869e5c454fb91f73b5acebbe3ce18f42a47e2c85b2a90be3517d4cc8e587f2656578479eb04b619b54302a952a46b552b1542d92a78c2ce9963ca63f8548317675599ed687405fd978227fe24c933e7c56b38cb45d05dc7ea0cc52e52981f1b8a24acc25309e8295c0a8727b8c0d95662b5106cdc8a9d778629dfa4b168a4d6470c17bca7d51f3dd3f242f8cf6d653362f8d5065f9469cb2114d1881e2de7a8ae6b90f3422b589c185f194eb725d982cd5c19cdf9cbbbf5dd4e4bcec82d8bc74e1fc456df9ba3ce5aeae2bf7c72c4b8b6dd672e6c189b2a8ee3e7b4282f79cc953baec258e2e9ad73abcc177e5af3c57b93f6ab0caca17dfd47777dc6b4fb9ff4d604caf956734aaba209ca42e6354a06e6d2e639f3d75a809d77b719be620f74517b93bc8994ed933e5676392e8d48cb6c9a1618b26524acb0282e639c59ddbe3e81cfd88c5e87324593146c7700b0fcec31ae32bce5bfeadcc49db3acb53baa7f499015b5072af63e062745ce349bf27d45fa34a14c38a18ed4bf0ce38dc8fab3a5ad4efb8579b983a5c50c414935b8456bc1d8165c6da65c4b05a33208e9c67a3b4fc6a490617dc481b2977cddf8a1df8cb5fb67ae53e8213b49a19fd47c883eee23ce821c550a368731c2eb88dfc55eb13761383371cbc61b968d3dab836212a7be6d32313b6d84dc8b759654e5c90036e9c110f8de6bb63b96f44c95f49dc975824a459835d443c552648876052a813a63dd6b1681b1d71469e22f21e724622e008691bd5284818463b1d4a6b07dc521c51a753adcdd88e25f34690661c3cccb2a8c5f65518b27f08676e2d2dda4632a8afb15d8dce9a8c943fe7f45e66bfc5286fdf9fc1afd80d85e11e1c56f6ef6c2317f98833821939a2637c2324d4053399208d92797f6fe4b5340a68c3fb6d643fa1e6fda7666a5ac752e29438a4ec9bcc17cb3c4558223eb27f88488b73c4139c9197f2aac994fd4dcef932a18b7c1bc5ccf7222667e472c16d34da5a3652a36450e4eec1111dd97f8434526a94ec47469e0933feca1b2c121ae16e1e1409b348900ef9d692d3fc278c2af25d6af01509458278f623a4ec0fca9c494f953923d2e66eae151edac5366b70cca62c1f43e24e77654d09dc757fbbf7e7a779ef6a64b2ac0f72461ee8ae1a613cf14f98fdc14c985d7ec26dfb9a093fa111a6bc79f3b3e1ae9cb96b1b81264764ff6de429f67db319e9623f83bdfb4c723c995a6671a5a4286da34c508bbe60c226e36fddfd0d21e347efd45f2402246515b6680282543246504482fd05acabc1a27e21372ec9f3f34ef1240857e41555321a36671e4a1621331579d1c0e4cf4f3e952db26491e7d7555d6590c82bf74f1651854506e5f92df2fc623c915e0aa402c229b7fbcb0d5be26299d5be21e837042673cb9741b8605de55554a9d6335c84f432e93fe8a135b3174faeb76a51a22e65c7e261af0711bc980e35f635bc1e2d4af1a4df63b52861ab0c93c1eb4989bde90de1829795fb3d55a3805eeeef94d772c2164daaaac6e408ce518c317e65a2938952929ae4a30e3bd4999c994fb2993003a4634829ff73c954af140c155d4cb74f2fb9d96b91a68c3599a66ca70d2581b4a89bc339026be905cc11879469794ae629ee6a51ff960237950371d38f0ceeb216768ab75ad4ef437e1b1f9b0d2b88cdca459d09d2a19197b024b057961bd69ee3e42d5eece5327f46835e0b133fa33761ee4ce89fc1f3bb4dd65c9de2ab16f587210c3e7cfcf80104c8ccb6bf87c7448937add2ce6833f439bccd535565890ac2294d4d0f961839e5fedbd216c1d3a12e91f23b4483fb5967a8435dbf902bf658ce9f7e01725b18e47eb000b9df5fbac0953125aeff0c9f5809a629cf4fd6b0d95730f8bc5513f73ee8ad464e3610496148aca6adf43fb39a33520cc32a758a5bfba1b93a463b76d9ac6a6a4b68586bb17ee0ac8d6a1345a754ea9e1dbb646fb1f6a34573a3a278e6996965581ac7ea84c8562ccb7d744a36c5059d15b16c710b0fd9da448137311da37f6217fb8e37aeb551d513102eb8518928e10717ccac32ad46014594907b15860c2be3639ab28b2821aac46fd93ab06a139d623fed474b0677c5cafd937a0c8e2b14d32c2bc7b1fce5add65a587dcd5f596b6d54fef537aa6e638a27f557aa5a870b6aad556e8de28cdb388a6dcdd874cd5b469114d6225390bf6149645d6b96f5675966bb6218b6c4ed9fe15809eaaabeedcfbabbbb6c8ea20c624ad775f7edbebbbbd330ac6298563da59ea49114c540a6742fbf5f4615ecfb3b3c5bd4718d759eae19d6d8b45cd70cebb7b7335db7a6b3c62a76e93eebfad45837296bccdb62963df78136ea6aa377b83267dd9a6e5ceb77631b16040dc3e6a679787e46a9b5f1998e8562d37d76bdb5a687522e415de521fce53b08f41886fd0c073de81b027b8a37264e52dc3b5fddada3642a793b52a9965e13dea963f9dffc75457ece09fac73a16d063a509870bfa19fe1f3b96ff3c1d235e131eca4379a70e752c2d7ea3944a6137afdcf375c10d908d6b4a713bbf55ae6ea860d9841dea57101b4f4787da248557aa358365de4058e6ad05867d16954da4f427720b1509ce2cdf238129c89e080bfcb43c4133c983367b483c9ecf9e50f63c08237b567ca5af47fe80481d6a81b11678e64d0ad5e9743c1c510bdcf9c32d3c5afc0c7ee5e31e1461814c30e8e42290cdfc875d00e918fd8f5dbc300c568d03c91c738b0d84712d70cc1cdb813e8e244f292efe915dfdba5a1784c8ca45240f6256490b2c73067eceb4074558b9ff13f286c4e137240e4947aa3865266907edb6ee36b96996dc2379245467322f4dd623a582604ca056214a154385cbdd344d5869a2523b503be69c26cc444b182a6543a576c0ecc804695167c212a7a4a35130cac4c6f2972a66c5a1fc47b7913ac55d405eae967744a9147900daa014ac3b3c528943cafd454c128bdbc1ede07634b783db913b7b70926a875b78603b302a6b959f49fb819d2c4f39f27003c361fb9e61dbe6eb823647d96d677b390a61decf0dc2f0947cecf7f9b343dd9f7c304cd9ddd914ae53e1af8e21c38d0eed61a3c000bc4690301a4c69050f92e527636c194f66c7937832e389f4d0a908b1c7647ff23d6c147f79d8ef5484edaf0e497fbdc296bb3a86fcec06378ebc545c85042023013e1f7477f70fa494befc28dfbb5bca96d2dda5bbc3086550acec20dbe7fc01068c045037f9174028442bd7b9251e0f666dc4a8fb17b668c2a37ecc2a8f88c98801391a8d3427c80ec4c5320cf3e7705ca9180353c618980b669e2416e89e7b0e741f07e2a6c7252286f6a32b6b4f84bcc3fc40d992fd7511f7d1459be34d172e1131cc7125460274347064ff19ce61b06f648f800132fd8d7219c55e461f3039bfceaf19e6e1d431779f5dc6d25ae737312d6cd15378d09719033306e682dcef18033263416e202c0ff9339ecc96a351965f11d87c197d981f3107483c8890918708651c2bf63722e41d9c071132722480ffc42de57b570347ee9718d83766043819fbad7296f3ce797875778b65eab782ce18fd8898a72ccb6c56b31ed00ccb66967996659d6532cb62a66532a5b9b3d0cc672d6959ea1014aec534637966cf364820f3ac2c2e821050e9b2548af1651231458ee412b94720e0008b7a4a16e36b2e3360aeac11b399363d256f6596756c743a5e0264c8d034148f9ca773b9173bee1c7211d6b9fc1374fcd075304018d8d78e85d236a130320dcc22f6f2bdff9b1dd2d121203e63bf4d0dfd64c93bce99a13fa3a79f685cd4b64c93a9da992536db37b21e5c6f979dc19e7eab46426b65a2b3727c4f4ae6d9b4ef0c6ee1a179f479cc8fbec21e63b1ff70201667d9e3ce7dc5dd7b18fb0cae6fb1965b1cceaac962f03acbe68abdf5d25a39f2e0162bc28ed6ac55854966c6727bccfc3ca6964a1e2a330d33bd47b8602dd592a74ccd79b85cd3344d249b667aa4d0452efbf270e4956c3eb656f68f1b2b886de5a2201d1a85ee73c7ac9d92bd3d76b864df29b1b27fcbbab27bafec2f3ba59126905c26171293eb8c3a3289abd1dc6f08f9dee635d885f39c283aa591202d72db924935b66746b9869dd2fd46c225b83a254fd98c744a9b6fc40b4742957f8ad5329db807b911a665325ad7514b2a994e54cb64b4aeab7647b65a46eb5e3ba1fc47a492c9da8e45f3d86b0dd231fc63d8a1ec085ee835480db90fb911d7d229b7cbd8ece714b773865b78683f325331fc3d8d0941eee8b6340a9879ff11c98d5027ff11a964ca6aa8695eeb583417e48ec8fee0dcc1913a947ddc4833332484dca8434b68c99ebdbf29e5feae17c9c352f6694dd94f99caef90dcebbefb401beecad30b3ba3d49d0f7646d95bb696d772f26aeefbc72bb3d5c82c76f73ba34e0bf69d123612764a994ce995c4bdb804fef27e9b587ef7bdabc1650df6e048c869dc0bb3dbf7c2a832bb3cb5c7b851f6d088529e9af7cadd6bd3bf868d623fd371df969dc089aa2b92568e3cdc681cf686746ae284b52c1c9570fde3ed5077eaca53320150ff5ad65422577cef0480bcad3ca3c16905002c71bdae660f2c6b5ac1b2926059dc2b5402133f267b5cd276754515ea614354998f61d313247b5c1e208de2ef7179d8e0698307c88a233c2f0f108fab67894a7abbcf4927e6d5edc4dce3d2c468b4a0d982a68726c653ba300c31c9ae6e9a93f6c4424c21a61093c7b83cc4646d88695aac521aa244886986ec08314515cf21a61025427c10c2448829c414920a81098122e41482921a4a7abbcf4927e6d5edc43cc4d4855d151d1dba205de82994526a3531b2abc7cc497b628ea294524ae9d4c4846862345ad06c41d383524a35319a184fa1d66a62589a98676962a6c52aa51a2d6862a6c6474c54f1ac89d16841b3054d0f4d8c2646d3d2b83440342b0d4b7abbcf4927e6d5edc45c13a3a13427b423683b341436dd76a1eceae19cb427e62ccca40b35abdc42c41593521776557474e882c42eecc22eecc22eecc269b14a69574517cecc115d18553c7761574547872e48177661a694316598c88c3224e9ed3e279d9857b713f32ea42c3a064a06ea839eac86925d1d3527ed896928a72fac951a4acb8cbc1322aebc606928cd09ed08da0e0da5a150a793cbe572b95c2e0d352d5629d59cd050538342434515cf1a4a73423b82b6434369284da5c5683db4940643a5b7fb9c74625edd4ecc359449c94407264898e83029616e29a594524a29a594524a29a594524a29a594524a29a5d453f5ad9594c569a9d90911579e442291589445c740c9407d44caa22ccaa22cca0ac3300cc390352d5629654515cc4e0a8445c740c9407d501665d1170d6910daa2ae300cc3300c5d7abbcf4927e6d5edc49cb25eb05e8ce105195ef878c1c2dca424bbd239b139e9c4fc494f52dd292e655116b5d6e3d2741adac25894a5a1263dd1d3494369a82e7497cbe572b95c5dd8859a98c652580a4b61292c95d2c46862424c1e97870d9e367880488fcb536618861e57e871851e57e871851e578829a404a6add71298a84261a20a4667498f129812281ac53e5702530285922894405102530253b22a6195f8285195c4586b5232d1810912263aa24a655252a95c26256952525d9392ea55aa172ccff2b458a5b41455303b4d9a30294515cf9c49c9440726484804ccef37d1d128d6a46452324199a44c9e3031999c342dcbbc60bd18c30b3258fcc28786335cebbf6079ca2491be49228566098c8b36eb7562d46dbf78bd085fb472bf706519fb26a5a545a8c44eb33645ec140d000080006315000020140e0b4563a1300b3235d8bd0114800c799e4674689c86a44992a328a38c32c60040000008c000cc0c06230074895a59be54479965a301b49166d8c6af1996f2a1a0e2486eae3d154d3c1bbf88b959b8a78a9e8ce4608b8898b78e52a4c2a3fe3d25e383ebca0486652574355f8b35456e74e88c5f99a89f326c26dc621fffec6a6c7f0649e7acf6cba9fc9b7d2a4f48379e2624f493533263a38f780820f205635692a6c84abf21e73b44b0982f01947ca927334560abfcc3e0a8d396b9c0947cfde0234231021a51f26fb6a0ff7d4d09c845e669581e897ade95a02ebed0dce92b310bd19f913e285f8bcd18b53e89de4ba193fd52b903100e8b1f788c565261c78608e9b74235209104904645854c7ea1a58052eab438897b67d5c3a704a3d9dfa3277ffc16373c4796b450bebdcc8eb0a75d5818ca8758707a4ff92583eafceb08e9533ef12a9fb73df477fdeefed08fdb853ff9606783f408c80ca4c7c6e63b346bbc3df80ac1073ef9c4b0874b13f4098d4891024ff2cd863bb0ad1a533a24d6bf62ef2e940b1034379f12074c74a3e4d3be9e58288d261470acac4fcfa19a12888e1e8f49060e719e6b09bd2e2419877dbb7b412119131a05560206a9c230fa15a4563599dc202cff01714a8654508cb60f918a08f03f1a7fd5a5821d292ec4ccbabcdc67219b4f645ac1609cbac009743eda6a51da8b9f6756d79f59b4f8b648744efb64525b946bb9ea428e4c5cb8b8b5a097f40a093982546209c50da711e4b2273cf7fd6221c571a86e96990e77ebe8927e82d9d3c6e19899be091c82c198759774bb48d6a7ab20b17321bf3d2a704e9ff1f0e34f5e6627bfe0c9fe3183ac1729245bd35f93cfb0ff99e173db9932f6e4b5e2382ffd9008b004b883703cdc17e45aa4f4141aef9def497a2c76453aa1ba06ea3f3db671d57314881339ddbe458bf125c612bfcbe152be33820245c2a601696cf136ab02790e13db39752a8e1b741d150005352ea00bb638a3fb8d4218b5f0ab42620681e26e14b2b4f63acd83a3bbbe88d2653657bc331e48a9bc54e48edd86fffe1ff423267a3ae0d28862696f6b5840e75859231997eb0b551eeee6c959f4530382ec91f949e522d0f0014a114e3d93750c800431da161106d55f4ba4b049eb85232e2ce954ba56bd5a64c3a51d4a9e0a5e2156bd0cf1c60946e2e048fcd10f1bdf965b4af68b89241d39c1b280ef9873760f1bfddbec56ce98b97a6d9504499f46975dc28bc1ba1daf0d12624f7f32d3d97a374f570712284465f3ac397389f10c0701bc04dd1425ce2ce8b10535db6ebc918f93a86ff0e442f046d160d08636b854e4ad86f1694e635f7582baa1e9df7a1f914f9ac28c1248c66288297174d46fe4b81712389ebf63657418f6a1d846c1d5bbf32a00621d7132201b0de256992dc0725f58ecaaa6f8debab6fe490d69ae76a64a10f9746925e70023e9a05ecc99909cdbf73e70b6704027231290f3b51c23111d5d36a1da06f8e99b106031416bb504e4750438d067d22c5c2f8db39ea7d2826e811f34123b703856a4d430ade6ba3343d0ee83205535c9581f1fd94fd70a322973534d10d9869116858863788f13e312c8a7a8953728de8ac83e95296391f430f5d2214f93480bee3f202435107863c4b8a695ace8bd684f2ab5923125a34ffaef01aaa67135d0ecf73e70769a4e7316383b22ac17f792a1b2bcd8d1f1246aa7638f7be810484f0b4653803685a7cc8c94dd27212191ca55cd1722dcb2c5732d4c97f154f58c9b2ffc33dabf2879b979cfee07de784b7b47ba032072f1592043e2e9835c8e23e1e2592cc3338f0a4b6e3706eaedcd60e0965e9e99dcdc5d2812043b3b21c37fe5f103977573c5c2a3ab36724dd8f4168ba2d033c81c738c6e4af7875c65e92537b7bd3db8a99baf7dca7114d52e5033c0e0edc0a4ec7e2b946ad6d9946a7096f62edd2c372c122c8e82e2cb1ecb87b6223682286f6cb95604845c7f3201aa4590a06b6cdf4e714356d70983f978bec169e6756bcb6d5b670666ffea118d840306a081ec037b5803955db5340d4b771a39a910cb8ff9f2673225e8d31fc0bc0955d6066adef8d1b2c17aa17ce6d8496fb6e86f8d4c3cd572c74c223c663181fc55e5fff22b5558695f0389102e2cc292afa2691b8442b1379c98fff28202e4b531240f02291af8975cb1191bed9df33fe8f9099ae5e1c0ca8129e0dcfe421fe26f1ab2ccf870389db95e328ec22fcbf169e9c4cdaee3c79148ea0ef31e9bb834918cfe15def4e14f883ba87d44d211231381a097618c25998382d028c2f2c477968106e498a101faaf0c577c0e655be559306c66363d4a79fe7499d559c63ea864abb21f90c9eb4da3baf5312c3ae12b0b6118921eff17b41edf66f0e764c164eed7a897c9237b2dbd0d0e5a8ddba3855c70cc854513b9bfeca92e4825e56bc355f04427ed7ba7488a6879fadcfb4ed89ef7f055ef74770c545cdaeb0ec695d1ba47a6d5b59159d3d7ad84d54bcf611520d8e53ff4a7afde36dfeb8aa62593b67e7da216fbae457df40d8b65e4b2050ebbf6f595f13f586c46b8235768e50e2d487e087f41f6a6ffc7521b733c6a4e0dcbdee3003d5a676e626c1524607d5091f5afc1f604f2bd4e8b0c1cda8428b308624a660315876a9cbf215690bcacb9771c9b5090af572d13061768454aa6a17969344a93150af3f78d4fc622858525fe8f10c44f255d1eed3a0b5517dbbc51f97308287b9d79fa16ec6ce0a13f3765cb7e105287d6761457ea0825c77de2be1f5fe9ce7cfe575d755d5b2866f7320f1f6d68916531c88f201cbd3f065529fc4b9179193d9d9a5cea9b812747ec31717a266bcf0af147dfcecd1f20718af66d55d0beb00cd32911a133f0ada815af73bf10cf60de7f613540d1b0523b6353116a499197ff3c960b3f21d989d00d622761c2b62647050762088919cf74a7d4f99b127dc08cf88b1121703377659972d7814f5b7ffa5db7886ee1e85c9e09f924532358d327307f061c98e8374ef8701a6fac2239230288e239b13207d0e91765914c667e6dcc660bd4fa95d05dec277354794704b1f747f5efabec1dfc8471988195f5f0829724a7b33dbd56c0e738c50e12e0ce802cd90b2f8a2aca584aae32cf9a0b1f8c6429e27f66fe01c79b2fec452419d9550a06c3a554dbca907348412174137ff2134e603ba4bba47a3a80439e7d56f8a96ea5d9c9633359c4bfc17cd165d6e02ad4d30caaad53a6272a315003a777619d7b2dd97d96589fce378385f17dfd0c4e917c949b525660caa32c86f4c41cab132826b90dbfc66c256a82a185258645832265ffbe12b59ff59a0c30c655ba4aca682eb33de51f71b749a9dbf8c8a579e6b19797d23aa9a0a16d2081afa105067d201ff53407a9f26a7ab56eef821095fc87468c275826358ff4d4f52440e946bbbcea090d5cad9b752b244a9485d68d7818c012a1615e299ff2be5d39c4b644c61dbb0192ce9b020953807debc8a2f78968be09ac322e9046f22250674deccba6959d618fb412bb4c0b319ad1464253ac903476aefa29324de4405f51fd7b87a18cee3118624359c5945da6a919594d9d8904a5d19cb2f53b8d33c2b2f24fda1c185c3090f508d5ca12b0f9b08d9ce03b3a1d257fc9b6bded57f1fe41ebdc214fb0a08baeec3031cce50b022405a10442c58174358a73f47e66920139728d773835af96368fa3e7d1ccb3307b42d8e97b5f6f229afab32734983ed96195c83e24a343b1e8277c7c3c79efbc138165144093d4989d5ce9439c7ffbe19a5fbb976e6fcd53fc7a1456e6ba53845f9a248e5b97144b788cf65625eda832c754e179c3ee3a2671b825e86e669b0a9f15d4e2f99a563546ed15e01733faab2dcb17fbc64d95f05ecccb797fa6a5888db4147ee8f9a8212b081145c90b90bff59668a2e850f6cfd2e92838c96bf34fca3d440f31e97dff200e1b4c92f468d641a9f1d61c63610d597558dd8142e6d2cc300ee82d96fb55ffe6e8e7c759a86435f05e0619daf63fd296bc90f8dd3f981836a0f50ec878616efc57093b955d85a159cce4cf54a5704a12ff53ef20db6d19ba379a38d4f812a6cbb42d198e46c8f3e2673cae9a42d22aa871ad1bcd773c8d326965f115819888e45602227718a6291d185c5062270cc900275c2633f4a90e8cdfe93f1e8cdc9aa561452e766a7c228d96c5b8eeb72cbecce139fdea765d55fa469d9836e35eb9689a4dcb58285582bfa258213639ad1218ec54f8502f9a5a9579f368a5418a85e230a72570c9407cc0037170c3ed13661a02bddcb2116386d97e5dab2d3fbaec0d831b7a79e943ec1f7b7017b0bee11e8344032feb347d34b44b20a0dbe146fcf6453f9c46e802fdab74dbee5a6d29f889806bce312a5a1e70dcfb187ca2b3545cbe9644c6f04f55a3ce59a8631fc218b350af751a892907258866fdb4a4e333cc84ef24a909b19ef5de821182b80aa319e4d74512b72dfa788474fde57e27ae7de2ad0f8a0a2da9ecc5c30c692deb6d8904f7753b6fe46f58fb2e85d7b651ab109d21439d00c05fd4222f131819b22f43eca186aa8aea9566ff054213583263edf15a3603c63b800620055acd6a139b877e2f22774b0ef76ad39b0c0d072132ad830343353a40974cb264c8fa33fca602036d685948204366b10cde819297cd34e210c3a783bae070b4012b4366b7edfd20b0a06148f03db2108557d67250bf29740e702474956c364346a673312da8ae9ae6d00bd6c5aa69ced573abbe7e6520f6db585c23c370c46786ec8b3d74c0593325c46214753ab64376a7ddfd0c240503d85a4313277b859e2da505ed52c4a6f32ff10265659d33f5271af0b4fc78652d27836ede9581470e074b4c0d5f19edb83e11aa3587f84e2f7cd3830a957c23f6d41ebf39bafbdc77c42c6d381a9cab6310a1597ae8ba664f9cc4195f1931c8e3cd4f94417d97cc8db52895d0f1186430629b1f579441fa979dac0689cceb126acaa04d026710f02f25d9193fca20d000ca67bd49e860c69a68edb3d14a94c1e45e7cdf833b309243f9d48c4200082a17881a65b06679065989c6da3aa53d5bef41accadf69e20721c2600140824d84df3f7f8ca5e22f061a7cc9d333b133871e801c9a29c964a5aabed0cc6202e50b0f69f906f334c30a7badc5a8317ea34a64005e15b564e9967ca30a5ddf46ad6f033516063b224486130a4a59179bd2ecd20daebab3f66d4a250300e177b63dc05bb8d9d19da05cf76b2db4c22075a9d082cfec70d136ecbd45a4c8250a00a51eeaf3463207b0e69d6b8584b831c1fc3cd8a8b396564379673a498f9b2418c0b04cca6fe78d72395032137da0cdfb1fe4df0e08aaee54930211c632394e0033f2e8f26d723f377c7b4829d554c34d7cce1e75d5b9f1dd25556f2562e2c6eea1052c1e351122d0a2631870326d1037c4647f9d5e4f3b4882999280979526322e3ee726566a3d0169ea2f989d3408ee879fa26408cc3154eee235156042ba50f0956ea5b943017bdb8ab2377545dd14692558b6579c4596a76548d7db9e0f1277775abb8561ee4d3710f0f82bfc8785307d7347b532ae009a5f48b19f32fd97c5d04608c2f11af4461f61927bf51fa711cee529e567aba7df95e7a4151544cdc887687c9e37a22e06162c7c32dd1fde8bdcee45d9d28abc56e796a11497313d4b0d1976f09631d6db7444f16d34dab58492e79497bed57059b7c9ec3702b31a8639c0712343208849b5ba43f20085e498a2ea7599480c54938cb4fa8fa4872f59a312a4020b6e676560d217026c574acba00dac5a94c1678c91b59a2080b4f78e1fd7bd70aad0e836a75a1e079bb5aec57e3c934cc774c1ad7207eab48c2bb0e5216419ad2e93982638ba086969e6d5c60be5fb345d96b5ee9384dc2c8cf96e50b9066abfda06a2fff101026b47f5264462e1a33ce4f2194cd41ca5ff14753ced40c9919486a05e9de3f8fb77687ab5ea09500fdc1073920981f7f1a52925077804ec7381807ecf0bfcede940f8bc5a6dee06e30fe9ad525e452ce10a274c43842ed5c6fa3d2c75b8a95afde981bcadffd7b7549b9c2f5ea952afee42f6e4afa602ac0d7cafe1e413081082101428f96a8672d4793e6c4d6b850cecafaca6b1e1d9feaefbe267eb97d08481f30d6bc4a30a569acc1ff6a6e2a449fb171a95879b24152878da4197409b80e14ebab06111068c60de27b25a371147181e77e33071b45bf9de5db60a6b6656f0808ae9a414899ee5eb0c068ce8f76e405d2ea32b24e8d764d9a1f796ab90489924852e6050c98c148f58bd0b080c43a82d0bd6bb0540096d347a2abad3338a4c1d30e3c9df16b2b908ae068be0d0fa3dbf7b41120818c975a542c8439f6b2c62204e98063310307ed40a602e5439611120a5d36e610ac3aa260322812edf59e3f28011b0406d3d8f1fea1e39a8401537a9ad1f074fad6bd02a9c64a6d1bf75b18c83c92633a93ada84b29c801199e752bdef2bf2dca3158f0e25efbc47e0548432fd0b09157f9f284fedcb3329645f6d56372a5d55500e8c7e22eef641012b57ab9d4603e2232be0f25975d69ca5fd14f53c2f60c9ba9684a00786861a92dfa179604acf005ae8d8ec4d5648dc87afa66801c0a3f461d7078da0a75209fbd2aad0e15260b90832a219edbe8777319048dd423023f281b9ef635d46c2eec0120cbe67739d879c7b54693de379b50a43098e75008865b2b4638d0bdbbccbda89c616ec114bf8ea47ec5503f4896a839ca09a8f4302a880d0d43fddaf38503f0d557639c8ee698c3034088fc62dc0a59f6c4307b5d6ffd9575f5bfccd2491fe6c42b89ae5dba8b2f8d5846cdf5eaf72a16c10cb0949a7869237a8c6536142019500e5c2aaee2c666d0796eab7b5347889229ac38346d3bcb5ae300970c35ab5cebd455614baeba60eab22158f16eeb12f12f4339d62b5eef6f76e70ad242767d3f82f1ddb81f710974d432968e59fd671cba41cf7b1bd254a6c56ca2a335c49f388e2db69f43b0927cf299f5aebc6e3cc56b1b90b82d6f139a8e32610fb231192a269337baea4870a6b111b8ccc03f33a5483d629d689805c53e580418890cee7872980a91a6048b42569278e8e6b1dc30465ff293e2879c96105badc4830fd3d68ea5f5b9b402e33cd1491cb65191419642e4eaf0f46cbd13a9499eb28e0faf4acdb4e5e557ede53d6ad73ed1cba9986b034251d5f7a6010a17ebc3df8506e78060f121c26736218eb8382564e8b288c02c047336445dda0b8590cfb13ed7b4c0015cc61128276982c3082fb9c9e394cd3338006fe25d0240d8afbe5a6291902f10c2b61d7824eee59194a4ee93d87255c57049488991d62a4a2d5e4aa30bb41e45c573603b4d711cc608889fd36f988076c2019de18925d200489f1f45bee3bc241fa06a0714335b7eb46fa5d7db635165d1bd0bc62fdfb1253fab1d24780770c6435149861869524ae177d137743b536a425a3226de977a3345be03d414e47440ef1b57fb96b95fe5ae02fa541f8bf73032a12b72a77f76fccadfa947246f1f95aaa50114d6886a48b1510c03d85dfcaa280cf8e4ee09be4cbfb367052cd959f3a8b0279c5c1cc499e3320deb0463c3ecd86c9ea3dec2258ad9fd9fd40356c11c55b9f341df6412d47b7b3ab3369b1016167172eece5b4d1ece50afe4525de6a076d67b24b183de1618e22488407fad2179e17c5477dd0271fb60fbd720044f5ffec72c9a414f731bd354a6c36cb9619dedb424479ed347bfc8af6334aa438bbe1a86ef3d9ae438b78bf3dfa712b0363488d88774bed038aefe3cba928b44f365a9f6464767d8495e12eab1d60087362e6dc0985dcdf4200c8ebce2a1fbde4f103e26d0383dc22cd11aebde15281556d4e9b7c0e9a75ae81fd3823998715d90df30eec5d994ad7d12e9365ccaec88cda2d7f0308ca62438065bcef1f50ac7f7ff089dcf274d3a221d41e0645bde1e5c431579e68f3c354c74606f3e68f83f210061d2e9d0c978392a9e7968ca4d38a81dfbd2483bc8b70cb95fcd5aab434b495d870596030428caeddfbe732ee8c3129e1adb9c156a3a18d36da09fc463826c2fa19211638530f7996e2edcd32d4b2e0ac997b58d8655a33a05c63c6dac8c7632c0df210c303489059dd467447d4e6da8bb24c2843746d50f72f740a14622a29a1efaac4cb9e064083c81584b332bf2e33661889b04f1ddff74ef5656ee08a4c3d2434657e71effe95dc55cfaecc307cba8fee845693cc1480d0062a26806801a0a8d7993f2cd5f1c38bdf1bb6b68f5f684ecdf2366f50b3e425ffbc455e1c3173c89d7e531b5429676a5200295112a05c18d5cec5ac77dc52fd564b19af7fa23d3ca868c89b02484c126e00560a70cf22be06ddba51c75229c543851f871789f8eb77b114c0c68345e3934ff8cca7e2b3ea99f9a932f51bd9fcf5fde490ab4386372edd7bca356694e22163422503104552d310d0ab132f632e92a630f6906bd37fb604f88ba0893a3606dec7c56f04b0409521bed0ae8b2c2c2f6107c8bdba86857c199d19f103560e39020252aa522a4989bd94eb8902482848d90f051444b9383669c4458f395420915d29c6df834ced6bb5114a64e6696872c92c83dc8bcce3697600b42c140067ae0518fd136525b58925016f815290772efd1b4662019a0af5a0ae3b7852d0885e7787516ef8e727f22d00a3c480dd8382569eb67e1a02404713564360ccbc612ab2fe7010707cf270f9b4a09a8f00e0339950de23e7a805c03101eaa79727dd6442f1beae14a50b89c273a73391a9426c0bc0ee55b981950031ab8ece51ef1c2bbc93e525b033500853e4a7478b6d2c4015d3d7dc5c0ad68cc4be2f8dc4d5d76ed3c63077fa23d556e65ef418056c5f57095a37719d1ba2b91ba64a7589c38dcb6a2ad8718ea97bb1b0d92cb09099569ed598ef712cc9a500c60b48c074df0074af48ffce497ccda1fc8eb4731450b68f6ba06c00fba7f9b323ab63e7255ab412e5fa7db601b649f825202b0722f4d466c6f39f47b4acbc649ac0dc17467bec2b650a8469c119af76fee3822f0d1efb1f7e032bbe063e1e0732f99956aed7e1ecf7af01bbca896890f2f7a0192842243dda17f409067c8b1b2bd4995d3d19b635d8a27bfc68703b2f8b049203511985c9458cdd928c875833666243a3ea3fb8f77e5c8fdd912388ba5aa8241de23d8be278eace9cf4d604edfcce97fb908627693598a8facb6bbe2de50513557fc38249708aa1557bf03d8e737ef3c535172afa030fe00007f559a69800fff3c91d24c3478921b123d631d81c33d9b3a19303d5059b59039e9c6a2042330d39f2c268b453fa7d8a281cc468d684a23459ebfe95c5e17f488b926d9d5f4323aaaae3b3eea7877096d51fc7a79e521b8c6ad59085d0db055ea42c1a784870c92b0881552986d521f754b3c9c0379ae83d170cef085253b719365e2139402c1dae702de90d3e11edb209c91f26e40f010cee37f05a387d144368b082d06856ac098f7919697690416a0d421ddefa2d4d69a2c2a0ab628cdcb561a3e57f03db56ec9e7b3b224a7d3a69cc1c4c3aef14cf51699e5fd793a2fde9f762db0ff05084ed204832ac28cc2656a29b57f8e26d78a7fec5bb81e76da07a1868f73ab0ab85f6838d9f374dadddabe8d58759ca5e89a7412f1c7c86ebfdcb58eecd1d503c3b0d80deb2fd32b69c1425082b24ed32db83759d88e9966597fd00e1a60a5278d38360ebb1c6a6130125440f6630e3e3bfb467c6b5fded880485c2d0150b41f9c3140dc642d1bc6ded4e943e80bb43eb41af2d9d62bd9bde4e2798bc3f41e32a4b655105e50688baab4c5e95a5ab243bfb35ad129168af9bb297c9259b9bc264251efab096bd68b1c2e78450d0826c446e76d0892894d3dac7fb505b5cbaf75c1ac9fa22cb18539200df78c1697e30c0940c493198dcacb58544174b2d52f904446f4720fd30905de7a4213d0116b627fb23f37f3e403525e112f7989d8ba6868f9659506cb49db18cbdafa860fd1cded0b3ca425796fed515757461af9604cc8deb0677385be0ce222cca72c99ea1372471df41fd275bb4897f7eda55936a83b929431d4fee345dcdc1152136150d0da84b06ee4803c701c1bc225acc6a6fed9e97a08a2935583b5e2fb63736f5be5e93d5006b78c42af5c3012d1d5858270f880b7770d54664aa61379d16cd14319b26e63c5fa94a72c0efd6ea70b673f4c701809f008072c7a1a3805888ea71ca14ac1a005b78e406d177aa3520bb0c808c656551db87b43ce305631e9f82351ef2cb8377590bf1838f88720de952341b6707837285d7186f7944479bf6270a5c3b565fb6768a63c0b81df22bbaf6c55211f6c6b2f727827bcff70af0b3e3a3d54545d635f755bce882596c7b672348e76f183fe9f1f338a6b9e85438ec49993e52a1e2c521a1e77f027241b15682614db81427482a714c8f2969a3d45802c86d20678b0951081492803a94081f464490725a3e37bcd8378f226bc85a53b3e0a49b1ce4330a6d9c565c9c8106b0c054b0b1d812e71185d8c4aa7e614ae04ec8d0e51fca94d9a70a276750a405692c568b2581a147a22e0a20c69f66738b692374533cb80bb4e6288d0b910642d6c0830ca47b93905c8586df77431044515d069e4026b48b427272e0503186ac65a4625556888e157c354d88fe41c2d3aa0cd3e4588c9e6a55655ad62d5f7205b3d9a988929a547fb7309aecdf32f873f0f11008273dabaae080fe15c181987cb1364992b2505c90979c42541d80b9c51e7067e83247c7b685e93091810ec25502ad1cbfb1878f4b9a857e92b45fd4969372d8cbcfff1c4926c61ded8587216c23183804d5c4905fe7a39b2e2155027d39fc26bc1577ff58d354d04338417f3dad78b4da9379ddd010a575eec8510188aa42b3af2928c0cb82b541078a8cd17471d1e258605827c16f655502b6ad640fa5c8a6c1c23d814f3c50832f2c91e846851ba131997060d6ba79d0999806302934226501645c9cab2cfa3d529af060d34fc82ad7085189b1b07b91897c3da57fcf9992e9f022ee1293429b920041ba8faad03dc332d8e3854f2a5347426289f9ef3ce1452918787a55d127211f5939dadffb8923b1f283e9fd70d7d12d48dc8bb2f3ebb91372445659239a8b39d1dd1be83f82c32432ae4614598e8a299d96c67cc5baa9ca656ee9d55e5e38588023214447c87e97d29858f12a7ab822b2c0de7cd359f38af59d0ee59d28ebc644c03bdc286fa024f8ebb191df10dd6eafdf76b82f79d0af1d30a63f7e6466328da45ea69275f59607c2ec49a6f4fc80ff8964482ae6bb015c33afb92b7bf4914539c72dc6c01e95779e38ba275fd74116af624bc7b01dd0f95ba690afcf9b9dba056e39439133ffdb2d17b27c9c6180b7ee9b129efa468e9d40ed2628319e9e466a5bda720159d5ecdecbd18de3d04a5b1e98fb82daa0fa06696a986946ca744119965a05ffd9ed54f381a038a2d9e80f24fd8e8964baa116d589f97b166fd4c6303de77b0c936f64f31cfdc98f55c4f516aa891dec3adbc70b4603071814bb0fddedcd24371607d6d780b130d3e1344b6ab73721110474c0cd26c0da19209adeb84a9571cd1c269e65bfea8db515f916fc2e26e6e0ad71fdcb480165032dff4f45b520a99bd14d57894997d16e59afbc5899ef1b6b5c816afbc456cd35bbbeb599a77958dab076968fe64698e737bc2cff25c6886017ee85ce704440b73e2c779d946171eb77b730e7861556d672ef58a6aa0158970f6f781b8da79537f0cac2c11d5f85288ca5a4eb50c17af0971674db06a3b346120610da3685c04e064e059bbe9c600dc925dff6f94e7806e2f8bd2504a8f748ae4a873d7cafbe18bac5fabd332567098bbef54b585b5fc8c1be607b1a8ffb56235c1cc6203eb94c1b0b05ce474ad204c9ddcd8f9bbd3a66ff7f33c2b17e98f04100a466f7e1016536299ed0061426aabd6d0532298599ac5104533282489e0db219ca0c7e41f3ab4c6bf7331bfbc25899cffc7dcaa7205f3117c316f2d0015b6aaf093e215de29f6beb33a99044b9b00183ab8235003f4b1b496991b2b6dd5ee65415eebd8f0854d3084fe0728b21b69112f01c9408f19967ad7bd25aa4040371b8d2926babeac747ea83074bac1e279721fbb7ea9e4c44441cdb8087ae389b23b14d1cdff5b516b391a48f8dd48d0b4efc774bd71d13b028b782d57cdd413f3e9bbd3a826de9dc1d13be52c5f4aa458ea014dfeb5a20ecde4a3d0d70803e22157da48992bcf256af7d6fc4720c2feae3511c788344401c694f20f9ed56671d5db67ee3e80e9da95ed1f01d6f934eda4165dcabfba044cfaaf905d76ffe2d221021656a530a2817096a81c4a1d507013c8c1eb603835de9baef3108aa093f56dac6cb3416c8d9cb3a10d5e85d700b3578661f387d9016deabea196fde57bb42e6b9b78967802d2a915380c64680e487e9bbde7c628e7e9e591eac971c9ee552ddf90cda48021de0246f6027369fa2aa4db67a8c3855581d63eea39a45c900050bc1bc002196af349d3c978c695c5395b5634073b09fb08f278c8846e12891515ffab85c8e75822ad6359efbd86312e0d06806f390e4f5b7ebf0ae94e530f578c50646028aeebed7c8fe9a1a0a628b75c9f29c5e39ae2966ae203c3c7bd53d453a4843ba0eef24156a6393b16e3dcea1cb7a5c7809bccf5bf9596d7c345f3c22d903d6b674d23c15e313d53e0c0ddfcd258df06a4b6fd4b8d972b3f2b7b4d97d98b25328cab1e7bacc6dd4051d186d37efb5fc78904cc662b153461a6eaf253f6e93886a2b71c8ee03373cfae8f7c479bbf85968b9a1f2490ce8bced0c63ea57bf2630b4ea2d9e8a156495387619a413a32ede7757d3705c53c25b117bb05a0c9d8073e16c6b95e188f578c77872df15932011c04be8bf8effb076eca19e9360545c34512874c0381cf9d99a99f44111bd379172938623feb923702570cda8ac16a1261e6f443492ac064dad3e331b407940747b1b41cefcb126780ae284c6a7f76c2648b44e4504c4593302e8386e87c47e8a75727311311bda1587c03924a7a007148b13edf3f531546bab5ce2ddea9af20acffa7d7ffd07d0d93abffff464504e6d3bb1379b2d7562f536c03129014bfa1e3ed535b9a7ed2b0123c0efbe2d9fb2ee677ff082e75eee0a69b69b4d57dbb77fa9600cb03949812d7c188c01b1515e34b9cb203162aebeb1a5add3c0c848ea87c158b8462066c9a6dd747798eef5ce3e907664402bde4f03791d2f9e63c670a8b5f8e8de6857c0e73b4b8bcc93a62a3a4670a6d0f71eef846aecaf39000bc4c89ec9f9cee04625291a84ba813cc45e1e0d0df4bd09191f0bb8b9a6d4ae2e3177f3d7915eba6104a8f1db62ea9c20b3000f3a7f4623c4c477e798f5089f6da8a4423880a2dd0f7134832e2bfe80f9393344c50ee045a4a4a9b113eaaa290775838a42acc905eb4d079d00a7cba99fedad74f21c8477c2621a5863109ce671bfc66e0a9199d088051d8cf30df8e6224d2c7a808dc9d330e3251675a9c8320601f104a4bc200d7a0155671baa34453fb466c096f290ceca72d3818f271b91cbb281e08c7360ee7702677b616260f5eb0bcfd8b4282a4612464246f4d825f9754a752b8069388c304b872be21d981321b38881e63a07447cbccaafd9087eadadcf98010fd31c985687e44d090c5c8937ea8e4dd001dc5e743c3acd300a878b61bc272ba2dc44ec861d47d1d94a66843c1a4179b3edc8f1c9ba64ff2ba90d8add23188a9ce99270d929097ba84550462d9b620204e65ffdc5b66de98da18dbc1bcc4445b9a6d860c28ebff14fcdc8341033ba563697a8dd159cabc9b7db85ec29897e31b8c71837eda7d050dcdacee7b77d06cdf4ba849578469d77af9e008729d99ea5b4037c3fe3c0eb759e85aef83f91bc7e864a082fbfb2d0d4b45cf36707e0712745f02b8a895634f67a29a303d2be3fba2fa509079737c841210ee53800e8d37e510b24b23945e4150b3715521bf5916c4b16cbeae59c21b622241155894318090bea3ca15def5a3b3494d92f61d94cbed83e5660d5df082a4e04513e490dc44b1e690f49fe1c75e64a0b519a5ca802cdbef859b8180cfda0f10a13ea8c5d00334541196c019dc0f9eef525d6201f7b0e68fa7ebf26bab4d6923e6341ff84673722f800c9bf82715f7a8fe6258072f3d913183edd11b1765f757fc317bcdfa9db4d6d8c191c1b867062cbfa8b4774688dc13c54d6256e2a36b144359e29039a19a3f8bf192317187c1cef98deefe17ba8cb27c50cd6d7fe9636389780b97da7c100f221e42085397bf56b4eac6f01eb40e1f287b7d4b9cb33f14a3f4df9471ca735be6b92c254fb4d30e93aa952316c4aba73559d7734e50c179b6a5b8d8c77a829af3f0446955212490f2997f8c3b3f8460e4aa25e6bcc71eee0c99d7d4f1c1741c76c5801199086713473adb0d43f284cf43e0f5b62b07f5b3d178e12f6653d4e31c92a9d0c6fdf1f775bbef9382365ddecc075c52255c9373290b63c3d9e28f3eac98ebfb019e95683cbe9680c0e5d7e3aaa6027ee2da8a9b5d8ef48983cf25081f0b82653088bf1015474f35f2315d1340c89813b1cc4101f9546c573e4cda09dc7259c4b55671dfc71b1fa8d68afc1e41ff348330666911301d57ea2ba2e908aee4a5ad4a312c2d7dae611d627f94cd13f3bf98ae5eff94b7f556a522a21abc8360fe5fe209e83a4c0f9830c4e294331676228642955fdc8f18f76a20aeaa0d16a4ff810480ff37b74443bc1dece727ac682ce4c47908eaec3b368bf33906c57166c7a953751a38ee8eb9aa9d01a2d002ff9cacc4fdc1066da04cb3274e525d74378e5d93d3e14ec5c267a4bf46bd4f8961dcce7ca398416298b670092131f8a4887ad268612abdb73a204e621ef4c0fdc0d9fd25c62680d65ac153f899201569719bc6d432b77cc83cb998e719d870388400c6e60321c89f22c536edf872f8d1501c2a4144ab9a9707ee6a56bdb8274827a5269ea423cbc55d6cad8f8c5856c2663444be3567d3a56bc0ed8d94d99aac5a8ab51e142038a13edbf44f225b3c3d25fab872706ba3bfc35b7685d574b39b3cfe58db343a27faa1fedc1a9b970b02efb4548b915cdfe5448d7c7426c0e90e278ab1ef94efd137bd039081fef7d5c4b557b12a30fc2478a9f559d4371502ba2e988f6a1fd6e7cc202a776c4540ad7408c4e397374c1f730d72f07bc5cce4f963e61afa0c1a9f1576c0f698261e3beda703f326a90a410b4737fa65322c0400cbc637eab5288e5262b0feada4821ee290100fc8bf166c0bca83d6a53eafe59ef7247ca25b205be85410ad4e345974b7f357513c853f1a7f6b10fea5b436bf5d5ea711e9f06610f31ef755c60296571b062af91ff89cc50d33d4849e45098b3974021769e8ad876c04b2cc9df41807c62f40ba109d39649ea3b6b33b1441cf98b7aa5db19b7299bca3d8f3166cfcd2662bcfc84d03ceff36943036dc557d11ec954d0fe492006c7684ca209a80d60820b3a39509bb159cc60281c8b8e26c43d283f92a6b6b1c7ac44abe6addc69d8c9d32a269507565ad991fbc479834a003b378a86f537b63b9641309c90f0e8e8d214b7ae1c0ab89d91303fd15361e30014e3bac3c880d677bd74d3928713f2827ae04e308cd81756e21faa22f8b3e9dec40f754efabd3b49ece84409e1cfd81961f02aff73f24f80cdde0dc225ba555fe9b9c8098d65cc9a431ffd007fed33a1b53309ea51913bb63e06b4a8a14c9e5d9c9ec170da43df3c6c04de7bb7d80364087cf570dcf799a84430bc4efcfb95c5301b439d187226d33b98abd01d54201e4657c66883652caf783c4137c79dcf65b56b52270101fa4008e26dc554d8bd2a0851fe7939206270f449f846a7b0b1571bb97ffb1ec01d1c4c8d963b149e7f6b03372e474b0f40b7928e7660f007bdab719872789a312a12927cbcd495876273ee8fc3c80b187cda31ecd2627ba93e960b837a9e2d097e8353c6d8f2a0defeb5f41bcfaf5eaeaae7804fb9ffb7c4257fbcfb74f30e047bb8c1761cbccd4a61f75e4a4156d287313c0637d839a723c9019f6ec38933a85c57696b2429407961a339978aff7f84b5b318c1caa3857de0d29612f8d28d5fc59009f3cf0f5deb1d5fa13f5e9dba8679c9b71c624446b7b9d3ab85e4bcdaea0acbf3b0cc7214a1cda1988d2b587d71d51573a56e6c5159e30fd619fa451cfed2703478b03ddee77112ec30fd0656806abd4218c7c45b680a99488cafd623cf51576ea5dd1902283a987ef0d6610d40094d41978819890135e441b0772d18f040a12dbc8bf60708c998451eba799ceb2e2c6b11187478b6b5c9806138ae248dd014f09aa4e7ec9add1917efd1b3004276680acd89dd6da2d4df124cd16abc9768d22c1fd9a2ea21b9d014143f91a9a7e2f4f04f98a89996c1db03bb2d4854ac2fb4d5fdeb6c8b58f9b8296384f317575fd23c4a621af07fbd422ff323fb06251ed31631e7852d96025ed1b4bb3001ad2bb1142ae49062ea07f966911413ca2e25ac78686989a5a09e1871ab493732668246ad259642f08cf952a977fa599a1b576629f8ac07063972ee5459ca5298f502af14d05278efac3b3f2c13877951e76150017a5353d0331f74b2dd37652e9347181b2476eca2fdef15ce60371f483a0e20a7464064c312248cd666808548051526093b10671bad242f15baa92aa8905070b05003644741057a850131a91cb647b16222c9502305157423a8209cf2cb8c0a2a147c51e7a73f549898c8ad5981a4ea10f7c64e7e22914e1a4ab7dcac9fa264e45e2581ec69ab57a6088c0992bcf00bdac192cb0e047e60ff6ae35f95ab4152cd0de58302820dd2af7574c5934592885366bb4b0ed57e65715ec26ce968a889a37d1f1c9002a016adafcf5abb67e7f1843877e071e12eceed35de6d925f90c29a39910cb2cf9278555e4436238c3ed2f1b2242278371305ae21005c0fffdad67592ebf27ab89e6b497e47bfb1a17169bcddd11603fc3aaaefd8cd28503762606c7132479b87a6db3a099d182c5efcc463d596162ecfa197a900a281d1275c14b4407ed4d74472a543d6957d1b27dbf9585b0a4374bf12c197e37e7fffe803b126f8933280e886179c2d4899452060966b70f7db68e23d030f83eb0981dc35396a01f52c9cb2637ad69da9b574316051e3a0ab87ec5c6d7a3a37e89808911a3a71645b189ae636c34056fd1b019a0fe3b7d088a2b517f530e96df90bb43c76bff021e03b6261604666728e8d4394c66347b0dbe17fd318b5930b3cccc6e3dcf47fa904a381d2b956f3ba5e3ec84fd1ec7b1e2295d15fdd87453252689f167278bda178ca70eea89c528c96c315208bb84b17e269b77f762d9561091bca173b03384fcff50b303893ed841d3e68d6ba6e48945766d80343ca82dd9e9a77741bba7ef1cf29c86844243681be2be7660861dd97d8cb839b313a04e3916e8df31178109d9ec9fbdd83559a9546400f748703ef4d83fde4eab9ff72acd2cf248dcc31bf45734caba07cbd299a50be1520a241b6e0a4fd2203891092480702f81582901ef404e51354546934355d7ffaaf4d860c067514a6072d3f03da5adf8a63c8c8f77946718b2ea00caf1808125e678449c547b8744fe406ba41eca3d4a23dcbbda16c19553d56ca6bc59a215f929cb0f5910316e0c0a549ee5a51da32d8eb7e17c251d32b7ccd6b25405a8c55dcb8496d1ba5c9ec8ed2b0885050a2ff38d505ecee04f2053e4498bf4cd268571e2b1071e1f49d707ecafcbbfd3eb6878d18b84e69da29cc86ee597f9bb8692d83ddcdba7dfec9a9ff1a4d244204a361e1b68386cc65aa57bb90103341977cde03b0c7cf1458ca4cfafae6cc84e07105386926c1ab99ccb16e6f3d329b682665c29949beccc4ac802400998909bd4d8ebf38428a99809cc20fc59b0bb5a14849f7d765abb97cc948aa1050193389974888f9b9748b5a72141080562750f81aae289957b8730e00fc1471cc33841dc105a325e7366481208ef9d3033da743c46a07122dce16d6f6aeee72b0453c62b90541887a1b0879193dd8a670d55e4053e3ac48a6a4f4879a75488f0d7f1e1797af6234e24c035434e7ea42fe130ad71aa0620e1779b6db960891c72a382058e4e6bb9a289f08beb2087dd701411d89ae5ece9262607b7fddb643d69736abaaa02bde2ca255f12521557d9de6289d0094dbeb2ad206515ff74b9fed0ef81240d5443eae5b01e493b44a8588e33ae9add2a36136050f1074eeb2e8ad84c72e8ea3faae62e2a471eba9ac4c9ddbd298bac603a233b6b1f0faf0d5f474cd3be14a339dbf05bcdf5b6b0344059de2a59333707b90defaa36d3aac48bdb81506f581a7918e74c8843e512358e93abf55634407352fcf5869edb6aa9d6445275ddc1ba5c288743ca62213f533d7aea5a4666eaba8083698e2bb4e725bf5279df7a3a43d9ab4ad5d6ee3087ccff83c002b4a0a6877545ec4d428a172de0fac5aafeac079e9ef643b594ec7d69332a917fab180b8fec4380580201f1d48b84fca43cec1c0e64886204293669759909282f69365a9de88953898e4cb5ab15b3b2a7735929157cba9d0d99c48e54eca73a18fafe83780dd3b82504ea72ed1e80e8d6d11817ac81d2b975d3071fe65e7309064b08e8ccf792311f5404ce2aecb610444592404c21803455b49d1e26a6186ec5afb2a767c8993233b3c10c5ab05003a90d1f33c17bd9432477e737b2590bc5c1141fca41663a7433f6b594cd5173be94045dd3155a68d8184dd0315c992fd7695f9f6037e819f30cf2f10fee871842c021b07db9303b793a8ed2e725e7e195c503b23faf14afa17e0d1d32ab88d74c46e15d8c43a613615a662fc0ef330171f4d6094c78d8e34f632d7464412f39a434f67978a42490ebd54e2d9bb56b809758a5954b0c53c0ad8c30425ed94e469e3918cbdccdd68852be6318d52010578f4940a6ce33c16fb4f41e9af298f5b9a20b1e5276ba81a4bf43ce675eeb2242a6494dcf142c9d5022ec0f133c8c530e71d4a8b65d1ac4cc6cbde77789603f5107d94e5206fdedcdc6df429737897f53e005d1aeb23c007577e50289958d87b3684e7a18cb21149b71eb9cc8c8b85a1a1d707ccf584a72e4136f58c15c96d55796a2f3b0b0947b237a06dfd3a2a40da06a39fdae5e4ba8cd0d579ec2a54f05ae028d1edf8ea8c85022a214bd3b4e7d771c3e4463d01358a7c23ff5efebfdd70b538638eb4f47f4c59eeafd71edadfd4f19f48fd0fb9ff9ee4ff440a80496e6a72fd7b24dbc9e9caf5fecc15ef7958efa11bdf65ddb34facf52448146182c9267310cb223e260a9db5069677185bf48fcd6fa13104147d8a1247ef96a5b93f37bd93022a2d8739fad2d06d2d5500c2b775d37b2bf648bbadcb41ccfbdb977276addf1afee737263efb0b3b435653984cce7792329b2473964afe6c9142345d82d29c9446df89c4f2e3bc513f5d0a5107e201130b3fae5505617a2bd41461446c628b7888533511e72ab1d3ff3992b554972ccd5776bae0ef78296af1a501a5b59c8600b12082cb5464613cd156596abe56ef253d7b65606a7bab29222594297e817929cacd6529ba644c290a38b5a5e82adf30fb32f66104252d0cbe6d6f63ea513c67c4fa3b634eede7e608d056c8bac1ffdb01678b3372770bd086233ad905f177addf1abff7177906113fcf3b845fe2ff3e337cd8bfca90498b74a43ad34e172e514f4438196bb2bd86251869c0826562e585f0d23b8551bfc4440b7bcf8c16ca93450b518289d617f1e30b80e00d2d6752ac180f325af15fa4f9f5eae906521c8a21580e579e8fafdb8301bd818ad9b96e837ec94663f80af44cfe6ed8b47984da3a4375945ddcee20277edc120ef87090fa5302259450299526df862f4bdd5be69205a35549a2db6c7907200c848bff1f5280de8106f23bdc1e8430e83a13de40c1d763b886d1687a48e597519a0671b727c0e030d0bd906613b3cf870eae20552cb2ccc7054580d42a427ae6627eece68878bfe7e7a06546e6a6d454a4fd97d839e625463ebf87da48f10b8a33ba1d7cc049e0e94c1cb574ab127a0849498495dc4adf8e20ead9da6ee8d939c0b384a52e14aeed8fa27b51c6043febff3417c0f043a7eea09aa7ecfcb942209ab2756dd0a578019ed0ac1e7b622813ed0770821d33229cba910fa12cc6a23894c15025454de4dce43a3755dd01aad160dd9d65fdba7a5affabb32d7b54832b3335e9ca73ddbcc61b705ffabc8c6ed4dee33e49b8f1109e0c91618fb260ae0926264f0ac412e594e7bf2dd2d0f288f8321fe19eaf05ddfd2f8c84cc6e319389750e319aeb6cce3ea13364cea2664d50b554a8c9c9a3057f76d5bdd595fb6ec8750427150ad6bf6228d7335d19b8c97e3e94005d19483c04dc178bb59ac63144df1aff36e1ef0b1483bdbdf7db9590575da39cc4911602a8b95a2e0a85cd577288d683222d1212e4388058136becbaafbb462ef363bc3b2853f4c0379ac0680ca8c60c1e8344f80c8eb3bf8de85af74cb827052315bd2cec3219a964db4f1c1f54d6d29034a73bf93dd8180db4d84ccdad66e42b477c8f1171effff55609895c773ff0ec640f82c1a1a46c0a27d5cdb78db0b7dc5530686f1630a3a8323ac98ccbe17bdcb3ed64d8e55b9cc8956e88301c8179da84f75e20a289cad6c232cfa4e5d0f8995aecfa4c88da240bc35053454722ed3e417ddc8a8a151881a071751c0a0aa07e95c1eb71ecc6590320961f49a3db9127f5e1d253f471910dc14dad8157bfb0509b773cea480f18cb0428183cdfdccd1cb127da0748fee9480f4cfd3d0cdb056d26703e3dcff4a07fd49fe5145fa3473cb77e9a20aadc8a08f45337fb261a4552a7bbdcaa514b8257f3394a328af110d940ca1eefc296a8694f6f36ecccc7a4298a78413b279ba09178174599a8cf0e706d71698d1f0b9fca45856f8c2d3fab7c16ab6472ec4d5dc0b799c796ba910b0c67cc12af50c8ca359d95ac59138f05ed216ef98324b03df94b8129bad5dcdf0088c85e40dcb57b785b63c211149d1c0095143b7473295afbf81f572793481050fe11e1834633fa57bd5f192576930940f6fd23c496cc65d57f0b974bbe15b4c0269977eb5129e55127261ac91ab1b16874087017d5558902285e048a46eb9572129c2ceb425dcc880ea72c3283fb2012406369ebbd6633ce247507da4042d077bb36a9545bf548829d951fb3eddd05b53aa752aa898f6ca007b44fdccfa8b57354f02c5ac5e2a7007faf2a26c4f73ad129bd1b65228172de0e945c3d6b40825f8d790d56948998513ec5a4ffbbe0ae984059587fcac38a60f33bc39a1c398c799d6a865b10570cbb92595b3dee238b87d422903edf9d0378f67e64006c23cbe070d1cfac74458f07c0f70cf69f9f74e4c0435e41aa432c16b3f5b161e63f1ab45b77d865464aee1196d551381999bf9efdb461dc4acfbe806223e67723d3ef8db4cc8a1938027367ca65eb7579474b0663e269cf33ac24660797a8fe4b4f4f34fcc23a4ca9587bb728a530af36b5aa0bde9d0128c9957f05f655735260bac484e2daf3fbf112ff0ecdd826ff21edd75391e46316ec8f377591e8bc925d837067b296f783a9a9483b39a8ffaef0897a034480b0279a313c6919731504593f4025546c3619bd7e785f65b317824d38aa557764b0fef4dda446076e6ad0b88032061f8a82b414a2159bf358ce4e799cd1d34273ce832df27fff80367e01d029010ebfa554ed343ba32fbca194743f3fd273b6e07f1370572636495354667cafd054f9c4075b01d693af7a0911cdab8340d6f10e877487e21ad6ac9c8ed6e150692b0930c00c469a15e56c43ee50cc0de24ad98e7d3935a963d31d4eef90c002c76e431081d8ee1bf1fbd8cdc79bbd4102f2eede2c15de6cead79022eee5240108508c0e2634c6c662e36e24be031c4656d32069dc78187ff7ae68c3e68802a4504087f9f9dae8cbfb7d3c8d8e0ce8f6e7a2bd0a4611fb76c2c22dbdc713d390eda61ad128a518f4a223155ad3f16c00a20ea0dfc0999962a43dc4ee4ce232263b750eab23fef9692177d576883caf2b269adcf6cb59af547afb0a2e1e24885c7dc6fdb11d7abe2995d70db48f2da3373a8e51957b2850f55a58f631fb81fde395d63dcc3e5a4584dcba714aa47d70bb59b5f08108db9afb382126c584925d48fb3e32858d1bb48a4c3b0923b5582d91edfcadaad51c3f5aad39967695e34e318d6eade84d558bb10b88d64f7314fe85a2ada031d77ff4e30846d1b4c34db6be8fcd347dd4b3e08f354dee7912b6a31d468bb2a6301304107b37d963504345dc0fafb9d081fec6e16325d68b6a44dfea2458daddd5b232451b5b4643452b342721c51ceebd21f88685aba37a3c75903a77fba731572597899609227e48972f05c2afa3863fcc631dcc10fd8e569c957c62edc1998aa1a0b126a3c9aed64c3f82409e4b9a7951015b604d9dcbd6186866998da3add38acfca9d1bf7b77d460c623f0cb345be8d3edb62c94455ef5fac4ee958e54954ca12cb904475d3c14102670e1e367a9c74431d891afdefcae9085cb1b3e6411064aab6c3a6e04243332a57a7c9c23e2bcc1c46e897f56f0c0bfd2576672b6befe5b31d31c42ef687943c35d84551ecba839bf1ad85fd7449845f24b83bb1f099407da91647f089b9283d9c21b40e0ab211d6a971710c6f7d3bb75419d45e2a7a4c06a2539f16a44838ac18a15b472a8f38ec697afe0a3c5b099f18a12ab36d3e086a615d8656652992c2790af9f5c33a4951608c83af93c58bb4e51203b134f56872fef50bb2524a5b8460e486c01ada9114ad174cc9a8fc82ab5d68d381872761c82435b0bf705e5f7072827416fd80c1e2751ee07cb23ca2b4b7bf88d5f4e0571263834ac8d091eb8ee9ae38f748c8ac47e16de8fe8dac5ce3e9e6ad68280ba880228568e08ab4400a61b1cdaac0c4038c82a26c9d7a0e1cc3a5342b42c631be24d3ebfeb9f28e6dc33308ac65f0417a8d634c4a71a67ef004ce7cf91b11ef74d7dcaa31353712d8c128a1b9b801309cd6c68dcab869a1f2cf2765ba4ff1b42a83740949ad8a70816e637f88d0a1efa4e147caf7db6c48edacdbd0a711cd1eb065a13eeecd9cdf32c61160389f2a983fca80624b45e78677429353639820a85f381f2ce66de4d717cee73ecf70095db0fbca4f365af27611a6944b9f4d2cd596b0446000d08c48015447213309984098050a51dda30c10d193c4903ede10a26c106069422df6e0756124b878d0f72bc152b4e7c213b4b4cc4f25237ef5643415106ac7857d660eabe36e07d6e2e725c05e5914d1022258bdfdd14274afd2608a334589179ae8210884addc70328d630ec639881766cf426a073415040c609ce35c150d6dd82b060234e6888ce7c0666134e61ae0b76e45d9694dbad71b64848b902fd0e8750c21f73e5765deef33b3be5870285f09e881be2ac78316fc0f27ab87f4d1b57fcbde8a7c4aeb6c2def7fabaf4e4325af6bc30b27335226261c632ac45a2c7ff392aab31fa1139a85e5a6aaf39a851109285275da126a4f821cc4fb0b041db040ac13d20eeda3c24e26823beeeb54a41bacea9273f71a64e92df353d23ba6ac3420c158af892cd28c4d57a7549df8c6ca898c0a89547a9a5a891a788d0bf8d4799d65a1a80da7a3f3fa18a3fc3ecc80a43a5957a86d3568740d9cceb3f34567878e2a69ca4604f6ebac7236553b74ada2bc8c109eed5a7cb8430520ee25d73519d090a14ab1d977afa3c0fa5e481cc9cc7d9bb6931dcfc6681c04095ccf0bbaf251305b6f1946589b122dd4c5a09ae0e5168a83fd339ac2bed516dbf0b5cc11c9ca5e94cc22dd771b2928bbefb11e18b4d29bb471d48c16b34628425cee88a8fea506dcca31322f42df5aa536b07fcf6694f2c892cdea6aa91ecc8b1d7506038fcc52efd266cb760b9021c578a60d85809fb4d639f0ace9c608d274c9d6980e162e891fa7ac1f21a59961f3ecf1613713307cdf9b4694cef7bfbcdce464122aa7e4bc539849f7a2598facf5302549df7bd01a06d4684fd65743818c5e6d1905b0f0caf024c648efcddb72adbf3ce494cdac5fe85b8086f405b9609c769332fcbe69842343ef40192b6f9a998b322628c1ce2bd80cb86b5205829580c36f1e48e887af76eed8c32c52851a68d5f16b461d3ce473825a3a7c8b079bc086ca5db0671bbdb3201f1f27d41b84259995cf3db5e533d9ae942a7bc659d4db24cde7d1b7f17b3e54e917f6c0667446b46d64f59a3b46c3b8632754969330daa5d8e6c0643dd031c9c0f212ef26b32e66b62cd2330c6cbb4551b477b34f104aa14be0174416e59894a431fa21b2aab72df3e27c3483883c5ffe22b3318f1fdb8c15f09a13dd1d54fdd72e6e280fabeb959a9bd31f9d3df67b9d56fdc1aac90e5a25c2fbe733948e1b35f9d291d85ef482bd624529e6104fef9e8fce5401f1ccc043331e720ee40c1c94d2053126e67be42e14703e703d03b79422d3c4d5c29e760c67a7c81975af6b6b179c9f41025efe199b1aa1816736247182ab2359e497e0e0001e8ea1ad722ca3c50ef67ad1b77f98831da15364b0121033cdad6857276e2295f06d60219275a0d6d26058abc189842c1bfd318f710d2f475743f3a24824a91add1bd46f448fd91943b6801ea3ced03be17fa20b76e8dc61413bb3a8bc669458ab518b04e2e755299e66fa52faffee54a28395aa94f4948589eab1f5f5a121dd123acd2c2960a2782a4e2fc4ee08793e4d6846a97e4680b888002a1a00b3ed4c48629be43bf5df2c9c816eee39dee36b620ccdf952e58524b0451452f417efe30bf78528b3eb2928fc15bd362074e078f20bbbe9c03e5aec17a9bfcff87b900a5e2dd9c74764d4fbdb19cd99de9d8b48646f16b4de2b5498bd6b03c16bd9746aa20c6d5166dc16eb7254a2a318d27e21d5b2751278c6ed5a98a2a0655cb4a1bf9fca8618dace65a6b15e9d170797aadc8b8425fea61db74dd88f93a918d6640a4bee79ae8a780d18988e6d981f38bb8f76bc2de7c6c4a54250db65634049f5735b08be52c2d792288608394f0371d85437f5a01b003a6a26faf5ed9267aedc162854f3c1163d153e336062b4210b18ea228821406d851351589c306bec4b701d0c2b5ebed13ab1f6ecc99a6c3e1839a761ee22f943c84ec425c84c0b0764ed94d9ebb2bbf1dd2c20079c314ad58688238a933653be902f4e7e9d9beba505e31b33637cf8af2c859dc57ca0a26bcf81d03df4ad9831d065753f324930cc1a3ce00096e50b4450932e7f243e0bd290728a8f10ce942d144bba92241b01402a3ee3600859aa4ee71a4cb9d195ef390e90103d77c9ca785dbceb22ff7117fb63e1155b08e1e7527ad2169e3bc52ff32dfc33717eeb58690b49c5f6234e939f178316559c45758fd9c97e5b97ea2576d4557996f1f378d65b0ad179f2244891486a4a647aba46e667ca338a2b72ff8c01e4e32e39007e518250e0372fc50e0162072488d96a4ab10741168026c563919256f25bc2919894d8a0ab57272670185b2b2436b1cd686767d50b2ab76746237da81657a57f43b9ecbd182c712771dfdf40e3dcdffe3d2aa3b753b443e3a65fb926c62e59f5cc0022f458913cbc1905f42ac99a4f97905bfcb4f08d137b11f5e9b1c6e182926f3e67a178008b3d93be02e4f1b92ca471eedb3245c61b695aa688328855ddf99a0dab69e48075d8544712780731f2b19a514ba9460a3fac216be0dd150755597bab2c4851d7e86e499cc53c4008679186bccae19299022116ec31deafe84fff6692b4fae41fe6ad6a0d0f082512caec39103ac45284faa52e8d150c8b5d6c5f2b3f94d6a2dd3311a0832059b65d16320e404860584d8939a77731ee8956b40feffdc785841489d31f791044283af9ff625c7c5446868200d7943c7a06e17e291d5005b3b0a448c36efdee602bbf428dbd84c053de07d65b2a829529121499db72f87de55b573f6fa9ba16da80824756147120666295a44fd007c992279eaaa3561131ee5fd40cbcbb04b7ce3ca209a2c3276673e10cbc01b8fb2859ead2235b8b7850a52f98a3ac2474762ee7e021b7b46f94353696529846595d0352b999b8aff78db8faea938d0f42877bab648b6efd022af6cce996fb0dd3acb253d6724472f0397b823c5c2973745cab15897f28431d3adeb0db7359b8a6c46de1b854a9040f31282383fd43028a87da4795a1485093c99a53c43f008e37a23aba9d76b2dbf558247a3455a02a622ab7892d6bf5cc7520998d8a5e19e5893a99a43c01fde5c92afddbc98c44ca5ec7a3ebe388005ae05c26d1e94b36c6f292cca89893d130fc87891e4882e80525842439c2237dca3afe62113d9f5455f8884006a1256c11d954031a4c428d6f8e46a7eee44601dbe1dca71febad5c77b8b894d257ae9ee490822c81d84b3f77d711c1d8037ab40c13bff2ec1203dbcdca1def9bc5259fac7426be7e19e3cd282bd8bb43d6395f548988352bf9fb5232ae6f0bed64743ecfe9efdffca8f699b3b10c37aedf8448440fbc88190b95a16a7d7a00c7f6ae3930d30461b8981147b9461e72e9b2a2049f71eb7f2aef73f326b3ad5f099210a5d4afff20f7e3cdabc563e954a96d3d03a530c4ed3e4ef3506d17b12f14695473501998ecc61a1534dc370f18409be1d478f2b26bf0e752669f80d8879e6743995919b46f7d690b354903586858f29d9a2a5f9c9665edff94ed8f414b91eb8917741821f0e7878c84178ef53514973032a70d9d63955f3a39e8776fa73d675f653690eca16cb46000d2ff2d1f9376e057e8021a8811f1464df80654effff26535316649f21dcd8b80a13a3f07f45c269205747141c2f4835ab181a0cccb3a0233e341576d62c2ce1b0b7ca50a0c9a9b4d5c4f179b3f135c1a858ee50497993080c85ff0111a34480cc792c3d63b829a923a7623cc9b3dc3880ae87880c34b0893100aff71a5f03a9f0ee28fe1698dd2c5280218422881df0f90fdef99729f03a98c0213fb54ca1b255de71ed50aa2150d438485958020f997bad22a729c65698f0a75dc637af2549e82d05da78de22b249c3c5f15b3a5960e7f3c9b69a936f51b75c85d7cc4580a15841c494b1fd04c5e7123584697e94c496a9b342dc0155e311d148201d844e9181b5c4d2e279282a0cdd8ebf36c87f62b17ef19eb0f06d74c4857bcf5619f178ebd19185c22438d868dc6bd16acb0f4245f7caccf469b44b31b9851c5d4f6816968a8ae503b7e6e6acdec0a5a9d76c7a34705624dff96f4067568b741e64d558febf7670388ab44b8abe9237a2abbc70dfcf7344fb9de9202e899bfdff0d9fed8e4a8498e6da0b9d2dd63642db4b4bfc30371353c8f0ef9ababaa2b9d57c15aa58a3255fc5a3ed664fbb139aa7c6367941b8926e7701ef1895a3e20737080537fff6440d69f97e9431b5e89f651c80b8a6c8922b0eb9ee66557934371fee11c1ca557ec19c33317142b8fa64045e67c7a1003146a5a418074bd60beade0c621896d4ced241840a3bbddec5453b5ff221f6629ae0716d4c5a7af1334913633ea9e4c5551788813b4be994f40a0f1dafb453ca3b0d01a288480afffb366f8de39ec419824dcdb73a62b10b6b299849adef638f1df431b613503e41de43e54eeb6882546bf936a8c5ca836219def44eb16dc1d99af385a9c139b5df8fc97494fd2236622fc8068b788f0bbbd1ab087bf980f58b1eee6c5115403acaecde7ad30a17854cefd21ae538225951b8cbf9b912ea0aedef1574946c135ebed7eb712a256f1968234d698a6b1876e25565c177323a3e898eca2d3ed3905e33b35c8e89370e9bb6a5dcd0060cc50ee1fb9d89a60a8adbad15db5d9d27c12b654d26626980d70576bb4f0bda6e9d7455af7f4efc229297411f136aec2ea96382003b3b329ece584159f7522d457ac7dff54080e0d60601619bae638e85fa20904bbd16ed4f26bd8ba077a72224157ac9a295d5b84ec6b2bf30cf114d1aed438b14e5a12ed75b6b62b2ebad237e38ab3f50c11c7d3b6c6ea60c281271dd7c3401713a9585ce7d01ad4e150e5ba65f5849de80aebb84b8a0474b7ea495041aa12a08e99cf3dc251cefce881729eae57bdce5a177080c62f0485081ce053a1c2d81858179ba95513cd823d8c47fdeecdacb22c911032e3ee6a9904592e1c76c127f9cdd60cb2becd5020511caf4c8ce0b39a5e35fd53c5cc5382dae21f080d5f6d0691111cd2e62b8886cb859cdb992471f7b071961ee84aa643df88738649da72cf949e05e7101373f58f4c890d210428ca9c2540e34a123ee508b241f61ea51c10feeaaff3034f6c8c474fd1a62d2b4966924481242f205f72d6ca53da6c956e0e541af2b398b5b7c69a6a5c1474755f2ab0d52b2468ec2cafe06905a8aca6dcb2e596431b15b16cfd6536aa31927f07e93f1f6056f844d6907ea8b02e245c805240e4c2b2d4896e4cb76c865d02e8d8b90be510bba12d981614935ea87c7ba80f53d62b68ea3a4e03d6b6495e0e444b318b957e6299b966b731a842ca33c4f00c54bb48c60570ee7a9dd74c5ecd2fd35322688f9978ca47b469d449f15fa052c93be97728f4d7cfd980596ad7f99ef812e960ab97e660f363d7a30fb8b793e801f93fac3408e474df314835fe1ca155be3dbd21a03ff53a2973cc7e0d88a460e8135c0622fab4b8b0dfb2072293c0b9f23f6508f0c16ea3e9c3c83c29ec60f216b97f8a6875410d1f468fa06a52d820d8de0cce8142a7f1889824c8dabcb13af98fd9a0b079e94165cfa56fff2f34b965627daf9ee88ff63d43589f354c904f08e096c94f22d06f7f76e81bd613215af973cd77017ccbed42facffe4fc11a71e7b030e857dc01bb8d8581b03014dded9541c13376ec8d6c3367a0a8b66442968490bf8eb18c703f4a767502aae122fabfa877bdf00196722ecf0aa057ebad83718d094495ee431334d0c0f41ec10fc3d8d0db53c59c139f564adf26cbbbb98aedc84a334d8633773edfd838990c75fb91976b68740583c6abcfb6228f454148f6934182911ebfdc5f33f01159300ec3441d413ffd7f2fe5e0161b06cf8bb6b2214446d0b2cd5bd80ebdc72ba1dbae06d52172ff0dbcb27e2521ed42954d990321fb3ff6f96c3be80af589152a59ad383ef24c82ea7b10e20424182501c8fa4be7fe4fb64f2818c92d26299c30b0419dd885ca3c1004772c62e53825d1d60656f9f2a52425d01755220402e4e399b178b54a47eca4938376ce6352e7f368ebd0c560ae64a14be03c0e6818170df6a22186583689a7b582b388500fee426b84b479527cc5b92d18fab4ac51cb81adda7d7cde6b4db5a2478f1e1fdca1e09429dc9c80e637a4161f1cb3823a8d6d20262b2a1baa79fe3a3fa25debb2ed1381c6a0b0f138824e67e665a7e5005104bf9f9a82779a2190bebc2cb07048ddc4c7e704cbc88caa6577983210120f84dc23cf24ca05a58175362d2d79f7fd2c1b3178b4910a5e4910bdf0974c26a07792e75b38cd5aec456f1c510edc902e4adac748cf427452718cbfa111221df0b12892189d12b062001fc2bf53949be764d4a6fc8c5087fd0ccd47a3fa435e4265fd843799d76405156bcaf49d7395e82470a44feb398464285b35a25b34c3d7dc4a7339e21411e896cee7146049926b9a07f34af8da3a5422abd2cf377470e9988c52a5fd16a2cbc0062863164936204a192503a195a3af61e3a2fdc2e95c71246d23dfca6ac5a8788ba5c3835678f6b74363f61ee8159f052580bdd80d705bc4006ecd23542a58641f5c712b76ef4178709f203354a630098862602e42cd8807b36b3fe608d0afe4d8929f0056fb3c8f262a0bb8aaba394f288fc144e62e237781f8e9e16bcca068b1d078383b50e00ffd916dfae0aa7728393d5a8674cf1c450072f5ecce6e69e92485c32e36df1e11403586e948aeb5b82fbf2ff766862d3fc37eedd32ea9a371d97e07f90f2d7e0db2e1b51c2bdffa0959bed5678c431acb15f920ca50be0f7a6eeca5e735a4915df9ab9087753d099456d0210a171e5e4390ca7f402faa79717f71fe9d8141f1538a31b43eb1fc2030c0cde05e6e9109b849c07b8da2a4786811361d6594ef3c55333c616ec2c61e4acd1deaa4a3dcb423685dbd80b5b9d8231912ae62d77677215f6d485ee2c065427a203e9c1c99803018993712ebd5b6d9994d3ea1292840fa4e003281ef32dd62d62d535229fd93bbff0d83e3e161aac363a7fa24c3a90e4eb2b0507a90bfc0dd42977d741f4971e50e9b4a4c43f7a205ce3720a62403a10fc28501a72d00f5f89f04922aa4d90a4cf6b4318d4079d74955b8b15503571e444143f10053ec396d9d7b32cdd9b4a18ba97d1162501bf84a412c6e73f82b5d4df791673e17411e7a50617664d0b4913bd7a2800441614ac17f94e4fd449f4d200392b98436f5358d90ae7609631a95f4470983d34f987ea20724f4062246aec92711997e937d956f280521f4ba04e3cddca8a3011c5d968a04b74fc548c6ca2755bff84b9d5665a3f46b6a50858ae6050c22a1eff6baa22c003800abe3328eaa2a0aa818307462051f466ad7ea228597dba08eb3b560cb1070198f477805d247498ee0c0cd2264006dc657795ee5b8923dc3ccb213804be86b527bfe51825b759a369e418e876215205fcd78ebf5e3836c5f44edd6ffba20247c089ab799550652c9a1093198a6c73fc7b7087b1d0b96a92ab6bb617b3cf8ee43e51b3fe4af97436a92e5e08ff4abd3e9e6b31c4cb54b721be6f735860a4fe942a09c91c695a66d0ac8fa93ba5646487ac0d41a57fb5f44e36fc37be3278aff08911d42f299943044fac4560d48a0cce7d2f37c581f069183ea0378f47eaa3a6f56dbdc112e9a81909907ab18b0824f69fd57e8d3df1be730e02c3ef6f9f34b16ec30e6c846136058630598265121a6c9a540a659b435014e3578dc04b91599290b4968db91a170901cab1db1b081a4e3d99138d79b666447126c1fc96454bf8572b411058fb8404cae042a7f43ae57309e11a703af166e0c27f4cc406eaf218d5bf05ed2b6abcf54389a771a6472581741a7d4870c44a8c4cf1e330480622950413018944b689aaec97adf062c3ad4d61782e0de4c03fd6fd053c94b6b7bcbbda59452a62465e80af80a790a32d589f6fa5b468f2f43a78f2b3df95284926987c180231541f68f079076a264e832e2f6302218cae91da56ba126b7e75991944e9d62d790b203d960c7c9d7a3ff79f954c3af57ac63d9ce665d6049566eef4483ca29e5cad620c162d8281dae732587ad19b0fcfa9f48ca4e6bafdde73ba7c375e4ca088e2fad865dc766b8cdaef400779d2cc560558e03246a804413dded8ec41442190e796943d528a5b4562b745eac9cc1560233783c517c708643905002f66438e46507249a0d405ae4862cd183cfe7f3c17809966894e110258c702f3e46a02d4c90388189361a8d4626264390d829c9700812454e4ae04219b2c414a5212f354819b244eb05090bc689136268918390446b2fc3212f5ec8a4f6621228c8244e8bdc90249a40f16c3cb85005c3814ed26077eb709c8cdb8bda15485e8d46a5c4f89d618d13682006181bac07fe628d345e831002d66a86025ce2a1d6e7919d87fa45272a1755ed756907272ed05ebfb417447bfdd0b5ca76028de2aa7b17c4dac82343808757dac1737c08647b8a20214c959b4051e0cfce582d2620c3464d2b42f5c33cbffe4743870c6d720fa193666ea102bf3a01a20800bdf811b6c4585f390ea938b186ce4b4fda19018511fdb6ab3419be10d24ddd576732fc2ae32923ec4bcb7901dbaecad852ed76e83c737cdf892f671a1545a73a175cc20a5639fec851c6e4289fc89106214792a7babb9210eddf3c5ae0c36d02de559caeb654ce23cad9840ca48150a0f90187b847c8e98294677781bf4cc75971157dc495cb99edb4e753a5d39e3b8b5563164406b1346691c6d805a936ed0969effec85eef8a45ca745cceba5a85646e96d14b310ae75f1f319f989b51272084106a78f45cadf66557840dbdfc226a0bc9dbe7d1e20ff1df5fbd97fdb3637c7fe5595763f6c05554a5a2aea26fb9cac92ca2863181e1068252161232b32ce444a82674136a858884b0e814094c080634599c7105d3280ddc55b41ad63231bca6510ee33f1d355d60cf37f5c4557786508afef38f02fd05c205fe9c15392e8adedfb1889ffff0c35cf29fabc8dcfe732339db7f7e642b75fe2250c90b8687d3a135a6c6d80ab32a018e3029a1388a2b6f67bd01c31c5731aa265852c376b02318fbefae2a4735cc0df8050a7f4f114ff6a5f77401dac86080b8cf7b389a459fcf7efbebf93cb6dda86d9f2e9b9f654f3dc74dd1b1a89cbf2001e2838a64577b9e3ff1455b07db137130d3ce1b874516fc0a0fa806b1228e768e13db80312c671feffddc7bbf23ee9d317e9671a797386352557b37663d9c7ac419f36ff6a715ad9f67217f978bc17df1079d1fae5eecde9ad39ed6652f6c8b0b24df0f101d3c5faa5e424e748a0d787eedaa4e8eb03dac7393bf98153c559aa5d9957eb02f5f0812dcb9cb4df7e57ddb411fed98a8daf38c6981ad105bacddb68f2a7f2119ecb4ca1ad7592755d81a70fc0ccbb8538f380343798c2bdd6813158cdf61f30b118a8821621739c6efb0f9e7fbc3941f6d016d78bee4ae607022501558f4f36388fedecd25862886a8487b7742e83ad074dfa52abb11e8bde03e60338cce5fd0bb5fb917cf8104b88fc411aa960a83f3d7731fb03946e745a077ffca18f7ce20f65f704156b6c5be88f3979bee57eefea553ba0bae5c98b123f8be2643953fed419c639cc30d0753038e4fb9b8ed307f9ab888333c56d648af7127d753b86fe486ec5ff27d623c5c7c142efec9911c9fc4e57c3ae4ca477bbb2b549f80a36be5302b579665990f0db8a92f4fd58ff647a7a20592e3634ae0cffec8f113d3d9fa72537c7befbd407ec8b4d8cfb820eadbae880bcc09b8c9af7ffbe474ac94204495678e33df0542774ab634e018b7983134e0fa9689d69c1f6d66fb11e86410a7ff2361ebca424fd0ec434e34aae6602c07675d85a92b9ce1f60346730c49c51a28faf01bd019f094b2bb5684bf2a835fe2ce85749fb3542a676166c0dfe591619edd0a3382bfbb7a92cd6576a09dcd07508e9b3e40da7399ec3fc41690e631a06d871cb2b3da9b34edf98c228a34998365165a8cb144e6e011548140a20c937ca89495b2aef4837dfc4648f946e0b7f661cb0a67d859ae42018eb9738cee892bcfdbec6b0633ce71dc9475d991ac64fbeb44565292795c31af922d73564e76247bb4623bb265398d8adfab10c77ae94c27be340ad481a088d89e06b80ec00dc37a01b0e5d332ec6d872cdf155cf1cef8ebff20dfbe10f2ad7d23f0cb4e08fb249d11f56d57a29d0f24d5c75db90986f3257085e9eaaa3d251c42d867c0d9574cb3d83026f0aa451f6ecec22961820bcc307398f0822534991b29a21511904380e8446715f92e90ec0fbf8f136520437de91c81489e7995ea16ef2ce076ff4677f7474cbc30eddd158731814332edf99701d38720176481117a5c9e17e56ae9f37f9d6894a8bdd2a7dba1f367663824064732cacca5f1d48b9411b293fd2feb85d6402a8e3083ec7f6d3a255bf78791ecdde2ffb9f413d3a8afae3e328dfa4232401a15adc8fe1f27665c6d44448c7680d38089af4e329dec8f322406516438040544b201321cd244161925c5552ec426fbec302be0b87256c6fa701c038ea01c4ae92a24f337baae34ec7eb815cd3c5b37331d1d4c0cd80b4b95ebbc64dce4382fc440bf768ee3a6f93424e35a176265bfdd17a2c91e9ac95e7facfce76c67f50604d6c2d1ac011843933938c68623e64f4c7bfe31b43060eb9f1827e59a859c083d71394de6d490cc27e67e623e31ac1a7c59357f5d71e64f8ca7e28a8581016b3e7edcd7de3fbe4aa52a418b5f1564bf2b683a014cb9aa4e150bb26f1afc00e994eda09b6ae704edcd052b52472fc802b72c7b4c0af80bc97c623c55bb1a9209c9c47cfe05fcd5557e1d72e5aaf6dc571aa6c2bc803598ec249acc0293dc1c649659e04fcc2766722819eb42fcd97df60640c35c58ac624784f4b025f077a3c7487b1e3d2fb8e21f371f3c2e37f977d7477b1725cfceb9809df589b9264d6681b78041395ac05fad55a3f33ffcd5d5fcea0c0d7daf36d9692782b95e1fdc2a763fee0a0b3c3fe69ce92c67354a485d4d953c65e6cff99886a76aaaaedae43f5f6573993e3a55596d8a5ff323bbbfadd7a4c52c70bc3204a09d342c0bb8b63c550a42ceaf6f65575b93f3557bee29c0dff5982884fcdac5d5c7bffb036673f1e1aeb080e77f2199904cf68fabb8da21874cbbbbba027fce7ab7ab9855e5aea70559e88d0f837bd1e1a00280941c02e009e014036a9be78349523c2659472da6a00a9793e101b4820d41a09b60cbc0384bb461ffeb2c2b6559942c69237f78d209092367248d1492fb335b4f320bbc1d017f7225559954b5d758aea48f46d597914058def9ca78aa1aa93b32f5884cb616bb7690b90a97d528219d8a5f4390eb434f3ebd43da648938cb537748d31b2ad8a6b566f962ed9cb4d6979b4bf695fba4f6b712617f87cdf51daedc5be7bd5af7f1b89d54c997ea92ab4863fc33a2e10a6c69b962776fecf711935ad5b452553d4b89a1007f60aa63292e064510f2b1971cf695a3807cac2bc252ec06b7c407d0b75d8edac1d812614b94314745ff526e881de6f7eff0d941c676283d1f8f0c3fc2cf3c62ac40bb9cd496c1052e68c19c744a501581a494128431c612846d3481690fe4a33d7fd04713181067b26acf473a70c53fab467d239dec3f42c14968411264e4a089f963fe40428c4d8c0d15f307154a5042102c29b600cb38e78495521aad6dc24e312d66694cbfac6dc24e312d66b1c876a09ad5b7d4181d93994ebfd5da2cdbec9c73d65afd6edd201b6b2de80654d3de74b7989d72522e08f610cbead63eb6b9d82448ac6298c46cb69ca5b37239b4448e66ca05f19f99a775e3297cd36ae5e62277238fa82152a7512f9d0ad548223bd96b6411d9922f992377240eea23a530e05bcda36556c5852a1f7418737f4a7f031a05531246e5fb974993825c6b8010217f7048ee8e50b628f7cba03d788b90698f32462d5ca8f2bd88351cc6961efa1c44956c6f3a6d92ff69252f6ce4236f3b6db56fd3b15ac92b258f808c7e64d9e1fa1ac164f9242e4fcd6ed3e9485cb508e7b973c605995f6709e7922fe5c32ec3b0c75e70cd1ee3ec5f68e157ae16694fc2ec396b244bacabaebe54672b39925fa088bfe9348a2bc9e9036027c08c80bf9257c92bda681264f925399b0e49cd276170e0ca77d21a227691ab7595bcb04b6f912c3f73b527df63f01ca9b21cad6cc54ad290e597f85092024c93e5a6a3431283bf92d7a6d35cc90c8910feb32b794998ec05386a2a4dd59e34d29e7c4db5ed34aa24a7bd92571bb0f554cc5e7ea700c74da7e45562a453598b7c9be5eb6a792abefc8b0359b0977faf802c594b5e9d2cbfdabf5d6fe502c39bce6fac8ac455ff2371d59a1920cbc70a90e5dbea92f26aee0292935696af72c1ffacca5eab925f234b5a0990e57d77018e197a2afe777293e55f217f5b091ab2fc92176449c9f22bc9c9b264eb22cb3fa1812cfdf2ed0b30fcafe415e1caf4f6c69c40e3854c74928d7f8f421ffe7cd86da0b6724cc883c668822b1faa7c59ce16b8358246024377fa55a604387eebe02ccc39472e54f930980c3166054c844451c9f2b117ac437b2958d6023c572e3f1c5570650938e6e9aab900065c2e57026e4096a9045c912f3fc3d45c229ae4cb93fccd15a9bb6f3691e57f2439765f96610d96bf942c577045d6684f7e5cd996d4a13de97395e597dca7fce943fe644d9b4e95d0c89f42b29c4e64396166b29453c88cc9f2bda3aa519f0e59be9409c8f2a5153eb29442ea50e36162db20f083028d6468051b8a6419195ae10620b96e01ab0e6491f1ed61c34c4e0d5e30703181a3446e4cc67b6e3c25adc59844fa77956a33b1244bb2244bb2244bb2e43b0c64f13e5a8b3189f49f33e7370e6409c0c7199ef74f22cdd039436778de3f89e472b50c64c9e1e3c7176401c0c7181b63636c8c8db13196c6d8199ef7df82ad56cb4d0d59543e3e08204bcac755b6ca56d92a5b65ab6ce57dcdadf91b9005e563e9e35f1277f21e87c30780eb3e078e7b00709ff2e2afdd02a7c42c599eba534053bfb553b0e0142c38050b4ec19a22b7ccf1d4d5f1341a9a199a199a199a199a19ede5a6f6d4f6d6624c22fd7b1b8e6786e7fd934818b7acc59844faf73c333cef9f44b2166312e91f05e52144f9fbc203d32d3238933771304b554989aa4455a22a5195a84a5892255992255992e571779523733c32c72373b2d6cc9c99337366cecc99fe1ca66bbaa66bbaa66bbaa62bf703402585c6d0181a4363680c8da131b4455bb4455bb4d58f525775555775556b6a4dada935b5a6d6e030856db93a1ecfd5f15c1dcfd5f15c1dcfd5f15c9dacbb3ab545a3d168341a8d46a3d168328e33a1a12dda0b6b2feda5bdb4d77398ebb119ed355b3619ef9f31c3f3fe49248c6370260f83b33970a56564cb8603da70401b0e68c3016d38a00d07b4e164181b8e7dc159165ce93fe1bcc503e3b911fd0cef4938040367ccf0bc7f12096391c77a52ba20a42f719e1bed47a46f1277bd4d3a900a703ff6c129e0163f18c357bffa559ddc588e700ab845fc418e63c85d83afaf6022dbfc7d5419e250e22d55a400c32e7eb44ec936c5ee545aca647f29e3292fc56e7eed8a98d9d72f8276a5389f478b5f004a774cdf65472b479a241a90e507b8e2ef4f009802620c34bc30058458c8fe1f024e721e82022532842b2cc0a7f6a6cdf02f6c657f1f5cc66cad7e1f828019240399f00222fe419c2fbec88ea768058c92a69b623858a53df836091c7741eb5fbdfb7648d822ddd52927e2de2e63b703ab5c7b2795c0382aeeeed81530ed6467af00dbc3304529fb176659966559f637bcdd65037295bbcb91bde86fc689449f7d73d9c76d871b3f37f7b5bf1f1f5e60fcc3e88c802208ed61bc11b72bf9df8ff131de08ad2b7957fa21c6df172246775f0818afbdf6301e46e7f9be362eb7af15f0a7c6a46452322999944c2a0bd7784afb393d17e6bbcf7360505050b66ddb3c1e0f0a07db1b75b03dd0c3780d46af727d99dc977dd1dcb6ffc8cd2548fdee3eb9ca5ee4a5056e0b43bb306e82302ac8c516391fc6c0e0608bc6b9cbb123782bfd00e3b50f02c6f65a1784bbdcb43d7453f6b171f9dcd4c095f9981618c35e72ce7d5285ad01fb7bde43f21807facf0dcaefb0f984f4f33f368d4a99ffa9297dc97fa680364aef29d12787c4a17c7334bf40f9fe943fe13e5051505250b6dea6b6fdfdede72633e904a5f3d776ff3a0ae7af1729db5f99b27d69db82687fa23d49dbfe6edb8f466fc27d3cb2090ea606ecbf7df6d88fbe479f8d423f72c1db5b2af27c5108a4d9d47dd75ae3b436c5cb4396d5d7277a552355c7aebefaaaaffac2b4c03bdf7ddd570f37d96be5ee3aebbab12be0ef938369816981bb3bba0163ededed5d5ff2bf94f666f6dbd757a33c3fb3ee9339ed65d78812f8fb3c899099486eee8bdc7c9546f9cfa771237badbbd70ebe391af7b9dc4d7eb5c7048ed3e727a751471a95fd7cac6a54f7cfc7308d2acd9c3cf12acfcf38d89cfcb41cfff3ae73f1b7dd2918ca2139a27950d939e15e8fc110c69d1c5317aa7c285454f1426a51e18423af518d54bd00868a2aa488ed697d22111d1540dfd38242fe464a68795af06db401e77ce5d14d8f6adcd42eb8e23f62356a8e5ea3239dc27246363f5637232223d60867e41a1919c506ddb41af565ae21443a1019e22b7e28f903bde2078aa01764e907bdb29ad865355857d383fc75af112bce284234f9a380b2fc8d58a0970c9d0e25c3cfa24ad2bfd13573652e0cbaf1d4bd2ac7acfdac6084ee99dde7a5f3e0b869c41262e252018e10143b1232320264f11f1101da00d1c419ce0209812cfd209a3862815e70c5084cb4011a039c012a035ce9fc5598ba021b1526cef0876f214b165866598c93f31469cf3d38edc59b0f0d0baeeaaaae8fd10f200a8f6820cb4585465164528804f007c97f5e0e2991fd412f4f51c822df1f74a4415b4016fca198ec2035647f101aa08df98176b23fa80dd146f6fe02bde1a6a64310e5547c464f801e6e740357fcb351157106be029ab2f7772a3c67dd874282ece942f6c7530557fc3a15a39cec55c4d1147006e6464e802ba32110ae8c58d0fb464fc83e920234f99f6174c52bbb14208a0ae839bcaa8e99cb4dad6ae9815bb487a246d93f812cd9c317193e09b4311f86327c9468433e9499cb53d195b93c9e9b2094d442bf724156355aa8a7e52910cd671d44e3a9acc64db1a321d2de8d9b7c483480bfcb1115b2ffe8721fb002663555dc8ca6c8feaeec063a740f165b620bdc7688fdbdddedb5971c113b7056e3a90a593eeb2d7f023480bfc6b913e001a20057fca57fbcb13080289090f662200bbc4902f4fc3f1090fc815e1e2c3c57401b209b38c3dfe9fb7b70200bcc9e9dfc517d5e4037a01bd08d9b3c20266421fbfb8dec813f4fcb6fe2cbdba12401e54548a35048003d87c959f78d728a8c8cbc462c6e6433aab9b189364653c019fe3e7265d0cd88d5ca232a404ce0403e802bfef14b737a5a9e25a8e095fd3f1f1f9d9a2acf126c5aa097e7f3e0a8808b4c553040f2f779f1c8386281721af5817c0032d2a82884ec43f2073a32f20164e9f7ff401614189fa7252e5489bdf2ee9577bd6a2f09f893aa4ec57eaba3ca213b94305ddce83870c56da604864c98b830ed98744c5cb8cb50c950651934261d192a192a37e04cc75d1726772942ff20e4fbbd1d8f965a6592c0fe32d3796914fcce76aeca56147522f3e31129a535ceaff36f787ea206a1a71ce9efe6121aa2f3a7055724ab3d1912d21ea605a67fc39dd3e12ff757f62e472866d7e1e166da99b828b1fc462d70d6037f9f96fdaf54ab8dacd485bd48a66ff2930bd534ea0bd974a19af6e47c8cf4210e6651a926cb2742e64fab51ac46e1975f484896a19a3c7afc5fc826cb27b990eca59cf3a0feaa3fb23f39ccbdc3258fbf721f8f3c1afd95f4646e2ef8492e277fbb37179477f13cc679fe8a384aff435f34e783e88be87fa8c9ab51a22f89c0e7e90c3dc9cfeedbdebbd999bc72ccf77b69f7d19f386217b676f4ed7cfc0e083d2681f9f64b4f7f722626ef4f22cdb7ef5c09fbfafe240eebead79f4ffaeaa73420e6d0df68930e5405f64e87bf4ab3cb117a4c87bff20ce197db03463f1f96743b3c7f1ecaadeb2d02a2ffd05a27b53f3dd3087cf6eb7722ea74d257a344ef79d253d1fbcbc425facfc46552c4337aec6f243de53c6fc27d45c478fea254db75d0e42d177a94da791effec221033a9cbe1798c078f0924fd8da60f374afdd5aa1ca80a5ceba7037fca5b12a9cb411f1b3d461f2b2226f493fb4cba1d9e75282063ffe2afd4481cf661a449e957eba1ffe22d06029afce1a7dda7c35f373ad47d3c485ccc1e8c1bbd7332bfe0be1d37197f0a7e1397a7648b7c9397684341b1d906c9de6e4156df927571e3a1248fb05cd1e0d17f72d5a32711fdc72681b3bfa199d013f6e587a26894c9e3ffb43e1f9c6b1f23d15a6bfd6274ec27f6379c6482e1ff34d5a7f521c27d70647b26262556a364e8e3f1881e14496eced581f09331314b21edd904c99ee4fb6091e57f3c8ee326f9d6624c22fd773159ca973eb6fbdbcdf67573d9e4b7eb05f7db1d9cfda5a1195922d23271fd80b598b8dc243fad6ce2ca52537d5a9ed25ed3ba4f2b2b01eec7feb3404aae9897329eca5e8632ea4fbbcf7f88b427fdd3caf26f78a9e46ad117f59d46f51379914e8405c670390fea42f4e04295afd6af385d69aa1029a5e334ea16719cf6b0684fca5c88c25a2609d13967f6754e2a67fd7a7e46bb1d9d319afdcd7e6af3b5195fcaee8bb3931db6e1f09c7aacb29f5fb9cc5d2776d8cb18a3ac9f11397ecdf24f3f302ec7fd237294f93bf9c02af6179f7a6c587cb8f580bbafbfa65f77e2c7ee62d8534abb52fdf9451ee4c78f7fa2f16937b3ff4eab6cc341f2b1cb11ff3e966597fd7c4bbb2fd63933926cdb5cb48b550cfb18f3cdbaf818777ac1db7b6a7deaa957476e473a4269bb1d58ce41ff52ec765de9fef6f53f4772ffd71d5896ffedc0b4af1b0ef9393cddf674eb41cbf23def895f65fc4dfb93f69ecd459bf9468ee64b5f324c75ea116dc41c5f7b22b9bf6b8b3a9d9d5c0396ffb94efd78eae1b15dc777da538572442e706c092e2a158be5323383f112e20eb0d280e469d87e0d1d2c0d4bf2349cf26790d101cf5a7bb8b9ca5ab3239fbfd9e6f2a9f553b38a4928a862925a6bc52807e24830cc3e5d963de8a422792949de7e3bb08c9fa4abb83bf58833eacb0d077efaf7a43af5c052c2b4e7f207889331b03dece77ff20559e4d38ca52421b124724218dff368688df3ec63903e861c4fbd707063925f913f9cfdb3938fd32ad71e71463f3d9d5e4eaa46f538adeae6522907a50e3eade2266570ccc2a082d68c25e1302e6e3d60a0ecc34137f57073d6913428bad7ee8b39e64fdb360cf411f496e4ada72e09c903b24cd26d38489efe8d19db5c624e7b7e0473ae43dab87e8dc3ed79379f8c17ef26cb506513177146d474e24b9865c8c8062c4325e1165faaae53293cc6d53339aca84a027fd87a9a28fd50e503015b5e92a81d859fc4c41165dc70b4ed0d8763df7048bfe20ab9e1f8c09f1b0eea389de3c0154c0d37fa08c9a3db5b3069c7e82de8312ee3332c77d917ee9c5779ab1a0e9303a1c5ad8f38aef852d9158621c5bc8c3713136968e87839ff22b9304ecb62d2d75865bf01bddcc9598fa9515d3dd33087f68cc79919735a46976445d58cf1a882371f7cc11f5e4deef3554b74cee386db7f1b3e0e986157eacf111f7e77ddfdc46e779752ca39e70462524a29a51b10b4d65a6b05a2b6c8bf1f8ff11897ab677a262787c58a2a7803620263206c8bfc8bf57b774164e7dde1f0ae4b3ce4ae6d13384b01036edbd0daa29bc7a64df1e983aac0f36b4d576bae4b15e01a7ff9b5d5a8a63459569a28e85b4ff5d3c78e440b7d1a9ef21b5d67200b75cd6a836b4d7b354b018effd59a2b33857ea8f2c9569610c32f50d0afd1a89b3e404d7bb5ab2d6bd4f094b5d84931dadc248054d30790377d00e906a983a1bc694fbeac913530c3968daa2fe9cbb669937cafd901fe4859926aba261321edcf59251a7464026a74740fb636426f0fd4a4edff6a64e93f9f529b65ebb2c195fbb12db0e69af6ee3197909c7a9c54a797d36ace79eab173529d5edce793903829c465af651ffad34bb40173e8b46a54e8b3f713eba43af5d839f5d839a94e3dfc331f388774d99d7a48795af9ead4436e2eeeee5ebd76d8dd3d53028b76fce489f6fa84a6bd3ed9d9d9d9d9d9d9d9014923ed75dc644e7b6d5f270f77d6307d8a1c9fcc4c891dc772a60416913898435cf625dc27ca10268a09039a3051cc1f31324eccd0b084d8dc0c2192fb357c529d7ac0d32a639ca6c1f62e8a3e6dc2fab076f425d749e954be63ef73ce9393eed3213169d2992fc3fd31938e898b4bb992975cf6222e8326d19b76a20d984532548d127df69326df2b7be3e166bfae793725adf992ca2bff46977c66029cc37fe692ef8f328dca5a862a67dfd90f208dea926f13177146e69b4b0949094e4949abeb9b6881bf129216ce3d99f114b611391971db7f5bab64c64d9fff4e88c00f49eb84485c4598b8dabe85a901efd05ed26a6fcee91393b4daebc7dce9fb4f8c761b4e7b116e0efa8fa475e2aeed4b5a8d9a93a464c653f53bf4799256a3ee7f2744727fa56f29f6f462dd8643a43376058cffdb5ab0a37b825421baa5feaa848359c4b98b84fb261049d225ad09a451f3e58e4a4e1f1326b77f3346a65ffe379f9834330a3985e4d64c3a262ea20d98b36f19aa4c5f723247edb50e664b390d629014587e8661591744ed78b4c8f7060d017fb0d5de10f0e775c087207cf8609197bf7c98bda849d40b5786386c47348f394f5dd068b274176152b880a768b829f3927f5b4f95bc3f08eb5f040ee25384fd4f6783f8bce73d5d11d84d327b28ca9e8e869be4635ad090ef37e36e30400beccaf2a5ab3d295d9ff7fc8db69efa744640e16f44ffc7d31961dff3b4fff341f47fba2e08fbf4decd7130356077bfdb7d7ab3ee0687dd684f328046cabfe129d85dc3b51770d7592b9ddc129868657993e54bf8caf22b9df6c60e69540c42966f5b37f9b344b2c49eeaa7c91007296d136ea342d98db497e32e08138b5ca8d20373705be51b6dffdafa383e1813f8c35bfdfab3729f5cb980a280efcbf6e4e3b835dfbf5dc021f3dd8088d064a21b0ecf77c3d1855cbf5eabcdcdc5879724ea27e1f6314fec7cc0fe7e62ce1e7b0a641d745307dd44818add688c739c88a373dbc1a738e0cfe9ae2e649f39b8d90aa0ca672366052ced0b26b5e77f6336c053a588fdec8c988f7dd619014510f331ed8dc01eb6dc872d1eeddfb8b7767132dbddc89bee9bfc82b5f4f8162822146dbb6d77105e7207c189dcb6bb6549b6fc9643e08abf7c025cf16fc9f94316e9040ea664155dc82e0920a790fd3f938633bc4969cfdf4679236ff28da720a903b0511f97a505288512da935767b552e5df31f74a3f561ac4767573f13ab1ac45f05acfa45a0b2e54f99a067612629a860537ae443fb914808c1c4d9656afda00582c072c03407655ae8683b6759b87939ecf439618d22425c6243048402f40a194106429894a504a462723139209c98474323a41294129894a29a19417a017304860c4c031fef39c47b3d6a134d2e1a0e1a0725500900120072c8700d80078d53351938c2943005200273fadf4ca00340859e200b49501ac78e693b8c83415edbba5bba40ee93bb5d67e1add502a355c347020ac41236b51dc68a8490b3dcd4ae869ef5b043c7bb422b6fbae32dfd3bcf7ff5ee5d2a0d15eff0d47794fa965d9897468138d39024dd289d560426fcaf9708e40ce46c2a422925ea0e805514c794e447d29399eead52af74ab3dfab1c2c5d352425a54b7684767f6276b74bbac1ad0379c3799bf3a59c31464b8a258855be852bb6a373ce49ab945175e01544032f15fdb9b9d49f0f218bc59cc216c46968d33209f804a052b50e404caa9809b482f840ab052223133d5bd77dd126a6765f248269a78aa90d6bf07b188605f9bfe1a60e52a3868d7cbbb9ccb7180b0dfb91e87f35431b511567f47f13732cd95126b2a22ada88448033fa89e47e1b87e436025c69ef222b1382e3a4f3a3eb08c9a3ba8809777257c2d89ed80100aec81c289039e801a0a1934e300e7af23f15181fe0d9b92c2df0117a124a355ca8e21c14385aca2db6c80f40883f5207822ba10d64cfa009c48186a6997d0076b3a7cb60a711933223781170fc4b21842bf365cba822310087fcd8799c2fb91b936209a801b17c2b33d8c91dedb50e72a34103ab60c0a9cc8036b928e5839be4dbeed341cace3580bb41048c83013e78aa03f6b3b8a59032a081f6fa022aaeff1b0c6894fca98344270748599eece6b5d7ef65778a30d6a466ad8c9ba73be0d22f0cb707e4f9997e7b80a369d0888e233ac62d658ae3701c1f20600b0e9863b6458cf10a17aa7c1e04c3771717f217638cd65d1ee8d8312a206365526443c88490459105210342f603ad44a3653ee801cea07802f32024ca7610121109b574804b4624da0cce82e01873403a41d9200e70e684bc2934bb416683ac063238461acc007b1a0d510d086b54648081e01834a132850b1bd51de14ac4b94d7247b842caed477822fbf71186648faee506e56eaed4a5ee44b96a6eb5e678746c22dc24a690441692284316ae4ae749ed2886cdae7b491f38623fdc80882d1834f56318c949865663c2043b9ee11013e8384e36c1cb0a2e9e2041196ab27f94a16a6f9e810777736f96651986fdbddbdfc7b09a31ed62d87f300c377671b20e7b8cfb74dc7b7feb4c3b714614acec97a63dff0f7765dce4efb9b97eb96eb3ef011e59bbdcd586f04c3d6b7fa337ee3b225bed1a017f7e86afde64f7334016d81956ea57d3b4efbff7af898b38a33ec67da69d5cff865bf9b7e6761d03b63005512eca37ba023530722557a7d53ca94e2ff3b4c24eab0e5485547df56d76605906ff9398bf9f7a9c7aa8e1ee10bb004981e3c328db2de6a6bbe3c01e526098cb19a390538fd3cb49755a9d56f9c43aa94eabeef3447b4df399c9eebd7eb3d06d699aa6698f72432d9356eefbe13cbf8359cc6216b3285fa8c5559d175c9f7e5a6eea50ebfbb426c9778ba40bb5dcd49f9500875a19ffe6f9c6dde73b9e10ce7f3e9e2e149f08a9ddd6d7c2c142bea3126ae5f64e26ad4f532958f0d2c906c870c80a6cf28ddc875bb3b1638e218ac8fd300fe1b95164a8e017bb1d9d65a8a246e2f9eebefa58ff77dfed7b38af95adf62428201b1d8e8371d77936ed310e5405beddc72347b6434a7fb71dadb2bb92fec86090c12083814ac562cdcc6430c8c98931fa200536a29fbf8228f201321cc2c44ebeefb1ed6157862a4f3aa3b63d20db705813173238283b2fd25ef6d6f3d7b5eddeaa699a562189a6ddaff5bb2420ed6f48f4b213755f5fed6a577638cba7f333f9747e327ce408fd115972bdf1e059cbe65f19aa49b52e47877e66b283f6ca4fde2e47fdd0cbcf5e7659280b55793da008843a1d8ea33dfd8c87f9b287f9f2cabf9d9478c3210afd67eb418b1e8ffcec13d18cbe67c3313fc7edbeb8cd9d6cca176175d2acc9ac85aafd8c9bdb9370d9dfcf470e9b743c5c9dc9eea9d4d3dd9fdded240ac8a67639a616a586723f6e11d02ef7e9c85e663bf4e5a3dcff76c8acbd27eb4055601d8e932ff6f826cbfb39b4fb9aff76dfa463e1df59e79c53421317de8da7e24faf957fca961ca1005a0bdd87db1b10567b1e3a7f21b85b0f9e3f11645b0f327f23c0b61e66fe8ab046d4ad879abf23e8d683cd1f8ff937f3e4f07cd6611aa765e28b06eacc0f1261d65d5ca8f26930d9776832b4820d450890a1156ed8c9520998b2302e5736092cd60f6874305303191864b7314c64ff0b2d0c9c31c3f3fe2d0c74d8622d27413df07771703ce52d37f95b8b3189f4ef79ad8b936b2c8ca7ec5b50122d0b7345f6ef120f5de4d97d43c42efc463e8804f2e74f98e52a89d5845de4aff4809923dfe8d203648ed9f90d5cd160681a543e1360218c3dc8ffe20491007fa19becaa8c55590bd403c3c0c0c0c0c0c078703cf5b1166312e9dff33e309f1b5012d8fffbc064f71656796abec74d85a34895210e72da0007ac41014d26d5a0e00799d4de9433f041331c3283971c718632382283d71019e0e499e110194821f76b8d9a32b0c9240e073ae04a93db435d46c8721f62b0d6fffc0b193e949fa7546e0d80d2dde5da689e518b76461be59c3fedd7faf3dd25abcc982ce2aef6a4a6798e9cbb863842953b5bf9557e104c8b5d90ac73579db2fb76601c742d4659a9e4fca994f24443a551314b29e58901327a27b5ece14b4a2ce6e99434e5770bae60b2d669b5586b7d39e93b279f72a69d38e3863b9d4ead906288bbf4f834d549ba88e1caf2b11ece51ba7214601e99fe17729578981f6992667dd24b7bce915eb27cd28bbbbbbbbb090dcd98789c9342b9cab4e3912fe54a3cd04f712245d59ea4fe29292fed490c077f292f9e535e6868c64db27e29a774e44b51ad2af65f4a4a4c0a10d07f294e64a961918bda8b9f221fc7241f7a354a3eca47f2d8395c6bc53893871ba56edd293df538ad6ef8e4e8631cfe789c54f4b3cd8556131313933f99986011c47d318376e8a947c8d5271574eb033bad4214e227da0bd1b4275b44683729cd41bb104e17c2c2be2d09d95c4a35edc9984488a6c64df2718474003d4f7e042254220234c9a7984ecf7f5e6e2ea02860faa19290f64251b467d39e7c1a9a812bf2695762c1954932f92fe4ca3da9a46fc271219c50b4a4ceb60be1348a763bd42e84058eb5d8935a44c88fc9a7d52282932516593e863db6b960cea9fce3eefe913c7eff7c7660f9e4415893b6cf56da4625b4f340ac5d7602ac5525accb4ea052edc07a07b603db817d4adba864c33c1feca78a9e40aa3097ec04b876df0e8c7618696293f4b372740746318cf47912e9436fc2eda0994422612eaaec0452959d007f2050edc032e9bf1d1846e23e2a55b7dd70d01fc23f9f4fa8487bd2b504febc892b44c24955367179aa642dc6243771955c2157a808e53eadbab9e02e62acca9452da7d3bb04c09fc69652b5c72958a94725254292f29ab141faf2c4bae924e967446d147939749914fabe56a5467f99f9c4be26009f7292097bc8469d4a8fb621ebd74f76ebbb0886cdf39da39f796f3213c5b12077ab859d253192a9fb362dc7d3a9cd43ce89b744c3b32e80daf1c7d12f7b9d194beb6b950cb853ae7406fd231ed80404f7ad06f9b0b8864ad88fb62165113970e772226c0dfa7d51f57a3e6ab51b452221f2c1a55a45101aacfa8748dd476492d19d1080000003314002028140e098542b1683c228892343e14800c9aa04c76541b874912438819630c014200000000040084864902a888b26ab9efc9d34bf723edb5a6a1e6f2135e357e51f6e3854603eaaded01445cbc22c0f7d5c905b8504ec5db2de5b70b01bcf1ec7731ed6a57316f01562f5fd3d4f7dee7a045ae5ee98fdb5a1087455243d52fd898cc3e0d26117361e655c5c28f21f42052b76dc213c90453583091c82ab54494eaed41d048b2026a2010263c8ecd8b7b5d3b5a9945044b0a42d35de60ba3d08d42a23823156f8d3e854303e7b0d3f92f90e23f270d6f63f03627fe4de8840589998a4d5e0259932505f521373b6a499e8df06d5b2f88bfe1c6aede35506ca0a03d2a37690d2442532082babe9e45e6266b7bd106005df6b7f516e56d0dd224c00bfcb75e91a8cd229b31a0069106c8ecd10c940a86abe8eddc9d1743d1118bc142b97c0e20ee7498859e4ba8291e949ca3c20f995a599b473005bcc9beb6f17cd5e93d3f14bc6ff51551db8b3602e0b2bf2d5b2b6f338826015fe6bfe5ea246d16db00c0cafeb798b2c8c6e11a06f0a695fec41bc289423b2635a69b6f92685abfc841114e1ee6e2222c952e77933805e41a484eeabbf5960b6c2ed634c091dfb6b8a2a4cdc79804b0f2972daf92b25d54c30023f9baf5595da1124e3b2fed6637db9626baec318bfb849cb1c9dad62cef1d850fb6ffd877a94716899fee2a6bde851fde15403d7a029f58c5ad4db791fb3e0a47f7d0fd99b915387586d7fbd61a821e61a796fe2b0de75343cc9b232133560084e132567d09d28dc81020c2b8a62cfd16061394659c522c4c8c8ff970ccb11303198da95dccd448599bf9070a9834a22a102ae5240ff480cbf7acc8c683c2273f71ad2580f3743d8895c826c6618d1236e6e7f11682e45a5de2e8acbea07ae8144ea507f53ae838eebbd4e05fcdf887d145ac1de794fd868ca55f4ccd8cab6a2177b592feaa08afbaba8314c2a932da5c494114bdf4d3fa9b6e79bb4b4ed690fe065ed5bd9f28434a12c72dd803381d49a474dc2b6a68cba09e0e2fb6315d3c358eea7e2baaeab0f1ccad9ab8e9e91dfeb4e2d37045aae0a5748037a62a4c996c2136f0ace8f5bd787b44aacefbd79fc652765878410d305203c6221eb8602037b453736893ea3c8d9348ad572f1fedba7809107c6025ceaef1c1a8e1604a72259424471c20f15eda8ce01e4376cd12dc536d64cf048aa3d622aba020594972734b914c5b502fb0c8be56089764f5f4470a5437de7f4ce3ac1aab5d68e4f2e227c1bbe5bd78e422b0579070e84c62eb770ad9b86031423068550d4ac72478c1aa72bff479f3c27c1aeb688e788f988d0ed57eeb160bd37d620c030af51d00d8d4db9740fa3614819656fc12dd8d9070da4aed8443607d09f6059add7ba429af6b0efdcaf7329e42b502761250d5c128e668b5f84552516d8dc3adf5b518c9f5f894bbfbf6c5abd6cf366d85b9e1485813090da09b1301db8b842229cbe0e27240886eef14ded37f40e57c7cb0abdff332b78c949c6448ff638311c24737d6258d4bac1f21f864f39bf781c7c951a40bd6c96c734a5cb35acf05065188930c35f54d0518ba209eebb6c6a833cd7d8452ccdc3ccc2f598ad5e3377b3c8560224fdd5a29aec480aaaaea579e185b8d66b0531e983ace346e6967ca22351d18009564d6179743bc79bddf713598de0f44697b6920cecd26dd6bcac83caf84955fb5b4b9d0d11aa2924760d9c983ede4b01c3941ecf68e96f331c74317489431f297fdfcdfccfe6ecf3a7df5a09e30614efb67eec229850dfe7bb6ea6f7ad978809124ca60d70462ccd1ad84bd2c0a9e7f659560405005222248ddd343d31a3ecedcdf36577b371df645439ccae99ec25582ddfa842841d73628878170fe6b152321a6e7b247c9c927ea7072ba96a3a075570d06be1554b9f871981a52a58501533c83cf5f2df45ca0d18384b421042fda1a54fd864581647d3c8b2cafc3182deaeefa59ba1cffafab1406581903aaf3a7c536341486fcda660d03a5e1385b45bf600ab0958047c71b81898574f0d32c759b152f84cd50350ee7f4f51ecb1e10c20438c6ef47e1dbd1928c286a50e031e2b45d8e22c38fd932c1f20df2a12ba3477d27472d157da4dd1fd41760a2bcb7f22f9518006e3b00c0b9c24476c444d8445af3755b2501c683c74036189ce50afa535c5cd0a6510f4e99bb191820f1592579fe69eb7cb3a1f0d2e9cf87d6bf1a9bb2d9ef4dc9741adcd94001842485538fd1596e950963475233423141b8421246d270478a34010c8eed1853222d675fc084787190bef1261f3503d8f32a31ac0b88f901766f04d33f2bd1d79213bb3e0a164318262a6326e89779ecb365a0ff31009c829df0e8b626a2e2ec34c4ec39c8aec3b3471151ed5968a2d1226239528d915aae8cdc6890a5b9dae10cc0b8176ef6910a3c9ecb65197d185df7c616e3151840a28f210af4b0a57b86ee67e2a0284afe6084a088fdf4e692beeef7e42ec0b8ec5c8317cdfecf57cdc7f0e36ec37c630cd00f5283600b3ea301b3b0fc8e576759240e1420e92a482e0f2f42a932c170e2341b3f566bc73537833d090dfecd4b451ddb012b06991a77c9ab811ba5d387818f155f6bf86bf12c04d03341199efa4c47126b91c831a8b6a42e6a891b3084610f8658b89c3bb9d811bbe86a585184f4be1eebbbe04333e887b714b5096ae655b7a32af9bb4fa9aaff7101a25be4beafd7755162c55fff4ea44326a5e76b1495b34312f801e3b4d69bf0966cef032b22c611a5d1d2fe195f6795a4e48c2c6a98a3b8fda30783178e393fbbc2c5fd00c6078d3dd861f393e1e4b4214a2ff508ea3a8ab8010a32359462748695e33f56cda586f4844094990481e8bd5e009015294ea82f4cf812000aa9ff988a3c303ddd566563067df8e90aea47edb86dc310089782d0baa597119deaa0fc7443227e3451b87f1207833a227a1480b2e1982e15b411a587cf282de2c6ade34bdfa7cffb739ff1d80cbf67639c1537dc3227f63f61091175af8eb5f58ff08fe7ea00797c37b53ff1a9aee64cd0f4ee4e35fd551d4e7dd020f9e865c4854233577ad205e2f92c99ab849264a92bfdc5e6703eccaf4c2318b6bdf56fba61e36781372c12a4cf1bd67f88ec803c41507a1e073c3499e85bb52dca846adbb3136ea231a3d59ef697edc14145c8abe80f1d64281ae73e57a5f6ff93b42477bcce7de80a9b46d10b6148a3a56aa9bc70d38867c554c24af9a14467e4c922d76848d6799893c52351df2d5a54daa40104385a420539adf326ade58ea0fd168016199c21249d9f1de2f36d2d17a3a3fd978be27b3747db84b96815391e561448e78c8dab2845629a0f0d68cf9fb3365d82474f329a5fe69e692281317db2d25388ae5ecb08b346b4d283bb2a78e45d0cb8cd8b205e33e0419b0168ad888b193807a6aaf6b944245f283dd49555e7c757c210f9f9517373ef06fc8f35bb51f73bfdbdf322db65b53ec154aba317fe1c417ef6efc90cfc375d9ac8bc41af03f9ef89dc4ab829e16555fcef1dfddeeacd281b304454357586e885a49bad798b3aba24503f93beaaad79c39d7a741b1b3ae565560be07bfaf91b6aac58ca178366868e94874148c49298d262a682e0057c241af0252813c2f745e504be2fd64c80be78e2858c266c88b5c0a74daaf4d7c51e3b1c0a265ed2b647d7c1bb31362db87abbbb51e3c623f8ee9e8f371ac039e4263a373a7f5d09beddd8045fa60885bbd2474c9b50a3d8e06806f3c43391156f0079d586824f3dc9686762eff5e75edf29f85cdf2685587525fa5686c20a3e52dbb686c1051e14e26c97259aa57d40e16c2bc6d73944a52f862b0a389bd611a949b610e4230cd31fb5a0003e0a0de2d4b26c9a7e8f2acf288a53de72cc5cf5a65844e23d47bc797fef011b5769c629c1d17aa33ee0d4cb746b9bb8589734452cb5869aad567e944a1d6bdd4e8d7302923023498f5e359d054f19828004cd5afe852730a029c924e6d002882841f916d694071817774c868a82b472ad4684da8dcb39c858fff11c3ae6e1ceed5a9f8b66aeafa047ca03cbef7154e2daf708c7e1799865fcd6b8e4e0d9204a13d0ad839721c9775469a45a0b8bfa7f9a7a14a3592813ea82249c29348181531d60c0951960ccb5082eeb82d0ce432f1f8bcfe4aedc1d1a844c2caf647f71bc016d6070e9527bac7fd0106830527c5ab92248e220acb077990e2a1423779e98af875e2ce463c7b5944b9ff080a60e73756b637ac1954eb75eb5a40d4aa39f1464b4263e76eaa0d03dcd5b69dd3056a50a476361ea9d4948ca4c14dcd17d231b9f2eef5534885d811393710851970b4ebfa5266d376bf72ad6c2a6403b9c9771860ed6dc6eb2ec52052e5653611c9fb099a61cee3ff6d6c7f9f634a840bd123257bdb849ba883f9f2661b3b81587d4008abaf6ba657c9eb4b7b77e020a6f554dbacdcf6e043fe6c759970598e841098a3d6ce9ae4dcf4c64886224de07708a01f6cbb10d447bed3f610edd85088a172885610f4ba0e3998cf1618cc859a414e7851363f8e2a0f8dc8e28151ada1c7a006b72fb6d6f14fb624de01a922ca8403489281f8c9aa592371a1e413351804547b20db93a650022392e903126a9eaec70f434ef9d909718890ccdc017eb15449c4c6ba9826bcff0386443fa52b99748d576a1513ae43a56431a31d6d8a96e00da1332c8c45220433843e230610839bb2c399a8cf35db29cbf928f504089d14c52d4fe537344b2fe4bf770ee27633031ec727b0a4cdf8444b9f514bec848b8768b915d51e3e49a6a7a4577f602c171e10ff73eb7f58ed635321dffdc27b274c0223aaeed710a44ab534ad7828758e779989bbb852e3d70c7df9979790ceb584373075a55bac171b6650e370efcf62064ae03b339aad9ec62910c063d01c0ecb5066e061478f75516a9580709d2148f11efda547f7d239a142d225277f70ecc6707cc9f90bee13b404ddd056d57649f1e0163cab072fa53053a3b392c88881f81433796a11f9e899019faddfa085fb9c813dd524be8aa5212afa4de104effcefced3ee296fef58afacff577f06cf59f27080efa4083dd462c7dcbbe609f20a00378a788866702cd2621e7aeaa7f58306037fe51ee0c9b8bfe242b7fc1fc7e502ad8b118c08c81470268aeed17d835330a9f8a96c274e8efa33a396c3ee7ab2964a3d03ca4479e4d657f01ab505cf8d52ab2c27870f2034ffedfc60637bdf69e985e84322cde80ed7987546dde29dfc23af660480110fef28e721470a67b068fd43936f2c5fd3e6844f57e2c6f748775ced668ad10225a99678b0238bd427c10852f77735ba0d589d8f19e098f7bbafd11295f9ea12c411a4bb157db08f1021033e9e25f288b1e6ed3b83d00f9cae9fc29da08cf31dfe25659cac31b149f41cadcb0d266d38e06a369d5ab2e76b696901e746d63b5999b3b0fbfd348ebfac8a2009fdd63c8a007026cfbd39948ae65956a6b05774a20f37b47c1092c9d8f1ea0ce919d6fc38375b615fe9f9a562871d9072cf10c7b034f912035da534e02b8ecfcb92832fd01fa6383ee720dd537424f3483243a169c767c417e29223b623862f4e67851aa052fb31cae65d52d1d8157834ce22e6b317158618816721dca5b88315f3c41f2f987721f7ac73a85a0284ba4dc0308885e64c52451b4d3cefe2e7d2558c42ec5a7e23fada33398d881089e313aec6692ea44daa9424d8bf0f4393b035b7828f68444806d2b3c31013fdf17e6abe758f9ad4e21ce978f1a0ea9abb2756be16a185c27b37bf435e923f49a30ab38759267ffef8c639c02b90f02cffa365a309a64a371e36d6b36a9f0eb13e01c1213bf9ccab4fd8f429f2d7e099ff3af05bb48f805a8bd784fc13b20bdefcb9d2a2d0fcef977c77d95c7b90f5f0cb7926e4530fb921008e3ff421bd817d32fd75ebfeac9e0e41a790929562483a535193d0aad008bb4a8b29b1858243a1d245cfdcfdcef9fbe067a0f65c472cf2bdb6950eeff68786ab74e55e978d2837710932d2a3518dc41ccd8784cb4438fec079884af40aa1bd0f78d8e21113913b266b1ccc55ccd4f6438bc966ee49eb3a9d2c2e0593e552ca1b0f8a60333ca8bdefee00ae02d311df2ba8a10f94a1c7d2e50c3c08b346736ac1e630cfdc648c8a03de905362af2e108429b8f035aee0329518bb49127448f872a8a11cdf99ecc2a28a8c3427ac1c1af14dec376e9c0020555358621f4c6f1d2bf3cad146ccc90f3694ac12ca2942a0b66b3970acc489ef44a5023223b74bb4751ff5b5ea9b198808a0a0067014412d034ae924b8925f6357df94f9d559375627453f1295c36e4791e8cc32a48d7b2fd59a15493c67d207479403549678c3f5a900c42cd828675d24bf5e523f96fe5b586187c6a741e168ebe11af7a207d434bbcc0265ae82c665286baf0943dea1ac9cb6238c0b3ef21b204b4056070622d0fe9d736c6047d8a8ab11170dd7c1ed9311fe47102e754d2dfb629aa8a807115d0e347504f5f14bc1d5586fe1c5fc66bf7eeb3788967a347169d781158b02e0432517e38bc00c72b89cbce77044523f12c6bf122d68bb6f164e2e74efa0aacd963b85523c946ef11d26d389870de913be1b05cb27055918081f72c255be50a86d34e7ab6745d9c85d292bab33d0302544f2884a9327fa00654b6425862987c4d4ff0e382dd55e9ab50571676422673f21b3e3cba0e01ec6e5cab0554d322c0caab27f3222838758564af5ff31b221b61be0ba6062326b7dffa7f67701644073e275c0a254782796c093c419e94d079d2a78761758c8cb3deab7b4e401dae8f14fae42530f3c4c706596e664bb533e33ee2630dbcbda671a874f8ab590bdd5fa50804aa499295abce8ef580259f8deef8807c1aa5ff5eeb063fcbdc594f40a9e7db7a2790a4ddbba4a7c560f09f52ef14a491d1d070b3779be0addc95190ae268fe6317f1ae42bb9f67b568ba7b2b99de46303905df1560e9c3d71f19e0a310ebc052d52827388e54a970577c6db9b0f7c1de0fc1e6a018dd7001e31e8572dab9188df5d2d8c7387bb37a0d249af4396470dc486e2340e0c8b1bbfdfd035384d80fffc7f0d12f9b3f01c4393eb4ea50940a5f75269bd4bf2313f39f333ab347cc20092bd83842c5c961e0a5977eba0887c0ec4cc72313970d46c0fc7c37d752e4e50f847a5b8eceeecd97d7ec9444054a3da094dffcb840826b4582493296472f1ab316a7ac6cd0ba2371475fbe82b166d33a85f81b0c0037c943c2cd8a9cb47d8b71111f8a2d57713163fe67808b0e297bdc3e212baf088b1fad94eb65e20290442f9158a495257837372cdfa7a24b50de46015c569da6a9ad9c8048a137980f52c9b0bebe013363db30c9f729aee22dd7628bc920656a6189fd7ef718d01872a419cf20d0a3245df9a351a718a94c109b76259fb5de70fa5675b592030e2b403f9b26886c47d0bc26d604ccf95f8b60dd0a5daf910d812293ae0fb7c24b7a0010e595646d306a12707c329e8e60101e27354650a9325116785090c5793fb43d04ac8d8bac9d9c90d6fba52ee0ab60b2b0a882251845b66ef9874239cc8418decdf103515d28f81c7b2062255cb7337be4ea2ca2b6e2bc4f0a355ff3ad0971037cc0ee9ed0c211ea89aa336b98dbab0b56b10fbb37ac932ebd121a2b560e55060555e01b17413bcb48b3f11122527f2605dcb1f17f5375033b45e8ef657ce1f538bbbb8a997f8d0f7a73233e1efe45e4e27b0ccbc1487980730243218ee65a7be1998efb8998881373e2398bbe388cbfdbbc0f25b84ab6b2f42ff56a45575c79a0315aceb86efe909ae607c1fbc1fcc29e1aa46a08aee4f292c6d3f3d46fbac4bd0f878de872c175fbeec699889ce28d5f6bcd05695d80e21bceea4e4dcadc814e4a40d298fa2a5480086f93561bb8224a630d619fea14e682080ec4e682e0f8fda916f53315221a73edd2498ede2f1b580b0b2cebc6302f5ba98335008600940185ba669490fb1df80043f8172bc7d421f016f189510cf30c2dd16196a600a94ee5e0a3328081dd3235a16eb525bcd5590be13d14d4ba0eaae4a064c30eb30a083517f02a93c6bedce5c8626e6cefbb4a05016cab33804223ea4580d70d97de9632f95dc57f0262dd079fb9fcbbb44d5663112eb3bb0022b4b30bb0618d5743e2ae0d97b2d3f5234932e48a0a5dc14fe5fe1eaaab4aa9662419bd075f26218a0b9e761e7b4a927164fe547a7dde90fa52d29099d62b1c7389b2ff9bb725aaca053f0b6091cf43a5f024c3307d8c6b8fd1167dbfc9c6447a805ed1c4f436f186a8aeebe404da63a7b63bc9186656069843817aa336854c3c375fc0e1225a5d3124fc11e7f1a246c4be101e13c5ab916cb3d812e90bc4a2cfc6facdbe20540fd69a10ad5b54e006ea5692db2f24ca1c4f8bda7557421415dd6cf5f710c0b2fc1f8bcb99e3535d7a6270807d3db99aa0543e7f5bdb6f8c0476a640cf25e4d1c3fb19c710e94d49ae78629e34bd00a939ea26d9e444e2685f6f6f5914637434d1456c2f408716f2724c07273462daf2561913dcbfd8ce38fcd544397cc06bf8fc965964e5809652b150d7ad917984c6dabc65ba753948eb9e5417d8151538944e274ddb9e739b2a8805459a90d0192448a69e34cda81c577e0a4c58fd1075d97a04975586551db2c59be04022fc791bf681252c860b0d2f5c51de90dcb45f11088086ad8f94ab5e84d7ff163aeffa659729ca605279069bea51b675d91f4467c3329a473159b8287318bb39946166e28c0b0e4e9cc8c96a0c9862f79f6049f0b98ea609c6a0990f67886e67f3c2d9fdd27840dfbce16bf36b4d3191be9b217b56b30762351f693c85124d2c5c02bf4ca0a7f8d95c8e2fb5b6a62b5d6bf1b9a29dfbdf62c0265bd84acae4554c1dfbf7ea4f1c8170628af81643fb059f12c4071b9c64e949aca8ce0172e3ba66cf2dbd1a157da41a3537d09d0937cba9425787708f2a7bdbc7e340da477b56163a49894803b0a608122bd9d7331f374cf13a796706a16016cb5e5802e35ecfd11bcabc5fde5529da3ff35d901cd950aa521c8af8910c71259b329dc61fd79b4a4da2ad5dd546b3d1c9cf49b143d6ed8e0e9acd204981395cb88c03f3b2ce9c288373b242f437db46d3cc64a1ea73a9f6b9c4a5062cfc8f0950e35f9d64de5f82af1688d690cd56d9f82dc303820bfde3653364e41748a8f14f89087ee03466905a435d1aef3946975098dbe1fafdb0d52cece2a6d6bf8fa0e443b15069946cc60b26390459e79374e0d8ae9329f52db5c34dc9b26f20d490b29935403e6a1847ec98533617041920757244cb04e01ad8011c4efb2181d22c1f59ca6084c3784d8e3abce58052d10985207c4e35f78ea974e3383157c50deca2ad6fc1613ae7f0bc0e7ee8eb4e57d58a91f87b1849c8dac65ad667593f8c16d0312b8681926b6d7d6dc5a38bfaa4541f947a6d91dcc99a19a79861fe1d365b0f2dbb33e528455092864165a81f767cf50037a9a32fe77aa711991f0cf05c7f876ea6689b69a1fbdb4a12200dc13f378047de87e3091b198ec7c6a1df92be98b77bd4514f6f99d69f3990b0a777334e4bec3a550bdf58d9620cf6b749c324f7366f70afd94a95fd999610752c24605e86c6d01bb3807ebec318804f0b23ec7019289736c2727f260c6690f49f9f35aafe23d78cf0b872a4f96a1bd37782e01fe38fe88bc4fbec04c43fc667358492a1371acee2c6bd9a4e0bdf7d5b8ae12f351f92a09245b672ef363f0ac7e0e0f67409f683e3401d3066052fe24ba9ce93058beebfaf78c5b097ada0054ce99d61498e4fb90c7b9641a36e9f1b12a212ccd9e0f3de104056b3e9674b366acf037502314afdfadf24aeb465f707c0e85006ca33f3d4060d395b07feb2fdd24020a8a847c985e4d3f8543bcfddfb7dbefeb13417e63e3686bcba08924c8f8ed2048924b430e561357099bd3af8f7226e36619949d59168d13e083a9315cd5c04dc78a55356c86a60452004c388059a1804f291ce2cd7ec8d040b853c8425c72e4050b9ad6273da585281ec160fca2b7d53a096a4ba40ff5e751877d1727f8b0c59419d575c26d95d60af8075875e16e8c24e58178c90565e995a3106ba648c5a208b07afc1f149cd06e0a90dd8c90d0c8acc8095a3ee3db9efe11b0c4403bc502ee6d9e66225cc5357bfc16ecb83c91594de40530bcc758ea52e4f5bcbc69c113eec200d622b965643a61f004887726fde1978ff808bbae8823e70bea628d0fd4309089d74490b2aa2b31ba5168c41c7734c2640986723bf0fa3f7832d733afcf66dc8f42d78881bb3a16344662cc30eff1c081d27db8db58780f96fd1333a8276780a4ea025703a60d2ca9af3dc42ffd198808f2081a77becabad046c09e27b03c7514fea496369ab928e9d0ed4bc501dd200cdc333bcad74b709afb83e56bfba50c1aff9979ea616e09393f079178e24875505eb54a47054195942d6e1a92f7543f400b638327b38ccd225935206d57287e78ee8546e3e656e9ea086013e3ea4c8c8ca9853a5adb0069cc13159b84455a37cd93593d9b16107d22c8427ce65b418a30cbcbd48e33b3e3ba2dff033b9a3a6a4c9362d2b532af84207b28a8e41977f350ff113e37c27cdfa57e64251d133077bb493ed9daa2ebe998000d213764c8d4352a42e367ad46f407a0c23007d5826eebe4470f506c5ebb18c34d7f510d32601f7d49076b85d7d3536dea3391b761cafe9af0acd13b8429a22f56ff6b772b5b35450fe8f0e193fa47268bbbe11d7c4c594d07398af51c1ca915999ccab9daf9bdd36d8a2964f4a4d77167dafc897e165c699a7cee27a85e5921bf2ce4d0d54632999535dbc7db27e0305e1f7ecd32536f72c6a69134a7e4947bb3819894f216cb209508531b790876b334fa86251cbc27e602770e711679b18a26ea5869f2fafb5b5e505dc9c69db67d286c4a1e446af78eef98dddd5883a940c84b64887ed8fc54b3fc5cbd8073d7472b2d9a79aceab7af9bdfdb2519afaa1dfcc2fa9ed94a7d74b50aa190537b82026f02ef2b9fb18ee1eb302a8627b9e78e0851173e36f23692504ff3e7409ff9ae53624cc9d42a8fb7fbaade25a4770b7c9040901ab399bae4a35a6757c37c871853b4701b14c5f34cd69c24cb7db103d02fff11eae842f73dc19df719f41ad1e61a0894d9b9d0a9ed0ec32a8a43f910ca194cb5e9b7a74560922bae153827e18353c575375626baaf0401bb179aaf46c3af61adf1cac32a5ce1b52ffd0f59b40598473d9a5dbe30253b56f483e7afd41c2ad5a566ff16696be600d62313cef4e08c16dcda0c1087299517b4e403f66d28b3324b8ca8ab1f49d19b5bef1f7316fc4b37307f0583d3e8911239c2aa45e18da90ce3d5bba5942528f36643841f9cc057a9353b9b4217fd922d890ac4755e6a1da77c21dd8b8a64582f0478a86c28d67b2157d691cd4b71499cd3aa0d0903d40a25e3759a9893664f6897db0aaf5078e7ccafd23e827174535963dd26163a65fcc90769e58682040fe928d0bf9c497b43569fb89d80f03285d0180c6564322a369ee9c88bd55567327eeee32d7f163e3b220d19e856a24d79f14fbb14faf3ad3b4ee43060f734a860e7d6531b87e2010d7c3f06a375be6efb7d9d26346ce975489ed1a323b01794b000d3971d261ee6f6e95ffa65667b23f0f632288206c7be59f8004bb284be7980e63cb19060db96b5127b59b8d23e3c226047925955c74c038a443aa737b43c6952580a990ae26eb4420695e6c4f4716d281cbab622b5d0d1a121a6dd5f3a021b37b407b68c304edecf2c1c027976b2154d5d6d820ae6819b19af06ac599178ae25e05d05af4ec49650fb4aa9a8ad3eaec6a760b54d61234632a39e804d25383df0e1287f3a021e3550aef409238c03ccae04e40ce5dba89a8350bc6c9bd713bb2144af607f4b17aafa85f06171bad74ff80863c66f068c49cfc6f952de4e955be59868d21763b1c4b4f428619b21539954d388c8ab693a08b41ebd05eda9d9669cf1f5d1833a4fba58928d62c142890d57d77114ce138f3bbac6555bcbffc49f392d92c897ebb1f3fa131cd35ffaa232378914d89954bff9f3096ef0edab6e1b74fc3e678877c2d80d146adb449219600d044e02e25331b80622e310a711ac7024e5b8e4077e11036944efa76e5b54f809b578de28b9f413b99f69b6a7ad64bb4163ed086085611534c725c0be8c1377904d8c35cd80abaaff74e73cffc4d5f14c0521b360375e4724f6ff01e8b5d9cb580cf9c48445f4b2da22265a3b899c89c1a6ba94850b313ddea7410e3c3c94b2ec4f511abf58f5a699d6782b9b39cd2243a68c4d19487444cef12ac3cd1433cc46f4e0d01038d6a0670a3334cfee5281c6af543ed5d78e1674b1eaf073a7a65cad2939df6f1fb812eac0513746b9ea35459d6b19bd172f680cf86a385b9d9534ce01343987bf6945fa2cd2326f93932ad992cb0d380a9ff98a29ea6203a7db29ea7ec1a0a7a990cf055fe4839ef75185280d4691ac9a5ad28bdd23e15421f2f30404c46f89cf887bcf14aae3fcae1406569bd19144034d7712a9eb2eaa5d844fbdc58a23a90414c18c219a210200885a04ad966d5beacfbc2280b4f0225d650f03b02c2abdc273209d6d183b7373e2b4024e9708d7abc0cf32ab6791571a433fb8e50f524e0f29e51af201a7370794708d41d8a080b48a447ee08d7ed78673ffacbe2925107b1916ab74937dc0f1cf4f945b4caa94207256c21a2ffb0fc87157d43488dc393dbbe320ead1960c4a8d0b2784e892472b254bbf078e278eea6a031e20556fe615321ba268bd59bfbeb0c8011f8f61d31a22f58c81d566f063f41daccf409a814a6a7d6fcd597423d22f2710710e8128faff568b4e44d24398948bd8142d1c25e83e2d97a43522b914939c6711635544417929e0296bc5fa8529c569a76562d2af2ea212591937f8955aa7846774841762017c7e93076573cc210cc598920caabc1e3cc2d20318c7ed52c59b213980cf9716ace8ae28b5b290a270b83a0523edb5324d4f1ff4eafbd20c1d02ead83d80fa27c1184f330501e8eb6e60715ac16bf2ace4180d9bdc4fd38beba370960ddb9e1b174324a723fb08d3b92987ef3e479269dd97257ae50cc76b780c4ac528d7a4a301254003590e3b7b7304a2631a582010322ff74caa2f484576017217767048c9aed2a8806ea4f2bf2bb343989a5cdc7915a15678f188b699e1448bce5eeccdb471f461c7a64cfd1d762b3fc0e0a2a4465a0636bd5bcdc9dd5b7b99b3c7464464e221b918dbbb38bfe7ccc76207fbc2e93ca3dba40befc76ac0b99ace242c6c2ff914de27d1facb59da70d4d4313075b590daef329a0e1138d50d70fdeb56061ab15b2b5441f40d79b7bcba8e01f1c4c216fe6e27cb2c3f9e1924b8111817a2631fd202bb18227b6434142561e0fd46cbd4d8c29c871c78e4020229f8509aaa0726559b9b71aa9836deefa1261d48367ba1d43b4aee375a7179a7118dbb29520d3076583288d1a8a0d845869980421d4766bdcc9e07fdbfcee49175912d0089162ccc4426a8508358ac4b3db85405f2fbc88b0390e3eb5dad18638b7fb889ab451ce2f36c0526ab166a5c87b77512f4281b7b2eda06b3274e9ddee79eafd122d25d0069195a810c32903d37ad9420c281be4b489c8110997009aaa5b04453406099575349f8a31326ea608efa60c6f2611d1a23137a279ee01777136f1250609ba4fa60fa431be9bf86a2d5d517a6c5a1f1e094482861d257c0d9cdeb8a89ba785ad8198072c3b8c74746dd94d203e83e70decd2fccc66904c6d2e421e6533d01643f01ae78a6136136f9b21b259c52b1549d50d7eb34bc5a96551a1738420f9f2c337c574207cb66cb271b0b6bf4e42b18ae907e25a1a3545eb57f44f14290f853be812b14fe51739004437876a1c81f1dd2b29b22cedd2187fae870b7b92134490a829dbe0ff2a5c564c949372592a089640917157d8363044b098a888974cbd095d6ef7068b7792f7a6089b64e51683dbbb11b89fc645b21d24af18e00a18211ecb4bca7d17df76db2ba45aff38245a8583deb65aafcf07189f27eae6adcdc8b8daaf3b8d7495bc6e35b69314a76c65e261cd0b73b092b49b3a999f710cabce4aed6f13fedd1858862b81e0d7d7fe3eb47bfd9a3bd43233e1219605af45e3416e9e7546802f6e5c822dc0fa1785412150b1bea64bf3a0181d35a6375185e45ee3f9c2943fdbac5b311d8c9ccb1efb11f9532caaa54a31b9cb159255894ad8b179914888803eb23b4f438e127902f5ae15c15c7b9c357efc5665a182b452641630df82745d068e2c4edcb37b30b6aa8bf36a5285023c8461c1003144c4a366ef6abcb85ebb26e78ed545a4217a6906d9f94e9a5b3def770950be23d4cc1fe39603a5fecec9c917d630d2bd65c2e0b9a6fcfdec444ef59bb6974fadbcbd0640c63e6455ff971f1302432b9c45165f84310f2a4e0e3152e84b8749befeec31ff0c6d887ac3c99345992427e3af5e2dc0f8bbd099c63e768cb30f1d6dcb76ab0dc219cae387595a803504fa86e99b6ddaa4cb40c7a7e835005de5dcd169ac9f195134d4f6c2abc25c7775486550429b895333cbc0c2acef64db533afcb9dbf5a6e8b0f468edf0aa8831330dcefbd34ce10c3fe93854590913db8910cc9b8ae7e4b6d969ca1de391695c19f24957d229c3e077e8adcae77f116079a821d28f2a2e001790397d0e4631e5b6b6c23ab79356071713406b03a00e9c3ea8c9a9f3aae9871480bc70560d212f43bbe3133e51ddee9a1f288bc933d6fa703cc0522297dcd75630e492422596790ca8d2dbba92d6728232cc9dd907daf329663f20165c3c1bc3292ac86670e01fcfc22c5d22830127ea694d2d4be6a4285ae7b3ece0dab7524c94f569372a9b90350099622427ef161d3e6ab15229581be1aecf2624732b6f34e1584886abae127cb8aa9603bac768bed22eb2486ba87fb80a0247c23c6c28c67eb8307c4d570a23857657acd120ee8f76f001f77f4431df812e7e01529a5977b439b4ff70c740ed0d8bf07ef4af427a027953401a7ed6d3a0017b97d504d740426308527703fee5a82e6da4709c778bf1a8ad708ed03eb57f300ec433a3c7a2fe2222073f35234eb9b92b08c9f2b8da438a5174730b0d5d161e3e274afba983fa7baef2810ae5aa62c64c7895502480f7166a0b229aa1080b822c0c85d22be7a8e1b853c0e31ed32d5f2188b58b8bb91688af1b0c079a00fa1a3b9526572da013d9e85270d5a6915b56ee3699a7b4d55c9206edb8791747200e1cea80b51f21f933ddfbc97def127ae5a9c12a28739bbf80e8078339be751537eb1388eddef9493fae476ae604aa3238ede4aa4598f809975651d12a17caf74d348daa38fe3eade103caa8926312a3eaacae30aac62b57a7c88baae971a3666bd5c25f26f9ab5146e3af9229127f15f124fcd5b15dc15f9dc9945e91ef575709545ddbd07ac2a809a7bff7636a573673276a00bae25065e5aa1b3c7af94608d7901d1b2f6a3a3f27bcd3e5ac24f98ea295edf73401138fe9b98e228f0f7d503ffd6c646e0e851027292d5935384daea04e3b972ffd2531c31b44ce28401d410af0e235be6544f7938f834ef1c3a9a3c10b39f6571e9b9bfb38eb9d3e89f0181446826559c91a2cf168d59c18a3926eb75f8d2967e6c59d164b7df78d53e5348a79f72d38fc002caa6e63bb3d65a1c15205ce1d12b2a3e0deeb7c2988da583a074b05013aded003864e1ff4e2bb1070b341436d5fc53a40c5809be5936a367121226218cf6c6764dc6aa0e57a12fec1bb812f7faeab96a0e8d3b60b437912a025a31a759a5d8fb02e5383779febd383ad946dccc6cf63e34b1d9b29dd188dd9a8a1a04012838f6b860ef4422ff47e1d9176073676231ad9786bd465cdbf64d111f2cfc2d2faf43021605b72f5edfdd45180faf7ba964128a99eaa5fd6aa4c34661e2dbb1f9c29b038f74fdda1881c5a57f89453e26402ec180b86bac1c660e9d2fbe7aa239213a18bd1ce68172bc4e9d2099229b62b4ef7744cbcbf45f7d9d0d6b30f5e8f13af29e49398b6e9db65cbdb80551296bdcdb66c1b67cf83ad6fe7578a5871b1dda1f03108dd60f610596755d68b7c1999e22e02f629048c5b8d20fdec1930bc80582f369ff282bf8cadd9568726da5dba14a102883ee8b299a6347f69760b7d6e7ec893f31a3d43a0175365c260db2677c39ddace4ea1e6313138d58b52cfa06a7445b15bd2846eb9ae3aa63bebb058dc3b4508787a428c0166d0c8f5b4e39452c368b98ae0ca638acdfa35242e061efa7cbf058558bcf983ab8aa0bf681e43c291208fd66335cd2fe44d5bc96a1a48df6dfd8814f16447bdbebda5356cf813730287ef0e4d7d71aedff1bbd90c27ac90560583e890af5da40a5aee6cf7a92b930296c5ee46d43b902007d73a18e021104e4eb893a64f8c61e511c029d5df8834d1beec8256cfa0f59561c5b39a09e1590a6463f0cc9a24dc16231b6d4b72edb3b7b58caf73870c6453d412d2fa2b79f3a5b14469eed4d05a2b972c41a9f190ab0d9804f077f8fcaf93997e6ab020c04be7d7750e4d2dcabd08db6000f810b9d0546e926ba9a7ec03cc6f410a9315e8e87ffedc37e50959630bc17e957ae78cf5580e2b50453500a610df22257f82a730b9e092755548c0fb12a4dc2d16c35b0e1069e5bff3c958c8f488642a37c4e0ec043b98bc2705af87d058de4204385710dceae18d8744a3c3d1b8d16307a9c1708cc5a062ece1b8c386951bccd2199f235057a34d38bd85f8eedc289da183cab0b0514aa84b8924e54cca0b96c6d038fe4d4b02c9e31cffd3b0342546cf7b6d09ccc2a4c5a4ae495e3acbc8b722b448224fd5a64ae7650f3db694aee0916794f385df26ed8c04f038334766a703e20373f2276bbb4dadbb520d9bcf68ef398ee062c6893968480dc455d45c69624275c1fe50d485ca6d0357a2a9097344d2fcaf2de14a3fbf7217cd588c3fecd7bbd0f771356fea4a431b90882b97bfe1817ce3836c17af2b8129b36544774c130ec3c84f15eaa5298b03c764274abb97a281b3915c9fcd7662c219596fc8d3659e38c656097e999aa3eca628fce0fccbdb59c9084e6d6f86a35a1bf5103be7242cebb87299f0254c12322b47b74e817957afd46c1e50874aa570e6c76f47fe787800a09eff3e8b4b7f56ff634f9ba9de0a8798855324e763ba7cdb051baaec4442ac2099c8f36f7ba7707e6e17778955421fa6688bebadc42793a0b2e4ac02f5b6f365ad7a34474ff9bad665d838735d6a2448cd0f6dc40824497c998685bf38fd7e2962794202e8fb794d5a0c8f79e02e6a0a2cdd706ac37f7a0e797947523f23499cc80fc0e71c371d80042955ee1b9f2047cd7af69d44345774bd7c0d693c838b0f899c7e50747a0b29a14900da91b09a7d431e691fa5a5273567ab1226774a09382bdaf2f15348d36fdd38d4e17d75dd89f6c7287b3de5df807b8fda2edf408eb2b716168f05612a09352db5fd15ca9cadc90a37ad38bc9042a331f0ee4de3d43869035a9d2ee66016557c8c221300e8b913c08776e661f98af236568c745eb6a8050268dfee2d124724eff63a071c60bf378ef7024fb54b4543138b2654e178effab3bae4b188cce01cb5b4f2331b8e3e697c3aa6521a0683bc70b33b1685fdf84e679894eec9b3fd450c62c1dc0560dcfb2e0e5027141ad1ba2584b7d95567e0e6cfd8b454d097f1bfd63b1789f2121d981e338e975622961eea474682896cf010a0a584c4cf66192c37ee3c667ca18bb38c7b909ed7c07689d2a1577f43c23d42ee8b12818421943730fbd9edd234261ec9aae0e41ae2c5fdcfc5b5a0cae37d8cd6bb46408df3756884468aed7059dd3cca5d8195cc56a00901555eca96562b2ea5390e1f578baeb8cafc06373166b90fc1fd2bf7bd97deaab1f2742fabb9f039d6ea4572d8577c7aa4bb9632f1a4ca68dfa1ace30a015fadfc69104cf289b4da4ed3a58a7a3c3172ba73fcdfd6c6c60d01a3c1f093219fee9cf8b5b43f874aa72a485b62e44e0908dcd8beee845c37e31265be3a09afd0620d2621c2c78aa8f1903d1660dedb37bd6a84efc91d2e51dcf3954d31b961f3f204a8fe5e9c564b9b417d215a458a0ec496d714d0267a521c67f79344c8f3f4da26fc429f0a10bf32627adc467706e173dccc01a67f043670d5a4e9fa42b9bf53fc22d92a59512d1ae9badf891e08c401077316d2676947ec6c40a48f0a6638485e00d2c2d630a748aa253cb5a3bf965500eb3e423b48da05f8f6be52e99134e1a5193b2003536055448c4e053a10b911acc9243c6750411ee095c66c400c7d547dabcb418395a219e600ce2008993133606a46e8580e8cabb7b43c649acfe7418d7ea7b2ead224dfcbedae4f8d77f0aa0d9a4b8fcb60fad924edb1e5e8d68422b63833228aba72ca8f46ee180807c65e163063f6f16b18ea5223ca6ab3e3e2313033d4d047dc6f0ec51c634971863921b3969acf99e5164f363c26fc057e3350806b105a4133004f29fd66dba18f0a8665610d8028b2be583655b2f343a1c4d6623b397588548d40f87eb4cefd6d9567c2c1e1196b994af6522985b51247e4e58b3f80334230b1b234fb160b2845fe786dc54fa28034acc1139650cde932ce6e32004631d06917c95abdd6496529564585b31d0560226474009f96c625d85dcc5b551c0cb397e4332e69ae4faf76f2b25dac300bb46180050a97c9826e16a1abd9322d368b96bf54d3aed0bbc2440c866f7b86066b630cf35fcfba657a69489eea2d3a2bd10499e017ca5d426bfda7bc16846306c657604ea7cfa0ce0c83c7a5c6533f95821030e94984190b019f5b502826e1ae5428f50bbd324a9337dfc8ee8002564d810e0e3dcd89fb66ab3e5c23012b95cd42dfacea0a1ac1641ce14ea8c3c6f229011362614e1667603011c3a0de7a9ed665681017699a4e180dbec59e35736e3daa93e33c38c65c2efa086cd9ab284d29ed1e1c09f5fa08e5bd90efab856535c9c40a4cd979331e9c5a34ce6570e447c3c4a09f4bd2a133c2eaee88225bc0bbd7af8f2d4dd5ba8864542d7532452f52c5ea721246580619dd56bc0d8e9a3f21891d61cd7fc7453736f92e08cae8d0a9277c01e05e8f4da831478c5144819ecd0d225028b60a932c0812fb41de5e3376699507d8bb68c5332fa3376048db008156050c9990e2c7bc8014de04a84de8b6418716fcb053ef3d33147ac7041c737dc42e4a95d4a32ddbbe982882f51dc59139a6e9f6d49038cf00249e0fadb45061cc3cab341ba2fcf1ff9e68a3dab6edd9c005c11b393860efd206b9fb7c7ef4431a7f52615bebced4e61f40d22cc7d292661cd0640a9833f19d701020ca7c9b8e47178688b735dc8b0f837096e0fc0078f508cd833c4d7409668188857f9f50efcbd084b0eb86717ed99017819049ecb57a12cb9610820c0b85084ea380756c77a13b0cd41355e632a639a2a77276b250c3ab1f023a363e7b7eba11d19afe0f436c8fcc1f149111f77a9fb5533d57fb32bcca6f5967c7b33123409afd84a78678027b5a00da9ded76e04582ffc1e297942200b751769d8db0d95e2ef4b1997356309664dec9a9c62ece9ccc0bc86fbb7a5606bc24a2491f62ab218ef99ed3016b8aa053596253ce26eec46a5d08024806bb4f9c9f0ce218911aeee9ad512545d2d5b45d0946a18774b54d11cd6c88ad61e3565bfd2ea67d0440badf37fc96c6dff521bf5459eefa1a18a14cc266c00b41685ba97f0bb84f70995d68dd863cd70b45cc862528568d08c7bf3613ccb6c3c9e4b1efaaa5a0b7a3ab0d644d58db643c8c30056ae3b9e9bad5d4134a4c8e72bbcc0dd9de142b65e0e5e2d2413f9954574c46527eb1f18508e2e9fc97559f9a50de34d76f9aea0fb8c429eea868d939013b3bbed742d7e986b1ae9ead9b8e3339d8d2c72719138a9eca084f37c27924574040b2fefbf3605d6e83cf236d485addcb5cc0c438ab11cb3fa14391e64cc478ac50a10645710e624fe1c1a87e4f6e38d373b2b12f2de3c3c259617656e3d88ee841254bd7a13e8c8ba221c68a832e38e7bbbdeebaa254ada09b230c16c0d16d69696300a6cc65d08450199ed2888c35348c5f44d2060fdd31f26ed3492fc4f5ecaa3968900fc8c4b5d143033ce6b6a0bd3e633c5cec06c040784e48a2c60c09e83755c651b5d449ddd24ac556ba7425f71e4b97725b8bc383574daa49ba0e2d3843db1f19b721bd7470a5ad50c43d75c5915a3a9afacc846225933b9ed51995956f706257bf66ada40ffaec3743e24c2b8362563cdef3b2b0a06c2194ce5f450ed6342d840504b77a0c8db2543b6f8a7b5aea94334e74b38af4796c1f314cff007830ffd5430f21d9b6b09c3571aac329712cce6ff37d2549e38f2846c48510ed953b51ad436d643e8e4b7caba37d7ad05620c83bcfe189b2dd9193e70768598baee3ac7dcd11c5c823086054a28e5953122524439eb56d914e31e755c946fdc0a9c18e52ca8d9d2c9553aa0ed2b8da2bd37b0456b6cb8410b522123996a9ac660d74367ee4f0414c34ccf2274e5344d12ff63c0a2825d87a2b1d45743311797e66c8df20449478c79ffa02a7d61eeeb6255b81b1af6292f5a7e11a94254157ac9054660529fe828af7eb07e4755c5f10fdac7a8dca19619f4cc57a3b3f33d66e9fa2c5a994251abcfbdf2885a0ddc2a33057d90a5810852615c033ee50806b060b3191b9dccda2c2937490345a9093c94a142cc1932e7143053e2ca8559a98453dd2b4950e318b9ec8d9fcac81d50e3f60355203edf601b4d3bd7064c68a50f462a10cf3454e23ce69dc4cc9171a558484c45e0a3d331d3693462984e10404876db807889fc50c03cd5cb02eff49d9c124142434df0c245f8921c11197db8991b1f856957f81314241c621b8838e5a63ff756144bf5a37690ba2a65c827a987772cae00b9a58c88700895399fcc4d6a0e008d6001307566b95b9409f1b38729305a4b4333180c3835064c0184a04be71b03847e8a0cca476ac44706f7b22b50c25b7844972b667d9205f59d2cd32f24eda9a2f3e18b9641b445ca6515a10cf1fe1769931bf2f949d910973b7c2cf08a98c621a0ba11aff63962efba031d98b2d824bec792eeb0a6231665ef7fef579ae8c660094f867e7c4b03679cb54350e6a70449097491d18d301f48c88ba49110ca9a990fc8880f5bcb4bf6ad52d4d454d40ea653a4f546a430635ba820a4d5f1216b48ecddfc4e14788850469c3dae4c165a687e8890a8ecc9d9b4d94ab69535fd5c50f9d45e8d6af8f3c44aec8db784554c1671a1999d7cfaaae25a1457b30d3c5e29c62930189b20714034c30e17ac79b9cfa1b8998e9bf02e000ae68386cdc399f3f0cf7684f68b538ddb615272fdcdebd3c1b525408dd0debab19cefa39a40416a9540605cb163752e11fbb5c4f9b3079dedd8e6167ddcbf250d419a0be4896762d36e08fca83ded22c908704ab082bd7f54e1aa65e7aa5087f3b3146ca4095ee5739fca11f8da17da1c8329c9b870056df38b940252715679280013111c6754e23670197979503879518ccc76034c0e5f49ad256e3c0b18442714b63a3e476c906aa2fde4d02a18657bb8c8e64d93181a39a3930ce71bb61c928a41340160d1f0ddc527b166e493ba5277882dce480ad790b54742b2de4d493c0a5227ffa6809e86cb860da8a68bc5d0a2645bab35a57973f9b51852977f55b64733c28d88459b706d1aaa50aee66126ae0b90098132930bb3eee3479b79bb00ad16500770095f371973d268b89f9f9bd1720f95a336ef71fa88fb3e6e5a8d4bc9698904dd5a0fc482d874282b10f7557d40da26f86506074248cd7baa2a65ab954bb286381c0d811d84f02d32cf1505d3c54961c529334276a33f8ed34b01c6a2d7b27349cb087af753a73cdd8be70927e64e3f445283a822957a1490bc46380c363e2e5932f071d4ee4372edf535fbe64c364a4b99de31f8ff88653b31536136d0af15733ffe462f8c61b2292d1a5dd75812f188c9926dab01ef12882a9a1bbdf0b8871488e9ea391081b045c41686216eea40c1675d09a7c228ce501a1134e230bdac21e9b8c898580799b41ead3480ec54a3878f7833612e33ed0cf6941618616838510ae96f4bee10cf98e5c8332c3fe5d11d3d8ce472a250ecc23de7a732405f5a20a52d9ce8da83ce8505b52e13002a80b3401393e124cd9850a7db9624455dc2f13030ae1dafd513bc7d8d5fba730bc4b2b961fc6621f0f37b85b9e9c54ee2cf431a694d00c0a32a4a3ee7f405e6a66f972978ea3548f9b8c65c7aab890658f3c165279d03f80ec6d6995e318030dd9c0c3ec304a62a6fb16cf893aefc1a88a49f4dc1e398398e62df630e4c264bd2dc6e1736f1cf8b1830769d5f108b00f30f8354cff293b2b9ac5de3faa52a454d2bfa659d0b27122807f21d59e7153a4e61e64582f4c7c0efd21a4483a17bc44b3c0e0baf1fa8063642819d3ea1e89385b5eabbf327378ce32885a54e8cae539d8efcf797e3e372f67fbf9ce3d106d3e42d8e1610aff8d05470e5a8b53db88ea00737a27adb290cf5962c9909ffe1f29c25665ea55188faa4424cd6ade4c372b77e33a0eacec6d0adc934e6c26f1a5398b5700f3112199589d004e1f02c83da5b4c5a275ad9ed0785cdbd74e1c68a2213a756523e6cd14acaa06a2ca16ce4deb2402017d7fd244af980640354d8640515718d6d44b0301ed7705e92de34fd948e1fb1a64c8a247d99f4d48d94fa039ad5971e94a7c518ce7a3c49aa09458d47be7fd05ddb720d5ddccd8d11777a73397adf62e9637a2048e518ca38cd16450fda553ab85043503c2434d2985e343114d19fbcc60fe549659a0f6be730d578d8f1a70c8892b85b837b2a0af3efa18b2128c771c437e8be76d89e0420eb2a39dfe8f65056b6bf4be0eb73e891458f3bf6582056bf33d2e11b34bf5e1b59a81bf94615651cf37947d1653effbc93e969feb588ddb7950971833c27f4e46590639130208def54a13b3d5b2c90af5bfabc9867313ef235ca431793abf224f62643d8baf613dfef1b77c18705d2cf08cb8aff53d062b1ee2dfe6019327e462f5f5f82d117013dd7f06ea39ab43ac661eb636e01fe8c6e76ed05f78baaa3abf81cccbf2f6ad045b61bf0fff5c8ca9050a61456b85e0063fdca2ae740852851d41be60b1552a087c416136ccaadfcb822fdebc35f758682bdeb6782290b9bdb66356c41d7e376d0caddb1c02eb1bc062a375cc580f861a901e2c008b4bfc94da4e07e0f6018d05a2a13ee23657062a5ae5142ad80f2ad2f60fbcc9ed9064c27e603dfd95cf472e86c54572058f5959810ffa6f0f11cc8d5cedc7bfb0ac7f33a894880bd8cf71c3684004c25548434a5b048f2064e690aa6fd9b33db9c3e1db1f2ca666ba0f0f09111164c0e2ea3fbf96ab67a9ec85681088402acfdd24226b5a6513f80bdbe46ae3769725d717d709ccbd79c8d3fc574e49dcf655b5bc22423c11e43d96179bd4c92b71c3d73d0b4863c50158d6e32cb8c9a98f0ff6dde7a4d1b5bb74b3796f3ab40634fc689b0670e1704da724e841dbffe24ced8e0ea8a5b7b37b0018db1d3f62ccaf5cf85f15509cdbd2eb3d4ecf427f0d248d0e3d55e7841fe4468a2a861fd8d670b7aad02bddba313c751ac1f711c3f36ecfa95585df2976fac1d1a4152374a26d16ee926ee4bf44ccf79cd419749e46612f95d26b37ce16274983bb2445f3d05dacb2e55b31f15ca2adfa8780c330ecb1eaccc86f9097d48757cf8fc1e74d57c71fd3339bc7a3498fa0c8d860d790421116c8fe23741de99dd6adfa13d8080e6a80ef989d206da324814b1bce0f2a832a839091a8e28a863c9aed42c61dea24aecf24f629e5953afe941bb63898631d2917caeed6b602ca0cc72c940d5e5f5985d699d183bc699f0bcd47e95be9a9aaed60666ee7aded001a1cedc89ac8bd832a7fa88f1175ec9f5426658c53fb83ca683f1d2dd072f50aac4bd02e36e01be754cce1c35b82b188c801f27ce8b084b5d1cc3ea0c2721349e8048903bd002e55d5c14e5aa30d12b77334c6296aebc961fc9ba5aee191df2d0bc1f6762435ceacd3ba8ac97f008a311793dc340127501298095e8d491cdd3e5b16a6bde1cef59f10c08e6a1659bfc20eff5576ac220cca6b1adaa6b308b8d896f1f444ba352913c1fca946444c0497602bed783c7896797fadb77dbe63f3fc79c73389e6d151c28aacf333607eff31653a45d80fc4b01d237284d9feffd5c6c2d9f52af13d8a946df770cafd0bbf357f442001f0032e26650d800ca172a81597c1d6ffdcfeb3a8ac0c4928fa59919015aac567e84ff9a09affba2d03aad57af86b30a885e6de48a115d94dcb6e3772f51af80022f2570459023f41b680b4bc2bfbd75cc2ef72b7582cbf30ce292b18f1c0d0a986a38f0a4545d4a1ce1c51c855b6b0abbd517a1b84845ca93432f828d5579c7253fe8194c6f5125cc265b6bf686055ec69b652dc21ace691e21c6c0b609a81573f5e80916cce7e33fd6ef2cc84c7edb5b1a3cecc3875b201a4118f644798fc77a820ad121e8b86c233b3b36c33664854537f860333556e53af7dd6187626df8e79cf9c92eeb1e812ba8483cf4ea7b303cfd6c3de93372d43b0b68ae917539f71bfa2000bf317addbb07fe4358f8bd671ad67c4c88e8afb0f6e8904da54610647629d99772ffd3e1a54a0828ec59cb8a8e03818c326199b3434f87e1e0b220e9cfeca3ecea7db7f7f52834659cb70a996f05e59b36251f4987eb7d9d0b8337337d4f1aebe4e24584eef7a7194863e897a12fb75497cdf9700ed982fd6890009140d9812c339721c3119a12ca871c4d75ce907a20b71ef7f908a67108d338dc8abb92205fe56809bd848aa91fa0d4683cae4b486eff0a71a77271a94b4cbea5067872e914cbc30df47ca94bcbc634b317f457126ec8992416ebd05d690a20ccc7ae69e30f05f4c50158a59b62fd8f1135ac97a5aa2c649b6e44031149b240c0200becf2fc24072891ccdb3cbd028ff77ab8b25b39c5c4ce03f9c9558ce7be94f66c96ca6366362463c9159c3464ff9ae2cb340dadde2e69054cdacc7a2107c9787ea8566567c519b2bda9d6e0b38c35a84cf34cd2c15bc35d6e4f2ecf8545df0f1132807626675049e42358a2bb8f8ce20e36c22bc99451124493c5b22efae7bb27033c4c19703de65535cbb94d67ac1c98df5cd5860d8cb9dea926266201a926585651a2550ef61aa1942e1229761590f6ed1d512579c2152981cb370f83870358e29ed8a929c30c1db300702c4be41b5a4c312f2c409ec3022bf340579a6d106fd391945c31fff9e2eb9c16dfca2ad1a0824769a5243d3bb0bd2745703effa8468bd18cdbfdc7fadd29611de5d9a23f8e9834eb19ba6c9986eac9d2e9bdad24cac74d368d2cad8c1ec2ed460185a5d685a8213c1ca1ed60986c7c71c32dce09cb33003a67aaa8adadd271acb0e4f36def85cbb0c9fd981c1cc7d71bcd4c6070f8ab3d43d82cb2c7f249eef7234078bbb50a6c7d1ead2e132cb8a809df6253746b9d4e53bd6d67e3afd9c871dde09c419afac1bb2c56e5cc905f35250705b5c60ff643c07ecc7bb200b5247713840bff430fd9f0f8a514b07d222e1a6779a611ab3b6f903fc37fcd976ff1744324eb92dee86f500a0258052c09117b20c3d17033a303212e0ba408a0ae64d051c60a4ff0347d2ec34f482d2d640d3e53d02a0b083da623116190a11e74ee6b33e8ea03d7781417c79a1ab33a1513177a26ffb9a29c2ca7fb7c2c7a268f3e6631b7295b34bbf4bc2c8ff3c9c388ebb6f7e2e90861ee0c7d9762f20d3ae3267ed450043a93e008fd4871917dd31e318b0e1a7389f3a0aadef41eabb3c8e8fdea9068174b8b1db4eece536d1279d29e0554830cf0237bc615bf24cfabde1f63637fe73268e711ca22db92c05c69299416a3aab455b8289216ab9a5702c5d4753d5e42c65499dcc0f94baa4673af1f976d2fe9a981594f0c54289339eb6073c8acd825f90f0026179eb9d2e87e5eb873c1b22fb48d60bc412623aad5420c14bfc777d2c575d67442865212249cdeee479a27c94a177829a02be159909f9396d815eb89636d403710336be30ca3ae98c8c70c81f61925941c67ad6bcc8f45915a642825838a909e2b2079c1287007573f4e10edfdca9218103630cc652be3918c81e5485864d892e68bfa43253737a18bf80d841d434f22d0f9ccfee00995893a27521b7631fb7927fbee078d2d379323882cb7f0413ca71414e58f44fee1d9263a8fff21501cf39256d2e334eb134155d319ea4c62384ed70c80e2b5fb5c3ce3825329a50413149f098634d0ef7b9d4e1f0a8fa6340ddf2208b73836d7e1083c988850d837e3f6d07215cfa92609783fbac9af58f4901295c0531ad7484cc1185666244d5e74b00ac8a9e531b5b464c4a63bafc59d200a2608aed01750ce909a686112f064df11728c8800d5e8a04f4f1b1b2713deffc9b9c2cdc750f105b561127b275dcbdd43e9d28b846e2d425046519db3bfda6fce3d8a63e4ae372b09ef55588b8745a38df39d29ac3b2250f9ea227bbd063f5c83b7e598a29d1b5ddce3b3f99ff27667c03bc18fb87357ea3f1dd1ec4226e68947b50824d256b9cee73a52807f8c49c1e7130295a415fc07d3260d8f904e8a3a766f6a0680bee233fbb76a6d67ce202ea7fa6776f39bc94d8314144b72111e5e6a19af97748098c099263c03412573a8e4436607297714f07e91edacada66eb418afec0b425f4c8be864ffa16579527eeb5accf39176402fb3a301f95f86279ee699adf5a39ff9af596ccfe00184038f7d40c6133c656ecbe2afa8b7de8a3a53bf2c6931bbd103ca134e4599f496e70deea4ccb73bb677ec62e07c42c42d7652e09b60035fb966252538702277b8d9ad5926ab0d411b4b75c00de7a977a239c96147d04f6284bb8c2f5418942d6d7d172c879e63501fe0a0ae8bb4e2273a0ddedab9e5c56097650548a854c43eb8d581cc95b18952b53ec7c302adf14b86c7b6e218b1e9642d4d4db5fd2c71d861548b99654bc47a0d36f342d381854f45aa54a8b21913aeebced2bc3b6f401238e98651c2ff0d8ac305aa16b2eec9f7450e8e80c826165e9939f2f7497d6ea0b9c1fba6cc2814a8bed139c7de222f9cfc69531989ef7283320bbc0e1184cdee61b3e44d177b574787179834793f5494a11b3deb6de7d1a85e67eb163d43ed67780b9848e14f7f4d22479ea244b5edfce56d94468dff6f724341c3511124881b90102a5b6ddf40d24785f34439b4673a75a35b39a311840ecde8372b0607d878f5b9a04913a6c56402b9adaab505e9ada39a6d2590b0d9e3b3e0c99daa8516728a8cc56d63a53df0e761b9f73697d8e4767752b554faa0ed39c8b259b62db8b8ab17d858e1baf2335ed9b628125c8061947dc98b365705ff09f31678461e7524f7c2d754ca6b154bbef0eeb06e8938e7a8696406688ed4d4ba4e95668bdca8edcbe024f91248a99049dc60f8f3ee5845f025c546f642c7e3149a5314479b78c523848ef28fbba20ab31b0a1463740aa572c7136565e88cebe02efffb7bcc07d7001583c2147ed6279ae0cf5c9c07185ff3ec13e2968a340820576eb06518cd1b95e97cc42f7c76df709dc915b5c701b7d14f923b810da605cafacc030ebc57c91871bb58baefbe585664802977bc3bd728cfbd12808af63f6b54fa22a394cf82b90d0d2a6c3839c6fbfdf96ff65f44495524a88067c42aa83a3d4a8b22669e76216a367e1a783bc3e27b1a76353815c7a3b79ae375c9c256a5f638e604aaea5e523f00904b10aa3f08a8db85f2458010ae7dca799cc62c8c2ff2a28d642d3b8aa264aca9d60e66638039b4d148f9e1aa55ec2175168f8750435ca82e25fe4aa368c063a80fb64781f0b8290d801cee47833bd8687eeb281b3e1cadf0dcb408ac4e7d5417ea585266d54a8c154fd3a757001412cce3b41e30b50f3be805a6a4ef7b7beef928fdc1d57b70e5386da46ae0566755986f5205445025762dc9316e61ff27e6218e977c5a002f2eb5f3257375036628a5a5d19fcf985018962da0a58f3959d2cd5fdb86a9c76d464d49fe2f89eab751118a001efcae3ee993173b0a9c4e1ab1fdf1f94db2aeda80987d991297661e0764306ca18631baad78ba258bafd22ef8c9da6223f33509b3faa183defe70196d0a63213a82c857504acaab4f583434aa255b48f170e439128bde71659c1038e06cf0d007d187c35eb946306c6e01a23124f4b13c3c244c7fe22b549a32056c8138dc1da91566cdb16edec4e89b5312752784440b4ac284f1acd469ded2683d1cc24fc15ad8907da477c8d513fec8496255d15e57144320b81141e4e100189da88c404695fe274ce3d59a44bce268241d44609cc0a944375fa430f01d7d82184a1bf4ebfbd1c8558448a983eaadded4309e3af0ad1aa8a1d697ba40c8dce535de8d74045632bb490719709e170d56d4a8f228a3bf6cf86d53394a04b32bf14c3e6fd6dfc37b2358549ca5950da6a5df24977eed92d633a8a65d8dd9b7b9349e9249077ac9b9d89cf948b66229680057d6a733eb81a79b003e29b4473d4b6d41440fb3cdadeb1ec6dd094bfd40ff79d124dc44d9d2de8850e71dd0a71186e034feeada24f18cb971ebbee6bb86571b182fce7477949d99d4c13f213234104eac89a417e151f8c76701b230b188c5edf3ba6655684ed602fd48688a6ad2911257ddf0a11f4c7a0ed8d7c6cea17d90bfc8db2484724c4e1d3270306de007fd7ff4150bb8566c9fb0d8a339acc97872d6214f1f1bdc430a690691a5d37c0c3ad6175e58908a3f5157a63ef3a00561fbe65209d77c22c86251b63d8ccfc22056bf779e791475653fc00a23cd869ccdbd09017b506a30269d3c45747054fab1b533d5a2405d067dd638486a393d016c0215a0c92b95ee0b5f922be1bfbe1c690a4874f1768848c2834c678fe601bd2c404103fb2d16e517106b24f6f68632ed048a3759d96cb9b5e69f430c4f8d3b8c470b8fce6d89ee359597751afeef9691d873337013905bfb817799346cd79f965b1331ba442ec7725dec09fa79ebcec5dd8b3ecbf86b45173de2e2309af105e61e65c46fefd786e509dbb8e1324b2f2a52b3c81db0b90bb99cec43d7fa14cc346bd5e86791eca286b06606788e5b419f865bdbc003034adcef57ddcc1ebc9e60d785f9e11932dd31ab5f12e7755686bccdceae40f361b192ae4d8a6236329d81ccf08da6c6b576077bb46b18fe7a4e9881dc399db9b067b5f0c352b88b1b18d72375cc7109b1b94e39e534cdb9ffb339d169e8525d089fe24b4ab029f5c8dc6389f7365d8b62bc9a151af2f8624cb49f867347237ec4524ba61b0d4b1b8137e562ba26010c6579a2a6b6d43423374ddc194cb4c4f4417a6629997f939d278cf8b50a70e2ec7ce6611a5a02343b97b20a9e9f95265a11e143206e2b340286086466214a33d3696c905708de1258572ee8c963be41c0ffdd466f487346d70f96dc04c697507f94582953acf757c39c0ad091ade992c928e7af5a04b082226aa94132ddf408f46ce409a89d6222f80f0b992f1a325760971d0d34ba021db74e93e0364311dc8362cf481dea11bb94df28c6040657460ed12414c0ab2b1c4005bb29d50561597edf508f68528d0194f626ba0abac23e8ff4c99be9b5e04830b492f90fbc1f30c23658310ee0631dcf3246391001c080802a2fb90b5ec746aba896b5cacb0877c54cf4eba181820d7a462b75d14069f95ec2073a099168e6c65d3ce45a401e18fe2b297e012a2f570fc9129201f5c60c0764429a9e70fcb5c221c284b78418848e507a13d496613d0fb92a01b1139a87d7000e32f811e63191892275e9db88da31819064740eacf92dc43384b7faf4100e915b60a10274e53525b481343a32a067308a768c8403a24af6236a20b0f714abd5d429d4015cddcde4968adbe03bbd83b24bcac6c1bb84da0ca644a524c1a2c8bf84f6348f6c1b4b8aab3fc090e2cbc19af28c4c910cc957a355fcde16d1fc69adae3f80b3ee27110d7b8f92ee5d57c3f0474d196e4c741a900d978e534fffeaa0148c7e161d861c01267e16f8f8db4668123c1037111db83796ca099bd5c23b6b1b259e728bb45732094084c6e9c39c215698a5ae9d0024f951b2269bbe51535caf0a5a494586d1ec355c39b5e1a6effaf4674fdcb7033f192c02c7be92c76fccd64907150149d392282aca03ee7e18e9aeb2e2a9316f060091336dbfa9732c0938bb60283176bb0443718588cebca75a01018f2ef8f5fe3bad6e0ef1e615d2c54351cfd0e381cb5bee126eafb28b17cec9fd4df71715f78e773cb76659cf7e36f932b2248c39400d03e4597497b4f5fcba8e6465d62ef98bef954a83ac455642dfd2483f849a87e027bd9a0c4499922671f849fcd9965ab26c4e7f91ce0343f1644132fdef6045aedc8788f4a4b86beb12b6fcb226b28631d62ed5b2282a91b28746bdde53fde46404ff7e0d16b10b229eb76e87629a163cce61c79431f6c6125418a31ce8868128899c3ca11a10c3a95d3f626b2ecd9b84656389d99297523ba3a6e3b88e131f62183bb3863c8a6c9613e4e57d15e37e5ef895cfa375a25adb3d2aa9e267f1f108afaeb8bd1181e5dd24ba4cbca85e08640819cbbf80f22b6b0c137683a91baec130c9389e3b70c6196564e6cb6cc220499146566703ca33f02f57e88a0daba4a277396248227caae66578a4c661ab1f076e15750511677a87322f41a130c1488a9771ed842724fd7bb6a7ea88b28fe505b6f9b541d2cf1e1d15df840caaab1ef90e439c86feffac4ab56e1706d4694b02aa9409c8a53a55585e3036429e5162f36894b6456b01c60fb5ac14a3e643dba7f87836db198908c0520d830e044c476bd2a7220d4845d969e029b79844c627b19f19e796ad119615bef1199ca4ad208af303ab0e0a1c3fd6e32af02dd1ea31f70cd9119c50a68d9dfae3ccdbe5cef25965731d88e3cf8c27252a6b0306762f44b3e246d9390991879f9e86aca76e2d6149643e19a7bd2132929e664064e78fcd3289b0a9c9d7bccab51f650439e314773f8bd39a4f1675c170616689b1db98301f60426f538d3931808c7055d573f42cb629cc10a7e1efeb5e27c368bcf85f569e1c226577660faf9950fc67d7670a8669118b0e58049667da96aaeec1a4f45d1831b8c2b573376f7b9c188ebcff5ca36b68cb8e1ab9a923cb22c8daf7ce9e9b72ab75c858d1e8855ba56653775b996cda185f913ab528ad34f79d48f4868ae1e5f3bb7a64e4944731675e1955473fcaa64c9955cf2085ec9ea09bc38a6da4f5682851f4ced52119ad55493a7b1ea4158f81d2310987eeb7b7768e341f70f11e8c76ab466b4f217ec8a2e3425a804566abeb4a50a457f6a7901b8763fc2b7a9985b4276339a69c368cd28cbe60317935c8d08d0050c78d786bea8a5f693de8a6ee45c3112348de1fd844384a5923e5d592d07314253b4168903b5a12ab54fa2c5632ad55df15a25186b3d22a4a071a34ad9a2f9886aa5faea2c1b13fda45bc428ccdb6175204a4d560fc82db6c951914c8c0dc1a6f067182cbe81279c746076832a6da4125625ddd3da6d08dc5f5b8cd55f21b9ee0027740e24c6378ab55a98fff96b845106eb6309c752a82fc14db61735249154d8ffdbd838151bcdfbab51680331f70368c579610359dc10817dd0ba1ffd1ea0b47511a511c530aade67b5b975e17acc4861f382633e86b66e441826b0f9535fadd2461a5bd04744e415be7d4fbf6484b6287b3b3f0b0e7b759bec86256cdcfac27f0e3f0c8c99f271154bfc9f7f30bb99c5b4ab84a689a1bb736ca68357d1efb45debb6ab472ddf70f8a58552689dbbc606a21174bb0ec333d3ba37c5293a0a180841822e7a02ee42a6fe37950b4a6812808dced75fb03a4316b4aa1662c76b9bc7ebc58f73c5e8971bfda96fc4517ad3e70431ad456894d8169fa13216f68063b07aa60f7fdd00ae57ed1eaeb761a3d66e14dab22b0ec84740b3e6be9c9fd8585ab7a046ba7d701fc1b8b962d9826d9788edd3f1e6c66e0b010428bc769d5f44ec9635c4ec3e50a7709560f650b98232646f26f8b071e2c2e5d6d0f211fc3dbae680f098ad31ecfda8c9af63a7fac56286b683cf063f393218e16c43439307a72d0e8ef1c4c1554928fafc17808c0df085e36b1395ca993d8e8a49ec375312aed736669c44a0762e214655b5533579c3b9050b7fd677f36c0b21840271b32d0f73859d5d0442105eb8096bfaaed92cac9fa1a864edbb90e13e02e78525143e16aa9d9dbe6b34c4409ebf381621d9657102aaac57dc99a157a8277cf1bd8b3e877b53df453b386501fe5b153129aac66c33594e0ea4b9b143fff1d15a18b1e825101f3a5ea19144fea60565a8aef0a21806858b1888f9f8970e51f0576035ac6cf5daa6e04827011c130e7c6d2ab9b64d2800bc2f24fd5bfbb549652ce825a07a7172376e9b68a5f6184c38fbdd08bb79f77d9ba5dd6f2ca05cee467a17eaa964a86516120ae17cc5644e031b9d01b71972ac86e2733b90ceb13f44ebf1a31d3da6d32561e6621bb8527306a84ceabec2d4c677088f44eeb0889670aa5957caa560e1285a77b928c08948bf64e99e38a44d5c5e68b41eb8d51416942c392b8a4ee16bc3b55a82add0ba1e542ba89756e6b8dd0459c96ce7c4a3c9f402125e6a5a0891af9d13147d8091414d3e73381c87a9e71882b50d82f1fad299e1308021190a413759ae8906d1866ac037ab268429ded994213ba7ccfdca8e0f64fa7c059229d08a4a6754353edd289c50944f10c2cf23e239501980136299587049547501cb605159be192152f328485c2122db3e95c9cf922c886c56c36a5bb88f3a265427b61112cb701e8939abae234a0ffd8144d75bd7fa1d79646c75a9edbe2ae7182f383a5661236eac4e9c275d9c39d112bf3a740518a879262fd51f10f4f09c92642fb55bf6fe0e969ad459a8c8b441c67c6c0a5310f727d2996fbeaa5afcb358ca90b28b8c16b3231f7564c4f7986807f5817ca39a710a0738de1e6d34c9a2b882be33f3cda92e99be9a5c33d8ca6fe22d1e844fe6c81ca4be143415121a03171c7798dd2edfc756e263b3ec8b54580bc811e192dfbe9dee712be96b21bbf7b021a7db23075399162b853f46b71fea0fbae460ad72541d58e2c8c43ca4b45d44099ed156b408b268657c8540fd50358f6dee29eb90767945dd4b361fc3e33f3d7ba5900e2b121b5f5041f339bd47f85b6631892c8f5b9c008b8892d8ce2baa1bb4271f4b1638a45c9a4fc56d841ca5a4daf09088a07f3a47867462826ef1bb2f08134078ca9586020aa9b09976c720f4eb21f186f3678e850631bd642d8655ddc18252cad4c93d0bba6fda70b89f13594af8c3e62150ae185e3431e5e47d1ab94515401bf16ea1f47f524bd6e57ca27d09f031247732bed1c6e73ca52e9d78ca6f91f6f2df9861c9aa0951aa509c98382b5fca3f9689f2227506da8761f5db19b2f27fff76b89033593a43270c23d3cf9fd5b50c330e22e80cb98a04c4b76548e564432e3ea4cceb1168eec76783473f068bf04b7404e007e34ce22e243b50a27beb65de0888f7b34c46fefcc42c124af8aa735501d1770143535309a38d51d7c9f04a78807311b9e29888d8fa67f6b9cfb677f1140b78dc8f39290c4c85fde57a21f55c32e52d24383c1a5a0008ca6bbb409db3d8f3a24f5e47510f8a5850debe4556553c86408cdd0afd8deae36ba6b4cfbd1e21ce59b976c2988a502b471fc9086a60a4de1b20d9454f999d2feedf108a10b78ee4f512235aef1be4612bfcaf0e207f47a4872a5b78a531c2a4f9b6fd25de80a1826299d29f51d562adbd9ae6574a6403ae42368b28b736c2dc0fc058ddbd0d14ba3a3fbc3fd0b7154801ca206673077d0ff503ac0635ca73aadae3a219d22a2bdaa2bd3042611b000a763069ddd503127c2e111796c40ddc28828047655352b1502b6adf79295b2e834ef98aedf2cc7c3940a367d2dca1750bbde67c806510d4de92a8751e154bc3f66cb9012980dc2a3d08ddb2ec9f64cdb01266771265369629a5fb8951e029796b17aee90c400a45bca5acfc81dfaef0059bf2854512e20206e9d909f777e3051feea592f29734e52346d1cb01f6ca96320f7f1731c53062f02970ad38694ce5d4172aac68c0b71a325aee27cf2ce89e7e83eea5317d8710a8e9484377cbc2fa694437d89995b3a00e5b0561439ca854d1e1d9874798e1b42ba24686736b18078fc0b7aca2a50733c36766cb95f1b348fc5c725de68eb4505d1f20f9048355dc8269249b40bfa2209894c26002f1c6eb4dfc1508b57f8ce97e2678dfbf0e987006d694f1aceae39dd3550bf22298c3d158a6afb5217def62c25729d8e821cee62f6a2c0bf196c983553255095b3b785a6562f70dac5b0e4cbc6c7eb6c33dcd51d5184937c0b43bae77dba97a2d68a54daab3af3d9882d6236c8cad58030a2a6e60ccef1fa4c6c1c47c939ee82ea34d743f83dd959404208c430545f6ab1481424429873190fbf36dd56dc21653804628225d3f2e4433b7e8442bc94d21c2c89e8bf57eefeb099e906ae4eecf329a84d876f8f43fd04d7577647212a7c603407024482df2e1e007e991b4195e4f4148e787e064c0b2a9031d5b802a8607247b204d13a0a880647ac8c8625450d960448fb31945316bb7ff964d7d688fe8ed0435c6009357cf345f9f7e14ca6b0eff3a8c4a2a115216eeb5d47e9b8a430970061f980a57a2f900894e16dd7422bc98d16e731a191d7e4c7f799d4c68befe1a99e0387bf36120539f45c914197cfbcd603721e5de85a36184f3b4e110a5095870580168d67800ca54b5ad1667434246dda18eda4d0042ae720813fd55c4aafc005757e6639be765d28e1664f803ff105fd65438025932992371773da55141946002cffc90544cb539973c7c5328fe46800141a3a6045a01ea1a563597eb7b2f4ff3970604123df1a2fb598ff4126ae4cdcb8c36c4903dd6379cf1c669d9a06d3e3bb6dd3daa45443a85d6673c1065edd75c2152f47f0565d33e5a24528d5e3d60e4363dc580b5136e3e9751d2a106c2d4f0758c5b936cf6da09b9588cef5b82a811b0268ffa4d0d4d7bf1d884ceb5b3bb15c2319a86648dbc31179e3f1aab17b525ccf678c6b3d58c9f300860795f2077dd1ffb7a48818995455b665ff7ce8ee3d8889283b12c7a99d1dd5fb864158ca06599794e159e8ff9de83441061285d4633fdf73f55c8a591c859b2d862c8487690e1ff15c85dad3407bc5b794b62e9824e3cf07c1bda6e8112e0a86f529adb6da3405846773d911ad15859b28b3b6183f032713427e546c9a491f426a124762b285e6f3613bb1988f0ccd9b1f704c33d1bffb6b5e82eae5ff301598ef76c1d1e102714e305a208227e4c930603fbc9b1195890bc2be2be08bedfd7be27ecd3f819b0590686e48b8ec41c1403e035d6cdd0af41ca824f3a45779cd493c3aa634bcdcaa8583fd2d07dc73fb9f6ef37bd71a74dd2810ee7a5c9bd796a4ed5a10412a1d4dc81a1f2f7f8ced00f7f680604c3a0d22c552d3d26a0d7eca77b0b905e8956a718852c7a5ce56b0337ff74213b06eb5f7ce50112f1704300e103c54c4be710b58118bb0f414fc2babb614857f8bcf944fb9d9c0355636811b75f6fb5e084565b970d3936bc38f04c821d95599d712b6ca73b70b61403e41867823c2240967d6ac2ec3ee08e19ad90ae07feecd251c960279e99b57773a6cdc802f207021901a498725506f58fd1817f6fcd5168840d06df0ddcde10a0a0d9efe80f287d30120af3bb9b959ab0e09239fbac4ca8c2e2236f5f8dd2b62bbbd04aad675f3198e22fd4c981a941688ab42b4d1c88ac4603f0273328acad7be00aaaa085c3e8e80128f2a1a353b8a37914fb4cc9e0780d80c118a302c20f0b6766ab0b43f73372f208c8173730fb8726f37a99388b6acd19ca382750da6c927a32df8a55e9b09d12e0f74214c241d97e67df0d6cd4e7e614ac19bb7f95a51c67a0b1e7161d90efbafce0113a35ef9d33312a0bd727569bd112d3c41ffca1f2e6142001bf87cadb4bf0f6454dc8a8e8a63e25189ef9fb7394da850b0e06b4a3987ab41ee3f3ecda718298d8286ef1a971634399a009e8be0dd214aa328377e30508ab0fee9a3ecaf61a3dd8dd760c0ab403d0003d52f8a600062aac25f65110971be839eab781324f66d86ef04a92adc2e84b142eabe05c7520ffad6fb54cf8d941d2686e53fd16bb3aba8133000b338b2b3e40eea7aa985ee328944bfbb31a0a940ef8b825db2aa19d444090b8f0b76adefd47335c837841afe67a888fad8519453997859bea6a9d2832b641f4a2667284b430f4ba3c897c6c66b8ee8879d06cecd4d6ca58fe8ede09365f78a23dd664f4caaf7c13f01203cee7dbaa1686a172f5d6c89194be5d4a99d495cc5554226223a977bc62b4f3242b4a487e2a94d2b86323a533a57eca13283cf5fb7f3071ac8561195681bc249a45260d790cdc3fffd9c10e01026a226a36e0444d48e9baef985c774f79454c10761c247f2009387b0fbb51a5f09fed190fcdc7791086a65ad23637aaf5e6224c9aa9c1290b00b183cc905f09e8a22fd15be782477f67f5e5ee330f602cb7e420b702f2c8ba6e02dc857218031662363df7f76de0cd7dc988b944b3ac3836cc8c2955cc3e3b42771a98ada9926540b6ccd4259b0531004e23dcd00e1974dbec34d4a13956342bd011c10ebfc7d2280388397579a2d91a235d76053d2dfcf1e195910ce03c11b21c9ad8a72be37a0494aa4ff1b9c3013559ce3063b246f3e6eb68cd0e9aa3be7bf4dcade6eeac91a375f9956cee4baf904b24ec03df5cdcf4bed6ffd64125c388ec7190a04d2c2151dd1b9fe3a4f865919105c6e76b6f49ca64e871edcc7313582c97b017f9219a7bf9f72eadcd3436805b7ce472fb74179f2222ff4fb0abdbb505b7ad6583db35de1185d4fb55b88d4f5d06c93e0264ac0b523559cdabb64e717f099f1a5eb652acf376f36321abf23c94b9ee22b0c66acaf3e05165e6fe01e448f0e01af3162a2de28027daab0eaaeaee1c086a11c4762750be177e36ff73ce40dfc3a1205963326937e21ee965f18b4957edb75c0e96181a76384e11aa808f103fe30738ab8efc85489125a162a38e869a93f14a1e9be633db3a3ff838583b45d0d24a686487a492bd8697e30537692518ffc753e580e6976a0d7550d972639cfb26c3c0ab5288dfb4d4f9067a19e6c620bb5183947df72137b908f7aeba17cfae83c5b507d22007e1ab7d3c445c15c2ab7506b30087dee07ad8477e48ddac4d6f847040914298521022df82f2cbbf81b75761e9a6ff1d7aa53296d2343273c8d7ea470f2248e15ed48dc431018aed2ff40b09dceb34f941586722615c5141b7837493daa3a74e478a13d26c321bcf09d7abf8c978859c70555840ca0aac4839a18b5b9f521f7796ba3593bbc5fc324a23c35cc262b3a59c7402cb958064049500eab16e1a2901020ebd2a1e3f37bd66f51a01e3e79545e66bfe322d1f88a484e4c7d58b87dea0f69a54ef9e15f227f32dd0fbaa6d21d8e328314ce6d612bdd785904b9f604979b268ac087f7879579602e8e06a3c9f852cdab5771adc0497dc810d2ae1f5308790ab4f043652b7b5c7b5dcc7fe3bfa0604271ec226993a176e976746f3587eb86e1e21e583562405042f0548907d629a2ab7f1c9ada7717720b830f1c0219b3b3682c25396bb27682c56e4016763e8cf98e0b17e7cee9b25ec716924fca3a4588579dfdefaa208f6ed10d341ec10d60b2dc93451cb79e2be27f307b1a25eb11c463b8ed910d11fe811893bc8e938f3446ab80d5b1505bf0072ae62c4f53b91a0cd3cb1df4724821d85a2f47230dcfe415c3c49a7b4c54faf6c1aa31adbdf843cf2963b51916e72b342af5c443b6127033ce883ba3e206579d167662c7f73275c4aa28033580d156718d419ad60b9e64dc2d8db334481596d134521c352b4d9b8b6c3a3717a1e10495a75230f6583fd2db04e049bcdf2022a0ce500a5b69b4ceb6414b47ea68670d1a2cc13b003216a263e603d0b1cb103ea74d67b553060d1a8039192aa8e038f855465e0930a8c75cc62287a1ebd7c86cf74c5f7716c7fce2c1e6dd8f89df9830820d85d5deebafb0a5dfc2286b87ed1e7d5073766284ac934feff890033426964efbdb7945bca94a40c6907f407c607d6e24dcbba8f488eda47d89ef6decf39d22e58bbc06dc341e01519ab00bc226b58629955d12ef25fe0afaae0cfa6e06f8482bf3fc1b05d3c3fc25fc9f31f96e7bfccb505cc1e0ed534f9a3a79e02935827c14a3a4909e6ba3a531f942569527f96bde4ca96b2f44c94761c6465afccb5058bfd97b972127a92f8f3e477f0f79cd68ee4cd8a6edbea6f749ba99893a2491473282c6cfc8f43e5766549b25737646539252b4b0eab04c9061faeb4dc04bff89271d37f719561acc9f08b36197e84895f120281a05db624dd86dea2916881c591d61144c7b87af816264337c5168c17efa686a97634fa13fcbd37c29f5732f95a6d087f36762bca7cf0b723f41efc9540dfc19fe7e1b438716cb909ba4cfcd89adf8e10fe4a20fc791ffc7dad5f8d10df18638c31460c48afe2d7da303b76944a106a300dd3300d5387ec0f4dd0f1d6c846240c9142beb108d06b75116a45a8c2f630be800dda431fe43600f4fc3b0b44820071647f5880fc1e0be4cea011156290c5a113d2617386442295962821bae64bfc0581ae243730ed41d70dacfc892b8e4560a02bcf095dd1e5312513c81eca72b6fb94234f089a4a2a5c9d199c4d830dae7cb67b4e695d208567b0f1dbf306c2ca8d9b5cf033ac5cbb8462c7649793e28fa22bbb82848284b2ec5ad995a3ab5fb7934461e17fed7a4892fdf0a3cb47236be3c3f696cb2c46a3d82e679470b091a38db2cd823ab5665a848dcd0e673339b7dfb2b0f15bd3b2124f9679eae743638c5f6d5699b6555028d3ac9c98945e53d2bdb0b21ad86f25b7899494ae2431792591326eaa28d44b4569212671b988e8b2d028ee94bbdfc29c88d8b28561c1f4f7075472e2282229ec8843e1ac671f1b4b9486051b7f663fe7d794ee654614945a868dba1798b58d8b306623ce67604f60da45c21ef3a594f26327a54c8c287fa2ab8c4cee6f540c50ed327d061adce57256a9e9f83cf47caee74258675625949c86e577a3a423ef80ab0ee7e52c01597b48ca7edb368faf2c7b7138beea2b5b226bda8d59ae74eb32cc71664b6fad61ff75370c759f799d48eabaeea57e7704cd1c2cb52eb42bc45ce7cce607f28cd0ab329bb10bf78de33a4e7428b1171a19c3f105832e1a26bee2cb5d9ce69c4083231e1607c903af8dd9ad60e39c73ca68adb51986557ae2c9ba8de3c1dd6dca8a7d49c319ae18ab18ce4ea6cf15067448c43c7fce3cff6b29fd618b7cda19d179621ef06853e9dc5d39c968280077f427bc2b5813b70e779c7cbb97f9a552e9721ca8655d520419771f32430d0bd883f3fe03cabdbf9cdf7d471f5af556b6d9b80bb374b789526b4dcd4672ae4316196173e8c5a0279fbb1af4e4d7cb8124f99b16069892e5b70924c997d1006dcb5203d929a5d8463b6b31d30e78371f9b30cb99ecb9bbdd0dd43cb5ce316bd7618bfc7967e68124f99a8d9b4e204942d8f2692d195936a06611b6739ea04e3bc4f988a4bad25a6be460b3dd43d1878ff6311fbe8c51b3d16cda9f68e9e8636a62e868d26c22a9bf104d145586ac5521fae0c860de19a18eb99c705277c95d22e1e071e2b919560aafc8b309d93f6a0fb111873f2b276d13adf0b34a670f7122d36915da69c53a1da7c3e966c967bc237853a552a9e65d65352c1575aa52a9547473395518571baee4d6b94ad5c15efee7d5ff6e7c25940c3f196a3fb88ffdd5ce57a954f701796ad8e38f0896b51543b0b1535c1cfaa79454bacc6c73811e7c38ca94898c592b2463159268a54e4cc16101ab90a1829746279e15d78484a429d87e9ae7c460add68e46ff9e57da91aa59ad562b89bd56d241927c912504b2dbd921412746b10f8d5a0ad97b0549ee321fc2944afdecf613a0299eba0ad96bad118afc85a8883232bd0429d8f8d39bebe2a449a964a60c86c96032988cc424c699df2ddb84868132b63b4a9389281d4f8d1d90fd2395384296494d309ee2a96631067014043b136df003b26851f010fcd1b1060a5e9537d93b452351cc86c1e410db61fc4602a19c91faa80fa58c3e2afed8d2dff425d296a24e117d7414b0a5bf8adc54f40c7e42e8ddaa46350ab2f457929432aec4ee955150a8f61acae84d6736ef4ec413b248cc03b9e17429bdbba9402bf458a0eb32903dcb26f4e4d48ed838272631eadd3d822c5cb0f1db25ce2d366f8cc70d080001e4fe582104027a3c8ac83d83b264f9f2880e894ec66467c4ccd25d9aa063bb9c18ad99b6719decc3409442ee27d81cbb2eaa3af5433b265611539dce0809c240e044114e176160a0883111c57533f144458c34a0d06c42c80dc244c9ca97c993b844ccc43112df23352c27e4af639cc09af9c18004b4d73f9213cb4eede3764cc740962b6cd7712a9ed665597370c0b51d3d1d8d744cf9634580016cf5a566a1e79c190726f4e4c49cb375baa4ff19b46efa31c48f958d0fc411d971404f7e762f24c9af577ee32840feff0764d1e567432b23b9f2dcd74ab13a868d4a894d396586d18965124e778879bfe7de137afe81493b233a1c19271dc106ddd40f7f7353064973661c0042c487c48e2e70e8cdf9d2810dae7cb08f70108b33c030c02d94ac103af1fc773f201e197e08f4f16c18b6862c6190fda310b9fb12fd91b5b5661b08e02e0d1a0ac8183ba03fdbb41a22952aa54aa952aa157c1bdfa8c22b2b5864850c2c52a9f09dfff1f1fd18f713d1e47e189d56abd302b94427f02b462050a7f5a1d48f3ca0942804b9bf2352953a4ea5427943eecf54b9bfaa40a915c67420810da02e144f11268a209ae4eb156166919b9b1b900ab4b09ba72677d5aa2ad624449364551512c8b2062eb8e0a235532090063204b691188dd846f5c98da0daa57340adc8f22912a0cb0f202f9faa608f205e368d9430d034575d805ebf7b01ba4c2dda3bb929002fc44b1e2fdf6fdcd4e32500dcf4c3cb1d2f5d5e4ad34b1ffebb91e543f8ade878f92ad0545b5e7e843d7ce0c82fdfba2907102f31ee537ba83258acb34cbb6431dd39802e590aa0d73f576ee2689cd49caabd2e40174e09d02bcd15b74292fbabcb4d1d1b27350bfeaa0fd8b56d2d1725c78dae9b9b8671527cbd5aee496c6ddd4cb4618da0cb8bc8a6e59a742db784d3bde0c05aa8e245a4320213a59210d140ab854d7bb6e582562a27f50d13931b2727275b006e0422c48d2c27c59a1608c4000d2425d5e974acc7b6dc4f16a5443434687c8d504c080674036a816c402cd0ca49317ae82186f72942b23236a63d1b366c00b931e53391a6636140359dbf6ff38d2b6bbb99a852793c9e0fe8d3723dd9f3f97c4021e9b2f2ce6419d48c199f895eae148dcc092569cbb5b9c80f3f7c90844a422db793a29139a1200bc62f438b15170485422fad1250cb0464235df63959de99fc406e8acc8f9b820a227f96822c4645e4ba01c015d138a9655031279a172f6094601103740362fd7fbed6c6341016e65a98962964422db7fbf13dae2825a211a1443290e58789c9b7a804497b3dfaaf0381725c908d934e4e4e40fd4204e08a7eb8a2168da7d09820c9fd26dd0ba8d59ee4c2a2fc1647113a0724da0010040e1951229b928e88ce229b9689c8862b29791e37c238e162f2c38d27936e26c6c49896bb7db6008d725c51eb26140a897e68b959c6464cdc3431ea84b85a6ecd382e033a9b964b3386225170a0e4b83480b45c0cc4fa94ee05c44ac97153ba99524a7784671fef838f1b218b0f9fa2c24997fd3a2e2eecec7153649cd4cf23c6e5a69c208b85699212b6efe7549b0d87c5ab93a449386ec7d51e6c1387c5051bdfc64d39be3f4506f66801b15a30d971f5ab742f2d57e2b820d64d41390983b46852fd8f5be57ed33d41822467ff752fd1ab354d3bc981453698cb49f7225f742f308a8819c46aafe57a9677e687cf7141405c904d7b3f7cc7a675644710d52ab2e98890790b3fc068b91da3e5c66f99c9f1580e2c42d2a4fedbbde0c0221b914d8ac8a42425044a69791f4a387ecb8590c587ee8505cb1bf713d57c3e051b1606e6eb981af70b9d3e110f72ff0c91cde7c5e0fbf9142eeb7b18f7c5fdfc8afc81589f22b2f9ec172a89402cd10d724fe113814436a7fc896c4e6872bfb5b130a213d697c282dcaf896cf227b2e998fc896c3e2ef7a98db48bfc482bed8e49690df112d6a38b9637ed7262b4661c87db9870d2cbcc124e38a985743a3b06db192003d21d2009968da7fb0cf163f5b921ad5b50178a309cae7b459896178a4093bcf15a536bc45057b0c77cc7b5a6d6f88dbc29c9c3eb0e23c81d61224c84e9566033972ff90a03edba99d14834ea90b5a393285f486a4d87124d106146004db5a626a6e0a521b135af9a97162faee3705bc789a7cf1436b8f2713236f683af7639315a338dbb1a18ec27fbab4ab2b61c715541165694f70049482d029bac04686f001d97547643fcb09b07eb18226ae4aa6a4ffb82dc406b110e5840970420a93fc65891fb834093132d599225595e60c548560c9c709364c1976449566e1b0b925d902c990534c5180986aab22a1528da6a45933c27cd7c7684502854d22aa351494989490c596b32dfa47b9952041daa5455a575a15ab17a715c5555b571329e19941cbac9e218b5802f591616ca8f8d8231fe166f8a1119e208596447660833111939b0c18ff105ff8b2f777dc0bddba3477f837bf4e8def81b12933b3aaabd081a79e28e71f78eb1bd040ea1c31515d94e83cd031b5c8110ba436d933f3f0852d571a36212922aad4d646c6bdb74e5e168e4ff25c743a4010d4cf673a48934803d3a76737cd23c0d64d1e0202169724dc88f52b647e1a1cc61f4e1874698376a6f4ec415b26cbfd58fdbe64486a590f6fa873047b047cf2a0437a1b51f61832b308903b4d75cbbd89921b108901fc4e7381b80d08f5e5b0275591add03c824b40444a04d4b74919df38f8322cc8dec3a4ae091b8e25c25482c928024e260b1220e106144d8963ca8548232aebc7f09cee31d4e771417c9de45a61f21dc22bb1413ae70f86340a60f3dff49b5240e90802c16c962914c71bd71004f524a29ac1092e4679b02c48a0de3af17172cecee88e8b6d0f425613a2d578eef1d115bee685a58f85fa795a3842056910dc21ed88457c4b883c78763cef74c64465fc2139600afd8b1a3547242c69800579e93b041d803c20c9e783963f2664aeb68042be6b223c426d691b9ef044a92052593bfe3ffff5214c106b324edb5a669a1efee25f49095a5cc41e60aac895c718eb4376360b712901f7812a52ca1166f90d2089a6ae871444554cc88d6288cd0131d4e982952d1a4fe92177d4c6927a6a87a297ba51ac91a27b5be9ea25d382fb1f6188e34da8da93958edbf4813a950c9d409c61c7fb68b359ec535f2a68bdcdf11d1ee8583b32a521c76fc8d307ce3260ee5a4ec69f712045e9137d87177a6728e7056cea9e191258e2c4959de2c4fb2f4649965c9a9e1ac343970569c236e5a791831fe39fcfdc59c8c1d3b70a9743defff638c463002df06306799b2bba58c953fa3b5de506c34f0afbeda45fa7db9a963621b91c2690cdc3d468f71bebc8ed12068fc9a45faeed45d888e520635fa12226406159b436c52babb4f29a92fe158ed8ea8989c32dbb810d7711da7d649399d4d06be4561bd636374cc5f12c1a63be6dbab080c1451441130c21b98dcb53427366f47c8447b1da4bdfe49843ffdf7f29c6fdbc47525ef9d60e57f23956faf076031a7e220dd65427e44844039cc0fece1b9a95708132f5bff833741aa19f2176de490fba38d9b7a34b2d62b664bfe1b99fcf7a3ff4aa392c92db92190c438d242fb1bed3eefb9327f68f762576eea5a57d7f3165b6b4f4bca966cc91636e2b3fd8deb085d727a88e746c8c2f9dabdd8df328ec51f11ce24c244bb74df1f4408e7651704dee4dad50ac09b3cb9291f7a73005b8d366b26466d7ea4f298972a50ca12f753229eeeea203b4977927824f66ff1561a5f6662ee0c8687c02b80fc60caf797316221a1aba14bc6221d8b6cd1db9dd24c624ee891c34686d83b029f108f5878459e32fbd8ed799e2733c9d29ee7e5272ce1e61aabe779d0095932213bce9265b6bb3612c4577c499444dddc44d1022d5eaf4d6e2e1bfa6ac1c4dcb0e88d4f0907abfd909466d5fea8937012cd49b092608d2a66aded4ca31b64c9d09b9b8d9b5c9744122cb79e8ee3cc988a5a1eb6c075ce2898810bb6c0bad80fb8faa1326aea93528f052c85d89494560a21a5b28b0dae7cf4e4355ef34de1aaa6d6346d2a6cb05d4e4622930c1fa5244348923204fa786c87d3719b46532936a57744c9f03794141409c5c9c6df6afc66fdb8a0d6ed27903dfd0d1be1a0c8fe57890844fba84403d1ba957020da6fced1ebee4a48209a94522a31816873ce3995c080d08b61188661b5538202d13e2cb01f95b96961a9a679b956aa191361a84465da6f1a7d9fd1b011d9d32f22c33690a500191119fe28c65efeb7aa6b31a0ac95779b166635a4d75d271b534304cdee822cfd5a1ae8ad4eea19186d46ee6a4f43838d4f5bb25d081c06b856f62dfcc65b70fa943654858676a198aa54b95f45553e07da7257741764c982bb68eba6633bec8f79d8e0ca0723957dd220da7319cc0961ecb863074acc2a2e4740cf07d09ecfa8f1e22564d164294f246ff95f18315e7a173985c6c42fe32556f91d2af7875606aba2827f0ca08f20797883624bb99d6ba46846af9dfeb3aae1dce06bf212c1505ab32ab32cd3362de5ce3ce39aa852167582713f35524a94234df2dfb6ad7b91f883457b1f564d129f95935c725c29976618f753c3128944265d34c953b00846e55fe02f8848538395d20d19fb0f6525310ce654c11f1764c9c214c16cddcbd4dc95e24ac13a4a251a3468a408b929d5899f066820263564e0383739e56259c69d5979d826941567c63579714d2818a80de843291a500c8c3fcaca4d25252befff49c11e29ef1cbe1ee7ee2aa3917b3731ca2a84b24259599b82a1ac304ea76339299c9b4f92cec765f2ba31797d5c6e8af1fe262ad8432506367999bc543a1d9b72639671f1e5dc38a9fadf0bfa0b427d5e2e6b33e72469cf41379c9bf61c06feb8502f5eaae00f0439e5e34f4944e78f4b6b7d5c293365e693fb791ee1cf8407d95fc4b9019d402a932964c7227f1b14ab0f24f3990821fb733826afbcdd4fe60f6595fdb5fb81501f1788267392647fece3da11c48f39533d641249a1318ab07da8607f3491185fd4c8343206342ee08fe95242d8a5ee77b40b87fd658c9b40a1970f579c92972f638d5c74c13c2f7f84b99fb8b4717787cb72ee1be736a554665926b95349bec1eeb834b7818a8a7292cc6ff662984571cfc15fe76463dc60b1ff6c4cb650a421d3e7e27bf712b185a23d47cd17703719e39cc3dc09b2b88d691728dac5bebf3df9d6bd74346bfde686ff5652e2b140c9b590454aae224133c7813a22b8acb581ab28cec58e64ada2daebe093013220efee21db9e7b87611cc6e9743a9cebd973b993934eed65d1e958adab282e2caa5da0a33a036440bc4a21d39ebfed5e3ab8a2da7394c763dfd3bd58293b2f39f53f490587e24e4e72ce0887ea60ee94c5a77238cf995b4555d42739ca9d4a3a76445496534a5408061483957443a795c2f103cb67c16a29d9e8c1871592f772da78335efee31b3272d4781a3960461023c36a172e950574e188f09c6adab0f045a9b18257565223cf582a4f9552e16bd2e15bc2059511d429a60a5597c21724837252c7b036867f582d370229e1960b819c3a9d8ef5d88fe8248a41414901dd805aa01ad00aa402a5481724e3a41218304a542c4ce7e6c58b1f3a9d969b6a7c3f8806f6f0bedfaabc1cd1e3f17cf0f5783e9f4f086471dc1498d7c9c9571b96935a8608a294688b0f08040aa952297c3ba718118c89cbe42512fd88a54a516a0528140aad4a5626aa92544ac5f9e1a6c0a0bc583e1b41060362d5f870453d5c918989894b26142aa949755da7d5b969203a2d934eabd3c2325429950adf0ec7f7704527518cc94b0483c35a0f8e191764b302a93e9f2c26f7975aaec846b492c932192b5654954af980452a158b0c554aa55271a44ee76dd4f04c40a994b782efc669b96855e31b4ba4526119f8d62c03cbc017ab714720a4c6a7d0b8716fdc397bb829366ebc8be2822c1c11b894f6bdfdc775b668524da7d55e3710fd1d562aa572d30a0cec81bbe756302895c22d7ca58c0b225d9497931a54459354221bd1ca49ed19ab0616a9549e2aa552a552ede1eb352e88c605a99cd4df61b9cf48b929ef1fba91bb446659bc512a899dcb92c492867221693c9fd0c85d8aae9cad1493341b126c54599f81fdd1bfa96cfc6dc4c176a9323107725239b74efb786c9649e89a67184e4ae5ac5cc7c93c279895f3b569d90bc3a6dc382a67e53a8e639b6f50c3fc0836c326f4b2ec035db6695cb669598589af49398e4929657c613f8083cb895123d852a924adb536abb566b462b314e33b5e429bb587b4609de59cd89473ca1ed222235631c975ae6913d3b49698e4b889715ca772ba17df3a5d013cd71ed2b158e5944a25897d1479816e45b0f13bb5c3380edd324e9db4665b15b3332936e9fc6e7e369f9b73cedfb0f92e29463be0d09b8f754648ceedbc4dcab931d30e38f6148359ce68cf61f43a6c999fcd39e7bb573a9fa09362d8639863aed96836eefe444bcb193722582efae8d280d1494b7e330947863c728c9fb9845d2f6d1ab74cdbb48c624f9d6a2127462be77694d6f76a10c48e1dcec5ffee8c3e552a956ad33ad9aa283fbbbdc0f69adb54aa8de35439b30f8ac669916275db549b6a53d15ae7f683ae0d736273f41edfddb1b90da154338fcb8949b809a1d65a5dbec3ee2bc973becbf7988139e99c316231468f734b599f344e1a27c5fe0a4d63c4300c9bef4e69ad41089263dfc1fa47772937206052fa8ca53bd87e7086cdc54e977362b2c65865ac71627262b03dda4e679c52a26a1362ddc1366707f3008b4fe971cad8365bbbc7021df4649701ee6619e68e372a6c9c149318f5da9366d1cee670dba66538243b886198d3246c73fa9c1d57bc1b3b4627ce83471140d4391d7bd818f60197369b0fb61e6c3ca8d6c62d6c345b14d663810c92a40f8944e490e8f106b3b119e7131b5cf9e2c925cdb08e931e4ec77e3c327ccfb597e3ee3e471db68180ec34a027692800d317025db4318ab59c18ddaab669f54209eb8d2d0a5a67269b58c932ad099591b675c8ce8d6ba2492eeed4724839c7b9bbd7c75625bf417b7f8bf7a391f6f08c90cecec62d3e259ab9867115c7544a26739f72ba74a755b4e733a9cd064784e7657c87cabe7aa93b75a80ec5725397c2198e32b2eec5be6c171b1f7fb3fd37ed92653346cacecbeced6fd98d37b195fd175b5b64237c877821feb33ffe1be5ff1ec87f9e001e42d310570017c8cdf7c715e24afa9e713ed9a6759fef5c993f9bcb4d8d42b9502e57a73bf91d140a85c20ec89c4e277362f7b2d17fcac9baffd1d5c61b1bb37bb118bcb1dd4d87b910cd682a75471dbe20b94467c4cbc0323ab348a9a7c654156d8a472291bcf21f6b26667d3a9c0dd4bad4631b353fc371d55ed7cc3f126b22cb4d72255912b4715a9c56a7f569fd73ba178b332d60f0f80efe4a3d7c04f11bfe4600f80c0740ae6cac389cae73cd68bfe9e07646eecb7659f9f8db063b148fec38b293b2df134ff6ac4bf945dddb9dba5367a44bb9e9e5fb41ff79cfdbef7cf79cef5c6e7ac1100e812124951eba4900184252cb433701c13e3c7453c61092581ebae907bef1d04d42e01eb00d49ffdeeed41969af00321edf88b1dc8ea8df9d3a231d6a055f19538ed8dedf255619b5d792a6dae57e7fa645bbe0f83eb5c966a2e3bf5136d1440f5b645376341a3d6c8fb4d28d32ca282619b829102e5bca49bdb19cd42e5f04000600600401c3078c1e30623c0ffc95328c87d1b97660e37fdd2907feea0fa91a5dca4d9d8d07e1af7ef0676f58fc7d077f5ecb7738c5e9525c8df748ac15566e8e35037f9506feec0e7c721397c2f8abf865e0cf9a526ee24e2ef8ab406ca98f76da5c4e6a1d1a853d59d2316b8a27902011236fdffdd0e5e870745de4892eba12fe76d06fc15fc907fc792cf8fb1b9dab87ce65a373c52da4e05cdbf624fc8d3cfcd9af8139d7144390702c1aac19ac1556912eb8940c8c31884bc12da4e04e1feee4c1dc893b42c48a6d73b95618c0b9171a21b3c4f22fcc313a572ab572046e51648a2d8a947071d52e47da657eccb22cf4f36708af74dddf19ed6b14b6a56852d39669973941fe718f5bef38e7d453cee9def17c4ca651f3bf46b51433054a7d529e944d75525c8aa6382b389bc7a3bda7bbc0cb9671b88ed3f084a249fd364607b6761ad552c8500ceb4ee7454e4ac79048a44a931a224bf41b2e7b9011f6b840ccfe367c9bc24e8c5431ead15aa36634326d86b6ad6c9c0caec31de74a4ee72d8d31e2f8d67a60783e2f3e2095ea440d95a094989c988846a2916874627282528292124a5101a9bcf8bc80e18111c3c6f8ce94f02f87abb8c339b0b03d199c8c956d658636834646a346ade1518f84916c4c1b3dc81e6ef80d9666f1214e09b17f6107cad195f6dadda5949493b53aa60fafcc302ab7f7f8bebdfb16df37ff6e8b33dccb95266dbf79dbb6492a39e72491ee88fadf2e746e9452c7a84fda2e38a1372726bb3bba6212975fdbd1e5a47ee1c04a3cb130e7699ebab98e991dd3314ee3a679f2989a3aa95c7e72f5f78d9b24ab9bc64d92c57a752b6573ea538d536fb98db362625c3165a80112f3344f5734c1e58a37183206d66864ad8760481e523245650a92c106f0244f5734c15d94ba8bbacb856d71f0ed0636c6226c36b0c126b3c96c3690dedede7346cf580012b0bd574e3cd87fd98c05fc087f16eb886121a074ab0186490fc4ae1988025942964f05b2ab452de2a60fa854ed391539543400005000c315000020100a874422c17038d08339d60314001264944682743c1388490c8328850c42860003000100200232333412016f1448531554470ef4771e1f44fce23b4a68bd3af1cc6dc9f62c005e0ccea3e5e0ee12de459cd8aa646605f05b7c1a66a87c52efc7b3443a7428750fa2bd2f524e1ddae7e8b4767d6c66eb69999607f8afb045ad649089b54ef4671540c648c0140a2933f8c0e8a5f0c4f181270156e5cee34f0312e72a62b2afdcd96b1fa5623c488ed7ef2e915bdef53b44364c49f5d89e699d07b20193f4fc2edec35a64a67ba095e555f83e9deadec28c41fa5425c65b6c0fa70cfcd5d97e1e0358b880310d91aa9d176a8d3ede875156edb40e793dd2c3a3b8e4e63f6c200969f622a5d7468ed71e865e056fc52cdf038c9515c494a3531b0af189a324fa002e5e458a464638eeca492376ddc6155eb38d110daf35405bcc0eef20c9e43bc10c953e22ea66c2c4af524639fc1b03ed6224ffbdd75034dadf3570c4aee4e6acb7d23e966a80ab29037b5788084af381266e06539242e074012922589f1940cde73d025d6b77ee8ad59f77753288487813757b4575da40bd550b5aae3e12a8a782bb2be00322755f3f8eb435bd098363b8abe0c20c0e408ac89a30663823d28db9ac5ffbf58257343620f8242f08639ab182ec8a3303820062a20e5bc8625a1eddc3ae18a5531b990019bfb0e930958aa61ac9ab6b8015539613b8c82f9c1e536038668961de655472649e2bdb66f53fab363ba169cccf287b3cd43b50da8dff8c450371026b04288693e8627da9cf59e5e9dfa43eb7f03cb4367ea7c9b0ccf42f6f50774110bf5ada15d6b49d4671a4e4ec4e0948ca96e3e9da9592ec84e8a6966672add17a5432c9359633e4be58b640759fd7757dcfc38f2d4b3e9280d13929f44d665aafa493d49ddcedc00f418b5a83e12a39b444b4e8c608bee00a7b0f7085069d52563897d03827dc19a16f7dbb144cbf5a62f6d683dd03604dc1381ee8c06e3cba44a4c694504f5815deb23f93629aca915da5803c1f16540b5dad67d0f51c9ccd005fe07934444eb5d75077d73ed4984373d93aab2619c30c692cf2e29a0b1f9f4dd81879c6719767fa9f1e62457c71242cccb3c4981d45c8321aaff72b6fce36e2780d7d1ba5141a40b71724ebf0a9321d82c1ff6cc567369b919e473bbfb9546c1b396420f99085f1ae0a74d875c6875f175e490a9c4f3de3de620353885e1fa3ce5f94900a29949992ad5865a1c2170040b255dcaaf52ebed46db40fe0935f0fe5d1dfccd07a50cc14cd4211052e09135fb99b64eb446a09f1fe8f1250e89bfb4ab8f55b73003c67d3a3194483c0056308c650c956e7e04bbb564e8b2eb0d293cf338e250dc64c0859e66d26d9ba86e4af579d1f23441f245be3d07e3bae82c8797ced40b1b257093ea40d885941f5214f6dcd6bdde9b05cf26e609b4dcc13cfc5ea2f7f2d48c0397eb5e29405b9105b6bbd63672f0e034b2015140cb03090fabfd0ed0b196a61d5890074732d40d363d804bf0128f4ea344a9fc918d0086a244f9d9cc6859e4874a9682a53ab9de5b3d064b16181c117a05aebfc30dd706be0d69468d9f25f6dd49ab669332200851f1158ebd168f7de9a8b3d7cb9ca603b939e4fe8f9aa51229cc2a99db6e3d0224fd6659f972f4f5db613588c9f743e77e6a63ea469ff86007fadfb834b7c0953aba2c8b17da4b17456461ad801e150eb830593aee1e4177e0ad9567d61870a4642e4f7a6d523d33a91a3b0958aa78ceb9da7c80292502232ad30696d2bd6cf4b6b1053926e111588c30d3378ce281b270eae1c194d6a28621765b952930556c6f407eb18d63ae9ec64d28146d5c509a887d1de977a691498d396d20169fdc5c156a245ebb17104195a872092323892d91c089dfeacb6e13cd35ba1e018e6fee41dabce45c7d76f2b58cf206fe83b0da2f7d8a3cc97fad3487efc58088e9dc7b55e706f73a1f4c9b3de7d4930d9c6f6d22c9c283e6af100b259553933b60ba0556273d62e29cd0b418337bacdcc0ccab58f579ce4563765568f33ab5664865f20bc5a1a8c8af60625c371b0f40a8636be692ee710358bc275b6e7f4d2acd250bf0d26d2b366d65f241d553c5164394cb16a5d8697733ee7bb0bddcaac6b70b95fbba7b20f1fbe87256f142896d54a993587426bf15b13e83850b5b202a991d5391f1d6086af8f8b28caac1256356217b47e1be1f82653423b07f4936256d17e29d65c025a994364adacaf3f2d64ad45e534364cb0987552bea790cd65ab194a6f868e192d409cf7d42d306b1baf71aafb667ccc2ab3d5187a19f09c09fd7c306eaeedb99d6f5b1551179fb601175b7a05af6190eaca4725e790eea7d9946e616c97ba4593a4c1ccfbf90fbf31ffa783184aa9373697313640c6f0e0b590ab5d1ac5622dd4ddc4a40c8061e810731c3fca1dea0c98150ee89dc7f5615323016fa689d5be7759112e38268872d502d0aae9a0f0f8a6bacc226204d654732e6ba005684071933c8c37bd312375f019fb6f599d6a1e1530458cabe91649ac68357e9e5016e91537084f128eddbe6efe6207183c2aabd972cb3af3a41157dac002db21c3cbd90155d67941085796a6775edf0f1ba28b0d30fd222d7fe70f91dfc70bcfcca3cc534703b494094323d0dd155931750080070af4dea77e2204fd1ab27e1edae8fde71eab0b5a7f21513143ca67b1ebf780aceb000682848f39568e47ee02ca743c09ea880455b5402964bf38ff271600d06275a8f174b146a905f857ac956b398a811a7fc7df6d6762fecbe02a728e7acf7d97471fe0c5f3748e0509b4af89cd9b6c2e956744b26dcb008c6f78ffc2c13cb26a645713c4b13ee16f446376b10c50e53a3ef331c95aaced844b213455af6b7b9803d6b9ccf7ba3544f4f449990c75dea89a656dce641e180d3a1bfefd572522486f29c3b7ae0c1f096718c13bc879c8eddfdf701bfb4857c10b5c903a70bbe62fff869b984205000f92d7f05889982af4535cb314fce558ffc55c9ae31cccb70f759f4bd457b3f4a2fcdae5ec2b9fd8b40883583297edd5407d117674c1da54eaab6f678699298303e78b4236b5455f5d5f881a3ab479896b35cb00af42a1af7a631d39cdcd68048677fafe4869a2a733986d11d1da1cbb14bbec47acfac9ccbf68c8ebcabb62eeea8ebbab52dddb2c46d489532c14b2771f95edcb9b72c9fc95e31ce08a586a2d24607eb743620dd7f8826657d1ff8b79d70fd7cc4ccc677474cfe5cb7674ba5799658a7107fec2bb840da9ef13a6c9f14c0edeada41c4a4338b1833cb51c161ba68d7863206b7bf27d027a0c4126e85ed1eaf702cd9f71d6bc346df259386e1f640acfb4e2514edc3f7a70c410210947970ddef6ed9dd2f286a610569b8b8c5b7bbe9904c7102b96e28248aa594fcb91c42a96933c34d698be95e529f7206487f9bf5561a078587ba6d9900be958ccddf51e2f6463d80d1fdf314c96fa64d3cba5c70ead7c354fde7d733a491efa8dcc6f69e46cf42a532850d99775722a82555127b997c4a00b2f2b0a33b0a031bd040391af916af9337ace29b5d86c8a70bd420f88dcc832f9a7e84e993974f0a3cc9f3b8cdc481de25e1c1d1cb9597587cfcc75c2ecd1de703837151c44ef780191edd03ba5322fc61e66bc3d61194471ce64c601653dacf746922087332f01e315616f81c3181409c9aad15e1cde4c6e806782cf70a03bdd4c95d215b40ca7d9d0cb11d2f467a905828adfabba184edef292f831eeaaa2ea11d1c31a3d031ca52634666c0dbb2fdbad2aeec844649373fec17484aaa868500cf7a3aa11b09784d4507792f9d3d406e642b36f2bb645c6bf1e5595e6ef3d46b25da0def795f39ef0e6515efbcb3fc44f32e744a672038893aa962f731db6f4e32dd0111134f213c281e341c39160901ff72589c566c8852f0920a74673ab0eb6d7ec1368476e9c941b943a15e93bc474f267089d140adb9c355058ca1d651d8b4d78344fe25da77477b74304063abea490422ba7dae7ba5469220edd4c9d6a23098d03b0ffb6ab6326aec239114a04616c15ddb854c3c5a0c9e2041aa55170cf9c894169e1908aec418ab18e87acbcd9dab67a95a57329b08d5701afe34733fbc52b63913c110db8a319c729e515e141cb52154432869e392e244eb852b5184b27d8a249a218dd2082b5918782315baa3ae335df47202d45240dd69886135a3a01a587ab6613bc6fe904b73c77e3a75b77fb884eeec72bafa74ed2a54e826da955af131108e41a659de9d9c982398fe351637c6385ce93535794a565b277c659f752bb3cfc3c6c52aacf3592de61a22772d9be2522858f569ee24c70b00bd66e71935199d2751c43a646d95f3f63966d4c5170f0c4b1183959da99772ab7aa9fed002315124f65eea0980d0b9312d18c56fd64e074bd294799d5e18f24769617afd5fb9043425560482221381c67a6f2b1a2d00b0d72fb5718001d39e57c8916d5bbca04b6e6fd98e998699e30cb90b525887c36211f451d46c48e0f61b6fb3a15ede7b6f84d6f61cd19840fb42efba82c737c0665d2b0b3e59ccad2e25eabda749aa5c6c22c2166fd798fc34d7a62d08d4ff68bc7e244171fd2b578c9567c289ccab45b6fb5e205227d016bb5669a999dd33360cace216826451e6fc0493d36f003f946395af399e74c67935dcc4974f1de3d8aec0417df36720f22b3363e60f97c3e4291459672fcac2bb57f74e5261637d9f23b34a300b1418c80b00fddd46848d0f1cfa764e4b28ab6ff37023e9f856b3793344fef1536c9bb7fcbdc7335c098984e0a88e37f7c3ee1bd9322e1f3f171977b42ffbc3b323d3ff893f86e846d985368500797bb5791445c7e3da8abdb787490ff98d5553379dfa981bed23e031ba41cd98c71847183dfb59252789e7157fb5cbc83ecb2fc96f700d41daa4a619d7970ac428e6296d4fd0db73cd186d896c2cd032df3cbe010482417fbb1085483b19086796626f29af4d413e573dd6503f275d01b042bac8daea77ae155c3cb040d9e5750df027278b0be188a12423cc19aaa001cfa8c6e5ef3d30412d3b17700a53f9b73fe4cc85a3640a4b8f8ade3bdb4346640f6a7858acd0c48cd3a89844b8ffe8f30e4e9c2e0937bb0522771666ae3f807fbf8a4f59c720eb425b82ba468b4852b688841229372e4281c13b29901696af604523d88372a8d85bf0e6d4a92a600303ca5e2da7d06a4c649f8a5155979438b1116d1cd86d378b06785b0ea85f40f93954df4645a8c55b70e08afc600e7ff41ee3b3fb84e81e5889a0ebdb27fba47fd4a45f990bf5bc950572a56ec3a90e37202e1173e1ac836f368ac4393e6f4e7c9868916b468c1065946c7946977781141ca1e78ee53190422516b1ab2c6c8b0836915fcee358dcc2407736f5a83ddb94f573cfdc3e268ffc4bddcc84796807fe1d6db03821104420856aed1e5819c123e42be8620188e45ae837970fd13995e881c2d51040a6b0190296f0bd41355ab4004288da84f0992d06c69b00d27de67e3820a7a982ac2f9919e2b01e5caa76bd6ccfb5a01680802d686d06ffffe4cd66bae36ecb490d22048496119184fc87c7e9d41507d02f7aae0a061cc6bd7f5022d0afbe500eb8c18afd6e5008d1486f8de388b572b3f68d22b647f5a5b52ffe062c92d1811ec24e7a53220e1a2b86f2117c8764b2ad864419b1af96663fb602da82323743112f43a1c0bdf16a7a7f436199ca09d91289f633b78cc4bb3b354c4cdf4570951198984f5a5ef04260d4faa7f19651ee2bf6c3b42f85f465ee700303b054c883d6014697a2bbaa410da5ffc90581f3243c63196824497405429882e7a922f7255567a0928cee9871aad58e97c0baf985c60006bbed296ecaf163d2a1629ba9e2592bed94caac655d536ce4ba4c56737711b679397973808a3b0f0405f485effea1c4c6f418455151744e36ff0882ada6e1f585e6edd6ba7cd72116e12219934466ad70907e21cadca50e81d8457b3f0f8869820f02362321b02c65ccc358f9f6554ba933cb825939acf1e4ecb9af4362b4429ef4f8270640d55555e2fd403253b4ae2460650b87482d27415e1015860f9f1bfde1c24ccdd5c505010d8ca6464849b75b0dd58c57fc3a26d07a8ce62a6a56ef01167ead43d30a0202533a435a9a86ef93e109888200acae8f7913e7073ff16345fb69fae1202c7b55ad2c465001ac7a6e48a8308a37d996f9121ab1ee8f727162b6c8046fb5aaa3e31b5670ed958d1cbec1e41627bbcabccd703132c9cc41b4e9984ae07c90d46e88c1c1f0136a40d47dfa4e32a05a3c04f868681fcae51d16df8b159649f7e97c27296a1e6f3cff1108dd23fe55ccc6ee30223bb3980a9c418caaab2231832d71c63f177484296e74c65c6b7029d05f24a46f3064f1007c861c0a9bbcd30def40c60c7c09ed88d4b059fba13d012d365dc6aeaea94d9a5ebcca2ab2a8c77e6041ba3aa902b0086a436a4c8180af16a07591ab2fcfe29c7d48c04d2d1a86c8a4978005fee91e1a1f338ea33d7e05ba15e2e18ce167a36f8e56b349d9072e0268728a35a600247fd96bdbccee937f1ec099ceb66273b361137bb60b83044141908e7054a0689cb07610d2e18b9364cf25b9c3d847aedab73c02c918ec89dd99c72424666e21e13f2e1c193fc65f632aacfa305afd55c9d1a2c9c6caae370c088f776007a8d33653170e181e8431b91fe51c3d1a3323ca67c1400d51dadf386943326043a577bba860ff2bb62bf8383f8735b3d73c7db0e7f38509af1e092e967a22026ee1096b3db287fe82167ee91a8304229cd1aee85ebed7269d07e38ef6d178ee7c3d9b670e968d3c3af6ed9f04bfe45fb656a90d4cd573335c871456503065135f975969a2ff1313d6843b653d8fb13a53677b8198e357b2e890587aec051209339b482a6601fa984f4b95ad1cc502f1c2f970b06b7c3f16ebbe0281bde168b0b47f6e15cb15f3aa419ce9ae585474d0b1f8c5f8ea1bd0391febc548b99ce136c18fc34266725ec4be127b4b3b5d574e7696cee1dfbb6bd64181b8eefbb0b865ae1bdb85c18a41fce4bdba523d970b62d5c38da74e1452d51ade08d9a2bc2ce981c5a2af0b21d81933b44462f1667836e2fe82d64f45658df1cff77d76f284681c1f0b5d338cbf13d238ad17bb5c2cd72491bc7b506236591a1e910bea79f8ae72b018e211860901fb1abf85a5bdaf288fc28188ee3e350220932e650320ff55e8c11ec47e4ca371f7d7d36fb1b5d18211d54a6f322083aaab7ee66f2dfc32114e05b2bf634d0da280be0c7afaa7e3424600e98554413b9fdae10c92ec6c855a747d67631eac04196fb352f530879a14621e63cfac0bd746dba23f96b48103eb8b7db116de1ed61843c012cabe5413269e46ce555c180b0ea8cc2899d719e974934819b8fa74ed413d8309636bae20ff8bdaff9ca25e1bee08d9faa6290ad75c5a289e972abc1dcd5914b43fd8b257adcee3245338de47b2d259fe3f5ade6bfc33ec1697f560275785182f47da2ed3e68cb265259b298f1b3de1c8a618ce3ab4b7f557203115ed2ca05244e75c4483d99ad486a04dcad1cc91b02b38af2e7eff02b425b80ee80a842df5ee2d848ef80d4e2763c7e412921568ff5745295872204d941357b5bfcc9218ad3642d3c322f09356b4f647cbd8a726844a9c1965e2dd566ccc9d15a4542efa60341a9211ed595ac82b87b2a2d2b3aed64f3de76e01d4bcbafdda3fd16986ca0eb09833a3cc2fdc308c9bcec0aeb69947458930d222be4a9ddb3d7c709a1d4bc0102fdb8a93ee0a1f96c1e11828d7449d332a8318c270c3cf22e8a675ae761bbe23ac62a559383340292bd025c30d7b94b2780e94e748385745eeea00d6469a0a4d447177a18facadda0c46b5dbd688d6a644bd3f32e8499c751d24e6ae084ee0ba98a5f87356b069989359ae63da7b79ed19cfaabca5f677231165d9d62a6ccb4e77ee7bedfe328ceee3b831070dd0ded8a2a462563d8adb70b9ed6ea0efa34c389ebae4b07edcea3e16904340a40e2bc3f0933e03a3e0266cfa85663c1d0c43a4c7fe55956edd7caed2c8d572412ec71f19950d83236917312ffdbdbe1c080b97fe8f6866df5a533777ceb3f7bd3d1bb41ffbee80d682d37f406143097b1c9c705cb2e2b9d1c3d63fab3f22d19dccbd0331417e11cf980795341609d555205841846617d257e6fe8902fa1909e2d22b1d09ca2ed0c5d361d2dd722317822e1f1c4508535cbf07f54d7fb0c1d4ae80b0a678075d18153acc110c3fba4885c7e4aa68c0f35552c8e0deaf37750f802cc0a6d915ba2f6dd66e319915fab17b3987d34ca01cdb23dd831a589cf4c83802b9cd0b0dda2333e871453c329fc62e305966a55d315ad538ba4228ce4bded6b5ed2fa33306ca880c03ed0701f55ca602f84085b2d4b53e8859f7a0265b85f59e623f7075d5a83399d6cec85c3a810c56a339dc8a35b1fe885d4c904b189a0773fabb9506510f8aabd903c1d10a931f8be33012925282883705419b1f8484f4724b44bb15ab1a65f6c5f9387405b6e084001cc5afe650a0e3526c659a5fe607af0dc20905a48b208b1a2bf692641e130ed8bd8b8fdc3a1a1f4c7da244495f433115b9f07d45d06489d69feb5febe9bc23a06258f54702362d4f04af1d9407eec749b7dddf150588abb14d53f114164cbd89a1d39ef41572c489861a7cfca8f502946da9242176d189247186fa453a002033261710509fbfc8b8f8e643cd832e03fdb355adb4f912db9111a24821727b34788e3edd22e49dd23140b2789bca82deb3d3ba61a38d352274f9b627dda5aa7097b0779e1ae3ae10043901e41b457ba27d5f67ab17846dee4be4cccfce3d2b39cdb9017002d1948580bb5059c5b0f2d69cf2dc2e5f671b850c752b608119320708fbeab3fbb6624a1132baf49c4663e9311618e7c0c470a40f819c5a90836c3a847c48b684b3fa162e6604340969bec3fc82f0878d81e909500bc7b2f63461469e11f973aacc00a785bfec7b4d71bb9383797dd8d1c50ed100a2b5bfdb6943ab0fec578a790866d58a6377ebc503f5f24cdef1d7eb0611d08cceff9f229cb1b32eaa26808af93bbb0b3e443586d02f1b0777ea992bf2d631f046d9bdba010bf81b703b57253eb9ba28416a20f393f03c3d3469e26d7cd46108ea0138a2827870631fbce542c94c57dfd4542b664d8b374daf9b448d4db0d9cb1ef7a053fe60053b0fbee6cb95d1f7bd45a4b0836c387379a7d53757ab9d86704df745eac13ef438b8c864fdae10f872e4185a07744e7a6c1eb71beb1f9718b1c558d5e4da70d0460ac1082434444cebb8b35f2bc9661f3b58346448df6b37ec29364e9e914a8a2e4e14d99cef31c6bd2b0b99daff26f61afdcfcfbb1f3584012e97b81615e9d22c177e243f04d98ba02428ab825af0ec5e6027b13a934b68d83f6046e2a559cbb8c9126745a900f86240ca941fb4b5b4a61076ead3e41a56199da79eb7fe8647169931efc599238a7edfcc82b4ca63836cbfb201a1eebba39745c23b2e9df9bcdc9324825b766181ec2cd77844d65ede6d50ecae6a532167d09f02c70d98d55e50ce6e9f911d464ad067ad834f36317ce330c8db48a40244ea4a0cab58186023200b73f34445c212d944c20e9d1e3e101ceb5e3b3435ed8b3dbf0239395a0e66666b07cd4794d1abdf81b51745f75527538a6090e3ecf7407adbaa84821a64af79522c4954309fb16088c51939a27719658f6ae7a8833a2f2887048fdea2dff82a0c4d156bac5fb55d26c2d30d641c8146cbe50eadabae86c141f6e64bab34ec20773467e46cd0e3b5a3bc4f43541377ddf1b019efd1dfc02e2f25bc9be17591b4927bb7066d44b093fd6359631454e93734028fe1787f584fc4c6c8371d14164da3c329aa9a8a01aa1fc655a8a6b25f84e80748237508600482716f70d9745a482ef8de30d46b7fd2983e3272cd2c35164da534137a9da2a327cd5ad82bd31da198f372818e8f241cb4fa5353293e1fae079a664906642a2e2a2bdd12a445e433c5f3b624565ad4b5c7c560c08afb0c9a1d19bb65b45871ff457557008c8ad62913159ded1fb5b85c2c4ae8e2ade2a6249ddee39010af9b7a79d6b18dc56112e325824775cf2f6c5a28be0dba4800ed7b46d866e3a048f1c4382004415c3fbf47a1953978266ad3ec5b20d1a4d14115d458bd6fd0bd9ed5d0441f096714bd0e580e90da44b91d5ab416bee6698ff6f58c5ac2676b593e5dcbb14d8f2ef330732598442e378a022515d8ac13a607988e62cd8464f8058ec2eea8a87d1432335b6b49a223644fbdb1831bb2beb6e151b511acd37aa2b2d495732b11d4a444c56a8dca2652fc93c703dc4f599d832a522f55ba6020574f5c5762c57bc975371a8dae70762b3760558368adbdeea6602a04cc2d4fb093a5ff0b1413543980b61806747e9f60251ae0c30bcd585fcad37782a4ed2e833734acc3052e6ed8654f7dc302b9c7c6147d305d6d76cabd97140e70bf829bc6aaf2c1ff224f02ba6fb60b35756e6a92fca450a18bc99ace3263ab43a079b973dc43cf02bd630a8584d477412a48d3589553ec0dce334227208e02b5bda96b28295171093a0e09fa32835cbbcd18da70d47b771c7a3846665d0abf72e113b520b858604f58eb12282d5d63cf958c0c4ead028e93e2496bfd342c06d05d97c650472b19cf8975409025486ab14bfd65eec73aed7c2942cb32136d778f68e5dac48a3083ef78002667e35250b2585a18e7c5511a7861aa728833922a104e573a130d9b88da7104cab4b6a70af3b993a25301b07986a5049b07d3fd950dd970c63500f9f1e36fc6380f25785f477a312dd9aa70ce90d2126486f718366f58699790334204b6eec68ebcdf971eeaad2c959e9337c5267e17163c2d57bac1451cf395d483d8c5591bc167c439a22de9ef4fca9ddcb4e1aaa97ba680fabd948e8aff9d04640492155f1868442b7ec26e6bd89f0af3b6ec7dba6394473b4e64912819450f1b5044334ab75630d0c0de9c1ddefc33abf39eefc1e343861321e5d0b3b4c40bd0473748ae86c71a361116ed339dd6d99a0d6385d70254360d3bcf8572a89d6b172a3becc7e0644c200b4c9e42a5e82a4e8cb83e39371363866afd942dc9a022a7b0f99b63d59fbb30359f553016a9e2f592a747e95c7b68a02807c95368591d0f6f643c8ec38d265c2d7f0435d3884c09a431ea036a1c6eec564c544ad14aa00478cf39c9b44199f2f15cb9c02314c0138e8f1ca079cd20c0b678a17add03b389c780ff998c0539789eb73d4a1db8635f0ad6cacc2d40e9e01d8421fc1b8aa15c7c93223d4a4610cc127b3b37880f7728d977a20a6a246290708879e8d06d0705e4ebc9012677dc62c645e349abbffe2e90e3de63bfba4b710380d3318e4916a9dcf0459b4061f7b6185261b27f6e96f706962e2e0bed5d2a56d4ce7a6401170c1de828ae3a765a6215b757570bed6828ac6a5d5341ac414cd03d532c1c368cb7a58697abcb44c9771b44fd60dfd923550de2892d95d790674a55be95510815232149f341b49e19a04d565052261d8cbf0c2ba04e9e3420d1cfd95918ee853760a7f1faccfe4c0557677d4cdad92d0e34c48e12c8886f70b8034ae6501f38057500f4418fbddef0c5514cd4f45d5b423639021944bba40bcd8d77196e3e7d6d132d025fc72d0b9a8abf7daa939db0939a2f7dd30440971dba74914a71a81c12d6006e812acc177e50f8080d0eb7c5e58824210088a4265c9fab45ba1181fb3cc9910e02398d0ac4bc371f16748ad61f929e8133c622b14d1c71b5a43b7625304cb4e4c039930e962ffb41fef6aabe4958030b4ef2d220429991b8b4c46df57acbf739e2c30b1bca87a829549b85f46e0435bf390ede5f7092cc5c72b64567c8b339e09a6d11ee40d184333e168c97d7c72b4d4c5e6f839edd71900047ad4641c2178720b8674e4f00e4939b41f548a044c7be8d76ab0e5133e2fa9e818dc0521530c0c06fe135717c3835ae1c0fd293101ead250ffc31fb3691162c0186a4cad23072571507c90ddd80d385e9e69480bd4a814d8335614d1571cf7860faa611b646143bfefbecf8367343c815fdaf827e0d4c4262032eae185821741dac8c34c398107e1dd92759ab8c61a234402c804f19e21a83f8149e64c215d86e4838109fa0e575c002d9e6051ee0b7c4c6df23d08e6eee002c1d690360489918645e06306caa64ad3660ee4ef9f5ed75d8553679bf84e25c5707446c3ecb775b920e6fe72bedc4167e9ffdcb17f2e34bd48f0f7664ae4448a0565c7dd7780709e2f2e2184401e67195ac04fe6afedcaf93193bb1dd3531e0740acebe70fbe3704dc9dc223fb418cae6f57901e76557757da97087aa0c520e9f6fb5ed682d4a3ebb80d4bf7b0511b854de895e454a7941dea7620582d496870ea8d6992e7b6ca795f2556d083bf42478e88ba25aec3628578ebe5b86ed0c58c4ecaf6526b73d36f593927f1b20edfd3c3dded0550aedd294530fbd929120bfd67420261bc07e89a8220f57fcf46969027834b1c3c042c581f004993489e75e04cfaeb9d9b151f7309cb15b160c14a6a43fd120fd66e5193f46c17b76723e90fc8ffb183c2f66da3e88bc38ed0a0339c7a66225c22d6d17f283de92d96e9e263086c7829184cccaf58c288ee0e671cb306d748d2dc13dddfeb22ccc738d8f930eea1b4226f5a72fb493b07acb81f7bb2a89b716f5e3bf497847670b15a0dd15f440995f1fb9fca65fc091672216a9f931aa465b289e4492e7f9466408052ace72cfb68a27dbd268adda8b719bdb68b271600a85f51642ade3ef625d1c8b494405c4d346a777697aa3c866e68602f67cd1c9964261a8f60dd021c7292d6298ced5ca578810004604d00440b1e261676748b4f1a0a78d81894ab42b9a34935434b822dcc991093a4901291d3187742b4b44558c7a4a47700f0715a4218fe41dcaf71f1c346d2b55cf5a6a60c19719e2e24e092dd5ff2544f0a6c46124e0e124c3773ed528a629fd9dcf17a02deda19ae705643444da3f5ccca73e3a326599d3e8dde9521105adfb2224e6ad60efd26e1bcdf411a45b9880e8f4a97f64f3f5e8c2a8ce9131c8d1a7a0b75c539c0eae5c853180fd99972f6bf5bb60677d646012ae004f573669c674f2e404133200681339df575f55bd9110ccc879f8ed951ad44fbb18246641469ba32f8ab0c066c2196b4082353f79fd6c604335f1935c590ceb75bdc74870bd0f5395c4e0f8e712c6f7c0b11bec4320696b18fe25c84fbb7e47f506219a648acd39da4a1d6a49d1c41ae92e4086576fd88eb0dadfb5bb216cef4dc4c52295f2c1434fcdb4dd09a67b184819494a5586eac33f401257933d818e0aaa009f97555a85b184d0ca2f6a422dc13ad9e066555f3d8e23338f653ffbd0b43946a389ed0c4fc89176a686f89a1871976d627d10a7ecadf1ae675bdbe450185bd5a42fdf076f20e91af6e7178bdfe10a1ee5c87d3de6eef4e4dccfe733dd803e4eceec8c8ed39052c9f79cfc912d0c5b5072eec24ca590274e31f4dd8a83a824cf274d8da3909a151ee4b11bd0ea3893aeaedfce888525cc098b90138b1585f33793fa67c7bf2223425358e7027669ac4367bf5835a83abc2964eecfd99560bcf2689f5c0eb8dd3d0fbb4c74bb8bf8b12bbab9540de1a09014a3cded1294ce79769792cd052a025fb564c90f3e1cdef235dc37e681aa5634dac25e8ab7679135b04d5fa9195b8b28c55b2308cd843081992a52192dc999ba1b6376be0cddc5a6a8e16b555c812b43cb84ddaf988d92882758c527ea1ae3cb2e01acc64ced5e9b2037fa76273b8849e28a89a887b73970c505e42ff95c9bb0377cedf8072d8e2d2546d2cdb0b005036940172bf43eb132596eb23355d43eaaa19f387b69e2802961f2b772a609f04107a150a142aa77af5f68f6bbea155280e73e4b75fd41c8bf61b62864a49d1e6c62cef26666b1a7b4352583e45d67880e1a1b146f146a5f35f2ac7d1d7e5756eb7733a244559f518bd3899e23489d0b38cf1bf6d81ecbac0280b27dad408134633de3b5a2cd0ae52c52e4229399141b46888f3cb6d1dfe6b6930c3f9c1472bf6e29098675916f63f7a7e8654fd78135752d5e893710b9bf09b77608c34e01dd3b37e9342cf6a51899b6acae784da5635cc53bbf80d14eaf5377547a1c98dd25332a5e6c54cdc791bfd2e9b406a8434f32575db1ee56188aa5437114e12856dd99e0019fe10c9097799c57c7f3b1e5e332838418a24dc6451f274a0767268a18b2dc1c620cd3e28aae0f4117cc6048d53abe6c7c37fc96a13194bbe93ae04f7ae21dafc11c45cb6149e8f521fad7db9919347a5771faefd8f6535278cc4e6ef732f0d44e27e2b358d4c32b1b75f5eedb2ba6a26c9b407b8fb0c04ae9a13e93b92d4aebcab6665e8a2105ead91ce49b208fcc378191943d8923f631e0e27f601d19992085bbf73159072a20b252d5b87c0487b370c27b192eebcd7868a39283bd1d39c5afb2d19a9d8cfd767000fa32c1aece062f9f3d16b1ba716383ea10a459158e37613af9cf19352a9b85b15ba53f455aab397485d73693759640232bbd429f8b49b604bc2fdd9eefdc2b1c7ea1302cc3f0e543a215b2ac3251adb9cec60e835a3091f9662c31c6cbca70fdb0fd5a1b8458c05aefe87b85c2001b08790b663887f3c52a8c049bdcad5ac06e13360fc981ef204b70d8cf70e81375b486465bfdd9087380e24db440a7f8239344813cd2fb5ee6e6e5e972fae8a8254373bd0b8ce58751c1441fd737968aca2f6ae708e396a60d5e40757ce48116ffea932341905e4d0659c33a73dbe49a6a8ee5d5501f69da298b0e21ac461f80ac903055916419c13980b55ac06c39497090febb865c70b9a836751f47889d150566e4b3fdfc4d0864f345b8ae3979fe88346b81b0317abf1d6e5cc97a84432a473747de2545be1a37bc6d2c0759cca553cf7cb67c4f3b30b7654e2c6893fc7b1387aff145c372c32f074a22cef729dcef995222a72bc5d12a9740faaf62b6a070fea3244335a7d7d2945561d38e088df8fb1a7ce7a7a8fa2163399b4b20d32f8923b2985c172bad3c8d57c2bc35618dfa224f9f0d8bd807c8894f3198f2e4970edc333a0165c124bdd8012fe66e89e8b76f930992cbfdc0a2fe5c389cf3e253fb4ce333ecd830a03b5760298d3fa658cc6e9d8d52d4e91b3ae9790f896941595528a45620918c10a809ac1d74be4c2f95019bce61fa9eba52301b6aa45018a07309b95bd3936ad85f8857c1fb3109bb5dd39540103ef571f5c65bcfcff6549f167bae35f180f8e6a318c52ade95a7d9495009da51b6a6f98a3029ae36c353febf6cc367a092005ce96f57b9c33a2704430c75067531aab73c9bdb86d38e7abfbca6ee140d7a80631165ad59f81aaddbe507f77e5c3a72e69cabdc95fc87000ba52548e65b2fad3fe0c133af8d3df08eba4c0e43320f8f0e043f720f5bcd144f4ded0b2e768cab13b9824056205646110018fd82c2d0e6b15063d8bcdb21395deddacd9ac9da4cc54191aac20d038d8b76d23a21b045f6f5f9f195cd43ef4d92858e791779ad69ff9f713c9c16709674678bdb55273f30a5841b4b4c34aa63b7549e9ede176c3dd8b717ad378c3510b745a6d35a08cc11743a5bb5b4b708a087c7a4ce5ac038c3266b493d5d57df81749b2d5c8693fe9500e431084b3a02a4078c63b3c87aeec3b7b73e65e28fa53dd9462bfbc8504887cf476bb917067d76830fb03e48ee9b0403e049807ee34b5186b61e1147b2dd80f0ba6f201c5a6c60ed4034bb965808f5a8b69794b11ca9cf0b94ff293cdf71e6322c32e5abfb04821c1ac21541156c32e2bb3fc52216b1f0eb246c89a83c6d4b5b13936f105724a1afbb612029980db6b97be9a5d83ca49f1d8a13611b3029af558230a14782b7f8311652bf21a797cdccc49f8eb16d4c2648cfd1b33ae14bbefadd314d51735e3d0b582bb573fcb8a68280cba327ab68c577db85b85e5deeebdd43628f70af0696e5cf973ab9ca319f2954cb0ca2ac4f028627d29cda5145592c1c27e45f667e27652f17e8e845c75a63314f4305ad445e4fab1f3ab3bc7ef2350b794dd752e3b17b1143d6220eeab0e43aab882156123675a8261519c954970e3cf206b272db645486cf92345973e1d1e6e9c87b80f708d49315b222f85eb6752d15006424a4c7e49e982575bb5d09feef2990bcebaddd0cbb8ce98866687b9505897222466e9ba35d5500d01e8456c3154a31257ec09e544e6e6a5a261774450a0cb01e869e7209ed77bc70f3723cc7de781da527cf20e36a5bd2ed0edc89d6ecc1112831910823de85df15e91fe8230913a0d207b20de09aa352eae5834bf10c72faecaa7a65f52f66dd0d88aa44270efff23a4bb3e67c76207e43a4ea1fac905941ba480196f3b3b06a22928f6d83324890248801bb35ca406bf9d2582366594c11a4a258261a56785cd7f0289aba68d12d2e5157a856f2c95f020b5f930c37d12371c8a7c6c37d00406bee5efbc8a948341fbcbbc32548c1a5432d3a5ed338753bc2df04080656b66be586c636facbc0a52b2f90d2a939237a59e6f44a111922f1999ce641c6cac1db04b4579746573acabdd6648d57a39306b65d7046d601370f1034f64288d17bad1196d9dce4d8e25a2ac181b4612ddcf4a15f582ab69630b44947578d583f1d05e2ca81432d209d91879c110c7c7ccc0086f91c181fe9b6e4f2174e97a5f48c22d7e3e4191d0e4d9fecb8f5cad25a4ff07b106f9d23f4d70b21f1b82bf43e8118b40fcf94b40cf633e7c374d829fd19c63ed3bdf6bad410c7623409c0e5a79e9ae6b89bf84f61d140b8bf793df9571271212b6d4418f2c273a0cb48dab1b15faeb418324fc54530d0916e90d2bd77488e20da0cdb6b4829d1cf9fd8a2d30f0f1753e36368d3bed48128f8792f97ed6779ba1bb0c369994e15b84f7c04fe02e0dd65f7c13776fafa0ebd8999e97c74c948f7daae446f5bcb5c2958964644c8ed4532df038bc1d1df385fac0b1c789b1678e85ed7ebe994d0541fa21bf390c9747c7be28859cbbfb4a270ea1d299572f8d105df6814f178c40a3487df14347d08f89d2c4e1e3fce6f5b7b6fb05729434c3df73ad7e1ec5e39a752cb4613ea4584328edbede10abfcd38dfdcc5c93460527cac90485a82e05a70a194e3060fc4147d74ca25195514646a48e6410603ec7611c44c464731fa0a52860b023b35d23bfafa526394087938a8aa05b8585ae61d0a1f532bb00d51ab3ddb399bef9d9549da7c257acf402dac872312419704a5abd9003e6aed806bb51b47e30e0cda5b052c3c1a36f4b72f7ebe3f9a1a60fcd320026c59f81a8226d53ac39cdb70f909fce7f4164ce7207e790b418c0252fbc1890fa12f2c89be0622a10aa518ba634f8887f82c6c0c3e42a2afbb8afee44152df4a76a67f9cdf2b57b8c5ab3e7100a756f2290db353ea2e3fb16fdefa2ec7baa551e1835fbf0531be186398f924f68cac0fb22862ab9014b35ff1eb428003ceea78b1426bb39fa20969232a6392eaa39277d2fbcf46dbac2096401b4a10d5a32fe70dd0b1e314a4e0a616f472a943c769f75cf5a218beb511e3b857c95684c2debea803eca0edc357268c68d4019065c86c68e726e32fdc3ac2486e004b01c068fb4faa355073ddc7afcf93759087b776acebf98a8fbc3a15fbcb984b199c4c89d857f3339ef4d7e93a81dd0f5b97fe5997f485996ec006767b050efa0be47c64aaba85cc1ba9cb5b7abccf02d40cf6e2aa846447bfd8ac255cc7467ddd9552d1190c89d3daf9f1d2e260cd641784feaf121d60c277f207a822543e1b6653307b04e8713be01bfe8f8cc6fc82193ade4fe067f09de1a39e46482dd7ed08ba6921583215e3d41767fe1323957db653eb124ec559b25162ba5c8c90c5305d79ec647032f7439259aab89e1d229a95f0b6ee0277bea8ad326fdc89eeae2c4fb62224e185989a133f59a0630c42eb6b16573d1114a912df1cbaa366afd747527320c9d3b631dd9ceb95919120d17186cd8a50bbc906aa16dc98b1ef92412ac4c95339eebb334fe0cd3652612f878882cd60ab0588948b011f20f554722f9ab0fcea97709bc64aa99259d28794d84106b577e4c00a696236b053f41d29ad868c4eb8928dbbb102f89c476d34fb366a1136a33ad42a4c6e65bc5d49d5ff4d7d78bc8e1243ac3cab0dc125e255f77e1d05c8afa37a073b580a8953ef2088375e6c7fe0c37f61fd2b88e4cfc253abb20712acbae1787c969fde9208504512d9ea69b92bcfda3e06c728e044f5dcc3837453230feba1da078a5113433459767095091fd8a85db3ec1eb001b0208373cdade4d0ace89bf0e006383472bfe3b0e5f0a652d339c6a91f7fd2bc1fc46a97cb6fb345ef47ac09c41504614eceab00cfe7f570b01c4f25a8e5cd0e10d3d55b20dd557affa316a779b8b7e42d6395ece0b5b8cfdbea2c921382a4727403514561947b6e85502975c60e8785ae27e532c7fd95cf1750db969760f7dba8002ede908e5a220ed96664caf06eefa963aad62c3cd6ed3ba20a89b97e9536d074d26b13afedb69564773b8b3b6faf28e9888deaaeefbae7ac8edabfeabe873f4572aa80cf6abd37ca9a40e2fc4103a18b4e66bdf02b43e6ed15088bb2d3905fc6633ac82ad47f7d0c9362f6cea18f43dc3f861264a90ecbae135105afdd8932025fda056790fde8fc3da867947fb1f77d8681c654ff535484d383509f17d5c57f32b66d30f112de8247ec4ec9804ade57d876958e9dc198048d3c89d96a9b70c3f8395963a265e863c50da4ccfe735d16d021edeab78a0efae0f5b0ff8ea3f98954354a1c6928d8bc4446d9b92dd6a6cd9d760bbea0be709d0bdd8eaea632bffe73bc296c6634f5fcadf42ca7230f76a420ab10dda82839420cf71784d7854c37e63f9fcc60ccbcc39eb1d84c0578b526641c5d64313a3274967c53014829af8db67040008fec3512e0b299ad3c5870bebf5b04c012d3ee4c2c44dd23158b3a5d8363c0581b8a4c2804cbdeac4ee8cff27e7d601fd1a8e847587647c3db0fbcded65eb384b2b49507c4b0973925bc794b14ddd8237425e9e428b7aaf8d956243b3c0ee60dc8380b9efcc34210f6518e67e773ae02985457b3a6c070a08d0c733b6334528e2f116d7e2557fa9c3d24b731cf79c40ef7768620e6348a3e778db296f410abd6dfeece86cb5b65e9d4d052f044cce387d1788e4a8ce2598e63ae74b550eb7e1da8221abb3772fdd3aba8812bb2e1244f980a6660e6f1c5d6c553ced3fa5428602f7060183c8946a77e18601265275fdebe8028f8a8cda54af60b1060136f2d8f908b5d825689275de2bbd930ca211520c39a984eac51c3bc3a749abff9d3102259fa9e1d124590066d11b27c42fcf83c26eb8cd9ae7184d31784c190d44c6ed9bf4ed696b1f2c3559687ad34c9cbc49e62db3e0f16622519fe53ace4eba6e5bb4022c42abe6dbc7fe1ad8e53595855bc43a2d34e6840a04d10af48213a095f2092757ad1a1b0eb3020cbeae0e4f73b4f0de5ac17bd6c4ab54b4b41592cefd0ed242bf0c6e272bfb08b43f2d5f63c099134c24bd2abc1b5662ee0a900e720665511f27115ef47c8d04a742af5d6ced5735097b188e67cf85c1f6fa6c712c0c94685cf0aed7e86ceb46f308b6f7f8606bb06846fca7c5e32c5ed4ffe7d612511da491350e6aaae0dc52d70780a22101f783831bc6152e8352e6a215f5437c430aa784bf44f115ac21099e973a5e8df71333fc09ea1593b670a417b51e7bd02a8503fb7113c2b7fd449c20b8b6e7a3f9e12fe3f211f608840d018c95491b2114decbbc7798abe2c165125828d18a829bb056c1f700a6bf8a89b2f4551e4ef3f5206d00b4c667d52a45350582f7c5651ae861d27a724e900121d547f3289db3d93683ea44591bb790e6c5c8f74b23b6ea3619d14ed91abc878ac77cc23aeacf082266986cda4c327bca3033d2cead75475a1ba5635214f5ff44378371374c5cb962f285173f75e18799b55c61f11b0b06f572f89264ddabcdd7a51806e683f43e6bbb36146bbf107e47a5c9a88577530cf8933a7f6745962283cc01cfee0d25d1b713d8915419f6357d8bfde5c7b95dca379fc73d6f0b52c4a55e08787bc6393467f715e16d51e957672c63be7534938ecc20de9604d86dd56a691d74e9d998eaeaba0892dd3649e61535d86c5d915708adfa5fd79fd33863c2f44c862de8a6306c8f7aced3dbf8b5585d4221205430b0ef84651cc52a8c7fffef87ff50d3b619f90d95b8f70ad38ea85213565d28baaf6e9a00af4563c42aa1259a2185d5f339100c085e9772114c2a6a9649ad8c0120fb1be881c3e41a8b562adfd63f1d302b380413594fd4dced99ee68fc70444162d56073abc82fa1eea52ae1c14c5e880c9ace1b4007abbd79427177b4882d5ea0bc9c1d56e9afbed17f2fead0db44aa544e00312de62a10b1c273ba1df477156e10e9b53aaf252c2e63c065782367e7f4831110f5bc0ab95e9b63a447eef5570d946a2a6f830a55de5472063d093dfda94e6576189b93ef383cdbc3d4a954187bfac50a932e44b864a465ecd40590fd0126142cb123102a3be70bf7271da6835e3c62f27f29d1f60a44f0081658a839b432257774c46091bde0b28269f11d835606b15871dacbe3307b0a235fe054b7669b4f493017ca0f057d0eb50fb2c9919ad6d3abf402377de9a816050a7a2e0390ba17c63b7db4eee2e7bb8e2c848792ff450fec54a42850a094e116383f2c340f27c0c433dd6c2c725710a81348055e72cdf208b3a88ff001a6a31b915d19df403d21f61e3db6fc77a6804a8f8b0863d4994504224ebef73e2f3cafbf88091c1ae2f015f2e5dd76f63dfb95f1ffc219e5f11191433e821156fee93df35f9ee1c6f00cc9eb3bc3fea3170fde04a4dc95a12ad2164e3c3a2bed0922e4564976554342fe73531c14c28c8469b3aabd8e19baec36885cf202b2225ffb0b89dc042453eefbfa3b7451c3459cb20df779b9fbb19dda4d242f4a591a52f2c3a4170c3e054cac3bb0bf01b26ac204269e302d70dc1daf2774a890c79a356d7dac857416dde4d3b1649bf1f25448028ce4ed393b7da145d3a20807287c89c17cb8180a5b5c282b1532b09e41b8930ec7684495966cce0a27d64c74640c50c4bcb0ff3f273185338f2177cf90d01e5cf36bcfcea33cde7ed3a7098f389b19f7b87a0d7c0bcab9a934c07875b98d4de690c5d2526a078ce22ecf9d8a34f75e3e77eea922b88e897884b8161fd674e3a8895e4165015208b18a1217686a637de0c8906059456b4cda72ba00debbc7a82f0867f08945b2de319b60f479121e5edd4d0a18e80a1620eda50e0362ef2fe1e58d630b03878d2a51043f9b613d72a4ff7a7318d33cbb5abaf8b607077a5e4a72e9eab3ea01ec0445d6e4a983b24f198f43e0af8e82c33bad35ee8407a7a8d38291fa1f497f528c0a6d43f290d6079103025f87dab7483d46510f6ee61608e0af17caa24e8900532700114659c4f4b450ae2506cacbb1dd51c91c158d706ad02bc04c8c9ef748a2512d66781407b6980ae2395336834eee7e6395aeab73c2b0ea222622e608768798287aa5f460f6fece1c1a88f09f365fdadc6fb5a44abe986f4ee804c14a2d598b46de1548c2b5a9b635be83298b755f4452bb365ba3af95eed82159001647b58c900340fcc87dcdb09deb1553822b67c111e28d8be7e246994b0580fb17ddd6448978724a7c5a70fb8d4b5f27aa8a8ad949715aea11b3288d83257074031b74d3d1f41beab61feaded19e322689fe91316a3aea827ec5d2b1d12564a614784d4a4cb40da7781c3f388dd0be57f939208b9d46495b7ee7121006d4fd7b1ebe347b80ea89c46e1343506695d187a1859ed4345b3dc525a2d7a7b0d2a17a351c160a7c904d50c293857aea73b43b1c9cedbfaaeee591dc26d91df66b9ae081fb29f911e575b9134a450f83c6838df73b6468a2157d7c474dc23242674cab869e477d1e17c2e65dbf2c319c50704d3529860383468de14361f97813372047ea4608b75566100a64efcea12f631ce118a2909ceb4698b72db4e44290d82d620a88b33f3e973c2926d3eff8a36160dcde0bafe054772ce8d11628e3d96882205bca4373ae1c750c032ce8cfee8b43b13dae360d6507ff5b1a8a0280fd11e194b623228f9ce3f47c19cb05e4bdebaad037e1713cb0e431e00ce0fe7ff5e908a4bdb10f17ba2d0df647fbebcdb36f442b836e41807bd7e619a02261e007e370b5e310c4bf8f9fc740d4258c0a1eed554bf937f5fb802dd600d7d45f4bd09bf9d815acbacb2530e23368d6545165248cda4866c0dca03f70db940ea35a53f82a968fa6af1c7da49942c811b5a0d929a170d1ba5103d080e7a58bf64080fede3a9c69e6d82c5508b1dc4ae8ebd0b2639bced0ac60405fb90da989197eeb68f7095de636b28e54056ae285d56f2ecacd824ed4b02146aaebef801257b0065d2a36e3f33a87e92b8cc551eda42809f2efea002f0494f54029d6d6a5e93139822ba1c0aba676897c4ac1d8299307205b308c8ff4670e131c18d5de5406208cbf9923a37e7fe081f05cf880289d9676acab028e50f1a72f9db1f3e87459685488949d0b6ac3885b04475daf5c8aa4a97b8fd978b4232962f1607a32035544b5f86d28e9c04759fe532505ff89f9095e878d220f1415a2587abd7476515e251765c57fca0abdc3379f1cc70f58fab6843a37e014436aef9ed16e997f183d47206247a4242cfbd3cf89e33ad7bbc8b60f65939471f3baa816c1b4a2160394a046507f5b80bb98c163298f79063b8acd69f18cb37547a46156f2b412be35250fb11cc1a9600ab4f50cc1142d0a3136f84774819e9569687a698a7e2af5d1a4ae220a3a651de3d7f0d3acb57f29926c19f795ae6ebf5119e867fe3782c813c3cdea35cc8713fe0c9489cc87e1437434d3ecfe9560b6ff41ffb09cedf80afc8dd01428ac4d2b7e37ad3c77de7b7751e6f4dcbe927b9654020ff89c9406b530e734dae32c318871432185b2a69d460eaca6d91980626c11052dc6339c00bef934dd882bf038f511fb119a6394a2f563096c53ccb33218b29a32159c43da487dc7dc317b07e283d95701360ab0a853e16781963aa69ea606597377878b32ea33166587742b64c81996509d0299197b943a9cbc4c22df2623d21c89e3122525760b3174a6b83adac18df62e185595cbb24946cea8414c4c2911b7d8fc497de79de88c3d90f8cc9d30b1b54046dc11db56fd0eefc7db697be8f6132269be6ed9e7e042acf7c85020c0dc010b8dfe68732d432f0f3406d22f725a0e19944833f5e786921e287aed3ffe22b611b3522e8160c7a69caf6a3e41d81898de4b07f3417e6cde0a64d6803c6907e1cd7800bbdfa770198ee0f11bca5dc65bbb7c9a912a896a4055ea83905105909eac8e9489bcf95773bc834dbc3797548e7721f74a8872f0888e4295801431ef9dda852ac8cf6ced38970ebd79990564e623376c9b315790273aec73349af23bdbd759700c15c98c4bc076d88c224fdc5dc17ee9bdb013c787d01f10f9f4e5a6637be980ba413ad5210456633dc0157d4cdf6c09ba6647fec476f7b9ce6be179ce0adeb9c9452593872a73cd4c785d5b50926d39d89fea73ac6ad27dcc5078beb69394cba4e0715708e4080a4f50d453fc27b7cb7ccb7fbc866bc89ad224b247e3df80cf0573ecad8042bcaeccc420cdb2aa9e553f7e80d73195dade136b243909607a827db0cc900ba1f662bdfe5f0c184e1f7080359cffa39b24098e9c6c6ecf4cacd1bac47df144c992585831aaa53587adf69ae6499441ab06310817b22d8dfa41a344c1faeed80eec4dd8ba9fe8aaf3b7d17fce0600cdffcb7fe387ad255a3703f3d132977600e507aba2c9588ad8553cb82fcee414ab29a9d80e293e58903dc65fb2875400a266d24138e4941af382391b56b375fccc43b2db850dfec18d1c5248bbb17963e40a992bce43c17faf48503dc39203a2ad145641ef9c5efcb1cf2a733b2474c257dd21deb751a7329bc6de6b3f453f7087ccf8511388a9239b47ee194fb39a7f02c56e58512fa9a41f05f203f1800cd97fc6646c6a294bc1658e3257bc11e7050b11965af9c3a5352d3dc0cf119bfc216bf831279a40ebe690b965f5395e24fcccecccb86e4ada5e080fd752049d2f1338d61290a982e12edb62e67ef138b554439117272e3de858fefa969fba0d9ebd1c81fba293ee1f4aee8a2cc47768aba692e0c8b667e62c6c3e41cbd94b01b36a182b67ff555b089fdc5d0c078a83f68e4683f9e18ddfb738f5f5234f08ca25b5f861a3ef0fa0aeaa6f1570927e226d41fcc049a3905539462b82793c02ed83a11eabd834258d39155db81c824ad2ed7536fbaaaef306972000e33b6054f50e9558c3a8f4d86b15bfc5d17ca098be4138545c94bf4f990598eb61a836e105cb73d4d8cef1f50f2dec24bd93dc17c9f12874e6be56b6fc1b538feaef31820c8186070631c460c08427d516dece4a8054c0d108154efa3789a33c3db2122de13818a257b8dd9b37c9272ad5ba2510c8c518d5d0c36427faa4947065c5a27bb47b02e3e6b1a1f4022d82aa3ef332c15120d3fb2728602fe3d57b1b95938f749a2d2845fe5d40c0a0256f35c402ceba3af010415a9005d0ccf09e233fbc188e799eb76308a037d058c58ea02f44df7e1d22e1cf041ad0c23325898fbbec266e5886fe883d5d8f56a55e77a8def3f79d976cd803f6408ff74eeeeba401acbf6749b61d45bf2bc6f3e693d8c4b7e8d823d8ff5959fc0c4147df075506db02c4f1194c41c1afac62c770e8aa1d9864b373be7fd9b824c7d25cd15587deb8bc99510db6f7ebcd5b9daa7f34e262f919f81a0f038d4036dda163152c5db82594c8b3a9ef498c2e9e4d42aefb3c7b84845e03dabd68a8bc2a2ccf50c639f19413fcd2a84a2b9f5d5a8b364ebd0d05ae606572337dbabafcd615da0f8b3c96976f3a38b627f1a13037e08833fb0f05ff8a189e508b29fd4b7b570c94129d584d65865bfcdc63c029eeacb04a90f0ca332ba7e91983ccc909417c4ee081db59376455a538c34b1371ed4a69b4b5b252a3f5d103dfceef3497aa5c52ea0e3611f6c8803d1f46032a0009ddc603c7b6ddb08694f816bea03b7a94c8ba6376cccf7be21913de519659fe741086feb3ecdbc91bef865b5ee454e5bba5df4b0e98059534549c7933bfe42878bac5e99dc19e8d8ae2e0d02c74dbb26587a99cee70395179ccfc80276aa40051a425aee49928ccdc040fa86737eaa963188ed3d301d03c83c4adf030ffd786d5060c0f7e0f8cf62fc3ba295514e2a073174509c52817a5a13ce4b59a0973ea9d203636f5cc7a954ed97519e974afd0db5fdb706e06806df9035109ac480fb0b5673b915118f675b283600d0de5f17d0f388da4448ca8cb8e250f8a1973a4c64f3350bc0b8b13e8b9af1cf910e3afab46fb08e7748273f27acd7508ce25894f7691f1410815460000c53b26125da69769b485ef981abde578c4c1ba2683f57343834daff360f9e99366e6cf8de737c4747f2ca66730dfd0ffbe921e32f1b0049dc6b186803e7bbe1790808504c440c71d2e256948474c34b55612af4bf14cf5afe8b374ba152fcf318b5b3d6501c0f0bad6f475090530eba4431fb868b0e6e5fc212c134e56f19759f1ad8de3f1588f8d7f879dbd689ca27090d7e35392765e47467404e5401e073a5245c131abb0e3500b21e30b82bfddb1bc7abb5001c56632c0c73bcc38c7e89a270754416f11ca0602836afdeebe9434dbceedf329ad61223f0e59876dc442ce15fe5e5ca8001d78ec4bfb4fcbe18103d5401945b9ef19f373c50faa1e74251b7fa00549ee871e18cbad88c6e1c71733fcf7cd7f265a240929748bee3f3e0e76be22f0cf245171151e2c21740e204f6013bc30050333f7d52d9c0a3feb72dcb7fae3a22f19d5a7de3f8bfad4eea9e06b670f7e7c09f89111bd6a041e91a657de007e83995466d98c64692316b98993b5e85464c079cde63b48e869fc97621f9b9a592d24c86b4eb88de5b84921d5d875d79a40ce74655ad2c2d5ccdd978351e81583d21242de3f3a9e1bebd2c639c9a8d12264591ef23e4514e43e13ad63baf232487c2c7a6015135159dda1742c7e5215cc033b552518086f41ca8f2e9a1ffab991b5b3ac194daab5613cc66fc64028710d4790097acd85eafd32e37c40072f70039cb7036001b3fa105d1704d5a133c13227d7cdc5454205534262b0367b60a99db0657c997dae9dd8aad2dd770fb0b7e2bd37f32264b90804306b2bd17fead0772958c4706a5efb1abce45b8bb905ae47e48fb25f7933fa4b8c0b4cfa392f3599ed3cc5d20b9369a9084f654a775ae8996087df86ddbd9f5ec3c45f8072c49416a1412f2f680e2c6a39b4fc5d70f7e145eb94259efb210b08106005935759df6b2be0613ee8243f5514b3eb888caa9fee8a30efebdd8a7def60508eb17409bb90aa6c227e74ace9a31da11d3a115a68a5e1d58097e4f84329e1890b7ab72d987b53d2192ed07940989aa35b2945d7da7863e55c8ddece4f871d17e82c041cd52d7f185945c2c47731f98049e76e0b2d80ea44bae641a93b21f1cc9b158388949b198e79b598916ec3260a48d6993239e34d9cda57e6c7590c73aa9c16bd43ccedb608a032a194b589dc739e937e625bbd18581c88d6bfe3e0b8f0d643e53313365ce271e32313d4ee157849723acf717cd88314c8c09567e33db46301a5bd772fff8bd4cb84b261b117a1663354d62ae81dd8090ff259081f74fccb53a29892ef438e9a0596885db40e9b7246fe8db47f20a910015746ea89ffc6e66dee8d57722bb65eeec66c59638dba9c99d80f89fb625b81501aa99534bc9765b4ee208857f359d80ae41034eee77c44cd71c27a5c3f00920b4130d48c1a3ea8389dfd9cd2f0662d8e5e9bdcccc4c88f4ff3a8ea80f145adaf40468533e6eaf417bb6b904e47418b1629ff44f31b5bb0327f5f4a1090cb1b11bdd80a1fd710653a4ccf298f0c8cbb3d2dbd6b858210bdf14037d0f87270439bd4bebd5bc6213b60618e1b9651b79b32e62bb4bd3d771df3fa2a917db3e197c6291435639385a8934d94145c1daf540a9d78215aebccc805598ca77beddec3e6bd3ef79eec26ed18ce5ec0b38eb8741a41e34a857c4b4f2bc5e8eec18ff65d91460744fcf4bd35e3ede91df4d0a793f5989c719be836d32db30fc1cf73a2b1116874d378aa0b485bcc7a86a9674b830cb99b5a14b98af06c736e2684bc9f77932fac64d54124c2655ef3d05051585040ce0ba9d070ae0815dac62e31c75399043c8766fc17b020fa8776dfe54bdba58442948a8c7cc57618f53c68fda37ba615fc0323271fe6e37a4853280922754008c6fb2c5d3ecf10360d5621c314e3b592e454410bff2006ca1211d5520cda010092b4f3c424abb8f5e472357037d0a0dc96ec93cafac6ba46d20540d7701b4e2b2a77bd2a58ced4c84855bd308b7fb00f8d647a1c232d138d2010873530526875202e797e1749582a03d2b5f6eb57c80f8843dce53a70e461997dc8a3367fe3e1597a58c3f2b7035731e41ee1db647a51ebef72721481042a1922b0e6be828f6e6df7b09fa06034639f4f15ac882af6d1725df1fca8b7546894cad9c73704ad643c5d700347f291919500ace589bfb0b41eb5eb82c3ae0b5a9552fa496916183d4aa6f441ebb8494aa61c24a87e2cec4ce8e301411d2af7db5bbc986b8d3a6488e0cc5efc5bc80d33441b5dd3732e4d3cad409b21a99e31fff14de4302edb51dc3e7daf93244962b37f00513c95c6f5d039a61e2f00ee945489875a2c2a5abf11b89facc94769c54e732d4dac4086f400d8c85d25ffbfea539446861a60250ba435e1f21f7226098014c0a090cbe65a0e04e2d612e02b8879da8dd6dc9adc4a28150618e8bb32d3ed33026ebe773b357483a91784590aa48aae30ab37a29ed831a8a27e230d68ade89b446d734553fcd02481bcf6fd0fbdcec2b9b53c20083f20e6223d007686bce57d9003786f63849d95cdcac54a65a992cd9a31cecc08dd8c02737a29a8343cdf76ca1948beb31550e6907543273743d238774bd3fd4c4097207ef988a02ea2a4d57f0497b0a1a6aae1a8c1d697da36f253e3ca86cb04cb1213ba7f7d6239629111483154e38ed5c9cf328464d66ae3cc1d5d16a27b56ca54dcc23b35769a2b041a71f566e0d3789b06b034e9c7c05878ba6f4549d08f5dcfc809f84d385224e6edc1db07e56cf818f2f2f06bea74337c16e7182fcbd04450ef893338a79d27200257b6bdf1480928dcc651f35f2c21a4123f79c946b50ededffd0e3de6833096d984f295ab70985252b04ef7b0408d8e6ff66a3b2685cf7440ba13e4a70c42149cf114e4861a14bd1ee82061286cfd6876b3bd79d8c770a2d5c2c21b02c70177a828623619e1be871f9a10fa9a0030ea37afa899e8c3594c12913c60a7434d79700c127422fc157560307d9c9dc791112cc1d9cc7fe7543d34b626f1f72dfe203371aa129d8460631816e9f9dca5e3c38798eb7e10d7b04de6d7775a10159b7f7702fb0414a0dda308d5fd175e58dd133fce9558ede011299c2ab8fc96bb5ac843364604ea3548a255aaa8b78560d0f8b2d69b1f566a27d6c8e3585b382c95cb912900bd09e74ec7772e44683e208ebf14cd521acdc5a9eae041ee279e8779c5b187812350cb1b8e63d8874582eb3785a4f2321d8cf04e9a8bd27e366aa5ad3f0823b179890b1124b82d9b2246ec1accc5c2934990d0067010a3f271778a907ff0309bcd960cc8f10f23646d64365a5a2ffd28d5157baaf9148d7a8e0896c550188120dbad394b495ec8c60cce354f0de390974d29dcd2f51a7acf3360afc875810e932e29b5a42eca0b0bff0a841d37f68d1fb2ea1cdf4ee3770a1b6fd3f840843c85b46dff81bc648a06e7e71b7d26f039563a26a71db362b1fa8ad38f011ede190dc29ab610cd959d2b8e879fded34fe4faba6e8415899a58665c0a6fe67413c9268f8f9b20547c8f87aef20fbed0c86ba1c59e4d3424f4a993b785b0fc3aa3107ce4f5c2b096947e0a35162017508831b55596d33eb0983d032fcb33dbe344f89351a4cddff7b526f3364d9c237eafff650e90f62735e11c19db9f05fdef51bc4517be64987adc7823911a654d6661cced9690368926c4dbf88dfd1e115aee47f4ac0682987eb0f4c37e7c2457cd1aae802820b6fbf17a74b0f9057a27f77de03748c8d76d403045d3c660bb3e81977d068edfe71d4289e0d43995ddbf5128cae78f1b82c462ac1acd05e6c607ac638b97ef80a3942f93ad878184b1fd0b0e44fa1322c5d67ef9d9d43cc9b4dfb126925276d9a393949313299ca279c19a9886b0719a3eea84ab921355d0b5c8a5b7fc755f71f3d1d2f2d737b07e8a8157e01a3b2023847e571f7eae666c742bded7b132f335c5c8e68fad88735f307c6d8e3ab415ca197baee3fcda6c263b6a0bef68012f6dc9e7ebe9da19879091ae72df08cbb1d76ada9a0583ccfd811847316aa6864f35eb1b3231e61230680cb6f9ee9d3d9307c2a73f09351add45bc82629891e588caf90f3be2ea68308347b7410d6bba6018aa5091ac93f938c4bf14a1d5a1e7c83e4243acaca824753db27e8046dd31e6da8d4f9f56d7a1971ce8330592348453fb8e4fd2b23f401ce6a2068a0670019ab7936f8f2918a98732edbe58e3c7edae67d1210324fbb98e7d1ad95529c053a8cd9051334193926e33a97fc3855bb248b8c183ecfbe699a5714f0c4c325170476382d510ee8e3b82470b83e0d87770dcb15896a1d1d36735755799326fd820d78da0347ad77dca775dd63a1880aa7f1d91dbc1015b360b3ae129d2f0b0839d5ed0e6d1509ffd7903da3330ff331b8bfedddbe21e5318c5065a81b63651d177aa5be2ce6cd7c280ed059e7e1ee0a0bec001af41d0b43ed80eb95e696d5f7ab9f89d70051d404efa422ea5dd53dac70fb0736606e4fd178ba6539f0a5ff1e66be737d612c7bd3c1cd32a10a8a1c9b966a9388b3352fc30dbd3ae9aa65ef6b355e602cfe639b2d04d776da42187a23435ba60eed66b2c533f114256ccd2ff32c6500796741f020d79a4ee6298289ffd6164e2295e0bffc10d855272b4bb20996dc100dc656c52e20e53b6bb846a0493b8bb26fe5e03c06df6765576b53db1df4d1c186e047d590470f20f6cf8b97b612c3a1902628715a4be05c618054434bfbe371119a671089e4bbc4bbd89a5a37a8ecf95b63fae40f15b712b5b73ebe94d25a57f2170eee8fee6b702cc663885d01e497837f84db8212800374a5a20a207ada101218d44000a36650816722406ba491ec17d12938f9860fb2d89a18f2043317b64d3f0112f6cdc9af135791080e9bf06bdc345fbbc990c71c15736b79e9b90ff2a1bd82db2daafc9c1b320905191356261659e40222ce1f765fd45c6dcbf3bbaaad7fcb2c624620d40328b531a1d3f3794ee5cd9e1e4d5ae67c079001198409e9ea27253aea0595ecbc1273ae1738fea6adb9ad5ee69cb2e2b3588814db1c8c71f818b6de797d74e04d9017c90ffeb71ba2cc76720a423cb9b7061a334fcabe81a0692dd84ff5fdc99a28debb948c8386d20b842b3ece9b9ff599ab669ea1ace194e3bda9cace987101794ca82e08e9b2a21a3c137edd027947dabf3edc89ed78c60dc11fe1ba27aca1b8cdfa692c6c742cfdba7af2f55cd248b1d38fe00436fe0f9999ae447fa8b2b399128db4e4b8f155890dd38b53ddd2171d58134a2d57867cfe3a2e381966d307501c65e914656d5e511742c8fe1415f0a5e9431e3263e916598bb220d7132644ede25e81feaf93a82ac19c3a03f3ab4f195af06450b38ddc9d990cb135d53c8723eb8f37f5dcddae0472b58c4d152d08bd1a1f42c2782c76b49f6681f394fccdb67703d1d642b17beb62df8caf24fa8c4928ccd2862b26b45c24d03537a2fae1b0068d726e19559d50dab6647474ab424473d4f37646d31ff678a9630943a15f132276dee6de00691d64947c0c4245d0d8cf45d7cb211afa29879fa153c6a3829fc355bc0fdfd890f018075a467b70fb226fb4d51e69bf53c073adbb3954bc7565aaea1c57206cb78cfe361ac0b5a84360176a5f7c693ebe873c8b3e4a7f4369838db4cacdc9d381b6434a24cfd4d42da5ec850749a1cf53d7743d8896e9f40d8d58d2ff72a8c6cb3792fbb1f8ea19f53bef2f2f3e515e3588d6b243059c011e4e2c050ff8440e399f4384276e77911fd163435024a3f0d405e5056554d1bc3ae9ce51db01c706d5140a9629ca6567657453fd1e0125657dd3239e28bb00be5d4bafc935df0c2d2ee84c331b30b0000f61603348eb0009598e69579d1f1b82e5fbff3b6bab544a162e9f3f86d6d62d6686577f7ce14b903a90330042f042ea21a84d16a70dc04d053f7b9338638895c6da489b3f5bc2384c9a4db437731897491155b5bd2fbb789e3481c74978cb113b1a14eeb72f7d9c57adaa6e167f0f2631c57dec50e5879ffdfc91049ab23ba96ffe9cd9e62e74be9ea91b2b30f2e96d5324817a97134e44a7635644dad5ff2a7373de9517efb17fde84dfee4e7c97bd4e79aab4bd49974adeda46bed0d85d4cd1063251dc9d495bad9fd76cbe2956ce99a289d94ad9549d7da2351684398a4a46be500818c33b791a7ced4953a95f708f0ecf6d5a65d6fb7c3dce599b106e7f65fb1582cd6ac61a935e18839fe43317aa29baca15daddb5d6a981e7d39044df7c6ddaefed5be9c2a33e68de9bd163d97bb7b96411622079152ced82f6ba409ead35a6badb5d6a7b535e3ad5c3647378d2e844e1badb5107a14daf97508a594d26929a5745a4a299d954e5b2bddaf43fc71fab771fa7f9bd1de7ef4ecdb7aa0cc42164bc71caa8d3ad677dcd32317767bd7aa3b72a5239da07fb7a24e0ed0a26c68dbacbc27ad6f240107811b9b67f70370b83cd1c621195ac3a101bca76df7341749f08a3e248d1cedcce3359751d334784579bfa7d53bc3eea8236b6af4fe544faa4a83b54016c802e1541af545aea2c71f21d772b49c298d91da80945abaebb6b686a7a1a5ada5d1da69ebb531a489288d51a3fb6df0469b6e9286a31ea22e3f0cedac83d6accd94c2e01ea16d43987b7857bb65a9b5d66e1c19c21d8b664ae9b5165fafc61adebb2a33ecbefb7637de7bb9a2dbbef737b1bfb2bcc3963eb2ca0b5ef4e4c78814461d56c6b87a148210892390484449389bb9f3f0e12e972bba5c3647ebe0b88dbcb9596d2979c478c4628c31c638b356eb6ddb7bb562cd9c87bbc86dadd633582b6756c698ebe686c55aadf66e02063ca6c90c83222ed866b8c361c479b88db72c8f9b1b166bb5da7b369b75c07b1c41f07cc7bb6d1a7792fe8ed70b309bcd6647a840c6660800497f2360ed7c39578c00dd07ed9b6eb7d4da77afeeeeb6d33404027a19a4f2ffe98d80cbd3a7794ae77f8cd087fe7fceffa774ceb97170eb53a7f6e39c74d2980f930234d6c5e7bfbbcf774e4a77ff399fd2f828f839ff6da03f3b38210f3aeea741803459335d7baab707c9a039f186570f5a636ff681582f57f12457f2dffd69849b3e49f894beab46b96907b992112d3794e12f57b1478e71baf4017cdd2e2b7743feaec17a32ee3ee90de99ed3288b64a86ad928dd79d02d9647fd083a7a08ef7ab76d8a46fe135fed3c681b038a2dadf4a926595229f268539dd6fa69be0daba77edfc7bd01ddd65f4c0b3c2412a9f4c9641f8f9d96161cf4a9d45bebbd66665aa699273f998c059b1a9a98546aab9040012473176b6d135c6d61bb00638516346de5858b19166c6a68624e9c6069b157b0e038ae0556a75d313215c6b6a9a189817172b2b54081b182052b2525e5f4c20577127432f38142f96862a6f2c9642c7427dfb7828c46339373ae3191c5cccc98929c36167732fb29299125df4c77f27d3232322cae254665b14a25938c7573336d6a686266342dd44234b3426634da2c16ac146d92d5980a575e8666e6b6c02b58e42cf3c7ea4ebe2fe6937d9f4cc66231fab45cf1c93ed927fb662a8b25d39d7c35a6c6509817152ab8ac52b4a050a53a6eb39c5841a9a4a06c272625275389a447a29096f135c9a8c4e13962ea8b1914e1f2f1f101811022788a142992815a6bad95524aa9af5e5844f81da37c29e99c52bae6d1ee73b212397aaac466dd32332a58c0c4ac5c5e5229b815aaaa42c76a41c162b1a27229bb858b403fa99a4a7dda962215c318b6c44c6a2ad56519884ca9974d22ed989b64305c8c11d3c3c170304696d9ca95545450a61fd3ccd4638a99784c3f4c58584c56b46bf473e2c44ccbc9d62c2ec674e548a452a9643a99b40ca7e20a4a49b9df6fdb2749719caddce8c56595824b6d1b8a0a458bb5a92ec72a6bcfc8a860e57c8a8149bdb8ac52702525262a142211abe564341bcd38125499edb24ac1c990482519158a169369140393c2783b7951d1d18f3bd9082dc555a1c0ab1e825a4c5ab854e5f268d6a369299e3a0303baca59afab389f22038d9a4ab5b46c9517142aa8a0325d5629b854ce5a4ad5b5a0c83248715b8a7628d5997eac7c97227555285aba139eca7110c2d40e7ee5bc8533fd4061ad4692aa9cac5caca954d79df054affbcdb282524941d94e4c489ab5a51861f59252a739248e9a839b34347812b28f142a79007062a59715eb2648140ae523946623279b3c69bda144cde61bc01c0b9978e0ee9de509a233101a3560e819b560dd6424f48cdc93816420d377eee1743a9548d4b695949498c4937e77f777eb9f87c82524afd7ebf57abd5eafd7ebf57abd5eafd7ebf57abdf0873ffce10f7ff8c31ffe5ef8c31ffef0873ffce1ef853ffce10f7ff8c3df0b7ff8c31ffef0f7c21ffef087bf17fef087bf17fef0873f5a69a5b9071db7dc73c7d051c7bbbb7f8ec93c446409815d66e31783903862d41c77893b03c9a952da00ced8cd5801771f8207180c0683c16030180c0683c16030180c0683c1601776611776613b3b3b3b3b3b3b4460371381dd4ce46622b167d239eb769933c4fcf9f3211108638410baa5f3fd0493d29f93be68f1a2429da24bbdbbde7aebb535aa36dcac1cbbe1b6263980414b6c47ac006d6aa0584ebb784132480605c1edf1074fee968927770db7893f3a117edfcfa7e3d271e9b8a48e8e8e8e01e28fdb48e9bbb5b74deb1f3a3f747e04fd700219e42e72dba0209917248396f8217ffc803140d46541d839927383968306741cd9a1638fec70fdff9c417f011d3a5a309fe035f8f9e1f92d88085f949343849c431925e4a0a48190888c71669f8918a3944772823e074889b823881d40bc4daea48f28fde71123f65a6b8f009152de8b33c63e485ca0775e043e4876344d7b2438586b6d28e4e3475228c208233d1af5088141101d1e234e30a28426695d7bace6432a91483a062553a9f443823821e8c4833e4646603a994c3b3e4690e073e4064f1af1c0a9e474fa9e77fdb719b14089494909904f111ff8cffaf830c1e4c4c4e4c811663e30994ca69393201b5a2216810425050545f3f1794149488a4a4acafd3cf9a614a8a05454340f162972c48b9a1542841c86080108140ffa10d101d40a2af4803885c8411826768600e1f2dc4d7cf09c891c1f1f0f7844e0b0726265c567891f1d48be679f9a7082e5c489ec412130c811c2938317c2669131218cdc426290c362c287901d7ae0c5adf920f1e3e313b33b58595959d9dba4042c2c2c2c1ce77344c7db388ee3bace67899df7e9610154494181323a2207391b55e6f9c69116aaa4114e015ce41620938031be98b6a2ab628a27c68f31768c25c611e329e8b08120166e4cbb16d2da6b379db5a9e9a0859ec6fc83103c7040881daaac3ef1c5b7720bd8fe6febb4b1db56e9d4de6b2b9533875aef91544698c4b5d5d66c030de5ca56285731e6233cc8ffbbcf7c049dd5adf5caa3f3fe2f33e55036efe44dbc126ff4804a4f5ea61ae54c5ec9cb56a31cc9cb57a39cf6465ed6445ec8cb218d729a97451ae5b297471ae5b0974994bb5e2669349b34ca512f9f728966924fb42daba4a488e2865502944e60d628679dfe4e43e0ee79c80d0030ab5beb32ca579c3737ee3f5fa585aa684b0a4ac6dabd17673c6ad19a34ca396b216d44b9e9b5684d1a8542a15068dbb6d153fa454889e521a8ff7d1f85ea546650dab560b1542a15e5e8a49b86b24c4451984aa651cbe954626262928d4081da2e42d19580e84ac614b9a3b6cd7da451a51da2283a3589442a994a233a8a9144f9062a914a242a517b31c6a7d3a9049e5c2402ca41ac3cea4d46d08da228e8a5a06c272625275389a447a29096f1b5372f70e69c3954267743c60100b47d8467b9bb28f4c24834e2e4bd5734ca398b462138caa2d148241289b210199a48c32119a22bd24ab413fd872e5a28f482e6693a4a8c422277f711a59ad5241249341a8224ca3810652025bb6332994423511ee234daa291a8563f019949d03a3f6e496bd5ff2e81e071adffa428799a3570bd68e095521a1070e7fd7b3de7755df7ca1e5e392ed7bd31e7755d0f6fe4a11561a65d305c5821868b1735362cccd0c4b4c0f156d41b9916582c5a88e169d60c8bf5c9be197c33f882e0f9e103898f249b61c1a686260606ccc909ccd60205c60a168b941499f2b9e0628c17312e623ed98faf8999ca2793a548b13ae59c5ca69f99e98b0179e1797129bd54d03c54a850e1022b269e636deb599680e99c74524ae99cb4d26971c0018728c0ff7faae3c12d733cbb63c70ed7b10c614d74a19dbecbc88139813cb7ef0aa9ffa4ddbbd073ff73393eca1e2094117a3b64286ba447d9595944ce1fa4a3dcf1851e4c0fbae6fefe2f9353c2901c6d1a4af7dd45e94e654e018e9cd6ec41c7ed312801d27f4aba33a41052e8124a9963c658647bd3ddbd6bcdf973d26e3e843a1c84b06b4138a17c086313352f7205ad5bb98227944af323a2b5efbeabbbcc1776bfad6eedae3f77abeefad7ce6bb7db4ecbd5db69a9b5707ed7da50fe4ac86eefdd208cddb4fb1d6f3737de19d3cbb9756c6bbdd28dc8a1e3fd9e5c6b12a1e39e362090f77f735f42b0498042d7d236a49ab6f3c69135665dd8d9c6a4d8eaff0df37fc6f0da0aa9adee72691250888c30b6822ce37332c6edf94b013897e3a3a76007ea00635804a6c186b1d168180fe28b2fc6185f08a3cb2a37ad76ad5a6bad706bb66b6d3270b41b475e6c3b0861249e36e08f87f1cbd58510c2a9e1c65d0be37de3d69b077d439f30c7fc43862af716eeee2cb982d7762d95efeb427fe7dbbabbefbfdde6af3db7fbceddb2f65a5bb56b5de8777fee4f70df6d5bf7da7b2db5a1557be9f60defdca8bae1dd2d77f75867aba3dbe99e74474a69f749f2772363f5ac629b67fba17d440877ec5a93c2980b34524d033ace24374db02691172d5edc350de808b78d763bbe53ea94562b6d6dbd17734c1c515e23f2ef08e54ab7346f6e7aedf51b6bfc39f7cfceb5dc41862f6887db06dae30e79f6d030c61867b28b5ac71bf20fa4b511f631cfe3dc5a0fcc3288c60d655e0c7235654f8f5c390c3168cf5bba237205042d65b227fff498797e71ad2f20f00c1ec49973d7ee86c389f1ee58c3bcc191ab1bcf6f368b852fe48edd0b4e7a0d90fb855c7987e342bf073996a4f18d6fdc6f7445a9fcc5e62dfcc59b49ea93a1ea7f43df316eb9d2170852c538040279d4dd210bf70e403bb6b3ea11b556eb4d7230581abb6eaaed56ddb2838173a1edaebb7634e48aeed8c520579452ba63a0216ba0dc38d2daade5be79216daccbe572c56250d6760ba1bbbb8b3ce835a0a6be510a370d060843f71ca2bf034286df77db8081b831bd168b67edaeb6e61f0d81dcef0f7286a1195c03a4efae35f78de8c91dff0219aa5428cfb66e6a4bb30fb3ef971956b65b41d7e49181000a3246b9a3dc0d8831c618a53b0cb118e11f40861a38bffd7f7b381247ea04e14f97906d9e57e933e7ea4e29f950fa11f67cf5618c94ee3ce9f6990fa8e4ad5dc68e460208021223170000180c0805c421912448c25096e30314001051685478624a94ca83518ee2308aa1208631c420050831c618c20c0d4d1d027218b3afcb510ba79a94fba8561bccfa952986d9976eeffbad853a266fb0a0a91014ade7d007186e55848f3e4ee9d17ad923bd2cc26609568f7b153f261c8924c30018edbf4939d846665ac18b4aee0f47b39b4b87bfcb4c4c79cf52cff24daaf4422ad28b6b6aa5e21e35e1a755615a868a3c583ba7993551eaa93e2a3deaddd485f4caec9a9bba91d81524e99add294b211d7c7d775bea5cf12399b4b93eb3eb685288318e433aef84147528bbb0c4782f39f5036c497268ede55d166f0b60687f4ebea3d9c1806f6db739ed2a976fe3c534b39b34c4d40271aabc1c3bd57ed277f703eda5ccacb7513dc8db73cd52d19fd1cc58f3667114e2707ca2a0d6d1e948bc5a76f0d16c2871faaf3b37f3134110127590aadf7f95e7e21274a68656f1c60038b4d940ff481895dd074e261495ecc16272096cce1a8f3a7c9acb7a3556d9f9f270f816caf95ba427c1c4ccefeafcbcab2308e09f89875d130afd20336039668e8994babf57945811d9101cc05fb1c04eaccbc3a4363d676856568f8b500da640bf12b3d9e934f68ae24b0bc783dbd84d8d39dfb077e19d4c9f54c0b33ad56e2517b6a078e23081d124c3cb3b154f88c61f66bf92f71aa27954932cf1acb1169f03bedeee5db38bb917c0ae3933ad340b33722598d802a745b2aed17d41caaf8fed5dc54428c405edf159f48b11126f454d65718d742ebb4c86be07ce75e21ee65221c0323c312f8b896b1c4a363f9a30a711d79840ebb5dd0cd7e29d4422045eae7d69ada14c93ea19078918a186a97942cba2416d3598ff772ff84c0ba5b36ee0306221c0c6ed72cb5b819d9e33312494629c85574ab1fef5314d3c7188dda196ab3392405a7a1e85019b7f10f32227563a83d225dde21be3c1db2fd090ddc7ff7d8038ecb152aedae5ac0974f34824b03288ccda63d9ed91119cb9a261ed92e678e3041b34d4868e7c6d956c104a41191bcf790c0f483fb5bde14c16a49f540a985de3a63246b10756ef2746811712ea3cb0545e5e0253269d3b53086f949cb5ab032afec9ccfdaeedece0442bc30f998fd5d8d63a0f47be252f60faac04be9468c8bdd1ca8043aff8bb5c1572444dd1be9da20fed4c12516dc210db35d2798d15003679e56e3ea2b35c3d77f8bfa00a8f612a2edfcd6ad8b91c6bc1b8c36d551d3ad309b6c6c16b40e3d0ffb3831115a2ab0e2fb18b397e5a5b78649b3e44ae29ca18156ed5454f89f10586a546c2d26c62a4f2afeb64d2fe88942084470ca0c890ef4d8a4b5c782258e7d04c547682de89814c7d38376528674521b20b8224694ae39c1ec1e6292c29855964d3b510985e52de6c4b7c620a1551ad34fe89099dc15f51037e65c8b931d0d61a5d36c38516354d0a3f067e33b99407b27ea9da47cd0cc8b913f021e490e05fac1304a8a67cdd5a0cee79927416fb0a0ab7ed570521aa5c375a90a7608cbce691648f32f1cc5cbe4be74288cd2ad8216bb7304197b363eef5adae8650b568b361b81b2db0414cd4ddebb6469432eec2d8e933aa79070e07dfc5d9794cbd1df9b60cbf1788d4ab6d08702ee238103d824b15e2fed6bd538c66353ed5021efa99a9289c493903011833a24f032be77b586548992628dd9191fc1ad2cad1da08f0d641a1d345eb25f779decf1e7d80377daf6e86e29efd5e1bb4f25bccc97910cd2ac8a738e11aa927c2c515bee1495afdb590aca5423da57a5522daf0244b268576c9a0549e96023b7becc244bfb5710f04b236b14bc901570292e3cef0ca7c3144ef28d11afc9926d042572890892e8df6244f90fc2ab00238fe68d92b6fc105b51b1c9130ca693cff3322527d4c4727650be32a5e55b698ead62c801d8e58e6b1f32f815443a284736177c617ef0464d0bd136aa1a4ea7782dc42734e136b2305978fd886bc9d113c0992c3f08a97708a3171ebac0e755f191254ac0aecfa29ba579bb31777a7101b3e7d67aa9d2db95d9e8adb3b55c66d4e1b5cef6d4b2eacdafa0ce6a605445d677b46e1e3297c43a530d62fa213015cb437bcbaa723a8a3b0ca10add1b8eb9811c9ddbb8f7abe9aa5ad5d682b8b7c4ad1431e90b573b5b8c37512e10cbab69d8593f3e32c34f8665cf35d0f839eac96230b06bf1cca7445554002af0b5130028d22063323382a5942d7b59062f83faf934537e192a0105cd8a49b0002be3d1e1082e2199b3384b8563ae7308810b2d41596ad10de4ada7f2c582de54ea38915f5d484838810b5ac2b49089a3c84f54a68ae91fcb12d9cbfc3ea075c1de799743996a845cd89047a0573e16c307a5ba40df59fcb7a94040cfcd104cbbab887f4297b5c4d73e1452e6dc78a0e694b24527aa6d5b748ac483702fbd82354cf480ed80bc05cb5220c0984ad41107557396ae539f7b0fd462df51c103c214cdcaff376031bb3c48ced84d7d7a57925a9845f80cc0172b38d3f7597e3e106b1aca40343ef740ff986953ee42570d9bd17b39cc3599f10cd1971376e9be3c1240d11f9ccd74d90a561caaef84883a31177519a82434d10e38378b5349841c4518c607db0de32b133bd8323cd697bd044209b09457571f813b67b32d3e14f644a3c65a4291b146976581f2c20bd15d30168df83c80768d6510273c4e7972001ac01967633926de491ccbd7ca888ccfc719ab1752c091644028229548eeb93553b4e3b9df5f872e779a583a21d20533b3a41db92ad8da552ba0bf069c61d9566ec552a5f0849b6544889d262435777566e73a25eb5a94f26ad3625d2f1b04151a2381e64359944dc6a80bad5978aae48634cc4dbad9ff0f5611b449cd920b595c5ee68016ab4cb6ef7c87a175965294eeb72190aac38b114d0e2e0d9ce2cfbf22d4c9a9302988d41b6e42d2888fe02214348eb15d1f91527d0c1fc0ac3902a108016b4907d765b03cc5420a6cd34882ea83eeb8024662f7f831e2c37851bf930c356941057177a99d7d5e52e7c930ecd3f046a989d4a402f6a53ae6bad0089d495c263cceccd8b164ad5fc0862f2d3cd1279539846a034a14474b1102e7cc0633308d2fcd40ca4ee6832bd70e8c5beaf2bbb836c077ba556d532b3eee601779a5ef8cea37a08f2a3c294b5cfc8a5f3855ac1b2a05ce293acb2f3b451d18ca431df1066f1eae945bc70ff6fa389aed0079ac864e73d73899426acb445428320039d438b3c6dd163fd70d6b4d8eee31acb76e43b3c0e41b8c9eb9ba1f92f27534638869ac76eb122e498ac43e3507df39c7fd66b1fd1a744a38dbffe1e7977995cb9e7c97ca01bf7b5253f1bc6ede041335503b4ade3b900303842ff0a2e55aeb1304eaa234db3827d5be6c3d4d8501554d971050d165ff4270a2b34e63351443014ea50980d2289d79fc832a2931603d333cd2f76c09b707284564f89748663fd8983a86d6ab7e274245f91f61fb709be02839538e2f75af261f36e88bbb40df0d4e431a8da52495fda6b39ad6962230593a3133fa3e380cedabadd258dcb462ef36727d27f3deddf78deeb50189c23eb68c82c31ab0acc136c413515eef35dd02ee312a3f4aa92217c9498fcfb17db66ec996c96016b9c070468d4326ac1dd7c6a716ec8ac7685145ada3829979436715867c17e7ea01c2e1ca8ca81134eafd50964fe4e950c508d87b506f28cd33a0e4633aea1848a0c5d56fee8880fa844261633ebf62e6e8e9a22954b2d3e720acb880cd2f9d2b43ee6a775f9897188832522b3c946d56ebe0bea34908b9cbdec18206a3b9ec26f487b31af358ae7b5bc4406e994034f24dccfbed58ea35d6254b64969722b341d392ab54535dd352c920e764d8b5892a88a4ace5bf892f2f9028b8b94ee2e523b5d13436ee5a4f8375566818bf9cae4a46200c66b918e117311ad98bdb716b5cb8eefc8a9bbe7488d7050cdc3a81f586666db21bef5aed94e7c4fb17bc18d07a02d25db99ea8e5a24137c35b5806db40d4828ce300d602ab0acbf09fd8678cd484e2f60d70be61ebaf8427fe7647ec953e9d9b8c7133199ed1e555b43bb7ac31ce2f19d155715a7230802e02a758bd3e75071e85e0800abeeb862361ed267bf81e11ecbb3b96e9cd448aae4d26509930807725968767d80e8974c323fcdb237c98e23ab84e86534d436a42797ba5260df51f2854beb3c2de35effcfb673cc7454ea985d41560248c693e6aaf92d12b5e97f2b8124d65f5c71055ade217ed5ca94bfeb724c65f245f30d68e0335facad2e95edd2f6bc6b5043fdde1b12af8a33ce0c79eab88e4bb52710c5d745b8ed26a5319cc31a4b2194a868fe47d8e938691a31bf11612ebde8f6a3faf9d4afd28e751c09bc491c212d1804b93e62a9dd24c5c03fa6c11de4be1b4a92defeb158081d4a8e36a63fc8b9828d1884059d4a5813a42dd2c050ab5a4a0a90949c03464669111ca728190ee861a3b450a7d3583e4f99bf1472ffc650b3a8eacb6e29c6fb32763e8ed2591387551c1fe082c51cc5c161a58c503b23298562eb1296611d418cd20c9ab2b4610f491178f2b4db20fc77f18d03af1b57d4a0e23829dae04b844b8271b87b4e46f057566b17850dc45ce1b6c3f6ccac87702ff7feb95d869f745fcd50c4f86187facd1245442e205784cc84eac9b972c3e8ad0737f9d7773d2d6623172255d6347499601dba127605bb1362c7cbc46647d2689fe8534c67794481a91a77a103ba0f914d5b5e9eadd9b27e85b39a27a2d80bfd68988b078982862ed9420aec87d71978e5004502eec3c88cf9eac695046500d2fc78593a2620f210776ef5d53ca67fc55338df4f145e30a33dbcf8ef0545126fc32e2dcb0f3a128b54fba944746a625f248ec12d91d8897424d38c7c0cbd7a89cda21a54e44d4d8a6b2f50b57819052ae549064f9a79ea829a63724a6ae17fdd773c114e87c7a5f2d12a0be163ab2c25d25896b110a503a7f34650bc04e375578a27cbd97f76c45e024cb7287e9493b814a4f67db5a8c4223f5a34eb864be1549d34d82de57cda30ceb7717d2d7aed9601811d83452fc673bd1474e54b605f90fea7850b1846d1c22b5e0ff7f283161d8fd482269dee8a603402c4fa841aceac23962d236e4ab58e212ba76c6827e03b11483c3d00f5874b90f011f87b4aeaac737bf7e977a018f13ef5b65f50101f7d73eb1c3604dccf7360c8b08fb64dcbf036670e02a9eae30b4844f393e391a64fdc0c88fd2835aaecf696d0cbb5bd05f888228fe284419f49496b8bf85795bab7136eb1abe0918054d7d32e8b288b5f780c14e03a232f83aee4f550557b12a7891c5dc064f2d1375c9d6d604bb99853482f4440b63421e9ead284f6597c2bb4db1e70cd8ebae5321237c46f4aba4b5b1b16ce642e6151b2b0c929746310664dc0501b20fd9d64c6ea930296273966dfbd24625f1dd40c52e6e80f14eb45fa56a6c40f81d3de38ddb231a25fc0842097c320b7534fc30470692d7ba09747c370b20787d35f296887d8901502c825bd5c5d43b556b8380a4a1b24d8133d634dab12d3a5d106f32e40d7bba1e1d7b2dd3810c102c0247b528cd0d0e774229f35095495b2d556088e70ec4a079ab46629edc9dfbe98c6bf05b97736935eb0abc402752b16f8b7659a1d63f4015895e6086aa25216a380f0e37e29aab37c40ec5a9afe97126353f5814d14e9d62ab1b84e92f946ea54f42c937add2d8608022381299c8b48fcfb69ad74dfb5c5beefd80ec57f4251f6eda02b2048ea06e388199602ba20f11b1e94cb31d0de8b3150572b0fecaf8203baeb398203b2724f667bfb9bdc99b05ac4760a7c669c0a9de098f5b25aede69d7d19ba2ffaef0e5de78ebdd976e59279c7645404eadf19d9f76b9be69d41f64a31948018211915433181f2ebaab82e2a2c2a03fb65ddc4c9fca3c4c11c435f98ef8eae05778c29f255852b50ec500a6955056714398c694ede82dc0e9f6427779f2777ad102937713f93289873ed7172df6b2128c9a0c74ca31d841c30e3fa2b5000f69684da469888b849acbde2fbc8dc0650a7f8f8d5eb213c7653337d4bce05ab3c6867ac40f424870ef64e03e7739be96b8b40c35c97d893307b86e87fb529790314bcb1416ac5e4b41b33b920c53308dc562264397c2c889f3ed59c14f38bf01c3e261b3967bf7e67ff19a462fbfc357cc6749efca173b47378deb9cf978d9d1f3ffd7e7f1339fcd9db8d5e96be1810cc4a50bc228838f9075f2148092a34257f9582bddb11c8c2fa68313d0fbae40c02b940775aeb028378f202060c5c0241d0388c1725d010b4088e8ce90a27271cb3c98224a6734e99cbe75120085266c72196772bd38b87152bb300c9a476f580421f0588457b7fb3186c08c4e2ed40723c5f707f8640b9b8173333e4586579131510bd6f07e3d46bc5969edc1b113c8b964dda77f5a9105effc2612dce8b596aa6cea9306624ded5001948a77209579ae83f937bf0bba805d3ad12592af4cbca6ecb04e94345e8e7af8be785cd66df222bbcf3eaad7704351034fc3a6d4a0662f1af6796ed5e208cd23124be0e8e6ecfa2bef6c79333f1aaf897359ffc07c91933c971533dac357591bc81c2eed12c0715ce570bd3cb075a23a16d646ac2736206bb6797c3fd17f7c6660f8cc0b2745519ed6f6af2633b87adb05733404f6a18266af374fcbe0c060f0408c33f36ef02590253f6f623876ef75407ebe43d0273bc94a8a30e321ac6da0c1d373f08d84ea065bb9316e413894b2bf1942196472a46afc4d76bd40a67fd9d1c04d32de9cc86fa0702badd284179e588930fc1ca2b3e341176993c30a4a5080e077fcb101c80798243deecfd00ff58918e541552a17a6c7f7d997014035f9d6aed054a024ba2be7892a35f91165569f71ee09fcbaab0d88837b9df84d9fd6c327dc1acc325405ecde3d962302f9d43a5a4203778fccdd5707c36185ed80854e75effee79d65136a14aa08985a86bb681ebd912eb1b617f1491b050a3f436eafdaca22b1db17b28548d25d6df8f1159b05931cb65400f316510a2f15afa142686ff7e26b9e6c986edb91b796a73ad8cc0e4be495bcfef74f273891c34a18e23e2e6a219be8171049a512a8b416eb9ca17bb833ca1b1b9b0c797ff9d43a226bf2726afab70d81239fcbccb401a9799e3038e1a9426af1df3433843035ae318c96fad6f70d569f2a04d3049020e19218d21c631436a49dd4cfb2f68228358c1d9de4b1d476cfcee7bb26a68fc62f107a47b1356a91a64eb049f970658335c7c2034caf1cd84f4cab5635d17929caac8c429b0986a10a83d891ad530d1d4d0c4bd31b0c086420a22ab6d06ab825c20e140939260fdc0c5a1c6e228a3718739661d0034003a6d9e81403c0f4e2e350848dddeef240d5429614a0d2d0d48a69c2ea4f97c2ea57414ff0547ed305e48b536028d86d40c2816aba42a8238881a5ad2c0ea02b7d5221dd4605c3f2bf0407f988f111718bab33e6e769069b849a1c7e9be89cc74d1e9fc2383ee90fad451a0f39406912404c488bcfd1a7666dfac21f11dd3db10d883a8a4b153155d2819b5ce4a68ae0130c409a2b9569a1eb53f1df9527af0778a1887401969e82acefb7e99ad72684983d2c7b312c289c7a2150d3d00170914ab1c69e8064b3b5a07dcff96e89a22a55f2f3a480395217e3caef49ce9f933411ae272eefc0969f6d4154f9b23ef7b0ca8765e1c3c1a045cc61a3ffcfa433070b739b836de454ca4c3762e08ec224a075dcf49ba08b186973a4d512c0f1d859960bea4cc0500117d7cc2635b875c045b0f908c1134bd6e3a1d4c18cc041d2328a4004342643d20df227253439b0e4384232191b812404a618bd5076b61f105c0c5c194261f4712bc058d926c6d7308063e038028a1f5102c4beb0b33e15ef1cb18e3aa46fdfac11d008970d9f90f3c767dfbed558a1371f145d2fcff1e5c4378817372b8c8e0ef042ac25b4887a9d2e6f0a93f0b4c3bc842b65e6acba2a7b2c2dfdac0ee6c6df16d9426fa8e6778f217f267ca12469105ee7aec6efadd678627245c9df6b3fb44c0e197a786918ac0390575062df7b88d3ff00835389d21f49e9e56da0f33dd0fac32cdfc707bc52dabb87392b56048364a8a8acb76eaae92223666a1f2c30238b426ffb0d639b23a12073ab4f7d01727bb0f4519f2830529695aeee2878f460ac1a30efca0757e8ca227152e83d5013c51b91d41c39d2afa50689dc4343603125820eeba21075441efa5d80235ee60eabf4c497b55474caee417cd64de3c18f609104f4448e246b333b10ff2429b631f44971a803dfbdd9752b07a7d24100275cdf8b3bb75100e7d30fc80d06a249392f3a11596d5392ef3a1f9cfef0ec94d70d387161db1037fd9fe5b905ef5c43e14a228af9472567ae8837f503b6fea8e87e6c339c7d5b32aab552fe23e05d27bed3abd5aa9650992453d7653485eff80fbef2709106ef4c8e01d4325a3030ac4953c7c28762946cac0124c046a525e2502502dd4fab1b2a244850f6a93ec268221066a29fa1f1d807bed9e00b3ff7be808a369216432d704a2f27bd009f5763f375d3556a0a5212a02ef07c90905f217821888baf496690933fc18eabd072a0eaeb8247c4e0b5aed6f8bde0348fce9c1aee5de975d3342f0e29b02fcbbc8bbe1086b018a7b10046d42c537788f6e18bc071e1c44194a154115036154314c38cbde4f95383a47a865a3227ff36a797b18c4cca8f282e15ddeec35fd88d634d3a56163f884a8570d58262f3a1d995d4d9743bb2c860fa889b43cf9801f7fb607b24f0b2e525718c2e1247d7b2f9edab7aef580166d564aa8225f6a72463b47eb8de9da430ff1eb17a506505ee783428cafa4d57c18dbbfd1d70799fa563e581679e08afc72b4fe539269d5e44c93d892ec83889744cb1b5762744313373924a217432ffdc83795d06a391a3e10936a0135b91de07a0d1fd0d75922276757f361c3872bafaeea1bfe602152379fef87399b03c2a6ed1ee2088a077532b3a3d34550661019ac8f7b88d27609c90eee7e5c0a71e3f670993230b5aebaf740cd8c9845fdd5f65fd6d99724fcaff57c3304448d760f0be3392f07f669e21eeee505afdf1e72e8f8e7b83d749acff7cac9b6c0d0bc6b08fa0ae7f5a84faae3bc544a4583801a1b73be0330f4b6d743069d672e3b0c27b985c91e789101a1e1ed87dfca9b973d0402629222c15d44f49e50d78756879fc2f3fa640907010ab9fc2af6007f4a89d879a648b46c17260c43e79c5d39e67eb25388bb8826ec016971d6953e72ff7a08bc34ac69247803a018c0fee4eee02a840a1533457eb0fe033ef3d743dcf27e3293c5cdc27559bdefba1e4cd9e4460acda724ebe158105fcfec1ef540bb2fca797b04894b9b86582749ed68654f37d85a7f58e5e1655c1f88fc828c2da0871926bab650f2b780a81991ef80a2ee45e8984c5b92171e3b097e1c7381b0b05fa0d58a0f3d019ffe44b85b641a4162a9726be70f5aec9ad831b5e88ca28f9149669049246e3a22a30480811e38f9e4a9d40a962e9b9abc5802789fb24e10239099a0e19b6d77d69da287ed57a80a8ef7d705c9285108b92ea80be0f685c0b2f7c360f8206c6668e704da58866708974b9b81e8360ecb40e8c8d52c72281ac056068ece44845139033aaf10369b420334035673c0c2582250db1faa42c3f4385610de6bdd5f0aaac35e1d3cd33bde97cc7b48aa222d6007b1422f0eff04cfd4672069f8b7853bd4d33b089e099753ce68ba653b0583ed77896eb41f2c45690de77338e8d9431b8bf0ec81fc6dbb820cc4f925576e843c5438035797985f5956078107b97f4642461da67492eaf35ea38892141da9800c385bfec48234070275ee086a94446d16c30f8d4fb4e91142cdc6b9cc58015d7b709dd153b3cfe838dc922c723bd54b013d35e1598a1ab3a57443c1b9f9cc6d62b7c9af4ef439e2ee34c1ca0609a9df4ba68c1b202a731fe536dd65c56d8187618203bc0869296ab938d346890fe941a002e94c06ccd6a9c8c3ca934a600804374c7649284ec3fca705ed5f8494111b667b7c0a0833457d72f891ad2491851a0c071d141507aa8899ebb524fa1cad20e69051cfbd8a8348845c061e5172dd01435dfcf2758ebe421f0d09609baae7913a24302ae8ff37ca8c7cc0913f483755e581d0e74288074598f9d60aabfa2da25961cdb9386c5e67ee882bf76c03f0bb41793f4852f877751d96476a6c33445e1f57d03e98021b6b8fd7f7c36936f712427ae30dd18b64279c38ce9547d00175952ed97b1242da636155d9e009db75e0dc2d675b0d7c349d174dc19f595e6d2437f33980b6d754a25bb94e76706bda4083a119901ed889750125f99da1f80c4fc39510a2428ccdfbab207a81b4f1e1b2f4ae7ea75a2f30c90fc764540b0a8b229533d5bcd960ef5da444410888bf26965721f02045a0cff67181b32c0396eadf9b72a67bc7a752fdc138d95b4048214e4810564487951320c07beee41327006a1173334782afec1383be4c9b72a1c62ec13b4f98f70ee55a074a1746d6f5ea3586f219f299e9326b29c122ae6e7ce2414eec97155a660dde98c96297b7a557f056d572bf9b4b4d260a74be67f5260994aa1ca4e398bbd58bf69d32323636a84e02a4e10faf1c8fc96c7110b060e2f5710126a2a22411e39008ae0c267dcb0d72bac1affbd3cc904c10d2fb550afb3b0677074b5432b800a017b2410ad00d80a09e873afd7a174d1fe3a4e555c0dfc76b90923119cf17f261d847c49dd2fc0747d9b170e42c2ca7e9ce1a24f3840b8ba6116b10ca7bf47632351c361c4fb08d841d05912eb6329b06ba6561f84bce6f7e245a6a80f21d7c6a9099c0f5f6711462208d47a91e0d8318bf53f144ccaf9fb3fd5b1290c61586824b5a106386b13875ffb27fef5bffeba6464f37b1d11dc9e47a1c048b3d90e813b800abebd7c07bd4f4d5f7666594436f918c80e51761ee63449088906748f5c769a90f073774d6a1bb6f7594de1821844462ec8c1110cf71201a65553fa88711b50eef9a8e6144f260c8f150822e4eed509072f76227c9f222de91d59e46a8b9b1b9b7606915e23486ca951caa448b2047f0ec01927fcdd0729adb6985f5e75b4e02c19eaf003e85d28ee624333c86c70b5234b4aebda799f2859b46349fbfdd45ecb62b0d722aa6d17626039cc58040ed335faeae8b80aa9c08381031339da2f131af08c04dfd3d9443c5ae417289ddfa5b4ba0818d3934c8b13f584bea13eeef09892401d97067f70703d01d08b5f045ecb3d0c0888dd242302f7f639158f50056e43f921a4c54d55bb5a61a35509652d69087edac7669430231f28c229f1f51a2dfb27f7b0ea20616521087bddf08d6a8ba253041fb4c7fb1df4ef44bf67eeb8fcdfff8b643be8e39bddf27c3749d868456711de054565aa1733c9d6f4259c6fa0af66f940de2bd5384e815c9cb6946bc0532cf226c2c848eaf6d99b9f65b322c142697b3e7df9ba0e9f4bdbc01479494ba3266998a7cae7db25044f5df0d14d154a9db060d3fffe20ce4e8152efb0d3871c5e41b4692b850794b95addf7581130f37d9ccaa7e736024f21aa462d6019c28e66306d5b269c0fb275226c76f2f56a0ca82f4157a161f850c6ad6ec2b6db455ebe31c7e2be9962efda6c1a0d5ffd71c914c2c7783e226c47bc341bfa5c0a7673ed1b3e659967042ffc017893d941101a036089989a194ec47e83ea40776625d408974c2a6cf817e57a463e16d94a45ca971895d8aad8b72c07588e063ee310e8072f75cef5c7cb1d7dee37ae80a12ab627e13d4d95b7a4d0179286dcbe44b0734559b8319d801e019f36496e7005ba4e7ca388e169071ba90df713517c386c4480aafa94c33d07a0977fc047d8554fa733aa0e068a255d7007bc3896a36800ec4663a98966736a5030abedde35b85df528c24a8896b358b6b5fa3c633d009ec6a23af83fab69beba08ca0cf446d1dc89935deac8321328bbfb00eae0cec9bb05f285c215f68a229ace139b0b5cda918f5b6e0be0d9e1129aee37fd4794e3976609d12805062071ff99955b003191909980393364f0b54834169a51798e4811ddd1332617d536d4c83c26506266ed278bce338f5fd645314b12893551bec921938003dfaa64d858b96bd9767d2ed448fb90514151b757c4bb2fe56f48468988c84d358d40df47d8a534aa3ef6b93d966c26a69c9e80753999971c47ccff749a9e31597ef923c98e27772a3f3ad693aff94ceb77c68f3498635645de73b0ed553e36943e77bad6384802e722acf77065a08396ce44cc22c624538b9f3df15a3e3302706eccbc27bf31d017d805857273318c1c9ac9258be8b36302c62738f852cdf41cbdc4a4d1fd827af1e1fe7033902a7f5fc97b62dc826af0de414ddd863e053c4078d347ca063d08390514038c5f79939ab0ad691850f9c42e01a45f04129df7173eaf18d3b3bcc15d1b058f87b608f3fdf03194ff790ffb96d8c61f0402aaab9295fc395c3ae74700f7c65f4316d0f107a1eacc90d361cf6bdafdc118d3b977e39c0bfaa8740327870f80f3b88ce157c1f488d3b5fbc998007826f68821541ee64d2ab4b3636a917446c7e077276acc2f863fa0fb1e5070d71ea68fadad28730a85946a31ddb6f11d1bc031e29a785b6c627bc833b339c15df075b295dd1eea0c663cbc3dc2e45450ac11d74d14887cf700fd97fb63bf4f784ceff1d3ba0fce7881dece57b930e7620d02080e0eba094746a3e7f9eb316e0f77b5c07dd66b8192f7a23f1f932b13a10bd6982d5200a3ed43d90711a58869a851a0b89c5ff6047261caf7a4956c2ae435d7ce9173685a374c860bfeb9fbaabffa7e806b69383663f04ebc973fdd84401c8dfd246e57ebd8faae69091a53896b877463213e20d25137f85dc3ec9b0289ef31fa92bf9e8811c049bbc868c806dc2b5c701bc790651fd0ae22d89741c98b624dc07954d4401696686295fa3913beeb4c842cc1540df5fb5f74402dbaf8c99ea363d03e341e92512315f5ad24ca05fd93c65eca8dfd4ccd806542ba157558b2abebcd9f60682db51c62e759b782e0c7521bdddc57e6b97d84870ff3c10130bc214a0d97a2382dbf72f261284f9bbb7b27ddcb157f2493d58ee7da98e0d99565b4d647f02b67c70b1165c8766adfa2740e864ec3cc8c76448be5479e05ab61ff276e11509cb4f78c239b905778c5cc96b222954f6f29554541a1ac63af1ec0ce480d29911040ef04ea684db329ebb4bc19d19d5e57e7a1039736c9a302b8d1674151bcdb21f48a21f1b1aac404521dd47bd53bee339f8bda505969620532dfa15cc710af82bf76c9243c8c1a649396cb847c0f19996a311d543ec8e3dd949e0cf8dbb3e4283f0cb2d0684fdac2566dc386085669d967e94a7646204a0bfb4e36de31404901b024da6ea30a38d1ba96816ddc6712c1b429ba671c4b477a49d87fb694638a24256145808845d69aa1177846e3fd3698aed226a013a472f88eb2bba0b933942814a5cf1be6982c29ffb3f8fe5b93b10afc208ce6eb124e3c2e0fb0bd7166f335e06c7bf30d52494f67c327502f5164d81cf6929f74df1dd465980cedb0fe27a6d57eac41d1be619834b5a16023c775dd32fc664fc077379e11be5c48638db10fa7a31109cd13680a1ec589f01633925dfa6c7266c7b4135e5304e29ad443c9c97a6bb4160ed6d5e53a536b1bb2b1ce34bf2f0cc62f236f5ba04ef307e9843d95544fd639ed054a54a4b5ac17774e13bd227bbb422a89bec407ca8336b1a1384b06b48a2edadc26eba48f39bacfac748c8521b840b0a6942d71413ff52bca6e09911850cba94cf1fa9716ad945a260bc7108f235620ddc49c15f16acc57481e1244df05415aea9946ec7b981683537b8931132baa323ddf89eadc211937821d18874d592f50a433bd2a51723842aa3589ffc52ec2b45530d958d8d6202892c786500dca95f11d969d875e8bfaa07637543d41aa847ac8c6e93564449f6dedee2d20550c44a082a99a72f1294ba92c0d5ddda8df198eb4b2ec7baf6e4bed8c36713eee70360014ce7573a96fed168fb4779fc47fc93971a24127000fd17a00eb07223183c73aadb68a88bd1c762acb41054d75204eee557cecc96802241a3ff1997a8d358b89f1520da52eb09f7366bb6ac6d104487c08a9f9ffb413746742b0467fb836a32d6973b70bfb0e6a9ac3f1777a773127f86caa7614292c3ba8800e80e29145e7affae0140911b462110876765934527bde87f59666db24f57c53d0936e8e299b6dfd9acd4cf33779548900d1378ebe883bda2e989ac2b40ec64cb0aded6f501ec6606c8c305c8cc9be3596a9d84dd8f0281b6b0ef3384552e4e3c5bcb31680fc5dc6712fa6461f3d0008b8f682c27d58384038e91c289c894078453a6f15885b5c1cbff8f728faec7fc50f64ab63f86113957b1bf0eecc582d406f3f82d1c7148650f8d9c886f2ca440a42759a3eb2aa495b6920ba1e48491ae56b42d2ec64b702bbb4acef5b1ae6431d272bc9e39fad4b510fbb539829efbc015fbea418cf24bbd0dfc12598953d473c58c911a4a9f8f561802a9890d99dc763f2087a26576fff82853046526dd7db940ab2291f70875e31b2019caacce59d7c4e0804633548847baecdf5a691b21a62c994fc5ecbe8e3965e4f157698b37f2adc9b21a577ded25e951152f97d31593b46ac2a7975bef896d290e7b9cc099049355a285111ca1ded0e84e543ecaf6eccf73da891855134c41b230e090b2b72519c42ba10b93dfd3ddc7906b86e07d5fb8cd2e21219f2b061a48e4f3651c2125ff07bba21f3bb431422b8043dfd0d13b31e85c3ea26d8406419ba1eba3a328d10c0e47180d943605631ee5b15b72a33747fcb744ca40c02cbf6b1990fcd825d6f41ce2e925beb7ae6ecbc3d34bc0fef65bfbaf56dad852013745bab42973aedd71310b6c9ce1b5ffe0ca2eb4edbebf36b26e15e1545e8998e19e06696a53d24ebcf037e64fa1c8c4a0d106e0b366ed890ecd422f382535b8b2461e42586ad338496bd8b0719ffa40cd649aabff4b04e70225611989705a5853685d53688b79dd473bae8cb876787f6f3f526efcf955b7ded041677b66414d8caa20fd0812d1f12f7ca8ab8720fc62393ddc49dba4308c5e784268fbe6dab9130ab87499610368a93a47d5497becf1703977072414186032a67287a917f71d11b206113432d7c866b031135ca5b55a62bee44a9b2e15e63d927cb6ca61d16cb31e3be456f830617b3df8c739adff71ebd06de11a82d9571d6b4e028423ea4e2fc6b18871f41a82c4fd9c5c5a51a38b3762bd97be53fcba63c12449fda69fcd0c91849534cdb15c824240f6da0a36b62efb26357bc22b32097ab23f7f25631d5a05d282a24ded29152baa79d53796e9a3fad8bebd1a43b5007e016bcfa63322e610c71d3ff47f46d892fa77571b180fe52fc73435c8388697aafbccf435073588b430358f723e4c4a65bb678ede5e0d181afe0f525bc5c65902c1b72381dde568dff127089c00670d2ab8893b6558d8b9b9b304678fcd969b56dd5bf9e6b317e7f3b4f3197248690f200a7f99caaf6b885bf027c7e509806e7a925800c943656408dec180968679a6072a54550c63880fb37455841cb02165b14893e7f6847d29039b662e5c5ba474463fd78700b41d08a9fa615b6134f58b610fd5f9a4cf1a5807abc945184407fd7d5bea858a61e4744d2ea5cd001b9fc65dea6b5fa106fb0f9d840c2fa9e80c824db710a1c5f7f5d71faf9072cc7ff1b9a230d02ec96ac5983b0fba62a04c92f27b88b6801a5b5986d81c861092089ded628182fb8dae391f0606068f70bf5616c0ad76b1606e83c47a3ffa1b09238946830b731852f8dbfe33d444022bbed90b680af17b0a7acaf38a96f63ee75d118d217bb36b00ec01edcd2ad6ec5143b25e615aea1bb6ed5464ca477d29cdfe761e929acddad9f86d6aab43c1e4202aec691467c0978ac5d75fe71974f4826e8bc0d756ed2ce354b2606bb2bfb47b590e3d59b2bc4790361b8b4062b911af6c0a50520d5a7fcd95fa837d728add9f0b81954c1ed2b5b3569626a0835888646658bfccfb4240c2415729168718d3da3b2d9f84b3a6d81008473ad81ac5e240a2da4e7c173c46e159d2e3468d3568966210b58eb28abe2e2f148bb380b9adc1759af8fab198907f19aa593524b9b1ae6d4996059add68807d59b04951b20d2306c02dd614d23d84c3b5135e7196b3a82be5cb676984c03d1ade927a9312e353d9805aa0cddfe809f6787cc31505e71b50ab89217a4039a4cef4d4f2896cd6dd37d910ad569aabe85691cd251b9b8c5392501a308e9ea796db4844809e8c9a981643f78ff95a16942c6275693ca0160312ee354c903b424510527cf0e2d92b927ac461da0a3f4ebb85ec3de145ca949336394ff6d07c8b02bbf2479c35a4f35a11270b9e5fae877b73e47ae28d2c41d0f7b543f64e26440f5972d022a0e7b1300cf93b817bfe776671c62f9b9f475438ab583fe5b30cf5c23ea24c9e159294ef94c3caabbc9c6811c9c805286214fb707055b101b5d73e271b616dd065781de3696eda9d92009823ecc26ea036ba3fd47e6eb1d5118187dcd4113a04ae6053328d10ab63f522d3db5635dd728fd5d71e3c60ca710a79f7b730f61f982a1dd734429f5b8d42168156e70e48ef85f5e1c75fb123ba4561577e91c373d8e788ca97e1ea94a4b22b83b928a6446b9d8d6d123ababee13a4443bfd31240e397c0250f26001b26f61382c7e8449770447041ff6181b543180f6641239916d6029569a6d738b79716508c99e46b189e55ee126767dbc24cfb411fa9f4c61a272c42c30af8740da1bf5f054ef42f86adf73709ebf2309ab9dbcfc0cb01736a233b154a9015b1038a9758bd4064f5e6a23f975f7ece5a06d81809bb9604c1569a8c806eadebef3985e5622f0b6a0972672bce077551056f07884b6ab8f92fa418dc8bd4c32816cf472b936c5d752d02f80bbf821d5fc3b7eb782b9cc26c61aac4af2dabe5902b0446a9c8feb9d8f679415c14581e27110fab6253bf517b174d2ec852e86a5dc8f5dc0a42f391766e46634d50eab9c5f6fd1a5f3af0b6ad8893f2d02aeb1a191571eb5748adfbc08010066ea57bdf31dfcf44ec4ae9c83d3b4f029f56b8e519e297874ff5c579714f67dfee940de72188baf273b9b0d3ed433d3694055559cc00f09ae1724287e91df889e39b7bbcda083c78ac59b370bf694dd060a2a3704d686c814c308d6a0200ec6bec2ae68d25468e3578286cb267aaafa56d9d47af380de0ea22778897a04100536a054ae1404f6efce7542a07b9bbce5d9bd1fdcdd1d1468c3b946cbc4c8969cc698c0484c442b2b19f831bb197631cc89b36947e38fd88124eed08764230ad441f767a4767cbefca81cd30c134717e79068f19ecd581d686334155f6d694027d2b2e2ba765120740331885883d2ade72840f153b089512d6b4161e3570903b474810167e194d832bdc6c9d8e58afe71c954506d2c37a6294ae08bfb92086b669fda6593b5a2dfd0b5af6144b91f2bcde272e8817504cd7c2d13591189be883084a83275914d2568123ad512b6fb413337e1407aa54fe0a6545fd90a37d81cdbd817b782dc0707f8f78189890ee1d0115949d32a08226b7359538bfeaede2c7fdc003db1c33935bae130b7f19fab6997c353f763965343135d0ca4bd1d5f855d571ab4ad367c7f19985606745a2a00ab0d1df05cd884c8f39b4dc2dd7bad490aa5bef6c7ea45bef0a0f63fade725951fa6b262fac7e16dc9d9080f0d56db9f22d631c58efe978636268e97844c8271b30002c93d2b43784e9dd28f4a952083f66ecb118f958adb1a24f00842c4a359b6e15e63ec88d74ff23eb63d8221a5ca558232200bd8155daca6375d1b79424d2b17a5e6e9795d6e04c4e537b15d05ed22a1f3c15444da07a32f217ab47b834ac1261cecd53c1cebf04e7ae4b7eb6d2b879043e9f37518c55fd2effb0c68e4850c13b59d98ae6c99deb06cc0b98bab10af410b923456f69f006aefcde22ae8c7c51a40774b282dba335ff6e64831724fc1d851f8a2e64603fa8b7498f0720c3bd1ed40f4da3c174e3627ec0e49595de4dace69529eb1f93808c5085d488e5bb956bee243bba993346447ad2c43dc94ff4de32da18d527308bfac412bfdde363e419bb1ec5d19430e2ae8af5b215330582b1a6b2c04b84cb6f7fc66fa7147f285308b095c22f3cc3eefe443285a0c0525813fec8579e28b8cf5355eb5b82b68f78814ca17d6eaf5f61cb149a4a851fccf7a272183418fcb5c5cfb76852c79802aeeedb27ce123784131168b819c5147a8d2f759f9f45e78a3d3a3f40a301a22e95c6202ddca44af16fcff3e1646ef952550dfc1977278c221860c32810514888cda3b622b78cedc1e0754f15c2f5f08d1c04979f5a4812f0dc97b53a185feed90960b5e2dc4c0388071230772621e90a2358219631551f3b61201e5e3d4e63ac7c6b4890c82dc6d709478abb1323eda0483edddabc5ca476f63ea749a0dfe6fc9c802dd13b27e1eb04febe7c7360d51fe67866af46c0e8791339e625fc67db344fa5d3ece6df93712a228476f2b889f8fad48d14956217e8d0e8b4bf57d0a9c77f1e8e3295450722c0f9cdfda83ee1a3ad1a0acf698cafd8d7458eed11252dd49dad4740442aad8f21d995a359e17c99428fac6f68079736526208e29085e6944045435c07ae59e0d3472ebd5b54e5212d63caafdfd3565692ab9da67ad838a594c5cc24baa746a49f0ec4f19f98adb3c8af873a48f051b4b534722bf8dedd397102238fe3cb373433ce88e621b3806b17eb9b07243127f650395b97471381c9362675c95df33542f6fc7a237f00e24ead3b006ba05bc30d18f104d88a9a10c49975bd8123c4afdd155ae62a93414c99d0f9d8d8f91b30355d4d53932269f8e11bd4bfe8b5540acc3d13fcc2f3b0b62aa24bd62ab0a2394ee7f3a804355464dc84e1047e70d7a46565d0235ba49f1e2eae7cfa3356b2a24b02a1f7bf91d99d7139ebf0e63c50c212bee17d20a78990e04123753af447872da7e859d2d2ee09c83c11e708c256e6999fcc9aa669c05a541d3d9d945de42f3964b9bc9db818426e991a8bed5ed4d1d34d2887c231d761b124f15997bb3e1086ab93ba1d08199398bb1fc8254d4116cd33e34d520920f305caa8931715d04da61440293895eacc19103f58d80034efa4eb3f412913dd142634e9398702c2b7a6994fae105b39771dcadf41fa33194d357c353e5a9bfffd72c5f06cdaf3bcde28b50e8dcecd0884354c7399f27061224763387e09ca90eab6c42ed44c32e18f1e8b741480943b9486449ba6502b842aa1fdb697126ee2881623bf72c191d26cc4c9424ea6b103303bcbc67350a55aa6d27d8e424305736ea4c3ab4f238c9930fb15950f77a603da073b17608551fac40b603afe68f239094371a6c2879bc3de035e666108d0a2062cd97a2a895654ce7c605862ed647d9ad13d1aec91d7f74d85e715d226ef23ff60bc1603206f7a7f8a8f8a7ac861bb1ca25e2b6439d5e8ec616c66d8e0181e879168704d7622a6afd9db6be20204d6040ad067bb58305e15251db95912b4c5545803c21db0b06a88dd096b40eccc70a1e31969199285b0bc8eb19d0e018081f0c6d7ae0e37751dee15e2f875df36b630b08e1a0533b7e68620bd9971b0ec8bff45bf6d42082184ecbdf7de72ef5d0b530bad0b2d74a5c4e28d378e60650e600a05496001b4eea8e26a3a22d9dec8b5d6abbc1be5fadba894d7bb68d4ca2beefa7a3ddc47451484b228bf2ac490867cc18aebaadbeaf15d64a116a669398b0de5d18269ac5b96c38c876503c6e5f1a4b7bc83e16c68b6f63631eb6061790b674333cb2bcb2d67ff32164c63cfd2833dcb597007730b2ef1e8ccf220172092ed597057e2c1f296b7e00e66165c234f433f4f245b96d7d058afceb2c23580076e013592c9ad7f6dc22ee26c3cd5fa3ed5ade2ce8666faeb59d5915e9e7f5178227730a857c50f90e4be0d990ec666bac3be2646942851b23dc4412ef0700d0dc5d26ab15a4153affdba5e25a4c86b439419eb481821328353672c5c358a7416aefb91594e6a716bef25913a53aea264975f90345d7ec53c63aeaa7a75d8b5cf5f1d76961fb97a673a6094dcd7f61a7ae1202ef93af6e6e6b7575c0dfd1034d849a7c136bad157dfb063df305c73a594b2ec2aa7258ef4975bde8223ed8037b823e1b9fd47de7ec1faadabdf5e7d7235cfd78a7b1b0775d077d5bdea215e73bd23224f1cc425b3bc9bd8c435d7bbca3a76bd3ad6cd6955b88605275162e5d6caca2d6b45746b74fb349fa27223af4ff3f746f276955fc72ed36f46d7d75e1e712a5c0a6744846f3cfdc81aae9fd7b8ec4432a591bf302ea58a7b1d46c95d75ac63c6a33a86bb0b773689f5684d9ba5189050110626391e23b9c8110335dbc4528feab38720305b5c02a2e689314a64a6a0e07a2f317ddcfdc8ef6f469637358a06ded426695f53df1111c425db7794524a29aeb1aff86dc2945c79fa0e0676a67cc187217e6f46f7704d7d0737103f7fd473dd3bb439625c637192f88adfa7f7f75ee654e27a3106ce787131aa7172b93f3256bb5a39ae5fb7bfb0656b9250d8b01b9288c02190c8acc12531ac06b77b424108691494893156da49651079be3307c0fc7027244f8cd1e0762f951f84294bb8f3303b2416177cfc8b0fe25cef057bc195ef00d76bd40b034e9e2d4f6dd7a6014d5de643889c45e41ef3914896b7397690ced5567c2a630fd812a9b0d77075df641a6d442602a10c1883fba8d8c21228f939e1630a1531d20823f7d226885f45d86124c41de97962291f16a38c523eb9de10d6acbf364c5a8734d6e93b17cf948775fa8c8725ed3be3513fa15c62ed109dc8fd1efa145bdcec81c51eda283b6157b212899ef2eb0d617313f803afc8af1ed2d4db8b26e5a237d7a51c8aa4e8198f948b62766cc2549ef308d74d9af92aeba15f9dce57dbdb70e7224fdcc9cbc424da455c92fb374ae6a83d89cf5cec2277af317357ecd9f16c5dd2ac070b8fda145fe1d8736f902dce234ee84091b2e2c789d08482d30412253c748a4675909bad5f1a7decc1d966357d932d7b2ab25092fb35eb11a768938bd8436a53c46470bb98aa1a6331b89d3bdb19663e8664fbd8d3a8f96c5f6518ee1104e66a653eae8f2b4689922bd747642136ec8d7a9d8d1c532f8d8257659d7242d8cb5f364a951a4520b015ae813c3a5ff6d5abaaaaec28eb2139692bae5760ed889127ae8991e7abccb0e6ce746c795e94edb8b3060265f9b2c532ab91b41ccc3d541c6cb138c8cd599dd6214664faabbbd8864cdf2e598ffed582c91d7d93e765bac29394f9e87710b2dc91803c714d02f27cbf095b6a43740e42f37caa51f07dcd9694ecee093306bc8ca1e0cac318631f9680c450a4bbfbfe0310d245caa651cf0860780271b25c42de84018adc41276e9e0f46a05130083fc8300932c6fc37fe727cff8d820d779608093513bd44e3341352480ae589a47184a490753117dc526b9fc0760d17b12402d6b5177171a9b74f40fbf50b1761e152df4f60bb75223313d07e7f71a9b11011b8b7b010fb803773e3a99ea4c979ff6668a9af9dc84cc5957a7b04aa6fef6f58c89216a2dd5ec8f6ea44663a881893bdde6fd77086311dd2852326a24df5b0622e7819c4361892db9984de8ca951fdfa1bf53ccc68147cdde1bd544c038fc09e49c090db7c55555a86f511218a3b9861d90edb59c6378e50a3e45f73d65f702d39eb57e55725061121b5be9790148a7c417fbd9780389ee4eed51730de0b7a7da3f83030c69d7c524abcd57729b1bceffd8ed34bbcb78422a5b45aa665e6a3ebbc5df62d2a4fbb08238c90629aebdb25ad5f50285b1162eb37c6905256fe7a5cdfa46c21f146b1ac40628c0cf718eff9907f6f9c5e824aa19642d27edbaec1e89691e8dd7acb5bd2ea068294c13826bb71671303cb7718969d48f2755dd775d5cdea25200df92e135f70d7a9f6150e7b0a97d9871ba74d12a6c01508e11f5cc15705775784efdbdefcabb5d6cd7aadf395090a04295befe47bcfc234f4f5ef0f777d24cb2336e7bd76d683f53e71c7e1d2fc75791912e9de7a0904a9b299f9baacae7119562f9ff5aee7582417ee6ce66b261ac77272d23cebacb8998034e4df9c73360e131087507e99ecab7ac1048780db7fe2f61f478a2f0a39367069def3018db8c9b81e5b8e18024a6340ec8ea4a5155e62d7feeaccc7c4a37ef31191e37be87a435c2973a4136d9a394fdc2e0209492f44272fbbb0a5f9eee6790861774308d5d00266395c1c663ab68f41688544fa249148b7a457fbd2a8cbc29242c5653909b23cb3642e7eb98e7bca55ba5492e7aa30034e56b98ccbfd6639fe9be5e07e89543898b9cb9d93a132921183cf3d868c5f7114475193f1d7f7d2716f6530545eb82035ce12472e112612a56017a6c2711dcc2f0178d438164ec295d7f3f3d813b7933b797e5efe00e22000a4b123a1e0793abc3c2f731ac57d5e3ad1a83fc63b1b807901301f87a250a3e0e7e393463d229ca1499e27b821c81dc8b38b51f28c6bc8f3af8b6ac8f3dcafb81257a2c6bdb38b520dcc2a0f2273bf66cb8d311c046615dc5d1d2f67799348b6967abc9ce52c2ff18946c9f8c4d75c901ac5f27908a551a5cf169fef228d72f97c00b8e8d3a6f91bb8d8a44df300e0e24f8a95e9e0b85fcdbdfc7a39747910994ba516a552e9f1d585663ee44b3808cc2d70d72fb8d4837be9250ecb74ab601dcc76948248eef1a51a985f1e44e61a289465bc66cb32641cc667e6439ec341604ec15dfb50b90c1c04e617dcf55f5c26de2cc726ca766c98e6de3acd8bdbc0acf26b84714f87fb7739380639fb32b8c81399f4294e117ba2156d9a4ee4edcdc1276d9a87c1c1a136cdab70104a9be65f707dc335896b9c5ea2c4f591162e5ce7340c2ecb499789a408b4699e45c45d16dbf1b2e8dda9ee97ade01fd80b2e147ad2a8799886a7c3e8338fb89a20da47d643beb31ee4fb2a3530a73c08cc292fc0435d9f8781384c90c6fc7c0e4f07013c1ca6c5b0cbc47622cf6b9c50379185a8b98389cf0666f98aaba9519e00e64d10c78b91bbf3f622ba64e12af55ffdcb96551324e624f32f3f24e4851099919fdc06e46be23b8b7f240167aa5748202164489428ae200634ac810d5166e48d109991d8087db4dd8f5cf1103883c48b3283e35293446225e4a7949fcf88c442ac16b86007282841145520997937226f04df787a3732230f815386e082313bbcd38bb9d80c6ef77c7c68d1a8f9d4bc74ce7a7139529670e561da042f6fa4504121058a6488314acc1ba1933e9eace92a616fa4da4a7f4309d28c91798a95b03346ecfbd1618391264e9ed08625334696f4277e6fee51d16d933c15616d9218779ba448be0141186a5409beffa888c2119bbab9910d08c2906c1982d6e16a2176c42c210df81d38bf36c1f7208422e85fddd7d62f460d3e08239186100557fc16e52604f9653e5232c49dd5c028b04647a5434696bf2a7d356a3531cbd70dc9f2e120234bfc1e148dda046f2391089b060f4220950d47301c1c2b9278a215a532672661e4515aa456fb9ea416c8c69e92895853390fc568c485a72fbe2789d8a93e4c48d9236fba230dd177ca93298412890b2f698c71434285222427bf1824e7118b134f6f56d9a7a4d85346292726a59452ca18658c92c618a59452ca3e26d970e1e7ecc08df2bd57e99436eb4155c18eb2626ce4425ad84d604a604ae0082f959f50969131d23eedd3d333c5f56cdc0c28d3775b8ac4ad00789171fa6a9f0cc97867a1543755914c3f05957100bcfe823264fc6539645ca6ab2900326dabaaaa76da4425146daa96149259b89d149aa1afc9b7bfccd1942cace3655c1fc3c5df4b6119550e73f487e3689394e32e468e010377a49cf217b823b9c0a516d805779665856ad96549a05b61f9237d4657b1ac5d69c9ec8b2c69d1e84e75bdabae8aa33b54a7c2d67274c77ee596a33b52ac7cfab4dc08213356dd224beae82ad8657aa5629afaebba7eb9ee4a1ecbb270f60bc30e457557be52dfa8ecd2ca0bcf94c6cd2976240f56f1ec11c31da9e09d36cd545f6fb4b292599935aad6b22c06865b3ffac94a9f36d1af70b289fca1d95a8b3be933aad9679623c3f0ca7c65c7e44f87e15a8bb13665192ed5bfdc05913b7b9b4c36b1f289ccd247fee01daa2385ac775467f424c949cb5e05f016295474f52b9885a34ab2fbc84ec382a912e94375e0885e009c1cc282bce2e1903b9006bd68009f71daa451389c9efe34ea86d3d32b9e0e700ec5137d2b4f4b81a1e2f21ae576d327dfcf9c78a2b7f6debc6daf6db8d9ed5b7ecd9c18337362cc9b99b981ebb21b8e03277744a7330680bbce38daa44df43770f4a74d513b0bee48dcca3c1ec5c09d85f1c205ee48b83bc59d2973d861b683ab4e97697ac5c3814aa03b91e45ce15af85d9abe512b3a5a858eb2a174c32bce74ec869bde5178aa4a4dc15c3d8976da003a5bb8b38936d1674ada14869bc275b40a997e326954379bc874ea38d12895d34f9e4695ee5f66b99d4a481726b1d78a81e1dad7a71fbb5e86cd21ceb2aae56c64ce80a4293dc605f0abc4c5f88d7139c3c2bdbcd90a2b71300ee3a5beacaaaa2a9a6ab32c0cebae67d656d9e7007158bf329677db6bc5190bb6e95c370cb10b7bd565d8a62d16dcc1bc625936f2bdb78795efb36c47cb550e93830dd1abb893448460163b4c3d86ff5259e564ce0e0371d867b873f10ac35c6e2fd339401cd9abcea505eeba728133ac47758b3b582bcbc3befab0afd561200e1b9d8ddce29d8d6c69d98eed15671b9703a461b5c02d685a5cd6aa6439ac0bc3300cc32a5c8f713090c67517eb32b165bbb6dbb7d4cb3efbcb7a64380748a37ec3d9ad5fcf01e2a8bf3a799d856bc1dbadcc0796b1e700716096f55196c3b259c6bd6cadb5364be1eefdbb39401c30df9be5b8185e1b978ddc5dd2b22ccbaabfb66327926d3a6f380748e352f9c5692f3ee25e9c761a75ba6cd48b5798eab489ee6071ab12bad3262abac5272e0607e31817e32f7b816509972e13633c857bf765185c17e35449a3aa4ea32a1a6dc4548900b837f3b21898ea70e16271eb6ca25155e7e950650a0565327dda94e13944b5673aaef6ba698f590eed57c4aa8eea649f48b457ef64ae7037737a3a3184ab7dbbf64b663db4d75fd52deeb27e590c561c66e1ae3e08d46e719a56939c3e9dc89950fa447326923a87a80ea55427d25aeb5cc2edec4bd65fa6efee4b16a63a544914b7c2f4a6e23964c49d4eb4893ec36a768bcbaa0a03baf519c64d286da2b7c892942cc3e80d567d7b0704c661595cecf5f52a97e98abb54b824a7576e42e998d3e9e7d089a34afa348722bd69d4cbf42a19a63a1816ae852792143c73e411f7ba9c0d660f04c675449ec8f5409d55922b119e05fca0c00f36d6be6edb7dbc26b9bea6660c60f7018165cca751177e13ca95e454b31c96a34ada44ed4e1b80de1e71eb2f98f2975d486ca75f103b714596dcea3632578bb3af929c7e55556765755597e959ddcf6cc7a5a9afea2fcefe9a96750bdbc8f7d36b75c2a5ea6f862ae9137d2d5597b9c254c7889b82e90d9e436da2f6e6be3974c4edfa87ea501daa84ee5c310977e3fa099d36058083bf816392610a00dc6bd30bbc0c9f266d6aa263e40e7cd231d2a797c8ddcdf85d37d14e74308b0e3e814275a4904dc74c1f7845132be014108a0e2a814ec026e012dd8d9939363a660e8d3aa67fe2899efe362a3b7d4dacd8c1c60c17ddad37d3db45fa1465d026323cc61c863f8550323c0c7aaa1363e013ef04af2443085fa23a53d01e2ba84f13fa93afa040995e0ac51858e49de097c8b6890b9dc8907efac4180bcc1c7828f0221f2b369c1373329d4331e6a54f3f31465a70d43ffd9301c98810f0c2b3ddd3bf5ac629ac96b1536de28142896cc385ef64247573386e75d256bcd3bb941594a9fb701727ec486197e0d201a9f5cae27854afb0b2ae571ef71dd481e1ed95863b9bb8713127b97edb54ff3ac6f6a9be56fa99bd7bd4721d11d97636dbead8e33bcb91ed63d6c3869364a77f1563d826e65fd6566b511ef0b476b2c21faa395df05e8c369e62a9476e336c57f7eb483bf667774f49b9773df9cc47ec186347283c29adbd97443a0c8cf471d1af0d110805401149ebc4f89ae448a78c398deaac1359e4eedd239970bb78241e21451d2c22c949c1177c8e7c5218a17d304b2933176d7a52c6486a53122ebce949818a0e40e1832c7e50c4c51e6216d7491e97a5c376b62cf6ebfeb23d19debac559f11547637d68bfb06dd3f5783999f9d07085659b2e78f9b8c75d96a3ba3e2ec6dd10edd232fc6ed3b0b230ac03dec28ae3016f310ee64b265633db73f0dda6b31022b0fc72d8e054816c02cf7bf0124a2804cc1de3e96db24c0f8fedc434251ef073e29a8a835c8048a67888799b99271e623e88284f3c04bc4d167185fd05293f9b3094e1654e8677024e86b2bbd29af9909252794a29ee496b8c3ee063673ee0272704cc12dbc01c1b7744e08950187b70f50e0dd339a0e9c2d71eb822f074a81982c833cd983c748ca94ff02f303b34eafadbb84ee6ed3f74dbb7cbb2b2ec17275fc6c1bc71d2caac5f70dbb04defc8b2ec3267b8c423fbf62dbb382c6ed66672cbb84ee6ec3f344aebec9724c32df1b86eddba34ed1b37ba5193da963bc3369db577b6437b4dd4b4cbace1120fedd9336d9b2412f6d22698a18b36c19aee1ccf434d8eec3a60d60e65da547140da0433ce469b60a094b2fe6894962d809319c325e2d62bee6ca553c6be758dcbbe713eb46b3a0c4124bf87437db5ae7134f52f5fd7c334ee870d77daaf5f170744e896786cbf7e6d3641005920e35eda7429dcee0961398818f3a37d9e051a55735f974f87972fedd24eb31df5dab52a2e919c7133da8449e1f61b1e5adced78b9a6e6eb4162beb00d17449b66987e2e116deadb04d1a68ec2a51203c285cf91b3f17080b7620a1632c2f90971d7376515072aff7a685c8ad74188f9da83c52fab99d8a6a6e6794827eefa3535bf5c8a97b871709578c4bfd35ac5e54a3c22a6b17faf55dcf8ea15ee61b1bdc54172ade256ece79ada04ff2e0a37e28650b8e435e7ed8bb13e71ad3015ca5675ce171b4f6badb738d68adf84efd20a08619c73d6396784af33c65823a4908746fdf021c6cc1b327f26911e96b9416a28a4833c8f20840229dc085d4ad3d5cb0fc9d5ac73ce6b225ba9050f2bdc4951754d1369d535117cc655224c5465971087e8198e15acb4ec328d55bfae8b32ed9d066b8aa6a564b8bbde65d730b6996d1f7fc1cae2aed2195b042b1210460821b5f6d2525b6d07d55a35ec95bd34edba2e6b6d66adbdae65d5aaacaaba24aca91426689205909f1526d031414e8622c8cf8a1214c9d7165f6a91a6695a1571341dbdfd10aa69f52251f5aa8db8caea649ed56ba69046c43e8217c18b46227891768ca3d9fe4617629710c7e898866b220df66d749916bdb318d4e84aca8a08fb36c2f222dc5988c3a2908686a5cd7a5cd9c21d7da96f3185342a9629b04ad1c493269c34c1a409253987fcac20c1508c1dbd4de7a83566e321d5e03b28d6441d44b2d5880819f26c72ed273415ab5abd96454dccf0b2d3fefeb4a04c9f43c3346ed426fbeb573677d054dc41ac7657841f4f8d37dcdbebafe856ed29dc7ba75a5dc45d6ee366c6704784524aa29046c472082462a58de2057d044e0bf12ab2e49dfec29c8cd85a34dcf8ea7aefba7067dd8ab2c29d0db532b1ce1a1a8ae34b0c1aa574c34b34dc08284d002ba2540f6784c019edd8dfcc3b0ea5373e40439e1f7ad6e3e9bd72a4369128a52930e439e7841804970ed15a243f203a149364976911508cc96ee2e99d74a70808e29b1843d3f04eefcf88fc3e95c8ef5504f99ddec498971dc9ef2fbe4c0a014916996293095e9ac6591ce5ea6973364b7941acda0c6745faf46c66f34db6447603778090ada1fcb09fbef90b269e4c6d7adf89e276a68a736122bc2053dcd523f9d1a187271eba01755eb63dca8ab4e9cd596ff2bb801865186724a64337b89d0848d24089238690eb45402227af5cec4f0e88519c7959c4194e9b5e762384db653774e8e1f09edde4f78e0e1d813b59c85d9693dd44986a43be71b919b242a487d0ea0029ee4e14657821916e6a03c447296e47243fab1bc2c4b6d1b216d37494c90b903c340f0bd01a77f495d5321688516e6c2b18b904f51ee9ab75fd16bef092ee0b6853ac300f322fcb441e602a901467c8147737727cc4f14e6c3589f134460c1b15a7c472ced930be8804769493565b59179669db15a5a88c56585a482e2d4a2e5ec088710ecb7801006ca2516d8279371cbe7ca585a506f7f24e3764d365fa0600bcc8c0dc63c078e1a2d4c285d4c2b232524911dd4dcbb0cbaa6ca5535a4b8449ca2b379ae285ebe5f7600382f0687426351bae47e9a57df4f23dc6d4a558629410fdecc32104cc3d5e942819f6488095502a39928344678727f50314243474838324e806e748ce0e4faac7e707e806e7480e121d182153d08148cfc70473134e2a1ef949d91f24298b24286583765276e70da5ec1b4ad994b5f0591651445144514451e200a0f405314cde640b6f2db416a75071e5cd7d7559ebbab87b8ba3d9dedb6fbfec7d95f1f02037ede6e45d59085537485a0f078b5f9b3a6f4eb48005cbbdeae2242ad8dee237538762cc9146654dc81cbbfdde9a6176f3a8493aa3c499591287b215fa89a77e503cf583725ec45dc65d397e01477658834628d15b52bec292c2b17cc4d1dcb2f2abb2b0b0e011375b444d6a508c098a3568c4c9cc12af88402b293f31afb4b4b4287342864c18b1ace0242af8875bc1efe130e25eb6720c8a423146e510d7aeb2bd19fdaebc5f599ef27e5dc3d321c8cd198eecf288e81a712b177134a7ac3c3bcbefcaaf6ae5d60acb8a8b298fc0cbbc527f47242e8eb8f77048e98743c6a9d0b82656b9174f778493a8e0fb7b6d156dae433731a65f5935cbc9f272b28936f5ab43314e2cca95472696c9fc2ccbb169daa6596b2da665963bd2c158d6e26cae92d4cb0ccb2373be58723d1b77c7cbf13b5e86cf62512e101faeeea494fd7c68131008a451b061c386f5407c6813057c0002a50f4024fe816fcc1f1f82e27fb0f06591fb0fb77c8459e41b2ac290f35cb4a9bb3f7deebbc4a59b476d2299224ceec9d076e0ca72c83f0e63c38d3dbc27c1f98c2cf5616e3c77ee211226457267ba1d1b56019b9ff5d64a58619218db36c402e627ff4cf05248963025649a7163075a29b536ce0ace6ac2292b2c63f28102f0369e12c73ec43cb429fea05c031ac79f1c7f346cf9e303051a05444a4992403f6ac8f28607b992e0c26c2b92cb84314a39e19c104bc195b983c931478ca336cd49a9a9c25aa5f61e0e108fda242fb114c8cfc3571e5cf90e264b28670a1a4b0ccbb9f24064c679d2a797279771e23b887892f3f224d2bdd77e8796565a6965a5b83365ec0412669946f21331345c197c6306aae38d39e76f406e8709dcd8a151f0489cf002920e0841c2a03b5a9fa7dc55b99a2188647a5f712f574e08fa7a6f39d12f58435fdfc3817236a26a331dd82f87dd9ebeaeb6d6082176c718658c360da18441b8e29fa5b3f6f0d080782262622a024142507284fdb2cc026a0328ad3cb429461e76f861fde0a1a701d68d1daa1b96b5c30d7be3c60e3c34e007a53b60b6b9b083a931a94d170bf7d626c468c346b461233f27366c1c5159f04148036f4158d94ab510638c7df9883536840b1e928ef40c291fa9512fe5639a01bb70bd27f41c420189858290bd24dbd9471b85d4738f724be9e482500a32f4bcc025a4284310f6e2e3f382bd4882eb9d0950409c6ec29094a45b199d90cafd196dc2b090390d310e01b7534d7e72c79926752f21772e725baad51ad45a6bec3e84b452ced4a64823c4d1be1b420ec6042d6e873e457cc389e96d8a8d8ad4a6d4030791f112a34a1a0913200bd6f0524790548a2d0c49b1852fe44829b0c09152cec92305163a99546bb5560a2c9c482c7aa4c0e289145c40024ac1851368af4df605d79fccaf5155d2fc1a65cd57f8656be63cd1a64b3ad126a87365a8e4e1705da62f539baecb2bdcf87e590ff9082beb1857b30feb104f4cb64a0ab7c4b6b591996234d89dafd86b9603c34954305ca3c43e3118392983c02c3fe931aa52c22e33a6c29530fc37f3d2a7eb1817e2b188990ecb43ce785def2813db82c6c51dda04b51e22be71658fd884ef2acc18d7d94ce3a3e44ad87c9bae67dc0b775d46211f50c40b6813fcc5c5fc3a26e5c28a2c9930f3314b7f4272dc365dd7f375a097469578cc1c3f73c42eda74fdba1e1006e47a2482933797874675d6038bd7655adb5e1289ee755dd72594afebba2ea8245f5074b7201ad5bd9f7cfdbacd6581365d40da7461f1ba0f8dc27e9d028d8af8479b2e1e7670fbe260beb00bc344b4e97abce25e3cdecb8569e0d6732aa5fdcdb28eacb5d57e623ab18c51b05b684137ffe89cf4c5860f8312a3adaafa83e6e91f349366923b8b66d24c6080cdedfa7be95ed54c1e10c4167730eb61e569653b585ef330b1a62dfb755508e12b47231f85b0d654ee5adcc2ea720b6f2b1fe2a95d5c0e2f5fbd73b1448458d69bc7ea1ecbd1b84838a3ad892e9fd66367d3efeaab0adbaa82c914dbb4cbab8abb66525515ee80e801ef5259ecf2d9c1647b1f62cca5b5b22db08bc525694ab955f5aab26f1e88a3bac55555b58099e559b6c3bec234d55d8e4d4ba4324bd35ed98e791a8b5bccfb40b12de10e66b6a859e40b4a082184d205573c90466461a9f08b312bef2dc3a618b3825b05a76017c3ec1d102488ed1beb1f401cb1febaf0656fbd03828469ecab5b31f6505d425a75367dddfa49558f6fb1dda2950f9456df7e6476d949f3555dd5655fdd46c760afbe43a366cc9ba9de3f80389a497ed9310efbe4669591515423288061e10239e2d2548f1d910b5adf0127d7c91f72f543eeaad7cbf40f190852a6b87f0069c4988734913a0412b1a6cb1a6c3cdabf7d0cd8dd19edbeacaa290f5fd37736eed4c1c58447a74d10765815f7fdc5e667b39517b93f2f28638cb16504c04c271f00b21192e02411676096040c8ce049b18089192b53a1822759c29c467518129d46512a54d093e30c854f64aa84dc8d72c7981faca5f9072d5c9e9d1f254f346192e7610e74e22237096ed73d334b59c2ed22a5ccc3d301a280c78b812980277a8a03201a644ae10b327df79800731e0e14168941b8110311abe35410e73aa555154fd7ab5f1707713878433f01fbb63710278836d1733fb4895e02f4f06608a7515d3fc945e8d01299f6d0eb27fde4544889dc91728ca25be4a6729ec8f3915bc9503aa68bbcd3fc125934f1a49d8002afe8180b1c32893c8db287f2e449162f0b27195a01a7c8545aee713b5e969163c9a2ce3abf0c776f8a3c9f0483393646ab3a9685cb438c8133a5eb4432fd4b63cfbe838d19308b36d113fd166e7d4c82c5499d1c292d8e346e26e88a12a286884c63133310b3c4dd84b76d823964f783107d63bb1feae963cc725c3f08d13759e21ac9559a1fea3bcb81037d5bda026aadb5316279186cd701b3c8fae4ac534e84ab2b7a4d7df51a0dd00fc9d585a8d86672b592590e5b61c7b28b6a0e6bd3ec83448caba9d9c29df520315bbfa8bd280e1273dfeaa1bb2137990eb9c996f4c215427ee1d657975fb876c6575cdfd69a1a6f32c54432289fb836cb4de0c25ce5ec39e7ac6ae475410be411d77ba9c941af0366dbd824b978a3b4bf5fd67ca6ab3acc1ad50f87ebe240ae4cd7a31412a5cc6083c1860d1b5815aefc91d40c5e116edc7899703a0982be7e1e03f534f23df1bbd5499b226c206a5c824f6715c325da14310c8a4357e25247b9871102c9a6820d1b2dab7c8c32b2e60069c8cf37ed08136394092f8503a099c201509e2af3cd6b27858332cc9f3c63e7e8518f504883b2f7e4fbd9c94f6437f9fd450ac9e52fcbe17299ce4c70b35f6ff196afc85cfa833c5ac7cd3927f7548fcf0f129d1d1e7803142434546bad260bc3436bad11e39818833c40f1c5a865f317cb2b1fd555b8ce2a224a8e43f44114e89d2084300531884188e49de0b17782c7c9b29c0c08ecbf7782dfe0b6dd20c1dcf762fe4ef017dee2ec2fd7511caad3d11e1a941f4e15610efabecce890366266c9e462aa0477be8b293befc2c5297874cc3622431e9e1839888580b99b3db64876e15ece6076c101793800cd9eac8928d4a81a83ba0a73a013402c0f84cc29268ea99e986ad49c02468e0878038f64a8140f734cd2b8147b22500c6a03bc7e4682db452027908ba9d8d306a8de2475454fcee267f66068c846704b3daac3c347ba7dd22d4285ce10949beb9919d601c9d81b7a410fe8a55ecff3793f11c21a2019fb03cada65bafe6534c8cc1aee80640ca3dca3992f619fefb0e824065d08479ce4b61814819c34f6f99e487a78d37066cd40a121882146d0768cdb5a8e6cdc1aab907e6ecf1467d6350efbc575f096cdcc49703e13a3ba6fc6b29a08479e123cc0a2938ee9bf79c108148378e6ce853d8ac84c224cb501de63863caf7a046a949346558fe2c618778450058db760e02545e4cdec29e13967758bc89b9e7ac5fd232dc2eda0ce8410eedc47dcd922395e05432410fa40104502e88894077a46e0235360c4953089001e053c281299766d046c39e452feb28981362253dc151125efb8b823bd256585ab89dfd139e20b5e9b99610a89c3401b91492d5efc7ac1bd9996ace58a6ffae43783f29b50666cf169693122c3bf2e005d117bd1720bb469c70820da881cdfb2c3419d233a4a8cc8ddec89a98a857cbf3d661148e8760f0848c480dc08045be8ab598e963622538c8136224f6c01cc02b140a338e844964313fd6814ea10890f54903b4844bd4596d4222d44237729d831ecdd4a86a41bbcd3cb70a807efa480a1281e8d975b329088e79c13cf1ed39b3e3eb30767604ef82a44f6527cf62ec336334728b3800b6630464c6bc9d1729946c28b813cefb4842b0526e477088417d37f44c8af8afca013f26b1cb368d95d7c929f851c8c10c20821e56a88c82d2dda275753738b100932e9168129301c915360069f756e69895c929b21dc0e106e66e087cc2cc1407c89c73cfcc440c49af580c7002ef58079e530af7ce2aee54310c918b0f2ca653a624e9e4cd71ddc6e36d18cb8f4f01a863c6d823c31f6c429daf42850c58d1c102f19c214a42f49ffcab4185f621781322e02a4b7e0075d64388a2122c2edda8cdc72975f2edc8f0ac56d79f77c227099deb8247d8d4b4204c56f88be085b0435ecd34949c33a3a6bb3a751f006094d28eff447c320f7e6a1923ebd8deb80e4ed7047b334b80375b077504709f64851499b5edea0cece08c3a51e37c8ccdb2f17040ade7e41987d1302cbb2ed6230fb76b30dd30e330dcb36c8e302973044c2f226cc69d3a341d8340ae21fda0464e7c607737c8e3f1ae5f2f7083c2cbb8cb28b0b1797cb8e813ccf7632e48931d38a3ebde36ef674b3a7455e40269e3d3ab8f0ddec21715d843866f124c62ca250de2eee9eb35ff149a3b24d16f109182ebc25149fc89b46915cdc51c7cc9eed1177d82f23dced50daf4bee9b8db79c06f9f3d31065a1b3f391a884bf414f7a840bc6c9fdcb6bd3884839ee983c5149c3e6d80077966cf0d9c346af64c2baa78a79731dcd9981c1f20c23bbdac55317529cbb79e8ee5d7bb2d4017bbc85d047ab5c1b57087e5eb2505366422a44d2fe27737adba2207535c056efc8e1eed1526a24daf9b40f3a79b3e44f2cbe0cbb21c99868178c910bee489858cb2dba6f7865afe2ea4ffa6152d5c091e96621477facc9e363d25f715e10344807f2ff5585830bc2a2a2b1c0f26b8ddec793ad0a743e7379b74cf0792e7a194173be4b24fae72250bcb72c0aba2035351c13673077688319c8199a423e4a1b93e492e484cda70610a3b69d3a3290a538da2f851da337be2e9d114e4793c346234421e988a4112b8dd1beaec7b4a8497746f88884695b087a40899f6c0bfb4e93f14771328bfd91331bd2690365ff697fde28e947dc3ddd5304f8c79dd0d79ba421e8c0d375ef7b90eb96b36c9ef95e3b199b97189499fde057920cffc819309b77b29d38c3699be73bbd933a70f4f1a72ec993dd38a2bf2fb2cd231cf07c9fb6cd2a84784a126f97d3ac9eff01088084359e46e0ae5772149094d2177134a7e74429e46753b402632efd0a8124c9e3df327e26ece9ed718cf9eec060aa982cfebe1be211891ca4f0df90de1668a9c8ac07bc4424a6fc6c6133c4c770372379e20299ee0923a83fb66525ab89e01ee1bc2113e19d5f513d94d56a4518f0b433822f5ea12f9dde526bf5f47a07d8f57ea652198735a9cdd489c861723028aa7a1a7833da98a4009232e028a31d6de4ba2d7e9508cc98c6c398220bfcf263698af548c9924d29512c3bd0ecf4c553f575022bf2b209155f2ab428a27f9e567050874aafca4b0821a722702eab29b7893b26e200f6e97dde8643ed94f7693e2c93bf9929ebbec468898dd644cdc6ee433f2b1d6aa32cc30c30c21cc9d0848450749eeae75932d21435466b66f580ad04f0af6e3a33dc5e7ea817f3346b46ff84ac5d3c34568f8ea89a7f70eb39b9d4be54518b1ac632f4e3ab2e1228c6c9be5f294a7bc252bc248967d6bf1eddbe82c4518c18e847623d8081791b978f6acf495228ca81c09ed42700a3053c24560a563c75ee02254b0916bd73eba50d00c2002bcf839dd0549a8054b0ec669dcc69176463ea49d15a19d15219f9ef878232a2923da91b0701148c02833462edcb935305fa987c33bc40109a7cb6e7e72d7c2c392b393bb1521d24e8c69013a91760840da690122ede4772d40412d40a923194e3cbd5fdb7284d43d43286ea7b20367deccdf0c028c7c588258725684588258529a85939d243a124fef484b8d9ced2c34340d17a17d0517617df49ef519da09f0f7e24900df0ef32bc5928361d1560377ef07067756c30f8800b8bb38e0ee05cdb85203c0dd13cadd4db1e4c4980b2300dcd91b29114b4e7e5f118a31d7562b42a9bb2274a5ded027ee9e4f5f2988bb37d45d298c274bf558d6359f959f1620d25db618fff6f72b28c608d15eb61dc349c09916c75218f612d6e322e51de69392f2172a30de613fa5d2b177efc7858b67ef1ed00b9c049c79f194772f08064e02cec0b8cabb27b4f2d13b9896b3bcbbe1f263924e0c4cba522424248ed4c29172e28994221d21f1c41369289e4842f1440a8aa71e12503ca538d20f47c2e1483bf1d43d9fe773537d959d9f13ee4c1968a7850727bfb70059d9df5b822cec429ba9654813597f27dd58d65f3c55cfb2bf0cabf808b1b04a4f3cbd6b5825154fefd6ef865578b4074008865576e2e99d27c66c58e5c7843b9800e0ce5a372eee6e85bb9722752a3b7fcf74628c90212a3338059869b990ec297fcf70628c10eb2a7fcf8ec41821da477fcf72628c10ec2c7fcf90c41821db57ce069f9922529ec1a8dcba31ba467af75238059821b11c7b4b14a1992256bebd7b3d3ab82fa583d38d7cde100b370a8aa7f7156e24144fef236e04144fef2adce8871bf9c4d37bc68d86e2e91d4b6d5ae613635690c4d3bb905050101050f77e5a8e8c7cf27b0b929d961c9d96233288c113afc6fb6b03c41d40a1031ef4c007496640831a28f901109804410851d860c90d709003d8f37007b76309caef9dca4e7e6719a2d85546d94a0bcb351c6ca6481237664877695172f162bbf57716a1a8c188f114ee37fcbde56606076e167e91244833325e24893b03801749c2cebc1cfb3b4b508c4122468912a54812303337e09b8469e61a7935de8b24f1995be4d578bf376d80f7770070b704afc6fb0b779b7835de31ee92e0d57897c15d13bc1aef98bb277835de37eea2e0d578e7b8db8157e3fddc55e2d5788fc15d0fbc1aef30b8fb8157e35de3ee12afc6fb0beea6e0d57877c15d15bc1aef25ee3af16abcb7e0ee0a5e8d7717eeb2e0d5782771b705afc67b0b77997835de59b80b8257e37d85bb217835de47dc15c1abf1aec2dd11bc1aaf46554354e31e8ae1be54cd4f0a2b94e18a70672fee6e853b52c4dd1b77a6796fe0adf2a3220a457c7237757e5b908d200c37bf2a86d081dc4d9d08c170657e55482124847b0bb3902b9cfc72f2bb91b975e81013b79b3a53275a0b844927e312fc9ba9a750279ede6106adcb340dac6f8c3bf820105a399e61146da0b0e2d7a6b73daa9fa8440d7595494f3245330000004010001314002030140c888462c160389ec981b07d14000c9ba05674509b874110630a19630c101000000180110012240000be33f469c66da900e3fac47aac3cfbc829cd24ccf63251a4300c543e7aec8535b5b1cadf2488b1bafc70505d44f7b160a30aa6fee2990bfa21bfebb584b0c47a75cd40d8370e57ff379c55c729655cd557179c49744ce9d5529299b88bc853448cb82d7072190344cd7a80990aa22adcda1826d685290b37d61f23f94bdf931cb343483d1de5c1f51615bda974052c2d214a7fef4de30e2b42c1156d7af37af08f66bad12fc459b27e6cfd627efd99769a5c578dd920768c2f9279f8cf5c832b598e654fd8c4c39a2c09658f3664c12ad0871a26c8cc47e382e149504049ce600f35983199fc90c553636c33941a34f66c009507270ce9ebce0990adf8aa3b024c30645be145a8fa017b4bb019d84b279ea6bc4ce9f4d1644dfa1415c4ff65ae48ae050dbb8f5170b8b92ed3a67eb7b07119cfff5e2975c803874f1f0823a14c4d27081377c6c31ce9164230ace45d8e4ed12075791c58b931625a92a4f407d8377a6d2fa1f864d29d22be9c03ca490e1f2c61d7f3cdde971388a0ce81c80c94a8d3a47a3fe9bd77688526d2578a01f4f8ea384657212670b61bdc2e5a1ddf6c9f5cd14e013a92e822895f27cdea52c5dd1b2ae7d9ad330a8431742409d4c8a69daab0870573d7cf5f9d63a5eba56ebc5189473d4e5399cc1f66f5dcf82934a55fe167e6966cdcf67db1c70b30c9a810ce998a2784405995720005acd2e4f1ba084c8ff3aedaefd0e154224b45885f1bbe7431f32135e9c22f2350062c53104febb32fca75f5702da497ffc8514d05e586cc641eaad786c18c606fe7164674e32cf755a0b05cd4d2844a41029e954d24191fe480980e6165937e6b47024c6bbe148963cc1869bf1f007a1ad4a767dda84dc840ff99366715f21f5450f53f6ade704d5b5333da8d4dd0a5131f3af801db1738c44282d9551b962f4d1c829adc0d06c1b0f956f1c792ff509bfa8240ab86ba1efd3ddf5b197913e3319be6389e616b26dfe469c04e939ff467394d98f5635c7d27c263d704be585e1381339c0d349337c3c98b7f9b2614e1baaf0d2ca223fcf65dd6fc8915461f46d605e2bb2656d6683f1eced123076c7ed8261a326a0b4c09c5eacfe8f05931c2528ff9fe929c8bcecce99423ea4aa1a0e95da4fec7c7b92efd4eebf71c4128dbc3d1c90df23f9b4714fdc03af167ac8f6eff2f1ca7f02efdbc0977e5a590de9951dd8a6556bb25caf7ae18a1c518679373b342f32fc099c509054737b1686dcd647949a0e6f7a412d37a9197a96466fff0e9b61f673e584eebc90c6eb02ac5613f91882511d381a8d10f5c5072538ff66c775d717056bc4b43cba3aa198ea569c8026b37a1852ca69c5c80f4449a05a14cf6432685ac07f7f8c768c1d9e05232aafe885c1092ba3c8fda0c56580c413eed2b3c449267df4e5123c91ee89b9dfa233952848cfe3cc06c7bbfb25b8ab703e8ea004cf549ee548507d3c31406bf610cc30cf62ecdcbf68fd324af866531ad683b56e20c5289861ce2c81438b485ee1a40e2bb329b3752bb658100824f8994c77d1b258830876d18159a8b84fa4137932b9c7a482593089849c3ccc164c3534cf06fd5bbd6e073291a2868c66c2fe53b8a73ac4e6e455d16a586485bf66ed94e2f91a2f243d5b4cf570cdb29894a7f493e74f2fbd39d84fd21ab2a1948e9622afb185a6b0ae0d68c786279808ecaa8048a36f86f0b723793732a819dd4aaa5a526b24caf6fe400521a9d94a259f64f02ca6e1a50b89b9221150a1bba6cf4fe6fa01481d91728a051ebce5092be9b08716c488bb97985b9a3d7c7f89d1c2d6018c991e15ef6b74e865dbac784d96e8fde37209a4272c923fe904f4beaade7b58c7e5aa138ff3f4f437904572a3a625d68152d57431f490a26e1d7689660a9844e9ef861a5757a7a501bdb82331b100259339f72945b64a2bcc01f4b2f24637cdf257d648abb2230d2046a0c549ca88c80cd585667df948c09a1a31b9d1e48158fd8681fece9447755d626dda2b7b718749be04235c5bbcf5c4e8ac35256888bcd55d56c888bb1486758eb10919fdcb7379a2e1547be7698c339a5b5c661ec150eb0b5b5f2dda2374df294a6416fd4d3a11a9f621c95ccee9f5f4abaf497c86493ebeced9cd718908951ee11dc8e993d30992498e5cb3dac4f6e47e0295a65b52d232197b0b4064b86c5c5951a2d3d9434edd7c4503f201882faa8c7c8ff261908050c47b69f34821a577728e90f72732391a1b439590c27263e389ae0617bc877e0ca2a2ea94e33e75d0c4025631f60ca492519a82efc2256c639365a3b2dddef116da47c2d5e1a32ba530a8fe886617e6b9eb689e312520ed9a495fd0f4c6559ef54b7eda73c7c5eaf29e69367595a1d0b9bf0476e0e66c4be55d89b4e27ad8571455fc0d9fb9b87f674e413102d2451b50103592fb719a9405f6eb355626120e2905f290ff7015356c64517fa3eb91c29173b540adae97bb2aea13f8dc5cc24b0bdc26a80e5e684309059d4443f247b3f6cabe0c5383c2bdd18b05943612b3b6c0a973cb052fd59d77a2b73db913d7a7d9e23d4d9de0b2e799df0709a7caa53e3dea44ba75ad08840937dbec85c26b40b94beaba445f059642c3e140fbfb3145062d3ae745bcd794ed55b0a241611c83168e1b9c2d6aeee96e01f54af83a7b5d849c440ce5b1fda953ecc1827439b840a549857ab6fca66db3e8a2f43161e612afa8c981d163bab608d5589a6da3cae4f873f24ca3409fc02ecdf9cda607d0e1a2c714a6dba04d01297ec7729785b1cdeb43a68842cb2fc2f73414cbbf6438e6066e0cefc2df04497dbff03397125b0e18d9abba5782c48f340c717ebe4468d9243005ad657984449602acdf98ed6371ae4fcdea94e1e0438c51a6b7effb6828dafee85109c96633b5c6735dcc890a202c019cd8ae85aa6d4cf9b709d86628cf7363c19a68811755d791d209be456d896880be022c1ef393426b7ad9cebd287c497d74a92fec2dbe736715f690687c9455ac3fdd0e6c34ca4583927cb37707887744be94a519db6cd88d9472d6ce17edc9b6554434a611aba7907a6fd2d0343d215100280bd0abebf0217caaf919df62adc7561c2a4b00a2f7e81453ca3798ed0af00e7340c1f8c6f9e6ac1c5292a20bc8356ae486ad1b97669a233e646a29a25e94a63177c5847e124bc97d4b184ccd35109417a29ea497c700625838c2c6b01826e6b84b1da1500b41fa6de9db657a15d95726120d59d3907d8254fcd029048edc95e71b1c8930a40826bfcfbeb7d5130bf62d4131f47bafe19b0a5600b9607bc0d4e37e4ed7461a44c9668bfb94f5b6bad1fbf7e8880faf3bf05025bf14f73978b1a473911ddbd231eef10a6db33a619fcdff7ba4147ae66cb1a7ac1d1168bb5256511777ec5946c7f5f9a04ba61ee3918362f82af097e55dd82a9e7dadd3123bf0a33270ad18a8d9ed357dcec260eeabd199f69613ead3594e88e977fcc84c3c6fffffb2383c561c6a92c51de6b28b08a3a436289548e28588bc32150c9ef2721e6f4e081ec984825274c0a98e492b799d9e92e20d61781796a78f595258ab3a634a6c93410ccb672ecda7f9b36845a2cc2406be8ae397e7ade051e2f2657f4aa8cb2046849342cfb08d9d80ccb73f8f1059959f07d8082a5b193a8600e5708b4f009548fee50d71d01f032b8e0d9f9c4875fd0ef39ccaf0c51f2fcc25af455d04c26a19c8c222e7efd7080e518f7823b744550d00dd208759aef08d560239048511aadbc61467daea229b60f4d21c4d912932ca5c5a9dcdd14021cf3799599c191a5e703974003e62559596c7066bb4f05c404452a113ed35ea9fc41fd9e18b4e5b186d29c76ff3d67e288d307a2913ed75b75b8420f7126649897d6e57d2b4f63660ac7d501906bd35e8b4e61b541a9aa3e4e37ee8c2493f5d73a215052577fe5743c69f5c11de2f4a483d3ea22c1dba143d3a8f7ff8c898328c57049369547b26d8da8f4110e0b92610cdcae0de02df11d9a348f00f42c8f269e64a39ebe9212ee8b26887b96b5869bb230ac7af00fe5a153cf7929506bdb04720b58c0419cb95aa5299b524bf94599d9332750c08b044bcc59cfd67a0d889561eb020ed7b2cfa538f3e58305f77116e207f0cf980dea1706b4b74ae7ae057ec36962e0b71b222f17e9b199a23b07b72e5e3aad165fb238a5f610e9091902c56d65dafb9eb9939ccd1ef606f320db5e6dcf50cdb3a5f2d8323ca20095d8c4a24c95293ad0092c217b2673e3fe1d3d359a662779a48f5f1d2a8b877b20d4a373c5e249d88d9750fb97e25e103c9a3ffc2895e8be0fa363468395d95f716479691ff6b415959d14dfb62cf33d6318d14c6bc7b3404113aafba3e35d9ea71f243338c2cbf6a1e7ffd7bbdb97cbe72d3990764c63f8cef247e96cb94ae010de755a9b4c7a16d0c433edf50a10c0351ccdb0978bc0325030bc79b3bc5f6940882f14fe5c670b9b47327e561fc74f8cb4def5d322f990a0867fb874ecfcd60ab80b7ef616ea676d27e35061d1162f4a710ad4a580c6b17cbefd31c9bb75a6a90be7ebbf65f1e37b459b5a33ba6fcb0e55c63ac4aa1f0851f4dd1dd0e3675e3554a72a1df0f750938458758cd9965f4855b0063c939742f131d2e9a928e81943554a3da69c3613596393920cef41bcb83e0c383866f44d2c50e40972250c59731cb265f9f9d9ff9d1ec34e9ae71c4550152571cacd4e1dd23984b0b9428a0a0f0264dfb22750c124de3661cdfd527e54d9add99b5b629441e3dcc297beab44e08d6af59c59ba100cfa519e64a5ba902dcd80271d9949995ac3865a722a3b0e77e66302c000d564da4a6db11e6a1e7fd16e255c51feed98b09b5582595908fccf1f501bf3a15701db621d547697874ec8472c42870bb4ae944f3537300235750e51079868f439b1ed20aeaea24d15783aa5022385ca514ed74830314132c2178429a2a7afc56e51b6101d7949a3ab092461f495dd58384d1b592673a865ab93bc010c5e008c8f1af0654f28cfb32864d73c483b1f170392089736c00239d392a8cffb1659955e8bad856e9a6d481347110a6c02a7c1646ff847b63a083ec5caef4d0c3fa7a0431b9db055837ffac45d61c735a05947b0be79e56efcaa9c1250b8ffa229498b5b4c125000fe432af916bb94997128bdd169935552ae05afc807293d134a3b52c98e6807ac58960044d20e2f11e7ac0b07ebe9bbaf17fc2d1fa05e0d17f05def133273b85cd23e768bb0d4b3244f5a897c119ab48b8b50050392fc36360ebd9fe144def85de8c59e05acb48109d33dd832655006de1c53052f41d04a29d7e75bd2b3a55b448a1bea3126c3573edbc06dd9f88ebeda4304023234762c1888c9efa7214240991ac5f13274e4f4a35cbb22a409e1852bf50eaec01ac280a1523a10a8e20414e65b76dd5c4b8a62e5bd62fb4605ec7c3eba069ff23c036d35d2ad721bd2017be9f5fe850a047396a6cec85a0781230d7caeb6986e8a2a472dacc339b99725e3d46a895e75919aefaf8f927e75d704222b7bb3827ca11e0b5b824c3d2ad59d62b70b2f5e4d01ffe8e8f673b7b333c6ac8fea1041cf36302d60cf2f9656488d07b00d68d917e4ff880675a50ef6aa2a7f9d007be5e3e066191d001fe67eefbaef54ef130ee5f3fab0d4107816e557d33c34d54ca20df467fb24fce4a2e0a1ad1f90ff836a1d28b7a6fe9e7ffd26e21a78583e58f14aed1d3c0a95fc8f7242f8c53b128242e29875ea5becb7fdd7caa9cfcf6a5708b53ea6000418a222f54066cbdfc70ea9dc6522df63f55335a31d45a6b82e827cb06687c5a046d0507ade5550747cee317e1b6b298c28730f0a30e0fd104409ad78962349e40332eec7d2e26df6e0db4740bb6aa75a6f82e6e3d4314678cf880a71008442449441ecaf33ba66608787ad15fd99a57e76fc13669e80cfce89128dd78b037f52ca8e7a87b6d339c86ec13c549cd9e6e6a9f422c76965312f89e27944f740a80b42b11d342c183ccc18e40f3192cfb62807ebbea8d2f9c3a7499089cd4690f07102d9b26a5f510a6a130f0cbceebbeddae9e7fc883711604251c93695a810061968137ac1bac8e84e0c911b7254ced99fafcd5b360a725964fff407fd81c432b01304392d946ac035d9b0af37d8be383504a5dd638e07c884873dcc72f9d86c77a605bac33c752fae7efbc249193f1179a72030db0e25bd0907655a9e8d19004b08891d2b06c721f240c087212a7b88f66edebd3aec99fb757d369e3659d3cc5c62ac65f4b962df10e84be351f38e4c4ae4d8dad1aa12b0f7141b78ea271ba801765f0348736267358254cb60214039a86daa081089ddfa54ac0f0d3eee1f3af5fa48168a0813e5034b4fd7b7a10c78c9b78f0433602a9d46627a09faae1fb3226281e8df06750937cbb90b80efeb06a1107742d40d44f58b3a864f84673483415fdaf8050b7f758139c558498659bcb45e536af9db75150bb72a829f3b8046fe32e3dc78fda47edb2d057dffa5b2d14d520039e732732556d0c24d34f2295a91938654eb69ce2f37f10b99a9c2b18298a4bafa1b195542a13d9a9fc28f194f000cf441ea8a03d1291c5e33c8a320b178482dc062f9c320a1c4cb8185a86ecb045861ea42b02c81820f5e6197160b647df184910c8e023b5c97ad627b2c51fc57565b127cab9bc84a42104108a4239b9520444e4f965a23884aec1f43198d8d506cdd276397858fcdc44228be59fedd73e0d94ef5dd2ccac9f46fef7a4ead921a80dc200d33eec998b1d9a8ca4ac2541a22f2908437c3fd23f760e44aa6f55f5dddb3cceb682e1c0b8c049f894784caae2f39fcb8faed3eea81c063231dc903967b49721d372499d6970f1c5e45df373c88c8618c3cb12efc0698d1e7e403bf4550b549b1426db7b4103e5fb6aa2865c29a07ac442b67803bcef5a550f1ef5a63faae8620848e4a1811249371293fedf98e96ecdc4404637aac4b92de8e453b068fb53094f085756d42c6d140e6f1e7c32a941404107fe5da375bdd6c3a44c9593182483b62bca71507afcc3cee5f8c1ca279a666da19488a6614b391c6d53cf684c123389ffd0216345f8d8a6277e0fd447be35598a8407a86995a01147caa6190acaca849e813e756e6a97ba5a9f6c081d8101e9b2a4fd94b061e6585fbd652df6594b8ddda0ca74d070cd08fad5d2e5fde0424e13f42ab5a5d412c73a6f7ee9a28a7507cbb862e332455061fac8c8895ce67994252b45c4450e5e4ac907e8b6d9d72738fbc612876d8175145b17c73b68204b57f9aa86e7f7af4349dfc6718f63e2fe8e6307c517190e0d0a3851113cf4258440ef6329e0f82be9eb4db2ecc08daf8c33e19ae021f2f52c6b75733a02be3fe5ff3df5e38191d95dab94fd8e4fd14fa2cafd6a4683ad2da2b57dbfff4f02d5ca979dd2cfe4378d970fb0968d54cee4317d100f389502a5e4611a2130000db2c6eca80c324cec7763b41310daee3ce0e4fc17bf21e479bf8d9d45d09b4dc645ae69bd27a36cd56cbfc8d594365033768d5776623688acdfad1eaaba05a9f58fb24bae0b06477c4baca06ae9090dbd9f88150507b1f7d08682274149b643c0d1dd06beb921d19db13657eddd1c3bb0443d130f401fb3474888d7a741f9883837b182b013184ee6c16bd5b015353eca93bebf67fa08d15d98f586f29e298d8776850b31ec5c2b79544e31dae872f4a739f26abedb61688250272a732d30c28d4afde73324a8028c23f8df92be6ef3790dda8c7b9f1d344701218970d27837158717218970d2381e059311870acfda00a4c30904b9714100c79dd853b2761aec0e498c49c9018c92b8533d7ff2acb0c71dd97bb69f4c982b3f88161c085dbf55fd0ebc3c9ff3a7cff371038c93da2adb0f1a4744180d5d897df01bb94520733cc6a02a5484481cd8817e9e0fdd71a22271010b8033fc0c1720c82eae4c426e40312f0f25c5748c384b4eebbf007a64214871c6f884bf95e60bed8544bb53d62fed14f4f210d7f6518b716b6d70c53dbf0702dede49a568456cf9661f4a7b375ba037971a6a00e85264bb10d917e21d887efb6b78580ec8c101672c304423f024a0b73b4950af9e8eb21f03b5f5c17c0bf945317f03fd59dbea0ca75e49d086d6095a1c0584565c96a74f0f93849351917ae00d3a6d74c6b8827302751e622bdb0c8e86c72501749f6d46b147fb6770859bb9a6702daaec579388aeb94ad4dc49c1bcc5de0e4d640af360e8f42082466ae89542cfb5cc8c82e935881116284ab2b4eaaea8b3262bb0c0869d1fed1df32a771910854c4af2a7f4875c08423a96887643cd315015537d0252894ba05e0ef5f33bf4e2455a3318d194aff5bcec6cd406529280026f4e009acb80a5adac96b62fe47db9314df3e2921234997924c0ac184140ce001919bf9216d3b996de331f0c14989df2c3fe85f11ed449cd6ab9cca70d58d9ff9962d99657b7a50d613703692f72b3aa88906860ade78a9d628b71297b20579c83dc1bc1cffa3d5025cc928f000cc21c30fb01121460d110aa81558e9f7891103c4fc50421334e0d922a3a8c8b72c7f43e48aa138d53a449c1c1ee20ccedb76c621d459e633b92db026d6f85908287d12272707955713d8813c04402ae8303714e41059ea97f1daf44f8f844412284d6bcfecbe242ba3cecfc94773977f215bb844ad94cb7f13e24a3789a1e961d956597a87265569582102c2f26a5ba904a1e35bd48b3e5fa65e4e9238c5f92940f25bb956ef1cf9b69a4a81e6b9cbc5ccb62a03bdb23f93be4f5cee324d1de221321a125af053314aba801131eed9dfe0d4f1da792d98c7eaa9f95c01283049a39de1bfd90305f5d7b6ecceff6957bedd0278770c0086cb690e7174c1bd5395af0ac575d5d594026354669541665c1420720cc25095887a1b862d3567569d3d2202727ab94e83692d38bf1c19cd1fc00ea79e7928f5ed7c8e9ecbe09fff4ee41009b60ceb810327ed1756500b1a27bdcd1f3abaf2e3bec27e44ce2d2e65a28ab9042956d8a76c463e930ea4069047fd6cee58597194229a7a24cc9fc0fed80c2eb4d7f7af9ede581ea56750ec9918e406219451ab1507965998db7577e679dd455d2db028d7eeb4c43486177fc69e589ce3c58a4474d53afcc400031fa18e8ffb978f4ae4399ee52c282daa0be054ce7b49e89c1e79046eac0f7cfe0211edc58f37b557c90760a1dab974ef2789d7c66890bdbdef400799f9e1dd432725b353e2aa21142577628ca21d22cc1fdbd121076f33c58fabb06ab482960b728c2801d2bcf86d307bec32c128875e8d28281d086e2535fe53dc3f1bb1c5a18e59309b306b637567c0e5e73055be53ef2884f3165b9f3ac8b8683600f0258264262bb78c739bfa192532c5ac84a7c65d45b84b63f1c73eca39c10fbb2f4f293c536fce16ee1b58367647c246173dca36417da2a13ac627e69fef3c50643489255726eb9f9a8fc56dd81f3104079780539fe616ed95ca62ae3f2688c237f2463d3e8eea9e5e1a87215070544da0b6ca7af5cc90e2800be029c363ef2cd37c4ac4dfa6555fe5a701c9bc8262d9ef837fae2137fbf69529e8eab6dff83bc8a73dbc293b63598c63d50ca3b14a35ef230948bc9d39581686da96432db30465110e51a11ad0dcfef9a01880b01809fc509980d84c043ce80c60ac4c421e6846205646023f143300360301e31890051e18911eb0fc61b929ff3f4a38ee38e3f1e4c82e7340517f2029d66b9c5844ebd0674df62be3b2d2bba11756ff92fdb8a2566865add08a5a412b112da0f23fbaf1625fec15bb62abd82936c546b151ec8a2dbba1e8957e5aa995b4422b6825add08a5aa195d52b910160a33420379a63412b3a4cf253c46d3fd8c9adc64fd0f4f84853c48fffb3b3657a2bf3fff332c37165544f7949537a397df3186124669eaf4b9c0ee26be559ad92b641617c9a0e8af59ea0ec1825cb1783e7e01b8c0444440d742bb70ccece09f3e7ca25a6839ecfca35ad8ed0ef2443cb3d1ce84abde9269a3559db6ccb85869b34a30b35611cec94955a1697227c833fbd860ac96d98e557b7c191c7087c2d3ac4ed423489f137a50948c7b2f831327139a78d7aa485030a8613f2c775ce0f16309db7f69501e815677deec353e48366054b3963784638e319df2233e2605f2acb09d5f3d19326fc14eaa507bbcccc7fff54a581b124c1900d10e0eabf8c247d5308e3018d5293e9b9a2aea03c53f13cd0e611960f20ba4bbd155fc85693c1786bf6abc671afabc47934f291fe9fdf4470ce3261c16cd9b1640e1f1aa7515a4edd4bc2322552708203a071e0b03171f341b082230a46c32060b28b852e744323140e30f1d083366840078c817c3127b4430fdaa001f40c2683ba729b4deda8fadb7a41fa620ae73a8cabe01479d3cf1b8db68f49a8558eba728030c36940c2d904d2e628f0ce9afdc489aaa2c1a4209e1ac483e4373ed490e9fd8f50b0227baf9059d001dc27a43138cee778c0f45df9ad8059c3015c0d6d70988ff8cb21cae9a481031fe1e49bfb3b3049a52298c4d6ae4a32057674b615eea2217051e7ba3bd1104061f3f122501d89b8e47dd140ff918eebee904e1015db579fdb8b676c91a5a92f2a1c17271a0208323bfa2dc20db530de6b78ae0fe9260c24f143051b6bf8a0c371e3b31c2d62ec3c3ba002a5319fc455acc3558f085f5a8005f13d85a1a8bd255c0245eea4398661369d8f15849b04555cec748a67802c69725d09127ad0cc20b8a9a663e20e56ba2365f38d368a6ae8e81f8b3bf2917e210bcc209b9edf84cd160ed20c919b08fec49b12b626ef74540a8c59d987b3dda896005d7ba288a8e19686883a903aeb80564894312d254f594b105a1b40c22ef41c704b5b9ace45b941b0823603e5f49ef3389ea599a76adb3452a6c9488cba10d4556c9639537471cbcb7d13c8a32fd692910e501dce9f06c9896326871fb52695255704cacc0041299d6bd601ac0cb1c7b55edbea2ae8816f3d80a303ddae7ffca428ee881e00f976b82ccc0c7ed63f55d4ee9e45ef038b24ca907c9e6965553e40cd94133ad84fe5583e514bbc3721a535825178185ca0e1f5c5b31bea027eafe60607dea96d13800f0a0155eff29afe5c726d643e4c29000abecf811e85f800e8b79b3eff19c72205a34870bef3a8b95fb5e41ec7a7798ef9841831a1e21047f2fd1a8617ac758f5e8214a52545b4b22e1c42eb25c7003ee7fbf30eac097f7fb120058284dfb302cee2f521cd26d5c6e0c7de19d3f1f200a380c44afe746c7f404f30aaef240c219a08568a1be11d6e5a7f5ff436edc78138ddf9341459509d7b2749816d389a8012c6bb42a8e0e43c7d65bf923bec8b45c236f700f1c056c456a1ce842017a8048438d4121302e168822d48b20ba1f45c8a01d65986e287427dd8e305b1053f8b94a0528a18b8f8a713ca274d518c399edecefef5780b7730526122b0a6c05076304dcf6de1a9f37da142dbe5db87590080c5d307a15a75869d691cad8d58d42e1c9459208b5df2415b8ccbd6f460f8104b25115e057c1e2f2838682192d4fc66f9096bdc553229f8b797fce531124326021a40395a5472ed71c60111d2c3056d16c59bfea95cfdfd92bdccce5799b0386d4529ce919e481f5363c12688bc0e6464712fab0361118cc8299a4f9931e3700ddcccabc50fc917014ff5c7396b5dfe1c58a10d1a53d0855c9e981507cd8ad2c0767ea664d3d90bf56235765f59e19b82e05bbf71368d21951b85b778abe4005655d1972a97026d9d88a471192ab45a0c6296e71b85ee638aff79c14e1d338f0ac6bce1ab2867411f0f78c2a41898de7bb7168b020a6e00745579c41a3f333727a1d326436248d2b05b18e1e471c8d16f4bfa5bb1a40db7f6a83eb11c54ca25a732db01df9a67aaf7b231162c8eecab767000bd5164025e50782468fed0f75214014db7a68fb64d164a0f511242bd764f8b119e65b36d39ed30352bfd79f8a78056291344fe467d6c687c86ec0b2fcf31aea7eb11324f7a6a9ee8d26d2fe6b098cfbb1be4fa5ff871d00c341bb55a331bf3eb29a65b19d3e1ca6308c4c0f16ed8d76e193ca151103c9c05bf74217e92c520ad754fb352282cb5b52f6e1e4dfb15b0ec348a02d94693579081493d72afa9ee6d7515e29e59a391b463aabe9d5bc018e9f2cd8e445cfd32d2333222eaeaf53384b142cc9d154286946fe15f39dd19f12b47d3bd21dc5200ce891984fb2958e4a9ec318f09f47c4d6f94a83d151845388d4a1b72c98074934f7ef04108bb2b97730c9752674499cfd5dfcbf6a7db47485c6d002339f38f3ead30320998cb21d2d2fc62900c8189fb492251aa08b86e909dc07bddaa8801c423b4f73d1fe9cd4108185c7fbe34a610902a30d1f5d7510fffa206cf8d8ae873bad55921ea4df57f3f2e21d511ddafc6effa07db4190607de158649a6844fae874299b6a3cfed1d1956d7365ed5d32db258f5d6ed37c3aee44dd00f38150c04b82995854013ef75d2145c85d9ae746746c622770f88be6cdc2337c0876cc65379d0482125da56f1b9cb97f8ae4721e9ede52b49412c48a27c697a18bde12c263ff16e0e3f0fdf352512b1f0fc6bfe3896741fcca7fdfceffccf86cb42019c734517dcce4dd127f529cc6982f871abdadf6e318a00545b4b2f01012f3a6c834db8fdce90e9da21daf9a0518e8a022fb37ac3ceeb3ae3567f34f0144129e4df24372e55380ca43ab67968e4e806fe3d3656be78aa36abab2836f0b48f2c80d5f1a7857915088903bb35a6c4cd87d11ab247b52e7f8bfd76f89e98618f4ca893bccded42e7468a5ec102ea1371218d1508bfb6da85ee5d99220181fdcaef9555c9f20cee06f50cc4ac9b6bd9bf0f24118e5eead272d9bc5ccc2160bc925ac4b4e4b800184fc9212eb08c789e479f1a9f7d7e61072d4d4d35ae8eef174850057b9d8da94d15632f0e51d201003abb51b3f88591a0cea9d3ac64fd61ac1afc58cc344fc6c6eba8a27689599fd0f895973cd5a9e3f0f98e2849091bf7499a5ab5c0695e1a24c2ccc35349b1dd251a17550e701ff4902b8084ea5ae7321c6b1917af11a8313a819e0f7246b22a411ef10e2895349793faa33b22faa5411294e7c98407ef2c7875bac2b1c7c6a5a9eaa809628852d63ff19877da01386b134b476071d02c00591d3f37fa26894f4325987564d6ad2953f6f083895f20a4f0f1c978f65ec10ab29727be056adb38a1f5d125d584b5ea249eef7d3ee93507808bfb657ecac2cd0be3cdba1ce0c336cf9e182a05b81b02417056622c5b99baee24453b7bb1f7c732728ba5c3467e8211945f6da9e163e26269716d0472dae43df1d2ede20b1e1404e075854a0baee3b0a1cd5a983a5a33aa2bedd61a60cd47fa510771c934e2d554b50b66a66f6e546c914415d073c51226639db9a5aac86fd29bf12657018b4b3b720cba934efb41b80546f8f0d759de722c9eabf3e696ca86b0e93e5c5407902a855586b4b367390e25fda3d5887f9a81f0736d86a1ff89a1587c96b566b2ec2305c3bd50b4ec10986e562afba8db14392de522fdbe9a09ef041a45d27b2e2caf63ea7eb30127e2ad74e739ede3031f516261183f2a745c2be29434c056674a34c6d6a702460a3d76e0aea5b94c3629fff166cfcc2b60af35aa68a4358eb575cc45f93dcd148f8e8b19f626f1533415c4c11f167c5fcc4b892691498f7a025c173542406211dfad8a402e571a9687b117d97b490d6486b2bfb28b416d15b16c04a046abd89ab38e732ca97588956454b98fe551a22e9012ad5aa4f62828fc061f06c27d744b9752ac11da2bef09c7be0695da0fd9533c5bf4ae143b564a320aa7a53180855427737d2e64ed95e88f13de0ef00804045ff94d93405adef9472b9512505d429bd6d4fa97704202c1b3e8e719a6f5d8d69a0c1db2e15b6821912868c71e579ecdba235b0d3f35c09214088b18c606ddad35939f1a3cb9c4043ed854c80ee6979798c246fac44b2e505b4c0d657a7c7401e0930b3e4b77b674a8725671a39e15631309e96d4f0ed474fd457513b209060ce8efe2f6871a0c76879b9e58f8357cbc0268595a3fd6dbde2dc38f445c386f1674852836f3710f0f81cdc9fad29917408cf6b81fe58c8a3f3f66f0125fe8b1d6c4430a47448c8310b7141e710c75ac6e121bb75467648f12dc26d8fa0310653016268a27448725f91c714c498cafdc49a0f698148b360a90407e6356622a481562c4356fd82b719e243eb068e2d904a52241ee9475b7651bfb6fa1880fdddcced9528060b8354f97fb09c524358e8466776d0741fe7029b1db901124bdd139339bdd1590ada66a7e537593063f767b25976e589b3a0e000cec27ecb1e27038cfd87c0d16a83c0832db084e2bc3c7ea32a39522b9c58c3aea6df1605accd9955fb24d16a65ce31ba0c2919ea6042843083199a051938640232810c9783aa64de7d384f1cf93873184a8664ae53a3c682ba73bdff7b63e59bd35fcc332199153d8a1551191ca3bf2b1d3a3e4c19271ef721663fa79873ba546e5795e01a1f6295d864960666ea2e0a8d719744430cc86375a1cd93268822f8c359f4a4e053b09fc6d02b455830282632dc27a2f4ec382bb14a3635e20784202f344c42a9e5177aa4c46c30e999f6f19579813aab5159ac9d1cbac2fc6cf0283cff10994846f3160f2dccc11594a0b0ebdab1e501bb918ee85064d34f0959c16250eabdda64a51e55723af269f35abb7fb0519d854974ae0fdbe9a519ce99fc31187ffa33147f8db4cdfa30a0085b202c0540315f46400071c92c981a7e27fbc9cb1ac376d92cb79d5c692ba33bb9af857226e62ce440aac51838900a64ad37c8d20bfc559d00793b5929f15611c35225a8cf3a473134038d38aa5fd1f35d09def2dc233149f913db8a37107a244496d7eb50aca2375cad8cdbd7132864b60d4d8594d0957274ecce22f9128e8f4ebb0842bbc2dc40e3b187df8cda65bb32484d8484904493bf64dd4e103750fd8404ae4f51e8e726132e9ca367b6ca30c0c3d2c364376bd7b968cfd327be25803f6b9a54eee75ce41d8540d16d975e04216db5d361a22e78fe739ac11bdf7137df158e66a1de8aae36f19e6a0869d2775b65cd26e92161ec7173a19500efdac068147c369b71cd338a324b3a533f81e78bbbc22614d98ce2b2e6989fba95447885300f48a299a68eab79f02756ede0fc521732ae75c2e8e90d50364d85f5da0b749bc5413655d640ac19267e23d6f7fa9e52fcb3dee0afe3d653ef377f2744fb7ae45af8ad443731dfe6dd536a94b831f7ba0cce34816de2b686bdd0a75bdd778286038ab4b18f76d9c2a32655e487f3a12e52844d970688d5b06e9dd48b33c47ec396e57ee7912b3bc5fc699309f2f6b05cdb5ce2f852c196914966c3e31978c1e264204509b9a300a0385bf41e9ac99ebe61342e83bfe8542bb5fbc17853af5992c1e7d949c48e96f2458b48831bb4d9673815c7a81ff7ff7f7b357a5fe3cd369ae481f16d39208ac7b50643827fb68d15f631c562324ebe54ec0895f78c20e04d30d546cd676f562832d3ee4ab37a0b5536fb0e34fd2cfd625fa258a5a30185428a502498337522cf9820faee598392afa9316e135efb1a3489d59aec963ec857e6c2386d6719dffc3d4ee90b18a10dd2481874722ec2ce3cde166b02901af1a03d3a63969fe80910dbd9c9b163e59b95071788b608f50df7f7e2f840d9a9fd3c5d194be04d53c257b57b0512bee9f50f744910e7c1ab5e92cadfff469c54d119562e5b233abfe48c77825180d7381a2b7ebe9f933c53b565d619407c258c2e385cccfe18f6926a7e4ae0ba8c2c1781f86b52721e9bf1901278d16e7ef5a40e7cea6fc05ea931004800b95e2f84da52b42ea6d6604af4d1d4717b3943bb4223fbbcdeb9ba4c6348fed0fa9f9e231368b48a2c69693f6e0f74d7cdf8ecf7b183123c82405dfa69bac6194f88b3d4f40d334d38b270526a8867d23017c91b0f70fee11532af1e5a335701931351266acfc6c253d2569003b1b71b578c714dff4fd68a08df8016e1082881f56aff6a09667a158cb50f28c6c5c50a5f17ddfe43f3b74ebd02a57b059872aa9df1df20e6aac6cef07987f944ae24522bbed69bb571fb20dc44f3f8d20b3a20a74e674cd3bd61ce6f57f0be51cb174f8f0597045977a9f1bb3aa9cefdcfe0007b0ef2bf530dc4f44bdda128b925d4739cab229c290d90dc7efe9f7433a2f29c056ac67d9b28d12b58fb01c97c56db97139ac564e4fd8e4c8f3b7b8fbf416391eb942790c76b645c1155152faac89947f79ca2ef690b67ea44f2a83ad2ad84f1b61857c9dbae958fab000a19e32656b86dd1110fb59722b8b9531472402e3011ff2991aeb38cc17682d848ccabf2bca9982d892218aa74814a3798573a344f9ef7ac4a81bb90457c3f71bbec0bd6344cee5baa4521d25a89b706cc816284617b099c5a622ce80665b3bf94790415faef1ccce5d59f2bc03b0210010c81fd4bd936489242dd27bb998b56113af0177ec7d5992dd08bcfdb521a5441c429b25bf284e4874e209ed7a783e8c5e1a2b2af85872a2a82585992b525179d3860c41082db548a6308a3a2fe2a5895eb391a73ab943ec2235123e825a8849fa4347a045282f4c8516abd041bfafc244a19fbf2e793ea63ffcf5f6cd2ae2cd524940f72bc960cec38162bcf7897aa86ef2fc9630a17ba704a5d3afad102e4bf9f1bc34d3b0cd685f4a50d6a3c0261cc4aef000cdd8301838c952d29605193d0ddd920964b77f6114a7d6265b1b39983e609a2cf74d4f9f7d46607af450f468f441d54bfa3411d507decbc22487721763e28d0e0536dc57ae9c2191b992e62a8d9d8800038ef61bca3bbc1ac8f24ff2e064dcc62ebdc696f667f60afc2484cd203cc3bcef50205ea430378a267db7167a5d8fc6d8455f4a791b0d5f68fe3fd11a557778ec85682e526abc556ca92b10c1dd87f7c83155293598c9f24eb90ec9671daf2754028b68a8831b24cbcb301cc186788d24b75a576a7a4fe3503986e739760db5ecb0074e0f19a5a627cdbe1f741c4cf24fcb58c65621225c231e94069889fdbb581d71702a32b6aa3862c4d84f724bbba3f220f8d56020efe99497e16bea19912078ba1dfab7198ca679af8a7195560616337a971c5ab1e2f6a502d323f9ddc881a45a608f4e93c31c50565498e6cae9f7e8f335eddf07eda207dcf7f8b98377f9fda86e9f488cf7c8083b6e49fdaca1d48316ad05641bf0c77c8030306b710bdd0ba27ffbf217250d126c06cc9b661f20b7a15740c355196355769f192ae44eaec70d12ad41fb5da027c8a3145a5655aef95898b56c0a41eb5f69a24746312bd66930e17d0892bbfd2b5e63f9cbaece22bbe59c85a7a47810800f1bf6cb6619516a4fb3cd8114fa2bb1aaf2ef164439566d2a369223cf14bc7a71e2428684fd318903e043c36ba3382f8626e99bd12fdf39ff9abf2bb5de1dd78d5925522c1b9c13eb54aca0d0687e0afb813d335cc87b3d0ec6849b896453c6ecd768097e5261a14fb87fedecb46dc936ec6f2c9030e727ac42de58d8a5db868126e20218ca37e95c8ac88514431f36de22b5bc411e4d0895b626a452989384df236bd04270297d0e8df761c70f7f3ff322623f368fc76d378077505936183daebc2a130f38d8835ef331ef5c9e2d3bc8aa3d95fc83d69562f910321425076b30d09cb075c221490ca6457aa7f02d3ae91591712d71edd9890e45b6f26b24780818abcc8202fe7d2ea9f0430166e5b5ec6d2dcd6e34b2cdbe5c5c7d349091f004b4f6d61583e57ff0a771896a868503301f32e82b3b59fcd9cf5188c31e847325417236b264125d9d721f842a9b1057a624730e7f04e341bc367609831cd6c16e1342851918955ac83a3feb9e4a2cc898721b6db082fac7b42a2bdad7808cc5c630db63545ed81e14ffaa1e26ceed492c5fdb0ef2efde495afa80000bd4e6288f26fdcf7bb03144886867da577d65d0a1978f987e0029692effa86057014d6f4b29e2dd1dfc590740e742d1cfbff72dff11ab3de85627f0d36261e6a7db5cb78abe83371daa9fa6185a3b5f871ad581780d634b0af35c7254655c3a9ccb81b110937ee27fe4c015985bfd5a7c2063f41079b72cedf620503bd8e118f0532f7175fa14485613c3cd03bfbdbb0758ee4d69486ebb999639d679ebccd720229dd7273e0cba43987cf6dc85f2e00fdc7593955ef6e583c803ecfaeb2b4bebc1b3e50e9eb8ec0adbd83dabbd24a76f2574f8f8b03ccdd5ccbcc70e2e05dc14bfece61a5bed5f9222e1b4386e3670f1875b16cfdecb75e99f47dda6999af02b5f1f02b72dc97cb0388272f0d49a897773831388e4a35c724ae23c47a66df0cbd83626d90fbb7cb16673af3e9c306dd39108bed32a00e2286196304d98f3ca2d62fc56c2b555a2e34a2c478037d6fd5f93079cd3ebb7ab7079e55260c3f0d5b3a8f4d75742f420c394bdf3f18799259023f435f360dc7288c8f95e699fc776590112de3b687fbf65cdcfc35b95049d69b3bbebd0bd82b3ba0da22e9a8630b01ba56e7bc8021be19e81ec13a27c22a92d4c55487623c0cb737e2ae0f3e10e41886c0cbc0b2939e488e109c3e2d5eb65039fa4fd20a0f80d612257521538d56e5129b7a59b4f8d38bdbf0d6e9f801b0bb54a07f94510b515d3d001be5cd34ef60c31bf28a8ddb8e406255ae04ab78a157c1595d488150025689d9dc1fedcab00ded8ba919d05de867d00ea946601ee82eb794456f009a2bf4c4177f62068bde098dcf62cbb57807dc4335cba50d771460a110e54ce5b885f446ca552b2590a772c1233db7f41d9fd3af35982b7834c29ab29e6b3354b70e9ad444ff0d151ae4fc31525d1d5cb970f32a0f2840f1df8555dad43665ca3aed6492063deb3463999092c8f2fcb24479d0452e43c44e1ca551e83c900f7337c83d060c28d3b3601ea8e671a9271e30df92f53430b1a5630fd50ab4fb678c9705cca2d27e826b23418faf6f6936dfd254b39a39015c420e2a0cb364706580a513c3352c972254fcbf1e8e9bd8f155a22b72f1d689ebf21257d73ea0fa49c28fcd6a4a1ab747c44d2b4fd170485dd94538abc61e77e244458b3e99e2c09481ed2325816a593ddd5631acd7a3691499e31a32c2e4c4c23d99a6181ee71d3c277fb2314d450b2e30ff8d2d1d200e1a65b5daf4a75686ce23686f3ac8fdb8833a3f848fa38f6acd8e8569644afc8ab09424dae2f04184a0a097754f40db6c9af80976f381aa7b5d2a556f248250955c00ac85a55b0adb869d0cf8c2846045478a1261ae4edcd9c7eeadcdc034901438ce5e7cd99237516c81217a63e6ef370cb2676fbb8206e8c2898f33f317eea71fd726f826b66faca550b92a9a11210224bfcecdca8b9357a970beff73189852a56b8a0a37ae770e1eedac08b0e1f89da797860cd81003cbcc1b39aa44275ab4e5c8a50534fa80dd811b3fe7a0361a9a41bde1930e97af8d0a6295c566e6d3d53d5611d8af23167e7d7cc90554309942b997dcd7524438f948de12576393d1f54b2b0caaafb511ca5a5755e6de480f1da03d3e895eea5cb3ebc92bce3c4d3d912515098bcc248a4713aa2169bc5384603b80b9d0bbd765427d598454347dced2b54c9b2d84092db48aae9f386181e0bded64a314dcd972a9fac468e232ae094dd48b59fedd67c30d38af0daccab28ae02f243dfbcdde568614caabe631580757fa369fdbb8c6032cc04406e7e92c4128e1c6401ebf09e21a9ed46e621c3cbf7e2a0d796e6bf912ef91bb98056e43a32ef39718296bcff4e7ad1a72292347b30abfe7910740b4cb04c9e34d4b35e23d2e506da7ca1d16bf4cb1b889634a2950356a5497f68112f632c67e009ccd929c2fdf67b8bb8de6094c3e736911310d545145cc6852f07d0a612049d3273226d31e29e2d21a5e6a1e534206f676dbe216877881e1de4b19d6e85334b1666ec75fa397a53a69f00b3b678a796e6d5b0ca59a339822f16b95894cc7ee9ca5d4f7fa9926547eb4f2b30cfb7f93c6f37c1740066e94103faa07e4249bac2c0055bdc0d88903e91e9fb76497e5eaaecde46b393963811dab06548404e9d60b0676532b381b82e100425f87988c18883fcb4a224f8d37a7688be7fb01ce16f8a0ec058b9d0a23996222ec2d981a894a8eff1f35364e38488f7c7dbf5927def71334f11735f84cad673ab4a95085988c713556a027a192f1e731445df81654d0ae8d4e19f7cf7532f1458d8ea5ab64e4053f015073143aa2b1c5580f564a1fd6225b31db3231fbeb305a3628f24a2bffd28cd19ee25c18c3dba46cbbeba6a8f698558d2d0c063dedf07ddb62402c4a5a2f5502b1f12e5ad6ae5871c92afecee9797adef8fea4ba7f65a9b4529aa55248802a5b49107e8f914391e0daea80b38ca8b86b6e9ee4cffd7c6c9cf9bb364b26db8eabe6dd964af819b458f26c37fac73aa69a3536b51b3dfabb96d22c5b076df0ca9ddb3a9be8f899d57572a5c9aeb37cd6bd188b5d92e9c5a8979b2b6f6c144dc7a4bd6883076476596dfcbe52eaa855a979d18204e12b0e9303f6a68f6325170e5a3b7d7889aa234c0a819d30c65edec30b4f20e5ef9f706e0486be8fec62335f40c6d020c7adf20df6737d594ab871fea9755c816fc99388912dc65d66ffcd74ce22021ffafee1b35b7ff3457d5414e68c750a963762d20d94e2ad528d52ca95a930134e3f8ffadb1677d87e574198fbbe45d0e6e90405bdb70380299a7cd7650a2992bbe254cea266d93beb4125ee65a56ae33a510236cf77547203df6976935a2f07fcf7c81533d1a7a238d080e25dafd4deb532430e2542bcfaec6cce432911cb5651ed1f3298b13c726854bd05181038f8914ad933c07a26544f273042ea93d0012a480e62bf5e0160a6e429fac11b416324b11fad91abd5faafe59364d3d18582fb3ef2595b703af3c8580c6413aa9364706e1cf8ad9ef8affbcb6ffa01bc19ca77ec4f69c8a7155aaa38b0a76062c27b559a10b72be1b6490cacdef3e4cdb6de140053549414dc4396f07556d287c8a7c7a1016691b1f416154325d29965113fc3d55dea018bf045254f098f1c6211e146569bc3e83f7017841545587cd9dfc36872b34ce2995becc748ec27e368754401a93b0111bfed060ec74815db19794ee9db989746c2dc1f6271a07cf2c6a12a8560901aa7dce4be6068a3c0d69c629cd3dc5898e15093c6387c57579a0326d7bdbcb3260d1089001bf085d3d040f7173b16d6cfabbabd3c46f5db0494311fa97780e58fbe04c553f1b41ae1aeca6569f3910929a0690961f20022295fbe18e166ffb9438ef88c90a27a5ba4b7b8b9b55d08b025da9ced87848ebea14233b305ac9575575b78e8e9cdcb1790b62b4b07ca95833c1d203a0f3890025053e41b9f81e3a0e0d95daf487d059657111af21623c4a39fea0ac9a3cabdeddea12b4c7931f6a60800fa868e62710af5585875ef4dd152221409e876e4e48db5bb90185c71276c6be28eb4e2ddf377fc17f31698b27d1e84ff5fe80569ead0ba17ba1ddbda9c5fca2586a3275aef877e949daeecd00ab075bbcb858ba3b9f9bf6c31cb8fcba30a7d2f46669927c402597628f4788dc2ed914fc4f275ef85267023fa079513d02348b3852b64c2a822ebcb48c9fc118ceab17ba4797388f830c2d5875c0f88b87fa6ed7a4df45c0ca2a6e01a191d1629d948ca6ce6dcc798d5a87835f4570d49eebe37daed184b1c11d91bb66e787e44843794b1d0efb4c0c6842d5f61a2b0895713c8505918b2d51ce4c8b433563a64b36248db0acf94e459aea897c2c92525443b141b14b9d13bcc1d27e1f9d42c732cf8153b4f4837eb359c051f1e20698fd627a0dc5fd5f2a971f9917729f3f98552fa3e8393c84ab2b0c30c3e7f42080cfe18d80068474b6e056e02ade82c36a11f0e6db41dee0f19cd5e02f730008923c12e41e111d584fa2ea6f887ffc7957b33283421348f46ab516367a6c90e60aa8d808fa8e9f084bbd81a8f939b9820def181770c93a3081576ec85172cc218328163f74b3a0cc1027837793ad064ff1449e4c2bbb57ae85f5ebd331e42d2cc126e6d2ae4c798161fd00dfae488ba002fd79440596ee827d8b273ee1480c7576d09dc090f46c42ce905c51532b9425e2153147a84f76fb6a2b6e749b066837cdcb1b32185933f8bb8cd33ac337ee0ddf5963ca88c5afc8a2d116c8c55a5ff36d8cc04f42bbac1a5de7d97392454d1f3a1c5e965531b5a8a64526a1a3c2f1da3f10b15778071bc637f4389f51159e79d7f927c04a12dbb5d699bfe3cdce952c6c94a403a7ba2689f7cde0ec5a9e4b5b53ced12e020d8e683ae15138a46ecb043a04b7321990363c41681da30d932ea8416a89d675b83dadc135799aa12f449502ecec198797a02858347ca6bf4d713286967911b517363e931f97052bd0edec48d9ae090881cb81b15a92b76a49600ae15840a280f5a65c3977e244dbe24bdff7c4bb31f526b44c3e31e1aef3f44c5b664f3f21b620951434936f2ad8d41d2451a08712ea51db663890148f316ccd37a9c9927ea335ae55e5d23194901674e6dea5d12da3d722650048dcfada2506f233d33adbff0d99f95bd2b0bf09271fd11788ee91cf210a67edc1800151926a30a747e8a51b0089c96be73ca10715e62d0f45a46a379225ec898626d46d47a84894fb226ee238acfa9833d8cb90fbb3f9234bfcead8c563605dcac2cfea48a855750df9a482b60d428e604902c2fa18445f10f6d457eeb69328ab41053900aebe9aba81dc6e7ba31ebf8640eb31d36b952b82975d36a0e0d9267172bca6ae808f1252f861219097e6b90edb1007e47f1a68342c61a20352f18aa84c6318ce91ee8d4eeab8be5aaab67cacfd1110d26025a212f9c8c08591534494187ec8e1d7e51664d92f610947d9c5b08518cad9b34489cb1493e7647a2e835e2ae4bcf3891b6b058b65fc6688008fe48b3ada7e2d93683cfe419e6a928122e20a05ff7e0327b51d901cb2efa17713a191ee84fd726a02b2cd9e6aaaef60c4bce84ad2fe94df51368922b9c4e0d795d6e4dade6c0d22473a5ce49117ddb11b81942201247501625060a8ac17bec89eb19343ced4b44fc137c203b718392f4092c6ec34b738b37462281ea6ff68306f5eca14c49982b16f64ca646aba27fe3db93e1785a289e5162479175fd3987fc48c44c3b54ec2f24ea88cc58e8472dfdbbbc6ddf7c039d744eab6b06fa9441850f8301deb2c6fb64bed5e616c9ea964a624c81aef856abac2ee9dff8fa8b3ac833240666aee9a895e8412216d4632c51ebadb8977eaf323fb73eea328a2ad370f2409a582f3c58ce7aabe15b963c7fbee65b44ba2bb7ddc7da743f46b8287c20b22d2987881f9dd2ed5928490cc96f7d6b2f03c46fbcd49a32009a80bef4578b9b1d08d98b89d0fb7e1fb9d1731e404dd85642ff2c3e7eaea9b43032cd840ded7871acf67fb76775fd80d45b7ab64362440f9b9de13bed451d30e29f423048dcf28a3a9bb2e7d04bd076410cf27bed1f1c2388b1d6fc098a2b7e9a8dc9a21e8c7df99bbf83162da7d4907b713d730432006c7042ae9a6a3a4af022c923af2c6cfb4d74560121763e7d8e1f33805b50ea6f90ccc0462990fab7cb8ec0238befdce19fc8747f24d60d8d2fbdf3e028851eeb3f624b2f7b6995ce736c238e03c3929988e98c137f24b7f21f23586e94a09a5878ebce2ff2a57c0699963fa5ce21bb92fb724201feb4044565b6c13b3f92cfeedc1d912e05cbddbd4763fc03d02e0ca0a805b1b0d537a0b9dc14961b607522529c581f4123e7fd46d88525ef7f7ab286ea24bb34656348e2281b76f067b294652f97c5d84b73cd7c6f263ea11df4d81072aa5bfffca1b273c5036bb996d084c4ec620a9d4d2cadac277ccf39bfb60b4771f68eef3ce9ee252d35c7792a04788f7c16fb94586163bf5f181039ef54deb8c7ecc54e655d2f95aa2c4a490ca2c6a92335d57c94874f13192cbad00c6aa9805674b8fb63d8269bf2dcb7c93a7037fb2b487d91819be7c29754546f6b0b6cf53bdaa4c8d0d1f1ef063778144c97e1e874ec1c43e08416824187698e53ac40cb2d90bd8eb5400c5541a3b56eacc92a6fe71f907b998bf801362c4d69d1271ec28b1ac0e4112449c7896263c54ab9f3ea03d5d46bbb97afe576fb90ee0140f63e55b0f42e9e2a5948d4ee4c1b4a257dd7b69b169401ae9f0cb69041822c45aa6aaa142315b5752e1a66b22855771e0a2e464baea70706131a6c2e4a686a13854282a3a352c492038452c46eaeea11ca780c2a16722ac559104a0d60322906949d525162a302f907b3ec9aa4e87a458292c06f2602afd3811c35b0092f42db7a8e0c11c75a8c650035bf1900d56b4a63b618307a1e2481ee404d21a68baaf87c83163022448a2a1e4d95e44269c0e123aee00269f5f01189d4bc53afa95a2319470592e1af8bf712fcebec758f58652f019e72c5d8235682bff5f8fead1e85f69d63ef51c49bb3883e8a381a9b18f951cc614d69c2f1b65523fa2862a86105bb05610545e7da1fed11215457c9a3e05767a43d6207761c54b967da23563fd9cf5860ec5f893a79dda21a1eef6d9acc41adc316093c1e3ceb8b1dcb6c605bb9e26b1aa2e662ac578ee4e6ac5ea4aa00d317d032df18fe9157a13d62cebb3ca091aaf1bd542b52b022ed0dbc9cd0228f98c18ec57745bd504b049ef37f788d4076a9ef204ef458f8e5c4cc2255d641b8d43b4038c1fb5666956b3e860a88b6e734485118fabc49f81ca7fc963fe51c291a8fa78ca3d06fdb20dd2738c814b0fb67e783cea622c21ed19d621ecb2751a372988089ea80fb398ac2a781bf72c6c77763009cc1cea7621fee1edbe1dba6dc2dd8096183123321a0b5f151b88d6982cbe4a0f8df4ca4c515835f1acedb705ad357fc8a125035c83e66702297264dae6fa54bdb1d7345561de3eae9d8ee7554384f3069cb8d27d49aafafd1c7bc65079bbf61fb6bf3b93738f91fc7700a49ec89b57f669c88d35d1b5307dc1b6213ba04b044af87c61ae109e396193285e89b6b45412ec53cc9e8907ffd37c3e61080cb16d370fe673ae0a99e7c763e2d7be9c72a734f502da30825dc02a7e41e0cc152daa037c512735406756de775186659469cdf9ee2d1f3efc39906a352036b9240ab27a41121de2224f9d56a4345039d211d550ac5065fa1ffcb305aeba9d3dac090be9fe3bc9bdcc0284a82aed906b3d90a14a5592c698501b92969a2987f1832c38730dcc3516465cd911f46af875acc584ff22f158d43ac8063353dfd61e81202d926aff6b58434dab241b2d88c77e48eeea825dd77a81969ea672e6248c1fcac1ab1154c86041287debc2a4dec4e6762329212511fa3bd1833579dbf932606b089c6b43915c5eab6646f3a08dbc5dab56613239c7179f466a1f7a4c3d792447b86ca7306f58cd15406e3b25600d88b19d49b570decb677c1079b7b8f843f3c9e9dcf44c5ddbae8aef6cac9ef4230c1a0655ca4df0b7ec82676588b85ab970a8cdacc6188139294187f031ec0190839a8cab5b47523007de666852a8221a7dbfdb15b4a15f64f80df14d8ab275b520ce46b2fc00fc7799d2639c5505f86622fea8ecb9563079c07f106a5fed4a650700ca4e8aa35baf5849a23a4bb0daa6e09b4f33e545e444e6a9fbc1d80965f93dbc6c21b3fb30aa28e9e1a360e913f684e201054d0e48e1189a60e7f4cd3f018072d8947cd262461778d53b07c26bfad54f39f78027e56ab13392e15757eb8e4b754a64cf185d20bee8e6425e1db1443e77452100c99414af312340198e4deeff03b8394186c83a3d5cb1af7b85c5fdcb4379e56b30ff8d43e9ffe635127d2fa96c8772e75e0436ad92538c000588050fdbd291fa49ebf9e1dba3a200032ba5f3c44d875e26c33683f60067384d3d598bbd9dd8fe29cbf65700413c27b65ca7f07208bf03ec17c80cabd21f5d4b4e8dadbbaac2e485c36742d71d219e3e8d2819b6f5004def4626c3e0ead3400338891f8e778712bcf5ecad536246c78f75afc55d052236e5cc8a92fb0bed3a89bc58782fb19342de067a2d140d94cfeb4087054eddb13c05a612d101a1d1e5466432895544c9a98e47f8271bbee014d82ffe273416946d43e0fe51ad57925c9ea2ba8a6d1ae75f612b8b45cb67cb1959111e7a2c921d29f7411fce8e63f029f36d040ebb024bac304288460a68b537061280ca4ef1e6551566b3c2b8156055bccf9d17e0dff416b20b62b269c3483431d0441d8e5bed023493eaf4b179a64a9d1d3cfa36361f68831c0c11eff51ad6af07731d8e90c062b1a10cf4c8f5c31da334b00df77e64c775d2840ddc487ec34dc2238b8cc8734c61162e59ef1751964c78a803c516fb0bb8199371cbc5866152c63dd4214ab30526ebfedca15affbc72183fdb1ec2cc1e327dff4b58b260f0056ea21573f0ac06984fc65775e642080b5777ea9157a1b8c3f2631e63892e9285334e99fbf08daf96c3ee2d82470d8bf246bb02c9bc7530053249e6aa39a8a9b916675eb084195b4dcdf3b802cdc04c3fe5d30d63dd8acea5ce3cc34a1baed1702a1c67e6c66fd865add55b03313278e8155330de59c20c76a6a5a8dec148d5451c436bcadbd327c2b62bcbb6429081b745941e141cd5d77f760af3a49c588b48c31a4dac38118ab41fde27caa96124b45e995c4a7f54ce786f849f9f4510031937f2ac511329a51f2f60639d5219075c711578857208c139a7e500035d0c999362132fc67c71dfa8a628fbc94253e9f7c0ac2b2970e390bde35440218102b32eea647ba6f124fa7b8bac1ef8debe89c97453b46cd353cb68e43404b351e7a9a495b3eece4212f9a4e713b577495084a81deb939ec68140868964c283ef7dfe03ebb18c762540ced31b6513924384c3a31ba4a43bf0da84fe1e94e870033b672faa528f5d8f520413c0f2003534c56402326446b021ff91179d8378f4aa790f59e562176a2f061a8aaef7608218a17d63e3cd59bbecc31a5c849f194f3f14e8ac98ede038bbd15473e06a52e910638d1e2a36e1fd27eda7b7e59349cc91fd2183d32a7fbf25c35cde536569d2203124f6fdfd93a593eb3406e9ca7892c77b08dac0f737327922e4d700600bcddf8ca73edb3af7ce7837d655b86e426cf6f2e24c5ca2eb9f28696e3dd76286d1273ffdf4d2aef5de66f616e543a60cb676547ca06817558a452d8bdc25606331e5719e6d5eabc0488e93e137884aa07565918943a1c439e79df489a0373199fea004e46729fc010467f881461968d6d13dd93a917b9a97fc26e9d79b8eab616dffe833ef7b7ed90dc12e72cb93c30cb546bb0127a3a6180321bec21bbabc095e5e0933e5ec9ecbbd0cad5de37a5499de9a98bdd4d1146d4a5a353bb733b71307e807645b7287d6d9bcde83ccc943b57ca40b0e099b667153ecd03bb1097ec6f5f55b14a020d8966e8786e26372ca40c3db56c514e06bf9007cd635831d21ded8c110519cc31b6532c33ca8521b0e1740ce435e8c88846bd46769b35664ebf530ea69309a722b67c1b49364ce11f400831e138cb322dc4568f5a9d39212ff9796f8908b28b2587360d461b3b9082a636fec836141ec698b52d628b631c5ba02c9fa5a7c1f9422265fd23580780989d5723a39fa3527851176ad868ca73d3f06190609ea1d2ccd67095775983b6a479b09c247b1cb7b5a4d57ffac3c97b3c8970e9c5f914cefc5573a784385e86a8fbce5a5aa5f988bbe9b89c649fa71c9dd0b52191898e8db77e311e474ca42dd19192d6b8a99dca293921c6a93044766dc8d76c0295f68ca66326c9bb27aa0f362060e59c99cf0856dae8eb480563cb994b5f25f084e8193499a9efde0e5e6b3264d86c69bbb5e742d763a2daf62d929f7824c8ed4e0658ea9b3f28270ed1a3b7e79cc5f3b9e66e449e127571699f42430fe4bce76410bf59c4b493f4637b3b3a003d88665160d58b2a3ac34ddc81c8b07042af28690a4b2c040982e2798a2d9c9909ffb10d3d4674350616e9f16a2ca4f1510efb29cd93845b7dc8478940b729efa7b9b1fe56cd965345731bd860dea8591b4cc1f38edc4a840bff6c239e31b54bf91c9c1bc257ec0ea657b247622c7f85080720ca33fcde19f8901f19ff7f207c785ddbbb5879b6ef96b61f93dfa22b28bde48a48a57c85166759892f32ac2ebe2c61ddbee205e3efb1f054d34a25de3c89384ee404c5a6fba14cb2bb1f2c15684bbcb29e3b09c6e8beeec495384157226efa905c5f351a5a7ad5f0710ab44cb1ffb938cd0c43ba226a7287de33b4f1735c131484412fe40d4ea327cd12092cd79f7d28769dcdc10c86497bcc074a9419a101746140ef164844241dc171ef1ff4ea4a3ed3fb7568030ab1bc29cb99b816f896ba35fad72b2fa9a76b29db03e599fb94b9dc99aba278810c4c118265c4b3cf2cb58966ff4c6a372c7bb6d9c769aec2dbff7a93d3fbd2923b76f59b452eef6c4dda78db1c1c9e577c3b4544c2d00628d8498fd923b9f2b0b8cd39b1e053f8d4df4092040f4d38a45126bfdf06e395f505bcfec7ce36046cf2e1c18eeee3afd9fc8204f8fc17c306cbab059b0496491d8412579880cc382a24b6f7418e03dd2d3f25fce12ac62de50624e62d636d0ad4b677fe37c20c6bb3b5c63effff8048e6df10f7016206f0e716683e35177b1e9db01dd61bcc08579e89f327f9b18148d477ec0c8075f85b1306338291373d5d15c03bef9793e948aad996858ea607bb6d83e23a1b87a4fa819709361cb9096b410cb4ee931be962e0dbfd9478deb80ae84efa3b289e0c7f8e8602a6bb381047c5c1e04a881ab9aff6b106430a98a044ee698dd9dd4e8b77cb8b3f2f34e2461239268dafdca3d0649c9c8dccc64ac661c7a5cdc9b4e4b3598a6e35734bb9703b356ce15ae061bd38f537e1b141c3cfea4e37e6e61f80471ef3b009368173b17732a97ab91db4842d36b108854fad890138746227175a425037d00b0f8548e2408fc58f124e04df6c967cb70efa1eecd538093e2dd2cf207438d4ffd005c39d8ca98fcbd7be51b19034f05e512ac7cde39a283ae50af7514e7db5b26f365cea8d5faef7789e292936ef7a1ae859460d9a3d0d45aeab052c7036125f5ecacfec447fbf94b9006d61ec902a6b6e6adc7ecc46c12867f67cad01c36378b6dc1917a0d7872c425df42ee8088af3530d5733181b39c5ebc40582d3710462341a62e9373134d62944539e16536f83b664c019a6b5649d926fe5990fb381d33adc6a769de4d73ae4f703547f909624f9f9c26acd2a3cee2da54d218727ed3fcefb2a09b8cbfa7bf03b43b02699b3c429b6254eea7a26cd2fdcd49ba46c48b6fcc9fb3d12d6e75d7b55757e62220822484b9c4e42782a4621d25c3cb95f243e448912fce8a41026abd628a2f2942e9f8d8b1380099755f61643386630c6628d4b1dbbdeba5d68f2a3b5789852c63da24040b9e5ee2541452fb11de225926d97d87a35495a5276c651cc0b1280c8e6f6c0186f7f23cc15e2041b7d1c24f538d4f6d7b0aa73e2e30c37329a9c49aeda8a09897807cebbbb213319fcff81b1cfa3df28a4ca6965318a2742b6e7ce9f928f26d6eef19963daa4068917be60b9600f735c6c1e4fcfad979ed154ce3f3a00fec181dbf31cdf896bbf54dbab32b05677a4bb5954e01a11073d9644854acb48200df7ba480f16da35ec3a1b8f1868184c2346af4efff4babc3ca2fda1eece2ffefe27cfcc14fac298e6e8ab30c23dfce65791f49af1c07b1719db5d54976b65d8e39d64e920369873700afedbb7a6f8b37750ba15cc712edd0d74ab879a85d0d97bb056965bf3d0c966336cf8317370648e4e0a6859ec10ff2dd3324a35eee9787d71607889b8941a58e0a2e101702ddbb26dbef0679c9507d0485418e33c11e9e70b0d45ef8e77e8f7d181aa05b2befc6d711558637904bc5d5a6d5c2738f89da4947eff398a325873d1998cd1af96a4d6df2932ff789a4d0af58b4e2116a8e80a8cd5e5df644685bdda71d47e2714bb4a2ba932e921a80a0ed0a8b7a8f129759b7d8454e0dd7cfd46508d552c42f892b386685f1c64071da6c99e0050b0f7563df909cdfd0d415d9db7452c6642e35b008d230b4ca58eb88af712b9f48d4d8a77b5b0243064c9a24531b0bcce691f7293060cf0739dc431104624a281e27c1f449715d9457830500e048aea829bb804f0b8fc25ca488e31f1a3733f98cf6b985fb8156b17e78c083cc80db9ef1e868b679d523361771e90341a5d3cf28f0fe7a0aa618d9df5585907bff499e1232fd7d90d91ccca10eedab57567b788c5276d94029ae0e64d44d221ff89ddf2f57a38a5fc3de3aa30bd335847692ca9222e265421cba09326ade1eb1c79e265a9edd31cad8b9fe20509e66413e9babe129c619932de06bca8deb14cd903dcc80afb582b386c094cdd5e53b323f29d255874ead2200019bd5fdc5f629e6d66d642474c97fd69f3b828a12ac82de16455b69c363082d60b375ef548b13e91bff6e17deb970dbec39c6de1e3eccfb47f4b26ce837d12305e5a2835fea161100b7b14d57042d26b85d8ad4d5835aa8610e939f9b7867676210487181e394658e7264241c988209cea013ead3f5c033e018c7d651d8f9638e7a35c19ee22fcf414fdf7273ee86828cd1e62be99f6d4b43a85442398776da2b84574a7d6eac8601b5265861fbf454f891b8f29b120eccaf366fe297e55a341e0e0b93c5611aff8ec19ab3f6be042fb5341b67f34dad304e90d920c9b8f7e375a3d3a0401b6e7fa66ee41c78115d77283df32f6ea12e799b09c46ed2e02cdcc765e07d212ed4cce522fd728f2fad9f4ad6dce69feb2680a372b10b11a286961f8358993f646d3d0f36c54ff4a97ab9df2765e646aaafaeeb7017c58094d94ea33682324e08462a3cd02e3dbbdb2c3de089925b643777b6955fa085205317bfda3b3beec48259cebfed2bd37603eef6beff8c40ab87d2781660cdb53e813adbd67413cab9fa007e5eaa2fa1cde8c8e9aa3240f6ac57ac780dc988936bb61076279cc965049daad7fa85eafcc9f33a5651c990a03ba66f5caa276665e67489049d97922f1da597a9d2f88e021196e74097dc13e19b5148bc62fd10036ae4d7f23a8324fd07bfcaa05e85a0cc45e4214d8ac57537098f1abec0fa386dc5ba6c5437814a719386a39bf4deefce43d69f5b768bbb4cf9a85f220649525eca3f0f730014eca5f470fa1defcc82dcf3787fee80fac5a772919e21437d3e4ed21e57c0bcaf1d7c6c20bda426cfbeec1976e08fee3b54bee9108bc3b33076eaa5628e9732e24069ab045661a0228d791348c2c4f9c2acb9e430586de4346927330f87411083516ba76c675a9b46e34337a7ba341558257c73f4ed4354db1ba68b688098a9510c48267ff88a3af2d01a771ff9a33e68e0eb4cc7ada4557fe08eb859314062806e86d3beb5d679bd687dd1aea35a14ea715a441029071c0cc1c5932eab8718f1e1dc7d9ba855443c2d03af81ba403e97169ecbf06a7073311f3e3420df519cd14d7a60d828830ae08e45e4d8d4b240a18ee81c6a4fa90a6ebb821a2733f4117e26890a4abf99121cda2ca5e61117ccb7b33b8bc3765dfd58426f4c22cdbeee461afa3ad2f5e185cde03bc4d5b5b78f869fe881b77c6498270adf40df18f46d5fc232c93a075ec91b7e43ea48dbaf871657a641aa8e6f6d5a58085998da705d08206ca565339535dd46a7eb9b06d776cdc17488a7dc8d4a92708a5b3d3aef88ad98c317e5e85be170cd52b884404b3d5134ef51b7604a65ac06743daa8e018045c5ac6709c6609b4f230e09178d444d595e78a451f69fb6485cc2613a876384c1bd9aef7f4fc520b227d998c7b10ec1bffa252c7502961ce2571fcfa66aa27e8c5253913dc8630b20199588c7e1f025cf5af1949dba60698e5c23e9904aceef99a9fc41c5516e2aaf8ac35a9946119fbe75a21aa6f1e6586987742c3d4ff743e8989b0c5d0848317532ff53a15a8cb1d6ec1ccf7f711f9e6ed852df31069f659ac089f052f3faa242fe7695837c0c8dca8ed316e6deb1366781c3518bc4c0046b0af48364ecb30acef5c47c2744235eafb9fe7882fe757952ee49ad07c724af18b4fe84444261d8e9b059d60577b6312c7d35d49cc49ed8f3a8df15236aba79cd5454d1d97e60a7e1c89dafeeaa3cb265e76070429f5a61fd550e61099822852860da21da0eb5e8dbec6c72e5c9519c6bb1b7c6d5ef665015e546e766815c0a3c485e38e1694ab4ab49c381190484659e6e944f094eae379a18a30366a01aadd61b1e3b71d0eb878117f451228327bae9e6ff47ae95116c539e44f6fc1d3e66735b586319df551c30b39c1cba7510875dc58e2a30d694a970307569770ce41b50f6c0bcf5a80c8dbacb3ea0d769cf3420b1191a6b1a36082542db1c883d574fe785b1d90b497ae0f1b1b89c4756a8af8c59a3417f07510ec194b801cfb771366ffc49c93d3c683d06249f846292209b1becd4151e7efca0463f53983bfec7ecd250050048e29b42a9906c5e524ca3f04e90c1f56f13e37d04afa700a806f0dea03741aca5c0a76ce1e0ed3276549216246fbcff45e00ea9e3a8040dbacb853706117eb9d410e903f5c0ef1f1d232a00831794ceaf5d282e31ca7a95cd84d1c33792503db3252f0326978b81938810875749e265ee7eff36104e0c3f3d3611bbeee78260b8337cb1d1f5ebd0fe7326fb36884618809944a898df61ec36f16c29820088a0862006a9a5c40fa9d7ec0795e95ec3a3c4da53068f8e2b15a334d4d272e4e261a59a921d4b2502249c0c9ccbd2f7e0d48b018b4c400dcc606758d4b06ed486b139160bc722fd66ba8d5890c507bf140b0284c8871e30d67a58ea975de5b7460e4501a591cc1723e23a835b4c52867cf05933a2a1164db9863533fbaa8a94b4ca11f9f859e3cc210cd65e0420f9ea4ce1efdf9f3d4f8fcdb71455808de52ba7d1946d701fb833ca5b7396a6c928060b7b049897f6ed43fcc439f5e3298414e57475cfdafc216f4f98e0af75041d49d85d715b1289ce6fbc66f0deeb962a472e8a47e3ed720e4e9978cb509d8f4816750f3f54cc16f97b9b710b89c7e68fe62eef1c73083a0dec89340ac0dd708f1fccaf70661c24e2dd865f6282a872c19ac474b92f8c1d3943ce6aad09c591eacc9c17cf1695665d9b6ca93e9281fa7fe7edb9cda968a58793085720b93f0d340356870620e54fe855ef1084de548658fcf1828110991880e992d49041623b9f5c9a22256bb5c54eb41a03d6fb36bc4584600b9fd311dff10e3a4a7bed4c11c7d643d15633df67c612faf516663d6b45c65df61c8f0e4f48ae1a484f429f41b094303ce4567fd0753b081c3b43fdb2e9b653417febf63c2063e3fa84f62672012a5d4ebd2354c614721d7447cc0d8635832fe51d8dae67fb545d8cb9df76dca89f6826ca75d662c28e45d546f3e91ec7b3efae9cf4f7383939d020cede5bad1486f1afc7b78ceedcb14763557fcd5d0406134ca78142d3a92dda65636a37120c5722b4d7569ea92a2aeea9981484358eeca400ebd604a44a907040761ebd91b2d38c6523290822f7f515d305d1f11db32adcce296b9728186b63427f03c4ae6c9e01df5ab950a95c19ab32be359e27229ec54cbaacf594202b053e15dac56451c66012b6f052aa9a7d51bf6aa97925942ac87694aa0ea085b51dd2a7fe640229d157fb2b6244662890747d65e279f3a198b7e50c682da7467ab6c55d3cd344af1b0abd755eb9705d2af564a4f379489fefb2b6e94dcf8e0d36f9a7b6ea9d8d91119941009dbbebe040d3cf6a6b27b29a8d4b65876c288feef1b5fa9fda0a2fc6b191331df7ef49eaeead71e23eaad545a3e3df8f805bac2695f86756db71970a2ca5d7aac49666180f7dce3c73f34c7bd86de2d8fe2fb0709257a9343d5a7d9a5464ee970731b4cf116419246c1d1fd492a47ff1ccd14f14e9c9cece0445d1898ac44e548676a6257c9e3acd883a3a1b5494a102c237ce785f84f31d56824d36f473b5dc7ee72446c1a9e0ef632e1316ed7f8b5f2b41e2e413daef82faf83d97f000933945a52e4cbff76281ef3460b76c8d27339dde5b2f94bef127bfbca0ebacc077f9c9951d51036d577204b3a46f669a0ad2f3f8ea381f3151a8c12869e3ba70ec622f1e2ca494f1d507e6e854986899b4367de7dd474982be874748e3ba4e4383d800fc35c491f5826989a605fcdee5e9fbd458c8048621be5e6f63cfe3dc6e6c16fbdf4d3df9385386cca2a90d3181f8b50f597526532c883fa48178c9f6b9ac94bf479e3060be0f7dc5089897ec93e8bd3f0bdc3caf34bf6f7e14b5ccf691f7335a8e7452c173a5e9df4691f53b87058a869a06be36bf708a945edc6d8cd201fa9ad6b38990e511f6617136f964ea269eabb3e39906d3c3e06e0670eed7e382cc9caf98851d92983d1e50d22359457523799515ee1ce8afbb346a434f3843c28af507d800222a29bc229b1bfddb097bf4ac6f9b8c7b0be96c06f4f533138d132125062a93116760571330828e15a6a2bca50ea14cc089297e41e0b3c99424bed11232ca47d42d92b011316cb853af11225e5af273d9a5779ede0314909d578c35cf90f44ca58cfe4297f3d537f3fab83581af591618915a8afd40a1f81c43e163a3d43ffc87fb9b32fcce07e6b3170f28949563408f075542fb54f2bb28a2f9155b49758d445c3afc78f19ef798ac8338c2f46561189a4bfa8b11f12c04bc45961db4da83eb63db039d5cc5b57c853ce146f1a9f484a249fe303794efbfc598f7ac6d2db6d20a29081774a790f5f950c4575d78530cc95050ec8d96d94f7d00a90cf9123809cad1765facbc0ede6c8135af086ca8310d401fd8c6dd22e7904448beb40007b089d9bc7b71fa55f41f744141f83f80e411ee0c3a21ae1ca1111f511431da12ff1014952b49e639104b51ef7dd39703e7637a484ea32e1acb31e64cef890cec7966d6b6c9c1557d44def8ce44f0f541c7f45b0bc047d4cfd2ebb78efe2ffa08f917d270a34a7022209906cf47035e69743a05dc12ad5916586501d4aba39b8a302036565e60c0ef08fd1af43b99471b05deb2d259b0ad7463a7922792e4311dd49852e1954b1993b8fd10921c68f55d81d534a8d4e832b1a2b29fd040d387466689a84fa576d60c2365a9aa35a60246c46b55fb75147de6280b2ec6baff42b35c1ccb577f1921edf3c32f3a3d6dc72965bf01ecd27be641fc9baaaa6bc3e163a53870d8b89a1328582321676bbdb80f2900de8b292c98b399f781365d3b6a2a6e6366bfb608661083b33c2240e262d79826e99701108d3a6d44b9e076b50388f53e02c686485979fb88cdc6d77f756418e4b6b8b72533148247d97f48c2631a823b0a9808bc410b511f7ff9a3b599156d7839997ca25eea08ade99d4f76582556342a40351299f250459663b1e8733016793b083ec2cb7d7945bacb8e9760ea79205280912d70596cc4fc01123e9089b72a6e873d1381e2027c879496b4add9b39e7967535bd0547e271cb4d18045d0231fdbf9de95db15d131666256ed2b3a6bc7bc5ca908cff3418c59b6fb12143d579298e5fca9f1b77f55e18bec825b74e5d4bbfc0fa067450defe649fccd7425f8f6c73a6ddc17ceef8dc66cc8255e20592583694e9bdab5135d88ed311bd67032b688d24343fd336c69394e77cb608789b8f412465d36813ba76e94103792c21f5b8d8d462a40587637e004dd76c0405d8b45ebbd69874ea78a6bd4039dffe435018b5c283ec1d405184b609f06863ed5f876019d7931f97159ccfbc68c9622732b80d7345633df6479555014cbb4418d1cffdc0c77978cac43e047a12d5814688601c4dea21c685a025185a29170ffaab0bab749bd29ca95ca4ddc94be67626f23584a3aeeb7fb46cf1fc72041ba8b47406b31c533b2b1d279f83a15e8b95483b5123ca764ed3a7847b9a76403d01583755eb478e96dbbfe14ea337d2d2129d75539c70eb057b434fce3bddca4a8140f9caf168a308815c89103ae155f117c70a06abf5caae57e871b1769bf5f359fbe8bf8441d70e4f495c12fb030971ead89d43f26e04033401a5663470925a5e196f2342e5918613d335847f3dcb0073d587bef142d5309b201813352205f47b268de0749c191a076ea58545002ff18f7129aa2c51dfbd13dcd7872c43ecf21e4da234e2b5b499ca3f97982b6ea5988abe350eba5ec2d2f8dd11a59d9bbcf1a41423e01c4e805e294e00b532c1d261748a5e69a3adcc961273fcba1f461c593aad69cfd68153925a30212139e6bb4ca644eaef3bf262df084f6ccbc1a0402a162fb79ccf6c3bf52f5af26bdd0d3720de224026de142ed3548f0b3dd29b5037ba22b8cf1f70f86c0b419509ea02abe3d147c7391070665e484e612bc3c46da162a32be92dc838cc94aa80201cef3a74bdb3085550d32598d86e90c15d691a31e5d470c043ec2ba916e95e28f08c1053d63f7ac7b7e360ef1a2d34754fab3e1f08bf0bacd53aa4936ad2b8df3721663f9b201d1c69ef0f762f361d1f1e5945ae8fdcc78915317d8e9f032be87f010c993f2d54715a740168183bfe0cd1b903454b816e10955797ca306ed11aa5bdb31dac95a115556ea5a78e2c909d8ea5e9c530520bc3efe8494af811a7122e4fcd8603e743f5fd92a551054692d1ed5b64352856d8533d1e344fdfb28e70b6da3d44be41e45be94167052262138e4ad7d97e9a9442d56f68db3fd936d7ed626a6ed25a89de8876bb9e19bfb3b9142276ffbac8bb29ae843bce3ccae629453c40fc13b2ba014bd44da37d8c504a192a6bac71c975a9906cb939981ed2402d840f74fe93102b5f857bd0b0860dc69b668842a8f94ead9d1535d7a7dbde360a145ffbf1352cabf874cc187487358ee0b849f8e7f8a15e935faea680fcec72a6db39a1e28bcc3f541f5b3f5a62abe4be796c1371685d5a43abc05ca8a20cf5d93a79e55d88b10f3356cca3307c921eccbba565f65527c62f1231b27529ea84cbc4b643da256668358351eff5e9752d47517ed255137cd01f1a47567bdd26b5af0b3a013ca7b114730fbb526691ecb51eae21f93529519a34bb3af40557d8eb6515cad246f0ee6b155ed4f0fbf8811361148191278cb3cda072caa5ee8012ae07325429070fe74a69fbeac9c560e3929bc03bc468c210c11bbe9f280507c0a54d924d92b1aae581cf064b491a9a05c10a4a96040e4a8244c167af950807844200861e3dcec7912c905bd0588d772e68f5402f4e8e53933e3c82d82589eec9036614cfed51cbad7ba86f9b2d90050301d0817eee139895a1b828ffd115e886693f61a0b351a84023506e6dd1bba9748465db2ced7d392b038d79f385185a80e4e7580a71cbdcacf34173680127259c267bc001dcf43ab7e7a4bb4f6caf63990d316b902290e9fd35c36df78711b07fcaa0d192c7e09bce45d243629c0c2afe0c1e26a73d965ceedf9fdcc70ec2bbc85f23d71121cd8994bb267fc7aac078bb504e0aa880374991bc779c512820060d3fd1279e4f8f7bfa532bd70abf51ac7cd752d295875a010e173efdddf7e2c22af0d4f8eb7efe24cc59a850a287924b48e40edf5f31761fcb9d9d20f4127fde627c9f5c15c519445bdceaddbb3d7b641aa4a5c4b38b65adc347164cb41cc38af38ac735eba198f23b9020bf6f9bc37edb31d21c39a3df8e2f5396004943f685b7cf103f4041b8f8e07ec0db858b819d4702dc466198cd886046e0aba6b04e6b3239b0638f00f1a7baf3e54e0c5b1df1ea185d72c2388f28f58fee17d495c28ecaa798844ad17f609944f590b44a53e8a9702784ae4ed205518600a590b7af90d9e229b2ba1373080cc2c38b7b275a699683ed38c15e418a11e17737a80a7026c81b757ed1b9f7367abde9154c418884579622516981c54b24f2ae79d83071971768849c3bca57f78e7193b1b05982eb52e7e2ce8d05167fef3dbbe6e7e623c4a2c7d45db2127d6d11685c9528494ab14a2529d2d838a146d2260d2c66c25b047aa04410096f0c4ad968a8f0e6f81792e77fbd264c5abdced4cace2dd01cc1e179f53f1364d888125a76c1a774324ce3431f83896725c17a29b784a843b538af745560484291adbc0dd7735ffb3d0b20c0b9146569ab237cbe821121506555e9aef80c7db23fc9ca9905ee2a99ff7921e0c563c68438551a5d56e080e40fa6bc9efb5bc9f31a548374afd215751863d091d6ae78c013c71538c630882c2cec4f0c574142f9693cf3bdec34dc655646f9da4dc534a06b7b5099b3c4748695f69e11d8c2515c9bd7038a14ec284edd36cdc380343e5fa17ec688417161fe843b7346f011937ff039fb8f108c25aa1d43dda09b96118cf5e97aee43a97ee4dd106071e9341af4bff2808c0b16346ecfe6c72c75467473957c57b46d3ba9e05ba499557fd8a4fe195ca290ae5630e0f0502e0686087906cf59e0eee9d13e28b948222b4497a4053d1e06626ae4dddce15fd902d90cef596b89327bab92874d413c8ca211c8616b841619d848aa2d7894d156cc65daca8059b83471685f801f34c495b4cb0b0dbbce50731002d201c297e9a28cbe2b0397abf44842acd504af477060cb6d6644690ab8c4f278f479d912f267c4ecccdc20567de85c8ebf231e5fb55f19e720db1df0853ff09deb9a58c9817f48f9abf1698007bc7c050e8e44150e52202015271d59476117bfec8a82496e04f5e99da1259c64d1e567a5f727a10cff4c13bb32cb6008aa460d2c902db64eb0292a5cde5117c76f1576ed42ed8ace5ef40afc9ba1d53e526b84104208217b6f2977430ec50d4e0e32dc4b95a30cf76853a20ceef1bb913282ab3d6a31cae0364b64e6f08f15ad7a15b2c07d4c00c37ee9a677a43e63b8a6ca409583a40ce5ecb704908a261cc761ff620086cd03fe07eb23979e3e95ba1c0753a394d1b4976315ec3a8ea348b6d3cf6ab76316f7f8d0558f8f928e030aea22e84ba75e005d521eefe82ea2c7ebbdc7748d27a5a6463546ead21e4ce3c118a87ba8c91261d61eae66354de34af605fc0b0872424eb8584e4e4e0ec7712f594d03d280388dd2872824db3bae8db40cfdb6358f4c027824e4ba6e07f79b2ea855dda803d2384ffb67e36d94b3dcd3299507847c3a3d3f69d57797a44c1f453b3cf0c115f1a490bed3aa164bc1910d5bde3a2db5773a450f01f03a2d6f1e514aa791aa0bcb31ed54438d5a912475e95b6aea72da637c9c319de3befd485d20df75c9c172ee2cd6c51b72af57671031e30a52e01c39d33a8874475b354f94419b8785b823dc10c540a59bac105e95585c3a76a2599116df0169da1614236643ed9d6520cfb2885acec2401cd4c2adbcb04072a6f4633c4c2f5921bc3259171a1b52869e4e81a607c662da4bd53af6fc20c40c3e82a7bf5466f1910b1eab61ea625c5785cbfdf48123ec2fef5e4095110672359c56b8dcbf7aa3dd471605055b5c8e3bc7dde3de75eda2ce1bc1d3a38d7ee95ebc17d1cb0b77ea75a7934bd5ae4b4b6dee2e18d63cad32d26a267d84863dc5a5ade452da4b2ec5348ed52a1aabe0872854f10d979e8f501796239e770ce338ee23ee1ea669da97a242d26cc8c4fd6cd8691a461a815a78823f5cae76157a0b970f7616973f6a325cbe886fbf85056361e1585858585a2e8e9e50a75317c136b262936c2e1dfd569bd545d073b5799480dbc3e64142ab49b47ab8f6e1e198e5997e53ed2165e8bdba44a75c3d25ebc284078018a8fb94005e2580dcf97ae769236f9657d9496f0cd429ca409d76414c7bc7553ed229da556e24f2b873dc6322dd54a39401535498b8241b76672d01e46838e4025110ec6a6c5dadf6e5eabccd0384cba7e2b2122ef3bd145c3ec62c3e422f6778f531eb368f446936042587b9c41509a40c0da3500ff71385db5d039ba7270a39e176366c907bf3c819ca45212f5ccd4e1f8d02ed523931d6410b62c219757474b07a43fe0162fde4b0807e80c2370aee0d9e1694363de7d4346a3ded4ed60fae81a888b1660fd591334cecf490e604b0fff9f4f4e28763744e634dd3784a1165b4c6724e4a31c6b029622dfcbd5814f1a4613cd80eb61395dcd86263d3d3872f676c9e2257736bda651727cfa9bda753538a4e35f625019c37c48c9c8f6deff97007e3c1a2e854335b8c07c3768cdc3e66a4555aab24b53fe6d5decddaa9b456fff9e1c0ee208532bce10e3d68831697afd5df61054edc80614103386871871eb401a892aed57ae9870363c20dae50c30d0c065bb0829002302c680007a05418afc00310aefc9218f470e0968e63347ba28cfe2f77538d020b10e3b1d8cebc020c9bb5e3f296879a8b6d61b1a186b2a7ccc6c8e5986e439abe9766cfccf9912c99f3f3ef1a2f79c59a28ad8ab3875b57c883ce0dd9f53adc3ebf418bdb64b81d724e15b7df3f9eed9f69fb475a26a4a6c9f7519c0dc1eeeece2c11900e41f74ba60d53d7cb01c602a1e0211453d941a3407e9ec8dc6191ccd1a5edadd7461be9624c98f9c0c41a189fc84a228c66f19c75d81581ec61d43086e1f6d92567e22ac6862820ac8b7bfa1af802c6fec8197a20a16ed156b613623c3095ef8b8ac317e6e1900b639510573cacac070b8211a2ac15a860f41508918782b45aa1412c330868b200bdbe02d385ccd70a4c57c1e8c5e36a05a64bfbc48aa52d93a52e1e3923c4c5fbc7f41727d41f2b78caea61d91044dd633fb7efa2421c5747614177f6b0acf83c31738494e8d0a19f9dd962e15999ac1d660218623c4142d7070b92332d4516d0c0861dc8e08a551f139233f2067c8882c40841b0c2aa99053020c316435b8861d5cf72e40c0d2de8400d5bb0c08a553fd39133fc843dd840070f35c8912f39238457d89bbee75bbe57de973e198b92cc3e8159a9e3872cb01fcc3e41addca12d6a9f9856f2b8a67d425ac962b14fac58d92365bafbe7f60b9817184f94d13f18cfedc3bc8081f98b8af3e20f87dc5b27605e5466258041238ce572524c3b91b7c96ee73aef1399bed29233a01c81292a25d25fde276b5a39a15c4e8405daaae52c77615f2c1669308d3478c622f87d976a8a34f82db51469f0592a29d2e0a3ea4aa4c13fd553a4c15fa9a848836faa2c9106bf54b548834faa59a4c157a95ba4c14fa95ca4c1076b1769f047d58b34f8a2da1269f0bfea1269f0bdfa1269f0bbea22d2e0731526d2e06ff545a4c1d7aa28d2e067f58b34f8581d451a7c5ac148833f6b4aa41169f0a17019c272c50d9da4520065ab5863ada7a56915a35044c83a99a65596a653dc360a6d459a47773796f10c22b2ccce20a2539ddd860274bb79f47f9cb88284a2606c230144b4cc6733834603bdfad59865191232c53d2ec6767b0c262ed636247336d9478a4390ba988d6179876b4da873e121bb51f7212b3993f3e9008cefee6d530db58ac5f2bd772c5535a412ea39802c0f55422cb7d1fc3580470fc28501a68f0e01d347f689243c607cf42720307a10f6091836dac802308c095a22e5a93b325d2302d2c7b86a4c6b062d152b401f3497da70c85c623ef52fc58ab03eb6bdc3260c2233cb66c30128488a5ef1336cf658828793cbc762826284ba087e3683c937822d655825e837f32a2a2fabe224c5058341a4552e98bdd11783b1f3e4f261e8c0e08161a467887855700392cb87712456e10d462e3f66089bad3d6a71f9fd84478f257a3ac932171e9b9020be5921424c1722c485c0b81028342569185a8d0e857c42105aab0d751b2d448502082db2f8598d1e44858267c0822ce4ac468751a1d86eaa500c31062be4ac3615944e719294f79c16bb366457548703ecb300ccde75abd8955acab19ad2a88335449d3f1bd13dec072047832c062013b0e9276dec285166bdcd7e35d454439d1292694fb131b3e1bc2f97a6d8d779b062da0b2a4395b01248416f66d47b9669d4def4593ccdcb4c70670d4b2c6f39cbcb39822a4fe67c29e55cca9b7e3675e52995ef993b1007e274fb989becf3d9b1f6ded90eedf4f3629ecd81696fb902be7b0bc84e2df66eee68eb42dfd75ce8bd539b831e3c684321779e66bf0b9155b9029c16485f6a6fbe7bf6a6f40e330ba48138665b1e53c3794fc73e1d2c3980b02110396d183b75bab513889c9f12dc53de9f126d53de715d732add590a67c32734cffb6ceab1cc862abdb272959595c708b56ac5d64ea9312a3526080e604acc934ef1536ea3ebbbe804c8c2559bea89bcaf1cacd46af546832f57fb8a3d58b373f5d35e5019aa8495400a7ad3eb94765a23ada2d38356eb9426c11df52d07a7bda9d562e05d3c83f957c3125cecf1ce5a35eda267a7df6793e06e2ef88a7efbaebdb837bfced177da9b3e76f9e9603976ecddddb1d73d85e4a016f32af8dfab211439a60d5b0e5a207db196d77a1bb25696abd4795f4320b7e52f6a4882db7298eaa2c604c508a5dc09a47174db209cc374595e9bf4555c9db23142314f549a74114eba0816ad862a4d549aa804b58ab3b87c9527b126aab8325475c13e5d30b659c6403d10ba990b05775e25a41a6a55e4517b0dac1cdccc86a8a09ea369432d0451e8e7c6af8928f413575d5785f0156018fa59098122a62109447256a40b81a2061796f0b3221d8a95323c41c98a54325dc81581221176f931505ae521018fdd052cb5be4fc5a5a58054e599111086149d827104464f8d19aa308c748a67c603b03f6d4c6b49d8dc430cc3309557abb0140cb34b602a2f15970a1395ce6686b95edc36c6d5297e404be5d52ad5e97c9526ad5a51096de7ab825ae5bd9b2e916243ad5360e9b4aea8824441979190acce5726cba34925db6bc899c1ce10b704df7e41a17ea6002367daae8b0912d22d3c48d1079d959c372606cae57f2d0061f048197e18dbc288a255d8638462cdbc7c183c2008de98a028834fad0062019c0f9b5c207d718eb84efcce1fe3ee1815bb11732711b7532e8a090a63ead04fe95240da8f71853377be885843251487e0cf3b4b3d43fa3c11b1065b42caf047a26ef3be1c805ecc92b7cc3ca788a6d6a9b6d146cf89613646195ea8b243185f370281a597970b3e36f630c6055b063b78f02011b1263b08620c74bbaa750ad3ba4dca60360482dd8899a73e53f44e472104c5c5c4670adee954144d0059a253dc744ebe7b60a586b4301414d3d2c2d0ebc6b45a15b52003345cd576bf1b1fd692327c6fcbb298969c51096507434d25d429fe0440ed2d2907c1f35550bccf06ec342da57b8f918d5248121edd6685a4328db7639f078251a41d04bd0f897841170674dfdea3b351f688160b6382606e96d9f00461cb8e79331b0ab93434ddecd4864f84a39b699efd706440dcae63ad45a109eaed3c8e5a86c99989e6a7a8fee0eefd18fbc7bc4d69a40c6fb5b100d27f4b4429d3614c907669133b3e2e16da691f26e44c5cc5211e252f1ee2b9fcb095a066d0dc30ba583d3f2d200ecad161f5a8b8e44c773e934ef1ab536c635a9de298d6ac210c564c2b6649cfcc1c7e0c9318207e8c9358c3977bbebb9b093141d8e7e51fc0773766373be3aa45050b3065e8c6af01bdea2cf6300607604c50acf92ebb648f4dccd7c51ec60c21914404a2420aa68d09ea140c1d8905e8dda8853df8dc3026c825477fbe86dc9856506be10a42c859c52ce9d4b42aae4ea9bcba08deee41010c55545cad9ae7ab30e177d798568c4b09d8d75600ce773dc5418b9c158f89a930e9919d97c8b21e591613141324657a2cc19c619f18c6985579758a555c9d6297ebf29768158f98d6e5b30a4a93d6545d25d4aafed09c73ea9863d011dff6e61d1e847e56f15b2226c835d43e5000c20d61e4dc98a08e099a1941c1a20adc81bef36c1871b59e49d94840ab669cd14a933e25359aa59a6a1a5b2da6f85d7b36be1dbf210740a1d10d81dcbe767184b8cc8904095a1567443bf43c5e9776d42565e69c73ce395f53be5a2daec5b5b816d7e2581c8b63712c8ec5b186868686865c43f1e572b95cae1ed7e521f714e3f6f4f4f4f46c3d5bce96b3e56c395b8ef6bafc2de7f57abd5edacbc7c7c7c747f3d174341d4d47d3d1748080808094682610436d99125e03982931614e40bec9865a124a7c7b66c36cc7b5004b85ae84a541a8242c050229168405691ced22adca88b48a8f4169150e16d42aec49ca4fd8411ba29eddb305b02a292713b6654d7e837570d65a9aca3e6092f9e7e8e4e4e4ac469f0d3d0efb80380838ceea38f738368e73c4710e701c238e831dc789cc75e79db0f981001be228e0415aeeea383f56f737083815ba367e9380d327368ef88dcd69d01107f8cd8d53270730e237384e818cc07e83c469136c0bfa9b1ca73fe6a91fa2dc3048cb165b6871851bfac8b2b8f337f4d30659b90ab061b6c51651ee8d024ea1e8b8019ecdd5a334e288037c5e87026a43c9511b89da4d70d406aa6d533b01b511505b680de05736d45608386613f0694319a5553516e7124aab682cce3c8dcae2ccabce974e5a1584c5990fe22a1667de8891c599af79010af004d8f03316677ee608b038f330beb24218e0f10a71ca599cf9916671e6556eb238f349abacc599379d3fa1b40ab438f3f6fc19a5552916679e7ed37e6da89d2ccefc86337ffa112f9c696f0e60c31bc0889a02d0cca860081104761dbc0585a2069088e3e808b32ceec85297a54c6ee078960a594b9f9c2c0d3259ea64b31447a33758075b0aa5f26535802f1e5217bdd8ef5d1b9d7d36340866718eb8f3f2dae81a35de9a1a6f016abc3435de991aaf2a881aaf106d6bbca71a236dc59a793eeb214698e822b6c41a042882003d44c4b84070b21bc487bcf35d0c722e5f1cbe41e60d70e3a783de528f9ce128532a1da67417db2dbd45c657aa005e440db14b840deb0db9d5a35d969ae40713a0862f4835c48e5cfe006a88b12eff354cd1a861ea863da386de1dc247bddf65bceb3e1b015806a700eabc9be89b480075dee8625da68c3b6dbb8c80409306b93e06885a47ce50978e0eebc899b8dab9ccacb8eaf8b3a15ce95a489f5ca64297e9d0658cc8e54c2b4da6f18aea57b5989a8f32f331412f4014c8a5d4858b6193b41568d02d9484547da7182844dd399b20c235b8c51c85e42b009532a14d68167108a64234888221cae0877cc58b4fb9ea7a0252eefc0e815026ad8ab724811e801a2f0000f00880dbe88eaf2b2e3f723fe6a560fc8df96881d03b4f6d0cc2375a009c6300aaf692322daeb10df110fc5789528ea39c8bc9c439823b52e225cce4f2015063a7e64bb6b6a1790e02e7dc86180095eb6955b454f2666d07ba3cb3af5229964ca57322146541897a38961c381677c426b62bcae0388021d79aad4a44cbb149427ab2a1b66243d064391b52213a9483e91c6915732d3943240989cfb93826ad0ae3492778b12ea3c795cbbba637e83c673511cc1b2d90e99d6ad8c43d95563a6ea3516b4201264e9ba56bd74edd6d1bc76d2bdb4a9d3b4aa58df4538d973f9b0c46a41d7f87f94ae5dbf2957fb1bb7db4e18b7fda1f6ba9bf1d1cc771efe67ca986e0b5adf4ad74ad344b36ce93ae808ece7307e76cb9564def3afe74989ad8114b8fa7df60df7ec2bec514bd5631db4413b7f48904df8edaeed3de742fd99bfa392d90793b3b499731dec5a70dad9d2f5cb4b4b4b4b8d02127e60206e62ebe7fa5c2fcab2e0ef357ab602cdbd0c5bb954a5f95ba5cd48f49a7f83ff69b6ad8c435d9fca59fde75db66430e74dbbbeda56f2df7be5913e7e2747a47e9e9f4963a3b757a7f3bb2cfecf4933e29676f7eec361c72a929886b359e7ba5a867d16a47d5d81755209339ecfde9e863d8ac5ce91d67bfd13e9f699fd738ee86f3b88afd35de26b4df943eaf953e5f8a5f0e7a1a6b2844bc5ce9369afb0d7d3c6755bc00528e966c08056749f1bf0df9da5f11a2864b5cd283a8e1cb25357149a794c280213f24e28561814c1cf13831da207cbbed04aaf3359b748a3f815a556dc8b78a663dcc3b983a5f6f00ebeb6df4ca4b367e524e33619ac9a4999e081111d924d8bb96ab6001628f1af61cd8b57758437163cb9985dc8875906ea921bd27b8f113b3f3cb8199de621af28a8fd3ca17d8ea14476b7a48b978fa49354aab048adce4e68c26aed59d62e45aadda9ef1e00b377b04638c3664ad7c596a5643b04eae356fe9f1bb110f030373ad674487b9fc6c602c83f1e78a2a65d2323caf4a8db75d4815171bc069c37830869c05efa222115997f8b86a262dc307ab4b93eabcbd861897e0a35061bbe40ccd22caf0990c973fb5b8ccf40d97dfae495d5106378b0efd69632a1095884e45ea1259976a43caf0e91480c470a96b0692483fdfcd39e7e439bb583957e55a60f874b8e428953ea46b2f5696127d971c362ccd122d95ba4427906b6e31ee1673b797bbb55c98be79776b89df2cd7e201d7e29670ae4e71cfe8a2b60ba8959d4fb68914ea14dfcc4b279d92d4ca48e72b52ca6485c6f99a4d2494da4cfad5ae38390a83285ef05a71a0ab3b50a441a1c6b1e000462dfc00cae51bd2701bba7c8e6ed0c20f9c5c3e65c25cb8cdedbadc6a451933b6b82539a016eb4a778baee1805bc526d3b31a6b8c37e6ea365aabf25257e9519e5c36faa45521b7b68dba5ead0285e8101fcbc18814a14d28d096cd162fe1d001374b45195c04523137cb6cbf44964812da4d5a35ad7c758a97748a2777e638eea17c71077a8c1cb75d7bb7bd6413f9a2f4258128339fdf4d5a0573fe0b75fe7cb58a7e9658e27ffe6ec4bb387f36e18a6db989ba6a85a9e1bc2d357cc2e7faa0b92e396e44cdd7e5bba83e682ee7cabe524324ee8a4639d37168739ee66e73ce89c49cf3733bc671a5582a954aa8dad5a99d3b0e8d9be190ea82839b1cc7451c347ec695cf03472dcde423b978f795bf1ee6f417b75ccc7694cee1e02d620d696ea491461a2375c9ec0d6dc8a553d3b4a99d1e071d72b57fdce919077a75e5ddcae33c574d371d891dd3ba6c9fa592a681200af5a7529c75d9ec0d171cd8768de3321724384ecbe6b90adc52a6d99029a790e3ece9d4de9c9ed99bea8326e4ac0f9a7bb2b3537facff6e6b382f4cb5b15387f90b3b3b0563df72fe94e8a25db98dee668d2bf4915b7967c327eeca5b56be125dac58176f71711bddaf56b9b021e92db65d9dea576426b65fa45f7bc73938d2b11a2271b14e35aa45a76ebeeb865c17d3ca716c43aee99da9e2e86e3a7f39ba9b90e06bba89a3b9f13f5a0b74a15e078a41df8e8de65bc0e9a69b4c26d371cc9bac357d88a962a795a94bcea04e5f0e634314cb5d5897b7c496192f3356ee5263cbb458961a5b66c5a26a6c99d24fb5547ae9a23a5ba6f4f8e170c9b1dd741c9bc9deedf438361ab78ee937ba598f1e07e9df69245d23598dab9186dab95a22e24e2266cc881123958a8979b9f1e5ceafacd81065aaa8b074e349144fa6afd4d829930d41d14d8f6dc3d2bf6332980d65a98648f8a009c237d3e15dd3865cca715cc5b16d1cc7711cc77143289db52b718703cbc15bdcecb4741c998d432e12d96966a31577527a1c54db482176956f2e38bcc59d77c9517a761ca5d28754171c5929fb7441e20eb9f1bb31add729ee99f572c4cfe388438edcf812fdf721d74673351cb273a30dbf63d6078dc69744ba0d49aade556a08c5eb7e4fa92112f77bbbe208acf366a38c669524085f8f6b758acfb9eeb41cab53ec4406c9976c1229f778f9a22fce4a20ca245aea924ee413eadabc2b5fb28964fec2e54b28b126ca57a4b375394606026269e1520bc653174faec5b938d636d4aa6e821322413187bce8211b14dc60bf84ba1823afdd00a4ef39a72c79e04d197129ead298e86a31683492a673b5e438e8522ad26a17c102d87155b2934e69cd928fb44a6b56e85dce3250944119a8870bdb87878b356c885a44d55cc20d5e60854b1f5540e93f22805cf79cce9f8d8f7a3947745305353a05cdf33c1b789ef735010cf9e77a9e876198cb054670b58a855fade24e7d7a6e713cdf615de5ae2234f442c2b08e6d088e4eb2e1ebed6a8ba6945749917bb8f2e044c1951f757572d18b5dc4581e237f362c54deb3a126874e58d7f576e7c021a1200cc338b0267cf74d01729ce6894014f8ca81dc47dabcf1c371e2a216bb58135e3291db3cf29d166423f23c51e7897a34256ed034cdf3de75e70721d0f33caf0af26016577eb4852b2ff2b8aeebbacfa6fb79b95ade48241269224de3388e25863baaf16a11d4a6d73cacee61bd61a657525cfa39bb8f482a295140be22f0291c7790fb88c330add545cf3bfd6c3cce3e4ce3793b1b414dd3dadbc01f292841088bbea8eb38ee2038ea241064112e1f944ab8fc91a4e2f245222e62f1f30139f0659524c5862f973bc781a27b959b12ab5c0d5f6ec9eb948742691ae778f7c091a886e039a755238d7b9771f3fa78b9a3dbe814d08e348fe31e5b753ac771f75a453a7754abba7336f4f172b1733d5780d8916cc7ecf66dae687c02788535f07052097849dee92df1ebaccbcbe365d1f87a1e77ca5dd4759a0a97c2811ce91de9f2524af9ce9ba44822919e7d362454d7c2f72d2211e744198e7b0af791e823a99cde9d409144c1e5bbe0f2536ca8d1e0b2d4c1e58fbed3e9343a9d3496faf252519aedde9d7e369de7755c45a134cdfb0e845ecee37a344d13d529850aaab8710b375a2105a2e97158e0d1620d34768106b7f948d785bf1e135186e3b883439d8a27bf006a1a4602c1775a5cfe1b2e7f5487cb07f720bf1b36d4b4cf729fcdd73c5213c2c2207c4597e3380e480a71b8180fa75d54b322805e7dcc398ef37971f1f8d97c31009510550c1453f414d3dead81814c2fbdb376ebb86ee48dec8dbe23beb78db87ac948e4b998d04eebb6185c02909033dee313f01901ec1bd25099cd737f3c446febc2a34f4ffb4356e0e82425d264facb914ec52cfb4b96bd7838ffff549a2d2913cfef5e8f7a41bda07e1b0651f252ebb141d3a9f897aab1aa00595763a17a5a15928e901eaf49d12a954714f8d8b7f4d24f3fe9c81998c7ef2425a41f987aca91323fa39fad7ba5f0474d181b058dac18fdac008d8446504651464be2472e39d3ab786cb26b3289975a1fc070f4735b37aea8cc4e3b9d3251ebe95cfe86bb289d8ab61bb21e914e4539f92426724e79125015f12425a41fd2eb493ca92527cb2d7a45a28c518bbb281e112f0763a9f1b244f172ac7c27d4a968493fdd10a98a2e4a17e111e922508fb14689878847ddd3691533b9f1deb6bdc435484ae210f1f1a41e39436d8f9e39bb91154cc839e7e7f9e511244d1bbe1c7bf75299e811b1efb3c1bc1e928951ab53f1a39f1e1568d569e571b6521edf09c94f822ef653d2624df1b2c4d556c32eca8d47d5d08bc18d2b9dd08da41a6f0a483a4224fe742c4535875b917ed2008624255de3aa8ba0ec3e3e4909a90a5210090ac98a16931b493f37925e3746d2931bbf8d35d65cc24d794955b44c2429e954ec8494c44ea8a36cd11482d2aa108a2b3dacb26c8e730a6db655505ac5766445a75ada513f1cfddc788df5d28eb4ea1ec8497243548ff8bab16d9230be484a5c7448695db247faa94592921649094949fbb8800c24252d42370231646a29164022351446231663cc98299d33ca6923dde8563150af9c73ce69436a33fa3895f8bdd1ea9d912fa3a47fe8a20aec5949296587daedc321c3a43ccd2676c9d4b28c5152f98a9199cfc086c80f8832fcf5008c8fe1bc91871d32b979d0d376e1ef3c68c369b5df5ff99e7dac69633de5516c410de40e9433bca12413013233b3fc8400cee04b6a8427638d84a256492610be6d9b095d8c09695852b6cb19a6419491d7410a0857f24e4cea1b02d80f7ffd80870e38893f4028178a083006122f57a5ba892939b7a8f2805014ba4442ca4b32dc44153789297979140a0451a8a955500ab24954912136312fb529292bd9998f818a015da89dcf45c76d8be489ecfd2924c9b42176fa41a09f615c43a9758a1988c341968d62c4300ccbe4a96566ce58e3acdfd072b6d6ddddddddddadc5905e8cee191b73cc347546eaeb49c5a091f5f2fb47d16c96b20defa89fe1a3d68bd9181b0376aaaf3596643676ee44b419b1743999989271e5bb65ae7cd7300231b10879ad3e16219f7563b2a7d491ddbe4bca9943a91514a3d4c5f417dfee32ef3ddb806817a6c5c5edb1b0e3e49a6ec4c2ce92cb4b3ac5374af98a35f112119d56b0894d2cd060e7c62b9828b92175616107caa5ae5853bac6d73221ad664171c58587445d749115e2c2437496b35821a20f59a1ac1056c10e1b76562e10403d75943dc1cb539cd08704e44022f1c74547fc7cb42ea57819a854358f812c11fe51c2a5ed93853b2fc28062ce102e3d8beccb51b66b19bbc9e5c9b538d7acdc9278d94c1e6acd35de5247bef3d559cc349821ceb46b0d97ff1101a459c4199787548b37b89ce5a1867261a12e3923c9106558064d269d9ae05f6a36246522c785de6df9ac3e50334ed14262c59537b690f85c98961795d4ab08d2d2f7c5ef864422ba8d465596cab21271e006ce81248eed78498973ffe9d3265185ac8057d41569f09338aa0ae1156a7522495c340d04b925daea7c7d430051dbb67d6bc596ede60c512f75018f1f031670944be5d5022a5f242e5f407d59692e5c8b5bc2021249623a0bbe5ac089f09d19adee0b7c1065dc17188943c48b7abcf1dfe89a2ab780cab9ba087ef71dd9669323e08d13a853f32504903b7777ea8a35f17c8ed3c55f912ce027d35d30e0e52c77a9a258e9566f883ae9892aaf5c5658aaf45c2aaf5e56564438b2c7fa595ffcab94c90a7d61a9ab53f537a0e8b599f40bf5b05ddad550425017bdcbb2cf265ac6918a325e9fcd2bd6745f5ed2331cab65f85c8ff5bc69b912c7f9405d8eab2040dd696f5a0ee362010c78e204499c05bc4ac2ba802829c347c51db6e452c27247d528291291d5f96a0136b68c0babd51075a36db90dd952edbbfa832f072a91b9811ae32dd5decb807ca06eb4997cf123b752390baf1d0ac447c882185c60b8b3c54b5af503887663cb63ba5299ba3a9ad5529d3135afc51a5daed6922f08a08b02c9381714376e71e6635bdc908643726e380f242b697d3f8368373b906ce5acd3a9221ddf489d5c8e35abe04ae5a6f3ce13b146133c043fc62df010e5608138a3955e815833f3f8124d9ce15ab1155d9a4f8c2b6bcc6f8fd7a217552daa2eebc0ca3a4000b31769826b2c1187d091335a7435b7341f39b3e5581ba240d0aefce80b44bb2e2a7721eaf6519d6fa9aa7715c6b715c4990e43ac34be55027cd61a57d5021c46ad3956f97618e20c0d430ce25b15e2b38efe718f60c45a3a8e85b5b460ad168ed52abe04a89246016aea28a6e66bd03044529499df40ba0d6d515a95fa49a97bfa811aee497b695ae7c899cd75140a0435ad3ba2723f40ddac8d1b51a7bd37406d39006af7ada7a7673bd85a4cc554bc8d1a634b8df1d6788e43c47343600c89e82d751b926cd0e470e3f170e387ba3ad3e4c6732ca66999f818a85694ae685d74702190ec72477cab07f8ac46bca51ae05d05c0e3a783b3489e405df4d843742149a20db9d38f07ca0395b3a1076efcac92e6a21a4dd72af752ddeea24e964a6b16d429f0fa40ddd8a950bb1abdacd3aa2207bd0bce56950e82e758839b39daed34796986655186e90710ed728f1a7d357d7d3f00b7bea986d40c2175124edb2f7a532a65425d204bd6598b90b07c0502bc6291332c67d40cd7922e9f36b41f0bacef445eac94097d7511ddc83bd596af54178fbdea523c937c4d1893d6e2229a36144ac890150b50ef95abc4e7d6e97b37c3bed1b704e59e0c71087ea9d25794d164a552a01aa30cd2f9a3ae1f80a2d787d40524bbf11892170888fe629f70b9c80a61390b503609ce11973b14ab9bf8232e4b15c22b9658919c60054356a2cf8a04654b20b242782584054fa07ec46ac84af41b48508f16c9099e60f913abf82d217a09445648af585c4eaa213543564bb7352cc13c8c5bdcf927620d261287e0cfe8c2c73c3d8c69b8f316883592600f4455fc3c07a20a009f6722aa02f0f90ac49a184b519bd18ab8124d46449aa872d151ff57eb12f3788178bcf3a53893edc419d4e7c1a8fab20b633997e55a3e00e30db996b6ca94c81917fb44ea2ce0d5cbcbf9d98f9cd156fc1ebe0b1b6d125c8389643b4bd49ce212d48a0d519bcd4a966b5ab252feeb01673fae819d691ad67099bae1721f2e9fdee1328dc3438a86cb6231cbb52cb5dd2ad916ab444b764e6ee3b86cbe66f6396789ce796d6a76ce8e9b976ed8b98dbbe23256ba41cf51fae1a0e7ec972308df39815ac51ddb8e494e4a2e13c0376da9f459aa20f02eb5377365d61215747ea800e5c61f254d6e485d3f5478c3a5515a2575a40c5fd36cb0d325b2cb1ebeb8731467da15760d8ec5435419552b9fcfa26a53993ebbcbe639570b2dd18e72c755cec5b5384ef4eef40b1c8b8221d231446a86a832710d8ee5a282308ff104f36ef3326e49cb85a5542bd91074519a9d2abd44e7f9736167a9f417c772f1b0e74db5ab594ccdaf54195333cacc79177626c9e85b6c5767a742efd20be0b30ae03035a469b87cd1a976c2bef85d00efb8cf0603e78d6f6ef3fbf6e1f8222863bad4976c586fe92b35f4eecafcca0a77fa8489145774f9b47f7ea0d0fd5481881338d7118da37135fb272727278ad58c190fc1199fff4ab70389b07c4915401788bc38d9756286a8cf46fb766077326d4db3326eb0134ecc6bb40e71aec64bd9075ca20a37deb0390e96b3c3c98407133684d12d5290f50ab4375838584ba13ce1e4c0d1e12474aac3c9d2277c0728269b074c0f98dd03e5038de2873f58da24a7519059fa524113b1cd826ec11c620d67a910f721d6504b815a27d64cbb057b85c5c2ce25930bb30bb1667a81ba6816f40b940303c7840b03a789411b83f6d2323264653043acc99ac49a202a678835413834c49a207dd3106b7e00c1ee769c236e9052104f8b5813645e35c49a1f38a31b64650db12688c849ac09825d53acf901a4afe938f20641b521d60401dd703a9f8362cde95d010a4c40023d22008107f038ff54a9ab52da24ab14c8491015b21a7806ee0026de8063e00cf805aee316381fe73a91721bf438938273e2d02b00873e070e3d1238f43870e86fd4380ebd8d018e439f001c7a048007380efdea88e3d0dfab1c073c8e771c7b9cd3714cc7d98e931dc709276c7ea80401821e28e459ef893dd9a093e9e4c4b49980b64ca549a68d5edc358efb0d0e7d90951b840d83808243df4cae802a796414724716913a9288cc195a5569e4d68e4245145418a1e2881453b44cbcfd84a16c4aa264445a265e8d8a222d132f4729a594524a6f6cc41f2aaab847d43e409546d41eaa324712a9524716913b320ac91384102315d3c97a208dcf9fb73ffbb547f973e7357456e39a01cebd963471013171f20a6af20448c809942039c43d6915ceb4372976e65c19a5536c0007701289442239d1c7b9c91eaf137c5bc5a5018e4906b4264c989c60803eb900783e8562014ba3546094430121884c20081d09c028d243b5138199282040c3f3003e668407c66a150e5f7a07589c196a0db09e0dc133c0e2cc7baf41ed12d609be3837d8e3ad711dd607cc1e5f53b102548ca66251cc546c072b82e96044b01c1a850e550aa5525ba913da843239d5ad6615a7003f9db500ef4486dd09537693bdc92c4e7621ee8435ddda1b93a9491040294e6004a93c5109b5ca09ef38db9db0f7ec8db5385b6c01a5554ed8e36c338fd789edd6de6c1627fbf66c8b2da27cc6099ab30f88939d1eef7ccd289de2abea8451e7933a9d0851671395946aaa356a8e33731cd571601c2788e308719cd171544e77c2e6474dcdcc8cea372de4a382f19b7e22058c207ed3413d4108f19b76724488d16f1a883552f94d3731a292f29b7ef19c9e72aae2f49b76ed9c6a1aca14cd248a4eedb8c6d1b9c3063338bb88866e74a3db39ced09dc744557fdbb62d7b7f4a64db90bb23779cdccc86dacdde5d0f4b98c2b16de80e8d0289f7af0aa0c88633ba6bdf9132d8314de391475a0603674856a7b02ce585ee84728746417962cd764c07177b5793e0cb69fde9c8ecbcd62919651a6361985c290217e122dd288233623038236a73c4fd3262ce264da61136a0a534a01665f39ca2d82999862eaa26c5b00f73d1d1f1d82100f2e5cff0067bbfabd462cd6c143001e335aec1e1908b75db70de207ca975c901f29bdfdcbb2fe22980618c3bb528e3b361216d23f61e4dbe27d6c47b9652726663744ada24da4a569499efd97ca412eefd1bee5cada2535380dbd989ce9ddd40b49bf25074e6d1c1bd8f7d3a9eb8a2770dfb8aded51ff2da6905c237e6f63bad867c4d3b4bd3be1df5f251536586bf1a886a969499dac491f724ade81bf29e6cb326ca9efe5501a21e4ad60f3e10ed9abe4252e98eaaa7fa3d01c4ce3706a13ed9a753f3f3dda972159d9a474d94e5293a35c1af9886684d54fce5a74849b7cb90a9f8c1ccc2c000b2fc8c2c99373faa2c45a7b86bdf43eeccc3dd1ac1b28f328e87cf6a55db39597502a0888d886cd60f254b8a58a37d4e99e4ceae37f240ea0d9f7bc7d9907be7bdf3fbd51fdc3c1dc5bffaa3b56035cc4fd903073b301f588b2863f61ee67b5e4e1a28e9a12863a7877622913b27f765cb40cd51f070154cc5140c0424817cb889cf122b7c58ad0a19887f580cc442204fc140df1740971bd2bb64c919cf6a1a08a25097ac66e904f593f91e9a5f1660d8addbd32db9811244c9f92f0ae0bbd5aa5ed2aae8ead8d122f1eea4673c5ba419681e0a2b824e3ad571cb239d9a6d27fbdc39055771e73b4aab42f9a158d37dbef7106bf8939f65cccc0f42eb0f96528a3ba9640121d6048167da087209774a28d8e81e9233ac8428334f85ccb953eadcb905b973e73f2a40edf4fc1f3c8fcd4ecd7335895abf2780f3717eb2b4e24ee68dd5aa23adea9e2777bedf7067cf233db7188f41bd80a57976223f53311e837a014bcc32d22abe9341467931b2d099bd35ee99d8a74519f3dd6dfb3394e84b6ec9926a9a0d8dc82c2663ab2f3d2878882665dcd09faa50be1f6a9f176be8e3bb3967cf79293fa4996fd09d310880f4fc89493aa39c2e305e7996fdd3dda18acb6f296ebcfd6ed4e7cf861f836de871530cbb397dc7765a1cbef241f84a7bc3efb78dd129a125773a316256c29b233a83f06d1b43320719b9508adcec1ce5f2e9132c84aab83037622164048b3b18b935376261879c8b9df23bf9edf4dc67b39ddbe846bdfb01a11b7711f7ddcc03e18b3d661f851f53eeb6cafdf3fe7136d6982baad7c06f7fb94050973b9079450fe9bf771d2743e47dab29ffa8cab71a4fabf7aec6dcf8ed8071bd90afbdfb6ef049e7be1bcce190ab92f223c8b421fdc61bdb186b7058e8629f12f4f40e4d2ecfecf431be65db1e661bf77d39987e5700b3475abf1b3162e480112346a7e2e9b11fdb3f1b0eb9a14874fad97cef445f147df7de7d5700f9c60fc8bcddbdfad97f95ded8c5dc185146a4e71dd8b38a7dbe06e10f01d9fb01900e2510696fb0cbcf0ba46fc8e3c82dbab99160d8a4f42894a6d9f99e97f57677fba897add666c89a5966523eccb28cc687d96796d93134d86998a6652c7f66b45c4d342c468bf44e0b46190cc61ac9524a2250cea800b347ce3ce62e9eb9a226e5b3456519565fba8ef2bb2b4acba29479ab98b30ceb97d317f685eb3bed19570104df2aae9575bc748ada5b54a728eacccccca176692a460f0e1011ad98716993b063b055f40a5c00c2a57f69556c8364d4a51b9077d7817d768ac6b34498350520dc2ec5a5a48b16af9765a90c4b5d796932b6c21557b3299a8a42937a5210026f9040115df25d77f9e844d6d518375b39068d9f0ef9ce082eb24ad27545e68db93287049de2c73adcf830bee1c61e910c42846820f8bdbbfcd5f9ea124938e95429cb6c96d9d68932b8c60f20f4d272cfa7a3b3f2f2d3f144f7637bf7af02e1fb75e7b7a85cd1eaba8ef5eda8b71b95d22d29d3e79e4ef9f445dde513d97a71b3872f50dd4ab1dd32d956c7ab442dd44242a6f30de5ce8d42f2b48a3b28c5729389a36b10ed6e5d35559577f547773f4a4888632a258cb9f27d257879f995aec25a84f3e796deb18f041fcacb296ef6ee8a365871bbcb779bd7a3021d4daba29c51693e2a80dd2711349e8f38d31a143046215281382359af978d38c32f29805823e5f233a24ae5f2444415e9f234d188a8325dde0f975fe30c09e4182e3f74d1baf2a238235b57dc6ef1109af77d530043177981b821778fad446733235a8533e4de90278833302cc367981b6a2ab86c52852f577ab126aabecbcba81a5dfe8b339eb43c2238baadeee1e8660f4721fb883272632228eccbd1bf9156b65ad3be1b7dbb734fe6f3cf4a416f590a6ad9470ae0ecee9f14406ec5254c42e9926190f5e63b101e7dbba9de64d9b78f44952fcdb22c1305e1fadb81f50757be5da453b7c1cc94811f3deb40259914a6be2625addaaaf8d9f8b5c9548a46ca98ce46dae317b95da479406ed23a5dc82f254b24f1a40ab9d3f2695528772e9faf7842e4be641471c94e93195e314b96ac022cc9564b0a7d5100bfb05bb78332d4854d832ed23a2d8318c41a11112ed83eb81c811a078d049f9e4256eee1269dea580a69bbc867d33b9d92b6a5b0d18102c83dad5ad2924758b1a6cf97408835ddf9bb3cabe28cba67ff6aef90efba4e7e417e3b53fdc1db8fbe61ebb8a05fc033b206977b071d041cf9879c5bba8d962c3923b3903d231b4a9f2ba9005ba6c474caf4eea38792c5f753027e4f00e5e30dbb2545f7cee2c85b6ab56a899357c85adc982b2d3749c5e899544ccf6554a95568e0991e5f8b8eca033887cb21b721e521ff41258c71437eb1143d03f660bcd33a5a4a8c4e991e4ad6e58b2e59ad3a227bb8464fc1437cb577a2e8148fb69bea123509216ec8426cdbc6dbe8fc2e126b44e79340ce488e43a617c9865ac986208a6ba83c4c5d2fa8542edcef2c150bf73baa7e3fd5ef2b32ee77af7ede39c5b64edf4d36449deaf795fad97088cfbba6a2d1492024d6a468f83db2140a15230d0a9581f12736b9a9ce548d8829f952a5892979522522ce8829f9942a8038840c1965c88bea1765c86b72461465e483b8528359b945ae7c9c71a3a6847c67b3877cbbcf09e0e8373837b153236be34f27e353be1e51467caa55143b7dab281660b85d7adee2f6c801e3c64e854b74b27ef7ea0a1820eb67bf1d99d6221ef7bb09222f1213685505de850c5979ef1a0e91d5ab2bc8c213e4dceefc35c0b3b2afd5b89a29f841afa65dcccacf1a7363d71873c89661479c817d2e86bd318b5dceb818633362a462fee25d4df68835f156a053d8bf1f30d4ee4e50185fad9a475a45df4ce9775ad5679e1b31f8f840acc18387c08edd03b1467bc83a60d0c5301ac9238c64b8fc211716cd70f96114c3c59af4d0628dbcec3385953212c421c19dd4093132c7711cc7711cc76d4c5973ca39e79c73ce3977368d1b6a1ec5982e462923b94ca8555088d4a9d3a9cee954730f670e36ef69db33ad53edc52e62be4117a60539936951c2128be1c6975813fba34cd3a96ed9337ec8b0a3878ebeeb1aa27a8bf1daf92839c3cc1365709f52cde7529af5e4000cb59e4bdf498c6ab45571490c407006147a41cdb0e2312efde4fe6cfa2de71e6abda273e916214c4a1f59057a30d145c46f5180e1e8277bfcc88a518b85b04a97f19372ce597a27bdac96d870317bc38f5748d4c30ed880a3e56e45c090a48401db9c53de90ceb77424f47f7979f6a14cef640dfb621b909dcf4e022041f7e573c7673a9fc4d7840a4ba110d6674b437cbcd4305372c3d27d48a04b3a5720ce9f8d9557f6b0613e673a4b473d3655be4cb46ae591e526694395bfb844ddc5a50dff17f3853fe7b1cfe6d8ecbc3cf652c3eda52b00b500952b80f8cb33eb827de7672ed3e69042584258576e8fc96c34bf48202032ee3c5176722f7d7e3a48e7abc4f02753c7524328ae89599aae239c97d83bcefb4cf3bc7926794d9f980d4f2669b22b3ff5e894a9aefc453dadacd85032d1030ea0e9372a701bdd65efb8fbb6c957ab509797d2be587e7ac752657fe7fac252e5f9fb5eacdc813acf3df13dc9af48b90365816cd66db3464c3e7e32bbfc909055ae00e73cd7f0e531df2a7f395a07e9b29b1e56b330bb134342ae182b0766e3cb61fcab211437e3b961e92fd6877ce9365a76a4bfa8f3c2a8210994dcd2636a2884754bef2167e6ca048465100824e2b51689e8f11305e11ca64ba2b6029817bf92edb103862425337e346a7511f11f11301cfd905cdc7553bee32aa594b2e3ae931ed334dc6cd4f19b8009c542b2a2d29b4c27138ac56482e9863aa14e68729df478ce01b482a464f4230330d458a41f528bb46476429dd0e8675ab181442663018277bb2425d85ff8be7c569e48746a368046cea43c46f0529a144b922d56ce50cbe43302386df44be53b475a60f9637ea4f904748abb2e012e1368798b15c23b88e2041b2d71009e784eacd39156bd3cfed4d32ad3a350ac7909ad6855d7201d8943c48b6eb7d5d1e5684777930188bab607f0abdeeda4f7524955982ae9a78a6ed73c656c2afaeecf8c2e9fd52349310390e443ea4902ce164aced096c7a7220a3ce5c41aec91d505451971cef91972a6e5f3d88fb489d30e209fbbbaacba3907301cfd6095479f5a21fd4e7e38fa620cd856a39f3e80de16205fce9694993e5206abf3355b3da44c94020c6978b64855f831495ce50c4ca9547ac1bd78f1a2c62bfa4a2e3ee2381084a9a71d29d38561d3b8edd58473f151ad5aaf9da8a4ec14b651cf3a44340200004002f313002030140c0785a2e1703ca009935a3b14000d97a85480521aa6399062ca18620c1000000000000000000404002c67845a7c68e91ddf2be554e9630ceecdf56e3f953178d8662103c2459293e263687db3fd50b4384b0c3e486a5ff73c1b5d68b3cb919b562d4cbb9b2c1782ee4f1da15affb6755808deb0b438397496516326fd44cd3105dee1f1722fd23b7673616a40f1b5da83ed2fafd602374004e3fdf1d4b9589492da877eb038d988c31efefe26c451bc14098096cc70ce2af97d81f541686cda7ebab2aa467eacc0e905f9f95fe313d528fa04ad370c2c8891bcda1f639db6975bf94f558f7735bada93e495ee6845b4cb36e9ebd1091084593779a780217aabb706c86dc0ddc9a63cf1e993d04979786c5ac7bf7bc3d65bf7d2a6b7b71a3ff189e4875723d850c797732a3d62f77a284f9b0fa632b21434658b7ebeb3c191934bec84f0ebf576071fa434f868e80c4a8dc02e68ed494432f8f6154a3ad64efeca931c4de88729af6a9a8db6606f3a7f0e1ec429d32abcac09d1ec0cefd449fdafe3e4290f874cd511e9e783d515ffd98785351c32b8efc20f0c3627891a1d3c972a9241e422e235433b761d0b52b74402608b0ce4cbd37918530b9276f8565f00a248906adf116c291051d392b47b1e081e0f3eecc45c9ee0582219584fe5b4f1e7ea81b021c79c8e8b18da978efd1b51cccdedc1e4b339c79ac176225f636489271c8d92544bce28de5eae13ec267fdf9f5758cd305e73f44d940be5d26502a068123bd221085a64cc786b990ae64389a7e00d2c726582490102618453450b8cf55fdc88b0bb5239746ecca7f3f0944a488f24045a2b19acbec0048e5b2586a2662c065effa36ade309ec6a69a3a53b253cf9a7a9bef4c4180ccf3a1f8aa7ca5874bec171ca394a1b3a8e7a4d638e45dafc0daa35037b86063aa06b1aa57bd763b11ae4f69280fcef007ab46e19e5eaf598e749b4dce6f055faefec1563e0d8b017fb56a7af9581ba9063fe77e7c5176f5bc1d00c4d7770b2aa08dfce2a91909c4580e96d957b1ae287b62f6d01a5e7b2c4f8f00d7b687dd735e0362b6bf77caf6e2e3c665059e6c9eb7ff5dda6598262f5a722501e31e6af0f27f97a11a35ef6500a0cc7f648f13049841a42a088c8b51185a589fc8256b05de7e1fe5861d2bf608cf517718c9a86b787c256714a5668ffea229b8e68b7829a7344aab08e1614cf99d294b43e177d679602103e786b0c40aa579ef329acbe50ead1f24b7487493a61407da6034be12b0e3b854c66edf242f73bcd1026b20ca19d7444c7b88eb2ff61d68c5c4fff6823b9e337214b0144eb0c3d80819413b2ad06044de19a5701e98a4b6fbff7d54065643cb8dff9c31b644b5669bc2824813caddc942cb87f888ec3a53551ac88adebd5d7b9db4fb3a63ef9ef66247fadc141062f0cd158c6f51705fc254f45cd4139442a44757893d15b8e866b04641b480c036c40bbd4b341cbe85fd0ad67c1f7e75434fa89d98288fc272c08c9fff8cb36ef960c4800785d2a094e1b55582d6823b177ec52a3f16f4ef059f8630f8b7ac54489619f7bc67218d9b1ad25cb80e6f6b360eb905822f58423f212dd1f16f0ef555d9d72483e953bec283c5db4ab493d862468499b3a25ed39688b291cd44dea07a4e2052aedfcbcbd4999363a71cddc0b2454bc1ca52202e68a15284373df6b371035c8d740fe6d0c345d8b455c6fc8928bda7d00752d881f86d5fa8a92c9c128e39015cf72fe56a5edecf012fb642df6f3e98ea9383ac952076e8fc9430a105d070c181de321273831a1f3b707effb65a669f19b322317b6e1af99e8316c50f64591b89476e6f2b6c6fe52290e68c5949e59a88f7d0ab70125a706b16295f7ba1f1ca6d55a42a3403cd03367050dbd03f4d4a99966ccbf65bb66bd5bb5bf8fdca39178af6c2d22622cfe030f510ed4499e7c8bdb26f4bbcbcd605d0204b59dc2d5c471d10b33cd7aa5a5ff3105284ec2061a3ebc3930f4b03c6b450a19bc67410f7dec2c59275b564d0da166dba3e2a7f76e497527a848c3846164efeed04868bbe24e351560f39620ae63059136b5fe7af9a0d983f306a890a6bb3f0a545c1830375f4f0ae4e3f650e28a6eda0ec6eab4d0054e57f529aac04dab4b68498b47f7bb8f71994b03b1f6f2b87edcc3fc63e7cfc7d1ed6d8c1bf2356598f462947852d3b22604d867cfcb80b2ac0520c45ba39208e1b53d4962a5c7696739ca5073d202d97e4edf94da60ddfbc50468de5c0b8f0b08d45bce2bf1f6ae4c8634cefc4489763751b5c442534f4a265ce5063b6755f1a47025ce8e1731e8b5d861ed4bc4992f4393e02d7b74727e4e75110d6ccca9e4c94b595ad23ba036c8ee8871f62ba894e74ffdadece724ea3db0b400f57ecbbb0ee15374936eefb783bcdd4b6878384b79e77e7a1fa8cc0d6ad52d9c79331c32542a50bacb275c25cd6d5b0150e60c27ee5aa9956001decdf5b45467a6c1e26dfb508e9cf2c8e02e156694555b19d2e441e4ebc9e5c1c9bc80d418c070020bdcc9fcde7a2d5d9318250651c1ab53a7f3da51a2a2bb0c45bd2cc86deec3c65376c19b0e6a6057c3f46deeeb3d3300fc6d707a9406f64e2867435a3df51361f1916ce2ecd4100873c2e1e1a03996307209a322aeee9747685b24f7eef74c219777847c53c0cf966f10b3111ae35a409def734c82df78dc2e26fbb9df4bf4193b04fad988ec3f95e13c3b66940e4920badd10d6544d66823a88cc4181c0e3589d097bf196d2cebd6fbe917468e91a7410ec3c746a7cea3a16aad364eaedcd25f842ec5a2a0208cbd5d3918f3d01ecd22087b987d33f0c7ecf9eba893e798ed0e45b65c32b976920181fe801ef0c7d3de5ad69a6d0dae792620f71b952ecf8bcdf9b24a8a36e26139960ea53a66cafbcf6e23f1ef03298896e41485dd1452860395b7977af282605f779ffe4aaafb52325f54677ef215313213f95e2c72ca0b5362a84128f433bb22cd9786a126c438eae3591e7bc2a877be94a3634dec862814769a0ce71ba7bd83598b93164645d9d59f0ba3c59d63df45c8a5c9dbd308505c3e6204c117c5fd9e5946015441089e33198d270287c8c7a8c4a2dff8a587424ae7a03a59723abf74150fc2720c84973e89719820543196d65171e396e7e899a21136c0771ff945c946dcdcf576dfbb6db49165748e67101ccb5626ec23edb11e21fe4e2e7041cf8575b18f3b0906e5ebad8d16349adf85cc04ac01016a3a32721a280969d81395d9bd1f2d340dc795b4ee2102ff8ab013eacca3500c5551e189277cc4685a49f31fc0d9d632523313bc208b6d654a2b1d72c385feec14541179137aefe59ee6d62641f99d3572e4d223fc8dcd6366723e7411fe2a2d6f130e6376851843bd8442662e3cea843b9e280a35b35de79684977c16d739564c746968402995742bc6bceb00f24fef9c95bc8babbdf68b593778919d191684c4a90c83b0a192a4ea45b08ca53982259404d76584ebad407d75f03e9c07921188226d252689d1dbdee49bd1a16eff02ebd922d0361f9e9cdaf7c9c3f81bf69ba79a5fdca3f6e9792c2ba7a7a38fd6e66d8c44d5c0f017ec56055c32a19b5805572c5cd283bfd8a8b091a7164598a32fd03925a932b056861b495bd1e151398f4f4a6f7f358d2203445541b68f17e6aef3506cce7d5f7eff1459b0bfde638e007d45f985372073e78e25e3ccc380eda93705caef9d8051f36a66bc33766ec4580b609395774d18cc1cfa673c4c9bca262a1cff5f501a034267441ff13a9e8a2bd3753224d7865f5c1f7174f78dc742210e3a7b7e17efe611200e91d57ea17d8ff97b3a4b5569ba1f61ad6cdf9b8395deb85c4caf15b89a63b51407e39023b05cc90569e96c53ecb5c4e3e5285dbb3070e40b5706cfdcd5ee4cc4802bb7bddf2d126981ba0b66aa59426f4f1df681d6c0c08b9845666fae685e5b92310a3048fd2e5ac409956b95d99d33dc8ea8881fea8a673a646bbe9dc3e1887992e657f47d1b7c2acdcd38d6a664ed4f450534d860136c503c264fb3c52d25017c88dc2705001238443baa2374a07698ecbd35d3604beb132818f436f136b66756a24ad28319c2676379f96281e2fa9412c755b5a0c3f07f057ec5b82c60ac6112fa51d0f9779506146d71a0064130788ddd16d8d37d36aa2d63911bbfe3dab6f75b3b8417b1e1eb2467610bfa651cb34eb777c29fa8f11de2e57ad1a88eafd892e6e55d2c09bbd0979f3a76250ddfbe99b724e67f347cc73dcba5c1baef137d14e1e98c9a9b3006ac7ab4536d1551ffd899944076ddad95908437066002d1f1f4dcef7a3f4759ad3d7db7ce69f60a6092033c0a3878d5f89d9d1e78edb99d897bec011d8184208de33b769dd9d53660791d50784e6e9924ae2d8e8cebc840bd0078c136bb724ee672bba6bb2fcf448967f8a799e1f11794cde69a138f25aa5dc2a9ef88dc6c8d904f5e6fa2c7563fcd5ef9fc0d7e8d13c2762aafcbe90dc8d522e64e0ca50855f12a87481b0076e15a7eac5bd33858c56a84b8e88fc817455a1179b512cac8f9e1032b0685e2bc0b3dc4ed75bd1349107a93cc3bc3d9167b9115c21ee8469f771e6f8cd4ae6ced3b4769eab430c02db7bb6302c89cd3bca3935c471eef1332ce82025fb910873312c9fde1bb927538c4d0b25e76415ae464fbc473c389a9b7912f20b3e6bbb5270d2c5cc169ee2ec4b354d5078a02450b579475166b8955a389912725f3f5a729fb52560016d43c988a897d7dcbb8325a0031d5af54c4f0c3cf353e7ba5e25e10be32cddc6a3867801b1183d2dfcd4e08f6c336c1f61a334b37ab6b127cbe30ce6da5bc8695340c1a627f204cd0e0c878ee1388346519035393eafa148cfc9c6a981c34a6e765e447f1e6043988ed2af80855bd1a69af8f7019ebcf77c4ec1d13529d5577dcaf3d4cbc2af6b7447180ee621aceedc5c661097558983ec84ee8bd1b2674a016bba1f77264a0f008ddba0a2e040ad9675f5185b68594a22a6430bafce32b1965dae6184d7186da964c6de3510ba44677a8b611771033e20ab652de2699e6a8dd92ba0a29e7675ab23eb21d2cb392c62a2a70c4dfc837556b5e8b24c6572b64b54322fb7385c296cb9cc8688ccd873503fce96b6f93acbc93815ca8aa58402922a9879fbb445b6cee054c2219b5b1ccd8f5cac845a79684e1b5c844fda18534490138a9347036b42406d484245880601aa70e70103d1017086ee1e90d1444952cc2d2106fceda8c4ee7e198f602cef4f4a4e7f854dcb4862a928a4882759498b5b8723a5d4d964c5df8d42ba59c0ffbb23ec8b6aae68869cb88aeed82f041f58f0c46887f52507d142afc580ca8ba53374b0bd741d733363a013ab08e9ef46cc7f2bfbb0647061df3c0d98ee46f45ba865bb9f3f072375cbb0b3fec5d718b4724672722b2db51f61f10e33acc76765707dfbb20211858bebbbf2600d1c81889b197355db0850aad8b266c936ae79e9e512a77fe342b5041cce887acba1d3627e3bbaa16aa01b7cb04397cdc0273f2d126d7e22d1795ccd4912b6d4717e83840d69a4a90d8dfb19b760f3be3b0de15d716b74b30cbed555a4b6f07d2a3cc03b7b21f6e5fb4b7b123417e3837f0b7650707db87ee28f4c5998f544f2d16848f11618ceb7e369f7bf4f4a10d6644407af820242cc47c889f528a272fa8f5a2a4f241e4f89cf2d4874dd0ac071a6a8a005cfdc3dab1d2aaa957c924fe93ff5ce7cc3c4bc42cc541aeebc63416e0dbfd1309e6490acdfda3dee0c1cbff35c4d7ac0cef800be061c1519e22820b6167ea51a71e9399838fc740234f3c0d8328659f9727465248b385673cfc4d6c600413a71105c07ca5bc7e2f96ec300faabe1a7faa673bd91cde9ec9844e736774b812abfb4f2666d6628eaeab1bfbd793021df179b61d8e9ab1e768bc5d07feecf3fc0323ecf851897462c45b89677891f906788ef6e3052827f2fe99daf04b9d6b7d563ea2a72a0c362b9a344ec3affb543500e69ef7bd2dc02970996c7100cde739b765d1edfa01f5c59f92eae267e383fcc20fe671e9d173e1922750a52fccd3b7cde1ea66599f04c3c005426b18d95df08dd97a85df0cfb94eac9f3026b282bfd6fea17d3ed87cf5e50ac4ce32e3c8658f44ecf4d23e747d50af8f41686508ccea276db4585d8550c60b2b2266271277da92aca012c96867147a2344b59b8aef54a3afd5d73ae97e5730334ceae2aa404d85a855c825097a7f73a14394afd877313a08dc05631b0c18fc9f74cd981c6e0b3ae1726f0f0ca347bcf766179dc3535e763f7d67f7c6b075a7ec7c1454fb38c11035221e9fafe68eb0cbc3c6487c956d9294d1db5f92fcfe3ec48bdda1c4e6186852456fbab4381356f9e24b14626079dd26cad9eee1985ec83c7b71235e973708b3527706c5a9d0a55ae08f17ce4dc3c413acb955d5417118d1b0a1a2970e97a05a32ec2d6b99be14e1a007e0d6692994ee57cb17f61a72394a84020fe68e6059964891a9f3388906210c849a29b69ae7a56622c0c2b2f94f23529381a3f266b6277014650cb12c0f3a897ce42a324d35ba3e7e766620c02484214f0ab55bebd1c725c249f26ecee20aba980142dcc0dedf3a8353aac93b09719bfd5b641923f8046283bbb77bcc20d83c2195c79a7c1d9afa254d011abc4564cb622b177348ac2bbf0dff9b4472b97f8a082f962506d2ad017095ec9bd92faf0f5499380b3c05830ed323a7501fcd66cda0990f075c340d6aa24ffe468de4aa00e7bdb3b5094c203c1cb01bc03054a1cac1bed5c6147e362498472e829705058db17da094d19d039fb5e42a78a9575b606febe583f6183f3a6ce99638b8d3fcebe8b1c8f5ea4fbc86d3f077a990e346d3301d29bbb21eee2268f5e652c76afa7eada864a86e07335b8af2ce25ec0449d3390da7174951cf5bfa4b47f850be39eb6b8a1d2f5951a7e72ef1293b6618a24d1a27bf9538f6c2c85bc2b7ddfadb1b3f0c5add3d9b6d6f47116ab526dbbf5d0fcbbdf1028ed4e9b8ef6511057077a6b093baad931ce0a7fa4e0df9b29a29292d5f7a39da1cd9125b527ff04e531441ea906c90ebc8ac4395087e2063b4ac4b588e41d64a348943f38b6cd26e53ef7fe79fbccd1b040d73994115206e21431ab480e259a734d7de38903f845e41b5edc7633eaa7cc8e8bf0cfc29040a663e9c3f69190f8b3e96f996d68b03ea8797d64675d7b2cd8db2e901e96e5c341cb0fd374f4f1efe7eeda0989d16b093421aee990212300c531bec7d2f4cbc2ea1ca39a39552e3680fb90efcdd75ffdfae02ab5879d47d838dc1e6a8b55050841df817ece31ed3feab680c19bee7a836d70dfc16ad0028b5376fc2fa2aceda74ab0e4ca12f168e87bc112bd0c55058368e179b0a8b480f8af246e8fbadd76a66b6f6b7599ecf65cc834c2eae2a6630487ca5f1c13f63b0d000a957014183f557c8c17003415e49dbd05da76d02db069c32472b63b6f9f98468dfb113e25d7add1fd957fe1eb59c57f797591956eb0d4c17c88abadb804949d0185f28cd8e58a039b74ac988079d893034c4ad2a83c170e518f1a818b538a086d0714f7a26847ae785f9f75656bc6431af2ee81d6c7b942d88dd5917fd93eaf777c4f936aa99993f2c84cc752b08996575de89c05a1e7211e05685ce4976ddf041417b11a11cab8433c4637d0328819e1960a68261bcba46cdc5298a40fda6320577281de02588463f52b866ea80a20236ae82a6444a59d116b13345ace26ac018eddb640172af2c3188e869f390c1c05a1d272f8a07e230721913b3c4c896910ec3a2c48abad00e08db9f7addc1be04d965e88b66d4697504b1db6cd95e02225092b682394229ef99791915a1a2dcbde741c398b9be4f6a987db604bfae8a1bef20d0d20df453a54ca893bc14abe31126125cffd867b3700ebf163d57e40dcccc4107d9018d16b155785895e8ffce0cd127504e4b89423f7777cf95cd274273fff283e9026c2953ea050ee4999bb86337b6d631bc8aa2829ce8c8cfad1654705ade1c46a2735ae033c20ac9a351a03b802f0f8dda4a5a9155e71be0cb0c401457200ce599cb32e19b828ed544c9a31d918c46f97e9ae1e3d8a7984e6ca77397a6d984bf68fc8666a922b49304ceecff9646268011d353017840b32eddb493879f0a94a58fd74f8a2cea06f34e36d7ee4b6b92cd64d41959e0928fdc7d328084acbf2fffd48a906da456bb2576b9e4ff88ec9d30847e93bcd2f8ef143db3c9f55d28fd588d6b6ba877a90ad268247ac3e3f97d6c3bc0ba06c8935e01fadeb887024c89b133687ae0af77484b4171f0f9c13efcfca9c91d3b21933a19f6c1096a4db34f5dc828ad9360f58bd35fdd1c736c0ca1c1339e4df6c1ef094c1fa579b85ffab20e43bc64b588f6bb0821721508dfbc7aef34f1900fc537ec7b1dcc6088bf13c7c2adbcd84fd64495be5a5456326dd7c782288824ec1de1f67a54aa6da8a1b38a4050e7151f6f487846338560cf5a2f99e4ff85e63cf659fe6f79aca16987bd4c8bea4ddde7b97d42030a040e24e4cb4af7471de103bd4af8277d1997294733b132235b18d6808ae674d3844c729fa831505af65d6bea4e8325b951c238b6f33976724c03477864bdd2bcc911e91522ddf08d7c5b125d7b83997235452126fa99f1a2a1e624c4e75fc87de0f5adc21a284a2e58ab92b26b5ba99c8f9cf650d9ab9ecc1e422b82ea1c606232bca86cfd476903a153584665386e20a4e7c6aab9a8df97c0e96162b688f00f63d91581c8f164b75505cd2921af2cda47ac3d69c977a98279efb5c05e7fa8328ecef9c0530982da3fb548ef7e2c02c3ca1897bc98728c07fde2992c86a95d817e25153a0f86b099f10c07674150d41ea6b520f9a9785bfc689478a71447a51435a22c458409c8e92b0fc3f04608a1909367c1ade95f20ac895cb6236f62624b696e8381c8e6dfd95bbf54afb4025dc6c2f9f86b0f591afa92deda7481272d68449f1c2f36fa75a002491a42510852bae952fa72745e88657ecc101886d26a2e19d10c5423fead8b6f4976bac7c571c39443e7b05fe765a61c261df5dc2a2fe209a09b55cc20a634446701147f6680514b8dea71cd057ea4209fd7fb21d1e6e41fa03b7ef95c38f0eed5db03ed3bb8332edf91ad732b52b4873f3755516f665a98fe8237891d073ec23d2ffe157440fd077dc1bce529019665a2b46f521a1fa412d90b1a285faf102e21e9929154b784d97d7192a4b9fb94a38005d353555fbf8234cc3bda26bb5635f8e418befc596b3e470f37c333aa0f0d57c92abdc14ffa93d101f77a8610ddff141a817ff1c57b1df3f9340f4149d9d2869a231d13a9d5226bab405a7caff2f6c1371202342da48929c4919bf5951364cd470e3c18982b8fa4d739eca065e03a95fadcd762ce82ed15babfba74c8eb69ba397b7695ff78ec5fd26eed199671457b95fda321d11a54aa40d1f54d22a02ac4a0a9e1002e2a58384130bb264708b72d748efacc612ea8d49556c4a3d096c1832ab2b036f5a8e2140860161c299c834e95892f69a04b3fa44c2cc843addcbea48480aeb96a7ae6c7429e6485a210cfdb95b18e88f29708feaeb152f59f59d36aa713368e66cdb8460c2e4eea68963c46d49e978c9f589607824091383d106027dffebe52f58d66e6ed739707f6c518a93c508c1485f12bdca72af656d6066c574f938882ca17deb56508a8aa90d603429eb2384e863875dcf7537fb90f665dce370d36310352bbf79b656a6c739de5d5bd4cc13830042c5086b13995715b9add435b3d4a090275472d3b4418c4a4ae5215eb1dac52c3458a5289061c806747a329a0d18b7cb2fe8f680c859fcd08323cdb81c3144f70a24a9e01b49419a2f845254bbfdd3b99de0cee3bf5a35679b625aac9198d37dd705b0ad9a80747bc408a4d90829b4691ca708a67d27e45c465e09a2cc81def065448733340a2c9b76b2798f237d4b88cbe12dfc8061c879e58c7a7179cda80bdc9e51bfe2a53e4dd0b39381085ef00fa1ec58f556690ad853b10591b8cd4b9b1bd17f47ecc5eddee78db1f5df3d2aff786bd2768a27cb50920735c89d2376f3e8209fc97350179b86ab21e7a8a1a057a7292f7b373320e21343c8b00b40a371487141d026e58fa094885f1556d265666eae85600f647b8c1a8318a570c5da53fffd59d1cf968d38e515a26ddf4ad36553e3699df5e4a025d4e4f94bfad4f2637915316d5c0548f2011d359145163b2efa7beec4ea27cc6847afcebd4993367a1955c8cf8bd4a2fd53e7e957b094a7ad4d13648e1a6015a280814fd300433a4ab22454a416bda49ac6d27d9c8d4c940fcf09c0440959a2edb94505b802986c573549abc774cae705ca5c206e0c83a4710d0bda3437826d521cbb27eb5b13c6f1349b3cd6d3ebfd0858f25c920db7bc3e3abd6d0c207a36c0f2234818976949552066c8cddb6c0774aed06733ea08512b560b77771b2c09a81ee9409c7fb4851ca0624d7d08be27c9992cda5bddd0c705d206b456ed7b5f379bfbe1dedce3ed5ae732bae6f9075a8af135a58ca6971473b0d77129c9c47888916218ed34356e866d0fe436e621d863876a255d6ab7c5acca39653a028d94c1a83c5900f5466c2d7d692d43fd2deb66159751bb99dd1561a8292ca50578de4693c0f3c6373840895e5243b93d2ccf90af6ecdfa97cde2f4d9180a32c9758b5ae637f99d62d249310c2c201e0da23f604ba66fcbb87856c31a1904f743649efa0280b4cdd6e0f8e3490210f18655f726fa77447a13aa6ed7d4b702ce1f1a77409efd07c455249bbf1f1271560885a750d4bdad32d6bd9abf9c0a94c6b8f74014e6139ab3ffa8b685583a2fc697cfddcb3c2b52875e5bf4a5d7c7d3329aafbb994cfb5df03c64371e682b6fc3741c22bf025e4073a0688f55b7b1ee0d8c5b5ef2e5bcc3797ddb2bac31f80e9286cae4c3302193fe43167c580a291e28f5a1140c0dbe8e0771fca694f63c53a3622617f6fe492d6281ae6260bdd894b048e98ed60735fb5e7bb44542a938df6f69cde0766dbeeee0d94f52183344533eabba5918b18aad0b99202726f8df5db9815de1ab4bceae4663664adb5c7f8b7703bf0d35fb71c6e939c818d33072b88bb17c66a52f3250aad97690ed6024cd55746ab8cbceb0ca2837a686d347afbf6fd1ed966e372d7118078a1a18b72435c32c5490e08fb41d9bd5fe33ea55bad0b9b825f1b5fc25a733af938ffc3b971cbc5ba829e68e3cf65130e11fc8a36c6f49a6f48e2753bde714352426f02a0996dce3816e26a918ad4ee20c1b6037bac14bfd850c4744ed4682f498b05985ffaed0d6d0021697e49a08d4b38bae6e585e2fa8348f0de8f722e93da8303f4c07b64ff253e00fdcbd8bd00687f18828c9753461afab249f46258c2ba8bb5cd0d60ea5d6cb726f4bf6fb6c7b440b404a06ff0746a2d98503ad75c834e4d5f296c04c4b2e084139ef6c61992afcbbac20ad0081c8f6faa8ba9e1bb70b3214f3c1fde90b15924011e59711a55c3f354992fe684b8ab31d01a2350c41a8d3a4924ca7ee406d5971d5ef87dc3c4a73be78d235ffde3413ddc5f6cdc72e876c6e6c4828bb9a24c9d7a2079de675a9449a340b7949d988c270240a35078b007901786e04607276748e1df721adc2ddae180f10b3d005a2cc948c9f99798cf1545e05955362a0ab73d3835b78e5531308bc4460c65a71747b781dc419938e59214aac88fd0f0cd6bd3a9a45f8b9c87d4d3a1bdf1bc8bfbe79636cd59791b9028bdc6ca0ad15a4efde59b99d68c4c6c5d045ea1cb0019638c321fdbaefa44dc27bda50a48139aba5fa7bdc7d9fbd38a086729f2213ac94499ad81cf6ab3cd3c0b1414a37ea1fcef5c3f6c6a673ffacd88a37ba4f54aab011f54849ce677dbe4cd4e31d54d4bec3f163464d12eb1571d3977b5b5f98925e01a8da979b54d44f7e0875446e61283b599c74b75b579b42f085d9f334443faa1a42e8ba80b409bf1a0ce8f44f991847fc72e9968c1c3186a9470a4d9bca18cf7d334a85660416d6a156ddb5f23a1ad764d35740b19824afbe9d854fcea56d93b905df4edc1e6303d8b70ae0c566a402428b430a8a8dac37492050c6098b95c226d080d9574f62c6a4dbb170e24a79b0371ea9c8bf92035f50555aa41f788d55df98076955656250620a3154365a355ead2890e702ec16211ceec94c18391c758f3cc8b97bdb38aeb425375a2ec89d6aa46f74249efd1d89fdb583d11a032ca202b280d1034f6e55cf9ae2339b034f76e4ab7416ab51e13878ff978d6d0d8aa1639031543f36f83f673e5a52a0995f00eabf91751a6e327170c009b785806f5929a752b54e6f916daf685dbad32c79c6d96ca2065f041927e99836da18f794233a733c04108a28e45faf9398c5e66f1ba829200bce3960b082fc31595d26ee6d7e447209ab54ff8327a0153098cd62a415b040ad3d1fd476e1375927508c924f6b9ac1a2cabe9c43f540194f27d59dbe20180c29fa250f06b811c70ccd591d5380c10a8954bba2e1788c78b480b2ab36a673f0b8fbbb40ec207f6bbfcd10f6265c150083d178bd61e8e1a9722ec79b8d7b3ef4f74f2fbd99f67ad126cb08ac3d25d0ee4fad278c129252869d068427d0d3cf679409390a78ec7d41622e6f693696662857b09356b88dbe83cb8a6a58492994137b544e36f761f5a4a2761f430709a81bb6f92e6ff11f90b47026ce9e3c6d29d4f8f0ca8dfb0f264037c72bea415960c8540089c8cd861f64d64938f9b7b0113853e47db768ff752866e61c413a1469620c6308061073141d1ad8f953313d144057fbd6364567da7c32060a8f0fedee67290364b05441c0d2839b6566d4fd0f0a92567e3fac0f457e03e809c0d4adb454bc9703cc9b983b538df11e0a832cc65858b8badc7cecde86952489b2400710a3951c32a831ec008ffe182affc86e4d6f29040fb8eb31feccf6d8038695b6f28d6941643e5c360336de1f5fde96c6a17a37f511766b785e04fe55b185a7c463ff0c7dccae33b01d02d2f80cadcf88942fb232cd3c3f397dfacd75149d0bba89b1460475c1c144722b436e0c43ccb0aaf166ce09f1a6a6e9ff9c977c5e7103c67b14f0bd96735904852caa87fa9f0abc3941ffc13e5a5969ecaccb6161f5087a29e109ac70cc17282dacc438abb5339a0ca8ac6215cda2f1142913312112948b17cfbe7fe6d3ff0e5abd6852485d4863386a2552b376126e3527d2a381ee03d7c151af628904bb04f4a462218be3a4c2986ae923f33a8125d5c8e4e024fd7407bf39585e9f8868b17fa784e50dab0a47614394c3536802149e1109be143063902884c290667a5ea4f204f430e44bcdae6c0ddf511f54837f619cb46384d807241cea5a0c0c52883a250d8313f63191e8c0a9c76c7f104a3fc1917b6d5b44c3e52340f11e84691f88eb31ce822d4fdf382223d0daf2b1ef3062c4ad44ff236faf0e9546c1ddf841a1a8be04ce45f80d00d86bd8410799122e3d77cd5a82d58e2d09234af517f27c5a0fab7fc2ca85733854f9b508994cf41dc1e3c086002aa83c31f505613c1619a2b895569043cfd85038197281934ec838c9c960f1f509505f63920742cd0a701a4f058fa4beae8f65287bf24f60ae445916ddd3ef395c3de172f6aed5b0378c9721255d60e8f7a906c396d02a8b22cd3b04c1c5c97b76e12abecc8828f3508c9a49a3ae0dd6ad8f48d1438093388cae546047a3f373f390bb40a2d3dabd9c36cf8401c46afc281d7549328a6b3ea470a70c25137e7d6e02c18025d9a9562b1e35e994dfdde7df5f9dfafa1d104adfd70abc6ae9a511c0ac83e2963b6c7da07fa699102cfdb4c9bee09725e07d537c386bee196047b7b80be2a50a066349a39c6a50e3030fb145d0f56d3dff7e5dd662ad1e4451aad5e6c298c83c5e635ae59d91ccb0c1085940bf330a9e911ca303a5cf1a2ed2713a15feafb4275129d5a787db5385af97fc86184e69e529da3ce7ab90bb70f141874721c4d2447963898e83b923d92a759c5d62215b4fbbc43696624fdaf54aed18aca3428edd19c2ee47c0e0264538a26e544956b315ea252e0941f9a46d0ecc561331d3bb016aa72dbbe71ac4141c5ba3760b894fcde54d86ef8cc01c0a48801fa3a29a206df9d89e43c01f6ad866a110e52394197d0c6d204d22f109a10021520080cfff2289e38403a84fc363d40287bc9fae72f8802de6aafd4acc29442f4e3127c7a94a36113dc29d0022487a221331acbea12cad0e77480aa803b6f6b44b51b4c1bd441b76690a40c11cf3246e7228754d21ea7323ba4cdf3884cb68d5689647498c1e0b1201d2c1c7bbff9d8a70ded02bb2f378f1d16f78286ceb7b0daea8b2a7d60d0a3a748ae1847cb573545d3cb24b0e3cb824ca834ab6841c4150fce4c41bb9dd9194254b1c13ce7083bf6961575ceb531b43b7bbe336f8a64f4c6dcc0cd57779b50a3820732bdd69ecbc2cb7816b65a0d8b86766542c573aafd010f49c6e1cf32945dbc4abf397e17049209079089087fc308d5cfa81c607205f67c2f461a23614e08ca654b6c2b10cb91b73c46692920121eb8f0ced05720f379715244a707f448bc7d67506017402205fd3deb7932c720e67d6308c55a171b11dc1873a216778739bde502346b9317a89252cdaea0f27de23dad56f5a218e5b90121836d5ef5692d1eb7fde0c6d82d215402027990d3199bc695fb0cc69c85606784b1e3793fb54f4c0e242248635a20614f5ed8fefcfd43eaec1476203016fb8e61a692a2917333db5888de137a0ca092d792942573dd55c115b345c1c672f37c01e9f244ce400c72618c3251f3beeb793d8cfa388f76c4e7714094ce857436ac90131dac1dda12b46e7251c0c194500e055009d9020a3e3bc00b98302798387da4b80f4f92d13b7e7c3b2c5001a83b9fab08297a6b12a93e7b5b410627274224224896552c11520b6c83006aa26d4b039a6b3f8f6652b831e299b7bd50d895814d4f6c7a118130fb8d127e1628509694b71d199e05682cad2508abd6bd22220759c9e40ed3de05711689bd21864ca77ceaf00ba9763b99318194ab0cd816169537d879889c956fb6809e1001bfbd2965c191acc4eb2f4d555b76939f9128239b4f284bfa63a3ebbbae2842fbbff7be60702ab667a535e892b39e982ab9b3a7ad1fbc4a92b141563d59043f4a7689b43a048df5deb9ab2b6d67788f29417524151e48cacc65297628922c5829ad3f43206188b2e1247175f2c3ff6e712cd01e10ddf47e071d49389786c6b0d86f6dfa15ca443e0302cb7bd3243bc84ca628193e704831fed4ae42f17a17263874640d7ff141fd7f721a16b223c075873858b2b1a3ec80f07472385b9447b891c51e1bf6f646a31be25eaf7cf735f8ca526f0ede0f337606288caa62b92084c15f14c2c0722ab443ab9087c3013aa00bc5b0343d9ce904dd3e58e1059017bfb81ee33250c259e0b57cb0b5f49cb11db0506785edf0a6fff4e32b526ca6ddd70ea7fec14e55dc920f12840c94de4a4bfb4928f7751a9ddcfc0164e7163a5e07f28b83a767d9bdbfa80b8485464b0466d95e44bb7f618621b74d6b889e8b0ebcba4c03d3a539c02e596f682581264fb81980566182800c9fd84127c730fa175ba6eabab033280c37888eb1206a031070047d28f0a058084c9e6cd93f05f648582228fd80c276a48771bab0a72e048487f51402f3a30baa904ce9f4f658593394322e9ff4a6dd3b91c22dc3abbd65e2459bd1e2b328a0b92dab6286b6e8ae643f413c2443d40f1e910a6f9c59890aa54f0c47c45b1daae8f225e7f20122e232469a8f61809b59b3335129ff4fcfb4389fafccdfc978c79ed5ac77eb587355a62f7fc9603e4e921b403f4c485477f0358b660cef7139babac7adfd08824f279ec117ac41abfedeef530ba132f52d5e972bba0f8121555791ef1add111203e909015838cd1b1610403c36dab0146c6d76760c089642215811d2b6e234a8d3366400c89f24b7654abd948d142a51ac993f383078eb86071bb468e739e6c4a9f03130690345b98387919855dcab92ac32fa155387914f1949b802a022e1ec81b3d705688cf7cec0f9016bf72bc92619b24e5caf5bc32b15fa30a026ea0a22c700ae6813d064a6a8d2ac5375832164805a5f8d6028f4cc3f2ca6049b447a3943c80ae0049448e2554a2c23700352c0dce88967bd3160505583010091664f54605ef8f01d015ea20a5a7b36307d0032fb1126887aba9e80fc4b87bebc5b960cc14783bca43604cbbd806506b30153eb388233807a94a058a29dd2501b88aaf1c9d25b0aaf8fc9d8c310901cba6e6a40a4da9a2058df67968d38f80e3891024e4bc6021c84c71c2228f993495c5878181f5b4c7efedba56e080c58eb1e49c0c3e1b9523bc11d631d6f60ddf422d9a8b372c8f6cec4f55745b5cde2b2bb9f5690e8b66b313637831133863d4fe61585a34771aea4793bff8181b9cfca01f20427d5cc965b9e1055381ecb801b05506c836e148bfefa01908a3471e8cd8dfaa4903da0dad2b8ef53a2e73ded14a5153a1bfcacb4a0efede5b5dbf89a356e03f714d17e18f8dabbf743dc8e429243fbf8775454b1f568636cb1fc3a4c27a332696455e2c808a4af252a80406b15f88718f9b4cdb26f7d7c87302e7c520aa6ab296ca9bbf03f38cae5b3344efab0034aaa1afd36c1b50b6286861d6d641f13bc0bb8a2cfc4e7374ca32fd7768ce1d32b0a0e7c79b32e114525794843142e616b465a2319798b8b45c10d23f94b234fbae0ee527c70a29ac4db65ea4004ee5eaa601026be4941bf0bfe758cca11c2084d5bb83d4ebc04221dd2ab6d48bebc8af65e5d03746fa86962ac2cd38af5cf9feb138ac36291ea8228c0c4a4d595f91c796c6511aa8f70c126a7cc9f72744aaf13e3fa029bccfd798a54b415a399677899febe471cd6e733d86c9537f331e9073b0e2fee030838194ce342105200ccdc55367d726dac8ad25ee5aaf3db2ef2573825929017071b12e49603651a73b80824b2e23893c8a18cfd7569d69fd6c90593450ea07d3503430804c5e4cc22959d0d4b05c16ac858ae290f48aa4b9df5c5f5c880a46aa8ae727cc33556ba0dec1eec226a3e3c6785a08713b7a49c0f10be7f0e37d448f00c8fc234527bb6bc5de84adb7ca236698062fd191df7a44556dacd778fa98ffdae73cfc9a89351f0b8222edea4c586d68e0412728c3649fb22d73a0c80b018f8e4977e75df58084154169bd77a5feaca03a60d32b94aec91c2a0a66e9641820099d70901bf6801cff2dbbc3ffd6f3134ec2770977549081c9852639be378cd87bafa3e1334345967afa224e5e0955462745352ee549a82589c7a00a33c7c83234031394544faadb9acf6854575daaf079c4ff5eb2321a852c02470a4d9ff7c0ce6d3f07cb746402761f2d77e61dbf4de7b7f6843aca5ed1c128a38089046ddeab29013427868557ec09b4e0c2e89dc0af7a19b303e0ecec252c6f507afc4f896fe2e76df948ac7bb0b4dc046ed717d321f2c333e086c0cf3a8ac66d6868e6a5847e66baefaf8270a02be93407b4dfb469d48e78ac4d037860b43ffde789c29b4df6eb6b2a4c221c5a6533a07599efde572afe43016e2ba61bd905629c099632b37c1bca7a420f58fe5b6b5bdea3a9505fe5deeb0a77dea0817707e85ca27194a4938026ee93dd96e467934bc9e3a8905dceab96b70a48ae39869b2a6e2d44e509aa20bbd8a160c7d822aff2aa6f0eb3cef9e36b1f6e1309c830183dacc42cf8f263768ca9f858697c5a266e14d4894a83daaa89fb60d743a5873dfce6e1ba32a3371e385d028ef80f926ba065afe82ac32f6070e9c7b2d22ce1a110ae508c31b30d05ecec0903221b5c9137cf1ec48d66d01deeaf24538c22eb44011df399522890eba0dc1c5a0b52c4a1a7015d8e7a1adb63dbfb40c8b1d414062bbcf80162aad4a0ad439d2fdd7958b51ce94616ca8947409ab417a2423e154162d545ef145d63086855772453c80760f3f72834b3fd74e6398bdb091219df2c89cbe60f309b77c0b3dac519b2de41fd5b9db79a6dbc01a9b472c3355b54894ab9cddf9b9a14a7e9d46e5aec61e2dae4f199dca997362539fc7c7c5ab0289f7001de8fa673de807ec1da630f4f6f67321dae445eaad3f00667b7695cd3dca9222b0284dca94608e928d72eee3a7df016d6432b749478a70f55b514a2cd7c4aef472b8c3c6beaf5e372c10ffb7afa303b5f0c77387a01d6c3cf65c95a4290b397ee89670b76ce062290bf85e01c7742508f5b65d92f18382d6ca48928c241a92c00d16893cbb02974186184cab8917ca0471815f5609e75461c80cb76f60b38a88d785d717ea8e99f5257045b6406414bb1644c8822dcc0decf027566b5bd26c5f232d40675406af35850f983e554b3839df0b0b9fabed49d842938a2155305dc8c0db574dcd79481f797630c585286e579458d6f690cf169914267186063e46449c0b5db923d3ca14f5483cf35663968bc1865b34e43a923d29b71d84bb55ae14d4d2266ff0f2b382f922dde8eaa1570ec0dc87914346138580c4baee63b2581f4e22b043d41464eb37ede7ddafa92dcdb9de8c2ef9d9041d807cde78befd69eb545018c9c0e7bc7a08bd291dfba3a45068887303eff695a3eb30efd6132d5dcd66cdd9a03d5052030984088283a4f5110bade028c4b5dd39cf54fcfcd84939e58a92aa2c1d004045fb851f9ee701662330ab6cdf5abbff74c79384593d14557896c9054d43ca4517402b3042b4c2f2293fd1fd953401695eb8bf5213abcad83bd05f5853f10735bcd455d7343c0364a31dd3a0e41f3a5fbcaf8df5b492529fd3c8f959ebe24aa7162200ab92dbab1d377c9d60a698b5fcf8559ac75d9374826bb9e12bde5aaca7216c09e16cfb103c8ab57b9fa0e516ebf84df517260aab86efd53f2607baedba5279cc89ccd7676c9fd4ab6e728c768da0e034f9eb99e5263e85261172ec87dec4cb9617226f52c38443cf9e0f7f6bb81ff8f3dfe0bd92aaca084d298e95a5b74193af99baece3ae0b438bcc70bebfbfc6f73f1620e39d5380cdcfb8c4be020fc2ad4c37a2ef062cc5b5793a111f39df18e0b7d4cb0646e69c650d7309758257c07355594b9829b2f7ad819a5d32641aa0c9c4997e63e8938872749fa8a7f34978d33bfefff85784f92f4668f61180b6bd463212c560dd82f89fa43c481e0709f1449e4c6e7ef2b1ebcf693c4e5b581f5ea705811295ff3bf950b8aacbbd2eaa040271df449e60dc3a55cc1c993f479ffd741d4c33ded1bb6450d90bd2b560a0dd6ba0a2c0b7b34d2c468dba6b531bfe4048899098a4b0a52f03fe529d4e76c93f239df9120131d5c7a1dd0280248e9e0aaa6e49034861ee0e08d2303ef450aa0064a45f37c332d4563c87a5da3471876ad07499baaabc72fe4d29db2d2224aabb851e9f2ddca6f9056ec2db6085d23b1e4be1b577b809442ed2cbdc14c803d5d5c3352f34cf4aa45f863bc958393e7840d163756a5b1c83e636351f914571934fb57fbf6de78d155f2401d2b595e76cb0b86bfc60bb6b09c0d6285da8b53fefa405997a69f01eb7d1a1bf9175f450abf8b7fc8cb3b520c998204000521454a11aa78fa8985b1c3a1a6979ac977e6ed4fd88c936d4ee2c52bca1f6181b8d3befe0f2a94871fb3d5172331cb5b232cd2533fb76c755e7f1c61df6fa364749f11613cbcbe88e72c592ef3f130fc05ded518355f6d0c525ff08e1bd80c21f2feb927ce400bad31958316fd47ca0f740a3447c9c24a2e710ba21f3a206dd92f3c8dbb0effbc3e8326f97dcf0a6e47bae1ffbc24eb0b6ab8654ce4bb20f62884d2cdb8fb997be13240257632860fe799a36e7dce6991c77e6fa326130d690960a2dd331d6c00880def9eb15d010dd6b2d1d75ced0994ab461fb1b7e94a0ce852f1c0a8144d0b65a44ed0f901805a1a2571153f388c73430844a26e8bad3921272a0dd1810021c852b06f59d041e56dda76a89eadd71208ab17c37db00adfef45551aa25a26e5415d94fd8dd56d7f842cfb1cb98cfbfb7fadce5f6fa0db2065bffef028909209c9a105bd861459dc831ee4d24bb1bc162b34ae6307f8b8fca3a77e43c2a66342777d5d27f1fc37624ac70dbf600a537bab5f84d49ff0b5ee47598edf94b8acb603c1ab6eebb23447150dac6d11c65ae4ea7889cda81763f3c195a4a4f62db03c67ace0b13b512092a0e733f271033547ce50d2417206355798ef9cd253cfe70c4d57cd1986ba19ce4b5ce1fdcde2915b2398e24b24fc3001a9f2c63dbcf6ec9fa839f14ad9833b8f948a7a0009e43d3072201c7794defa29a639a4d8fc763a18b23434a5b81de0b3a482c841d01c18717de699d37e4cbb22cdea1030ebbac26855375117a30ba50d876a032ffcb0c88ee33839ea0897d6183897be40b2a243f73572f4132f684e8672e11cc4b8e527975e2c26ec436a04c32eceb441c8639588382c9f14e3272f2e60c8dcd38d09a2aec028e2183bd18f959fdb2f670f9d04bbcafa728ac7cbc53c95ce1803b98f94a71d9fa6fb35874d29e29f334c4a7e3a685f55a2e3fae2d063f54bd315e4aaa6e9b4c5d36e4c9afe3366bb6f6cd71ddfa78fce7920ac15eaf53fbda9db05fd4bdaf4ac0693d33caaf372c79653841b356470aa2786fbdcbbd1ede9a38ffc8daa0ca7d752e04bd0fbe175ad1437ba87d4692d02c660a25390d3014b1845a429c4d2906584f250d16025bf1ec87cfa3cb1e14b7a601bbac5529f81045601ba618a42fd79b8549c43b1f6f5d3483f955812c04c1a01a580391d955fa4498b47da10199a1a558452f001168e37907d539d4844cb89f4aaca3951c75ef7de2257f6297b8362e75398ff3da0814b075448c35a60714ae13f2c6317bed343e498dbec8b52214ab5fab492e6ea85b058a2d3b496849e9a3b479dca289b4ea5d887ba09e925a3b11a98e2241175ea6d62d30ac3e7896cc0d0f4e5d11af4fa851f60d697a46de2c0e6f428c91ecab68646594fcd5c5ddbacd1d6c8a91d82f1e4d10ac607d52f06a1e4df18dbb0529998843663443634b9b3f483e741f7e1c541d22ad11f1ef1fa294927b22141a237b5c25b75aea57f48761135d6d30845711e0f7ed50bf22e7c6c11158736cf90a1306cbbf6847f4f9b37c7d0dbdaf81c777bef9c9b7b5f3054cc0cd77fdf9b2a4e1a457b287249a59ae26c733d226380ea5839129d57e43cc95091d431695d45d7bd185d18308946197844c8f08b0d56d1da31c8c499ecec5de229c97a593a27d0756276fb23e7944ee5897e2a14374cbe7cbde9e9420f59ae1c4b9f059f94d0d5be4a543a697b4d568b97a31cbb6539aac6744168b22bd0f788e61ed04606962ed88ce774ff1694a252c79c50e27c9e86f4eb1ed34628f79b4b3d22d24b096dc25230d861842c2593633304ad35aa8a92851d55ad28274aea14087cd4a5ad40b47b589f8e55888128e70151a45d280a59509413b1d12f5442f6c0e8429363610dc93e98f8e468b5d9e2360dae16df6e15f4cc39f37c4efeee97898be3095105b9f7f807a3770600c27f1ebf9f1323d77bd2ae1b5d6bd7e5f8f4ba99f607c9d05dc301c25f164cf3db74df7c2cc0f74f77d4ec60b2fe26acda30bd6475ab320096a908bcc3398c8d7a4ea4864d67f32137d57cf4a51723831d5f46f2c755706f0a2d76cc898c7aa37db1c04df07d0b037bb36943a822177d609a7b378b0c91cb17ad480db0827717fda52c68a567dcb937401777d62178b16bfc14ddafe83e45f751b4f06789720f346db025539462c341aaf4b498733ad60630ea61299dc20c6dbe71bd68f79182b567fb81bb5bc805c4194e147d78c17d03a55f368fe74d49c311a2e7b36a4b54cf066f5e71ff0e36c3c2a758714205de6f73d3f1fbef079def87fcfb53ce02170f3ae175f0d327db913fb8de90fc1263c101869603170d4aeb3b9dc3813fa98f383a10a2690a6a74f5571f94ee4a8d86a51bd288c0740f1a1d4d77e0794dfd31939918e474c6c74fbb5055430c4c7d7601f3200c0a75a5bb317638cf5f578f73f2929555ba8a5719412bfa1b6cfa3cc7f33b774477214ec93eb41388da6338fa4017bd38a127a686b44ffb763bd9a646d91403ebe534d4be81816a005be52883325226b232a18bb257a3472ad51be05650f064dbb3c10395746460bba9d6c8561b26388b946c4afc3e2c058e489e8a2d9eb1b642d8b427f46ed6e30ea86ed5157d624d98e6236d6cf5e1cb7a77dedb468f542e9d43defab48ebab0c78d1facfcfa632e51d48341f40637f4d2a1973e5b1feb90223b03afc8cac25e0c0783e8754be789e122447fd0a711316e174b8cf4a2f655e45a07bb4922ef246085093555beee6ddec06abf84ec7e01264cd89879d6851c219e0ea9e2ecd53a6254f4ca93aca70c6b5aba720e7a46924fe67332f91ddcbabc6d7bfd454fe51c5751de84610ee3eaad037cf4e667ca8d932d048f23392e7f3f0e052a9008d2c5cdc3cf2c3563def0adad2f1a447621f72a54d3af058166789652093f533d277acb27c3ac96b7f93ad777d21981fe899e465866f7f752938499860c82c9e408a270c81d673c7f90c2ea92fc165cdf4558e041fae8798d4ac5c4df8c4ddcdbbdb47d0124618dd356d9719d8561f33e8fef797c4fe0beff3d2d448f04923a41527e15b30c319193b74a7f63983d7d23e0e9cdc54939ad31ef6bed08fd2c3e80d0b9c88d05739babafd2471a80f1c47e241fb55ee777dc5f454a19863085faf76680a803ea07077344961160060eb92e876b066422a2f35fc5190dd8c4ca7a58af8014d1d9d3d1ce3785f86ef06152d0ddcd455b9dab8362e9e36abe9abb5ddeda1d6f08c42be2949eb475a05850713c447c16fac9a58dac2f262ae42d1c07199da1b36c5fe05799b745482295365a4fe5b851f971b9a3540a66f2d1f943ec2ba6964715db81b822ce70c273bd01b48976a4a626403020145cd7f3bf60ba134b04be876c3f260ec774175c8790f0b19f66f4a16121fbc7ce2e440810c5cbb5fd08f06496e80b4604f73f18761c36b7b020e8e9d1f814080585222653cdcea78121929ef2e18742a1b9581e0f7049187662693f6ae2fa28d811341e0bd49f2f9030abb083124d72b4cbbf8d5ebcbac459de574f37ec42ea2ec068dbd29a3b245ff3990cf2fa4bafe6a85273b201e58638263bba564233c8ac113f21ed56b1a893f15b4ac1e4800e16aa2ed67ecc52c55cdd84a2987fb18e2ecf7d524c4f61aadbf9e029fc6fe7c0c11db73c73249421743729a4f465ff3eac0653d6ba02d1cde55403d2dcbccaad4b31414f92fd9c73713c55d810274b3efc0c45ef791b4e73109daa4852709840cb2f03f3f991e1c6c75803e815e2757c7fafd06a6a58a3c158c48cf04aeaef0b594b6904c42cf3b968fe2ffa41240baf842f8020b58d41dba0a812ef57d0089d7b9496c4659a37381691633cb7eeee9de2e45c655d01d3289ab6832e1fef6010c99b4cb4f0c0aaf226b1e520592c77e094709cd2521dd455b5091fd096d22aac5d647d8ad65d7f4a1e894dd2a662106468cb4f707c258038333fe5f31ee3ab950c76380bd549ab7f0052f9d9ebfce81f1a6f4269609fddb6411ea5e7a5c8f69173ac5fb3377ea9da58197279d628f8011d9d6aba84fb9a9a4585f1e7c6ea3168e1eba3054f28814d3c3a18eb835ff62e58e5c6f671df27813587f9aa2f6dd8cdc121a8b10252b2f056086d5e1fe09ee47033f485230d2f123b2daa428b418a52be52ed882cbdcbabc9265d9d9548f78d968fb8e0563929902c2d5d198780a0913793ea669becc408ef754433d14bf3f76b178211e1a49e4c47ed7655f2b811b11177f7039d2ffafb3849a9285b3c96be6e67e2631ffd96d639e4bd68a5b5cfa104fced91c0149a3fab9b70edfa6000fbea5874b68b9c8c96c18c81b84968ec7c21a1294a55ffd11674b72cc593d2d43bf0d82575542312b82db9f68747a9c184481ff3afbe21ef8704bd2844a1cd9b673243f47e0471fc518c3c3af0e2550ae27fda4bd1bd2d21e5b9fd5724872ffc38043568516481451f6174522041014b1398160e4b5ecb90f24a2a9d0d63419f27907a57dae43cae8b0480cad66f0ef2baee9388a7ce59e30733649a125a546b2be306ab2e50ebc98124311bb09e3fd8ec0f4f5e0650ee42dd00a8a5e0ff83788d45494bb628ff5ad31d6c5d813ee33ab22ba34b076ad7125b11c11326f832a036d979ae0d132b3a715e570e827757b8be69525dbb6b5eacb7b5db0633099dbead81325bc6d694ea8fe5e8b233aa6301c1eddec0d337d7f736f6ca131a57b3f049c9a1bfd3fc393a051c0f3c5627bed36e50150d58a6cd2d3a183ba5466bb689ad9331c260030a774a2c447b5512655c409f50472f34c114218130d2317940228c76ad4c96e82a686044c2cf31de3e0497345c4d7238c50fe0d2848d407174c11dc201c30d8ac10f338928808907e2f61375965e7129b6e5751cfa683bc73e19bd14250d0aac7bd9b0e296bb08f7e49444132595224ca8d2f603ae462b36c0aa7f961a141e14416fc3c26185bd3a7d43d55fec34a5bf0ad212bd4e8b1b38564bdf09977d2d3cae10a2a9c4882f1846f49a0fd6b388d6a1a84e9248d889f840c34ac71011024cfef5456c5ee2babbca3d4e9db7e780136ce86e4501db0a2cc2c10dd6bfc92c350c79a99d72b798fb84b57ac67593dd9b1a8cf71bab00746262f00c3b9ae4e2e7232d29cc831c15198942e0e2f0669692145f2b8ec782f889b62710a923526dfdb3b1e88da9129ccfbba74f208d9836718dbe0b7c46773d9f65ef470027310a2d42920369a0b0a211aa62be10b85e76960f9340fea030e66a1c23d3a582db1c35b7ee86f118041f10de63b4dbcc830e9c7cea5586dcb8fa1bbf422d19d37ce30ca3c5815043ccd50fca572643069723c644edd75aa6e00ad2c7205d5d3b97581cd2ca2386ca9f3e289798ded04d694de8f65110c6ff151417545aa224090275e71bbdf560777153bc80f254e5123e540b15a28848f262e1239cd2f0d8dfccb5e6ae3bc0f23c3f2b726406ff5c64d899845fbd8e7ce38e2b7275c652b456b79bf1e5c67384049717e61a1d172709dfee8dd012444e54e72a30f648566562e0aae529cc5a5853577ae0c88d3968c51cb9ea20a9c8ebac2f0b76a568f561c9ad43aa26663291bc9fae6d4161123739243fa4e2d67e5ea0e36db4922189fcc1bb56bec157f355330ec1d2aa846b250aa451115cbbb713b71f57f1ff96c13822286320678221413959158bdf449925c84aceacec7b9d126f1f06b45137d7c9b9d8078c9737c86313b8610c543b9cd4a778a6e53ceedcada1911664c63a3c96347944a8d27c0e7e7edde5f2266d08b35874edadca64b6c7609aada0abedef3c0ddf7d2dd95be80a1dc805a6cad2e88d0c056b106772fb367bc956027cfb7f50c62bd1dffab46d71cb99c531f8c394e41721f1b38f185e5195b26ab49418bf45599897d89ce83afa297defa747afd7a2854b952beb852c751ba0feadf9bf7cb62b9f1f6569cf06edb50cc6079568de2daec36a4be9424c985d92ac9868248354a42c39db7f218ea152563010da97e87e63fda505a41d7e4d159bb72c0dfcd7ee9c364cf9858875e25bf4a3e493182df162843b4884023dbeba9dd80e577bd7dcbbdf63da9880835c96f0ac9e49c08907f63e52eebc1b63c248b4aee4aaafd9dd7f057041fe4cac4648e5ebfa4e09f73cc272bab0d057b1fffa6ea628952347a4e625bba11d8e514440935d6f5ba41d13399716ee65c562574d8e6a176533a87214657f463ee766b6f32d76aba2b531ddfae1434933bf2a2051069a776701b072c3ce083513de853f7f5edcd52b331c6cbfe8ba8dea86924e042353a08e30149057270662a782c48a6b3e0c16414b84b7ab88e13f9dd8c107de85aa4756e71b1b26c5f6c985a6a49f3bf37073645d345c488139b6a888ce3ad6017b383364fdfe793b17eb45cb6558bf97d51b31857f23254786e1d0c728407aa764d6f7c330b17dc07bcee5c4d2cd3654f19591c1cc9a54b4b80635d235dc105353e531d3852a4515695fbfe324f7b958b9d2de300a1a8d9e0c70147bddac8db64e4affbea53394f955b8e4df311ecd580fd7be413c81c558525a5256678e7c30de5f593585fff66200e16026e7b5fd0fd1c6c4f30fe600e6491db60c9137babab2f68af412548d5d35b25f6fd0f5f250e31095c17af51673d2b2d8491b20a472e673991afe620fad01f9f21c6cbfb3fdf208aa2ea69853ca1719ed5712678262a917a8d613315e290063a9b791d6e15b1ae6b4b53ec78fda00a27f4c87c13f0c7ed3cb079d122be08187a65e853b342369ea25a2c1709f27f12c51e27ca62c4310aae1e40600aac6e2ebe904f529f5f6821260988452646f7c9154ff7e2ab706bad22ab9b251f0446e3182ea523e0cde655cc9ba5970e201ec0cbf0222838eee534e25454b10e405fd4bbf26246b80a3e3e80a97ab16594e0392ac2ba2a8be835a0300221febcfca3dff0166a77edb0661e170cbebcd9370bb58f3567e6b3e835f559fe5cda3ec123a9b40a5c26211bbd58b3209b72448f3b037f104f3f88d72b2bce4b4260b29ef45b9e8f7ff6f63def9ec50fccf405b5d656efbabf8fe27eec9fadb03999e00480c3fad5a8b9c8b87fc28aeb86dc7a8bf54004c4e4b6f7105eece051f63f2682bfa8eb35c41c31354bcc6563121d2dfdd6a44acb05cb1658231ef0a24c55b49d6e801a91132d404fdae567bf52c5754b0b323f15e6d2f4e819346ae04482c2ff81565de24e06f89bb7886f26b5a1b0a4a95744a1e7ab185332c5c99a28764cb80a93997031e796da78abf5ede17372e8bf18e4fb51f509e84cf000adb3bbd763ad69db31c5cc3785b13f3e0d02f5ccaa42f7271416f5996a7de52f357e26b9f0486c669a5a7f0ee58fa19456f5349a557e7e47b58256f05e894b5ee7cce2469e4008b24520e7e43deb3f09eab7642079d640c515bfb1e9804b4c28883613dd94789197770f0245cd0ed775864d6c2747e9baac0f7ef1221ee7e9f624ae6a989e3f0404a504dbb37ab35607765a31b082260c64bd94184cf02766bd0a63eadd92d7cb0b311af2a3936cc4cceca1106349e8b5040dcd278fe55e359a6593b0fe9826c92fc161f5009a8cf56c43bcccf2f3e768211d285e6c669b89f8509e7e18f08a7afc700f7e2bd04fe7a9aa57bee9d0dce8141002f621e81c654a688ceab5127b45114a1ae093f05f7c2a05266226d1c10e3309bff82d916ca9f2c6b4f30cb0eb7c4176c1a913731be8e6744a01c1131d477dc1a412ba8dee4c493e48eec53e296788f37358e837a8d7968a76619ba5987d7aef0f619a60d122b193c50052a363b2d465f57b77f65a70443b594fd50e7379b1ce0b46711dab4b0ba3c517cea2ad2391b82d223625b7193ded9ebfe0443d730bdc0114db22fcf8fbfcf3b3bf789752f0adc5acb78aafa0eba5cc1adb8495e4c13bee8b92bc895eec6330df3fe6dd3c361693d298948690b436908b1760b52f7f9e10115b39a59e13fc064674f5bb134beb4027635f60f79e408936893a3d0af4714f993dc7d71a958ec257340ad64295635c48f4744d766343e0bc7639836b47cf1700fab282deb3be3a46e58e5b32c70c5c0ef13b6601275bdd7c5ba476189e3ad9a6e1e46816d2ef3b478c9db2d00d962f1727a61b5258a665f4f6260cdfbd69e5f4bea51a2719b5062438b18e76e4457cb429b84a989a32d5862c39eda5bc3714a0c44b22e3680101e5be1b6ad8846578e96dcd292d1aba696fcf2656f87b0a3b12caa55eae22b793ef25636d21d548c8d66d1d9b9112d05aa254b6563cc925737fe588ef23dd28a3d5f3b790a5b329bcd961f45d110f52b036f1a785f5ababe90ed5869b769bfce83111e78231ed40c0f23dcecf94ee06478a0884c7510c363d645b4d7d4d4a4a68cbe452ac69155bb2a6b0654a7d20e26492dcd6c89cab22c197783d9ef016eb1bb82c7b9a2870e738d52c891211f8e974a44bbacde2e30b18ec8aa08dfaf7e0632c78d6ba99c83ea319ed1d5529c1c1c50d7d4d40f4015386094f24fb072345247bea0679ce2a9567317f54f479a8257a74cdd4719564a90688810aa6a9e348192b0518bf9be7ea76546fc53569bc23ed4d2195cf6aaec8e9130655ef80b7476c53aa874a9a32c04323b793224a509af25aaf626bcd99abb26bc37716a31ac84a40e92f5c43f7afeb6efb3a5fd40cf4718fa2f5ac6f7374bb13a2ce1676cde41744691d4442950cee538f71294d2fc4c99e038bbd78aee12f3492da8363437f60c05282e0381c85d9004133430470525b303f44a476d062857191bc9002ad1c87257a864083fce5551cbd7d2c8a9a86b34408f2f86f35491cb06399ef24d04ccc39b350221e2ccb09386c88cbbcf6145730ef5a695ac83c35d8f822b67cffc94165a11bbb163111e88e1636b9ca8aa71ae24c4a48272035f3de8234c61c0300c48528256eb269092c5ca3a64455e11d8c8173c72cfd3ae7ce4580f3a5d3902fe31aa1e2d98dd7eddb3e93fa87f393b1f382642f7c36b8fa681824c05687e3d6caa80ae79412d21aa89f03b31cc98312589a090bca85b10478f155a55c4216c311706d17fa30c6375ef3e02c1d2f89d921d3ec348287ec70e5019493b7cb336637e9dbf741e1bc494e2139c21984beaf0d38c36fcda8f3e3ce11661a080c2c53f8bd6e51b9707d7a03e937c40d2ee731ab60f670ca211e1a72689049a0729e87c20c0ac720e1542bf44f8201d21d7032e5f37e785a9d864c46291b2be8ca13018ee1910727188b09bf36f5041f7290d6808dc79ec6dd0cc248cf073914dde697625c096e2132bde9502a66d88342c7e7e7e33fbcd727d5ab6af96f7d552b6049bb407abc5e47baa85cd7df24f73ece0360897554a80a33da506c2875c93f8978fa304c1f91881b053d7e95539061e3e1711d1da2e1838718258c1055b070475ab27f8ee616c1ae95dc2a36e3162b7dd414b7afeaa0870e5e895290adca8642f712df49ea3744e6e2dfbfe10959e487479b4f62446c4215a73e418f80cd46a037e354018277379f4e43097470286648b1714a11dca6ffbe3d1fd8174522b62aafaba572df042d0510d08142b7949f22c063acbbbbff6cb60e62f35ad80d6139e1ad5a37ce6a9420ca775ad4080bbc98f96cfed9be4453ee73088080465c2eebc09b8b4365675e8da66d6077848556f8cac20a3a24242ee3a45efec3242db7497b882132cc2d27cd1d2c86d2f64661d306d2a65498a3ff6076ee23ad79348530aaf84cec37be9bf2b7c5728282bd8446dbb08cf1fe49112557a182390dc1655e1ad02a4812df892885dc027b9adabb71adc1465b4f0203897642c06754a34f179e1012d8907c0aec832e62b050e3c039c129c1385faf5e364590a6b43985582632e8421530731839f17fe80b9446d183fe0e41b5c8745ac81e026ef87ae16f6e2f01237a4b8bdc11ccbabef8c1888b0d572d852960ef7c492617a711e6fa46d933bf844535e3a3e9ab56d812e3f2e786825b2fc7ec022d7db97f11da12ac1860fef5c8d54e7ee2789cb0a908bf5a5196cbf0fc1dfe797b77a9d111bbb6b4566843d0c8981b88a51bf05faa5a7272043da019168c91504f133246b7150ecba8694d1b6c63ec4a7bc7048a815ebf1d4da5efe134b8f0ab36b287753ceed6bd8b89d66923194714d21a1d7da260bfee134759820462caa1efbc3cf02019a8e9e0c1282962fdf14e83f54120df0c9b93d0de14fd13ab19925935616eb177be4606065d5b24a89708df8c726a76506697dfebd88011cd88f48123f3f1341a4c5b822aaf84be6d60373e991a1479565ec0b036b17f90fb0dec5cec8952d8c01e83aba835cf387c277133ab5ef036ddc3e633ad4ea537f92f7ceeb47671d750f8c600116920f5775ca4caadd0272dfef129ed7ff4b9330a689e928c0b27ef22e930d2bb7da68db441f02f1154d85dc9545b0527253e1165cb8e3c7d7756be0ae222e2813c3ab689900ab0c4fd82eccfa7901f5a107742264fcdfd83a9348b4831af273fa692924e29fd88c40233ccf3d96178433d9172409f44042fecc4b9e686bf693099f9d82bd130cc51e6a6f4cebf61038d577d27091086697b70379ff58dab4049dcc9af77f5563b1862c96f85dc5e1b8b803240ff3ccee0c42a2914cfcb872f346284c2da759ec3e3d302e31885de419720073057a72eade2007bbe4faf8bba186c9882228abe1b7032d0e1c7ebd6cb65f94b1aa78c459475c6d935b18316758b7f18dac72aa029a192b267badf4ec8e59b90aed024efdd9501ac148411ceae3d410af97905123643f3064df8ed1edc603d781648aabae122fbfb20d6e98af81de4a0b35568f45feff1b11c6e9fc652c6fe2ff60415923e10cbe6119114666fe606155eb4aa5ef9921b3c761b1d2bfbf67fab5798b1995c2c1dffe69a3692be0fdabf9daea5baceeb0cfe76fe840b0026290e86e0d82409f5eb09b07dd88d11052f3b04457a96e4e95835a2d080f320295e0dc4802f2de4482830a836e1d03ca3e734edfa8f973b0d1675c0cf9f4aaaf2bf28018b60162c3cc527c3c27a02111721c7373cb33083f480232e113a2a1a5ad2f457a2afe3e4e3e3b91c5dee58214ad0aa3a08272ff4dc33d663fbb8538aabe219ca921337e30b16f000a2cf7e69df7e09c72473b5f77ec6377fe8240369a51a529d7a72dffb49237e93e24947e763e1c0cd25572df2fd9dd22cd1763a1979edb666b2e6e3aeb1d5adcddc5cf82ad6eeac831e55d5b15e359c4fcbf529ec526d1754012636698ea8f0aed9262a3f75dda1ad2dacf50f62a9c89c75d32bc7c0d6148d4e14d6848b18b46c5ad27b86f0323e4fff36cd4394b0daf7eadf8c6145c6c39e26d03bcfa57e51392266c3c2494be8749dc810f4692660bcc3ce2addad7a061f1f651a301a425e89d5e5f173e531e321c3df62325ddde62d8b16a0dea7db4294a16874727df703d0ec26e3fc54fb354bd5fd044ccef8bbcdaccba624c58377579ae006b481f5dc78628aa95f39bb6b75685204b2200aeac968357a4329f7634f4f2ac9f40bf1e664a3f2b573797d40528561336bcec76af300a8939e75808239715c85bb1c02fcebaadac6e4908b13b9e5584570c9e4614803b1692bb28217d7a0a5032f276db2fda02c2200dc813f5f7b8322810b13752b55b22d6f4f8f192881397687dbb3d2c279749b2f185e69ee1159a458e4c7b7b93c48801435b83c1caa460455f59a060b3ba4641191acd1275a621692930a79eadee223c163ba02777b9cf3feedd7f29fcc0f9138186f27aee905ccdfa3a621a6896b14bb392c13a520c97a0fe5e1be2c34ceef95c98a20310f4c72d0301cf5c3d453b5c4fdcd3fd5b10443cd38c4242e6ee38f5be02338990f0911a40954f08b578b77dc1d2d57dea3305ba100afcd979ef66f3f9d4a1691fb8677bfc5694f1ffaeb517e348e814e94e9c1d7115f9100aad50ca70a5ef3a0e455675167846d878669d315cdb6e67129a5c6c25fab39668541f1988c701477664fa785449ec98737adac675caaeadf58ca61537af90a1450ca12b90001c3cb3a5cb041b3d2faf4bceaeda3f46fe5e22759670480888dba7c10016d62658a5ff1006162c012a8fa99d7a73499e2cc596fc8b0ac4715ffab7efffe47cc19a80c9efdb1d79004005b0696da15427891727b58fcf58aaa4d50d684294405634e191ab62d21f4eb4fa14c401ddc4698ca82816135e35d1548c82b3535e219e4cc36843ab7c2d62a58ab1ec08d36c34ca4cb06f68f5a1ae273e8d9d1c71725e219c56eeaa4957cb55a651f4d88ec75a9d3f8257d16676bd38ad40925b94c21e98c91527448f57c7688a48a1643f2687a320c260111e1f46f611683add3b301afe048cf26262c40310950962e0cd9fa30104be7c75fde1e134eef1e73afd2338020d191938371b98bac44ed7cfd64a0f1ca4b21c849bb539b211d3c5c4a5229420657a1b5ac08d40e44a8126c8737c5f7e9a0be739e38a789729bba0dc128d82bf30385531cc6aca648e5a5b907e5c4cfa253f25060d72f5619e2d6c0900a8bd0d42fd26b042ea776b8933c1a0b0d1e4dcd974759c84f6395eb09dd7121d75f00bdccc995ce4be0c1574122401f5142f695db3552bd30332c628d0eafb75e641c948a36f83b448d443c2837718eab97c4a9e4c0a917b01f00a60e15221dab94f0c0560cd7a9e1fcd21fb098311350a37411d60823e7faa8ac0a9542c3437a6da942d30289cf48960de4039e8e06bff74be10290d1b89c34a6e3bd88890551c0ecaff0c359b19a4521a819e3151b733e7a1bcf0d4afb197cb65142124d7c13c3a60ab77f009917443c7228bf4deb1013fa3c26d7fbad031688673da44d8ce352469e735bec6139bf266bcc1adcf4d3598855605075ca68b34e93bb723b919942740ce429275eb2d2833abadf93b8871c47f48469ecb557f90f6210893759738f559649eb7fd700d7f2ed91a17c2dfba2c77bc34a3d390e5d03a28cc4db903017ec97a220ba6814cb09050828f1a786841e362303c4e7292a07a428a8ea3758f7423bc0427bbf7213446728f2cc724d92a23e045b74dd7520dfe676204e950346ffd1ba7392a706a28e0d8ac47a0f7c85c47ac315109b2a807850c9d311a7dc01e0ada6a35c91aa45fd1c9bc8a7220cb615417d87e21dc9565ff94b30242e5505b444c2265ccb2185bb599b44e4fa27b887f1c3a955eca70580084b032dd6f6525fd1af9db5b794363cddd40b2ff19eac926668ef01d5fd56f1dada1c8b8df0433619f6f3eacdab1178b9a6e8038c0608a597eed9cd004580af2b411e18162890cd6415feaace3f62e6f303649d7e12aebea6c3ff7f80d8b1145eaa7c95b039d0d7927b2c72faa303fcb38cd9cdf3c6c4557ee5828d12b2dd95e697ff48cd74e69f5a668befb23fef4fb6defd8faceba701317bf483ff813b39dcd1afd87cfd234ff20d34651a346055fed15c8ab15ed4d72a674362157e6f970f35c1309afcfc1d140a4a11aa1c245e4389554733f3f11bb7f5608cf6ded217a9e1427c9afc84fd119ef73579da73605dd1500a7708862b8b37e3ca97b096db898661fdca5aaacb09dd8ea35a23a2ddee231e512ef93a1d79f20b8ea8b66855647ce4a81502d2e7454dd49cba36ed6eba6992c44d6f64feb2629f02c3652d89fc20360274a30737b22e0c47a35c203c9627bea4af0bd1fb853ee08dc3d1508904cea320b2477dd482c5befea03a5de9fe0712c57e64746d9bd351a690df985dfd8260df225d2b78ed149983076e800311e0eba56442fc0eecd91d6f96756a4004f6533f4686901e2ed86e84cef5335971d94084f0ca85806b11fbd13f2c5eacb7b4e2230984a3457aa4cacac4b326144d5812b4d4ef839ee509feebf6cc4ba00d2dd4405423ca396418da2f73ebee23c087e6908242742316f950f613af4ad5305478d9b817817ac5c95832c31daa352ed76633b1fe3b0ee23326b04cc6c44868ea049f60c8fe0b06c22973e62f65394f3c64261be434f7a04cdf77e04dae7490de265fd465114ab86bcb1849e62eaee6bd4def2bd6f78e7e8964d99469f01788e4ebb3c354660e5e801a5049eb22b1a9fcb22eaf54d2cd20c89c072b9cf4867963165f5ccee9f95089260c2c4392670f3b2a458a0c717428f6d8d398144d24c1baa1a424e61b19ac3a97e9d0debbcd26f82a8a383958de96142436e82e9cb1564fd6143d208e2078303f64816d1b6aa8b2c675e705e56e646c52a9580ac011bf97e49baf1bbde4c51da04c6f773bf08d55fee9397130b2fb48c4118111fa6a405827935d25300a58a25bfc12bcf6b2e99f22cb6b7e0ac6a30b7fe930e3cb7146f44493f671c61f7b6c2ac3a8caabcd84e847a252e2861bfe1a78b501e3cc69f44a985fdc57fd56f1aa0fa3468c750b812232b241301f4cc959796a7a69e0290089a2020391518aee7e9e9a49fce90108d5f7474dbd28cf939b6fd8c4f3bb082e8dbb43e6d27e98d915b5f22b13b17fa46fdfdd48f6f09fc08337dd68fd26293fc567f5576eaf2e873ca6ed3db22bf84fd4ca1f42469915fd395e6ccd59d0853ad2a7a92d7dd03820cbf8e17c60be6f7a9db34b670c2cee6fb464a9216f910b16c4548f0a05206444d7c1bb739783ff2a9f731aa83ffe0dfffca8dd40d9eb13500c3e512770451afa009b6677d99c08812b4ca177cf7cd9e06d6fe4784455f20761935499a97bdd543cc4aaf640ca60b8fae7b0638bc3312ad6ab6accd3d849c9188700becd2535bd7441a0de5e75043c2df37962a53fe69eae3fc2a326c55c5837a2d27d2a9e064964828674b615174321c801cbd70c66be97241086c865b8945cc43f18e0dd864e9d4c2559dd249d2c947ab2c3cd7cf1e29c4ee181743552eaa8948eb626fbba3acb5e94099d983f6bc090b4589247ce475ac7f4b5a163236b38936f511aa4571744fe51c2e5e4f832a93dae9a0292956269d2ba8da72c6972015b47b5b3f09eee1a0699cdfb69d5ffaff2066fb68d82401ee2db13a5b0a260d548061f6000c45687331883e1f356618e8d5e0db4c1609bf489576bd5f002aabd828f6d194f0a3d6242e9d347ccd452b158384df1a623c23b0de9938d2d4a8bd3d4c01e4ce47ac480b7521f86ba23106e7ca578aa04fc7c20904545d14389fe86841c036ac731aef9af24df43ba0b648f5011bc7e79a5aac149f850caf9436874eceb4a95d1b0ae40c71d71b96335474c1209b2b91fec2d5bd6ad4ba97e401f693ae12183198ad1123532296848a7021d5016cf6873215af201b55d29d24e8b76b95d64d245522994a9e2a2066b928a4299e7e032d76498bb22b9f0db5506c6e1479f8484b8ee536f954bf0d84bea0f6a01e1d634d58ceadc15e0189e001bf2a09c3aae800a9f78d76340abb3e480eadb375d3a4f1be1ab72d2c24fdda0b8765b808e66d2867de3383e1bd1dd02da9ae4580457b620c51b0cf5ae31d462ea6019ff61a3bfcf491b0de5d7a8220a5d46b2ef2e53bd04a333a40b45c824943cfd45b0497ff214556dab7806b644102000ef1f0176aed3d4ef26a4544491906fbe4d9cff99cc6ca2a9e7f3c1b777a791a30a2036fa2f03848acf29b1082dc9c112f6e02758db14f1f6ada5c625374644394d17327b7bdb62807cfb01b21e922abda6533c782d61f1ce7b8fa8302610358932078b11a90bf4274636980723ea6c82d83bb1cc2a3ac172105f6976c956033b916d25c90ca42270808eb4fe0ae59623d0f73d44c29ab04d33b88c8f547a6d44c46817b5912c5aa3bbf2626614a70922d3aa0b2b74bf1e9aeb8b8d54d571b4a0652a9332eec1a9387960addda804066c9a9642734ccfe4eff4e1bc72479196a1caaa48bd206d854eb35406f0d6a4c440c4f8cfde3ea3ff529d0bb3e0c398f3fcf72fa32ca9b61abdd669b049d139e18e30fe45e579bb72aacb9f1793f2a122fe46044b0a578420d17349602df4e02bcae31b5d6ae075249141e4b90ab018b23ea60abb07b45c265b1e01b46e4262c1e1a78ce142f7e5b78f78a0e44ac621b6bcf8b10712139fd5a3aef02dc086188a624d364dc158cdb6512fb5c6e21aa2a0516876742dccd40fde019328b90c521877e9b2101f8428fab44bae02ad0186c8c3aa34b44040aba3ec384ce5a37de7c4ecf3f9b7f0900a6db69fe309a40d4ede97cae977f1cbb721cc6e03763527ba360687315626b63da6b45ab91770f1905c2812c8465f0daffa97e865f1517953499a4cde58be8937a9dee212e30867dc744dc09644ff191da27d3ac456228dcf2464c9a25c93e7f8f71ca20ca004441612c909d82b6f6ad9ee28edecd39b919722b8b35c2288a79fcfb8038936a16ee11435ce8a156a866324639872baedac56bc8386675270520c3f956ca6c415b863165e0de77e1eae6b9428526c52cd03b32ca98d9097e46dbe539ab433fcbc43c9e21c1bd918fc52dd3efabe45ef2b7c28aec3e9c260cd7d8fcc083b2cfda5358ef72fbca4f0157f406d8e00981aed4a26687e6760e8097ca7a89b48856500c6971f2e2d711e7295d68b22a5d2d2e5d013ec9c01179bc12b4dc2a73286d877692d10c90e1e597c3b2d85e7e2f2a0eee1aa6604f5de913e0d59266d7a5ee74efd6ad82bbb29f489f0e8644dc375597d0c6bf4484ebeddaa30b18636d15d866c467baff8392759cfe554c92acc264a4fb0223a202ec4ec7209f2f02c2297c0d0b9f6f57ce0c1f2467f9e98855f2f7214b6bdcd53b1caf613b35c706153039727da5ab72695335b8fc6993b305c8aa1a005540ad5ce205800881bf4dd93ede279c806cfd7f50b33278fd4b6223a86b55d9778fcc1907ddcc31c44aadec7498fe07d4ca57a6f8e0140bf51f705c32c5c41a5d6cd83b9e3bfd352ce941bf1e488f0ac49229fb15f721d751230ace6d7c5f1a256e222ce192fca8b0b13e929d4f75d7438be748142bb768ec056e3f54a92d7a05ecf8043058f9e8964f940a565e134e580fb4166403b16b442380c59c1d4611791ebc14b586a761007db2ddab172095f783b9a12a0a09dbdf4a779ea3271b809fc24f998be2677f2133fe2b982cf3b2187d34f03cd676ad8bf4fd456e755e7f347659cb44e2e189aa5a1213a68df5db5cd3fc37d84ae18bf0e15787ea8b7a6d4986eab3ab0f258cb6d71674088775b6b38533790ef8cc8f7e868a187880fae5e33f385de01017e227a5760b80bbf45a5500cc72a7c091482b4c2a5d956f3a443c8050183b51f758542040e04dd1c46f354ec635c20ef76729b5cff19089b84b23e2daac27a4f364b82ee72f2b2b9c5f978dd6805d75af043eeacecd9e50e6beb6aa91410bbae45bde800c86ac3ddcdd4d5985f7567135c7cf5e8c9db8227530a6cfaff86076f25dd80580af1e4cc2881fd5af7f0f59b9fa933f6df5f5483e28a4b0f08d4577130b4a89914ca0f9523a0920ab09627d104806a6bfd1808fb3644e9db6a4e8c1512d5c816842e190076ee432e1f2e90270dd6a9d4fe88da8b5f0da9e92ec153e3c5e840504d1698b115ed803df86fc3991c919f8e0e819d93d271bdba907e7e2abb3cbeb46abe4145309bfc4733949e38617cd1907aa50d72c53b5dd20a113a5a3568842b677c29b0c7eecd99914a19fad43fec03e609d5b149b1bf9f3762de88758e9881483463ee18b1a5f356bfa786d4f8a654dfcde454677133979ae969186f7ebae599362156115bcca50981c8f7bbbcabe54eda5bcc509199246cbb34d0a651357bfce0b3d5a64a6ed74bb940c5068682fe361271c4d4c0170bd34c351021310be667c7fb757083a6d06cfaf6064c0bdefebae5f0fe16184b6e9d280e3c47bd0a324397a62fafeaa4eccb4b5675d072b7ce0151165ee33dd616114dbb8cf7b34febf355da7ea85d2e7259c794eaa65582ef446616cebc252c80f4a3fbbf29fc0cacdaa5b852520069a438b0052dd0ceb06af1459b552c3b9028d8721e572abc3b70216ecde963f3029ad184d75cf64eb5c1bb784a133835f8e78959fb3c7d681d98af30957ad43550864569db97eb70e05c0a4d6cb138a27dfd3b21b1f73854863cbf447aac98c9dcdd4d997b53259a0b69a1e9c3c6338fbc8ce19fa04097d64dfada6d7c55c30eefb05463a6c8b0c18a718ca8b04883888dc6f43a1375b4e0e36202396b0b82325cb96bb6e7f575f9b77303299da10b1c7fb41c85ec94833619a6574fdfc542dfc908d4e8234962707f3f4ece71b797c1a24ba254211008cd87b64b4df2418dbdd69dee543dfbb4c3247958f33599b1d71900f49a2027987a8d74a404fdbd14c9413d8db972002eb4a0d56fa527948b7dcfbae74fbeb4690e44dd3c5a386d264c80270726d64ea2e7d0a5565e7d32e4a0daca6f0d8830c4cbc1824bb3867078799c74876d125d114e364a2a6d71835398c0af905644478bbdf8c4d3aea3b8af88c50c4f3ec531cbac7fde8ea930e8856588eb3185fdc8262a198a784f000bc6fc475dd0832097b5e61f4bf7c4c86acdff3b18b7754fb650053341dd83765e9c471077239d81433d53a410073efb23ebad5ec3b93289d9c341dcf4478d07a18a89f72ed6eaded133a71bd7e8a37f9202b2e5f1743b24798068b9ee32f48611046133db420c32d870f675d5e6d1073b8bb673da5c8e8d3507e31d3f89b92e99d60b8bfbb061a8cd681544fff6d77498f772f99650403c8a0ed5797f2685218bf5f131f1fb8145e92ad79fd7fcc52624bd7409cb054414ab25322d428527b026802ba933c8e4aed5734052a853ffe3443edc5fe23d1d170da3ae5f883edd302d458d45af2c87a790720a2b048605d2db6b422c909ae11c7514b8445dd8d9374565062e39dde4a472951d7677c598b30c3edc2efb48c668514acb9044cee7b746572db3631bf948b6f7f5c391a574a7ffad5ecc4ca458b8a7f15ad86c797f53618871ba8a8a413c6a5399512af5c7b934ffc7255e143c571b668c16d72fa16046936e1eb37d61244f124219b1f2394a250524f05968c170c5694ab63612b5073498ed66a1058b427260ac5a6d027aac7ebe0106feee915a089d9abfd49a0abd683ea15972dc7b32f3d9859f50114d68945fb5d0b742f20a3a5c58b66ff3a86440899b8be3ed27d074f6353001ee11c743f266f45d7418af760ca7bdd237524ae7ffa95dc2295ba5ca2ee37cfd84bb801f97c20c48e555fa6a7893cb5563e5b3f48aaf897876c729bde445d4b4896c94a5b3e0bf8ea7dc9c2cf05bad9c91fe41ba80c01ae4ebbd5aa0dd40836e13bc21677c83f4e9343e83a61160ffb1b241e29f274bc1f108e786b0bf02cfb3884d8225b314ac872e16197f7524bcd170dee60901d8133506a09d3f17e7ee91bbd76c4d7907c2c5b35e12504946be2f786137f84f64c3b8c3f2efe09ffa58d79fcd245fb9b55f9c82325548c50f34b77525ce6ae258279296b5f52d0d096e2ce6ee627e767926ac192d05a447c525898cf3ddab2ac0fbcfa64e9645253e8cc20620836743dc732419367839ecf052d9b4ba0455c93c49b9658817326f566474b0907232f98c03c987cb48c88f71847f08c3eff6d2cc184dabb085412a121d019dfbdafee94a371949665a0a311d724fcc397b4a8b9a45ea50a18e7d9998e3088621131e8447c591986fb143416e86e73d39220007be111fea04967b932b83123525d4b3bc9ca8548ec029302172e0e8f4186173901ef018cede9e58df4d2269a586b4e8bda401af681d850b6e551936f4bce9ea04ed946ab77abbb78067954eccaab0980a90452bae47909c22271ac3a9cf357afdbfdf8808bbb19f649f777c6497e5ae8c1a53a707284093fd7ebb800123b3bc2eba217f46e3f197444f23993d732647a9367129fbaa8d8b0f0c362c6682f77b405f2323e190e634926c799946ae44c1e134ca6c621ec171adb31e21064d1142523ef34fed1b5719b77384c8a06130f9273b6ff03ddbed260a49f015dcd06f200cdceef672fcfc924b494c4732fd350796836c75ca33d67f6e188556019a2d78456d30b8da6151a5da3418ba894477b9d49763c67fd1a2af31cd2331f5c3a4c698419508b90b4de8da029e4856eb33a60736cd3fd4e231f3919e92b745fd6269557d6f9fd8b9c1dca7ec279131d25383f13416f408b14c0c20ecb5455f072aa93c8ba83e3ac8d55d516492da2cc6312c80b21bdb6e178d3113395575e45ef63577b9accaf419adb886b2bac3a7f4b30c4d24a8740bc1cb6fce375a5e1872ac5afd8c7642b4f2b97a3601377a7a81dd56133907762d93426b3e5c9f4dd668c23cf115a05017615656fef5e7212e7479e31e816d44b85cdaa0ee260c4643307b56d8c9108a18eca45a152b4a00d62289457153a10311045550f626e75f123d0ba2cb745c6808b13bb96040059758f1df4d85732c58bf9017a13403537ae23314a9e72e6bbf9009f94f5d8cf5c7c5f2531f224e6e772f1680c6ea20b1df13f350996eb29394ed5d90c44f26a776e31a846ca90d679c442ec2116554b82e16452d6f5e2e871b44b1add82f2476736b40628eb1daba0d8da9c4ac4fc2c738a5aebf8c644d908040948ea28b517b6ea62f8c34bd1bb7261dc43f0d7afa13d2e2fd6f53548358867d9809f0833474b74128c028e84593aeb5c4931282fa81a6dd162d466f4294c244e15cc1ceca17639f02d928dd3a7d92396fb492b7a62fb447bcf39b26426e5a91091e10ee8e38d926d842506da0402f1288c843cc94955c15a8a7499008f0a996ba4634e1c2e4f93a562488fca9c6a9360fc496d8487c90035b4c1f1c9756e1503b68fd6655891e5671e494cf496ea440a9674178d6264af6775be2bfa1cfd201cd82c0f001abac73e5dc1ac6eba85c15046c3a7553b301e15245cbb5d3eaa97d947aa27cf723c7cd01a304f058653af7da4277af90206c656c3f99d53fadc708dd7e5444eaf7e47eb0c7fe4f9979b8717ad874e187302fc24d40a764bda9c9e902ed260586a2deef43c0d3c40e4c7753ca713894b23f50a960ef6a8a7e38165f6857ab8a255e5a64d00b4dd0b40cb49c02ff7efd43afa9b2f585e10ae4fcb3e1b71040c7f15abf570ed84d72ab4ad1d73fbb476ebdf2e006952f17c1d30b5e3df408ca2f1f6c3c7187c330be14634ef42b28f720a9d2693a46e67f14dc7e093dbbe628e0933b6dc2c7030d9af428b3eb60ad1ed6bbb68c45aab58fc8aa86fc509f4f6e6ca425f5fd31a85705c4ad6362b502501442cb79caac05516dc3aec5ef1f6eea774c97b48a32e09ec1b7f841a2eaa53fd2bebbef41ee58beafde876aeb9c9075bdc47d3f00f57dd41bdf4a3e29ac18999085031717f7c5bf2e4ce871f9d7d2a98bd9df019bcb73781a1e4fddbf7aca61ff47ec7c87874053506080b8bd3666b45d416607df03f3ff4d08fb289c3b0c6ed6b18529b56caea6aee54d279ae88bf74c9b6b2f6c764c4ac275a8c38a7b08a856d880e3a98614c19d7ef39b64f4fcfb1a4027e335333e6400e5c209c13c443a27253247f68333b4062cad3a06c36cd3e3b3f5ee9f4b9908b82ac3c0268c0f79a101430ebd75560629ec70bc7c50d0952e930f0212d082ddca5fd8b849ba6f69d4c8a278647579c608628e3719ca8001bb75c95040dd958b69122dcd417644e0a59881538afd99da0bd4298ff8f67a9c160c629c8d3d9a1d59ab8d78d03b62ddff710133fc395e8b7aae0082012b01062be30622fcd6d30c4a447dbe53d834f05a80262993fe8060a5092b535afe9bc12c6d3eb5c496ca94b4e284eb2c30b2cd877c119c1d934e977bb3227391cd4c2d0786c2b08de6686e145b76aef12255ef0783d899f5de2016c12e076d5f6ff8cf8c0d8e0c10f300e43c22d617c915f1e28eeeb29b6b9cabd3094aa1809e9ec5df21f5464b02e98b09e2a75a59f1c27ab986d6db5b7dad42863727fb4e0c069286fa59e8e74b333215965c283d51df0daa868165403e1ce51df3165869de528706d72f992da73c93a820b6ac00ead5e6bb34bb13a0b2d0b6e95cb56891ff0addcb597913612fcea5fc8c66e714865484a6cfb984ba78c67537457028dd6b511d946c1b453507aa61774140828578c715211fea370fe7f98a80e0517274c7763ca96e9a1a8629686ecd623feaef39040200bcbeec0bdb9c7d1ddbd88f726cd79fa0d631b18148f8db10b7feb03bd27a93ba609b62a0cccdc46526eb8cce86ebb0fd48606139215fd44ba4d863981ede66062c4ea61a890ee12f66d9dd75254bd24305d75f446a8d9cb1c0f7beb5730916f8b2319af20b171c25a4e12c2cdafdbf786b171f557ffab3446865da0b7ff995abddd81024a294722d3d8bc4593771a5b14b862356774a6e683d115fa55511215918222242a02604db4661ebd2c4a13d5a74d86a4e8f36e51f9bc8333dc54dfad64c2809c65851aadf7ac610e6421c72f4ce5da05a408315994a79a60aa6da8f74c431959dca39e010892670e2c2700d189f5487e5a790b935f89b751db0c4c30e0f615ea871fc993e6a5842f3bb10961b16c8f773a87b8c7e64dac61c49f67c21742d4e54fc187c620f09458a0533b9e97dea0c04603e4241fbb2013eae54cefd9e49d64af380bda9b0a39a66ad350dce45038d156a492e2f3997037f1f4e03d63cb630c6cae2a872852453f8fa6266a0b3240499d4e7ab96a0c2ebdb31e7fc2f5c79fe3b38ec303710428189a45f60745591a39ca008d5bfe91ba19fcac6fc6296fc453a66d7253dc59d8a9192e1fa2d2398d16fe9ff0bba96eeb2a31e5d2a2f83b0d7eb479f5bd7a66d6f1bdd1db9cbba4f0b540ad048a989c2cab06cf58e453ed30bbbbb46fac5f7df0f3d3d1c56d9351b3c8f09f46e9b5147c13dc00d590c5dce72a5435ace3afb9b8bb3e57f602ccc2e9320441bd9f93e50cc00f1d745aae87a138fb2f697cd50344ed6340320972f1513322128e20c732da0b3edb42e7bcbd4755a70552ba06ebfe23c80967654ad8f3876a8b05d3138ece8d9492d58805e7d7b39506d09570b727fb9d746392ff3ba0657d44484674d2ea6b132e17af7e1571b3596ad00931eb7543284ef5181aabbafb8a1bb0ed46dccef053c63ba75d6beea92e8c6ccfe91c0a9587dd8adf745bf8f7c15e5f68ef030c76e08f242bbd48daad06b672cbdba45cf056f29643cf7799a30fa321a508b414dca4bff075a82efcd80e7b9d892d27ba5d5b25bce5d04a43d4d8727701413993c559d5faea0ee3fe4c8e197e9171faddb5ea856b2407bf0872d4ed1581a115db756f1e8ad4f5de4e47fd9add689955a2b663c6a7c865a01d4f869f59af76d589a158f9f6ce8e5db52d49b4f5580445cf50a7b9152d896878051272c0dc76db6f2ff27e020897ceda3c5de69d7cfc17045a725fbc5a304eada20eb83eba1de77ee843b1d486ea41433c0e549436aea9fa15688583c805786c31c06ca4436ab419242d0f2035a180820a23c4781edf9493a5f90d9833cdb38176743615c1c4490f066865a0b37509d94de4de52cab465d90a4b0ba00c2848ecf00dc5e93f3e5e7a8f8d07e6a98d87c1db9d9b37ce7a78d99cbcf5d3bc1501ed70f073691b41de56c03715d8518c6039d8863d49ad8b60757504abcb1db0bab4da5bb72d612d9ce7ceeb9a79ffda44abeacf9a4b8d702d02d7db491fef8bc48ebf3e008311d680eb8ded1d47af5f610fb83e52607cd95bddf024f0d863ceba81777bb5166b05e1dd9d439d579faafc6b07a5d73fabb5189f3bb6ba631b61365bd4b897f3fcd5fe4a8dacb5d9188db327540fa4db163503d25dde36572eb3ed746beba406368eb4796973b9e9ba35d278dad01b2ff5f1f5e2f1d7d9d9cfebaeec9dbd4fcf9e535bf6f80bc8dbd73e5efbda87befce2b0bc4823f26c1188b64be379bbdd6ef976ab413692d7bef695203cc84ba15bedd64939e846bb9da78f8fd8791f37cfd7ebe53daf93760e4f07d1a79fe7799ee7799ee7abe775f29c670fea733a8fd34ed3344dd3344dd3344dd334cd0aa3c08f9090d049f4426df6247a659b996f2689473db027d1abcdb38139ccd45fde48a98d24c1f575cec7c9e0181c973a576764ca396d98f37066599e3498032a061b5ed976e249ad277b7da566407a99e54930df584f3a6a23fdb4153b8938f4f639a56330689f746b74bbad78d27393ee63edc0168d19905eba7cc4cec76cf553b3acc43ad4d516d1c1978e808afb40f39416f3b2ec2fcb32e7f22c4b73fcf6916e8b465adaffb3c10123385a2a8e737e4f9d6514ac21ac6a88be483318057a6c6d8b4e6b6497ac521208a4327d966799e7354c49da677976ee2ebb86005eb01d5b09c6cfe752e36a903da3913a278bb9b5f6c771af466a1ce973d2b245edd3ba4aad78b60ae63c113649eaa45ba3d68dbde6403a993acf2ee95cc79c679190e34f899694223d59db3de8f455b45a62b22a064f10608774777795ae9c73ce39e7ec72b9dc74e59c73cef9f49c73ce39bbbc060bc1956fce668fe9a79f1906c2a9c1f4699bb545b6a868ec8d452ee78d2a3e084681eced40b008640f8245207b7be9b339a7298d160c9a36c693a7699d08e68013cde0f569f586e5f204ea2fcfb0b1d72bcdb22ccbd12cd15bed04d7ebf8256dfc31784b73dac1dbe15553d23bc01e80c15fa07164bdd55a6fbdd4e1b583da72079b4ddbab1c4ba81e481f4bd40c48ebee344f4f10aefeb50fb5160816422ecfb2749d68e9286a6df9f2f082d9f08ecdf2dad7d647ec3c889c73c67df0266d51698f74b6088488ce5d2fdd830f3a677a598e5f96650e82859045b875f9ccc29ca431f7d8b5a7ed9e3e62e74fc7a68fd9344d7f99d6da2a118dfbe0b81436bee9335808a64daddde080111c2d15c739bfa7ce320a5ad9ad8b5443f4e3d3c6e33f962ae5ed8c416b0be2dc69b4340d56a53cabf5a4f37a8b8cf33f3eb00894de5a9dcb4e6ed510b008942e77dd78316f6f9fcd394d69345b8ec160700ca675c7066b92da226bf42a51f436e6beba2a1481cb722c5a3125f2eaf0a77d9d7f5221da061c8c2ae5b5af1c971ae7b00b1b83c2b47db6a8675492d7bef631a0bfdcf0e6ad7682fba58fd8f9f206bbc5ca6640ccdb51589af6fcdc86c42256c790f403f84a1566eb2dac013e3014d6deb39b09c6ef91d96ae33838c757cfed02a68d07e2fbc6ab584259558bc40d88f98f97b006fc78efeca0a6f9729ed3f4113b6fde6af5f08251a0c75fb713b4fbf809a34076f37682b116811f8f79ec2682d24d307ef69f9b087c7a787a6ce995f4b6c1777e4aab685622b4bf720bd16a015e3b16d6bec691fe426a0e24e9bc3a44f24b2094c84e82bd6c3d54a99f260c84d3cfdcb8eba6eddadb63c568797b3d8d823767cd09df9c78d35f443c11358b8695168144da079e4f590209f1d40eac993183f22d504b38664063d2b215f7720db6b29e15f772221b09c6cfe0e523d3abaa5ffef206b8069bf9f2a1216c0e995ac2aba22f7b5abcd3e94befc1e7b57e71df20bf36eca3c541403d416e610fc0e0817c44a2c1561b577393a93766507a69cd3c116c64fa8d4ce8cbcb9f969696d6c83422a91e4a0fb2d56ebcf1e9ec8d1d8c496a06a513dd867a6ef636562da91e4a206f408fe39e20b7b65128e4d8d67e6d7d1b99849e806ebc1e9963180831c764252d4aeb5cd650231a12eab18dc7170c665fc876b6a91e4a07b269699d6e6a06a5c3a91e84332fd3344d619ea6699abadd4ad334d5e0699aa669cdd3344d53224fd3344d873c4dd33415f2344dd3b4c7d3344d53eb699aa6699aa6699aa6699aa6699aa6699aa6a8a7699aa6699a6e4853200ff2d4673010d29d33759e5ba79c67c775faa4af3ce503cbe9a961ca079653b3369535d45217d154d6504bf3d0548d281d2a85a66a44e910d933950e09f5603b950e09f5dc29a11e6ba7847a6c4ff558d4d63d763c4f14c84b1808425ec24000f2b3e69a2d2a1b797ac7baee8969a44f09cbd9859a7de2170cdd79a54fcda1f4b2ec79dd3641afb6ddafd990be740b7cfde4532b8df165e91a6ce7900dc876a6b653d8b832486887426be69cfad2b36827d697e5d904cd970e1ba6bcf3f7eb9ccccb98972fde0f4c2a4dbdc7adf3ce5feb6e0612f13891db39adbbf9778d7e319e68c789dc165b773316915b22b74badbb1949faf444a713b93d6a1dee590ea5671f915ba3ced1ccb40eff7e6d7e737e279ec8c789bc87adc39948e4fdd43998137927b50e67a5c75ac242f244de44debdd6913d221f897cbc6a1d99c1a4669ea89dc847a6d691998888cc484f84a5f4443e123909ad2b73dd227209b4aecc56e915918fa0731a9cc81dd03912904ee4b58520841f6842445e9bc871ad2b851b3a4782a19713f96d5d8965399424087222d7000381e836a657f8f75702e0daee4f6875e7ef27fc097f585677f6cedec5ea599d8985d5fb599d2914fe845667fe7ec22f1d63599dd9b31c4acf394d7b18ab67752e2cac1e560fabf7b33a9750f813fe84bf2f5dbf9ff027fc09bf7412cb969e739a92583dabcb58583dac1e56efcb2cb41c4acf394d85e5cf72283de734cda5f0cbdcbb3d1a2d4d7be586f2f69c87674788c186f366bb9d4e743bd31df4749e73e7243a775cb0d36fbd9db3879e2fac1d17d689553a8c760a775cc2532b2dfde563fe7e26cc65f64e9ad9f3317b66ce5830ac8c4584f5a5bbd052e80313662191f04bcf4dfeeceff7fbd24b8cf3ebe8cbd2c9d176b6894aeff3ac56c642b11a0b63d9c8abbe12a2c2166221797137b135d8faf36fe87573e34a1e9ef1c91c4bb4875eb3137dea17cc2b90ef4b1742fad26bbf2ffdfc799dbf9c7be7efa971a507d946bca0f740b7b3cd2f97af231a2dd5b2b053ab71a5c3a052b2f4b3d7b913a59f39a7a92d83fa5fb6d24b5e366dfdb64de7c6d79765e923b1f4d24724a8972ef7d981f9497b05f9497b5d5b637c1d0863da6d1be940372808a86baf7ad65ea30d93a49fb51769b33d0abf04baf1c627d2816c4d96b8c7eb973e22a921ea977e6a206d35c475921cabae9e1aaeed510346db69bd2fed892f5d66f4a5c78ebef49f185f8e60bef42eddf6f0dc78afd4c6f47396565ffa08f42f4700bc4618796d6391eaa164aa1e4acff7f54b6d09b4586f2f6dd9dd0e03d1b8da41f6711c470b0ba1dbde4034ae7b3cb2bf11f694f2f01146e168ec203b99739a92401e7f9e5a43ec380f5fa5cec35a9ef4cae32acfd246dac8a5c691a85f5be9b64497de75e3b9fc344bd08e6334ee028336679bc63ef63c7c642bfdec3efddada76f2d87838f8a49fa58d0c924b4fba9b361e0924017e12d83872c3c398a42ee79140924c5d14804500631855972b07d2d31ab41d4f029faca48ff491be663aef59be4a1046183e724ab1dbd12f90246b5699fde4e5275d45efbaf1ee5833682f3f94deb7b24fe78d67db4e9769de6e67bb5c5e7a2e6cc630352546858fc88a15368d8572d56050cddffb34e40847c31f8050e185cb921a2c4d57b2d0fc58b8f75ef349c890c3b5a7b5b60245e260a1c2450b8d3a67f06896c118e3d3348344c975fe4e61dbebf57abe7befbd469880499c90216202c63573efbdd775c3189bf7a2e88de772d932530ee625978bc0e5e6cdf45c5d373dcf186f9d4c5887a71f33dea678eb204478f081032420428fb77e811136d0812a6ffd039d33df7a08464002560ef6f649e9cc5b6f41e73af4cae4868a70bcf5d1a873f66d7d7241c75b1f6374ce577f49f509c8d5db9ae56d7d0ac2f0b652bd7d0a52e26d250a2b14d83df1d6954b714e9f5a401300134881362f442951c6451ca71dcc33ccd3220f2b1f06731c0c06732d2e0890fb28575d4d61e6d00a50b071422a6264029632f9d6281b3b5c23932b333710e3ebe5a9d6bf5ebe01675fb4d6e5a0d4141a56a0826aac400519be75219f31c1407899406b5aeb2af2c35524de6b4201a1e1c1c476b4768999b7e6cd2c622817de6c307dbe136351e929284bbfc0086559d6a8f165492c891b7056f7a1d7eb95b02bfd03080fb29e8756969e3d6de14bffe91cec4b3f8b5c34e23cc618932d7e8fbd9ac4ea637aebd717e7edd38c244d336670a221c415406b0754c14b077f65d8f87b657cf93ba4fd8febd756fa48c7a337c95807918296262a0043907091b442470b5a6fda0cc99c576805638c63ccf99b82952b17817361bcc855185250318c9e62103be0dbe3841f35b6d0d049111c63de7b2f8692d623185eb8c02f604879ebb41761deba100a47de56c1f8de2c9f7bef11357f31c6f896f7ba38c1c6dba8b7d69ef0e5adc55656258e97e14f8c6f4dd6ad5ede628cb12dad6d11e5afdfebe4e2c55f29ec1a2201e44b0a42e290b9524686181e1c55e386ab2c5b18411df57a3d15e5ebde7b31c6f896f7ae88225a1146012c7608597cc1a01a157d07464c9c5aa0288778a70891152ed0aeb516b5d6da7befb5d65abb42c6ec563125cc796243d5842a490c346b6d53d4db7befb5a5b52a963c2e3ec6175fd75d40119a2826c61c0992c20dc0bdfec1bdf7e2ebefefbad1d2d2665aa1885380142bfcf9d669429e42c85bdf9082cd5befd03905bcf50f41defa0626bc790bf5b6e8c8dba6b74573de322162e1997bef4501e631c61767a04e991c4b47623485b1d6628c71dea130a180bf9e5108fffaab731b527c27809485aac8529d188a604e6b6dd391b7f7de7b424c0d97bbab1b577e367e98a991cdbbc4cb5b9bf39727a4fc8dfdbdbe26f67a3d143bd2bba88fc074cecc0a818da55e182f563d303bd2c7adce8d5fe63ce97da273e6933e168958ef62125a1d07e004392164a9848fc88ef4f2a48fc4ced5aa15269e2cadce048e278aaa9c1765d28c99a13824b21bbb3ce9e38fcd93fea4a7c0ea4cdf0546e800e921e8dcd0934ec28e27dd049d439f341d6075e696e5303acdeacca20d38d23f581d766122496a889139437624161526e7932ea4a050021515574fbb910b9516af27fd6605e9adf5fc72b212f5f6c9db628cb7556f8b5842b801f49b446215396fdade34bf3c7d0e02ab047997cb9575195871eaed78d65dae5cbab2cff7a35379f265595a5d15e67ab0de5a73cbea72708bca8cc703788c3353e7723033b5d06af57acfb3d72c3acd22ab2b1bb882a3c3bca4bcacb3f96964cb4c9683bdd9db79746f67510d169d47cd25fd7df6599d49f4fd485c63b544ced2132e555b9ade586b2d6905c3cd5eeff57a26687674b272efbde494276fadbcb5e2d1935eb23a898d422172a65872055460a449530270cc142d3d152ac9957124a5f4f84b65fcf57abd15d6daf42ded012e54799366050d3a70763cbf7a1eeeb4d65a1a57dede7bafb5eda4cd9353493078d2d31fa7275e9eb47ad2090a91277d03ce8427bd43e710f0a47f0041143ee9223c8051a73ce9142586272bf19a3f2751f584b53e86588aa64811a15264b3584bbab5d6bef0f6de7bb1b5554070dfb9ea5465e549ffe95cadf2a493931f404ffa25c14306a9146a7ec450021b2c64133153ac30ad6c44f0aa9003138a29cdb08915214c36616d3dbe3dd92405275b821d617614297104486f00b0a89f8db15c22a9a2a0d8a16a55c6ca8699231367b670e0ba51484eb02d1853fd02903af1203e510059514b2ac4c97204ca78e55cc2e62cb2ba1c749c99b02d073d2f358e8947de32d32d071b37e62053e7aa0b37fb8229689aa45c81b1528597a2b7e620d4130ad64d62e3cca2759e493469a4a34ff5be006f16bb0e2d9965550231cb2f068a313b5e5afc50e5088aad16c533c21dcf9fb4f23cdc97cfdbe049ff400410567792a49351348a3c79e38da0161fdfcc62e346378958883fba6591f272b0e847e2d71aa276ae3a0da33ec45b6b9a1bb0fe0c9e442f184994196f4d79b590929002ab23c1ba075697edc53daf0a49b4e04578b1905ad2da1cd56ff5ea73760948f41e3b892518dfb66de3bda0449776c4f8d65e5cb34ee21b5b57c0b75babc1356858c0455194e8cfb35ad22dee276d639dc736de0b4a3cf68af11d317ead3611d49abd454001df7eab3d4001df0af8bed53a7fde57d7ee5a315a4990a32b294cd657aa30585ffd863036ae733bf3c79ea01f2d87d147abe3d0f4d64debf796717f8e6045c0b010f025afeb8ad0b9eb72b9ae795de6ad43e35c12d8706f1dae8fb0edf6629db022a9c538df9c6fdde0d97999975ed3793c9f2f36cd6b9aa6699e6debd038d35d3609346e746be3e4d179a5dfdbb87ee55d7aef889d1fab07d8ed123c72ac9cb4baf5dcb8ac3dc0da3a753edf7823ef3e99ad8cd3def407e63f3f0ea3394c0693fd90083e6ae355226c46b3c17cc7673698d78fc96e3cd88ec76c3c1241f407ffdc5650613a8a6c3958f376fa93d47a7bf5f11ee771eb34ab4bdd7a8f2ddbd26025def4e7961845715eabd380579d7cf5f62b42df6ad5e0c623a1dd036bf248785e892b87b2560ebc14a44fde9bcb5158bf8ea23dfbc90107bc16d403949e79a5e75bad1a943ec21a30ee7204c627f3932dc89e6f3f48bf2406240aeb285214b53954b77d7bc1bd79aae69ca6349ad7b6367bdbe004f75d24decdd0f7a6e8db2dd0f7ed65d6b7dbe277e924c9f4f5eb9f3bb0f6337db9362861bc17fc084b6121dc8cc242b0971cc7be6dd0389cdd7afb680b6182fbb57ab0cefb10822b84d2db4bb7366c82fb3604eb72d3b38dc7c3b33ede44f4c042b0de370f1a676b975f1be9d6f6238c021890e0f6c02870ddfa6dc487cedddb887183ceb5635713d0942dca63dc63573d47fcaab9d1b1a7230c04b2aca3672f4f9e17948a3f3cfee01ad1f54f9f178c2a1dff0035771dbbae1f80c1f74d04a4671f3dfbb5f9c67b49dd1e47bca12dec29bd5eab48f8f0178415ba6c79ccc0926075238d96330f477bdd78b4db2df3f9226dd947e0a804735bbe8d3f98d2f35ef9f57ae1923cf3a8f4d7b4b97eb924c79f0817dfdbdfd543f34673cc414e1f41e8ba03420f94b461b57ae82aa5836fa009fddcd3be4ac727895da4e9a4adf4b3341b9fb6f256e2d35d6e6d76d76966376dd75d99bc89003bbe9de08cd2ed5c8057873183f6ea15dbca8ac36e6d67c56117daa91db0bfbab1f3ee1def883f7cf87b47d34b3faf77f6f2f4eb4d02cc7bdd789d5d2ed3747969ba4acf364cb6df0f59a8c2207dfa6a9ced71cc30a8b4362e57a215e183a5d16e1dc1ebdbab97b36e1840f9d3016ecc80741eced67b1c6db6e272e5909d745c76323bcf9fcccea3ed64dc939dcb39e7256903c6937c75c05e73ed18e310c6113bcee3ed35fac6184d29af7bddb339a769efd5ddb82c2db6f5946ecb3177ffc829413c12c1e78da0123f671fd1ce4bc1df703eb711b5ceaf60ba8f8f8f8f8fcf6d04e97df31b94b4fa75583d61ae0cbbd5da81e7ba95f936a21de6d95d36988de7ca5f612396a516a83b99a78ecafc4cd3ea41cbac8f6d443bafa7c77d7efc070411f0ad04ec2d20b1c37e962346580360cee33b2e8bf98e9f32180c16bb79e360ee418f68e7f938b622e01bf63f2724fdcfcfcf4f9b4b4ca27b2de1df9f1f144c2998a6384d05c1c10289dad0fab911a96050156368a244845413198a523a4855cd50947252c5432dc14aea89955a948202c44a9522a678eb2dc840df8fa89f3e16a5e03cfd02239ce7e9249820f2a79b604e11a5252318dac481b13b3d77ae7dfce9699a3ffda7699dfbf1d385cef3c3e920ce1268fe3cfd2c2a41e7d18cda36b70727cbb08414a174d883f1f3731bd37c02adce2426a163fe3ccf73e8a5e40d8ada9f2a5507c79fe7791ae5f184b7e7799e33a0909a01cb5fa81fdd0767d0ac81e1848a19391a8871f088dd6e3f21463a65827ae3d6e8e31212201e83778787b61efb3c26e20b601f017b0742400299c718888138fd00c2032f5b1efb07a60f634fbb3cc6279aff3c4f5edef0e7d9e58c882ae5c50707e35b9f54171a7f6f116fa149317ebc30e3c48d89362b9433ae70f151c42a21853585661b2343898a1f5451707a3c8fe63b16479a51546a0b942a292e35d0cfe9792fc6185fa5f0d6afb55753de464992d2b265055d62422acb9a9b35fa065cea1f4048f1f87dea1f74aee753bf40e7aea73e429a9e4569ea39f514cca769ea0e483d298d067756a64b6f77c7bcedf0562a2985b7fe1a5f381509f3ab58d6ea6cd3967ba35c5d0b349c88a07183c30d1c1ef846908b948edf5fffb9523b4efcf554775e4cc385b7298aa57244fdcdc4f1450a73a65019a2e54c96db49b74999297f51b44590aa459bb7542e9a9ca84e284101433857b5d6fe62bc456f189fe78a3a542ca668096af0d7694254465dfe42c1598c8b51a856f87801e48c0fdf18ad30bd4348a452a64c151986543a9e87cb3589d54dc72ba3e95a9e6a440953153951a930114b2fd365b277ce1ca7345729c0cce81c358090475238a2c4c910090bda456378b4f6de7b8d50115e3142384337357e55280c7f82bcc5d616e9f1775804cad0080b04f85d343ca214e52812cc92f4ebb911e55c610a0b700702a6805703f09122840f210b356240585ac831630a0cc41970f8586bad8d236f6d0f2802f4d04aadb5d6cef00c20178fc45eafd7c28876c23975185de9c8aa533ace0c77bc2055a776cc79251559255d69984a92610a0f276f35bc9de251e6ab70aa470b415916b516c984ef8a0552092c16476ebc6aa090c384871c40b4a0d65a8bf179e278f34bda22642409aa81ef8694b716870b6f87f5c3098508a9095254b6a1e3afbfee940d3a7f69b55b03068c31a651e54a0d207ffd75a79050fca591586242850b135c804f62da46cdc53dada6ccf0e1c3e742132e8de4011e44ab23252554b9aa31bbf7de19bebf17e319c0b733ac7c38a7689800e5168d76867a05cb948b2139cd474e7a68a5404284852f34cc6ba304c6181b7d696a91c4414e8392c4415904b9189dc0534f23264630a47b558879ebd75abbe28793a91532e45c86229df01745511c8992c248448a2108137a5ba64cd832558404caa94294db210acac95598a91e54763c9ff13c9c4f0d302518b93aa1c296a9136d862a8a1703d0b23a93886a71008485f7bcf762dc7b9a2ad1624389201a4a40096142c570ca44140e2e6a2190460c518895376d8ada171bb19ab7a8b553bda3bfb928e7c71523415440d1e349cb9031f9b2e4e685265688e8801101820506151f3440eb8fbfe8c5f706f9f17618c4cd5bffb143214ade6219e2e3321c0267cb70898a0b7d7c7c7c7c43ebeecec747e893b34f9562def3c6b823c990d950c64555192c3de9f84b8192647e540590f285ce8d1372acb0a455b0d65a6bb3a4705969fefacfd498e15f4f698e47195926a06ebaa4470c6baa8819860080b53052a15418ab18a000804e962254d400c1123e498176e3cb971958a6beb02102834215305959c23001a13b809326366978c89151d4319e87fbb9f75e8c6fdd32870b98b75aa6b09abccbefad6f98ea12e7adec6d3de1ca94972c0d50241e5ba8fcbd9e5fe90f4dd7537110afcc506921f2d75f776acb097fa39686502c74f820d201731bc6bdf73a1df98b31c6b7b8e56dd6db2b516fb17a743085a50b98a92c5052a6ae6450998090354b3e865873921a85d7f8a332b4d242ca94152e528a413c60fc001e2adc5c31416403e7c5cb068b2a49c5a92a73781080adef5c8b1e29f94ba50c0230da421334415f150c45aa6a145c43ca1415151ea3b219a072bcf1d2a372e308c5e713a2157a9e5662ac3532af111918638cf5b74e59fd0841ab5454ce286121cbb0468a3e81676c42bad74e4d81f1d8c9454faca5266aaeb068117a7902801f616404f1913192c4456aa305f4c458c5df7bef940a167fef9414227fb5108b16882df0daaa0c30aec080c38a1537655ab8eebd4c5e0051a9989c99f224ac03b58486d1219e7b9bfc5da2354678854a930b45a714559caeae40c085a296365556e821431bfddc7b8da0f9abc445152a25603c2c79c1c58415a20c314a41a68e8adb2c2e12292355628e0c31c0913044242f002179923b8100aa2449a2087f5e80d1468ac798157ebde2a984bf17cab54c66a28a08a12a02870a0ac400b3e8a0c102c7aa4eeddc7b9350fda57a21eb6d162a224cb2dc40a96050c2a26232c2b23a13280030696acc88d20288928acac44a1008542a8b292f07cfa2d3282f0dd9f4781c25884768c94083468ca3227034c8f5de2275fee251cd51076a9a6059c32383e11a2b29c0e0d6ddea493251c546cc10a948d1f336f81958661ea7247e8c319303c8130e374f744c2768bca1a2a1e5c6479be0832b5ac6ea52e558e2e1a61d409a810e922e67844f296258488a62aa5f0c7faf6035561c36687c408c8c7c39c34b7dec912d6f53a4804595c28d8862f5623494f1d463478b3150b2bbe408e3159cc674c0a8c5d6fa586b2d6a31150aa39a093c920418042a9d7638633854e341abd7eb9930064d9ba317ea8479711bc59dfa0b542a41f4ab328c7af3aa52268a43292c0b00f166300521490c5d6260b561e2d22760b7b20802814a1845c1c110cac85fff09760ed726319450b29293d57bd225bc4c229020d0245add590425756d59b3978b5657a9845c8e7abbd15d5956575d2e24fd5465d5ba977074d755eb807a2e30ae13adabae5ee7fa47cf585657774a4948317e741911d39c251c3e4d310030982df0c8636c393429064db85061469836716f43a00f007d34f6e4efe101fc9e9e1ec7d99e5b4f8fcb2022890854921c0f3a12bbdc833f20b4f2d18832630b9d5d09f49e6672f73c77940005b56368809ae631644e70f12d818122c609ddeb89ba02958e3a8aa040e9b0d2015f22172ee00c619a53c29a3a172f49732f6ab5c11d83bd5e8fc5bd17bdf75e8c5e1b3cde4ad930f3d656281b6ea66e28718283c55beff021ca5bdf008408281c72de3e81fa4d41e5885185c52d1ecf3c9ef2a0cfc3e3b89187c79948e1f1d65acb53641d8742618c318a4631e16f142d7f83fed2a2c0f9eb429d2b80a32f2447304633943a56881aa463ca25446e50b23cbea6921cf7decb048a52171d26c83065868d933633c0aa13d53886189fc8d160055784cce83529ca99810e4e02859f58d980854e4046902162aae808d9cc29e61a8563e8419f2793194e3c76ba35ad6852305992a2c9c5093f394c625214a5a345001715e1a368c790ab2d4b4864e85932037aef9c14de030a93396ea030a1f304847598892223eb480b6796e214a971bb75a0c87902c209531c8c51198a9e3091a10a077cd1a117b6f7de6b514b46038a49bc78b28465c21c21c2de967947145bcb244e93bfc3e18f397155d2e43c6171d2d1477f838021119c58198205cad21316383d486498c0c1612518bc29ee4d539cd95255558292152c5c0e77003df7d230fa8b31c6e94551a3346ffdd616433278a8165ea440b958c2f201a7504536294099095267cd9ba4a62e5fbc84f9d2c38c1b59545186b40313c5a35edb88c7634f510e305071c3c51016b6864cb529a36e9c484f14b398f2d7efbda3cfea4ce0b8e3b97343bfe3a99cdff19fcea5bfb3b3b343e600361020550583b7f6ee78d1065fa4cc910cd04c56243ece138dd2017454076b494a9326747c6cc81cbc7a7bdece220b1555a31c7b3d33074dd3f4114cef40084808a2e34d3781b90167754decf57a29ec4cff6075249458a122c3d58b21327eeccc356fba07566f9aa6d3cc22427404af6cb161a3b4333d77eef5a6a771def49fced1de3c8b4e2e7fef5dcac1b183ee5dcf565777c3e00bd89ad4e8faf51fdf51d393ad476f6307ddfbf3c6cb55ffc2375e7a6bdef2b60e7d8c998224014316e24c19b65055891569a785f40800b6c4864a6c9e60d0e0d6e18fac6a35740149b502a33804520605fe685e2d368cb2a208092303500d0a854de2bda76916abcc114cd9914426c998233cb478747797a4c5cd2c8620cbe5729d2e978f605d2ed7d30b4aef3adfe572b91ce7f20f2e07d1b9a177b9075ddee51f742ebf8be672797679dae35dfed3b99e772d8d79cc04634c249e49c0d3120bbab70618c2f49783bf17831f90614ac4c0413282c5a3c6ae7d27ab731dc3b7ef6c75ae1675ae1ec5487d4ddf9e2275ce7efbce959ab351a2ec5c7dfb4ed58e55b186f8f9b645decef0db777a56b782291d2bb0d99243a5b46bdf29ea5c87f9f61d5fe72ab07335b8b4c344e4db7790a0716ace16b14550d44ce77cbc1d45b76a089f6f47d19fd5891802a1aef410f203eeda5160e71accb7a341ab2301e3cd0c2f2792e07409eeda51a6cef5976f47855657c99890f2e54c9d36549076ede8b073ed856855ec5c3b7a85cea8399b23078af4eda8111a03f5d5103ddf8ef6acceb6458b86c5acce552d1f6d3a07dbf2012b52735685550143f2ed3025d852e7986a089e6f7b04037efb0bcbeaea13253f56d8f2038510ac5dfb2bab73dde5db5f5bf5cc14b089cf4b535471d70e2bea5c631dc580f96c7c3b0ca973576aaed5a8795d7dfbabaa86105a5d6f6d0dbffdd5b33a98d58a1d3288e0b081c2ae9bcbb7bf8eac8e8492551d15aed47cf962c2aefde5eb5c6ff9f6d7cfea9ec90992184ea8704ab26b7f013bd75a824b2fa6ceb5bf909c716aaefb9cf3eda799b3cdb95543ec7cfb896575dd7efeac8e84101e4d4f525cc6906961d77e023bd75775d8b94ab42a76aefdbceadcf9b96e6afab1fd34f2d510e8770f87a6d0ea5e328c64c9a01a13e6c9aedd1c76aeb37cbb59c4b23a0ca4a80247061c3f5f985dbb99d5b9c6a2d5a673b0ad399d2b52736dc48889e4db4d257389a986807dbb89d43ad3d71c463329cbb5651e657dbb19a375e9aedd75a5e63a47e770b95c56c51a4268750d040e8b7c9dabc0ced5e0928ba973ed2e249deb895373ada255cc31d3b91eadad1ae2fceea3a3fcb3ba34eba98a88982c433abbee2bdf2ec0e2140356971259a6ecda3353e7baf8cd8218475ba4a469c1c6c5ae3d0f3bd7568856c5ceb5e7ac464dce469de3f1f69c7d3584f93d6e6dd52d482caa806b56a408b36b2f879deb2adf5e12ad2e04232a56a0fc882334b26b2f8b9d6b2adfeea3448e24ad365a7e599d6b2b2d286db6a0cc298bd4dc78e54a89e4db4ba572a964aa215c563762758ee9489930533c843cd9754f7905a0596af2e3c69a3745bb7672ab732de5dbcb9ed5914082412bcd9826532b30d9b597459deb2847314adff0db4b24f24acd8d4d4de4d5b79355a455e76a0d91bfc721390476ae0697482625df669c9a1b7df898f39d77edb8cd180cb66360372005a5a32a2eb0b0e6cbae9bf85d8956edf8aa73336a6e7c31bec048df8e8d3ab7e3edf808fb6a08f27bf4e1eb254a0c25c4600184ccae1bcab7df2209251f2a848103470618c35dfbcdea5c3fd16ad33953e9dbfcf65ba4e6541047a973a6b7df20ceea5cad473dddf3ed812e3fb6dbaaceb9bcdd12ef77087a032904b132d262899025bb76f24d0213c24c790346c6139b5d577d83e0474778824d16283176ed16d8b96e125cb24c9d6bb7483a97e3d4dc03ead41c339d83698940e286140b463ba4d49091b16b6f60e79aea3b0443a4a4b0d142131a1fbbf666ea5c4ffd881f6054b86111650e8e5d0f89564516dfe5b7f78c9ad34003a46f6fa3cebdbcbd8fdadb978bd03cc920b2300316245976dd5255ab4d6d628289ef2235075471a30321c9298d415b438cdfb63d033537561c92ef7e374931c377477d3b1a39567c256e787153b40b41e71a8a04127189471250858ddeae5d0222b48f5043d4e6a0853a3ea0881cd5d8b2eb271238e6c8d17a02d324c3965d3bad73cde4dbddea3ab872c6a742081a265676edf4ed1f3600d13911e6d6ec361b9acd349078414e5147951b65981c697a5ecae48786186b0410a585143e868879f362c7cbc2e7a5b1b1480a2121578c0c83c6d76a9e61b0f99abf9a6240f91a0d96c60d9b172d0ca9a82cf9a91d0909a130e36b7e6b4d28b8f95a5af3065fbcb2aacd6af1856a330f084f2059c1e38a0dac1d2f55f23c9aa75792866ab57e8124a2361b9a2d49721312123ac1cdd7fcd69a8e9c7ccd5f429568369bcd3898cd6638c408090909dd9bbb240c5f8bf2352d5f6b3ac185af4909d58866b3d9025a5c09a95a630289c58ee73f4bf23c5c29547d06e6673ee4676da8569b1169d0e04247ac369bcd66af59cd67330731f33a1b1a67424d2e7a5fabd5cc11f5b108f514a07e01d43b807a083a377e79d449b07a1425a2c40da87f00e181d1a3281005a228eae99747d1a127ac192f94852a981712226e41f335bfb55aed890b93af4dd16a5886ad5f0fa8a557a58aed679efed084b4c0f9996f986d61f233efd039ff309bcd66684d5765456ed06c31d9e88204455114459af3a8d04da83654ab8de8103ac30e23348a73a850a07de479b447bd5a1d087ac080c30b94ad1e515023a80b45511445510d42e8108af6d355160c88459f905b6f9f25b235b73e66696d6d35bd057aeb63d16a60128ec39138e7ad8f56e3096babacb5d63b603d0424a879eb26b01b705657851f40ec786b8bac85b2c6c45beb271c182fc4c10b0909c119be90ff08396ddd782121212121212122d14d95aff9add56a9eeaf89affd4deb4f99a0b752ebfd76a40a09cd7e05783069f539b177e6868a8e65fab6dad412103a7354d8ffa0fea34178fba10eac426864751b348eb859fcd66fe4ae3fc6ce6a4a6c8cf1c3577288a5aa1b4049d1244aeb0e0b4a3086cc4e1ab09114d22d12a6b6127ad158fa2a8908fd65a1236a0ae60c028d344468c1dcf9be979b8121d675142b56ce6e6d90c8d9a47fd3aa5717a340d0af2f4cd07f97c5050102da8ca5a2a2cbcb541251ea38a70fcac369b459970c60044b42406cd6a905543b4aa592873aed4ca599319560405d55cf8d9106c06865844d11a1414a49ff5fc6c36e380033086d4695ae1850e160c3480697e369ba1a8901921193a72b0ba5025d9f19cc8f370e6acd6940411895642b5da13243f3bc0cf6635ab81244c883e15e8cc91b3e3e5179e97bad029b59b599c413df16d20168140202020202020202038404041404135a0a05a505010105010105050101050501050d0871ca479eedcf9b4a838273c8d46731ccd699d439de642348fda02f3b6e648392db6ac7914a5e5202f4700868c144e70b3b505cb120a6a40910ace60c385d190149dbdf016e866064d2050c9fa10ce666cc23c8aa2160d3a41180df9e10211cb0f8b90e7e1685680822a10d0b8e359a04ca32d09c0cf4615252c7dc95251a6878f1335223eb942676a051382003941d1ac24e5e53f8b1a379e47a751153efde81508880d8d9f61f0b3d94c840936a86815a5aa92823e48ca38cdcf99cd0c9ac099f34ca0d20cc8ae491a40d49a2755b319d059a7d0803e6c6dc96432994c2693c96432994c2693c966b2196d36a3c96432194de6333f6533998c26a3c9663400c88068b319108d2693c968b2d98c2693c98064b419108d2693c964b3994c2693cd6632998c26a3cd642611ebc7582ce6381bf30f203cd0fa987fd039d8c762b158cc53a68fc56231af4c44d479d47f5027278fba101ac5e4c6a33814867009126ba396d0792b1426b16a7a21809809346166916821009da1e859a73c1a6234f26366e4c9ea88efad94a823648a51489c0a109b8121260929f6a45019d3407c6237804ab39b91151e341ae3517151220e94194fd2ec78eec2f370b32b25945634003a8b1d31a184cea28a18f9184a1b4263b3196e26b071238ac6f9181ae3e0888c2a00089e4c57412050298a898706333486a2288aa2288aa2b1a817c0bcd5711545640600e4888241ce0086c39fed38a5a15253e263b1183a8bf53039a2d25a7ad404cac8a0ee8c0d1b51c214be133f7eac0c08b391d65d2e3e948c2c0c5a580183261195c566327476cd7400a348245acd6e50868a2d488ae291628d0eaa27ad84ce64b16b668890d599c098cb501a07332fb1588c76bfccbc76791445514f4b3cea3f68138baa473d86da8cc69454415de6276a3383329b09449d670295d0173e168ba16e39b0d6da99ac69050e19ceb23a93c8cb55982d5a9dbed48925b1791445cda231ab9893310987523264fcf5d16a1c4ff858341e8dbef1d794820b8cd0811090b0f597e7afeffa36e0ec07101ea4a0e3af7fb075b7ee8d11a5e1afd36e2a48f9d96c36c33f9b11a55450f1b22cfb79990c289582f063b1580ce863319f0f8c021e45631429a0cf5cad378b8a64276231d9d5029414b9c950607a144579556881194f3f7a30fd3061a20599d4bd33994c0a851b4157863acd108bc95e9c79144571286ae38d2cf6a2070e5a9d4924e2e08fe33e80f0208a8ffff10f7e7e7e7e7e02a732a8b40bda4973162264230000201000b316000028100a0605837922877914333b140012659650625a481386c21ccc6118a68c418a184308010303224333db20008032b7768ca40293067ee7be08b5c69ab8e5b41656de253368f53d33c1b1157f2b8b552185f153abba4a5984213768f7ad618ecf95407e0e9e59b1056e0fcd10859fbf50b4b1326ffe9627a4b00f379e80adf918894bcc8caff58776dd18dd2bbc25e1b414ff0921983459af9c22e7172f3f89078ef640e3b59a4c9114e8b505f2cfd2d2db444130c1f5440de323f4b91a588548a43226cba31056f782447fd5048abd0ddc7c80484c590a15105532532dd03982ec74b5f1764a395b1e7dc742a80bd0180bab9e5f8c6e4193777790d0b0644b1c9abc298d12e70a859532e0ee9a810a0d8e1f7c6c68e23f8f810f2dd03eb4206af1e53c6a1d9037a288f2b8e2af821264b217c0d8879cff8e9f286e4d69bd61503aa6ad73f5a245eab3a626e3d881309b671bf4c3fc4bd1b325eba75100667423dd920277f5f55b4582f15e62de89e8f7c683025d4c60d1fc443e196d682376c47acb0a097c6e30b9c191b20b3b8b663c217281c5b7c6c51cf62670bab6afc38e4367bef2a39da17ca26d20843ac9b30c7ef5883f17550d5f86d68b0903e0722fb7b687362e3948e820eb83c0739b1fde198aae2ceb667ca837d08925efbec0ef33eaef7b314d5ad0b18a99234c3f28d7ac05c921129db4d06154dd8f8b5116bd7d7361921d5cabe981a8e97cef501b59a6e5810682c32244ce4259cf540a2a4e7751ec7638e25741328a36b384c51b43011c88fcd64bbf193acb11ac447e64f6e870d0c2523a05196b86b3d4859bcab361766c161a8e5299e78f99f8fa084709efb160f4d823a18bef9d4c9ff4c7016d21a4612429f83aa5909d9de4f17a5d7bb2a5db96b6d72ccd34f88900a1c50b5d9904501a1bd08f3918d028ee13b34c50c16d03b09a5984b77394397a6f506ae0508f08f54f76bf38f0960039cae81604fa012fc2fab8d1ddb5a532d062ddb4b88ef576b3430b9120c44e596c3fafa13e937fb731ddf543e0561da260f59d60be456badd044cdb2d6d6c83b8e41bfcb88a17fa067039a2ba532705a1c1b8d7ca2c5ef6f51c1001cc1d549a0a91986e08bd9d91b59a2f9707ab419a31fa69225ce92f4a969497d995ee4383a2c69fa4bd45dbb473acdf5c2d824e854a7f215a700c19ec1a2d1fb99d3b59edac1f6fb6fd806216589f70d26dcaa97b78837a1b4dab21bc3daa49ec1278b05754bc54232b4c937465ccf8017b38559829bdeac9321dfbb7bd9ec578488c46838ce17ebad31c54a9f31bc392a19610b20193e98aff6e8f22c001ba3d757c11caa702067e4cd6786b9693a3381bbb9c029c27ec63e8ad3a6b3f7366716276ec28c132744787ebe9eae322664ca3678565cea509a4a4643d68b606294359bf39fbe3c44141272568f0c446c032d958d1d598ad3863c88c1f244b428ab91fdf66d58a0cfb78c5adf580aa1a00cd27663c4cf351a154b950d7086b9ecdf83a277da2022e4c7e5df9c499d90ff100242ba4732fa3d10930432210aa03480fa6b7e28633707a5ee081ff11b2dea9018dc92d96f3f1e32c48f17588bddb93f10670b5b72e50250d630cc07f2a3d808c4d209a3f18ee63516a2122daa10491f7e55f0087c52c634758a2de09e2035ec2acde899aa385f1de0939e0000d5799438712d92118b14b877e525230f1e487c0798ce4b34514aadaac29549025dcb525730a62381174453abce145f9f269d10eb72f4d5cda80bb8f200c9bcd5507ca810e212f576ab96d7928a99511eac2e8ae3e18c0241f139bf616b447589995521e375340b1ecd5fb7e4a146e236cb12fd4bba8801023366b8addcb2c1287132c4f028179c0d00db0bada2c7232c6ca01ab99f7df36e57b64485ed7b153edf68209a5f47232370d5238628e740c6407bf6f08816f494af13a8ce961ecdb449a5bb55b84b005b93426c1f0e05cba90a5347fa248de011aa42efaa550b0c4425c8ee4c43d1b799461ac6b195c28c07052c8155e44067fbd3f764211fef2265d82297f6ec5e9885866b0376aec0dc7cf25f192c203df9d6253d233cbe842346617b682e6a3a058190a35667ea7fe67da678e531bbc690401e879a81c3e3598e3d48a787e3ba30f13b62c16415930a2eba2e2568605d5e6b2ebe839b13cc62237a966237abb5855dc1f423d66a915b0cd437637e8af47412b60d574e46241622adbbd647aef240345813cb055381ec868f2ce6b335d2862a08dea9413229e1b315a13c159e02d1084d6558e6863adf842e2ea36825ab64c617616f422fc56a73283ea6c9d21a88b86a488e65c3d534ee162ce47ccc1cf72646841b644de6935ad676b420478d3ca903190809a80e16b123eb0097a56fa2892f125d91c57be837d6b318cfc0a6ae6822df84a97fe23ba06bfb0720744b944c5804b4f846be898361010b445229e1998894eecbabefca0560ea062936e64ada2a55e299df83701de63a40c8ab5634d26ff9a4e47230c955db234276efca1033ec5d156ed61cd23230f848519632aa675e7cc9d384cd1cb0219869d7b0a859a9e55b747404c4a86cf062965e2ea913afb11633a4d68cdd2bc86ded0aab1ba2c76a0a4d7913efc5da103df876e9e4be39381f714d6d8a0bc10114bd21ecc8bba1daf91943f47f5d4c6b3f0b94bd26cde2368ad4d0625d28249f6e6e01aa4a330ac643e52f8d8217a7d1377481c4315abbb4986ca9fd4431216316a9c09712673b93a03a37c119c53f8676191fb372f33bd9f4208a241597526921237017618d957d9ed06f11fc0a6dbc08fd06a2e4ca6b886aaaec9980174cf48ac553ba9ba72c402fecbbf0c3cf42bbf1ead751cdab891520f4e8d3e23ef03940aae4358caa6c8f409e64ce861e1d95867f68eb8b9ed05393787c55f94a53a2f12fc9c10880d699479e824a51cd3ecbb8d31deb28658614a67fa104e8efc16395542e4af17d4ec2532c8419a7a26ee1aa5c809f8a4bc4dafa613afec55a78a489f356e2597a02b49129832633d23e41cb8fe481f8b34619753577ed5388fc8b8d078ebf04264632c782040315d2fb94934270a8b76a7ecf3facf5a366dd20aa3cdcfbf1cd474be262c6821dbaa1984ea66c22b76a4b17aa7d9d1c16a0f720d6c6a90a544292e383b59cd6452c0d7947e13873edd8cf2344cb0ef88f0d28b0d533c6a4127a620d870e13fb81ee76ba3735169675f4b3183a8eba01cbd5ffe3c4d23510faf6723d460416b0b5391b48cc0235fbbd7777ce5b6da91ed4d0de6149e5afd80e20fd53a0c51a7654947dbdb39e2da5152fe07ad15bf7a4109f2977b518a395f23481d82bf88d7a91c5ea30a094320041b89570ca8baa48519db63b1a88f2472d93b497b26171ba6e2dc10e0837b73120493d5ae8b908017867a192a883732d597d63caa529fc1a7e0964e4bb78e0631116d331b05a9e17af8b3d24c3e1a8999f4cdd9688b259205c7ad8cde142da13f1bf7b2ad38daf6e9b89a8ed3d7e8cc3bf38890514dd9746e31e0067ce9fc3dcf85fa4e054d43db972db3b7175fceaefc535cfa19fe5ed615b2e60b3c9676be640bc94bd7abd8bd455229b391ccf31a013f35d092d5831cc639c22936816a46648ccd165758305954015127eef48cf08c775bad227e697de7d6f798feba4a958b2c063ba14ed02f5e9dee3818c9fe4e107478352f7fed185acee1d76e1d428970060ab66a2975ca326142e45196256149dc1602b6ad6c5229f715cc65d58a9a591edcf0bd7fe9a77bf0e1ce769687469c86659812a1d13efb9b179f7b8fbd8905b21c5adfb4961ed081d7ba3c83e4dad4719b675b7b6124326b79309b37e8f0d8d0e6ce47fb8f64156e457ba85aa42102b08bfca87a5774db7a2df0156477368d4cc3a5baf95364592d018dfa86f38203623251ff1738bd6cd9b626bc26837da98416c6cd8d7e3a6db082e164c438f2f0eb945c0fccf4a05a4227f06c58109aaf8e2ce441bfa412a4e1da2396d7332416372eaf33a4609298a8718e4965876b1cbebfbd5b5bc53305e4cd2c9eaf20ec72363b2557c5e24e6c0ccb19807aff781f264fbb0a9ea8c525d0e116fd19b84a403e63fcc6a0d9c99bde5cadd107266036c9ef65a569f4e3cfa4899a885429c40cf1d513d9f80fd1e3f7c630b70a9b1f27a4b3e4813d5302c2becc4520632df599a1e9cd3999479c2420d46bd64eb53ed0ecc8d8c8c42876bb78038ade08bbfe0224fc52e423c335c1f3494fd4cc5becbc6ae24d6f1329be4b45c207ed3718358d03047a68eb772af6502c9cf002e890c8b473a5db3ebfda28f26f59faa2e64fec3f6b8a062c36d3f1e1e70863c9349986c208f05e1025212467b3c2bd9d57adbed0004c31b65a660263e76633916cf4667eb1209334b875106302731e244b5079b8358721ee128e2c88c50f721c064ebb8dc50f9805201806524329e4d149cab9c5cb29b8ad9d90724118944f07e7b105594e81217098a8389daf4e5f072f21f0e2f6e5858b43017cc03ea17696a34e94abb241fd58d787740f65de9748b8698dfd8b210226979060cfc6f5795f163f1b58e3a6a4929805fca4d8d2308138fc72e4a1c754877ddca18d291f28fdf7faf3c4a722b479af280ebb275b43a8f4d2038086f3a056ac76b0d1558d1db6f6cbe6fe7d1e779ec81cf544c99ab2aa760bd9a55813765d7f2dcd98ca9a57dc6309cd61059d7165287dcba32f49c2670ae1a90476b29d96e42e63d88b57860eb862bce1d2ce868c9b3f5eded1c09c57f86f06b4031ed93cb158b55b7f5e6297b4e3c6ea382ad269a09f8ba395ca042d978eec4c40697b133b97f3df13e085ebe3fabe00e584e1d4fe942dac4cdbc34413a689f3a302270a08bd171544173163c8ddc99b637f6279a7cf3e6763ca2403a9c614c9c5c582aeeddf87d6caacbb09fa826110ca6578f970514d36441dfaa6c025d6c4659f75afef2a19a31f2d2615c1fa5eeb32e4774f5d7fb0088604244cf63bf72fe8357cd5ee3d40c94477cc23600d128e452ac1629bc4353fc9e98d87e5305cb59596178c11bf45f64dc420441ee45b9a10c25a00eb5bf613d9d67131c33e743dbff319ea632e2c5e0199241cd82eeb98c6c85e2ebafc5807f3ee233119f988c7811eb4cba70d5c99ba1efc0ec65e8ba43f794bf215af33c539bb019110c6146248bde22cda3dd3f301d6a32ed7dc1641213e8e14f25a7d0ce45d6287910f3eb4731537ef812880f96c1518a8803a35dc3c8c584ab583391122847be6fd9726805ddbc1fbf9891f200aaadf2963c5a48c989a9be3cece59e19a62a609d4b22567f980c063abbc34421c0ac8ca13c9de0928fde6a7b696b6fc98dc705a5b109c6b0339ac9a37a0d1c19bc8156808187ae4cd920239c28c21b90ff50b42d458086cc9c84231e355c13c9ca04972c9adb9b9d260d5a8f2efcf82a08222deb2f27568eb6981b8217a6e9335a07a65dd5b070bfe8289067ac9d39f69c9a6a40c9047f77c4f604326799fb22baa4e6681a519cfc007fc087297e35241aa88d3d6baa7d5f005382a62cd1c507430e47394ce304018eec860a5b46a4ea909709f3bc1b62dc5fa1afbb761d880e2294394196ef58b1d33338eed8c2b98a0758620e7ed402410c5aeb855d15dda13653e4c03bc3ae9bde155289f3111337ede3c561a2cf4389703a7fbaf5fce5998bbe24d7111a556e404fcfd13a565daf59978f8921991d9c2b8cf2b38d0e88be10c9cff3fd6af71a00668a04d2cd44122f8b28da489779f830de54661c53da3f3a7954149e099a230e3f6d005a1c9b84c30ddf669486ceb036d64b8974660d5d6bf3dc8e1f4516a8d5cf1d58902c10fd06415a837dfd94bb478e161444aea35241b42f88fa551c0b30e3323406d4c2f3cfb6285d5618572a3bdae233ab8f0dcc7a4044a9ef7f251bc41e0b42650f4ac56450111058c2177ae465fccc75301042708f13911ef5d230e712adb299a410bc868b03853ddd91b47f640e6243460db545a2fc2bac89e19d442dfb6c69c03c21d2ec7ef3ebc2c1f1818b7a354c564d756bd8cc8bea3beadb32b29b146f09f89b8299ebd978fdc9d3c2308164517fa4174d4d07115b047aef3b8a7553c124982fce215ae22a62ce15643b0305f289f564029ea43fc42d05beb4b8148796273be4c638df0406fa48782cb6a9a62d62e2d875d10fb1a519fb14a88afe16f80ff4924d527686714470c6e5044bf48f87d9fd82645eea359637f9500dbfc0d9ebce2658d3bb8131f7ad74108c85e8cb5660edf847968dac34c307633efd1d38d4b200cd80b47e1902e06fbc85dd208b73cf4544aaa9a745cf116d071a6a7d35968183bcf988794e61968bee013ae75a913c0a4a3e4033b6506858622a16d837aed432c68a4cec268f76f0d2da9fc59cd5b640f683d1591c3cbf360fcd37877e2347234fb93b2efbe9379cffcccd624118e0fb10a1fa13839909786e5afacd74d270dd4288a04e6098ba699fc71d989c18322be1a290a0df44f192defc53c1deba24d66fc10ec9a5ce7786421652152663d69f08ba9b25cf0ea9bb18fe0325e2da6b4eb09379b299e2622e3ea858bd6c7b0c87c946684f35be0a5b90902660ee8673180a1ca9215e1c541c10a217d99ac9303cb9583f502eba130064c59121e802dc9a3ba14fead36f7aeb02ed5950b31f49e9fe966b1259cb88467ee3d824d7254110a883e82118e4b2b245a071f89870f42586589494b51803d7e8e57691b7e07fd441db30118421b7347efadf599153f7fa293bca18d7a933e14444251463515e8dbda47edb5450ca51e199e8bba4c71b6b9809329f4528f7a553d6ffe74e629938d5ec072ac4ba8671c7964975348eab88b2cf71ee0c26c1000d5af4fe0750d8409889cf4314230ada41ba759c8371c126691f22d55ff2a8abb51160d81f3e4fd8d2f805eb2d3a71b4fe41ded6914b6be83471865b6180aacf59eeb0d7f7897c9eae3a3b0efc7fff1d15804b4e0dd931934b238e5bb2d8f2d661a0e04d6582e6a78ababba14a85b45358f9b1e9fb00dfb29aeab251c79fb9cca4c9d53f93c764ec86335fff394d8dab0efb756e32edd9260c46cafdede7618a7601da1bf46b005321fc9c48147882f76fa36769d2f80e891ebf7de052f81f98c2c64751cead751acadca417cdfef73c7b63612a9e1defc7877c3fb7980e7f227dd4761fc053041af6ada0c26a75b143820a99ef8d2934d721dedcca5e74c269c64fdd3712862474dca98e39bbabe1f4a32189a78cf6c9cdbcff07b252ef0611b665986bc8ee62257c5cd1fb849c09080b63e02f2d5be1ccbe6c87e360b9e830e6da9252686341a8d477f9ffe947c678115ea28a650c190e12c9ab6558687fa667623d162d3308b80dfd123d50b193e53fd11d99ee817c1173deabed2c0d4cbd85d6fefc49e73b88d84d7a5d66ea55d51fee60442a03959c64695d26d2cc2e6379ff7c016f6b237d47e1886f60220a0cf8c6435d596c75b921bf15ecf2c85139a20e8cc71a8b1bc9e5d82cbf26813135b6ea409eb13662c76c4e88d1d15cb7beb844c60f76828f26e62c7512bccb6b2ff2a3ac9177f1415c27decc965f46760ea12b8c15021801a856e20569423f1238bccb4578a72ca75d3f627ea46408d317809ab7bbb9482061b1073fa778a88c94dbcbdbcb3e75edeca882445e7e240468ffc0a8781ece6cdd2da9d9d09d9097cbf060db3c2c50fc81cd13bf99c791de784a40f9c8ab2a473cbe2d70e466b974454360d68060bba97e5182642868a726596831f162ad2f0eb8267f76774322a78f797f17ab580b02f126900513e3f0dc14f7f61c02dcd2a0b25141d5c8f2a70ab73b5963c074d99472405b89246cdb62a6481cc9ea54f0172a9a4ebe518b592c9cb930c28294af589cc0a4c141a76bbdb46371cf47ca9cc399176a80bda2324e6166bf2bc7c44d69f1dee080f251d1177425c414db435a4631f5e52449e73ee6c4fea0e4f70e423538f4bf8caa5786eca43438d9637b7f94400a91dba23b19e7a628ab5d15baa4a36823fee3da21177caead8a629295e9bbe975b11f3cac825ef932d1d7504d4df9d1c0d4d4bc7720aefa12e41e4f667c53b40e15036d3cabc607c8793b6ee31c512f1709088ec9adb0410eabf02152f18891a0f4e7d6a0e9f2f752d0a3d69bf3cfed7e1735b5993ea6629d147e9f3adda149f671a3f79e30d422936860180c23cfa0cb88528409abb7a5fdbcb0ce5fc85c8f08d5832104717ce0e3011654ac1d8c23b6483d01a6d0cf3a90cf73bf8e88c9c060503c271e3d6cdd586f4b5a2df2e7ba521cd69cfd0fe2102c844bafafa489c1fb74cdc4b2eb77b713a5107cb1ef3d03ea7dc90c2f456b2b40877670bd09532e2913aa002cca5ac503240c14fb08c8528c9ba62c682a558a960ac6a93123d609780e329c49975fc0a3fa9b58481e53cd4805092a33b90054f1281baf175c7a6d3cfe742bff0a0e064eaa8d92abbea72b2a812ff708f3b4cf369d6e344a3d5274a88fbcb933ee2b871074a4952fc4915b97819df0a006673448b272f087534ff1753ea83518b1705dcedd52e560b71faecce685651839131ccedeb90764c159d0f01e6477ac42735ff001918a7ae6a8d889911b5350557febf7d1bd0481c4d4810a3e563a7f7d972c6aca9b8772334d222464d0d5c36e1ba6efb53145c26a7dd96cc2e36efefff514992272eaa92329bb3a4168b8cf294d562ac2254e9cbeea35b5a5bbb436422d5f32b0423c9b093f0300780a5ab226a203c380e36624c00740b6a8aee44028c9b402521ed5a11bcbda75c3419b9f8577090139a295153ea84be60e5ef7f4d32a21f3ac513090245f7c1ef7cd01625fa71f1d867c1ca41ac713951ede94c15d8b2f30761ced66c9b465b72053527c454b679180ea01ea1949faf8ced1b13ceab012655c05c5f8b6e656f58f560a86ecb3605c9c252c40c1507a6bfde2ae87633f0136f5fb50ad877c74de837d9b3eacfa8926d2417505ef18498f25b715f53a9c5420ff0dc0e684e8a32e882e49e28a3ab374d2a1a1059657bcb504f1db32b8543d5e07b57c5f45aeaa8e3079313c4985a1d0a73303c555b542c713a9167476611b7911a2d1100d1b3b6611002f6b5926699a817c173e00010ccad1e1732764cbfd6a20824f1ae4128418cc72761b48c57c9c8c7549428f5aa1dcf264a4afde107fcc814d14b25fcf3ef7b23409fa1b3f8714a0386d18406249e6a6d0ac6bc11c38252c6a9a26134e4f563ca9974a8634c91826b2c2d8c4a6030ca678065f134225a62432ad191c4c10bc76450f3e6af11387c2aff627405d6d733aa5879f9e309462a95722ef1f9534ed39e14c692ddb016a6db5212686efa4d357194cb16fc411f3d8fef15727c8753ee0c3b90b3c5c1da8811b5bc55de6b1f38d83ae801a3ba5d8a33034215deaf8c8ca969e41606b04ffd6049e4e5bcec87b407f7b17296e1a00d085ab7b9474bc8185dce544d6495a69c3ae4ca52c21aabd652369092ce0130c91b1f5ccc5c40b3b8c1c0c5783381cb83318e8a5fc8d014723f6313fd5218e31d857922d41c5dac1d90e3bce8c12205058fbb1f43268e3f80058e8e43a2fe660832668c8b7dd20ca71d2cd3341b03b8926b48a86662761d5b1924bbd123c1387307156f2b1b841bd712180886bb277c802f1baa2047a1d3e57d1ddb789c79fa611db4cea569a26a70568d23085724ea60b03ccafc35bd38e84d09f4084432bf4f2206edd7d1d58db6730fcc82d57e2d6a70374d4f96ce3d90cd3381808ea68e398c565471e0aea43fbfb3813e9c992acd371599d287099963052d3fe55746f247e4852495e88e91df3d46f108e2f1cdee07ca78fc98349e8697d34fd8d9828c4a5217da4c2f9367714cd6e36e9c5307378c842465389cc5b8272b926a5e198c8308acf0747e701da8ca04caad1ae1302b8f93cd535e0a338a71aa5c368e0d83e2626960366c2b6b64a8242bf5016658a030b6659247bd675a0c673f242d905ee9c4aa80052cba8345f8c77504d2f0e7e858140e142aff82018e852174f068ce9d4c2df9d14526d40f375907852edbfe2ecdf3f7c894a97755da362b8786c1c329bfab3dab98df07c19526fd6c67fa0149f9ca051c5006b079776caf8d435b66f2a1c1b815687d5431c9521115f7eea4222c026bc044461b371da704731b673f720c6e8db8c61a7fa96b2163d7f24b57e0a65e39f5043b01220f5d288f3bcf6599f4fb00d7525c7016b4d6880db322f4e00127c71d8ab242700392b2fe410b6fa66f242175e138a3ccac90420c2527b2c09ffa10d35485a491782a7efb6ebf912f89d4cdc1ad4711b248c44d91a3081c04cec41ea576f2820e512db31fa81251e26688a1c7c091884c1611e1374aa6fff8095b3342810abf4723172210139dae6f420d8cf7248fbad116bf7dba60c396f3ad76f859ddf78338543355b2aa5a4233cd90525b0c4925342c177e8101d99984c248090684ca8bc5a9a93cda14072f3307d04e7992dad97f5aae3861c01b43b4f3d48d10166a498213b7d0149d1a038f25982d270e851e51466a35e34f3ad41307d6824681c3f1e4ef5593f3d15a6330316b5f96fc76ee83101611c15e9f0a05d697d71c3237c5a56e46ff6f8e4ea7848a87853ca399948c137cfbb1a66c5969f1b83e701966c1006d1842b5c78847d31a14fb54cfe001c09e80a51c5c8b5354531aecc196e301de8fd7a97a202e1d2c361f359b5acd619d54e2afdcf4313edafc066a37adb9010e75e80d5ba40de489e978b94680b0ea8b01796a8f47e8cbb9c0caece231d25230f02b22a26e2f03f6ff8a5179a799c4314d1df19e57a1e06182c6fc2b1e49250ada9f6f597d7a812e08616f0c4dc2eba2250e39ad65db00746d755855e2bb47669f19d3dc774a1501f09173456fae2dcee8d4193ad19859a32d961eaca19ef827045b4a1b510838b16afd462bd58bca00962ef8f324f9d28be508104f42d6faf13d4a3c93d741318913bc4a5105ddeb4f9f5df51cf6067834182a95376074b2cf43c1e0fafa42229d35713d9f55509dae1e0534a56cb1f3d4f53451ffb07fdb29e534023622a242b0a5bead098ebb93f4e3244c46d7df491884426567fb975978214747c02e6bcce875861f27adc7a54c6c4defb059546719965a22627f3cb1ea4dd402eaa551832ea5d2cf358d3817165423c3bc7cd01f50ea09d433228dae5fb96550189330c2bf6a501c59785874cb4bfba79dc40ff497a07eb2fc8728944582031bbccee2f2cd27cdec74cf5c30e46a08a65449ca801a8b3a1a8ab81651513c5c0947df82f7fe5ea0932d4b5d20a560ec7d58b4f90376c9a85e3d97987ef97c44f4eb6d52b72014728e0dc53480da02c0ff7fe00a4b7b1d848f75aeeed76b79389be595f54742a7b71a14de3d4dd820af4261196dd32f30cdc65ac869c1e036b1200bc61a68afe6da4a30be41f299b9b88c3623f280dcbfeebe511c06d845e5017080bbd61202f995cf726bbab37223b58197927e9e4a7d4a105b785dd4ebad44c1d5cade14477f478f584c9da47b453191d2be6f8c33571786ad9a75dc1deb78ca3b9da041315db3abe66abb95f611420c7238a7326e3d9ff9ff57c457f30b95aa6c6dcac62d9dd14b3d4aea655faf39ea2f631b9ddcf1ca3bb427ae65b6c53696d71d09b38ac50895a15e63058c9b2ca596a2ae911d82f04107d3785e2d2232e49cc57db2b31a38d6ee72032d47b767452de319912e22f2290e1e8715424989e81aef87329e9d3208cd1a2af323feec1853da8202662faf0643a73019f59fd06ee5a9d207acba9fb830ab11f6d028a83234a6fd0d2573000d53973872044ff48cf23c9ec1a302027aa856e09707f02e82407c00b2b2421c320db25df88abc6ae9811c02d5bf8313f76ef15854e9108609509177c33439de45409480a433efb9101a6bf08213349a7766101d0801ca619d7f54ea3051afb2a55368ad0592909aae612981546e82870b09f4160579c214be236c25356670e2abe8caf5cd1862ee6534b976f6f79fc1b329ecddd9cd1d74d7c374d5da358a3af9346531d51aaac8d55e2d9fa1ddd2d52bce2a6d8aa76692106883908ea3d653b6537c76accb0555240bb33719c5cdded6dfba8235612f84c3fd588a24edeab0634f8ea856d3404c9ac40eb8ea1692dd8aee92bd23092057d91dd535dd09e29b16a1aaf04ca59e814985f898cb8ed623d25c785543269ae945c70e60b12a01903f255a793023fa0e3620cb9dac5a6e81778094757b5a6fbea883a6847cf267ce56d31c7b332e4be79ea64de400409f7de484f1ebcecf954126d9365ff829cf97f372b69bdcff4d5ebb356a9db87525c1aa22ce0009bedcb3fe2835b00402385fb5733383ede6efe94a8017d471d097840176a660671d2293f73a0baa09d07dca9a261c263bf6249c014c46624d014e8bfb9985715dc52ce613400005ab0b621eda5325c983aec148ba70fefb44954beffdd201b9fd758c1bf67517c9b09c5dba6fff780788ca17559a2d524d1c9bcdc2943f09aa7f937d7010ab10243461062df560ecb680c9ab86fe70a5e2b6d6de7d104a5741dfdae17c848697c1395fe352c710f412c892f08039e9a83ec71727a15a700f993f7ca3e0a160efc4667762ada6d8a053e37c1ec8a6ca223dcbbcc6c04b914ee9879b1e859969e51866e992a3d40b2129c346fb60c3b85ad1c7f5e12506fe29052c9d4edf29a9a184a629e039fc57234941b68534733d5a45fac8e9a92a30a6168cdbd3624c3fe59d76e081d195b62ef971ed48aa83553f8371278a1a64ad4a02f0f19aaf5ea4a82b8335e3a38d4a728269343305e2a8e77fd1bd89bf89b000e3f383869b6f0496c81c52ed12784f6af1922ca01f34e01adc306b96193247716fae08200b14462c5db602738920307abed0bef0a7144785cdf47a7cff875bb5f08ddeb56e233658584f12053cc3abf1f43c97f0d33a5b2c16ca39a4daa2c04ccad2f6b4789886b6fe6b61cdd43e9da1343c241c5eea5af71451de0e64bead1c678522a62f74e94d0210d17f43c60b727578b35e4205c1791589a0d8b3029b1ce6578079efab340cc9612c28dd273e50cf0c5d2539b6c52388a6cd742f9f90b94bfc5f5cd056a6aad767e72c62725c0a113133c0e30d03a44cba3fa25c91819a42386a0e8be226cb054570383450d881c0fa41fb97f480d518f31f28aa38969c52ac40ba9a2fd38544c2220456d6a0f04144ed906840a4b60b40bff746689f523106c0aee9fa4f01e1f8d0c01bc1a7e194fd9b3e0ae3f3198fa4b117a07425115c601bdd051f18e2f70429b66b97cf0f9d35ba7edd517fc1b5e5cafc86093838af68d0f7824607c38dff865da0bb79b24345303a8f5c70b02d986e3c982184206e4bd60f2f50a87637c3310bf959d9d51672063b69994ba5e939a3d9203e7638a42a36869767a47c0f03f6fdb73a706a90a66e9beb940498c79ecc8e72fc8128b00ab8051aa54791ce1d9a7846628b8e3b8ba639144c0c19822fae2fb4b8559ddade03aad1102128b282d1417645f54bba80dd3c041badeaf34b9e88c9d23e2a36b092ab7d51fb6fe35a0ea8df2b55f73478adf181cac0da9833c186d828166974840a914d94b319c4c96a71770a87bd76842ce13229e3248817b75455ba9701b7a50adf6c955c4c7476a8aa481e356dd0d901f675545f74177cb129e413cfb0baebee7d76d67312b56438ef63a407d7e04ad58623542e4946d9b0591a23316a81745e3d79b379b8d00620887e468737a633a2da2c95444f43aaf3ec2de8c7fdf3b8b7787caf5b4d4a300d2f8af20e073ea1c361acbbd95acabd833b3d4f8ec66a26b5e10de166c4a0d69bd24fb0958faec0b80d47b19a504c68dd8d717f1d6047afd82916c6c0c3033a4db152b4886de6cd34cb315855871573e9cc71006168ae6140839ce85c22ba004bf08b3d67dc5486b09f51875d6fc5eb24bcbc1105d29bb560a9831eef49ef578e4b886692b2c48d42c0392809377c503ecc23beed8f6f023329da3873007abac97528eba20b0d603da4b7b54f409b320fcd9992128fa12a6041630d6d816dbca5bb47d13f7619861a48af404fbf3166dba912ff583234a42a1ae2ca748afbe77e70645d80681c1939681e85ed2a77fdd50d038af660aef7ec1660f0435a74fb4b9ccb64946505b522c180c7d8a7987406996f5f34b0e85b91291fa00188c7e4f061b98f1c06762f8e4c23fe5a695053a1adaf4f492c1d69bac46900f07032fdee8a3da34894838c2166838df0552daf7229d86b9808666a17777847dac80dabc0f12f889faf6ea1198a97a80477edd942295845aadfc40e3c5825142318de9f8e0d1d286733ff12c3334ac23b1a005fd0a2ed83019e18887e59e6cc687983b70cb6f896725e3a4abc11ebecaf4aa56332de2ee72ad26d63619f710829c70621100924a4682b925f471604d73f586e5b0d0ce2f2ff4d3f2292aaa0303a85d30e52dd0b097fb30b8dfdcc9925edb822488235fc7cecae5572daef5dc10e65048b328e0540c6139cbdb0d0df49f2d5a64f7457a775c615a665042186126ef9e1ee11a71048797e27ea1f2eb7b356621907a913107ea39b6586a8f358648dbf2efdbccbc7c4216a61de1b795a5c0aa98a4626189ea5e58a8175ab92e0e2ec4a5d5bb6967008b45c544ea304b1b6d35287093e72ae7f462fad5a76e2366e47df74a43601e92902c290775aee3dc6e61920e27db71e5001a87f82932918e1a1261b090b95ac11d940ea72f7c386c8269e1222e3d137c1a553c304ef1a6b7f80e1da71bac0afb087b8e7d42a6eefe0bd6bd667634b1edb78323de38a44d100e2303bd4193551494bf761d9c4a0d8b335bcefdfed41a163bda1a3b101fe1aef18c9c4266cca980aace80414e37ab7cb3ab2969c7aed4f7824c1a89d53caba4dd4343b4cf17b2af22319411e8c88bb14288aff11ed7d539ea7ea1ec9cfd24e4c66f0fae9ce72ec6392d064bd58770a86e3cec117481b65666dde1f0bf7f1034500e9e38d5d403494c34eecb4605ad9e78b3fb9468aa65862ee626794f3a3acc745052dd1307cd31939f96282492e5ac976709c9dcadc590fe568c9cf03430c5a3f0ca120b77ab0ae5bbaf6ab943651afdbb57e140408ecb12a3c263bf311f36b81b864f2a79a2cf344625e1453a0c4c6adfe10289ad90b32b2a315b01b0deb795ed774c8f23056a57fcc67cdab6d12c4a66e4a4c8e9ab435c5d6e64055452c77ca17cddeb5ab306bad6ea85366bd1aa0c331b7489f8960f37853c67dc4751374e5d030b4e05015eb1ac057210b6368c2062c059d2d220440caa1d3fd18d56af1ffe250b22a410b46766dd31672c017b338551829236f36f1682e205428656f0db114d36220d8f3d654643bc869afa678b7e721e18e2f3d9eba956e18e04d789853701701c5c9bc8b5d1ed81af6b0fec24f963506c9ce542d8409ec924401661c8c83c6b3db149c1f969c17c1eacc38bf0a16a766223e1cc387b0fa78442273397a4ac01594de3658b05bf058573025c367b4c372cef3403c9dfdf1df196db27e8940e019524ff71446ac176b0442e3bd13abeda29287ae2219a59675d245ad19a713ed68e47582cea60e28a7bd64911f2bd191c20ac00ee42e4c00117af9e223e6bc1595da6d687c6325ad3d069982d9e409b853ee996ccccbf4fc6758f0aff94d25a7292a6c3eb5b03e3675c545ace8a291d032ab8118d61abf90dcb0e8c2f6ae106518cba8da391a3a6426e1655ba7220c2f7ea7c3173119420ce93bf0c242a8d403392410b1bf63b8e0019aef70629478c8a242a05e7a645392670eec28d494e747ec08f21bc4787493e491dc9963595e3e8be665658d0ad64a42ccb4aeb60a549ff530892eb7110a49aeee288be540edcf5435a13f399a00bac846666f1cd872d91d4deec9f89ec4f14f17b56ddabdb100cf6cb9d9bfdceaa47678229d6892e89ae3fea8a514584731112a3a130a2695f2cf341006942dea89fed3700fcc103273a7229fcfd058fe7aec308e9d33c5d9662aa7e7e25332891b063fcc0fd0d52bb24165d3872be75da467c760d2cd5e4304d102c026e4dc715ad706c44392919302f95a70aa53ea846971b3bc9cb3b81354b02798a7f04aadd608fd2645bf3d240a60640474ec645befff096a96a5145e18a7ae32c032eb410d9758f106c01accbb2faa90441ef7fe1f4c089cc3410202dff9b54a751e7ce96bba8f0e43ac61865fcccf06c79bfa48a96ee0a9684e7298f62b9cc1d21a88a37231bea3abc15fded26e69262cc710f3209a4af8335bac3b95bce1dc7a8fed17535c14d99cfb44e81235a0bb2240771e49485c882b5d66d0b52eadbe5076bf41344901875b2049497651adc6bd67dda7113aebf4934aed709c8e4b71d14f8232b80eb5e7a75b00d26f0f3b14401d99800f83a8599c046c0ace38517af0df9496d5389bae1bce05cbdaddaf133af950ebc7df0af5c69de7615f2f2420bb4125c681fc2dd88188829663a2273d79db9b41a6a4a99f5fa43ef4936417badaba617cd674fbaf4eabf215b91668e32fd9110ae8642a5fe54c093364974477c2b77d7708e46adf5b7d62139a0dfed1fd13a6bb67c4646c4a060f89bb082c5cf04716b4bd3c4d6eb26ea6a92f12be2262ded7fb12a9af5ee2cc291eae8155d24372fe0b5069bea8d7351502268700de7137d535612778e33a4ef619669e70e917250c52e48a286f436653f7b963bb5f9a101ea110f791f45ff8a2be458f8e60f4275f4c5975f4f8de20606078da07a2556f84ad8b4cff95bc5d7dac13c79e91f33411386681178980bcae9569b2da68ade93d88139c426a7c10ce86226b50d50b7fd1a7005d747be28d5b9a72bbde8398ca2c7acd0d27c44ec69fef13d1a3bb5a58ff6ebe120da3ba22f7c4113d8f413016ac61828cda14b48dc5bb3e87b0323a9c2608d51020c6cfadb39597df162ea2f690867a7a8df451b599433d3fe852f314a26941abea7e0cb66643172e4642650eed18dfaabe8009ba812dd28a35a4a463834a27e9f5011bb33b423951621839a961610d7d56073c589071d990dab879d6f6c2c6d9fb0f2b7cffd90ca1da0549d8e6df695888cc8a5c3f1704e17c78da71e4d367375a782b44002d37a2585c111a01e4db268140268ac3025bd1013d2f1193813a4e82947da387cb86282e3777763519449211acb4faf3700baf12ea67536af0ee36d1ce41c58c880ca34fac390ce902cf2eae18c99664257c601216b6f248d25b810f270f5f8e956c3143a0282f5113aa79e5003bb7fbcd363460b97a7d354e4e6c30966752fc2a3a3265516a347c29bde52fb9886ca0cf2988905e9b1ac715e5da5a7a8027da085c4b97f5b3b207e5cf0054b28c19dbbd4837b0f10704f49cd6fdba5e2f1ce4445b859b74844e34508d046ea2afa80a34473c314a2a0754f1dd28df593f9bafdd07236d92c82c4cee386a4dbdb4a59d1211b815d7181b495319f7abcb191968e42a49f4309d039a2a2762d482db2d59e394a3551aea0da6308559a875fee85dfb0419c263e5f84fb467443832f6483562961ad0cf58509834d2ac71cd86bf50c20f105d77090c6a2fcb62336deed41f48ac01c3b3b574ec0ffdd2e418d99cc9cd7021a8517dfb6911c3712e78ad295e8552d223a297d9ed14ee0dc69ab29a02259213dd5e28c316ba7bc2602e7a4ed5ed087c10750e0fedbaac507e22db4bb2e52b042c7f4caab85374c220e81baa06fc031e6e41e781e90ce616c2b61152af596623f8337d87205a84cc0b863bb8a6d7ed42e6a5711209a66cb54e588400efac29bf1deb90bd6f53081da06cee5bfceed882c1cf653f1465fb997f5efca3b9ef29de688ea83e3fba10f8069ae4362162474838ecbd81cb94d98b4c2ade78db235a5517a1dd9d93e1d8f316eb5f4cab8a8770fbe63f07e4f33692863065321255e77325c6a160a4a8853c9e800af2c823219790d48025eaca42a6a8de074ec760097e0a6f7254337d401cde69ad38bb71e93c9dd38a4684fd5456668600032394d8092847846b1c95c84c2ff70722a34c8b5507e3b82189e52d3776d6db3223030f74bf439da18e061590d18714da8b42d8efa5565f6fe1ff643f628584cbc9f416094bf4820320dfc3702376cd5187cc7120b605fc0401d020cb6cbd9b21394f9d5b212191544749fe86b414e092b2a521db5f64a9288ca27726838190556b56e052fffc16041ef1368a3a9251e6ae91061280efb5ab04448864676edb066c31701b855620d83e0351a019128a961b02ce0f5665d998621f3fbbfb77c746fc03bb1c10a5af155c0979d684d062c1783904b162578835cd7c9b11843ce9387a17447967d2f0d41f2f7eee91e74dc31e4b765174a42bcf244be74c1fec680d76fa9dcc0b403adb34422eec18394017362818b6325304f867a3a6394971df619fc7ef149196cad605b0ca8d305309748ca60f945ca20e2429924fb058588412943921389eb552251738650ba5acf94748aa0547c9788ef846ddc03660b207ef64959109f211f43bc6526a643d45d7718f5eeb71aab3c114f6dbb18e34f36df125a72eb59ae72fcf63a19b3c3326a67a64c39e50ab74585a9468ab4b63f06d2489436cc966418b5eac57c0936e428bc49a61d17118468c9647fac437f3c044095631cb9b9c0f2b7d2a9504fdcf145a935dfa08ea6d4628b51a19b81e3b1d220400e1ef467a1c03de54adb3dff462b743398934b72efe1a01251c2ef1f94c9779dec1a06d167ccb7e12630a8f1a34e89ca7bf85b2393490f0bc449fe231a68240498c18eb2d6be9582080311978d817d726b0d4e930c096b4baada814719062019f021f58ee4ad90c5486603315bbf13d871a552fa3a585f061b7751d207c367a1bdd5a30e161a5c1e119a54d21c6199f14d243463bfc37dbe3b51a9908235973a9eb85e634e1c78369e3802ffc53e7e333110b108ea305760c8b24b0f5530ce928681f8419aad272de3ae395d783fd8faecbd25cdb9b3708d38ef84036e7a2e950c0539ca8578133c916e0bdbdf473392013258ae34fb570a2ffc164c569019c6c24e41dc58d8122cf3d5701560966713f11d78f9a4ff4733193295a019281833119cf12c2da066e437d40fcd4e014e3774a8c16ddd029e2b65f8d03ebef7f5c51804bf0cffcd191e366976d835cc5c736a6f98cc41ad398cf24f201115d1a2fb94d065eed06dff3f84cce883d08f607aa4393bf2fb828b530541ad130b9b8d39aed74805d9cf9d05e71af013a6c38a4a178257a1da02a9a341b754f9e7e1a9c56297643a6d296e2e43b1dc2b2de68683bb56831080adf6f44d29bc6d17e888ec126e06262d8167498c766802ac736389382c190e2d7641df6a5315de872b44b04440344cb94b4938806a11d40e5b120cb515667758bfd7fe58e36de0448d3c8eaf4de2d7234b0abc05d0a648102032f5548e715fbbe5d3ba52000432c3a5026e0c8ff9d9e8750b6e7df393a6e9361c9506d1c1ab97d5dd3ca42049a7071862c01f9abe7ea0b7b6a174f6c819564ae13f3b02145f663cd57d6353a774ab8e24380f85321f91ef48c1048a3bde41816560e9a4d3cc2b9d77479dcc05155ecb8c0f5424388854cd3e2fd13094ab08dd77833b2e0f4b5253de18a99d94d5c0c55e1ee7fa28c243a88b9e1b4b255bd343ad98ba6e4d37cff615828e0fcaee25be5b408eeaf582c1a46832da1e5e1da3aaf1c418e830361043b99fd1e0e38fcbb9f813b353fa88d70a6aaa900c1b6280b43520041ecebf0deddcfbada32af35dd6c012eeba7f85821926dc308ca5016a0204414056f93fcdafd7580fffb3ea41d78e2946c3d4de48ec1b025185afb55350ecdcbf7b21d255ca433be1ea031f15e55a8344dc7d424d641c9fd8ce25c21020160321f7481aecbfd9acce206661c56ab1ed1a828fd321a593eea400eb686e4dbbdb7d5a0a511759505778a8c4a4a1ad7fa4963c0e23b43da3343dd1a84449e3f2d0146d4d896b817746042ec7536fe3716589c944c9d16358f56d4fca02a2f5ab6c1691b2543dfe35818f7f96051560ef97fbdc4651fe99c4765aa3d9044b4bc73707548dbefe737ae4b2a87a78fa1508a4460fe4dbc9531005200b9916008850656ecb29001ddc095a75049f328b674c162f0567779890970bb1d70976bbbc8c3a887d03fb75671173308c7190dee10babf937b7c4ecc2ec9f374dc4b8010e176c818fe29f9e411b3f0c416a1bd1d45c30b6f81f902766f1c1cc92ea1a28b2daa96dc5949c80f09562dea0aba8b11b9f2afb8575ccd457b0261c260a7ee5659ec9d5c99187655b212b20ad16e0955c807b503c124435558178d4911b80f505ad99c3ea588b99d9b06ce06e0b9ed4c4e42c75b2acd2e8b888b174fba367305431da6a08c0a9b27d1bb1fb9c80eecd7af484a13babfece322d4605a65d9c64167d620ff184b9dbc455884ec1a715ca214c22440319d81896690f7d9e5cb6ba77fc0fe99d60482058c8ef90284f326be6dadc82d92f1b490883b22996513c8e5f3b9b1a1050659063a2f5d531cd34eb8e469b1782cb59ffad722b4d680738a5637bc88df5856129c9df3c88049e3e5703385391df2d4578a11a80644f7dd1802c23ffcd79d6a960cb04c2317c09e331913a21fbdf05d79d1b4076b2a09608e55e4042510fb668ab8149c5af8b35e6d4a214a03fdcd6065fe177221b0e0d94e49c58d9f1a4b3e267ba40cef8309da161e55cb13aba5e842a954dae510d204f4bca4532e3ebf46b401fa67f1a0615b3a456239f398c4a122e24232a47db6dd76b00496a4825a44c2f4e2676b771c017092a7890ea123570ee5e787ba36843495ca94c0c3d91263210f5c6368e0a1febb8d4b5b25b01de8305b8c18ff243198d0099ce3756a69e426917dd0c96bc31aef061d9ff10648b6a8a5c34c3ac14c984648cc8f2f142f25c79480410d239bacc9a0c4445a8682455b0ed65d993619cbd4e6063516aa5bd8bea44dae2b6afc5c49f348265b0befeba6f1681b9a9233393a08a5743312033896e12a6b1898fd6de3afb4319184adff3cf24d817b39a5bb58771c96dc20e0bf15c3669ce0d624cdbc8d5be20908829eeb2637d81304f5dc66d8089f2afd894d272d19951b2bed680f7587035b8265709bd5cf3137c13a2a9df44016a0ec10c70f0a731f237bef9b02d5b42a0d484dcf9aca3e5da249cbf0fb146062c829031db4ee51f9bb7be69e7293f84f42b0247ceef420e08d7da820b1ff01afeb4485678b7fbe3f99fa4b056c481c2d02732732216a951560fa40cac68041d65217458f0ed169fc49c7bc483e13a8d1ddf1ba417d86b2cefb98fda9921bfafb1492f30751be0e37b09b83cef6dee46b13c659e5319c5a42d1159a5d99c1cf7981032e1ee2354c08dc8c2bf1e046c8cda158f704016b04098819c2728d011b11baa3e3614506f7c1a115baf5ce3aa06c10e7288b96ab38e050575703d835bcfa09b45cf6c52e6b06b632eec35494b3c85abada923f6aa3451d8b286406f2e70a5c129955a4a23ebd6aa1c94aeb83b88073185d1bb34540a6e0a5dee3fa11aa7aefe910f7e69eb739740611c1fb4eeacd022719c4d7a474bc1b898b1bc49aa1476ddbc0a5155ecc6c99f8e8873fcd5d55e2848b87a34d94aa627abb8c77b52588e1000d210e5f38105a8815ef155fa0b41c8102c9a06faa04dfa4c3784019680b25523c0d826f03d8acaa52541484b432f953a78ddb006d25b9603cbb12c68aee3335757111c556701dc7b8020b4f0946591dc23d86a2c682183f65a3b0bfc20883c90fdba9b48354dc84ac7396e6439f979270195144d75486a4363450c9db67a17ef0fafcdff692d17e7205eff188b72d192c0d0d2f3e3da970f7f689f3a851c34e5a30f15035712776348a4825d9ab8e0d6ae83be142d0537581cdd7123efbb0ccc075c7949fc623e7a98b73048e663c4a73fcd49acf1505140fb00e774025ac22bb9e45b7838441724ab16a2ef06c99388f3811ed1be9299834fb3f6c33e8a839bc80b2990113acb181aa0ae8efdae03e5bdfab90bc7abbe306e2b5568805157baf44b5736755d1902da11b9b8a2fbc3cb31e63f4eaeaab3b848cabcfb742a22e235d8ddf1e92ac2a193825b94baace9a5ee1d3ade1ccea161dfcaec5fc34b5ad2b7e41fe60e7e0653f1d159d6232d84ba15a3730c7203f84e6744ec16a22001697d88819e75d0d858211e234384aecea1074a160ef1f70fe05c2e43119802f116ff9c273d80d1e136c09c9b7e0ad9cc1fa3d0e07c9241426f673e701a7104421e71d71d20c2de36040af8b7bf31561815578ba6977db0f9074bd3ea9e7ee0eb97f135d088edb2db251cac7e800c7b9c519925bbccc159a9d82bbb56ff0ad0ab8ce6a474e54ff94af7c092b24f930f44a174acacd938c5c527f86e5f587fabab6ef9f6c2008f52845201a3002046ed1e64332f3de7e0607342bb162c9f0f0e060b40196c92452ad2850349dad186299914307a5889026af9b723174f9ea1e6dd6f00475d8739a06368204313a0f1e9c92945136128f0089769a2bd3e17c758c9e7b0cad7eacb0eea7740a4b737ca4caffbc946c1f55102f208f3e8e808a8154384ba91d13b9459effd8c5a44a227d56014860ee1f201fd762eca8390f7aa83c9f31896c893c4f68853dcd66ce6df6c912294b5788fd7785180b9b2c393c13d8ebc7c6364fa43cd739e2b9cec1284ac37fb73509c77ee72ea0b769e31a1307cce07278d4b7a71a972a2a706b5102c349868db1c4b9b71138c399cfabc855a56af07ea768b11e85f93aaf8700983e257313000370004d01599e41c50fe21f95c0514bba6a28a5fa3048d2fc3a2a9a0c8bb840ccc89ba461f9f6ee9c9e1adc9392cf8f9afd0834bceb66578d451696ca0d448d963f1c807b6396600ff1c64f0acc6a1452f8d56d8eaa354e536140e0db3e1e0bc10d28907fda202b818ba6b09eaff42e94eefcaa10c4a13782eaefbe7b43d8820fe3769c4e09dcad1f28c04d3ad0d3775ef677564bd69f8f9dccc681f649582c6f140b4cee454708fc457fd10658b65ffc4759779c6156f66818983e7cf15a58716d556ac23435c3b25274175e7f3e6b58017de39ba695cc44f7b9a6d01b21733d6b8c25c31d0c0e333a07d6aa413819b441eed77d26d3eb05cf81202b8f4fc2303047cd02d2851f39734d12fa727439ce45e768707535be3a07340b0fafcbab288bc2399b56d1067ce971edf8c6fd740a388d6cc4f8117a3675187468b462bd7012cea79d145a89e5945835e96eb2ba67322c212986bc47e0df040979d516a42bb5756c836f3524af68519d7ae6d95d20b0d9e716045dcf47a55f3ad8c9c6fa5139d0a0ed05017c06cfa0e8ebcc397849f61ee5340931d4462cb04698edd8e65b0c6e254e18fce9985973f01b55e543ad95f6ffd9af2300835b00c74864bda81f39549f60957a671811e0960bfa4b59551e23425e05843458eb521e187f75cd228b481c659da4b46db05efd23ddf4811828084345c4465cd175a3ca0c70ac17cb1601102562cdeb604cf4b08a925a8a486ddb01a5cd662e545f23a6dc35e5bd3f5d64b892674958332645457c7d6d8a98bb5c06a6363cb0618680663c3d2643f418707750128e72bb918144c56198d9e2387b33f30ca8d3ae26a529b8880b2edbc18ecec9dd5206405edd2acdf3364a014245287cd79552f2b2ff00882056aa471723fc2ad421c8249c9010dc166bbe38e449566e58a52937cae0dde5da3f9ec5f2fc72c5a5a2f51ec89d8724e5ac42dc573252e9783211eb5a01f1913fae78f9c1983bf57f0f5be9fc629fad8cf19ae13f32a77cce059aeb3358dd47a385e58a18f762d6992678a5d23d0058edb9ac3e692db0c588a9910213a53c004a01fb3e1ac81dc8182cb5d477a62c70ab9ae2d1708f8c4f1606893677b14ea5c6c6843b727706b96c25717805c7232c5bc890c92e0bbb4e1061eb9abaea9b4423141311a705ed820f775296581de46d7720b0ba4022d1ef80d59bb2c6d434b83105a3fc830198bc3ad56c96118616b95ef28ed8e4c4d64ae4170b46086fb3d8eaf909344f2a7495b890b5254f260ae77535ea1d2972c3bf3270c8fb7a1a918ee6c6cd05d48cb441d21fc37b41ad26be7ed527151cbd168b81db94f9b444ef4599776342c63e4a7ed32c50486683480c21b0e9d42926d7c9e5c41b153978448536e5a271ee506d48645f03abb43310867f838b996fa265a95e68535248aa1e3b0cd82f89e9f20b526e2d858a9d93f3b5fc4847c1da2e3e054561161d616307bac0b4210436c4fa317442fb9c6b6318c80eb00d72590db1fcc5c66f214c8a13e150378130daa411c3641a9c1e5e3632b568e5152ca92d9852610749b1343766d2b082950403f84315c56007f13f026b4ee573085f383149e060d8e2cb8183849955fff45f38fdb8f26d6f348fe31fe4d283de6ccab183790c82f6883d97c4175d9e024c3ed7d75a4e3cbcb2efaacfefb00c120ced45417b6018e839cae18aac135dbc213c664052c6a339810b010bfac9ec653b68ac5a60ea04a21b7d9f66abd4ec4946cbbab6f899fae2f2373289cf8e5586ab19549cfcad685aa14c7ea692c695149d163ab92b2918a2aceefe158253cb991d2ca2f8266959d9ecc2e8569e7924406503b5a4b643a36c9091317ba2c7a0dcda79110b907c2ea5daa252d2a52691f376376972d6f4ecc2933fe4a9b1542565c1e69eebd7585d3c6676140f3daedce76a1d9ac32993390fbbcd74120dfd31415078557314e59540904b6d265af6d178e8715021964032aa77db326ef0886a3d8e1acdca2249aa12f9c4f86026be3c2b91915c10ab75b7a6ffe0eff4d4fa602d101ac2292c2b31880bc3a2e00d3ee3cd5d72b164e34c2f9facad9c420b9aa300c22acaaaca6bc70545cd5ea43f0c986bf49bd10227dccbe4ac20db5ef7a426fe21a152d1811e8c264d454726a6e9e12b7ce82dc56e2c5e05a789f7cb723a96d48d82621226193257e409ea72cfd74e29804b9ab5a74f6e608e022aa7a6f31ca5829d207626030e805c4b9feacfe22c46810bfcb1559cd7978bb75b191ea29da81a7c412fa539a96d9dd21f7e1efe269bc74976076f16edf79ab6aeb6f8fd4d2f139b20d5bdcc10b5ec0e0e654cc1f21cbbe24b6e46ce0c96c34affd627c40e3e43078881de110b3fc0f78f89944a2e79349ee0cc9ab2e2019ced96375a05483e78fe97de01ba4d8e136ee042ed6981d01fe9c1c8b2802863ebe73533a3cbe0c13087eb0caad239a29314ad3f3a18aac3f93860456f17d61aae46d689da864cae1b84af3d49a662478afb0691f55c0c760ed1ac43c7be039cf4317187b346ac36b798793069eaf5a7fe67788c2743647a57edd475da4480055e19064b8e014d23dbe98230503595618143164df80ecf0cd86113eaa7414c404d5b82de05a8e4a5b7168c1e3f73c6ac2de0d2a4caafcb4d198f15bdc8d89091ddd1d07d4d27777363b19ef6b153ef5883899782788c78248c6b32bc0c785d8ae9da8cc1fb872edc2dc50cb748a16f513de3f10f46e3271043a4c9d57d5ea050d9683be3333087ad992763623a1697e122ef63a32e8e683843e788fe912e00673b1518ee538fc6c30f42977cf396d90e5c0b243f144fb07264c3bea68499ad8abf5c26b5a6d11915b4c2a26f5fd3c8773168d7d93cb8bfaba3d05a9cbf3cad4b5e43223876fbfacd0df5ce4ddda50a1036a5d61a6213547d2fc932bf449ae5d1d382a995319f77746acb561b5eec26531b50821356f2a80c3315beb2159cff848b7717f6fceb4925d4f8409fd4ec52c183bed7ea29ed6675e4a0faa6599e3e7df19a0cc54c2197c69f5b9409906ee2bbda99f36a034ac6d7d7463d5f5d82c84cdcaba8c74f21c764715b8ae828e67dc9ac252155df8e553160a4c0b159bb01796c0706bf6c8a5d250b214edafcd50ec36083a2779570290acae04853360cc4ff0371cae4982861c06458e00192ec7e72b5170a33d1a1394da07deb66fce1b0f361e80c624a35b149d110bbf7be63ca49f78d728782a284695fa492b15c8cc66f8fcc86c1c9cd20907ec1558ca1726fdddad9a80bc0d6838af405b772bfb60a413bdd14d48b694e00b4d6c94bafbc503143f44681a45c600c112224f47b8e4133cf779034f352bc2dc4e47a706d611fffdf2d91e911c954364302b5fd9966af0cd80ed7f9a5171488c75b96c48508500ff1772a1356de55639f7969d4a3e03d9ad3cf78dabdacf7a49833e5569c25e3fb04f558327fcdde7dc9060ffb4ffdcc39978768099aa5083f322482a0981af52d2262bf2f74ccda7fde8334ffcb68a9c6ecf8c0ba00eb6e1bddfe74b52d46c803ce1b33ca33151dc872b7f6084f01c9905321a552cf66d781009e536c803b21ddfcb3f108ab7303be4b00c8e82755a45ab275d17454645ce57517d77b0935ae143d223d6f2ab973d0c8940425c0132865b015d718fa072db1e6bb5e8ffe39d75871000027ae2c2b5f4571250810f19b5112334dd96fc20e727143d7fcda548bdafb8c60a286017ceb2ae4011a7340babc092cef5fa61f2f22c56d7593a02a5c1d9e2c9cdc29c40c9be3b8f479bdc8aced8fc12aa6717a856c867642e4132caf27b3dcc77671e72266e37614a6bc2340ba41d15ed6bd447417b79c011d711b4e5885a80361d3d8d4d05ccda99eb718a6d951357172f2cf4d1312b003b295de91ea20abdb4aa7d4e725e5fbc40a40768ab4b2c356022ed694cba3b6713bd799300544350f09cc6e877328366884d55df4242c492df37a946c2cebef2e04a2b828207744bcd2cd6fd8d6397c0722656e0970dbdc06697b543d9cf680ae75a5855bb5e5ed9aaa576bd5a8c6cda10de10aaac543df865b859d5c5440ba1c2110ccd88a0e828b4070f249c33152b117a4fa4afd4aef43e23a32044349adb96048a36c2af89a6f5dd68d4bbefa310d36bd8b75e704bf4abd5edeadec5ddfaef6db4e5b16b1c3928e10e89a25d31b5ddf929595b3aeb58f71bf9078e0b88643e5faec7257b14cfaa2aec566442b2ad58286a5d327768849ade1ad9d0deb3e1896ebc59415df7efabd51e6ae3f07d65460b88d9b65c322b68f601c51b01b80dfe5cb68199db620fb6e63ab3660c604b785fb68667b5073a6fc979d6fe18e096706ed8069cdd064304d806e750de92fb8c9d5372d69650c919dbc2228f6cfba990d5249741334838107e01bbce4ebf3fd2a6f850a6b811c50bfa3b07342b62f51aa4982c03d0834c5a4002647275110aae9ca5393521f3a36aae64681addd2ca4c33a130b090aa6b02988e6e5925938d10006c5c958b0c8d46595e39530634060652ed4a40e6d12dabc8a4110a9af667f1b0ca4598942e839e3d8272b899adab70538fefca86fe7140f0df97ff269acdded03928b4933df01021030b5c923243b5023f64898afdf609c12ccecb988a50862edd700b93ad52261274a7195b0386923d3f46a4ff4d464606bd5b908d54bca7fe06b832e169b516496b8c81769d8ed1fa101f556dbe6616a99dc8b99e1b60fe27a9979114b07db2bd5ac48a4e41659d7b62c10dcb8afc088538a591a212b271f0302fee5328c7a56f23de43a9d21dff87409128fb2cc0c0ea4303f6099b69ae5a5dfc96705e91e22dadd56ec58edb4ab8c8006ba6151f0194d84725758a075b5066cf0fe78e1da4a7c3f7580ccb10d5855e721b8351a12159234191acf7824deab59020077d78f4b257e374060fc9ae42cc4e097392a2d8d1d39895113d55a7df243d0ca6d18e307fecea8c15a0594f9e9233a4306406a73b965736b51669794fc2604c762089aac07fde77f44ae1c8db1701150146eaef835c350081eb8d2788011392736742d0e9cc329d78045a2f5ea57802a5af865d77e903fa04c23aa025e0bdbb32de99a8c0b09d0057aa7d3b3c02da9d5accc0cd63471fbe07c6d2585a29229ecaf2c213b336e9e104b105ebdfaa3870bd8099714e4f1e214f7976733da8979d5643da9eac585b21178f89e701ec9aa730c663248a385b04b8bb5ec42dbad9942186ad07a67025c80e0d7cc4a9cd59f12884bf9b164ffb7075022934d5df441ea3acd7f536591c06bd9de5e4ed8f2af6dff37a0e8b76656f945d0a964e848c2207ef83c35f169137a8256dd8d9171ea421cfbe2d111f613caa02942341473aba7dba47e3335dd55ee6c428e7cba7e8c0a52e0cca5f5dd775996091fd7290ada84bfb462606d7910eb3b558d2f166ccf7d04eb6854ae3441986e22919cbc12b5bb6abf54a2f83e1c9d265b18f1a60a3913d5a37d2c2c18fc3ef215342e95af2954f9e5c86a21b186d97efb1e1f7f193f833963bb7825927f764b235ce63162216dcd1268498dc1df43f2ab17a36dc84de6c732c00b1c68c7f5d30cb5fd81a69a01ef61e15e92d3712e7686b32846667e81ec57cb1642d5dc32558f7fa1e287bd86f1171af2118f8d74b33890249a5af44b488270d32e8b9c649766979b47d3b1461ea6a2cf139bd926615f58f0d13a91876d3595054049422d7ad03847472f962882d33c56fe85cf9570de6fc7989511ec423c604726da906af242025f2e9e8623bd5d95a895b35d41fa1c8b3969de09ade8676eaef0f897cd07320d5e1cdd82670d0baeaa7e99f2dbebf42dbaf5d044dc96d32d3ae6f42a7819c3747cab515609be4bfd46c5f7c425747964409b55b5a6ac8520a64a7a4748447d6866236079399978fbcac5974cf64d869ca3d673532c80a01fda842bbc205568d5d802b1d2828564712dc8230f5bd40e90625c93d3dfa6569d675af4944cba978bcee9aaa6c69d860daf2cacd15ce6dc5e614ffe6a9cfee079151cf464c465450454d0faf01ab6385dcfc575353cbea73a924e91f0e19a86f5a1dfb5eefed93463ec9ce2793862cf5ae6059b2522cb1c9b66cacf238b5ff6849587d2de080da85a58e7bd62b917b49622781763226f8e916de3395a62f7fcbebf6678f36e8ff9b42a1ad6d8d37e10a8c0310ef8fc2b3c59235f82cd94631344622d05d5c6b54f2432da74ebac70618495af2a5183cd6aa2e0f39dca0727021a6eaaab3ceb3d04fb61c0944a34fbd4d184356b6375b82a15f83162f6efe1ff1aca739199c8f07dc764cc36550341e1901d27f371d9a0c66e56617cdfb232eeadb83119350c00006a56afcb074056b33f2588d9a7cb04d1bdf1cbb039c6eaa29d4589f1cb4e3df3c70a1b6c734e07bb461c340bba5474ed8d2305d10a161b3363c648716bae30d5ad0aac591129d04dffd2e683d1525fa709137dc7d021950b03bc1b4daf74986fce0673dc89d48d29aac12307f76a0451dc74b722627a37c732f9a44c332bef57acb5036101d1f7189aa2b750304f94dec3eac852bf8acf30e0de87c8b1ab849d8fc6c1fba26d8e58f8eab5156eea8c95fabd12ed688beb4755798bd9e8b77e63298bbda5148300ac9e0d2bba71dcaf6a5048b330dfd3a4efbaf736d9f7c033c119ca50616a711c9a4220b877e5c020c35ec5d070840332b6a51efd3a930753443eb8077b37842e0da9c8e1075be8f8d916abc32bfad461d6b70510785df007d55e53ea4c86c00a2d1cb794701f6698be4f6a454b53c312394618a518e17be8a80d049fedc5a479d30219da391d137b29fa75209447d83d70f8500352c7f4242f5635518d36c1a35650ab4559dc3d2150bb21708699e14a7b923a791f128ad8c32a725d868b35b95b1e9a239008fbfa50f53ebc28870cd1c140da3f312c7041904d4cad9befe087579291336278e7c0b8fab09f30a817a2b5183407504f51826ef0d797c90177627f957aa720fa11b807c29ce9b435fd8af2cd86d25cedd93e8baf14f22a5be09b4e308de6f5258a07fb3552cb5758aa2e84ae1d6a3039e6dfa9b4846acf990fea3d8ce2da05d1ca07faaecd70319341289427931098b67e1fa42d31405214bdd3288566a0652a3ec26a2a1f3c010576ced1621d31b32648cce483d70eb526a7c8cebccad874ed5a69755c988cdcc8dde12ef7d4e728e1d4320154d727152b331d1c56e1e02cf08d52d8a7d5afda88ce3387502132b2c2ad433dae25d33d8df52f71d5fb99e670da51815221fbb636d13352fdbe30642499526eef065bb1e087fd0bc3c569f51d2ad885426386910acaecbb9facad418234dd731d53aace644b85cdb5bb242e7f4fc21e7b88f9c07448b021a66ae865930d0605207fa330761000af923cd0f145da60130e4e7383e83b0fb1b84942c4491faf19920c83100a5bce7133b9a35c030106bb89676e8723a9a679ab0712bbaa4bc5e774fd657d0a3080dd561e8fa2d86dd5b4ab9b7945b0621081b08a7081dffcdd08df0667837dc00b38f07f94db0e3ef1db3ef9629bd7945611911db7ef87b48dce661c7df4b665f07948e66652fa4782d7ff87b4adc66141d7f6f997d3d40281d4b6847cb15663ffc3d266ef389662fa847c7dfeb4ddd76c3c1f5a83afede136e313cfe9eb12775375c231d7f2f09fbb8b1d7d4f1f396d967802c59380ce518425cf2c3cf63e2369be8f879cdecab3111442c48454487243ffc3c37dce6a28ebf07ccbe9b2444119572e8e4f3f5c3df0be23697e8f87b42a98ebf57847dfb879f2776db4d46c61bebf8795ebc309ef26ee03179c88e9f07cc3e0f82524eb4845c248a3ffcbc206e33898e9f27ccbe0e806414ab7c30eb4af1c3cf1be2368fe8f879c4eccbc0121332331f692b88fcf0f38ab8cd4263144f2a46c7cfa37abbeddeda8a536b73bb1bee32fb763249ccbe9ea013654c2cba9eb844fcf07f11b75944c7ffc6ecbb5a694da9a822424e5cf9e17f29dc66a28eff8fd977b3aa4ebc9082e3c261e487ff91b8cd219261caa0a68effc7dee8b6dbcaea933afe1ffaa21fde0d0488c3be5c30c3f3bc878e5f0332997d2520215d294e41d171f6c3af41c96c0605db344cdd76ebd83a345075fc1a9e34446990ba1b06d0f16b48c2be35a9a1a9e3cfc0ccd0ccbecb940245e50ca8a8cded873f831b6ef350c7af21a841a8d6f16b28c2be9a1ffe0c62b7dd4b4b19c63afe0c5eb8bdf0f833243328ef060f3afe0cc7ecdbc59d01d9714c528c4d0b298756d80f7f86600661f6f5380963542d61826449961ffe0cc30cc4ec5bc0550734382c38c0a47ef83314719b4118a33248e1167f06aab7db6e101b445cc76f83dfc6c6ed6ee8a0e3b75966df160a991dbf0d31fbee9b0fd3da965097d8f187dfa688db2cd4f1db18b3cf04185f4ae294b2442cf9e1b791c26d0eeaf86d8ed97781047d984ab5248ee00fbf0d12b71944324c89db9b256245c76f33865b5dc76f63745b0d058a4d52c76f33845b99c76f23b419da00b34fbbb91db38f17d7416c6c48e88dc80f7f0db246b9ccbe1ea73717546248052172e387bf8689db0cd46c7313ebf86be2701bd36a312d5653f3845b0b8fbfa646ea6ec8e9f86b88d9a79735c565f6dd242684925a2411e911c5c46d0ebad500b3af07470cacb228ad2920587ef86b82b8cd40c2a29aa18f8ebf2609b7311d3f8dd86d755515cd58c74fe3451346a3bc1b703a7e9a63f6692412d9f1d300b3ef42191204d6846447528f1f7e9a206ef34fc74f23ccbe9e6191151fd2806a3099fdf0d30c719b3f14717b8d513452b8c54f43855bf6edb6dac9294eaded66997dda68c48fa12885db8bc4ed4d8629718b1fc31806a3dbea117a0486a48e1fc31086220cc3bba1d7f16300669f1e0e831dff8563f6f5e4b871e307edcdedebea87ff0212b7d943c77f4189dbcbc4ed6db6b9e116ff85b80b53b74ddfde2e5075fc179e2e4449dd0dbc8eff0231fbb4be50ecf8774c37dcde206eafb0e8c210b7f82f24edc46e9b92a564bbdd2e6ca7bc1bbee3df1db32f6532911dff0e987d22b0a2e30a112f1fc8ab1ffe5d10b7b943c7bf13661f053cd8f00a020794e4e1877f37c46de6d0f1ef88d977994665940c20281b3f7ef87745dc661f63d44e8aa9e3df51e1167dbb6dbab515d7f1cfa8cd34f1cfb8dd0d1a3afe9965f6a533cc8e7b907c78553172a3c205f7c319d8f1cf18b3ef4ae95136052b4ec8c7d70fff8c146e71968e7fe6987d3d339470e85aca025251e3877f06895b8c2519a6c42dfe99b119a3dba656a9d54c52c73f3334533433bc1b3274fc3271d8b716673c74fc32c7ec8b001b94152c49643f517ef86590b8c5573a7e19a5cc32fbae92ac35a48da920289e7ef86598b8956982f8e9f865da64a66e9b3aa54e32541dbfcc136e758f5fc628237537d874fc32c4ec4b8dc662c76f61997d37ec450e24a1aa2695e60fbf05266eb1958edf4233fb6ed246d095a4251b44b71f7e0b6eb8c5701dbf0c30fb7a9adc80b2ae822c2191f8e19709e216bf098b6440f874fc324916c46e9b8e48478c75fc16bc2c242de0b770ccbe14a716901dbf0560f615e0478a181e808c69407ef82d04718b85d9d76362061a0d6293132c86fcf05b18e21657e9f82d10b3ef3e59d2f2a123c88f1f237ef82d14718ba918a32c48b975fc16a870abbedd167d7b8bebf8756aba267e9ddbdd40d3f1eb96d9970281cc8e5f47cc3e9e1225a66c287d1dcdf8e1d715718ba774fc3a63f69d20d862ed88859224ae1f7e9d146e715bc7af3b665fcf8a24af2732ae204564fcf0eb90b8c55292614adce2d78de98c6e8b92912575fcba219d10bf6e783760e8f875c0ec4399cc60c71f73ccbebb74f204ea0c4533d8fce18f41e2164781018fae1a56d07c6e44f9e18f51e21643e9f86396d9d79302ec8687b1241114ac1ffe18266e71b3d9e6163cebf863e262a66e8b6e6df5f39f62a22e74fc31c4ec4393f86196d9d7e3c109d3d823484aa8c50f63b68e1fa6997d3d42185242451232d47cfcf0c3b8e116af75fc31c0ec9b61cbf201ab02e343891ffe98206ef1136151ccd048c71f930423765b74c60c98b18e1fc60b264c0973cc3e548a0706191ce2f616717b8d513052b8c50f4385db0a6fb7458d8ce2d4dadcee869965f6a14422b3e37f21669f0c9e2031ed20236212fbe17f29e216ab75fc2fc6ecbb694b156c5b367e24a1fcf0bf48e1163be9f85f8ed9d7b3f4e3c54f50531219613ffc2f48dce2b4649812b7f85fc65e8c6e8bfaa03e2f491dffcbd04bd1cbf06e90e9f85f80d98706831d3f7bccbe9e27a6f02b884390e6d70f3f8bc42d46ebf8d964f64da06a2d8691255f3446fcf0b34adc6266c7cf2eb38f46461288131c50674c3ffc2c13b7f8ac89d5e68615c74edd36a3a1b1541d3ffbc44649dd0d163a7eb6c92eb3efbe0555c0aef6db55f57442ab8915244a93c48d175120cc28b6088bb23404c70fad91aef58460aa92e284c50a144068f06b846dcba72b68c48da6196c2b8a9c13d75a6b8df562a96b1468ef231b92be7fb7758aa25a423abac372aa82a4976280f614b4a039fc3500cbc281654a872715bfdcfbac737ff4113066cfdf9dffe7e7ecb4ed945ff4a21c4d51fed26fd7158a2ed36fd7955a96ca5ddc9e283fcf5344d7d4b1f3eccecf41a78cfdfc1aecc33f0ffaf91fb07855af073d3fba51181d7d543f8aa6bff62e4753b587d6e09c73f7437bdfdbfd77144551608fe7049c9c10b0e86f97f3996be241b14b0b66e081830fb0775521ba200267a7411fede8474077b49782dc6b810dfaedaac2d447c01713fbf93adcea1da11184792999692151426644cf9b7eaf7ab0f5b5dfab1e666c8ad59eaba7d65e42605debe77f379c5dab3dde0b017bbbcb105a04450db2290e3764746dc5ecda6a4ad769cadbb13887d5a5a90ee79c417d08c61457bc32c4eca7635821b14ab263d9ece33f94d561e8b7cbeaaaebfaedb292d179d8dfa88d0ebc03cc4f47fbedc2e2a0f7cfde2edebc982ccd10b2fc6da8becd3af030e3a2c2c175f5439fae8e24ce9c7eafb0505c6181c06bb93301fc8302b60b871636232f20d18e61fbd929509a5e2867424328281f96417e290c2b6b59d85a98bc74b0097225eca6699aa65b3d4df7a39fdba8d67fea1d6205c738187046518acdde5a8d35aab5dfae35a74ea1dfae35a47546fa23dc01a4fa9eebcd9a277d15ddbd135a521a0f783a07a7977bf73eab539df3d5288ffe14d59fea5e0a52f45d7cb4d6bdf7e67bd39bd39d9bf3b997a627cff9bca3be8be6f447ee44eb40ee66df0b6e7488fb0981c661ed975f741e36275f0eb4a88829451f58bada52089dba7e56ec0c094dbf5d5d2abaeeb7eb4c4853eeb299c5df2f9b714f7a9e534e39ad6974ad7df8951613afd2a2a33b997eafb44274b6df2b1f57d2600ed5e9914701174b0703d0f5b359ac749da215faedc21a7665f1816213b93b01f6765511f6977ebba8147beeb658847e91f77340c02dea437f17153ad5b290725b3854cd53d3f5e56c0b2b195df7d2fd7cebfa3ed6f48dd3b78dd5b1efdfed1ecf093b5df7782f02ece55d57b23afabadda9d6512ba48ebe07a8cef926b02dfd5a5989e8b97eadac3cf4f30667cf99f791abbcca33176c220484ebc9efceac383cbb9aef37a75f0feee7826702b8f1535ed699a7c7c2ebdb2bf09c00420ecd1945d1cde3b9414733daec1acd185d4375ba1f6df69488aa9d1fa48f6ade75a900ba767e907ebe3de5a16813e7a4bf77d6e9aec2ee655e55559e1b74f5762dec18a38fd533787ea0b5aab54a8177768cd1d73cf414f6f3d847c0288f03333885b902bbe39e538873f408b9051be7ce34f71478391e8dfedb5f1ef37844405114451f3ffbb9dd32c35b2b1cb1ecb3b9e2fa3cab5b3fe3b8572e7876cc13a1e7829cb3ec9973c37f7e0ec8f94c8f8765657a6c8fe7d91e4f4ee7e146f6cca128fa59841f14eeadcd9e535b66d0eed58d589e35c98d4bdca2e9dac42d4dfa774dcbfab962e19cf37956de7accbcb5b83e45ad31ebf079eb73a0a79f2ba060f14e661d9d7e75d751dd79f329ef849c7ee3e272ea9b475d1e7073a3ebc1e458dc04acc1fbc1f9e708b0d8b29c89b01272f11be2f6fffc5c930b0fedf76e0872d1cf9bacd1e4fe9c0e9300ced93aff7571c07eadd39ceaac73d699eb7d1401e7ec5e7e9e13b40aee323f003e67c32b40cf3c0014a0dbfccc0c08cfd3d26742781eb6cfe8facc6e26a7cfecf41910fa8c02facccffccc73dc56f8999ff9999ff9991fe16e10c0cf7c2e87007fba10e079ce6ea3c1030f749aeacb820e83bcd3752f05ebd3fcca73f9dcfa298f07e7ec14d29afd3ccfa3f3f14fd3f439aaa27bcbf023cec14226711bc69563b8dd7f2fe87cbccbc3d9f14e9e9dae7beb6bf894b7a3b935efc2e33961a7d7bc86cfad2e0ed8edb2c6f941d5d4fc083846e7833f616ecfedf0ce0e7215780538c055fea00cf0d7c50106f811702ed7d32228e0a6af3ff35470955d7fae85d77ecaa3a1790574f4795a7cfc636a3a8aa37b9e1d103afa8fdb0a8fbe0722dc0d328fe2cce361d7d737e8ea6368c1d955ded977bc0a28627241df9fffbb8579189e7e1fef62980a28fedc79e59120026fc7027700fa2df074147840d057d9752f3dc0a3bc10be85e7ec2d38333c0def0f1042ef644370c17fbbdc40013fa80c1f0208bc03f02ece3100af003d11708ebe7d8777fb073cfd04e05d9c3300dec5391ef02ecea9e1e9ef80c7018fe31cfd3a3c36ebe8cfe17dd6d1af8127001e07ee00f45d06a0b7837396dde6f30878868773a1c7d3c2e3c15976dc3b590c1efa0d4f0539bdd74bc1bffef509d7749eb53803a5104b4d5f504820fdce5f89b8cd2e38707ee69d9023f53daead7c0d8182d62583438be5881d0b77242e59f608e260e1966b00598d132166c41511630bb05c4934153191c4e242c80653084ad2844340b44892e2cbb8a2eb6743e86a21e340661c4176c468a903059d35fadcc8a5d0f7b22115258b5ad80c76f74e9de552df73cee9ab91067b95babad3de54477b1790a16472250b96206b3f0dd3b5e63862b7e5433ec4c1c1c151de0d9749c78f73c438c88e1f07987db7d985242408494850dc0f3f4e10b75945c78f23cc3e113c7c9d0177ac9d28fbe1c719e236a7e8f87188d9d7c301ea0994144d760459fbe1c729e2362719a370a4708b1f870ab7eadb6db993535cc77fa376d3bc71bb1b6e9698d9f1df10b3ef8548dc222aafca983ffc3745dc66a48effc6987d1fc8318545e9939514e587ff460ab7f9a8e3bf3966df6533d1352625c95913e40fff0d12b7d92819a6c42dfe9b1ba3db721fee9314bbaa1d97969d4bf3e169e72ebb65b7f4d2983914888308a1d5a0da5cd0cb519e46dc5a4d5bd7ccea76c6ac73f71ee24e984ed83adffa394753d2f98a9fe3e4a41d3ffb5a9215d4f39e9c3b09e6adea75d5eb9f9fb3520871e44dc70d27309a8a7e1d38b1e2a3a5736e8576ec9cf3d771ce9d2cb3ce5579382e7c88732a4044aa124c4dca1f3fd2f9b3459dff6ea9f3add1a41ea7ea6ad8797e27c7aaad585ac8fdba5f3592f33011a86e67566452225f949f05b3ceed37fb582d2a2930abdb353136916a7264d9ecbb258e98514caa0dd5f77eddef1dc43ab76b3421d6d1daf72b4b669dcb4f56a7ebf7f8a6a2a7fd7a7d80d179d857557441d9f18283da911b56d948cf92d1d91011214e463f54ccc686b3e7efdee6492622dcc9ada79a22e59febb1bb3504ba1dc77befbd57f43d6201455f43381b1f9c94b29289d7900aae39518573efadeebd7754df5b6badb546c273d823a0ae1fe59add4d389fd322d480189388b0280910d74f1739aafa91f3388f93a39ed859ab4165a9abacec2813398251b67b9c631b1523289de777d4962560601d68aaf244a243102aa7df39e4c1a40440f5a1b53ed1435403c89410451a5269390c49df643911465091466274de2f96911653ae14224e404034c9c25444c8082292085b4c05495cc941bab0a09a486bedc5014c15f239caea5a4b43d878a500e2f593cbea02eb69bf595d6f3b6b8a9eadcab154bd513445ffeca12a4fd754d44092ea167cec09128d668ff4485a1ed2f891da46746a26661cc5008266124618eb4db289904145a4f3e04d28c695ae833721282e311df429888f981cb71c846104c40d16079df2f3c2ec45da4bf3e06485097db4dcc189c409170d5132b048fc61334cb9e20206089fd4469766a545955b0dbae6c6424893d3e89e4c696a72a66240d7a230b91971b910858de9470b9d41535b91022bcb30d1966c54650b28f38dc75995a41c4b16484d883f6ee8744d332524694c5a990a29295a5ea090a9e01014b26814252984c10fb90abae65812d1cd85021ae508520c9e7b22765405b65735224643905b551332447b5a351b180a38121cd5a14f7ea008718576bea81ad7892515f742a043d7b44cd4c082eeff1b82ade2a0651571e5b07befbf7b3fd7a93dee64975092f39fc3b28fc335e5a9a3fd561d39e93cbfc327f0764ec91da05e70cd371107461c2f72ae88cafae7f3eb53ffecf1f055d53c28fa3bf7728a5fe886e084aae094b8e6bc45eb02ed4931865212a2df06f286e4cdacea2d4ccdf55bf5a6d42bf45bf5965545eb1fad8da4105281c3aab5d6daa9ebad7f78644cb93db4f7ae31425b60495c16b0266c2a7c924b2c68d51249d7fd562d8ba0412194157961131ccb1358569155477750dd42bf5945c334c803605643d23ed0d821e426c9dd584b5475a5b58848a2ee08a05f2da22b5da65f2da2b38de4278ce10485b2684506b682c8018795b3d222144244d34b0a1f6c3e674c23809c447dfd489283729657091dc54bdc2a1a414070635045aa329c9116dc920a62879228754784114828c1021c401f045a6f5e701c28a0c85decbb4929595e39ace078327af5ceb3cb24407d245eb20fbf05ce7fe9e709d45ac4e3de46aa6ca0fd7ccbd8816d2de2b0f37eb588421c36360cd8bc456bad95ba4e9d60c014b3744d41c96904d3514bbf3e8a5254e4740ca5ac1d694b52cb5d3d2756106d59694e9510c195c4418f0b192c546429193a6bdb6aa7a2c0d9682b125142729ddb42fa76d9c3bd8770594ee068f1c1c491dfd6fa8ab1f5a583ed77eb479c1beab3c9389ffdbec62946f1ed9df7f49d27949c563211d4cca1d48523ae858f64d05652b8fec845bad6da48d72d7befbdb1f4bdebf5bbf535d467fadd02bb412337e5e40a4a1754940f593e1d59665033c25008c9587cb8e2507ad262090b38e48ad97cad6093161c1611ec682a5bb5f0f1d162690f51f51dd3af0f166be91085a44df3410d5e2042c64ef488a8c164c919f14b48adcac50b173b6292aed70a174f2ac284202d8f45a28f628d0a24b051990f175238abdbcdf4eb634594aeebd7870bdee5a283b4762aa212c4fc99a283f8d345841c2dd9ab181fa6ae771accd0043b3c18d3b05869112642d733b6c09aecf5c4938f351c5560a8786a927b14f96852b1d1103cd46cbcb135d9a0f1c60035105c28c24000bd82dc9627c498b2ee90a326aea36208582c3eec3ec7839d9a7eb98e823924ae5bf6de7bd937ca35e74537382a5301c4d545c3ecb779a87119b505a05f2ea31c1d43bf5c46c429b99b7d25506a5995991d719ab1a3264d0a02fa45a6e5f820cae68fe28aa8f3a07ff0b85175b4e3c28ead5d15d20e260c573fac1590cb10003d8cc81c73e824a130c4a3d8a57645a1479619a12bad103a1e6b18d8705c08b1b3da82e9c1812db270646173c4c283eba647138d158a0b475c86c963b0803800acc8384ed517dffdf063d2eb83915fb88ac15b7aecaad6ac6884aa6af01e8f1f9c1d4b66ac6858a88a2283dc5103a689d6b54b1514137d5719c5e538e81749f5d65ffa455231f5018c4d9ac088c29a9e20b1fd768f529149c914e294291eb7eb548ee07bbf500d595163c60e668cdfe6f5bd77cd0f0ecc2a54587cbe7e28d58e4b4dacbbf4cba5e6a533102824ad3015706d525e3a320011510ba2f5c1eced22d9fc6a10b8a92c8d45aa21228671c53553fc740e2f28af1d5a6badf5de7befed55ece94e4cbf575e3f373ea79e3c2deaa94b4ff7a769eea9fe9cd67ad57aebadb5de443dc539bb10e8d2f407879eb6f4344d2faaa6564fa268ce59ddae25f549953dfd5dba63776c9a5e2c3d457172ce9e978b9342bf575e463dd7ef959794cec3beba1ecdb858aab50549b490f23ba738b0d98090092c4341715988b0b29452edfad37bcf53ab7d04dc934f1aa021d8e87020ccdd10b856439c6e646c6e7deb94f33f9f6bce83fbf95ef20155c26b0041f2f584c469882ae3e86815d959477762faad22f3ea14faad22e381320db390d6806f50769ce51b185072650430cb4de9c7466edfab734ed7fcabae9f9fe67877fd117066d79c7f3def89a6bd3f4fd8f5dc6375ce5a1e8401aa97cc09812acbbd39e7405274beb5558d25329a730e4724e241b6ac98d0d201fcf1612db5907cece46a48fcaaf2a450e738e7dc27c9049f2636b93cb162495221a1c60583431e87242e6d60150a8d45792245f915a935115ac22b21506e25b9a631bbb751eb2d207121ce6d02d0a8f554080864595a4995a8c07635d59696d0865cfa4951854896231468c61fcf699d23db9248b636a2542339e7c0022dc10de882442ea10a71ca08eb76538859e7f220254e2ac812a8245964d3cca88429cb03f46bd5038c43d9716951754e0f5f5697969619ca9cd65a6bbdf7d65a6badf7de7acf007a3977349259e7f2ad6e2ea3dbde7b6f1368088b2cf7be408c327c691959cdc892fc80c64543f922f42b1149d770ceb90b26d6b94d6d820bb75d920e210d15c66293ba8c30c800269595b800354caa32dcb1904a21c2c40c533145135146c611ebc8421333c9089d518a8d28a60532c51598166ec2112f4e6e4b486c53b1499b880a308c1d8a283c01abce50085d5628a94ab418856021722f8c2ac688eb9352455c911a8328e426c43872014d31daca6292d6ed6008b18426c8608e30c1d83433614213904b098ec90428668a1626148fc42b26135a0009d0efd58da9e73753d0df453be8d72a471a9b4f263b2e3bd7f294ac51b9cbde43c2868cb568adaafb490da70322d6b945a3d44309392802b562a7c351bea40895c32687eb08552400022043425dd10900985b8c16390050728cf1c5c3d1ed980063b0e5dc8449c94021809e10a50c1e1a7846903290d8fc5228030e83069427512659b2c6a2990cc2cc39e74618176c8a18b1726a9447a31a0dcdd87106500d0622527c0693cd0526c619c70b3bb1e20c310c335fc419526a6474bb659386080b488c349832e8b89a34aa74315b4c1a435e609698c9d268a2f39234d61081813513d6701a400531660d2230148e0c6b30615c50fe43b8f5550d389a9612ca949973cea34cec725ec028a80ceb0f6454978dda558c62d670afa3871dc4ed48a7bf943164d2312c16051b86bd64244db30b58b7334b5ed9c052c339ca4b0863e65cdd38d25042722787822d76ab5c5555555555be4b6822e406e8f74a87d956b38a4d9dcb889102041b5091ca092bcc2c1340594535d5288ba86146f44454c491cf8e56c29c90d634c965af39569853f1de308a3ab7913490a9f871158504944f6ef2c4e109c4aaee38cf7a01a2f3937307bc48ae6b9693db8b0360e85a380c268cb6dde5ec6f1ec112a7764a729e0229c8a999752ea74289765c5ad65c540b6f692102c43a37281c128b0d2062dce117b73457cae6de7b7322ce39bf5a11a2463d51be5e29835ad5aad66a8ce69c2b9358e72a970d5032d7755d6164a000875a53c90356589cd99598504ecee3fc4ecea5784213391feabdb7d6e8135036c2ac1102eb7663c5ac73f971e8c858038e947d790919696a809127225f875a459eabbab13a842d814020d1b119e45e2c20b7ce9b41e68ed5b1ac6ea7033aad60059f3cd73bde864030df4cfc10df90429020347c2ba2086abef5182221e8480288a18f8f2c4ad69568ec4d28c5a88466445186342273fc9ab34805b546727e2c12860997430ed862aa85e02a6665bd091d8064fa0041c2015ccadd857eab7ebe9eab70ab9a1babb075baae2b076bc23af7092cc739e77c5dd755ab5b08040247386909f68b4585d5f9efcd832be79c2b3bdf5aabaa5ac5a14a5755555555f5eb897f45f12f2afe85c5bfbcf857185739e79c73ce39e79cef95828a753b2f2aac73b1bcc2c65412bccaf48eaaaaaaaaaa9c73aeaaaaaaaa2ae73ac8aeea1094d35a6b7d8cc23a970acb2b6cac8c84a39aa652cfb6de5a679d854020d0888c23fbc5da6aea1c9906214f187d381bea8ac12333015bd2b9ba5526080ce560821684c7d0485e5235858452a2f9b1e3d2a2e6a66cbdaa17e79ca83aa4987bc287b8a95b4532b5d7ade45a1f81d15a4c4dac8d85d13f5ae370c1a12591609b51fce94cd63596585cd74688bade7b6badb5d67aefadb5d65aebbdb7d61bc89aee50ae1caa5b1c95ca3a97ab3d5694872df9de1b47df7be322c9ac73f9de7befbd35de4d7d6fce39e72871cbd09c73ce8934b1ce2581881b6735304c55b7ba552c21c54d4211e3da12c49ff3222c30e4d671a22662eb2493f3175684b410e20f8a344833050854b703326c418284a451aa846e07a4d96582842046184b221280207174f43dd8a95ac2f4bc69c765afb92ddd826aad75cb5951e79fd39c73ceb956b56603eb5a3fd75aefb4d6576a635deb8b5bbdd535df5a6badb5e69cebad224131e74c929dffde9a8ceff3aa39d6f9ab3a49dd44201048820d2dbd57cb207b4595915bf16e8a548eb7358bb5b9f2aeda862e9cf3294b2e8273ceafa0c4edbd7786b2ea58c19d5cee0802d547ceb78450de26fc8075bb284cb120914ca80152aa80379eef648eb7f02b2f724b0e868b3d81fd66e14876ced50c82cbccc8881957dcbebcd864e7bf13d2f9ee7256b7ebb7ea4318fb2beac1c3d009ad6a2622e72b34935bd6b9dc438ee1debb2999752eef3a88cfd3165a45728259375655adbe6eb734b654b6a4b6d4d6b273bae86cf2d5b9958cced5555df7b1efcd4f156558e7aaf1365645dccec30f611d5e84757892089dffba8f7befbd3616b3959ab6d2d3568ada4a547b57100e1142391993c2443ba264296e85d0baaaeaaaae304b3f59a29899ed60b124c90a24ab1550472a512d40f69a6b897a5135efbcd76377ebf3b0ba9dd872cdadaa56d3b2727b9351916191799185a9ebe69c73a7ceb9bad5ad6a0ede3aff1d5f7b3969c9162d56447990735ec6a1ec672c972a01a6218e307135f9727142ca524652465456e26c06d5edac983c21f5cad9330d0b5fd57c39e7d76a8cd939df2851af3f14b06e974499756eca3b70ce99b475ae16e99545a286756e1b4712c77ac03a6b92a15f551e8ee6409c735074c5e8e8e48873ae644d815608819295a24993214763654d5d555f1d299803a8944a1cec4ae894b1191000000000c318000004302408a22c4aa2145bda011480104f92424e4e38918703c228240663190641208061000001100463180ca3509853650401c20a02017471a711a91a4bc6a7427e565cb979b2af13e082aba338430cb1c0cceb2217bae338af088b9d36a58908dc57e8e44e1c475e5ff138b15aa0e32fd60ab1bd1fe093f6c18529115f0eb08eabdf3da13ab0ddd8c400471f7192b2d1cb7d800d5ea4746f2b977e55047e22c88148120cbb6bd32d7122c245f4b2864e7248eb53a0017916174d22423ea70fa65d418730c0aea18abcdfbaa87536ff6a408ab9f87dbb6a1785899a9d784b615d551763c52cc1bbcc5b5c80e64820f74b023260f29a6161e293ecc4c00f5786af860962ae452630fe47f9f1900f49a0454a18701c6055c2a932fe60d1bfe709b7ae656ea1c522aaf060beeb9f59ae2be4931e460b1cef75b27cc9cfbb346787c26d8866591f3492eedbd5e9acb5582773bb313fa502b6802c8c59c0e25d1a3416a6bb82ac9f24e5e246cc72eb5622f79d7e0f68fa16a91421ea8cacdd49b997e31232e9c7b5a6222bdbbf6e518db04bb22d0888079a4021c1b9d7285996017be673ccd5e231f03997460aad3192e006973b9a154a7f438c01a58c4f85af831cfbf77a09203ae9077ecb494560cf27df05c9d83c50645eb9205ae911fdc78a08ded59d1dd13c8b60e40869bce968104ce6174afce95193f59c07a14d3e847ff04065cf03a5e2d014113549a81c6b3ec9a913cd9f80924a4e124e9d220ea111918d20f9a4911f7a6e00014535780fcb22927e385c542cc0f1be54aa478b78c1112308c496ed810011d93a455a6a0ffac4204306333581d4e3349161f41321052e5a38f2423249804e5e5014980dec36de065c8da69c46fcda1e4201b986ab90f75ae7d33819f68b3b8503360d2b18a30c8feb1a872066098bc1349b50cc321c8e6bb6ea07bd8b5b2753ef4b067e08819956ab20ed679d571003654a61cbd149839875707b32f02b3a8480bb56ab90f7f38ed33a9b73bfb2c5a92494c05211edc972ccd95710a30cdb38171b785e8d094c8ab9f26c112df5c9e9321ba718a2cdb72c5425b60330e4180b7f36d1a88ca0d64c44290ed9752c238a3c2a4234772111f3fedca578d61f544c9f4f368e74dca58c1ec07172ac5b6ae411f446011ec4f105451aeeeda754182093584754e322a362e117ad5cff42cae01deac4cfa23ac67218a14032af9898b7f0434a50ae4a9160e979bb5ee76cd69ba80e202506a0a414014716dfe8631a8beb9495337242fdd43aae154134072588ed1eb406837b8bbd2d3df8cf577bb1a09434296bc095026a90812524a513a75c524ad92b53d661504c4e93a33cb2b47277134e1e25d1c67b1c9cf881df4bbbc59659aa37939487145f758ac7c7a0be926231cba12b854e219ba6baa02b52718a958a310cc9e6cb110370a34ee0052f3c282792fdba9d2a7d1e38c46e06b8cadccdbab3e09c90c2ae0be69d81ae5150d51af6fa36ec26dac97daee8e195666679a2346d2e26acf3e09c4c63d6924f826261592c5615943f52bb29787eef8226926782496db2f446d666cb481325d55c4df02e4121699aac4c8e00a744ed6fa65897033c72a0991f433937991d6ec19d7f19a3d283af2afe5357b63cf14e1391f97dcca13e4929563ff0422f141425a5994d8e285dbb8b1965e7118212bd1244a21ca048b8515bccc6be44784fd7ad503824a4763dcc3b07b6b2ca094af79a0117adc832251d44f66dee6ae275a1f8b6b2a7dc5ddda64b50569048701eba5faeb0a3888668104a7e9d3a63649ea7235a502b3c8305dae7038ce93b0a7f322465abfda1afc1dbc7fb4bf34db34771dc7e4b3ba42f028fd1a7fd02bb349bb26567a880fcbfdc559933421d440508bd08537d83a298e993b71fd7212206eb3234cbad8fc0e90db9f9a44d8cc65646f8b8a1acf538bca67edea65e11555ebe9e16820f1f1cb7291a79540b4a3561f40d6bb8fc39e810a0e8235adef07ed0b58249f2b26fcd2befac81f78a91b2e892b71acee70590af61e9eb0d1d4ec4c9dbe01e2527ea56424cc391dadcbc0584a768a79f510a8f1e9dd2878a3593ec11d5d4daff3b369a0097acaa75d6034d1f183f7e82aeb1361b91f43efb539e184e2c49302e3828123dd3bb09a99270251b5e4d5e69d69356b283867ac013beab5eeb79a4abb304197d8dc2f2befa0f08bcc27abc4684c2887dd3a07bd00e98f220193efa397c70802fa05226b0251b0df18f220fda729c5c4300bd329dc183ad555b4abfbdd18e850ab67638ccc473d8f100b047b09c84148dda5ab711957840d4bfaa2263228a9b1bd59e11b9121b94bdb313717fa801e5612e3bdf8cee4dbd680932cca41cc729e114e04a21a5ac897e68190c742f19b6437fe635531c54086845ba18cab70cab02a59f25392ed277a31d84f28ec829fa358548eda9196abc58bae2b0620b7acdffc391721d6429a30cf6b1355a46f9d17bfcf352420087a469ceaa9d08e02486a825a4ce631ee3491894edc8fe54878966601094a03e5df8d2495e02c1842eabb310ef13f5957183be1fa8659590303959957e098db6a315f929731ca417425694cd31476b9519dec40d824629574007c82810629dea080d3d2879832683658b5171e94ad1b81b54128226d4e3748bc15ef61eeb8788fccfb63f062464096d4a674737ca5c11d9738aa0edfec9d3b515a73a40afde75d547611d21b82b0cd22977a6e5d2349d177a8b88263b6fbd3fc73018738eb0719b275b63ceb7c207951334dd2bf1a693806d7eae0c177d3a01897b141227eac27d1d3b8f9a64ac5a17f2fdb34d9f002f421505815e4b2bb98334db10684af4b02d19068184702616fd72251898a7c739a6d8d696758218253039be18f42ad7b74dfc94e1f4ade4eba9d7841e9f8be1c0f295a70c812e3a149557e99e6abae2eba3e706a1ed2a2ffa206778a5db38f4bf5b5eab889c1dba717ade009945a722c54c3537952b372aa9638ea94d72ce9a344e1c928aa5e3efc3c85990f1c7cdf4b2bd6c3f0b4fee4cb11a4d38062a9f674f0ad6240617e39a919b4cec272a071a643fd01e9a8d6557f92219e67f2d1445d37f11b33c4683a65692d6aeb095069a785c024226df9bcb415f3e4bea68ed2d0a1f3fa05eab236bb68dd38d78dc9d0fec4a7173ace244034cb184ccd18b720c194123e7949c97fa35a32df9d08981ea97140139824837ace7e56c5e8c69c94f69b48b2a1215314b56c4e9c87508e0c8de47633756342e9196e813894222f437319b04f75a3e4f6619108e16eea8328127fb68883c6c3930c93f0a5c457f5f76ae5fa89ec42613cf38d9fac85b9108813c30a2a8da18fc0ed0fe48782da50f6a00f4a77dc723b98578d7a41c0aef77b2f54e34c4c28e4916f1642f365dbcf3cc0245ed7ca2b3119f6ecb88fca4cfb9a2ab0da100145278620294f6f1d45ecf471c117bd58fb5d881208eb851da8197601f59757f03b365761e941f8266462e0c00161b32584173e32e175f6e3f262acb305b5f6e8d7168613c6067b02bf03671a540551abe92c63cba4ac434429651b3e95e347780b867964d7633c0b818bef8ec0db385d7920e7a834cff6f7a1ac638f4d3756436db5fde755db35bf0379dbec0d79fce127e1968bfcb5906158c530e530a4b68e4b2b0c7e55f0015afa6ae52de9c36a8c186c2b58c7d778d6aab87a98414152d47507ffa2a8116c288adfbcacc4022810e305f8fd73afcc58c76c67ad0ac449eef96e3d37b0014dbc9e3fe87db36aa495529cf78989d10e7d4fe0556e767496ef945592294b7e78de6b86c704fb9f62011ea79033adc9be421d16b046999ff214f2802be02b9e78aa68a7dfff26588085e478dff058b02e8eb864b40481486ee75c94ce260683d887cd283e2e6c4e1a537c2f30957b0b1814ff1cf78b0a85c4a52eb08f929da45cdae0bf7094b9280ca5ce009d7572ff5e70b2319aa12c604ac26c7de2da4b8ae56c68e5180f9f623a79822daaa7c70ffd8c52029e647c2eb78c14e302f8ca87702b5fb85c8a210c504f3dab08b62dce9853409553b08c1560d88610fc1d29ee6232c0fb605b0d3d0e6319dded9a5e1a11dcd6db1620183f306fcd0e9caf5cf58c4b490f90e5955f1bf3e0eb081bf459059d698dd88353b98fefea8f21edaa441b60d48e28d14fac2b2ad552e0a46674cf0f2ab9746846ad8cf7b38fdee17bf594871fda5c403aff8faf0c31b71cf38adcf66b79b67362d0f0f5e04887aea76b23914cc657639d67d2aa737b43e67c28a88d4543a80904ae448862f12a97f3172ace0e1965f820a241a2d154c7916c0ed2243f892f2dd60b6de03f6976502eb395c8f7435e6068ad9438702b1afcd8c217090d627df268c86f41c975d97e31253e7fd18a886f7efa1848bf44f40479de73a40740b5cd4ba9a723bde4aebe646c93de42249f68b6bad14ade96dda1f1515470d07c65c8163f7a0c7f441cc2c8192bd9936379d33e9815495a2d7a93dcbc12b5704344c4a70701abf275c6eac1d8f37b0dbfb04d4d920aafe0487c33022fde0de60614d6c70b78b086c315386108eb93cde66903083804b95d1da00fe5d80f3304d6152cc950f3529067b0429cbf261693cf16521dc2596530e273f7b6ede6a9fda3c76c429530e36cf85f43063a0022ea6dcc4fd5bbe22d57581df2c92a5e335872b7b2a79c1baf2ba451ff5d8de967acfb82cab66f345a5d94155a1f29d81d02834d5d75ee0feb88c6b2e1cd6ee95578c76414e367e306a188ac27bf704071ff2f291983fb3aa5c191375a7ecfaadeb1da76f4838991326482b8932e10450450a8359143a90ab94d2171c9086d66cb906789489b08037c1deceb37282fb2982cf18194669ab0024cff23878f42b6f3741b77598185f424d278be4925975576099b3d2369ce9a60a391a4b769785996a165f8686e7bb4221038799a19c35c7ef3841beea9d2759c6ff9e79b79e0c7dde2ab927a68c5fe6b127a243b3ddbd7603ce5f1247e3e711bf2dc0c5e3f3008164091dadbc71b3a89d0ae61659b7ef0ea8f528e8772a026a442646b30d9407a44d39b90dacdcd43f1d47fc28b478a960a08bba98d10b8cedb9ce9926cc40ae053015691e5969f76d24a67ac78aaf49d7653eddd69965f6fa9202c6673f62c48e1bdf92f91ed371cb61946d3063b90ad5ee7164934197ed18b0327c3e92c303e75273ab1fe563258e18b6a049490b00a012e64609cd55fb8f8d55d8a3b353325f6e1853b2994cd04946846ee9810cb757b595ba3bbda72cd77582ef5b5a85c849e9b64cf999851d8c53e8838362a0d15b8c99b0ed729277a28e88c90f6e7245e2313c3412fe778c9ffbaca8d034d0d294101629f36de688554aecb2fb050f1c80c68481bb656bd69004101c76cafaedf19005feae9329fd590d3d439f204e767a0546b9bd3e133950b63deb092b4235bcf19b3d412761486f827f316869bd98a69f1c8a80a27046c8a3cbe35c359a0facc5335b3b3c481c51f9f37af8be7598eaf0e166c7acd74628100a340e0628cd4bc7143102da0d7ceff3f56fc37bc0c8e6fe9a52b3248e7412c7a2c2da9394e8a8a040f613366800b15124b9a55e07a9183456d907a437b74c05060b23789467c642d12651edf462c24870b5c37ddc5e64f2d582817f6f5af8f0b6bacd49987a439bbf128359669c5da2fb639dae670b47e0bc58459e9a385052e90e635168ae980b392e52b62f77ad9a9686484c81524348466c3199b715bcfb7b677a1b79798023721e15f8bac8d5367ab479e6ebdfb620aab8fd9613e1ebdb39531b2f3ca812188983726cf7ad792d74b15e48952630c058af547e1236db01af426f200f599f971d43382f7d203825bafe8d56f1e5e8231b929d05017da1b269fd1f7b2e1bb94fa8f73fbe459450a370c0cb0d3f3f2c6ec235f1948be526bf4e1f5a9c33c871de0911c353fc29dcd02cc3d6240e46eacdb1c62dffe5ca2c25bd3866e16e89ee8fc99b2503264e1c5c4804804573eb2fb1cf98498f4e423665f6ab84f9748ed65ca28c72ab6d4074574c00e2ba7cfb5332afd19e381d9aed07f3b465fe3f5e8e6c26a2c5e0be917efc57336d6ed6d69b10de4e9d08e14aad82948eaa3fb977ff2aa9aff40c264ea316697905a1adf10e149077e6b1978b50994b47600509170e63073c425f45a811929d01d6e4290d6169564aa22f4b497f7f76c5704df3dcd8db3fe8507edf5c9007e1e4e23e49296a8eab7619e74bf0772a2f934cf3c6feeecf52bd6ffa6894824a4aee4ca7a2f6cc20769b3ab2c8620c1621beb84480672c3cd448a35601789f09d4a99ea6284f03fefd9e6c5d21301499c2f885d207691729a217ba8da1ff5ae85d483d041e7bce563e4bc4f5b09df73111b17f7141328483d1bf3bdee44ff7edd64777b08454cac5af8514db85521313bc92d9e65f6936020b0ecb7cf45706372ca1a03d5c5471b1024c6c599362806fbaa9ea19a2ef0d8a3f9a99d2df1b2e2a438d4e0d45b1b092dfad048a465d392b1c99eedf39c9d2d623b5f47da4df81f9beb7f1c9dd52695c7842301935aed54a2968ea2427b22c77a3479f9a3397a6e5b1b73892d92c2faeccbce35056de764a7880ecad1142913813580c3adf005f5f96f451808622d24dd22cca616b22ebeab422970e242ad6e4d8028a23029210ad08aa4cbed01025cbf4470431807f8d9e3693448184aa45bd437ffe5549aa2941bc12489c0b603e5ef395cb77136c113b150a88274515b57b8f44c2ad9d01390b6b179c02d8c492173afd7e0f499729b661dee50cd710f4b0a04a932c42d8a318f152a471687c8fb9be40dc44eb419909e1822d5308f94117853a3ab65c885af4f749732cab00a4a170d6b18654020e7e43c1b4713c5affb27013434c64e535b37463cfc5ebc33fe6378ce8f96490bcfc3e6550fc0d507ba6206411da1cc88b8f5041c4fbdecb9eac8090d56e6b40e58df03037ac0d3ceb0defe3a6d5291892e832b89339e08ba90cee5c09d7fca352fe488ae3d00ee52c29365a2ff89014cfa29b0bae5e472847732a5e250b40aa2bc86f5890346338249eb1876448337a0c6c08fab2a8c0f37778391be01a3a9a2022ac66ce0a5fa04283193c3bd2843130bd32a0d932b8f2e7e04aa2a8b044195bb8f27f787582a8b0a07c3d9ca7a7f17286a180a05962b813bfa7b68d0b56af2b956dfb08af921990b93b330b01f465a20d902d075e1be6ee58d18a1d50ec3c71814311e0db2306571365e4265c369e488143d8effd09c3ab8932420e2c3b4fccc021d377be0df28d3122d21a79b8f7fa331d9e841451445a5a26fdeec750bd93c720a131dff9fe67d6bf9c29476b2020b01ef3e6874fff27c787574c6b1603d5422c2dd053c33b3cfe07c1faa4fb8c4d726a365cf7914e89fb4157c911c7c6fbba0820ac95a71802c91e14172c18b57b7b76685304162909179b286aa0214f77befdd289d81b6984d2e201a8df162fa050915b7f60285b15c0b3b5a180ead4e30d8ae9f19423558a4fbbee1e4bef71eb894a8aa241ebae920570edc52c27c31a7e570770bbf6966643103cc1389097f050067ceb480e139fd751cd868b01859c9d0911312ac8df8c6b45b70042d8660e4e49c920ea0e806e127ea77ff56ade2d0c75307c02ff545adfec0b85be75cac2795585306ed604ba401bf6162120f73746a6177fc8ebd33635e7c5a3bab392f25edd3e63bd1ed4719121bf973fe3f07096a2e153520cf76e8770a82e19cf8ef4ebd5017f2fc6e86429833fd8d7049b75ed8a8194ac42764eaed70f08d550652a489280c81b21d709451173e588b92bb6f558296cec3a2ce2f30f493c41cbbc46dad3db570bce73a3f1de12d9d2aad1b5ce2c1af24779b392f7277b003a289cb8f6f240704d62faedfcae641b43211f5861f99d7c019d24da43c0fbb62859964c072da2dae2c0f192aa6cb06be1051ad22f214034381b119b1110c0dd66c51e81f2d696b13b49cd1a553491fcac22165574447a172c73a0932174c34b4f1b6fed96d2b551d499c258de4dac3244e6901bd01fea90f24816ecc7074d3240c1833f0c2bbb016bc1f08d37b481c026e54780f19085fde263be4f8a71314ae02ff0532e62e004010ebc9dad74a10101cad86cf30f04bbe48fb5b7ccfab33650431031f53b18255acf598d227dccec2a8fd8c9072999ade6cc54a0dc44c94b9e539bad53a119a39c533a4d1868787bf2f2e16ad4f5db6fbdbc0ca58774b6ea3358685d11efcc79116f2f13daa521557e1dfb45d07b8b05a3d206b8105ea24bf30a57e0dc98b9a03a252158104d8bc4890e2b930eb3958663a3832ffd1fba643a87b46560a7e205aa7720d7edccef230f09c0a32bd8f1054576060d894c5c93946e286198d705ad649de812c564d227e3748df8926f9d844f45521930e65ce71b78e6555283edce67722f89b322fc74a1b4ac84c5f0d1c2a63291d54b411be00696e220fee74982897adcb4c6ff15bb06ca0c512cd0b501ab15d3147a8434b9dc81b13b241ba9cb0cc1bf7fc4ecfdc00fa21f4d9f358a5ebe8305786af7eea25aa290d89daab5dc4eb1248ffa6230f545b15b724c2c60714c8b6988c8c202161b3c76018591cbf412adfd168c4f402fc5dbf16acfc466b279443dab5acdee880bd87c66c0c84b50694d037ab1f721aad7855d0568ac4b7ee5d8a7844ba5c8a78c3ba5e275ca81f5fcea3afd98000d06e1e7dcfcaa13c9a1eb3652b778459725440d11a69d452262e5e75ccdaeef458d2cc45c014a5c0328fe1e82350cab86cfc1475334cf1b68788bd64e23fdc9bb5aec46b8b483929cdcdd97fd0d131341c73cb7d1298b780d3b9da7cdc09cb197ff99e8b1c15947092e38289bd76052d63ce508013326f5e336d271dc13ea3652195ed7c0dd4aedc460bf8ef2a51d95c6f99ae249fdeb313f9a5d96c3309d322736324ee6cb8413e0ec31a9e7844b3beeed50f9eece435090717f5c59bf8ebb742851c308e80f528ed73b60513f810ab1b7ee27485a66b3be76938a65959628d009b1a5a6263d19accf54741965bdbf9a6ae761a526b2f2f67c28c0f912eaf59c87f3afd89d9a56b7912f593e08548d16b2850589f65579280df9f5cd656d9024653063738c92c5db3a60bd852633fc88d97b3e9dccaca6d7de30aafa37d4850b10384bbfff5fec73566046baceb493b1849ec73c1cc2e549d46ce60d02e600199c6660ce969d5fc03075a564ff008eb5fa9b451f7f008a157be54d508fd7bce4efc90976674cb0ea031df9485d601fa0188b1090a96bea8a83b419c982e411ea3342de3190c8301762b04bc6c16126f555efefe7dff8130a51a74d1cd6d31ca21161f0b1142f7a71726ab7898907b910e8042637c9a269ae4c448794dcb1fc882380c4fb0d47d8a4855f97bb53fde368acb74a3e5ef4b6d07f6b22c70a71777b9656d0c42db3fe9030df4081cb47f81dd33e0be4d71597bd8ebd41769639d6786cc7548fd041f3a46c2e13c845fb6557dc2d2755f6a66e366add5950d0589fad8424397f62a239780e111d0596ba216c8e08d4d7a02114df1809235455dcc077ddd8270be92f488fb430e3fdd914ec627e098cca3f331a6ba5009350fc2df7794ef4ed0f03125f67acfaff92a7d8214f555407274d3359c2d05ed9b5761181e33a5b801afcfd5df950e4f8d3ec4344d5e68887428bfc98ba96bb73a62229ba3f321666a8dabdd8bb7f51f785422be6b5f3a10ed484df861ca8e937ffa4471a6de2ac54073d809dc2523520a9323779c5417b3c1b891f8bc36eae23eabbcff8c0cfb74c954e42cf94a9253e537e72e0c6e94554c04d8f7e53532f9c1d2f2ac59ea11585cce8d3ffffef4ab1f03cf2c14b5340b49183d581851afbe7d5826f0984f7d38a5ab37c7cfa1ca35bbc44b067978f10ba5288808a70570100a6e7c578f7a8a388833ecf8f247db5560415d34be9ec9bde7c4430e4f87e6492314a2d0fd8b42cac26cd0fa39ae662aa28e8761ef9bd3f51f4f284e3cf915566dd05afc6483ec2e9ee210b0002ae09cc7f371348357c7c9b8dc55267ed3090e25949c33162b7fbd9b4f34a17e587b870b8372fbe9cb44b3b37ef6aad5d4e136dc9cf305ea3bfa9a2e7de54a8047076ac55d19e23208d7c6dd9abf2eef9b38520c507e4589721581e7a69e5a8834789b67d2a241dc5c79096928af1321df1c33efe29d54ee3f5502d4e1d991f4aa252eb82071bd555fe686fe34f6a9c9833332415237e0b8b5642ecb19ad2d9e3e519dc5a53588c5fba4693e4b72ddc5bf99000d2eec65120c6d194b7c2462beb378c91d0e2f40d48ab50c47597b898b3d55cfcd9bce9a7eb2be9ff8e431a6658b50188628be94332e8548d1361e29e036edc4035cc2f821df6cab40ee864066603eb14d1fef5e2ee000f9962e895d7808a2ec04ad107791095ea2f72a96bb49fae99495bbd8221d9cf77de33b12d97ee872aa5a276bb76419563ce21ce4306049b2df7d423e5568e47b32086418d31b9a4ed895616026cc0648926dc2f38ee64fd6bba7df25b1eae1bd4f6a20e07a3cda0b2522eea9a13585a8dfb1d37e00f03c249cf6b5576192ba374264361d18264611b539b9d5a58070c1e480929e35fdd49815c49c4cb5a5d3fb50dc68b5f8a4da0694798234c7a9b49cef9dfaf7ac2886e3b93dfab747f6d4142fc257814c9e808990cc231f0adaf00cbcec64311a8d2893cb2e92f78417f3ad2b94056f0f6affd1359a8cd3a28cffe50f6ac7c8c6fbd05a25d422943d4ae12f3a575211f3a6cd50652bc2d6a4df0f33e313f3b31ee2a63e21a2b0c76784003ca6ad9a8c6dd56392b6e33b8a5f4c580a371c09260bf71ad7efbd20ae28cc6d725eb2ced6cc95acd7d5d355d976c067969caf9e8c8dd4c6b7eef51121be8cef05ac359c20eed612fb3591e006c0e05256c355280abe216569439755061b687c035982c9f0a2b3d1eb61486764a0deb8c44a78662767128c70ef7818456c804b34f9b523d59ef1bd4cbb398ba4b532564990ca950662c88bf8fd53c163b455f28082c5a0fa932a399424f455c751b007a88740befb021c63719b67d2a2dd4719d026cfbcedb72ee54ed531007598d8650ffbacaa4c711cd9ec1e70a8118dd978aee888306eb9c2003484870951f824b75c082c46782da035d87f717cb946f14110fcf9a8aecc272bad93553cc33086ca2cddc43cf61af146bfcc40f5eae0fe8f9545c3fa2e7edfa4a3055c4f61831abf8202a56bbc3406ae3d31577e043c9ba6734d5617b945a512e03d8a2f385d0dea5aed1a670a08e53b810d5c748f72a149dc9c1be19148a8c5548cb87dfeb98c20e23db6bd1ee89aa553303dfb6b1ff28535094c169d6b7324408449e08ab5894cf210c854cd12b1105d96404c653d194819248a968c4430e84f666281ff1f24cf7907c5d66239353f8248f87eefa5361af39b966db4b4ada0569ab0fb6cdefab790737a977d64507f609ceb50fbb6b051da256778b9406fa81fab3aadd9f463a710ab71b9de9a42c1093057ac84f0b27f4aee1e8f33c7b48fad91a8ac2e9c37385902a2dd0893f48f888cadb7aa2fb385f7504f6516c07f897050aabe80113e06599034dbf350cbf3f31e722667ed7eb119695cc3ad06c8d37a5ee58a20853370ae3034599ecb3c7e16187acdac8dae7ef02be4fbb1cf913d9a94119d64a263b607341d758567ca34ee176c59c3e5620fb99db40b246c5e136af30e8e1c33c22b18bd92abadc7dc3181a0f012b67d6ef030ce552476fe3d169124dfd511aff0bf4a1b38915e44c88d19dc3cd2ba9b9bc39f485ac202d26fa457bae06062faecf6e0383c10fde704bf1fdeafb9cc47354afc3c48a01a2276cb05de1409aa50edd2a235b0c40aeed93a6d6d57f5ab9615c9c9d5aca1a616a9e06691517995366193f8712e08cedc4628940ddc97debb3d34f391c4a820db01fe33efde0fe8a5591ff115069a6036e5c49b7a8dff639121c86106f02483efacf48574e3041c55df34bc67a14fb87c7d9ca130e99f72d30e34cb7ea88bfe6eb86232d091a2944ad38a09323a730dc232a38cc20f4cbc130fa94fdd413ddce1a7e0689a0cfe585120166d7a8cb9be08c0daec008fcc17916374034697d02c39599f8d5082aac320877e141f5fe56983e6e404f1b808872d25eff80ab9978824b61863b803df0a785ea05c6c950cc1e4265e1f9f16463837e5e4a8f60b9db865c8e3c87e666c8f188e555f3a6a6229b2267d34f4b684011707a7a2d30ca57ac735abf2b3c596233b252d51486f38f0533f721aefb16f9c3d499ed316689799ad05d024ef4ee73d9555c90f0e595345a11d022ba77abc3fad251ab256893bb1861a3219f4641a66435cc835676707e020bdbcda1e1cbf59ac7a5e263c3f15bab60829a41fd92932b3010aed6a86bbcc010fc36505714812fdde29c1a3d2aefdbdeb4859c0cee1d3c78a1dbde2b1b959d211df795262274a6147cf5d75ab03545a3c71442f72e17cbad216ed89a65ac49fe4d4f806b809b46b30511cda7d7173dbab8bfcc556d88b1bb50694bd550ae28cfb424237a15b93c4a5eb3d63e05a6f1462c17dbe2cf60e40eb0b95cd437e38578d8e4fb3a786dbe579abad07791e03f04e38a9132e6d6584457edb641c47f812f6bf18e746c5d3370b00eb3d373532b94a5c2b24c6bcb217e16becbe35d42282a14486a4ae4145040d98611c968b1b01c2b9da488ca1121567e655f2bdd65f58c0805318b3a5c5c9ba07b230537bc2c2d8b32964b38dae86d3603d14a3511a03ed467a1a98226d305755d3538a203c4d5ca6dde2dd7d8e72f1cb9511afdb53a9c34d859263bce66970412d07b372c82bb67408e12a336b70e245a533f51566aff4589398a9562733596bb38c472ab68fd5b4d2946ab11b99dac19be88a69eb8b0243f2e31b8d0c29aab6106686377da0dcb5509ad48b730a3420355f01317d210091d8fe58093f404a1032f2acdb33cb6d2c69827446c7d33868911d416991052dd7226a2413b13da8e802c79554cee7b147bafc75e74ab522df53f3029046c970bbadcbf4223977035fc1817996512c4894bfba4e61e8a83139d2b48e6a3834dd4c6c9fa148f31d832785365ab4161d536528454d500515d46f3537c2ae8c2763d890762c012f6432966684feb4da5122effab38174f1d8ed0c13a3f2d75c08960a7fa404108ebffa5300f3f10fe57f23aeb4d1b4aef9915852831be8ab764185916d140555f332d4e5b56e5a8ab20762bf16c596aafca724ab2461750d0bbd26e9345614d411b5b00ba63e8f49868c47d7432e2b366519e9d5defe8b094c21b287936923ed85919df15cded67ad30c0f190a2fdb76c565d78c7dae84426805b964de4afd1cd7c693874337ecc2db83d85ddc1ff058a273a5cdc681da7ef3d2e3ed0276e82404bef70bd0d92df28085080c4397f0c1b3c81cc2cecf8334907da0247374c6cd9ce68de2b22d4edb9832580059abe873d35637a4f872533d55e46597da089bd8db257f2de2b3d580bddf7a4795c407dad48fa0750ca11661ee4a51e671a71eb56b2af29e10fc8916ab7af930974abc0c96e2ab866047a824e1631f200861eb51875705d04b75c750f2657c29c0daeab7fce65111c00d44dd457c03059e4a24a13f5e82f7d9e62bdd7f3cf85b079645a4f4858c93de507d364d9c20b24f425db0f56ac9197e360d3d099ff874fe48f2f536724607e268a45a9281dd13d2717dd8e67d1dacf2cdb1ef19cbd27c4b889b27afc00542beb39af39928c13f44482d38ff5653546af0d01304241263e9331b01acc0fbbee208db259d12bd99ccfd8e64e339de4499ff69b24f4779f0c9d51fb9ed7858491201567d9e442835aeb89d2716f92a005d495c51c1da151d1d558a3dda86893208d39389d9c72cc0cf3e3b505837b33a78ee52f324d869fe92106cbe16c51de8eab020d2b1b15154c1c109f5040c9fd7f5728542ba89c4f5c631db1043df3847869adb06e17dbdbba6987c184a84106a78d3199af8f090ab1e2aa0bcbff8706b229537766d5222480138dfd55c101308384b4dd98e59e5bf63c5ef10f70ca8ff3b07615e876ac3dd51e85469e554b9050478376d59e28ba58ce03b240e7cb204b334a9511c916d4c19e14f842e254678e253995f968e4f4234b50ad3bfd749839b5a3e1c32b6eb88a543538dfd3faefe4687f869dcb3f9402a71f3c15ce6183c654fbd954b33c68e69f7d8656225fb0a74ff867acb831ad6c5d15859efc30d11687b7dc7d39fec634834f352a2290d37b9964b6b5361a9cbb80159eb3b926ed5dfe4393da14349a9aaa5b662adff8e2b6aa83aefe50cc4d3df2e768f8b3f64ba7f70430483c21010799936567d30fae187c237ec4d8bd2a0968a9a3f615a44c2dd32696aaa8707490081146ad5e168ee40d020271ce7c7283d8f4557247b264751d4d17795930c8e0955f5a7f5d343a4cea210d41fa54b71cd29cf833dd9d7e8ea24850b8a0006de87e8ad62273c02929f517d49a4e1725a28405a5062ee42e1b3694b0b3e86479c711c26094e0d32a5642e2701ff862f1835e649cf4d4b715e975e734348fdce80a095be15d74e212fbae6f678250cfadc78ca5d7b7ba405147204c401416269dd736d091a8b882081be0a186ed8379f64401832f2f725f82e4a6618735075aef5ccc6961b6c2cb38b9582afbd32212ae01b9e7a445b292fec5db1b6701db23198ad23426ef89bf2b1c79db4b403e5ebbc59536b54460d3ee9dde1fcf7ff6472e6240c267c54d7e3bd5f2fa104aacb26f41bcc60210535bf857249d63cd0016b6440f796d81d103332ad6bf57ab68f2880ed8880b2db3ab469e5c5572de352bdd8895f1e225fa6b97064aed8599dd28a65096489809451b81f818e360f6fd024d5b6f11d087a81afdfed65724415639913d91d36c01246ca810391d789742c3f1f8f287ac1d1a72643c4833da73186327fed606ff3ac42906cb0fff6d9090a7771d2a29a6755ac61c05ae9a51b9d30f74398d685e2520feecc23d3fd5f3e2aa199bfb8b6ca5823cc6ad1d10b374d4ecaac44663b32176c393cdc9e3ea8054c7d630f0b1536a0fc790b08ac3e648cbd031a884c464ed721e0f2e9c5fbf90b0e14355d030e247e6a9ebf99b5e49be1a8df8b25b4a0f75808409aa3eb9032a0ab9b9ab408fc9114f214420f11dddecc928a207b81699edbe6606018b9e6f38eef7b69a12152645ba23b81001d6cdb944d87380758182a46b491a86aaed4c5f0ef9c079f4a329c226b53ea77a031f7160ead6dc56920558a4d0028fdc431174c65e15b94963ef855065fa58737002ca6a0c1fee4faf0fced288207851bb3a86ae21fb8ae6b242e1c9d742a906759939100103bc485f71b7d3c44ab9111b8170c1d5e34ca1a38365bf9cd4c1249075a6e6e671bbaf1fc1fafc0235c3e4789db363ac71f9656c0c74e75dedde4fd4254b641227be99936987da101a69efd3f54f33cb81407220b600571397acca601075c5665442e504cd55301091874945c642ae09cdaec58ff36677aa3cbb09db9e74b8318ed25931cee4eee08ddbbe221eff5dc50d2a9fe0a6e74e0fdcac12647aad324dff329a6b646594540e5506ba055907a6f1d70f7c2558de3be3192ba9a1403dc15787aecb9af7f2001ee5335fa3ed046f17ff32bb62339005a1fee0011fb44a76cd1d9d1ae605043bd56655a83aef7ba9ba658fc4c9d22bf374838aa3b0c9ff4b2631a9dae8efb08867134210795744ace79f34cb534f5d14e7651c97047366f87e987e2cf3c8a0580b4da1c650f632a60262acb95f7321496b653f8432c99e794c4eac5c2fcd69aacd7678fd561d04b1150258b4c19ae90f75f8afa112dbd368bd391fead712e283f56f62604b85bdb165881d73294249513e9bfcd9712ef9f9b3b14215b2c44b07d818a8de800ef1080c95c8e40ff0529e93aa9e164e802c11fb1d247ac563501ffbc144c0712bd232dc35296ef7aeb5e5d7ce360b58cc4671daae14765d3034709152137e9f4ff34a15602c9649138fbe5fecf3e8ac2a73c74ad505b8d977164e8b21737bebbd1230f3bf8b63d98f544d9afe4125e88fa8c3a894243c64421854985da0de36ba04dff5b588d380ee03c904c274537b63a133a339237d286df2e08d0defb496e2094d3bc50932d10a559a325e5b454a42dd3e172b3aa29892b28f0f8adbe40dcafe82bbeb4ab782137aa9f9d427f0df4f189a7e3fab5f6226f35822ee35f4b0f019647999db71c3af96392acd362d45ce81fd9b31769728393d7b0feb3772bd4c3cb2562bd1876e9c3475125ed38b1a65b06b31d62879242227671edf0f5f8876fbcc4ce97df65eba8c414c40bcec3ffd4e43d93749356151bbc17bcb7f6aa1fda62884c0626114cc6493922ea16640034aa606d0fdb7b1854a8d827edcc78dac732907dd3a84814920fd5af89dbebbb7da22845080c9b6b3bc788c2e439c755e3bd2fd73e0c0ce2486889df2bb010d7bfe6c4a6f215d10fa6070795664219ccd5dce1b305d94d9f7f7cd9012790a4a87c3a4b31d76673dc0d612bf7506795b3f1784041bd80cb832a50b4d159a40c35a59607113473a820861f035bd289b690b96219382266a87c3a4c7ce115b927350e89184d89a0d8f72e0dba98759440b4b759dcb60032c4c831a45d0e8217b7bbec25c12696147209d7c8734661fea8da45b9967c91f56412e81d20032da277c4509c8974bb1ea0b52e30f9ff9ff361c2860d783467da68d0ac8cb23112939fd68c9f90591a640b4df745225c6eaa026738c7e0f46b8ff1d0359650e79748bbcb54a1ad17568d704f3d3fbd05e01d018476815991480e2f8322a5798e28d7a3df8a14250e1607fe7e5ee5079be041d6fbb084c4888d4e66c16b78fb420db58eea8bb67e407b33d0404e396a10a86000a7a1b8a901d5ab0ebd4481972ba8759f1d3ad2a25f06ff6b4e3937fe8e55123a9c034b2636bbfac3e530015bd7e112bcbd34f6b7f099087a03f60771f39bad996def8d94c15da4f64a15b8d8076bf3911e65491d9e83603d819c1344c57588a7dec7e14bbfc87fe64752ef5a0d167e48f06367c10d823b689c99263b579718d90109d340c7b73a474056f7278dedb697d8bc351115d7211f584fa860196ecdb0b56019cda01da74354c5e700cd95507dbfcd00134e9a1356ae0221b80d382f79088453381d43cc52416ddd933d3c8e837c8ce87c837ee86c8ac9c582e344e43095630263ca20612d45f76fa5580b722fdd05171115f774d0d42cca28c3922cf20cdee945252775befc304b9047b04fcff9fc29e99f9bbfb893f47f660828680120830c4b301c0ee04bb51e42e8c30bec859a1116f1676a0702a3dbe2553b90abde3122438b0114130b7149dab1c1c8a0eae44cd4b04f0e6e20912dad4d8a03a47a19d0722d5b8ce18824def683a76eca1e728c2b62b319fdfd5909c1fe355131c0f3c2726373c0f3e38261bf878e0413211f678e8d198e8f0f013f4a2040134f9efe7864d77f71fc51f503fa4d2fd09b1dc537767a292aa9eeededc87f4bcbbbb0fa9eeccddddfcf29bbb7bb2baf3f27ec0031a1b4ca44ec8cc0c61ef16687703a13265a5d50cc8552dc8cd946dc09d2055fbffbffba63bc3909c46e1b1bc5cce68f2d5ee7e84e8c811ba7b02cadf2a725464c8cebebbbbbbbbbbbbcb3b54fc4c064d59499c259dfe999999ff5967cfaa9cbabbbbb9dfb40a9a59fd76f7c65c83f791345e7cd2dd46702c59f9cb4cc8208a27a999b2f2364bb2bbe1fd7d1c138e98db054c43600670c486a3f16e3e201a208b1991a08c19d2e7943384b863849cd990a40ba25fa42325ad7483b9216567ea0098be87a8706ef0c068caca2372e6419273e7b24a26e0300a6a7ddd7d779e8b8e4c59399c1515bb7bdd63f8aabbbbbbbb9093292ba3da083bc690e94c28f9ceb2bbbbbbccbcbbbbccbcbbbbbbcceeb7222075997959cb315834930aaacacccc2e66a6a21c95dbdb64e998cdf5ec68bb98515eee22d7094a0193d74b26e1efcfd7e0ecef575134af0e327f309f8f19570ca3cf841a94e84342f3481b37e2088368b8e03187c62668c3dd664641b8590c5f89deedc83693e10bca997d60b3991d2561a090b64acf367737d28b5bed6edef284ad19c5f262d4d5a493d977d6eeced09495452807b123e5eb3717ec7f32c55762ba29535682d051b5f33a1f61cf337c103c45988d87a0e1c2c7842a60cf09c8a65c146cbb7b07c4d98089171931554f4621aa116c26c082be500c732070c01b36413f722070924c4ba07020724e3db41b9e9c9f0dc50810394705d412e983da2f5ad4ffffbf9d292b7b40424447c30fbf22caaf231bf3eeba08b16e9d4d24444444744434242a124139ff8460180a9ab292e81465fc30747c16215e0e01739690d507a1abda6dd7fbb002e8b78d88dc99999dbbbbfb2844edf71c157325062369ca4a9aed4311ce8d6cec777022c6dddd6db4336565ef8311903bef7207469599999967bcb8aacca50981001c5d7831a272a6a89b9217b39a84eeeeee261eddbb9bd7a12c70334d315179069b4ebb6718f568679ea1146466e625aa25ab97dd6566a0addd5a65775798ecd6c191a8f0c14fa7850898125067468914194e3a4248a00489333e2f217107c89564db09fea047c61d1e253ec9b8d3a4e7411c8f4faf853c9e1724f80324cf8dde2ae1788a6cd002f27ece951852908b1331a272f87c48facde05991f8303cf6e8743ec4f0c96a89f44204062448bf9bca8c9c626de351cfc8097dab8787f341077c49a1fb9033928074021148315cbc60d460dc60ecde33acd4f46a374b2d938a54fce9c34616ec333327c17d12de7b4e464254931917389020e1d04b1cc4e49878e14326083048c3886502adf643372cd823415356129da23e1c31326fa8bf92eb9246ed149650e49086aa2cf0d6d9e58c2252cd29dd4c4555b5d7ffa672c2ba6349ab0fc9ab9af38f05160a51edee1d54f7b457dc634a92eeeeeececceceeeeee3402acb343fc58b2d203a023f462a497f9d3dcff520d1c136470c0a4a0e3f0c9fa5f23527f779b9b6dcfef8f84a15d844c594974342cce5ca0fec5e95d082487cad3ae4c59599b85b8d998bf9a1253ed89d7b7bbdfd10b64f86f3d2ab8c9cc36413427e904181a123ca8ba354932e47da794f5d90df0d631bdc442c8cb740bc26636c85b035e72b0a0bf237d6f22572916edee1ae2acc6097642f7343c173d2e43acf1d3b6e40c6d0979420fc71c637a6bb399d8b5cea6b1646557b9e899dd80553544cc626c55258c98cd048bc4fccc6080343103a8a5f0080ad286edb0bcd651570a529e778bb5e2adb87339eaff54ee0cc2d09495c51610a076bd66fdc7115e7aea2d8b180e8fed482773640892a6276766e18f26179a0695292bad5a685cd56ebb961abd978a0400530c7758b910011e81da2d4195f8141ecbea696ae9c9c86b297ddfa5a124ba7ef7a61f4d4cdb8a41728c63c9cac6ddec92d38f88d6d2ce9495bd6d59028a016d684a332d4c461a382d339c52a06b21462d7980dcb53421592ea8a5d0842569bfa81679bbf0bbbb564553564281b082a18b2c61c1c8d09495451046a08c48b1a02b841f7555f50080efc9ff17312efade5405c20a88223e5d773715096aaa32c182ee4e49cdfba244ccaed35d482a6eb553d457b09902c7e25dde05fe93b3857e4e5bfca9b9bbb337378a5d7777239980a8769f3c96115a8d057d19a1b85e2c483ccaa79bbe326470b2ae7767163abf7fd22288252b0bb06b91fb0dd580e8f4e88afc8a7859e05aa8060e2c9cd004b4a0d1adc60174ace1c0c2c661853149c4f2e2475d450c6bfe3f71d1f71f1588a089b089c0a9ec3098212554545a01d341958f6fa8b6bbbf2f23c16052810feffd6b565c3841be33fdf02e9008da9c6fdbdabb71257045bd1a461cbb8bad1e6d87eeec0159b2b27158a7c9805a26bd2092324af54d1678ebff5f294ac9a8745442c286b8f8efee16ebaeefeeaeb3f3fa361008063e937a494049424944ffac1f10e0521882320ae146090b5974a1c1e2ffdff9938057199c7576d271446aaec4863c18312a9831e178715cb014c4d9e13131914001a05b9ce6dddd1f5cb7ef3623c8663622285cba29d66e3ac4e1128b302154cec90c1c0fceac974c8a814c9be5c5a82b49ca37b30d2953564e5159cd6c5cd56eae45f793a4809df48da3292b91b31b496761921728333fd54c5979dbcd9e7accffffcc7bdb5d1cb4caebebcc82a2ec58a6a8987d76771d413a7e3a803a82e8fff3f3333f7f8af2f3f3eee348a2cc7420bb2f6041d1234c33923438904c4d2e39331c41a4219d45010a774e28478476f77b8f9397bbbb67ca4a2021f777de1fce0b63336525ce030cef1f013a173dffffde1d9870facbd19495480f2fc958b7bb3bbf13e97325868b62c9cafe24cbcb3a5b06c894954244471e6486eeebeb4c9a4da2cdad76eace43307fa2c3e9dc776717023c5045522f6e263872581691ba4bd4f9ea32f3eeeeee32f32e0fe12c33e3184d5979447ac049323333ffffff0d3bba64d719c7ccbb0b0116df9899d7d7b995b2a0088061614af1a6b164bfa89338faffff3f41fcff77b16c82f829527c816e7e2d68804c2880395e25a0458e1f6f9d5d22a843ff3c6163c9ca269270a9c042e14311c44ada84756c25e673fafe2f7f88d44fcf4f57fe63ffefa104ee3f1d648e703abc44498180eb6043bee8a4ad42f328508a3b33bb9272b5ea296a737777f7ee6e777717babbbb2faf7bd02b3118a9250b5cc2ba937a8834dee6ced1be219241dddd4d73df5ddf751e01655b27311cae7acaec7bb151dd9797796f88bbebeeeeeebbebeeeeeebbebece35b9a481a8dc6e367afc480b54cf211eba6ccc0eadeddedeebeddddddebc965a59bc493ac9db222008b716d58892d398a5a67aa9cefee6e920eb0eed1ddddbd85ac77abbb936c56b593bbceee0b5381bc09810491a91b1827cd44074254014349978a20747fc8bf3bf1eeeedafcbfefee3ed5ddff5f6fda07e2e63f06413ff6b7f9ff97519f569f99995bffff1fa4f2a9ffcccc7f7677f709346afff2063660efbbbb9b620a831454ccbeb2bbabe257f76f15807c186770393a3f4d4ca0a8fbffbbbbbbcfcf4e643f6903e2abbb55d81aadc008a8861705b2bb45cd02018b6ead0d8243966650106bd49c08d2810150d2878d3140e1dbe521422a2f062792b018939db4d1db0f6596fbfbfb7007543b459d5ce7470c1126f0a66e7c8c90422fc4b047e3ec6ce4e60f4558d54e797df83a19f6d86aa77e7ce9b4db849b3f1a8da633828216af96c31cae36af3a2f0431329e4af8f09d208389cfd4d0a784a35b057a40291667a0daa9b9618386026c309ab2f2884c5bf8b7cea6893265258db1698eb01812f0576238562d3857b5db8ed719e9b53f633465e511d932936414db5d03fd9bdddff4fe06e86f84fe86e89fd55b1c89771daf3db9f94c5919d472fb91f0dbdd35405356065b6a88bdf21301d3da9c6037cd19bc59d6d939a7dda51cda8dd9a2c3e18c2cef6c30e625dcb1f2e668b09515b0b45bc9cc09ae5bc668d38233ae48fbdc60f98532442c788b797959696ae73697bae9b9bbbbbbdb03aa2e6d77777799f9c2c6ecaef12a0433efeeeeeeee099246a3e1c83c8b9993b55482c22541b06966fd68349a4f0dbf19554b2525b8ca519599b9d9c6274a458e5c2fc7da4d62090a573bbe425b0f6ad26aa9342458d9a49da0c5cccc4a4bac2aa339572228d172b0a01604a10d599763efeeee2e33efeeee2ecd88c267c7d0a24ea0ffaa18d60e01e5659d5dfbf1d3949ad77c41ba6f7777b7075b7fd212e2aac5a5e66eeeb8b73bafc5ccec53798906646666981e0c10bf989959e9ea83ca284b313602a0d8205dfbeefaba8d74bd12a3816ba1fd78d83a3439e692491b230c4d872b240e4e07264e3f39290495426831d32105ded42eed170d16fed141ccf68602a405d8d052022ffde163e6949949a031ef2e33f38f9a0096c69295cdceee1b949062ab2c7cebec291d18ce95d891e8cb48b1eeee06f263c9caeef65d71612576ac1d6fbdacab80ff24c8514b90a1d72c9988aacbccbbbbbbececcb4b3e6a292d406c22982961840d116884ae427076771974a9049fad0db0134e9d4080651eca9341cf4d901484d0e3e7066bc90b0730f6f947dca8512286cb8f926e07875652bb86c3db406e00f8dddd6d72c44d86dca4c84da0b88954cad68c75dfdf515ca4b8a5e33c763640d2432447c36151a8bb2f3b75ff7f2dc8711102b36f62c5cf95188d88f2026477fff6ffff2e5c01d553d8ab83a3fbbbbbfb155a036a3b61c0a72ab0d44286141554430750b4820b755540495d9da2342712582994144d510d281a42f04a3d455d8bba2b3d796100054d5b832b4306a8060b3afd74d174d30a549a601a98f535a834c1346055579a81062c4f61196860a668c0aa68ba69eb3573a52140d34fcf57065cd5e5d29001094ae06907d0576b5fafd7ab51576942e0ec3345530f9cd09c48e0a4a2a96bd3eee6c099a6a41a385132e87a56570668bafeaf0c25a8ae0c655445356055d7704273c200d650b6cad40cb2d8023f28cb3c4d99c9b504a1c6858718b4a3c6725ae652790a853cf548da9082290c504ba4a04bfd5a0a7b18612d73f8328114385efc98616203c8816b78c854de56cb6ef410d232950ed0a2ba400836a9282f095051612aba2c4f24a18daa524ba11106cc3c69f22a0cbbeeeec216537553d4d61381002d1422e2b6669703aba423554156e868382c4ddd9ae1b2f7862a73730b2253561e0d8b50b58514ef77f77603e0eeeef6054d594974aabea8f6eff6591280eeeefeb1fab92251237123b1fb0ab9a25cd1095f7ef61152a19999798868ca4aa728e3b10e219f47f0e5cd9d33402012766eef1c6f77770b5f186ba7deddddad828644d3a3e625c78baad30643e74f1876778543495a2ffb0c5384298c7553f724ca8b929e5d19e08e11d0dddd5d767616fa04cf6e1d12ae8accccec73c60881c105286179b91c55e238a07048e198c24185f6b352901514a620a61f1310c6148ca5b6991e349e46e89960084e99a3c736b7520d0c2f1e351e371e3b1e3d5e5f7e2fbac0eb72229ab2d2a93a45d15c00836a9556bc501d443a8e740c77ff1ce49c863c6e366ac0dc9e6a0fd8e1cdade47bed37f14c59e9ab4d4131de67a5190cebeec21090b553e6eeee661460bd12930a4a11a59ca4a2a48c3aff1e8cdcf81985080145e0f0b5a5fabbfbffffbfbbcd4d82caffff7f8e618e620ea81c5239a6d6d7ffffff77f77fa12cec8d1b37700c87b0968da2292ba1a4a6aa0daaffe77e7ededddde7e7ddddddffdfefffa3e6934865ca4aab4abcaaf9ffee36f7b678b16067d7189ab2b208556b48d9ba47e0a3096867a9ea85120efd528cb13daf8f50615384205356fe80c12a02d15d06f8ddddfdecc39ef3ffffff9f6efcb4e3a79e0c07707eba279b0750431cde85878cfaffff6f53821743316058219980b8e40097995fe110e7dd3d6368caca629d017501171c9410ee30018f8f52c8038805adc00d8e1cd711affb7644cf06b264650b6f486a989959864f46102c048d9f5d9370361de4d9700c228aad419a07302d232290775621cd29c73a9be6c366d60f7e426a4ef8569176476a9899b635860d96760514cf288d461391e4a76e394c215937459deaf9a3d1682756acc478b51c56e178ad154962f4d9c364515864fbdd104a754f9bdd1035524a10617a18d9aa8a32be33841014ea32efeeee3a3baf7777af27515a99f2d56e5a7777b757a0112b98c1f272397aa2023fcb867e8f0ec6e64a0cb8bbbbcbae34f302e33fe94093dcdddd5d666666df9edd3d1142a82e3373b3b3922dc9cccc1d66a2dec65c43abbcbbcdccccb6caebebecdddd35b8da01e8f16c5eebd48d02c78523d2a11d6a3ea69b47daa8f1a026daf8ec179f5167230e7718d18131da721d5c8c223ac4f038c80997f4a8048b3669d54d1804331a00000500180782208b522a6d0014000d248e68a8dc7c64502a9248814038188061208a811006611008e22086a3301e576b057d7e1c64ba4d933a44bd961ac1b902e4b13f574e84d967155597ae76d6b22e94d15bb99e884af44b9ba95bc36659f77e9fde84fcc68425e78b61fe5c86fc50b9d9d8810787d2ecbd3b777c628a62c7fead3d89acb0ef4ee8645d4bf50f46cb62eaf3b0f9007f0ec094ff982574933ea71ec39e502e21828ea9c11b9531a16dabeefc67f92960eded57644ba4770f620ce8062f1d0e7d76bc64fa02d6624883bf20ff040ebaf09f7cc25a1ae92d1ce974c57537e94bca0ce90e1ebacb652092bf0f925ce3c590eceaf077ec1f0b36d9b712f3d86b41588beefd181dbb3630f5f93e2acba1930583933ae94787c643ded0d5ebba8130bb8337e93f9c79ddc5f5acec438d90a86328486e6ee5d4a4bf2805d88340883a5e2b28dd65ff1c65bbd38188770f78c02edc266df737ed7f0f3cd4edf40d746c71cfba1c2a5cba659ca18eae6157eb2fb607aec35e64ee03ec6c3bc6e9c901ae4e27c9375eb1d52a8179b057142e7cbab894e560543cb23072f5b5a4a223f60e15f51649e0c6e6c37704caae4aa35b4da587fe3a094e782df682e1b87e9a362c5397bd03af5209f902f4410b51351d27eb788b362b84968d96da3082534df3413bb427ac49d69b186cce9306a0aaed75b5204c20ccd31bded57efe27bfa422d412066bec76a4ba35054ac5f9ac319ae8c392b8ad9494562cf2009f0b905392a8b274a5ac53d9623dde115f7f5a285394f98f72d4ea693896e259822f1242dcd43d21f7506f2312a3f2553a4bdc366857eaea30f6a4dd88aba18555190cf055b333282e918b468129e8a953a4ecf24a495b725985a5eceb93178afcea26d26804a23148c151f00e2b8e34f3b1b1dd5500413b2987291188c8660cd4c6b5c3098e8a45b59aa0cadefedaa8a93cbfca72147a4c156ec567396ac7507b98c73d6d08af7927ec6bcf2db9b7177804a7ed40d49777d45070247947d42c3d5d21dd179fb2c8a9e470da73897869e042239029df490f04ed5c2220a163f4c2649761bff003846ebdeab9681c04a4574c45a8147c9da6990d1385a41f0be121c6c8d70d65bf9c00fcd8a36aa6ede819bc721b33aaa74ab6e811c81aca56a75b7b6645d64fbe2deedc7f6e4f6fa261836decca51bfb898c8dac9938994783c8f5fcc1c620686bb59938a7f143f09d404c736136929ed8783c8db559af35a11b9cc4f8632fb2c67bfda962d508e77acff4c5ec071e98933bea90e567f43b6dcb9a2b78f509bf6106d8de46e737df13cebf8a03cf38ce2005ec9539272202d2f38fb7883c4136e34c6d4121e4c440c780db7a118d2431bdc64f79e072fe34e99d9f27dafa36b018eeced60dccdd709e1d0682c5cbacb01882f43b370b71360396a5b26825691357f6d0cb63fd173ae8dacae1fd6d89b54f713f7a1bcbf87e8b1e3a384a12466d4bed50ec7ce205e5b9da6bfb18c47dd5f19d4c45a3b4dcdf633fe0c823b57c846ac04466e2772ed2d622b2c477ea54848d7f42c41d762dc3ee8eb82a060fa0905439c416c2c00804138105871c8f05a8a4ded8563b6dd9f9639ca4d4558efcf155bf6aacf84a06597ac6192b3f670e5c9ff619f7376daeb4b048ee97d0aa52523263afffed1d42a295519afa23f7cc0c50a49c76408db9ad6c9db99d87bfbbe9b224684a1958cdeb63fa0c90ff14b74994e626ef0ba91bf9c80440d68ba8c862b4f8cfd397852f4361271a5a55961ac1d0e2ba7abd492943971604a42e25e7cff8b906e343d0cd6eef1aeccb2d6b189341962d0f2ad1f0ed385bbc96e73adb4001198d0a55ff6a1def1f3c5eba8f34f4f6e93a03800921b7d362c58941265152a61f959d0651a02b001ab40328188cd7f55fdbf7c119ebada61c1d3f9c37340bab8c527fd1d86b7aaf4d68f8571c3d9749741f6c11161b0010a7fe1c1831acd7ce3a8a4fdf0856b318a067e02c6f2a4893c3747a50e40a7c9a805a4540a76bef7eb42f49d6f99f7a0beba21d418a46249dae4f6068714f63c29c3816192de80450d65f994c45e8413b830fad9c7fdea24edc64c39c48f48511c938e83d458525506f9193fc84d4b021a2009a9f488ea96c09f29f28de5a292a27664fa00c17c10ec3419af08df7c41f26ac034ee16e814ab93e6daacac6b600116850ab254ba6c2d82ff9638d6e8221f22da94e82079d81cfd89c99d548aecc0a6bebb82423807aa05d8c26b557741659b1717d6ed110155f818c350c8971637c782f0acb005031401d6774bc0cfdf9649550218714eba0908c62d60e2351452e45f83610252a43d0f857c3a6158a52a8ceac73dfe0ecb82416f9142a6b8f53ecb0e94ec8ebad8732b5c5246f196da3c84db95ef434cecf90c9d41910ec7238d796ed0e292022a6679cc40b47e81812fad1e15ef1dce9c36c362ee16d448db1863e427b6832944db31a62f5e0ac6107346bcec9b1802672be68c79df71bc157346d1a330805f0caa87654c333d518b71ebc9105daf17910679b83d4aef2c1625946d2fdb0d6f2ba791a702670642ce774104aac343c106642df3e02997833a832faeec5efa383775ea5b5e2b9ecdb3a446cf2bca3be76baa38185f943fc3876ddd24f65ba5d1807d5fd8d91f99345f918f889a3f4a2d37b087e3a8c52c9a54d0a78ebe6f42c7b951ac02a7335017aabb6ecece28f474cc7245956473cc43d5082c3eecfb10722db5c195aabee948b3f97d7204617d60306ba172e0498a58ff27f6cdb320cdac278c986e3b27c2bdb610e0efcab76e48e939a5f924020078bf7282b0f6392470aa88cf123cbc154c7571ca5b97cb323dc274bc89b9d052480d97a1bd59dd894d97cb76158806ecac4ae4bd84198af7536d3c4efc8f4f245fd8f97f041a65c5f7da302674dae2723fafa1746734772dec1cd2e5f2c2dcfb11473f8f35689f764d8b696be25f4ce54a2122fa5e5721e6a36e74e0ce22581a6cd2852b0877220fe0e927cfacf3450a576da3c52fc1dc0105b18e56b5230ea316121d4f32116b33d2c34d7d2e6141888e20f96a67934c28aa236778264569173e0ac7e56dae2f91f8fc2f5f051064d42be364310995031ce3e21fece8e6a59a451ef6a534fa166543e504e876553640372719c4882f2347de7e45d2ede295c528686b19590eb7486c933a2d3ab28ffb212c6e54f0dd9ccc502c0cd0d4b9b42864e8f1318f2e8cbd58709ab6638c917735e2db31a6d8cf755b80b74a0a2bc00649c0ce56b58bc2b346f2c0d92d4043a6675753885d442e5c438c316eaab825c82a668dd9456ce9af5f071f5b5aac7a521583eedd6fcc3326d9b93ed047bd5382746a8ce755661cf10ba67f1dee3269ddad29b992b1c3f57a3c082f2c55a408a057082259aa6aee98cf171ffb852b0f610ea59cd06125a014bd7106222e65132c843fc028429ef87d2b44e36174a8b21c4822338e5212d04460622f202ddcb21efa2a54f5f10c18c66f88bc10d35e3db39d633f1ea2d00727a58fafa56146260217afca81e4a097e769c970e6ca74e488b95d52297a766199b29b08c36501ae8de2d05f80054f310e88cceeb9fbd6114d5ebba0f174bb10a2f246493749069220d22daee398ce1762de5074596f6936f93c30b6a82c1445b62f9dde307634ae22209b27484a0db6939fa0dd1b59466a26e00baf89446996a4807aa97bfb9586032b2b00928a8a9081601638bd8f356e25e861b30df7a429056a244a7a869015848a82a8b48c1d14da0b81c6398df9d352131f444664e0b0c5593bce5922b52e99d7e572e4286fdb1ea838152796ffb48113a6e5e495bd2e2298ab6dcbe8248f45555cf2b932db916c48d1c020eac3de145b06037ae1f5a5718b92591b741255c0712e681000d37d5066ec47e224b1e3ad56e9df0556f92eed6311596b0f11fbb30e3bf0cc97faba27ba8cb4a2644d709d6231cb344f65d3f432eefcd7c8df8f5631e1661a337243e2dbc98833f858a81e90819f071a0427823f91edd95e111cd79251d418de3266150ea8c37229167b22949f50a12aa83399093c304f3e730e3916012c92ec154ca4c3bb7ef1fa712401d4a3d09c7000fd123715a550272f493d991b9844940d2ec717a874d18a42f3e28fcef739329fc2e97b403f3924a81b3258856c11bbe5287b15cf5e59893a876146a353ad63cebdbf126bc394c088053b58338bc0cb75958b6c55c0b3827b9e276d8cf5e5491cd9d922a6a08be4fcfb23930cc99ba53aae7e0e9b81d4cd0983d410113e68d63d01e47e6182085eb161aa9b0bf4b9e8c6eb2542104df0666f0726d2dcfcb6f6f06550c0fb5b4c5acbc867ee2afed42e91a2d4bb39a465800b756fb6bb7b01b6e17af09728dff341435f16214a8ba272f195ab1021f1dac81ca358257746927d590c94d4f54e10281e7fea8a29f8f70036f598bd255a13c2afba19dfd8654b92105282a1c6707adb9e78d218ca81e9d8fc0e845300df31caee77d70b481283a4a412505534884a2a346b04d439c8db59b796221781a2880ba735dcd7983a5d03490ed23b73df1d6e72c0c053fca0f4e73f231245a02df1d3b1339063f5fad161ce059bd00acf4049778d42a72643b768977f22b7a0e3d8f9d5f92a937933a0dc72f3a22afe6b2c947978fe386861e63ebd67a9af3a0af403bb1585ebbee8c5cb97fe69613b3cbf3807805c226b6aa55fd83a4f1b97822c02da91fb0858e6a105b2f0649c0a08c8352171c8987763dd73d7b782ce0259dad508d304ceb7a78cb291e0b682eb173aba5c08a37008f1a5cb044294e524d03552f289565d5af5a1a0a4fc8bf0d0e84f62dee4d8a4731cf5056a540093e4dde8df53f5a6520de3277971eb992a21bd344820ead9eb549bb4b41228118e86881e8cc7d1bba7f651d5d270a8bb0cb8859e33c10356f84aab6282e3078efab3f0348a977e9f70a219051600fe0464547f826a2575356ee231fee7a80e130877b3448ca966906e1f31266e22a0bb8f3675014c7c71ee263438723c281e79c2412218275bced40f08011d05dcfe4d185329d81c14ffc4ea268d507a6f85cbd9485779b73e3a65d432d1b415eeb6b32b6638af5c56e23709630ab9ec23d1e8c1c53f5c248cc23648a120df4491615f684396abc6f0cf961aecbf763e5b6c815b31f2bc9791d5cda071d56827d9eb140c92ff1b4640e38ea80c4322970a0ce6eec674cfc91545c705ad34963f5557b3285a3db346f08c0bdaf824d733f23648d03792275e7505d7fd9a44c0358451323c1b6c5763816ac588087442e59c88ebcd7cba1e525c4c836043cca831740205d70ec6196f636458282e15e3a60feb6f53b5ab68cbe84b8fd72602d3255c8e06436541d3c070f90a53dd984110192aa1a68786c04853bf6a4da672fc02977672a920d4899da9b21722d75859b912af2d731becc665da4bace8795f2e07dcb297edeac791845c1da652de9b645341e5eb2df957a84ce233fb299900f433d91e47714b1f4ce443d89c36cd24d462bf418c30f6a12cb1e4599eee479025473e582ab2f45a2f26b587c6570ebca7d424c37b636b567431472d94e330b0dc22f39b45c568098ed23e93c6e8a1b2c75109c76d71769ec0d1d0e9d46690213f8a0f8dead785e25e24a2c6269bd288ba589b303964f2affe6e091a9c19df32e6b20c38eb30c80914973f4bd68f9b8242648562f04f5bf039389eab7a39f820902c902080f00a70cdbc2bfaab1e0818cb69849b5414014f0258658c3b89278905d69470cc81d156602860faff5e9fd788a13c95726aba0210943bf1c6a6e2dc9769de80391a936663fd9d6b7cbc6505a3b97ffcc13311d4cf4d67b522c723f2303700e30387140912352fe1ed8795be896de5a75cb346008f9b59433158c816064a4ae71a6a240124314d0df2b1bdc761b051f1c2b010e8d1826f135d672571e1c59775fb669a6c15a8f8467ba5c65bc4a2d5344178d523960400d068559e9b94471ce588fc2aa7b6efb88987d1604808c19b0be7a9bded4ec54a4ea7d3ee77228c697e89b298f1a1a87edf9f5dbbced587bffb4423a949f8d17b05e8eba28a65ac27e8cf20292eee9fde9825792dc4137005ce8cc0722b99e91951b8696905f26bb8e664288f3ac1ce69813fc89892c613293a85e5229e5a6421481961185079570cb58fc7a8b2f14a2a1c441a5f4c63f96da3c016300d26cd6b0bf6bc10321066abaa701add0af88527d356cc11d9b608d531c9eeebd39f315a6bb847c09163c9327ca39e16131955545c3a6d11c9860c47fd333681c6922b5506bd671d3d7397a10ac2cb9a64ef3e2348a33d7a49d8ba7871cc9c870f9b9b500cb1429f6d7d236310b4cb509630c3393c594f047aa8d0689aa52262c287db4354d1cb587d09fcd9cd004da703d4f59203ad76aa45ae65bd3a6ef8655f75ee3480554f37041c3b31d2de4c8677ee0697a977866fd9e92b72293cd709d5898e8c521d9f363126d15bc8d98273160331b01ebde61c8594dd76dd40966350cfc8898bbe0a74b8cb2faad044eb6f54cdefdc2984532d1d3b0595b1a0c651769f9f49018ba2613ca3a1ccdb63bdca74938eaa7c33e12588245746aaab0294d7b5d48ac8801bde8d68effedd42e07564946038d119555e937335dc9547e9c25a2983a4bc22b010959dd4a0ad276d399a414bb20066fbaf03d75cb92dce340a992bc6e5135299a6cf42b23705b0676178891b144a2981ad22a3cf298e77ecc895b61bc8d0635037ffb274e5dffbd42edebb63ae2d8c77749f1b51b631808c83a52053d19a09555b6297ed93580d46fd7e32f3121f26ac58e183dd35bd7d78bc36b513aa0322af1f93d4f81c422eba3c1cf7757e378d8b27b49712239431b16d7b7699a227e2aab7723d7d51cf171fe867d2a19594ea024d607a870bc577d46e9915871f4bef48ce7db77267ed0c2b41e92a7cf275a8c583c291205b1808ff1673dc2e3baa44c5b9b2f7f263993f3eec4641a592daf00808b7d81eff14b92ed542bfc93be78802f15ad3004a8923cbe0bc14e9b7b23192ddecafd2faf00267e28acd718a86b168a86df0c2ec8bf006d7343f0db1ca387616a254f807ae0d6f985b597b6809f87241729f27e720254cab609d90a75c30d3b57e3dd4fc8be66a3c3a51a643e4df301f325fb5bf40478a7dbd8c704a1720411182e98d7289c6a248af3c8db65bbe6a14884157d5ee0903e95e0d024f9cd612f41a4c8ba11345f920c1b8b7c644b6592aec044750fd419c88d7ad648d7788d028104d8d074b8cd15cd63fa056b4f9aebd7d0ac250a7b04bcd38f7d71e0a75f611b946a6c50d2921dd1fa69ad098d13ad291d3e7baa904b89bbee5b1690f712ad69a4ce3b871c3ae2ed0154ef5520a4a5e7fdaba71857c0abd348dd8d9a9ad6193f7411abf867d7b049e3d8b6784dbcb1b8fe44b4f4d710076506886b7a91b1895988f1c9cf3f9d38804890b23c400c1430368e79be819a72606dd9f1805b88e61281e7d8c5f3b596adf1eed18fa07801f01296e041713f3ec43b7c2581583ecf7e13d8cbfa61426f8cbff9e9dc1d40996a161e15683d5aeef9df1567504c4aa1f3f4e6ec9d43eeb2e9981baec9257cea189991f9672480da1a3f8279890f68ca9930dd83d2750b881218ab158d9ac2a04f44b90e4c4f87aa055fdd06b61396fb6387206d94e066fe995e71ab4522aac867d6f41b2607f3f21d9e97a0be9ddca2d5898b3dde20b9933eee461adc035af140d59cc3359d49f152d3f7a3553793020990f434a02dc64be5c89a5964fbec803987f7e6eece3d89f1224ea2023eb198464b0f4a2b9c7229bd16933b9b163ba869432203bb3bfdeaa75fa513ef1e36d24a3f70a40ad5deecaa84b7c6f509b9aeae72c97dd2fdac218cc3983db476f6964d351c1dd8cff2c18ba27d64c805eac046d3579cd4bca94f08c9ca934d65a1643ed323ccc69b415638ebd5658554cba7f7df4478cc6b23d4fe974faaed26833baf145fefe43a2408c58997bc1c81dce3c08fe01d56fc520a9e3df4d0aac4b03c24ad97ceab3ddd1a3213bb58b281784895d8ee33d15982f1091632ebd0c42894a2097f153bb4aae2e54ee0bd5ff92cca4bd2d797c314ce018fb6217b5ad43d8dd69592031b59d06a5be6fe2b5ae851ebefac5e79a6ad3b6b1cf4da5339883a7ceb16ef415285bb83cb03b5f8ad1442a90855d16fb1026e4fd311fab3b9542725459af1f6ffc52aad0295588fe9945bd6763fbb71da5229ae0e8f2a2290cfc5c09b1720d4ddc701b8cba4e211817b6cb2aebf2314746e32ff59299b8b2903db4ed12961bc01d72ab06f139a764bb62e015b2df9167eafe665af9dfe5eb7e08f91d357633b019d9def7253674443dd9cc7f27d72bbd1c166eabafd021f1edcb32cacade0ecd3097739c3774acba693910e62aafc22c3ae1c00c41d53a69bc88eea90ed7a04ab9f551f91772e952b70d2868aaf33aca00ef60484bc945c10119daeb102ac41babb04c1440390a1e2c3c6ed7ad070d6612a1f2ac0ce6a0039172ccd9c880305fef2aeff03d17525b805b9e4e0d65ac2b0994ac33a55bee275376bf7ceed13a34a488302be59c2c43c74381d13c87f586e4c521fb8c408fbfe8c7731f7841fd09f0a151a4eebe614d2b270aab670b05448618401d43314d6d23d0c5547040b3bc2402dd9dc05d4cdc4722e686c6e42255481d487915f1cb76fc712a5ced00ad462b0c0e815627be30a385f314d64314bd1a449df58573f068e142699d2bf996c25782d2fd7e706968b06e14d701b4bf14d14a611cd860254c93ffcf52c6c8ded31fa6a015d1129a48ce94c3c18e88274d91a2d31bb5a95b8c07c23618d2dca20e4f55577e59fdc15eb4c3a45b3ee6b1e4f8ed290d0b5296dcfd9acbc89d7b40bda6442d842efdc79c9b1163ace9ac470465117bafe6c724707247bb004dda38137dafb54f23511d032d83ab344fcf75694c7e10f8701f974736409797e49004b1ab3454779653d93f11427953f8b28bcbcf700045061d073ddc49ac5304192704cc403248e8fe8c88a7eb899978b12093b5411cf4483a0f7d1888474ab5e03d9b71261967c242a83439a534b7c5e6cf9395a8aa60d8c2870eb4b5c25f0c8fa2d81b2964e6d54c404b46e488b9c3074df43a315a9ab3126ad662555773da989281763611f0bb9ce6a3aa4bd191877039e6467eb795065b024293738fad76ed821656c983e4094eb3960f4ddecfbe46fddf03a5d3a62268b63d37db6a7cd55b803618d47c9bed96d5d8811bd37765bd7a1aa6f38ca2998ac811159f084502548c5b8d07b38ea9326c112aea441094564fde82d8a76d59b1078ee625ffa5b0a050f47015a19e832a44119a3fa40d8bd651cc0de75d2061bf0a9a715917a5185482c4926549475e3dd9114b2b8b691a2233e1331d790f37f44c8f40991e7934fbb4e35ae1eaeb7823952725d1d91b87486bdc3acce36e154d8ebd96a9185ec08b853325522b96b2c8b275e4f15c3bc6e10104f9ef0e40505551f3b8811c425e6a2bbe63d52a33307e697c659525f2121b15a65d156f102acc6af8362aa03094c871a7b90a2e9e7c0fd544c0c0517ffadd38a2db4aaed822f54484a6c5af26785f87572ca5d9b03cd574bcdfd24a45f73b178544c3775c3807f31b564f591241517fecb793d22802690eb0445485b834ede3dc69fded4204d19f00b5566230ca56ca69c86cd8a6179d63830568b1c701e3f2039f6173a8c2123c31b56b3671d8ccb62cb90d0102cb582ae56ee59e60cdb24c24408af979e545f8a340bbda752dc45e22561db8281d39530c7b0bef4cd49a5f22d189625411392bc551712e5de55fd365ba8ca4a3a32072a9267bd4de4090d718383c997a5a27fa8f39482e8b605e1a23f01295a8845d7c05217a1fcc388bd2421a18db909522cb23e9e67909e48f3f529fce852a0e93c68118a4e0a8e6e5cf3cb05eead4a43c084b285a8c0666e174685b4b552f0ff65d9368a10f6e952eb2fba3c3e02d7632f5167d179f431e54b7859a3e306c202422fbcb3567efeb9e11c35bc2aa54a1ff84fe2f945871ffac6cccf898fdd6be609554db75602c2441794b969d9284120d282ee28297b730e3d4ceff543187bb9ffb0c07f237990a279cbf85922774bd277a7a2bc28050f5d40afaa292cce1405a1f2d25c93332460fefe3e5906001c1f13a564f83120cc8e38ab204ecd32e3790876b27494b482b687e2e294596ab2f0e7e978c4b9adeb8e314f94297c0884b2c732fba481b3e93a641290a0e5e4ecf5d0c29707142c2b8a418c2f7cc22068f38d319a1eb355c8cf1ce07fd0c333130bd43a5585c0a170acaaff28ce64aa70a48d2bba1174c4119a732aace9935713c5142805a92326c464eef0ae7f56d74b7c7e649f64dc8256e8cce5c234d0adfd3f35f79d7f3afd7066f84abfae402cb611adc4e69bb167cccf1c038c0916eb4b9e89d06e62d9f86d9e9c61178b3707add74af4225fdc31611fda012581298b09fba7ce0acc61cdedbdd7ff5d1a682b581698eb954a4fd0389d6660025cc40f5df24126b1e38c9ee39ca2c84618a75ae8fa3fd0aceca41a4ae22df8af7dc2065c560316a0e9823650bc725452f02f56d31e35f54afd2c4ca437c83d12b10cf1de535cb7ada343b574b2d80b61d4725a2f8dc07d2b5d47ee676b0cd88d4bd8c092117026da5f11a7bc1512ba4ee469b4753c4f58e6758a1d6f89ed017e4ddcd7f56548c60fa5b9ae21544282a3c7190e4c82620e5d42d5755fcec14fbb9054e807ba993e1512ccc59e367f821037a2856f0c6b71fd3bf22a35a39b81818ab2687bc66b255782f79e19b23907f4163549821bb73ec6ba37c1bc6994f0f795dc956e1bca4856d3fa6bf2031ea8031e68878751fd902ebc2eac287891d904936b781696d5d3cc91b40f2b160124fbe7003dd6286351e269c6d33ba13bbbff8e4063eeb4efdd301b9d80872ab801b22cb3315e7324344eeea70166d1ac42dcf0b06dd36026fa865072da53fbc5af9006414bc03b0776e380cb442bda5bc9130141c0ce46be9cb7d25f8b6f06ff3341718a9b8292641cf178a2c1465578cc1bf7ac14bf4faa9982eabc2c03b220c2bff31c1a5b83cf98b224219a6d43efc31a429376c85aaad54b0b0d9100e6b2c221394a756dced0c89d96c0ceaf4e8511c4016cac3e13b1f038375b784a44ae341b7dc7d8fa975446be1175399119c9224d46a900b3e7bc9b27f3ccef1ef960fac7a5fb26c852c4968468779eae45c32732ff72a665649675a30da069105ccc325da79d09409dc2c259b71a34d395b55b49ddf70f76bfb38797d20f7ac3a24351a896ce0797187eba3c6b77f2c523b2e3586d471ff20279d8af217269ecc0ca46748ce9ab7b083c904669d569af01a409c3f8f759277492a579e1493710430713c18ff449aab942f1d5d37c40e042657cc330054cf06f027ebb3021ab0c54a9e7fa142e6f314e46e60059649717a4c1de33d794a8190e297885c330a21d81c08d75408727e82e2a9f5b4be1a244cf2d0ff61d69cb61b98508701caadb87c2c22721ea2041179fe233c1ff3339ec2b872df2fef27b92f6aae34300cf8326e1cd01f92907949159aa30a3ba44929ebe0ca78e7537385fb7e8d2ea13e10fb434549804b9976a07eb223176a0d398560b21ca9dd7125c6ab60ab993973c7a7de7dc0dbdeb642c38fe5ada37f8a30f082d06b9142da9496213b16e3d830f85b2efb76e1330e546f0189edc8ce36796ed0bdea48550c7217f3d60b4f3e2e9db41756a34fa1581a3d8f9cec1d21720d1ce88d1efe1a48cfc43b2401e3d6e244d335b02fa4a0f80ae733292808439d3b55be690760646a55f2eb6eedd055141fc310364bc69f64a6505c6c0b805c89889dd9e31526772da3b1cb057883e24568091dec864a727b5f0dc4e76329306088a4a7999f17a3bf73ffe831ef948e588a322965e50a3a4be2366f12a9ea472256e4db3afd582758e8de625a5b9ff03666ae08acd1da03c7a641f1e2a67adfaaca5ca54fc04fbb33b0a25e30aa31a2c28cd82515f99d2d86da31baf0ece782671008886723e5cacb6f1601a48526ca6825da28dc595b0ae786a0b29a3df34a683f909f9ff93b4a51bea556e0224f0a1e239fd37bc09cb6d2e4ba5745cd15c09cebc5b1aa08fd87c2895ab9c530f776c506ff65eb17f1f3b4b6b9b7bc9db43e2ec1ccd4468de91b573d1747d77260099feafc7b01756530f9f50c972fa175b57bc5ccbc1108fd76cc2e22a83df1a1bd66bd31e208332f369c94a81fa76eded8c5a16db53c14a294a691f0b61a95521b08d7af280bf882e6cb7c950281b96621c2b38498bebba1fc73c911445b7e85e023bf984a1057a6948750f56b43f436cc204c7cab61cf1d5e3d817c8633d33510045ade5fe1726db2c35dbfcb6137c823520c5931104d51c55c11f032e408ce809e91d79f6ad21b3b570b2521c9ff1eb695cec679fb2b638db746f013a07a5a2ec8494450110b5c5299e74cfcc656600b4885d179ed02cfd6008dad6cc914df0184995fdac2b3104ca7136730069154e902d8ac65b21ee79ac6b2b5e77a3374427dc5ce54b65de8ae4bb059ce1f59b350af91b652b37093986a8f747c9fb0644f14cde32c7a4d1554bf197fd1ac53a9ae06f90068b402913a55232e9e5bc332eed01543ef712a310bb54172138a85c0372405492f575686540c03ae164cfbf389d5102ff4c7702075cbe9ab7deb974ef415ddf9563704ab50662b7da2ca1a5b2ae7fdb22c619bb19b69f9070d6b2e322b624752c93314e4d38027696e790eb1e79ac7887d54860ba5b9dd4b046a0eaa546b7f808b0bed87b647b5a66cd0b7942b9249918853a5c60ea5540d613b127a1906c7da8b3f09e84eae7fba11684f2910c58271d322859804d856cc1169f55b4028ecffefd9bfb22b75c26d22cf557b562e0d8cb98018638c11981580763ff452d8a6494f8f8f13eb86c72ee50b34b24b9e9f82b111aa56512621581692e69952a2ffdaa0f1d7cc9958dd914b49eceeca4f296677e5c447519336d4739a477030d59b1a8478472cbf28343b43647873d912575c093ce290ad1de1a0236547398e5a1849abd1f8eb9c79e8226ad5081512f2df92ecd02cbbbf8e4db65c9d43a56bb198b47296505e2a297399da8e0a7ec6fdb97865b93a5fa5d2175c30e260743340b71b3684f9c81e928bec2bf37f2c8bba2585404a6276572e65b13b6b0324e2987f7035da7c1aa18c5ee67c69b3c993e63b980864db3a2721a1879f1c9f7c17b27211eee83c55e8a9c8a4cf91ae5a222c61f93dced5497e30e8364c889a343c3ccca9538bb5b2a1ee50581ef9afb7083069a44888a0841ed9b21da35db0165fd2dfe8209140a568738112ce2810504d3cede0adb1ab8e3442d1498b57d9bec8dc3bc230d4a47c23ae3221540d9ec09619049213e03465a31196a4fb6667e8e8b560ca7e6f88b1b9fe6778ef693c57fda5625a8d444215b31c2ad9eca8f2aee58e473dea6bf75f7eb72eea718bb73e9ef153312dcd85c6084fda49104487382240dfbd85e9d9b02737d039e146dd5de092aed8cb22ced6828c75597a273f961d15c54cc08ad9dd1af456eb2a832b9afe11c5043348803af30a7dff8e7dea6cedb403411365985b48bb0a378a8feb7cdd0269a11a1e9c90992e595e384880ba0296972f6b76f6ba196b1f2b09028a9f1b0091e75f1eb7e5eecf4226d9b54cb060af528308de64dec2a4705baadc458ed896e9412f997c11cecacec2355944df1abd29ae5a911ebb5817a6976ec3b576ccf12d888dce2a370f07bd723e6f0b37ab04b3325b70d2fecae8481aa300a32d51e909c67d76414c05168d053381b6638cd1ad25d9b82e5e24912b94ebb5889874a3910dbc9992a741d274658a3f864ce6a00087fcfd989524916035026db8f0916d424e6904b48166766a8737613a15dd3ac323e86f4e266886e8bc2646b46b5ac491b2de90ea746c564bcf5c24591e7e5f3b6b369b5273335b16b88dc4a569b4f43b0d6794b581e4f8835da09ec8ce737231975e598ed5fef1616c199368c6491d319a973f9ea95b5164bb06bfbfb99196c8891f17453a60469628bba7d200aaba293f37fb2750651944384a8041277157fc4eb6d5a48e2a4ec674cda310a6830031ccd524558996d815a8958a221dc95a4252915422f92fb148c5aaf6632a0fbfdb8b0289ea02be50d0c0be04ad7a89679c15ab146f4e4df1874b3552ee7320fb39fce680d18eacb3ef65294f87e9dfc9aca73df392000dc520450f670c3ab6b89fce0d0de9746d95ca00a5845c16f511c3cf77f1bbf2f5988e853641e59137907f4144ee7093538bc843466ebd2ec152a2690a9d3c266b74b41cb891141f797b15160b1766d39d91390a04a6dc0c61d9046b3044f19657d60c5ec83f87dace6bc129f5a5be08720533b7940cec470515ef478e5a2c680be48e01ba33ad4359400ab1950ec09342b151540c29141b0bed19fe612fc4097a521afa509187274ffb50ba321ecc80ffe7e82b091f683ea0fe3fc334ee15369061f92805a5ac7757596d3e0c175c45b537c150b8a13776237b4bb2a54c526eb977bc0310045304fe395927877c53e410426822347739536724274079686a378962e0bdee730846e4508726f80c39686abe91168c8ee4f9d482d93a9c2fd111e4e73ca975619ace0dfa269a612cc7bfb19b07cdba1451fe88d1fc5c9916ee508ca6dda0299a96cd8ccb103a34342fd4d67e378f3c7df3485e0e6abdd8370ce78e048fa3830386207208d3421322873aa4937bb2e69d0fd3440e152a041d28944441b4cc70cb0ce808f2f3ebcf107e48c3bdf3fe60f8c10c31a89fee6cfd3cdfe343801fd066d2e47d7a61ebef811e705ec3d691af7fb6a323c8df79fda9dd691a86cec1ce9376976f7690cbbfa83e33a06986d7bd9b6205f5c326b182fa3a3a5025090d3b7f4a42c3be3f41d6fdced9032fc83fe2eebc9bfaeb874d2905bb56b0f5a7b96a3425a161973f016abd841f329aea749abcbe339ce0264992fc0c21e93502e2eb5e84f8bad46a28df7f27db4d9e40f924a161efa0d64b88c185bf67affaf478ea06fd3a3caf3f84ba61f7faad970d39af5f43ddd07bfd1dea06fcfa21107ed08518d4d72f81bae1e6f57f503798af9f0275c3f8fa1510bed6bf01e801e7f573007ac0f0fa02cac3a3a3b3dbedfe03ad714ebc4d73d7ae5d5d24714ebbad1e4f124d3fb0c952a7d19d2fcf1b27cf1276eb103768689637e583a5699a6708ec2ed19bd36eed24ce296ef3e6ac3aaa4fad5067dd37237973eebc795e18cf0ef4ec113bef6499b32e492d826508b287c4cf2eab4f46f56bf2ec40cf2ed111fa795e9f3caf799e5737ecfee6fd79feafad1b70ded1b0a6ed763967fb1a541dd7a57ef235799a99ac3ebc5ef5f10ab499f66c47c79d9dd7e70ecf9992e8d13912e704f778864eaa4f7df30cd7ce30adfad4dfa1d51b75c3ced79daf17aa8eba011cb3b6620dc1acc3414df082fa18ce1d7841fd9d93577dea5f38adec93a7456fee34bfb74b736badf56b1b18662d4b5d795f9f3c93444f8f9ab701b8355ac2ee300477a703aa4ffd1e50de3967fae499f3a5082248814410731cb4bb4c569f94b73b3345517cad2b2d90e2498ee48f9f33697e98cb08e476894b11378fc1fbe150922e43689dfdcc5f86c8259ada5d7e0e4804a5ce3f1c2adf4319e5998adbea5a6c1de7e93ef71ac77f97f3e583a5073c34074d6ba975d034a7cb4fcb5ca9d391a97edd97676a6e20110c69321d411aca18b17b12b62ebf74bb73f93a5403b1eed235a865e9415af7eecbcfaf353a6a1d5a024d47547f9a434bd45d660bfebbd79fe6344cda59eff29316bedce9440cb9273f77c041f9da83920c3fe8d7a1a4d6399f86499b2c45e85ea323f4ef3e5792b9cc413359e69c7f2c4594e4e7b2247f0c9e8b467035110112c68a12190f555f5565e489261805d5172a30d228f4e97c526c889e803c8d9535ca250e7890a992260e2be8aae9290dcbd38d8df5b8c1b0a7175b37bf117049bb6a82a242d3140c1954d8ca07c80c166f279aca94bcf88511397d098bd1655bfbef63625bd0e985cedc60580c29fbc206c3628035e9d4ac20e4a50f5d585600fba1e6838b8bacacac1faea28aabaa2b83552896d514e401af33273f90407d39635ba8bd30532375e34aa80984ede2aecd8484c0ac42344ca1561df1cd2d5d0f35c67845188c9defbdf78685f96c8cb40debbaf2ef0113b3751b0c03b3b2d3ff1981806fdb33949cbbfb5895eda5183c644a23f11fed37cc8d4d467d6f6ef421201f1326646e66595f6c4c2682d04611b44302f889d5447957c882115fbf476b8284f1e5b0eaa255c52e0dc15e51a28cbd678021e4cff74c9131256948f3c88e31c61867cf4a4118b082b67d5e0f5fbdcdd0e296105a9482589213272e315609eb0c6b2daf98c0095a64cc9829d2640a062c2260583d8c3498ddb48e419b156f57dec6e4eed1bd37e90dc9db137777f7b71ddb6683bfb7a96b7f651819e44a9ad814e11531175e3f30141905c67ead56138f3285acee3628e642079916406a5610ac89af136c4669615aa2e424201827b0602a2aeb9a41c3b2b816b43f2f1f5e68ee3e65fb0927a302a3f0e506667b60d6634d8f2d6f5a4340d8152874c9205ce3d225d0b00c51d15abfd6d074344c4994b8e18bcf537dc0d76059d13484dfa1b5e259e2eefa60cfd6b65a1b8257d7032f00df92a635ebd081e4013de40d9a3599b0197c93d7e3c9007ab0f02098f6a43e04f8d9a23d6fcaccb00c716d095184189e3a9f389fbe4791cce7dd16ce0b97d4a739be1ecb10e378da9d1373a2ddd792f914f79896cfba479d497d9a680a94f6f07276226ae2a038af5febca101a0d6dc4fb36a5887b459c13ac3e3b24bc6de1cc7f637e399617b5da7db933477324b3c93b7b4844dd912d8a0077fe547cf1b1cd8ba2cdbd156d6c6c6c723765a6289e768b285f84b02c7376e76c9851511c45c03b93b02fb66fb50c61c52bfaef8719b85db4606a58c37f1bb13c72b1a7b0c0927d552e27375d165a11176757d62cb1483fb1a27184155bc2baac206182618f8c90915d23644efb668346c886c0b4f87a246d9eccd47c40de2078812e67eb52479ab9072bc8a15983385b5b124453ded63a34e579124d7bb636b74653fd249afed665599279d8f9143cc24182d7a5a369584620b749fd632902e7cbefd50d17debe851fc07dc17ad1175e7f2d43e832e7ec67cebd599b4230600e4d75761a36394aa23c40740824e7eeb973c408eedc73b9099edc8db92f5f836abd841f784f8e3a37fe8efca960eb1b9337f27478e808de6b7db34d936341fb664b0f745fe6a475e780d999821f13042f801ccc9e46734837a143a2230229ce305d13a3ee6ed2b018c7ef759ef5ddcff75a8ca2cbd1c5be1e167c5f493729b056eca48ecc22ad229b2220443aa2b717a50b1245dc92f619b1c8f9acb81851a48094bd58e028222f4a73ba40942c26db17a7a8b22fd2be174def7d7baf591197c760265b1618779d61fa90e58b8d164a9c92f438e1280b6fa7ff932f94157f1ce35c8faf302b4adad6b191099b0af6b6c52d80b6968468c59d09aab2c60e81da167b100ab7d75adb838d804a50d3724b636a4bdb61bb868e7c50f048f1df9377fa3fd9ea45190b262f6ad4d0f2b46585949de1b0e206cd542009b38931c698aac7c618638cb118550af147ae86a2ed81efbd97877dd6da5ecf1462ad45f106cd8ae2b6dea9f9164a57a45a47573a1b5366acacad4a85094040d2ae8ae2969ade9c8268008b1a1a6f64585dae809c699b379b284f6a58ab6fec7ac5d9fd08a84a46519227626565b240e01f42fc1ed5b02b255694b6bea4b88e72ec3668764403cfb0201a256f433cdea8a420c6faf819af0d73d5479bb34a18636cb4b1ad4aa61a232d4782c8e4d0ea7126678366465676fa3fb786154fe0d36fe5da6db0ec6d8c5a765f8671836050d65811045d7e9cb941b455968447e825889a3063665dbc76e0a00b8c0529e52043c497c36ee59d1284aaa010f311060b84d591c3b4b8b5f6da8bda315f300cb4d062820f3129a1b41c4c4fd7c1c636d02e192d099a51761455e4cb6a3111993c2bd54625ce0491272a9a2c8ea52c5acc32c606ae00d14aaad2e28b187b63096d296b061491a1205f41336cd6d2560fb9c1df528d9dfecf9406b9706cd901d8a0180eb01c159c49777717db5ab2ddfa90ed2c62684569695950ca406b4c2b6927b6a5b5336c506c4ba9877971b69ec2dddd784b6bd6b0c064b16145d6c46249ed9012f334212641444586beb67680707bb53daa8abbbb3b36c218630cb566f3b6fd9e9d5aea894561f12cb0506e713f720e106ccad89a891e3dd6bc28411c97dcdddd75482daa9eaaae1c07618c838e422a15f6cd06c1a8ac983783a61bb9fb0a522cbc4903b8603933e5a50b132cd62a4a0a2caa048c31c660524e1b3b58548acddb201814189dd516ac2d3574374cf0417c24a356a49c5154d510b439a415ae7684ed580b22c4c586919951122410a4b89a5899a9128589ad2a3bd264c54d6eb06c6c0533aa1b5d4d6a9cd0b29819a34242fac1b9318de7eaeeb9111bdd3c66b8f1fabdd77d198fc57951f1e69b1b1c8beb4ac176e015a7a54c095dae30b1530e8254970931dea4546d21491dd91655566e3678a4ca4c769185055658d9333e62a3481fa932db391b3c6243491cf34195b72c6a5158fcb86cd4d2129aa4256788d2a000658186bec4385323482d8c195b8345e9fbd285f1ae469a1f674ba05468a181b334ae885ca5515540ecc59030a6362a3b40e01969c4b0545c7589573aa48054ace00a83c6c4843523194e82ac513142336363ca3e591109c34171526306851335ebe4eeee9ec7aa2b398f4a6c654fbc240d915a4a03c26d8ced6b645ba6524182141950ed8ee6a3e9efbde088d190b4e780d7e23536382651ce28cad06e609f9c73fe0cf43c1332e7ccebe59c73ce193b762f02e221c4852b4794321d35c27e674eb8392e23ddddddddddddefbdeeeeee7eef757777ff9960ee78bddf94cebdf7de7befbd17dfdf8b9c73ce19ffe0acd911f6b29fcf82bbbbbbbbbbbbfbbdd7ddddddefbdeeeeee7eef75bf6565c892d7d343b93318495e655a7c213263053827604443f70c8b262d988919f1d993d235efba20e10c4d0b245f3cb228d16026e50ced2fc63f7add8c3f8e4eeebdf7de31e79c7fec8c9d4ccbc2cdbc8cc7ebe20206cd6cf3bdf7deeb3bc99032af672fd3bd1dc05da161c4a4820a1510d7c8bebe9c289f220484094bd2a1c34bac8bfd7aa122cc8de3dd2b74efbdf7ba5ba47bef75fc56dadcb533c653eebdf7e6aeefde7bf1d0bdf7deebee370b9515b95539bc8bbdcc2c09e7c88e32e7dc2b3b336281b50cc0ac8ae0b49aac8d7955b0276a408306a87293467081a68c0cb02c5f67457e5c8cd830509114a92c3ed0cc54c4a0604bdc9635bca465c84dca538b271748447e5bb26c29dbd215ee1142e0c0072068b041f511bf7efeb1625454f8397cf327fc0ee16b10fe06e17f103e08e187103e07c2ff40f8238421096198c7703c35fcfc5028dae24e7f36f63577855db378fabc885d14af14326b4c9f37356d69a0a04972e6481c11335c6570a84045e669cc129c142231524c842903c6cb972b5ea274517b2b73f3e202644b0e2d36b2ccc0d2e24a14232b5150b4c5550143254b0a284c598282991423514c60db8252c2931a4e5e34614362c29662099a35316a5b94a490a4491a1a9230b4ae331e6658bfa8b22632282c8e40091a53233626cc0dac8a91275f695e63454e20e2e3841b43a6ba9c843c5132e1c950901580a8f0a30b97151f6c3d94f020db5164eb870ead1c555a327030dd705294e5e4049699ab2f2560b1926263adea47f53515444a479415148d1a2e6834399ad1c427e3cc5318272d31a634318171f602cc8590163b98ae96a09460243159c182898a156990e08eb818512972428464484c6848500f155929a47c31502c490a4f2c110a4dac5981cc9a37356d69a0a04972e6481c11335c6570a84045e669cc12dc1a9198351361ca80f1f2e58a97285dd4decadcbcb800d992438b8d2c33b0b4b8a266345a51f3b5a1a90247c52d85b6296c28a849f94531c226040a8f27594ea69a3c31615aa2c4684d894f0d8d12b8246e696d48d8d0d4ce7e66467e42ca7890651d991a7b12630a4b620496c46704cd179c579a5b068bb435808d016a0bf829c0c807211e782420abc31487a70d4c19a4196948f32100cd01e00ce0f6d386015b01d42ef811c0c8008458c0a3822c9f290a9e04c0140024463d487c004083c29d6edf36019b046a197e3c463008d9e17121ab37a5f394c3848366c443f359407303b77333db6cd8746ae58f34a285e45c8f1147b6816b78d355b26745a279e6abe6f74c5e879a66d7b7b97eadb56ab8b57eaeb57610d19f0ee04fadf5673666d75aebff883f22070b022c92ab48e68c75ec8bbad6e724d41bb34fc98dd519b307b90d8f91a8b42a9f693ac610e04c000134007318000083301c06a224c9611489647b14800b4e82385060228c0623c2280c0606048140180c04890c0008c00010c37010846128a6f4031591189bc52993404871cdc69020bd4fbc283fee81a0ad4b3cd06a4723a0db2c8e222e8fc83128aa8d6c92fe41e22df0338c202bc872bf6c5ad1d3dbaf0be36af87483276be390a717fb608a7114ed60a07c268786fbc842133dac2924e97c83e441068db82478446068495388a3f66dc9fd44fffb504e5642d06c6356d4fdf85afe6f1bc4c789089f4d64a2cdff6951558fc904ce9e7136559c6820000a0634c1212e7347fcebd8cb3ad10f825660ba061f7f44b7840cfa5db69d3a004fe73f304a8861cb31245836383c8a0802f865f39a1dd3ec7400269c81ec80f771ab1cec92a312eb91d840635483ebe4639b459fffda33a6be085cec96684082b76ad6db8897035bdea591523e5d666f316bf2ed2e76ad87973bec5bf01162e8489e0f44cca490a306980d1c5b36d2005943a896a7aa29af743dd0f9bd4055a9ea6e5801e806f064f802393a08df511c57257c093027de78117c62a333adbb915fcbf87736fe95ef00c9b54e9799b8f5bd31d7e71e6e55790c6b29ade238746ab10b28ec346877db6c52bf10dcf6e5fa673130946487f4c9cade7cdfe9baa30343b18ce51f754b309f62010656a6079b3db8855054738732326610d604a6d4b497578c918edde382a8addb0b11643f91c41e8e2886bec1de45ba8abb5d0d87038c5996b20c30aecda4476a88bc07c43289d99c14044d8c750b4c6dd76dd0ed4cd0746e6291ac17d7306960d123305a95515302bf8d9009f9a3a885e70859078262a907671f19d839d254a30ab605f230d0640b541b692314c777631442475f3df419882c7a24ad9aaa3ef0acdc392e8e001434e685f1e3228af8bc9330e49b63434ed41439716493fcbd00842dfbb062fcc40d0b44bd33d39429e99404aaa50f05c34d53d4e46120e23f4ca6671296cfc6726fed108de0402aad901f0ca224edfffdaa7f843c420fe2a3d9aa3b9ee3b9937d3dd1d7989c2902ae5a12e237a6e2777c88633799bac25474489c11700ec9962f5822d58e4ff4045a52b40ff7ceb88f4d660849cdf98062ca7559fbe0c9e5c38ab0fc037f2db0a85e6a325420fdb8104b321880f4cb21d006bf5e69e1e1522131070c124a65d63528760cee2b274ce0e7d87267dbdf255186f32107069d9dd9a1ed718e52c1ca1a86c370a0605d2393ca19a76d6d54a1d961cc889f0670a24a7eef0134f28d3790dac9dc09c38300f9ff89c64a73023baa908b19d0bb98e699ccf63f1e16acb1662aa771d2103803e481989f4659659dd0afed6e338869223c6ee94d1b8d9d8748416561a540485d6d4945df64411a9ed7a3171ca908e4a9482a5e8420813cd94c5c0387e01489c33065a77770ec07e06f03f169c41eea6750b8996d1024e1b6c287af75170679e0bbf2403e7c92467900d32d823417822f7de9557c3391251021487c98d15f519c5f5d0258195a60e92cd03ffa4bd311540833d935326a4eb393b10aec99852961e97392ab06f61afb3a8f52d03a7e8d061682b1625c9e8b0cde76eabc5b9d14bb4595960ba961757894a2db07d0f5666bd29102d99edc1e88cf50b82917c8cb6ec375bb7bb691e151646dd22668ec52983928d17003c46a6dc09d5c63e85ed2b6ef07fc9a3d6569363ddbcecb9ecffc3a5079697ec7bb720e02aacee272d685c44f778f107641403671b8dd5fe8e7506c6aa870f194ad479d5c3ee8bbdb73412dfb6973556b0d6da168219396f3b45aab3561dab868e352d91f5456f7b599a2b5276da16a21b396f3b45aab35716d54b57159fb435acdd3668ab3f678b650b59059cbf95aadd51a9836aedab8acfde15addd3668ad61ada42d5426764795f59bdd19a9836aadab8acfd21adee6b33456b0d6da168219396f3b5ba466b6264a3ba6c4cd2feb056f7b5994a6b4f6db168a1b396f7b47aab35316d5cb47149fb43cf6afeb2b9a2b5a6b658b59049cb795aadd11a9836aada3849fb435addd3668ad69eda624916322fcbf95aadd11a9836aedab8a4fd21adee6973556b4f6db16aa1b396ef6bf586ac812f1b156d5cd6feb056f36973556b0f6db16aa19396f7b57aa335316d5cb471e9d90f5e56f7b499aab5a7b650b49049cb795aadd11ab83656b47149fb435acdd3e62ab3f65d67d73068f940cb785a6cd15a865628daa84cdbf95a8dd51e9856a4daf8acf562adee3f8badcfdaa6562cdaa8aced3dadce6a4f5c2b126d6cd27a9156f3b5b8456b1b30f1d97e5cb21b3dffacd26b6d4cbb5eed58d2feb056f7b4b9a2b587b658b49059cbfb5abdd59a716d54b43109d90f2eabfbda4cd5da86b658b4d049cb795abdd59a9836aedab8acfd20ade66933456b4d6d51210b9997e5f41796af717cfe4060c1344e31fdea874172ec70aaf68abdd446576d8eab5517b51c543b8b6a699d7629d2ba15ad0ca2a5ed699560b2b7faec2ca2ade1b4cab0f69d6a65696d6da7558ab46e442b936a69796d29d6be51ed0caaa5e5b5cb70b26eb2ec4caaa5e9b54ab0d6ad686550adb6d72ec3b5ef442b8b6a6b78ad32d2be57ad6ca2a5e5b4ca51b26ef4d94caaade5b5cb90d69d6867112dadd72ec75af71a26a34123d3221ba6cd79b5eaa396836a65522d0daf2d45cbbef9faba9f2927f3494ffabca9fa1f5cc708bd23dd79e97b3c540d813573de9a9431bac44c753a4c6a30ce1b84b86631658ff44555f1fa68755e6da144b10e090bce7447cbc7e6f0d5ec658cb7287c655935d04753222005fa5c3e42ec683aed06731b7b9b47a150f968579535dc9e4e57e91d02b79a30417ac5c91d62f3917520881c636d4966a9c28685147038478cbf331eccd374f9f78830d608a86b4c2a3f1b30ad242ead045475f59edae679cbf1da0242035749dcfbf2e89c0cb5a8aeb8eac705ff9fe217ac51ad1b5422bcea951238edd368238780992986b471e4a4f5078a86f7a798db9ce51e86c84c176e267c2d2fe40f541127e495af99d9887feb6cb2228994ddd4430a4f045ab92de9a9c921b3150fd7afb69f78a4035a1218d574ad26474c523e6eafca76ea110543065a398dd49e1f3143f3f0facb7e6a9fea819282cb61814ba6534b9ed797a90331026869a3fa5851607e255e8d151e2dd28e9cea2f4e1e63247553eb670055b65740ebd1e0c93d3da2d79d2c7914cfee6ca38315e4365f61409191ef4e6826c1bb7a62226b5e9b8bb4ce7398c8d65cecdd02c242ca43a08459457f5d20a8f9f8fdba0a198409e0707f18565499d1b2bc7083161c73dd1f0c8bffe1686e3ffb3eb67f203191f0c0beba8ac21ed3bc6d5a5814608b3eadbf5b1a470597e7f925e0467fb78effbcc25db5d433cc9ae849492b716023278fdac0406e2a553573e761de600d8fc4246941d69d09d770f52d4ef54376d963c2597fa48afa066dfcccae295757c4ada4bd85be0175f0ae45105dea4f6ac924a8b1b0d2f8a04440dd00b951b9cbe993c5f13f126c4ae5087a64791d6140f07e8f7bf01e0521f32162b0cb1346fe273e8f51a5dae62c45d2f9d68a30d5e3407aacf0bf8e3a38f0eed6fedca3d8ea1364b798b5002430bc2240d3ab6eb1b16e0d314411e91804c78d18a773e192ee384dcb333084572f381cc6394dbca6ffacd0e29446b9dfa150208f3b51748bd3fae55904f2d82dd8268d534e53fe1b693cc8b7584d1e8e37e9a4312817b4ae7ba76fda85f312bda527cb9a9838920c1615f3a503696af99b984012907a96a586b101d3ac40cadf390d71fededf33bb4f99f595bba98feaf699efa0107dd299294d731bf52a071a6cba7d76ead7a47bdb4f6fc71268c945c160e42c8beab064b5c4fdbb24f0d6cb0e8b1cd0da2016b0d5f974c92c75cdb36fddb675cc415347c0b32b59950e625d71637f31ffec6de43e00e29003dddaf0a04f7eb717bf967f31acabfa6968e4957711274a5a7fd7472ec04ffa4cd38c0c04b757f0d329db1adaabefaa7669dd18a146f3f932573e4e72e3735a01392dfabb827e3a36b90ea008b09705c977351b9af2d85b7c53fc1a569561196fc8f7da33aa345a6b2d7734ea0ba817ae527a060ffa7ea8d974f1061368a6893d1b9195f790985368400800bae48dd8b4d8d2994a0c3c527ec89787653552cf76f7b37b756b03f6f89171bcda45388216d982b8a45d2492f3734cc5bbe804edcd033080ee8a0bb99a4594c8da028d60a1d6ff88f6cef86f37e0966f2a9726e7821f991b050669cdc86b98963c7bddef45e0ab8f7205f0d94801bb99090adbfa9e033f55514263b9b7a6507f30473e23d6469ee86b4c60dffd6c57177283fdf5175dbc9e583b927ca28cb64b43bb247603343cb8ee7107240bb3e756f7d254c147d268bb64582cac9a88c4fd114306d2ce9d53a7dcaea5f5a1d7bf2b7b6eaa874158745fb5d51084f452c8f12bb2f26b343080b7a560f40e9ea9505b8f2a1f1ed3bee34109b2a86e2330eed60c783dfd2b72a3fc16385f3a30569a91a3aec71bcad6d3516c95c15beaed3e769914b8dcb9e4e704326208bd8b581032cf707c5b12599c5ee6b9e07ceb1580cd05907614e7a2f7d70d9d3441e2bffe9289dee5888d4adad1a97666ee668bb5eef900353039e1959a06e9f27c240149f139d241f08b9a014483dfd292f7f061df48a42a3343cb5b3598daad9484a27aa6ade1940d1aff99ea1684bfd1328fb2b8db0ef476fa1e79f4937a18c11e40085be1395aba3cf5eedea46258c4b2d81539d0819436acea2b211c48a0b3753d864f26d8857db3be6f9584942002a120414952860ed5884369c2b14315abb26a306f0c566187629328949a080ffa60f4bb0bee7388f1a48d7d2e8926981203644dd325671753efbf51a857ac8e8d9a9e9c19e7042a6d5f1d61d47390e011ba61e07b650efb1466a27a361b86939a75754f0cea4931c04e59399bebae17d4a89de197effdea5d745d3ce4866a6806f857d67927e5eb4aa8e1fafc2a18608ac31b9c70ac292062dbfd65755c59e6d610bddeb28acfdd5f4b561b6ccb4c855587efa6600fb9c90fd5b5e4e2a62736a09fb6c3dd01b1c59742c5d06d67ee3fb8bf853b214687b28cbd74e9347eb2f7b036e0d69f9d7d7d0a04f24069be8fdb2524a71d8ec046bd8325af5fa4304cd47e223842bd3cb0e260081aaa0afe03823a1929cf112e5255ab9801dc15a25f0539ebdb9d0b2b034e2792576a7c940282e5e811d02e623e7aa26f0d578e47d0704d05c626609d5a67dd52b62c255495f7b3176d7b5b62afac5d4be1eb18c00fb7e801feac8eaba580cc630d3acd7f768b50b91ac93201c139b54d16ac49bb11010a798a1bf42802aa6338bdf9579a9288f5764be7aed93485643cf53528ad86868d00d835399c005aab083bf60dfdd656495380f958c7a8b5fd2f02c8ae1e2757ef84285d7ae200aeba86ab1fba08a9a717a0c8b4cb4cfccae354a44d9df583e8e7c38bf2917d4086c37278d831848f391e60e045f65035fe322d1691a7bae7e2779fc3118797e9855aeff3b8c959e82e15de95d16cc699feac7bde9fb68505148f808fd76cc19a1b1ec198f4d2864ee64ef4a3c267d677f6d53b57567047d691b3c3a88c60b989fe4eddc581222dd7e713a495c3cab86ae591e60e920443a048f04a1788b36726135ed45a886dbdb3d541bf79e85be2dcfb82a655a5084b09de6c9c8d24fe3227d3e68275aed448191d77960179632a71490ba67afe641bd768568112b19553f4b41944e4fdea4d2b806dd5f6188611ba04083733addb6ad7459cc94f9bd25635c0a8397718153afab664e3d6126fa3a2aa635068b58c2008d1a26fc635bf5f397a370a2c90a83b03d2b7a57f417e1401eebff69c3143e810548b85679601edc4e1bccdd4ce83a8fda890b6839aaaf57bb511cea42f72e36bcbd6f971c1477ae002cf8abc7ea826ffa9f28ad351d49a1af51e7b7b2b2ff5b3fd2faabc08d529920dceb223c211de73d1b8922187021d7c10bd2d1c9e1006709b06c43cfcd45fe0753702521ecd160f6c496ef50c3910de46e0ac27e7e73787fd0b8463a973723e2a9e6ed0e5988623b75241cf15b7ca72c2f7571bda49c7801df0ccf14ebd942b33a43ea6b39b0a5809b20083794ea43cff5e4198fe5d21e3d6cf2c47c442dc1ea34f16617e86d86406c40b14f4f76f1b5b6290171855e59f5a0773ed2afad0be6c31809d5fc851782ec336c4b324b680b26b52cacfd7f654f1c6012a2173f4e7f40feb095480eb6d7401dd48102fdc021b3f291bf6b8190f2debe4f8b8a3491b613281e7ceeacf298340e5de8c74592a81e7045fb93e046d1bfa45b390537771f5bfc0a22dcf0dec70014636431cc99d971293a037d388913a895df9b62d9ff5397e4dc22bef021e39c499707e74a00fee16dfb0338e0ea81e3ad0b6ac8dff8dfd483b2eb0126d83c750478499cbb6ea0c98fc4d81436113af77a58c1c990a2fae487fdf649df92b00cb59802a8c7780ac182db16c644658247640e28c7fc95af3f6cd90aa22eae50a769a8385013151d642f0e92a6dc75119f13fb0f0dea8f3e091a73f289cbb0c1a52f8f080de7bbf600be8dd819039942b088087cc82914314112739ac10d018dd4393803e6682fcdacd28a685493fe09bb89ad26d4deafec4f48f26816d794fc4b7075dd47681b7290b4de878de0443a3aa11f2d3eefa22db5f2a231210d0d6bf960bdc97171330565d495653566b8f41f918b6c139ec1b11f17ace992d21282feebb8066b0886b90d9206ab0584e776f7c864dcad995e75bb410247475d1ff7def9f7b277f50a7dc210f9aeade0e8081d664a6ed0e0f191a2ff8620060c3d242cf3cc09321fe6042b436a3324f35f003152d31cc5e188bdbc38dace517ad03ff1a11336c73178b9e2f18aa4a8426de1cd367e621c221cad35f7f6c6c2a6d5fcabb3386911456415fc478fa0f611070670588ffdca5b9dfa278fa995a75cc0b4800cf23cd6f5fe6299c850124e335a17cb9631c91056ca19b6b23673cb70ea83667a488759522275e6828967d4424cbad4a0567d7ab8657b7712980ab9e1a9612517c808b4c1cc6ea470f2f27a7fc9325a5cdc7f04e82d7fab19ea68fb5b57e74760e54b8f6bd7f8b598b50c7af8c31dbd3c533bea93e5ccbf940081ad3d84d263e705d28040b04dcbc40843a662f05795031cf336f95114c8ae3fcec272b6921685a826d0879eceee675dc31faf9d07762d53ca839dde72fad1dd4352f1b93743e3a68ffffb556e2e199aa3345cb8c3f4d15f052b364d206e42825d4eab39e2b3847a550ca94689b6f244cadbe0d92661127332425dc124f9cf146f68235cbc436f1fc9191f11731bc5a578925c84f3e50b9886ed4c5ccfc1aa84ee566755ed07f21f0cb2ad91f052e098f81dbf31cae9756d9681f37a0909cc6c60368568acb9f8203c49bac2c2d6aeeb123cb8d906fa0d76d2b523f7b5ee027f725e234e3dd4b8a51a4f250dec565f0cd348d087efb05c94f55ec48e9910e601eb07086ac647e2c7f09a3c1cc481b3b56a20ce0a4be67af02831db426b93044794fe102694660abd73fad7d052e7c51c220c6e3577fd8f836d78cda29f7e81e5c7c0133f2019560241409f91c694e0a874c4ac47216722d51ac6503276e54eb322aa2b1ca2b3aab68afec584cf3df42a0a2abf3eb40886ef018c0d3596e66817e876b2554a0cbb750b2907a2f7aa6c10d4f047eaf50f24807065360dbe1d75b6ef2fcc01d7f55faa547873320f858967e0f6715962b7d3f6bf6bfab4a2b82ee4a6cafcdf6a8d661bf6adbc43971a15b8973f592c67e0129f26e992bb6dee1d122a5319abc18139c789a60bb05f0b932c1ce057ee157fbbd42cc87fb19f447a5334538cec921e843270cf4d0bd4a20c40a35aeb6ee00541507c83d87cef018c2044694714c088c080efaab43dd5a248391054ee7183e917aea7a58bc68a892d7b470efcc8088984bbceb8492e009f9a95c3780f4a2000fb9916156df390f3c6792d073637a6e53d7629b6b4fa1f4001152ea963df839c39668d39e439349b49f71044188d92f413844451efe99d70c2c561adc97ceeaa275fbc785c3a58c20acd810f510f6a5b3c2cdea2cb6c663e0c540812a380580a2ff348036b7449f6a1096d69b7a00e30c78b2722ea74229190257ab9c1c5b2b034e6e7616a7cdb9c13b160684152279f10db2ab1beb85f209576613b31f018fdfb1beb5a6489c68fefec270d57763b58a0ff4bab39a0370c29e38e794bfb3c6986ecf35daa76b8c87d426389a12ec570544ea4ab0f5197277fe1be2beb5804a2cd19db53202d9634233d5100686fb324068fb9f8d3efb436a242b1fad68dd768c08ba5a3dd57abd67c1b5985880922bcb58c990a2c54a1e6b48a6c3e0a851440b52f7ffdaabe10d40b534c8f08b6ebd846d118303aa36b31b54843c805f48fa7ac8a5f967ceb1bf990a57a8a73f4eb2c857b73fe7c55a6d6dd5106b7d19c79f7d0a35c4bca23743037cd77f0735704b122852ead2a8e2cb49dbfc6e3968f9154880ac404a9fdab28d6e399bf6d7be56b68a018f72497681946d5731f59ad4f18aa77c2e32cb8cff730b4e6ddbdf360c6e4e2b906e558f5bf895e082b496a77bee60c0fe5a0d3b404a8b8a4d77ad704c54f22c6c85fb68b60cbf36e98be2660937de3a66cdfe1fff806c8dfb6365bcbb474e9f34c30a27e198419f928582d58c31c9a4f0b9f688a46d8458b2775fb507b66fded1948722c3222583c7b82c570c0011e393ec2978a9b557f2db38303836734b1892713f8d8514be3a2ea889e555f5657fbaac8bb223fe0099fd4ba38ef369f2aa095f4cfba1eae5d4e9a68c808b49354c073c9d1fd64880588b8739138d78773eb9281c5e39757d219493dc376beb054402000538d29376a959fd38e5c16b78abec2359a9235f172d907c9f9eb1f767592f78f16f172976257e0a270d87f00efee000ce5ffae08f7c40faaefbf2e255a892e4a2e10761ded379470f4267db5d1d6596ae509b86957104cde9e422c531c071562fc888f5d08c2bca1a723e1b0d2d048e39e1e740060b1eaa2ae75d6f9d83abe386cf161ba6c907395cacfeca868ec6410b230a12935385c88b10634feaeed2ff2bc26fa1777740449b67ece170a0521ec47b61f2ad0130b082853e6bc38f83411b2c30df4f7ea6dd1d1f2466a57ba8455e9bef50093fdba4638721d487afc1e3a18b6d70f719393e0617e0fcc6a59fc31869f3d92301eef8e73104acc64e2c1d467d2e5ec1df51a953bf741582ac2599f235e01bde8d05eb445fb912b568f0f30909d44fba449b573e2682e0d5b2821810db2db5c2ff8387743cfb75a18fb30cd2b8823cf1f3c61009b6fa3900be7e683553a247119325f9412e2cbe7177087240ced3baf0ae8a2c97f71ee51c2bfee05f5895b4f25c38bf88cbc28f74a3b7117b3aae61d250e84dfc30a41fe08d40c64847610df6ac1f91c67ffb66467a0e47a4d0e41e263f6a1fe9e689e52c24c00885596fd0a284f86fa00d3194d98e152547ab3a01b049544d1f0059aec2d8f99d8ad17d547d7c12f57196412e473c753bc7b84966e929664baafe05d55327078f72ea679a294db766184efc65b5522c310b630603798b09b29d50ead1bb82eeb03102bd8f53beeb3f6254e22a400dc26a186c1d3126d1f7dc936615b85f42ef3d303b3a5a9bd85f1e58eb03f0420d296f4920bca08c1041c61de58a252eadf9ae56ba7205a25e884f7cad3906f4747d2c25735efd6f3b2c3699149a105c76527c8787b242025c6c739bdf7bf2f222aa01779970b829210ee805ae1b1a41c30f2298703c048ed6217cb0feca05fe458a6a586d42f4866fba853dff4fe53f28708ac5de6f3b8adafdeb5f4f83b5dcf263fb1332e0fe91e2e09b23374605c42d4a632a801e9d4f97d5c140b8f06d0b37ee2b85fdd507d56f0fa646c58892ebeee3a76106853cbc0ef6adf195080ee39c5eed1e1a709b1df0a03f3715c01f10761b85fd12bfeaa0fb702e5fc7bd5b360b971ac3cbba1331b0fe7569afa5c722c0832772938ecc96ab71be5b000e96d68ebaf5afeea8eda2c43582ab72d0b2490ded174c24d91398cf23ea60929ce25a49c7b712f44a5ea38cc2e443193fb6af55293d2812049f3d2681612b029d8131df9e024aff2fdab2059fc138452809acbf1d7e1a27bc01d94ca750f5968bf94b0b89de456d27510b71076f40d5f506e816c60be4b9f4c6a95ab3a85b60fe9a20bdd739083423b3c1ca1e2ec83c31694c0b81d65052e24dc066830c1cf4395115c47941ff4ec47fe5442c5d1723d1a7313dd9bc536d18f0dfb11797ad4d6bec09bc0fb7969d8393131ab7f47e15a982d91f8cccfb4760af24a06ec4a899569b03521d20d001c58406b1f475287c3c3ea63395b7eb920728534713dff2d8f2860a9e904c458f71b470fd649f6d43aebf6b0f02380e3e1dd87640b6e0cfbbacbf99aaefdb8b69b05fbf86e8cf09c2c4093a8bd4ab6070677815a1e16e193820e7118147a7e972446dd002fdb57264d8e1caabf5e6cea6dde515c1bfbbc56fb44d6101efede54f58b7c3b94bb1d6f264aef86443e855d04b1234ae066ad9a00a202766b300b5ef7308278464ea9746cab5f566a983df8f9e3ea161555157877e7d9613c6642a353365088eb92f7d496597351821cc3383f1d1929abaf9296c55db64ed5bb5cffd068cfd7eccba74ce1203d0fa2b843bb816c1dc38608c273183ff484c5b57da4f2ca0417bb785d4bf28f81000ee1178373bd2d628776aae5866fabbf523ff47824eea2054360cd67f32d62fa4626075afbeb582abb0837af8aab9fd06508aec63c7d98f2f956b3eac6a948d7419ce18b5ee537a9d5e87e112f7e4997d8eb4de9f21befde9e6acc26e7d43b9cd7f286af187d53eaf43b8f543a1b832b547cc3ec9f81a2c1c13c462204933ca3c28987edbb40a2de0594d7cb955b52a6db619e5fd6f848255c7ef72f7d38f93664014b2e451f6968f19be375ef63131235cc11ae15858b1fa9dab1deabdf381ed2e9cffaa0cf9119d6c1b313ef73e3397d6fded088fca66869b7550d4e55beb1818a53289e2c57876ac0371955db90edf7ef063bb2d47d7232f663f3202aafeb420fec31e5d32749e6d2df362fdfc171f58d769e31017a8ae33276b6bd5208d664da004f75c81add659cec40c40ca78368380f55ee6c6a99ea9aab3ade7e9bf8b0ae3a6bb8a3de4c476ddce58bfb2c49686d53b6c282e664613544b340c014b828f9c334f4307e184b84b28541099a7c33acc54a9d6fb719d82860464ac8302090f3a54dd0bb5ffc406aee1e043885946a412fb7a0c4ea1a79009e217979c5f2d361af6ea55f3f88fd50987e59a176f3679c28b3755a49d29a464ac2c467b4ef57293f511e7f17a947636b01e2e65fd2d67da7c34a6d96c6252b6312d335e132a01ec24804cb449df7736caf35d000db792fce1abd90a2479e5db6bc2bc363aeb8b79f357307f3b45c779c8e15d1fc17ffb769d8576b9396568bc7a52a3fe977495fd282c6d52257df34e1b7f0b783ef37201d1aafcfcbb2c3c9813244b0a70e045444ab1275367620dc68cf92eb2dc0f92fb2fb204355c80fcf7e94e801797454b2d9c615d0b9bc976bbdb065774a25d20d1e03ca673f14baa042bfd61925dbc95bd527cac3c05feeb0df1bc519f7b411e502f061db8f02a42489e819fcacbe2a502ecdb6019cdf4e0ba82d657efe8469e01e51bef2cc91a58ddb92453d9608dc78598e287951025d3bddd91d1fbbde51b9412c5c333bfaf40295c085b1ce41154a7b9872a11546002dc71021af9c5655b400ec29236ba3bc8dd1deec591f59f9dd958ffe5e8d6efe1527f49f4480c679fe6b0d32eb7320b0959ccbd68ca9345510830c209ba2758586c3ed00fe901396c80e2122f1b0346d119b3bdbc093f357a5257667b69657777f7921de5063406ec054e3abdefc88913214186a060891151505949d20236671541774a2cb358a494573a3dc980c38b2a8718bebca6b822050649913ca14418000560a24c218224963829aa5264c1dd5949a242902c4990177e20f34412219400c25444a38841f0eac80c34748144040b4ffcf044d12cd3a7151150221a2c29b9404396114041244261458895a42a55dd891d6c8fa198e5b1ba6ba261076c8a072b5e42c0c5113e56d0830c86dd80059030555d40f192447ce2280a1263c298a1a249151da6eacc8e203d9942c2e9eeca132fb4be602284e625812941cc387142c3102f4573054cc43029535da4955a254f98ac74f131a5882196442798ecc04488254dd03ae79c73d61499519e88524557a0f48818e5080a7f88222688a7bb2b51a8f49aeeae4481a2a79c2224ca48192f3f7cf4785241152e70081282a80ff4008238e6014a681d526bad5452f9bc74e05ec9de277797c50b90be7d90ed024b9165418498ea72775b7490d2218c9675524a29a575560c0996d74305294b8d50fa812b9628010b82482102178a681349483c50d39d952353291c792209a51c947cc0c0848ed2cd39b758a9e20a0b3064f6ce30644c141e9e76700a93252e81040a8954cd2af0e024a32a50ca01921100c17ece4881d28225292a7891c276f83085430d3c540175c57d52475ad06777569038cd1f5a5657690f9d6661c4d3930d220b1bb2b09366d788677d5cb2ced094a7d63ad2029d534af9a2b4d65a8f48f9030bdaedee8ad212768b7c55b6a0638a2521b6acc082284d8aaa504aab9118514d6c00024818293bfc90c1c1480e3444a1421044b0a8c2c4a5804c0d570b99186288d8162b4b58990a9ad5894edfacb2cab9454ad24a6ba572ca39a7b4d8fb68f15562baa5e9792d93599da453b394524a794beb16a5748826193aa574b6b4219a90baed6e082c5df44d3f54b624ab10d2824aa68b256c0d98125037e79c73522194524ae99456461685093aee4e88289c2811311ca9d46841830328a52d58e4471499570c4784d96286146c2c68a594da59644e10b6b0c24b96312c4851a4688ae9b3d24a69a595525a69a54fb36ac173d65a6bad94525a79d0526badcae426664869a43e58cfd522b5d65aeb9c524a396badb55649a594524a292b96524a29e50f5a9eb0bb2ada232c1eadac721f122cabb56a0b3e80608207114c5a604154424a8f247246a165dcf28794524af959a491c6f8288f2d6ca8d6e40bf34929650d36526bd2499c3db022e5d4e74929a59432ba54f052042ad1a55661ca876e694d4a29df878b0a57e488c976385343961640e9f204c5062a8484b998e22251484b80600119269814cd24faec32439f5bb8e893529a99a0544a2969dc3205a5524a49ab9472522d78524a29a5744a5a29a594524a694b4a29a59454de4c4a29a594524a29adb2564a29a5544a29a594945629a594b25629a59452564aa594524a59258b3e4aa594924e4ae99c73ce3929a554e289c9596badb54a29a59492bef0237601d265775ab48ce9db07591f1bea471e6aad9652213c3c00ea052db2b8a28a8b164a8020c1458da51794f002660426d0010534524ae79029e36b6a09314e985942040c51355bf00085892096708108991c8e80828282828282828282828282828282828282822aa2c813921d9c8828c205940f971e3a74215f2d2667b4d5c89c3f68fae10b473fae0803448a132a78a06284db92830f5c9c8122cbd297f89404043237581933022044b08222c0d868ad2f30be9c0088129209c03cb132c597209c10e0b40216266292fcf0256b2d2f2c2f73032ebcf0c4892a284b515e822c90923a25a594563975757529abac52ca9a5d2594124129d5e42c3267175a2ba594d25a2945d2a1da3cadd5030c2c9fe0852710942962072b5d7a604148d08c1feccd5244766b554229e5d2a996a64e6595b5425a655dd93967ad73ce39e79c734a4929a594525aa5a494524aa99cb4ce39e79c73d6eaf3ae4929ad756aad39a7cfbb6c7c4c4a29a594d2aac9227366b982d63a29a5b34cd45a94a620434a29a5945230f969ad5527102c89d59c64e48915568a682149aa4811dd92454c1615c839e53442a9f4019241472a1d1c5245920e2cc9628a215065a29615aa9088324af9566832c6033cb40ca9a10442b2f4c9d4a78c2e6a097940422216712950b202284b7e6ce104a5894b9c485495d21e74775c8420cd702b7dd032a99406aab59cbc196b0f28526a2d197bd8f0e29c73ce29a59c73ce39a59473ce39a79432f6b8e1c1186394524a19638c51ca113c577b90e021f980218a182f3f347982c50a21533e5c8450e9b63b2e4288e8db07d5202ae80a58aa3a755ab0a8004bd4173a8178f121231030429248822208102dfaed9b7ed9e3068722968841062a905812aff4f8c22588999e75c7058948109518972d1dd0a13e5c4ea0735c76d65a6ba572ca49238ed3d18794442cb9ad561fe3338b836ad5bad5facf9fd97deffd5a5dad5c83f3b15cb98e8decebd7c8be426d67cce46ec568dd19af7dba17a03fab0cc0ba7efc96e7fff9b7f6b5d5b3567f3f9b38effb75dfdcb879fc70e35ab56eb5accbdacf2afcbbb323ece2d7af11bffe51cf207ef55b5fa3f2d8c28fd17798ccb06c7e1ca1dfa7bbe2fa5bc5e4acf52fb0fae14d8ea09f8f5904fd96e3d09f711cda5bcc730475cde373e97cd6dee663ec2df6170ff38d7f0be3ed8b173c04d6b37ef5446ff5fb6e2cabd8e6d5dfb79cc537146ab611c2e51b8cd701fbea5d363aea2b8ef3301e661bafe3bc957a4238aebf7ff9a60376fb30b88db2db4a91d1f6371b55c3722be5da19966ddc8edfee11fa91b6a231b6613f6f17b81e6f1cae1bffd6f5996be3c09ff3bb3ecb60cdde65d0efdb0c5c2e1f9fefd7c6e8b6d5b2f7beb55aeeb8697e666fc3b7fa3623f4ba730475970dd78d7fd767d786cf001f3921c6737b1cb72b03fc9bcb85f1ceefdaaee7b77b1ba11ff5983f887c83e77a311b49091ffb1a50becbf383e06f412dbee9fe70cfdd41dc08c038fcad03ca37c7646b54b7d8ee0d83cf2276bd4ce38801ce3ef6352c578091cd1fb8deb25cc7c6fcf847fd654b44f7a6bbc59fd5b9a520f707cff51edb203cd77bea838ebfb926ed80ec7fc6b70a2b5572599bdc5dae2782aefd8fc1de52a0ea367f818d8256ea8763dae75d36f279a2f7b363973edc09cd4b1a9e42d0ffcb3660f4774c34ff6615ff8df2e8f98d2225e5acb6f49e1df98e510fe87dcd8e4e0fe83dcd8e4d0fe83dfd214ec1a1880481dee38f4c2f053a88dee2527fd9c6a958264a7942912a4e3d219d111af05c5d38616e2fa74d2ea74af4c9e3e03da54f38a0f75420452ca40a11e9d5a3d2d477baa4b4b5a812bdb7e67885298b29fd510c6bb654e989125d7a429b8db2514fe8add21382ef63d313da790c820f448f2a41243864a32491fe7effe6d9350abf633ac1946e7530bfaf3b218098d2dfcb579337e4ac5099c1224a2995c4aafee48ffe1edb0d820f543280804a628c4d5830cd89614afabdf7ca7ef5bff8faee33bdeb733d97d69acd63d66518d75aa5e77ab6c973393883ae80a3ea38f2cfcfacffaae5d0bac50f73988d6236b2368716cd3cd76bd2b4b79a34d65b9f3d2c9bb4ecadcf20964d3af6d6ed32d7b81dc6db273ab7041db2eb7c8ccf74768c6d95745ee7895e4c7a8e2a87a3ea303ee7b39cadbdcdd67844da3109c61379aef7309ee8412525d00c73f8824a8f83f7973b2af8822f25aa841dc0f5f799c4b2494f138cecade13afc7b7fb3bff2a23f021d3eb63b06b74a3a64d7e1f649b661575ef4779cb7619eeb056bd51abee0902baa1abe4a803e682bc5ad8dea96ebc0771dffd5e1b4fd87f46ce4253cd7fb205fa481c701559103f08680b3590996f23855e609d57f9647eb7ace8edd66c7aefd705212679b10fb46954cc0f65bbdcd8e7db33c87a3eaf9579f59253844adcb32fa845e79e7bd9c2a81d1f137aad41f6df25cef2395f7c2b969601ce314047a8fb3c72056d443c530e338f5ec4b6eedc738f53a76336cf6d555e9f6b3e8c425363dd77b79456fb1a9bf88048762512cb3dd73f138f55cefaf0f7aa34af63d842fa5d4f20455b4d9dd4711ea9050f3345fc375eedf5029da7143a5a8e669ec53000ebd22fbd8eb09bd6ef996032669aeabe8bb23f05ccf49550595e99be4d15f9c7a493700b9e7c29fb910b463b242a9bbba63aa22aa335991d49d9622a6decfe88e898a1e7a9c721e3ce18682a8bc448025061cc09829a2dd3d57868db91f5f175de703d7f3afbce89adf315131a51f75bbb7bae18e33fa35bbfb0876ca89e0dc923bec2ac914ded12a85778427f6a3479d31465be50740d00120358c0c1f70020899841218b450a1484424475cc04173c185237186224956200940d39204a54c8c19354022493e8a64a06931a20520d6c082911772d03e33002952450c3d8a1c917942d0c50e524644924591265531340fb4a0c810aaaa135f66ac5881cdd164a0a285272470221329488025de683240d14207a00d9229225b48160c4d107122ebd8440c11216aa614456489971b8d20d20292076648550e95d298c469081332701932040c419621344c25430c1112540fc00466a409a94815a5e8932a9c1046a86ca1414c172e5354d18496b4ba39830c8283541143bed8a0048b26a8489224490c3549913e69a5d8474d128fabee133db963acca1a606c84f3c69f411e3d7f766fbef9e69b6fbe55aae74761697b6136e9a4a3674139db3970bf9f6177b334be8dd0318b631b3a3dd78bbdb51d9c0fa9c4577cc5577ce9cfe48654365c9253e2abd62a1a84be4f63f372bb9bcf30976f387cd96c98c4a4f36fd9cb8d23739dfbf937ac4b4e03ebaee78a552e8d5575b7fc27c8d7366beba772636b7e9c349866fea4a189980683b12b10d4efc5fcca2a2b10d433c761e5de826ad5bad5fa67228240ef154081d0bfc5aa78e609e167fd0b7df3656d23bc7dcfff626f2ddd33df70e73982ba24a1e6e7671bee37cbb21d3d33719d064c1b041225968a76ccc7087065fa3d2a2282799fe9f9336c6249fd5a20a863fa77d3b79b7eddf0889339797d40187cc14da5930276946147d16251556a344d74c5283ffea659bfb5567c23fa408b9acd0cc0f4c3afa11f3e5a2b764e2340167fc1b7f84470ff733d983d7cf6ddab350ff943beb95c199661fd1a906bcff5b06c2419e0ba835cc7c67df835eec33fead0eae772ef9cb3bb55778cff7f2ea70f7a2e47f42cac40bcf75e851fffc1240893aadc27e43e4e611653c29a584c8ac5a6746badc5ddde7777d77b637418120c9a661d39b2069eeb61317848e9ef9d449a4bf85a1b857581b6a5bf055fb029676e1d3b30248c08862fd985c6e0eb09652f7f6c3ff46c54d5e2d498327c7366ba99a01ca7e4b79e34974d56a94db494fee494fef8e69e9ef8b6c1069bd6b17e586c0bed63e768f2c3a023f8d5aab5a5416030677f770e8a64b11a35164df9e6cee8261db9134cc71b02faf7253c21a42774f3ef251de9ef77bca157958d307ce3d273bd38a502411dc7cde387af9aebad4050bf1c877d2c1b65bc6ffee6edbe7997f5dbbff9ec39314c679e5c1ece01ad9e9e7f3d211cf2e93f9a632be1684ab74fd52985d0c2277a525e7ba185f099e9f0b71ccf4cbcf36dbcf969ae78b6b6ebd98e1d07e781f68f9aa7a9d941bee8061cf25b4f23378efaad773b36ec7338a7de7a0c1c3d3cad843867a545cbcf8f3d966be4af75c79ff9b1a7d1fafcf2e62b5b313e11c4dee5e8b2b85db74acff570ecd9ae2873fdbe95b252362afefdac629a6b7e6a95627cfd7bdee1bd6535bbf7ebcd7ebec013bfc419d7b9712f86f37ea99c5f8f7deed833f74437e9d6639fb1b5d8565c2db6f18960bedbf5eda85ff99866f3ccb251586e8222a9d7c7590b94999efd76d4318e8d06435ea37efebb71deec9f8075fcd97ceb68367f2bf5a49e147a4e126a9ef3e75b8e9b43c0bc7e866f86416f56c9861942e398c0fcefaecfcff8eac58bbcfabc579f753c0bb308d9e77f5984ec21cf385b7d8dd6c3bfdb2a156119be15413e7e984590f08bbebfc3febdb73ed163edd8ed763dcb627fb1331bf56796652e7b1af9f18e6ee19c585f6d1d4f84fa2cd6e76cc4a281df3d57b40f33e6b3b5b7cc2bb74fb0e8cd26d570147a9e3fce765dc6bbf35b2988e1b65136cc73d92821b4ac61c3dc7c1fdfc76acd463573d908efcbb767a6e3cf18cb34ec577b01d8da4e6a3edb1beed934ef3209fc69b84e037a7a780af5690b0d4b45351ce98b805020f2ccf490e399d9913975fb34dbd2709d06d07ccdd7589aa711a186e916f6cbcd74cb3714886c273d8f778e67a6d3e75b87048e42cd731e9920d07b5744b35d914d82433ddcf248d2a275866118da65a3112cd1b353fa7b202afdfd0d537f0fc356e9efb575eaef2d0f38649f5cd1f787942348af2724b4c1d756abfafbad9ee9efdf1699faa37a425b9cea669ed0169ff4f732fed92408247589f47793fae6facd8ee9ef37cdd259e6345ecf36ea223d21f762c98e09d37f44a7edf2e8ef6d9827e48618624c7f56aabfaa3c04d30b7dbb44ec9435d3df677cf18fb7540222ba8d7a42f906c645b71c6bd2497008229d7942b5a9563da1caa5cbc69f6164b46bd2224c7fea4b744a7f34f07ffeaf3a30d0f3efb92da0ddb3f9aed9ee01d1d86af3eeb92c666dde65afade8cbb723a5bed97c8ea0fe8f65a3eda8ffff3c968d7c60d49a8df6d76cb4adb556c6e39d972161d0363cefb2118fcdd8dafcdd3982ecd342db27821736e90f2ac1a2c5ebda10b06ce4b2d91559bf7aa13f27f7de8b41bef9e2bf187e0cb6eb594eb6b72bf418dccfd9aec78c3fefd7e4b932be612d58df12eb2f7f4ff6537a2e309af5db537a4d5e857cd3da12c68ad1018ff144efde378007ff448fc53fc6bd9cf5bfe17bb0e31b606b1f63ef3cdf38dfc1bef1f98fdb83d7b6017036ff9bdd8116a334ed595063693b37383b2ca70b9e7e5c183cd163395de0e21b07facfbfc7604737e302e87401df76f49f1f0e9f9ecbc97c1c1c1c9c9d9dbfb9c1f91d9c9d0d3ab16e1e3ae13cdde0fc7c16250b07e7a113ced3ce0f8be584f3b4f3c3bab96139fdf0f72c9c1dd6dfb0587fa3699aa63dc7a1fd8ef6381c3aed70f8a4694ddb389ac6fa9dcf58acc7da61b158dc042db276589ad3136b47d3de69e7bde6f48430cb8775ef947b87fe31ebb5214ed472b2794e93cbd8f9fb8e75773ec817dda0bdd3f79ddb5a3220dfe2eff0f88a3b2af1a8a44406dfea0ddf340edf5afdca6c7423177a8b2f25cd81de401740c3a4173a68eb4083df8266649003f05b0b00bfe9adf62508f47ee50481dea6bbeb63d58fee393939adbe65ecdaf7bbb77bde3ddd7b9e122d44f5a3df27d2ef73c0b77aa4dfdf806f5a49bf5f003ea6df2fd3ef13806fd54cbf3f00bee9fb413ce9a9dfd7806f4102e05b075cfafd197c7355e9f733e0dbdfbfcf92723f007c6bdd0700df74bf0fc4b7daa1d3987eff4cbfefe25beb3e064efd02bed5a82aff73dfc7dd6fd9f0ad6ed0efcbe09b4640bf7f135f78e7beee3321fae4eccd55d9b01cabde8f9e418c02919e3dd1bbac8bafbcaffbaa4c1b78f50cbbce39c7f3748ccebf39a60dbc7a8efd2e2cb7447233e48fbd37acef4f525aedc89f7372c638e39cbd7a9771ce594a29258b6f1826595ceefc4ee6ccda397c3bcaf96736ca19de3d7cc37acf677b9593b35ae5fcea69365ae5609cf9a6434eec003df3175ac3fac434c8a8f243cba9200fdaa003da45e77ccf674ec733f8e16ca4f3353adb39a0fc357b63d6e7277af165395ff14d6b9c0fdd4b2479667d96f2895eb673bec7ddbd4921f966d67b89e43c78393fb103b89ef32f1be5502ebaf5b9f5f7a394cd5619ceaab2d6c7a8d66f312a0cd1bb3b56bd7dfd37fb95d6c37a1a58d770e0cf5cbe8051ced3c0fa0bba45b35e7bbcb3c78ff909b0b3def5157cb1e1e7ecf87bdbd7367fd6e6f99ebd13c3eefd7c6bcfb359bfb37b2cdce06abf8ee99754920299245284d6e9096afe2f5fc088e769609d7f266dffc900069f616e3e9a0b7e30e01b072ed8d1cdf8f9d976749f7fef76b693f93c3c3c5cc7ec3c9f41ec347f988d9ccccfb02c02ff9d7fd96887e7390f8f469cc7aa29fd52d8d9989bc1a3054bd3cb3e9f45b97acc69c0f370896747e7ff7c3e9319e5a13e4f573bbfc32f00fbea7df876d4f9bf5f6de766f07ccc46fce3d6b9b1fa9d8faf03ae7e879f007be43a66b79f4d4cb391fddfecc36eedf3e0b0cfb568fb3c1c2e71bedaa2edbb0e7f85fdb3ab3f01f6d5f3cf56abc7e0733330b6fa973f883c78f41537c13eecf831a701feb8e3651bb0f313ded213dae4c681befac72dfc0bc0cec337ac73fe6660bce25129c68e4a9eebe12cbe308755d986548e89c886cbe07fc3b7d7383cfbddaa11d4b3a818e6692c9c1fe31cf30dde902b7a9f6530d32c3a7facc2194bbdb78cd3ab802c566559d5992772ca1b725e96e48fa7fede1da97a2949c9f2852f68e65dc7f422a258f4165f4a4f08467c058dd073ad5ab75a34089dfd16b351a62f370c1830ee1bdd0b210c1bfc2433992d3dd71448c5691c48456aacacd56394b63ae7b3ecb95ef693e7af158c432a9be88306d0dca039085132fec98892f1ac1825e3318feaaf468cdfbc8787fcf18472feb956bffa77f657bff716fbfeecdecfdc54c7af2e3f678b5599decedd7f614450977edfca27a0c58176433f0ee856c1a1f88240afd6d53ba86dd89fb6b11e5fb5c248a35fa311bbe6d1cdb82c56cfe3fb32cb6c4e4f0ebfbff32e87b09f676f9c7fb1b70e7ae6bfb7da577c078756d1dae3e47c2673fe7ecdbfd77ef599b6258f58a5fd16abe2194de76b6abe661e1541d6cb6cd4daf18ca63d0e8f55cff51e9e9b8ea7b37548a84181e66bde156577e7fcdd3734ecde8dfcf25fbe01bfe817d95e5d67b4ba5ce746cedfcff9aa78467bb9e399e77a9946963c9e9076b39754a8644c5a6972102a642308004000b3160000200c08868462b13ccd411852cb0714800e6790506a60300d87c2c11485402004410c03180600000840c4288418738c4a00027d25c41ef83f043f0fe86d125611cfae1647565c6de2258c691c0f6885ee86c311c2eb1c2e1c2383d6611f21cc7b6e33a0faf143b0edc723cd0562a39dda3f3eb2f916ed9d54d118efb2ba528c30a7a7c2c1b0f6413e33732cc0d2170af21f655117111b7c2d2c91293dabdadd4e2cd87f6d223a5a16584cc1ab5c0418cacaaca8caaec87a70f43fbe8b9ed4c22ad6d824f007412cf3d2057c458e9c892367a7851511963debcc283f4825fb148d179089f6e70027870ef11e0bab09836ee81d2facbfbf63272f1f762e556d67ee897a88dd95314ca09a091dbe66ed24ac2319823a1c2ecd04381b9e7f612d13d003eb53187252713ad2c0952165b4590aebc1ce4dcccefd56f85630dec105f4525814f427feddf577b6b85fd73790fbc2bafdfe3eb95e44b34a1555bf17d63faea10c0192109d764ce859af4999bc41eda293864d8d598a55407a61355542db5fc05089341754a1c2c29fa989d1fdfdb50eaf8f2f76b5264184bfa98ac2a2d6d6cc441ee256c30470ff3da5aa82b7617249c3d871154ac0efd071ed06bbffb6a970bc1f476e1553765a333b145efd309fe31735a631bcb95cefc4037b46f78caa41161cbe53997736084739df81411f975826258b83156fda28062410cd9978384d46738b66f4992a036d0d76a3e28c099f7aa82891615cd871e660cd0eea38d2f3d89117bdcd3947494c865551bf3458a3375e30a423579657077f0d7c7ea92e407c9601d1d2d567d481d09f69d9a8f68dcd5fd8e76082741a84100df20f17f5b07798f11348abdf9dc1806cf1a5bec2fe219393a792d179b4e4118e7dc40b8832a33b8d90da050f15c23f09a87c46526d9d533e8603ca02a7d2af7b77b1400e9586f666bbe66daf04ca3dd1fa6683c1c09db8e1e45796a198ed4acb9f75862b725126cac0effd649c13035a7de25430ad05663abcc5165e61ed1566f87ac07151d2c7419a014860ba70279070fb97e2bc817548aaefd1f809161ae14a061a11884456b1aa84d8a6bf4ba7a435a857c01406dd1484893a470a9a07f6ce6879a2729814aa31b1ddd64b3af84f9049f6ddf9d3c08cc3dd8129cc2f3b5395ba26d7cbb03168c7fe5de8315c2df414ca66008e941a4bb366e0f14f273a236a3ad1bff31ad811de32ced1604b317d8416dcb2992ea1894b4e5a880816497d62e0a9b4b521a74665b11b770e29dff0c3574bca84335dad6e6b6f9bb5abf916900b258ece0f5d53844ef5c9ba1bad3bcac8053b08c253bb8f8666c34739f70d7bc29eb2a3c62ad52959c3df0c70735a7a3e15d0717850148b5724e424c6023dc9bfeab788773e5ccf1f37adc215047ddfccbfe6262e0a6ed980eff707e4ac476467398ba6b89cccb901838830f0b062993855388f78e7b6dd0f5c6a4eef40d0817695e74089a709366d34409fdb495019860931531dd5dee01c8096421e046a938f2ab5c091cab2cc7d622bb09d19f1f298e5091e448051e3c3e646a087c4cb27bab081b3f08996c890ec73fbfefbf5a0202371a2b04a1e74215442e91838caadc952c715f58407a27f39daaaaa0737c0eb45f7fa0c50eef001d594440861fa9ba1fbec2cc87d2cf2e423c9cf7c8db1ee19608caf7140ba9dd41839af4ca15f079bba7e97e23b7181602e08b5b7df53a09ddee0a22fa563a98d3d4df4bd708f0dee37f4604197a03efd51cf116d75dfc63722ac139abfba2f871cac80a3dee172c3fd41e116260abfbd3bc276e15eede90837f004d49b0c22d4e7f9ce15bac8c9a9449a848068e0625e0a90e485c4a0049b28f1fd32552dba7afeb4938f1888775f5400830c69d1ad20db77f405594118c4205c2bc2e8865752ab2d2d76da48600940155a83145b8cca0d0ae898de8af4c47d898a1eee872f7208a49234960c137c027230e0b130195ad6e5d446bff5445db26550ca4274b7f4168c8ae7c7335c803583b901b6ee36e63d3a57870e3642dd0da47753ff19abb00b0f8e557f508932dc2d07450d94de76202b78d77d5ec4489c4a6afa6f025dc275462bb539412cbe824d03abce88c09170ade9e1a62cd71220f374b2e17fd14c9fef30cab8469a3729c0bc493f58e799b628b43c7b20574f8740aefa19da6045469637bf1ccb2014a2401669bf3ccd0f87eba261f3575ebb30f7aa90170a727885a7005439cbe1892e21c9129628e9ff0a991907e8ab720077261a8df4a94db165bcbe8b87e3bd6b7ae81d511532f2f4b21ca4dd75184850565f88f56e1e22562baba3855cd487b27383cc8f4da5247c3e91eb8f044108d225e7852945b6f18b1908eda8160c229bb86e87a0d1e3654c03255b2e5e2256a12cca02840dcdcc3a4267dbaef141c2c3b1c794644e60ed5ec8a59f3fcadcfefe72e6abb708a927b52300925d9ac45466e4ca3fb441ec67e5e0a2c28c806101d7a413442cefaf1a8eb6019dc4efe956a6c74af6214b59b37a5470620fae2cc6603a38aaa98be47d5574428a0c132c4561b931fe29b493664f3983f99b4803492a3494ad29fa425ada89a4656a846625d558acfca7191385c7c45fd8ce6ea470c96f5aa757d09c120de10abacca881026599678ba71b91d2269413d5c985c58676beadf447b8bff6f536babf140291c01e1514a2140b9c0b8d1196e0727eb3e88096bd7a4b9bb17bc3be356c0cbdaad5b2d2a69185a2488c9a833f1c069c8338e94c1006c4a7d6c92d0e20c7fc0c9bdf8ddae2f5d077c59de6ed87e13124c30706ee7a1883867a167c24a85c8f51655dfbac7dd3f9eddc27a559e5645f77859b85a0c830c0693af3148c9c384aed33fe78160c05ee04a461929902826ba4ec832218cc1e57cab44ceb50dee33230c3f763ea7d81e7088ff8f31cdabfa02a7162535330ccfacb261f32480689e5a6b6634d57839b6ad4f0cb4a6d2d40664c7236576c2fa1fe625506113296e2eca3ec5454e5f6139fdb05bd0f0b93d42749b979474fb71dc449cce15d3bd113561ec83371e4739a183d85c07491d4e21e2edc66850ccf3eccca95ba943e5434eeb10f544bcdc73fb12f582be615962dbc7214bd103cb779e3e2f918959f9f8e507ab5e4dd20f38a07008047bd0fc5e03e8f024a7ad25bd57216d9f4288460cd2c245b9ac8b08f0b2043b515beba0d0ea312b76bc7013a6a54f532a7c0ebe76cded3f53252d792c1973b1ede4a3ca69034b4ef6eabb6fbe4f1208928f7cbea53d6340fecef5889bd3cf693d560a02516146c193dc21900b2689c44f7e8b36105ffee31bd65c49c80c693451557a35d69fd2caa23c763101d3dd393eca035e73acbe0a410b112cabc5dfd753f48badc0d31b322ef1bcd9bd98011a82a23422428a9d3cafa734321586a88ced050cea588fc6237dbf869d5547797af5bb6fadccb2b36ab4a4d41bf08cd55aa5087216c4f316ae9da8ce3ca1c14586766d9ec23326821fbd6bf5fdb9d09ac29b86a13b4b7ef6038f3f5d14130fb636728bb7127d0f56ca4f06e97f795642ee48d31f32c81d77f6c8ab09e1dea01c91363868c7899252c096d9b5d6f6783d70b392c207ac082026a3f7f2873c1def61d240b143e45750fd146b6a083f12a03a2642036e3f8e52ad58e6d385676d85d13983d4978f2fcdcf3e1e6a62396b31fd060eeb42ddb58486da6d2e1b1f88ea0ce4cb1859614c248c09a602e8e1977a460b94d1c76daaec64ff70290c6dcc41401bdf4b46a31d1199e57f0ae5dd46f2e9d4d607744090b67fe43d2bef6803b03f5a2e83adfcbd138d5d2a02f1036a4cc8f5bb40674ff839c5ae18abb0bdf2db1bdd6c377354c9b58f2626c086d4b5f0b418c6b345a4db113b9dda9dc7a00b317caa995d9f6da892658b1d4fec1539bd9d3f3356edf5f6fd0c0920cb5f21f3b5fe700f09488b3c00e8ce05b436460f26edb880d931f03993f1e30c72f4b07151856a8571881b4109c6777585dce6006ae5958657fdb72cb36606acbbdce4eabea4eea2a24bb7c985e94d555a9e6f54e2639237fd691c83c46521c6e545330055e21c824a69ed12cb08043e3f095730f3a7d4e5294ed2b6395eedac57220a41e106082818a2e7226b6efd65c140735007285a9c728a1ee06511054591a0b5cbb1ee1068f280afa485197b95c1d0bc2d3290d9bc9992b47ee8a4e51ae41944f5ee2778d27e112229250a7be5c1f47773d68744408030e6e82509a5f0b19bcd34eb3e0bc0a4811d27c93e80f96f2617461a7ed160533be2954bff976c0719c8f04d418a94e65a3ea0253837fe1b0a595220bee79d6c4267d6ff7e4dcc8d127595e64b915a9d4b75d9ffea2592057e58d7e67c07fd5b5fb7a2cd6557ed3a8a31b2a04750150cb8cdec1a705d27036a3aef83ea3c3686d6222c70d8698ebc1308eb3915b7cece73e86839db1d8aaeb1ce3eafaa31dcef84fbd999459e52e88f9565cf35a10b51c93614f3ea838537d4c87e389fa8f739a4b22a681c55268cb4cc61c3902e8573353e8bdac80c0d61ef11075308ca7d28531d1f5fa1537fb32040f798de2cdd3f0e2e3be031058414eb8ffe53f686920099f6b09ea78419418e252941c2d22d1af919444abba3e62605144600abd72784a36d82c79060859ad22703cf279dd706d5eeb1f5c410616420ec8476f38246564bab55fab8c64f8d46819bace5c07f7571121c2ac375286186c0ae3bd70d3759a9d6f654490049f2775b83cfd6f333f940e3f507f03c056dabf82d74fcfd714c44861255dd38bda9ed014313e66c5de3d93191732b0d20cbd25616d1a292e24d94f92334479f36071367633118f9f63af25ba18f157c91e28faf4bf98a2c669a8a789e89f24a49e45471e5a61f83d62b8f57a7edfa88b5a1d37f9a38b8be8b6e0b3d882ffe40e1760c049b12f7568de649c624d3ecce9a4d7103cc90badbcb42d900482cfa4f44c2ca32c73f667a1d767793ca1193e77785270aff4e93080ededc614ae8543f25968ce0b742d9384ae39361d940e28551b995127c378d89e0346bee24ef5ccf840d74b00ad04ed78b54998984ddaec188c852ec723dd5ce145fd85d28b1ddd93a62d70e18ced938108c0276193f5a2011e07ebc4c1da4aac88b705e026a11743f5762cb57d0e7d18ff3a2dd63e76f17375396ec1f6e8d1df5c87f581f34848edde5e299cd9aa04478ed4de77f1632b444742f358255bb398cc920f590db11550ac41059574e2f80a53069a311102679a6f3e1c718e01174e85aef3fb2a2013d819cbe6b67d2fdaeb4c90dc8cce88cdf473e6d972d38e246a64d367b4193db094f067fc7585ebd21174c8a5a4d42724e2a25be6d31feafc7152324fbf9c00dd35a18d6ef2009df7fc0c3a512574a4c10b0c3aadffdeed12fedd866c3b3eaab5b3941b31b52a48b564b94faeef18791923de8bdde118308eb4d217d5f92156d2f9f95a5558b0982dc17362a92f873edb9b368c58735e76aa0e81f2c8fce5ca2bdf248b834228965daf1991399a22d9653e826b530599159c71357dd7996dc6f4e2c72a9bc8e284242f3436789bda75d3ebb15d896661efe5383ffccada266177ea71247ba898fa0222e29a467b737b7191804145a81860c7d737fa3d80de8c0d58e279f1b5743a740c84be22cd4bb2835271d9817f9cf8e67a7ca69f00698ce27b28d384df425acce3eb4b79530788123669a47ab74eb3470e91826155b6d2530478543668a0bd06f7084f9c54957f8f8d1673ecfe8d76a83cfcf957b8d21af74ad84d226902cce1e6293e76d41b11715b35096e264ca56a8cca159971df1701d7e84f4dc1e49d3c9e37dfe24bbcc1b92e9622500a916575b9b1227c32702a00553a0d97b43a249ad48c99c7361d5c60a74be45a3ee628987ac81af07a28ceaf3e7b94519cf97ad7b0ef9f5047aac200cbe1f02b89e4ec3efe969058ca6702bc0d599570732bfcc8da4c06ea098f5ab6a023230abcde0d27718e541cbd3d49595cdfe8015d8b4c0ccc82b2a0f2caeb9d2883cfcd072bab35a446c3bdcf83704a4e03d0022a74ee2130bbfdc4739493e7e194ab400aacabc527f3ad4aceaf81f41d6b8eaadf7056b9423a3250d0056adf4f6039aabee1a079cb374f6b6f1de12f51bd6e4f39a9b01decd9d4a634a9b676d61e72acd24ec46284e50318eebc2eeabf24bed0bee18dad15fdb3756cb886447734630f608fe2eabffbdc4ff706cd1b1a40129496dd4dbfda1e6de8c7fdfaca0809eed0e9567d75c076c94046f2de10d7a312678b04e43494b928333dddce42c073c850cd1f465e2cbd6a2056926e33928a0c5b02ad0dbda452bb49995f28737e0598d26417035c9e99c93fec4b2aebb2a0052062efd9112e4bc8978aea9fda9fdc058ac7d19fb4de9631010c9a97802c1da3fe3b87dba6fcffb99d0375cc7c7463da01fc55e1bda1a39702121d6419794318b9f98998a544ae8e85a27e60c86121225d4e4e35d279f69ac1634bfb43a83fa2591e32432c812e261d1c6eced5370a171844bab5f0206b470beb089222d94560232c5d37c24d38b09874a488187e06dbbda5ff3879c2272dbada688b522c83ba47ea9990fb2327364ac18b763a575a58d5275301d890d71640cad0dc0c4f4c405294ab0aa81f3a766fab2f50447a0bed5c328761919e3d249144f3474a12cd69c926e3b7c4c65b0d30d1a547068ed18edc996696c3b09156e5ed716d6e2a530ada0515ed9bd182b19871890eee21983a55b7d3de96fff4569b2592663e23c3affa7ec3fe9089e84c2a1c891df9bf3803e3d4758c1b0d12bcfb936087c76dfb5c8875b8436c9c733e4daec5649358506e9e8d8769f0252ef1d348a6e040a743d53fa3d8d381304302b5daf3ecd0d17adbab13ea1718bb04fe833baddb1f8ba039b6b56c8863c3d1dd88849dedf86c501348b2b964dbd1a4ffac0fdf7a126b51142a3968a78f956e3c7a0b7bf8b0b0a9c72c80c8eb9af6924d13a3ec75a96ac2c2e9359fd5c96d181d9b1975ddb0d374d58f639bcca6edb32ed827c3d44014d969881887a64daa7e808941f92d2f0183653bf9b686ec7809b72dc8261788cad76de6cd1573b69676dd119706d6e4c84956c3992259c2e80799cb7e70ec37ab6277501f4d406f32d7a249a14b08ac2615033f1a87640bb92217b5a02d7634bd8af328a9171019a3a3a664ba28b1c753c1c76b08b290fbd0b3fe0453d32dd98128c295ac8a5af99b9e190cfcd831ba11922d666b17c9669e7b1f096b19aa8a6d9fa97433ad0959caff89b3f1bb27f141ea1a220cb3066a480b3b368dc0c539361dd10ed325aa537d192ffee5110f416439a0b74b2be93bc06c944897eb104492cf6f6694e5f4008ebea4a9b819555912735f968d29e9a720399374547903abcfb634f0f066b1472c1ddf80168277f1c579ca0724c8436fbef3840d6e8ad5894d74b53e70e4af560fb1af4f3d076c8de513687b4a6dc64e00186d0176c8d08fd88fa808d12fee0a50862e83e44b576c96c2168a920f200e01ed4d488b796e22eaef467ac1e576fa53773aacbb9f4b371f3e4f7a30e2a385666e51306af7f7ef133a0ca612cdeb68ae2f64d9991303adb29726f9bf12d4c2967b3989d2972af9a748f372d5a159e8a84e9689176251de6010e577a2c273612c9fe8c87bdc053a34adf5b444a5653bda9624fa660e61e7e09c875978385d89be60e79783555d1d469ce241a0235b4e3b15d04e894d733801ccb2554e0303b4456a303bd4ca4aa8bf8d170820b1219d814bfcb86e4e1a208efa49c15943aaf44efa01bb76539c5bfb40d9ca208bd83e0d31206a362c894122d153d4a0a16138cc2a40f7a2a296494b750a243fffb9a07df34151d2093583cb331327bffa22027e692b6693c68c26526e66a27d7d2aa5f8b802e884822422d65e47bae80162a41d25e63ed5dcbd0f89bc83e32cbaf7c70ba0eda26035b52bfe49066e9f2ad4ecd370ad8c6808ef5becb99d7e40d6c2c59a1a86501be05a1479d6b7fde60f1ae25cfc03ca60be032637a9fa308e5d15d71b1a22b2adbff4901c83ed648cf77575ec2718fb47133810cafe67863c236b13066ba8238b0de3368243d66ac79e3bf93486cb6e02e3d06c45922c6a4cdec949a05afabe13db27c38e11a9174f51ddec429a5e908eb75ba7c6617f63db81a97270eb25752b3a4f7cbcb1c93d331a41cd3f25fd5e8d8630d42547d1b40befc0a5cd0ad11e4a783a6e943db48f1034a6a0d29ade4975ced3b6b28b4997e63d6887b52fbe8e87fad3cdd1b013ac4ee9adcb9ba015bec63828341d349e2921944bf6b9d2809253c7ca7e47e1c7268941a15f124bd8341b2e9031249811fc313b189c5330c2797b6a4f28a0d0fce7d4705885d464ec01be744ab0589a926be40f1fec2fb50fd479a39f2e7ad2743045345d1fa190e5382fbdb2973c19ff931f6b84eec5e7b4584a1d590a5f35ade4469da5ad3214bfa236f8dcb477eef791b2aa26936b99578207486e8ed5494363e60630db9d6b2e9fbb8acc0b0477530fd3f3616d6d8332cd99991a70e9d0da11fb92081da608400cc07f8629c688f964ac4ad52b112e28000a13a91427ccb114f40b16ae04963543ec76036a3d434eacb16acc6a859488a2587d38d8506ee1974e30eadd46820695291743917d6fd25b61d403a93e21ab0fd1e4ee43b2c72a3530d7eb9238c2e78d625f99070748eacd829e5dbb6f77ca1173f56651f1d293c30b5cbd5936ad1bfbf61043013e239a1ecf08392c24af30f32d57314e2732bbc61dff1c6d3a91c9497937ecb3ab6969e8d32090beee821cf94ac92e75bfa6c82ecfa98917db485f3c7a32a4f5c1fd002589516b0d892eec863a9c6e6c170d7826245a4d1ab870908c4159e6d1e8601b1360f0cbb214d60ce33156a99640b64ad96964bcb4aa072dfa5f4e9a2f89b3e1329c013ad1879e504d97ad2de39b7e0f68f328c92cee8c27275c8b9c6e38be3fc8b4cb495ab856b177fc9e116b909446b5e023840ca6794f4ad3b73557afe87cc3d9e9d39547c700726f57e6b5623be00984f69301a953eb018fc8527cc5a686bdce65e6b175425d6af7e593861ef09380eecdfb1de01b97df4aee85ba2c9634c716f1158c6f90c7024262e086d8abd9b0041bcf0b20f8de460217b5672704b9d5bab57c2275b070026ff76c115f120ca077f95029a07be6567f0a2511eb20f210e30cfd3b6b399fa5b6ac24aa01a245bca331492cf6ee5cb79dd3e4d041908ba5bd3c36a6ccc4491a895f62fecdf18adde121a2b0d54ab21dbfcc41b99a0a248d95155ef50c4493d799ecaca0a652193a7d8edd8eab05cd7526f49ef29cc4fc48ce9a3444899320dc134d63e0dc704b4915f94ac1ea6cb322a3a90e203acca733dc99eb1f09207da8087996f37f0a7420480848efe0dff1d7712508fa1b8d178eda4b05034e46a7328bb7debb9372f92cf4ea1a9dc7498221d181160e0f7dfb6243eb1f6d166356962024becfeee0f92eaca2f71b3e679bd1d955b83e255e4e7fff9e3cf382424f1a9eaec82fd45849743dd4cc99153e3a78111c49ea7ef69168e5aea01e2d50a753d6e3b334bb6ca43a9d404dbc461053211f0b4f35d6af4f18b1b8f2390f6276c36211b2c1e28feb6ccdf59a29c3f067df4ccb35e1c08024d2032df90f8a289cc469e9b1979ec398a62e9e5bce0c57f956f149b87c243b1309c2f69be50b15e58476472214a0c6fd40445f8d844d4e2193ec1b93a4c2fdf02d4073323d656b16a0ce120deea24acd70175d5b224ee9fc6f5de4785931fc3eb90940446442d21b004767f3658870137cd827bf519f13d80c8980b3a5cb66b6af93e1e133bd39b373b566059c0fee45293a4a7c9beaf2e9fc842b76338c641fbd36ca70e6653c1c75f2c12dd4d3733d4bf1ccf9479a82c73078a204f9f4f856f7d9f1e33b4c015d502411cf867e5911ca6d4a7666b1878d8c092daff07161f1f963073e626b52d4a4fe9034205f3d6fcd0f64d34c05b4a844567791ce1fab04ae738f268281e86e047372dfecb1e471cb950fdbff50926a1d6bbdc620626e1e6114b677c0c7cd899cce8ba7910e666bbe4c07692f16d9508f728dfcb2faf936c8e871ce695e03d604fb74b6c85ef0fe1f30bb0394c5c8190044bebd2bb918e53f5bb3e1fd4fb7653f40b2f148cb2b0909fb8407f77a797c3d9b28a1a470066270a6b8aaf836ad3c8e9a1d6ba01a97229da37d6b65b104b7fed96e675632652317f664312a7530fa89a3f0b30fe6aec3b3b61bfa04f28b91fad0f8cf3ef43c9a608cdfb12e488a4c23f990ca8248f76f9dff7c56906b197fdfeb76a8470b42cb022d3a254b01b4380a0a732ae0542a6f877cc6f6e439c80f2b8862e1f637dc243e3fbf8042b78dd74e0dfd504c4f8031577e2934e54b520d1c1bd18313957939ab2b62eeaf33361abd8eb87170e769902c78d9d2c0988b693502f70f94944e9d3f94c2c7777e6409986932a194c71570fa0e817ed2e7191f61ca4a8af3a5238b91f5ca0fff60335c80e182912048dc6139d5de95f86f89340e2aab23731c590d183290bce68b55fe7bdae3055d1c9373682a3e9cf7ef924b58fef251e1e82c1d04dd0127c312bee5e04fbd2470fa5e836189a58455197678435c6d1d2e3b28464a73d29da4b937ed26fa9c2961911c5771f0815d26ac039e5e633884911f7b182c37057c37058fce2e7c542cae32b8c2e358f76a440f1db4bdcd4b46899363373f56e212ee0d19ca01933d96db96480438d1be4111e315104e23507bcc0a62a8971911d43ffcce848f99c745a116238c21f708e57887025df3ab1e9e9b62dfcbaaaf42679d49b6aed875981c3c719dbef17ccd4620bd3f04484f8266afbda53cbfc8db5c4c54ef2d15d060a55eb8254fc3d6bbaa929b0552ae84bfaae40dc0bc63a27f1bc13c06bbbc0fc2cb50488b0e42ff182e3ef4d85e0725c4fe258e1a48ad6b7cf458e51841926787c9325bf4af7411abc5d15fc45ed77df0b0bfff12e20a5157d2785e79205203fd53f8c4a7e45df7d216e1ae33fbcf42c68c7a4538ff4c5f4558e545e4b11f6e081b7bc71af44e5324447f7f07535b1f50a0553b6dccfb85d491d07dede644b2821e9b84bb59ed9f7cb4eb003d5d350fadbe47955423c6a2f3a25fcfb75fa781f55068c19d38bdfaf5c9f03781de4cdba11ba01fb1b05cb973ac4d4a32fde9542bb57c7d09e64feb1cdf9c74c799e16da223d05980d8515fab45de650a4bc8e302aee02d73690786ab96173d7050d895dc3da8d96d72e6e7e889b36b98e1d6f3b47c7ce3de3f550ba350530255e9652b77ddac631cce1b602e54dcd54d50aabce83ced113412a282954c6c3ac526b9dfd4aaa3aac7f46c8ff93e1c01eb456ac36f222b5cd8c36d276ec4978e4b0730ae38cc3aa610861597536530737cfe4f2ed6c13f590639a763832d790810865194278a2abb25972e6e6d59f0b7a5bfde56b78cb998fc3374ee1835d5246217148d8f6be4c5d28c3f790360f08749725380671451422666cc365deabf8cd98acd942d8cd1aecb1866a7c0fe4ff5a0b31771dfd1a1281b9b4b59cbd40b0d50a40dc4b85bac68886458c95ab1f2d42356dcf0e45848f8ccfab69346b8f6dab3550de6c40d61f73f77bcdc5cf8aaf2e88fa439c267a8c3928bbdfb30976be158d343b1dd19793d802fbacdea4f548f5c8eb520c5de28321180add00283504ca89aedea864e51a9ccd90b3808f213a90e5be915082cd7acc3dc1287da79fba82a93d14e2c0157cdc8b7b851e60754c117bdae70c7de2decbb9a8698e4dab9eb45048bdbd66a771a84509857557ec7d862b9fbfccbebcbfa7b68eefa7b5caac42ff42610c3bc867027572f8a203186b3b8f0b049a2f9ba26733e0a69d69fef82c1ed32ec4b3a49afe23f419d800e8e927832250e966ce7bc7470adfb77a70e32bc74c547b27be7dc89194b5f69e0f23470dfec3efa129861d5cfefda07c4079c0ac0adccac701ce406e5e73c49bfadc8a4c25964756009bc313b97418180be2dd423e4f7808e8ad5cf02ad04f6b997c1d6576f67c12ef67a00cd0567ee34cc81671cc86150a090b70d8e89fda1f649f213f121f81f23730a1462da6d90064a5b73c85371e25326676eab3b73ad31c9b452574d48dd337f0dd40ae13688056a8f286331e5d3bf7ed76b80ba377f16a8d5bb6db04a83ce439226c43184f2f6a35377936ea75917ee558e53035fffcc1ee3c48f302bc2fda924413e4e2ca0bfebe9ba04c29dfb6b80d6017197891e7c3f64b521f88e91390c147e86dbdc89bba32df5dd0e1cefc8df02b5f6841baebef9214f1d2f04ff7132b74021dbe096d757763285a77260dce1b75971e01e10db14cc33e56569ebb5542b7b4041ca6540a14cb8cdceb13b180716d0ef5a57c10d736470dbed3f1a1ec75650cf4a17c1ad32c2b8d5313d7bc41d14f9cc3821e88e233906081395bbd1d1de236fa18bcbf7a274cae0e9bed97d34c7476ae1fa0eb4ea528193f5a57ba8ffc8d3de42af8ad2273fa4fb081327bb9f69c2bd7fd500ee92884ab5697043bf25f01794199b6e855c6b25c594557bdd60753e087d0bf5c1aa459e06744eb86483ebbeb5f9474af1a1d66e219ee67a004b05b16ff754c6d714f1a1c8ecb496901d2af35a726621ffd6f827386681a115dbed3070816dcb128501337317d21778cc8f226a2f941bac31027840e95d66e74a068e0f8aa49ed5d002cdd113c8830222ac6e58fc77754fc23890c1c9a19211325d59291eb353a059d589ff7a64819f70d91b44051d92baa647a548b64a8902e32d4be124d60a241b02846cc7c01dc9fc23d13cf4a748b449ab862b4529048365cc7b6d1484d2ecb2e6c85a1953c3fbd3103dddd1c1c050b12fa3b90e066e7b996da216ca2af99d8e0331355bf839f36630784ad4b753a4e888177c65819b6ac8e899bc648bdcc0bd3fb19848455e24233897b3e393a390e76f55ce569944a1e1bceefb0a732822e430565ebb0638536eb3a09a9b38fd70fa11d0bc2e2c9a29d0142d7c40e2f094cfed85828b868e1bc217d3b07039888961a0ab261e83ab0ddb09dc2b39fa452aeb73d26af4654470c83ae4ab500c93a8c9b773a3df4ae7805a304f664805a194f1686b4ec0f97a44aedc5f8654931f046d2c5d14d3b373607f4c7edabafd8e5ec48de20f3a9e01dd56b21a6c664be357816d3c6bd1df1b06c7c7f5eb6b9761adbf5ead20f36e13b8c7339b970a01fe603da5953076c424c617fbd59c2a6d48cb9849f246175809c8ed0afaa060d783f57b574160e68ee07ceb27264002d2d4555d81fc5abc9814b45c839021d7c128ed79c9fa1cf30f322a6a70860a7ce2879071480c2ff148b66e4182d5332280eaf03357f8ec92ba210c541de31c5153f87c5091750eb14f392250c09d1a60f664209d8afebdf65eadf50be9cca0216c51c32bcc9db5efc58ecef22c6b0b549741382f7dfe95223518f67b5f273cb36af53f8daa7b7ff1cba409225cdbae0c5c2f7d4aa83b8180eea038449e1649f81ceab1d1dbd50c942c6196e2280eaac71ae5f8ffb117dc9891678484578eeeb4272f3ac2b9d10d82a200849effee099fcebd58f0a28b049803ac5e8cc64ab1a18ed311ab24bd2c0c34453242effb9e715d34327637a9ac4756d0c7465d1360f98cf0697873442ba9b1f81c20c5b14689034fbcad17c6ec5f9ee2e4390d0171060947d2ac9b518ddfc9c0a7060464225f78deac9688bb59ffa1916c64b959954f536bc4af3e9d81756b84d0aa78e118d70f8c7a8391a3510e2ce5016a49f7438d3a1367724a337a6a9aa4c4abfdbabbaefb804ed8a24b7b47a5f57f4ce76b608f0c42cb48385a59b47c39c3755bef052ceb3dec426b6ad6ec86e94fcfaaac1925de2342cd47fd488e663872ddf82d685c235fa9c1ca7ad3ab13d10becae45a6dc40823edb0d980d9d0d3bb077415f9862f538702cd60f3ad6f13f065c09bb0f35055a33dadb93feaa754df2efca0de21c9b81bcae7f13ce3bff03c3d4d3a4f42b86d80124c415c397ece04887e91c830555c7847b8865249e61aa7b90e886645994374f23e5da1bb3d220db5cef3548fbd3778871a2ac2415afc007c0270363f782d98bba4ca7ae154d791ab21c922fe8593e6d6ad09bc8eb5b70c8fcd978ec07ec0f4b1b31fd79a05f6cf19127a67510a775d8eb3817e8661ddf0191f495910fd8f0bf3a58019d1e055c54d7eff5e48709d6fa8b8be697f0d2548d74467d07dd018b29706f0ade8e970ab41c981dee5251b2aa40aa78770de619d05f432906dfc0780f1bd29462da22a1424c34965a5f7cd3d34b693cdaa60cc9b75743c2f8315e6aadf802a99fd318f679774bd62e67e1621f71e92e0553cb5c97a7af82fd5adba3d12c12c5f6c5969a32ac561d2399acb326d481abca76f4203f50895cb788ab4ad152ac9e8c301e79ef02d0e0232390329d951fe282c8359578413eb97ae966a8e9677b2b226bf376003c7ad534f954dd5e88aac0d52fb8bebd285403268e49f68ed79b865f85b088841c432c0018922208d3022740ebcea29a0ceb50b9479f12227d53a517583851f335fc3dcd22e56bef60677e04193238c40eb7d9a4073d4acfd15c97579542b8c3a6c02605f6bf664b1f7fcb790ccdb4e5cf820f754a79243713352f069e811fa0af6bc5bef6d2d3d17527108d08e5958532c5bc58f441a5d5737207692cced868a2bafe87fef1c34053cd4d881915d1179a1dce797e37d9f0884ec9ccc4ddfdd3f501de738e257ee8fa2168ae4ca2525dc3f4e8eb1ad2d81adbf0c20a84b0a144c0a79d3fde29727ef912745e71b1d4f46085355751d54e632f12f24f945fb08f47d86dc26fd67bd368334c39e9cef613a040560f7c5747356810b7c35085274ebfff6bee1533964a2127758402d88e4ba7095b4f205c3a8d9db2fbab70231c5d91a15dbb29a59f49fa111daea5c59e69961eb008773d4c65ceeea86717d3e1f08694dcd446d2ae873f09ff6835d563694d4c81ae8232f5c364924dc03615288bc31ae527d0bed01f403481eac0068ee21d551069979d66062f01ca39df0fee1b7e2c631637a3084575978aebbb1cde2669aa623555d4da975da857e74c1985ea29d0c094ef21f88d9a90e0cf8d9b37bcb711dce6557587bd1ee12ccc2070144d7200725ebd162e78bb81cf624d8b0a25f4d0b5f640c0447da02166cd257d447e1729f26573d02b2e602a49c59f17e2e410c4b2d0cd4c9e8233e8e15e330fae71a5161d10d3511c995af42245a5936838dea44b139f514f52e40ca2bd19ae5f88bfed4609e2c84af1607c987a7fe1a1b35359eb6ee025c89480ad73cdc50a0f42cac0d034bbe1d89c9ab36644116175909d55bf1b6b1f22927a510b4f00b5349dd10ecf3a7455fa456d276199aa92664a3f3c1e109f25e462636391fc283d2ba8ac4b74591f260e4a4ec1c7c291825204a3631ab1257ab3ab9f07ffc4cb0b836f0b7bfebfaf61712f4f4ea11e0c53cf1ab5fafef80efbcc912a4f98175d0816280000b321714a3d429bff540bcd446945a91aced2401dec34920af027d1e2614012faf0aab229b7572388bf4d0dbf26b4587a9ac9ded6528f24b369181d1a54a3810790570f565cadd2d2c9bf4841e57bce0094c6088dcee640a62e106a124e515e9dd4512a3fa1c30c03289fff8f887ce9b40f6609adae85d6b22742ec68d70772c2246cb8a5a54a8200c3dfc30fad147534f800ee24783ee4403e3a1b5945a1c942c33d8ad6fd33b9c63d8808df2b87e692fc5d7ea8a70e941f5277a80c3f82ddbbfc103cd9fc5f0dc5685dca3bd172315ac1d86f746042ba5aa54d101e3cb8eafb1bc6fbdfc1f4e4898aff501301af5d071147be0fc1803c81e8e12302ce77afc073760775c1f799502f4d7fcfe7de2bd0a3ee961b9517979baae50955b3c78159f151e4f404428f7aaf537c3c53ee948376809176f3a8210ad96a320385eccb881956c5449b5290b81be52c7cec5e0cca5d5ad94f04a3cfbf2003bc9a6f7a528aa9c4bf6530b6e6b8f3493fc4a5ce0285d49a78722de2d4583c8dfab644d5df9c9861ca61004c215a0a624224c024ed02de1b1a1901257d60e6ae3b070c385447398f83147938f500c2a92f2a2407662d8e5a892272a148927170aee7a78f42d46b2f1f790b04a5895114456b0ae5dce3a5cf2c910ac2552222191d5559ccb25982c54de0f202f82ec9ff66412ccc359babf60b8f50ba8e304189c5c91668fc15e20913890e18503be7f7a6b2c77b32cf5a216f8fa7bd10c0c23ae2ad13c3df22b5549a86fcc3b7c71ba26ac2240ed621ae647dff4671f03aa338902d95be0732f42ed37cb6ad80e454bf5c9c7bbc15ebeba9124013bc119b062890a6d7543a50301f00f7129c53b43206e805c8250bbfab52b6314523ba2f538f97fca1215065f525a8427c331b348907789012eb73d3bba54c390500e615236a779cb3c37025d4a0c80662fcba835794717966e4d700ddd61b218c41df27290df68ad56f8b5b7745ee258a8200a4fc2a2a25d8db1545704a4690d43e2de486536ba2dd65d56856a9bdb41b01570738387ecb3c57f5d30dcf0ab4d0f1552cb473a2dd4f23061f4e2e828d7b48c75a116f84ef796d22de4b20a30556cda98ecb940f1dbc01b887ccc72c1d963fbcfecb96a82648ac772a0f491fd3bb2dbe70da579e224d8aa4de901fba9c59ae2d6913fa3b2a78c223f10d791e9a39d3af2d882668ef187ee116ed1bd8c3a37c96aee50f57ff4b3f6d1af9ebf1885f993fda5273177e37f4ebcce21f9b257a3d7cf408c4afa1360a4e3ac1756190e14eee19efb05f8a92631f510927b7bd75f691d0655ce227b5d58bd53f135781fd09bc872d68c46542874496a92bb36e662c74df10975d1148d7170aa846f986aff617abe089610723a4f9b763ee505f22ed64686223507bd3d1da37f0bfb5e2ae6ad55bcea3c0e9165828d041917c47e29afb65b13133952e7e2f93ada811784acecd293a45504986b155859b9412cbec26a3fc4f4ab7f4cfe42b55d001a0061a447b2559fad6b0f3f125c4063f2d87ad0011086cc7ffa994a64ec905b1a5bb959fb9cc7e7cc1c62efbfda9ec8bdfc65d9a50237e0a5b04c25942b6ac1d360a5a66942555cfbb6795340176e1e488541a4cc2757b484dd96738f808c336f09c778fc8b710d596341668d2cc59f76e5b0b7e09e145b694a39b4786cf639740ef84bd9879511a518c12e3e9ca2bf3943a63b539e87e6b654556540208cc1d3db75860192f84989be4acd777524a0f23c788cd36ea23c82d051c48847902a6f42a6cfaac53a4831419109a89624c2f88535271d4ee745c97177b369dd1f2537da235a51d65e06ca91cb9474fa416948a48350854a7e9dffa4ae97ffc7485dcb14f8a94a82e688c0f999352de765e932bb2b55546a6fab69e92ef9a1e0a2324dd5cf78a9805b55b212d5ed327c79394561eda9552a16b2421eea74192497050a484f1db607371e798626e919c83580c153412480ee0cfedb2f81cc0db8620e4ee1640a4e601f646a99b3752934a220f117d1135107c59d111d9187919ee88fe5569d7b229ada005eb89518aedc2f963b1a0d5d13c98b7d2179653544f43e47a2e3bbc0688e817256686d7b092eedbd81f013c30191982ca5dd50a4b0051164f556d521d631416a61b02202372e8171b82be9ff49a8380160a78c6e90189bec8c4fe145d93bbeb43a9d29fb1334557bd6ce874edce867efd9321553ab18f0069c0f8b0ae403d98439eccfec43346f9d49ab21c0f03fefed20febcafe8802ab592c39e3a5f00eebb3e8bd6e7d34e5252898d39cfb6331d5cb47dd9f689de3438ba91e642fd03027400d23ced1862d80daa012cde4246a86ba5aca3e266680a0b5b47f20d518f478bee2e76053bb3444ac28cdd61a519d08c97aca2a3dbb156f74655a5c18a2d4e72bbfd1dda6262127a5eaf00c10a1750824ace1af9bc5d2143cf1a98e0103a96c8edfddd4896117a36b12470abc9e8517f9ca1b27fa54874b6f7e5124a2a6e5e64a14275cd35bb440ed3c7efb978dda422dd627d556ab2489000ace53ee85fe989cea2362dbb71aa51a4853237746be4441b4818fec916d50a3a275609811d70e7c7f58b0aa0893f305029b9f341df703f0be01b38210274f333408e02ddd286f4cebab6b7aa3c205bfb5bc881fe3a84c40025d385dd3fb054b691f7e496b67e10d6bd9d52d0098f6ea9d5cc2b598410800348a7374540d596ca025302885f166fc0d74e5d84f842c3b9e6f6c5c61f6702f1ea6bbe3c96fd7932dde4ebc59b37721311bf4a1b5692bd0357604180d4e379c33568b300e2a5e27b5995b538697a2658acec19cb44d6d2d33a0ee679814a5fd9d7dfa6eda62e22137124c7ca3d6f9ebb4010c41742a4988ddc3f99799bd712ba82b70136f44083eef0af0e81df4f9735b9da339de8ca59124b705a57c9988a96c25a6a157bdd4fd1e6d8be6f9e29a87ad936a5bc70f3d532d98792a3b511d3dac70c0e0a0659653566d84f11a46481d0776fa75bad8fdb0fac402b38cc02a0244a44523c2dd540643b28f81ffd0a07a28e502c7b50831058ed4d087049e7471f1cfcf8aea2c3b74f6776bdfa80d8c621a9b8f63fab54c126ef9380ebe622d011c1b0e3c52bce44aede5311d9b5ffe7f2075ac6f56e91d2f79e1f1fa55f4cc46af7f9a0f29f0023270cb9d89c4b0737c103596b626c72909e2daf8b28923a4cef8e7d7a9da6cc51173d7611090152d3b5019da94998221b73fe996483871699c87ab163e00bf14c829cf6604013c28bfc2735083732abd2370e4f6d11a5f096e0d4e02ebae75c922dda2feda2b13acdb85530f8be229bdd3415ba0f9db5226d3c5346e4804793f0d11059bbccf37691e0526555c3ded36d565e99388fef8b207b62c835e700a5306e665c91d0f37da3f69555eb2684278a9ab8851942e8ff00449d09cdc73c5b4528a79096cae05fe2ec551105210785535e940a6338c38c61562f61c93617df133a3b7f9780c3bc61562747a387a8bdf652c231ac2e0bb3082271c280477085e401b266a8afe15f872f90d6a7b393f6cf2f5cdac575b4288344208d95bee1dae0f3c11d10f605f8b8f1aa92db1ec361cb6bf9dd2217a8d4e8dd651cb7d317c5f87c73b77ec8e11cf931226f338f33ed29977bad3224fc3bc5209531e3aa333cac3e52d539fd24cc6343da2afb65ab0e346073bd2994f6e59bffa48a32179c63a610817998e7209e522f761239ded344c96c109438ee458956d3e5448ee32e451f5863c52f0fb4aa5effb6e7d588b986e11cb73998947333181866d2648c144a22f167432b03858f5404e2421641f24e4ee19b0deb40624c87dfa3371f415f38736eabee206b91b8b89446354c68ce278a41eba62e2e8272a3cc6a4f028d291ce2a06f1d759daef3d44639b4f3f9938b625f3877ec7882b3c8a5fc1e3572b9b8247ab1aca4f72ff03ab14bfef9b0f8d81db12f07d296f3861666886104cd0076e4b728f3a72b649ca980f17b19fe14d0a6317bb63a4742a64acc87d7b5ba86df44bb7839cd87e07350a3340c9122df69368b18b8695de45782eb36762ea4bcbdd74b721fdea8d49ee0eebbfbafd741d1e73c0fcddedc7e7dbb10da13bfdeaf0d43b0d6f3cdc63f86d3e20a63319def86c43b69f5a6bebc34e80b991805d063bf650118be90e9d65c10e71ef70c7c452c670ef215cc484e47bb7d86d88f70ee9adb5c33c2d762dbb63e46b752897d962c16e3e2d32b10d69f1fb18fe863c26d062e30e71134cb4d8d2a88991e60d5729865004c920b8fde4de7c581605cb3c6e3e79c786e14710531e256ccdaded269ccd663290f5e9ac61e1cd90104851e671c50beb06f992f9460668902f99c37adb30efdf4bb787f775600d433c6d2b7321f8c46e49346c7b7f0906c87428d7d2d809632b4dd8ce30fc774ba5d23b994b977bbd74d675d6aababc1981b595d4f65dc36aa5b5cb30942b38a3311dd968e7b8a24f222cc09475f4a5dda67924fd821d3b1e49f8c93f3a6f60957fac72bf85a39d5eab7535aef2d8e5dad1aacd21dab3bd6edbd6ab151e378cbbca28ae79520135bf77ff6ad5641a8fe0b59087973bed5f2773f73aab984d1ad6dd68b7b6284b280f4ddff77d3f6e3a7d9fe94399ce5d8647a0301e3b9b6ed3dde77db466ed5d9d756a739c483db84f91b53bd23cbfcf4ce73b3aebc7cd2a268efa1f789c4d4cddbca675b887e9dc353c6a4d32d5f04839cea471136bdfeb51fe7d1a1e71e6b56be79938b477b8764d7235e11055b5d4ecc070c77c0fd4bff00830cf2e853d6d6a47b515f93369f9db4c2693c9f47193870b77cc974eaf76baf5db05352c3bc4a7afb628b80b270e4d601575cc0127feb010dac9d0fe38dce116f77afad3984cd781f9fb980366d3c38f7e9c424c9dccdb84c3f1079d5578b87465a7695a77b5dbb5d8c5eceb356d36c9cd4d9daaa9d0e173120429d3fb8cb4274b3971e7d09e3c2f93b27ca245793a9b049fbcecc06ddb428edb368edb361ff5eb3a367f7c74597bb7866fbe95e47ecb97acda953b0993a2d9824f5ec2cc59ec7ac0f6a097799c33334821cf232608b2c4e39c657a7981541e28a3ce58dfc2f172c550a0647999850aca0bc4cecbb724264227cb0799b22b34a093e58d482c5b9ce1944ee52ba55d875b3cbc77dfe1bdebae934b73bea3739b5727d3772d4daa93e594afe7dee970d80197ce210b355831b7888334c2ca245e10d205a4fca1d03711f771f4f4ce1b5899840a44f278790f048af9458cf6be16de4c8ab74b4aa1e032c5a3fcc65d294f60122f14c9dfcc72e8044179d5626739740220e4558b354b1943f1102d763dbd33d70bc5fc221b2163ba8821b9cb7388bd4fa65ce0c9230d1776323d8dac9143ac4cb2052739cb245b40ca3643146144964a4e00003b4aa2dc367d99640b45b12a93446f1a9999a4680db92f44a3a0412f0cc93daa1ad6e2417b480c0597eb294ee2851a588128cbe650f07d5e49e7afccb5ca50ce26f975a397576bc9cf26b9adc836fdcdcbd33bbfdd2aa6c4f37eb389a45252cdc82761b6dbe6051b46444323664dca9905dbe7eed865bacdfa19e2964554a8ffc6ae851a56e3c850c3682069580d11cd1bc761873d00dda46137deb1c7de396cc7cce81e9a079afc5146f651cca0003e3e83427c5c65d0826068bbdc63eab2c9665367f371f58b7289e26273ab9e584e00f8d8e5930666c16eefa3cfedab193ceae499cf79296fe38e3a4bc8366edc7c0442c7c7d78e8f77888f2c381f4f44f090e771a77ccd137171eefc1057cad78e2be54bc79dbfb9f3da8d1b1bb7a1333776796fdcc6cd9159e4d8697873e3df8d3bed8d8dcb503617b888f61adac0320b9991d8657813c3dd84f6d09806c47fc063e703ee89d1b4193de0d1ce380fb8870771495f78b442e07125003c5e864731e35126cbc0234d1e69d1b6ed80c7958dd1937b058383f02f1ebbe3d1dae000dc5ed2e27618b79920d118d7435f3da3310ae32e2d18a9855b6761160c8020700e1c1795c4c24e61b0cbf0068667be7167de683e5f5383a7a5b94653438391d4f4911637181e7532ecf3cedcf1893c73d9309ac7a47ceca29258f9d86fdcc61d6db6f14f0b6f6ee069a5bc71a78d5fd9a28dc76e6dd1c66d28ecd2f8bc35fed5f0a6069e7666c6c6364383068d1a34700b815e58d9e248b7ed40e0ed325ad0f61f8272cf26f2b56df7016f8fd18ab6cfe86b48343689c8d7f6ed3d60a4ed3c60a4ed2fbc5d657bca76d516b47dbbb87d073cdaed32f0b8ea6f45343601f9da2e847c6ddb636cdb61b6ed2e5cb45d8c849136987e6daff2b53d47de0e038fab6d7b0bdedee282b6b382587050f70dcfafaebc0d95f42a777c1e35a451cca38634cae45143a2c9a376ea66e43ecaed02ec2e720bc97d05e5b4b746433a05a7138029a60ead2b62f824ccc84dc1d2b4d89f69b187d71ba99dcc9829d2fa944999981f3eaeb23cd7a5d098e964b0d5880bf0de05b54f63cd14f81d6ed31e2a890d95d8107b3a79d4c93b3c35aafc47e71e39b20b793c9de539b20b79658717581ffa4996bfdc99eb4fc3585afe22e3ab15188f01f315eba5b3eea23f7d3f9d858f08ef9d75d7877142ec61d64f77ddcbba779e52de27113006e0615412d1f3bef2f2969787ff34d0754f675d8c5ffa0c8f38e196f7d3ef5d2fdd96f7f952cbc338f3f794a6502894a67d5f8af5b1b4abb2d6aa582cd54dfd2bfdde510a21a9ea95704e3b115fc32360dcc33d60fcc33d56c61c959fee18c2b86be52a3bdc93817f0f8f317085c13f686e31a2e52f2f2d2f2f1a077a2f2d789462035f5efee2bd6096bffabc5c96afee596ed3f5e7e5edbdbefcff5e6efda93e2f1fabcfefea32d4f1729b76d9e1f5df2c5d755d5ec31b977f1e3e0cd6f1bd67b93e4a2124bb3eadb5dac1efd00e82e049a53a3d75a98b7559b7a1acdb19df99f19d19c6bd6735eb88d17b0a0bd5e98e3ab94110eff80e86575dd4ad4e0e7f74466107cc1f54b7a157b188a45293562d05a6264e5d7a31ebba5ca5c5e5d5a5e5b64a354710fce77dde41e93d751bead92b73ea8277fc0ec44faad777c86387d7d77f4d3ffca3738eec42aee7e15f054bb7f628bdfef3bc87d72ab163e99f771efedd1ef59d656895d8d1033e7954b957aff25127d7995d5c6e435dee0e5fdd9a79b82307886495037147298464952a3efc4b7823e2693dafe639db89ccc80ea7214e4ade01f738bdf42e6a58497552a94e27954a157e94c5425d95caa65d1665efe9ce8c4261d50d6f542d1edfb5eff8aee1aa8136d5d96207cc1f40d6c17bfa478bb2875157b90d453169b12b17b607cb57b831d8ca64ae5adeffe98e51e493aa73ea1ad60ea64ed7aeb4aa1ee1552ad53ccdffa0390c7166b27719a197f404ac5c84aed2e9ded566a5c378757978c4afda3fcf0baf81d73e7bc7d4e75120f8fddab5b70fafdd318aac7d864778b8a5ba17866014d9bb96bacb1033a3c6f016d35ff6405d857bb81ea6ae4733caf5161c178681590ff1f8822bc63f682e1951fae9344e914fe1bd7fde0dbdd3774ffbe781e0c908af8447294ae089563cb2fee3e251279ff03deb948637f4a77b5f2feb5e3cce7caaa7b3fe9dae36ab49a7b374d427b4e5e0bf493fd43f7bbdd05eef9f0a8f51e4b0848b6cb72da2ee5d8647c8165178d4700f7a90e25127c6bf2b8d287997e117be7e781cefe7437b9606de2bfdbbaa3b3e91551f7fa09ed8008002009ecb50b0ec570a8f4172f842e1318a796fa1e0bef8e28b3a009959bbb7710f8f47cb415066f01af0521fa3c0d12e4847d561fe4466e1711efca42d30776c22cfc7b82e778c22cfd7246dd6c7d3cac03ffab7e60e71ba9eece1b188dc63c6bfb7602766f258c4573487ace4510e4b7059f83924a7ae7dc66766dcbb93cee4141e8bc820ce99c9ab6b3fe814ec0e67bd7ec66ddd5bfcb150496c0f96dbabfc9b60ea5fa7bcd46d9ae58e33b37861ca4ba53a54eaa86ea24aa57aad894de13147c55e142af4422ffcbcd0f33ed41d29c87265fe569ebaa1131b7a966b623d951d2b473d75516759c9983eb8058b7aea5d47917efae9a31d571c50c35057bb4aa5fabeef3b64fe306a0af6d3c9deb55bcfe26dfea0dd86dab48a75ae8945e1d4552e592b329feeb835b997b2ed1cd04ec768d0d6a43726cd09517ddc9ea43e6e4ec6ad8bdc1b173b7cdc8c721b2589bf452a3cae5645434219100bd1220d12a25ffd7b6dc4603d4fab499e57f49d0b830d71eb303e56b4286a3c1a1e57965a0e0c9633b249f73087052b1fde12591f1e33a3459b16e7f7c39579fe707fe0e1365df327c52bd3e2511f6a8587694fccfde1fa20f2f0612fc4dec5802c62f9e75d1696ebba8e99ef6d9ae533dcc172ef3e5c99636ea8ed68b335f0e4ceb3dc17a29148220c5730316474f8da30d7c3770dc30f0f36ece521febeefc39dd4490debd3782385b793ae60c38f8de4a46bd2123bfed0f2cb7f28c24688216832103219083103f10c440c206400b1020410976107c9989e4f90d290548b82668e713275cc1cb6174169b8a2dd9083a81c8cba402aeab04f4fa1a659116a5a78ad45b520223424d5e187480d4aa8acaf7d61072131e3dd83dc2f0247a321ce8cbffce531f7e1334cb5d8b7e92f75a70e7bd5b5d3b58377046f4b475dbbea5634581ff6aa830f4f782ce113ea74faf30903a1397cf8effa8082cb293c5a0c05074514b9870affa039855b38cfa93fa730109a3f9c2ef5dd1fbc30ae69e0982ea156c0b8b4880d569bb5288a2da71f6b92ebb78b30109a5dd7b32b975486cc69648868aeebd616bde3dbb5e8fde5822d7ae27db833af5c202e8da4063f10d4665251174ab49904b5afc5cfd03b8b788ad430b0a34f72f7772034b734523b496a986cad8bbaa861df67dcaec530c436624b8b135ff1cab438f37156b0634d62799ee7596bcf55c1f6b080b5ef41e6d69f16a34802069b211a36caa1991bf5be100dab498c7e82d03e7e40c1e5f033a7f0b8019a433caa1e1a111ebc4d572e1a065ef67014132034b75c75a1e072cb0f9aed7d5a2cb2273ca3c599faac4693a345666625ce501dc6ae5a541e98bdf0fbb4d7539e0d4dddbb3d5c861f8682cbafabf0487be8a1bdd73bdcf17afd9b600fb7667b6596e10b6b3330490a7694f176d8c1bbe7799ee779d7e5797dc485379ee7d5ba799ee7799e775d9eeb56cf0bc330f442cff33ccf0bc330f4bc0e322cecbc89858595bd31745d57e240ed86b5d45e076a17cc294c1a86abe77d2550bb5fee135c7c8491e80ba7a4c0b84b2e93cbc535ba4d5e5e9cbc20bd1cbd30217a316a25d117fd89341d5c57e429076ccf4080d251a3e0760a2e9531f5dd73eb937bf2e2b2cc017fb9360c74fd68b714be10750bef601e2c04f7602b5a4ee43ff77969f262f4c2e4a5e83c2f492f47eff9ec05c9c5c545bb5dc9049eac85603348eaea61ddd426ed72282828daddacb5dad55a26e0c555a9729e5c103c9dbc93762bf82305f7fb36d028b89ed765edd21fa0202c5a14a22ffa54a8a366d7cf153c20adddce2b31b8886114a3498ca3185dac5c4f5c492e24d71197508b4fae0bc865e42a720db98e5c4c5c442c2c2c5abd52bec210a773fd501947acab5c1512a024bb815f88c0aa06fb42046a77767d82fb3224e4be1099e0be14d1d72ca33eb25471615c51820b2388e7c2c082041786101517c6911669ea3d82dba264e7b688e0b60cd1578b90165b785a6c9985e0b60481e0b6f4ecb6f47c215407a04c3fe9d0e2a3ba870502948ee693d3bf0cd194a7840428c9e693924fa73cf1620e7248e1a255420250d90dbce295ac097f893bdbf0e9e422e0d30d5789d7b8ad17221e76745d87c3464db7c415309d7cbaa166c6e1130e9f6d986ff84cb2712a4459cd5f8868ccf5d3e15b0a757cb90c33e9528008f9aadf710f10873be170df70a71b2e0f4e6c944aa51a57014b944a3bee01bab0a40a66c8f51420e20c2e8801c246103cccb899d12209119440c0b551e321e04e2757e24e37ecb8465c61876725d3712a44d90e1556a6a4c66c431b5e63a3c66766bee35488321d58265f15478efb8ad5b83b66f0b551f3815c7893e3ce321cc79d47afb9330dbf71a7181ebb730c87dd4986ebb8530ddf71e71a3e9bdc255ee3b2b28dbb837423930dbf67f8cc44c377a810cd702a6464466617f8fb6adc082fc4a9398797c3881a346a6e7821ce3d0a0523b0e10a408adfcdf7b1e1de205d9c355c23d470eb979060b0519bd008030d8eca408631d0b841481b9546cd8d83da05d265fc99861a2720a18b2b0034c40efb3c038de37818e274be0f431e9da7199a9084ac5dd95119c830861a3960b18bc5808346cd8d30a4b9330c77dd09862f7167936b777ee1623012c3bf190630187d0105db8b3513eec29b1b7732b9eb4e2d9ce6ce2dbcc665c934b090857f730b777ae1530b7776e1330b7772e19309174cfe4d2f74810b2e7c5800b140b314edfa37bf9e5bd0c2750131b9ae2bb2808583a10e2f6f58b80d7e614f3abb54e3aeb2171eb165dc5e7893e34ea2d7dcb9c563773ee1b03ba1701b7746e1337726798dbb92eff581e3fad042c9bf7ab7cc831244578614b5b8588a35383583f30a4baaf07a352b5c618915aa604209c39b7012dd49854f28dc59f4a9e44e29bcde9ae713ee9cc213f0fd26158aa67065db985240d1c24e2dae97695c3770c46a4c268a32b7b83b406c318d1881e3393e93dc1d9b598d2a6dd4e3538853f354329518713ad588f18aa9cf71310e98202ebe330a77c7488e5371998d4f255a7c6e51f3d8a91065466612d86766922444b07175481bf5538bfb22ba3150b8403ce1d6e3b832666e9636ea614ec815c7138e204301588a34ae1b386235a810a7e23cf581df50164a58421390bcc65549c21126380125094c58c211272841095924e1c8d010922528210b6b9b6099606d128e9c4ea7241c41a1504938924aa5b248c2d0119512542a956a0929294a4849424a4a128ea8a8a8ac80618e3b89701c7716e135776271d79d4378ec4e237ce6ce23bcc64db92184201c76778c4c2124fceb6c49084243a0c148c0e2eeb882da06c582cbae1f1963cbf015e1ebf64184e30d0752a41f693ed5e838c2a5215fae9fcf215c16172c6e8c22dc1829d6e30b84115c76dd85838c0770c22e239c844e27aaa150a88a4aa5521a55a95445b845684e049acf203476008b5501947c75a89494eda64c5605867055544694142bca092c54a6105454429c3a85108486b9e44a88d37940b6bbea4a26fcd014fae0074140788dab3a0121e8073e40a152a61c77f2e038eeecc16beebce237ee34f21a379569dc17a297cf755f96b428c117225943b3912bae2b88f6e0ba8478705d475aa477353ec5aea01665b0b5eba588be10bd6821b7d476f11bc504de3b2d0a2ad39cc21b1ad8f513049445016beeccc16fdc3983d7b8a77caf0fed3e7ed83c89fcc7a4c1695c1f50cc2f72fd68eedc01900eaedd2eb203a0223a48a9face1bdc75a70d3e6770e7cfeb9d38b806a4cb13079f39b83b2208c017b3063307ff260deecc93c8a5f287fa8983abddc0063f37a506b786ea4b91b34d9306540a1adca6b973c85d77cae0f84e18cc19dc1d23330633f837874c195cd7153180414aa8c3cb55a552293aa5a7a4270b5a1aa8538d6b69a454a81c77aee038ee7cc16bee64c16fdc69c55d77b6e0352ecaf4398deba3bae05ff579c10bee12a23100c857cdf11df809b97e740d652a852064ed13966becfae00200c8b2f6697d28408ecb030f4ac828b5e09eacb8292c50853855b502d58eeb1aa22f9529db849f428139ee24c171dc5982d7dcb9f31b778ee0ae3ba978ecce2a0ebbf304af714d99c6f5e1e2f90e15a2ccc834c1a9f814f2cf754b79c3293bb26d5471d7edb26bf2dcab8437960c325c17ab6015d7e5f28657a8b853059f23b8b3e7d30477a2e0aebbe5b973778ccc145c044fcc9d7f5305d745a4e7ba8052705d412870e140c6d0bb6c207fa06711825d3f2c39db742fe47a99eb40d62e5eb9ae8659582ed7a5b8e5badd42c3d5e2ba739ee0ca1062825b844794ddf8ac6296a0043c24b858a36204f7b443c3e5ba727b51a5c01c778ae038ee0cc16baece5d778ad7b8619eb121c52708fe7dde8a6bcb7805765d3f5423d230dc301ca70780ac468ab18f2ea04cf3d105821a1d598349b13e7665c8573dcd8511616528004bb1aeeead3ec88011513aa5b8c4b03258444031c658678280c5d2b014330433047701d158ecf4ae201aa3e1faa131d80481a531006d8a1bce745ad7b6cd34051029eeb679a061a4a8401c9703afb951fcc6f5c05df703a7b9415ee3821d08f2010f74208a2856429ce78d032b5306f980073a1045143214c00116964a0a587381fcc6f571d7d5c069ee8fd7b85fdec0b6faa1011f1b00028465b6b0c21b5688730ae4eedcb8cd0cc837f0ddb8ff5ce46c13be71a5ccd5002c637e68c0c74db9c1d8012d2b2aa0eb42f11ad7cbf8091cafaee3b8a6ecba3ef2772fcd4fb02a0d168eeb65d70592af94e27deb621a4fb478b8a505c74565d775028a2ba5e832f978e27a1e904d8a345c60e0af56c01c3703c7712df09a7b81dfb8e36337e7b0ebc46ddc1e9fb918788d5bca34b795d4326b91be897ff86eb9f5a463374ec7ebe1e31bb7e5ab9e15e274f96a30227c68f9500019292e31b656e924430119688538b565d630d7e95b490dbba76f3d69188d53938fac79aee35b3d20dbd612e2540b5c1f345c3f399707d75d429c8e07259c182f40c3650497f15d3f2ef87676e262e0ba72aea4af1e2ea14c5f88de047e3d8c90005466c760c70b58e085687c218281efc40ef87881262c6081b792688c86b97e6c99657afc8bcf12dedc7f2b10c79dc06b2e057ee346e0ae2b81d3dc1d234c54e010788ddbe5af5eaed50a71beb5b48438d73213b7c88d57e0c6295043810948200210a8b93437c4a94cdc6da3512f7d09716abd4de3db0d716abd326f345cf82c16b0019701af71b9fc805b4401778002525249993e6588c65298d0177d3774a58b4b830cb80df8bdadb9c0fc2e2e4d9fc284c66424d1174d6192c224d3ca805ba558278c96d50a068c1750da04fc25bc29a2807f34e441330eb20005dc04a8ac25ca3292688c2588bee86935d58a3f5a194999cefa5c59281f5941999e068debba825aa4bf715d58f48bbee6ba705c179216e9735c17d112d785800bb3d322bd121786a7457ad875cd5c1717fda2df715d5df48b3eb624d3db6892e9755cd9afd1e524d3b304598c472b3596a0dae4b8c50269dc03bce622f11bb700775d039ce626f11a77cb9700fff0ed9cc47d51d22f7a97f0e600f8a5885ecda5d1d0b403fcabf7e500f785280db67e7c21ca2f4a5c3fda69e071452f3e28ed01fe873707f8c39b895f941cf1acd9f40b51c30e70fa17252f45aef0e600f80077e2d7570c44c3187409bb1629be321f20090314800048b8481b1509182ff7b7a5056217917ed1df2bb34b7873040d028c958ba426238e38cd1dc0ef9db9c6d5721be1d2026e17468d5b330c182e608d4b330d9abbe3026a1bd8f573645fc232d0dc9636364fbe2aca899710c7e6fb9710ff050698e3de1cc715c08bb83acee3ee381177e6357cdcffe832be8d2bc410a7a29389607e213382f34fc72de23b2e8f7f3397887ff7965cae09dedb59182e06be5bcef11a32706ae4b8326468f9de1d76d0401a346a16450ebc97e6994b43beea716e119e4e26c487b83c5656f3a23180d7abf38e2b93af7a1d37098effe872157c70039b890971f1f5f1c3e67b1ae721c4b119eb2801c7a571efe521c4390f1d78efeca1871278afccb08b633ce47a015c1f504c31cb02f83d8d01d0b86ed4dc7b67843876464ca9e33c13fe5f401c37bfe6ca7ee302e0ae1b80d35c9bd7b833dfeba3fe479783f8576f671ab714a604b1c91fea657767878acba404628c91ebafb4517188f32de3cd03346e4bb1e62bbb3b2278b9ecc6692e022666b24ce36a36b714807b92623d006e8a7cd50741735da48dfa1b574a20c69beb61429c7affc5c06f7c0fe6b83c1cc7ede13577c66f5c1977dd1d4e735f8fdd1f0ebb40dcc6f5e13357e635aecc34ae0ffc1f5d8ef987af9679b831a4580fc47dc957bdccbd215ff53ffce8324caec7f7e1ee4809c428b3c8f522986226f3414709f85e19e30a719e31c6ae09e25b334c83f8d2fcdae18652ac97714ff2553fe3b2c8577d4ccb1fea7bb83eae8ca987628a59ee214688f3ecfa47417c679e715d3f2ea016e979b8ae2b5ed7f5735d4057f48b5e46a8c3cbae9f262fbc239e8acb5c3f6d831ebb88b4482fe3ba80e88b7e871dc8187a2b063b3fbac44a5b9b7233ddd7ceb5612e3c4e71ef9431f538bcb9ff5c2dae168bc5b55a71a9a4a8522e94cbe53a59178a29043f975772b93a978b73b95cae4dab2eea72f574b9e4044cf8f56af51206e6caac7d20069e2da9c9853f0f7367ae0dd33eefba52c6605c7fc797a44cff72c70bc9f430ee788fb2346ab9a374d2ba6317b1eed8b1dc511aadee289dacdcb18b545c3f63a7ba634b51a64fb592323dea8e308632fde9fad0ece882f9c9f4a63b1e2953a45cdac9d46874cd6c1e5d3f2fe39794a9384366879e2c5d3ab4a4d35354aa33351dda758a395b87ab53b40e9da2757ae3e89c824e4ea7a7a83ad3b581c9861aa0ccae5aad9b4cddb419bac3dd8876b13bfd8c866d33265e5955ed91f34b346c92a068369b8140269380a00b27b9192004e7511a25694159a04109799c42e49448340c0ed98241be22b1a38c0c8d95e4ab693a19d3b3f1122d7ac1ce8f92c90f113e09d375d6ae561765626291ef362d7b966b13999372b3e2eeee6018ac8c75e28c8e7def20e0059b48bffa1d8df50c9770b8e1fee931d82ae6de3a3beba059d3f04998110c4a811de5e947f0a7a70ffe543c0ff61c017bb8e89c74ecc92ccf712be2c9f35b518f153e43f2fc2192a78fba1551a02324a38cb9984b66ee4bad68b3a2631d6ea46d489edb15796e58cc0d491e299044a2310a445ff39d5d5d1c45a051665e360582826df98412162d4eac1539c1525c12c2a5a016e73c88c4ca8fa52030886bae053266bb56951d8771114d8bd92ccb24566092474bf44551fe66c8e325776865eec016e7673716b66fc2d0cbae93dd3bf9ea2e2fc3ce3933f23c27b698b97b34580e97b652777bd09fc1c2dcae6425fa244c11ad61929b8155b266db46972c4f3fa680f29a9cf48e33b2c87d8e33f7a09f2b4bcf60477bdaa297b2daaf6ed1d74cb11483fd7f46d1d21af4cd930169fab4102d03135986272b7128f75b6680e006ce0b003baee65117b9df22eb15fa9377669944c53ed81d23d4045e964ec881908ced6ca7e2b2eddf768dd4cb1ef594c3a82d6cbdccdaa50c6667a83d22b79a3f97f27eb5e30d93f6a3c55fadac165b13f9e9594622d4b079ab508b4135a812c93ad47528632184ab100ad7a01a5485647c86748105319c808b37c8fa6135f2d344c25bafa846648c0f1d609eff1a3c0d797899482e8ddfbc9f06a2dcfa5389dc0aa480f0a9d72b648d115933719194f72d15ecd80d34b7a8a20867b94515469ff38edd7c13016ad8c41d1640ca523e6f03f54fff8c15f59e32d495d96a612b10911f14aac39bd3bf1aee985f50dcda2133c5530845994ca8dbd0d3ad3f2da264f3871269b16faa91ce33bca946644c2b1126113e8583cc3304c9526fc916bb53c2f7fd80293a6b03d1fc993fd306d4246f3ac77128140a859a57de7166f993bc28bf3d617975f2a419c5741bcaddeda6fb435fa5aec3d3a700a5dbd0ef8e3368cc29e1c9d3e224d2f58a8963e6a6f3675a41e40ad9e22c8fab223baee46c2b3a56fb8a2799f5337fa82db275e8491ee90f913a942b12ead5953254958a095f2e71560bcbbd748382b74b4f412da93aa148ddc5ccdbb6e1d944e5db57f08fce2bdfb016ea981965a57acac7965f2cc36a5d86e2c6630e88572bdcfaf6158df557ab6b6761ef07cdab834fb9a824568573c0cc62b91795c4b6e01f34b3580eaafc7e863b7a985e330bf760613d65e52998854262efca2f1ea7102dd315eeb172164ba585479d15dcc3742dd3f0082d9b50aecbb75b72d94c948239aa6cc2806ac571263c06c9a66f97e2945985c9445997a1e9364d5554bebd542a95bea98c477cb9a452ba94dad0121e752865dd745d582f7df2cc2a58a756e492c934ab983f6c95d26f989aeefc32b5e922de5bf71fcb5db1bcf1572ecab772513cd7f1677883825d57de157db5e95bb95d8b2cc7a7d7744730b3ac2ec31d2b94e3eb3abd2c97e1b8caa5b35cd065b51d2c95beed6a269615c5a794d2bcf2120a2db1ac545454f0984351e8b5a1a631478582d3339f36999916534ed372eeceec724e75c9facb291e615c657ae9335ded7277e14e79acac1ce58e391905b74ca767f9d6327df5920a8aca479b935b26cc825778ccc9a5974e8f32aa1cf56f03e9c559395539bd9b098f392a959b465546d95054b0e9f4a6d36f2a07595f61bd744793e9db4fa6bb3280995963e92b384775ba0c8f601d05f7607d05f7b82fe5a84613ce516516deaef6d23bc4b9f8ad97f0f8822b0c97b73e43235cceb9b870dbc6954c5ce9dba90b1ea5d8408edb7035e1b17519deb4a86ecb55b7d582c799b994d357dcfac75d9a2bc3a568f4a6bc8637292c4b4d5ffdfbe6dd2e7bb41b1e5599aedc945734e66da62eaf5667c1a35dadbec2638e2aa71c3cc52957495141b93285aa9ca2dc519551ce62b3b76d2b07cff262b1a12b77ccc92b47b92b7a15ed2af42a39dba6f2942b738fd255fec990089d1cd414ac2a53d3ca539d6597c725728e2aab7ccc51657ab024b3ca4dc9aa51880c1e75c79c0c5e86c6aaecdbc29b139ed69e6ecd1617f1bc94ac5dd9dbc71f990669703b9dc0d28f323b66b4d054258a09c584ebf3763b873ce6cc32332078b063df41f0b6f4abc30dafe8abb4e1daa2cc1c8f6eab2a0b034bb11c5299a275ba0a9385ed12469bdf76778c945eabf6ed72dcc4a3fc7cf771be846568e45be2cf558b543b77ebe78e4cdbe899c50c8d766595b8b34db0e3aae5ab2c2343079fdc9f59b5e4d082b65c889599d15ed0659994a37892fb41ba96edb4ec18d1368ee3c028666d23290a3a670d939907b625eb6acef1f3dda498eec0ca707ef6b0e0930debefe89e924e2f7f14ecaf82f4d3c01aead0ce691cb869f9eb40aea3f9f3c0d2f7811e087ea10eed9f895e6a9dd44a80520ada7eb6ef5402cb8215c8983e55818ce93bb19f3e2ad0fcf67337a0b911995ea6566c400d9bdb4fc3eaa7c4b427cf6cd3fdc48e5de6a131fa06fae968cfe6b3d1ed6723b2614181b2153e3db545fabebc138f12a967fbe9c9544631c733763fa0aca5a02c5d55bbc2b763649bd78aea6bd63e6adf5ab56a9886fbdb3ba924f7ab95815d330d79d02fbef8e28bd59469b2e647e71900abda26ee866ca8053bdadc29f8a64caa545ed8715e665bd430ed3079231b85447ae248eeff68189d4b54a7549e1e2c6232da4ed5814d89b6ae89269ea03194839f652967cf16aac8fdc9337fe8777226f964e963dfe2517bd4fba89d4bb8ce9660b730630a9995da63427f16f5cefc011795763e26e4b1ce7676260e4d0ef2879e479b1024cd0b2abadb4d709f33e45a560a403988a768293165e0a70cc43ca00ce53c55b6039e8a4e667a77a76c864954190aa642042832f02d930d2b99ee94407c3219de20019670e9e0951288cf2bd5d9d7032b5bd49e6c331d5aa6584bd2925a26c32274a0905f648e6edd048d51d9658bfdad3303553d4795bbb717b6bb0ded7254b5d4e5b4d81a289d18e5f4abf47921879f48cafd26680cbc875148ac3cca29952c92efa34cfa3850863b3a3c729e57da9a28009581b81ed1d708ea2c370d79744de434ac7be7f6680eedc95da9c32d1edcbb77d809da936b8bb2d650764f9db5b8c3f578ad3d01b2024808932294299330e33694dba7ade8216d458b724a9e9cf6c2ce1c151542775053b01fe96cde95dd99465ec8128f323d457cf2b8f914e9d9808094206182954874c02423c9819329dbb62b62603bfa8281f5f1c3e64d0632a6bfc140fed0b33cd2195092dc3077bf6ddb28c7755dd3f0a6446bb8434a29a594524a49b1b85b508b2de484a08f5e9ab7210d6bbafd74441a06a378654b52d23967e7ee708714c7d934444dc1d2d71d34dc41e56c5a4df452c6484c71dde9212f74d156ecb4b84d3c768f1166bea53cb0dde90eec276de5a4941203b4274fdc437efb2737293fe76bb8f9c8987e3ff9c9b4f41901a8ac842f91bac6afb3c722d9819271f3e98a640748e6dc7c3eda130429cffbd8ae81993becc3878ecedd7568b9bb0e307759d67357276f39b4276bcd837bd662770f8d5110c857bf043e40b97b684ccada2777d3d9f6336fe260c7d9e384b256e36af6e47e922744e82cd6326a459eb6c88eb347d54367cf0cd39dd38e1d57abd8fbb661ada93a85c00ead8c7c12a688243c69d8bcdc82c827cb2db4709267b2dce20970c832c4d9f2c450cc2fb20c6bd35f7721731149f0425096b9882438695811497092258c9c33f876a8b88cbe7e88b6d1a71789b6d10fc560fbb89fece43e1292c88b2730ea4593dcb28e431ee5923e85c0f6dc8114e8bfceaec6836036f4d3c3b31302999487b134a65d7a186c9152dae1390319433fcea019d4b0790e6f57d522b51f911683ec9c787646ec38e70f8df5e9a7d0250c9d5a7ff13d61e7658a1d32c3114c965bc825c0c2ec0a4816a64da0e5c85019191919191dc8682ddb06159ff3b3aaa1cb91c9b46a9acd91c9f5393258bc3bbce9be6d631479cc91c91890c9d30999314746ce5bea7ad4d3ae619f4cfeb8e12a694cf56e9c91b58f30596b093f8219f5f1c391fa58ca9aa6c259c3e376ef07d497e7cbde79946bbaf24e10cfcd93d53af16d9a08349a337b32f731e763ceece138dc637b5fd3364d2b72f322154f317b64462ca56d84c950e7e0c3809d971f8a8419e98ccb9ad67d9206b67ebeced98c6a94f3cef24ada7f70b9fa987386754a9376a19ef66b1d7fd44cdfe51f95cada36e8398db2f00252923020512a7c92c6a44c4a99862c47d9852cb9582d9139b8abe4374a36642d0599962e41ac8131401c91690cf9d26a8c0132bd56a71435ed0331da946d53cc4ad9f04918b0c57ead44bafa97572bf05b496ab1a2b10944674c1cf3c8fca1df334a5fc8e304439e444aa611506e26413748cc2136d87155647ed532f1ce7c5f29ab7766eece3c81b4f7e791efe314caddafb7ca4e8adab70b4a51bbe30372e9ed5d23db6d1a366e2ff5d80ebe4b750e11de6cb86221c2325893b411a2611e2ee1eeceb4d84dc56dd7696f98863b6f971bee409ab51e6387226b94dc5da16d9aa6695f05c31b6eceae539bdab4b2bbe251764cb0a56fb5ebe8101cd781a82494a3aa3e0d79d4832d6e98bb30da2b77d2346dd3346ddbb6a10dc9a6b2da666f3e94493ea261a04c2817d48852ea246f47ad8f73ced9dd734e38e4cda5c50586855916d631eb1b8bf58df512eb1debb4b2824ad279e57905c64f7774fdf4d41d5357b58b4bbd4bf518d6f55378837f42a9eecc2e1776c550a5c488c1dc856f8c7f3485a650538cd3a7e3f4efa6ab5ebe7d3a497ad2b3de699e0f054afb3a2abc118f0a6f5eff522ad74b7ca5a8f476bb068bdabebd1e61e29051832a169beb1bfe76b7d7266e3b6ca74ee6b7d32e96e44d5bb1c09aa08a206fd48bbcd138e4ed72a47050a12ad4e47ac350812a3c9e2ee3accb70878cf757563aaec543c65967c9c03d5e54431a16e3dbe90f8dc11c0506ebdbca37976f2ddfb6bf2e152f55b2fd4bb95c3264b40ea466179716171797d373adcda5c586b678b8ee721717eef1a2fa54a03d2a152386eb54468c43819263602963c618ff35577884ea3130909965e0919ec29b8c0a7758dce3f4ef3d5efe6366d5bf145005bcb2e674d4e94e33c8982dc6a5309762d1afedae4bf1a577b37d67172d6eff9d482d6e57dde964264dd6ed59bbdce669717bcb6d212d6e6fddee6971bb0ce7918cd9be72d655ce224571c5361e3b8e09b67be52aef7fdacaca0aeae0ea16d1e2f6958b448b1beadb26d2d736448bdb28e66d1e35ac8bed1349d6a8be7db241d6a47cfba7ba33a7a452ef41c2c0f3206bb08cd94a5d989219e56e37ddb185f8e0c04ba5d8aff72e14dc17b8dfdf5e56796b94ad0ec1a02d257c12464a393550da225a78a3e12aa5d6b508da6fce1c99dc17033259c33dfaa67ff39aded7f44f861b1e91c89b8c4c6e6d893ce993c813fcbc5fc974c71976ff36f0d63cc3eeab5d88f3accd0de4c21b8d9ba1864bb3549ad566939707cd1ded66e4da188686371453dca23635ad9aa48c690cd362fdad1a6cfd101bb6f96873adb7aa3c761884811dfffa318734cab2a8d4a4b9682e506a1b0a2075e674f5dcbecd256de9cb0ada671e7779f96e0aadd434e6d16e933667173e0933d2924c931d7df9d83969d19c23f8bc6cb16df2e51cf4ec8e7ecdf2c650ff550decb4cb976452524dab94d6ee2d7ca5d9b5c7e589a78ca99be6d12c5f6b684bb1fbb365cda469f84ab2a63f2fdfc91aeef2dfc42519a3693c3a73b893319a562beddb39e89330e30e3d998633f0c815e5c90de55991d027d8f0a2b85d66e488b246734ea86130d7ce1d69588c6b58e67045b95e6c9186c1d68fe20c19a14c4393e9b72d9c58a645faf03ec18eddacc6e93b10743b1d4f27a46334a7eface87c68f7436335a7ef8072702738fd7744632de4f41f128db509fedd53d2b0049cde2b6ad8034e1d707a8f49c31670ca80834b9cbe3b6a18024edf75d130254edf05d118ecf4dd108dcd9cbe2ba2b11def846c7cec88b28e8f1d934cc37f5f8e3be5701c77cee135777af11b773e79ec4e3a1c767b761d777ef11db743701b77d6e133b741f004dcaee20fb85d823be036cf17709b0467c06d2abec46d111c01b777aec4ed11bcc66dc9343a14dcc78f55ee9effb039054711ca230b2a295356500a9314a316e953868668fd368b067b51729fe0ba7ce88bbee5c67d21a22f171717214cb890001d569edb76723331314d9a139857fc821d65515f1c678c32323436c14e6567917c95aff9d9cd21af8b4fc2eca44659cecb44132db6346a823231019bfe86c6ae4392fb20132d73d257668aadc84226683b69346911ed60c7344c97f4abcfa46774cb31d8792fd8799a696c02fdea7741e4e409135d90a2c4931ad1e6c2f04cc34ed1e44bbe71a5736a5593dad874c3135719b34dfa854fce58fa22dc8e11d4e98b72dd36f0a8bb15cd3927ea7d572c36c4230a859a2f9ab50ed6a2ce15856f944b69f11886972b0ac35bd4c3cb152969118542d5990a0b8ffac81185a716a0ce11b5c815a176a0305744b71d8ea86d7451db688e68888611714a38d40ccadb5575b7693a5891b7cfa03a7491c56fff6228d3c892a80e4ff24cae97b20675f364c9b396644c3b9a33b7301e7368509ea7fb2d34627e43c138c41c11ea1f0a854ba8221473a18ece286c43eb55dd9b577d0b6f3ad56d95f09cd8b5c3b90be3f2108f337218a4d11e8dfafc681488082909a88b809a099011d0514fe7637f564041da91d06c2222a4a419d17654c4c4681e05754276888768059427d004e280e8ab076936c97394475fb252622512a11c8759b55855070acd704673fe6b5d99b59f1fed4723d28068ac8dda08a88d8038226b477123a2313a9b11cd8856dbd14fd7594b8de8ab6bd759db59eb097946ff6a656d9050d759bb5a7d2a6b8b3a4ef5510b8f10bfb5b8b75e84b8b98e995f7076dc7bebb6700ee39e8e168d7d3c7dcfc828c828c828c888098d7942f4d5ef3aeb0955269e903676b2a1ac1175a345c9f19a8fbf714bf35186268f1cd14f7f8bc13eda999f9fa1a1fea1b13e35a2318e870332323252e91f95fe51d9717b0cf11dc7b93c60dce381d3e2817574e67122ce3569d84f66c97dee8843a2b19dada70e46c87d2e897bd2b19d8de80917b9dfed74ece396344c12d5c127f7392694071138a73e9d2eb8e38ea9eff810f78995c7388cdbe38995cbf80f56c1a27efad8716f7dfcb8301a51df81e79216576eb960b7fe66e3eafbcc135272a2e396924a37d713e27a3b402929170050ca654029cf4434d6d78e6c880240c4720060a220f0d8e5c0a3c581c7550d1e7f038f228d7644b3016d44db11eba6c7f0b882e1d19a6e0368068fab1a78b44d03b30e04eb32473f6c471c11a784a7cf01d1fb80c7957d0c1eed0c9edc28ef8103e281037ae1162e21b5d85db4d81a1288c48eda91d72deec2640f7fde978ec49e2c8f7880e651f3a8683bc05cc66df1f8fcb1cc316e8b47aac7443d75e90273fcafb4723b25b344836446604018ecba395aece34bd32247d4d2e26ae48c885adc6b8bfba494333223df0ccfc86b52e76790aa081b3c23cf085cc2c444233392f2f930a9c30fa784e3227b432c76669c91670c97943cc33c6b5a509526b3b05c6fc813b28265f9e8097947b423faeaafac76f49247aee5ceac1d7d35da957667b4d8445f832e2d57e6ed094cb2f44296499c7094670856c1a65e3f8a9c120ea9458e88c88ef52b1f3d8e4807ea74ebe17188ec1dac460d1b65504e2cb99e3822faaab5f50abee2316726d757262015ecf6313cea1bae46449d92e74b2e79fe8b91e74f31791e25bc5547e7569ea6a32e57c47146dc11b786dc07736832cb6b78c372d3f584bc237986207847d43f943bb6e667b2cc2847dd1da5a31cbcad8975948e12dad687fabc278c1a670d3f6f4353deba0dfdaecc5666d6ad99a5870a7ece4c78c79c19b90ad5204fc81b52a56eabf499e7a54cfb27ade5946ca88aaaf6dbe91673451c51d2e81915a137dd223c5c34355526d528c4da112706cb319973db34f06a4762d08e3622fa798a06cb59c1725c51c3240706ebdd19992fb68d68dbe669148ae82138228e496bb8e29133cacd1135c59323ca34029862ea34a7802fdca60e3b323312c9a6f57ce0f4645ad4344dd3ba7f325daa33986606cc75cecbb45865e68fce738e60de26debe99c5bf374fc3bc7b78bea7d4baeb9e39e969921d572a2b53f1288964647ab827e26a45872e72bf05466b61a2dbb66dc3f2999ed2db49ba4d8adfe24a26065a2ca940354863a2c59652bb9c408bcd8016b72b5a6c29e5cd51c93e691f27516bac3e5a0bebe8dcd23e89a612d4d1447ad2ef9d8ec92c8a9600b5585af5a93f75088c07adacdb41494f8e9a28293a22247f5a9c425a94dda6168b263d611d3561e516962d6fa199226ad2a276593e89a8900637497902c0c2b4a8454a8534dc5dc17e1f3b96eba3de910ad126b95be868a448234d1aeb6cac3cf33b5d929b2ac94d91b4117df5116a85f61797d648afc83488623189fad5a73cfdeabbf0f8d5c5e3cabe855aa8b330f0685d5a8c5a2c3c3e37e923a396e93287ff5893657e734a3cb7d902c11666b1ac40fb43dbeee929d24aa909e53e156282911356c0452632d21e0a341bc1916f68c88b2ee4911ec94db1c85d93a0c1e866c5fa597766d6c72ee36318addfbbb66bdfa6697f61bd85f599c22df0f32c97dfb5168859f0c8041359a3bf8a4c7d829f178a6720acac019d0c4a0962d414ecb7a7ee08deb69e6a5dbb23fd8651492cbd7cca3f6e86039879fbd781db4db56ed35a0affd0f2f6f994cbf088d637dca3f514eef1724dc3b5457c89ed5da7172c5bc4d760fce2da220c3cbab026eb9b218e949335298b75977f1bc8ba9d8d90b8523cbafc07cdace3df05a759f778ac78fc41cfb03a1dfc37b7d4ea9f9496058ff3ca399f53d7ee942ddf29cff716dcc263c782ed27de708fd5c11506e9954694342d75c7e7147dc9f205060c17979696568bc5626159ad56565454525254aa540a853a9dac45413199c21004bfcff34a5996f26cb530cb5998f591ab81f1978f5a9e2d2f78dcb2bccb615c29635cf0b8e579d6cdf3b205b3625897e5128ff4f6f32c574a71e23175fb436322a7fe75c8e3741094f2abe076411912c1449ed7a68ebc1a535f39b5c9a37d0affd03278abad56b7a1ab7bfa8abdca1d99c8f6d3aa74a85497780b7152f2e9b2b31d37ca5b5cf3b5a72728683ee1a36e118ebb5389d561226b134b504a5b344ea21692293cae700b496b1f86e18d7d7844b345734e395b3ca89635dc4754b6853e5c849b9f18c68ed527fb6854b0631bdd961651aecc6d945b5a9e18a68d72ff79a4464d7c86d690351e23f2a62bce10877a785a221165896568c41341ec0c61279c004fdfc2c941ec0ce5a9a48d1a3631e5e9bbec0cb5cb5b84fbbc40666e25710e4fc19dfbd19947103b431916c4ce5096b8c82c889d21d9141c36226f447b1b9133d390073d885b336f78dc21f313a7f9f3c0ef88ed043f595ec60c5f64898bcc8c38213f3f45103b4332234e485cc47b915612ddb97738c894b594e85e7a094b517ad75dca94e0ee799f320f0731e244103b4379dec80e999f08626708b778c88c4cccedc0966e4802db9291d1c86897a7d7668825d891f2501fda78470ed5214b5cc31d3363db5834acdee3bacedad54ace3b898ab2b0752ae1296a1b3d8926515158a96acac1ca6fff9a7b73942ec100c9641231e1b34493dc67008f103aa4c99ced85d5244da2c54994298f64c2935b16310089248258a6a83a1a0d40155c2b09ede1431ca45ebb8eaca544187ea3f2627777c82cca989631b3030ff3b58030b825cfaf1ad671b7a52eacf71e2beedad6999566e15bcd766a52dbd0666da37f2a819d539b35b8dd1dab9a497568628a9f24c957fc23f1112c721fcc335a935a9cd1f7a01807e52b93f25893469d5c9fc8fc9d8c7042828ce99aa4ea3a6b57ab200d574c7117a72327f9242463aab6cd4cb3ca752522a0a4cc9225134460949534c92c596e9124287f21387b3a207442903161830085052b45d58bef03bf2fbc513997fb2724c89a94f73f13282dbd49054975d2625fe5366db579129a294f79277556a65252a652d22eb141a9cb9e9e86a550ef4bc992f5535096e5e5b10be2a1af4ea552d2089099e5d160868cca283c6a57c8d0879450fc8082cba8cf0dd08cc2a33c145ccaa5f240682ee1994f5ae733249f844e479035359f841a6687cc4030714deab068710cb6130a6a6253789451c8f3f43b462a564152496a1bd8d1f2a80c81f4aa0cb5d80d998120ab10b5d8a7c28e2a43d90ac97d2fe4412f5f0a7128c69647ca24296bd2462463320a92dc3c764441626b52f5a20baa5fd4a46ea85bd229e996744abaa26e49d53a236d874e0ba9f046c3d3ee906b52c34c158ba1094b114ccaaba3699467357243aa6b826ac2165bb08ac0a1266c9185a02624394aa54860471425444882da0cb98520c53e11e5d3514d2a82e4ba208d87be8c725f1b125bf9b1a2456d488be6a30d5141a2b1e74681a5af59d871e54705a96114cbd7ab01fdac10e9588bac6d3085273322af6ac91d50ee7738f1d83109f13c02b1fc903adb3326e4d6a1b8bbdc0eec97a29352d943563f593cb122a43d593cd90138cb620e469a15727e2af064048943059e90206b80d89311240e4ca9b0230a5692bb0b77a010514dd3b49e9aa6699a0c4da34e46196ab1ef43632a25fdea7fb4dac72b69991922cca8226a30079552542ab3e77444f4ded3d373121a4f422d9e08b3cd485d28660642b30c6b521192919191919191514a504a492528a5b3a514d52cf75566e30a8fcf5276324ac12a8cd2b2d542c2bbcc05d0916dd711a2311d594794bbe8bb8eccf3be7d7edbfee120ad79717b90efe00b20650fb2c2d7919d86befa3ab2897d24013eec87384837ae349994851fbbd9925f82be5a621f496cf75e00294302071902ebc8be5d4786a2824d021b71a2488b87cc8826eba1d94c369166b3dc43b359f6f0ec6b49dc5200f8edf328e0371c64cac09bae231b251101a4ecc32d25bc961253b67dcab67bad397d68ac35718b00df57ae04ca3d2c857794af60298c24e11d65e552a0fcc3dfa56caedc27ee1636cc5d965b906005579b517a022b730b891dd3c1f0ab23b1b3e31de53bdf575af3abebc8c21b869f0f5738c80ad6be0741c1423ab2efbbde6dcd87d79105f1b0f7ef4978ff3eff7d0f71102d888775643ab26f82de95b2af265121b6fb0e59ba0945082588be568aba69e58aae1479e23ce1d08257a2823dac019d84a60a248e6d264f406c9e9fafd60a567bf70d35cb2a221a5bf9a1af7ed759bb5a5d45f4d30975430dab4a1ac604c9aa7e13acb20a76ac49b5c12cdf4222d32aecf4993d2dd2125814a0165590acca4a050985945b4a78527cf72e65de952204dec10701714b0929c07f97b220de411312121e46f1099140e931d29ab3b9a3f148392fad9432353434a4d2a3d2a3d263d4a9d81495516e49633a32593353ba55caa9c78e2721a294a00e8b14fe8ec2a3f8f0278b828f641396f435f1b842921b4bfa9278bc12505c921b7301521fcb9deed8d9a30289a3ca41fec0025953bd781215811d4d482a2255118de9c8faded591a998a89064cd4a45a452014a0f7db5aabbaa9e10580e8f282a9edc67a192d826ca6377a4ab837da27d43e108ec58936696425ae4e159d524531135998ac0a0bcfd24445fdd5926dfd049e82484c7ae04abf9f11b4aaa496317f40de5a186c924745092fb1f9286d14fc9d6539f68b39ab44d252df635a38ea70452762ac80d031be4fe4cca26a46dec824e42251ffa3221553c7613cb1251ee775874425d50c987befa79628a34d405814023b023fd8666374ce2a96435db36068ca1ad84e98e72ba7cc350f8a88ff216af5a6c1ce30adb376c9c5fb5d88d6ff128add5b1765a8b4d2614eaf255cc1fe451f451e4496d931675a0e0e851d7342fca4f973bbdddea1daeb3a874ab1506ba9e854acd8c000000004314002028140e088582e1784422281ae77e14000c93b25872501b674990520821630c2106000000008c00a0010000a0f86be9ea235ae4fca26828d9af3de15226a12d575a4b24d945c8338ba71ba401eca12d29f2eca52907b9bd56ac34b132ecbcc7efe3f90b964a90e5b17158a631ebe7d8798472d66f6fd3bd50d9b87950aa5f3033eb578357dd586ace7f574a263e480b00bd5532765a319bc4dd0c5fd4bffd11036ec55380ecc7e3dd432f61fc72be4d7e39065e47464290755ad4c1d44f465af534a75cc750b9d2575b919c5c8fa6dc56d23baed211509bae52cdfc70f41a15cdaba023a6c22e71e53564543c3af2516326c437b1d1db835f2e9445ece61f86f4037184ab04a05715a0aefa8637c95146a2d0ef4bf4795751fc161255fdf834713e589bd04a2ba70b10deb2560068e523dbe552f82a48ebfe19928fdc3d6bb0673441c7773c48b2259f00f5081174995594ddc23ac7e13a0c8bc9b25de31cfcfa9fbf7ff035de97cf5b632f3b281f26d5af9bd1ca0d1c141f92ce75bbef8f8f780fdc88605051190c37ab8f19c228ec782394e5f7fa25f662573aa16a89503499ef2bc42dd301c0406a31304717c6a0b2011e7c450ea24c28241cd50da514023279fafd3afe122aba0de280be1c582eeb920498004f8fd04cbea2c55da75bb798b17754228379f5fe52fe050a55f3c36e6043be62b906141113c494cee8931d0de8406b07ec5f4bb3889a363773fe549b010a038100db5ef97fe349009fd100e4294445fb07ab53a692d969c1a35d8e5f71b523857ea09f5c3f76d952515d8254af2708bdd3eb56e019129281a7908d4d9610c79868421ec7aafd6994b27f97deebc82627866e527df26b3508e3bad400bf2d45725224506e6df6ee6875387d86df9daf248da3a0f8fa66c47b46bcdb6ac7f6dfc8707680b82b9511907d8dab3de72219d4d61a2c6bf3425fa0f3cc149ea4e65d12f0f9edbae3bd695f17a77b6d95fe01d830e1df19b28779e21777f79083d732d66278e179dce79beeefc1c386e8d5db66e63f18c8ae1a0faaa0be1ede213bbebc8a3045eadace142aa00db927b034ba9d61cfe217a38f3fda6e3d316fa6344cee18079608878ddf896a91036678f1faf7fc8cd52748c1098bcf59b531aed63d446726adb3933e730bcdf5e33dbe5108c1bd024d5240f7d59f7a35729db322d0db4802d509929a0d4d2ef1c4dc9ab9afd76c902f66961445ac5a0b75c04e6ddca551a7121b7cbda6b0be2418feeb8b6f26e0bd0f06161d5dbc90891553590ba7a170ea3f57e07e496a55a819a5ab5303d91d8deb5d7018e0af98efd4b44ad348c95364182b9b97d286c011593e6bcb73f3496ad602634c8046c9e8b4e8a6df7e132d6e2775fede1944419d5f2621d01b215f8983c2869afe2d1ed238c0a716432d4371bd5afae0c168bc9a2f9206d2fc3db2f42e62fbea232a35473b03092de013c76fb89382a1911d99c122e14be8ab493702971061b335b56314eb7dfa21ec635d02d26845766d809acae12a01bdc09d487b989588ff8444c0862d663f6be8f914944745291452e12048d3dbfb7188d3b4e84919e344af46e07d2bc6411acae818a3848e0ea78b836b4b93047dc278aa0503b34fcc1dcccb39b1e1ccd72db0ff5b6fbbc3a1428fe88503be6f120e3da19fd2f2047b65aef92bce4a88960df96a9e46bcad3f783119122372685434ef3cd64948e48220336f0079e8d8e4c94a4b5b790ede1ae338d1f811a1d8870de41b487e72963f903490cb6f52beea9c8b7be65ce66501152b1572218662930f9cae8acd27366ad4fabc7a8682e57a9368eabe13955435855bd2a3c32935a56024109d2fb4da5be3766cbfd02f1df2ec75037167ac71e4cc45ce1a742931205927562381371dadbe59fc2debc35e56c8cb00c06e18bd4d98aad0b8e7aedbd529743089b4f797986cba93d91095d42772c1e391c68ff3470d8192b0da66566e2cb8c46b482db686ef0152c3e148702e04805b12424674f43f1c3f8295da26a8f9a0973944ef1de4a7b7b9791fb6ac167562134af7b9577ff91fe8a3aee20111343b591479a74434c30c6c3a1a1c2f1418e7d861ded2d100a04f6776f19f9be46ba3f63bded05eb9dd798aaef0e308e486e53b67b6ac658315df4c08968fc989fe0338d7661354325920935977f62dfb342668b055e76b3603ef3d34d41eddd82434912e535fb11b55fba9dd0404ed0175ee28bb46c2793e55f4d2068b7a98db7213cf2b67e8ca1e789b811399cd04923e79b24dc576f2a4c1edfa83cd9cfb7629d3dcab9af942d52c15e355398d7b3bb15469152f7387f4f86f41bb63e6f6e840d0e831f8aa71a9b49e38503e7435902bdb386773e2045660208df4480eb38b5f1dfbe7227830b2fffe9bfc2b009c3aae029c2924e7f63934eb5d67153c0a6af33735238dcffb9bcccffd9baa330df465384f57eca810ce65a0a1fc119c43d34e9cc703c88ca1293cb31db2c7feae48575c0320cbdf9313d5662c329e730e0c719b207c13efe90ef7f14fbe9c1368cf03cbd808a79d7ecea35755c06fd06577504e789767e50b59879db87aef5ce7a212200b847f372317757cd9d13fca391e8febeb4c701900f9a3e2d400dde98a5abc73ac2c401d2fb1314f8166eea5f1c3b483d73a0fbe7a7deb09d18c2cd01c43db38e9a3f66d67f45980d4addd2bc99c5c8cb74d73bbf841052dee7cbff07aca836b4638c2b25351a0df60c44120dded7c743a9850b3c66b06f36b04c86243b5980e202692d006c3789046b063d18d94943ff4279cb360a74127a55ea164ce4cf707d1c5cd9c90f1256de095a7726b439433ff29655cd580f98b27943ce474532bb17f3cfa38761095caa915c2420d29e3ed8f772d2e69ba6826bdfcbf30d68ee09cfa7bd8336f8ae152980802cc608ee6417e155be2921746022214fdadc235a26bae967d1a3ceb7b4329050047914f6f26c5ae8941cc89f99fe19e5301b8415d1afd8671351da080587bc71d432f2f70ba27c2dfbf92895bd57aa21335dcc40eac4dcbe41c85800e68173fd23af3fa7b6583076c880e21403e662be5f94e34a93664da6ed25665273b38cf8336ddc4b92c6d1b056b5135f43b8349ed25aabdee2698c74a6bb4308e2ab9f9a0c1a9f0a7047c2870e0c3d70a450a716e727220d069b4c6131b6a3c2eee132ece2bcb88335b7d45a11abf0d276e350cb8dab24e13afb6fd3fd95d8a2b423154b16eddc07c264fa2447aedf91bec3fc67ba7ab3f47694433cf28af86cc565477f3ca7c44f8e473ad70d00f7d5c6e4c5b0faadd867cb1f843eb11e378984091667545e23951d158853b70e442c12bdc32971b1bf69262120cc8ea92f39be50421210d8864845361896db7313ee39e9f20f42ba86fb945908465460c405564ee3073a7b4ba21cc83371a6430193e23d7761531c35b77a28ca0766d55e5b131db75d154c551d3d4d0e36cc35072bab9143c2aa99a29e224e1e2ef0036c657e3a307e73e3fca26813e1356f87b46646965cacc3b7cdb481b0aab1fd1ec6037f8124336f6d3d7b9cb7c082427506178db0232554def6ed03d93871b06423fb003cc9b11e42afea76f352da92551979dff03381985d6fbb1081a75e6be020c6f5d59ca8f9dcec666733c7133fc18b655e7213d61080cf542c8368fc72fbcedf4a1301614f4c475acdfa672b27c594c9e72a369f2f09be2ebe2b23ed13c43a0c58d3c172443d984a5791158de6915314fff176611065f9935e8325f808d911a605d6fe168d85d843f76888f5f475e09279c5c568436971e2e9cba947c61cd680ee3e3ed191e4b3b179eb2027099e11acc4d4345d47fb1ad91b3f2ebe911950f9e3c52ce603fde077e163e1123df519be6e2f7d6a7b1da7caa66298f73bbb2931ecb5775414a749196c2b0182aeb4c36788125d84ee52c7be8c85879a5b36190fb471331eceb9fc409fbe14783e5a69f2fadbb6e328d3dd2ded9cd9372fc68242aa3857d59c6ccccd6d45a4812cf2c3bb416d91785a2682546f9e2f8d54862d91e9ade206680f20850981661500bec924367037d64a476f2f382d0f9916532920a4132512d36402363acf8e2953a316ef4bbaa40257a54dddaff052f12afd1511d8b416cdd94fe0f34b9810c932c941cfcbfb70ba0cfeeb74dc0aa1e416dc16f1ebded2f2b5509894e851c666b17376abd0b6f8febc4b1360575708218353b0545bbe9b480be27a51e2ed2be1f287964a92b0e8abf5638edfc5b43b96c7611ad08159ad4f3a05e70116bc281cf8701825f80332d7b3cbb22e43edf7f85af7783d6283430db1ff418d976e87a48d90479fe404b219b1b3827acb67f3f1eda025f764804de4ea7f8966943b5911825be7be3e7396205e9114029449530cb6e68ffbf9ae9307c474bc27915b456505ed4afc650f39bb693fcee38ede9a813ec74d1af06109867ed96bf19ed83a65a37e9e84bdbe3178c8902144ba60868f8d72d1e4bca79205fa5e6248034f8d820c546d5e944475c2ce60ea861f93e8f04747c2c6c8cb00b9c349154e104a52bc163e664b098c5c1240849e62192f421893617349748b2b9b193a74892dd194b62cc6b2d83199d39958f60f62ad908d272784272bd0edcc0000566f5f8b39cd9e076eecf0403a1fb98eadef33306fd7d5113671c26eddec5ac764e4f2c470b21da753c42d5e2b569fd7df0e7dbbb3243e09f9a1769ba5f0e5ed50234f16774cac4217eac2d792c317dc48b2bb1fa0f9e88249d722eb6ee6d2c03b865e775bcbbee7b9fad346ee71cf98ac3c12413bbe64fb31d3984c57fa173b38526d4fba7dba6f0037843f630a8c32e819a3e3a45a8a58a04088a68e0a52897c3068c93d6dd2330e08b760700472fc170510016712a41c17873137c4342f2dad36ac4c16f5905cf895a45d7a6d7e88aa8389f19cfb1b6abf6bdc15c2f2b5e5d1eceb21120bc15b3c6bf107fb8becd88b1de76cc9992e81d869ae19d7a927d8c2def3ddc2ede89ce80688856a5536c650a555b5c4e7397db26a3f2f03b61ce0ab1be7ae840df7e5035c983d1d10bd40cdbe10017d272e3e3841080da353df35f4687c9dd2d5751544bc56addcbeee428e39f4e8164d0f2f853b1803c5c7cc388f23f58c99480eff8b422b72932115ee9164bf114636fa3bb211a7f8500aafec232b30ac91223ae772aec14d97f4ae242bf946998638a6c4763608184c2bd2b4fecda890d041d2ce844d7301c35a21c95a455b9e43450931a06aa1152813a4dc36f2b9ca71d30118e1e81f5a146f472969e769fd2995fd6b9a83e95ec3e161f87391b5f6cd38fd5149fc96ab86366afe3af855fe9c52a45060943e98d8bfa30f815eb37e4783453c19c1ee704470771c3233efb5b16a482f5affcbcb6afe381b7fde1e7de1ff390ee48cfe4df15a10378787048329b2fe8f5006040e7275dce7419e896e100df8351d46d432ea8e4b9573deb490fe074b186402b299c989e533b3cfbdaf1c9ac3d43d0c5ca8b6005426184ccd09390c96c5fd76ef87989c6d65064617d27c3eabf58ae0b3b73166e64aa9baa9d4ecb429a133d8350aa01c27cb3efc024ee2320ff0e7e3052cfe03e995d9e78448243ad0c8d77bafd9304257716c5470d0765564a2bf96e0bebdc097cf0342fd84d1c042cb3ea5b02d733c4d79750a7921e85c3e5275e8e22dd5ee03c631dee17048be54a143ac441fcdbc7a637705c0796c3470b83c4b4adb3756e34abe4a0172cba0168415308e531c7503afff5bc2de0b6751aa2d0831120808692684871e3c52f17bd1b9eacea7bb99532a0b8fd28bf096564979e06f299667d41a6951f7943ecfe83269533dbb03a2e69ea1865457f6a77223be5d4efbbe275d296b353597f8e3ad7db92835ff175c3329a70b40d28d95c33190d13ed4a3719758956e66ab216e2cbe7eb2e35350063380a8edaf6d81fa9ffce3c0ca61473896705dd6a00222bc32bc6f1705a825a8883b29803382fdb1cc7fdd68ddc2193021bce70f263a62f27499481382877679b294d472f0a7f7b3f7f77b841487921569c9d90cebae86cc39ce0889afb72219ef9bb008f05220fa7cb8e8ca23044d477dbb3ad994ed72e3055910c982c565289d3dd6b7f6eef11bcad3d4bfff036a7e63215ab3172bd342cd309a7ac2e77a8e6c341f13af24a10b37a7432dc7275ee77f1817b4961c6339e369a27f667a3958092d6862b99e1304f1446c7228255e95d295b992fb9bce526f260225382b7f8c22f2daa6975a5eb4808f495a5c6f99659d0a55760033bc36fcc5567a965cdf608cfdfda9a4da252a31ad66c1f3c7e7aa032414fd005a5f5294793015a57a8f1bbe1713789afd9aa2a64af958ece8ea89fcd1f47edde9f336e1aab0e69b9f1992bc8d9e3ad6f325bc59c3cb0f5e6675036e787b7a0e1ec4a73f070cb9b9955e11c1fd06af31995cce1e3ad69387be539ce299a8a1343a860e81179e3ee7d5e5a480e05b02638ede4917d2a1665ad63bfab1da641b3d7cae0625b268ee8346ef60c5a3c0b21930a7b6b98090603172b24c5083b1bbc83f0a04fe6affb225abaaed17ed14af34068cf5a035e8d6bb9658e462361e398db11ed437253b7d5d911236997273771ec8830ebc55f7918ef1214b8b76aa4ece702316be6908ec3bd905b23f3d632dbdce8a782ae8a607af894b42531a2f9390f1ecce6ece8c29df8707a20a52b049313e09d33085b7fc7a2b3c123026f60720379d493338fe92d6d7f75179e284ffebfd19debc6cdcdd051687d48e2d2155b7d8b99d364d82b2861deb0e38b7fd9d69c7fb847334a54a6c16a4c8f3621d81e46822212144459578ccb6c424ee84ce0e8756cca2fc8aa2e690778f718f1cdffb7778dfdbabfbb22c7332526145956313e06b5c32836c2be9e9b2454bf14b854b09ac2615e55c568c8a2685790a90849392dc6cdcf8b933bbc09a233156e5101274fb3db2e425bff1d1387e8e88604485c68c31d8adba2059d7d2a17d00ac95a5e77d3b6e4e99b81de1d5b64c7f3b423db5bef8dd44d44b765e6910adf8b20153dfb7c29f453f048ac092f62d7663e239fc0f5de2615edce01d4f4be50298abf2e170d8fa365662c1eda3178c2feeb45825965a5f2c79fc36c267f1a264c3e7d40d5f81a521f047c8ff69b480d3e99c630ff5e45b8002c13d81edd7cf116476c94233c7a92c6dfeee19c1d1f86a49efb5a6dc8f0e3750e2ec6512afdb1e6dd5df99f4574f9e48182e05948269b516e554438195226b9b5179da2e2c3ab470403b742be5ffb0ee695c70fb551a75368ef86c58dd2fc271bbfe6f8186f5e3492808f51476ab04a02ad5a6c20b46e87137861af9f3292325f53c9c9ce4a5f465171079a7c2b9d5d0f8cbbc5a4c823ee45ee4f14069b597cd098e68ece14428929db132e2d2c4cfd1b29635d2eefbd6d3970f54a49137a0d664eecb63c81bce945b735b6d62284991cafdc1b23de75a7b9013a2a6f1dc1ee43274a8a762d9d1b6485653b8b7aca9b2988a511c0a77762c6523518d55c891b51c59b1374d0f81cff2cc3c50f4533d4503058e3bc665b6b273e91231ec05a45e0807f00f965035ee1c314a5ac9e126360420c8dfe08bbcfa62ae4379622fdc7d00f3b2764e2b5218c7b8ed9da015ac024434ebf20122b27eca72c3ef89f80f6198dc9a471e498f599c8ecc486cae9f6b3a8f0712ad4d961873d84e7080b5acca8bcdc4550cecabc4f8d1363fb6210f83b8a65c7fdf476879b13f79435cc011c20538956a9121c4e4b605e9703921703e98776314e201a0f47155e4b9b33a5c94e74ac113658a43afbdd65fec1aab8a4d7da8b6e3e3f4f22bc7e6f8e1f55b72e417987df59dbb85ea19898ff7745a6394756ad4c8ac13ff384279e352c4ab28225e81fa26c2b0b02f4a1f9bdfbd068d009563388380180f4d7b60112191c8c8cafa97cfa0b61176c8a534c3f817ec3008c992093623b1b5307e81bd53ebabe3d3096bfdd8e4dcb531de37f29c1036cd4cb26b633e67ba80e33c7445e730fad2b65e6d06072bb57805843860af4316f63f910ae6f14d4492cc9fc558b26f40a9e5c6bb93383215c3e38d15bd6ce4b1b28820ddc058834449941a0bf82901c66e73ca0efe504d4a814ac8048e49af4a141ff4763b1a7f7bc0ced2ecd0aa58ee81c8c21354aee9b19f6322607399f6bc3886533688e35bfd403c9a7808cdaf605457d0465c6140b9a544a7708d301a1787830d7349446a12264221964995eb67bbe176765d9ef93c7e909cc185629cb4eb6c5608d2f2d2b491564d5c414bdfe953069b04407f6ef879ec5d29989e43387329c81e0c38509a5f14b0572747b15c44fd69c88fd275279daaf07204dcdbde8690a76405e9ee9ba21ca3f98d05e367b3a1aaabab3c4a4807d5580fee27a59d1903d00181738f824cca80f74584222c0b1025512d9260a13864df08d4340f84ae2eb5db737d54be4a0908a8a7516dcd2f321c07311bc29720dbb3870285ed96100c0b448f80854892efc1eb209d046c4e15648ddb37ee691005a13f286a4d44972e89eb88fdcd323d1eb49aa3a6472348b688941a9b23acbbfa2c2ab444cdb5829aab33d05fd2c79e95a530fd798098def1cce90971f4f4b045cb2b29e3be1f82ea154118877e8d3de5f2894cbed23740c60ea6aa036080a5a7521716c6f6d15d091ee3beb818938a4b848228b1682947461a3d6f4e655bd15b8c10c0f8f83231b348ffcddff9195ffa939dc57623b2a66b064c1f9e3ed391912a4631c496d0c118e79528712b07f173ce043cb82f559d05b3cb0bff409e3a0819d4804475a2ce6434ab4918f3e11a46f02e2429f5845481fcbaa9f1529795e808888338eac8cd9741d107c804f48a1c684ff35f3c5c4940d72bb3a043c81b532c41b8772e5115be8f1e63bb75055f30a91f0f221567d9a5cb427ef8d25838853e22f00d122cfc55287e2aa1cd2b882382ef1d61efb0dd4554e9096bca8ba91a6725d7aa6e1173c979251742a009e2f94c6306493dd50d3d21b16280133601997a878b35628fb2a1350751840e94d511586c958ad7369394a226709003e52cbc2f49c11f0f51e13603a64368b25ec69057a018b76246209b9e115e24d8e0913a3a73d793ee8631849bab702d4e19d62162beaf9a16a9115728f16345d38f724d0e404aa08125a5a97ef32e48a9e8f35c480cb7e41ec2c0826743909215da3843965da66a8bf5d817fb26a93ff2e0d90b203425a0843ccb1ff6c5d4dff963ca3e046efc03ae861af94cf263fb6cc5ec9603b8f55b01ccc1728665e4e22fb2b2ccf47a963ee6b498f8715b9285a88e78cd046fcf4eaca347a34035bb0dd3d9be080e362bd235fb324849ad7458422047d69e414c735386d0496f29bc0d30b358e111a4fcabef7ae21bd836f971e887490522140ab4e67ad6c435ba96472c40dce08f49b3a49e72a79f0fed62fba5af16923231ffb0ff5dc5568a015b260d3a50884efab976746ba6d820a3a27b8aa8fd1193d62ca76feebc0e58915860a4bf227f38a0e79ee1fe077422344374a12e6f07bcacff18fb4664314ee9ba15fcf0e702f0e8168d41106257bc6439ebed76a4c0e7e64a804cfa2a4f69d02cf67445f0cd21bba87bfb71ee5c4b754fb8f4061deb051219f228b3bd7c137bd21a4531749f55226bf07b117db499c850ddace359366151c3671f197d00555082d312dbc2b58a4044a03c0e4ff8440dc8924f289d2d8e08032c9862d49ecdbacb725779d6b98949159b48f9ae339a5581e554a0f5ccba85fea1ef15bb820b673ee489cf1aaa1488b9c1cbada1ee7b8c9f8f6202b8a785495a41761d20cb41f255021318d9145f624c56a12bfa28a35299d014cd5863d9b18d88361522cb97651051d028ba743dd01857454161b58f8342f60bd8888e3c0d229f1a2eb5921d2acf75d5889ecf451c88c6b978619f9ee2d85265951979e75112a993fe48bd736739de8fccb4007713870b90610dfb2f311466379c0cdb1ecb60e0f0dd4f5921ffe87d169e15f0cce8eba5e7bfddf422df0fe2242315baa15ec28c0f9d7d774d39b6092fd402c6a1893a4326a188ed662cb83f40aec6c76fa2a86b8615a4d16623f7e02fa9b7d6dc2a504779ff9a5c59a53cb8eb84068395065cd83b0bab4f4095c7dba2bb8d67f0be9cf525ae04ba84399dbf6c388f68741064ef40fa18d41dc0db17b82683a0257a8bb53a887f3d087a791a24afd11415f61602a9563da62db2b15673e7698e70a8e7c0c6717dc7a2d5d1942119a7a3d32456ead741dd828be388c202263f01a70b2ed3b5108e2bbef2d7be86806ed73736e422631fa03bde150753d1a21ef8693a65732d8a9e1a88366922beb9060364978ec7a25a6f4034f575320a327b4462f69c559d111f5ce2490bff6302def20a1fe031cf1650b08d80bfa7c31ce0ceed9d63c7a726f4353985027585c1bf361e01fcbda74b5d09b711eb1909afef17cc68b4f76dce44478e6fda2c6a1d7ee81847ee196fcb662c2d03ad5c328701b84f6ad579921e9d99ca20fc01833e0c7bd223298d3d00ff3a76da2965b8d5360682f9cad2edf52c6f352aabe49bb677d43a5a112fa5bb94bd440a1224140909d5ac6b91a8679afc43e09215d7d333022e229d2873b7b38459bcd91fdd27e7d3f92f2fd49fe2cb06b12bd938437a645e84457c0b409abc45afb09ed177d1c30757fe1da7acc87f5e4666d292aeab9fa8cb3d5b1df0f2ac03f65f34a2d66bef14d5c3336d4fa09d98d5ec9e64d08ad35bbae80cd7aa7f497336b31f24f7069de4c71e75b9f1ac7ce2837cac06271b48c9184d91cc96372e53c37632b43bd018d054ff04b63aa57d332369e56a68e98566efa734314174979cfb6d4084343607fd2e09b10f55b6a6886afeba22426c19cf26989d02da3c0440e02f521602564104c978e18c56a456897d11bada3bc0b0476cab75b48b3463854706dca3d22f33f7f9a089e82f80ac8a27f9d0beac3794e2b37c190e653252092ab923e56dc74448305ec669c1a320080ec5adf60b760be375fc4cc500d17edd5c1a059bb90399ea66768efb2ee4dbe64a406a0a099578dc317a147046eaa8cbe2436d97cd9e5a36512b98cb236a3bb0932a0cbeb843f8c9d0bff6350d63ff0f65d4efec5e0b0e02f063bfe56803a1658f8ee23c9e21330c7a623186873d60cfd58bb101b2945fa6596a3a5e3f5e18ded917fe5530509f22899acf583b460b24f0705b94117c70ea387849940f838376d71647990ae8c0c000565792df0f2cb3bc53377f9d25ba34d2124fae3efa91a44ce747bf23001139ceba960a31d856ff6ed3a753c866cc472af7f3b2f5ce22f4c39ecfdc44683926ecbb693b2bec648ce27dc95c5fbd290280e8981e9e1b44ca8abe2a15689bded8efe3929199f84ab51d08bb06743fd68f56070897b3b1fa516e22e66f26af3a46ab96f30905096a46dfb59fe5a082a95b4370ff725a2073ceb83f512b9dab98178cc75010112069d8b0b672f6c7a305d5bbc110d79470a9451b045e6819e9d1423783da61862386ae13b828ec3c3faf161b01ee35080f6187e007014c316f044d5ab582261307c4c134a07d19e6a40df1235bd1df43a2e818e0fb79a71c9c91a5918e327a8cd58d266b1e4f574e2e14b0d2ef728a57c876c2ff0c7cb24ed4f0ba9bf14946f7dedda13397bc46d4340a71887eaee889d9437c063e64b670c855b107b2c4f895794c2d105e41eb32e35070f1b54df42214095e63b1d9f1f0b872491b7733c24f04341efde1ace292b1f1629fd636a0470f84580c2d88bf0fb7989ea16e95b9708250336d3c041d4ffdd494bee457d28e5baeb8f7b97bbaf477cb3cb23806532440b8f5a9110e4cd77e02bd9b8951443969da62df96018ef1aa4912d0177c7679ba64077684608d1a169b896d0ea584bca858f8aa83c4568cd7fcf59e6178a12b2861cbf256d0cc0f8650deaae02b00af0434ffce8d424298696bd2dc582b4974eaa9d5a0e8ba2d9e4606763a85af6311730ac8b4be2657655a81777f2660017eb00e4254637f298c88411c67a3709f9cdc6db7ec7131d0382236b230382a813729a6c76a4133b27375f2a5917e398bcac644262073c81c92e281c5e41d2542c298f62ffc4539c8a0f21c4afa8045adf48586a58b0c4f857436ee2a97f944d6f0b41a345fab888358a293c01a058a94ad5937c9957002d65a932df48654bcb4c7290bf2eddb8ea4bb3703ef63b4cc6d4dc64417caefb0495ac6fc6bc3b67ce04631de6f289a5351a8aef8c8a9405086b6058b0f9c06cfbb450a035f2d55dc155d2894dd5bcef8fba336ab65cc78f9006aa78e4b77a9138277393e3770848e67032ca5c17d4f5f6a6696cc422b746488feb9c608e8685d00da0196846367853af1884b312d620701dd667fd322423deea71daf34568d912bf1d825f8aef2b5729442766a22efe829276266592eeeb1347c557717e9c6dc0489eb770cebfb6fdf0b7d62a74c4726b9d73b2bf20633cb4180a4809d82d3e09f8fc543fec068d946d0f67f602fb72835305b264991ef4b9cf44e0ce920e0858e0f5bfc2d13d054fc7b2ff104c3c3cb5978f7d7b61d18d6222df4a3b5bc0dee1582cd1a38fe7c06e58ee86689beb5b4f3f9dde92fa5cfa824738f606a44999441fdd7a0281e313687f2b22188adafd52096bf39827fff0420d1f7d191173f1ea209fc1984f48e2e77ac830661cd7d83d034d42596c22caf75026188927b593cd94dfe22eabe9cda30ae3c67b0c4ccf7370294999f0b1cf0bd6b364c68a522690d2159e8f348abe99cd07cbf08f84d813134db98a66be6545b13ab0b7c26ad8802ce95a8fb2e61133c60e0682aa185367604c774cc4f98828fb013e0729bc0ca09269133697957a117b715f618ac03578372aefeb148ae647555cfb6ccd4efceb3e9e127720f49fdec3504896e62a5d16188c540ac8d97ebeb5726d917a445246b764f3399165a22c638d890864a4ae12a4cf7f0f4f0cb0d69711c40fb99816f2815496983598840a8bcf0a857ff5953a6d7f69cdb682cd1d2a706dcc4cf438e9d2c0e39259e456cce93066a0e5b9aa14b3fe52eaf07ddb19056ad2b15049bf0a8a940bbea430633cdc0ddf385ea65d53c202716ae273cdfc4630eab6dedc6392df6be4219eb0668b2ca9f0251e3c8d628f829ab32476c46153850653e9264dd2e50a50289270b768fa92e72ffb38723768cc673554c4524b023d0b5b1274268b900190368dd07edc057abf873301f6272f9b05180d9208c79a0e141091db17e512e70b968db88ae7e20bf47f3e53f9cc736f404bbed5960963cc53b3681da741663d9792a18083a6cdac1a99e11e410ea655f8ac0ea426ba64b583feae08ba1d4fadd91183f37c68f6082cd103499a832d773222239bb73068d31ffd186e0bf344176719c1d2e457c47c110d83beb2f601f0ae445582b4c9a602c279512060b4181b0c8af1ff2480488176ff6c08504424b2eda0c78392336dd500f458b203e01c42630b1b08659d8c09afefe05cd4d022873c3521055a3110a193464811da452485233dcc762220c8b99b349591157877a9666c55002233ca53734f9cc5e2f3fb05f8a00839be1b7096aa612ea49d97e1a347b273f4386e121539c3bc4102511d705a1d394e06098bce716ace4b79a2d29926e64b7a98c30a893d2e45097c07349bee41749d3386082ca21ecc400662bd9d5d369eeca9029a84cf1ff26e49066e5adf2e0037627a7b0e2655d1d184c5b8f0348b8a33a10cdda20846e305bf4153616301be405460484e55153dbf5364d633f52ab910bd7ac90b573fa7a1b7eb19bb6c643ad647ad8991eda61a6c5a3deb2395721b8cce16feb4d19b57e3509bc18a2c056e53509d881638ca4a95d38cbab3a7f394d769d163dcec54f3fcd945b1717a71b5c2e50848ef581465db7c1399526a03b6aea3d32f67cc5427c2cb3dc07838d1e2f78620317b3f7b31701d6b068d4ebb35a6759112bdd922567aeb59c09138044a86053a6b393f0740e34e603f6a50697060c6749c97f38eb09c4036092b2f509c7da96c54af6e14ef9620649780ea27b117d36744a5d80d6b04c0290abb45e61e51f1a9b71c26b852813d7092c09851a9833e026792d5da3e8e1bc951d5447a3731696df9e418e8617b0eccad51dcb880d1f46b5cf56fc323d6b81b9dfbc8d1b922dca2514c5b8fee64ca91dd16ae304fce499663bd673ae1d7b9cf5d4ddfe1850044f7561a23087eba5b32dfa1453505fd246fab3175e570ce1c9d54c57254d5780d64c17a9af3d32d43b8274bce7812434c6089a14474363d3771dfed35f654dabb0c05fed057f49c1f7b69d4aa65abaefa3119aecc344a29e08b65a5732ff0e7d18827dc207c75344432252e465e54c07201282cc921d3658fba672bbc53c0db40f81bd341ba3e97e79f65b86e705ce28d3ea7901d2422cd562eaf67c3664d9f09962a47049a489dc34996736eb940736b4dadd14baffc659e3873d46c4e4273c28120b4b8dc6cb06040670b3262a553ee0d0ef7992f3fe63df3212667bdbeac874bc553aa53f57a07059ee913a8a97ba98405d004209c0e5d6cf4d6655f43b59c79eea2b93a780e0645c865eb9d99cf031ccaab5d6a32b0cf97ca4b4072a65fee2b046dc284355185a71619d1132429f95b973d3a7c9852c7c4b153497c870dd40eae88eadd6ae789daa5446729efa19bc1e7ae49368da08b78d906617c5369a3d48abc29953c1788af21bce5b904a5649751d6fc502b83a01943133c4034f2e61b20beff06aee594fe969340408360658f70c776598895957a843340b63086010415c6d27672e0d656782ec7f93712b2e8740058aeadaabc043f1a189c284e3acb43529d8443175186cbc70ef2ab51c4f3b61e98cbdcd14528b6552d42e42773a1ebcb0980e076a3d2f220a9020dcabf09039c55f638e4d4db1e37a6aaff72d22ed2883a6567a0bd64ed70ba07eb9c3b1269e6a0c5b57422114347df8f341f1f350b8b9810d2673d8b7d718d38b1ac33aebf4c3795fa5dd4e75f4a684920ff42d5a6c5495724e126d4e594de33f11640761d4639164e3eed93a928ab97ed0699a8c3c018530a049a9ca43688e7b2199cdb63b85d5976c8468aa3c57ffb9ba3819da8e47b28a87317dddf4d112048b1e3f0c66d040a712baecb4dcc4f916984ea95805e59dc0fd1b95d1e27e2f2b324945e45eaf6b4d09b43795f187980f50a5ad7a4935a9841680b5563a6518991e9bc48409a920a85940a0cfdcd1e28d500542c92299d7f2a9b090e1e13cbe4c12d346e09260f70d65e8b14535779e8a1e64554c2bf39a5e8c1b88866a30319074e4f3817e7d1dcde4d89d0dd96c4e7b25bf5a3dfd0d4ec066d9f114cd3d096bb0909ab702e07640d694d70c4ae6f8c15d60f20c3053e781ea6f3a1961f470cfbc108c68657b1782d283a163d928b0038d5dacb11a32917942c40a73cbc2e4e9972cd6eda602949ce4dc0587773a41b565fec3753f1cd6dd2233e9ffeb5c1dfcd9a574830a59f70b55bd56bb7ded64743f16ff39a45da7f44c97b99281368785423da14dbcfd6f3853e0de8b6125a6583b46246d468464cfceaf3111d32e33b705caf0e517d16e00844ee0780a19407ba5b9e18301c46183c31c5cb5393300f5f8f69cbfc262fab05521f1cbd3793c7558295b833c3408cadaffd2822ca635ae2342bfd571616df9e021debe19a9ccad2ed8198f9f22ad7fb444eca6634ab0877de1c8ae3a222465f79c0f0dbbef37928cb8057b049917c902d84c61f7a3f7dacb7c9075ed187ed6e0a5232572752d08b2ab870c86d7d4cd3b9fd8c26c6a265c84e975df626d33f2adf5e6b480cfa9c456d30f521e3ef3d0fc36da1728e3dd75a6ae37cf2589bebadc7a099f486254b6ab52c0307fd0a387c90a48399319ff61b0ccf7f63980dc35658766fd68645d5d5c43df50ebc0ca0c42644af1a7f6d948889d7db7779498183bbecf271042b3fc869b903a5d9550d968108c39f78b8d33e612d8faa20463caa42fc72b82588bdbca2ec5b9ed1e3574ee26ac41787a67c3dbbd8aba4e21bd79ec9e55eb1b1805bf1bd827a8ca340b448ddb96495721c7d898a2f0decb0402e7bc3277bbf4b0a3e0d302412e870c376f1e43fd41fd243985d368b00af026faa3011311c641788ec071723f659a0653813c95dd8d5bbcdca694a8ad79b40e8003cff1ca7b22cb121eb4e28ac17f0f18df74e45e27f4d759d1a2bca73c4bedf857071ef74e01bc4874ecd1f0b1f2c568aa8ffb88f384819fb0617098e445b1009b72de93ecfde49c5791a7ae41607720917d1e51e412ea28e18a1e6c763b656297a42c61b93369bd5b392d06d2b3cc30e8ea51a7d0ca7ff4116cda9b77386b6c65cc3521d444d5fadd692c1becea2bd4ac418b51c2eea8310b65f196d3c7c4853539a815d2edf0977bf4cec9e2298ca8b961fa2c797d67135aa8044dafecc1639f37ef390845a69aef314e241b3a6ac9d3b62e97902c9e419cbf870c2666c4abb727e8f1df631c5fa31c9f02173552f1171854c1a0d8ba558b842ef17aec245d787a0f283f39975804a5d4c4d1243b1c89c0c348c5b987caea0267b184dd30eb4696d1f3121b26fc02494592834bb3dcd25043778df425b993d62b9df6b215879f510129e94b0408d2f74521a12ef49bfb807da19e55dfe4d560d1c8728e4d97608cf6f8b010edc0fee07ed681201435bb82214a1f9b80e5c5f39f6069e7bc624e22c2008d0b974fbd5a152c08215a6cf18f324dacc83e52d818bb8e30f0894a28eb0225f144e0d55534a720515a578a9e76fcaf42a9c5b3a46afae952acf85b30f9560aaac9bf40b9a8ed1cb8095c8db60c8a9193e58e9849a89ca34bd3520981251788525436b9cee0a5a5042432dbb958fd8fa76c0006fb81a6a7a0f7e808594f781326c7469ff4c9cd5ccc80294a291647e69c08516cbec70740078729cc206868354cd07407adfdb506d07e955b7aad4649118d744352bef2c6ee4f326fe0a103ad117508bc36caf99cb111c3f1d55f2b5984b3f8c982a86ff906d6fab2f4a471897b09251f75f3076077af7a017e9c33fcf0b4f17de4fd6e65f094a4b160c835f4b817d17c4da00b3f170948e04e2e805a60d27b6068d22009a6ba974c69671faf5e8274bb165747045b3e4e0d8f73a2eee73781ee1ee9b434f94da45c14676569bd90815c114180e3e00e3c9216d27a675cb16982d3a958dcb8ec9ebe61f8693d6b48cbde183f0ed351a91d48b9eaaff0439b0ae95c7e81c87238180e13a9c774246057d1aab62977b0d45863e949ee52c3544bdad98325f9075dadbe328a6cea8aa017bcac8145c693ba673c5c0eac557bcd427411bb455132838f2109c28f6cd3d15f48adaf857b93c4bbb20624c3cc55cf1427be9fa5e668fe2c8e7fc25fda696408ae319f1d17b2ac0bd0c8dab5f05de608548547ed497f2cfc453f343473b727e2b9c1ea474dccc4a6b995c9c5a7a0ddc776e3b84f806ceabd1511807f5bb1ce71cbe4e061435996d245adec11414bb6f30bfd4c0c23e87b91efc113e64f7cb78501457c6cf27facdff24c0673bfdf907d7aad6eb6368da429c8adf6daba4154a8dfa261cf880a4009af8c5b282869d17656c70e8294c4b2d84ebaf48754f3178ad5abe5f685a32dd1e4ff1a715b871f3ba6b32a6958ec5b46e6e68627d98396ec5945a11cc6d9cb82f63d3cb96b1da20fba5353ab04eebfdc571062544b27e13f2e71d4c6d47ea12a61e13c45358455005b65a0de9a32565b3ad92bef5506bfe2c66e0a9a602b0c6d6f6b18a1431e897c1cbfe8db16eed2f6a08c39af155ea81206ac5db019c37ceba45dba404d29b63efe077a8d336dcc604cda762fdae541a8afb98820820c3c9d9c5e7b819354207458074886b0de452936167b931631d741845b683248069667f90078e984b5598f9a91e1e360f9e0eeae35cc553b4e7560973a3e38437dd1dc947ae423d7735d8ae036ef70c7f2a4901e5fedf3b8e116bd12ce17c34fbd2ceb72c87f5586f7b799d471b9b4878a8d2d03d3d772ec67bb44d14e6db2d09fc408115de7c1d99b8a2abf232e05d214d703a3e95b34e954247bde80cee4ab8f9c65b5d4fbf214a58876e3cf5741e588a5743c7fc0e81a35d8c03be38066ddfaccb4e29d1f9020035529845b0ff70fcabb4cf3d8553400c330a1c43514ef1164a2b232ccfe72f93823680a5cb6d06b741baeaa987264734a9995b6c2eff0c4033210db55c3fee1b541c93ea4658b65c43874660669c0b62cd0fac26ee5873cf4603972c9b2e396c55a49a84981d4968cb8ca5120c7016ab5d33119652791435e8b15616e0688615d52dc59ec1be3115986b04c55caaf8493296ca5ca45e30769fa9238fd37ac51576c80681134581a40d996293ecd5f4c321a91c9ca2c9ed298a6cc4e2a9eb61b78974401203b39b9af127e47159e2616b7451284967cf89d7b8dd19cf8b4d3a3c625352e23996f5280c2b7936b85352d2b3137c7d6ab376bcee3fc4d46ce381daca60249fa70cbe672e66f268d5348142a895d86910dc0b95abcd80672ff58303de0fa5528895be90b5cae4d54451095ab2b01aad0404db9e52b066f8df358d3a6da27f3b8a6a09fe5a89945929f5ba850c0125f78b70a6b4a4858d9a7ae47e25f1398559445f853f535aa050a1229e22de080c4ce70139a610628e420780ef44f9e26dae743797ae015b225f36cc35b86df7a3c277ce7fd6ce1ac045cd6b167925b90bc4c1b1d769750473af12013daa8d5256024d700e9f214944c3ae453b99b339290d958c256ae5cf95f2eb08f52ff70a05bb4d4fd3e3b612c5ade65e2bd871d0f07c6bc953543e5a95925f8e0ed0594b6c9b776cf54c516cfb5f34a4d4ae41387bae2f25c3663d85d6a740b9b5c68feb2f5674add23d1436510198b7b7b798695896557461d8908179c93f420b2d0ab3c18c3b7cca1e70465930cfbcbf25d0fe22ccdbafd246c459651fcccb0537c1781309f66d228e0796e82913527ab847db2f40a53b39ebb004775a0f4d1123d28fa53e472000167803b15c9d102ca1f69de0fb93dbae68e8e89ce6729d529792d66ba7f2b607907cb70dc589d6478bb43c5c4abf3b2e92693f2ad5943084439c4a3a243ea2083a7b3338b9ddca17728c7f1a3a77447c8fa5cb4559bb387abe214f97c5636900f2748888a7b8318a3beeae6d0a619a1ce2bb63ce7e70b357ce7084b38165a7c3830524bcc8a95df0946914f2808151fd5bbede5f4f4377b5e23b489291da4b74fcd90dc2c38bbbfc3a8cc680c11be31230a5e30cd2859f16b3bc90930e7e659090fbf8a0f449cd4a22979ccbf607b2c7ddc7155deafc969c0c73d82176f7994544ba2ef154e7d231b36b5be52f888bc9a1204ebbdf46651b4484d45a872565afbb1f06216c0e1daa4ec2a6dfb66720f4b71facb2cc78884ebd6207fb408d7b597091e5f711b24950c2e1d419aef0d5c43dfbab0e1b64e5417c9601def562167fefa84d72206c679d77f29e58b78bf7002f87d7129a256b72e20876da0c0694251e9544fcc299a5e2cbcf48dd5f60175ba35b262c36dac54c34ab231b6e1bf4c56ff562e28ee31730d5a3f75873095d9ee02f93844e7c2ff9a04f09e8d0a1a69c61c2dc26ba9a93899c4b74317b5819782ef6c4276350f2a69c307c33df40578c89979e88d097a74d6607ebb41ca673806d95f8b545056711a6bb71e434d6f148fd5fda4a423d273d74b6cbda16601a1f75f78357195efd76833c44eacab35401d3a22dde139ee98ee8b981fca673a4d0a6ab362bd2d598835b433d729d0d75561ede78f0113434f324cd50ed3dd1f0143f25b685501573e5b0a2b12f1477df1ea606611c0da2c9d67c2a32835809f8a6c2c24c02fe5b16ac25d53f81cb220b6db8b6e747991b1ed06741469f766f663365e7cf3cd93eb6d907adda9d0880903c709f000672551b00c52b297de6a76a4a50880be169b8022ab9eee7f0d97d7dd3008bfc601050388d75a2f5afd0423f1fe75dfa80e39af50e712b717846b8f3c7f45bde729f1fb112ea13c4442cc669559998eb89164450464287d10f474e76079b1daf8819f01e29b70fcef616a17d4e8f25c20890426c91faf28b89aee6ac3c528e37deb18af653ec28d1e231a5847fce369664599d9c46cc146411dccf59e4dea19f12ce1791416517047c337a7b4e82a04c91df5a486ce38fa58052be578dd4ab35fd9acdddba8eedb1a37f402417736a68f90362f03eac453f830b794ffce7b03d87cc3c68a3e696afa882692df60a85e93b0b2579a5e178c9a26e6d09d52a804c34b483b45253d16c323f136262cddabaf34252301e6ae663aab6584fec44dbf34ddec806fded03f4c454cbe5bcf0b486715c70b6f0586b3e086463019acfa6caf1d2694f928ba2752f5a5ddb8b1a5c5e9bec36f5703ba5f1bd48f82d0df04fcfc950f08da720dee4cbabd93b210d9e38a496db18fbbbac30e15a1e29588cc19a2caadfc01b6f559c0d0eabd4a67d3d3756973b4266e09f94725a36536d3b52b187e4d316d73aa5c0da36c8cd5d0fffa696e926a2b15adf5a97ff038ab14f8eb2beec91eefdc613850868ebedb2a3d3eeb636d84c5d63afce293fa8864593d1e12fcbf4bf6e770585751851b2aa9a79d6c5dbba7168d2e6659bbcfbaf5105b8dd596eef0798cd2fc42bfbc030ae023ef02a99589fc0de3239c1ad9925b9655e3a37772a132a05c5c7c5d62ba909769d42df4229628a0a96e0fe44c192d0617b52dd8c1eb580346360ef897dde52a471993b82aea947ace926bad636ed6946511e32e713b4626d97ddd523a69b346b105b7bc2c4c3d604a996874ac9e379c6e347115ad3948760581cee6eb3698022e7fce2a8098b54d5d0d449ed13544028d6b34293ce1265eea5a6861d479ca46b12c42a118b73e0425e8ff0cbeab6b5979cdbf5efdec08c961a6495e52c8f488d3c221f1013bbdb3ef8de50d6d753515e5c585e6ea5780d715cd5df695cb8c50ea9702a0ee9972bf3c644bd31ce49143af48d7accab2bdd1b12a5fc5166dfa4bb1dcd2ed7ad820a7bf9c94bbddad58f0abeffc60ee5d6f5a5f370060567ef6ad3929f4a3862197a23cf29b6e6db93d6be5309ea6ef3a9d742b9e75969b1ca6c25ea490b060fa963d0852b1040779b64359ee965b75c60edf6bf53d6d5e64215848ca7c246fabcd740777b8b947ad3a68a2df141dc3660c41e57d2da7784489bc93c02515407708b816140a4b58885bbd386d92f79af64c4c49b6f646fe0150f018d861775b0d89cfba2e4c6501141a901032c69d7dab489bb039cbb7d0d89218f71a4a3bb9754a40e700f76a3f32549457408f6f172252d1907408741b5de0e1b702571db87be0ae9e30db17ac31264ddb629755f35f18c2eb2e6e3bdf529832892343175878d261be66edf67e18b8b47a221d0c8e6788bb7dbd81846b739f34865e5864ae66e4393803da97899bb0d9105eba287521f226a15c20b9baabfdd9d6f7712c146a8625922ea8ffc2ea58e07a82cbb47c2dbb6144eafee1f7837807ac4e85c6dab3d40a0075e39cd417747968fc2247921b5b9dbc4d730d445fe93d0a062b19dc6ce2805cbfc113e6db1697acb9f73cab689f3053119d0b1550a5dd5825d94e2b79db7cf8d8cae97212c111ca46888fd71bce22ce8860259cc1e598d868785660579627f74827678d501d37c0181d24ea763ceb25d988b3315ea5a0aaac2f0b7c2099ccf878175719bbfba293b8ae50dabad3db7a14e476091dcfe0b457dd5ba3fce43c8b492e832626df79edb8bddf6a31cd8e9be453f4d06937b6eaf5d68a09b36f82b5d6e50a127216c2863f295d27974921155be23442a7e2d82ca67853bab2e6e2ca42167dc8c2d182e864ce8d358b055145841dbcec81586634181ad47c9cc6d6c830c2aed129afede07c57d9fa0a3e0c6c7a70077c09d4f060a05155b332709892aee111085eb101bfff9061f6f89b1203c1e3891c4bd4cab4b976947cc13060488346191fd3eb3440c7c9a920d23a190c121f6ae948d9f0bbe93c3edd7a2f70826d5cb8bb3864052a64a9d9634c814f6df9009595c5a3bd7dbd7729be5645133c75e5873b4442f933775259dcfa762f7b423f20c71b9e1e48dfe3e25e908438355a7dc3b52ba0413f6938f9f6c30360101c1aae083960843d3692b7db4772376cc05ce8e852ea311b2d8b57113be6f3a7c4f604998ce6b7c567016fa0748292fe8695770bf8ad88b757d9d16d47226d310a44f57e1eb323f6242b927a08fdfbb35c41ce3b0857cc67b52cff9a73a69e0a155b2644e28dc2d081d2c6f6112e9a2549c2bda39bf878b69b644e4234a5cf532f95cf5c88c6f17c93ead23aeb09ddbd07661fdfe425f0ebc67ee966a3fc14c7e4b83b9555b3c2d8bb463447c4fa3b36c90b484bb8df2c9b79e2aa21d8cc9aa23566c4359c6d278ce09ea58b4c15d21db55aaf0d2243a6342c5b4a58a43105dc61fa4676612663947de60e20028447346c832be0641ba7e0ba15b180e092ad373d025b461ae48f56d605d7d3ac00eb7d8c027da302c611d26834e218a4a69e1587be9ed94a2e1d65570cb4d5da7bbf3855280831e03ad774bdd629b95ed1620ab186458c62c758bfbf3273e16579f3e184e7f8d85272c8fe334ab93d90a446fd6067b051748722fabfac340bf8c508dd4ed15d202f93559aab061cdfe174580431c69115531efb0ac1179c5d55d6037da291bcf904f151ed2eff10aa92ae30db6b9ea364b78fe3bdee7a36a19df26f5f8453ac18d881850beb1dd740f7801aad32b5262d7510fe93088e82031b41578f9e5e452dd140cbab9e0bc07ce031f41323b3ceb701ad02ad5e5a289ade7a54b43a053f178ec98b59f60529d109bccb5d2c88ccab83905513041c6e347aae5c798530bd64d901addd1ba3be1f32eeb83e00e6c294250de963dea8cc3747f47684f6d44364e20d47f7d31ede69d3afa412301f55a140ef76f794ef5410d264607648895a316d566201f0026285f673fbcd48110439658bc0617a22664b39a38e2c1a4c88afbd3201c036226918b8e8590c1c75b5c45aa1b9081ab43cc2590694790057afeb2221ed3ccf3f728e661ab00fa013d297269e2e27c88fe3c000794ccaad8b7174e4644fcda92077378496023479922168a647c27f1ef46fb4da90ae8c0cfc105b9ad234301714824f96d39c35a16dc7ab62a1791faea9f00cbe858b102b299c9f133326a0f5f6a221e3fa31bdbbeadd605d7a5e980252278af026d125eb25b786c86eda16a504b9908afaf48dee28134be914adcfa683dbc28cd22130a81832f53163ef2122366933ee1f85aaa159630c74122843de12a63e7bb9d8e3b073d2cad42b056416dc55fcfe191f607e79ec7487f143faa6eab71f9976ec11d838db9705a2db8b3df1e0be51f580fa33df6acfbbfd117a21d7dc0f5d0016e44929802a2f72a3ddb2cdc01a982c7661d05d94dff3c08be91b3372cb0960352501b6dc30b310779a7f3f128796dc2199a69d6930971f8c0b6f40269178ccf867019c0fe54f73086b6030038a53746e3ef5a6d482c1854c661644a829a5f5a26315ba7d6805fa3892484cee91f28f57f85acf0a2fa8938e1355c4f03ad01bca2c9ae31e56548f12011a3e615b053cb74df2ebd434f0985570ba277f7216a5023a33b6949a3275e91551e9c24e2ef09b42374f4e102e0e0eb766335c5729cc0f6abe8ddccb38e7d8f82479e4df230afc6853e948d50e92cb83e329d97eb68fb52a635fa25641fb75374b611a4fa0ebbe576194a40121cc27edcaf80a5e0d386e7e5b88b2a1647a07adc924d028ec270b04391396d76b6bab98c46cf7b580a6637d0d9032ecffc20204b9bd373242500eda2090cf7c3b074f7ad736ec11fe24d7ffa7acfdc48be7c3f43ca66a3707bb80e7f0480ce2bb693a96ee8fe6cc8861b54b63afa8e849be10f0648ea527c9976f317615e7c2c262ad25432f888c4e861187db10a3189cb48aa416d43e22880ac1c8e10325ed36bf9f53eec82f7c7aa08502cef0c2d424b8debfb8f8d6db6e2808ce858be476124a698474242ad72d8642d1634bd9daefb8bcefc28345807b7217c20c6a7cfff4c0cd79ce186647460f3f888bc5b1906bb7600898dd2b8f60dd79d6b56206c2444fc54cc3392fabf4f003f00d338ff3dbf399f45e85be192960c56630ad242773992d2a6d857db679fcaaeb73eea03b1599199c43c7c584656c7a849ec1dbfbf27fb3bac6eb53f83995feff76c84f1b464037755c7481931cb1f09ebebd3aee798d24918d191947f78927766fc27da24b6fe68390f6973e333a56b4f3c01c5d82b3d0d635809ead08dd173bd01a8626acb05df09b72649732977b6544694d774fd00c72a93d4b240b269ef5c50616312b4c719746d162c9b80d3ffeb188ec28fb1e737805c1097b4ed5f19f1013a28dcb916b5166d5c27fd4fc19d21b615e19a81c410d7bb2ba2852783be1420bab3a0e3f7479c026fc96308b9b83c01ab614077c0d36b05d0efc5c6e53473af33fee73b1559dfdfce11b88fbc94322ccffd153b3a3f7ae5827a542dfac3ca1d709ccc5d5d989d04fad9cd8e803000d6954b18e21441b0b28fc9bb0d101fafc7cee41c4fb78ed34613f79271818ee881ba3bc0f980f4035c317bc1aa17bcbcddf6dd7e2856172fd7dd93db2aa89a2c4a859c6bca90edd71ac895ffb4ce0243fa1e58caacfaf92ace6c9378c09f1af898c47dd8f36733c121d3ccc2a0070d017ba8b8999b0ee577e85e523b5450cf2b7b2275a59765c1b4cbafc390938a2e3ac0077d977e3a49a3248f1489195036334086703c330adbbed90dfb761b11c06bdd5a515b7542c5e466f59cc541b7fd8b54b868d58653088a84fabdc58f67a5e48f12318d635297032ddfd7b0ccb02e5ab929f2d2a8368eb5d5d456dd075a3f9d6f905f8d22fb66914613ec2f186b6442f99dcaaf5d4726bbf8fabb07d9065f6899f1d71e17f3c669f36ed8746f70f8c869420600d09ee37e3bc7c4af6b71ef203c94ba5a77b21d541a99a1d3af9dc8e2d5cabe30d4997f08f5a8d6b75a6c35ebf0e6a81fb20a12dcd331cee710745c1f9775efd18e0384ae0329fc332b281a14ab5c0686df496c929945d674fe462e73109ad43ea8b2874e1fb72426fe8bce096355849b3abf865dc109de7eeeb475a4b098c576f1160efbf8cf36986d60238a2599d22b01ee68cf90accb09287254fe93bcb568bb3c49b75eaee1c001a294b2f15f28f59e7627a47d9a888a33e0f8b6490235792994c5e86c927455813419ef1d0fe5f5460730d4e18662e6dc6be9843c829a81b38d3e91fe5d8cee725f5b26fcef3152af28f3c61ba67021311aa57dd08f30a427295a6ede923115fcffda7c5df489584ebd03a4df67354267d996baf3b5eb66ab37ad516712e8a311355fd5dee49994f78a19b2440b22bfc9ae978338d914b5418e327292ffa46ccee2d0fbdaa79cfdbddc5eb4ecd1f9153df1204a8f590230dd2939ba9b829e09419c4a1e6229d8f57a034e3d6b935805d81541fa2781994648409f47101cc1c6c03ea8720914a16c72ca505deae47a169cf5503501ecf1e59c927b419fecca0b6bcbe9a6f2855741881b11de22031b18389fa67a75c55e56f8abe3a5d403331f086da073e2fb61e1883052b7c5065a0671e341e1c819b83488a4b8e4c30030dd803f88bd83e0dece1d808e60a7bdc2cdaba662f5cc936b238ff488fc8747a893dc6e890168708e2dbb31a0306c9bc2a4e30aa2de77485e12d764e51a9e36827ac2770f81f5b9aa237b59ef2d446f766704df5e7443472ef8ef05b7e8cc053fbde8b65e549efb3ebd4af66637e136dd6ea88eb199f736a477762682df5eba4d97bfe042e59a0cae2a4730baab6590f3c1f025acddb9e26525bd7e3c19ddc0d4b3efc5096cbabee540b41fb2606b95b9c1ac5341528d9475bcc0ce8a086e078e4a0a4e3ad2bcc1b777eea1e0cb3c5489c84598ec1c6e135ce0cfb2ad0c342d89ca5e8f573a60f5125aba59bbd7d25dc8eec08ca0dea32815fc14a5a8748711072dc4ffdfdd0bc55bfcbf48fd5d94b5dc74e38518fdf57989a15ba7770cff5200085aea3c5aae1b84e20d9cbfd47fe9d10da55358597e769fdbe730a93702f8b9e8a05666575b23546512b75729b25ea6d832cfd6329bb34cd099006a5b4ef507d2639a197f2003a7832b21b5e1a4e1a219aa173dc4d4dbdb20de6a1b3a3c7964a7bd463e82dfd4db90b6e919f89c1096419fb4a67f5d0b9aa539ba1278dc7e9c0d13a646f86a8743ac20d26b27e8771cd82ef1ca0f66ef5c51b4e9c13c163e836562f34d170e0feadd6035a00fc62ab160375203e73e3b25754ef05a5060416228747a18998619f2c6fdd2c8bd1a667c8a2f25407d01f932e72d55fd69ec56acdcf6d1c0fe6cba03928c126e70d62bba8380d6960fc3677b353e95043393ec1e55fa6c70b5654fe930d10b7e542ac6982a01deaa67e674c409ed3eaa146fb392551830810899d83f7ed05dc86d75be483fb452e231dda55de73283c0ed0a1edb3dbaa44f790b6492a9c4be4be2a87f5c0ad699a0d5e143544151e6430e59dc0fc53909ea0010711b5ada678841c7577851afbb7c57cbd25f7e95d8b5b32df6e058471c4cd6a02d1cbe63fb6530a7b6c6807d474c458db36f9baddaeacf13ae04d0950517f2ca294fff563e863569784538219882930a8d94cdd99d1300e44c9978c0d086ba08590f12339c85b87fd00f00a8f094e57a1262608cd2ad22f0ce93cc2052d8090b6e1802d19de42256f3d24034b389c027e5ccfdeac0fcf91f9301729769162e6e849785d37b77af439fcd4c7405821fe26080eca3d0a02d40dea095776e35865f181a2aaab4aab6551094e638c496b29f6a71cb2567e741bca2e20932dc96a77b1aace399ab78f599ad5a9121e8261807692a40dcd940adba85aaf8096c3b33ee9857518c8669aab34a3bfc884a940f7b79c6116eadb2a2156a5c8b29f924a9b9909e722286abc2da01eaa3408f084c707473dfefe8f2c5455a5382a01d74192c2ddcffd53f3a17d921535e9a93a862cb575462e85c1dc40529f89acfd6608ea5c0eb846b4c9e07330dcc967cbafbbce5650f03f24cbd55d2d89b32277e4aac645491973100d2bb196d7444fae3d147a35cd4932715142f32d4df4945d277bd73c0ee3f605a6da291b7e024014c1f154e87af48c9996fb1fa6c907dc6638ccfce9b69fc731a9847ad72f6b4e16330968fe1137bdbae07ca3ade66d9210442f6432c3f46eefd4fef16b25b00ac584bc4d6b39077d6eef4ed7647a7960aca3caa2b17122af8d80be4bbb1946e5b1f097a0e1520ca6301e33310215e1051a0f71ef78e58fb575f5b8a49635823df86ca3b034c62df7f740c24b57cbec57ce82c1a47d004d8edb0c4d9e35b1ad89baec422cec8b142e8a768724e1451f8c15917cc698baa6bcd59d251188443fc7bacfeaf0231872cf9a3f3cdd0b808520970ea65a234f8a30c0ad1c9aba88c30a293750529b23a529ca225368365fce25099ad7791df2475ee48253a3000680d2e56ab85be576da43ff930f5fafe6bad3fffe4a1e1211343a701c625ff4e5fa32dc2fd73ea4a136a9858a1d82f30ef3854e1732a4ff910a4cf23885ed66729699fd2c33d2700b68050e862b3962f50ed0e9dd7aa6dcfde2e4a836f94f869b477be9759d2541c7044e7e6c84fd046a79161603c9a4298d1c7286bb0f96ed8a4221a670de612b8e52dcaabac196fc2e788b832211f28efcd2cd2ce5da8c75fe79c2940121c2d90787328935b9cb4e444be12401b5bd57ce6e217e258ef36a9733b63f9f269000a77a9c925b49f2288efd805afb98b4e50036a588b42d0156aca595bc123be08a4aa1df982021baf8556ac8fd8aae9492506dffb8610146484d4511d6d8a51b73f83c5a83264915632c2483810e70113db3537d1ba638417e98f81dab17fb17a00ff53047b30bc78004634ab33ae835d5108bb67443780efef4c742de34703f0fecebe2bd3b59b3addfa733a1442c9b818c14e8b9acc12cbe85e2b2d9e261eb08df8e01fb4cdbbdb4c47890748c6a1e706b06b6567206f3c96475da9820d310f8feaf03c8ed3df22cdf4007e0e0590062610bb87c5e373f4b3654c89c202e4ffc46be85f86a946d07adae8b36cbbaba98b557168909178fa499a4cb4c4e1776428553e5427ecea9544c15eef71d3112cf12d73fafd57f99e50fdcd14da63c4cfbca899338d164215cd4c003d9217c2d0a74cd464be033b0a6b5b44da04ea26a0c1a5165aee67f9a9f75fed7b94117e40cf20efe0bc595cd548b4288e629a4125d8d22785b570f25b0db90a30298c784adc1344f98f59b43b4c26a0bf59849bfe59e8ddbdb280423f640d37bda01715a0b4105b9a802907bd3c579a222a8198df000c7ed12dba55597ef2f60affe3e9095ea4538d804a848c0c4439975f11104d5605f88e5d947f9dfdcb199a467a98b07c09b4a9d4c3d4e44f4e029e0a57aeb26cd8ef1bfb807bfdb2b00f9131f4f430eecc809461b0875296e00856d8161d30e681e83c65a240844c972c29801410b116a8a0b04781dacccb97508d2fbbf439b5697c65cff8f1b92c08302d03d9434080f4fc161a3ddcd00f75d60ea2c93608af577ec6cb1fb2dc43e055d8583c010385fad90873343d5104a17955da453d466611f635794a68694375714dd36649ec060772c1603410fb0c8de47d9950a321a992fd32f86d30d0e10a26e5933fd03e7180664dea27a0927b4351b811ac2389d0cb857dc599633b246cada744090a031a7c659ba8bf37f423dbeb58acbc624420c2f796301c4131161c3482460f435b74269f1d56ebe9d798ad0d40b56f6f3d8fd16cd28e48c8d2525c0ab7b8731bd8b1fb6f9e692fd1e9be6640c01d941c9ee89de0fc3f8e9b9056dadb94c2dd7f24a7cfc35955b8381fe9cdcf323ea9d8039d4d7e2bdfc0a7b8c84417f8e7f37d9febb69f5e861ef1d12779f2574760bcf95a80280e6d95d5cc2044d2a1f801f04e87053f7aa097e4ec3533b2383c797e818b3449316ab54d86ef749e529898d7869547d7932546fb781b47a30b10581ffb62343146e631d8f6810b10e2be728b3b1f88dd3b12ba3463e6476a8ad6bc1e3bf3a26d8c447f3412b2d37a9c29554b17088a41679cead34fbf76300972d7d713eeffcff5ed0288d308d45d616e04d7477333274f8e2424cd99d159a251ce92632970a70ac014b4b1c655d5652d93c33c25886a8dc47c03f674b1a591a431e92cba547ccc305503ea912bca8c05f987e32cfab63959ad0ad77e91d31d3df16abb6a6b9b9cde6104f7379872566f448454c9aa62bea2dc6819477f1fcd8b06194b9753fccf0bc7f4da0f51d011565135da1e2cc40b29dae9c40358fc068cf215089490a6ef204cdfc635a40ecb8edc51da44008c5412b62e5857f1548c4e47c836d9573cb53975fcb7e17e5e08891d830fc57e155c8b0c860091c240bfe98ff0dbc91ad5661bfaf1f3c3962ce940f3f2c1a689fad72f5feab101abe008c81486363e4da83f1390367bbbb63b9ae3047b73db6ebd54566558aaece0f9e77da1a3d94177c1916570de2ecf3efcd7576c2c4dce510b38acf54b733303092cfb9e4b2d149ecdab863c84fb4d446e985eae7eaa455f875527fa941288fa8af3e30069aae6fa5e50bb2e6c9364a784eeed5eae500132426fc4fe78e189d70061a6b31d510881454b292db7fed7a10b593209634330aaaa3dd5ba4a6ac8781c09aefeb2ac0db44ffacb12e649dd9b9722f81e13c9bf69d7e9631352700f6c86f865092ccaec5115594aa44cce1c58d66ea7a4fcccaed8fe0c5654442974e131735287f1524e95a93d021365a07ea3eadc1a47146bc03b24a84c01bd06072720290441c86a80ac829114e2e74a017f0983867363d9280783a05c8299ff657047d01e6c553956587bd087715a10ff9c24baa07aae76acf8684ce913892ccfdf45e19a28a381a8d81dd4c42a23407036adbc37af3246a7954a316203a2174eff2253b8f8c2ce054f0ea122ec488d50d897357b2853815705906fb1fb48b7115609c985fce7be008571845bb09c3ccaf23f48951e3e311b9517e78bb2124ca09c2fea8856d2f7074a67b04aca7c41406a42696708401b9f130d0c3fd45a3b6c844f752780f7f1173582a3472ecd3f01495e2ad74892a119cbce4013f49a6b052a2eb31ba039810c214d7591403808d2c64bd596f791fe67399051e27a8fb98ca094ad5049a15065b943267ac82001c444a4472e77de015784a7a4186cac0dc0be9144195912418662aeda144ba30b229a78038486c01f10959879d8184fe1d4bc8e6724d449eca7383dc582f6d61ab6e7f12a86959e8f755219caffb2685cc7b48102c3ca963959a22a03e9b92207ac4625805500822c1ba37209596e9c95b0033d5b3e54addb0c13ce81ac7dbdf3e2d342828862732bcbfb7fbaec0b86d887a1008d8bca993006e7ef9e402701dd93eb229f7a7cd7dfc3f7e9731c86e8581dc6eefe1679b11175e7610779df21d70a768e7e1f9c97005d7e0ded584c0181066a29f41b581a4e3f3c268fb2717c880af6b0065c224ffbf669298135f85df4766c2185b338d653de91fb98d9a13e29119557440b4945de23478b89b92c842323dd9bbee79c85c9887f450244a0a26543d1d064606bc1fa0f4f7648679a146ef0d47c67d328776fe00335a265ef2f244564cf9b78acc104268145d9f5b8631cf02562314c8e8d1786045402c1b5f193fd2033d9cbb5dc9395816b4834e217f5e9defc3bcdcc01c3a0b148348539c22b1dada035a4e9dd4795223d7fb8c243c55130abba287cc0536d937dc8071d45151f5c950314aab1eca5df5ab00023e25073be9d26c4b4953123c3222bc424d4e7a1b873dac3ebb48576edfb853c9516917335918ec78a4115892b8f39c1fa1a63dcc645425175301ae04d1a8d14324e0b09d2dd832bbb55dc32aaaa0d0d42f2bf81eb2b994c9fb70a140ae06b114fdb3e64aa3590028faa427e64a24fba88ecfb3d211387b3c59491d0ace391120dc5f400be22352a05fc79f2a581f74d4c346f8c8997707b6ac830acabb9a33446daafe2c03fc90152479dfb5b1352daa09701a17c8703477e6cc16cbcec8493c3a78e74ccc84e45fa30114bfe5d2d2443e9b0a299f4a6163894497f5e43f9b7566414550570e52e4efb524b8e027bb84905022c945a65753b0e6b5b897d3572cb4296bb41ce2f355eae8da84213eb2934160d6b1ff1d5d630e9fbd0cb9f6acaa45bc784dd07171c2145b908b8dcb1b15ff089756b63237d48a8a5d483199d40a99a2edc09230e21c7e6aec39d8b33e0b3bccd5beba6eab6b8cdee530f4111c0b28cdeceac80e45f65274ba635bebd2e860c99ec9747f280d680c247d03e94f428718142aa641e66e7d51fc0080ae4de5514b84ddbc40dad028e51cde889cbc0c5711280a625d0dc867536d3700ce035017b2e89e08301819bac3a2de637ab619bc0a1d307c4a97de7a84751bf7ec80c60168e6dac0b2493e674d12860a1db4fb25b69d00e5f4e83cc502770ad946b97828af4c01ff95e08dd788d7a7d7ec01a155ad382243ce49bb669e94761ebb8eaef91736d76373e93708c8af2caf2d85af3cd85787cd7572aaabba4bc7b447c4f85cc4637fd633e747eee41e06128b316ed1a3048cf96cf9abccba86c6f5d6b3a6689f8aa054dede32b69214ea6a107027f2caeee40d494a4e23a77e8d16f2f40935d5e799200c14b7a9729705c67e1844c5640e8e59207be2b9999fcdb27f3b2e9d9de1d5ce4e2822cd22721047ccd88d527bbd2120d5878190739a6be2b597b5e2a26270ebe74296611f67eb1e2a828455c9a3c9caa2edf63bb8090f7850cbd426a4a164b74a35829ec3669bb43c3c62c930337c66ee2c7c1894b7efb11ed70428cea4d14b03181bbda01da62674ce90a649b258e38e69f02d46a0008a70fa54234ddbb6ccd8d588e87441bf619689b120966f1ca0d34f303235cdc0f8a5c885fbce24bdf04d9468f259b45c5b06474f9369766bdffccad2f9a3ea5d4d9e62ad10fa4c85cddbcc204cc152b45d6e0dbe65599e288cb05ad5ca17c7f4b1061e3ef8b21ed762eb1ce8d635b12ed7c37b85d9f27f50a84ca643973322928d9f0a6f9f7dc556587830d6dcbc58ac6a2a21b1fdd290f3a4c16efc789075fde707726f6b3cec42291c7c8848539201fc5c2ce1d3a0e220507666f03bd51cf0fbf6391f8cae220278e8372a73007a3bf64087aedd394a47687114105550d76409a10160fe049e7d3bf0e38878a12d2fb3d204b48d440985d51a28784b45e20a4755da280453d5842b1cac1e1053f0f56d1591862341462d35133b75234684b442b2d399f81a44d8d11f7640cc412824b66ec460c42fca0018f7a63d7e9184f6377a8cc2618b9e5f02df25dc14b651a43b1b7243cc3898a941ac3b7967c32431f6d16d488bb9b5d758ccc74c6d790cad5a48186e30be37859759679de080509b5ed48991751b2e1e0783c2c4e6d1cc2681109d668ad84c99c522204c4c0cb79ea6e4a4f2b90667152953ee1f590c2e77688b2ca70c249b35ffff895aeff3c56ec73f821e8f91d8efa9ca0ceeda5e70517c5a094005a77b1b8d77d74852fe8a4d448a47810610741d9b380fa176b839f8eee3894bf8e625713158f5b9097ab5ec28c530cc0f18538dd72385a9d354b40bca3ecb8fc48f49c3656849fce65af8c04254080f5ea5ba9a9d81cb0a2685424d7bce4d6ab4a784276f00edb05528e6f038fd0a870f0ba0f4daa86a59324ea5573564050d820705f50f08c1199ec1035430c0607fb46cb3d801e591ca799e0a5e9166604f9f2a622a56c2768d0d441fa2ecfd1740aaf2f092b79928c7a8856a16f87fa6fd39a25b4b5023556febe42e571091fe4986a27a40e32d4ce639f3e24bd21f2cfd900328a62fa033d4d9d98da3411ac890bc5d7a2eff47043cf91c65013df3c09e322712b790a38f5ad90c1265eeb091c24990c66f2ad0106c06f2812bdd7b0912fc15f92f57b3f3103b313ab21f116d594f023a41c3f0f66ab265c763d0876203cbb61cf09546068d018943a7cc1c2f2fbe35f7fa3d64615ea3aa123749c36c347dfde9e1286382507a19b93bbdcb3b27f029cefca817a0d7109ebd61c300a12c8b845c9311d5f4740e2f1345f8c30b89b2c484c0e04386b81b2732615c4d0d00a1bbcc9fe75946527585136060e75e3cbef8f0cb89521a83920879629c6036e50d5cd1a7759e63dc26f8370dbc14b44ddad575dd3c1e9eaa2d1b5a4a789866330f3c529a7c1785aa2a54a5af8106d92027825c99b67da31b6084ab1968901863ad404ab347b7c1c40e6ab0810160beb01f0a0e5f0dafdd9431d1057e391a06fb21d5ad48dc3c1b95fb7ad70926a95e07efb741afd53445d7805a15e56c00c2df6940fa5cf234c02c787878a2decabd31d4bc4aab14db082940b9b362531a7f8502a2f96708737f053d9867cf608a04e5a55649781cd2cebeb0970c24994d147f101c1154a6e54a0f13758ad81a03dbdaf9ca9cb31e44cdb417d452342f7c9891564910090dd922b38d24f3529eaf6a3244a655be116674b2339f9d54d1069503cc695d9d3d19dfa040464aff7be0b83d03e358da4f26663a22d4c0737a7dd407ee88082b045bef5dd581381fc602598a687b51b836cef59ad2966bc648bf59511e5794915efb624f8b8f508d83af323b81b7b5492095a34e20ec6d4f5b10e55fa21d243d12fd449e51c695d4698ac950a4c530d21313ddd39b443ae8d9dafb0868bac2c49f6ad201cdc1b85e0e426f7829221804c3d3508830bd24b79e9a24316bfbd4ee72bf262aa3d821586b1291a67e1c8929741bc9aa8f57e5fcddeb44a3d829a51c37cbc8d727cbae727dfe0b1d3f954c09ac62fa30517500b7ffb69c789f9b5fcde086ba61addbe6d137dadcccd4c374a2e2dc3fa88c0d18b93b35f45d5bc7f01e3d7a00dfdc52728a67fc28125e9237cb6b1492fd676e220f1833c6db9812a94b46dd4660210fb59457dd269064e55410d1a87b05f37e19562c63a24a0a8593cf75fe6fe25a46a9d27852c57427996a51057d363d2d8dc34aa3db7aa25cf280b3c1943390fe1134341daedcce66e619ed3c1b491287aeb06a352e4b91042b2c70df7c12d9e0c17e3b516acb1c035dddb139ccfcb1d8ab8d09edaeca7125658cd49697c52da2944f30c642073135813c7b0c5cc4399ad5b91cdf249b48de6ee24c5b2286df01f5c8d407843926cbaaf9c2eb1f40a610fb20e19559917b944bee2b27940b8b4496a3bc51f641aefb2bedc7519be601aa01541892910fdc0b586151c54525903ad59b1120b31076785f22dd3a068df371b87e28b372bfd8b4e955d5db75cf6966e7d6541bc8a1525f34945de424df90465c1cd534d562d327112b8855924af13e1b5a86432bca06b7da982a726a8287c0779bc142c1788cef0116079da403f068c812eb85fa8a17e6d233ab572e7840a57100c988960334e498f0f33a931724fa1c3ad92434645db16831594a19681301ef0e57c0831f1b1712e09d36a80b730a8f34d0dc130200b1a0bf0643cc3a51e8cfdf2a645c65bc5aceec19c246f87bffc1853d5088d3309cef6ecbb07cbcba42e35a360684a2b38088ead13c329819f794587dc6093903f5d456b42499bdb2b824887c6243ad170576809159c8ef0abe8679b95e3847808bdd2c84ec9d45a44851b1d2b89997a72bc919a5d2e626e84c95abbd1c742664f60e10d01d2dff5ac87147588a8bf4dfed20d6251fbcc736b291c5f90cd47c514646ea3a05c6b26ad312f017de5da2db6c7035adeecc535b4cee510fab739bcfb861c38c583af694f4b5f14e2b695396451381c097f69787c4407a35ec9e9143538badd59dce7dccd28ffb904a3da6f64284f0c727c0973dc6a8bc86ef1bd35db106ad2056781884912a00cf49f081446598264a44269856837a1e8fa47b3d9fdafdf6c7e95e10ce421d187cfc9a2ba8f8308ee3e7e5ea3f5e3cce5597f209b20a71ea587d288a70047021a72c18e30fe28e83eb2b18af8fe0709da0ce8110d4ccb3de655a744dd67a3dfde6c407a6622774ecf4350585a1afa2c36a5428b5981c256eaa3cb257d63a562366fce70648850c6ae214251f2ca39e972f62f3dcccbacd1827e1516e5ab0ba8e2068e43d5415ad041637125a4989ffe92ee19191d8df7d214e70fb1a044553debe6c965e453ea9c8f3e515d8095a7553ff3315771396cd9077b8e6d3aa0706937d18b1c3b3a49f53ea019705e3f6609e75bf8701ce85798b541f33efa5c71659fb95ee6d5e47323f72c11b85f1b3c29cc3d1e6ec1a64b22b652bf072efbc21781758b3829418f7403a74a16601232554294f08d28f457fa6f7944ea7a02bd4abd0366524b60491958796eaa13726b428e2b5384cba838f1d9b7d5d295c7a948b23ace20f830ea0be80d0db2dcb5a7eed652399617c17a7026766f4124af87b03910b35f108be38af9e1c4e128422f65598705935110e5ea7180fbf90d7937236fec79a6b47b01d71c32fc1a1d7cd37f779a6386d2fe3c2477700d5c0b25b46d33563e10352190b3c397cdd66b4022782009da56b4ce2436d1591cab52e917566b60b77f03a5481dd0834710e556a1e9aca03ca4ae146956cd9d3a00c4d232e05689da16866ccb07a67761a004c2e34446848e4a83d9c5457141a926b4e0f19fedda76f4aeadb9cae1dba5e2d1cf89b6a78afab6d0e0cb758e906e65f8b563af220d90084efa380d13a11a769c941acd3646708e408656721336b7a25cffeb5f6d8f69300ec9f8d8a495042801e3aab28908090af92be9b30a6604996012f2bb1509d4cc2ac8ecc79f4050075610c8335c81501c9c127d6aeb18e3bf788148145e71b94d1bdef24848c29a75d086e458423f975e62fa9003f056caedc3b89cb81e4d0ef85d03829482d297f0772c6daaaad24c5026fec2d1b44aec8d463ec64d69a2fc972785a001056d373d105b5c75b28372813ba4553d0afd0419be2efb22cd159f13184feebcd962d86804246af0623a0e077573416d6c7eb1d8405b42314033d53da26009894207078104e1d0ebbdaff56f0b0a4d21c78d5cbf461d81558ba0a0e24c384e435ece0c8ec32172fcf11fcc82265b87291415406730f0784398d62814fc4d4103886cb0da6c1c540a0996b9fe98ef691c33e5ae821f831cdb1a7e3cdfb9e266af223ca274fdf91a2ae07c3dc97b687d4c044e2bd9fe0d92c0f4292cec563ee15eb3652ac8abaf93539069c15a0af3972aa62c07d1506394820bd23a90c03cfbd2cd92e58c6573c58be00bae61f87d286e9e8256e1f848340eae4b00dc65dc4222804e4eb2e0320b8a6ec1733c6169bcae817ac1422776caf4362cdccdbbe89009678e4ae8654a38e00bad5313c57ff45343c78abedbf89d34ae552c571087b7dfabe0194663d492e8ce07079afb95d055b8b5212bdb5b0594f4f6803336ad002f2716f7ae4e8d1cc5506d03b0aede789261d46afeb13d29a17b6d3c357c3965cc20aa041deeaee3ff448196bc7d8fb13737f455c1d55611aadc36b331f7a6eaeacfbf9cfc79ad4271bd8b776c77d64da6c413254431ffbbd13bfaaf4c90044d522cf464e112a8802a6224787cdded20a0cc4be8988110caca2e035a6eef292e03588667748ed51109e414e0500cd03fea5ed86bd3d7f04405eacf06d5aabc668bbf621ea3805b9e3a348b4704ff607d1561d8ae79eb3d64cd1104f3278b45602d298bb4b20d3f9aa2be6279132dcbb9d9dc041f1adb02bd1eb989e2d1d1af0a2a97725fc2987e4324b7e29a2e1ecdc00ddef09684ab16641b7e86f4acb22898e9c727ad8c380e95a0cff16a569f44101a1bfc11da743989bc9562eb8014428d25d288408a3191dccb96884b2df8aeb25a24b18f6650d7a4479c851caa068d112b17fc95169888b799434eef0d6220106298dde0ea1faf1c783b528351c0fd4558527e462462de6d615047f190876e75eca6fdb8c831ee0223aa47209a4de17ad5c62d0f703143a415175246de0e5314a2603ca61609e820144c986045ff4958e0226d934167441caf2c2829f2888fd6c249698c183140e665098abd992b3d408ae6d8f682d75b2ab5dd29356c6f8704950c40c3d28755f8b88172c5033602fd20cb7213f6b59f66c2dca0679ace056c97c43d1d0bfde34b3834ae9c2ce08e7e002a04b50415a31c48922550f8ae51d3ce07cabae6299570e0c25c75a0035645eac466482aae4d2e9870f6134ea4bfc9a1dbe69ed53c41f18ce99708ac86a93a65645afb266ce8943542a1614b400ba4bd1204dc8d0daaeee17217525e99a4e1dd77b7828024b7d68c175f395a38428238cc69b397074ec4496e77eded707761474fc7053528e88220be59be98e06a5d3461cab3eb8993d0c2ad7af8b32f8477e013f60751921aec08791ea002be6988e1c70b3b859ba8b217c80fefd8b405b9ed34163296fed2e4d8290820b5ca897e0ab924cb9e96d3021b718027a07147bef735a8c730fce123ba7c0313c419142052bd876d000e0d5a023ffe000d063ffd0720e2bd89dfa5a8bdfbf487056b8f740d27ab0d249c3f07639e0b6b9f16419097c310c67f814e91e1b3aa9313796706018f4b2b8c9817d570c179c020d1b39e8f31e30e4e85d6ad30c3f35347e2b4cb571b80419c00d5c235d7006d213c3e7a5ba3b756029d12c826488542973b80486eeb332580031d48bd4a1c58d1a5509abdf05d688960726d308e3d60841cf7462a5e1a3bec5e43126e6d2669ab5ee0f5db4deba6f20442105f4ceb10b8d4c0579e76e1e6b6892b94f0ee061037c22cbda418712f28a0bb18c227434c193d3eb3b6f920e5064a286627ff1efe179e95b9349acfc3b1b6ca75b4edf1860f0dbc7fa6e2d36e61efed198e9698dccb04c86264f2c151fb711f042a7adf7183e52fac72b7bbb11a0652432242e01bebd515aa1de22a855e12634af6c35f7ba8ec3a6e76d1e36a0a721081ecddd69de1de57bc53fa132afb3e40b51ef21b602ef19fa761a10b31417dc180adb6162bed736847f28168bbd88c62d848114f60261cb0685ec2cc7429225c6eb344eac657725e3a20096eab3e97699d8d502d98e0ae3e1fb82021f40f7b5f66ba17584eaed752e9385f39a2574eac35be5cefea0f0e5715785ef66b843fd92b92d8933409fa56ad8a0cf4b86469a69656c760be3942c7715e525ec415b62509d233ed8065d95ada59c29fa611f4405145d09c1afc938decb337f1ff69d5e32b3737de803bae45089c4a67d8e774b52f36cedcb5a350b03d6056d8a3bee4c6f080e8bcee2428fc7071410af8f48461aa0b0d703d6f81e5651f2734c6dbaa832be8b93edb759b75c2baa515587e85e4226da512c8c985edde1ad80df80a4e2ae06f64f4dd1f6b74294e8dfe7a9d0418e94c563a069171c878f20a229074fff937e8c23caea2eca678628bcb6305c93dc7d13a53509ab9e311e8680d30c7044e9e1b8ce3130d0ee2f8fd17903972cada6b2bc4ce38c71c5b523ad33b2be7081ee5d7e135255ad0df0999c344ed48ff936db3c0dfb456934c1d5a6e29d75b42aa41a31014d27a96478b86c7b61ce57ce96c8c7b7f56c7a51b4d8c12de3757e3d0a0a0a06d035dc7ae85d70568609d41a106bf7c3c39f7625fec5649bb6cf2c5cbeb28a3e4003b1f0f7a52d010a67861e6f0109f15ac6000ee2c9c1829c4d154a2940e904cd47d6d9ef785673d66998b3169e4b3368eeaac2165e14ebaa39e09277420c675afeddc48a9cfc4467598c04b018ac1b495a2a663ff77bef69fe5b26ca4124b79fbaff4a0fb343652ad7a074de3f3087b0a16be118d54077970bda2f65fabbd3b858daa7423cb8cf10931ba772d91f0fef2446f06ef96e956ee10d8bb56719a2bb17fc43881187bc121c5704455e9d69f9ed450096f224b49fa47572db647bf9334e67e02a672e0e95d75b83cfe41e33a0ded5840f7281a979c09fd7b014c120967df5dce2fd9f89ead00cd560edeb9ed7560799316ef8dd834bf1e9b1ca9e07a63d0ff102776da5b4710e64bb58e86c1d770acb5e01f366fc7acf8dbb833c9f5886af5afa05e8b86b7830132bb9a60a8391d4a153952a6a29bc919d4437d68ddfc87fac61b0a0617643bf34a81f1f69f70c7a069d848d7d14dbe8db56c90bac42455a59b760d2be4c51e78e03accdfe6564e7a52baf57e380d42a9fa2ff3690707217c902dcb1b7290e249fe9356e6bf8c7f1b4dfe129cfe06fe2101025086270e0848cab2ac6c157b17422f67b10c35f4085cafe22c321192b13459d9c9a77d6452f3c3e02dfa79f7bfc55576534bc140acf0a9f7ac5f9e1526991340c4c2718951a7e8fd164cc942ad13f8baeb5f3e22ac3543c82a7795154e5f82f947c6b0de6222f91c753e98c58bb70bdf2efb4b9b417a9806a805052cc19887a37fa16b35022fae35612c5ac1491248e822450c600ccab19d66ece94007061f54a9ca2a7583e5ace22f72b7210965267c65ebbe4bc793fd1d8b2601b51aa55bf4330248aed83ec14b4d1ef372be7ffb3a5ec64a092b84d75f20e13c47ffbb4c6e803fab2a8c6be362f641f12d67f2a0259f97269f914de1b9ef3fd6c16e69b61ec74e53e5073fe979530c20e1caf34f103dd9440ec6712141f63d9145a77e4ab5094b9cc0aa7e5828f3b27886197cdc3b9d0d06b2a61cfcc0783d7667568165b3a0e4f0dcfbfabae2f55d6570e18859d5adecc49cdf6ba180bf42a718b0bf454adad5d636e74e4f3a9627a313b2ac638bc1cfc3371241a57d2808df41b8a8ae89ca3706f7e7092f7c7b759433baab573c52657577d38c2bd31e1b0dfa0389febff1a3529b00be3c5385512367345f6b270b267b8fda77d1d381dfe2bbb082f08f09df6bd4be0f8c7127b057b7e75fce9333016d204f3af907062948686d05a70263a55dfbf3ad709334e2b37bf253e3cb4dc0e05c49065615138ac9b9da2d652055fe0e5b88670b440cdb6003dd5109343828cb3f82fc47b2a8b72b635477e4663ade3afe287f6faeaf91bd6947db5c76d494997170cc44a51e211f57426b19813032846ebd672dcbf501a3a3421f0773df0caf7a142e215dc91e600cec48903a9742e6ca038b5aeba21b0715eff7900c0be6a6399412d252d83643b955b0b2821a209c16f7e5aa735b60de1dfd3e0c86d726d16759fbac4ee26b015b69d7ce9f9687b52b1f4aea6d5bef6ad3f3c8e4925ccea84105fe48be87e21e890244495d1c24fe3f8124f27ee093811dd0189890f383252f59221a2ce64b12c204cf63380e05499123d66e01b55320f7ee5e77a1efc5e87a662f6fa9bf476677897d4233f745856b94b6f3d0435f2cb013ebca3feaf33095ccc101479cfd6a6743ce1c7cc0a09e76eac97885d3cb8d14150d3c7f5d248ee17f5020e8f249bb795dfdb1da17c5fdbf9d7bd2a4b1c55f0691fae3f113552e106440d3f1f249bfbd452f9022e396438812f52726d885a7a1b35b5130d3a97554863c01af05c123ea806a11100be798ae28e0a0580d09be36dec2c827f7f74a3fc733c7ea5449750d64be3811eb11662a768a6ddacd2ce29be9c2b493bcf5bbc4c6df254c799546770970893f945e4a779988a751d1128019a7255265676177a0eebcd3e6a133a14ba7d32b566d7bac58d58963d575492b1c9787741f3ce5de6ac1a898791516f44ff1a486edd1340dba825b43b71772afb34258330a38645db3f9f66a939043811bb9e895ffbb781a540ee7ae28125b0226bfe9cfd2e42a7646d727987a329b4ddd53a426218a87a287b4955989d51983c3ece278c98d292b7e584a08205c8116befad7adf8f58b459c666f10b0223ee2c743db325a0c7fa422cc9ae732d932a8978cf479a460f38fd7976978c5cf09f20d815a2c2f53b1ac0233e691b338a4419a61f3959deef6c050709753f543c5838d43157c8efc44747b0055e2d1571a3e67145d8f48aa33c0cb4fdf0bc936a3daf096edd3f818bc13b7d1466df4f2f74f4b2453fb15a8d3ad5a6747c51d5869edce34f57ef9f2de5a2866b6a23d20db2c6364f2f3d66aeef381fa8edf4a84cb36d25a6c0edd6260074c791c69f2268ac82b23614ef157734f7fb58e93b48acf3246f67257cb1abe4c9392d3977a3eef903ee24c14f395aa67469c88c4d43863bd67b9b713b1a46476002059b8dbf2775cc8a533fefc4e56f3992bba84e2dbaaef3ac569739fe1b7c3d578a195297d0526d4c494c8924c69150f4f452829a4cb29be2c8934e84ea1877c9b30fa4a20990cf03c712dd81595a2ea8a831bac924d75deacad4770a57c06a10dffba4312d00f210b00f33d9686a25581f9fa413bda4f6d424f6e5b92cf3af6d23e6cc1a0f2e3d3dc3412d83cdbc227e3b72746956deba61f0e6e07580c10c87b193e484bbb5a3fc40032f1db8c894943673150ce6a9a534006a283e7e26f2f19e17a49011c2bc8719f97d4323e69edf86e76eb924078ff9f4b3b139b310b0301128d443294e61a19fabbb620f4a28e9fae1c8108697a299780a195e89436c8268c6160135eb443f949e57f47126f1356af4543a6c4af1c7d003e09215082a69fe7efd2fd7ebacd73ae29d6ef491765707402c6c596ecda3bb0f507043fbc58f779a4e130740ce21ebed33fb999f74fe43f796ff91fb5cec3b204c0c476419824ee93881504ef7f0241f24ff3d62231cfa16df2064a869a047e5f276a65ac2fb6062a5d2bbc85de6c660522b03395ed248cbbd21d8c8b91927519379ed2c2980ada70da1103e39ade95eebb0bd7b705fc797ac3ff84f7e12d97c4057790e30c4cc816cb644364da881a3aebf7f38721ab97c78617fb03c2bc837a92b82206a86898ec688a19bcc6a6d5002a7dec897b093b040f6c7e1e38314e195670cc68049a5247a5532020554d070f9917d3b0900d3a38dcf434f82a56650c6ec2cb7a05bfc2ab588d8ee6719d50a0ecc3d0595c806442150d4500455b04e563eabf2cc138c27beb47704bce05963aac9b9088edde64cbbdb74c29a50c0a270a2a0ae01d261fe1b1c8dfbabdd7a9ee4f70a4f6bf88695511d3b73753faef54f78524d37f8faa62929ef44c4d1fa97b333c4b3748cf1fbfe8e120919ebd195273945fcc5ce86df47b5e12353e8f7864e2d12ed21654f46644df89284fbed1bd67dd671da33c8655ddf7a25fb80f743b8051f46a1e30c41881762a3fbf62f42f64983fb7dcf9eb96cbccc51c76fd143312973dc6c8404e70fcc7f4971bf1e5d929226c6cb90f5f798e03cd56f19030c68060f115c622b56db267d4fc9cda401e3357e42b56f7b90fc7e1be8366033d6f1007794cfb788ec60a62c226a49dbaaeebba6edb847071b5415304f5cb9745973ef9c3c95f3b4bcb80ccb0811aa8a990a2d6e6265ec02902852549eac2a12e14ae70439dae9e6fb55ea0884424d42de12fd363b6974438ef81601836452b49eb48eded96f018cec9015ac263a4c633639fbd336b0229210973cb6348def257f566ebc5b056968db468323271d133f53c59dd3591d77d1c44aa42a1f99c3547b7204c49bd14ccedd94342fbedb36195f6fdec8f7d5a7647ba1e1ccfe019fcde1126ff2e8c1044828aa124a273ff6da32b3796524a96ee22df6770e5e4b8557ba2db04cc8d42097cea1225956140dcf388ccf045136816ee57254344baefd721e3318ca2622a69968c79e59511703af68567651b2b63d7c6aedebe905fb599d5db36a3369a232d6ed47ba6eeb27647cf6320fd22451fb3b620cc10f552a0929f7d9ca88769edfb4299dadff139e61d0a0de1043d5cb20e7e7f607ede658850c710fd06b97f146a4ece24147ab053a110c771dcf70d822e9f4b8882265b88820d6ebf45567d832e0dc6005285928867dadbe8d5d129c263e8bef4777fa8bf880eadf7d1090f819692ca7de1fa14b13a600d3dd310ac2c43ce318d51d66e89809675cb3894f9cde3d6016d5fbb36daafedc3766d5fbf86ecf26e7581204fed7fe11a62a42e7dd12f0d36b8656ba3332ac4bf93c30c4116edb761a0c3bc34143304b78f5d6e98212865bb24832d1bfc5f09bb674a9cb01ba73d18ccd05f0da3e167d958b800feb1f007bee89757ab478dbfaf650d8b5f8872314b94fc98878830d7c54f787a907491adb74d6b948e82c8aa7677ac7bd336cb32ef6edfac59aa6f9702c75f3c36b38de331994bdb7601093181b50560cdce60b54d30a4f69f584086d496daaf0989df2c8f8940356c57b3fc2573491bccaf5b5d0f6628398bf90d3b27846e535347868adadf02be70218271785884c45f953f472ae9ec6e9e6e65a08a08875e46cac0c070dedb0723c3d12160b2e7be2162883fc2c834c8bf655cc4d6ece311ab1260fd58b297bfaa4859b2df5e561ba72e14e23a44124a1021c3d3334588db50de26251da25f1ac60833fcda9f8865f58e6121055848413de1c48d0c605df00511a2ac5567cce83759753b854f9246d23c512ec82f9a3061c031802d77430936ba9c9e7855745ec37c54836760264c76958055fb452c204398550525af5a63b80d40413ab55640418fdabf456a730b169382975d9d622270bf8070ab7138ba228e9760bdfaa1b76c50db61a082dadf48d8981459c32ec27de838281f76134ebabb0ba50f5b0c61a3a176bba1a67ccc8445f9764fbedd976e4ddfd7d2b7fb6222f76524eb7ced0b6596f01866ed4b7ff6012d2afec6ce504366311376891e503e87dadc86da67a81d86dacf5ca8bd13bed49502dd19fb92feb033f60b1f50f99740b906144a20ac40e5f066bbd94263e8363541908adaff628819ca0ac2f40c104604bed8bec04149622dbe2d9a0d6a289821aa36cabff207e936354d0b54fb99b273c7a21d62762b9ab1739f329376fca7ddd089eadbe9f9d475bfb1cc6758e59f6aa3bb6d3ed36ddbba6d7b53a76f6f8a23d2fbc7a6e5dd988abe5da3697870dd254b96ca06d7c44d5f57235317a69ad6ddc46caa2758e814eaa0e83aca452214dde9449d610d9ebc3b7d4743f34754fb13d5b4cd6a62d5321655df5f1f23de0d193a4d77ca1dd38e9ee81772e593ff49a66ebf7d5fc8937a220f87e8e7c6b04e6d33eccd6c3a4c5dd775a64de93a93c9480d573e05657a2731ea53f9c2763699ba9ae60f4d349c754d6e6c9c60a2ae09bf2f1fa921afe96918bb35f993e9a3e9a277c4fa9bfca9f45f8c0e5979f4fc752ba523b3f4d5741d7d34dd934c1fac9abc09e964f2ae83fdf7631aae7ca68fc59484c7a04e72ecf311fb27aec1efdf89554e230f8793dec43b624f2b2a9f7baef2225ff9462aa79fda752613ddda755dd799481f176119268fa2a54fa1a7b7e12291890e8f41f192f018940f75f2f1ee7abfbf9fbfe9f7c31a28b886c9e93fffd2b349e9c3385ae78f85f4a737d13e86624d7faae9ca7938f6694c5fc8d23b425417a6149aec177ee074fa923773ea3cd3dc6325959e6b28f3db33145c83ebf6dbef5c9109ac8626edcd8cbe8ba7d3e971747f4a4254f7444b262e7d0c05cb3079120d5dc217d564be09ddbe2389d88355189850c261f267a2b5d1996f9fc157f001919ce09bce5eba80fa51fb5ba22f51f7799335b1b234c1e4ef59f8290b7fa896124c9c19825993a1dbd49c3b3838b5dfc6f130fb9932e156b03361c37e87b90bf60952565da43d88c88fccaf71675fd6262ce98847a39da46a3d9d0a63e566a6dc136b36e219f5742afbb20f7d28a5ccbe10a5c30c473ca39e2cfb11cfa80749186d748f114fcfe89e9e31e2192119f574deb176ad4e852939231fc95252fb258f0c524753743ffa96a2323792cabdec24753495cc118ed3dbe8235d0c37190a49132d0129b54a41b82943db111cdb4fba854cbcaa121bcfa9753ae63d6ff49ec97b5908a8bec7344ca571345ddbb22dd39eb5eca3e93efbd026bd7a1425135a1ad220cf0849835b1df1b056581add06c3510f7521f13b1a86b8286bf4118f9423241367fa182581192919f58c804641b307cb4da3ed74eb0849bf348f19a6a8c18c872743e23d1aec55e13015a60c254bb25c3af52e5e1f24d450be58ccaafdcebf1aa9a0a0dbd4445253de45fac886c425e480e813af921f5f30f72565bae9d061869b4e4452fb5932c71e8f91df1f91642d8f91df96e5643831288c40f127fa8890b8ba24afd014304e496ca3e2e3a98d64f7db7460fd8a62ee87fd0ab2e9642d57129f2994d4feedd9a4d878369d06bf5d10a8ae0f4e64375a6b4ff08f74a59cbb34b69d93d0451c4c397d3c674823692974fa08c71aecf7e9b3f21f749b9a53ca25416abf686331a2406698ca8caacdea7acc1b5bdd5f97c79e4e6dcc820167ad50e4e5ab233ad1c70a3658420d9d27f424cebeea54e8413a288803e9a0a0fddaa7c1f67430d7ec192736c82b66c6c93204741143987ce10b17f961cb6975bae73e9c329c214c7597c7745f484a6e4ef96dbbda5d20cc6badb0a447edf7219d72eec13fe20b668f4eed8bba257417ce103574d7907e69171066b83afd2e3b15c6d0a6f2771108d80f48bb891e3a43b7a919ae0fb3ae00126439a3e1cc36fffd98d560ebe35683e0766f6fbfd62233cc90593c9b2db38030334fa78a0024083f2a0f7cc83951a877906db03df687590b0309f7304f83fb217752ce8962960f08fa641e336d0b28293f69f7265ae24227822a4dca9fbe237933a55228e4751d57a2b276271a2ac13995fb14cd85a2831bf829b031dc6a024b4388e71e182d8055f885026a0013003c837de90f555ed08de95efed2317205e379f4fcccbdd6d2b8d7827c9a0b063df9190259b957f742fd83204c4c4c6d791ed5960f47358c722567b0319a15fbb2e256dc0a0d35855b69d3512c58b0f8ca22e559bc10f4020b23e5d70bf298b8c2c0bea47c36b5202b5074a829ff72434df950dae89794ef8fab944ff994cfbe109592f2fcf5a0529ea7a55f529ea3b2c1943fa1a20653527e44510da6fc7a0b48896dc21da119fddc5e1705b15fe844500d471f83a034fb28df71c7d1d2334fe650ce93f96529252e854e04d551fc142a2b0701ed998ebe9073eac7a5289fe570f3512697f241d0ad994909cea9282ff28ad88af2eecda03cf7edfb4dd5e80b0d65ddefe5334a83f236fc85aaa050ae20e5c12e280f0622f443c825e4030d4f1f0d6568f73af5c0adc215431452fb5b68186a42ed67a1a10a898a7e856a3fb45583dc6fcdd6c99a0dc7fe8ed1aec692158572d5569e8e6ddb5ed2d81a7f97ac6c75e39c0ac481702b204c7d4543af06d945ccb9e07933aba5112ad2291e35b2927e72a1d7865e1d89f2884ffaee46d7cc3a43afd0ab53d993be3f04ebd4e8491989f45946b776af8c72ada4f9a4b07b4d1a990221a9bad309b75a18dc8ae3569d8a518a8e018122903824b2e22bc2e211eed52958f7e256a157a7160a2a98a2f6878a744aa676acefac987de835c68f9be23ebecc3e8e7cc58339fa1fa7e72fa33c6a506296f2dd9665a48803a619e94ffae4249e707fb27f12ffe424f4229932d2330de58f4e3eec5ed1062b03e579d4c83a69fcd162e1a0f6471bac8ce6c88a2ba0597a141a461cc420a4afc49af1475c4dff30ae22d72642fca7d32648b0fd13acdabeeb0c30fa6d9cca6c0386810a4ad0a4f9cb91b8ca71b5227d7135bfb8e26214a954d1875c153d6f8cc98b44af859e7718c0c45de7e108c9dad1655100abb6a71122021b56e588c0ff46b5b1ca95bd08b0c806fdb3b9516db1155d71c571abee55c3d00be4be38e330435fc5d50f49e3ca5f58d1b50a43afeed5bd8e1459fd88418cd48e41ea2e6186dd2bc6968812bd9cc86e5c9ce89be884dfb4137cc35c0678d02def33476fae3796d90ea21ef13387f58cfe8cba4e8b1769b095b7d12a1fee6f1f7537e2308fad7c6ec4619cb33d1ce631d80c1de6316f056664c56346b61e69dab1061de654748c8b981fe11c47e231ef711f5792d331f631d3afa5e1b58f744c0f95eff184549d605bb264898ac826f7632bbc42b9aaa8709d0d72ce7442cd565bd090abca2f5581c160b0ce615e39d2c63e1a6c87756f1fe7f00ae5f960869ca3229fa9a8c5ca17d66cf2b59aac8666b784fc084152bb2d6246d922e4fb516e4af4dbefe7ea16f3b6adb8145288f5a4628a422f0a6bb66e752baba675ab532a2ff266543e9efbd56c55f4d2c321fa1da3254b9654510761d187de468b3e141abd8d36791b0de39c57ed671f0e73232e45b71646bf0a8bca77a3ab4aac8ff8d4fe06ea2a3a0604da28bcc0f34aa2e3d33c517841490dfbc7e415c5174a50c3a6a2975b43b8430d45d19ba99931f96ea3bb946b7763e2c8ea7ed727f46452f9d02b33b3cab3e94fdf9968bb4eb45b26930abfcaaaec7aa86e61f181c9dfb5b060c1e27977ec872b2abfd252a4597c6d640e336c9a1dcb62e3aa42bb6e741d0a2b63e5db4302f5d967c312faec59f5df7dffca330a35a17c7fc75ca5c5ffa2fcc97727f4f4758bb64b0713e571a050d17ba3ab0ae943ce7128ac8c7e15eab185d1df82ba4ee9db7318d08c0a587f096b62143dcdcab30d4be833627b9a7d03d426b2ef09223b0c50b76f15ab5e25cb3e11645148fcfd8490a089ff2654ebe9c844907d36adfadf72ac3c8bcfbc23569ebf85360cf5ff2dffead4cab743f4853795c5876fc3b7b7d12cefde0cddd1abfc0d26aae899ee0885be6e69e85950f9dbe2c316dfb1e85b6c1f4df7a16fd17d34db6f4984e26d83fdead4f6296e2339b6e76f415b3e37e2f5f02d1cd603ad89755b6c27e587688dfcd0bea42c3e9ad0ef4bf68ee85e7e2c21d04078137af9852c39e4772f3f107815fd4d0d7d21d71da1a7d99e778468b615965fcae25bd096aff1badf995a46cce2471e0e162c9ec517020d7c21f0ca7f536d740b95b56b4f01a85f8fbf90896e446956bec69fc3a162fa9157c45615fef55468547ef4ece550f9d177eb4100f52b5f285b341aad3cf72c7fe2cdb07c3c57be1aafa32779456c1d7db78946a3bfa9a1ca6f2a4c54144da129bf519ad16fb5e1363a857aa3ad2754d61395251aba1426ab7f489a19a3a7230b2d8055f16b8204da3fc12a2d7bee396f86a3b24e117b46b4964696d51cd86a61b0f0049ad96783821bd508b26f8204d93fc1aaecb36195bf0e87ce036386bd4859f9b778c31a68a4072b7ea4f1935b056068f5df50a80761fc43d0ff05f74e61b687d9603816219c90a8c96c19b8314501992128f3851b0379fcf34c9bc116e58c19abc115ab53f1b90fe3675faf1a6cd68f5ec5af599ca4614dacfb5baf1a64ad5859dc9ac5b27db3f2c86a4dacfb752b1c1c1c1e788ffbf80fd0f3d01d18b00116d37939abe5f25590e300f5f8fcf0c0264afba8bd48fb621a669681d363a26a86200fae61af3ab55a18fd33f4a0a04e7115deea81b3fa11a4ba08f1af7ff44bafe4bb8c6ae05aa6b97377777f2ed8dd3dbef6a1f4d72216a2c899793fd0f7a717a67f7fa4720baed3a9d05b3b279822dc8f38ae841fd5e0a31ee53154cb6ffe853fd4ed6d348f19ed395ab7ddfd8dd66ddb3629a5dcb867dbb6cdb76d0b7da13fc3dcdd99b56ddb16d4a150e80b65b83d95caaf4352f4399012ffd91ee9337f620c6302c533755a31d4ab25717c2020237de64f0c08c51392feaca4c1b9ef312977bf1fe6fa0b4be8f39f06fb678ae985c92f3ff49fd4722dcfc35e9152eec0800d65a8a1b772908632d4d0715850852800d5b07dc28e918accd063dde223ccd063b14eeda7f8754a56981b3d06ac2acbb83ae51a85645f4bbf444f9acccf3f9c0dc508dd0e31b96e655d12ec8a3146eee3968b83b41a7435d8dcf26767efeb3efa4f9ac447cad5a3e10d8a23c9ad8beeee9d4713496622aeeb54fc85877a984e914894c3256a0da9c58ae9597c0fdc73cfd4637c9612c7e7a8f61e0d93a85ee43ccee33c2e935f9844e5dfbef8fc5ee65ae65ce69e7beeb99771fc9e995efbcc2bc27bee2b59e184a31ac751cd145f8b9ce9b98fc6146b32d3bbe87ba0ee19d17dfcf672b07cdb608b8f5fc8e28b0dae7c2aa527914a247752e492ca775a54696979959616f005ea3ffb8e518f329124b7bc67eaebb1fa7ee9b9b5c58ff4f927b9b5a15ef4cc6599473772317a0f2d5ab060d1d2c2c2b2b2a2a28242a5a4a0a09c9c9c4e2653a94422cd391a9998789e48d475a110579dab6c924fa292f4e1565d9abec4e2aff22b2aa4d2478241fadcfd0bb5173dbff45e94c4163feb3e8b9fb9c718a3c6d12cd230f3e73c46777fcfb54f792f13bd96c5177de10d9775a247a1204cbbbb7b394ede7b3ed2a9ad4fa97f7ca4c17e9aee5bd8c806d5303394f1a67b0bb9b53e49a0c0a7f65f4009bf7468bfbf95a5bfac60720fe6f75f97ae065bebde8c47af88966b3fc669b00133e45538f99f5b31098ee2064a604ec2677e3eb1b53c608184d3dd7e21b83438ec77fee8523746f359fbfb63834c636a8bfeadd1fefae317bbdb9fd73bc624cd53c14f482cd260fc64fca51f02f16362098f7116c6fc42fe616bf00f96d1efa2f287a8cadef3c7e777591a1958e7cb1861ce0f652a116fa3f907d76016cbe847a1a78f218f320c8532cbc48433200bc0c1d97d2d16c1bf335a8ccf2a474083ab53c42bacf168dc9745804d0d7db72637ed594a4f7a9682a5f4dde85ad2264fd1cf4a7690a0e3259246b736acf68be94f34d4def4ede598256a1a7933bb914c2413c944229948a48f5ae94da56f87674fc31b1d0d22a0c12296f763d7f3ab7b9e94eb880af1de4633904e71ef1f2a7eeb2f19f73244741fba70e9b234f845ffc3d66818cbe817bda8615ca36345c460ff6d9ffc4851609828368162ebc474b8081fa9c28655ce35b80b2ba3fff58528d47ed4eba580f8ee3191eb02fcb3e18f912c991188ef0e68f9f7f7c380277e1af785bf534d68c3a3b176f281cb635ab52ee2d6afe837d64e89e63af72b915522cafbb27d47b72779a06acf955b157fe10d8c4de321dd84d7e4185bb617a1811a08054d850bbf7a066c07443ec0953fe49791067b36900cc20cf9d540af560df9557bfc253643294519c0909a3daae0384967cfe817edcc184309c4ffc46a1f4cc8eceb9c55cfe88f5fe7744eaf803a26aa4e35445567209a19b4384c26fca53f8815c484c7b00ddc8398f0985555ce0962669e2930a106524661e401919830b9771cdeeec1435d1d29303c303c309c89642a752794eb76cfc2d876db18043aa2c393644382a77b5c93f138a28d259980cbba549f4c74d26d1be4ae4ef1d0643cb75cde8289f1a117d99a5b1cbbb897c13d0cf731380e4757ed6b9f939347a2410834d8edd33dddd3499647c7d238c9b22c3b59185fe884e32c0d961ff6503777d76fde0dd77e4f4c770235e45e09977ad2430dddb53c27bc46b66d63ccf96bb7507b6be86019bdb9cb6374708d7d7f9d9c8a780b1d37e28d97933488d21edb9497de8cbca13265fc7a3332fce473d7c6e01e9f9e243e30bf51197fc24131fe24c6cbf8edbb2ec693626c313cc8637a15b49a1af5da434ebeee24edd33d0ba387746a07c71e4abe10c9ec3dca0bc4102068bf38175f17c9c30cdbe582e5b7ceecc32fe5aa511914090a8109b0b0b020d13d8e8387eeb161d9ff4d0443e5cba0d9cf3bccb05ddd33c56aa5575c4fa716dfb9c807bad57bf8e9fb7da0252bccd3fbf02f2f1fcfd3cbc987f5388a1c6769f8f0dda2458b163d7c7f7261f0875c4f4ed62b7b3850fec4362cfb36372aef9bf09e55937b9a134ffb562d3542f39ea910934f049e8967f23b3d11789f4dabe6ec249dca5e2e0d7fe920bab2f8ed1acde235faa21b09d7e0efff76b878d92f92ce465281b8b1fd09fde1d79bf9817f97e376992a0153690760ea7e344cbf67fa3dca773b95d0f77df766e8bb12ca3f0dbad453c63e643c6aa6bb4cbeb92fa7efef74e29571fa8dc6054f9f51b9e0e97da0a2054fa7d1f6236f665b1a1b3cfdc9e69d4e5f08b23b4b6855981bc9bc1bdfefa7d18d73a9cca7caff62be04e1c3875d0dc7e164f6e1944ba3e3a810ef8286db7320f81d8b5c7cc83d78f2d1b878211e7c8e2a01534f7ebd1c2e3e9a93e71e252a7927bf7d2704e50729101f129e0e180fbe10ff020605b9175488c90b918313c205f7cc3d0bf12c04334b0e7e215e880ec0d450fbef6f2ab783694ede85d3417cebeaeabe0f5fd8525417f442987675eae48170f12e1ea440fc09cdbe8eda8dbc1920803839f15cb80082cabaace4a31fff6c5ef6ec33e9d6d0b13eb84817cd87df3d79cea7410a700f27f181fa6b7473a12170494d85b5ec930d52ca943e0779cc3a059ab443984a7f3d058c7efd857efcd360f3c734fbdb6aa387099aa1bbdce5437639f6ff4c431d55fb18e64f53fe444d3dd0b087dae2e3c135749c9e9e9e30e5bb16754fa7b86da91d339f8b1de3bdf072cffc859c4735976a42519682b24e0f27e914ef56141a2ae1d2496f8633d94cf69927569a69f221ebe8f0dee46b8204a27f8255a28719e998e97d1324f0fe0956799f0dab449b3a6d4a48ce322182dd205601c3a0dbd8ead425c00c183fb8f809ccfab6ed899f7cdcf769347c976af24c26a69169bec9a4fd88be0935fd46bbde6d3717151152ac25d22724f430303030757ecfcfbd4f44fd45dde52ffec27d1080e998a2f623e11ae24692d4969911f9650eeb1e21f1f321ee3a7a92bc13db4de604df74764306fd4e8249ee7efe68826ec6b97fea985367de4c87ea4ee4a166bb61c6f75ef435894d14e9a9c1f6e819f1f3840a7dd1dbabc98cd8b6cc9790eee59075934cd4f8fee2d2398b66e8fc494c98fcdde42ba4d47ed6bcdddf290a858a84602166c3dc28be40458d1d176ad0601ecc83eb8c18560ca7d39c0b7096bf844e040e1cbe7a203cb8af46d6adf1349eb91f1c270252f96bd0b8203f0d2a1764223e8ec5b5b9cb44bb33aee6ca09d2a2b7cfb13816b7e2563fbc66e39ca8bbe443afa5c171619cfc351b29d4bd96d5a9fdd1292ec8ee8b0e2f37506063422f9fc0d298bfabd392e264b060bf4ce7598a5b2d7fa4ac7b7548e064b0a94ef182a4efb8f218997d2191b8ddee15e23694cd160a89a2be431982e55f1e8506f1d29b91decc4aa9e3becb9693d9ddadf11c652208f05c0f223406f01a0ab73cb3d109112f8fd958acd7b6c1361f7fe947cdc9c37dbef96841bcbcf28ce878254747dc277b7c12a7c167d9a3d4a3c1ceba4ffab0c30c25ce560250918f85d14f29a5ddab2bd2c13a235decf3e1fbbecf071f7c40427baf0733e4563d9861e865c3c2af23a4e52202504ec9c2d858bf2d58db82b52d58b59f08caad2847837203a09c0ce55ab0efdf7cfe1f357b80a15073fee6534f384972a1e282f42ebe7311899ef8581a1beb14ca0ff2875f8f11c087a8fac3d71f86f850bafc6e4cea43547571f9182ae32fa44fd1dd971974f76508bafb62a202a0eb26d43714202610bf1d03c49b782e7be2a29377f1fdc98571f221d7399f93de11f3bbdfbe44654e83a83ef94a6fc3c26f73a3f26fc29f55327b9af9dce85bc5d488d1d3f01ba03efb2702df7c7b96fe22f0cfa655f2dd5380f6127c6eb534f6fb479473a45c18fc92965ee2746a7e3bb26ec4fde8b56e13a1d020de09ce5111d9ef7c832da9fc4d6c8d0db632fa399b24ae2f383a1724bd66c5927e5f48bc3248304859c63df727134f833164fa85f4b14a223d00be70925ec647fa189f1674fa4269e2b4977fe18aa1925048ff227d467aee3bf9c275c31c7da40f517436487a8d927ea3a417629354d293bc257dc741d0adde0dd4934e9ea33b38676569a07cf685dda431bea3d977f3b9f9a6ef58d47d38dff4a112bc8af1a69f54095ed5d1e8e773ef7933fd1247f6e814f7fd32a753a5ef46cf7d1783666fa2a5af2bd2bd60def4315ec6871d0c15324d530615b27d8c6dfe9c9fd1eed7cb3e9af9d9fc2cc66731b26c7ef6852c39b28ff131be0e704e3df99b3ab3df917d3423cdbbd1353160bc1002e6057401c40f303e7cf47b8061d1c2b2a2928272723291be10668e4c44ee5191e7799ef7de7b5fc855761d982cc3c970329c0c27c371cd35d75c73cd611cc8811cc8815cca3951a87f18ee4318e79c73ce39e7421ef290873ce421ae8aa8a4a18c05bd7e5a3d00889104cd0b5524e96ef79d2aaa8872e8a1058b16961515540acac969fb82a9449a23134fd4853899c960d7d9d77d30f963344214b2c556b8d88a236c5618893166991553d8b64dca2aa60889985a61854d075de90b6c451cda0a2595995ab186da1faf3081ffc86070c50a321a6c40f28a233b57c44e57bc7c50510d32bd024977bb57a12486c49079335996699a1da8b8420d524ac985ec70e48a39b8bceece92202851094c827a308aa3098c979720a9bb73c590ea2f5af263490baacb9228462213131393d128e8c7922976a4047987cca7874707862373e60ac562b9608240a0ff41f9cc1ec923512a56edeeeeca44aaa99678e1e4ac58ae48a38a7d6238392b56cbe531296a1e1e9ee6e1e9d63269927d4222cb20e9d685880fe5a4113e5863be7be48caf1a0880efd6d210c1cced41219e7f9686f7fc830442ba90a07c9141c8d7caa81cf8954355cee5e7f9b5344c9e9f89a53152f950460d3daa45b77e37940156120ac949245949a4b7b134e647d3f3cb8d71c94d124a657d45e344ce1a5f385134be1035802f94f962644c94a92f9473c6174ed40be0db58006200884598bff44b982f9432626c108c0d7ab141427ca10ca0205e2f2ff0e5e205c4eb879774f942f9f10fe51f17ffb864d4907f6a26e5ec164bb7321f30f391d1230304b547cda9bdaf4abe2af9aae4ab92af4a1fcad854251a3a0c2abfeb4839270ae5ff2158bb2fd14cd3344dd3342dc2b62dc2b608db226c8bb02dc2b60f6554ef4b748b40deef3202c9082423908c403202d593cc5c2ee59c28d4bf8320f7a10c2ef391210304ffb3d74a34a4b148a427692c92c622692c92c622692c7fae9ea8a94449df1c99bc7eeac2e8684fd4786464ac610b82bc03338b212868bfe33823b73d1c5cd77dbff8a26ee6cdec977938b86a51d3bc594bd2c9616eaa7596b7dce52ee32ffd2303241324e33839a1af966857bf60311d9e05ea71f90b90e4a08983caf915c8f2f117988c4d1d14cff7803e3f302fd0f52d146bae5c47f2cc1e94cfff8040cd130403ca3c8ce778cc3ccbda3bef31fb572c56abe572bd5e30e7ddddc5c1c9f11c5fb55caed70b068bc574ea2e4ffd01aabb38383939ab15ab6eb760b1babbbbbcbbbbbbbbb14caa647ca44ccb043d8e4cf55066532dd1adb8409a8a5d1e032483260e2ae757202b73652af681c9d8d441f13cb38fc63e51d52c1c99335728d6b740766da28c86cd7255f378ccbabfe7788cf4177e20981fd0e77b503c3ccd33256a3e0a7c1870fb84689fe754ff4859b52efed1788c01f082e56a6cfe4e661f659422cf1606ff7e2491502defe25c8ceed1b9d09471eb8b0ac3ecde7945c48fc3185a24b0bc2006464043112b6a00c50aea9095606ed46cac4e04aba6a9b42cca0124f1c28f2d7841481674a0729c37b09c088f20faa7c75605151c90ca062ad890873dc06f1a5351e39665191bf250638c318ba5ba3b6d48410de7d360c62d5b1fd8810d5a8859ccb6cc056ab0c2146750e2c3057d831ba8600dab36e8b040e3c2136040838f36c4616b8315394a509082795ac3131b50d7e9685c00031a76da10879d3658a1040515d520a3a153e2030523aeee8e921b34b81cf098ddf86d8cbedb35007450ecedaedce9f16d0f9858d9610c447070852ac061c95aa0dbbaa2a5c15f6335049ae7d5f3a9211099c4ea894c42a0d5a5c183816a084a7569f0609cbac3009571188a2efecaeeae02fa65f6903da3fb25bca95b80b963052950639082e5f7b7c8c9cc4be8b86e84c9224fd564b66daf713b6e7041a66d9aa66932dba488d909954529703166515342286a530bc206318b590683ae6adacece1aaa96c57709d5ddd9f951c387d9bc23749203ddd2154ce1609d22f6aeb8817de1053039cc400d53b040b51c49d460016608d69789b10048ed7f414415452be4f21763818f1a3f5483fe82ee65f620e23b78495ddab9efc685b16959f4fec13df8d19d85ae658354143373bba85347f6338122c6e8ade75f14486aa9ee4e1453545434c2280a1ed3809d27a4608312e401097850c52a6a381b02290842b48a3dd1821630a1053c4148c20f78640c130b55abbb3305253544b905726e5610873ac47640842270210f47a230a9bb73e4453f6a9b1670104f4572b02305978f7912d5dd89021d6a383f8b3ea4ac4249dd1d265051c3ba3b4c50420dfd2669821475778cf4901e63d375747b46e8ed11fdda47b30d6e3637aaeefbd7f7e3e1801ef29f7895f497f84e6ccf086bba72dd3ba0f3d03769c26df0d4606def08ed69368db7c1f8c523b6f6235db793b7dfd0a6466d8fd87e35f694bff771d4a60b307dd4edb51cdbf65d833695f41a0d6f6ceacedf2ec0fc6cb667ecdbcc7782c8e8b7679036d16b948b5455d335f4ffc08d57d3b5fbe28738f766fcb74dd3346ddb36ff8ce30a9a00a46abfda6a7b448bb8aea910ef3d9af32aef978637a14d01bccf8688c9db10e9de7bd14793d1e84726a35167f29d49e7d15535dd2a62cf38d1735b731bb3f670f417f2529bda75ffa117fdc6bde8a3e92db47d84f69b517f7f23e2739fd4ba95d28ee4b9c9edb7a6aba6c5f78f9f875c9ec02676d72cd6348eec3bb7a91db7c1a6357d458763816244be10be8811f18999c104f504eed5dd51821d986a3dbc19778f51ee2c61b5841554144b0eaf5bc39bea1f1ebcf3532abe48147198bc8b4294a372fbc2ac7af7fe8d885b0d218eb3a86da73aff6ea3e1772ddbb6bda853a8d26f618d57ed4bbfde8ccc4aafd954950f6fb41d5e553e21a4b7d1288a6a19d560f63c7d3fd8fdc23f6a31f1fc641cd15086b37adf0c719bdc362d7e30da28cb92d0eedd2dbbc69bd0f1ef403164abbba38432b893eaee288167547747093f3eba538eef3c2abfa55352fb53a7361fd59fc508f9db8fde691892b4444d3494db90ea6ffa2400e93a51cb8c76dabe337dffc777ef087fd3176eff7526a2f666b43f754a7e89fb1265d1defbad73c46244f6a3cf7ef4b168cf6284f7dc7bcfe93801ab72760160d242d37df3931f66bf7da7cd5d0cdd8e197e6d4705be434dfd0b99bfd3e81372ac84373b2043d5baf678f745e6225e30ccfa0b7f8fc8be8fa53fd6f8ed82fbcedf1fcdfe0e1b96c18ca375f1183ffef639bc1bf137187c001b0daec9d2e0ca2db58c493b73abfcec9b6588f840ec947f2c3962ac8e53e56f391847bbb1477070aae4b1638170706a4da986de6b4435b444953c7618a0f6c2d8be46ab1c0fee6bb42392a8f26d7488eee8a1caca0b6393dfee8b7823e41561a3eebe085db430b2cca4f2c7991c9914ddbe8d8e34ee4001a48aa213b667c3d9c0131098c08f121b1ca7654033b47dc8815c49833f3fdce74aa63f8c03716507fafc87e50f10d00f8f8fb9e52c8cde54b0e18452dae031c1e4afe7e7e787470712da0dfb86d3ad4b2872ef85e1ceaabe018fd9dedf57be40d5bf6d63f9cb2bda809ba6699bd6e262af908b8bd57e1e209d0a3598a6539b8adaaf49a1217171ff42fed9cceef29607d9b7d1fcb9cb5b2ed6e420ae56ccd1e8a6bd4dce8daad368468158fcb7bf5105b1f8c7a280ecb54722d33e1b22fef9683c99d6537b3d1d2af731f7716cd5a0a05a557cff50d35955c7a255c51cd760fe12e32f8c300d369d86de8a395104a898a8246d1686490b158d080000007314000028100a060462d16048a80c83e50e14000e8d9c4e76589ac95992831052061920c600000000000082004800568e6e088755c770e14657c13ff4a0073ae804ad08cc879bae7e3fe8463ff460185a1d840d37bafa3ed08b0ee8473bb43a84611b561b761fe8473ff4d1f44c42900df42b7292510d0f16b1400ffdd187323650cc0fcda1f5ccf3e90a9b96f471565f1f01263cc377086ab759b76bf44b503e522982ca3a1fd4f58196a58fe372a051ad0ff632505fede3902dd0b0e28381c59063abcf583fa069284a6024e8119c18560ea837c6ca5646305e2813da80e6fc28aa0304494511ddedb9d8134779b771ee0d5b922dc0029a84e632a2893147a16e598024605b61cea6b6bb0268cac61d609537501dd9cf6a6d37b96e44b331a331586abbdfb7ecf215591aeda2ab173f13ad054dea24e1ef2e1df021bc6534b7210dd219fac9c982ca0573e99e183212fa1f46f753055bba051bd7431a9caa353ac6407c197a74af07e5fa94e62406db379cf3749cd2b05d7f0b3c80c7dd2faf8633e63046fda9066f0da8029b08929971b7c9dcf7c251c229d82e64160b7c4c7057aa4de32400edbb91dec055b26d004e3031c0d6a06f4b50b07580bb373a8158c73e966211cbb18b6dac632df1fb1a305700c9512b80bb609af6e1667bb3138e5d6c633316b11ebbd8c73a9662133722d5e5e4959c464c7d39b9327ef611ad929c2f968217fd50e21ef8a2a2fe3ebd9ef28be9abb1977db53cbee3923e2fe81d46288587f6a82b3beb6052921aec6ad7ec80aa38e6d4ac868d0c87ce638793c2f1fbb02be5bdc552c0ceb02e3bfa82e2811e9ec06fac2f08b57bc255716b19978fff53d298e34185c2fa3273a9b09571bce243427822bb4470d6f9ce481720150164fe6b0a0b1e2a24d7db35e6e1a58d94746b7a7936a1bff65c13f3d9bdc6b3d1af1a7588aa29fd8a9735639bd70fa95f433f4ff6db38eb6c31227e5fa2de71e7c9837d2a63737daf521d4a90f78e5edcb38144ded8ace78f2c3cbd70ba5a66a94b050b569f2016b60790e58f6d0529a527bc796d6518b8bda285dd6997ca5a8f7d663400b56cee8726f8a46e382f9b31ba7ff7ced87ddc9f317591364c32953a4b9a88ad20d4245c28d5bdb8fa8d032cd62821dd85a9bb4421bc9283379d3f87a4cfe1ee7c6d34246b455ce841cb42c0ceff23f97389eee6d048a850fe2c758d1f9a74bb5189484c6ce778063f9710e77b2b1cfa0982f65caca67b7f699f0369670a5a31267284a2c0470bf7e2dd53b27a75430a6f5f08c3b9fff54141df21717ecdf7bcaa507315e4f4b553d7d0ee8872bb1c618e62ea691f3c6515a087c3d062e8b318ccf07adde7ee61ec4d4c7c9d749d21008fa19fb7c423a1d2b984f49abe2f8a6511a8d34a7168f5eee5d120a7c5c9465565cd5957399d5dc2674891603fb28a02c72ee08bd9708d84b6cd4e959ddf76d306679376ed9d3638ddcdae0cb2a46b32ed049e894962d751cd06377edac9d8e08e35b04f6cb0f78a97d33486849d2eff79faebf2e993f9d334b68bb835ff24ae0826cabcca4e6e6d067d04f509bd54d41ca4f6d34cb56c9a261c5b9a555d92a6fab14793bd5adb20b01c7a6d7799370be0ea0504faafdcf3fb77aa4e1cfaa007e297b51c27dd4aab235b4af203d7f626611a496e968be8b6fba5c9c52241bb82092ad27645b10d2db6a34ee4ac4f0c1aa00f5d4321aec991d7e9de28f3655d332bd5bf266c0d11d346415892869f4e6a543391941e67479c0eda0d943c44f51c932720406451a61d8220b9b7776198ea7b2f8d8cd4ad61e5eebbfd0443a60533f5f4b4fcb4402c7a435dcf9be1fe9ae29c31bcfc9107304a41a8d7c9e069c0bacba778bde0d33664fb8ce9124cb533f0d0314c2d77cb862147957a2f5b12a08432aeec60769d0e6d0880d9a597cee60c88928d00f706297f3158cdf61e1038342fd66c76beb8261903f241b11d7e6cb402fc733e8f11f9bec05a9d737d9e3a5760da51bb973bdb86a0dfe93bb45924cf6666b7e3bf401a9411b3aeb8371bb8d3fe7c3a0e1219c2cbaa8151f1203702fde9c5d4ca9e375bf308b87a6d2d30b2c3a09db946952cc68f2edfc5d79fcc1d4762fd82c5343dfc5e97049e9c18df67a39a9ca22ca7c76d713e020eaf0d2d2b57d6a2a21770e2bcb6fccf1f912dd9e594cafe85e7fb29e1b02d8a43c4151c1008aece24d9a58e12994da206827b33ebefee3eb1e8b1bc697d0d166427d0ba606e8b24085ce78dd6116219186d80c6601489d99b58381136a8733d1073402027aaa703266091bbda8a6d7b0fb4009f219beb07c101ee551c6beb4b82abf4d075b9cace24ea600555c106305181b2c6710a007795595b4aa840d582af703052cb280be49554c0462a39a451a30400c63a4932ecf209aad509ceeefb319de86395b88681621fcdf8dcc134b7c9686083b8c682533ad5ea1d9ae02bdef3e7ad38aeb8db70e19c6e98f1a50e6c8bdd95764196c8ea00c617b7ab4688d7c7d6ff6b5b0076e068f1af690a5f50f2372dcad7a5ecc37445532ed58f9a4583117b691665637471f2a041d9c2209db62bde78b46b164d6edbc5a6dac8fb103a6187262cec959e9baf06376501642eedb17fc6068c9eadf85e466cd6e5a0444fccca5b84ad3a5fd43ce384820649074816c187f95c57aac91bbed46e32bbb1b2f6bb472eb1a4d0e289e6871d7ef081f2a42ddb8dd43014b8e79ff676a4f346fdeb173762402684da01cf43dc5752b8c479c1acea6ead8407d08b6bfbf41a5846ea5ff84d3fe940cb4983411392db091a0869cd3ab5b6f6878b01a743c32bd0d5acb7494eadce3e4e5f35168297809ef854a38ae0f254ef156ac9db1c857677c9aaea04308a5e8720eec9f9c6ae26062bbed110656d5b664f543cb1a9fa90331337bb8187bc60447b9252cc2a3aaed167cdca057f21a62a107c88ffbf7183e0824cd889c827bbe58761365ea431a42462333add2f21fd9cd662941f8792a6e8f934e954e7b0bdcbe88d048531806bf99da927008b29e95e9dda5cea4018802300dd0d99e84e773d8e4def750a4aef96dd8dd91d6cc6d9575389d14b2ea7c5a3dc26b0cf5e5b37985fb2af3c058e2388f97bfda4437d410dc379978e60260e5197a721acb0a1d2c038663e015073f3c2a882b4d1b0d5a4c0522fd0d63702a6c9922c58edfbd9fa901e9c81124efa626b477d3d2aa7cbe11327921992bb72d7fe1a3726e3e960db8628e9dd4f80dcab24fae2b132c0f39be80f8d646809b49d72609595ece0765807cd93332f15ebfc0890a2de617c84c0e2565fe035c380ab33c3eac2d42795906a7001d89b14a364945b973de22ed8c70ae03087b000d9372260d1b6f2bcff900061ad872abbb9f4e45d93a24ba1f2c780f9e361842571a70fb04018031f8714a7d2c4ab4eb1de2d41cbc24f0d13f19e5b9d85f8eab2d3d72f0486144f0b2cab6e37d60c91c83a143a168e49fcd1a40efb6d454918aad83b27404d50e82c73eaa96170988480364b8d250d9a2d98215f28c0eb0638fda0f2b94291c5c33d84aa371417906341afd33e8c752a17cf31f3fb4c9c2b176d79a559a3791871a81e7b4cda48eb3420fa6fb06787aaecffb9b49cea94faffc30290641a6e77bb28db6c0169a3df703bbb35f00bdcbb59d40272d529b46498d3d9896fd5e0d90fbf6b5bd24930acc28737a87cc0484d5a2b796b46eda2606067b43cde10b0b0bf6a4d8ddce3b475083620870b71fc1358669d2030037bfd2a277ae08ab725d89614392ee80d99b0dfa2bbbd33929a3bcb5e957e1eb4560085f48df6d18424ed4c2b5e00da4f5edc4a967bd2d2c562ed02d2d22b00dd7dc789faacfb59c4246ddc2d144e3046bcf5cd04b3a2b7ecc06ce8de9c6c692f8fd9aa70ca29a070661ffcec86f4ed297863b01f22496fa5bfe9e25bededcd9af2fb7bfb038bceb63f0169697e6cb98a31364fba4b79deb6bb3f04a3e6a921990bb8e4c3526bb8ec57abb45cbb19a81849ed41d750afc516aad76bd750ea7d9942f692f13fe69a52f55fd5d484c3607374074bb4ca0aded33799821897752d34db34b8848a56089c6c364a5e7f0a3c99172f1b0581796c6b3b19e218e5d12681b6c031c7288e59f2d06cbf0a5da1bf9d166f58c22615a26f1b18a091d3f20c9285a679c84338de3ff2549bc572dcb9f35ee374889288cb8712f6d036ddf6c0b14fe55144d1a8251e71c5858308522cc9cfcd0fcf62fda287b7d4b11be8b0b0b66a9f2a905b4b124dc097859ef1d5af78902f85067d251496f65b7b4135d8838a5ab339047cd2fd6ca8d34977b5c4581eba5eccce82e4da0dfa3918d49a6cb91bbf53c7de85496fdb1974e4d8a61462bc814c2b4e076859f7da546cc0ccfcb26b00ee431ea190f31873b1f0512475a27a41637e046d01ad3471c3d5631ccb48efcf0433e91fdefacf9ca8b0f5ce809961437a7ac6dbed2741c92811d08abc703e43f623b66e4e4109cb3fce36178a2dc733947b0a3b4e82d40a8732ff813565ccbb1ff6662892d5bfb35757048e0fbe6a007c51f79b75d99bfb6a2db86ae89627c6e7da72d7cd62d413ff6328d4745176e2dc9caad35c3b70ec183269db23f88ee3c0cf0801ba7d699a0398708b550df4e633fcbc68b738d84f19fe5545dff0f2d25cef833a074532357d86730b3dbbcc3e2ce30320d4a7ed6c9f02815644b1de5258c63cc74f7ccae81200b18f6661d276f33e5e85821baa46a4bceb9287764453a3ec7470dc4217f7689c7ca940d8535a261fabfddab2bd1b7a852e59d70bfd3c64c2b6368ce1aa061de567d548578b6587e451c230c885d8619113717b69f0ca80650af170a3295ac05ed0ea478ab7e1e6c480e264e9934d991bc3b841316ec937940f37b2394943c13ceb87a86803088e4dbbfefd33bab70feb28b1651e819261cf7dd64f9add4fc95986c580f1df1ddc94080d8126d243f0331df21fcfc510a1c67cc1d96ecee7a8098a9565359d6083f2646d04b72a1c9ea054ae3ec8d9aa95609231b837bb87c032d140666243d3fecb78f803aadef2706532b883b76153a78efacefdb446804e686c7f563765b50eb1adafff18c66151c052eaa037b5a73be411bdac4f5734876f79989c0bfc7c99d7af1418b5e0c3e69f8753d50c7cae0ddbe5a468e146272cec972ede849a4651323480385f8cfc9ab90879591d66916ff9622243c22f0800b4ff5fbd2539add41d25a6e8753021685f0ed9eb751b065726691c6f21d563d0e9e1dacf36b1e74777cf076fd7884b22508cdb979466463869162c1c7e7f0e4fed93930558cc23a25ead84b3142517d54a50a3ea58884038d8452d2e6935bb8948f0703896c478f9678e1aa618638b4ee5ea47e827c665001bf33ce4d7580a239a3777439b383c326d8605dcc5056376649bda1851ba5eaccef7d94820b440233ef3844ef4428803b4486c0920feb32847011d50d7a5c39294592ce10679b6c61da0314b7300ad0a37b57198e1115c984f178e35a9228fe00257bcbd40e3a00ee47e11351d67664c026d4f68ce6af37a8e1eae3d8d2f105502849d9022ac20e878e9ccde48697a7060a9927a61eda7a0dd8d354069d5801734db39130c877dacd6275049b7a1d3c089ea06355f106b1ebb131b1adcae9b9d0484e3745c1ff63f852f1192d1215fd1a85ad65b9f8d2b4c894a55ca33cbf898481b8b3179d8564ec2aaf8ce304a680b4a6c0fddb80a13859e820208217085a4668b5e0c5c5cd9759df37103fcbe3604d848d4048f31b416215711511b3d556bb20087d51d6161951e44c2374bbf244ef1af54716603d142f763115d52e8c616729b08e8841eff22437a8b86ee71a57617d5a13382cfc40dfaed5cfa3da3e4ada2d98430d50d1adddd38de220b35da2b515af6fcdcbb998570b292b6dea91f2bf2c2cc921d66f6506d939470577ba1380c372159226f0851f78e9dba0a1b714499ecb7828c222640334d9a5cc6e2964577991b060388729d61a17bf3c13132e2d935c559519f6ffb24e9a4bb81705ad18b59958fc05c29308f3452c5a2ab12f2115cdb3074beb3684956ccd6425aab024cb998f7889848bc11606486676742142a7033db388b72c24a4e6dc7e14d84482438e36fa17d282aa2dacfe9efa88eb45b059fdbe8f148767932aa9d1b68402aeedd56b97720d05df71a93cb02a66af461a491f93210f4f0fab9b8e5a4aba89c2be2c2f5bf765942ef02f8d9246f40b9cbe1f1cced89c476ac621d6b0a1d3fc5592af1d403b3aa040764681387528d7b200eb90c6b3f9b59ceff632dbd31b0bc22fed6d0bd6369736055c9392ad8b897ac4763f354a206cf22ff98a2480ff55286b762db24076b76e2bb081d07b303624e12d328e908ca4ea6273b9cb065496c1ab2b47e1c4642e04be02b5ab1f5187fa0de9a2164bd72736b2fad06a0e84532c400fc1fca8e8b9379efef43823d06f1b547cc6ae2be00bb747ef784fa85a7ba11a1b5641128d7981a4ef87dc18604d6a9ad90dbaf468293638595c87a6ddcd40e5f74e7e703c15ea905a65fcfdcdd70a982fdbbf87b292f2232050f03da9aa7a8e2b39ea0fa878fd8a37ed3d5c74d0e7b528ea1be39e7b16602636300745004176d82b8a9a1b8f5fa84fc2e5e23ee2afda27739f100f399ba8e467aef4df952c5bc2fff51a4bde1d30f666a112cc64e23e2e6c3408c56ef8f404ba12d5ea4f6d99043bf706f47bf351b1f3e8beaeda55c59ff47278765221425e9ca0d292a5d3406886864247c14792451845e6df883328987adfc354cdd787de4e825d0523ee6c700e61860a4ebcbbb737faac355116da7318c31ded1b17e3bc46b583eee41c37bfbdb12741c64c5cdcf5e442266fdbaeab9127447bd8d4e83f73955faad80e0e2249129259c6c39141e5ba89adef08dfe2ae454eb9526457e6bc04291519d4f33eaf92831305da3e8d6350739c7c59ccad1258ff25f75b2e1f51f3aba693d52105a95f2e005993c05de56e05b3d129e8ad8fbbecf9174750ec85084a20f1fc040dadc6f2d88f45e54050cbf8ad2a19873af941311382d5859efdc0a04d1a14b1a54c7db2c4d9a7a5ed3299c2c0a57b513fd42164c988007a94d51fd9f1af4c74339fc7f9c3587a429608559978400525b030af2ad3a0ef9688bbbb7131bfe7b1a42882e9ef0838f23b59666ad2a26d3579cab99ca51aacd0549837e25d318a8e5248880218f517a6526fb8cbc61a4b3acce85c72047f63e94e9a1e7f95a65436ec0e4d744c7580fb2ee0312ef81233ac0aaa08acef3f989daf771e9d66b41065ab28350cac1689bdc12668b1e816804d5cca033c29f8c1132aace9e48b153d93918f4f1a2e5777c1611dfd63638fa5b2070dc8f0296c7831ed8fc6c53da265d21091e65f9bf688adec48e44ccdb6e0d028b29faa032674b841c64601519e2a7a8788d5acb724e53af6e3e1ccc95172fdb174ce45fabb6d580061e15015241d579c19650dccf10768b7a8b48cadffe7546d3248d29c3aebe5de45ac2966025c6cd65cefe9692456ab73b604165ce21d895cdec9e77e78afe6b314aa6a384e6b4e6354b1ca97d7e940f31c5a797694747eef40d8f5191cb718de5762d5d8c3032d414a17e749b06fa73708319fe3b300e728e632f824a1a4053345d2d2011e1d1e6d059babad5dcf80f2bf0072cfb67fe039707c0404ef95509091b6cfedfe81a5a9ab29e22a9c8458b26a5ae088408c0e03bfdc5f255fdab8149e5b960ed14d07733e9f722c5d5323cdec391a08830ba56ef679241b4d70f207952f79e075b4c3cbc38da59ce7b530e83a3e7011279ae3a3a3f02d302911361a3f820bfd6bf33865a5487f36e6c4742884e7903211963f54d22b6e3faf321f742b1eca988ff9dbade870b26e45940516a145fd53bb5a4d017daa0de7e1217e282b686896c57e175aefc0514320ee1ebdea0fe3bce192dbbed86a4f6011b216549fb9757818830f91b902c24bb2ea4615003db4033070e328112d2dd6101e9624900d25f0012f94f5cfb8fd1d841fb17664cefa383712702467b5487a23b4be64e0c92c95f0659e4aff30e3cc5c94ce3c829e4696671460784e54db42414328bae5105d4798a0fd803da1b1feb2d22c475299732b4a96d540af55c12393fab93d14943997970064b99114b6aa3b818a5e1f2eb3f7d092c3bc660b60177c7dfd0b93bc3c08569c235f591bbde00b7a62120a6b88cba4f9a2fb5169976c0ebd2818aa145051473430bca06329bf4deea80d9984a297695940b413f85f6799f2fb9508d315f92805eded9bd50b9bcd37a86532fb06df8cc6563cc98d95e047bfd4fbefcd1ee42caefe87d66cdf015459b99485fb64e1d783c82867229b41ed9101430bca8de7083a2dbb5765f2b1d647d2be4cb5b8062435543c37ba3c334d5354e2cde528925a1468da455f10f30b5e5b9ce7196c3f69c3142b620966446780e55aa183d58f7c29dec675030bef701d1a080e83789ce56034707e89746d4136330cf6fc87ef618d8c2babc7e9bd61a57c68c5c8bed205b98f4304250fd780cf88d2f2f49764648036db75af4aaf1fdf185ce5c40c018eae21e1f2a22380fa3539a136cce52c7f8013df902b7530f3d7206288e749560838f2fe8710a29ba05664fcdce43231ce33b8c458bee7b1c0fcec4056f60ebdd300be01212864a15b9f9d11812261bedb016c4e88ba2a0dcc696277fee834e3128412d7092d4f451d5ccc658acce85868afe5cb779a9b8510a07b1304ee20d6bfd149eb9cc44d289a53041424c33e755e4ac6b5da995d0f0d0337dd759f921471d7afd35cdc8c6a54b6c35179331aebd20c96417b4b3c052c5a9b5abc2b2d4824d45123af553a7447903bcf57819d88a6ec2c412f0552f2ec8af430c3b215d2da0efc750d3f6ca4387e43cdbc6a857ebccfbad377fe1055ac379f35766e855fda08bdb73fd79744d523c1630f372c5ba949340766d187c931cbc237f66bdeb4df862024fb54c8fabd66e21283e5f056328c59173a93c5a2eb919a810aa4c19b23602fe25f29ef04b4937f94884049ac77754e3d775bcfbe6abea8313945dfc4f0bf24c7f2f844a36275cdb9e7134e8c2bededb86e763ae59751e3691949880b12553f5e7efdea38222b370ac5a10c3c43930899f9fc24e29c39311085f0ee32ab8e9066d09db63f168b150155eaafbab4b7773e063d53d87b733d8789743835da93d1a1edb73618e78b234a125757026a87366c3180b3c416711520b6bff889a3c143600623a579c55f82895a4ba1969c4e91d9949cf4a6538cf92b48230f8f15e1aa73430d3327084d957e4025dcc92dd630c4a4d7e6094ea381518f54a945eb6eddac51d5f7fa882e58e2d964f1eaead9a01029ea91a9cb0333134e85336b858e263e0ede836f6dec65a1f6744f1c1756bcf4c5806f7a9828391523ad5679da07b192b526c86ac353e5b69b0727b9f68a49e02260be821ea54ab39fd86c3785b8abf52ebdb8a28011cf380db46c838074f37e0c5c8dd803b214359fb1c5658b68ae5fb4872ab1b1c0e3c433403bd0b0691af5a076488bb78374d345a9e8d96a1992c7a586b6f7b55a8c38a93ac5818f3412c4f75906f1de2088ab640b761ae2380b4c2ca499d7a8c6bc54412fa2e9dfd5dc7b3b9f99e5f5a22c6c89ceb01c64ae6d6c1d1f21a98edc8cc2d608a4bc353f83588f05d41010bad80d807f4c366b46a03c96727c47115294290dcbb97dc0a8b9b682d02a61e2b67bb51a68b1e686c18b83e616dd3dc6234f943ec9725fb7b0d0b8452390fc9daf3f8c69dca6fd6525919e35d086cfe8dd759712de5a22f20aae3177d2101f6c6046ac519c15c52af17a093b810959081d3959d50389083c14899c5ec424804cb5e785bb0056a13772dee8dc5abf513efa617c1cfe68030ec9660669ce80d2860c3442103b23c840a0bd5c2db673018770828d478ffa93c8505c17bfd1e5ac76e0431bf453f45efe950b945a64f795c6cacc3ad562db4f0dce6f406af419d140073e8a5964f4de9a41a1e1e654aa7335feaec3f2c0632484b425c8e0adaed76cad040bb1aa3dd283708e44fa40522410c02e329b1da6529ff90d9f0fea3f9799d1f7c420f3cc2939f3470bc00372ba6f40c4322b0165566f7c6e8d6f0c2a6fd4ac9a41697a01e86b53eab8a655470c2a8ca1b2b58acba02d3b3cdc2f71e861d52ca8076abce1d5b4e0b1bb5c49a97ec06e3eda940e5c808cd1b040c06ea6f3f47ef920861544fac9cfdd53ec32a5414398f885b6504e0fea94927ec703813bda8f9fa558866992d7db51d4721d1585d6fdcc0f4633bded5149044fee5d648e489534a82ff02acff00a3c62ef3b9b2a58f217a9ed4a28821d05e7c087a7f04f3eb48230b419d576ac6d441b87d2a540ae952577ad46295d7fdedacf99c1bf5736e30fb724afb4826faf3eed90cf98ecf5537acf79843cfd1232b08566ce300a968be49e2902545c2a177035e12806f6c9b2c1740277d3b7da8ab06bdd93c5ff5b437441743af767bd36197f8704a65a85c928ba188eb68a141fde761a3f065546050e5dcf4be0f864fc5687922fc398e377a7ede5b67f9b89579eccabcb1c369d462d24b48986a1554679e9ea6a7cb510b1368519f6eda0099d12c7ce7e11dcab42cd5bff0a0500eada9e632c6ae16ee25eb341139614d17663c47121e495cecb4be0c6e041a4ddb2b099ee6f3d95a612194ac8ba1270d7f205b8d4810c6150a8b61c31d2caa356df9b0d65509c678ff87943d03d6163e8a7c112e28f2a7d4ea2ace6395e4fb8a0f06e705c3da868481b1fa4cdbaf6d51c582d17b6792eb4f059ae49de8536a8988f742616661d8c8a980f989c60a25621f5592f38bf07fc5f943ac6f3feb306e685f62395ed4fa0eb998cbc883e7bc28ccb82bed2bdf3341693f77d109d46e9a160557d7a7274b10a55fb1d6ffa5dffbcec27ceb1ab3681069770abbda13790097babc5f061099286d62fb4bc8fbb550143939b6fdde9999ebb1438892937fc82de40210de6fda659e0462153a84d55d659ebfd9a9d1fd1ca160734b8bb9b6e52e19715699ba96b4726ed48766fd9b93e4543a309b0fbd1d1f15ebbf1003698b295c2a27275a75c0c651d690922f94a266c92d5b1ffaf13f7a5a2f02998b2c3ea28373cf8d7b5b7554135ef8668ca11a3b1f3358ca44150f8816fc9ca1742f2d2227f054726ac3f6a1890af8088b7f5107029a1ad3db18a5a992f9378cce091db3ddb176828a3e74b4a63d6536687f22e9d7d79241eed62360b85c4913eac15fa9da13ba8bdf1eb51caa6f05604f7e57594915bd497bf26d504e5280fa5eebe983adde0b82e7f61f8b65175dc8dfc386b1d12b5e4c57eb119ee8d5b8bd481531f4b13599ce30f8d229a66bca80cf87e5408578a685eace648913d349c310a70b96aba171bb632c0c4821e717c88b54a9223fa8edb27f735a92c0f57c13981681806d4ef7c5b9ffee6d86d6c6b48bca074452b8a6b54d71930c3fdb6577eeca451efcf90aa012d5d2c78f0343256b12703696915e471eac8ace31c81140ecf2656643b34e7bbd2047804809cd38cb7f04b94d7524ad5f31196faddd18c81006cb363d579d6e5e0affb80569aa35afb282cabfd9147924531bc9946226a992307eb698d3e08c558d994ab4c1a3b42eca5b56aa1b4e3fbfa05ed9854661cfd514470a5f1decca4e08af4670bca005015d3b26f39d3e6e560926a3f88c2b9787fff4ed257623d9351eafbaeacf391ed29515354c02710b5fc13177921570f9da86e261ec0df420ae578e87ab82967c6c6e2b84ccba7c8256cf0cc481637c11f3be461992a3f8b368fe505af3592ed72d8b103dac293b3dad55790d2be899bbb489676b9fa53c3831d4befaad532079cf84e1328b188a56308402e8fdea2eb00dae232f268690f2340e433abbfb5a9dcb3ce0b80d98150055973ebee170e306e4f0a27040601ac0780aef7384f206047ba1fb439d95095aa9804f2820d88b30927edd27f284df3b0238f684a0ee191a25f190cf94a28c62be36e3dc4982adb1538a42ddf44160b78d3e6b5f18536e43e38dd6b850e817a6df0af577d814ddedaae2712900fc035c4331773527c8a06b6eb093da97a4dcdf71e999fe98bbc156e640e12382da73818a0a9bf0ffe884a60440f9f1b925aea9604a8f618d01018b0f5af4ae38df0e0c20f3c621bf4b451cec6eddf86d59162df389f936a2b1dc108b58ed4f7782c2d91982f346cbbc259d0b30bef3b5fac0f9becf383c0d0811ecfe47d1ff0ca463e61f8ca278e097258479318c117e9d2632a87669241f4dfe028b53d129bde0aa1d171f42b374afb8070ee37763afd75321db8b2ec9839080647429a873115fe99b5f8c200956d02813f0e5a252e10248991c1f7df7a8daa681d60852786a30f609d431689072965309a7e1edbf7c6e7d6cf33097a68f33c0452034745cca42a8a586fbcb95db2907e943aba3e0bba3db3df8b5d88ee84cf128aecee9ea513551f6528533f42c3e8b85efd31882ef1c05be68e1dd7b4c5cf49755fbbaac34700e4eaf3001c873210ebe25c5bbf7c9eb58ec458b84c762ef6ff0e1fa1de06de94c3f756a721318d8a79b57083906348b06739efa1e54145375a2c785017e2e4b1984710d84d26761e40a36ac7703a2747ae1f0023d5f6c85dccae1010c420d94cbb9f8c85dfc4f35c240019bb8b486b59615239e5d533408ddf483200625f2392dfa37cc9567acbeafe78c2f2c0dd5806db22de220ac6c8891de36589a4da6dce2bdf2f8cb12ed7c84f40a48023d69dd8c04b9605f6265edf9559541054fe10ad3e5ec7b5ff242f1dfd8b23aa649413a11a78c19bf02814cf2ca52772dbf91c43bd017630fc50808dfc16452e54fb390bf22bb3cfd78a19ab23daf74304eb4b162cb6952b0b003b0202a64c95873204d134afc50acc3644805551c2ee06fd6f5b36c7b3ead4a927f1435ce06b81870e3b54a485871e38b9d3a331b5f56094e52e98f9cf728679f5342bdb30c827f04f5f19b3e431daf2728507340b759f13ffa1ab4533518447c48f0184c2b2ca6a5076caf6364c972184e46109a453da927c7a0ef02e189c22aadf75032b19e5c8cad7aa638229955e9acd9f2d1da07f82cad3a96912fbcb76f800bb6db3cbd795b10de21a2629a03143b268e7036192bd8c2dc3de47d5cf4b0560d191e2b9856f7f9b4dc110dc0d726d63bad29453ccf0a6818f5b0e906a5632b479bac1533626fe9785c0c97f043659c1d0abaa26e532bdbcb09ae52275961444e58701a3b2b06335460000d3cf0d46eabe1c9707c05e7cb0a8c1c31ca6e65f575a3cf09293e9f5fac619ef094680bfe39660c1a8152001b7e33d272456ee02bcd18f687cf4ab1605f2f3603a7bdf1591ba81128d6585538373627cf239bb800a633bead3c1e1fcf5bde9140849a32a8fc2c7a53a858478de2cd083e3ccf386f56d08221485fb8a8361463b9b9682e2214a48d5a692c134d3eebd9d22f2e9567dcb991ebd13bd6a3587e6ece605ffd2c86b1875656e3afe4daead0231cfc733831aa29fd9844448567549c17772c220fc9599c2b379387a6573ca5e9dfc4c5e728b0f08255a24539ed71c556ee0d418f7c04ae98afd043949195ef65b75d2f854c761f6a9e72a51d9d6c2b52c013832c65bf0fdf575b1c4c50eadb004acc40f81bbddb701b235845f66db8811c8569435880e06407c612322c61946015afb1438d40251dac18c2a68293a05cce08bebf167c6c6b5604193e57a8e3644f4452a363cb14f9de4ff430c05bacee9eca85b48b98b234e84ae5b1a6f1d29c8ac98ca5cc280ff5eeb98da06bd06d20d2e8e687f216cb544ea9c7499edbc65df403a61df06fe2c1650fdaffcfd830964930e0b7dc6cdd81f1e873a517abc7bb76471f6ddcb48f16040bf9988eb57511ebe1713255870e7f704e1f53bd6905aad5f2d8484542f539e421b6074f8d7091c5a3b5e59be5908b307ad072f45aa2925f7a17d38f8cd3dad6487de34c9119b45d973c2581b67d01006de37eb5f2fd465c69a331831eb61b697bd58245557f294770a0a2fefbdeada1a344655e528809be88996824cedbaae5862be86518c8d01074c9e0c1a35165c625f8d634dc617fa3819ef45e59d7086f56ff4088d2bf10144a67246d710cb9982217da001e8eb76886dfdc522293a30edeef84f21e5aed98e825c1ec0ffee17e026525fc847bdf4936fb3ea5c21c8b1c1381a7bafe10be9c7c179da728b09fbf0cee431510aa8521cea86cb59f8cc0bf6a27d9b88350d947ac673ab525c3215dea5dc57ba41e423f454acb2b21f45a4356acd677f9c6e05961aa9b90856cc1670c6490930484725e757ee232d88ceb4064526ad08b6e51969adb41abcf4a5a6866eb48e4327406649135ff40e315cf05d7888c457b47d33223834e10a4393419e0f8677dbf9b8a04cb489b09954c3112e77337f02f223ab3d38e6f6d242f51533b4d07b085e9b73880858fead254b0bb971884b75b804590984f311cbdf575554c37f5aa6f70694d6bee2d58944341e6c580f4217dbb896cafb306412309f466fb0a5adc5d07cef6f8f0b49110c44689be7f15fd656ff9c13c88682cc3c90677567c0d96ae43da313d6e88f1230f48417536602fbd5d5840aa4ec9d5e181745aa8fcc0ccafed144f084c116538ca0e584054e451a6129231519295caf9d77ea75a6bf4842ae83d166fae9b2e1b2f6c31da40aba440e14d0ffe3c69f3795eb4716f575c0a3a10f7e4d14fe5333d2d8bff8d5377cbfca91e556b7c87f92638c57484e1f5f190d40844467e730d45c929d484fe91b4063ea84c41f14f3d7921704e6427111db9e94a72673cd9613882b995e26ece8855e9bfff947de8d3eda46bca40bb5ea97d9153dc18d1fbb4a3f04521879bc3052ba1e1fba1bd0082d8dfe40ff2ec5af3fd1af9d6e59bc5aea1996cf4e2aed378e1552d6c08c78e35cf78f628e6aa967c19ce90d7e4e92c2716b84111f94a59a51b72ecb61baa1ee8603bef73a6e29c021c1df1416a30b06de21db8fa4385947d820a13eebbd3313e17e6eb94005a5054d745279234fbd2a821ce06188b3aa0debe6a8f6e9aecd18bea1b139d9999e6773479efbbe0a706a74d0fafaafdcb6255bc75236a14f84f3965304f5f41d2f9ae655287d98520cd81bc15ad3632ec618d1589b0b7d88b604981b6398412e18ac1116702b0299b828ef8fe3dd690555f0970bede5505b11f5ada8cddee1680e6de4bc1aacccdde596c250ef920ab4da033f374eece595fac3a3ac570ac759e3e25e484838306e64852ca4ab35b442094d9abe2ecd30cffc9092ef35f6b519a61ec9a2927b9c8fc810b73ee29bfd6259f7f49afa437c2d011607e6efec9beb064394951f427239922c51882ca24055cca0d5d86e4e9bba1c90da07a228a4c58f6504d1bc4e5f6fc972adcf58484a56ca4aed82dc0656f0a2b1b71af44dc083c070854d179f9cf7682b66ba1444358d66af69617408256b34fea3ebb80c6560b83a1a562f20e56c8ac5600ba2fd5bbd327a218a5fb595fb5f1780c5ed2a8ca6de6682c02d815ffc2a3c1d4e037b5e0bd826f0a738ec73d8118a65b20278a8a402b958717c59413ef50f5186bc7567b7bbde01e4c193323d5a36efc9726583668be2d16d630f253335c7b175269dc6a38a6341e25b2880cf2517baa70f29968beca59364a4d31c6e5776448818d5bcf0ed117f7ac7f9d7b201269d3db3b13b5938b4133460e9d0d559bda55040743bc1d9e96ef702227c7c8ab04c7cef653397819e1dd16096f5e4995ffc271b008bc962c82425778b0d10134765fbbab7d2650ab24dc6f6a2baf34bd1258da20673fef25c8fb6c590476ed9fba6eb1ba0d63f66ec8c6a4be27a8e615b5f43f92df8e085ed419d783436759d22c2e33cb43464295f0e3a2ce222219220a501e1f9f40c7f43306a874cf65cc408d80cac81353c18826659d9f608176c934b39400c42f2c743283937fd2afcb2b0f1f16759397500a0930a366d63021783cb61d8893256dcd817513214d3930171d442c100a8e9a786aac5e0d73ee17eb33bf425113beaf2469a7b58f2a2441cc75a5e6a1c24488d2f7a1758a87ef4ec10a3fb8e3d8091913e662ab9626197ff75f8ae1bd9602e15297ec5876443aa4118b3cf2fd54562b26734aa0626343db7a31a0fd5a70f12f6a133715644e854c26ad8876e76d27617a445c5f73433e9c7dfcb9cf5de5186c4260f5ae6bf4d0e55a2472d0e698c0b210aae59e02cdd188a2c28a878e7f40b731215a13ea0440464fc12f5ece994a85251c6638b487c05f72a6d843d6ec050f86a7a008c74c5b1377a99ba76f154535dc79b301bd28b50777aa9e123c8c98b72754fc9eb02e783b072625ee0b85853c5ea665af611c3109c18fbb51b7099c1941b48997e8d1c2600823696b42d2a62ac293f7c2534771bb4c4af8c5d3ef11b62288722a181c5971c86a5526f00190bb2100a12939edf931ac320a22eff6ed6905d233cc9bab8120f88e07aebdcb8108c6fd64b88f2cc2139f4d626c863a45b47473c62a812b635613e23b0d4e397563ebe982163d041ccadd9a96260d8cc71a8427ae5404fb957ceaf60d49e54a4138d4de98fcaea5e34d59b4e8a309ff3fcfd5082e6b9c38dd3cbe69a3af6fd801fc703306d47285419b6b84742649f88d6106467ec009db859ea3a0e196712268704c965180ed16abe8c282858096c60a321142ec4fa98509b058ecd6d392e5eca014959ef43960cd6fbfef8a003840195e7d8c980a9ff796abf42fe6e0694a64087e4ba07fa750d85a06559864f05b200f55137b07990e8cdf728245460df910d956ae8bc761f9a4a5891e7500858026e737aad2d9df0adece760b47308feec1d063dd7f225e6a1b157aa4a164c75ee46c4d5103d5edf8967eddec803cee1e9050a985d198284203d599d6c08ed769f4152ba2172bea3f90ec5397745615138b7db9165aae246989fa96b6d5cc22c96f4ab21d601954e0be6665b26f968ebf15487af8e097078371bb77bc6a5eb85629a9faac54c827db9c08080e2bbb458c7a15fc897b20fda617852e4c4458128c773f4659f7bd3086429767ca21db170cab0c1ed6fa0b4304c45811c0214f092e81c148a05fd32256204deeead705d01d33b855bb55b2789b259f9120a25d5ba24522da8dd9cc30e205c6d67c75b42cbb4c0009b501cdd3fdc07caf47679c56e85e90efbfc83855aec35432357644a71b1ba3752dad190ec70490e4d0e2c5f3cc2217c75dbb11026610e08413da7a0b445c9f983f9c531f5f92c873a1fad4225e95fd60829438e74318c380d70f60db35a35fe88cfd8b4bf0e66381ba594ab62a558e5b53cf290053a746e55b0f5563d22c355626b90186b98a0a56d242395256be2eec2ea9c0e7221b732f29e006f0eda50491dbb43637906416e0f06a107c8d12e9bae13d18cc27ccb86500b1334160532a44169c6823331c5c565606c4512b4270a7dd79fef2f90c688a4d6eb633a729a0b69d2bf2a523db5c0a8b6777fdd73a96d6510c98b32ad1c292e85645c077f9436f7ddc9bb8861b6f5003ee87abbd5a310b33302edb08ef7218f85641678816e3a590f4aae490194ddf0f8f619ecf8122cc6fa5bfe74569f2ab7b99bc8870518395641f0637b741147756f3a1f4ae1124ed80a4369862d0682509e70906f81015545f131c42a9f6f790d4aab1ad7c314b2a653c7b0b4c3ad9441d300e709c219cae0ea279e765f7e6fe53760886644a42ea6d262b66aebd72bf634cf55ff05f155183cb538558a6f7bb76e7fac1fec63e9f9ba7a555e6544f04790b937145c372d40b1da1d289d43dae39d105f31934260d70a9cc02c4e79dda85b764f09feb4bb084916eaa7118d3b0d0adce12745e6afc920adaad8ac0c36d2d6759f75e9daa6e5b71bb05a033dd39a4c401141d129c18964a2a71f96cc2006f5af952389a2c6fb61d2a12a7af4e7f1d26c6677ea83f9c704e2e14fe5bfdc227cf2024367d671bbbbb53f9b449fe520eb5b7ff474ad36014d229c84313b92fa07d8f4e11b3a08cb0bb3e257d45f92a280cced0b10578f7a5da52247b4f1f73cc8c2ebb4b1b7deb3495509d13a0b0199bcc195e7d6ba2d6e4bed616c80bf6db6e0c10d51f2cbee8274c8a8ea383853107c1339cc61e148b0ae9821ec9af491f7d735641bcd34a51356dbf5b284a74535f80b74c70f5369fe2eb25f61b63d521bf612067616a8f1ed0449f27ed3f67f4706f0f9164d5f99a24ec0515f37fce4d2fe9359d1e70cd3bdeb1a804586bf1962c7cf43d5603b6b05ab8e78e2239ab7b240c7525bc37d4f4a67244faa24c34e0939d2e24c7c93da2489600d752464ab7c3f94347455f99080c1b7704b1deaaaaebd0035659b4bd2d86ace3c5627ac2bd0e41abde10c153bc265c5b214a27a931cf15c51b46155a28d5368b5c839ca43244551d17e9543d969a02e7ac567029561ccbf4afd63ebd1d78f975d274330110b11251f5772db6d39328b430050b6b9e38c4ffb2767b57c62c19c6c75ed55af04262b649fa54f2d90de9587aabaee5a2499da7e51b72ec04a2937989f3955c17664ae4a5b11fec0cd630da31f5098ee9e26fa3b268e01c687b9220114330892518cbca1f882bf21446b74c6c4985174f6e67076720f7b3ac20402e63b53fd1288e65bfdcd627b36c6db89c6d3b836ee478b2055d2174acf0b80c16950eebd2e19468f33284c209226235f45a9231a1ad235e18f53231b1254295ee57f3c1e47bd577b186f2a4cd549f182c888457c6d4e8faaa9f03b3357349465781e2389d348bcf635369004ce8fc29e407c44b4494132a143d46be998d1fdd181ecbd09d49386dd39ac91dd6cf0ab554958233155c58ca9482fc2124b3a191fac72f84ce438bb58c3c6688b2c31099343f1f9b7b0a1680687b5e857354bc26f81ba37be97f0c90e7c9a8499cc70be1e2562c043a81cbc4eed83ca685ded0582d43d442a48eaa9dc1eabfde5da270a59fba734d4830a1a2447c2c2f218f9aa59111a0450c94a442bf6bef4ee4dd913ead52cd294fed29b14bd342d5ba7106d45e68a246728813fcf09d476ac909ff2d25dc94b8cdeb28f3eed24a8e3cefca13d4bce0cad34dab528a14aa3562a3fad5c42b9db2c9faddaac5d83ea9a407ec5dce32df8637b16b47855055c209a2c48c909822501e59a7ba37296e574cc7b72c452005c97fae5fa112fb295e6975103f330b768250bc94b546ff8d6ecbb1fc7946d78637e68a045c87ca6ebf56bc3d294dc8655bcbdcabbb3c15ce3af59770c126c4d2f6a320281758429bfb7640ec4dd9c58ec82f2710ac0a588c2cd97fdd5f142fe0e4589e7ddf1b44e8635d925293cc9bdcb6531e564126a92854635780efce80d9086d653899b1bd79ce0ebd4f55f452451b853a083d9d4d2ccce6135980c535cf4f4d769495eb1087ba4029ca86bf5744defbd03340b4fa9cc3b49f04bb70a3323a1d424838f3a45e7049b1a6c92acad11f9ad6161c9f9d4e2dfa8d60a004f5a582fddcca96e11cc1717241f4d3dd385a9738f409a117a517e80cb3b5da42bfb562b5440bbf815e41a8f2257c91bacf2ed7a390cfa1ccd2bad9be370e24a2507d091dc95be4534521f865c2b3cb9f95457dbf87a016d7f94af3b2679d75e725de599c75a99dd5c316713a12db7d96e17677a3a07a3089a800905c2572df574aa745514422548477de7bedc1d70f3361f56e9d1e498d96e615f9436c8ba503bd1e4592c4f76025855e62069c24cdb8ea3d9d78203540e6d08d2315c02a084b4ae918106532f19582cd9236d5d453dcc27fb3e99ddfc36a0526857cf1e3e4544b6cc9e4d9b958d996ff0a55e93089d10d10024be6ce1cccbb435ef519f22d776047ee0c177f7f4748c010cb81f49212be00e14cc02d23a8dc5bec195543c175c9cb35c4e60a913d0b82304aa7a3df4e9ea1bf190e6bb9f47a93af2146200399307f38e4bcd877d9c748799d63a5a9b2647c81e660b84d9196d0e8bdb33b52b2dc5ca6ac400c1a656b895efba11206ac0995b02be0e26547fb6b10d8c7e999d8add44f604a282a617d8400e902326f68337a929a31655ab4193b773b50d00f25848158ca9a1b51c89c365c79cd345a4e7aa45000428902504c7ec9126d0e8099b982cc4525ac1848073517712344f0580119da23c4ebea02d063b87ebd58c5ef66c98ff6a84acb2386b180e6ce52e4564bd879c61969a6b22179a5af467f9e760e004ba6cc99e98fb73cb19f7a3f384c6b681e2f5d7e28fe0c748447b79e16f0f8e85b03a71d8e2d6f49d4c41c5c9e8d892e4c717696e6122fef8d152edd0e19b391201d10436490ad1795232f982ab5a21c776d9a22b5416fa065db4b580e5d51efbd1def3917df657f4495eb3a5741d645ed625d3127a80a05c72802cd58f332765773e40e66ab4c6e8bc472604a4eae8e964dd4c14ab814638bec117aaa820d0e6a6cfe96d2ae9bc32477b0d6ed2777a4fa40dabf01fb9030982ed15de2027d7e177b47c2c486fac0fa40c560c6f9eae08de2708f4db36ee76da373802229eafc679bf3abd3cd497aa0d5a978d75ceb3b91dee17fcdf54e3700c9b7371cfeba0f4e6f80c03bae90517cca84770cc5569748f218b420589faae200f264e0a0c2c6f0959d3c6684d02517a7a269ff5a022a43857db413fe162f0b438d7e06279247bcbe456df6931fb186df537049cfbffee3b21f78f11d57fac05f57226bff1025c417ee560a8ebecb73ae4b8dbfd07226d731c3a8da00eb19ca53357a5a79b097d70f5ff46342072a86b5d6d01cb8f4e42c8c269fd0390675160842293180ad58c25bf8d3465cf188c5ccef3cab16736e7e8673430239567371ad5804c2ed4adf533f690cdd71291910c067aa5a7db1b7c4b8549389b9494a2bf5cf3923899c91cb4c484ef9789c2469b32b286383970fc6a674d82a22d86b111af149393169b8fb403d7b8dc8c187fd9046c0418c28828be81923aae5170acd8096e4bbd2d3b06505a2618a4495302ab82ccab71d647c9cd2f61051b64a6ad5ca1db0de5cefbd31472ba2f2c6ee62f0374d954b7fb0f737b5d0133fbb06cd18cf31c521ac371f48a51d131424ff7d94d25c1daeb938156a3d93b01b0ea0684ec8981cd532d390330e1eb59574b672249ae7d5ba5f43e7a534c42f9d9823d1b65c782af9086f14e59093ff073eed652227d513de07afed845d979ba5829b6ddd27b2e5625645d2c3dfdc5f25930bea10f2e5d2dc46e5e68159d49f1c9cfefe1e93f783fee7261f902952278d0c0c773844bbd127883f8580674d28609ab36eee906e3a36a095641d91c2ff1a9a68d260a4ec2632c3747d139564b31552e98f3e4749dbea429bd7c185edb8840844fbb7405a2b2dea712328a9fc08f57e3c8bc57b66ac4b6be3029de82e6ae8e9a7ad2f0b38e7e946dea6d9b77818cd67e492d469a54a88cb960c65853adfc72d3e6eae9e27bc48d86879965706b4a54781abee8703cb63f32e03fe31e161df27a7ede5d22c98e78bdb4292a223df7ff7315da44c353ecdd09359ae70d1e30568817d491f59ab447f46a846878dc4ffbd0edab8108301cd9407896aac1054948290d5b170c2fe885f93bf2f5ad421579ee08c8751fd06451970325d4ba67905e6a533d4decbe681152efcc0770b0b86085a1fac6d18e2c2229aba5b7d91cd60f97b4f3084fff7ea3af596eaa5281ef43447bdf64434169fe4603af25d3cd3f84ab242c211c218c102eac21e86c25075275f9b8c9e4b513fac09fc1f67d8d0519743c7c09c37334c4baf072053c836e66f00d0ae3139d74b12bd9b153a0cf4c84e89de15dbaa1ebfc491506d7dcd32575ec3821fcebcbc1957af8960b284f2f1ce147abb7a381c5b6ff47897f37fb1853dd9ed7ec8f8b070288a6cf081c83266954b7e0739b6727e3939ceb03b799a88d02a68349cab16ed622b7b1473804f3322b48e6c6c472bb25e8b4f0c4120992cbe720eeb47ca1840fcab4f61c0cec61c338fd7817074c5a48780406baaf7d4fbabeb4c30079bf76028b41d681e830b58c0abd7c179f23fe6919326e7835a197fcbfe470db305f951d1d8864cd9d8c5e43f683d05d9da67fcf271feb3723092d7439e6b0bbabb7474449e2b95330e2af17d072a1104133e66e0ec6f232e0c64a464c61998949108dd8188bca0db5ae30e9ca7bbe0f6773183f38307885442372c56c0c93ed65cf77cbd18197ae8a3fddd98b7fcc0188ba30e1cd97ff3b7101a0de780fb1f1bb005f04bc504423d4464adaa164a2f62012cdfd39722959eebdda7d0d33c6431b1bac172d4f625e29ced489ec84b857b0076205ce3cb5ab21e5bb75bb7e940fd8f147ecc9b072481bbefc0bf08f8a54dd560e7cc82f9d6511f2e3497c37d058ca91b815bd5e1837cfecf101604bb24ac13d0587eab5e4b015991e6d70247ee6060322fd3616496e10efd58b80b1386d68e57e25b95c8130dc9a8ac8003aa5fb4daef14f934bf252e07f7622af94472b2d1b10798d13671078c8128ef7d997919262c6050b8545c790e104a83b643357b380a9dc67a13cc80e087d9d6bacf2e246ecf2c4d79c178b59764ff5a25ed8e1be2ed577588d1d3baadabe51db85f55c3664133c8f274739f97a3e1b36bd934b922b3e0312037a9b8e25f4dcb1481183ba79cb8e75491f72fa73b7c04300ad02732a8405ce46b2e4d89cbb5b9958e928a39d63115fe2b32ca458d6bdc69b8d9323e677390355fd3e254bdcaea9dc89d5afc7a5a05f27c9a5ad49c7dd0046dfc4c332e8f46cf2762316c36856c1474ed53866314abc1b379ba16d9e8d5739614fafab4ae4af3f1603eaa10a2d07fc7dc77b86235996e95fd5e443bc89994c63a11e078252cbc7906ba984f19d94b0fb6c4a2617959634bdb714bf1ba74a1896c301b4881014edf623f418d1e66b79240645ddb2feb09dbe052a646b1ad9288c2b239eae0b590ef49a833fc4f15fac454212fa93d0c575e4b7dac00da3cdfb2b366e8f1252ff9c03b05d7ecacc326546d6b26a5409f1e14dbce08fd9ccfb3a1754f37e78864b05ea4acda03151d936a331d0829c41a63e9fd6d8299cffc4d955d08a2d12b0ae117cbf6a38a9c2554998aa2c854289098c665d4786b79561d17abb459442377e41df048cd4a4b27cc6968296979fdb6d55ff9fe377eef00b3b0d1a201513f8c205d80a84fcc852fa8a694ee99080815e690f2d3959f13e15a4a007828e11cb94b43ac9b428cc8ac1210850cd3c70b88361b42ca5f628b7b75e6402398e26fa488c2555d7d7a279a6bb21dd9b1b71ebddf92906e5778908bf6f47fdf7703ebd35590d0bb71ec72036b9384085454ef98bdf514ed940259ee8634651de76f61455a054c67b0705c50562a1ed1eb8419571845264daa1e69459452e0e1a3e5c8a0580d466f0baa7726dbe2d2a1a3e1b3a2fefda4e13a2a6e9453d2e385fb80dd1ef5cb1c197e8c58cc35b0340a6b2fdcd60bb3002b9f90635ce0ee649b12757d210eb4f08da1e45ef203c6d24b75293a2eda89c37f812cf08ad388aa70b0a6d00e26a5672687061abd72f3c9a275a9c50b44eba3a6837bf2cc17b3d696e16521bf1c6f53faa3ab5c33a1cf9cc9cf5170cda80063cc7ebb305cddf4bf497caa7942d6c0374da6f37265244c54eec9742429a3d84fe528aafea7e9bd78297ac6d0cc402025d41af8d7d677c956a08ea624eff4d766e63964020e1a2824103ff397407864d03016355a6f054e1d02db8e37ca07d2c4805e8d60b70882f03526320b8c5dbb4513aa557e258fd00ec9e9fea694c82fce51dc83c834121bd41b485d30c57f8dfab4255111b81d50bbbcfbc9710f9ea4f9b7dcbfaad1010c9cc82a1d85cbf00e4e9a661dbcf6fb93966032fca0147f4c0ad4d2fecf35569de8bca5c90188dfb1b033f6bad82457b4305e688b2e80013e231ac6d7107c4e382883e7322f28257410d94a78663de0671dd4693eeda808754f0cfeaef21a0d26219cefbe8ebd2975210d18323950d31e3cf3500b5504425de19ce7711378047028c13815b62b39035d5517155a7bba4364d6e89877b58b14cc0ce9902be3c36377ec2b14b7159c9bc459074238a655ed08a0cfe6cd6b9d1f8ab7ff838312870d5e1e7a01b4b34e972916ee48cc51980e3ef092b3cc008b3d94dc307e65a237d2bbfd1798e0bb010ca3395b67fb46c356c22ddcc14aa390df3d508ae655daedde87b59b3ba6cee42b939bc00126816912d13d730a1608b2848953f05967246c3a2637cea76b78593b5a1b88109797c87b73c279be82f2e584d439b890a1ed61e7f6a4ce30638c024fcd76cfb0a5a42a6fb8ccf11061bcbfefd04aa313165abcef8c3fcca9f19e154e1d66947e2b07f8f2b78ed75d5e7c2543a89a519bcf6f71167f292742b64dfa95f2b4a968bb45b3c96df13f3bc1bf10ffb26e1a6a885d69f3628969ee444d25a98f2f1507b25caa146cdd8c27f027af50d9d37527ee48cfbfd4f958da91624a3d218e677cb3ee16f238cb399e2c00a9a17461b25e88580ebecef484bfaf8a11f5ac922f1eaef70f34fc105e47a56b9fac8933131c8e3f0f4cef7b175806377045b44f4bda3cb481ced02986a81607a626b45192eb28dcfe5b466dfc2be2ba56be4c7c63eeecd6f9caaa6d312cb64c2486846ef549521d9cac999dca60b3161e9e46fd572555e6ff49d2973507f48448652d7b40d008980dde15e8a07102d591db3fd04330e0de44a966bdfcfdd7331f20841fccce01e9698326cf2a3380e62fa9951df2b800b57e4eec9d3d94a0d1ea18dc319e27f20f172b05c3e6fbf7519756cc5640ab05564ceab2401e0f1a10559088ef1f3f922139a29c314924fdb194c75441914164f1eb00aa6098b31b087ec8e8edf50e25e3b12717b3e79f6a78bc73a88243c4dc6296b80294e8be43acff6846919640e0dad59d3192f10024433fde05a534a2276b0fa8a20e33c57d8596c9da3e125d66e03dd1f4840eda18bde40c0a50a73563e7c2c9732974d3135e74378b7650998f455e4f18121672eb097bef4a257c01b78cdf4ee194d0135e37886420fc15f9242240c33b8e2f5383f8fe9d98907c941b8577a034c4b06552c3eb0949eb8498fd2fddaf9a783df7a79a15ceb800bb3f2dc426e63707045151982938f85ced9862d8e0bb9aea7030f6ef7a429856266c78022a9d3a8164f07a4547eaa87ecaa408ab4da4536cbd5e99ac9e70491391a027f4d5bd835fcb0a5eab9ff01dfafeb75bd189d884dd6fd96f274f500e3759c6d67d85a437762ca46d0f932af39c06742f79479345f83df3f28d55b0fe66d5d16a099937e25b6e3e2fbab69be6ecdd8d51fb8b79d2615a797507b7b14518a271a027c0c3438c28b2e88cf570aa40c1ec4a990f894d7903f9776f18ac582699798a26143cc1139fec9d0e397740bef54f8888c77aaf1c00933b74ed022201f8131e3b64e2543ded9fd0a54dec48281b14d828379968377eb9847d60c1fd09d75ce1599b6a793c2742c83e949378f24ee44e18d9f3391141fea35c8993ef24c7c4c83dce1911f21fe5489c5c27b92746ee798e4506df25b4568185608bdf094eada5321ee19450a6334e7172c838f427a40a6a142397f8828c20fe84d8028e0184d37f420fb0d0efa066646c2a6769e8d5ab3c0e9c71920a3ab0a0df2f9ba85751bdc7c0521dd3a6fc7fc24352e424e5e7c4e1459ffe84afe7dbd51e2931982297b98902855cc72525290194f185e618ab2cfa708c6f1e6e8f320527c9ed45c02ca010f2b561b022d9181112f2d49e12d6f31f153541e556d33019c316b5d3ff3a2d96044cdf7bc31b62f0605ce81424f90caef3e72a9c07a72f1372be0242068600e7cca2c325bcb1a84f70f633e666ee7fe3653da97e4300a573cd19f553d5cc82668179697e426eab2d191ce7d8906323eb090cffd46f44a07fc1f757c30c1a20f5746a9e67a444831d244dc2b0eeae95ccf9d0f4067e00ed165e5d3a3b4825fcc579572141fff07446d0282828e33bb74b3d082a94ef6a50e2b7c4ef0718a70573be464d4775df6b799b326f65531add8da70c7352329d0c9a9b6bf70aea2e6064ec309a7903b18820f6712987c751d9bf927ece9b6b09767172160ff67353449a5513bf3cd68061515941c6f80db6f6f2ea5f64cedd110f9260b6297f21bfe3fb48ef8b5e3c0723f7db0abeb00fe4afbdc3c0891605bd864efcda20a261915296d23a970cafa0e73161d67a5f38239308e6b0f6aec65b47563204f2f15046f29692196c2dc55a6fe6f91a7ee3add7cfaf44dd91a8c18f2a7f697d1c3bc9da9b36a0641bd68ef40dae63837801ed57f6bd840c007269035dfa7b4151671ea0161c9c149623c275ded8688643c672c79a01b146ccb500cae5f29767dd06b02d1b89b1a0189fb40bffef132446df94f74d4ce1e2c4da0b09bf189dfdec0c03550f55832b39d72c141064b00408ce23126f9a482cd5eec20d0569b4078884df4b8a6e6a31ecb9a00a14205fa2a9b6a1aa27899fa6cb9b813a25c707729baabaa2b1218c62a69fe13005708873e1472b80b920f15dc99254c8a5223e2d97af60aa903a21b39ddd07db0fe542bf8374b0d4c3d90be188e58858082534f8d9638c2099be2045bcee455aa6b361e6142f5fd64f941fa5e8560e1ade7329b647817e4ac6743f21e41e480a8e5cfefac6d978208f77341274e37b9bb58f7dadbf77293b7a84f2ba9d31cb4fe91900c598dd272a1cf014029115e9971589ff64c0aa8e6a805971a22b2de57fcad6f4ba68efd0f87f58566676fd0434366a7fdcc2e9a0b7245688a84484c53cf1f84fb1297567cfb9e7640ba35d989f4572f061c5b0381c63705ac81305c446f3c8e3c0d88d64b886161090d7b844ffa448465b5f942785d67f4213db42aa09638444ae1be913562baa2013db17a1f1e80c433d8deb67f73844371e24210ab07604a617414a43eb53f92655d68112510d93c44ba765085a571be3cae0d3f62c216876d148411ff2ca5d6ecf77b83c3c595d9e3d740725f1fad52920b40d49d5c020a285e4d1e1b8473d7ac27e5e20c92551f1634c2ee95d6892b31d4de8f61ae8653ae26aecf25e444aaea25e812a8c20dd39b9f5fe5629e9ef14afce4653d5f2faecfac828b01246bb672144ef0523cf696bf62062d7c7781007dc8dc6d464eaa0b52770ba2f84916237e0b825bc00f19995de0f42066705074b66b1ff08a3999e552cc09d2d290048e4211e9fb137255da0f4b2412c758f5dab9cd50a0eb6dc65fa1cda515a1baabb2e756022183a183ccd7dd541bad36b8ba819c4caeefdc6284a9ab1d3044a76f3d98de219442d76af74e9c7f7adac09d8a799eeed3ce730663dbfded80b196da09cddaa9af8cf19e2363121c12f7c0b9fd5d2d13624f684ea5ff36c973ad52839cc6ad311d28be0d70378f92527c2215ac1020c6134ba8044cd0ee6bdf3c4a43e39ef79904983e4f7829f64aeca8c9b95b294a3549fecf00afb8d013a4e0854a0005f6f010bfd1c942ea4e3cea5213e591ef69e28f483509065bca3488d590613445090a19a0093fc18aaa36367fb8d2cc3b574a8a53ea7dacf9f2648958cfa841077f405264c92478ad595623518fbc8d11c92d8190c4746d47968c7518417463436a218e2c72b3d2a73ed814fcb624c8c088dbb76e0b254bef2c8bec133b27292b4fc03705ddce0ccc8a0a598d6526346346f524786dd40828553d3fd7463c896faf29e57f1a0872d66622f41f8bda955d0ee1623ff62f1357016a56d051556425de4a4e764c8e72e64a7eb1de720921daa4d5ea77798dfcf487608b5f4ef18c8eca610b3fd6861e1ee019925f6cfbef530e2275838c36168bee796f1c40299eb877e4b5f0d6575e9dadcd6481e69220c59f5f9192d7fc369c799fcad4bd79b841b10f5359f63dea3dd38fc6941145c476c4dff9a230ab58e0c7d9c1ee4371cd3409f1a2061b7e3b77967adec5b8c347e8d5441dc29f766011bb9996e43fa8773a71c428dbc89fec266eb7afb80abfb15f3449f9e29873c374e5b7a4a1e2e1c1fd69da8825ef23557e213857d995408f64917981e98c01afefffd52accf58b1ee01e05f0256dc17f8d5b56d2dda98cbaace6d0a903006e901ef8c5650e3c44a588ed1443f92a2c5800d1d65fe656f9668a4fa3a585e1cdb074efed4d0995ff1f47e1192dc32ed3007cf1685d1eaa9fd3083530a0710993a537fbf206e3f3a5ea1699ce7864298e0c652b8db3222f3787f26d334a76f6aaed0576ad1d6376eb4e77d3d1f2ca8e9c4c31e8a08ca006310944f53fe7884434dceabd3ef052db6b783559e68bbdbb979233b8ec3a8143f35f779884b90531a9e94475aadc7aea80427868c52e718d454746e102a691b145d6b62cde4c6e52ff62f5d81385b49f4590870d514dcf70970e8276c31c3f05a62b1dcb5b649e2abc6392f39b4828cb79357912f93a7764d37a88881b1b9a09c04064db438c0cdca40e8239ba09666a194edf93323c571930c4877be803befbc83cfde4db38bb693355c806a6fa18c54db6c62c45c296fd91958750eac00857cb2168fea665c38e6d1ed80fbddb586a72011e171b143bd0baddda7ae1669d1d741f51616ea3c2347efaf8a24d2d08494017bda37421aec0da7544625f43a7bc4c3d294c1a80e0640430088228d786430778ff43246c4d94aed8a00471d4549174ea3ddb7be00d6ceda1853399113541c9ee96805404dc418680f8a7c8b9cd6a66c179f2e0cb895034b64868b7432432e9ba907a053af5b44cf7b3584d6f3b4746979b70b13141235ae865f52b4c574d4f29fa3db6731e7781d3eb48d7acda13091c63397d143f58c8d8aa7b5fe5dcbc95101812dba5aab1cdf0ff173a1e684b75b4dd6933f9855f0e72ba74ac897598c3cf3fcb058466fd0fa83fd57c45625c4fbd1e3d83eda4730f56d8b20f95aff8581c25c1532ab5047d4db0688b95b60521b95f6050b42e8de3e3f97fdabb23342c98eb15a05b2faa0312551e2f98638183c21a72c63d90e333aaf3fcd2291291710f44175a098eada1d09a8fe62c9bce955810250988b7ac5b8947ba2af53bc9b2f2b83fd9b45e5e4a74dd86a07f090e524250ff34a1bd01756f5ea9869f7e38860061555f211e7fff5b661b9d3e8565b1b4a7ee73d44f31bbc504689ef76829d65214ba12f38df195f37658d7728f6e31fad114c78cd6b0fce83b39b51446c49bc59c97f8773ad4681c76195bbd22160b8d894fb615ce58db1dc9a1a86a3286d55360452f180b65fc9f744e4e240afcb565e299808bd4f1514a80ddeecfa88fa6c1b500210377d4eb621b9844deb62c89be2845eca38fe77035182613d14caf18c484693387c0a4ff7a68a468bb3be157a5cc1a1248e8ca3e1eac12aa1df5fe4a70a6a5760a4974171d8ab8cedf14e03a3dd9abc6d9428c5be055de3c29e1f5b5fb599326f1c183ce66d73dc871c9bd71f39fe4d11c7e56c76c9dcb7336fb9160c1a6e80584f5436a2cf8b7c3172174eef58c1375fc154305dc007c3d9e01eacc5b4ac932fbd1c587b35e5de9ef2a3fa0333f93ae82da4d435b086181066ed35a4c5a002b16d3b3363d72e2a5381408b9125aeec9124a1e23ae1d144eb36cc3e592f42005ab34de04bcc9bc88b591fe658ee25fc1a410d6bd3ab9d7b745debdf252ea53db619a602ed8637aa3cdd4a14bee883b80266386e25f32a914f2c290cf7f97de45bdf1f39db2badeaddb2757b64f22bf5a709bdb7057a0b186958528e88c478673351779857720e472580955c96f1028e8e8ddd4e1bbd06f56d61bd2503d09079820ba97a6d12e6fbffff8b916b72e4b20189e1c878857aee4386945cbe9fa7a941d5f10b5c33aeff19649d8adf9acfa99ac3015c5f7be0d93488ce9e9284256b1b826f1f7e9d9a7eb9c1618a109dfc37bc23c7dabab2a341d0d0bcd8d86d4c450c1a50bf195d7bc47b97b6a9fc3312d318c2df42160840bfcaaa712557db9efea4d4ff7b48e47cf015f9a49807e208c6ba072cbbd82062aeafa99d8e533eb49314d6c040ba6fe4c227fa19c8442f07cbd814211025468bace3918df3def021de62c147a7a77d8cd8a25aad9f99cc79b76e89b715df2bdb1ab8c7298a3b0e09a485270916b613c0f94a3024fe8db563d3725311295a28520e2b74104d95d2578d0e6b053f241b8d5881edde20175c7a9fd35f1a27163e379a952fcd4c0c02afaf73d7739c3a7f22f550fca50b555751e63c0c3498409a7f9bac47bbac894187b29e15967d9c33ce616b5920517bb79ef92b9da2eafe6f83f7ee7bc16e442f5918d7c1f35ad14486444ddc21f14728fb324ec80ebb4c10daeb8e8aa852c0b91786e1fa4781b879df1e151de7904c61af3bec8805fdcc44027e45d7f291904dcacab3017787b390205e31dcc5ddc595951705ee2b08bd8c3e2d82bc3cdb0429abc77b6cd22ac52646231956037106799e8b3ecaa77ff95633ad63c53997e03db199bb3513347c90fc80b7a014436f43d1e3f6e975674f08c127cdf09c8137d041ce15e80ce4c472ce1090acdcaef38455ae624020548220d40b4964e68230e7f02149ec805ca3dc60efd5fd1bb2e753e64559b82022b90ae5c492e7aed9e613bbbabd7a974ec51fd2677319a82766dcb6e761baef4d7551e8ce21fa6acb48e9392a17a9c4c2d4b2531ba6703d200fed808cb738ac02008df1fa8b0d1029c6bf21e81ac71ec61787ce390ff8af21a6704ea88af707c3993e0e2dbd12f8ae768604a4ddcc1ea0a25c777c65c8042ad884314fe7c50410f383a2a38ed8639029834785b8cc8dd128535c7f51c7d919dd14116dbec0bf488700c365ab87fbf7ae248fadd060e90e1534c03dc3c0e7cedfc06798f0325c020d97c48523d79376a48d1bf690c8c221053b97f8e38ab711168d6621c079c0777c0729589b211895541d38ca8ee2c824bd0d515d84a1ab180ed9882af58d91c2abfeb2be1cc29cb0b33170b89caa9c88d18b4263e1000f2b38cd6bdb649c27129313825110aa4601e8806e92fdddda95b2c04df25caec2f53564f940dfa705cc46995951a9fde27d48af93b3e6f11e8bc29211e713f20d524f20c93d9ebd2eb1b6fd9c889f65d1843a463120d29066d66a942f5d051a8e0d09cca2d0808f3897805c5d7f529ee5488e5409a7cacc956599e850230dbfe54ad79fd20dc8963527d814aace451e77c68cc97515cfb64fb427f235b907fd94d5188d279e62d5f9210706b34ca98841c72bdb20688e0ec7002ed0136a071d0f75f73b2b64223ce3155206ef38415cfa0cafdcda869e00f88474f4eba03e6d3eec1daefaefba05d2c190c724842ea7924f8bc4ee16928c8ffe5d60632d1ae7d8a5a5a0a3b256640a986a6cb21a3b2c77de52f7fbbf3ece88c1039767e0bfff8e4a3f6d3749d1ee8046d8a06041c6c5f0f80ac9839d65f363ac8d35e76e9621a63766913479fe401b00a302b60ca93b09d8e63514ea7aab06811d6b805470dd0db0557a8b4409bd629ec86c95c2fb1586864daf96a53d0459978a2c74060ae0f3be2453ee9748d0fb55dd500ed51afb388797cac90afe5387c9adde4fe3514d02ffc1066835f87fbc00b76191c1e408b1fecf837f58544793f99c59411998dc4100e865b8c8506cc55f519059057a222f666b594adec0ecabe8083c1103e520b3b85b7cb931ba19df66fceb878cc264e62581405f6563e8b428d9596a541138c8da7f01812e5cc7495b08b3448388b25425910c87339e38eae1deb9aa0bf99d2da3473984e5dbb575568cb463723c3ec309740b758286a0578233bddff1620c9b48a2366cadb4e3f5f30ffecc50b3ac655ab61d4d2bd27074a36de5502ebf82a52662198f383f6beb8d842ea921c2355fe535ba8267df5a072db47395ab4718c6fca00ca79771cf192ec300a6756cd1fd7db731e21cda0bbc2e8f0f912c6383c7cc596e63018cc525baf6284090f4289071a26de1590946188b41fdbe82784c5befab86491faa065da737223408cdc29720832d89d1e38fe4b4417c442a1d7410fa9f139efc00b1891971050734c6e6146b8e3c42b1a6ba5968f7c2ff0505344beebaa80d6ec7eab73b66c48a83b02b4eba57a2d004ac7bedc1a0530ca5b961aed5f912992eb30788c0e288549bb511835aa8d26af85f7f5d231a701820eb49046f75771a4f31509afcb605d9bf451d2a0d7e2deb38ebc66b72c5dc3f87078555cb00c646bf331700e4fbe29fc0ed1eff550bb1b5700a6cc1ff43d18612814f0adb5eb8220d728a146637c6b5e53092580bb0e13ebf5148900f85d55ff87c9647b910d62ad17cbcb2c60bbaa15daf69a5b93f187d3f8d5fd3d587411ef763f0df1bfe3803f1545a6613bd444544a089aae8189bd1e52425370be6452dd7215f127c01fcf2df142fdd71295c0be2a8ade7133cfa3ceb2e8877cd14fae6a22d997c4ee16d3b16895b464c749d2e75bbfdda319994c0dadcb84b2358ff027f9cdb99558fa906d78067165f441162f8fe7b4f65f3ec59846d05f4a0d8a38f5055b67b6c4bb0a4de2e00dcde97e66e7a076e4e43c10962ba63a704641949c389308002aa7d3f3d5115e55d7f9d7d43f862d3456e3c75109bda8c22fb3509a4d5fa4a65fd28c6a95ea6dfc4bed9d4acc37b51c54752dc3004e39b1e3dbfca4e07e08bc128c930f92e24e87173651165fa5809eee1a1519b003d017541d1cf223f03b698188fad0916e31753d211958b114d8442a18544545f41d913bd09207094d50194ed8adc038eefa242f5d4b4280194bf7a8b7ede998f5dcc23244bba7d1c09a376c51dac7676e98ec8f084df22b0eefd526d4bbeeb154e1ecb01b6551bb73cadf42168db1b368ab342a0575c219f9340308d0de223d61afef5f36600b437d055a66df73dc050286592418ce1207e81ff61636ba22f249270e5dcc351e719fe2fdee3eef78aa14c954b6382636874a253a4504577b3ea2c3def51f0a71d61b9a00f89ff030e2c45b9a712a0e2feac99af55d95be64f59beea95e11f145c5bcd74da889dbc5cfaedd52bf8346143f6ee5c25eb75e4c756ebb971cf0be9c1dba44beeef5cd85b6a480c241ddbed3f43f13c4b44410c847d42cd1b3bead91ab9cc07853d5fabc9a4ef63e9730040c0d15716ea92e54f848adf1992aa8ffdc551d0a3e4f985ac638f68973d49856756554a96a745326d3d011996c90b58fa3765641c290031cfa3faadbe43c23e8c155d21fec2e180ac934afa495d5cee1eac4f64b9cd15e2f961f12eeec0d21b3ffb4c3294db701620b8d98a964dffd27952836b48011325b1e342b8fc2e696b1c7480d0babb923354a34f8a500307c54051e89857b27703c773d126fd044b0d3d94bdf8374414f7752a6eba19e01880e0fc8857e1ccf271259894111daa5ebd60fe7bdb84bf55fe72f376d0f6bad5ca59733609b4c0a5facdeabcaa3b3e5f281a20c4c413266d752ad07e8e468ff9474ec929d3de8b454e59b5c79c53d17f43a80b9cf950fd9869779bd8e6470ef2acb66e749386995a91cbfc8ad17b7b2e9e07ff5fcce4333f55d55bd30d4f15cd151c8bf59e6cefd6e5f4e2088accce143aaef2167be284faaed6b13122132ae257db1414b0f6b2b16b2d345f1a79813055c7b8fb6f81ce9609305641044f2e79163480bbe53c0460c872a67624b51e41c4f1424ea685a9762298180333783c66b18e99c5f8467e34871e34cc8cf15cfa78a5f3d16d798194ebe966d29983770b2e830811b96202f531395262bf9f0bbbd313c9be746d65bfc889608c43a85f0ec4ef748b2052c9f92744501cb5e25a731e7f2cf412d3c1425800f60691f194311c19733d368237f880964a005a5446e5fc254d67fabcc6ac40b2c4732220518f517db86cc965f1536ecb1c880455e276a3efa95e8f64b1bc13d2597d7bc616d5e797f65a540d819823d942a029d956ba902c931e96fdca3ad60e51ca66a1a2dd34741b4096c5c0cf3881e668f805d418ac7eb6f0d62a4ff9b854d247567081d16389317b30d99513a2b9d7fa9df70984a7b608244b5168916be52fce36bd2b44c22bea392284e608725265fbf68eaebcc6896721019cdd0e122f4cd05facd00707ca36d294a21a8e1de4a919102b03a90ff9adfa90a995f65f29eaf5bc6f742107aa8833a7883c7de87bc93a173b7d28b7fd70bdf82693c47ad5af49ddc8a7559d67e3ab0ada4ee9c1e955cbd04beee204e022f6997447b526494377bdd31e469a3d4c52bfc1d41191983c38c298f5bae11c900411712b2813f10bc4e45396c5ef613d7af5a246858a17810f1b05c8c1bfbeb8ab0400d9a8515efaebf126d197b242a45d5b36e81771e1f87916d82cdb3725c017d8ec8c50486ed988e47309b7bcd819829b339181a14ac9083014c3135359013de354110895bd8d0fdf6ddbaf9e2160dd3d3af70cb56884a4ebf0556eb7f5dc6f43f137fbbf54b3fe09783b73b5170d9f03dfb8e6767b38f84d90960b6ec9352201d6fa4219bba46460cbe9933a58288582522896ccc2f1cfddb56d32bb0fb958355690245696e083c4b3b049c259f0e0aef4f4794e10b5bea6765293b87a4fa9ecb1637e917ae1188e5e58055b392f45db7469d5f4b16cdf828db6306f59b71f5f4359217475f50c9e0ffb958c728113e12e2b8639de13ba2817afc7ced8c1461107aed273b880eca79a810b3cde67147814050fa3b1bff8574a12cfc34a67a53c78013d550c5bb1d7e025b3ee0955cb946d549b628cc35bb88e58fdf79b4d7ede7f03e0f47ddcbc95adb7c2bdbb4180de3dfec0344fdab464f49e73077506399d14a3ee9c090ef5ca3f33a506a4d10810bd5c9a042fd24d54a43ea7e8279f25ae03b426301d3ba0b407c7099c5799c16437356ee1a388a5d6aa4631f2250183be6265944f88a38d019dc5294807f621ea225124e195fdc1b885d95c1deb2e1096d9de9bfdb4e04f0cf1249cdf4f5f0fab6727ba03e4a663b2d7024cd273f0b40af4c24816d68a380353f02e2316831c843024f143a8b3b6bf30a0261544af8c89f684e1cfd3f0e9f79c85c9c12dc86e5657d872a5d51473305e97b6f7cc58217bae70487044cbcca1629f75131706cecc7ba15b5db90b1bd80d38bcb3a5ef8e72121cb8cd9eddabaaa40cbbf220e67297c8ae50f1ab927c97feb2477dd1321c572691d7f48ef1a62c843a96fdace100a99e409b04183baee929a2636349ebd281c2f4d05700b8d9991f2dc355d1c70072a53709b3d04a62342d5b175beb76c73d9dea836c5b0fc11ede5010f22f8032ea22d6f2ee4a1a860f56deea127bb3f0e3c9c2a1e5c2aed3e98d567dec5695053c9c241a58aa0c443fd836312f599c9ec74d2e22ffed3ad1f20ec8d5f63aa16e9f1b5045a80e127ba07aee815b609ea26e909031bc44e8b93c1a0ec39aa3db0693ec4ec70187273f780d9984378682a53d3d1c908d0a7d092e41058cef04c8a4ace673082671bae406024ecc2f70bc7108c7c2f52fb8c5e9dcaaf6df02c4ab73c164579df28da664c6743a72084ecce8168e7a9579264ac717e1c3348eaa34b990727540c65551ee9cc9e414e78471bfc8a78acebd87eb65220d15fca18d92d410d9c299f4da915e55dc017ff17875bd7eb7bd7be5c1e1d2e12a87d087906185f0701da0272f24146362e0b14fcbeb20c077ecc30dc61821a1dfd700206235a8a2c35d81ac7cbbe27112afe615e6e383cd38ba2f0b631500d594adeef9a41d2fcc9e1702efa6bb305578d79e0e62127f5e34f4b78493d620a9083815400550b7bfdd9e6f2831943b8de0b0bfcf51bc1c45d1ad62e1a80373660cd070cdf2c499a60103c45af9c236d7270cd6df05f8fe15c6963d7867ccc628855015bdc77b175b38fc7b159b823302fc5a6f5df143e70161d89407ee91f147bc88c3a98cc8492caf35446f057e3e457a1155106058b539ea1214a6e85298a2ebd4e72e3204a12c5484c1a2db5945d7d12ad6ef798eea2d25758b6cffc5ace51293a9eebf6d20907e5b9f777ca697cfeb34eff8acec656b1aaaa0acff2cc7159f57b335dbdd5b06de12b311ea0f30a769a0b1841f8481033066d0c5391352c0133b383df000045f2944414647cae5f40d21c48f4f1a37d8410e7048c0cc1408f8208122f8e00b19b0800458684006dce101e74e80ce5798421942e0c10e602002259228c289104d7e7c8c14c1e106196248010a94c0c203492001b3a1067c71a85104223c2993d240230b587032840c31a87c208318b480052418c10712800027604504c1e4c787e78b1bc4c0062a9872240840f8e2063280010b5690012a0a3000014ca10c1ff080052b480108a024fdc8b3a36a292309631461063040c109b4d880020ef023ac08274330e1d919e262a95abeb8c10ca0988002a0fc58c40f3c457686b86ab4783409637c71031ac4000527d0e2031b580002a010f1030f0f435c407cd0b06ca83c9a4612c620020d66100318a0e0041fd8c002148080034039028c08273dc8806770210912971a43a8e1090314a0099399290e50801ad215a8343a34b82e94b8c06de1d4018f03dc06380d6c351c4d37b3812b311d8fce63c081ab61cbf1d1d0cdb0e1f064d86240bd60c34697f25c5a6aa45a68609961a5061515ea3b993ece642a95ba8d524a434ac5a494ea0c3e19abfbda6ccafc88457b4f254c34a55243293dd194ca0e4ae90e34a5e2b15cffaec556ee3f5a7dad6bebdbfa905aaeb9d244afd629a531945224300a0494528fa6501ea094d6a029541494863ebbf66947ce721e88f88a07224e2945514a8b503e50304ae90a4da18628a5a1cbb06bebbb16230204c121f2d63c68ea34859310aeddfa477c9db572923a79e034858ef77775ed3c299a3ad1c6fbd407a514079a3a05a13a8332303475327d5670da9edd275d86fd454b6acf5896ebd6feb35b33a59c0328e51a4029c7802d0994d21c34659a01a54268fcc6733ec51d428404110244888d901f427c08e921a446088d901921428204090224884d901f417c04e911a426084d909920428004010204880d901f407c00e901a406080d901920426c82d800b1b1b1f961e3c3a6874d8d0d8dcd8c8d901f417e00f961f3e3c70f1f3f7afca8f941f363e687101f417c00f161e3e3870f1f3e7af8a8f141e363c687901e417a00e961d3e3470f1f3d7af4a8e941d363a687909a2035406a6c6a7ed4f8a8e951535343533353238426080d101a1b9a1f343e687ad0d4d0d0d0ccd0089909320364c666e6c78c8f991e33353334333333b1199dc1f2bc32bb947dc6221194720b5069ad54564838121e005769a904c0dddd29e5144029f704a55c02582847537b878b884908a59485a64c31a61c94d21968cac4b92b0cdda5d20a43776dd993ee2a216bd36636bb6fd993abd05d325d79e081520e01252f28a54e53252b28756df71973d7d6ef932eed32ecfbc48ef4634753a5084cf1960e1dbeab8f5f24da5b4d4ab90394ea0ba62a2875edb3e708e78c715411e851d154a9064ae92abf95d97d7fe4d9e213c57e404a290028a53d28a54a68cad380cea01673a50181803331a3c5315b5f2ccaf4a80922be90d82844488d8d283e4d4c89453076d2b69dd5f2d676f65906cf721565c82a625226eb53a6b6cd72e7fe6c8c83f61bd9f7b7b6fa62f1f250ca1920e39c773ee32d34fe36cf9c718e7ea3fa49464b56a3cb9331d07d23b56d96efdafa9f643572b29e5bac4e13772d7debb8faf1e8eee3e74a8aaf33bb566b5bbab62ec3389bfeb4ed25ce32afbb8efeb7928efd472cfee878fbf8a4ad45f6cf721ddaaf6b2b2de7c57c62a1fd72b9beb4fb9e1966c6f63db128d698f19eb2985df3df9f19d9173fc3b6fe5dc9172fbeb0f1ef99cd7bd65d75fed62430b26ebc6b5bff4862d8b5305deab779df87e5af55f2336cfc31d7a3cff7147fc9b638413a7a93a7fe0ca389bb9ada8ed7ce3e567b24fa6755ebef19ef8963fbfc995dbbc527faa0fd42b56d33a6edf385b759cba2cba5dfc86e5bda6cc26ab2ffd8370118688aa3745bd2d41eee1adaa0a96d079492f525034d6d0da094dea0a92d89f2905f5f4b296da1b484631bd2191c712923be51aae6c40e94d218686a4bdd279d887fcc47f2c434ed2cd776e5483f5eeb6f84cbcf30b31e69ca29a194e2a029ba04aa33b84b59c639bfdfeae3df7ceecf7eb1dd75df2f9f344bebdbd6bc7d76eddeb5cc58e695525aa29433514a6ba0292a4567507c23d851cd3262d6322226c92a53cb35c72c492957004ae946b92628e5084029e704a59c14ea51ca35d103141e8840044650326c61058b0433380268082b18927de183092ce4ceea450941c078e1e8046e61ca137c4827a8400581615980068c17662000d8995a47871e88a40ce002271db0a8e0092b748ba4a417ed58563081952392e0bcf32436f7fc882b863e37f91150a4384e6908e5254fe2e42a6e8239228ae394608e48c2e42a30521ca773144c122718298eb325618229c1744e3d09d3764f34d5016179e17c655be95890488273134c12e7dbca8a9f3e94e72896170e8a87c4c937eec482b3f2a2c4e9254a0f389da35ea048d9703a8fd2038ee794858565a3382c2c8e5271291b0eca3737bd4059711598240eca8ab3f8f68204cab7130c12570ca17c7324549cf3178a83527961c9f1790fafa2ce3550e3dcc40245c5a5380eca4d2f5058361698a4ce37df9048a273144c52e72847c14091e2382cdeb50891ea9ce50589243a578149ea9cf3a1ceb917291b0eca4f2f52369c93abbc4089d2030ecaa56c382abec2bdb0f8f6b2e25dcb4e0e203c6771213a5f71d30b94939b9cb63051028765732450ce21a1a2827ad9706cd8200553a4811ae71aa879a5961c4078cef9500b500b90574aa2b4792611acd898c18976513c2852a29c3a209cd3ed450a27c58322c583b9e2490f51ae78d2c3aba8dbe816af2e896d63b262a30b1b31282ab967a4e4753e704a74db0f2b7465a5449ea030b1c4c639e7759ed76d2258a125dfb66ddbdcf3d393ee85dae11ce5dfc9fb505ef77da80f758229ea3ccff3ba8eae70476c2d3f28d1b1d016249e9b8e30e276e74357ea4a479c4a30bbfb4189d77782213a7dde4b5109e6c9112f144cd1e79cc94b251f3a22ceb722cfe9cbf4f2e4889747c471be95b258a1dbb675dcc9bbceb7e72623efe5098e970acc93239ee078996076f742f9090543e4f9e6304f8e787d30459e735e2a99ba8e6b41c9a99f5e521dabe436c0486d5e72aa4389c88a0d19a438df1c9503aeebbacea5546a29790b8bc905e52d286f6971d6192d35585866b8ec80d202f3a4abc1d2e2e20243b42369d5854b0d95d77069711757b9b8c0d43095bc6b6161812122bb305868b0d060a1c14283abc17d18f0522e2e2ece3ac3658701522e2e5fca6547120b0d161a36dc25957271961929679d9172d9610017a72e2c1b2e6e630794944bca868d6dd5c5ab84721b2fdc70150c918d2fe5f242bb175e68c7b2c1e2aa8decc2f8fc4bb9b0380b0d161a2c3458687462b8701f12be2c5e35baa453e726ba51df91443d4f89235866b0cea03b0cb051ca32837506d10e28f474da91743a9d4e7e72d38b0d2e522727da29373911d98541b95517af2e0ccfbb156f7901e3b552a3c60a0cd1f668b0c1450a86ecc2707181213ac17461b0bcacc010a9c06cef858231390b0d161a38be2c4e535abaae63f938aee33e53a782826151e2881a28af51b4e2f48572a901c3712c2c2d03a05c5e88925871ae068b13b1984adeb5d45861f116e74ead28a6578dcd3482d4a6c4111b8bb79236f758dc878ee553bd141199fcc4626261f9583edfdcebe4b198503dad282c302e2cae52a9585cb5f94b510da72f16cf8613792f96cd5d3c77d96cb0788d1aeea95c585a52502f9397be947f2a18a21a302e9b7b2afe798d9756944d66f3925c3693154ebed275dd0a91c7b1106daf53e79bc9a34fbad70643b4155921a230441ef7429452e2888deb38a256038a4a4e5f946b25b5a06c4338f75a065051f15a76547c47c5690b0b75d3cba7e226ce08eac4850acc469d608836ea83296a45d98694bcc3916432c34bdaa0bcb66f835131008bafbcb0acb02045e44d3955d1b13a3f9daaf0a6a8e05485cae9a40567633aa5e0b40567b3d245175eacc0b4a0a8b4925a514e14384d3945719ac2d9785eda564aa728540c4085155e1559a8a8ac20e54db1a28a2c5490da5ede140a7851785458514516ad28a729a71278533c0a5471a2c0a98a9315de945315ad289b8ca90505d54a9ad28a827a6dd40be54d69450163058ca457e7754f786dde85b175626c3037522995266a784b192d2f3560889478b5f8698361b1e182d4773aa5bacec616a92294975e445f182d8efa84f089f18dc1d998be277c6570362d27efdc0c33ce38b5c0b0ced8644ca70d89f742c1b80f9d896506b72ac17c5e70ab2e5e3e30be2e381bcf4bde7dbeb5943e30381b16ef5ca50994b79458686c322d30261b2d487d4ebf2eb6486daf937766746770365d52f722da5e442c3436996d07949769eb828cce3befca30e3d57967050e4852e75fe75f189f1038201b4eb77d61b0d0d8644c2818d6199c098665c6ab2bc37b9d58502a3044db7badbae022451269253e1818ef94f4a2397c1dcb04bc80420b282e3006b7a22d40d429111796283cef2bc384c2426a65c5cf682551981691f72a9d4edc8a66ef85d492c2adbe9694951503bc883cdfdc8b05b5c212058bafbc78cef2d282d24a5a59394d393dc1ad38cff35e60561c8668f3dc876e85e5844a418ac8258a1315a72a381b17eaa2525e449b7be94e444abc9e6c697849af156779415d21b5e29b7ba8cfbd56941614a2eec5b2b29d3cc09d2430e58955172fb20bc374f23c2f89970763eabace4b2fac3336198e65060b8d2c368fe34a5ed7719c6f9c732b25becdc3c069032b5407a2d3139e9417d1a913a323a30372f2275ea5ed093b65985e1d19409d181debf4e2ba6f0c8ec57d67bcb8139417d79df1ea60883c988d7a79531aa0e2448a4887275e3a70382b1b0a0b291fa4522c3e486d9d1825ce5301fd8197830a9c08c3061f2880008a80d345a162015ad0f03a494981175248b004195a38caf49da490c0643a9dbc0478de0f1e20c5035498c110a6a000c72b0de0e5791e0e53e986e7799ee779385227cf4ba56ed478512fa478f1224a39172b0590e2f2a25e48a9c2834100ccd0c293e249799d6ab06d2728b66de3b826b2e030d0036edbbc48d2c28b2664b06d1bc7754de4a00342133258f9be21e4600508524071427927cfd404064e3d52df8bc8672ab062a309ca79a6930acbb66d1bed9eb8c0b66d1c1786e779a552141af8beef742263032a2a2a2b2b5b161d686969a951c38c2b52a9544aa5c2e285969ded85175eb8d1b239bd41bd70220cee85e3c509326e5061c5c6142c5e38618197174e4c79715d38016546e564fa4a2693c9f47ddff77ddff77da6d2f77ddff7b9e779dfe77ddff799bceffbbeeff34aa6d2e77ddff77da652e9fbbe92672a7ddec9542a7d25cffbbeeffb4edff77ddff77ddf672a79df57e3fbbeef3399beeffbbeeffbbeeffb4c9e69e5fb3ed30e25cf2b79dff77ddf874a7911e509194a602a9da430a9944a271306bed20e567c9e2785e5002eba1b391010450826ce6bc2f3bc269af84ca52d3580299c701d5a5e443e73aac1811515d4e933953c4f03a69327c5b66d5c8701cff34a262da258f17ddf09e505172a2a2a2b2c5e4419c38b284268696969a951e394f2620053acbc008d0ba03cef3b7da7eff3a46060ca0eb670802f4a30c50550b64063025c142522e0021c84600b170861091cc011c00dd0d8c129854263082a5f0a552a9996c0624a799ee721e189cf8446156a944aa91b9e0e4cb0984aa5349660f1e809a6f318404594344a50e3060eaf94460c56707052d2e0c2e739e17910b8c20f3c0005294e5081e33191c601ce48238d31506940214a1a55c0b185cae9b329a1a867e3e57da82e4c41d5ddc0d131e13395d060e2e4a5baf084effbbeae0b4c20c0e7ddf014b003341e308009bc887ce6540302335fc9e4795d88e2e5799ef7555180522a049e67ba9102cf735fb90e7e824189fac9f33caf74e3fb3ccfab411768e0b9ebd0851ba82ca0e4994c26d367329952a6314a26132d956e9c4ea7140e93a90493bad1052967a4f1224ab9890094bbe1ba8e8814c7e19ce886df7444386e6ea4388e37e47322ce44c4e36c4cdfcb6b7393c7bd28d125e1715e0556bc6de3b6ae739693165244299402529befe095bdd72b022b1bc7b9919273dde6463cdf6a1ce99cfa4685733333abd5167482a15d974a9d4e46381b5fa46ebc88b615cfc58773231466db680cf55e9c9ffcf3a1937f279801984a2d464a398c6c5ec439e55c6c2c2055038e530be7dd8b11fae238981c9e17c1d8f82205f362c473ce555a783c98972d8d179112af133da16a70de39d7c170301df77161654be3b5e25246199e129e11ee64a44bb518f16c7ce1b51829bd4cbee292c348c98ba86f5e5a29f172c9c153725307930308ce3b1f3ab9e7411407ca00b8cd0770dadc83e1bc04a301af0ba30ba36319a1af1c9f7f3036be48993c8e2b71385d17d4e1789e17e4e174a552a91454c231994c26539009e7fbbeeffb823e9c52a9542a954a30361490224a059d703a5f512999be530d0d74309bc94b6ea404a3c48bb6e4e031996028104e10c5e9684b10e5b8178ad325d1792c56e8ba1f9d8fae4757d3d174321dd8c574add5cb34b303d16ae694ea5ebcc381764427148e8e8699176aa67ba1bbd1c1d0c5d0c9d0cda43a97953058d0f2c3478f1a9a19190fee09288114a290c011dec8ee6a64f38f305d49b2c674858d81842d8c3f5aa3adcf92526a8352aa85204ca094eef1bd463eed5a37cbbaf5977668c6ac5b9776ebfdfa67f9344b5b49f13fcbf2cb602f662c7b23feb3ac9ae3ad79764f98888decf9e461e39364dd1af61b5f1d136b401ab0474ccc9355d431b56d7335750663e3586b160967539fb8ac5d7cebeffbe5f8e23df1bd155643c29924ad4cffac9a30b33e0db65f6bd83e316ddba39df1d64856f6d98491a42d82d1b63d8215e55a7efeb1a219483ac289ea376b1be6e3064833d7ce6cfef15180948f2894d2209af2e18312e16408273b68aa870f7a7ca087131f68aa470d94863ebe3f6d3f19ab2186e9f0f41a49d6f3d6d2f3ef4afac7fc561124eb395a233b5eeb77ff6c3c633554a8d182524a8493566b082760cc49d21ef978ab975888526a034dd544a194ba68aa260925c2898f9fedf9e4b3b7c6a789f5b3eb7a34de4a73da500d0f9a338870e2add1fa104ec02fb1b84f4ca3022ac36ee427cfd7a01900057b729ab8688df20bdd9dfc463f41faac34a41d264ac61d7d9514411a2dcc3c719e8dd7167dc639e3b548601be9ef0d11f197ecd73219867dc6622defbb938198f1b28c1028a53a34253385520afec6463ebb36e6b3f9b4edba1ec9943238c2118ba1833f62d18b2c01f21ab359d4b1537bf6fcb46d7f88524a84a64030b4e9bf4ff191def1f69aabe92f70cac6f7e82f109a029be8f305e218ebd362c208470babb99aa183355720afa7bf76ae5b486604c46bfc8d7dc6fa47c8737c9a2834d63f32feaea3a9e4479c932b8ec9643ff708ebccae7d52ac892fb3496aae40e3cd98dfe68c9f5f263b71f67d6b5af1f30d4dd723637d1a4c7c52c260335d9a653ef246580d83e51fefeb9f55d8f865defacf271f9473dffc31cb7ce4372e3f88ac224ea247974bcbd0148f2778f00842f3cf7225dd9146ebb91e99e70e31cadfb6084ded4842aaa5aea6df239c67fe4695f6e79f4fdc2ccf174a694f10b848ed58514a573eb3b28b45afc5b62df39b7e2b6d675cf24053ac3028a5dade73a55928604da194dec420bd5f7cbdded7aeadb37052acd5aa3c4b8b544b3cfb9b5aede08db0da6b5128a53434b5626215d2957b6d5bb19a5574f2eff8bbda6d67f8ef8b487f541da827e8883f6dbcaf29a53634b5724a675c5b207a74746481527a034de9f881d7c80b7b528ece838fb91edd233cc2c6d7fa459c4d9cdf089761cf585b233b7acd3f3edebecdf2f7aef48df2eb0f1a5fd74f32fe78776a63fd4cbe36d2fb9c7a9b2f8a557fc622ecde10117fc9cdc87333f2e8d46a5f04abe537c2a2b6e3f8af61251e6fcd372fdaf15ad81bd92d562cbb3c258ffebd5fb56d6f589fcf5defcc0a2df1d68a88f84bb4a6e94a83fdaea31d6f15f70b3d2d87ac46389be66bfcf162f18566d7168915675bd19226d2ce782d124bd625fb34b5d5d919c75e637dda0b1bd9f7f567209bb7fea0f1ad798ae2cf679cf3b9b495cc19eb67daaeb902996685edfbe59d59adab695658c6bb9224165dae1a23ed725d5b6962cdd5846d3cd622129be28f38e7e626c84944fc2523f933de97ae69ecf3e30bfdcfea169ad99e8badcebf84520a030ce890d2f5c849b28a46682a872d2acdab5f5bfeb6fee4ec5aed2f4a690d4de59084ef980311399c2848927fa4abb766d76e9dadcc6598c7c11a499e3217473bba7e9761d7aff1cbdf3ce3ef27cd12e7fcbe3c3471579c7ddf8af745b344bfae4f7e104c144aa90f4dc104a194825bff6c766adfb4992dfdcddaae7efd69bbf5b45d9eb35c69dbdf8fde47e8e87d362685ce27d5fc19af4542297d81a65ec8a094f6d0d4cb045e8c509008271b93ba355e5b348413503f4d5752fbef2a5ad23cc7f1c77ddfe85d5bda90831b93dabfb4db59a29559f14d1d335e5bb41a6ff51076b1d5fa75f8a659691e8ed716857edfc8ce64d8c7df199b9f1dfbadf969432fde97c97e5e76a06fd6b6eb7ddf6807669ad5e51242f3e3474dd62ed75f4b5e0c2b2da554074d391814cc0e853eabb9efe77ce6ecd7304a690e34e530707c4b9a66f5fb1f735d69be5f7bf5a3f719bf3cf507e9b747ef93cb1206db4f92d5748fbed41e8968c9d809e44114d9d9c1d982520a044de1306556b75b9dc17d2d366bc099181af1359d81cdc06a96ccc06660344b446d7bccd731251e1590c20107a5dad2b6d3444b3bf2d6d0f8fa94e2793748718314ea78bb9e5552e6e3cf6ea58926f63fafdd178b366f3f7110941e41831561831894d68033208dd10ece4fd09050b8d1ad8a4d67f063386f3d03d6c45c4be62f214005a5dc0528e5a6a0291baa483a6d49494b24a924519a9444b924da2551279268010a40a90a45514aa5504a80248a4a4a5a22a90049942625112089894d0a4aa9c735a1b758cd12e7b85ce28f58c4b2cbf363cd3353c9d63589ddf6f21861c97a6d919d1a699aaf1bad2b29c2f29b48b52c1231198321d5f286c8c5769b3f48b514adbe366fa487bdaeb1fc40faa6a6c749243f10522d5dae8d03341cb1c5cf198bbef1d547ee32eb4f1bf221212c63d848da33168e4fd3f65a99e71f497be2e80cea6d4b4b96bf758d522e0a4ae9c635f1dbe6a3b17edeb4997d26319da07f194cd7aa59cb78d7f1d61eb2e6377fc85a66eca37525736a158852ce02ffb988a86de972e9fb4578bb5c5a9fbb6ea1176f252b8efe20b04f6a864a29054150c77eb2b5ebe7996fece3a076b256f214c92a3a6ddb239f5d7b844959fef19efeb9fa3371916ff424ec62bbc5aa6fcddba53348d3952623f33f7a00f101844686a6a6ce00e921fa187bf4f01164e681c4fcae79ebd8a965f43e7191f8345166db194d579acbb53336cd53c3beac5986230b4a77c634ed186f9aae3477bdce6ff4d9e9104de148a23338dedf480f13dfd432e21bc9fc107bccd8d0bc6c9409e921fb6a33f3c3c7d7fa0388685333f363668c8da38fd80f1f405e46dcfacc329472100001a5344655487a504ac77fe243c6fbe7b5a5dff8789f56f38e9d9a520ac693b0fb242c0959457bf1ade2c53ee39719cbc8da33da1f4ab90a8c168ff667766dfe31ffec17ca6ff4f323ee99d5a18f95a7cfac0e51ca4131fe16df44fadfb5d83dc2b7e82a99d5a1d9b5d7d6f2f35877d5995d4bda9a8728e5281044b695fc49d62594721390c0c5765b8dcd2fedd0efaa33ab9b52da51a7f444298da1a44833ab591df279ed24f9f9c109da31b233e4c3c38363c487276848c8877686727e922451e213b4c3538467c8674787c78772767ec0f9d1d9197a05edf428f1d909526448c94e8ecf8e12207684867684449bbf3c7d807ebc78beb44339434abeb443e31b6149234fc6acb64b66d7e62d04d48303030528a543b8cf0fcfd02b87270910d00b0693d2213c87a7084fce0e9050cc50939d219f9f1c189424197f8b6786812605c36ae5440ce13b43af253c414094721198c241a03362400e2a94c007f5967c1548629c423f1f18c1c20a8c82d04d0058050258e4807e5888822700600e5a7a40018060217301dd3c03d7426003942b8760f1436d454b0fe85ed063871fb424040774a0d0e394b2be1d05e071436991173450128522d0ed054a3c01021314facdd081184871c60ff5502d6800ac0546f48bd2c5134eb690063501b15279e8220d4abfcaed1434a19c138e804c742084d22e702089081f9a40b912d41cf1ceb0817e03704006929254807e522882022a600929e50106ce48000e28a829878e1f6a449105e57c28a180419906356903c8c087da11edbed0d9a24b0aa21d1090d18e2118414d1368c00e20984210b4e4363738c208d2a09f901888511041012d2d618a70db8245b72a564360b82aa05d0f0d5e0802e90294969114d2affca8c7c3463f5a526d1f75d94a316c35b6538d0784760df06ef8b8d3a9e475db4665e040cad10d08af878d7e434a94a3dbb675dc916dfb366edb3a9311dcc66d1f1743d0b699b68f725b0bd87126d34ac5378fe3bc27366fdb3895ed0adc86a2a5cde3badf36226edbb893122e07b771268fdb9cc06d9b89db80d864d8b68e3bbda0d47d35b618b66ddb38211c0ca76e8b623371dbc675b08df354503e3896ede6b49574e878d83e8ef3683a158edb582e365b003c9a950870d4a31c0636af5b79256eeb68c901db1136cad1542a4537ba791bb745613b713bb68d2b715cb76d3d3699edb4b1701cc79972361d1ce771db4c07aecc70da616bb141030781adc4cdb0795bb7510e887395cda39c35510fb70374f4e5051bf521065cb79936efdb5ab66e0ac79d5cdd16a4db38ce738e05b5da4adbf6cd783438cc6c9c8ae9c46ddbb67ddbe6da382e089d6943715e67b4c170e7b675311b6a85db4edfc6f9c0ddc0ddc0d9d0d18e6e2e9b89e3b6162fd579dc0c1cc76da6cd936d281db69512b795b61a40b66ddbb61cdc0fa61514b7c54e2c1fb701b19db6ade3366f3bb2d9c009e16ae056b88f2b6dddc66ddce6da6ce056b8cfdbba52b76d40b66e5b6da88d65dbb621db0d9c4af76d276fe3b6cdb56da618b81b9bc76d256f13c2ad6c1d77c3d6751ce771de2684e3361a38950db59d3c6edb36d76603a7f2759b77f2b66d03e21b8e1d27221d8fd2d66da8cdc3b1a150ae952172dcb0e5e06d1c67e2bedf5230ccac1cd9366ee3b66d8ba11f35299334b632985cea4b8c4006184ba4388207945423cc0819410c1af402040a8414387820ea1714488a144001f4827f7e8c40544692971baa60c40835cc089102878c905aa303408cd0a203901795cdc6085b176cc2342a60e3685030e4c20d3161155c4b8c0ce096cfece011454b0a3884ce8283cb608346f10211342c2980ba27004a3b4a29f780fb240c6f9879c282c8b6124ae90da5348852269422a194ae682aa5aabb8e3013141500d42009f59d4e2615155369a5b301f575a50e0696a1257c604e2b93ca2988c7e2b2792c5f102cbb6be952a53004208124530dee4379ad161b827820496509cbe8b56a2cc1f9c85152e26d26222e48e221898e4a009ca7e225616521490c285bc9a5c2c18725388f862e8607493c8c9084031014185c7006d01959a289a419504c586e4820a9080ce649ab602189c84619091790fa505d4ba9c873c2004b9c3c5517d36389254c81dad1032827332050835b29f9a0fa8478487e882c9878a1b45229a2b283c989b7e313c28409a430c2040e122003a5454c42002e92564ed90404d052e3b2912069069b25543e212695538d0e088f91ce069522df123c2d42a72339768aa8a08eb0088d444c902483d7b25131b95e6831a9acecc01491812495d3911b6205482a75a9d26602c2a4521a62daf1ea61e544e9381d31a97c33b4e8a074f07c5032dca861071a62d8715af904edb084ca09fc7ab4f400c203f4b1781f0d2557678362f174b80f1fea53f1644a48bc203e6ca51cdd4b298619d449ec84ec0cc1715289010564891c9f151fa795a783a7838903493b6a783a251ea51b503a7835b8d07436309104ca6c9dac8bf1ba5200608a6000be5878008c2db2c082035410400924907491ecc5b00827423459a2440828c90f475c417aac7600400eeec500066948e1094be8e106003034ccf04561032f34900120767a70d90003cb8a898b149ce08a2a3440c505a488020a252b1d32e0042490c619568809218528b000861790002bbb19a2f255a1802780a07e10c606aa7009b191e1c68acae9ab21070946e0e4c71f9f1f788aec5400014e3461438c1f2ac0c2031c5082c9122036386e783800a30a4b6e78b0417da60f44390108a67800030a10000b54a00209f8f1b919a28365e302b705ce0caf0c8f024786b704ce0825313620703ee07a80e201cb0e381c705f7029e8b0e08a3ca24d87930da51a5a66e064e060d86ea85e28d9e0545bcaabc1ad945438d4e9c47d5f89f3b66edb4cb4c5a5cbd1ad20c93b409297c4b4c3b7ef0a4ba43290542ab17c3b0061094f0a1a4f06162a3a60224092970415834a0d380490840ac213a2bb61659b584e454e414c2add101c2aa51a249d4a9074c3c91228201d145460294252298da4120b0d3d4862d9302b4842e1a8c17d434a32a50648816165060830e11920c9e5c5e5a58b51c99c70a8d260a2c4e314e423d2b974444e5424753d34322615931549dd8a8906afb542d36d1e8bd7522952e2f10561a2c1a4622262b9c17203850315c31744d705264c3474593051ea220900445ee93000d8e0b9585c4c2a6feb62ba1c0fa8250613f731f9727c3e25186a6ca695aee4b1745dc7755f77ea502a3578dda7e4b3e102a4a2fa4cdfd67d9e0f4fc6db4e3374399640e150ea40520d2b965099bc1c271d26bc223001135f94bfa8f658118592a4450214e487901098dfcaaa6f7be258d5f5831cacedfc26cea6c3ec5a665c24c80fad61fc471021211fff471d6fc4c12fc24662acee3ad2743db272f3bfa8f41e67e2d23bb8837eb1a585fabacc3a6be5afc95ac4c1106b1fcf3cf465bda1835b63f2c47adff0c86521abe5720dad429afe2cc32f93612fb5f5d9b56fb325c5984d9b59528bd67c11a9345d8fb85c432bf75a7b1cdcda921ede0c1109c7fa79bcbfafb57f7a8d74106bb27a6beb9f591d07c30fbd16f3fd42ced23ab459cb956b07f59bb56786b7efd3242bcbaf25ebc6430eeaf0c848f29499f569ae2fab8ff8a6d0f3e0213dfefbece0a112e75cec439235872b956e6865d58e7d2e80e302dc145598620a530c610a30a698c1145b4c3182294440a98957ee2e97711600bc05007799d85b00f0bb72771131c48f5874515a72c114494c31b256750a1d28a541684a8a31ea8f947a49444020858b140438c7cf7eadbbcbce7012d7eb4a037a5d69e6cd90684dbc8374dd75d479df13e7c83e48e72f4f7db15877d5c1b20bc3f98d805d7cc53735d22e5dae2158ccc5565b6008f11c7136bde67a76adce60055e30da6a5e253f9af54817899884fdf9e44798f84632fa629a030496008513a0108352285480f348b688cee0f8b9d2b4cba5cbfca659fede98d4b07b524a2df064044fa478d2000a3c29712ea28f3049be609996692e97cee0799ae598c15c336c7c5851fda3118bb0fd477f61798f581c5f9ff7847d113661322313e672fd784fd9e73722b1d676dc767cfc45d824c90afb7dc66cde178bf65af2ef9bf83526615bc3ee9b1866969976f477b4b11b976b28ff48620834a1141c2d6947120fa96debe3d3c46d8f34114ef2e3f1d44338f1a70d418045e9104e1c2cc278bffe621dfdc2e329547b24a31d4fa10790411f00034a31edc8e5ba11edaedb3c8b304ee2720d1139fa8b847148b28a0ee08203bea09422a129074001f393641563c09a3e5b24598f1a3006a514dc180735408806e434a00703c4a0e0cccc4c6b86c679842459c5d099780cc85af96f9b8f4a9cc3b0ba7e0630c180cc00211820c4001e06c4c0001b0b4001a5548688e780a3e37f7f3c06d463fd3cbec7802c9ad58fc7dc10f11c4098104cdbda171dfd6585477fc3958ffa7715edbe4fdbe74b57181e4fd8f8f784e1f1d4783c3558fb22c7e3a9433c9e425b89889105d0574a0155d497028628d5f6e6c6e51a22420409e3b85c43b52f7a02064fe0277224800b4ac1fd35bf5f69beebf8f756d2fcac9f34c18b4358e8785fec63c6e2ad2450028448000c94d21d9a4200180740c01208b839401728a5383475001450505ba789a766854a3e5cf9b635f2e2f15692b447b48d639eb7beb6ce2af6da17dd2ab3f98d306d7fc6d6a8d23ea66d295383cd6e254dfd16a9f6e8b7328c547bfc4b3b542462120764c5b4f9d943d1639c265c792886aec7d73576e4f99c599935b2798b766b4b5afd59f48fede0bc706635bf51d501c722d1e618d68ec797bf6cac915b57b2f5a5ddacd755ac1f868e6324596527aeadbcf5312107717e236afbc4da8217fbad4f8aae6dd5d6f5b6b9da237cc4416d9efed792a569da227dadec472107593ac7b0e3ede323599989f3be24c666fd3163bfb648ac79fb337130f4099d26c627f41af9e3addadfb6c290b54f739fd88b042df1ade3e271d4d756d2f45aaefa9e3ebbf61cc9d3c4a67f8c7c2bcb58a62b2dbfe932ebe197582864c956b55c3336cb1f72b0568bf0ecf7b5f58642614c931f264332ecb36b6f3813fec576f631ff236ffd38181e1932e2b3930436e4b3d363644708e6f3c33394a3246848c8e7270716b4a3e3a32494e172f631cfc4c1ad2de963fd3fda1f73990cc7fc58f3f6ea5f544b7f261ee4e3e07dd716c9413d1b9f3cc2b728e65a2cc654a789a776fd1a9bf93473d5f98dc6eaf7bec634b11e3d699615e93de3220e9a2cecafc9dfb5fc46bf726d3f57d7deca6ff44798e62d4d62116f9c4d172dcdac79766d10af1edf3c0e96f9b78b96acc54e5276ad9d5d4bc6ca3af38c65311ffaf1f12121253db56df329be90e7e0e08e1dfa2f69f73d7dc6b5ad91bb22fd3dfaa93d921f2d6a317f4a3b1c944bd97bd276fdd15ff631f76153448dd3c4aa5fb41c17a9254a4965807a09f7c33da14928e570918849d149b21e39de5fe2a75c6c5b0f49d216857fe4436634119b3b945b02d6f6cbaaa6e99a451f36a7cbac0ff98bef97b57a44561f36274dc4e66f7d128df59cbd1cd4b36b6fae4cba9e21469208a294861b9342e1c6a4def958c589d518125b8031d7ca5877ff588de9d7816d5dc99b1b224a88fcf9e475469e20a08ac95a35ff65ff45b419abbbea80623e953859fd08931f7b1910f8b792e0be95a40dc148b25e0ccb3f9bd9bc6130b28a36e3ad2d2d2687a66a54d0ad2b497eae4663ad09a52cbff195c7d42a595ddb5a0c358e52af4efad6718f6ae22d8283cc13672338bf1038bf1038bf107a6352e808d384b00fce2fc41b61f58f3867ac4f43aa3d46d82c6d9231d723461808a9f698b00a2b476cf303bd866ea50d69fd49cab3b4d7f6d42af9230c768493603ca4796a957c9da76020d5f28db042e3efe8cb6396f90852edb91593e311ce62cc6fbce43390cc08a8e66a82faac94d227504a4b9ada5b9c423a945297eb8c7157ade2e80cea8badf66a60d1d43629a5beab7f91d7be88526f87d6c02642e946b9cb7765fd59fba255dd5567ac7fa4fc0cf4b35c93603cf423ce397a1f4ab90de80051ca55c169a028d732ffae4ccc321fa194cb8059e6233fe21236bbf9f7973557d8cb60ba7e16afb5e48f309dc18d495d96583482c930ce26acb665b06dcbd8a9f3df230cdbafc91a538a4832a588941f568a483abfcdb9c69ed427424f5c94ba4b84b5dcb5edf8f98bea50ed8b6a79df777cf38f37f9f38ff9835c2e0d33b5266dddaff3636efd333beed3a4e97a64639c619ae6728936fffd59feb1fe116df5df37927fbc2f84f30b21be290434f4b38c34c4a4b62d5977c63d2f5eec335353d3e3a8068d3c483fdeaaf5e7717ced13c7c8b2d1b531b26c542468094dd723458296e4bc53f4b3538a4d6c7ed41cb9b961ad889462931f97eb2a6186a6ee082e4db4bb96789ff58e2d9aba36ca2c945394492825c249eb62f3f4f1b718c3bb956b49438a7c02114e5a4338016f15222b401e29b202054396b7469ed0a8d2fc9eb2734848923527f47acf22131419e0e82fde453c4456a0204956b1120d40084d1125b167582a28114ebcd5dae4a9b51dc9138b766681a8ae472fbb421b012da4e03eb18f5fdabd33f656b5db7a2bbfd1df1a4ddcb5ac9516331b6393ad219c80f735c362968059108a2fec8bea0e8beaf6b1ca7c20034366844cc7fbe0a1fc4ccb6b64acc6ee1be5dfb7defc4678e63d0ed6c898d51aeb13e79fdd3ab2f0f6b17ef65559234db192a6ef8c42a8e3080c406578673c32ded005a54438f196aeb4f18db44b11adf80225c289b77478bcd61ac209de38571f2bed45da5a64e87e511d7a1d3462f16b6f6b637d1db4ef0bbd28a5329aaa50d46228144ae57d087fda100a8552a1941ea1a97a041c7f7f36c958e83f546ba03414239442694caca67619f622b1925eb55969f9811cf46b9d8547c71b7cd0aefc4fad2dfe1cfa406d189e2838de13cb5ebc9f5f96826541290535de319f7328a538680a2685520a4453b020202b9ba26f0bcec05fc14e1494150106bdb6ccbf7fd43a868a7882525abbb5748c878a382ac229a5b36bf789b3cbb0d7ea91e3ebfaac624bd7234d0418faacd5b7f517afd54454912b113f5028940ae8daa2502815968e196f8dd13259a687910cb620a8453ccac8b8b4b9376d45841ec24bbcf5998342a1546e8820619c526c7273c35a6dfde3cd0d49d61c97eb2647d7845c571f2242a4149bdcdc2c2182847186e0c0103f43b8841883523a044d09e1840a4d09a18410ad541066504a41ec3bbec47ac7908b2dde35b2b663e3bbc3b5a591a74ceb17c553fbcb5d3b433f3ee08fb5bcd8debaebd3b6c6d6af0d6148b5c43e608d246bc65e2367ba0c9f76745fa0b7bc45560fa26b6283549315342129a87b729a841e03fec75cdb7ccfb2c4248937d20e132728a53f34c5c4c564c7923028f8d9ea1f758ddcb9f6e434f1daadb38b49c7b792a76877aea6d720255750b20425519424a1643504c65007869a500abeae34319f664f4e93564c8e194f52bc56db226db3effa31afd592b455862d2cf48c65b4d989cdd35b3563990cbbdf99fdfc467848e8079452219a128a22244b057121e808a9a0a4a01d945291a6809001a5f4079a020209208028a54d680ac80c202a8042d06bd5c4fb5a570cf8b15aed71f05f56c3bb26c6cadf36060c6b7a8c3cafd06ff5990cfbcb5d612d572b5ad9df8f851e03ae689ae0ed2c1608ae5afb7eae40ab9a26a17f4cb4666d3b495a260e6ea477855bff187accecdaf1d6a39a471936abf87f5d57bf5f543749d6d63d4fdad6ffb2b0fc6d61ffb2708b6fe4a10ec75abab617d7aae9ff4540bc9dac2226f5fe126b1ffa690205c03fc2dbade3edb55b7dbc35dba76d9f7d767d7a0d6faf5ea45f3f3afcacf8108152ba84a67ca450aa6dc6de7285a1c7801be3a01e7785a1c780ac6a7b729a3c6daf64f585c65244d230f2f7785fa77a30588bb968fabef52fce21c99af3fa8615e4f456907355837dac564b12e3184cdbfce3c5a6febc4ffca5ddbbd6c6fa4140452226716af94f204a110936ded7496290648b96bbb6fe11f6430428a5eeca5806d66e7599f5d6cfead6ae756c9bb1cda657d755dbf1c7fbdaabef9a3face971b6c63fc22459751cc4dbbfc892470ecab0974fdb7eadff91ebbb352e5d576fe97ce2cf759738cb6e26c997839accd5c88ff02df23ff29de4f4f1331635a61db90eff629fd0653c0e9eae6d4f4e13dfe45965afe3208b24ebb62eb34ee35b9f44fa5cf9f8a659f3ceb69a0e665b4d67857693674fe8e3b7f0ca65d8e6478dd77c512563d66b8fc4416dd6bc7dbfd6d567d7eab7b36bf1ec62b096ff7c42da6a54fdc958bd4a3e9fa4ad45c6bb495b848cd5abe4c998ddf98d2ecfc63e3a19d3c45b3f68e37b6b8edeaff5ab766b0fc6431527c95871b08fd01b6135de4ed6f3c9fbc78cb0fab36beb9452174ae9182997140ae2e8c8643fe367bcf53db3c91a6f5de5bfd7b674517d5363f162d776c4f78883ac9507f5f43848c338c8837a7a7cebdf3589e7b20475f93b63d76f542b0d1cda18e78b636462e838d65cfb22d897369bb93e29c2f6ebff8d8d5e635224abc626cea6b6a3a56951db52463f798eb894d13f1b6d8ee5b28cd130234b5698f95f44921596efa9b24af520a5b62d69f7098bb9b6ee7be232e6c9a2fc652e4b180104408af7cca035abcc0c3803d2c4886fb46dac07590f21a5ee2aa287937e72ac4f3adeaeb78db995c94eede36f99a569ba31a194569ab241bab962a6471135fac9daadaebfccfac4d6e833d07e6d5a9ace1f2bbf8c296dfdd8cef5694f9258c4e3a9f1786ad8cc6a1ad848629afe4cdbb0af76936709d31546be78abf8b11afb581d7283528aaf0f800247a096521a044db93640cf32d6a3069c89898d316ff3169162644a114946cbb85ca58814e3ba8152faa2292143a0947e3425a40794d230145d1b79187accfd7190b563c7ca75e964bdf9f7b5aec7f9dfbcb91922f2a4790e11117fc968614ab200c3912754d244498e6dcb125f6fddff1f8c8d90e46b280c18a86a480b4a5dae1bd1345f3c439b901384a010ca4240423404b920746f85ba1586dab523b3832474852c24ab9f1086f4e0ce7d1206aedc91ec380f477293b72652db3663d9d6d87c3938f28437449884a1cb70adf9b7ec157eec77a8f5e719ce667e13ef9f39deb56afde25f6fbd788e38db7ae45e7fb420398eb6ac91b4d98965a7fd239a585f58098e093c0c21c91082a87c409f1a3ea695bbcb67d73a11ee1a422646e63e09d330da3e5f476e6e54bc75e3ad202711fd7767e4c9ff403eb52faa343084854f13ab5865d89dc6ccf27b9c07b85fc3f26f6cf483069c89896109796bc96ac9cdcdc8e32d216f65a01b1f6f1d21627e06cabf6b16ef931be3a09e5c96fb8590dea726fbc7e11123bf790af1644147d2d272b0e021a98ae78718a88a27658b848e88418f7071240aeaae96d7ce98cba5f7fd3bbb562ba114051ed4d35382940f4590b6ca827a7a7406614646e0a35f353d82b08845cce467a3cd38607e8db5effb252e43d7b696e7dd2992e19783b52f729d4712d34a9bcd6b49990cbb66d7ceaeddf181eea4a88e182f1d2d2878cf59ced1fbe800513063afd189f9d6717d28070c0a6ad6675caebc762b12a539beaf1dfda5c221831ebd4c85332556cb7fe42a9c26ba1ee1acc0baeb4b0c7c5f2f1a055f333e08a11ed5bce5d8e766880849d61c22372311f197f44073f3841b306eb0b851c08d4b7583e2410b1a74718d8cb9d85b392a22dc098658600813d5909c212c2e12b8aaca9543c80e8454c10a4397d995eb9606c3fb640cd216420892accec3c356c656db8b7f1c0c6942af91d6732be4091206a909920242032047408400f16c786003c5e6870da7faa105d50f2b543f6a3f747c94e143023e9450f990e90104550f1bf44882528a84aa7af450d55ca1260a4ac42b67086fb93c2626c677f090e19759d2f5b6de2a7f5b570cf846b87c1ad78f0c8f90f370a11926573fe1ca657807b26233f45a4c043d140a5b2dadab9963844e5c1b6f5db9ddf8bac2ad6daea27591aec58b3dd4a13e49d35b341e13ba0c5799ad352b2a9a2dd00481c60134339a1d9ad2cc0866629452d72709e4317fb14f8e8fb70ae13c5c88d50fb8c9f3c96a6441d3664c3b72d60a1653c72f4b1ea4da03ea6defc91a795aadd54a8679b88fd0c1fadaef9b78e87d34f639fa22180fc97ef6f9a3df667c79b0cfece2cce40827c1196fea81213fa03744f6b5d87cdad10d11f197648c7789b3ec3fcb342c04ad70bc5854b59cf20803ef9347097824510af2f851f1d01a93be4fdcda676c47161464e9ff1d3490e519cb543b7ca094d2fd52b1cef8cfb2553d121a9fa62b29c464dcd5fca0fd1a27d9fad419ff088f77878584c30a4267d75f2b332825ab6a05065d454129c65bb592e14155ab20aed22185234cfe6719ece8afcb35043bfaabd2214587130a0efdfc04dd9a03be18bb4a763843b5c30d543bec40823990e5a681e016cfbcb5bb4abb0120440811e110feb41d6a98810a002c000049c15a25f31b61dff8ee2a446eb122ede850840e3ce860c2228726aa1c00a08209028c14158c510daa82a1c1d4f09285170ba85e8450bd80de04df806f4ac11247c7f1ad655c7ee9d77a51a8abc3c2f19e64ddfad471b986c2a08b5daefbe31ee30e8a676c0c61b78ab0d063dc5d41a0235d72fcea9ac763c07fa17d9ad7b6c82ada6db3d6f11830e3306ce9c8e355f9a7c2a10b150e02c001c80d65a86ef08282e1c63887ae2d2b5cf9e7d6f87ef417b4d97456c813ae4ead2d38fee7226155dd60630319368cc086d086961a485043025435c05435fce44023870672fca868d0828a8612509a833bb875b65a4776d69f79afaa3bdefea4ef8ac47a4d56d9aaa52bcd49b2c242af4f621c0382a0b8df5b7a56f3d76eadc572353f9b27aeb58abc9239d662857e3559ad51fe5b77a56d0d7b3256619eedbecf83547b6e12a4da03daaddf7d639f377151c647fbaf1ffd9d0167c01a23c765f57170bcad9810762741abc3d04f9debae63a85fb7b44c867facf94b1c0fc3203c0c4347c2fde68648dd55c75bd95b374464e40b11292d4dc8ac3d3fab3cb8bb07c0dd9fb46689457cc330dcf11c5c6f7b4f0faa6d3bdaf389e579234bbecc7f24b3253bf57574edd69e1fd8fc806a9d8b449ca448c449446d4bd8bfaceeaa03a508d58d277c490d5475c389036dfb860eb4092f90018e3646c60b5560a1ed082fd0743620504a9d50958d336cb48082a3f61979f60b8d56db245b5b1236fe262b0da6edcd11224818e70811945227542a1ce8f84f863479f5b85c3e6c74fc91eb93b6876c6c245e2cba8931e9323c64bf50fe8d977c2d16e3463849925729a3c77be27c23fe1298fe8d8d6e469e5a4ba8a6d2f216919c6dcb128b442e172cbf19d3e70f94fea0aa140e2a172eb890a133f82e5550ea5a579352aa552e41287597bf5c6c1f87527aa22a9795bb543592a0aa5102d05d372f354c77bd9c4c54357c7097aa060e940edd6820976b880812c6d155fc25aa161e2c658cb7e24c62da51f9b45de25d552c48585a2b61ac24514a81a0aa1519d50a55e9804a658361ecd4b0f16b588f5a35343b804296be95344d9d7ddf7ae4639158f1f62d9eb876316d766dcc3df53d71cd653c7e2bf8b9ac5d3c9eaf4d1f1f050454152b5d613c2ed790ead405d58903aa93124a6912aa3aa1549f16aa6fab3e1c27a84c50a84c4554a695ca840a4327c9ffb196d55b61686ff5d69083ba3cc56c8b7e42cf61e5ac7e2a8ecbe572e91f570e6a2be3a9fb4b5f7918ba6bdf5abb35f6423018a8c7cfa112f0810a35766a5509e98b54a52314c44155a515e895e1a3f2a2a0142cad6b1ddbbe9125f72351795bd5f1a0bba2cb94d21da8aa4ba2ea4e2a6e0746a88a3b808a1ba22d97615d62f163fb3518eada1709a9b60fa83627549b8f6a03808ada4045ab50d1a134ba9046156920a55184d2d035c6743c266c85baf64836d2fb84de0a653f2ed75018d3f11870a5470bab7d91cba5b7c6a2bf1cd46fd65834391e03d274dd5a87c7ddb2c87aeb972bd7e1f18f81f9597a55fba2da17f1f070e479b336547b24615108bb38ccfb673431d7d75ecbf5da9835bfe88d405dfb22ade35f337170fcd3d23e63cdb3e4857d6a8f64d4b547827db00fc7238810949ef1a2747659ad211cfc8cb79661cf311f53cbdb9d0b01a51c08dee64d29f7014ab92c28e5b0a094f300a5dc1534b5052ba4b640066705a55c07424a390e6c618b2d20e9f06cc1c55ab979faebbe11f873112d8441c92a7eaeb70e69a10a2d98946ae1c89116562838ca8c1fd366e49005276421075970220b4364c1f398cf32d9bbb6fe58c87105225c210757d0e20ae3155aac3086154260859a1574a094b25acee32e1de33e7e6ee12db3ee0a438f01b535718ccb634056cce7156c631ca4f3192b6ded56bfe4d3aa605485a12ab0aa50830a25a04216540829bd5889c714b16f04ceb2988b6f9d59acfd8d98821553b053b851860aca984229fd5ce4639f65f785ebe7224890021852e0420a5648218a149090421052b0210a4a88c21694a599c88cf5839cc65d383a1ef3437396a1eb6dcb1d30741788f4e3ad0e227dc6af8d7d945c9e8d7df6fd5bcbfc403044010a4fa094b6a1a005144c90f546961ca1e0e362ac1deb2770e109270059e3ea8dacbdb9f1164d57d8f846e88fa59c70052790c00946382108a54fdbde04322cd084254db0c1841a3081092610a114dc1867afc5ee0fa8ab8f9febd63affc6467a666686669671cc48db5e9ee4cbaaa6cd2cad56c9306cbd765d6975e6fe02d2f1790519797dbe05491c8e3c3bff91eb9db16cc70e7fdab63a3cbe5ffbcbc18c5d861d66bf8661e9b7a22df1c5e293b75ebb3af30e1dfcd93d3a0259de22eb9d59bd72d77eed35c742180fb1504a85a0292098c25c331b738c5f9f15e88d6c92df750bddf854d87843646b9ba4e6331a99c9aacea08c1e830963dc60bcb6c85b2e2c8edfc4182c4af53dc217c9c638e8a8067d9efd28d62c83c9648fc5d9dfc739ff45f0101324b446d2d23c83236969e211a8a0943e4945c08c23c8e00a8f201ea1074a29a83ffb9b58d47e6d517d2664756d44d094184a80db9656873592acd8bcd567559ffebbceecd66f74ed896bf9c4352f12ebde158542a9e02fb10e512894cad15f27abce2059855c2ef197e0b860309f1f1ea1a09d25b01d23afa09f212118cc453b33ba28c4fc8daccea7f84743c68fc93afea86b420e175467f0080044a800118e78a1c50a2fb4844184d05dbae61041064a81c837fa24261ec23259fe7ddf3c7f2c45a4baf5eb0cc2ee111e498cc5fbfb33cce6fd5906cbb0fd1ab65f17614cc266d7628c54cb176fc566594d0d43aae53e31ec4bbb61b5180c8bb0234cd3307c61fb356d8ff608f63491b6717e23aa8661f21c7109936523186cbf46aa25cc2c4f180ca996f68db05ac34c58795e18522d616679c2f66b18b9376c76edc646fb754d84695dcd5a0cb65ff760a5072a65f0800c0acb0f6bc9b86b7c197d92663ebd45295d020f1a4029a5940e8107413c28c28316a534635829225d0b2b452497ab149178b0ed400830b2baeb3386ede0891d34a1608ddce20e82505d5f3ab002a594ea7af4d2c10a74008552701ffd1dc7d738e6bc72a07ff6a435b2d974bdaba83f270760502a235ffb3856cf4115360749945270e3eb39f0a18684857240f7c578b748328b8cf7100e8aa054ebb8f6c6e51ab2a1396f86881c21c99a03460e5f34e10b2ebe30bf08bf40dd40043780c00d746c50860d78608307d8e008a5343ebbb6c75d3f3a3f43d7b65adabe3eb73e894e5cf3cf3a4e5c53e2202b2cab2e5b2f8bf4a4ec8dc8fa46e323e12119a66d6d8f7edf9aeb39a3e9cf32af7e8faa29e4c509bc18bd384229f85e83296ad05383f12f1e5d66bd16c324498310d020a4c1cb0c8630030378c5455d64418d90010e9490414c0c8810830ac400090ccc80c10d608004832218ccc0c51328a53b0c8b5847fad063428f09674220077535eb39b3b1b26a1b7a0c88770ec35a5d834fc6ecb5d7cabc765fbe63c76bc70e7719f1e1f1097a3101ef513535173cbc20092f40c10bb07881134ae9786b6d8b15e985f46adf2f351886dad6d0051c7041e9021d5ae0450ba2a094825f8fbcc60ac395cef662678dab1e30680b30b6e0c0160bd8a2670b1516b4800501608190155c610556ac40c90a6e80401e03ba5e1ee38a0165d86564a57dcc2f2ec9fa397419d6f8665d71c2bf78571d9a96a62fb656c45a57cf587f3ef729fb588c5681112ad8910223a4a00729b082520ab28056b46dc131564d30cc1f7a8c4b0381e25542370f9458c8f5cc127df621337ee343c6a7e9d3f4adcf1f82d884345d8f84de0a41960dcdcac70fbd9298e6e56f5befe71af3a5dd4048b547867d759f0459ab079d87d7f4083dcc788bb5c8fd9336e4600d4397e1adef499a5ed3631cc7ea35a4375f571d70ac7d51c85ac9f01b6175e8dad671ac7eab51c6b52f5a39f9b4d6e7eabad25e8ff7c44536f6d9d8e7c958bd4a2ece0f847dae1219f942d8e7071ba794c2603058cd24475cbe59dbb0df75f6e48f6fd6862e96bd4e0d09672092469255ac21e1fcf271bf762cbb3c58762d4d575ac6393f8c52aa034d89a00494522a82275e267d89e008a594de1f11ac68188a0045c1f1cdd7f8414f9216c9d1fb9c425a4c01b5d029ab161e023042f004ed81a64270848262ccc5d775a58d56b4a710089c008230c462c6392159c51df041d084cef2791fe73722e6826086523a62f1a6f6488888bfe4a6f6486a8fe40312f8c0ce0760b21082e784ba487cdae8fbc459106551031661504ac1ff5df3298a47baf645b1539f5e2377ecd8b103d4b52fd22459b190227b6111caf07e212c6e98f569ae75e06c8d62e56bfd8a3d130f1cc1035d501ab2683c20e40a255c21842bbcb8a2035754e08a9e2b362bc8a0a0b69f772dbf91054356ceea2714693c0664bd91d53774b9b085993a5c79c8125afd84eea2f1981076ab18228542321ce684214bc87978ceea27f418f0e8af9015596c5b06a966a814f08be6a99e744c219a111000020000731200303824188c464442b9709e44e30e14800477be5e90509989c32c8829849041c41011108101001011481b003d5ae49161de31ce379e668701cc2e332f29c345b916b387b81a621c08f0eea419e060153114d3edd70e8f2eb665c0beebb791f5b4eacf4368e324e80fa288c51efa52668300ab6330e4035d1f206ce45ffa2640392cb7b0a6a3e7443f0f7d7720c93b158ba298a4f4215c2c6f7bd8e0e6ec838a3dbe4bd074d5acc0dac947cf7ae3c475be48e7f23386fa9d38603478161e6d7f6a6460e9503e419b13eab3e148fbb23459f3bfca5d670cfa3e2386def5ede69d8e99af206435bfaee23df421bd5308b456158b5447e2494b4fd06cc5c34dd760f929836bcd1f827cec56daa5b4d4db9c029596e13d8b29cfb73214200b1932e3399f54539cde57b0afbb3a147ec1e86fef4562662f9eba99ec7dda765b321333ac53871756d3a23ee4b9a46bab499601bbb660bb455a1cfc2d6d8a0c8a419c1aac8072855e5ddf5adb1c0378430372d2a766b06e2eb6a8b61e440983b88375e4e499b160de65e0e764760743296fd62af75f6f28c9dffc350501130992ac50edfc32ece848e928ea2e0aaa5c83149d7d9848f74ab2c54c0cc09e337df0d2c5055fa8fb6736900cc948ae05685b023d53630e498bcfcda1df55bb9cb210fd0a50110f546febdd5dec31ec4bc9b620f5ef4afdf2089dc95c60f9a106601fdd86ba03a58dd6fba79a2cf64e7c9b3f35886060cee43a015e673a511088391edd41f88fa036e28ac664d24dc75e3e6976fc4f6f7ba4f3aa8e1abb4a5b5e22a009dde24d23688139316b1cc6ff490d7514388ce9b840a123730fca8892e0269df1293fe1a3421255bd3d4cb5967ba99f1caa02ca2f240ac5423689335accc77cf2e70a1f21fec8b48a577f86e4f907df3ec2e5956996db8fab87ff2fa582a720e339ba7acbdcdba2dc311473bc42cb99f15ca42a22a3a5ea8e849ef473caf5e3797fc184a916becc45b22e7ea0320c66edb76932bb99e40a58d67aac611dcd2b14c6e966ae7bb29ac5b77ae60192281483e569c9dcfd4f4bd1343176e5a60430d9f97e8cfe707951bc22c011d31ae7e1d262e1328994305bd339a07f94b0cad91221d28112ae02bf72652e66fe932dd1852595d7197a0060aea580c8437f6c081a17675ab6cc07c0caaa6ea029c052ed65b90b7a0f644d50e7ba00683a38ee9b40e8c8351cbeecd608e74cc75fa13ca7faffc714252971666823e3146dc7e02a4e515106a89da706b03b5b8bb1052594a5f3084866c3f4e227f02360ff4c504b037f04c3eddd389b2303a98bb4aba4182cccbb996c9f79fb308cb515f4ed0cda9d959b2ad3131061b08364cf1411156517ece4c6d94705781710edefa48b069ecd8bc0c66f069afccd7eeeb209a485267e882a989ea386422f7fc7a1f15d2eca27da1582cf422a7b880db8e4bba42faf2794f7a865c00571ac411df75320be6712e2908ed32fb409d4b5c0140d70694d385598aa3ba7981523d37351d6ee68f262f6f0e3753724629605f02fca4a441d478fca230ece5fa7d5591241e167034ce3af6266af8ee04d07180bfef78691ab4db7624f03d771196012c9fb7923dedbded529f40b2094244a9105402373b93723a87856734c1efb9178aa773faa2b208feaa9c3f08512a7410213c6141a22a097449180e236093cb2e6dd2061e3d0d32f950a0efab0c740ca1041a5c3c2d06a8e6254ad92960f6fba79eb96a87eb21dcacc8657c7110b3d08c9883e16d022fefeb23beeccf3be362682411a931698a209338a1429b513652a32a4d9f1a9e4997857673161b4452ee80b27102f34c48ea1b283ed58278fb0dee0b2af05c030c24ca02b8e45adbe4b893d5a9ca643190599359ea61809c87b085fdff65382ab6ca1d1452f998ccc4d6bd01731c523f6b1463e8915efdbae2695dd2426e3e7fb546b9c1a1af7ee2c6c5aa56dfbc84c6266fc8bf712e37e8dfc4e18cd0b537093ad3e5a0cfbca1be2ba509b50d6ddf40f061c13b794212e722e42a4d5cb1e42951a20bc38096a673094961d7a1a4196d43158bc9085278375e1c69f4dbf43e49a966efd2c7e16e79e4483dd4b5514fdad2bc9d995d3ac6630c7de4fbc8109acf9443376e02157e6fdbb84b2dc10a501c5e8e1b5ee2efda2cc59d63ef2ed819a8631c714c0a2d1c137e111c1576e178130699449db03bf124e0f94ea8d856e0f17f0cf95f5982ccdf97be9d8e2d537b3904ddcf8546a83bcf3127be86136b2a3b532183c2af6a756ffda5e471d6974bdff2adca836c759bd7eb577d80396a8f29fcece9745b987a4ad772aa3491f38b53a44310b308062125bd26cad66fd44484589eb2ca20518ecbce3e7e48ad3253c09474489c93c98e3246c2691d219d7982eec2dc647faf25f71ce6350a00d4eb379aa4217f71b25240607cd58c2335cdda919303743a069172be99d9462c27d1d6c6c0704724898fd8f79f9f93aa69f07c2fbb139846ebc20d10331e8d0a2ea3d32e550b2ac9fbfd7304105bf23f463245a692bc0caa94881e34e4460d7df5d6ccc8d81383c2d45a3b73ca6688f28b272ada7a917de7013bb2924b65ca59fa5040b3a6fcfd6c8f843d356156399efe98e16eb48784f2c6b00bc9431535216a6b244292282d67bb369eb3bed410b224d7c82b91f5e99cfa90c4d4f369f1fd949aa0081a4c5be6d0eb9cc178cac17a25455c91530309cb3a2d539102f5336c5ddb47b610f2de533b39c0af2ccac65e0d987f47c0244b31c68ab9865507f6b24934acce953a56757e07b3e52b48e9534bfe8846d571f29bd3761c650d6a045d83685e349d8623927f8f734b8667fed534b0cb70d115bfeabd6046c073607f6b4256003b831fc32473a31101dc249593c0142f85686911276681b7a0c09dfab4ac2aefb77ae33bda31b54703167834ecd8e8c0f3d35715993af0327bb0697c0f2ac87a5c0115b7081bc274ee07dd4138aee6af7208ae374651840161177755a323f64544aa9dd7e320d50ae2e14dda1ae0ef47ec44800d4e662d3ae85e2eabd2dbc629b795bb9e78c29649f19969a583c0a3bc29f318faafa9d4ed8f499b03bb29c22f21f2d63409512896dc84b2d7b834a18bfaf5c1ab6e457100cbf7331ed3b2b859f89a555100bc2a5f2a4d2f6df235f910daeb69acb07037ea74846ef0cb18851b75de51bf3ac8f45b71dafd0741106a94c7d2d63937f4291e04b8e73cc682b6c18e02f836bb0706424c36a0db252383cd9dfc30b3b14768a7263323e9c6b7e9a0e28d16b458ce233883a44cc1e2941484bfc59dddda2b228cc6749ac2198302e2071dcb92850048fa991de3961ca5cdb3e4ef4cae96c46dc932538db9fc4b5102260970298989269370948b50bf1e8959677c388fe1af9b4ed3aa189c9963ca163ff588a91e02c16185dc6b46106ba54721e9ae958d194a36d767c746a08cb26b4dd9c43dee07923af43bca88c7ba8c46f0d85bd70f3dc1980effd11847b4fccf0fab9d7b0d07a76a8759a425785d337725dc62254a1382a821e1f0e16ff77c7a01790dbab3145c168e4ac3293ff25eb619610a09e47467b948de1157a63ff12523f82669d1fea15159154843b30671d779e900d8527d655b484fabca6d38b09c2735b2fed84ca6c950aedeba6bb371b2bcc7a40a09b5c42ba0c6cb69778cfef56a03afe0ac0296993a6ea4df265e365519f64c933f8b139ecdc1288cd27dce3b3305ded3080244c6f0528f6db646d55ab179d6c8809c3d9d36ce7dbed6835827d9f6d27cf9faa5fe79a04847900f28de7594268966631cfca3a8ef31bddf610578d63c110590c1739f7c49270db1dd1f915d62fd80ef05de7c4ca81e9967871aecb2279a15a833015844682dd38d80326f0c0f206b8929b09723e857f900e47acee42bb002b7699d240832d881f0e33660b911b060c6d54cc539510c8f78c92a0ad2fd4172c6c2ae66a31b11092af730d5f6f678de5bb5d3094e1992121cc90dbe96f05e7de6856835d5cb9418a6f6cbcb16b0eee855e1d20d20c1cdc9cfecf6982f21c7e520907146ff827a8a2bd66164c39bc4ec978c52e1ad606048d420daae8d78af3564d25a3a0ca9406efd99afb9b08697796930d854854cc61ff6d00b3957353cb6d7681552f881f175afafaa67760299d654e67d1f999fbe838bdd59dafc21e8a4d23cbc452ac9ff5a6ad4e0223f17493abbdf50f7332b74dfb9176cd29b716a7ff09510dbe75f45f110c54918b98094045cad7f96a5007fda8e31b292f6328ca8f572bc6d2395aa02d4e5962943a7c5c9ad7d8c5ab93c42b8e675ad1bbe90f1962392c830e15fa0db2f6634459461eb09753ea6b19f85fd5e6f85a2f91bac38a1b53af8879ac776f8ac77dd452e9ce258b9c3087a1e8ea20b16b27c8ade881256d9595da20b0a880345e3a4b348e94b82433048dfb014ccbfc2e017de0bed93d111aa59d06d83aa113aaf36644cf8d4bec57d342ba03992990a0550194dbc22bc6acfdd438774ca95aac54cd1f9265bab45812ee7b24d9f2a4cac0449759e0c55a60c7d3c742bbc19102765a6cd4de3773d544bab008740902db491e38bbbbbafaffddc59455fd18f0412e16cc712674c1219a63649f3df898b0169518e3786e40204c94cdd3be8a3a72f10f7a1da3bdaeb66d897d8c20f4237ae6a0f6733b8fd7347915356719b22e2e983439fe36ca6e878ed18f808c39d12b577c43b466389a362c03b9e34f2a1c35af062e1915ba1774a317fd8f865ea62cd25d0611dc823c5df2704dd0d9606b6b02864fbda3d72f486da488a62e6b28880667697845037d1e6bf4b2f5b6d4e718ff7fb02c31cc8e58e21c05e4c85f8474e12ca92b66225348ae45efaf861edab403934476fdc206ac45083fa44d36f0fc6c03dc5c2710bd00819ec52c93d3557c61da11d0f34c5005b26a6f2de39609a82c77b746ebbfc7eb6b688492d6e714553bac5724b809374073a5b98ee2b9b01ee77731cd182504fe521419b05a074f84c0d676b4d76ca61e8308b51c12829c45fd1ff5cfb91a3152ea0e1c584e82453eac619dd12c1bdf14b91f90f2805cb2bdb8655fd71e5f2d6fd393478c934e0eec12ffa9255118538f73725a0ae156cccf7f1d7fb9e8df529e028ae301faf0eeb5766c65c60bf0a7f777203dc337b75ac62db25213fc7a805cea9bd48b1c1eedb15a4a7da22db509088ebe62a3d279981a960b495618f32e4079018304994b1daafbb367ce929782554a6c5c140bf006cca292e4282e03ce803346b7a91dcbdfa7efcf61eb8d29a50526fcc3bbccb77fd8c100d4619118dee883da87f2b5287fac651a6544e9ae11e76f54bf29b44f638cf59ce2fdd47d7c265b69a92c8a575b03d1617bd58abf2e140034e8cc70744cc5978058de61c0d3bfcce515338f17539e9fc1fa55af94e81b9f876ab93c7ca033d0b84c98565f20602c8388c1b4963f5a952dbf4179701748021a5fe6b3b6892bb94c3428caf1c00c1c5b8c6700a12713244fdc394a532ca73751bdf47c2732e9c4ddb6acbcb7e50e971244f970ccc845d307a3cce0cb6990b9ae17321062cf80a876992383f8fe6668c0f146b8cd0a301e42893e001d9ae383e5ade431470d213ddd7969320739d0eec87208f86e9806c7931c0a8a309784b09d36bd1ae12607c60f77b1d2151ce61139ae3c80fbe7b2a5e7a2b12e7d4e7140cb3c131b1105ba17363fcc3796809f5ad042d57e2607ea70ecaf38fd2aefbe5d0bc036433078c1453461dffb4c3ae718c7c5ced7b5b68e7c2f41794eb3499213a772f1a45a9641e5e69f7e62da95ca2e4f0dbf63a8a1e3f7d65aec115425ed2e77f05038f916d048f79b93b86af4f79d2d7e804cdaae20ddcf114da9f7bc208d376e031c278221ec1e8a9f80cd62b5213d06c47878b99b1c421f90a9747e64ce57238d1bce81c8ec6aef7921c251b4c8fafa37bf2e5f99113d6d86552d6309f6d2e226ded339e46cae1d429f6c3d4a6ba0c1b621b0d27174973894703d36be641c81c334c1891c0c99bc91569e7446eb8ab50af194056a29d239ca5cf1a24f0b29a031c8c81212ffa00018db0540641d730c1eac2019ce9af0c2f1ab0274ee827ff9c636cc81dc2fb4d24669b26f7c58c2a4e58e0af097b5d7d18c93040ac5da58dabe13abab9a62136e403208891b5a9590c641d7fe42d1ad6535c4573fe06e94b1532d2ad88773b2866ff12536d20f6aa01df320d09cc25a55f61b6210c1d700d73fe4b073932b654a818ad297841c4f169399ed5e48010c628bee0f50f6d6eb1105e534645f6d3a4d240cf9374406ce16d87dbdaacde13f77122c0392046a7abbf6da99e1f075fc98ba56641d3df92fc1b49ff8c3565a2bf8f7d43124fa491aed2bde6c07c714c64c958a12528fa41ad80f2a5c860bc02bf8aa12e40810c34c3ddad03de247d6a799cd1293bda628fdb0aafbff67ea0616ef344281d64afc13e951cefc492ec66b2c37ceb365f3dbb286d481a67ab2da950db6ec4ab8cd2b028fc6724dddd19a221343e670195e3145a1b9f8b67f9380d9772924f91b90cd29237d249e5cac0186244c2108169487b8ac7d841615bc8e71988e62815a0971e87c847441d29b2da5a86bce51dfbb7a48f6ad582b6a71df219d98d4c0d3aa08cf46d897c049d4bacf45c205f7fc62203f8d296b1aeff7bf5aefab9a1bce735eac81181b88a6ae0220527acb8030f3e4227cfd1fb99528ab497b5dc5fd6108e7aad6aa77de45345e79de2cb9fbc318b8aa08f38e783db293ef42d3469e34e4e5604b93ce838c5592465669d10ee24c3fd959db8b0531f62619281b29c5acbb0e0ff07aabc4d5e4ce2fda6396af07921ad212c4eccb7e60406b1dc3131a57ad179c4c40672fd8162d449c03f765a4b0d08d6347122fcd508a0bdb1ff6a8438176f705bc46bda17ada79b8f3ba4920492b24675fac365998d24bd87e2158adb99cb5acc65a0abdf12a6dc74edf24a6abdb7c479c08c3e2a6db2dfeaf3cc64b65f8bfa4ddc24acf735c423d5358ecd65f24ed610b3de3d2c79768479e0d4dd3548e9a6b9ca30a3a52079d5b39012ca9df22c091a4f97d98c38c3e9087320b5f87304917db8d5001e11bc6f7fbb99596d49dd9f842ce6d70fdbdab2fb0fd6d156296c57321137f4c4ace3f81e974921b0ddf47d421298f145bf7f89391b6a8d391029f928f1677ce6da964e9f236a20fb21ba9b38c86104adc25620be060124143114a05893dc5d96c66d79b2d97473750c9cfe44dd6b279b461ced81f1e42787df7ee01ff45ae8c193c37010ed6582f7f641b1bc4a50bd6bab20f9472797e772483bc2787044727d193215d08cc76427e76489bef61ba8f83fffc087a094c9a08b3a0b152b97e172308737a351e8db0c27f41969a8ea2494d2b0e417cd0bfe80071936c8c1f6ba0d9a712b0291ed799472c9f20003ca1ad7c7f2b48c6770a4ce419f6122abed3ee1de6f928b3e672da04822036fc0722dd36277775287b5d15410ced89040f493f21ead48156a4e230c1e59f4d55ccf25545c7f5fde7caa061c083ccb3b1291f0fc5ae43cc5e6a75c8bad6ea605dc42a125ef5ee7e58a75b1edb230b2659ae392b2c3e3638870574a5ca907084155f29c3ab2875e74dc2f71bf54d186987da05b42a95c16b9ea69901fe62961d2c22523d7d11f257d6b53026c83000b74aa38ff806db8d5ae76446d7538cb1b3928525b29c3be8bc8933d1668b3a98945f959822397db0f331ef8ad9d2e39089704b21200130db0c0437f04939d0bd4e0bd3ee0f5246c6f342566672931c1430f5590a31182a842c64033e8275bf91360861da58ef518315214320b42dda91b44ad99c111740396de7a4c8076afe501d0fc6043b288c8f131c7f644035130b146d0db31cfe834fb02ee558bf036b417efe9ff8953e0c47c15fe28a03ca0d9a7cc7913ed4cc012ff0e25e981775e6a38746471c5eab7b21b6b2e80690d98fa3f10e38e77ce0bcdfd5cd8ee1edef4aaabfe330e7b26273b3bd2d71b6fd72ec73a3db28b329df1141785e20023709e0a79ffed74fcd4a4bcb2dcac2dbbb9f68bf80b61118923749c79d813f12e6c16e2ac1d41d2cbfe58738eae82053ded64dc5133a0d4b2ddebfae368e76e538244fb5aa413e106b07a611aea9b9268891aedad44ec57f389e60f873a45d7ef04588fb12224a4afddcab2cb968040d74a42355aaadfb822e0c4aa288e950edf2ec028139471f155f8ae7854ff3db2f708b00b29e3318bed6ce0ca4d8cef4edb803fd60efd4782371be311d765211c03ddb6a8ba39d7b6687cd749d7bd636d601981c6ce308a5465057e3bdc9d7fc4b27dd6a67edf268e5e373a283208c8a1512d8ca7e1a16f64523cc5202ff449dd31d33cad867f38e484bc2009a60ab0bc4cf07d90924f9d0ac8806d4a63b3e17362f7033d3fd2af51206140c702463b953b382427edc1f581d527ee0a12e9db0ea6502b09b001057869b3836ac005a2343ed774e05dbb7ed99ccf6384a221913f486f884b202803fc39b5d5bc8b62247a29a45dfcdb5489bd751d3608e15ac00036fb3554a63c10d98583823e9304da3f7d1af3f3b3a0a51c1175ffc21b6315ca45deb6b75682c2802a2c0da2c1f0c1f6e0b4e5b0a0c29e7e5f2b56f4a1c57aac698323e03b8e752d446068072084fdeef2220da7369f9d1e23c51511e31c35e02f00b3f2fdc5f649e4388e38ad4a4099f25c6153eb03202b9fad34d544ba88327c020fbd97a4939aa70d9c5b9a5916367d9a88eab32c1a7496501995d2d789fc2b580b1cf86a8a2b33ebe9b12733d8c4b84a0c246ba52a51bb5db39f8d8cde14665b9cf9e3fb4a7b75402da1f25c3b4174a4124e85e1127cdcab416f27d13dee7db22305537d195da098418a4f7bbfd40426ec9e5385f975ffb3ef506b301d6cfaa574f98c3998507a6dbe16a700b9c3240f534045ab9f018b722f03c956afaca8d69cafc065d653e0d8a5d78d2683cd628fe3674577bca78265f1a62a07ac1b0373900defc61ca0aa232ef73048642fd6f6deb4d43a93c194be09729b78a2d7b25cb5686c1a3a1fa28b93ff0f937fe6c096a16b9001b3d6e8610f21a57c1435af76504b6c6167d11cb17e011c6bb4120686835702ac45646cb307b34840c17422b64e3cdb2ce84a3b912cb6b1e6ead4db9704c91e82be1ca3f5e8c76dd822c6a2182168c78dcf9cefff3ff034da1d74a01e86a2c2399b38c13613efbd215c1e5817940a24a7201df06aa3899feaea0175c8d185fb6f82fdffdc47575dc4d8d21a6b76a1d108b5f0de76b33cd9e748e58ad5f4547b634ea4de42115ac5cdf79fe79b66e80d76fdaf0536ef7087b246db57f28700e643345fbe64e5faa610a44c7bedea1ac67dc93b050799ca452c8bd3cd76deab8e94e9cb1cc2b78c1e2c44d47d46c6f97da4d014d0570e89f40a73b253b2b180cf9eea34933f1a42f729d5ca166d5b4624224ef788097797d8ecb70c64fb858ec050bb51f04a200f4394ec81015dab6eab37fc586a5ae178eb7b328677cdfb1676878ac223d08fd8d42d74875d3a0f6fef26c3f5db09d3dc2d819822617831fe0d2ef67b5e972dd32f9b85d6dc9a33d481420b011a4b9b5f40afdc778f0b2a42a54d463b4a57902674db36afd270854b2d8587eb842aae0f34c0801fb217523a0399a56fa786be05c5d7298f4905d0d9ef8604d0bf6d807d7050b83d4366404f80b059a19a2dbfd9c7347935dbee924dec3764128de1f0107888ebe92a010a5b3ea8419f694206139ee33a359bb58fe918ec630c36cc13860af59e39b35345e4dc7c7ae0d401e1d173c1c0a8fa1437a325d7639c2c611c2914a72d8247b2de95d7d79e54cd57a023a7c61f01d6b6be2174b6d207f46b208bbc75f7b068786cfed52d960caf6d1d9e964b7300a83e639d0adb4615bced06496355291d34fdfa51f5fb96c7a1ff6d2f232cc71dda32fb695eb936b983be0e3375f7799fa04ec76aca21bafea3b600714b470947481e8ed7292191ffddaa581b0ca3f32d8f7b81f627f092e4448694273cee8be594b8b962cfd45577f2c28ef1bc2e93bf1f99a44c99aeb1af7f537af72283f0ac3b7a8439bca5365baa2dbe390327899950c5cce3fcb602333a1ec10d799c43fec7f52e35a95ded7f9e66e2815ece85f265051a54c9923fb54b6d8cf76bb14a8e4d1bf6bbbb15113eda433f0bac11b9075341590c7435548dd449fe090246be7253f199ddc65aca256d0f5cc73be221e650f7f49d2b3b185c8ee9a41e238df4c2dad9fbf339ff0888a26e9d42394a1585e49635ebe7c839b6e242be666333518f2f304a060d80c2f4206f017fe92bb0e08bbc778aae7db3ef1e4a2f66f06db8a2ae77c3457bf75fd8a79a037f7362d140ce21a2c0b86c3490851027045c866c7946dd9c8df5a1a090d287b57c34692c784df2154f5f4343432ca2c0c3790227210c08bf4b9e12b9c47dad1fd6da8fdfa674058ff56e0b8ff59e2fe42f0775000ad9d3847c64ca1dbdf3773c90ddd5264340c03bc5343fc2d6c8e92ae4bc5bff20ff4837138453ae97e9631a4fe060190a7b6615fdbb68217b1fa39212f510a69048cee38eb0cccdc691cbefe5f21a930100d3cf1a38e37f5fb6cd1ef51a5be5630a3f7c80dde57fbd3960a3115f5868173990f29e902dc50a79f8619df428d0e2272d83c44ef24903a0e2c050e62c0a4c0a202eaeceb7188abce3fad93c61dc6f1a705222f5164ba5ef6649f8ff616e3c415c57e0d2bd3ad8c6429cd2cf6cd8180bfd6be9ef1103cda5becb4d3eeea4465cfd230cd7953d7fb4807c80ae08345766a66b5851649708ba30b4a06df6180d34b8b0d071c97df426df0f9935c0b7346acbe293ab58049c829d31c01577cf381a7b5f566b03dd6d0715d6831f4e4e5f406e0fbba22d9d89ddb4becb8bde8d5a27f4d842d2ed90c5a85c20db9a4f58c5e5c434182024e5a54aee961a433b6b8f66cd7e225b47cf1b5787930f91ac6fb5a365083d4a5b526e013c7333c45505a667189f2159360fa954a219cd3748905994b40d4cd80c8f8e40e08f4f9341bb308af1cf17864b58a39a7b35ea65ceb6c3c8ff594cba05ec20d00d9f8c72b2c290138ff04637f0759eee2a5fdfacc0d065dbbeefa0257df104f075cfe4426244412503cf6c59ebd73a1801dbc48068b53934835c18d09cb2786f0979cf373f11b8d424c8362b3e1d3ab7b85db131311bc8660cb2c9109794eb2217ce5f1fc1443b554b490b4a0e72e77b8872930ff81dce21fb1a674216903d4b371622e6442a13409c0bd11bd92d33e290884a76d3839e559ff03f911f0e4896ee4f0a89cdb3190b66d33ff1f1c1e47cfe83c0036694b341281cf9d511c9b03328911378c0d97973d8ba454e0edfd4d0b43aa84e17ca6a588a24844141a81619fd81fbd604119b07e9ea0403aa4eef7d0c063078ccb8973509a40024980a6d1ca75a0cfe823a319048789e7665e87564efb2ae445890b21f15cb70b3377f808c03f4c8b89c1839dba0ea7002ddd0c475a743001e8a37da1e1afc965d8bd9f1f471119026c376cf19ab47233f869591a952a17ff73d21da7afe8ea000d5c6d0a144daf71103af1296f2b87cd0b22a5d0e8130c31c6fcc18d31372a60cb95e14bf2012098b5b67957529bd8a2b1d1a4d40b8db5c2c6bbb29b2afc3b76fc9016a2f6e87074e8eff07e9b4c08d57eaadeabb93d732b89da48a7b252472fb2f1789a5e9930f716ae91036ccdfcac1df1920ca6197aa28e2973f31db4af6a1ccd83e101eeb1d8d79988a93848b6344e827a14d25e7ebce216dc2ec1ade38b9159c8e69d3d6a13db3b1df55573714f0eae6dc463fb958dcc4b02d5ac279c89d186188b7c9c99309d0a8c9eafb8af5eb2f6af9a325fbfb7c60e97484be9521577a4676be05c0d79ce44a9d8ed0c2bdac3da2f641fedb2f19229400642ba4495247a3e789786420ead4866ef95fef986060b3fc4b143af898672f304ac2813389fa3554a1a893645a5a2f1362d222a2ea54603da34763328b29419a96f44d51684a494b6c55f87fc59b84854937d0967cf11f05c1828ad619d484bb1ff48bc2e74c87e312e61d808dcb87f83719a2e06c9cca82b1628538f32c052807aaa25b43e7b576db7d81cf0581ae135610f2f3afb5efea13430c15f6e609dd63f6da2300fb4c638b06d99ed6e08993760d5f3ecdff95d4daf46b5da5a15e4c3c75d7a2c45b5b283a21846b362ae30530303555f23230db6c8e52630ce9bbfa3b36c83fb522a4e39149e7c7436c5fbc187c5afbe210fbd6816037efc7b7842ac98a1c85a0dbc00c0953321cfe09cff0614a704ec178f1d5657fbcc756e2fe8b15afb1ef5799d4caa9fe8d607e0e053fa1f7639326639171912010ac043a272f01efa37adc6793f2ab99aa8a100a87537917e1e26aecaf520c72973c7dd979357a11adae0557f1ad32166d02f4c3cb60540115a2facc1706d08c259506f409edf75166fae058c6028ba4e2082fe65f58dc1c61f4623a44519d45a643e903a60cafb43eb732cdc3cef52467c41cb6d2b7c0441b2006f0583cea2ebae8faacc9017018ceaa16908bbd3c226805aa07271cee2b06a438ccd47ddf171fc5addded72be01916ecb2a3c97189265f81a77c01317469a1862667eca58194c896647d53415e3ff081915f87d015d63510d68b7da35b3b94eef58ad5add2caca0edbce947da71e294ac5fdb760baa7f868e2a48b6440e1e20f202a1eae28e58dc8d6b4c92012605c7aef6c53e74cb3250bd6a3b89c33f1e1e8e3e3a567c0ce30d87868a2be2b57a4793764fa307cc851a6959eb297028640fbfbccd9bc4720c17f47d727e9f178d23f536730c2cd7311bab54cb2c85b4195452f6ba6cc30ec259cd4effde1ef6392e17488b80ae91d37b5361650dd99e5128da9cbe5e9f04549f415f7bb6add56fce976cd6e66cfb61bf8df70270d063a022961ec771f6670a918ef1466d118c280c5b3499c3517c2f27e4b5430da83013234c1ac70a2f7850cf92139208688aacb214d98e2c22d1f6892f00fb3701d407cf7cf14cd224d9c035015d176a81c1677611efb5bf103249b99304efa409cb8f3b8bf481515f1f0cdb6fca91b97fb42cd5bc9e10890be11ec26af314536503e5f71c99f79a85ff502725bd714dca94e7a2141d83cddf7b967f16e26a6abf91f388c154b1066361e510aeb97b8a604e3e47463a5c6996dc09490d8f1f04d9b62d98612cdc76ccbca9da372a68baeda469f16744bd25701f9e3ca9df8823c94b830ea37f49e2d2c4708311cc7e4472770ca022d28a15a0243c4d92436277099aa9bee1a741a2846c342d2c3db421bfb3ff5fe250163bac3d039eccd48e158e7915180c769d1e08b4f5f87fd7e707621f77a4098765225aff4a7045f7db2dd143035499e9641e7390657337233a5c24091c1f060f3482c79d7ba0984d12ae6e66100071b8ff20873bb3a5190e617f33aa4e64490c67a00c45544aea12f93f53a1fb649bbd63d6ae2ccfb61efb1ce675bca018360b7b1d35ed377c4f90b90ecd9fef845f3b5466730f665ccafbda6f7708a95187ba3effd497fdd4083ad19e4cdde78edfca483db8568b64178d5f410760b81324bad51f10ee01d7a253951aebc8d8278dd8b44b192478a7065e70090801d34477cdfa65cb646eac4a55433ec1f016341784e4b1fdd59541f9ae7884a691b8b130a230a5986d69f521d2cbf91071f150e934bede9fcf354d9ac8829fc00d85fb88e16ffa8cc5bef5227a41088427380d6134e35db58840713fcc41d88b10aeb638280979acc08bad02db76b4bf9d7abc0e31c78fc7f8a3efce85764ecc6e1b3227cda783851e2064bd9a0bec6a4524f57b5080b7d426ed2979c43104bb08d3d9d0311cfb0ea188e0d0e221618162173fc92290d2acb1e4bb2ac9c34ff27918a39cc7015896ee65bf68bc0af5a2af2cb60f730a62592019f665e27b3d80fce6ba1b5bbcb8afe7122c3bcc26b0011adc1c83241d35dfa81996826b146a79f9036c900698222481f5fa46ca931d120cb1072296b6c148cf17c5c8aab8f2a1ba5a1048b78b4a28fa809dc8f8d95fccd45d792b25b6f337a5ec7ca6875f0b265ddb1ff27ed28964f515f7809dc7804a418f319b5f862f79a8952d9210347fafcea8e0afef4fee2c8ec55652206e3f54c8a6ab48710b7d104121b207a0860b4add32fc641e7bdb501393e12404e7ce76541b6b6819a702c4b92572847a44e24cf5f7a501c2d2e0a7dbfed2370b659bfc7a8472d7f260f7c57409cc6bce8050eb70ff807df73dccd2535102f827b6917b2c39531a1e1e2837135df20f5570eefae0486e4ab8c3d86b2e96d86c6b3714685b2fd5b209caa532a9204c28638ba3b07f787b5f1c8249f5f067299bfa9a4db43b7807e0ccabc872cc2f9cbc9dbd4e03d38812b31c0a7ce41305c41c449358c3e2c6c5d637b6a25b6668a29065415e3cbd7e8eb12d3b18e02d2807e05fa6b933fbf6058ec710c4e83b16f1f40d90d5808602ae1863c9a5ff01ecd9924730c638934421dcbcb70b96ded192744c4a1105e99aafd9223ccd380797b16d13fc6491895b35c46cbd606dfe5b619c9290868c9f9d4f06f2bffa56a2db8239fdb3c4bc2be344a8817141d63669300ab13d63c169fb8ef6f4c740a24470d6882009b4045b101069ee041c0a2c37132f4cef96e3fb80c2e49d7acfa7e42a9fa17cce7c36bdd982b85c01a9f1dd1bf272b19823f0eb063f761cc585251a6eb8c1a6e209e47c1ece886da07fdfe2a3083dd93202eb4814f6423596d2aedf5ab8d88a128e8224345b191a7987614ceae57b052407ab0a7e3879e865cc5e63450b2be92597e8eef43fa7a1466a63a76416529ae936edb2d74a9da159d49409de301d5f2496d9523684a75daf97ebdcedfe5ea5def22b0b5ec34cf29c07e079ade786d52b587a6cd31e905005591c38213705b1ed561b9ed7dcfcd0c01602b54dd383037b41591e7b068c24d28613e876b73f3f3ff61d687b90e1be028e25e9e48594fe48662e16610261b22100a9826b49c28285633ee3aed4a38f7fb58cbdc07326446822abe8d8950d91fc5ab448e8b2adf956fd653e3c7781717550d39cbf048c61686b168e2fa4e2b4fa761b58e6be0e569a0e440b893746fa38ec687201ba6b6bd20082b644c5654ad770692e68de46858cd2cd8c92d148cc3ec563bb559c51dafa1f24b656b32e371cdadf613cf0af119a579020fc06c953705e8f24985c417469e62df893a0f89c21ad3e4b9f306c525a4f252b79f68e1cea9073d7efb385d2d6bf7b27d9199c30a5ac17a2c1e76f0884241f11f6d0736d570001d014ed25812ee7eb2f08522148d621daf9b1de6908bc747b239b4a83974aa34b4e9419074c523bebbe55025b9bcdcf17c6920f9cb2d97664f9cb869fcbcf876b3305d80e43bbcfb9ffb30ca590f43b61779156540008d28a9bed439dafeedfe11066c38d722fe32192447cfc1222ed900fde72c591d574b7e3db9ef948d7fb946cedda93792895c9ec6102fe60756ba1172737c3a965dcd94dc8d9e8dbe104c1c9c4027ae62cc628a4279c2549206614e79cf9e55670b2bd98ccf16dd53b3252f3e311bfc03a66ab6b8f1f91b01bb59a1442c8589d931887126b090024174b8b93875667f02196b43543c2a6d5e072592ee220540db2d1342c97e20cce002b57709ddcca03b2d5193e149d2f57a1f8295258437b23fddc7b13c3944873f63e3d5d602bd7b01a0530748c5cebd7100f2b045d975eb136b5aba83db7383cb886fdfb15a2c5de640041441cddffd7a09037839d1c1c17fa8755dc94142da1758b41c381cf66fbf5f1a82b02f6201b4c133965c00411b6a474bb2243dc1d330b4604553e103b4d4da3f1eb1a845030bcdcf7bec681e3a17c084fc5d89a00c9abdd2e05ff32b61c0fdc542fb47ea779c6079a85e48d8d90367906dbbce5ba8ae806b7c8e08a8e177305260c6bbbe8a9e65f9ee9d64abe3d17cf5f44124fc00566611e581ed52d1fd7848561f94f6467da26915a2cd989b1520b26c94bf5d658b488fc30f11e13ae8d4880bc19afef6b043e52dc981ac673d03ad7e07df7626b49acf30e482386ff0d69a1622c78a824aac74dbe6cf92d484a10b5e71f4111a08fa72eea28c223c897e3739405dda82aa95407240d70d64afc2dcede20518c4df04b9d52564ae94271adcb9df36f09d20312a710d300fac4a03cf9cf6c640cb3d57b8239ccda8c996094009020186c477b37cc91ae826f1c86d6e508221047b97547422f340abd854298a803bd778abb4adedda4afd5ccd64fc6638dd2846f57b537dfe5021f4987b060535049d50dc5621a84beeb2bd591f1784a435ce0afca44daece6add18ed035bec7525f4e9d33d7d730f3bddd6458ccf9b9b1ccafc66f98a9c39c3dece0d188bec87d07f409c660a88e4181f804f81ceceef055cf04a4cbee340bb2efa8435f4de78d8fe272e8f427af7499303d5dbf13b46eb9664d90d45d06fe3c4976bf4a82883a05bda4a0e8a50732cf97e7c4ede47520fd52fdb8050e376cb29c219f0e0a732000574b82f0d37607edf1547345559edcc8e20bb9ad7a6f495843cb173b69055258ff42fa0f52080d2f7b1b6978f32db0fd8c52629a97370301f2cd67fff8ce3114b0de9304d8060579f634a38941952a6d76cfb66a9b62750c2c09894222c03140412086261ef8d292e8cc123abfed8cdefa0a535755a04a82bf46f33883800705baa233ea20df43be3ddb6d5cca999f242044e0244337e2639259fed971979017f668bbb0af32b8247913e5501346b82f254ab187b05e995705bc2bc828b3fad4c9310cc31620ed9982e8cf3132936e5165ab362b89a585e79adff75b90a51ae304a734c64c141d57062dd5a6f0ca152f85184f034c0477ee00c8296efc084e6de61a5b448c33cf220c783fe7d35e4c7826a316d005af6e5c1caf507949f637f4103a82479a6cf34ee6a7995af9834d84a3a1c53a740115b048f70050651d579a4dfd570de1f962e3caece822e82ce422c0f7da08a0f4afd60deb2af512f76813769fd504c67aee4aefcf0c912df44868893b871e67495dda5326e1eae0e76dbe47212b3690e84bebd63f744a2b5d5a4d0cd3143e1507696173654fdea69750f4fba050daaf1c8fa4ee320862f17b5f438231c80a6fdbdfef74d1186c0a24328bbbe4627d10b897f7f14d83ecff31257c26c12dc3a9a21719a0d73881e5fa292036a4f4a8fb9524d4fde37d537fe84df899002ca835c20f9916f71a1d1680c9a2d3c67c82e58e726e51d098f35a1df21aff836c79d22e9be65fabc12212f097640041e428bc8ce4a82e7a69f7b53ff26e4b1580ad53b8aa2f5b4329ebd9887467d6b9a21036e8dd77d9a9acadeca2869db078beb361666c722aa49dd9ecc67a005409ecff63cfb7f4e6340690f8b371e3f38b9ffe075767c77dabfee872b293c510964f03e3422940e8c852503c317213a71db1b221d624c945e867fe68b2603e0575f2daba3cd47007f532fa9800bd401dc077bd7d03201febfcc36779847809a7b562944b5062b2ec6ce0b04ac9c80dabafa5b0036250853161bedaaa15fd492272c7ab2207910c5c097e8b8e0c3fe3e2fa3ccc5f0751abff7ee6ba9b8fe9c60d20e8fd933344a77bf26cb57b2880cc51808bc9f88f205788286891dbe105e8d537cdeac91be939bf12b19a1a3db727b3577541e938797c64bf40347a8e964612f80f26faf46617247f5c54cfeeb583dc016b9553910c5cc04b82783052206e71b565f6658f424824fecc121f81b0f11d52dfbe3f444d8700cf999c35f0296c881346b5c1e0872cf1b7c8136f4c9ec07a03b93cdeb4ffca0db077d159b4c4b839e39d9c2f30fb3c958cfc25866cacb125c2f73ad1caa7a1a3d4685ea0a8b838023055ed21947163254b7568138abf2d020ea42fe21d1c9d0e359b08b5553d9db4d3c910149e3666475ba60f0ecc166ac31b778a8684d57199b2c06ff91fbe5b1fafa934ae0e6df8372deb298ed222965be7f603edeac81b2ba8b20f62ab6c1d0d2b47275a9d57073e5bd206c1663522bfa69e9a0951ca8a21d79a9321ae6bb5ca45cec291bc1aea46d599ab02af85a8da39cb8544f07ca1c31e475d96dc0b997cd4d24ebf95e04247b9c5f26fe34ed8aad83b5f465ab3fbdbd2dcc7ad1e7702870d8d2b40876e8ce9c2d20e304f103c8449f658d5a3fafb5eb5ab8aa31131e0ce79995eaa863d21de9d13ebdbe5b727915dd3287df9ae7dd884270a29fa888f7b0b8a061fc32b7bc2eb5495959774f5c30b290664da1e365558551e3c0c2a74209ea3978cf32674575c9acc84f84b6141e651a66eef69b6543947ef650e3c6ba0efab0261527b3ed8c304caee1bc7ac1dfee837c9aa91b44a71f8c0d42deb57b408da8b99caed568bc498efc2e9376de2481203a50108578d05184fa7921c8feefacc7b46f64ed8ca632589daa7cbe110071f094d92668c3232c02552006f41af5e81c0d35c17833cb93a6bbf07ab652923a0270c9947ed8253a567c57d6001e991a30762a505d8ae0cf6771242ead78f189d960bcbb2a3505cdd42e43f9559590b86cc6f5e99260efddbcaddd9a18f39914436057e0e9d5cfcf2890784f9ab6202c24ff5980e9693018176bc5ab170b871096188bf72640f6e2c551c09af6269057b1ef51fb7800fe014161e1a582572555b546b9e5ef6213cb4e706d9ca8e1cbf20f224fde1ca840ff99335397b84c94579a66c23c99c190a826901bc9d878f9c94112a3e7188a1d33f29d529d17d6a20960ddcef2fc308b32ac94c8894995864a68b63f86014469b509024f4e723a64965a6ecbbd9a0021212b40f8b382912719e3af11191e6d65a2d371c14f43bf8db83270a3958f56b0312465c80e4ca27fe56c85c905c53eed10843e8c5c4178ea130fd9cd4f3a277e027dcf204056f3e1c958729d56fca40cdfa2b3849224fd51cf660d67a3c03dbdfcf5efd74e25d400e6b6afc93302a76350898a88b5758b8653484d59bb319e735c1e8912f31f7946c960b35f09559f796f6f37fd077b8b69d6a0fef772cdb79044dc51e9c9762b4f16d4f7f48be23dca33a49eb5368b03d9e2c382ca9f10a92dca14a3e7dcd059dad84bcdaa129266c0b100ef1ce51f8d4482d5656a78f045fe5ded5f4a56656b9c33ae2eff3f8f6eed20e6c624a5269fedcaf62f03c8e060c4a35051caea1100975a374577637870ab150e62dba01b0590b4dcd5bd96968d0d23fd4e3bf2000c908d9a8ec69f0fd2435afdafb9e4e85ef8adc399f3ad0d28363778f403fc95414aaff0a83acd3fa4715fd053c000d39ebf11beaf67c2167414d8cd1bdfef372aadb828badab02f77288035e742ad14580265483049dd210f59d225ac0d059ae09468142ff51e35af259a6de8403e7c805af66513e2877996652b9276921684f6d51f781af3a248b5dc9dc2a61e67fdfee89e6c04c6814986682a260ad415f79e84089e09a662fb148ec6d08faae45bfd3ccc95997550ecdb505642f8d956840a4c4f546078357d56f3ebd03cffe78cc536c41e5638054b986c59424e838d09905c39ee888284b045aaaf5f92c9c4118d2ba34c74ca0b38336c51c0d3f7d1c9ce0316d01320fd8499247094f753e30bb88c418c6d4c9c0a403cc7971fc181b8eda44a5b9b2acd907b1c499ec1f26b8fad564b9b91cb219ce92c29fff78b643892c59a43a48096a8cf396a061d4b4a870ef7601fd01348e7865fce9c12ded0b9adf35c0c430990b9487fd39f79f7c95e23d666cab373cba680e21b303ffad70ef1037205ea6113744d6ae806f06027db1a69c0f86e26526ba3e23c3400a0f5f5387a1abcf410010b5382de1abcdcaf23b6c4f218c4f0f2a73da7a2a21d369038ba6bd0204c31d015766af1b3172d06cfa2db5eadcf23136141ed0b1cfe3054625d41224c038db44d9926242effbdc7c644af97f120b01d77c5919752b5aa2f9c0060cd6ca6da4f843c0ab870f0c21623d9198370a49bd4f254655547baf6f3a67434145715acd2dea9b529a6f94381650988a696279f00693293d42c212f1f849ca3c40c04587cedb3cf43e8d4bef1a78b2e3c14d8bfa07e73ae30a69881ee5c7f408548ab4a3ae0475d217115d6010bc10a36a4010064caa6e283ff3421c9dd0ab8603c222d307aa0639423f151710276e9fb46aaacc5895dec8d23ae51089379ed0fa6731cc931051c96da1774947d3b40caf09da474f7b838a4e8cc8edafaadbcc2569149db80def063bd7fd9fb187572d8ed85df029970423885aa8a5e0b72fe802425921130713108c93ed7c1fbbe3affd3e26cd0e17cee19dcf68fcb1f813902cbe8b877a73e4dfa9adccc028840d273084f4c670b3a878e3f00a253da0b843139e06b1bec76c837e37859c295ee53eb5b14e95545f5ccbae10bbd5067bb848119786f8a1e409dfde2166dc600bc169e2b7850fadecb4ffa4536ae771d5cef7f3f20bb67c1176c68704df0373b091a2188ac9a075c7cecd41c2e888ccac1ec801df94d49db7c11a75113df43bded14da8497d3ad4149e6ecc64e9960a9f8608a0b251b0f9067cfcade1a762477f2122d6ec81fb732e76ae957ffacf428b17f1f19411a0ba92ac10681241f023a4e11d1ac9b1083fe00e1398e7e1d743800da0036e9134596f9db6c0410348276c3705aa0dc9e224da9bdea2a25a7525e73401259d36ad7a2fc582abd014b7af8328986d8c2e4a2ec824b20fabea2282dc99b2a2396ea4e481e785a856e042c87d2717c26d43df3c1777970151caec9506774d09381318bbf071a867f6fbd898065c4ce9e7229ac1812de3d430adb46e7febcbf017e58c53051c1c0826a03efd25726fb2f306f21d8001c97ba0e5002a6d53c8192861dd5a5ea98f1dcc3bef46f54cbdd1d27ac40a6cdb3f63997710074ccd81ced18f984c9345dfbb9108034fd9c98965ac9e648be99dceba1a62c30c4fe8083c361fb704b27283c955e070c2eb805aae6f24cc2025b2622475c1b4b3987467cfff5aeabf58682fbbc734ad1978d4888010cb14edebf54b22df74f5d8eecb5f9d5824cc2fc69c5579caf292a91a55098f1a296fc818b47fc02dfc7f382e5128ca081f5af2ef145068cb8ae5a3c3ea14184e3c09b916cbfd51f29884568c96c920b068f476f309e49a6d25253c31de41300dcffddea796b1ace0ee2557641002a15cdd0247e40567fb6f15e9acbc7e135321c6dcfdc352bac96f38d8d3481cc94fb3b48688db46afd366760723cf1528c52febb5dd91bd53722762dbb67cb8c6e74592cc544f9c32ef57c5aeaaf1b56deec51ba1f550e9b104faec25a8d13a65b881c19fafccbda1691611f04f0980cae9b22c60cbabbc1fb2653010a71fc00aeba0e69ca5dc9f84f9f540021965107069a1c4e4e945a5dc485a83d3b08bac7f708beccb4082e724674bc7c1fc8ada39c5d55eab06a4b50cb5201b59ecc7fc9a66748c19f72ff1b90a6c3dfb6af42e9d9312ee3ecf7b968da406b438e8bb2b0b806866a3787727012b2a8b1820ae69f6f71282648a6bc71c198c431ad10fd511a2326a32f3768b1680a0f0286173430597f90a4f8b2f1181d378166a942a373ebdb8f00bf6086b00c95991ac04001c949407ed202334505a44130fbca181d82e1b1447903f753403e7bb8567daa15515d22690146d9901f337cddba6e9a28d29bf97e4a38166cbf5673296fe27a793424c8c9fdd67006ac3cfcef495a510a5de0cb27309fba209c9ad96b960ff9d43e36f23e8eeb925f3befc264afa1e2e8465068f904941ad9cb5d6e2a86c011076ec5e9d3252f1fdd7b469b1b43441b9e69d8cd16dad6e4894b7a1cc273737c60a9278d217e87668774e69a80a8842c1443ecc99dc5b5e1fc9bae4412481b9e37d3ce9c3b1ef8a7adac77ddf92d70b9c63b2b19042e99f95ac7f7c31a4d76ee7a3af7d8fe0209f4b385555af1dbfadfdaa6fdf5d1f8b06fb430bf2ddd961dac63ffd926f8a7af73ad2c12ceb7b8b467318325d31b1ada0bc99461845e07a4a087216862e12e3b064a7516c546a9ca3fadcaf5ce1b405036ae3bb26024f51b15a89da0f56ecf3529ebdb30eafe1d0d2dfea9e2332cb9845d9e4df8c1a996a4b0c09c2ce79b8bc5828f615314bf4f99fb1c40011a978f693642aefc6f977233362c0a016022d0663d56c7d386ecd6a5bdb9412da4d0f765a502c93991b65a3a27552dc4999033b314bd7a2e9a67467e7762008b97d33271a46e9ec87bfc2209c70d8f160e012bf6bf2d1fd89db475d0ba61b5971bc962173dec0ff60c4b3fa6fc03b5dbffd35e3d878b25df068e6e7a9a93a51717dd909c181fbbd1a2d7da0c2a8ce3da43b7f0559294733f0030cc333ce90678384de7d9ccc48edf2e81c5b85fa41c840e36a940adafd082c79236e1a638b4860ec2042b034c0c14f19273c51be5701f80cf7eacb837289d2f060c4b5cdcae77e75fae91f158007d4c3ab8268a9f05a1c7d04ea30281c6d48bbb7c661a58cec4fd21bdf176f2b144fc0e90c568419ece3d919324e0704a5840e7edc3f94716344143672bca6f4efa1c2b102178c471b6f0a70716c13f6a8332c4c5ce39adc40eca9b896f7c53b44ccf453d6fa9d886f30286146d85115d05ce3fb75c46515988741da0de2cf37072343e4e1d022456ba934be0cc9f7372055a4b03e3d564dd0383422acba50c181194700e9bcb1ddea231ad94c5f24eb2aa2785ba5da791cde892af840f3a5ac49e09ca23fd444cc5b54fe33497c471d0f2d44ba3270221a0c89dd49d62f7d8fa0b8932e07bca1c9ce6c6713951d007c00194c6928ead4f5f0ab9b19c61e207504c5d0efd039c6776e40c21eafd831fba87111e2475ca5d7cd6c05b5f711d6b8082d871ead47889b3277810b2bf132b1c9ca8b10651f106d32162c3b775c11ecbf70ce651a35fee01bd661e92eea6b8ebd69ce8dd65571e008be0602c11b21c2d06ad4a453a8302c2494afde644a87f02fa76e521119e84f07b068e70a0628b69cdddb43ee189b287e1279034389815781ccc409029afcd604404a3503afc643e25063a35ecf633c35341a2e749d8fffb5d7276bbe1bf0880e690b0aafd51023a3d2674e19853ea5469ea940eff772eca72a9fd0fd97e1fa347a7dc1c6e2e7484c8f429ade2e2fa2860f2f2bc96a90a63db464fb15643a26ae715a668c9b3bacfb250389e79443123a9b87682640f9382ce02ebdf0f9e2f02e5397ea8887176b0b09263d07f5ef0fba2812e32966d231983011c0c30b3d34d7f79a27dac6381cd3bb7149ee4046b705a0015fdba5a6e571a24bae973b5843c9d1409119b75727036f817217b90245b44dfc7b00d7f407badb370a14a37a0bd7c33ca581bc2399896c57bdc4f484b7beca513d4b045027fc81f9da42d82adaf1797a040f229d4d802aa7a6225b758ef094f750f0b2ae5c11219a5b69cf0a7da9ebd7a94d8976b2febcd92581740b8587f19c21bb6110fc0ca89a5944c2d8d7e7fc3feaf9242a2556d20a016ce594e7707f9ac69ec64378b132af8f27f3b86cdc8007ff478cc4c094ab3812b9c5ce8749253ad0ed192d005b0e8adba1ae206ac7d3cb6f466a1d9f29e20340ab2496948eeae3a8fc5a7db389c3813c1df1482d085e5bf73c6d0ca261b7adb4c26ee0e8a631c8448876ab88a646aea9a603dca7179d1d174630fbf1462dd48f299a9ae66fd348a8fa523e88750a1968399a4d66f6d33eb3d02ae01c02142ccec9db1d711396278f53e56ef50325d1bdcde5d69be0a9940b07fb6845cdddebebdbcfcd9b76acd3a8417e02c05436f4f6fc3075764e4c6f6bc4212dc2b18c67568693970bc151e93754615fe033ac13d8def2fa45e533b06d7cd21275e9cf5373c55804c2a87989c9fd9493c4c9ba3694073ed471c4369fb0d0fbb3e2d172530021d95cb33ce0014fc2e3aa9058a03788ff41f09d2e4d4517391622332646ee512260ca040e709d1bfe3fc2e0a68d3a8e737338fb905524016515407f467be469b0aa51781988de5bf4032e42edc8ff996ca4591442a42b0e40d58da1a56a4a8a9ace3548874d7b49165e942589bb06d6d7b26f567ac4210559deb8308af2a7b3022c9c8a195884e49528143f9212701235cf988942785e855a8e41492e073fba43585506d0e4d7f554542f86bccd76ae56b5fb3c9ddbaf6892bce9abb66f3a568724749dcec41e1806829751ceebade531c354062ada745f24ed5fd0b13eb8626e8491e8078ba60f35dd0ff67865cfbb2e460084407840310c14a898ff0f36a25e43af5c2c4e46f03013a27ce099161b750535c93cc68aa4c12e46996aa581d8cacb45e870252e15b0c8e527f1fb5ae3420bdf29ede84066c002772652990bc9f071affb32c0a02bb40a28a8407b8b7ecff03ab215b57b0c57d0d59a40d23bb5a294ffe74478b85d3fa680d88568efc0654226003b117b901cec99bac91988e6dd65b7468d56ad3338a6a38cd1a03324ab51e935fd8bc40384549078caa5db831cb5ce71c32e9c764b07f28626214ad32d7650f481fa47e80e5027625334192ce90d5a1501eec9edda4f29bc9b3a54cced33eb23887e5bf1d44472968ef897f4a29d8bc211f22db6bd7283768228b2eb5f3b586db4172fec0fafb76dcccf3f44c91fe388bb46bfe10c0c7e4ca91c76e11133778bdede37ce15941d86b3e666626d75494bb4518a70e702c2942157056187756115f74c49006d2c932c50b0aebc0b5c80aa56b94095b910ddfa89906ed8f39c244b18b2b2be469f2b27be0c92ea5325e32c24d6a5e85be2a6f260989a55973a90514a6be849e7e55c09909dbcf345ce6b4031d968136da18888db1edd66850f4fa6188c5e87cc1c26be5252daa4c240ff5466b03d0cff5159ab630cf66789c982bf14cfdac499f1d60d25a827316c24d5e215664d22f5742d4ea325fe2109ac17efc93dad8f8c79d09d72bc53f1e855912df7af141b53998bac7d482617a0e88b7d7dbf9a681497cb6290bfff025d81371cd9ae807bb18968319eca667947f61ce9b39fddf07bd5cfb5becaadd40f2b63b59b9a902056c1a92aa891ab742970ddf74d910e445989efba219231dab884dd5915748b8584b612415ca9eaa9fb899b516658afbced1ddb1770d06ad01f4cbd959882859b0b610439c7b7d4d649e31ff5ae33d6b23f69dfdd7edc074fecb4d1763e358b5876511d61a2d4f452cc71c995eb20064d8a5b34d11ec134257ee48b0a15e4de74786c593eda261bc2237a7504b3eda5548c4c207664f4a9f52a4d4470a572ef83ae92b80eef5d012aca5061c492e358c08f2a19db7414efd8c45cc7d3f3f0b24dfdde9d6218951c077de9bfb0c2e31c7818b26e5e41f61eb70f7d48dede945ae5cf826b8f3646eda8bb6a8bbd5f808ed61a02e3742927aea9d25be97fb54e9e2d8f7b6550ff7b809c0d941a4cbf42df8bb53a104715972a9da4193ed9175fe717e49db7e43160f931e20fe2316a55aeafb0193bca096e9456c9bc78d809c06837c1b4520d002e1a9690b310206a40238d25e06e11d81d7b04e06371ced05a0e32667d359812630cbd7e3757b2da8ad66119a1c28ff2cb16c10c38037244abe64c3bf7aa0be6bef4e299969ba85c975c32acd7b3a0ad3f6b22038c895f4b2523400e6dbb9de42749e37434b401a8b122e0e6fd773e5577338d07ee072bbb2039d8134deb74439a1eb3bd1bb0ea9944b18f0b6609fd8c98465e52ee01f0fadf3019eafa649efe181c446c9150e3e886fb82911f7bc636c0fbc10b8d75ba06b081a1c4feee51c4b26f217e083d64a01af37e9cdf8a084f7ee3885871bda0a79b9fb694eb82ccc53e00f7e67b1019e3822b2b4f511c921dc1677c9bd029db87f269046162c6936c256710cce67312420a4e5e239c56d697b797e983219549cf1b8d065be26d2fbf628ec479270e3cdb12b764fa1dcb786e92f50460f93456581d749905bb6c2dc06f6052636107bcf66ebafc6ef50ccd4b2c842ea212517e06fabf9fe15877cfb69bdb2f858837bdcf490bd10df90d641df20987b754df57faea66b4d0ce4834360fdfb432872f1749d9cfd819be7460c2baa67db02f6e354fb286733330e6359577d367040aeca44d467504edd1cd80850229991692c4017fda8b15dc0dafb569368223d5b3c9be4cad9c6f0e53bc12a78f6d8696c5913f35129962f8a70f9c585dea520f0483cb1a8b62cca4f36adc6a1308d72298feb2abaa742ac7834a207dd01df8182fef6734dd7abb83cca48f46aace5ad3c57848e53174d254578c8a05f11cd037385e9bdfa5bac4db2ac7490429e8b6e25a09239c82998f60731f618224c33cf2966072f72e13989bf5fd4b550cd1a7ea60699f427562d3c2d0a5a79918dc3fc8521f7853e0d765ea4fb55f73dee9937ec020f92d6d8a77787659dae814c854240e44811450490526c9dabc781e0f12f6d9f37bd303cd50689c6847e3679d5427542bd3f6a55a8b6b15c84987aac0bde6677ad1662b59d9cd6d4ffe9fe10023738a7b4d7d244bf07e577b0b05d9cb85200fa27495c160dd8baa3771d1ac9fd628160bda419cd9ed7a631ffb121aa6c5de816c3cc8753207f075ffef1bb317b09bf4fa51fc4d66df1d2def8ea15f97d2563719881e6f2167601fda3bde2e2a55e1b361ba0de3b169b98355b8a81ce07f2e59a4a45138e304c48c89f257666fafd60e150c1e27d61d96f5f58b9b00bafb161e8e5ce1c6990de25dfceab8df67372dfc5938dfe59d4dde3cea7d7d10b1220bbc53241c7355c335883a9de215072f8c321dee2fd81efe91aac119b7732551d1eeff8bbc8e47959f03d3707c8cc7b9fa56ef70011d79885ee1d8fa7b149f95d5b651a14bf4d2a2b6b186b78bc2ec4a2645d151a4f3f6a295661a72fd627594d669f8c0753701af8d96c7b17a3b24713395b2a09101f68f1e8b3ed23a99cc9c8e4d6ddb42f1eb9c018893e6e04b208472f7913faab04fbff3bd0b0ba8fb392ccc9d78ffdf3b0b09091b0de4de81e4ee413f4384091f10227c3105581c515ff276afc374d888d0a8b62d49edf0806ef0bddef2f648b1e0c900f5a9f9ba9e6835a78c49d422009fb34df33b45fa18e10e45cedf51e0d75cbc0816954622aac39f90102edc5732ce80d3a7fd9ee46e8b2425c3fe0d8879077108dfb740296e515fa4384fb577878c205fc5b89fc88fb833fc23fb797e6e2f7aaf4d30218b2526fad73131348beaf463cb3f8fca9ee0028619417a7e4bacded3f17c01e72fec15e55943748f5ab64bd5faa623f80f22fbd70b2ef6084b20f93ee5967c1c2d09b4a1897b8580e66e29ecdc6b989ca6962ac45dd7e3d480ba02fa811887e274c062d62f37859acfff08cd8eb3fc8211b7f2376cf622913ca4f5a1f27cbd5a7e9aba4e732d28760730ce2b1f8e27858470e6daffcd28d87972afe97bae98dc23e58b86e2eec602771a684b377c9d689a38ba1b5a3c4a37c0c4e9cb0bee5b2ad7d5802c1eecc2da72a0685ed34433d8c255d9a590ed09ebb19d5b9456362698c87df6927f9f8562647fed457dba24f035ebe20c6d2974d5f58b2f163a02c1b592e33eb834f57afe88e11432be4cd7bb08101969d20949fa51812a212a0bc3045e0d9ec41455d392390e83b6d1d84b5c88063ba3f2a5b7fa7ac6d1f2fffcd37ff5db0e8b7a036f0bc0d70fe40c8f4720c8b65bb7b2109c76d28a34013866225a5f2a28538a9cad78b4ac97ff0e9df4e8c086ae7d6718f017a2de7c16804fe7d07d0272a48c2d36a7cead56b9121cadf6ebb9281b897b41f3a094511afcb71cebbe5ab79bcf7df30f44f9e832f3a65926892464f8c7e67b9f83f45bdeef3cf7fffe5f47fb4e6e795abdd0b751a66e6e712ef5450701b7a61105a0b65a7db725e5cb5d8ecc36a81c694e3a13c30a564e792c2b276220cc0b26e8f565357acff2fc235d94b76d6c03369ec6bc65969f40d20022927595dc5a1e323e654eb3ec5ffdfd3e94e209873d0bdc1c78f8bc68939a4819231a90470141744f3e43615bd82114bd3781b768cfb5e96f9b99377ba7146b548e8fa44214888099749ebe509cd1c8794883274eab1a5b0dc9307a87accadfe9f4590b6d4ee64eb475e5e5d3467952ae13ede806f51e407093ffc3173515e779ad450f2ea8c962a6617d7192b706340ac0808b6acfda12970516193cae60bc69b4fbf0e5d7bd4405611fc2a16544300200c123973ff1fe2b7b24532f2b82e15f8ee28a3862e21b7276d931e52debca746c74dabd689a43ad8ca86818d8a01fa94b3df09add16f795a6b8d94ad0295dd53f3875abe60c521a0ac96a3a5af65056779b449479ea19e7cc6639290f35297dd8b8ead09fe7abfba14022600c3010ca7f650fd2151eb93d55337adaa5485ce89a23d7cfc52928a2e2d8f996aa68d4309715435890e9aee77945b502c26c9a9bdae051991d10a7fa7064d9d1fcb6a3f20b136869f6bdd68a8da93c1fed3b58aa3b33cc217fb055116b8421c70c8090fa8a06c9f399d20eef148969bfd383bacbc6cd0af67a600f87748c280901e5a13f5e96c068c2a487399e8365ae53595a698e1edf026220559bdc1c185b0f2f0b2c8a8b3d30346828a19c08e305152877373de8910e8568e76b282a42bbe102d253b31880b3182985386338fa2af8f65dd4878ae569ddd6632ef4c4be76388ab2ee0f793a61d61f93ac2728b3e7619a17bf6d5c795ee502ee62c8fa73647b3e6aae3c6ba7d55fe29b662c38e931bbbe3a373a4cf7155a8e65cf3c9ec0d0b6b219bac830b259688473e83b047f830c3c7edaf05c57707d834b26444df882b8b6dde284e2d52f855318b552004c63538fdc39ae3b6cccfd465d239d063c94b0705398c79bcbde42e35f3ae431339279e7106f7d4bd820ccf6d2e020654481505982258de82dd274b331da24d9dd71a9a2a110257a6998b87ab3e3070495db46ffa72f2d89fba555477d1f9b719809bf9c429dc889e2635d6a76ec7c1ffcd5f004bdd4e688e6f952bfdeca7f15a5e4594618b0ae7ff44eec37c73c6afd3d4e9696110a569d870ef69ce1538653a3ad3efe26cab3cb6228daeccc86e85d0ac6f3f83c9b3c5d7327ab6e5931f9d7425958c831c78e041c4018853fb0d3b4159ad9b995a9673bd167d3c732812053085c37c8f3eb3076e6748b1c937dc24c1b90e48e00a8db50ff9b72da7ef793abb13cf72343bd7f2f881c03abb3d1f081d3285e1046174767d70820218d9d9805a3cf1ffb4659d35d0963d862f5a7c869a50dd2f9550d7ae901954d01ed7bd7435078d8320da3b33e69c53a17bce292d2c177c062d61cfb2d742d3f2e5fe36be79faa7c3c98a3e21a10340047b5bc8d40e305cc33bcd3a802f0a62195dcb0a8ac99a08a6639ac158d625216c9a8a2ac39c218f2c4b2eacb7216536653dab912739c065b138a19c8c72dcb2c679555963a11d21a18d958fa9e91b38d148c16f6a85c8afca35aeb4772075dd0d5846c8e55d2180de1b8ce22c2bbd87e64d8b0a86407371590948c3e97a328d695ed97444cd6062ab7516e13d7f13a654b8da55107ee4353294a8d80f4ec94017b99b7112b55ba65fc5035a24fed748bb786610ca55c7a88a87ad48d0943df832699c8246f6f37f2b6c58ee5c49869051e59ab0e064022ffb2b90533b2c8bb918c106af1b67de4e342278d70668211d9944a39ab228660410dd9ab2a01701e47153e6ac939b38a3b08f0e79e9691b1b04900fd430e06086fe85603d439b20cc4b6a762080aca7a60e3ed5a4396ab2ae65e11386129510e3964d7bab69efdbe401482f3b172492a22244f67a0fc54f4bd423fe816496a50be4f791ce853f888a1b52fd47c3111fe5d7157141964551240887c0c92a8dc9a58da216ba8b46562551b211f56e21abed8705e3dc5505b4461404b2fd2da7593e5ba42993ed6d86bd353780d47230aee676bbb6d183807c433ae02ec241205a93d03fbbba4120d7ee94ad60833581b6e80b3c69b1e6c737fdc3534baa0101083decadca1d00134b036f84fa08555483c42c289a2149a468037984d0b0958fe912412097b6a1f06dd03574e981b3952260967644619d476bcdab79589c31858910c0f76605a3547ea2f64857866e52b79c8f0f5a2ff3dc017fe81e8ea0ae94d90aa8abe16a564cdbef16e3257c6e49902e678a9abac97cbb050472178e296d9d69e5bdc60119484a89aece14fdd1316870d3a7370fb3c98e33ba40a625b397c5a30e47c5e6a453f9fd0ad58cf9995e6c04a293b6d0dd52c4a9c8e53f776da9fee820a987cd8a14e0a411c87f85746d0886284be57b3e0109b89baad717be528d80ce5d87c044fe376271264732ade45642c019261bcb7dedc54baba26acf1781b4fd1168e2924ba9789ae8a0103a13cfc7b8d8fd3622d6ab304e3467ea22904ea89b76be6fa62ba130c498a56965ba6be38a40faefc64d2169183c78ab78ffe5424cfe112d16d014a59af4028984a5f43d38acc5072c10d846fd2c5504d2391bcf29c860648396004ac646ca48cba0b196738956fec39f567726de71f68ecb9c9613f945b20f443c949ddb14225a469204f8525fa15b50e00a8d956fdea2e5cbcd2879266a00a1da186792f0ba3fba4dc2c4ab263d5d21e854e8df20bcf769cdb5cb7dc4c1b5a66e374a1f53e8b1e658075cc14bbe036228e06afdac0dd5f3e8118901dc10c5c26e93822b3f7a3f96fd23dab5a2029c7ad65ae1a909f4008a9f32c6e2da19d76809ef32d709615b3ef28870ca7ee111a7ecef4758e7cb8878dc259b6ee08b28e0b869f450719fde3d80d63691e67a9f517435316259eaeaad3014c8e7de0af3a0f3d8716888f4df1f7a18555b6c68e86d98a027aa59a4d13bfa193de7a4f74043d0e3715fa21221b52258ffc4a16d9a1008c86ba34752b6d4001827fab23adc64f418105859b7ba3faad023e5522d2d96f6d3dcfe1752cd73eb3d412f11451441ff99ab4caae3a6e6563da7cfc2790e9967424ad6c45628b95ca06a9fcdac42d2d90b623ff4b10c9a6ed5718649a545d501e9833e5a7ae704835de97221fcc5180557eaa8b03871d163af7bc63f0a44201a24e8f7c5f30898b95328245eab7a92859886626fd6ce4060a11fd2cc107752c24052af2a119270a511621c896572c29c6f363aa80944d4b829046276bfe0b91e3d87c72b9b003034203bf18ca86c6473b734f18c224c8f8e97673865e338907bc35022122dc272a45d878e1897ae2baab2993d4ef2cf8db8d75a227f52e5a383590c39ef43eb1365d143aced471828a5c2853a69e996441badaee6106a4ac1b25c94486dc7e0a22f113a915b70be2d12bba840a5af5879561d01dc818e000577f5041e4c772653746912214bdfbb74169b5e6f7f4aebdba83bd454a03f4c1102139162a4943fe395e16c3034efe136a12b7e4a5fad67c012d668b8baed1a56acdb74387dcea6c52438baf9bd01abf4245294c634ee0db77d19bf7f7b81da12ad4118a174807a4bf9315a2500b874dd6e42e9595470b16f0ed3e70361090c71ebe2583b24ca923182e09a6cd50cee039490017f1d687db7ad0fdbd9bf79555cd26419c91f35ebe3c1097f4cac70f892d87a79c226ceb1f67f9ead1e813cb39c4284d8c23ff49d475388ea0a9109f03c17df8bc9d44960fcb6277220abf3167f7b24ce4d29f930289e74b340eec65b1c13d0b4983339988a214136e2e1980b7f53c2f9187a8b0fee6023309d5bd62ff898f8dfa4899fa0cc75d3fd8aab58693dcc8951a9508feb51ae26cacc56911b05aa75a46bc0a51066198b5b9faa97e244def676c1ca16e8cbef866849274635c9381ffd113807c007bc94e5c3c0b1dc01e5b6d13b87d8dd4da1c36baa2cf6f93124069ddb02bd52664229d4887b665009418aab3b115bf768d3029d9c997c8eebd1eb5a6f3ba52730c0252762d310e9e564cdfe416bd0b632fb947d93305a2cc5648734064ef60fee15d0c69ae05eae23debe5a762c3eddcfcb80a62bac5f21d560864304d0f4365168120b72b03c43fca429643dd0a20d2175ea9f050a7c6b07f8fca049c4767f53454204fdba7518d09fb6847b3c83a0a24881a529f503a46b3d30f51bfe7746b66ca67938f0e88a24dc345a24c941c24d65a2f4d9f7b200e7f2d8b78d138d9490d384849b75335e79bb087ce4a68ad4358a9c90ae681844447a7ddb62313116596e14c5c92ed0b972db658d2d646c94dfc89f573d13b42cacbc42ee4172200f20c5c9159292d221246336692b007bba8e10918b0c4032a3178a0a2652201fa4c59fffffbb410111b1f893154f6fd7f4af4f3011238b89d47157e970027761de9dd214eb21bfa2fc6f9776a0e5ae73ced9b5bebe2f1c35376ed0b4cd9eb010770ac490746daba773f38067817739a5a5e1e3c43bdb4719d56a8ad0d234bc86f6e14aad90848c1293a165cbb759d2ea759b970204bef01382f31194dc0fa994d52f90c20615f7279beee5cd8eb0d5100bf6928159f8309d84e4c308638728a307abd7fdff452b69874356b1b5cdf3ef321b0dac9e56398c3b88b0f851394ed955e70d4746ed618810639bf5b5f8b93d98d5e7e7dcf3929f2ac9addb64f5747f06b78e13cf6212b646a496cd0b21600f0582fc1d2924ec2274f7d884aa6704f8ab4af0c3380e5a80f6f1673d75d87eb1f57830d2f220fd7e77907ae3c915480a45e83e7c86ee7aeabb3f72570ee16743a1c15d3a9d3603d52a371196db74bac944ee0e2b4efc7c17cafec460044548f793495f4496df63db817b52f82b46769359e156173720ed1db9ed4289d53e3e75455bd33ae8a1185e9b6131b0a38a295562adb183946a7c11c46095d71a9f14af1adb00090ad5f450ac61c272a208822590735f55eac7dd085b6706a20d1291a8f5c3cbc0a77c1248abb47c38372f70d84a3f4394d7af41561f9741bc8f02a0ae054f1bd1d5e9a3cf970dfa4525b591c0758e6422b563d753e3f565e2c419ae202f95870924c9cb1f9a3bd9d118f94e4081cf349adfb481f9197b6e25d5be8f1497e432a95b15ad401a2b7723f933eff9c1a2bedc2e255668adcc376054e01003c1544241445b0f5f12f9c304c5768f13544e9b0cd02fa36502bb2125bf7bf691afabf0969768d830899737acd5a9f465d7cfbf7fbca2ec54fe7b662bb62b28c3d4c05e36a7206b25cd9d264820b0406ff50c98df296de50fadc99c73eeb7632958d9f3d10fa9d72e0fed8f1f0ec6704e4f1f1c70f6b27a7073c7f2cd9b603070602177c8e31b52444f27a6d84d7a3ff4a32807e62bd7c59f7d8552834da092b61edfd84b8d1386e196265e18bae047d135b0308d791b789c0a26a1b842ead43ab816867e387cfe29e4d4a8d30a8ffa3e8f7d641985d919e4627204a16ac5d4346be8f7e879f4147d16bd3d7a9d12025cbe50506151d10541b5f56b9f05a7a3f9d1a1e70974e11a76bd42f1966ebc2153e4f1a02b5be52cbfbda5648ebf7b04c697e371af78ad59e7a0a294800489b14a7cdf049de29fc35ffbaab3b2ac924f5644a1f719a0a9713bd825aedf74ccbbd14158d88e9f7a9b5516983af3ef284aea870680fd9dbede4f6edf039be872c03a1cfab52bcbacd47a503a2329286910cc5ec8d5b581185a593ccb671fb0388d5ebb946679fe0eed6edb2c995ca65aced2d1eb0d3fed8112ae85ffab8de4b2515148f787e2e8f6d910886a2a52495e63f4e1e90980407ccdf24c5a3d112a0bbbdf1342d0fa18fbe8d509e70ff05afdfb66a207c62e2af25b83fa047a15dee2ce0cf18cf7f2d8092248c1c8aa9ab929bf3f8526490f3e4f71eb74f538997d762ac8b274dab070b49ef3966dacc7a290a6dc37f47d95c0f6c564c700c23ec488dff7b019f501b64a2d570c712b44c08dce563ccada06aabe82b4f2ac2d7b58073ad4ce9dbe53887b816f4daee529e6f49abbbcc4ca3390548c1b1bd2fa350116353bd0cc7708777f05cf120d12f13c59e26e5ca5a53c7a42ad57760d3798435de0d56d6cdcf887c2abc27963c382aceaf4cdf0a9fa25b9bf5b1b8dc2435f82f9bf0ad18a0628678436d870e433e1d613bf7d9c166b00ece7eadbb499c7b6b474b2ed669d67ae8e4329d9e5d93f40f473e3426d327405d9f7ae3d08a52911cfca5211718cd95608200be20c031d1f0714a6e0dd4c079990a89221acc37fb27f798d896eef713e488f0e34c74003b2122dd0fd60e3d6897e82cb23c9a80b4581e6b4e22861af6cfdf097e113fba925ebd245355b0da01821e01765ab3beb0728bfb7a407139f3c06195abe51dcbaa3abf6fc7e8b353f835fdcdf9ff59e34a2f2a90efbab3303bed142d9177ce27a754ac73038ca87fb37d44272dfae357ca2b19a40a06ece0fc755c249291eb014ec1194ce6a8141ab06e1012f6a2ee0cce359987de844eebdaaa287c983eb8fcbf0a850971c9f35bd5141decdda3d8ab50de206ed2f94a5187a82d15052b820093e89a9e0fc4d43af6b54c474f737665c58a1b51ea737b43a4647eec6ed6ea5a5fd4cbf9a899372dba6cdf6d5dd5ee0c0959b04ef391228a5ba4c60e24c4c27e68935d19b282727bc75b72bc950c78a3c9a1922e9462741a31b64d7abd197d1038b2da61b7cab219803c4e949cced76bed93778bd82d6e89fa84c6c02ec16f24c87f0eb084c3aa570f7328ea20587be1aed1af75d2099eee8431bb7e126f81902c71e1df8a2652e6499ed9e919a7ac4d9397d1cff8aab2ec2d646d889b9f141c3f5be8cb401858b41afbd36b3585b3948114b1da5bd86f7706ce3f21aea46025bcc7d082dc2f48d0f9a6a54ccae3f454c60bb52300b433428c8f07e8e572ac2ba5806d3f0158d08461b19100455976f2c7898e89f03f6f77468e1f54ae87e1d329987f6beb462b323d6b78bbe61813264820e5c33bf66420abb842f04f4e7811258d125596a2a24a24abb0d34f52413738aa66d7b855b88df426fd2a3d927705cc9ade99402216735ed7738e89169b8b80a82d084391841c8b148a3c38dbe02f10d770d289ffa163d59d7aefa0d7b00afb9241b74faf25d6bd2ac3d287fdf73ec2d0f4b1d55de9b29070b4accd00ba9c544be645c464eb73da3a8556d8bcc22b753fafb75984b2defdb72f599cf7b7ac21231f4071a09137fb97308ababc57ad102ed469f114ec4e51af67042dc7e2fc5ba719d392eba54f43ea93820d31a6b3a2c7e38f5ca5bba7910ccfd6a1c7f74ca313bcb471c2bba6cb11736ad00a39f3a7397c406442c146fbb160097ba9d01b4787cd18ddbc2528d5dcff7260dcdd4b62753dc2c39e0310481092c915e3de3fd6b75cb55e2be81dad9c0b8b93b4912faf977738dc8abd50ee656dbfcca2a8075e6f1e4b8be36dc290f5abba8faaeb11f65c7de3a4975a23a427144ce8b38d40c484497de7babce2ffc45917a7befa5731ef88ab5a93d552a1b31bbfac420d1425acd248057e571f125207062d700011aee7eb185e8c7363ea10be8dca51f7430640871a903cad6505d30421f1209cf9c0d7be7a194af60f1180a46ed4c0494ff7c6e0668164c5d05c63f9b8b0c62f50fae921c448fa8800daa41a089b3894c73079e8e7d8e4ac906b830e68e928e35d62ee4fc666af6f4d51074a6334957d4c9edc89675f4828d35323e2592b92c00793536a32c5c70350f77c211e14399036c75877fce5b67599043932e7bb06d248e2d0176114300c99085d17e5bb57dc4ed15f936765978fd2223c28e928e3b622e6ac143c9e866012fb78daf45ce0f7aab6932c2cec99872e47d1ac49c3fff5bad42404540e9d1d3709260b5ffa715b000d451b684420fc7216c53e4e464fd708b391d8407655a593e9069893ed28a0a24a6f7647133d76272fea9988a0e14677cd99d26a0086423dad83cfd133f153f87093f84e204f50bccbf25c9f48a5d075b866330269aa53e183c257ca892125b5ca4a04dcd4701339e800cde6e7b670bdb75a5fc98f57f5c5fd55d22ab44a2c39ea858e0961c94d642875e690b30783614d7d01d21c35c2dd856cb8f488b3e5d6ea8ece16d68973fd3b521bd861ab108bb05a33f818865d6fd7e3f5dad0f2a587a42aeda3fa168210eb0577a9e05d6b487ec4df51c7252b5a44e47e03a985774041eccae815c0b9d9ee9c80ca49d3fa4428f0a94c99616eaa5302dd055201930c71fc407320a3fd5d40a34386706a0223e3b2b95c0b9484b73ef7ff20b240e3307ccb0a08f96225762a3ab875739f887f686ca96e3042409d64147c72042893e178bf4be065aa450acc6d3c4858ef5bf8effd00eaae10e24be9eafb13a7cbf9c97a709b3e514f98fc37500bc5f93810a3a7f081c85856b68b4e617e555663dd3b3e499108af3760932fa5cb682a492c8cca2f6eb75b75f3ff5243137eca5ce986d484a5c810207d55727362c82729dafe04beb48787f348536b392f7c56c95fdf75b070a8ef22630c54fb72556212c415bbbeb324abdb72974cd4b3d3a082485403b85dc25dd16913d740488725fbcec424a05d1b5380eab89e324605830abee34dc149238a3698df7ef444abd9c45e299dcb0a093ef0a1a7bf93fd88df61ed02c5d53001a6c469a7a1d93fd1675675d972a7e5decd0b61a51d2ea2889439afdebd957c07968a82a78525a44c925de87ae7bd35ab1f7acf13807a86097a9f261340a65bfb4959cc0a4142581100ff9835e27c369a987d98ff0eee2885b559368f8409d0df5bbbca961783a4a1015c09df370617099e057091993f1b492b2a45f4974a178274d7138dd61ccfdedc82d628aea34422367b9cad2e9ca28daa804f588ff8b1f5da5f716a520e34d5be396bf4b37f0e18424e254ee473d8b2fec67da80424749c79bfb731ab194e532d30dc499d8623cfbed3b4ccb9eb5a5ad24a6d5e67b6bcece7ccfa53c0fbe02cb4172446c5300dfb5c9993c20742f3e52f783620eead3897157e8fb0a7609d03315d87c63c40f6f7b5c8bc1b69a6981d2e7899040d37ebbb30de168c8893e460403bf6f42dcdb36ca9cbc88dac27b15e87c20910722f8ca605bc3a56f4ad89ad3f975f308dc4119d31439fd7e1ec6e489d42c33b04cc17407fad36955ed9895320aba4ab25fbb1232d3a2fbbdb3753a2bab1ddd808c9e7a62c82aeac9034525b6d6a3ba10cec3953365eed0a2e4cbc9c3f5973156adbb98a0d0e71bb1234178684a2fa34edd44b6e7d5c4404641ae61fb33aa57c5cc6877718223de3861b97f719a19a0af38a1a54500ce7315ecfedb4c3d9b5e528d08510eb74429ad97f64e0d234db31809e181b77b9a49dbe07dcdbcd68010c925951a656c433dbcc83c63608f3473ea79b8c826c2fc6f111e63ddfc62c5d3cbbc773edc9ad0170bb06090320b0724f81bd2d6808502e6d0f062836bd9c899834087b191e0ecbbbc3d105402ba25fe7c84de35f128e2718329d83cc96a501771b686bace98e429cf94b8ba05ec042ecb8c4a5dc92a59f1943aeb0970e347f1b1461a2e022c7c05ce2544ca0d531050aba83ac4af6059c62b7e87af41a3f27388d37fce2429c7ba295768c117d74b7853b5b06fa9d69574d5882112d994790b2b8b989d01474d08f1603d8a5ab2dd255beeabc3701e17b8ae8fba9083f674b429cd0d700d900e3bfb96d09d1edd93f2a952850e1d284fc623bc7184111ce187230019a1902c4925e16c7a325e7bc8556f9aeaabae43bf73ce9542f3aac246b8821a2103da0832f8b5ed562d09efd8adde3f6d8a108251119828c28cbb2bc04744a0830855e8159a225ffd137acb4d63af0d44841c22c4309aa30b51041ab35e4f34a39fa6faaac635a54de35a3eea73ad486bf59a83fe3cb34e2f2906d5b9bca67df4b18af14d6356f3cf9d77587fb583fd12d5a57a4df5855eec679875e713bd7bab37c75e76675d6698d5cb0e42b3cfaa7bae7a4b4c0871170db9fb10775173e4d8e24a537254b9e400924304820ff28da541954e445107a93457bd2520e8f80feef881173f187f60ddaf71d4192d7aaffd52d539597c2086bbfb40e5ee3ff8c8070718c57187fb355e41e34fc97bd5288f8d136befd5031cdcfdaab764b3a2f8f1c75172bfea4de37051817a30470fb0f01e0cf985777ae0e27efd4ea13a67f4a2e6e0010f8e70771e3871d7e88807a05f3f25f3e0c70eaedd36f6b4452c4ad5a6fae90e9a70bf2ed6364c4c334032a68f0e76a0030e5cd779927450430e5c9083217290030edac081d008071e0efc22c1bc3a64f5a7559b68b63af6bae1067b5e54a3d45f6382507d5af49656ef34bd2b5593d28bb29b5c4936d516bde6f97bcdeaa8b5929f1b58b941941bbcb8abdaaaf499aa2338a0c031c3027c640330463668327ae38e37ac78e3884b9b373ba62ea2eaf26b2cb964bcb4ead13758a8c11935b0400d8250efcd8ec5302c8b2153db92dce8c20d12b89172f7f7911b2e6e380dc0a0818a06a419e031832c334081bb5f7ac40187cbaecebbff738a6c1c70b0a38db98a98461b7315b9d9c9a38db9682c0e385c78c75ef596eeafab1af54bebbd5957a8ce5b972935df741c612ebdad26d1bcd821284a9b373bd65e1bffcdaa51ad7b1e6b9bf4aa7e568da20e010da0dcb589ee5c75c40206c4e00631d8c26a73c83d0635f8dbc8d2c6956ba3346d60e16db4c1c3755adbf8e13060c37d55b535c1a074c14088aa976c41b22183fb35aece3c8ae29aadaacded2eca798117ee6e53d4af57fdd2a57e7a91a86baffb8aa6b8e420092dd0817b0bc268c106acbdd60bc65e6ab6fbf5cd556f49f7bc3e7f7c862e0f0874700077d38c8cfa97bc6bdcb1d7b8e25e5a2315ca7b8d1f6ac0a186aa86f52bdf9dd3b8e2695071f72b0d05a4e1728de39f560bb4022cbe823406e6dfb47a5d818b5f308fdef3bceb355fd63c8ed030e3da6820e1d78a7cac797c4cffa609a3d7647af49eff3940ffa6c9645aaf0967d33e030733b0986105a3d76a9688b8b3191730a3e47e1531c396ca90c3cbd0650c800c179031c56537ba5a8dbe58f5d77b5a6becf5e83d77109a5572a3998cd3ad6804191f196e1fbd162608cd2d4cc620c2c6bd251cc3660c1f760b592bb6d888d101b762f942765bbb73e16c7bb06210410574a820082a60c38a47703e228abc5001055450840a808e908e60548baa7099220315b4a4c08e23e2a7400529a862ffcd75087a4bab8a7e8ce014f47077abd74bcacc118bb34649e779a1ac563f3f7a93ac6a3ee70484eeec15fd9ff57f5875cf56350f4ad5404018700a80c1a12935c58f52f75581c100304eb74ab67aed5514bf28c2176eb85b6bd5efc1e48bd3fe7f216345f5bf008287bb157b38e1c5175e64e10507a6e46d2ffbe875ef917a71f2a2e4de8dbcd0ba90c31eb136c6da15fd749797f4114520d307ef7451f2abc7762143132e5ec00515bfb84872a6b810a1c08afb85d1ab55ab5df74d527eba51f0040a4a7e5f45c1aa3c0118eb3d0199cef3da9ce7b541b2c5145b64608b0a6cb1dacb8af6baf0bb8b707ab86ce1b2b328d322065a70409b371511400bcc0726c0c3dddda370c5dd936082950992b85bf1ba8b5a4c20c48aee8e258b2b6e5d8c2c1e9005b6ab0eb2246b2f94b5a2bb5731e58a2cb02c84b8c794a00725b08168f746b5cd2e01c94532eea21e462440820427094615a5a25024e0e1a1b88b2a30023b4690650458dc8aaf5a1bac5eadbb088c1120614551fdd4a47a746666c79280646486748d4904a8080680c50ab0b8020b203caab8d09c57f4def5aecef2aae9a5d26894f57726d56b57e8c57a45efad09010e0190d1155f5c615e4143ca34772e8cead55eaa2ecb6b66f59958a10377bf1e955acfab63c504ac185a91a3b502ac028e1f7b55f184bb5f18cdaa2a469a2a84b85f54cc715141c5e253db9da97032a282e47e81800d100cb9fbb561d48bd1bb6e559b4010e22310c8981af7e00352b03fe93f120d74ed7d2a5328bb57678aca3be67f753ed66a907a9df7246ff679bc2d2045901425775f89400aeb812cee6ec3ea3c53e6feb24c35e10111b8af3d5cd9923ea5c28c1bd5e73d8d41f734edebd5a252581457e5554b8d7a6cf1ba8bd835db7dded3b597faa8eabc76dd4fa6575df7aa35b9ae486bc7a1cb73b2e3b8ae59556d77bfa38af5c7dd9ba001ecd7767717a4a210c5a8011f6ed3539bf6f7e9b364c9aa57ad954411ba5f5664525301c7e89bf6bf697d3210ba73daf784f1cea337c9a3f7545d253aa2b8c228ade664a08a5ff8d79f0c04597106d5793599d27dde57228aa4faf8fecc8c921b1d1999f299904a6e74ee7a6fb0aa4dd39e99c13b32294ad591299f09aaa764559ff6cccc636da37a74fd9f19176066602ce945a67c2641688e525e127f7ad5f207df3fe11d9bbb5eac7e2aa4539c4df7aabf57f451333a3237aa5ed319d36acd333a326bbace60e44e228aa2a80989a20dfe28e5adf9cff9374d332e902c49466b25a772bde7796deefa3cfbaef70675d39f6dbe92bdd3ab02edc7bac7f4c1682a67efabded2de36e9e5d9a77d755294aab3694efbeaa4727e4afe4177f6a337c9927daa9f520010beaf935ed5cfaae6f1aa66ef8c42a1b9c9de9f87f67e35082745a93a4c0cd935a599007277263626883001440e771f2d018325c2b0a23ea92c69ab97fa6b7af135adcad1124796782165137a4bbfc2812312e0813bfe6caeb946fdad6613672401179817f4cf233229bbef9ac9085c71778f4095213e1170e27e6dad028ac08f95ca95eb7f5b23232a5238698542a56e56d5cfc68f310d151d779a1115d2c6f842200b084881808c5e571fe501317840081e30e47eade85d877ec4788755a33b94d2abfa1931bee368d1f4aa7e1e00bafbe5803a1c80e51dd0840352778c69d6dffaa41aad038a38c0ef480930464a7440099d6b5c7fbf1251041a579727e6d51435dabdadcdb549e533c1693e69409464266c00150d78a201420db017942716efbc7fa5d112b827218124408779b1f891b8c3dd1d09332e245223480049537bcdd9d21ce1c511abfb052394f7fed5cb6a6f109a492b12e645a32c0dc64cf01b91c5c76dea5b1a81c5b53ad5fb40469c2c90113aee41465837a208386c28c24a114345407177d4ce3ca77d4f3333333b320cf041440d8800011199888d08158658c110510c0165086c8a12a67431a501539c4cb159d5315acd607501af317d6494f8ac4825383a403b38e267ab8f62daa2b8f3a8d92333da2661d294aa6146cdcad817bb2fbdda150b435118ba628888211e6a6e2c91d106a1792c952c11eb330a1141a88a10142125a93c52704c913aa5805244d637dcfdf2d18ac5aa64b4eaacbe4bb0a1d80dd8312a13d42a46aa128f6aab7a149ffacfc799c93396f60853b2f6d7acbef88c963496548fdab127069fda8e3c3d96882df1045df4a24a74b5d70f3a53e6abb71c47bb42692e28e313fba7d59e41171d6346fb27208bc395f7d0e5196fd425267ce62f336abfc6a2693e0d91720429389082454a14529448c156f091941d5237dcf421d91df60e7be8a24aa5179f6b87eb3235295b12e9bc5bdf8cf40a34131a094d049d032d039d00ca043d002a4275810a02f51385d159c5996474f638419424a2602321723012828aef2d0666cc4ae38b1d4f54e3157ab5d28bcf686d8de9f362f766632ccc08938d9664c517cdc668a50fbaa8fc6a6ac7acf466cc8b1d6b46ad6489d8ac6489581e4bc4d6a8a991b3478e5898175134b569c4f75551fca07bb3904d9a1a2d910b13c16fde5da636aa37aac96bee5c5b9f7685da7d4faa265d2b040bf906d904eeae828fb2084639282f609481c82b8c4e5d9c28303a2d0942f3aa998c30230ccfb8c79a1b1b031313f35897319b67e4c10187ebdfbcf683d47b2ac9d48fbd56e85fd57557175d5d4c736df25a53eff4fcd35f302b215ed46b5abdedd6765fa77d4f661da695972d64edaa7b787ed54c56a77a71b406da2bf4f288c2232a778cfeeaeed545517a45efa964e279a1d17fe0f78f7ec1bc589817abfa9ec7dcfd855c1b6719612cee3ec2559e1c82e2348fb0ce8cea51fcc2be469546c731b344c634e6bc8fed79e628e5ddf99b6cfbfb149475b406c28ff1e9d3027787e22e3641ee3ea3b393e6d346fdba73d59b923bb87b929b99fcec5f35139ffd6a5e5f09c6341ae8cf34ab40416846536a69df12fa49ce93667fc63bafeecffbeaac3b27f9559b42a5559f3fdb46db966820bcf1ffcd5e3d1295ee8952eab3e6cdfbf3b3d3251be751592d993e1f845e25fafc5987bee7b4e626184d6925ebd0f7ec34a5d51eccbbd1257bf53feae733fd7fac79f6abda6667fd6daa4c54bd7a2434a54d0d465339ebd0f7e4acfb6b7469a376f6e753bd38ebce49f66f7d96d67d936813dda1d9bff355a2fa1e9dbd8377f67ef4d79b64ff59a24b6ed6a1efd9a5fd59c95e3d127cda57e7b4af0e8f2802a934faa4ca132a4f3020e4d002082980f00182003fa831fa417d8b6651cc2f166684c9c871fd1fd467b4a67eb1e3ce388e2bd292f764f73da52986c10f3aee3b25e5f78ccc0b9c48c1fdda3aa734e9aa291aabea1c7be58dfeb6d77e1455ab543bb5d1ffad7fb0d7dea9f4da1d76b8aaaf49c0fa41380da6de31ebeaccfae2d80bc33a7bc4629dddc1e6d1b433d62baa332adf93c65e51b0ccae572caf6957f4a219a531866596b43ac93bf45bb4572ec5d871bfaaafed845b1a28790236a94457bb05176c307ac52d8aa2ab011f3e5a6f31dd5b0410c505a290e2eef68649c9ce9cf65dd32884789538aa8860846249a3a5a9c2837b1521ce4497a0c8e2ee171457ae0d0515f70b0a1d285edc3390c5531998e2a5260363067eb8bbaf39dd8f2d0cc471a618b022c42d0c54f1c100486abb22f79fa98501b72ec0067a01135817d071bfec0874811b0bbc61010b1c71b526bd4a6381520caad1176b811f3057b93ee9922f1530a302674acdb80258057e5c2bfa14d8c2dd5da5c0e8d7b5a8a6a1408cfba543b2d79ab35e7f4afed9270dba44f5f94197fcab3957bd256cb3ea9ed3be4168de4168de9907dfd751b58d921bf4984210132998401ceed604c6b02690c504a4b81547bbb78a6693e9556df3aa2ed76bea1185eb3d9620a4c98be625a058028fda5ca245026848c0084b023c98ebb511b0c31d4a10f64910f68a000b223081114a10a77d4f4f82182f542b59533ef851192802985f54b250b1e254a850e181ca5b089c914ad7dfbfd7bc73137ba13f25dbd33a243f9a57f44e5991a3eacd15cda7f27ecc0ba179ef157d14eaa63ff871fef9198214d94846b1d76eadde349f2f94559d4410ee563485d22484b80debce494a74b5ed9f809070c3dd4f248dbd4854f13465d38db58d85848ebb89040dee7e3ac20e9e234ae06e4ffb88268e00dd2f23e630c28abbab2923a8b836a2848df861ea1c26a522cc28828afb5d7711a5225c7c33008e7d4f0cb042f5a8ea51d4ba19f0b2bae7be44c4e14e04134410a1c31073a8a8d63b0f6972a54a434c31c4912973ac59d542a4b6d0e7d36a6e8c5e12b6a670614d29a7c060add258d1c738b51feb92b43e89d99d4d33af0430b4022186462a3254a6cab2847020a48425f4e6a9baaad5ab1dcd7547b97feef583565b4531f2b12ed1d549632f4ce3dee2030e04b18430f79d3a82eb7c8d4fa08c4f2c09caf8649fd6bc5e685e5dd5dd51efcef6ba18bd3ba5e6fb2a0bf3725168a6b11779d537b556537bb390dd240e904f8ffe1469ef21ea8e523ebe313ac85e3b8ef6c88cbdd9c98fed855fddeaa716bffa42e7b52415c63a4dcb7c5275b6fbaaf9558d5aa1b7b4a64a9c49a70b651c9f087d56499b187cff74b363d1f3bc796566ac5150c6fd04e771b47aa5b1d73d4f1a7bdef5e7676334a56b4c9f35e5f3ab6672f3330551005264f8cc4eddd2946b4c3be8aed7847fa7aecd7a4deb35a53d32fb514a64ca6772d55b32d170bff29a3af39a3231ff1d456b206fa963fd9625f89881f540ee3eaae03b54b0380c5c02f714a59e52947ac2e91093280ec198dbd20e5fa324c27d8482b389b4229f8cd76a556f2a94df2a712859701fa158d293f122abf845a6eefe16c983b5ee1c6e5d2beef709bf7606ba98bb5fab75fdc2462c5a55d99dad354ee1d658f26b5ba310bf2c131c97651a7214b52bf2fcd232dd05c4b1002caef392fa0cb2167072173a7fa3feb48019dcafbd83b3090a90054588bb5f41b0c00ae2034124b137a3a92775584fa4b09e3c79e202440a80d0028820dc2fbd51aa2e5f881d6347d3fa830e7ed080f543ea5b9fa51325584ec870c200cb09d0d63b5bd2b59db0d0e4045693299aec34e9c1a40417cc0874adfb7febf57e89961613cb5a9287b5848c25424b3095ddd7aab51235a5579b44a942f7a4aed6fe69557f4de919997d4f4dac88eaacdae8bd76e7cb63af0bcd41e8c5389654c2b946989225edbc8c76dc19d5182b6e0b43bed80bcd16e6bed8ebaf9dad57fb456e9acbbcbeec2c8adbdc79bdb834da187b016d7de65769ec38c238b124d3cba872328e30264b72f232da7d4fe356e993ddbbcc42685e337a53d4ba816c7e4afe511f88d5554d4197a09ffaecfde89a9b04a15ab536b08216038ce3782ad1bb7e909128ff69d0468da671e764a2d68e11779d104ca1b344e7003a02b07ac0d243067a30ad1e8cb85f3e561caf9d1a6dcc656a711c6d8cb8afd545018d17ccab2a7d8ea345f399d73d7451e30873d59bbe3c4affc4d8cba23ab56ef583d60ffa29f9679fd6f55a8df7adb8a2e88ebd52fad4a516ba7baf57eb734afe75a5de7ce6a1bd96e3fe53796decb52f9f9c9d1c8be62be8c2b117aab7fa423e00d80000dc61785e74707a63ae47556d4fe2481a6160785e742ca9c692845e4d5f462ba2a2a0f9b4a7f2e2d8cb46013c1be3eb0e46ba5aa9b89ff7e49e352151d4844431a73766756ba60a55d5a587c09a09c235a122678acaa69cde196c1fb9c3af0f52efba75c9bda574640a47f35dd7df47927879c4064be60e77fb44e68a63a88c12ee0ab0643c991c2c991f6e49563c62a1988c60f16d040b4b631971e2da3272449ce312ba96888528c5afd00916c5b9ec7e75ef946886e0f0d028c9b9595daf6a68afe86fd567c9fec01430ee2a58ee638a8f958f15ba3ba4e8c2fab0fb87f3093932632daf0e4f0c2b635f6cb0e2baef897a54acb8a1b8bb0fb7bc289607648fd860f1252d140f07f7bd66d274c4066bc2620f4b6a3a33dca394faac8941f5ef18fcbf637af060ca8444b188287223e7e26e77dcdac470f72034e3fff2d4e847d12a6977563d6a6d42ee56dc84b8bb0d351a1c9656056ba3a36eba3521ba4483726645fd8c8a95617ea5528b6141b58dbd70b0210b13e27ea13aabbf66b5b476e4c951c264d4d82a72a5c8c9ad2225ebbae3fa54a75f96a6b6327451d7905f0870ebd271f76be8a262b2acc81a58103385fbb555684c694d9148594876dd3afdc12d928ebb45e40e7b2d2253e474e8edbad14f357a89f0707790c3d4dbda61053ba4bf975cd6a6d475071e60e28039227d181edcaf9719582f63bc9c2ed5a3f9a64a8dedcff5025a6bbda4ec9029f49aad21239aa730f129d9a18b1af2e2ee970e58bcb4d6d2a18a0e3a79eb606d0c02b670bfd654ba664bb21030b42f0274dc5a9b43969f1c52702a4dbd966f9aebb5aa7abf7a1fa5febafefe3de251dcda7af53e69ec4596fbeefca77b774abcc101a2b1c15152c2b9b1302bf45a33bf58d5f7bcb10128fe53f29ed1b6d4959536ebd63ad7e7d5350e3d3e725da345b5fa63afbc3f9feafd91b492298d2d9a873caa6356648c69ea215a5df37a85f24e8986862734b06015200cbff093fb3c2f991fcd41e8ef5cfbf5bd564d95a5de41f8c7f2998cf66ed4af99c65ee7db07b2d7b5d79fe4cdea15da3ba7f60ccccb68b7896214b57ed0785af5fa7bdc3f25a3f29aaa3968cea4cff9944feba93539da8b5ed4ffd87dfde75c4259cd288dae4e7ded34e73345dd578d292a45ea1f7ba579d5fb7c95350243c41ab13b5822f6df3c62d3bc9ad63f8dc0a4797d29cf5b9a8ed8d5fa67912296b4ee943a8ea3bd484b8249f3fa626356a77acf8cca3b6645b56a8ea3bd76ddb1f74c05a579ddd7a2f9aea4fe374de3b85ab3aad5acf50d695ed52c7483fd319fe99acf148ac67a4b124242dcfdba568fc48a98102de1fe827d52832e49de54a722d1ddb15b414277146abbb09818324a19b451eb16c5f2854411afdb946eabb484ace69f232cee7e997af484463d8ac61a95dcaf35faf1579f2e575caab87b8e8b13cbe587bbbbbd54fd2f6e01e00d774ba381f49a310ece353af83c69f097548f3100b06b7d2b869dad18b670f71c254c7a6248356ac5f043d5257be16bc160657bd282a18afb85c2c0c3de802c20598060e1eea325ad576501a1620141b3f5c21d6fbdb0451277d7dc7a2175bfac1774fc72218bab17bda4f55734960b66b8bbe5421520cb051ed65f653bc472e10790d5c21c6eb59002f70bf5a8991664ac1f70b8fb905b3f468cfe79b755ad1f77006eb1a086c5026ab120833b4907e59ba26e6983d06cad7063adf0c35a4164a970850a4f2c1548ee0e835b2ad460f960c3f26185bbcfb8e523c8ea81071bee776b34e6daeb4677ae710fc168ca54b5353262f44723af9a26fba7159b3ac6488cf83ba07987157d946a49dadd31b77aa8560febee3a6eb5582d538ce34e59bddad525dd5c559f17895b2d46ac1677d719f5286d514bd445c6389688b44438ee7efd8ca3d56b145d5a3d924fd1cc738d63beabfae57d12e6068ca6ccb2c82abd81dce105a5b1782765aa1fa5bc2a909a57f433a9ea35a3369a3acf1a1407dd516f0ece795ed48fd640e9b5515fc887c607e79a55f7e89e1b0db4c2574d69d4f3982a13dd2344a808f7dff9aa336a7a4b6daa25f585be47e724de22047e299925628518ad91315b192bc4e82d78fc29959258199b473c6a88c2134651e040ceaaf5270a4fa2100028a4e13e4221a52915df9414fbdb5e50b0001440f7118a255de94d2fea0945784215b7d71392f893d15ee74963699ee0c21d70b8fb08c59248faa47a325eaa4cdee100b7a427a3bd70aec1bfde72eb13ffe88e17bfeef8e1ee842bbe3a010b77271ce1a8134a4eb8c133d0d0e326c030c1064c80001370eca8c38e1bd8f180911d42d831431d6bd491d661d621835f2a8b33f9a775b431774d9d7a93f74fab3ef7385a53a35aafa38d813157648ad2259a49373b31646a93a93dda980bbfba71aeb117ccd0ab37bd27cef7a2ee4ee947ef7aa65079eb337dfc92c9256460093c4a788212e4b8f08fe3689fcc4350d446092250c2121e83668baefafc51bfb45734a56d3e08bd4a567dfe6c6b6a8bc3113b16b1e3682fbd5eadaeaf4ec93f161b92da8d6538933031646abfa8d4c73893a825dd806fd8299d0aca2baacf34b566d2ba5342033eb2e2e3232b281f5979808fac80c04756bef0919518f8c80a117c14c60a3e8a4202417eb8301a992f3e328df8c8ecf191b90073c847a6037c643ae123d3033e32b568c1058c1cdc058c22ee0286e82e60e4b80b183eee0206102e6008e1ee30c4f02388358aa9e2a3182b7c14d3858f6258e0a3981a8041fa28260e1fc5d4e1a3eb878f2e02f8e822e2a34bc64717921854b0729ab84bcec95d7284dc250709979c2aee926385bbe470e12e3956dc25078bbbe4fcc05d728ae02e394c20c012b6706b092d70ab0eafc306b796e0e3d61284dc5ac213df0c432c015a50f9280a09f8c8347d14c5133e8ac2033e8ac28a8fa250c34751b4e1a32876e0a328b2b8fb00acd1951f3eba62838fae883eba92c447579e5c91000066186179228e353c480b101fc5e1868fae403102800b107f4106008ca460858fa400868fa470c5475270c3475290c3475268828ff250c147798c7c94870d394bf8280f928ff2a8f1511e3c3eca03080fd2a2011fe581fa280f237c9447133ecae30a1fe571868ff2c0810b7450f1111d557c4447153ea2c3043ea2a30c1fd181c54774f8c0dd5d80c10508901116273ec242fa084b141f6111f2d115066039c2475724e0232c4fb8cb86c247583830c282858fb08451830d0538000d35e88083d7e083126ef9f0845b3e68e1960f2d70cb8722b885a405b790e4e016121edc42b200b79018e116920db885040cb790bce1169225b89544885b493cb792fce05692d5ad241608801018603895dc3a8d6e9d84dc3a5171eb34855ba733dc3ac1e1a32ba88fae30c0ad1312dc3ae1e1232c61b85b1e046c710b1ce21618ba052a710bfc15f060c25df0c080bbe0b101191c88cb88b4e223d20c1f916ef8888cc347e4117c443ec147650b2ffc40020fee82841d77410290bb20e1077741c2757720410840c51577a1c20d77a10208ee424513dca58a20ee52458cbbbfd042901986f0d10c0ff0d10c1df0d10c57f868062b3e9ae105256fe30ab1da38311f4fac18eaaa20828f9f00b8f8e042c995161a34b9e2e30932c0c2dd5948420e7ea032843174464b024065e84701e808cd31f201157e854a883800800422567a6411c38bbb038004180901d84089510c827eb0b07fe081871318b1c10756b078a347c7dd5b3c222c19810002e82e9281087cb01e840d40203e274e6c700508104ab6b031ef68210729c01bfce0e472c54a961f5344db42122b70b8a00e273904008b154c521f400ee0a1e50256f80b4640c35560820f6894b0e396124e6e294104aea4061d5c0061128e702b0950b8950422b8952507b7b2d8b89505e556160bb89505056e6569815b59b2b8a50418776ff9e12bf8f01635dc5be8303916fd0211b5af4ac6dd6d081243e8ee443c480c31140902431a22fe5507ad4469101874d6bb4de7ddeab5ef70b781bb03e14180b0e123023ea80cc0dd87113e8a080284872986b8bb959601b8680a09d8ea257445261f75a81e552164001a04897444c60e6198219c5f56f393884a549fd5fc24d65a8b0631841dc2d9f441f84d3608c1152a40713a3263fea942d011192216fdd364c2a7ee21c50a5fac1bdb23476ca96276a606771f6504f981fdb1466d901f98bb1545258ec86ccc117b7d10fe96edee4f3c080b2bd6e80f403b3634251a1b2b63877056409015e4d8ea5524bda822ffea4a16d9a8eed1e3877b8f161f615ed2abaad094288e367b46cb8430218d49268a98104e1e3c38c62463822ec13f0343d2b6d48b4c0f91a6ea54abe892f4aa40afbe8e7b0f5f634fe1c6bd258f33379182e9739e34f8cc4ddc5bf0d8ee2d514053a67b0b14f0cefa2d4f80e26520e7de7207e7047075d5267899b6adaeaad290faacd96846822a9dfc8a2e51e9d35c822e39cf54cedf1af7961fecff9c2034f7fc49de55f7e053eba443383332e533419543e799eac99c684e36279c93ce89e7e473023ad99be63c69d69286097f9239084de5a0bae7d7574b54db805a96025350308df35250b4cd87163bb48df3ea587d14f7962560daea578fa44509ab9a454d9da555bda515d6355f66cd44cd5969501a7d8cd2e83d017d0aefacb0ae5933ba04e7543ed0ce419fe4bcb9cc38e503de59a134ee2d49b8a8bb534844353f3d3e3b40363d4b7c3039a1e1d1a8496449618d8c0778dc387e29d988ead1fb42d89e98479dafb2d73c7f8f26ac050974b81a561cc1dd7fb418a108308fea1ea031a2106ef55a6b48000474a829c2a9c0e046ec4081d4e31de0c0c85d031b8613cd1344239a458045ffc4ec111b2cfaa7fb0f3c0aeb0e22fc4f92cc688f21666c7a4b93ea5115b010614eb8c21d3ccf8b5aef5a3e939d539a9dd31b843eeaa2a63345e5add236de4389359ad555ab7a064c991ea7a5255a7d205635bae7f30d3e53ba098f4a9f5f6383fe14ade6b8b710610e25ab9b44f740c10162e7c7748373e363d3836352e2a344098e0927c9921b1f1e93131a1e55fdbb7189f383e3759a56017d947bd628691942140de4de22041af79620cc04e9d30695527b501a9a2c946f723e63345ba035455a1a1406ddc9f6b4aae8bea7f242af3d53fb3e794f9a6bbf91157ade94945b23877b0b10dc4a420e57fdabe2745dd7755dc7711cc7711cc771dbb66ddbb66ddba6699aa6699aa66959966559966559866998866998866998866998866998168661188661188620088220088220f87ddff77ddff77d9ee7799ee7799ed7755dd7755dd7751cc7711cc7711cb76ddbb66ddbb66d9aa6699aa6699a9665599665598661188661188661591886611886611882200882200882e0f77ddff77ddff7799ee7799ee7795ed7755dd7755dd7711cc7711cc771dcb66ddbb66ddbb6699aa6699aa6695a966559966559866521f8791db769190f6ac77f080214d42f52e622a5ba777070cefb3f366a09f5eb4ecb0f7c10877b4b0fdc5b78f0560b778f811ca7334565919f5b84051046e05bbd5664794df55734c764b5dc195b540a7dd4be2aab75ee7a6fdc5b76a0832034e33fef7a7370d64c6678b249fd4fa17061d6751a86d27950b6cd1a01534feec6e5bffae4adc951c204cdf72cfd6094a694a677c3705eca92382ff5526ed1644af7d0f7a47cd09d1c254c9ebc3538353435a6749f6726d52f815ab62407ee2e845b3d4082bb289ad21d8713dfea6502b52c056a592a9ba8d50320a55046bdbad56bcd24a865a6ad7e7afe698b54214459344414101042c20319dc53419944e13762ede00535a9bf66134aaba6139ee0de92830cdd362b1d3c11a40304dcb4c86ad5269ad79d52624fab2862e4e6c1c89dc4fd02415e78c2bd050736c8e0ae42155781891cc8a8bfae372da2ae50d060e100090ee2c001161ca0c0dded7affb4ef094d2969a271ea47d55972b37f9ebc359624a36a1b51740167cd44141fa38f713ea57bbfd08c0bd9973ba2b85354ca248aaa56d5f712a04a274b786c94345179ccfb4954148f8ae2d138f563b3d5bb2445dda857bda59f7dd55bda3e34e4ad716fb9810d6ee0de02877b8b0dde706fa9811b34706f99810cd0c0c3fd4d34e670d7268ac5ddd1b0e2fbcc777d8c8612eea73b1a49dcf7fed38406b832b3fa42685877347eb8fbfafb0867ac3eca19567c7f3ea38aa1479970f733523fc389bb9fc1a5f9b44d66e0e1ee72b8e36cc6950a1461c614eefe6a6adaa6506a0611ee666077549b71e32bd20c1adcb7c98c1f2629285c861dda2c4307db2aa30b77d30ea430e1f8cca7d2a46ad354c65946122fe3c5ddcb00e2be4d76ec3074e086ab1f45d52a9326c3ca146428e19b8cd39d0c2027e3860c121932b8bb0f9f14e031ec18638d3595d6ac86b45aaae28e83102c319410a30877772c4020825210155cf9125081273e4f44a003620481bcc04e1a4940f1c58f2bb014a9c01a547c80c811ac2861c11841707791005a7059c348020519b8bbc8490c66b085901ed48002ee2eda028804800aa0451176dc5db484116a805155902181bb8bd0e861040d7c7063cac9dd5b2080830c520001012e7881bbf760021d0b404109d488820e776f39829a0101142d242ddcbd25094e0282b0c490259ce0ee3d6670020b12a0a822c60cdc7d050d60e00e911b621e3cb8bb480e265080083ca000c2e7ee3e3630b210c5e90542f4c01dbb34a1981819196daa2f23736b644a1a2807bbafcc5e3d12f39fcc3875d1a07daf7a5354a3f2939744af1a940215c210c2e3301e60857172f74bb3447e634c1386916bfd19bc6385093d177eacb7aab76ad2a52eb53a85118c1b77d555b5ecc262509556c9d3be2730ac0f6a07872eeef8c201eebe8b9cca5fed9a5a23f8d594f9d8def41f49b933aa06523aa003ab0920f0228b5fe5467b78e8f269bd5b2d2f8fbd862e2a072b6361862e2a8722525ecefca52d62a56cf5daa62034ab18b6820f5617eb36a99f96797d94d545e95a690dd4850e5d0071bf9ad8cbae978b2270110717667031857b79b91872772e805a7c38c1470ccc8b69e76bf5514c364461a1400c349f6846511d5c44c35928e87cab17befa44810d7e99d2abaa4e60865b31bdaacaeab5054b0c5c04661b306839c0096440f559e62daad05888446ac951218e2d306b8b18dc7d05b7b6f8a1051beebe77cc9ac955aacb266871f2ad5e5ac86851448b215abc38aa3319533e9336b630011577f71b8c6302b288a37ca11aa6308529645102772bc678cb5e33e9dec206be7f726f79818af1b5b248626581240b1d9fb1249935d7b8b7b8a0052d5758b0c6172d6aa4e12fc06205680ce12c717753837186196dfc5043b33bd8f4a6b76cb9dc7d01eee2011adc5bca706f21234a1a8342634c55a88704d6a5fc1e438c16153c600414d8ea1584aadd055e580c46afeaee6a38162b9c04a214b48461e5c7b5e2de02460bd883bc4500a2245cc1dc5d8d1b788f00788f15dca530028b211c91b138a3dc5bbef0a28b9947758f8c5d916ff6b45c51144270c469cdea2db2535d4413f2f5a394791dca34fff3f337eafdd36666276fd3d045a55af7644317a5ea8c2e21f10be17fa11cf4e64a3e4657a91a9d211c4c68466648d78822fe214d8a22ce2655af5ba34ceb357dba5a4d3333302f3328ade6e0b7413ff5b1517d4f8a5275d43737aabe79a3614232a8d289286642d8847f081543bed52b85d2e585c54c59a95a6cec70d1105ab0223b259afb29f1c998d5a922ade879615e2c46cf28257a7fbc46bb83b556dc3b7084dff68565f79a199259764d254436c0340e93e596959ff6751cd70d89de284b6cbeb669e1d6915b87793a03896a4062988795db67f8b5ecd342911b8f3d077265c6dd6efb34d30b12d1a0c4df466ad8f5ca0f31ecc9234433c019a7955ff67de46f1b8679da4477182092c1469259f77521d634cde3b8ad0811964b626089b3d2cc328eeccc6d754b29510c3c0f83dc076ae1ddaee7912414511be4f6e6869919de3813bbe00783f0bba5e97d1b4776e1c769e169a7d6bb8aaa88d8e8321234cdf09a5979b792fb5e906d77d3bc727bfc5ec861ed34936af5461453ad62f5a67a38ef2972c1f7851f725a77bb92e4c8ce6b01ce3eb2e4382df330cc659f9d44f1bc3ea22b24b665d7fc70f9590886dd7712c56c9a334056d5e64e4e0e4aab39a228aa442cb85aa779a486856499ddee2b4fa2a8baaa69fda050b486b6755b499ae4053b1c7ef79e44f13c731451f4446a9058dbb28edcee7df0db4c5094c60db190fccc4ce32e4966e09f66747ed65ba2da86f386b40a488614ade05e0f3f873d0c7ccc7166e644264784c6976087811ea665e1e7991a6812c599375f49699291223ae37e18477a187737d4b62cdc64f48aee8862894706159991698f65bf71db7f5d089a9f288a62d05d659088cae8b0f23b0dc4a16796a199996498f723370f67f739d3bb261ea3c498f6811f36312ef338ef13a30c31ac6999e6955dd85dd3530136b910bc18666a66d7e1ff147099f9d967e20de4b832fcca30beece24e033b8ecc3008feb5b291f76ed87f1867dec5400c8cfb819a8699f766f8db3ef04fa228e54d6b298a3352701e95816c64aee88b2ff33210243990bbf8b94fe89ea629289fe78be28a665d52228a7a5d5f5d7756bd78cec359b76d19b691d9cd26d3aa4ad9a2385384a88b7fafc44caec4e4f77d77b593289e299428cecc9cd6ac5e1d6444271071919920489addc791e46f61a6a974da448482ef38ef4b8fdcb2cd33bbc77a15c5acc3c1e7e71c5114458c7e94f29240884eb07519978124e6be30ebbe214d9aa294f72445f1cf954ced1c445b605cf9dd52d31e97f872d93d89e28f28aaf7bce516c5287f5efc426aaadc1169a181dcc661e59b8f43f39699094ad2fc362c2c43eebe8771dd8c288bafdc32b3db3cb223c16dcbb25c82f066d72c2f09861f489a2159d3838804f733c3ab65a5c79938ccb86f04d8e5c090343d53fbced3c02b0230ccca6d036f1786a0196edb098bf203c1eb5d8dd44acf0ccb3cf43aeaab74921d5108f0d7e1ac7bef7aa197659fc623bae22bc3ad33333224cd30c4bacd84fe298aab5497a2380305e8498fc80acfc324f61ef3b6ff3a4f2b4fa2a857349b382f65faaddeb40acec34cb3bb181786de2d3113d4321f44549864c7997f3550d33c2d34cd9328aed4157d515c1f044f861e87b1499658975d8efc40b7755818622488b30fdc2e289a82334b30c4c8df6ef6d847e293488aacdcc07033b18bb1df6e989d3c6062e42d390dccc0f73890fc93a80319487625c6be2bf1f619d9fd88220e64dc6682af3deeb28cbcdf9d4451136d20d4aef086e073f77265f77d188653e427116900fc346ee3c8efb9ed2bbf0e3405a5c8c7a64f6fb95f1467d47b2a714451845fb85df2625e784b93d4b08c26aaf281d966766477412dcceea6cd0ce11d191f445074d9931863a1c69118c7793803e0d5c82f2f8631cc0b71c66100241ff4b2acc39fb981f7d32e00925e17deffe7bc6f233150648192331f0bbf0fec3edc71ddd3e05bfa1155e0bb5da79959f9e0c5d9869114d8bad7b8db6998676a9b87652751c499e8090ce4b2b2c361f8ddcf304d1339e1699af79c87912679bdae0c75444d80e0f79a09661cb88126178ae2797e89239a00d8fdf76518fedf3a2cec4a1e444ce04dfbfb5bf9651e9899dbb684f78119e8e18ebb0f621c9a12f8c2cff4dee432d2cb4832cb8e8822f06df8ebca2ffb30fb32f2823237222ae64672a5569a24fe3eb2e43011042ec66160987d5bf6e4dd384ef480bf1988b752c3a54796dfc54ea2f8891ce085d7c4ba6dc32099995ac89d441146a404be98f926d64052c3e05666275124891a60625cc9919c866ff895da056b444968e45ff3cbc8af7cce34b1264242234b73fb0cc3ca8eecb22f131db18524579a198637cedb3cee33dd181172d9a69158d8755889bdf28bd82e096219feb8adbc1c3649066cf731486e5d098297bc99464304d6ca8fc34290fbc2edc3b47b12459b213c7c6f793d8cf3488c651e7612c5f3aa41f8a639dd94ab6164c6911a18e22f3b6c3b89225ea134a2b842af4cb6fade0bbf0c04c36c7baec3b49328cea8bfeec8d88822fe9cea206342b329d52a1645754df51046b30a4d99462aee233f8c034bace1ccfc0e9f4491f352a615651611fab410cb3aafc43a327caffc14697638d44caf23b95b625fa8ad5979b9f233b76cc3fe39f44fd39b443101fb03b5cd2bbf33b592bba5a79d44717b2a6696a6569a9cf6e5d769df9f44711d7a54146776a9d288e22ed52b8a386b1920a43c79efe5b42735f337bc5d75dd32594a9adef7759b477a19900e3298f6364cfbbed2dbcaafdc3e8f3b89a2286ef54394dbb86ed3b46ecbc00e6bd713459925286fdbca0ee3b4db91a14786dfb99521b769f7bb7b4d2ddbbc93288aa209cdd76422a394098862721bd6691ece4cedbb1a49cafc2084a6e152c3c8efcb8cc818fbdbe1f26661467e21cea623a7ec9a77c37733316ec325f69d445114457127092a3f2c31d004b14f2b3b9c85275114c519518c9293985252e6cded6a18a761da8643ae04372fca637cb10dd3bc0cebcaf0b34fc560863f8cc43e9233ef839f61e4e6114554896597c41bf685f8bf6b6253257febee669a5e586a59497ae0793fee7260867ddc97fdff4782a99f11c4cc6dfbb4d27c0d63dca741e9b146809e34316d66c7711dbe9f1796186fff0bd04a6de3b810c43c0dd43c0d83527a9e19e2cebb1ec8dd320b4f417458487ae5c5dcc5b0ffb04e46e7c99691182cc992ccc807414d03e25fdbc2ce34b992d4c0f25f1467667c4840323efca0fd478238fcc80e632ffbde73f2755d893532f3b807376cc39a6878d3380f93d973e056961893eb65e407de72c34af0fb323c89e28e28aa7abdeaafb966499875179b970b35ee6e1ca95d140714629e466e1f6210ecbcd0ec4ea2b8fa28a6bdfa28a6f0e7233130dc4ad3fcec0bff663035249a17264ac22cc4b6ff4b7a9de971dac7792920056020486298c49c77c1ac0cc199b2a4996648861fd785a51992e4a67d30eeb6cd7b33bc26eec06e0b4a917fb3fe8f0c921e2dc4f0f758186edc35bb72bb783e2e243d8fe46e187a6057062501c98ec31e6662d956729f6148340f7b532b338cf34af043ef248aaa474ba2785a57cd872fdbcc0d6f9ab771dfe661e4295dada238a34d54144d26511c62e741cee4420cbbdc9ba636d1e89065d8799f1762732b43cfec41cb4af082a6f675e14c0e77432fc31fe99137cc36cc3ccd685b6a75cf74e79b33456519514c5159145129b407c77bd2c4c26b6e7f3def13459b1b2cec4a0c9b1e199add2d3b7cb2c1c80cf348f323b70fe3b0b69d44f1b453290f35a587c30e6319c8811a4782df4914d57b2a8dd0905888958fbfd2033dcccbbc9328aaeb36cd346962d7144a07199107cde3b8ffd2e3beb2cb2ef627d17425a0d34ccdf330d6be0cbb65089e44f1d7acaa7098e1322febc28b370ff4be6dbb27515c2f4ad526028e7821fe36b3cb384dfb9ba9b41a74c97ca869d72b3913c4362c34b3932862f5455114676848aaaba4c7084aeb1fe26766df7b21f665e4d669ab7a24e4b22e2c33eec94dfb3ed2244f5a14bf447dd01c5114c59dea1034392d2c31783b4dc35ec6992751349d57e84da28866efebfe765a89dfe334f071b79d4471f3b83023c90d77e1f679a5697e27515c51a629a60bc9f2bef638d3b6aed3c2ec248a265114458e2bb3aecb409233c137b38fcb4ea2881fdd3810bcd704bfee76190966dc491437fedfa6f5834471c6ee6b7f6e56513ced7bba325b43696d0a524da61f1901b0c7a675a75493298622305776430c899411808896cddf2133e9730030087841c090ccf4427feab3061d7040400e37e0704366fa130d36bcd82135bc1c000dcadb06036439d0c015e085007600e69a32194048868300b414a54b93fa42ba7cd564caa2789d9696ff05e065861d6458d5bb0e0932c4d24c261c4634b81c0000d9a5210602c0a0e1df0148945b961fc5beb007e042015a18c08ff58386b0a0e2339f4a981538cf002a789d667d0c69d57a801ea09699b48f724fd21484e6a1b72d99097500516652f57a4debd0d3e0d60c62c84202d1a32eea23862c5d6c20a2200079c1d918c30e1a77170374e14156c0e2c70bcec61847a071eb2af8e8d1a2824b1240921085b09004107749427497246e70972190dc65089b358006a4e15603de70ab0140f09114dc50220697190810a4003204b1425c66d0a109eb561346dc6a02895b4d60b79a50b9d584136e3551855b4da4e156133c70ab8924b8d58414dc72c2c52d276c7097bdbacb6e80e5848c5b4ef8b8e544106e3941845b4e3ce1560398e0961358b8e5441a6e39e1865b4e04c12d27a0e0d6130670eb099b210390810007c0c3475670f091152fae55a8643328c64deb143223000043020000d310002030281a0dc70322a9603aa6f71400025eae5cae66a14ae428c931658c31060110000000000000800193871d18736e1c52e850ed4bbea45651fcc66595e89cb1cbfab81b79da605983b01a8b33bf149df7aa273eaea7b403745bdd3515416b6fe2fb83ba1cc2854627bd8e6fe889e2101ec0ab704a071395f208a7f5587e00e7555ee79cfbefea3e87453db94eb2220a55a3ef622f837ecd6e66b0d6c330279e540bce314e4f5f2f55d4e2a1897541e17d2857df82c2acd39b37ca86682e00dab81ac584cc44ab15f50db89db986b3d51d3785d360a59dc3536b6b8b047d4337f2f88a1753090d61cd4d9d6220976c2021ed94b9b617ebc07c414c8e4c1963f5bd2a8bafbe86fa9863d8aecdfcf0d251d708a44b7dc55554bdbcf3ff4f9493030cccda43160f33218f44d3dd7b021bc53c73c4bd8619f48eef803a7de2b90199baf834e0d2851f7089b43a2689f4cc31b1f325b0d75ae41c0658442184a6eb4ee997cc9184d44ea46ac405ad919e9f9825a0c7f066df1a2d9d07c33527e89a57e66aed7b1f488b7b17a0b6ef16efbbf5fb6ef77db771dfadb9efd6e67d37ba5a0f9144dc483140f16a82aa842d1d56ec424a0d05a3f67f93d2fff00ddf0a81d945d96b1c9d7c80dbfa5c596b675a671ae5a60b76038d7036b22963cf05cefb7cff8a9c203c7d30718ac687500f1f39594e30c0313eda909b7bbb0541de830c13b1ae83d818d50d3ca3b8e89790fbf5fe17a14f5ebec3f362cc3c8c407c7610a869f0fda4ba1d77d3ee7db75290ab2ebccbd63ec7c472c163faa1d1cdf90c3b53cd1d021b36f15431041c54a01757d42249b2a2b0b2a12b97e2d424ae50908ce27c4d16bb6b307a9cb79621acec77576edd10de6b7355ec96d1c03ed477ef424586b02d785ba9aaa64df50a3481f2608240a2c92394a024d3a555d1a9b4ab0254388ec3611367fa1f5b6a677ad4e68f53f799a46a90a8326efd8a27458abd092024a2f277e9394b3e68f97d520314ba161236642adb3e6b93b73b4071f69889b61d305441d4063641a94991f8f385b7a5fc05d10aa35b4cbedb436e107ff88c9c5a98e9199d7b17716a61bf32aefdb70656d103a85eddb81ba97b1527da7bea21656781db438dcd7964b073ad172c9bacc7cd8a5c2a9275a2100bb5fc283eeea4dd0efff431f96e07218268d0a13ebec4ce96b1fc387966ace525f35ed357a91ff8ed5105b4af3757c09c80a6e7e827da9eefef5783966d606fe5fb9ad453edc4446cfb67fdd3c566f3f5e8057e8124d98a39d7e4d3fff96e514fa73298da50f51eb890ca1ec93bb31a3c02e22cd2ae36ebd6ceae5963870ae0d6c17d03c65969e2ec730226ae2c684313e6c88f0216fb3a01b632c88a9c0ffffb51fdf34d066ba0ccf9ab9073357bb36ecc90206c6b486dd2236818226a21b4b49462025bce8206b675cad4475335f4be7926f620357065977c0a456cfcb10152bb6133fff398974b2330a8378907599ca93c85343115a5aa1f4cd709f5ba8a26435bf53037f4b233976df2dac5304914ebf2260c6da37b3e81d618171a678e9130299d26e6f0299c7cd2733fde7bc3f4ba3940deeb7e1c64601eabc4f8b62498fd498b8416089998efab2b463d461e5ef17a8537ea426f94bd54ebeb351cc16e3f4cc9feb861983576f9f4c55faa544784071168eb1bb84e27405a0afe30b34a2eece089f2b049bcee1c682c9e25396d042554f1bdcdbcb5b99eba274e92a9c07979cdb4c47c515b4fffad2c52bc3a5065a0a30f99c45463a0d5290806bdc4de7576437c73795d37aa2aed384b2c722e611eef82bcf03d7df32d26ebae3d5fbf496820e7ba8731329823aff38d48a11213d2170d0a77abb384010c172e68f222ff99e8a6d055130e5488d9651ccf4628385be1e6e8778360cbd74a3c1f96d4781bafeea7c881ca5df9d47ceb8e1ba899e55c17c8c41554b93e20cd429abe49179659acb3b95eb1c544ed4a28de678851a15c46523af4a7042b6a978f6abd2b3c36fa1356babe8f947a5eeac90e8e44916639ca73f8505d72ed625faa9676763b04e433ac8a8fbd51451ed943d4be2cdd2876eadbef2aefb4fed30164c5c6164deb854e5c9c473e5a06d8bac4931722178f11154ba5239dae52390a198e9a0eb08e4c980927f3c8f3ba182835f65130f4a4894f21f851baf1a76046c01847e5fafd40130619388014f391c0816ff5b3926dbcb05e85e264eaef2fa6558df039b63597f1580ae3dcc2860792bf5489d0527ae82ebb49ed4326129d50ad6702a74e235de4f9e8bc6bae8cf46bb59615a8c00dd32c3c4d17ccb0b82288c3c013aec24e13dd11d1a8a503ced0c47dfb78f916dd9e5507b81a1e9fbd372ce0450d896061a8469910eb9658d4ed6d2430269b0f0055b0d549424b867f10f7795422489d059eea8b8d21a01f2f5e1ed43f1d2a0e2409241988557e70779f0d05d73f60e2c80e9000a78e7483de8bb9366fdd7f248de66dcbd88c381986818de07b69bd7dc44cb0ed6439dd6e52843edca2570000b0bfd4e1e5714303a0f268548e6186651ad19c651207455602cb46e0510bd871a771e60978606d4b52230e839eafa0e835e3f30c01177f8b3c0c31b7136052fd7988d74acd1e422eaa49b0726873d09c7009fb846f0350111587fbf9459d462001b60c0aceca0444c3af2f704d6f6f43d6c7f813e3c3372c582179f60d576ac0253cdd0cbb963a28abc81f84485226e2419060006136d62fc7e800e4c00bb080093f4bdc0e17efb191b8b50463933f76eb412322126073771c98b55d3d2b7715680c4b7f005dcbb247229968020c2fa8626596340d6deb00905d88e6e8007e4d0684ee16145d2f0c61cc56b7c6734fd1d6a9f0eefe8932409af6e891e0f03d2a20965691ab8073ddd0d20bf2b18d6de5490652a819d10f02c5d063b2600550c2e7f85e10d1397feb74434bd3d0c480cc1e8fd2882239c77787a9a5605cea3e66f5d38a38c86486c05f31c3c1d81893c130f354eba25876c15fbd406180715d1c7f616cf8b423a3bf67dcecd44b82dd43625cd708da3f7ac7d6eedfe8e9b61afc2c4eb46d3f2ffa93ff9189360c42b8c6e6312577ca0d7b4a88c99f4bc8d75e0f5eb76029092e2e2610708f08fb05168b521ca260bdc142970f428f1cb33f8fce683a23621f18255bd403b755fcd8f89f85ba309ca39e8d99bec1cb3554008c7d3e3ce14a6e24bf79d407be26e30dd1f68e2adc6fc73128d2277c093f20724ab47da6f081d10dbf5b7776a55ed3fcdb5b1a4b66de25fdd3b6622781fe3f331d6343b2e63a17f00bfd3f7ad46017e99ce6236952b2a727f563fdf221da7e14d8fb0d1adf4cf991fc1be15ce1a0b0d1330e9d8b330843597524c1aad52f55cb5389a6373dae5fdf6742d68f7d9abb9e0ee1f6e27ca18e416c826c13bf8f6bff81913f353d3bb2fc5ee903d43541d86736cf2dfdab37ec6151370b0afae7cf860a775ee16503d9e2a874a1541e09b7b469f53893a7ac87b7b236bd7b0bce0dc298a2be644460bdfe140695bc2b61f797626dfedc85a5eafb292d66004677e73274ff52755daea4b11f009aacb4b8a3a4776329d8782180a9544bef259cabbe76f1a1737acf2016d93f44844d73c6e730788c5184f2ce315be4d9867c00501842dafe08ced077f89c0b7e99316ca2a38ebc69d79b0ceb8778015a24f76733812b711834765761091cf1e9d20259cdcfcd020e5e8cdc3ede1c8f4d0ab1137a5a0cd04c037133dd091a78d58db0726c2c08861a73d7006218668cac1cfed81433c07168cebd8641042c3f9a2dcecbedd1e529f4de960cbfaaa9cf8b7502f0877f6a4e4ae3352000d8398e87fecc8c80b16817b9f3e510fd165cfee35bbc5946391643fa1942fc3b7c47dec57d8883b041f4b174ef66adc73da6a64ef6ecde4c0e2f3d0b1a899c11eca5e4bb4df48707f64f5f1ca4d67a78d21c59223df073e0b6f097a5e75ed075ef0549439299cd146f7510dc61712bdaa9a7d1cb97cf5b413fb3d089ae3792ec9568fc6b56c3317d036cf23863f36036050aaf16ce7098df69da9df70036d051d673fdf5b552f9540ee4d1d5e11ce4417a1a20d731fc95aaf875a2f0cfea7106e5337b34dc8c72e05f6e60e2e9d2b54fa037912a622bf920165f3ce3b3d67f12fd92f32e9e9a641871cf0b722104237c9af62ee06960c0ad4e244a9642e72982a878594280e23ff6cd5cbca7ff218ed83e621eb4c2f9c1abcd5a31473cc736e48a2799ecbd7379c06a50df101ea2d8110503cbeb3cf22f8b32dae83ea88d84b76b057da835d7990cf6826a0181fd6fbfc846b037797927eddd3a431ab99a3d03d62d5f3255bdf6ab6f5c7988dd5f2b0822a088943fe11b329d6939d08684049b936fff123dcf3e48df063d5dbd754a4cac7dd2bb76956abad1873fe09e725f3d5356fca6b8ba3ae09b6a5f4abc55de26306b0d9ce10810be2d1d5a88c58c554b4e972db7f0d25904ccf7e00e7375c0ca091e48891d0b3c1079ffcedf874ed36c411b7ab8fd7511e5e6863612aa008d6f798f61bff7bf644d3820ed5eafca7cabfa71480e0006854cd1e9abb4b1f5dd189ccd613ba2fc53ee3a4c29786b9be9cd56886aab87cddfbc7a34c81c071faa5dbe87f0deac0ec68f8f38b00005752844c6eaf9e9e33fcce79ecdd829c02b3b1487741e89d39033aecc3a7f3c7591227450b2f577b9cc48ebe109f8fcbdde70e0562a5170e1828dc85e0a05c23c8a500872e227fc49efb6603e5038732fbdf39b47112e22e5c83933ede118b11d3bdaaf5c2dd935bf8b8fb4a011fb8d1b4ecd493295c82b9665cd8a3f28e11d656f8e834a3417b3801d197ab1685b616ce14287b9b51942be4c72e1252bab5c64d6ff5d9f8476b4ed306c9722c72d846be15f4172315971c7486a158cfad4433592270835276626334f67963ba61cc6cbe4c3e97b8bf85c41596b8d5d719c8192db0d74bfa5bfd6c80d8af42ed572aa696c1a16ca7b38beaae5ba3e4f99b80e3c678ff90b62a5ce03527afe2a2bd1ce9098b35f94524431013f66ce4387cea8963a44730c2f7217e64d6d958301e3fcef4d9bc2dacc5a0f054b7ceab2c6bb8681fe543805178119bd54b241719b171dc222589774c374e25eed15dfbbf5fd33e9dce6bba7bf7357dd218d0e2518518738418029b34ae4d7d0d3409ee94134c44714d6b1b8e5defab48e9ba328724e88b5ba8eba502592a98cd85833daf2f328a716c3680e262b7b065c823e923d5d06a9e633c7111bc3eac9ff34e8b37e440212f68f2c1aa9855d03b249818cc943bf93682663de55dd71c31e1faf0aa9657494f6e0a0e71e4bb82a114d309366b1218cf0e1cdb271781976ad4aae4c8bfaac9f4732544bd030eda312d259172bfd45e4b05ea90fd24fc5da73f69c489ee70553782bc7991994adc5eb43791d1a99861c60dd38a5ccf100901884f81b2d0be941f47683fd59f983ae376ef06396ba1ef46e7f37feb0764a0be71f246e34bcd9da617bbd78caedc00e180cc09b2ad330b40348ef773ab128ded1835adb918dc979bca29afe0c3014e54c23fe3eecaa7c62179c93fafd4bff49785f9ef663b32fee2df08ab2004f73e9aed595ad0e86d337b75cb0d27d51976df10983919f4b9c37599020afa2461bb402cf2469166af38628bef3745a749afa08a2b4511e792156f08afd4a4698e85981cf9eb227e23ed95ee1df6474989f97f6ea144467270510efda2175f1404434e0dd7563e38a115c3f22e1bab983b21225722a2fa40216f6252d850328f15b54745a9dd552f0da10c33741aaa280a12110b9fe6ddd6fe084235a05a02e4b729778a03d428e1b8bb9a9f9f7fbf0a96759c1b1ce808beb7562f7183a1ccf7a750eab8734bc42d40f6ab47c114d132778016de9bd173f1b61239d2a119b510e63d36e87bcce7fbbe1be5bb828e20d2865919652e1262074d0e36b0e5e19f7acc95e345e4d5e62cb8991a84e488be634e76a51a626d4a7851506cab593e25ce669da0125e248d58dc281a0a2bc651e46439489fe38f034d30ddde524622e9af8e986e054bfeb16a1b6c3a27b35845fc75dfdd5e9b6fae10dfaf8285678bff01d784f87c1f0b067a6d9ab3144053dd99987e0d33ff779a32f93cf2fcec18abb274b7bba52c682a5945b52d6b02eb90d783fdbba3025ed369d96d10318eea2eece1b1e6382fa628a3d5868f3965cff446a2db8e0f6230899c07a3ecae12e985e4626b7b373145faab58f7a227d96f4385ebddae450f285e323d94b55af4f00cb056569d5566a61f83f1d0348d766e54cea99f8b9394e6580693414e1ceb345401b3586a4d3b23b26453f2de28193d48a82e63f4e28a9c1279d2f6929944dcece01af7fc8affe85287950989554081d33b2d26e13e98c171332aa14ed9e48961963c324c46ad036994170cf3aa618ff4a8b54109dce6b9147cb0125604984efb2a3839402b834b85858237399b41d66848824d79c53cc7dc76860e1640565c0242d5ed67802ec0c2ebcd920aa205d550a573eb583e081e3e9b368e7f061241026088befe35a2f6ffbb450770330933ba9e7eda95b98d9d360db61ae4bf7205c1db1bcb94f5f3dfea2e9f6139067e4eaf52db62488d6b32dc33537ce584d0f31aedd03466b78f8c1da1e7f5083078fd6f0f083b0318e00060c108581610461631c010c18200a03c308c2c6388bccfa431516d30d53086634a4f0cd0e38be05638461c30031181840002b0608c38831e230308000560c10861163c461600001ac18200c23c688c3c0000258314018468c1187810104b06280308c18230e03030860c500611831461c060610c08a01c230628c380c0c208015038461c41871181840002b060877c95d12d8521eb7706e33aacdb16c05b14d7b4d98b5605633969a8ffeda41784c1a8750ec34b4b898346ea1d86968713469dc42b4d3d0e268d2b88568d7a1c5d1d4710bd1ae438ea3a9e31ca25d871c7753c73974bb0e39eea68e73e87618421c4c188710ec30843898300e21d861087130611c42b0c310e260c23884608721c4c1847108c10e4398f4208110d10314c2f30ece084d1e18232c7a0ca06588d6b53d03b537c08055242718d1e080114d5f528bae765ead5823321b42ca5c64e9ab48078a56323994e6e97b20aeaedcb4d10764e980c4084d094619e1830024be48874ec39c25d9583d419605214f8d89e736e94aac8765c4707b167626700b51f0ece4625dfeb0b57e06d3a75ae357bc46e73fdb0182929f29e3616095b4522359cc12f0d326e8130506357bafcf50aa39ece9367072418d7254099caabfd90ae85bf28efd7ba7dcbb024ea9b3dc87179730204d7bb1e9deb854616b441d532df1e3f7c059dcdfd16d9a77c0c3aea64602a0b4072adf607edcad62603231c77f4e673903f658f71c88a018f31172251e76ec69f2d1b392d559751e4a296ae4ed4bc0784cd2df6829985aa7332a71f488611899048269db7606906e570fee44acf5f466f8f4bc7d818d70865ef75e81d0e16593017e476701d8cd38edcda0154f59a72cc48f6c4b03fa36baef423b25195ef1739d231bd5bf1acdc93776e45fdf2f861f73ca0bd195f8bb362cf224c5ab9fe1569f84f57d84bbd84f48a1d630fc20e8a3184096ab1ac73f29dc7997c26a1c69ac6800a8c12ca07d7da8319da21d13138af4ce4bf69c63c6348b2054f9639cb9df9e7fe9d5b58198c2bd1c5dad0f71570e480d86984285a3ecf754a7ee8e50a4f4b5178ca6f67fe67eeff744fb8ae06c29ab679ccc51c43f333ce23bbc45f051a28b9c2d697f1e85166e43f8fdb3dfc49ec167903c9dd014e93c835a6d3cfbc758edef50b3e737ba99a06107024412dba764c51bf2de04d4ee8009383452a049e01776d7221927e54d4b8324265fcb524beda4c849e7c0f655dd2180069446c32390bb5659c30a39cba69b0cdd2307f917e85bb73117429ae975f144f50a5f3f5e7e1a2c29cec5488ff52e58ff25f143d1a691c1f9c5f253a19eb60914c9a39aaccc33c4b7a30c9735f19e5bb502522b6c7649f80cd43b4edf93ca127054a3452489962b21b05bbc53c073e184bcb635f79658b3dbcbbd55fcf472f468101154d1a0a917edea2d177382c0a5d710d344b4ea2bcc5d2b58d123ead7d17f15054efdc18f34d1867a3cc688f82ad7a62660122a0f49228ebe37d488fa748ab58a1196f696acd13b7299f712b3f505f4118896f51a5a7a68d100d5d7a294d5cc9c7a9e2e95a8bf53e8b00898e44d5eb2c8868148036f743a642509999a15e3b680a3b2100cc57ba59f4a13f1e8c71f4709167aa14b0d5462a258d059b89781be55e218d1db635ec3892362f9c25f6206ffb28a490a3adeb27ebce5402c1cf0b60cdbcdb1bd25352288d402626d3f3857f814692aca1e2694f57ce13e6481411b9454140bd42bd0aa90673e2c265e1844d883ae70684a3836b580972609fa7316d68cb53547934eda642d6b02781e740405d2c2538428976c0f9b7c5bf0edad268bb6c5ae2258607d5ce3f03a4ab63b0de7032f1abaae8474a45b61a5271654d1c0a2c070cb1997aee2a617677b37deb0f41d678f6e0eb976090f639cc1c2a9566042095e6523174c143e084912dd70d147157ccb65b18c572ced2aaacf8b790bc0ccc9a48a9d7f442f22d00632a739484516f7d36678125bc4278d456872090fe49b52e7ffdb900f03c1bce80fcc67dfb79b06d23ce9132b12bc597efb2818ee566dc4a7e54ff5e9e1c307239405f0ede28b56a3a239a517e5982128e1f574e583312401c4f2fd9a182e383f2c7d9d9ea1899b42085d45c3a36603833e0b22a3e4aaa6474037eb6a01bac570ca01f19ef2261c3ca4c8a44d8d5cf1006a8bdcebe46727b3bb2ce5c2fcb7bc2c4b997fe6db27188ca5f14f7abe9371a477b5e7bb849a2b624b5a537a6758bfbee1875447b201d489c8281c3fe9f119fcbf9aa3bc1a426683e9149871e0c9e9fd32bc219aabd73c5b72b1c4ff359ce69d418320fecbdacf43494e70734c6702601ca763291a1ed89bf9a734ab857a2e0323c6bdf3c4dd3dda8f4e807aa17a4a5472480443515c7ce9637590a5adc689a8af6a229aa041fbea0494c802b2235d3e9cbd78ee24239317441f05d2e1eafb1603f5d009574801665f91990dd4fd55b19f4890c25b40585421c23a5e626983c7d2184e719067e882a73febe9aabeb3cb54459543f3df1bdaf36c8f9cef4ce25b4cc8dd51a884413a7cdc6e3f831048f306c727bb7704dfa92c1e37009b1d250577c872ff7c56da1eafe1002f976984e0f897799159b82e47c7336707cd082b0ed3e15c4a2dc2f3d018904f32095ee27c8bc918847a3f30832ed290f68f75441615f351f4bc3b4c66b7b08e5419d7ca1c00efd911a7edccd1a13cc1d8c79cbf5b876d98e336e861570163b703f53f150fe5aaba5a523cba620a5bf37dc6e03f580371224e0b70ddd7b8aae6e1e290d501dc6dc8c4a0af0e1fe1b2b462358a3c6df9672b76c8bdd6ab2210bff66501e6f820b6e553a4f71c885897fe7466642d505b9b2ccc11c1b725bef53d8c8257365020a249cb8e7af1000faada465b0f6696a08ef1128423e9251d8a26c1a51b3c4f73caa1eceba34929fa7f7a06d7fec3956b71a65d296c50ef4908228296bd1cf434a604f878d3d9be2a69ff78ef8f6bd889afcb766e89da09a9216865df820872cc25957ca0bb91e0bf483a9fcc4988a76275285feb960bf5dae711ac510df9c6bcc41f5f64b02e3898c4521e035bcd56db23ce6fd2412d778f3bf8046109d24e6358b9d250b4d3ac3d3cb9f76d783367e5bcb634b4a2616c162cda372c1bc92cb8d7e91758de4aba62d4ff1654f900b0d10d41e632ae2368694975b606fcc9d929441cf871b41060bc818d027220ed7c4d232453990f401af23c7383bb24101be1c493c097eb96fd6c2680f0ee54d86449ac42d6a201b32cf2505aa77d15ff6fd5c93c05cd426b4dd077fcc8db5347e04ca44cff5fb95134e17c9d4a655cb03d990b4c971b64b3cb64038f9705f17d18977d201228028628b5c37b1d58183da75cfbe7ffe6e7fdec57e90709f1ff8fa38f986b1a61f51ce32568142cde0ddf7d5ba07e03057ee5a431ac142ca49fb23e769273f53fafbec369aaa9fc68ff1cf90efd9fa1d7e8bb29596679bfe593f34616f8cec970870e41f9b5771568207470cd93c6739c6b66e2bca49322628b0b573c64156c20dde187680ba64dc98980d1a72fe4595c016865c8b9aea82dd070ec1d40217c9b8233ce354faaf662a03cb5e6a9f1a03ec1fcff2a3526bce7616238ba9ae91395ffafb9406e9571171778d5badee2206ad41b58ff4d729b771e3ecb5eee8ca1288801b2c73b0add113c88088cff31dc3cd100cd9d33d414ef90afd5c7a6e024d7da8e915b539d9c771fb38b605141e532bfc897ed32e7cc3d51655eaaa58b7e7678ce3d776144b344d3633552ae38f1d01af85e421f8b9fb0641b3cc651475e8a9771979a6e8da3523c37783c305caeb7aeebff80a5a9055447bad95e6bac7fea56392b8ff3aed4666d040bbbdf592c31c40168061cc3fd9a543e9c38daa7c0836934cc0d6f593c58920e6741800d6af6e5f4595047ef2e6c9efbd49c18f0a6dfdd5535a61544f548d668cc416ee16d66a1ce39c9f525c6a53d93bedef957f34f33b6dc74e075a9832b15c17e7f60d3497891b8b37376700ac02e9f95f931e996bd5b3690fe9ec02ded94253bfa8d0eacc5701a8ecd7dc08e888caa99cb7dc1665c968db1e69efc02ab19603bcc0fdd39f656d947f52a65a0f3e8748caed64de8e14605f561d54be58ba22d64d4f78858d1ed9847664db403d1af5cff524538cfeb1df067d197ec65d150a37bebb7ab107a2b639ed8316e63cd6d74017fcf3181cb487aebe7476731ed0a90fe8f6381d3a508a6f79fb569fc0c3748f369ddf1d57c1bd5e73d98d3b1541def7cd4fb53f01e8e77fb01efd8dbf99a75f26340e4f8b488c8804b71503ec5e59c7eeccdcac6248c62a54149ad67a8b3826322eb2205d65c9f95475200a23e275d535784ae3b17e3705ccd16039a154819f69c963bfa622002644ad6f90443223d8461c05ce55d4a99bbc1f3c1e3677cecb0b469eea1996d0b7786e02775dcfb74a5e6cda30bc531eef2ca8ca266532e032aae487b0c7ac7f4a1a54d47562336e58c4670b9e44e95934d38202a2810dd785d28936428d3ab814247033e903e9ca6daaf17649a97ef0590c10cf434c63df8a89d45c3fd3e1c751b379c1507f969617b1c2b1d1207ea073941079bda6b231c333e078a98205e458fef45fb1ab9a7bf970e0fe236270aada8fee8c637b7480183b9c9470cb41c0d8b7833f47646836d65429e0839acdacfd50b929e312b9ddabe8b995d0f8b8b4914442a1f0c8b44ed42f9a3f4557046646b6714b427e7246b5ca9d850cac17669832bdf16b4080240dc3ba3796100488af39987f3028cfb9dd64f697b3d58e9e4e0cbcf8a024c03bd8a34021a72b0234386805840d167b49d244b3e6d80266c2bb36bcffdffa6c2b5242b681d2cb3b91004c14397a5989d3fc318ecf9bc6bf35a4906a72bf444c9aa5dd54f60856e05c07b7d69d65e3dd8448a353c971568ca0926b8ae761e1d79eac2ee5c1f30918090fcc5f7c9440fadcdcf7d4a9d197cb061cb4312cf2cf316de94cab01cd5b5c33881f351a99f5fe646466d5b480c601b298a9acebd01ebcea4fa9af0c2845b642ae64c57f396554f30accd33eb3960e9c9a794bd79301cc4b0b93b4e56e5e337c2e7dc2507adf479bb8f0c740451bfce0ba69b657117d4acdc009464f5ca00a166849dc36bdb9a0d2f4066c9b02c9703005931881fe8f7406bf122ee5053e0f745425524a9c0c39c1abac7ca129f0007c141fd07e99df24a6b24dcbf470f23e34e399379c582be28e2fa4171bb6f179afc63b491a69fea1bd12e5b28e5fdd2774103f2a1796857743694ae8683707818462a030f6b1b07310b9b0997b33d494c6fe9f93ee9a4ea3bad94878605b2f8a2e49edb44b5125fed41662f6c4e9373d2ba86aec2246617c0e72ab552e92974099b176cb457e0f96cc93505d486b54de00db27f79fa4f2450a6767853f0fa0fbe0fafd01c5c0b98f7935a4623f0c4a5103c1609575c3e4b03f906117e17d87a13ebf716796440a07805c1ca2d4a93a345a170ced648e582bce2aa29933f2c49cb1d8f7f3bcda6cc2c05ae04855de509c205b11994942b267a4af61d6660c8ae3635fce8e5ac9a884d7e0f8bac61e1a27aa469b1e0e9485c6e845facf11aba897d41790226a3dc8a43aba56a7c40d32c36e19be6ed6856e158fdac979e11b123328eb41d0a0705b6366a11bafc6c2bc88afda6ebe6f2362d1aad22249c2777d714928726f0829aab47cd17b2a18ab42042b91b330c7817593983ff1185e9438051d1bfe6c6b3d0106cd2edb47028aa26d96b487f285bbefadd9c250d9fe318ed71a2e4475ab12dc964688efc73c6f984415723c48deab08bafc0ca478fe7c69c7cd807f01d9e96b76a713505a1436c6ca9df6683820f00ccda6496b2b0251acc705f57255901fa90d8d57edfc663c3689476d39e2caf9fa045b1067ef3857719894a7e933910badaf3b803d0a25016ff8ace85ea1fcd07e37d38c0cacead5604d4a0d44bda2691728ccb76e23f38a2348a3ba255c351c1c2b0fe029c951ad197ff574b2e89d2f0d87a2398cf884edc86adde45664a36aa1d658db8c5ae8691b1f0e147c4de3c88fe72fd79a2f22c81b2102a05552bdb618dedb367c52a27f8ed15d67afda5a49e82901c6774d3ea464ac0ac873e5c29854bdcc14de59cca2e2ff26df3a6a91835a56ff544dc5d263a3b50660c360033135b83ac459b886f40fe628e200276cbb16b475c7a90365e71b6cdcac00d34fcdf18b12736271a51cf18a5493341c1210bb5d19f5fa35058bed353aafb1b13c82bbb6aeabeaf99c0ed816cd5766bdb9224f7611565cff27cbbf21e3ecfd8722ba30be09bc3381fb28db1f760bb8990f9e91e9e7eec12a0ce56b224e405065a939ce7ea3f36f0473790d6338e44370f5ae4159b4e6543f3a829f5cb7cc0820806c72cc6cacd5a685a0a077e693d1f9b09a13ca2f2dacd94d32c0fb0cbd34955479b69c3af8a1500ed84cd98a210dcf92913ed2139e2e049b623e0477497cfff5b634baf880721c34792b91d3249391b2ef3da7cf968f70ab4193a7cda318c840a6954c7fbecc313c7bd4b4c48977a6aea5c9ed8eb83a6a3ef6cd4962373986a576d4d5dde9825515b851d1d171f1d4bfdfd70802d8757613fdb0bdea23694068c223418492eef8bc89874b2ad69b2f684b7d647f09e96ca7603afb75d7432394c428e7a5b3643309cb756dd9359b9c5594be8a90174bbc7ba4505233fc9e0878559a7cf89fc2a3c5e3cea39520a746bbf0b8da0083c3a5def558a9cc033c083257e9b96046b4bb22603a9c624b4021e5a03b64cab1f88ea5723d24aa79c0d8d581b2a8250737518fca3a656faf79d5df4e11888ba6992b4d02dfc70041d0cb967697e892d38131b2985412f0488a02c3a58eace7a2887baba19420bac19290f7f6f3482532b1221f8166a3919fa625eab30fee90c771a4d7757513d3c2556946919ebcb6d68a8ddb5b88fac4d622ef9de23add373cfc0c24e0b9423a3c653de3f3159b151cefa04f1e9debeb1188dc6c667efc17423f4f48a026e60474eed3e4f6b2857b231d92301f77659a4e3ce4b5ac09709d8a99cf915d225893ab92a3d6e414bbb626a2e92bbcb669ef023fd1eae849aeb4d675c90bf9fb9f508dea746abb145f45a7ffac77b996fd3e835f3f49ae5e93452d4194c57a2abb78d11be4c340c02136af8a07fb9036e5698027f3c315708e17b8884c5e65389f7b0c7bda650b2a16f5e043da73c7b942b9e3b7bf4d42495eef4f7bf517e3ec6e82ccccff5b093befb9cdbceff75b546be4413d1b8205f9a83cd090faae334f0bf7354d137f8c00dd56b59018aea2be43408f579867203cc0e84110fc436dd209f16f5127464f7835d2acf23ce180c7fd37043e8c283f8f9b228d475d3b1cc5cad20683a1082808f0bf20d65a8b76dc33438c3e07aaecb574183e64d7c4bc8e6cad483612088f32649431e6dad88324a61a23067508b963a8ba66cd3ecab1f3d99f31cc9b99b76fc33430072c2aaa35ff5ace9f6c835d6524bfdef562448f5c71256760f2fe5469f15c8d3896c1fa79f1fbb32dd4cdf1e6da84a67c47ff790289133900641e4f468e8af1502d3d027a5105d9a87492acee0956b98b798ae5e74db7cdee47cfb8d86e812e97acef373029e9b25b09024d4df70e05e39c213472578b3b8c24361bb2b89f91f8a1e06f023ab125a4832239bab93a6b9222ef4bf1d13ab4b2726883bdb6c0c404c82a5895bb6f1b6f5c18e7a5521e59c2e5b9f914945075e41505eaf2623ce1d773ce5b52054df5e91455b97e287d149977d4d884ce9df1d89351159a58a1e8eee53c80b01ff350119337656f334e8d570f5d40f55a632075256cc52b2c3aba3091843ba63a53d2ab622a4d228e9a2d9f471d5bbb9be59d74d8237812754872fe4a1d69598340d5c2c19dc48accf4c75b3e510a3aef51ad4824420ae16ef3cbaa32d429f4e8ecb1f8b84f03022cd3e777e060cf9348b3c4eb3d595b40f5e0f4a5edc79a0be145aa8bb066440badea4f371fddbb539c7c9ed88ef39607093c913d7e2835ff896bedf1c85a1a2a0767ecc5e242fc37ff1e461c936bad015772bc05b51dcbad161209952ae4b832621de9ab118baee0306fe798d579304b9ec6ea501694e50e2a47fa83c0fccc314684ef82cc338a3d84035a93308186f24c05f0c699b07634671ebd319f13e2cb1b6e1f461b0e3af2131578985b0295fe9a1f1909ca3702283cc7f154101e7efd64f3dc7dba5154a1b9a8fdd57fa2d23281b25632aa3f3e3c800a4f51823ddeecd2507e4f4ff4d3d13c4660be1c6afdbab7e1f936bc0d2f3ac2f4e54e2f45a803e2b8671a9edfd07ad1731c033ba02d1270e7a6ef6d0c915bd0aa58725dbe3b0fc73c71e8234ab0b3a6d111468b8f47b3e2c5fc4bb6c53685f96b4498501c15686a796d388db6e2b791e2b3317e5c89c66edb124397b78cdb88d2fa6827d3f60b66e6a2ebdad5f15de7c1f29069f2aeeb9cff5a2cf2c10d1da89f9e89beab11f4f1e1bcdd9dede61731bfa84319f03717c957dd8b39d61ffbad466a4b0e8c525de60e52c5ba0868ae6f88bc6398a94071d20c08ba14d544d069924369b6992315dd9e0011cd2f1a12bf3ae75420c70048da3edd49b5350c785966ddbeceba410136f8c62410bfb317369414047631a5601ebbbe438b903e6ce8419b4d8395db8a9159384c480e63a9e11e397a741b5b2e972676d8664becce8e309d0d28116450b380099879137e166a9d17226419814aa238fb9ed752e1d17df8a39791cfdd7f6cf0ccc53e7dcaabe51e19b729d7cfb8841d637315f79ab84c89652b02c506830c52c3075d1f355a4971709a08e80d23fa3ec6217886135946cf5906e412ff87febdaaf769f73a583cedb19fce132240dd0d3be6eb76d209056e469be7f38539b584fb59dc5f70afbf1b05a457fa3cef64fc121c0ed0757fffb41619d5dc7abc21d149971d8d2d864d40c9afea98116c73521508565333b417fe27fd9e488df9c453fab2228c56f15287c85fe2e04e70cf986bd7c3d28e01a67cf2c1cb46b5bc98ff3b483bfc8e41eeda8767cef9970361bc18d32fa5247d3f587da5677f58edc5ea7f51b1840375f732c97c43f63824c365087a5916f73ddbb6bfec8f2a1f8dbcef34b0a3fa0c56994310227f95a4f9819155566eedc1d37864f84bfabf29d2748afdebbdc905b58ce0ff86aa135a7eb839ea14ef2bb345e6336326a14567dec0e1f845cdcb69e653ce1e228d4d32573f82374b21669f749b8f43e87c3f0864840404b509465d19945413179666ed4adacb95da43bd70a6acf9018dc4c24e08c07ae2ce72795349f0e55989fc1d9ab590532780caed3a4f94384429eb7f91a3491134ae1259bc786576f75753f937a1824014aba3b44d30913cd6f17fb4f9469cbcf3a3d1495d2f0864478b750dd2d6648ed9792e8e4f5a109827bf3a68c33e3dfcf87fcccb92e9397df74bd708845b22df6c5373aa8c133213ae253d530b5de893b3df58264b814a0bf96f7237abe3f567265000868d709e888646e764b3d35ce1d13df63c1fbe7c4ebf809648e07862b22de094d9c91cbcb440fe91aa15d06f1fd9a3d23ad0685c61e5f8fd81dba11d0f3e0a95d0b25e3ffa15649c22079da4164607f55c3705bb4a23fd18a9df272985bc75af902bada3486d4aa4bb9a3ef2b1034cd35314cc129930c7b0cd2993c09e1f2a3520b51c18ae542af0f62c53ecb91c34b5ecb466d6e7151394a85ea809dad27586156bcc1834c2e906ad557a8a6e0c2dd5a4dad7dc01cca83749b224be1e02944c7f1f07f66c2039c020fd9a71346bf333c4c03a918994565324918b2b2898c539852f3895c6b6421dad265331cbc263676dd9d8af98c46eac346bb5b1d661026b7efef69362e7d2605b03df4d48d907183a5ce2a478332173a31e7ef72c7b3a96940da0436717adb0f049f2b3c2c99a85c6d5687c25c7fe3b5916eed48a12f565a3778b15c88feb31fa6cef5dc4661478fed77f68326abf1740c7763268cb6f6131dc378ebe8279f45cffb1b71880199e2802b743f3919564790b3261bf8429d4df0773db0c15f033efe3d8b03ca8e1d196d5e82b0daa5c0410259b8804ad730f5da04cbc003c1e4ac403ad8d498fd01284e7ed1f3dff318b35724311948297fc905c97804be0abf142b2d597c2cc1960cfe2f26226a5d8c4edfaa97c59ee169c4ee4e9a39248cbed804e7ddcd16deb1a8a9f2874f3f69c6b8581839440fb722ec16a167750650d067edee624a26ec8fa3f092ced39ad081f69fd453a592c72fdc72790994a2573c76a298347070a97de253711db295c2de8b3e59c1f9674eac47f299a76433aca8ca38e15f48451ece03f608c594076d5f0d9568ea34d1dae4974ed00b32dfbd0f4b4a49f4c007f0d670ed6872ba8157bf46608691f5450b7ed6f3a4d4e7b25746ad9ce65884a41e93093f2cb93782583ff306136b7e940920165f08ed756cba78b3164899746e9c4eccdd5030876c1c630a5da9f964d41325110bb695a145cfe6342416d1014a86f03963da532f1ab10bb0960cd9e76347d5e39e9e7c581f588062bbe6e92007abe9917cdc606b1906fb44d313eb3397fa10e07193ede283c393d6e16a5e7342d454e1fe1ad0027390ca70b5524662581cdffc4a0b3672ebddd975907fbf75b1e3784f7e74bb626d91610884405205d4cce063358fdc5d6f08ab2026db4a6a313d5f823bf36817fca40fc408be42711996855ef48070833963f904f4e77a3f94047ac7237420f2ad35979aa246e30d2472bfff954cb32e86bfea525a98b80f72490002e1e66785f97521c43f169f5bc14cea644c6457d577b66a4f721c4a03a19643d5d2b03290ac48694119fa64058645dfaa4c0771ad84b1d79bc8c134051972c87caa06bd169094511013e01c7fdb981ac7f5e509032b0a392da99f1e6ae24b586b7b0669ce190c202397ac9063576b36fc006c7b054a23c3b4b586d0f41345dbf663ff5bcc0d9f4019d7b232e29981eebbe0bd59466f5476ab855792efcea47a7da0e0fc8198b3e70cc89f819362cc4e83831b9206f01694ac20bd2fc7b49cd8f15437c3b082d07d9f8202fd78df855e786a3db07f27c8ad45794f3f7b30214cd26ff3c142f614638ce91991576d4054b887ee1e600ec076587fe099e1282a25c2b0f03a99e22c245acce930dc7b5108b0a3f1e406de6aafa51ad9b8880e894e330f35ad15445185ab00b277f65fe8fe8763540b4724cb545d8f329eaa3b2ce76b32f391f29d51317522f0e314797ed7f00c1c710776c0e99b551b2ebd202a73df89190b279642d4008c8beacea81bbf3ef358ecc1303808940b967ce8199ae6635ded7ad94d7712740d57412bcdd94545deeab5462ceb4a2aa3615eb224c68255d68df540df6292b2282ba2a27de924bb323d56598c39a44ff1fdb09065dbe3094275d53e33e225538262f3d4614fcd53367e7a2fed348712757c3074a90079cbd29afbc0b9934fcd78dce137edb542124f0088b79bfa7e245e3a5b1dfe3471459270f57ac26d70a643ed7fb848bfc691fafa880bd8be1049e4f653434fea428a1bddfe59e3ca6f0fd814f551062c91ede61983a6e092f646238c8a6209889ad90a5c5888434c55b095955d9281935cbeca7adab8d56f40d01f429faecc6eff0bac2cc264868c0c177a3faaffb85dd318e996bac609c8185c20cf79e9b7da494359ff1794ffbaf018fa40f40e36e70b161c5626152bff0436240dc4ef7c4f4a49e170ae0a6f8abf687da8f620e77e02ea757073b7dec2365d58d25c75afc7373406677bbfd9e01100e63f604b2049918f8293500a401ea68d1680da88b8c49b9de9554860aaf508f16a27d99d27e6db1d3f0588e66b5a9a2260934f087edac4b8321d77bde15b20da9568617c42ebb118c8304db0e0fee0ab7ae902a7d5e49ca98ff31d1d51f28631397748973d5c9b49c399f2dc58f5b9fe31f11a70eaa17353332294660475b25d44f30c2199cce786755b77cc60d8f2bd7875799143fefd769786c50f7284700f174e8573b2678c8e9caec72c5836e2b183739cf9ec21090a60a43cfa1be4a76bf471f0780ff0777765857063ba4a05e91b1dcad20f6e661c4e4e819834d1e6fb5e580741e31b22cf42493b2ba71a628be19a215cdc3b337df529434679490676d88c784d565c4cdae4899a84fb785393cdd1d05b70376b3042d2f509930b3670023fd01157f59c40bbc63a285b29f1c22de755046eb0f463c964a60c50a4f2b204f63c5d45a6bbcba65775bb91701ea90469cd1c9fb1d41c615909fd36a2988bdd574380e5ea0549e520373879a61e4cbdbed042390edd9a23793f4aa0d2c126c40233d8aba0c8abc3d51d6d4b52fbdc53c5cbd7e3cde80ca725081f621855bc7cde50161c34bdb31f0548448091ff7b48b21f97ff825b92301a2482527a94785a4de140e25b81ea25e023dac486c0e72ee725fa293e9df900c4ed9eae3aa469024fe5d2597c186c724d599976787b2e4bfd9be3338aa30ef710e6c6b811de1f2f53e364f673bec54e4a8fe2290e61e640495f8a984175f0e8e5be3721a1663554bca27c940ca4a1b87e9e7f49426fdbad75585b956cb942ab93df3bee489b29a24aa38699df76ebd553e0228d33833ce0f9330a4d344553da401b97037200a1cb3761b165d2a51ecc2e88c388c86e7cd64a5ed963f208718d0d52753a9acd08618519d739ce3e060ff2aa9d018e23041ef3277a60b4ceaf49ebd2e67128cfbf702cf869f63f9578d6b60de1ba16850851a781ff36801e1026fa154bbecd60853f5f11bef252717b8c4fba1a55311bcdd0f2128a3a0b0ab73154951a20808cbebb65b443f07dbfccd6ce1998d20f2a59d0605a63efb5b8d0e1960a7642597a6a11205ec5f07344c35e7ee138a37b2e8795fd7c19374cdb19d294c564f0151512dfdef23ac62ddd3b436570e4ad614ebb59a2b266fc01a813f9a11ffb859514315e10a54d54c667bf89973c09e4529ff32809de61e8a7484b7eb8b8b0c8676be0c2ebfb8fe27236ccda39a215c5e1aab02dc5920f81e5e32c60cb792e70a030452489f5e5c4a82492380980dd3bdfc79817f30e5de41c42cf55cfc451c4198e39ee8fce66b43d8f2af564c8b6a1977121994231203031ca342578d74eb2a0647f32a8e547e06fbf7accc399bbd2e334c48076efb02bb52c85e207da77494e2d4938d0108cbf15bef898984996957954e1ad6bec745fc741453810f601e404a46e9c8453287863951eec893416be9b07564a45a0cfb5ac3fbdb5c185424e0973fa53bdb092f8509d92e00d8bc85a994b9c06b192b7caee8a25c38b8af947427662fea773c678efad037c82bea91f078ba209944d456d3d2ddd925d7d47ea19b10bc7ac17d99e8f3fe58f96d6421d5f1d942130115859b8401a61eb4c350af70ece773cb86e164ce0c0bfe1882baff45747eb9f842e9b14099c02077cdfc15a104de58927a603e5d37d9d57999c0a09131e15c7ee189094bfe029d45448c2f5dca31d060ac8063b4421a32df1a0f329128bd97981f3ec730e33da757c04b0338ae91c848d1ccf40d515b0b91d3c1bc430236438106716047d5cb5a2e07fd7fde56478a1ea16161c0c752ea09cd264800e9af5eb9a8ff988922971aa363b33ac9153fee65a7d04255d79f4b9b163bc4de1b2772f4f208a4b1aa198907bc7f320653fbe4bc6f154dc0847b7d74abd2a3c873c558d63a27c2336d957094ea97c9ea07b891b5c21b08b4d4ccf4094333c4b6e25e7dea814c26d31c0d7cb4bb11dd4736cc027bc47132e69b53884e1c7622b7d1101bb2471d70592949043820b2a8f26909648b8aaa77bc77cf2d6e7406d817a75d3e9fd7d8df74bb4d7efbc664deffd47c6effad1483259631ea863619fe288228687e4c60495c5292d483234a289e2e29ef5e9914a20c72f5c58bf90560b82c91fc957a22ba622d0101ffa062b114baad808537e842bb88150dc568d6d14b0a6f9a85516f24142c1a137eaffce59e2d3d5f112a578b0ee0c9bcfe7edd804b2ad0350132081b6fe18eeb891158ec913a9805fc9ee82454da8040f24fa3a0e63fa718288b3acb0c88c6f0dc2c634b7da6a27c60384d2aeb9cf904e07f41cc1a1867a3c09e3720dda6d4a33a238e089823420e8a9058e0a3098058898dbe2377129cd01441a95d00833b02e02db959ed533e38b5f7656cb9cb0c884da1e8251e4d549edaa35908dad41467d207f0adce666b22754d5a34507346c9a75f11d0948fd4cae5409fede8692e5f44c0adc03ca940abf1e6068cc47f4eae9c2dc804189bf9932d6002bab17b0e719e72af712d2f227180ce941c795e6b60aee3e8dc79920c16f9fe9c94900ed2ce276b0c93f664fe7fbe47962134ddd01282020b24ab74b173d976e785d5b2a095b74a335f8d24bc86af4283c1ac8f85fa77520ae787769e3263f5dc8175f15d3b56496f06a0a87b93cfe9b0af055ffecf7dd57100dde04cb5c00cfcef86e220de238a37978843698e71cfd0bd9fa5d0489af248caab8b95d6eed111e0e62a5e125842b8d8c34426dcbf68dd0b64afa196279a452695bddbba58edcc42348156a563f139a0cf3b3ec81cf88904752fb2dcc5edf50c65c7a2af75d2af88896116032281a626c599ba8e99849e9a3b8cf5ccf3bd9a1580929fc65e47fefc02bae8cce301ae40ab3b8615502be62e976c8a2eb7cedb8c802bd62eac13d25c4aea4cc7b510564c94e110130603d40595aeac5c730c55bffd11197cd7956a5967b2674e5bff6d5d1f339ef0e1cd6e46249f8d6fad11445b0f134443f14d12947ef4df954185f393046682afc7baab27bf0f4cfe4c5ad9b5e48a300597a45e52e91ce63f17d33c53005afe7a7fc74315b9dee28e4ae6ae73b3197b18a17406195d3b1c330b4c4977ca9c6453b63fe94c6d0ad43a2b627e2b784950d1d34d11db1435d8a2609ebff8c0b6513ba7ca9a86883f32edc88a5da0f549dc9bf648a65e41519152e2298d25cce820a4fc5fbc9c79762519992db72d52270737f02f8af6ddbec572d73702707dca4f52e9736077fe4ea2c0204e4ee041e04b86922c9ee3880dc4e52e9fd0f1c5d22825c77a114f37b645e57fab84da09c29324cff09a37550cd8eb1c7b8248773dd841a383d0decbdba24326baf77bf4d1a657fe334f29af8430bcf787541ba26af1846821e10fd0e785a313e919b5657bfd6a72c9f84b9edb7bb4b1c6faa5d23c2fd1f326e241b5d34237a6b1b51fbd4535f18649dd30d72e06dc87e9f79313178326f347f441796197a2d2360f6eaaf6a7a2611b4f834bab17f5a92666cca566fd40436eee6160efaf50a09dd84a38daad989da0e07fbdbd40ef027235bb4132cc0b21e1fae87e4795bd7d055d6d5f8561afb5a3926cffe17d575184323f6e9bd9f431c99df1cfe3db9f6992c18d4c13fec561913fe2ffa57fe637272a105ef26218d50649cee8750f233b238ba4e8206cc18f8092b0654c3e284cc101b1616cbaeeea519869b44d0dabdb5c15742a31ba72e9eaf1c582825c360b8fa6c5cf0db53051db6269a5636f56e2343b0ae6434e3015428f7d29d6ecdb122e83e81c1f38da095f9fe1734928ddafcbb4b275c78195adb63af113950fa5599f0d7e016b6ac7ecbe15da147e83cd8a77608a3f3c4ac0672d9085778dd336205a5bdddc03a6692a58474f7cc17a771c62f74eee76f9507a7047add13752f1b448e03585592ba6c28637f5199f065d35258deefd92d71e8d00e97bd52c231babca0c296d8a030e0be9ee43ce4ccec5f52e234c161eab06da7fbba76964db2bc97640c357d4b18987e25794b945326105bcb93565b2e3014c810665d49dd5ac65fd92a07009b285577c4d259bb77302cf3584c3b6843b5e69c7ea8195f01436204775544eaaca997ad312e429c35c3870238357c8dbfef0e47d80197c95429188a0f44933cadd68538dc1309e855a4dbd9a6c137a2b4b5dd412a4fd02cb3fbc57f2e689e043e20881152ba9aa575ebaf2c2372542c5fa8aae218c1ff491fd3d9996b7e68c46e6e54ac3c2a66efad58de987fb6f6ba9f0161eeb510d56f29e10d1ea84af07eff47656a80dfee0aacb322d012c1d7f8391283837a08db607e9ee3a2aa2be3f7d0e141ab3ad8b7dccb33b253b702d4bf93d3cb6d721caebba238d7557e646c15102308b49bc2cec8d276c2a3c59727851b08e0fa20c9cbc9599f507378483c24216b5f5437856876e1506aa193eecf4c8660716b26b21010be8ef62d859ecd3c8bc4dc9aa174300303711fcc7f8372a5f2c82af74118508729f600978659caf67b4ce74a6c5fdac1576c008d274efd37d4b6d7d27075430c6d9afd158cd5a6e6d006755367072ccfdcc4cc9ab1a1c9ec566042e85ea72f57ee96ff4579f8ab8d96532de50fad5eebfe9f2bb7ae3564b27b040c209356837d9f75b2815365a081bd807592b89b273ec4332a3e38223f054e24f7aa2274873ef9c4528d2c1d2ac2a332efda38a98fde70309cab099f065015beb400a7bb2138c9e2ee96871fa5b1be2911217bbc645202ad0d3c020bac2b40067129fe15379eaf365a377f05d170f9a439e50091d35cf319ef7c913f76c665e0338c1fe4745721b6b1d17bb557bbb143a36ca010de13e7c77f3efa9b05ff3690b2f56944e26667bdcc12da45256a27a9e615746125e114bd274b4a837ed30eb0dc20c845b70777946753e59ec27db0422562706a71fa88f38868904420383046922eba8b13b72573eb7fd46d15820d011af8169c750ee01af7d1139676be981ec1db42f67072f6ce475d76eabdb79e260306a91ce2b44d98944d5849b7b71c13272a8fe37fc2164e30df6fefb8005f060afc3d2ae665e4379b21bbac196ab54852c569b860e372f9d6f0b428877f9b179a2f4afe2fc31b8a16927bc7b6b7f4fe974b564c33426c0a2aac15279238bd115d6a1d9f38989d1ee3b693dd338be494cc79ce73ac354d5ad4015288cdc78836f747109dd5b9774180cbdbe8395fc7f7afe224d609b8b72caa234ace8be732eb71dff96e7f6991dfd6195c3932f74c570c534ae0a2eef934dfff3db9d91ce0f4d449f759a611eb53444aa3888a0b190fb030fb3b1b955ced086af2e9af3a844bcf228242e5cdd8d4a09ad3bbb93a8ed7e65e33730c1275cd4445926d8172a97537e90fba2e3e3ce99c17111f4ac0ed5608ba4749827c7637576c097b79745afa3289f84ddf5e744bff7d4f2c00cb90d572a2cc25e875ee0b7e22a32dd37edf861dc273abe881ff987330bbdb88d914d3d7ff56be57e21b43d8ebe5a3687001ec7a520a14d020093ced301fb1bc2c816580fd1e969c530cc9fd77942cd3805396272cb8d1f3146b8604ac244172da5f7cd41983346702d52b49346fa69a2d1c6611e54ad2af68e0e8f4c8f42f49eea11019fa63534c7e709c13f2d16255a324e3783f45fc6723e4081b0d63d78e8591d49d33c26c6dab1fa544c677b974567a3a723e11bd6aa89f88aedc1d58459d983d1af9eb0747044f226dbec60e2eeaf72e48baafd328fdf2171d90f25d3339f245f44d16a5a1f67852f974d85da5b74df1c96c8b7558545a8de084a2fcf021174f63a4c4d5a54a48f7ca67ec4d8f88c06c3973d846c1093b2d23b6a159fef8ffb399ee29c212bceaf2c23378421b54aaad06229b278dc9ec011fb56a88c8ae959c1d65e820a1881f9d21253649b7b454fa4f24bccd73238475453d843900403d7877b3d489ee543e52f27b66a96f41c2e0a04b66bc979efa7bbe731316e4da34f26f6c1dc990f7191c809348be3690e0f1eb14cefa3a98df3da2e863ebbaa36d3898c65095c93cb3415e0eec865b9ad5339adf87b152c1669dc90fbaa72aa0ad9eb620eed51b57b19db9015d7d55896b516957e3a61fa3a36280502ddffd79be823c088f5c579de2ce4e76ba5c93d846d92874c0c6ad81e14442665b35327d2792f3d70712633cbbfec9006a5514830229410c4bdc883bf1aab3aa31bdf7bc1036c46007de0454873f64f477484e833ff6d068926db8dfa8ee630be65777a26f9ce4efcba917069163cf53c55d6a8fb05f916209d2544d2cbe590e77e7a932c8b20661ca1ae211b573d4d35e02c3772b72ee4512ab91f72d9932a52eec92d3f15459b439d004922585fbd573acc133721831d7b9320d8411865ac010ac0fb3aef6a3d39c3c7606d663b26ba23c0f32455c39b504d94e8a6036669d807cb67933d637cbc6d157f0e29884201189de521a03ac948ffb14bf0377ace4c1c4f3e085b11a49150587fedb7f76fc454c7ad9b783fdf7212414019d7fa2e5927a6677fcb0e857df2014b84d21d3ff18705b5b4e55ff5df5652ac4fcc06de03eb5960eba688ba36eb01a9daf895ad6746191b8660cf8f20b6b23b93199a22d358c2f2508450d2c304c49c6827398d8a9d0b24a32f0763e4b25ea10241dbbc9e0989eb68fe71dfd1df81322e3c32905cd2638aacc8655e6c571665932295aac61eb2b222e96322b8b142b8bdaf0038b0dcf4374712db8730e12db89b93d29d49e1b8d7f28f7fa41827ea7efbfb44ac8d719f38e5bdc3959491c3ae6fb6ea91b456dd7f859c506784ab0a644778966de81c0f4be7224eb1de63ace376a7a3e3c9d60edb93c2d3f9dab968706f06fa2b9e065ee3295d8d3dc242037973233ec5658a80ce4c023abb6f31df6bda79dad7a7c09e56f563be2a85b21067a0112fd39924149a7fb6fa28a70607dea60f76efe615362309c77c9913baef2f80db7b37146975192eeede2b0ac0eaff346a9d53df0df6c17f24d276b3994c2037896be99a1c4f8e860657d4c07c80c5d926b3ad0dd5ea424874a237c52b51ef2ecb769f4d18dbf4f4ca96e2e062d86ca6da520105aea6df2718817cc159cc7999bab15bb45228d2404f14e5406f91b90d5b13f65ae59e081c0014cdaa61ccd5c53dc73f54384f8747a30ec1c387b980b7558c97560a65ee2f7e720a48d0f875cf5ce067d2cb3675a2c0d6acbc52e0336beaf90e33174605ba59e1a50371b4780bb51ad2f34b146602b87d9fe23ff003507d74fdb35dd5011870265346fc3a0aa83c82c0db3c6e13222cf5985b0a6a8ce80c4f1b4f615a1b2ab262b730d923990848160f29fb2d874ea9c22ec56182c8ea6e9d65f85753497f8a06b367e88d9bb92a064c5679687a35fa1298713b7fd0d273abc29e9f43db765d50c4a8b3056a3d7b22dafd2a4f8f61e3300970215c48a8da0aa5d955cb302d37ec288896ecc17a713e5a4ff0418a57a98528b0af6b32509f7cf63c1c5bcc6ae4f92e417b03d0bf949c05f3fc94a0cfa8eb466774824ae0a31e0ab0650a3a11b33323ca67051ce16ea6093f09dbc301b38002393bcd4b5fb2800ed1598194e6c094cb59ef54869150608fc08f1197099b67cfde4b450e49462c9aa9e2c41cf357acc7d9e444e23f3419af261fd6b3565fa9ae08e16d70d54f98500750a0d7bdff2d997f1c3ab42553ba37cb93eea2fcef6e0935b0dcbc8d1ff4d112020a5fcae69734963006ba9f1d4d3ad2d5aba268d551c760b1d87e2f3c57b582c552fc8db93922f46ecee20883fe1a5b5be3bbc9983bd0eb0037ed77660a85ffb1dcf1f8dfeeb2690490dcb9a7be272e5dc19240b25dad4046ac9f45f53961abb663beb67a2c58fba2fdf60a56b7b810cdbcb1dbcedf72107cdd5305b1bf8b0db4118367175d270a15971b2a973b9db0ed7ab18ffe0625ffe1c8ab84540f6b921fc11c4b32eabad89a096f7faf1e347cbbb8f5026b2c021d6b62343c1c9859ae7fee1bcb6c870bfb4fd98cf0adb5aac579f7a3325f344a0db597a3c5c7f2eeeb99d86081f61c28c7370e7c0a8f1f350ee9d6cc3a8dc764dc0d92e0bd65bd43c78c6a148bef2bb90da966d9f78d5136311912c3d541bba25fd66c5fd8f804ce728fc900024986d869d514e3aeaeb6e017c8fbd47d1d7fb1c144fef007a25fccc1f3fd4278400142580751cab9ab66bf38db87d4894e97d45bd75e8f4a01af4222e03369a921b8d9c606cb8ffab4ea387ba82f5f3f6ccd6652a5f928a8167944620615f41e92f3a9fa20fa8344e362d8a04d041a7fa1333b4c54ae213ef5dd224075ee0da8d95a56d148df872967493964e7d0e37cbb8d79721d8e252f389c6c90ac972c30b15c657c4ac8e769c7a5d18963130d6d75584ab9c9153bb3fee1eec925a1e3cf5ac7114c6a347db77baffe1f220f8ba53472c34861caee14e9c811908772c0f30e266396ac51b5dc8511acc872ac3e1d314ed933d724c8ab5ad274ac3f4b173b5f2d78316c32113b72c164eb46bbad85730d9e2efcabf63572b7193c024ef7f00879cee57b9e90782e349e720df916f691e0f9fd41d74e3175b8c4d7e0d863805b7e648e911277ced809c0321f16e9953486862049214ec37c0c756487e9498b42544cb1cce893b3485a3d02ae6172589efb94d26739dbf2a30d0ba9110070c7dc19ef2318bfaa64d151aa2481febea424f65f070deb9161d8af6a9616a367dde57dfe4d167eee3d133751d8895d71f09273776ef5f759191bd695666761e919f7e15dacbb75729cc83e380b5c2e98b222536072f942be3aea1550cbfb6601db1ce6fbab40919884f982a8a08020d411ba0cd06bb21f4c1ea7a4b279399b13ed4498cd2b69dea9136ab2c240a2ca8555c12b1ba6b97c29181b178850af1c7d6c2f2a92ae92ddda6d64b2e9b9481e1803de6bee30ecf265036ced7aeb839ab9ae56018459316644f752920ffec76867a2de13b9fe4f0fb07002c136d1f401793d20645b62202e1f323148b5b308db808dae7dd3877d3fc534aab885cd7a7473d027db08337078bd0cb208c6548eb3b365a8dedd84239a74796a4f5b96db1cc3018babe8ed6bc4fcb7830c785d4bc2a623633fab94c34d3cfd4a7f2255171ec87511169b7d15d1b6beb98856029fcf6de9a4de02da5e859644018097ac219c124eeb7fc31b9a97d35b962292679ee12a31cccb790a3c00bf44a2fb187d76847fbe714053e0298d3d4042faf2964ae93b75284b6f460260bf6cab788cf7c19f2becf723a37e0d407f01264226dc0c760998ff868ddfda1d2507aaf1baac6e36355b0fffa1e02dd7b11173b4d872ab5bd79012ea515ca8180150da510c102c3bb06b0ba1e44ef15ebacf6c0e457a3ff21f111f2ffc4da5e23703a3ee8dff2063073fe0d370d48b453b364c698c594475e0756ee90955120d5a57a609b9f291f2f4a0ee5a3b1909278d30555de621ce5a37e2fba8a1d39e4c6ad6d7186ee2eb767f2d24b396cbb6a302c991ca81f9b8dcdf87d9ce2771b9ad641d765c1f0f59d6840d24e8b8fc977c7f047ae7ee0030926e9a549e4841ff7cc7f24bca025738a200e2d03207fe3129e78829fbe51d4f2dc5f340cc9d47cc23ccfe42267ebfe4b2291e7defe7a200f30f318cec9c46fea748036b859d215d78aa76332cfeefb39bb3e1dfb71f0918a0e97faacac015e4e6b8da27037a5759ab6cbb2df4a1076d2b5e157511db195341ab3d48b5d62654f415c1d5621c474bc5a14bd9c92f634674f6b420ab14b775e284589b6fd54b64d7fa4d8d3006460496367de5a276abce4ffce22ab58cbb0d5e6d9bb26786ec6131c6a2edee447d1fe7a97f161e05156b5f4e81153a13e9a790e68cba766b01e326a4f4f6afc5d608ade645f12774bb1e0fa7fec20e1e56853ba3613cd550ff5b61174e06a3cb539dbdb06a329ee6649fca990a67189c7215d83f2a790df9b4e4e30262c52ba65d7d64fbce6596cb5a563bc45cf5aa7550a9e6d09738827a2a65173d30abcba79dcfee322a02722781ae1518f215fb10d0dbc9c3e7aa7c022da1495f24ec56c50adb2d16acaf45fe2948289fafaa4a20c380f07eb92da477e3ef7d0a0b7eef90fdcf7c721a4afe11d16642d16315ae94646675946767dcf7ebca2031bb8bfd0dfc3b884f9ab8e497b5682dbeaa75a4a61bfa93353c0b9e1ce16c33614625b29d3f60be53654d00400f036e085f45275964d120cfa69ff167a6b7000100c86d795822fb0272081f90afe0af4bbad756f9b91ddb2af66076902bca9ffb5cf05b394a52a93335935192721a81baa9bc53aa6eb5e2e44140c495ec6b620a28a2cb437c4c5a4a7393ea82f5c72245d08e7e20963bcd6fcc655324e65820781d4725efae89c0326487079dc47fd3eaa5db1f9aae88cd267a2c74438ea9df518428d0c0135d95c20f134c445a46eeeabfe71e5545dc8b5a132de94c55d9473dde2f33cb682a4837cbce3ba8d1a6d4ab3b9183dd92ed6451dd015408fc80fcdd93c2e10703583fe424cf3c3f7123c463b25abbf891d91d1066058e538fe1d30a62e431263960c071963e1aca694dedf4d337798855479b38568f0e6b37fdbbc88ed9d67af61471d01ebd06074e4ca0560aa48de4757e232039e270ad46e6d8b81a9180453a2af592064a59c10d4340e42dfd87ca0523c4bf1e074438c372ddb7c510d7f72fd6d184975d8f70878fc4710ce802e3ccbfdabec2071627cf1d3cbb589417cc89b06b5a9e8cc86989409780714b08a07a54d46b5d652bfa853f6fc47f1054c9f2aa5df1997cb5d71aad7268e7331c0ccf4daff06c232cd95b79ab2e02893ffc14910af7c00c479438ec335858c8a113079cf61164ec8c9d8456e84e155f903421f1a201cb48cf8365a945c531e3d09d26c55875ffe00fddcd8c60e69848d9abfca8041a585a6c3441d7c3f61a8f74f139a2d01744a9bc46a6484784d5d5454acfd55eae086c332daec2c29b740f7c57a7ab54f70450dd57a38b441aed5e07bc29fda4e900e0089057ed3b958aff47f10871d50d2f29b8681055b02c3f4f171493345528089a3b79cbe20605ec6b2d0e358a9e301573d7196b148e43ccceeb7138a46897179ab979b6f00e57b69680836262ddc0d293741b6a088c43adc8f111992c1322082f56fda144038851665c4710342e8ee8c2caccb09d72542ba3f983c5aa9a4fc25288a4139573fcff7590d54b66b8205662520e9a9098b6ed34b324193098d23679339053755fc5d16fb04e42834adee2de84c927c21272f72961b7cca4e9e27a794a609fa45ee789c397bfba5ce0f5817dfad7e91fd02089b4f30a9d5a90138d393518be943623fc26cb9e98a515a301079a0aa3c3247743072d3b6e451cad5f45e576002b11196654a13f33e0c81fbdf6b9de6d18710fbddb129e4df6926551b2d2cc28865ba31c6ca2eba3ccb00231f307fefbdb356f426a5b9812d4d70285cdfd0cc614b2b321dab10573bc0c7d167fb83e0a636e7e19284430d14bab83ace4b88e6ebee9193248e25f417f67d0823a73182b569a1006167d369767ca7edb1cc6e7db069c2486891472216bbc3dd0f84e48f88bc5dbd850912a2ecb1a14f6682b69ac1e3583f78a843f97d9f14845ceeac293aa50ff947d657d6d332451e4bc48a42cbf143e8d15dd12d122e0d9f2ae7f160e84b25b4e3d5675f46623c142d3894dabc4272ed1222b704e1d41d3a49be3bbaeb6c6440fc39d287d95cfe4dea5a9ed7b93e86a7e710b7fc2e885099216aa72a851a305b8b18260497e57415340335771d7905f82ee5ee780b41d183adae00db087e85889df39e88a4c5d97cb5bf72cfa349768d94a4c9d179b8cbf43d5ecff66f97e7604a127467e0afa3008a83afc689dd3f035f0010c8ca08fc4d089016dc8ee1042e73022842e470973623789b009690ed5da2526d3316428fa620634ade52927c3a902565dbee7a1b987b02938e6904b44fdd65dde331a6a6c4b251c7887c5eb7a709a4376477f23dfbf42a127e357506f8eac25df2845d060db518cf369d38c2523f63a301a628781b408382f6cabd06384af32fd471db7e7d40da5e3bd46be29c118df780e5744d923fc7e1c3977c866536f593954f5b163d29a82fd1372c02fe09c8ecd758343b586a367f56b5dd818610f7add480e3e438db12084baa32b4db725616b00a01038eee3b717270da27cfd3ed01961374d82e0e71ecd589f36117fb8fa5625c247de9bf55ec3708e0ca3670e6983afb219ebcdc4ffec7e4beef0325f499ee79f18d991d41aa8cca35110829da141dbdc26901a1fe24c8f10da78b682683e17ee7fdd774bd5d878b444aebd4a569aa5e53a8b395855969a2945ec53080fa7e77ecb15f851b97c2fc61d8ae17eba1cc0e3d4408dbb40160068cd4d05fcda94a653a9bbc070c1860c548ff022c896a9d6b0455138448a03825e4ca23d429befc491a1eaff85ed88ea566cceb6405bf6dc4b4353f46e72c4d51e656fd48c1536c0c323293113a9aec1b73d6afe9498fd05105db88f0dd93fb73a86b58d3410f871a8edb0eb24d2c4cad26aac6864761193463d373da930598cbd64d32b308cebcec23f765eae6bb04fa11858919d92ffad76dd0f1af670f0e1d234a2032df919b252735c2b3dfc7acbb01bd748a31adfa535009ceeff725f95bd30e1b7d86cf67e871c970dd94b913de1b3f2b9eef6a7ba7ebc3dff9db5bd9cf8f27d8720bcf460528eb75efbcea50cb2907928af11fa5d222f041af974ffe70833060e3e4c52ad86387c0112015d27bbe8859c2e73d863cd201a882833bac4d838ba6ee10d36d206d353fb2d68193c16766a95a1d11b28db0ac29c13ba365410b6c22139513b5ce544619c3e2d8846faaf6633322b0b4a856854496b1e98d60c772a2064898b39cc49e4979fb29cc1011df54e6fdd6bae421c87510412db344459017d6cc05779242e0112fd56339f2404e445965a570eec66ca3efe9aa4a604cb2bb9ba3250416081d5b3b9780e5e02403c4fd1dcaa78fbec917ca96d7a5609f9198bf3b7947200bdf17d6d52d0d3080bef175c2a8ba98d1a48079f276c472b91631e9590de84afb5ed16d094d290b17cc9034a8aa9f251f75c09c0f9a5ccc198981e0f0803b892f2e2951139788177044be8cfc8b41f8a7d787cd5a6ab2270f810aaa566d25414c1117c2642d3e28b0b0dbfe3a0d77602a67810759823db93dd371bb838be3dcb11ca7cf99381be8b643c5a01f7413b03ffcd528a84b5d823343d5cdf257fa47ff0359e18220c7f201250e354d31b2a27a098be2ac590fea7b9ca5888e9f7f3ad6f888d2709490840006b8ea340ab6178c0491d4f5e4e7191e587b4c82e35e3afde42829a80f73e8e205c55f3d17720977228908f3c057e457ad182ea7dd3fa0fac81e8f19c2cc695a8381e6eb436b96e29aa0cd62663530cf137e480da5b557b0a1c2385f134bf1ff21a32f3c86605421dd6c92d652f80a4c20c1e1c828e179b3a15c94ae428ddf2620b6f998e653f76135b06c5493802b9bd87b9265dd2982283c2dbbc81cbb983c81fbbfb632ccdf3cfe275e1f505e83de3e653bc6bb46bc51b7068154f299ecf45f7297080eec367b98dfcccee76e3eeaa90e946b291b7f923ac04d36da44a7312ea02354e59ac9d3cfe99fefa17b4044388a250a74ce857638002d923f83623761acab3ed3cf0b90925303531fb5273e5251c046c5af7086b8b9edb473369d4b8dd5f2d0736cff2abeeb2e09291f44ac4db357e30985239ac4f538bb1e8650d4b4906a0534985433710e7bc2828b8331a3fd9f88e98f8e13c768cd82fe7fe39e60540f001951b37c402b4503ea8f6670c4aa112859ff13d3ef5f3c948553b14daf4842a7b7ea35540ba51c8a47b266e4f603ba2128929dc20d32aa7f9d45d476ca0657703e08ae0f963e7df497f524964b97d1c567b65487e2e73f1092315875148184493ea91955971a99bf3970632650a14f9b6237972157306bd7a76fb4e94e3d4e3a969a0a8b39c67de68bb0909b08899e4b04a98d178e70f4060d2c65004f599a93571d20d0552fa163c326619cddd7dd7bbfa87e7230d67885b3bec1d652b49155962eff061b9e9964f61185ef2c5ca6245f38a59fa370304b2859f7c91d46bdc3b95bf76520e78200cb23187fa1223c9b076957bc67d2c988bf4b6f3eaf204aafc7cc8ae8977759f1d6a24cb659eb6823c816b60eea279f354d4d5043c7226b4c05a99da831c764e65d518dd003df5429f48f02cf652ce3c962b082175d85c61ca8c29a53ae524c4b2efc4bb99d9458ebba5b1c8b5c9b3a4de075a8c6cf72cf53eaddeeb61c35d97c103dbfe6b58def477c56444628678101cfbcdf61385dab4b75cc59fb554e888d28d025edcde0258753bc185021a99e44c61deb7524975496573819784a7488296abe20b70d3c65dd336a59fea5d990987e7c2ceead782a3a2812393fae2ec0f4bf1f74c12374d1cec5855dc3f649d42e0195558f544e1cdc43376bc414d8dea9004a587177d567d18b29a79c95751985b4c30d53f5147076cbac5659e35bbcf0998330739d4641b0763d4b7f03b371770fa147a54e8c5defb6cb409d5b9e9b41ba4fa593cf3f14527b3d53cbe7891cd775ab70e8d5d02de0719ca82bf7115d206b40ff86a55e8cb555b515dbf37c4c3c1afeda8c3b0bc1078a3f75ee856fe705e72166ec3688b618d0583c8b9d595882ded46b355ee540e85620cd959c04c6df7b2c166f00e9f9248a3ae65f2132db68b9f92762c47121dcb324576dc66dc1d9fd4946078fe071e6c21461fc4db958d4413c23c039ceb3d7d0969a65e09efc6822b63241e00135096470a68b02171652f58b3a6954bd26de689c03b21c800fe6749a67b4b93bf92d10a6285a28994573223422579d0a4dd38276c0ffe8facc287c26883709642c0db5abf56a52c28f351f033c495417a42376d8e9ac7c4fc34087d5760ac50ad9cfeff4df5fb403ec8398aeb830d45e7c4ed6e643212bae5a478c179fb516cce4d1b0c3cd1926ac130e55429b0fdafa9437187ce718e5d7b24740e64b772a997b4012edbcb8d9b3b45825d9df011ab8a451805f81fd28513d6510e1ea111c2f02353c110a23f887f990346cd03904468dfa0d3ecc0d4a05e6c09d3222db5070963ec97943de90fb66be8777fb82a337b77ecd14d4f0d66a43781174bc6fa489c3ba2e1169cafa0b77c2c1cbd1510d1d6e0204fb25de6a8d85ddd975417382860cb33d633be26057cf77617a7832da3b5f0b5961e8d21a739e8ad7a58c3286249cfa0132e552c17fddeba29177d068a6a4c465a06510e03b4e98b96fcf472401fe2677545dcb1c2df4fb79d6033fe632232b42f937c275a5abdb21dc9f7da0fcefd744d6f8c0d592b706869bcbf8962b2e436e805e60f8738ff680ad208ec8368340fd6d6df9e02e0b3e7de1acfe88a8129dbb120a19c7d6b3a77fbaaf98533937ce63e64e03ed022102d6f304966fce5607dcb9d92259d78ad8b8842a53f3a3871fae4fffa5b585f40c83f038084b0768d7da819708268d12101e0b5ce1538911d5cc49826c3d6031a9a17a1a60761d836756571f05cf32dee1f0cc5f799ac390fd65a70ae5e346508abd80a625fc7aad1d1bd6e21ff29890a287c51e2852b9dcee5ef6eea68cdb1d246e0a0b5486b9195bf7b205c0b15707bc613a86f6065d93eb73979d72525552b003d17fc5d24de5d4cb6df64f2066b9891bc79470dbfad6dc6e30be7499f4dbcaf3b9052b38c0f5eb85a384e1a03753d09f31a21179615de0cf5f5db1d304fdbcb44c8b35b76dcea64ae9180c13d0d6f516be14f3f6f99ed3ee05f4914367289505e7481c4989ba738f6f3d07ace11ea5f2fe209a83b8dcf23d9a0b909d73c8f8ad284c315f37c778cedc34f7161de35ac3e326c3b67ab2c205ca7aedce031c251cd8c51347f96438fd19956618ca1b08c597cacb98aef61d9837f9c9a94421bb603b60b5464df348d3d1cd846953906b2f5ea2248c1b873fbc60e5b50a92a486bf18deb35bde2283b23179165a058c871dc69427032c47eac6f29079939f8eb35150027134fbce3bf8098076fdb869829b614844f34ab8a2ec54a472fc348b4eb33271e8fe75a8b9b010339e9eb853a4cfa30952d17ad79b326029d38ba379d9745821b93200bc1004880157fdad08a46c2ac3366290d94754d4bb5c1894319789f1aab8169f3f301b3032c173803164e0154961cf9ab76f1273e6689d9166edf410381b9271638ad71baedad45ab0c524ce6dc8fdb7a7a9c9393c85a42cb6712ec9cb48577b720f86516e236d33661e6a6401d08a80100978e6d3e1e35eed3be199bde95d25e0c0bbf2ba874cef34a241ac41cb67904b77189b10e19db3936bec37ac8915ef5b178ba12eec5366d3687eed7052265ddf3286eb3693c23d7fdfd90b4ddf337b76ef746634877818a9139e4e5f7e157d837ac9dcbca70b3944474e9c07bd7678b411831a4398da9c985d3384177c8df565a2f3bad2573ba46185d9736cd6365a93cf8ab4927141415f4d95db79374ccd7cd0b583eaefe047ac7988c62003dcfd91f2530515a67def100b529ad4263daf73c1381af0ffae315dba7d6fcb6f949766d8150c3fb60caa769b308d31d987738011fb44b702869ed4b2e2d1190c9072194f03b621f8e3325768bef5fe5ed2cb6c6b16fd5ace313fd7f0df7d74e4c66c32650efc117274c0b48ab4c010c41c5daa56e50d9823ad261ca540fd083ba9439b14938b2c4ad9de776c74f2071fad7e8eafa8af5afde52f346b2e72c5bfac1f823fcc338eb077f41894883e3115ce34c8266b2c95c436094f17ba8f67588ff97c1810d01bc3f706016abf2170a065453103bbd2bf061eea058b1d212ed25404a47e74f2ed48ae1c1f822db700fa0b4bafcf46623f1dc0ffc81bac54b2f6684df0b4b40265683424801a23889c006edaccdbd5b8bf8cf969a9cb64b32e215bbd30b4dd132297b08e4c4b19fbc621c2519971d71738a903a89a94db3ab9db986f6d80d33ba1fa21556e006fad2c6399998b436b056f230893a52d9f0d538a1d5e5c2e71bb1b1188658ac173197c98ed84e8cc82643d28719de648399b4f38ed60c2e32d469f40d0cd72c446ad13ae22ea0464e630c87a2c240625307b0e6b5f99fcddfda5f5a9d2114604641bd17226070bd0ff2f54733c2dd3aadf85a377b08a7ea8f838c39415677a4c4ea8d9c4d85cdb2d5de09e6df93da9c812b0f03852dd229ebf5220551c94888a635b9c636f10c56370cebfbca42280792238ca009e06e4a3488f318e531fbaabc889c9507602c71fb0d3ab1043bad9f3f3fe010395ba912d6ef3188ee186f8cd1ecdd2bd66f9ddd8585bd3e0bc24b2ef30403cfdcb8ece12dd608c3274dc9bdced119959daac4260b0762d7fd1f9873317ecf1254fe639b68eacf14d778621aad19f60cf6de3af2ad0aa92de0509a00eb1f69beb00e98acd62c3010f2f21e08c542949ebac783d49ac90cc178a013575b722f326966ab48b16d66555e891de79d02d88bef4febb748056865c6f9155ed59c07b8fc2c733f5341c0a5148c06754ef7e34ae019d6449a554c74f36cb46502a9e51caa6b059ed36598e36fa661aacdee0c200435e19fe16b948afb397f31ebe1caeb53122a5ad8db55b1b36de7baba378e3f3b80de71d3abcc809051796612d9e0fc671c5500651aeb39aa031bdad5f570b566f070f38bb072d1ce4bcc08b061bc22c81b1c7f757a33c8119474c0db5d24f807ec41882f257192b6a68b43389e7e089a52ac4125c7150e1c71ae450badb90f837def0efa458fdcf6e1acb19709a469fa6de047c07e46b43069f50023c18c2d05d8f131699a7727176b0ed8adfbc3e46dd20b89c197efd27be068d96086950af627074a4eee0a847c4783d65d4ff3b87d8048f2074be2b1b315e3f813891ac131853151603837980b821f30929fad8be80fba3d7f5e0860bf530360a7d2e3f04c99c29f3335a11b23cdbccc477f242f6d317169729958d4d028c9bc998e48e40eb0a860fd93b8d6f5fa7972f08762669f2d1406177827f1d0cb232f489701fca9e52e465f0038effe73764f7714b2f0530edbd7dc9f65cf45bd43225aeec74654324ad2642d8fa1f56dd690fe0075450c9db7e740f6918e7df1bee6d66db103a6e888ba6f3643ecf58174fe47ee267eee9404778e1b6aa8af3553465f2f99915f35068c3f6e2b83864c7cbb3d2f398d510b5b0999374c944afcb27d209e6a13b2a0b48df38e2d4d6150216bcd9b1b2bbd85dc4124af0a858dd84819760285a094ed78c756794adf26d49903bfbff4e725ac3c3a4c7fc34fcf46b12dc161c34e1251465bfaa970d01d9c34c7da027b105e560000cfbc14710c70e56f1a10e183a0a4c12dfb6bd067f5c3ad33dcf136a8876ce21e942fefa2692be86eb754aa2d2d0291079aadb4aad61f0309ce3c71411f5f535b16909ba972a087a76552d118d91201086f99a71c8f64c96f43f85691fca07900e87ae87cb673f86fd10e619f6dbb5b94f4f33abc3887010acfbb2c180af6880e8ca1a204c9d731b194cdcaadbdee3dd2a5a8813eebddc4a486b6d555a6014405b7d0733f9d267f598325f0879ab28cb3789a9bfb995a09d4e7c83d23bfcab6e3eef44a0f22f593f16579b85741bb980fbb50cc057287f4f320d12f6b8c1701afcc859bfa15fabb378efee2f11f15036da570c47262272ee35e32e66ea1a0aee3b002f75328b7314619463223215266f7ca10c631d55ef49ce9086a253139785b5a1324b3ef735dbac828bd87a1053feca8dcbe1ba1c8352cc0df6edc2977dd98006841d2fe1df3494c0c0f9d29c98e1183640b71cedbcf1e30c83fecdb39275c585335708dbcc602edffec5290f143fc11990de7528e470927c3de9a82b9d423f238312a33f1c47125e1c4cc7d31c4e38173d1e4a0107cfa016aa4d7c93429ed443c81b6540b969c5b62a4c70fe31abc51825c8d6dbe8dc0ed032c1da5a1b98e2c47886aae00993fbfa2c0de580875501c2aa344435fe904479846065d385afeedd25be02d999afa0fa29b9d685d97dadeef76410c897f680826eb81c00a91e24e4ce05f52d8b22c53ddb2156cedc17d1a1533067732789dc0869905ce0c4fcbbed66620b4544cee03c79114335baf2af8836d46fba990dfadc639b94d9446623537b662f8e570679c2131b3872a0d043e21d6d0cca2d07535262ecd9b6173f623ce5959353c187e8bd1a2d1863feb11b01d27bbf213fd17e0d93161ccbdd6d29dbfc530be9e1549b0474ed918323e1665bada51c659fda084c8e11adb98c9445bd91b0caad5975359a79d42946e0ca3b9a5951a363e02f4f8043a1ecabe2e9c491daf5ba89c6c19e945bc1fb0f9a3dbe7b12740ce41ec1e4314218004d95693bacb03d862c130e9fbd7bf0c3eb2b5f60a92d87b8103a58342e0f37b4e70965353448362703fc78633d33ac307ef5d8c1599d6f17a65c572b8b83473934d8d3f2f902995d031370c85dffd3663085553b8090444347024cbed7b4e3a8615775d969a2fb3d2021472ea4030bd44c0fca083b71ef28a7a8f9dce7e05e83d3ce7c53a4dd0d5e86af801e26b6bf1cde595491708416233a4c04fd60d2a9466f00d3a9671e794e93146ec451448c4882b912195be6d1d8da465a4a54a300bb54866931982aedac559273883ec3855100f7a617b3bec2e72ddffb01f656c71b84c2dcfd38f5f619981dd38acaf004d86e4360c3a275957c467543d8c6686b7e6fea623b7c8c524c9f390bf9f7b4fd7b7949381c64d4ad72e6729f0b101d1d93d5cd2b6040a32b38946d78f1c53f246771a4d116b0899534333af23b947ff6dd7b231b43c7eb08b7eea2013ccc054ec9d707bb55f89c2761e65f12b7e5fbd85bd0342d663b37cef468226ec8053a5cd2af40b9812f3ceeaf4c974df87ce82d84fe52cea3b116d2463edbeedb91091d493a79a29bed845fd6efb0c81cdcd0db1336f7c379ad702f89572ce3f2fc461ed9af7d2058afb74b1613327c144e716de9a0728446804eec789b53e37f707f80cd775eee4e08d674e0d598aa8cb26ff9fb20b61de3957250e3111fb687234f8f29331c46b189504f189f67ca13c96ecaad29188bf8fe6d8bd2acd1d8e89e845cdfec8b7b3969f0a8f53b93d5a57f363c0668c5e8e05d2149ce84fcaff8a815002232a6663221b27d0afcbb257ba423ca9bfedd5608e83eeefbaea15622b920c030cb368f07569bb282dd084f853412a1dda26bb865043aaffe668230056ed6874c479a4d44dc8b67e1019383abf33a8e9db4c17635fbe8c2f5fc8d365a6c6ba6272b6b88b60aaf0d20aba65713bf766a94db94f6e85ce30e6b0f90d6f8132c6e174c38570496733e46f2296f12f59b84ee1be09f58f97b22b48382a6936cccf3622ec51600fa7fc1ad04765f208a5de2896f65beb765734cbe6ac28f63ddee9ef2e31979dbd65622f50b8a1bd8ecf9af6ed25e6ef68b47f34c3a8eb112b3f9c50156c975a2fbf0cb91bdf56d572eac4be304a7e96721f5a96760d119eaf8db9fc6a6ec92033099d331610810b7486e6920c5c258fb1562ee17d12c59541aa7ebb541dd44a49da332ba1c1f08b0e7baa7f78416b53c98a16307406f88e8832aae90e3fdaf39eb1e6513e7ff1f29cc2289542526ccecd3988ca4b00fe29c5c9edcaf3fbdfbee257b6ecbecaa20a928aa008b27ca43a9161b726b5a7d719c7b1b676cecb309550cb53d36a6c3086534040ad4af095c20f83cf1614534c1ab07176a03fd7a538c479d93d25218ac4187b504f87fb7ff8d2cf18b0523f011312949869361b0d33e9c5f8130bbbca5891e1e7a6c3867730d8c74896344632f081fb916f19c0747bb02c83acedb11f285446775761dd7021c7a1677d49041372ee9e363a54e2f9402e0c83ce08d88ef9c7e83e6aad43c42c52cdaa73dca5e9217e247eda2ff38ac2c741b1f6dfc4241fdca7c8771b622a35b618bc9307578de47aea427a691ac014fab0f4bf77c1e824fb42bd5ac56a6b4bcfa085f8898c66192aae34bcc02001278de9d4d1057eac9962faf0fb2ea25259694d09e08eac8f22061a8117ec2e54a1183f261ec2f767829bfa846fc1ab857d7c5b22fa1c0a9106670ea0b0f5a41569e230dc2d5472b01556d6046b05c6deb7012be2e9b015fdd72de75981cd82fa6a931e88a5d7d216d1971065b3be954bdb5f9e6bb619e93c9bcc0f9fb65371c553b016827165c658f30c4858c70720073c50aba585eaf0a381bc985858171daec4b2e07a71749991b86e3712ba340cf64dd3508d0d44bb3f1f785d814e74d57de118d28bb743c53cd553b0918fc3dd5b1a1fdd7e2eebfb58c5bd0ad5991429f08ca600b6a859a41d2112a1c86705400368c29662f2048e49d3464e136d4953cbd99fba61ee3b30a0d088d996dd456d2178716cb04ef016f326baac279603e4aee2f16b0ef12ed3e4417aa40f6c3644e1651fca672a94a3a68d65738102907a1b9b9e3284246160a2d7a78b09fe66f56fbe1954a87b9c96fec8cff729c8a0a6580b67565ded0c1b1610742d69bc4ab44311f84639e55fa040ba61ca31f8aeab8d07f951ab49573e3a51cfd63abb9e052c2ebd8231485f5b6a144d0f8dbde077066dbd9488078b62a8bfdb75d779e35e4c8bad960807437e9b0a551ff9b2d72df3b9d1cf9d58d677aa1ba4c55625a5d3bc8475a97a7e6fa76a305dfef71f750c8639dc8f2b4e04295447910340e25859de895205de9c2234d8a40202a24e22c00c6786ecc70ef47585bd05beeebd14896ff450bd703a0212b40a96d3075a2a28216d58eb98426febf2d718aff38e3127030ab9adf9fb5454d7f252b9bde582d6c48f9e906815b542a99904393da2425144d8907e5920f3d25f0567984ab63f14adbd72a7e9eb687c4b2b77236070cf3b9b2df492d5052bfd5978e50b4610426a550e7084e07881e04a0793931de39c26264cd166bedab20cefdb0e09b2db30d0b8b475d304c34637f70eb7485f0e18caeae1a208923aca606fccfe9a2169778634e26f6fd127075c8eba45d86946f94cfe8da145e4f3a1bf065717f52d5635422ee15a2c86060792a42297996768b0ac5311eba24f43871912257a58886d7032849b337fb23a88b15b846eeff43bfa5240bc9a611c6ae51e903fe4e70ee23c23fa5cabb55cbef410ed6b5eb6ec291c911013ec8e01549b1f8777ffff76e4f1f44f298a8cfc676ce7743afa6e394c83e3e05be7f9c95044590b1f671107cc22142548d7377683b2a3aca15c2828d7a13b1d639bf60d1421753015c2946f67bae47fbe235f167760af7c5fc1fe37db79aba58a99f3b664746c5e141f2a1eaede7967649f4dca7ee887df2bfdf4f453d78c1ccc29faf71c7e366f2bed740bf113ca521f7ad0298c5b576c47421e8630c039dbe2995c9e7f041ea275b23669c08b4a945740aa163eacf3a1fd40ff038f964ea327bed16b615d5485520105863d5c442b111d51955e885e5126ca1abdde748262c1ac032dfcc1a1c6ed672e8170c5e91ce019fbd0a285886d53d47736ce414e22d675464514beabfe0ad84a31985a9a67c0e4e4243ee8d2fe3974a9cec6d1f31d2dcb0f73ed9902539904d1860495d8872f052d081a771862bc5962027b280b58516483c6f1d4bcbc89659acefa769e034e444586c0864a3bb1e13af1615976b75e4dde508635313a1b69ab8335a57942d67160ab33ebe4e86f81b27ee32e0822e90a9192bf982454a3cee5bf0ddb3f15290e0b030e0f381161c489d00959ec83a3e9e88d4d4b485a429c9a793ca1acdbaf61e15bd416e32314c5f96e4a283398b050726f34d80c4e20215bd1253d9096c46dc7deb790eb74374cf17e1e13a527ff1efcdf864b9920ac7aa767d8e1fa6384a4dec588a55bb6304951303ea5e8b714edd56cccbdd12bc4351c76c48b3185f4c2f8c2c868e723e242722d8f4bd84532f463f77227bd057e09cfa94a37b8174872f4086795839985de2426fda629aa4a1f16d4d37f5b3512700c8ed65dbd3a4021d8aa944c9cd31634d994d9d450e0a274dced341499e2ad1f3058d810ae34ca2d315cf94f3a9f879ad0757341c23de6edd0e97d741bff18aafc32236153492f6be332f1767d8d0326f4b3b86b100975e37cded38a9f2981b93e772164197e9da91a19b249098258668a52158ae761f2f469c1cc2ff2f3e848897d33e786895cc2a56ea6dea75b2ad40bd774f9bc660c18681f95aaa204226c5c44443c16c6bae6f480cd8941cc39a4c39e31f330b1540d22aafd21175508a4c3b99068f365565594c1efdddd314332b46b2e77e986dc8c7f11b380a03e9a058ce46717b6d81db75aa3b19fe0367985bd3cfb72eb5dc83a1f400e068f1df65dff9a276c47bc8c1be8df8fc601fe13a0b2616d0f2fc62d5d87131ab86a726b6054ae44be92308ac02a76639b50afc2ef286ad79ec855e7e2b99a9c298798e510f56e79de612c683f6362f1754fdaae9c28e325267cab3e19ae5a061cd5549c0d074c56c0fbca977d46093d06d05c445880a207ddd34241ff64d45626de791bb2ef509eb8ec56fff28cd1052f3e16e4084c4b91c00912485afed89f8b5e09e25f0197d8421d6554b5d6910067dc6514b5082cdce85b42ea516183589c09a0213d948f3e6a419e9c007d5b267241374ea540581b37114ad568d57234ffa9c1628a120828c15b364a46a0d8233fb4d239561ce142260a25d97797822b194ead036ea18d35ef42ee11dedb51c0909d1cc2fa52e0b69c3dc4bccbd87eeb75dea4a8c49ecc57929f760a89a5df3f486f54102fc936d30d6bf022a2ee870553c612282c45a04cd74d9c264c525947a65d04eb7f8cc4e09a08445938f15bf61130df692bf5ed9e22ac0e1480f02e6e2c2587ee3a63c358325802853123a46f515f785483c1153662ac00980ded7410a14390f6ab1d5a0ea944bc5174e3227eaaed6defdc59008a5d586f93815f45beeaae5394c9846538051f83619448faa73ce9b21476b51e10432d84065ac15279f679406266ca95dc8edbfc6b004816a5866198749d36497baeed0629ee38a0124569557b1c63e9b1c8585ba26156b408ea49d5bc2aae1481246ad1b65c74d2d85430bba5c93dc685ee9cd012c5d6cde457fc1ec919e0ae14d7c0aecf4c7e40e0b6f8b8d396789f0225059751782f3c5367f76db234f1612dbe17e946147c6c49b12e39ce5b15745f2d096796390a4f935994530c38072778d1c7e4b8cd10e334580afca43667f1d1c225f06cb77ca0c895c2159a3283069944ddc18c6308e2803c9a49cb2bb439a36d812022930f3d5e40516ef4fb585b72bbd05e2014f8cbb9f4c75fb143c9fbf8d8d5daf037879b9cc256eb496517decac3646403aba95af71d976ffd8282a0c72ab32dc7c9d90178f634594528a01e175943117c93921665b94052e5891634112d193ef6a9c694ed53580d812ea3cfef65d3fce3594fc2d495e9203514d6d3550645435478d59d564bf1af19a568bc0448342288a8f3dd2034f1fa9cd9245365cc6068f0c0349f6fe52db41ed187da537c9878f1dd3c2ac840c3fec92812dc3ae5629cc60cfd017e05c408e62c3b9ec51b3f7c5e95c6b23bf86fc533e68a2c207092f2da040a6beebcd4cfe380b8463e2e1e677d2543332bfc4a33c9bf2bdae5a3d0f868a483872fc65b9d27fe02019f833e3b3305c6f6286c8bcfc8ef952b0a709b69df9964d8a844e386ccacf02cf3664f50ea36d6edcb839cb80d15e330a264e4f24166d2cf1521233656e06d237384d95d16c4bd8ec11fccdeb1b094f82620562cb36a6d53d204f0d3fd598b02aceffdd61c13da93672f81dff9db0b8589f23f23235e13db6b56b2ddc63039e9585ab0e3950b026c301f3ffffffffffffffffff18f61babdf2c5076ff94524aa158152bf786769229252925a793c24070180500000000884dddddadd940ed0e670ebe0efd58fc133620870364a4a2ca2bb6ab964e2f6565a0021d4dd98c8ad153a4a662e9d18a31f7668ad4ad6f35e5e5aafc7121a530f67c0c9fe3a66c972485aff936d46be7791247615adfdc0b22d3d32a5194fa2c97aeb4f81e93a140c44bb7e2936e981814fc8e6e19998376d5d127d29e4c7bf3e8b89de31389448627764fe2594b86c798d489f308f9769dbe77b54e249219cc200631f0a1cbc383482432385185cf61deebbd44e64df0593fbccc05d98c9b26fcd3e0d194ea4b37da4c582a3ac513f53181ae18e235ddd77ba89778fd83667608d1eefee861894f97cbb885265929fe424625fa20c4856fb996cf394a2ceb1d7d44ed58c5389148de83f09031093bb9c7ccb9ed4f3d24092b0891593fc85b8c2b125a3aa119b487bfd33148985496b78b77b3a9ff23d674d56725fbd425d38406321c91a7f73c3a59feb4be271249b74a243bb8d09101198dd04ed355ec4b66d019166430023529e24cbc27f1ea1661b2ecd50e62356f9b901728067284e116c81103198a7894294bfe1ada54362522b53147e9ba910c44985756ebaaf462f59b4824de8544c2020d3200198740a911ca2d36c7a0196388ba5f6d2f5e5c529dd5838c42949d61f66e1eae63228429ca57909673ce7ddf20befa958f5944a67882e0a3ca6dd0547271205d34e08706bc001244024284f88f4ac8080467973a06539647bd0e885bad56cdab3bac877f583d264b51322f8d529f808b12e8d842861f90a964f8587df71e6464f461b77851f1e4680f334f1c20830f69d094f7997b9a463b9148de3be043c61eaca4d495098f9f7535197a287fc6f0d4613376d2630441461eea581af22bd3544c3a78b0dad2452bcb527ee80edb7d7cb34c59d39a7a800c3b64662147fcbd2a79a60ea8bf1d8b2ada49890d1d18b1d2aa1f672ae5d11cfccf31b4fb480bfb141972683b76cc5b79ab947c7140e84c3a9ce5470b220ef9e11cc43720914040061c1032e5e0f9b446fb8b4d24120ec878031f94599dac85d1519b48242ef01f41bc870c3720abc24488e879b6de868228cda0df343f3b63c37d41c8efd794fdf55cc3155cc4692d9da3a74c0d7e8e0f9a836f8f7a2e021969d02b9c1e95636e88db65a0016595a67f3225bd319f84b13cc2f0f18504649c01d99bdd17f318ffac19ce7cf920ae5b366bb20c9eda7c7a9426919b6364f8439e58d694e3c5af8c21b15d77e9a147779a2c430cc94f7b4ae58e2654c547f7e0f1038844e2a329f04303128990150001322940c95104d0f1858c309c82874f524c856f0540804c7c740f25c800039b3e86782dad0de9994824427c08901f2ae30b25195fe445d6e69cf3024a6cfa583d6d4aaac90432bac0edc6d4343179a66612c8e0029e3ffdda091d36e8941d31a020630b7fdc900bf1d8defa2612091732b4909067b264fe13bd1f2c00017298a3438810f762888c2cd83a9b313327713aef800c2cf829f5e5abe74b7fc7094ae0021957a872890ebda77773e3138964478e1d39cc014347107f2040826c20461c6458a12073cac9f256af9a5c46151227efa6d365e698611732a8605b2625f21a3a3ede0fc898c221ef69197b6237172123902105a496bba7c65a02195168552b3489c613ba3532a0d05a2ce91a94deacf1fdc0c9784226a6a4564af330423891481a20c3095a3cd149f3a78f9d618efed1c3023972a840461312a17aed5baccad467070a643021613940a683dc4bff4d9ebf05642cc115dd0fa75e53d0792921f1b6b2f14bfbe59549c0b3af5a5c9a93f594183890810474d4b0e9639e4fdba12324eb4a77ee2c87e6a40c23e4794bbc9657c53ca68c22fce9c2c7effe6c17f9c4c76a086410e118255dc572ccbd2c2712490e1d6170185c071943c06d6bfbcee2a998f710194248cce94e3a6c4ebf5b1389444610fc144e7b74f4f6944320182dc86032ebc4693ff04c5eccf964fcd15727128910193e485ffc44f6ae78c94a0364f4c04d1593794629e99d9e48243b64f0e01473f2d2203ffcd63409f2050f204d02193ba86428d3b4389e46533c64e8e01953aac4f9dead694704620841460ede54192d8f742d112a5df804ba908183ec4b2b9b10327e901b30be907183d374ca29261be3fc22c3067806fdbecba12d33ab85d99962cce147069d9476ecd0e13e56ab20428b2f494b6157b935574f24120d32e40511c891c3870f7d408e06e890486248416416e5142d7f780fb1b0b1894432041159984c05d9ee633278fe132e4462c167f0ee242c5de5ec8185daf7955f849d2e594d76f80f203e1e2091f80f203e780422af283b457d8d791f6a12445c61290bfa151f3ea31d3f34f080c9901e2110e2c3470372e4c821911041a41595860a9a45ba7838151588b062db30a6f739f66b6a316e20b28a4a08adf8617116c22491b840441526f1a09599311f558f81482a8e799a2973908da5723e4450614aeb39ea965b44356e011d251039c5172f9a6e76a8147405022d1031454a5b5e54c5d7dd4489848717fc02068894e2fe4c9fb269acd85b4861e968ba2e6e29192fa350d36e63abec83d5cfc361d0c387af20881f115154ee1d37554f454526811c14d0f1856240c74424148792223b6dfd9bfa4b0414c6cbe769722f8ae5bcc8272cbd4ca3f29f77ce2c0ff616f06880882712df59f44faaccc82b10e9c41ec3fdbfbcb9ceb82610e1c44153c7cbf982a59cdd4422e14287074436a1c6d8b935fe59a9139a784b243b3481973cd3faa4dd56839248268c9e29259933c8e978031210c1c45539c5d8a07ab942287209554f7e924f3a99d279c704b8d0e160f8d0168858a25417aa735d08214522956063a9ce4d37b5bbd04422e9e2478f305a22d901821c16d011c48750e00bf5422291482e204209737f89346fb950914e36203289529231db7d2a36664612058da3548a57ef21e467660b1d0f1089446db11553eaf36c6e81c496c6f593fe4d3a05a940e41166ca3bd27bc553ecd711c9383a08254ead46c91a71d688d2299b7543eb0630a2d7ec22b5f74ccff545f8e3e7b79d255e5dde828822b2aa5f4f426eae7f790591441cd4958ac94da6fcf84144974486959776c70e1d02dd911bd5a2590a7e3241c410e7d30cf1a557632a4f1030881442df1995c9c62f5b75429c62c89e909d4282c8207acb9a642cf9a6d6a320b2fa3d19a15f9d423f99824820f41883f7eac5c577490a22803076b4c893f65241e40f55f2d09ea429efb3e48af821911974eaaf0e9eae14e9434a96b6a8de5f69e18d40840fc8fcdeef5daadad43491488600f121640f5acf68a832ade5597741440f668fe97694a9541e261f4080ec0744f270dffead67f037a14f1d88e061f36c23c64f95bb6eeea0e96ccd4cdac4c2ca7638e7a8bb721e1b7465ea605e7aabcfa4f7492e3af4dd9b4126f3942957211099434a2d7e6add9c463c39fce63f5a3cc70be2561a88c4a1dabfee9e39b95c6a3894a983494f336eb9d40fc8e1801c0d20800844de906edfcda75352ad2945c40de59c5dc582c6199d527820d2862ac81c36559056b1251bcee097f99f4174d92d04913524a24d75fcf35079a36ad0f37692bf177627426948caea6ad4b4a6c2e83b10414349bce26fd2ff513635103943e3c173aef8a4d539c70ce6a037c74497b4dcbe173dd4c703365006d7f43f3756c3c77067204286cc83c7182de2634ca90c44c6d078a65ad7b01b9e471131d461db948f509b72281bd0039130943bb564091569e96bf5091878b58ca793dfc8b8682291a0c817bc77b760b274aee63d24921d1ac8c1450e0ce880804422e285ebfa744a9a1f4ac9f804912e9cc5e496a5f8f7870a086e20c2054df885fc3042bde7070a225b3859182d162a0869b93741440b7c5611a5fb84f8b6cf092259485a4ef7acdd529ef3175f280f5e82081690afdece0a4246633e03225748e5a42dc773a8b8e9011810b14221d2d2e593f749687a2291f0e8e2478f0f8854a10ff596f9aa7515fe89442291ece802c805bc001244025510a1826d157bab5f6695442e74f8109902bafdda95474bfb47d3028944880444a460c768113aca6e0ed51241240ad8c5e0a236e5fc5c520e44a090c959109bd33691488620f20493b5e5786e1933dd9704112754f1d2c8b9d2144bfb451069c249b87a8a267f25cbfe810813cef2269436e92a3a9e8ec812ba1a39d94babae74d2b1224a28fbd47ac5c7aedebd813c60022249b83743d9cd6a26e9e799d9a20b11242832dcfabffa68b64b0c1c881c2111994d068f22935f28032246e8b48ef5ad98296d321b102982ea5f32bac935cbd6261209172244e06b746d4cf7eb41771a880c41dbf11da17fab25f3404484709e9e9219b5329396139120142a7fb48f416ed89c69200284e306f994b1fd335af0077cc9118d1f2a4b6a5a447cf0a667de283a8e12efd50c447a90b2d1cda52d873b992203111e7499576f6a9fd7ee2a3bf87bf546f9057de99648b610d14139fd28b524629a628d1104911c2054cb25b9d1aa437c1389e402124910111cac5ed92acf846a4d7a01082072035634a6c811d972f9462007173a542062037f3305ddcb7f950ffa18b53898aaa049a855f90cd2c2bbb6f7bfae2e99f90d62cc8251f93e69d55cdaefc80221bacbb4a96eedb9c4c27071da4a9ca928b1c1e2754bea42e6d20821f48218af482ce8afdce9d7d5a61f315c91d45c4f0f1f2717361462b4420fba83ca19155b215b410c565817dbc272daa6b35c8c26c458c5a9c77249d1a527e48da18ac452f9c90b9ae7656f418c54a815df63e8acb59f390ff0a11289ff501f3a80c44085591ab3653b5a418c536cd152fe6b90e5416715c43085a983bc8b0b3242d8e85dfc701f3e74c20e88518a83caa80bada26a259e481a108314ed9fecd3f5d933a3c68544320a35bfa48730e555c1230a64d3d756ac69d2319f48245f00914892291e904824928b118a35a87f778e1dcc5467c28347016280c2f81896a9f35dcc353efe627cc2fce1ff9984aca0f54f500c4f2ca2f9de5416a9bac18944d205900b74d105900b7c012403124917407ce848313a714a5f699d96de2a88271249d595974802108313de6e663dd5fe5b8b4f24924d58b2712f8eb85ee88328182c102291488001313451d765903168d350cb6b2046265afd6dfd9c74e7f09c8944928218984866d0108d4f31f805831e675e50858744726656f0811897d0c3ab2f993e0dcd1e0f08d1a1312c71e69fd7bc769da4a62f885189c30821b744266350a2d33125f5a24467a9bf3126915c5a6e4ca5346e5e4920934cba316f4c2a28a5306244c24feb56d9ae84ba98328901893bfa7e7ed3e1bbc32783188fe0535fac853059a5a2180127f11317b8ea1ea12aec2d78399ed77fe9069d3a35b49067d0eea1bebdc7b32cb825932a8d7df1953f5fa80b3cf043035f030b8d7fe82f69b7f9dd5e21213775064f6ae11b7581101e3f7afc78420d2b18ebbb4dcaeece755b871a55383ca5a6361de1a52e150c5ae63ce752ca4c09c68f08d49842f2d6d293d2a73e8f204078d490c261c48e26cdb57cde4d24921a5148e5c553763c1d944c0d282475f45b6dca1d93a7ce50e309f685085d9d5be47edfed84e3cd32075d594cd756418d269c4a8b7c0e5d263c26273598b05bfa24b61e5a93a6263596a0790ccf97f3329e522712c9163594f0a58f0a3ab9e8f405e1b1230239dcc7f6f0e143ff070584780778841164888e184ca89104acf3079db378c8793d9148bef0e2033b1e902308102f58043a56f0a38707bc6011c440420d24acee41a59c4a15408d23f89de5e2dade2ec6de080995bcc2cae6bda4c249043450a308dd8b67a814cb76f79e48240ca84184a3e7c9ed11da09185e7851630895756baa78294891fd4408eeadbb9e4e4a774e022308103058c03582f0fed5564ef6629dd21354030849ab124bffa334d4f8811a2fc6bed0bb2812a213afe1833b4768fe98738d1e9c4e7e18cd6e69abdbc4259214d4e081f1f3a7a37bc8dc7eaab183e388d2986316f394ec8944524307db6b2a3fd3a6ad2c9d4824357280e55419ec4f5b968626128937106ae0a0bc5e1ad464de97cca97183ccebc6ca5edecddd1a36487bc9da7f3d8d29f6138984462d2ecf1554fefc9da53c2140363019d2230427a0410b56642d893967a1ece935b92bfe4978b2a8eb4f684d6d7e2b3ab1d8b7949a10e9731d5d586c716929b23cc68afc159ec99cac6fef0aae37735756fb5f745bb1c6496db3fbdab48c155c2ee141d3ff34c36915b70699b7d69498cfb22af6d4f3b0734d751d4a0572b33f6325d4bd875151c5ef3c8f93aee19ec2ba72d79ce43276f84ca1d68dd2b4cd41ef544a61a52f7d4af9c67eaca4d8f2cbc9b496a3b9cfa3e0e4a85a5132795cfb45e17998fc9bb0526a77283eb11e545bd0e8da22281a4dff2332e5a44fb89f483f5cf5f8aafd7ddc1389ffcfe9838d86f17c27d8b07bb56d532ac61c4e20b3e8f3ec3d8b8ba64d981753f46fd99a68e6c435678f8b65d14c94c14c0553b7615a61828b51d52e5c3b83ee2fc1a56876aa3a885a1959c28edb9ffb3dc8ef5a2a810a51cdf46937e4ba94305d3d575f2ee93a7912c75afda09a34496c32e9379543790aea8e844144d7b674deea7348a47d2c7c8c5769b3531e610a4fc2d4ccc2dff68e289ddefa333d35a252fabf398bcbc7888cb066eb2d63d44528de26aecf53f6784d1106cb7573f2f7f5b33b91f0f8220a3412a1eb66bf66faced820e2cf194be667fe26ef0fc145f5791f6d63edd617340cf16fd4d3a3f2c2f76b6814c219bf4ee51e83c81c320d42a436fc6b6896f5fc78108fad59fe975e107f12c2ece3572659371028932eb2b2fa74570544a9553c4c4745c84633a0230a34fec008d94cbb20ae39a6ea0744b493ac25cf1a1969f4e138539f2eefb5e99969f0e1ec232d9eb29429733f914868ecc170a936647f56558fe9c1d8cef314cf69ca748240230fcea6efb52b1ded47a9081a78b0639d92ad79ad529b3bf0a536ac4ac5729c69021a764854858e49ca9b90ddd501bb4c67713c678771e9607f101a33f9882cdd4281c61cde3e35f6512e64993ff921073c6ed694fbb36704d2be27a011073d6e9b4aee1f96aa24916cf39808c1000d38a05d74f4b3d408dfd3442239008d3778a79e73ec91a3e3522612897b80003a1440c30d89ed20940a2ab7fb34dab075769d534288d805a0c106cd9209cf69d345137b2291f4a0b1062ef75ec95cda7e19204082e4a0a1863e95d0bf1754acb4c104060368a4015342a93c2aaff14786061a105294aacb1d2c9b2c49a0032090487cf80a820401f2e383b440c784c6192eb131344f739217e334cc50def294c6d37dcce83cc806620881461930954bc6f4b57da04106eb5e43883f793a33021a6340b4e2491d0f3d2b96c9077e684022a12186a22991a73e9605b117a08710201bc841812e3c035ef4c8418052d00883318bb2ac666fc9779d000d30184fdcaa68309d4adf031a5f503ea6983667cc8f0fc880861750b9a4df660ceaf274263e840ce9a141b8e841a30bc5b6ce9eaf116d622e020d2ee4e5fbee296e97987a22910082c616b4aff9acab41b64cfc41430b7cdefd127242a3ed68229174f1a38710302a40230be8944fad9ff2864f97891740824880fd0b0f48244c030b8b08513d174655fd88078d2b202653b37b87f30d268964c80b22c0a369588111da6d694b2df33bc2f81e411c041fa0510537750edaf2d5f86d3e080d2aa8731f4d7acc98430715a03a90a33890a33690a33490a33290a33090a32e90a32c40001e47a03185ddc2a6ca55cb5b1ebfc0fb470e2ed090c29ef46bcf7390173b2f51e8724851712d31a3798102eae6c154dea0df7a91008d279464e998da46eeadaa1289086838e1572bd3b17d9a525e4fa3098ebc5dc79436ebb9294c586d47c995baa994dad2008d25983b47ef744fc9c73d043494608cb1949199e63dbf9204c45e74a52053c837e9442251000d24a0f99d5db4753bc9fc118a7b16222ad23042b1aa25b7bb3b6d558aa0b5ee650f4dda94d934888016f10b91d7d0962a348670dc4ef59d22ed83dc08e11c9944c8d3e29e8296461096b3caadb159c37e060806396f7a973cedab30a0f183f2bc7a909a6e5f3459e583634cb59e90fe1d551ea5031a3d5894d8bc15eac38b8cee80060fb2d860e1a3332e4a3625088d1d20af54f3bceda99cf41ad0d08127e3e859affeee20fa80460e2e31da349caccd9623743470700aa245f595859c587240e3067ae79141eba37ad0120d1ba865f5efb145283996c9901efb8019b54896b9a6204537eecfb4c036e5ed836c0717538c21cc988516fa467ada131833649150214d7a2afb0ee199110b2fd54644e96b3203167e8eec4fe6da9e620c901f3c66bca24aad9aee43b507eb7a30c315095d61fa377ed6c6c298d10a4b7f59caa8a1e74977c10c569451355ca857c9697b155f88fcfb545b492b3b43157c7ffc9ed8a452990a1066a4a2ccb6d2f183aa349e9a48241e98810a774678c58586e93130e314e8f0b1941c91a16325444f30c3146d5b2ebbced1c2541d414c04669402b1e3a782ba60066690e21d4bfd21b4848519a348f6e3bb32960c7be6086688a2912384ac8a39c7549756203e3c3023149abcf394f2695afef8e0e13bda87f79080730f1f1e18d2c3013ab898010ac49cb06449df0551aa0af4139c25f565ea41a892cb8f1e5eccf08463d6221ee22c8953994824fa8510c98c4ee0b77d41c9a78530cd0c4e24da435c8cd3bd91f94d201b635d0e6efeafe2163a6668820bca534484e6fa0bd26182199978e52a453da90d4be1199830fa75d77848d7fcec12763a53f29d32b38996b074ff5cf631fdbd6725fecca42dce9cd613254a6c154dcb09b51bec2f93e8e693dab3af52293b9248ff73f44b39c78d12c98eff4181184d9811095356b5dc33ff206407073320819acd7cf81c349148663cc24e363aebfd8ec8798ec874b44e2d836789bd11e78abe511dc4aa86652291ec08e242c080c0ce60c416727f796bbbda53de8b6053de8aecfcb01c1efca307086628c2aaa034e9f0dac9f24c44a151ee6ef563d0fecd40049b82ca8dab09171d93630b1d72987188ee6426aff0d9ac58d991011d4a986108544753daf4ae8266bb10a64f31749f7bde12ea0c42f09f69c7b78462d860c620349d8368b38b2be2ad19cc1044bb7ed16f535e5d8781485eaed19462fc943e20cafd1ebbeb44ef7bfbc359d49b85c97aab5ffda0950e272c2f5c3ab50fc6744aa92cfaf43c69f850b81142ce892f613969c61e0c3a4c97a8392d35a71e12939e1b6325391ddd1979a82ed668ddd53e959a81072b768e79ebf894cb1977d84d287d5aa72dc97fee30c30e57bcbca6748c29c455ea80c5115523fc7409abe990ec96a6e7295542e6e660d83832a72f623d75391877b744a5b2f0b74e1c1015f39fd1b1c24a70482e8550cd7daf29f6062d349b123ab6f194dce0cf87936efeffa6b136b4ddeb1b4c6e9c528f0d99b81cb3df5fd466b906d53279566f12d2d2a606d5f382ee74b1bd9d4903f7a36ad3e818ec346838a866d1d3f944e868cfb0cf66ae2de1bf29c80c997cce3ba7621952e9e3b7b55dc367c990a9d452e2f4499b6dc760e7fc1e4b2f74fbe588c1900d95d5f4e5e9df8421a5a2429dfe7839238221d569d7e92e32860a7da1101bd52ea911175af3c2db1ec3e7b2debe5c5d487c4537bade59b5890b5ce84c4ada9f92f13b5bc8765de485bd246367b5f0ed78f252f9bd262b5948d7c2559fe7cd591c0b5968cda14d26151baa2b984e659039ca07a152d80aefe76ccbebaf9be35f05cf4d7b504b5bb1e5510195b4274d2fe6f79d9d82fd95b35519748bce4821d5ab4af1233fd5de5130291d9e33dc0d0536cbe50ea246c4dff78445bca9979b85558a4e706346a8cc2753ca29a5098bb4b9f471756bc766c25556e9a23ac61f692e01692a96cec61ea544a584ec572f94b258f91b4b42ed9a3c85b7e5cf4d21c1d38a97ad9c3573361d214bad1b235b9e93486718a15aadcf397eb22fbf138964c7036614c10a29eeef7b7a614a338860d69bae52ba36bbf989442264c6108aa3e46330978b395621207408579f2d39d39b2003981104d57bdff4758b67f980708aa7b32b93da109f9c00e96208184078f098f18384fd5dceb5ebb77e80d13ec307e714379594d914cfc72a2366f4a0d1d4e91b3a88fb8e9948245bcce041a9b72baa34fd830ca6193b305c5584e8b8b9925c7560740ddfb7e495f4a654302307a8a084ddb7a78aeb691c7c17cf45a7c9a7dbf30688fb57a80bab78f7cfb0c1ebd1349f387d39f55c0b35c9209eb4d2da45800c5a545d4966a76b8fa9661064cca2bb2464d62dc9fe13cb220be2b446f12e5517148b3ded49f78a7e21969c7040062cf81af751fa3dfd666c888c57e0979230b5a39268ba5da1e72acdbca28408b1b422997784ded1a9f458cc0a7d94f40d2317ea64ed437f682007173a5e20631525997ac7772ffcdb528516e76eb3081d527f3b49b88108de74537d48d327f31e02b7de989f5c5fffb386c0b23d6f8b9812213e85282957edadf2242dac84502b7eeee031c82c1f3308e45636dc9dee69500ba250d9f1729485537103a1c51c63faf47aa7f5054429e78d1b2fc8944fe381851b7ff884dec9cf0ab5b5791f6008f1203c86b00619f202bfe107af94ae3816739cf9981adce8c3996583ecb7ec6135290237f8c08b3e955c83188109dcd8c361795a467b8e49d7b3c50d3d245f994be376f27087ade49b5cf4eec71d61e80d3cf09df39e5deafb17b16edc01791a634bcc979cca94c2458e2a5c104007deb083e6b2fb9d8449950f81dca8433274bafc9d3febe28f841b7448a68e16bd2fde5786c7101772841b73f0cd5cc4eb754f9b77430ea570516debf731fa4b243bfc87fae031841b7140c6ec2535451ffdd96ec0c1131e6faefc647aaa76e4c811c4fd875ea0bd0540826c200701446871e30dc5927231c5d6d4ae71c00d37a0c45394b70dd1a2466dc84fe58d57e242893f0cb7c044886e91c30110082308102f1c035fb8c186cfcb4fc6961bfb94dfc08d3598e25dafd26ba638da1d098c1b6ac8c6c3f24ae5412870230da83ff97193121d6365be10a2e3061aeee8e92eaaf805a59b335825ad74ae7c1ecf4166b8c3c7f18c31a674dbcaf0c914f1a43fa691274306feea3744dce5a7bf8c81cbe12f074d1944348b51881b623879d0ce9636b8c58d307c9dc355fe61e80e1dfda301ee1218e213c891830239b8d0216403436484e10618ac3057b23e7d3b4f4522b9f105756f7fb3e3c90bee254f3a594c499e8abbc066a9ec503a85f29473830b67f859f2e03933e53709438304d11b5bf8c7f287fec898b79a1b5a387507fd298ae98f2767c113a1a7ce3c85053d7d949cb194a2a6be7105ce84d0c17b93450b422b786541c6b69056015bef199944dbd77c5478dd7ee4bf42ae0f6488036e4c01eb51f99ab45b933ec81021ce3f1aa0851b52303dc934755e55b116ac80c7abfbe0b16307082c9063c71030302002861b51c874a96d5bf3d2a32f144ab252126a2e67db929d70e3096a0efbdf31279db3e51b4ed0f227dd3d9ff7dfea1b4d38ac78eb29b92ce1df206e30c13b9572e84be21b4bd883696c7255d7cea3129e151926e38c0c7fa71b49c0337b734ab2dde206120ccbcdbdf47561cebd7184ce4f592ccd56316b95811b46e03388cc6429e469c56e14e1ce9ced2963ace776211249086e10c1dd7c26d39ccc99c2786308a7fe9fed65ec1ce36078033271430869ff24d34458a64b6f10f6cc26466db29cf6b4021d720308e90af25c647990ef413b6efce09cb7498ace9db693f4860f90c93264f0acf7e0dad29c425ab218cc9f4c1a71830797dc5de89c561f7dded881a17379524746279dd5011ea7dd63dc6d4b329f2347ebf8c38d1c58fb9dfc622ce4aa7303072659429bbe1cf3319c376ec087598a7a49e7fbbd618373879141cefa94c7ab1687f991494bc58b415e264274826cd0e2f03b73aaccc367934a99c569c654b84c222d47d3c3862c4cab66ebffe3717e73808d587439de33e6d6fd37a11778d980c55f3ee329d79e84c65f619ff7fdda287d32c81557f99a9edba432674d2b8c8f4985f9f7bc793b91487808e9c18a8205ef3d719f17de5f85fa6d6f21e4c88c3157453a25953f68337931fd4422e1e10110a201d0a12386146ca4c22cf297d9521257e9d6e1011ba8d8ba42799a488ff12a1d0cb0718a4ae500ef8f9a8e1972fbd2b2610ab4a5fa6cead56df58611840b20364a51ba24bdf2cdb87cdcbab0418a3748abb29dff1f088f15708f158cc258428feeef2a61418f830d516c2a3c3d4d93585f58602314ede84a3f363f5e1530c030820d50ac2dc24bab59cea8958944f289bd42a6577f525f952e8f205dd8f08441534a2a54674aab8b60a313efd899098b15f3efccd11490820d4e94fddfbe3dd68944b2021f60ac4472021b9b502e5eb6d06143138aaddedf89a8a0bd9289f3aeaa29616b5dba9c482498c02cf5658c7929994ba4cc4a876c75d39d62362c7196cba7534fa2526c54e24cbaf488f2db9cb7a4c496f38758efb2247aa15f089944e92e5bacbe6496ac93846d7227ee92a5145c8cc4f125ea31a527efec4222b149a6a4a64e79920b136c3ce2ac94ce7450495c46b7e10844c634da87de4623161937452f4d62bbc1760ff23c86781762b0c18882b0f0295aaebb936711d5693219846ebebd3c9148c208324422d99163033a14716ecbdaa51d9e482436125176fd5016530aface4284a2b1f4de57d46ed46c1c62b952cf94f73c5454ffc2834824c78621d2a35a3e6f7ad2985bc710f7807b102e1c60a3109c0c712adedde4a7ecb041084b3c6cac78de955ce4e30b1e0f84c7eed8e1437f04d1c0ab5f20070872582047fb0f1768402209e22b08a25ebc77c01b48067ebca0c7c718858d419863aa54fc0b19d18f205059d4b3be56e87dd20f203c12602310d567cc4d26c3a8b6c7062032fbcf269696e2ebc1431036fe8032d1495f082ba95f4b2427b0e107445dcc13f76a29c56a1236fa704c19ee2dd75a4ab2c287747f93a9a4f7634db587931a3d59fb20468f69430f65516b4f669617f42060b00731808d3c744935a6a6da79e710036ce041dff8178ba396a67214d8b843c24f4dc918a467d26c626cd8e1dc9fa2e9594f3c1da2cd831036ea8092d1a4c5f02533729c48241ab041072ecfe5b895f294c93cf9838d39202e6c9a107edf977336e4803e952a87669a7c8abdc0461c0aa52bb73b539f6c06075b2c887fef948d3760b19a4da48d8c7ad80d8f4aa3c36b836d976fc33ba9da6d6cb07bbf2d88cda160630da5d0e1fa74642efa490df5778e49e74dcdb5540c6ca4c14a234e47cb5f75f0d840c35df2beb4e9607ab43dc3d136c6fb73aff2069961cf289be5a2db28c3e9826eb5a0a9f2a96ec2700be43041bc84e116c8519a60830c9ae950e1b4df36c650921b64b08a1db25426867c3dece7e4f94c6d36914880f8f08044e2021b61f83b5676534109b9a34d249202402007017404c20618928bff4c3557b9724cc80f0a48244286fcd02118b0f185a267ecfcb4cfefb22d60c30b8f52dff3b1dfe2de3ce1b1ba0fd0818d2ea47673d2f4167dbcee8944c202f7a13d8604d10d48245f78c124b0c1853bdc96bd5cd01fdb62630ba8144e460f135b6a2a607861430bddc5599ae8ac1bcacbc231555b358af05e4ba70d2c5ca7593e2fcb5236151b57583b5d7aeaa4a3fb661eddc30a8edbd7c8cefe972855a1d8f6a1ba46c6286ee2810d2a18167ea731be870cf2f801a4878d291462f162cde718ea2a1dd89002371bbbe3b1c3885aa290bef914bda8fe7193a0f0c7dbcd75101a33db78c261f7927e6cf6bc5f9cf0b5a5d2f81f46c9cc9bb057f2b06134e791758ec006131435b22366534b585458c7b9f02937db1389e481f050027e25d49c8c31cce23a91486c2421a9f146df9ef88d9c6c2001b5a057c53da54c6207e060e3086795975c7dabf9786d180171ffb3f8ea93177f1b45b094ec3d2db161a29530d820021b4e9b8a99dbd663011b43f8d287b7f978ec6a6b0f3684f08e07d5adb6135bfb4422b1118447b7eb4ff32aa5de8170f4945d7dbd37f3b6f1837b634c277cc3465ea56cf8e0f0cfd92925cd6423e33164878d1e9882cca442a71cdbd33f9148785cc0060f50a673345b529a92a5271209086cec40fffd142f7597c36b5bd8d001fa3eb667cb36faabf6c2460e0acde1947ae51c77833c54053670601017725d3378b6eabab07103f3c55f9131f34be6ce1c6cd8601b6d3a4f69d0ba96520b65bef3cdc48813ffd3a24fbd75d9abdc3e45d4988549b33e98ee773d51cb02cdf1c7638cd53b0f0f8964c78e20421e5123166aee4e2583c74f67262c90fa7942254d53f997579c83708b76d184caf103a4c1708519bbc2ccba3e914824355ad145d950679e7e358c2612c9163558c1d58aca21f252e4aeab584d7550593b66e4ac8a3a861035fe6a76964ac5b7c9f2bca6ac79d4878aea7244a74d7273a7d829de6062293e590a2e7a53a42d7a3b962ae5248315a8518aced4968d06ed509ae6a206291a5342ab7774146617b5366e2affa7df420435445165b8d6b0990501c22314a7dd3a996f1f7e264f24921d61a8018a3aef8bcc1c76a3a8c1a8f109b7c62ec6d3a03c673ee1e189734e221ac2663396be13bc75fa73cfb631a5d24422e1114690219c488893efa1772f56524d784ca0c626be14b5be283a55a67548241249036a68a21c9d3a77335ace8a99d84aa694526aba303563023315a7c2327c8963cb28395fa56abe46a186258c356fc2c38f78782a81e894a308a1afc2081d25d6522943ecd4733d651265ce2763b4bb94f54a92488c384b1746530aea14093cc8139775e7744c3624527a696359ec0ea77f444a573eb4b234914878d470442bfa474d54f4db20a8d108f382c9dd6f0c99d39f8b1a8cf8739229673642ec6f2612c922caa9163e7366b611d6442209410d451443bd6711eaecfc2b5ef04844657954aa5129bff752a00622ecdf7c31658f8f2919a87188d2698f6629dca26f882e73ba6b8d85fece14c2d25c622e2150ed9e1993f7c6b73f085dbc55b367b0b40ba2cfcca38410bd44c2458d40e0bd7b4adb7d8040890efac7c334f92985d4f88339a329bb9c1372fb23a4d4f0439ad3dc65ce2cd56e2641bef0220535fa6066bd712d352a7b3c24122f5a20881a7c30eb88bad9e02154fd3dfc7f29f9c9a46d6e6e3d9cc4aae654a54c5be5442211a23c6ae421911a734ecd417c27b5f2c00316664e339687f8482712c91d6cf5a0b45209a86187f2be36bee70cd7741dac9c2b65bbccfeb8ec4422a1c3d1477d744f32c720ee8917732895d9e9b835e4b0e79b8dd1324ca5bf2612491c5e1935e2993ba2c241db3215bb4696d9e93d1c50e30de5b2d4ee31e531bc9a30a0861bbe79574be949e6ad801a6d48eefa5f0a7a39e38a266cc862d21a9b82ac6e2550630dfc8f68d3e6673a29d9442299400d35a452b79bf4519b4f262712c9026aa481d1a544f45e36dd619a482412091ab4cb55d2ffc63e7d0346076a9c2121f533c8e577373750c30cc7e518c4d79d7ebdd70235cad08a6ed54dadf192bce0173ca00619acf2b9a8adede9e699482459630ca7526abc3b3eee2a67229108e171811a62585367b6eff83795471389044843a046186a0ff295bff383ec7822e46a802169969fa2e9941a1eacf10533884a6b1a936a78c1e4b963e474de1c6e6e8d2edca55c2dc99a03e7a9cf0ecaaa94260140088777d7b99223d7e9038020d8a2716e77767d7a010010d21a3ae36b50f1a23e00fca0b41a5d2b45f5491301c007fda6785f54efbe4a01a00727b11984cecd3e214e00f0c028ff19457e1c003b70367e48516f5a3da7004007d9d588f1f053a67e03400e30dfcf9e5463b8785a00e020216adb9762caee3903e00625bbe43d1a636d8f050036f82ab35807259b64666b51d4bc4f233e976a74b438fec8749e4c26a1943d8b7308abf68acaa293cf33fea1c5020f4a08d55ee945a9c0e2e8a21de23d744cd7f58af57d739595f00a1d5720b3ed49ba58a8536d2b1ef5711f5308b1e2f03a6b4966ed57a5ab4073cb59daaef065be2aae7c694f93c74a6f31159f5daa66ca4b22f4cb030e549855b3fabac7d42e790aff34f4b37c66eeb79822215c537d6799b9582945ba76ed6412428c680f293aaf4c41563e95ee62f4d59cf1a5eed70d7088c24b3a1a4e79d21cdd42e1a87a34f5dd82e27b95edd11c7141359f38fb0871f2af2334f3030c1e1fc0e1897bc3ac5c6b8d031c9db0f655c5e72ae3774806383861bd55d0367e73b14941706ca2ce493e9eaef8acbd85700087261a6dda33567838cfa74c24d5e394baa4a4580c61c27c15d53327d9bbd7705ce2f91837c74c7ce5862c919ff66a15a19e47fc95382e29f5961b745d644ad41b54a75d4ce7a617c731896cd7da378f86cafa4ba254d1d4cefd866b6622e16ab04d6f49ee8592c7d8010e48b4b9357cca7d8f707c3c7ad676a000872370cfb9e2d6bb7fd894469cf3f7b4937e9f37cf184668395cb5621a4b59049a748c56669732f35da58843fd55c7f7a8d99e7024a29159a6fbe31b8388476eaf8bee381b94aa944370e949e306a5b3641e872118b5fb31fe31e78f7221ac0fe5a2742391b0901e5e08c14188ba368c29a53f76fa3e884b732a2183878228647f0a472090e1b57374931f27e6227000e22497a5a6b3ba848f40c0f10776b3b77a76d0397a1a631038fcd07a4a539d29c7839c0481a30f8690c15407b114dca414c0010e3edc99d352d76aeda8788c2ee0d843e16e84763a391dbcd2c3df7b232b6d281584120b70e4e1b0a2abc252ab8a1ce1c1df1a798f957761f338ee801c9b7b7153fd2b0d871d4aca7412efd2ee31b60e40600b1d38ea60a58ae9f4a5f06ad1e9606b69cd5073f3682b8e39382e22c22ad535bbca020e3994438656d5ac656625088e38f81ae35bc7cb56681f80030ea98cf4244e4f38dee09b87cba46309031c6ec07383f2d24d255310ea00471b32ffcb38d257b35b0a071b584f699b93ce2966d1aca14c22f36f052d3255921ada20e4c6f9186d37bb40c091864f93523233a734631625e040c349aae50c6fb3d9cc83041c67c0336d8e7996355d5d627801871934659ff28d96b34bbd0c8655f691353235e020832754bac650e53ed9eeec0c0f2516708821b5d1ccff2c969caec3709e52d6f1d3636473c0906dcc5e7e85bf90ce7d67af29b5d6a1177078c18aa25974b2d7aa8e71014717d6ae645fb321655365030e2e9862494fa6ad8465b8706ca196efa063a7560e38b470f0943cdaa51a1b91e2c842d66d72747b909e298585e7d4b4daed5d18e9b982ada234b52a9dce555bc18ff9f4d7ccf2018e2a243fcf3f7395f69b4d85734eb79eda4d5b8f050738a6609e7edcaadceb9c940738a4d0fe08cb4afdd32d970c7044e11d7deb3d5642055d82c21aa33afd6c4cdb980b8e272ceba9794c8456131e1c4ee8a4e708df583a3cfd389ac0752ee5417433c50dc2c104fcaa6d2dcaa99a3105192244008c6309958c9b6a2133b5efd3001c4a282c8e1821633a20470374b00047121ed3a274fd77d44c1f1292325a2e75e47184ace4d229cd6b3d2b71186119fdd7a52be8ad2ee128829935b8e78d102696c741044484b264b1992e9c7608a68c8b6df716ba3f1742299c38cbaf943265078e205c41e3c6754ce300424a97cc49df54d5c71c8e1f305a6acfb7837c51693070f8201546988593e34105d94422f1a13e44080970f4a00d9b0b9673fa205fc5c103449e7dda12d2b4ef1bf2435941d0011c3b3876c6e0e12b7ad484f13d74e067d9a0d725e441be90008e1c6c1edf9737cda64ab11e3870e075ded8f05015ab4e3738a8acd1ac3f85c306a50c13ee4976ae6768466a71ec15397fb246cc43b428a6990baaefdc633b0c189905df9dacf2f35e7a8b6f31220b3d4467d93855e527732181915814c47c8a5a5284c5961753a794e2cc7ff6158c7e986e8a225798d485f3b4bf1964c709184278fc1869c51d4e36e9fcb13c9d3f6145f24d76a97c12e3493b81c0c82a8c1b0bba22b60c8ca822cfea5fa664ea9c7d273b3a8806b61849c5f515a2fd9eaac3694346506174ef12299ebdf4ef491030464eb15f45f3f46eb22e89bde8a142464ca15eb95890b92d60a414ece6cb568d921f9e4d24921d41bc3508173972e8f0c208290c15748b7e65b1bc9f8944122488f3f842bd90486c6414fd9de8ac290633fdd88e178c88829141c9b92565da923e91481c30120a63fd5652ed57e67282a2d7ff1067329527ddfb61e4138eb8cf962c671b99b6c90e8924c888272a99e292558c1fcfe3914ed4debe163448d15973f2430312c90f205f8c70c22043cc7acd3dcb2ec1c8261e0be23b44c3f62f4413088b39eb6f86f6aa2018c9447749e79bf0cd041356acaef5ff104760e41258ec24c48b6ef94aff700ff488254eee9595c1de8944d2398604f1090f510ce468401f462a61e7a04b4b5e87a86c0ac9d132ec304209f773258ddbdaa1e774408e064c22f1ada4f156f40a189144e3b1637ac5dab5e84e2492914874b1a7b52a5dca9b3fe13164c70e0de838a6c450c208245266ead729da3cb890482430f2883473723b114d96325d801c4d01024461c411a6d1ba249406471a9158bcf670cd0b30842c1842249234c208ccf57b75c465b0fb7c641169653c91c1c62d962564471451fe9e8add59233dbb238940c6b739d99b53ebeb101841846b67f52694aead914e28307208e42ce64a662987eb0c9106b5f669d959f47d84c410c2482152962a8b6dce65ae56054608517cb9ec7b7bafa29b89440281914134aa7f317ce7ce887d44106a4af98dd11dcfa5c04820bc9449995bd29a43894600612e7baf542aad66fe47fea0ed85c6668a2362d9442219c1881fca8beda2ae3ffdccee037a33e65dbe3e4b96151f0cca42ef8d1eff98973d9cf1f2ed060bb9714c3db829c798d2dbb92c4b528ce4e1b078d5dbd4ba16251eee374bc2e363ce5cfb0e2561fdff6bf142e8ec6030b7d0b2d219c4ca7530343b5c7af58ce2321d2c0d9e2e2d2be8d0e2e4012373f867776e3df7b389d2881c585321eadf979138d4392f5e0a699b221a3868a5b552df9e9c5166d51b5cf92473663a8352b98f1137e839c4d4d9e55d5b6ca40df6a665c91355da2c580a1bee8ba91d634e18236b7873df7857decfbe5730a286f3c50b4fa1c4cc5db8d290c78e6fe80ad3ae1f0dc8870b2eb2e3c57bd21846ceb0fb9e6acb397fc5e698c19339fc5db63315635019acaa24f6534acb2573322c624573f66f528db5c6d0c77c9bf4c85ce8696270a4a70afe39588739151e35120653ccd72c5d3cc6c777142f8c808153a52f737f27bfd9c060e40bce98b2f0624ac6acd50ba54c26f34e737d69fe08235d28f3f87ca853f162295c38e8d367df7ed577d2912d60d749a70cbafb2eea03c8f30823c8102d7cf1fe41792e25c3833a3a9003c8901f1498a184912c9429a5ddb85ff236e61dc841011d437e8031f100f7f031820594ce4c4d59ae767621ce43d0c815bedc8e9e72b84c4faf157097b11099ff2a7dee050f1f3e9425922160600047aaf099c9d21e44a6cc1a9f1480002354b8fd62b01436275b1933b0e38b91299434a5aa17fdda9ec72a5240e5bda76a9507535e14d6adbc3ccb6d512c1d818231a3540e3aa39ad9cf63e409a88f75a153ed497dab941127e4a12dae494f279a3310469a50a7991d296a33b633019527561fb31c598276fba336a845cf628e28c1b8f1245646fac9118e240129a32d167f9a63902f308204846d6ad12963f9091108468ee0c59ad8928d16679911239c6448b90d9f6360a408beba6e95e66b9fcb6e314204b42c06a95b298fd2e0c8103cafe0fd97eae2cc234230c5cc792d63efee974682b0c6160f1af3a58b69331122e4022340d0d26c5cefd9dc0a1f0d8cfca05babb852593be99e273b763c400706723c2007173a74c460c407bcc512fa82cca58573a4078d4e9fe2b2a7d35b7430c2833b7466cc7096a2ee144422d931b203b48e182163c98e8610074674c079a655ce49058b8f0b61240798ec529bf2b955d9e1058ba07fb8070a6081111cac9a84ac9b7c3748acc2ac5f675e65cb880dacca9b31987f32ff522dbaed3cd3f7dfc9727e74e0062d16bd61af926d7dd8cf64073b088604f116ac8075c2801bb3a83d841499844c4d8511840b05dc90c5e3bf62399fc1f37c317870231689d09933661326f7770e6ec002216352cb6f6336c66fbc42d16e3193bcac2fe2de70859d3769c94e7f5a74a315cdc6de185b5438b5d6e4062b50377abeb336a6fd7c136eac222d53496cc56b1bf10d5554f2b42d0619aebbf9106ea4222d324acf858fc8893750d1c9d1a93a543637ddf0e81f7ae314a5b7e0be9a6b53983c87d95817117d5d29d8d49a3f25b356f595145e7656544f723da74c821ba3f874d6383262314b8a44f1a7b0164bf77bbef885c2a05fe7f584e764958122bf8a23f386e70d727ea2b1ca71518454b994efc10d4fb0597f9ea2668ff194dd7aa31375d7e6a798f33dfbf9c303373871b0cd3e7bf51c5fab4d20b656ed35b386a659135bd0539562ce9f37ae1b99c0f3535edff7a951421389e4062652224a9c68707900e9c98d4bb85e9f15fee9bb49fce38625f0eb204dab3a66dd180f207da31295ca20d7e28b65985c20e00625fc4e2f76a1cc63d0e88d49a05489d33d5ef1d5441f02040446b821093f48d5d2d531bc9e68801b91d04c88cc3988d8a41f24cced29ae63768f50e4fbfcaca8af3aa123d81cd747c798694462f274471b112a5746543a6bf6938692b5d787de5884f1ccb30895945595ae0537146186ee9bc88968c57823119eb8e839019169a82453d350200c8642813018000480016cb70e024311083038402210486412b98438dc03140000473e2864442c2a281a1891c802a140200c8643e2501808a2200c022986e36018f55a3a22b82f43ae5dbca71268b9cc2a15d6a34abc8c19ac83b95506b158cd0d2976af9a5562ac8a642de6656cbdf5352db24d31261d3b12273c345cf9c1ccd6314ff7b47bc58a3130dd66de9e9f39e6135c31317d4fdf3158f7a5cba86d7b91e12ac1cb5c598c74ff4f4936d07167d28fa17b0c3780ea0d01d8e7f77f51bbccd9d5b7bd982fdec4fab67d7e47316f6f448c8787f60128d530f8691b520bbf11c168ed691ca7c74c03f1e17ed8ff1590c54c191b68141141c287f1f193b847ec4fc6cc664d1b4b145dafdcf7bc9cb40a3d9080cd24c1caaa47153d6e7302c8adb1b75b026a2ba42069038e352e2ac4c1c6cabb09d05b1784452d07e50f31dad791507b0571a6897bc362dc359c428a7ee17fed45f533efdfa14c6103e0b9229c8447b97008f148dc81ddaef52ee920732ec76c287d7cdd877245f03fda5442fdb045b3b4977fcb9abb1cf3b44f0c7c2333b7b62893f270b2d558de54029c7426d3bc7b89a6c347da55dca66822dfac2a1b868081542e5bfd6a22deaee2f6e52cf9ae99192592e440074fa97fbe1b1571b7c3be3ae4ce084d8fe0a94429b2b6c1240d9198c8b668b18f5f0fb491daedf5c0fbe6c3c38b326d740f318045ec911a8ae4a9dbb2849c01301dbac371f38edc8131fb215b3266d16fc33d1ab5e2c8b47438738ff3986aeec5f8f2157f1bfabb953ea05831df8c85eb895a42a5c42a44d1f6676b93f8e619461593ea85be5a256605eea3067207fdc74e66c98f5f71a423ce6bd7597cb3989519a2ffab9794b4a7d55731de31e080fb31b85d8f81101a4a297ab56ccabbb43fa4a50dedffff509ebc72be295e97d5f770de337ad22823fa6dfc1ab94bc8194f5e9c59dc7da4f1e6d0cb608146fe0e5fc04e011bba8c90224279e91523d4ae2ad9b1221c238bf7b048dc23981b52f43862fcccd04a34747cd06d3452aa40be622b53f3dc1d7cf4350cb8978ded2892d9dc0ebbf8a1feecc9d7ad32261dd0283704003c9a9434853a25f72fb298fc220c2d39c54826545012412ce4c80c3ab0aebe8517bb797ea5252b29a032a8f6fc0bd88d6886dc310a714310a157a36e969e5adeff60a171c91b6ce2ef9c19fed218bf5f19acaaa9d863512b4112e0bfe1922662deeb6d3afa92e6d1543244fce7e7d04b683cf18f1525a5ab773409ac74af7684073bfa8dfa3587af11b84d6b484533785d49595b8d61f13b152b5b9743660081d61d314a91a8e9a55a75e262d07918312a78da14ac96b9d14d0a0d5efc84bc5ef4ebd42b5b29ebf82fa7c6358d3fdcb21edec31cb291da30bb6ff127710dc00987bc28d7e99aae2e585a28709c5bd470eacd5add88015436da1ef14965f756c02b23bab2811d22bb154b8e5a42d7417f1c235bd169333288060e0ee73fe5b370f0cc6874514028da39a82d338f456ce2d68aa9d96f8a2aac310d95b41a6a63f2db42e16720145c02f4e49566ac15c785b5263c529f82d2207c39d0994f0961f317ca084163e82c2e31fc4fdd06570e3fd5aa7a01dac5b6933885a7a0c127b495904239630b614b02ba3ba1c6f14cb743c0731de6d91d6ee322805801cfc78e1c1446d7713a9ea95821b93c815df9386ee691f7c141ec9209609ee1f2aab20d5e855b260924f54e00f854038d40a43ec0c8134cfd12133a31c991d9dca535e6761d97ec0969ca034718eecaabca40c9c4d4e8ed042c87d6aa9345d7c4ab4bed01be928c2ff628284b4dac36db1c841654d7ce892376ac43373bb7b7c2ae162ba2f5ed5013732b08efb32f394d85d395e3ef94b9272f20b64399c5770b29fd38f68165dd538c26de40ebd3b62c0b2acc8b34514053a64a96769eabcb600aa3be87dcc74507010187502206a2516d62fc6cf060c4f5f2e5f31270daeb20bd13ce536cf989fd3f2a2da60852c701688a22503f4465af6072970f2e2c5578bfcefcfefa6e57f72748c59b1d0ee5569614f6df95b09cd42584d94a14b55975d44d668a68f7bd36a44e46733aff137ae0a807f07049ac44ee016636ab0b396d2b0d211468725b6933c62f5b62aa5f4d4738345b4426005fcc5041d1dab64b5295c58c2261189ecf8d2ddacf192351c5558ad98208b47880fd17600df70d40969e61d273b71ed119089f9fe9d44a57648b63658f9011839686fb1a485aca8c244a0d0c0b4a15c8955e6cf2bb1b78c7058fe3a01a4b830abdfeaa651d8886e9ca772867ea0400fe781fed0635c7df830dc95154a46f396e3ab92b06a2f1425a4c83dda2ef23303dce6766a27176cebadcdbfade798eeb9209989941936b447d57cb1036199d04151b93e3dbf98feed4623d5235983b2509b4b5202a9629fc26b0e3864535f58f17b9a4cb5e4876bedad4aaef3454e89cf0caf4e51a88d3b9553619c2c86544444d00b29a0143a3b3b6d10350f3688461d856b141d69514bbbc2da3654e3f0681eb899c2f82c3d6f440078889e991669019d6501425714f8dd10ba2be09cea3a917b986fee27f0830e6a5a7bf0e2d1a6128e1354a47ec9bce3003851ad4397b0fe6af908e8410bd7a3c466392a75809008e9d94c2a14feb6224c16732748c4b3bf20ef766567e2b2cdc2647f8c6d48f6d386222e24fd52e11de77736e36d8d81aea87ca5fb034d92db199709845353574fd48adc095f36cdce4171212ea8f0ad3f8c6d1083f2de90e1724ed6ba4dcf4d607c6b3f16f2e5bec8c11ee57adf2a6a03c09226fa9da2c62627ee85deac4391d8fd757ea385d3d5f1f6ff1171ee51c2dbfc059c7b7e3488b291cb8919cdcb6050c47f29b8c2827e83dd0f0a1ad8680daeba0220a4650bb1ac6071c0632a002e29e0662379e74d27da3c7fd9ddbb8302a30a0d59dd5267a990231ff4ae81bea8c6f0c35f6dbdafa7eaab36d9afdeb193f5e6a26f6dbb9fc076c684bdb5c5abece7c164e60a2e982b6e500fc188832585f00282b1c0eded5e8eccadd01eecdbfa415f81f867d8d8000e6ce7587cef5e9cb07f5a0514d18e22d0dfdf79830eb4d590608d3ae60be56d0ecc09fe72cc3973aa4c532b91242b4b08f82842173feff9333da9abbd8aa06a26ae8cbcd9c8099235333052d498e91ab65f798827e80485d4a5d57bfe27faf162e569cde3f12d129e6387707764f76a5070382721301389f501a102688699307840e8328beb89f00097c961d586c06471778e3950c4091bc19d654b4ded3fbeecd1152be1a83ef3491284773dac50d7c420d81932986c1301a7f73b07f91ddb7c11ee49073b5bbbc13d870ec6df847eef4eff806f6f8b56cc69807d1f06fcffac1a5d2b3fd1fa76856218b9a7672bf5707104d2e69ea7d79fcdb69b251091e30554cf378d40e2e456e0ecf0761c2514392ad1e2e466d6b2d0b765f30ae11085b42f53bdf23e7ba81c968659a2c76372bfe0912b7a74b0106af1c3f97c79250d2a66077847a77ac904e966177928db194d3ea09f7da48943a881b3369887e86490132be1b0d88bc0aa1ae8a5bd4915d0a6766b23761c21a4235b3f210e4b48a8200cd1654ca769fa693b1c1c9494c956000b4b193a4d2967b8f0b4cb1380cabe1192e76d2ad9ab5a31950c64cac6b825179bd754647a349f98a2172f7afc29750a2fbb3912be9addfa2da9146bc6da9dbbcdf625fcd24521a2402648ee7fa457b19347195c31fb80c7b380f5528b1431d4900277edca969ea285f388ac83ae00fce4fe365b809546a8bdfe56456dccf71eaad0d8e346605cd6c104ac36c860f50e12c3d5a1c8464815899ab657800ac66f049ee534707bec0ad8abc43587c8b41b7543365846f038f5f0aa20c2c216305505b61bcafe0107e757ece96b0e3d215ca80ab07d30c56670d01b33fc4f9b607bc1c36788ba3a795bef4a0e7f44b52d381a4b14e320c74f15cd742911d475e92219211ae4d8bdf48749f2acd7f90874ade6c1ce17b0b85ff219ad5aa3556f13191f74d6a3951ecbefc2dc2b0955d60e194d869a53e429791a057df7dc29df2a715829d670394d884c6ba889d89574674daab99089405703ab341031331a25a3a743cae0b2bab86287a955e300614c662cb118433e7851314e094b0e32bbe0ba51fe5f8b81ac249cbb03c189c234047d09034e6eda6c1b156928c19d037ce9aa06592a9629452ce7ed26a84d5057fb48129517869f61aef17624ef6140e7e5b5c44127d34055d24227f0267270d99a64ee321ae9a1166974b269ee051971a4a1de8ff3875ba8437ebc4f17fcd411d419fd60ab7407a9d65e8d1bfefc122f5ed71377a1a3f0c64576466694b4a2ec4104f082db448fe7401886804858035553a56db88b723d705704005ada7677db66996ed2017bb071c7b155036f5b7dd02b77aeb1bbd2772104cc3ea0e654a4aa574345e18ed649614a9b6f9164f60f7f6123afe3ce6db5dde8ca623f6891e015b47511fa755249799cf5111c3a9ab48309800572690bd0f8fab7facbb4c3b7666fea9fbc36b3e60196ed3e6772bf163a9a3586b588efe51d964868db3c3a9dc5ff985bfa730035ff9d1bf80e3788fe1aff81c3424ebc537e4a742f5a7ea764382dff8530f8a0d7809bd93b4647c6be9d05f5544efc50197b407aa98ffc5f0cfee6119fd8181fecc962dea0adf6e58ad090a31120cbb23b397d2ee03404e0ff5b6190fd3b3ee66e4ab9c8667ea1883f327eed3fae81f04def75442fb95d6617aa293c273dbceade4b3d8e9eb0fda3c94a61423828de86c51cb41b769680826a0c7cd248bd7084ed33e52976a9c232585d742e7f449829de0387438e896275ba6309710ebc37e993d110f9f8ae24ec54f30103f3c7cd1edf2f5ba5028e1d50c5afe8596f4eefc1af0cceeefdbd9cf97e6560437a500fdba6794ed21fa333d74f5edc8ecf3becb305eecbed5dad5c4ccd358b2942c345e904be26ac6763a2ad1396984c88698f571620ab9aa6a27bc4e7630ce196d450a1739c006bbb106dfe3c01e902742f44cc229b6b070354a7c727de94125ad2eb6ac67271ade35d2e13d984453fcea56336f58c7c67b1d63b2865d05e604e2418ef48896b0c0ae10541f08622f292f37b4e9a38587e471fbd532003da29d32169a4098a0957cd15421035cd513a45108853f6253504899db865ad2486e537b2264f2e18079acf6c2a851da91decb5942ead463f363cdd2592916f67c829dd8aba2f32b2efcc5fe1487fb95e7506079f7fb50d96c7596167468e3916d05c5032a7863936cdc08690cdbf2c5dd386380e8cbce63fa4d46b9953d4c8d3a23561ef1b10d82810c8a73091e4a9f5f13405fed85067b16d2a5c736c86efc66a3fefce9a31785432a433e5e7de0d4ae5f5c644b120e491ce337e717462a13ad3d573c4fd2f7069540c4327ee841f4441735154fdd3236c8848169e7c02acc59f494da3a10a472192f209c7258abbfb41f3b49be311f0e9e596a74cec0f2bc1538ce73ff7d79da816581dd4d7bb23bbd43daad333416b20089f39ca812cb35a1bdf2520f00a20b073cc1830e472b7fcb7d34451f6abb608e58902b981e69c0a12f5c2ac4cda77e56991097e24c237f27bc7fe4b24ddaf3dc499878eac221e4ac014679879cb660e365a7d0ea295eae3f8393a55447fb3cb29a4d77c7b1ed6cb7b2c5ca1e83e058211bead3388afc0e250391d8e991f0a8ceda3048eb7d8235ffbd3076d07bf5b29718897c9e696c643d3bb9f705f7364cf5b25062ddb0d8460dd890d4d6cf53551c3f6775231e5d0d077b9babc91996ef6342a3f38c35d906aa65b468c52b30ce6efd7defe934ce0b7e55c147f75c7e00ec64e62e625ad8dd39ad9a871138a849a208269b1eb911fd7ab5ab2941a9508a576a391a1f5845bc5077ff59460ea5550e0824344c879009261a16f2ad63b2e918387b9ceb033818e38eb0fe1a89e708bd533f5d0267f8de57b216d9f11f90877c1ab1caf238a21b3a93ff3e4ae941c969077c2c74a9113e4766928bb9541b93c22c15906a2c6e2df0e8e19f3f9bb3bfd9313a081c6c1d72685ef8188b4871036c52fb881dcc73cf0712992a919e0343c7c14432be73c04cd829e01f36011c16e7a05772d516c745949e4096baa7e847db0906440757b07b9c9e1a118c4fb6cfe111aea6cff111934866e90487a0d53ea95489429fd995d05001239296dd5db381973317292ed575c5e83d148d38ff3cf4dd880948a182acff413fc9003944721d0eeba348b7575b869b7d71adb86dc1e71894e0a303bf7a9b2551d22973a8ec306173a14691b5646c69817883836218beff2bf883919c84f3ed1be6b27c33a08d102f0f22a827b540f3138d6ac3a5aba8fcf15f5741cd717e7153c68a6e18e2d6ea0861419a97272b250d1897f6bfbed5190155a0ad8252606a533c278a313f2f5b44500484bea18f942ddba59cb4049fb723ca9d36fe829fce0893cf0cd0376553284b5c19850c9e70a03eb6a1ced860371329299c5fbf5cbc830cde709545e6f3254689456628cbd21f6ede4d83b6500711fdb1c8c6b9e6c0b48425e7c458ced45b5ac6248a2c04619c7acb2f12dfb232ef9e278d819a8fb6cdfb2ac0e430bb3f933a3623b1a040c0c00719763107a6a3d98e4964eeab71957fb66cb93064e0a9faf2057f2e1b8a83408cb4dcfe6e8baaf8f3009783b71b9aa7de947db926daa21347e4c9079d0a4dd34c4d9c6448dddf7445e908d8874199a16787c06aa3c4a46910a5c100927d44e671f4220e0c55b6ce2f170c00cfac029c769c52a1f7df00312a8784f1cfa181d8420a237147737fa138c5882b42438f4811943728574777f8a30615832502aafaa821cf946ffc6cb9e4898ff0c635d9ad334ddffaeb7ab0efa60f6f3ab3f5ff5a33c570a0b40c048c32b8007affa7c6504016f7084245c1710b2c98e900141e4fab3cd24687239a1d37e17cb8f1a5eb74e8f48fe4459643ac3c689e7d417872c024bfe0131f33a08608bf9c1bc501fac9b87b429fbd311b1644ad82dfc51ff0fa58c17fbaba745ddb9d484ed4b83586e6e12603eef5d992d5f8fa568d19073b57e0439f4f17baaabd0fc5d32f01c53e9d91567ffb7b356f8db253ab3d17a771f04a1db8019c47eab09bfb772c71719f8c55e55eb19a96dee67cde2e03ae68d44c8cda89c74b955f50959bfb154696a6ecc7e980ab2e71ee2c1f81eb961badbe8f1ad111717ade6204b1a05f3da310358b07de28861bc20485fc0448907b93865a78cf60d71872322606794bb3f510d71e8615067c7ab10f1081ebaa532536084c1f28bb59f21f6540ca111d60186ff3cfa074027ae0455666a6c8a7db1d2e13dacb66fc34e44fcd9b88b6cfedd5c0f40eee292c6dc5750e339e6951107aaf7d088a4db46efda554cdda905945904277e847b21c61ad58d23016b2cffae37c71d73e0fc225ea83892a0b85b26e3e03622731c6f6ac1edd104ed9d21fb1e165cb79c99844621777e5b4abd674c5d49a718ef497811104974ae50f6edfe8f69633712187f665b73cfc923974238345737958de68267b402cac8b84bde75c37da368e0ed16f2f3385cbc7ef9bb0c16d33a54dc084daf4ab0629621dbcf0af1fbf7559fbc38fd7be85d9c6edb840ebaf11e6092d140226be5a0e469e7904f34c5f906bbd8b7907eb4fae2c5d691a602d6be74e86e51cceb9153e13bfa31ef4b7a1ee498dc0a8829c6ca3df32194b5a3126492755520f3ecce0eab42987157d4f7d425f57627c6fe85e8bed6f012eb7bba74a5b3dc8d668f0f38d3b56f418062e7143b3e38168e859003c352bc31294a2f1c4fc3ac0985ae9c3f9d245c4edaa500c0cb4d021a720e66a07479632cf8869b74753e9a7bf6fa9515f409a1d1835a02b3efb3c9b32210a636544b24489974558d27b1e81d333fa774c0f2720fb5f94cd6012a4c15fb15e16fb6bdebc07fb490d65a5fbf936a5102a895c65a5b26a0175bd2d656dbc953fcca0138c81515f251b9fa81332311309d6f85d81d21e1727531b52f4fde3ab97cc173f27f38db5663f980e3298300aea043a8b280ad4b67d954b082da0157f44db4648c94f9ae8e54446f6aeed12caca2837192bc1de789ce164692be38bce4eb79ddf8dba56333419ee4c0a716e053f2f00a18015513c85329f1a0b02b5ab488d9f336ab095819e03fed8cad9e8c13fd1f0bcff4b68cfb774008843f6afbd91315c151e92022ae1e3c9363878cfad9c96d54d35ac7b9382117d159546b14071f8454ff106b69462cade938a725802ccf566eae1c75020e9480295288c0450aac00a0d129e6b106b5c8a6d3456d78c594fd225711bbdc68615f59d845b44d412b95482976fa2298b070d5520d2fdcd09571d28d316f12df5a325507ec032989d9e4af2484bad7112abd13c79a3eb40197000d357f9341d3e4c3db4a73fe93f47fddc617e44ea3a769aa57046fbe1771a9a7ee11ccb7c2562163a8a1d5ce2ef672e76bf1c86b1e88f064f65591e7a4aea92ee52b2f6be6e633cc0c114a7bf9b15a44838f1a1da333a47eba09cdaf4baae0db433cfa0b939d8483477df9ebebddf43896d5b1336632c89e90b3c9842f59c0247c5b21b0a9d713e0427e381f5ccf0a966bdbb272fca346f32a817e55682cdd486bdc43ae88a62ea7a603b5f14164000fd67c584f9a8a1410507441db55b7f94512d0d432d0b12ce0d2dfc44a7f5d9151e2b2f7223dd0bd8300e694a054579e057de499016483324348a8a9078f26acc666373a279d787036ebdd99eb89d3070049869af47501bdd5dad4f6cc75b47d966318850eaeb40e0fc275db2d8471fc9e4f32892d1140173faac64143cd7150f53d052c0c33119a860d45afdcde02712fa3c817d225cdf6aa6fd2ce39178c90359dd32d008a1568043ab9cea0decb071b9568776e9d8fffdb638ba6ba40faca60ceb36920c9aa31b82974a8959929e712dec327e1460df9c16943ea074c4a13993c011f3e50b4d2720cc2bda1f6715054e36e75710628bae06356855fc6ced18771b9f051c4af12dbb4f386518942a91abccbd5fc8cef9c59c1bd5b361d013e33d00de3e7d4c148639d98ee5085836d24f99c880437aa7ab200e3ac4ce4347db58a2d660cc6b2105d4addd16a7a65823d625e398c4049aa3a2ba0bfec075046982d28e910987f844a1386ea2f90f904565cb6f1bbab21cdb599aee40557cebe1a1a1cba28e93e0f1c060f771c2d263447c4428ec7831badaa519bfe1facc3a8b6eb0a0d1151ef839bb3c43197c197dc3667fd443e62b376fd625b771188bd42532f41b90b885a8cc786e1bdcb8ec328d39c6e56e00ba59b998e838ecbf2557e0061101d29a035778e149b79d680b010789981c52fef99e35080d0700fbd4ebc803e6838f29eb4e78754d78a7220d9dfa0cdb676013093a37072ed8305f56dc0509da371a5a9f977292204f4c10b28bbc90abb6d5def5a054d8c3189b3467e1d36f8cd0850dc4920701a65d72c5eb528b459351957127cf0c9a4985a477c0ac25fa1251e61bc22fa1cddc5b2116908112ac2701d697526fa0c7dd863aec6da0359d82765a11cbe240a5bc30da726c6c9df916b03d419fffdabf47a23ea0b07a7d40fbce3ae92b601fefd147ab9732a464c3c7a1a324604a1360c436fc43079787a89496a7996745a9c82696c4312546e98301fd0be3b535b5d0bc977a9f339de5673013d7ead5e0169ba118327e9174bf4a339226c3330837e277548d4876166afd38b22ac25e445bd4e038ec1863a7fce351d99668ffc96119461e12dedd747f59956be7d90551599cb849486875ddf9a2f69b9b4d3806209f2778ddd369d383166309b579dfb308a67d412506896fcd8cb6ad9e0e8887572da10c1b03272271bef86440aa7f162e19dd08afb03f80b2aa93c95717de75a444c4d2928e7969f07cda9780e713038e4c84003b66f5280a4e74198d34cf741906eac3d30e1ceb360ffbdeb2f60e9d3fb17c045b12e0541dfe18522ac08392e62acb6d80855df53591795a798490648993396f2e6c6452455618b0492f867d5abe79a6ea06d14e474c5ae45287bbdd0c0bfa8af29f5c129e06bf3c9ea9749689f13585fdcbfee8344ea4bf0f907aee93a8d795b4cbfd9f0472771360da3b9f459c6e36650b115d7a9b7bb7c8bcb321639e92b59d7d1543a865f3cf9d89ff7a2d6234b180ad67006f81102c81dc223190623504dab2867a867cc4317053a2059765ddf8acdd07d56fb426e864ab2c251157279925840886053991525d2d879e9412464505604bd0b06d49323d2c61559b6a0ec566288678e5e372d7272e367161f34ce3a2b38d7415c6d026e3afd485d45f91498d1e8998039efbf299c7a48fcd40a8147b9781009b3a323a8d9d48c9251dee5a0705ccaab123b6fe95b1b746aae00bdb6f08c665ce52da089fc51696eb95a9967cc4551268daa4c25515fc0be8baa0585ff8ad0bb890c51ba75cf4bbff2fdedb85d2bae8152e4cd74562b8a0bb2ddc5506fabe185a17bcc285e9ba480c1774f785bbba40df1743eb8257b8305d1711435eec8383092ca017eccac27ac808ad0b5a71e17a5f20a68bb9db161ec177fa76f02fd4f58bee7561342e626d1641d558c56af71749275d04393d91f30d171bcb85082f7bcfebcf3d9ea8306673ed9e495b89db752614d2573bb764dad88a2542344204239268cf437608e9bc9a2014435069fe15879d114001b37196492111303e6d5d4417604644cafad3eaeb3e75e4fba6601b21f8e8b652df4e38fb15ae39b0548c86993cf82f254e15805cf8c41b9975798f8dc8fdb9eea3136496d048033c847ed9d5bf212fb8a7d6c3c328d1de6c1625675332a28c3c2fb0a55136cf5d2b76da4b6bf63ff350c14d3e44f707326175495637b745c01a5c57ac51aebb52997da78f414d8874d5ea1e9bbd0a3e4f1a36df0e3872fc85654ee6e0cfdf002c1b75d883c409c9e85aeb44e549b5249f2287fb82539e3243025b9f70c51bf7a9baf93c3909a8a4e02987019a220d54a79fd2a457a46ae595720baee444d7e2ed5ac8345f3a808f913724f83c424d9b49c5a95d6874bcb7af00349f0dbf4e873b3eef330b47f84fc686c117846401216bd9b661f5ec8de7d5fe3f9341a3413d2416f9845a8840ce597cc533710fc998556c50d86245807b25eaa6d7ee46572a2141c6b8ae521aff302dc48bbdff0098791b4fe033e615ae22f663cec678ac16496b61023152cc3c0a46e619cf153a2b4b0c1b0d1f44111c8529c5dac42c360dc5d0c0e4c77625138ba858ae7fbb79d5aa9cbb33f3f630056a809d9ad6005ad3657549b4c4247997ef3d72b5c45704ef1713d09d7c85ed3b9ee5c3044868f9b4618791ba4c6b6ca0a5f65ece7a95dfebbd257641e5ec3971f320e4acb4ee12dfc01a1aa4cb77e5b050a7d6200cd87425398874041706c14e7b630e3aee60db939f2b355004afa8c53ae1551896df666efbe0b9cbe6c3dda3061a474ab133a8a2a1ac83526f7cbd4a3770c345106d2889b895e4525f2c004b2c68c656e29f5fbfb833acfe543591be6a33ef7ff2fdb9ead4a6bd4c9d2a7cb131d9016f9f46f979f2085e965883252f6966a5e6a4fa41aa8f23002e63906c14fd5286a186aaa6a642a2b819dd71973e4ec0de17795e85f73b45ff091c44f6adeeda66e0fbbe01329ddf45587db0ddb7061c7d670ec13f133061d4cd8808d3b0902a7bc891da82faa4a511ededc156ffac15811257b77f86f9e29462e59b6fae231d6b5b511772b9e6ba65c11e969584c3783bcc7ddeff2cc7e6f06553ce6530da90048b16b6e615ed08ba3ee85637355d1138021496bbd946581dc092350a79d7087461744f8eab463c8c9ba7a034d13fd5a1a42405ae5404ac8101cf3c8a80c0bb3468e53e7db3f072ea836240033b03dd7886914de378cc4d6d1669dcb35f8a215b79ffd2b1dcc3c29a430291680517b5a1f73b3040530cfee4b650095037c8e5f1d4f10de3257df082968282afee37a4f006a28d0fa9624ca8253d7e083a9d7876c22c429c0e652e88d9c86a5d94a1f54ea9f49ba08bf95004dd80e6f1afe086d5231794e022fdd18e3f3c1155765965e6fd99de72f68d7469caa3620d3605e06c0512cf60d1ed8b2b30ba22bee647d93174adbbb84e967dcc414b0c94d08a99a8ffc04a4c44f3651cf4fece613cbb326a1ffd04db6c000615a1f800b3ac81d058096246ad4a211881bd11a15ca8c9e0c781be74cd4020f4081e1305b105f16346d6ca95cfeca8e8a63ba80705470a492139ca90c3005b8c8a6e2c0c5218a61682e443c1564ae0c7b17eefbcb1b4a82c52ede363cbcd2cc287550970833bcd597a510b3007236a0f3582923531f29cad75ce01045854b7aeba54adb8ca2745777d5056fea59b53023f36a771514bc2518e3a8f7cc6b3d23359644db8d11af8aec639f731808e0fca73d9e0829d1696f2a5c9fbb19701d76bfb9c7682e95b0d469123586288b1842c83823b2478509223930203c70b7c5b704d551e66fdea6ddd096e091b630874b3387c83f736b2518484be0f4df82d32c2a4c71abd0361070043c15c6120d84ef54e8f89470abc5c1110bb27d781c4f16b42a090307e601d00ad6a3012b87c5cdec65c3974eb64752f996f1e9c789d5d7c64c4c0ea2610605602245b21518a565b8d0d800979a35eb9342818d0bcf17c2bc0ea9b792d47c2ef40f48a63ce7b1b3a8a31c9c47a46b701121e5244d297d4746849e02fb7ba57c099a7ffc41eaea70d1e5f4bc40f70b70e97cf5a5dcfe1a3d67055e8d354dae42068dff0c8f459077e8b6e31aebeed69b38e3ebafd75596151d9165c7cabc48cd8b0c93f2c379409086d612be43290cf6d2c823cce0e5dff533d106e98deb8dc666b8bbd40461eb6e4abee130a2ed7a3b207e1907199fb56ae11fd2ce3ae58ab2b6bda6a47b59e475ec71804c1bc46f2c4c0b0d0c02dea7baa5d05b3a611657a5fbff7269ecd9bf54fd6cf794f0401e70280db60783e43feaded27f04f55de150410db8faf805cbc1ad787b4f6dd2cb0821f9c3f557c57eac3ebcffecf2fbfb5fc04fba9e6bbe21f7e7fb67f7ef5ade127e84f55df95fee8851f48460306c2f607df4f35df15fff0fbb3fdf3ab6f0d3f417faafa762b6dae66ea19e37b2e54a02b9c5bed80d240dc751641c09d9783136485a500a22864c8206867f178e211318730da5ba1bcaf775e460c9db596582d6bb6f046f200a74cac9712f29cdba6504e4d52349e2071f5da422b14f1d481b5d10f01bd42046bc5c058fe9a6840771d906424bbb363931b5d8f98bcaf4144f7c6e2378f933719bf616e0d48784e6ac59f7aa790146337878499f48014533a29da2639260e3dcb13f9a2deaf2798d7c5d44351f068f66fe85c51a914b4f33a5d3a4bed81b5f174ffeda4ac01f22472cc7853c82299bac792f7948cd5525d8190617d30c4db126b495036d3fc4fa5446873994c0bbebf446eb6222b777b7e2bf1d8edb2416738983d213af99a4d9b96118d8c418892338c938dedd5b5a0da5af2abcd4708e11d74e73687f6d140c1507cee90ede986852f674b500c4d05f9ff9e3c6aa323d7fa4a6d727e2c69c5b235ad5ad8d21637cf5292d32c88d056ea71d240ae416bff6a1c97b82b2d3d090d92401f5d290e2141958a2648175827906473aa404428acedfed02e2b4ec392954819d4bf45ae13cb41d3dfbf88dcc55c83df699b95a2e74f343c63f3422632bb8c552d62cd5e4c0db302cb7fb7cd593fde94141030e4dc31093e775fec2aaa2bce82d5ae9e9ba0a9d75a6c314b0c8f8a605affeafce1b3024e9bcd0314d3cfa5e7f115b39fb4f677d57ac171ef68b59e4be3f2cb67cc602e4c9c4d872590eaec7717dbcaecccac3b88bcba497a38a1bb18933f682ef5b9d37be821f04e1096a628e9e4ce0b023096ec61ebcb79786acbba2afee0002ac1a180148aa0e9193efe2304cf5e58710cd1b47d51e5b6973d9ed1a8266764b3e443c846d75c9dd61197c7afc36573e2fe69db4b0003a77069bb9dd4ba41ffd56349370646881cf75a5d9e8fe783ce940f9503011d7d278850a148e88360558164157ad8b40c0de09e397300f86749b49fc340d552de6a1ade937867ef9441b9b7cc5fd737dae48c6a720d7111818f865166c679f21bb4a31fad8f0049e8f568165257e34f89505f63b20b38c1967a10f1d35667b78a35b6de731ed74cab942789c5c416c079dc1bdf966908e54aad0de606b1974066bf0e56a3734478281e7d5d8f30daa0e801e55ef984c03cb69b27cd2af0f397255f3063199d63279a85bf9f37726c1e7120bc555e8105b410a42c8dbd600b901377d04613f797faff7ea8e12d348f70c19211cdf51d43d5cb0147e9940abec0c9408ca893ac68014adcaec54de740919775412f22c136c3454061b1d20b725e5515cc0707fa2210cb6069eff7f8e3133ff10b7143f642d10118e7b7840ffbd5c356828c7dec7943e82c89af4f828bfbc3ee487a36fa859c938af6899438daf8e8a4c7578fcb41797fa026ebbca4b5bffa9fcd0f9ca965df1cb4bacf60d1ec4024ce8293cc34b0a675cf4ec44a1b08de6d16155143064041c33dee2310156b45776cf0af818092cc67de9ddafcab8f997ade22d2e54c8b5de20f989be9ecdbc22ab7207dd98cc604da26ac77a4406c4a53816cb6384fbe414333dc6c16c84ce33cf46b4fc9002b75550bbfc638c1716012bd571801e5daa5f99decceaea4c44ccbbd2f997c10e0ae1fd46aca669a255b0001cf750434ae733085c11d9e5e7401f2ec308b47d8820facefceeac2a9e6cd4257b81f8b1af906e914bafc62a8c96c084cce44ee62a06c9235f85fa0b48b3e419094d7d62ffe01de7e2f7d0bb0a0940185c7045d9b12be452c53174076668c1a02a468ee454d911798bba0db597343880557511d9dbe9d8698fb5cd70ef91275e9e8f9cdbd1b1fc19c10fb8cd4f26b062aa4d61b6d30662566ddfde1775bc1ede7781da3a3d271c015d1629f23b1449013b9b11a0cc1f5ff453ca569738429a47fac910394c6bd1ad8362f1728df2689a457140127b7036beaa58f4530cd9bd330e72575c2f112c17a071e375f72bc81036c185b19a6ffd6eca105ac447959caeaf1e5d14859d1ce1d2f7ffe820b287f25a45346054aa7a96e136885062ca5a39865317d34858c1bfe873715552280a0f1f0d9bde0d467df5fdc2ec65338a9f31d1b0c395a64ee27a5e3314449a0c210353d9a7273ad6e1aa16607a15a3ee632b85fa407d62d01d7fdef45ee285ec02b0952c41ba4126e3c21d63eb16096307d95473f214b8f0b405761228f2b75992b59a9a53ebf7502533006eae2b72c0a2e3e645de135f8a77724672c5798a52139fdcc28479b5fb486deb82d0897578eec212b50adb2deb7f6a202f147359c70f5af9f5bc141a54f69bda01436c240dd6d666007c4f47d38ff912b6af3bfa087e494abdc461601a440b5fb154c2b3eccd38eb8b1d2fcc408be04d855e685f40e1afd53e137deb8c4bcbcfaa71541f7452fc596b595c6c576b43ccf09121737d3ea54a7f138113d1ba317677a8f1df6a91b38d81d82ffa3f9fddf42f980298c930c0894666f9e73ef89b6c503d46f39df5944baa4224aa498269d1b31dce11302b5dd7119c2b9817bd86e4a018f036c8d6cf4a75ddb4bfad3afae021c71344b99e1c74441c4377950c7061e601d4efdc60cdfae67461a578fdb29221df53215e9d5427c6efd3b588a8564f114cbb26f7bfdd434cbf1de30dce21686da15df2910244d96be42cf9002b4b0f28e4d295a9543d47487cf27111c6014eeafca61956d1c6167170851db69b7af7a6b581f27ec50d65f5ca8a2f2e969ebf906591b3165f5150b4ae32adb3d1a255d40801ac30008f8efb0559d516f56800f1c4fa080da66ba9ec35a0b57eaf39c1297efb117ab58bb5e24a5a913e5ab7a457e9c48106ebd46d8b1e1ae3c4cfcf9aa35befb50437b327938bf8025e156d20d82f92d7cc5dacf12a8bc4c3d8aa54376821a5e60228e44df0724b253a642addb17d14e9b37f7574a80e12a767558503c868ae3d6315d1b516f8f7c4a4a13002eb4dcd9ec646addaf6f4bc5d6dbf1ed206420cc17aa3ed63c1ffa57788883029224120ce80822386690147d4999ffaa46561b028d296b69cd9b8191b723d543c7e00eeba2763f42a503607bd33f6983e4591e3f7c6d2ac4c3859ab84c8319aa88821c1cec2631da0d1a5d2df4914021dc92d94656ca4fd68e8f11729231cd334589500f3239b862d66edb119cfd98a78a85deced761767122946346ccb6d14f370e4ccea701c56c9e16265d0c5249b341192ac0e118a811b0f34c8fc59c208bd1ee713de7f79f59254772ba5a1bca2efb7e68d1d8d24b78bb6a54d093acbc58e2ad5090cc48da8374cfb9db8458ff5709b180a21870a1c5b7d7bea24b841823ae9a88f5749fb68c1f5fb3cf4612394721988d5533361ea9029ec640681d242fb17051d4a35380a8de7c8dd84d76b04eb106874320c73d4dc8aeb4014e84018b84f273d778b06e9ce3fe88f0508f0bf483ec8ff1b1982f618913d1191b4df06e937a2108b8b3fbd6787f35d69d96a756c3353812b33045b51de6199c86524bc63dd6854022f0ff244f598d6841cd93caddc650a7c1662be7d0600f40aa1f01f62439e93821ba4ba699136b4583fead85397009f43f2da1e4e457d0272c3ee57fbe11392e858dadef7dfd325adffd8a603c8dd274c78b575668415f2dfcc79886497202dfa694f549ae599f9120eb4da9435d9d74632c8879b8bfe9e41184de3dd27f16e4579d4e19125a075d33d4fbc0f00275b32c94f2746466820b145b42f02107dd95e6b1708a64782beccb7e566915de8fd8754b2913b6fd2e2c0b31dcfe258094a82bf6d6d65ef1447827973eb2d807b40c6ff698d4085cc3797bb7906ff481da3bcbd7571fe7809a5d22cdd54212785b25e98defedeba85241fdd18d75b384e776d3ec30eadbfd2b29685023589264cc1a3e9a84b8d683288d606813b672f37db4053345ac02a7d303bb732ba53e9bf9bded254435ea6927f46dda268b6c2158bdfdece5f70e0a46491efb3b1230162d2a3d67542c65a27f80a60edd07b4d342123c3afd983e96ea872c500264fa7f2f4cbd0bef2c3aaf0806808f05e3316e550e6cc9ba51c288a225a38d66aaed65593025827e616f15f3cf3924923e2d296eb1419948983275ec85c0888d92c0876f6076adaee6add28659e93064c88057f201bd6f7151901cb8087892a1af683be0472489350cbfab18c3cca376efda37714e6f40ae4bdb43d01d76b194b52ad31cd91babfaa374ef36dfae10066b509c6215a4b51813825f86f418bb67ea3b424680663f0f76925b3a105c1da5883a64d04f8c5f77c907a30aeb834edd3ca20d6eb46b6b1062be85eccff8e515f0f61d19a061f34c422fd653186ce29257afff671688ba7fc749dfe6e6918826454c6806e947e8321ecbed087cb2055eb6ecf296ddb8c1c63f45d420081edbf67fabbecdfb90c54ae28b508bb5e35bd0c2e3232a2bd38fcaa880b5a9e15e63395e957d1fff0fa6cbf1e0cc4458ad933c71ae0e120528e9450adbb0f393499bf989cae2f9c92d0b574e50f312d0915643cf4606a1969626ba63c15f09e897eaf2992a46501021f8deb7be45f33ea684010aeee3734b5a87ffb30ac130769fd894d4a62753d92e3b9651cd5b265be4815f778a9a25d370c70410d4f260a95d4cfadb587c19e62d7358cd891bc25c41469b25ea8a63239470133aba6c4818e650dda428e186f715a7ad6c7ddd4261c1bb0b9a3f6d81779cf0e52f5d5c3f80a529922cd37e030e3a74db4111459e5d387a4f69e90acd92912e9b0ce805686ddce97cbb7a5a4f7095a9c7133894072b72a54d7702ce0d44b90a3120b4a4d001c0300cc3300cac326c234ddbd6e8d188952949c93ee038ebc46de324a52d534a696d63c6e036420821e4a378700a950a490a6aacd163871b3e7ec440c4177f163dc7bcd9cdd9f65e1c9a4b3dee4495cb252f761b9d3f7bd3b36c6215ef61061b22bb488f8b39ac6f958ca2e9424d515af4945424170b56253f9d8b2da6a57191a6d55151bfd17365b7e8afd2734c1adae2d86296c44c89f89c656b51092dcd0b5a2e25bf545ad852fc5b6cb6a8c8cd2c6a2f8fb34128d5520bcb023d2166bdd372468c0597f93193ccd43108171668c5cba9d66517c647afa8fa54bee8ba2c96f73f5260868e2022ae48c91fa127c534cd3c445a81786b9ac6bfba2c1c0311569c6cc7c5f9d494f2f92a503a5dc7474d5574d2c50b6d326886a75271abc9765f17e5e5fe201f440622a840feb45d764ddb7496532432c7ed53bda645990d22a6f8f46c8b59b23e1f83444a9107e57144c8e64d23aba0a0a4a80104f42a2760438414751032bc68cbdfb11b0639d4d001e47bc0600d91512c5678ceffed85ba5165c75199818e1f3058d961021494951de70722a250ff7fa458c57fd2a5ca8b84227d4288bfc82ccbc146502ce7ee0b97e1ece4693e819ecc353a3dc6634e40443c91f61c3acb66b113c81bd35c6a7b838adfc74a4a1b417cfc58438413f5ef9eb65b5f64138fd07c61a2839a30e78f25343e66cc26cec4d2e6caf8cba24bef59306196cac9a464b71c8b5c42dbf6b1f76cdbb298882514793a8a8bd9bb6fb6248854e2b872eeb2c8b059d347094f4f33bfe81ee2ef491ca6b6f647a9da116a4920466831f4e8244b581689c4c591497bfa20d1bab7ca8858be2cc91f710eb23f0b32f38e684de3fb3f9e8a57488748234cfeea5934be5eda83106144b7ffbad14ea498ac5450504416a1cbae7f1b7be503240508fd3f4e8a28023519f466697551e35469a35f4524118e8f4adde0b2a454933adef8d13c7804494304116de8f822b71f6af7211232fac971cff1d49b8821167490ddeff4774fa7359a0d15d840a4100713bb55f5926d9ed6e1021142a8f3a3756c94381b7510ccf6ba3c2e469917d482c8348cd0d51736323e100944993989bb8ec7542f4500c1f967d6a47eb6ba5cc37f8d1fcfc345fee0bde4223d66df24a303113fb83fa7c58fb6aa9daf3e6cdafaf3e78afdbfcb07ed374fdcf685292514d9c3619ba458c849eb38d203e2b13e73e66c2db946240f6ecc17d37fcf7099c543b5a6e4e7f0280e44ee5096ecb5708b6fb13495ffc1c6693584d03340411142ff2881881d16ae46dfe81c6a456f1288d461d96350ef0fb50a8a081d7c7bed8c499bae0b8f4f43640ecb212fc707b1163e451b88c8217d293c898a77cd12a79f411c1223dd5a92f78bc0a197e3872dfff8f3e059d9610223f20683d078d3d5116e1f97418e33742c226ee8dc73d29bc15bcefd042cd286f45e6acea0b408312d0c44d8e0cf8f8c722f88a6bd5450506020b2864bd88b30999e881a8ef5b278f2ea4577da32104983db5fa583bcba66ea55527ef88881081a3c31a127e4b5e53aa58e17889cc174c9fae55f903164ce0c6da7d590dd9299f40b881b2265b852fb3f95163550508e6740840cc8cd82ce92aa94d7f7d2c8b12263e05a5e2c070b749800056ae450810b72b040c70c44c4b0e7962c3d29a5e605934a1969f0f0e13d7a063710090322cd5afaacbf679a45040ca98d513e75ab291b2d5f28fb83ce1b19553a965ee04ae3e6d7d3d362ce0d43a40b5cfab96c4263c7a033225c685c4cbdfe7a27d39a0a0a8ac81696ad35cbe3626879d2f3d8a10204046e14a1082c10d1c2a785d5bd0c1d19c4ae52c62e44b2b0698d50e66bbae3898532c9a917a408cdaeb0b7fbe6bf8b5640dcc86b0c26caaf3a225558644b7dee0d26f4c9bc00092254d075b4a8d579bfff4c9129a45df46bab9aaf4b9388143a0d6a839c91d32fbd48147e31f35ce924eed24b4241040ad9bc2ce78a58092bd10d9127a01935c3856d7931bb38213f213a6f3099e1924c08224d3057c8742a5eecef4f112654f655253ef62598c3c9f0e8b2945eba1551c2f19470c946464910928cbc4d684ebf15324cd1c1a596f63cc69268bf58ba285a37268a1063a06561c38b966aaeb7d4444831b0d8b3eca89e278410a38c9e4c962edd98f345879061ac7ba2c74e6c3885a1f967134f61df9b6321c1d046cd7438fda52f6601c6b2fc6b1459a641e86018427ec16ba6d816b6745b67437cc107d971346ef567325510d28b841ce5c25c0bc24fbc2021bc68839d9ad0b1b32f864310b28b54e4c70effca78cd87e8e26e49783cb32a17e8bef4b2072584f6e8577e8d105c2c0b4a0b5ef79d840755c82df494724af6ae494d882dd8175f90e1f9927932555050bc47a784d402258488c6f10ad5a71c0ea1453aa716e793946dd99059203fd67a93cce13de87610228b6554e8e082cecb2fe684c402d9e93f474368d9c92a360881456ff7b5310b7a8368f715b88a168d3f9764c79c2bee585ae2267a764c6d05172ee2f344c966b16485a9af57b6258dd14dafc21a17f7fe36c84e9fa90233f5fcd2b0e26b4aa978d4280dcfcdae97172a966ab3187a93f4963b778a4d88fb607795f531a6f05c7a69afdfb447af434a81281db7aabfc283ce4348d1950ce639f6fb7fd2d22364149ea68a51a61d51244e9be89fcc51e583a1586af164182d48516a6b0828d86add2c32b4185ad4423ed1ace6effa967576174f98a9df7b944b48273269e992121e2c4bcf219c787ddeff6f7e6426396413e5d9f96691962ec8708826165d5042f5fafcd6e44c209396dc4645cb1d26fedaf8422ef16edc543a29ad2fd5176289d3ed6bb3bad479ba135289478b673153efbb9c5a28a1668d59f1d2d9a952864c2297ee6e55466d9c4b25a1e81075b359ccdb7a47a24da5e9bb3ba8164da80a12b9db95aed7d8300f570921e4117dbc53eba351f773fd468823f8b4b9ecb3d46be592778d383f752a193c3553653346a0fb93ae6e49778dad558b387facb7fffdd47c50882296e645d9645e17dfa544b0417b7c8c527af3e8218848f39bda52da7c2fe69043b46df539fdb370e3a510432ca92f0f42b39c904228e25eaa0db7a7254d4308b12c568c7510d25fac6e107670696414adf8e4e110412423eb3db3684d1fa19040d8f29bfa837e395b1a01d165b795c54b5a2eae3f1cefc35fbffcf9d244217e58c6e3addbe6217d38db523b34ef495167081ff4ca7b93221a5dec33640f8817b378a63accbac5217a582eb324947bbee0f685e4a156f3f07a2bf9a3da103cac66ee79eba93bb0693dbfb32c3e9b8442ecb0c7855d5668b9538842eac05d6c1cfdf51deec584d021aff1dba0592af5d70999831d5e4a76dc370b4d881c1aa99dd2ce747c939f9038e867ba76445653cfc70b2170b87d5bca709a3b29a987bc218f71326cf00d7111d9f0e1e3e85041881b92de415cbd180f69c3e27d8c7e2d47172d5b851036a47e42951ced396d660db92064b5c7fca76a5d881a5e91df51aa0949832ba7fbe782e6a063060db99c125a4cefc6b543ce70122de9f0e12263d2beb720471642cc806fcecd255eee4b8642cab0ac28ab3af93999b61032d8da314b2ebb2c6b4a17320643af3ce32875cf1f1322063ccfbd864bf74197191286c5d1825cc8ec16d46442c09012b5bfdcf4151fcb902ff8321bc7fb5c36971fe2855e2c5535cf0ffbab8674c1b41a4447f72aad4915c205c63bebcb39fee3694cc816165cfc2066dcc3da16a2854aa919e9a2dd07f543b25009f1593ef5e7ff2885606149c65fb2cff792563de40a188b97e2ceb5755a73270dea49030929b8974b99b672c1adda204146e18712f23454c6a89b82908822e963a2bd7e0d0567e2a2c9d5913bbf9180e217c46f33f3af06924fa86366e7af1e8927166478166f45d5892d83c6203c74fa40c2893b8597965b0e61a3637220d984dd5275caeace2a696a02d5a47a572f274f697320c9c49b94cb27f2b3974a8f0d2498d8f3efb4a938a144967a20b944a6a136a75fa81933492cc1ba7f70f5eb1d757925ce99c49ab21056522c4a543fa75c6ced49185a383fefec4a22fd2ced9e507e24b4fffc2ffaaf680a31245aed7171b1f4ba77f488d7ff05996531cb2a4a890412472022ee64ccd0f2189d2490340219fdf3bc582f8cf8c577cde9c38c46db16f1a64c9be52c9da1ca3c028922fef97c3aefce4ba6c221902442f58d919ad54ae9871161d24efbf2dac9a0bfbf417208eeaad38bf9b2e5fb213144a5a3b9bc985f98b640480ad1c8ed8db3791d0fe20f12429cdf844e23f3bc4232884395b230717f2fd7aef478370471c998963e772e57459240fcaa61b45f5e989612207c0b9163327d7e062d7ff8e3bc3a79d77ea836c306d5ba91deb26990f4c1ebe89abe21736a417f03123ee0b5bafedba646cab707bbff6f456b467cf648f4e0f769d90f427ef49a07ac63bad80f110fbdf499cc7bcfbbb3e606c91d0ea39fe578a2cd5a944f6207e56647a6e72456749ca40e978dc7c96df9a9125f053a7aa549e8a09fa9fecdc16574bae7808e39981af5cce1352708891c0c5acea5dc5f1735db58208903b225fdb259d113af6981040ee812a6c45629195dab37f872c256b32c68e12d5504891bf69cd7ee9e611bceb9937f98119da61d123698f6c5cc6721b3c53cda80640d9f4ba2fd5c35b3bd2c6a28a36750d5a2f139b634dc41458b8dcad090a670795dd74be4ee2a2467f8aab41c6bab41e65c9941dd54425c7dd298e327290372dfe4c65c1e19725978f1838bf11890b97fb54c4f6258ccfca325179d34845018cc58fab27f3481e1aa9e7bb1aadee4f40546e637e962b855cda917ea4f7d376bb2e7daa50bafb6b9b5e89d5b8c9370e1d272bf795521cf3d5bb0e3cf8dee150fe792245af8df423d5d12553a6716caa4f47907122c74277378b67a5134cd2b9c4e0853afb1bd7309ad50d8e9526f2d68ecb8552856d45ef0ddf4a4e429905061315c9c89ce49b64749059229bcbedbf362b8dbfe121f48a4a07696dacfb9eeb2e8cd000f245148cba94c96d2fc23fe238102df75a14de7b092917d82e409c9d5129b315764a93810244e60a376ee0f1faf378a9a60f2b574e9d7e475529130614936af67a9c8783ad2f1244be8dd3e8d9968101ac4244ab832b4942dd867f34e5ad9c163c719395ea0e30823c9d0ca3c891ae9f1e3db116418935b6ecaf4f975b763a4d46712f2828c9196ed24ca42e9b59816e3fba4b67d55629c44b7be2c6f996cd70c435d7d0ddf37635a1f61a47d1bd3bfb8275235c1e893ee6c31cd874a7301c6495f525a525a5e2a0d7fbce7f8f13a467eb177d0a26e9b599a10fb82cda62f73a5f72275ab2e06d36db39d608417c7fc55eae57cf9ae0160c2c82ece78ba65f1b42e505a4dc7abf89eaf970b83bc72594ea1eb438e8430828b4367d0a9feb65c72d10d466e51697cced0fe53ebf20823b628b3a4e5cd9f54932ead0623b540bdbee50ab15119a185ee3f2ffd9796a6a6466651e6dbfdb4329e5ccaaf30220b843ab1f9ecf386168dc7482ccc632ebea0b3a0d9fb4f23871a721881852a7342798796ccaa16448d91571862ee1ed6af2afa5b63c4158eb518740c2ed88a744b7938ebba1aa10432851156a4450fd12643ba8a36c5a6c7df10f9e235a20a7407fdd1a385bdee720923a9284e745d5479e9930c1566cb32275c7e111bd7c82956b1f537f9f2882916f67e3d77ec9599b48c5e6914e8f0917a8c94a22aa545d574ca73cc22529c357d756597dae4bfca0c726414aaa80819d5252bf198198c88c2cef4ccfe49093da5ab31128a36e67f7aef760723a0c8c47eb44794f8ed5d2505480331e306239f40bfcfbcdede5ff6d4bb8f178c78c2b6d1c1e476cc45e9473ab1f4b2b7a4b3539ebe244ef039ebf9e8cc8772c1178c6ce2a8e32fa88ebff9eb1fd1c4ba758e6462b330a139897017df5261c108268cb164de5fbfd221373f728942e7cd79293b780e0d1b3e521e351b6dfc0f158c58025d4aaf5885cccd9f83c64825f8cf2fbfa80b1d7493c60b52462871d0e749bae4e175af348963ba6ed277e339676e4412899dceb9c3c7a4f18232786030070774f8580980184622c1a906313aa3e23a2e95168c402237fbd4a4436db67ef8487984a9a50c7ac42a3574ac7c1a2a409a053ce20874e98c9fccb3faa5a7a2037d0d50506ca411c9ff978466da53a23b2a28286d00e9b12305238c40da95eedaaad9f51895334616818edb20264c8cb7d829658c284213b50f39abf6d1d444301af679f7f182374610914c6aff59d2d5381a83829143a06ab773b89c61c68821743193f88fe341bf34a2a09491c60b7c30520853866b74e142e98f5b0505a50c3442884ddcc5fa844e1fed45050565072383c8c6d3c5a4b4fffd8e407ae8604410c760c2cbedfe73b64525e5053f460261b0cf29669d4167f14ac10820787173c6f9244b0b1eff433a4bfba2efdcc4e2f543bea6e2eaee691f73a830d2876ed346ebccda82ea181ffce07ffab288ebbefc0e46f6601242b6984a88bcbf558395203edee8339030a2072b458957db1d5f93ff8e1f6ae8580982860950f03b7ea87174a8319287bf63f8d82feaf3ec88075e90ebfe31cc5ae43c7207f4e4e65497eafcb9237630d49c4b1f6b3bbba4d7a1f90da125b559da7f3c17e43017acb4e00b237448bcad7ab78cefb873b8b494b9343fff96b11cd8d3a383923109b9218fc339aacfa9e696e5fd1c0eb67eeab2b49737e09ee1f1cb4a7a69f7c7abacec48c1881beedbb5149dc551fef2236d68e5a49787cf7c49c7a894f16bfc78345050cec8c1021d68840da8e8133fa7e48389780d8b69f69e557435a4f3627ee15c56d5d8aaa0a0f078363e25078f6723053a54d04a9b600668a0b10224e5070f1e36184983dbb759901f3668c03ceb5568142b5b5bc7caa7f14600ce3072064bf5ff6bdcb419ae9356264d2bc39268f9e8e6286a3b880ccb31f6c75cbd5f873e8643c3fefec6519f94500cffbe87d2d9fcacf1c3607f9c66cde89a5edc7af83043c78f0e18cd3c8c80a16b29b47f645232f582912f94229447d3cbd36ff18817eadecc72164faa939847bab0073d7573f9f49d908e70e1f3aca63d8b7b1ad9c25ba5acbab4f6456919d18267ffc145fb8de262970533aeee68f54aef55567c9800480a46b08086cd26dfcfa57a5153414119b942ab29a34ec960a17368c40a6b964da98c2821846f84912ad4a2edf448efe062d7235430a5c97573c945fb7047a660162d8bc1c5322d6975302205f4be986537db6b1ea10a0aca48141e7d49baa0fd1d81022e8569dfbca0a534469ed0b654a1ff378f386131d48b313b6da91869c2c2ccc7163cb9062d6829271861c2f721b21eb55404c2c8124e7a54632973115a8e990d4694f0fc6f985352e39aaa37104906babe9b639ce50211645c1dedccbce518ad2104e9941e881ce3525ad533c62c9dbb9c0a901d22c6c04dbeaae3e6242f765420528c3c28b5d92c59c4303e77e79edc076d890c6399af4da5a26553fa1511061fb56fc3baf8c6530ac62db630de75aac3d51301c6a1fbcdb216f9c51adf72cf7ace72a6ee3e7ae8f81d3f02a8dd2e1d57932691785e90f262e59ba8700e2690384be29a25b391399dc3e411d865b67997c5963fed268e6074c4ef6c53dc654141296365082900d2140062d208fdc593eb47f951fb27134664db694d936a0a35da22fa646eb2a255c4b174c698839223641226e2186a94b518ef8367b1209820e23ff958ab9e4f3bf52138931fb245994b0f2d35c8e12d78c3c410b5d8ab9dca2c9bb5bc114c0a71d2571ab37ca11f7627c4414d7b46d5d895b50d02a1a4b9766c68b97f3111c4a53bc9890de2e2f8e60d93409c3d9cdc9c4dc90410fb6729694ab9a459f21f105ad08df9d7255cd4f801f92ee93cb972ff7d1fd48dffa26841fd0b2ecf87f3e36c5a6d526f6b9aec6159635acdd86c3a77fe04133df852fdaf4be25a64dc4df2a07b2e79775ff5168487c52ca7099dd6a6e75277b0c50c4ff2faa50d2676507cbda5df99affa18933aa0d363123d4a5df55b67f030a183294e74e84f5aebef1b98cc01ddefcf94f57c3ac6e46006132dcc5f0dc4240e5ccb7f163cd8e71c3413381c62a2d24ece6fb05d439aaa8f5e8f8604133720967bb1de72586de936285f69b39ff4b3e939d2c8f1821c414cd8f02811eedf92cc9db51582c91a0cbbac0f9d19cdc43c081335a0ec3af53f6cd02dbefc40c34dd290be20326eef67a98b76f8a8810d4cd080d0e22dc82c066dca42933374dfd5a94b3c4b233c5130318319b438ba5545eb89ac0ce6e7d9b8419f7667d8840c9b1026ee46e6517dcb640ccb29d6c13ce527a1f3de82951ecfe309266240b9e6a793314f9c683109c3257d3badaf078654bb9a167c7fc6d5e50ba819d92c6659dc1f99f7822ec5ba7fcff98816d385ce5dceb6236adeb4a42a2eec317b29f5dc9ab3c88460b205bf47e9a7f5242d184f2853b69e46b57859d8e6a3766b0ee7e925b18078526f21b4872b17bec22ec6a9f10e23364cacf066cdfa1ec74c7e89ce4daa80fa1c35d5944bea6752a193a6254e5c72134d41dfd196bfd32385c54f5a4c97446d97cc9b4521314268916b1b1eff86c2ebe6828d361d76b1c913ce2f29f35ad1f6ecd709e810191e2fce07192a259834413dabfbfd2bcf22a60e4c98900b2344bd6fcc1278c9d2b6428850976313255c325fe754f2823eb5dd25430bd957fe6a9b1d6633646c5aa5a64d4c6387aaea1869b213696a53599769660c77de33d5bcd6ccec62b06739fb996551fb354809316ac942c552beff4b3c0c337952b557f62faa890825c260f432897bcb27b374114a82b19b76f9be3e2d1e9400c32c274f5532e74917cf8d925fd419e755326feac5d34b7c616ad768416cd6245bf5c2b996abb367919b466683125ed4529badc9e421b39a76718993b7f2ed3c1fde1a25baf0a551f5c25e4be6d7b220c70a72a820470a72a020c729c9055adece8c95d59a3bd33f528082d23fbe0417bf18bbbecb4ae79155c92df4fbf83daf724a892ddefad310bb8e9bc5ba16c72acd5f8b570725b4f82ede3c48512ad376b3c0da731c19ddd37c9465a199106b6b4aa97d6fa050128b5e5693f29e65ef371758f82f5d6ef04e5a7431756ef4a0e415acb9b9edc7397f3175c572d00e4da56a2bd4dcb13b2e97d80d9b15dd65698fd1cf45465e855a67b32144ad0a4b6629633e5e72d137a9f8ec3ceb6395cc1ade0e4a50817be9946fee9f6936a7b0366c5f746ad271465d620a3c097dcd1d5c6ed32da570c76333e76a6953eb3b4a48c18996cbb4e61a051f5f0cc2dc4a3bf32f8abca4bf245f2f93cb1b8a2f7458cb2d5a028af37d4ca193f8ffd1fb27ea9694b8ec997bc274e2524ba5b526c2a512259d60fee543c938a74fc68d28e104ba949ec6e94c0e46946c62b17cd4a8760c772317a144138d10dbf7992e9de69d09f4a70bfa7e3b88a87108259848ad53082de770f1129fa1e412bc657b9a76614b2c8db92c76105752365b29a9c4254779309ddbadc9a6449e5a521df6b3b82c589338ee64cb73a13d09af24f197d4d4928ff8d08c23e1b9dc7a68712f81443ab74bf19dd4c8b3f011b9244a752e3dd162524798f6c3bcc799c839bf11fe68d0e39d35c9ca8c11ccb8a85f0b2a59045284ec876f79e7b52386124568561d6b731663dc74229229c2748c69b55bd488c8fbf395b8542f2adf21d070c9ca5e8cf1362c31046294eecc2e961644db42e4359f3a5755da7e08718e9f7d9b794568c92583a87390e1736bd02fb78b200a75c9d3b3e779ff969240783ee3b5fbb2b7d980c03ac62072947cb2fdff60921bc48cec0e5a343423470e1d8328f1c36bd931bc9ddacd92be0fbe7fe8d7fb0e5a6c990fbb247c3dc65135cbec81cd3dfd9e2e06a5d563a3440fa8973c85c669cbf862f2d0a7fbb2111d1ef8b812fb62566917e33b1c3feb83ce1927ff3339b05062875754082daefe49bbd742491d5e0f33f54d19d692890e5edcc8163435869239ac3e3a09fdd6b6e9a5e4f0958adf8bda2563d0d1511207dc52673f68ed2c8907874689a6176bb30001f92879c3f20b42a8e7b73ea52e256eb08468be988c1f3eab94b4e11f1d4b089d6ae5cafe1236545a7efb38a7b4246aaea1d8cd902d9507f7dcd4807cb96f09cd5b597d491a907145096fd183aceb4ad0f0b709a9d93b6651d622a1e40cb666f9b436834c2fa972a440078f12332c423c9c92a376791965f0f8e143053f7cc400e58d952e29c3a194f818339daf9c2564d8e3087361ec0599c4583286454db50d2dcbe296ce5c2811c327f5b41c93657e758d0a0aca8fff31031494374a5012064473649e94973f2f951230d4b7a54a946e4abe90d0224b6bfeb8b2724a438917d0cd9f9409b9f1398d1ef9e86186922e1c3ebd4b654b7a6365871c4ab8d0b9b5b7641bc3865b57c086922db0225dde0ee256bf4f2b7428d182a332a9932f67f78da787922cd4253bfdbe3cad6749102558384507b3123db55172853e53a754ab0efd941538993b54f36b14d1c9209454e1db136133ae395e8a885042853bb66f1a1d2db76cd6148e9b36e385d9f42436452891822642bebe5842cb5bb0240aacdca731d51a28e02fc812fb234e4b9d0b52f2845eb4da0aab0b8fd50ca1c409e8db8ef9ee5c56d16c49137a59b765414cad84129530c120fc84670c7e72e42e5942a379fb2d676af1c57909254ad8db4de8658734cd51259024830d6277774d46fdd220e318b3df1511a25ace8f71ca6ed52f99638c5a1693a6174f267b0d1663512e2ae3f7ed525fc4b0be4369107dc1469624c3387aee98f7a5d364e59208e34a5dcffc77561bbc29900423bb38fb9cb4eb5b90a18104185df8c8f7a0fa84ae310d24bf5873146dd91daa76ff1be97f85c417da26dfd2223537cdda8b44bac7cbc95d54cb362f92afa265b9c53f6dcc2e102fc5e9d9a7a89d870e24ba783b86f2cc1cdfebc35c98f3aa05f9a6259d6c24c1c5c266931d6bcb5ba0a571d7acd1b2eb6cb12c666ef7a4c2564f2506925ad49a33475f9239c98c69818cb767f88af3d29f3190ccc296633611ff52e73e5d1669d5d4532e7fb2dc4f2c0eddb6911f74589caecf3c73ac91b6d62bccf925bb49082df7a95db1acfea1b7336dc562856ce99ca5d89c9b15e8dde0e2fefe7b2e791579ca603a32d3e61ea52aaaec984e5a6b965bb2e140928a4a679dbe98cb32660d15cbf69cacab8f794e14079253dc827c59f52cb5a4da41038929f0ccf24be2930c2f031d58ea03591fb8aba3000728f0061b2b2a6bece8f18102c119105806d00a90203f08108037ce074400b00224c80c0610805fa383acd1a3d938800080fc40000d00802907c0b18964fecf0b5695ca9e054141e1f13f52dcd8e1298ebe0d2067e0d0441b3c502670c78a1b3b1c13b863850d15209d9282001c97c01d2b3f5480b0919282001c965879209528000e4aa07e4da6cc2e774abe4964b2ea729610e639aa8a243439bd9f2d548d7ab9c31189c5527dcdbeaef3a46c03f1781e28283c7aec58f9613820813b56dc078f20292908c0f18877c3070f1ecfc300381c91d8676fd25be72557234e5142e385d612254a8c386e4cebce395ac7fe178196c7d3bc33c33f6a14917c915617daf6018e442c0b22fd376630df18c58188ef4f6d500d2274a7380ef1a9157f29a46588ba3aac9ea6171c854898cc9944fd3cecf368e020c4e6b218a3a85caabc98ca03a1d5c031083b9f674fa6a5ed328d43107966f0fcd15a54700402b9a132e37429081a3f7ea50541c0010854d7bf66496875b1d438fe70d87117356733655b70f8e1dbdab48f59c4cfb9d400471f7c597e3edde5cc3e2d38f89094133a2813f11e92c94a269dce059965d783e3d539ffe133bfc87940bf3c2263e6b0b372e121b967164a0b9b9f5fc371073e9e6c49e6e776382f94edfca670d4211b15edc2ace7b0d5c14187e6e4b459e679974e9d8399d493b7183970a69d4cf48868d81807ff7c4bbad8295f730587654955687649de5ce938de509b8e8ef5b89cf1b71f38dcf0decf5507cd5b72fb3620dbffb65f7ccfce83010e366cfff531464b327df6d6708cd0252ea489190dab01ebbb723921af5a4c99a541b5ced2de21d3dae88680030d6a7e7ff76651f309d919964444ddf67ece7d32c33f42937c41b3dd7eca90504a4e9dde86f2d1428635ace61c4234598f3d8674bfbcd71b77ab6428063e7088c171c1aab5d6b4b398f3c01186c3df084fa53e4bee2d6de000c37bf2ef3c3d8611bdbe8056d38256798f294683c30bbc56e5b5a8164d4d293d7cf44801b20305e50438ba80d226ab39dbafc8182a2ea0d24d96cbd2b564a959018e2da4aeb478eb727af524e4021c5ae8bf538ea76f4c5a097064e10fa54326993908173d2ce82d49cd519be73ac357f85e4b85c98e8c9c8f159a17775b7cdf6ab5b10a478dade133c74f9a3654d073bbaebff0671bdc29142a575fa5f3b2c88e430a07f5b2604aad7e66df5b80230aa69d9807a5d54ffb4b0f1f3fd20a7040c19ad3a55cf3cb3967ae8282f24020018e27589681008713d29e3ad3c46a874b251c4d48a7e65c1ae352fcf63898801a8f9bb3705abab20c1c4b58ccaca36d5434cea7fe2ac0a1047489d2265c6a3949c6396596cfc26eccbf2ec8303bf48a8b76a94c2d6ae8408d93636ce392bbec7bd8529e107c9c0005259d18633161a7c46327c5d8c499cff7eb8ffe283172198fd1c6dc5e6e338cfdd4674ecce596b213c62593d8cd22c4d6a8c64607e3dfcdbd12ea464997f613601cdcfe44a6ac527b975fa86974cca5f94ce9b92a27bec03ca7906fa2a3935e94195a64bcb24599c50bb7b418a7d326e52fa977918b2f9b7bccb2fe964a1798d0a905b5d9af359f5c7cead3a869414b8d96c585f91e73ce8cb16577f95bb4973bd25fd277a53327b6e0aee5d998745d46d79cd4e2d83fa57953f9a9f627b4c8334f4ee3090627b34059d9660e229b5fdca471220bb7830a17cde534c2f32927b15844b68f14ad932f292c3ccfdddc361edbe3e84e5ef1e6d1d7410b9aa7da0301e24325a5c70f139cb86271ebf59225b21ee25618e2742931e2928bcc8ac3bf20c34e8392cdbe1927ab488985f7c83e61bb27374e54e1798b2d9d0bdeb2f8cb492afa6dc133faea2927a8f0fcf35d3496c6583ac5dee29f2c37cd8929963b84bd1ce306c249298ebf499f6a6d3bed96148c1633d6667c9e6ff70727a348f8f986d9fe4e44c169e6cc6910a65d75289c9341073daa3e0145da4ce6ec6292ae23223776f8c927166fb544fbc94fdf391e9ee057eb36f4538eba782f279d503ed6ac6293fe98ae8282c2060aca4a8f1d34586387095050504e388165ca0be29270c136bb89053173ba5355861e888e129c68c20f79b7a26ba395269d64c2fced2f311bd264d64e30f15dcb592a4e6889fc4e2e91d02ddae9601fce4f45e3c41265cca4d7c3e93f5e05fde84fe38db6810f21a881822282934a309ede7134072d6dbca8a0a0ec00b263c74a903da18479c23b8fb4fbd4238d818e951d6cb491060aca8f951e9c4c822f973a6d98b78fd62792d8c049241e990b1ddbb6e4a90c12293bdaa0c0c923500f1f113871840d7ca8b18193469825b12dbf9afbd96518b181934598d32fbf7c3754c84625850d36ba8d7774a2881e7d860f354c7092081b50e00411293bda3043053e900fe4630614383944044e0ce176aae50977ddfab8109f29d38c17dba7bfe58410093819442af75ecad1b6b1dc3c1144f2e1e3070f3414701288950792b2a30d3316700288099cfce1fc134addfb3d4817433bd838416210002e9cf8c1ef18b5c2cd3f4b6847b791d286104efa00e48d0742054ef8b0a30d332a70b2073dd103064ef280e3040fcc7d16bb831d52561e705287941d6d98f1a74da080133a6ce0640e297b2207df91b2f2401a70120720bf63471b123881830a9056b1c0c91b2e70e2060e9cb40102276c58831ad2e02339e0040d67c871620637be4f638c0e61f149e9915278006921a4a4f85819c14919227042863168e0440c193809c3064ec060ee1cdb9d054fbe008402275e90c0491780fcf0b1d23e58c080132ea4ec68c30c1b54e0640b857f5e6d9056d572fc7bec383c7c201494344eb4b0c61aad86074eb28005e3fc736a3186b52ccd2757387d960c3676dabb2790132b50e0a40a0f38a1023ab98d2ce1e91e3e76d0e1640a292680c08914524e4ea2a0801328a4ddaac3ad54f9fb65869327a0749469d920194e9c80e3a4099979782b613a2735fd1a6bf860230504274c10395942a5f6a2a667d4d3f93d51429ab23cff64b6814932f0add85ca73264e4a6e57891cd8f61b68f1fcce4323106324bdea3c4d78eac96629c34d8a56e52234a6e26c4f834f746bf3c8741729491facf307a2e6084c9304e721d2363844e5a744c84f1e7781f79ffbb7ac960d4327ea37f738be7123096d44b661ea46d5c954d7e816cd3b63b250444e547ca1a69e44023871a3a6680061a28286798f882f14f1e3a9ff033ed62d28b53fffe34741cebd199f0c270613a4b4a646e69380e26bb48693d33f5561d53c432cec8c1021520cd821f30e89546410b72a891231826bad03a3cb87c7c39cb2ec82417a6138b1d5df99268d132ced061828be635264d3ffe1e3c377cfc68c3e41666eb9b8896d0c4169fe66c1fe4651076a60a0b4c6ae1cfcb2aca5ada9873b5c384166cc70e26f3d37950229359e0bbd779bb7ce47626b2d0a52e138fe14ba56f7460128bf3abdb47bdd25b5ec2e2cb73551d9db2b3ba159357243e426971e1364c5ce18a2cfbd231286885419fbc889e8d7a1b6960c20ab3f0f1b4a6859645644c56a1a829bf97973e66178f892aaccfa55a122f796d0699a402f99214211a1bfea551414179f4c3479282092abe93e69ba368d1fc722a2828292b39303905d62d9829f53997aa900a0a8a89291667d45c76cd9b41e923a58d205b302985794276d4070b75afdfc08414ed884ca574cc7bd3988c62319bdc24c3e9b4e7e22a26a240c764aabfdad2bc6326a1309697ea99684167fdf858e9d102219880c2d36de2392372cb3e934f98fef774f3c7389d2f134c3c7128b1f14266bd538d1a9874e28ed91c746e8af0d04c38811226ede5d1b3d25f9a6c42516762612a9372517320071a390cb00a134d98b14dab081d7f5ba314986442db8e9e85cfdef8d13d769860850711de10820e14986002d74090e675594ca757a1eb9b5ce217b64ea6ffcc92d0926f9c94951f3e80986162894ab587d6bce0b267d3a4127db7af690fb777aa45a54d28719ff83ebd70399bcef3607f984c626df334a536d878ce4ac2e0570a8c6ea874d29288240e8982e150201000806066af410083110830504c22934763b18848da961f14000142281e564626223a20181e1e0a06225158240e864281302810060608421408a23c0955d3008b007bdfe75a493f634cc47435f840b8b7f6559974034bd2370ad40e9886fdb287d08628d890f387f21c1eeb538babd9aa472cab19806dbcf70e5120839b6e9d61730883c60c38bdb67010f2c5fd80e2bae23b7d4941300eeac21cc3dd3816ef6cea91332c9809716c8d983fa1d2bb9e32443ad0df3eca71c9a4918a584033b9dd0aab616fe998283b780b9feae2505e9aa6738ae6ae2de707b3ef9b294b377afa573c28418cae6a545894f914ab89365f690e99e16ed2a3ddcce330bc1dd7fdf5c2ce2bfd8b6d2c06651c71789fad630c0fc3578959b321030bf9206f28bf1dc5e526f450b6b0f8f162b84adb0ae02753ad3a56f5c2d3cf60a6e94d2e4bc5ea7861267672b02ed43c0578f5a038e09dfae9c3c7dfc3cfcaa8694f8be7244d40593fb208f06f57c5e1711e846a02266b1437a99745dbb0f03e55de5d0682c6f4f95d60ac2a88bd101a3132309788546c1bac2e3d932f40890f9f7882f3f957ab7d95a0159c3be77bd594b2b2fdeee05df648eade3a1058353eaa6d93bce6e91c1bd0a599829b4f2433759c3dfccce4e4b520357a22eae414b6b98266acb015b9cdb9a16245703ba3696544c8b1df1f6a315bbd9fa240ce73a3e4dfbc832de0da539ceffd5aad86cb36161e8695d161216bbe041151b6896a510f0708054897aa5f9afe11a00a57669fb15714ccd95c40d590d369e7a072c7d0dacc7a9fa8d3692669a1a24da2def443083fd995fd0d436bac563409c601e9caac16d90144081bb6910860aa4ce294e32d5d5e54858a07d459cda25f2c6df7fb542f4749d45afa79649bc6c1e5748eb7e4e9c2ac68c82dcd83db20f3dd705306da7834c8aa431ef4b8857fc8a34111768d7919878f9fe6da9f28ab74ca048c6b381c1c4c3d7b5df220e60435c609adf5b70dc579e90f8b7800ed80623ed72b5215cae3ee999d150565ab8b128ee413f5c194dd592e3a3ecc978b283dfbf74c4bb9a9ca583c355293bb93d073566b8a5277de5cd0928e856d02fd46c85b70b5c14b2c841b771bf5184f3fc63de2b6b6a51bc31b67f5b28e40f832619fd01bc22f9f10847f1523dd0e14cf05047703baf4f65b013ca24d8c49cfeb7fbb0d9409c334f8acecd27f6e28653a964c6de71bdf865b334a3959904479a270009d519b89d078168a3b4a3a623e21a1e32ebe5b6c8de15a9278f403bed5b95701b232dfb2b1d1e9ccae8c4bd0b46599ec57db4407b203ba6a525ed58d005e8f3eb4690bd29376b1ad7b123519acbd9165a64f0c9006a2858ae7a911671123cf4433d13a2d678452c0dfae4e210d5c1720afdd2509c305a602a8f50e366380d8caf42678cae23b8c0f5fc0c72a46a70930e98acb0e0ad7577283050b28f4245d517db42463e00990b1aa50dfd9949e599c12ff4ff0cb3957179df58ca7f6d13a8c1c066f1a3f0a93e94bae6a7c28b8ba9f5bc8c8735fa3f9aa5050615caec34afdb62b245914d441bfd7fd170fb989741b69bfaf256f4613774147df6c198f3874a35f14c34c2b853f5591bb0a8091a1625ebc04cfd862a54730813e938252a41bc048a6d8c73486e0db66155fd3fc45a35448d1ab6bca7d4644e3cc789e776faecce4cf1f7a64bcdc2c602e50dafea779a22fe2c09c4731d22c7a9c5a1d322443a83ae2879b29139e09a5cb4c279503755fae9aa80d009c80804f9ee2ab87413c12aa9c0bec07062eaf28fa421e0ed04c41604102f3407d0bff8b14fe4b1ecc32a990059a321b42efed44dccee0c585db58e748f45b5ed6530d8df835eededcfad4cecdb0a073b394687fb9844a162391c1862df36b8838d250f1e26f062529cf93e5db26dd438ce57b80a2282cff1b6e40507c9dfbca8bccc13f896ed895f73817ab82259ec11a036de5cbd880f6ade98750da2aef86f4f8b1dbf9d9a06e09c00f8ff8ad54e71061b588d29d1de9cdbf0b79bfd1c3bbcce9c9478a232257c5a7ec5422d6c9734096de66c350b079e8269fe95e50d2f81098427aaf31264b6a59fbcbac052c4cf0ba91e71647476404122a6f76c536457efdde37a10622afbf3e1aea4d8c90ed056e74b4ade1c7b7277ae14adee93110ad117d8f4fbcd8ed07aa6a78362fc4061908b77ca5b5cbc55b6b235f3400008e36042901d00577976ee8ddf7ec2366ed92bacbd01108397fbaf420851de71d5d95922de9013619568b01c669b312ef7ca62e83abe0cbdd96d5762f355c162bca43c8569c664a28f8acee7623aa8ee900ebbfde81550ba46203725a7af9ef60ab93120af32acc4de704478859305cbf2cc345b5d873de93bd49904a3155af9be3eb75c2ad6e06eafdf498364e9302381e54f86d0c5da2ced795ac770372a0e573386e55758622db719cd37126699fe6605bb7e42d51434c2bd113a016fce9923fc67da1ef42981942b3c5de8bd6c75f001f3da19a48c351b1aaaf7b54aa46d506b9eec3756cf64f806368296c07b0a1d8cecd45eac502ddfa041d2d52f6e2ed143a0615cbe4ca625a88e8aaa49f3c792c75df0489f4d163547d97b4505e5a5d16e40a7988bdce1a0e5fb6bf3be19f8de255bd7586aee5c8a5fd78ef3760fd63941105da11da75a15596f5ed46ed3ad0700998565f0c59dc46ac5bdbb49c265c0ff0f5d9580ee5b39a320bddb3855efaafa387fcdde62dea530efa7167b6cb9aafa530ff7efe1ae86310673a25fab9da7e9dcf9b4f8506b33ba086cae32428d55dfa70a383931748b254fe78373d743be3d16deadcb7d62f769ebcaee716542add2001fb66ef5621dbe6bd51749cb649f4574e6d9df7b4018d0192cff0dda1af273f05611f2e5a892c7697a9ccb026ea27bb83d3bfcf4380da835a074da39cba52272b1504ccb009515834517b6ab44f3307b21859bbcf2f7566a62fc266d58e1e790b3f60defe2a4e9d665c8c51a7021b7d2492d7f75308e383a89a8a14143150ad59583a2fbead99c2ec9017f1776f2b2df97462f89679502038ea7bfb714a3e6428ab2a9efd8092273a1f2d6bda353b963fa425933fec6a4539d8e0bb8e304fdc1beb530117e6125f360c8020494fa567ec8d9989190cc3af87a0af91381b7df6fea7fc20dbb038daf1334da8e487a3583ce605ae5b51f1dfb094a5302868b1c6e32a5057571a35e81c23bef2ae520782178a25869dd0fc2cfa6c0dd3b46581252e2c17c07d1d73f09aa32d40a820e9be285a62f5f9c099a29a18c3dc6f1b7486f76eca0746ec82423eea93dd01a122106ca4d939843fc3e885b7f92e0553c78ab11547e58eac183b738e25769536aafcc0b0f4020e8ccdced0ea09522440b5725716c0360d0a04a93ff8a9205d80ada78ca52259d0086446fc2bbfb37692d2f606a08d2a6df20c70fd669784a35892c89e5af3649bbfacb7f76176dee32dd0156acbe6aa97cbb8d2a072b3ee3e4ddcfcbae3dae6a3f5372e6eee75198f988fd15c7cd9bbd8514d55c54658e299fddab0a9a11a3c82bdad31e7bb80eca3810d1d68b8f19a33366c7837c2c4a4409a9aa9c7e6ae7191c9dac98bd178287f4d43416cf53b899399822b38f190d48846682c2e1669867280c64dd4828ead646356d9ed755460f49f78e99550f02cbf7dfc5f2e1214e4689c7cc05a7ea4dc0f17f1936d65310907625eace748e6edb1586edf28f945ce64c58b6e32ef382bf510733d684b0f0b5301b942478548555615ba02cdd9c15869478426d3ceba590506990fce8d7d336bef9eb69481d38e6f5bb40166dd897e20bb592f4cfa74ad3689c142724c8e2779e8b6b17ae01721f9c9ee3dc0fc2b9bf0a44ba02cbf5b768283dd0837b811d8df1305954d97419d297bc29698e49d23b856e930f175160ed56dabd3943f941379bc56d233fa38d8e70a40c601a2da809d7655886dca927249122842de44f31c81a5e0bfe0a03a1c04a5b7ae6af5f5b2775ad4ef89f1e66821fdbb62c7f2975bc89f79423cc8368e1be7adde46d625ef16c1e14645e3d153566995b200eb33090dc536bed66dea8313175a51472d12040988ed41f76a47879d54900167777418e9b2b933ae8b7e0226c3ef8edb390aa8636e7b0715f4ebc8a58d204caa502b8d63b4c9c7a377cc0834d858f601054d7adbf873f1f57550e9a6777d8e47b9f5662ad523f6b04810e73b7dddd0b7df409a33674385eac3f91c1cf0baf6edbb93535d813cfe5ccc9720a73c825157a6258c44a718045a793bfce5c4af70fd042ebbc1245ecab82b6d5a9629a561e1738158791744725ea0df77cfab367ec116e583e82dd0d81b8c15500dbbcd92d912ab1c4f803ca21c0b4266e9b49f016748b4ee88bea6962c1163ccc8ccba05e8040fd0ee10716be976d1e908fd882a3b69e20b7749dfb8c8e95887041d8a735becb931235d8df3d1c52d66bfc12a76da1a6ffee21150f1afaa58cd64fe8bc46d3c845548834aea8d6d1fea2fe005d727fde5be77e141e8a1da595f452b6bfc9011a6b6ffbb0f20c4bb4f584d8060a8a1463aa9d3c1f3f9f1165518eca4ff1a58cd2bdab833889bee388b41b55c5dbdd567fee530702a4a2170a7ec2e3ddd41b24aef971c1f4a02afd23f8fca67117e16faff85c9b885ba0ebfe1b34f5604a744b0d7e7c0f9129d2c673664353eb0b06cac30f903384ffcfef1c61aa65c2c8746d9b314706eb227023bb32719e6dcb5e44adcdbbecb530f22ceedc274715abf068e5fb3cbe78a81b9706167e39189fa62acf68b450d12860147b76efcd202a12c5f0f32fdcb2f3434add17692ffd33da4556425a9b853f467fc14a9f469cdd84233ebeac54aaa633e29813ed648959e88132d6a21427e3e3b87fde459196825d8e30bf466bf19c15d568c71879ea3d94b99b287b95c626c7e24887a2a4faa68384588a7d69534f3120c1ad10dc94446a89fd8624906a4a0f5c97c9ebb93823c544c8fa7abc4e2690c11632f0fd419ad6ec350e4323b04390d64e5434ef12d4102d43a821d7a0dcc3d08c854d8d19c906a407fdd0b167450baddbc17e9e6803efcb0ad79ff720ae483acb07cb3251670b00f9131f0478ca52cd6d4987ee156962b598af173a7cc61a864b224de89a19ec10600e5d50b0944a0b7aacf5d32ad3827b14a063d97a63d0cc0801c7c6a412192a027229b1801eaa6c113d937df458d1d5e89f510bef4dff56810d6dfb16eb5ca4bd6ec8813b98972d40d97e063d8587220cde87584e794803ad81d2404b4043f582bef2788b16bd1866f2bc083a4e2e44eb87c1455fe50b0414d2a2e81244f8ea43c7da8576384127a5f14a148c73a08f17ed11ec109cdd05c038c14bcdbe309f5e5ef130ead749ef6e80238ac3e64f728cbf18899da4df77437571e2dbbc795318ca4752cada54654409533232374504b10061992ac7fd261f5a7a12c6ba06dbede0db71da832d3baeb86a5b8acb42c462959edb6a7a07aeace2d48ac0b74ad00098cb5e24d48b7b56ba8d3243a8fc752a410761d89abd81e6174079fb424b32cf2bd387a8f3b201ae435fafc5fcc9001bc5be6a5c4c080978bb05792b13bae03a0973fc7c5d4ff23404a0ea7f42b32fed731233110f42a876678a34980491d4727692221f6b47853266ed7b885baaab1749ca069f4954ed8ef84d074c4b7aef4926aa108e91521ef8d111982b1148cdd632d0740147115e38538f559d621be5688f3cbe225de88496fa745d025aa52e013fce81ddb740686f00e5b0ff375eb2b9e4e0996284abda31a22bb97a9fa52357921d92de2dfd6eb4a086da09b326899215c3f902afc0d0c003016110b9fbeaa343ac04bce0359fd767027c9ff842215512090a621412487ba4a0a70112c60cae9ce8d94141ac59ce91f62f2952a7847f77cc5c6d84f3cd0697153748c01d12b314cb8f7c59ea9b4a9c509b514ab2bf74ee6c5b631a5ef0de4154d67d370195dff441d3ebd18d0da0ce73f22226aa50033f445cec5c0850d6fc084fb30710dde958a0971d61fd98d23bc51059484152bfe4c5119b5545b24c9df1329675cc4671d64b81777e4d32b203c4a17d13a62bd2597731ad663a93e82af8d4e6168ede094021e8453d27f8991e2639bf20909b0dd5f3fac7d217876e5122d6445d2a550fcc84bdff76cb7f0cb53841050d33b9e4baa5ded8eba9415571502ebec614d5a6903b4b6d4cfbf02339a74c936983c050cc88c967c001c892cc00c751c53f5dec28a0922a3ed8986d231113d4ee35e600d368cd3354ea37c4510d6473148c98bf1752ac584db8d7d7d8f21e0da63593c58d84587c44b3df4bde501a9e3297c7997a8bb764e12e818842829a4565c06b1bf819b3083abf2485a3efeedef48a34805676bea5712105bf17f7ea5d52e741eea74f9317dedf7f274a926fade546bd7458aaba236826967f2c7b9f1d8d5cb6099b1d6cdab416a1e0c097dc5ed572ba71664af43e3654b0172eaf349fa02938caad7d3c187c315245d658c8d0630789884f95f6b6585f94889d23f5fc6f0307df6a15986e30f9f732728dce9f435390724937f730df7e3f807de840bfa24e3bcefa1de6cd403fc7fdaf68f8a8e02fa851752284cb4bf4bc6baad2681cb776544f6d766fee6ee6c9ad78725450e3402a902164300f1ea2fded66aa5407e0d842522d880def7e081b6fa4003f704405c76984f8c02f01dfc1f6f37a7910c6832c04abdbc5f2d0cb87a9b07847225df39aa112eeb7ec803c2b230a68cade4b95b9f4dc831da0252268b5eb1b10b482dc3ad71d52311df98d63bbe39b264bd2e7ac6ad48830c952d375afe910f4f35102f66b7ae12479b3dd9f5d5a49a64ae6518602254ef3c2eca8f7e65e22992621914efe565386cdd06f47a892a0c35089d660bf8ab6ff2c3836876d9c95cb8e46ba6b1983e8e7655c1227f3abc4a5013cea1ed680eae4dd1bbdebd810d9f0475320026baf544de012c6e0a0659018dac182e550342ea5751ea66c9ae86a10f855b976c7dd9f844264352fe89cd46dcb9c62d7d966176411259334e2c39212b711b04beed12245b068c74ecf539bce99e18de067e4331a6d6ffa3ffdc0023d39f68edf9eda2e122a0b177d598acd0f2f43c87c1a3e28676bc4c6816355def546377d599acd052bef606b068df5b870ea407f22d4a21b2550832820641bb0f4e4fb2f7113ab58292bfae2b7679016df0372c5af9f57689c6070469e0e460337ad260cc2b7307ec5adb27d3df6e9bffaf2537cb287feefcb4d087085030b956c282c483d6ef581649a46bdfd9b439abdbc839303c93743082d607a2e834f1fb5462f0c15fc44a5ed48356e8958b8689beaf6b86d7fe7e405fe78e8e7f408239769c51d3eae05ad1cbf7f378be4c075dedf53f4f552747ca3b1dedae442062ec9adc65bc13bd18ca81cc84ca0380bca7e4e564a8eca1dfa83a6ba630624f78151af976ebb569331f53ecb39c89bcc6319284cca83589df8a9904a0b018769af6865b8d5acae568632bb6e98aa98229d9a47298a52831ec34a6207b9cfbf95e6223b6c87f1c85dd4c96c8282ea7257463221066e5d2966b05811afd709621f532cced6f008957361bf5bae59df642b2656c9d44043b07e8f6a463e47368bd308d76211aa96cd6b6613d2b1784ad74b8f4a54f12ac2294c135537a8b9c5948c522fb1f6d18c378842aaed492b5fc7269d31f12497b5282390eb2652c09673d4c063b9d42b65ca8a30c37d3e90fbc775a3cd95c14b4b48c752dc90a14beae9a5ab7f4a6153833494f8dc13538282937a08cf9a738fac314a5e728efb931244cc70d259d6024d4c75539b2229e666539ba7d454ecdd0acab01b39cc5cb0e16c02027c51b277631106da55ee0ba88ae453c382dfab8a02f22f506b56481b692eebdb03b0529b1c9d4998af6c8bda50f481bb6d80ec728a7eaff7faa1acff4017a023cf6026219d6768554dbf345ca03d138351ac6305f0999fe70155aa4084ba0e43af13f96f49c13d087e933b65b343ae8fac05e45445e480091c5c985767a0ee95f0c5cee460bc2e2c27432a7c98f672dc86496270ada5601f4f995a5579cefd2ba8ce941538ad8a6412b5a6f3d778735c97ad2201633ea4fb8d5f07535c37d2b56232367480f0e6035b74db8f03f8f005bd21ada4ebdf9684deb8f4f865adc7656626e5ff223595dcae196409175e0231eae1bf56651aa9d4bb89eec246786928e685749c97081c39b2568fe0fff5abe0957de3f3d0ac272da16f25fdb407f058dbe66da822fcc0a3a63cec00bdb2fd031dd4744a1a7f658ee300632bbdf90f8225e84ebb89806a85e8a521d472465d2de82978514193ec5dd7cdcd05a88d48e9c145caab6192c22eacd287e1a82329116fe2706d55edae31a538ab0eefb87465fe4bcc606ff440c3fe8db4413bc1541ab7894e163848f4431f2d4aaf8fcac145399491a39f7501616194277fe8f0bdf009f5e1a691e211f762b1b4f629fe3328e000c6393462d21644d91478fb58954928f98a341469cceb79a1f3b880cc3b7e05d6f5f5d4d3fc16447af01f83b01d2d9b24d662905d9e56ac6f6fc87a46149390b712ad6d53d9024fc424490b0d619f1a4d2823c5184f4a49bd27d8db854c401f49eddfaba8f70652949c636ff88b8d7fbbfc53f8e2a834b8bc4fcafa55d2a3c8b9d93b212f091d361e6de6ae3188f910f5ef0591a55c1ef6c81e461416354167147b242b40a45ee565496576be743447cbcb392c0d243038088c7e3d081ecb633103d277403898085e59ad05aad359ebc3f392edb20494afbac0c2d390d6845f869c201a9df798c2df119d0c5379040f7dcbb6e55e67e19c24fda46f03a3177254f756a82bf826b851ae78cd75c547d5cac404ed4859c9984003f9233f12cc40882f6e605235404de74e0ac445e130602044d2d94fabb074b827f431208e567f13994f2c9d1d1c190a0df5e9891762a9b502cc70dc7e5e53032adf4f272a86402c99908a31053c1e031b6c6676ddc17a95ec86ffb0e6b875fd02a2891709d63aac32968fb8d6ef42f143b647070686a105d23980ef685eb9aeaee939a2fefe719235dd6b29e2a6fc60e064ae90d69ef10c2a969e75c322ca8f7e9777b934d9b995f41a8b8482b8a1cc1dc0e48c741ccfd6b10ce9c8acd0d0b6dc63b9ad44c7aa7871a16a91f5b5309af043d4b45cc8091a7882147c12ed345f16721b73a03437e088774d3b2794a31d4e807fd74bc42f9689f49ad79847fee30502855bc2c9dcb8b6f3f5bfcae591759323c297a478082a71c4e17ab3a19cc2e334ab450de908f36ff320e515f8780ca6bec4a72d9b1b46828f54c7a7f01c40a0bacbf8209efe6774b2a60ace40e13766766925142762ac6e39cc3a9f85c406528a16dd55c9c3ea0d21b36c10c9a306427b1aa647564701bd9ac82ae47c3ba8fe000a1f4c47efeb80d9539719df29cd30737233c15a4bbb415f1a3f16c8e7f3bb7726351680f73e84da4659ef0ec094b6650ae38069b7b9e28d3850e8c92cf176fe6274b81f1144dd85f0c5bd1ca869fb4528ff2ca4551ef2ea80a787c43c11521e4aa817c82dde954ba4aeb5ccd3c553c9d38593d847031abd820f4c2ed059144e1a5759a915d4c4bb192f95156514079c960910a6839be9583dc741e8e5f08a099862f2bd320e778ae6e5d3c319c7ee79dcb3e12897a822ed771b35e04013296dd76e86efc2fce4ed8671abfd7008b1b2841a3ed2ab0bdc08c49b9c7f32e868a46fe3f1fdda50b155f7dbc1ccd584404f640b50a5da02be33ed24ca5b8a75e88890c1abfb6b7792912d1eff40158bc130e65ff3484e16834984ac85193ce5ebc6229cfc81be0615c62e3fd2cb17f3dfc340440ac19a261f29a3c338c6a6b789889099e615275f672d028231ca4c836180a61a28ae6353996294c5bebd3b03038f48f3d001dcbe3b12b53e70283a76007aba90b4466490ac1e928a3e7a4c98f83310bccd1a80c0d6fdfab8ed64b67d121862f5a8d50bb0cc49b7309375bdfc3475a30328b2b5d41c19d1ad148744a2f1c53b989bef1f696bcce3ea48d68be49d0b45094336f2e65f30821ef1f3989ebbd09367a55f87b0ee2106a3e5a7244c11f6d7566186d85e686c843e3c259241c78b90c46fe81d28c0688be1dbf1d0815076e192baa76fe28fb7ef6437e339f8d26fcadd82b76d0bd7d241a5ebc5aefb92c042832731329ab22354384550f16d0b3daec3ed25ab7bb39772a5c040e3588945b6231c406708d5b956c79bb4e3e0bb516f685b56f1375cae1ef67d848d866f794844dfdc5ec800c631829a94fcceb23bf363f6adabcb2327119da7a0b00fc6e3d3df36bf1fa249144837c2406cc7d8b3e1e849da530d65949c6671d7e91d48f021e44d1120442bf04c92805fbc6c5a6d0a434d8e474a984c4dfa0cfd90cef1a7b9a0f8e363d49abb34b20233184b0b8a2fd7d9b07cd39b2d0277012363e45780af1374d9b2b3dc90bf5096c875da08aa357c444a19601397df2ef828fd4253983ee566e13928a5c60a60a56097ca2ab014290aca970713a6ce005853eaef4bd08beffc4262b76fb25015b96c108c221ef1acdb9b6da62a09a388b1bd55557cbed09063e3b758bac3db9a9091fb5b0ced6fc2428beb54d9a3599bb8b1b39dc17d923c2766b4d279ad97c53fb77cf0358072718fa3795dbec6670b74e741b1eb06053d59f1b5a4de1a54a68c61ed24f230ff4f8a3db7143b53c2e72feee8fa140f4978d5f6142794d742a4022104d63efaf0eb55f9f693f9193421aa07f49e492df47d8164170012c7b8ffc40f46e2670718acfd46f017dd3dfcc6ef466f05ad0c287fa3ac0b7ddc893a8a5418c65b3dc30f035f566c045799505af7474dcd6c131faa1aa0962a9d6d1dfcb82460236524b14586ebfa000d8032088354b0557e9497b904f723b3ff8b3197ee59dd865d3c4ced8957cc3fab7b3320e6daeccfbf72b3baafdda80bcb7255a6306f15f561a283a9dd1d504e0fd2718ca9c35a2510d07b2e2df44aa033fbba17624e306b5e3d9bf7fa2523d8ce31c1963893cd8ea01c446afd440688436b704027f03c215b55d849c492418aed911b4930592da7b0133fc2c66ca6a3b1032590ebf3009cfc089e074c76a62bf42e9c464b30f35a59d3e6e6b810cecfe3c9f58a3f6d5cc4662cdf803243bfb153367dbf39f556734fd12c9472b6d09a2c51502d6f8c244b2340a48f936096ed4c52b771094a62069a1d98052fbce50be3e97d3d2767936988f3f0bb78fbf242f7d7eb9feb09e4b89e2e174fd3c81d446279f4c5e23e9426d648888dae6519b27e95a80e0aa9517b83201166502018be0eefea51e173df21375a9fdb29276a5dc12f87430ee75785f108433fee00e183830295772876dd721c3e456bf83c5a160b823e8ff580e8b62a2fffe1f48aa85e02b815909c73c7daa6e6947a92a45c61029f261fe2d2853fbc306641211f3f4722e374aa9fd84d47a5ebd2e2291fded2efb5f42c01c37fa51129a6f817d9405c23f6fd5a971f8861953f8dc64077e9888a926e48d37da1d0ee114400eb9ec8d9f9a32761cc483d40d302279e2eb03dade2d0d84bfc9769bae09fba1518f5c9487da53453be3bb8370125e11ff52f3ec65e9e644eb355d03e55484f06c71c23aafeb53c435db9ac2d19c3fd8e5235e0064010838c5d86c75fd5d9061123cfb852b15c710c5a831854f595469f4660d43ca093ee5259561c32ed58c91b323dfddafacdba30af57aa417d3e6d5f48e97a7b91a677d014e3ee6378172263e1b6cdf67dee62463a183d40723ae8144a3adda3fa47f6c43ac03d43eb358bfc8cf46e947a29f25e5677bc3636692491f288877767c1c94c588cf705bb3ec0b4064e6a6305c92b212a362ccc46113d409ae331863af6c23dafd24ee1e98cd95e26a82b2541601abfab5438d97bba7dbf5f1fd5321058032a5a11ce95949a2f62badf7bc0ce92db7393079bc76bb3c1ce0914e465afdd826e01556f278ae21c4dab0227eb963d098e76f1bd8235c99211a71ed976eb0eb116e20eb3edd99968c107a3962ae4837c7e6c035d92dc7dc35bbdff881c9ac032b01e5f9dd4566d18145cdeea239a600d40b87bd9e47a5a5c5cdb03762cb193984642c3bd7f96cb4115e35b4bcec77d6556d9580cdb87e811f613dd2e49682ef0aa2173e64cccaee2b7de3aa20c25d11633d02b9448cc8cec0febf2d440189ef324e0ec90d2b9b01c010ed81c6f86cc0835f5a39f6e266fd4d5785c8021ff4439228c244c7fd7e31e8c7c5fb68e67ff08d6e43ac4a39debce82d94e7390cc7b176823a6e945fd01f507b9cd66e54f7fe3202ce849ad82737f0dc2e54ba22d6f38e7c283a2911be610604ff5456b63183cd92cbaa20c495d6e73b86ba75f8ec8fdb006d12da05945ea9014c31b1fe4b52a06363061dc8bffe1a95311fbae4a6ed16e333e528e95afbd23de78f945bc41c6032e78ed1a3e4582ce64b2613ec22f8146fa706f5f140e40064174cdd040f71c20351d719fc07b6e8080840ab773d4573f07aa7f9ac2ded033f9ae22ba18d4aaf98d85b5e381cc7177c99c27a306f6511d0def1fc262cb27bd6a24c9051f01520b088c449057a48b1916d9398a4cc4d9f0e02b99f10c50c03d6b8121b11482834c4158c2d325575516e6162070ca3fc7c6bf67f855808d9131edfb28b2ed1d102cb441c63c9d36a70960a9770ac8fd5d9f64df406bcd07b709881e1429bf334ee58c0500dcc45527a9ff59fac44a4bfb152192ef732d562a56bb49c8a79c4324ae3636e58d7e1781a5d500e8bc190f0815eb18c1d40326750d3ac9404afea2c35243d0ee2c8a24a13144696f0dc4e293f0690aa81baaa65c84938791bd0664dd051a84149f23aaaa620373f5f3f60860d354b05c41fccb8c05c421c0e3256c82386017a3860b762a0df327a46431fab1b30fc02", "0x3a65787472696e7369635f696e646578": "0x00000000", "0x3a6772616e6470615f617574686f726974696573": "0x01200e6d7d1afbcc6547b92995a394ba0daed07a2420be08220a5a1336c6731f0bfa0100000000000000fcd5f87a6fd5707a25122a01b4dac0a8482259df7d42a9a096606df1320df08d0100000000000000e1b68fbd84333e31486c08e6153d9a1415b2e7e71b413702b7d64e9b631184a1010000000000000036be9069cdb4a8a07ecd51f257875150f0a8a1be44a10d9d98dabf10a030aef401000000000000006c878e33b83c20324238d22240f735457b6fba544b383e70bb62a27b57380c810100000000000000d9c056c98ca0e6b4eb7f5c58c007c1db7be0fe1f3776108f797dd4990d1ccc3301000000000000004bea0b37e0cce9bddd80835fa2bfd5606f5dcfb8388bbb10b10c483f0856cf1401000000000000004ee66173993dd0db5d628c4c9cb61a27b76611ad3c3925947f0d0011ee2c5dcc0100000000000000", "0x3d9cad2baf702e20b136f4c8900cd8024e7b9012096b41c4eb3aaf947f6ea429": "0x0000", @@ -124,7 +123,6 @@ "0xc2261276cc9d1f8598ea4b6a74b15c2f4e7b9012096b41c4eb3aaf947f6ea429": "0x0000", "0xc2261276cc9d1f8598ea4b6a74b15c2f57c875e4cff74148e4628f264b974c80": "0x0000362b4c8ee30d0000000000000000", "0xca32a41f4b3ed515863dc0a38697f84e4e7b9012096b41c4eb3aaf947f6ea429": "0x0000", - "0xcd710b30bd2eab0352ddcc26417aa1940b76934f4cc08dee01012d059e1b83ee": "0x00", "0xcd710b30bd2eab0352ddcc26417aa1944e7b9012096b41c4eb3aaf947f6ea429": "0x0000", "0xcd710b30bd2eab0352ddcc26417aa1949f4993f016e2d2f8e5f43be7bb259486": "0x00", "0xcec5070d609dd3497f72bde07fc96ba04c014e6bf8b8c2c011e7290b85696bb319b9aeb2f5add22992ef83665b39d7a565e11bf8d18d41d45a8011601c339e57a8ea88c8ff7bba6f": "0xe1b68fbd84333e31486c08e6153d9a1415b2e7e71b413702b7d64e9b631184a1d2644c1ab2c63a3ad8d40ad70d4b260969e3abfe6d7e6665f50dc9f6365c9d2aee93e26259decb89afcf17ef2aa0fa2db2e1042fb8f56ecfb24d19eae8629878a8e61ffacafaf546283dc92d14d7cc70ea0151a5dd81fdf73ff5a2951f2b6037244f3421b310c68646e99cdbf4963e02067601f57756b072a4b19431448c186e2c57f81fd311c1ab53813c6817fe67f8947f8d39258252663b3384ab4195494d039d065fe4f9234f0a4f13cc3ae585f2691e9c25afa469618abb6645111f607a53", diff --git a/nodes/parachain/Cargo.toml b/nodes/parachain/Cargo.toml index c03a03c3c..e65617644 100644 --- a/nodes/parachain/Cargo.toml +++ b/nodes/parachain/Cargo.toml @@ -4,14 +4,14 @@ build = "build.rs" description = "KILT parachain" edition = "2021" name = "kilt-parachain" -version = "1.6.2" +version = "1.7.0" [[bin]] name = "kilt-parachain" path = "src/main.rs" [build-dependencies] -substrate-build-script-utils = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} +substrate-build-script-utils = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} [dependencies] @@ -21,83 +21,81 @@ runtime-common = {path = "../../runtimes/common"} spiritnet-runtime = {path = "../../runtimes/spiritnet"} # External dependencies -clap = { version = "3.1", features = ["derive"] } -codec = {package = "parity-scale-codec", version = "2.3.1"} -derive_more = "0.99.16" -futures = {version = "0.3.1", features = ["compat"]} +clap = {version = "3.1.18", features = ["derive"]} +codec = {package = "parity-scale-codec", version = "3.1.2"} +derive_more = "0.99.17" +futures = {version = "0.3.21", features = ["compat"]} hex-literal = "0.3.4" -log = "0.4" +jsonrpsee = {version = "0.13.1", features = ["server"]} +log = "0.4.17" parking_lot = "0.12.0" -serde = {version = "1.0.132", features = ["derive"]} -serde_json = "1.0.74" +serde = {version = "1.0.137", features = ["derive"]} +serde_json = "1.0.79" # Substrate dependencies -sc-basic-authorship = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sc-chain-spec = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sc-cli = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sc-client-api = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sc-consensus = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sc-executor = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sc-finality-grandpa = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sc-network = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sc-service = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sc-telemetry = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sc-tracing = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sc-transaction-pool = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sc-transaction-pool-api = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sp-block-builder = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sp-blockchain = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sp-consensus = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sp-consensus-aura = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sp-core = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sp-inherents = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sp-io = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sp-keystore = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sp-offchain = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sp-runtime = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -sp-session = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sp-timestamp = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sp-transaction-pool = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sp-trie = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -substrate-prometheus-endpoint = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} - -# RPC related dependencies -frame-rpc-system = {package = "substrate-frame-rpc-system", git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -jsonrpc-core = "18.0.0" -pallet-transaction-payment-rpc = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sc-rpc = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sc-rpc-api = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sp-api = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} +frame-rpc-system = {package = "substrate-frame-rpc-system", git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +pallet-transaction-payment-rpc = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sc-basic-authorship = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sc-chain-spec = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sc-cli = {git = "https://github.com/paritytech/substrate", features = ["wasmtime"] , branch = "polkadot-v0.9.24"} +sc-client-api = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sc-consensus = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sc-executor = {git = "https://github.com/paritytech/substrate", features = ["wasmtime"] , branch = "polkadot-v0.9.24"} +sc-keystore = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sc-network = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sc-rpc = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sc-rpc-api = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sc-service = {git = "https://github.com/paritytech/substrate", features = ["wasmtime"] , branch = "polkadot-v0.9.24"} +sc-sysinfo = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sc-telemetry = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sc-tracing = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sc-transaction-pool = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sc-transaction-pool-api = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sp-api = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sp-block-builder = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sp-blockchain = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sp-consensus = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sp-consensus-aura = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sp-core = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sp-inherents = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sp-keystore = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sp-offchain = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sp-runtime = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sp-session = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sp-timestamp = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sp-transaction-pool = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +substrate-prometheus-endpoint = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} # Cumulus dependencies -cumulus-client-cli = {git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.17"} -cumulus-client-collator = {git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.17"} -cumulus-client-consensus-aura = {git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.17"} -cumulus-client-consensus-common = {git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.17"} -cumulus-client-consensus-relay-chain = {git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.17"} -cumulus-client-network = {git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.17"} -cumulus-client-service = {git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.17"} -cumulus-primitives-core = {git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.17"} -cumulus-primitives-parachain-inherent = {git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.17"} -cumulus-relay-chain-interface = {git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.17"} -cumulus-relay-chain-local = {git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.17"} +cumulus-client-cli = {git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.24"} +cumulus-client-collator = {git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.24"} +cumulus-client-consensus-aura = {git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.24"} +cumulus-client-consensus-common = {git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.24"} +cumulus-client-consensus-relay-chain = {git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.24"} +cumulus-client-network = {git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.24"} +cumulus-client-service = {git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.24"} +cumulus-primitives-core = {git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.24"} +cumulus-primitives-parachain-inherent = {git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.24"} +cumulus-relay-chain-inprocess-interface = {git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.24"} +cumulus-relay-chain-interface = {git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.24"} +cumulus-relay-chain-rpc-interface = {git = "https://github.com/paritytech/cumulus", branch = "polkadot-v0.9.24"} # Polkadot dependencies -polkadot-cli = {git = "https://github.com/paritytech/polkadot", branch = "release-v0.9.17"} -polkadot-parachain = {git = "https://github.com/paritytech/polkadot", branch = "release-v0.9.17"} -polkadot-primitives = {git = "https://github.com/paritytech/polkadot", branch = "release-v0.9.17"} -polkadot-service = {git = "https://github.com/paritytech/polkadot", branch = "release-v0.9.17"} -xcm = {git = "https://github.com/paritytech/polkadot", branch = "release-v0.9.17"} +polkadot-cli = {git = "https://github.com/paritytech/polkadot", branch = "release-v0.9.24"} +polkadot-parachain = {git = "https://github.com/paritytech/polkadot", branch = "release-v0.9.24"} +polkadot-primitives = {git = "https://github.com/paritytech/polkadot", branch = "release-v0.9.24"} +polkadot-service = {git = "https://github.com/paritytech/polkadot", branch = "release-v0.9.24"} +xcm = {git = "https://github.com/paritytech/polkadot", branch = "release-v0.9.24"} # Benchmarking -frame-benchmarking = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -frame-benchmarking-cli = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} +frame-benchmarking = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +frame-benchmarking-cli = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} # Runtime tests -node-executor = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17", optional = true} -pallet-conviction-voting = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17", optional = true} -pallet-referenda = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17", optional = true} -try-runtime-cli = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17", optional = true} +node-executor = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24", optional = true} +pallet-conviction-voting = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24", optional = true} +pallet-referenda = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24", optional = true} +try-runtime-cli = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24", optional = true} [features] default = [] diff --git a/nodes/parachain/res/rilt.json b/nodes/parachain/res/rilt.json index 8bcee14fe..68bd45623 100644 --- a/nodes/parachain/res/rilt.json +++ b/nodes/parachain/res/rilt.json @@ -1,6 +1,6 @@ { "name": "RILT", - "id": "kilt_rococo_2", + "id": "kilt_rococo", "chainType": "Live", "bootNodes": [ "/dns4/bootnode.kilt.io/tcp/30365/p2p/12D3KooWS2h3rxqEC9bzrFNKVgrT1iaGz2UAWA1jVG1EB6dEoeJm", @@ -12,860 +12,430 @@ 0 ] ], - "protocolId": "rilt-2", + "protocolId": null, "properties": { "ss58Format": 38, "tokenDecimals": 15, "tokenSymbol": "RILT" }, "relay_chain": "rococo", - "para_id": 2015, - "consensusEngine": null, + "para_id": 2086, "codeSubstitutes": {}, "genesis": { "raw": { "top": { - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4b48203d2c55b9a6b03b0b798d17cc48cb9b053d4c0967a7155dd5a6c3bf55dc5acf8922dbde40ab1f1eaa9e151907d38": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4d81a23b77c9821dc80a9f44132d84915f90c3c73d1c02340f7cea7a772680542008b3b10fedc2caa02f98d66be623fdd": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4993153c4ca37e123ac636637a013d4d0949fb97cd829a40f57bf7b9bbe0f27ac47fe93c8e231d229899c61ddb7870e3d": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9806ae4fbff1bdedf667edd4846e2585ef2460945ba4cd7088085c436b334f0c9a3240755f16267e293dfa29ebe840a3b": "0x0000000000000000010000000100000000000000000040b2bac9e0191e0200000000000000000000000000000000000000000000000040b2bac9e0191e0200000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da91f2a387ba8a3db1fbf407adfaa62ba08dc8e39b099aac859321539ec7ebaf3d65ad9ed94b984990159f21c0b35995717": "0x000000000000000000000000010000000000000000007c332aa12b541400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9980597d42f20e91ceac14ec0ed58793d9ee228e6fbb6b32ded145d1b38be420e253bf43712e2f52b3177c0b9783169f2": "0x00000000000000000000000001000000000000000000ea5ddc9a5c630300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4488e4d63e5075ae58f2a115a49079591abc39441653f4640b1fb66b0fc8dd2d51db76a7ded96d2f603052c79c102a859": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4421e0a11a05b599114635ce32ea5890dcd14aa92dfba7adf3f6952588042fd0997dac96397cf5358afa7c8735b0b0ab9": "0x", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243d3107ca59e5d1c52b75ceaba26370b7bd0d237f90730d75b1dd726deadb158c448c7d6110fdb571b9a306ab21609e01f": "0x04000088b116afe3b50200000000000000424ca98c9522000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4c25b71060955ea843c65fbf58673a67eccfd6821fd2d3221faf7dc8680bc9965fc225661389ec2f52e60c817d8a1d2af": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da97efbf6c1171d21235f8cc7ab61ff2de24fcc4e54e2602b7ce46c5d4c87fd546b9d82c2318d68196fb2ba7c4594abb33f": "0x0000000000000000000000000100000000000000000040bd8b5b936b6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fa5c5e14851de25f7f56f13be97727a4c1e090826da0aff4db97b9212caa1902f6f8e0e5aa249a55009d9b3976bc4da195": "0x54101400000000000080c7881f89a03f0b00000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9d473fbd94ca0b57d8dc14fee5599b875f73bef45185623035375ce512f83ac52acace663c04d424d25cb050b8a3c7216": "0x00000000000000000000000001000000000000000000a877716b728d0d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0xa686a3043d0adcf2fa655e57bc595a784e7b9012096b41c4eb3aaf947f6ea429": "0x0000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9b428398afe6b68ef63603ff19b96fc003e836130b0ef225ebc200baf54beb61e8a707c529e7f28ff87f84f421401df65": "0x0000000000000000000000000100000000000000000010632d5ec76b0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd48a9c021f8ee00eef7e6c8853b4db5ffa4b3362b2a4c34dd0699ebdf4a5cb60f9af72495e70980a5ec3379e32e1c58330": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4243e644d3f1f20eacc2186e78041fb32355134f474c4369c9a31b2e1a5b991fa56dc2e0b790f002e124743042f6e226e": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fa834f1e43f41c370b23bf6b7643a47ea04056bb3bfc486baeb748deecb2bac15dc9ceb2730832270ec54b2137847735ac": "0x54101400000000000080e1d2f2dd6e8d0d00000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4834f1e43f41c370b23bf6b7643a47ea04056bb3bfc486baeb748deecb2bac15dc9ceb2730832270ec54b2137847735ac": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da99d2d321098020c874135d3cd8cc1dd23e47ce670fa341c73b97f178c7ad549b0ebcdf5fabef30296bb51529944f8a76b": "0x00000000000000000000000001000000000000000000ea5ddc9a5c630300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9fd9240ec95a0ecf279c3e5e0f91326d685508fc406fa865998c608b0b94a992c9939055f4a1b9412137214b2811d9529": "0x00000000000000000000000001000000000000000000e8890423c78a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x3c311d57d4daf52904616cf69648081e4e7b9012096b41c4eb3aaf947f6ea429": "0x0000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d872824366af7e91e9a6933cac314bef3c467aa1751513fe96ed4c5a466b2075dea2c3a8ba364e77dfbeffba3236154802f3c0b3": "0x04000040bd8b5b936b6c000000000000006dea73fa5d67050000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9b8d3520280d1edc39a740cca98a0be0d51b24b22701bd6543196ec23cd6c4636b49c06f9c9bf85b5c7d8e1e6ccbb64ea": "0x0000000000000000000000000100000000000000000040bd8b5b936b6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d87282439d2d321098020c874135d3cd8cc1dd23e47ce670fa341c73b97f178c7ad549b0ebcdf5fabef30296bb51529944f8a76b": "0x040000ea5ddc9a5c630300000000000000a9cfe9779d15000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9f8640cf9d93fb667704d31d8fd47a2bfdf7e18dafe8773dfd181571d4dc33f79fcd534ed2a07ab0a3e052de842500a8d": "0x0000000000000000000000000100000000000000000040bd8b5b936b6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x0d715f2646c8f85767b5d2764bb2782604a74d81251e398fd8a0a4d55023bb3f": "0x26080000", + "0x0d715f2646c8f85767b5d2764bb278264e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0x1809d78346727a0ef58c0fa03bafa3234e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0x1a736d37504c2e3fb73dad160c55b2914e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0x26aa394eea5630e07c48ae0c9558cef734abf5cb34d6244378cddbf18e849d96": "0x0000000000000000000000000000000000e1f50500000000", + "0x26aa394eea5630e07c48ae0c9558cef74e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0x26aa394eea5630e07c48ae0c9558cef75684a022a34dd8bfa2baaf44f172b710": "0x01", + "0x26aa394eea5630e07c48ae0c9558cef78a42f33323cb5ced3b44dd825fda9fcc": "0x4545454545454545454545454545454545454545454545454545454545454545", + "0x26aa394eea5630e07c48ae0c9558cef7a44704b568d21667356a5a050c118746bb1bdbcacd6ac9340000000000000000": "0x4545454545454545454545454545454545454545454545454545454545454545", + "0x26aa394eea5630e07c48ae0c9558cef7a7fd6c28836b9a28522dc924110cf439": "0x01", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da90038209da8837677a80cca183d7e56e766241b171bd08521a33dc807061373a092faea04252f58b70792e7c7ecfd500e": "0x00000000000000000000000001000000000000000000c4588bd7f15a0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9008155f894582b35e8b7953f66f55432a406b315d1eb8c378c34742b8d94c6ea4c47a5b1f578846d99578022e7a355d0": "0x00000000000000000000000001000000000000000000a877716b728d0d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9011c993ecb68f286c4197f01e93decb502ca701ab9010c86892e408ab69218aa7606c7cf494a19a2cd632abafc613905": "0x000000000000000000000000010000000000000000007c332aa12b541400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da902bc100d93c1cfbef693bdd87372717fcc2111e1db2fb155de143004c1ea354d2defb82e515667f0b9ebb80a4093a0b8": "0x000000000000000000000000010000000000000000002cf61a24a2290000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9047a7a8ef7756c3fa6977f657bfd387873dafde4839ffcaf83e1707c3807cc120f94fca94263bdea9524ad99d55fab16": "0x00000000000000000000000001000000000000000000b89d0d6955a00100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da905266dc77f47c6aac7e7c982f908ba630e71d5efbbb198c71e5d09cb50af4b8191c62ca64c2b933f052241647a45e00b": "0x000000000000000000000000010000000000000000001ca2a3f100270200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da905a6a028e0cf679dbf4df8bbd8e505c761bfb5776a9c0aed565379a95a287d4c7b6dc1566af98687897953289d10dcac": "0x0000000000000000000000000100000000000000000050efe2d6e41a1b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da905de498ec9e424a6be6b039622a653f3a18bc3e5e23439c89d70907a8cfb196206daf38308d90da0fa35b9466ef38d40": "0x00000000000000000000000001000000000000000080d3302802fb020300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da907c4b853d765230771578480daf9e544a794f7824a83ce11665526389772159d48fe598d7040fc2540e188f26c3db929": "0x0000000000000000000000000100000000000000000010632d5ec76b0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da908b32b49a41b56c678fc7c44a15b0a5c1ac8d44a5886dc8615ef2d1fa2a61e7cf49bdc562411d3558c0291f3d874ec64": "0x0000000000000000010000000100000000000000000040b2bac9e0191e0200000000000000000000000000000000000000000000000040b2bac9e0191e0200000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd42cd5d6b8efb2cd59856d56358a682c4b07724a32fd32825e3c1b45fa243b4784a4baa2f6342b2abefffb1a201a094c8f": "0x", - "0xc2261276cc9d1f8598ea4b6a74b15c2f218f26c73add634897550b4003b26bc672c13f7f4eaef96cf64e3cc8e7984e9d8c9138d2fa37cdda19528964efe98c0df5ca0bf5e6527af1a25d49b6057ed03c": "0x0476657374696e672000004186f67edf02040000000000000001", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da91470c3bcc7e8ba8cd403663b977c87b3b9489493994cb84cc3a75a3a7f08e1352487ee2bf3066b6affdb6b0fee7b1082": "0x000000000000000000000000010000000000000000007c332aa12b541400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da91c843dad558b5a2e12abcfee08b3a695eadbf15cd28e209358f6cef3b139a71e428254c2072948782bd94e9e8fcd3608": "0x000000000000000000000000010000000000000000004c31b8d9a7980000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da938478afc0631a8ff1b56df208a8a40d8329cff274f5850352624040b344ba12dc6a24ce6fa95fd82e95a45f3e4731f11": "0x0000000000000000000000000100000000000000000062acc5eb78ad0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4b26a85b49b16f2623c4c4e839f6622b563ec078a284d4bef2498322c2132632482ae56c6a8b934e78b9f528b8bfd88e6": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fa49644071d7f6f8ae2c4b5cc0e0da8c9feeedfa97bc9583acba109f30a692bf4082712f8b690d65316bcdeacade76224c": "0x541014000000000000805f8848177d950700000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da909046e5aadcef5bac8eeaac3064d3fff84e515ddbd862234751956bf90ac5dd822183899249191afe6aab9174779228e": "0x00000000000000000000000001000000000000000000703b1bd2aa400300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd449c7cfb200295b16976ccab33fbe60948efe6e88d9c540c54df4f0014268f38ce9b5619624e2ad0ea1511c97a2a321da": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9b7a4bfd5916b37c715ac45cdc09c51d03dbc062e3e5d1e4c0d709857023c2c3ce13bfdd722a417195a5287abefedfb0f": "0x0000000000000000000000000100000000000000000040bd8b5b936b6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fa9dbee7d35a1459e3206a8c8163a547cdbea0fba2208ad528ced1ca43acc10381ace90398c71554beae523b5b5f636d60": "0x541014000000000000002780d28fe9240b00000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d87282435764e6062b7c46dd1f124495282693e3559467a481d0b36f1f246f7c7836eac0fd45c45c91437565a4ef90bd11b62d69": "0x04000060157fd4c72d0f0000000000000042de80e0abc1000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd47f4ed3f227c1006260a6a99a59b7448a2d3b40a8c4c65fe36e23e3fc0b6eb18b60275c8a4a9c652d34e6325e8bb6b6d7": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9238f39e6052ad1efafb5b6010eb6bb52db206b80ac8daaadaf090a15611feba1029c135cc215cbe234f53fac0c118ced": "0x00000000000000000000000001000000000000000000d4bbb835b9c60600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fac25b71060955ea843c65fbf58673a67eccfd6821fd2d3221faf7dc8680bc9965fc225661389ec2f52e60c817d8a1d2af": "0x54101400000000000080b58eab1328541400000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243f8df09ae2d42f6ba4b1a3549759ee214ffdc7231a4f6136abf667f334580814f60ce7374cb62983fad77eff9de0578f8": "0x04000040bd8b5b936b6c0000000000000036f539fdaeb3020000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd48f2d315ae64b0dfd4f846bb71989658ebc112fab44560f2de284b2b97ee98ebec740a13249f9f1c809fb75188feeb242": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da94454e9267f65f2fddb9c9fdbb70d64b45a118d5d2e49a4b1517d5150fdf21ac83a4a6c13c32aea1ba44c10dc438c0a51": "0x00000000000000000000000001000000000000000000ea5ddc9a5c630300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x3a2d6c9353500637d8f8e3e0fa0bb1c5ba7fb8745735dc3be2a2c61a72c39e78": "0x00", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9ab9d6a2a796f939432f6e847441bc1f66fa6013bb0eb484f8a0eb2f68569734b35dafbadfab264f352cbd844a33889f0": "0x0000000000000000000000000100000000000000000010632d5ec76b0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x45323df7cc47150b3930e2666b0aa3134e7b9012096b41c4eb3aaf947f6ea429": "0x0100", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd41b28fc8d1aadef191a74eb9496de0bce9e132ecc18a16c9aa874aefaa44adec72229acd66efa734a8953cd53deed0daf": "0x", - "0xd57bce545fb382c34570e5dfbf338f5e4e7b9012096b41c4eb3aaf947f6ea429": "0x0000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd46c84be5fcb3126abda911f589a3ec42d8719681183a8e38a803a1f2ebed095e1e4fd0220497e335fec43918c3f96e160": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9e11f494c0e824f364a61cdf856a2320b70f7da648bfecbd0e7d47f4436e1bd81ba7ff80241a6be54cf7e63c0cad72f11": "0x00000000000000000000000001000000000000000000d4bbb835b9c60600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243496b9d267424345a13c01cf7256660a010abf8ffbb90d92395d891a798e4476ade3d28ae5f8c5c955b9199d995871a62": "0x040000aa23d301f2d80a000000000000004ca0a9e7678a000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd475185b0dc4c2bb6a5551d77278949631dcf5e3ab054ceacafe077846de5c0be8cd2bd1288de4f8da4f4354246e0cca7a": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd418df5aceac1e35b629b0da8605464092416effc5f4ec314564a9094804e9caf8248d17a96de3536776962aa44cc19f6e": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9f8df09ae2d42f6ba4b1a3549759ee214ffdc7231a4f6136abf667f334580814f60ce7374cb62983fad77eff9de0578f8": "0x0000000000000000000000000100000000000000000040bd8b5b936b6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da91f89d32a125f686b2d2d616b24542c084f599c28ddd2aa45cc4e3e6909531f75d7adfb3952e4fd50b9561b22057ea20e": "0x000000000000000000000000010000000000000000002cf61a24a2290000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd414a4d1dbe35b7ef57f8eeaf36aa28692e68e7296283d8412ed570e1810bb4c9d7790c79adbb3259600899ddd5d8ff454": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd405a6a028e0cf679dbf4df8bbd8e505c761bfb5776a9c0aed565379a95a287d4c7b6dc1566af98687897953289d10dcac": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4f6e8023bb1b4e9f725970ee15da9958f6e9ab5ca126703ebea216413f66232287b303dbb50795960a8f2ab8f6f32d16c": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da97f4ed3f227c1006260a6a99a59b7448a2d3b40a8c4c65fe36e23e3fc0b6eb18b60275c8a4a9c652d34e6325e8bb6b6d7": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9fa84a9ec3dd90bb88411a100bdb79fd03396be16ee113c440e2df3f3bf1cea861655a863097614a316a1bf02bfd1daa6": "0x00000000000000000000000001000000000000000080eb621b5653590e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4011c993ecb68f286c4197f01e93decb502ca701ab9010c86892e408ab69218aa7606c7cf494a19a2cd632abafc613905": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9993153c4ca37e123ac636637a013d4d0949fb97cd829a40f57bf7b9bbe0f27ac47fe93c8e231d229899c61ddb7870e3d": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d872824371d0162f359de5dcff9b13f6204d8eab5465176eec72af78d3a9469f63f155ac9b1bb93ab804916611e794a362b3c810": "0x04000040bd8b5b936b6c0000000000000036f539fdaeb3020000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da98cb96c0c7ea850acc4585a76c5d419f94887dfcbe03cbf03c019cf906a49ebd60e86655eeba88e68bfbd0e030b2eeabe": "0x0000000000000000000000000100000000000000000010632d5ec76b0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243b2f5c6d48600b9d571b32bba79b419fff2db084e7ec2187f01243fba4ae3c8c04ec8a60918ead09df668d7108076f2bd": "0x04000088b116afe3b50200000000000000424ca98c9522000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9a5f432bf32961d5fd0b2dde69f27a0555721f6fa1f73847072f23b8e2a029a92cc51a321f5da1b8570f150bc6c8185c6": "0x000000000000000000000000010000000000000000008c59c69e0e670800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd418e25905c9c1638aa578879a7d4f0dc386a11bcd325755742709041600110254410ed7a18f0f4ff50b3113d22b564279": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd46e773651e33b7dd1d240ee80c5e2ec4ef9ae1c7c784b3070f8d62a2ab52abed12a1a23c22ba0a2f02959aa0f291f9b87": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd40cd8e173faeb8eff3a5e2d65e4b0479e3c090beaafe7379cc6894f83bb056e9ad5fab6420432b3b5eda5ab5d9ae9a9e8": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd45db21c28e028f7dc1ea459542c77181cc75a2e423128629ad2e02443e4bd902d0f08ece6b435034adccc620ceab89fa3": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fa37a44bc559e32b5e2fe5eb04a1d4f7cfdb9d57d0c975dcbae8b2d545b6c50fc724fce0d54644d3c8a85057ca7d8c0f0e": "0x54101400000000000080b58eab1328541400000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243b0b59d78bf2ee14ad11460e58f9d6f4704e18eb080becf839a2e6a333c803ac4f1dc514b3a65f3ebc91ef805c73b7e53": "0x0400005cbee70f17300100000000000000fcbb60fd9307000000000000000000000000000000000000", - "0xa686a3043d0adcf2fa655e57bc595a78224445e9cab340d627a7b05c9e661260": "0x086a5c355bca369a54c334542fd91cf70822be92f215a1049ceb04f36baba9b87b000020c65abc8ed70a00000000000000768538a941d1e4730c31830ab85a54ff34aaaad1f81bdd246db11802a57a5412000020c65abc8ed70a00000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d872824362e7f643fd5bc73fc52e9629b6b90c0b05ff4954557faa2896b82e6acd54cdcebf6a7260894cfb1f47ba8d87202a60a6": "0x040080647593c1333c04000000000000009443e4d5041b000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4df7e09d2b8b14411dabd7e84c0783120951de44e62168c8b29520bfbf168850070b628332642849a8bbe44983238bb44": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9c399dfbb8067b0b4e63692009984eb5b11b7aea197984d7711449a2cdc1c16cc2f5748249dc4d8adafba46d60c41d50a": "0x0000000000000000000000000100000000000000000036687e2132740700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da942a352cb66de451d51a4b3c9189c8912f1ff949df72537aa5a9e07c9e1d6cb0fcd9826f592dc964472641991c6522676": "0x00000000000000000000000001000000000000000000483bdc43d8d70100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd438a3d7829288825384d522a03048d90d9c9e218ad3a96f0f3d1cd177e30fdd9641a19bd61809168cbf342f474bd89dc9": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9b4e2eb283b96514e38deb150cfddf68a5641a670536b50a86261ceab15c2457330384a6166e269b31cf34c928734b62b": "0x00000000000000000000000001000000000000000000a877716b728d0d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd44a9ee9e11db48f0175592477056bf107f4e07dada9cd0238198f24289cb9f0d7b9729a1c483cd96fa78a20e30c54708a": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd48d375a063d247674ae19360ad9d36c4aa76a92eda466612be10b1789158e12011b55b7685b3cf29597fac6dceb922f17": "0x", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da909c2c70529f4558f2a9cd22c20c3304c00e3e4fa4789f57ee08670dcdba4191f13f7f03d367df798c88fd6e79ed081dc": "0x0000000000000000000000000100000000000000000021501ffe30782200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da90038209da8837677a80cca183d7e56e766241b171bd08521a33dc807061373a092faea04252f58b70792e7c7ecfd500e": "0x00000000000000000000000001000000000000000000c4588bd7f15a0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd484651718030a8b13a8edce7f6278590fb7aa19fb9950a43440469a3e337c908b7af40543ec718544b7a58079e39ef48e": "0x", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da90ab2dd168f19aaf9fb571d8a60ffe9e6651f3d5a407dd40727c0409cb133377e1d245137cddd0dfd87aaeb26629224da": "0x000000000000000000000000010000000000000000005bacd32ba6d82400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da90ab73c969c5df7d03c64b11dbe8aee6fed6c7f8c0113066d68d24d3e0a54b14d98f9265abab08b2c4ee5d74ce4aa313a": "0x00000000000000000000000001000000000000000000d4bbb835b9c60600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da90bb6a83dba2ff107a1b2471919efeb20301828e741f8e3349cb4c8f22681597cdaa0041a0d009356b89a256450004a1c": "0x0000000000000000010000000100000000000000000040b2bac9e0191e0200000000000000000000000000000000000000000000000040b2bac9e0191e0200000000000000000000000000000000000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da90cd8e173faeb8eff3a5e2d65e4b0479e3c090beaafe7379cc6894f83bb056e9ad5fab6420432b3b5eda5ab5d9ae9a9e8": "0x00000000000000000000000001000000000000000080e1b0540604480500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9fb027e73befd88bc7424ec37e48b116234d570b29b50da141d62a96d5ea1dcc9e57a2a66a9fa45147b6a40a2a2b65ee1": "0x00000000000000000000000001000000000000000000d4bbb835b9c60600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4f4e4963c409ffdfa46e1424b14b02d8ecbc5c313673398ecd20f32a63b94affc3651919ac950b594d2fd42674cc77fd7": "0x", - "0xc2261276cc9d1f8598ea4b6a74b15c2f218f26c73add634897550b4003b26bc608b32b49a41b56c678fc7c44a15b0a5c1ac8d44a5886dc8615ef2d1fa2a61e7cf49bdc562411d3558c0291f3d874ec64": "0x0476657374696e6720000040b2bac9e0191e0200000000000001", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9dbad6a48be5e41538bf727193978fc8466f7271108a4562cec481ecf7d9cb4de50ac20cb0a875b94de25ffa145e4654b": "0x00000000000000000000000001000000000000000000ffe0349dfdc20a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243654c5b4e839914cc0c97db89891d5cca6211cbbf1344b3bd4054bdd163f0429e9fe5832c260e974e9e55c5dae3ca9e05": "0x040000df8c4ae80a1505000000000000007eb7de336c20000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4d16d25cea9713898976b6d453bb6c1fb4b0e0c0d95bea9ca3c384b78a806429ff4a731a43d50b3d8762f77265d01f5d0": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd44454e9267f65f2fddb9c9fdbb70d64b45a118d5d2e49a4b1517d5150fdf21ac83a4a6c13c32aea1ba44c10dc438c0a51": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4b0b59d78bf2ee14ad11460e58f9d6f4704e18eb080becf839a2e6a333c803ac4f1dc514b3a65f3ebc91ef805c73b7e53": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4b5727f435c3b53025b4e0093a4436e5b3fc478b6e33eb789cb4d0c7504dc7cd17872435253c873e3c3f2bff687a308d3": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9f54a9d879aef2f7404b696682dc7a150ad4cac04bf7ffa4e71b0a630ba420a35a38fa6c6e1bf1293c3895f08566ee211": "0x00000000000000000000000001000000000000000000b89d0d6955a00100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4654c5b4e839914cc0c97db89891d5cca6211cbbf1344b3bd4054bdd163f0429e9fe5832c260e974e9e55c5dae3ca9e05": "0x", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d872824352755e98dc4eff129a3c2a6d402800a8fbb942ccb01d679dabd754a67a57e181d035e58e602bb3918a2862fbe3c090f2": "0x040000be1995d0152a0a00000000000000fd6ebd67d840000000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d87282436c32f8e12b6e5d74956cd3f59aaf297d88a6e14d7ee3d398a5bbf1cbc23ebb2b060dae7e78ddac02aa91ca4e3bf0de7a": "0x040000703b1bd2aa400300000000000000e9c164428029000000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d87282437f4ed3f227c1006260a6a99a59b7448a2d3b40a8c4c65fe36e23e3fc0b6eb18b60275c8a4a9c652d34e6325e8bb6b6d7": "0x04000088b116afe3b50200000000000000424ca98c9522000000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243a58cb0c05075494cb0c64d79345201f595a910111666608bca19a4767ff1957c97ad79e6d2c33f0d22e1cb74ae177dbd": "0x040000a877716b728d0d000000000000004d7d4ebfebac000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da937a44bc559e32b5e2fe5eb04a1d4f7cfdb9d57d0c975dcbae8b2d545b6c50fc724fce0d54644d3c8a85057ca7d8c0f0e": "0x000000000000000000000000010000000000000000007c332aa12b541400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd407c4b853d765230771578480daf9e544a794f7824a83ce11665526389772159d48fe598d7040fc2540e188f26c3db929": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da940d5811f66cabeaee1a537e54af0a576d3cd2a65220b22f2213956dab0f7cd077f5b77279cea9f336b0562469cf24baf": "0x0000000000000000000000000100000000000000000010632d5ec76b0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d87282437d0ce3718c7eadaad159d592b40399a161d4e61d5caca8477005a7a2270afe0d46899c97cd11230bd8d91427a573afb9": "0x0400804b83ab1f2098320000000000000070c7ab16c642010000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243da841dec8dfd73ab260b5a2dc6c041df9c393c0bf47418e40286f14822cab057b69fc111e6c28809d94cae387eaffe22": "0x040000ec6a14c6fc670802000000000000f4a1b19b0098020000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd41f89d32a125f686b2d2d616b24542c084f599c28ddd2aa45cc4e3e6909531f75d7adfb3952e4fd50b9561b22057ea20e": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4a933bf37224186f955260f85d9dd8153b9817607cbaa3b2b55134c31aaf0743e2951643db7b33d89b2f122c61a2e29aa": "0x", - "0xc2261276cc9d1f8598ea4b6a74b15c2f218f26c73add634897550b4003b26bc67d7d473c8f985b4811f6f7c364b759da628da4055a812ca4145c75c38734138b6c62f0402ff1feae649be54d4c42c32e": "0x0476657374696e67200000aa23d301f2d80a0000000000000001", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fab48203d2c55b9a6b03b0b798d17cc48cb9b053d4c0967a7155dd5a6c3bf55dc5acf8922dbde40ab1f1eaa9e151907d38": "0x54101400000000000080b58eab1328541400000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da93cdda083f101c55f02ac371e252d616fe721f7351192890298e08d1ea08b0356622b0c5f91c27faf6d6831ad53be79dd": "0x0000000000000000000000000100000000000000000050efe2d6e41a1b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243123d9afd81b2f03b75d6a208905a9c8edd907656f86d6d92edde215e7663d9e75123d3ef061486cc2cc34bebe5b37ce2": "0x040000d4bbb835b9c60600000000000000a63ea7df7556000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9653f9ae8c00acb30c3a91ca50fc193bc6a5c355bca369a54c334542fd91cf70822be92f215a1049ceb04f36baba9b87b": "0x00000000000000000200000001000000000000000000a0dec5adc935360000000000000000000000000000000000000000000000000020c65abc8ed70a00000000000000000020c65abc8ed70a00000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da92c11dcc175a2ef3ef07f0210bde82800f77c9dafbf4d6e326665db143950fbdb86ac84c93f6281cc337e66318dd33fc7": "0x00000000000000000000000001000000000000000000a877716b728d0d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef734abf5cb34d6244378cddbf18e849d96": "0x0000000000000000000000000000000000e1f50500000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243813115721766ce06270a07326b11f417eaaa8bf827b40dfe5776f1f3020c8352c1d68c4d796e43ced8f4cee1cf3e5cff": "0x04000040bd8b5b936b6c000000000000006dea73fa5d67050000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da91ed7566e109c3c7e0bfad1ee26f042740a808bbf0febca21cb3d271ea358bf65d23ef25e6d48d869dfc0288e5661cbfe": "0x00000000000000000000000001000000000000000080d50ecb734c1d2000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4cfac8f76f1218dfdcf307de03803b57b25503d870d273f5041911ce64638d97bdf453aac529feae4435ff33de0067201": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd41a703197c4212320e897080995e4e36b2ba37175566430cf84982f55bfbe6d418fdeaf6ca7bab076b2b89b2f8b078ef9": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9eac90b8d599c25a5798d0896ae8e2b4bbe1dbcf4234b70c81a518378e72b67aa7cd06b122ebb7658562472167e8e231c": "0x0000000000000000010000000100000000000000000092d54d06cff0100000000000000000000000000000000000000000000000000092d54d06cff0100000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9dd7337d2ce0eca168226b2466d093bacb3d9bc87518ccbd1f8d81a45cf9f1645d6de2eae4b74ea66234557d4b55318a8": "0x0000000000000000000000000100000000000000000092d54d06cff01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fa77474612b0165954ef1656f4d00a633ba758b3dccd3bacc6bdf0666f5ab2a81cbc75a355d00eeeb4540538e484e6819e": "0x541014000000000000801d7a67067d320c00000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd41d57e46b5371b96df9e72922653c5459c31b8a17c8f2bad666dade9ba56bbd748d080d4b1dedf7d943da4eb289506c9a": "0x", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da90e35115b2d8165fb696037e703d17b8a00f6c8612150bb014990d3428dce630de0bf17864c8c76096f8e65c74bf13f55": "0x00000000000000000000000001000000000000000000fac009f923cf0800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da90ea384db833802a1abc8db31d48e925abbf6cc6e5258a119f696feeb0c2ea5b854c1dd08024998e8c70afc815c629879": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da90fe66eadfa8d31121235ec8c8df35ad75476e0c84db6bd2688e3564051530e61fb95e44ce2d7bca1c06b0915651624b7": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da910c20c95d184303aaab86de1cbc44398bd5a819811cfeb468a4d8ab7eedc49df52df18395be227d222acec34db493f37": "0x000000000000000000000000010000000000000000007c332aa12b541400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da910eed07487d5176ed408b3c8e997831d6b506daa6e92c4e42eccc9d6aef5b020effcf1ffcd89b9d11056efa1632eb84b": "0x00000000000000000000000001000000000000000080a41e21dd644c0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9111774c6281a01fc7c2ad34499ed8edbcd138aff265310b93ceceb1ba79b9b5e68dcf8cee21b976ca1ae43a0c8011389": "0x00000000000000000000000001000000000000000000e8890423c78a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da91159a5f9199c7d512270630c46bd68938c18a444bfe52f834ce9bce580e33f38368b654c815392cd669564799e209ee7": "0x00000000000000000000000001000000000000000000f9308740d11c0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd419823aaac33b2b924a18ddd82576c455253c75708fbc38dea1f8c3ba1169204f11f129a64d7341049af8bb2912ab7253": "0x", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d87282432a67c4eb1ca61688a0cb67bfacaf2c7ca01240d0c36c19ef4701f2d27a77b4d3254f4aad7461fd4bff2ee4180cfa1fc6": "0x040000111b99ae32900a000000000000003101e5b2c786000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da98a9b07c50f5f9b448b4fc071aacda5ee5cf4bac7a9ac479987871eeaf8799a4e3189b19e158612c0f25480560dc1f0da": "0x000000000000000000000000010000000000000000803094200036960f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da99717298a4f5fd89afd62da6109d86d2ff5fa080fcb09ce1fabad6a20cdf1dae1e499194cfaa98673d13c5baec42f59cc": "0x000000000000000000000000010000000000000000807632aafcbc3a0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd45c5e14851de25f7f56f13be97727a4c1e090826da0aff4db97b9212caa1902f6f8e0e5aa249a55009d9b3976bc4da195": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9243e644d3f1f20eacc2186e78041fb32355134f474c4369c9a31b2e1a5b991fa56dc2e0b790f002e124743042f6e226e": "0x00000000000000000000000001000000000000000080deb01440d5820200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9b3e7734e0f1365819f1c8ade9db4a66a69caa96417cd88dc2aef0ec2690f23574dad09cf6f4a39d87b928c0a4baeba3e": "0x00000000000000000000000001000000000000000000f18ae57389663500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243b7de2f26a60f50022fcc854895e884d6d33eace5a5beb1628fe218d615bfbccfca6cecb606601652bfdfd8a053e069cc": "0x040000d4bbb835b9c60600000000000000a63ea7df7556000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9b3c6b2fa810aa6d5e298e4583aaf90a21516bca37fab03241448825a9d76f0854020c753f7a5db1d188f58b5129a7a28": "0x00000000000000000000000001000000000000000000a0dec5adc9353600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4f2f5bead9dd475a3609f9371f8db7a3259df73598485bf578f190b9922cce88fb93fdff3037dfe9a9901edf97ffe565a": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9ab908e0476348ad26e45cb0076d506d3d16f0678bb8218c19df2df6c4b529dbc108a9ec5afc39eb57022172f6defe611": "0x00000000000000000000000001000000000000000000d01309468e150100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4141d668cd6e871e47a72b276e890ff27d1f5597346aa9ffd3a1c5e7c7327bacbdd93aeb9f69d21c6c21abba9c0d25d34": "0x", - "0xa686a3043d0adcf2fa655e57bc595a7810ac9a39e38878ed8b6d2574e4e31afc97fbb62e872d951c6a5c355bca369a54c334542fd91cf70822be92f215a1049ceb04f36baba9b87b": "0x00", - "0xf2794c22e353e9a839f12faab03a911bbdcb0c5143a8617ed38ae3810dd45bc6": "0x00000000", - "0xf2794c22e353e9a839f12faab03a911be2f6cb0456905c189bcb0458f9440f13": "0x00000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da905266dc77f47c6aac7e7c982f908ba630e71d5efbbb198c71e5d09cb50af4b8191c62ca64c2b933f052241647a45e00b": "0x000000000000000000000000010000000000000000001ca2a3f100270200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9547c71739b61d22ef65d10364ff0a0a2a632d21dc803b56b1c8cd0ed27629883e9cf6deb653ec074f9cc4ea91404e972": "0x0000000000000000000000000100000000000000000050c5acd847830300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9a21a88dd97cf42bf00067ab7e5e030e5f6a6f336f18005c21f0e70982f72c49f789e2be7bb0bdd1dbafb0d66ca693319": "0x00000000000000000000000001000000000000000000203b9db5056f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da911fcf3e922de10898cb04273301735e65270ec35ba01254d8bff046a1a58f16d3ae615c235efd6e99a35f233b2d9df2c": "0x00000000000000000100000001000000000000000000e8890423c78a0000000000000000000000000000000000000000000000000000e8890423c78a000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9123d9afd81b2f03b75d6a208905a9c8edd907656f86d6d92edde215e7663d9e75123d3ef061486cc2cc34bebe5b37ce2": "0x00000000000000000000000001000000000000000000d4bbb835b9c60600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da912401e72171e3a3c0b63b44d49bfaebc39c1c82ffa22143597a4d812a2b64f29ae49c63a9dfcf24197651efc9bb389e3": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da913a897f9c4b4fc25ceacb2ee73bd1d951585c0fc6d0afdb45bd1d133ab9e6b08486a427659b8e44792cb342d77b99d31": "0x00000000000000000000000001000000000000000000f84a5a4ea23e0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da913b47d5a37d3bf28be8be705d0184caf773daf86370e3a6df97744b76aed7b1bd1fa6ed770a765392852947735552757": "0x000000000000000000000000010000000000000000004c31b8d9a7980000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9141d668cd6e871e47a72b276e890ff27d1f5597346aa9ffd3a1c5e7c7327bacbdd93aeb9f69d21c6c21abba9c0d25d34": "0x00000000000000000000000001000000000000000000203b9db5056f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da91470c3bcc7e8ba8cd403663b977c87b3b9489493994cb84cc3a75a3a7f08e1352487ee2bf3066b6affdb6b0fee7b1082": "0x000000000000000000000000010000000000000000007c332aa12b541400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da914a4d1dbe35b7ef57f8eeaf36aa28692e68e7296283d8412ed570e1810bb4c9d7790c79adbb3259600899ddd5d8ff454": "0x000000000000000000000000010000000000000000001ca2a3f100270200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9165f813a3c8a066c04403c23e10513804d11c4abd2c3ee4c87d0aa7cd4a133404d619293e6192aaeb12bf6dc7141cd54": "0x0000000000000000000000000100000000000000008004c87a6a3e7d0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9167bd52dae4220277e9b0aabe7fd6618f3f2f357a84ce843593d91d085d4c568c3d52c6ece67e0c19c1e364bca500e9c": "0x0000000000000000000000000100000000000000000010632d5ec76b0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4f86837afdbeb9ed3d98aa822f46f7f0847f0106057b9c0d509445c72da68161b2811e100eab2b1ac7b40e64a129b39b2": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd428f484bf7b7b236bd15693657a19914aa220eb5dff08cfaf3d7a591cf9e773e4c9f0d9f93bbcfe900d17db8730fda4fb": "0x", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d87282432cd5d6b8efb2cd59856d56358a682c4b07724a32fd32825e3c1b45fa243b4784a4baa2f6342b2abefffb1a201a094c8f": "0x04000088b116afe3b50200000000000000424ca98c9522000000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d872824350ca0f8e48c7b76efba51492eba77019d60ef7c5bed47d4b0b3b22adf44769eca987352b057a81d05a9668262d1fac37": "0x040000b348031ec4db0b00000000000000d156b223a74b000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da97d0ce3718c7eadaad159d592b40399a161d4e61d5caca8477005a7a2270afe0d46899c97cd11230bd8d91427a573afb9": "0x000000000000000000000000010000000000000000804b83ab1f20983200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd405de498ec9e424a6be6b039622a653f3a18bc3e5e23439c89d70907a8cfb196206daf38308d90da0fa35b9466ef38d40": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd46f10eb2dce9f15d9f5f753823722bdb5ecf462897281394f1994ac9856e8d8dd846793c3736bf8f36c1c7167f368fbc4": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9472a3ddaa9ba8b9b479fa42c37d546ad8c8516b0a61dd000459a6d969868f820a3a584fbb1c9778c6a8b3f6bf045c028": "0x00000000000000000000000001000000000000000000e834fdc605f97900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fa0e35115b2d8165fb696037e703d17b8a00f6c8612150bb014990d3428dce630de0bf17864c8c76096f8e65c74bf13f55": "0x54101400000000000080331c8b6b20cf0800000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243421e0a11a05b599114635ce32ea5890dcd14aa92dfba7adf3f6952588042fd0997dac96397cf5358afa7c8735b0b0ab9": "0x040080e21376abd6451900000000000000229c16ac7642010000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd40fe66eadfa8d31121235ec8c8df35ad75476e0c84db6bd2688e3564051530e61fb95e44ce2d7bca1c06b0915651624b7": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fa962a9f76c4d2d5084e20b7b813dfa633d0d0d2465dd64a16fbb5a52ecbfe87e4a414240e33e41dc6474e5cb462da5161": "0x541014000000000000806984098d52431000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da918df5aceac1e35b629b0da8605464092416effc5f4ec314564a9094804e9caf8248d17a96de3536776962aa44cc19f6e": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da918e25905c9c1638aa578879a7d4f0dc386a11bcd325755742709041600110254410ed7a18f0f4ff50b3113d22b564279": "0x0000000000000000000000000100000000000000000028003f8ed2680100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da92a30a2a23fb351a2ce34b759d1026ca9d08da0b33b808d36fa61b85125b6e0b714c4c2e339b95f16283f5ea3300ed3b8": "0x000000000000000000000000010000000000000000804bc2602aacb70000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fa8333774cfe3dcd38f02ecaab798bba9480fedc83c94ea1d7f45f99ba3aa9e4744cbe9ad0784467b7f7eb4bfa58b6edb7": "0x541014000000000000800d173aa8b5c60600000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9fa489d0f39a8d8d61442bafd5f9b4487211199ca46f3b312821a8c43161813ab164c2f00636c550aa3e48c3c8d96a255": "0x0000000000000000000000000100000000000000000040bd8b5b936b6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d872824372c13f7f4eaef96cf64e3cc8e7984e9d8c9138d2fa37cdda19528964efe98c0df5ca0bf5e6527af1a25d49b6057ed03c": "0x0400004186f67edf020400000000000000373a6b189719000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9193717753455332c0dc4f765f481ea352174ace194300ced867d118d5f4c556dfa5f85d50e3d01b69f4c1dec054615ee": "0x000000000000000000000000010000000000000000007c332aa12b541400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9196285edc0505b3296a306e0fa52cbd7cfa6910113062b80483f7cbfa38268b3e7911944077fd555bae464a7d89a6bf0": "0x00000000000000000000000001000000000000000000485637193cc34300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da919823aaac33b2b924a18ddd82576c455253c75708fbc38dea1f8c3ba1169204f11f129a64d7341049af8bb2912ab7253": "0x0000000000000000000000000100000000000000008092013c4b3b310200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da91a703197c4212320e897080995e4e36b2ba37175566430cf84982f55bfbe6d418fdeaf6ca7bab076b2b89b2f8b078ef9": "0x00000000000000000000000001000000000000000000d903cd71ab2c0700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da91a8f6bd5494d74f33f1fbac904e7d349d04140ba9a3c03878d3a751bc6a13b648ed45c50785347e1267fe65bd5345895": "0x00000000000000000000000001000000000000000000d4bbb835b9c60600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da91b28fc8d1aadef191a74eb9496de0bce9e132ecc18a16c9aa874aefaa44adec72229acd66efa734a8953cd53deed0daf": "0x0000000000000000000000000100000000000000000028003f8ed2680100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4f8df09ae2d42f6ba4b1a3549759ee214ffdc7231a4f6136abf667f334580814f60ce7374cb62983fad77eff9de0578f8": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd450ca0f8e48c7b76efba51492eba77019d60ef7c5bed47d4b0b3b22adf44769eca987352b057a81d05a9668262d1fac37": "0x", - "0x3a2d6c9353500637d8f8e3e0fa0bb1c54e7b9012096b41c4eb3aaf947f6ea429": "0x0400", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da91c0103457ed7d16ea3c2200d16ecf21289c8fdac7d863b8d0b9ef23f78c5fda3e61602f83d2526b09e2a9fda94b05dd8": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da91c6bdf3a51d71bd6b26a907cecebbaeaf55f275fe555d0832a239b75fcc14edde7f00815271d60821c98c56fba2108a7": "0x000000000000000000000000010000000000000000007c332aa12b541400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd41ebc44e32ec2d5f27d0d564aced42548da861e6473107b9fbac66e6cc9bac3e302d37abb25df57d3ef025ec8440aff6f": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fa96cde687170c504e3a8633cee85f7b9a97a55ae82df0968bf491fe6cf75633ee030837da3729cb7db5de957c8e325bdf": "0x541014000000000000805921dc2e8bd70a00000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da975185b0dc4c2bb6a5551d77278949631dcf5e3ab054ceacafe077846de5c0be8cd2bd1288de4f8da4f4354246e0cca7a": "0x0000000000000000000000000100000000000000000089b3efdbd75b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4a21a88dd97cf42bf00067ab7e5e030e5f6a6f336f18005c21f0e70982f72c49f789e2be7bb0bdd1dbafb0d66ca693319": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4dbad6a48be5e41538bf727193978fc8466f7271108a4562cec481ecf7d9cb4de50ac20cb0a875b94de25ffa145e4654b": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4dd88ee968529cd4c31ee11c344ed67414b579d1fc9a20bd2b01b620c2c4785e02444e723086d07d776bfb8b3954b6857": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fad16d25cea9713898976b6d453bb6c1fb4b0e0c0d95bea9ca3c384b78a806429ff4a731a43d50b3d8762f77265d01f5d0": "0x54101400000000000080b58eab1328541400000000000000", - "0x3f1467a096bcd71a5b6a0c8155e208104e7b9012096b41c4eb3aaf947f6ea429": "0x0000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da98fe871e416c75335d38292ce5a4632e7ec3237a87bb923f59c0aec55f34eced3cbe83445a93595fd8251e3f0630fa1b0": "0x0000000000000000000000000100000000000000000020c65abc8ed70a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd496cde687170c504e3a8633cee85f7b9a97a55ae82df0968bf491fe6cf75633ee030837da3729cb7db5de957c8e325bdf": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9520c3b5abb39bb9bddf88adcfd3045125ac771ace1bbff810939e05a04716e98a6c002598ee07cfbcb2f7defef8bf138": "0x00000000000000000000000001000000000000000000d01309468e150100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fadb243040a685617388a6a7999e87c8cab6040e7bf3d981b810f0b2d605a0acb337dc5bd1cd4e221325265fee7334814d": "0x541014000000000000801d7a67067d320c00000000000000", - "0xc2261276cc9d1f8598ea4b6a74b15c2f218f26c73add634897550b4003b26bc6eac90b8d599c25a5798d0896ae8e2b4bbe1dbcf4234b70c81a518378e72b67aa7cd06b122ebb7658562472167e8e231c": "0x0476657374696e6720000092d54d06cff0100000000000000001", - "0xcec5070d609dd3497f72bde07fc96ba088dcde934c658227ee1dfafcd6e16903": "0x086a5c355bca369a54c334542fd91cf70822be92f215a1049ceb04f36baba9b87b768538a941d1e4730c31830ab85a54ff34aaaad1f81bdd246db11802a57a5412", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4d770b5646aa0f2597975d1b2361ec02d9997d35a0b0584e18076cf420d7295a7e9d8a8a078760dea6d184411ea83c77f": "0x", - "0x3a63": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4929739a53fda1775df906d3db633132294d5f05ac375fe047f1b4f699e1dea6c585c82071d81fffd59e62c39f7c171ee": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4ab908e0476348ad26e45cb0076d506d3d16f0678bb8218c19df2df6c4b529dbc108a9ec5afc39eb57022172f6defe611": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9c5c1c72da1bd7fc39f65ee5b6286ecbc6c848f4c75b46c62f5b6995e93cfcae8ac2cc53d59b5d1074d6b3795ad217c4f": "0x000000000000000000000000010000000000000000007c332aa12b541400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da984954f97bb03137be465c9e08ff0bf920d45f0ef0221693f976f1c7aed9c5e9c2c97c8078295b56edae6943923cc67f7": "0x0000000000000000000000000100000000000000008075c07908bc240000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9b26a85b49b16f2623c4c4e839f6622b563ec078a284d4bef2498322c2132632482ae56c6a8b934e78b9f528b8bfd88e6": "0x000000000000000000000000010000000000000000007d9f046b66306400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd442e910c58c81ece4bd0de09832f1a5a08718fbdbf3edabb9e7d9589b03dc39bede72111dc9959552cc511b1b0370d404": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da943f68e2f29bf5ed665c97906008b033a3e725c262081e9460accd50c1e0d8c1493a4617e0038e8aaa818aa57a071be6e": "0x00000000000000000000000001000000000000000000a877716b728d0d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4aa45f6639f5cae3bbccb661fc165f7aee245a8f86dfab58f672fecabe547f5bf7ed54869a24c6e55311edd0a8bee478f": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da910eed07487d5176ed408b3c8e997831d6b506daa6e92c4e42eccc9d6aef5b020effcf1ffcd89b9d11056efa1632eb84b": "0x00000000000000000000000001000000000000000080a41e21dd644c0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9bca66ed8fe7bc989244d435f3cb33bd3100bf68c67714f65574e27f4cfc3ae3344771d4d96c60f86a9c0d5178c249a99": "0x0000000000000000000000000100000000000000000036687e2132740700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da939f191d78c002ed1b8a55de5e32bdfd96d6f646c6b696c742f7473790000000000000000000000000000000000000000": "0x000000000000000000000000010000000000000000a0724e180900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fa8fe871e416c75335d38292ce5a4632e7ec3237a87bb923f59c0aec55f34eced3cbe83445a93595fd8251e3f0630fa1b0": "0x541014000000000000805921dc2e8bd70a00000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243a9ee99305234e672d5cdd2bdc179c2e01c62f8ac085fdfbd1935895a994c9761ebba22c2ea6a8e00c4abfb4b5db1dcd6": "0x04008063c964ce1bc20000000000000000e30622b1ac09000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0faa933bf37224186f955260f85d9dd8153b9817607cbaa3b2b55134c31aaf0743e2951643db7b33d89b2f122c61a2e29aa": "0x54101400000000000080b58eab1328541400000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd44bbaad4e13a86f5ef31f4c438179660f897410d586fc7aa556fbad6acfe8f32237a4897a4573475941df6fb8bb3aa225": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9c94ef00051509e6966616e4fa7c883d2cf4d87628d9776d82e2a608e05ab70a8d81c2e02a5dd2b4fe428a11e997c20a1": "0x00000000000000000000000001000000000000000000d01309468e150100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd457978ab76d55e8a45eb90de986bfb21d2af7838d1bb344b8e700b3ba5530f448a0a471296e88ac104bcb606880478c9d": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da96c84be5fcb3126abda911f589a3ec42d8719681183a8e38a803a1f2ebed095e1e4fd0220497e335fec43918c3f96e160": "0x000000000000000000000000010000000000000000004c0aa286d5100400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da972c13f7f4eaef96cf64e3cc8e7984e9d8c9138d2fa37cdda19528964efe98c0df5ca0bf5e6527af1a25d49b6057ed03c": "0x000000000000000001000000010000000000000000004186f67edf0204000000000000000000000000000000000000000000000000004186f67edf02040000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd40ab2dd168f19aaf9fb571d8a60ffe9e6651f3d5a407dd40727c0409cb133377e1d245137cddd0dfd87aaeb26629224da": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9928d77d4eed551cea8caa01104e35ccb88086a1607427949f024de5583f335b584187bd2c29877210832c0a5de2281f4": "0x0000000000000000000000000100000000000000008013f375d31b370000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da918df5aceac1e35b629b0da8605464092416effc5f4ec314564a9094804e9caf8248d17a96de3536776962aa44cc19f6e": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da96fd81811d76d99582f4818933ee0ae77bd642527d72ac58f627f0dd4dfb801b54633459f3e255f08c581b14aba03890c": "0x000000000000000000000000010000000000000000007c332aa12b541400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd42c11dcc175a2ef3ef07f0210bde82800f77c9dafbf4d6e326665db143950fbdb86ac84c93f6281cc337e66318dd33fc7": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd45d9b4c51def7e60aac14fbd7537ec31d73539b13d84475ecf112fc41585e8b48dc1ac4b871be0ecea1e0f003a02032c8": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd477474612b0165954ef1656f4d00a633ba758b3dccd3bacc6bdf0666f5ab2a81cbc75a355d00eeeb4540538e484e6819e": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4d19c224383fb618182192773fc9013c70280948c5a15efca05c1ec3bd8f6c16288428ad229ec98e119b70dea63002f0c": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4f07995e3074904aca3ee6054624bbf83cc8e9cb3c8765d635c07c0fe2c64cdef0b47ff3e0ba3d50fbd07e24cac984498": "0x", - "0x3c311d57d4daf52904616cf69648081e5e0621c4869aa60c02be9adcc98a0d1d": "0x0866c4ca0710c2c8a92504f281d992000508ce255543016545014cf0bfbbe714297cff6c7a53c4630a0a35f8793a04b663681575bbfa43dbe5848b220bc4bd1963", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fa4bbaad4e13a86f5ef31f4c438179660f897410d586fc7aa556fbad6acfe8f32237a4897a4573475941df6fb8bb3aa225": "0x54101400000000000080b58eab1328541400000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd48333774cfe3dcd38f02ecaab798bba9480fedc83c94ea1d7f45f99ba3aa9e4744cbe9ad0784467b7f7eb4bfa58b6edb7": "0x", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da91c6ed5f9f8c114d493b279b219e362861b64d20ff82575998b6065e9b31b54a03e5160e13ed3fcb00e607ad27fc0b894": "0x00000000000000000000000001000000000000000000e8890423c78a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da91c843dad558b5a2e12abcfee08b3a695eadbf15cd28e209358f6cef3b139a71e428254c2072948782bd94e9e8fcd3608": "0x000000000000000000000000010000000000000000004c31b8d9a7980000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da91d57e46b5371b96df9e72922653c5459c31b8a17c8f2bad666dade9ba56bbd748d080d4b1dedf7d943da4eb289506c9a": "0x0000000000000000000000000100000000000000000040bd8b5b936b6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da91d591561cfd342a533cdd62ea12cd37b23e8cded630a02a99ce7ea504bc270ef66070d461d4fe3afc541cad1fb879097": "0x00000000000000000000000001000000000000000000827220a807850b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da91dcffda847e8fab75a973a69e4fc78f811469e86b311cc9e4b08215f4f16468fd36d0fbcf8c557a4e7fb4c088d064b8c": "0x00000000000000000000000001000000000000000080eb621b5653590e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da91ea10ddc22ce3248c726195d83c1bfa9399232899607eee84bd2e642e90ba677f7ece4e544296cc1f245a76da0eb3f5a": "0x00000000000000000000000001000000000000000000a877716b728d0d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da91ebc44e32ec2d5f27d0d564aced42548da861e6473107b9fbac66e6cc9bac3e302d37abb25df57d3ef025ec8440aff6f": "0x0000000000000000000000000100000000000000000020c65abc8ed70a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da91ed7566e109c3c7e0bfad1ee26f042740a808bbf0febca21cb3d271ea358bf65d23ef25e6d48d869dfc0288e5661cbfe": "0x00000000000000000000000001000000000000000080d50ecb734c1d2000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da91f2a387ba8a3db1fbf407adfaa62ba08dc8e39b099aac859321539ec7ebaf3d65ad9ed94b984990159f21c0b35995717": "0x000000000000000000000000010000000000000000007c332aa12b541400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da91f89d32a125f686b2d2d616b24542c084f599c28ddd2aa45cc4e3e6909531f75d7adfb3952e4fd50b9561b22057ea20e": "0x000000000000000000000000010000000000000000002cf61a24a2290000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da920b3af82a22e60f145a55ba4575cabad2aabe8a8bdae388cd746f995b878941d2deb0b4cc9b0995cffab8a1e2f34e3a5": "0x000000000000000000000000010000000000000000804e3557f3bf750300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9210d42a24de0ae486aa28f8b7c8ed3d165641861b98ffc60f24091b4ec914345f259cd283ec6b621fba1e7af7a89d66a": "0x0000000000000000000000000100000000000000000040bd8b5b936b6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da921507eeff5a52d6d02cfe57864aa602be74c9728a9f42e3b3a2ef5b122cf2ffb5a37ec2309cfee2b6eaef39c6b77a2aa": "0x0000000000000000000000000100000000000000000098451af020de5e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da921d1c19e418427112b1e953eefd634ca379b8847d0cb00c709664b596a61e6eb04b1aca46e529be5699b8e4308d9e4ca": "0x000000000000000000000000010000000000000000807ca242c019bc3700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9225ffa4176a6bd2bf34cd8cf344b56c3e7ad9115cb94aea2f03aee9df47e96bf3abfa6d4b1f97e54a27d93a87eefde9b": "0x0000000000000000000000000100000000000000008088a60c0d096c0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9238f39e6052ad1efafb5b6010eb6bb52db206b80ac8daaadaf090a15611feba1029c135cc215cbe234f53fac0c118ced": "0x00000000000000000000000001000000000000000000d4bbb835b9c60600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9243e644d3f1f20eacc2186e78041fb32355134f474c4369c9a31b2e1a5b991fa56dc2e0b790f002e124743042f6e226e": "0x00000000000000000000000001000000000000000080deb01440d5820200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da92652dab2948830bceff5754b7abcc8b05f08078b6b50b5e396a5d45d38581415ab8c0a3c64b6067f4d2f1a153167e25b": "0x00000000000000000000000001000000000000000000404f241839560400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da927464e2a3147e039f782ca46277d39135a74972bffc24b19546f2f4c3cefd4103cc62905d29f402120e0f54c2c2afe0c": "0x0000000000000000000000000100000000000000000040bd8b5b936b6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9275940a8cfe39c56d3c12dbb779bfbe339710d562e971f963c9523bcebb9fcc57dd93ee65e5495b5418ccedcef2a6aea": "0x00000000000000000000000001000000000000000000e8890423c78a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da927b2aa5fd18f1465e4f165d6d1090f7a7645bbaacc77083cf2856ab1d95580f4f328935dadf001b83a9025dc163497aa": "0x0000000000000000000000000100000000000000000040bd8b5b936b6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da928f484bf7b7b236bd15693657a19914aa220eb5dff08cfaf3d7a591cf9e773e4c9f0d9f93bbcfe900d17db8730fda4fb": "0x0000000000000000000000000100000000000000000020c65abc8ed70a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da928f8ceb71a4d04d2885b6d145d1a9fbdc1ef936211ee37e34057f68a2fbb22fffc389e2e2767c935090fd09a70b2212e": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da929861ef9c26f604adba8b3749e29aa72d3b2fec896bd5e11f7f133748d0c1e516058da7f76f06129c26b0432e607c6ca": "0x00000000000000000000000001000000000000000000a41dee21eceb0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da92a30a2a23fb351a2ce34b759d1026ca9d08da0b33b808d36fa61b85125b6e0b714c4c2e339b95f16283f5ea3300ed3b8": "0x000000000000000000000000010000000000000000804bc2602aacb70000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da92a67c4eb1ca61688a0cb67bfacaf2c7ca01240d0c36c19ef4701f2d27a77b4d3254f4aad7461fd4bff2ee4180cfa1fc6": "0x00000000000000000000000001000000000000000000111b99ae32900a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da92b66c29707383de0ca389a677d48a6bc5c8e0e8ce9b5edf5df15710fc72967075784afe05209c26743be8ccb9f0a7d37": "0x000000000000000000000000010000000000000000806764041cadde0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da92c11dcc175a2ef3ef07f0210bde82800f77c9dafbf4d6e326665db143950fbdb86ac84c93f6281cc337e66318dd33fc7": "0x00000000000000000000000001000000000000000000a877716b728d0d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da92ca9059ce1e594cdedeab74f3f0ebd91f3b6f7351ef023a2a93fa11bffba602d302be2439743e223e3ae59b97199f127": "0x000000000000000000000000010000000000000000006c01d325daa46500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da92cd5d6b8efb2cd59856d56358a682c4b07724a32fd32825e3c1b45fa243b4784a4baa2f6342b2abefffb1a201a094c8f": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da92d5f0159a37fc8cc1c1b9677d93f4877d1d1c89c8cde97b88dd4172426b7d51f952fc15a239905ceac876cce979866fd": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9304fda1324a8ba8c36b4ae11d1ef2faf21d7fb9660c76f96436407fa440d324041491c9116c329fc7ac705ad98407f30": "0x00000000000000000000000001000000000000000000388a823f6c5c0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da930caa735aa9f519b8d7005229883ff41c753745006cd791bca49d7fc03da9c164f510c842289ac0c77d71ea8b7766513": "0x0000000000000000000000000100000000000000000040bd8b5b936b6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9313da24700aa5dc598e9b32cfbdf54f4fab9ed2e3ed9dec315c66e97d422bb19c4d68cc6570ef7e78cf1f9166769af37": "0x0000000000000000000000000100000000000000008075c07908bc240000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da93233da4c3d4978f8dd1bd624bfc68640d340d8a80e40c37701744917a8a612bbe4ffa6888c1c904f76e7438a0edfdd91": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da932f1d1670fdeaf043ece3a9a461d50bb1fff87189c37f8aa2f9bbb95322c2bc4518c33f7342e1f5d45add551a2ce7673": "0x0000000000000000000000000100000000000000000082afb108ecdd1c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da933d4a500db8237e790d845d8a13dca2d73112b6113b0bd000a27341cf0d99e484be39c93dff0f584af86605001ab8357": "0x0000000000000000000000000100000000000000000010632d5ec76b0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da934ec744f9336e61990deb04951d288ffaef07a4f5bfa1afc55e093f60e088449044fd55b96d1118b293d5530467f87b4": "0x00000000000000000000000001000000000000000000c4588bd7f15a0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da93603ec196e126d1fea97931057149e88c2bd843c63b243488e736ed9b9dc3d191627e1a19fa6f8abc7cca67432ed138a": "0x0000000000000000000000000100000000000000000031d6e275bc560000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9372e2d4634779b20fe12ec9b3b9df9ee1664016a5caab8f5b4b1360b1e05b4aa84c1970f30a19d49ae4f40312404a538": "0x00000000000000000000000001000000000000000000b89d0d6955a00100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da937a44bc559e32b5e2fe5eb04a1d4f7cfdb9d57d0c975dcbae8b2d545b6c50fc724fce0d54644d3c8a85057ca7d8c0f0e": "0x000000000000000000000000010000000000000000007c332aa12b541400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da938478afc0631a8ff1b56df208a8a40d8329cff274f5850352624040b344ba12dc6a24ce6fa95fd82e95a45f3e4731f11": "0x0000000000000000000000000100000000000000000062acc5eb78ad0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da93889d35d383dd18a2908a2d50ab393f2cee1ccc12d271c0fca869d2a3f464d89ecc1af567e675dddd105024f0fa194c2": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d87282436bc39de50d1e863372db928df2437e5b9547235d39ca4fe5a04832c75657faf5b2ad3edb41a4ccfffe90ee393e4ba869": "0x04008002c9cdd5ba8e03000000000000000b1a4f24b216000000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243992ba2f593fba249e966e0a7d81b8c27e912c3d01f14c5a92c13acc55ad7de82fb4f66d329db5ec06788c66052b354a9": "0x04000010632d5ec76b0500000000000000859852192b45000000000000000000000000000000000000", - "0xbd2a529379475088d3e29a918cd478724e7b9012096b41c4eb3aaf947f6ea429": "0x0000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d87282438d375a063d247674ae19360ad9d36c4aa76a92eda466612be10b1789158e12011b55b7685b3cf29597fac6dceb922f17": "0x04000040bd8b5b936b6c000000000000006dea73fa5d67050000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da95b27a7ce79dad0126f33ce111db6765a7fe3fb95f4358ddd77b82ac4b0086c253af8fd83fa2a947d2746199e3c83c904": "0x0000000000000000000000000100000000000000000028d9283b00e10400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9bc517e8543ee25f3d049208f37dc604f5ec546552827c43f2f6dfff11f2030c5fb701ea7fecddaf28d8e20d9d2c01a93": "0x00000000000000000000000001000000000000000080ec81e6b855960300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0xd5e1a2fa16732ce6906189438c0a82c64e7b9012096b41c4eb3aaf947f6ea429": "0x0000", - "0xf2794c22e353e9a839f12faab03a911b4e7b9012096b41c4eb3aaf947f6ea429": "0x0000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d872824327b2aa5fd18f1465e4f165d6d1090f7a7645bbaacc77083cf2856ab1d95580f4f328935dadf001b83a9025dc163497aa": "0x04000040bd8b5b936b6c000000000000006dea73fa5d67050000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9e44b9f782644fcefc2f2645e5747df37374bb4642f661cb4b2d58cadc5c78123cf9500005fc3eb0093e8ab1d7c6e3e30": "0x0000000000000000000000000100000000000000000010632d5ec76b0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd482f2fec429046ccc7010de5b49629aed3bc59ab2887ec0b1a8fb9d42ea2c1a698d3cb2080f1fa7ca1c01fd375568ebfd": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fa1c6bdf3a51d71bd6b26a907cecebbaeaf55f275fe555d0832a239b75fcc14edde7f00815271d60821c98c56fba2108a7": "0x54101400000000000080b58eab1328541400000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9b685d55343600eea9074029b4b5674e65f7222b1a6e28f097ec231b1c303f638fb6fba13e07d9f638049275c02db8bf7": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0xa686a3043d0adcf2fa655e57bc595a78aaf946a086076d5237bd605fb947f4f9": "0x00002876e1158d0500008a5d78456301a03782da0800000000008a5d784563010000087e93371c014df9341507000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d87282434dcb42d635baa02dfd29656035975a12720f92e817f84fa748cdff1b59ad307624ffcd9a70541cad4e01d09cfca12b74": "0x040000a877716b728d0d000000000000004d7d4ebfebac000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9b2f5c6d48600b9d571b32bba79b419fff2db084e7ec2187f01243fba4ae3c8c04ec8a60918ead09df668d7108076f2bd": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d872824309c2c70529f4558f2a9cd22c20c3304c00e3e4fa4789f57ee08670dcdba4191f13f7f03d367df798c88fd6e79ed081dc": "0x04000021501ffe307822000000000000009760a596ceb7010000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd45cc5adc0f0d1203c0dcaf26cb0c53dacb747c877104bbbe671b6814429f231bfa962d00b97b37e9b7d7da1ae68752d24": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9a58cb0c05075494cb0c64d79345201f595a910111666608bca19a4767ff1957c97ad79e6d2c33f0d22e1cb74ae177dbd": "0x00000000000000000000000001000000000000000000a877716b728d0d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da97a4ea5419093c2e0d9d8a8afa7c4cbfe6e016ca65cd213156c075da95c132bd1917762de0026ee539c720999aded3216": "0x00000000000000000000000001000000000000000000e8890423c78a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da938a3d7829288825384d522a03048d90d9c9e218ad3a96f0f3d1cd177e30fdd9641a19bd61809168cbf342f474bd89dc9": "0x00000000000000000000000001000000000000000080d44e3ab3b18b0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da939f191d78c002ed1b8a55de5e32bdfd96d6f646c6b696c742f7473790000000000000000000000000000000000000000": "0x000000000000000000000000010000000000000000a0724e180900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da93cdda083f101c55f02ac371e252d616fe721f7351192890298e08d1ea08b0356622b0c5f91c27faf6d6831ad53be79dd": "0x0000000000000000000000000100000000000000000050efe2d6e41a1b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da93ffcc772c75a4a58f32cc87a685dd7b7625c94a9d144cd2fdaceeb1e045765f686a72c10f27c6a0dac0421546806ed79": "0x00000000000000000000000001000000000000000080599332a32ccb0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da940d5811f66cabeaee1a537e54af0a576d3cd2a65220b22f2213956dab0f7cd077f5b77279cea9f336b0562469cf24baf": "0x0000000000000000000000000100000000000000000010632d5ec76b0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9421e0a11a05b599114635ce32ea5890dcd14aa92dfba7adf3f6952588042fd0997dac96397cf5358afa7c8735b0b0ab9": "0x00000000000000000000000001000000000000000080e21376abd6451900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da94275b779a59d2e0cf8e4fb1e8e908527ee41990a8a58627f3a7db8578d3ee1ab25ff4f0613dc67933bc724517b91a578": "0x000000000000000000000000010000000000000000007c332aa12b541400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da942a352cb66de451d51a4b3c9189c8912f1ff949df72537aa5a9e07c9e1d6cb0fcd9826f592dc964472641991c6522676": "0x00000000000000000000000001000000000000000000483bdc43d8d70100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da942e910c58c81ece4bd0de09832f1a5a08718fbdbf3edabb9e7d9589b03dc39bede72111dc9959552cc511b1b0370d404": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da943f68e2f29bf5ed665c97906008b033a3e725c262081e9460accd50c1e0d8c1493a4617e0038e8aaa818aa57a071be6e": "0x00000000000000000000000001000000000000000000a877716b728d0d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da94454e9267f65f2fddb9c9fdbb70d64b45a118d5d2e49a4b1517d5150fdf21ac83a4a6c13c32aea1ba44c10dc438c0a51": "0x00000000000000000000000001000000000000000000ea5ddc9a5c630300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9472a3ddaa9ba8b9b479fa42c37d546ad8c8516b0a61dd000459a6d969868f820a3a584fbb1c9778c6a8b3f6bf045c028": "0x00000000000000000000000001000000000000000000e834fdc605f97900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da94791680a163a9f1a08e32c8acd389deee0569783b0da9892e6e2b293dc37972415aaf9e8ed919afb4df2c2b47a0c3371": "0x0000000000000000000000000100000000000000000069d5df935ed2a300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da94850cf2fe54ab12bf009c611e911f59920dd6fcbb20b6adb38a29846e9d859dc5844cd8560231c80ea826efcfe955c5e": "0x0000000000000000000000000100000000000000008032d8f61bd02f3000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9488e4d63e5075ae58f2a115a49079591abc39441653f4640b1fb66b0fc8dd2d51db76a7ded96d2f603052c79c102a859": "0x00000000000000000000000001000000000000000000d01309468e150100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9492da6406cc42bdb1bb0c413a1aa25176c9783e922b00e288d19b9020ffce919d1ab4ab20fc62d5d0b23ac1e61b2096b": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da949644071d7f6f8ae2c4b5cc0e0da8c9feeedfa97bc9583acba109f30a692bf4082712f8b690d65316bcdeacade76224c": "0x00000000000000000000000001000000000000000000262dc7a480950700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9496b9d267424345a13c01cf7256660a010abf8ffbb90d92395d891a798e4476ade3d28ae5f8c5c955b9199d995871a62": "0x00000000000000000100000001000000000000000000aa23d301f2d80a00000000000000000000000000000000000000000000000000aa23d301f2d80a0000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da949c7578212f2133284f5f0e0e878e1c13ab79d3bb166382dd3b416aac10f5ef38bbd2cc3d152f237d77a63baea12e5a4": "0x00000000000000000000000001000000000000000000d2e7e0bd23ee0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da949c7cfb200295b16976ccab33fbe60948efe6e88d9c540c54df4f0014268f38ce9b5619624e2ad0ea1511c97a2a321da": "0x0000000000000000000000000100000000000000000010632d5ec76b0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da94a9ee9e11db48f0175592477056bf107f4e07dada9cd0238198f24289cb9f0d7b9729a1c483cd96fa78a20e30c54708a": "0x0000000000000000000000000100000000000000000058c51ff571cb0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da998d3f2e89848adfd90c9ef441ae257177fec95369d9c0a35e438ebe713aab1eb51cbdd5ec50b2f412279cf4cf1d15a0e": "0x000000000000000000000000010000000000000000803b2f59ea91d80200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243806ae4fbff1bdedf667edd4846e2585ef2460945ba4cd7088085c436b334f0c9a3240755f16267e293dfa29ebe840a3b": "0x04000040b2bac9e0191e0200000000000036f539fdaeb3020000000000000000000000000000000000", - "0xa686a3043d0adcf2fa655e57bc595a789d88060318ea21401c822b2e63d839db": "0x000020c65abc8ed70a00000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fae11f494c0e824f364a61cdf856a2320b70f7da648bfecbd0e7d47f4436e1bd81ba7ff80241a6be54cf7e63c0cad72f11": "0x541014000000000000800d173aa8b5c60600000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da962e7f643fd5bc73fc52e9629b6b90c0b05ff4954557faa2896b82e6acd54cdcebf6a7260894cfb1f47ba8d87202a60a6": "0x00000000000000000000000001000000000000000080647593c1333c0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243980597d42f20e91ceac14ec0ed58793d9ee228e6fbb6b32ded145d1b38be420e253bf43712e2f52b3177c0b9783169f2": "0x040000ea5ddc9a5c630300000000000000a9cfe9779d15000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da932f1d1670fdeaf043ece3a9a461d50bb1fff87189c37f8aa2f9bbb95322c2bc4518c33f7342e1f5d45add551a2ce7673": "0x0000000000000000000000000100000000000000000082afb108ecdd1c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9fbd7a2614a073cbe4d0f9f8af1ead5cefb910a7a1d18d683f8e94f8d77404c14128da16d8773a19acecdbe4c4ac41701": "0x0000000000000000000000000100000000000000000031d6e275bc560000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9a9ee576e73a40338d42503ec9484f1d066f80251d2f11dd66f1f1aa8681b9dc8b035405123ca9d22195e04bb08827194": "0x000000000000000000000000010000000000000000004e8e1a853cea0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9d462c5e44e9f8f3886ceb82c3d52dd42f213f5635dd0a00c44c64983f5067b89448e670208fb2068832f52702ac33b51": "0x0000000000000000010000000100000000000000000040b2bac9e0191e0200000000000000000000000000000000000000000000000040b2bac9e0191e0200000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd449c7578212f2133284f5f0e0e878e1c13ab79d3bb166382dd3b416aac10f5ef38bbd2cc3d152f237d77a63baea12e5a4": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da98f2d315ae64b0dfd4f846bb71989658ebc112fab44560f2de284b2b97ee98ebec740a13249f9f1c809fb75188feeb242": "0x000000000000000000000000010000000000000000007c332aa12b541400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da910c20c95d184303aaab86de1cbc44398bd5a819811cfeb468a4d8ab7eedc49df52df18395be227d222acec34db493f37": "0x000000000000000000000000010000000000000000007c332aa12b541400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da957978ab76d55e8a45eb90de986bfb21d2af7838d1bb344b8e700b3ba5530f448a0a471296e88ac104bcb606880478c9d": "0x0000000000000000000000000100000000000000000040bd8b5b936b6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4a64e153618a57dcb75a3e136d42ea494295de105e3928f31e1121aa1fd451d7b16028f82a4b2bc1f6611ee637c353cfa": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da95e4e26a118178e2e4153263663058e281be7c8f6db75cb34c8a9496dc7d3abb7a42ef0ced5a7eabf0d2ee1d3f8dc09d2": "0x00000000000000000000000001000000000000000000a877716b728d0d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd48cfdf19ade2c25573b354cea850446e205cdd205b57bf767c1ffa4a02cc1fc96c4b74c1b2bbe00c97c5dc30aac532be4": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9abe07b38b8a82d3b110fc532f5f4de0d6057ea7c64ea28336f1ef3ca8b16ad8ebfa568501701355a09f02aaabe070b18": "0x0000000000000000000000000100000000000000000058c51ff571cb0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9f3f2d11c744ef8063b52ab38861bdeb535ed5bbe32a1b92ed6993f2e6d8f1b68b306df13a1195c8d7ef07d5c17f3f7ed": "0x000000000000000000000000010000000000000000000ed1d17880130100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0xcb9cdb5e5c0dca92cbcc1db51bc0b6794e7b9012096b41c4eb3aaf947f6ea429": "0x0000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da98333774cfe3dcd38f02ecaab798bba9480fedc83c94ea1d7f45f99ba3aa9e4744cbe9ad0784467b7f7eb4bfa58b6edb7": "0x00000000000000000000000001000000000000000000d4bbb835b9c60600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd41f2a387ba8a3db1fbf407adfaa62ba08dc8e39b099aac859321539ec7ebaf3d65ad9ed94b984990159f21c0b35995717": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9860886668a9c38331ffbab78ceeff5f50a799e768a336d6e6d1dbdd24c30714fdfebea3561504e3c393165931407af12": "0x000000000000000000000000010000000000000000008ca7f244b3760100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9b48203d2c55b9a6b03b0b798d17cc48cb9b053d4c0967a7155dd5a6c3bf55dc5acf8922dbde40ab1f1eaa9e151907d38": "0x000000000000000000000000010000000000000000007c332aa12b541400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0faa5f432bf32961d5fd0b2dde69f27a0555721f6fa1f73847072f23b8e2a029a92cc51a321f5da1b8570f150bc6c8185c6": "0x54101400000000000080c5b447110b670800000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da94bbaad4e13a86f5ef31f4c438179660f897410d586fc7aa556fbad6acfe8f32237a4897a4573475941df6fb8bb3aa225": "0x000000000000000000000000010000000000000000007c332aa12b541400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da94c778fcd23b412f3ebc41f2414dee64fc09cdbefe84f06ee00b54ccce6359c98ad93a51670a1a194a9f420c052766cd1": "0x00000000000000000000000001000000000000000000f81348d4607e0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da94dcb42d635baa02dfd29656035975a12720f92e817f84fa748cdff1b59ad307624ffcd9a70541cad4e01d09cfca12b74": "0x00000000000000000000000001000000000000000000a877716b728d0d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da94f6f1e8d430dd01a8ce796642390a904bdc8edb0ecbfa7ff0a9fbb0facfeb722aab6ca21ff1231606c1d565ab8b02021": "0x000000000000000000000000010000000000000000007c332aa12b541400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd442a352cb66de451d51a4b3c9189c8912f1ff949df72537aa5a9e07c9e1d6cb0fcd9826f592dc964472641991c6522676": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4225ffa4176a6bd2bf34cd8cf344b56c3e7ad9115cb94aea2f03aee9df47e96bf3abfa6d4b1f97e54a27d93a87eefde9b": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4d473fbd94ca0b57d8dc14fee5599b875f73bef45185623035375ce512f83ac52acace663c04d424d25cb050b8a3c7216": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd42a30a2a23fb351a2ce34b759d1026ca9d08da0b33b808d36fa61b85125b6e0b714c4c2e339b95f16283f5ea3300ed3b8": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9f39d257fe56ca1dc62095392c9a2e9e100a57df6366a2a9f9be8b6dbe429c63f34bd3e3f925a95ca2a02d66083692772": "0x00000000000000000000000001000000000000000000e834fdc605f97900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fafebb1eb13459c4993744d092e155825417b3faa5419c8e9e6a642989fa7212d1d0a8d35e179908171ae38ce0fa467c30": "0x54101400000000000080af1224ac67ca0b00000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d87282434850cf2fe54ab12bf009c611e911f59920dd6fcbb20b6adb38a29846e9d859dc5844cd8560231c80ea826efcfe955c5e": "0x04008032d8f61bd02f3000000000000000aa56161db599000000000000000000000000000000000000", - "0x6310fed47319b658f9b8b2504e0d72ec4e7b9012096b41c4eb3aaf947f6ea429": "0x0000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da93603ec196e126d1fea97931057149e88c2bd843c63b243488e736ed9b9dc3d191627e1a19fa6f8abc7cca67432ed138a": "0x0000000000000000000000000100000000000000000031d6e275bc560000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4165f813a3c8a066c04403c23e10513804d11c4abd2c3ee4c87d0aa7cd4a133404d619293e6192aaeb12bf6dc7141cd54": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da907c4b853d765230771578480daf9e544a794f7824a83ce11665526389772159d48fe598d7040fc2540e188f26c3db929": "0x0000000000000000000000000100000000000000000010632d5ec76b0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da94feec0588592d08d3f085323134c608d98181e71c3cad2a5486d7892beaa6d61f1a40e94a748027277f09c8364d6f909": "0x0000000000000000000000000100000000000000000040bd8b5b936b6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da95006ffa9ba9b88aee8b6d4f90bd0393edecd754290f611047a8d9b57813fae2e8506506ecd44e2584fcd9eb3db552e8f": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9504628318c996c44377e499881fcaa23da0748452893e1b6b2bfff2c916034c0c9fa58c3d01d3ef19d1e2fafe6c3a244": "0x00000000000000000000000001000000000000000000b5de033a2c8c0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da950ca0f8e48c7b76efba51492eba77019d60ef7c5bed47d4b0b3b22adf44769eca987352b057a81d05a9668262d1fac37": "0x00000000000000000000000001000000000000000000b348031ec4db0b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9520c3b5abb39bb9bddf88adcfd3045125ac771ace1bbff810939e05a04716e98a6c002598ee07cfbcb2f7defef8bf138": "0x00000000000000000000000001000000000000000000d01309468e150100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da952755e98dc4eff129a3c2a6d402800a8fbb942ccb01d679dabd754a67a57e181d035e58e602bb3918a2862fbe3c090f2": "0x00000000000000000000000001000000000000000000be1995d0152a0a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9547c71739b61d22ef65d10364ff0a0a2a632d21dc803b56b1c8cd0ed27629883e9cf6deb653ec074f9cc4ea91404e972": "0x0000000000000000000000000100000000000000000050c5acd847830300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da95764e6062b7c46dd1f124495282693e3559467a481d0b36f1f246f7c7836eac0fd45c45c91437565a4ef90bd11b62d69": "0x0000000000000000000000000100000000000000000060157fd4c72d0f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da957978ab76d55e8a45eb90de986bfb21d2af7838d1bb344b8e700b3ba5530f448a0a471296e88ac104bcb606880478c9d": "0x0000000000000000000000000100000000000000000040bd8b5b936b6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da958d26834f10d93b6cce482003d6c18d727e06a64a7a273b7e45258cb5f9a710f306cc4113acd580a6334f9fe9b820df6": "0x000000000000000000000000010000000000000000009784c154586f0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da95ab38c78bef50e13399f255745cc478e2decf61451dcef6837f9a9493cf2f3e3da1672132eaa39d274caf1f72bbcb4b4": "0x000000000000000000000000010000000000000000007cf6984047fb0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da914a4d1dbe35b7ef57f8eeaf36aa28692e68e7296283d8412ed570e1810bb4c9d7790c79adbb3259600899ddd5d8ff454": "0x000000000000000000000000010000000000000000001ca2a3f100270200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da94850cf2fe54ab12bf009c611e911f59920dd6fcbb20b6adb38a29846e9d859dc5844cd8560231c80ea826efcfe955c5e": "0x0000000000000000000000000100000000000000008032d8f61bd02f3000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9befbf4bd2ecbc034e1f6bcb3d73978202a697c791eb88c60e621767ca411a4c1281d02cadba3fd238a7fdbd5ff26abc8": "0x00000000000000000000000001000000000000000000260551c36a080200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef78a42f33323cb5ced3b44dd825fda9fcc": "0x4545454545454545454545454545454545454545454545454545454545454545", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd41ea10ddc22ce3248c726195d83c1bfa9399232899607eee84bd2e642e90ba677f7ece4e544296cc1f245a76da0eb3f5a": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd41ed7566e109c3c7e0bfad1ee26f042740a808bbf0febca21cb3d271ea358bf65d23ef25e6d48d869dfc0288e5661cbfe": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da94275b779a59d2e0cf8e4fb1e8e908527ee41990a8a58627f3a7db8578d3ee1ab25ff4f0613dc67933bc724517b91a578": "0x000000000000000000000000010000000000000000007c332aa12b541400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da969dfa1ec148065340153c6fdec3981f0a32954f3e273b7bdacf30a62ac3f1ced3ec1fbdfc86b65004f45809e3d5c52ee": "0x000000000000000000000000010000000000000000007c332aa12b541400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9c7f2140316a2ec05e5d52ddabf7a1c84627e29d9ce025575d2afc645d7fd1f572a24fed6528566335c616e86d0798571": "0x00000000000000000000000001000000000000000000a027128c1c2b0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4111774c6281a01fc7c2ad34499ed8edbcd138aff265310b93ceceb1ba79b9b5e68dcf8cee21b976ca1ae43a0c8011389": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9f7cbe917bf94c7d2176f38a588168f2bcb06c14ed9dc021ee964c556fdc00d74a69b82acfc547b18e46fbcec9ff75807": "0x00000000000000000000000001000000000000000000d01309468e150100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd45e4e26a118178e2e4153263663058e281be7c8f6db75cb34c8a9496dc7d3abb7a42ef0ced5a7eabf0d2ee1d3f8dc09d2": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd462e7f643fd5bc73fc52e9629b6b90c0b05ff4954557faa2896b82e6acd54cdcebf6a7260894cfb1f47ba8d87202a60a6": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd484954f97bb03137be465c9e08ff0bf920d45f0ef0221693f976f1c7aed9c5e9c2c97c8078295b56edae6943923cc67f7": "0x", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da95b27a7ce79dad0126f33ce111db6765a7fe3fb95f4358ddd77b82ac4b0086c253af8fd83fa2a947d2746199e3c83c904": "0x0000000000000000000000000100000000000000000028d9283b00e10400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da95c5e14851de25f7f56f13be97727a4c1e090826da0aff4db97b9212caa1902f6f8e0e5aa249a55009d9b3976bc4da195": "0x000000000000000000000000010000000000000000008e2d9e16a43f0b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da95cc5adc0f0d1203c0dcaf26cb0c53dacb747c877104bbbe671b6814429f231bfa962d00b97b37e9b7d7da1ae68752d24": "0x00000000000000000000000001000000000000000000bc93e9fe24610000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da95cd31698798a5f861e64dbf9559ba78acfcce582e8eb2ca36c982404c4a98830a721620488d3d0e4d4253d213eee90f4": "0x00000000000000000000000001000000000000000000e93e11385a260e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da95d9b4c51def7e60aac14fbd7537ec31d73539b13d84475ecf112fc41585e8b48dc1ac4b871be0ecea1e0f003a02032c8": "0x0000000000000000000000000100000000000000000022ff39761e962400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da95db21c28e028f7dc1ea459542c77181cc75a2e423128629ad2e02443e4bd902d0f08ece6b435034adccc620ceab89fa3": "0x00000000000000000000000001000000000000000000e8890423c78a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da95e4e26a118178e2e4153263663058e281be7c8f6db75cb34c8a9496dc7d3abb7a42ef0ced5a7eabf0d2ee1d3f8dc09d2": "0x00000000000000000000000001000000000000000000a877716b728d0d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da95e6ecb14a3d50fdada0369a44cb32a2b19196c56cf559a190b40040eb13bd73bcdae558a28f2070adf7dcee9bb6aa5ee": "0x00000000000000000000000001000000000000000080599332a32ccb0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da95fefec240b289fc12f71908e0cefb70768a7a05e316865a68968f92b09e9ec6d5d1847e71e520e68e5d306b5730c2468": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9612917032a0bf90a0552a27fa5d41a432d286624fcf9399b8b508929fdbab4c21fa0e7f42153c57d8705020500cfa1f0": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da961986e3136e9a1ac5436d8e5389aa2d8eb423ba54aa669956b9d86a517fc7af6380d47c0c86a3953262c0ef6865019b6": "0x0000000000000000000000000100000000000000000040bd8b5b936b6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da962e7f643fd5bc73fc52e9629b6b90c0b05ff4954557faa2896b82e6acd54cdcebf6a7260894cfb1f47ba8d87202a60a6": "0x00000000000000000000000001000000000000000080647593c1333c0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9653f9ae8c00acb30c3a91ca50fc193bc6a5c355bca369a54c334542fd91cf70822be92f215a1049ceb04f36baba9b87b": "0x00000000000000000200000001000000000000000000a0dec5adc935360000000000000000000000000000000000000000000000000020c65abc8ed70a00000000000000000020c65abc8ed70a00000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9654c5b4e839914cc0c97db89891d5cca6211cbbf1344b3bd4054bdd163f0429e9fe5832c260e974e9e55c5dae3ca9e05": "0x00000000000000000000000001000000000000000000df8c4ae80a150500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd48e4d59dd4262ffd933cf602317c95745c25566a102d49ab2c82eb168629f187d905059b0108adb5f58eedcdcdd249f54": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4db4cb4f3c003a283405383d8ba0e13e892803729b591966fe5148066855d42465ea6bea06d592cbf2ac854704500fec8": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fa4275b779a59d2e0cf8e4fb1e8e908527ee41990a8a58627f3a7db8578d3ee1ab25ff4f0613dc67933bc724517b91a578": "0x54101400000000000080b58eab1328541400000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d872824332f1d1670fdeaf043ece3a9a461d50bb1fff87189c37f8aa2f9bbb95322c2bc4518c33f7342e1f5d45add551a2ce7673": "0x04000082afb108ecdd1c000000000000007c1c9f2629b8000000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243d1fdb33ffcf86b19e0284e617b6af6b668f2358dc6ba14a9b982e49351fa041c46a840e54cb4d09dbeb08c5b2515204e": "0x0400007c332aa12b541400000000000000f4bbf59e6103010000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243d462c5e44e9f8f3886ceb82c3d52dd42f213f5635dd0a00c44c64983f5067b89448e670208fb2068832f52702ac33b51": "0x04000040b2bac9e0191e0200000000000036f539fdaeb3020000000000000000000000000000000000", - "0xc2261276cc9d1f8598ea4b6a74b15c2f218f26c73add634897550b4003b26bc6d462c5e44e9f8f3886ceb82c3d52dd42f213f5635dd0a00c44c64983f5067b89448e670208fb2068832f52702ac33b51": "0x0476657374696e6720000040b2bac9e0191e0200000000000001", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da96e773651e33b7dd1d240ee80c5e2ec4ef9ae1c7c784b3070f8d62a2ab52abed12a1a23c22ba0a2f02959aa0f291f9b87": "0x0000000000000000000000000100000000000000000062acc5eb78ad0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4686b6c6f73a46354748bbb4f040de6619629af213ba412d37d770bf03b12304767f1f20a7774506065036e84983fb0b5": "0x", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d872824312401e72171e3a3c0b63b44d49bfaebc39c1c82ffa22143597a4d812a2b64f29ae49c63a9dfcf24197651efc9bb389e3": "0x04000088b116afe3b50200000000000000424ca98c9522000000000000000000000000000000000000", - "0xcec5070d609dd3497f72bde07fc96ba04e7b9012096b41c4eb3aaf947f6ea429": "0x0000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9496b9d267424345a13c01cf7256660a010abf8ffbb90d92395d891a798e4476ade3d28ae5f8c5c955b9199d995871a62": "0x00000000000000000100000001000000000000000000aa23d301f2d80a00000000000000000000000000000000000000000000000000aa23d301f2d80a0000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4123d9afd81b2f03b75d6a208905a9c8edd907656f86d6d92edde215e7663d9e75123d3ef061486cc2cc34bebe5b37ce2": "0x", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d872824305a6a028e0cf679dbf4df8bbd8e505c761bfb5776a9c0aed565379a95a287d4c7b6dc1566af98687897953289d10dcac": "0x04000050efe2d6e41a1b000000000000009bfa9c7ed759010000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da98a9c021f8ee00eef7e6c8853b4db5ffa4b3362b2a4c34dd0699ebdf4a5cb60f9af72495e70980a5ec3379e32e1c58330": "0x00000000000000000000000001000000000000000000d903cd71ab2c0700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da998596cd1a356f3acf0f1e0d05b460fc17e46bf3da2eb3127575af70c1efc89ba576615735547e4f58211f35b930a2f39": "0x0000000000000000000000000100000000000000000089b3efdbd75b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da92652dab2948830bceff5754b7abcc8b05f08078b6b50b5e396a5d45d38581415ab8c0a3c64b6067f4d2f1a153167e25b": "0x00000000000000000000000001000000000000000000404f241839560400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9665f5fdf47649627ab9b6dd81cb9af2496ac877bb59d6334eb6aebb0a9e90be0165752daf6e6e3dd078ac71f10cbf5bf": "0x0000000000000000000000000100000000000000000010632d5ec76b0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da966af7e91e9a6933cac314bef3c467aa1751513fe96ed4c5a466b2075dea2c3a8ba364e77dfbeffba3236154802f3c0b3": "0x0000000000000000000000000100000000000000000040bd8b5b936b6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9686b6c6f73a46354748bbb4f040de6619629af213ba412d37d770bf03b12304767f1f20a7774506065036e84983fb0b5": "0x000000000000000000000000010000000000000000007c332aa12b541400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da968f76bf6873b4075fe534f5623815a9b643254e645e0e040e78449793fda50fba9cd0929631c3c9ea08387cfa1d2767b": "0x00000000000000000100000001000000000000000000aa23d301f2d80a00000000000000000000000000000000000000000000000000aa23d301f2d80a0000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9a933bf37224186f955260f85d9dd8153b9817607cbaa3b2b55134c31aaf0743e2951643db7b33d89b2f122c61a2e29aa": "0x000000000000000000000000010000000000000000007c332aa12b541400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da996cde687170c504e3a8633cee85f7b9a97a55ae82df0968bf491fe6cf75633ee030837da3729cb7db5de957c8e325bdf": "0x0000000000000000000000000100000000000000000020c65abc8ed70a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9f07995e3074904aca3ee6054624bbf83cc8e9cb3c8765d635c07c0fe2c64cdef0b47ff3e0ba3d50fbd07e24cac984498": "0x000000000000000000000000010000000000000000002cf61a24a2290000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9fee0252ed767239bb4fdbfe9e4b6a376902d10b5270d8f24f12ddc95186c5045d7875e8cac7e96e43305bc5c16008bdd": "0x000000000000000000000000010000000000000000804bc2602aacb70000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4167bd52dae4220277e9b0aabe7fd6618f3f2f357a84ce843593d91d085d4c568c3d52c6ece67e0c19c1e364bca500e9c": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd421d1c19e418427112b1e953eefd634ca379b8847d0cb00c709664b596a61e6eb04b1aca46e529be5699b8e4308d9e4ca": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9ec3f2c6941cbbe0539adc221e0b33750339a8671146b0d8239806359ccc92ea29fb583451e7fbfbc9cba2a46381716a5": "0x0000000000000000000000000100000000000000000010632d5ec76b0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd449644071d7f6f8ae2c4b5cc0e0da8c9feeedfa97bc9583acba109f30a692bf4082712f8b690d65316bcdeacade76224c": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4b3e7734e0f1365819f1c8ade9db4a66a69caa96417cd88dc2aef0ec2690f23574dad09cf6f4a39d87b928c0a4baeba3e": "0x", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da969dfa1ec148065340153c6fdec3981f0a32954f3e273b7bdacf30a62ac3f1ced3ec1fbdfc86b65004f45809e3d5c52ee": "0x000000000000000000000000010000000000000000007c332aa12b541400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da96a5dc9ef021a3645b71500d1b9ccd990de28ef5b1691663300a2edb97202791e89bb6985ffdaa4c405d68c826b634b76": "0x00000000000000000000000001000000000000000000b2d3595bf0060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da96aa990074e53d35b1ad4834ff5b868e5ec4635974882ab477e60fc38ea72f42636d60f0433a5c1ce2e5f3b4c9a879fe9": "0x00000000000000000000000001000000000000000000d01309468e150100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4fc2538d2d433afad0f1d400d84891a8b41b49e4820e85799d9069a3a9b89a1d9a8114dbe5ce49da53f953f07bdfef1dc": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fac399dfbb8067b0b4e63692009984eb5b11b7aea197984d7711449a2cdc1c16cc2f5748249dc4d8adafba46d60c41d50a": "0x541014000000000000806fc3ff932e740700000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0faf21b762906e0cf6d8b1357c4f5460f4e6fbcfd49c851b083a0cc36efe277ccf337b574710da5f0e0cae155fb59c597c4": "0x54101400000000000080b58eab1328541400000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d87282437d7d473c8f985b4811f6f7c364b759da628da4055a812ca4145c75c38734138b6c62f0402ff1feae649be54d4c42c32e": "0x040000aa23d301f2d80a00000000000000a129c430d70d000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4d3107ca59e5d1c52b75ceaba26370b7bd0d237f90730d75b1dd726deadb158c448c7d6110fdb571b9a306ab21609e01f": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da91ea10ddc22ce3248c726195d83c1bfa9399232899607eee84bd2e642e90ba677f7ece4e544296cc1f245a76da0eb3f5a": "0x00000000000000000000000001000000000000000000a877716b728d0d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da91ebc44e32ec2d5f27d0d564aced42548da861e6473107b9fbac66e6cc9bac3e302d37abb25df57d3ef025ec8440aff6f": "0x0000000000000000000000000100000000000000000020c65abc8ed70a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4d0da10b18065b0d7db27e2c95aeb9900793b07a6376e5d4618db105f5ec6473377e8b9e5e1fb58be5e75765632eaa1f5": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4d325b2085166653f9f1900b59fb6f3a241ce733ea740ae76f455cdf3443f66b5713a42c1b54b15334094a4c1d1bf123a": "0x", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d872824361986e3136e9a1ac5436d8e5389aa2d8eb423ba54aa669956b9d86a517fc7af6380d47c0c86a3953262c0ef6865019b6": "0x04000040bd8b5b936b6c0000000000000036f539fdaeb3020000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da99718c4d466ce34f33b81e0d1714873cbebbb9d24ec13d64c31f9942884a1d1bf91882fb28d10e62df333bdd84971fb68": "0x0000000000000000000000000100000000000000008008248aaa56bd0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4f7cbe917bf94c7d2176f38a588168f2bcb06c14ed9dc021ee964c556fdc00d74a69b82acfc547b18e46fbcec9ff75807": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4f54a9d879aef2f7404b696682dc7a150ad4cac04bf7ffa4e71b0a630ba420a35a38fa6c6e1bf1293c3895f08566ee211": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da91a8f6bd5494d74f33f1fbac904e7d349d04140ba9a3c03878d3a751bc6a13b648ed45c50785347e1267fe65bd5345895": "0x00000000000000000000000001000000000000000000d4bbb835b9c60600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9e584e1ebc21b8a5b8e83e3c060af13fb4294c4ffa38dc95fb9c57fc9f82ded3d02336b78f137c08636b849f9eb9ca60f": "0x0000000000000000000000000100000000000000000072e77c682a8c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4fa95e8b66412468668d4103cdc255fade5c7928ebceed1c3f1baa79d8ecedc3dc675c755eab881517c0a8366d8da1e04": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd427b2aa5fd18f1465e4f165d6d1090f7a7645bbaacc77083cf2856ab1d95580f4f328935dadf001b83a9025dc163497aa": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9d3107ca59e5d1c52b75ceaba26370b7bd0d237f90730d75b1dd726deadb158c448c7d6110fdb571b9a306ab21609e01f": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fab4e2eb283b96514e38deb150cfddf68a5641a670536b50a86261ceab15c2457330384a6166e269b31cf34c928734b62b": "0x54101400000000000080e1d2f2dd6e8d0d00000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da96bc39de50d1e863372db928df2437e5b9547235d39ca4fe5a04832c75657faf5b2ad3edb41a4ccfffe90ee393e4ba869": "0x0000000000000000000000000100000000000000008002c9cdd5ba8e0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da96c32f8e12b6e5d74956cd3f59aaf297d88a6e14d7ee3d398a5bbf1cbc23ebb2b060dae7e78ddac02aa91ca4e3bf0de7a": "0x00000000000000000000000001000000000000000000703b1bd2aa400300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da96c84be5fcb3126abda911f589a3ec42d8719681183a8e38a803a1f2ebed095e1e4fd0220497e335fec43918c3f96e160": "0x000000000000000000000000010000000000000000004c0aa286d5100400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da96e3dd8cc6f283705a94d388861821e692a109e85a5e97fd07d6d26fdd939ddb5f3956404c0e3ff00356832ab309be5e5": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da96e773651e33b7dd1d240ee80c5e2ec4ef9ae1c7c784b3070f8d62a2ab52abed12a1a23c22ba0a2f02959aa0f291f9b87": "0x0000000000000000000000000100000000000000000062acc5eb78ad0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da96f10eb2dce9f15d9f5f753823722bdb5ecf462897281394f1994ac9856e8d8dd846793c3736bf8f36c1c7167f368fbc4": "0x00000000000000000000000001000000000000000000909dceda82370000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da96fd81811d76d99582f4818933ee0ae77bd642527d72ac58f627f0dd4dfb801b54633459f3e255f08c581b14aba03890c": "0x000000000000000000000000010000000000000000007c332aa12b541400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da971d0162f359de5dcff9b13f6204d8eab5465176eec72af78d3a9469f63f155ac9b1bb93ab804916611e794a362b3c810": "0x0000000000000000000000000100000000000000000040bd8b5b936b6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da972c13f7f4eaef96cf64e3cc8e7984e9d8c9138d2fa37cdda19528964efe98c0df5ca0bf5e6527af1a25d49b6057ed03c": "0x000000000000000001000000010000000000000000004186f67edf0204000000000000000000000000000000000000000000000000004186f67edf02040000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da973f8eb5cdbd142e440a910473cc25126edf262c08a8966b1ceec8a041041d9ff70fa63491d4939ffa07ee63161dbd841": "0x00000000000000000000000001000000000000000000809e483072ac0800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da975185b0dc4c2bb6a5551d77278949631dcf5e3ab054ceacafe077846de5c0be8cd2bd1288de4f8da4f4354246e0cca7a": "0x0000000000000000000000000100000000000000000089b3efdbd75b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da975aceb48822a21ab12539b6c14f87e329ba99796bd8e94f76adc2b65a40730deb3ae801b41493bf852c7219eee59a260": "0x0000000000000000000000000100000000000000000050efe2d6e41a1b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9763e223ff1cfeaabe523a5d3335bea421c9a8c244db96e244c8c11d7d2b84f439d6f42ab1d7cb3e2f66c9f2940cb702b": "0x000000000000000000000000010000000000000000009e32fcca5f120000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da977474612b0165954ef1656f4d00a633ba758b3dccd3bacc6bdf0666f5ab2a81cbc75a355d00eeeb4540538e484e6819e": "0x00000000000000000000000001000000000000000000e41ee69380320c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da97c7de191b377e05d5c64c2e13b3d4a2f768538a941d1e4730c31830ab85a54ff34aaaad1f81bdd246db11802a57a5412": "0x00000000000000000200000001000000000000000000a0dec5adc935360000000000000000000000000000000000000000000000000020c65abc8ed70a00000000000000000020c65abc8ed70a00000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da97d0ce3718c7eadaad159d592b40399a161d4e61d5caca8477005a7a2270afe0d46899c97cd11230bd8d91427a573afb9": "0x000000000000000000000000010000000000000000804b83ab1f20983200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da97d7d473c8f985b4811f6f7c364b759da628da4055a812ca4145c75c38734138b6c62f0402ff1feae649be54d4c42c32e": "0x00000000000000000100000001000000000000000000aa23d301f2d80a00000000000000000000000000000000000000000000000000aa23d301f2d80a0000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da97efbf6c1171d21235f8cc7ab61ff2de24fcc4e54e2602b7ce46c5d4c87fd546b9d82c2318d68196fb2ba7c4594abb33f": "0x0000000000000000000000000100000000000000000040bd8b5b936b6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da97f4289499c875383341758bb801c21264e03ec514297d5c37acc50d21d73662dfdb3e6362d17870edcc3767fa8f18cfc": "0x0000000000000000000000000100000000000000000024ab9b0c9ee12100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da97f4ed3f227c1006260a6a99a59b7448a2d3b40a8c4c65fe36e23e3fc0b6eb18b60275c8a4a9c652d34e6325e8bb6b6d7": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da98009fa6a516f17be9340679f592f0f28d907d7e2d47bc78238a247ebe5d6b23219e3c815b37056aa616c7f2cd937c017": "0x0000000000000000000000000100000000000000000008c5a1d8ccf90000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9806ae4fbff1bdedf667edd4846e2585ef2460945ba4cd7088085c436b334f0c9a3240755f16267e293dfa29ebe840a3b": "0x0000000000000000010000000100000000000000000040b2bac9e0191e0200000000000000000000000000000000000000000000000040b2bac9e0191e0200000000000000000000000000000000000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da98116813fb356b126a6fe2fb370f0fa0d5ccd6ec4973bae65c2fd9935e2de08f538d053d4824613fe8810431fc355b2f3": "0x00000000000000000000000001000000000000000000d01309468e150100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da912401e72171e3a3c0b63b44d49bfaebc39c1c82ffa22143597a4d812a2b64f29ae49c63a9dfcf24197651efc9bb389e3": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef75684a022a34dd8bfa2baaf44f172b710": "0x01", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da98e4d59dd4262ffd933cf602317c95745c25566a102d49ab2c82eb168629f187d905059b0108adb5f58eedcdcdd249f54": "0x0000000000000000000000000100000000000000000058c51ff571cb0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x0d715f2646c8f85767b5d2764bb278264e7b9012096b41c4eb3aaf947f6ea429": "0x0000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4fa489d0f39a8d8d61442bafd5f9b4487211199ca46f3b312821a8c43161813ab164c2f00636c550aa3e48c3c8d96a255": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fabca66ed8fe7bc989244d435f3cb33bd3100bf68c67714f65574e27f4cfc3ae3344771d4d96c60f86a9c0d5178c249a99": "0x541014000000000000806fc3ff932e740700000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef4e7b9012096b41c4eb3aaf947f6ea429": "0x0000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d87282433cdda083f101c55f02ac371e252d616fe721f7351192890298e08d1ea08b0356622b0c5f91c27faf6d6831ad53be79dd": "0x04000050efe2d6e41a1b000000000000009bfa9c7ed759010000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d872824342e910c58c81ece4bd0de09832f1a5a08718fbdbf3edabb9e7d9589b03dc39bede72111dc9959552cc511b1b0370d404": "0x04000088b116afe3b50200000000000000424ca98c9522000000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243d2fb87e31f44d139639588e8cc9fc4c666bef087654682f32f0643d46ea5f79078a3dd3f676d5e908bec4561dca999ca": "0x04000088b116afe3b50200000000000000424ca98c9522000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fa011c993ecb68f286c4197f01e93decb502ca701ab9010c86892e408ab69218aa7606c7cf494a19a2cd632abafc613905": "0x54101400000000000080b58eab1328541400000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243f4e4963c409ffdfa46e1424b14b02d8ecbc5c313673398ecd20f32a63b94affc3651919ac950b594d2fd42674cc77fd7": "0x040000485637193cc34300000000000000847288bc9a60030000000000000000000000000000000000", - "0xbf10d819d31e34a3b190afa41169b6004e7b9012096b41c4eb3aaf947f6ea429": "0x0100", - "0xf2794c22e353e9a839f12faab03a911b308ce9615de0775a82f8a94dc3d285a1": "0x00", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4d7a96857b80f6d4231fe84363b757190ef8affba4fcafd3ba332616e8567c87eee82129ff3924c8d16a5e0cca7ae3f58": "0x", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9813115721766ce06270a07326b11f417eaaa8bf827b40dfe5776f1f3020c8352c1d68c4d796e43ced8f4cee1cf3e5cff": "0x0000000000000000000000000100000000000000000040bd8b5b936b6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4b428398afe6b68ef63603ff19b96fc003e836130b0ef225ebc200baf54beb61e8a707c529e7f28ff87f84f421401df65": "0x", - "0x3a636f6465": "0x52bc537646db8e0528b52ffd00586ce004ee0606bf12511058cb281db4ed1f5dfd67d9d76f1de44d5c59009cf0188704c0f3f0f972a627433a9b2039be92e4ac7e40257343fd00273c8cb27205185229b1e569f66772219b1b58a3fdbfaded2df7967b4b29534a011013d311bf129cf4efd3278b5eb1787d5a970bb5953dfb1aadf4f6d9bb175779fbf4c98897be338bbb72543dbb74d69a3010de8839a3206ff9945cfb72b5352595575eaea2957d2dba3ba4a950f33f9f8ff3d594bce76fb24624331ba21851051c82108e8f0ef4b17b62439fe29249409fe0470742f3d163e8a037145f24f311e8792c6ff7f960c6da926e8da89db5268f2dda843dfab4b8981a0199cae308ba78cbf7d9ddf28a63b7b8ca79e0014d7d8abee94c9855dcfe5c6d0952d257b4fef095371e34e4f196f352029666cc2cae76d257be9df416ad952f107dea17f9bae28d6faf7c23b06d4a8834bef2fd6eca1cdc4aa89f9680a5d3869f35a2071d6a4b9a54de8b643dfaacb8f6e9a4f2768b2baabc7dc26c97684c2a26eb15ad8cb9504f8cab982f9cce92abd52757b46e796b4aac19b64d1171c45bbeab80cb97b266e4c396208048fa2b9863413d463137aa1b88021e4b8f6595c21c41c44fc782fa49b73b8cd66d72d1eac35b59a52dc1beaaaa182384f0bdd7fd95a6a4dff2a729c12a4d09bff562d69a128cae474d09f6bb442ac6f134b17c7db3e5f62faefab0b448bad10f5fdf4b976fb9504bae56ce2ef4da2b6e6fb2df9410611e2e911839f938d85d5f1cebe831992133742a7365d8d8dbb73e55534f9fdeb76f373b40662bd4d8317f535ae278534f08aa704e00db73f6dd3571330e93860d6e73f926eb0ebace933e5557ea53f57575f0d0a157d0bf822ec316bd6e99affc4875aa72863ed52d873e552e439fde576e039aafbc021d0487de965932bed2f97ae42b5f4da84d477ce53d7deaafaaaaf2ac4f3e152d5a341dc77c364c2aaf9e57cf8acf72e9f1bd68cd2a0bbfe59657bcbd2fd4162d925e29407ae5426dd18a7a8b5723b29c56f8d11f27b9d7327245463f48f9bea2bea78d12e6789eb33f6f8ee779bbe553fa646d06a1df1d522d67979c353b634d49bbe5926b7f4cda2dcba3f4a3ea9fcf785d7ee579e5924353557e551717bdaa8c78e9a5cfc71d55ffbce26afff3e8aff23f4977873c25f1799174cbe7bb92f995a3eaa75f315a3449497f84f3971f658ff9cc32cfb22c43f3d72e91e71957f95fc6459f6ce62f9f18676480e72522fd71b55f7a746c49f4c74b7ff96a34a0fea2bb43a40bf5e32abff4d6944497f4b9d07b1c7be4e6f3f9b2c7b5b312fee7906e18cb251091a6ab1051a6a7dd64037dc2f6c9daf2cdc61cffd630319f36d3d7575ed281feba38935c5f24fccbf91201faf5c8243ae613e33ac3b8e8ab2dc13c0a35c6edf365b1a644daf0cfd588966fb6ee2e976e396b4418ada8c75ce809b5c59938d8ddfac5cdc865e1af9c85338cbb3c72fb70bee6f76a8cdef328792f5d525f22ebfc91bb6891e5d2316e1f6a46f2a3afa600cb25cd6c766fb2daf3ebb05b676d49e5eb98127ed9dd561c4fe54b4652d2bbf053fa9cab5db4a2fe728cabfc34a0c2f8dd21984b177a18c72eb9fdc9d96a17357adf2edb8de047afd02b6ac41f29cae218c45c35c27cb963cb1957dca134b4dadc3675c7be75c71ec3569db367e723cfce2e439fe2b37b9f768c13c23cbb4f07f1107f8de1799d7d7df8b53f4ec956f49c85afcf3e779154a08fa83803f67146e8f5d18af4cfeb95801dc2470a067af4e5a0470e0245da18b334b4feb8fac3bf5a7915d4126f7945fae8bb49768bd44d81a08a3fe2b7a89585e38dded2d25714cc0feb48a82cd00c419a547ff848ebf37a7dbbd07b1c0b3f3983dcfa6a135835bc0cede358f887c4a87e8d83ae4f5cb6f4dc0cf576342d4a5abaa8f2dff3f7fc3d7f4f4b977fefbd57058e20d2d8036ced9bdaf2e5db65b6c5308736f66d01acef9c2bc3b6a920bc789fda1b9afad4eed327f89d02e28d6fcf3ae80dc1af43be7bbe9d817698eccc75e7d337ccfdf6c9fed8eb637fbeec454fa82773fda9cf5269f035349f05c76676c6dc7b2d4b9599f92c59cd22b9c2496f6480676f5fcd094c4a7a66b225657dda6f9f9ced2261af95ff71401bfff3f5d59650d9dd36d9a5e7e5d6a71ff711e6fef6a9b6afc376f6babedd6d77d081b67627ed454bb73b481f156a543303e6cab041afa68f0ed4a72a8ff4a96e5d9f2ad0478f1e439fde473238f8f2d17b3aa88764f8f875c847dffad41e5da74fcfa347cffac41e7d7d222dda14d25c5f9f0af4cfe772fc933522d81dfb76c7b41ebd87cd1a115326d097db9f73b52515adfe95cbd6966f6077b41ebdc7a635adeba2f572cc2f2bdb7e7deb93e5cf75fa74f9f37971dbdd7697396b4bf8617719ad99631977f4fef2c9bdfc6ad6e2f627b78f5da65f972f68081fdafed925527b7e69ad3cfaf3f976f72157f9b3c4af515ed2a3f8ebab116df6ed7376b65a452bea2b676eb9a72ddf4ca8edde64ddf974f7dc72efeef96a44d6ab38587df8a3f7952fb771db5d3b6b44158d5476b7f569ff9f436edfe50b82494949494943cfbb45f2feb90fd0af1014c6d188b9a76d534975fca692927823bfa9a430efdfbe9a00b60abf5da825bb94fb82b67feaf6ec75fb2abf1df669bd7dfb64f93aec53e5ebb24ffbebb3e2f62d8e7f6e0bdbcb5823b2280c5be5ad1155beda0cfb956b4c2caf68b5dcf2d91a93ed2d5f0d76077d35a2e81567f96a6fae86b9e4aabc1ce39c547ed1ca96acb0e8f2fdd5882e9f92ab08f8cae76a9256f9d22bae6eea2bb7b86acdf0c4862839f0b0dd552ef4245764f4969696d2bcf47d8bdbafb82ac3439f9c490eba93235f5d9c91f59256fe2cef2b5a7df8ca276716b7bf5a458fde4786dc76c7feb8edaeea3cfbfaf4c570cb3401d9d6b79adb27f62a7f7dfbd4be3e9be3678e396b6e1ff629fafa64ce22fbecccc8d6be93296dcfdba33f8d28521836f6f9b2c8f1b7c6beda73a15e8da85da82767cced37c7bfda02f6d9855aa851cc8c82b901d8a6cdfad42d08f6cff3f5b92d6cac116d7755fef3d596f06f77cf85fa858d9f9d877d7fbb5be76922bf5d7e539e26edd0db213de267badd55f8ebcf5763c2deb4b6b30bf5f62b04d58c9a2bc3d65e4dfffcb9a94febcf7bfac4fe1c76100f3ddffab4673421e99f6f9ff6abce3f5f9f478bfc57088a79c9dc22dba680f8f237bf681ce183df9bb9db4a1bfd4da961c45bbf2935ba3cfffe984b64880bdbc6b92f6808762ecdbd526e9baf9b5ed0109673a9accaf47e9e0f2187b8b4236d99307870d1011c6ce42166888b9825b38699673a8469880b7b53a42d13060f2e3a80838d3cc40c0d2187b8b4236d99307870d1011c6ce42166880bbb98e8eb348089a34fb5c81f7aa4348089a3bbfd7dc8ad10a446753f2432313c28c1095816450626bb62da007661c9c01a8165c49583cc89cc8a0c0b2b06930b2b0c6b06118f2b8f0b8feb8e2b0a1714302d58101810d5112c30e413641a698774826c82ac43d2216f20d5e022620ca20962139189e84584229211c58863a20c6218311567109d8861620aa216914bbc229e20ba2072115910b7885f629728440441dc129788606212518af80278043c0134419be920740ffa8dde4197e91f341bed8376a379d0675a098da693d0446823b41c5d843e4223a197d0714831b20a3985b442da403241a2914b90724825c8386412aa38a6998b05591113066d8346231301244195848c882c046f051512ae2760091e9837456fd175341e7d473ba19bd076645fb2269a8e1642d7a0d3b08ae81758226828da04ec046e02d7c167d807fc057bf184012c022b0445543020250a940b4080a80ee0481002ba04d90b380ad7092c15582db8ba5c4c5c2ab846c041b09ab894e8a44c8a6c8aab886c8b29831ec14ccd302e13f01c17082e22ac2fb006160ba6109792d5656a8973cc244b0a0c0f6b0b0c0a96121610981d581dd81c960b3039b03820132a3cb0236067b806310d660418056401736185c18a8011a181b890e82e181ccc4683810de12283090133c34b72e90a020302e683eb8c0b886b884e5541443bae25ae15584c7411d81b981b580f301eb411589916c165c425446be919f013b036aa2d110aaf0b1e021f81e5984dcc242a332ce622010cd32960105c5f2e1bb40a6213ac145c2980755c495c28b88eb84a70357179b9b464505c228036b8b658593014ae24e9846c827f60b161e52046a16560ada05d605d6189a9deb0a2b0a0a89c602d01cd8034a89a00c9b0a8b0a6b09e805340312f88a7a5976833641ab2061c0543c12de0279805ec047fe12698095e012fc12ae014b0129c0423c128e013f0116c022e019380bd7414241e951d2fe90ac1c5a5fa41e5034e53095171a9b4c427f4191d467402d3006271ddc002c1e412d1cc20ac24b025ab0aec0ecb0a2b097b02e6048c0e0b0b0b0c860653025c427587a5054b428f9921984440259806da019d009bc0704017cc2ae01c10cdb58635c4dc12993081b09cc0f2b0b4c0a2d05bac20b034581330267410d812201d551e1812e00d180d5403a601cb80388057402b641e5c06ac0252519d8152b011fc82cea2c954692014b005f089c7c5f3e2c1a09fd05078400d3d466bd14cf40a3a043d4413d120e8a5cea385682e4c073381e3e025b01218090c0436c342e0369a8c2e83cf60326c068fc1326831580c1ec329d6825dc052bc2d780bc682a9e02bd80aae82c1f0141c86c940622278881e1a091ec106b248c08605f41092282001427088c9bf6cdd71f59b82450a06a0f020654a0e50a04c7e3858990245ca91141ca040c196a754c18094232b3d6400cad10d53ae50c1c10a152850806468dc0065870c586152a5ca0e0738ba614a952a3b1cc085ec8cc53285ca11952b3be470d483949c8ccc5ad981ca91942b3de000e568872a58a050e1e1a55ce9e17b646670190d160b07a61441c102650a0e3bdc30050728583830a589951da860c132c50141b23276035478f82b538aaeec1001275c46c64299d2c3941e1880c3140d68404a0d2e64632c96a21ba6e47083188be5c8ca942b5372b042c5b33156a86480274bed0d54b058a172e5c8872950385085071ea440b93205872a547a182aba61872a433d59188ba50a15294753708032654a0658c866b03b64c00a15281cb832a50723285478f8232b5374e0809427357826839d7283951dac409102850a0f3fe5062b3b2ce0c84a0f3bdc70c3a79081b13a409172240507294753147093c5a00354aa48a17244c50a951ed9173ddc30c587293899177b658703645609b6e8861daa6000ca9423293850a922254b8d8f588435178d3049688049f38b9a9b4a4a7a463d2015240212c13cb0058552d8dd4d41484828fe780628409665dd1d63645ef82312a06548d210bed84862470807103308617c524258c987455815a9b8636ce1481f61d8420bb19b3bcb56e8a08e115ab163472bf289ad93758a2766182dcbea8e2fc68e9615a11480c5567caf23842bc4d83046e6861c578011c20061e418637c10c608b3ec41f8e4be1839beeb756c6b5f33c30863bf18e7068151c68eb1487cfbe046cb8ac1088c310279115ab063efc415ba2d087705181e5c6185eed11cd9dae91101005f680857008231cbb22cfb11233333c7072f986559d68fadeedeb6d8d3dddba669305a31b6a56ddd9aa6690d1bc69bd8b1bb63c3ad63679123c7d8115aef7575c1085f37840db57efd2caba516b58e52caeb4929b1aedeeb07a51663f5e0c628e58bef15295269f1695a84901b72efc16ee107b61000220068222d0c899615a3152d17ba05dedae2166e1a766c187fb2685931768c1d0b2c64198c6d592bac102300628410c6f8ba8216bf285fe4c7cc52c28d0d61376cb831be185f841076c766e618b5d75a05216b3242c8fc2294151422e5b502f6e00a2b6c324666d86dc1f681ccdd0d61644863c462e408618ccdcc1132bf8d3032ec662863373384f107ecd811c6186384b1256c7831c3d8f149885df25542a4a66910ca8e0c5fd5cd1cbb65cb28f9c548fbc5075fecee18238411569099215c6e97799983b05bcc7299236486cc5c2d845790d9ad02e40863e4c8bc72635b12424dd3342d854c4c76c5db72c042c50a950c7439dc702405032c00c161ca9529385cd901ca4900304ca172e5a8852b528e5800d2b3537483140c54a9b2430b3c3b3d54e8010488767483142c56a45c3982724445071d76e832bac363650a0f3c48e9b174e87d61ca950c40b9b2c391941b76a852454a8f0e548eacf47085ee64e0a88714a6e400e5c80a952b3c40b9010b151d7a6e7cc787293858a102c50a152939dc90810cec406338a5e0c30e1b3852e1240018801c81e10528304c2992520503503460854a0e58a4e4e0a6294752ae4cb13245032bfc5818a660c132e50a0f3aec7003942b53b2ec70c3942b50a460c1e18629505e283a0900061e6e981264a40a9522201f5858e8b1c30e573a1d1ca44cb9d24d298272e4c3142b43b2a3291a60e1052c4758a8f830a5059c85c1072a1998728507a09b2b52a654b901ca140d48b9b2c31116283854a192c30d508eaaf42025035370f8d9aa4cc932a50a141fa4e810c4665fd0c00e55a068c00a150d6860872a405ec0614acdc200c5ca0e54b05c9992050a073240e5ca942c5006f082000400c3152c507638e28103576e8072e4c3142159ac4c7939db1cb8b2830e5374a8b25899f25ad0c4e88517528c284642a15048112591500f2922412414aa424124142a465924245447592494859251168584f4a2a018a9a32c0a090905a320f14641621447413112aaa32031122371142446212121c1282846426aa4176591903a0a8a37ca2221a11e12ea45d98d82c448481d0509654541312a4641318aa32caa8ab2285447d945a15028186551dc51508c42a15e947f3ce0dd651db048d9f0d1b5b8bbcc7d41ecb47f1dc50c65a236ed8fc0800960ac61460cd47063687d71bae882537d82bf95957e5907357b922baa98549432791ec37c5c26a332995fcbdb2baec8f2e8ad357916fdaa72599df9e855f4aacb732b89b75ca28144978f5e6d37dbb6e1649b1369cd3e7a855fc9af1cfa94dcc5cd4d6bc25565a331914a2cb7280fe6154695f4479ffd422f66261f201966a8214a151f780b7be125380c6fa193ed3accb4268c8234ff14f03c4e8d49e5515a1a1369f5c8b64f4595c7cb6b56a5b7d7adbaa535796e79a5319174b368841a938aced790f7c51a4e6565a6f4854ca8e39fa39e8e2d4cba1f60ccd89b63029392ae1c6dcfbe5b84a9930f44ad49f4472b347a4b773c7ba5298097de885eb1fc4842affc694a500f5df6e939fbb4fc65ddd99bfc9a5f8d7c498dde5b4ea23f05440abb6394c50f04b3035b3bc6fcfd3600cc3d63a62d803feb8eb74f99d2d6ebd3d2882085616bd80ed41d1ff9edd332652ddb0b7add2ec3136539d89cbdfd751b737daac4e2c46f64ab7c1ad97656eef3f83d58b34ba4dae5adbc72d62a0ac3266b86e30bc6478d578ee3f36944381486ad06a786aee6801df2e113663896a6847fc7a791ed2687e39f40403ae716498fa9726b7676e69709997f1ecbfcf36864bbf1d588727ca75fc7a1f3ece96da7e3d04d3a0e83987ebc8ed7ed319bd7f12a1ff3dd206b7f741cf329b33240941e7abda98fcc439f3d45afbcdb138e573e644f3891cb94a2cf0d07d366d8c7f1c771a19eabf5780d5785788d6f5cdd3cfac4b29d3127f0f2d15588d18443779e0371344c90e64d8ee3534747c77b787474b419f6757cf6d096782684e38f3146071263f44c2302e253cb585b126b668dafa6a4c6adc9e3d0f4a34767fec876b6f870217cc80715234488fb78e55305213e391362d266d817e2391a918fcf9a0c87c3711d0e7687e3510857f9dd7b684afa7be87687436b95ec798cf8713c0bfce846361fa9e6e479a459f87168ad71f7d594b80771a1ced196b8539fd419088f4e3bb603e4c2d1a194a7897b100fe2b08e3e0171e8300dbca34f95d7230f3deb71a8c33d2cba83eec3bd2dba832e847b5d74077dd6649113e2266d89108fbec3edcfc805f119c4d97776a8f300d9d9d9f1f68bbad49c3cdf01521384f23411e23bbe2384c62591ba436d098f113ff52c1088b7f318f1ef7816f8468ce671dcc8e671709cc72dcdc97320340b3fa5357a8d579a1393e3d02cfc3f5ce84522f798ed28715a54e39617fdf0237ed34e3fde9d5853f90e573910ee85e90e7ae45e15dd8579cdeb91bfa33be83a1ca7e90e7a0fc7757407fd07c7684c1cc7c1c3f107361cd749f5a972e84fa94f411cfad3419fdca1bf32973f32fac4bd34fa9482439f1cf7c32b0e7eea6bfcf270fb2a7235fbe8b33ad32793c325fe3bcee3159e4cae9968dda19047d3d6883f8b91cd570ec46b85064d75479723be54d105194a6f9cb1ea482a2209d9823ef5439f4138feea4c9fa843cf28ad99679a944fb474d2900f17ea20dc7eb55ba4aae03a3e3526fd452a3051c1638cb4f6ab304f90a44d2debe1f853a046cc713f9cb52695d3aad31df420b43ad31db4d1b6eea0ffb0d5ca8c0a0edd466b82e32ad09a85ff87f7fcb6638e40f338fec3e74dd6c364fbe13abe296ccb11d66cf1e13d7a38fec881e9e2433e7cf6e0baf9bd58f5e078c807b7a5938684f0cae326efb9af612563f6639ab8faf27893c7cabfe38ee33f4c5c4502e24d3eadec07d7417ce4ded2d2b3b6a4933e2e3d0fdd25b2436b742067faf483d6fee8d02bcd098effa026ae65f091db07c2557e1d5f6d89013e5223037c74a186da924dbd29e94da93751234e7dec11e92e111d176a1fdc0e5567fac40ffdc70f6edf07b743abe1f4e0de5065a64f3a0ebd82a34f380ebd3ad3a77d28f474b81bcfe1188eeea0e3707ca63be8365ce5b7f1799345af406abcde7cf57e70bc5e5ff92e9225fb365e396fd04bbd1fe895db684415856103fa977a41a6f7035de2d02ab7afa175fbfa52efc7f4f5a56e289bf1c0564df39db1488c184d747ee8ad39794d9ec7549fdaa13f321e9945b20f3d6a4ddeb6b9d0e3f66db8fd1a6e5fe3aa675ccd26574d8f7157ac8babef8d872eb92bf02b9b79e81677c4ffdcf4a4dcb6fda9a6afa6873e8d6c1519ddc18abe5407b648d9eb4b3df4f581b44862f12b045583d4a89be7449892f7079e9e2f19bfbef29b324982d2905f8fa14f7be4d79be32e9b127a41dda3c26f0a8c2abe7fc9449145d760ae4f5d33cfde28d82a10d00b9245542874e102094468f1050a9910908095b96e50e51686654dcbb2a003d564112d6a4377d1eb2a2da9e1c90baadca10bbda08a3e793fecd9579def5452529296a1daf3ed82298458e2074dc4a1c698f99d9a0114df6230f183eff627dd7595ba4a413bc4aed34142f20501bd1f76264950ea6e7f86eed8abce3f5ae557201eaa3dcf495b5da567af9b7af62735f4699fdd863eb5b357a04f4d69e8524777fbecdc65fbf14b2629049ff39b0ac388af406f26be2b0a1f36f61ee017f5f37bd1dff67e9a9abaab1b7406ac1084209e40c28c3984686208d27d3fed9357c3fe05a182f0c1171ea45963a9082e43edb24fd8b76f2f2801678830010cc27ce1032d43fdddfc1e1f61ee2259e91548f49a02e6d5047dd49b233695571c2415fb24928bb45769799d49322ed2be4ba4bdbe13f4ca49768b3c17be1da3b58f7092e52215c7e7db2f5afbeb911fdbb54b2ec9725755f8edea0adf92a78f25d2de9e71121d2ed2de9ea40e39d2a7ddeed10ae4ebf65d53f8f67fbe758d2fab482bd2c745c25fb1e515bea4f5b955d18afaf85ed1a6bc4ce7bfae9b9b5f205f81fc3a6fd0b53fedeb4ba4fd68eb9a5d22d0859a1df6896933bfc0c6f2d5886077ed7fb9e5eb46b6c7cc4cebe596071912830c3eb24f575f6ef9bc386eafeb19d99ecb3e5db4fa4b6fe8d514bd6e9557f9d7f38b56492dbafefb5dd12a23addbbf9e3705c1fd617ffedba7e770e8511836f8925f1bd3c8c6526e5b353dfb6ed0ee0fd36ddb22865d081f12d3bebe09607e06621ad9d85723aa5ca88db6ea1b69c5c1e7f07911f48a7a850f7df7f4bc429f9093f0a1bf2f820ebb6b87edbb48de579ce461e35fe89d410efeeee94abf4d72851f72fd4bff7c911cf53f3700f47609c3067d6e0036d6a04748e5f6b8ccf599cb57ac28e091c7d25f6e24b7040184f5179d3193ce95df78e42aff8dcf5d24f126faf0c959ddaac9daf1dafd8def22e1a5f7e1737266b95b1e3d05cefb47bed561bee3db413a3e7d3b2885201cdf36bf1c47b65f9ec2366935fd8e5faec36dff5cb49a763c3ac66dff644b3fbd2673a3aa866601f23d76895cb44626f08d2ac75254e3375e54e331abbc5ef3a246955f9e79e42aacf1e26a7cd67856438d7a503043e0388683e3188683f5fc683755f9ed39ce05f31fce05c773bcc2e1767f365ae5ef38c6edfeecb8c555ff1d6fae6ebf73e359d2ef12f141eb0d8d9eb9a9e7478e50cf9d6c8dcdf2ecb4db655e2dcfdeba3c7297afc6e47d742796475fcd88ffdabf8ac020010d89b1dcc6a14654049d8789fc1aaf62bde635d36b9c7bb80faf72dba457937f0fafde7d0fafddc7e8d32bfc3adda8c6eb0f48329a05c803f11a7dfa0d6774e33cef73e86e466a54e335f32cef73d8e1e12aea6f886a3cf3e991cbb81a3d73a11739f8abedec7635a346402898214c6ef21f3f30ffa193e35cb6fde9e198a4d5f43d1ca787e73897dd1f1fb4caef416b15a0c782fa2cef73b8f1761caff1e9423d2f2ef31b0e8b121afde2325ae15f1eb9e62a52eadb9fe664f3eba6391bd7e1e4fb69cfe1b6f7d38ec399de4ffb0d8705f5db9d8d63dc0f58134ebc4089138451832f43fb7eda37ae5a6ee31757e1dbd47015f5d1352ecbfbe893cb70b04de7a5af9767ce1a514661d8689d170583796b60baf810167d468e8709fce8f2e18fd9e2cbf7fc8ed1428a9f9d450d54d45bb1fee87d7494112f2d2d2d7d8c94a7c9e5d12f1a1590855f521e26f22baf627d96f716ada2475af921657f488d6aa487b2901865c9ad4ce5b05d639f3033b2bda71159d5ac38fe98418d88bd35e84f237aceda0cfbccdc022b40bfdd41670e76f774d8e457013a7a4f04a6a248404362789ac06f87d1db2312a35e331515c802107fcf7842980a747dda75d8415b2edf22e6b9f4f5c959a762b61a937e160db2a7a535e130acd4122b6f84c4240b223527fc455eda12fef2466c265b3349514b40f6fef9c5edd05555746a4dd888a939015a349ae684536fc44b34a01e734d6bd2d5e62d9fdbbbcbb1a62279f9cae7ebc7353515e9cb578e71ec99e6a41d93dc0e4d2d93dc0e551a93f68a36efaba9485f040cbef24d729e34e795adb6e4d1ca4f9b617f77486b4eda1f13e8ef555e9fb313e8cfe87dd15382fa68557497487dceaf88d921c7d3a4fdf9a3950328466a547c550dee78703cdb3c9f36b47df96773d25b4b002a8ce658ba500fa183c75ccecb8ba6633e6795552e1dfadcf0789849ae629ae6adb9507726b91aefccc6c69f46d4b229181baf89d9a6aa26005999e4360a6fe33336efab6c5ca83772c39acc25b76ffc6b177ad18ba4635ea5af43cc9fb6841dc35aba94d2859a3526d2319f359ce6cdbdb7d1344dd3344dd3349f2fabe1349f30aba9b1b2a811690e3527f2691eb5096c9ae673e14e4dddc06bde5c7f0db775bc46af748d1f559ff9bcba2fadc6fb4a76599ed5f8f36d6ac44b359c5190abffb22ccf32d7fa9bee0eb9b8c95dbe2e2b6bcb3715dde8436aeaae5da891189535d6056553fb843d74580de121357a4b4bf2827e512b9256e9555059a0f98aca1f1e3abbf4c7415fadc9aa61c44b0a26ceca2bd257766985005b525f7985b4faf0cfcaaae1e52baf1d7828a99585e34998191469430c388497eff94d75a9e3676715b7c49095e4e3075968394212740693948208a038e2cb9515be5c4126e9888785e3c1241569438ca42c04d892f2a1035f399820168e218b262d1c434b7f5847b2c284133c00e28ea4a4a14893b624253d5a79f807b9e7adad06819b20fc208a3cb42c2d0ded0c3aff1ad548dcb10ae341c845876cc918fdb98c6ec55811f51cdd457f5a74fe4d0981c79bba8b46bcf4d0ab08f961b7109e43e8eb7291c4c74ffabbfc55fe2a7f7e552eabca9f9bde7bcfe3ecac9f005da8db2be7ca79a0f3f7f3c028541ead0a42d9686e80c284c0d6da105f3eca645f9fba41c046cb16c9ab69cd0964a663531f1d2e92b8483886eea2104b78a0eea2aff62a04a4bf20cca3772f687af49e3ec1eea4473fb2487c89488f3eb9ad7fa4639cec1fe9f20599fa477a74539f2e8f3f3e7add3ea684f0f235868ffe6391f047af5e1c2efdf92f1a442c7d4f77523a8fe5effb792cba2921e8f84d0931c79bba935e717cd1ed4ec625b2be1a5c22eb488d8afdb6e0a46f102cf19c14b45f39a97f5361c4e0d95973c240fcd2ca491af4e5b2c05f875c139b5f7fdc2e920a2135b2f9adbbf4f5f9febad1f6ecd3b48893c49846fced5ecc3c13e899cf75b26dca8bd2677e456f0e0b7f3bd466d8bf6851e46a7f74e6aef012897e24df68977e3ad494648e6193f660fa23d333ede842af39fe8cbbb85965973357f9d92faeb98afa66ae5efefc694da067de1a93cb335f62f974e6a65f5ce6ad35914aa433dd25c22ed419579bf21261bf7c72b59f5de861eb5716f9462f8fa45fb7b87ac4a88afbcc111fc7f8d782f7679ffbdba696d8f23646fcd1e76a4b9a4687b4a65640c6b792f6e7420f72fb91aba887fe389e26718ca2e895bf69961e6f46ce689796969cf8b333ad28c865e9412608e4e218ffb8a3fe203ffb7145edd0673f7f9a12f618e9d1fcedae6e6a0932fea8ffd1da9e85dfff71fecded3377347f1d15b9e398ed13ce8d27cc9a5bbe81ce42c56dd1c243e55a6c7e400dadf330c17ea991cd6739ea670aa6f2e8dbc603fd846f7cc56dd9546c02501585afb82d6e2db7787cc5698962c4d2d2d2d250e533be66b8b1aa31e2a507d3c587aa6dc8b0263abbd09befe7112d685c70e3055fb1f0e00553085f8f42200453135f8fc23451f3f548083f40c3441ed6d71e4860c6633630f346bbb464e6d729b0f515bf291398f9fef29b2241eabbdf941734bf3e3b831a05b6c7c56f2a89279e53bf29140ce15bf84da1c00827322989094c4a5a67ae7f42397ec68c09bf6595c460b13e4bbf06ae30d104b6f5f93425fbc6afcf85dccc4f06a9a91bf8a5ccf5476eebf8a51b0bffa85037c78f622446c11789309fafcf7c5c0536f60a7fa14738be3d336d845a0536f6e5878c656e910dba0bbf649cb0c6bb4f1725072f4971485a717c1cd2a7fabcf2c8c30426c17f5bff6a4c027628810d27865441c60a29808e00c500e44095104c7071410fb8c0b18428ecc0852ac428038c3340400ed4f97877d5e13e844031f44ff63b460996f80a54adc00a33ae7e4fc85842568031fb09715169bf292ba4f80a1486155fac60c1dbc11836726005146cc598296ac073bc252ec246d498463696d26608bf9180b92d6c96c3f6f7de7befbdf7e4e32a3f23eb212d7adedd533a9496555531c2afefd9b7f2da17748ba39bf10433649a8863bed62435b2be283a742ca8e8cc55cb2b9f151136e9443acb4c5a451ad1f3d560c5ec4c2a675a8b8a5ee5ac3dafb8a2583d285192ab18cc7623dbfe2cc5d9b688597624e614b8079b6f3a7daa1bf3606bf7790d905565496fc9e960fa5819317b070e0258040866e0c61a5018c1450b55fc6007da6faa0a22bcfc2573c512ca9853ae4787ee6f3dae17c565ab42b62ccbb2aaac478f97999999999977238c11bef50863846f2bae9a30e7ac26d6c1d65eb38f9bb4acecd7d8da23add2065b73c5c31677bb1ec5675f4e63636f3abadb9f77f7eb7edddbbdaf3b4977f776efeb6e012f333333ef3a2ff3ee32ef6eefaec0c7c7c78a0c55649061484c1359206437daa5a523f84cbf4cf7e8ed45b14fedfbddc186d1bb468f1d61bfc7ef8db9ecf539f4b9af9f43caf1f01a9ee0ebb7b4d449ba097fd115b6795e79d85e7347fd28c82f89ae8a548cd1f2ae3bf6ba6580bab3bc763fa43bee5ed093d73628d5f0e40575afbb2a764a43949ed470e4b98a2caaf8f2b5832098eb53679206220acc8a8fccc547af3bbf3c838f5e2933b13fd16b27fdbad1c67d65269e9958244c9648131b4403ff44df8101ce15fc53b107f3710630b668b46d1e1fa3db6cd00c8f370933c145a2477f1ba49d6a3c4eaf06f888790dfa588485ca6b90b7dcc806bd869bdb41d7b8b73fd0336e861764c34c7012de22d0a3af011efaa475d3042d9a220ffda2d5bf2e1916d64c90875ed1ba6520cd94b61df3955bb4aed2c71df3dd8f63b0418ed7c79ba00ae423a7e493490450c11762bc70230867caf80153d30334cea08eb8628d3560e0461d69aca0bbe2fa1dd346155e505da408c211762086093cc860418d27e07451a6083c78c38d2b9400801a4620c2458b2af010d3250751aca0061b19118e7842c5991c7e22a3171b252de858c1156996e8f099033e2aa2d0a3042ca47e50031120610865b01062c6186864bf6694008978829e6263dffa84f39cc4cc9357bdf7a850fa57fd7baef3fc49f5de7bef3da941e9490ddbaf1963ccf1b52b010dbadc700698235c01851a54a1044da1d1444d0fd03843839b2d3b48a191c757bf2934d23ca05d9d8f9e75c7757bd828c8acc464e72eba1714257a89afbf023de7600607a18e22089a811865a80107181938c151e105be2843544f2e1b946aa01b9d38411264c0041b3f4042107e46194f5e50949a7d55554a417c657de552274a772c2555b2b821dd19515523f852060f56c0832d6fe4315405f9aa4a5101c45714a80b63db1d6a9ec156bb28389c9a6e5fbb6efb3d430b281ee7d78c31d0f8daa1b14e608332bf291b9cf900fca66c10e6a78d918d578524365ebd7f5c5e8148af29c06d7ac5c1bcfaa82ecdebfc4d62e222cf6b6fce4970fc7973921b7f0e3949f4e71527b1fcb9899354fe5c72121ceeab09e3243730649c24d2dd22d5857f3d4be4f9c605d98efbe736dc6e91e83542feb906807f9eb5f0cf27917f8ebdf0cfe5917f5ec3492cba5ca4fa6c9ca4a2296c91e79c0c5c120f12044910155418800a29a47024859e9ea01e1e9e13cfce8e00768000890188c964c4f4e3070c3f7cf878c1478f1e403d74748ae8e4e4042007078708cecdcd909b6d7361b3b169c1a6a6e6a746d33a2dcb58c8e604c0c4b015b0ebf2b9a414222d8b5a55c555f1df1261af1ebf3dc822814b8461bb0aef2d91f7ed29742f11f6c94ede37658da8bd6791447f1a51e4ed9a8a020369e81207a45acd3c62465f9fba681efa8cbb44deb6441efcd6b21c6c1cf4195e10ef0ff44be9a60ce4ceec1281ce606c6cb4754b7ac2e57e358b668920deed472b27694d6c1efae3b2c087d48897fef9ee5b6ef6be90c67cbe144485147a787680987ef8e8a1938373b3d9d468d9c42e695511be661cb64d55e1a5b78861e7e13cde34b4252525250df5725616934c9521c8d4ec4159ffb02f1dc28a4f159ff61912430577b1d5557af28284b878a2636e86ee2aaf9b4240d093ead9479317603e7e74496b151f86c1f61e9d22096ffa4d4d91838adf18989ae206fe3b060825fcfc1d83071820d0d1a208f96b461030c030ac07b5a9f0282188c0021a14218421e0a1c5567d5a994159f93319b526d7939f3ba8307e4e9f3ee92e11965cc631593734263be6d933271b8567cf986c105ec902e199f24f8c5b8de88ad3999bdcc51ad174c9643ad3cae584185dadc9e57c51eb79f55093610ac6dcf1b5fb237d62e7e7d498387a884dde75438062785e87fcaeb746049d43d075519c09028926800009208c20856fdffc05c1a1aebb6e88f7240d018aa14fecdb98ef5e1b0ca1042da0d0c40c467084a1eef91ec38618df90eb6153165bed9ebd1bc2befddd6382e8e2d975fa24bf426254c3f844114648030457a4800e16a4c0093c747091a223e5e33745c797cf7e53741c81824c0b0e1e02a9f9010b72809861cc2e3b860564d0b4e1c41a5c74b05385194134b3e0a1eb98bc4ff3974cd2130f817efc9ab154876462e6488143124b4850014413688000448a244891870a948039c29636d21461470c4c52842185d2cd0966099ec08196118441c11a3fa450428a296c90d0a20e28b6e062054994e08b0f298858aa6385df549834bec7af19427cf1e21911264d9828f8f0a2c7a3badc80096cccc08a244c21830a9fc323f60e3b94904388236ea00223e888910711ccd09264856086998317badc60f0d075fa341ffa9a4cbf649260f038bfa929c04429266acbf95da38c16241cd14419334e0cad6fce6c29b6f7eb7b4dd486f31ab023d503a5209820093de8b93dc33e37e078ef99ba7bf00607e6f7de833046f8de7b10c2a7048b2dee6666cbf2c56e6ae86e8b9615b9b92dcbb2ae4bb2655996941486ad65b7250408e1b2431823b7d78dd073089763dc656608217c55151772b645f62abacab22a4e40848f992dabcaba638c5555c5204008218495d72d4208df8b314208618c55554508218c31c226cc0dc086c6e4061ceb55e542bdbbefa602dd49af6ef9a6d3a7b891e3af3af7e9536b444b61d8de3e2eb2c3e5efe566aeb6f75331af946badf336bf652839cbb22a2b0b29a50b3557ceceb4882b531e26565f1ebda73bc9dcbe9455bc2e29a5c4b04b4a29afeb92afad1324c5ee628c3dcc2c6fbaeeb678057637f7f38ca6f713756066ab0119ddc7f7aaaaf935e4967de276e6b8bbbd42038c305e8ec224fd90df14181dfc46addf6b6ead1b1e9a598edde5aeb09b6faa303373f37bddcccddcbbbbcc4148f7bd76ee65e6dd81c9648231287b3708b802e38310be78c7d6ddd381312ebcc9a13bcbab03c5eec5c891e3b7b80dc60861136b6969290f182510d0b6cc1edc9495426372038e78f93a6b4bfa2d7e2ca8b7647571b0ba795279ac2a875665556e5995c718e30f2fbdb2aeca7a9a922a2ecd5d9eb21f91ec8edf6bdf7813a5bbacbbee8eaf217caffb753f6666d88fbb9b89d8b60d4258ad69d321e28adbb2ee868d45773f08bd2b8c51ee8d0cdd6dddbdacbbf71cbe075f8c10be07df83dddd3f54157d11fa83fddeebf883a7218aa4a408a16565dd3dcbaa2c2abb7b10428710465855314218218cefbd07b90a2d8beeabb8a3f820846f07dbc286c6e4061c5dde667d2aacaa086f6cb07c61a654bd6a867df6ca379d59316f557418ab685955557f46b83dfce12d8fd5b32a8f9592e8551b39206373b0051a931b7054d62539fe9d4c69e369025dbaa4d0aba43c4ca25b1edda297bf141832dee73705e6cb5b7fd1acbbca698822c9c806a5947db26e7abadbb2ee2cbf02bfca47bde59526bbb39c8628bad0104597b53c6a0af8e1eb513f0d5174e95365d69c584b4b3444d1c5f2fd69b15bb44b07c9f753f93e0d516cd18199ed774c1d35f8313a20e33705059aafa6afdcf43ba60e37be6988c24b77fb3ffce516578d6c74350ca3555a47fdd22d8e86288ad08824a5218a23badba7218aa43ea17e9f351aa248ea1b1aa0b8a3bbfd2ae15b3444b16535279645698822a9bb7d8f5d99b1ec927a90df541424f89bdf541449f0f960b614db356d50e5c026f26097c876b754267bc34a6259cd9631b764d927ff9e8187993775b7cb4a9c7af2712938b560e67e3ecc400863f5e337d50227c8ccb22c4b5e3e4430330cc3b099614fd4649aa6693536d56f0a0a3137d9b66ddb0d0ece6f2a0c16e864393939393a3da0d0e247e64323da3bded4ddfad08ce0ef1259ea43235a22ed3e7e68466cca985b5fed51b8dcce0ddba65aa0f435fb6e782d92fd76b948ce88c29bba039271f69b8262cc9bf6925615e16b5eaca66f783065773ee69c4898ab03d057a0df361d530fec02e1a619638e3cd4588198289c1882370fa1165b1ed27ad12a402fe9d6dda623e16e9b8ea967d3e91f9bdf5418641efea652497cddf8bd21c680f19b4a2d01c36f2a65c5fb8b4a5cc447dee2499cc5e62f687b4eb7eee2839ce9f9d02748e3f6c9f28bce97416dc9a33add451ede4ff4c84377d1fb898d1f46676dc9517791ff71f2959e87a3e8b0f2952fd48fcb38db743a6887a2af06a9ec166cde27fee73155c547c7a14fd0a3e7c049f801f1503d92823e54f70d568275ccf561e1d9f747c8066d42dd551762f88da7cad9bb3e45e72aa6b73c06b5d7210dd8560c17c4f137bf62b82088e7104c5f9b0d0c099620e7b6b160d35881961134a1041b5ed26c4058c29c734ee90b84082e428046a98832b89ca0063660b0714d7a71dde5d57dba63e9db0bc2a8431240d4135e2c0186164858820fa81882350fa3c062cd3042040fa17b77bcb9c59974b82dc97dba217d828ff3eed89bf3e91f01fca69ec8e37dfca69e38f3d581ac1dccf5a9ed8593f02f2769207e851ac962ae797de1f7e7f7f2cac9aa23df4ff46a0282df6fc44bec2f6a123a466b90aff2a3d71edfe32fc9602c91e8405542cad354493fbb45ebc661a4dc3693c9bd7640155824eccfaac1060b449744d894f0d1d4844fbae36357ce492f888fb03fd163901a642679e439ba64fc846d36101fc37c3f533eb344a263d92a9bf9e895cf7c748cdbb66b67337daa3a0f479f6a95675fb970bbf6b7654ae43f674d09fc478d7e78664af7fd54c6e26353aea2bbe81ca6bbd85e901a059118c5d1c2a3b3747737fca33eea57f2dce8a8e13f87ff284fd3ca1b5731d767fa3e9c4fb43c23dbfa5b5e24eceb96dc67977d8a5647b738e6b2bd25d0b76b6f8d099c2ffa6a970b75c43cc6079f35ecd1a37e8cf234b9b2f4f385f4cf9babfd95cf6a91743639d83f90b526cdd5e8817f0e79bbca276c8e9a02ded2d25ff4caf58a54596bd7e5043ebb021ee68d51a3f717ada87fda9374df3e07b6e7ed0f56434c1eccf7ab3fe613337a5e2dece28c300ca358e4ab70c20c5bdfebaa2a8a456601f295af458d2a0a6608e85c6284d0e34676089d4ba4dbfb59e702a9e9fdac3ffff5f6f97554446a54bf97c76ce1713a6e64eb31fd713a3e8d6c407cf84aaf3d3fbc6affdce4b5c703f1e73e7df2e1c39f0fe9133ff5e7709170fe3c6e1027bd1fe8ef757d2a8ade0de9530eadfc43ba830e83606e84e3f587205e9f633e1fe78eb9a790823b0ef5eea063d4c7ca06fd66bbeea0113fc522a529c488e3d1317fcf5370a1f7a20a2ed49cb439dcfc07ad727313addb8fdf5cd2fae32b27b5b67daa3ebcc9b74f405cfaf6c987fff0197fd07af426e7e14ddeda02f84d3e577bf226231cafd2e4fb983b6764f28a7a939ba8c9b1a0de44b1fcf047a9118e631eb9e8d2a1d111ff3371eeab11b9abe0924b81726034e734f7e75850ff28961fb44a109a05c8f7b80a2950a31e0a6688ccb9d4d46435f2fdc01de79251e83cce65876eef07bae65c78e88ee338e6fce5056934cafe40df91b266cba84604c4575b0264ce268abe9a8f2c079b0f07ea0efaf369654636204b238ae187633e37009b3c7a5994e57d0ed2f7a3e37046d22b0ac7a59438b4c28aa43931e1f86a443898e3606ee2ea0f8af9e32afcc1557e1c5f2dc7711c2e92853cabcca81ad9a2474d890f3fd21d741fdec39f4f1fbe1a918fe9801d9a74661987f9f5ca5dce48349b86937e579b815f237a94b56cd0f98b94db7655c9be3a7a1d1d1daf927dd421fb478b74dcc6276b3da80e57b3d7e16c7cb52536fefc7196e770fb38dcfe0d57fda16fdc95f895bf7c95eca35bbe2f6888e95cb4a96d194774016308344845618744cd600a2578400798162411c726b40322b8b8a3067338e183a1e9b0c6b964357408d31097e999e60610e3055cb831c5122540626866aecd8c0e619a394508a10c332a18530432867c9ae8c11a5dc41441821c0c89910e9f579f4d69d1e5f705ed50ed82b6a4a42420866a0c0fdd68e3df316d7cf117ad323cacfce5a1cbb79193dd3db7901a359120ca8a3dbeb4a9dbf4d079a0891d3e539e26ecd161731373ee646b3c4e07d3173dcfba7b3f46b62aa667176a697943af554c6f71b21788ad7297ed56d00eb5b3e6240b3fd38aea60fa488ba00761c2bce59d84e51677f15627f196932193c675c9530d0523bbe8028c6e08bb8bad7298b79cc3f40973cbb90acbb70b8039ec02648eb9ec02609e7501a6630e35224c23ba5203fba33ffc30c3fbb1fc08d332ffe4fd587ea5013b24f47e2c376ac00eb54faf5b66fa0e599eb1b1ed10f41dcabc1ee172783f9667dc9eb17c783f964b8e872e6e879a4b7acb3335acb71757b9e4a2b3c6801de22eefc7825eb9cb932d9c040fe68f07cb6cb0559447f31daa3c521e8df23ca9bc013b54390478283a0f45cf280fe69407a33c0c68870e01f6573989b724c743ab3dd9029f6c69677f5e7e85a05440e2082483eed74f24f144091e2eb1c513227802045118038eafd9f7186ffca6c6d0c1f69b1aa30e188405b70ad05bdd0e21f4a902f4edcde900f490165d8e39e61787f95c2da3f5c9670e9b93d5b4f97b35abe44f364ee35acce6fe8256faab40f221e42a6f997191abfed5ab8efcfdb2415f8f54c68e06309375fc32657f7b05bd8d903efa8e117ff4082367e0e83d7ecfd7a73616df527a98f7df541d3e782724f140bfa9269c793276dc71c4672f1df3346fbc007e53695af076d461471a69b6fcfcd92333b2fd780f8d48fa34b2e1f8e41bad8acfdf786b443751dc34391c0780e3dc7814373d8e63dc517c00f86a4400680879630dd62bf834b275d3c8c6420f5f1fefa12991423c1ed972b479b910eec8fb91d57ac6c115b8edce87dbee365a37f597f7e0ae1c5a97cc5ffe5343eb96f9cb01a083bffce6729c34fef2ee7216b828975693d76e4e1f997b77eb57f48961b41ef5473f62c64c99324a4a64c87c639bfaf67ae4b1e8436b82f5d096b4e0d14d308e9e85724034ad115d91d3d18830dad3dd76a9f17d39be6ff37d37be0fa7479717c4a91f20def1380b29380082f80a9cfbf89c565555d5515beb425559561d5f03e0b272818740393889e5d20526328412913f5e65e77563c1ab09005e7d051fcb9296b5300e7807478886a50b938f5a0195bca294db66327997392b2c0e99b4a89a1c590e6119006a519e343f761c488ff3a8e029b807a1ce2d8ca31241f3d35b68c14dec3f660fa7becf6f5c85cd7b727cc74d57112234003e304ac47b60de3539986f378d390e468bd01e012062c52f9665318572c0386e86709abbc04d177a2db4b0dce50509f1fea15576b46e36ce02ad261d0740175f81d6ce7d68051242390da51588a315c887d3da05a1b5d35181564f8156b7e9a1d5c443ab698702a1757bbaefc7447fd01406bdcacceb66e3efe3480f1fdcbe1f1c1d6edfcf8d0db7ef67a339b46efbb8c2f8623938499472db4c26bfbaebbaa8e5d7f48bd222cb31bf7c729cd88579452f0ea33cd59117b40f93ddf729e7480ead404035b4761dd3ea6ec2681a8a79ac12c34baf5562f8cb73bc02fdf49d4c69fa8db6447ad1c5be694eb2977ee449b96d26d3e5b5fb8bd62a313ce639b4027df40af4f5c8d748cc994239b848f4391dcac149f6a7478d68621666599665b9506318857258d67b9a92495dfa5228c734f52c9403a2315dd1bd0f9c645a2497b7cf8bb3b6af7dc4b76f4f7c208b640039feb4275a766969696928f38b83efc3c347f898184c5e398e71f5a88fe0e778f41e9f76a207a359fa316feff1999ee333eef45fbed303fc498fe05774c2ece2def7f4e9f276ef2eddf596985d5c7f4f9f5a4c86798ed79e6ffff6d1e96e9aa64f239b249a4eeb13a0bf7c1ad9ae4b76371de3aa00cd2a3e8ff9bc74f0f98b164ddfbce274f0f9a21cbf5c7260329f73f38bab3e7f61b4fafce55b9af7d34135be9a6fa7b92a2c729a1be7d40be22ede586c9553ef9caaa155fea5514e7d5794bb549dbfbc2f8fb4cac6b02a6fb8aaf3393eb91c5fedf27ad12a3e9fe3d3ca2e6ebfb1a8f0d3f429c7dbf98e0ecabc8f2c91f61c4e060ee32eae46f3d588b4e99dc3c5d5edaf2afbcbe2f8996b319ca693306cabf18bab47f0a74b8f5c15d35f57c6b11adbe535fbcb3197de75fbdec9ed6fcb2addb56b1c9a6ff7317d649a923abebdafd82aa7f9f6342f28cafb693ff3edb56fe4910cb362c3bc668fe9f8b4a65b570d980c4c171fca3c52d6b426d86399b664dbcbb17decba9cbdf409f38b5b8d08a37066dc161d17c2876c7cce4a4a79d41557a46d8e945575c4f7903934676a3839b4f66b8e436bcfa9cdf8f5aadba37e40c266fd00567989a21c47fa8babef31871a93f7d5a415f5d3b188455f8d6852a3e7c4724c16559e73b9e6ab4d17ea1c2f1f359ae37372cc99540195e7ccce76b235b67ad433f34bd2a2ca35bfbc8986516e521ecda34fcc2f5a99607ef9e5ac39c1fc721bb80b27b95c52a1f7570fafece5a76f5ce5dfdc465b22fda24597e7788d9c580f3a319de93653d39660d3330c9b32a571fc5555559596d3858b602eb5fdc85d8ec3d538c645bfe12c177adb76511bba8b5b6c5c081fcafcbab4ead26811e6d2a7d78b084e52f9af7d63ca373efa4eb6c676f4bea245985f3e5d32165f105480bcbca247ef31bf284fe5d1b5cbe3f4ba6fbc46a7d7a367b90db72d00cd330eb600345a8f5e0df7c6d7e8525b32bd4852cd2dcd49f673d28a05f5976b966579a511591717b38bab30ae72e0319fcbdd35d5038f618fc1afe65f5e30471119cd497920003df306409f8efa8babf22fae5e1e2d89929489e022d1859e0d4c0427592f3f39abdecf3616bf423224463112776b4be0c0b6fa987ce3f4aa637a13dddecf731dbaef2753da30aff1d91a510d8561ab6a2aefaa05b2b8fa9b45f2715b24f0dfab71cc75fa84f9336944188561835fc3f550f8743aa8a77f9e4e9f7abaebeee9538e3fdf1609ffbba1355cf5f99aadc27abef2ea5f5538b4d6b80fdfb84c69c37c739fb77c4eacc27e70be442cdf389dee2cbf30cd2f6d89a6514bda7038dec3855e0d139fefe142ad43adf87c0faff2d2887c5018b61e3e39f3d1c37b66d8ef41c1e8b8a593437dac6c6b305bedf9b9b2c6b444da6b5ce3eaf69a635ce5a16e6fc1b7bc666fcd1b8e1f87dbee349737dcfec6d970558d0bbd1a2ea359e0636e71d335ae6693c2b0619d05738c1ec125971bedd2924e674a5b15e157911ebd87ef2131ea065e52547cc97ed4f4bd79378331bb3e31c7df272c2d9d9e3e496779b29ce311ff9ca78974cb6dfc79955e2dd7727c97088e4b1c2e87abd26f9c3527cfab746b8b7f9ee363b4e063d6d3a7951ce63a965fcebb446a0e912a1dfad39c3ccfa1ad39893e6b329de896749ccc71389eca6b7c939c8ddf6c1c4f93e8361edd86f254ced3a4c633afa13d9ef15097dd17aa6b5c51466577dcbe1f768c2bbae856a35b544722310abec783adfe95679957f91996655e753ecbbce7335a2b876ec3654a9bf4cc6dfc896c280c9bf4c9990d076b342ee374386c867d495b5b62b911fbf32cf19f57f8f0397ebb91019624aa861b09293cbe54a0af556278e8af3988a6bb6e0ea2117a46d65b481f9b43f3f555733e87dedc73c8c138b8483b817270917618e11812dcc192ab10cdb73fc9bdafc6fbb4de1dcae24784c94eb0e34ddd45e6e012596a816d5362b4e0addf94182bf8f6ece6372546112931b6f8ee3206196ff98b912b7a0e39a1ee6ae5954367a229a91c1261a1acc62da8356087b4ec522a6948f38acaf7f33c46afe2b3b8f7d595387dc62c4ebfd05c976398740cbb62f479d5967e49affc578c17ad9696808c3525cf2da1ce160916fe2a935cb528915af3cc61b6ad50cf47ba8b812bd033c76489ccaec07859de7bef1dbdf6a3f74db98a2347fa48f7eb180d109f293781051cbfa92b8e30f39bc22288ef348b849fbd4afacee3d917f3cb9f5c974f9ff403985ff3f22ce3321755c2180da76133cf3ef90c4699ccfbf1d25dc260c15d7c497a76e997af4674c50802d3317f82f96a10e08100e69967f403d331cad38e396a6887789e64aef90ead66f444a3649ebd013b9451ad86e93c4fcc3cfb0fa8a133cf8e34b45a0d3c4d9f283d3bd6652e5fcd861f667771514ebd1f76a1ae908c9299cba54b32cf7e5d7e9d29c35dbe4232318918c6cbc72f318967332f08cdb3c332ef875d521e0848c71ca31f80699e7d8776a8c2330c80669e7ff8410c04588e17a091347479123674d1209092de1b49382269e872a8f4822e673f13cd48eeba5c462cd60c04a45fb442320de021a8f47e2a24f34c33a58dbb305343031ca0e12589bbe02ede1a3ac0011949dcc573e52eeac0c38e3492862c875890e952a197e71526f1157e791806267d7da92763e6cca2d934afcb4b7a9de605e128210147d2103b24f382b88bf7d3054c25b1810b5243af8bfab0b06805aa68edbe769ada6922adf00c84641eadb04cd30a95aaa45f214815caeaec8bc94b0031ad0cd37c13e0db33680a23f5ed3dddbee63259005b35f1d6e3657cbe876c9c0cdf9e319730b6b04c3310418f0ce6f8a637f09101153f6470440f30967c1c01a70d0d0c3480fca666e004cd091be8735a9665599665599665596df97b96e5cf8ab082f1bababbbbbbbb67ad1ceb96d2ade76ae558502f973063736233663ca34634339fd99c1cffe430e7c915459f5c91e518b7af11b5c60473b6b2d69c60ceb41659fe1c734b23629f1857141d4e67ce09e693568c2563feb4e818572423ccd8d2e1e09b8c05e1f934b2b5125bdd140284d2f8e735d4eed79f1f61e71efb10a03e318d148876dd03921b84026388226cc1061192528084a1e7db06ed1d59808183242a46a0d4c5d073d3061900062c50ba020a598ce162e8b96f100192e8c841156252d0451b43cfcdd0a0a6661776d016e942f890a4bc93e1606bdf8790cba229003a6f11d8ceafbdaf547e249f97086c6f2e4bbf0ec6871e78956551a3f7158d9461bf3013424a430cbc6860db540c92de662753da844ce833167593606b67d2fe68124be93b7677b71735f8fe228e25b97d4104abaa84aa4a1651d9f0a4bb2f8050552ec0c1dbfc9631042cbe02998168287d71828e5f20d15f28d15fa8a0aaaa1a846648e137f58518dfe337f58518ab8c4b0c19820bd46007523061045fb4208c2445e0f1459749c41c2d10f38214cc01042090c0c08b36e415292ff0d0e2c21844cc9104e4375546107efed2608d2fae31ce48aa42c003971d2091071071f8e00503f0420a1aacf185174178ec37e5451b787801457b814485f2b7295354b394287daaab74c40c0edd1019ba2a72f12003757715c3161de54815e16bdf3343f862c60740b881822d47621063298918bad76d37e4499f764c182bbeb292a07502cc7a42c606a51a1a1a210426c8dcc00b148020c213431df48d832f7406a1ee9e5c108b68551555aa8888f1005ab440c11d2050e204580cc5d3c798c241d2c719a850774a6466a44a39b88140715382a302aa628c472e8754a83b468045a5b3e54f5e90a442310611638c31080f64b5d01a475c40336c0a01426bac20eb57c313226811bb8a29043cb10128490801332400fb4ddd20cd6bbf6394a0cbab41625fd09308bdd092bd273628d56083d2082e333d784111aaf802882b0490c48487d0095a4751cac1cce39043175fa2bca0357d17676a562abd9fdd17f46485103b4a17653659d14e090645543038a2da44b06b18c10d229410a20e1ec82006a53bbac8eeb829b4a2bc208bee18609cc0ddbda05dd3f3eb68954be67bcc44c1818cea6140e022059769e7178d2d5b940cf0b08230086e9310608b30175e1e3e74a9e38b647f93fa6785b8e8d23ffb556e5f7108e84e2b626e81c7c3328460c4c3198420509f62e8a01df2d7430310a9f7b30fe10b9237b0e2e32f1a496c7c954a2a500282407d44083e21f974c610a1059b522aa20995122211a00fde166cc87e566a0b1b48d8f39bda228bc77ec950e28caf40f28c1484103ad4814966e4018532660f1f5bf3e09c90dbe73c188f2d48f0b333c865d1143097c8f36b8b3c678dc9fb08bd21bd02fd48feb5445e967ea83579d776cf2113d8e43daca8d17b48e512792ed43c4ce2438f0fe956373444b1457c09b916638b56c50ba1c5c15d0be72dcbb268ad6815a0970b7fce1893c6c35f3294e8e2b5165b68a9d162093a5ab8a15343524a8b1890a182118861e60b27aad7a92fc054f237e585115fbb21b4e8e269b10524638613ef8c94156ffd8e61842b56e99f6fbcd1e98ea77d535a24f1d02bd7e9e741963f1f7204017d62d9b3f5cfbaf40a747995e1df92d9faa77fdaad8aa3010c9aeef62347031490a3018a34dded2bfd0a417a28d8ccc62feca6629bbfbe3a971254e451041520a0e2882a4a60848e37b2c84cc0ad51068c261ca165094cc090aaa3081730e10226bc3ce0a88110c232d9572eabeaf22750fabcaecb0568d454a91ab4cc2ac2464052f64ba607457cfc15638989af4066e2182fbcf0820a94ace0628aa532a230c10b4e04610c306d4491841d90d10254071e5712b02064bf648e700614f548ddd42360a14e6f5170a1eeee1aba73a1a236d027b1d78eefd6697fd24a2f6b5aa50bdd0baaa1ae52f7847d6175a44f6b469a39beaabc4c398611b45c65b411bcb105171fac21061b6deca0880cd0a8e9cee28aef2cba543998ebb395d797f5a9b6d3cc8a103ea5245c664ca50a88314a30e609779f51c71dbdfd8e61638cf8034e429f6077100327b85802156d74414100b2402295450a747e5358d4f1f397cc1196dcb0f93d2309656ed8081bf4c746f8d1be3c8f5d42e747bb8731450c21af30020af94d5911c76b4070f7e986f0c03bf7f1cd211b9bcd6fca0a25b884ca1d0828862332bc204c6e31801143f881105c7ca182481536b0020aa0234031006d40510442d0a00b336010a484a8f4e996e963819a04215308cdd00c20011473154030381c128a45a3114955351f14000e95be4c56208b834194c3284821630c52861003400044006668b60d00e2d8049f5030447869b24aea61b3be23ff1f5fd33b6523673e592af31f8b5a5cf9719f872d3a7202bcbe6a27e84402b23200a8b8894329647501b9b4ece46414459c6bec7d16474c445dd1eaa2f9adb8bfc63bb07248cf85eb2ea3f75735aa0255f25a3038978aaf525ba9e5d9c3ec92f0d3575c0b367dff238e995934aee82dbf7b03e16e1bf0ca3c9863c3d592ce38a360ae277a126fed0c5dce8a3246477fa6d5d8b03609f241419d5baaed0f5c32ed24067979beaccea91bee54ca95e476945a50a0a2d56d6aa9b15bce3ecd51ab085e03650a20e82baf878a7cc906d1063da67a8fd83ffd13654624a34c4c28279c36d4ea98a96ce61addc4d55cb74722281457f4a396846c4d8e7de6a55225003d55135d258d2b121abe27d4c4c8cf354f80059d3c929d677e29231380c22a45330ae4d5bd54cc15b1333db127db8e9d42e717ee426758456857cc0050a05fdd119342bcee6fea89172821462a98079f5570221201eebefce25a3cee85193cb5aa63ceff90e293b49b2fcb1793819d623af7bfb2630652aad7b664e7675e68c56cd931d3b835ba7d52f09721eae64f11593ed72baddf981918fd3d84b1b09b461f67b135a33445cc342d7527e38c7bb8145e05ce2d9cd544a867600da70bb9b9443e619831aa76d007912e9f74c4e59d19bfcee2c8f79a38f30a896d31d1452e60c06a42f1158579b735874cb71eb389e93a3d22832ca55c0dee42d8919e405298eb3fbc7feee36d1d42f819cfa6a8b7b0fefbcf1ea1fc6df4dcf189a6dde78f5aef22bbedd117154e57d9060e6b147794870be45fa93d37648b0041c0f3fa6751e2b22532cb61e713b5a2300dd35a6ad71070c2736c0b307679030ae19b05e1ac619cd9a0b0ca8868d5cded61c5e7e5e3da955ebbd6a121b1ba85674265a132fa5acaa6bc2eb91631b2500b99d378856c0d3659072efeb527a48d8e1a76a1ffd15936d2aaed12967a12327a602ab9a4cb98590743f6530330202acbe59e8d2a09b0ef0093d638fd45bba3995ea18a634c19329ff37ff10b0c7da2e0b31904c7261ed722f302330ac647d088c94637cab62451f595b055b84d37de77c37593537184b93260c3d12d29c85f6f7e3ee028ce3e325945b662dd3efcba435c5d59d200dbd86624ffe25e881ceabe3fa28626e008d0bec39d7643dd1c95042c844e5f35c217db57a781897c53781c0a317bbeb104af4a8d03a20c6660cd33efec65e7896f0965fa3051e4fc3a590057957630dc14c1f557c9a7a0e29f185300c21f21d85a44dfcb29e0cddc733efea565b6bcc359e7bb81df06daaec853a3b413f41395f2af4af73b099a8ac6cc28f2bb2030346bc74137fc2da4a4a6294e050bd77374c4676d13a58cd3c2fe53dcc5d722a31384e63842b64e88427269894cc1c14a3635b0e2f2ec3245288e688b6d64e017a2a1a8a59d1f40c4aa2af3c3e8e6be593c4c2a144ca7f903c65b6d4d5319ddd49b958da8db7a16568ab40e569cb76a9ca070f67475c111de7750be92786dd74a4b91bef78b8c7857c0e5362dc6733d0678b31aeb3b43dd58eb0e37cbaa78c54b9432159c3309eae90feea2ba7c68ec8977f6d98c3e7b95723e9fc7acaca3d933cd6ee56671804e51b718c9785c661bc6991bcfa5a5085753f89d3af6dda8d19ddb85d9846d4527e3074ab3118825129509501b06f7a3233b4367294efad92974d6c2c25d5bcc8ba6830a2d617e4d5f5fcc680ecb736e365e287b77f418a297f947179a78bc6930752b4c4fea82226c095255224a833208fedd864dc7d1605a53befb01a8f0a870ec625351e0d0987fc92ca66362647c92801fc3bd9bc88a0a7fdeb397d467158b140d8524545fa9480db2e8e1a2ae24b31bf33a4fdc39085d046fcba9638e5a5b94cff3b1699063dd165ea8bf7b2ee49cd1d4f67577c7ce8dce44cef5578d677df84415a97464b889b81745901adcf21a85a24befda900716fe34ba44220756d959b761fd3d331017f51bcc4010980f249c2cbf078c7c0582001650d21f3783bd7eb7005e81008ecb5e027a0bc6d60a2565ae1518df85b356a41607b90a19f0738f68bdbf34c0f78fcf2fce50019086c809583ad8928abb286b6561adcfd2a7f95ac3d7da4b37b36588ee3eabeb3b474a996435435492825e09c003691353f38ec6696f944489102dea1f9fb5b9739dfe08012ca2e54fe4f4ef0c4b43e3d501a3bcccca31bea2d25cd4b687c9f91d7149dc44b2741136aa2227e20ba6b03f532d53eda14644860273764c105bb96fefefd5b53f5f30298e6b7d55d9a2345cd98f30c7e500ddecd3d579274e257db21f2dc92adb2e9ec431892a930127b1c4e99976e64966c6cb62e97eb52673ddd14813f40663dd181010a89e11b7c5b8f4ca4e6ab8b8e98cd139f6449e3ee5f07f3e30c26512976e08576f448241235ee3f7e558b74904ec199fed626f0bd431b9daba24327612eb3453564174ce0a0fd2cbdeeea9466c303f97ca6c5550eaaa6f61b368d2264f51a59971eb6bb88d020939466bad594e5b3c584e436e36cab762d8cd2d94c75ba64134b9fa1ccfb6ebf4c1cd31c717b713cbb3ff976dc08019fcf000a121c345448f2c90ab18f594a18818b44b93933837e5f9a95fa4e30e691bf3c8e0afdfa9a5f266696377f00559ac9f4b19ca267903bcf26060b61690f1d592c26dc8783d2074a2ce064ef432c14464589088ea24a97929933f2fececa073c26ed576bce0cfa7953213ef7c431e89196c67b4a2f28b185ced1b391b3344efb35fc9a6405ec001b230e08fab097a86fcc7585edd6fc7f95987d26de037902812c4e6fa825812eeed3bdcfe012de56c6320e095462591853668fa1976789d569575f3f950e834776821efe5ceb5980454adb166d46a11712663b99cb0310d9fd9b40a53ae5e34e97fa9c730c8fe3f73c46e2f0b3ae99181baf36c7fc6a59c36b760365d859351290f2fdad81a48016b1a3b512b887534f573cacb3e05adca1aa84c8ae144fafe6064bed13afbad932ef20da5d74efebf7a441b3a2cbcbea6cf2b698bacfe38099e2b8508e9c1ca83d950c31540293ce57e9902c6d6eab52e093f5612256b6bfd182ac854cb458efab6673524ee04ff24630fd10b1478023f55b14483344aadc559fb7f76b142c242ff4248f07c2ab1c4c4ed6200ca4098c534f0bf3d241a336e0103c6531516ed2e4cc13071d05c4adcac3a91c6bc319a560216f7e309468296c0118a6a171b68048f99c25ff30d083dd54a9d4baeb6399e136d56f619e0d10b11a8ce739040fb662fb0c4518c7ab1c5403c6a2ec799b9f8869e3ebad19f9f8cea488360e841baa7373b6f3d1eb97fbe334a7a0e5658c4f29caeacd18893f59cac927577be4b5e5437439f293111acf116177fa1d2e5d9d085396600fe3bb9e98d29099cfae93d038d03c674d79ed1613f245c25e769fc6c844b8ed5bb56f3a9dd3be2d0bf05612648560d3f4bfc1e529cfbc8aa42931a3e9452c636521479b80d12b501d4a99267adf809a813430d82b53288f6f240d5f69a67afe10efe50fde30d62637511d56cd318d3974d5901ac1573766271cf95e24ab2995b9074c7a4deffa2f1e723cac10e91734068d68039c872f6d1d4ba8b4db8be84b5a06b01b81598a8a913b4d472380b357d5c2bef7ec9d44533968bff8f50597f1369e9e8993b494d80020b888f4da583bd09d8d95cfbed7d18740e9b6b70d175fad5e58a4263ae5ab21ef98e50b36c200fb45d4f8859782ac87416d32e82187f9281b7bd62736851243d586cc59c92e4fc8ef2646ae97480b8a676680ed1829a2743302224c0e485133fe1ad3e012cbbed68d692bf6e030b0fcb9583d04c49973db162b9696688a1a6ad890519ffb1e12e14bac314555be394390ccf7a2af5728e7b90c196ee4341345888dac340b6bd489c26e324dba5de2d2de10dfb08161244fa0ee2cf5211c007b252444f48d651ad63ea38034c028c2aa21b5343a09d4163161936719079861d0f2e082910da09e2e8cc3cfd8379d473b58f871b0e4af0431a1bca589bcf65a9bc4f39928e61f19c03b636dd8f7d0ded5528a79bebdb968592d1bac49fcb46c97dbcbc63785ddfc6540b8ddd83b715ee1e091032abe1522db63c6e83833c45c53e8dee3c64a0c3576e04a6d8cfe76d3f8bdbcf057a3ea70f4c34f10843b12b55ce8c75a56a3f427dd4e68f1523117aac791b69315c821a5523a91a66a4d53e35445d65a9f50d584f17265cd12b8d9bb2967d14b3c816476217583bd04d2f0418cf19df14103b275c884803edbacc1d76da617b4dbb678bd0f4c492c10e2376812b1da1bb9702b0b70929bed65dd9e03eeaf8c43e7ad3702429b34da9833ec5427c0ab41b26da5ef1407c90cca1c9554d0481ac7949a030068fed7753ae6a16498bb5b4f6636a821e6235ebac724bc3c0c01d104bd82593d9fe2c8f36fac1d86500cc7f10685f5033b2b92d3ab0772bbe8ed62e1f06f92f34351fad0edddafc7097144c7e4a21e9c607f4cc6ece36856ee541be8db1eaf368126905a4b0484cf4384a0d4dd836c219e6f7cfcd279410e231688eebd253d1324121a38a20e48a5b245e760d01cb0e0a50bda13740e46911e654b8884829381658c0086276e8cd74cf19a66d6bd8324464cdff4221209af68e9941cd7fac19e65741f421dce9f124fdc5d58e7e422e24fe2dd289c40fc5bfcff0c3da036ad74810dba351d4c78c055c2203684a15a46cf22325463f6bcfa554d422d9581f8b044146f8c66aa59c2309cc0900a18b9e1ada9177c491fbc5e8c74ab78b3366f8e1295f82d51e41fa1e89d00d8c19cf26f244a49a940d86f31fe8051dd97d6cad86dd9d244f7d02aff04e4ddeb57114499abba0d400c5a126f31614e14cec9ab24ae437e0383993f065747a4d47f6c13c8eeb3bc2dbdf3aaa90486c251e971d37313269f98da4d9684897e20dd2acb5380add594fa71092a15b4bd62f579504311129d7cdd7f9c0aaf5333365d7a0dd0979087149835e1f5bb0b2b10aa52749ac0ffc3cd1f88907e971eeca0d303a5907f41cfd8cda2c5f480cd07b93ec1416f351cf8d537a541faf97bc319bdd64176d009293b99f8d3d739803bdbb0644a9e4b7ae1dcd1194623d85fa86e26cdf9423b2fa18aacd3d30cf0b8dc4e02fa6c5b2b78a99d79284eb32b248b9a8a3ec912b64de6976f1aa2e759ca77f175f2331089bf8937040aa42f411e97b3f16f1c29b87f055a9c660b972e239411d4eeb78598a10793560daee697f07cf2ed6026140c54450dc91d5e49b506560b9af7d55bbedb77ad7b85b75d31c5e3b7605dd0d74bb052ef8d06c2461a6bab3dc0211844310c10a45d3a12de5ca66b59a0ad58bd3ffb89b43ffadc6054322eaf789a6ac5cefa54448e43a7973bd79aabb8405496441d73bd991e88ed51400c1bab3aa53c38d2ae3fdc2d07cb6e1d4635ee457fc74c26c9d38b424d38dd494af9c68ee38c928940cb5d87f2fa3e359d63bf10caaf9f5626ae21bc8fb7416f00aef49cef27af5882fa5452b9b9bddc83c12fb4ece15a40689a326ad13e717493d2c4470807a606bd9391838f8c40b02d3dac0841a5aeda45f427d014c090282131323aca5177e9a9d01d252ae151c1562b3aac1373c399b3a115905e3df6cf4ca8db337f0c7ac45bf0518b49d172c75d1bc67ec90387ea164ba4c639595f9149406db1d2aabaa23277a7b73b081893d31c8a2d38cb88bf8c338f240eeee30b2319780b7b1059ae8b001b435be7581887670d25d589f355c4908bf08abed69ebf7f57284440f504f47411dee1cd3d39277bd96bc7b379b37434badd473b205d95d11fb43ea2c7dc413558ae6746c67f9bb9491508ecccca208df9d583f7da3fb6c5819001904421f5accebfda8e398cc04944e32bcf2362ea417b2d90493ccab21c9cf412ed8b403fcdc1eb21320316387c49788ef9af9cb2926b5a9d10dc56f8aba7d49a2b9abab366ba302b21341e290336e5ca344fd99daa8318dc30830ecadd34f640c456db510c151527f71e0988a5885508065d2484e873651edbeed693a3c098e3ba02f4b956e14be745d75cff862e9c24d414a2de1a53d1250448a52306b56750f29454bac5787155e3c740997deabd96cd9836ae2f553d2ebf156de056ab4e33741759f0b2785180c9d21508c02650208d911b481c7e7d8686485f5bf6b4ef875fdedd1eb9dd78619ba17706d4ba409c4c3aaf3c604063fea5cd6ba90db9fc4ba376e5bdef928a77fc9019719080c40677cb231bbb4065fb844f4996263ce94d0f5af81ebf5b7b66ea8951231836a140e531bc16d0d65d02f6d3391714cf1558a623d32374a9bcadef41670d5f9c42f0f9c3a2afaffc461aea0d5e62d6173e00bdc2e205905910f967d5818334224fb80e8b68e4bc20c9a6c3dbcddf07fa18c4d009ef04e75b935d8201fe8b70a4bc5e4f47839d316cdc4ae55e83c6eeb94e8b2c223d9dd2b152e49ea31ddec9437f9a4f9dfc76ed5a1294c22e14a86c3c89e85536188b05d036dedc9b51e86bde85c9c73e5900a97e64bc57262bac2b6f44fa0b201bc19ee056be01a5846542517c290dd9b4de321296eefb5c9c1b8d7a29728c51149ccc4a04bf5f63cfe0d8c759cc2780b3c8db296da0d425e9f3798e611b67857759dab5992ec9578061551de1b3460afe14d17cc208022c8af3ef9dc522464742bf99eb4618661635242378e9acba49562c3750eba3e0e7a3af5cd912721b08145c2eb8d8477853cf76aff4138763442934bc0147d1a5841fea3e754155b6688a37b89fb145842512eb0d64a7acca8135e323c7f75886ecd9c33a60d1558527e70b33641ada34ec142b9457d9ced9a48c2431a0ffad912e72dcf90ee3cc8743042b0900f3b18ad3a254be247dc60846e96cf0caf6de11927c4b65b2995a961976d0bb3ee98558da32be33604ca81f787c2810f6b8874fce730c93589739371d7a63bfff6bbaeac799f053c68e72f44ebf0cad038207ce8ebbcb3b7fb0b881f7a447a8212203ef6c14a3c798283a13c859d972b002f3f15c0b8be3eac757345318fd26d832911ac78c3d08167bbbdc1b59a75b5f28263958bc0885bee033e161eddd634cf5a1712e2518b133caf237bd1db397fe0a4037742098194f6aa1e052b3ffbba703d02080fc8f09fc97209961799d2f1521fc83b1c2b5ea384e0ace234422176ff09c2dae169b45835eb07a0756a01ae15bc37e6b5bc4adf54b6b1fe57245301ced4ae912b1ac7ed4f7aba4857eb955ca16a660c5784fd4f89f16c3507d4f7d3a410ae81f4c722c64c5e126595df3338acd33c0f07aca76aac156ea5e60e9468d726ebc1d2b34f166e304aff3e9d40aac1865ba639db9d93a0bff9e8dfd02826e889421f9c5376d00812ef49f6f967d8a47b9a07a2513f0ffe6e82795bbb4d82a6c4f8db74b01f9c0970265af149c0843d7661b5326535fc1c52be0f014f1c08301a287ae14dcf134ea4d3b28ccdd9701cbb963f8790079a2f600c24f803e0b6c866f3999a286bb74f1d759f427b736bded72c6c95464c9a8a279f06ddc607e696ef53b0214c6cea2dbb0bd41b75874525d817edbcb85420f13d6352530d9aa9e65f519575992b98bd629a7f389cee17939701bf0c85bd7800aa9232885f7a6f17dcfd2f9c1189fbadaabbc06a27a644f6c3940b27dceb344557a49d42c5ac9e13fa78d100dc1363eb0150458bf6ab34b819b2e0567226056d2883f4a4c11082633fd2e264a7b78b9a113cc4cb10594d15edeb99fc601a802b4388d5d0c01a295c9a2f4cd43766cb3afd1953a68f9cc742c4500e88f7c8852c658a394a08980a784f8d14645f041a6bc2e1b21c84a4203b3ee5d687ae431874362f0732f05148d04e1b547e22f2dcf6b2366cee65125507103cd9e09cdb07bd301bd1ea11c5f6aee1b58f270c220535dc213a24f79ca8a9e742bf167b23c9cf3222c92e1907f9a735a63b63b5138b717716554fd9e357b9726a6e38a2d85a7887e454dff1daaa2db6a485d2f4d956a4e13845b5c8ea7c3f49bdb92304c1a4ae7c683c0bf04e3a88f6a62bf2db2d2b30a05328d8eaef964937b54cb300111f605c215cd87498424a4eb579ae6a0b0d0701cdca8202811458dacd93fe98934086f7b9d4a0746c945920553f3bf32b2c57821c5f0054582715b1e4e8bb3aef9e56daae23ade4532f7e3cc69b13e609440140d17822270ef75fa184fed4dc065b0ec1d353e9670a07bb15952cf15d9f653a04595150a67506413155c16dd862cb18932a5aa327bdc0e554a2b74c61f46225dff0f33c4f8870821bfa485d39a3ff2b181634b455dc8ffe2cce22a6f94ed23dbe769c3d61e92717528b46e912795f2261b740e13144173b656525730252ce0b4452e8243243c81a1a880a1a5315cae88cee83f7a03ab65f791305b0c08e11615bf1ba3b40f471c56ead1b126fe7ad85a015f5a81f1fe3ebe225eb1ef5e6567c3abdba165697026e9e2c90bac6fa6d7a0b9f3ed16d081b571bf265573d7cc853155993c6923dc0602599f902eee14dad5463f2ef54e3da5da5b99bfbb2a5fa2d07c4e64e3852483b8d46ea16305739e055bd55c8156dcbad8299c72a8224a72c015d7c7ac9a8e45808d3b874d412448cd0b494664936bbef66ad1965bbca700fb0183b371182b157e33ce6394a2e54ff19d7e20ec1a987ee8541ac4e8c110e5698320d8e085728ad7246089e412e659cd1392e95e52f6e6b856f3ff248f60b6ed547530c84b87ae915ed9f2c0f88c63233cafdc5944e483b071c1c0538edd11bae905ee10ed233700adca1265616f94a8bb81d88ed5ef007467191127783af165a5370b2b40f854b64bf16fe785813f827addeb62c28b0bf9ec8d562205bec612ba4dce30b9dbdee6b3120175f88c7b1c4903c4c984f8a9aac7b1d653ef5c3b073c234495322e2360cca7454569f59c4e628643fd4b8f05813511d1e4d99d7d665daf1d79143e47833f41713427220ef8c32fc626c220f5428ca319f4574670ec9ecc148c8b39cf988abf017de9e0a41fac47b114edf9c0b7c7d010da757f3c5dbba33e9fc40727f1be5c9bf9ace57290c724a96562a95c6c560b42adc6b517ce2157e8b9850852ca5201114ea078286e83fc90a0341dac08578952c3b7b7fc66b742b04112cbf287a800a65b37062014e13f609060d44c1893d5cd05f2ea810466425d595fbbbd2a2da837fe312054b60a189661726cb9cb491aadf1e8680afc8850fa9aaa16250bdd556354c3607af01e03b250098aaf79e8223101739d1d46351d5a915004886320acc5570ad2bb27d587bfa5c5685d3b55755e8f654fbfd626138ea6264e5ba26c6b5ca918ff732092de9e38086d7eae4064be1c30aff813a3d00a6d2009e37e893c3c7c1526f39ea3fe4c03c8c5f3f0c23f42355ccfec937e10d4582a53e1bca38ade35922558fc000217f3c891727d063116101459b5bc272ec41879151a91b655cb759dc6112d84aa8d250f127032e0ecdb459e5616c61bc85db8195ac860ec54b3913e5171952801f5279a43011d8ed32b7568e6d14ab1dfefc3e3443d9c5b52df84eb8828d46baeb5899de44525d87a1c31709ace64b74db30a1b74ae32e28ff7061fa8c1eac9e25cdf965c22420dc644a43a899bddefaa6ee39a4938c972e23a1d1bbe02fb3db818cf1fae09d7b550d4b4ff3284a110f03e6df55fb79fbb749efc3196a0eebc3048bdf327c33de02eb0456a68005f23659026ee116811b959211a9cdeae41dfe5a0815e62d779c05b16f2a898b6b54e02bcbae1dbb136c37805668592d3310437c4b49ea4039731e317a023aecb30d2c1cbb3d0e79762de1c504886757577e251ec8bd039096c045563b5034fda0c7833db3b503c026109306c7526ddbe50becc9e36e39eff7b7351eafe33efabfa2230a2912466e32147c814fbedb1ea976130e78f8c81c9b5cc2c7e115bdb2a8d50df946af9db676b6c275b8233b67e63b10327be856587e175851163e944dac1913914d4e96440a9f1c4b874dd0c2917e2e99670530ffb1423790ced16df88b3b98b403954106904bb101fbaef7301c29179a51248130e30d9d8b72bc495df20bd11252f73401bd94fce9c13c9d8ed14683b326428de24e1711a984455d2cbef3f0caad9ba690ca2ffd7ba49fb4f4b4229948406aaa02a82be0172faf5e379b6c5cf36e290cf7ba6e05c8182b0a8222108bd912305715accd755d1cb4c364f00677388ab663171b8f51dbd07c6a7ed081c950a1c50941401965f60178afb40330344ae9fd5e190a44b3c38720e066f7e4fbb34aa4fea79449cb8c4309a48c97647f6103260a2b5302c7d26cf0350d8b8ccb50cfdc4a43432ca96d2c954d369f307bf3951ce2e5c4fad36a753b7dd1b0b8f1c82d63b678b494d111e6d055200826d244abf185ec2758c035b863f433678d9106506a69ee58b93698fbadc134c67b47b7aa324ca441f2140cfe18d5c1ca7b8324216641b191f97f57d2ce2bb9ec80c7d544919c3399f0689c376a2950b3c2a807345a585eeb6ee309b1754df4aa16c59eb842783b54f7f71e96f442fa40de6b1cbdb6b57aa5d2f43b8091e8b91c20a856a5b61915162e0700cd021133f6b05a470a546a023a1f0e50816b2950a0139502a13690bbf795a5e9f6ea86601c474a913871bf0d5ea72f6ec5e440f15cc304ef620e7e8457127849ca78a49854f39dd56159bb66be8d9d4610371579ce8f60e5662ca4ccc061023a134011f1278f8f88a2c6627cda8b830d01f7f87eece4f8395b28339a9409c199f04dac4374b9d46c1901ca270f7a725862fcc7323bda946647b2b9893f42dc02ccb837de107b365c10cf004da0003618706689724ebcd1798d71986ee34bbd0cea9096323edb66bce6abea6a1ff0358859adfa84b526b88f9749c8b8490fa2e4aadddeb1145ae420ec0c21bdd1b1d9d400bc2bacf5d75ec070ca34f4014e343ce20094d8bc96adfc4a53a44e3292a2731254789f9e90171cbfd2519502d160c713240fc01d57a88f028aa006c465956d02d7cd9b548f6e111888604c805adb16b9214c8bc4496e6a762a474521ec85f40796a0508501d23dbb9b88b90c3026d902db077d68cc233f7ab2ff7fb42f56e4b47124507ef8a07c164a1c677caa20e0fd7d16d02c5130232e8614f063b8e1734ba64d21865c20eaf070a28ebb662032520a84024f7cd492edf9fab58148993ce744943c094581b3dff22044608bf4c4d1ecf1d66af95a02d1283db39d17d74aa51980a292c80ccf1c2d12812f6cb7ae153c63bf316354c11fdec952401985e001e776c1f545031668afc11bc0f94a38dce57afe4874bf134e0e3bb17ca6e7601579233403d085692b15c8cc0f3ae410c793d5d102a187b0c3f1a55681d1a02f7f241a4a64b6a7650ca8d9f8a7bed596f89d80c483a210b1ed275b2c71422cc5fed66b7e6350013c480bb34b25351062f44a67090587832090225f0343d065903866bda30a00cdd88f3bb56cd461c3d2e32feb5e064ca78e5ac7bda8003fdcd0d589957bddb8524186ea04a222b72ce2ee5ff9a6304bad332e3d30295ee9eab3328e9cffda5a2ff68bdafda9acbff150a546882a7cbef44babc16d37c2165d3c8e756f8be464645104dff6d2914541c0414c6ad04216f4cda445378ef66b9b854841085e07f2d14b7dadafec642c66062eece8809f34a3f3ba7c549d4ed95331051a49f03134c81e630a3f868ab15b76a5c7942a5398dc19e2feea111ea695707e710a1a096a354d686f733838f63378c6d08be344ca64504d41ada64070ff50d1bc33a05c4a8e2af27a1955db967065326671bf2b6550e18d9d60daabf8603a72bd2876caff37722ddc9733a1ca3fb2283a1acc839e2e06a208f1e8f33384e13bf28474f82e08d383711714018dd1c38c7133ca3c2a3c392907a2a986c58291c5c55839749c50f45ca0a90ce0ddc7778b8f2f3b5b62233cc6af92c4a5dfd091ef695b1bf9a0ded77932881e0f6fa00376121223cc79f2f99a453ddea0e33a129134aa5034bda6104ec9dde889667a42f421c65e4641c9ee5b3917b224e823e062b2c030b2202481aef3d193cb92ea560eb2669b51a8333f8b77e098721cabb6d54d3b5fe578a1894e03b3cf1517157b8f7f9ca74784137f0a0dd8926749d742b8139396fb521acb0d64292284c3e23511ee8d41d6c052077ecc40fc12096c3d4b9f0f015006cf8a59ca173a4c1c24a246dd318bff4516d4411063e63f8aefbec8904816900a9e391a90127bb733ea037c7c52b3203b6a1696046cd305336aea8513eae3b36bb48c4d9393744d73a625ecb279b32d2fd832f1b5f88ec883e46e53298721a81e64a18dfd03af4821ff1ce7c60046307301a4ae0cc1d3c8fe21cd268e72f997825ae7266f59f143b430f13adb5e94bbcf8778e88a438e65bfaac801612315046196a321d3235536791590d5a84ecfe33c2321f79fe3a72bd9aee8f01907aa5a160b2b2f679f3649c56c729236977ea445f2b86939f941ed7e934d11dfc49491064ef34def991a074a2ebda96f3a50943b13f0b514e841ff22d100a4c5a5484fbfa6eaa800b5ac17c0972e80ae64ab73ed68cc7c65d0f1d0280ac6cf91c8faa33df794ac40a954ecff52124a346d6246c6f263595d4c419bc584b2c04062a93a24089c4cd95050e1c1b2c0ae9598b5ac6299b9f0f15ae558a5e63058c0f6d346cfed53583534dff2f9a76552cf00e5e41baab89502966438fb2ac3810f32143dde75ee4907e78d1511aac790b97219967fac0740716b89fc40b911ceac96869c3d6703ef137afac12f0ea5bfb38b119ec2d75a9605b9499111895d2aa02c0c49df7d1a18857f843dc0fceaa2ff510c6727ef1c540012d03b3a710eef25eb25f64b920487c86364905e5dc968c033bb708295874b26c0821a7c9148c729a04ec30a4e78a248fe992520cf9f51ae86ceb5ca677cf64d02980284e49d276c6ca01e09991a36d07d6a0cc1c9e5bcab7dd5c187fa02f01e48154b4d067d7194c71320a016bc18a534adbe363f196cd18e6f477e4a7b39981bf5f659aa402e09c5bf27d23bc377d5661cf2e17b0c218e6469846948f3b6764e4d30e0ac4260f0180816effac1f0b46e8aca662aa755516bd6f8a73ad6705ba9f019b5bcbe25cb4853eb1cff66b564fa01d0e81d8e38d8a17c8f5221de9eecaabdc01a328c37871f9a2495e66803b6015d6bac544ed2e743ae1918891e95aabf334dce612d1dd7499724cea00d25a741e136ea8681dbddfabe66cf47637b4d862e9490f93a9f2aaaf5c7cd9d9b26b4b9785b81323dedf57b1ba711e4e7578bccfba5033c76ad56ec1c95dc5395dc29bf6956efaa9a866a67598dbee13ba136efc5a99dd5245a2aebbbd7e6927cc385bfad0997715ba47c7dd56e8eac12e3f3c8b57015aac19453acecbd1519cbbeed821f82065180253db4e3f8fae25e773ae02e1d40c51b202ace11ead729b851cfb5902ffcb8aa3cb88bf543ea3258f44b3045745f6e2e566783787471b056aabf17b9747e7566cd8af837f3b4b400911b6bd5883032d0966a8d018edb135beb6528f68295405e8a442c496332245a443e04cdaa69e67cd4e93c49c7ad54d90313ebc68215e1a4c6d1b2efae6310fc058181be10622854fc34362d9cc9f5946835f6737b4fcc4ea5e7a790289d05f176938d9f0e74c254e46d5531183f1dbd34832194f3764f7d7a70db31815b73816459f89241826376bc32e6747e880169d29f2e5de9d29c3e7de9a69b4e1ae9a7955e7ae9a79d5e1ad3a6234ddad3a4954efa9fde5b484f3c0d443daef6d4e5f4d2ad3b9252190ef2f7f437510704d0a83488b95fa50c1830843d0a84925e88747c8b4c61dc441aa893a93cb6b66eed9c46b841b2b456abb0a03cea1b8ac7ea4f81355e421bc65447e2f57043b083435b3fd386f9b878445146a107426edd828911b39cef4e6b4e23a28a9afeabdc8de60e5865d309164f958b6c551305e01dcc4f0113197ce8c217baa7641b51fb90b2040a39eda4c5e22a9db396813565df07d15ab1a60e9a35359f4a3786f1cd47ed360991a97f4ac51edf732f0d3bedf52615c7c3e67eb80f3c6a13b293f46cf9bc2cbaf18d1447f828f5616155a0dc35729b3d5c7818e80f6597703cdcebc208b89a185cf761d323167205b8ee40504d44de5d8d070cc975104a4faabd1885804498e405762f557f15bf1a514428a90db040d86261a361a339c8d8b9eb1afeb6ee8a0917e806276fba643b16d9db8c0755544dc4639dd14a13db5d6bd4c5d513b24cb36bc195fb34b07937bb72e4552f383400bb4a61602dc457622ce3154905025ba7b6baca42274c5e71aaba472347df3d4fcd74a1b56cece5af4c385420b5b9d7e47ce44e58bcc6e840d035a4d1114ee2ff2ae70c28f2f1b2dca42f45e3d512081ce9ad94e8a8884552890dc29923c73f7e07c51280c0a055b3a1ff65829447291ffc05b57a579a27d91915183f8ff8da6284ae45b53e0f54e3e9559ee1631da9e9b79506748442f0a166227d2f1f0c62be6207115ae48757d4a7524b68a0a652e602d8662d9e93448f2f748d4a81fd569b993c258373ae8b6747f5229dc39c42c271222f5e6706cf4bab7abb9351d1230dcb0f7b4747c1f951c53a62a0cc1c293e11a4477a12bfd550d329d3fb81b26cc6da0a1525bbd2d88007c6a01ea6b546cdc1f5043d6e07a3df66bcf820c091944dd9add7ba4713f1c423f58fbc9ab750f956520e84859fb002a91f160494c0da8dc5a761059668427d61d88f51623259521103f33b348bda1a5e0569350b2fe877c4c281d3b4e31f961b77bf8bfeddc4a5a3a1c6fc954c17b437c57fcdd53b53bde6efc445a443bc9d875c47ebca3b3990e8d18401bb0026483769feb9ab9ea63e99ae0fda47e6b49a3e57a95d59ffe435928eb2e15deeb2bd7566cec48c72986e21246349ab1b1919d3d73c3146cc318cc1cf7b208de8a1f944666e80e2d2157c289ccb924db424c6d5b3dd3bc0432f4fe81691b70dad091496143dbf61c704d9ea09e6038b74512a1290230b19d414ed74a68286bdc1ea8eeb840e126cb704c64b375b95c0ab5e631324e4232a0146f11658b7f0dce585137fe4be9ae85ee32e355ab95ab4c5c80afb48db5b98f0ea51f3eeec6f7e7daa903611db5d929559dacbbe9300d117cdb9a6be282c433dbbc8eba9861ed70e92e3a906df8cbda669cca1bcefcd4e384f859db323787c30ddc4b5f4133b3efb78d1a1c4ce11e4fcab5fba29e9a0a53a4c98d8983da7eefbb3ca47544581a6a196a8bdbcc6a6015257eb8b1024dd3414cd432c537cc782a954fb105a7f4fb227ed55caa89003fc752e5c0f93c39dcac4a9502abb23805ba473419b9e4f173ccacd0ead9463eebc53a0e8dd12d3896d16ae38fb52daa190b84426bd8276185ee905ac406deac49b5fd01f21c8c66f8841f86fb78453bad88af9b10fd0e0349e38dc0602fb1783a79c085afe8d774af3f8a0c7ade04479587d11055b0ab4e84541254172d4328190cb083c01c4d21495202c8f2edb7e2c241dfa28985ef04b44c6bdc6b7fe939642d974f1f877e5cb4d07e7cb39783e3201dd476c0fdcf5389097560f79d65ca9c06c006d26ceb6dd53646aacd726e093cdb56e5179c217000c3c2f44132c06f5ba221b8cc51047469bf02f5f0c9840a60027a4a2ef8e18001b020c4a6c9b4c4f713e53f46e7599e660cef0687d8a799b9b511b45587c23f92284509c79dd523d8d4bde884ff1fa7e923413fa1090544c33b0e63ae35d8e4a4ca5aa13be77e48ee8c8accf06beebf7f2f09e251b415c0234810be7a37cbcac8f2d8fb749cc4a4c29b74553e2c26f5037bd14528d46af490f64d9548283a50e047917d0417c20616ef2fb2b42659ed36092511da0b7203df126673d333a3dd0feba4e40b2381255828cdb166c04470aaeae121dccbd158a353f120995e8cce6acadd4d29f7d87551189383b82d777934cb6167f8ec4238dabc5b492cea7d95bf78d0a1827bfe0e847ecaa4e7de20d286e08a6d8f33212185c99184f5c0fe6f143eacda8520c601028fcbd5c6c4965ef839549514dae196ae64285ce3d7b1ce370cd0707981c573de4fc4bd81c42e5a12716c032c1356e9dfa7e672e1f24bc788d7d635c9c60c670d781225d6c96871aa11723184aa32b5b4936d5e988ab3b725132137917fd2c4f367b5137c718aea404189958a6c2f07d0ee5431ade765b2edbdeecd424c559192646f964d8ee67b8f36a6d6e46665dbd1098f7a811008c31cee0c1400b72b13ab5769e9c20bce321201a671b8f5e7a1e29e3e35b765b37d95ca70865c60ed49be6bcbe955fbb9a79c4c04f631f56270eb7fd90735469b8e375a849e6e2cd9a090de434b4504a529a46d8d1e7a5cdd679424cdcdf091b0e07d814fbcc934b7dd962d92c81f57ee2b2afe02254210696387df0246373698ba549e28d50ec3338648ece364eaa80f01c647bc75ac24b062d73509dfa49828ecfc934ad65a0340b695a8555b29c11a5bd91b5e5ffa074a67cb5913f4876d70aeba55354eb3128345a887733518c600f7dedae4c78c4299769963be14634f24005b31fe7f3ebc83bd73276dfb5cc6a2814a804a418de15b5a718ce9a4aca4666f01ec9363676e7bd9de3943f005e51992599915d31dfff0a03db94ec2be803dc5b2dc72251b255eaed83a047ef004bbfce4f89b293248e8934c4fbf7d90d290c2a1ca1d97b09229cde72fcf20b5eb6e5421e182386f6e525ae6ada54b348ed9ebcdf631683c101d08c0c83a37293c9eceaa05707a5a647720de3141279d811cf0860cb019064be94378ede1847241b22a8492befeadcfde75a9d4c34fa6bb2110ed9960c3911c991fa1213af88e5a35286f5816d9228df26920fcf3dd644bd1705236d118cd30159ca7ad64070410d63e3bd10aa8eafbe744948f2f0f3f933dc66a314938707f2a2cd48c0e798991d558560a99b8fce4dbe588386cfcd986921ccfd028146454fd9431eadf3db2350cac22ae4ee62c1937277a1d7ddf26c3ef4c3646ff85c28df43227313515c0bbfceac81e37d6bb1c2dc86162aaf64246f7da4f0fd098fd2b7107c9c9d3bac50a604d54c8c4d7aff41ee59ac6d29567a697adec96c06e4c7f597a8d5a21ff5af0141bfd53cb33b638d7cf9f249e1a96632fc20a4e53e6ae4c6ef13a52fc9cd4d83f04e7a2e46b64f1ee7927b4f2a80262b60a5443b4a860cf767a590735e005968041fc9ed7af6c5fb7baeb3e8aaef970cd10a19130449804a9b74739c60781fe47db98df0b7bb59073b436c664a8a0ee15e985980bcc77e2a9a3b1d7924e852dadd9217056a6807a1da1177980c6bd634550fade2ea4551f8b66f7d0beaf1555c44f82886cad5b6bedfd25e8957e68a7456f99b118d2386a1d56761fd7b992fcf2cf15c9ae892340091c0800b98c40de5e3a4a5b5d58a611feeda2613151c82eb8674a154d3afef759cb9a898bbcd7b1bb85382277b427509ffda8c1c506abd57da1834607ff20b0a574b99752c3087628ae62e8b2ccef824ef3666a546b9309d4a05514e6b8789e23ad016dc969251615395953f4dfa0ad5888aedb2c6c984392317f07929f07691f99e4ab5ed693dfec1892402d8b9aaa50856693f0a49fbeb1047516a25a6e56033c27b884d1e5289edb5efd0b340b21df0b7cfa997a6a5c37cc458b09ce8fc84a639b6e529dadec1c8f37c0a7223fd8c8bc0e8dd9f7f2055138f7928730e9e47c9f49e83b9bf6a3893615fe551d40a5a29738df869caba077d041c893fc6436ce9afcf5749385e0a365d4f86cbb5df00197e4e75665b4c65179ccad8099580df601e8c1df4f002acfe530086a22e1557040cc01646ec11802e08a5059286e474ab305d2537c891ee4342da1c27ece60c68ddc1b39a31ffc6b85d1bfea4fe3458a42bc38dedc2800791380905d4872203b8055a08511586340a7057834024d8a866c28463a7e9382c8580af5d662c3eb7188ed6f2216844d1001379cdfddf1c93857b33b55f768bbbcc24dc8b2f55653a7921dffbe2dfa71bffb230cc2c97ad735a390530bcc0b2dd2c25ec9175478516a256425ce3dd114cd49ae32ec3e9bce45e5a4538cbade9266ee9cb149d0271046fabd7ab017a22248d5aa2d7881c376e22f592136fe859046d779183d92205a2e4db22d0e842f562802756f29513cdb648366b8a73d071024ea489710227024f2ce69ce530493d6a298cf4865c4aec4fdde70dca92d122c0ca28bff1eefb93b6510f03a3df5de6b0a546f4b6c7fdc674d7241029a3c782909803c7b9f180dfb562f10804197c5cb981294762010e1ee7c44217c38485ac388e2386720c1013f0e1387305aa9c44047c28ce5c819433b120178e9388de19f6eab583e7b3c74fc08e0f77987a3a3c8984fcb5833c01962f8b4e1db41108fd1ff7645681b08d3849d2a3f8ae237ca8d0d29c8b73e67837816001e2d906e6f693aae48f47e1c5a881dcb579b3a35746f137def6c9ab38a8567b8353f606b7ccf6dd8fccb1a07072103ef91f3332f19d6c13638b53ff45953b2f18b43dda43f0b25cd3cd70cd7f40c072c7a941e08cacc6332ad9dcda9685aad2d1242f54cfa775d4bcd628057bd0b0919bad91cc62b3a566f8457eedc07c7279a2d322336854a649699cee83e56e97e9ba94035f36414a3add27de610fdcdbea0e412783e186661a36860296ff9642db0036befa6fb24a0b3890c602bd4bf4afcb7f8c8bb9c8056f0a24e9bb70308ce87b8cb2b8da597f9f6da9d75f98c58acb2c9c52bc8597652374cbbee3aa51d1a73f8981d001ab6d51915a712c1c2a5fc1e89b1fada2bc691f44dbde9efb61e1d29c6a2916a452f93cd54aa5a7814c7085d7dfcb437f02eb10a49a6e1720366beff5730566a29173ea5a7a9fd027e7fbaff39ca262beb27a0a87007b1758f6157ebc4a1dcd4b898a752cbdb95dd4071533e27250ea5e02f181d32fed48c554a15455d593484ee4b4068da567d232cd3461a451b7e80d7358a87336247436066c4df1a6bc2ddd33bc7d49679dabb4df8e28661265cae524024a9a9576ed1089710b34f7469df5bd9d4dd2d9f59d054e2d3f1b478f533b31e9ce0f8d5c6b35714e6a946b6b30e7401a65b5312600cc7e85f2903fae00125e3935a1815235f846b9476e91752f833a4da8569efb59a83e4027cba12e438c1bf4806b11212d591eecb1a5147dcf09f83dfa0fb37ab52a1805b4b9405b51d2162333b17401981f45d8d63ed3729fda63d115e7985f71c56390ec4a14fa57603277f88ff3c4191dec055c8b184305291d931ca9fa289e42eae8b75b77c14dd6f60ab54248a256f8774cc5b8760bb101bfff805847ca885ef0e06dbc16974ad6eac5b4024efa79844b2c1f113ce0238865b061c61001c72ad5e0f63610cb0de26a2d04f76b91b43f18d54500e77d17565626e3a24cab806e40669d7c7835a53bf00eaa7b9210e1e1fc4569a26b6ebf97974037eefd8d4306a2e737cc19cb863f8d31a78e05be940c541c3e81a2cf06330b148b84582ffbb00cb0acd5ff515e08e43d20801b1c32824c3fac810cf155d87a90c022af53c24f2153ad41b73e5374aa8d583fc47653c96d2300d8f626d27738311d83068e36dc3552679e458ec073b73611f125ca8eb3db16f58eedd105c9cfa5f4bc303d624b7cc2549701eb0d533590677d71255e2002f7ea8bc3eb2c2045de56ed3c11d7bd8df5f2c3fcfb2c55baa4c90b2a6d24a593ac7d68e593537e5a3b68ac34934c743c8cc9134cec04429bee4a3eec2c9149c9c37ff01ad47d79b8112d2084be3bb0541b58a01e89b331b28c659ca53258dac510db35a660e87e7fe81087bfb84d33d8f53749c7201b15f9faba1080b768339b39119e84d8c8e5bb718276330ac996c1530bbba69758fe3ce74f3cef3f2455a3e6a5914d7a5171ba69d55664926cab99c14bdeb0b2cd56024764ba498a21f2ae58a437dd14792ae4765dd2250a231b7989952f3420d45285cf9a88eb98d9dabc6c211011609f6ed3aebe0eceaf6da83cb6159ce500edca2d0861376fb9f61ce9c50448fecd6c2435a7d45d71916bb941a292fca578c03dd2b1157a8d65515d3731eaabfbc443cb29433c86104a09f1c63f3b064b90febae1f0fee92e9bd9022c116fe7c38b7d33e74400a5e5d89d0a704162a86d22da2e5937d2eeb8e476fb6ae1f87318a85f9ed4b328c05e508132305b0ef8c26890b99f1f45abc9b593d31d0f9c06931930b20391bba0371bd2fc08c04749de6ec2227118008d5bdf35eec5f8a3ce40c592c43aed0d31af6aaa5182acaa94a6ac688d0b1d124b022eaff4f1647d862586d487d258757c717a87f647984051a45c7a0613575ec5bfaf129117d95103cf4d7f2edfe1113d012a3efee9db57bf9e631a09d826a33c130ecbcc143e1f92bd7eaed456a96b759f4ec1266f291c32952ed2f3dbaf7e45ce4962c45d97a7b94ed4390363ebba16ca982a8db367779645dd823708e4992c9e4b0fb56abeb904b01e6c32fb64c484be62da42e2680d2354945f04d14aaad59a5fde81ab9bd489621642967f8abcf28c391b726846a82ba573fc8ee9feb2b87143c7b5d990d6a62e975a4f592f32b6cd32b0b3e484c44a8bfa62c26e2d63a5aa25438d7cf8f5e8d74198cbd2c8663d41665efae9493338f6659a712f3bad570fb553f3a356de38235b56acf20d555c1ea7731aaf663135014dea708f74d3039befe86bc56fcd8af3dc541dde4f9dca0aad1e0bf5367bf302dc20161f7fa4622db0cca40bf19c0b0f3278431e720333e1edca68a7b2880a64b8f91f7c6652b342a870ba546e5343b964aeb09f277804ed78625bdb1489655e08020e1b80891c8bd46eb51e3f25aa0628371c0c36efc273376a0a599004c9723b830f831453688a8015fae8d8b4eff718c0cd823135d08fec40899812d4d3941c851294fc246b50b2cd6f212aae3851838ab071f049c48cf212cb27439320053b8eb341b7eda1da9331dcdd3bb96e059eacb9c84225e0cbdd904903918c59d5bcaa3866051282ab0259c74b06680c3049b6b9b25e4668f0090453620f20778fc8eb411d4897ea990bbffaf2a1340ca1180fc6726315438232bd0f8a1e2c9c2c53a17af884152892dd0409cef19ea3a2f28420c264ff58a0b70d12049b8edf2e22706e99819771df1bb02ae06fb38e475405ef24be7019c97044fad9a8203bd1390b14c45813edb56f19b0794d310ce04630d3200f8b08debf78e3c4fe5635e7fdf696d7acba138a9f95738bd3baf0ea17e5e9a26d410f39eadc4054375286614c22ccc26f9f6a3869349df05e6a03d94a9b5e6b8b96385dd257b688bb6ea370c224b3687fd520884638152b4ea5f813c8ee56b9b5b033f69e5cf16b36642e5bad5246091a9f2fcda64b7459ec7ef144ad4332350631f65f7d2267da5101cf5e0a98f83438beba8bc8a0c98b456a144a4d30433c9da219e47b65ceb102d56a648bcf365a6607e199da3b32e6ecdd45f2b0cd5ac9fb259064c2c1cb5eb245823bc2d87cae44a14b27058cc1a1e904161e0c4bb6699180f07cfb253c699b10ce85007f9ba8b8b3265fbedb908efdf5ffa64233176939aff81e4ea56ac8bfa8f2cfb01299160583eab204c0be19fa9539882044edff117207d4ca6a21936d3f9e62f35420f8a1a17105c427378ab5c099c7e899b73439d4f6e2c83de79ba9f53f04a8d11fbc9afac8f60eea738e914089db87502d4d31e1dd80482899cdfd849ee5edfe731f39eac559dfeee8ac8ba02f13a0af56e4b088bd82c81aec20df024492adad75d008c7280cea497ac218ad41b518ddb9ea70cd89b37a34e81690dd1780468bb40655cdc2d56df4769da50e8f7a728b98aa315545c685580b9273adb5a4b54998d3d542d489109bc5c8910d2215b56a18e8569f3e5cb9ed52f86d5af2dbebe9b7c77ebb56e4f852de3a797a441b20a41a26adcae2014234caea06f2708a5c469622c9ba4d81b9cecee2082eb51e4c1347cc87a03d98e37a3eae9f3052b6924539fdbf387e6419ec9e4c3226d2636bc69345c4ee21b83217eeb1ba5041c7c3866db2ea0f92cc8321f5a82c462eed79f267b78503fc2c04ca6bfc458c97ce02e828859cb26fbfeed5e35284f8319fe4c39b3f33913a1366c140f456232b68224f5bbf0dde22069bd5b2b3f275fff7aed6050a1b300853f0507505fbddd9cf25f10fb075437c63bfa3b2f10bfb9a6770719a30b01969cd0ab3a23059b59c8fecc04ac4dca2297e1f70bec2d360a98c50695b92608d2b9f8359f1d495e564572c83c2140823a284a11e201fe70682a6be9d66ca224c0c0e0d7f9a2ca34e16b695821191a93b0ae6309636c7f1264782a8b0300d8baa6f851de51b1723e94abc411ee2fb966a8b94c8f2c29644ce063ba24447dde82fe1cfa390394411fec0964aa3b9de746f4fd9af591aff77aececbc28deed7dd5f7848ff412d688ed4f20df1dec783dc489a135554dc1976ab57f1e3cfa1811355ffccc48db20beda4560ca88b8457af0ef438ca5b15487adc940ebaad5664a7208b6453d1cb48d69f7266812febfcc39a4bdf4c809206785549d66fe36b0520ba8866a5eb44b08ecb4d3c285de4f407e79221764358415010d2076443649d02b962cc78c9cdb7ee1c5532fa9925a2930a457f3ba4eb120841c8a1798c9fb4f1503bcb220443bfb2a7ba6f87259cf47b975f79be130b86ffa564b407eec6e864bc53883b0c048016512bce440cb8f68d3b58de7acb49228f8b975301a76df84069a627aa91f01b6d92734fc28d6ee90125a322a27428a5f2e23bb453986208ebba51153a79d6fe747fd1922c44e709b29c627257c90de82066412fa9545c5de4c56c8d7290e267ab904b881ac909b22af3342ba07ea130fe587a9445999e2951bcb7e2d50f3441c5b3f85fbfd889c356551d232774b99d4e31e2db1b09608feaba1da027d50721e4058278854356e0ccf1bfb1ebad41ad1d7f40b70b351725ae99220337291070842320e3db4a081797c00c73cfbe2dbcf796321751eb159a3a7cf482b9b93d00bc0c15282aa8e6b5bda4d320db9dc9eba2f0a49e3082df60a78da49debeac42a28b741cfd2c235b44024303373a1b6bdf818f01321cc472d143198e432fc06938b90e6210992410cd58168c3f2908979b949c7448b450a9a7954d457077e773bd1ca1cc2c80ec7321ea813d63066c0c729469715190a6410c281ed606e0b7afadddabaa725e9a2092b98b49094bf56612f1a8ac94936bd2a46d79b5c9cc48e3211f0cb0ed8ffcd77a08150e212a31a0dd88c62f82c3ce32360efd9d8a94629004f49b9f8448b899469111cb06bc3c53bdff53e39b57549d129cf77a4cae7851335c0008d8d58512859a498c1797c8ceeaf3a648d839841363c16efd5bf2f8b091a84c4346e8bd72ef205daf22b27630ad179ba182f33e852d5a79c4f7bd6e4f1d002fa646f3310e3d0004fd88062c6512264f21fc9844308cc809240f38027459daea0543138d51110004418feeef540062ee641341ffaf9c36c4b35fd40b4afa96ecf1802c19281fac9b5f96c1d7e6e230d1f0ee2e862eb81c9d54f3648bf4f5f6d25c46ccd38b83cbad7ec6dbc6b88fe93c2b6e7e2a175d0cbc0fac61ab91ba07e7661da4bd8de6beeb1e5a9470899919f0a19e5127ec395e40bcdfdb42aea201dbfd519aa1de67fc492c59363ef92fb4bb5a0b9e057d98dfbbc81f2c055cad11a513e2f13be113a41d69b012de6f84f01721f1a9f14fa1ae41a6208f7a1898c59737e417a485a250d953b9b632ccdc0b35bf1d9428ae38e05b3032d2c4b0ea1a8631cd2e5d87694cce48c95a4fcc89f337aeece5441dc19872540ccdd4081edf5d93c9f06acd9fc58b065729763ee6f5afea1f3f4ce96eb9e6ea8c6c791fbdb49ca9e6ac6fda70078bb74e7f19fa14eb4ad89181974975c5eeba644e7ac99d6f0526c00a29e0ddbedda867ee7900b95d18debe8edaf513ac8088a1a4114855391d63b91b1be8e807f91d24977a1b60481697551481900bddc9f6f0200d2c12d4a1e222438ccc264a914c959796308fac00a0cf87cfcf38e347a5f9ece0d7378736f6079a64d21a5e82956d76b3178ec5aa32a474121a400eb8b432a1d6ce8d42c6b67f39384ea98e6a384286ce4c0a1d96e85381f54b3f82a89876b2f4a00bafdf571362b45fb066ff78ab622a8b74e972c6cdeb1391c126562b1a018b0f6d38738d1f89a57746e70443bbb0cdaf491924c1c0c66e738270d995c76bf100a02ed761b06e60f2b91691c98b90652c7377b6ec6b10513ad0d6fbeb9f02a525a089ec78f550b67255663d6c6b420d71487d9f0d31baef4bea931fa377ba32f9359108bc10735518f98192525e7a1aa857040b50c50bc6d8a9833436650ce0743bfb70e292845c3e44f52ae297b5520037dd2414218aa2583ba04b30a52bb484a96cf44a4ff58fcd05cfd88ff923db7ef9a586d5b1648f2b3b3965a9162705c43fc4ae9d90b4586d9531eadd96a6d87a8890e6c4ee7a5896d365cbb2d89084d77bb41c1b2bb881491a30003db406f288cd7bcf8ddca54b8474a062bfadf6dfbf8d58def80525dfc7dc715c6bc2f493bc900589b025bbbf1125eead5ab977b6480caeec1dd2c27432b0011400822f0d105173a418e2544175c73e06071ff102552b29ced62feda41c1b8057c8152266bb234e2c68b24f763ae59709732075bc683b6da6cda923e69059ac24249a8522be8e3aca2c84c825508997277e32fc5c9b560655b8e72ffc90902f79f64f2b048f44396f097c41d9c54a727fa557cc3b0e20624da01537fc899f38764e386b67eb5906000bc2ef82dad9a4d517f442210c9fa2992c4884856b05788c0564006791d18b840b6ec83ed80b716ff239efde3eeb9bc5cdf6aaae8fcb5f2b5c62696ccc7fb781105024c30e49b81900b54758d80364525c8e7e4e8f6949450fae52ecb58015357bb11e943ecbb4d44c2f80d8ec2ebadb77c46429095dc16cb1e721df749f23ef3211cb33432a532151cc73d295cb2a5c1544626f3f5b3a9758b082f19e53d981cf8b8aca563132d9ac9025fa2dc90cd4e8601c483d862d8f914c97a31ba41aa1ce7828cb0210a9911a7a330cc276853393a308ea3293ee9d0ca376427ee0c4a0643909b0c744979eadc5308f9f16859ee4ff6197c159dd12c72dbe74e7f303cb74ec60bc7aafe3037a432b1f57bff8b85345627a339c880a089cd58ce836da8dc51d57fdf9a66b18a2ce9553ae960acf9c8690ad5fd396a1fbe670acee219b060f574a0ed3f051eae39145ed16acbcd8d7aab11978001fc785252917fdb5150b41e461de31e37fceb75f6f16b8fc36bd91cc5a9cd59b7e8000fb1c301a0ce943411e02d82eeee4e636f38f3ca3bd2fbe416a73c2857dc11a5ab4a0d400a5f124b82aa5184eb709ba0ad9d8a44f8122858360fd428ca0a1317a8ac1243bfabc41a6888b571849ab9cffae70cf3d3408a1fbe5a0d87a7d95ce6ca8a6de64bf859111015d71e12898e41783b8e8a1ee39a6bb72c22a6a2b929bbf8faed28080ad23a35b1a31ab599da264b3c69a6513f3aa7ae18a23765ba30458b1b491ce633387489b8099c767f9517085d63adabf3aba5612de99aea9b07e174f7f189d3b81336f97b9b3e0d5ea9a7c065575b1cb7c0447ebaa7ef8264c2fa85e433f1b5086f06c7eeec30da0e7acb906273e09fb1f14a6fa1b6c97513ba212d31d968e6aabd6d512b5ce61b617370c9ba5945ff2714fa606af858b49a4abe60aaf393e61e0d8709a0133a944a78621f5bd5e08ce753a0749aaa073e1bf4c84b89be01fcc9bdbfb4c1d8f7a1aa0af9cd58d6aa20de880cced83f3a93a16ed3b977f027b7c9e1cbbf6acb621971ad754bd988d31a21254c41e0194ed7f0fe1e336b7d3e6f3f699f114c2072fa6875a0ee1bc1f3d7854ee21ced7f25911374017b6622d022ba8dbd7d60a797497239a8f845e4a7706cc7e7c42380e2c6174fc291028d79e1144eced76b946ead1a6d84fc3ee3479378536445209540107c7744ac03e5915c7a9bc4ddd0843825249880dc266c1fb47e69f170a8d8722064de96efdab9fa2ab4d86913c67f2e27efdef08fe1c092985bbda980edf8201d60361c3f76c2e4076140ec940af81e91f74c927a9b242d7fd6740ca94b08022bb7fe5e79ec45aec3e1851f4d97f9f395e1913e1b4c780d59877aa3fbcdc447aaef60729b6d2f1bc3261f60abbb8a1962a32cd46435c977e30ee34d3de47836ef3050e66bce18493dbc86f58008834a5182986a040352fe19e58fcf81ad86a71d87a12fa94cc701030e04e0d511e12c84eb56ea736183bc98d2bdb6b2e566b01c3a8463bb85856e12eeee43c1a41d06a2c55163272af252e0c15e3a92ad9818d36774e054f2cf73d41d7162e1ba9f15d02f355d858500fc59578c11bfdc2061d0ba18e45d39020da033559e81df7d136e43684499dad672a259fbfcd06617d10aa7f433b50b385180deb26739fe2c5336d5fe2935c2c9a8591a157c978eae06a2c2c89a3964d78c6c61df60fc0a8b60c62a8af8d877100078348e535c4a380a146c912b2519303905928dc9db91f9abe4a295ac14342193605bdc3e9f50e304a924397c78e6da647ece85ec3533415676d521a2bf14134a633e2341a4376f56b0b505a5dce9decfc1f7c5f712615980a89b0c70bc01165160990cdbafd93018859f5b9ad0237ec152f33baadf3ebcd6898a6e20df4d8532d06c65ebdb0dffa5c12f90d672f003ff3ad3f5625407c0b48545ad57d060a6432ba02d97e30e02b7f6ff280fe001c5f8f45399fde5dfb5b9c3af7acc89b8ecf26938d1ad4cadbc60f0c7ef4bb26a5884f23ccf62611788532b2cd27f7f0da63ae4bf07970f53fa5dc316e566a7de9232dd48e12ccef1cf3ff2a9f2fced3e01ce628784a1e2d86587589411c5cf0336b2293c5cf1c9c673e3170bbbc2a9a84791bb0a2c49ac526d5b71a71e7805c418a1740a7aa5f148d0b0a0bb11c1cc9f49644be46fe89afe442538482b671b92832979d87b95499af05a8759274c3ab4c8c45620892d2d31ce2a71c0fac169f2f71e5ccd790c45ebf7ac78b4833f2f57ef35abdae902eb934206efe76beffe067f763ac390b571b20ddcdecdf22d26988b5979d207f90ffb72cb6761119a86761143f4bd3fb3f061e4fa49c476b18b8f950b06def9da736110c1c76627e844f8804677783eb0e8dc434305d6a2ed8a67ab1a6aa75b054ad071a8ba7b6491e5f1abadffcaf3e9aab0627e277c8c63b09b083e106bbf3c76a033351d9c643327d739f1f0c21ddacb01bc343026fe747bce46105e7f04c1c77043a2c0a8cfa19a005482812b17da8fa850fdcb9337e508d83a69192e93f255fa29c91926cb319191352312fd316b479c4d45346a667081c62f2d7698651f259b771890a74964a5a7755c28f8df734ed273169b018bb2bd5b8f934648b6b687fae80dc159e841852c8c24d1903744d9eb24f8f0b385418c0f4790bfa301f42e7852e70b0b9cb652fc65ecbedf2b11e87c86d5b5de5dac1adc7fc44ba9ab078d23fde09e82aea289b10a555cd99e542a73d66e6267c39c7659266be0b82c180dffbb37357b9ea453f104b441396624d2d51a4541560cc29636ceb3ecff37a52193a77e67aa268860dfdf6ea98c5989e8dbf6037a7f8fb150e146eaf1e6c1189007d985f449907586d170c85ec3165f80546da1cf5682927e50e6180e68b378edb5de536a292892042ce84200928ad1b87572900f4ab28e4e209d616f20c84f83a3d8ca549a5bcce63973ec96865208167f5ff718aa20d44e1c99e5b471cd5c4ee16267930c50759a731295051f9ac29a643395bb2187e4afd3d0086a824544bd72454d4c81edab04866c172be698f269ff171b62a3cbcc6d9f1cf3300be3395f137909d82c077f6022aa048ab7ef3b17b6b5e817bf7c2e0f4692da78bd7ff6ed99de580a15cf111686cf1bc846f1ef81fdff71a70e1c1d6e5d5d8d597c81cafeaae7c05a8dc6551e42238643387e13e8a9436073cc1764b514442ab7c83b24f2ab23964420eaa2e0c0ff097a9127dbfe529d5965cf37190db4419902595508ea875088c5929b6c6a4c2469949348087f7e44316215cb55af3c30ceb80ed83fbcc245c906d145c2f8710c1a514664fa29675ae4830631a7abf7a62a34b372d3cfb6f05b1783ebd1c2937ca4affd3bb6fdf97f061e67d189062a6466a7949e21697e3e34e8edca788df05c61de1a3f7b488544090a80863d713f3695a941eb4fb456d8a25e9ce01f179528b72867e0c785f5d331144203a768d0810d0c88573b6241ce29431449226543e79cf18f53bcc8e2e2a948e6bced96f82aa2533504f2f00ca9a39faef413a9c03e7713a143bb4ce0c68a2d18662279432dbaa7e18a9502098163037c7555548643a53134479969ce6f6d951af71f5968ba0d9c3f2e95288b88c8a741ce90a0d944265a4cc0dfbe2cf692b9b540382a6735fbd7faf7b6177dfe03544e57230883c27468a7080544324658501e73ad0bf105da62d0f12fd02630441c4e715b74bd82ef09a3773807c149d89e5f74bb55231268d6aacba04d018148977a8bfc456ae65d720f318a938ffb0913bcefb2edbaf52c221c2d89690a605560b818d27f3c8ae2dedfc9cd32458ccb1c61f9a000f5fd47fd3113c4b3d3d872b900bf3e24d65809e82fb02f32a93e97e7058c0a30ba6f6c72b3f74ef2f177b5b0b63b64a16817cd0cf31754aadc01bd14afb612bc94d853eb4ffe15f46eca33db04a798358786c7625c3360298061e74a4d27cddb48b451dc0352455621863975494827446ae0d22081585066f351cd2d0beb6da3aaffba0eb9b2eaa814fa923804a5085639ea969a95256b44ca46e5a5ac14333b9a59a3cfa3dd5a3915a3bb0395f996a7d4209b761ace706a2c29d2686a8fb5ba0d166f73ec1c660701af446211c4f22b039019884bc59b6639cb5fa0c0b5be7d400fe6220d8fedbb659c1aa71c290f6a40281a8cbafd9d636d6bf9488569cbe6231bfc2c62e3c7ea058ff400efbd2307f77702123a48d16bee6359e1208b215cf8363545785da7328313815e4cda020a81ea7b5a40d41da50df664ed3784be3e3ff389e7273afc4face5e6e32b908cd521aba101d7d8d91b061fed21fafa63d81e8031677c4306686ed8bfb1bdccd89203be40ef05e1b93aa58525eab652a35ffad0ef2689a4244422bb7b679201a107ad082a0736c7b26c10240f3eb65a33e2bcdbe1cab60e6bfef398f9eddd89a5acfc2048609cdf68cc0b4c6f62a56dc19aa1738cf16e37937beb3ddce13a5bce6123fd42e45b3749282cb4398b3143e7c633d3fca4d190cf0641e2ee4b56234066619e1ed362208ef1f00c0d330ff0add7cd04b31c6f0db1914cc37b04562380fdf65ee15b16bc2de3b0304863248e7af8ee4a19a5d4716ff0d86cbc6f12b8a46ef02cb3988d808737d38b548603ece6d8483be1931b10135df20272035a72456e5547cc8d9d6d31586e832071ef475721b76bb5e680b69cbb045a73ad396f1e83b763ee846d2e85a7bbdd2df9c14b8abcf7605c02b44428975e9225457608ebb9a082e6c49622a6d0c207558e7089800fc5048a12442841047728406d8807bc18ae3b0d28323720255c905f6e413aa0a2973c526e40495421ff7cd4cc1b406e40493ca922c8ece10a0f3e2c61c90a7690e1082a4049f4642a37a024942851440e3b584768d1aaf7da437e8446ae9dcf710191e1c24090cc078224fef5d4c3caa3613dde63dfea0e8bfe8c63f3316ce33f3fbaebb61cde76bcb730557d94156d62e3b73c3b462965fcce1167fddefdc3ce722e094afce10f4128224127ab7a5779406ce3ef3f9d0c909c1cb3b909830003419aabe1b2f6159eae86f780df704661eba6f610dbc0b8a93db4a16e6ab35d53ee82e2fbf5d87bec2dac2fea3ec5cd65187d363fd61ef15be69e7efcd1ddf91c2320328c3090e630b407327a1c9ac360bf390cf0dbc7caa3f2c0fea2beddeae1b55e5ef7a3db72b4ca03a37ffd7b5f2fbd2d5b15653ddaeac3594e0624539547fbe8f3e1fbcd80b87795e6c16fb48985df10c7738cf071e89ccb1f1290d89231ab798c3f77a990cd9e3bc6a93510621bf739d55f73137c7e61771756a391b99e2c83967093ecdc808e3022b796fd33db3ad9ce397336ddc7d5905f61abe91141e4066444906c2337a0234e90fd88c734a0a025b20cefa5bb10ee5efd7499ea9beff80e4d0c0b3cbcd339a8f7c7409014442007f53b9d63fefbb647da0f6ea2d5cd80e4eaebcd1e08121ffe0f0379ef18883f75c2fe6844d961c8aabf3e2b65d972bcdb728c6ecd80643f82e3b96a2187f3689d6c310ecc15f61f4f521fc6c9635cf098175ffa7aafc761ebe3b02edcce2f6ee7bf9d61946aadbe59160e6bbf559a9ff152d3b4d05d9a8b499b9331b91ad299681396faf9ee336042801dbd4df5a329b9e59647594ebe2e185f5914bdae0cec9b9b647c571e15b669d5d7af338080e006ec71483fc2ada5c27818ef2a0f3b1ae5e42ae3675c9bfbc3856cd3c2b75c3b63f7870bb905190f2b4d8cbfeedfdee226f9306e7369e10a3d09c0cff8f5557d19bd851487752258e4262e57b8a9babec259f5176e2e3d465f71965538043999f4f6476f55a4b7cd6378bce0ac829587b53ffa11e947d7bb38979b01b1b91ed312829c1ed7932a52e54258b78351149193713a3388b27c6bc68c175fbdf8ea97c066dc6cc60ca733e3ba1da73363860be274dc4e8c1556702fbe561a92fb0c00efb5c78baf70f6e22dd36bb91afb0a67170e414e9ef1d57e7d9a6b898cfdf517ce72724c5f61ed517dc599e531c259f5597decb1fa5e7bccd071fd0c9cd56b00a4faa4dbd94252475f43861815830003fdfe1878dfef9804fe8d49d0ff9e04401a23b1efff3092faa37f95c7f5d85b04f8567bbcf0a46f75c78c27619bea67d81fc0b7da03bffdba8385b7d8a67a16bede5609705de8b61cd56d7985bb033f0b38cbc9f85fee8e177e06ce72f20b3fba19909c05e04dd8d7b8594ea6f1add2d0305ddac406e05b0ec00f4000d78d0800f6a55a836134be330dfc2f601f723a5cb2fccc85b27ca7e382c808f91ceeab6fa1d254de05c6e8aff72bb858332acd758d6ea92ab98e9bf0cbb730be2efb15f6a3273d125ce406a4842139733a489c902892ad48f1cdf093de6a55c785b39c7cbdadeac7daa3fa11ceb010e4e4eb5fe561fffa8abfbe55af03e1eb4123a02cdfa21ec53a465f8d70d69964ff7a37c2632a0ce431411ed30850696aa541a3d65415e92bac83843d88f7b81af22dabab1bc16200f322ae86fc197f3e30dc0899ef641993b9cf4f97208a92784cd65a94784ce641b2f4f1224e46bef73899dee9eadf6d0e435661986b53d3f2fdfb5e2dd072386e0e4386e3f9faeee226f95d795cd8e6721d1ed523a1a4e2ecfe85bba8b904f1988b615efe8cf324f2ffdee039c6bb706ff0ccc25badc5c9f8112dada5b7fc784c56bf1abdfdeafacf75fd48f536d5fb0f6e92afe56774713cd7af1e066d625bae7ec47f8660ebb7faa31f3c66846ff03cfaebe5fb0f351a7da5a1e51176cea67ef5adf2a8b8b9e0ac8bdc247f859ff12e2f5febcbb76655efcbfe386cf5477cb4f80fb27af9b2c5acebde90becef8ebde7053bffe8cbbc3e5eb49f786f4317ed49f71a4dbf9ba2d7cbd9e5ba8d733e9b6803bd0dcf4f2d7ed2c23c6b75c2b56808d1103060c18a3ef3c7a00b0f02d974a58019605165ebcd79a172f708c1d9d57f8ce2be0ac330cb6197d351a7df5d0d274909be4bf4a33ba26f07f5f6ff672fdeb662f5f5fd5195a061dff87833487e1fa147c8ef7f5bdeaa87e64ff2189b1a3f3f59d6dea93beaa34d5bb8fc7905ebe13a92fdf8b78cce8e5932e6d62ebb74c7a5973c5385e337a1c6347ae46b885dc24bf87dc241fbb3dc54df2abdb446e923f94a58f13f122d8ac878e38993e1213fd964571f62c7d127d9225d127d99f71b6ffda5cdf32b52312ce723289deec658ad9c7f08ca3dd2a0d09ff7099f4333eba190ed986befd1927618fe3993ed63247483d3625c962ec47238c75764347df3c269b7984334bca6cb63ffa36b2ffecf76354c85ff7b5497758b9c2597c2a86ffc4584b2e5a5c914db90539e9f24356406e405974c9ae4896efdc297399753addb768f303486ef4a4e387cb6dbe9cf5b7fee6b4bfe164cfa84fcedcbfdc3773d9736b8dee740cfeafeffbe1320f189489cd5ea630cee829c7d7a2480b259586faae14c64d2dc391d4ecb76fada7fce90d7db5c606068eccefa9d3713524c5d90d7dd9f53cd5c9a83bc69199be7fe645b2fcee7132d8d79e2cbffe7569aea4bffe0567236c31765fae144f2caf857164eef83eb10d7c27316e3bac0c71d6ff3015d2361c7645727ba1ba1905a0ecbe4f3db987e4c6eda9ae8de95c4145818c08aa2e958d9f109b5927d33fae86fb396dc9a9c0da500f73d63ff47f3cc67a99c4632a25406d84c7c477df411e43e5bb9755ef7899c259770edc54c44deee7ed235da473e031f088c7cc776f7957b08f788cf5eedd0a2a589d7216dd8e9ddfba885381ed9c59eabd7359e78c0a691b8d7b72161f8b9dfee91f8f69405804e1312ebb291465f7302ed3391c15d23622a63b6d033ed803facf29a3fee364bac84f764f85740c8d3399fb331c99757285331c99e75338eb9d9fec6e686e9cc5a7be8b381937f1945d840a691b10bfe780ac2628a5d6e7183e2090f7f07372c4c040fdebafafdf5aa9bda939607e7b3b6f4dcba67600533b40d74b9f862583d2a058868cdc71564ffda4d90dcdd45b373914d8eaa91e156e6eb2a12c7cb79f73f2cd5a98920c29b8482145ceec1bd1a15e0bb63801072690c28a0f444c91e31591df5b229a50824ecc8d08208260c29a3973b333f7a07bfdeedfdc1db7e61e6c0cb3fe40fb06afd7d10991a9e47e011ef31ea8c84a76b911d105969c99322c8242c5ae02e5c3456a163121bb70d4744e161941852221b8280ac216453cd0a2a848164532e852c48345110aa690850b2964b1e28a2c545891e54a14b20c41218b135cb228e109598ee0842c4134218b0f5bb2f0504596195091a587095954a0054b17536091c212b06c91024b96222c51b2606182054bd0152c4920c232042b589054c192032a58769882e50552b0ac200a169d28ae603174c509505c9102ca95294f5c71f2e48a124eae0cd1e44a1226577e207465074e5ca9411357863071258725ae98600951164a10714982688a20a22a48103da104a2258e202ac20822231441040422888ef41044376820a21874128858d048200ad247b0b2452bb1128516c20a13da085688ba0856a0e824569a68225839a2876045490bc10a101d84951e34105670d041b0e2d340b0d282feb19282fe41152ab40faa5cd148aa54d13f54c1d23e5489a27b5045a8795005893e5205096da48a107a07557e681d54e9a173508506dd431517340f55761a0754aad045a84ca16f40a5096d032a455d032a529a089526bd0395249a0654807a065488d03e547cd032a0a2838e011522ad031518f4102a421a06544ad02f98d2a55d30e509dd336509dd8229549a67ca9366c194257d9a4244e730a5082d64ca4faf608a91de99628356c1141d3a05534e8d822927a03a880c295a507d821a20940205aa4d20450bd5259062856a1d2950a82a486182ea428a111415a4084171212508d4165278406921a50895851419505da4f050584841013585285c50528862057545142a282ba25ca1a210658882421427282e5194403d21ca1128274409826a42141fa82d5178a0aa8832038a8a283d1413a2a880d2124517d4145148815a42145b2829a2c84215c98842cacb92df7bef3de9dc7befbde7a0132c4bae144124841520aaf840a587293b48814194287288228a130c6d01851550aa7822cb13294e9c3459c2a40821219c00a2091f98e861891d96c04089a11c92183a41d0164858a1842a8ef0912543684486104208a794104208a174528af00185930989c8efbd2fc978d2b9f7de7bcfc125434051c46c405044000a19a08000140f802206281c004503a0600014192831506080b2002838a028004a02a0dc8062030a02a01c008a01a014000a01a0e4306b4039c1343db1c51cc013564c013c51c50cc01359268d27a4cc179e7032b10ce8eeee0e9f7d62c9bbf9bdf7de93cebdf7de7b0e16f142b800c40c1f5ae841c60e316000e3891c00f0c4094a5bb060c58b2a56c80223e5c50969c9a8082b0406c4e543ed81ee302d18cceac9897a8282d985c42272814c78589c8f92142f097d4946c9c9d430a59327d279d750821046034808a18c26274b984cd3710145922642ae263e499ca2504d8a30516245264844264c502651502652502650984cb290350801f998a101a8894e1196a52422c144144ca46002052659c8abb503b4145613214d7ca8dc923845813dd0e58c04a40f29079085f3b9821b9694d2478c524a29a50f396594527acc7b39e3e6f521a59452fabb720372820a8904171b9200c0cd2c2b0a08086bc880908fb701193d60839b667ef02296000d114618a394524a29a3bc21c50e28cadf8d18a394524a29a908238c514a29a5b441e2762352510a2255152d6c8a36c8eb81bb01bc011b9ccc8436b8200240c8d106e731720392a2044558e46c4a770db1726c2322bfe400890e82b2e0a187096ff9a5a14eacfbe7a6975b9eb97dcef1ae81860b591830d8cce404919cd1c85e32750ecfa68c96a38d60756ecf6a274e5b20d1050b1d581cb08d4b30300ee390e250f8f1ded0ec24e58e0560832091a54c27f559f512575fbddb5438c6e91e7a1331c61beaaab00260dbb368788c33d2ce6fe317ac670bdbf6628cd7421ade85193acf18592dd8f664c4b070581836089214fcccbe00cb9b5816eccb0db293fd0d6033b5d487b840eb228b1ef4e08425d8208b2b72346b44dd0483cd4ccf802040d91fd0b971909f760dc8b5c09a80f5dc944041112c9817d7606b32d6e2b06d1b5fb6e385297dfcf8105b37b91871a909dbf8963ca6ad9b70e95adbb655e8388379c6db6f3c1a400821a4f04931f353ae2250764f19e149dce4de7b6ce684b2f324b9f258d57a45d14d7144d9451ab11bf298073fbe13724f3ce6bd097528f7c2102c8c0a69158bd50860b11a7c1891fd33eaa30637b5b77c6c063ce0319efd4500e5b59418c245d6ceb182d6c32b9f82b9d51e314b1a9c537cb319df7a36d8bccfa848b33b6e9928036ef21b58f7fe962b396c35f441d3e6dc73cfc587ed6374e763b3699aa5061f8ac0dbb9b062678b76501722b90135818b5c80dc9498c1903c3dc608f5eea9123a08e5cf4d091d7eb2f51ea5df1aa46f5114879dffaa919dcfd1a849fd1af1efca03564faf11eaad8be399a6a2300eb4cef03eb7ca03e6f771ce0c617e38860ecff26fe8404ef68f1fff4118dd9bb245680b50eef78701821ad7e10d336c1e03027fb90a55781d03083abbd71c80e3ac585474c938eceb6be1f4cd686e6c4ecbddad6ace6c7a35df1f5a13e378a62c6c83219d94e5f57dbe779f7df29849d33eddacaa597d57f3db879a7352f329afb00d25dfddc4718933afa8a7d47ffa9cedd8ea53d6a76cfd7b187d0ac3b0e9f1652429a1288aa228a7d4fc587f5a7fddfaf246cbd19e6f3df82fe686667347d595102ade7a9fd78838bba191c21622a485bc541aabba9da59452565d59b7738df56ebd5befef6fe19993e7bda1ee14e1739ed338788ee5483af4fbd79b9572edfbde2b8d11f77d65b5108edeaad44208edb5791884d64e8861ec2b8edb9fefb19bd9f720e631fa6735f5d2cbb8eea872edaf6a8df5f05b6db976bff7784cfdfe51a56948559a8a6970f35da3eec6de4f9813c9f047d7863e0eb9631dd51ff9900cb1d1d3fa33ee3c1d03f610e69b3e0cce3c8f7ec6fbc2de8db1d1d351a5b88e200d4ee646c5a37ee34c47fdee51bfe1fba963e887d866de936d556be07baaf6a0b9569817f842dd596be0db60386b09ab1709a917a0d168341a8dbceab0f21bd58fb5e5793f5efbd7a53eb3735ed66737a56edc9c0ce949f886c5a5fa645c63cb06fb11f64d7f541f8bf1379c0c0dae86db0a7bff1c7d76538ab566f436dd83e6d1d3e0d59fba46fd95b5f6612a8dbd30d3db31d3db19c3b0be1896a9f590ce39faeaed7bdd51bdd551bdfdea2db66f71567ffeb3b7c6be7d38b20f1fbec5d3fa566bea53ecb6dc77d27b53ca16769eb631df9aef3c1d83f764ab29f5dc3429d1f5a20babd168fe5a740fc60b9d08f27be7bce7c517b31c07618d4ebe1b9f9fda86fbe85e3e27b73ce9dc4308df39e8dc73d03de89c7bd9411758cf65dc2bcd73e950427777e8fed0a14717b7b8e8ffde7beeeeb7657777dddce52f360482f6a94f7d6a217dcaada4775a489ffaa4635938ec6b9836cf6e4ab9fd7b35372b651a20b96f4ab97f07ccad63797793818defad4511e4f63d5b73a8830a691bd7bf79b7a7a74c95c8e65a84b765d8979edcd434adbd9bbb5c7feb4cd39f13fb1db1fe5d07ddc3612d1c5604d93dbc16843f6476386409fdbd6fb5a7ea709eb6f13e3ebcefdd9531dc7b4f76a0eca70bdf85df6a0fe7691bd0c1b6c5d1d89361579af7f0f6bfe63d6ecaa115bae79abbdccf3874ee73a8863ed07be264b465a51767dc8a335e8a7e55dd1a1d5535654e961152503a86a686f2abdaedc06ad9c2727cd96e46737b16ac40eb5ce34f7dd71d5ee9f0a7de9fc2f369e2e7648829286dc37dbb33eecd6e2bf4444f74870aa1a725503174436f5a1135440d5143d4130a0a10155aa8a1292ccb6ad45dea3fbfadb79e7bdfeffd7b4a9fe2ac7aaf40cbf4d6d08f1fdfab0e5a31756263eca01f3f3ec554a3ee4d29bbb79caafd892216be8dd65a6bebc95a6b5d46f8d83797a957ad18b332727dec277679c9e6ca53792a4fe52932f4537beaa9f6fcd0cfece54f5177b7ef248aa2a839a959b2d4552a954a95e7e7e558974928f2524f95c8cb4beda93c95e7e5e5e5ebe9a5127979a9a73ae4e5e5a5f6f8e95ffcf425ea49df5e3633f6999d4f7a9191ed937e92b259b2b9f2549eca53798ad89e3afcf4d49e7aaa44eaa90ea93db5a7542a657fd28fb33e17fd29e5ac7d28c5999fead3cffcc707e61d67f6e5dd7106b302e957b8cd6b90fce5964ab9523f559eca53792acf8f7bd410443e44723786b196276809a1274353885a60b352070595824a41a55350d012424f86a6d07aaa3c41fc24f909224957d0f1c8781a0630dda83cb58705767e2bc9781a0630dd38d92ec9781a0630dda83c758829286889920c03549e7a2a05f9e4cc834a411ef4d9941e94dd571e6a9d824adf3f154ca97f2a0f5197aaa34d26ff3d0e50d6fa1062f0b11f6ecae8aa8a6115abd7c6fa96eb5f18ae95d6a718fee12eeaadaf187d2a237cea58a57f5d987a56af0bc3590872aef78afba957d4c4998cd0f9d512882cb4645124e3c80da8cb96d76e464f6df5edccced9d3b5cbd3faac6716437900b90165f13327f6d5ac4fcd8bf472ceb7d78e9ede499f34b2d7f58e611c99e55f38eb1dea52215bf10dcdd27a8ab3f76a8dc43616ae2a8ab225eb310a4fb838c2854f6e17e406b44590dc935fcb94233db5d65a49ba3659fcf938d068ed532a9bfab6137e532101f0ddbbefeaa9271d83fb0a4fe7de67d4509eb5d690de611bf7d453d28cd14118f8625538eb0ac6eaeb7d81ee4971275beec2dc31b7cb4d3d99f73d76e78feef5d6adcd5b2857b1c2eefba3c5eee76713dbb8873f3fa36f7e8533da2a1871fcf7b3df6f5a51ae9e3e6655b02acad90de67fdde735e8d77b53e12c043914140acaab34535e0a1d74ce3d0a5720f253a405fde4f72e0736fed3e0e6b3da6d6e723f366b41f33d8cf65d2407f9b58683f6262743bdc6fb07f3de1c62dbd340811a3c86fabe9d299f376eb8a9cdf61f6fabd7391fd8f6ef7f727bc13d25b8bb375373d3bb393946f85e6d2f9b398e076b730b8a4249f69d7680fe07218430c628658c31baf3e00e06b67d1a0de8ee80e8d1d9d2931b50156f8b4e6e40553c20279c5e6c40e0379c95725b3775e770181cce667353bb73ea2677c743bbeba154f212171d3ce6c1e40669fc7af17bcb9d53d48254de463da591ea7b7dab9525e9bcad9febd8f4b5e56abb9cad56e557b79bd658effe551d167dcbbff38cebdb7245bd9f33ce6aeebabd4bb6bc9de37bf8590d83a4900ed69fb474ceb90db8c96d70933b079f7bd0b96bbfaf1bca80c7f4fb6bc063dc1bb17ae773585885e1da534d41b5b8698b5fe1a62ece85bb205a6a4fed89d34f5128bbf57aa8d763d126710653a22a4f3d559e68440c8a406ef287475e8fc70cf1f198caf39ecbc1663e45762dd91f1e813f78cc8f4fd11cd0f213370df994e642ee5e5b525added247cdf1057542967afa77433b7d3da10056ac06167dc2401373946592d9f820d1b4acb87b484471a1ea1a821ee935de64378b84ff70e3683478e381913add87b3fbd17c4cf0c9d7b6cd6de9dcc6572321786475c0dff2a71362b7824fb5338b3476860fd3378a43dfb52c8750e055f74b1b804895cb23bd013aec8fd446e404e20a224dfdc80b0f009ea72b29c0c6c7623fbe86f2ce05d0d4bfc837600cfe91244fef120dce46faf27b90e24e9c9c9ec5ec398a4770e72c9fe6fc8c9d87717e46af83b87b397697638bba110c29f71a805c32d6e7258e4267f43412ec82d91e5f8e37ecbfa1f8eceb8bb5fa5c066fe83962b49dd7b3176c0ec2c1cf672d44dcebdbcdeddf5fae5c53bf9e1f72284f0e17bd03dd2cd68ce5c5076984c59df95e6b28f7dbf1b827517c7f3b37fc59322579d7370c8d5f0876fc81fdadb9cded0f4c89eec68acf7d61b92dd37571d110bff66c863a8f77f531e91c7bc0b8380063e4defb49fef6ed50fa17315bd594ea60f2b0d7dab5e584deb68ac9f9237275f37b4dd37e511b9a119d8ec0d65a7ef6f7a9ee56d0f3fd8601cad3c6a7053fbd79c8fc825b7172ef72209d617c1eae15308fb87d0dcd4602a4dfbd76236236e169ed348f5f4a98f95918afa58a7455995fbcfbac3e35372469867d521dfe5ac3afc25ce5ac6f71bdbcc315b8e4ea9237a4cf4e8d1dfddf10e182d74928ba793e13b1dfca8f13c7f3ef5f6e77547c4d6773a2e88dbb1f7d55927a6ae035da7c2c12ecdf36b7dab5279db8c6fe795cd8cb3aea8daead31d2a849e3ca6fe7cacd2cc389dcee82d0bbbaeeb8a8fb597ebc2b078bdc0fcf571c258f1bae235b1ade6c7383f5616873c5fbdd33edda9a2fd1abfc2fe2b0f7b6735b10df656ad302ceb1d989fff5c66859f58c5228e717df576f459ebe4d19c3f677c1ab1fd1997d113ad352f7e629bf9d65b2f6ed6b98e462516aaf8e2a9d22846165e28b9ae895dbad336eac3da7275e7d75bfdcbb5bfc2253d0cf59e236c8e2ecb291542e10c47565cd9d09f5dd97ab3dec9b3561ed77c0cd78b7df59656f5c5d67f0bd69afa36171efd83f1527de674327cd27d5ee37a796fe8ab232a845469ecbcb0e598b1db99524a2936f1e7646bc6ad0b7b7b3bc791b598aa5448f5eda9908a9eb2d5b451f2e79c4fa7c2d295ae389e69aa27f1241e6384be7b573204cf15b97191db102724f28b0875b27bcbe6f79e3e7a9d90abe1beaa9e5a23abe1436c84be45b2fea56d854f47ec4a5329c6a19403497caf33c4871feb8ef8d48faa0eea2345fd0d1dc8c92d8faa8e48fd7b8f1bfc59554fddeae37d15cc4e68e2b031cbc98f569af8b4d250d56733c6887807ccefdf53f8477be576b03839b3fe86660acaa1592dab51999d94fa7aaa51c86bb8f8b01adffbda33aa710ac58b599635e79ced9ad382f3b20f5ff4b0f805ce1cce391fa4de53d47b6ac6c5fa36f271c82fceb76a7c581fc773fce1b28df5f023f5d5fac7f16cbd7c37ab3db9ae40650fcb27ad4765a6d770ff1e7e32e23775c47f3de29f3a86f710532fab95aab5e6c53f6cf35e3e7d41c13c2dae867bf74a37a5acd6c4b781f8c557b1d445b4c017c8021ec5f72f5e00e5db79dece9665bd654d79eba9d6c4c7bedef7d4adf6925e6e66474f4b76bfc2cd60328c13c26a17c9aec22e0fdbc4b7ae9f3c1d03b664f63055218410c20ae73f8f79ea31d5cfb72e43bf2b0f0bd70bcfebeb53439c909399d309c1aff345c8fad1672f5316b60fe1bf54d29dd63bcbc2d928b3d3e24ac160d795c00bf315f305f355b1237235dc079abfa8c4ab56a7492a99a2191100000000c315000028100c070583b1348f93ac1f14800d8cb25060441386821c05311083510cc2300863010000000000650c9901f10015836d80d31048eb9c2c787a29b6fd86440e7fd9288be0728218e8b063067090415b318a07b45c115d30d61521fd020af11cb60c2740290933764568c5e60411d18b619b8ac1265287e6be84a7d3b1b3dddc861e3814832aec8416b4db15b2782f879cf5850de8c953d5ccc140ad4d34645551d76010799d7bc53a475a21fe2501dbf1abe647c07b0f210b6423a1b6c53b6f414e7eb377db5e2e08932a8a8d63e2503f947724ddd819508ce9058196c043408907db30dc04c2e3c425063737a05425f03067093308ebfcce2f2c6e271819de3a3189eae8d4e635f797a3292f084e26b5aa9ce41081acd360aff810f28ac407718e26c839095e910fe1c3a60bda0b5b38da71d552571554b0012d54c3ced4cbbcd70ee1f8da313b1959c21f08257007e6ba63754713c7219a95d6da50c62fa37637627a82406a269882d5e026de0f1621745d20311af397cce9c99c0bb9910513872880c1135964f1edfbb85b0fb1c679e93bf92c08e5dd9bbaca4ee26847f47c2df748809ecff6ece74b327c51e4002e3ac830060b81426c510374117749bc602f979d47ef44279d3240ada33005c048ddeaa4f31640f644744ff5679983a5f9073067bd4a8f25ec284e64de7a6bc1b6fddd27b497bb7a02fee0cb84c61675f9a8e6d7ab5e9c29ae17ca1bd19a3c893441b6b0617a3487b170b4b9be315c44b1761c3e6b201b93e362762145f1b46f7632cd3afa134c36e379b0f0bdd81be86ceb1513058765dc289cfee93ea5ed655360400919c8e73dac92627974321df02c9c92903dd1a8d20f8584d9cdf4539afa762194da93e5ac3e3a0291b6a687824828dc0b1edfc52126afe4d62b6c3d412cd0006518c5e0596d107555479db9ceed4e4291a05cb8ebd11077f7ed92d8d12837e12087019514fe7e3ee9637884fefa6bf8860756a86797a753bb0d5f71adad6051e8d536e73513dc50484a018380e02812dba7369a91fe604dbf9e24e6e7e125d95ad89be18db6b9c0e48cfc00d103c1edd7a24d5dbb6a801d9d68b0135e98f32fcdd0d50d868f02554701cb4dffe074bcd4da81652edcc9e1a27b8e986149f402e02ab30a7162415def0c6cca12e2c5b76522afd348544be0fbf0615516622971468e9a888cfc5e15ccbf3eecade54a90fe04bb5bfb7d26dcdc17fb92a0912ff54c40b8a332a341699289ec1b976ecdde80b1915371c53e58740835609bca224ef5c0ca782405e90a96b9387c0520d4902c8b3d02d9c196a630969463a87f6c82b67f3e07df42591bcb368ef3014518f7e047a04b1dc3b67982eb854b54469ef8b54b0ce09aba8342c2f919206095bc4037c5f21439699ab67ed54029bf555fe2ea369cab2657fa01556fe57e7af7829fc6046ef0a651e23557183d6e178d7159d49d93ef569b8efccf05aaea85008b04b9038f419e8be2dccd7b32a557a52e2bb1e16c305338f8ff658688a4b1b7d345d7ad586e0bcb76185fd7ce1d0280d45d29b8888d23528d51c0f1051b17891d41895f157250e1ea1b072805fd06ad12eebb7116c4324a9dcb4ab4d639601c82999915f2ddeb21fa1d440b4bd1edca9daca5fe0e77130a0e8eb9aa873a38a1ce86e59ca79a4502fe9c94904fec02bd12f206da03994e0b74d175bf9aa5351d3fa68f865cb25ea384516abf092aace1a5711d2005e1ed2e58908a33b86fa6168e308ce83596963ad7a4e666a9f49617d590ca3e247f1ee11976ce1392ce85943011c59946462671aa7f13a2f2bbb44cd135e02a0363d500af5669596ebc883ce577b912f647cbe92e281e5e0a1f005cb3ac38da55486d66a0e7738c250bdd491d1de7ef26bf0afe06cd463a45cb1910279aac1a66c396657e74806fd2a08edc6d914e4b83ffc27357ea17ca1500d0a74fdf88ce6f04c4c88903d23386f9c40c82c51157c540ebe5948c58641ecb8c074ae0a00c6834319030a40685a48e1434dffabfc9b033b764bd4b12c6bf84f01628927d76113d762a7da9077fc2c263d4d4ac06039d221f4cd4122d4386311535944464b9df669d8a9a58ed7164a41f7a508124850c205abbe74755aa281351ab7db2cbcad1a1e650117c4f2aafbd37c8e7c0b539fb5a9bc5068d8565db3a2cf4dcf5edef506eb976840b5ac735ad8435ca19c725dfa1e1ddddaf1c5a6ae98a22ce62cd15d862d454b2ca4982ffa4660d3108679db3d3066226b66939ca3a359d92094791b7fd408c175b1b61a739db93c31e50cdaea508f6075e253b6a399af16f67a4627a3871841f6a23eb4121fff5617775e0fb327727b6b47221cd4af123fcdd46ff2df6000505943b541c6ab11fe405b6257888cfa6ff1d7624bd15b72e238029d785b280f38d523f47843ade095ed8299a58342bd9c38d684883c92752cb658cfef0fbeeff5408746ffb84210c4fb4d70156c2d1ef1b09f2c5966da252b7e2c03d0e0be853109a4750d3e2c6807d55a821aa033b94c91160c46cd37649c00fdb811ecc12925c31bda0d93e07cfb46c308c8872444aad1ac3bd978da3e885fdb2199ee2d3de27433eb371d942e577536bd497636eec2cd9c52b9e1e0f9ab305f8fa5621603b7abf598ed0f11f232eb2828a90a1e10c8e3d2ba15eba38f8e3f437b5dd714d20c52d8e56df5b4439fab20812ac5a643e589a48d998ede740a3d85cc28620b9eb0e3956bdaa430cf45c7c1a5c903de3c48746216d3957f2518340dfe8302b4c2221180c895bb801d520f16d4fe9a8b4a83b3b44ff358f4261ba8edc983074e907ce35b401cc1198da7e740faf8286c35284ec33afae1c704f7ac229077acc6103877127afa8d80ff1a4a5692f0454069445a2428bd03e6a622255bd4233bfc69fb2a808249fa956b1a156b0aa84bd412798e620ef21a100ac77507e25270a19d2e30ba10735869b01fce3944ba3bc54fd221100bf12907708e26015b51fc2e7492d10810105d7b6d202d6141fdb3f2a1f2f5041acf4249666e23b77a58665febc5af7545b0baa6134e0aa0b1e87d5bcc7a7c640a413e45c2dffb4f1b85c4509e54a53cdf5c5b825be24494a9b942a1d2a512c2c1e881a19331bd7bb0bbdc9073b3e4529f590e1786d9f4157e075922283b528d442e3fdb264c624b253250693d56bf9fa8894642fb1fda4f9d3a7134a1b465ea721b47fdf3a15203aec3832a942f69ae55369a954a500da623e02741c11e46ccb057e6602877cf8b317307454526929e92e38db8cd0b1a3085c639fe3f8540bb97161f4329aca51824d37676294877d632e93c1094b5000d2a2d8d709dfe256f09d8a6a3b538ae2fd36fcf1ff27a17246db969e1832688e6c88c2d2831cf0834c703a3c4dfd37a26eb91223a69d4a63a278f98fcb3581f00d2f50a6ef830cbdf2bd3699e39db24ef6a7a2c783f824caff39c7012acfa77f928a76842a4835d687c83404e5aac3b725b4eada64b2c97de7153ed38dc031647218ff04cb0089849a19869d4723706c46e76eef8175f7876328bf295607a13f59bbc50cc4e96272617f88f6f440bccc1680ad76afa31b78870636701da4fe661e62f677996f2db20c8d8a0614f1fdda7157c846dfbe8396ad5b0b69ff0c0a7add6ed925406d1c83ba2b6aed605cf4705c2a1e9798223483fedc10328fa3c8d09616c4b7d7402e342ce2b45c1160e612341544b1c4365d0166e9de8068b52075700eef3b9f4c066b8461d4f98fbdd97e0f2995cc7d6c74720d5efd12885d320cfd2bb07491a86ba0a3646a9646cdd93d23bc555767e55fe74b27505018da0e937cdeeeb14010902416228a4cd1bce1e047e815697a47e735d7ae6a9777d08e79917287fbd9cbf7b33ca10ac8e10d85854e6349f8f91e752edf83562a092f11213a4654a0a0f755b89b8c9f601cd7890f3b79f12a5621a1f585136eb59c47b3ea7aabf0e67b744e70811c87ac74ca6a805a4f938e72c74937a6f91b7ce1b3edecd996026c97c3691ba0a0fc6c7cefc8883d281626d3371524f6eb540978e7af5a4842f2fda9e9edf75191156b8e903e36f50abd3dbf8125a80fc38e39070a9006691e059f5bbe5eca18a4a2c820fc9e570cf7bfdb0ed979cea70f02881991d94653d906628dcaf1dbb2e5f1cf67d944833a00b8a5e37ffe44c620ce88bbf9c912eef745a1f8fd4d3dc2275eadc6f43bc1ff80f00b52f8fd67c09a928277d2bbe624f15fac3715c688be1ad576d317dd49083b9dea3be219afec76bccd7253ac34925d541e3fd4f09da18dfa97c9b76305deee82c9ffdbf7f8d5bcb5667c33b3fbc37116bbefa4b2378b5a44a1bdd74b8b296a6f19268232a43333d28471e9fdd6d8e95abb9739af4add790147ddf4c1d7d18b7e96bd088d645b12eed313127ae3910e11f21253206fcf59ce4b0048cbcdc4646118b98351db97219b2291bf3cafdbea86b5af1e4f748ed1a8e3176dd31f07df48064ebda780e01e156e90b47e0235ebdf81c3ac8082593a6c1b396c93a5963aa091a588fe71c454bc5008146771584e2b334a3c4356be9748faf551261faaebcd115fca26a82cf536bdf9ac85eac43366aae497fde61e185c09f2658c3e2d1a8d7652f4bdfaac3665cbc605621475224567be68948ddcab20fd9ed19625e9e5155bb6dbd8fe0a8aee81cabe7a7683fb17b314cccf655f2ce2ab801ab57d98c373f2e63acc34e2f7e8c413dc884b4951b8da1c223e0d95bdeb909a3b28536503e79fb2733938ed275ebb09c2b7bf014fb1092ef882f3e17eaa75c6d38ae33f319e09aa465b3811eef2026a024dce3441bc4eee9c4fa9473ddce055877352186e31203faf8448b0e56690de7c9003d2686424c4251d19cd1307eadc66a6dabd156ca795a3936b72472eafff71544cef1f67b241579e304ebe256a2b5e776238b0e7af8ab3d31511f0eb7a64e22ce754b94bf0f858bc6a3e421538c80fa10f75aa7155d78ca5163d736698d80e336892ff51104c974ade9f2b676b006e54342bb1b5da399ea54fe0fa2a4d4d6041b51f9bbc3871db60202371866cdf2fbe6479ecdb587db5a5a6b17ad2e9509c81bf01d8bd94e65ee1038166e87f1c3ebd8b8cb98ebeeba4df7523932d3e791e280d2c58346fcec62b197ce4db4431edfb3d8d4b273079d6014a9fe4c4d2ac2cc571ae56431d1e8517551ee5774db5ab6ea94cb9de9ccd7b09bd91302b797197f9e7515ff23ac86dfc5225d411a0d2a260a6b58892e06aea3961564f385874140967c3e81765e042e887f81509cb61cb425a59f66109617ac34a69967b08eb0c3e76072d77c7e97919294bde2f5e12a769cd3f73abbe32124493faaaa753ce9710acde915a8900d317f9c1a10d59131dee9d7b267c2e11b0e79b921c64486f8b2dd7d4cdb210bf8843d4b12f70ff051aacb1020c49d8f0dbb4332a59c45180b67655102aa0165b5d5bd7feafc66a2a1ed4864052284322534e41185af1788db0357739435bf1495c19ce1c352f45b18e47b079f92385515d393cffd2f1e23b276823cc51ad42e60ea9ea8510aa8ee8ae2a3b41c14f992b6acb9ab9ce0b22e486e9c47ce748e4557eabcd95e3f6d142013ebb97933ebd4a00e44d60c4dbf49647f76a23170218568802d45a189dd864af60733694ae1ef19cd2a207a11fe6b9e56b7bc344064fc7e15e0ce5e25dea7bfe0b49b442e6f8bdf42314c29e85583125b154e318c1785634b5f90c165a7d641fce533286cb088c24cc8c6cd69ca60ec684d1e2e94e63af2b9c2885ca10fe1203559561cca88f909079f6c90cc3174963cf65fa2d0bad731ef538972250a9565c2b8883d544ca189234f7540cc48bd04cb561db9ffe9adf6e644c695c7a6178a4c2c145197bf05668da8df0e0b21d905136027a608582776af1a187b9ab8b21663bec1c8eb1f7de7a23e960c769e35b488c4e58d033673b57af48aed82080bbf01e284cf3dd40ceb7b509bb29b4e7fde672fa5ecbaf60f6e2ac2d33b479b85b6150e1fdc7059bdaa7c092eec87fce50b2c6b90d5ea3bd97f20fae5047eda0908956fad8dee844fbe9f1b77c6949387c722d10c26acf8cf37a1e5470960ed3fc029bbfd4919f30ce3d23bbe17d58d0f98d83acbee08b09f4cbd4a8278d90b3dff280908b0ab1523ae060e441c58c10223a58baa79cb9b542e44c47aa55d2224d7bd9adfbbe40254d20aa1e9f452eb5b858eb003f1a28bd151fe07ecbbb1e38c75d9e769e5cc5597127e28f87e4331ebe7427fa1059722a755ad0df76a9f8659c35500c13ac9a54d597ca0a41a8c63e699d4b1dcf193e77cfce4f2f062426eda7ca93b31fe7fab40d52a2fa1507da1bfd04284fba88122a3d7409525d1cc9850b6547d5f51a23071bd990db77b7544b5e669fbaa728408a2bfd3b007be1d116cb18d7c5c98e93e66e065a73cf165bdce8bff43a44725e1aa8f5e5c45ad017190714f9dd8469cc6f7775ebe0b5fac3a8a96c9b2db906ebbbf622212f5ca9bc5f089a9a3308e2b35a5d67ff745918c180e4fbd0ad67d857e33e2b66d75d4dbf5670311a730466a1d6976aeab54a7a99897121b9d7ed037e76635f36e9f4393774728a0a9b23f9a36199d1cd610d73b16190c04f8594e59bd343beff1be6b96cbbecd77fb80bb05db025f9031f9c892f2e00afc9b9d11bd0fe24d858a179872e18b9da030860ab933734563b8ecf57cf3f8962361cb2caac59caeee95ae7d9ff5418ebd973aad4f3e758994e2a180899f4601ca5b3402d8f962564d6920fdd084c28fa033412c4b0ea55fd16e53d7a8f625dd880cfff458ae6347007966f50a760d409f160b3d083cbdedba936bca95a7dbf357006ebb55c975ac232c8638bbdfc1c02757d42a8801f5c972fdd97ba2db7825d1ae8b00e272b6c1edd260bd11345f341f45acb337eab1b14448a7145b85c466b349217c7cc191876e2ed7b9346426f51f0152bc0037af22c6e49a2c975505ed6a744a12e44cba8672ffbc5e7e91999885aa12a47d445ef54b6940a0e96422f54bd66d9c3e50f0cc22c147ce1fce23d81cc2200a3ae42b7b16a0f0dd712e62192c71a17784bb6434953747a302e05fa522f81325b0144be2a84efff613a9a54c2b26cb09524156b6b62d825f054e2c85f13348f4f6b9076c2b19081a65e2cb73c1bbe69f89d5b19c43b9c4bb90bdabe8e816cf69a6812502d764bec93ea0007b0723e71df473a7627d7192dd48fe648e5c8d0cd438245d196de5364fffa79ae07e1fa381cfc3667dcb5140cf03f2309df87df8f56c87f62007f97862ca81bda60de2d04ebae7b60c9e7efec69761506714c620c9276a63488982e03c3cbc12905f497789e892da53fb86035271082cdf2b871206552d4050d176545a55f171138e7faa0bc4f2dbae9400d0dbfb28554a8f9822d78e727ca2b24916e4a59cbd1e5894c926a217318297ca811e4d264adcc7327e8e15e69a40b1324b11da089705131569564e285ee5a2fecb2a636eda0d1745c090f37e25325cb30b0aea938d4711d7c92d38fc0b45033d865be35b37ad3f630a85bd1f41830a250f72fd439b74a484120177208ba0dbc8857bb3c90a9a1bc1f501e906003c972532a33e617035c1997b001854b9dba3ed77524c5572547490e216de50e226f0b6dd54f54715fbc7d4bcfd95b8b9f3683de85d48c61a371c92f54af856206dd7bc3b6e8936096540777b8b0c73769d3639d64ecf6e66293b24fa0a6dbd7d449ea746471d88d2ebfda4e2cc6bb2b9b7cfebb992129042e383d6649a2a697cd53db59da0df5852b9a7ddaf730bf1b4e85c9068d95c571e3b11f71d04826d79f284eb41d3b98f7fd493c76f112f453d60585e18b38647218352e6a968413188014195bfbd097a54101a68a90462fa52df446fb95e5003a7b22fcda4844b950e325d11ed944d018bfc4005de2afe804720d2c57a9271db987ac4ba6fb0d5c5a6ca1d2295888786b9f240578bff7de3c37fe053b974cca13698dc3d3fa24e4977a11eb9183bb3bd82b91fab4f30c20385b95a7be4241025cf2d05846a2eee23b9df7e651b75b0c880a6e1ba25f7908d105254c174068c05831e7d9183fdeaca5505223fcf9fbd1b3cd513d2f96cda8261a0118f3384d64ec61c20a3da1ad53a9fd8b472691bbc2fd4b2b012a9138d3b6c0a24f55a52bd39e3f48bc34538f3b2b0c5a5310c5b0e22cfdd2f6a5550d5caf88ad92a5697a2f6d93d0c8a6c51f0a7db42b37ef7e1823e2d430765ea6576f6ae89a85ca6f4acc822fafb9bb82b146fe54cbeb4d46f660329c50a21adbbc6b5ebc85d80ceabc2a029f9267296c4147793ad4341633f085efa197d0e46d37ea0b25d48850ec809c0fbd55be01e80751505835e04ba0b330f0ed9068fd0af2c121b3a76c44d8877868f507704f4ff100e0d97ba028d1d7dcb1ca0ae7e0cede5de82b13b2bfc23d4be83640e95876c2118f2b97cfb93b4316a36604d2e8f1c3128f8337af23d34cd0e1e8d1ffcf11647b9581453172a663a969b973acb299a139263f5530fa4d4cd5d06334a9eea7641895722f1d7b87d191d144f2fad3eb37090e6d9b61b187eb1e7edf5a5263eb7b0045fce44f252e8b153d6f96bb9ecf81bc61c91a932c15e5900cb0bce59f80b1d4f4d390359ee93bc2d18401331ed48ff56d79cab69c61fdb6be2a0110ccd36bb5e917275a3c931bfad265ba99c9ae6aee8999f671f9aea759ac5abb67eb6285b645a9b7080ab5590c74a645556274e6da0878011ea3ce25bf9158bb18c6709c45b45a4eeb58fce791d474b0a058a274ab79961470b5cfa3f583da1e5d2b50f2fef638a00403180b19448dd125fd486e8298a9f02e220d6db50fc181da5f0e96edbceadb50bfed2e18f70abfbe8fe1573b4c72626ccf128c5e9c62c57f5e613ca6ab3d5bc16e7bedd840439a835916eb9c4dc381a71e13bfbab0f002ff5bb90a8d602ae8cad2369c4c3897d041beac6b48913644af833edfe96617485eb6d2e4d4eece6778bfb76adac70ddd787b4c15065327fab590aba6b2b7b4524ee2cb62ce5eec7611d9a489054fd99c863688bf40db846baa9172c40c65aace81ee0c9355cdee4d312c66e52fe89b2f07b607c1e428413cfa5324bab771dca99b2d8bcb99effbc7c7f749a44c7f545c83c293a7056821de35446860568afb3e628f5c01f97803a9382880b2f2a87836caf1ba56230200d14347564c94de0d7dff462f6710a2f81833bf86d80c56fcc83e935a9ee4eac65f7ffe8afae07fda26d10c20e0aa4af755d55e04494434398ed3e37d50069b212b9e87412bf78e102a3152fc29bd5232a2c0d7a753977ff0052211bb7174f73b417acb6b15bd28dfe0912948e9d273d20cea58316afaee2d266a1ff4674a30e003ac91df55708953baa6115f42f7499b287b70bd74f1652fa137e5bb2e7e133353cb780337810f0693a5237cc89f8566f3b67c17b362a1fcfe7d9f3828d5326d3cb29742ac625dfac715d535d6a75af324bb43684b4a0ab2e85c7749d0dab73ab059cea8c84a19ee30c682a1a423b61db8551053104e4c775bdd9802afb4074364a03bb04fb0b88b9e964f1e653ac942b8ab0af16de8a67b230195e8642a4bf3d66808e0378b6cba82a659d7dd5c54c12ca001dab036e35f66869d3c5ed935383d09c66834cdb33db31277c310623213cc45892aaa19f86b58bcd940cbf87ad34e7c0df7df97c6ac9528eab191179b07696bc323ce772610f10a24aa4ad9f6a4fac587e2c2dacc4e5cb343001f1c741df486661ac44d06c648321fc5968927c725fc5def0bb416ccb869702bf9ca037542ed8127b0c7c9cdb661886a3e3c2827cde3ef0fb552e4d2ec01847d59538214559a5a6c45b50528d182b423430cf8fac60d4f93ae3a84be0c875bfc8791fdeec28e35694048599b33f9d020700dd84c35663a195fb614599b46b24d789ba2a12d56c4cc2aba8beb95ddc21c559314f2f587d497333f094520823f9b3f9d59f89c063bf5797a322f08a7cde67b06720b30091c5b9ff54f81006e75f17385f38bfcb7291015689a4e2643edc98cdd317d8b2b175a8eb1a57e7c4b803eecd024967e21c2f371c159a087602f5fa0ededb57dd32213c07ed9e45331fcac391e271347c8b6aa674e54d41c830c9626160e1d105f0c5b24deb63f8f60cf44e4aa3001aed932406ae2c14d02f9b8d1e597393456d44f227494ab950e2949ec72771790cd05b398fee7d3d37adbd860275787bd315e8e74ce551ce7072aa785f54b2c043138805c82c53423ed84a855809abb8857bb2f45d3838364c180da68a42476a815729f62b5425cf96e5953a357e3311364df02f011d8d0d4f355c187287eeb51fcbe55a98edd6b2f4c4cc57b495fb92fd3ecdcd15dbc591447807c46d8f4f66a6a0cba16570aca32f2ba1c944371fd92bd887482504a352cc34325b7287d8aaeb209b19d73e68a28c2aa2105399b534b7243b43fa886e0b3a4a749d62434b06f7e79d6ce6fb5d0d51c8471b4c26033de69ec5d8bb1ba0ee229aaab12c27e3ae06dc856314dda915bd7a0420b84c9f92e711f4662798b24fbad47044260becd8ebf6ff2d3c3f695df45e34a9b57f2e9608f9448e0ed99359cc18677fb94586863fc740821ae4cf3ad8ae2ff3101b42a6ae289e3a24c7f0c977c0fd6d395b9d3e6e742498e33f1b57cf9589418ae74cb35e10f6b756b4e46a51e042a56a8dc19c3547930b7adc0022c2b7cd1bff2ac6c673be8e6232cd23f5bd5b45311cb703d698b772acdb58ad6b354091408e09e17382d5bb1dd342639f5c54e673fbad8dfec4c78dbdb9b6f511c1076f0de7981d5a2326ecce89f75aaf785efb8328b6ef3952b41a5bd7e2a9010413edec4a12475ef4e0778891340b55f56e21ac6b201aa10e31f0a7405e0d86f8f683e9cfb2fe1687b1008d72ffe874155b54e11f0bf440e4d9929735839b9c3e2cda9b4ce59972a21eaab571a6161ad778ac2c06c20ff89082bf3762c907a0092461736a3ada4b14996393515bcde106bc9bd02c5f1a2c6dcd145ffa39c3d607e25bc4f1a4f81361ec82e1c6d840917c59b54d387f12d29776bf214fa3374c30fbe3b0cff75837d93fbbcc5b48349399347e230abf12124d568a07384f4d7242813e33dfa08bfcc8e5b7aa07f617ced199451ee7161fbebee9bccd5d95ec3c0ed9c2c9d98c38c549242a7710e94cb4b63f812fc19e4898fdb64e3438005371f1f01d9be91042332434e874fadaa1aad1c79080607a1a4590d503075655098bf016c78d598142290f3572127556710aea8b1e5249127676a2d0009c5980dbc0daee4781fc2487ce7a2109d666b06210fc9524e9a2cc761f8a9e9ea23ea78ae6fac2672e40b6ae0016cd09ab0e344bc0f16fd33b8812f67e1ffefc7da819424df0fcfdadb3480f99e6a50b56424fb0aae712660d2eb06bccc61683d38f69faf38306c43256d15e872c31ce7de258ea17386038a2f9524831b385bc8217706fe9851c4df2fa7a4da0972b50ddd8f5bdc05f9e76d281b2d262b9b3d3e161571b52525461dfbe6de2e6d4f615ef4cf86ef1813b6c46be6e3d83ec20196cbfb969d51acd8b982b6b9f5bcda0f22deed53f235dfbe5b76b60632201fafa933e11821bc36efba6727909a11cc12d6cf4834cf9f1afc98bd5c0cbc545662979fc209dfd15fc7da8832f0163a355219cb63582e51c89176997a8cb51c2a77433369e0364721953573c292034d4030168a1351eaa3961a810e063a4eb2335123a280c4029638c24d2696014aacee24459036816e98aec2e843f81e1b7f6362e40eb912ebeee392498f51e79a01ffe617a3e494b271011e9c58dd1b490fe4e6446488914f2c2dbeff77faeff39c5a6cdd20bb68e878eb14d81ddd4ac30594c74fb6c45a03117014e1758e31c02566267a7bc30430833a09d17112e90ed2e785e375bdf7e4d8ba05afe2a7558e23ed739bb2d42941cfc1410cec8e93da2410b1023b2ca7dc33b49bfb0eb4afdfb70ed8a336e62e793aa1156c59fca46ff55cb073bb2dc5958c92d0b4cd96e93caa4e21ac6e516c6d157b3ed581355663827bd780f48ddc1e3b5d5fd2f610d7b26e5d5f129f2b6aed512dc51d744e3d48ad0914ec49174bc9197c18448e47e5ffa22f194eb50344d8c5be680d8e6a07fce17431d59856fc6db9c893f35c51eddbb14d51fdc5fb38e500932472b588534b352b67e195253abb59c37106200412cac806ada0098693b6eca67ed8860711a85eed857c9981c08d0661aacd0c7d0e26be137289a3be7aca110d2c06e4a71d0a442f19bd88cc9eb42415673c1f0b922e34fd35a97ba0683799b6734f4a482f0733ed336dcdde5012dcbed1d11407328fe3bf1d50e937edcf252e6620559039d62bc7e9f1bc79087ab369b52a145955c80a1a30d205511f4c90fc342820f9423e826370b0acc1eb4fbecf3338cacbae3e2319f5ca6f0c2a7a800b622ceee4308946556757add1c9d4f8eeadcc94e19cfbd04bcfb7e277aa17da34d117b425166ba52d0ae17a61278d97677798020fd079910ef3f10be58cb7f43f03904d4eb237346a24b580285ff519164be6e81ec368a6c84a5d0af09367f3342804fe0a8405837acfdd6e5804fa26e2bd89198acdac2c62ed849b6f6bb6b9dfda0450c4cc572f90065b8d896a46d4c32fb7dcaf5019334b332a3b6f163577e74da8c0845d2f26eb8b47591736a42e125add1d3b626120ba468d6ed4a65f7df1b66b24f6adeeb439d48a576b64518cd5758d25089463590485e5e16a9d99d86a6759c130e663814e0c6d828aa0344c6161b23ab30a737dd4610bdcbd49faf06ad1be32c21a0a623eaab24786831a6ca9bc6883a1c8c90541f80728a8e228e5d006f62a0daa12d436f083e95bcb3c91e25a195ea3d59028ce696148b22ca24c24c5e95c375b56edce10f58b26bafd3a0fec3dd2470ceeb3b0e40a972e2b5f56bfb561a580b0d54cd4e660b3ee0f97f813d5c9211fe8f5983a394d1d95650e7dd891445ea6545e8d2bdec1dc3c1bec0dfd2917f7b318b52a8271ba566988403c3a92570b2d6d43c51c81c554aa88201ccf5710810ad26e6b5d84b9aca3d3007cc506dadc59018866e817e40720c2f7d12424937c7612d305a5a47f36c6976e7567b1f9022aa7a8704e9484e2c321cf5176a363a552128783a66858e1bab9d45b85334bf52cc532fa622a390eb5ecf745d6300962627ffaeabc5b8d433f8fbb7e7ae89db274ecb64d2ffdf92d4e25010f30ba0591d05c65c9323f1a48984b9fa49be865566c70b11c23cffd92b68e89964b204d01078a95aea5c3332e24e040c5a8e2958549923fe6fd33f40c3f571a26fa94d18fa056b33f71e4931fe4e8bc35e2db0af257fdbf37bfc8c4771f9b474a2ae3da0f9d781271a90b34709555e4e5f5298974da3026733a211eb943c1c1f6468974e445d29e24016e6438e6dabe77a12dc3c165f60943b4c83abff94472d2f610c9128b5e6c4a86a5c629d2556bac062768e3a58c0fcf14779ed4e099359fea30ca8bf944d60a6b11a9a96fd6a7fc070eb2459f601cc3b550e92909cd387ed8be721b0ac85db30c67a0c0b2d11b0c1a4ae6a562d28766b82a41e1787ed7dc6c4573a7faf987d86341d277d6d12c3d85d1d6a43452f5efb720b5a226249a3daa6f993ffcf3893a819a388a860d1900d2df3d33a6cc5105e6416cf561311b5b2f9387d4572c4868b4002c29561de2b97c982b53951d3542d10dbb2e7f3056a0c104e7cc60ca95e3da80afaf71b515ebcc49c3cbd04ae07b00636a2b8ee979d41d1efa43692bf42a40d4ecbaa123715094bb612b092f9b195d135041b73ac4feeceb7d8d8c4a4a2a4986d6380dda474bee09d60b89f9bd137db81eecceaf96c12e0c7fbfdeca868f1d6512fb8a13041c35692d7e12edc87c70836b0361eccc3deb2799aded97f8582efd3dde37ad72344f3125cedabe84cad136ec43ede234479215d50c27561be176db4a1b52fae764102b7b77a9097e7e107e38c3c08502c3c2e78d48361dc86fa89f06cfc322ce9b61738f633727a93b0b22bcc23a124ff13febf7b4e3590aa36c2c9587e29a968d0440a38badb0c5acd6b5150cf2e660b13f1a15f849e8676f14bdeef98b8c55b8c586b10d769fcfe8d0cb476ecfd68756f949c2bbe517707859db41359c873740fa80541987ced297b94437d4590257c62d4327a6166e0647a997b44d4df06b732611acbb8174cdff231c82b20a4a1f684f337983aaf619cddcb4da00bcef643e71278d424e3c22c4a9994ec2b72e5d0742d6d79ef3de9338820848201688b044e73be15110619c73b326418dcd236ec9cca9744d57e064d751293f1da12f1d93121f66d750887220c5496ff43de960341430a237780f8a19a5b0669048292d9a2aea0d1ce68a481e2d3ed05a54abbac19780d3c03a4a70962449b18d99600abe4a4388e192e0e58628fea640cd146674df055576d2325caf42d016c83595b96365740edfee4edb9f80b1da41a204df382363b94e03d30cb960ef91c202dfcb060374cdb9724055ad0c5ffcce266c1c4a4cb9758e00e6437187c828d5efb0fa79ccedc0d8e6048bb8fd6972f7737167b9ccd580873bfb1277536eae8c2bdc9a5d5cb32c7369e8e19ebdc4ad899b3ba315eea62eae2c96b91bf670675be26aeae69671856b938b4bd665f60d3ddcb296b89b727367b8c2d5c4c59df53277431eaeec256e4ddd5c33ac70697671cfbaccad81873bdb1277936eae0c56b89bbbb8b35ae66ae8e196bdc4b5899b4bc615eecd2e6e5996b91bf270675de26ac2cd9df10a77331757d6656e0d3d5cb396b83475b3cfb8c2adc9c59dd53277831eae2c4bdc8d9e93fb56505c139ce6e6f21faeca99e0e2fe3777254fe2e6ca17b732cd73bbf53797724c70bbff9b5bd96671b9fac54d99f35c5dfbcb45b933dcddfce7a6b4496e77fae356c2792ed77c722be9296e57fd70297f969bdbffb82a619e8bebbfe14a9813c678d66ad978a8cdb805179ff55937cbe0513fcb3d5dfce866b8a18daffa2c7770f14e9f758b069e68b36eb2c737ed8c9b5a78d5cc74170b1eb5d96ee9c2873eeb66593cd4cfb8078fdfba593764f0559fe58e4ebce933dcd28c676d969bf0f8a69d7593062f34b3eedac6236dc62d5df8d467ba19038ffad9eee9e14737eb862cbed467dc818bf7faac5b32f0accd72932ebeb433dcd4c6ab6696bbd878a4cdba45071ff45937dbe2917ec63d3dfcea66ba8181af7aecd5c04eb8cf4011e5e7b1fcb69ca7faf3e4961452b2771223f610b723033d6e65e0345c8b3e0fdcb392556ec175266edf5119ae64e61bf75db90aaeec3206eeeb9034979cf103f74859953be79a91eb71448a3b9efd8cdb52b6cc2dba9281eb382ccd3dcef6cc352b57e0ceba60cd651d2fcfdd667ae69e942c700d5c61e5fe1d4b722bb39fb88dca967125ae86994dbf1fa1cc110d92f405064be3fe03f931d3d1803d31e7c063de0fc5856fb6ad045daa1f9548d1e557ebded775cbb27437e5bab35cba9a70dd592fdd4d39b8b297b835755d33ad5d1abaeed9d76e0d7c77466b7783be2b83b5bb61df9dd1dad5d077cbb8766de0bb645cbb37f473cb5ac4ddccedcebaec6ae07667ceb2fd5f8d7f8fc8693e69ec978097a8f7d7ea9a0a82b6eeb63ad455e42f35a207bd48667f6fdc97e33f977b16ac48633681d8db9e4efc3e2a567d23662cd01e58206a2c195ea3823881c6aa7dd91748005f675afd1bb9f2bdd933d8469729ee9e3e77e63577338f2b73c5add1e39ab1e2d2e871cf5c716bf0b833adb81b7a5c1956dc8d3dee4c2bae468f5be68a6b83c72573c5bdd1e396b1e26ee471675ce50a6626e79ef44be24a3a2570473a12b844fa53b93b7a89dc15fd24ae811e24d8ec978dc002ccb381986f181168a1fdb41744760aae940ac52f04c263f4ddfef89cc2a90e9e7a94eb1821f01287b9b38a448c52e2b6aa278f49bb6be0457e3511f9ae1be0ee09cfdd2efd5d4acedd5cfe5d9598e7e2fe89bbf26937b76fb752d36e97df2e25a6ddaebfdd4a4dbb5cbfdd944ebbba7cbb289d7677fd765332ed5606275d131d49dc3de7e6be07ed9a38efe6fee9aa64d6c5f5d75db967a77f387717342ecd2d8062032543913b3b4992c6af4b02fcf959fa8a5b71440c5a8771b0b8435e1eafeaadea5f594927d1570e32e727d8c17ec8c5e2793571a7d7c19c0bbeac42fe4343bc8bceb70347b593d245672374788544cf0d8ca1d40960a1271833d96a45af3be230a17ae47f78d38473030a8674a72aa92f8ea75b94ad4026bec81a349688396fe7d54562a73139dad90356304a1fa11b56fffa2049ca510033ceb8d52b757b434f056cf5dfad76dea17e7be7076012e15603de191d30adab0b6606f77ffcf7fba587714d20b8d28027fc6525d5ce7ccc2c54a523a232c2baad5dc80dceb53ad7ddf6d519401737d096de5cd06d9ed7d86e629cf37f310fedfa12407435c3b23de8362e81ff150d15e849475454680833c07fbfc8adf81b233ee0efdfc7e23f90dd4033c7c0403c2f17c0f43ec431d093cd60023f0ce003b3fef50cc1c20ba9d502fc7e960c6e03c447c870b47c689c40c20e4982a848d333f472a19dc3b2d9e1433cb0bc6d5eb08841ba906ae8a4fbec3d607e2eac52b2b3de8b0f87ccda953c9ab547c3f8bfcc8224a84909f1ed43c4f525ef6b74ad2af0e31c8c1b30f63f8a1b6ab28ca08a8260c65f676101a3ebc8b7268beba9ae2a1108ed05242a07cc2484a4bc611e9cf617a0f713a44e50d896ca7f554e39f2c4ac321e9186114c939e8f306e593e8f5ed9ecc5129697ddd4675919ae1b219ba9caeb0618216541e129c7fc3bc057e53658b5e7d588fd333f4c11c6c42979373110fe945a9da16193d1e571dd0d9038315cc19eca151d2373c5f0abb917600d622b5273c550120b1fc6eca092ee4e2bb44fbf9d370dbff084b8472f340b8fad1a78a184bb3fb718c06fef83e1c93bfa1e3702e510d1742e58df25f105dc405e87fbffc229bc785cb781736635d7afd41fd871ec5533a8cb9633f9b18be7e830973dbd5d6b9eaace109a37faedd615ec29d5c0024dbc5ff4e7a667ba27dacce248de4028dda5adfcbaeaf16d72e366c0216f60fa250410e1a20d271b80ac8cd241afaf92194ef2b32cdd73755614e3463d9bfd6b8014c8964b5fa4ef02453bfe3b68e48c93e02b0f0e398c0c9339e1bd7795db895af949b2a1f8007f3453083253f45732b0bc7f2f05befd7c71f6e074c882a443d3341693f8ed129ee27288da74f6fd10bccc1b7fad65384f1cf02d987ee41e28aedde06131b6b4018a003734f597c8d0412637fad49783e906d66c2ce13a9437ec88bd1c7ff79a2972e8c82bf31a0e7941a03a12a4ea1bea4b044b091587c204c05191849be55897346a5b18119419951e0dbcf635766c788a715de759575a1ae82b9e0435023150469f2bd043e8b7fa5e0bb432316073c24f476e899d0e82dd6dbf9b0982c2d12e73202e5e72c7cdea31828f17815bc2896ca60a05ec2ebbdca73a6cb67e25c0389e1b426fff5b641c22545bca487d7387eef2a633d757380185eaf7aa42740aafd70c4cddc02c886f18d94197e4a70cca1701a4b5667ce063c340fd3df6d0f01322e129277874d1e9d4befbb27e9b506a49c554e9ee195e706fa784d0f5dcae895a2d892706045ecabbc502980b5a52f3328113e102f3ec2a3e2897ee37b6053f75cc1b70818fe8d59b1f202fb0789b46e1dfd76033309ea12074a28dbb479824d965f86230d4188c477c58942e6b4d2f2e3728da5bdfde1092dea7023350ea1ea92fec913c18bbb5291559436d127c35ab3e97e0b5a792b8fbf47778b4c5ca1c12ab74f8c789ff011989201d01ce018a2478697b849e0490a235210e820eb0df522f6b016f9bb4801ab2346e656980fc6ef670a4b9e04aa4b9445007d6659c03f21690ed3df30cd9f8c4aa00f542aad19fe04380ec8b3e33b89a34208a6e0947ce9dcafaedc9611e98bacc9c81fc917a7f08b2f569c57a22596677cbffae1232707a6f4ab29775f1dceb401f003d1b3230aa6d5d91de4e8ec0a99e2ec9d836810b5dd6edb22e7fafc694b604d4746b6a38734790b1f11dc29f9ea89010206f107217f6857109ab282b08e03e6e33d386df5bf405c029cb4e1a7c97911e4df8d207040299f91d1f478c4e12d62bbc879ba4fc8bd8d01a8f4d01c284955ecf6801741e6a580d6bd38e19ddc4352fe335762057d077a85c1ae6eddc32576822cb7e4f6665dbde67aca21e73fc471c8f01842b267d96ad237ce2d4acbc543cf406632a230fc5c4744f02e5b35810d0ecd29fbdcb96f8905578d694c44908b83e72c96f044412409a820e84ee968128f2ae2237f0e81d4f8f25ee03b405e78c9b3feb573ed9f38175164aab11413b30e1d65a59bda1f727357e0beb72b55147604945cd798bb229aa3afa61c46dcf20de4b3e6744355b05c5946880dc068e7f0b5d6ace0a5865e2b6cbd7983a38148c4a8c8c2e181488cc3e45764a24e215ccf50700674e41be280adcf79675ab235c21e968bf693e52c9ec7722425bac1d31bab85ba08e15b98a67aae69a1ce1433b82c2f36dd1c9e96ae632a551a13924fe71bf811dbf13b9fbc062bd0225f0b11481a485f6df7960e45cf908ecec1c8da220aed81bf99c5a556cb55fb3d9a2b8621cfea232334cc37cf9e2ee3423c251e74d3310afa37529cfd9327a363ec2b0150ae24497753d800290f0b61964c819894041106238d85b265bc57ba4efa056b26f02dc26e4f13b2705ebd9e6bf66d0b98a762243366dc7f9a93f23c6cbb3d0ded67dc5e2bd5bf0eee52ba0bf07312a1ab5c3dbf347c14d141aaa7d728040ae0324b022875aacca42e21705e234bea9d82c6c974f4b0855af4447197dd2397062f963dffcc46094c8d0716efa8f835f34e4f7e448c5fba696fdf2d33b7c7f6942289446eca5dfb53c0addfb4504bf240bb5096b4bf9feed353f36be163ba1f2b7630a1cec2028ef55451b060ff8d86e66487c6b72389c08b47ffd9b9b7942b80ea08284e603b874b91a0914cc0f542051f408faeb897f378067ffb11cb72323f6ff9ae2297e59e07701be8973a580311510d7d6b1778b90f28200eeaffade22c1d517576c545f4f11517c4dcb280d44032831cd1aad65ce961a74614e54def103d4175e8e5986e8ce450e1f588e881379228a2e3ca066acdb45b79099962a054fcc5d0465059c2fd50fe2524d8e5ce093cbf779405bc028b96c1424c1bee4811e1ad1c532a90ed48fa3f721ec8f5a5bea6dd9cc3e9e80f3ae330052401768ccff1505b4613b686184430b3b33d176e383f2bb16d27de7a4e4103f4ba066333c6d3ec2a8a9395c6974e17f6daad95699a7c939533a8b2bcf4185c3478b6e74a23e7d9f59160b07d8ea354de93c7ff794a6ce82931bd3ab8c5d054c71ac2c8b5e0c5b76e7116f9198ec869ac2762682ffda8b39a251508896e201cf41f53026182a6b23a2ec3b09a2823cd38333827b9c8197e96b1095538e229754453c2932651f2679fe5c3fe3965d98fdb2a0188e93af3642f22b59545f056df9545e86d327de1246ec925a556ae26be7d2736ec086a880ba4924264086d6fbcce79f484cfb35ff64170210e10389f554c4f8d658bb9f326718b9655729e6c93d984479a2c17e509eafc280a2e58fe734811acbef6f3487ab7a20fccf6ab8afb1a312af6e95eeada55b0111f7d75c3c8062f55f03561964a7ecd66eaf6147dc00c83a3c82e505fa4c12448620569ebe0d8962b7072890eb42d35eea41af5c9204bd4cd51fbbf4e94ae7e47673ab34bcaada8794692fa90721a61350fc84a178fb87f44d0f569950024ab2c8a899c948f4c148101d8908eb9ee3166038e9860952d8d0d5bb7df51340798ad40017b34d8aa12cc73ae7810bd5b906ccb5b988ed4f2143ddcd6b84c292100b03933f243e5c7e1e5129a44c645c2f2e13221eae643e96e90ac817cc4f6d4374f8dfaa12f4efe1bc86f891611a0c9b6c7b4c8d4927aa653ab02b99ac5d473811acabad5c0e7652933f0787e79fd6213705d104593ac3ab64070e57c7a120b9e553fc4d1f0ab61d66b7c53e203f2d008f844054ab0bddd0af222f23a4f174709383368416306db3a122afb8e5258c1428f0831bd0aaba7189a809a3fefb5b58868731c4ba0e3f63baa102f4c179da7bc0f21f08ff3fb168e2c4a9ca164b721a027c900ac705ebbdfb3815875e7462a1c94f2a9aebb84ad3538df04c0c4464143da1fcaa29301b62e10c5228ab499f77182282d8bf88902671f64b764d6dd049c7818fbd38d3dbd440d94c9b61ac6f81b9af444de6b1d9eb197634b728453065a55b6500a0b8a13f31c8ebca87f91aec40caa420c8011feb01afd28018274cad6ff5d0ab61301dde8e2b645c9100f3adf8e22202e648352e562398bcd394f7174d6ca8b00af53d8d53fcf32a9079ec8ea085d41ec7c93326518f597535d49296a38de1c64a9f06226aa369247c7e57b99a2afac943f784812e2b680b513d83f72deddbd534e290d118c3496e3d8e6b059690a8a2dd461edff076b116541a6a8bedc6c6da8369247934997648559651cae542b7d21bafe58e09fd40ea03d41a7dfc55c23b743eca92bcf0f035262e120c19ce65ca4bb910d8d6ba63e21159767a1ab4768eab5497f4ac7a0629d132335a15855c0d11c659358e29dcfe0f94ef1818e871f7d8ec2f10c36f7a058e9fce0391e9acf0d6417ea80c8703532f10dd51ea7b1fdb09447d7852f5c20e60564d7c63d8aa7702223386c667264c3d3bf0c665815f222c4eb3e50abe4557a269216fce3f349474df4ed0530e4cce9b89ceca7afba4b30c640a51f7fd54949655d1cfa8b610dca0f614447618ed0dace13f793d858e4a98798a99b84eca62fbb6f3fc1e21e7abea8f5f7a13d8c2e1acb80c67122eae1aec8be95a2f4b003ae019e64a3d73ac542c76e43c6e518a58d3c2446347c45ba524f817617aba0b4f1502d0af79f00cfc952ca7824513d4a1600efbcdcc6d4435fe02cf3384e36a0336f89c47409802e9a0c442d8be56e90078da20b174109275cd117485877b45714cd6248364b9effab82de23909e7ed115532209073ef15f428830eb0ea566d83365b9be32593fff50bb4d2d588dc9d53bdd92e3f78b20ed0cb169a908f24440058b1d99335846d9c659b5e08e93179016f9307583b3d08dfb147877999142031ad7c92711971f5a9bbc759d6fad5a0791a6737840fa9c248f2ba7f2bd054991621121e7e2fe5be8f2f3cc6ed6d39cafdfbdc19ce865ccb4711ba475a768a2aa2c5f8ccbf5715d45214eea741f49065267a004617abb05589291229b91a1d748e3f4a7760cc4642086ae43dfd14bbc1f9d1dfff3496c3e3cb0eb20d781321fc6c9baa2093ba14209bc71141f8982931fea6acf2a8d908b465d03cf59ab3e997d6c5df399686bd48287b19003cc8e10c00281ea0bbe920e5b1b718447bac3680f08281fa07a5a669cde4b34649d8cab45c51313945f7b8536afe6cb8a9b7476825597e81adfea26e04deb6d93b347d41a1da5704fcd4b49a8183ba239afbc89371b627d3e2b1fb0d83df465d0d4a5846be88e901af08d4481276181cfe0847a9180666429667b5fdf952d3ac5ab03064f41f7452f675467f389343a418af7fe5d94f3cfc32fded895bd6d3e301dcb4048e2584c20c5720da15271d2e9420fc165150bc2f6c218efe4be4e014ff555e413d8fd65144d8a7ec80870cc9fc029ae28e088000004a3b682ba872e366650dc0e654eb4a3e8a6ec835fa66c661ff0dadad59da8d10228d10b2f7965bee2b0c280c1e0d29158fd3a956667b3a994f69e8e5431b40b10e21b47ef10d95b37f17e85fbd14fb7792b72c2b235dc8f0d71c02a15c3ec64d453699a8dccc1353f0f35f13a97d6e72e1230bc12bde6997252a1fc64725500717aab4dcdd8fdc13534ab04d47b9242bf2735b078c1a0fcf3c445ceddca803e5861a2f78f80c52788650c21f216b723b9b9675c2bc39e7ed8596842da5c64f9ed73fcbbb2ebd7567e8a19443608f7cc1902b0f25dfa2ff88d4ebfc6867ac082a7b7d4930c24beacf1b42928252cacd5047d3b63c86a99e5476f79ca7544a793aad0e2e24914b258dbc97dc7e5c17bdbcaeebbaf6117ca55926f473fb013acc3e29886a37542abda8343210d803b59a9597132abf4ccc8330654d2baf28a9943f52422999a31237dedca46608e4b52465b8236e9d4d4d26116f6f0d989f310b524cb5a491b4cad349c6536d428dffea25e1641fc157996532e7b1fbd479907dd6d2734e2bb7d43c9c5f4d4c4b4a232fa5a7360979ef15a5921a6a84c1b13e82af2ccb44ca96524ad983b45a4c5d5e54de228335d4f7bc944d54be52925a6b6963a4b632a1f2bf9a01cdb2a6988713256d06b41bcf90c90883c3248978fb23f86a5aa7d6359f6a4d7ab90561599a78a3e645edc33b81c06b6962163dbb69e60ef14730602ec9600df09cfd4ef045f4f91af0a5fb7c09faa8b3832ff5f320f812e2a00fd2b456fe61779afe411f35662e8b8bcaf73afb7889c43e72903e3ab18fd44a0df66103efe802401d7dd335ed25fbc51c189602bd0f411fa5260053fdae7a3f60aa1ff216c0a93ef56060aa5f00ee4f607bbf88d89f5785fecddb8594b854bba14a1953cd5be8aace7ef39fea560b37fbc128b79fa97cdcd6e2b665cd3be7a59525a653c0628cb1afc4bd24959293e7362b62994d4de6cd800e43d1486623928b53e26e5cf68c8642f6cb2297bd528db3df066cbe8fb36b1e4727b02b3a1141d26ae25466cc9c6551069d37f3cd5bd9cc32cad7ebbc3079aa452732cbd9d464efb277fc4cd47599178dd47336a633ce44d9b7edb5cb6a8ebcf3dce822fb715dbd8825fd68977dabf6e3873c9a8ef49b179de01dac6520cc7ef39765d999494b0b4a618cd1768c71c6a696f54cdad4442347a20c6624d5288d46e291d87d996539f78b599649393dad8b4ad33de92feef35ffc477f354c3db51f0da5945ea79ca5e9ab7d1ee3e4d540969e6a5b624cebf0a7f8727d035d4eb25096e584b253c69000731ec8c33d0f7134c3ce58a89fd97884c3383a81b1259dea29be4ce6e4a99d7052a213bc838b2050940ff2f4548e0172bd7da0941841cf11a3c317d109de41e391ec8a46624a5af9d1c87669171a99812c663ffee5413aed2527880adddd1837b74b2414c4598cfbb671df304edb368ec3ba63dc639adbba472deafacb7da9cb6dff54973bf7c7511445ee35720f45ce7e4354512a914a94c824f4fa602be8bcaf5e9b1a12e91209c9aa1d2591de75166367eba48e56a155641299a4eb6c6aba577ebd44d2bd5a38f7e32e546be77df2769739247a8616e2b8da75ac7a9bba34ea7e3babfe53dd64bfab64bfda7d64bf537791fdded96f882a2595745d17eaa492cad5775dd775d58664129944269149a0cf883126b4b4582df4b2688b6cf1be7a6d6a5a2e73249296c7748bf75938b4a5a5e5cc2da7f40c48a9f58f5669a1f4bc69a498eaa20e51a9e8e927da72969f3e9a795bde2d5c4ba876d2923bdd559f16fb9ddb34ac1be1f056bce3b037eca7ba1fdf94de89debd6565d4f2524b4b8bfd58ec89ae984aa491a8ab216ed3323bc40693494e556a666430c7176f6e5fe68b0ba55c462002683b928344c966849b9b7a536f2a943a73dd6cbf6e708c1cc941125fe8378944e65c562691393135ed0584784608b98011f10563d03422be6844b864125a658b8ac19f0bca2593d0336e6e706412898477cc4b99537dba6184b44bbf3fa672fbe329b755a9f30ec3eeaeebe9fb65ca1752317bc924f16673d2ddbd4d0be322199d45411d760e3bd771d8b9ee31dd795f2c63ebba4eb28fee5bb7711c5bf3a243c841c8699ca8376b6926a5bc83d28ead253a8ee338abe3b8aec3ce91e2144a7907774e3bc9fbeaedf81da9bbec48de17cbb81f47bae6cd8448af2492641fa46bdc115d43277d17372f7de9109e4a5d88643b1e494e9eb20f10e51d1cb522b6b2e8a6ddcd5d7cd93d03afc5d0723635f06cc1b3f5c532a0a5599c758e0ce6cec52916c77157f66c7bf68fb33490e4301008c3308ee3b863dcabc7d96fb336208c9eaabce44584ace129477659edc2c203d2a3bc835ea3d4d3e4c55e6b513f95aa6184fca854aae6a933a0cffbc11f4dc8058c184284c603f145937d6a25c6f20259ca3baec7345f413c9998ea5b5e1132418a882f1663b388c6029b94773cf9543c955538f0c84187f8927d42ca3bae8fe5f523e4022a1ca0d08c6bc3a8daa5dfa16fece3b2df066cae75d65417c8b2d7c69910649c6251ede2cb8b5e579c12a7589c7dbbc4478e7bb4ec77fab5b2771e842e56f7eb22afdeed5df5422e9bfdae798128a5548bf40adadae442f63494c873f95ed6c9b5dc24a6a8e8db6efdfa44bfe827b3fdb073ffba875edf3ceec567fba9bef891851a9ff3349f8ad921dae5a4fd54214ff3a99dfd360e9d371e66f8f27276863be81fc87eaa4b351bfa27b234f193f3d2ccce60e77ee02c4b132fb49f0d6667f8f3f616c4bc6cad67f6827003d1986248638a67f820be3554b65f0d3d8d1da52cfaf5cbce29b21ff3164476afcba3563489e9cba317799dfd6c2837b9d9c5563499722f8f462064735e55ffe1701908ece3636a1908bc23bb153a6f324c40e64e3d2255d2c8298c1cbb40218b3da6b3ec1c7b19e759672fbb7e5b5e1ae6edc0b7d6b87e59ab091078c7843244654e2be6c4d9d6651db1da92d39231a763ce8ddd3f28e5833fa047cbb2ae771e6c1779b55f34bdbd7a212fb31fcd390fb6cb452d0d8dfda09468e3e5c6c30c66a9bc2dfb91e5a36567f894da1a9590365a9c3f96456915eb8adac5a732875e22a117b528ad02a2552ccbfa52d73addaf5e6bfbae6a3fedd865e27188ec574defec7722bdda2f75550dc337212eb3df293bec92753aebd816fba94edca46449f6639ecc964efa653feeb9d106ea2d8710a6c62dcb7e12c2d8b8e9a7dbf02074a9e141e8721d75652df6933bd73a8bfd4e27fbc925d7faca8dd4b956c992ecc87e97d5d9af56fb9d42f67b8ab3adba16e8f47dcdd2cc6b81948086a8ae545da6994a6e5f2691496412998477b4e5b6616910950ce6984fc3cd1963dc2c6af30c59a5cb8854f87224e3ce4369e394989a9db5685dd84935de7860d3453095fbb799fe55eedfc9347a770861480f1d4298d2af9b3c085dd8963c085d461e84d8355167bf7a550ba14b28feb205d1cc097a6f3cccd099ccf627cdfcae79e729fbc07eb0ec0cfdbc41cc4b2de51df68b5328efe0c34f1b5682353a9790b2418543164f58a2094da04843149f5534c28daf279d1a8c9669b819f14092a00353a8819132a28046942bace416654051c612ad0c255ac74486862b2f061448c933062cdc94e1538616191635d47063624cace1c6d7cca64228178281093b554043175f90018d153c248d818b3b1f35f671f18e3eb52df43ce7172f2db320b3a9a41b638c1da3cc41fba0f212374ca5e766a17898e3933a5b2fa97c3f8642cec93f57f21857b64eed24f5aa55d3ba5b7b4cbcde24a6464e626af498d83a15f44e52e1bd404c8d2e24a6460f43cf853c549a5c1e17f28421e74eada3ce8f08854ecdde492afb701153a3734f4c8ddedb0ef1b294981a35e91ff76437d4ee5cad546329f125ded15b7aa77edd44c91d7ddde48edea3b70ce24bf7d15b27be6c1fbda1882ff08ede4be20be9a3f70ee28be9a3f74ed61a89f492f7d9941e1333535d39c7793c703d702bdcb76fe7449a6773eb10ed9a48a4c7b445ba453af604d24ba49822591953d618a3f3f6c388981a1d6e2d45e5fbdcd1b113892ff5a30b69189976197d34b25a172c83cbbd9bb4ac56c9e5de4d1a0646eecc3997b35b93cb537b964d0f93c269dea7c4e5425c68db3eb9ce360ffba2a59c9cd70f228449e96e0d6edca5c76dc7a45c90911b13b91ff39bd7f06252226f3fb6cdebcbc9b0b9eb1a55f2697cd00f2ce3f2afa904350f6fcb4f8f657059e7c24b5159ae70bd4234eb23ffc2a4746f301c88411b0fd6f9b3a794f8027ab387c1d8647a16d59899af65cc9a16c6fd409cd999275c64bf086206b16c5baf4d8d12f310fba27fcd0f1b03bb12b727cb79507f9814067d3e265e970dd0404dfb8263483ba31dfb8668f2988c46224cf7b67dde1a80813e7f51fa2ceb212d9ee65359ec10edb274a4b7fce4693e95e517e9a7f3c6c34c5f5e163bc3f20dd1eee82da7d14ff6e323f3f2cce82c273d6e3fb0904c56f4919de9b6a48bace5d5f8f6a306250d2135064857da197e87f23ebe28aeb9a44bcfca93bccfe688361d6ea2f3c7b8f29614c96bb1658d7191773adc7e9c6222c9ab613fbe352e3dd33c1b319d4df3a6d388e4cead87ec368c2fa3efd2a446f2f8b278f08e6c9c87b8c1622f1e401ae686651b1e6f3f46cf2caf3fea0e371ebaf7471ecbd9e3017bceb4c610d2bd6e8238c63d0fb9a25b2666e1d133be22334b19456fd2afd708a46fb22c3db21f3df329c9fa81eff5cbd226fdb5fd1842ba98b5fdc0e6ca6ca98182a42b2f49674f5e2d53243ac9fb865c924559e7b35ca2ac77ef11697418875c946559ec37e4f2edd137f6a4e83c3a3fbb34f6a495048ebb019b3bf23e12498eacd6847a912ef2be1110a78b3e49565eb33c11c901a221248dd4f2fe10926587905a7eb8de8f5b0f2d2bb3068aa76581b41b76e067076d3d906e76f688906e2673a8a411e996451af178892c3af3c881bbd730a068c4e27d432ecb7bfb515b2ae926cfb22c12cb49248faf652299de62997e32d5d3b715d999faaedacf26a659461eaca24a3a8cd5c4621d64b2df1092e9a297ac138bfd2ae99a5efac87e5574bdebdea6a78ab89655a3a2501e8ca96a3fd2ad714967c971491fd5388cf354c39250f6ab71ad572fc7b5482df6bb2ee92ca48f4a377da3735fb1ac9b3c784b9ea8bbde75966559de37b234f10e99b77b48e475dd4516a977b03e7a4cd75177ddaf88fbd15b76088974fb946fadbfce3a1471e9a534cb2069c52409be5709a3f2a6f2bd2e19195c246a55928c0ca668004f2ccbc2ae1fd825060265217969b12cc3098536ee6c9dbf6d9bdcb6cdb252931908c34016b3e4195ab9c5b9d37376cfd92da9d6534ac95ecf395bb6ec4bce397bce7ecfee6e39bb677fce39e79c2d677ff67c367bced9b367cfd93d6777cf96dd3de7ec39e79c73ce39bbbbbbbbe77c77f7942da5943090534ac930a85e9c80f69c734edaaadbdca449132034b93cc50a203469d205fd0d1514a5941e8dbcda418757842145977838b7f9fe01ca405ed56295f2146b13aaf6af6a38f523f8aa5a265ce816677117f7969cb497859b84b7b71faa0592d2a27ec892b01a8c515a9797b538888e5c9c61c8608eccd6988a5249e5cb5f20e24b9f65af401d51b6c6de57a9fcf8936ad23b7939f0b8a27e272040c804892f1f8dbc3c72884038e799bc8fc8359dea33f666428f17c694e8ec7517b5ed73ef62227ba6f7e88fa95a6bfd6954255fca7ce927fd2573c8308d3deb3171013bb87c521a32a0ef7e896fe2939e998ebabcb53580f43ebde56d3f964bcbc3c6c454247267427274e67310ddb9872ebdefbaf2a86a391b3a5f721f795ff7791f4e17398093c7f8216f347af316045b94e87c0e2542896c0f30a6ba779cfd885cee0ee24eef8face6539b4fe7eccce9223b537ad3c89395a51f68c9a22c4db7fdfa9a1a603a1f6e0d309d3914d2b6edc7c675cc3d64e24b0e719dfd244bde4296470cffe37173f062622a9efb16baf436fe88fcd89e01e1d347a6c398aaa29f3cf9eac9f3a90bc2f4c7d4e8e4f11d1dc868f492c942b99ddb3a0f86be75b56bf7854e2285e839eeb27eef93e92bde552f8ca6c308b3f2d1c9ae7830ba982c90c7c39188f49abdd4a1909d91e7ce9d7b4c9472e4d1442de4711ff750d65ef790f711b9a18bbc1e4275fb4257e27ef3214b232f37f96e767b4ca4d7bc4f46088ff892c3b5fdc02e4b23af4d822f2d5d9a3a434df160434cc503c1837934cce994b2214e205c50576e7cacb1027bfc70c5946c4f7302a452ea9311b2ec86dab1830ce3cb0aca4caea062a7539f62951863ac5225ca1d2c59b2036e1d4891d252daa7bbdba77da8c860017c9022e7487c9197d9d2f085d6072972a2651d4081122194391930750021ece9e9a14247a7a30ea402a934a442290e2a6394241229478e1c3c85a7c429bcc33bcd3b54c033e019119e41452a959212ca78d2344d0771498c31c6251d9750914a752a6eb145f3a2f22173bc4026f9bcc5c8cc41903c1c3483dbca552a7dbfa592f7c96ca3d3cab793bee2d519ee7ce3a595d389e4bd741c374aa7a5522681eef0dca18dce728f691bd58397b479df1015b7b2721cd96d6419db78f61fc76fa06e0f801922aa5b7ac9ceac9cfbcabb1e482fb1bc74de82e0beb201be2c5f79e77daa54ea3f9dba138aa5b4525a29ad9ce47d2c87f70175d28ae7809577efbcd257bcfa433df715ef93b92be72d8892456d2f9de5dd390fb5fd748ef42f75575648ff4e776565c5a2367bc4e9cdf2203cc07bfa572fcb4f67f9646ee927ef93b9dcc7726be57003c217f59d5eade6534f16f5153b833ac9cee0f8ca87a8eeca4bde77b243541765654cfd1d8ec303e0c6e7cae5d6038e77a75fb9716b654cddb00db0711b998dacf4ee59e7953cce346ddba1bbbcb6f5a0baf29d474475b5ac3b652b2fbdb39165a5ee2ba7acf3b2cc7a5e77996559b65de35ef2b457ef93b9f58d02d97fa9932dbdf3560e7ba5495fed397da91b84643f1e2b231650fdc90b7de479b01f8fc35b39b1a056ec71dc38dc504288de9780c85ad82e2c1280edb242b2dad6957b4c2c3d5b41691600393a1c375202308d50ed0d51a1cebde5f5201b24168b7a4bc9fbb66fc0e6965edab697ce03ca7ef1a25ee32bde077feecabbaed35a3432a54ca353bd78dc9557c8b372d2ca596cacfca45900e408c007b0e2fd380e1b4600bfd1ddc605e0c176094097a3fbc883ed02006bedc7e36ab6aeacbcda7a570e3add9593ec77ba2b67b1dfed97ba2b3fd515afe5a8eb35ba0e052f393b53fa56fa76d4e92c5f797ba38b3cd33bef9309d21ffde409d11fd920a29b2c6f3f4aa552c90bdd74d13b8fe570fbf1d33b8fc57e32b7fbc95b29791fdfd233aa715ee9a28fbc7e4c973c78b57aec24ef53e26ecf784309317a3fc8c8f68374a1c3b707dbc546e77ef0d50e51dd8dafa63da619e42941c54647668a3edc9450ad98f084b01b6390716b01b5878693cbdf6a8df0c6ad87be33dbf98d3a6c9816ed204dd3dedab68598667296418dc8a5e93b833a8ee3386cf98dff082177667bf7cddbde5ee577691cb9dd45689c714147a141c605bd7fe0de7df384dc904569efaf741e4a7be9dd16da42422e4ab32bb6643f21b77bf70e799f76cbabef4b6baffb66bf237e9368b91bb0b9dab7df500dd5d05140e0fdf6de3cedf07303a2e5dce706846fcb3bef0b7db3166f0ee0bb3dbbb4cd017c5bba7376deedfd966f76a6e59c9d11bd3bcd0c599a795bac8c291caf87bff7c93b7a6f3ff0bbc7ad0791853185c37e34ddd90fc6d4e837ac8ca9913d3d6f0d40b5fdf8a20e3acafb94b8a067fdacbdeaf13cb6fd90726ed9afbec00d35e0eb5edf28fb1569400dd98f9e6d5c90b5d1363cd819a8c550413208ed591897af1d0601badbdbcb38ef1372b937aac677f75267436faf1ec2effaeaedea0058edf7dbdc3b8feff65b1b86342a1d65bfcbb6d8d257ec772a9d74b8f96033db6e76268b5b0f1917f266fa1ad6ef425ca9fe5457ce52e354cf72ba9dc9139d14ba28f6c06870c143c87eb1f33ec813736b5da971e2cea2e25e83077716ef746bbdcef216aeb482bae9321df5533d1d85b2f02cdec9e371eb4d9eead62a7ae8e37e7de41d51ab4d82eff6506f3dc4bbd999bea65d03526bfdf75b63d5bec1f63e215a13ea1f7a4c7fdcb18762ee07cfd9af378f6f96f1419e8dce172304089b2b2dcdec1fc18024f8f24b97af8a22ccb4e43a84a18777815b10d79d82520badcb03749e3fd054eabcf30c0238ff5d21b0608f96b286c21eb1bb4894b047fc94f7a13395823de863666992a79c929b8c4a1f25ed39e3a43c23950fe25736b4b013420611706102f8df012e8cff70b80528000178e818c00072c47f02b051c38dff7000e0c462aaf15da2d275651a977921988a077910802ef198f700d38dbf6c5c02dcf879801bdf09b8f1108050641a0601f7bbe6a597c55633774cfc9928c83a0a193d1746e902cffd423786600f7e94008b8d0b3f93887463fc1792db8dff40525202c05b9053a50bd1d8c1455dc883860a2e6f41fc12a046aac9a829a823c69ccaf74ba57eb9808287d7c2cb3119aa0f2f6a87cbf7d1c60b375e5dd729a0aadff5fdb3e1c67318f5badf55550c467d3d91be1a37fe92375a40877f6d799017e64052e3fd388e7dc00f20bbe0cb15531c59467b80aadd9868c39cc36430ea9f23f5d970fb27f939eda5fc25bd2abb5e314eadaa24f710e4d5cccd978ca4feab18639041d8e307ecc1efc8f34968a2091b3431c3195cf001184a3806c2fd543c3020c0655016ccc84e90651713b2085a4892e344aa39523690c106a7ecc2283c4b38813c4114b090a1b1057b34cec08c644d94319b20401a4ee090ca71950a071e39f448e1832bef8a137e904612c0e0c215c4b09251e05942a6c2d101a6858bc43e448f379d5a40b007ed316b9448231184f9587c907807842bf3dfc9d45d38229db60bff856a0bef883db41af3c27f56f7af2fbcc13be2a1c8b2ac95c74412fb183ddec43e488f3fb18fd2e35bd887e9f135d8c70df6d18f2b9477f04d1e8877f04b1ec73bf8244fc43bf823cfc43bf822aff36a88c32e7fd3b6cbcf401df375385dfe58f85fbc3c52826d6253174008630ade867902195f19a5f2b3100ff05e31c55a4c31d42132e3d470e1131c115cee09724a699deddb850fef944f9800e36a173e598247ce208b3aa804b84640406547075968620316a021450b34c078c2c40f2e880b12f0f42efff3f84229e5b6c3dc7880938719e39d74e38119766428b93e0ff0da448e5bc85f0dd3878f5e11507c11ec0d41cc83657093897952add373944f1503a461b2aac11f0bf26c9de469c89021cb78a594124aedda64329c9892975954d2bb73bc922528ffbaf2d962592ceceb644f2bde7593a77de489ce3c7205aeb61e1fb8ca4a1ef7b48b3ce7e428b9f2469aece4e8943cb8ea2c73966f241695f4b8f113a843320fd4219140558b1ed19d43827b6751f56f98ecf24534cce8f24088340ce8929e643ff86349795d1036cc7c361a3de4c98c2c0ecef6eb38a26b70c53cf20a8550d5ca58d4b2365b844910d0e98b60b77e5954fd769b556783d81a912d0242d5ed41ae6fb68649f71acca2eadfd920d8b56bb6066451d5a284e85b27229e9e3e1ebbcdca66e531a9cfa6a77381b2378c76594f9f9c07ef6a49932bb383ace368bf8eddc86b9efce6c9530bbb62e26579704571aed3e3605f8174609e7691c7ae2957def2e425112a101bc33c57c27e8c54f8b2897474830ce6f8f887a7aa600fecc60bfeaba75f54fa29ba2d8a7e04bc6282b21ea4bf42d117a116655921f8fd20fc3e7d1126d40681972fc2ef1761326d1069af2ed2844f75e33ca3aaa0194298421366b841155e746115b188f0f1917f3af2f05c3e840c1f6f3c1fa420c36b299566de392dffc414f4580a09ea176f8cc497c89f848f3731f52f62cac278c33ef0ee1c3ea1028cfb451d19af9d252c85c3b0e15e1853aa1f473080530c2fee0bc13dd41104fcb4a84b8ba914d4c71be8c2dfa9414cee1777762ebc4f7c41edd0f1f2594ac3f08a69dfec861a7762ca0a4e438d4d76f88ccb8f3af1e5632a31871f9144282e9fcf882ffcf19432f8d18a080357f166ad4d9892ff224bbe70fbc1ef0b37c9bf714a7c3993115f7ef9aa1de8c26ffb5dd17e1777e1932a6eee177398a912628e163ee0f962cebd789b228b97c5b6a8fdefba50664a0a8475eb13484c59b62d7bddee1aa1d0f9208593dfef302878ec70c507d23028685142cc5f27821eb345b053ecd4a2ac22d7e76a1eae1a6b17fef48ed418e8c2f6bbaeedc2274cba70590bf5bab0e7066590325211a9ccce0729be8829782bfbe0a91ff370173772146e64312e47b911f690378b531b3124bec4789af8723d1eb28f7803aa48608d6172043952c8c164fb30451953f251d2ee10af3c8c320629379ea9c49733220c976087b9882fb0070c9f1bb9e7e39fcb3c601cb91f4fb938d90e13d82385e77e5cc68df0e67e1cc68d97cd19d520fb803e4c1113b38e1c39ec3d1764bf0fa1f1e8a9a747842a6db57208914a373503c77ebc9086cc4e3e38c5e32b79aa10d8035e6180665c3e8be0f207b770d943f5300f0fad0dfde4e27e70cae5b3155c5c782f3b2142ed2154f898f3134f315523a6fa9c86da82800aa3f8a08c0b24be7c2934726e3f072e6e1f876e0885db3ff56b4418b8ea5b1e5cad6c80900b08a55cdf29c77150e9005df81709baf02dafc214bc608a6d9c0041815bef37e4ca7b44cdd576b8eeb447d45c29ad16536c2fd9f92005141f19650a7c729c9b991f53917e4e2154b24ddd501bf2e8100fe4aa6ed642b52e8c22860bae162abdb0e7063d523298e3b372e445c27424acc7b787d3e79c7a7373b33e3d515f702955c1a5b4043b9736b9da454646be5b5aaac4033151a63d99769139b5c964d21e134fd27458e5e6d29fde643f9575ca39e55c3f700aa4327fa0949e70c209a70cf7d59c735ebd3d264efa2c953a9d4c47622a8b6abdde64599f37d60261d5ca1c939546a4118945155d6e3271a75de8e5939a5d7ece39b7f0d19c4d467bdcc92416b514395e3aa9f1596b9cd3937326e74cce993948a02c10f66a7aad375994f5edf431ee344cc5742e8d37514afcb9f4dcd3301dfac987f25c3aa55de8a78d374ce532cf897938ee234f86b33838a7f7714223d84b4c25cbca804098454dd083f441a7d315b2ada45de82f9b1593f938a5a761da62ff4e1da7601676f7d85a2ffa4cf3aeabe10a6e3f64362079eafc813de215864ba7199752115cfacd2d5c7a5d06cba2ce9b6e7dfe4c4f569937f69b536a3d9dfe544a25abf0984d2e7d562a954aa5f9539a3fa5f9337f1a06aea65099556e8ce45caa44cafde6942a2d9a17157e71e146846ab216ec715d88451d7d6ea6476f8ee1890175d0c31fa8e38aca77527b4302353f045c6527228b3456f208eb5d77cba2e67b7ee405aa1fd94f4ee939f13499533c2643c055dfe4c9b4c5c109fd3a0e77105ccd9fbe2ed1bf7a45f30735ad4c6651f32d2d13d23309b3a995e0f27c4f8b12e2bae66b42bf3e6d10d0fb6d6b38de8ef881efe842f0aacfdb8f79de86e0557fe4512b628a7ed21d1f09c5f53e11a0cb952f50a3c3156a6485802b292b76fa4c9f4bafa33d21c10a6450a3cbdbace00d126f80330624f0dcac50238b12a22f1fa42f6d0d93d16be4fb231b243b76ccd6d476193dbbcd2a26764e1b6998ecf4d21b1daeda832b93675dcb8b37377ab01f047bdb1a262baf91c76ccea55fb141b067b6a68fd93612776e6e6e6e56d1bb6e6e6e7b4c60cf14585cb8fd400981fd3a11d82f5b844990fef522f2d889b80eb245fa575fcbd36e6e46e22bab4c23f3e6d2cb1c69442a914de492860119913c57ee94bc4f1ab9f4248fefc81379b24ac3c0d58d913b732eddae650f1d07744e9ea16da08c0bcd1b5985ffc9a6bfae5a4fa73f9552a978dc8f79dcaf8d5c6aa461e02a4789cea54b2e8594f2d4eaf1e59e86e16998eb14747afe6918edf44ca561b8539672375a3d784397c1c1d99e1d471b02ae70b05f1127a6389d4b1f5a72e9b59c4bbf29b9f4a09b4b9f512397fea252e5d2f9d32e14ae380fae360fae340faeb2cb832b49841a8dc414bd45ffcd9f4b2f8750e3f9489fbe368c3cbd9573d944b9c349860a32cf675b03b50e45041799cfa2b783d6c14caec0c8e58d07099f3071e4b6fd68e245f510db7e367ca780d1834f98c0b94a449b8eece4a45da453adb1e56c4e6c473627b69c2de76e3c5b0e1759d54ca019d18e38c98cc81af125624fc0bec0a45c91c1f842d262882d4aa945699c93c62394ce3965472364b061e67905db7e3452c6681373accbb2628cf1563462c59c6824e6ac7a2e8174c5170ec83bd397ffea95f2976561bbf00f6a5b7accf605d90abe7aaba85fada405dcf8cbac82cca6c2275c9b28aeb002c9114eb0852cb0202581c6165e6881085444210a27102046275f5c93136e54a08330b840e2849693822aaee82318e04211aee80114349ca060259bb002244758810b72a46c388d2e8ce2832e7c10e4073946f05941922e74c10bce2445121b24410c32b270852eaec86c2af4b9456eb4387205157eb2f002b923450008733add7019a66005a050c1154fa060210b45584526d86061832c38e10b5da081172558c5256041638c94524a278d536e2bb9143e4e91dc6238c88930b290e344aa395236b45cf864091aa0804f49b0002da834c106a9e7783d09c470c102a290c10696aa74e1932ec670ad0ba32ca1a40b5f763f55768208a4010315c8e00a28a680a2843454910627160e09b000862974a8c082196ec085144cfe99b3051848f0c51546708e9084341c210d5cb00a87eec2274ba0c09a740c02fc39523664e7c3cc9e4f3084165e70e1052a51b44004241461054090a047e690b00414574a99c3e5c2274eaadcd0854f9c6ce17e5729c1362c6515ac822e10e631d0c765950a071e3944a1832390610a42f079411964887286932258486cb0a001143ef8421749ca40831e34a06109d5050433948891c6144fe8411a5556f20853a8503903293534487982062a742de0923c39630ad50d7fa72bcf929f88a00a5815dc84ade0265a7cd78df07ac08b53a8353fb318df9ee41d1cb71f9177f05b3694ec4908e1b380f082309947a4d619987998cdfec15b1684f6baa4dc8f466218c8c6bad895b8f6b3b9aec30d5ad6dbbb0eafbee5517a630e8472467bc92c788c31c618e34624638c016ba8210f8381d8419fe15f97c73c10c6f2933569fdbb726c3d5c778aec6f98ccd67689d785bad1b2ae3cdfd872e30728cba5209810f69821902bb2a64d5d2496a21224d8037bbcc4d85261717e3103548d5963a2e644d540a92cd9d2d278569165349548065f39e54a39225d8ec6b8fc4cc4f2968ffe741e0d03b2a293d4349148644f1d2f12bdfeb2a25f0f6c3d40448e985f56c030d4b215d1855f98617061ac02eae81da8a37de2655d6e97f29b45c5f36818d1fba98699efcbc03ab23b2291c8e2e0804e8fd37dc215eff4afabd69c9d68652e8b8a96a5bfce24be0664bd48e8d7e9a30d326b3a5b04bbc584bbe615c10e7ae615611204b3a878ebda412f12b2a868354f3be6a1a24509813d3b119a45c5d7c31508152d8a08eda11381bdda9a2261a0e1c80f42b6089320d6315b336fbd86fe7acc2cc872de0638a773727274ae07af8601bdb3774bedf4b3a96020eb9ab467a75d3af59823672807f4b03e3b5c7daa8b08ec992d128f1d84bd48ff3a56050b01bb3cc901b98e9d85701cb00e4b0122532b67e95544bb18d12ef296a78347c48b1ee7b44bc35c3a15e449a8d31024a5252d69492b932c058354b64f0fb60b05027f3e58455e76a1b2fc20942b2faf438df802717040bf8e931d3ba596649d0cbb9ac858203a53cafbc8cd084a08ebf445dc50270aaa208f496f9d087acb166112846fbd483c3d11d62f5b84a71582572b49846a849098ea77e42ad725a594dca5c42ea5bc78e887bc78cc8307f5b5421ee71d0359d92d790de162401a69a4b1ba429da16cd51b67e02f58a1cbf51dac7f36b723dfec6379ab2d8a9216aea415eaa9761b611fa8498612614e4d84b9f8982783f0f1446874e2cb0e220cb740a706e732ac7299992f23f47c88a24a43897c1e7e8a48b4957dd090c11c5a0f9945050969185ec51ea8cd9d5804b115d7bd28efcc9e0b6ffce18938422e1f2fb5123bbd4e25bda294104225a20d8df1073eb73399850a31108340d8197446e003c278874b62a1c26f6c5d4a3946fd58678957afd9903b1fa4e06209eb8821b190914f2a77ed55b01030d65887e355e935753bb39fea3677dd9225814e3a7d5dcd535907f688b79b8570fb09e340340a1d94056849c398883095db7ca353a9d5399dbcd1573cd137afc6b44bffba1aae56ba314edb96b44b9f48152a5394e410e19b5672fb26218c005921d9e3c6fc04d4d1ac03753484f4207910e8120999edd4a230ed6f1826470c01579bc5c1e93e3a4ebde8d2a2302bc35d7bc83291ef934ad72c8a33fba56e8fae3dc8e8da996d10d143b6a65ef49aeea3dbac3ed5edd31571147b562a9dd3ce9d88d04b59883d143f74d2370fc5162584f6ed448448d7ec46da005f109086d9de7d9986e1dea055771ced757411c6f5435a7feb579edbef7a6e8f5a0457b5fa4032fc34d1d33195283c54643e3c69387112448635e8acc35084c13bb86127bc8479b887bfe09ddb97208c6fe2cb775d49b8a51e6eb8f19f905fecc240b55d4056e64d0bf2f8987745795dcbfb214fbd8f664e2f8979a58c9c0d16597832986342554c75f388a9be2aa6fac8ed170104880ee3f6a7d241854376430512530d444cf561b0783b4a1896dc86e172fa090e9adc3e1ce3f694dbf3668994e6729ee0a0e77ef08cdbab0f4ab91d3926bef4932550e8edebe0c31465f470c30522baf4636294892f32daf92cf02506568e4062aa2f49502310f16236c56f0d5cec0d618a6dca7e442e6600e8d2efad877a316b434cb50aeae83718ea97bafdc122dc0602844c8cd7a449cc6b434cf526bb464cf5a99238475a4bc870c0a250f9d2aa622a0af5f7ab1736192abc56a8fc4f352fec19031a62e56624dae515aa7c767ea679a4989a7d2184a05b569679950455939603f3669ab410be8c606afeab712deb2cf0a5c6d4bcf5da27d8e37a8d2ca3092f0fb503fdf578af731e0af478ee9887025994107dec44c473d17bc8ea8869cbcb2ebdec19769087ba6ea1e441972490877928b9ba3c69857ab2f5528cca534a19b16ffdc4d738e0b6cec16806ba3615cdb8aa79d7556b831e136fa8b374eef39dd34a1aa6f6941e89bad0d73cddd33e2de5ca15db392652b54ef4cabceb9dd330d755ebe9f46b524a19c2b6ac7aada47f3aa7a748f1e9e1e99cca5956c2399afca2869e492cb846a2e4ca9b2b5b055087ec1ca84386be025df1f2a93aed07a9744ecd6917e931e13c1990c5c1a1d78e93fdba200fae3aa773b89095c12c2a746cb3a810f620da315bc324f41a6ab5876c90ebdb375b93d9b78bfc553b07f688fd44e3a0abb8f27236a75fd03cdd73a587c4c4e9c71daf2f7ba72337377a4ce0931168e15a97bdd31237376e3f34cdd63099d306d17ed99a78ada5344fefb44e2fe99cce913cacc465132f51920cee60b9f0890a72ae0c7670e113157071a970e1931584e11a115fe013245c5cf921f1a56b69fdbb9c0057a9769132b05daed3a3266a5a5410f8f8a578b48b944ba897756a7d081884de3a11bcb2ce2bcbd6301902ae7060bb00b145b48b3c0f252ca1c2d54685c9138640849c9b9b55db7eb4a8695132cdab785e412a31f611e214e0a317e08d1f6e9c862f845464940a595808597777772cfc412d8cd063010778a9e1c243b697ff092000174ed9d1b3696e26329e8b64077965a00e3e12f2b204a37eac845f006122b312d803bea58acbfc8465a8836514aa0f4b418718756066d6a213672f5e185f6e2f10537cc883fcb30bc4971b37a25de00f123550a7a9b7e57cbe077be038dfb20f1be71bd1301009969bfed97079ca48f4cf00ddbf03e080809704f4c841010b804fa016100adc021ae1f2610f794f42a11a813d6a9ccf25803d506ff98d23313a1234d7159da622b957bdfc02ee1fc3e032cf20fbc734b8cc4f5cffd8069799a398ff588acbbce41fe3e0f23fcec116c490be370eb71a373c24588ee3d043c2f4e3389da6de95df4382e6baa5d3d44bfa7790f79cfa20cfe9abaa7bf0feffff1b3794fcb8610f50eb853b70fb7104a771713cbba1deb871e3c68d5f3175e3c6e1768be3868d1aa8167ae1594ef02ba00b6f2a91b80b3f127535c4992efca6652d171e64e3c25f372ea4deb4175e76002e7c14009fb5316430c7d71e0e134b24a45d28a5169594ce53bb50da428cd84e0d13b27ed86697c72b4ae98a99396eda95434cd1731ee7b40bfc618642f479a6a653caf29fa8635d662c969e2c4ba53da13ced2ba0f34f5bdc16b7c5280fae563cb8ca28a5abcce431efd0d31de6a13b94de44a7e5256c5947e7ea2a473c464cb50b3383945c7a39a74549211ee01c2370882fa58bcea3614e17c5ebaa156218a66d584b473b2ae539eddc8368e74e7ae8362b8fc9e827afb60b7dc9d3628a524a29a56fb19452e9952e7bf208134268bf4ec48692f750d2a284b87e3a11d8597efd743ae6b13c8b0c63732879d4117cb1955fa6b3603f79a879b8ba4a6cc58a0953c24d4a96779877a4875df6ea1126ae0f015797ad611204f4eb35d8b3cbd6a064b80f01579cad6142b241b6875e935d0bd91ad0b7c744e98d2e7bd71126342df6668b44787942319c453ffae04ff5e0651eca522e10638c3132b311423887f812bb73949036d48484eb36f44126b5354ca00d427fd91aec35d76d986087b093613023147f648a00f9f8402a555419c8c2760959ae6e7c5d2d633d2666508b4a6845727ae8f5fc3345274a29eab8b9625ab2f373add86ab2259b65246f3bc8d3ce3f12ae780a955b25de44235c47d0c8e3293a3b3bb1c9921d253d3f3b3a3b3a3ba39f906525d572ce4fce955f60d1b1185087e41fa843721d1faa0f855e2d8abb8c11455ce79f7691b1a1cfcf77cb63d2793296c5c1c9be1d07748daff553eb4ffda93f9c95698be2deb75959146751426c1bf79a2c885603ba769b1513eed9e6d16b9e752cfee7270c579a716514c195d616aedc4e1f643bed6fef6c10ed96add950321dbfc17bbe4d782e6b3bcc3b4db2832eaf6a98eb526e3238d629f6ec38d74141622aea54f92942e64776ceb49954322925d4c18fd2859dabc1396d940cc587635cf9ec86ca23a6728829181353f03c620ac21b51043c05201917f200125fe081803e1821034299ba36c4144cc514840c9f23befc42e8020fa1166a76e1132ac870bf7a614f1450ee07a5c0d845134923ec9132d62d688c99414a9084cba24f709ed01863738c68d802c32e8c820627b404994de5ae2ac61fdc782d15fbf050e110270f627cc208568c810656b081194b56110c3746314e70635b51ec002b820e4fe450618a30b64082921e88e10b3f5c88d20d797060410d80708525f820096054f1042ffc40214a0f948018a0030ccce002122d2c094211c8d004327eae884249b6001c6260862ea654f1f383288430832efcd8800553012d0801192e404117b27002179270e1070551940094430c82b0c28c2dfc2008512cb1c516c410c50d56830e3a560b2d3481053a3080e289295e947103171c68f0031867a882c7480da0ec68a10a5698916a819120c0e0868a9225be40250b55a841182e00e0508322a68cc1044390e203243c58a8c20d1546568727e014a62046197a5a90444a14c6a04215b8103d8b17f8c00a4ba0a08a1648810457a0820e145b583874c8c207345802165e6881185c20c315c47082ddc041473ab1041078a43083183db0c21328726099e66c41901244610a5ab8c00a2ff082183b800206b5a4e2a1c2e18926a49451c60fc490460b8efc4ce1047496e16a8a591de89c350001199a100312b6b862095954818cd9609834c8801423ecd0e08c269c80438525f4dca087cac0b25cd0852924e10a1d161cc10b2b6b0a4708a30737dd853d4f4ca1ba0460828e008a173e2290821959505282306e80031e2a1c54996a8a000c1628994d20600750b010e30a60c8828f14d278411a3408aa04a814ec36d5a19865a86604000000009314000030140c080583b15848ac0cba0f14800e97b250645219864912a390418810620821040000c00088cc888800202ce7271ac9ff79767194d678f0fc51e9c40127bc20aab6720ed35364410f4e9a30fe8dfe2561dd740887cfdaad1b079a188c125268a12e91dd10ecd0cc38d4daa031282f483a912c9fdf4775c04fcf75ab89fda85d8254f51b5d5ef92573a2ea8fb6fd3c630a4b415bdd4c3daa43ba57f3dc15ca1123f38fc7e40069493c16094a46329b8b4ea376539291eae1d862a6779cb608cc2595daf907332deb34773ba8cd630abfbe4b2aff2cfc6c14634f012051941a051b9390bf81b4a0910894749a0fccbf420f488d36bd224daead800b355bdbb0c447c69b29cfa5307853803f429a0569ba9d1dd5509089aea66694192d58d28c5e9b79c8392e583bf080a9b753c28675872e66ca7e65342b1b878730fcf4414c8a86dfde97cfe1a69a9c415b432c21eb191a6d37c067aa2f17833313d3471ca8c05585cda5a52865e2b562279095c477cee5d5f389a938a0504751e855a41f12930e72ff0485d8545e7a19b4c6676701683ed8f7c383632f9daf1cb3fd22fdf2e493ec00b229a5941170011b67c3d66eddc1bd8f9ed4b56268eb34d746deebc353a05030495b53735062be4807d730889ac248c2caf97bb34e1c53b05e64efaad511df20095a4589132b823c1815d3d4fec1ce70efc9b13582544b648e418fe97f3dc5f2234bee3ad95deffc4f3c5b0e96ddaeae5f45faaf08ec2119d963a122ef75a86d46588e876db9e7027b22e4f7a33812efa3cd5a3afc5467c0919defc7feb0f50ca80cc06171265a91efc8ea1f70d57bbe7e356dd5233feab5ec24c60be6ea5f2a028e962a381b501edaacc5970372f94e8d8f9d3a1564fd36135dd34dc1b2531bc620f758f52c4d389a3221efca61389607019395bb1a30eb7063c720e3b432ee419446160dce30c9cd843213407f132d41d17e828b413b22081c9e83ee9d2cec6f1628829ba969049b99743fb96160d545acd2bc7e16ba876793853b50bde031bbd9a95cac2cc763cb77b7dc2ff20b97200854ea616e82c49dcb68ddde7fd4f9e5d08391e15c10ce0548a0e17616a9f948da310e0c757f1a059ce00c63d8f2c0e7958f91bcca7aa015c805d07347a4ef06244f63923b07af0f450bf23a7a20a029a6d17fd56bbbcf6e61c5b6e8975a5c338fb3bb23515725332c8ce962dc3fb59252d937509a37605b2f58e124a11531881800476e1f5b9c5a918c3e4aff045496d5a5863f86fb2800b2077587df2513e06d7794b7c925b13d9e47a9c0d226d226b7b4e922c67094d8e7d33d19618202482a102f18b53eb0d5690809c4e1a068eef12a95c99d524a00a80d00f8d2fdd3d1e90c0d7fb8999a640b1a2d294a3f37d73a5ba08dd1d7c27a1df034e4bce7da42dc8328d1a8209b9452c7cc8152c68cc89f25c442d844f2d7b98b860582f1ce2e7503fe5702bcb946b7e63f3b995aed79954f9118eea4cef1d4171cf05cfa8f1c7b5132af8e9a0a32eb46914da47b06535f9ebcd880656a54d2bf1c496cd7d598f4b9084c128ea9d0c6fa68b44deb2d64c69bfeb43af52f190552a2723f96700e340226637eea28cc22cb5328ae589b9042e6da81c9843d0273971b13106781cc234c4ccec58541f21e6bdf2243449ffe4c98539a75ea1a3282ea8bd86fc63928e80ab2d8242773dac1fbb030c4378bc10921c409e11fd410581aadea70f06b2c2683b40d79a52332892d5d8df5deb2d5ff8e25ed29bc8f8649324089f584cca0228bfafb2378800443c3670256ff114cc9a94ce0ca29e5dd122945866403eaea7bd47c0e004f9830cac697b90ed102ccc80d6073100c88633f82fdc024d02daa6cb71aa5c1db72a8af42292dd8d56c94619c0210966bb913f232b1526d34e1c3cda568866331cc29cab34db49d4f3cd1bb389efbda764e35bfd59c9d4f1acf4d08b5db798470b4f1c93875efe62ee55db16dbf272fd23cc70d86f54b848a66abdf1631021ac0209a4a235c13208106ee5eb694c64c0c4ded07efa0c65a333ed9e7836277aa97575454254ae31364c04c287106c7075474284843d6cb25a2d86080b623d3bd8f665438a1515faeb1b5ed44c4be94c05ee7131905d3309a0d0dd4504f085e80686c0147a372f92219e00acd9489df3ec2e7ade02d4b07fe12870f599497e4025e877ab31d683abe44dc023d94ea3da8db72b293c46a278720a11610d36ae284a5a902145e4b10565f5bcfd4803eec33dae299a6b2f29c8b648ff5aa291aca826321a71731de9e273ca2c0e1087f81f913c0bdd9418d66c87b92744c668db9fe0dad574d06d409ba7c67abd0d58d3a79654b4ddd4a97f385faaf7ee95fd205a27c62eaee5da5960a8e923b3d4cda6cd731539eaa21043037569f61c160eb8c382cdc9692f2ca43dc2b5530b11d2a4a22c5d618ad6a0e2329706ecc2c998ac79375cb3230169cb808ca293b845889dfb3351b9499e55eb15ebbf1c0d61b5f5189862b21d884cc67cf2c4740dddd367c95f60b23c4018aaa3172a133e7f42d06442d992a550b4908391afd5c35ad97f015a4308abbfedc22fb523bd1cfb8a7cfcd236c5e67bdf95d8c62e8ba3051b40ce7804f8194ca0707d57bce108919cf6be81d90cf6b614d52655e0199dc7763b78a8d93bd42d6f8383e39b9bf3818ed9e6c51b9fcaf304e02e4519ceb226dceb3ec897dde7383671bc1b3eb936ce335c94fefe61ca6ab6e7d3334cdea219eef98694a7ab11f31e15d02cf98e822121e882a5d6f8359340a7af865ac0e95271492783e730cd2b0044bc6c19b1091555f0b16dfe986a27ea1d52c594ba06fdb5a73f8707b319b375e56891811862343ece5e5bc4d151532ff20f0dfda97804bd7f22909d82167d1687f964301d277fe4327d1944db481e37d61a205a5638548493cbf3af4fc36de2910ecd45481b3e6aef40451a8e131e55839ae53c949c3289b0ab936729b6c1d441a556cc8f43ef82d160eb1f17119478d9fdbeadd19950abc23b62d958af30516fbd549efec85fc7d65903defa8ccdf2034bb8e6994c4acc0bd94bc1c4e120654dac7584e77b40bf8380aa10d7206345a3e80b2f0b9ae95d5d7f477150f1003595a722063d9dbc7a1e875aa06bc6cf60f7de1565702687f76cf7877632f7a27e256807af2d3b3c7e35b21bcd42af02035b7f80a5a53996a68d107685110745754c28c05aebe2940b7c0e5f9d4ae0c82f15a3326b8a88a9c5b206eb6c0719ca1eee1f97e4957fc161ea0e4e112d476be1b4e7245be1b757d30507792bc61f1c40845a20ff4624f14a880a960755a39d27d074b8fda6e3393c12a204929ce9c46041ccd876ba46e758c2d6c3ee417b687a2d34ade71447b434a4f26d3d258bf48a18b4b3840895dfcf290b184ee0218f7ab159bf9793006e1bc8c2653b8a35eaaa7d872de525b9b8c3d2a82c3573e5967f9b163425f38a07af8a73a972348881fa407cafe62f00dbc185f2898112375dd835d23d4e206c5f6be4d3b8c8e033e623f19a6b55a39e13f9cd19c43e535c44f61467c512c6d0a2a42ac4f84738eb055c2e05abc2b8c90620d9044755935609e982249bb5e02e0fd0c439967227c373e9936139f7e8c6db97f83601aa510df1a6e4ee0bb057d169894c5bc4270b1c2f1145c10e9de5bc5105ca4ba2cbc80011b2cd9ea048efdd37af50b64db471602e6251264118be6d33a52c3d034382441cb1790726cf1858171aed432c894f6f689720a31763bdedda30378e444a48c43a7e6686344ddc8bccfae06fad2c54167ade47701c7e7579acbfd9580923ec6217057b0f24adecb2e765f7d555323f06b873e8d04efb94984cf6c439b7d7fe107ddc3f345b676b41848944f6bec4a835571ba955e5dc05e6b9d264f141b9effcd7b80af561167a100c25de727d1d9cb1eba051f60d809e3d72600e474ec5a607ba172639f03e0d4ffe658a6e31a20c64b4394b423f16224c5ff3e2e61051d0aa2a66e8f0375658ae48c2ba0ad364f2ded4bc7f939c09c235915e4afccc2ca7b4c4624345f32862fcb2a40b103f90614b5352d3e87b53fdaf42e05b60f7a7505f1f0a73b61e1a791bd7a581170497fd9e357331cd73d6a953f08af16e710fe74e3c68ca02729e383e60b50f4a9d2ef1499fd96d772a0d0873138ca826af83413b4b8fa8cdc5d838011c16f432f52b5ea15cfab2b3f9ab4ff34f36a23b8cb1b9c246d42b591f19b5fdf1ed85a5eb5bb077eb3e9370b2e922f8eeb51874b16a41eb0499a193449a72439a6de3ef91bccce02991cfcf3e348c1a9127aa18dd31a01c1d5b2f2401ed96490ce16e48fee82ceb83bccb08c439c20f7cb5a1c2cc751942950fe07ce0952d49663bad20c8a9f7573b2f69d2b1280e53de8f4707d8af5b058821d5c5c884374406ed86fbd32815e139deac30141482010a041221bbaaeb6c4be82b93b9c8cdcad7c06b03872df1daaaacd6bce2ccc18af8604eafb96d5e9cc9128e8efc8bf25d5af61a27eb32f4544ecd1a51d8fa49cbb8391ecea4941806e146c4c9c93003ec112e4c50f1745fe4730caaab45eb9a0f193c724204d249f394b773701149da54b25bc75d48df2d736aced912eb0e760859b28c0b652439edb906d3364b442ee73ad92630823a2865b455c67555e10027199553dbaabade2f7a2ee23e028151fa1e110e5c41a7a3ac08720ec64f07913f0a1f4c8bdbb505b265ab8009e38e110b17a5eaee62469f8b87afbfc7e6ae41a3d79772e2388fc839860fd2b4858bc082c23182f73ed12d8beaf9b3e33781a2aac614ffe7c289004d89607975e8bc5a9c42ce34430322e9bb5aeb801fcfbe015d724f4f6056def100bbf0559c49840fb22d1faa88f88d3eb45b8afa4fb6caab3fad3587fffff211315b752bdc6aa044f4d902296aad708128c895cef535bfc91d26201c31c67b215d91af9080aa4247b4216be03daf617e75032959d6ffdd320709ae15043de9c35aee800dac14fa7e54e83ea91130c68534481fe47f6f556d1933bb05663c8a856ce6b2328f6e631c4bd6bca2dccfb6eb9a4fe07fd37ccdda8c318c625ad3f1d5f3177f0100ffe64ae13a58d6859ad20cdce96a0110957443fd0d6eb593b2e8e09aae9269cc69cdca271ba5029891865a30681e8095a8894cedb2a121f4a7cba8a209f7317b7639d4457d0c9001460ae3c01722a343a38bf0ae8e612cf86ebb77302d494d939f82493a7cf59a600ed088891b3cbaa23c005f20e18800975367838422c01844c29e3bbf8377b7db18a584258511f42663891365a350786f8ac7c7d6380ab2e22868ed9d220f607be1f0330abe30ed0b852555bf09e406c95df8c93f6b4af6fac84f7cbf1614f0766f4a7ff5b34d6576822aa05f4a33bc0f17459fc49fbc97a894de2a83a3d0bf1abc3b44e8b30b8efa8c6eea7d60bc3e7c634e0611f899003662e7c5e75c1ad9149c802fe888a65e83786d1dcd0d9880b25524fcc7f531689002991e6c4c0145d56cc5d7370ba9928b44bc6427fbf19c6aa5e767b0fdbd4180b616fea1f6766c0e419b6f77d724e0ae4504114980138a302c304c30f8c7ccd02a92122049885e44e0269eb49b985489bbe846106512c7912de5e20ed10cc1272044d1d111be6a3574e702afb583b699384fc80ce6c7c3ba3e0d9186bb05fb97e4748157d3f976e80aad500720b377d8803517a1badd82944aa3bd3b3b24bb798f645483a2065d8346923fd0661d0777709c134cd67c412d7bb46cbf0e8f1a2fbf75dd3025f61b0b3fc4b7004bfc2ba86364b0b50f353bf77c90cb650162e74163309a5ea20887e768043e86a87764c0114f8388a942222bcde0f669782924b8bdfb7ef291724a1a9a16c28cedf14517f0861bb0d3f148ff9dacc69aa0720e2eaf3122031499cf519ca020f19466a01b3dac0c111fd8dd15deef07484f396317e5a5c15551a8c4a71e223dece089e8ff4297d3b507bf831a790d4bcaa0c2d78062d683724eaa68238c6105cbf0dad74295a45644c58110cc7a9489135a315a41f8b385d6df47fdfa759c460400e42cc2f61914087f123b9c9dec8eb3ff38353d65cf4d434640287dfd7dfa705b9b9f18771977da7bdc498cb52959c183d5cc98311247e3a1437ac5870dd99d1fb41c6001a2c68104d2ddc71c1ae7b33f37770a5aa5d2d619dadc736c05c401f70564de4ad6e7ee74736e958de2a3ee1dbb0e565e5aa466f1584e95c02b96f7012b8f79185804d463f143563cfb66dd215e1c6eabe5af05f4f932fde730b089b060a927915f2d5f3d5b1fdda60e98595f62950abe5dcf13880d577ea3d6af2c10a9c3b9fbf8504f24306f9a436e88754846b0a62f8bc5ac32e1fa91ff26f44de5c25a5c0419615cf7dc3407b9cac624c49d761ec019bcd6a93b6ff8cd5883780882815ec7e0ea2982ac5888e4395847d8430cc5fc3bae3b543674b30d4761998b0f59086d1b0f522a718dd6befc65447a633160ff77b9b4c95820d8c8baf4e74c60b25394561971974405de033d8a296534abd4963a862d03f73bd627ee20713314a8b8e2aaf4d7886288c45e57d7189a8901b6eefc6fdf539c23fc9994f510c5e073ebdda5e27fdb7eb098616b59b60a2f69f6e4cbba858d4dc919d570c381e95dafe667647043e11030d775595c60f6f036d8f1be7ee0636d4258c9af34001c090af261efcf7a12f49af1961e071c9cffbe6a3becbac984e7c25e00a791355aa1cf255848b01e4f5bb7cc564b6a240e2aeea0d9d81e4320670d225d66ca4fad932c0b0e5f6b9ecf5a57470b3e34d09855875bd6587d2f8dcda79745b2fc91363cc4361724d63933d9a4d02b20c1630a5add394d1c68695cd6f63e92857ebba6be8be1f6fff4f1a52fa87d140108054824600c841957cdcf3fd76cbd3d3bdd9654d9b935bcee98a3e6e6dd8dcb37ae3f67a86528adffcd7b9662682e60420c4f168d9636cacf6e605f4b6b2444f62437b13d23efaa655dfd12c998fe3cc27635ea18667aaefc877539dc7b0d076b5b64437407ca5e3d29639eb1b9b6c04ff30d68d6f6a9faa07b3c2cac4e3e00c8b3e72ce4f684f108676302e27e3dea6db4319ebc168351ec9fcdeba0c3bce8a39cee56cde6df40e8f1348850d2d00ae6852d68716cb3c74a395e1ce18463bd2b683eccb986c965a21490b370bd07e92934b5bd279c75815a793af65dc0e593f6be104233eb33f04a16d7b007551fa8d750987816b26b22de014b192107f4cbf31d155eba0c3dc5d90ce6292436a915195fdf5bdb8c7f6674e350f1ddc5b5770237eefba196cad025e65bc072ef5bf8a325bb2373997d3e6e70cddd7ded48f90b0723c22418227838afbcd0e3d70361ba803c5e601b3fe951118efafd3a2990e2d7706ee9a8d6b534ab58145038750371a65f4ff549eefa82f0561d8605bf4e85cf03bbb85218e16eba04bbf6bf912a7272101c7dc91070d197a3d7d240fdae2db944b2df81c06413ff5f897444b7dadaa3d48421e2a72ababec8efbe2c885ae6d1ddc2ca2e4a88859d66d4e7113d7d019c934ac49d30fac5fce4221d3dd553f05fc7458c95ef6d15d8a914d812393306f2f095ede23ce0f6af3b308542d6a8152620718f8f7ba704fa272729e5209953e8b7586b85e4efe735779dd63b03d74c69a4b4663b319c8506e26c7947c3b91e1758868d316bf1f9ff63bbdc5cdd941061726c7ae510212c66ed774667484fdc36672496eea81a5dbea97a1a059a93f154034f77a250c086b6ec726298711f6aa9a395e070716d04718e991853cb1138213935916f84a5ff2211fe2b1e87fca9608557924ea365b9f341ad1beb4d5ae1017bc202eabe802899c28df7f531554d5fa6be51350aef982a1c05adb44161068154fc9a0bd7ca114fc4872561d02e7602a90e5b03e1fa95f08bb8877822e2a8e65e2e9f51aca2116991839b31a387e27bb113581f922a99bef11815567a58c9386e4df7ae84f495e7c73b416a22aea554d7cef0b86d49708e4a255c2bef3a809a1690aaa728cc23149a850ff60386af7b98d04497add09e1654daa22044b111a0a06deac0eec710e87f3133435f5a91916ba6dfdc235a359441143968c315edd0f95c070a81dbb8a54ccc49528fd49e986531aa5ff29d7ffe6444369f29246eb3cd2077bbe1cacfdc10f3511257f73969f8d51b14dfbf91a4a9eee265fc031aaab81e2e72d8420bb4da8fb720f9424046a796a24b8b12736763aa0a63d029d47bf9ae1f0d71957ab3aec0a43478a27fb01eaa6a1dd81031d7a8051afcfa143f64822ab70ba4ccbe0e49085a6dc6d5e0d7318326906abb5d07590873e38c0d56cce2593a6601d0bbd0e39b47de979359bb33e34637148ef77018767f997d1a492796e33e6ca7460c6480199b1103b819bf834e0c73b0a100b598e5956c3e03824a1e10d1bf8954fa1b74aee9b9d8cc31457695295211764262227160d7d3cc75fa748498632c84d6427161d34e33d5f959144e6753329c78122271c4997510bb326b0137f91786a74a053a4484617e426b213be067d3c47493a340016c140742c088dcac8a05ce7c831f067d0414f26dc673b40de5836321b3e0d45873fdb080ac6a8c71cf2ddee671380036c109fd565bceb99664e376860b43fa97f3c329d2439ceff72c24370688cc728f688fb8c92c5d67383db837c7ee2e98b8ae54b6fb8d633f11b4fee64c3be5f51fb15b15c9d28ad27af56a692887f5e769d4a81570a68c6c8317bce57d6e9617eb6e129fbbb440358dd8196190421c84cf17808a7eff95c53afef278a7ef5e15a880c7997190d070e38c8beeb20f4f1fab69b246cd3091d0379c2a04a7441a0722cd77a81b8f9d02cbc0c6d256a488b79018a09c5c1a864e35bfd48179c9e882b1706ae7e444f1d7c9489461a0c8efff071b5ce2aa1c2e637cddf4fc7408d1c89705ab19cb659d0304f88c3e08872a95e994056eaf6236ec5c57eb848f11353ff59b958a0af09bed06af7c3026bcdda7e58e9e6c7e6fd07ddf4ee8d29f3cfbba2bbe30c412349b6a88d7eda937d20a1277c743365df3c7ef29d1a9f206720bbff8959caa58e1a5e1f441bc7932b7ec4c3cd2c8f8f75aff20be819905a8472c556c859d7a2ba066415992c6f4fe933807d861d9cf487d82a7451a3dc3171aa393e89ac09f5f787598f3fcb14c809627859a074983662a1c44a6adb6e728265198994402ef75d0832bd40dac066f4b7f56690981c66f663a6c0cfa5eb3a3a5743471920a36fd3bd417627e5e5729192cb9d3621122e24432f6689fdc2abe3c018245c2806f74744d3812f6e0e9170b1aeec85f19f9cbbfa5a84b78f3b7929308e2497e79247af99a91c52ff978d8705889c42f3102e53a34a79c4fa1ec89fd8fff10e3f4e7b70c226db81d2b6da66d104e7a1ef0e013faf843bd51297afc481629c3a72ed4e5e471a8501af5f9cf98368636b0ab85a2aec8f76e739d6c549b9440cec31073e51e8e070e2bdd5131dbe60db61ce2057e549e9d6dd2f40e9c102098d6a186c0ea3d64cca52db147112ce24277cf5103e68c865ab2ecb87419403bfaff35ed1a88062b3cb14182c0f0102d24ccb0caaf07c405bb4d120da80d0696f34f2018540ab38eb3ded9fc97ae2d055a6c292224e5fa8d3d0daa0550d93e0e0cbfe220bc70277123025a2236c42eda55374f00486b89542d5a59ea7005e033d78ba76a89a9e4e8320c2379aae573946ab163bdbc8a049c81ecc13ad989bc5b9bd996d536d44bd7a8ecf024e1edc395907ec021aecd95f43e8d0ada891e40b2ae85a0cf2488d3ad2c459d04ddfb8edeb15ea1281bc05a36c591c079dccc155e54c401e9c8303ad42ef6981e1e11abe567072a099b3a5a3bbfe6231d77cbf2759ff54578886d4b41d5b7b5dbe94db0d4439cc725cd6c01d4850674dbbbf26db4ad6cfea114fff95a316e95e5789f14313d0e91790954596e97ded1e1ffe26bc6bf587b5c509c210410e0c606c58ec7eee2b8d33e5115c53c9ea8e680b63ab815146212d36b945730e2e3a1b5d3411b9593bf21724db95317022ce422bb83f202c8b8ee25393bc0e81768ac9e425838d356e3447b03e8d197090982df60d848547f6e16e75d687a5e50919a8bdc9b3cbe0b0ffd41cb07cbfff910f8d72a1eccddd3c276dc4948e2cba0d14323a0f8dec6c8990a106507b7cfb5d9a70b23a5f68ff0e2246f25b797a61fcd78a0f60d4eda6410ce6680a6e07b7daacb09b83a5db60cdedb86f28017525589a57799e9cd588c4fa9713d65082a3f34a48674234067b9b2e1e88a8847109a645c406baf8d23582dfbcbfc119703bda78039019d1fa920664854d7e8a0827d2a463bdd320fbb62911c70d99ce094cfa8e408a1b002424fac2cd2e089f5393121e99e8f3dda4d4e1a76f511c68cc522d02a9000b58b8103e9cd6039d35ba75b963be2721d3044503d8dbdb34818777815274c0dd48114ec89f003ea5fde1dfeb1167b344840f198c4852936ad58e341ec437fe9ac3a3ff9a1da04118901598e901157b35f82d604d7977fd4c57c8367eb5962b80d2465ab2602023ec57933691683682788759ad4dd423c28d32fb44f98c89aeecfce4e3d38c7407761e3db4cfa319a32b55a85683b66fced0b585489f56e42310692b6d72e29485577e1dd7576de2436b228f3e38b32a612e4deba243796aac242d1ae9bd386f0791846e8b56379ab5e26b3541bdf3f67c672905bf0eead1d26601a9b1aa227a6948183ac1d988a16299c6423bebbbd43647434fc01a80de9a23a8c3112ca8de6da834478308a9e5eca26300f1685029cec70c23edbb374e369f2df114f6e088365aa5c94b12f6217555a74f94ce94a5c6ff543c5eca05dc5aa3e9f1395a4da069677d4ce998436132146b459c3e2d8ec6492b4ad4c048bb868b0fa14bef627b424ebc436dcb0d8e66b1b0a1272bf2aac1e8080eaaba2f21f27b07dada9c89f81476cd62ed1fb7dd2fa5b30bd4dc124dc57c58eb7530122462e77e710f9f4058ec7737f10448684be813df4dd1b28980535f43d72cc67446454fd0b0bf8c0a9ca2c9c4f790c9945b5635a07efcfcaa41f8eb6f622cc17e69efe0b2c0b62a7cf7af1c5702b9247600b810df4f78b1a7e56b3b99c70b330033e15018e137e65a1f90d859ec36b382ae01624c2fe38f0969a34498503bb5df562f67ae37eeffe98415e12593f6bdcc2cf7a004183f0805aea6163f3d372243170c1204d545440ba41e4788ee295c68bcabb4b5d0ec68e6240f1a7879d4839ddbc60ff2ea4de7144ec167a0bea999bee3eab77c83c790f35dfd3295b01f633cc3e604d9b78c73567f3975e567f9b22d2036f22157b21ff53833b922b917da6e50f42e275f941b593ac235807ca6fca45a754bfe7ad2225648092a5499243d95ac4f0982427ecc3b26849daae479f23bb3d7738e6b91d1541a22455beea88225a9c74620c734423b55f160acc8403c8c77d37e57415901fd84758a0e399f2b3f70a15414b6997d0f959b5763f543400aa7063e963aae710861d9c464232461b50b9e2d003cc0e983a54055c1af239c5e84b3ff2c65e42f05c4c070c36d2cad9e7b45eeb741f395c8c083919942eae3384c4054fd2db122aac4e515143bcb4dfba7d5ba3aa80414229dd68e82f1fddff43999e461a8a05ea8902b06ccba5ed773b6040215f405267390fb48058bd1ad0ad4b36443aaf7c3fb8b732493b6b2f352bc37cbfdc1a335ece77a416446590179ae7899df20b46a175ed6c61696f5659b3d7dfd8608aaeaa6bd141bf490250eb7698ca3196028dc038b9163775e614a46489579fc67ecf3cc4886e3670fbbddc056d13b08ba85dbb6df858f9fa4f3c403e04f94812f53d628be216c3050d898f1ad160ef642e1b6ec86b434a96684fdb201e236a51471468a42ed0c15a8c420a4198c74aaf926b99129b0d37c6857d9f61f638be916bc9336b6d11eea01855e66750d02f19af0fd9d0f3b59b51d4210201e91b863ca875e4796811b8ce788dce2122787aa94394234b6d231f2213f3aed026b6ef81e8c9b12503ef898b5f37def45f3024c71d07409beca10e2e262350d33c3d9bc8f781526783ba1cc6188230428ede762ca8dd80c5b55717a5aaf5aa8705af3a66a9c41c04f5997cb65013e375f94938a63753198f46138efc8584acd625c666b5513b720946810d02a81d3b218648f55432d1fb4d04ccc596c5ae2d12b868a9a36f559264563aa6d07d7e2812c2092a8e78597adf6e52a1e2c1e47fa590ba7887362c70bba18f89dd1654d956b089aff9e28adffe0f004796b499e6389b7a57951b2c121507511e26f4dcef5be0d85c4bd11c243e9bf060acaefab80eaebeee393e1f7dd07b7a980f28da02a079955c036e31205d4b8104f8b52b75c96ab68f3c5e915dcbfd5389877ab75846e4640777486e6fc0ab2c495567d234a5a797eebb0a566e568cc1707c55a63619d15ef0db566fb9c48b2c423778b7e3796931fe1eec432689ce1dd2fb3db6dfbb5bfecb3a2a5715a8f3a42902b4f3b6b75e22820b869e9e197ba2886a5beb0a026efdb280010616633ffe5a19b31f66cac48b2e6c4184585543c3194352d52d2b29a266bcbae57dda541bfafd2fa8c9e6bbbe661b45f82cc55d7d8ecc2188cf8bb4b7442b76ab71b3802a40f03be929e20ee11522c16b4f5b10dac018b906f10a2d7ebab4b69bced318f486fdd924af27355b76069df1df29f95fe6e494a99504b047d901fdcf3df4fc0a2f7090735bd543340cf4aa05365f9cf0f4452f7c8c567438367dfd9b0345288343f8b9893d52166f17ca7a7f4362a5193e94b3037f1a0ee839248e797b5463039ed3ea183bb2510f1419ef81c84ebc1fec0a7099cb0ee7de0569048f71fc48eb06ab4130a4b2dac4a3757c57f6020e08aff45c5b2a5c203cae02a88b031fa5ab6390772a69d7d320eed9945f3d9f45af03f3ac6c1d91a18e4e9dd93d8ecdf63dbe03dbe9ce6e621dd7e266708a1a243621dcbcb591f50d41aca05d2dc8d882062d7a08999d89669a61add17e4ca8d222a957684300a49eed1c6e985105d9e7185b4e8ff7840127fa7c0ea29f2e55fb4e630b0cef55f9ab2710c81b2cf51c8504f2f091f2bc0f442acd9c4f175983afc84797ee7227d1e907a6cb98d9d83bd7013447c51b78b02c0060d50155d4767cf873b601e8e78fc985a0b81d79354c96d26080622a43af62e83e87b1e4b93914c1b68ddb75bf32391c9a6a03596ac7c17f45c7aa33668e8a710ba871fdebe9a467cc96ce94e1583e496b08eb583527671901bcead463021502653001d37dbc335a444322761c98bafe44e0b452ec2f9089a385b3179bb832494fdcde94e59f39cdd27f9e4f0bbc0603633e80638be9b7af385d62808cdca5e5e044a0aa40031cbc535d641fd18902ff476c60247ddf003573ad81ff661a23386d76dcfdd5c451ee9ce4a518ced243bcbf508307cb98d0ff8afd6fcd9805ea25f4071e90c140ae295d9099669477ac894057b553f2cf3e9974c23c9b673ec553d6865dcf30ea11d32873837b892b3a84054590a78920030e472d08baea13fd10b1851d92974608a02de961405b896d491f9c538210895290b5cf2d9c613a622b4b35facf941225dc38630ebb3eab1ab4c91b7bfdd9803fd53ecae0172d1de122a2d12169f0cd101ba28b2b46f9f493c827befe938c20ae90239946dfc6e57385fc8faee0ad1c8e3e2cedc0eb0274b0f8df045867ab7eedc820d171b03c0aea402953f0c47781cf8389feeef3b3207c21581a8fb94560166231f9aec53a73842fdc27dc2ade9e5d9cf55ee4feb2a9decc7fcf7f903b5fe6b13a170ca148bb70c1cc24231036a3029166a1ca36be0a613b81aa87b7c42d866bce86de049c117ea9417b7251198d461a14a1ab5bd5d41f2abd95d3e5dee5cb450ac062ecc135b4554c75de1518f23fe86a44aac8313a142b16202ff0c5550fdafadc80efbfbf8ab75106443c2b59f25adf6115e0b7580a99fd4e379838ac0531d78749fd8c8458665f4751f1c170863df61469634fd5bdc101b771e1800890a8cf8fc3d7f414b81cf3379bfc8e68f6318ddde3614b21d67fa53ca65174d9009c6ecb0a2e7e4c7182902dbf20514ffccef45ea88b4d481945590764b3f6a384355fda2e8506de423efe43c72dabb0f19272d83350e7baaadac850cbd13f46ef15f0d0054cbb34b228f690d41b0dae1bc619b5d52c7ec8496a40e654e0f812edef2db42cf945dd72b118401a10f8f4de9426b8fb79d322f6c31bf4b99fcc278edbbffa6def3cd9f09fb4ac7d9c5f6a394aebc7613dab5946bb9cb1ecf2d5868d00be086d925f980077aedec3426dd1f4b8f52819c166854ccda535d3a7829bd36e7dc0bc6d93d77a92e7f52bf39c5fff1cbeeb723a8aa2caf1f6880312d2d6e3a1555fd5dae3ae95a86080ab25ae8dd640f2d4191aea15782d56f5c3759e4fb9ae84f943cf85898d105ecc9d78d2971f8268e6da19ffa7f5771b86c6692de7eddc353645000c8c768b764e5e22c62b911168c7bbe68a80257e4577930d9373c7e0de901ea402f51514a7e21f6bf0ec8d248fcaca16706ef371a0cc148691a95f9262a55fbe0ad6cfff720d51209b22155af952b617d406e0ded0da8e6c6fad40780f4daa0bd456a00083bb530130ea286c42d99077ff78b5b4b2d9120694bf55ad2caa80f48d080bb8f5407a4b911fc23a1e0cdd25328391d6199a414a944fab40a1fa88578102c06f1d14f09a614c914a780941a8ece193745ff84d64068adab33d90e5e71016b076097c1eaaf12ac050d2030e9ca1c07dde7b302c0ec0e7a9a61e03997228758ae1c0e7f94efdbcea531e75fbc6be694b6780add5d4ed9e6e9f3d06a527e001a4fab287f55ec7a88991835bd46226f1ce58b321b69abbea6051a6fa8fd45f82705d1e889608fa39c2bb9f3312592e7fcd80c36eefacf19c81e65238d77c30d85a31459b66f22e48a5171c6fda1fd46e9a09106e93d469780cc5e3d8249820855bb3328d244d3676add8ef2cb424b5d0cdf8c98fd7a78e9a5f8d77385030a6d6aa918bb369de43e2e429c7c2e04fc85743c295cf6ac65fdd8c0146118f1be10359141c16823e423909051251f581cfbb23fa5921c10aa000b44b1032268fd1597e22ae61b2ad268c1e402fd44813ea8bb4015e7b131e5311ae7a6d55c6c2f853af1debf2e473301863152047b437acfd54446b3b4ee96d5540dc81d65ca5f043b95caa7cecd6a6cc6d5bc10c3faf18ea89779f56fba34a44aa1341a615e899edbb376028d3596b1198b73cd03e90165c15206e6064028e3b4bf70a31ad5c89a093527008451011ae571dd167a66d60af7c8dc0c46cb38698bc9803dce9ec6fdd4bc3ae4c06460efe9f2b34353f51e018415ab142ee5ef6269053980071ecb8a55f115f9906e1c83849810031fd2c82bbaf450856cae79c5a61612972328274e8ccea4340e5fb1a16f93003b296d9095c355d1e2739688564542e1b159125f1816c06d4e37cdd0090480a4d5fdd0949c22eb4cc4c0b9958eb440618f508e7bedf4496cf64406be953ea90d04f7bc3d0f21c4d325fc838ec0009ac2483e00da97e6a25657d0c3c7eb77c1b7ec66b8f6ef5f0783aeb5b8da2bd089d503239de05f509d90470df71d21b4d2e16ca237dae306c40eec64f62dafed8d2369703ca035d4ac78274fa1f14b24a8fa28c1fec774aea7a7f56c29da75e68deb92ae0de8e37610afd38c3ea0e73b2ba8f2ac61ae051b84ab0e90842c39627e6f0073ca807b940b69b1ea71fa84d6bcf4a949b047c00f6c5363bc43642a10a1d13a15788e823023c04b7d2134acc16a6ed0729b31572a6bd1d16d56843a4fc83592cbd84a41448279c1b201a63722245c254aa6fcee643c47feb2315851430a38bf46af2eef9d8e831499824e388cc10c8e3a5d9c399d0e80835d877893850ab47f290a240eacfef7f0f5fb5f2373379252a1a31efe75a142d277b0da8381d124e7bffbf3e02d698b5b34febc1e55cab991f3ff7f00bb4bef79f846d5b346b90c77228394d2bb16e47b913599095c73fd57027633c9608284252317625392fa7fedf1eb6eac8a607ece553191b6a0a8eed701b88e4f6c34bfd287384139f5fcde1f1c80df049c60390647cf23e33168713f2978788fde564f3c0878036753db8c505bc1ff8adb5bffa85f81b3c8ff3fbfbf1a87f95b3d496b3de8517ab77e94b0b477b025c740802a9baa4594b68fddacda8a3ca018aba297c368187d2af21bf61a3e0f99a954c649359e29962030f44a99417f15c3484cff2ff8932a5da83fd3f35e90a2ec56679653766de5dfa9ec1f43e08c4503d4e704fe59f067bced073ff64d59ff4740cdc2a4d212a7be2add9d721e7b7a9e5155770ee32ef5f6d354fbed36bcaccc1549a9cf49d63ee242ae1bec4e141c144bf2e1c367209bebda9e758654ca82c375d4a6335af5597deb675d29fdf374c9e0039b7012cd4698a14e37241976b8bcf04d06f9d6dcf4e12aaa3900bf47cf80ae27a5e69f4f4d45876c93031cd69c8b5d9d7dccd82e673250c356c2bf414ad559d6e3808fb27995d54432f83295a450aaf43bd09b569b02e7c978c5c8a78fe08a352774f6397ede76aef941bb46edbca73999e3e07f51e2fee078b4f889696abadc6a305292383b666ed4379ad2422c98373aea99141b4ee5c65b7294d5b16679e5f0c9d28d7d8c02a2864f3884aced72edae37d5f8879cce018220cfee7a69d489daf94642b10f8a4e622648ce63b279902913583e42747119bbfd331fce6c6e0c4e04ca8184d4eda83230150187250661d64afb51ae9ffc54cf595e601234d6d82134933851588175edc8bfd8468d0c554150feaf38895895fc6d29c0e5632f7f7498bee6b3514962ad18d16d0b270a1c19f9686d475ec45c6136bbdb28e4293ca1635ce5549790f009cf99c08a9ee024841d65546e540a7c5842910b4c624648127726c9bd9a8cdbef0597758d664c13a061da617ca08bdb03c49eacba2900dc9d69023de7bd1b5215ef873c03e7b9a5dd4c0e1fb626dde4ac3a477dcb7b68cf16b931d8e0cb82b31635ec5e43bc0565898d59dcdad97cd98492701e6fa7e13ff951f6941d3277375183c3a0dfbb0394ee1eade39b92e9f13687e6049dc939ae366cd3136f1434d8b8669a74dab4d55538658b829b4fe1cc6f9e9b045a56e52aefc6e7986193b6aad23936bfa2de786b9d2687213f057aba2fea1428c0875de34125a7170d1019d3abe85650f2957b7ed7552d137206963c92e4cf8fe95388e3ca78f84f67c71938107971d5c9a0792373c8bd5c64c454555fe64032e39a702811827389e0912602e6c96773784cbd4dc93c602749a4f5f241e7426c91775edf6de3303568b2b6099c5ade7b7ffa134ac32e60448220b79c11cd85a8d16733c9b3e34ec6e0b4713caf44300d089b6406a6b8619311ec40d67da99eda4b8e8bd2f2ee63a89fa452d088311909cbeceb8df3f3a417d72e85e4ed9479e2b00b22f828d3cc8ef99a09db4d64b43514b7c747a75d18b0bed5f4c92054886a79aea8ebd13fc1800b7026afd5a912b580eca2452a392f7573804ceaf11925a255c08b0ebdbf00ee1c17c19f0bd6edec2ad4ffcfbed8b9465bca0619437db725e8fb07d9e09b7910ac8510b664b36f0a1af67f94d8fb30bec6e3e5d999eab5b3ae065294d8d60e8e4f2b14beca6d3a12b04f9538bbc24c3ae67b2b05bd2012406161324f52ae813a1fd33e2ab666f2f8388d30088d8800f842c0c42c44cab3090e27e7f44f617247498c39d5c15229e6a41efbfcc473cf2c0029ecde2972daa37f22f7c37dea71431fb2c9a0949ec2aa6eb40636e9aaa02f1f77b1bb1542884e22412c9dfc7b322ad77fc46b8260460701ab1f613bea2c2b02b486b638699d64c8ffd35906a020a8a49bdd81bfe33b6572e6e57eab56ce41eed1afdc65177399528d50a600424f90ddf5967d69a22008341c6270592c313567c958d21560d626214aa1b160230b140a8366fa55325e0487519d4e546a9bf3ffac88ba015d0055260c22af25e1826b86ec818b03812a8a35aae2509deec439808a4326ff87d606097228ee0e0bb238c4ba360d6ec6e36e9069d8ce3877ae4105b92fdb6f509ea0cb680cc2c6949751f57c1863de6bb20386d99f6716068e62203fc2f11b0c87b6d4b88294e8269e499dae17686c21bb1e7af1b873d544c4f476bce9d8e0946f8d64000c00a3a8e5cda246d276e12bcc50f649e44d07fd0523fa7ff24ece41826457743c8dafc277f4f8c46506a10b46d1c0ffe447d8c549266403d6e4b968ea2c7d76b5c01d65c1c727cc914a93b378c8844e2a57e64fdfcbc554f8847e26d1cc41eb56a020040dc6930c69f2a7401b1d0b73379c42a71ad0a396caa3f54df82b3f8818e0dd8edb0793fb98ec27f8af59d51f0cacf22660ce6774f74c9fd77558c8c061da7f86605ec4113392cc234118e11b7e295af548c2ebd333d597ff5ff9c953e22898540748e704350087434d6ef7653628ca423bc45017adfadc0aca42229608962fa3512c1123b2d0ed5353850807bcee21558811ae8236a385b80264d0d644839a8e6a30dc1dae1bf9115dd44115927bbe93a75521637e26f8f4218c24806e82e04e931c27eee0fdb3cdfda9101f709071c4126f70d01d1db558429145ce8f5706d5ad3b24b4fa4ced0d13e820ae9249aedbbd21d667095281228616d44a0cad6373b1544a031b829353161a2df544b7a88c83c57cb4b32f7669840f4203154c46bf1b2245560c34e5b1491a155a3d9a75cee98c8170e12be0a1022563d2c0e60b03573d59e7a56b7547918690c53d2cf2310e47971ab5718d3095fa3be3780d8a361b819624f9fe617abda19893ceb884d39843d51a58dfb99206d1513394cf48a94fce1bb3a190c23a57ad45b043c43a363a943af86436d75b6a8f53907208536a74aa7da21e7da1c68b3d40ae560f8e29cc83991b996cc31ed76d59b0d5f745ba04ce8af1d9a2453eae0ac5c7ee95c051ea0ad55dac7fbce611b6f6a7c1e8dbd6a1d9a008fbd6c54e81b0ad5f44b932432e2452a0e149b520a44972dc7077d0c85670df7c721269a09b9c40e2cad6f568c8c6d26e418142ff6416681bfc06de3be45061df092423a6a86d4c043550f8dfc57b12cb20c006c13d165d634299009dbe4a9338764b36457e46334ba185cd8e1d43697157de1ae4d592d976d13e69fee881d5b6e4172693e53c89b48f26c48045a3803e889ccc1f211eb85ba7b3d733e27b441ccc5c0c9dfc51ac2e792f5fea40879e17524df63611843df3bf1129116250b1a10dc6e0aef44c77e31423a0367e1949f48aa9e786c71c379b8e60eb58967d3e5506fc04db85a3f23b6121f35997f02b1dfbc7491d59cce0d197a894062b32c38e3f0d57d0314fa2c656705e0fae6b50f25f9afcdaadac70929f113b7804cf378e1a4e955425cda0551496ee22f4cb5143a1f218241f8f5b2b6a41218b5350f6906999721ce1f8af3ff5766b307a9af1dfc8bbd75ab4d2e3f15a0dd780185c0b2718ea97faba38f55a193c675d1a0bbbb9ef0f41b311cd211d52b3b28ad3bc214fa747700b390c9aba9e7e7bf4ee0aea9ee5c570b9cbf92c42e5dc4f1634b2e7f889ccfe266f9a8bd3fba5e48e7b6d317ca78e878687204062045c526bb9697bbc22c5472e11b43766d45081cff40fb2c90d6fc2cb3e8cc6192bca998209bedfb488f42c881183d60b6712481e22ea0f74b78d76067b7a5e5369fb67e725067c3d1b800a401d9aa0f1663a0bb33d2af0fccb8c93a29d1007472f0fd2613ebc57d1895aadba0f203e764afda60f6ce027c41dae644887bb58956c92df9000e25dcc655ab42eb49d0da09c0a758f3507e4903341d9a0f1bce9a80ae990dc08501150847aa8c6ac64c2a6b8fe75222dc2ba84d60782ece9d705452dea578846afa290209863d2021c6ec504f7e20fe50430830edce3f22ea18a458b69316ad61929fefb107ce7b67a634a9e2eee9eedb3594b9097733c824952b06ee322ae36530677de76200af2e4201931d8525b8a5ee712727b382ef8c6a8940d7fc3b0a326a9955e831a5f03d939a5290d024f13a249f955fa131ad682470882e7e0bec9c0448a6382279875ac456ddfc0511371ad762bd1f2acf6635eee67a85f66bd62707dff32b055408c0daad2e716f4ed67f64058cd378470ea4565858343122aca555a7360073b04858456c4b08bd77f7efb8b6d56c7f9c8fbcec910a88c8aca904d4fba18edfcbb75d1fec349a21bc242f2027d1c22e007dbcd67fc03c701d5e0b51df9b59befbdfc487594fd5bfe9d5103f71f03f78ab585284461dea249ac8699f330ee32c76f69a1fa811741fa637897a23330b1aa8cf307824a493f7c5eca4d656952098fe4abe4a1e6bd2329b3c70f642eb3c6a7cd5e4f53ac30e1fbd016c43c221753e8b8be7aa7ea6243412cf097ac839cdbd9a071674a39407ff0cd046d2d397d4f7d78d412248d9f81e044c8812cee719d9f6e8b2cd7164000868910bc9e114c8af49246a4a74c8c6ce5badaaf0dbb843a7b8c5b05918179db28cefdf4201d87346a5062ffca70852f4a3f4084ff5d0a61fe726cc2c6fbc454cf93e4a649fe9840ada13d514c6262788a1228f478bb17de5b2d6a946b386ccaff43916e416c2feda1b85f73ab165aa68125698d0901e433868671a8d54a6b04c67c33014cdf2b4bff06f84e23abfb43a0a6428f5b006d76f59213a2c9e0748f2fb8d2c4c5eb7343958aa5a9a13634c9a726d85e3910058725985fe4daf8d5492632c6293b5c595b099275837e176a789af929d75039b31f86bdb07c0848ee52fd2a84bda6e073a786979cd31584e29f3d3d80ee131a14e21d69a8f50074910492ee5b2e0dcc91cff51403f9634d8ae7a5b33946f175c30e4b316dd027e45291adf435b6f21b5359760020c53426603f3b81bb4939a164ca5524a3d8fcc791152f73d33a8a6c7ad2e194a532505d7f9b2c0dcb668d790043e9a6996fdc7dcd13300f84ea2f79f6ac4435d071392b3a0f5c32b0d2c41a1e4a6b82ae57735c92dc74fbdd42ed6eec62387d34eb46c328162786da393c06d1018f95c0420f06936f0025ea26da1ca55bc44ec68418626450234fbe4fc6ef816243a9b7cf5c3b718f05c2ee3f50a6444f1cbd803a32b0c7eca02caf5ff6051d8859381a097b68901b989556ac0758cf64faaba212504bd7587f88e068cd438fb96c0e72f585b9112259811dbff11f5fbf6ce28841e5cc57390241b7f9f83e6a96250e07d43062393014db8d9cde2062cd6c1c6277c4a21997986c79946e660afeae695112b2b9c1a7fda40341cc4cc6aedd4d73f573e203a7137c77345072b9894a082cb7fbbc0f81127920376c9f7fccefed578a2b4f819a81b9931a336802ac1c57056a9ae3dca506574243ac28bd883e42a94c290b0213e3c0cfb57fc701c98b78e237356e5374d5b3889006c436f0e5364aea5675e2ca775c7ef9d7d7c851cbc81852362be6f2ab81c81e1a3b0f7cd918715335da52e4b59b0c826fe87cbe4aa9a0693b291485c69ce69cb9ec79cd0adf4963d404ce4c483bc6635fd3d05090b21e4847763e70188ffad9b9b12e69875d9a579df8430487ee05cb4c06bc50fecbb7475cf5ae11b94e6ec69c812474c79e0adf3c80e98558b264b38b9ed27b67393eee6e95310853f83ec63167462caf6e8cfdccef95b6a9b49feb0d5569672daca4aedb69ff6c70e13fde043eedbad0bd4b9096b74a498a33780d433d466d4dbbb91b75d81f752de3b8c0c5dc2f725e0d33a1823e0b5852a10a62ed0e304aa4b412a0fdfadfef29d67a032498b4d9a501214ca079823f5c39828f0d419a1607497e68779c061bc3bb33fd9756f70931a848d14e86f771b459c295469232e1bd2bede336063c51f6c333cb836d765ac752f14a3b32e5f5f7b0f86adada1b8aca15deda1b3a5c3aa95a9ee1d41fb1e3aa77b8cc5aef949388e5175adfa05ba9fc62dab96ca8d13177c2ff07124e3d7bcbc844880aec9a1b6826461619880570012ac44f039eee1b7883e100842b10914f9185b7e976452229d5498dcdd152a501821405002072fe839b05e2461cdb0cc42c10c5dc06825b17682996c0640a6e2ad7f42a3106a5f1e9fd27829c796acc549b7ab27e90b0e007b57c36dfa5c52c1d612f134418efb555beb07728cea14faaeb88f971dc2e9afcbca541a1e10ef64238bac1dd9eab38e459508877fabfdb98d43b3e108e37836dd0e67cb7b19c39d376df059a0135aabb34e90ad0e5a119e2c6aaa47fc50de7599410d0c549eb411f8f2d193e2e7540ebffe9e281354ff19d6bfb4c43690ec4c098b7b640ed04048ce180d245c6a2d80f848f434519e174da7540d0db4f8336300ae9eabaaa6ac281823a3845d01aaf1655d05a1348689b456c49b49a1dcca505370ef88e0c722afbb20478976722f36ad31ccbbda835c9809143b88819b6b1ed8fa6a0fd3a0805c09b50ead162acc027e1a4e70db2cfd94d04ef9d587b183077609a880660684db32d000a95c0b47903af0fc008245c148651899e47dcc75548b8188b883d2165566f18c188fa5569781e987e2bcb0a752a2d8a8117fe4578bf5f3f2e2f751c4e701dc5ed47d382adb2211874c9ae358e0b7043b40107b457d68abb77df2314b256fb1434a6b4af0ec47ae0b6bf54f9bfdff52da32ad568b49a9c74b20df2b5bdfc885b0cb1cd8d11310502190f32fb173c71662de4ec1733755c562adc8382643ba822f49c729859a4654b54d42b28d19288ceb0040ac4df7007296725ee6cf4cc058c04751a365685760e82ff7b7850e4ce0b2f84e67110b591afc7344e179dfa0d1589a3adebbf5e96b77441cf6264cd8f793aca9fb441610627eb6380bb2d5c35c8bd8888216f2ff5b43945e23d035a02f74d2fbd12ef7abaf7bde0438d8529e1da95b44a7310be66d886b48bb0143535a136e5da5a20751d7d7b6023966c32eb6fb51ee700c0e6d5814cabcae468b920781473b0d36329f4e35849fdf071b61f4cd6de5d85455438160c9fa19219a97585b04e138c143ac13baf9dca7d3b6c6c67fbaaf40a9f228881a3500605539321f2aed7b35e51c01f1bd8f80d1cf66a98a4b93ab5e861f284d046a38fc10b9c67a9a57db97d9b10947dbaae50eb7309b31174dd6be976e7844db3678fe66408dcd96331a1b4587122c38fe7c97f074a30594bf7efa07c4c9bdac22d3623f4c352c3145ca8813599262e737a7272763fefed2428a718153c0e29ff77239bef0f5075bf45989c77aabb62abe7dfe40ae8f087518eeb879c922ab2ef84226b35d9d47de652ae8eaf6a343ea010cb06896a48a53069b0b8e1ce6ffc3bf46fca799241d29541f079390cd8c2cf75ea084aa9d48bf67e76e09e344e9e16771be0408762be66f26603253905a4fea200df1f094a29e12de1d3fe0c868fb95d441078c41b2c654ea42c59ecd7b350553950987e46a9338cf220fe0fd0e039691140207623d759f60f4d4ab2e688263c313999d4b40281c3966b8908161667125ef39ce210861048e868cfbf64c0f3a8e5007d7e6e84768b5597613d6197dcef477e0cc221e90ab0853412bbe91626e5b6cafade1b5ca0e21966d0112838349fbe3ebc3230e99436a8c443277ca60f62073be3eb64bacb44b835b9a019b7c3caa9bcff2860e0ad5d4c87639db6c9e50618c439d07cadc18ce86917114ef03b89ff6d2b1f058ab0437b5f7c419c5297497f13e03febe1ab2e2a19015f6eeaf6b6cacbb9346fafa14ff473ec2cbf1a70f4896e111294385cf1e175e4bea4fa94e7079e595d5fae399efaf2e7984a5aff474c1c16c486631527572ea758e0c0f561ebf80ca577ad68d6aa5387d6bb6ab8af1208028963df7dd1ea948e786301cdaa99eb06c21f820648cdaa17eef84717ce80f8e94bbe46d836099426eb355454cc514935ce745eb3900e4013ae368c84190e4a923dd747c7562713031a47a6b2f65a29621e9273d1baa3029b575c4f972ff1a2c40f2f1652fcbc5c4a3573a55e955683d23dae547730e310a16ff6671c2c9298514c2fd4e1b1c66d369c95f5da4ee9ea1c4f3d2ea094e19c106588b9a0568a093d6c0af8884ab8b8043327a284203d045300be6a14ff73677f61db5b06a007cbe6e9a3c73c1aab0a1f8c582a09ef9d973d00b11ff15e11f100c40cbc64542797822895556479f4f16937507a559a799f7688361404c6717016e7b6075d823a3e5b7c598efec13f1214a31b5b465bdf031a53d3a52d7b28078b2e1bb051e9de74258c141a44c5288ea91e956189cfd7ab6d380010bd139d1f1864b61f7c0c8fe7009d8a337d4a02c38c7e9287e0a0c17899c6c5474272bd871338c4cf7876589b7c5dd0ab682734c10af1cb193b0079404077ba2465b1394bf7f1e82ab81648d1b7aedd538c57e21775461e5e6e944af41e0b626192ed895568ed1c3e6d5f9365cc2ec79a5e18a981f26bc381dcea0f2034ac92ac7fa48598abb928216b04c42a9414f9516bec0afe63255803b315fc320ef035547cc95eafcde79d6505d1196ce04b751a4aa1b332b389342bc63e87913e3529d8e6aa243e9725a408ae612bd4663b83c3fb9521d144a7c70a4275798d8cf79686412d2b79d01d64f56fd51144fabcd60a5ccbb5026ac9e455a6578b4b7f39d83be6f04ba871b7b6f64b0fe3168658d8d00dd1c1a89744fb557063c7d9530a65332485c0e087ce74fbeaab550aa51956fb330df66914fad32905ee8857ee74dd880e8faf07ea52a08f474341eec528a31087fa2c2f5e69e636fd6f23bd5bc65191ccbd50b3a693d662d8a280cb0190afc048815e65755f5f150c4526ebcf03060091b6cb66186d3f204f546bec5e0cb905a68ef4a9c44a892ec01bcd53e8878334cc0dd6a468471d74ecdc31392552cf04bc74770a78b6288aa45a44969bd91eae182334789b2ff81d8c0e1ec32dc9eee6abb0498714edfc941c6de2333a30bfe4c72dc105aff7c526ed4fdbabe228732025c059aecea08f81622be1982b070d75008deefe9660a3c127e6fa23347c77c20fb8d9be8ca3ed0eb2187a8903bd0d823493725c410dc81286ed215a01d3a5cf75d52da4eb0d1568d555889f2766dcdb8195a4863e6f02adc17e9a30ba9927e69c81dd3c722c29bd2342c174da23e5f80a54986e9c696f46ed697574c11598b761905a35c588b8730a576b074b5a1635c46155935117e2b0d0d9d08a1cdf90930b5ce0290308ade97f7f29276e6383ca61a9364272d3991145076794235e39f30521e3590e46a0c0078e75ffeabbf933b11c09d6753009b299b321b4263d2ca26493cd0dab587369c8de23db8e92f7fa89efc9614083afebda8ae57f646577ae095b274dfe059e804efe1d8929255c7421619785e38d2dc899d2cae95bcc5a64da9e31da4d925f2e556491875979c98a1e787cf43b8b091cf315dd3328491a819f69efc2b61687788a90fdde585ef2c30a5a8209b694e6645ea37c453ffd332ecb92e3bd8ab4920831929944f0dd72162711aa3b1879f109daace80dd3081b9078ec0121732552d6e00a4a4a273f8581cf8b3c403926ca0567c7d62ff2a515b6c9704e11f87ac1f9e6d721434d0867735bc11201ed5bd6a097e592d89296ba4e485b3fe1a30299c735b5fb1cbf8b8cdd9dc27cd38b96f1c35a49c797274553fe7f8780eb1ff983b1bb1b814a5dea15c7165019f4017c24697743dea4e4c884fa9e4afcc27160652d32783538a82056eb22379cd2ebb050f16260afff16b7ed8f79a51094edb314cfa690371d71b6f075173e6f9c31d30e6944bc948e6c520858141c493c36f68f438e42467bf10a3a5298bd2af4e958ba7078fb6c2a9f444c9a83b8ee1cd4b8122ec9f465148fe7a32727847b8522e1596a2285ac8057d303dceaa188db5d5ca321359466b867f8cf890c00f2fc988e5b357699f271412ef4607333043194053ba33ce867b8b44f8d459308b4bab82a8b37f7a67d804f5bf21d01bce4d77fd5b37a0263b112828971eeb5f30fbb177b190416cf5133904ffccc5673c74241a2c5a57c717845cc7c99e0b8663221a3fa98e4476c9abda2405701707e28b24cd2a1a7ab27f58158a9c7017f96a7f8c6e8c46ef604cb2597090d33b8c49c1845a18b060970610eee7085a1e843786d53b496287fdabd91cfea0f221ebec31984d0c8d6e0b395d0370036c66ee20aa6dadbf83c3959f2d575f354a4c58bc641dc7d4f3c5336a8c2f0490f9e8d9e1d2ee86a3e0829068a5e5150b58b1a8a3a7aa0876dc297b1ed8ab8544f6593e2fd427db4a5851ddbabac99e4f7bf532800545489fccdeae757098a856637f898b7022cd170c1881143ad4309b1ad0208cfecf341c30996f46f54596122d0aed01c7d9073fc67539c1480b6ad0b8124a2d250ab0746f4e6abb07ba5ef4db0e0a28faf56b3928fd45ab5fb09834d15d7c025a164d80c4f9d765d3c26148373d0f0c1da8d8516da2ab969525b3ca67da9f9851bc830be1cebf1a12e0d8f454a7bcb88e21a59ec72429c4367482a8c1805594ba4034dc50bbf6ea39b16668e41494cec826f6d841aa643bc88d0a31ca071e52df16d1aa608fce957709210965cf3c71dfa057313d3838ff411dc3e5d704a3e9310f24dfc0bd886729c3d3e6813b96bf1bf19178e7003f64ea2e0338fa277d0133a1c36173d240553e3405f791f2ef87577e180d99499baa527eefac0a0c59fcd701542f422c45307b15886a4567e3800be00fdeaf5c35b22b87dbe2fd14421091e63eb515aa2594405598b2ce847a0d3c2c01e6b5ef3da657e7d9c4f04039598ef7680bcc72195d69df9d1dafce37f3f4c172c34c36050eddc46a684a1d94676b5f645268aab1190ee67e0183cf712b5ba439ba6e64d005aa2a4778a51a90272e4da92498166d03a725142c7599c6521f30141fee88e18340459fe8daaed12a1754531124b2aef91b4e95097369eaa623a343a0ec0f8911fe3791036ba7d2aa5b46316a36992318f171f37497ef78ecd3a07a0e3aae7c2eec7137a4c9cf6acee268a96c7ba93c310076865ce5c251077dd521459fd48ced907b9a0e012f80022fd0f5ada5d144fecb5ca98c25dd1352e571b5097f783be0140d1dfa3a7d66b5c3c8ac4dbe2690ab5eefd7620131801433fa32de4079a34aa98785d5219683e7ccc6ded6508454f74872d17c1c1e5d45adaddfe4c961dd186d444e95e215ec9cc439bd1969bd23c98b5ab723fe35aa2eb2468c7dd896636d9cff18303d408641b36f3a8b2eca5f661b7922e83a0f8dc8dac228466f8755751ab9fdb9f4f60427e03784232ed5eab10de958318f2d5da3d2220b4d20e255ef5e2efcdeb39c0d40adeb2d002b14b3232f7f814a343aebd749a106420cd1c82a8bd4cac932cdbeb411f60aeb1ddd62b2fd0fe661e29494d8fc4a5e319fc9aa2dfed884a4d770e4a8ae10a331607c3c0e690e34109de994a84381603f51c38d87bf45641e1a172037d5d5dc1eab3fa0fd58d5f7f7757cf2254cc1f1d5afce7a5459e02527b15688b2c78316805d671037d31f5d1a2d4e1cb4571d088d429844a6054b92f4e7753b9755c7e3a1caed86064659a664b37c770a839d033a9f03487b12978ce51bb9cc67d0778e167eb02fab42deaa31876a9eb86359490ce2f8ab09705ec2479e961fac4bc4d79a4e0b083dc3e979b7d5671c02e136198178ae52b7c83bd5360c24a1fc8a91b9ed530859eb342a19c5b7a144f7ea4abf4215ab51a7089ed53da00da21b094c4f85b48e32125f7bc1102ce93ef62b8282d040c2b5f7513c99c3398051fc15007f4c997d2ea1540213f471c9356e3689b1da2e5d252914f21b391af257a426b451f2f9b09bb90a4e545736b34611a8df66e34c41c31016234819e091a14d7156518719448284f0deb8d813193eed64d4489ac9846c9585229010596d36f047eaea1d54e98c0f966aabc1cd3e6f683db0bafad18ee7f59f181f168261575f1055c58f2cb9f962240433c64392fe9ab0d80d33060469405502de8e2b25600f5aa5acd06423d28046b6413e9a210e5abd4339788a3d9d73cf9e9ea4ddc8f962706b18084f2e4a46b8309c3381f6c9b4479b255ecf8a60da620f6129651400e817f90e13006bc13f215b3baa646a7685cf2708a0a972dd3248902223f4edd8a6c302a0b07d6631cb2db06f37a49fc517608cbbe0a1bbbf93b5bba9c8a033164973c221e32fc1ad276010c86c870fedc36467cdeabecbb6afa959fe679c3adf6f6741caae0199dfefa4f4bce0a26c9303a668e2df4a05d8d59c7b0ebb3bd25d0e760029d615b5fc5ababf0920d1f156d5bbf9bb1695cf7512c9bc5f9b8c22a1c81bc53fc57db30c69a1868ec1b0b6f98b594ea3bea1c01c29595499dac60c6db79e1c2dd2d91293a73ac0b697d0f9cb32968a90ead3f907d8f1e7b95a42c1e36f2a2f5011b750d6b91f55942c6e3e5be9d27e9383f21beb305239871833b80e88c4065c1e810e8b78c15447865d8bbf922c00306f4c3de8931430e0757729081a603466da51e0cd27318c5d06ccd4b4f2d7d1f7b0e96f66f8e418186934ded83a19c762728bb1b4017b93f3512ebb62877f1d295bf2a7f9f9839ffe0ba80c02e3cbd7eb67aeee17cc6cb41cd9fa2c91cb5d79c76e8c612665670a8f5af81ce88a053b39f1beebaa3fc7dfc202e489b956f979cdbc69141fb8468568261ed498f7fd987ad8853f3c11565d9efb0e1916a19bb5913e315e9fed86745bafff0cc440f0289ab4599bad4dd18cafd091138cf0ae6b376f66f22979b929e708717e20fc3da71f05181cdbb8d4e38a3647076117248dee9947de14d5191e507af3a86edfb861982d004e9f2d777e7ccbecbbc6e729085b111af61acefc06c16b88c0de8b087f73ec4e3da4b8bebda5c9036b47589fbaafd01830773cc509c7d37288aea9c3e2121119f51c8b9272610214688df5a5499ba4e7db68dead9b4f3013cf02ca679fe24d770899e282aac157ffe7d47ec1c16119fef694291e43247cc53795032f4f064c49c9d92f1851eaf4ebca6a7dcd050c963f06ccc93678c2767726d871f3e706de30b512aa7dd5d0ac135cfc3c6f8e173f341caf1ff1de05ccb5487acbe5208dc1730552443ff2db2c49a9e708d107161b9acbcd4d674ac68833b93b74de5086dc5ea340fef7242d7831494a85614b4f0b16793c998cbdd25177fb0904f354ed12ed6a14d54819f9a2795c63c4a3b98df87ae2a0d5fccaaa18acaec52b3940880514fc9d18e934ce09c8080f464880f8c4e4b5e7daadd96ff49796057bb18d0ab94a4a28e3db5397e58b80f15b9d533c905b868396991a18240410d99fd27ab1cc01f38c3aff843629ab449185d84af881e0e50c2f0985466c8d226d3f0cbeb312703b0325184be7ed422b3898e4fca8db4ffc2ececca380ceacb68a7c63e5c3162d156c351169ae829da96fc522b97a11ab2e8bf90c07bd7303bbad124c8d3b00ab2dee49be4925f76d8caecc6621485271293e775715171eefcc269483a39d902d1c82c45906016ade097e587a0836359eda63d6365c9b128abc06d6f30cb0e65c7b657286baecc8094ca404c640d6dd4de8e214bd0e7b34552e13e16df19c538d96c8d5a61bc921fabb4691bd78ed108438e582a98bf4e6af8374a0728459715b2d0a407a13eeaad5035402b79bd5fc823accd8f98de4b79dbc5d39b4bd19614c9aa82a0125ff18bd7274ebea5648ab2cefc3172b3c02e4ce0349d76100fcf725fd4ab26213fac905d2d350f679ff40a041c356981474fc25d046617442142813056cbb96f72fec13449475fbc6eab87b718d8a420a4d3d32405d0409f2edf76f5f3b7563d26d2d31d490f5b410991e42317248cf18e28e8e490506d25f5624816721257ceb35e859c839f91c941d92eaabe2c10b1a882680a606405816440b29d45554f7dc773d5ef73581d8ccc0a77d7d875b55860ddb60ce2c78a9d52576bc569839b7c1083f769ea9e783cc8b91aed554242b2099aab51b45a8f2b54602bb2c26cba62e2b41eb8e28d5c1bb52426d71bd52f97ab77e08d00a6629f8829dfba3ec459c4955c7d27cf090c24346b9e4c81ab6970bb225812ba2d8b5715b2551664bc2331e1d796a3e6e4215f0ba001f8f58bef719e81cb4b669005e4c70bb1a2903661b7a8b8d357d9ad4fe5e1b9aa28c412059fb85b1511e22a0b900584c50caf0f1c94da2dabbba62aa1d410c41764c918c8db846fa18ac4bfb20abc85db135198813cd2c48232ff4856f11890a5a06099c90b28a9e1222fe269c1c27e51760d28096345895821ee63ff11eb6a2209df6e79c22eeedf9c1d5cff2e25343b590bd9f855f4e6a18738306e64cc557a5a62d5e849fb5e4a06a35ac59a74b4ae4c77d4fc0b9f0e35363556c52614363059017e6cea42171592110e98c21c16d0988e0e98b4ad5e1d91e8e880bd55add369b548dae90596215302846e9f15360a639483d0cec3100b24cec4a668c0cb51a6226a06307547235fd46ab69d427f36655c6dc548979219ec35feb30ddc7ee23a830a9d904b0237f463c4f58e7e2d77b08013004c79c249390342acb753bcb11e95e4e9a5061001027a162d08aa8806449416a5e3a57d20308cdc19927e51c2d94184cee53dc9aa09435a6e3fda626b42364e94e1b3e5f53662e382540da334b0cdc4ad8cc714fd8ef42d1996b12f7cda06fcac8a215cdd3904ccda3d897e79faafc99b9c482388555f9fbe4da966b65d3489b3e26a2ea15e9c526556a3badea7fa70623301544aa2ff1a9a60bbf17f109420218ad9411b2aa51d578511281dd5d7ce3b2addc187b9d1f09d20951bdc161e8bc7eb2d34027996d72be06cd25369d2d107d94661fd458d498593cdd709a0d6a66afb142d0b64cbdb61a4a8528ce778e36b11c7dc6435d3ed5735f9913c8c0c23bea474c0c86a1fe67cbd4f242f187a532408a232810d7fe4f2f7bed9c5c8e9f9e21f46e1bef7b6a419d03001660cd838573a115a3ce38fa75d981b7a39fa8d96a53562ee00ba0e64adf91a80e104599b502069e81aef2e72db7817dcab5b5736e2cb7b6cac5c00a04840f05920a269fe6d1c0a232f7fa1be4554cc31b20e4cdeb7d41d9031b0ad7c6e5a2a4c8d1a931fa02fd6d292630e1f8ecc3f943edbd0cdcc0e52b30b71b8a1946070c0118120a477c9aaa1371a180d8f262b74dad9723d4b7ee212a161ede59e91dfad21aad7cf1b8211051eff99e47102386e554afad484d5df8c614f8e5aee0277f33708ad3998d603a5c6a2be4a29df5783b72ce16c6018024b5509d467eb6d5b0968ee87730ff85cf0ccc24899c3736ed6942e817d9051dd45b5f30d4f99311267ed43616403f02358b6d8f0d66a2a843797b43fbbdc8fcff9240129a5f4934879168c9d55ba71a7ebcac6b968d0525bf9b7e0c2c9ce9a01d5af096438985f9929cb3332fc35797da91ceb16747925bc3143256932e3eb592b975557a82789a093fa98006a38761ab86755ff388d1a43b4002beeec5979f80920694e774d4e7aaec2259a5198e86975143b63aadd7cf7cd4fd3632aacc557f2feacb0f527b07ad11463a455b816b8abca3ea4e4b6f73a3aa9dd23feac8b87474803c19402fe030250a8d62c5c0f0f63542d5a59349fbcf78bb9d3618ddde014e775967f688856adc630d5152314b0a634984fb352166cd1685455ea6238ab08c1885e01235acca9f8bbbae11078564122ff7a4574860140ec1677a61edd749e4c58379d5ab6689d51d4034bfb32da01b58eb5bb0f41c400aa61a907cd97ff8f8cdda222d0c31c3165404a2ae9452df8112cad1518605c86034119142b39ec937259044317c12612e66d2ce9cadcb7ab3ff75a84d460157eb15603adf09fd6bd247d15c12a4004b01187707b919888a22b00732d7353dce911893d97f8dee9b64967aec803aa77b9bd4349ad392629a635cc03637bff2d110c3d11eccdaaa6d56181ab3a914adfd1e977001b745ff89b5629cee7fc78d23975b6feec2f56b54ec12593bf03950c09bc7ecade4200299d109ab6d09aaa0bbe3db4ee9ba0a4034cbfe55855eb233ad7c2be0319db26e11e64110962c622ef554b0f164942a5e59a3875e10652a7ab7af76fb6bd1a85b1f07c26a4917c458ed7298af6155cefb23765620dbf00b8bcdec0745399de8465d771f1e54fbbbd26a6da2612c4370305454605cae3d7ece330e5f32b5bda804e0d21f0f79e34805ec787be1d924e3092a6606c1d93c4a599d2d351d52d1122b99c2947c10c6aeda65458ce360bb43e0acb78aa16147fd736dbe96ef5eb957651b228bedc0906eaa5b4706329171887a39562681782f30b1845454ea24d3cd5667da01148ff2368848c1894267b9b7d2055fcc32b93381aa903ee90b53879c86d93f88687b28711ee3c00d40f7132595f1b264294be468f3d0aa61247adb6b05c7d882319ecdc08c61bbcf99e3e71df8918003f5866590084e6e0c2d95b23178f906830714ad038f3af2b6c51eb6f9a77460a0fa7364d9c8a33fe70f0dacfe4216962b264655de33b79ce29e1db32436d33d5960993fb96ae09f40444a4ac7c69e905a2dc7eec61c9cec7425c687ebfa0b536a368955bdfa5333d4909909ea668f1ae304a887e9692059aeb9984ae01141ab0d4fc47ce44a71405b47eb1e3d601376b1b1977d8d5c3fc58472b22751d8a31ab218421a890c76ad2d7b9641994010f3d1fcacdc9c8e3888f356000a06844aa881b0538d9cd51608757364c5e211acf4d938b8a753fa1645600d2eef34c30b59355aa53e7c5856f967eb62c8ba68e6e25c04ede86b26a7462b633df5f4d72645eff7b6a332af5dc1a546fbac1ca5e11ae1bce31fb85c69c7b86a7e40fa4de0404582c014181a98a9e447c811292f8bf809d21c709d642ac9098d6ced055820ea35e09bb1e60f6bcad1342e51f83056f1c8b77fe4011f81f029fa27c8eebbc285cf5196de874d0466c810deb63e08ad85170a65647b3f17c63b0a85197ce872a2c0613d2824a7d4bddfc896e44256c217f218d8cfbad48dbdfe4ffe78115627202a432f0f1bd9582d83901145f4ff5307e13d0db9f60a84511893422a1b2c5ee97cdb8d3256dee0e7cfca0aba44e8bbc364d58776943ca043ac472fb840f3a4f8d2592739132529c954d097b7b7817cacf87effb9540322932124f15671fe5a6637b5170f4c2b8f1765b09e004682bb38be7f8fe99878bf91c38497a4fac4df617b939ed753b3d19d7ca7260fecedd27825144fe9370b7fecc403ccb7350839800b62ad8e276cb996db009c556ebbd69f0803b4c8a76f3cf415eba71beb0abbca5b4ef528f932276d2ef246bda354aae62661332c8b0b7da2fffe5bddbc28423b1fc0726a4510cf82460bbabc9c86e04a588e2628c8ec48a1b533787bd594fa2c4578485676e92f7a308649e04236a099d8583a8659787fb5649d3f277ce01c623aec316e4d2cff5bffbb7dd9bbf4f6792d582246e9db14e0f4fcecbd8ddbf9f9c32395c350b109a39e66341e2d2ea0f3fa8a515f63300c982dbec651684dfc711a3c37efd5031ac125d9b3b316ae70389155a1d20ee570b2dd92998eb4c19429fc3d0cd98c131d0c5a40d1f0250280e3342b791b9b90d324a0a94ca0aa8767f822c43fbec270412ce5bc0e2facff8bbc55f089846db8c3371d2c39d1903a366c5acff6406043ecdb064783237504835c67380d9c8b8081b33adfb8c35660571f81bee65cb6d6a0bc3aafc4b287f85d6d0915ce115e5968052febcd5f54626285bb401cfc852c3f63858f2024cfce2d2f14023e25e9959acb8a0cf29a576f6d75001de5eb0139560564fe93910b29adea45a20c8ec6300b45ba03626e44a08e3ed1635548664be6a62557c4381ce16897f5ab816b71b96944046f8dc8f7eee920f3ee2fbae86d583b643a75c1d5b4df2ab53d555545a76dce6ee1e28dc67b5b2a98a726900bdba8788ef475457d95e1bc131c96f67b58e0224789f1afe6b12210d88d642c6f7b18d8c9accad6e43d436098bebcce195ab66b73a15ed8e8e79ce10b73c7b508bd6d18b26d0f80374cf53d99bfe664dbc1b07b112910031418e971d4cf069f0b14426664f5a6a0cc5e2c377b310dd5826f3afbfb1429c939c3a7e6447e1c18ff118fc38312ac821ff31cbb0ca6ce7cbe52a53332bf46b8b9b9525fbaaea0cc23f360cca5fc3c307640dd8f821b981884aa1f10f50e0d2a2e05d7465e1759f583ba1e513749e5a08bba4cd0267c0ddb54fd4db978978de79f21688c56f913e95dcb53193c8c2e0c5c0d6f9553d4b41315c45374fee61def52e1545ff48b787e5839df2731bb570fee74aa2ac9f8c0a04e1fb8e83aea6b8d742de07a748e4454276515891f8be2e2ab6a53b899c4ba0d95674c8aa363c273eaa886ba8eb21f509664db80be37a7406842bfee8843c80c8e20d81d0eb8e54bf8e4d6edeca88faca72ec0483c7257c7d7ac4fde73edbccf13423cd5de98ca9cb33e65b46196ba6c7902995ca3d571f1246d498cb5e248e484c33a4ae81292d5e81ed7f7c8c5f9b5528d9a01ebc005b3e64a6978261335bab32720efa7197fddef2dda26cffb61e37f33090c5ac2aa7e4d2672565bf6387e0d3516287677181edc850f6c162fc9fd48885df567f0ddd2d198ee2566bc1c8fe7c377ca68cb7c931dc2334f25565ac29c0feef814f3fc87430b475e0d783d5bb95fe7b1840b63ddb1b25e7782e14f781bcb11fe919ec1290bcc9c9fd569d94d010dcc096925652e9759be6d97263ce6ddd2e18f9db2e6a3f47412504e4dcef3735db3c6b90e7c7e19e82313e09787d099c83a98d81db766f541e4d26faf1349a774204bab3f0d6b2fa37a38c7dc96cfe7e60b116ff141c87eeb6c873b805ca63741e03acb02ec1b5e6383241e90a05f205a42f1ef5020aa383fa82bace5c250f44e45e72844bba4e3511a0ee5a28bdcf89fbeecf980d0f5f29fc3b1afb0fe1cde3cb3d9b3d9ee88108c309206c9fc74e3573f2bd343984ec4242d1466b4721adaa406e5b07f48175256671483c188b76e973308011238392853924a25a4a1179935c718aa53cb0fc31c0bce399d03068a6576da3e37a3e9b6a4b0c03a6d1e9b69ca0fe60dafa33e99887f5d8f6a3263bde7c98ea3a9b5af65d4252f2db51eaa04c9506c270b7f6c5fd51298a65d6881719e192df9f87aa9715882553b7765de6dbb7a2c862a259d223bca285fc56ccb34118deb02d660dd8741fe7e4c32cd9ad6df521aaf18cad49dff36fb29a967b32510a41d619c1a266d1b0dbddbebc3a4d9cf3aa07978bc5c95bddcc262a86c3a2bba66b3f3db75d75bd81d7ed06a6f9332ed6c3a79f21859c0eee39ad81c7768d380fe23aa20ff6515998f535d07040edf55d9e5e68952ab2a09971bcc9aaa889e0a0d64cfdc04747701ba96849ab15e8aba4909082de56ebf8649fdd99deed106cf42fd9fc7cd57c3e06e44ed8bcd8c63c4de22ca0194568ed7d062b1aef3312d5fd355deebc98b62524839a68f62711dbe80b22f6fbb49b3522604d5271b25eed08ec9dead59100b875e14ff950975e1f583bd67b5b62985509a834fdeed5d8181c88331e7711ecc3e3d60bf42fdef76e40ba7d2e2e3b922bfb07e7f6dbed49c4ded0b11aa82300c570c52bdbebac842a9833fab560395e2e69ba0e650349f9f1d3164087d177cffcf9e8ebcb61bc472fb5caad8346ed1844ce28b69cde71a8e1ac6f1001db967beb06116e57127b2a15e6dfb3d2f7c4c06019247cdac92f0d1428647ef4a98b637b5784cefa917886a73a0a09fd09e168a31c9772e3fb842a88afc815e876d015b8467d80a9f65f7b59f0c02d74019c57042a4b1fa45930da19a5036d59a4702af9cc2bf8b4f38339b85161a1e48e3a96ad830497a71cb3bb1e3ae2969f178703b0970104b5967080d8d334dbd8a93230d4746bf88f6c7b19e3b916ed853d454ff527841049c8969b6c29a59432a514540bb009db09ddefee7ff3ba2f77cc0a4cc6dddddd3dbb882e2798ae26b8c36e8731be7b7bbb3f1215750e3a126f7777f7d3a9fa8679a7542e26530c827577f776776f6a526571aa41065299211896c3ae64ac9ce3cac4bd5628c8e8607b7aec726eb8f1bd28c61969a453cef951a3d3238c733ad5e24fcd5feb1b23f4a218e37bb037cea10d7b80e5b0acc53923cc48564c31c00d279d3292e02391484e22358944229150a52ee7fa93e1dd4e098c524e6f7ef00b2b6dd078f3cb61a5cc7ec00bf986c59993527ad1cba40c070929c3791f108a2dfbbe7d2896c3bec6c17f5da4c6bc66a46a6b56e117f60bdbadaaa923dfc06af6c32fcbdcf7ec16ac6f9d79e9992cac35c3c9b252855ab01d855b6cc741300bb6e3a0d3e9f9a96b0e5bca7090f0d17d5fca70de73ce9fa6f266e6f74fcaed21e1a3eb2593c9dafab413cd09854a3d4dc53762a9cbb9d69e6a0e7bca704e5585aa392c2ac341b2baef5119cedb2016ac6f5d4da5542a171718358785f1d22fb4d4e5dcd30955e17b4cc63b5f1fbacc56925876ae738d09bcef09c1e0dcf65c4352afffe32a58aae6b0a90c47e5fd4a5dce4541142aca492f1256b312ca649fa3500da3d42a23e4a4e007460481091d3801842090600895ea264b0c58607141123a3f3818ea21ae10a50a1c4509ac08628a225830440c84e8e206453168a105092f9c30f1c5173c5984405a8015946001d0952d5928c11082e0e20998027c1815518167085b9a700104201a882db68809c882095baca0824a5015158c608b1d120c56e8404f0aae3cf1e1490c9a68a2c5092e015481b308c1b36305053c58c0e0072318ccf8008214a00082082ab698c28a0f56d08196c961e12b5e8ce0892957f042cb147aa80211b4a0357c50e1c6142c8276a063829d1eec50e18a26a4b623248e4e70852b7e8cf0c1063c60a98215d4fbf0a207248870c2088a222d88b0c314bcc0923382265658f1194115b600d13b4ce1872af45459c194283b08226a418b208b14407162aeb0e4fc2c51c416426c2981132b681d2c984862c2f081c5460b84802509260011832c3a04453c28c2ba74b1a3072a68f1020829b6604583400a423c249515ae265950019429505c21a875b8c20a2aa9c05a8862054f8ed821053ee0e95614b25861462caa145ca10b208690831a64f9220a3b575c5e851876b404c1480bd113176ce14a115380021054208104595a5e08a10528c8a0002cc0e21159c0097d5471df61064be881063d6001228a1ebee5ba3f610ad7dfd4e144080a2aa0021074a43c21842c3ce1083e808ec8820529d4800945600211b0f00422649c734e2981a27004161e9480822a4154010b47b822e79c29281244145bae80a00b1fa668b1e2892386b027b00f6e18c035343cc58d0f2033d490a01c411757b2281d21852a3a1002065558d9528423228ef071430375a2088202bb301a0cfb21a418c2cd0361201f3734373408081908488b1f887cf09982043da01717be6de9b073e3c346078d7310c28e89a21005159d207c7c80a0e20a3f38a2020ee0c2e7eeea055704c1872d82f8c2043de0db388bbb60310f74c8e2c2f7e1acecc207025f087c22f06b70d6c544f746f3e1334da6dc8e818448534027a68c9790232242438804bd198ef1c52528bde9c1e80720e899f307a126284049211d363fe8fcd004b5c3155a98810f9a9081151354c9f243165b628c3116a9026f8052361182148100f900b2d38a1442214044848610e179330c7ff88234e3f30164871faa00f7c1ddbd8a845e44a7d161d303f5a11863845748b7029d7d430304c807101e7c7cf0f0636184ef722a3f145d7778f5d07a334c6b951f9230a38c32cad9648a2b8cb6f013dfbb7105bd1932bd0902a11da480c9a01db678893a3f3d5c30044743a05e087a82a2e420e5428088080d21a243248407282e0ff61308810c40c338faa9f0708392431f22107a0fd2c8b82d83851ea9111922c439201aa18e81645720600e03ab80eb55ae086fdc7d2727082d58b0c0e8052f6895a0877331832d2f42713d1a1d324e97ee48fc5c777777f72923a5419490e62f1b1a1dfe863459524589287ca8d2c516176c31844e249870779fd26956364754244670ebe5202474a85174cb28094dabd50a810e48985c8811112d4250cb10d442b4923e1021c61be769b55a42f4e8565707272abc71f79dcb555a5976482ec4753875a092924fc81b42840b2eb8e0820b2ee6a361a256abb58313564acf8646874d17537c86bba842bbb062bba862d5c512be8b2b5c6c0981d209a491afd56aed50d1a10a6cfebff78004f90c0bd1214bb42a7a23eee8c867f876340cd0d2f21966a02a8209259450080a925c2f0a180031d9e2f67735aec3f744631e4918473f152792407fe3a6d0e5288c9468211f8a7e985842052658428727b400416b0b5592dcc0e46d4c9ceb2445924077813b136d8148092229b4145103a32a3a6cb9feab22ae6f3089b3e2c6c45943bc5305d1f2e4cd30bd53bb814912e79a56abe282e0544070e5c2cb3f38a2e2764cd49a6f461232663852b2c6573e8e721c49c69eb336eff8c1b73f5648b3780531100bd9b8fc1d4dd584bc99ee0640e9f390691cced1783d06c36deede277f6a7e7ffe7bac249f9c36a48e2975d8c8ccdc7e0fba4e330000707ca3a9066fbce843f8b494e1c428e5459fd24deb4baa1ded18e8451b9bf8e27b1afc689af1c5ca4cbadc35dc9b710b396e059f57bf31304bb98fb7bdbf2395a22c7539ef041e1ea0377a6075638410faa34b50bf24fee9b3c7dc3321dc653aa14af48a3d24e5384888a325d3568180808048b4a24c8f8a8901235730626294604e72a5d597a7d3e9142f182694841566a68f5a579925d4974a8fda62e20d67854c3af22969cef943eacf7aaad74f80fe54718f2315d0bc51f3d63d698c7df643b0cfde639fda86905e6e38f893b2539d40f6b57e0e8f6e39384a7b37d24bce2217c498c8c684a422a121201a0e4ea82a0263998eb6ae8450d359e264bfb5254be62f5132b7b45a5353f28196121c5a2d2537b45a2d8d8280878bc1daab57f48eac686131f42412668bc6ea15bd229803216d44ea686aeedc781b91b4367a33720a317b983a68b932b5751209d20a2c786e729e603e91f2c23756ddb7d1ab21c1d8545b47f38a5e8dcd9b91ffddd3d83a1a9b5773c38a66b575341c6aebb877d9ba5fa96ceed1894462e29c7caaf9931b80f88813faae8d564056be26a79f2f855e9114a2d6ae56ff1c474363d3bd2221296474345b73a784c9a157f478dece93305ebeb7020ba9452791305b929f66a176039194a127423d413c403bad98f86df46a5c301db591dd4a4630aa3fb924e95f4e1b94cc48fa10f9984cafd28498361d1d1924534a752a95b0d20fb9be24e37a21b9705d9b1422611825d96b3543eb1e52680669be149256482ca4161209b3a5bae29cfcd4ab5e0ac9a157036334a540a3f964c677b3e5c2777347c67793a79b3d31fe14a5913cba333629e40295b1f1b32fb1757d0c0d7b93f6f2522886c63d4a3d86888a6e1c83d1e490d1932b5fca95dfd3c363f46a5a121a5d195b30a90d16a936480489ae7c953ef7b83448b71ce8bfbfb61c961842ff7d0ed7c3f798368a6929e45b1bb511dc81f555abd5dabb56c3ee49cb815dfdcc527fd2a2c06f4d5ab80d5d2885c037a414e21b520a2d8989953e4af528d4abb698f845afc6d482f1f29fd1abc1ecabdee6d564af5a6d92526b4fa9d25faff3f2584a0abd1a4aadad748b89a41f723da9b4e5b0c490ecb721d897beb4e1f0b2e500438b52dfa42de1f256b3f6b1993de9a1b5339c1808bc7ce987bc7c29fb97d29b361cea97acd6bd9d18184f8a81b1c540003efd09bc27612e7d634bc6161084988bd657a575afa88b2dbeb1157b28767a586832292485a42685a410e9199db657d4f2df0eb576f3f1f1f1f1993f3e4042444338423acbe4993db33577a4913c9244b2480af5511b4921262fbc23d296fc00cdf1894308908973aff4fdf36a4c3b6d9479dde67669a76f1f9ff84c5affbc99f7dd6a9e7724a5791e8fc927103271860121f3dcee82305e5ec2bf606878d960b6ce2f082f185fc61825fdba139fd69e23a8ffc08d503bfd7545ed2429a4e17a597d38754cdc017ca13e9e9e6a189379e2479d1e1525c7ab66f571eb90d4ce1c80daaa0fdb15245e1b8dd79f68cd7ec07cdc8ec4473d062363629060fe8a8901f3428643999999512796272dbed44e0f43a3bf52fdcd4ba54ede9161e4ed48ea2ff8f264b7d49faeed48ea23d6a7a7123a2bf5126ef2f49487e7743d0c8afa7849185bd73bf7f4de45833e73bd0a456b643834954aa552f0747a94d6e55cec827d3b0b429fbe9550a64e1f4f37f57d38ebf4f574426538279476e35cad367b296949ab31b0f5330d43653831b24c11082394525e9a1279bd94725372498de39431befc19a18411421e54bc3e2062c7ded7af4f609d53a285c0dc8d5cf8ad75abdbddef2197018c995db0e8eeedfe54b21074ebffe59e8f61ae45c93a7667d9368373f1190885817d30127156675343d18d5fe445dbf1110dcce9bafecdee997f0dce693409db758b88733ace2a62c373c276ddf2ef56b48121feea457e57f6e36f7d7a6d9da55bb772ac665fbd26fb2cfe7cebacba757fb1afd53a17e3bce6d08d3544de4cfc495f4df78849d88e87b61a88c82cd6bf796812471c9f1f6631a480ce2981f09d4b58f8fe03b40223b196bebdbdf7ea476fcd5bf36e8fef75eb5a3ea2dbf50ec5b868ead82ea275251fcaa72ad845d7c3dee0fb8eb3a6ea765dd45d74d33db1796cf0606cdebad9ee70eb565b44817dff91193e68c57d8fc57d5adca7e5be8f0d8bf08db7bd94eeeed66ac718e38b215dd64b61603b0682ef03c8c35fb9f595db5c4893b050680b180bc09aa0e832152194a0b94ca5044271259f6f1d6fcccc1d955b6739dfb8574329f76a288d41c8abe178063ea5762ab15176bec7dc7c6392249ec0c2f8af66866760011000a95cf84a2c3bb7a4e536c43928c4ef53c2bef756fce2bd86ee124277ff960e6513f515127408dfdf732ee41925e410603aa4d7b99efe0edf63896e8f72bd0f0f39756ec207c542f96fd2c8d7329cc92f19bbea9381ed7888087b22fced2cf995f93b9300f7b81ece2c08ff740e72d48c68489c7b3538e7ad1e415e3082a69f088134b71f6e4498b00f6a2a23dacaaa8a4d37d14abcf7ad11b1a1a1e1b8ffd58ade8e876e60e1c797c30679e11a71ae069a0b598330d2d4e0dcfbb1f2e3c3f7275283e52b2b2c9f85e32d343a3d4d604f1b2103dbd11ad3cf3fe8a215d31bbcf05514c2dceeeee68cf9d4f36a1ab0b3c567f836a0071de75e4e7c29196012a32be7e40bdf90df9762b052ad832fc648440d453a99eb5d17e9f4377e654242d03d4e5b3481652a58547149dffd953cf4a4972f6383bbf289c8eec586f9f25f78475ff9405647d8ec4bafe4875fd293e4d7c772584bd2fcfa704e3e8999dcee7a24f5929e480d458610716e92b6199c9ba6b71a09c39e843d1067f195d7570d3a47491b0f61bbbf793e4c5ac755dcf92f43e32ccac25e763aaeb4b9997e3923cd9751d2e88b819d73cef9f3baaed7945cdfe5d4bfae6b5352b78bd27f190d58ad15a3f39a74f6737f6c84f9c5c5144648f1e4f209e3e8c4b2c45e1696e1fc3ed2f123b712d3a5ef198e247dd74ffa4ceb2f6ef5d6ad5f4b1e63b2078ac9b618eac73f52b798200ab8f11570e3c72d26c87b9d7c2617236d1dbdec5383fd2ed68f0a257842c509119f58066b522d9968eeebad6b0e7bcf1c50378ec620ecebbf5ec9730d0620438a20b94187c708294d005919bae22cbf7ddbb475aa9295cd8ca3234d07e47049ff9e49419cd44d4947c9cda3b96e059b659c93e1d92a08bbeaad8332a3c11fbe92be9365b3bf9658d4fccd77c5d93de47c6cd29fefb9a41023fd9c1f39ba75efc2391fbb2a9c0eb1ad839c5ff85d5f0835be574f4a9fe9a6a481ee9c5b0fce7bbc0c6774b946cef501cff157d2a19dea32f7a5cfc9ed1e0ec4485b4c10d2c7ff41dad839d2c7cfb94d27dfa931f12b3703348e6780e7c48180f1bd627a8f410d9b1abf3f3379176eed43e370d9dd022cc6e54ec6e5e7b7abe6514370f9190118d3609aef29cc72fbf6a5a2029d2b3fca8da1733005572e5fbe583b7be9d550db5a602cd3d5fad05f675d9b734eaabd26e3dc7c926b248f4ea3c749679cefa100639927030b2d2491a846a2f47a4a22912eea5ba0ef71c0e789493e28f6bd18581c96904ff3e0e5d93b0763ecfabe7331fe9cf359c9fc2ee7cea975208b613ed4aeee0340973efc7975f05dc6b95889604d17680b285cce82986ed401631911d8cede47010ceb8eeece30abd345fbf15faa6df0e3e5f71e64354748c31f8d66d3939d7d61fb7df1453b53cd89b592576fa6973099f707dff9932dacd1c693753e5a5f46afebcef917dd9a67daa3ad9c65cfccccd8bbd8e65ed8ccb42e076386a619a3c9547f72a5733ed5ba89c611698633b71a6f6936bf52e92f6b55e0649b29c389175f1de96d2834e39cb3aeae39e99c316edd2a4ee75e160c8532587a1acf549d1e71259917a4a8284a4ca8264e5ec1ac45559904dbfe584a6241ba4418f0adfce8f28236c1f607c564402638edb401dfbbbcd05a0a8df13db315773ef6e87bf4ba1e6ba6722776a52a84302e801f9f1cc5cc39d72b4a575bc73bb8f33703d8bfccccaacb372653aa820a60186384094031c3540d973f229179aa0add05c60b0c1c1b467d6fc5ad3c5e5bd8fe0705db2f0017eb1c431847454644de0cd1a58f622f53c842b859939d4fb966f355c3c498b93104b6ffa55e47a0b271f0fb75041ae37933dcc1dd97d26ae590059f5b18f7be4796347c267e216c0a85ab37bf1aab2a61620c28a316b9f3e36ac5f131a6718f704c86c3afbb993bed4e48dd859ef134384296738330316264b83083c6c7a86fc81f8ba9d7156864d477c5f6cff00dfeeb0acf05d56333ea7505db1f4160fb69f85f5ad8fe21dbd84b1a312a19325632689ae17b71c1c6108431033e1bce41eaa2824f23a5c56c9b0dd4a986953195b20a2f8c2480170630808bdab09973de90048838ea1b82348f003770e0f002547762e112a7c96478bffe4bfa1aa0ba13dbd73ff610431dab17182eaa14cc0c19b55f1636fe8431ce1819860b289e71b2262e6535aa0cf602e90a00e5ea94144a1c408c31460b6dbc1b4e00eedf0cc7b76a1c956950276b4ab9d0e0a36704f8b00afa84eddfbaf80f091f5dfe1995e133c357d1a8cc946be4f7663192d4e2335f7c8361d5de367da8c66c1a4ca652282c43b1fd5c5f90f2a1d63b34be319f5ed7dbbcc6a47933fc34327ca610fea45bcbf00bf363ec68a54fd87ec8ec70abb4b2b3206ff385cad98f2a23011039fe0b190e7f5bb11c010003f0385a23e9b46fc667eacbc2720ba0c687ad6d03a057a9cbb9b1e1d780e1a24aa14eb694558c74d15943be9428b41d4509d8f3bf6e6df59599999991c86c3e0486994cee1b94d344a97b1745a2ba4a6c12232f352446b04690780df7a8211681eba5159132a5dc96f266fae7d65d445a362648fcf973eb9dd31f992f5f0d382da581ba9602d4553ae8db8ab3b0ef6fa1aec25975c859d9129c35bbc9a98372588c92e6d64e9ac7b9aed25660134f75ad66e4516aed6af5cf7134342b0ea888382b7ebfb74531996282bcbf9e4d4c90ebb33f7273ee8dc722d86e15640a425903f9603b2eba6d0489b3e6f7277156fd7e2625523f0ca50d06e7fab32db75f3e1f3748b42cd0086cc276abdb6fd30fe4f16d66a00bef8d13951ea90728f081505209e1f3c378021b6994f529617930726f41228ef39797198e0afb54773f2be996dfddb2dde5a75e52adc3b654aaab46dee7c9f38195f2f317034b7ae8dec4f5f0b9c712fe344efacede3912ccc3c74a383449c96d56da9238f71e26834f7236c381465e12d58bd63d5aa7b46eb2e3dc7b8e721c144445670aa2dfd1701230f7a07c354e04cfc88dc60b7ab99df398decfdd7c08bef1be834fdcf71843873006b6739f1be3c2dff80ff87edecc12362a61fb635e6a31df2e687c63b4579fc985dfdd80c385afaa8f614930ea2a2430e5290e664fb5d233f61576c36f29b18ff99897c736ec6fde7dd164e85b3fd39e4910bff569bccc7066f814f83130aceb7b79f85bf7c2fbbfcc01317e05f332df5b27e37d833f1b04ea0f823d843f72aefc94a754f253ff437e4a95fad40639d81ff30d80f9d4dff8037af3a751bf57f05fe0c7782c562f3d8625a1016e31aa879f8a51bd7c8a7d8c6a8b214795c504513df63f548f65aac71e5325b9f4bf619ed28dc6c38c0698efed08cca7b623abef971b13786136f83219eaf77b1664b5f10b1b937763bc6f50c6c6e4dd977ff9185bd7f7e55f30da90663835e4770abe6c5d0ed79fc9bb4c9e4308e4ac1a0f1ffcd9c2c29f02819c7b5fa346921a8f51af793ead758986d28b85794c5bf9bc1ad33f9f810dc8b95810f9aae70c93f0a5c6c77c6a3b52a30685497d0d8d3e2655a7fe934ac678139354eab34a550fd315b9dd25ecad34615b674f5fc24cfff2b2798d3d6926ad63bc4ad31ea63bf5aa8f496d4768a59fa55e6a5d92ac013957f534a4522929fd654963e2375369d8b7263f954aa2ca82c8efe74cb55522bcdc36d5a7b4ec7fa43e4b697ea9b63d6731e47cdf9c1b13a45ffe8f7e99526d748b79764ec6d4c8b61a35b4ba699d901bf39ad615b931ff5a97e4c63cfc7196cbc870686c06b033bece805fb31f106e1ee85bbfbe0b1abca24122950689b0606382c057bd6a7b42155e71ee7d4d69d4394a3bc381945219cebd15d8eef5754dc67d3eaf0652fa7e7c1e5e71960720247258e4ac56bdaa5fa5fa970c47b519c0fae42f6282f8d3a71b1c72ee7dcec5a4d6dddddd9bccafc076f007fe4c7156e9dfc32038e4acfa145ab9efc7e7f9c0c052c1c28fcfabe9a0761e1e67b98eb352ffb8a88f3098d5bf6f2998c03c1a0b1298f56284e6d14643e8a682797496c63105b3e8f751e3788fc509378b103ac804694af5ed5ba76aea03df25c38141ce52fdfb67c55933e001f3e8232acc4ae5a07978eb8966c9e701891a070d98e5d33c8c348ef73e48c2761f313333333333333333333333333333cf8aa579784b0616a3e6018962bef3db599a4707c5f8cedff751f3701e1fc25b32b6982d068c06a158bda87c08e78150b874e9d2a54b972e5dba74e9d2a54b972e5dba74e9d2a54b972e5dba74e9d2a584515bcd0348fdce2f246a1e1d548244ced338b237d23ce00f7c826f00e929eefbca416f0755dc79ba07c57dff1e0eeefb6cebfcaab423fc6cc0dce3c17d2f5f0eee7bf804ef7835e01befdfc39fe6f19a3862c5486fddfbc17dff9e061168d098318419335c10820b2ec810922123868a98981841881103060830302b2babd5cb142f2f30a48001c3e5072e2eaa20952ae583540ad50314eac483d3c956b1d61485c954da41a99451c9b20a542ba6030c23e58044ba70705d740aa5138a39e51352c61bc4781fdf8010da8077bcf76ac03bdc258bc1dd09ded12f66b583de536a31927f6738be7913cef9387702dbc1a70f637b3e2ea9a7f49b52954ab575f4fd31ea4dbd69782903f272fd8dbc9a1e4c2f8293e994c4f4ef6f3899be07d48bc0a24c6f4f26fb2793352dd1ff6a9e4f3769237e94006ae205f58c1b93b0f296fc653f7c5e13f0dfc3f88fc7643870739f17d8ebe7f7fbadd8069d7b24b0f025a908dff0f7f7f372fd5f8b6ae18167f876a67b8f8e78862fddbaf7f37c5e13cebd7f33b02f976ff77ceedbc085cfe735f17e9c15fde5c2cd08e6d4670126101114a3843de5942da18c2fa58c31c618e3c718638c51c618638c92c628e3c718638c31fe9472c6f82ed4923a28818465f9848a173cd461cca94d9c831ea557ff57771ac783190edc1efdf1b2d7811f3ff8be6df64ba256eb5c8df535f3abf59fcc780b7cbd1961c2d6efb8c81dc26ca33ef67d8d58db909146e39c939fc4e6dc1cce863f87e1d64ec7ad366e9591d1d55b1f7a0df766e4d7670c637231f67687a5ce2a47ed8a725cc4f9d6d170d1b5b91d77a511e72492be5406b65b5db972563f23928db4fabe7d1c8b01c6022080f59a92ebb87794d2eb944a34c371a7d43f4677eaf491acae534a6969bb7933f0a5fcf0508c19cef531c3a1cc755e9801b1b9349731839021f51927eb8cdc2e7efc8e5a8cd8a4feadf5cdb41f241948feea26c33998697dbb6ad83fed86dadc3c1c182efc2acfaa2214dbbdcd0bec7be78bbb749379e7a00b980892fc5a427d9efbe68c3cffae677bbc7ff662392cc5580358a8b0847b3d5f2fa960e54a90174deee3715614175295352eff5cb4f7de7befbd1855e8ede63cff78b21fd77684ff7ab9cd2c08ffb5794f10f9d7f67a82a8c0d27faf27fbf7cf89b3ae2bbb9e3bf947207f475f6ef47a7a510f8275d1dc89cfbc979af3f4bc4e7ecf11b9798f934b0596dffee371d60fb6f629d56282c0562b5e78390bd2ad960395b220d75bcc94398071d0375d6f3307d0b7198e7dcc31547d990cf45159908b996e9ee33c5b47a16c9e484f19cec420bd385b32e78ca5e758823132942fe38c3febdc3adad67ec55cb25314973f7df6f3616438f3258a4bf658c636fbc6605417be319321cecf64765db220f2a394d2250b125f46fb529bcf565a3b3f8bd79f91c6b8c910effcf972e398f9f3a1cb5f5a14972d666ecf490ffe97c73a6640f85edb843dced33ca438a592eba57daa55e7ec636dedfff06cbed47c52085fa429f5a997dddd9d7177d7d7d67593cbaa2b6ba2cabeab948d3529fb81faeb39d530d55d23c389d795e1c8eeeece54ddaa4cd5d98b2afb974b95f1672f43d6ddf4511a29fbf192fdf5f2f2b2d159b7eef66c6bd65aaa5eedf8a8a77cbbe586faebe54319aead6ffcea5a37deba8edd0d80beb4be28140a85babac9e9ca60630c53ed92e19c9c4ba5b48e09927a63d46aad8fe5b096c2c8ac0201e25cfdfa18ad4d3ae8f21dbd4857f623f557c7afd587dae4339c78f970ae3e1e0c6308031a0482559c13f29eb8baad75f5e8be1eeff92afd9052ef5efdc4292c8d42cec1ab0bfb96f06aba89cfc077428db050564ac078181be4a1d6ae560e54e536340205d6c89b804ed8eef5f4b83cfc27e5f430e6f47c550f5dfeeac2ea380bf5f09bc77e8c7dbe298c61b04c25889fcb5482f0b9f0dd08ff4117aec485eff5bc1988c3edadf3cf9e0a1055de96772404fb8ebeb0f429f4710e7eced18fb7859248177daabdfca5f913e7a038074b4f35d377ded3ad9ed703796edee36e6c95b44e75218f6fe987ff8e5ace6ab7aafb36e83590875f8693c1dea2c0780863fb804c8f2562826ccf087b5108b6be7f44d808c52154e2c2f7f6ce7bbcc77b56af751c3e31c2396803db3da1eb21e9e13fa267e42c4c459f50bf07e38bb1be6b1d92da3d559b25b01de4813eceba90c7597e9dc7498fb39e4028508ab36eb8dd46a8eedcba0949eb167d4c8ba15bebdcde71aebfa1b8b712dd848bd63d274df59ed8ae5e0b775acec16e2735dc83837eba65f36a9e100df717aeb0b7b9f009bd1ac873d1b7c1ef56ff3ca02016ea168f69eb68b80c6e2d7a4990e7da1e64ee7ec8f2b9a3b4b72f12b5227ce34921d493399a42e532901647b775998a10537870994a113f42585b39f77808efe8217ce36d5b589172bb66992c3ef7e8c83a8b51dfff34af93b9dde37eabfb3b71721d42083194f6dad33ad43f7e2efd8d5f1fbf88cb547a766e11525028d42b417d9773518f42a136257443312a3eedae2d9e9e33fb272a5365547e2a7325467a5f5795b75a376c75ab91cb2f7bd690ac8e4e1a4da6558cd46a9d9ddbb275c4282cdca8639e3d26acffcdf3e7190f0d218434c01e13dddd5cbff7de7befbd17a594deafbd93c0de170dd9dcce701e12f649b17cbb86629fc659fe2b99ee816f7b48f0ced5f4fb6bd3cc86667e5c69dd6a6a5156c7daa789a711c628f4af0c6792a2d09f997424b5eb1fcafc9265606dc2c8ee4efde7cff952f3e753260b613b7a1f75d65c79335f979a7c0f91d459bd1bc697acc52a362bf7d1a3f81eec2dce31ebc0c0fa77bde5f2b3eb441c589962594e79c2b2f41af9ac23e583f1c11ef091acde06c57b9882ce9dff17eb2a1f7b9d45a11f5d60e1bfbf738bc25904602b0449e89ccec5f85e933dc3da3dc567e2bfad7f7eace9db089f898fc93a0346d35bf7507ef1c776fdf37aa3e9acb71fdb59f63b7c8fac3b4af69ce1d492c6ce55ad542a9566e21fd19ac3cea719cec46853fa988e73251bb3a73817bf149fa47515f863034b1f3bbde96f9c4b5ffa2ed57fb5545f254d6cbe3fd147b17f6fc38431adce19a1118ab5dfd11fa5d2dbac6df692d617f38a69bdd34d9ac7b9c83ace623bdf7fc948510fdde8329c8bf49d8b8c650667bd6d05a56b7d4662ff605f1dc6e017db689c8b378fad6059026770165f1d9afe59d1bac5f702bb04de663a371dce39176d4043449f0d026301d818ddb9e764c6610cd6e7026914ffb53ff72530c7f7660b2730c737cecbd97b2837be22862054d914d8f710be25ecfb1200dd78d938176dfd183ffa742b1b5e56ceb2b173fec4a6e6ab1be9af64bcca39d24f6d3537a9cd47af396d9ca541e7e2f71bc2461c62a7ba243ae9c7bfc159d8f31046491f4943317e8c8e8fbd79d5b77935327c267e94b95147255243bc26d5ea55a39452ca38271fc3b039497f6118362595535e2d204288081f374036384bc8901a84ac0e6badd541136443432324242484c646c8c70d90b57fb90bd9880a061b766f37cef5b1aa153d9322362071166791e5ca7f189ff9dfff958f491f37156a1d135dd2e7b012c3e8c5b0ad236d40b61be722d025a99cb28894374088a0902cdc233ea5b109f3c6b9c9840d467ef0a5c137e6c757c459930692d2cfa7c13b5abed6f7c6597c99de628f659a5f9dbf93f42fc3a9b4957314dbaa73f4f428ecd57a33499f69f57a6ca343b4cefc49bf880d499c45fa599f89e6bd2e49f3cbf46174fad8393fc6943b2facf437af46c667e6dbb8f375dc3967111b8c380bfbf91766351556dad8394a29c548da6b32ce5112e988a684f498963d49233da6655b07af0bfb9b9765d9f5ce5119e7e8ac7d6191c2872aae0799ef3ed73fe64b0074ffceeb53522ef67e2d0715c107331d89f20116eab1c49c539b93ce4729add84f8c3319fce74bb1c3d1ad71598a1d766e6734d4f7ba3912de725dc71cbad863396cedfa2fc3f11c568773fe4e212cc5f095f18dc639deae2c6cfff41467d5ee2c77cbeabbca0d98870d8d030acec2589caff0127ebafe9981abb8bd042cb7bff3ebfe2f5c73f3669855df7f326bbe3fc62cecfd4d5c637a2fbd6f439cbbb69556dabaee1fe7704cfe1d637172c7b0c70187d5caf6cf9be9c7b621cef906e949c639ecfba77d835362f058a2a4bfb8a56712f3fe930501ca64c8e1c6c43cd6324b4a3fbf6a4cfad6af8f65190dda9ddb9b62f4fa1995611fb3b09dff605eea72aee9f9be9e5763da28f5a09e9e773d886ff4d319d8aeef919767d2f74a4dd577342eb662ae71a397d2601396d6c076afa768f5fdef89b38ec0fc454aa57ef53035a3e1fa14e63595fa170ff47dd97a75691d746d3d65a5c908e21d6e94b9aaf46ee97da6757675555a47e376de5dda92bef03df6b2b0f1a73b90bfff38e74031dff98fc7fce640cef5bb0e74c68985ed71163f28ef88db3f85b09dffbc9ee6d1fe28ea818e628fcc67d25d7dfa25ed487decb1acefcc34bef5a294238fc5380a61e90cac1759cc83dc8ad75827baed55dc7e4c0ad67fe815ee40ee396cffcb82bc70eddf781cc2fefbeef5f43f232aefa0dfff4ec03bfc8fccc7be7b4fae12937ffd79653460ef5290e0e762ef1ec0a85c998bfd941f67cd5f11ad6e2c90b3dabf1bc731aeef2cdec1b7b9f43570af0608cff863b9feaaadb357ae7f8aa2b66c738e397fa9c1c09c7f0ced86397fabc1c033fe51f3c19cbf49b33ce38f699529d7acd8066f0e687bbce5627fc5019892fa9446c11e517264d6ed727f281fc22e5ef8fdc57d54ab7f09b9473cf0eef57cb1a746e863d8f57573edba40fd034f369c437de7463d6ee4ac2c7ed43cfa0a9073559cebd2f5282dd366708e03705d307c7dff4ce11dd9b707d99edb6f0466ebe8e965eb5675ebfee53bee52f1a201e1d687a1f1e0d67749c0ad07b8f5c60b3c53df835e8dc9be6aebe84d6da8ad5bdd9356eb97b477ae669b0cdfa85b878485ea634f3525f5bb9c5b5dab5a07e0d6c12e07a08b7d673faa53ed0db1245efaba68e3327c9907f4012fc501d400631997921f11dec136ce05c176f4caee1d67c56fb5cee41bbf21091319583304611e3a1e08ef982fa50cea4b573aa464511e5804062111189c83363d8373bd0d71ae796bda3c039f084582edb81a2e5001e621438477c4874774a8b3f4cd401ee230ca48b8fd476fa4847ebed11f8978efbdd6b9cc5a2443662bae1701766114b3580ff54540aad793b08bf4d845bae8773fb90a221b36305cf617b7ff871f7d92a07d5e01a990a8c48cb864450c15d10000005000d314000028100c88c4a2d16034d0446d1f14000d8ca45072549a6759108320849431c418020c000000468066683849008ab4e0bb9a0e4ef20aa8b2325a495c54f98a874d08fc09b982a6455b8893cc2951b01263139671f5eae829d2bd16c0e3201e094f1cc62f963792735b5c8bc5f4887dd6010f77ec8781d99ab932410d5fc432c9ee9e3aa1e6e0e56b3560018f4729be451025cfd358bab67ef271ec55998b46866d4197be83d9bcc8d000b9c7fd0ac66e7c722d61ff41e23a93314bb669422bcc6c9f8f020c94e7b8a31d980c3b32fd46c411e2fd78dd9ad24fe10cdba97b928ad758de9b698c9d01dc3c596656c236b4452e4a34454c51848973aea80561bcc8f74e55a457b09b6083a41870a0fcb08743f3037c4a362b10d9d4807f632850266cd246b4c78a702cf46ad02e8b4d333b6cdce3ceae68aa453cf3c268a95a63b2e0e42e09217adb1467b1cd720c51e0e3ddf014c7b8534c2d02d3bd1c091b82d912394da98de1d2b8ea006cd5c14fe4ae2e55258a4c292e87d11712a5c61ef8d2fd42df348d276f89a760f3a01efa4bd03567077c55f623301b5343bfb9ca1d75eaa3d07fe20afb4116668d61783c999bd4c8d57e101df7df4eaca1dffc4dcc831c19877c3a1fea0a4f6525fa0016dd18274a2ed77ae48cdcba931340c4f9a769ffe19bc6bc07b8f125cf215412497d0aaae8cda91378b829ee88e8931a258e7482f624632e8a6ad8eeddb2e8ff662006c203acd45c63f341761ec708f215d45fff564757ba9a4b45e93074ad0622f6737822817a041a0147d1f10ad4579e2cb268232842afa76e8b2aea022ac110846bdcf40e7614bc59ca7abd9cc11f892c3d250a8b8997a7828f503587465b3e14dec934c6ab22275d2ee1c9a3109e602d3f44a4259661b28b294b52fd438f20f4540b20c01451ceb9700a72b5188b57547a890918cbbc9b4e43431f4a6773874859440dbcdb6ffff35ff80c286b82e3696551b7ca96ff00f51531336cc1e466628788ebc190d20225158573606d50e7cbab0432b8e9e52a7985c6c84cdc59705754fad2182ddccd4786b9c986e6f392b1e97e7b337dd1d3cb6eaf1b504059ecec9bc1efddf7dbfcb51ea855da001bc8597772695b500dcf8a9c9e4484fb50a5b76a8f866761736264b38a76d30c51f727f05cf70f6fa92b248fc7167a4bf29eb7c382d9f15a072d7479a10bf0908d5739ee1a9964e68730f14bb966c81c5039203793af86b14f22e9c6b7c40eff7fef2193d8b530ed1b86edfab39e73fc53fa3a015dc2ed394204d8a2d5fd4072350bf9942a20d0aa1af790e4e25603ddc2dfa6e57e09e5ba25d3bf78e528d7aa20a28223312cb7b4f6beca7aac45a890c2d6aae4dbd352f8c2a58bb2c63ba0e81c297c50d4294f380ce43616eaf018d0bb3ff815a0ceaa3df8b1e3d34824ab8fec8ba5ca20e4f9f788950607bd922a7664189cd87f5daad95d21d0bc5a58c0fbba47574735540e86e844f3b2b69e0c8cc8b8a01922e2e1e4289ca67fd25e04fa1837dc91470b49962abc82f1778427401b1e7d868c13a0e71554d648bd660afab71ff65814810887162410a421eff93b60c9ba368296e46580fdb506c29a69366cf530b1338a927f0cb1af8f447c66a6ddea67df5b9a7cc8da1f7e9599295502d615f5ae0eb149e23b2a7cbfc0fe444c792cd071275a1aea288f141fa4087c0a25475ee804a7a09b9a4ee233cf15a3ee3439a01f358e603cac0d971ada5f2c6abac4b4802f028e6e97be2385a90af3d063e8e2eca33b14311a649ea809cc562d7153feb6ec14c1510555ea23237381d212496dba2742fb63711fbfff9d59446ef30f9b2a458ebf5433ceb0de24adb9210d5bf28ec23c46d24ba204f6f6b9c5906c4364eddf051fb250586dfd7e97e25dbbfc89068a1fa0fd1f2a6556256584b9754089f220a981288e0cea1ed092e83ed640f103d15ef51361ef97e14f420321fa665082f83a778fbd346b9e4149a1fd64b2b5c3050d8348e6583a4d062c17d15433f85f03eaaa48401d32d80e549089e30525a35f696e218f117c839c7d1a45058d6728c080073f3a1c5d78e8cd2017444156259f39de02bc54da5d68c93cb7db2eab823b9afe85db10017c150f39d7adaee3f81e1b396f84cfd415c5708b8ad04e0458e2bfe42b901f01fdb621ce1ac9a92828fbcc61a5bc132b95ffbe3b5a4657c740d76b406f7c4b569e69332c8fdfaa2d2f12a94f879c8c1d081c4444b7d7dfd3751e48c318fe14970598621a4f59296f88114d229dd6b6bf32594b219c0893822e9aac4f4f254703a83aa9161792fb2e1fb3ef404fabb3c067cb63add0aeb748b818c42a370ad3c7eecdfd561c0e0a75d8a8169807b8fbfbc05e17bc980009eb3ec586b72587db96e898fac34d0e0d533afa07553aebd4b26a5a500bdde746da39bafece9d0cc0733fea2aea54c0ba1f468040a2db4e4db1a6f891c485e4ebe9302afcb6b1b9206516f113a1264777b989210daf20fe865e8bbc758a4464ba5f705a3bb8eb350ef2486b508ade3c0efc0f9c9baa41fbe7953c88720f5e95f36c2e91888961e05e3a27acba11db419ab6369d875f827409f6c112f9fa61b3baf9e80384e7db4a51b104046601ebbfd1add50ac7bb0ad8f88293866b69ecfe6279418dbbc072ac6c649934ea652547d5d9938c548770acdaa4dd7a9258b88bab4df95cf10596193469a7fd1eec9b9c5c9ee9cf490fe12ad00018b26f4b4f88777269e541c7f8143eef7133145ef6389d24fe225d9121d94aa8c56e864258d731ae54397b24cc496db671c0a7e8208fc472fc8eb3e4c0ecfe4ce43f2025bd80800bfedbf093dde3801d0995644843321268d5091d041c8a0d2960a56a8911d48f852827ff05478fb654650c9757be157a76409ff043f028d5664dfa314604658c1e05acfcbeb2131ba2997a7629d08478b3840847462ebba0db960ac973608f2bb0ddb7d0448fadbc3786a89f1bae1e48c05f31d6d43533b32d7e6f54f2cab8fb2b933270cb2b00a028c39162ccba2f90cc88930ac1862e396a1efb1e529bf24e69a7b6c0a4ac44b9ec113414804e1fcf03679101996d7feed8d6723dc2c5d1d6ffe7e4fd2f70590924aac774a0d4db48a88b94526d9ea4f562d3abe75082549bbe08341f78ac365598b46d97591240f3907ba8a62f44a0b70e2a8bd9577a4c2fefcb777ed5ddeeca8b6aa18f2d59443fd5359e0b0dc8225494cf3acb7d0c54eff86662cbf9f0bb6db1e096251d6aed8bdb9a92a8774a1736b69b841312a0e0716579c92a1a92c92b0c420e5c186e2f6c04a346056b5b67fa620bf57ef004bf69bd92db21bdd88b9640d4243ee039f60de38fcb2802e86b234eca4d83b4faf06fb74c4bf6f2562361a7079b967d2896b3c0f5ee1dbf997d2f63071fba6429e3a22be5306dc1259ca46149cc167e73b808a2d473f4e67b85deb681bbe2311712c73519432ad129b4c889978642ec4bc05d7c64e473edeafc9a083dc03ee33d17b825ff1b1f1657d97571d797e3c43656b58b77dab3cde130e690ed6b2cf1186d28c75445d5eecee3b0d7f638f68642662e138bcfd6b56121ba57b2afc5c3e208e2a3c0c5b77968b11036c88fab8d7622c082581c1b299f326794e1afd63c68dfc14269803769b7b0c978bc459f7ab7f747acd304914ca55286fc41c689a042dd5a1a24fbbdb1bcdb83b15b14dae1e93a3cb1e0dd4ee3addacecde61c6fec083d3717b236164f9363b2f6e35d9f23c62a9464440dc76fb155c300e0f33f0a8a71c21c046212462992f815c9b8f4b6180907f408e604222cb88fc469d9a2e8401aacd549169ab4c221ade6bdad09f65fc9ec4aa42f3e7d494e5c1542d075f71f8da96c04320021d90c4016afc546675ff91db376fa339b3912251a3713b56436a135db675af88a09f2bf80446d907383a11a4e74264d925ce62ad6b7935bec254c2a68a11789478f52d527bfb2dacb96b4c8d23c03de7186a832b6749a634801f69047b4bef12b2c5b6d7be64108a1336911310eecc41938ce81a03db9a03a66ebd7d8b8cbacdff97b0e9b3893711ea03cab91a0e438e3c02a6f89143f707772e93c1c410cec93528ce8df72a1443bece96bbe3f93e53d2890b782781ee40f1793f321237c17c0e753d6daecb79df525887ee539d5ee88fd89ad9efa07fc8947f87b2b12bf8caf98a260b0ed35a2e54558b91a74b71596eaef675cddf245cc277ec6287a9e0ec70ef5b000986755eaa1dc14421f1af258dfab77abadc5a2390ea3230ae52735f996c277e68a426027b22be2ec2835dc28d4d8b3d300914c283737a32d4a939197cc2365961dff559077c90b83308325a17a7ccd38d21a1c3c6398ce56edb7c63df1bee7dbf8147d2b9c14ac7549ec1d389cc8199e75d802bdce0e90c9092072f0994b03605caa6399c704c985ace67666100ade3a751c93a6be8f48c9fd2959012ba99d1ddeb8a99a78413c6b5fb246b4c9aecd0edd2592afe4b4a3ed7bf3e3e4fc863475cd78bad7cb4d7ef4e852d273f664766f1a653cc604545a4a8e54ea8c8ac552d5704b29e5c18b3cf0a5a05c8c808f1ef71592518f81d9090646f03a704a012f86d3338fda6229e12ac744baa5bc2d9dd9df04603cddc94e3ba400d7b663921328b00e010f008b0b11a0e921e1827a70b68e7717a8b8440b2863a456f4cbe099e590e4a42406a44945587ae77a9d5f3367dd55de2630e94598d3b6f5815c4ad5551f99941a165db991521a3a383fa8096510684a01da83cb0f1737442900a9e416c80da38152d4fb2b244f0d257ecacc0ba97a83eace5da8b2fba8a562b6fe053fcc5ea54629cd0bb449fdb562e93e5cc4886ee7849a0f78865afc9567d73115d1fc3f199780dcf3512c605e4779040841b9af9d0243a6bc9aa41fad1b454243a4d48fc9a08a01ba8124d24bbe01451e1983c352fb03b6ce0742d49824b194459deb8715b2e0377cd65277b58245b2f664a2ebbb5c0ceec30bc3f8d894213d0f9628aeffcd727597798adb4adf5948918e732b9aad0bbf48664c9def6b1f8947b5525314197a3e829554adcf146c012b24e9a7454bcb16d548f0dc1b7517fe8ad2805b5515a51f2dcbb9d2bdab166f5039731903df33796d37c00f8e02622db71fb1e27b01f8ccfa1c867bcf897b3e782d2258e6193b48a3ee21ab58790ff730a6fe0136848abf959d6a1757641b155fb2aa89cc123c6d87b64504c5e02b853bab2c61b38bf0880f32d76d2db30b44452ae83e8e90e6002ec66da92533a0393a656e62c8af6f790982182010ebb9fb6898d12c20a65e957789578c045e61e595f81963303b57534137f3d083be00d3aca48d702d0f9cad1f6a0d039597767409de6bf8a5b7d9935241a56bfd7ddc576ac89b91f99981072360c5ccb000a7c6d217939f8ec1fd956b5e7dfdb0d5c9f323394b9f349bf55a49159abc781cbea5b3ff0e9a3882f7aa2691aa2324559f846795bdc7d155fed078c0836a8962fb6df6212147c8b446e9ef2e5dcda141373cd60eb5ac47bfbbf1ce75aa9b98aa4fb14db677f04505c575f8cf4f0b67a7d792cfb135f56d1f1c02819aba5004167852482fea508c7c91de26dd0ee03fc975879d068c5c94090fc9aa10bae96c32694d546ee7324ba13d3424f78e3bdb795f975799ef1148498ce969c3e915491b888b1fa361f0283ed0439e5540bfca6f8689874941d87f5265febcbe7859d4014f6140f9017c416dc04cc3e47a88466d9f784065ae013efa98debb696564cf963e7490138928aa7dde0a777821a9dba8b65eb29b2406dc12ae1bb4a06abf2434a701813d5e0a9add6b67e1bca60575304ddfafc3c97cd3252a27df24f3a99b1ab8292de2d233cc3290fc2b4f05fc2b4f863d9ebb3fbd14ca2904924a5afc9365176294c72444f5b71a138c90f53af9f0ec96f2d35dc1218e356a821adc20c36d901e888fa217e4f8b63963c941c35e951622a7d59a19cac8d2651ca0ffb9b50ba623923cc56b77894a684926029f6362d131178f57ddd582ffb8b195c0ac52cc1cf45df1f29880735dcacbf8276801f938901964f389e75e8c573c46facdebaad39cc018e865549ded9d77bf234c7a9e4be806144d64853982beb20546e6ef6c6879c672c92da1ffd03384c365fddd1fcc67176ec1e15d09ad8b99b36115851d15dc726d23461b85b607db901dc0a4e289c7afa2b372e07caf2c7c512b8e2b37c7a8d092c8f4b24561dc1936b33baebe9f4ac18dbe2265b9743a3d19c356a16917145065c0ed9e2160c15e8c5aaf11792470ef44fbe67ce8ad6ce235e3cb6c828e82579394d18fe7e5fec5562d9d1cefb546e512889fb4f24e55e5bfee80e658321155ce1ed7ebd3c4f4e4eb65c879f24bc240145ff5b3e25977858c018d4f2e0c37bbbabcee59668d5efd2664421caebd4415972a095b4df14558e9e1b60c7b89988fe7fc546ec9ba897d2654c05f8d9dac25a5f80945780f85f56fcc3a6f20e7767f06f1d3ff9f00c487affa44836cee89891ff73d8a67f333019f33ee1d8ea79a30f07dc7a9f015caf27357c38694627efc8f0f884558f8f581dcf3b803122f882dabc2f06f6832c9c8d74dcacc9335a707eb343cc9e3a40bd3bb16969a7e1da72c8285b89645324f909b62c2c912ee1b7706c9c539a216d7af34401f4d459628c7198064589285a848743fdcaddb2e86134d263e65a1a5006c5a3c0a88ca05c51611d9f6efbcac48758588732c7c1972cef4d7726613bb09403afeec3e24e04fdcbebaf6e0c939ae0682d7bc678680d01116e026ebf2ce81fe3dcb38537f577524b59da7d88ec17566d1317debe587025455846cf4c0ce330f01f97660a283ae345e914e9689eb9380fbe3fa6ab01d84e0d1a5330fd30f2b982859c395ed6ee80d485149ef0caaf909166a735a3599bb17470655d69f35988bb577af075d3ffcdd64e0817db07b4e0be934b3b602f37153dcd4d68efddaf3ec9862c71b8c5e9810ad1892d68757124590b4a43c24c0883f00c2395f440403e2e2312cded3fbd33d29d7b50ce38dd3278a55a5cef1a8a69b818a7f473eadd18da3a019ec06da40efb819e59150a6426555b2891dd64dd2ea7a70aea6367ebaff8faf51bba0618c9f797a211dd0a9b9711b6fe964656cc88e230d8a8ae8a78e6024eeab8a32b0f6f44a1003b315b0d1e584d50735a7fc025bbd7d58975f787d0a1918884d6521cd484552cc1756442512f9602c52df4312b5a752b4550312a07f618b20c731acfcce8b30b76a2021f71842b417772cd38dfd44d4d562c3e3180909dacf1c2805c0dfa3fbf528edc0f229f2678075a92550524b12798c73472c432109cf9f6c8aefa09ba98111b59efe65ede385b25d95ac1e92eab358a6cb9971f5604defa7247eb3df878735b778103745c3284a86f567a6ba46c4966dac883acc768082e50a53e324fac4d6050de9ae7e0d0c0bc8d3fc0041d849160934462eab3e037f2bd66229a57d86405e0a785651ec1c1b18682b83cb36378a4344bf014edf928c8c0918854ea2ade309ad6eab22e46f4a0844f0883d47d1085f28385edfc3cd924a00104ea972507a88cdce176688c604b4199ad245823d7d2ce776bac503403a8d9db4e7f2a13763702d402bbe842779e55c790e0ae34fff95e0ecf2157ff0ae4833736559fe8e2e594775340167a8df87f415a3d4b0ad1a88096377330c44a3b2ddb1b41e29cc05710f3530f00d94d8ebfedd60b6230539c1efcdd14f55a190c6d8bf5f02c76d912c73e31235cb504a1784191560a4ad684d2cf7575b2c3a9b6818ec4f48b87993f3ae82fc163d15b60f2d1de91461105db4b441d0d963200ec0292b985896647e115c64540818d8940abf20c233ca88db862aa04f2e1dd5b65372d2235e22e952adb636841d51f1352697aebde9b2f65b6c5b72046024ded5cc587e38e95eaef5741598b9df9ac9288ed4763ea4ff330de4cc5b69be961ace34a7873459cb88563974264146214394039df65d7e9c910a6d3bd2bbd90a878873dada5936303f0c78655f4408c8f5c6cb70afd745326d8e2fde637a39428368e0994547a2637f9ec6e75918c1d7a5f7fed6fea305f46e94bdce7f19adf7dd330157366526c40327cb81e5080bb7ba9f5549d4409f3e598688067e3139280a690d5b01dc3f238c15b820f5b6a0657f19fd2c667e1a752f3dd04f1a6fb8b554575630d9c3f5ba8b10e804a5688e975b66f580b69b5c6472bc2a86c442004d056f260986cd5e1e2a44557e0bf65e31f7870e797e5f0a972ba2a6a7fe8e5f32f9e063bca708b05f2522803ec39f64446474fb895d4c05ea6d4a7e59b7ce8ce8cc15d0766e7208723d68f40298c6a3b079405a1e8269aa35bf0ead884860985a7bc6a36542f7716367ccddf3e1a29ccfcc2b6bfdcc5353440ad94b10448cd94b833aee0ac31c20e293662f26fd51218e051f7c50796ece7d45f8cc699b651b7face1368611f32041ac6037589cfa59444347f0d52fd1702f464822b37259831efb19c2ffc7d5fe98642f53a9942e9d2d3159983c82b90c0365d68b70ff53cc7e435998ed4d7d7910bcab63bbb945e14628b20f494a09a0db048aa9bd37909fb6973ce60545fe966cfa69e1aaf577b9401d79fed280d9b6b7c820cbe5f7794d84489c7059db1046d0d414b4b55b853e16ccc1debed89d9094ed3cb81460c3b5f1602fe1c7bf93a6480cd4bc2084e69531d2e76fc2763c19a95bd32aa7b0b77ed827ae984d942b04fc20ada191eb8e1ba20b0b8564a5cfce7088db07c34e2813f2a54b9a50e4fb8d4b5a0fe955184c35266039d26cfe4818fc4813bd739b4b6d895eeb80a5155635d224af008efdbf8a24490e83a9fe3b5b48c28dad25f5dfac3ff2980a5a47556a02c039190867513a64881e59427632c13258f3991dabec011b06d59e2c026d9bbc052145ef838f8cd498fab68b2d1604f53f160e65a0a8809d05dd96442f87280ca3c6234f554fcaed91953da939fd12ddfe58a82981a5abca979073405d415838ed9d6af7fca9c14608563a71d9bcb84ef32b4d82322eef454406ee9ffdf0abe40c0646de86c710ce7479890f60ba8586142f13c4b7ebdfdf470297c91425f4d12e954fbaae30310d62267b05c2bcf0fca064d35e7d74bc618e80d531dbe909af3a50ecc99f5d882eee12e696e023ff617af27802fd1df68a951069cc9fb26650faa6a4dab8c489aaddcd33d66b21511aa3c975bdfc3fa6f4f6728609c0fcaf111e612fa074f8d8fc07c467b9654cae758c734e9ddeea7de8f45ce4fe523205f375307cee313ef12eda2c404b993b5428b6874b5c04a93497e8624c59c8a0932635689f5ab8767b9ab633ec69718a81f92b644afffc589b2ed1110d3f808e5c095fd52d950bc9236c1e048036ef9403587fb0a38a9a3b8cd83a718e2e423af5006012363544c1c576e7fe636478d9b810a70945cbfe5beeda9dee643b481f812a2d1d6a96b3d5d3850e67f14ff04cc91e53fc208ae90104b1770d4dcaa455013cb063a54b732a51c05aa94be928bb63957868873b7a134ab2024c389a14dc1a5cb5855581064b42f8f575b5c8fc56c5479fb38360b2bb6eb27eeb5707d19dba8c8c07e35394a8e87da22292ae596d1924446e2ac138e0a0e985006275b0df216156395a65e12dc4ae33388b8642363a4a53027f2526de371e2b9074b85d7b1956e411e7f3fa5098c985399fab4c08d8238f642e40c70e4a8a5dc564bd5e1764cb384cf7dad0de969b7435d7a63c12372cf79a246167182ad453affd92c0af968b8f4ce36c0cdd462e77a42d35042f679568a9c201561f2dc89a7f8123d62c8e918ab5a6798eaba49d952cb45348401f278d5b3cec4613adc1742f934e50f0a1ef4755ebfeb6602305e04f035241d09ea805a5409f0fac95a82efe6a7d63a4fe6d57e653e9c79076fb97daa0db6f740a2116457a028abd1c2ad61efd85d18cb35344998386b7abd653738cc734894263f25ea13a7cc27946d2c12c76706c19eef481328b5255ebd200cfec81e2861b5b851a4bbf36ddf6a542e68f53992f162e4f3d06700a7b59ecf6304769a1f4b30f9ce0e5e33f6439cea58bb765562ed36b2325b04a3c509354a9712b7e3734fc8b4ae442d4a9646975018b5e3fe861f385a29be1981b276a7fb68baf9fecc233e8865540267aedfba1c82d793c45882a240fe60a02579fe026b638634ba25f45a2cb2b947931ac1816795bf84c31433ef9f95b120203028286004559c9e6677d129087dfb236214163ff43ef0585382416996b4fb1e7a3b6002363c5de5d21abc61556c1f7c493dc0fb497010cacca26041d4cb895c83c03835595908a1623f3fc1901ab04d53d08ba9452b9d4c3ac7e371741f9ff4bd7092c77aa7b2c0cb2acdd37c542c888e6e974ede39a41851cfc645230ec827b063b898b3a2169bdf880168189442e3fd6d2bb59c500e6252588a9d37324bdfc690c87624efd764091b95bc05f91348b3a9f7b938b7cf70ea7a9fc2e0a987b7b92852fa730e5c23761fb98a415ccb10644872623a0c3081d0785da1348be6ad8f954eee4f365a85f0445d5a8df0488b388dca8c64a6fd2ffd5aec1e0e7e821e5212b5dc8c4c2a9179f4106c677d225acae636bd54677bb44259f90adf77a808dc834a46b6c609018e1767be058335ba6c71263e4848c19b574ac33adbb52e7bc3c4153e3acf8d795a5266d3ca07da74459334cd86b1e14ce587a53368b4a31ea69b9083f3b4b2d04a305d6090ea9442e2d8e60d6b5178f479fd02b7231dde8bc822f05e3bed389ad00bbe3c1d0d7620d75af5ad54578bcc125a8fbb075a31acb0a5c4894b6f8b5b00a880594f33ed455e2d254612e54abc67430af1ddc588f93894ebeb1b2f568dd68f44ed9718f933b01b461732d7a5f41e4d79cfeaaba3b162c41f5dd5f3ff7a22a18477bdca6541db00ac62f6db4eee3cd4f4c75908bb6508eff3faa1e5cb69d48f88a6f948fd7c6ddfcb04355619cec80b7b2163d795e98266a05708225d4ae1e85886d3530e31816986d420b542370df6afc62223d1686427fc9ce4c07d8a3c42975b8d389d66128e99ea429edd0e3c464893af1e7d992dff061987911e30e98a8f82f32e8f1c1fb1ed113a201c3dc753f9969374e6e269c586ccc589fdff3c9e078ea066de3eb9f2d60f3c76b1197fb1eb43a4e849c958ae20cff0d6c6d3b186f68f27fd57a03940ff3df45ec2221f52b2911a6ec1327122b8abb4cb076e26a935001fbcc074deefa22c32764aa9e899f2f65a208139d31e46dbc434f831e6689a10b1eebcbbd812ee4617fdb1b35e65e167363e952b59c184051b290373b6d39164026f78b8ba3b57ee866aa6cc6b7e0a9a3f5539bf0e4620b02b15d71b21d9a44a6cfb8d0645b4f59ee7d3e1ba261d0786c53b5331cceb9a7f98aef3b2dc1746c49e55a88251b69ac1035c9d4b96715ff87fb7d509c679006e320ff4f2ae703845b78fa2816c36a006ec5a5a5037905cfbca09cb4eb97677578f23a816f940c1ebd112b5b6ec8e83311afb64f7818233fe3074e2e9fc15e5b7504e89a4d1254bb76f1a57b8ac1d95d0249387726f72f3181974f12605690a2590ac74cb43ec8c93ea4a528a1440aa415955433e61ac5b0a41b269bf1d8c65c4dab4b3d213d5f0b37d16841720d265412430c7d0671e61161c95c6cb8753dce88166e01249d2a1ada2a95610a88e4bdd9fac8f984ba07584de8e9b7a540c7b433d4d6b97c11109739932169fd3eab58497fd17b3cd90c080f589331be757b06a81afdda6448194c0874a22c1d5be0bc85ecf0edcfafe4b7e2d694d9743ae85c76751701485379a370d10d87d1d1e5809ff3e53046a424d294e4128d9888cd00d00dc02e1722f4bb8f443844a7631c0360e830c486bd16656eb78a42b4e22b436b64a504b1d984af770562244384560c64ae937e6ba6aabec0110c5d989f7c95cf57ce0aecba395ab4929ebb682ed59b112876b7c15a016243a00c628d619f2dacb8109d8aa4ea81a220dad50c8220698c80a83b8f32c3aa92c8e43f5f20ac78b438618e71e7425580055cd59a525d97705e6ed12c64df21d8c6c7d8e0eef90c6e62622cc230c87dbb015881045426e3aed3e7cf24b4ad901ad0cd5ca32e93dd0b7dac11e80d2d7d1a5388a0c73513300e7f57debabd9715a49a5dc753cc51b2a43bbe6e1896ee10e5a6b28e33ec82cf33a98e55b34ca02238635ee1a7bcfc9953182b939dcca9097553b890fa47c2f1982b90b47e3926d9d2e3257cbfb8e0266e70830bdce31a2e71c37d5ce382bbb8c10d5c708d5bb8c41dae718d0bdce2023770796fbf6763a646773168e90d2e2980a98fd6072d1248996861a29ec81048daac34758c68a3b07e38661f12e89d3bc6ca12caa583ba2d290f9a315217636d9528e6896c24647a4726383142c89d73c1090b4de9d0034620645a870ed8d142889d30c00b0b45d8c90677204c42070ed87142121df6c1440a41d1c106abd636507d8d89812d12d989f76ed78e8201c7d29799bf7936a881280eb3c16b11514cb7ebc4371d999a7140e12f9b73e5e1045b464efd3b95a7653b2b9e8024468027464a07621efa2cb7c931521ca8e9650c156ab319d04980589977d300133f9945b399ae26391a9d6df3c64cd43942ec930cfd2e25c1c0f65478b41b388bd189bfd29875b3341ed056cd0e8c8d14789c7b259afa1fc840736ac95368f6e9168081af6571d3066974a61dbac57a2be6e0387c4b1c3d9898890102360828a4026f9fada678a2a7767a5345bc0ed8a24f8b43a6d328eca0ac70fd848500f276e731a0ae6bb601e1adda3140d0dd7440caf7e518073690d60c1c1f50ebfcf78b8c49f4631e94f1c631c58183438933858940b47c686d191219f2f77d88c43570cc667b98e949fee2e126840f9df131f5f220a1914bf331d1c5ac102a77219920fca759a172d724f08debf1d703a725203383f29231e56efe77bfce4d41dccdf7500b5603688577067dd4cc7d5be42e2a88907e33c221f655ed5250ff89e80cebace8637fc2dd861513d7c73814ee6aab0f8bc19c8400e7d9e806d049eb9911880264f1dba4353324428079ea7774a92193ec7e907107648b9105ce3d0ef4f4d61d3b5b56bd3a124aa89dea6b7f74ea179a8b43984e32779e3ec2f9588850166a0d9e0721b9a5cce72cf74679b3d94b97c62a5d2239c0178e5c0e0f8a2931e6440d9e080569f522a5bb8929018327254563a0bb5b25fded015b76ed5fcbf48c6c8cf9bf14735ce6ba448870c1bcb4fd322e4eef7812785349fe5e0079f24b892454ceec313db39d10135cdc26f218dc64cdb6f8649c395f40d613810aecedcce96ba23b4e3b8751adc21e9efd0d2c2cc50a6056cf878565e65c07669bdc8ab7e4981da8b47aa77b6ab990c945b056265e6a0a3d7b8f5cdb39fc5d36d0c04e10ea02540e4d6c283087f19670cd2783b5a70b1a9429b731197b9642fac5c0231aa335f5b40794c8edb7a58592e0d5de3300b3a9cc873f75faf8ec2eace1828e0eb52dd574b78cbede67ccff311a401a60e5ec189c9ddd2bcb6149d9ec063fc8bac16b5d41ad3b571a8156f1ec64b06582d223d47e0921176d3dd94b2693735fba8eeb5d4f4bbb2e568d81a32150ec0c3d4f262f3c233dad5769825601636c151fcb6d81ac679b042cf93cc3398f56590e7ed6450b64a9c2282af263c14259e5057b8a3192c958ae4a2360d82747abde161428d7e7624656acaa9ff8955830470a7f024149ded33b6f4aade2f994b7788dc3f6339fd95d425fb6afe261a309f4654661615150da9eece5ca5925a3cefd774b1b70658ff643c9137820e054c1e188ea2d2bf33498c085c4a3bdbb638a4b9f750b4356fba137c8bde03b9cd75fa9e271659b2909c3a06f6ccde1dca8c9efff434e7253ff04b457e02835d03c04b4ac63209407b48974e78aad7aa1f149c3d2963d4ded34fe61aedfde1b52b35aa3c6322f7b4f0eddfc1b18db781443d4f68e55439a7765f2895d6274b781e350a62f96c103887d9475135cc81b4b07c923413ca17f376eb15069958515f518c25002d68881f7a3608bc281ae4cbec88c153123d7208284469e4a8ea2c366aec0fd7bad4dbfc1882e72aeb141fa3812e526ae3c8e90258a8d26704699d9d7c446bfcb8accbc25d85439712811496e491d4074c5cd67a67530e804001c4302cd96a3fbf113bf53519d4978b6c647e196395eb7880622ea5ec6c878a5d6b409ef80c34d555a323d6accc42c675a56c082787172eaaf592e4075b5ecc81a13e1b804356838b39e9112ba1385bcb57bf8e0a7608c9423a93db1f80855a0a54957f25f315370435a0fafa93d8184448620bdf9c5401b5f059db72ca1eb915b7d86e05d989f99d273a19e25467028d5467bc40c1b3bfa85728b9151e379d7ec1a0e9a53617b5b870ef8410ff05411876e120d062e538104a59ba142c0a3092a208fd004a9ca1bc6f688eeb1c781442a14aa06302b82611705a723a644365bb5d9c42586bf2eaa6aede2520c24cf9201406cedb39289ca554d1040d7e2c9d56c5e91933f5cc0444b3a48b43c6777b85a80f7a936b56561d60dd92843b399edc4e8c1ea9988a739932e970244529cdbb5ca51466973e1b8a9ced0efee81f3e98be58b8a325ffce9431f494db7260c2c1fd68f4fd6d2c4fa04386fc6b3bd0179efde54ba20e9e077e0f6f5840ad33ced03f317190246e6410d216210cefc7ad803ab040ad622423a7a9222f829acd252dcd38fe3e5f815b0c0c2fd761b85d60770f1b31bc946d356f0381c7f6acdeaf392ab9008952926a158b63efe40000e8f66b7432ade75776845e81da1413abf00e05e08fbeb1fc399cbecd3aa7341d87f46703d69653a17776f7fb031de9f4e0f1f93d883a99751344c68c2b30379121f6c6c545991be957d8b31e0fbc7a1cdbae11ef54676b61166f2a8014ba7705829f3d9ccf1840793b352b2a1a7c4e20a1fb83fbe921b14826495ecc3e5eebfb664d0a734d84bf140747b664a8b545c2e29a19525d718edba788fdff30def00c2ec0cc6e532bbe594eca9ae91c49403b3951b896ffa3048de5893d71a4398935f045c5a17a45b73c3407c77af143fc7e3c344ca85630587fba42d4b4b81d793e175aa8c94722558fa0e6e3998705aac4f3645f2d34c5807f1741ae42acb9389a7bbc4aa954d7570954da3f61b15748489da1d8e65c729d1eb5e91bc264f2ba5e756b07c4fac29be4d89cf6c2bc8a84adeec4080cc373a0c7a0bdcf47d1d1d0677e4001c932fd02f291fa34595c229d6beb6d6a7afac8cc1c93d2fa0381069ce54cc9b47bf096cc491c3c02c142c5bc61710618942778e9a4d0ccccee0b39bd7308a52581fb58ba5fafb8963b627095edc0953290e07fb85454676c7969d6ff832164d5e188ff19ac4ce2383231c1ff2b2b015c10d003427ac04c705e413a85e831b25881e4923bc020016822f7b1fa5bdb17a80a823c985c3210da31f8d4f18722e8b80e81cabab45b33f29ca835159376c55f800956c8211125f290a969b480f598dc3ea7183b9d3d194eba8668e262fcd25907a3ebce9eb78e07d673ef99a442a8f1cb73764f7f8d7e54f3879f5435d9575d7c2d7ee2ced4405928ce40ee6d3410928ece83679da1b35f11f16c63aaa8bf74f9bdafdc2d0883886eb0cc35ab9d8a400245b985f09c575841b5935c864e9c588b0d6cbf3a295102323f984395b1f1aab22fffdbd1abdf99f1f4f2e652291b61ee256f33db44a952263303f3b052834bde655fea6a339c6bd72fe659b5279810b63b47b2314f6db32324e3e095c8e038e55e42317e5fa812a04dc385486e1c5f65ae450bad12699d9ecba7cd8e9221e7021f7b002584ff899449aa598587d4aeb2dab9cd1c9ce511a0cac39a6748571cfac254137516777a862e2f2fe165126dec3e45a85111338f7c367d4d7bea9f0d900caaf4886d24f69793f2c4f230bcb5c00e4c9de441c380c7a0c70eaa15959aef95bfd339226598ed4f49245422d17a69fc1277e0e54ad04bb318bd3e2d37a5f723f4597a9f734dd7dd3f535db46e7589c27d02d10f4f1d9d3aa5aa45369e291680d2378787b2e50ddc9431fffe2448a74b71f2a4a3bedcc25a3070197c55d837f19dd3b81e302cca8db4a702a6be1cba91b19330d94a07772f908c69bf0a8ecf9bc3b299cd4a7a213abd9602355e7662fd4b435e7840dc73dd69c33e3e26a54d2ccf814652549930786d7dc7614fcc539a839d75eb965e9632f7b6d688fede61afb7abcb7057237382e0d67a6607501bbab2fcefcad0ec3dacc696e9c0314c40448302662555425e1a8e039918d433743fedc95a4f22cc722b45ef75eaed6a03d9f85e03abcbd72c6a48be3f6447b8af473cf3da376d172e8aa1e781da152cbbba4c14de8266a99ca16ec2bd7767d3baf4f93c161c8ec1823c7799a7f591e0d04c56c776295c45f9745cdee39d2b8da3cb8e2b4a60bbde2480ce227f8f9c6896ef1e3b109f783529e051c0e8f5a07ea97c72f14af540ea59f012cb7c5c1d52bb05b5f79f55f5e29b6a9e0a714acb525d18c198b9558ea2781708c7534b7395007b8d728f46271ad58b483b8720c662f958b0766143e6d57297d123f9806ddcea84319fa496594fa305d0395def6b531e83e75c83c16409b2ae7beddaf97a7e10625688c69730d24b40c6927794b6f6fb5a45976447530af9c64d7a25f7682a26bf0bbd471640dbc72d55bd39d5fdabde99afc12134e205dd748294ae3f3ed7164aeb46355a5f41281f7d0e2314525b0dcfb3a469e6283e095dcbfc4be70edc51088ee262cb0b1de750637f81180a65e514aa1c2fde1fe0634d2b1dcbdf85f9c447ab7374eb368152e2726c1a1a088557d75de811e9ef466daf21016a56b34b3ce6fce27930c9edd0dce272438c40bd88545291dc07a55e34b1b570a1401dcd84be048a93d62dffebef775312aca1f3e7ae0f175f1863ab60a10e88ec485c91ff6ba98e783403365a8d1f60a51b6b3bc07762ab61bd081ae9d73cbaa0ff86abd58caeb37e4ed87d7c30f832350747ba13ee112cd26da86ae33e1862f9b80c8d685abd1f6b9d0a50139aed9e1402bb637ef591db2649fe665bfcefc922c93dcdeea98b60446154855d8391f068bc7fdedfe115b82b7d869927472a9b9e21b39400ab740195aa5b4085f2ad50f1c48384a53b444723a2eeae20fd8fcd4685998a90ad756aeb83cc1dc2db777cb471464f71d403d477caaacf15958b90d1e9a47cd26788ef82fb51297c85729635acc696e74cdb96ec0a07bd4fbce2e774d02b3a66e3e958bb90cb9bd1007a40d0e47d9635fa0916ca5f4645a90a4dcb3989f8483a0a2a4c80f5d0fb82adbb09e80e54ee43121d1aa0501bf2b431ad3d17267587f5271d78aca2798f672cf3f38597e186f8ae4f62673dd07e8c8ed3d3c41a99e14f0ec9002dfd92e5f302e6c6cd111ca3b17339dba9e5987a4b1e3ada695a3b95c3b176345f4285c8acf5efb0395874c0bc8bfa17672867c05add1b49f612745788d3d43675e7328fd796f24fdd853e13c82f3159ccf744e995ca7fde13867281140c80fca20f895add8c64b3eafe235757ec25a3e2b950e2dd8f47dd7f2f278fa014597791372171f2b1609cdec22ee9cbc9274a2e71674415927009fb7f67b1f32796dd0e48d91d44b50c4f5d9befe40783dc9481e2a6b8e4f158569be3ba07d5e7c083e5d128e631f71d94af1e161536793fd04b02e932e768c99e059451016948828946ad179309bbd6cc4d19a5e29855961d330511ba27056ab8d6ef9af8adf7a3d5e204e542855be9ef55c4a5892914db5c1efaebbc1036439bf14163dfebbb8e9eecf40a01243a0f438b1748c72eedc3246eb87da48e2493cb45cf34589538829c57cf4eb3419819f29b72f80b1423cd97bd5064d90f02804fa027a94abe20df2c0d1fa87a8dde1c50324088075690c484946427af559e2b26f41950604418428051a673470a5f9186efc1d61649905ad23ccf01f511d2fc7c182c9d206f6b1b9302a8a41c0ac784ebcae06b3844ebe37c648f7b0c76480bf0e1fde4c5823e7e4a54051b674f5568615a0b86080ea364db8dab53f5947cfcd6cd00fc5584ae666783435cc04d61fa9705a487140cf2da4af83983c39cd4ebc3db70cde33b866de7bf75d4eb4c2a3319fc28de179197d56e932e61e2747731c10f145f01d9ca492f775c940e8716e09880eafe24fe1957ca87b748eb77978a9a682d800b6f26f7582603fb186ec4e4ef53ab99a7036c9d5a571d0c708ea342cea6109f952b89a6d35d0971e462f4f6ad1d56aa3a4a19b1a79d13f842ecb22f9efc461e7b0ff487a77d10115ac0e7f5512368a1e9632060fc351d422c15edbd4cbfd7efdd891aa328dc6cde64e95f6f81f2b9300fb20fd50857a7e789d932fd351b55ae0d0cba2d40587d44e0a5a60d0871cd4c63c15ab29c0a4cf7b88a64dec8ba24f74f3ab0415b0a9af1d067f698fed869008928006db701278ad18a134a4f2c477bb145ca9a7cfd525e2ea4d6d88ba1d59d59842065b678e80de641f1b53963e6aafeb332d764c581484853980b2039337687ed52bcacb111d0765426c16c9efb4e47879f71e0c5ff40cd8aa91a774a46a22cff4a751b094196d0bf3a951954550c30f80b84ec7504bf928652dc20b42ed67987ff896c1114010ee59286d187835ec5b2dfde9c391e059289a2eeb387f078934127d71b6db253e71ebb6adb6c1538c760dc0486bd8893882f4d5b296bc5d545c0af5715e2bc8ee13640ea7d70c5ec27eabf2cdf5a617d80e0b49b373de0e352c810d72bafa103b006fbb8ffd24bd203d137b7f5a82f08fdcbc1e92287d6220f1c346b436894e6f5a9873afc6a462431d8157759eda4bed85d47782c0c250fab383fffc7264cb9c6bd92a7cea38a313eba719b391e670dcb273290d4f5006c6821f83319346135103151347cfe6e52d1bfbef500f2e3a0a09ec820e0e1857490b9c7a6a0b2e599fe4df9bae02ad4a4cd7d7216b31f7cb90744456d0081458860d21283d0b630ff058c6d1179a292bcd487c88e9b0462bf7cac63de174f325b1c1fba0ee3215cebff0d1474c3737d95505c9af52757adee58fd5a689bf2249823b068825472f6fb240118b4d913e335612208dd23429ef9b225d34728a95a95ef68bd85e3b81d44466974ba5b63502926afa15f98bd116c26b15385204882b44a417c01e1f111474cfc83e55e13655e6c111e5bcb8e156eb06011d9e3ed7f09aeb1a081451e4ba7114b11ded23a6c4349d321b735d2d30621e314d539c14b9028e94903abde68ce480b83663104b0842cf7f271e0c08b4238dd0cf43915bd205c3708cdf32ed6f9035a461ae4f5d165884c4db2307660f48f2e320fa8994b052a431a0c970b1127187a710991a10181b4206365c5f47c59534ed9ae7fb055b2d9cc9bd7003f6443e2a40c0a3dba38d31ad64f84892f0b395da21f46d3b61dddf53c0a9080ffe7d24d5299a6cc07fa901fc827bbbcecf52fa32978ae202f208c094a36a419912f73e021dae69fdd00dc93fa8e469849171ab2e43b8ecb1b4e581376da5319da9f4cf399b1079a3c3e6a7dbe2ebbc6e5627184355093cf2af386e9866d8cf384ac642c2e15d98b188e6f871cb1183701034f0fae21b1fa0c7a0d0d027dfd4d312258ab258a51cf16bf8a68acc2eae5407938b68e9f7fb77e171b7974e50c9ad405a40cad81671af664c2123289686101f53cab9d34711eaea6954bff3b53683f6676785cfbe070b603cb266e90cec276806cb7205d046df67d944fe771c65bc198892f149fa6ee1fe3f54c0e826d30a4dd5c8e3e6b3d1811eb8cd581ed1904675a246d46732bd4848e0246dedcd8a248dc3615a92c0a160671f095f1b01381f96c2b32d8b6c46d8a64d0c4f6e1bed9b559eafcda999471bb73b4f4ed83b736852de96ff56152132367e56d220376740d9e010b3e8e29b29fcfda09765ec2cef94549b13cc19c45f425aee067b00a61ee1f073505223cf28d7e666d2116b23646fbb6800b0ea33f97c095795a85ca2188c00f7ddd48b3fd12e4bd53597dd85a844492640d1419b4d3eb7f492052861c9cca456c0e3ef28bcd2d061060d417361ec1ef5813c29fa21c863d6b50ad3cc94547627342d5998f0df5a6c1ff1723f6a77aee7e6051e40d54c9296a279cb8529d348c2c09fffb15383f7a358c3d7723c07764d0bdfd4837be5f592f24d670ea1e5be43d231537bff6ef9c8b1f77769cdbe8218eba88caec0aa983bb1cd6ae4cc660eb5521a291ff2550f31b02f29930ca78cd2a0a6943b1921e4fe661a7360c265c3712af92a50dafe657fe5688534e8c37f0fc1d1db059806737010d24c6c148580d82e4ed342d1555813153fca1969820e9159bcbd15bfa73f47266820602dd318652e48247670528fa9de8f03cfb809aa935712e73a52269598613dd2d321cb9f3d1ad3424536a251890bc7b6858a4239e86ff82041a3b40b5c726653f0f0c992b15cb41a119220b02a29dd7a5da74f0cfb7b4801dc778fccb7bb000f9f543b3a17a33324e4dcede66e517f1745a8f04829fedf615aecb09e104129942fef73765a76f66ef7809a4d11b503a0791cf912bf4a93fa98464deebbbce51aa1aed357de4cbe4df65d018505f83862b412676cc670e938b205d712a3c005923615c8bc7894448ca84d0451234a392f1c8b1408c508ec7053773af230ed702ca6da4938685ac03d431e1b62e4a5a99c29114530ac68ad2f5926ee71f2941c17ba43b320f1026aa271d6704608cf003fb9073593a7c74791f2790365e209ad99f8d9f45a58fdb5fce67bc29fdbe7de6e794ba24bab5d3aa3bbf33c5fd0f7f7ecf7936fdec931dcc45079886b9f59795165800560d018b4604e24fce00bebbdea8e894f9f7050b6516360d88c51b3cbf81a21e7d1d7e1e449ae407a698507d2074ab1bef439e0ea3b50c0b1370fb009a386496e998dd89cc8dbde090fc1dcda3699fb9f8b0eabd4c3cc09db5b7c831816489c896ab70704dbd5e70e4735fd5f5b546834147636e40eefee71accd4cebd1f64516bf7682646d9e6db168b18d7d73adaa2388d0bf02a914b2cfdb15e69e0ba4da98cf79b910bcc85388e3c33cd81a515567c7d49e3ac2ad1fe4eba83fdd226dd41fb5e9aec5381222d724cad912e79b35c9e6da885d1080419e4f06ab296d26a79583ae531f35b6bc3a46b34000a9c88d920c86901483d909a8706b023c3a4537398c4bafb3475535519678dc694f0ff2093c5816efa3e622b4e91261729cdf08e102457c1b593bf891a9933930a89caae3c5f2ec73f39414a8ae88ac07c042729b672cb5d0500f8e74cd1f08a06f2d794910fc919753f994bca1741a6d92b1a20c48498f18162f26e7f650fc190a5d75d61292f1e97f9298d58a3a8ce407a2e569aba4950ea7301f6b3c55dc46cd8efa35a3239314261fb0579a65fab886441d480382cd7cb22218494ccbf1734987c7b508588d9ac9d88a4e13cac76062d7ca695488140de6798ba3064de5fc51244bb9c1bb66cd6352faa7f11d1a156d354e8f93b7772b7e41ab159f4b8b1c449ba847485fdaf75d596746bd110fa73fd46a89cf0413e0b248c1c4e68a4819217f43075b679a516f9aeda3876e6dc7db8bdcfb3a3f151ce7dfcce95776c2ba929f40c5af6331adeba0aa5e81a6bd9a578e338f5f1af5d2088ae3aefc1434b022557121dc888a2d0acae3f9852aea0c27991697768758bacb675ead7220577956b41f4c7df292ec1737a672850dea623eecf919a6aea252d0ad6a6933adf5818c48b986a854c932e40c27ad9cbc39888e0fde080953e795acdcca858489e67676880a3f33532e2b220f9b41f05da86e5d9bd3421dde6880a23cafb9470c19bcf28767d60f2f520472285543c3f5d427c851f3ab0c3c5157646cc370e4ecdd9b9b4e4f5abdfad1f5de8a8ae7c052427c1e80ee6552778689597ded8e0aa2c3f6eb938c29f5e4f94ba9fa2f2128e1e04f1a900542dbbaa56a35c4dbd7692bdb84d4d06eb3245381bafec0e6ca960925f6ea9643ec523d766ce7f49ee3b0b7c4556fe63aed1da63003d4006dac94e2b6ea0867a211159f3091910b9008aea31e4844881f340938ed45326b5497bb3f46a89d7fd0dd26841e49eea53f22e72babe89cb1fa1565ebdc1fdffd2f3b3d5cfad9e8e10191a6016a6d9b41e247a7deaea68eee84d9d5e77569adc4e98fb6fd64b5b271f97f12ede98a7b8b5f7ad62118201eece115db211d598521aa9ff15159aeb0fb34211b9c037b9d5614192cf4a0a9578c33e9846b9d7144712074a93d1633f8000b3b0a5a5683ace7792554f6aaad5a57e222faab77279d276050b4a742d67b3c31713180db65d04d78643d313855d0fdde3e89e1950349f46e28add7f0c83921ab949fd9eab2254ca1506db9f965fd5da8d390cfd4de091462269c23f11a6d837ef1c3903a528fe59c3b3c047d17ff698441888d118aaeb18cf8532abff4749fcd476e49d3f69c526989cbf629eeefe9ad2eae0b3741163469a4ed7b5e665d3ff13242877cffd2ec419ff4c3b13b31f918088d2387cffd267aee35d259bf6e63ef7dcf76e6f8bb6491fe7cf1089f9f35cb82e762f35c9e932a9b0426fce9ae3b4abe9004b7cf0b0cb910f497417b786a21ed37a8360832897759c10aca32134d9ae112f6792effeb25ccba7137b18cd5dbcc7165f3c3007ab06c5a5f755e48e46a543e612136432c4f46faba541ae2fd1fe71be2a74c93ee51b68ef921e28b2354524bd73c272ec20fe756576455d716ac5578446b8b08e3a8b0f71b7fb9a7507b61eae635bd291a35f20bd2a56274ccbd5f9e590e1328d07338f072f5c485ae5f032711915c77c9667b81cb746272f7317a32bfbb90a36f06fb709f8c1a63ebe7474c6ccad4e622d4e806ee9f12e7a03b1c84bddc1151d6ef400242ba207903e6f948a0008981ee87d9484c24bca541a489dbd93afd73bd9ebe8af088da88e701bf345e3319789adcc4c2bea74e3c4ab6ae2b679a94350d4ac90fee0d9f8f72893a99060ae65f0dc807d5e500eba4e9083dc8c86f3afeda860a37aaf6022abefd8bc1dc9302efeebc040c1571f1313c3c9992d3564590424e2c045c8bc23b328c63ab3333dc063a7557ffdd33c127d417be993cd38ce7150072f8bb0ef277b992957d060a0c0c85b5a47bf3c60fd99dbdfadafc5ec3a30e23816868a1bf052407014a86363c8f221b45ad39022b1b0ecc594c11ce4aadf7859032e9c6da699922f883dab51b824c0205bf536beb52ddb849782ea5d9d7a44475edbc9872d496001ac7d3c89b13e5e7e583088c225b7776b6ebd4b82ca503446cf34a254c4f1684ff335537da4bbdea8d809b77b4666567f2e171af7ac066389b1b8edaefd449914b9bc4bfbd794ff9728bcaf4c3d62e3d06e8cc9b82743bf3be3ee2d290bb9778d2a5872415beeab1a1732fcd8410e6b6e425640e1a011ca5fb5f526f9065aa1592991d9355950c0d672909c831c92361a3e3b26be7e0fb9644df74d94eb9dd2ee37563333b9586456ae93e457fde1edcd27a1b90949222c17544c6aaf9bfdb605e188b50de8f00347712c497ff85f583fba8000e766d7de80964e751e144026e936e74d072e9a4e5dbf195ea7c3ad7957adf0dc73f0c7abe547e413a99b97e3a5cfb9eb3e502fb4c7b4e47d4d8d4863c03a75e936fa9cf8fb73749ea19a7c94c269d0c0f29de785dbd47164a43cc651a8aa519dda54832b562829400694da25475245d7929d6a15e5a69aa77ce91d852405e9a8ef9c5fc7df85bd492936c63f1eb114653702e7a78b691d95e6121af10b0e0a1c537ecbee3a68ca51e2492c31f6009b8a5db2a2a73d137aee218aaeffa948b760e5ba7caf87df5953cd90dc941f0b0a395d4bf5451fa08602db2590439e58c80152941ba03a5490447229f2c09b18ec1e42b139211c871cc82c2c0f3d8f2083499090938de505371ecf2e8b052dd50d65adf6df23143b3a5eb6c8772d278e203511c082912a489f3f46cbe90d128a53e8b32fa80bab4e58cb122f889a9f1545d6220112c97d678ea69bdab0d2fe1ecb833b804603d8d5e1261ade47f7cc2a06781a57e34cd1b126d5b83a1dc92fa5c27837e4633f43c94eb936d23f2346789f0885b5d683274f35ba8a3dcb04d658e23f994e7e8231d146a13c3b7df043f4b570a33dbebac3522ea6f60e026cbeaff088a4d298c0022fa1103b1ddaf5e3d4b1417492639e38c5673e87d78f971e90471f4f303ede715040d4ce6770c14869ff6190d8d65af46a926334dfc804181e6bf543e50e688c76c0356125b97f7e2c69d70291869a9ffdef1744831fb202924f66cd0b83e02a432f8f25db11ad3c819ebb1d732524d3b9767d17061060ef7e1b10baf6460afb7e84fda864cafaaa1c01bc908f87b94759816baef4f3cdb9a128bcd49a0f3a3a259014d78a228d206d1bcbb6d3c0d7a0a0f6f38437e7b34479986f0f82c04b14ec77c2483b6687c82b8042161d386158e8fdbe1d99720c76f953f725c3848414709986211047f3a952e2b8783d3254d282b1785a1d12cdee293ffc53f45f268295853cc8286aa14f43a535578de926a6d6c4b03673f53178b59518a2f00249312776ecd5759ed04032fde2214f54d6246e27563a2fd3ae40a9e788bbab662a7317e634443b6fcbaafa88cca58f02ea890a4982e24943aa69ba014b56cd5a9e2666af6cdcca5293778a609d67f9738511fb05d9549240846a1b8301f16eb3a7b3d4926a593d972747f47ee4729c9662e89f6a20b5cc424eb236599dc61383a3eaefacfeed1775bc1dc0da7b1eb4724ff88788558e914109ddebcb8f90175ee2ed8d70bd87fb7dbf95ea2692d57439736a7426bc2bb154f0dc322340b5459af988eaf66f781c627ddecc1f9238236755e0cf80ea70b1a677e77b413c9b3d7654e5e94df4cf110de2882c39f27c98d74a8050e751e5126185bf0a6a8d4833d4029ec387dba41fb14b235266692b8dc0a3b0c68979275323645f5bab6483db4f4c45cb9b9b6e1256fc7de5db0c5f9ac04034a834c6349ed1265fbf4b61502c4ca93e6c1cae4fa53a437800b3f51596e1c98d2fb69513ca877c2c3014fcba8459f97c0aa58108e7f838383c97feb7420752723fbf1c85bd22d2afb3810c23b9a6a44ba22bdd0e00f337fd6363cb1153253d636492c952c159d3649c644571b0a88eb7c10d6c06da512fa24f493227800c045bef47822d4d3b76ed955917f3af5d0320451fa04852ad44028d273f946bff38a9414300934d355b588e3e1039029990f245653cf8294c7fa41582a3ef4494c499c12ec7d0ad3c61ebdae5f623ddfd915b83512f1dc649683f5c1163aa9e054488920f4a974efb3220f49d3fbb218f0a035c399fcc36b2ad4785bedc5e0348c8a7314ac584b14c4e6c84f23f11b309ed3de84d6f463121a6a5922e99bf162f51a6001530ed6e66e1b9910c0a5ae1199492b69ff33bb73af25ca5f64c898d418ac10c53ae6bbd908b372e1231e1be2184da4843ad45147c3971ac1476f64e43b2314b54e80c88ae165524443876241f72d1ef73634d658ccd610a36e1140f42009e11780bfd15bb3d5a2f629bde1f0178d12b246c24d37c2544ecc4794387370b82228af744e5349a6c2666d2f0610be536a597b8899f056ae828810c491a08f42729a9d99a7fd1a339f868441acda14f5e5d304ade294e568246339551f51e7072d5ab80bbe197134c722032c6ec699d18a217416762139b1741d7b57bc8fbc672fc94820428f802f655a4c3d1f6db5b97889630d3955640f51f73a6e7e69eca2e65e7c8f749917e9388187def80d2ec86cf65da1d80cd106e54d86026c872b3225d2ebe744bd6d122ae9ce7b0c65a8443af68acf5f71dd655261481284df5f789331cda03b1c85f397ad0b815a09e626c36dd694e9a4b0aba83807d3dead98cac2528a44ea037a389d590cbdfc4e6626e63770b432f088926f956384a3b5114fe8e974665fe8290229535b6648d10f36d6cf0972c05609af6928c5d216474fb33ff06a07adb1067f4118c44078009b57362ab41d8a080863d5f1797350e1f06cc5fa11aa1a6a46e7000d3d4a03a599e841525b97555166d4deb04ace7fb82332fba9389bcf678846c31f8fb6ece084d553ee9e717349c06a65065d35a198fed42049fe04b2e04204a5b0957ef274a49efd5604b1b6705c5004a2540824ec24eb59365e61b8c96cfcf494128c6b97b146ed230bc2970e3571c88ae2dc3e9eae017b01da90e2108ff79109fceb2184a8fa59f60a708a931967dcd5133e8ef086fde6adc0c7154da5d22e56acdd826b5dc3a240bdbe5fd2ee4dcc9b157879b800e37f91cb3cc491a1ada25a5d58c9d36a87acc23611aeec3b6c516d4404450801c6bcc3b0be60c1e0604830d449952dd9b062ccbe3f836aa0acb17469f295cf740d41f3c8764056f3298f83cd7ff6619f2e908418057680e44031421e656ef5d118c87cd2be87dc1b2bc2f520107450ff1e90d03728233a1026d073ea6ee321dd0f970106fa4765e7c8c1cfaa239d5c71fa34f9d21cc350336704560c93b5582f9b78e0810c210dc0efd60f1a1beeb8694b5f0c95a80239bc0b9059f245dc0895adcbd191fa1b0875e1a2dc35bd162cc0ef7360b3679f9cc1b3a9884e3cc68a11a1c2af08f52bcb52331428b8e7c6c33a63306e86d358a3371380964fc1d1503bc3465fd35071afa186108a4dccbdb82b841d14d1f2067e845d9b16b6c65c947ccdd9d19c8511842a3dcdda5175ec42488ae7bdc07e8c77d2104db217d1f7f61097dfa06e74e9b8591d86dc27e78ad2f85da57ffc366663f8b827556b5323b711874851359e692279dc563705d1b4e965f2f1aa06375dba8a4999b56ab3417541da36247023d256c72ea795f9d2d88254ff5a0359cb5dd4bc8be20c94bd4ccaf3df9f2d961667e680ad766aa22dea28e5059325ce01ed03330ca29e13c63d1e728b82d049b914b14d70d517232a6b113fcb537d2786ef1504e81b07f1dbda7740547c03b44e2085ec76cd9bd7b1f157b76757d6ab824181c4ebcd5c7f50f0719b5c24a99e678c5287305ca9488b9cfa736ff9e16dff70c5bf023a8c0cc2050fb4c60fc73de6bc7c681b11d1bb82dd08d5fe671e9bb0e12c3f740ff5559b666f1cd14a34d1286f8d6ba262191c52b9173eda773fa36705d224e13bc40e409a46cf9f9a9b4c104aa3e31dadfb45b92446c3b3c624c576db09d78af6d5c3a41ce8a42574280fe47c20ff28cdd213f77c5ff39b2b7251384f3aa252da33c9b34be767efd7804e021dc953af4c8c2edb49aea31fbd6945e1962d79c4987c516f32735d165190dcc99638291f37d0da261e2970badd3b3c2d2c97c33bf995b950c192609b14fcb33ca2c8dbd49ac461f2388f83528ec3c6c1c94c083fd7de82aaac9623d2f381d559808dde6450ee07927595f8a45800606e2e764a9a2428885540e70da66ea54108380b741d7e4d81d41c4823ed23e8af626e3b95904f31fb779cc2e0765066fc72ee19f75bb4acacc65636f4a9632c1917ddc1801add123b462c945a8edd6fd367349db22d63c6aeefdb85c6d82e7382ade6155a4306e1f76f4f6964640d45543eafa365eb9594d03d07bb0e6fb0ed91c5d352d8ab66bb7213c0caa67c5805860c0beb63f961bb2c89e6259e27c481dc5dc8fe85c0babe0e59707dee436076619419b89644be4b4da9a4747fb1926f8a9c0503d68f8c5c99753098fbf3e55de4246c81220cdacf8d95e758a56ae2791e06ef603047502b9e0f83d886e01d35cf733cfbb01d1e06254e951b79b0da2b3e314783eae7838c58a2cf387f0934f6dc56d42bd239138910236033430059a756c3f835c839c7d27b35fe5a050af65c0e3c3363bcb590990e5159274e26b3b2c593653cb0b522cfc53b64d15f3a18545e307463024814ba2fc818c40a8df28b49b83b72801ee108916d57444ff2fbacb7fa2929ea51a316510c9161d411c5229c172341def2d7077eea0f0af79a9ee06dd75f5a2d08e6bde7616057fe1f31e7c11b8fdcf220400755aa97f8e9cfcf643b63b8bfd2e6f284591e15168ec979abaf39759cf8440c6c072538c3eb4631b97e8ace724376a5ec698cca9e97a8dfec954b989a9596d11d54a3d9b7ae380182c2a935951f344dc2cb81a196b938e972a38be1c98c54add0016c979d237e67969bf3af199d3e21db33109275692999efc112ce515159243e0e7bd09611cc083338149656604cb59cda7ef551d0faddad27e663e42edc210cae0cc8fb8eca7dadb2c6168288c9071a79607007a4ca06c892a7179838732f918da71413afcc5ffafe2f90e40c2e61c0a71d30c38210f18d23716053357c9a3f36487aee72a52c4e269812a69873176550768c3192ff916a397501485af7f8a72a990a531d503048e8b8425cc348402e2e39f58ae1d5a3057d9d0b78bca1c24cea1b25f5dc6d632701db42f54950c6f46ccb5c87a6879c303a364d2fae4a1286a84733be3af3af9f39511d4260e1f335f7857fcc3b670b37e6a290fa9e26ec5b67ed8a67383ab08692e105e87ec1dc136490c516917a9b582e6465e65b9149c424328f08291b0d452b491332088023520c4718bbd13e27647de12114cf054ebb6810f6b2791f496dd5f440b277357f52057741a725dac26d7bd86c2f1b6a38b67003f903983496c67c848d67b5a2d81bdefea8643daf5026ba32efb24ba2047a0444a56b9ab6ee45adb6c12345e913726f6d78e4adbf55a3492dea60c8f2edb1fd4a32d11415f35a297be543d148d7cc04e15ebffcd699ef24e0330e7f11f70e8371db4916c9b5249112aa782ff8d6034b924352ae7e3ec44a40c4b492de671f63e5c566761795a2bb7281d536d5904fb9f2a1ff8c0b83904786e52a5a79b10f7a114c9820077247addc90ae43c68df940f35659dd43423e522b6f90060e6a015fda0ba488f4a75fc9e2b8512b7748c3e1dd4d61baae014e1b38b1a8958bf4a3f4ce2ded82d580798bfc40addc904687d72ddf7e80f21e44d20768e5cc1737a532a4503a56079f9bdeac2cf5a2dc74db50c3868cbeeb71d4309441affbca0d1703eaadcaa277e0bed999606453e5ea7714bd208346f4151c32c0181b212462a89bfbc6e734f90c2b4a989f6956ce8a4387c620f1589032474529eff0dcb45b232f58141fbd1cf4a044e93e304f10231a7208458fdec1b99db92317582a3e3a07ce1bc162d9c7027e8027dc297d07ce2dd035f28245f1d17370de0eec07dabba246e3e0acd8ea6d5421a3c9b7e995e8616e388ae7152cdd24297dbd6b1e3c6f9787081685720629943c88884959b03dbc068658323068bdb1086d251b7712fc5d228c1914998eed150afbcef8607a13abae3509da15196425a0d3b7cb01e79b88b88c0ccf778facb342778bd25220627b48b03e37b450a433bfbac88debd637bfc50953c67408004493521093646f6dd49093af69ab5248705444a05ba4a2b0a6d4fc2a5a830fe88f9cd47e62e5c9f1ed4fcea1e4bdad7c73eef9f53effbdcea2258c50e193e38575476e0ff81f57547837569453e68a5ddca6d57b8d91e1289656034b2b8ce2af21c361ad8aca6ca8b8818fc561929990729b1930da6e9bdf536c492cf0773741bd0a7d3cd97f5a94796c03524f01bc936a2efb2d8d4a47531f06d8b895c8b0c5752b4aee12a6cdfffda9d5a901e350478cd1540e284d8a2b95d7a1e942384bc40e5f46cd99fd2b5b7336e1688a12d5ed730924281c7abc2aa46017b306af9328f4bd2dba984d8c87592663d22f29a6aef528f4525ab049c524777dc6501d5f0241d6d9ee7af85169d1c37505264779a84e1d44b25b92190cefcacede4aed54f7b1e1e98d3016792b79f0e5c6a9727b9888c1130e9909f673f8bf02e8afeea32251247353a3607aff382be6d84c5d09a441d299ee501fff53cc68deb99fe5b920de8d46132fd0e15f8534dca6c179fe841141733747e99c848da32a21172261c7b2cde1f419b19dd2e012d7239ea37a89ea29e016de78d1b1ed20357efc2c083fb276ea7d2eaf74a961f38246edf47d0f6318a1a6c3f1b407c6df2667d895de0e1fed02a95305f0c9636012227230181cb6eb3c0e2e14110b062bec507d0748e89e461fa24e4e603ac957e195a336ccf56c6f21f9c768320e9cfcdb66c20a623d3ee62612d2218e72e5638364c88e7eb9d0ac0e29e820046a7ba14a8e30853f057a8356684542a9161a136197b2a0f594356f27c113c7449ed544e33b726d91485c57fee4d594b78328482262831642aa726859e4b9c4b8d5a3782c53786a5b3ea067e5d6dabd791650f9b1753aef9d8abf2fddc6ec973f6f333fae61b9b408e563052cf25aa1436b7f004cb080eff826df5e17e816b10d13783500a9f64000d1d6382712d7bce1c834f9876bff6b2e9eeb1dead94fae9936d30f07084ede498fff4ce3cd6518a0633fd35114b74c06080790957691daa8c1af8774270c308ea0bda28722a7cc69c407a836c6b28110d039f5386a839672b5eb9c2f28d8cfa4a4a591b5b1b06c5563a8d7d73be9509436d8459d34188934f9981bb0182c462c18c2798fe63116cd5c166b9c31126bf62aaaa62dba3a0cda92308674567f604d8ec14c5668f20ab0f1629c73b00a2fd084b05c2d340850abe032b3d8885e32961d7390d5713de5960453c59c58dffe1b070c2ff6f3f2c2d63e405609be59fc75c6c819e24a71b12bbcb06f75411cb137fc4bc9437080cc4a34641d0f87a06ff3eeccbd3a71aa70918c7d29898bd591b290c0458c09e2514608109ac5a7bcb2c545b6d9ba0a48c4de9b40ecd53d535610b978d30df70e77f2f32fc6d7e179c800b203ea14fd29b8c6723eb79642003baab556c2900a9a9917026282c9ffe5aa7c2316dc0ad1fe352c64fe94ee9ba9ab1234b6fd41a687ad708293965609913473905339b27155caf652ceea0a16cae8823aa9d316e9a537aefe0a8c5ebc01e9367f8f67e8a2d5e41c529676161ca8f7ef833ca69e5998a2ff630645239c49fe5ec857a3c784bf332b06034babde85e252e699c86d360439287b164d291ce4b738f2ba3ef9acda7af30af2cb9e360516b01e960d17a4c6692ff1c7a1b736628688b410a3a81d79773cb7fa005641db41c818613c94c4dc760e06b2d1f55250dc7b6e550b10316fe2fe74c087b7201de5b6714a8b04bd6fdd2d039a666fdc1a71244a258e819e1af8058ccfe926cc9225dc0f2305ce3d4a4c6eda23446603093aad0566e7500de2df81158707f8139c8ff45fe4c0d7266620b425c04546f169f44881d6243ab8dc57426cd4a9256b25de0225ad1d34e443e6f1ff09aab45c4e3288efb36c48a66fecb3b2c4e42e853716c1746fe1bc4eb9a50ed83bcf0b96bc078ce0817e8172dba514bdcb3c31c19792fd735c6afc1e21d041b30b26fc0fd2884cc19e06cbf510d24990a13e8a57d445ce3cc82fd76dacc1b165721edcbf11cd2b4e75f077ade9fc117a131328aa410ab08d893a8d0c9251343b29baf5c989763a5606e026b037c2f687efc23ec62d8d86ef62ebc5ee0a85b32016d8dc9b95303ebb6a5ceb98c37fe4a62953fbd203e976bd73dd9b71044db2e265b28a0ec6f2d787efd091fcd4458bcdfba0c6052dd365637c601636357e77318d4dd540a5f307eee9963feeebd37d90f4e0b6dcf4afb4caddef0d473b1efec4c6db30ca9bc57278ec03f1e86b8c28fe31bd41d89915b87b78b0f85cacc60bf81e0dbc129f76312074c8513afe9909b1b13d860e3aeee1ca22b697eedeb887ca4dea79d0baec80042351f2e116b4dc7ff396f1d120607d816356d7660135c8072c7235e32683b5bdae3f28f58a5046ecb76bddfaaec8df0e5fdf4bfa01659fb7c053f69757e4886d75dbe6f82cbcaf778c215dcc8a5d5341d6db05f2a47eb736abcd6b14d3d45cba05deac2551594381e9376c692b9b932ceab71a0f425989cada6bf45665fcc45cddbfad3e9b8e62086b780a6d3867a853b53f344f169ed2fcb383b261284aa60d3c1a79bad21fa91224d4efe79a85c1998bbd51e47016794b586c4a90db94ca979d517e065b8ebe11425a02218d14ce8bc2718c4e6808ff469e8c47583f54c663b852f380e8bf2265d8132760d12d59e6fff3b2179ebec63eee3d1787d7c12e80a58d9367fe8652a3ff4ba06bc7a4e178222c805882ba8405d3a2c1fddd7eac637cf53143344e5224e63201f171d380a92421a2ffb49354985dc73e549f24d8301975b27765f062a2a2c19c4dbf42c417e1905a22e55171b815662ad7589d2caa9c313c9e529ee1b45542eb05b37b7448d7c6653519820b3a5f4eb5dbcff2441e0097bf0d4119dc6cda261f75c685298d3312113e237dc6134950971e31cf811fd76dd97dae70215a130eb6ea60af3e28600040e9ddba3e3dea687061a168f5c85ec26c8ebd9562cbc14ea62ada233ae8673f4af3ab9dc8098c23d3409419396076455c603ee0bce439d4e938091c85c399e1f24adda7d95264eaa70487fd9675750abefdd0f4c52e3823a456086b4b93d202186ce8ef6a785044088787869cc840b19f445956c6cec2a9481e6b128411ee8f01326e6abb23dcf25bc4910a2e78d18e05e7969f7fd741b84354f2c47a965d54e6c5bfa0f7532269aa9cfd52f4ee2eff40ab70e75a14eec61c83e3d9b0ea02f53b38bb1bdc6e1cc520de96cfd3f8a018cf98d08df1dcc1b56cabb75907b6bdd61ab41d0ace1f0fdcead7ea6532430d42be8786fd69e4736ea689714c2a8a52ba7475fedfcb73f3393471830bc5312fdf4bb51912dfe01441cde899d73e211764d74a8a09f3ce541d5918ff8b71094a51e2e01ad33bfefebaf48309800ce00f7b6e6098d3c6cb9e7d7f858f33f75227e8a3e27488ce898ba3a7e18d49d8b19efd0b7383ff1dff1223034a1918ad8018e72a0ffad595bda592319581a122f3b2b7ae473278d3739fff046864d163e4c8495b4b6baf7f09ea8665139af6a46539fc77a352a3f1f41e762e026a670df35c315f207c369d3532c1f5aa300371aaf950e34d8c1e6e959d8561905971e207763fa17fa376617d4b9cd14154c459edcb4de5522ce56677d4b54522f44c26547436b76949d15b9d00ebdc4109a9ca05b67df8da706bd01fb324be7b6e75570734ab39645ff604aa9391d948c8a865c7027dc0104f979b7293b5ac784e316fe89c308943c968abbe14b8df7092750f74eb90f26ea207bc12a5d1d5f4f5814c8baf90b8d5c4bb7095338a105081b299498f4b6ee9de3bb4af0b6397754a3bc10bbcd5c71c388d20bee850bee29a6e8864fe8513b63d8d3ad21b83a6429b7e46a9d3e6fb69bbf920c446e06136926163f76cec5495c96ff9ee615f48c8986f981fdecdb14a743b85313b8d9a49585acb6dbb3ef4133b4c87b22341678a34a544bc2b04021768be82bf7120ab509dc9840bac4f42046a981c30c6049da5d9e37756e4611ff75299ea59b4cf88a64d310f3009ceec5e6ab8eab5f9283fb3f4a4d8e6629738f47b89064b36333725c5542142fd4ee1cd22531bf62e4fd240c6387f3ccef287873342b22e4a92842ffe036d5aceb3c91b4d65c1f8bdd61f208da011ccf920e1b953e7c0b387ca96389f9b02ae6108dac63fffc7b7d103f42532bdaf2a13fe3b4482fb3a37a66ffede865e89544b2dd1e7ce2f468d2bdeb33bfa3c240e12bfc4b59530d52e20f1b4459c558a72619070fe9890724cdc3c50da2c1fcaa628a1b2695125baff9f7834fe9b979bbf8f7ca326720147884d4ce74132c00ff80014628ec910032300c804623d82335818d222e1747d69913324acb204c0f0ec240c980bc0f194d12769fd02d9bb2c978ddce3671406a34ad023e8db4d0044d191c7b7bdc90b2bb7fbbe4cdb54ce5517f4ef6d13393290d2a4fe9eed61a038a9a4faf020d0d988895d3c7b76141d6a00d85d14347dc9e5a86e18e594aecb8a1d1d5908f5e63585fef1861108dd2d8026564e79a0fe953553bb657b9353aa9ca1d41fd28ac032ceccd164474ed9e5c18de3460b36e494daf8c0cab3c8293102e3d430e1333d06ce722f622712bf35d2b8569653ee7498f100e643ef40326c265d0196b90026f7066238fbe450da4a4be22ba47881b21e8df8f07fc0bb3255964d99457c3f73903a9ba4fc976d77f8b8b1aaa1299920e85e36b60cf62930684edb77e1031951602f0eb897ed681e79c60092bce2c11f5fa98426d15eb600c61581795b958bcb246091da36e0b4336cd84a0670ac1cefd33957565d9b8a80ea24bd5c4a72d409cdec2e90f65419daae818deb14295865987f961175268cb0da9d96d4bb4587cecf8dc92877bf9be0cb902eb61cd529588397bcad9bd03c671faa3b129af728cbd17086a5da11dccfddce520b4a3541adbbc038880d81e2452ceaaaa7fdcebb49d32c97c8d882625e9c6a9a834b1e4dd7c460972476ceabf5ca26df704cb33255a2a46de450566a280bcd3ada990220bd265b6447c699228705bd8bf69763ad4a01894d3f49207a5e301c6c79655ef77eafb2b95fb2c315377c288df28a8365672b5f3a3cf6ad666077235f566ad97a29f63e122232cc5aae8fd8d5c978a3608c51ee5495a5ce2b986c41f5f96a02e1712655a2eeeb5899b195e1a0aa77a4f03fad32530515a61caa90eecc02cc711862c554f19c0617b841654dcccf8325b21a9782f190854823269d89c7ca86f000dae166de4fe4899317e73d0660a75d2513ebb544662b913c17bb9282a1c3ed6e7a595e18ba4051ec6808d9c40e641f64185e698a6c8d682105b8b7d1956c107e34797ef023b20f6a15416c5045e084e6e184ed44d79844525f823c812d779a13975e7efd4ccc844c5cc35959da7235145ff75d2379b2d45acc5ef135c29ca4a7d264a85b2674558599e7691ae33be818d3ce6bf819bfb07c08b3530f66fa0361dd7238294228cb61c80c0893a515f6a17773cdd46564675fadc9873073363d64404f35d88b0170895c7a720fcb6ec111aff0896a8b45a35272fc75092854c662eaac1093a212603373658df5295ee633348455149d1aa499a43e18507525345aa028fb00eb5b08ba06dde6158feacf926019b63a4a188d2134de5fb05d63978eb0c3de8ea0bd420b03287a5ad4c6bcdfc9bbb400527ad1ca6662e65744d7308332332b04f1b645121941e65663bf512a812332f460fff2fdc8472e82d6c361187fee9074586efd0a027316dcf1d56c98048a9c47b75820185aa5036d37498165338fc680845917e472068bb8db12b98f202b841c03932325071a13002778ebd6d7913f8620ce5e5d186e9b05e6af99f7be036b910ace736e0ced90cbfb7e9c479f44d88decbdf7967b4b99924c014a0b510b9f0b4b5ac66437187bb325ceb3f7edcd906206255b9a4f195254cbf0ce4ecd9aa3a4924cea90484c12051c180d1129c2614c61c468260944301a82f922305d18016908e6639621356d6262a24d4dcea41d310f19df752637c25733035764af33458f925db4913e6aa3287090160a05eb4f9f40a1a813ac3f6502cd429760fd6912e8134582f5a76470d0f7fe140b3582f5a74e540c0e7ab9b408d69f8241afd0303848458740bde020906675ab2c204d9b55d658bbb65174f54bcc46ad51759a86475550f5f2b9a4bc8e898989838900f8f02feb5bf81b02a04a23dff16f210c77fe4316cba3dc5ea9444b82d43bfedda9805dda10dce3af21b145ac40be4cd5954a663b53c65148dc0cca71a8d63800e65b78984a84bd302288a721982752a49be0049421982f8261e134147e0b95880c155440192252a44708538cb832a09686c2275284e2206a08e68b684ea8c0341436d24e6547ea68b124dff19752032c094bc292943427ac8ff1dda934b17c35337458128c86448776d4e111313eee93bc1aa69d967bccd331952aa87af95cde1fdb010759c141defb6354b0283c9862b11c581d1a43628f1f6136b036302a7c4457bfcba9f58dedceea90e862c146bd5da3ea541a1554bd7c2e29ef378d66d894538903bb4e36f99aacbf15ebdfafe9c547531dd5f82763e26648292f3e4ef68335965375d38b6fb3cdcd74321e5bca416d9d6e9998b67148d95386c4cd749483a8f59f45f8b4a30d8a2d08fef1b19da0fedd5440e3efc684f5d78ec03f405a13ac6b52b0bef960fdb52bf887a511c1bad685756d0bebaf39c13fcea405c13f6da449b1aed5c0bae6849ee05381758d0919a89d354322c277b1248b458918144c07d8926337e0a07f7f8c061cb492b930d893e88a31e0a018a5e8a25ba6e02099f7c7a48022ba34231870d00cf6846333b01815494afe0344792add19e53f518c2990d04412d2c8e51629c45f59848df92b51f0572261fdaf5cc15fb9048cbf7cd22df0fd5942619bb42cb1552a61fdb92611b724a1f108ebcf4658edca23f6ca5879145d9a910b63af47b15e1f93f57a2994147c43d83a7fb05e05eb2faff48f63b15eef97458bffb028d6573c37621e7fea2ee78bca52e82f9b7c509e587fa9349dbe270eea87829a4a48f20871a32205a428a8ec298c6f63da96c0d896acff0b5fbf43bda5ef31d2ea50fec459336d6aea267e72a81ebebeb4c9fab7c097d33f0be43bfe1a920e8fb4231dfaacda1124ddeadab1ddc8ac1a12ede8a591bf76c462717fca48eff81fa149acbb2ff946b2d9930fd63f8213eb8e4cacb0573b82f56f507b621ebf53c9facf2fbe2c2943ead0e5ca7759bd0407d5f7ef25d115ad2861fd7b051c44e3fd5b4974c5a624ac7f23c1413aefdf49a22b5eb97d84f56f1470508ddb4658ff2e82836cbc7f1fb94d84f5efa3e88a4f4270100bb74d60fd1b883612bb041c44d323e0a06f1270d08cf79a974da34db768469a919a97ed6b2367a24d19924bcaebb8ec2907e7c6a6664b74c99f9cdcb25167da32a4afba54a614cd9e72b2279c1b9b9a19342cd8a8a143a3cec8c4ac7e8af57105ddc246efc29fc562812077c87d1d0d4d86308ffff4e29bf672aa4ea5f2a4d48ee4fb6b26f0a7475a138283547fdb9fb62516900f7f62b511173324ba780a24b0fe2020d22d96128529d6fd7b08dfcd9e5a3bd25aacda5117dfcdb423ebcfd115adc41effed6974c526edfd29bae215fadb527445a7ef59d115b160eff240d1159fe6a7de4774c52c46d115a1a2b010976c446d89ae48a5c616eb4fb76cb1fe9a5174c52ab1c7dfc8fa6b46a22bbe628f3ff730a076e43bfe314a74694696a23fc51e7fee5988b2bd8d25ed6b50b1aec3145ddb52ecf1185d404dd1e523f6f8f734aa58d04a5bffe8145db4094b744da5a7e8c292624f96e86aa4d8e3ef353e73d2790c0b8d9f4ff565053f5623d145df9fb4a3ac07fb2941e61ea919b1d362afd9f6df96807c4417731b75ff6d4b1e3755daa414fdb12497f76fa4effd3deae5bdaf419b52af33955c9e0696f47dadb7eded9707eb6dffcfc1b9f96cf3d480cc3c33401a9005cec8dcb0cdb3c2619b99a7630061c09e57bbde4b0ccdbdb1fd1a78c15bc3f60e8f15c0006c7ff604da1d01c0f064fd3324ff89bc135fa32f5fcc90ac3fc7737bc51489452e9248191cc75d4c15791d06baed401dde732ede476f87943fe27b74a6258e2c8d652ba25e3533789ffa54bda9f7bec87229f0cac096877e7f0d3ce7817747b4a998f2664a861dd17a8fc9ef401d32560ab66dab236edbc6cd39311ab30cfb0dd4b2cab1e752f981455ec4b2e07886f82fcf8227f6e527d7d52bc1178e7befb94ae481423104e1fbdefb0b6465e7b38b746f06efbdeee573fed9d3dbec0a12244890d46fafddee3d21d3cac076855919d8b26cc02042e86b3a5bc8dde8ac0c6c7d3c1c2920172b03db14182448902032b0e5289bba9581ad10696560fbf10c49ecc6c4c677b162bfe7a4b0808aedbe531c0f5fcd0c59aafb17c6be7bff1f9d6c61cf1dbeb87d79a12fb225bd6d7fbbbaf720d172d77d7dc13c707ef476bc0489cce3bd106927785ffee5bb291c4921cab2659b7ae9be6df735ddb3bd1d88b6e36636b38fd9bc3ba2d53210ab19c82fded43153b7c86ea917b0b9e764c7c9c0b96c9bd16b605b4e762e606b3d44ab69b153b7887df917da4311eebd67903658f3f27c05fbfd06d6bc7cead97a5ced21daeeb3fc799f027fa4defb177047aad6cc5000eb7d016cf75ed7d51ffd5da703bb812223db3d37bb2984ef72f75ab4f27b742b15f4bd7c097090f75216b12d99a76b52ffc3fbc09a54dde17df745f60ad997ba637bae668602d8ae00b6e375794fbedc9565e6b9dc4bef86afbe803fba0a64655d1e7b9777f914d8bd90bb80b3ee90524a29e58f7eae86edb9e7b2aeeb404a39b0b9ef6a6ae0befbaed67ccfddeebddfc1cce33d33cfcb0b78bbd7de036ff72ee05777749ffa09a6c09a1abcdf7e7baf4e7a65ec54fc18231c75dddddd49701c37e7c43277cfe4c4b039a5fc4c4e504a29e3cf39a7f4ee589445f9c5b4c28da49138e92396e521f18e78489e685022c1a2b02879041665b32499049348b023b0a82878124fe28227b14ec5c7054fe26c3b8e1a8831c6185580c477e3919db33bd27546601846e94f90ca2cbeefe2925905c330ece791ec27866d5a93a4187b54c3e8c464863d95736214c3b02c1d63e0d59a2c864d5076f8188661d86f31f38266aeb97756afc70ec839b9043eb4e38cde4d7bcf3f4f6d55d3be7bf93a1d7a78c5c7df832ffbfbdd224c37c419b84f8412c5f667fef2898d50b8aebbe28b5038b9cd00f36e98410f3eecef67710634ce6046818949bebcbc3ccc636027c14ce54257ab7a3fd5acd293617eea25cb0a2f7b21ff1790d277e9ba8f18490a49ca8aaf917897da8cfbaeab5788b4446ca006624d44ffeca63e6a22a60e89e4bd08f3e904ce9996d1f4f94f3ff14e3f14aba36cbb91f58e736a7a31714caf26276e5b82a294b425294159da34a45672a4f551236925481a6da328a827fa0415d54634736a7a31654caf26a70c5b82a2948425294159c226523c9af62822894a90a68cda41ee0015e596f987c889b02627ebbc041476e803f4f1f7fdeabd08debfb1155d312f633ef55874c5703131bee31f23f32e3fbd1a362b53b1d8c3bdf46488c13e46c6803e1d3a8e0e1d88079ff69fab5837749de2de036f67911cf6145d89e52c4f1e7cfd546b88168b3dcfca28eff467f37560b1a7a3ebc9b217bf882c6a4f3db9b202a459c5c79e0e9d700548929aba5b946a5a42c2534cdae18fd5af66eecd90d997e7be17f21e32fb75f5ca2e035d9e3dcee5539f812e9f02352bb127fb0e949e0e97cad97b1f33506bea30fbaeeb34ca7d0766af452511a9c36e1b9774e84d7c98ec579a4e70bc808faf0802897559bee2880b4b1ffb979546e8912f894eb730ce02a5c5a7297c2d490602e228e60fdd99328ff21d491f8b25297c3533640ed5a1bcbe24835389e2b256e29446b16b1f738ca7598579fc997002934f1875c28455621e5f8a32c35a3241597fc9e49249338a126309f1cd2e3efe1838f95cec11c294fb0181833e2bbfad7090b4d287b0d27fb0b2ab60659741bff8c6b0b2956065bf9aa2133fd23f4450b0987c4bac4c62e5bb110f6ec44a3fa2f4fb58ac8f4d14abf7fb5265402d491a7028fff24f2bf9ce92efd0805b6d0587f26593cf25462656708b3922f592ffc41730c78483b0971f5fc03fdd487028e573588d5798477e23f1f2d2c506919853873205d6f4483dccc35422a91dd1c6262cdfd7903d567fcc6ff2b9bcf69f44fa32bbd520d3ded8c443fd6aa76e61dacb1aedd9babc956e7ddf58fac94a90f94a87d28ddc881fb912f344a7d8d461fc1a8aec7c1e6213f12755231871473ef637d4fe7edb3bb1471de84638d089fcc78f740423fef4cb772414cf84891ae15b022b42e1ad60e573fc01c2ca6757621ef9593e248d24c504c73a773a59f99ccb269f7ca00ee5f4e2cbec959639888af1f5c71a8a86b0f253a0c4022be50bacfc23cc83d91b9fb80f56ca9f495839adcc207c9847cc23e5cf2fbed9345f1d4af9f3ca6b3ab91338d651e2a00f06f64e1b3f488cfc973ad1c041d4b2c45c9e3df5f3081f4667bdac6ed9e4a35aa4cc83fdf4e28bb197ce247c97c5baacc83f34bc833d6fdcbbcb4f3095dafec6a514d8799f028bec04d97aa09069bb8ac51e4fc756b3270bb444238bc53cd8cfbface834b5e06a7648fb4d8e7ea8c69f87a2959673e263eb5f14a301a4130f1c040323959e48284a0d258fae54b21760970e13e01d8070ab7bee491796ff01ec8a4f6cf003cb5020c00ce096c72dca2ded738981e86f0f684d30c3b2c0c3aeb8b4c3adecf96db06b87ca2d9ce7cf61974f0db76e9e8ff8290c0ccccbc3806e39d9e9a0d4aec4061ce449308f4f74c9236902a8279fa71875dbc8faf84fa4ef53737cec930f1c72d02109d7a1c14e9dd450f268cad28ae6eb33eb556f83859c8f539c6573eacdf9bb837d79a55faea4a6d23c6141b943ecd71f39ff2faf445727e95cb10d55a944973cb25152a3ba129b55a5371a8863a3caf9b05b45ac96f338a16b39390fe2d49b93f337379f03b20dc19b7a87d87f076bd8a1dbaf373a5cd9f8fae2cb9757562ff92ad0ff0654818dd4dd0d489feb1cb00ab9cd0b750ec81de63ca5fe39e03ff8390fd61b4110046f9801eb2db2a044229344514f8714720d940f8236428d51b06b0ef8fff26592e8622bff1f8bea96fcffccd3f1d5852f4bb27206cebac63ffe72692e083ee5a09bd7b49af35242f35722d5fc9549b45e21d3a1780eeb6be8ac1eac3787eac8a9124987395ace27f9cbdde657f5e6d4241a4931f5b26a6abf686abfbc09cafd5d892a7b9b7a73687e55a16abed6fbfd57289d07eb6551add2009b292787c53ac279e6231c9bbf74f547bee38fc33c2af0ca23cd7f646e8ebd52d38eb43ff21dcd66a57dd5c0d7daaa40f069806ddd89836ede3f8ba936bea6de8f85a769a9febe8bc65f1d9bd9b0f4af0d9b7d08d2d0b19405d006485fa68643d1a997c5d18e3dfa7e83ef47463b3675ab5b5a6d2cca6af45b94ead05ef692e62888f31aa87aa944e9f7b15837aad776aceaa5924b2595d20ef0557ff339a08c6e71c0bb13a138c8adabde7b8975b0ae5ee52f91c823b0284be937ce7332ae5eeb97455e0224fda8fd0a474a97b15e20aaa21aa26af5dceca4ea314f07107ed998f774c4bc0cc057733ce7e5c7fadfe0eb7cd74be363f59c97955f3ffae3afbefb3fa7c6cf6afae5dfbc56d38ff3f1b322255bd337f5162959f938f516d1bc96bd8cdf1dc8b1fdfcb2351d1752eb57814fc1efdabd58cf65d14b00ed1aa4e00b75046f7c5a81c8673d7b3780dff507f8b4fe787e8155d67fd5eafbebc76f1a391f736a4e8ef65ab3667ef36690200ffcb233d1a374e8d93cd7197ded3b276ab1a3bbdbe0f85287ee376f738571be419bcfc09c9c774f87cd733380804feb8d0d6a3f43c81bcc798a132d0876af6e9b57bd5671ea0f9bbfb1c9c940166a1c1bb067505a2f107e659a56b3ffc759fdcdcd378864e96bdacfe8b6f8727e46f79a91f314cca994fe67393fe341edbb03d1e23c88537ff4dfacfea6ff46d334cde654216e816cf6e66b9eeb0e07bcb9378fa351a58e0b2d7a3bb4cf6caef6359f81b788bd79f6888a38d9ab7aad02e197bdf90b44758b70c0686d40b637a08d0db87a798b20b1aa9f01de224e454a56f50ea55bd1a3603cc3fc5aad9e3d1dab176a501e99e08b76b582621e8722e4ab977528fe239594a0c823fdf3c997ca858f5f56a89979a27c572a5d79c5768baf7010956efde0c87f226b07ff8957f08eff16b48ba748842798aab22f5fd8495a43c51ecf21bae4910ed12595a8c012b524ebdf50ed9f02fd065ec76d920a25bf813c0a6f8437428c070eea299d5c8ac42295143a72cb4c5aaec88183e4b7e55ef88072080145a6cb1788c806a01cec5ac517ac9a5836f274042a0913de128d7848e145052ea387132c73122cb3126cacf353805bac6e00bb706021f0122c9361f97d700be6f971e0d6cbf32b805bdf7302d8152f5f61f96560573c127bfc8de029965f28ba22121ab8b57afe03702be6f9436ea59eff06b7e2f3fb74ab7beff98172744bf52c58be34965bc03c359ebf06bb6212905b32cf8fc3aea86406b7669e7f865d71898a5b34cfffb1944dbeedbdef9e6bcebb5574c524eef14f5ae17c333ef6f8eb78187b1c88437f7f1c8e8e5c692f90bd2c0b25ca92111c14a7300f1525a216dc486295961c81476a22129b98640a07c523988709a7b2eaa533aa4bbdf98f2e1e3ad1d5238c2e1f2e1c628fffebade8dc88aea8242e893dfe1129f63c712307e76d4cebf2353cebf2f1898fb12ed579b02e4b9092a22b2ee9d4db354b6c5cea8f19ef02d69a6a53bfdae4e0a440174dbc919961d140e402b2b99189352335a3deb633a69df9e8e990799f6ea564e28c7aa7bd339e3553ef8c194f43138fa0a93704f647fcd4fbfbb09e43567c7224ba221424d115a32489aef8048aea39c9b1531247b754f5a67e03ac7756f5a1e26d2394e88a4a2c221aa8a86664945c1cb5e0f05bb168207201a96e11ebf222654ffbbdcf0b8c8cd547c64fa54260534fb64a874c1dfad3297cd787e946262726e6f1d7a8f8ae0f8fe88a4ab64774b1ac58a2d8e338441750d09528c68d43b8928116e0a8058d5f587f2d06c1fa13452e823828fa8079fcbd8a0522961c2211ac4720587ff94564bdd36aef13eb950f66efd3adf959cd8183da4e09551b470a2e9699ca78b5b402092c3f27c15513b64195ca3ac84c3148826dd08351a2062f4abc3e25c47051420a5827c11411d66b827612eca2d80655965b428bad93e0b6c4185c27416d892d96eb3a09d224b6c11bcb799d043327b6c119964b7512c4b0b00dc658cea593e04472b20dbe58eeeb2428a52035c1362863b9974e825e02dbe067391807f98a2362d806612ca7ea24c853d806672cc7aa15c7a46e9195c20412451e1d8b961dd8fb2f40816625c63293162236cb5750a1647b61e14c448674488770d007c2e070885cfa3888932c619204c553164f4078fa620ceb48be13850c7050053b01037e411366c205cc8225acbf56843604bb7a0548a0c07a0af804ddd330fc470b8277fc2712b02497a994f2e611beed080765694d8bf5d7b6f466e4af4686d59e2c1623fcd5c470b25e849abf5a18fe74058cbf9a17db52d3106efe6a4260596105e1afc605d00be8079a169a0f7c54b15763b2fe1a154d89ff3492efb8a66161b528d691943cc9b2a252eed58edaae2ae1e3a1db48346828fe03f324baa2162d33880107ad94a22b463515d6bfa768285a0aebdf49d145b7340c3848a69fb0fedd04936ec24133dd02177010cb7fb227dff1a7df9721556ad9bf5adfbf9dc69f9f52e671caac300cb38ffd270e01a08530dcf9e7b8e8c517bb18858fa5300165a5ed164b61e2c96a4a5c5b6261401ed2906847dad17cfa2e6dc2322a8394b429ca67ff6eafe22f671ae23f2e05def1d738ea7a545494ecc177b523a62699054c8610117f06144efd62eaaa1261232703461b93fc272e35c52b4e4891c915254e5874c02647ac219ae764a2c5b2c798627c72c2125d6dc4c262632b893d31896fa6b86aa6d834c08e0187f12bd8511dc607c1560287f11f6c23c4307e0ed8617018bf9350e27dfc8ec1f6f15b697bd6b3ea6dcbfa386dcc739be6b19edbbae85db7ab27ea964cbdd1cad4cbfa99987a5945ecaa5ed6e3e080ddc4ea6ce8d62d62653eb264c01fd9cf70d993efc4bfa997da34c58f35f1e393ffb4d1938ddf461e5932558b2d9100341f7bc03cf167d4db4a2e1fbf99fc87e6e3732a45adcbb3aad207f3d7edf734605fe99df8adc4e3f7c144a26edd69659ea3d9cf3c51b7581fbf9b5875f5575a997ab38fb945ac0ddd8a91b91eb0d813ad9e775636e689ba153f5b5522ac73d56d2cb7cb60ea256cb4818def75d36d316c23e176136cecd12d0df8d0b2a7b6097df69869288a9a1a34c04c16ab364466f21c401dc6fbf97453d327650a2d367bbbc98bc4a2af482cca66cc0b5ef85836dddd21508e66dd60d9f40f0f0d0d61933ba41f654bf1d3ef950e35f8f90ea5b12c458a23ecfd3e7b790909982a4c4630559ce6871d76871d7677bf0d31748be6e80f5b460f018cc5dad03b4d84c5c70eae3aec774a020b19c24387fd9f83c5bce98b8f8142a6cd9e8721dd62896118562be52a5fdc52845be1a4c4ddcab22cc36a93a31f9a4dc055efb40ce2e38177bacb30c25e7e65f632549f80e37450ffc17781806a6698b67fdaaeab0ee313758babd8c8f21f20a029c820e3d3ec057a4531b8a22f2661337b7db2120c3d69220846382902cbd2123292a6f87c7c3e201f1c3eefd344b4b003234461076424e1830328870f8e2eecf559c2988023c5932d92d4e088153c590157c9c1952d7c60a50824702289a22f1e61f979058402acfc008aa7233ec0e28921a982d0b294a4a6a41e5031e7f4e81d2e4d2b6019e603e60317bb651530a37985d81dabca8aa4a5242a495492a2244561d9704b7b9eb19ce28f61977ce1167dfe14bbe896b18bc8b92557d231a2e86ab0060efb3550a807108018f64790851a9ca8b998bd96d34f5fc391726363809a02cc20004d0e966b2628d69b3d95718e88836216690c50b6fac932552bcb600690652f38b2ec7b21cb5c5cc85202f07cba1e2e00d8c6836937308c0200cb5ab0d88e9d968879589836668dfa23beeb7010111107b10c6cfd2511eb7a6575d8b2ff13e3046028c17acc11c20c9b81cf18fa84377ae0c0a610cdba3bc3bad0c6a7b31e9d7c2c81723831617d159f2780903091866526274dec6699c9090ba854cac09524ae40b2848a1404a1040a17141103216ee0c39229861a09dbffa1807b9df0c6269d14c9000a5e0061081d188d71241e71450e96aef840597296999858e264f0155a508589114120819113863a0549babb20d1de908a41b967210003b00c0375e1e2e800609947c7b28d1c96cdebd8a06104e0a56ed103dbef52697807b63f55bf0760df03bc819e2ef807b65f6afd18016cbfb76cbf0d0e0a00f3f40d0f60e1210cb7383ff4bfa1ffccdcd953ecae79eac5b14e9c1d99b0fe7217327ff90b6ee220b016bc05f780772084a5f00f188b99bf4c25e62f0c04f856cdba346c401700906aadfed2c0fcbde11717ce52aaeaa6fcd4f2454c62ac1919ac86c5eaedb65304162362b122ecfb413ffb562cccc646fb62525ec7514ab74efbfebbd59772da77e9a73caffe9877be8c2e22b4bb4efbb6950ae6c50506ead1d3e66341ae137e9ac53c60b3903e4f8b85c06655621ac5326d8321727306912ee59c57877543f302c465933fae3fad584dd5ac661af53aeedb326c6e1836e9cc328de7ce9fff715074f94b73b3834cf71726cb0b1017281e28a745880e005c80810040435a960540a4c7321b85342c630e83638b10cc829c8f7dccbeed36b5c73c1df4bf5bbdd59bfd7ddb14bbd97f8f793bb277af3fe663ff81bf4303892e221a0fd1158dac90e88a46806897eddffa89441770f096280487fd2990050efb3d2e00b63f1a01c002c1413698c74874e9c41e21721c75ab79eccfacde22f49f32f3dcb963469793676abe50639147d68a6426de30c2e3f54d0caa870f274ea64f1e492c78e9299e4c118588294eb4305da1042f52c988d291e99894a423d974a32329907c534a29b139e70f81e2d1af21dd3de79c73ce9e5bbe4c36d1520c444eb038c992e5cb64ec6e28b440b145be30d9e4ca97cd500a2c538a2c731231914c178a61f2b081aa3d50a209d58a878f570f1f2d586a01d3c7148324782a2426256a00038592122fd5cb0b9c941043e6e3b1e4e3d5c3c70b9490428c8bd08b682906221834c1c0e95b8208562a0a06464dc878422fa2a51888908c7c87e91251549dd3125ac8704e1c2d31c6cc96b4b4c41696c624c90de5b1e4e3d5c3c713499e58f221399991b9a08a0bac7c58c430a104c9e9a5899214a426c8385182cfdd9bc7928f570f1f434c5e4c20c16ae9ee599ad0d23b6c2ffddcdd9998c27a571a8eb4ac7c28c9a89bbe6e84103232323252728511215c2626853090a7b0c0c8f6d294ed4db078c132efe1c3c9f29424596cbfbb533784943efe3232326201d3148c78691c40538070b2fdb2b95b2e4bb4008c97eeee2c6c635d131ca4b02cfab491e5294524b551124f94b184183950d2428b274988a0c41330f7eeeeeee8957677f7153518816dd7965081a7c41212232323153489e29ba2822a4cb6bbbbbbebeeee294b38b11dbba3142592cc2002377568a2d32244264c045617df1630581680e51dcb2cc576b408363e123e27b0780a3f82d0043e4630f348b917b430c0200001ecec682ff487a57ae76358b68152d3b0da65b57dce39737846318c793e2933add33029a9d4344dabdffc8e9e0ec9624d59339fadf67e6f587f09fa54f9b4fa754bab57ca973fd8fe9ab953c0fd588df1a31d7e534623ccd3ff754d1f67ad31b9741d2e1b38b9a70e37aec8c6f527e5dc7ebe94b1473e279f65e5d161ffe7b4e52db298042b4fe973db7eeae0bb2ed7c736ab5bdbbbcc8cd230a59089557782c1fce2f38f55a8c3efb0892e86618f3d48d42d6c621863f54e09c64064fde553c8b2ece967dbb66d3f60e4b66599b64918cdebf7fdc01ee669754a6128b86d95b29e453faf86cdd2ef3c19be774d733db956a591af5430cf719894b2b5d81f51d318cb92bdd41fd847998f2ef959d3991be2cfd4db5985a9518bd96bf1fdb79895cc0cdad3a71f594617fdac6edb7f5fa67d56b1d8c3e262569b54bd165357f552558c988c3d9a83f405dc5ec83f90a38b4e2d1af5dfefa3f5fdc7e55342fee35273f09d7e6ea9a31ea5dc0fec33eca9ac41bbd46ab546e6303b5676a2ef33cb5ed3346dd61b370cf3746c14a3188651a1eeadb2d8621b05ef5b4a7f07fdecd9df8d8c222d228b36a7e101c72d7ccdfdee0ee6e0b5a7d0d3f9bf430e3ab0530e3aec409443b774e8d60e9c855fef2c869a2a6823a00ebba9b532e79cff8a6ada518977fa67bd501d6ae9b03b5aee08a5a5bfb7c436923de06487918522655916cb368b7968f0798d5df0527ca2719f3fe52430d1b23494bd322b1c34ad7f0604660d417fc8aa603d2b83bf2facfb646370a604eb2fa77cce345f4bfdd5b4f9daffd01e934c1d6a94f24eeae312941825073b5fa8a5a7a3ebeedb59e5ab439f114ab7eebcdf64ff6cf6a2d9170d4959b264ce8e091cba3ff94f47f90e13b8d557e0d0fff323cce3df5788f21f1f823be243f04f841275c0a1fb37f9e89111a30e1d87ca12be0ca7664b1d664b1fb574eb26e7fd1f94331d858370de63b01586c1fcfdbeef3e079c49cce37f33e37e76462aa565993cf86e5e46fde6e9b8a9d3a8431cd63beb55ac5f710cdb195309dfcd7bcfe1d4cc0af3f8471db07bf17d3688f49a19e8e33c4ebd59d317d90cace991fdcccf542299d3170dc5ec85f3377fb397c579a1c6a93fb44e6e89e21e43bac9ac4d4df64ab124d30f99926e75ef9f2dc992bad5d59a1e6c5bff0c4ab76abad79e690645a60443ea09e53f33ef3fa3fc27f39f012593eff88e4cc5ac68e120ed87e0ec87ec8555e1f5c36565b15e2f86c5a5de09c59569c4c87f6493eff887e13f8b979698985e2fc9d4e4c3b663a2839b2fa37c268e6964fd5f59587f20347de1643d327f81f0cbf3bc99ff81f5de733fc32c80cb595899a7bee371c8ab589927e3f367ff99999999999959a9666acca6fa1f64b657adde9f2502566d2ecdaf592476342798f1666252a99898d47b2a95f7daa762ba65bafbb97eb06b0f32b54910aadf54aadf36d506f33fd078bf62fd0faa5fa9bc191a18d62a7b9797fd03e3c9ccc84819198f7a1ead4d82a0f91f582c1a9a67b16858312b1929f32a995fcdc8a8de8b59c18051c8287ec8f7ea2d7259e445a2f661e1da8934b5e0c547a0c11fb3d664df4fc4369360ac42a6ed7ae777a08b3ef4b30ec75c83306566cad19f1933c53ea3f499997e0dbfececf6d1e3cacf3f2d6f326c1748c7f26a70dffc37dfb64b3bec1dbef911b3dc6b1c7881745d878c00be82a54f6b10babd10cc66cf4d70d249b7cfb2ec27f8d94637da58d643bc8265be31b379656677f85cb0b3ded0567a836e3f2780a04112279082044f68920326906a3c5db1822280c084319600c4185074a004095ab8b0e28a25b898420514889083216499410c7ee4129a144461832b185149928512596ce1b10004443041832d26c8c111a4b0c008172825914a94206594b12c250628901283a330b8eea681c3bce03877f7ef5ad411031cb730e3b34be973d630340dfca4f474484f074799354a291763c7691cedb22c8bb1f33a6fdbb2eeb9accb32cfb3ee659dd75517beaccbb2edb3cfb6e97137919cd66d9b46a9e6e9d05e7e9ba6691af5746c58179e8eac06faf4b5a71aa50c04ac8bcd88d9ddc5df3acbbdf0651d97651d770bdb3ace86a5f462f43c6f4ec6223dcfe36e22b1265288a5ddf61404d2596ed53b9e8eedb98d3eaddbe6512f7cda679e8e26f2d943800b56a7773c1d5aedacb6699bd644caece9d3ce8526b2ea68f1c5d78ac4a276cd061cebdc4ff2fb63f2af3be6d87c66666666c6d89f253f33333633ec1b936274643d4bd6eb3f1fabf16bd992b15d737e77874969b1d64789d8ce4e26b1db05469dd813573646c93bb17eb68d8c8c8c8c18ea677618db41c05409a2fb368e79c61cd10359cca1ff049f57cc614739f4d0bd59abaf9bb3f640c4f68b6529524c61efd7e4451985128f1e3e7844289c5e3e3af0e841b11a4ab3df213e906eb19048338ca52451c16c7c1d66e02ab6761de2f83e69998989133ba7cca6318921cee25be26e0ec054c9aaf09155a145b99f553124ab22ab02a64a479fc8818df53e4c952c9cfa277be6998136f48eefdcf0098142a01ca1dff01a5cac4e87deeeeeee4e848f1106d47dcbe3a3c6be2391f071dffdf75f75a13455bdcad29e824470f4881c8f0ea97cb3623bf8a6f697a9ccaa75a0ed256285b42d8a62f9c563e220db9edbc0a221aafd5094814543ecc9102d7d223593d61ed8679548ad999f4fd932e0b80549bdf85a02612a4cb8ee8f47ddfd7149e883034787fd83a3775c1ea85b5acd61e3520e186c1c808d4211878d01e0b191054b830d1b5f27ba885a357f6dec8c5b63030dcddf181eb127656366630fce46d910609efe8b59eda9cfd1d76d4374e170536ff388ae1c7a44970e5f6f5b1fd1b503043e078e8d0d1a1ee76d1ee67b59c56075be8df9bed3befc0f59d51bf33662fe721411fb526fccc3d8006ffcef61c01fd847b638d4a8b773882e1e7074882e214b94609efe5abbdeb6de7fad38b5ab4dad994103c6213804221629d17149f7a9ef0f5ba73b66f51cd6e9747c981a53afb4ab7ae3ffcbb38d0f03de1010b1587d1797ebd6ab97a68bba9cbd1c05a381ee07ea186b93ecd92bc25434c0542c5675a44bcf29128ba6bb080184a92c1901e287a2f8315f7b12b85ce17db0fa61f7a362b7ffe1d361f4f980643e7352b1d8476f077f863d0fe1e89d883da683ef7e3e5fd7fbaec5a5afecb550fb1e4ca4a828fb1ed867cf5522dc674f647bec8bb6e7214ab72a82eda3e8b155f69dcec01ac640ecb77740f65c1501f7d96f550451f4e03e7b1e62af06de340ca4be339d66cb2a591559156ff927c7cfa5caf6a7b63d5e79719177220ff2c584dde0c33eee8b86627ee67bc47c251205d71e33cf55222ecf43ab2712536bd87b07ccbc574510f3dcc73c977a11bcfc8cf63cf47dd110f5be6868e6b9ef31f31c9128baf6e06afa5544666a4dd71a0570eff20ef05e554530f3decc7bb5869f87bc1781eab95ac3550171c8858760be68687b3a2303c6802b95efbc7c2e20f59df8290ffc9056cc061f8d52a250b2b3de8fca0e5d277245b148a4985ce2301a7e87def443c8b4da8fecb57fdfb68db3c73e5e21ce5f358c853aab995f3f882ffec7ae3055a4155ccd0c31d69a59d4f91061638d57b8f81488ad0376777733b3b4af1363f4b15c308df7f38e2c5314a4a1892c3e7c975f0cba9520db1edd0af25c79bc1c065a94ac0a15182c81575685d0d2b7f48a7a1f29be3742648f58702f7c4ea9b3c75801283efeb7510586cb13b428547bdb54d37c6a2f351d5a9f3ea519364196eff04b10e422585174a944b73bf5f6766fffeeeee89576d80d45d2c71f556038a18116057bcb7352292556b943f70ebbdf651069854c6f24ec055f7cceaae0ef0ffd277e101ed6e5b675952c1a7e0e109f5ec2e1007adb82cfe78bcf5b74472bfd3becbfe1eb74d87ebdfbfd3fecef0e4216b37f1b639645f68f922733cd1eab97ce2a2b3ff3f496ff92f821bfffb2ceac7fc1e7bf6f753a8c5cc3fa1d7a18bd41ea3b1cbd6fe0f275c20edddd2786779d68e74d9723f63827147b7c8b21f6b84fec711798c77374e72fe43138151a1cfa53ffcc5db081c6b77bbbb77bbbb77bbbb77bbbb77bbbb77bbbb77bbbb77bbbb77bbbb77bbbb77bbbb77bbbb77bbbb77bbbb77bbbb77b7baf3af430967c6f6140850a0c1f9f0f07a053cfead0ce1b76dad4b093053b413b67d88963a7ca4e9a9f73b60063e77f936651071fa52fd43420f3ce7c0c6c8183fa6da2cb27f6f4e3883dfd40b127ba72bce8c8f8d39be1b3b3fa4497d08723ba6270c141c4ca115d36248079fa853a06a20e0187fd31e00abcc004e20338ec4f40bf0dfd21f0be7f48f73ca68529a2e37b1ed2c2d4fbf255177ebd2e7b01b3ea96067cecfc8cd226986bc0c776d108a6482c929216414b6391c4e7b5803e451d40f150d6bf1ac26aba729c20eff04e13b1534a79a206ed4640bd0f0e209f2cbc0424061f1cf4673e566683bdf6b23ef3440944688879fa43316cdf184257fb813017b681603bcb0b37fc17b61f0b82ed1fe2a0040845970d2f700b8bcfacfd3949c8c9c141020ececd116e6e6c9e6c6c6ac8a8a9996184193368c6a0a1616161b166c498999129828c4c0c116262564eab952a0c950a060c1898972f5e5ebe2bdfe7e2858b4b6a08a994d785e7754d5dc70981e3b6206c9b06044da35628cdb8c8ac7ca28e6fa5ed964f246fe020f70470503702382812d9e0dfc52e0b0c892f3e7796a548b164efe700982a93c8061e444f439a7600a203130e443600e99db8c3eb7be2a5187c70f8f8dcd8e1893e2186bd2c19d8cb4f3288483a1f1d461c3a8c3e3a8cf188483cd20202e203878c4887dd42a41dd22111c7ba6524c46808171f91e7d183c77318c566c06ad7a3c397863d0facf2e88161d91022ddca287b42a4cd6a07a4c56a8ffe5e3108b18072b0fc6748d4cab2942846606f78392a22c9506045a7776296fa46fc1554d0c2decf461f2238d6f11ffa219669ccccec32c618638c31be0d4039bc870f435c0d77845bfdd72a8b45ebf76595f24e7f0f431c8055e69d9e373a8c3146294a57ecfd9a5a2a816b1b4a59f609b89ad815f1fde73f3e3e64403185651fcb21e058e73a7dd6d2d4464fddbaada4e94a161b5bc9c66e5d9f5ed24ffa87877874187b50b087a7c306d5fbe8968f1ee2560e37d907718bc6675f006ed5cffe875d3bc060b37f815be067efc32e202ed8ec6f70eb3ffb1d76f100009b7d0d6ee5f00fcd675fd92504e420d6674f030ef19df874c66d46c44b6ee97c9665f5026126eb838704e2d3b468440ce3472540a22b2e91f6a65e692f3bd9d49a1a9102aa3ba8a42c57854d2c15a21900000000d314002028140e068482d168384f355dfc14800c8abc48625c1da75112a39841c8180208210600000000c0c80c090305a17e327a13b5aa85c515d19faa9fd142cdf5a9d7895be328503f7bb5b8adda5ad2a00c7422e104983fedaad754cada1ff9ca5d17e21e1500c2e25d3ca63d3f9a565357a64e900adb1e20629c1aa1a6315fe663c809e3903930070f5e0670fb4e7335d753be5406f9a102582b6daa605ba95a0887ea3a9d3405a3a72dd0161307e307d44e931911504482f00e1ca6ebadd723188da087624ea5010e36b564cf46bfc5b3103cfebe549e403fe01ad3289682a15ad41d8c66f099ff194e34a4694334f7428d962ca33e3ecefc04fbd90b8a1dbf3553ae1b1c1a951697f565ae4b8d956223cbc6f5aeb469f099b36b0325aba02f4639d36ae35143e6ec01702114f97eb76f6f9259ebf9208b2464c607f0e35e539ace734185110f3690ffea73c01c3ee3d600d66f46b7c9123e73138c0093204894f040383e783af93da36a3eb319bafeda4cefef996b7fd18e1a8b262fb242fdbbee90786b516af2a7df632cc9ed27c7abb1f6da434381937b60b7b7052bc0738d4c99608fa092206a78ffa016a118e0940e72fec63f82a3710a618f2cc54d61aa2844258967d5566b8d4dd173e92609fd9fb82a64c32b0bc1a4a9dfe529d70df4a4d8be071f2318bad28141cb011d56b1509f01c5ecd826b36da58cad8a05a25301b8336e394fd7c821982dc2e9f0ddfdbfc328925c4cf5d8fc6b4c8f0897b19664a70891bfd26ec7aaeb87e0c1eb714a0d78239d5a99ed486b63f05091dcc819a3f247c58895aac43d12cb83dffbb8bbca001c27660e87709e02f282877b6f2d1468cac7db57f0b82474bbe3af7d5e4c169c1549e2dea7e92aa3e9f2754d0a54f1de865b20cc388f3365dc7fac0fb7e74fc5564941c31c901487d3e770527c530902513fa898a4e0d15593a7b55feef8b4a52770722b52d26dd21bf28391bc9906a4be860247d0364a6942f6b45cadd504cd73fe52bb4fad92dea8f5b88f73f426c76cd3bf19e9e92a16afac0e2d2360bad721c1e0bdb1f2fb692e5b52462047f84ad786b56db08d40c131f48c03376e3bb49117de51e1360f09b035f0c840a60cdbab2574726ac90da60c561a70b00878d73a42818fa91346b82b7efa46d2d190e0102df5d508fe9df4dc3b8cd84fcdf50f1cfea3485b0c656cd5cf0768dce90e93680002870246eec1bf1e54eb36c38b3814c234c0daaa06d6f4f302d438a92624793261d6d1002bbb9fa2e5248bdcfb86fa7402402ceac5ed06b3a25351b8a0c9f2198b007bee2aba312d916f22a4153aa78cfcc60072fe2cb433585d33e0938f151272083cf6331245a3b819684609479b33b8424e67777fc0717d851c91c41f182762be8b4dc7d08da8d1199747beb15d5ae9224f4afa909a8ceebb7977a8bfa7405e8a268c3a79bbec582626c76e004629c13facda76d11a31951eea1d332d8c6178232aa3ff0b9079fec85006f0ea79a7023bcaf9050c3a17a7fcf827aaeaa57b3349871c1d0558930c7d979381cfec282e5b69a4275a9f0fa4f8f2f0f4006c721edf213c8b3f406a0aa0d06fdb3d1970cd60f481f1f511a6c5905675e530fd8119a0e30875bd3535e9370e9cceb50c4e811e8ff2f2d530dc9ac8012bded8bf3326ded05fb9d889dd078f94f9f52a160f97dd5218287837f5cb1cc9b4ff063856f29bf5e7c1c7eae92e88651db7c942e30ce95cd74ef9c3951661c2f1159c3718dee2a377981092fb703271f510dd416f90dd8632a2ee0da7da4d0ab451ee080ea0c23fea6abdd1d8f0e0857e01e27a996ec2b196e0d0a0e12e7b0a9ae8b04726ebbb2cbacfcd517046a1a55d14da3c38f9c74a21ff723201ff5c2589c10709ba22938efa2b11d7e02587adfcd390b37fa5a181a0cc7d6bb283dda5fb8e6ec37f012741163b85c7482c89e7e5ae48bb02b10608296d51c8b39f60c56447c8450ea4fb04fcd3049ce86fc7da62860a5591c1d593a6adc56e387644a6d5307f984c617dbecff601b3a73353d2300680add78bae6292276f12f18d15121171a6fd81ada277893236416d79255b552693b4b2c885f10f94e4e28097fab5dabe2ef0d15efa1e066ac4c31b4d5e3d0442e99e63d1c3b7fbe171508fe7c6199ba5681b8c7e3d27dd3b56cd506f8f169b1316deb37cbeb1253805c70cdceae55acee6057addf0f495fc85b921fdab3f0f10b740af5236acb05bbd68bce8dec111a5a27008ebd31a86d109d5a0a1d2dbe9e1d6b6a1c99633934db05b1736698926a0e8d47c0a5328b8e47c117720ddc11b433e806c91f3b314c73adee0645ea0daee8b6d4915dd09b276f740e7b7eb59b453210d3161899ec1b71b699af93a220e0ed878493eb2147bf232b9217f06b2036cd5a055a5e413605f89981fa7f78e3eb2d1442c233fbc20f23be7a5f682ef967c72c14caa22d4cba2e7ea2765fdbdb4db457f34847beb9758ace02c456ce5ae9c0b108d4d693293cef9650d79ff0378b9a6caf529bec9beee56092e11e8b928d4bcd9a6fcffb2abbbfaedf7b7514e33b13309a55990ee4697788f85a9dd64e2257f490579e10a44a70db36a7154ce08e75313ef15a8826b530f8d1a15aa0191565a8bf929e57a8188415e7d722a48dd29c622be453fc5999312922a56a481d1adae8da4516a25e7d91c0216c5e4f4b2d1714b00d41be38ebf29283e8f42dcad93ec632cead2bc9b7eff33947b1feb3c233fe57c523eb179b54f4815dd270249f152d8955679fc690d933793ce9d60f81f4d52906398d543f61f3a56bad8ca22728c5e7dcc24952ada5ad10df06149bdf66e206ef30f579aebb868bfdf7ac6bcfe9af48c7f5cc7b7fb7c472419cb67bc88a5848f872e971b8a7db7f3f3bdd624fca09441df9d52932742f0f21ccc677cce883ef6b746a8dc5076fbb5a9a7e56afb7cdf007d073ae5574d9ca647e53323324a7b9bf1bd66aa998fd8a65462a11b3494b5c77108b5fda4e5da04944c15a6478109018352cbca70cbafccb639c23a5c5f08d3c08c068ee44a79c1c3be40705843966cac86cb442ef050cce3afd4e7c1eb010476c990d14c476c434ebc8475aca83d8d20d960c4c433650d862471e77711075ab17f792153b8a6e7969e0cd6c9bfa65885cedb41d7d95eda3eccc376d60ee6caaa8551d7971b2e001a1b129f3e827b318b249678f8152d3a02b342b77ecc6b405b7860bb1ceb0a055b66e4b6370a3ec1dc63925bdb3359016f5a1c130f9b2dd5df09df41cfb78583208274963993ac6ee1a73414341f85e7952454306ab7aac8d8cb1843de37a1b396512e09b358ff3995c968a1b150768ac6090a7bff49b10f12d490c59fc2fddb4fee6b1a7b81469e6cab17f10a1eab4ae37afc8315b30ba048197a4f06b669756077c1b57d06d2f29eeb16eb4da3501de4381c838d9241d866307b8d3b15eac798fe40d41d0d3c08c7b7100984d31acf26c3c19b6c4d02df5f252302d6f31eb8cf90c7ccca10b9dee117957af94c5240c1d5e904827336ee6d31cd298e764674050c1bda982e2dbc1a5491fc05b646a972cea4dba27bd950ffcf4393ca7142135db1de3d681ae5847aeecca0a6a529eb3ccfc8401af0c480d858ec3c6910a5f4f9b2fa4211935e10ba4fd5a76535334cf014a606f5048642607ca42a658c1f0df8f8ae83b264def6362064094bb3ecfd7bc89d3e57248bfd806a06ba1d370b936153f64fad888a01adacdd292831b88f826ad0d19f7a3dc5502c8befb28ddfd089a3b10698f59f4b7a0d27daea395b556b700627de86aa84466dccce7b0247166fb60f4169de833c31e541b78e359bb5b095fdb57596c1c6e8723a6121c116c803881395c08778b054074344026178e1579d2c3b2ff0d6c950184bb43f982f341759c31f28438e74293662fad63407c60bf1f0acb6a07f644a40f4f49dafd77fa255878ccb7ac0195afab21c6dbe28c1ebc2d32b1c3795cbead0d4400eb3dea3212e5d78fd7aad5ec00e2ce68041b84bcda8d5c907b0925c6a8ed9f83a7c140ea13c5288c63cb66e9f0c7496c203ad469660fcae123166ece504dde10ac6b9543b0a5aad7135d35b765832f02b66a89481ca619a353de22c1f3ea81be6e94e0ee6070ad374313d830b2566ca5ad0dafea33baeb1c406ed1aa1a7dd217126f3b04a8b8db7ce99b6148b9b8e657bb4c544424fada4700ca3bc7f743500266c77d8aa8daaccb115c31e852e52f2b5ebb82862d3827e24297d185f92fb31f2ec221dfa002f73d41b0c7a8a2bb57a3e618f2b8ecbd79618bb88392fd89b5ea276a06ea1fb2cc7920f23397eb97859fa37f1cfd02fae97e88671097287b521335a7d658c6a4852279fa251831b18edcf9a9733f92cf89089c172e186f56b903160428567ffbfdd13798f1e3a1b6f21a1e5034882b3edb0e34502cb76db9de10b3bda98edbb46f83938c2b3030e2b83c7872de2e031d6b1cea95d39e5348cdc54ef5efe31d80be720077210a6d003b981a6e7dd631e1f4739dc01e17849f9f26262f209ecd3ce999be36eb0f6af379f8b01fa046f753769a5f2a568522866b8677c300f7740410529bfe835c1924c90c564ac9e2bdca4ddac6efa628ada796a12f087e0361fcae55cd7199248d9bbf84c0f8994666a02b6c2a952eba6cd66516d15edf0bbb61f4651b9dd3e5e9b5dd3df96ab9ca8c50cdf0ab9c39c0f5feecaccfaa949d112163284e0bc3a1bd0412827bfa3c32b006beaf352342ecfe19eb1663a1ce02ced1cf6ac33b808ee2742330cc1db4149f9f0053da81e3953bf8d6750ef8c49baa6752ca99920f808e8401737ab2bed7e33ede610c19542ab351376175a8746c7a0f13a284a72b473104eb058347fd404ce67d926d06279ef839ab7a77a0f8b0b482fc723aa4ef94f0962705258cd4439b8fa82f758fcdf63290bb87370471b12644cd1505bf903cc5ace188fd821062e4b85a55c2cc94b15b5510dbf0479a872d2b209c3b82c3f0b13d0d2b60f26307986bec0bde09450c18fa3be02d5945992e68d12d81b289b09f2dde5343587e1a98ed2066ea83b444151178664116ada5617e50639d8ce8da484694b629ddaaf863b6862cd4797e2e3fa5ae7b46e8f6e22014035c3d8872fe63df782ed6c76fa474bdfea5a63b966576ab9b7d17dbc4ee1b63440a79b79f49dfdecf7f58b267f801e3ddc0a781c7508cdca140599d0e356dd2928b3a0bc94088539998f15b7644c4d672d41d88cf21fc1b20d79c78bfa022c120bbaff39b2397e1dec08e0384b97f1c363d7c969fda3c87a496337d36c4f6b46a40450b1271caca7ba0ae02cebb26ade6e3ff263e357c1da5a0a62f7d367429b3e159338ac4f0b458ae0ca33687b00a8f80f1fb678bdb44a7eb770e4aef299f69392926c4af857053fe2b60a2b218e17daa21c6a56be33c3d55808ac626adc2fcccb73b2e1219707288953197c249fa2f9e0377b9dcf965d4b5ea95e0340704f13d2c533f045710dfc755f635b87409e3609dbc365fe6cf513730531e18d4e06b795d03e19ee9e7ad2026cd329cdb18b11fa01c164980a7ca2d33cdb58f1ae8939ebc0e11573b72272dea285b9ec852f8dd438a01175297df0c3adffb67c1cc7621c6e3cb892eef8fde23536796025fbae0cd23f3a05a1be094d0c79652559552577c9f2f2f68914af3c35065c29b4786d9ff3c6c4eb3dc4a98ae2f12354eaa9ff5cd7bb66b6c25e2e3d60a5d3db61bfafafebcfffc336ac57b94bcae181ff98520567893c5e33ebe73ff3849e24c90b05a10ebdbdb89e4ff9bd37493f18a5a84fa21679e4ef5929028be89d75cff9cd3c0e5952b841cd90f272b121dbd0ca18bb986f9b06b44f4119b2bc151d2348cba0718ec8badcb16bed372bb1e8d73fabc0b9f64bfe9cc6530c29563a1d4e940fd51373c09b5fa8f4591e54e53048bded1709a6330c6e3675dd451a3f3b0ea5a4d13b9cc617d0bde0b625c3d8af7b0724e81c6cfb0ef4b905773a5a9c1fa6f458ab4d6160982a5614c7bd04de49fd8e9b6586fb92648e65f17f12560489431c8ed1ff8d9f323265882b49349b821f896607eb56ceab1ea566878bf4a7f417a6c9244f5d50b5793553289906251387faea0c21bd2c0e1be7181285d63f399effae0c72c1a03adaca8e1f9ccd1e40b8700185034e614be0065ac09bef0939afbd0e10fd09263ce5800b51a5841d78860003ed8c57c5970c4ac51033fdd00436f0119d1dcc185d9156dfb59065537fb486d327aa908e4e29d9b28c8e352e9c13a4e48d7f7485c14d80928c5ac17c8b4982e3e22e0650e52f22889dbaf12189398a076c2301831d0d98ae42e1d987f70d60aa51e3bce67fcd39ccf48aaf2511228102c660fb5add0542f7fb2c8e7ab8c248070d6bf65d1e9976660cce8a3c67cbbd2018fb59178dff9f98321aed94e33489959f6032039c80933b804047c121622f93ed7f5e8bfea239c40820c66570e415ccb5947e5770d2f2ee9d44dfc36c508e68fe5041c7ee93d75823addcdc798c5ee2d7d9e16253f8d2cb117526925d7fee09463aa00a321bd835e30e474b06911e92f6a8f8693702b0972168a4c2d273f2aa2b5817d3ac4f631193c8896f1132c999210bce787ff448c7376acb8e0afbed881fff945168a44317bbf0fd2d323a0b225081b5acd460036abb343260614b94d638ec810cc68851d37cae62c150a064cd4b714610f3a93d4df3b9702f9a08a35e51e45160784fc90e6cab98031a856c8436d62095ee4ce4cf86b0f0bf7b048ee8572f33d105e552cf6dda21e0eb643b6531f15cc21fb213d6a096a78d906479f975582461b8aff200031b0b3567876987fac156a5c94ffdc2f72fc51a73848774f4c26fe66bd70c6ede8173403908f6e3a2483d48bc43d217d719436a212a16571ac26489b54cb9539586f14314f9c99e6c70624fac75d91ea06058e7537c1c5b7546c3fbf7376405498d77976c55c0a53597cc23176b8dd25ce1a8e1662ad8f4b744237a49c6eeb0eceae2b84661a8a5ad49db67130d6ce8c0615f7a24b090347929f63a8c23e591b72c1c392a0b86e7c02050be124663d81251707f37fdaeac9a163e74c3ab5b2a403cec3d189d93de033b14a1f76b5b0b9fbc9844464fa99368e5b192b69233903a2f3f3845807eb22ef5839ed5aa108197b24769fd6e0c8ab05d2ed659f769983397813af442962429ff6408c00c9024d8011701b01142b44242b434a57137d9383be8c1a831d33c1cbaebe92cc7815656f3109eae16f895411d1b18e9fd86bdbeca2e1950dbc384eb4a4198c82ff0152d6c9c9c932c464f887f088e049345a54e1433b9ae56ad1b85598d5a605435d2cb8a9147174c35c6fe6519d73594e47a76b2dd47e10d2bd2951be8c0ea09d701d22439c99535417d977a12e3c934d31ff645f6a5817b881a9fa3104a3cd901c89c7b9dfe9e0d0db7594778c802d45ddab63228a16e3a3d1cbd6d4090a64443131e15fa958598a4d9f733ee855f9023c3c3c1179012324daec4e232ce3c71636bf26b663b45ee2b0e65a8db3e0cc4e7cca19336c5713fc910a45b422fcf6c1a6350c84c3e9a0ed11f93c3c6adcfdca541b98c22fadd844ecc1a2e0d0e1f5564cbe1c2e159a4746a21e0b99f698a0096c65cae794f69c102c8e7b48e94335908111cfb9466d18b31cbc918d2577009ad39dc4d8a8417020df77fa558c03258e2b69a1e4440017364965371a39bff93e17d5ef3485741979fc126fcc4d0cc9b14493ec7213a039929b9943e7bcc669088f94c523d9394be2756d5a4d844b1787d5d5bade923d0fe0a0eadd03ad5991e585d9d4e1d037aac283c7dafdbff9ddfc27ff9068a174103641096e4b8cfa4d62329e0c0e60c64ef7a01a1c715f66972c85dc2a0fe421ad39f215b006d3a9ca2cb717a552f5ccf52441e5f74e83eabf76a0f49f5e7a43d78b421debe6810722388e3250be21a5a36e1ae31489d3542ab04cbed7b7d82b2e7c2ae3ea2fe66823ccdce4b951ce7b52aa5813140557203976c19e55d69db5f4e829e253cd2b443db40885b659efcbd80a992b98d14e49ad0fc340248b8205f40898120814d011fcf2eba5523350b6707f09c15eb84bcbe48592d3c3b12213aec40b321f53d6660b12b66fcf717c01b03352e25bf78c0c406c0ef46f2bcda2d0269a4966736060175fa93d43969cdc6620a90d0a05fd6820a64333d5eaaac3e2587a06468da11e80c7f9b5a33474e419592fa68271a7ce0828e04b3350398f70944ed2f39eaeacad5757448d643d614269488809cd8a0067acfa983831325cd441f200ac026184360dff0ddd3f4bdd773f8a7b8a9bf509ca0fe29e8ba981aa74514ac11248daee2d1f050566e65f41f6e7d20011d1905029ead8a36e475650ba27575c0172b100fab609a342fb43cf182e83824cd754357a1b2d541ea34552d8b2e2c81ab618f3fcbcc3a4add80d988178bbdec7c3249ad9ccacaf5a517e32c173767281a47b3774b074d4e3eaa704945ba8426138714c5964b6ea139254925c6534f05477d85c47a8f4c3b278ef50f678882644484fc219c5cfa7f2aa078fdd8c091cb658298da0ddd968272a0f7b5a5260d81da5223198aa57bda3c2ab82cba5a313c7d5d7f6fa6528cb863cd9e09d9389f2fd1c8ebe27e4485a3d0d4fb91155072ab7cbf5ec09290fe3a45cf475414e6edba14e7d21d07eba334c8f5399502f2c86cf7ed5a2404c3b3ad06313d005b1025f100534e4f8a94f4a30db7e4920f82130fc94927bc7ea8d7c893f19bbd4522fd6c1d6defbeb3bd128a8269fa7f7a1f7f8b622542f8cadcf1889239dd6b93d666fd96f9c95c5c324f288e8b8b7851d55ceadf738f237e511744cf683058f3c3e8da2752d17ceabb84e8bccd03ea0ab5fb6a5e83154646656fb9ba2aa4bce5aa6777bfaaeb81fb331ae609d93d4dbdac72fd00ae9eacabdb0c7c83c813c4418418ec9e8621ea4a4f2992ba16e66efd7bd6874d05831961530a36e7f17ee17ce81a72cc17aace81267e48d08fb3ce2346536ab8f01e5e74a07fccd741607424d0d893ff474790719a19e657cee2330ce3300a6112487e09ff50445345a47d6ea692f86c8b0810ed5ba3f2aa43725a2d6042a2931c559acd09d713b28f50daac2ee2152457e4c28b31c2d1330a34144583e47ee7e136cdda0fbf03490a4cd940fa0993c8c43cec0a8adc02186263418c12441b7209f013b338085dad5402757e5dd1b967e2aa162277e74dc88b865f70db491d1c60de1e548fd98daa0f7a07be3ace2df6ac175c56843b28cf6f4103245ba6a87c22b4929bf621e2092fc3bce68c042342382c0287632e7331348414afc82b9db00f51521109a7c5bf02226c7a01f38057a7ad9bd82788970c965ec1f2abe8250d5f93e1c7e0e62078f7d3f2bfff040f790498a1da11d6226c9104d813fa11f7620f344d980415586a3280851ec0706ab8c9f89b6786c0c533b8f52314a79f9a5ddc5a67b8a5e2f2a4532e168b6ebaa092600445036035acf367d1a4685d2366631429606201471bbd9aa3bf2edd1e86b346d9a809666821d6c63709543e422bf7e606fb0dfbc3666b6d64ebddebf85d0639ec403630c2c1d87c976fccb30765a96f0b36b5bf25a3feaff5d75e3c9a3645fb18f38f114c0fe5c602db79f30e7690a5032981cf91c65150e35b0a63d607a22f916e26ca26a23d6baef28e10e460ad38d61de1bcc329e065b2356110d19481d4ec882477d77f39bed71bb847981047e025df97f12e06669c51dc249a55240f877b4161038a527ed26b83b508142efb8c44f52df8bb227362e4130c408d9292d946b187dae8e7757a05b370cda0329804676ac6e278249fa0e52a28ea44bce8b67f548908f2470c7c51a42e1070bc6a4262e0426e50b95b7833a71149a53d4774044a3d21c0389e4fc0cb09236f73dab6b0beaf71e3acbed3f0070cb81828e320023aae272b6773e1ce76ea2cc4125f4f9835c428f20ee76070859dbb4a3e55edf81e57bca8557684439734c64503aa22fc4b24230672e721c4f93d086ad57cbcdd325bb26d92a11703e4067bead00244b139165e115ac56974f19a80939a4c6dcd081f11dd3e553b385b964aca9aa333e78156986dbaa405ba98744b6eea003cc7c8dbfa8a34061a6ef224da9dce044011952283dae77f1c172d8f9b5f30568a12bd9a235d7fc2fc62cb3e6234b72f67d312a3c12f53efc99cc0f8eb430bfb719a08d9a488907fca2941eb37786d5dec88c86ffb7b2f1a7de1c12901498a1ba3fe738f236487b19d92cc2bce82d44203fc2ad8805dffe17f9bd20a73900a31e9fa9bd430023465624aff1a8b16603df8b620600292fcd399445aa71f6c3d73147fe38c250b9f2296a033483f451fe989c99a8f44541838d523c8f5a67a2a68daba9b48828a32018dbc51927a5410bf527083092277098e329a72ea4bde69f40f34d38c6b6bffd6fc39b17be43602396575ad468618f3bc912ea3ad2ea6b87666970a581483fab3d6ff6628cab7737f43c7eb83e1d7aba8e428b624efdfc352ed0f03636dc18c73e450d55e63f04a548f88c9f086b546fc454e531d2fee89d9583304d38453fe8330822eeb289e36c82e35f9fef017e9f25719f699b47c38396a69f9b3231b4eaae6edbd5a07c08fa4455cdb3ba90b4a62e716debc098e3ffafa35c8eed3cfd7a7d4ac0dac7117815327d94472185feae22d7834571bfa8132b90cc244d1faa41fb828aeab98c60bdd2ac4978780bdc80daacf9515d80a0fd2c8688964191729e96a3af4bd960d087c176f900bd98c11efe5b246d6c94ed0095f3e63f02969fd503165c171d996892a552a4432d66eaa6a87e97d4bde7d62e8ad0afaed4f3e9b26a4617e8030565d598bac44f2fc08e4557b7401fc03df7da1a0c10ae9ddd1fd6ee8fbe229b34301564058b0241b1ef32164038763b3df190d153210f851df3857f252821e693cdc16f21726170052cb5b48ffb964dfaeabf33b6f1d187eb1e668cac99fd4bb4067d97c0ae509430807189d2f0080381603590c32c4d7ba228e1939d0d48d390be88dd22090c596ee0fd055235237050282a28c502336ba0c799859e82116540ac62908cace6cc31c8e308730d9b31908c0cf8b3cc4218029c2019a99555ba8f7ce371009e0bb95ff1e09d61c7e533ac9d3a0b78e06911800d89f8201269998d59a84521acb6b9c879955e6fba6104683c179f8f93fb5a5ab89462389250798c2cec3b1a16713ed43933596d02fab2b1f1ab736fbbd26f784a0787ea77b74cb298c4fb21f92c9a887d025ecd761492272514d50cc109e0b264670a59b7d225e365c4e8df925af611af4b09e80caeb04b6d0f8255316bfa2aaa5219e5348d6b031c4189cb476e2c18a1c4b041f1ef2d1384734d146cd982e0cce742b298e49b8529218cb4b84a726da689fb67c6d579039a8210900c47a5cbd0485e2fddbd36fe4f11e9ffb54b2c4af550143448650579f954ed38cacc98d0a63e8c20fea99cc722c10b9ec282f885e234a6bf80f4e2694114dd370ed09c7ec141d96bf9622d219d1dadb517d1884791009f07ad77e16c9c28409b892eb46d70a94ddc1997812a29725e01859233e9da107cd858eb0464cd5d7a6015a87dcf59155cbff938e174bf0c23e06c1226e241f7f9a75c137ffe97137aae41228d0482efd3de9ec1deabcbb3cbc06fb7d6fc64bfbfc534225b10feb609360db6109542744a0f9cd7d336171b60b34f64c5e271a78ad3bd2fa094d726fee86464f906086f0fc127a11c622bcd3337ba4ccf8e4acb599431b495292f0eeaa155be720897005e18795f73c6ea377b3da7b9d6d70bd3d655416ed763b55f2103418150ce78d76970e7279518ee9ca26f1fcf64f64af59f6bdedb9ac8fc6ce798f49d15b5adc14ef9212d4dd1e2a0e887ba0f6d89039f69608130ba5cc0129f47d12623ed59510b65c672764535d3320e0bb3e982b6a2fb2e17927fdfa8e482a3a87960ed29743efc128e9733dabaee277bf64f5bd2b7631330a3123dcc7aa81b37282a6af4d2542e5e1d3a8ef91a8d889df0e6c1137c6301bdfbea1be6445f95d5621359f6acc78b2abeed953058e51d5130225d778a0651442d9b531d23f11a3590c988e32ce4a31031835cc2ee45259d821d569d5f39be42e39b7bdd5dc4dac70a412f7bddbdf1dbbcf63704e2d3cfbe00afc815dbb54bf62f9d684f588213f703e60f60547a4ad2fbf5f70f8bca697986c662269a8bff0d5a3a372bcdd7555f151f0eba81f71c2ac6961c10270d8927bcf2c6bcc95c748515af266d774dee13e97b7401ef12d88723c487cb51770f154ba9ba8d9041116d63db9822f1ff4a3b3f665340b08e6eb9485e2400ec17f13980d3a422270bee54c814755033ba12f3a56739c5738886b86fbd273344edef4f1fdcac47c37ad5f22d0f81bd87dca0979475c5577998b783409b478aa614932199d0a883a5cb3ba5a72802b06ba51aa4b43fa51e68b617b508a8b81dd074bd42bf119a9daaa051572210df85e82d6c8eb38c4751cf2cac7bd9cb3d0a7d6380e52b7e6e464ca91e0e379c6bd2fb65c78a908c40682c6b994784a9f45e35622868c6c0439971b23c1eb0eaaf06fac3f8dccfa901c917c00545495b10856be449b1cdad44b8abfe9205d042a67d190ce1f423dbdc55ca506af40c30d94fc497f67b7753bcdb4065fc19cbd9e721b71a8e7ba6006a0fe77a5426bdfcf6980717058b2e2f83f770789340713d093f724a394af8ca5c9434978fd3edcef793892bb005ee5eeced9c80aea6c19a431154e42fa7560cac406d42fb8677b79c675f1d67a878994d108fdbaeb1f867cbdf808a2e3257c5a9576abd266bf0eceecfb45d5a54a4dee21365950d6e24b4fdb0b45b3f99a5982ce3b890183a443c226b9f7a05ed8e8db8ff47b1d5ac7ddee03402714414cfa25febd0bb0cc93ddc033f00ab4d93cecaebe3e9806ee4ae292704f9d17c8014aa682fa867c258de96b0e9eeb5960ab75b559a6a01b0a2bd457505da7f14b2cb7bec2e0b556c45b9aab4bca19a012163d7d117b8689fc2d5002867427de1eb2925a45e0149020f54f4ebad355715313850b58e08d228af3b76ccf7b77f6db90ead0c82bfd9e5e3534cbddb6b8480bd805dc22d01f0af32291e0ddf9ecd5ea9709add00e85c80a6f9544cef7f89e52cc748d1408f9df1a2158371d8c14794cf5f79ae8b7ee1f881eae0625d8099059c7f2e1e71de4ba83d6200041ac20e6fb5bb36fc424a9a33db9851d326efe3ded248c2894358b8346574468406f55511f5438abaacd75f1e9ee024f0c2e45678fe3d5f74588e770293242be382c80eaba6cda27034bcd784801f397a316be1c1af3f19692021c8960b79594b078a768d38867dfa39df4faa69d932c23fe3094b2b2fbfb6d14ee31f141bd27b83fbb5138b59738a236f564b6839cecaf23b23a09256c49c1fa9e8f0037dbdd1131ed2dbe8c8d86b0cf083cf727a175a23be35a7e5fe451e2b460cbf9cb39cb28b0bd6ebce29d05d7b8eee9c94e324d8e32834f74d8975e7b1f8bd26bc0dcd09c4a6545dde89b9a8306d0851479a0f98fe95d03865b0886643225661b96ffb76441e5046f6c3022b5f1656c6dc83ef2022d307a6743103ad19489e37ec10b940cecc8e405978515faa66e501ac2a0e76d18d702be5ee340d3d20953a7213894e5e1255b83a00d4c7db2bec0982c5f80a7cbd0f4154de57c29510c53b98f05fd85d0c0d032deebcc1c3cc32c15644ce3290538fca48d12509e00d2aca2e3a3abe4dfabfb90a947585465e8f1bcc7d13556fa45350799b38d3fc9676bcf071dfacce53205e0f303988a1e3ebb1c41499edbced52e6c51877be4f28bc6cfd3886cb7c5015e2ef50fb8f24250606d9357a9b01e663769841f19eef3b06363a336da76c542a1120a77520b0e39f22c6dc0b161edcced7b6fa3fbcb4ad5390713c23c13900abdb2f9d6fd6b11be0d80d6a96f4ad440434956888551a7b9e9b84b587c80dd992c51d7696bf3213f2af4b9e8acb7211e8706cde8efad519c465f823f313057c4f4929d35dd8c50c5024584498c843d8e5faa3fabd429279df24c154f305fe8267c1bc1794e2e83782bbaff5dd581f347b68f97eee8ec29fe4dfd6a8efd04bfbd9acd485a9a43e610b9cfd6a6b2c4fb0454fd1c108a1435940851a248fd8feefaaf230637cab906424c97c3b9ee8d19755aee418ab795d84819542b9402834f569689e45c3b29fb0dc46f74683dcba79394c6df67abcbbea41907d12c45a1744adba0f6e968b5569be5472c698a03c1ccad59bfc7249b758df890f5304ab0d4770d23be14f9996a7645cbde01e4519ff0fb0c014d1649b8454de97f181d8d6a18e7400c6f3c1a0fe9c9ad3420b22c8b7c798a04a0f89a8c4b8c4c8440e0871191e26b2ccfc271319177d1dcb6cc0fb96b573f515a9e3655fbe1204bf112626e22c39784cdff8e234cc84ed01ca48248d54ecd958d2411f322e819a218c10259a5f21b08dee081080c152437aab3801a02e4b97c16b63f6d0162fe82cf5ddbc9f6fd35ef54770231e18f1c7f55129c4b4077134a324f222c53e4e974b20689ffcda434ada1aac56f351f4948583770111aae0489561021ddccb529dd50de8545e901ba1be59d7ba65a929ffa0f5be670e79fe7a5faf5170e672c17074722eb10675cd6a3a5f47360e6a26ec8e3916211e7c223645d84cf9d1c353c11fa9eaab4b38c83550e203de8a43c8b75cfc19919803b607efd95ebac853985a2f774949061bc60e9d6dbbfbd6c6179d1a3416f3c87a05cfecd029b731cf9a834ee379bfcd37128e7c9a6e0649195cbd3e4865e57b33f089b0e1966ad63ae5858683febb8e891bdc9828a301113ce95b199513adb4122079cf81a571f3d4c3a3ae93d20676e3ca545f44db263b54f2da70b1c11016845782c0a9fa73ad5a9efeec38359879b91157355584e1690f1adfc166e403d93fb2e158972886d7c64395a41dc2be0750d7822fe0d63d08179fe8b2b2ac74171589cd701450a664914df9a0b00f4866c3652f107832219f4b85f65c7a811d2d974bf71f2158e84063784173d5addbe46abc1e8264c568d9dd95c38dd22dcd98444fd2a2e97eb2ab6f6d7168864de0bbeec55540a5974ac704bfa012c4d0264af3c3786c66e66887f055f053df3415b4bdb679fb41171dadb63374d6fc090857af1d6778d9b590db77527c8d5f009bec6edb59f837dd0c45ba21809444437e4b35ebf3eebfeebd2fdcecfef06aff9b302545f2b5abae615a30a0b059bed9703b6b0b0fd21ec18cdba7581e5599c89380ee0903f81c527335f863d8fab923b4344316c16486efeac85cdd9e8696e338b67b07953f9eaa9f927014263a7d90663e4039503de8e94650c77b56c0c39bd3d40bf37557fd0be7310e8d52fd6b128ab1fae8f34d8c82e8260b3f831c8bbc84d256a38d9b111e045f5338085d6716134090b118ada7ac404b1a17942ee22d7cf4a28a79dd27d5a0925a3de002d0ec35083e7b66f1dc93cd59e9864360b715dfce294f14e9b2fb9b3e2b21c54622a1d104dda9716df0ce872e12004d66f7de3fc4ee33b3ec5cc41a23cbe9496db015cec1f6062f9d66cc7217bd44cacd19a61bbf293693148c9d932e1ccfac89ea41f7b6cb84fbae5943a34d16e99b2117526a44f88f746a036f4c7e245ed73ec966e5516206b447d1e5faa8619263336f698fdedd8e32a6e1636f08851547bdc27e3be2dce00487642122f665c2bb7cfd6f87ad3f49ab031f525e8617a63d593a47f0eb7036b8a7c38dfb40e0776462fbdcc2656ccb8467948002736429631ec8bd0b11b6914c23cc42d75d520304abb61d4a323809b0bd583d8bfafae9bb45affe2f7ac0a13ddd9900be4e50e8abc5a76270bcfd08e715335f2b38966b1c1b006242dc3bbadfe5ecbac2a7ffaa4aaa0fbedf6b92f7f70c0be8267a663d5ff31d1f2c01289f4d424d374db7c08615f3532821b5be9ae12adafa40dac2bd673f3c5af08bda324ac1f2e482bdc6feb7ddacff97be0f646492030da2651c93b64a1a8b812a6e5de189d7b615f25c79becd5daa685d2b1557c4ca64dc83a572166ed8b7f51dbd4560b6a13c6340c665ff567ac759ec23402ac8ffb00a65fe248218955e343c66918cac728cda9828daa97abef0d8beaf9748153085d290e607564e0bd1dfc65962df87ccf3747a78edafeb9bba77c22044163171766a9a876890e880a8745b0ca18cff473f0c018616ec970b44676ccb19a87e4927861144a1ea99d4922aa44fa50621cb2d4552571b2e5a335a6fd7af6be9b9ed3a4debb8be492a890a1ee07d1a8faf152487ee7e9b06b443c91e81862f51be7a1edec7cbf685d4d27122b431e1c11a910ccb7d6db9bab714741257fbfe8283d21b3412f670ed6c0d1b935df62ccab24250f2badaccf529d6f454db6db2a21e1fdad8b87d088cf9e6fb56438da760332f6537919b4ac45ebf9adcf1a923debe5c1a72565dced86ae374d94a65d43680cb2adaceb676b097af1dc8d8425846e669ba4173d6420539769a44f889a6c4448c32a5bdb1c6273686c4f10c43689ba8dcdb22b50c4a1d9b7a53c1c644a56fb24d77d81349b5f8b15f4a3b4923a1595cc89dc21179515f3bc149d950927cfddf80557c54acbde9fa4f13002f22aa68b31054164e5187abad6b8474f7b855e730ff3846b5c34925cc63383531dbe2502175319289ebb739aedc914052b4f6512aa44f2e68651008dc70ff1003e69f213a671f5a704c2a893c72433d7aa87bc842a699bfafbedcfd5ed110d3bc135a2077a31b7449ba42bd0036b53bcaee221d303eb14610b1d24e034485ac684ef19855f67fa2d981d15c36998421bfac1abeab635588aa2cc16b961f7de4f46334ab320dfba80f7611423db814540d797f3521c3e071edeb11b56e4d79cfdb264d5704468c8c9305dc1fed2138cc77a6d20206094e7c17063fff5b11a530d72c0b4525ff2d71c491aabfc8b3a94dc4ea5384ee696959cdf237473553f7316cbcd099a4f67a7e6f0a7f19be5a2e461e8be7460ee99262915a82b9d415d34987dc9edcb52015dae7d60d68a394cbe3f48036c448f3544b505e3a248e595b058d2de3e71117a3dcea5d1a1dcb67ca6f9c317cfc69986da8cfd76683b211a6f8199f9872421efc7dd40e9c2341b2516d7e306128a3164b17042542d7300f7adb0a86f42d9924ee1723545e1a96f94279c0966583883e3ca82a2131d4156ed9024c663009f881d1100cb4b76789fcc369cbb22baf8ee177788fe63f91b0a5a667b7a2773790c31717b444729d50469f609d00945c62cc3883b8e89faff0717b83172aafbd7c3a63fc744c5bbea37c6d384f492dfe192850a915b88d5c4189f6529810e1181fb1420201aad1a2cfad46cd30b8204f7fe2eae1de02d1461aa59b062593e1853146aeb8b38b2b73469f010fcde2a55b4edffa87f29b97f055f4840cc4858be845c509ebb9173a24ff5fffbcb07c59914dc300097a3066aa6f934694735489e19bcc942505d305ecf342be93afaf9d4f110f6ab64478d578dda5a7aad416c0256619448f75d54a119dfa89feec1eb9590a9a7cf77b21011fa0303df796ac7fba3b54dea56722afa639a550de4174b6c49399d70f380fcf96d937bb0bf89bb0f04975f280bfe04697f413a8767a067a6edfc4deeab5c2fa0985a0681cc1b8d6dd9da46eea2c37186227734505f9d5159e39cc75e2caaca218f517635de47a300f95409be2bf0427f87208ebbca8c8ec76c8b56a141ae67930c8c8f14c701291f1f41a1b68025886719c6f10be78dd7ef2bfd95cf52a84406961169a329921a482dfc4b0f837d3c56b3c89c11d229676e7621764369c2e88b0551e15fc74561a037e7a854564809016ba0e3e22a534298408b549b23ab351360749eaf7a34e1cabcc5982a40ab444d8b08188c923daccc6e45b27b25f2d6db7dc4c52d0ac9741b9ddcae0d5c3708d2b70bb521c3151e789d31f902a94ffe6ef80ac78ec9cac9556e7eb92caee2c86cd6947c46bfb6e06763d53507a85a97fff0b235694178baf1001ad7b46115825c98f9042820f9a75ef99ec91de66ef052e00cd016e0c840dbaa6e510663ca8506e363bf757e8a531da08ca154303340e555b30e8d7d524ae058c17f156b69012c10463d1b20f919d302d8ac3fa3741242e7206f5d066164e8ad0d3dc7227c9abf861d0279785aa50699841447b5f8974d0c524045f72829887006dacd3b534bf0cb0bae09e9cc23afacbdf21f88935020e6cfb353ca41256d92ef8ac57aa81f5b25780e47c2a11991260b1b9e63425697f716c2ae72d2dcaac63c61af511daced9eb4c8f0be75241d1392b6904046874d8ea2ac09c6b684d0c0c7f6e6494f22c0ff347e168276961ad0d8c957a5e9ee0aad38d13509440be36f1ddc57b8910e7d2e2a6790c29bd75ca27b17dde20f03d3fa3763573a08cda714b1255b4255fbf34224cadc308d7c60b225141dfb8d1e72499495827da34883690a431198e113378854bbd266962a922bf655ad5d69156a098bdf564ffd78b091812abde58b78f87350af7049b51287f526dc1846e79ebc5804b063b6d67c373f6ed39781c8e94d910fa2dc7ad4eb725a4c7b68c72d77172a1065dc2339cd4eaadece67bae0cec348645910ad2bb4d105a1539c868a004cf4246b714698062d572664dd446aed224892258dcdb68bc3d5531ce9eee068526d18f1e3ff623740e6f5e7cbbb60e894a13a29dcc629aedbb47874cb99334d60bded5ed52272d73c4999e206da248accc8ac7c1c98649e4b8024d8f78ca62c3d6f91f014e1164919076a1b260eea4293d07b983685e0a8680a775057d2045a9b049e0c2309b0fcf87d8cbc7ff933029998df862fb7a84943747a71b8910dff7a13fbe59f907ffd9d81f05405c898c56793fc38a78bbc15c729d6606623b601cc860f5758fd8c0cbd1ab2cc2fe0218470f953d8b19e4663f1b8306013f19fdc116df376144ab7d93a74b539f314dd696b961f59f5c28cde8f4ba0930d80a6d1d81d1551ed1ac882a7dc7a7714b929258e0b2904176ec41deefb6dc64d575a8f886c3e5aa862cb64fa16cad4c151aab23cecc1f63215175120f077bae9cb55f40a988bf1c7fdf14910582e60da63bca71c25799fb806e5e7642eba6126cd11cf10855210ba9147e03a4d202d4bcc5ab36b0dd0d14338e1a7ece26e88f59b7a01b62771e82c4439c4732aa37302a10efe6047bda13be7c103101d760249f190d47f76b7f2203d8058ba0ac2434fd87dc31c70b2ad911646668e4332ed8a35bdb8489e1c22a368d20992c9d8f8860c9131b1a43e62f8a47bea7381a18d5d45b38fd36f59d025b4556e5f178f67e360db57056838f4a5e5694aa0c63fd8d11ba6faae5374710e2a6db81e153f2b58b06547830481b75876bf88370577297a0d5a4204c698ab96c83b508536ee471726e751aeb551123c918e1349ed83ba7396353213fc002315209a0e2a2e3e8a0a8cbc22a3e0923355866200d4290236908440e65d39e5d938f7322761916d8c01b0615fbdeb03592ff8dd57c3ca075ed203bee12574a2b0dd9eb10a77a69e854a142d82f7c77885b2d1ad8b61af11d1ec53623d5ec596ced82f8dd2f8d62b451e6d09c7101b759e3922c2194245cb794613fae76a5f9245e4307cc33e2b4e94efe28ae362aa242d81d30d74f4c03e136986f1e4b20c090797cf2918a1e01366186c193766e63891a6e6ffc9a122936ac9066af0aba9195e9e5426ca84c7cc40fea478c9c397ba1103233154cddddd3f4d2b40b9fb3190703e909cf0ceee69f79f7c47427cc3c34037de055a72d76cf97134e1b8ab42010d55f9962507a03bbc13d06f2de547437592cd04712b2c79a750e8da76998b4aeaf2f0b3b34521c9a821be16cd15362d9b2549a87a8c0068602e1811931c262f98158cda22717ce358713a904c68a9c5a9b486d0521b13c94f95bc7b187328ad719011ac98e8a4a4923fb46950ec66ae7c6432bd9318a4ac831888f1d328c43d2c830f776d9dd9203140858d7273ddbcd2b5810aaeaff45b3213129817b5e8ff161096f670090a910fce7de82812a4deb983c1b1fa63316c87de156122943ed3c2783ec4b18350e8411f48bc5ab70b63ca0216ca7389197b444b330461e05cbaa93f3ab18a34230a8a26516480135741ac2dc57335dfa47b3daac1c3233e546b122b203c4fd3938fe4f94f8cc5a9e86c8ef234b2a33e3a1a115b681441284e716c8a0359277b350dc2875114eeee51726e6078b026d501a52dee1415035f3d05182c15607ee9715e7d8b5d4ce09d0e70c9a616d1fbc7245ee27a5f77bdd7222f758280ed4767a7612f529fbae554f086815c1695ae14c30e8a20ab37359bd635084dba766b5a37c7868a5455f75288f19c4b10cc504e8637781fc087129a36d669e88dd8ee8d94b9221e13ecd46d8d73ead0d793eccf2d0fdc6073a458e78426276ee505171564e290736a5493f328d235d1c29f90bac1c9d0a415f4b331260bb16eb4236d026e71da4ab2817310eaaf0928695446c0416e042a8ad7676985768ba99854be6dc91077bcf1e56185afc75be6ff41bad38126d0a84baa41e1e344bf732f096a4bd0690f38f3476f9d769b732b57b70a56d9da06f1feac84f721129b6233f0bbe154e749a19e663e89d82adb2663e232b275b720e8269ac8ec2aa3e67c0abac3ccb60ac2ba3921bc1b2a2ced9ced5294e78c35a0eaa78e54e8ad23c7b0fe1c3023aeed0eeab9df43b12d9470f992f8bb1d6dc76da30fea5d2d0b06be1155489049fc60c1d3590d4503582b2b598bc17eccded74c8701f4169f05db9b97d5b9488584d710daa1cca32ee20d296937cd48a739178bd9a00cb75cdd34afe7ed6f1ea418a9e7bfa22ba3132bf56d5c40e526b9202eb162c61240b4566b3f804e6351515033f19e03d2b01d669dc5845e86f55b50670a001010eda5b687d8e62cfed1d28598e86c7a6c8a4525249f23007ca5843814172123a45193915f82b3a5ecd1efe20a100de0e0f0f2d97daf6086a0c44c1d3f5d4455de84670720d31f1fb60fcc464ef4b577b376999d477961b0c023744b229dcfea9e948861fc55af91ec7483358451c04805dc9a1557ea860bab1feef3df392c0a5ac4e8be7243b5f824a356605ae47c91856f3e40b4d2d3e35a17044ff78a4981a9b3302db9121889ee389bb6b651e0936d714d08c930f5b432adc5aa3472afa7934e42ff5ce59761e0b7b7735bfbcd54086b777ca9ded2ab00e0902abd6ca798c9b28be78c82cd8b9e39d282326a267d8d471b775b6bca2a888b9acf761ca9d353960c5cc78b3cd1d75718415f86d26b46c4ba0b0730fe8859ac927af08f483e7f0350de1d94368246ee7a1af810e1131fbc11448e8d6ca11b1fa749311b7da8910394bf53d070aeab198f9eef3b353de5d3cd2925b9f915e6d50455aa6434081fa9d324b374c185af9c42535a6621d1925d6e6b4e8fd56f21051405eb6760e4fa907ad74290fe0bec482311fab506bded308d38b8fccd3c46e2093dbc8b1240baa4a97f0626360301665af6d26af95f17854bf4f46cfc33d88597ce364f5d71151e673408ba59ff88bb339732e08f7964d6fce944809222b718c05631b4effb719f1fbd299195528ae036eee16ef119c2c8d981addf92e89d326af653b89f9e2e37d8ae1cc2b12a0b4f3ccec44239129496da48502baf2043c63ee8b313aa88a0075dec069bbf1532da9c88ae80a635c85631688101e163dc15c3e2ba982707a71a565bdf88d8b624b91d78c5144e6fe05a1c1e8df10b72221e7da5c907ba3227514ea7fe05779abdedb9dbc4ef6940834ae3e68ef0f8cd996ec7b27efb4d6e44d0880b64d34ac4b1e5a8adf474d53f683a2df9206d8756f2293f3f3a901567885914aa24989b1931d66d95aa480e27ab72b09c5a66c491fec8a574c0c8b9a019733a4877a7882f896dd41a0586106c42b9deb23899419cb93587701f53081d73c698defa4d55106e7aaeab8f0048ab58fb118d5f6ce10989a02825a1036a6a6ce12fe61619e3ac0625907900414db74da065d8627ac4fc36a372b31a8c1a4792183d1635b156fa7e4303f37af88385146f9e027f878ffb57bf2a152118cd2629d9ce34cc4ddb222d0e57300b0ae8aefbb742ecec57db20b04f2f6d334988013e51d665698f7cec8263d94438ccadc4b35b842246e0ef8a5fe0bbcf349a59b06541d4e9398af2cb7fc666b512c2a1733d7e8d0e083a508e07c72aa0bf5af07e611c057d1456fa0a059c570b2abe77259f802250001a9878dd5013a4ed0db4a26af07ae5d64fbcabf212c4ed2b9336c10c87a0da0dbbe0afa81b52fbd41d2ddabbd125ab09681782d514b42b49fd28bac12993f51b171bf280178f6100e41033a571a204cee8db148ba40ebfba748dd2a0f205c0add286f37d9a2fa5ace303def32320cfbc3349d3bea65e3aeceb3e941e228165d5bc2e69859406e1a3547bd67921d650105327fb06ffe71ff524a3af5d1006bf07dd337d49d9db9df63261e220aca6c5b098b8538756a12a5773437f85196469f56e2fb5e15b60eadb5162cc8c18765bcec7bf57c6823338e3e9627d8d586d0d92544f54291efef08006f08ad8d8380027528404b44b34769b151f55dc2e740c49c04dacf190827a87cb3f1091ab3dd6c3319e1a377ee011471cb7216c6bcef7425c02148f103401fcc7517575bafaa55c2d92839b82c4a4fc1c6d0cc53e680c2d6d525a8fa337a1d3da5c21391bc739f2f10afafd6592cfde588356b257c0290514682063029827248ae693791d324c0f2570ba454bf4f180a716b903693bac7a8028c20ebcab9023752624fc5688f987a3754681ce2171f34e1b4dc92b85a071bff3c031d562d793c3011b81fb4a908ef5a0cf53bde596632a11bbedd4d31d3111ef7af4fa7361b344f2f14814abc6be831bae1a575bd7dcd5f4f88b98f80622f488095c297fc404650c88d54bef1401a3174031f400a23dc3d0ac82c4513951adf5b735ee8806750e52bd218bc98962d171ba5d301d9f9ab1d5b9e0d74d4fc6f3de1a61ba9bb325363b598b58ce2f166ced0659c042ae0cad9c882c9ac496e684a17ba03c5ce2418bbbd06b75dfb527bf12e336b4423eca7cd33d808b69b1d01c21fc25af0d92d9819605324764ec900cd06190d567d0ab4388b75d1ad806c3bdce5a2aa2a368c881eef08e08dcf3180ab309cc3b95aa7209915ce7057c51bdef57ec57a19e11873a5f3fbcfd254b6c866111eb83717f030ffe068b0ebe3572565e5fc079a82ed76dccdf14b18fa0b9fef94365ff7cbaa214a61e61767cb9a20750d18cd1a7eccabe6bcb5ea1e34405aeab8888a13729eb4260e298528815af1eb13f743ceec847a95f1777c5d2bdb6850f36ad1a09d7d55502941f490c803a7adc1a869fe19c60868ae27a7ec600c4e1f33148caa4781c7c232acd5c0c48c023bd62feb908e9c484097a794e5cbea4749243ad2406b1dd395dfcdf0c89f61aba3894bf1866a07d80d11ae85f55049fd69464b1bd5d9335dc11187a0191d04ab20a8a2a39c82f8faba77b6613bdb6248cd43356636f656e6682fd4a96c67067fcc2e78605a6e197db2f8b54b8161e623d373878a5a03c9b1dd995740bfa082157ed61a53e7103656299e264b5429011e5780abab13deee4f04ad513daf570086cf533f27af21b02d25d48c86d41576144ac4541b842cd01a370b50e9e8395a942aa32d5552a23fba8763c454327b84145c5449f8aa620c2e62049ae999360c7e4fc2877a2c98aae54f17bdd34faf781021e7fe1fb9f39348112056ccb96b8df61bb47f81ef89503060ab34033adbd032692a61e981e8afcc97ee2b0e221b11749a3f6aa5e7c9136d23716c9012fed1b0a526fe8e7e506fb5b2898ff479f2c8f53ce85d071ce8ece57ef9bbe2c3354cbddd282e1e42bd81e43a58e4536b68a4414204facd5597e74c864e7551e62e3630d0809191da1b1ee11624da66260dd5fec0be4d55714994cd44d91764e9af7d8a8dd72f5d2d08b978d9a769085066f7cb66714410c90b548f0313c82031008521a93fd0c8413f46e903a8ecb25103e8cd0cce65dbd6c0cc021ff91708d2016b09dee5a4fb528656dcfb8136b93732132b48e5ca79934ce14d589073255133f998b878979403040e507836abb36ba120d1628ea4a9ca094081047776c4c7358a59ff0af8658376aab76fb22c879cf75f2475c80cd0cc166d4b25fdac9f150df0c21c549ddad5527a6084256e384682b6108d592706349084fecaf7717344f47dbf8118b6f485efc02a464a685662c8e0bda7fbc36e840518f63fd777070e255afd9570164ae08d3ee558be32145651ca8569f4d486469d55ce848b2f1cce15ff89c54f7f598c4eaf813192a058b5dd15094cf74d7f581fc31b8e8b6c8b402755179f53c0633b67333cd70ead3fc064efc2ce039cc012fc210d51a21df2b208b7851f8d6085b6b01225fba0e17f511fbbdb8821d85723c753beca20244a5083c62c5755b508a16744c584d12f493879722f0b7e8cb21666ee796b452843776452890f681ed0d74c7da2f4e00a5a5a8fc3058484739786d57e0c254a950a9bc57ea7ec73e54e70ba1dc1b74b39ae91d7cf523e6c96eda45cf2e5a8af0731b6e50aa4fe2adc61efd5dd158013d92e47bd0098c735424b0a2e8ecbe1ad392ce60709f4998e5ec7f62551733b37aa0ccd823ead5d50e008d2b55c08242c186fe052f481c69e3b3cd225b9df6807504ed2039c1820036138be24a160364c0cbff5e54cd4b3fbcdd442f36dce2b4b9c9fb2df4b19ee70af02918741289576e83cf9ae3350468a8805ecc2cc496f6eef758c77b44ae2584498e07c20bb6a8a5bacc06364e02477bf82b32cfcfef68fd2651c81112ffdb9f53fe9de50ff48c4fa3d177826104e527582a1bda82d233ce9570acd11b179d47b8634ac09512403b46beca285e5c011c76967603ed9858d249ea4bb12a9e0e8ad22de7660a18ee63f9cc666bd1ecdd487225ba511cd198fae63c626278beb570b2a9851b21940f4f0ba723e7b498c71dcc2162e485acecc5f7b708ffb7f30d1011ea0adb2aab8a22cde295219c6a9c64b0bfb427fd5a5451c117d546cd82b8a04a77f223de5b026df6ad119d8032bf007717b43570407fb01723a48f9944bacb27f60cd0d3275f2a9ecb2ac04fb2e805887ce9606988a83b805c40bf0196347ce555b069a2c43935c052954f2d26b60d7a3db0440476006d6b2fd11c50bb01438112daed19eac800b72588f71e9d09d1a967eaed18a0f46c472262c662075ce6c66f87bf064b0ffe416274178bde5501d7912241eed89e0248a1d71334462e51bb088c520a8683ce1a0bf9899fb053f96c519d444a25d41b7a2fd3ef9cb59400408a2c081a44db8d9f8016c8f6359ba2ad6a964347b47549f1524b0d1d7318b9d51bd25137f515a776a08e254a7b593140366a041559002b00ca798cf13f54e071785b30aabc90b3d1900c807a44dfefe6cdc43062eec0f9fe8e00b828b13826f94d360a2bb42842e19788ca195110261cb9b8915dac75fb858d2ac6889935180dbaeb425a4124e5b80d27e264afc84ed1b03b2d278d81ec46feeff8afd3b6c98ec6eb43c0a89a3fc6ffe604f571a0bd065c75ae6b70be1310649df58b11c5b620cd7f8a1123dd2515d6ae45669e4c30856132cbfb0889613049d260e11aa1334d8694ca1b67eb77176e09ef143d9c8dbe53de2c93464e5821bb837d7da76c767f291738c24e5fa675ce17bca1a5a290f6d19e465cf1c7d1964c8a4cc33ff390ffe1c1baec95946eb52afb7dda81b69432f504416161bc1e28e1b30ff5dd8b26b74bbddcc70511bbd3362f26b74000756da36e1381f212b79158928c30bbad47ddfdb5b23f3315cbbb569acddeeed36cb8be372ee817c9bf6a80b4616085b063c0ebac819e79a9bd23d962e19c255249ea66617b59280b554fbb72e4c178174477b224503ff62642d82646be7a7b6235541fb1c5cc69f754b0a3703427bd7880c9ee596b9cca09baa55941954425593c04fed70bf8f8e70c6acb50c2622546fdb7491cf87109337d252c30c7821e186924cfce4ca6b915502ffa2919c635f8745827d019e5e6d457ee20ced913af70a89d988bc41c905b4f0396834d7675fb5bcd722616b1ae9f0a4abc4dba8c294e6ab74e02a063ebfae2d2529bd4693c13d06156b3584c4be40fb66820192ee87370d081a01d49c0429ff69e834a3233ae1d30884e3a96dbbeabf50b06270487150b72bada6ce3f578f236a1d636b1cf649f7d92069111bfc0845cf1bd2fce368fd53f6dd971f781d2316a437b5316996a199d91643304f2e4d7aaf83768e954a969ec2a347393701c2d754db43f6dd3cc2fe1dbf44a2a48d811a77f95fba26c47a38f66c0645c456a355b1c62d8f93601504ec856430537b59034842b44a15332341714b8ec4ab4cceec56229c25b8d245da55619b8b2cc1e5f4a74f5952567146eee088eb0bd0dc6e6f98a0807316b0f72700033d0a983373d282a5e008f0b84e60d813caca3bc6a215e0eac332f17b7a31b8e9603d0a5b2ef42fc02997cfbf5141a72f067d62a830a8707ed6c4f19e2c20824cd433a369a68121c8dd0656a34a4e6ebfc176ebb49eaaaa09387d93f6349b3487d7e86660a5993ca494b1c1da5a67c4c91df20d71c104363fe188e896690b95fd4b0985efda94d90bc54542d86aea217d81f8cc6ed443a80faf5d22e06ecd6b3cbdd31416306cc97cb95a516abefad8930735d0dee55a63106148d51d8b9f9c3bc04f703bb93d12c700e9cfe48f526b739740f1aefe6fec7fffaeff93fef3f53a9bea6d0ee7b127ee32b123dc8949899fe53f7bbcc792fa882d2ba0d18d3d50c5d0aeb07e884c900b7521fac9994167291214e3c9d93127df82c704a83528c560700bf06c8b9bffbe7596843a785c640502337031dde21b65c47adb0830f6ef0e07b6a0da622e6232e1e083a00a6cf039fa2356592b556e60bae3a125daea6a5fe7e36831776f7081999b5f940378a05e6df81826dfd684797d02356e6cc9ea080e350dc0ff2cc78a3021998f5ad8642845195c0e74eeff0050c421833094e632a2a95c63e8c1af0fd92811e8ea57054377925882fb8aa5c0aa0d2048ad2effcd27f95b171e7c83fbed564fb81cdd5843a43460638c28612a2defb80960b319cdf5b3511d038f05814393f771c57d12ac52a8b7d5638f047e3f809fbeb1f6a0765088a513c3601df0f34fcd7ad0f050e5608388ac8f93a014e1abc45a11f70ddf96929d4c513aeff4dfc7e6cb62a1b0f5d1bde8f4b2810b1b0372cf538fd163616550cf289e0334f56c392757355371d6994a11bf44180900a1c61ee4f8a7d5e7ffb6fdd0210251b1e206461d2a9b24e3577a4e56f94afc76c54dea8e227a585c1c76b485680c9c051d2bda754793827e1ac519f0b6fe1f18ecde0f8a250e5b107c5087d1a0966e2a57a78fe6de2a5c72c9bbf18f5d7bd3ee47826eab1d5b9db68c34e610a76e51de23a73e63fd4ffcaa3c9995b8e11da1545cc42579e3d6561d6563d0dd8d92bc84217f03439522ba6b087907f09477e8578d6848935a2843cae84baf1ea8d77e6243e06ef869a7941a64abc7548a9cf91ac8520baa7d32aace026c5281f6a66e9aa397efa9c8a1c6064a634a83e68ef9cba8a661714a6cc810c0349a3df8a869b97026e9ed96f8edf94d0658f344104bbce00f7ca5428889d0e328990219312e46f34bc3563ad4a38e15aede6195789ffe1528f8b23e0fd766378ab7028c2265ac6a2608a2a965b8e2246fa0e6efe13bdd4e2f7993c176231d7c4f630845987847e735ac283a8858d39d6155dbb17067edaaa1cbc74ff34c6714e5c6371e006c4a4191448f3b4a5d049037757aad2eab82aa5a8eb55d952403e302bfcd67eceb088e1eb20091bb44d353a38f6c33e7888cdb04a19b6a21b26197fa96faa6451c8449c9121c558afb5a7fd16c43c0c932f2e32270ef1615b1027dd7cad159844040fcf2b62e5c11e18f36bfb48673be144c32d8c2838e0381b4e30cf996ed091cfa5b34437f493bda89bf0375c64f202439ec99f929bd4bbae66353878e620c792b833778589e0c585583eb1bc41bd647baa0a8243176fd5fd3400f37e3bd1cb07196390145e290273fdddc2f3c4ffa79271f3dc109f53b8123c03745076f5504e29bfc4560471bc9bb436537fbe81afb26079fcae78f186cb53b298e55d8c8a3604498799855b8b12c354923be0676c1340b529f28c03620f8199c7622da2d33092bb91d1886dce5516947fdee41df0b886ec324283a7e6b9f79e719b24314523948a2711ee2bdd4f2292600f1bc00b64b06ccc87606a2ecd03f0c430cb974e949a803e5826bf2e962890441309d3af014ee12c81f1318d93344b4fa1adf1e2af5720ea613f3de63ea5f6107229fa25408ec2e213abcdd69ebf61a7c70cb4e867fac932948a9581eff42241bd7c60bdd4abce0e888f3f3dc0629c6fd35caa4b859a9bcb9732d4ddce655f1922850d716be6a33ace82d24aa2b4ecdb432023c6148ce0912cba95057b090c900d6bfa1e8bbbc30b44e7c192b5826d3cc8a6914def694341dc47d809ced8b1c89ae9202736dbf02ac4dce9550880f155feea163dcee8811cc7ca622c456a8605b618fad36b00d3278c24e2aa21650297cb6085cb684776c5368f918d3953bd5dabac306cc1419f722df63e9047a589ae145f7e5da0841305b56156a364e5a8a2c40b1387ee4c135bbdb53229fc8f30fe6b90c9d1606d2aec05064b57294339b63836d9aa5f64119f853a0fba64927014c2b389e8408aa5b7755adb91248f7552700a787e326711240ee5a97e1a258a6e29bf8b644df8c4d021dfe11987d6d8054bd37128433b1bda78fbd16ca88f44178c53e2e54112dd950a667f01dd1bcc97ed3f48c56464f246707ec758f14b877143ae292bcf57c374612b3f074c46e0e5099262e1b21a3468e565dc008ccb348ad8558b03b6017847350e0e822a1481f8d143d7a2400afb1d62017dfc0f6894f3381be06801bfe8d25300390b784340b8f4d30a8fee4ff5a544fabad2b9f638f35e3785b6c5f080271f34907bdd7dcf27472eba25ab5d7699db60a1c42770d8afe2a1c4e15c863577335cc6aa2c5604e53592efaa829841a1c4e95edd21890aea1a7a32736530c90a3a0e08f6fc08f395ef2a8c1f9195b8d1041a892bd8b72a6fc36f3341d118beb69772579404295a56d80d1c77371f945941116672757c853038521f74877449f108ee8a2d7ebcdd772cb50582adfdd0875fc94270dad319a75c57c72962c20424818521d43dd5ac60a87c1b9cd2553bfd01f93dd2b0838b1586b1894a24b556e9f0397d28b8d24f229df3d57e1db94a7478217be564dbe26f7248aa2b702a7cb3a7ba593e7d135606bf99b4e77bf2898ee2d7a524c0d362c6af3c13cebcc42a0a445371dfa57ca87d9a3345f59c7f1c8e26acfed179e79d9f687dfc1770a2975f58eefebbed4bd49cfe8ba6df0828d176fddbe9949d8c9f6d4af6f117514b222fd12a74e34e54d069e510e0b5d282bc91a3b70eb0eabde48783c9109b90a040abecab28d1df3c94653315fa328d98cffb134bf2601a5aba3585a38c26b4ea349af31115ae360b4194369ecc91cb409c32802b454a22f706c6d8cba282d816e58d52b44075422d29d44190a4a342601a73dfc1f0a8753171f6316eded7ba8d0352437b1872fa6332f6070b33ea9e2e29af0c0f3fa930cd31592b086c26493936c7ad4be2d1267652cb437e70603369ad3e7c3165a281d9ca7b8142e2ccea79cbd669955802bd1116f0b5795876be4c7221b4b5718f87239eaaf7e791d267d4dc29128c66ca265230ba7445bb7a6639c44da4446ca8d8a67a9eb1220138e4f765d34c1bc2d0505b753df66935172aba28f5b455d77e9c09ea5a20d276a21f87302969d4a107e235383d80439dc2de3e4239b969b6bcec0128d3cdb895b23a4e6902bdd7dcf7420448f5ffc81b45a89ac00ffafe323ae67ca44f26b12c6f8c3e9208e5c521c3e9c5b60457b84fc71ef4d34fc574c23622e16802caa81b059ac3da8a8d7721601a255e2f5a180ed0cbfc724ac959252111d782179e7a61c495d6847f0a325c154a2670b90d1cb32119f729b4aa7a892d1299af1aa6e3a067ed908c34ed73591d158c3d80a4207424007b05b11a2cb243d7151eedc18ef7375240fbcc41d395bee23112d1354d898cf886990986eeca03932ecd990bdf7e20bdf8ecdb453e214b7521035c991357141837fd883b2ad3ca0d5dc6212c885ea301ec60c3c74b0326c2310a959cbf4a76096fb085de4c9de78311179d48ffe779e8b45830e35dc721447e130cc74d0d75355c20a8cca6863b3e143e5d6340960e5fb88ea4f13948459d61efaa9b8103d88e6b98e6de370cf73041344d40cf2d6c6cd6f50a7c58dcf57900b6761f9a099dca7e1a8535873e0fc5cb0da576021a5e8e6d91a59f326895e6404aa4fedae4814e20292b03425398bf22204d43a75e24c490e1b489bcc8a68ad5c4926ad6fa33a28bd0e4c675414d9e36121cfaeb57c252bf162a2cfab34b2582a2ec0c550226fb91c4f84333e17674ab65ae91db760cccddf46dc7523d53ee13b1d6aab422d11319646745712798f1d88013584046fa8bd10515b1d21376566abc8818751c8582ae22861137be48602e32d62dd20e10bed46a6834160d059d46439c4f6b68c3bc4de81a97894d28936e11e1a4613aea1737e25b43a92beaea644acc289fdcc1e49b67c4ac80925196703d5a1355874462ae444e061bff1447f41a36486290f333d0c553ac58f3858a627bc2ca341443240982865a8ad96a788ea7b48f0fbbd2cd3d0c068111300c4d8216a2cb741f6e7d42413d7982f0f6030d014cbc728a0e6d9e11c47f45a0a9174b4f7f5aa60755d4489bc929a9ddda98a124efb18dc00a24e40bdcf07fb991413766b96a2677435509b87018220e076ba24e514d42abb7f69adc581e7378ae322b165f2e6025ea3e72a03e5ca111010925995d584e729b8338b9543957a4bb012ebadfda0d74535674d43e6f3a17bf251a75355c65dd6ab82fcf6e07c5adc1c45ccc660f9d2c6de7129c3ab9ee669343f6ef562cf785e16d9bfb36e3ad3cf7c008b7aae2b03fcacdedb2d734eae42b804b9b0056cc40b0a1d58b4a2bbdc0bbcf7c0979a766ad8561bbcf4e2d8216894873c45a93ba44452e5f857b88586c6e86436232b269991c1ff19d86e31e4fe23029308211477e4484062ca081307599820df551df1f27f89dc4905986bc4747d86a835e15c042d3058746b05606ef95d0d183ad3330bd7369a25edb852697c6813412f09606f6b5d75fc3b58a57eee6f2ba1f8fd01de42364f5e8500ea17ba79e0053a8ffb1ccf679574b7bdfa733cb552848e114d98e04441563981926ec70b29be9d98d53766f2d9c1591e195f18a24ace7881022486ae0be92d1fc299b2f8f5ec69517c422cb4aa19a6b4988f799a7bb14b8076daecdaeec9f45376652c47efa02ac46e81a14c8bff935475ae6a5851c4a85c74e2046fb1f186927bfa81de775c9a431f912d07d8d1d09328e68f60f03e9477f35f83a7352b40f6e21d12c96a6f23bfd9b2ad1d0ecf1172895b731d1c42260b24a2753d287ba53645524c40813ba706e24609f22d6d9db6e0ff868ffc96569c6f9096bf0242c0ca74e81f6bb230969817e0faa278560d696e08b40ce1b730508b8c3e6c39c14421ae7865accfeded404b7d42cc502f77c96792b0e9a811d53ecb0c0c247f86a9ca3dcf92cf69f09513fae3c05bec6749bdf534198a0ffaf4680a23a925c78e2e9912adc26d40498f57028df6edfe89c6739029af092652f94952d682a0d443b06318cdf1b925d56a0cb62b55a0c59049fd8d90acb70a14d9ae97ba0212cccf11e511bd9a00f7213075e98e56883ded2dbe512ccaeddf88a60cd9d6bd23a44f0e223219ee5f9f3da252be030d2f35f36f08d46c7b35731949270505395dfa6f35ea258e44d68784a03a7e4e23841c0a422828995d8e32ece061cbf31140aa3d82e4b0b1d1f8e182e2333f4cd563b70170387ecc2ce2654f8280104f6f53c5562c91f44087221a8ac66fefea526726c7717bd4592355c2dbec9578027601e6c869206d644c002fa9dbe92ac7ab41b60e104c1ae9e9a753133fc015aba847e3ca1413fa605dd281b9984cf01f72096022779517c1492ae5b2468c7f2eb2ff42e708f0521794c762a9b388ab55c191e34a1bc76abe48632079bbff87f8d262602df3b0d209affe6826c53d85a6bb318807a4f0998d7413fb91c1289f8c623d6ae69a7e95360f472bca14330c59eeafbcf12017aecb90130f1c07db9f8c86fc8c874773ed0e0033593a9e261be58562386d3c0103b7eae5caf74ac0b8f1a79b9d62253fb432b624226eb5a1a7de1842d0c0b99e02a4773e840abb9a7ff273f94ced8e28550b6238378c45c1e66c3e396657f8752f61c5e6a05e9d05d31dcc5a93b01e9b16fe368121043b57b1bf363a011ec753a75389b1fd2c07cd1875324c03883a151ac3da1feed617613f8080aa088ef1ccc274d1470aadbf1f7a2ddca585fb26141b446ee82b70c74793c4243dfe5e0addb151a21f6028c0ac4b6ec81acbd704e72932c1bfbf24196aea34dc492a6ea3345bfa22367000239bcaf1d5b7da7eba2412633c3c2f455fe47e648f408a3a2b391232188de776273f203fd073d03ea929e0338ef17a52362d9f42377bc8de62479b50bd42988a5fb0046340628519b8aed66437c6d2135a94b1b0b03a1fb5f07e3ad3c47dc42ff078c818c9db3fa38ed4325ad2c1c9a09fe1747031e0fb680cd923ba3907951ed9ff7f13755bc70c288336bc7a423a57882f5aae22f51b4b1d11d29888030514607d184f71617d8f7f737a362fd831dec95fb5160d2ede6b63ccb3fd99b9fb43574f3328fd3083051e99de8714b7dcd17fb1dfe07fa3c98ca041ed12432d75f56a8fc35b92bde212e454f9cfb69b4228971aa8ebf44838b29c050bdc2159a1809bd9929c01016e99c01596a1be16f9cbfd3e017bb36c4e91eb68b4230c6bfb24d9bafb844efff2b5c9eca493df2effc1a542e7a0da8be216f0003aaf35ce3047949601d6bde5717ecb2ce24ffafe67f88b107d0be2db9d0314b546c790c45275d85ff54fb417366336378544f37dc4f907d55a007ea3083461db75ae8485c9fa1471812b6a6f1780dec4edfd081ed6332f0d18c7e25a68fd72443f8786e38308a7f12ce14f14b03f0fe448f5a15269be1846a14fe995dbc3bd012574268705cc8c8d72cd01496f673578da72252fa6410b13126afa380906989a3991e8b755b879211f62323e3832bf3d10932fdf6e2632d86a1b6d46ef1eb4eb84234f9ff68fdbc06f1cfd055ecf88fd26dfe0702aa6d3e54de24a3871b76b75522ca9a416364e2041b044c06a03ba042b9f13a456e6c461da1981d17d9d04f11a253f20c4bd826bb6df394a411c40878c2ecb637d34acda88e8d802fe32a14f59fc9977191a344169210b55d6841e871158afa742e185c8291f1531ae81418495b257c981a20b1a7e59a88f824c949a564fe0e27a43c2a63462d1ad6c3d8cee2210908ffbb517a2201a93ef6494e9e91807a070f12106f3774472f8d93d48026092dd40d82b2c0899b2a69c0fe0ffac81c67e3c12e67b1ed6f8d524e0410c5067aea0979534650f4dcf7ec107d03ff33c920539efcb456ec95ff44b351fe04e1bb7ab590a1b8f90919769ecd77c912cd5d42f32f77493ea9ac9f06b40e64287a3df6c3b2507a886c183afec4b311feed2a54a3b9018e6ac5875ee86f543814047fe516b22881691cdbdbaa4a3ea2c7d49bd4b9df6748b9dc9432624d2a867daa3743e6c21b1f5b6b9cbf3989c7144c070f4261072a08afd4e04bb2948c4b06159a148370039ff2886c30518c261efa7b6c44135f12f0501af0045906493ed7759029b2e5a09fd976f8c7462267b3b57afd49296e80dbbd29911f94bcbc5484001d70a7eff9dc639f9741cbab83914657048efb7647f38b0564b5836281b28df5c8e04a989bc0dc91e1876b60d87e9143fbd843d9989a6b3aefd48828cb2729e2c68458a0920fa7ab9cd55483e49f0f24a5b9680d6b3482f59f30cb02db7fbd9041c0bfca7ae95d144e0c45cd508e3c7564a7234f919f624980e0c4b907b10d63a0f010ebd42ddafa2bdae95cc034b6fb0a5d9e94bf5bd910704f1fa87e1e273b969051097d6cd4be05f2b9eb83dc0bf89254050a8585b733a18032f70eef1f3dc109fdad0fe27b199eb7f3b978c3a5186176ba0b1eaba96179d18bf1927d93d00fe20af28cc3077501f0a5788ac08c753553702cc49755db0f1c354758af37a7bc6b8f01b4d42d089eb3675bb760be6aa29ddd2e5803f17cf77ce0a6371fc0a78b44f15888342ca904843dbf853f430a654f7e080f6eedd31e001a5444fd816d3745c5c756389a8ffbd637cd8a91ef583880e973a3a5b78772885f73e443e13998cf8205ab9e8c1e81500099ea390f7a17ed6a83e9c1f33870594666fa66b307c639213b101fe8a2074d0a14571b9ce7848d1a8172591023ab9f3badc522e2bcf7afbea435880cffdeebc6351ff065bd52a5f50258c08fcbcd4e5f83a5850888bcdfba47c2adc61a27183963303248c06684d69b11c57a91b77e29f27c82e9fc4e2e0fc8556cfd139e75ad65b6dc99ac459e20fea75fa2c620cc2e51484fa3cf7668f4aea4de5d75e1802dee3503e638d54e0f0bc62d23ef743489066434c8d93cc88ac15317f9f105f9195294838843c6a843878ebc75abb4558a92db4359b5614a1724042ef2f3059f2ee3fd5f2fae45a66b259c2699c7417fe0e59c1ac24a241000e2c3263c987320216b2748f8a882f236f28ec2b2c7453277522d66f8fd6ac745c1f7f368926949b519d2e5180ccf266176a1bd4f0d1e7998eedbd38eb511f30df93fab96f3fc8ec17ab6f464c900e164a4574ddc50a1530e2a7e1ea1e6d844f7f1c21ab173d4db4858fa339545988186047dff84904d10d4a5cf9a5ce750c5540426aaf47edf46367ef66b087fba124e81fe34fd906b95d075d53d4395e694c05356aef2a6be8624f5dc08fa545b34741208a563412485355f90eb7ed59b83a72a7e052faf07f54483a0f0a9b780b053cc8b829a8ae1e8af5f7e2d28d1910f2471dec5cc7ceab4a32d3ad033b67be2c27ee6be2208afee44429e7491144b8193a204e4a01b24b82679a9c021c5769b42fccf9e458e223bcadbe1c22e370c6fd5ff5300113adb841442af5ca4380754f4c82815df7b6b0048c38f02bbf8734a36b0c8e03052b0d8f88ca98f5f7d4073b62a3f270693c0bd283b9a879b00e02ff947911a23512300b80986f1cce149274f475e53126ed131bac1d191c3ea7079e718712bd40399d44991d384fa6299156fb9f7b597914497f43790d90425e0393cd9925bca629aa377f76c226cba66a376a4ca032c1013a084d0ce2fad4557883475cc3db99b426d2e312488c00ad6852100be9d8e81a311430a184cccb9410a74ba661f4af0ff730b5f3688f2b3fe3385e88b6046ac7b78d375fce16b3ec61b20387bef359ab27f45748bbc666f340cef1c05e3b855fd9f647d71af4320db8f7dd1f5b71fb7d70f7514d15ff80b77110dfc97d0c1ebde0527dc0eee1726b3ee9c8890810d5deefbb07c29124b222e00b47b7e6126e3295adea92a4561c5d190b081c91e26dd3496fad3f8496a5dfcf650a53199c2ec4d6170a9a438b0f650b55a358f61b1f5576abc5014731399a3dbea2d7c17088378a0721b8bd9b1ddfcd6d9b7bbff455bf50eac488172f5a2dc658b158dc1c28be0db8b88afbea1d197a67c65a8d2f015e72ab369b489691a38f6817e1e816c2678f45f4e748261416d9181894857102a908a581b7f4b2f240ff82e80d23c48b174446c204789104a407868e9b3f897b6302dac4928b0a9fbae0c48fcabf45594c615c9da85fe7302ffde2b219a9c562f2c90ca5fa391825b471285ef9be44b995ddb627545df014898dd22d5b31e18549150eb2ffef16799a8760d90b32a06e944e1607c2ca7b27e0583e6552a9268c4d77e906417a86c200b43c5ee9c1a2d2de694cdd0da96c95ee705f6e43129d356ec1234728b10792e862659354876e85c60a08635bb9019cac238feb30e441a76fe2f66a8035b5cfe502c387da001c6b55fcdeafbcc6ad518b893425a45cbe71143f1646ca24ad090ffae8ddb3ed2f2c62a8114038927c828cc5832f7c76cb9db294b1487d6039f4069561e6c078692d07b6cb9247ab3137a2ab2c8d566d93de33ade4e37e89f58fe2551283e75c92202928aa1892b6ea986158b98851e5344e2285222d43f27be4f256bba6287fd08345704aaa393c05b2014b2a20e8d9ff63ca45cdcd931a4bcda4f923bf58e1946c24201f055a34e91efdbccd1e56b7dd1bf503f57801b92ffbce00408ace85c812e2ab337566afcbc1cea5c3555851eac43ec85aff88008b27523d9bb84c82da59449ca0e0c960baa0ba7913d7bd7f9cf6acca1e9f00275dbbc8f2bb46c9b9f95de74058bb2564ec63d38e7ae8b7b7c3eb3b28fc14aed2ed95f19ec334c06cb30f3d26b23635f9fa5b9d63a9f5ff1d905ee6ef259cddfb7389f55d9d7c4bea6e6459fc1bee6c531a7c69409806763138f3ff086951480d944f2fb0e9717db9d61a52c9655c0efbb310723e97c66f7b5d9e6e40773ce398b1a085208a5b3349479b1bb6ee6f19fae1d43e64f7b7d4390274e8a32b47117f4efe31feec1dfc75cd0598e3f730e1427615f3c847dabcf6eca51e660d7b73b9979521ef8d49879d224c0c0cc930e6147bbd8f59ab9877dafcfd65d85e234eba3affbb23f5d357f3e0c8cccf55da5d89f550aeccf3aa5c63c1ff7c8ccd3b55fa4f5591a902838fba2b998796a1f98799240a2e8ec8bee6cfac61c5bd699b2e644d18e3885123f4d897fa6a41b477e9999d2b74c5d42a9c0604f9231180cc31ec763188649b2b44f479cede7274f522a0ed2b290cff29ba5eed312c632fe4679e21bf6fd5779621bf67d5779e21af67d14cab3c609e549c384f29c61a33c6594509e316679c628cbd3e5cb9375aa6894e738a3fcedfb32ca771708a33c5dcabe0f53ce704397f25cb594278c563903985a9567cb3ebd6906709fd67c4bd301f54a4494e8126944940ee32b09471115be880a51f9efe3ec2cc069d767834ad154ee53bfd7777dfb7ec63803dd24b93c194fa00ad893611f9aa39db519a44f96f0b6e3362e83b84b07775fe23df10014d706c1f141937b30494ad020870ce65f088a6cc617cc3ff86211e84400e42fba4f4dee80590418df1d21bd20424680cbf83ef90088ad0f202260b2af8befbdf86218689ee440f07a8e1b1f9aec8bc200c3e30cc1bb187ca793799fe034be3e80e878f645f707f28ed602ccfe440d3c7df510e8818cadafe7028318e0405eeb4c96ac8d4108c46b9914598b6310848c8b7dc0c9d84a4d19df1c830a84c3e138a00411a4cd9ee3862a8180c9766cb3122f60b160c5b9f101c403577219c45da1076420000212aedd45b9d50787c3e9b0a30494318334344a3e52b653dea63e0b97ec90effd801208a8f496180a5340b5a67122f19fae4dab4d46c5e1b4962fcc7551fbae60cd25dd270dea4a71587da94cc5654de23c6e710b300c5a105e1f029731be3b3010425d5b81ec7c0019e2c8bec01b84e61425fb0e0c4830827e3a02cd1d214182ec589ad6e6ce10bb1ddb0b4293830604cb1d77e15c533c3ac1e9f202a0029f17a8201cda1d81752f5842072005bd1730117a008698ac85d136f09d62b6f9fe7210bfed98c6de1e0e87f32195414b93e3c6c90f4adbffdea1cc44c4901860f0c1803364881d02c34ebed67784f482080122c8991c8185ae383d203b1f409c34e901ed2131c0e083018532875827431c18a261386991af03e170b81e861ca105b627edb3a9131fae6cf7d9b984c15dd83fe0ee44c808a6850127d7decea784087a275f5d11525ac3d765291021c5d5c835e9b5e6ad4f7211489086addf9e7e5a9fa8a616e70bda5f789d47571b02977b2a04154882ef48892c922004524581db80d982490778372842ca114a8074a4440dc2460b6e98e1072ca0c2c31251d4a0887a022d481b302dd2862b06b35b82033a84f406ddb46e3c02f2bcf56d1124f81804c18771d25b24d9fa2921a5b59367d75a85264141840b05071eaf19a0beb4298c7d7966a240486db480b80bc912ed04c1f1d12ae9adde82b4406d32565081da9ed2bf5100509b0d4a936c9b3ebd51cb4167e3531cb1135e35a82d47f8142666b73c95516d0b1802430c37582bd24611231547b51da938324065546efa6e2971e8abbe3250a4f6d45c5db272198c6caf3eaa9a632d8959a94896d4288600e8c16387ada6e38636b3c951234b8106c78c4c0c76e3e542e104136c9460963f647bf5192b13b122ed1480cad8af3e466cab826d2b5145aa28a842048056207425a236d9f60b60dffe04c008c77e0d17d4a84163091a3466283163868c231932629288898981448c18308e800103c60806e6c588971797225c5c5a5ad0d2d22a6ab5582c60b1562b58ad5444a854241149b20cc1c29252412a35a6601cc521510c85c210d504853a09713ae920ad411480600e22db7a828debbd40d09ab5eeb504b5ee541ea30b2b4b421059a67d3ff424fabaaffa73b5722df41330847f7a4d69f486cdb3d65a1fbc212e9de7bbd2956a98aee43c9f6113e36c3aeffa6e67793ea3ba1c72992055ef4cd46af31ef4131ea53a16fb7a11f6f52fbc07b5c8b5d8f76b93a5a9802cad16f5567f8b86f6edf9541c37927a16f2ab4ff5195f0c6160ca55e9aa923472e33b1f2753a633b9ee672fc818dc757f88bb32136943d37754e692f771ecdf87314ff286b44ca38b3308e9e7c800c4d24afabaffeaa5706fb99fca5424f2fee95fa90a75d7b75a93a4adf97de0e0545bc5e1e6c356282a8fbaec27511a01b278c14a842ce2d09a5f2a6e8f55d21b888373f381737bf96a51abad43f95ededdd1de6edba4ddd06e6807464f7ca51b527b79d4090e75d91d10c8bac54a84bba335cf19fbd10e936e37e4f325e75d2c70d5913e16a0deecee8ba1a1dbeb82d6546fff56b95cd0daea753ff8e901d00ef61dba44564881718decb5c18ec174dadd0d7297b217a4909d3a748fee495fde1091dd5dd4e3f83daa367f8b330a1f8126936ed7234d9694399a7627c28079716969ad541fa24e1acc98556f34090a0e9bf5a70d1b75b2e9872c6795f47677374aa5d51ce6800ddbdaa6225826fbfa426351af16f5f680b42fd755a55e2f6499b797bd20ab697999893c9de9c65b7d6f983689beecbf9cd0770a930676777bbbdb4b956609b4063e25223fcb0b2af30595b10f960e042a636554416f379d29e3eaa893bd01ad9d30a5da2a132636c882d65058aab6aab3585c416b2e29d5567f7e5ca8a0b518bd6aab4040ab19d05accdbb75082523c0b05adc9d0c9a0095a9b410349c5612b0b2c8df52defe2e226f0a93d0e5397c0d03d297a7b4143444e63050d1115a1429c22a323a4dd906ea77356e93e2575c249121b9776d7923ad975e401add94ba5da90b8e480d65a1e87cd7375035a73f9da5371d8d452b5d5dccdc2cd13b5af1557ca15b406536dd5e746b954b0cadbb32f7d05cc18e7eeea123777ac0d0a1a222ababda021a222a323249c9dd11112dded5426dd90a9731a3364c4c470a170020c98179796166ba5225952a318a24e1acc78079a3b54c67eee82d49a247731626e50908c3b34e32f9125a261bdc9b6ef4035de83d8f61d085afbb7ef262849c0c494c79cbbc559795629ff803ceb5035ed8ea74b7f7f1e108ded2f83da2e500d5a8bf1fe31b41673c6b0dda021ff16b5dd2192da2e51c5416db7285593f1fe2c5a9b51a3f1feb9b44aeeb246db8f1ca986ed1a81b4f6ef7fa9ed1ebda5b5f21da9e2b03cbbf399eb9bfd1b8ee2388e18db9d6542977f402025b74e68adf5ba1fa0a021a222a353106a2824323a6261ba472b2696bbabb68ac30d57c96734098a2adb8e42eec358eb3afab2ce445ff6754b9b3ad36edb1bd05acbd25846aa0db6fd9a05adb51c71fd59b1d8f6eb15b4e6526d34542b36122a68ede56d8db2ed57292aaee2b03598276a302cea6f503dfd1db2abbf442add35aab6fa53812e52b555566977f665df48b55ddd916abb3f1587bd4048aaed06b92c0aa73fc13cdddea19e6abb44b7e81add2313ac0df3f4dc685ea41d9e07559bebb4596bd0f8387e753f17a8da82aa6d6769acb7e65971680fcdfb833a0d9d885045a191b81adaa84b14de22f11a8d1769a7f29cc975abf78bc4f22698bc1298ccf26bd098212326060c981797961c2dd64a45b2a44631449d3498f1eddd8c6b49527952492a4fcd0608816f69cad2149f6f6969a927a5276569a9d7ebf1a0f0a0f47a3c5e4c901b13f342ddc0fdeb4b28f912bced4becfc7dbbb5494bec7612e771af45902d292ccd9aa791abdfbe12ac4d0b9aa7916c52f2be126b5eacc47e7e25f72bfd9be95ffa97deaedfb78f2b11d4ebc53b08636262667c58c198a7b426d4423e0efe5589e32fd24118363e86f92e63787a96b641c2304f981260a8bf60cc1bf35725f597bf4ee6e36f29df5f781cc78f7922e3388ea867a19e45e3512ca1791a61b55ac24785e66984d217a6e1e5e9c802f94a5026ab2515dad89c4828adc1cf2a294de1e4d927fed38965529a02fe13aba43716f43ea14a24ac47b510712a4f2535619f1e55b6b0582c164b468c87792594bebc12d4b75e09eb5f7e8365599e266cf0bfac519eb10d3e0bf834ca9346b1c198181819ad970f49625ea83797af37173327de4e260e37b0dc5cde6fb97beb71791cf4edf48e7a9a82f8d48a30258c77295ffee4f2382eae3c0511653a92d66918689d5572977fabb43c77e1cd32ed8ecaf8eb17d81b4dc246bd1fad4e9e2dbeaf4c3f7297bf23a94a72b7cbcd70f79973ab209f89a8f75f01ad865240e94d4714ca143abd1d9de7bced48661077b92b4a6b9f616efbe732e7eccb999c59b733780479fa516efbfb91cf441798249a474c522f58ab4802e967d39d0b7eb60b8876c8d2438478de1dd224d4fa94524a4f5f8fd022a2b7c21ab1c471571886e10e7799f4869a406a0dffa4bbd0ac407c56af0f5a9ebe964074cc5d8e7a20a1f8671886210abb9e7e95d1aa38ee0252eb877f0221524d203e4eba2335101004e4497714083ed89eebc176aa8305d03a0bffa43bd8ee383e9c76df1f4492d3551c3815478f3d853797b4b48f2457a9fbd71efc53fe351745caf65cfd81fef05541a5d8fe7589ab40657caacd47c5f1039d4dd17914db9f26a1341471e89fa8d6fa22014d6d8a3e7c204fad9fc42274b7d9669b73cef8896cb08ca1a60af8fd79f6899353a98c5311e37df2f8ced63eb539f6dfad9f3ac663dc54c19f3e11a7d4bdba0fc21bea72fd53ba03408581e7afb87de6afa30bf48a4aafc8a16f51d827358bb88b6eea44108a18a1b51968b6d0e979a8178f5f9bd7ecc141e6763fc7bae13f756b7b915d649fad71a7e73e8044727a18fbe2b9d120fc24014412453e1cee0683bb43ec80021b8278c1ad0707991bfe1ceb76fa1e1cfc86fa5c8f1bfe5be67adc901011043f1221f6e57f1f091141507f4d2440eccb83dcc72612977dd9170fff4997a810727042c80758a8000751c42a487ae3f101ca0b4c6082a4a5228070a3b75390c7e16eb888cf50d8fe279c13a39ff6e4f40dff09c47f2a71b8b95d10049f7663b4b973bf00f476ff05961b7ead415308d3c7b19909dfdff6719ce96a2842a735545aa56d9abf654edfeee73288e36ef7a90c956963cbf302cbed9ef9635640ed6c0adda7576c9af05adcbe6578ad15efd5dd863a2f840059ff52d27efd59c5e5c6bf8960ec5ecfdf1686e25ae3eaaffeee72b15a8d33a6325907345068b0cab7fe78f9c240a3051e02c5890b784f56e07a786245cf5abcc310eccb30e0f8c0017d4ca72ba8afe7849324541708902a8a72aa38aae23b3b21bd2042a860b22fbaefe8eeeeeebd1c294bee0e050796bd39540ced0481e105a805ee004bbe3b3f21bd2042f2144cdb310c3bd9490c0b5a9c9ecfb5f8a80630701021f6491350762c6d48110e87ebc09110486ceb90187c30c4409f48815bda432c8dc617c52a81832a834fa0146ddf4187a322b6e8418bdf0f3e414e8ea05284211a351485f7244a143d6487213e187086b8abb7f329e14565b9c1faade6a630362da96fd39abbfe0d52b66b8d32419fa0512816bf8a3920be7dba415bc6703f04bf9632dcb7f7be1148d6fb1f41e2b3d6bfbc3f1001f86c8792e4bfa5c198d45ef324555fcdf3056cf9b3f5d7e20faf2daf8904eb3fed5fc0ee18f0d32d03fe30c4a60562f49ff7beb5329e8e39329e6e1ae5cf28855c5e4679df023cfb9a1688318be81e1b6ad81780b1ef57d394e19a422fa60e30afe4e50506e65f5e605e5e090c985702e363bc921793b42ffa2eaf24c6cb6bf34d1c182f2fa54bd952b6589e8e2cf369c692a564b9a50c2c7ff26c16b334cfbbc3dd0f331c5d407df897e555e50c789f7447a7a0114b7a1f3cd9d8b1ccc3b2e1121908f674cc89615b4cdd9545d8dbb2080cccd2598ea7d5a7060ddcc17294980b1f6be2dfc7cc13c6c24cad4ddc032a73ff74fc4bd5ea9efa984d8ecd872c74872e629e1df3e1a977ce67a72230ae5b7344206bcfb522fb6badccbcb7cafe9879eadbc3cc930cc067d3751675ab38addeee5f2b3ea3bbc27264a01212f6ff1fe3c31a7285c771eafbebfbd3eb075f06d36af99c50d7c57ffffaacca9a7607aa4e331e5b6c31ce3a9ff5e89163302ce215903a5a781cc7658f9fc1f68636fb7e1091f92dccd4f1b1d2c79c1e1ff6d0a1e371dcc716eaeec1a3a4fbc8dd3d5e478f1e375fc79c01e02a369869f6d626e37c364f00bc35f10f33e9b8e96193e346478f99cd5b1c00581b182cd33eccb2d8c33e5b98cc3c6db6f8879930134df6c33f5c0533c93c8df6b51a2deff89c67661ef6b8cc39f3e011fb1db9f633a54d96f34ccdd371e6ee3069afe3652611dacbd04c99c7b1352a7bd887b19afc61ae89d5bcec6db28d8c88ec657abc8cccc37cd77ced63e5f999c7cc87b1191e7926c66366c70ed369b1174b54896363a54de6f12e7c2d67d9d79474dbc05e87cc24027b99af230b3d5ee6e9b802ec65641f2b4f233bf6b03274994c168bf9c778c8d494339fcbd8cb640f83d5c46af2e7991a5929f334d9cbc84adf3099df793ac664b1584c16fb588d0933cf245be675e8a09574cb6ce6c9b3654c1aadecf1b64ced94e7ced6f12e94e790ade37394a791ad23e532e6dc98327200cf3200961e3dbe855247997ddc5553661f8cebf17afc9199b8eb7e8fcf652c9461180c06fb0a83c16030987992f8a74fa4ec33139b753d66189647fb381fb9f665a049885921e76236cb800182fc55c14c3e4be1efe3269fcdfc7d7cc56738fe7ec6f98ce6efe79ccf64fe446d9100cc536b16cc93d4314f3b64e4b3231f7f1fbf25b24361e8a2f561e2b3d8dff722f0f8fb56073a83fd7d6b4335029dd9bf36e8f4bd3a7db376fce9bba55bfd541cf7594015c7fd9690aedaec90cddb743fd5668b6c16a8dab24fc5716bbf0368dfb741d566774c5099fb3c82865a5ade6668dfb7452e36f3f4fbd9e7e5efd397af659f7dbfa6c45c50d7fd58897141a0aefbb9bc3fa89707d475df320103d3d2f2f76bdca85183c68b068d19ae193364c864c88841212626c6093162c03001060c181b3030255cfce6c5df725b2dd6cbc55fae56aa16958a6c5dfc7ff1bb5cfc35c651d4a218b284212a85429d689c4e5abcf85f4030a3f2c5f774f7b55406dbbf3ba035a732d8a703ec4d96566b9337dda6a66b7ff6854d4bc55df6f3af605edf03a9795bc4ef65e7bf3fcc4d049c56c18c99bba989e687fddc751f565e9fbba8b8eb5e9f04b67dd8a3c61cd8f55d2a3ea3eeca31ab0ff3ac3a281f00f384b999db3c3585f194ea0d83dc3060f4c8cc1a6b639e75dbfc3d8f6c4cc3c6351fd694de5404d2e64faff91af3a418e7ae4b01984da4a6e6fa6a4adce32e9ba7dbe667423acebc4c791ad932cfa33cebe651f39867c3629fef00e828a35f8344e661250f22336f83737eea3936dbf133e60c8f92ee1d250b75dbbc4c79de7dcefec8dd363f539e3cdbe66d6a48da87a3982a674f479dc24f866115ef8ec7389f7a3bb640beed6ded01f0d63c7b7cca749d991ff6f9ed0a338f6b5c807dfe61655616fbfcb19a9815622ffb1fb197d5c4ae79dd957fa63c633fd3a9bd2c67d8dba7d97cce6fc3bf23c4b9e4c1e3619f3336636a1ebfecedc3ca989a8f3d6ce64f3d63c6d4982af0ec9a8fbdac8ca99ba78c59a1e667fe47cdcf3ccfa6a34ccdcffc8c79dd15fb1af3ba4bf6d45d32f334e28a99a7910d3b637f936b8fe3b0f2843d0f53ec9130f3c8a5fd1d5da87d3689d45e6612b17dfe5879e4c2cc2377d7aced676f47166c6c26c5318fd84d7eeab37902c0bc3dcc2376ef6861c7e3a7630ba479d6bde377e09cb10e580cc33eefc09fc2191633cf144e6107f2998ec7d83c8f58d77d41e2ff99791d3a7e47791ad93bde8e393a3ed4cee3616fbfc63c79768d85d91808dd322ec8c09ec78eaf296bb1c7f1ebb334d45f8b71cd872e56d9d3b146f632180f1d3ffb984944c7cfe830671ec7eea0230b362d9c76ec75c064f6c3d2da176530d9c7de267bdbd31891d8cfd8fccccc679979fa96fd8e8795e76fd8dbf21cb2ad95a9f9105623436ed8cb845fc3e3431e301913f66249fd05ab3161a5ed65320ffe0e1b7b5949b7ad9cc54c22f967be8e2cd8fccccfc41e06fb9c65b1d89bb0af791985c9ccc8ca9ab725ec63b1cf590693c16035a62c56cebc8ed8cfc44adf79e64f4f47157836ec61315819b3827dd8ffb00f8bd9873dccbcee82bd7dd9cccffe3c7277ed67b1b26e1d35f3e4d933a60e1da5cde39d3d7bb03c87ecd9df940150f49146d24afa4823c19050c81eb923957e7e82868a340c117cbae9d64f51bbed4794be0da7b19aeccb6350af7ad4c7a09ede4eb7d4443b000179b29a48161ce184420119ea21926851f197ef09f2f7d9f26b69b2b496afc505774d160cb1022272970ee4d9f26bf9583a966e0514833c8f6056cfc5c58c2de86715edc87305b4dbfe2d249f6953287fcbafa58abb4a1b88d09f5ba420cf96dc01277a8083bdf51d73ae7e21bb486b3554a4b5f5b39a2c8d75645ffe5a93240cccbfcbc53ada27ab89b52af299369de7d427794d1fb513a47e22f74317f4ec12f6aac867f69a2d6c24835a0ccbf308ebc8d25ab6a02f7f2f762d44e0d5d0d3618907df087edb5d4eb0fd4f16d36ef9511927c8b3c8d67fb6fc564344ecd7bd2ada4cc89335b4fd593a4b6b59fa9305d4b264692e3e5cc5edb3e54bf554b8a0a0a2a2a1a21d888a4072df72f51314f443743afa0972daa908488a121554eecf10d150d11d73749a00953f3ee3d169f2e32a9d263a77d18d817cf5e3b393dcfdb88bee55ced25244fef237dafe2a5caa47ee2c6d64b22f7ff1c7c3f572dbc99d8f4ff7db9e02624a0d35f5f699eadd7baffe312cc923528a52d212ba4d93a238b2ae0279044422f99f804e41a7a1139146d24d3957b4cf9c3b738e64e2345b645ffee44f6e9f76c7b2e42c3f16a61f72ed33d5a3c9ed1b9fed3d3977c1f4b8cb97440195c05d1470071e4d1186a0d1f617ab30ed2b230e048b3014f78243ee42a1402030886edf6118ded266df7d6de22848edd2da3cf394ed2114dcdbfe394339f9f689caf62f4f53dc75eab9cb4f52f4122674c4b98ba5678721dd370cc3323451e679cf243b172c0aa5cb3365657beaca4e31b9abf56bf9dcd5a2e22e6f55b92520c5a651ace2b32b94ff14af8cb8ed7f553d9aa7c2a1ce5848a82e9cf7c826abc96dfcfd553d9507eb4aadf177d43e594da78a6432da344908ba1a9bf24260b4533d4b13ab58d9fee15341e5044b36e5012d89f9e88be57dadf515c5b252719768774a6ce15a387779683fd4db9a6715471650fb86e38fd6db6735f94c5fbaefb525abe9b67c2d3f168c42a1e88842e1df48feb5dab250288b0a57e2a92dcfd537fc5a9940d5b882dd281e51bca16a74c1fe0d5f2482ffb6801fd4a26ef9c250d4e615415b976c6bc6a05efc508563b9f7beae39333c2b951d7eab4c8d3fc8910c5bcc9468c90fad355729d265cc0999a0caba31c618a340537faecc3f9621ddf4c4324fa6aac5c420d620eab2889503d526de1feacf22e2699e778b176512314311159ae73d8fd83db680322b36cfd28c015ffcf0c59fa5ad8054384b137ffac5fbac3fef0e8fd87d97ecf03e11bcba2ffe58476ce540b5dd95d81a73425de20d82565c01ad825cbf6accd13abc16659e75c9165ff3d03d13df45f173896486e9966486e9969f1c7344f167693447ba1534f1c31151acdc7840bd4d79405c916dca03fad9a2b805ade9f75d471640a193be278d01f237dda180b7cf544ffc0ded2bfec45fb5813c5538dd0469ff54e152bd3b0559674cb64e932561a9d384890e3f749af8883ed34fb54ef282e9c454b63fd99af18455a7898f8b4cdbb74e939c944d9382f04b12422e8aa12880f2cff61851a7098e22d9e1ebab6f4c0cf13743bce5899560ccce5007551b45f9d01ad5391f1f4ba379c867f9a8c767b7a2bcbbb235eec87f3cc8824550b2149f6129335ca6a02db369521756f6c55236f9a7f8c34b7c3c33c93a1832d50bf392c54e902dbff334c69c163388bbf413e44995b67e96d74d90e3b7523d4b83a12ffdbe726dfda026dda51f97ac0f659675758c0a2ee7dd77eb55796a31d5bb47eef28c947959caf627ef4e47888acfaa0b36dd36a58e1095dfcb6f8acfea129bee1ca58ed0149f8b4f8acfaa129bee9a524748ca52cb12149fd5a34db7acd41182d26bf5947c5693d874a750ea0829f1583c249f552436dd34a58e10d26eb533f2593d62d38da3d411323a521d11f9ac1a6dba674a1d21a222b228c867d5884db74ca9231434c432f4e3b35ac4a63b56ea08fd00a58098f8acb660d30d2b758498e846dd129fd5a24db78d524768898fe823d4e3b3ca824df7973a423db93077c56775059b6e1aa54e932b42389410ce8acf2a119bee1aa54e132b4da7a62a3eab449bee1ba54e932a4c9a898acfea109bee57a9d384ca0ffc4df15955c1a6db55ea3499e2cb3e293eab29d874a350ea3491b28497a0f8ac0e6dba4f28759a40e9dd9e92cfaad0a6db8452a78912cff2907c569b6cba4b287d4765e8d66962e4b32ac4a6bb2c759a18b98bd6aa0c75eb3439a232748b39ebe3a3d3ed2c026dff551b26aa38fc877eb07da8caeec1f60fb9d8dec5f61008db8db03d09e20d5bcc61fbe5d1f8a763ce1fd134fe9674cca9f1388e87aa4d7b12a53682b280ea21a8cb3f971a05a50682fe4065fc4d4a7110559bd6697386eb44db3f9419531f5699962d680b17b405f561cbcf7cfc210d8d0dadb5d62f1b73f40ad7ed2d5bd0997d6799e9c74596e662ae80eccb5f2459574855ce5d620e710564fd5b388721c9710524c2c0508920088e39da4cf1dce52fb670b8302c5b386735b19a58575a381285de09aefbfa35be0956df3caad0fa32f5b7bca17a5693cf54efcfbae21f5a11e396cfbe3cb5c3d6df2853ad2fdff4a1502bf32441b3843b437db95038c1843c03365b7e33620d59c2cfb090dc65576fa36421d1da7dd4a3c8ab8bd06c8d12dd85aa5a0624eac31a7a0e51fc559bd669125019ff53ecc1f60fe9f57b6f4a6cca11afd49062157731b1583b9fad72ae840f5725ab849275b4fa9375c4cae9174d536c729797e2951fbf479cfe5b8a5550d7da94fed05f36cb14e9b8c2cb16ad84d553e2cf5dde82dfcadcb9a1deb2a98b9a9a366ac746e588d9d828191bd542fd66630e4afc9130a079920fe37a1a57cedd6c169067aa97eaf9ecbcbc259f9d5a27c56734a989caf64f4d014701d06ddfe23fc33f734e06fba1881fa5c347691004451d9e7af6e52eaf245f9e92fc335e898b7997eccb3fe695cc30afcfbefc5d1e9bf777abb8cb634cadb32f7f17ad4fa4d6e5b49827ee611df9ac04532757858564fe8fd35cde5feb8cf29f9a68bb0edafe2d9fa5b9982d3f7b325bbe6c922dbfd8882a527f5beb1f7725d11fd690da7556df5efd2d8bd49f2ab7eb86a1a2db7e496b95ce8c39569759072ae3ff832932364dfa010c7617b84d9382d0c4da34e90755761744fbcc5d046dffbcc4b313472c6d6ccb969fa5e525fef2cf412eb89fa6cce4a6a4a4765ab5f5c9b5eda794c616ac99daa5a0e822482247ea1699dc550449c4fe91baf58b565c6472971b41ba5b9c127f55fced27646ac94cf5dce5cf43d04e2915716dfda8146ffba368a30ae5b75e97add7405300b9d6592490e19f5a17befe719712a981986cab5ab2827e6bf260744717f4ab965853857397db0bd46d4d1591bbfcb513f2ccb9df3ec59f50363513e429fece24ba7d16a9bfd4ce67b4e5c59f4e229f200112eb738ed65cca66f9f354142ec96d80d47f7ffc2953ce548ecaf8e31d486dde6f953563ce35712c8d0f559ff27d8abf33c73eeb8e25cccd70a7ecb2c6d3f830057155aa9e8e351ec755389ff5a8887ca6f3994aff5c9ea5e9905fc9299f7aa7a5537ed721e695b8c4e4773965973f65977cdffffe9a708fd372ee56d97e79399688e699751968fb9ff867bb96edd6d63bf2acbb7b8474773967c525ef9f3967976c7fbb5465fbeb25c833e7728e9aa8f2f423df29394ffc89bf2a3eb3380c5febabafd6f6c3b2486b8b200a85427d58c479612e2f71977f0d9fed66ce5929489822cedb1b38dae1631cc9db9a8e04f09b3651459cb7c55590bb7c05b41a5a0da57a3f5b7f0c96767afd462c0de6f5499bb6feb3e2ceaadb5aeb964febafd4868b2a0e9fb5bc7eadcdb388f3b62e57432b2025a4fe7305b40a3ac5546f7bcbcf576d97b73271d1d9f2dbfe97576d0ba838fc79447bfc53fcf998d37a67bdd3f1c7cb4699399782d2e55484dbbe9b32e55494fa9cb3fe7547928e325da1b5b6e5ef98d3fa3bfef0cdfad0c71ca1d731781cfbf2a7a3d08d7df98348dc10c06fa70f5dca18620853c2f8b08ee29fca18d4fbadde42174fa5df1ec72d5037ea619431a887f1a77f296350a60c414eeff22fd8dbe95fdec50ca013d009c8c498c2ab04559b86a6d39c60b4a9024d5736dd494d5320c69792a43863d73f67c090a9ed98d2182b5a69cd6e1205b3aa54a66eaa79ae8352a0f07850a028292929ed764a4a48484848474748484646464645454646444444bda11e518fa817d40b3a3d0e7f3b9944e0a77fc78af19719e3c715636c5e21cd626dca6ec0474f22d25ac6f6da7bb350600dd8586c2db6f85e6bedc95a7cafb516e39b7312e7c97e8d28aab5de8a4b2c66508b42ec4b8a9e5205060a7d98988c1b2d3aad0681e1a9ac437528f5d496fafb97ce4691d24e43ee02c21ee42e47d253717acc194d1a320dea0965c58c4b658086b19c4103e387638e6822592214af48ab8ba2684fa970dfbf74ccb9230bfa6bd07d3fbd7f1dc2a75379edb52db045dde54296c09b5ac3f6aac34de561937514d24a6080befc6b781d2a0fdb69a032fef6074db5a8f2dc2d6e6ee55c73cd1997455afbe60b90f8f3576ad39fffd25938437d7e91d2c0cfe659a4b5b3f52fc89c4bbb51a58db2c7e536fe3718011f8f396159b383ae198e90dba432fe5f71944065fc654882dbe13f119eee89563f9d4ef6943a617b5bfa61ac0541162e055ad7146d141a6c3311f9835c9b7b6d10b3d2d7bdfeb5bebdb514922342869b4de488dde0bb36cf4d9fbe473f0e44c870b38fd814ee0f9eed99def0e96792ed2cb0360bd59c01df13c976918e2ed86d47fb5acc445cc0666b2d8853a07901df189bd9de265a6b1709501b0d7d007500b5e5a0b2e9334001d476436bd042a9152cda7bcfb9b1b8282d56719cb318cd6b8632a9ad4583ce4e1ff322a3e5b27d074c82acff82cd1d4a07b81a5b0b668bfffefd6ac3f9ed239635c85aa948968c3598a3824d959a824890f571401f1988c5e162fb835a50d1003d00fd930d5e1040b505d140151ab6d8fe96b7a3c151ffcead3257b464ce680504084f062fbe2344080e381dd4c0561f4094f0ec8b6a1de880c48149690b2750d69b7270af62bbbbfb1072f8077f92f3c1798b240dde0a64e703480e4bd7e25d36b2c5d109bcb9dc0dd65a2399e9c84e909dbd4551cae88a2f9060bac2081909a0a51ac624784b3bbc2401b4248498c46fd7a0f7f9de7bb3d8f775111e7573b8f708104ef060850786724cdcae941c74e087b1071f805b60bd432fa907c591421e920a615b29641062eba489a2ed3d7cef3db90fee54f04ac06b22c514270bfa8ec976dcc3e1701e90028b11e4fd3675f244b7fd973146a16e8022c7021f6ce024091144b9622748145c84c3e140b023050fa8931734e9762e83f01c9134c40794d83141299a02a7e49a383e2ece3b5fea4a7885408393a4a8d2b298e68626c78d0d506c9062c3141ba8d850c5958fd86b7bd61ac1f7d21e0e8753824b81178706c8ce0710207fd1215d441ef98bee9dbfe83edf951fcc39df7c7df7e29e261f02e61dc46b87ec62f0c110c3d21177d1704d23468e0c99010952a075df0d45f6debb8321e43c83a10cd61e7bbfc8469ce0a003fa061f9dd7de765e0cacb5eeeeee7eedbdd7dcf121f7a6273588e049cf118cdc1d9e2811c20b25383e9860b0f099908413367502083c00c20d4beef5420a984d9df8828b1c0f09252cbf2114ad7e60a11bb12ee31be4c415a42b4e4613ec68fe8626070d49a33d9085113940ed708429fbe6b8d94193a3d7e3a205512ca1f20e4f482f88102745bd9d1e13d7561f0e87db01270a2d34a64e8cac6c7ceff5a103411cb1453657b0f38155cc60d3265e124d7a7ef04206514ac8f8621b3d8b0b22640125e41d5000410d2b6c7005698a119af0418a295de87015450f3630f12c127071031f64218450d352143cb08089f05d7e4002124248f001102208015185d2840f127860f2a4eb6dfcbfeb6d3cf9276dc3157b3961440c7a1ba881071430a143103ebaba01245250c40a9cc8a208403cc17304920d8400250a134a84b85527b6531f930978d0f4811bfc747173dea65420e1c30f43471cdde08a9b37b10b50c40d7218820c828c00839b0c36cf1228b4e8218722864410a53eb941d291c93b40f324ecdf862b36bbf76f65ba420821ecfbae8fd1dc20a2d3034c90440a464004a3276e509592ae3802fbac38c25e6d9a640517172fe9ed803d26304e5315e2057df74716bf7b310f4d64c18483d0e4a0c9419c9a087bb9861e92605550518513d0090ca2cc000733b081e7e4de7bef1459ecc0c4120a869a6c011405134396f2362ca98a2498db63dffbb11b9c7babd055a10316e10d02499f82b14d93a66862939b26cde08bd30e43fbd2f84441d2a06e30c1be3968def6f0e44912f6a5a1f91c2e1b9fe366478c4d9d30a20345d0e4b8d97171b837053d113c39e20a105881bbdda41518b1800025039a8cc312bb7049ca885e1046ec320272406208413cc181253a50774160e226f5723b6f9ad4b3e1e7dbd5e0c76b3a6d1441370325cb8513375ca14dd080490e4dd0c00a13462c69e2156ddbc2dffad3c676b9ef37388ed52ae9cdcbbaef8e3c1d476ba96ddf6ba0b4997ffde93aecd37968fde923b8f1a79f00f6a7a720f6a7b740e64f5762dbaf3a4b9b316f644c6a5f3193da17cca4f645837dd9aa7369e1bc02f2749cee06479a61f5986aaae0bb3e752208b8ed72919ce6b2f32547ba9f5e13afa789e7b93c4508f6e946db5617af3a9f9db409c867b31a830d83dd82dd3789c4d1d0a5e4b1c3565999784828d9e38fba6f1564dd7ad31b0e680845fbe6b8788fe71c870579d2a62d03f9f2ac6f95f4e68ebb7e03adb5bcf551f95561b24285c94a53bd7223848671a9b64aefe19226e510e452e6dd7ad7bff0fa1b378a5e379ede5a2fccf080104c8048c2adf52fb8fef52fb4fe8689c4015f60c1850f776bfdcbdc001141667840082640b85beb5d4f6ff5c75d658cbbca183709506f7eab402e66d5398e3ce952058c585a8bba10a1b5fa11a03598d7a97dd225b106e32d6a33806c00adc5f856c5615f0107a035196f005a9b21c3055aa3f17fbab0406b356cac7ed0dabf7d1f299c00d01e3baa8d060037b55ab934a5fa2a8e4a057532ad265bd556ab54262bb5a9958211eb95184d0e141eb4b1b38b8b8b8b8bcb6b77b93c1dc5c7f1ba546d17572a2d977741d529a7ead3f557ab54a66aa536fdaa58a9576e84d050513861a9a9ba597e0d1a3364c4c48001535f5c5a5aac5579dd556d112b49e5515d1921d0a5efd8520c0b70ddec70c57850d880f4e8cc73e82cffc983567b81ca586a13400f1b3db97c168e2caa95cbef549b4bc80bb496800498425acc94abac7b2c55d4b5fa5f11d915d8a927a9ccea717caf9e55aecc77572a65dab0bb863c7d2d6187a85248652ec05f560809c8f359cabfe6f936506f518f03c405506d3735df01420fb6a555a814186d006df2c1b64872b019109ad624723fbfd5c1b633ff13dbfba0f942ae795b319f39ae492c8f8843a31c04418993d6daf019ea296969f9a99b274d2d5b1f3ea87a9e1bc6cffa20f8592f3e0b7c958984f5e023513d7e9e5b2e63c4276344338600f7571fe4feeac55f99488810cd20f94913c9eaf32321ff3ecf2dac215d5a56e50658bf7ab2dc00114158bffa0da89e1459ac105f403904861bfbb2bf2a81d897254340b298d5c75df6411fc894d53a65350fa551617c8f61a17eea535fbf9a13a0d944fc47d16cb9abbedb70d77557b636c9ad180b11d21b641754ba9852bd08daa7287af1b3fd4551bc25205540ee627297ebb2c58abbc61e9fb96bf4b1b41e904989c96700d8fe636ed48d3f4eeb6161a2493e88c1f61f839cb60212adf8b6bfd864697ef30faf5e01f96c565f202464a5c58ad3f2bf7f0bd3a95cb2330db8520951218a8aeaeab76189d261cd551c3abce1df526b9c55e5544bb4c6b1387eb50ac867278fd6a1d6a16ae62a154ee5e3b37b55403ed3a68a498b8a6efb87652b26d431a1a982eff0ef8b3489496903606b171ced72d3241730d94d1c81ca3e5b3edac4152a2d262bdbff2c8254b4cf961fd2cf6767cbd7a2e2b38b04e43747da67ab8a0ba8fc5c3065fbb75469696ab9b2fd8f40dabf699251d16ec208465bc7a64d34f96c17a6ed5fa1382f3c0a91c2a190687b68b4c321a19fcdd3ad2394e373bc8e50cdd36dc79c9ad71192bdec75845278baf19893c2eb08d13cdd79cca1791da1235aa31bc7d30d8e39385e47a888d6e89e79baf59833f33a4243b446b7ccd37d1a73645e470888d6e88e7dec758474b44637ece90ec71cd8eb08d978bac531c7c6eb08fdd33d8e39ff3a42385aa39bc6d39d1a7368bc4e93265aa3bbc6d3cd32e6d4789d264cb446f78da79b1c736ebc4e931fadd1fd7aba5563ceeb759af8688d6ed7bb5ea7c912add18dc2d3cd1a7350789d263d5aa3fb84a7bb35e69cf03a4d4c78135ea7c98ed6e82ee1e97619734a78ba5fc69cf2af8e3c73eef6649ffc9381f015dcf6d08ad65aebb0e9b73dc45536a6e22e5ce42e37d23c1da66da8c4ebd7eb929c64884664000100009315000028140a060442c168284bc36def14800d78c452645c1a88a23006511032c8100388410600012002303253b4011ca063625c87a9f2a4c4f73c847ad4f526ba24e5f841bae0e41a23cbf397300fa749a88cdf490e538da5d2a7fdc4dc8b9e1cd4c2a25f4312df0c938075b6207253c32de2b90b92c34ae63cb6e89132045d22e98a148287429ee219761ac68cc0ce7bbc58849fbc0dd81962c3247ff842eb4d3a4561262172ee0c7a2d13a24cb1742f740a206b095af41d0aea65cc0c56627f23aeb3602526c39579e6d03e141356be5f807ac3043b088cb0072c134d3d1222c32a57f103cf09b20b3bc8c624dde03951e19ba395812b664ecf24de685ddb9d530a878d0caefb8272d144e7c74f0517cfd4c5e40e68350e62de9d208b74c34842ab1cb025c20793678c0f5e300cc42f3794885ee1feb445144d991a0959e6fa560c4fc4886c9c9026293d4b842ab42e6384d6602b36ab301375e6641df4b0ac8299d53193f4a1c764156652c74ca2870e86db202e2d5769b51c8d996baee331096c91aa3c57d489f0881835d0a5afa0bc746155d7abda7ff29e29782636f4fb8b493d01a0cd0b616705054c0b188e247f5c510a2b9cecc0cd86e05881d1a354f6c7c25979e88b2984b5ee580153160a35fc086d7c83faa3878586ea34c0dfa9eb009f5cfb5c20c4d4e26acc5f8d35a7358a04b33907a2abc8b5989cd081ac3f6124fcaf8e44fc9f0769040aca834388e36a99c1439769a0b622b9b02b54374059b969e5ecfc3bccad529a4440606525fa8364dc342bf496e9087b14a724e112313be20a949662b7cfc32acf0d8d94fb460517e5768d7894bb584895e8b92aefd80716141a5540ee98ec302d72f52ef90ff9aa906f1d724d6871463aaae0dbe038ec683078aee967ce8630b9ef6605bf79f24b689d8ab5afa3a943b072a08b3be7a8beed08749f5c0e6913677cc206d510aff5ece83ebfd48cd7313458daf6e3066947a694ddcb592164750d548d09b0a65f207ea8c9b281a24f6fe49b3705566ed0d0e54e53582dd3a7008d890570475989ec048eb2e59553545d251b9eddd3dd295ed1000cde795163bb5ce44c1a2bc65262be14ccc3d84a1f7488ea3d8fd6d722298951bd58edaf52718c25c459d1734e43b21c7f7f7aaf0bdec4b920b543bbda27ec093095529493eeaebf3d6bc668895bcf16a894985818e7dbb2e30901c222d97e00ab381571ee71e5b0d37b606bc04d5f799b9eb0f6ec1ac0a73241e60dab96439bd6128a9b7331520f9f1ea968040b43e460fdf4c3a99296b82e4bd259cd6f1001670fa0564bb58510506c2e480092c68e570492c7bd038340eb4152a3aa68b165e2eca046b47d69939204f541fdd67324e82c95b0e3cb916d10014611cb7480a58dc072fa960d7724b9e4eb7f91a094177770d0032a9ce74d5876031ebb0d9b1657f7e7baef974023be9040e83df06bcf43ade028c7a5679cd5c2f3682eaddcffeefb7801afeb8d4c6398ff092c0807db039c8b20d426c6f6cf113f7a9b1617cd9ba5ac384a8682b07f9bb650eadbe13b4148fdf0914939186501b8e6f4a121457f8aaff44ebd28df87d15bbfc2fb21200c3d2475b92710da843f44bfd653012ede40c149d599a640064cc973740d9d3f70fe429dd472d0d447a409027b5a797fa09e4712ee2c7757d554f154ffa87f8f55845038b140e7d4eb571db0c9171522954a3eeb5c1357e7471bc72081d003f3ba77da167a04a8eebe6f174aa631c86f4e801c45c728295bd07a34bda08576278d1d45218fdd0a0010ba83a8b5e6246f57a546bcaa090fde5d00920a5ac3033db84199569526ffc1467ca74053b6738921a1855b6565477b0e778d8f2802dc8f463ae291de75b07a3deab8317e4e6cb75400fea86e33565815ada7f4b1d9948397631fac26759e41cc8e6b81889ac9a3d3c9cfe6db0b98e2d4e5b26514bce967e386a7d8a07572a192ec28505748d53b21a2109fa1b57be22a08c6d73d5dfce20e46682a13cfddbe2d591833df16d6eb0e3cadce059b26080ab790c447735d1ccf770f1a41c4e6dd4d40a774a222c3736f9f9e06350f6580ac58f4d7eec787c01b9e93f82baa9cbcd20dfb873ed1d4a461e28933ab579622b4b7e4abb06cf20216c5dd553af22ab32b9f92d2d81396ceead8cbf17abf6bc1cf4e576d1f60d92eb093634ede7fe56c56139ccb48fdd6186c1a96ff13af08a240f8de2bf9c4ea8a8ee5aeea8368b030852f3e0d158a40f6f0e71972f0acea3b6b2eb0acf98bf4f985626105c1c6560035a87c0afe576ddd760825060e37943cd3c5447c7a91ec175f2f00cc46432862f0143d7c5a5d5a3e7c1ca53481e492283accd20b39b143eab553ac2ca29dc8514436bc5889aff38d159c6663e5625b3d73a16cf7fa7adb91cc033f1287664afe47ccc4fddbba309ff1d2f62297fb8dbb14af387b74b79eb2277426da14a272141d9357f6cba88e2787d7aef22184f1e5b602af78b35de3060c45f2fa5803bef5266204be363fb937c27c23bd82b702f0ca6f73ef14fea0b21b8a506b3da5d6d54e662077a3112b2fed4eaa44661c564853e5e7efc04bf72cd88c3281f7458a58159e805fbef35f15125d50c94fcd666f0c2778666788c7c55d62f4539bfa5f679dceb70d082dc75e6a10a72e2276936dda8abc13e7e7818e791a0d2050e6857cd2748d288a1484c2b8e891d48633eb0fb439605a14c5265afdad79621707a24e0b22b4b27cd502171a3f136520effe900610267a1965930a3e3693a375b249116fa111d48d0441199dceb48bdf006a4dbf244c08ed272811c7797079810e35f3bdb42429d37783508c0ef47e1f7268024140591bc1a61d0f2fa77b0f1404ae4d0added19585044c17b71ba52b347b33c02b69dc52a882d52c54b8f96cfa85e3ceae3de98856c25441ae5239a87c565940e6283071f85c62c0aa8fda0ea7bb35b91a6662454638558e1e523921e9560f5d04f57f3feaca1a3f72229d0e3f0767f0b873f40812a38d94412f7a428a18bdddd139d57b4e784f315df3da1bc32beb758165396de5c2b49e8e9065931e203ba266be6e1db8b32713898f16bb1eeb7473dc1d964ccd39c7d38bdd86bca935d932afc8751723a224ea3443442bf3ec231c3ed1e566075498a8a3ce2139f7d4d91aabb5621f599fb7823ddf2ff141d70d3f59ddf160562272d164d14bd334c141dec29dc247e7a7cb342f9eff75aae2ba547dd8c4dc7b552cb883d011492cdbcac9aab518b9c5210566a5472a3ca389807e5a72dc9132bd9252c9b641cfcbe320ffdbb8901929f50ad49c1ac7c8437df8ee97b50e9f35d0748be83f6029da8d5ffc5e67c9c75c4d31084940ee7d766d0c9d1e9ea978374acdfe0f1fae0952356c7b1c10756763952be9849ea066a0e020766482b9b81673f35b3fd822130ff99aa2a5fc8df45e34537509c45fe65f907a8dd3c3622b707f109a225a98a321f7d732432e1d42482e6aae28c1bd6122674e04ebe51b382adca1795e23c1d1384610e78219eccee30d9205f277f59eecd8b28f2451aa4ca048b8df924333c1b4cb21cb014824d932935a6eff4f8f4b53a11562ad2063155907f89fc020f65d37eec10dd2bf93bbb474e06575491d52a2fa101f11bd6d17f8729988b04d02df5c6ec23e7f572df4d5158ae7e507ea0af46123da3ff6b45300b8b24df98dc529445842cf146f3daeb4a1d2d0f9529801e0d4564f9424896b2ecf0c2b5e92a758306938bd23f48008e467423d8f09f2bb35188e180f4f138c5c1e3548c494bcf309e5832dcf032a925be22376e8bdb6ad7aa8d8c7fe1d6d60580e35950fa144accebdfc74aaadfb4696ae040f98594b2628da9ba14613129ae30734bc9f56a87fe5a624d22e8a691f4e1f023d0b9d775018615957bcf496475b48cba95c3641a6a893ac66c6f79e9e0d14ed2396c27a0f05bddfac3e70e3487b2867e0cc0944b48518a06ec15ba0e68399a782cedb86256ab20e78dca942f39140a152e0f5ab5bf3ead6658efd382617fb9ae47287fcb073e22bd7b9b2608e9239129966aab5221a39265d4018a15fef1b6c74a2e1e50d052016ce87258d9f9b1e9de68e75c678b0327704397e8573aedd794b6a7f358bf95e2225c77d0a6620bb87e92a9e07f99d55f118990d8c4b488031dfc233a4bcce37ed65b28a59341bb7a0fab44b4a30c8efe2f222d389641827b3a07c1dc68d770eb0d354791f8f7409eb45cc3fb68ee0302ec0f01ba4cc1d79b809490a9c4d1a423e057b5eb02dba80b1bcf4b3493a1a3c73690fba408fba44d7ee7e1befa6c475333d9fd75a30d548c3a71c1639c6569a2ec8318a0243f7e905519243c78aaa44882176fa495c0fb653695a1759acbb8df87dc045cafcfcba0b53dad59bd8b854dc8e69e7ce4e9151894f60902f1794b5fd1a81a9319ebad9a62273ef9af3ee60d8c054a94ce44116fce05d1c708e95d04d7f82bd227f61cabe5d661036d1f6fe76c0565123cca3c7e4b722682b684391ca69136a28da8af012db55f4017f36039b9106c829c1cc129a990b750fe6613219b45f00fe818172d06130f7f7f2c3fe4e01c824323dd87542c76af852e1dc7a0f342e8fba523f0ef0f801223a7f85c8428daa8f72a7f94d3c45c7f5d07674f7ffea3cc4e2fe67b91b6fd826bff2f309c9509ea7c8c9fd356d560b21905696653a9d26d85728e3e5a392d7ccf8a86afc215f2d8dcddb58e0b447d9afe5e6f750ea2b227e047cdd5b2bba4340cbbb8fc7d6ddfa82c7da1f504c1c47e82cc8530c18c2a840ca6300e75a8c1e69dea495ceec7c329c166652e044bd42dd55cdc2a6098f5b2321be6a3b791c53a869b203bef820c5286a642ef85918179bfeeaa54b5f098ad508e0845ba7adf1272b37995c6c200559922c551f0a2641ff87397d7f3e7c9dd471e87b8ff9d95c8495adebb11267d42977a5796f7c91d31b4829544f7db38981115f95b60d5c7b1449c711390e5592cfe92e6ed2e617980240f0b69a28c0e02d59d10535e5af2a6c9b8a95a9a4e93980487a889fa00198d4807667035305b5b5a670a1ea8177e2d06d9889bd4472b9eeeaec0162871ef9cee850e07a540c564842c07eaa50c925e4750ab65c166aa3f167cb0809b5beb9c41c5acf5231f624b0f4498befef8d249fdfe0338c0282c70bd4170125feb363896214982a2c59f9a9d909e3b1ef952b7b768b2eecd05265089b6de7fe8ebef2312859e99d92b95229ff47ea3566ac0dcd31952ed5dcc3465b83f3aee8b379edbabac37d11ca9399864ecaf2a955126dc690fb14627fc37903bcf231da562eaa6e93f35e6d4eec81a2485928b860cf7e009a68f9260fe5f5ae7f8fb3ea8d2b8de82de605d4f93bdd4132b7582d2028df37069e8e6169cdb8309b84f04a6aef3e8b2453e92f110815d839084725d4b48dd380f4f28c68360d9a0f78964a7377010b9f9fc4cdeb0166dfa25e8580690ce9ec1608ec9a8a61f454f5382f94cb2ceb5e4b4eda80c55a04d3c8ea664bce62121d739cc6d981fcdb24673a17e0c609a4c962fd1f594b92f50a74d502c1eee594da71a9a3a6b98f38cb7fbe9d87ca92cbd9d8788a5cda6533f4920962b385aace0a485133e29165dd7a74148ca43410bbb3b52996040756ae2529391c49f0e27dd6108a0321a49a80e14e00629cc6001ec895eccc5bb1db26c88279bfcd0d7e23164ed5be9e429941b2cdf635d8eccdc8d1dd5126cab7973b8ab42e0a4abebd56d30b8def6a4c6e986cecc363ac81af7199c53129b052a5925725b4d33ba4cef3a89982b8174b79552391b879014cfbaffa4a4c38892f2efa60e9bf72d9490a0398562745928fe8ff183b63f997346bea8f43597bdba98beab0f1944f2f81f77d57dabb7ddbec3292351bb97c70fc1c173f03e62ade5202352f948c63993dea76b90d9e564f383d6c848456d0b251d8425d126ac70840e4ee8c4b62e8bd4dd647d07a3fe23957b9f43c7e793f91c48152ad25b44afb9ecb0c95ce2defd8c7afae7f3a50cda73d9d6a0f76755e07f19a1551eeb35c274526eabf1badc933616d2f519568c722aa2c049f2fc214f31c1cd9ebdaadc8a88b467833e7a0b195dd80c94ffebeb3d6c8d70ab5bcbe25dc49e98ac60a24e072053de715c94bfcb9b89214b1a53250190d124984a81dd5e0997d43f3a0ae7ad934a86e0052c69a72e064d830e622d853e4f59d57dbda876c97304bdb38738d6508524e99a5d3b9a09935529f0f8dede962e69491fc6e1199ed242b9f1d8465202200b5691114a55da0d4ff8d4a07b3415be1a541ea7505b835a4aa7b5cd6c6f6b2ec1a756376cbd84c5c3533d6fddeac4fb1394e24d25da46562a15947ee463d5d9432991f5a8cf274af4efca82661552aa0d9a216616bc2e21efe322a704016f9d742c8ecb286b1e016fcfa812db89d199e9f4c4497f93e500af71fcf5740528ddcbce53626b019e1d6420de66d85a34567498ed1318aa81389d50aedc1236a79ed583122c313cc2b99a23f348c3cc01e1b10d999b40ad10b7568b590276031edd3322cb70397cf3fe0765ebe1ea9eb4e2ba0e1f2f63b3d59fb9c42346e316a2611ddc2326f775c620b7006e781077304bf4a302b08d4cb64c2b4e443ec003bf0c234e3055789141791b42d1f2afbb1b1753432ddc5086aec7967a96cfdc853f76bb86522c4a4840441ceadaa6de89ed68ab201255310b5bc56d6a1dee15447931727f3f47fc01babb6f121dbd16e3d145f4d4370bdbdfdd90baac6d85ab569d6bab1af9c548f0af5b2eee64f3cb273d891c83b1bc418e79456eeceaf73ea42378f57b457cf5b31ed011c86eeaa3ac5d119d3d258d54f0327c60724e4d9a9394c6474a0f838cf9fc4f26781ab91c912f2c0ae5f329902205767f07102de88a350e6679a575b80e290f39d64685af82271983eb6e37aee6e933e935144f4a21e90132a4aad05055a955cbf65b180af6972a1455abbedbf54fc244980a13711a1e01ae02a738100a8d7434823c2d8f6c0a09516f526c1b24a3c4efe1f90329659de3cb040df33f178b14bd872668fea43a8a12a7420c62de87a8dc19713ca6d8c21e9a3474b78cd893b4746211215b00e27716c9f64f975bc0cde093c0c9447cf8bbef83ab08ce44826a3e8e78b475d33653a3850561111304490c5444cf0b96c7fcd7fd7f1671248b2f2b8baa7a35cd428404e79b06574cb4c639a865d2f3895854972aab711f7e008443ed650b2cc2421eb9620f65842d5b526378a857482feaf63b9dd8bab7c7bcf0fee1e3d8705bbbd541639df7d5b19852374e6e182fe41c4881ef3c4de9792a3a5111a2aa0e310df0295c0b2be96d7ae8657f20e596421bd5538fae6322eb0d5c3358572896a1f4adc69603b5e211a4c8a28885602323c0796be05e115e312985d894f094c608713ef749fa1111cdb84b59aa2c1a6553e193da06644d9693b00e906abd3eece5c999291eaab1106203c433a718ca79669636a8de14772be2ef1ecdf880835b448f48432a9b941b28499301109b0bcbf6b7ed9fc1dc77e73bcd8889fb30121e874cfc7eb75f219d9a11156a7f2e20538039282cc54a5b35755b23d4f430b19ff26c3338b76785561bb1886404a3e514815834d17d277e0e39d6c4a06eb8099542bb999e49c2c00a2d342a8c256c3f54d5f97a8fc93e348512b7ecc10fb5e5ee0814dfaffd16479d1b6c9e430bcda151f4d0e505583e7d926b420f380ee98f28c156482b898cbcfa90bdb1ddbaf8a92d903afe9cd359d39061784978b37984902cb1207993adb5274e70c548af3f6296455c72ef1aa5187aead93fcb2888974c9e2937c233b038169e18a0a66e8528d4cbda847d3131c6247bc24d4dd670c8d19c609876369da197a1bceab7247d2c1124a457abbd957c866f683b40345198507e7852dc1cab2e97a43b4b98e509fb201fdfce6c3462ca717b9d13297e176b7061256b8149cbdca70eb04afa71e7460dbce556f7290eea369a790aac4da474f194b9a85fea39c82ecfe6c5c069684b488fbea34968c46e3debbda81fac28ea4c048a8a7fc7c0793196d6f862dcc2f08ec1e5d9d2f08b759bd66f02ee696f9ad4d35461253ea0644a371e5cdc0848f5e623e7850cb0d6779fc342e2bf9f77431e2a51fe68620c5a859214c833685866dbb00909184dfb82ea1ab2fb08e3cb72679583ada6abc476f75f9880e19b28bc6067a1ed6960522d7bd3deff9e83852c22195c4f01c042324334dbffed23664d7eadf4d64935c8f6b0ef21ae0e9ab5a25b8e1a3f7486d75979a963bddf246fbf14fc9e2615e9899756063cebf38b431d930dd83a1fdf5053d995e69d928c558a1eabd3285d53a70fa944a9437cc636047267e970207925582023f5c9e89ed0503e10f2e56629adf2397d9507931f7305c37230119208d90f15f58bd7a2bf5bf19a21d4ce645f37b3d2f796711db4d326323309154fce845a867f9703093bfe78e861e8a334a516ace124d70dba7e3e7ca1189cc9eedbc010e8a4681db9a018fed59f390707e7546039987dd30fcfafdc77e6da569a4fde17fbdc1efa04d5b6d7bcd564ff778ad3e04491d61fae66b0097a014ed207535003823a60cc9300046ac625b198f3ae3b1b323366712a3d08229e7c3c4cea210e79d31a5701c25d3a763d4c6b6f5cafb5e7dc935717bb9d21ad6b1c45320070333a9188b5236dc8f5abd80d4626e87a73a2613780363b9a16ce59778db4314af0068750a9d8b3a0ce8a643c16dd0a26398cf59f65926d336ec27f8e08b5ac4600beb82ad49a8d34b7ab7c56fab8a45199198db6dfdc91423c6d6f2fafd6af17608ba49768ab59714b348bb414959ab7daf624fd4204b7ce52025a48c58decc5e42eece5e676ed05e93a7bc9bac8ab76d5669005e094b277f57a315eaa0d8febd6ce7bfbf5fc175c72bd45b6afdf43613ea3eb552acacdb6b162616cb45f8e79503503756d601d86bc0954b7ac6a4fdc676ab64cd95dc96366142d1c5ab29df5cac40e06166e94e756586c450f151ff97dd7ae23fe9abd6f88fc5d0a9feac343360e972e04e4650e96d5ba5a769393d663c5d8a4af32fa993cbccb23a9223136818fe1b22a8bc1c08188548ded15542b09ab220df239d5bfb814a305f4d3e5190db1c98e5fd40c47e138c1135a1e305ff5aecb9a6908536c76cd5f3e06b54da64fb8bafb9a74ba940cd7e12f2a5eb66aa1c17c47670d253075b70dab4a1d9840d73c2e18ccb9690135b34cf7cd984884ad04159d7bbc1ae0d8cab256e25ea47baaf9f9cb277bc561f030403d1bff76db76afdffd64761de66e1dcd2b874c151a539c4c8bee7f0144a25ea02fd1a1ebe32f9967e88b412cda28aaec4fcd0336e922cdd1962ccbc615ed776c8abfd5287c48097bc6b56f2092705618acaf344072fbbe82ced36f103a67be7bd7874e71769cae189946f5f37e04508a30363520a07efdcf28588b294c92f708ba7ca9279793d589f28e59dcbb403f5940e83574bbbff591dbb7030d03447ac0b03c6346ac47b46b678a904a9b98abce4becb8f55b96cd6d7bba52a109d2f3c5437c58cafaec0ad19b98a20b53a36d1a8b3115c6e84cfe47c9742c802459f5a24f69c60d51ec0a8951aeb657e6dcbb49bd6edf9653b9ceaa98f20c9739260e83d42addfa3d8605b104bedcad221c06cfa2fc5219e49ee887bf18341af7f3d0554eeaca6ca4382e21c68b0b5834484675017643aaee3a310c4a88490eeba3766ba4e8ed891bcf877b64e4b9326634f7de00ebdf0cbccfa9f4ed7df3b6c51df1a94c07d7ef81aa790b790e16220a0978473315ccd09780c8cf2308f32975080efd8ae5243d6a015da1ed98bc2e11ad8328d05d7e4b2663d0022e291cd289ed367f472b443a9a584443df5b6827a470a3ddf990f8397ebb0fc15e71758fa20ed4e73ab6049f310f5d50dba8fd3f8eef09316b10cec4c672e092024887ac77f99377e81dcb011a19c27b13d0c35363b5040f6c24d7e026ba6d86c6c2eea7cc3b69378c7b0830c4eb3f2e55d7a6ee3691fce45068e57c335a1c33f79831f849215b43eef6508cde011607de9a74574fc7c6f473026f107cbbf445f273ee652811a9de0b1bb4454745bb4fd493578a9cd2c81591934131601c739be3cb2ce6ef97a5103b73bcb4306fa9821b36fbfd5c896ec1c8e3ac3382fec21d4c628f3671e9b3f5d95892fda14cef0fce6d6aa8a466c6479776162c4a855c6c30add7dfc60c34da7562e819af844f986bdf3a05f46546a27e510cb2a0ad81f27dbd921caac43f95cb127ca1717ac5ade998d829f83dd2fcdb3a29bd8fa345856efb325e13c9e64a338b39d84e0ec70ee70194aec6583a96a13f44a67380436604a1cd4cb5f53021572c9209ccea89d7819d7763117be9d6de8d405f7be8bf15d2da8c1809a5a740202041ed70cf7b67711f9cc2239223c4cb687a159e04c6c74979f07086bdf9432725fc5fa8d6c7e05c378101026422e9535a47856534bef6e551f1096eaee50ea54968ecd3922485ad99b5452b1d7da982ee5fc90517fa651885e3e217d2e6cd3d9d528d05856f4bad9ff0d10964785d86829631e1164d52df87e46d66238e2b7bbd375ba4b43f9fea6fa8fa245e7c8770a0045ea336cc3703002aeb8009ad9e44c421732acd877681012a74b2aec324bcfdb27a61c76a51f6142938bcc528323df15bec6997b16c3f7ded0361d1b1807f7d0a94c693b6f92555c6552ad547709f8e5490c2f1b1724e14712741740e5ec4ec3cab6b0710d0051faa2d7dc68c17ce8a61d61e83ac03a34bfb5dc72565dced9ea2c89e88954a7b80eee0aa752a1859d4bbf8c1229f3b7794368bf7a86aaeb9d89c668f224a36aa3100fadc3078d9e8fcaa85c3b2fe655e808935e0e9196cc76550128a8aefc1a369835525a58145ba1e16f156a8a0473325163abf97d8bbe5f67235647eaf725f2885bdff6c29050323186ffb8492a014d6fbc33d87dbafbe348d0d9b542bb1c618a389bbd5315b4b144b1189e8e846974d387775f5ab6d7b9f67cdaf07af56db38b36373c253dc175ba9f84f3c4e182bf4b68368e30892f5c5c72c7d0e76c06f3453aaa2a6fb99aa896ea9370ca9a7ca55b1a5c276edd678793e4fe5e3af2f557cc75d42ee70ace228957a1de1ea7cc8014d2bfad8bff9a8d4c6a6731f18035e6023c8e10d17829e1e29a425eb91cb4314cd544077aec13401f0c1822c1224ee79b1ad4ce932dd9551834dc41dc1479eb54571f3cb852a500b282f05895c2fbe6a1d718968c40470f4658772685a7a02ec407629b638ffc5ce2a46c20b4d294088bb601d43c1773cf752bacf2501c11aa8e8ee6fc14850b8f2541215378ec0b233cff0d06b98f976242a52af30cae53146afccfe968a173d45452e32cc81bb289452b867162f5f944f5054f8199d64359ae9e351adf3cf55256c0e2952358ad8eaf01291e33607c2c2716ebe42b1f032f90ec49618ceab309d6492d8fda5c688642feb6f3eced9d11bf450994faad09e841d58b3dd2e81c30f6aed9429267899d7e413cff212fabf4ad04aab93b157c05880100b4375522600ffa18b0b05b7898eccc1b7419c6a638fba3ee9e8337f6b24ab1e4c8525f60caa8aaba28640a0a49e3dd958f630763d59d7a959f61ca81f7cf2f9ad2d5fa8c1f36c2f7ed756cd4f4250811c53af80c1818ee5da669c09b668014db67680814b1cbe10021dfaf91e9e27d5e9e855996fc82831159dcf96f18b51e1efe8d2dd9533afea1599f1ea4ae9403ff7c6c8b1294aeea8547559ed7e13612918a7e85069ed06a0b05c40a266f9564a179df68462e6de825bb541aca4a7c80eacfd33b47f87c2d148c923252682dd18d35ab63c793962205ab1518f52ecfb4e6e587e739269181b1e4b6077145ab3feefdff422fc2fc8d7664c5c997501f43549a374cee5c87967d26dafb287d5ca390ed09aeaca2bdba0bc1b1179d0c906ac67dac8328ea79c52e1529e4504f6e71deb9f91b64d20763401860dcdf98f79b20e4ac04ce3923521076dba29ad7172c0375391ce9f4dc7beeddb544bba32ef3596ffe8e21c2f831eec92cb2b50988317665e043ba7266d44119f73a91fb0df581ef0dec80626ca2b361014c704a76cdce724fd89ecffe5f66db38b5585b3932685c54cdf26670b7d9f93b2f586c75db944278a69a18b3b858448e1b2a94f40b0a1998d3543392ddc4dd472b09e16ebf32e2d4c6a43e7f7824b1d5f9a0ebb1510da91262e94867c1cda3012cf893a72d6b8a8e039a14a92ae6d88adf24031babbb64d5abec2728056140b34637754eb5c571b7925ae15bc5da414e389ea49b77625759b238aed2e45c5628a5a07dca0e93c4a9e45ab84b74ac99854f9216488a7cbd1518eb3e4e459097fa08400a93d5dc4add69ee3470941bc1da57552c5cc135294074b1163f1b921e55f67b130d14e9bfcf37427d2c0b4cc3c2d84cf58d63b64fcf517b1ea8165a9980bcc50dfa7c819ddc4bcbf821fe9c878dd41faa9ce4f7d305d0c60d867d3093894c2692e24c229441fa3cb62475ea16d030fe27ed07773138212ca5e5cab47dd03901cec522053e8b07dbb012bce5f38664a4b09938af2907accf02e10372a28dfc8bb79abf40f7f93b4ac4c4696fd19ee68de6347f33e6774e7b0a3791e3bda6759a3398f19cdfb9cd19fc38ceeb9dc68cfe547c5679cb2fd2dc673ff6146f75c6eb4e7f2a3f32633da7378a3bd871dad335c1b5d8a8d2bd401aff0badd4005f3a049db401634bcfda845bad990bb50ad3214660d2135708e8eb1af5cccb1aeca124aa1cee2086e376b118d8daf5c0d3b2d2fbf5fd207766f454565b4892ae87e556b795284ebe7d7e46c37802668e2b09158698bd54e6ba0761353ea30e7d7bca18c4f0fcb42e741a120a824c7d3bb2e30afd8256215b2b6c3756600282df08d9794d0ad22f99284e22cf257e3af78f051dd6acdc41881a800b629c8a0e701a1427e2c8d23f6769c283fd132b2c47f6a07ce649bbea1702c01c72d2400a71cfe87c61ce7a258ae3919994b4af6cf91b1c548c1a8738f5bb74bd2c849abe8bc514252a4ae92c35e80d20275c8cc4adb61589c04c4a42836e001028557374e37c80324ae9ee938dddb3f10d6f3b3e374541584b29d153872ffa12f590393909db504c27d9cfadb77793c17fdfa5f1409cee8dc091b76797b43a5fb337c31cb7e6ea1127e5d05467e504b2264ae31ad61e8f0d4cb35ae4059112754ae08d613a7266c2c8e493044b7a7b20909bd2959f77e57c1c19efeff70ccb73416c0f996a99612e1a1161745711c95709ccd0364ea54cb3c1df3d7198c691ce44282b4de61e5b3b28477c70ab93eb295c4a074f2ca9f9691cccc97f36c4fcbeb2354231430add7160be46fdcbe7c7e4493a1f399356f61d93a962152714aee4436264d28f4050b572a976282e119d60358eebbc471b6da6644183eaab062264011e80b77d83e836bffff7414fa75700da5ea1089350dee86f188cb90f283a474bd91f8de05c4766fd68cff3f5b5b20ed07bf0789cdbd11f923d389ce926b6211b07240f5442b1e5a4b4ef139c29406c9c28ce75dc4ea3aea0aefe5ca96539c3489a57370ff36092be12c7d9f36cb79675d523154e508192df512e100ffa1b729627c710c4566c209da66e9944ebf26d637163a33bc47736568b9fa7db904048bb3f6f1585711a2a53e32785c07315c6b95413013b06d7a98867ccd9da9ae4718979252c7bfb0b597fc671bf35de77164fb1fcbe4a7b6b6ac58d83b4a56da8aad0f658a2eefbe22038c258b138dbf5f6f8e048dc0fa44cf0cde4653522c7aa07220fab020b03ba6234f550b791c67e95d49e43ea66cd2948dee8ae61f53f70cf945766cdaf3589d4bc7e266ff73a71f06184f192fab2aa27ca784a5682202336727af2efaa81fa2c29cfca65e716e194dc6d9c43f15a1c301273f2bc4f745a147200e064933e775849654481126be52d680556676db800e8432d7eea0819f62c935c252b1b9a3e80f77c4355d9d081ab710121fa2cbe3871160cc051ac0967034cd8e516cee57077254647adbb2004e39c4c95380aae588bb3347d17c7cd3bd99a2fd08522befd4f5c4705b1eeae6e61460da271ef4c4f8b7a7002f07864568018312bc05d5f315596e3618563da0eb376fde10b3167852f98f667f7c93988b40efa63b38db7215a831a20db8c6b533822bb9de68168f519039a7092aa1d18e7cc8c493eb43bf680e523473967a1726a16f1887be5199f0bf034567bde0930ea1c76b3978976391496dc7002e74cf4055bd1af825b804e7aa8be5c482ba4a0d78d884a035c97c70624a48eb0496d4499cd20923bc4ea5a30f62f592fbe9640e2a0b3a849909ca8aba8f86e8087d294e5e60588999c65b5ba8c5049abb9d989004d3b0ddb29a05d3db3f235f338a9f3f75cd28749d92a4577feb298f3fda03df7ba0e69f2f636240f72af588e7e142250e41db6cd2c382bd550291315afe5f267c919a51432379a440efa40fd8902b74694ab676916f50e510f99c48de45759d47a64349eabd64c210a6d9cdd5aa987c97f15bf2f4fd91d0c7c4a880516a733ae21667d851c3c52ebffe867a0a1f3530dc4754184e622443734fac053f00b936473bf29bd976de3f158446e0601bbb3132a9eb57ba3a523ba28ba7923674b54a3bc64d0e9ae70b5016f4a3189e14a924c02a2774927dfde0ee4c8751a45712c399054f900db2cc1480f35d61ddb4a117120dcf263a31a66ed0293fb18f8c3c7bd5186b842d5155033677648c844cc9a30f01244247578bf5f4cd04f7011a5a9ba276cac6c781e3c30a37961b500c6c38e1e56ae96d2f083ac1afab4bb07d3d6a7785a978e959b2e21b56163256a4bfe9e0341b9bd9d669d0a551a4867f3d04dc1ee03b2c1c796b67ecbdab81f216e4bb627f496e0711a7bfc76a509139aa4856850bd2d246683d3062a69e562f3ef05f35431bf5c92def5f6a4287f4152d68ff4a91107f1960d02d175cbe858e8b35a0fef55cc16183cba0728458d8b1ab2619fd3bceba021d506a79c0980ec68155b8182e30426fa6114c91d9256598608d5838401ae6783e9084d0c5162ea0f5c967ef487b01b65647a7c9a12bead89ab218e2f92b2aef053affaf291bdefe3fb6f8e04fa6e1d84d24a63d78a2e7e6461af8bf634835a2c30574174c26f2d1c316d12519d46e4116e53d0aa5b8f633682688d42f792a76b2c6e654241f3c5d55df8a00609d43b8b535baffc32a268944a3b468cd740e3cde9fe4802cb338ac931a705e4f7c2525bef0006679484ed451412e4674b13b391624efc79cd2d9bab748bad925b4f7735ce823db07c8efabbd43f02ad426de53afe93b8256c61b23a80d2dfc9c6d1d6beb33a317e3a191986304fdb2ac7d8709b9adbf85a57bdf3445157d2ddd5a7aea5ca047f4367f915cbc70b05613714680b141b6c3e57c4a93de9bfff94f9eaa4b55ca2782424d652c6eb4686db350cd857084725e22fbc1b144cc8a6fc6f0780f9e51b4370a864093394df9f40a7b3ac52dbbaff1f043426ed629308222b1bba41b4d66271b8c4c4e5a234059c1d48c4ee115ee49a64034dc39003baceb42d1fbcd1eb7110f4bcea96e9639958494aeea4ce4ddc378d5a8eb4289b4f151e8506d054de1a9631a578f3cfbb1957b8158370691c56591ac6306b22fd7efc82eca9632ec6086a944e6b76dba5dbce4f1f2e2468fc86df4980dd629d542ca2062d331747d8fa0332a01d87b831b00126d4460a98136eb85aba71f4725c34112ca96f29311bb9de08de3465eeb2a86b37bb4e0078b094186b25e1ca7be0ebaa85e8ec89393900c096517c077253c59beba938216680807c7a24bfb8abbd709213e66e88d270d791bc32ef75ca8fa27f4ca37122703fc70af63aceae8c801b72d7f86cd206888a998913d64f6daf55f1614bf6e7e7542365f4530e5eaf7e8283e8daba964fd20f3febcb5ac2109780d89338a10ca35dbfb5a57c9bf7589954e51e2b7a0e758f98bfd6d430847701ca7349c180383937e0420e15ca5ffa1cf09da66a8fabcb83e062aa471d0c5abef6b4b26193ad15463b98fb293162918e1e24f46904223d141b8ae260e9c06ef2a46f4cd70263d2684830de2407feee5114b1a0365515619e747d653c1d31dbbbd4ac756c490b1cc65473c714a763d7712195414c1acec8836960178b0d618932a49fa733f384e1b4a4b956196890686e6e560006ac638b7d8bde996f8776990496b221245d79908cd206ed5b6e90eee41f1eebfb508f6a32105f88c6be4dda54071bb71aea376e7396464877384e947403b88f2c1b11ef0c9ef468b220bbd7ea166716d6b8ef9b4109d3c45281753860b459b163047bd12829f3878b80c8144a04c11769919af644eb3d03a092fc9295c15d8e21d5f5e6ca8e53d5807667500dd4e15de914a555443037f282a7315e2a9a35e6afa758591dfae877e5509e6509d9e37bb3a27451ecbe8ae913a4bc3e79ef8eae0847c8f19de855a59d04767b717845f417878593a424626ba2c4ccd0c8166f1d19a42498d2559d5f94bc832bc3f9b4ee6ab12d5c1cd380bfe61922d3b8455799bf52f9f856f56a416d98a998494b3f80d5c723e680bae2e65220536d30b7d5f8b76fb67d24fb9ab0f510c83251a97223161a55563b451a5ffbfe6bfb20b09a3659cd6466584c599f21c58ca14e6e6364d21c0dc47de68aee51d90c0e2cdaebbe0740c793e59fdaa4458f45805e29cd368b2c2b802f5c152d1d05a58b1a5cc7649dd598b8da0b2545ecf2fcdae6e4d00b46385800e31c90a403d5ea8ae535af2bb16277c8e718befb881c266cb006ee1ecec20131883717d887201a8ed6067682f98b8fafcd59da814517d55262a8998565e0e83e4e1616f8cbc72750284c565142f8821f4972e7f2889bc4bc4bbc576eabc40bccce21687f11711c4ae0935f7c03eef94c25929abd213767911904378c9b2243eb5cb9562130609b6c0e6092d99fe8772f48c005579b8604b101491afd8088a46890658c67da3655ce87721a242b053e8f9c89d26abda0d1ff1fb2932d71bd1f466350e3afb091a870aba340a144120c0edd66c1fe6c9939043c4de047a6882365ef6c85a1496f2ad757ffa57db255cb9b4b8822d52ed4eae8ac5af2a816340a150844682a800152d10256bf7589479a4bd427480537cc240cd585c52dfc93cc939b9c0f3bf92de6219702b16298b44895423e8ecce3fedb355bd001bca34e32f47432d19e01b6d4d14716c489e3f78b24b72128f88796e2c99c8583499bce01906c7dd4bf809e58c2f5812aae33babf3c273f02584ff52289c0022c592e4fe9d8deb8e160beade338fa9ae330c7afbf22aae446870527cdb137a588ac9b6e25f5bdb5c67d844ae41c0d8a5045a8dc14c836ecb49fa3b7330213797b731941d0f833a3d1d2e60075638617108197ce2a7b772fe7ff9d95c843e4902661a6b00f2669340250b10fb6f0b86430d6f658053334afef6bb915ef59847babc4220f9caff5c10a1770ef9446258dd142d5b36241cfeabfd1de7b5f52819b0df345e62deebc587c6b5daae1ab066766ab46ef15610f6cdd0db9e162cf554220d71e6bba4b364a3600dfb84ce1542b4e80d6ef1d753fcb81481056add27b96d8cba177ee854e805e3cd89560c651f34ec231532dbdcb7c02603fa2fd63c2d81c16df81571158e642beda0e6e5cf2a3ecf2b786eff09a1fcaa269cd8aaf6e46f245dc38d6f511320e2ef488d2596349d4e5fd2a9a3d376468648cb89f099e686ad5683317a94aa8fb4dd2907b09173118c951725497b6c40f9c8d3a377817b25c33c3f45e957defaa439ec720ecba0755331e54e11d0a43373f1963c91beb4304d7bf155c2b0864e1c2a714323b8c7858019a5f601be06481fcfb3fc611fcf74efe5bb1f5502786e97129d1589833742e0e628083679246ffc969bb15823f6e0bc2079b432cd106a9c037555d38320ec6be745d57ecd095a02f58792af05d979416243f5d28102ebd19df0f73c18238b818e744c2af01b0826ee3f2b0a82a4418b5608f2d5a519f4e0d1c9c2080692d201d1162cf020de371b167189403ef8b4a5fbf532a121c8934a5746cd4cea86de8c383bfeb27173cc7ccc79f8cf3cf2d49c384f5d51d9e9b2ac9780550239186fd3b1daae56094d74c38a4233b3c15ed6a8c44e363ced24e2bde7da54b58af671874dbd72677223b6c4cf641a22f0c0f5a0845476c05f61723fb16d1998b6ebe56fc318cf7b151ee0ae906b036149ca28e06d8a20151325c7fe5f419acedd338d3648925720fcf3f10d92909809f4947074d8b8122428d6131a12f1a0137aae7d6b980c840dbf86c76b3c04c80ad5005cbbb0ea18f8c98986fa8146719f70d060f4da470213a9418956e17686c4de03aca293b3e11234dce456a30a5d6e79f9bf7103ba74cad45f734aedb9c68dd0d4c0b07f7053ee496a8d6eb8c9975e593bf125c5e1cd69f028dae1c80e654689499e5bc4d0eb2a421f5bae3291a4be3d09ddcedb2b51baca596368b76a4da9d2d1b93b0c3cd301c84b6d4fc4920c4f0a527fe54835b5368a321c556f6d22b548ef03fb59ececf87d4eb445bc785ba49cf5ed648a278441c456b6a11907c50eed100a18392117c4ef32067604e88d141404333c788107055cccc6c51a0f41bfb246f61eeb9208a1eb14e57f132b396081b83da3c20860af40bb9589ec2348e2a49e8d2d27f220682ae677dedc101aeedcfe5015f0e666996047b4501b2a20b14fb7061e055424843cce8a374342a302bf7e5a3152c3c66a7f29a8b8411d087f4e309bbb9adfee28976570a9d9e16ed2fe461ac7d4f90b190016e9a810765a9dee011459bb07d54ab88bb21471f4c4a5fe5d03ac9c950dea75b2500c71e7e4ac378b0141caf0a958d85c49549aa71daebbb9a02acdea1234067d88738ae242fbd225076541b702ed5568438365185a74472d10c166053d745d6d48d32abc516ef71f2c0b8c879424e32dc7fdfc185d1c6bd42f6d40c4410be50257f6ffa6515d8fa83727c20cb8826283eb5e69e646e39c52d4a41a9768b2b3e09a02a4051dda28907d05858f3b5708f0643bc64c61c8279e6dbea3da96290ad5d7e6e911fa5e8242f3bc596091c8a43b817a147f9e8dde28e537793ca9387bfc6b43cc0c44c916891cf50701a75515ec9616c9b3d1515374c5168e7e4ecb0cd4032d9c98795a8cd87e8fbc7f105166418767b39ac90cb6a505c03a4647616ec5aedc8bc14ff106108e5244f7ea31d2e7c0df96ab5c108d1d26bcad8000718fd2247ce2564ed2f7d5a194cce3b284282d5609fbdeba402b7f4c128530830108a3662d2ee7e7966840109345caf8931285c82064e5117eea0a92564f5db04e1c3e0392791a483aa11b94f325e4652546c5bf4251a1ed911a37e4cd77d3755e66a6b3a2144f439a62fd678599198092694a4019896ad1675445a7c00847a1441ce79c2a5e657aa4f44454c32aa73d2f668c57600d792eb827f51d9ea0e40968aefb11151a1cbc271a9c6dc53f1afa673412a56c1eba2cc8bef31ad8f547943112b82c9b9679a3377241fd50ecab7c4a2ebc86c65074d7ed8c32974fc23d718f1a56e5ec1035ad1497563290459d420ee7beb84d218731d581f15604aaeee2f4c0305e6499edaa1895aa9d0ccfacaf71f9808e44eb3e5b0037f18999d2b33b751c78df628c0dbb08e18f934b3a37925186501f5f37fd50c89165eea086f997b2f7979cf43641cbb16e4df1ea847aa235310e74565fcaa8dc5231d8e3aa04882e012b6342ec81de2c819f201d5a7eeaa2b09921dbdb715b6eb31a79e997388a6000e1dca07d138b83c3980c5018f81418b1d661829acb645b2fa609c3051cc7938ad75cb9a3e73d2182014b6573dec97bcd095365c2b9f62a8df29545973081c6bc956c60cd7d439dc250a79b80de3118e6c07584e4002c15aa8f76a2a80a38133049d176fc03a65b7077d562f1ff86e13261b7c8091ead69df185102103ded2952a9783564e0a279edb2d1a61c5cb1bd72455d2a2068ec110e06c8cbf3bdc6c5a786f97e34c1f4b11ed917ad41a0ff1535439f8e2cf8f507e45ff297ad362022e59c6c3964c8a7843d98017f50a0ff8a1e62fa5aa1fbc9f66d8665c0df5e0086305cd95f4b950562fb2d34bf18b0dd813cc50aca374201f57d1064083881590a1dc7abefc64f3962f8fd600d19febdd5f71ae43b300afa53606b8782840d0eb1192944f7b8836a9fc808828e197ae6e51535f45f76d2db337dc124da87bed521c22d7d65c2fa08dee89d483aa565006ffd69e81907d08f19ba95e8034a14592f07b655d093719821c59e8d3f0aad0b9303b447d25e4ec5b70c364dae05e7afbd47bd4df0343e3c1ef05085271e37da46ef325aa7a9726ccd6a1f15bddc2171aa1dae41746a4baf80cd43fa5fea1d3113f2f6226071abe694e7252f37eba397234bc6f3e0d2f3081fac6acfcb3319b7c2e9d6d5579f22f2abc6e3ec7916871dff6257e01c735b0f0f886b799e6dfe04b6b4065fdee084bd9e97006fc21524006191d5d2b89c5fbb87644246b0ccb0e729a353e89ba9b2becf3103377a83b2468798e190a98d6a793d2f6f4513b4a8e432c76396f33c72460ece5b97f81ac2ffbb7da70d50cb05f63c72abe4786494e71ddcab60210e410189a095aef6c952eb9732d97b80235534a6f8314f27a9108faa3c4f5113648e3cb54dd8e1f77b7256feb909db1fea9763d94ee6fdcaf3c8a912b47527216ff06bd50ce33c30dea4e9366edece62e3809c143402f430f1bcc0a48e450daa72b9bee7f5dab7203672ed62699a2ef8109c588b7ae795ca31eeb1851a2120ebb53a20b9157e5238489ce7c92e85b9f25cfc26ac68a8d9a8e39ff3ce4189d2bc66c8ff010202b204711807c2c81f3654b4b987fba872d48cc3332398a896ffa781b26d2202f9b829fbb4e83c75ed9f2ee4d4c21521fdc3a437e953fe1df0a911975dc0368485ce251921f94c4e0a760fca797d49fa9b49eb61d01fbff0934fd597835d257eacc15f169ab2167584a997fd939eb611e615154fc97b7e9759d88b77f2fc232e68c913d94b63fe6c4760162686d7aa5d6556841cb0b1df138aba192f68bc4adaa07874232c15360b64fee9780c53f1357004bb1de26f9f40810993eee2cd833409f866436a93ae7e491421f88bab815e07d7d49279917384b8966b308ca097455e2a9ebec13b46f47b4e8b83ea49e57191aa97170bfb1f7e6da1cf74cf5d5ae4126dd12b66a1a554464ead8f2f719871398f7bac52acdec71751ce77a1e468e8024bd02166d7422e57ba410f614ca34a37b2f719845ba6b169b5c1fa52f1d246d05e36378bd34bc77a961f9dcf64cb9d44e8e3c6b82ab8f875c8672d3263d55115207ae0b7106c67d4fcb46c81c3620a07a9a6f32e328090802c1e73202165d6e60e7bd85ab48d8b72d512d2b4b0b9e6f1e8806ff1e089623cd718211fe66c64da27a49be22af3fe157265a044514e3609728eb6bcd1645eff3be38f7f1b8f5f0917d2d1074ed0f668bb091ac91e96d5d61239ca7046730c0ac1904c24c98817de35870ef0a56df062fad7073c8e04bbca274e9ab45f7ae03b4a0e081677a386022146d506558c0b1d091a2eb4767a8ee01502e92d61b4796cc29fc24001cbd8c4084509671a2757900649e969a717d983a520d58f3a56ac3cba7b3917f06ba29346fa445c88d4106929cf119d364c0e31304165f0ac6dea99f85a0e4bcc25140584942b1c1d684b30ae53842cc2fa8021062e6e784c266224be5c35fe5db88649ad1d1e0153a45fc0e236a7907d40b12c59809ab34d941cc857aac09df228d6e473623bb3179bff00f88e8acdef3913fc0a90c1a405c9e8ce42abb0247ac34144b840b30ed16c403eea16549e823342fe9b3a52ead2c9cc1eb4a5578fd9a71a3ba3f0bad4fccf7491a4867f9c1674fc3e16f75b6668349780fec926da635da4a58e3a284da3c6df1697a3bf9cf2d4001f34ce62e613d14cb4f2c4c314e370ef90c5ad2f960a7f57c7baa608e9c49316da78a339504bc46ba7877dd5d043dc89fc0e1c7097073e521801c0bf04f944803b89b409c9e422e3070faab4cd6738bec06bb21d8c769732968a3dec6e550f60c48f01e4edc930640862b327521690d13ec1ba5638a20825c30918a6993ca737c83b99312b598adeb1ff4ee08137036ce37c23c2dbe6b6ddb140b3d2494ad869aeaf870166ec7f97e4472587c6d663166c23c295ba384fbc7650055abf21d3419700b457469814e4fa6bf2b7ab604e3b85d0746d5554da08ff89749a3a68e4a12716b8bc815f51e9e951056559ce8e92e03422fc72e5a8f693e9a474114ceeef8d08e1a7200d4d8a746c2b5241de2db9887baf2c66fa97006fcab1196ebc468473ff84eab68bc2d5926a1ee04acc8c1717886207dd52d396abb203a47de4f6f62a264220ab0acb04a51b114e467dff489e4da2f44d5eec630ef98e5979c010c0ca8b091bf7b503c54182db2474a90328d396ddabe60525c13fbd14b5ffb7c4def091f899a40395b642f17f0c7fff586ade8870aa72de8c91315c37b9a3c7678b8caeb930afdc31c990953c06c14cf53cd7e323a5fe26d305f642ef442af6332b5860bf88f9a7b668c3b0b3d4919a7b4216f89c5452f56d4a4f4217f71c8a42ae7a45aed72aa019bcacfb8f52d1017df164cf36df59436eda0d4b8703668a1319fa9893b43da9c8c1140c20c51cdad61ac2868b1b6499dc3b84c036a01a110e4d813692257c0b9a7c1773ee96d8ae55606800980b110e052523228ee8194702e07e6c9feb11788693ad8126f226646eeb94ad2c7a2342eadf73898aff5e8459bc11e1060740b9dd0d2b5254213341b38432c149412b4b795ce3be85af00cc638025ca3b694448f7b112bf4f2eaff4c840a8e9bca75b8d086b7d926a5965295846f799528128e34f87067f4be0403db3d971d9990248982d8480729b44a9ccf5398f7f1e540c256bfd9f31c28405b66c936eb4676696f2a967b7f59ff7689bdede52ea3dfac9ebb6e744d6bb42cdacdb17a1c076690ee3893410d6d268f77780d9e38dfc5c24fc50afd97ac010954d8aff6a9cbbfa3cda991d2816933c97cc3d9183b3dd66ff79b762a2ae0a87994463485cb7947c0a20c2e4bf1bb164a0698e68c06736315a02828fdf3b29d2c4364f219ac0403d948cc2f41b13d4ba45213318427eb25e1d5d6c4ff02d3d42da42c329b1d53dc78cd81f43ec02ae79fb057d144fe3cae94339b1dd243708f2ecc5590f16253ce7b0c7fddef2de2b8ae95e989620ccc16ba298c7cba83a3b94a64aed967ad5692ec53bafc7a1c5e058f1310d5000c81d4eda425005095eac041e70569e9b40c65ac94ae74a1ab8220057ece584199854374cbef3237969f3ddb1ed649767ee8dbe0e9da286616e57f446aa1a28e8a3d5bf62d45d3046611db66f1d1de4618850fae49d96af36e51decf99321a31f663f97b5ac5619bd6f4d561786c8f28cd8bf97a88dd534f3790ace650e38c47abcd4a997558f1152e4f2d55e4fb0bb6ca4b92841343d2bef11754a882e9118ce0574a1660f60b84809f6c56394a50b2a859443b4aeb6260cb5f17d1751444c56c0969ae0b62c3130394af2e539d58ec3cda6d36af0d48d45336ade9dc61694d0e9b2ca4c4de00c29bee80895083feab3bc627474bab6b4e48638559fe001a9855763d4d97a8dbb1327c5d24e4a48cee28c0a1c4524526a436621bddee6d82a4642197f1ce4428c99afd9d582906a0662f8dd39d4ccf051d3c9adee7228a8c8b82c69b4588e7a98c33b578c7874628b664ae2468e83d3abd40945f9d47fa1084cccf7f03ae6e809dc9942a3deacd1b8778868cfe1a170e62e1265c369afe208e424d1dd2bfdbc4ad2d1d024c3ff3f03527202716a89c5e19be45c9ae4f657d868f24ac1e82abdbd3fb659a0a074634c78a90d787ce8812875f471560b434878e5b504d9d5d67cd76209d4a716185ff2e1332d92569c4cf692429c0d3a3cc74d559d464bb4d449ac156be3f6b836cfffd805038ffe59c7650c3e3b12a7de521d61ad837e205a24acd8f5781a8a975dc1b0ebf7a4aaa0cffa90debe42a958844c07d4073c74fea3e8cd5acb2bbff71f5fd84467604e1ddf87d6ca260249e5eb77c6c1f721aac99070125060b98c24e397a3ce7584491fbeaf8261a3e945f38ee5aa08a9ca5bb3b285a8480a342b23308a080a8185cd3361822405076e6c32da3bf6101d56c813664de005e29a7c2176f68f80a01107999c0a9b910c7d470a54e5c008c6842a326f952315eb806e58360c6c51ea4522f67685f824afcf3463d2e542a57af9f98dbafbd4013f99925c5e5ff8b82f90dfbd16ddc8b32f1cf712eac2c61f8b3b925ef1218e1b45ca3273b0acaae414cb6b0c034d00bc2100e6d24484d1998569e815253073f41a2a83f20ceb87c3ad8a784cc730e1e2e88a65cc3d925af1c08d9c994180788df3d4d22f6cbc33d51022e86e23d8d46eb4869fddfa8074cff0cc0da98fd56e2d650a9b666e9945da8fa41c51d391bb9a9dab03454bd8fd1f28d5469b7d82a0249819844b1aaeaa2fe17f52a0eaa898ebe08e54c903fb4278f66160525a21248ca98ec50784cbfb6fcf52b1ee2a2efb44fcd4f9e282c01951f7eab22aad9772541f468fce30e263d2a5f5173bd987d13fb4c35e718138087eda9cf87dd7fa883bfc5fa882ffd86d566fef357bb894f634f753a68fef03bc2010932b694138526951eb5d045473bdd917627518be2ff6b5f5233352ba4bb1df8d4f09a18e8fe72f006f21259438f669d832dc5781ec915208b4c433fd12a4afc0dbf31fc38dc6d97d8dc8a4b67a2d52db2feae73e89c8bbdea990eebdbc761adbf270451d82e888294635510a95e71e4b0d1fb9b2bf865c540b213fabc1a85641db91e9843185c3698db0ba1f90ba5d4fe989fbb7a8e20020113c402f6253810c219cc09a972cc705bd6b1fa6313ca81f580bc5ca5122c33d12c0e60b39223dc4e6a71b9cfd2696c89fa392e5de1904619f6e6c54d28982402b0b05382af4735ccf11657c7459f74aac0243b291df13fed4ad7d09399c4f294d1e8f21117a7dc728c3161912cb8f18b011a8c9e21051176223a57d59432c629b7160a0b8825cc26b604326609fe6d8a4c891c88451e2e7e0d62bd8edc51ae03062c75ed234db4d1bf261af53ae3e1a42a246e4daa00fd44d6ada50ad1cf557dc834d553a822b98cd8e0253655e2ee4ed3f05b9bae75f8dd92b71c379318e929a8c16c532a8756911c8c98397e7ff20a58a5775ccb9096d6a35eb8eea6f24045f4ebb9ccb2d169a28ce12106ad8b008ceec805ab2b6d2a65b5b503a3fbb6666d6710de4e737f7d126b68ba4f4231216b1723b2834faab20dca8506c25b7bb49374022c9d48359ab872caa173430fb8f05ae0208e1b6e515b32d5a0e038d21f6043caa426ca4ffdb7c7e7678e78bd34a7622547f3bfca43396b4d0c06defad626cfe8c690bb1b4df8e7013508ea3fef8fc8d29118b3af510a3171984de788b0672a1533920e6463f7741fb06e266bee7b7050f882d66885ec371b35ad94786d8ca40a70c12f01261b6fea45c899fea1a46ab50601b1157bf340c385bb3ffe3423a715f7a3180ea97917fd70ba013081e8bf74bf523bb91dbcd37776a1e74fd002922292f23ac993624ad5c142e9373308bfb994cfd950cb54edf2f5e1b24d97aa1303adbf53051b81710105831f500c6f12db8712c4c324589e657f92af69deddbb174a2e41412985af4da9701b8d67d26e59cb69b4ac7898474e2be145491a7a3459ef83d6d585d53e54236249c3405b89f6e58df05560a0389b301352459514d9d293698a2a3f28204ccdfc74aa1cc9995b919628b4e63ee91832eb1ecf5c4910330117d437063d2d650f69de7fc67e5da6d6a30d8366ac9c7587ad63c954ce6017ae3d581d3fb1ed7991a3e12c49c173b334a1528d030a0a7682b58e69d066e011992a11ecc78d830032caf852cc12d7c083ec80b0a79a51a4f3b07a17155015e5c6a1ef81a3b3be7d1dd6b6027a66d7a45fcd1a234b8e552a9966db86dd056b57fc1e5d4e749a16707e7765f0de6b01a24912886d305a79153ff10525448d7ae505df9a11311e2327afa10710e5ae75c1fc5d793e85820c68db8e2ae13f7246296b94c6c1cc8695d504198363d8071eac5b073d524911660acb2d56dd64af2b4d1efbc1dad8298a3ffd278d7fe8aba93545b6e667cdb2a4256b6641d2266c293ca51561705d597f9e3a9ad9b8ce6ad79a38b2ed76d159925fb2573455edc856deb2ec89d262c5f59079f37e3207d5bd5a6dc4753fa785c829636364601c196f2b2a601d2bfd756e569042f3b810f78e4d399eb86e5cd2f8a358a978b26eef58bd8f1939369f672718953e3e416d1eddc8a2027b2570cc3ca476a6cf7a8947f35342a337c92f007c4598300c7e0f86596479baebd26fd9d55cf279e36a288c55003a7c2199feb045942956eba18cab9d181ffe7f47e845acd4e6c6429e440ad793809ebe28a1df2351b2fe0439bef9b95f77cc910949fc576b2e1669ff540c453198bd6dd29ab9c1b76d381d09255a158b08a13ad67714ac5d03a5504b1d0749bf649162c5c3399a68917d56db4f27578a9faaf6e5bddb949256179d599bfaeebb60aafdb18a27c5a12b5f3501a627e00e5fdba35db8bd1c8759b8d648390f7cb3332c49279350cd5bdeeb26d31a2302c18b4b9318f85c3a6bd90cc6e736a51ddcd49502f6ccc6831338c262fe22df6c97c9e498cb337ec9a7813e170167808691395b22b8e60ba5dac9318a39c689d1b289d98a6805fb5bbd98ea0dfb970405a119cd86450a0da1f61990d01008b9cbaf8b2413c3c9db865c380107508c65db75270980dc36658130e859eb810134c5260a5945a08f024a86b863db203a7fd003be34b0cc5c685a906762899defd5bee74c1337dff894a0035c13d416d89f8ddc1fc2f7ce7ca4dd7eaa093db8c957ae8a636a9f95ca92ae2d2a5f6729bcd36ebc6d934738e2edbea8e20f0c2659c32bacf12808d84062a04c063f5e90773582a58777a9c0f0f2c9d3b31e2ee11e318d9c8e807ce01d81eba9b750465fb1ed8b13b412124437a4228523316ff9f4f147b53153837b3e291de61753d02eea294f00dbe05be21e99ae9eb96fa8ce1c386c4d48b01ae78021db725ff3d07cbbf8dc2cb5dbea594ec68a6265f2942e7a9076611cbc54b9a718ae7645928b0b1f6d741214dea763a478da7461ee8006e982e786f60c5b8ae4cd795e1fa32af5bc6f5cbbc7e19d795e9fa325d5fc6f5cabc7e99d72de3ba325fa78ffe6ffddf1c7da31a03c2ad64fcee17bd159a10c928ecb01cef3174420be9b1c221c27e2941d9c91e50cb5277bc901d0205ae3e610aeb8f857f65e6e77931a730bf61d3822ff9cb9f2c164642d6c3d26337a73b7ce4251dd7f4f35da51c4f30bf715f2e2807e3f2cb2b3bcc961d751fdfbdfbaf66f1f55775f7f7fcee3faef0b7e7bed79f96ffc947b8eb3dfe3709bf7bce1bbef6bdcff5e5ed7fe98def7a8dffcdc2ffdff986bf39ee713f69170b022f41c56fcdd0d49c1ee3670043c6d6f8d46b1c5898d5360fe94ff5d25c6177d50a23c0950bed2ad3fe632108b1b35518308b02246beb656be13307a4f842bf9c797d4b64a7c07fa4fa1b8ad7223bfa7e6fe2ce670b31466fb4cf7fb0183f06e1c7e24d86f12824464411ea9521738b70be0502ac1841dc39b235a7f621a52c1f8ad261508132fc319cfeda2f66ba27948b3fc98645192106548127038a812b793bc7f433b597bccaa8eb49d89e1c59ad0a4a359cd12f3faecae8bcaddbd3fc99ed35b6d95aa32a5b8df3ddab021acd43acefc92074aa297216ea19844041f6d286ee761f1c81813e43ae46f15c5f346d0f1276b40283ab650abccc24ce144f209388f78f367d08652904ff08435816048351f7d57bcde24d4b56bef84ae838e53bf7ff0497ccc695cc2ac6f82df1915f45816d5d77072ae83c320d1dcb8405412899d0881e8c6b6ad0f8dd577fc9f390a62066e8ce4c4d72899a036bc4cf312b7be0e81a5cc8e4ea83889b98d5513a52a8c78cfe99d6b3645b29db8ed06d6da7a51d29fc56ee88dc64a53e767071f482b31afffd022e4e43a7ba44d12a20681fa9e4f2cd3b39c317333445bb8bd5f16e7b30c88faf692de1dc52951c81d0b562bd9516344fefd20564c376e4501f2019a46591869b36bd3b9aaa596652305c1e80febd003f2e4299f6bc1e26607a8fa036ea837630c0d623bb6512b304df7ca2c16664effb1cc43c6618d87f781aefde66c3f556e17ef21d7e9f2ac66348d9a141b99220a94093b67ba7ffea144b8c1cd6079e4c1c434bc2c4ae7b7b6a951408db48e149a5a99d1a1017e216a3eda564c258491d3e2b940e041d3abf5f6f930c3f1f2221e634390e8fb16a70602b132dfc6614a02941852a259052e9115bdcfcdb1da6a50a02ebce2989630a211ad536abebb79de0171b9a7192761cc70d5852119dc04d928e834a17f4204426a3678221d9807c37c43f0e7870b1bbacee407ba5fa17f9b0d6989059c908017002b0c93b760b022183a6b72062d04c19fcbf296eeaf2762053084f738135c1de99f485058f7649ce14880c47e33b52d4f33b96cc8b9203b8a9f433ebb7cb3532cff4031a1aeef628b95a64abf96d94e2a0f58c426e42d7974d97f73b5041a59226bf34ae9a62743dcff35de1942390121170f5ea21cb10020e5ad578e25f71a104e06fc8241bac92fd5ec6e016590c43e978de628752d8dd095d8d84d7150e1a6d2676223b58cca40c2d864f75574eec006507978f75321c4fcb46a080c4d580150e484a8fecbc46175b5700bd3f4fe0efbe0c62db16634ddda26d4c4796818c993b0b762525597850403ae107cf223d40ada81de8692c9f5653b4b4ee3c02426dc42f048450918e98a2c6b1c6cc1455b3159fc42d0db50ab5200029c6312bc6b848829be4b2c4573b103e789108349d46d1317c87d2630f605875ae47e0c01bc0a2025ca73e178336136e02bd5d19812bab22338339dd9ac9015c36e0f5d433427a9d4fccd02097421fce38af748f1005f215bf10d776196ea06357d10e71090952617a2dd7125e1fd354af6ce00f4cf7ffaca28953ebfe52a923444025dd8b539e294f5681c1eb0a06ff3ff701d7396e08416a7bd3bbc95085beb49e0a6b2a6ee67f7c4347cec067b5197da75c2b1d75514a7df896e1d3c982503cdca60c078b195bcb6467b9c44a461b0225d04abc05199432aee92670b9ad390b7b4e4f5ec30d946ea56dcc818b8535066177d9bcd981f9503bcaca589503faaf3c5f6414a5af904e2e52fdebe2b737e5c34b0d2efd8fd898bcbab3b4597b12cb250da1adda26894af87b5fb85da1bb1f22b1ac29c12e2b8b77672a1947a324ae61961d5581dc8437d8f378cfd3e101ebf382416709c3168c012f9d34abfe9d1449adb7331ab799c430292999255865eb19b1bc10c97541b46239807b61194bcb98aef46fefa11ba215998f10441c79f602ab8ff463bfe84e7853b9635be75db1fdbf3d679ac74f2083a13decf473cc38d489d896f4b210787191764d29aea2cb4fafb37964521f92b2f9b52e8144d80f273460e78213c2487608e608269a16ec41bf4e558cb854b43ee345ea5dd0112d07ecce88823a73a027003ca2fd2d36c4bcf04155f26f1914e8067efdf0ccb32f978a7097063f6f407abd1e02d2ebf28fde7693826817382881f4b60a78a3e0137ce41ae857db111214b1ffb68a6d0475daab3615ab0ec2170213ee6f25da8516944cd8715d25f66f96c730d18c08a3c0cf5c56ef999adb2824aea96dc0bbb710f9b7c42b742ebc564f8a9ac28c92c014535df28062e8cf5356a582fc4d76697fc1b02aad8d2f0130df5c064f9c18321deba69e4c69ec8f1e0f693e4a8dc2f2d3705e0883bb64c84bbdc302ed746779d0d737908788224e7893f92dc40384dc81dee1b8a7882c64028da4c95aab7999954408258d116f45f47484a58cc6887e408040ed3f16e3015c1502734482b769bce265cfdcacb5b0cf7653204170f23f0a548d5022f676450064d8ae7a79ac691dc6ac76b537880b2e4e615ecc4a3280b80cfa5761ca085dc0af581e3ef48035c21d119f3a3e6c4253279bf1de2454b16138fad7295eff2982402bfe103c3828ce9a8325ce23e3a7869cd929e6943d898e6c74d3fcd07b8bb8e7a1330298bcf18bb08428f9146cc305e8602a7d1a528ba4d4be138ab948e746176f5adb8e6236ad128789ab024a2aa1c38b40f24e50bd7e8cc23fd4b521c794187ad78974b807326fa79a06f154394a9d6a02c865e07705bc1f2209c3ba78213c46d539024aff9f926075c87c2d13fe76c886f0da6e7e5edc7d9dccaf27fd943ba8907483ab9bc2eede17ff0eafc25f7a217c6b5b781d8397b343c4157421ac05cd395a047e2c0a681f725920515edf804f51604ab29a672ea3eeaadf15e21d4a5dbf969515f05b1ccc92af7db721351027d27bcd0e1453d42ad96b8168c5b24ab7c89426d0289844536c8a0cd114e9b88686c84143b255dcd35d3b9e47580df034ee125012e8113e74f9d71e066c2498a8b036ece83c97e45d1bccdaf1d37c50e4a2f8a239c0e8d5f46b9b0c247306184dab5761e51b564d3007189d876134d4b1e16648a907008c5a3d46cb14460773a31470b7dd8b87d1bd7f4e82c845006522f7f437e014b9c68cb66ac0d7a53a479d207f6123ffe71f0d148dbc2ff0a62b1f146754b758236e928db4ee706b740e6544dad6398414a78c5d0931096761cb08d64bdc813d70b3af6dfbb6e260aca6572ca4b4c0b82160fc48d36200d6f4b9d2081c205a6f474c055363c04461b846914d7861a55da414c6f24b4d63e96d1780b4b0bac9d50c57ac28c16c69d748519211c53d1a930ae9fca9044dd31c87af23beae8e7e0af4221c39b656d1218f5dfa744b73c493a05fb8459541b09bb17fe61a9e4612f7c7ad0203bd1c9b6e990c360d73d0832784d64d22d7993c20e1c5b5499d8204723b8ce44221a8aa4f4ec093cb6931990821e47018b5b71815342abc792383052da24307476f032b9a9b91af4b5ed0d52d19d68b6d249aa2b2e0c3054d8db332279fb774a5b440e5cccfaf088e523548244fec77d252a58a5f8a27c685ab824986e09a0b312cbec083dd3006f06415375450a7e899b949076236f0a0f80d0afbf5612c8b251734f03bc7152cd21cb1c8cdcd59f8e24a4d5e5145601105b212cae22ace25ecb6cfe0e8254499370ec202c45672e786b159d96f37739fe26696fecfa300679bd9a3c0c4794a1272cb80d2b22a9aedf71c2fe31f81839b8c3f92b501a4184bbef2eefc00cf79920cfa1326c1ec24cee464629be86411ee083205980f5078b02017fa6f6920287cb866389dc97756c2667a86e5701646df2c1c72c4599882dc88e4c6b96fc1c820253835ce3b6133d2fea125d421e96e02da0a81f702bb8db3a27dd7477167b3d5d521e4507f22ea266cb04b759627b7678ecd1da32e9c3ec038aafaa301e3986c43884a4f24272e802fc6b990f1260e7a045d657dd7ceff768422af8e843e0d52d2c487450c9f1640ccd53078143f3a96cdefa18c74d98c18500538c1d9d819a84702fe7df6942db49270187c8020675074388aa79dc12365c9ff1c1d47c6e60f5f5cd3910dc04826418769a9530934ef373c00f4a15421f92445d8a8438b5199f332c6cdb55109f234b5d02eb9a436e77e5afc8a43e17a040e90591f7c6bb573c338fff1f7875fb556de70e67f7eefe15fd79c1ae6ce71c38236359c9c602903b403c3d90678ea5b7856cf2c128efcce9ac911408bfe4b7acab7b0576859a5026040adb6a971d361f94059041972b6bbbd033e5c896f07a2a6b73b080224f65d2ad1439aefca37aaeaad82a25b947b5100fe6341ba5e6a47795bc0509875014494afe442cbf7416c260912fde94c20237e350d2c9ed952e98ee791bf37faea27c39bb9ccc6d27ffe12662e4cd8905253066cae0eb03d3a199356be3a57230c0d31281c74ec8227f566af555431ab20e83e293e758cc1c24a0b1eabd143cec396dcd9457f97f4c348128e79cef1798c8634c899bfa04644cae3aa44b7a1a7f52aa6819af8434e0db8b3d295549e4baed102dfab89082d43370f72ea4d0ac214970eb428d9e5167d0d0e4e26b42eb4f4c904b6bd7f66d02fbfd0fd66442fc700df01e56802c6f5409fa4e1219a31141a2816ff3bb6a3634527a1b4ac37e3e4ecf62b650a66a0cf17c72e56d814300a6e959b0b4c9fc216d2c553f677cdffea9695e015c757f0417b4f15dac4442e437f34d4e0b09b451f2c23ba13c58b986be35b09c8c25c59c65ba0b0ecb8f2ace962207321780d7470cd97b8cc011ecaf2f2b1737387090f9018dc9173d95da8dc4bff52a025c16fd38d613c14c8c14b9d281cddd5a90765d31d5b0085fd8747f19f158e052192f7706887df7a5609f819f8ac0a84e42d21887a5b0a2937158625dde25b8388cde6418d1c6bd687c639e75a19db516e27cf50b1cea751a341b95e510daa89db43e128bf82d151336ba81c9d3f47fdcca0d009f83fc2ec5c48b4dc46f5281bc4bef98e862939260b04f904de1c44150d57201a56a5038d2902f6df48185c248ffc891694dbfa1927622f7775cc8b70e65e45485bf993e5bbdc8d6a47a33880432727004834711ccc667a8a865ab42167ba9a9b86c6b6409b112c2229699b90bdf7de526e29534a32d10c060db00d7f01716c4e01f1638c71aa84df70895bc48944218c885aac050200589c56b283a22110002f9774fddf6b9fad3e9eaa4b727c7b384982e4f8feee96449268c8935dc822a24c0ef10dbcb00107a2f8ac56604a67eac8222eda9b3c3a4950974e14fdf1e7f81c1e0e4e1214901c4f442ce22a32411556b002a1d50a9c429c942461f8e00721983205ccf173c853fc47c0f6a6ce0402f2e9e2757c388168f8700a5d8f066f12cda1fe594474f9372eba08a63c14e5d7e1a1a877edf0cca2cbffd9085e517461b6dac978bc1d1c007ce48ab85e5004a1eb98a47f7d3f632d4ab116b5a2fb723c7f0df2191d9fca917aea854f83b74a79a82038469a108421307e042315b6d0c114cce059adc0cbd361331e4ff17f36878d5e448ecfe15d3efee3330ce429e6265440411421e8643ad74ec721e0625d4242ab2c5b62032c6e9821807b96f880f123132748c002e55ca182903f8f5cf756416a0580e5b400450bbc78ba6e4107c48919a64c9902d24073fa63ee06d6c2a028e9c2ea9324562ba28ab30e5cde3227e24cf5f114ffcf07aeabfe541f9f7a45fdb145e68f7bf5a7bfcfebcf6b99cee934312fcb74e46f4f339d6c757d98ad18cc563dda61527faa50658d76965821d47597bdaea211c2c0e45efe263f98bedb0d2584ff753db558ab3f26ea8f1f6bddb0308f4377e331a2565d3cc34ea35b66312830580b15c4fcedb7798dd1c16050629cd13caf5d773a5d7fdd26c11894562931b11646546b12db4be9c33b72e9181dcc6f20ced42b9a090ab0108112282effe9e45b06f391cb56431dccdfb8f1ccfdb8e1f2300fe3ddd0d52b6d70acd11e7bcfc9fcc9671fa527216f91eb521a1a19994fca7c5f7d6e5cdad2bbcd94b8ae7ffb0fffc8399dc229a55dea6fda888bbddb98a3fffb64e2e7d156ad737af69be7439fc41abebc3dedd99eaba03df4498cc956fea30cacd92ac6f0d7d5c80b4f17970165627458cb67743cd71c1f76a796cfe8f018c60b6b0eafebaed74a826f98d12f3d668bcc9f4f79e88eef5c9ea255d253e2baf279ba5249f60ffe48cc608179a59ef6b4cae5f96915ad223d3f7d126b2ac0b7b328f928e965ab6b04299b9324fb77fba3fbe9734aaec26ae8e7b2104fa75fafe81cb63d69b177db7d733f3aef866e763fe6675689792766ab4f733fd047c2c794fa134617561f97de53e8d182033b39be1356969018a4b8509650d11537ac4f2ad0e5bfa6c45a5767e533a86b08bc5a9e9297c5b8e1567daea1ccb156abe4b7ca8667af33fae32ca7539cad9c74d9eafa6803306e98ad2e9f2ea4abea1334e5154c6e98ad26e9a517ced550114b8a1051506b15a423b4c30a7aa18f2513d25ce7a09bd1c7ec1057ada7d35f2e1f39a9c475332fbcb945ae2bb91fd2a33aab269dfc78e5b4eaf29498f7a23a2e1e6a3eca22f1435fdf3fc8a721a7eaacaa0f5db52aa4adcb585c7eba6a554877a0b42a8a5173eaaa3f9e61ca94295c733ac5737beeab0e4d54e178ff1da26ae53d9cb9fe3a441beae335441b7a45eafae78836f4c7bdebffd1862ab121aa6ebcbf8ea88239c597a86a790f5bae63d769441b0aa412552cef3f8a36148b2caa68bc3f8d3634883daa4c4f99308f22d7953fbdbaaa3a4d74bcaa395507886da8d00361c136b4c90c5804b10d6531611bea8479f00c4c2e3ff541f95ce172c5cfcb8f921a4a6c3ccae571acdc80c92e6f88ff95296139a59c30cfdc8f90efcc6406e38532947fe36ffc861d72bd3f15621b3ae4095d7eda846de813db84c536b4e79db00d5d351163f8677072f9e99017361dbafcf489877a72f9690f93f84f963e217efc2db60af5c7cf622b10e2c74fc3d61df0c76fb2d506f1e3a74d7861df55f7fcf409a5e7a72d9521fe97f77c6d6e99921ffcb3cf7ea497fdf4c7d3e75e1f2f6743be5cc90beb924c490ec2ea83cbab56e5b44aa755315e6dfa2c726defef9e12d7cd94f4c7bf7957948b28fb21bafcd94fab94b48ae85a0c0ae661ad9d29b21d9fa93ed9ea9ac11837ac3ef48b2eac3ed46d2002ecb3af3ead9a97bf5ee1e4f2d7a10aa5672212564a9a5c7e26979f5b6240b961655d0ee2820a37ac4f2ebfcf00904831a3285bb52abccec8725ac5615cb61194d719ad425d522e33fae30f41175e52b27aaaab195ce186d96a0637acaba058e3aee4f2f5d70abaea93ad7c267ee41bd6d52ad644f798fb81847bf48bae02f94c5dc5eae333582ba6f8c31a74196bf95ceec00debea32d65240a6e3297e541191896ce529f0a66f9aa70bb3d5e5a75e7499941b6f18c98ed830c247a6113ec2178e10bb7313bada5f174c40052b2ba3497fdcccb28afef8fb835a73257440ad8afdd34adaf28fed9ef611eae287ddc3a34598ad6f0c256fd705240724d8735faeb7e7babab5bf222bfb203d836daf656574a390852ec742fd7121ffdc6d9bc27b080ed2297f8ae2f7805c1e8d4cac1fca608c432793038d0cab890a4810029c18ac16e75298efcfe7cb3fbdb46a7a9db4f50a1d109f995e57509fe9b7dceac409df6494b5d6ed668fd1cf3269df7e190ac3be3e4c7d200be899f845cf8e5a856ead32b7ee70eb6319f55034fb11fbabfe45572bfd79a9b7f55783b20febaddf41ad8ab166f6a5fd843a7fda45e7fd55fb5aebd7d8585dc866dc1a45caadf4c3e72c8bda0bc137f3c2eb462874926da213276e7c906de510a0a1823883eea18268fe5aa33af0e4a9fa17179d4ceda098aa1fd2dc5a6b10561fa348e81656c56b57883a3af7f7313a7ff99d84bc44ba874b80fdf4e74afaf30be887b6a894568573455b140ad5695578cdd5ccb97eb2ee67e68b2fee8c933434fda97cc44fb5437fcecdc3cf3f2acfcc42979b5c66d6658fd9733a76dfa1550d84f861efdf4c2213d7b9910993ebe7baaf7ca10baf9f4b5b31c61ff38165b064b1f83557819b699a175e0053e9b823a4d78f0f2d97b6ace8c28fbb1f5924a4d732bb63f4af0de991e67dafd56d88dec1fdc5fde0bc1bbae63a88f6e40eca45adde8f63cc6b34728f34dbe08efec20eba7e75cfe5778d23c7df3d57f7dc1dde943b37de38d246581bc399dda5c0852d5637ec78478b3061b75a15fb8b359b365173d22550a2b80ee899588415fd1ca8b854e652da2b2854415b4d1002a5b994fe94576f744977b5782048881bae7b28ff78e58fda1fddbee8e837ab55fef3ba67a2f4e5d36fa12697fe653f2b23d4f5d32e3a4a9f877c869f3eb77ca63e25ba945e1f7e971e4982041111ac2f045faf1c02aa4505691c06db4305a93847c0c8fd40c227f0b9e8c2efd2cf679a1553f429a5b914867a439aeb7c699b9ec14de2f236dac8f73af65a63e6a48cd2a99e42ac422946ad6e9e0467815c2b8d2dd45e366438b1d030ad94543ad288dbb48ac90ed3b856e6e4b31697808066fea15ef69a888b9d4eea78952bf722d545e45ab8a27421d6c8f7772ffc0bb639c51a303c0cb6a1f1fec4cb70273814878247c1593e05a78247712b5cf72cf8155ccaf5bf5639adaaf12ec33b07d11ffa131414a4e48ad2f2735d441711a53f1407d7c5b42f733f5c989999f9075f2dddef626bc8d04d7fa8115a4e170b0dd34a49a5238db84dcbb04ab995ae0946ed654386130b0dd34a49a5238db84dabb55e366438b1d030ad94543ad288dbb47a5dd7654386130b0dd34a49a5238db84dabd775517bd990e1c442c3b45252e948236ed36acb25a555d9fbb77ce47eb8fc4d6719f5ff64326a2f1b329c586898564a2a1d69c46d5ac54edd688b1b163f7f6666a64bbad059e17663cd76e78734e8085d487f7c66f25ce7e9cfa7cef57f0e62b5caa5552fefaff5f662eb75b14434f87fd34d447fa619fd492433fc3d75cfad51838956cf55d75eec2f64a1d34b4ba47b6a5824333cdda243bd0c7f45e99919deff226ad5e96b840c74fb2dff782aac2f3ce5be7c733ef47df1b2e8427672fbf9875e41a47b6ecb9f1e08f5c0f5e8440a194fed549e1e9feb7f11c51a1bef7f4d21d6d4a002db448935f4fd2f2b5c57601bd3d7cb0ca2eec3eb0ba40f2f305c67701f5e62d83ebcc640749d6ea0891cca010a85cb87f40917ff062317c40c1eaa3f82eea453fe2d6f51fd9eb3b4e850de2c9a52faf3a7429d0deb323ee36170caff0aa7285c7f27e3bac949ec5a3a56f305d22a67f1e7efde9528b5a1c4e9ba6c5b4b29a594525614aafb474b296b3cf34b94175f9e6d0f5d8eebff528385d230ad94543ad288dbb40cab974b0bb7a1e68730177555e122faa1a21e87aed92a512f0a653b4a7fde44d408f4677e04a557255ca74eb8ce624ce1fe9cbcb0a11f52565fd6467f620ddf2f9c388b7e7129100d6ab17c835ae80fbd01c501db9cde9f2aa13aa03b601b1aef610d2916ff739d2ee93ea443b8fe2165729d1281fb9016e13a15d23ea45a7c48b7b84e9b5cff90b28a7e48bbb8fe35563e83004ff95f2b94eddbddce31d3259d44a1508f7a79f917140a85fada1fea23f7f2827a14cfe5df5028d46fdc0f14bbf4ffcb8b1751314696a31a28cb1701b687201d4162c4181363fa4f2d270f93ed54980789796c917960d5c66579d5561f71994011c9085d7fec0f09befcf1393edbca8400d0253f04b1a6f4d2537977951efa4154f51266507f4b88aa9945fcf8fbe462e3e5e4cf20d3f3cf2c4c4bb850c6adcf28e91d203eb7b3c48ca21b723a9c941e18c48f3f2379a9b6462628fd715260903d4be1721f663c540a5d25aaad2874fea1dfea855c1692602e04efefab9bd72814e674a0b08a35f532a71363a07451d22fba9f2ae0f8f0c01743fd467a0756d001db4b927de48034e150b4c0985994102b9f7de60d89d77fc54331ab3f27ac37bd1ce227fd0d713d25cf63c10d7d75cdaeb138bcf393042070be269dd83c3fb723862e6e71e3922060e1a4f32074fe5a64ef1112fa21b773a987f2d207c1c14cf4789be78fa89277001c4fbf881e6ff34c240962f33d9e09fa389e8924d20bd2c3739b670287e72b30ba78fbd2b7f95063e1e0f8c9edf00481db9972477fd338ac110ec1134558813cfcb438466e94e14510c8c31bb141861352401e56fcef13bad0577186c18c0ad397de09d20ebff2b5557af7329efe38e3b95c5b2b2d1e1b1c7f04a4f4e707a13f5ffef47092482f88cde3f0707cbccde3f478fa47402cd6286995e9f939209fc1f15ce56aecde87e5560f6ed50f7908dd4a4a8fac874d22339324426ad2e4c5fe32ff95ce861c76434ec77bdef99a2298f1947e64f93a4fabdc6b99823ce87ec829114201cb05ce59713fe4802e7336b6573609dd7c1c1f7a90f3ecf4ec30818309faed494cdf9689f9cde9f4f7217780f9fd41a667f282e0f07c155ba08da95aea84ce4d9eaffaa3657459e8ab951fd57b69c943c283a7f3e00e2b16e56f6323585b198f2c5d425790afc2ea2bcff1292effec69557805d53954afa08b49cf44d07d8a3b175d57d15ff7f414b54a9e91f1946c46457fec190fa733875a15723f9f703c3ee357d0b5248913aac8c2d558d8e5a1569e7e044b1f57fa8b987f7d11fdf4f29848d2bfc28443494e87ebb9fcf207dd25e45d41fd713afcce1111c126da8b20307e8d8dadfeb87d2694fe788832a10b8d005d0f9975bb975202ed73dd1bd2fd8c22c3b30cafcd60fb35baa46b12c4e9c49aedf2733badeaeb3c54703ddc8fcfc49779ae418cf8f1f3788de5339c8ea7c4882a2e04f12bd9ca85805efbfc9c8efdbaa2459ee27a35df268e3ffd08e8000e4eda4537b352a946158af4f18ebec4fd286596d3e176b8287ef4c8f615cd6a55585b37fb7933af95f44f7f9c7de9c3fe69b52a723a2d8413835ac50ce2d0955e723fb828fae3763c4e07099df721a72385fae3dee48f332704df922783803c257faab63195acfeb8e4c956176aac6d8a56953ecbb26c487ba27da1398935a5e7d758b1c6c6f36b5ec41a15c7712a2c2c34702c34cc9e91e625959560c4187e19c6f77d3a863e1bb6af7c225b251da92ec9a1d28b9d79ccd27cc90660a88154483d9acaf6954334563e99b1b2a54ae9601b19462af5998ed923c150d9786d48273186bf095de41040bf7ff2c4187e98394fcfe95c7f4d6f04e4291e620c61c5d26cb8c041d0246a55d73d3f2ddaa2c3aa6855293cadcc1eaf44ad7a79fe1aa555369ebf3a816d3a0ce601a5b6620d8de7af65c41a1b5e870fbb1a0dd4d7e50be6c1eff2b307c8677ae80bb669339847186cd345a3d9a379b3c7bd1ed4ebe0855d0d2facdcf2c5e59696966f696929954a8f75b468c8676690a7cc609b06438f8179f017459f29f286ae67c66577ee876b34ac5f5a647a3e755d7cb1232836d81113620c7f0e007cd8dd1ce1e9e6702fc76bbcd1a061f9bed811141b76448435c775bc5abc37fc8bc5e1319bc3cf209fa92d4f81816d68518f816d668f0c0aba60b8fc9a0d39d8512bc6f0e3604737d8910d966f6d393f2d8a79fed9c3362332babbe3c31af3618f9860c3e8498c690f15a47ffef4706acb53cc4fc9e8424ea775b2377ef4dd871a2bf4d59462637f5d03ddee23c8c386f4d6e0859c0b2e7f8c0d790c2800b02173c1c52631bb151b7e3a6cc863dcd07d1532176ee861cdc289068d157636fc70581c06e3c3d8f0860d19c8b3d686150597ffed0a072749117c051d6cf174061bc1219fe19fad56752f8317ba17ce2897b71bcea1397462f952e949fe9abf8a7fc90b6da8bc7f69f42f5ff242eca5e72baf7d86945e7e897bf7422f0d51dff4a55fb161fbdccc0ba29abc2fbd9742d37703187dc91aa0e49dfc4b967bee257343b8872abd7ffd95971655faece59b50252f085f8289a12bbf7a6f0a4def521abd7ccedb589df4fc4f1fb921465ff2868cbe7a43485f7a4ba47deec82309c1f2a5975c10242fdaf08af85579712fc434ed55fc4323d757bef45ac9ae583ebdc6f9e041b4cf6d79b747b48fcce98fb5525df992e62f7da5f4a6ea85d24bfe37bdb98eafb4d0794ef65bfd92dd5ed3deb91fdb9545e90a2a793d26aff45eb8421afd8acac8aefc157465b1b242f24c35cb3821580a80953e72a5afb179610a2b7084f42b2b1ef7a4caf259f6256eb4a27d8d8d15723a26bb79d1b5cfd5bcb07deeca9b4ca4151b6a5fe3472b2b9e127ceb733ea42404cb973efb9b0ea2547a95cfc2ec2b70e496eaca575bb2ccf950da42ed51cf05c104eb86dd6b1e91f6b999ca77e1919ad9ed6f9ce55136d480cfedbe860d35f073bb77e9a497d39339021cb92d1e927ee63c23ed032651822f0bcb97389d5289d3e1a2e0e78038263d33438b9b22e7723b97399fcb1e723f97392c389ecb5c1597bf249d0ba24befb6f4261b3231744daf3911ab50b90b5d0f3b6462e8fa102b971453e959fea6399feb2e7027aab8f2434e67c593a5ef3ec618cfbffb2cb342f0657913cb3b17445f966f6e081a97e52327c40d97e5e74f9f5248a47d2ecb77b3c70b1dcb87b36756f1d24ae77ed05e7a2ba5952f712b76f3221b3d69a514592c5fd288e3a06baa2c966fc844ebf6b46ae5f9671573e8aef4af7857d0e5ef7eb6cfa54537f4a001e89851b78d32a12b79a96425d03d577bcd4bda6b614684e9435a74574cbf62434e4709293c62b2a51ffd8fd00a82ee8a8d4254ac6ee48868b095949e7be60ee0607b252f945763f15c7e12a733120ae5edd76c987944bae762f51dac5c1492d3a176356d137fd9d5f48cb418b0d859814df8932a4cb102fba9169df4dc579ccef515b7c3e95c26fd985a8c78c64f50a1f5344f6416e0306e63739517d202aa76da5c5b000d119ef88837e257042e7aece084866609344aa019836688460c9a3068c0a0714293049a2f68bca061d12081a60b1a2e689ad01c81660b1a2d6884688c40138b401389404313b3a08943a0894b68a4bcfe3e687ad0f040b343ac89b1a64a2d8c8b72d10b89dc28a794b17644e4e6f2baa2fb8e90f27992eb1da2ce01e844b94600e4eb8f7754db4412f9b5367393fb31251122a6db1e4a324a3e102b74e147f3f94c8d29fe562263fc4eb27e5ab4b0b81f06851695b8ee90d8dfa7615be8fa3f4a9927542ce8e85850c58d5a2889e2ce70a3162cc8b91a496a5293567be684884778e98f69ff93347b7ad9b8edf23e9fc93c212a5ef4ebd37ef88e472fc4fdf2be91cdec8d8747b03fbd705e586bd785a724f886ecdc0fcd8a38139d977c0ff806f489c8dcaa13897a63d6b93e368702923d11112ce288079e20d41242420ba64c01a3a72ea65d7ffccdcc5648e11544611d66667e724d199a585e9ea200f29aa2649df698752eff85822eac52b06b0b0112b8f808d31b3bcb2168f1a3edfbf2344030333f33c7ee51f4628ce1d8ff81dad3392a888713bfff08c8ccdf9da798055d28d369372ea10192dbf510483c84610b1e10a73e00fe081861c24cca741d297da82b32af3f9540ee8e1179bc040745d71f236a95733ef826a5941e9226a21720ce1130be7b711d493f06a567fae75f2eb116060523c25aab9e9d5685d9cf2a670a0c8ac65e5d1da1ab74c72914daea8f7d725af53e356872c3ba3add2804832eae1531c5ef3dd8919eed541fba84eeaf4fc65383286e587dbce850393c1c1411fcdd1f0123a8e3c3ce860b1ca06edc8881d93e02d1452db810e55e2f7da0ef1e6f3a2c2a880e1d7f24d6a8acba4cfb0ca895fd5022da9289403cc56f848ca742ea29992eb8f81a3e8cac2e7878d153357847441abc668e18f6fc31af727cc83b38498234f7700fff30cb53ccfa16b35a3c3ee41e1e1e07f14f0d5ee6238583727cc85f77a71e158486ff9e06efc3deb9dfa7be881b5960c1c5191db8e9baf279cad137aec332e816a6b6ea0d7ef5a59ec1d4530bf39a6f3a9c742af70697abca928b15697179a812b557753cc575259bd0fdb09ad5ead5474f05f54f0771f13a3e6c56173478525a4aebf3e4caa57081f2cf81722f8920fd393c9ceef114ffce659f9dd057a1efecf0741e8cf1503722d8ed3dded3ef3f393c67798a3fec9e8fee2d67b5767ce83d5decf03cc87f7478522ebf4bf11417df872ea55feec8d54ac7a382ecf8fe1d5eb6e2a7c1d61bb6ae8a2882411dcfa00e0f270911116ce257eda156b3d256ea75a41ee51f411abead24a3dbd1afc343611f411d8ff20330587d401a3e65852effe5039fbaf2eab3923aacf4b13db2c7a71766abd6a1e1d04d98cdd626fd555675d25ff5a126e8fca7a7c35f837e785d75d5dfe571ad5d77f9c414ffe585f4339d6c95e5f4c7d9aa55f329f7634e59755809ddcab7967758cb53540960700c8a18f34322745e97241285ee8c41d94a069da482d32b863ce54d889fbfd6433ee33d9e6a42543992f8b950ff78ea3a9266798fcfb416f13a15ccccccd775790fb14ddcbc8ceb3e867b715d8ba2f08fe889525a355b95bdbb942c7dc4cfcc31e121794fac99de035f724737acd79bb8941e128e095dffe94ca2a7647cc65d1053fe56dce0fae5794f8c994237bd63997da1c556f504d2de9c12084fc5bfe91b4fb9941e6dcd8bfd7d71ca8f34baf4c9056e311016cc40453aad727707e22a1888b170df02e6bb3b6250140abb4a0304f370adb7cf6796f054fc84966020243a279064b22e31753520b4f77aff86c0c55ef3c83d3ac518ea037f28e48e7a38e262d4bbc13c207cc6085a6452cf673e1723a6fc8b300fa4f72f6ee0125c7fe6b9fea10ed7851053de2a7752252d81817c8673aebf7314750a206efa7df94d7fd40b7f34f286ccc79e91d4df2c4ea7fc6fd8bbe1ec9dfb81d39f7bbc5a02a8f37af8020b2f70e77341548e3dba6e7ae87f69536bca4d0764106158bcfc4948159e769c5e540e44fc3c8c48d41ae38bb845f81291108f10852ae9143f2f85322b1c6b46cc346c43e4866d4e3db00d10a70e8ddcf9da28728f461e733ff88698ea375930a6fa572c113155d33f00991c689887efc03c72d011535d832341304001e80d8b10a22fe7a5624ceace1e88f8f313c08882d232ecd3116b0c1063fc09808aa758467f77768e3b6988314dc39d8de3ce86b9f3468ce91b777a31a6bd3bdbdef931a6e70c77b60c77dab8f3e54e548c69d49d5de3ce76b9f37467cb9d2c77368d3bdb7467afdc59ba53e5ceee4ed29da33bb93b7f8858b3c9edce3740acd15cbbf30b106bb2f621bbf309106bb007825a8e292c887aafd94da5ca193bf8dd9d7e5775afce2edd83429a30871844236f7f0e5da8e2865dad414d571f7b8d75388a59c488feda88fe9a463142c8114b44260aba110a02fa5159f1693242f20a9bbc9ae2b669c55bb1cf6d7739842e7beda79cd8746fbb2612ea0021d33362091df6d773930e7b214638c05d5e9595bca9b179a1e27936aee637afe4bcde87088f607139cca2e63b6a6616353dd401b4cfbef4a3efbf99a62fd9ef565efbd2871fc1926cdef1549354e4f59d255d6e9bee6364653cd5dfdb67af3d38f2ab87fe569c136dffc5a403e2ca824864722beda1533da77723842ee415af7ce6c6bdee89916aa04598b077d86607276ed4220b2b68ad539cc26d99fe9a46a1016211d05f1b1132d0cf6df6e9e1d9d171285a20bfec01b1a7325eed374d067546c49a795bca84b1c5328e19e1a9feda75d3e3d575822e9469191153fd5d7b87fa68dfec1569e72b2f4b95f438e54c826f9c32454a5ba4af47b7c2cec8594288386034b20c569f21fda8e51d10555c7c06441b99a11bbf886893438c3f44dc2201444495f6f1083db4582031c5291f377eb4e1863a00e0cf43b4f9004415fdf8aa680373038f68f3c9c8b0cd02567228d1b08d034a3bec605a29a974dca60dc1c30035142086003b8400c00074049102e2fb21870f34fcc0d1038c006e80deb537efa3070f3bd8d404806646a5430e14883538c809c49a1b5c02b1c68626126b6448f647df028cf8d8c6013b16c04e5c7fce08305c3f630bd7b9701d0a05e2e72e86eb5db8fe44c49a0910c9d98010fe8010f68010864208eb08e10e08e12784300784708e10764208372184372044c81421631022062167080983103008f9829022215e10d205215c106286902d08d182902c089122840242262044024288743b46fa88265bcca859c83ad071bca177e3939cbb3dd1850c1423ab98fadb6a7fd2eba1bf662ec698150a7e542c4fbed085f272f49978e3b3908eee71a933bde3293be5ed9deef176fe9d9e3f5fc777834ccd9d9fd2e63409c9a22e943e130bdd898c18df079ee99df83f98ec20438e938d8e06779b71b090a7bc2fb390632ce721df7aa7777676e8f7bfb050d8d1975ab1c634cdf2fdf9f3c36f7e28333fa4f91163300feddd21e5d5e6e6716a58c7f24217d6ac0bddc7568d8ab8b06d9c195d28b9f8d794d116ff7eaca17cf5dc3ed6c8db4fb79084940108c0fcd086f9616a7e686ff8b3edc4301719caacc3b4a04253b3d08535f6a9bbefda1dbfff7c8d86f69fb652bbd3a99f664ae9c26ada64cf7c7c8a852e947ee34b96ed9347885fbcf1532a16ea4fd3a69d3fc49b8a31f27a1f217efefd7dfb76da62ed68d4d8e5d4c24243a5c36aec1fcf49fc8ac59a6879c8090235b7911281de1ca5e4d6411944a0e665308107f44091192d704e199cb14304bae51548d1a4c76d474617d6eb5894d113b380a2c8073f40c28a43a0c250e50e60418a20904f308515ec801af56227073ba0564310031f50c3a6e8fc805ac65a01111859452bf801e3175bf08005e2ccd77e7a38dc8412290c8138466417787446000610aa080f271ee10b21fc803846a6099ee001e51b6111081181f3350f276eb172b202718ccc0d3c31044acf088b000545e0f46aebc0de28725fb4aa08023d878c24ac3282c0921255c49cf2350f87050738009ad2eb1570a00a41a0467d6a11c50a3ca06fd2721725c8e207d4263361074be0e9335a20e5920114963b918220507ab175a0cd9182a10929fc806e230eef20890d7c1c490fc220043e818c2da480054a29c690041f1b4820e4036a9937c76c8e8c0085152a00a29bb45ba4a0758bb863512404360cc6a0420764a2171c810586b12a0308d4366f8edb444110a0a003fa658322b0b60c9b828b1614cc0872dbc598e6e104505aa0b43faeccfd6ffca6d9d6772b6d36062b08c4916fa48f00c60e9884fe11f0dd5e9fd921dcdeb8db21d7e55e1883accc7747c01b1f82044f9932e58ceb1f6ffd21642e127e959097bdf0885b445e0cf3bafeda8c2e24c23f5e0d8fdc0806143968816e99b98842127e368e9bafacd0c10ee836b654a18cd5c6590e42142418913a15c9f122d54045139dd65151468e10682416c10734b50eac7538dd812866e0031aa9418acce53f820a227150452658c93f0252323a9c192b382146108863849ae1840e185b0723db921c7ac5395e50be60c510e896f90945a0a207e4a9410f784a2b37b0420a4341850f56dcc40b4144a0c632061338b0a3e52444b42a028d9058ac1ca121d0480b904c17bce0b9e1053a3510c2c107680c3d5c05922ea4806ef9ce9c110222fec0145790c24a5010460fa8799bb43260884111a8ddd8a495f9820b76400d660c1c4801351c9bb4cc0127a8f80169d8a4652facd00316a8e5d8a4c5895da4800745a0116c0b2130b60edfe7d2851236b0021d25b9b0c40a1d9039c0812444200b79210a0bd4563669e509400006a1990329a8d07117aca8e8911e5802185a330c245802cbc3f8622504ca2b78410911a8d5d8a47527cef8821098c30b64d86007d45e3669a3113600258c20506ac18a305aa026c326ad8e9e2d40e101b5193669556088b1036abf491b992061890ea8d94d5a9c96c2075410c93732996c60054acf2345cf5b99a9410740cdb4491bb5c0c2141e9009597062288ad1832752980a1f20e1895d48010222507391570b8c12b0686cd246244001053aa0c6b249cb5148510204462f80208221904730850da4809acbf4a28a275aa0db78351612ab659316c785f08215886344be111e41d801a597041504b3774f3ccec0428fcb26ad119910d400a8066a93b6f3546b2f462811185b071b9be33841928f2a42fe4a7a46e4db708103214c31d2790b3ab951193862a3f0c89501c3063f60d4b885858609ab345e537a9fb86524ad8f2f58d002ddf60d9adf92a1dabc6aad9886b9c78cfba16ddc36dabaad5e39e7bcae6b4ed94e64683041430599a1667aa820f3faf947c023357f049c81f443595dfc69c7f044726368128d3006263c1c1546c802062bd0579e73397dcfbd90e35100fd498b321e9e8c0a8f9a93fe34564bc7065ab821c7e33f57905c5ca92435eaa6e6959736247289986ec973daf395afae20ffccae3c733f5cc7571eaa33755c564d51ca75b9f9c1adc9f426a7513a1d8da50df5573928628d3fc78f77d22a74f5475ae400ca75b9710919ababc98dc5d0dd70a3164390e24aee07beb44917723a3e425a545b2eb3681acb6b2cb689b4c8bb27fc3c69b28330e8600b28f565e92577457fdc4f776c1fb98784e6441bd2582f9f52a10b35d650ab22732ce78674620db7e3333132127eddc3994257f2b29e8c87a8d33ecc7880b4e75356ee07ea00f7c12f4200dfc36b73b3f90124c78727a45f0038be87a50fdaeb7bb03d3e72406cbc9c21040c7171d1c7f1416cdec73787f22038bce8d48b9e0ae2c35bc2631d4f71f7609deff1d3faf8d67abb382722823daebd5e00763eb538de87ed072dfd1eac0f203938bce8a9d3c9535c9c2887f20fd26ff341707c8f770ee5de016c6c6882f4f0687eeb02fc1e3ea401225edef5d3ebf15b171d7d1f7f5f001f462124784a0e7d1f36367ff5b87a5c386c70e0b0e971e1f81bbf787870d83c0670f05c38dea6878da0a6450e557af9fe6d753ae7891e60bf4e83f34b1648bfb44414e1e0fc1e96091ebec7538b9324c80eefc3c3c979c207485f87411fbf8387c2d161903ecabf99481284070fe5cfc347b0c73381720f75801dfefa203c7c8fdfc1c34912643e0f1e8e8f9f8f43bf6f9cda084ecb1b123a24e2186e058e5c24289c180462a0c763e0fa08321832bdbc1e9efbb011ecc10ac07a8fa7f8411b3df5f2d7da58c66151ee311050c6135331c5cf69ac8c27d674a49741f1f42f363cb9cfe5df6ce8407e3b2ff432ba1b723a9c08a2947bba985c7ecd863d659e9018739a2dbe517a51cad55e45c5ce21273aedc33934837ac2c0572e763eb1b30706b48886a1cb78464fd2581915340c1a2bebc978329e1ba730eae650abe493fe41fc380251d54042029fbd96da70e8325983fb91f1cac70521fbe3aa835173cc26ad9ac0690a4dd649aaa8509410d7044e9767eaaf3fc57553870480dfbac4ddc10551afd38d67934ef5c70809d5c00de14faa30c506aecf6fd6c00521aff4785c0f73cdebbae875752aa5ebba2e138d8ba5e5e472d540c9ebf2be2ebee20146d7730b5d19a193a500e41f61c26eb52a3cc257dc24e4f5f827a78b3d61b81ed1bd7ceac523223b758f57a4f2a917d61b63d81ecd27d33de9da03e28615f401d13282e5000944d6939c44f020405ea6f530448c70009020ed1eff12a30382006edabed04fdbb69046a3928a4aa9bbe9954d2bd9d89f4a47c2c2caf5eaee4cfed65d7f94e3cfe7ec59caa742edb0a7df9c5737fbf549c6ba810e7b3abd8725e2f353ef88fe9688cfd11bc25fa43fa72fa5a43f04fd21d25dba74b9c4115da4c8123102d19f3b4b59c2e3f3934e7aec01e9cf19c4a1e3672574471469d57b46d41357618a1b7655722a70cceb9d1813b32ccb34996d18635cf6da63367b0d7b29b11fe2abc5c22398f56e5c6216fb2cf39b6146e8427afbab4a7ef6fd545eb699a59c5ef4ac2f3184bc7086696b062f1b41b7b175b56d46b077b6cd43d2ce0991dd6de37e283df791d37efb8e42dbe12cf763f3a4a665b5d6229dd9215824d5da5114217943b2fa1ca69130ae6295ab1857b9ef2886906436ebcc86a82bdccfec4905c89e1476efdca9691e27e5d6a4d75e88ec4993d33614f6f3b9d6e928bcdee1be5432914cdc66e2368ee33813c7fdb06ddbc6d520ccf2cdb22ccb305247c13cb6af5cbc73b4d9f92b96462d47e59f78b07b2d2c22c3ea0dd9be88f7b6795af69cb7bdf6dc57deb8a97d9d510b8bf8dd5ef350d94bc136da4feec33874491ef733b60ea4efac6c1d485e38475e5844d64a5b0a9d9662dbb66ddbb4cc4e5a5b0ae6d13a2dc59c3beebde3dc6b9c872aa27ff444f48fbc2357b361bd5a6d29e66450e36d62cd94658b168efbb87135ebda69ff9b177e9a17769a97fd66c3ee1ec1d19edb38edb92297e6647648f746ae6643bf5bd7b0b637a4b7edabd66eb5aa699aa669b5ebeac6699aa6695af76191c97905e8ef7e0b99be9c82fbf0e338dfbccd0b354905b7711f4a9fbbb53cc56d9ef6244e88ecd611f7c3ca8fe4149aa6fd55d4aaeb35ced660b57afb6cfb4cdb3e2bd26d8790de08f77187fbbeceb86191ce1bd24f3201db642ca6df4857d1d5b66ddbb6cd2311e162b7d5b86d2fa38ac66f5e3fe9fbb7cc1382a4691e8af4f5394df3c220b6d75e7be63ed35ecbbe7e78155dee57565a5ef38668df6ddfe2f984dfc5fe62dd9d81c753f2b18fce65d9bb7059cb6f3c33783c32783c363c9e178f07e585df0d99e7dba786e7e29d644b777777d7564ec13cb6d7b878abd57ea34fc3aabcc996fec65756b46dc37efb70c33813b04dc87773d734edd3344f46a6b6d69a96794348bf71912b006b1aa900dc76493c77f350d9d7dfbe18d49209bf2ab5afbfd98d4544e66b6cacefe867dc0fdc0fd9304e6e925bde0a7fab1f7e403656c9aa5819bf4df2dcca7961058e5cede9cb1d69028da49148a42791fea6b5ad3ee6f2b38fa4d1f5b2553bd204237bf1367a29658cbe7de55eb3e15fed43edeb37961db99a8d37b3d204d5aedce9d57e6198136851475763e518a35f6bad5e8861d833867533e6511b663793f5b11a6332ccda10bbd9e3d0615aadf5637fd5d6af3c377e4f587d6e7cea85ddc5e4cf8d5e78fafaf2ef5524a7903bd204f32a8a51ba113ea2b5568616613a9e646e058edcf83b86f07fd87c2468c4e2cfd7a2c57efe85611876d50b0a9dfc2b721f5b24d87a4af815f231c61d61f490a01f32f6f3077dfe19c6c73c24aa87c49fc23c6f9d8a3097844283868ccfd7f33ca79d4e87575dd4837944e1444617468d5df0cc4d2c42cc8751ca8e7f404cb111fc5dfe3065633fd4c12aefc31da80f65fe084f35cc87f232cbe9e96b27cb725bac0ecf6273781b968747599ab7b6e63d1b807fabfa183bf337accdefb03efe6469dc1edf836dba063d3a48731f36c7093a65ca1430c90eefc412abd50af4f15d030b1c71e33d6c8e7cd46b3cd8be3bd84885cbcf83e52462e4b1c31b11051b1b63006878a021e3949a51e990c3cdc903b5de4ed6c45fe9fb7b287d732b511a4af7f7601b7602f3e82f7dabb48a8a4aa9546ace86e5f1285bc3e360bdbfc1dab7c1fecbd81b7fb2a50b6393e0bff1d64134a2dddbb338bc66ed0dffd686bf6165d86f589967dbd73b11812f0fab44bdffd62ad1ddffd83a88333fe2cd114d8438638198ea3f9d3e461b2398477ff7279b848d3fbd76c3f2e55517615c7e8d8cd50d1b6f0d3646cfc6f85f91eefeff883cdc388d11392ebff55aa9688168e30879b22af741e92539fde9393bc19ceaa9bb274bbadbc98e6e4cff0ecb2d4fb59493e5eec96e27abdd1b9697c4981e02f3e8bfa27d6410832a624c7f140f3062fbfe23b8e755aca177d5d3375e61ab58e3b77938e9c0382eff68f6b5f16a5e7e1289c66592a4279b9d2c56af46da5a2c009ec5ea781bf67b6b73bc6769f8b7a93fd9eb4a9b9304070e1c7f7a98d768e080c101009b4347e4151c0d73f24e765e231ac6f2aabf1c29af56da4ed66f0fb661326e5806428ce94759f62c57d15fbfb5fc02e6d16fc3b20b624cff5bee8931fd37fd0f88fd46ac7cada79bf90cd6c6cb6051fff6e54fb66f8b45e2f22c2e2f6d8efc272a58e38ff0191b7686d7505686d7a49dd286fd21a61c74b10dbad81851b686cd79e2c19c273a30461b42120e21a74388812ea74a633bf1ca53fd2d96759aa3f019dea1f1d7fb40e3e7df388d7957421e8219dc0d3b885d109a6ec82b561284db8ff10fffdc49f9074ce2ac6ac48f707ec464848ff496431632baf86cea5b7d69e9b37368f6c253479a713fa8c71ceed099faabd2a39467388bf37975b06e18aa694d1dac1b866a5a5c743120dc59c86784b07f0dbfb4afd13e0c0484cf704b889f4823af6812b1c4265fa001e50953d1ca9d25ed082a57b339da76d98e49ede8765952378a52b9806d97e5a81997ddae29da76596df32192f964fef3d1b6e8c26ddb2e9b71db65b1ab852cd8eb6a96756aedbad3666b502fcad6e1f26990da78b57ad9f9e4874ab9daa7bf7ecdf6159deaedb27ee515bab05bd92edb4d4e4cae3098341adbd54a6e7f6371fb3b161aa69552504ccdf937fafca13b3d8d5db43927c7ad5f5ae8e5f2133a9fe9d5f0e92b30eec79c1763973639af11542368b409794135804a3f3eede35dae115423883b32712c56ea54dcb07dfc05be8a35d76771fa419783db3a34601d18b8e084824e040ec5edfef6f1994e081018511711b51422ea85cdba3d74fb312774e176755805330cec047f8049908118f33ed33e9eeaafb5ebfe0bed53c6cf1480fa111063dcefb47e35530b75f357b81fd393427c8626488845744f1d15d72d69c461955e9c57d7214af6d5af7ed957bf2fa3347657dd3a5385a9ad929f4cdcbe379d5eae8a7c7987f14f8686ede53a7d30329f7718942e94d565602afd2a8ccdc7f89a96030d4cb6c3add62ffd7abdc651aeda0793d1843460f5258671d3a5cfa71ed3af7ef5cbbefa7dd9f5d5efcb64108b18f1e29e97638dff9cf463abdc59b2f45833bf3bfd27933d6d42d7f5c73fb293a7ac8c9cd365ac914f1f7bda840e63a744e03f9d4e3b76308ffe1a595816a5c8ecb89d05926130a628ddc47d7ced24ef46b2f4b7eda25ba49b8df7229d68768c82fc8e3eac81e5951e4d5472d62fa76ddc0f29a973365ee9339a68b36ca1dc228d663f8b9d2427659f3a9ea2e4a7af8db83bc5d3a9b36cca23975cb1e2b5cb32ee4cfcbf9ea95dcf7c95beff8c3620f3601b1f9847bfbf8c35d8fb47aea728a5cb684d80fc8e608cb10c1b6cea8651e8a7375bca0f23189d757f20db541fd886c7c03cba8770fbf2c524ddbe8e816de4f7cb78a76472a55f0a86ae6fb38dbfa44df0661efc9a5330749179f0af7afe2fa65ce975e3deec848b6124bbfcb0d69ade76d0c9c93f579b9b0cc7187eba85ae5f8bd734c2f5816ff8a76e71171649639aae9512263f6a2a1c6fdd283e4bb62e63cd28d67031d6c86c2a5a295bc16e7ccdb4551a94e56a7171d9debd62d98dcffcf54f9da73a66d6501bcb44540d9727f9405ba95be5d24d0fad42b3038d773239c86873f4edf82efa7ddcc33cdd6a9661a79793463718326868eaae05300f29b596f4da8058402463c4ae95b6d24a8b06a11a9c6d7d8a41a10beb8c7282d23d7112e3697e586f0e77beb6cd39bd907f4a98c30dab939b0ee555d17bd9198bc024eed59563ec317bf7c9fd70cf98def8d508dd56311b9e2ed6dd35b517f66fd8966d9987655810a77bbd3781eb62ebce19398149e4ac5262b337ee0733ed239422a13ce86afd1963a67b7336b3179d26babb7bf1bfa72572ef52a2459850e2a083c3b81fd86ba42c8a38b924ab17a8f4ecb49551ce3a453310000000003314000030140c0805a3e17034ce4361f80114800d8ca0487862a187518e73c8204308200000000000000004186103d3d44d6e8ecc157b1f6733c908465f38b3fc41166c16882262db3163dc0891066c832210e6233563617f41255aa2b0d5d229c1fe822254ab14765b74308ca90bac9da240a0d0fe0248abff883e46ecb3120e558205d98da463c40406d48d7a3f1687f834a920a9313f98680d768191e844bf61285a41fc2c1804221978f41a34c067b8454a8b902c5f2861cb42cd0f466206f3f1a842cf4c10045ee0393bbef41a5e7b0ef2af7682d54512354fd4e887c308cec93bc0f6b707949f39e79883ac0ce4e8db46ad23fe4f429b1787a8a87473e640f30645b8bd5d9b2a8e2959620332ba28d6a0425c53f3e83810088ac77ac3bdb946a211c995baff008b4e1ea949332463143712bcd0a65b790465ec880ce6b7f3b3d4ec75d9c0e040bfe6a6b5fdadcfd5dbebbd788e12fa2a18fc030669f1b66dd5cc0d8e05a417181a3d00115f459161e1a54a0b60a17559efa4e1d4dc4874fc12cc3839827365567cd1d00098be731c4e2c7e1c39738f40a7e9466730bb0c735729d7261594acf45bc1846bf600744b061a49ac29a550823b1b772b3c7421477278c43bd26e2e0db0b0e17dd0d21a2fc57fbd56e47912e3e9a7a02f2c0800b087357b5c8e9a22b265cb7df0828bf2550d00b41840293ffacb1ba2ac88d579ea28e97a26447caefd3117e7996b771717a215fea681dfd300d65b2b1b7fd6eacc9d1f9a34bdc181bffbe7cf801ccee3ee53c7d897ece1d1bed13ce36e74210ebf93e0c99223c05cfc4ecb399884aad5d364b658ebef80addadd1de240a33dd37ee31c81fd8b0ba436c699f4146b16369ce015b2f12d79b010bf6abf86671750d597c5b2e57d2df67565678919d38cfc007123a0c87589055db388c220d879c0c8d0fd3a69678ae748621f45f2b6fe1e90096615b5b6c6f1c3731d157d65d0a097707a2d113f07df2df665f3565a282e1fdec45e2def841a50c0d57882dc99b4820a41258d8e88233058aa9b491f23520d1de9cecdae381acd6e441a2b7aed0ff40811499f05046864d49b8040c6a70260420137c32017b63785a419a17b8e4e2249173948f6c5640e191215a66ef34d7617c4bbaf2b3497a988d67779e22dd2f241d17fbe7d12f412aabac00615c04ab4f40dbf35cc55478d352b5751cf717c55fe71a95aac50d6475592b90e4a326af6a59644987338fb45422380b74f9a8359c7adb2f40bdf12953d7f8a757d41b3589ceceeaca57a646de6b5e6384fe1d466baf00adbb2cad1a0d780f8a9920efa690fd97911c515771a4923f16fe89c9d63ea56317541667856143d45cb4760129176284eb3882bac16da1e03643ca6d29c383e76d815db0660f350697cfd706d002e190bf91440ee4c9ce6ba205c6569225670ee21699f1bd71a372dce4896db19d469266c7335a256f2b42e6f40348667ad5e44e1c1dec4df2e88d4a4f8ea72235202371758399b6b064a529649dc2bcaa786a47d4d5245759a0793d8ab9a9d41885883890946be4d5a969b22e66e469cfc0a31ede2e10024d76e76ecdab9ec6fb09c8349c7d04e3c5afc5b70d55ab4af3790da88534d63dc98ae6f82da766b2d036cf11a52a201e105a6c8803f4a92e7395f06925f6972f3de9102da31b9a0a1906082b2a9ca8498ed7beaa408ac368422d6a479ffae7456426a289e5ea893c29fac72f48618dd1e62bc900651ca7798f52e68ece8fa4154056283ca4812378817c4a8f9e4165399ea84b43e7c936e2b1b90fb1d6eb9ddf63105005a3d630d1e05d492106b903a4db2f1e084d1b710852370f4965ed474f1af26c3d3848ce6bf546ddd3fed979fc5b79242c14d7eb1b8a0a3d41d3a1ec90869251e700996dc59ed1ca9c8f1ed89f1f32bd0e06e4c8d78c6152fc9c30ccef67fd1b91216ef736e9a96f9194c7add5850dc135577088482a3da01d4ce171071d66853be2f618df6556e564c457321d0d9cb7a1a1df45e17109912487c77c2cfde1b8d6e30c38b7cf91204221a830c5553dfe0ccb3b0ac694ba1b358b5cb8123f0ad667856bcf1608f60c09a498c82d6ef2483f0d3c3cbd7dfbaa3bb9920e6241a2f4a876a89466560ca22ab23453e9007f5f563895f87b754ab0ea67abcc48615febc45aa2b70773852d1910272495c2f864337164b730bb2bfcfb2fec75e328a8ed0bc7a406b806c3cae8c3668a923384a0cf546d739b0d7d1c725be6ccf874b3829aa8b72cdfd71364eb22771c90463757cd0002c8fc1a6338903898add4f9d8ddfe17b635878c954e81c181f37c19f2379df485c6b67e854e8a2c7c8a26794596bb086831ab2740070598fd6daf1b4981544e2bda9991b75b7a3108789955b6c8f73f4fef38225d458341d78db0d52c0400569f0782a3bba26b65aa982c69e605335e6df86e5f2b151acff77d6a2a9706db2408fedb1d4c2cdcd0a0b46780fc9ddfb95c3d664a1d32847c83f45bb5dcf23884d8a522cba0d18ca9c269954c4bbade7acc54b06fb11ff2bd7e1f8197277341de2cc3a8b384c0145e357dc06387ac67c89effc9068037630bb68d41ef56b5ed79d73111c811d8a7c673cbcc494a38f8be05d2badab8b10e99108acf759b44ef1900fdf2935ed5d7a105c47a4ce630a11162aa053b405b1128a5efd2fbdeb0bfc6a783a0f9c7ad9de5355bf8ee8f402ffc69f499e2bd00b3cfe52a1bd8d56e21dd29cb9b64f76eeda3c3198aa39910011232cd05f446452d7583033537a9238ce27743559eb4787302e4628e22922deaf1219f41085f82724d05f5be7e2930f532e39ac74e0d7feb67f8c2038f08eaf86cdd07876a7a3a65ecbc705a4ec3397b47dafaa1cc0041ea8fc84bed86808de52b1d2fd9086fb1459f98126513b35921ee32b19e4be9e99c16e6576f0a209ec89783c5e8cd6c241620e833fa244160a4a973d384045594ae102c1b6632e5bf0f23c70636f91cb8ac978b359355b3f71a44b038b167e36a49d45d309c8c45f387a128b215e7806dde0b7eb7cb3d291bdde2b2414b4c74baa973e098117191fc71e4701d99d46565b794e16e63efd9a2a29f8e8dca1619beea5301b6114403d18704d92bab39b7fb847ce74f37e34dc6fdb53fb0a226105195701c5fad20cab45efe4f44092dcacbe8c43ebeca88408e5301211c5ff431d85bdf437a2ad7214c36493382980322da955205cb7b0142962d377fa4c0a99ec71d820c3a2a9c332e477bb46b0f96a186d98a55760e90981475a63ce01456f8658842478bcfa4e90c579ccdfe90ff598a6f1f214618a3b36dc17505819fd6a5d56be5e313a69d495ef77da58f5d9a6f72080bd441710cd195c197ff18c9e72bf930f63dc4985edac86c2517eab5e1575cc01ea6a95c481889656d7b6b3dabef31c05894ad7dc9c7150adb051aeff9a72502a0c84e51252b4540bf2b0bda56de4770f9b8ae398f04b3924b6ef34342813f6b181b6c068907e8f011a2ba0b4c4b9607afab458778ad03d83a515a92e209c1d5fb4c22b335b8a6981b12808d89eb7400e3409962ea0a653e6a12098988b06e878f9979832dbb709978ec8a8bc878964d6d44988c6c7411eae16be129ad76242919a10077e83c7860494599e990a6738bea62c39c7dc4ed92a1ca6d6de4e29892021752f418b514dfc7685afe90b25359146ce0738f1504abc24cfaa4c2528303d0e135caa902905e1a0dacc29dc1aeb499b9046fda9e5ef787bb994b75c3bf8ff50928511f37cd3626263cf9fcc2827b189eb6908d46f563e9d3e4b18c89d789de16bf52b2bf3b795c4d94d7705005b1af42771b4d14b889d269d312a59cdb2a5bc148f1ca20661641bc4ab1097342bce6ada7503b99523b96d4a5e854ba423849ddd833ecdb4f880e487accbc7d500b0e9f3c61d474f2876644b8bec0943a60d0216618bee65aedd3b319d2bc6b2f713479204e3c429a8b9f0608e11f3bfaf91b12513a840498ae62e6893fa89ad16d81f16c2bf0671704147b24b33a0a8c924f52652874775182e063ba2ef8700b33049414b2dd351509321b5452d913b4676d300ed8f03fb8b11d94650a581210c1240a9774d89d4c4caf05bdabf1e0a0bf698b655f52cf04de3ecf19718ed715258388181f9ec5169ded394cc39a265f88b308627b5a34a6f8aa8251dddf9d76fc5695ab4830a138e93abb83b08d78efd0e2a5483ecdeefe7f05cb38d970751055e266243b66bf2708db3f3716b99691d99de1a6c457a225fa1546f7b2819161c9638d1f9e4d12f44b7876cbe450104ecbae0f3f71e9024ab543acd2d782db828a74b1da26e177b28ce3f41bd3e7391392babded8bf51812e2444d8cac7bc58ed899800b0dabe0ac9062dac988d0d4f7951024f6895a0cc8b78481c8a9b35b98db808be4cd2cb045c03f7799333e789c7b97efe3f2d98a7789fea504c014fd5a97e1903760302e325ade70d5d75e22bb10d58edb3dfd9bc109059a430cf686676ae217700d7db773bae58bd4e3476c7ef11808567509ed56230ef701941f3a7d952e8e4c51abb0c7f377ec91048719c4dc477375dbb2eaccf3037ea881f388089433b6bf235988d4cfc2c42b18bfeb216b8f82caf4420c637fadad283ea33bd1972d53eb94b32d386b2b196ebc7859fd021d4ae733a20dff79722e58109f75108af247c10e6e8eb266bf3cd7bb527466a0a8545f9274478769b7c495ab0e8d44fd01307a1c6ab52ce615d35da39d09c36fd35c4c09a53186ed28c1d5bee6108b6749896171844bc055f00ee21f5f5e2cd26ca4e8284923333ad5e3b73b674b8a8d310ac355032f2e13d7b83850cfeec1f0d8448fb725072d5dbbc8cca54755a3fc6155c7ef8a57040c7893a4bb172e9e26697a5000e147fb60b10bd6c2ae2ce96f7b176ce286e638c8a3e8d1cf3509e6933f476bacd0db3dbf988cf0bc1afff71985564fab1ec8ede1db55155607b612c397d78bc268d6514b38f0c43e1a826342635d52604da5bb5c8bf4faf7a16d9008fbdef7cfaa079a11217d4cb1d46dc34538fa840779c03c1d4c09985f6df46fb63562757dc899d7f99e11a5c16e6fef1857a7dbe3132ddbdb6749ae9c1d725e138dd10008a2a5b3c4d5aff990d8105380625f4d13e702365a8415498a3e9f9600ffb4455cf187e0f6b41567d5a323e3892712ebfe663730da0e42de1de01a2a1109953813297cbe4f7d8b3ef6d04e313c4257eba93283af39fdfe78562f88b1a418b5471bac709ea340c56279be5520144461bfe59cbe7c675496050c94fe5f898d5710ce9545919db13ea1e99b5d021bd89983f3167aa5d1347659f199beb81f11075340afc2b48025ffeca289b7b77d3b840ccb76695e2ba3e3b8b03ea38c81c2eb0d7eceb6ee08187ec6986348518e0f5c2a0b1ce6c8e6d64f994d26639c1a6295b0d6059ff7eccec60fd504c3fdf5fa49dd45eaf78666703043c91b193c904919fde8ee8c9e2bb2a452336f1908badf1a2353654b56d6ce3595a353831e26c72e595805ac567c404bb8c052c40b8e9d155aa1da80fa116e77faeeed0ffef1ef6968d0e75399df3fa0a5fbc833e330e1dbeafaaaf2c2baba1712c7d25ff2ed2588ad9c08c8cb306c38fdc77a7e195014bcf7da2d28fb82b84949069e87a83667950621f6dc494788523c998ad79c22e9ee35c4cc9dc9b92ce2920c2adcad4f4bad36e0e70937eb885cbe22920300ec3d348817840a2b2cdc92a2f4c01019abc9540ba8f0107b7082d20e62e12bdb7248ccb45c7303f54c19ff572c3047dcc881965f5beb9528895c7ddc8d64872c529b2c3b14e8e937219f0fa2250c833ae0ce96e59807d1373fa497e9bb83b96dd563d0fff19a5ce0024a3a0b0422592710610f9287745e8f3215178b2d9671dd3d7803c64f82aca0c9eaf592692bc8a5452ae01bb9021947dbc62cb2805a65bd075100160952072b1797286fc29a4fe974b4d8cf6545d35d7e33fc702bb5328d7d58c3223a14d4ed49b1ac013e75786456d47ae0168ad62b756fcffb3c6f814d1d590aa41947c9ad177da55f90c4ea25536a5b1efc47904108c37c001e74e240bd91e5825d7932023599f5e4c8070fe9a0c40482719d04f5134f7da9ec48cdcb26b32cb80910940eff3b980af5f7cab4be1f55b884498a4ee93d24620490d0f910b71eab2701f5f41215a873e9370ace50dbde08c104816c8fa5a3cbd0a744de6a28ef772e1a3d5c260dba37dd28e2978c860a6138a2e14cc08986759370ed53563fecf93f6ab582a895706789d8d0713184a7d91744068c35e77034a3aaaf8628937c09cbbf91aee617b923ae15ddbaa5414ba63f9208f6d17f1fef97dcd8406fa55105ee041ff2b3dc3d8b0561dfd6abe5026980f4ddde6a58f33140f86724f751f375a2ed3a7ece348b1b9cfc5ba0865163f1b81d0781572109a02473244c67968373c88f32ff5a85e2841fb9688d741bf875ff5bb95572f13b681a68e0482bc4ced8a8fb1017b411ff15d0d15739e67a87fe2eff3eb03417011e627abefedada28235d10327f83913faa4459c612615cc23d78c59ea3bd0b587d80331fd32432ef0db56fa36c3b99dc3a8bacf17483f756d05ebc93a14273d1b46c15a285bada564205f01ed216c433dfb189be07525d74e77e994030c923d4f60c1335b176009985baec443d04f83ba7e93f7e7a92e1f3191004e16de1e26031a21cf5691dc6241660db53ed94cf5c165925808395b59f6dc2f7fc0ad080e7289b459b8ddf4dcdfd8777c8b30622742cfedf6eadecb71822fb8ab35f40c2a2fd02b2f8a0f50664f75a5fcb488488513840b200c9c8d55c45e7b523f930665c782eac22b3074ff63aa1a1319a23800879ac33889f41a2d4ecc2891ec513a4bbc1726c896ac6ba7715396bc7104790968028467eeb07ac238a269c9bf990b6201caf3427c1f2dbdb8d7d63b983ef4c23ab6d83eda0818185d0c89dbf92203d77efe30ba56a5e1555511fddd4ce625006f6b3f7b2456f6b654b1f331d22fd05138d71439731697e7a25a4e6a70989d5eab9f49dd2a1a135a61d889ff86ef9f6fc8726e7cefc0a5441f86fa46a74500caef9f56d4a7067140c256516500b7fd57cebcdb12ffd4dcdfbded4877097d16fdbb11c910a05ce37e1b76098c1ffd6e5744c4e134199dfaeab0e960a26611b8bbbcd497f23fc14f21e70d3cb03419d276245b66a5a99ba1f789ecb8284d80a5e355542ec847cc4a969e66676bcf1a547d2d87640fbed7eb86ffb496ef5016d6098036217f36270f21b043f6ea59121d0a4cb99e86877bb3137532bed8a2573118be6fd8b3ccb1621aabbccf55eb2c86dfdb6026c6ab85c92357e9e8acc4322f5d16aac1c42e2d2971731f7fd2b7a71afbc4059dd06b8b4a7e325287720b1118381905528e381038ba20383228b2934bf0612a0455d0391054c1608293c19e8a621084006b5201aa520665867d8d44f2951cb5aa0f56b5747b40171e920d46aa85b1562d35413b845601a9d7d0358ee1e112eb86af7d5e769ed644f3fc167a4633b23d9105fa664540260aaad66d7ac22c3d119686fe2683e3d9a03654179eaec1946a7bbb005dce094f6afe5ce0734c889f33b5207b4b66671475970bfced8cfb5356d3008bdccd5f158621fee886c007734e7bb15d179ba650325fbf6290bd828ea69a0bb8f0232f21ccd2770c6f961fce6029114005b6cbf7ff5620ca0c17d5dac061398f26a062529acc0db7370831cc9cb36b852decdd2c224c80e754d9d1d511f7db14625c88b6e6fb3639c5642742ef9fcd4bee187e61a23a0a0b8c9a78810b712e5c19ac0611275b21d6221f90ce2bdc562d55b4992fb84c275659dd3d1179eef3f059a4ba24776e3d20a590899fb9e7dbbaa90625f9392c5f355b6978a3f01aae5021e0d374f45fe930080693aa039f95db0b3c39d1b3ecd170f2c9bc44a0ff5d569330cd93b47c3833b7d0e5e6d646250892415f5d0c8429c89448fd490e4390d00bf217f2c32d5926797150dd70e8c1eef46bae5369947aae06f178f724ecd2bb25701e20043e2903c017b82fab0310dcfd39f980abd9203e0235147a7ba8af7fc84a4789429a3c118b826ca52d90b909b4c51d5466004088e33f0cea2dc1ffc0635226bb48d598746b018b63c1008b0fac4d4b1e94c88d1ae109d323a18374000c913234fd7d423a0ab585b7c60db88c7414ffd3d1554b78d2311079e444645bb1330e4776a6fc985012b238d214f2106200305b87054bfbf62a014177cd87b2e9656690f7fe0bd05e9d43a1321004c677745b4fe208d51359904b4c2eb924e09b2dd83f07c41d96d4485fd5f837052415f7cae59d42dee5d968055e39f7e89c4603b943ad2557b308f3d52c3912346e4f60fedd0661387d365ab8053c2d8268907fdf321005a0017511f201e2bfb8624ef777033cfc50987b3a7e90a8af0b0b3daccc8e3964eedd70a3dff26e1dbe8457d3b251c75faa3e25112e16d4fa803f7939abc0e4c75495b063501ee16a44119053bb5be4e958498aa4eaa20400b4acc35be6aabdf418366f45fc8b0fa671822e623ae24a8d8f5164528728cfe0402920c49fa72635c38178ddc78fcceda3ece37d4871fa6fdca435b38899c935fc3aeca86fea073b68566eda2f77d96ff2599aef4bf66231e9946c90a471739d73fa46a5d624e52eaa5b0bd04863870138c1f8b78f459006ff351b9e34959776e994f6a56894b41d0872a28f9b0b7864ad4bbfa19f06e1df1ba32ed6bbc32e9eb4ca1dd2b898fcd30a065c82bc9a559dbcb5fc37630c4b564700bb64c709084e1241e145c5bd4c26100fd4bafe21d7f6661a3551604162944f0595792741612254a72358e14feae10ff99f8171a047fdefe76ae7299eec2436471d02d3b873780351f26d842973175ae37f6bdf5251925c5c7880404e22c41355e3f334619a4f3463bcefda8066c297623527538b61d7084a8eb24391db314806b939afde77f33a9c15d75830889cd7665f0efc0f4dff4061332f0f7d8d74af983253d2aa00ed968bf0c40a735b35078c5fe754316b592f715ba062484d00376b68b17a88add63a4ed6b8cea0c893ecf310d3d0b5df1aedef5bdb915218e10aebe233977b270276bc73196f0f58147058948d248654891b7af7b573ce626407c48c4ec3441a303e1c6ceb8dc8c7c607bc99064a8dc6667c833fe195f652d23e3d6957da06d3e62b8157a561a99b386d80c5f8af7b03bd701d7170978e5987989b911f41a0f9e469d8b8a66fe7767721bd683187a92c78107d2f8824802acf03530c6cf898315ccc6cc55219b082bc3f96e7deae0a245bd27ef190841a2b0f6477e185c6d034402de2a601bea31d143d6e3611efece43c430fc12ee552d8b6ea28c7b070fda609038b6e6b38bfc7e3a2b8ed78ec7669b82cefe55abf2c93b703221746cc12ccc02c96489cc10808884765aa3866235e38ca7c957fe113e01cae23f33ca968d879644351d3b9abd0fd732fe35cceb439d7db54ffe67910f5b5893e5329788f511795a6e913d457d8629e2098aec2757048f4fee19259eb66986941c0352e6db1b7de62466a8de57220b4747f1421a8e4d1d41ca85d17a22dc166e495ed4606d78e6514127c8a3daedbe39c66c7d195f8aa7966ff3507af732eaf772ea137668c06dafd7f636894026625afab23c12307de2bd14d7e41ea03bd9436179b36313796328fa94b0dccac49c94b5787f0269817d0f04af03dbcf44c0714ec8c564a911ea1864c3d00efc712e6b2158205ad926849a6266a7716d4a723ae28999d2ce5a58bdac52e124caf05e19c4cec9df2b65a220755b1f6257479178cbb422daad5ec6aa686c570de707a8ce4d35ab77041fb57bf7ab30842aee6359f3442a67ee51f8e7b8105c305438e2309ed273ff3074c901eb89196fe326b00c6f192a6ae33ed3fc90eda33f034b3d44db717348f10ddd210c5a2275e1b037cde1448054a8669270f550cb24b75551af40393268c911a21051976ac563ebe53807c51886981abb43c09718c6a1fda87928d2e633778361e3b8cf7991ca42e2ad4130104b630d8acd3d4a6510799867c81d26a115b0413a8f7cf24b6415f2a96a2a332390692ec0d8e36d0325c110be98c8205464ae47a8a3d3965424aa8d8521a03b7e7d5ba7344ddd2ff375e2b89b5580c936d8c6db16aa16ec7d3b8cb9bcdc7e6f63a4cb8306c5fdd3a34f860071c2b51ec7f370de9ba886f3cb5b523495d407a9fd3b7517270372f0d2623234b1318837f4d7a98131cde89176999c9afb9c1b7f391bcf1caeb7f28a259c2891c7186e07953f8d587f1882123264fb68c8a9267935429e710913c01c0118e2ccf2100525ecdbc5c8c2fd7e3db153d801a2fcfc534aaed86e0c8fe2b7f87b37b066751c5e8d6ce6d12e5c2240717ff15455b28ca1f02ee1c341ad07af7971ee4d2d6586146545eab75b4ce5eb2a97c300384dccf5dd616e73d12dd78233301b5dbdb2c6194b01849d370deb5bbd32e224077d45772531d4ddcc7fa818b01b3a14738aafe6b3d2d975c5fe27f939e526eafa7dfd653127ca3bc2a1be42d8929a2c05d72c1177a2241b7545218214aae8268ff4b7138050ae1c9600532bd0b1fdd5bd1bae96de769f9a1092fee61faea5e17d9720e8359557a35e2984b98556642ad528bf5df220dc7c303a4d5081cbdef74e433ff1a822cb63782985a4a1c85c9a92a44aa9077ba50ce684369215a40281235b3e3c5e0f4108b672a423e9041becd8a161ff2bf9aaf52a99669c3ad1b94f6fac4203b9f0a90e729cc618ff0c3f2b0c2efc08c7ae8bbb5cb2601772d7e5a90593e68c4008656a0efb40e0a231f59da8bd228ca027340da4bcf2344217b67fe9625e8caded5504f2a0b296a26572d661ad1725fc9de394e82d25ed9fb884310fdb8e350a2bec066222995fe4bd17d6f679560b1600d498c498d891f6cabad02e89ede4a24948a6d8480c48e3476ca61aec44857b5af7d60f358fae99d25a395323d9fcef40d6c18014291e9d27639a7b5c5316ac8242095423a0c19fadab35d2d71f4d0ab86fb820aa058de363a86cd3408618424d47b02fb74af8385e38a64c9b11f4d50fc1a261281e1461b52ff5c8f4594faeec1e5531a55ab42bac649aee187bb8a1241e42c57fbad0d493630b2377a9ed266faca99ba47d6c98fc54fde4783d330e82b6acf4e4ae02d44c96d5aaaff584cc6a7e53849001db627164f6e07c2b9ad2ba49a13c33ea98873c8188b1365d5b91f226ee1925d1972c019fad309fc1fed568d7ae616706d42eaf9b9c8eef56a6c1c1d8669f26babda8dd4b4dcb3344b576f22ece485a0a15eb77ad26f06ac3149e7c06e65e2d499bde67eb306e5cd99c79443cd9f33856970726aa01f8f01927f516081281494313941a991156643cf942973c3d9e786524304d17b7661d5062a41b28aee01b81fed0b6aac91b98da8373ff23eb87d45e3ed1a7aced1fe51f4e2b97a07b12b353edc8e52dc7bf986fd864ce1e61397527e9b091fa20b16d4bbbd56e6e1766464f4b23fc27850a758f773ee6777548ccb6487d52277f65463879bd1a1a1d7068c1b183e14b6d38c255cd69fab48df6e5b06e66ed425d1d523d8f3f94e4c7126340ca479eee64e6e7c0b8c9d33d07382436c20de3026332a493f52084ce051d9a8ac27ccacbba838d0e70288bf7906c7af19aea0a82e27eaf6f0e91ed715bba41b700797caf9cd1cc5995653ce18f94ac8c686deddd7516b37106b28d3091ae741c1c75ab1ac33abe0d2dac87078af79b91d12cffc37e12fbc0d97e2878b2f9cd2621557c7cd69863e2501286e67515f956a9577661c03973fd0d94dc8f6ff2d21b36681c97eb8f54225a99cf98f898bcaa119f32ee23626e7851226fa7c7f8ed5279b0fb05fb657f261e93b96d176d8210264c6b8fa01b1172190946a34067349ecdde17de831cd512768861b6ce26f323aa851b0fa53b8a6ff3f7f82916ad164d47d5f46401d0304abed88cfeb4932dfd76855ee19fecd6743ceedff226e9021b70cafa93a7c4e6bbcc79e0fe6c6bf3d225dbef8194f70051b89f71a7337183e71a453494f6c2e158daa1757eb0082c95f55f0fd486621772df7c60df3d3720b36b52fd01400530439e633c4b4cd53d1960c8621fd58b105cc243dfeb4044514416c242232e518cc28b9732ce25c326439b6397d9a68e24a8ea154ddce2ee8d25b3e4430dfa7c5154c8f3658baad709ed8fd445f1fee1a14f9cd012a835f862adbb4f415349f3cc1e678d10efd9e73d0f98eabe237eb8786c35702c59c1c16c4586e4da442e9412bbc8306a3b501b74856283ee2580c4906932f4bf17ff26089a5159f92cbd5605af219cf7199ebf11a7fefce2ed6a6d37f1d9ae1249eb073bb5d43a4d1c7803ea7c1d1aaa02dd40de4e49d50e7e9b84da4eb0bfca1a243212e007fa49faa23f1f4e5c57eac2bd4b750d4f9c91202918e4ee769883c3211fcef8d4a8d08b158e710478a4026cd87abb0b0f4040d369e4183036d3d58cf8c1011988e9146eeb9d9f05833e002e5d90a239df0b722f2618c90cfe00ee5a0c8456c3aa40b6f5c3df95a860c7037b07133786fb5d435c86360c6d2e726189ba05bd8328b891dbd2f341672dc6106bd645883a095c54e53b71add01fc5dcd59714245fd8f6e064e0bd807ed69a8e3e1e94ceb84faf578df99f30f18dd9075b8688195944a3ba924fd4607b7fc722449f527ac30de5ff3e4fd3ab512ee8610d9c4c732447957866d3ab85d227a8cd77af10c2b864b59cc8313d0b1276534133e9ef46b941155739dac121031b7ff972217258574e42046b069d61f0cd920e48de5ca16e7cab1a17d34c839f3c4b15918bce6679635fc75fa0fdf0ab4a5a8df78045f13571aafe4c222ffe3f43c8847303ae06e9a703c82116c7b1c5c7d625920691c4191aa76a24a5c398224b098dd459fbe07011687452a1ba270ac4fc3e0eebb374f959a313adb816c5078b37fdcb5b66595aeb7f15db042b6e45b4c279451b739db6af8e10de09a0aca2afdc9c0c3f0b3adef13459ccf9d2c5a6593f1c172a54cf530089dff4c6aad11fcb6f5b71738b6aecc013ae4d76c16ae8b73f919c4031fb16ec5a7a3ff8e27aec4db040289ac6804af78ab7f8d5e7594c41e3aa176b965f684f8156dd2bb3934d597eb3ff9fef2df5dbc4197f35d01064e18499398fe494d305c01524411f32131f6c865afbfb27690ab3df4c7d8e09b16204ea9e2cf8c1ed094da28e377232f18e06fe07f836267d81032418ec35ed6d287a46186a93d5a06374f2b45b53351a5ff3bf2f4265f7346e571abf9e473d443dfbeaaa6ba8456fcd8874515ee8db9f09440527692b951814c056571d2f2b55bdb0e44da3768308e25999627df235bedc951da966830d00918a3fa757a844747c3a3814739abfb9bb43e1aca032525c006267c72f22f444b4235fb469dd4f9d8445a9fb25c4f92578cb7137fe0724f0f6dac08bc7d67c9cb35f4c464d68619840449aa24d2023c415704eda0b1f047d4a0fc2e086b98fb6104c16fc2747cd3faaa174164390ee94bd95530c31a6147534ef44f9783f82f4cdea83d4813ecc611718fe4abd90ac30dc2b7c6c574b7cf9f4ee71af87d70006f1549d371636ce2d435b393c76ad53cf059138be564802bcec5a5b3e6b102b829dfcfe67fdc9419bc1cbdadc2219a0d1f8b8452cb1131e8c948cd1b8c77998ef9d4dc044e54b23e57e5e084478f737372687bb556d354892841a4546c43d4416373c9481888c9ab99a786d5226669f50c22853114dd3b171921e81363c6884923c918422dc8a3599a236ec412caadcc1a630b8b628ee4958adf421a6612a1094bda5f8c1e32d5a76d0386447304fb2e80c9bb6382d16639a80e349094ce8092d33e25f773ebeccb3c9d4c8d2c7685d01145fac432d346f1123385bf9ad3ae888c21b4f53bd0756a20ae86e4987335245bf26ad1be6dd1ed2c618199d0045a9aff0ef39986849b1a188a379aa5966c7878deefcc38fa0f169a955ef9455a1f099cc985b7254ac3b9c23c0287b5833f5b226f2666d833f9fd4a8719cd78b89826c1451dbed12b716218cac1378cd701778a9f31457de770e4c2dc9d69a74d13c6271df5dd4235c507b60ad385fa974946f5f73e612d86c4f88457395b2aa69fba6bf51a7e43429f43fa2e61c1a8b8921c9e9edf56e092847097006ef3273240c236b72aceb375a5e227d82a9bd80fdb4ba06a57bc0fa049762c39e063624c158231619d2a998eacd58e78c83111c00d4a836ef83a4528e3d109e9c604ba2e542a8f4f39254a1f08537ceabe053d7d87f04ba9709680632978344354599c5f78b4a4df20d99ae824cc9abffebf6d47943169f2f1e358c3183b408a1f06526a7e98af170802a98d65d74a1bf0a5d6b7441fc7aa2908c048500956eeb84b57a3faa0b515e0bdc996fa52adf01c7e1f8bd46b660870017f4d815456a73946cd91389230c548810b807a8cd9087e41241b1b61817c155edb1b479cb365b210e72715d99cd58c792eb1722360847593ba765c95da888ef16fd245a5c58fc66c54e96e9df5ac274d4ce6582c1d510bed8522704a19575ccb2b42656dfcae4bad2c847b39c0ee6ebf16ba65dab6bc6d971eb39691d4c9dad7a0b829f4e49ade63334d08edebc800bca9436f8651d61f830a6dd0027c554f5446415267e9a66c8805ef1ac85d299aff5517e4ee17eb3f3e099ff931f1903b19197b9640e44e32c93e628075db970a5b5e787075f70d8ec6cf27982519bc7ba8bfc9a679c39f1c37be2b469e0f9fe264db06b947aee4641b826aaf0fff8a7f3139f2dd7bb17e815ef29d41fb7cc1b5938d861cfe547f279b0fccbc778827db11dc787266f9ae8ee41e3b3c5146f9fc023de63b83f6f982cb271b0d39fca9be4f361f9879efd04fb623b8f1e4f44fb645b0f4ea06a06c6fd07afe53a1e17abe9b07a077880064b5fb2ab0a24c77196c318c37656cfd6e8122a239251dcdc1fbce1857f6fce746fa3bd7a29cb750426c18abe0303afc28cbf5a410395e0c4305207a808c18455ac52b84b543e3bf05b915b042fbf8e0b89e14e37a44d9cb67270f2e0004154bcd85c2cc70bd4c72fe5e4e2de47f29d82131f888aadf637969fa8b5070a8c41dea17babf67c7f8fb738e9fe2e696a42abe194ecdcc066584d608ac88ac49cfcc24b5813c0e003f4700f0eaac6b87c3ac979af96cb863d2a8b061deafb5eba4241ff9dc940de5078eb48f35cd531c90398a81c87fb3f1041537697ff2b3a9d2f6d47cb609c10994e52ea8d115fa4c8dea42c19f97930c12c1c88b559cb69af3ad74da04b2b7997515272d550c72f7c005f68d34dc2ed8494a9a8413696b877448d9acb76ef420765cda5f21f31c883ec65efead9de9f172374b0d4002f3f133c2208445590cb2f24a0e36cdbc5ccd120fda6414122666eaa2426d53b2a6378f8ffd1a42e43d5e89c25ca09f0c2a23e7805a595c2d84bcc614e474171b7464c7659d463cbadb5d0a24ab1f7f9468f9149172a654a006189671c13661bf5256f735b37d1fbaaf5a5c4280d0e22585bd0d390d25484e00ddf6e6749e1177f1f5dbe4041880076f83e40d6b4fc619e0f024144927e7f2e9b3464f935e24caf9a14d82fa786601b4570dd9b64a4d9320f96ea907ab9a4a73c1654c98f4e32da34ee679cbfea37885cac79329545ad8ee6ac3f72f918acfcdc7d87574b7a77d9d9a035a474c12fa57a1a20498ea05066a76ddbddac8b912f86cac73d4020a6059aa870df8f2d41d408a6d1c6401c5e9db234b3e2e22f0e81a1b036d104dd5986d928db6ecb1b9adc3165290af96a8dc9597b6686610c547447300c1ecd9b4fa99e0ce80c1167582570fc713d86e0a625246de14927e48191c5b9b4fa80cb371fea2f116a073f6beabb106380ae80637c9a9e9bd774b002a6fb3f075348dbd9f4c04e22c12fc003fbc40c94eef718b59cd50e21985a5423f3a6af043e150b600603fc5c2870d85a384a695d57c46f1a8f58e98381c22943076b1361a1a0d8e18c755b1660c957870db5946145a523358d8633f4f44fd3e5829b26b678db0738347fdb27ae867efc33162e3c08fd451e01794d30fcf790de380f7a58360079e8466e3e68987a557784032fb2c63615b966b534de4042019f643200b85bdd98068a9ca6e6ba05c698d90616147cf0abcba4435bcbd4a66b0cf48759a86eaafbfad02b90580f1fc4a25de140d016148c19e3b1544478d50e456abdbcbd95c43d87246e9746f4e4aaaa30437336302c833ef434ca751f8792c4ac0b4334d1c25c8a180cd0db393382640d629dfeb3d24c901568b27f10fc93429bba0a8a24ffc5c5f62488e58b231098d5a98f7454f1c9d0b369971feb2be70c3631ced2841f8f2aae3bd584a9804d7db3e7fafbc8649157dbb46720cfe62836a1f2b87b7a89626b07091aff30028020202cb323b4a1cd146d2bb692e9506777754a306ee186b6670d258c44c71188e7d858aedde4a3d7041063858c3f22c89813e0777a6e053d3351dedf6c0a72f5516a960dba10ad9858a38db31f979c0f918bc4b5ef2835748e7dce37d19a885d260aca1de52f5980dd69e5fc9fc0b20a80d70b38ee9f5afdafcba15ad4c2a34780b42622549bfd74f53f3a6461301fe69aea1f0bdb14bfe19c74c319e1f889dfc6231bed31a05889a3254d826b1fce2483afa8910c884cf82cbcef5620141927ae074fd444e53a251921ca6bd76203345354d7171a0cd159a607aa627189896dbdf2551ff4e353cc0f35e4c788b889aaff0a98d44ef96c1b8482fb3cf85cadfa8a85a109ea4ffa74fe89c096ee308e718c2ce2dbacdaf60f38a6dfa5f90790bb6fe2370be626dff0a3e4fd1b6ff05985fa8d98f02e7139cbfe008c611af2f34fac120e73b207a6ec6f70b8f6438c8ff81469a1b72cc7326403b64fd724889db5c596b11e07d8a353a90f958b38a74ed11cf75bb7dce0f25762455ad3ecf38b5ea6081bc915d6f54d04775ff744c7669beaa49d672c9251e34bea867e747a00b3dfb7daf63de04329cdbbd1f3935614ae86e8592ee0296c1cb3459b5385c9c17647e29299398559bc128ceaa1d99c46ebcb3d906b1c4dea957fc1966d99a93abff1b588b6c9f8ef2dfd11ee9482debb22c41e1755a29f3065cd48e4be4b7c04276b22ecb2258fc4eaa32edc045edb8c48eb356a3aab7b4bcab9ec56a276292e5fd662c4902c12de6ec831fa4f40e2a7ed6db501c80565bc7af3ba26414bbb950132b144500126dd08cb32ef87deebb9e43d8b7a84ddfead1e41b834e5b5685fb442419e0cce7aef2784c4d3cec843da3a2a11f06023b497049a6051c890404909b139eeab36657f841c63e1c710e55503800a0085488a8db703e3ce7307b821b34954d888896604a84c8f6dac7af22d3a30eacd00708a1364d8df6f67263777b2182404092fed10106f0e18c14ad7d04f2fe8a6a421e768a4248770627f6209896c530e7982a3b048505a68a7802ed56503234c86507fc1f9f1d0e94d0e1265739eaa41cbe588ace2712a83a6dbea07c3113f37d3e4d0f5f0e29be7804f9048a7670cb23eda08c03c2594087be386b4245f19cbadb1bc0e6d91c864c9b67a08f622369109803e933c1a306e78f45105307c0f278b57e1fe05c7d50e9afae213a949e74b5d0ae1f802866126e4c10cc5be754a412e3ed42f07f95fc23c73448dea416b09b9e53b55fea93b869ae68349cd386f911f75873ca6d4b0b103b2f5d2283911ed5b12e80325fe1f3ec3d8ed08eebb4cecb5cfc5b91756869fc7b684096e01309bd1b658b3ff08921ca82ccf2cdb4eab0ea9992f255f3bc3e0717b5e1d3fb39e4d0a6b2a039176297b68fe6e3972dba4dd508ba72013a2601987f2be618094342d6fc678b384dac17386893182794c3dd72c7cca71a2cf902c88b51d6800742182322be2d0c38b43c16e36e7509fb3cce102c286ed4631740495b1b1892389784411e7c1551807cc40a269e26e11ed9097b77c95c1d95539fb4c5681ed7419aa48c7b9de41348f5675317c1356b5482173ced46a09693ae19b541e113a6e246886504c469e7962139c0336941ecbfe0cde7c6db05148c1273e3b80345c6bf7225eea0a17f2706f5d4801095ca20a14d185f1308c8a7e466d016b1481ea85f3dcdda8c812b0df17eb528fdae9ce280c4c40858af070168623823c854474e8d5b4a7e2f4b2cc4bbf8841ace5dbe985cb33defc6a028e593c9f54150a8d8ce642646a4c89d4d91aaa6ae18793980592115309363c0fc664fba4f6259a303bc461161d0652595e36117b800f84459933367a91093b4b3f2ea15b30cfcd999183e120bfb3879a8f1b332a6214ecaf21bf314dd7bba8549031af2183f9e7fd9ed8b4f304520120ca6c04b864f77cd4e4afacca473e05185db83da9276aa38b03204f3d3a25a742540b173195b01dd400e59fb108f5c353b31a0534e52c6fbc32c0e2db474bf193f18341004d257492a09c1400b0319b3f0aeb57faa27798dbb4d32a7ef63fd8b2393853aa21f6bfda0f1cf3bb20ecdf3d6d934b0a65d98fba09c848d3b7110b8ea003dd586ab779057d6591b06a22a19a41fc77402645d23046e69a02e2a3f2625f3af2e31087cb01ebdb977e8c76f0d61cc0140a68aafd09e2d53f44249e6bcc555d9837108da0d726374f739ee8fec8526fb07ee3a4e5162c9ac3fb472a61135539686038f8008718777388ee29c82c4445858ee0b21e7aa9c33f30f8029f793fafaac6ca784ac899267f2743713358064ec2e89b8a548a8d2ad8daab251df1836ac3e5aaef57b2242dec85bd23282b64b1fdfdfcbc5bebf158a206b9310ba4572234193f77f4a66f6f91406f3edb3c91ce25391f5d9a4a0f95d369b28d1a00b627c2816af62ab77e27c02e8fa6828a2b2e4dd2a4d80e8e903da338ae903c45d2bff96798a7046fe799f9135f5808561b337e62150f25a0f8f84867155871d88bb1d20b85c99e0a6744f5292973e60b5fee77dfe8dcf64b08781c8ea71684cabb0a4df6a791ff5882e5bb630b3b04df980148e8319f520f7446d934d2c7434757969c42db56804440808c299fecf015c379c7a9948aea77ffc023db8ac747f84b96b77759550875d531cd22f6b389e773ac1154cf5527415333357540e8f1c62dffebeff2cbdfa1198fe0e8c20b065a3fec08a729576ae0be1a1e81e33e841ed88707544976c80e396e13e10d1ed73f9d385425a89f208ebe8c6d072cc4e2dd8a95bf61679cc13df8cddfb2acb1ff6d5f3301919ea7c35baa895d9b80df6ba458be5860ea1f9cccc7dc02ea50bea426d4306e0d18f8a41df72e453c69920da3522cec87b01ebdbce74c44db36076ae99421246cc0ce2f14b3e56932cdba6405346dcce75dce13ac91d029721240e72209bac485f133e1cc365bfb1908ebb69c5b9ddb2ad7d43607366249ae8d731bc8a430ec24d10451f371e0761ffbe95a4bfc6fc216040a736ab66a07f7a89b5c9dc47c2ec4e1ee2655b8824522e32e9455547e5bbd04aa9875be8cb9ceef2877fed0f99eb003dd858112b32ac2443612c1db585d80e59bf882b49f633f8890efb3ff74ba1a8653730c3e9653eaf936ea9f60238d517f31dd51552c8ca1b3ec3f7cbe6fadf75893d26155fb5a53502d8407f2d357c2f9495b9042ce4f82b5c049f6624300ae7ef7d02877f52d3a9ff77d6e9dd904c407510d48151c6d084e8fe18345994730faa8115477b889d294fae4c6c924370f07b90628d0b1fe1fa1e21a339c9b4f26cef243f42af451961c7b6790946940064beec5bac22d04f9c3ebc636c0d8c7ba45989f41e3ff28ca94f8cf1585beb902e2b2b7512e4cd1afa423a015374529159949584b97ed57013e00613cbf8c8122713bd7a2a8790e81559296754f7f98e3aa212fb60320ef36927fcdd8ae3ec47a1102bb1e76bce0eba78753af4645c064d0c443a601140f356490cc398f96411568a849546a528c4ea8f2c10b3569e7d07563e4031838495d81e1bd49c157b3f234803dd288aa40716a71fc8ad71b9ca28316a7632bda71c8bac085bb6494b93997ced7a57ea2669a4617041c8025f62c3150f9a3912ae559f33a341e090f279fbecda6e5a3ba94420d14609684967ab594d1322f0ee5f62734b43d0bfbe1ab02622b1f786cabe78269223344e810863409a673241cf550e5fa43d07e6c5f007fc2a975d1ca053640462da1ee0add93b3ac89242fab55a4163e4856ba45bc266d25db9316bf367cc7dde9dbff7cc85e78b9e57bab3258697fb010eb062fcc41e3b07162fd5c0f0d8cf42e1c73d234cab1b356bd21271a2b00c12bd3404cac33fa2b49ffdb88f8375ea13b0b068655507069465b89c5fc62f2541da245e61893418ee319b1f6258c48781688d812721f4cf3bf7bf18a9d4b63c79f61df0c0de3f8aa2e9b5d225debb1e4c07399f61d9d9f7a898cfee1f1588f1412c7a8c70f6f421a68731c5564d70ba4ffa75134eca1bffad02754d1b1e9acd0f97eb339b0d018731d32c1a047500e139206b8ea234ff1aca85db2a511562d1e194ec1c86767817ae763a65c0afef74ede8a3be4db4a33af3451620565edbc55e3c85a39397cdb7a86778babbd92eaa8ba4113f164744551943c833718281318c1e622c594893e4a8788c415304ed77b5a4e2993ace4269106c26c150912d04ab226f14eee519ba142174bfad0a4e7348182f817b83a9194f505f8cb5018351baa47438395835ccbd9ee7614e1b8d5316899be53e5737327f624f00b62121dacfd618ffd96ae56b4e1e88265a7c00663f851365db86583de20d24e4c64217ac7e2d5891985751bbefb0634ed7a07ed070fd56d30e37da657ff922c79c51ff19e78ce363510466488b9dbd5f43dc907a3db4a9ae2e093dd404ffe0a2120c7fc2404251b2430c69147783fbfb0c97f93b87fb22e9f51f0be2678732a88d907b22b5f7a0bf94f16d58dbb7fd18fe05562d0fe3f27a3683f5e4051a367fe846b582c65facda61a53a180930edafae4a60a413b6c7018b0643254a9563c1855761a4533cb22d987fa2d2432c7fdfeff9ced043482e2d6548f2172363f9823d784a46fcb402fa2d13e5a12c5c00b7b45621c455bc3d26a048e7660e3ab3fcef5ba32457d919de56a55daeacc9bdcf3982b478a8c6dd570eb24be65421bb009110fa833adff56514b586b850b317d634a0ed7f57cdfdc443366eafdb93b1d190cc52ff70f1a901cfa1ce9d16d0f2acfedffeb608e2ad1f26577e3689cb4cf39185050f6f10f9fb595f96e6dfdd4120d060024e85756379d6c359d714f56fbe8f836dc6b846ab577c35f22fead91a54a5719854651d2f5d4117ff5f387d93b6e4468ade641721a22ff508b5cc2914b317f6726839184a684c8ee91831f4b56a23a0934a8eaac80ce3af22fa1932257caf33559d1798d20237344cd1995183c6189399ac5cc5760b42b979dc04c0e3cce8553ff7a5e6fee4aad082cf09171dcf9a06d0befa410ac647c1f08332464fb75a231aa21927766454c28471728351a132621be01264429f1ed856747f943ed1364579a582b1a261e97570ce90f2d15072064eae44f2f336c50de16a27c3312db5d445fc94286662ca8e53f9c102f80b8a7aa231a48ddee1b638ce3d0a37b7b2e40a4b1237becee061af6aea7ee6fcdce078951841f8a9ca38d21db5f0c2a2f3dce0f104ca21b91dca82889267613f31a581f62f2b3bd91666da4c1d09fdd118126cd38e181c5207a64228b401f7345fd488400cdab42c9adb66ddafe10093cacd1263550046ee6d66aee466b00fcaf6ed651098a4b9123f62d8922800ef55c0f1f51e8e6f08e4e46de3f6a3af858c9f2390da3769e57d25c1c33c6955e2c598d057b91c3a2164a2f54146c9e90578d6b8eb4602b866fb6c9493c60ee62ea3c81b170837997b2068469aaba9ae236983986f7ae86995c6fdda9fa3ceab5ee72c7caa7f3de0fed60811de97cd0661655edde62de90584b8caa24072d283e9d2a0b22d3d7d5d8be129b293327cbec4e0bf2c3f2815d2cbb8996376516cce93fb0d53ee07801c3e89c6fdf7032230ffa728b0d3bb27756bbc84fe0f725b967bc296a3495fb30372ea13d7ac2d9b82ff7e2fdbaf82c4752ac49cb638b9d8db52685ca147edf1fd83910901c06b671eda0ffd987a118ec30ff1cd3f58e80ded6c8c15f361b612ca6de03ec236955e88b3a9940bbbd8e535e2a2eb08eb24f5122b6889e7eed31eb0e9844619b90acb8caf26b038615dcc0ee3c136887d96842465be7f0bc8947973f3577cda5864fc572e00d74218fde3526e5ef0c8f75aaff2d0f332dd849caac7eec8ff3820aa717ada549039e2a95e18f2c428ee52d71e61c30512c4fa2f0491ecc5a21079c2d018b5025b58b734d2773f2320d0a7a41c5959945094a44b91c21393b0217c531307727aa78a7f955ab4f4670f62de27510e0bde092a80e5907606a85336ef153afe348bf73d5f8202262d845b7e856304f2d02a4d6831526af38605f0eb5df44dccb9053982d01d8f78657336299c745c8a05b885b637199f3fb82d40d4bd258849f776925642510f8f2e1552a45c0a8aa0637b461e63eae54bd0185c675a80c9ae4e5e706f72cf5114a19135e4513185d3815e614b2cb548ed550c0303dc280ed98e856514030b872c3711bee9238d4ec8f0e273bbcd493fb46a275314f0065b22c649e26c3c989646fab13c86c43caf9c7a52588e02eb3d82378231f42ca150e0b4815a83a0953bc76138edb49f1d0aac7db01d18599e5f0361a346ce586affbf8348c8df2894f50f451924eda58600239f28fb9f7a2211fecb04e719ecfefb130a92c94aa42e475ccba47dbdc67cc6a14e8e6739001f3846a96653d6d44ff1e255ce114d759400f7cf3987b6f3072bceccd1d870744c595914ff43e1aa2dd0b7c394dd627337ea375251f9f2d53445554a9d724faf1fb9c4dd6f220f514f9582f2914304e0736ea3563f25a1b2b3f4b225d0fcf69fb2457ea840ca68b0c6f8ab348b2f477eb21ba60b9fdce0095a9f574cdb19174c2ba4da2055f975fa6c3ccea598badf7096e820f719a8eaf9f8d7ffcec8d8920c1eb11cbbb83216e82b5498bb616e498f9e43879c1a7027b766807754663eb97f5f832d9ffa58fe2e04e758d5d207ed15724ad4d977b4b384c18fe642146f0caf6be59dc462189588492088ff30374129b68395e07b0ae0938700f545250d3fc1c527ea01bbd3834aa3d7f512d8c09eea298d416160840030a24b8b3de161636973e2f816cb020d59e16b44eeb0ba8a34612933cadcc23ef38160986f2167b6ad8cbaa5d17cf6594529c6e4c80ea781bfa327c13b60702eac1afee5909706e704506e72995381e537694de5f6b5ee0aa920806dcc6c8d5aa41e11c0b9f953ed57353734cea289538debf7282481107e1d5a1b0092c269e2b6b25e873ed6a4aa3be1b709a467f7a62833216471dee94e4dee141b973fa40124339114487718f335042310b1beb3a3652962f19f447681a4fd37704fe9bbb35a1a5b94727341bd4e644e7b51fdd6d8a34b271bf4a08b4633319e21f16cbf595ce533b7114e5fddc53e862bca01d2930bc7c65c6f0be51cbf0ef15ba9b5f1e913d48ebb21e4cc716dfe5965dfa4680378f39fa1cb88e574c1bde7b916d8d292d01851716d153fd7be35f1b52dc477e24fed5f14df9c62f9464cfab9428b39fa51368349664a5e36ad5d71afae83fb3832c03cfe70b0731368435076b624c6a4e25710e8e89f02a45f3c7d0a0fbfb952419248a5a1bb6e7be01aa518f65f51582501b49da29f869c333ef0336a09e402c6478ca75f3fcce6d07c6de56970e43aa3f7d91adc8e3fc19a540aa104327834606659f7dfb846920187649bfd6d3beef6a8d55088dc0265a562b5d58d04720c63c4ab78f619ca5b3f02ce33c66c0cf50f206f30b4f5e1bf9ee6eb124ada36bf585ff17717378fec9ba5cc86b2ddfe3f01651c174e3fdbd03df41382eef623937e7d915c51ca14f577b0e539c6b2e32134a41836ce5bd5437f2db0f8393a57a899de8a777564e33af4948c0ad9ccebc719eecbce084cb4e559c3817fcf86f2ed5440547c46363d042c23823063e5e6e53a6badec531cd8a65a8c3b31dc383b30fa4ef5fec05bdc656ff63fea2224a928fc3120f80fc79cc9592ac5cc7b95fd01587024f4bebfae0df832ce6983219c8ec9ff4dd98b9551a8a17529ca254f26e1e841c275c7087a5cac8a599226d9ea0d77c719a5c2dfefb7589e901e8a323700cb546d214c036007ea1b7848ef3d453bb11166e721ad316e5224b028ff0b611948f2deb975488387da23c5176824e7d9b07259c1b65fc542717ff9e1a64a4aa82bff2e24116ec997451f65127f22025efb1d273f028868638de083775d83c131af8f88daf9004aacd2f8387e8b37495ced325520901b05e6f5feb90e2ec0d6f446059cb66f648d39725966368c870b80db23f9ac251fb9a66d5a4ede68ccf8a3cad01d4a98b7b154e3fd0ad9c554674d99fae959fe36f6796c4fb6ef4a85c27d187d204f6b7a9e50a7724bc56491e32b060eef124c1a876ae134abc9f085bb7d685f410857a2b90228952cacdfc2c3e091e13e8004701879f9a2cd6d0c9f3f461c0cd068d24c6dafb09d68e5ed47419026282cb828f96f436ac419ea13ba59d837b0d936cab05cf8b0a8363e0348ccae1a21c3e1261efe5937184fd189a58e14716fabbe416c958f710daf7900cf01e91e6db956ab13209b8a0a4dd5ee324c37b120f4f251abde30ad37f4257601326562bba9406741a7ed148ac0734871890c9f110eda269d0d01dbb25e66227fb6f28406016b0a2c6368c17dffa177d63853808f5200a2af127481800e973399bfbf972fc9bbef05e9aab9903985a9041b6a5a3f49be5dc6c6d7b93ed39ffe09c607d750871258eab712f9b62ee5d4f14c133a5eb4aba425fb89444c54fd5291ea3329379d29b02176b992f3bac9341c68081c45ecb10b840fff5cab48a6c2a9d99997c583e369ce98c1596bd38551ecc93e12f2e86cbcbbf723590c07254150e613182606cc422a48b026806ecc0bca5ad062e454e5c03fe692b49e3a864f2305211404aabbab51bfcde877a480895c365315a7f068b5460ab050ea9f9de575219a5d6ec03478adca45a42bf0c9f584bc35bd3cf1be463e210f254fafd0055dbaa5af91020822f2b09b3c61dad4d45a33fe3a036b1bdcf86254ca8e3134934f53d9ea86e11eac33e151b0e4d26f4e2bb6c2c32a76a9b5bc332250de19dd12709efb27ddc8199f9479063e2617a8ee9b5b377befe593b5a7f40ef1576effd05b8013eac4f97cc8a5d6af1276c2e62c0933bef047420aea3fbf77512f9ff16ce3c0d42775cd2b3da9e09392ff09549316cfb049085eb3707985c9e7a89529ad27f1f486a565a6275d0adac776a0560f15bec614ae057e4957666890a31a1ee061867afbe3894dcb3e414a54d650866e345874bd70096a67248fc228f64ce5100c13990230936eafd22b802dfcda11c675bf41b040c233923120c82956c96f0b3a13a09cff0e922c46247dd012246100a2978e21af9df23f17be5c991f8be1818f8375c7061978ee9c3ab3f78deec9a712049b6dd4b88e8cd2bd79c55f529d1bf10208c1e32f556daf531945f7181a1958e4fec8e896e00e3fdcf13a64e9d88386898540d09c358e70546d089d478198bc179b38e03b0272bc2238265803cbdf52304ec11ef26d19ca2f3b97da40107582c5954118ed3435dabc75dd1ea0be7f724491227f9c435072c2c2ec748feeffc210caaeb5926efd53a0e6fbe8edc286d7a35d980b3e19b01583c85c8b99fe2bb174da30199c92299a0ecc335086d67a82cb2a625f8fcfd213cb4045b6e020c8554f2142395d1aa67df816115b67a047ae00dd46365a957da5b4afaab70968b19db18705b339fcb4b1e252e509169fc2269c0df7894ba54a87f6cad04739878c3705a98a49c056933a6d94740488bf9fa59232944dd8cf74afd6f96e5b29abe4717e59f5fd50ab28535d630101c39acd3b4fa7b6246cf2f657c708213256a058eafec1b4d79e8a3dcf991e97bda6d4ce322fdbf316242f1d2e9797ae9553d74c86171275d966561a3450e04bce5f66199b0e11afac81aab4658c00b1498ce8ee189770e1008a33ab73974fa75eed5b3bfaea30dc9843e5ca21ad2d75788fc521d727cb70d3a1981e21519f3422ee7020b39b7ba56bf1133e40871122ae5ecdcc9e0e31ff7e842524c4058b901129fc320b94d68b4139fe74384b427e91db5edec82517f5ddcd112d7439efbefc48642ff5dfc38c4e7451c7dd1c51052fefd9cf8b4cf652ff3d32a00e8f5e59bd0b4e825defc25093b3d3acec5d4628b8bd0b96a175efc214d5dfbbe40fdfa5708ef2bcb56925df6536df051ae8bbacebbb801afb2eeb28b2805e9165bb5639c74e935e83b0cad3930ea263836e87ef1df48e078647b321e08b5490fac4a74260848a46d9c6a8343b22637e26f481a0c1298b8644a5af4f90c07233cd3fc8136a61f8abf6ea734a19f5c3335676334bff53af62a53a9d7305731062fec610876e25e9fabf0a7fb1de8634baaec1ec5d392f0116c0dcaf621af8fad71c33f007b20527a1202c8f8989a99044a6c8d927b194a886efd6235c19135152a1b2ab8e33bb1fac1d8a8d60d01f00d41d9f07401d1312c2f2d60b6caceb77cc53b59cd5791d37765aeddd3d6a40221a0d686fbd50a96dc09aa7d5c6184baa7e5c6ed311463b3c6969a3b7fc8ccdfda6d10e5309c6ac69feb4f39ac379525c495df1bcd4e946a7ff10f16db1f8b573f724d44defe60537bbd9bcaf8014751ab4f794680597f69d1069e58d1e33e4c9ec176838f5f171ff1a48211ade1197eae9c24084b208216be9bbb53f742a043e16c3591aa832d656337fba17f802637ac01fab7daee24fcd6b44e7aae45a9bf86b2ffb795d6b7063045355072bb18c432ded515a74f28bf3ee997b12cb36b720071559023d470ca072ed18a09fa5b5a8d4b8ae3d657f7b1ec6206ac3a17e17af168c8b676a287aa5c0b0283a2019043552e6b51b1e3fdc6d83ee445532405ae034918e577447da7a379a13a25f0aad66966843c1db0349da44c631d64f075e499041e6e92f76771fd9b5f0a4d6471a562e576cbea6217c987fac16848f32d105c1e1543d10862e04d276d3b4d12d6508b266f86fa95a9f0d9e9b3533367f0a7b85a84a41b8de1ed8e13c78503e6107f3a3b7840b5f9c10e0b3fd2bd0fe9c55a1cf6559a83e8eca0ebdc871d430119db416272f081029291e6ab751c2fcab6fb0c5e3860f050b3c5bb34c81363150aaa25de79449b0faa55b2c1eecf384418f19445ec249725b53dcc4c30d15f77d3eaeb72bfbaa237e8618fc03ec9b0032ee3651fd8c466865976041783cd4aa3b554dc3937c2f877468d72bee7231a1d82bdfae5f14c3350c3223cab702797669aa4579e6b9909a744c25f2caecf497f948ed6673f16fbfe591f229854652b677924579686c272f948b02bb7c53ab481bf4b2be649a670c2f9b1b9c727646028118d4fe50ab510e07ebe252229ed07232ac2a0a2676e7cfe444492781b23cdde901126d900b381f9b4572427cc2707b3306ac255459b6a32f58e859cb86fef37fc78709a94fa31d99ce30d74977b01767cd0562ef3ace1f59df5e28783ff10923591b53be770ed7152bab483d61707ad7b09a18ff01f7da6fb87befb05f22424ce20aa2b63d2cb13db77851b0dc720a31bd07d18787b889eab97026d040312caa5ce5190993c3c75df19be811f280e9b1e645ca010ef16ebf4634924b4f2fbc7d9a2af90fd1a2a8e7ceeab769d6872c45c348a83993bd53ff42aa45f1928208986cb1b386f2bbcd31d26d6af30871290a082495f793d87bc020b680de38aef81270435f37996c62d3c8f81782c4abcd3977c4028368a6e751a93d2b6e3464d190c5e5e8c3be9cb336ec1f202d38e6cfc22186090594cce201c64b4b46b8b0cf88a690e5913480f0050926cd2a18795cae11a4256026496f95c5b53c2a7e9c2a71b1e0720428ce6475a28eb14baac6aec0944d657d98d251c29abee8a5a24e89568611c6c99b994a282b05f388386612d81cb678dfa4c16294099427dc79e5959098e78279df94368170dc65f5a81a76a556b751406329df94156eb1b12dc863ba5947fa6470bee5475477ed45bdf5c17cae52dacc32308fde400502f6718d8182ff71b09d16a98093c4147dafe221dadc02cff1330915107d486f9e388de2597a4377d402455a665cc9d3b45274689a71a48a4488854534ea4830233c667dd0bdf1c080837464df3f3a1e1f67240ddc5ae6307f3dc78e31e9c56b1c73f98021a7eee229928d52724cf218ef4093ac65570e0b7814572d61f8f475aa327cdfd6044e386a3fd01c730e1de88da660ace14b9250946c018994cf85b43b998a4f2498b9c7822b5a57de384aa45b57689736c13a85915407bf6a0aae0e2183a566bf09aa0471c6db3cc8f02a69b58d10c3d4a9deda51f23f4bb652421b50d9ad99133ab8e2c60d6f2f0a2d237ada3708625a3d132db58a437830f1e0a6f9737ddc46e026c740ebc2155e3057f0804822cddc00173bcfe0bfa014d090b81a8fb09559e7c8c6ebf5ab7d60f5b3f6ae7961e42235429fa194ec7371669195c04035163bb862941b453179e37817385ac0104be08b2a64e2e50812361000c34bd8849964e557df6bee2bd1cbe9169a08cecc94350bd7f68b1eb4af010f73606a1ca34006489426d10a67711011da011a9a843523a6a35f1128d08c4029a9504a41742f23a0245b3d47680c2e3366cb02063893f1294edacca07bc4c6e228278747e0a9fff1008c6beafbe80f8e7949034e483b9ec973b3e0e6fbf6b09604ec6f071f04b8a4f1639438a0bd40b5cc189cadcd443162aa61cb72067eadd3e400eaed8b59796b76ded48e04fa6a23fe2b4acea8e01cfa89cfe2575adc9e66c03fdcf99306719e397cf5f9b0880b3e11d0b5135ecf8890bf22ecd7bb0755da86c00b5e1515590c784c485df28f5ce7cc1e445a9fa0e49bc13fa2f3fc239316a24c31dcbac006f619152dd090d7c7b1db7fba599f6feca00b1bf88080cb477e0b05d6efb90db7def3445b09dd593fcd861182e0d309467695703e5afb0fc7b003b3523ae988750c8142f34cda9bd6f02ecb0406aa74a4148e06c9a0b31636ac3128823b58b1b27ab5335392d9867d319849c20681557273d34c8c069950490392bffde9947fa2ca7bf2379657ec92197f3a3101978eb129116191b36df267992186d49e6b8e5931b6d39ece3a35008507893850d16e5f57d84372f5c964f6b8d85803b8093df4fca31b0892b9a120b9de6ab8bc35fdbffbb817c468aa2e6dfd493ef742df4ee770e20c43b85c6a811fe47482314e27f172b38a8e5f8f5462635a5071addc6cb64571fefdff0a8f08fbd3dddfbdcdf9bc5eb1230ce224e8810e041f84bb82e5afe81b3420f3e0661d5e7e553e27c63e1ebe8bb4459e304f66927729cf504f9bb31698bd3888c5ea5d78012c30fd18a7e528746c94d8c167a1cbf0a7bd2836598e3290cb2c985c10de88d6d21342e4d0187c6d3087497ce9d456a840b89b61f104bc9fd81b3e28d196e8018533387026830946d9c51862414378244b49e8fe93806dcf8890db97cf1a335b10a8c706094628c6da78aad1183436a4152d2fd3d67008b686c00e0fc746ac120957261dd481cfc1d25d0689058498db13c11a4ce932060f39e22cbc5ae14345121eb7ac8115b9972ba5e6bb885438e0814b53cc8a15010b84548cc15e91ae0d230dec265e34fa7f152b34eceea2b6bb7a870650551cbbcae9caf6ce6e17632af558846509fe63fd48a1b29298d9a19d03cdb17168ff612e08aa754ed13e9d8bd36a6372ec97ccceaf03715098ffbdfe9eb50239fae0eae76d61f2c470fa98cd3f3ee8ff378265cdbd3e0b5605fa27cdbcca24f2a1546ae0f848ea74a8154f287f41a9a7a891fbadcb447664563405490ba26758d964c004f1a6dc346183fb61da0fe4fac5b7c4ef8000117b995f9e8088f835326ff7a1427526d466589deb20d2d83037b94d113bcb0b417ed30fd91c2e90d108e4de5f93c8098447017d05b52b390f9eeb2bcca88c8c8e548eac87605db247623ae2158ccfb48052f1ebb5234d13ab326f42f4ea8b5e055b4bf9e8a11a6bffc3390222a74a35857a342292dc1fa56a97d54719f7998b75ec0e60b6ff0552d7269d0b6f1ed2fd71a29d5b5484db4c81aa83cac4f173ed5e63a24a38995b34ffd14759f081b3b0c3f2bf339070c01ae6a7d346a2f09f646970b813fa126ac5aebcef7d9ed1180ac1851cb7cc1e38fb843870d66b487d645dcaabd84b92bd398ea8d361d1731ddb057d3a0e02a3bdb3dfeab64ef2183ed5edb244e107c3fe33f2e7579999d8faa56581773550f7c090e40974910a56b021439a37e08f8335d1fde488b02cc1ee04b31cbf7d99cced12b92e091d0aeab485c60e1f46d651e8ac210ea83af1270a12389fce152eee02fdbbaa962917fd282476296b12d65b312332f5a25592200c7dd3d85496992d186187e061659e275ea32402502345d085961365f25cde565119b128c621a20c47659c4cb992536f2ea7b2f384c0fa4337da2ad5161aa18573ca27fe825e9c74f9cec984ae3c29309329571bd421b241c532bba9548f531c52c0f7d42fbf51c1ffedad279ec01ca1eaee3d79d495ce9e1c0620510d85f2e7da28794c3da235627399bab2319f5b86e4d5270fa3c40bf5312ea58d3d315a2a0f32bf9783f34ffa96bf79d360c75b8a67a44d184707980f4b75efaa462b4efc9583d2a665b92f3b02b3436a5aa53c70d0f8df29a6664ed11d5c0463168d66716712a2be978cf909db579a383da19c71c744a7f9878b82431c2822828253a76855b6ed95a2c06614b107393bf19ee382012dd5d3fdcb53a1ce1089c2f2f61176abc123b01a5c7aa62d73263d068cc7000b7af0cd63f47947ebaef772f0a69598a1c834ab3fefab2ffe01e6bcbd6b17aa7610eacd5528cbc658d93a714aded7882a7942e90d841e42e846f39634886d5e192685ca2bb074829084488d456bb56321b570c2ee8e1baf4d3ab06513d612296ba9036310fdf41cac7d1bbe196b62111b7dcb6753cc991ae380f1d069afb3eec6f3913d973b8bf6f0b4e7453848c3b61cd79ec559740dcc86ce4bc1a434ad98f8db547fcc9783dd1bd71503e12b4080816cafaac8cc4a42f1cca6ae5c70c79b9fa3da4d770b2d5c4027663a69b1c2c5a2d951b73a680763183f410bebe4f1ea707b3fadf3c17b52a05ed15cf628fbd7cdc507b46a7e741353133b4ca9463c972346a4e2e68bbdaa7e8de4822974f509b404b3ebe36c4cb654dce370d5de72d61a6b77832360c5ed214352244a5a1fbb01b648373283225ccf2457394dca62bd74e1a40915bec6625aca54a13389d05f45b4988907a94d0228ee7d63a8f710be87e537b5c8a03629036fcd3e10fd6e7eba2caeed2f6fbe575c2f675de01de90d88fee30ff1f3dd7e6ad050bb32ea0004bd7c0fc5def7cf7c0bb0f4f6392379bd5ece68c87754d5ed30fca3f5a8a32a4755a9bb91dd1df56b38491a412221e6cbefc14676fa890a87029911e8a781af2fead306a3d10b1753c75155a60bb2a01536dfbc1474a6f523708a9089d2f15a175acb39e3d72fc45bb8748b83007a9e60679035e05fc2aa2ce7e34cc364e99c2cfbe98b6508c162cc6e36bf8d875b755763731189a1f4d5a4d770a8900ce19b7e57254d02f07ecae393a844685f5ee94ba3d50946872daace45dc5a1c9618da6241160f98ebe2705ddeb42bbae96605543224926bfc5f29f0a76652896547129dea68f60503cdd6837aa1ac4a4f0b4cd1639c4ade1fbb2fe3dc0d4c2d89ee9610c7896a8e4d3db7728ed53a685100db2fec882be3830c6a58a6ac2bc4d0ad91bf4a547d5fdd9e3a92cc1c544cf156046011b79f4384757d10256648fedf4b74248c6777a1dee24de7476ce0230087befb2c3b707bb96aedc6d232098c68d24cee26b17816ca16118ef0dae3974a00d4b3d9db558519a5ae7c79d9b5ea3016e6a15ba1164779cbb25548008992a1b6031be63dc5bda89f642ba82f654b6aa39aa6aa9327b2e149a81f9fc3be5d45f5e3b441ee3c115d4a5a4b82e4b16fbb9133d08ca984b334dabb9b4f9448cca09fa6b459427505a41164337230d5710bdc7174b644fa6580db63f250b0ea440c42dc9a53cb805cdd40577521f50c51804106e18bdd8a6695c8ca9ca533150e16d11c56748308949f269388aad4a640146ded7d4953a87db827cfd7f557dc5fb61a74f5a6cc752e8af0f05e83662fa587235c14495ceb1b62c2f9595f0197ddcf3ad058a925526b0149feb652bdf7279855c16263ae76f410f1d3db434690d4c22f4c661eb1aa8af567484361e0fe5c2b8bdc2eba8ce3dfcaa31d0ebbe7d92f7af0d16254db1c0671d0f242f9e47125fb20073efdea7ed82f67a1988a79818ba3ccbdf85bb195dc954a4fa3dfb4f28c44b364f5d1e861f08401404a511e2330da1e4a51cc36d4bd5a3abf0561c9cf22a97c1f2bd86f3d711180fa4a729aa13c714fbd4d827d72ce9a3466612aea71cc27f49dfdc5da4f10ef7dd3a87b273b1908eeb601c468891e944cba19d270e40256eeaf1031007500ec01373353f3a217a8acf8807689298132a963ae5923f4fffa3bf2d61037b49752bd735070d17f8ec694e323421721ab2ebaf923588293a090d4ef9a95fd99765d4623b94c5915f57639bbfa7ae6fc2ebc4601e39912c8f30a280ffa9cf74252638a815d7633fbf2569e73c12e7c02e3dc9968b39fa874d69263f9c834a641863d08aacb77f1cbd8c0e336d22f1dfacb3c9e6d93a52c92c11594c6911cad40743a4edb722c07a54332391cd0c19fe584f12577fedd51a5cb9cd45f04a65e0f1fa44ae2616702c26caedc9e2a04971fdb1c04e665a3f55db70d3493bd1665685fd889ee9d2bb52fe211e4942508a3ed81ec7e0f9d9e3fad9d6b771babde9c903038fb9d90e48e0a2fc6ebe1572439cc00e5ac8d2bc48c4ae65500fc1d7a0de67d1873b0f4af55d8f27a29c56dca0b96a258bfb99b3ed293ae3965d6a158a63afe409aad0aac72af1036aec600716e1dcd60bd0d2ac220dae8ee8a77b4c3b9a083686d1a4375b8d83570fe3c71309ca3afec995acaa6eb0bb4b05ea7979bd14e7776e223cc438b5b210cad0a789e06f54e17d5600a66ec955429de90b1e7fac972878641f08cd3c21e1484e9432f3761f008f302ced663cc30abc02db42cb46a4b90a27162658922b635653332533326257987276050bf8b128e960659cceb597c4c07fa91b662ebd55074f0d2aaba8da70ad497869812968ab1a6683769959a928f85ee9733ca78c369e61b67b6a5f16a1756aee789c356411cba5807c3ad3093bb965039879d76b9f7869afb861e23135124618c07c80b4e91c62ebf807c58376df0018a15017889d1b8b642689808e46c3cd9ab83868fd1b1db84bfd3dc4122d160df1479d285184b283f11c443e03f93a804795a58e5250c5028e56f5eaa43e354c4e5d0a189712ec58e43dcdd9ac96f3145ea182daa1adcea6eaf7515c5dac697c83acc2e9755772280b0de08e40695a4f13a29d795ec4251e3ff6b201713a453a840e9dedb2ef3939b336e46d4010d61406c8b331b1e57072b4540747c707c9551cabed003312af8fde576296b6ab76d393352a09e2c7a23cb66fbf44b0729213dfd1e679b7b7f5e79e0e6a61ad46e9476e269832306b1e34b4bf060bb127f557f26d7ad8f56e9b90f2a81d1f16e099976e20589b6c95cd0794ad8f4717ed0b6a24b6acf6f3efdab9d551a1fde04bea7d1d074635efc7d9c150472ac0f0a7eb936c51f713fd24214a825c0493aa55d80136310469dd077d1aca50a12513d60168cf6f1d645a3b6961fc5e3bfb84264fa98be472ea53f23d828f20382c31911e3ceba1986b478af0580a948531588e9980c44d3e126a2f1802d95426367b1439653ccb6bfaf60e20dd697d5af2a8bbcabe684db92963b169e4696d39edbdb69ffd08e6d3eb4f323cb29c52c0d9039e698c327d3249928a441fcd562d38cf6eda972627096dc8b5d15b20f267b448db38a40efb303384daaed5ae94029161d015a4d14f3e60c1e8faa885ca14144dbc3d514237a581592790ac486f453412f183570575063d67f9c9cb98428241bd77205a1162d1e68796a843c248079006f13820237f0aa77a5ee3f300e1b9d3a87790cde9234f3b69778736344c506b75e432ed80c6148a490b5b9593c293c78997ef8659525b67d6958662fcba1b16dd57a257e7216913cfcd7926199c83549eb879c7f9b26ed41510ead112012d994cb920290b2e561b6ed95c929e589081c006738bf294b6b09f8159d067b21753ab4f4c0f1f15b7adbaa111185d331f6cb544ef4c4529a6ff597238f741e20307796d3bd41e2686ab15297b807a97af5c73a5139f0b3b4f406a8781b9d30d371ed409c87832631ec948bc1271c2e68b288a2af6ccbf5ff06eeb1c5266837157b122351efd485f69802891a5b72469de7e05fa856b909a48effaab1332cf9febac57c72baaca5f6b9520e60a5a2112d47b4b9d216a07e0844bfb72e8790714d209ae03f72ed867bb5d9e8116dc7daff261ad86ff9fe4e2bbc9c5615096094e6f92dc26f1ac304ff0742f4b0a15bc07405bf2cb526f2449630b8c079265499c147cac5a49599c197729ed390af943dccbe63c23553a0979c9e4acf3b4c1851b578de6ef89c886507782ab70b32dcee9f6787dbdf0b7c5ca73c7a5fb770c462f3207d7bb68679a297d6cdd92d6c6b6a6ef347b96ba16266e8fce24427b3ed1e941802828a049c54442b1ea2477c6019e8962887f2c925bcefaa30e87404098532398f2ae0db7951c250521311899df7ef06b08186a20b57e7255375926fafaa2dd1ff6f66d00f2618cf6c88f7c119f251c2a314ca1075875d24c82e42a65e282b87964237143a3f747d571b299d222dde739c906e6de3c39cb75e47b7f8a8108c2dfb425d4ffc06f87e8934aac80e1625ff154df70694b0e52d5dd369dd34cae201d24ca9a15592f4a07de0b624c4d6282fefbc5ede33194b9aabec205f921843869ca7b1af605c2fd8c0e048585e37e02ea825cb9144b6e6a9c5d8a06c12697f46bbbeb8215d96a2740a0309a17d8004404326b800eb6bd0ea8e839bb2ec706aec6958fedd59752b505852f65cf8cf8a57dd58fc68608134ae5a3db5d8941f6614fe158c1f97250baa6d1630111672ecb25982e03b0f9a41f22cb9616179895af6fb05f52052f0f64670ec409a1be6219cad4115096ad7d4d3c9a60631d9f9ee7c7827402e6dc3f9d3855aba8e3f87778214831ff9d3969925cda1bf5228b0f8d7ece86f854b409a11d5916c9f440c40b1b1453551e42994aba6cd1ca951164295518d99c89598a3425e7126fa319120c118fb7c86a9b59c1192c3fc2b7db648b5265a5279d0f2fc2ec8c70e6d64ea987c995ca70ce94f2c6dd9bb34c3bcf8658ff12ba31f2e319a734d699047444b190112b04a5a5031ddaf0bb8ae6a172987492c70a5de84246895d1c146f31881241d6c0a50278348a04bf68f6368caf98349550475b126d5e8ecf9bfe8f5f1cbd37fcbd44012c2203c7e5c040d8e97419ec404287cbc0f21fc4c4f86a3b71679aae798d9ffd4ee74d18a4e47ca3e5b7dd3a6cef3c9fc2b2d5be9fe13875c3e7cf2824ea85decd011c7837121491dc8152b2199f07eb54b6a0518434674526484fe38728c2602795b4f5ff3220958701054da234651cb8f172fe76a63a8ed04c946d14170cd2bfe67ddb99695923a81db686c33a6220407c4c71192bd118e0be851c2b6530f4a527300e89911f1579ba39498e06c1a1f6b02a7a578e7e264328096505c38c92c2ebd8b9430f92bf68164f31b6e6c30a0ed812497aee754afd2e74e195ba3debfc1e51c0226c8cd87cf65a4376dcf60be8c317baf1c8dea67a588ed1dac03fd9feed8fcd0fe70aebff4e5bcf7c730b213a480add511cc0500c1d098adf97542da47b448bba475b5ccee1b181f877af686176b8105737fe500e80119db574c6e3d64b6d5ca6c44951e24addddd25182ce064b9403fe8a6805420fb191940117a8fe7803dd0b0fecdc2a269443db84ee93a863671065c98512944eebea292653653aa055586550ad256c340c9d50130078da6b1f98b06fa0590f6e2c0f00b4a91761ceccb93e17637c60937e27c61079d8eca43365942ef651b81f5a5f6c22f9d28e5af578e35cd4b9bb0695c884e477a87491d79e97dbc4c5c3fe82919e561105e70206d99a681e4cacc24f476990fde274577b46ac9eeeb19e37a118f607fb0abb132c8b9a525c2942465f46ee619ecc18a171eb73015da423cd14a2b877ba6ca9d8330e95d42f6e0debd2cc5b7e65a8877e457537b302daaa5277d36a628c4d0082ae5031dd3fc95c81c7b65fd2a48467e5ababad22d325df5e3da37f6d95b76b13aab9e4107c7477ee6ac704cb28da5b3f46b7e56c77fc02b601ac16f23ea278d4dd622b4dcfe8ad3cef50af886c802f9bd85fa6561b9db9f8a20be6c11a1484a2a282f9145cef018e8848c27fdc04019e508982a308f969077b758366b8c130e38ebc5e8ec82e51ba8521b747b21f71a449da18261b56c36f82cb1a668338f7066d991bf77b34aff0a54d8727a30329f6dee5a2bf934e4f4b4ced8cd69ba89df6e7f9421ad167341de17451725854ae46e96fb871c3c7ab8df4681e0d16e4bce6b46df1b80e54619fc84d469e700595b7b35ad5990a4aec1eefcfd14379f570e1a18eeae86414a32ce69c48e77bd119c0e442e1dbc1c8b358045879a10594908521bdf7ff85a4e2265ac9db0d669e5224ff64a451092b69e6c2f183ffa7231f839eef5f5374898fd3c17acdf2ecad7bef0bb307d206e567f1203da74345690194ee74725d46ac8d63ff08f0b80c237f266034a91a4a2813d9c587b762e3277e54c5f0bbb747ff0b953507f41123509823183d25645db4dcc79e28fe23ff7cbec8a537080c70c40e74b0efcadb9e45961e1289344d39f018e8af26aefd06592f96bb91536c37b0254d7528b1c366b0b29596af1aad94f35b5a067d4f11b7939a21ec6d0455dc2a7d3e0828b3c51d4d721dbdbd7cdd9b3b78381b45237c7869577eaac39f9ebc93b48ef4a069c64544f545dd327d67668eb6f872a1534dc0dd8de0b0e11431db581c515f6e1849b0bfaac1cba6f09783d3aa417611f8c0a470102f1ad6c6292279cd23678ddd0630a1f7f77ace12b360526674b62515d22304c06d0229da751fff2b05afb5b39f1e7711745ab52eee8448948166f6569f43a659304b93c3daf0f71c5ac9e57510a2eefc0d07ebcbe95bc131b0ba5aa1f1c26a2ebfead0da692451a0d652bf0cacba687f146769c1e05fe8bee814cf307b3a6641140497ef45488ac831f692689a0f5b64c10b752f6683351654613d40a9c07d8a24bf35a861485ef4ed897156b32111f7882078549fd008c41ef99c64f6c0070d96ddf2cc23bb4937e5faa498f26536c01f13b3f5ddfd452b348b1e6bbd6b3f0514e2b7396b863a434b7600efd0fbeb915e83ff806418665014aa94042baba95e7dc8f227b1dbaf12e290f7688f0f0e9626048b4fd9325f9875591b08b10de9fafc5c4c0500039269e3e9d07dd55306124761dbc8bf032349168fc329621802ed32892a1f8ae6c33b00b3e7adb14e3750dd4d787977e194f11df8be80839425ae7493989caf8f34e908e9a66a40b3a83fb5a0998293583f2eabbc5e026e628bcc940ffa83d8539f7bc43117e2773a5396ffc536a0ec9812b55066bc268b5b185cdc63902a19c3086aec8dda6c05ce8267556e815990ed8e56e21ce643fa7e27c81513cf10075f7b1da6b83537f70098ed786e2cc7013c0f70e74ee92fd25cbd84eb32af906c80299ce0f70c209b81aab2c89142b64fa40a3ec3afd9f5a97a7a20cd78338c61ced687c4d40946f711f99d92ba59b82cf896d76169a634924bfe341f023d530420528dbc8a0674f99e96e6da9f2f0b0ed285b4ace0ed2f8c994087bb58ce49c2449b9a96b2e7ea18dea38a27cf421a4ca7eb9a5b47bc4806bbd0ee5275ffca4b227625b4f64b9f70a11d2e2d731c20024d860f0d95b5747b4a68c57d5fbefc173d28523721566be063f319d4eeb3a7f992226baa27aa389d4c3b1d5b94b2a5a1e6ca1af4ea7beba906f748e8879da03fde921eb506649a025f85c5ce4e96c5a328e43ca88248919a84427c597bef5b1803a353876460c33cb5c65cf52b0faa233057a45c973cdc04e9c81cde7463601efded589bb266037fe1d881c991e85bfeb2cd18c5f598b4e418796432fa50901fcc0042a9a87b356209e19a503b764e79cfafd8b765bc3960fc8cbd55c54cd9de8ebbeebdecae68f316e7f013f171918f05b87cec581c24c0a00b054d5c01f0d809460afc5c7330eec6d502af887c884adf6dbde646fb9f79652ca94920c060bad0b1f0b13a66e10058d76d96201f7507ba656845a7ef4329e9f555e03f3cfc9085aa91a06a5ba00030c1cb4a09418b218a5bab8e29a8f06f4c0dfaae8696b426cdc8e871b6374a26998494fe1e1b9ec72f944450a10b8154aca8e8f4739194910577efc2108de79aa283cf458c00f4746f59f69be8caae399e6c3d41ecf34ffa54e53cb7c96579a4fabf54af3b5a7fd78a89b655966910471b3ebb24894dc2cb3ac133907328f0e9cf76c3da2ac0a97969fb48979a7013898dff1ce0eef58d69c6fc79fef3c13bfc31f7cb2a8bed3b43b60029c4f82563eef3c79b7c685e6a5809a5cfec7ff3afe69a028b763149553c772fe1044d38820876d7ab0cd7ca015701def54b9d23ea4e4e595ac02a7a30418dc0edadb83738e740d036c8072d3bbac6a02036c9072d3bb5a7da7f901bef2a9ac3eb22a38d18dff5235f8b94f0322baa41f7c554df8d10fe6748975721807a7699849d33c2bcc7ae40729707cc3070a2ca0078d8fd7fcf04ccc395378c085db3d21f71d4d13add5341c3f9b232fb7eea83a9a0c5c1402cbfeaa998a937f3da514f23bf272db5a30882b5bd8d982ce16ac34cd16f8496ac9cff574f2a5cf5241152de4006d4c63f4ece4f2bce875cd7ae485752cef7469259445942ca054e9b8cb1e0687a1064e741f4a0a58dccb760528c00d9a723b077a500461e142cec5e587220b2bb76386220b2c2e3f333fb174b81c6b094e8824dcf52bac783938560a21a49cc518594a77287220efe198efcdef414de3b6475fe130381f5a9580eb1ce87af69efb752c9aa6837d1d0b993916d7839aa6b3e8b4a2f38c2224f33aaba10b53b81463a6d0ea129012cda6363520d7671a10bffe547bdc1814f95fb68b8fbddbf7704cdbc5cf3ec3186a40fce9fbaa69dc52fbba9402aec4594a70da4b1e8e9fef03350de9fa7777bcc6817805b4c5ed1c889f5e70092b9eb83ce74f2c70f69ab3039dba6e8d5cd79572a0265cc7390c74bbb75afdac399073d3651fe6c0d1060273b3e7f8adf5d0a76bfa7cf8effa930bad08baf41e0bafe1249e895f052318700d3866e61c0f72a02eb185024ec9cda9df3e379d80c388e01b86326e2065fe3569674c2d64f1c0f5e720e3e0e0e05c21f098d1fa4ef382fecf00f0e19320903d7d1f32fb3ebcac8a9127746f4e37a796576572fd731376737de826f11bb90140edc7cdf577baea3b61b51bdd26a28357871ba50cd10f80f38ad29fe7e5d1dda126b2ec107d6315be96156e6768320d6000073880e561e0206c76517c01dd6ce4772d2f6e51f89ee395faada9801c332dd6e311ad001e8e86f606e7283d29dc1ef278c4d686bcdc52979a4ae1a28cd0fbbbd29097cbb6d4a5f6c1a5a6791716a997b21cb74bcfd41f805733d26164c575b1c4989e09c6c81c11e89be9a2843ebf004feedbb9ef7ff09aa9fd7bef3d0721a19fe01c3ccdd679bac4a4fb09b6f1274f38cf132c2eb438c91afcd680f4ed79d94542447b0c7b3e6136273b699f034f4cb047c23a655fc44f9a45c288ed847d9f66e593c56f00d7b3e6834e1a07600d99807b43b00a54fde0357e7adf27108c6e122f4578c344b09c4cd037d3cd23a3cb3ff251238a00601a875ec52b794b4f7109fe74c9ab7834d0082908dd1aba02bf3462717179ccdcd2cdd2dc76698c51c452bb2c2eb3329112b359a96b41b8eb9cc18a61b05a99b665b04677f7b9712d2c9a044a70da7e83eccc7122118b5664b2b888e453f9a5d17310c86ba6d74ceb57dad440bef231f8196ebf8425b8fd112671fba1af7c053d73d6441900d886fe0deb59bee529b6a1d6559cc34a54b37d0f47c75caf7c8557bc1249e16fccb2d0aaa91d5d9701210cf3634c638ce851be4c17b662691c146465576db9aeca825d95a357dd6e84d9554537bb53244522edc7b42c5d0127ba2abddb55b1eb95b1e0340602e2b2ab5e2c575a2d125669912d579d2e57952f578d30c6808197c26457f52914adc42ce2168264683f5a05556468ac527114281453e1517655be3cc5a7877d608c9911235fbb22ee7ab2b3e3c3c3e3c494294e747498e0e034c9c96130788887b01b70fe94250300dbf80d1d05f8110f7e87d4467bcdc21fabaaac3d963d6600cdc21aa5f09ef0aa8851e5f5d8580009b929a8aff46aa58418155e5f3917bb4aabbc54456237e0a0dfab76145d6a541bc15149758c7ea27f26b5ac21f066d8176e5f62e05828428e22c0003846328f8bf12c8ddbbf7852b831f5e2131e0caac207041282409dd5bec2c99997a5f42317164d170b81accd02ad9eb4e63b3bec4e5ca779051dc74d9dd3d3432e6c03bf93ce51ca0a6f2f819770e1859626e10e9b881cb26ff428b5982f9cbda611712ffdf2dd1bba308b4e510bf58a6635ca2823c4e0056ff692bd4bf62d9996695b65c9b44ce3624a522ba706a42f12bf56ed61798a55f681abff4cd7cfca3dd3f5a27a59170658ea56df2565df08ad28929f55be3162b21d3248c7f5cfdf88c697b678d9a02a9999618c5bbcd22d23b88731024511e4248c6e05b16ecff697111cf3bd892a08f469b3b18be8d0a384795ec55fea473a7664d07d2539acc63b6bb5ac672bc619cefdc8cce57f1cd6c3fdac22cbabb429ba0a02017d0ccbf5cbdd7611a84bcd43505581406ee3c2b72cd09551e0fa4cdff770c4f77a64e6fa5b9a0f5597ee65855840cc4420483d3a743833e3509ca735ff19fd8a8264b49088b363fd112fd633df2f8af50c129334c0361e0589f2f178f8efa02a80e6aa92bbf795415e038122842aaf813f3df2d568c471419635028241fd72fac5f78a12fe58a938923eaf0b504735422901fefcc01b9e8da3e00ffc19599775c9388a18c4d88a0c7f3c28485a293b363ce2594adc20d8023883eb2a37798a73f4ab3a5fa54623bf4a96bd5c4895c2826a0a148c3f8e7235b8126e3f74317053885940a7321287eb6490afba0974a3e4ab1768037f62acd8addaebd12a8eb32b831c2b615610bd41a06b0f20c0b522d6eb4e93100e5076af58e785be7ac20fd6e1e4a557166bbc19155559c554f4c2763b5f696168d37eb8552546293cd3131e18bab86d85dbdf3185848c357cd1f10b3135c5c35184dbbfd125b8d7254ef3e1d6a282e3a72c19c536f9355e9b62e04f0c4b0916ea877af51b552d515348a9208c2920bf26e05e97a6cba0202b5643b2d9e38b7d6dbc0e30f0c74d28a9ba28551428949b7aba8a515e23837ebc6634e2b8a08e19844f74a95ff31faf914a47a0db12e52aa7e2f6c7fe19d2ba66a3ea87732d885b979a4fd1c1c711cd878cf1baae0e5e8cc254e50b5d90d15415cea3b8fbdc7ea98232284806c9a02cb36f6a3df3296b43e0a5304af14cfd53b86dc5edbfb2b8fd2e25a56b5af2b3d735d3afb4a97fa4f990b2fa6a68a8dd561fea52c325567ee57bf4f51d048a2937f5534acad89d217cecccd09ffdc81b9aa1f9f097d557d14655973abb32fc4ad300f1867ce5439be6435a965b43f00d413bd29867a4c91f6df7bdf618d648ebc2b8ee01616c93fd057fd846a232eb2aaee4a8eed1b67d5f51e5aa8dac8606df46675a95d75eb5675aec6196d9860d0dfe479696bca4d0bf06bf42d6e19caafd88d7ad0e9cf5aff9b8feaf08585641ac622a52c1ea8b42affd88f7b2d26ee1f65babc1b7a1a7470e87011f6c98d17cc09fd180cc4ceb992f6b8fe8314bf46c238338473f4a8797dc94c3f177a548050255b9416c13a57839faad442c9ef070f49dd17ec48bc40df269d860239335becf6485ccd6851cbe4767e85c3359dd5746e897a82e71bebafd3242204f5d54d34429e4121e4da4f24afd1d856e4708145362b0e1c18fd7d328ffcdd01bb2e73573d67f5acfc8e90dd96b1aae995caf8b030e590e9a8f9e695d295fcc6196ae2f4893e6c3632aaa9aa62184b63b32b26a54c55497daa212ab8935aa51cd521a9a0f4a633c382d2c693eb0a746e05f1f1fa301121e79de545e13c217f67b39da7d3c550e7d42b807851656b7b33ae80416d7df720e5cb9ccfcf24e5caf36b4a8e26ee1048a4bb988ebf55171697ba1caf56a73a92f017970bd02e0d20874bde270a9fc4218d7ab8d4be70cae5719975a4e5caf395c94d015d7eb012ec5304cf4505a38b95e7bae210c9ccb7fd3dc4a5c71e5be9419c0b8715fea8ad48dcf2fafe60924ebe15b5646e531210135f721e03e1a2b4d6c6cf88773f0bf27f26a7848c24c18c039f85987e38d453a70016cc34c18c0d7016cc33fd9a3a2c336dc8453f070f0eb30813bb8fc1b131b885806979f6770f9336b84c72f78dd0d2e730a1e0f76c1c3c16cc34e8cc0517ea0e5b701041b366afca0460d191fc8c8d098428306a90724d20c1ecc98112325266614653492b1031932607400031323073162bcf8bcbcb8f4b8b8b4e0a0a585e5062c2c1c148edb9ad836910d4422ad069a96f164196582528c061876cde0baac2796356530a78c817c38fcd9217cc1e3e1ee2e783cbab905fed0890882e8123f165d7abc432a6295748089537c1f5ab238c5ef31ec70133ff6d9538cd9499bf8b5a79675a6e0a4f5c18201a7416c478f2338ecdfed7660ef3b348d5b20b2ebcf24491bbe1efa8f62f77509b655598727885eadbc8655f04cfc9d835137d2d179a6d153c191c53a5294705bc76a464d1962808209402a9414515052e43015287c30d47652c1f9942334e105eea3d790304b8200fcf745e4c787ff6cdb1b22efe3f7c7f9965532faf94a6e4e747443c4ea5702f3d6b7251223f3317f731ad59b13a9ebfbf845de47ebe7473b7f49a456bc3959f3494deaf845ac8f1ff34b60defa22314b64bafe193da92ba95f0606a6de9c64683ce9651ea692fcafefa731d58ae9149119109861611e7e5722322cc95fc68fa02ba25c31030f0ece49e667cc90b939cd98a4fadc44e3e6448af9f731ffdc1413536f4e8f54844fef79891422333ee6df69c90c4bea8f3ffa184b6a5b64f4f147a3efe19d4636a74fa32702c79f404110a210052b235b44b5eacd69928abcf752091e9f39d572138987e7a60e6a265ebd39c97a737a43e0de09014c50273e79fd2ef1cba8a5da8fd3441857e370dfa3bbbfedde575f7df953dbfedd9d9324f6f534ceedaaae711af553fb8928705dff34952ef1bb53e1dead8127feae3df0fbc2d9b103bbbc2b122d599665347bdd4db36ff9ab0291317187504a668d609f552940643df1698c3defa36689c84ef19f8675dbae05c3faa977b7edb077f94d34044d48f6313ec9a5ef95fbaea2c75813e2cf5d42fa45b6bbb91da347fe55bb92843449c865a4e7fd6519d0960849487f4fce9fdeb7754097f88f6437b33dd292fadf899bb489bfa592fa2de734c1758d735feccee56d0764b81de7747199fbcae55e69715f12ce41a56b44e026146771f987aa1cf1c2e57fbc85cbfc5d6be1725f71877838f8bbbec2e5ec8723410cf178f0151e0e20ce2182d2d9d35799bc47e24f919b050a5fe1f1e02834ca4a1458888b15e7f0114a714e588395fee9273a9575949ed23edd502e7f3350379386d2345dfb74ec8345fb7494233bc06f8d499bb8716cc075acea4410a1a6d94ec9e59e019a632b6cc35778880b2e2e37141c3c1ccc2c32b8fc2f969f87d866054e2ebf8be5a795af78251370b7e072a7a051d038783c1a8987839f9b09e7b8825f89c5b212975f6b229ab2aa692ecc72d72ffaaebf395595a6e12c3bd1254d64997dfe364efb8cbe30a509fd449bf8999f99ff47c5bd06e080cabf2851b8a8fe49f5b0af6b9c2970ef1fa9088458bd2e08ff3d1446e0dca701b96c97a46fdfab47f75c587d501401c6859554c47af8d02e816ff9006d84009fe0bf93b46ca3dcc404d7f50f4ee7e0b44503aeeb9f8bd338d7571a11f1c6a10174a0e9d04c265ea96be68e5726b09ddb8fa9e00d693df0cc9da6714bb2bad46fcd9dc7e37dd0088853ddd4ed47013677a28e9b72660d6e3f7547c1a3195dcce393bc25defef964a66695aee1224c9957fc449de904ece6cfed9e546ebf7f8b8c51a7693aacca25715deaefbec2ede293db2fa1c0cd1daf893a73c76d377db02a4dd359b40ad7459dabfdfcd620c0a76b759122f6d7ca6b30286d71d7cadd76cf5dabdb8f41e91a0c08da2e7ba1d162bb19ce76376e87f1dc7e0ca86b4a377e86c6edb02a2df4723bac4a8755b9cd3c3b2bc5f0895c3fdf9f4ffd54b5c47a7a594f7fc9fceb9748714b84daff2597ed28d0bc02123826a2a7cfe47aed7b74d4f11acb9238ee78cd9c965572bd6697683f5f8948fbf94be85b7f736a4b7a8d3e11eb693bc10a472cc18313d0008bd314a28777e2c14dfd2534aca650862c9a0083124ecfca49b34a74780f375976891422d767bf4464add7bed34180d33b4dbbe4b2d66b5fe4afcf48fc49f892e01399bc448aff1229d11211bdf64b26892d095a22f4dd12d15ef44b4496c4f607df78d21e6a8123f1cf7f2712cf2f427fda255288ccd77e09893ffb9b13fd22da92ec89cccfe616b777eab2d5ac24469158f444a648a423c40ffe1f4c82009fe6634f2a82bde84596c5713c1ccb775187a6b2e7244d65415ec3a70c2873895104e6e561ecf32cd5652a24f0903d570ee7d2ac3a3fdffee80445a56b6450f149d33c29bc507571e70b2dc515256e17a3b80d395b350d5be183a69aa6cb7632a0db9fa562a8bc86e42eb6d3702e90d764a76cc84d34c856d9ca66ab14a908b644f4d8bf13d47c103df670cb761e8e1dafc9b909d0d9793cacdb439fe6f6e335d98ed7501f37e5b88ed7583f9ae293a3a13a4f5121ba7253cf20aef31ca722a5bb43cff1241e8f96eff713704db6f215dc8ec16db741e59badbc864e211fafa1299af249f9a472bc2693b6b3388eb315cd59798de8fb69ca6b449672d9eac5b2364a53a9db6170dd14bafd553c7163ee4355c173dd86ffb140052f07a908f6f421ce951c57c039faa94c79cd3ba98068d0eda88287a3599e351f473296f7ccd9e5bd1ec92ec7292d2c4edce69eb066c075938b0b04e64e21cf2a9fb41a771ae792786062fdf52c972f895fc9f6f4b3cfac12d16b7f73eaa8900f1e9830d9ac8a89f624fefa43e217fdcd094562fbfc9a5522852d11ed45d6272a99c273bb07eb09071fc8bb97160f47ff470d882503cc5e413ffa427b09d5169ccb02ce7376ae123e61dfcf5a0fd8531aa54b912727eeb849874ea13e5deaa7423e1a04b41ef834bf474b28705dd4e1f11acfd1f11aea1375eea33e9e437d260a48c8b2388edaf9c34041b763c04d1e3b7760c091e43f9da67112779aa67b46a6e21ae77671a7c9d37938faad1dae9b3b3ab753973f8a40c90b384de73e1b2011d74d9437846006271c4a39e99cfeb21e79d9a183877bf7dded452fb24a364b22a2b5b06ccfd2f23727ed99e02616dcf694a52a79291e2fa69c94b0b03c111a151ae09c58ac14962a3a010ecfe969d05a2ee03625bc852458813ab53c15d53705942baa138482e31d37f14b28a294a10b2dbeb085104edbe806534e2d5589e88990e20f61bd0f8a1d20719d902aaee39d22a27801de292eb85054db8a2b2001759aad8322c040ed0cf9582de0f8be506dfbcd2a2111d9b4dffe060b8a3a4634d15650fc20a789288c44282b82a010c250135eb8224f10115e808222085fe8628e78a028c24a1366b06a409e234cd170a660428326c268d95048a063b002141d181d46518901870387073a981325039d2f78e00318572b285454544e50039320cc1a3a384fa8828ae082272e26cc97295278e1b3e202884a0b5485b102230b2e5cd0aa083e2a94953158170f478184285250ce302f3f4b55c227967fc26339e13ade793b3f1c99ef35303f92f1f35bf331b5daf2b3c2210fe403cca83eee450437e3344b22a2594fb3fc2796ef38ada54563a9efa4bdb7d3f1d7235d9a36881f5e6b754a20087d2cc0070ae8e00953cee82d3a33c80a19a0a4488213a24b9594f34a139787a679a92b4ddcb9a9702e5150ea0662584981842492c02c1d1644ca3365480bb992e20854ecd04cd53c347022839e10c2389e92fa118aab5593a6f11c9514502930bed044d421c218a4c8820651aeda99c5d2001c5879f72fb42ee715d48dd66d6749db71d39e20d490f81ad670e914b87202184e642a29b640018a2fe7f40802cd26a194b3573c1c0403d10a0a9c1eb00c2555fc0eaa609508ff5599324629993932473e026185aa2e5939d465b08a6c9a29a764b69e6527a64c919d7d891be9d871b5abba3ce616ee6e96e67cbb34c6289252bb2ff5c15875f2941910180502c3ee85593313691b762310d7b1a7dcc6c25ddc5b0b5c9f219aa181eb2d5b0b10d7b1678acfc2a215c1e6bfa6999aa87423be432b6c3566c880567834d109af14c5f28929162d4e81598b05e6708e7e0df2d840526804cfe0ccb1014f3793c899d7842daf286e9c6b13bbb248ad0d886ddcfa8a73440b795435e6ceda4c1a67abef645529fc0c060f8161a88eaecb80108696288c71a5cc687d99b4ba681615ab962ba39505a395a3b46e171bf2316915ddec5a75ab314698d91470fcb4d2bbd18add59990b212a8468bd6e6cb1ae969f22d03a69952fb4c63b2f2c8684d182c0cbf29456bf5b7d27acca954e93246e0e7721c14a101541b4f6c54654600144051065466d3f3f7c613f3fda65b15ccb15c5c7e767ca94285028283c3c4e74749eecec34c9c96189f1a94b9c22e76561d121b338d02a877364b473d8009afce295bc7869b89de35c0809f5d08a090e8e1736b8fd500bce4a90bcd225307822ac5d45e5d6f2e1b00062a97d2d1f3979782e2ea4175a3227d8449fc7e3d9441d9e8d05e5f9708ef61100026872dc8733335fc6f2efa98b648e0de5ca9be4c02d22e471f8c35005a9008a322e01fe402ae212ba99c49c5312814d39a5db6ebef650fb3163cdb42a573027274eb9b0cbb5f04c08d86627571ee4359b73e1f66fee0edd596adf1825f495ca55313a5ce29910b07d9f00ea6c11b2e0f66f1c639431ba9cf3cae90293e9802f96c5594e64a12a3a31858a29318a8f4fbcd226dfb1785c2709aed32f324ed77c30950144c6951115e36b9a8fe856ae8ac091a3dcf89be623b65ce5002ac911e31670c6601eb54cec12c9a05ac6626ddc0bccebdeaaa5c62ba39c2ed9430aaf0c9818dc8b4b16519d3a9b06277645b7d74f0d48b7f4704f6bcfcbb354ede5a1aae4c33f93bf55b967f2dfaa7ce9d2658cb345aee415b9e2eb02d3b3034a4bb479fca7b2d062668691c3a2f4c1510e6dee2c454260af14e563d25adc5f3e1c378da8ca2137358e0fc859b90ac385c9e019580e843c3a76702ce3771cc75d39f35a75ab10c2cb2114798c51baa847f4568df24a9b869a260e5d31c61851117e8c314694a3fcaf889a14b8f19939d6233337fa0a5a2178a6c5bdc55b66e6ccfd891fe5ca4d6e8aa829eb11d8fa587ba0378f62e4959819d96b9a162b548919a455f482047f6424b743015433ada2507559391856b14be1c482468647058eb30b559027e64038edfbe1f9f981f45ed96561f5a2120cb9b28275bdf8c10e86996175deabca2baad5185e8ed699395e60ab261856e3cd4458f5ab4ac1ed3701505b4098fce299bc782516cc17a8d690c33672c53978d045540f13a825e48a0cf004b77f8b57a4b45615e66793864c66e4d1c09cd74567aa37dcf7373ae11cfd51c6b3893b9ca37fc673b98fdac4279c83e5739a06f2bc523f4f0edb441eced16c139f4427d7c7877374b75fe8aae831728c5778383a4aebcc570052e216a169780924dc24628cf0a2d805e7fc98b154be91876d2c289c2346283c3e506e47f1b95150d7af5c218163cbb7e01cfd2d718a8d03f98a9d0c0f876f315170fb5bb6609b22269338c508f28b398fb8fd980c43a6c1c9f07848333c1c6c23af708e26772671a51a80628cce0d5f9c32353e7bf10b2c56f77d1013220a1551a2f8dddcbe7bd9be1b6ddfcd4880f51d0901396f63871c1d27ebbb3a1351f221154ff570efdc6f2cc8d14d1530c9d971e22c12d6a9c93cc1ed4762745222ceebb25dbcc181611f45555e91d33e79a54bd2ca21b992ab289ee6a8ad081d641bc09a49dc9e26b83d8db8fd39ba7982a9c43345f1c51156411092127403a019a0660b6e5f5458f4aa3d39a393e873a0b08de5d3757c28b79f865b23d26b208f65f9b08d1505f3b9fd9087daf81387f04cfd56144680e8fb070f8715e5c6295889db3f75a0701b5ae1997e9aa63f4e812d5746b8fd22a89a7632b9fd50d5442525859a0fece5aaa55f6865b41f5276445c7f4a239b9565b420d60c120d1a5f7594ba4a2b5a1d38f936683e7aac396d9833335deaffbf61ca218fd18a315639d4a5d5bc623dcd21078d6aaff9a0f45f6659968965a5c4772a70889c437c8f35341f580d1cb420d1bee0a071575e691a20e4370dcd878434aca761592246d7e85e96c60dda888a110e3960435cff678a5fd2825877ca2bd2ca1500a41cc1f5e7527c0068410210ffa1c308a19cd685419a69104228da20c7d2025de04b0c1838a32164f82020923f2d9792c78002fade7b3920010562ddf750e001df77a39565048edf2ac2b399df0e852005d92efced424bbab93d23889f04de1e1c52113ec9e793b439d9295acb4def9f7b9f8052286e7cdf7964d43512637cb7b1636c7eef954a37c67f4dc3b1fb3dbef4e6c8044a5f5e5c2084efee5b70fca5071d427ff03d381a59d6d3d7b13b472c4401c5bdebe5bb015c375dafd75de498bbef009b702fdcbf3cf7522e2dd725b959def901f7f24a3efa01abdccb910b332e08ad5a5992ac421701c5feb985700787cc3bec20925ac0bf8fa1e5aad5d13bdafe82553cd87d28550b98b9fd274ee1aa4add91aa8a3bcaec9b02132720d104a254605caf00f7502a2e6e97bd25f498e1cafb502a2b4fafcb09d7195c1a12782f0d08a6f9703b8528b7cb6e77b00b40b044efe178f62ac22211c185d0f26e28deb566ee3b39cdcdc9caa9b3aedbb8ccdbab79ef8f077ce68f8f877c7ef978cce79fef7976af9a810b58e0e1e897b502147838fa619dc0c3b18167eaf78173f47ff1bab80d737be43fbf3fe6d5ec681d117838fa77788d04d8d42f852d76bc2dcc2b381f7cf0e4d67eddcc3cb206ef77788dffb3ac8c625a7d964f9e3b7f7053e5dc349f56ea26acde9cda872ecdb76e3f2992e697dc345f36e17cf01a06bcc92fb5c34df32f277024226d590cecb8f39b89f94e52f83b2eea08213f8975e1bf99872c2dd7eafccc96b320736a42b644deb3d6033373aa616b3ee860cd0756b9c99f4424c32ca348442c2597751e37f95bd671dce494b522f47b34f6d6cd492382bd6595588fd9e7a68e515df954b223379188bcb7de82b0769d62944582fe8ee335d4ad9463d5af8a33b268c001398f33c14df14475933429c87cefde5cb904f76e390683efe2b7759ff169749fdffd6884e8fb1e8f5600b4dc577084db3dc570eef36c42c159381cd0ab46a91d4223470951aff00785ba425ed34141402346c1144a48484828a6ba441f4927c168219c3b6d54451d1f9eb8a303c74d2dcb9a5135ff2d9595733bc2218eaaa6e1a24bcd36a6ba145554a0100eb822387eebd4d685425ec3e1e0a89a706af8718a0aa26ec31424c3ed8f2bb80dc6edd41514a7e4189186db43d08bebc335f164701b638135b1295099d6ea4eec892e61d80f0a7e961481bdbf9222feda6b76c9f56e49ef64b949e3017bf8270905aec37e6eca6bb015f6e33558d05ba96e633f58d090d7603b31b06b08bb866e6357bac4981188f072f4633b5e833dd1a67e4ccacfc5a2b8fdd88ed7bc13cfc57c6e63526e633f0f476343d3622bece7f65b28e0dea9c356b72d6bcaedef2dbc7835d93309f1f737181e8df5fddd85e3a4e1b6b7e025083771e7d63f7edcfcb04b2a6939a753c03bd09e28ce7d364022fa86650c321861683d4803bd6de277cccd9c718ccccc6c63115c7fc73b38b801d76f416126b0873efd903af5bfd48d54a0f2214471dce3a15da6d1bdfbcb88f301d7f00b5cff13f2c115507042133ea0020ca71ede15bec7f7d2267eca5d42e0dc06817b8feaaec1edac94198ee003292cafd06fd42508ad8fc27184cf760fa15781eb74b40e1d5d80a679ef7d3b71e3ebf01acbc28790bb906b1a1e0e7edf3703ad9187922c80d775bd251f66b73e1a2a80b37a72fe64d5771b76e9bdf9dddd3aae0542c7ed9fdff170f9b25d76d9ddb2d653ce320b36d4719222ed0bd2ee4fc3edcfa8fde8b7a6ec89d69ac2c11e9d55f1f00612c12da100e74b2a357797137b68c5089fc2d9cfdfc3b3f7b3c697336fe6526841a10f005c14975f5ab9fcb2ca142de0b935ee9ba205385d12befe4fe5a5cd59456f3d57d15ba299abd5ee7af8945e4fe326195dd1af80c9f5cf3406c2bdc4217aad52ae6e6f6dcf0db9e16e1d5f2dd37ef07b2684af3f5f7ffa8418025eb690f93d1ed677da03662e3f9220baf800c9753e6b42a4ed6e6ee6c39b664edbf1a505e19741326975fbbfefa7ac0149c237bb712d273824dbe58783fff1c65617e89be9a2eac6a7cc857585c1b8cf62725fa9091642c01b69a494d292ac8f555e3e0620f17b72de7a3ce48f2a1743331d1f8d7ce8c2b931277af61e0fca9a0febe180ff341d2b1d5e21fb472f9e7ff16ab28f5b0db69adfd9889fd5f9fc95e63b36ff9a53fe0c77c9727de6956e3c1af92e679d526a3fde8233d11a896c9d61cae571df144b38b971e3f11082bf9b2f7b268972c2ee97f0a39c0fbdcedc78389a093a56aebd6f0a1dd4eb9c291638beef7f4afb629db9af69befda1dfe8d27b9e82aa80c9659d2b97fbf969bc4fd6d7ff80b636ebd28da6f17f8f993efe2865ac1d5f23fdd990c77608e66f7bc38da02f07f7a4e862e73e30dc278518a25cbabd99f93c9f45d727052424c56ae8f20cee93a20b9f4baf8b3267bcb1b0fcc6c2f23b7474a91f0fedb7874c93fdf656c634ec63b304e0746455a455244168af690f601d42444d7b51dd11847fee30e790ba43882864e64eab8329a03df7fd70d53446b417b568913df75a6da97c356d88e833d1674f3bcbb2ec45dfa35b344e047332cdc180389e5942e03a2804b9b0be45df0fb5783c32249bf5f38ab421d973362b67dfa345fd44374a7a4b86a2eee62ee1ba974b9f023a9aa645c628c6e8e35b5e33b25048861565cf3dfd96da3f7507ce28a534666eb52f6566eb6ed666f166557eb961f4fdd3a6a60f6d57b31270f43b48b7ade5b77fd17c6cf3ffce2da394d208bdad6ddb28a5db665d7450cb6f6a42f872b6e327f42d3fb39bb586c075d96fbf7d3f1e4f7bd1d3acf6dd84882ecb765944eff6ed96f42505f1cbbd5fbed4bb4bf4334a8fe8b8f45d487ea9cd9e6e4f3396df44bf6dcf654f45bf6d9f6d9f89e1c9e5b2adc26b39c1bd0b9f8a345a916c59ad7c396dc8f674a359667fab224d0b92b988b42c9b2975e98610b8ae7feeb77c1be19ee5fbfbe7f170f9fe26c2e3b17d3fddb66f79ce6508cb6f2c41b667797708be9c6da91df7dab35423dc6f6fd98d3e7dc98ee8adf64f97fa8152dc6f8f4716a2efb7b407d0cf9ebebca8fa6fd57f44238616847e6633d110faa2dfea483404dfcdee40453392fdf6fd302544f49be837d16f520b92fdb6d1e7aa90671f43267b21af79270b0a650f47e604c73dfc17ed47734f7fabf0ba2664bbdc53969a5d0a93593fe03abe32320b081c7c3acaac1f7046be4bf493f03532ea127d1a5da20f63a2c82fc5b184a55e970a204ae8a28e88fbd225fa34a6f9c540515f11677589daee087dd825fe1e7eb58e2b5bc7e5625c8ef1a6a56f10a24c8ce0359c72782638bc111e06ce0909eb74c3bf994e065d7f9ac30d954fd4b31cea3bdd50df09872cc74df0e1d5026d7c96e76a04e3e188320f29851042087f5ea0540721bd14baf2a70b5e3ef85fa39f52fa32a48fb107ee4d910416f74de1be2992c8b900c8029009c0c63f8d0f0000b4213235be87138000386e0880016032c1bca5f3e3d31c34218cc30cbd41a90c44b25d5a3be63b03e1d31a02480871807f03843740086d8016426821d4a19b816f410921ac36b4212dbf00da8f1d590e95099f70b048fc0987bfa122313ae160a19336407caa43d639f1e5b1185faa50377e27793a28ad007a55d354691a201b9a907e093304dfce3ecccb289aa69b3fe3e3cb54d318991245653421ec822149430b325f52395fa64a1eaf61216de3899a68e3b41f7de9a4df39c1d1874e9aa693f9faf1e14ed31891f9fff850e7f1a8f1f1a10a1e8ffa32f26b54be33b421fff25f3eadc92c27b8ed5a6f0981b33efbe1e2c3233a288fec862ae5870d2ff354e69942f89ee776a1fdfa32da90fe678760f934b421ffd0860d6fdfbe0d6fe3ffab94ff5fa3bedbd29290f0853f04bcf2916c57c6dc181ada907e6987e00bff00da0f683bfbf25dfe6940ecc39701e3d2a20591a1f0df35247c6d3cac43f0b571633e6a40eccc0c0d4a6b7c95a1943eff8b36e4bf868d77d186f45319dbc197339624c4be0d6f83b5466cd8efd25b23324fffd6dac9fc8ce7e86f5a10197a59da5b92101b466a7c12be326fc31a91efb2862170f2fbf96bc85823f0e3cff84d131204da519726dd91651a10f92e4f9fc3972ecd27d519d58ab1ddc8c22ec978f8998c77c38532312e14d22efc2ebb106625e0e0c7f8a701b1d98c6fc1d477e54beda21a6e7c979a84afe47153fc78b544161b6d142e8271fd258fd744353c937f0b94b82e8fe0b99e599d28d049971cea74c93b47e83bc7990b21778f3482dc60591eae9cb6d381b31e7c319341b66770d065f73d1aab6b4a5dc99970fbbb1bae7f8c96001cafee8daec9be33ecdb7613eae4f6430ccaed9f318a95db39b783c07550856a148ce276d6759c0b6f66433564599665d9b561df659ba822d9b66dfb0fdcdccd7e40c3ae6ccbe21f21658c2fe71f11e51f119ffe11d372f4823aa0d5d201b7b5ba14048e832e808f5dfaebe7fa92e3cb48e58b34daddef7fbd2beab61fd0ba6d4f12f38fb0fe8869e75bd71f31df1f313ffb232ecbfd1199bd9e5a795996c57190d90681e3e0ebf03893505d7f91219fe5cb788b6d62f0609a186bc377dca5cf347afa31d55f69347a973a7a1beae86d1d3d573a69629e7fe6dd7834303553bd1898f787d1667c7f4bed5a98648324df86cb93bac6525b99583be365642c01b891cce8df53484519d77fba650c33aa7094350d89447a1a241289c673f767312e604c1c9887a92e3faab04b2ecf5f3bbe30ffcffffeebf3d318ff1a03defda7333238c3c5e58780971fc976d9b26843e4b3ed87794aca20d7670d08cccb701d8d36114908cccbbc0c8c0585f4cedf95668cde619ca7568752dd27a6b51fff324f659e63e28bb4212e9a3644b60ce9496f2995301f6b9048363ed2203d92ed92481ff3993644be0d3b04df1ab6d386b83cc90ec19786edf8637c0f671f30324060ac91fef946627c12be2e2f53dfa5f1311d4b775dab3e1efc305de5181e0e7fca30f2d3a8bee34fbae4a287a9cc456521b6c24195b1a80cd4257ff65fe29dfba78083f9d1777235aa2f2fa346981a7798e532cbf3f3f3972bafb12c8b6b1b75bae4cf927569fb4e5a549ee1f140c2abfb43a410b99257e4d0e3f18448247c5d6cd7c2029fab5b85dd6b424c6ca5bafeb3266168a96cf4cb1214c8bbef1fbfefd1f45deaf1bda7e3edc8e8f37dfcb43e03f8c67df6ada747745c91fdc0cd457289de7a7fad22117d7773454fa9e83f707345f603d9f51de48e9fbea551ce4455d398ed0732fec751fe1130fe11f0b13f42ce3f02936f456bdff31deefbc70fe10d47b903fa663aeb3d7925461edde9ed1b5449078a966fc12528909bb7beb0ab897b747fd680609c23dd8218dd44dc4be6dafc07b4e2b7cc71ef83fbc768afda63590cbb62d4fc65a4733e95f49f9079ac9d9d2921e7780fe3c0cbdaa46569fe57e4e1a98210fa81bbfcb1683dac3ddb536c83b387b5e32681bbd2965a02e02cabc22ad323048ad15608d401aaeda8148e9485452c55cd400000000314000028140c08c5a2e170401c49a3ee0314000d819e4c7c609f084a10a31033c81863000000000000000119a969002e1c571a1bcaa001ef8835f95f2a994a63e5005a9777d0ef2d661fdcee4ca2a71b67b9fbeca877a8a3791d01dd9859d5e03b9b868d02a1d1d91146c5f930058693c94799a268e84e0e0ce9023b531668f8285cdd2703c33691845646c5838ae70b4180dbefa6cb5ad1cad0eedbb4305d1396f2a8d54b4a7303a6fc147fc2ced9e9d5dba05142acfee7579b324b4608d2a341ddf156b0035cc364da82c598b1ad08e5f12fb0eabe81607ff78767a064556e8d2b847d34288601748c82c4121130c3bb186786ce1441310fc0631b8b29fa5019d40bfdc2c190475d98c1ebd5bda99d8eebbbe2c2d7369ab180abf2680510291719ad77869d933f35457e6b6d4cdaf13700ba9f588859749e5e67064e31849cb48696587d76c7ca37cab91fd0f38c48c1265c39c56e4e3f9c5d476d30aad3cf10098508fe691e59b326b01e4d4858559ebc3c386a9408ff97d28cbd473cb9a873251a51dddff6be79967fdde72d7fcd3546a63d981b890153ed74348589c8c58c31ad38bb347b21784592f681e6906ce9a950725d9d1f5b19545ea82bd11d012db2a1c0fd1370fb8e266cdb629c80d40f21185765afd83bd5551cc17d57e08535d0240fb0a708ee7b2f118d62b731860ac8c534e20b8cf8259a5105a4a83bdb4978c5b03efe3b450809fdc71a3fb4d9a700c92c20db0c79c13d476592847eee871cf52351647e5ea504e0a6f176daa710bf24383b6f58bb86084588c49b92de87a921b07cd3b6eb16d61d884caf43406fa05d6d7b799eb27f10c5b342e39626c37a38b56a755046a5c9206350ca6ada593ae546cf77a53ae3909be292742ddf24f69385cffccd83588e9046f2231429f698190d4710ae15b257d61d94a1cc97afacc4bb6174712d16f835e2dc72676578797ad6b5028856bb0121bba01355678ef45798d53f4b467819dc36e7e9a8ee993dd37c9e268bc39d37c9bd06b444c6f88033c5bac45576811f374710dd7e0b5cd2c7181f4dd6a9a2aad3247a76393cb0673ed1c6b8a43f281541be0166f4487a633a7c9a084ed1b3be13256ff8f160c2c19d93354604568720e1864ea7e61f73d808ff55486e506fbfae7608fec758bafb84fcfa03d2aa10b79251a4c6f4cbe6f94f21df85163dc700c704b5a42a1896815704794bcc2eff1a2c061b0c3835e7dc7f8753a9841d0e2301d020486f25afa3471df163d4b534265827a378b58f35a897a9a17d8c7cd1e110aa3400b75c052eaf5fd4e8e789cd6f189154f59155997b020aa67c2d4d4881e8953471b99ad295f1a436808d89698e074843e9d968094aaba7c9b2385cc4485442f1f5d439baa6485f7f43cf509c7f83593001205f41e00d3c4aa908aa454d1832f7bf3c05f6635ffde57afbbfe293f848cedbcca272c493238ce368f99f2acc11143162eaf2fb8ad152d053037db4a006088455663646ef52744c35b570908752f4179989b90c001f6581aaf0e1ab7341b7062d6f79761f74cdc5c3a30393eca31464c01f43ef709f76506008fa8356de6d9304c28f735003403b28298f9d0c533180f1576cd3086539ebc56b13c7e3bf1ff1a930294a530065c9f5b8d8cdd08d22230a080571c970111794979bea02f5a6cde19a36ae9c18d73acc30608edfcaeab033d27ced49d856d7c2234047a4d743c7ceb4316026eb6e42e00de981521fc1d706628b73d1fab2895c389919fb2725404fd91d0a35137e83750ebe6a586d27fcdd5c81b702806e559d5748fe1a9907b63f2cdeb4290431e17a1778f5f7fb4f6d14739de0a40aa16246c275121fa95dd441d89609249b2045c7be84f8838eaa6f1ff098131cf7870757e08e93fdfa5531b1894e630e9951817808e1e24895b9ee99b17d7d6ef2116f88e04cf13d04fd61282cee1c92f99877c90b18e031b2c56a798e155ed923c4674a6c105ee52efab22724344c642a870236e099678343a74158a77df176fdbdd388b69f4c5fa3302dc893c3bd3655aa9d7747a7af0615659bb8e6cd081b3c7fd14fbb9abc944431126f6278fbdae2465e722ca3d623c369eb31aa20a2d1ccd8b161cc3141b897c2eaae8d12a2cb5d9eaba3f9407e08afa75b4bf1d268c8e33c01303ebb87436bce10672fab3843f5cdaef3133dfeb42832790662891c7ff2a5c34502b3d7114ea702e2558c4fcded224c00c59cba2041d8848ef359cf89d03be6f020b1cfeec6880d95f89a6bf44a03730141a9a41f791b2b6600cd9e98bcc0ba5bb3577067471f8c40d326e98628cd24534ba7f3185445cf0c15f0b7fefe65cdf11b644fae17a6525da37fc2549b30f56ecace029f1689832bdf7773c5489eb79595d0c0e3b14a7abd5e7aca45fcdee5496992f9f2315b5502fb9ce70aac8927e71e945f4b4ecf95bc6931ba06091b3a39691b1eb4a07f6958fe8134c8e3d5de2e0763e3172ff0fbf96bee0ff78af87cb31c34763948ac5d403b1599f298bf6b3f699220f3136101b05800d67523824918881621349927fe70bb131d9469938dd3672b0a05b44cf50a01b6850ddcbed0a0d552109b1ba11fc8190cf521696433463c436091c62b8c1e51dbed9ee12bf851eb2096e443a3037f1d3cb178859a24079e08f7c018cbcb0fb58fe3f53adcfea766c4d16ebf4d7a607bef9924b7751665b3fa58c1099b09384dabe9606e35e366465c0b7bcb2835b59a8606ccab1c9627fd01c522a1170868703b7e9e3df7be266e767bef93d12269b5c0036b53be630fbacb4851b65d488070136ea844452f21ac29374bf5daca277c73c65b89816d270810347480f5a67f3f30a3ec19666e60cde0bb28acb5ef66adb2cd4c07f37033542eb96dcd8eeb0420f7e28384c0f52e56bd1dd101d3c00753c18a9a253aca4f899a88450e8745bae63e00a0b4d2b1339960d1f9a209b751a287a8f9892fdb46b448741801897db2ac89819bcab65ae68bfb51e8a607cd3a8e5dd7e3b20906204a951cef6173f96fbce2d4cc17f2f94175286c1c8d29549ac9b14279e11c3422c7ad1a0fec2f1efd72c5d8068e109f1efe8ff673293634c69f568a546a090f6d5ceff1c73e6b65dee908ff3bff80979dc651376d353d2b2dd828864297c182ecc2991dc52c2eae2d7ad35c76bb3cfcddbe3bfa6fbe34509cabac639ca10a963d47b23de91bcece1de191d61b270a4c11d232a0c42853901199e27db2c350718391cafd081f1df342e5d5d4191a67de6203e4a80ce61e448177695684871a7ff54e5435fd91b3eba10ab1a28501acb927fb1b1272ec9d5d7a1434f1ab1446b9c908b899bc6157fe7197beebb19b484f7ed49b7399771babcdb0e9614b10d83b7413a491656a1b8ff441080c35794a86367749b5b230dc689f1580cf554c703b9830e389b8633190b8483114131d63fec74c0d86f20ff02d600bef7344da476cc47c7e2e770c1cae45e3be4edad5a8b7a6740e2d4c90c44016cb1caeaa72a6b87f830b61bf0565310f3c872bec29d577cdb3ef522f7cb6ebb5e1479f00da52821dd37deb65fe47f33a55a4692c47c953e0fb6f1222e8b3bf91f613129be016334d4097e7940653d6085a219cbd645bc6b6ff75930f020a9898d075f163cd9244343c377ee2472134a042db51011e16f7764f603b0d05a242f1369f9b6042811191e39e572f1cebc18ff076e1d014a1266480197276648f728d56055c2d309317c4881d45ae1c7fc572fd5e588d076ffeacae41e68c724c99953d42747a1671b9c2c565410b1ddee45514fa955a74444638f33e741905b2bbf2b26d9fb311a8959896d1fda9a49b459253cff1d028abf495be78ce95f4a0c4a41e40889204b77dfc1974702ec33741926fe498d06091a506889e2455d8d41ed50afec192aeefafc5de68d17bba178956e5e4c520f94018650e0c990f90990b620e37a6626e7a2e39db01e15172a69313115f5c8e226b1fa20bec567db235392747325e8ec08084d5726ace9547a73c992454bdee2cced5f4fc6c7c7c8ca12516fe7cb57d04253f5069480e73ffd583dda9b023981aab123717dce203a60afe7e75ce8f0225c48b72c701eef1fce4af6314ec1cd3f4fedcc1ac5a2e4f2ba623e4b1fbef6200d932aefc49c279c0453c87c2a0b768376cc0b051b597ea96cf60c1af6bcb0644498b2048aeb22a4f40381d6875b2a9ea577c25e1b1df5e6d28a077a761de5068a46a5890d9ae90f3371b635aed06352846ad258d99532d11af96ad2d6ca988de9c3866f52a9d6e39ec4f0a3eaac18ba98c66d99f3df2323ed0396958ddc2f07639c2514a6463423a8107141281d92e1d05c925702fa70a89c5cfa035650841f5146555c55f122453e0a774197c6d20c3322c0d5270f06ed7157da04dc6732cdca00729406686f17a62d771a386149ddefcc1693525e9948db0fe1317ac50109bbc3390357b8cb51a746c27debfd026cbbc80a7e9083b39daab471539d691cf6fd1061af3b38f70521c45713833613be32979413859ceba9d9be079c64e5e0b11ce9b1148e186deb8832445bcc677e118d8dab0804cd54634adef2945a48f3dfcb0bf80e9ac12d65262bc5e1dc49f2ca3e778367705117c575ddaf4f8b122e1c8206ce3d774ed49b448070a7ee4675145748a5df116edec9153b384c5af05c0ec1a010c19e8d025115f12f51e525a50b44cdd11f3306e6c0fa929d93b893d19371e2b78e23a6abaa730931c92a1a6c620902ed83d13ce479f2d48681fb1d29ef05ff9d02395097fa56706ac88266532ef6a19c1491dfb7cb521cd049de0632a411ea17674439749198ad37cce248e1b2155a5e2c469a5af1d2d11017407b10d6e22036c882c97a88da51ca06874a255491eb3fb638bc2a237033c511050125440ac608dc1aecf8060c3de02731e9229cc6f8043e9b72c9f6ee69d67eeced42f56ea4fd3ddceb1c5c860c821ed25f8c638fcba8da244894be522a36c909e4837c0890e6ab509c98e0a6b9b51d851fca7b0b9e6b9837bd774b14b31555158db52c4181309e524f80281c05924b3714eddd84f073c22fa33a1d398555b1f18660a1c2847acc855369a8788eae3fe2e62eb0964dd33b3595ea6077810af83e7ed360925d40be778d1eae7b4ff5e8036118e58e792a0e8a54aa7be6e2083ef12bc86c5f2ef12d4bd034b56d8e13f5db1a2417b31689614bd0b76d6c5433fbb137bfdefc5ee13255dcfde1ab74f43bcd375880526c499c86d52234aaa7fbc1932e8ba4a488a03d547cc3df7e69c00b15c25fd6bff74ee141a20e2579e79dc2bbf182a669d57af50f951038b9907da139f992cd23af64a3d5174443799be56d87a3a8e10b9e4ea2a836d469814b190048b89086d557ed58910e04784aa53b61a5c93d25caad63a8daefd4187a9e9ba776229f3be93932c7aa895bd066009af6f72670b3dba9dd95763a4dc452344d4c84a85d404154a6f6c1f8185be8191932be2b2478d4e1f4ef702631d1734baa6c4028c11c2fa19cbc022fd602c07b351113c4cc13925fd509294d7a54e1b27915e9289ddb26ff93947a9a3c28a71b74dc8e00c3702e21a415e68614c1367815cde15227993f13d53f3a04a6cc86bfcc4bcba425c6c43ad331ce5b3582135b32799f809d848f570cbe257eaa351d73fc2b0bc3eeda10f297b71514287c1e691ac84aeda9ab9dd1648c9789bf6834a7b54d6151ec2f9ae8c08e8d8dda22bc22c304be745842159eb0c9fcdd54f9759c7f3f924d3e146c1baecbb352a799bbb3d6f1ca5ec5ac809dc7c6f174d55cd22eb8891fd275da1cfaa93bc601cfd9cb86e11d77b547438244292ff053b58e64d2ca000e888324b1d9be1e03238ecb69aae983884a7ddb815fd2ac894725b989dda7a0b5119d6011c4b015609fd03f8ec8b343412804005143261177a67b5e17ba8a0917f323c3fdbd74072e95c691818da9ce66e9633a7bdae775b1ffa0694e3e59d477a4e977ceeaff6a3162b49ffcc34eeb2d54b3f451cbdbcf4f706c2a8b79535a43ebe8740e5bd5809adc3356cea56109ecc480215e356f4d39ff8e3588688d329adaf5de84faf7783f031469067d04707d2503ee164f93f8685afb8cd3fc2a7af3b6b8af982d4ac14105d62a3bdf4e8f9523c495d39f48776c922ad98073ad4c45e0fdf0b2e782274770e42e4834cc6498ec317d16f9fb1e9d2ef0b57ae6a3ae312b726338c199a89ee272ea7b2f72f77505ace87305f9f91113f082c3d056e405ca75f2a643de87847e1fa78adfae4e0ba4355c11a9a80f6d1ed826a1092abf71d49b731ac544542500f89d679fe523dd6aed21e5fb62857d9e0ae3696d75e8913b80b861f90653c4d178905e28e8449ef5c9e64cbbd5344799d891e81e3f3472d6612a8e1b2f2b9497ea32def18840e4ec2e7494871b83888d71bb4778a8547c4a8d234158e0dd8fc1c27395977f4526c41f2ecbecc92eb7a7bea2452696b38fb75b6f84728701103c835ed117b23bd89b8bc24ce36aba172f5c87dd91fde8b480d1827633a376c419cc208f305e596e96ee501d4bd61bb865927b194b2780f495df99f3db3b43ba1d1f58afa84afd149042423a10573ff30df2278f451c195ff4e73367b93c55afb3bc082e2dcc6eb64204558b74e5e05f086d768eb9d7e80298cb3b0f1cbbc6e1b6c2117912e0f6ffabf7aec7e2bebd9eeff59d24390d94a209e73479171e353a4d92cb443777b3b00f1cfe32ed731a95ce9ab3013e273121793015ce55afc4ba6b36e9a87111e06d75d22d56a00d493c535b0594b99e40df5ae78d7d4960f91b9038dbde124acc4665af0ed0bf995ce5a500678eff6533fbb217da859dfe16874a590c090b7f6956fb1d7720bc40af9f410eaf3359a5bd777cacc20d7a722f3f1fda0a24cba0982476f60cec8adaf0b2ba2d8dbc48a47a793377d19d5b39ceec477fca63a50c08219f67f133db950cd18a3fb9527d496529f2168873af33d48f0eb9c7d950d5a8c23ebd0effc27b1e2b30319736588c6834e4edc21c87bb5076c8826d30ea2d4484ed9e5970fea5588b076108e954d6aefddea9e3b1b9a9e062971021b2b6a8be8210025ab30209665b6102101e80dd49ea040a0dade7f7fa79478539dfb4d417e80dff6619aa67b62ea9f837a954b6d503535b1cc64ab59c8967fbd71b4670d8032536bb995cc98feb92d810417aef6a7eec287d1adcc336297ce8a6950dd72171a17f10ce6731507908a19ae42984a827992413115992c7f2e090974f92f0bd3c2483d342ab19ccc14929e373363c2831bf0248f2197859324e939b065e4058e9924425c67a894232f19a46ed398ae48389c7e93d74c001966840e76cadb487799da3611d751e7101516487ad2c700e334a261e0d02809b2568abf1713c533fca80be9802856898589a3c1ef79efca8b9b9bc7478fc3443857b68aa9df7c3e33d8b54d6149a29ddbe87873715117a73ce0ee38491d53221b4fe553debcb1ce2da3cae36e15eb38ee18a772e6b456b5b837f5bb905f666ec5bae2f43c48a234597249794101530885234945f42b447e844b94f57c449f016104833ffaa2547b29400e83ef3945010ee91e5c0dcdfe1fd9b752fccfa2ccea4652c2f5773a92452b03fed8bda21047d33332ab9c8b18a7161ecaa4a27616d786dd4fdf0a6686a3bd0928140cb9dc2fb1b031ce6e8168076171173388a6e700149956c60f69f21824bb71104bf5771aca7c186b49b06139a63ce95ee5b0c14e36cbdd886cf93b65b1e4dddfa0a6f5631732a4e5c75f35897b2ca06e2ec261df26c7521d6c0fe7194fe4f0e68afd9536b7df796440eb92a74fedc76a701b5092317c21b29871630080effc92e3d09c8d5f8eae91c030f5016178a19a82d9a1bb6060e1d9daf82521286cee8f9cf2f131eeeb723cd562f6052da2e5d1f3d9b8e4840f151056cda0e0d7065c60e12f6a0d13d4f05fa5f5dc54529a344459d536f5fde19e49b6cf5e87615220cac72e15a36b3ca2a0f6f5976f83317b97acf8e231774c3912ec68e98dbe12ac1de167de238cf8780b4bfa9236e893237fba67c85a6f15c3b6ea018ec8c4d9819c23b88e32a02794f2d1c763606e32280bb40cd764a6249d40f05ebba62dff6fcefa9831f398787d150d10b90ad49bcbccc21cd95f03c6a8370a0bee49835de3d7d5526df8dd786e7aff40cf986e3290490ad5d9e1f82a0b94294046425b6c830f8723087de48f874ef73b835feab4c0b1c096d016915377a6a6ffe3615643c4ab1f306f9f57bacf31b0edb7636b4665eee3bc99f0c9a13643edb8cf9ce1476a5e3317cf87bbcfee1410829f2d74bf6000410d9bbca23e96089990f27f886034858c12dfada3d5b8418680afb8a24aabad06699c8cd2ad543b7af663bcd3d78d1c12896dc24a719b1bff013ba32fcb5290564da54a004b5a09180bfbd8d409e6efaa81bafb74be8af65b47a5e4ef1ab31f6cf5b898e938667a04e63311d0f7fecd37c1b68f5f7278228e39e767b6fb599a3e57ce68d37d6f18f033fef0e864871a92afc079d1ff73b249720b1c8c0a6b99f52caca238198da56fd4e9a118f5b4da26491e00f40f67efd00b20a09f965e8426392140215c4b0b960ebc548abd42f2dd20bb887934816f31bce1542107a7df585fdef8538904e8a2ea3c6be265fa52cbada1de3c540968d950d0358b82968753bf7a0f0234f3cf69ccab21b2090fd25745a8361acb8377448036a9bbd26b9d4c4bfe1ec1fafcc1bab124e5a6f6a397fb3359cebfdae6bb130e2da70a5294daf95a7b7deabf9c0a43979d98f2601888420630ce021285c3b390218ba375336d5f8049299263d142a69941abee3542ae6519e5d5c6311965e492f53eaf0cf82b8e9c1a8a231fb9dada8246e91b82d686d625df297d52b93cf64ccd921137645425db55a857f46f8cf17e691d74b35d06066fdfa1aaaff5bff8d3cf2645159bfc3aa2171b86e50390769d8d4fc7b3db76fba6edfa33910e705d626df9a5acea40dd6ae3dfa67c4e496175b63981e6bb475e987e715de2a7f9e37f9c3397e736e4331f8f047fab40dcb7453714ce07372848c90dc6974af0d06d50fc3a5b46e631e98d0ca12710123f6ff8d1987282c2283c8d074247267b2be371529e515b9924b3d79edd1e5f8d444f9221755880456e021bc894b0d5070e3d53c70399041ec77cb65166a70950be0de7c68fc9dbc23d6b19526893976d79970959ba6cf1dd5b90bdfcf09f06cbbf12222c85d13e5cb382e1096cc96cece4b4cae296ccea6ec14d8171a8865c31402fdb3c99b663c54a6a76a3611c83516351a3606243b95193d1671312a8e09bc34bff7fbb7c07132835f6e1f41d5f2db327b5eb2ac3eb2286a79bbf46e9abc9c41ae5c61320eed578b6c92c4bdf259941da32687d9fda64dc2684069cd53edb435f5c3f76c8e1851dce1c82ffbed521ce9f10b10cd626f3f372354f9d9f5f4d48854e01778df5b903f3fb541c4cd19ffb4d5103ad4d26c8be338529ede77541ca2a7e603248d22b444047b69b1294c6a738408acc901d231873e0f7098d1cd220f0d9a169a0252994c4d2bf94e6569926636e39015c1c81a700445c209e75880622c351aa0dc6c649147fcc1029b3652abade3b00b6f075f0b8ae3992d93d13a6255ba742635badcbd7bb8b16b41445ca486172e9be95058347500a051eac6546739f9569940e3ec55d5e04aecb4b3235f244053e280bbb601b7a1fa567fb4631ce378e94812b10d8af011629a3810328b3cab4576a68fc2711a2d4f81dcdc8dfba1adc394c860da8b07ba005831aa93b65ddac584f8573b5e40d4bce6a94eca751889bc2c466084a29e30500e7d72a468041466ae093e3eac36ba7a8a45a61df14321075f448e4988bacdf454d59a09cc348266527281e7b6b181665e342cc8520c0dee254883256ba16deaf34157e191e72321810e2654f5a5287b5fee10294323f9fabc803cf851963fc50675a8cf42bd23583c93479f483e533657c0315569897016fbe311f5495980b924a65713120f7b1df7358a13a8268318d5a4feb6b5cc38fda5381cc6bb48f05d232fb98c3d8f2c980780960a2b10f80cab8d1c756b9269ab8f110af62765e25c28a752d6bf8f7be42442cba321682ea034955208c4b719e823c4bf64e10ce03dd81b1a5b998101c31d9c06c1f94fd1accc6e5066019f7bab6e7541a7560cc9a75255f17a2f37af50bbfbeb241b89a596d7ed9a21eba899151350f61d5fcf7519d907dd7564933653d274cc5bc4a26cfafe71de92e67a61cf77659b69c5402754b75fad363469523c2d6cdb32f5ca5812b47d86b35c4d37ae6e21288cd4b75b16eda937d52fb0ae0e22aa99c59acd8f0931220e6a816e51e3d114157a3897149bd638b6db784aaa7fc2de6513985d77388dd310ae8b8972edd2214438e388c38e97d5627945f40e7b43cb2498f8a48dcf9e8958d67d4a951174fdc8a1e9d00577e514fad9a54b151052e81b4ae0a47fafc8c627d0eccdf061789fa08e368da3ab7ffaf9bec9463654ce51688ce196333c9663d1cbb9c200f939f3632c8f5c9d12bea6ba3ded7d33b32a8e0a8f26ca34f24ce88911caba9339ff4c74de4d4978848003aa79706c7b74b013edc096fd17a416da4e9a19899975eadcc1ca3d64820ba03204fa6498362cdb2a78e63462c0a6975fdd7d25d4b9eced2544c62cd48515d4a58b78a841b42bb94299c4ea6d400d6c8cf4279f470fd7b60937397e6b28229f838207f1466972dff28cacafa9d661161288014ae893636220bb60580216c19d36e376fdad09b63dd937fda3580b0e782153a999996ea4e909b7572562f93cbb6000c0889019494e9852f229dd255f70055ec45ac4e73ba544fe38411564677140c5ac8ac137660316b4e278249f2649b2b207bef843d83c661183dc950ee6609fbc4d8f729cfb8c386d24482f0989fe3707f24737266c57e117d9b4ce644721726cfe4ce7c76a61f01e26ed55a12f8c4b959166bdc55b201c3af0d1014c03cbef68ff4cce3517056d47436261cf64380a6889f64f67d91735ae2d686ec310b364d8fa346886c961ab78d70dee9b0a4eb45062af4cc1a45b94870f99436d51aab91450339d1476eacc81865b9333ca0f42e0be9c5464491400020273ae16de924c9662af1546f4659c686cc499e0259cc890e6b023b45696988d1329649ea31985d882bb7fcbfd14020428ac806d1a6c12093633f98cd88475c4c78ce1b23692365ccee9b837922a805a44127f16d4da64a9afa8e96c298379e7c7844ef8cc4efd78f07d9307395c1de812b2871bbc13e12a45974b45396d04aa2124f70602df53a8e9d2e41275b5c4d0b7287c0ee4caef860a255e4b9915e86f9b6d5cc44d49478164769306e1f4b7f10c497595cc8397480ab5c088d4e62232e27f5f3a5dba2ca438188c75959a7eeff70e8d63e6087508b3395fa00adb695a9b0a64e6ece38e08e67b33854a862cc3c99e4801a69d2f4c14a9a9785a72433bfdaa06e4e2ce6bbf37be10b8d611bdc04ff1a6251e1000cdd195446e90cf81e158309d008cb4ca2a2b1c3b6c25297d3d5ce187c58b69e85c013d3b0bb9145cf9bdfdd91438050cd4bf6510508937751d9e982cc53fc9da841cd30eab958f8eedad1fb6088f660cbd6c493c46d14bfd16aa6f01de8093c962aedd29dc6a5819a0ef7ea3e1716129c2bdd9d1c507f4b4f7678ad09c92d9ea3a055c1902a62f2858603f5c20c6c902212e3899f9073619180fce6f8c3b02304ec85ef3965ae38e30845b37463795e279153a8610a0e2a785d94899c35bca647df63b39e0e3af9a46b349300e8810923ec7e9356bd54ea7b3f24a507c074b699f8c9701921c8830fd8d607012bc66857d3b2f519ce86b648db81bdc66ef53e3f1113d153c0316eb378f80c8ad8ceefd24eac3036a5038e2c7df51509cdad1110b2f48c0bc95e41c9ab8f18bfd04aef5c4a37ac445de1cac5f7afbb2efc9fdc01ffc4b98134fe89d6bf259f00a0d90abe6d3e56470ec23bc022cf60dd0f41299f94840d42ae15770a54fc9326fcd7df0ac4651d4ccc230304da01ffae1738578f27913bc1afbc2fb80c6c8c061075bafebc4f70ea3cd11a732e6c3e3691278d5cc2467269d1e07beae06d73422faa90e14e3470c42e8b1e4a88a86101fa247f098d264ad3411cbc1b3994c4cf49edac9b9687c10796933ecf3527866c61c73dacd3b5a44401cd5ee00fd26d6780b2f11af130fbe46cb800c2ca6d31214a3de88838de781ca3024bbce4da62d114db1661198a48dd5da16a0e731d43f90b0ac6a10855c42b969ed188d39cec9040349c59f45e0542996cefec6c87c6bfda42c53ed7be837c684cd933468172d2a4e90b4a4ebc2d88741dbca3ff5d0a9a8eb9f99cd0d384c691e4fd7526375161ec6db33d6ceaf9646b43fb6e8596f235c2b55c9b1397df3770c3ad71fb0963985c3e048e0b857e6a821680a50429d72303d7f79a118a0c5b5460ec0e7519d9d3ec0829edbf104061ccfd0f9f49a2c83e03ef722a374923e055a83f8c60576d98b4a07766e7972fed737a222b99779e46cf0f7ba5e46bd8ab1633f2ba80a358f742eeed0c140b95bbf0d15dbdfd11b6dd547e384ded486b0bb4a9ca5f530d1c039b51522c052d6bc5322596c12c1a6551bdc2693e55da9af6bcbea3890f5fd561e780a6c8276ae5661e9f9b6e936305468e6b20457d32d8980cd4a922e1a29b64e60982c094358e88cb814114b0b18524941a6e2f3b694d78e95551bdad0737b4fbc7c006980170200209cc53d0888ff7455fd5c8e92a86854c9ea0f1c66bec6eaa32c904166044ead403db6ff67b36f019e6dee797cec004a8c095810de516dcbffe85262b1beebb311031b7cf014ad00e49651779cd3555ac871de2be9340895c60cc84d7ac1ed092810dca4df0628ffaf600a69640df43ace46b7826d8601ff7b1dee4cc11b5b1716171e8f8f7f565438008e0088f943b20e299e0a42e18281404e402f9e66c816d7f0096f04af3dd5db0db94fe8126e03f40f9d7b554bab6e678514d19e4d6cc3e12ab3d78f369b7c06fb818d1500d59ffff1191d92fa0de37943c1bd2fe95a2deeb1bd61b64c59a1783823f307c6d9e7986412c80f5d3abad9a43bc80ecef60a8eea4acd9e2c7a1f570990b811cff528e2f8c8b284b46213b6d952aa894f7947b5a0476b3c8512b542ed641ccc701010b8edf37c336a196dba1f1cdcc48b45b891e72ab3d52cb893ac9deb5b5ad1b606352fa6488c8fd20c8ea0eb2e7f346d97487b2308b9e9c5af94af00bdb6b6a0aebdba5d592ffac15a63d343406db830a1992fcec9f0cc25b160dbac732e95c519df25dc329cc2c17d8cf11aef50d1c49da3f19516630002947c0e9a24080646925ff44187e6f9b86d1d952a7713879e82fc9bd727947408eb4b5b323f407b0014e7845a596696c9a9e302021a4347067485187b74e8d9da685a39ae4bd48b5e49bd5a249942d6eb54aa28e766286ae3305ab806f99ffd67722caa8848a6332d1de48caa35ef39b480f4ae6c9858835b7a2425e810dc0a482cf65666421c82e9aebf18526c781f8908ac329d6677b4d2853108b56e841c7652c9acad17d0a736d41ee40c3665b899ed9dfd08387463a308e5c79a872e48952f3fca476dd04041d4213ed4481ae8f3a52710c55fdf781f5f18f12936c49f32910d85afbfa4598bddf5f6aeb1ee0efa9a562fbb3afebd9aec3cff697e00d22d9d8c0cd0a97604c33bcb14599817294ade947fcc644712d757f0cb448a0d35ed9ad3d41ab09f5e3c22ed9be965748fd07a38829838a84e256fc23c22368c86c39408fe4685fa7e4da5f5483b51dc611726b2ae83347151243b7b4ab43fccb9af28b238baeaff2c091573155731c02d668ba34a94b7aa655ded71a4bc5718bea64eea993bea04e6a0e8fad0409f8e7e0b5392fac12dc0f2143a83040cbb00185c2419d177604867f65b1d3b0b66f3e0226727b00844d4da4c4cbd2f54f0a960bdeda2420593e834a75dccdd404e8a5569740f686fc36066671a6907930a3a029ade6d6b3c4e84b790596367e34075596454394ccafbb8b0ccb8c855879976c8ed4118281921338c5df879702c7446cb00cd993d04fac277125928626d409e6897fc20c3487b448f527e6fcf10305459e29aa721fba9f0b135786c48f6ce5526476b7b32800a36e017d5d1f0236fc3ebb66434adb43803fa659b98f464d397629e2297a1e605a41969fca4a94a8ce5acd21c38028dd1a4b2c3a30438af814f8f306d970bf6f38c4baaea4ba58e2dfe3e8f9cb2396c539549db071ddabfc5834eeeb1bd46e96b46cec98387ca1f77250d7417fb46763b5295882d10bf6bb85875f0d7db0718f798344645181a698073d498d6322b60d49300f6822100cfbb1270b5113a43fd29b1834064a9602db45113c8a139513d60607f2e74e581e3ab23d2dcada18ebc63a1445400f7043ba846164a1ae6804f34c5dde1eb83d30d118cce3d8047a381a3f26eb42b0545bb43386181503a28379e83e45631ef30db22bf6518b53984bb1cc633cbef6e4867d340b51e5feb2c37885764485cc73677bbf57ecf8cd3c6785669e698b1c018087d365ae6856be072d38a3515db018c2f70f755636ab5826098b7aad94b3a91bb6c1a38d141871bc858db64b10f3d70af25e396a14e5e7a8d69d67c9f473d56f6373553f8fe11d03c88176ce4081ab908a754d06fd3c2f9d7a1c2aacee690ab65f7f88a107abdae7a16642272a5f0b10adade31d3c64c5b6441e5bef330c745ed7427aa2e07648123153652eb6c6069acf29398c1e0fc33f9cf3b117ace81ac5962c2b1181f45877df63aabfe4012e2d4382f4282d986a1a3df0d50665bf68f1e1e9110e486a40af305db3b1df0ed57c07b30378ba9e14287953fb8b47a7fdb9552393b308ff32189a7bf5f970026b53c4512ddb5db5f48d850b95eec78ced9e6381b62bcc9fe358711eb7082432d7a9ea1107b4c5b8c079eeaac483fd71452733e0be36f0cea752a1df2a739dedb5fdcec20bd7f1549d554c4b6d12948ce1760b0aa44e039a6051c08968d38b87c2a144ba02d13f6b72459b94c2bc9a9fb99f9da64f620d6d50a8df07f89e7b131422a49220ffcfdc17f456ae0cc22814f0ce9958d166a96682e0a9fe4e0d1cda5829d5164b7ca2b5f3f9ec52091ac84c044283ee3348e409aed427ee83d4c3ff650e7def796dce80e4ab89c0e2f69cd334dba7dac2f2785660b0bd1fe22f4583f1793cd772fb7cb0fb5c1abce4f6fec38206137b8e32f98cf71c023d16d901f64aac1a87213241c24f48053d2c0051ba1fe7873910fdaef1513df5c9d994dcdbc014aace0fa52bd2c8e3486af860dc04a83e9d83fa18b35dbf0c546204a07a24ef0d5765ebce51ca3decde2b8540e7dcfc0b8572ddc0579264774e5e36e6dcd10ec178b0264bc368f69fe994381366183444d4b37bd28b43938d1dfa91fcbab52b0a7459fe398b91911830aa8561fc291a1c66c42fa492dcb71a07d317acffe345f5b88bdd1c14193b58f7d6a3322aacf44eef1062bcd970848bc854267a229288bc27d397f04dd34afc67b2cd2b46bf6dd4cf9f4ad82e73ce3ad9ec76d0f3d3c2f25ebcbd8a4effd43299182e460fb360a5559699d659ee76354dfc255161f0b92351c43e96b997e6748d2d9841906f29108d6cb29bec0bc2179a9f8f829535144d315929ed962c5e0a4f8589795e0801095325058ad3865e7402f8ef91329fb6379e2b3a724a04631930c6b2a9d2898005a9ee3f8014e0658282a28fe297b59272558a3618499651cfbe16d5fa33b2d9eb412a73a1ddb3a7330ff909db03e95b3e15ed01b4dfb8c2ddd90b0a6e41bd31cdbcae5e754a96c7aff5cdf1d6b66dcf290cad68155518228b699ebedc2a5206d254108e83eb39aff68fde37cbe22b6b62428b16e33e4b7d89b7589d1b97b8ba1a08b8504bee7eae2ca6b30a6a18d7adb75811ab15441e7102145930868463b5e3485430a1a35cfed76bb8cf7ffd2977fd0817f233993757af8892641470fd5ca0d1f726ae6915c52c3f5970c032c4681dbb8b39bc08c2027d9d3a99de1b600522f04975edf9b2227f1e8e218596a780dffb1377380ae18c00ed4a0dd4ae108e93ec651e9ab48bcf6bd2ff20d52232d19b50eba15de4c47354fb9468e53514f4c71099f1ba8fdcac725834d6af35e9f2e9ed0c144264448552f027691ea59a0b140ae9c5dfd26ace1daa0494218afec37db521ac023f564f6046a0df4df14ad248517bc81fdda242ce35a5bf94ea227c53d0a06aa3d6e378fc15944a6676046d22646a936332861ae506cae8cf1e4fe21e79be61052261a96b52aaf7f2f92194741f4027caec0178f2d935ab11d6ec51877aecdaac03f317d0419c720d2adaf5ca636fd7b7a60acabe97985d8c60c6a435b4edfec25bfcfd45fa3758db1f5215d39bc247b36cb9f0774575b5fdd8527b9789cf12f79d197626674d74f4714aad731ea33a14ee4f55237db8ae8017788507bc7bf77b56bb7b2196e00fec7ad19cdeee1c681b41b84479fb52282095eecf405c5f1da8d383cf412620cd48595410c97771a301a9d480dbf706f92574f7bdd5d78ce93a706619fd1b149564870cbeaa7356b115cf88d7ec0fe3acc865601a3769a5bf396b4958739c3cb7a23237dc548abed953192d7b291d47f61cff63dc120e3398b28e208bc95ec5431a1e0acf494fed2d431d2ae90435b912af30c8dc1fb9208762203478cbf71d5d2985588429802fac325b17d5d15317513e0e9a4ef11be16c111b6e978ed5fd44d04858e354393d7b60747b9297e01ec7df9872d854eba28efd2b3ca7cec459d771e84b26e2afbccfe4442b03ea4d966ad943aca0327fd76456e3328925b1d40d67bd1951104ac2b4059ff03a6dff2df8cae59674b5d06783e07300ef072ea827477d0b3a07a843adb87baa8aede2bcc78aa55cdb9dc47738af21daa1e6b4b526da1e1322f72142f3b8019894eaa6cf60cf1fe9733caa8fd560326552ec2618ef8c126d91d47772fd365663d2bbc5ed047b81a643fb0eb36aa785be1b81311579e94f213e0149ed7bf82506e1354570038eae2b2e575853a989c2640343c7acef99763faaad44c30509a9623bd393708f76ff5402b4cb007533d7dacc74293bf90266e65286f70db38d3a3c19d12707bd50492fdba82a459b5a2799cdafdd60463ce6ac7e53edf46f2c9de606d8030b3877ad24d8ab158fc48d887a9afea62a219c0fb4c17a12db96895dd77293cf98b39bc23b2c4fcf17836570b620b179f1ed9a9ccfca1df6e0a8a6ba44a9374e6adecff90ce1a60fa67404e237f90b80845d51ece515557023f93180e87ea461de0156c574e8e5e6285e386345dcb23c33a9fb074e1ae352614608c70f8436c7944fde222d0228a67cf1432bd4e1465b9400d2a1948c6441e79acb8b1a9defbfb5d1ddc1ab04627f243d0c6694dde1ebf6bb529e647a77074407c85c08149d40d2cffaeea46370ba9481f7e9925338d667072b16cca8baca11314b7889d8a682c6ce734706f900e70239962de114990d6cd80984c1c86b42e56143eaf897d08be5921fb1ef7be7a0ea12089526294a66c1ed7de442c5571c6d11101426f38a908ddc3c3f2d2505767657715a280802aaa8e4cb7c378fa5e82732a10414b5a1e942acf86eb1c73e095587d2911eb10e79ea5737472bf84bc8a5a22c708f492ea9536f75689f3752742530a4b99f5a5b50e113ae50f0ca5992267965fa343b6ee09ec62fd7ad09ff202d7dd4ff0aa0f6ee9bb0cf2f204a00d9c57094c9383b6627fd1d4a187ea50404d7253bae86ee055d3b84e714aa667e2ea54b58aba9fe782de6e6dff3aa960928d2dfc15546c5a5e616a16b49a107360a688f50ccd4b24a21f4dd495dc137c1342dc01880e5d6093209a1ccbbf6da6478ea34161661763a14d2909d2b4ff1321ac58a9f69024fa1deba2bb7820c2ad30f35a2d48c759a2d4c1301129e069ba7dabd15246fae99a3de24e7f263e2602820066917566f95c64898029d00d4a311340a4b24ad8e32ce0dd734b13a44d24f00f22aca9301adcc3050f0c469beabdbf4e96822f25e26cee0ebd06fdc014302f4210bf102d6d7b21d876c00b8c17de604d087f828de8f8e3078585d060832ceeff10bff31dd9ea58b4c02090726b1a2471ac783b33fc0a82787ae7b2f9fe4d7e09505173bde370baf29a83b9cc2090e0d67c4a52a22cfdb3c68056496bac9a196eb5ee7ad55f0c6811207f9e62870203b6a985f6208450fc25f9b2dd896d0203fdab6cade2b69df6347d0ba9428eaaa97854a9bb9634fe155f494b739a4a0d2f201ab824f314221b0133fd257d42b798aac7528c29787773a615a38c8647308d3aed8cfe71f19840435e3e243ced660ede94d2354bb69652a98578778fd35f0b1423a0407c38f22dc96b5b0899a2b6122cc7cf8d5cad1f16e8033636599b516f2ff70f917e87d5c7b6612265c39a5da74eb43aeff1aaaf40aab4efab1a33c6af75bcd431bc33a94a88317460b070ac398501b66fcfb646d256fdcf339266f0e59624b72ccd61b5d2216491a539530ed5aa3c3e625e59b85ec2f31ca073201b80cd87348677c60e7588690b7093a2ff10ef1d8a8b2456257a82e89e8e438a877d2ce1130b03635eb7e556e859ddaf45682c55bcd35ddae665ad82069435b578ab04f4bcaeceeff39f5b64b1c60fccf6dbb59feb95bf71216da21d2aca176e3f0a3589a8e98ce9070f8340abcc89b9688b8ae99d7ed4152a285a0af3ba3278379b3e94a01d5fa8ef9f921d32754c4c86f1ccfb01041062b5faa4921c97af3a7697558cb70005bbd256efce43666f8e765335806729c1ea5867cb16b614dcab0bb729ed09a36b22c749121a57d59f7172a74269dc98b8d25ac76c76cc2e2aa75bfb303b4482298c8a23157bf48e614c8b43306ece4492dd8c3a39507c95f44e58f67f33debef9920a9a1c064b5481cbd740fc97d123189b0b9b6dac86e8501626a42bbffb5dd6dc058f1393ba9115ad832dc9f26f92ca45251791f2d6022f23bc7c6edc2588bb2ecd962b7ec07a8933826da903b132eb0888e8a201011867831bb9a2bd48637b0377b45f712071e80c9d00ee8d9ad3d678c1fdecbea0929ab90792d8bb02f58e6de80511fc5ecb5d811d01d378897d4eb77a1f885445acbe5584dcbe337255cfff325ada1843db37b9fa0e815a8c46abeb0c8707062a8ef81501d46565a591d2cc4de466e13b66f6654726625560d302d2e787275d448c5e908547fc4911b6fc33d8fcfb5d56b5ced0134cba47ef72632ab61e413cd991e521ed23f1bd86aeea2d7f3ca509e9f7b98f4c54e01c40b8351032a0f5fefe254f9f603ba7a7dc8c915d0db932e4b285e6962f2268c95adfe25b9fb8cdbba665dbf1c2cd01247405b14710867f1283e949bf3f76ae662c5b106cb4b0d4c4c147af708ade7e7ddc30a21775cd115640ac46b91f1c228bea8bff37287b9756dd932622262d7252e8823fff227e660b39eec6be020353682786e74d4f8e2a637c7333977bab99dc8541996d476e0f97404bebb497f1a2af3265b016aea987442a90054ea674e24a4531d005ab9e31cc9585bd61a18a61bdd081d69199dc67c181d9f150b08cb4145b8df41fe711cb5d45ecea015702363ef3d0cee59b90802fa91e8b7680bc0e18b511591dc6c74328d601dc5d9baa79992bc27173159d4ab45e0c662dc1a69e89e7813f63334193e09e4fb35ffda5e6a37c53300337686228720dd4f83b1b6d75f9184c2403d03a8b66c56696a386ebe5032861c00717988b109700f5872d9596a5a8e168f019e9f3f735b04ca9eb9beac64dbeb1ed9f3da995023421926491db2157e06b0cb746705c373c69dc4ff68401b32b59f67b51c619ce35624e9503ed3f8e3a8bc0851b08a40faa85e3b7525ed1c1fbfdc304278f1c648ccb88b4dbcc2eb7579d2f471b8b1044a0a22538285ed2697bbf35a8d55f04c4a2e8a831d3721eea1eb5d1dee0a657216baacd8e21dc5a305c7ac42a32ef25ef885d29341a996ae93da546af6db585f1837b552150992d92e0fcaeb752b1c4a51411ec816caa6275de279ad54050775255955f2453d579ab27ad10e0453443885b38aaae94fd4486e2bd40371ad4a55f54c59c996867c555707cfd86a03030268cba32f2a58f0b115ed93938e0eedfce3bdfbad5dab048a85c356e405f837af6a0476e7218018d9358d9e77b23ddee14dd267b9f7744966d39deab9d2722fd2d843c2003ddb039f9f7f482f17b16af4a373f27a82bba2a0ad00b8c384906cc0d8073ecb01eb1cbf75228906aa7d128c88f95f3706ba58214465721d557cb8787f2270d0059a7a519fa7c63424895a4c635ef2de94c2e960f40a2305b40486f6690305321ee618abf1482ed6254e08c08aba25b618ec1c5bd3e116587831e5113e04b5939275994422e93b9e300bc1e0eb9b767d5ea27f12644d11082e9e9dd6c075e91554b3df39190d58bc94da5c58744da484c14b561c5e9255e7e76c2cb33f0fcc56e7c443a04bfff44d9d7ed0f9e0dfe5b75617bf9d00d29bb6f56c6d5f53f3c2146bf7d5a1be01eff46963129b64293477115cb553db786df50b5eb4583c88193cb39f691bad31c50675ce181570e8d511c7fa16ee4a4e56568c78c423d40fb1b99402d7747a9fb354302203a21cd3e80506262c5841064725a470896f17e22ca97123805d8078552f8c9782e29d1a66342f2093563fbfc1be96c0b46c71ca9153b3d3aba54253171a2ba0be10d56e438a38a0d4c42b6585277bd6d3d688739b7692a80e9d7813c84c64326f308e0b6ed0069b503608a9a492971aec520c35d5d995e2120c170be7f51ca6060868279e7f9b9889cfd5a6de274f23d792afc92657c7e4c34ca5ef45f517da1aebbfc9b04665c33821fc770f0b434a1ff21479692bdb9feb0b90c372775ae241daea51431bb69c51edd37a7ba461fd921c56ea409cd18759b0201dac030124ed36b221b6c8dc6bfb28e0bca928ea094d7f08fb67ba39ee54d8a2ff4ab1aa11fc0527688ff0f8ae962a518572e5ec0c9a552a5fdd60f89abc14e519e7e9888c3f306ed48a20c4d3c851935128cd7ac97fd8aa804415a0e380705686653d4605de06eee9e62f768e841b3bf9bfc2b7374082f9a3fd4f43d76ebcc71447ef3b8d0d59b116d543fc89094a42a5e5e4f46a7eed1484eb15aaae6371c9688266ad19797fad7ab64edd13010ecdc30481c34a1b5ddabde6b5d933901ae708d71368c8fea134130bf19b58375ad50802025e2261ce8158915a9a0a739b4b89c3fc63f8b8b279576a0ae09b773a6f259f186bd99f0087a136c0d30374c962cb38e39666d24b17923177d79a2d50f65b6e12a2f06e185fc438aa4d0483950aed0b5e474806c821309889cdc56ef55bc48cee594dc92603b86c92e12fa5c2995e14fb433e7c45ca970148b301092ceaf154b36d1d4c1c00512d5062eb4c351fe99b07ea8ac92f48ce076dbb09f5fd2a41c3e6b77e593ffc679ac7810f70d1cb81bb8a2e05e5c162600755392150f04feac0148e14d0ad0d6eda4bd72d79838abfa1fc0955701e73b614788ef2cfbdd0cf221d78028a5b53a1c5c52e1e054b8e0867052e6217e5e5f1671ad58ff494ae0ec3e3ee5eb2decc810e5d51f1b79e1b8aeb847f15059642902495364824cfa7a7706b68892014eb18cd0d1cfbdf49568664b39f0a9efac50b26c2077a55f393c209ad02d5838fd96e5c5a1c3a67b51272607c6db9903aaeade9c65b7e4a23b2ce29281e26236c634ac746ae5a949d27e6c52dc1fbb22053f8ad69a8fa75f5e92040d7eb16c59c9d08486a41168dd15abb351744dcd5aa2c0d55035a1ea415263ec0765967402fe69e97945ea608cf3b7c6e8b522882e725ac82b2bb0c1a82e7506b659d84021f9f6bbd1e2f6285dfbe516ab10f2a09469a4e7a182bf132777588d72acd11613b434e14b8e3d2a97fe831934f8e8b33b5a162d31bd06784ca242d8383b2482aa205cc8d218f5fc01beb7fc3b23a1a28b1fc644759fb75f383d9ff98068ec68bfaa18a83a8ce9dfdfd648c688373415f43f5d9eea2a273c065009968086f7c2419ec6b6195c1928ea4b777418f9322a0a8f8e8a53214ff3195f361a05c414928a8d781138956f636d1743287dd595fb222ca789a3246ac8a6bb1ec72c7cc23f2cb86885684f226da86cc36b205078b8aac8d9065e8c68ea6241c467347d5c2eb6cf2dd4a1f0ad3a1cb5ec1992ff2e5d2734cf00477951c4640f8caf534eb1109cdeae943999240d91018d9dc2e2184645bcbbd53b5edeb06ba9ae416dc41d000e2f8db82e2613ca9c213617d1d9dbbb92be829759d83405daf16f23956c588b379f082c363187f8dc39de999a2baef599e7908fceead0b8a31a57a3a03bf671479e3cdff853f5f8bf5c600c39a6c001c53c986fb4bd64eaf79415d813f7b02a8f7b9e6ef4f688602aeb47edc07eeaa7aa2e5cbb3d6359052f0f54f764b5c4e3fd98d568f39adf05aaa0d2f81d625755298f24b0024c7520db717045dffc027aca23724f07fbfa12b2111715ffe8222b53ea5ed1a41f44b98ffae41310820e012c8b397348993ee8096c74504c84a04874ed24d53aa385702c3f1640d0c613925abb19c32c19ce76bc92574639024694b8eaeceed1b534349478092eec6a7e5067692d18d749308a1f1413b6eb8b2b0974cda54dcf7e085fc35d21951ca09947b30912696407541a86da3ae5e5aa24665f5c06b5301e43cf1ff59fc6989eee226f3e6ef74bae9b247b89ba043062e3f43f1df0bd26644898e2d14088f450e48f5f38fe195dc651d8b1a28fa4ed577efc632ed340e8a3befaf60edf1602783c345a8efdbfed0c17edc36d4e21e5d043375ffc535754b970ec21be4fbcb179b1d76e62c8aa8d973d4e0c92dac14e30d202f71edf13f8c490ab314f759c0c8c8865d1f074c715876a174fe2d38b19471f44c54f96651b2ed8f0a2fde633f7390878135fde7db605940ad45f51b5430149d36eb3b111f8fe30ae41e5b4286f8a11079747561a6c00c5b01fb2592552208d623f990e983ab9c0bec6ca6415fa646a547c1199d69ba776e4a6db820824e73bc9c6968e393d6bec596b13f01859b9a4507f4904fe56679d203297896a79239d6d64a7e29bc52e303e9becd626d0193e3518e16392d40c99f448489e8c351b1e02d32818573b4105d1a04b0922c277efac14d4b08a41ac8f820c4cfd9c46498473bf414a32d24173d18b2b9247c84705dda411fd85f7fb55ee79221a13cb5fe49bdf858bbeba9773ed0d614b768923525eaf2e0eb70dd533f3747504bd26724e92d788b53ea59b62d422018e521b1c01e6c04af51824ffd859490491ea84630ca54342c4dc357741204e4f6a344f86eddce7a486100305805da52c32c55a4583905051082bf8e6d42a58ed100148ec329c8169885211dc3969746d213c3f100c23fef3310431ec7d95aa17574d6a2595931ea5025e223cff0486ab8cf44fd172f0b613fefd352c6ca82abb747058175c49712e658d3e64852d8b87818706c7aca2c70a31bf49a5dd22213fe7ca2cbeed8d426962ff49c0d5b765ae2cd7433b588df2c645d29aab59e96fd8ce0432f731116fac43314b8029f12f34bb60b50bdbef07d5feb611d18b81eaefa64b1feddd4715896d847f7b21f080f8f7c0fc6d16a62532b8318c0dfa9f08462d6058b21de6ef690f6c32d86fef91af4c46dbfe99e6b6b5c508885c6b16617f446b1dca33f9d848f4ea3f8c8d53fdc4e97ba68a82c72283f05bf1a30f2755ea03d7af7eae475a783af373a47af9841f343323d7877f2461edbe9529b422e28c06e8711bd9f965a9738174897da88980f7b42bce5f1d0d2f5b1e8bf0392b0c51ba39222ab40bc058d841849dcbdb43ee505dc41816a420476846ff0a5e40100484d1cdcd9abe22f36c99e607b63242b568e4c0d9e3a04175cd70632086fcf70c683ff2c6a7a3a5744c050d6b28fb6db2fd4c2530e00d19294438c29d7702beb08cf7b5a0ac1f157549570e833294a2f84ccec88894382f251e3f9f45ada6cd7cd0fbd4cc0743c1998bab80dd11a5868977835ff510206408077c358423383bea1b27827370c41ae3e7d296c935fa1a551612ea543b20a729e893721140372b541b01c49c941c3bbbd6497693f53e3095652970cc80b63de38695bf1029767ea491b65adca36e2cd34196f3243160d31cac89edd18101e091059241254cd7af13146766b852500b1a05bc42cc5394d843c68096891bf6ae24ca9ccac8c8c85cbca268a3c05ea2b361c69b3c335ebf05d1571e24f3d2680441e17aeff3e5c42ba4474bfeee946ea4678bfb594b35ef57a77371ce7bc464e75e564fc5d7554d52032299b374f49cf91954f20ecc18f757f9cc22fc60f97d50a5b9c9b48a2908998563e46fac82f1e4fe8fc014b75d6d22c5aaa06ab1f88c4ba226a5710953caef25986fcd35240c87e319652e55bf0e75aa3b09208e84be7e4c96afc36dc895befb2f9104c0917d7811c38353a530af4461dbbbc0044f324a091817e8ba782becbae149b7c4b99c94f47aee86ade9c69b913af8a87770c1358c6c964eee11c61798476255297c2cce75d6651d158459c1efeca5cbe72d7d343b2f0fbe9541e38353a192a8733eca48159736f0c9f5e98be18b8d5d340042151e93394af67ad620ed8488550865eb7223d83c5063e3feeca55558c91d60afddd220efbe36f467d05462dc3b6669cbfbb67fee1ce7bb320693bf5186db413780b9b97c8838a10cec60c22c060ee76802326c0991b81d22d4aef214a933bdd46fc8815dd528502295bd6dbdb954cb0505b8106ab35a0841bd18fbe8c6f9f0dfb93952850dcb3bcf4f65f00cf108d416badefd71693c612e60096ae97440a591375bcc8f3392974df13056ebc45c0937e2c76f3ced51351ac1db51dcae3b18a7c121c37b511fd9c76ccda0f797d918b63a5632f8f796a0c5ee107b5f75c293eaf8b33af9dd63665b8b882b597e4014f7419d7abfaf4aa147e605ba373238eb9f1fa43e14411fab5dc24313c90894b97a612d2e7ca90ee7b7c9ed2bb422b7457d324de65a0c557c09e00663775e1294385f2057c08ed4b83da0ab7955bb73fb9650f44f0629c8c9a151e2cb43b89aab712e282c75a64cecc3b3f6a9353afe841058ee2c79ee685a8cf953069053114bc977fcf3b1075e91fc64be4cfdc546e23861b5c2f56f70bc054885d34e4d2b2cfc9a8cfc9739c8793935a00cce380372487510ae71c4a87eb3311b681908b65c4e2a2a18dee19ecaf441fd26eaaa9d8135e2069330023a133bb5d39f8709b79920316222e1e0bc21a6aeabc6547a5c716d67066869f98153692791dc3ec0dc00874262f7c1c6148fa5194ecaa9d92abc03a1de569801517dbba989b74caa653b8d01b2088e2b8c0aaa458780097c2d067e86bc9c9ed14f3499a5a57c4458d4480623f8322549259052936f3eabcac9e15556c0617f71ea73817eb123165fa237ec0094b655c6d4b03334cb596f573e450bf897b4f9b4c11b7c96b203f28f848fc2eb3a9d10b48776633544c7a404f846981cad71da41e8491b74ae63f20f1c77fef77939fecae706aebe8aa54298fc42da0d015590abd33beab495d2bccd6c30849725547cc9248d023be9292fb8dd8b4e519e0967e1e07bfd88857c2cd00f8728ee9680c97358c4066d771069de587bd0ea1b88acdce40dd1c05fad41efc00e17a5d971c654a07209940ca420ed93ea2756fc195d62f5861d7de3e4b6f2e72370981dd326f421f6396c2ae3b145f46f60a61d4c68beac40add0e3b7602638d5f6d268da944fc712149cbd12cb0c0cdbfa3e13cc034914b0196febfe7f907534b5a578a6c622584d2cdb3a200452245a9b0120939e720ff58904ae2c2520a346580cf8c8a1b6b2c148551ae84a8f95d17f30fa494b45c294a5991d4b47b250f1138a6f3a5e8c585901b9e5bd4872b13fc9c263d716f9dbc8a41458971c135b794a199f78223c230aabeb24c8691d4d471a346248956a52441a1432ed68826e1aa9449ea93db715118cc7c6af954944208c98b0aa9484545c3602f58592fa4fef301bc476232038057c4a51796ac4c29138f296fa4f17fafd8a888481090784da9049a327fc83d0b2cd5286406cbc38e877b5c63cbb8456bc9829d7daf7457d138c4f59aa24958dcc494497e0405b968e3a31eb956d7396a0a0958800ce53bf3f6bb06604e4bb48235fabff448f983bdd628adc93a995b08f1c58a63aecbf05b5975972da0efc5cb3378ef8721357e1ff01decd5deb5bde47639ea0c2bb777167df6cc9825a506e1a9b03cf79448ec99b694100a0582bc2b1afaefa02497c926a24d30f2d8fe6669457004a8814973ffe298c9b0c1e147050336df8e5c259b7fbe1db4021eb477b894fef0b03e8c46da61565eb46dcb6c2de3c6ccd956c7b461683d860b696f1f3428bd55579959f8c09407c0abd0e890586b058c4be6470a829e454651c39c79c00bfc865e3a3a48310000f9c63b912f7d0574acffb702cc2cc5d638fd71c18c0380e451ae0cdc2001a0a93e32876118d65a590d92140a76620504922c4a0f3fd267ae86a840f3ebe218982aae2408a8ffcaa57c232ac9ab528ea47ee77499030466e07a8bc4d6a558d64cc25e005f2233e02c0ff5aaecf82513cb168b2d1432a4353783d027a4674c51922bcfd11301a756e882c404e430eb391b90878d2e8012a3c9a3908b9fa84f952389f98c29b6524fc28ba91f78e41241862542ec1a5ba0908f8a46fdaf25ba73aa3e59a4baedaae9019088b29f14291ebeedccfd1ec65af4667f7ac07ad7cb8894d3182b52a9d987d84810045f568c2262a1414b97d4de0cfd092b339185449378b388d84623f0126fe3e95b45e37e73a8e051e5c619881c6ca8dcad9a3ffebf83afd1b9fa195afdd0f50264e0c7df3efa1ff3d46c2c01a0f865f521fb01bf6f579f4f383d5357c458facc9f140fc1d8b7b1809cb7c6f79dbb4aa6b71c9c68452e04ca6461561942e811e02c2f1c18cbc26fa782ea25c6dddde03f70a74081bedce448cfda3b177b8ef4a3da5f0bb23f88b2346c098b69cd653a61a0c1ba86bbbc6e2ea45c4163c68d18014f14ec3d78ea25c22d5161cbd7323e4554867cb65886f3d9a130d758d5b5d8282728de98b55612bd7c3bbaf4777082013f1fc04f661187a250710e0d63f38f07dcc511932509236c36848b112cc35b841127dc8d35605871bbd317d1b1b8628d51783794ba44e72404b3d4d8573ae8822d3ff8a27bb10455a382ebd95f4dc0d84157f2bcfbd07bd5cdf79c542d6c6c7017780a11d91d989702c48b12841be5199e3e08200f3522de22957de86536b1be9a8493a8373e52620c40851c2acd20749c28d309cb445b8260b5e1abaee21935489c081b721a4b2a3af2dcb54d5c973ed0b98e4b9e7e619042632ffbf7ae551b6021dff328ec758a31b65e602c6b7780588031207d3944e83ca9f969a0810892603cb36c5c0d07a74272339e284b9f75c4f3d6636c79b9c42640e9fcd6b34c20792f02167cfe98a86981ed4a4bac4730895882c13c7f0af1d07ba60f63bf8c78603d7ab595baf5e51653219117dae77c1990ec0074a0f5a73e5ab4432de12f0ca9584c99cf2516aa6ed7c2f2767b1839abbbaa4e532aff337df444c5b6be60f1fe5cf93d8ed08fa2efd8cb3726ce3d3cd0397d80922893afaf64606138b7a7dd5c02b4eef376a8ca309770f59d035f1d13c13e798b37ccf268abef77b0f5da498341e46a56c959e2edcec12899ad27a85eb8d332e50da215eea473be990447f80813553fbd7381a6ae311bfb28d41e6b937eee484d439b1b3bb6b1876ed7f91654f607bfc1308afd9a1a9ed166ca6a70a4ca6fccfff856ec5c8a647257eafccd518f34c2146c5c4eab553f5a1da5fcee081b7b577084b9eb5363f16ebbc3031ee49174cca658ada78d5da6874afc913e5489ed1bbedc4dde2cf3721b9a76bdcbdb598aa2ab2f285113bab96399bec4e2589283182f869bebdef9cab1c47d58eefe2eae8895b7234f51a6756f2760190e6501f6a6e0a4e24ebca986ff6a105bee958376d2990d61086128b941c6f07be89acb50e1ead814f9ace5ff8e91d80c5d6eb67981a0ffce0ecf9a4829153ea046f24d5d933a8b9d517c96576e2550ec437f220a45893030b91aac8eb47bcbcc17b12c79595bca983d15623348cf552ae2a4654f47e931ee572dbcf9392214c92c2da36585953ec7307472689efaf628bb06f31292f4b091ed4d176e1b814c88ad71c81635e4d0bbf2df9d28571023c0e540859c0abc4ce53d926e68ad6e869c2d5811b834bcb453973f5b9b6774821f56056a7144e9eff63e5152b3ec0aaccc8f5594c6b0c36a173839c60306c732305f9c5d5e416f9669eb9547923942809ef5c9a205960c121b83f21a749bdcf458f7934d526e58231000411e66240f12ee740452e771f109c91840c57e7e7a957734b021750ec6279ecb3556fa9907d78633456fa926c8b647eb38da1f5428a061b0f5b697589de9d2966a062efe21806118bf990dc607e8d0efc62855c88ace49192d1a7ba63e6e6e5fa1091a3baf5031473ad02f0c318d3b89ecd188b2e8c07d4edfceb71ff08883dc1b1c97658b8a5ac5d3720e2489281054d3d0a6fa04df8ea7f0ccffb9876052631c3e195ccf66169604c2ab27351f2460e0928f153dab7681d25ef7f04e0adc4138684ac5025c918910f771a17b89d6721a21d5c16f8e62650a9c0b91c4856dd15f53039510b753ad5e5409f57d859ad10c829734343e75129789a0b0a0bf3f1e6ec4fd84e0a4543b5fb0a51c16fb50842f36d0e73af3f8244080a3e24008646ece22e01529532a8f0df0b55901bea179832ab9831ba91d20d3949ab75533145f7ff8eaefea9a7cedef91912ed80715e9efd769b8689b3a8f9bff1c6ae83a371d8741addd8c5470bb0257efba0d25c0da523b7eaf407e61622e3ea2011daa413d49fd940ad49db79a4f33ea786a014dd1bb1b4d65b3b63774a035400be423afe25b0c19f02fdcc50c5e47a9ba255391748bcb08657f5a87787f9c772395393c0185e3a480073e95d9f9e71e9308de12ad14ecfe1862f91ed1b7b8683f4b9955d6f3badde88ef8a4b077e6d31efb87282abb317138a5ca23c604d1ac07ffba2d55e313f44f53e39a1bb365c0bcdb8732b944180c4d7c753331c400130d32134047a47a40ed39bd6520084e51eea66fe73e72ade23f5b621208804bcf9d7d4d6c53cd8da164ef762f24b45950b9e40b6a7528d7dea9f6b01636c8c54377a767882178cd9566b906988d64a73d3916930ff99aac9b638496a7b7d669184d69bd29fd8524b88d0005e73c4bb69dfe7bacf60e9212d634b4a38ae448e67b6cfaadd0943f71e70703773e7a4a8e12f8f7bc73e4070d88eac99a068f31140d39a53939a39b4189c82b94e549d7fd793a38694b35e98f58c4ce50ba197a2f9272747635a52b7c3361bc72a186351d699eee7d114331f3c2e7000475e6cf149c6220fb74a2b651e116fa2cab96f90a1cb8ca12e8ee288c254fd09572250f7280460fceaaa27af2f0870fa1873cb5d5ae0fecf80a43de93e0aac0a0904e66493a01f95cc7bb11f05eac61ff3ba174f094a52cfe72e705c24ec04425dec8caa51633665c1475cbe71e0c39fa149554e2a51207f68cd32925e15c997e80007f1582ca960fef51cf611657b5327ad6147e8dff0d2b691fc6f5724ea6c0168cdcd299f5ecebd6d90d13056781b3a6bbce0b2fb85754f7de1c0a81ea72cf348d63b6b62d545ff441fe755f6bf05b32825bbe2b8abcd1a4f44c7fc60919ff8da5be61179076aa456e3c31623a9f9112772c34e0b4050ad6add07ef035563566f840a9fa574e8a203da97e405186f19a96149404a09aae56063164ab53937ab1a1d29bf39ca4a65fb7ecdc405a080ff7b8e57b64f98a25b6e7199f0b042e1a34ea75257c7d57fe70676794445dc2cf9c3bce9d7bb798bad13c77c739ed3a67eb7d85229d8bab2c8421f7ce67a301d7bb1541f11b6b77552c03e95103bd9d349eb08406f5b7f051a2b0f92915a8ca36e7167bb186067b38b845a66d3e5b240cbb326749eabcf074d242a780727294c8f96c1db0c6743b82fc65c1333f0de5cb34bc1aa8da314ab35d2049cd4151d5ea3edeb33ace3be8edf0a505ad89d16f716112d29be4fd4618fa9038390cf30b8a94ed62ed21e72b753338b701dc4b53a4b718b59477ecb1183438835f1de45cc92ee5bf3658c25d7dbd8d272cab2f118d598ab41bdcf2b0a7aad1de4dbd416d3642ae6d840e318cb0fdce07283e01b19ba9093b9184c711df07a99667cd8df96636bc4bf25f5ffb0a836880cfee06847b7127e53b117ac96c8102922dcc3ba74f79093baa7bde92f69beb5ce809c61d0a32edcc90dc6e38b692bb9eff24dbadda66064a49f2d4952e4f659fc74454d31b7e236f090f7cbf6f323b35950cc33b1dc07154306d7c0cd15e27b776bd30864cc7cfa61823583af0b971b5314b67ac993e3844e3ed0e293778e8db409962a11df3b3ff0cc4c03d28186e10573e4edc188b4cc6be6f002e90ef5bc63bcc557c3358f82f41a8032a92854d4108d48f0432ad72a21e9d54de47b79287c1e1722dd11f3fca08584199fc3f75095c9efc8f27bb021564709a5a35abd214e94494c52ae26c59e5038503e4a330b5aa86279d6af3ddaf3c84e96414160057ac9f08a8a80dfe68c28c5532676110144060b442217482000a486f970cd434e3021b0e0668e96248ca664b70918642e049c44e9aee91b402998723216849a40329a265f55cc5f4c3232ef1cbcc5004f4ce00cc062e4f59cc3fa3bc900fd5e003e34715339728a558a6e0dba5e84abdb3a4e59978ca16b2a587c08d243e64819e9a8225bf8e0e6c401946121c0cafa883e6479ea4b50bbf5822645420b1046a8bbf2dd60fabf25f7749c8e446bc33b1d72b90674e9cc1968e782e30d11031d64bb3c898b4a69a9ff5055ef01fb5ef682f1dbd3ff29469ce407d53a2452fcf8072271d09d1a3105133802a2e88fb20505c9521a174694bcab2ed770f26b5ca43f437d5aec8aaa19af6ebb6100cf46e6fe54a30353b351a4e01d73ddb5ff6ac57d070fa8ea72f053c007f211381c16ad67758ed778a60b4b86c06b7747eda27e6882a0aacfdbe09a154a77ebbfb610a6a8f7e1ae4ee161c201b672773bd84af841478afd65642b4227730bc8f3982b07b99f34bb881c7025f5623f343291bde1293aeb696b7d88f2f3881b6de94b525a6678b1982aa9f0e445847dd23f55d0f9c60aa62a6c155a929977eb1afa9198f6480966b420f7e7ce343d6640b1681697ed45407443c345ade594e9d770b9954557c7a078292996bdd9326a01757432abf6fc51553c467147a5aa4ebfe6d2215ec38b66cd8867604813339ac5a8abc56d28d138b53fb16e5840adb232ad2724396e80fb89b7730643d70974f887b3448dbd2f11616922556c8875c21c76d12980271efdb4cd38275b4cfb5c2a1b097466fd4b1fc4c1d743c7892a7530ed5227e03c282f6b1098b53177ae8c4b57ffc96e9e6fa7ebf0f050de4ff9194600198f78198cbb57803a9352d09f38862d109ccfd1e780358705dbc70747f0d78c6b174e5811c6d8f428fc097697d3ec4be29230901bcb01784bddc3a141b816748205796822818c0def1156e19883fc6b9506abb1b0714c4e2af2426867c26fe507dc9f00850527e0412b99d9483b78bd98ce6a6e50140e54629d59890ffdc4036311618f2c3b383bcf0bb5a3ea035425f7d26de908a9a5ac5509e27c2f1906b81e0d6046b072e86aaca0cbbd3865a3033ef6c08d28091cf0fba8c96ecc77570dd5fd8ee3e9e91c25896dd34c6c1947a08659ccdcd1f7e55b12ace332398e23ca73113de5b2b34d5cffe8f67e30dd8c840005962d5e3d2715cc91c52fdbe24d623e13d5eea7533d681377e518a7d6e2f325c76bdcb060814ae7c28ac457993fe3ad6d329b7e88b1a9c91192a85bc3e68f2f59f1de4864aa561cbd997897ef08a99a734f5768eaaffb913f2e61641c22b4ae7e5ca7f6dd424fb392502f718246281b7c1fd53f047ec84a82753ef48d26b8840a75c973c1c88d80e0b451df37b4a2d2fe9c8f86df6371612a9675e99185b0df9f233f296d18b80f1acc5e2d3f1a7836287727dbd5c2294e0ce34ed45b354bf82abb838e8e7b445ac43126f1c155bba5fd3eb0f2633162f4e29b613f5ca4c01475d98f6473b088f5a50d5185219a51181a561b5abf6def5cf0031caafe333742b4cd5cfbbb64a21f6df017fb3490c198ce2e208f31a1f4d97624d40d544697ed1da0d30be51f9714671d342e706d9cf2f2ce2aff4ba6f8c43fe2a4245575e1d47e9692d52fe3860faa52ea19b687af2b8a07b18cb0629e431d1e3668d5414d3449e609b3cfd19a26ef91cc9df87455e8782f51d22c1c682a4b787c64ab1c43589b056eb0ec2263cd58865fac33d21802b0d4cb6394a47a49537b8e78b0598dc9d5007c5ed2b6cbb870ec9f22257ae634b0fd6123636a5f8873b51641c56e4f7a5cd39dcf800c34bff4389e52ac32f2086bac8c8ee03f49ee46c2aa7970703a6f76d10e1d62de10b0b82aca433780b0fbe576cfcf89810a9394521219fb99a2c7d3d63000195d61f5ded274d49c014556557c6da931e2cf3ae7c275e59f27f9632b51108f2bbca1b7e261adc47d2f6ab8a35cd537c0163cfd3b4be13853a8bee1efc6a7653100fb98520e6564551e08be89de4397f88f9e49938e4ee1ba456c6838df168ca715eeac632e44063e09a9592a7aaba4a9f4609c4f14f010e9c1fcae074a8d0ae23985f8b8f6baae6d57fc927ebbae8543985189200cad78d3b12a2dc08679511c5fdd5bce1253d03c7d6f9153e71477e1457fd3f876ac11886675003d01df43a4ca54781bc15ecdc170c29e32b34653cf7e9bff9abb1eded95edf32cf7f322c023648601979b8dd5305c1c6c5bfa2bb64237c22663dc0a97e96c83de3e3db4a49cf019d256d0c1177e56aed1ffec9b126e82ce1abd3081948e8f8d3e71ab749ab33a4db3ca6e8202bb596f8df18556047be3bb4e384aa424b1547dfc885001006e23bd07713ae38df647dcf786ec7ba0f411e4e636162b950983c7a74f1145b1b28c6ef23f8d8d947f16b7532db491f8ddf25c1e9cde9ea8c79a6845b42d29b963fdceabab20a94976be1615da36459eac9c469c300f4eeb7a85a4262ba47d263cca393d53dcaebc48e0ca39fc87717c708f0ddca671414fa88a6bc850013dd059cce6f0b044fb982cee3d6101a8d4cdde58f2de0e4c1cfc6e0efbe77aee306b3110549775c05e0638c0fcdbd30c8c9b53c8362bb4aa6936191161c01dca469f20ee256915020b31d3acbfa93cd77fb194d8067b45611d724e48ee546c7925da3cc2ccfa05969393ed92307e7d062ac5f2985cf5405341be8a0414619da779216935cb634365d18978248226df99e7811017dcd2c5347b43433ce028b4bf70bb5fb48ead608afb3d6755a234b16e5984ec8fbe690f0dd8da917aa1eb4f4becbd443edb713a10163c34dc49d80ac34768c366ff282d06296d1e01d33c3ec14cc337ed5f48db60442b0ba3fc595ab42fe67055117b9f1f51b1c92fe6b7023a4851539e0eb8f7942c65de514b107eae029ee9024e99ccc64b1d170950aa672aaf9fece71a0a0840346466e785167bc7691498658691a6adf5c1d61dc7672e00b5b947e930206a5facb732f424d40f092e57535a949fe51e0ede61cfc14e08a562c593beb042c83bdce009d7418ac74578e85c74e8ef0d01a8ab218f45d7d8c5bdbceb83cc51e2a0eebeb7e4f49afbb1533e4957124a52293e5428fb9998e70868ed67f1c261fb12cc9f078d071d6585a57a1a8b4597b904cdf35b0b2e78fbe11de568988e1c5dd77a2ce9adc68b8738d414d161ca3e2b3b23c1d32c59af9dcd0af536a3bf191d07c45fd4b8c2c449dc0998b8e5198b4444740f6efc08f5c7e9ac8d5ead475313c4032677103f40b46d9bb3b1d29caf9ea4b041865f68ffdc38a6c0e28f72d17216d5468f229717bd21c407cf4b2b9a9d6513084fd9346c781302753184346421a13a954197a31496b0057d4bc88239fec48990ebd03fab8b15b15064aece8294a0f0cc8b68bfb691e10d8936b01016c99697a983aa61abaee7d8958d513f3326cd0de7db2b33904ccac3b3382153a75a6e219e78aa14d318ee706690ce131880b7ae403d2d203807bb108fff630af22b45c99213d1ef4b7f41829fd7dce2cd3b65dc32b9d83a4ac6920181443f25a52fe9a4da83692a8747d222a3d2e3a6ed894b64c40e1666533447a38b99176978a17d9bddd2d7e144e6684f4d6cc8eb03ade0e8fe865cc90d4562590cec5aa652a2d24771ac38a7383c5eaa381256f2027d0de1910c2f3fb52fc7cfa2199061cb5e785a74008354b5e03ea1fb5828ef946a0e0e9dd76de8c87e595511fd367239ae3302b2beff75368f5228ab22451df3828836dc8d68bfdf2798845e1936101eff2c10f4c1a8a60e467bcfd6a32800300618bc7a4ad6983251b5bfebd69b279782e53d29b70e9515c42a84900dc05c3a7f28a3cc32ed46c61ce1ef81ffc3f80c2231030712806f5d4374de5ddd3ac67ccedb7f0bde81d741f583b0370723b875abee50c4587e378e23fc855c86efb65804ab520ca03f9336a6116f3fa90d87a237a143691747370376f1f737aed366f01d072edc880035a28a50a1118234b371ec566ecedd87bcb82dcebef65784fa91f2148a831a90867505fcd85dbb61fa40b427e37f395b921ac411808bb2913a4309d5e8963111c1ff1b3168f4812f607ecf1563ef7fe87ebcf52c035e566a160a7ec08b4a8edda81bd59a8ec2b3643d3d22508764d516e1948c1bdaacbcb6a85c62c9d3edc02835076d5efb736174f20b204d74b4a10a4c5351edc34bec0109f0d81b166e0b3e3b8e4a4fbe54b9750387eb9f4b511d8ae34a4b593126ad8de331855184934e71a79dc1b4b6a8b3362fe0cd7ae3a3d0444376f68d16574e308130ffa0cae1add698fb18f44f3fd3ac35f85a76380cfc3352ab29c2ea723415d5c1f323ef7a0e1bca2f5cc445043d7795c2ea0ba4bc6cb928656ad100de216ce1067824a5776966586267369a38f9858019462d14436cb6b41ac4c22f1319c807e499238898e1420987cd4af4eded4b7b96d091c5f652c44e40b32a23740f8fa024ad1508382ab1616191956d4314a8141979485f89beb6c6f998ff8448fcc2216490fe160a8ea4675f5c30f4866a9f3702a09ebe95626a1f0f405767e66a06878a99f091b012c4803a6792df326855d8c1c558d1095acfc105fb678f4ced125415b0def23d42ae7ca67ed69b41e445d333c9a3bd29ca231834879d9a4c02f7caa97b0f044bb015f1b9179b28c76439a46e1914866d2eaa6f44f7fc42a0aa37c05023f90ebd0de7f0810f4a06486bce821bcd4e4f62e6652b7a235d45003649f232a037bb6d079107af26338d4164108bba062c71faf27c8f5b713b9670749cc44a472c6873568aa1117be435e4a3e774393aadf110f5917034e77ea25f59d4cfffe1773b0db1a1de6a0f7aa03378a102d46f6433702546f1e1bf6bf6294d240bbad9ea99164bdcdd95645fbe9dd900ada4b02f11e660a7bfb1f44c3cd69082c8309a0041b4fed859ae227889241a687f32bf3884fab72ff135ed732b88f95e71734c974419335dfb142ea2eea1805d3c2854570916be55fdab000685bb8a2a49bd10c1368a36a1fb244b450402bab4fc4ee96739cb3038a164960d55eb0d5c7a8845cb3811e1d8d33791213d2156c41ae8415bd39f64751dc212d1916924b70bf796f184e3e02623ebab7b369302a05d6d265ad2965586100f8bc4ffe1b83dc8324cfc517460ea918b5a200708461eadc53b242e296600c41b088a9a8183712fda6e4ffbbe16a5db8cd4e3171eb2298c36f95d041be2d2acfd1469b011d3f47046b02e904b579c23052c4b355803e6015d47989c0ee7bccd86f081fb9d0f9b7f755591ee6aa25740af90eb0d762981bfd7898ab33ed2859410220fea210d2a309403e6fbca215e964e144a3947c72ed6044db9c515ec2c700dcc7c57c51f36cecbe830666ccabf0438943c60c5ac11abbc798e1c757d75d9a713930c0bd856ca8bdbdc48d08280a0479330fb8788e802d09e5bcaa75fde4c98ca7afd00df9daced9ed85663c624040ab8839f5212e9442f022105ff26e53010e174fcc53954122eca79198f2926981c6c00a75a91de2d5f6b3780c62ba9fb2e4eca3aee650138ed6658e6044a957e7270c3860480cf434818a310ce0873726084bb094305eb7d0a7c1f00b284f0803268de9590f5246a2369432873a20091ba1e17ab6001cf3dadd66defa49f09ccf9aca39faca28865efec91e8ca45f8b7bbeae846f1c1ba05f126c3a493f08ff3de758b5a142caa6dc1f6bbeaa3192f91b9bf24b052d39b253ee51512ecc3708d030cc36fcac161de7fa5aec1fc7fc86b833253b1e3ec8b62565f3a57bc379a3712c2cfc3234eeaa12f1684fa1044b96f9c8d5b9dec30791d42a298542961dd6be0cbd69f69e03c06e83cdc20b07a82de5c4a0d0424bc16f43f4f8aba3b355eb721ee343a2af0a92791bc3e11a3f7a34d44164fd799a8be2f872202cef631dd5d4272a66c0f9732598c28a46481acef005cd818c4c804bfed98a6e36fb4f2014b273a0dd1e5181535e200645ba6c8ff945d44b2ed623981fdade6ee8bb1ef7a6a95a9cdbce002b72c13ac7f33c61398ffdebc8a4040a1ce546bbf91bb2585e80bccd32b610aeda539b6557446780cd65eb85c5a13ef94510e106df47d9b895aee1853c91c8c258999abf6912054590f4f3161a8e225b4be721b1bc85c962afc5b949b0966c466f1c9e3997c7f36772175f33e73375db6bd95dc220e1ba25a07e1806e25498527f2b4cf7599fef2456e537cbf2709de4661224f07f38580be70768b32fc88d1d48fa035453ac663859a405baa3d610056e8e3f1ad12d43847b63640154983c5791a37e37c9fbe260b84e96c75b4a7bdda36e4356a987c7ad587aa739a796655b40eb5275e268acb2a4fbe5151d111065ca362652420152236fdb80dab5d6bde4190bc64b26c91b30fabe5cd696fda0ce464693ef1b8f62d3e3127ab2781c078feb4d2bfdadfe57d456281c1089872769fcffc70705d9fb74e164c280c552d20f1c4855a2febb83cd24b18e78f17bb21a1a7d0b595981ca524c498d82326604783f11b92ab6071c95c9a08372d8b05babebc738adb966734ae6684f44bc31555eca4c00e065e9cae0c114662bd2f3039e3e87ce47f599043d3ecab20a5171798a805c0cca90318f2590fc6041322aa89647572426261e8ed01f73a4a9df7d74121c20356793a683848faec5603960786bfa9e0c5d628b5a2f0f1ba416b485047a2f2f3334b09aee5aa9d8fe00fbba2845d755936b5928e2a56c000913501638aad9df191c7016273d0767653e2ed584ba865f4f6f8ad1883371e4bc36a18dcd4f8eaf3b337bd0ac433ff64c74cc7a2d2c211582524285cd23f577d66faf97d557ea930241666e83b1be3ad4af35b34dea0de506d988f87b3533b100f07d3ac832d637eb59f56ff0eff173cc85685df34389bc782a39fc70d7b7d79a7e147031a8ab2872d6b7f26c0d2182e6628355dc28bc708633786db4ba699386f03c9f48b75d866918a1ae1a07adfe6feb50efcd30578035313e72f9c1f60813662636174612ecf658d0144fa30972c0d4c0239b84a9215a30ab41a34918e0ae60ba0de7a1fca9be2ef96ccff294b6a3ffe602950e204cfaac7ad6601d5c9eb26e6044befdd5e042da09c1da4c95916fb65624357a2d81611e8e5356231bcb1d663b40c9d9736a108264700fc556c443e782a14b8e0039b58141d8da2075413262c4781f17fbdadfddd257c04407eef09021b6008ebb92443efce1aa006f94d3351dac78aab019e21bc93d1617601de0a5535e29a9ac71867d7768fc205fceb25855f684346047c99e140c03ce5198ae993186e9632c4a5b5eb3cbf52402d19c96aeccb2a439ee91d3f03df5ed47861924af2cc8844b1490c5e81fd40134e86b125d4d2568b64fc6b50a1759fefa8c2de3be1f2d144df34515b34f22404e1e868ab7dc797c8c8c3090e2db17923d82fb2755aee73b7cf303bb289fb7e33da9feee9bc023e93ef0dfb2ad2fd335977740b6f790407a9438382c003290b381ae3441fa0149bb4b34f25e198f33eb63d5e4cb2f6d0ca1d7f6adce238f431e99a98125781d9cdfe14ee83250ecc92fa3ba5aff24f9ac3d3b604364fb5aec93d03aecfb5aa87ae65f3f3e919f82eb60957f3216659dc9ddeee435d9b54e241c060d380216ed401ef1be886020669aac247744f67109d02f623e26f82591ad293d426f51fde8ca544a387e69a12764dc138a6626dc7cef05b13eeefafdd5badd4af60a0ea9af6b9585100218076adfe3748813015f15b36ca92021d5b00afc1938b240378d1798bc3e9f2aa6877d26ccc9608b4c2044a85dbaf56209c554d0769cbd9e5c7b79a332ab670f8c91cd74e24214cb3706a36a625f2cb465c80cc44d586435409fd0c3014095b01c5fc4c93f40fb8b30763d932c0461213eaff2195b2b1b90eeb2664776f5ad2e49652a69464c30aef0a370b3bd0a6650227207e00818f836f8278c19b200ce31c96710fff06cabc12e9f908974b04c358465fc8cb2c5297872a0fa14f7d19319e4061313c3202026d180bf015840821333e02da3018e00b4a81535a9e7daa8f0c3bc44adaa789fc3c0c03295939710d0b60e02ec230662ef8a6670c9b594cf1242de3f29b1225ab55ec1a2772191725758713790decee168af03d49b7f8a5115e478902907893cc77797e57e2626d7873c6dbd32251f956891a37a187868686b69717270202027222a02e8c18811ba5c08f2e7fb7d88ef2c483df52fd4aaa91b4ef19619c52c2ff083b46081bd6f6183dc6e841f8eaf46b35f505f862be33ca9454d59e527d065f5252299657175fadbab21e722b57c1806951596e8181a152a9aa8bcb6a552bab9bc5ea67b158b557cef27717625995fdbc955db90bb93cab1ec67eac16fb792f2ed41f3b4a7bb1aa7ce5bbf490942a2b2c2cd2c5899cc889543dd462593db4eaa1d59c73fef72cafb2329f4546a5ea50bd5c5921380d77f5fd7165c4e5285e48994aceba7bbe9c40f3bf06321205bef89da89bc86b7a481ae9324823e40864772165478982f7f5d1957dfd850b9b7c2105bf7df8a68ff89b886c223ffd53a4489c424e0524036cf1898b1d63ec8e1da5dd631fb9d08c6f1aa887f04d0f75117ac8e5ef232f411ff9113ee4b210154d0647e2f2d306faa28b006d7a0cf0c537ed05154e84c847d067e8281da5a3789422bc67e5b2136cf0a9159e1428533d7c9e026529328801de402fc09bc85a80379461fc5bb8272c5c68ea82b7602ca0ac7bf8fc04ca4c5056f2a2f00478e3313381a74002bc6115e14218865901390950461f3e4b0165dbc3d3c3bfcd454ed8c437fce4e4f10d4331ca022606b4e12d9a5990e5b6101757a85bec40406ec48807312cc88f306c8be923271168bf76322d3b9945a612f0e5d3d28708174466135d0ae5fd28319b68f8e3efee7dd77d7bf6d4f1c98d4f6ce041c845d8d681f86612d1808cf0cdfce1223c812613f0c5cf3f8984e1670b2e2efffc712760b4026c45295db8fc3466e1f2cf22118bcb04b48955802f20be895018e6841742b18bcbcf5a14b91242c8323eb90c21a7c3ddce20937744a436e3d6f2dfcbf0e28a0513c3d4724dd7a341a11417003429d6c7e887e19b1886c5d5b5dc8ebf2cb9b2748efc3262c08079716961b1accca9a2ad542994d79d38d35622516dcae8ad7ddf43bd31c678f9ff6b3f7cf537f18a629ee035ad6ec19aed2109d57237cb03caf47709055b3ac0977bc193da9430f61061949612371aafa58c3ebdb4e1e0c548233c696a82b502af041f8035ac32b0baf0b670fdaf70fd19006b703cb0036db4ef580b47d700e1acae4199de591f65d5b01407fa153cbaac235eed99b6d88f7a2cf663add8ef590a4b7157b1dfaf8a54455e11cb2bb1144abde67450a81a7de2cf0fccedd5f58450bf758da81a7da24f14f21ad8ddec45f389073b5ee67ad08f445ad6cf2846452426932d2226e7098b81186b6a8e7a509007799007a54aa9adb449714a3dcfa5085da184bbb8fc5f24bafc4e9d9cfc52228e64eda3d66e7f45dc879c16a3d67d741de84686492ae937535a92b58fba259f9228f453692b6d9b13691f7b2e492b6da56ddbbe4b712bc5528cb18b31925e7695545f20e755c01753fb718cb24da4ea50dca88e4168ab16c72fea717a6bc937a4d57fef059157fe263dd5ca7677eb348ecbda4faaa8efde4a95da8fbb871dbbeefba865f2bb2f713a9d2c55efc9371fdfee61bb6d27c3b698face96ecc72ae94c866d3e28d273c9e314103cf9b4a85bec4e4ca4da8fd23139c183387a358d052fa51e8c425128c8b31fedece77950096aa608b92fc9efabd558d42f23d9be2cfbe87a171efd8eb5a528614ab758270a5dfab990d7789047293de50a7a85eb5bb0a28b9ce07d1e74f973a2cbcf5e85071d6959154eb4f22778f03fefc993274fdc0abf82fa1596f81696789117c5a2cd6980607a81e9052617cceeae613df18a78885f7b87a6eb4fa1d770941f674ec2ffc1261f673c98758b8d5ce6c0888da8959645adf034a96448cf6e990328c3ff83cb6fc4640a299795c017bf7b414e23e9338b0d7eed98457f33bfa93e353dcf8e1500b67791055b2ce70929dde3bb9432ba6027a14d19bd3f567281f0c3f5e0145c08fae6226e7777779735f0ff37f9917d890d421b2769514e4aa253460d00b6ef0e7e69bfd87319b626183618f3c1ae1c109d28843e61e842222b8aec85444f2872264b7e6eeb42263e38f2c1930b992c81e875211328a8b807803ea00dfb6f9ac9fde937b7c32f0e7cf96f56f0beff96d76cdf80ed496f5a8010de42498ea972ce565f68a2e408a18992435dc6ffbd4842197f499d090e8cbcc417723c68974a221e64028514972d1113019da343ac1f0896dc1f4d147489e856f78a6ff8ce962df882dc0827ada6228feb67ba9244923c4c373e064c37c628abb7a5d38b6dc3c1f33c46f701e78032fc14d22ebc0f0ee9e02237fff8d1fef56e7cc8c9e95527f6e19052fe5c21f83ee18473fa740a45d4a2bf8cb1ca58e17577c8038f9fb4942787417cf73745ff0885911b73e1143d90727b702404a5657419de00f920f46aff991ef2f08f96f600c135bdd74fa3bf73e5d30a847ed47ef32d62bdd19de40efbf4f5dc4a7fb4ae2cbd162385a68f760b5e3ffcad8d68530a3cc8973ab59fdf171e2eb3e0a11f844d9547becbb8c577aac53a8469723a1a8a0a3cf9f3fb617cfad046f3a77c27d783f6aebd3ba9cad5107c236d19bb2cf9608335bc282ebcf04291e46ef18778ff9312cc95bf8a62b20ca55b1ce53f0a57c14492d3612a608d69e50426d294d0a61ec2396e1bc9e597b2c29a0e8232fc524a6f567ed2322de64a98d59526f6a25b1c0fda6fcf44a5e7fffe3c137392c451ba75c4fb3ae8ce0eea0a73e6960543e916fc522545e9197457b3fca45b9087ee174ded9c7ce776f0d5ac17397e32bd67393086b722bc879d84828fbf1997bf5afaafa77599bb13e7322fd2ea60d2b7bc06f53edffb2ef5276e5ae832284b5dc6fbcae8eac73ad5cfbb5f8b967e56203d3f5a5f785daaa41aebe5f7a75ec3331e45c240cbce56ce13ce514289423814bc7e66daad1b979f02e189d7ffad6e1252ca282365b40c0120658c734a9903e10d32ce29a58c32ce392d136ae3c21b342f1adf72627130a6d7626c8830d8d280466a02bc2276643f59b1b5e7795e856b91f4311bec0853458f4ef946e57ead2b4bc5dc56e1b9febc22c06dd500563f542901a82e9042e5486100e5dda032e075365e10dd29009d10270ec7090867aae13460da64a6205b0900db064aa41ba5214814071207a8668312a1cd1baed68129eff48084411bf9f1ca0f44bffd345188bfa08d04c1f587af960bdac82218bea28c5b8ab25648a5869182645531a6a18d4b059b786e1b005ec48d9b265b2dd35c8b4c62d5151b6c19ec1cddd27c3ad5b42967841032e711c2171d7c5d97b6ba6b8c85f0bb35a1e0ddb69ca321118b224806dec762c1b0e7355e2349a4ca43d62149e0c889ef4373e46ba5df4a1a45221fc7b52f56487a086d4a3608120f0e57ab3cd30ee117be7721d7036ae1428be465c6ef808cb2e8fd114e0881f0fdf9113e74687dc89f160130475ae8320b20404eb4d065dc4a26530421c9955d380510bcb81b34cdc0eb287c6ee7b40faff167e5017d688e6b48fc719c44c4d59ef204e91b5f7567e58976880bb91e34aeb4483a1065d1dbd3900629a19410a6210d39fe504a28255c000172dcfecca2999977486696b23f1ff747ecce9af8fea696614a3dafbd65fc6d7353cfd99143d0b39c182d55e2c53ca661a3de01489832c50c3333cca44891e20512ca200509659082843244e90a91508628b788eef1e628b60db6ac9974373735e574c8d7e6dda649cabb69a6494d9a5f1d3a366e877c2e080f46293b1c31c10924478a9a1471177ea850011777872ffc400451c0c111238042c5852b4b0085122bc802174642f037b1d80d1c394a103bc53883821b49331cb11bb18fcd2946d0312dc6a62082134408ba5f6c482bb2c585544891a28a254fc0011240900016522082217031842b5eb085a3cbe3083160c208a220044168045f188114d34113aebc90480761e082162ef42208467eb08319f8600859e814d498624808a81b9ff52d576c68065ac8c28d39b1e24808590861680a1af43dd2114790815a8f5925a21ae4a0673eb8aa0b896647a4145a5c2805109268b18414987842124338d2ad9093632788430882821325383222892c9cdcb6df0f1c1d72b039d494e4fb18722a020e2987182c42d72598b13850da1a9853e363a75bec740827071d766899187c70fb57ac7e570c079cc2288adb383d859113f774e114462eb85f8cd49a1758dc1e26c61045054aacc0420a3460e1422c9010d28114a070840b2636df60911880941439834f50932bdc6ecf9db9b0f5786c74e1155d407105168aa84083122b2bdc1f9eb082114eb4d0a20a57a8aa7021155700fd208a2ea46062058c7257707b3ca6c2d5e902912c78c1480b606024a7c763a07b6a2a623750c10e3b109a620b305c010652180af50600a9b8f0e10a0b464d18210d55000214a09802b4a2c78bb9f0616a8330662e1205a32e77d000664fcc2fc267f783018209da338be532f2e3b73ca7997072841086663e14e049fb32a77df121657cc9f23947ea60775c861f87ff0789da3ea1807e7fb742da12e1327c1474e18ca88493e4568a746abe95580f739d4bd1b914499aa43300eeee24ea2e259d4fd860cc86c48bdfbdcb6f1c5d3af8ea1a338896697655611ebe62dc2097b29f10d4a36ca742ad3ce452aa47798f4279af7a6dd5b262ad562b8f57ac16cdfb5545ad5628d4ea514f391d9457bb2e8542fde47450a9eaa2eaba9595ee575ee37456566a974aa95029144a85b22ce4d9945dd9944aa57a1d5656df2d9665e5fb103c1ed44bce6f7fcb50b6fba28e5630313a283b19c6eff25c5d7ec3c1f3bad52d5dc2780c7f972bee422ed3bf7ac929148a637c0c98150af5aadab95478b902614957f69bdf47abe71fee0abb706446ed4059157b7b8f5abdf6d083acd47bf4a67ec57ed4257aca7ef2995f76aa1e7cb5e7eac1495bb68d4dacc4e519653f193cb43ca3561ec6a3ecf7f26e59c8b292d5a37eb57aaeae3d0af52c7e17fe16ef51bfaade4beaf9e37beabb956aa55aa95629ab03fc01f5acaa5fea37f79e53cfefabd4af1ea7ddddbee8006f6af5fcbe7aaf7ea9972befada87ea57affd2aa7aab55f5563c6b2af250967fe5579667e53dcbc37a14d74f6583c8bb6223ab87f6a86f8e07abe5fd51f68336baf0e0f22d969f51bfa1aa0a55e2744849ba75fa0d9542b9b80af5ab94fd1ce52ca444c9c97325958558e826e1ee4f50a0f7a87ae2744ebfa156ef82aa2a154a8542a19e390378388eaa11a75795afea215c3d842fa87771797159b93ccbe5575c4e2f1f6579387dc7e364bf9eeb31557950df79a8871cea717a5badc0607d8c954f033d2aeff9a985a552a978da77dda3e010ce55a960c8a8aa7ff9af2c8ffe5dbd4becae3ee2b8ab9afa10bec090f110d6c0fce921ac89f1cfaa762523c37e38aeea6354086560d82f7655322fd65bb5d8cfbb2b96fd5877f529bbaa2a2cab37adec107cbd5ff12c0fea3bed3bd4772a95ea51f5ebb9a82f3ed775efa950f5fb01f5df5f14733a549f7a1c3fa53af9d10691b743bdf42adfd3e9711ca74f557b0efa70845ae636c924915ee56a3fbad5401cedf8f185a7fde50a84af503f103fba5150e6aff785f731ff7091f6815ec42e5a6b0a1b1854d085f7c5629ec6354a29a594da941a88c195f7fd1fd3620aff3f16048fed96c5372686c52f628625da175e8f8c90ce4961e93f13098542a150104214a4df4108a145226d8c51fb1229526dca68e3cfd9832fbc0f16f9f0a1657cfdffbd87443100d76fa8c1019083e5baac25ea9b3300a37cf0c813b795e2e9149190beab274e5a21a245326d89c41e3fd62df83ba2eda20dc6d02ebcf81c63111b358217dfeb48bbf01b4b9fd09b2585f23797af71bf45ee4fcf5772b1c8fda93ee712f525d409f52521502814ca6aa0dbbef41cf7b27edc9f7e4a783d8eb31ae8b897272b04a76973be26e9233191986f7a24a8f55c463ee9913059fa252b6df4bcfe285b6e449049135441b7fd299de2b92bc1f33be342fbfde0a1bf9edbdd323561731deef24b78b7ad4d0f7f0bc2e3cbaf759c3c26f8e267a16d5382f7b96efc0d078f08fda63c983fe52cff18238c2f440845c5744b7b68a465cd433f95b067e5d1dfd9cf749d3a4f2aaf536be30e1632ac61a00921aa5dd88781ecc74137b2921b19e2e06ddcbbe51fae07086eeab96ebcf9fc283dd4ebb6a3e856f4a0777fbb81bca66499c865e253ea792c1613c1573cf258fec9e83a8acbc4e781a77dcb5328bc96975f799e97972eac8fbfb158bff22fac77a97c3716ebb77ee1c1726161d521f8b258065aa97c445a36b2525744d0a63d8a4754f750e53737b5f3f6a8aa523f195723017d71e86ebfa11e723ad2a789ece0f893fad4e334d794e51f543d7d1b81d2416dc13b026de8471adcf85a0a3cf68844b62f3c909478fa8370e5e9e6a4527291ea801e791c4b1f8d8e9edca8c587b5522d7cec139f66c18bf0fb238446ba15b752e9b7f86d247e2f016dbc3f723d3077b7d0911b235b2426235d63b23c7463941169d9a6eaee7e96d1d42dae31ca4cfbc12637be165fe374f025593ae54eb9fc1c0f2dc4c79acf4ab5f028ec16b53e9d633725cc0966c70f63361e78fe90473e85c28b0fa90de9e3c7f9a527713d683fbff9f3b597cc1e4fe962cb6073d0463e64d943c7875c0ff93dcdccc40669bcff82f840b9331726c147c975b73c96e3312d4ffc7e0fc2170ed1f7025ebcb4af0ef942c80fd2fdfd952f8f103cd1ba6d9e824e4d9b73085b8b760cf300dc00c0519a7bde513f71267e1a636c68bee1c2cd0180fbb5b2e0fe289a67b5c0f87bd6fd3bffd38a7313cc9fe4fed4bdb570fddf067f97d3d69df1bbc2db83620d8acdbf9bbba79989ccba68494cb7fce37bce7c974b964c8d89e785946e45f1272ee33d44ffe412cf897606b90c1272099d3519e6cf6d4da35a8c42bad5ee0969998e2ddb4a95888e74c63efda38968e5191142b6ffd8e7c84833418e524dfb31391dfaa54a44b73c8764a31224701c46b95c0f2aa465186822225a36db9c96285376284ee44efc891739d1fc91730ae41f2699a20bbca39649699f96b58cfb29d74d9e851f0d692f9a7633e40ec0b6542ac18e5faa3f5697b909efa347b58db4ca338beb2ffda374cb8dbc8f52989675cdcf7c365db3c246a17853ce29a79c12cec8cc2c1932334f669e70324bc953ce29e18ccccc92e79c12cec8cc2c1932334f669e7096c1e3872c16a553da399f278e3b7b24733ed8a4c0a30b7bf21297811fedd63a4a69e117c13db21d6893f2633c42bbeaa7dd8ab962a3503cf89fe9f2175f7ce1010fc05775afd7fff278f48ecc1ddddded17e107afb8fcddedb1f9e30ebf3bf0c565f0e0b3fbc3d665169471cec8f3f020e7b051924c4e8d92bc150b468702782b4f92a836593005d081fdb97b4bb5c090de4a3a896a33468dce19e3e474c4974e05cf34855b60b0a2afa456ac09e39918e6c59546f9c633b1180689daa3d6c6d5563de6469a6197f2bdf4cffcdfbbf3534d7be6f93e25b33673d8cce9b40e8c1d61e574faa36b3e4d1042f81e80362f0f218410be8f5640073329edf54c2947a3c23b5353f5f3ea0bf6dc7c1ba422f7b97633f5f3e1cefcf6c1bcbed6520f6d9c96999999673ef6907a1dba05e3dbdcdcdcdc4df372a5f83918ec67ead73d07a3c123e6c2c45c98c9bdd6f235e8b4d0ccc05e33346c6748342fd79b4e33313cdaa7beedd75a0ff3e96b1d77dc71c7ddb4dc7d8ad35c9a8b9f865653291f6e675fe4f7d3974e9396870f3edc5e71a59e86cbf5ea98ebb29183bd4834a6d3cc0ccdcccc8c89d3d966dc873f76ed3a1e227f8302e77775f3e1a6de3bd8b1a379ed4553e3bb3a9a38e3a2376e97e3764dbad4c7da57876e694e53f96adf755d27a391b4379d2cecd6d6eaec945d8a56d8cd4eb381e66b98f14ab9b61b503348f6fb11f3faf92f274b633f6fc6daef63eeeb5f26eca5fcee6559afd518a34ccb86193590fe0619948a75e38c59cc755ded5d37aef6330f379b824da08ceb5b36d4f0a4194fb39d1e76cd0d6f92b9a1c29669d9cfd53236d8efc68d35d82fc78d3fe34dd6a569345a7d89f54b3d8c67c5977ce67ac05ecaae4b91ae7c97979ffc495fab9f0f57fb5457a18bec59723fee351b73bbe73a097b97faf514b9dcc3a85fcf92cbfd4afd7cb85c5b8ed3a1616d7830af8251c5c0600f391dd8c7a134787c6111f6b0cab70312af734468114e1ab9ce0d699998fb84f745a3967dee043a89465af6c59f0ac3e9b0e28f8a8ca5da387bf2c4a71c3d79d2841af6e35be3bd3ff6a9e79ae21a9f924de7a45de3599bd166665c9b796d26c53aafd4abf6e05be38bfd8fd5adf1356afce6261c3cd2d7f0cef158dd1a9e6b10ab5b43cfbc090adca22956e3d0cce3fe17b9e4451ea9f130578defbaa771c15ccf9dfd4edfaf713cc09ee67bfdf69dfdb8c9f1e07ab6abcbcfb6fbe6219f67fc6e47cfa5df69adb546ed7cfa3ba6854c5ffb1d9aede9ee63ffea5e9d351579dfd5991e33ffa307b62ff3f9b597f9f463675fa6d5917af93b5256f6dcb943f65caa3d8dee35b322bdbeb33c2f9aef56f6c7eabe6ca4f9d84bae478def3e723c684eb0efef36cef5fdcef1e082d98fafcb55bf22badfbada9d3aaa7dfcced5b17bad6b1f8feceeb331c7a3647a57fd7e5cd76b34cff45fd46acfb51986a7fc1df1a55dddf98de35c5d2da32f6a3f7a5fff7a9aa6afa71676ff8eee65fad837f3c03765794c3ff3385de27898eccce3b84bab34658a34937634f655bdf9a93f75d2bb9dfd4ea91a3f33f3dddab95dc7d1c0ba7f750fa3b19fb7ba54e31e36ec61cb5eaa77ad6e075b06663f98db3d4d85dd7ad92fe6762f67f15dd63bfd7cbd0dbf75dfd921f8a67e3ac7a36fcaf2f4cf3c733d6afccc8c0e4dd3ba5f333f63e6675e033df785fecba4f625f5aeefb9f1c7ed77d51df1a3ed5ed61d9407d5fe65fae4cff857fd8ab8330f391d3df745fb171ef1e7ef88766af68547f7daefe876ee177b697faceecc6babdb1ffb9e196baaf133ea97c38dbd0df5dbb9b1a751bf1f37f63e6b19d31afe8444f527558d5be3636a14434d9648994449b7a4d4119b1cd558f9ac09bfc76a62b1875d2363cf9c4e4c43a27a8d5be53cc12fbee4c58fdc0dc4cbd3737b6e8d1ac55093253cb850d4095d7febafc42390e7434ae27d3e5bf243d484920b9d5c48c40494bb31a743c48412ee27b71efcfd5de5e1efdf78e31f396e673ffe21f876ef75b51403af2483f0a556877be11eded3fbc3fe55fdd144a52ebafe9bfde2909192eb962db3fc813148f206220f7f10118897016fa863139565d2911910d25cc27f9a25c5a1181487b8e5887d6701bcf1a21440997602be712724609908e04d1c625808a0ace31b396398bfb7e0ba9399033547a23824674fae2cf2451885d8a4371390911648f1b8b917cdfcd72ec59dc49fa16ee2facf5829fe234b204d107fa214b0250238932cb8fe519ee0fabb14a08d4c02befc5d0e6198145066c4facb98810c1931641023068c18c08001130403f3028397179717b8b8b4b8a0a5856584c5626982856585899515952554545640ab95aa052a554a89540ac50214ca2be279dd0abaeea482d3894b01c7997e4ca60d05db563a41a944320189448950aa9540d32609a6cb1845006ddc3d0968d3dd48401b666873a45b434d645ab3e34aba1b0e5e0c8a47b29046d8f01bca04394a4dceb10d9ab5ecf3d91dd2b21faf913e94a4c8fde46cc8e34a65c587746b166dd7b1fcd77d77d57dbaae63b5b8fcd7fd1d9018303e887761de67b248d749a0a12624278610f513d948d4a4ab72f6c4fbe2d01d8a44318ad7c4180465fc597148d5f6fb564cf5439fdfc0d37e52dbba9fcf3a9fe1b8eea3d51a6b10dd729fc9ea7c7cd64ca117249f9675d67d86fce8d60fdde21c8f469f04d2e2bab718aef65f4fb9fe6d046d64bcffd757a8ff3516d65b09d7bfa1cc88798f41ddf2272e138fb48c3f8b663f9659c7a121991611d1944443434d669c53cad0a0d16488a8e368fc868367c3d7406d146a190b75cbf51f8e58eaa58c46f68ac1ba67fbd5f81a350611f1e291589543e0cb1f562512f0e5df559904c3fc69aaf479554964c865bfd68cfdbe3d09af887604e4f5121b9ed6aef148cb3090e3768df78f42254ea786b5e175bc9deab75433812fff0d65624e07491139729ee8645a34faa1145e10b9620c5c288a42176f5482131051820948d0832c6ca83554d8ad6e08befcbd4fcea43c8a4641433efb091a0a0a825d2891040a140865e105171025b16236c5892a66487095d7d43da3c218203ae2d5898177f38686920003199688d2c414266258810aa830420bb3a220250a408118b878810cac3003330c0005510883d0125308039321ddf218e43513caf09f2eaf5c86c1e26f6bad11bef8bf3684f1cbb02ffc5c0373fc93b314c811743647704d6cb99fcffc2193e0fa6f71c86ba2d17496db6fe494b2d88fa58b486083785ffc893f457a003edf459f388b33238d46f93d64c43d3f5e40010e6cd064075ec0c2d4852090e10b4b94e148185c80852d9810412204342c81022f98c11390f0e384154488516154862f7e98971a5b2aab7aab950a635f8044aeed4334eb3fd7df8b38d0753772fdfdc8f54fd587812cb8822d7eaac11664ad3c930e7abb674e47bc9d1542c88d576585ee0fb1ee637dc6f7731ff6996b45dc685f34c040fa0ac197da17b63aa25ffedbd576ed876774606476a4075d200318e0165b3071c10c5a20459129e4f8730b86c85916571ec1353e636904b4e177f7210191124e2e247a81908c0b8994e0c16520af9143886c9064030f32f1a2f34248ce84b8382221f198842189cb1fd614b268c1510b8c4a3f2491ebaf7a7e7921111347b89baac21c56d559b7bc7b863ef3674b05b831f413f77793caf7e56e387848548fd39a5559d895e5906e35510f75ab97f03e9ff9100fa246d1280edd1a7f02155170c2ec092c9690e32f7d604d4f91a22a10a9008a1d00a109b0a6a7891794010d4e9238c2062fc8f19740b0260124a82209912a4c010866c8f1efda4bbae51a1fe17d3e730f32850ef1acf00a5003235c0b500323dde2eece7eabfb4123981d3f4c4ef0ba07a25bfe5d3c72a479e0cb5f90be05a8c19196f17333cb99cb38163fc096ff0623aa9f5403efeb21697ba89bb48c28f531ac94170218396b160e31d8f2efba2e5561d1a5b1a2ae57e7ac0abe72c6403fa9ca4bc097bf579909f86a02befc65652340241a789f9c753e2da3efda951512a1410b9f7de7bdbf1b016b3a05d7595e9546c0d70cbe5c1e2197b81e05155c2f6afb51f9831150cd413399eea68afdb0a97c3d046d54d7e108e82767de12403289f7761681a27be47828b2a998b8a311dfb48d4198bf4796dc755d47bbd53de4b41cbac5952faac21c17010c66118b96e21ab5ac87600bc8933f2739a465a67721b77bae5fbc1c837489a7e47ad0d250801a18f19a98cbf84bd8b22ff6f32dd6c7b6369dba49dda46fd3d5ba9b488923b3964122258c5c7f39c4bf399d973f3e63c9d975efbbcba15bf0d5df3d715254a22c63ccf9dd612efb5402a3083e4de642d73f06fe0d50b6035bfef05bd00565f46d10707af835c09b1c62b840d9fc1d483e72e01b219bf73bf0cd23c0cbc1b0d8ef4c895d2b6d0cbefa1fcab4c739f866871cd74d42b6986fc185102cb4983203b6fc493502b0e54fe1cc02047cf0a28bff42860c18837fa79d7fa7f977e018aef3eff4f3ef402fc200862ef877bee0852e70c105fe1db8c516f877b4c0bfa34516fc3beefc3bcebf03afc0bf038df87722d03b1068fe9d07401b1fa00d64c5a04db769b679c7c4363d9edec7a8294fe54282362ef0c5e295c622a3cb2fe1761547208a21c06d260e802db73b2db3e9e77a638adb45b837dd71c6a87db7a55a60c4ccd80880003cd60aaa449dbe1643e334a6952649c6980394b01393ee4cd262fd491df229f56a4c2b499256ea4edc26dd9d32539226fde34f96bf7511bac4f05a56f78b2c2a138b24dbe67a7cf33446734149b5e8a409a71040cb4b3246f931526c92e8534e87bfa6bd33d466cbc9ee0eeb497ec7309c6058b343cbf8c3fe18aa05ed67f66104c5079896d11618a6d876a3e4036dd588ddb8f10209a0e1a8d17a6145f9d0b5a3e8519311173628a53f43991edd9d2d21cce122f04f943c59767cf8610712dd0f07103fa6c027decec6e28459de7fb40c06c6596ae08bc587f7b6414ec57e422c8e6f3ddaab5417c2afcaac2d0f3995c7696dbed6dd3dadd695bf7d9a99d3611cefca3feb8bc569d661950a633fbe30afd596969fdf445a5abe5b5ee3745a3636b5d4a9a2c2523fbeb6b2fd8204f13e01df682a9af6507b9c3e40e9e9932a7dae2bcb39a51a04109bc904b97e8fc2e3d15ef6cf8f9671ff0331391d8d61364e07e6b955e5ff0a73d856d60ae43e212991beeb0238a76485f4e43ca996705cdb9ea5c20b53e1fdda392bf5fbc1ba7d02d93f2bf5ebb92b0f533f202e0c338bcaf75dad2a733a54acf62b96d98379ad4296871c0f4d6361161616966618537762dd13eb9e7cd848a6b9b12ef72c95fb49e3c56831bd0623c60f2dcf319eb58f2dfb5edee535fbc9f8b63bf60796ca6bafb26269afd200d2d357a174c5be4c6b559ebf577e55bff9dbabd415955f51f9fe0ee6b5d5f3affceae76b2ccff29f7755eccbca2ac06580b8daafd80f88cbaff2cdf7565e1ea761aca9c8d3ec0fd65d79eee1e5572ccfcbaf2c0f8c7fd94cafc160c5f87ecd45464b4b0cfbf16d79566951d1386daebcca6b2d2adaaf4c6de70795b6a3d51f7ef041a5fa1596fa017159de391d156b839c02e8abd48fafca6b15e66154956fa95fec6aaff22b8fd31acbab34807ecc655e6054bed06b54be54bdfbf2f2a44a5de6e5e521d78017d56faffa95ca7e3d38ceb252214e6bdb4a8c16189518b47aac969fcf5279b1df0fd66d7996e9575a8bfdfab6bccbafd42f76575ea57e3eae8a8a0c558c27557a55541e0898d65d7996873254315e60a8fc8acad30a84d3bb6259ec4a657d0bcba3de4545a5a5c2cbaadaaf9eb91ea65ffd4ad33495fab1d8207e7ff85d7d6ab59a3a2b4f2be955ea07c455f995aa0092a5af4d95caa75616bacce7e37edbabd81facbbda7ade55553d8e9b3eb53daa7e3e3e20eef63b2d6beba7131c824d3ac41f8fafe93f48b443b7fc4d4f84cbc027267877bc0687ebb0c3b63df51ad6c5e9520d82720e10241ec47268d9575313e31f9522bc47c69823780b8c09652439359de08c774ba488833da79ee7b17c9f248e5614b97b0b478e1beeee5f777710a26c1e8e1c38389c40a21d1f1490636bd2c7703f1f42996db331224cf509d3bbd91b3e748b64a2d4871d2abc95c7aec7d88d96fb472b045596bbb911ff612814e6ca2782919675a54c892c1d0406cadbcfe8526e6f0fe176b46d36da8f6d30ccbfc4ed20c5a27bd5a15ac9f42fa7b86d5b908e31b62d46a0fbfdd32d460c1b7c1361c8788f21c37e4d1fc29718698c5cbd1e21fe93a507f1741b7dea3c61d8e09bb9f9b679fdbcc895d4593efdbf20cd72fb6edeb8943edb48ed4b7cafc15961f170fad4ba8c97f34995e376d077cbe3dfbd895a1b0c9b2d2c0f5de56df08dbfac32ec4f7e1e2a83ff072fd16a7af69731e78d5b17dbc14f7a293f46e51e469deff20df372b21fcbc5e2a85896c5ae5815bbda9e552594d6b146b5b7c137d2f33ccf6e1fb5f3e977bff1fced067de678d8be20fda2bdfcf93fd0adeb67799eb5c137f4e5f6dfc934b7e7e9e8f63f502a7ffb19497216e13d9d6455b1c18f91c135dfc460c01b560b5c4975f06687c537d45b89b58cd45b813634f0e522b1f77cc3e25e7e0cdfc0ecf0bb6c7c4c8b61fd4db25fdf988da7a2bf9b38a0546ba0116e3f1dc0ed6fddd0401b197cb91cd0bf03a710402b5632914aa4ed6325538c44da4a24c9ef3fddc4f4c8065bd6e1a070bae37837da98d6fc52e4a948e86b51c64c777e24f1122fe26a5f4fe42592a1601e406666665e22ffe57be525978f6eb778498cd123841cdf88949a7a00d4c296896919bcdefa22a7d9e8cd1a63a6977290e36a73da6dbe0c8da4dde070dad77ae599229c9039c21c249e36d8600dcf9feb97e3de70a5cc959233b1b44fd9f6e27f955cdd4a5208cf9143ca19bd636cc1067b789e2426b931c618132b10c5889130f0208a28ae3f6dc86f01fedcd9fdd99bd9bbbd99fde3ed89dc63d8608c8c4121b8d046e570c847ac81dd82367cfb65b49f7f7c69fdfd8bdfea562cbe2bd6b238678db5a4942d57cbe017af133c83ebb56facf3428e07057071bdc61b2b8c0b1b1609e1c6aabaad231bdc58572e00f0be56cc65b55c392e0c4efb7cd7e9dbe4071fb0a8898c18c1f5ea3756970b391fdeadd66c5b02501600b8900828c98d4b08d9b89008c88b2b672d03c20f244810ef7a37efac711140990a2194452ca251a31e32e774e5eb5dc755fbaeeb34dbb1a669cc4d7849b79cf493266a25c4baef0d072ff61de4746a3c4ecb2abcf8dcd3f897d4af7ee661077d8335bc28a3fb697eace1993bee3a1a9fb58e318cbbebf879c2dbdd934e578cdaa4d15e1ad5e6bb7e9bae3969eccb7ede8d2cfbde474e27cef8ae18e3d7b95c5dd522a5dfc518d6591cef9e56d9bd8455bed18b74ab83bd57b7efeac32abcaebafde7b2eebbd8fd88b91bec5d2fbd2654e6e2ca5c48d4c4d0ddb6f7ec97c3e404ef6733af6981de4bef3fcf7b170bbebcc769987449cf35e7a4a199deebf49226f0bcffe28f1cb7f41ecce5722193274c4ff3b3d23c10ef93b3197306bc8f76aabebc3ef57c67eacbeb67def51bd7efc6fd82c8eb445a38d86ef8cfbba1a27240a8490a83c162f7f17bee6b27da7369bc56b9ef8c7e7b9fd1d46f054427f53d66def5d204defc2f0eb9629f021265ec6bfc8c6fd23530476546e53be33378ee3334fb5c4acca2003e5cccd864155e0d3f9f8613f8f2df6aa8f076f58bb91decdd75a3edd73d07fb6ee30d72ae8fd506297a111b2e976b56d843ce45f39ba669dadc683ebe0dbea1b11fdf39ad0d86cddadddd383e6b3f4d25b91ea7bb5d9586fdf8d2f85861f36330d83bec374e07666d78dee46e6c82d5e972d9a8a17e7c6bc871fb46d47c46be0dbe896d6d302c7e1cf2d3d066dd2485e2110f6a231608deb65ee4f5b55efbfee2b5e1fbbfd7b7b5f137a054f6a39ffab89fb1616fb0d065480f673c84a687d0f57236c37e396ebb9ae6dbf51dcc37db9dacab521b44ded466bf1b33d554e4713648dfd47f2daaede0e93ede94e5a136e57a97fd6e5cb6c106e9dbfdcc7f2f1ba42ffd19fbc5cb6f836fa4e5a19fea91b23618a6c16c90be34f6eba1d7b91ee4edac0d8669456e3f6458d3f8aef327a74323a67bed69e51b83828258afa72f39a3b12ed6dd51bb96f1ef94a96502abd4a8642d97a4410b15cd000000004314000028100c078422a1604020d365550714800e89a24e76681de8498c430619438c014300000000040002404300fdb78027f9998edfdb0c8cf10e6736713a640ce364ce4091e53a409a395965634d00df5fed0b5ca861e0a24fd8f8701dc04c095f9d3864e0c24ef3a6249359a8cbd7311b162ee971331616860c39210b6fe683ff656e992c25596c54084a7592431c0766f569bd5e1685d3016e16d39e261948781b7946cf2d975cd5c54c52f6882000cbaf59060bc91ffddba24bfe27c6218db340fc44fa53e0e8327c976ebb2ddec477aa399dcec3739a547fe614e269bef9669a2ca222c43829887065b4bc2c05a7e043e6b4cefd773d69582634a08d89e1af44d7f64c1708b9bed6a3479cd1b72f1f9ab02353340ac0b9e065335ff083e4623f07c26c2861013803df5d7b5ab7b15f9093d95819dd7c85633fb8f86b4fc201db2e2f5ded1ef7e2dbff111bd00c3aa5cf310e5ae3479fd3f1bfa6907cfebdafdd03dfdb3838f4cd7ddfffae454360d07d883f52cd3aec0a34efc77922c165805dc2d2ff32fc1aeb9368542b971ab0c1619340fb1d180430c67012daaf4a496e4f9654057fe1908d69f3d4d640738d6a85024c9be980b17863891099c64dad663e36b4bc1955067041e13d72a48b4d12b6df0dc15a044bca521fdcd048d9de572bbe5cd55730f3d73876163463f8fe2815ed1908b04aaa8666692351df9a0571786bec242b833edfec3c56a3267977af849ea08a376a79fc975e38423c20629bfce203351f75c518303e28a57d4278dcaba114e6af9b9a85e432072c7bcc2630feafbf2c4cd1641cfa5bfb78713a716ba7587ec0b721df27f16148875783acb7ac41d77852589adfd92b1f2cbc198cec0095b23b7cce647ad84309b91d5f64baeb03ee379b4da05b84299d0eea9406ea8bd55b73ef271fc49d040698bbaa7200353497b2221eee33d8c704eae966ee3e8db32b79d64566122cfdafd00eac30f2a988ff37b7b711e1940d4046c2bc12e0480387ee2856c4c52674b28177d4fd5ac44b29d45593254dc315f052b46022dc1f038e1f7258864cd3d0a7636c4607fe25286f22dca2d9c018dd3a57f77174d1d7597e8c38aebfb06846431cb62f628ba765d57029628ed8703811518ffb999011754f9d5a3880856e2a1708e7c9c2d6039114cfe2673fb18385c15102933e5e8a52487797b4dede635dd177c3954c73c8e08ddceafd93c856158ef2afb1b9b0ca62f062e517ee0b318456a2a20d3208a2c07a510267bd2a1f640a569109742d7b0366626ffd5a918e25a42da081c93d2f5220ca46e1ee023fe229cee6b4a9d3b4e64e6bf38d6e549684f8f78a55e22d53f8f6d7b458913aa3b5094a2e41b492d058b6acbc07ab21a074b43343731aea82feff3bcf2cf3640d515e389cd0d2857c54a8f167cd91e953ea9aedc6db2aa79e1629dfdbf7993d4ba8c1bccbad9774073abefce55625c7c99b81febdada419eddbfae31b71f5ceee6bfc5070b0f280aa9a7af776561b984f7103343c071c01438765e30b29ec2b391de1f97104070831b3d808eb03f125508db11f35db83839afbce15b7272d0c922c242f182f3225dc7327670e7b65ea252dfff5ad640c7cbeb3bd14cc47147e2d9c7947497fc21bdd2c61fb38bc37fbee5c5e7271aaf65e1c24830868123527398ff9c6918c1f6937648292dffc4f91dd84e0e7c488620b3fc0232d27b0158c283225a200ab43994feb6244ed3eec7bebf1a1732b0457458c6f121ec1c5c8f354143545053e08954f025bc00f9770c31e3e197cd340a13d7a72506f8911e96f50999f037a90079f40622482207e9af25cf9853406fe4fde3485bdb0d44c0d124325f3c99f8aab09214bcff8ea8573e7f4b8f39617ecdda2dd03d2de42a6954129134a1f04a3b30bc4699bdb07c483501f1b32e25c606df2162ecf5dc58f5eb06c8fb4703de62ff71615a022a41abfa5432b362b4b3ce79358fa225b55c665e7764d460bfb0993e77e7d1c163b21736d3ed6e8beb2757f301046e4d9206c1c91b7c67ccb69fe4d9f2388bebb18a0dd13892946931e8f6f022bdba6159f0756e397322c57069de3fb782215b62e226cde1a639377dc18bbe7c32c2ad82daf8a27b265bd75bcb72b7a2aed753a0ab828edc15968f5ef6e9409a985b6399c394ea1c2f1b054b0d195867a1f0ee92585811d8ee776e7b1b57dd85c9519a0796e67011fe70b34d589dd14b5f3922160b638ec2f25f9cae11c1d9f94271537f23efb3204cb554647b21499617464b145879f1d6a154cccbc8a9542463a5b47fb139c7200704b5bb8eadb32c779d9500e026305d84383cfe4c415be2ed6ac27ad8a254ea614e0163809da64dd9b4128f3302bf05ae7e3871609151d8ccd9c884e5db6701fda0de8db442373997513f7fce71dd85ea9624513207143d71e9f808058172fd5dff45016390cec9a341b02e281a78b79af2930925252702929efefa540ebf854b5de4e059c4806a2e51f3e17aa1eef910588cb386efb4c5baee63a2d46b83080c7ff5850a4a125edbac78f6e2224ae0e537729480423b5d328a2739dcbe5e5432dc7f527f597857062f2f6dc50863ce3eb18ca58aa74b81558fb9e75e03fb1564ab2cc0cd256603a172820db6749f1c683ca5a40fce7cb1ec97e69bfa6f9b5da0c1b5a7da38c87d1933c1e4782552876d43f96f25f00ec1f8fc5ff95676bea7de0a3fc5f05541ef9f57f28447f995f0602adfa7f3cbdccdf049fbdf0474675056f34d8b988035014ac45321de01a8f184b92a2a3dcef243b7ce70f888ab78056e6941fb68076224432af606825044fa83be02974a2807a57eec081765fd40492ba38102f3007a3facb882ff27e8763237661168ccb993e39b22486e7358bf64f7a81924c3eb1be81ed66ee07f5f1182f5010e7cde83ab722cea5725cd8d975f502d7c3985a773541fa47d6816e7e92ed40c8c06bd30abc7c3c91f2f58b26db989f11f9f2039939a838d1053dd276d940ec78e5031b89a2da7b4fbd00ef496b5dd4041deacc6a241636664610bc4e044a1590cc60a1f8ca0d1c0028e14cd93b7bd3b1c1af0fa719f1e3e936d867061f706841281e3d079fc5dfebfe858c6387b370fa837aebedf2a6aba97f1d638f43d9fbb9bdb2d9ae7b721a42850d93661c429596901781aa7395b7cdc0575f985b82860b2b22c275d124eba3fe147844ba9f7258a3a972b78724129fa501cdd9b6fa269a033d457f1fd36cfbaeac1bd762ed0e55bb96a323d3251563be8d293d5eac839d4322a1ab50e861419299f6c5c622e0f99f94a50cd81026de209073d449812af76f93d645a6fbbeed27f2ff140f91541b5149f3411c5db82a3043e2503d4b9d2145c7928999c8b67477155e476732a435673900edcda7b0e091ad21e0a72b121c3918d12778ba775e0321845e71219511a40e87b19fbbe35d3e86cc1cb834c6f3e8f0bf677c874d50c4b37b11da18878257701e31557828ce6b2529915a891bd2037f5ca869bc749558611ad753a2cf90b412151b9ca92c4ab649f70a9887dabdf40118716ae6df9f61b9632185e666f5a205abfa6dde45972f39ff1c58f006fb8856aa504dd5b8cd100cea4e8634b9356550fab4b829e8423c5569ab292ecdc2cb489f9449c8584ea463182460413609762266b5701a6559714c825b4440a62a49f57bcf58e8272c9690f2f3cb821beb50a201c475a908cd42483aa2a5fc4ef433aff1a9bad222db34db029fdc7314da97bae64e13fe4c212ae13801d5e0a21861ce4ec2aaa0767cda17a52614e493d2b69a3e79fa4f0ded3f3866b43e17849e2088f1522ddee08d552e331fd9b20dff6a38fc04300b3ba0d7f5313b2f7de6fe82ed980ff9e13f119e6aed0e7533159584f2a8e868091aecab8505181e5314f1a1dd9f8dac2ba22808b8157b439fa7bc01779546764f517ba5086d584e98dab7c087be0e2520b064ce5cbae026d76f669a9f03007f147829e390b84947e980cd54cafdf8c6a1687b4c1a24fc374a4fea99316d42c368151a569cc68cb4bc61cf7a7927f61fa5b0638891705a4ee6373a1120ff6f0b717c629d63fe149865fefe2f0586c74142ed33e4e80d4d9015713148f41150295cf31a4ca4969e0ee9c8327d754e5bf5e01d377f380578f57cc67f14eff3a4f9cacb9c7acbc90b4f7c2d00b34db1ea6b075f55dfd3b8a2d30b076e8417e3f0627af90e67165f51cb0f6f96cdf57e34a6167f416ff7e5a49ed7c3d06622de28962bf766b3b23243a50907339b19923f589fa603b270baef25029c4ddeeba2c84ac0166c7eb8f622ec9efefd7becd536af214a1871999ce23f1d408a39653099cea801e4dd0515748a4768f0c44decf310376af68c1bdf8639a439dc348f317aef4f1f927f2bef52931e6ebf3e21d677468a3d99d796c296b46eb7ec12c37616434fd806c0097885acdc6326f641244ee2be8592f4f617255dcebf94e1346497f9dbf4f301b8fe8d5ad9b5d7a4a30f48fbd9e6f1a4b63a4124ee0b88c9a0c5057cc7489c6f4465609046309ff3399c93f30ee5220a30b134f233bda03127297406fda98203b4718f226536ef970ba6f890a5a777cefae502d3c8bfbbefc7ee192d5dea672f70e4182cef2d47c2e2e58fef254106592ef07ac6d3003de65727c18b971d223bb2da5b38e248e34bd1b9bf68004aec507b5d30b6fd969a213fcca60196c699d46957ec7a8522f82756449cebcbce7eb8ba23325a7f5befe5ae3be9086ddc6f3101823c9b5f108fe9b178e1fe151a7bee32a74ae6fc34a474f69f190f31be5c3dcecbfcb21af1a556510d33c22cf0c4523de0c68e2032efb9eba84e9a64930bda8feb62d0a2b74035b3501516c7c25f301c7dcef7c0d39f942d8baa5fa98b60cf499b2f46d46d1e69378c6f28d1bd16a7b83d446dd14c7aa1b6c2f23d0346f1e581c75fb5c0bf786351213131e53014d345312c1cfb473ec80212f61ffc82cfd63f2f0079e18dafc135317b98ab3469ec39b5113fccb65ada92b426b085393a28f16a165ce999ea3daedfad0cb6129a8b0f231220010efe81427a8c2fd20433165542bfbdf539cbe6f028c62ad54f87e7b63e3bed5cd103c0d456570bd1123e82868ad164aaeba6f852d989e75946ef4a0f60f47589f03a389009581752200b5878a73d056a07a29a9a894d7cd30730b56cfad8cdd276a92aee6af954e8b9068bc04d1c6a7090e1db3c2c0eedb24cb80784a8b5e5f62b3e85ca57442d8c5fc3bdc54a6c08903a8c03355211b573690728045b5f10f7818db36337e5732e41ac861b60c3d993e9273c7b8b589864ee62b25d9199dba2891058898b48282675503b7fd1363ca7180b7d82b5e010a54a5c60257c6fc751bc49ff8062d2cfe5d3dc6af810ab96c08bd0844f5c0eb356335e759496459ecef2f8300c874863ab7ffa79e5c0487ca94030d4160ce78af6608a76f10cecca4839d1e49181d9d769de1d6c3e3bde30939796ce641fe69fccdcebde4e791e4a2f51735bffe61ab3bdc3aafbda41dac465e5af19244c22b9c0166d6d4800eb97a695e804760421bda8496f9d8e8aae4c55bb3b7f664d02d293502c8ab98f740846241b0f3f31b8ff85e0293d2739b52e4e2341c8ee9d10c895d72cba523c2092b4d7e6b6e81b4e708c937bec7f17711f1c494448ff13b13d2015680d163e38fcc71a9b4a15d1f218290619ac86a1243a659948d761c664a92e6f023fdc9e8c0826cf778ad1519b138a9a13ebc782fc6b18761a640a03fad0f3f31916c81d2a2ed49a9886dd04af0713431e946e8ec9cea6798cd53c51634d0ac453f7e1e149c29e3b9c94cfdd7cd4699618695762967fb471213d2b4baad74f7526b410591b66b7d9c1a59e57dbb4d32887fc050ad2d7f39126da5628812ec2f842fd8bd2b8c9a30a43a8e9a7b076cf4181947a29d3a7dc46c41215e71a2ac7b8e18cd6d9a37b1a43b3ce0b616099710481ba8f0bf0cc502310edc8dcc692c230b593304054e1a6866e0f4f95dd4318583fa70ebb211078d8aacd9ff634081d1797ae2013d0ca056bc0e5d916fa4d54f8036fb0c7edaf8f2510e9c6eef142e1ff6d8330ff1a0512bb9d5e124a90ba5ac73d7ced4b4848fbc7c913f543a2703f772cac9fbaa3eadd5b44d8ed1492fb5d6021888aaa2ea96fc8ca5afa5e24e18f22c6f918e090161dfccf3fd8a270bbf4f61055f917cc333a9715f0b1acddb889b8cd8162405f29f78551aed0517b3cc9f21e81cc7f177d503a55fead8acf2781e50603773f5cb9120eed9dc0196bd0a8636e30ed0bb0d74ca1a5b2c25c2b3ba033802f6727a7e7a0490c9f311464f01f41c8c02c066357856015e6a3c7464b4424c7006a01671e2988d8b8b9b49a6dc38a628c3426d745174ec8d2ffcad556f50e9b1e2152fcdfe44e9886e42cf822428514e777abd4f2b6697779bb2b5749fdbe6fecd90469763043cf795b503e0d50b62df2556d656f7d088993c8b134032d14ad0381d5c8a6a3b865c49c21f5651cde0ace7d0c56163b6a62e00bfbf88f3d611d370100725ef328c32ecf806a650070f544540f434f77f11291115208da49a14cf770f21e296cfbcd36baf7077e38736cd3d8e49e6b635431e26d1c821e8b6fa69aa1c9b1c76735bc802bc18e99a865b941f4c844ef69fa956e2401fe359afda9c2211f778fa2121d741057eaf7c288e1006b545903582f767cc3a73dda9503afc4d0c182c4a0247097916b4b3953c9d7cff864b0ae87ed72665c1c2aefc92739c9ab28d0afb98a09961d68de39d1f809cac415b6c8c2b61f400d84e6b671d3241c7a2b7e67d8c18c20e74abb221a807306371a723e8ea8cf59cae3f3edc7acef7d8db21cddbe7172cbd4c6d380a187055150031c89c5cf52030a32b43aac85c69f3fd12f22f0ffc1edc6d009f16828b3f73d176e1b3eab812d83769f1d5ac255b212d81a678af81a24ecee737559c420bb2c746ed50be729778ba495d91d5c164b5b682ce438db4e790389c4294add29468da135932772f8dbfdb747fa8deaaddb420be21ea61404815189e310ca488ef84a4eb0e5886e6162889816d9f5963b0738e5ff0175dd2f08b2026848f02766b817569dd5b4cbfe866b77164d32e174a0c7a803f5294fadf25a487f46cabe513dc4d5142465641012ff07a261326ec8377cf53256c9d5cfed2e77a064ba707911dac0296ea799af67993ed6b308be55cb4197368d6a7bf22d32f4813bd0d4e71d51b926b67e23653cd8750607033fe2f9f7fad9ec146a4f091666d48f379661113f0f46b698f8f57736bb9eecbe843702069a913de433572944c5d2520922230ee6a4b66a6f04d631ca89323b05ae4217382e1e9f4e90d45d9c782956ca996945cd774684fca6abc5ab8ec714f76121ddf8ca307a43a4e839b0d200fec4de425ecbb331538cceb641a539d9a5a61c5eae576b596a16c98231c036646942637b5a1453c3255bcfdedc65069f1c8573b2b2288a15e3d3f4401770e6efa2a8ac93df0645ac89b85e7c2c33a653c404fea8625d998ca0f313dd8d045e10f5632f354ba33bffd307f5e0b86e0f78391d7fc280f6656775ad1c540399a7fa640971c49aedf680f707a0e5e2964d7647889557596dd1577856bae9a8a24875a96540c5a4b4d1126822cd6315df708f2bbdf2cbb10f7da88560218251bb1ed6ea52eece12082ceca4b67b47503e7ba7ddc41d623f8c8d6493691c275d10aa1045874bd252882ec7fdd59e35dce53f7cd0d5415b9ff3b3d71a3f067154270b56d9ed01cc0e8c4d0e4ea70fd7386a0f6bd55b09efbde1579dd3178852156ba4fc31c9502ed2903bd41a2b76d1035bf09f49585e23f256942837a7f0ce61f45174f6318eb1cfcbc200d65edb8f1ce19b3a345d2aca6c24430c7de61123d35572590d3999797dcaa96f6bf6e2e2fd29e3c08fc6580af7a6ed7ae109460635eadd0d28f90282918d82276a8f9b516b950e0b2f1899311f5da33e95eee5a83a46b2db24282f8ad4a4d36b6c4435a6c19a53b85797e5a9052b20dfb0a41651b7409da15534e2b8e9092bcb714867ebd6d01f54a27b7b5a6c298b0bad1714818d155d80e0e3825b1c7195ffd7b4d30335ddcda480c12a4988ef0c5d319def5cf72985b9f8bd5f0c839d2344e50f1ba28a2097292174b7b760a784cc16488ec26e002444cb4e095dc6164153424cf15dc229a15c94962e85e13d78d131baae4010694907dc1d701766362e1daa8549c823401f348b0226a1cb9f311163bbd45cdf10d87e6e6f5bf18e05e98dd1dd8342c3c3a7fead78b8b4f3e3b66209d2833c75f9ed2356ff2bec3bb4be380d974c1cd62949b49d29894bf6aa51acd01dc6ef072e5d200f51d73ce8411a0fe48ecd589ad2a91d5d8a90c6bdd7e839b9a862d4ce80883171ece77af41cd1ab2e34dd3b815970b96125c9f44b24af17503b9c322463ef0fd3c315fc7b525de31509ed0481cc7337063bf4872a1a374857a0ad0b878cff8dbc9d137891721592969327bb36e77c4151b7b4d0e3baa5122eba04c625626ef1e1bd1d150b8b21600a9838288a779be2c4e63484d94939b7060eb5357128781e8810955e1a0164997fab8550c30e5e2ebb72d3f3e8210074ccb01eb1ba737a4df2f546e7b3ecb7aeb2ba267e3dc82d00a237361dacb7bae54128acc05506a82b0e3a691b37dcb5a9e200e92749d8aba87cb28cff926b79305e5957148f2b991fdf1e8e927d4cb7e7acd5c8fc395d9d191ee9f2ab5c2e1bda80bcba6ce58d072376dda9be324128df483405ff8643022ac7a99ceb2370209f97d5e083dd55b750572312938278833503fcd75b1a1fb9bd8d4cba35e30ae1881a4071548e01afff10c2223d4c34cad77da582266d39afb6ae2c367f2a50653fcc068eb42e2c2098452d2a842626e0788e84e7896e436ffb65c078905e6e69c74bb49c0a755cb1edede0920e8d53bd0ba01c03dcb30a42f330e2aa4a3e323d65028d073e7337b524b3570ec97a032b9685ebcfb76d3f55778e4875ede459e35c8b711255b6fd1920b8437067a358e47779ac51861870a5820420b7ce2e34f4e70f0887e8d69deed6ba4da035aa2c7dedcf13942933f169b18b3ca7e8afa274fe615f7f9646c638aa88af634fd54268f4e02488cf9c1997eea16cf4a734dc13ebb0901a3cd4f39a86cfac2de6f879f1cd4942e72fc083c75aade22ac18ee1a625d5ab2c8beaf1ced42cc91bc5572b2834ee226b7bf13ac45816ec2cffc4922189a83a09053bbb22c3c67712352c58722d535f7c68fe5fa820acdd1e2eb2704e8ca2efc764720bff553441b7b3b1cd5b6e03274cb4ee110c718a6c1fca73992e4c0c792ec89c4afb3acc76324d8626699660a51e41d7956c3a2b61e860246a6352a03c3dceee85257888c78c69ee7f91b98d0fec788981ef427b0e23373902092e89f3c314687eea6d2eed19003aac85f8614c5b35544deae74ce3fc49b0271105c3d2fb455672d843864cb31fe034cb4d7ad2f4b2815d2ea60c78ebf9cc982bcbe856f2c6401b8ef8f3647f9d8ae79125e906491b8e88b6a173437d679b41f0422456d44b018ae1bf76235e73cee88796f7a18d7e48dd56189be87a4ca24ae4df59e71ad25522607116dc273b0c31d76c5477825366f8f381a4dc5d820ef19febdc54e8e4f87de7cf7a51b5c2e0aff467b2ed36778d6ad87f408ecc2c130cee2a5171998d06eed3adbc537a08d086b50cd223260c270e55d696b2b3840c20da188a11a2bf86b06b119cdea226724721f0a00b317362cd29b765ed2f29b44f2e7964b8242eacd2f7939c815faeff7f1b0afdd5679c6449b02eeb0a90457032026ff304a5b4625558548a3f5581e0adfd82499609c8fff3ebd95be984784f5fb4655ca89bc76333be2a6fcb89633b3a001f49ec30db1e408565d583fb6aaaa31417c009723a6c91f60c31365b0ecfbd6b15b501e7300834337a8288167a30259c09aafdcded1d51b47a553fad2e65cf2eca82fe4789431eec4dea2ad02fd95b14fc42f60ed5354f8faa1b18a64decc79d0ebd6d77d54637c17a02b62eaa61c67e41b74aeebd4ff903c59d36f0121abeaceb96189d2a8483b1476f1db62c33a54ce46ee8cbb895e2461fe655459c4f5b383a0e45b40f1fa0f712638f719ae1313ecb49f5ecc7b729aebb14a4d8d9b3f23e26b0fdf0a4493bd2a8598f8dee061b0d95cdf245bb98995600a41629d6d2b04673ce360f23eb21bd0f419e1264c507b273ee1eb70350faa4185b0d813ca28ecffd01a6321851283a09fa3d407457592183773ecd74d94412183f1e790dc63213605fbf0f3efad0e9f5be8a8c5e0280ad5249fc55308ceeb82a1791e17ea4a5febaf732297c4000c500969a69e128fcc7003433d0baa663c0a1e37771c13e120b9b7ec8128b1a3c4fdc874cafce41aaa1f19358f8c611cad6ae068932d0181ccfc4bcbcdab2b64e81105ae41457e8f92970e50711de7ed5a63dc059b4ff21e8adf4530a1ce153b0f689b82656f46813f4f0da6649d7ba3c6f7e94588fca016b8fbf7d6939142e9afa4c1d2a474e359adcf74d028260aa92ddde4e5009ce255e2719afbc1d0ca2974b2cbfc9cb9048de855ba8e27b627f975a5d7b8383c8a812db84e266e4bad2cca73075a54148ba4de816bdd656988b629d19b2c352192dd05b57f1caa18c886cc0d2cf24ded96cbd565f5713636736f5e13692ccebad6b17f1820537381fc0442aa5ae9a4d5ecc35bdccf03e53b0106ff56d9ed1b4719eeda4f02f0c5f28d61503d2c64966a829b5847609d7b3286ec8a5c4d06374c75c54a2c1d5c584cf0cb44137c7b88a7b7fd2bd00ac8b4cd1d6e15e815e8dd05bf02f8701991c603ea700fd959f6a1b025822dd2295a12147342ba4b6f6ef6d5df923e38e69e07771d7120246932b17236296430fea1317fedccf2ed20edd52f2d8f6ccfd85b81f446bcb379ebacc641b3794ac0eed8c8754f7ce1aea59b2a3bb891978ca3d44085e43878310275fa8292367fb96e5625ca129e0c5ee2a5d16707032649f0fd028849f0318e99a4d5207abe8b293bb714f67e5258b1fdceca5581747f691421a22a06753489dcafc0163553255857fdd5ae61466a66b69469e522af37c57490f5565608e66f5340d537d5f07de3943ee2d00046a92ac773a0d3f866272ea306132439a8f818aa3f11b0c8b1ef7d247bbcaef9e3b7a6b8147a89e71247a342f54d5d20b9f21297f62a381de62002f8825267795f7b73da5ed2c11fe83934ae7bfa5a22073319310df41eecf20f64bf8919c56703e334ec221e3e01e206d27944b5c04b9344a404cc3d62ac32e432881fadf5f16203957ea8ec56c3c86ead7234b82d3388f7a7b5264c59e105de7faf7b5811229a9dda50f98273e12efa9da115db7a9eb0673094376b82ceb060f60fcdf17ea221e8d8aee6c9267805832f14be4393cf41ac3b89f78840b9edf92db935e866e9bf627f39b4e42c36bacc01ccb350ced3e4d48cb259b5f232dbe96ceb048d53d303cd0b373e0a99e6ed5836adcad7fe85b2081bc5b4663d2d8dada27927c13d30204e3869da1cd63e00817d666cebbc849a8d647f3e1dd6862fffe4b12bfa801e374a68879a67b8653284558b2cb1edaf232a3b89d016a803231d59a9a1031cbd101e4864ca1412cd7036c38a4075742fe00b76494c7db9c81a203120bac6a69b67716f09465e1d00794af05697d0003e1653c9d128dcb8a381c8fb5525abdfa3f87cc99aa85d5b7979a2b6991206222c76e511e199e3c87ace878142f81232d17c061fd1c0fc33614fd51560421f5a23f42e603b3d11ecd38a22f62f9154e6801b0c912566a9716e19ac3904d2340f83d36de7b7ef3b1832ad4c31d2de58e24587fc493168142d2503aa20f6d3b6de0263180898c2ede800b93667c9e965c85025a37efcd489dd8b94b2227653e5cb8480d3372869271800a14d8606a4310d2944bdd80697ce94795895bed2a00e47c204a30e3479117d3fa1498112627a5899c5b5fadb87ae5f9837a69159c497a35cc002a4ca4fe5ad83829db9743f992d1590fa0b91a8b9cf4ce75721818a963d24c8a50f75713eb2f123de41da21d7ae8f442d4e3b60735947cc3cdaaa4e13425c2710648b32029c9baa38683318f0069746b40803611b0e7707947fc159db3539c8e50b11fb427d8e0ce9f2516d8383a3e9963e53c6aa6cfbd0bbd8acf29da9758f68db450bfbdef2d1dd66fcc1bd470eae7693c780153b2f427d8d9a10d7554bd37ca5cb0a2815bdde965cdd7e02c589d62500fb66233f88c478c21e3b6286ed66d74eb2920ed0176440ab1a6bc2a2e913085b918f93c65c38b621e0120d4256e4318e2a94952bfe7c91bd10bd606003019a0a583a65c98f8136c490f482a956e4e34804aabfa1b1e062a674217101ac06b7c0b7adad34ec910f1cb6081d96d771919483a2e13d3c5120bd7ea747b1fbe84988a25ccc8c70116c1ac134503afc511febae45ab91106e3c0ab60638eb3b2316352c95c1c764dee6090ca4788c7efae586ebfb3cadaf58319571adbecf9dac2bf2fd34541db3e92ed283de993e20db51f04b65068be59b99cdf3a80cddc14e6507457e2a3835e18156edb4336567606f5734641c6c0af608698ec42a9db90f76bd843837a216f1a0cab7c12c676dfa0aa26bb2b5629c8ea77ede42ad7f2ce89cf94c038c9078169a3191b144bdfc2d6723c18fa8a09861693bfe50daf6804f87d3482455343b6eb580020623e7c8b75428997b08728b764b90771d85d09bfbd9e71fb18e2263ad1d76359cc65a92c33d8577466699b36e189b691ddb493ac25d8eba7f95401ccd6ca9709fc338bdb2765eee6af3be44bd54654f81248e2629c80b031d88118b13812bdc2271f713116f392fcffa89a2808ca7b3485c69757862374512397e173c7e57886a1ad0e88ef240811704585859ac9f5614b4462ea8515976739ce79c09489aee253429c9156901349c26b3a49cb628825651a58a2c9af89ac43e3b06176b686df2ec3ad718803a7319e8bff7786f24b7cf33d6ee25d73a6b9e24b51fb52a6a1cbbfb4f6f6c682fe83ef0b78ebea9702a6144345f800a5e457a04063b45cce45e4bea32662da5bc3112140b5baf79ffaca6570ab97b24690ff32f6d92b9c432bbcb2e14cd319c4617278be1e62bbc7b02b9bc17c380c61e20aeec6002d5e4afaa65924648933bf38f38f06dd954fdc78c81d668f9bcb7dd50482649f3ae6a9cd244c1180a4b0df3b3e7b9df6cc618042c1a279ef03730ee68e9bda6a4a9cc6dc94b82ae76a1a461bb1b2267fa28376d3a2d894689bb4e304b2609060af496e9140a04352a11e8978c431393b49b9832530b9c6ad68a0b27b344f52bdb19114e1212ba0e58c752559a6e6302c4754876440e2feb65d825bc1a6fb8e6b285143bfd50961d7f8b5d892062e7726f807792c4b1862ed67f229b1dd4cd1b082a2fd28b9a0f6d8db4f598504fb3a20f4df6b9c930c6dce3c5d9ae34bc94255315fa06852dec70d5d2c5a3500a4b2771816af0aa1c86764bbc2474083a4c359744aa655e83f316e1d35df944be099b2b5ec05a3c63582f6a1853b50a44301a759952f780107546d0962181961a0cdea59d1ac341a47983b8f6246c97965af547025eedcb4a6f7124077984a83ca61e34c167884f6bcd3dbd87d47c7566687e7611de5d1e79fe6cf9ffb5754cdd047f3e17f428959c0398c2b1f598f2a3d0b36e1c8e379801e841b56a354235676327c7eaf219ffec76cd6e1811404b420099fc8cbc1635bad3a063be87233073cbabbb2b14b9ac2c73154bc51301c82b2cca04adaff528bcdb0fd67cce44e7c233685d791ba6e332418967f1f80febc8b5d4b586c36c07f0e6cf33aedd304362e1f328e8ebcbf99f6d0c06b8167cc6f827ddf413932ecdf4210fe1947dfb6e0dc61b68079a317f7db17152bbb677cfd027e4264695a6b7e980cb33755e8f7ce40621cfb9b0350fd89471fb50f9a86e8b3fc3c5259f9ec38d15d58d95675cd4a040ccbdf8315890ca820c7f1a7dc8fe9b179c1e4f675a9dd941a234cefcb6b07bfa33138da50a4ea6275091dd87c91c5100c67a29ad030bc68216a5844a37439d554106d330a000ddc37c165a6f71470ba7b763f247d24e3902a2ecff5122fce88c3caa1a6789472c11258cd1dd18b89b9d23dc4104add61a363a3852cd339837a75b1148948f5651e1f1d160a791ceb83ff7a2b9a72139f01fe782dfa61a3394b58937f608da222189b26581eb78f736ffe7866736c5bfeee0b5c64706fcae79373f839fa69b58276b4c30639c8d34975827bea8414b08e73d4c3d1d471f39e495c2bae05e1263665a0289b62a15a57591290bd5b81070336c39f7783208847659eaaf89370c68502cc62ab824a0a8d9f6ed3bce7bc98f8665cd4f9c827503d43affd166e2a820c36c79f5282414ac00ced1358edadf0fa92348f927046336054389419ef1e36ff65d3ee7255afe2720427b631d3c82cdf51850010304ebbf7594272fd8b6676aedc36d4ce6f67cc51d9bc19acd01266a44e85bee07253dfa364fbe1ea6a9b13f663287e74e61cd276d9c88b0191abb6b5fb16cdd9d3f70885339da8689d20d80732ea4b65fedce929601c801145378b8896fc7af22dff9944faecd6c0018211642233c526f55726d52f5d64fa8e9501c24157d44a73ac3e777548ee34f9d203f8941a5d7e09b0bfbf9d16ed125091890da0e4dd2aed33848839e2864f6faf77776bd8072cfb383661bf2f73c964045c713290ca0a524b5fa43c93bac8e99b46002e62993dee80c3b07c707dc02ad22b67357e8dc09d2524cd857e9cb716c2f54720953a1b66dafdca0b1285f4d5f94caa4ca82fa8fa9173a52430ee132bdb084ec5b6aa2e03ef5e91e43afbdb41888b4c646d67c11a487f300967ed6a1b21e85c6051fa940a75b4f93351052dbe03a6106d70326ab9b039a1961f9a32330bd370c2e9a275bafd8b50f9025e9390e341a1b82a82d134d3eb94f863ec1c1c03abea6aeb4595b6b52bfd5deefbc0c7e13a317d86e175a553bf9e5b1bbff42623cbd351e2f2b55879c57970c5418aa74eef363d001e0e726d62086c4a0500dd634dc64e6ac2a6883e2cc53bf2a9c8f16ca3c8110a02dd28520a778112ef6c049d80d98a99863427236ff850e18c73698a9a53b7e17a6dc9f5bc5e46f02b1c18c26ce8653cb76796677a37411be7072523e3ae9ad8682d82b918b297c55efc9d97184edbc4b45d252866acca4633c045030b29254a239aab7787d5052c74c7bfee457f56a541daa3efd66684e4077354c038d7822e04e25d390c5c50fd208f80e5aaa7f5f4e21a7a8e3d048d587d028bfdfd8c69b72c592fa8a1ab39b0a1e689c01f02f6a1260128e7c8084965b141feaa21179df6bd7d47e5e67df8028a26d2820c33a0909de15a0aae748bf030b88737741ef9fe6b3ba0b7ad5a6a0c919be34c0f7d820a3df4340b3897f48cf397e6ba00db77fb4d4933f893d9f155d9def0f64e3c60b766170a8d0b022525ebebcb9a6e97f764f179b7f1bb9e3e3db2e812e5fbbeab36c35b81aeb57899140dd1d54df88d0bb09b198a4e90870756559bf9bfea075a7bf5ef56002bb0f59314d3b6440939c28716990a20251a3b04a3f0e721503bf4923dcf4330c894d5bed32b829e0ab3e34b243adc773c4e06652356c45e6b6ba4a07687ec5d9d28e14c11d446592643291a27e0f4d87cbd4f7d3378138aa3d8bb119a6bf8b282d0b4f47218cc906d2eb02bdfb701beb04c03d0ea0547d90c3a65c0ee3b856668761ef77f0a7883a34d5148e415f10f16b4db84b44eb1cd38fbab265f3621dc5588fe7d9640c5352ab5fb4c0016d8717026e0cfe9f503337610ab9d8f1ee19517879f569f2a92dd9e7a7fdba0913fca76d474d051126a43d541bcbd0db2bf71d0819b477c3e483c04ce1cd60ff527798ced1386acc8622a5642a1a0e5cc8691bbfcd93315d3ca25bbe205085ac4b7d401827cde34fc0c9e770283af10c86e15b82a884d46463fed161ea990b954521605533e3f38832a02951f40cbe13667692f3b18907180abe1fb5a31d3697e7a69749ce4d298a7cb6fcbd2e5375760e667287b3199b89857d1ecb538d925033503d35e3b6f7049af7d58290f31ab6cf2f36a918bf7c23979d4c09da030db48e5c9a480fd5519b06c6aae0421b1435124b354f39eddffd55fdecd7a95408db724072c43228a9348a550f0a63f8eec4dadfa9f635b40f6ac28c347e221b181d6559fb950d1f0cbcaabd56a6c281fe2877420a73dffabb49720769b698aca5aa13d070ca8c81ab815a4d74babe44f56054d72309f9f0b2384d6fc15c056d82d18f6d4626889c23c2384b7b1ad878185ba211886c0f820232a67d470da129656eee01224bda6f91dba920fcd2dd17de96fa4126014104f68ca61be957571df2802fca169e2c842201f64fa0cc4b3b9875a092f714af37a88081314f4316679778023f4572428e87759cb43230826a66bb2ad88af10e3a6296f2419913de9d6dd783efb4c07cea89b757ca174f3a04800125d8cbd0ed18577dae5090d5695c822d171b0864b9a21da7c0f8437dbe5c561e2e38188b43ef4b19d9409ceed4ddb7a408815e0bcc1d5bff4d3fa48a6d199da7b7026f8589258dc1fba8c3e0a15fd8fe5c94f8df7714047b03359893d8579af3ea09b1e2e48fcf275794d33d505d882bbe72b76bfacec71ffb48428e2ff3a60bcd4933baa9959fd57788076de258e9099754200bb228b2c5f8bc1d8b42055c18d087f6fa1643071972076a547d49bea120be8585f65e1fa7c2a4b2af338204c1dca50d92970ef30580e4a68a3d9122c1ff6aa30edd81490904c251a907817d480e4eae1c50fdbb770854c5818a8df7fb5fcb539a56c0dcb5187a6a0596b5376a420b081c2e0c3227bd4a2d3b046189242f9cfa536d9194cd0ecd34bd00fb9d683bec86bbc58f2ef9010155e4347baef8fe80afc014285048a700af28ace369f2bfc8ceb22cd758cc9f5a97b191b07992ee86402e15347531a0697360df6836ad5f22e87a772b9fca632a08cbaf88a0276cc2892ea985f98d7a0fe6d3dc8b9bde08cf919b341ccef1e61803600040e5939ba865d2a2e012a02615558b587d1217f1a5afb31ebaac9a6e3b3a3948343f8fd1f4f5d10d4ed5c29d16ceb971697120d3e4f98d7a5fc8aebb252fc34b11870912aa5557ce1694a00a12816a4ee5acbd8f221c4a0cb74001fc1144522e0859fc2880309cc60c5308e65097566bee5678f0e6c490549718aa3a5b35e44942e6225155b9ddecf8d1946451b829816348a51ba5061772b8bb578fa2ccee4d7a792015272000b1c97f94579f819a8612cd98e4ecfbf9eba70956d09c0e0c9f6d085c232ee2874e3182631f5e8ee18c0e34c4864c768dc5b9f23872e1f1e7303d9498b0575418d1ba940e83f08afe30d8d40da0f4e383cc4f954077462b421e06a15a38853dc081f4d3a8fbf5c059888602755917fe1dbbc02f311108ef3b0d89355f428ef2514eb16141dade80154275879e5cfde71d9acbc4849f5f19395df8640d898c4fada306bca0dce86636d0d748c014df0a40f83d3e72c48986603c66e5288eaf4d41656c193efbf7896169bf722091e641821b8c682e7990b8afbcabc7bf4710eb1dbdb9e579572a89679f30be2070fff0284da357947e8ce717460c9b53923a003ad9f12f2d17ebac01888d5b1015c345001fd9f9281580e9176c5da1cabdcdff4cf68af7a8eade441e93c8da290b04fcd8b111dc2223f378513d815fe6e58a5b9c3faa130b9ce74032e13270c0a4634c24c68381c44b2d910479912c909d72e7251bc92571be88b8f6e084f20ecc1358995395ccb8cde48ec00ca9f7e213152263229b0ab5f2a72584b11dd0a5c16eaff109b36207b997befc791d713b2b7a079dac5d424b85797923707a9f9f682adb34b88e685664453c7e57ff8fee0afc04fa61357b7fe79ce85f5ddc81d74172e66920006de66be7daa64bb79fc66a392aeb265fa0fdff6ad16e31fbe559e56f62c5cb0bafc4a4f04f832a49f9f0b2297e0e474555dd7f0531519d116c71974a48b253eea23c955cf9d4be7d492eac6608fd937fe5bb4fcb324fb92fa465b6ce8b0e043320e353f4d845135c747c30aa657df045e4bfa588d30090142aa40302bf0c2d6d1a15c50b80c4548bf4d70dfe724dc3011e7ce40d33c738c761c42dbd336d36c8bfb2a39632ef8603e3a77b0995fe23bdae604083684c5f9b95357dd2f6846dcf2c8f611246e54e13913ebc2268027e7c2cddf85463d0a2539f901148a783d16981b9e204e55733d141916c213c5cdb34bb551eeeb3fe314ba204b3f1bc6b6f9e278d0aa9fbe5820e3a4ef8d77cb8847f93ae6db8abe13650394b3c3d26c8d9b690ae907680efedeb7b79aee555c3b2c2e1184b509c577d8cf691a17e81973bc206c241ce54756dab1e90ebd40a76a281ee8c78a65cb84784aef06f4304ee10cba5a30f855a9d7119169b395e1534855df77ac66d0fd8f4c34094469463518035c2f151469cf3220f69d515e22b52f963b4a9cbc0325b27548197af82e814ef06f6b0bd0e00e060047ba072ded5fce35f39cd332e1889784d0260300d1417f381edfa98890c3b322a23228ccfccd334415d4d46bf521f7bab2d0064a3c8c60566ee5fae813a0e02b9a5ec09695ab248b9de238847a81bf087a85396e8f1e94ef4f5702c09b38a1b9c5ec05bef60ab69544eebda789cc88f8a55130bf50a7572cf63852f9d4ee2ca3fbc0e35bccf08d2362573af71f74f9ab9ca170862cff6b90b92664987ad015dbaa04aec1c140e4a6cbc80220aa114adf380026c747ecddd849f49578fcaccd53a9b2cd981516825f6207d4e01c22a83592fe9c3f01f1ebfaa5d3ac8a637718c4cd0ff829f94cc65184d7c12a79401277c8d569da158d194ff502c60a45bd84896d32cf45a68ca2454b16706c1b7b4f3297434b1765526a456300b4d60eb42beb1b4ad46e535812d6bfdf197d8a12904d6b736a37960586d5642410f61927d73fac75764f8b673e90ecf5a3610b7cd0724e8c6a5dd871cbc70a7c02a05417a00846c8d8b13e22306f0353a4a766ba01ddebc4f76554b094c02aebbaa66aa25b9bb47ae1896e316800a0462e825c067dd239b60c1c034af4028129792aed010301baad78b2efdefe717be4391ca55e027e1dd8a8945b9b4cb5c51f6537adcebdd4e3c367914a565dd57f13b9b0506c0331ee3a9d3d9f506e1d793142205246c98fca427ddca93b3d300893589ea364717848e31eaad0f8a10722b5c418b43660ec546a1d362cc91b9f6914a80bdcb3e1fd274be02afc2875fa1d919e88899ec2ff95cc694d134302e26e18f0e8c041f0e8891dc5a951d23cf397c28ace1168beb6fe6e3ca2b0a8f69e16b34c42a060182ab8e29458556af92a9eeaab0b2a4f826aa7681555eb42fd94077502447e21874b80340e61d77ac8ff538faeab6608190941fb0342d6e84c65bd822e53d03bd240fbdc48817b8bff71066542f912cf9579925836e39e27b63095d682e11f8e73fdc61f890341911e23b5c0b2a30cbc5253e8afa1b4c5be76ea102bcffbe355129f5fdd47d14d156338195a0f90128750ca3ffa7b0c3ebc2a2d085bc3b7d68ebdcc38be6ea727972dd9beef8388b7208f0784850c73f9a757a8959439216bd2617061b17d04fee0aa482a93ad805e22cac24a30e7fdc0fd2c0190feb8faeb8f2c68021c4220e0b91db066260e92db51da2f396c18a06fbe95ca1b6beec25cf29707f06e5cc0a857c06e679a6fa0dbbca7b9cb0bebf671ee861081c7d230be137b9b4903320d925b1fe7c2ac0d25c7f38537d017916a94330cf6683626ce542d52b0f6f6f2680e66a7d9aa4e331ea389876925cfab0e6aef5ee8dbcdc613fb8c8a806a73729a2f0345754165bb29095071d09a66362240d20da3301493da6ce1d64e942e302c89ea4f6a3397db3acf20d1ee2814257070a02f14eb7eac74e0884bffbc03991fbed106e2f46ea50c16c87d21454b123dea2664e46eee7300772794e3448fb691113cd548787e9dc04ac9db12a65002faa37f3a6b0c6e9f572ac59137b20f42402adc98ef5276d67b6d25019f2d32caf3b4a8b9aafea1f7df1e298a0558e899ccebcc55ab2aa0a114306938b11c379fc01c73555be3c11227247f12bc054b5481444465d8ab405fb3b1450865ffe124ee28c77d1a48006974fd9aab5f59a52b160da6488e595809e131966323a0df52b15c0a4b728be15dd35d0a81747c8950da5bec81bcf22ab32308ac37d428509fc4ef9c347b6b4391a0b032a61619cb4c16bab4996dc76c875b8ae9406b7f2d65a07d6e91e70cc9fe71d3122198ea79980713760909e93b182a1bf958867f8f2f08039a7fdc78e7ba900c57f7b763599c0e30b66b131cc9e89358f1feffb4c22ec4f1589eac785232d541fd1b53b7fb7349b9d07d6bb53242ef12f17e17c8f237c5af3676483a6e1c14bf3e1ae6547341c076f6cab8a7e291b5cbc2348147a79e42193803396190c5fcffb62ebd50f6b51cc8630ffb0be792a972b611b0ad176f534012485dbb9f6c32311612f44e3db1aaf0468bf0be167778a17a6ae05af06ebde8692267a9a7a07101423e2951349ae8d71c570f799aaf5c702b580e39bd6fb6dfb322de3ba31857574ffb2c7b5985cca86b9e49713697edfd01ba7a6257caa46140f898174bd88d707ff948f584682c6a6b9e0ed8bd33022aa95be44f83614fa6cbdc249b6133320b11b87d4555bd45e635e0a171e1a2d2ebb2739acd37398bc869a6bc9dfbae7dfbdebbdf0a12551da4420439510c6ea791c0e80949fcbc866c209635de8dc0649e1d0b14ea056a7cde6b5528b8ec1c86b2d715b870793ca8c6814d2468e622cec311d500e9d3170bea8a3b80b39a9b2c82d05da5e1a3dc6e157ea2aac4845b9fc353824904d6294e04ac719f2281408a5382aeeb11c2295a5153279532035c25cb39af693545475f72639c8f9bbc5b63819c1b95d0d176881b476403ce008928f5211aa30274d5b3649958310372c6d6528259927e35c6e54df1271051b83d93e97bf8a44ec3c2a2efd7ed9182b1253677eeca6fd8f4d51b963745d3b0566048574eaa7a58c90d717bb8ac62c9f2a6b856ace67c22e44db18dbd925080a8ae7a6c835b24329270687962e959c6352cad5d61c292fd09e74d51583ada35ae7dd4247f198d89697c7bb00340a44572130c2a211017285feba12b31093bf14845570963f2eb352c5a5f8e4ec590728b86c0b75405923606581674d6defdeae649a097d23ea6cebad2fb62c9d5109f9250cdb9a92bef4b4b42d7760bc5f5b8361d8676e9c900fd9303611098644a06d8816e157477535c78a076d1cb60c8f5ed6a08859829eb856f4cbf9d419eebe48cc2f4a276534454c219ae20164406e27b8b01f2b546c6792fb6b46133fde254baf8008804da53a278a690e13641abf7560c50d1aa918c108e7ac703599977f17b83fe893502ab7c07942354b95da1d05a330d52daa9b8ae8a3ae757b3cb6f8ab81de072ac83a60661b3f3fc5c889c90b9bbc377abb196b9c5ea8b6fd9158de8f00c094eacc3c0cc48fa7f80ff5d7f486d9222e9e1346ce32326ef2ccd9ab94891473779d85afa161d28a9ba7c7cbc0b6356801659f8c7c6fe3ef956d916dade7d44a0e6a8c9579644ad536579173712490693eb7a06467271f24dc5b462f6c04acc53fc323a3293a2b9f0c1d976e6ec997406f979247142386d1c17ab2ca406f2f90cd49a2857e861ae90f8538160d96524ecf2b852a55510667b7afa53108461841e62338f70b1e2b5abe03338d09de2156e82a1a04d280cf5438993a4e8816320af63736897dd1ff044e412e0466796d16e5e73974ea4be39b8516fa246ed82b1881b9822e6cd174f070b6270aa1a37625595d4b8c44159ce5b201b0ca4cad0cd3ccea909b9362ee8395a3c1d09a8dc3754baeb80f9e66d19317f7b4fd998c2160292f782c7248fe78330af24bf00db3eeb3d2501a2c5c055a0b511a896cef65682edcb8b04b6123b3b708acc09a66ce6f0996f06692277ce37b5df30245faa84c14598812c1d17b790356fd336826a78cdb94dfaf5c123ec126830d3d68d09fb3af306f3e95683af2b3b9b2fd01e83b808b43c45c16702ff5712f633bfd668502c540a8334ee0f332896b4058056537444db65e07ac0c970384250032cc0c9cfd4aa608d66fcf1ad621d7f3f902e2ddd2a37ac1a115d0fe5ec271f46acde99d6be10232f544fccd13603de2a476ee2f2ee5b0dc33f973670e0c8213ebf5c01b989e522d920672593ee194108c9222fca47c81bde5e0c1981eee80c85c01c766a6f229097e7a6ca2f8ac9a08b7f2c4aa6255c34b0bfe500671a927cbd70922576d6b843b2644ac0f0318112e5c2c28a148e4b96a4bb8385b2ecd57f9d537345c3f7da778b50fffa1cbf3ff12def78a73459e02caf4f9ad8c74ebdbc2f3cdd1f00bed1bee73398923ffa87d489e90e830b32e5159c6725b33c48882f9deea5c5483286f4497b3184d433a6b1a00dee840f4d3754798f7ab9ac15a27dac3f028d4a1589a18fe03ed7f9c65aa0832f61c62662601238cb2ec6bf07ea9d921d75743062c5b9782130b7940602f43051a37ac391d67665b81cc8a85806c8a8c4752e4b116dce91a920e4733b5021617f076ecb1d01301949645e2ecf0d1b02a35195c58e5e78b53dfc5b820667f15af35a6378b0727b08c6a4979f6b4a62fc00f71d3a1def1bf17adb60f37b0ddf1eca4dc7eef6eff938f6378cdb06316ddf1c9fc66f0f2166422f5a9f983baecf6c44a12b305190a68a8d342f62401baec717e325eb32de7db1b1e88b70f23ab4c42271ef8f033ae823275e16c897d8a0b6a2174f81bba7bc8d3d24f308f173d31c8b541b99e4c6330b7617ca9f35a7c94fe7f2c2e82bfe03074fe2b94c0fcc5c51d33cddb9fd2310d8f0584f685bd96f4cd8ac20b88c2226978e5b611df99d10028a6a6844e79c70761659ac10257639ef7839fb6945f5085d210de6c5c0696ed7b534605cfde67ac538b0858feb3cd8acc403f231056660efce709fc532630c8cbeeb8812b315623fe62e489192dee99a69ff0941d94af4e8a737c14d9336e21af2325c302c364a782792e1a297f1f043bf6302f3f69d757e0dc51fb6a5c6cd9f0f1361444b23cefe0c24756f1bbb8e36432064e9793fee33a16d3552ae01b3202b2df9af994496c3d033092ce433a7068845ecaf8b464b3daa3513d3b778c1e18ce0aec19d137ce4fa9badec8a6b33e45fc2892ed351661e8e1528e8d03371ddaced0bfd9f5d7f17ea84f5ebe6a48042be2a16854e8836d33422d8730b6c9277b2061dc9956669a1fbf006899df51f65434e335903371a1bf5395c5be9fc908a04867c115589be55a068415735ad076b5020728f5e2ea521c2001bd8f914e3556cc567a5907e1d4f498e9f20dd4031f82c2a237651b6b0badf42e6f2a947a9e8f355397486ed516ee647eb2a676d34130c9876fe90848b3c35d0b761f6d589130745dbc6b0bbfc49793cdb71f3f6c8a7bddabdc833330404143bb51c88dfa1eea86d6268578dfae37435a7e7a9aa0ad6c5cbe019224f845e74a4c3ca246aabe5844481ed6b012f10b3dc1aa7b97f76594ce18fc6a6f905974beeaa8142b9a3e3d84654543a67776226f35bef19c8a2ed5b2551a49af941a35be6c6cec3b3084c0ad5280d7762f13922a2d5b67a4556ff49c1639ca1f080127b5974005e874806aa9c2471744e363f47fde8013d8e12c294537a141d4b4c86220bb2a67e46fa95d9b1912112dc5939ba7e4593ccf79d54bcc04870ea2fcd18a0b99f4dfa423b178e32c945028c5c23882621bc4dce54ddb8940b602dd43674b5346a93034940e7dca0177a19a69a66c3acf59c92d96d2f83977057d47622798f190b9a8cf25deebad42ffa57a89d4c521f072243e0f56bb7808747919e45fa6b2962f01e0bec86a9b0eb07a4a35ed372511f2e82c19ca189ec416e9336de8c1a10c4fb353fb5e2735bec80ef588c0ccf98878b8451917b12d084a06ccd7bf40d15fb3b80c578c52bdaf3c71b3a8025b45b29af6476a10e40f610d2628e0ae5d041daf89a261c9942be1563d68957e104c7b44f3e5232bb632fb06404a45b4c427e1897fad5153d4bfdd5bcddb5fd848084a8c9d394cff0ffc393aeb2acb6648996b21517c2af91651a0c19a19a6279c5fa436bea41b9badbb280dca6e32658ffbfee3d598f30dcf3e0d7c445f33096c2e64e3c1b29868b106d9799256e6977319d333cf06c968e3625ee38df20f48f46f0d896fe187c678441abeed98ea1f46bf1460bc916e2ecb9539eb80a82c8c683ef3c7597dff4eae77396cd9b2b37ba3ef8b54385d6442b416526d68922a4e8e4677e8948290832353a0b5c7dd1b190f10d95feb90881c0441050673c84c405753650b0908d37e151e80f72b1ca19aa5280b5bba6cdc72be21d8ded80c57352b225eae0cf145c42ae6b9742c4b51f2044bb9d2578d522838c697145fc774380f4a556f4b8216cc44ba636a3d30a9b0ca9b8f66583daf70bc725ac0d3459e4f697655141448336e7b26ccfa03c510ae53df3c191a7794d82b5c762e115015e06703b6a5e9d2468902a1d2062cc1ae8bac930629b0907edb845487d365401c116a227b2cb11d5161d44e2894fe274a458ecfac3db87f54736c8fafd2459c3d6f328101229fd72e0af0048148a474a18281dfe780cb294a8392d0a9f3fc3f954a3f02d811f7102a9b0c4f23434fde87825a3d23c4d6aa8e3488a08597a18118c23861df98d8fe35368a6431585333bb63d1b8b46c0e744c7fd04f94100a58ed71eb1a8ba54a9b289df78fd08b13ecba4c73aaf36881d526ab3e600c300f564b1adcc6a3eebc5adcfb718957692c8bc86f7ce93de67c2477d9747d08e31fce70de1efe6996d4e272c7c173f2d06301c8d523a1d8c884c93bbb9a056030692e402b18791a99ccb0839492d04b3ec9fcf581d3d055a589bd493e8837aa9041672f1fc178940caade0f0964b4e65363b2de94a44579fa7b6dd8f70489aefc30fd7b1bd57e8a33effb9fc93c4919d2bb9c5282e9ef375882c30ab0e2225e9537553f065fabdbda30d11eaf77e5f1124df857bd5bf61cfc6817899ee8c363226b30267142fab090ed30980bd6d0faed1fdd9df9c6ea138bfbf01c1bb3987bcda949701e1ffe799522c7b05cec6e72bb3b1ae678a5aca416114a7b3fbfc8a1546ba81b1394cbe961b545ac919f092c0487ae660b8e35a73616bd84d0c07420eb0dcb58c33e2358c95d91a90240707172f0005d813423f8429cf2299041ab20b3aecf341db7ca09b7e3e9dd54f304089eb6e9c9220ecd7b0d24ffd672e3d20cc5534c9d168d6e667f8c5d264c75cd7d5500508be74c3c2ceb123faddf195dd85704615b88e662613613cec362564e0a4a6006c38a7331149ac5754b630c6d431be4c2eeaa47260d05406d8d302ee0cd3aa8542885ceaa6baed8d518b90c826d9f286c5b7996c6c8a6978e8c23ec0fa5a9cac5d4d72718a006a00c8482f01559cc86f394de40608a1c76b8ce7b06f4fc5d7b28c5ed311e6bfcec7bbba585d77340f2eb38fdf4c130e69477eaf0dcb0070aa230088aec773c2048a6c7b9c6826562cd3f7f88a60a67a2d97b9d22f2a3ed21abb5b06c65295b0898defd704dd7cfc6ad63e72672c30a79adc76f5833aa72e627de9f8960ad3bec88c13ee2b24871734ae12c85e90e5565058c3307652828a417d3def44060efdbf739acf0129541220107bbcf21b108b59d6ee116adbea1a58bb4fec534f4c26c171ce04000b79ff90651fb9944a7b9d62e163c979126a388c2f62d0d45ba25c93451e15a87d3dbbb5a81385800f68c430ef4f26b59b5f40a9287635b2f76ea6295ed6d1a483ffb992a0e10354bbe2ea92f195a80c7d4d91991ec90e28b5ebc311740a1b8c5ec38f5fdc8433af2360d301844eae88c491ad02ba8ddf1ba4c372d236e1db3c13c3b8509658a70718527c1e524987adc1ba85224b73b95d1bd42f88b50947bdb9a076fb340a4de798a8de3d370e08323c7fa3f72e4d20046f89c9cda9c5d7b17c175c2322109ee8bc0798a280f241e70802a432d01b619cc25bf9342a55c5f88c539d132bea068ddbe66e838b19c7542fc7b5f9acb8aa4b6e07c59206282af5e7e2b0b650081badd45e94f5b52305975f76f6450a1436d9c19ea0407091924ff64956af639e3f4cf7bf3c8b27a5613baf086e2b0378985c7f576e21642638f5aec15a93a38693f06116f48c9490c9fdf08abd586915aa10905c1cf060817281fb8d6a35e56ce75cbd1a2997b658c23912153868f14abd916ccb91e2fc1b672a44adf64bec5982e88dd3c4c75cb29571445a28fab294da2c77eb6cbed10e7668ccc19bd09052791015bc6cbcb581e4278f984604af63def6bcd0a68275ae62dd1a06eb6ad5af51dd35fa831189558400b9dcbd1bd72d58f0476175c43d25e7a5940fab5ab14ef24c2f1765c4357dd080688de2cf9d8a8d69848e9558e0c313c1d904b1cee5cef235f483bc996f2722a3117bbe442c014724a897544558c0b6eb947d1fcb9c826633ff9b5603478448986f9cec7e6e7b00a492b81e8e68982cf89be6d06fa589d6117a604b6e93d75ad9e3e888ec49223e5fbd2fbd23fbe68368a242261125b3da4e9f0f0db4ffbb8625b856dbc4372d6d78f89133acf763521acebf1f19b9edca23f7a7b00e7cff20780f62a8ec1668d511116abf1cf1d9dfb3e7112924ca9b8dc9cc1127206a6a83c7c4eae4ebda0d9fdad4aa3e3585e17afae2d026d8b8c657268e1a9394a75b3a0f00e0d22f534ac614c70b21b642eebde2e5cc85b3238ff2bb351f1bc5e42d4deb4fd5fed039e1b9f742105d14f6125f76de26fb60dedabd844f71793501e40e006d7a58f45c95505a0f22f657c8fc4e0c3aca24d260a0c2f4d918d58fdc71cb1dc82d228e555ab5681fdabb5352a41dad22ac1ff9c85234841ec6646be7e94a3f2589cfd809e6beae9a215972be9184a3b0b22a738f60f1798dc3563711af03754d5bffaa61a1db348f07d436543541e6ed881d6d59a2b186d42a7c61c2660395394133b2f7404f838dbd9b791e752ccc4a222e9761fa0de0a7ef6c42a6870527970191c437fda116429ed61bee25762f63f49a4a4f5f690a082beb8b2ad71da77af7ebea634c66d6fb838a86667e009175baed41ad4716dbc24199dfffb700f6326e02cf156ff96981b2835f5206a926bea06920ee8a8624cdce2ed23b5a79e4f32ad730aa08fb3c235d90d4b36c0462f42dda1cb47033c4aa140db1c5d6d5f2e0fa54e185bdf39855ed005053eeb0124ecdfaaddf6b66ca876179120adf6a3418f1e59258d8b084b60c2d9cf046b9bae4449286829fd09827bed6c4bedc9991e438d4bd04a5bac82e873d1a055113456a9754b5bc478dd5d788f930302bac838eafbff566b0cb2119f0e33fcd104d13e276a874e48424ae68b75f0d6d66150e895d9ccef3a69a5f5d879d8bc214c314228a385e027d4bb9086e67c4196e438dfc8ab0874c23d0e3da37fad114e16a9b007e5d2f67c753721d9334ed3b1aa6ddd6bb353d4028f3c41b7587adb60dd425984458f178bfa10584a7ef1fc437e04c75def2cd0e4ed2d91c72e19fba9aeccccd91cf9a0a33cc2d69f8d9108e3682ddc4e21ebc766ea285656d35e5332f80713fc43a28a1a0ec3d9680eaa17f55f5a49c74d4a563aa4759fb9caca499c97dc35c00e3cd2843799c232e0b3b59a1672690663ae919ccb93bdc26aa87830035a2758c841b9c2416f610e2e42a0948a245c1e260ca534cb731db0ae0a004ea60c13f8df284257a41038349a7913b602e59f0d93a3d82c73a873ccd5d56fae248d08a671b1a77733f2a691638f944215e45a737230e818e1bc929f70d4be78dd569216bbdb264d1ba9f673f1ee8506f45ba3ca61e619e02b62f654f91158c676a621f405744c491e3742ed961769f92cd43d9ead581abb30873ee5c809ad070d3fbba9b24bb86ac85566a4eae55433eda548c17168f62d2c2436574d34e95f274ceaab559aa52455860c688f3aa543a5d588c16ad30b6e9695aa75757ce44fa9df13de692ae1256e0ecdd22677d8f3b95e900e7da132b8fcce64c894614c622220567a164487ef00d8e0d16173b22f6d7858b62fcc64aa7feaada82be3d527ce6e2570c05b11968ad6cfe59abcc2bad36da66b57191d5464387d5056b5559a45568cfac42efb10a9d27ac0211717f9108ea8bc9214b580430626131d97a8975ead8001693c39d31fa0d6eec500e562581cf6dadd8ac374bf00bb275ac1fad492c185405c79884e85e388ec05e3b101038b8c0e3061a1e67335552cf57d8149ce31426a92c0e05f604632cbf818bb5ca2e9caf341739ec77bc1a90766634ae75bd724faa6409055078aaeb4e726522820092c3bd46d66b37c248b57f566bb5aedb0f89b2a13f7d4d702f8045acfb68a5986481a60e9e2abc0047737459b0a045a7ffedc91cbe5b13bd0d98db2a5ef70454755fe741e0600b57cb30d03cbc813354beee063653481609d5088b3c9416f85379d000da0eaa920103a2a1486e90d2c8a0f42dc263572e599ed45627dfa5d731eaf68abe7b54e3d06ab9782430c1bf253b01058e936f442aa07e372b580fb500ea190b44764076c584a044fb98015f29a07d6c44e6ab38a4c8773d2b0c0c375b135483b2c8c4a4cfb053bc5a0f53bb3b7986cd58991efbe2e10e0d079c7d63d74376adb72fe5a8add76e1a0db356ccbcee22c29805fa9178e637be625fe49ff04e6602f39b1808bcf24494bd25813611d900f5996a372f083e6239a8a64e9f40bde83d119250f801ecf694f1ce109d11026ab498423883cabf601ccd2148733d81dd710782f1a46518e1587685da60d41f7cdf624a6211a8ac0146843fb5f41ef761b8ba1a556fa25b5d9d2420259b0035c932d9061da248556338f3e847d678710037b7ef588f07c069a37ac9705025d82ae528d8b96fd46ea1d8e652e39a93e40c9900f97011946926a39a11f41d4de3c322eb8c727ea643dbe1e474af6da89f3a09e66b3af69ae718e1c3a2872d903fff8b17a5e7b648b8fa18f1f4f4bedf812be1dfa377415d51b934c2e235272fc47a64e4aa903d374e3f7cacdcfae4c668789a41afc97e07887a062bf65a4de110d18ab0366b24da93e061f69a7b6a87c00a4f1dccd9a42e172a1c80e17560f56c3df4cded3e5ccf3e128381cfffaa5dab55cd1e8754d12cb02ee1df763fd03768b3f0c03a6a33379129cac95db46789f1ad06dcb40e11ea0fd36ea99f80c89525feddefa8c06a972b3d2102f910aa94b0761c1dd2ebfbc120df226a60002305d89f0cacd16a6c05d110d303ceffea6d80c0baaf9d049da9a5e2f6a4c05a939a3665444fd0deb25d0c85ada073f9f6a3076613bbddf69595545c10a53d283c3a5f35948a57b79581f5028483c83559ed44dc45f39a16d427cf769e28c1f7e4a830b908ce7e176f66e6c403ab60c8ccd0aec06e3365188c4e2b250c1939167ba35e3c89a4c068601e22036ba70e594371121e48d00126f3da152741f183358af33e4c7f93c09a441e5dca2e0dbf82810d55cf0ca6df85d94e1241ff0a3a01c14eb6d89543f513f24281d9859ed2b2a289fc8f2e022bb78559d63acd93d62c22b20d04a01b8540ad4060ad97940e5ed3e013580715b0f9fcad82ca7fa9afe160284dc32afd80b90a11eac860d3d8eae7c2ca3962b23170a1c9a7c14081586b018fc05ad537f9d2f86eaf78d648e7a70be7676b0c6fda32b0f655fba18df513a6666562696f2c9358b554e65261aaa4661c53b1e6c610bffb9fd5ebe57239b1ee7244ca2f4715a469de048c0717456f6bc533d55e6c7177d3d50f204987fd59f1a2df053996a598a07c234cf8714f08d1f54c7344d2f50c28647e4d0c8de478fa1782fceb2ae5ffdc59e23614bf2085fceb6684189fdb2a686c14f6a25c28fa542d221ba7772c153585c18113e52fd66529fe8658371e623572f4e234bed60ab80c61f0a19593e0749933a48998402b9046feae41971ee9aa15a4f2362c90e880edad21cb134909f17986bfa12e180ad83d1d8575d60213445ec796cdd9f82ff7b4f5aacb850fd17b30991f3c75b327514d3f04c4d116c9db12dfc589dd814a7953880cf6a10eb1532b4b1fb96fc2cd894120d1aaa1c5b3482b3be1b9b925871631c1c8e394e941b8c1d204e714680a94e1851611c53e91b2cdd7dda244595c85a3edf3f3c0a149509506556a33dd56119d348de929dac15f20659796f2f449e27411eb3bed6f22690822876fcb53f5d0787bc7e108dd662caa0a374e47e44c806e5741f56fb19f691adf81b7b21aa087718ad26cf33c285649fdff2366219c0c9e84438a31b3c8488fb025654283052ef7de4b244761358bc4463133e5df9434a127a57ed66820d922ac4031e148bd55d9c36b7357c5d1c93540aa5a17e33a5f6900161ab49d14e7a9d30e1e285827d0882924d238d71ced05418335d73ce4dbba5626705e85be16e070cd2a3e6894f757a5f4a04863f070d8299d9e34e58cce87f8a774369071cf4d854ac78932a0279cc54669ab0e092dd2948f454c098049814fc636060a222458c74bc8107cac64038a4b9cb1f78bb9d8e1a670b3ed72cfaa683ecac0b6f15ffbb014da16d8a30d8f0d476c03d07c21939d9130c436e3ce8717f4994b1883d6b27a494314e32a039ac7f19419d11102d2c158631f8cbc46932b0e56750e2f094239a6b538e47fb8b31fb9efabf12754ea5e8afd1d7e2833bb85c884f0424865bb185ea11de9faf09dd468f3c75f848e2a9e2865e8d4be1236d396869afb4e8767a1c34e52640aad1f5c4e92e7ea1f4fe18f7dacd3086f4ba212852c5dc4cc5a04ffcfd0242886864825f4ac471835ba90cf2a53018ad178d20e19dadf74d39bab63fb2e4ede9bb9d9596cd24665797992b956651f6b2cf2d4fcb15eb19e40ef504fac47ac27d013ea1df586d20bbfe6c0981b2df434ae617c35345fd41bea11ea89f58ef5067a877a63bd623d819ea1dea877a827d423d61beb09f40e5b2f6063596b347b3e018683f7cff6009fa93e6d00613e48483286ea6275766ad3c3669a9300142a0022c05f0f156b808adf0e4a1c47ec84e761413c0beff2e7f276a506c6570bf4faf1b3ed7289fff91c2039372ec55d52803b53df72d987b4282f7cd85f9861cf5bef2f781818e24de5c7280df1fad28086356d814fa1997a188e8279d8a19f819eb3a0616911b01d220f737938e66a3b889ec1df8872531162469e4bbeccc4eb25be44e1317616f09486bf994124994da407e85e236b94cc07c5c45ca9d4308710b51c4b4a7e6b9c6c2a4d1b1417e864eca27831bbe1c8829a8065d231a128a3af433b249083bc4bd13ff4b0614a050387d08a3c557cdd2d7b80f8773c0b4d675475816456f45b27395b135d5b0293a4f0527d85d41e5333fcc2517612906a48d93e666939b633528e4ce74a651fc099e1ed494bea7cc285af79d89f7d0ec7284cc45bd9bf13d5e1e52349c51d3be82c0cb76f2ac6df4c26d03bb96e2f715d5426fa83d1623080b72326d7f51eac94a13da18bbf5053c31c120a42f44be4efa837a0f80f8d09b09c4583be15cf21e80e84652528c2579a4e0a6eb64f5a879f1a6fbd6305ccbd8de092b331f791bc2bc73c9f3b19caf3816bdf3c634562f0a01cf60a07e0413f3b60847297b177000b57e1d6c671d6a9074e55567d2b4158df062d96fbd431e283b0bb8b9af4e636a88d0e6f0d70c666dbe59c31054f1f3939fb828a7a897477045c064c8768c32a95f8ba1008c5459dcd1fa82e1786cb2ff376f3110308104f6ce24c8d848117b384ef24cebaf4a79a40e1d7d109ed89bdcb772e7b7b08629948dd72bca5932307c84064bd58a2e49b91e8720820a9aaed2322e9e8a258c92721cf70b2a941bf76e76380013368137fe7393c070d3cd4cdc55bf55059f1b9c8642a96e802033729f067ee506f7e5178904a55f27464143a933656d137afb31a4b1e0ebbf7969cf1cd27599f9e077ca79047ac6bdcdbbe6366937965a2eafd0780c80ddb7836d31b70f6c8abaa31d1126d2d432293ff3d5d9ab138d657f02a4d1c067de60402d3a626d59b82eb9995c7ce4bbe81131629b064ce326e4323abf39e8aaae16983c829cab5f46fdfe5331078ac2d88b4acec4c782cac7591d35802b223f0876865bc812910cf8405d818d5a4638d224ae3bb0d5568e20e73c988fe76795ee9447ae7ec2d380278ef6af4271020ded46bce99b7cb163cc643b74889a07dde06d2d56d991e7b009ec5afb1a98a4c5128bef00d899610409508c2d8200d84d89ccd49161a6f3b6bf0e84cd49304b907d3e69caa9ad8f77f3de93a6ba2bb4d13451dae647e4677ba0f95ed86141e450ff42450197773ffca7673a3e67e78a04b760e9227f19a2addb80b1ecb76e3d4838fcdf6fe708cb2ddac0c6761437c73c86a8511c5a3ca15c3186c062c2a4835de3959403155b61b7728eb7ed403c35420da14fe051e88ee59070640425491bb47970c2a92f89efd4a4ed5fffa5432ebaec94290721d520b51d41c81774141487e4815049fc4cee6cd71b47895f7aaad9beb33d38c4ce34fc9d5cc933d4097f4bcf7a5043f76d6218334ab78460d66310ee3b62d2943466b1ed1f37a64ad750e294eb0170175b31e88d2373c73b56c282ddb620ff29675db64380ca560baf87eee9f2361da4176e9470d3941491f0b25ce86b6bfa54aaade20978c690a7ea57190b727607a562a798c89725bf8b99ca348afc86e2fe3a3962dc8a0de6b9b1e514290820ad5676cadf55df9dc85ccef2eba79f4c02047eccbe9948e3d266d435bb09d54890606215f0211175bf022e5bf580de492757a313d3470023f0d77c9daa99ee1f8b3aac73c89348ce97286e38190d14da923e4af2e2ca8b5c9ab14b9c568f71373f4197c30d8581c12698d5f1ec2bf1f310ac110a33a42283feac139638a8b69caacc9bacec5989037773fa845e70975931139ce9757ba4a146a0995a321ef1cea776f4ebd59a6b5dc6ffdfda2c5b86a88a1d8eebb554647c84ac891b9632ed0ce50037cf6b6927f8b9bf24fc5d508f890051e5820074d46496fa998c260412e5c67a1b615133b20e3332ec4a6fa062f3836de03e9a969059f5838004873f3f41258e5d749d4122436c3293aa7890f13751cbe430c7e6d693742240a645051bf6f1cc94e1fe3e56388448b85458ff28dbc3b4daeddbd9a738b39382d4d904273414aabca1514657648b7787af485c769b6d6a27e3902e9ddc9adf939541bbe4ce47298aa3dd345e76dbaca84f187e6570c1a39a766e8b58bc247164bed01aaae8ec4281631b8ec4f85ac2d18b65a0c8c64982cb6882b236ed55cdab885496ef6022f68ef3c510d165915c58f9f14614a803ec579f4b32636b26ad76aae54c1d8e47b131b4834c9a63ed72aad94a737585cd40f4e695085350f15d7e50076854e29e53c30b531e28a83f352b8f13956c52a0bcf0c54fda1bafc0cc6994c60e01b3ec38fd16b29933845647ce52aeae49c94c88ac76f8cca5e13953e919b83a3c691365cc1b1bd24c5b92e8a4adf2f09a513d95e4412e5e3eee9d924aa120c74e3217cf052f87877e14c9b567fe8c1306953e0d39458744b7a4fd89a5d4bca3239da88a8484c6e1c8230a426b519655f92a8c8eeb219e6ca1436955f036028dbed3f04522470bf4c3d9377618881ffb1316d8c503d1ae44601d71c2046a430a181634f41aa6cf1485647c81e816826b6f128ade730b1e91b68d37acc01d3aed613b7981e9b03c96998c4273312266bac9037944337352819ceeb2482d736a553f5376af0544ea66f9dc2e9b935cf2710da7e44377fe1fde203803753fd2be2a24119f1251dd9ea51ce29264ede7409cac1b9b28b33d2ee3ecf9e64633b23ff5cc47c8abbc4768a61c32119b658d7f01e4a38a3c64584e4dfd09167c7800347a89a5b683c818cf71358d981c6e16e18d0f8b7c377352a40bdcf1075cb688ce7f0c708b00d0a86b5d9808a6e50d16fd00fee544866721c719f14e39d3e15ff0ef188ed6cc7fb9d70b166d0da1d1054399ed303caa2abe4962f7fa0a460242e7ce9d478ed2c2accc03de2bf0cf721f814d50ea2d94271e605e68138c63c289186c7fde32fc12c6753a03a6491c906451d81f22b3e3687a5fe3e76420430ab1553503cf623e98d3ccde51f11a5c895b0a1dc7df9a0e3666cc63c21f8d446d8320096b694a55f6a2cef34bdcece62f37f8580783cc171d854514cbf0fbfe5837f059f06e1948db787edcba4a8ceb93a8a8c079ef86c61cbbf57da0ec72a75167d3338b5fd03ad3cac3a419c1a6ced5409bd2b3b84bdff94e0ff43188655616ace27f5173a2a62566a7e3aba7abcefa0c23eb8979c67f83aabed8e7501bc2bf606f206a9d9bfa3f3ffc7814439f47ee74bbf210b2f7b389e7bef1fbd8cdf4089d3113f6afe9bbfb9147dad8d263dc9cdeca0da3fdaf0d0419c569e1623fed4ed21fcb1792f130db74b15bd5a825a03a0f7cb2e4c1896ead90f5c69a642567bcef8de2f866f7acdf4407f4c03b47f88c0c886087ab956faf24b3dc838d7d226706c0ad583493667d95487eb1713615405e25c59357d0dd702dfa1501b6bd328cdfef5c44edf8b392d9f9f135e1a78a73c82269e95684b0836ff66bcc69f7d02c47cd0b7b3434923e7353ef9464ca0b1d8e52006fd8f2d9fe4a2ebb7380809bbe64ff7af2c207a0ef3ec2c6528e79b1229e73a2e20bc22dcd1ec4920869886339f202f11c88f884ca4586c60b92943d291b93e12a0ef3ce2759dacaa4b641032a21d404e011932d9c59aaddae0f3a92e06013a34a86107369e84121c8ea996c1fb4436cde78a165703cfcc53610426446d61cf0a8084a0e09ae8cf495611c3fb1383735bcf643768ccd7d78765cb7f1496e51cb5f3567df60bc0421e425073e8eed33bb47568e58322b46b3f786eaff258f0142d5e2d14ded7fd27485304dd3beb44dd934f3175939f9492e2d4a911a216d07ee0f497a08512ca69a1e2cc49e6367d821f0c6f7508dc408ff4d382797f436b879cd984faa88ddd256533a28cdb6c05b5f9e387db9486c53111afe92d5a1686f6c18fd0d499d6f877b4c441e8aedd62241f18bbf9ecaa48d6a6fce127eabd69909e5f6b663225d4021c5976166453d63123c9fbe2d87db9d72409cdf041634e490b3b351401449aeaa98e7c4d8a997c4eb68f1bec4077d931f87ff55d8c24823bbdc8f78c2fb8164a351b35198d92252e761232ef6f28bed99921ff8434bfa9864c03ea057b003d240081945e827d8b8fbf3e0bb2c36b0fbb7657078d3db5658bb44a41355201b9b7f1872ede312151a79c168509ad4d902623324d0ef07afb90df05f9a2c42f51c8021c6679bca11be108eddc664b2d1b90a0419a0cf52f3f5d183f2105272485e7ab0af3c20e42f137e44e263ee7ac7fdf495e9e1792511a0992e8beedd7a92468a879ed4ac9ff83cac990011225af18309e51d6d5e47be7ac0e01bf9c5ed702512af21bf755eb7991637c1dcbf44f4b8baba689ad384cdf07db668bf77b162d46d91cdc73e43edfb6f0e906040e4478978f34379c7afd483f018b0d6c251b576afdee1a658f17f52a734e9bfe88977d2d3ab04b88d803d2a87bd0445fbc7fc4e7502ad87be7c8950fd10f579c2d833a459b418ad1ee7d9f62a1e0c22eb94fb47fcfe5e7403a69d68692806c49a06bcf17335c2ff86d598a43c5e135f293ee0b560d3d4a2cbf3315e365b2820d680aac9711a3677a1cdf70c5a6137b1e6765f3ac6a437a83b6969e3ca6e41bd84346de54950643a12f50d83ff712271c9a306306d6b11b375823e240c84f20d9c3a530e39a270f4c570d01996342f67d86613d0d45679b4918a4e841221cd1a5485e89145d43091abe332303c721a83a7461764131d72d18b6ce43059eafaf983b04433f9e9ecbcf1ec8393ad8e118c8ffb28627509a5bfda5b0ff5d128ea2981ace04998c4820e7cdf075b1ac977e075fb377ba9cab1c470dac44988c9c21193e759404828241b2916c70630e120c8c29648160a64dac4ecb28ce38fdb1a5449dc67debb150f9f76498c81358e8def2a54099a46580fdc5d27f1e8cc6890334b2a8f006db23d25f158265baf9aa90ad76c94358665ea6f3e8bdec3954b5b6cfe3c0c2f95c16c6c3d98608e609e2374547fc2639fe1ae9fae7eef59bfa50ba4e2ee903c7959635bf1105b771a19c5e82759bc9c72d991342d5065ba9c867d7e54cbeb9fc70e9fe1ac5234d309debef677287cd49a2a4dd3f1ffa0b4a573cbec85c7c613b790170f88190667ef050ba7cc6b7c9727cc50d508ce364218d4f499c19c7a29f26d66fef80f94aed13b601f54683d47e5b01796b38cc6587f8613f04fb30348a6206c808dc9465d40bcf1274db6c6b1b708ce13c5664793996a189ba415ddf1d58dcafa61ddbd3a42daa9bb31189c4e09ba25ef1ab3775c619d29c9dd14ba1c71041e247151b89356edf621579a26b1370c79c405508ea0df52adf6a36e16411734aa31be06a016750b7b4ab4d67303f4a9d76a0ad5b10a906535b636479cd3fb10a08560d93df6384178c572faa8a4369507ebb330428190fac845c69f5d31dbfabc0c805005497ab411cba883b9ac302d74a9ae7200e8ab933ea0add79651b4d1fc701b65c841f61f5c3eb150252751b23a4a875eb3f61f50750d63e15ffcd4c7e167e9e0cf817abb0aa8812f5673c267f044123706cd7de94581499987e1b1b41fa8a4ec25035b2b7d32d88bad831c0d50245b3c268e32ae1aa5615cd14161df06cd7b3e88b6dd25090818f07f102f13b1315e2c0d92421a744411cf8e71d244d5e6aa4557e82052f76e7ee1627f84b2a9088e4b09a9df0edc258f91223b111cf05ad311f46825c844c2338b811bfd9fc1b58ca13a8574ceb9b3cd103492a4f48504f9e0d26c0d43442dbf1b0f23c8b46b6d28b4af2631ce4c060b7267f007e29428b0d0f9e0b5fe8bc9e5a9e12ab080675fbd1c05047f50eefa35e9ee57c73db828bbb9f467008f5346f6d65f47b58e639fef1ca5dedae952e39b909655161125deb014ba0d27d66292030fb52de285df2c5d57581275db6f4f9273cc99bbe6f70fce59f139061f5a748f70365056143ba03dbf859615cf3a790745917d23dfc0530fd5cc689c186c02b57bb188b594a8aa61ede1a85410e3a71bbf55e52abeb5dbb729be221faf925d3307b29bd2b57dbfe8057d2bd951c20ec559d01dad5672aedb0d0a521a9753e39c8707365b3b3065b21424afc4b82f4512615104749e00db2487f3fdfc081ba0b092bbc37089c3f72e65b568890ebedcc8e4a3e3597574ef33a4a7a0425b9b4aa9494ee0cafff94c42688ebf5c51d7e9153895240e10326e1726a7309f2b15764590a5efff638eb5cfabd9ed301a7a2f8744264373d89deb841db4dd699f9eb8e2e407aee6308ee6559f3fd894ebe79c3b0cbb56e9ef761cdf7273a79e3c67137c7ba79de8735ef4e76f30d1bc7dd1cebe6b42f6fbe33d97d3c8b076634fd2c96b1124891eae5455193a9c69eeba35247ed12331ac959c4d45bcc7f03314f3f93872a879c4d1b39ad786c8881f0e9ad5e92f51a82a28d65198121de5d12244ded998d9581cb0ea299e41ea68a5d8224c4803f09657f9e1343f832f0f4cb8a5eea97a98acc20fb28289719ec4dc3d0c340115ee4d06130923a2ba21c2ec9b3f0150f8381f1fd6c7e474e2457452299fa9eb9173d324b399257e41e99c247929b78cb8f80b2d087555bb262d1d10d98e01cd66c75e4c7109a0607b38376655a096c5c1faf9cfe74f09a4ad8b3c8a5668309a8d46de7d2f03b792103d35508378d374b218e3bdb1cf7f00bb7c54e34dead2b820ec7cf892a583a4bd5049b30bc6c5903e65ec1e26534cc5a431140da443b1ab17d8a444365ac4ce860170091134dd023efc5449b236f2c639ff78d76affa120cb614840c6e71d53b0757378efdc96648b3b435b446bdaf3482671a3bbaa56be3ae5d24d48a92d40b6798732e65796ecb24342a5f4485608aa14db9e89c9bb7c7455c825ecef5868dc3571351858997c638742e7741067938d09df62fda5cffec8205988c1cbbe8166f9cd444f19d343dca519c00fca7f045ccb9053212a7721d8abcaac4099852ebed56aa7b3b621e5b7120e3c06e909bde4410952b5059ac519f384c80299ee93a5d293e4c76ddfe5187b1fe9b0ce7081da6b866bc4cf6345f14c82b4e1298b72745ccf5b1cebdd0f4e201a5355b20d4c1081be29eef6c95f9a89485a3127b5084bea51a7826ada33317e97ff47016b75ffa186cc440f56f16f243e4b7af4de5ab1dc532e152ad300855df4a489347f58c28965d0bc159e347556bee280f4a82168b54d221587e38d2e30c27694c8d49d33829bec1832e9096fc847d6934c58e8d6623ac1fd03d7a4178a3228f93f3ad2dff3e863ea71b14c6b3d61ec113539111bd3249ff8507b214c44f212fb1b0294e0cdd774ba53e2cfd1d101e45d7163cf77e7392a247d08bcb78e10e0f09989dec7a296d20f6d1377321ab93fd08599f57a8cb967fe61abc514f858268f712fa7d6aa7869663cd141e2885a3ffa322dcee22236f8a29d65ce5032cb4374dce22dce929732d0eb0dc6c1aa25584469a25f8f7e55bb2ee035343ef0b9bde00c89fd0e57e47ef487b877fef22209675637f4836fb0a96ba4d05149e59a2220dd9bd1fc2b22a339ba2a98165320f72b805e63a7b61ac8d86b29bca10365a1a9669c3600524290e65e9961a47f57387625c2723d478d6a26af23ab8306f2b635f350a81f44e8105bcfe5fab950a4a1d7d9db45e9059657d683747a652b24c2519d5c619a781d5232097ddd8f690e72cecf926a58c6ebea83e26f21aa365ce39180a5b65ea65f06334ab250d619c5f042a18a3a05b2092326e0e524bfbebdc95db4451351db986e35d9b9f3542eb6e4f8bcf9a6058beb2f3ddc1eb6043b7a18788b106104f08211010000100405e02c0d8d9ac7f3968e42e8f82336519b80faf5ab7325bb390b7dddd2b7b4b295392011a0a9f090f0adfa4af7dfb3afb3dcc7b97d419e6d3ba248ddf7bf0490f03ee905a6cdb360c43fc69377c279633b9c3a9fe686eef7b2cebe7b99ff4de06ee9046123048022d4802697363d9bdf6427c85aed371b76d7bdbc5ec81add834c0e073cfd10093beb1bcdd7bff7df733e5d7b9c67d33d9ce64dbdd33dd979e719bfa4d89fb0c9ff839b9f98f9f934d352db63553826d549dbc389838d43573fc5f6600a591e9c3a8d04f7deaa238d688ae28a6bf79a92527abe2ddbc684fe68abe11f926b1442a7b6e5bb8e4bce47bbb5c222ea6b9260d0f3457f65e97e86bb1bc57a6d94791b258609105c3f3fb29fbf473f4db3195c3bfc79a638281cb9be96c4f55d7a202649edaa88d582c4998b7d65a262cd397be8809f53caa982ffd64996ebe8f1a8b843caa9851f502e94b6f84f4a571495011d3e35f527ad21bc17ffad3b8c4f4f8272b1c275d5d50f542e9490f8369c474e5498a98be34aa62be5960894ba3ca48e94d6f1a97c07c491533aa887cbf80c9fade487fd74927e94a238974f5699e88c33b7eb78ede533b5bb37833054c65e8a75fb9dc96e2516a006fce696763f13c6f82732c7b88f27c17cb166aa13cbb0bd0dddedeeed4529f3fb66d351c306dfac79b33dea452bffb06b9f79afb6e862f7b5e267d833b48a6f61c579554213e2797fe31a72c24617eaaa6ce8ffbbf7d3133a10082e8a0e0298a63b2df488393d5082546a42ef077af12277da42104b1ff0012e02fa47588c0f080aef1e748ee35cb93c15106eeed13215960d21cf17ac8fee00df93b626a60924ec2740ed9dbc8fe31ac912d30736a98a17594bc7a87ecef6c64f7c23d0d7ec3715fff073e0ddcc77d398d683ceeb57b9f13274fd66c1595f8ca69e002f73413a7df16a3a22341329a2d124010275e8c9e9080f881fed8c4ffc810a92ac48605990a2cfc70e4c4070b89e21343653d10913e1ca8a81f218aa1480231783942718810c9d8da448a60202a02c3101f846a9580933d84a7c5c90c8b102362a9233fc08e48a05a0d8788ac88c808060ca2a1366af0d14d48971f212e62341ebab48a3e3b8407d850ab8c10aa971d700819d2032c049a0e46335fcd5c5ebc44386407170a4c4374f8a1ab992955e3f565294a519a6d82d808a05ec183174b374d8d598c7521230b3215364de374209920fb15410c915db3f4c33ba4702aabdaed87263e08a18d5b12267bebd59243964d2ce2e410599c11c50da8b8c004444068686902a4596a6fa8e5080a2fcb24c5cc27a44c4a7d882972fd7a6584948042060b7ce0700f2222fbd89dd342c4200c285100c162134d82c022d72121428042c6a726ce707fd246ae5cae8ad4c40956e02375011274a18328ace8210636f041e8eecec40aac6283273790294fc609366abda9ae2148c8b5bab4e848a00a123328428b0db220ea3370901733cfafacae405ce1c5fb6c41ea2a50ea937ed396d23b9264ff66e753d2c9102938f102882652cf248a1436d0c2c50d3588a286193173044efc900516d9ff7e384ce5f819f2870d0ec20d5b4821a50c345860841252410f3ab4a087a2d21ceae18c17f8a0c50a5a3f00f908f2321e3e5082113401032cdd83d457d9a2d6ea3f29c8de65070fa85a433bc4c4e001ca0b8678e8412a880d934bd841331d8482dc39c4a4046888008a283cf00a0288d53c50c1dddddd95c802c8f56f975cb318d22104e0c7cc77a289ae3e598401021dad1c642dc83ed4c408efcea1f2e650052241ae340183d9a57bc0f49b7253ca9819b28128cf1864ff3b748313d3080724f2d441f67fff191f1eb267f7dbe41431ef79689aa6bd5673e4a6b56a53d36c4dd5bea1015b181828b87349cafef349a393bd02af5ff51bade2ccadd6f76aad5e68b4f290668ed325e0cce93a2b4dc2487bc26d417c0ca20951e32242d3845877f725b21fd974b8ae692c4c990a44845c777737e227fbb330652a0839224487b08d1a6029810f7653e1080f1b5774440247e8aac7188adc39ff1f363e3c2d6da89149796a69a38ccf07ece37f86fcf1d5071e3ccfc9bdf7da7b6fd0d20650be796a69e375abf0e64ce914e70b4aed57d1bee7fdecde1b9778df3d372e092ab2a47b23dac38c4bbed7bed37e49f7db4f960a7c0e1c552f7cef7d91af7b6ee4f1be1b55200ff7dfa8021f04c722da7723cff7daf374bf85938627a848f7dfc813547edf53697d630f916792bbd186aefc55e03f27aac0314911ee616e0a66e4e19998090be6cb8719f188dd84fa365b6851399109cbf3dc13bdb7620ded0227768bfb6ee4e139c28d1ba02bff240b98ac18e8ca7f0193f5890dd42ea09707e47dd92eef39f1f36c3b3bd6d048c49681498a7cef8d3c3cde7b630b2d60b27cbef7f9c6ae65df4fd627f683a2fd4e9cac7e8fb3e369d2d42b9695a5d9f72eb44bf64cc723ecb2aa7141785b199701de9cf8da04b1767bbadadae2edefc4d9bec7d199d41e778a83d52e278a757b0b3356ebd6dabf73c676908fa2cda4a138db7363ad77bbf43e99c238312cfa3326d3edefdf89537f737fea560301a642abf6f6eba8513a93c3493f522bb5e2462bad4e6ada78c759b1f5ca024a29a59485035014c81f2c900738b2fd9c81dce991caf60eb61042b6e00e0b7ed33dfd1286ec4f04531c90f41e27127116ea0f981bc23d28e2b9eaff446f1bbf3c92bda421e35cd290bd05dc89a5ff0c3064ed007e630192052224997d9ca9b636935a6d19deacfe5acc5cd5d7441a7381ec3039356c99fe4432bfe459fddba7cd48e6974c47db4edb49d36fdc0cd97495362e284a60212a609b2e31fc77f31c9a4479164d2f1dceb4b18981b60b8bdbc4226f4ca2c83d73b42733077ce150dc7a6c1ffe2726a921c5ad502620f70781b11369f0157d4f8c61552d907b94a15dd03238f69717c8f663983935a4283071c2a7df81ee200ecc9cefe9cf7e22d356c20c28654b71f55870e77b921bcb985cf67bbb56e8d7b49f311720e7ca7e49b44158c80dd4ae957d2c7adbf7db06ee78250cb9efffa0816c1b1783f80d27cae4164257fd97fbda0acc712fc4858840a220a5af9522d8b15d93863e5705264db0de68019bec3df56e9ea0e7d9b082542edce79e1b2d60937bbca325bdada79334f287fd1c338543190c161e59ce2c84e61628068063a62076420c279724b4159b9c53429ea7f055edc5d440a59fbf4d9d56a26b3eb0d435fe61ecdbca7fafa4751e662648ebd8e4007d7ed3b22fa57280e3f669a15043d1b1b6a2a46bba918bcd6012155de637419c64a9f05d05e65ba889c0f080233998391128d23a12981df780d699a146c048c944c39fd53a1df0278dde3a4077a02f513b09c2a7759a888e8247b0abaa821f70d23a0d1444ebb41244b44ec3ba264aeb34e7e40691bf91883c46c90e8a654f96813ef80dd43a2dd450c034ac0aa116c22103c6165aaa682b1fb6244a7b60bef6e48fd49386f40eaef0557f19b1c5f0d6e9a2ae11bb8b4962d1574cd2bf8194a8d23aad79b7aca793605e8893be8622d65694d43069fc1b0a0c45f6ef585b692bad835904c6dca25b4b0d4a5a67768d0ebc9060c0b1ecc130f85b5633692ce9c390beaf69cb7216657b91bd0549b62d721bc9b80ccc6d664ef7cf906f23800f79133d6b22cdde7f2811dc099f1371bee2dc020414e44dec6c7a0a860f8ae19bbe9bf98d561a3b23b19b35c1fd6874b31f70d919a9bae5a4a6c5d7edb515c6cd0b5c5d736cd0852e879ae8ddddddd514a433e26653873b22cf8a053361651d8c527048575addca600e3be152716393a49fc349f1157d232677c4a4a1dd23f792f91437a39f37a7106fd4a9f33a2f25ca88325f7a23a94fd951d5a95fa2ea5145a4f40b98acd2db5fc21364c48e4b525ffa254145525f1a55fdaa67c25a22f3a5b75fc4da578d3cfff679c4c99a2c999f2c1d4990b8d039fc179aa5fa243bfe0b68962a95faaa124371e332a47aa1f4a93752fad4b824a888eaed2f51f5cb7cea4b6fc43e8e71896a94f9d41bc1f1aac7f1aab75f555b2cd34f6d32994d6813274b1427ebc5c99211270b8738592971b254750a5c5a198d15d55607a3315ad43aa893083b44d021723375f2f86496c3f15fc3cdddde2d62a220becc5395477e2560ef4992f3e13e282521e92f9d2d96ed469bb2ebe32b01571f607d77da9464fa1fa0ababdc5f914aea45a24957387c7c2dd690c549fade8fcfc700ae98249539bd62def84d6714ce97f972138a6933baf261e6cbedf5fd8f1aeb38336a33008c93de71d46694a64a44c417e29b11d3865217a15215e9bf974c1f8751ea27d36c654e763d70af929b657a5376b0ccbd84288eca538993c5cdba96ccd7b5284eeaa95511e1092a22f3a5e749bdea672e521a79eccb44a167e4104c9c1ba32b8ac4bcd12827c4357163406a3e0aaee051a70d9e62d4c86b5095d2acc1213157b48371485c29b81b9302774ebdfd529b9d917198db8dd63a9d51d7d0df7ac8b4bac05c72af1eb7d666a8533773b89ceb751ead9464faa2756a8b0533870b63e65ca2d6a1322f66ceb78299e371691d6eb6c5cc21713173c0a1d6e96058cc1c9cc5cc81c9d23a37a68299732327a675b857d7609939213c7d7bc5ccc9f13414e185786db54e7d8aea60ada3e3e9975aa75f0417b5aef1d721765de37f125162494489d54571667746ad33670d8a5aedd48536a60e21c78d180c43023f8fbb2a71083ce107cdf744c86dfd0d3673ba33a5feb50afc7445eff65373804b9f7a9395dd37754d5457aabaae2cc6bdb8d7ab86611886772b75dc8d18d3e791400c93e302a2f7855336f8a0505b54963dfa79077392723327679d13889bae8949d23715817a4f4687a97d99382ad7d6a0e55644a61b1099be4adc80982bfa32b3264c63072be252811acbad879f8dca8644a67ff24e852617e5d698371db64837713569dae62e893e41a82f7d0db882cdb7b5eacd2571b2b0e0d2a76646b5abd56ab54edba74a33a3fa641ac7d1b58a42e8a801f8c0888371af14f7eaaa38496f3ebde9bdfe4e6f6a511cfb747b6e6665323fc4ad71372aaa2f893fcf528db11a6eee77b1065c432ab78ca8eac7f1936545fbaa3722f338c625385ee655e392a02238c62bf34b62564671b854eaa58d3756cb90f9589e2297c4cb2a891c6b823bf7622c2362696e0d6eb601a55eb2d3d80999c60e96fab28365faa16873154ba2c7e25e2e148aa382a2cf1da1d1cc213171ec537c02ce89190f3f1c3b23027c5d131dac7778328d98b0cd86cea875b859cf2827a524da2cbea2cfcd5ac75e99f60a4e0d2c387cff0db62d316f28fdad4571264b9b015117155b9521b7ee004f56595df6cad4a93964fa368b093285dd2a993edd96982415381c3920eea5f180ed97dc8b5657172d80d5300cc3f06ea58ebb1163fa3c1288614a26267a2306c390c0cfebb8bb954aae4ce5dc58ebf8c8bd62993e0adfacaed933a72d071a293d0f102396fd0912b1638aaeb09314bfb7ecf6586e3f3f69268d8e6ca6a4c04fc896c854365794bae88a86da8c3e12171783472b43a1bba9b47b38c38f4a69862fa37ecc848e7a533e7d28ceec62f85554807f3896eda20cfda7b151f50b5124785e09df0487d89842274dff3969fa0922b9391ca958d37b247c95cacd577da462c79f67954cf85a6cab65e2685f1ca7f0695fe6cd9c14c75e99305626025c6a330da7f4dc6be6a4f035f79a34f4f41df7ca2e4c221564ee7bc767780e8140964b6da6cdb4a3edc76f3a538fdb94f00d0abf81d95a9b8f0f997eb9b9362879836d5536a14c6fcc06f94ac0e007b91f04dcd9f2b5028a36cbf5bc753fb8bcb13bc95b7ef9964a38b14ef2be77634ed2a14c1f075ce1e6fb5e0a5f0a29807dc27747243c79fb13c0166adec66bc549faa71c700755459bc549aa03ee84a3957181cb1bbb31bfb1820219f84d3f00219f0a9f09f491047c33ebbd12b0c9ca260dd566b24c7fb3e237e14f91220166a2dc409069fd7244758da76470ec97385aa7c3fbe52997daacd446eb685da346eb78d7f8d1cc896163e6e03466cee9494db61b32c5311f7849da2cd3f70af04d8a532a592d56c61dc1bdbc244e56ca6a995fe68a3b62de08f1f29bea9ae4290cc3f0af93e14fb051e187efcdeb93c6ff248625d1dddddddd3599910483634aa6f084ba9192c1a1ca3143d0f19ecb32a93d9589ed69aef200897677efeebe1c8e49c9902b9b0004398189b7535102a6ee31797238b55277ffc2f31ccf3fc9103a04cc7364d2dd4fe69cf3c723dfd96bc73129193b6466249dabf654b48fa4f3d4c61590f497ee16a65ff610e5195a28dba722126ed278d752d9f716cbc75bac26cf0a52d99f7985ce75d234cd55a3d4dba8776fdb362fa9c4409ef1ca44b729fb979f2a2c73943338de5cf90f650982824d6e6ba755c1c9ee17a1639a82d179567fcf6d9e4efaaca492863c997497a082df6cc173aa30a7509ed35dfc88b012cfbb33708d8c0450cf52eac294651968dba6bdb966eea72e8fe382299d01ee772a03dccf71c1e3047cf6c0365d6ec0fefd0287242d174c820fc250fdc123e0f7fd89dc83a2ff38e983932d68a0d8fd277a5a1924cf644fac3ffaeffbdbf84d873841fe0af13999642ed82758837ca9a9f94febc7e61ebdf5d11005f67b698bfa7cf7a4db18982aa9d9deb197f072a8c25982794e2dcfaf730bdbfb54eb7cdde7a8230bdcdfd6094929f0cb2c7ce3d75095cb7f165e7461923c48b9fc532e3fe7c8e5ff24fbfd51b0c933605b23ec0eb8df8946066e984971f03cdf40b94952ad6ab652dbd34caa770a78b0b515de24eb9718c440f6efc96920fbf7f5a6cf3f01c7c5c4c8c8d439e351789ad893ece9b9a7a7b66db5524aaf36b64cfb5a374df322e646d967e8cfeb21b22d5cff76dd368cc3b19ca185d8c0f7c796f95cb7400b5d5caf7b0bb5901135a36ad75e8b9feb6e3795587cb9dc2f456fbe63902041b26bb6761d6bb04ed1089d6c6f0beed0ea5531e5a4d31c70e73ae32b7fcfbb9f92dc5f8b9bb88d5f11705f88e3d456edb755b9402df081e1740638cc1c26750d38c36cef7de2e7a4932e92707c4498f4fdf83d0ddcc1230998440a240f1f6dd4b311b4111353ac0839a169ad9f11b4b4205cfa1f53a65461028b2d3d9aa895e4e163ca948d66caa6d16cdb94293db426b6d44af2f0a185c163cb942953504c90d5745a82d4b4abc1789cae69ab9a0ab4fc905478f8e051515ba6686190240fb26ea929f5f801641c40e969abd25a4343f2f0d1e3471d5d086755215ca5124fe9ad1624f67c57865841fd25b1674303871f565068aa9728532074c81b0ee1a346eea53d3503f76b6c1c650fd9200301a80f470e68085c72af1d26130f32ec4480ebf768d56752254392a5e9457152a3adad395f60c6172f568fc74588557fdc04fa3ef6a88451a3609365313241d026824c8de8ca0337072ea9af81b4e949537f4dcfb06f79670ee6ac7031d0846fce92d8ac16e71251bcb8583d386060c40aea6baaa70f8b00e2cba8438d7a2cf126c5a90f06eb5097651b8a39493b2bd985832c42c05e9e0f5c75968614201b7678a271af2d971c1097c50e500099d185c352a4c54280418051d454bfdfca66143586da386e39fc30db86c8dde6233bf2157dcf81e8aa5de0822f422c9e1e99198ce53037813e4f0f102356e97bbe2d424938507935368094c8a61c503fd421aaeb0a65fa55bc390b102efdf65e052969eb2e678000c6e2e941a5216305f5f774403256908b1d1278568fd0e8135001a857d59fd9f4a15886afaa2392219eebd7f103b87ea9cd6428c36f2d0b5c6ab3221d8c0bae600ba857b9e03284ef3f330515801a3b2844db3876ac2e6b47bb4505e2665587c9a9c17dc1a12ba203c20ed92eb6c8ab3159fd1e3b9993a7ef3c902553fbd95c5a9447faacac669c9215c52c5c3a1001e1f7d87171927ee701cccd6648facbe93d2d44893387de65e95c765c327dff0976b19995d8ce5e484f9f95d921b7e010ed27ec038d531adfc71e2f3725d32129b8ec8cda34d656fda92dce082e096e09ee89ee4b77860fe68d2908738d7973f280989e0e73c7d10f452c9e9e4ecb503f13567d5577f7d95b0b7b2e6f4c570aedc7e338c47ebcb0787a705441c40af2e7e9b13ff0c20ad2be67aa00c60aeaef8e9019b13db125716dc0db0eb38bc2d3b02256293441f19beb9b0fdbabe3ee97448d0bee8c18476e4c010e456d05b873f288075c7630d353b07be10e06eb60f5f45db531fc4ac09d111a4e721c2c5b9e1b5eec40c6e2e9b156b858ddcc4da0df7323c60af267c2f2c2ae08dcb9e480b81705e2843807eb4bb6659b713a185dd1df806049dc1cf00f43846177112ead0c06f8c9c499399d5a0227916935c2f42ec0a62f3b980bf57dbc2dc0a6f726187e2bc07f24376aec8c6cee665ce059d7ea7e3ad47774a40619287027f559516bd0854946ee212aa59f516e663a6d54c6cd9a26299579b901d0044cfbc9b4daa79a4fd0e99b3c2bc814fe9495e0a50ac7153c87df5b788092e96f382ba1cda7dc5a3eeea292436f99e94df72753ffe694cd1430a98d00cfc9bd6815dc630f54e9bd9d1a6e3f15891a4415a216518fa84e542a8df234eec501694de0927b2549d2191c42b71d46140a854239e84343b5565445a15037960a431fdb8fe70a85500f51977ba57620026ba3aabfbe160435039bbefea83349e7d8c96356a61d814b2b6b9aa2824b6ed6c14ed40c7caa404c639e3f7ee9cb195390b695c426a2a0cb64804bee8542a1ea0e6a3c7d9f7ab3cf1d398e15bb2abea2556c6ec61d7530d318b11d73d53457cb9d225f2aae15f78a1b06179ef604f6fad38270a9cd604f80a826035cba50586793c665b2a16f50476d86faced4eb686576c872a128d791510641f81e5694e91be6b2b2eae2a2d4137702ce8926e2e18b3ce6f91ecab3f12a4368301c9ac6e820e0b9858758eed86b9291eb961d8e3265e52a25d720f7f4714cb9e9fdcbf750e2c9d442bfe95b861e55f5fb7d54d59185e9e1a34cdfa6914ae9bb2a7eadf88acedcc1fc063576551c4405b1b9667599c6c825f7b25cd0b7325a4f37a68f810d43b3753b9125b6b93f9c6900eca831e15757cd4efbc311c09db6a2b79a9091a995b9185d9ca45da0cc19348309fa6b475b4b9ba1bed466edf1e050abd8c59173595d61f8d36fc2cd8a93de06db6234af04e71f5f5dde27b94fb71d361e361fb61f3627db932d880dca36c446c4f6da8cd8a26c52360f6c1fc8f4bdfa85814d4fdf5e993934364b121f3d5e09ceab2f2d976cbbb05ed82f2c189605b68b6d81758115235318d8316c9195819d810266a0b97f066bfa245e92fb1e76af04275172f3f64a70d69e822bbcbabbbbd6fa3e7c5470a7d65a6bf55640befc3c13823cdf03d22531087ca159251fb719e07e1f3b98939d90dff49bbeac959b09999ede6bfaf03d93d80939d9c1ba2a1dcc6f42f77ee0f273c3ba2a7ed38262fb79010e9a57ac0041d601409e3f7fac916793a4dc7ced65525fc370dc72d84ca8476df30648f89efbc4297df828b1869b5162f59b4e611fafecc6c418bd32bf991dac13920136bdf78d8da7f722270308fc5e746b03a1329fa54695cb8c2a1f536fe4017085152d8e7e5a2d564a071620d60d29f8c8583db409112bf5545a212b355299d1bdd055132296cfdccb169f16a51f9076a8cde88c0649e5d06b4c344f7f3ce5b82fbb0fd4be24f9f812f7f83266f56589fc32e4f1e569842f513bbe4c89f0a58c8e2f71e4c8f1650837bed4f1e238b3e3fb72844cdb06481047d588b36b80889e4d34b3bd8eebb2ffdd6a7cf458913c46d821828e1c21e8c062ee1ad24cf6077764ff6f046f47eb4c221ca637c2575bf6270ef3469b4d923e4bd582e9fdfd99e499a96900b66bd11937eb805a9cb984eaa0e06ee63726efc737674ea9041cbe8b9efba3d76af9c95f2649bf98ea1328a18c126fbed9c59bbb26984b03875f5657edb10ed1b85c2e20d5e5ba5bf0d60981b559f80169954c2a3fa99249a55257b65dc1e1645d229b9f1d8ce2a446dac1fa5b2c01877f6f1713877b62aee88b224966ee555219997455e280e88a86bf8d81c32fa98f96c6c4e15a36cc3ad76c36a3385a1a73459fbb31989b6933aa035c72afd2ca3829da1730e892e96f525aa7ca3c4e0ac77646144766e48c982bfa290ee7ce887b79fda26adf4e8f6de1f05d1cd21d394985ba6e4657454a3cf64b2235623ff5a9b1b32395d155d724dc8a30278677b01b7630a1d3185496c3a7155ce1460ec3c9aa6292fa95502fc4bb23bf417d68d4a1e13733afe5377382c1c449ac43b8d46659b21fc9707963237c5d10b34d05b4adcca6b4b2eec9eadb8ae8f1752edba503020f5999b683f22a814b2bd3a0a8993e8d093fcf213166d93f140d30c58a0784c716d816202c5c57b0f8c9f4b5a3edc79b19717c9d136c337e4ff5754e7067fc5e8eaf7382b78c1f04bfbe8f93340c437186706b394983609b89d3c166668e7fff8e99137eff083c7e9c3ad4fb5ee65b941153e2587233ef8c344d9b592ed66a9934f437d1aa60d2d00f459b824943df459b65d2744eb09693dcd80fa13873ac45eebd88fdd2fb97dc8b3b7a5114f7da5c9386b6664efe804b2a9be1f03061958cd851d5a50f012452fa2bc3b116697092c6e68afebddc8b5412450077bcf1f6585f0835fd15c3ea4a5245f83811140a28284201110ce802cd517069632680436e3ee20d816b2e6791b59d5b224b94c50a151c8322d3a7424e52f969425938f4175690aa852d23e9ece376830c8060507e706095b368052fbb1158e342716c62d42696b2588c6e2bcbca3b2b6d1a08588a9ce565674100cd06a082c69d7925a2b2b652b42532854d9a98cc02bd9cb463e0b21b87d661e6740f330788991323c4cc2962e6c03cfd3ea2916829adf3f60585f607721391e97793bee1f49becce3ad66a1d5b761099b6931b5f360fdf3a2fa2da7522742f2bdb9efe9dd16ba9cc26f31be30c4d25152c07c69c6c6c666973c210175572cda58df94dd9319f65da3fc8f46dcc6fe610174a58e1f233c7bd22b09d428a77d005fa892abf5e671bf39c785d4143d66279c9c65ae32cd358ccc6667746042e6d64019838dda2ab99639f027591da82e71529b212f0f627f89f00eef8d8559ca40dcbda97ff69a24cf6fcd3c2ec69db2509f12e06f80159dcc61966f2754126dfb1859ca40d8bc9d5fda84571ec14bda28fe5070beb45b62ef086c034979f03eef8d110b8060ce08c24857da234c965cc4a3169e83716b8ac443e7bbd00d72f7de641013d2170695f3b150778b2a8174e76e004266bb1caf9a238a9b9aaff97c424f05b013e4271fc89cf260d7d1bf35996cfeb38b01322f538935bfbca0b481cb6fce0c86b9fec62983d7f5125aa90fda88b387b9ab66d018216d9c5529599a793fcd24685203637dbe0ec4a5cc1f4fb6372cb94e2cd3dbddd5b086fb6e33c6d238de5bd7714b2df429c261b12e22c0ffb4f6b0633cab45dac16a22bdae3066880f90649cf55ae6ef73f48f7f489b4109db24c699759544e2ff7622c144412897ca38f8ff6dcfbd8ef3e71b25aa8855aa8896ca3ca7ff3ed8b70bf8df6bb0797dcd7b6b7db2d725ffb22dbdb17ee6b6fe4be361ad9de31d05f2cd19eb35fc592a022dddb5fb2a4fb22da735fc4aac0f105ed392316fc17909deea23d978957182d6c70a56c3da0d9c52f7bedca9e23915d34658f92a07e5c641771648d5432c973480c1c30f16e22ca9bb193b5dab7d6b3d76e2dd61ed4eddaed6edb4845d3a817955257f745f745b7022f53ed0b50ce5c9499e3790e8941821072c9017147bcba5a53de0d92601c7b894be2da97d7666bc8a02ea70120cca8efeadeb58ede04823d1c158749d277ca056b13dc09f30c73286b1b0a8542a136cd680e9daaf79e8ff5cb196a05e62cf728437dd0f3b88bd23a27b8765e88a0953319653afd7cef2915d457b8b706b8ba26cdbd1803402322f7e7338bbc116c40145ed932d405175542514b4353a357f4b71bc26f4d0a0ec74ec808ee555d9cb5b293a87dd1da60e3a80b4c7392ea60bb6865ee636d398942d516f7aa3ff5a7b6aa4f6dd5d60adc31d556f5a93f9f257a22dc374629194ed254ecc6fc51232d72b2fa502f7ee3a8d397a8377d8b491a85fa9216a14ea891ce394f22f562126911258316993ef300774cb4889241bd74f5070c5c52a3161a5464343e6f61e0929b511995c1605cd6c479258c33b20995bd065b9bd115172ab01db2b2ce68a290c6c4e9cc28533131999bd9d15ee9669e2738e4e98b7304409bb8a843de8eb05daac7f1a536c3adc45620baeab1be6ab8855605368931020fdc61c1deca35fcde7e7ca4527aad045823020b2eb9578b09cba70b0f992fb52f158aafbaba668e57d7a603bcfd8d750d7db2bd1ed7ca95e252716354b67d6965dbcc1932f38a9b75301fdec13a26c64e8b32362f5d14d8649a3933f7f0f1cd7a03ecf557bd60cf1324e263c7a2ee42575c70595ddda522314d1a0aad9ca41fc93c6ab5b25f9a2c304ca6bf156d52cc5417136fc9f44a0a0b5ccbc033a75ee64bee6593854a9ea011d5e3a09f8b3f8e90c80d368047c50a02c42a3d8e51e382ab8be258196a03ca56f6643a59b22a99946fc1e58d4d32b6e6e2a4005aad6c5f360b1b7895e7162cb23ca4cdfc2649e723550b5af6d7b28ffdc54e1369d90e591951a6df0db549fba185a67382bc31da39316fae15d70a4f0b10d39f529d0a6a4adfc16ecc7463778a4c1f26053601f8a6268403d07d83151b864e10a588cbda4c3bca8265fe5a7b6592f04d3a7f3c208256e9797a4adf43632d18ab34b6e7a62f25093f491224db51ab95515fdf338942b983c291f4b490f08422920db45aaddc94d2993b5857c5c9ee0a4cd46a9926b853c47e692c52fa59d46a99c4b9e50a1df24421ccb1360626adb6707c7965708cf6ca548dad6d2ca18d883e90e79ce0a5828ba8e9056002166cfa726bf998e0e1940067d4d094623e319798493ce9aee0529b8d25ce0517e3be4459842d0b6d96cdc757bdb59cec647daf375097dc5961d26e4a1f96bc201dccdad04534d52513d1212a8b512118057a9ed2a73ed4a6e0b2738f9a1738256a5cb05602accdc045bb03d7958923f3f5636e4c4b434663ee50a65ce4712302833b5d15b8d46649ba43012eb55991cd8755a2f28a62d27082b4952027b4672b03a2a3e2041d425e09f8ea6848e0529b3dfdfa7e4ba5928b525d6359818ac81b1074cb510cf20477b428b010ef8e8ad72b6766ea08ea16e796143cc9566ca31be04e37451deab14ba61f5a1929b715ddd5e04e6f3f2cd0095135850687a0c4faa40651859834158a149d5111f65cfaea9a343194a8237b550caf384156bd60bff430d811066dd69d0097376699b04a626ae4e1849e67d2d58903aa2e520ec5b9258b0ed9733126e37cc5310a6cba293912640e0aee8563c498dca36b3a9c9941fe2813f76a94e913d2990097da4c9b619103ead2dba7ae0e0a2c93ab38b76099e50922e0f42894d844798215a6636de508f715d8f45776876666e9e77b04b03e26c08e535d37a6a32a4708d14357025c7acc042e3b7bcdd28650286a694c1a35260d7d94a8ad216a474d9ed5aaaecaa548ea352e3825da21273b1270af1307cb4500a1ca4740e492e8089834c80d859354075cb6501ec2734b0a80eccf5ca469e0440ea64469b558a5d7a125576d069b337543c62d9702526201f923dbb5dc04fa9a13a59a7a43ae402f1f24ec08c00b718d04585302d77c0f9b1256397e823be5e78fa483bbf139deebefc6e7f809823f7e03fae03721b8fca6494f5f07fef03d2c66c0661948af7d8b19b07904d29f4412e927b883493f822803f8da7b7f7a4f7bcfabb5a2aa10faf9740a4fe1e9ef18827f12c137891d4cec84ca7e1054627383e0b8fd6071d3216eaf0dcae6f2cd0727639e13c2373ec778632cddabdf98f7ebca4440bd6712afac8f647fd493e00e6a24015b991e0734062eadecca2c8bf07d1f33629b17412c715e89a54d0936a236eb0297da6c7bd4f6b4964c72d8df2dce55b8e35b447d286eedc5495ac72ec3291a78fbb2d70012e2248801103920bfd13498f7349103e25e4e52eec549d1c2300cc3f7fcabb5563001339fdef3faeb5054ad80fa5c3f1f627a57ad607a1fa273c77b9b688786cce869ac3bde24964a2c4a2c95d85cf33dde45d5ab6abec7979f7b7c15552755cdcfdc63c7e34cd60e9358f33d3aa353673476ad27b8e466245979f0a84f683453ac083941f2f0a105a799a8c4ee5256490c158d0800000000d313000020100a86c4a2117948ac8a92d50114800b77944a7e6c4412a7518c831032c818438c01000000023223a34d03911b02d1f384ca2f0631a18efd90fbf3900203e7fc7494fe263f18dca06e4ea3201be1ddfa46ebaa07a69ec72c0816551971d61133bd68af48ac595e41bd4d5df126cfd814565b008c4a1f25b2aa0aae25f5c84a02cbce445db9d0a40edb4293a89f9c9b1cdfe0362e541dfd63e33ad9aca79821f573525f06100df8a3d13d32a2dcaa8f8ed52097963bc6193574d257039df93d07f8823ef105e991c5804564488b970ddd965c8579d3d722f439e76abdcc4d953e598fe3b7a80be5654f0fec1318028f83ae3cd036f78aaf76d1c4220502c5d5094247a988543b716f927471d5296e9d9c9da003889244103a835c18c90f36f7ccc2c2f60e0da38315d26452518165be1c036749ecbfc23a34f8b33c05c2e25c95470b5df64edc57fbf0550000a11941a384c19d62e36a7868bb434a75d0458b4773adce6958eb9d046e46a70c7d93e49dc99d97d84603b5b42b8a9ce16294ed5e98bc5fc0e1ca352e2cc4af2078af7750ee3aa8616724945f55b5c949880bd4ba1d92a3cf424634a7f156d5e5612d09ad6d8802d4f26b8ae3ebd4d26b90e65d842a08e5503e0383adb2700b04a98cb8f639c5276ff2d40066037f3135fa0ecaad4af088fef58cc40e8ecb75bfd47aed7941ebc97dc24022c873a8220efe34d50fdc32ae6ac5bf3a861e29b7b08d0536867c9854bb74b123a00599dbe26157b01ce11c0f6ee1470080fd45625b18ca86f62345a3652e14d54a04afa7e12c50a13008febf895a7a7d176748490ddfc2c14a21f9b70b0e0f22828b6dcfce641fa08cc8714f533f3bbe6a378aaf7063c8fc86bfc5c3700458b8955e0d5eda95f5d8886d60f53b1b999c72aa1b42b474be9a07471c4aa0a2fa48c04cd5547386548319707332c84d7e9dcf1d28be8ad76fc099dd83821d8b6f01efa45f92bb9a9514ef87257568efcf051d43f8862b0aba94a3da86f60601512287495ff840b8db0aaa2a784359f2010d82216a2a2420cdea70595cf27c9fc407445ff0eb5276e3dd8a7eb34fbc9c9ddeee2cfe1f4e526c07f6876ce16092998a7f29eb0e90628f70d10ed5005ba8386134a93842c593630eaa1516245b3ae6e7f14c2c4a3d6a6b96aa5420fbc9598eb6258723eef4ad9d46c99a6f2d3e140654db77198e31369fbc4132f11929e7c20de415cfe25f1832bc2267fe4235b449875abcb2be4518c3249cf149210e668fb4c51fdb55e42ac7119b6af5e6843d5bfbf58f570606dc7f5646716a3b0469c3e8e47c7c8bfee250fccccf710b013fb31c2a03f8086235823224d5bc7c56899c715e1188b9807e4d6f5998c25ea3970e62a6836ce88dc5ecbcaae0b20e1969c05d1082926faaf3ca434316199a6544285c93fadd01bac7765e61ea01b0a1eac9688ecf63d2322276f5beb5f41e02ef1fdd5fec87ea3150f1abbce16e3a31c87aff53f73ed031776ba97d26efd2faf72adb199b5e772806a9a872487c0ff9127cb6487376cb96945469540a5ca377dde1d9313ceafe14925af3a14b1bfde891e246ca2524fd8603ff1b02867ed7a425647bea4d058cca4fd3b50725237f8d5e2d15bce66726cf11009475e81af750991580ce911d0476917bb9ce6afe9b751e5286944a4e044b69871de5d1a77353ffe5508c8c03c189fd86cee876bce013c93cda0d7e26185e6e45d5a77ce054081e48cec829049bd92fcd80e8360bf494f88dde67a53e76ec397ae98844fe2905d8b49d5499f68da7bb5ef28181d124fe8bc5d096604b7450cae7b9212a8972f7f51717cd7d842bd049ebf09d04c07594855bbc28ff0fed3296ffe7f48201d4a3a39e5643cb61a2f25521ebbd7b4e4aaf8b60369e8a6428d403794c83d1409f6bcb3b32967d38168c3f33cbe6215c4d1f09d88d1df45275c254a0f6db09116ba7a5e8f3c03148361fc7f92927ceacf007bdcbda951a7e976243cba6b9e2de3f3ea7f0351464f4c1edfd35b16c0cd57d1856928fb8ec2a7ac10292bd99107a98b19018ed1ab9c4c2ff624016bd7d4b7d1c38fa888b3c8f6174aa15066a47b64294c1ea347b51c978005c9741b8bc3c366a8f0ace42cbcb728e19972a0cdb42b8f527beef5a7037619053ef2a6053866e486642e1f23625869845a3d02e3caf8a8110b051c32dde0de90e6e5644072ff02491f262bf2c6925926019163ee16591af740a20b7d4b1d04d16c294b562721515910bdc1e8211980aab4b051d02649dc0932e87c6fb72802e2a5e01a08ce79dfc4061a8f9222a049977160865310555ae3e889866e95500d64ec8fcaf58e590eecc631574e42794e0cf63e5a3574fa2ae4c257e70025c2186048bf8fe78ee62102a729f24e589a242932ea6c54f24d29f54b6d290e89b7b2b3f899f3c1208822367a92423cc1263ef442d35fcdcff5e80d573f83fa55f73c2c84ec622a472ce4227ae5ba9454b3c383c0fd1ae51c1ffb19885f54dc497ec195ddddf6c776520e847204b357a2e7c20419d201a29813a8b487b6221ac0057b4d92324550fbcaeeea60400e15988cf10fda82c33798edda9b08343f2ce32ad0fe6a36086fccabc67b15fd28f9a5e396f5f9d90acb74cc0e7fdb1977eec2e1eca68a4dce79e1f1e2abb9630b23db4db05d5326e913de0b77b872dd07381a06c46b115463912d6eae82141b43d4e0e2967a8e5114bedcfce8880046beb6486c2e87b44b0916d9507c8183bef1637694564b89e4dec6076d0605cd49037705cb50766ef84e97a14db1320337118ed089087a70fc88bb0d5e3b191cb0d35106db4e3a3e6e997abefba9ac235cadf6ec64a0332aa631ea3651693076ea0d6eee80c993940d0efbacdf19dd65ce2fd0181f12bed4423fa0b0e2c3ef4e8d1e47e9643cfab4a582c2f24b74cc9fd51d37d961bc324d9d1ad0ee2ebd29e8148ee18555d99da72d00df4ada3cc2d4915a26b37641b751eb82b3af9dc031da461ed899686f01b09ddc92626604c210a3c5d5affd4515469b386b33bdf1e8602441ba30c5d652791c51331c62d88ccc58f3c880c4c62563966f4a91ffda923859f16e8032340287ba41deb991b9045032694142c17bb2d84eca3c7c9abd715acc6dbfb9f87945cd80f4b03c3f4372bf91294419232d02f2c803eadb791c6b378c788ac781e8d0ba140939d0c1049b73ecfdca61cefd40003c4410487f653e3f8f057b584187b725007ca90a9d89ebf5412c27670913939c559bb74b07b1aeef9910a0ac3f420c604e408290118fdd992d2501c4b264a66a0669c8c03a79be7a60c74cf4e0faec824ece58cbacfae1d1bca59ae7586a185c074b86de7ba68fabba55e42648d95008c34cf429fb6cc0e72cb9d2421f4929eeaf6022cb62b196bb9cf74e29c4bdfbb295cd415c825e39429316bca2ab466631d8e880830c51e18dd7944b1ae9b520f6b8248c1e9e1cc1b001b5badac9a88289ee2916b2b8487b7562b68354cb0ad15ecca13408562070a9e6dd0dc8206141b035d00a4c8a9a1de694d6e94a6fd906b81ac55b12096054b8ca44783a0871a678c9d06d8c94843f3d3e447080d19bb06f9a21ccdb4144964097b0783909993a73c1aabfa2f8bbfbdbd591e21f7e9c0eb6519b8d91068c84f15fbcfaec7d208ad80af14c0358d665e52852bd000cba30d44410759608d10147c21822978b63e5f77e5b615688af510d2982d887563d5f929543e64bb63e7d9148a941a42c93a29b3b566cd07ef9aca74a90930921d24f3a9b9ee78d92743acc6f9bc2f5502bc6fe101bc9948cb3aec5b9b1bdfbb6b9644182b054e5425bb711f1f3fe9ee188ae015014384560955b348930cedc73e586b5a51728bf9cea93b46b7d561e66c7a8ae8751d8f7098a11bbd969fc1574d077cbb4b01c00ddcc1cf1f567117c24104b413f5867f64b181e2c0e7c476bcef845836917460294635d0038eb75e5e078358569020d203404f6935345891e4400639268e4598ec92fdebdc0fd252a79d52609a3136d3aa9cbe8f41ce838bcc0b8fdd5a30d16f341dd28acadce785e54494b2be8d44404583e8c0988252d7e8843f58ab042e850950b223e2adc07fbe48e9ae2468db565652097b73284baab9c4bd6b446530715d311f5e8be48c695d45f7407880899de43e5a75c0275f838ad4c19a2f8fd6db57e338112ae0f1a5960977d996cf4653b2b8fe02327de60b711089b280882c225a93b4f142a88df095e164e4341d19080861d6614c084bec422bc39791f2bdd12b86a65889f15ac20cfe80944f23d0d6e661ecb619920540a5048fb7765cd90c33333ff4326a83e38ed469640fef12202f3496019d68e306f9a941cd06b89539fa2cb4b50e3a11726978048d28197ebb88d2707801236f8607096a5cc78f2729bc856b931740a4610fa420d01402e044d5907305e7997186d7b8923dd9f88b380b1a4eb98a5868109b8b6959fc5d741e5d3245360eb854a7b72710d32273dae3aa536dc86b52e4f1ee486940883ca223ceb77b3ce5250b7bd3fa044e350b85584516db4b4ae54bfaf7c6300d60f730ba5d0105e05f9c0500d67eb02e3108b5fbc5800e24fe75bfeba872985b7aa9d90c0dab33060885824159fb1e2837643c5728d4bfd80e6cbade0244565d250c2d8fe5059e29f8ab82696db643ee9f1939496dca6f06a9fd41933ad27c73c0a9cbe1611c8b7495efdd187414227e3d3b49d3608a5b336f67f723403c6082747f5d2f3da43f8aa8dc1b80085ff043b6a10d3149cf2e765807139816667f19ab2c7260708058ed36956c1f48ad5cb17c3a7a43e5b817ff0cd52d2cd67f00fdab816bb4b1cce28a37e8f367796cf77701ad2745e714d0972719464205c94a0bd52db7a07b0dee702d22f4d3ef872ffa7844ce798def3ecc547dc0cb2da690034edbb010ee598756ff468455bbbd27d00af3d5b6022705d616f0be9f5f71f49648ac17036705dde83ab6b2e01d2cc9a8c16bf50e997464871286fdd7922d5dee0fef79c99e92afba25894ea38a0e9d705de418e8b8f336a36270fdf6a58a8b791b6beee7abe769c849cc9b313d4d5ebb9fb25b24ddb4b6d0fbfccf248e256ace6475701e5ccff9e3104d3d9a00e19100d0e302b38d0ddc42202761b746e0f724157e08b5bb7b10792ad786a6b7ff21c0eb762ddabf6f040c8916dd576311f77eceb502a244ac1393419b8d47448eb384bdbe5a8423640b67e0b1b02a8d6c92b89d7b497e2e219b506113e726d51bc8059d8484bf46aaa33aaa383abec0df3a8586af5a752b7847d395801861d506621394d88b426aeb423b090e11716694c3e1b92d0ec62e780e3aa58738daed4934b2a3d4f74391f14b5d2c3413e9d299912595ae702831eec5fbb7978fba09f9feddfc529e91a9bcb07ede2c2fa57bf7dfcc390b5fdc7d05fd10434861df7bb1da5c4ecaca8a56b3bd9f88e92aec43069439297f04b00917027a633c22c01e115c10e8ce545a2123dd05a41a995aceeb26509909808fb19c4ea304e89e52ac7a3685a97c73d6e3798eff400f537d6dad218d4f0a2325b396d56093612e2770480a547eff4c1d76907dcd7b152c88dcd7d7c60fcc5c7731212b887efc12d4a6b8d17a258b2940e2a3b526419f1e4aefc4ef271f34b6cd58f8eef44dc4133afd89d6f1afa06ec0046cda5240b6341779d6af4b4eb47e8f2575a81b156c165e9a903f3faf202ceb9ad2bcac54f9b7623f3ae95715cb3eaa26c29a4c3a70d5bcf6171c1c70222da4ff05579ab408b57d5dec0a5d3193aa1c678f3efb98e66e30d2ba7d01b37aa9080f31ec5afd793988bc3494e443214204a5c658adf57e62d8ec88c6e251da80e6e642fef6dba5cdf6a4c5d077a7c01e489d011fd55f5ff62206755474cd860c445c0b0638f40544fae5d120225c05734d5e75abfbf2ae2391360777615cb62f899458470c0b199b7dc10d547ed780c7344b66bda1429cf277d29236e77fea66a4f1fb5522dd98011bc2a0448fe70b2962d2a487a10a469ea09fc1b24f00f46fdc4fce09103773b9db9b7c987980b3fe350b8c0f7abe6eac330a4e3bd864ebe6084cafd73e1acc313f5181d3402fa7253d6d0222754a92fdea22665384a8844f4eab84b3b402ec3da67b7df3a46daca7965c7361e4f49e1427ad1c6b8a8c650e293751ca86571ee747b5f4424867063116391703cf1bcc7917f314ff1ea237a57497989cfc59365d5c46a8c48f58200fa9a4d35d3e1949403a7446868390bf500a20a73c45369faae018df5f2f83d7fe250a6acdbe5f142876fbc198729233f8653d59213e56ba87440c79e4ed10a680f87e8b27c76f3699860fc010a697f27f311f201826f1dc07669384efca283eb422ac82d0c67c62d4f409c370661ab2b8e6b949532e0756e723f4845507c80b0c57f5ca0807a37761345fffdae2d2abf3ea3d2a53cc79501f4b87802b98a34bf3f53b079042f9edd1193ca3d98b7bf131819116e4348b37ccf573f8998d40764b81598c51fe3ed44a4d037f2a71242b8c3dea957d4ed83669bb848b8a466fe1b810197168c65f683004076a347ff16e7209bb5071813db42b4a3e9e56ab2e833bef170ea1ccc6a115a7a0049480342cc53abae4869bf15c7ba80c49ac721817809e24db6cf30fbcc500fd69c6352a6bd7df58012ac487a0f8820221c228d8bdb579887b8abc46be140ca761a0a474ecec93b80012d4239812f00a44388514230db74a7500c36a4c9b7e43c63bd53086c86b22609718aed751cb430b1a8379553c889050b9161c7a384dc5dad1278768d06823cc322606ec8f43e87ef5042582507121faed4372ff86c9ab5cb79ff841f5cdafbed9fad36944208a16382249850feba72bebcdaa661ae51fdff45473834b3d902616362c754b95fa83dd95359e0123c05ec91f3cf15043966d67d2ba8d163a71c80e846b5c9018f58e77d3012162e525472ea2dd9ea9d81ff43048583f1a0e0f5346293b3d5736ab1d04ad9f4fcde92e1ba5dcf1424a4c7fc15110728986e04c44df67c8ce6d423b9c9afcd250840434268c6322d255024d68772d349ea86ba73723c142fc37253b55f86783c94d56699c465081b261586bcb4fed3bd8e95954948f184657a53bb1de9c90b21e28c78d9a90bea2eb63ca36b0cb0a0568937ec94358e1104191e32b1fb06f1c17173b71f187e287ed1fd4e2d6cbd33e48992edce79e50f0cae75f2a5c799a831357e25c0adeec3b416079893b35c139547ac4b5b539c972cd4c1db180fcf96743446744648c42e59e8041933f5b29694d2585cfd595c1178436a91d25b09fa528262d2f33b11a8720a3b5053cf83f62ddbdeb2dae2ea1c336787bd99cf843ca77a34c9e6b0202acda4a20b1bb9d786962c4184dc4eabb728ff1d286a35423ea81fb8390eeebf1dce3da235dbad5a6109ae339ca71cb7f02ecb8d314bdc90deb710bbee62468d16865d4c72988ef6bca1c1d9a81ea3c13e4b35ae88a2af54c1cf3676363ec65563aeaa7b640186f6b3b31f696ca874b37778111eb1b533372197246424dd680d91b737defae45d819402c19bb4884a966f1ca7b2a4dd2f1159789ff07c4f4ff7b4734c1231dea3877ffafdaa227489e074fdbbc003dd20aa434b975324f685341e390332331cd52d0282e05995138a499667fe20881f2a28176089c360237c1425b3c5609f6d7a7f91e67fe5ef83a42ba2340a555d13293e4c6733a74059b2c988b5bb00c3567cc233f527adee30ccc0d4bc014cde46e96bb3188abcab28548799b56642d430a020491f4f1b7e96f43efee0c159f08fcd5c960dc150517dcb79ba7b7419069ccbfe85c3ebc651ab4148222f2a77f4b253f46a69b3a035cd23397df3f0bcdbb850317cd6e2a106f7c28c53bf85fb74bcadfc8e9114927dcde64b75189b111dad83eea22743ee906e56d7a7c1f1227000f7f2dfafb6335208bb6146dc458ce4fa4b848dd725018c1cb649e66c1b60d251856feae33747c7622adf9ed76e962b153ee4acd659f07e7986ca24818e8416afa18506069e83b6132c2806a6296ed41c9670e541f1126d143a756778d62be0a95a178fc5e12c63d538673208b630e6badddfa5e2dd02daaa869710165ed562310fd1f812a0c6838314b1d1dab1c72ac423ae8e9fb3c7b490b5e0737761d7d1040305484e2f6ba6eab31b02104edc7b78baaa8c0002edcd9c2cf56bb799ae514440f279ba58a5aa4fddb0592e51222d751d2b9d8417ef013bd0a70ddc313036a14edd5ee0d8aec095be8d4e0c6e4981d401613926b31c9a875fb56bf2e21e8f5fa8bbbf4aa251a623bd9185732fa30cd1f51533c4f922ccd386ce2ff8825ac8fe4f86f681e4740658f70eb212497f5bbb9de44c2eecf56581c4d216c08290af9cc66c550808c31dc8b92b49e4332ae1667477ec38f4871224ec7eb135f151f1ec717f9866b86936c15b3cd607298ef20fdce161f52da8c7124b25711972ee59938c7d329ce53641b1ea4ca7990697f921d373d3e5db508ca61b0919d519d702f044858431646171747dbba640faeef47f713084a6a53b18028ea5c2c641386183e10937b92975c9bbc6954351181a393772fd1a138a2aaf5f02dfa2130d70ee272a94f170c973ddbcc54999f65598a00ccf383a8dde53d2e35534a58b0cdef93b45f4ccdd2c7cc4de317899c966e88e892ff01b914a9bc87d5ad47d2ed7a53cbf935b22407df4774c9dc7b1032ede468d2e816d698c738540b81ee121a66ad5e880c623deeb09528b679f095f975788d8b17b72f2635f183af26a3f80850adcd0c134cffcacd68b9336f5ea44dee485969fcad1f2beed4c655bab24f395a0090c17414e46a33c46d125c4eb13dcef8d3327be68cb6a91dfc3808969b5b9ad336f8a5e10ece3844c1dccd6dc1595b8cabb29d01b5c8c618814b973c70ee6d056920edbf5d3b7c04d352cbe0acb9c7dd265b6fae7c2148873120c0000462bcb0d35f49a991035e38a04909192592ea6a12a0ddb5fa97374ee50d43fa5838746658ad518848a2d3e1b8ac171cfe5c835b2dd014e9d817fc4fc4753328ed8d487fb379fc14730ead44aa6c7de7310a650bcd574763d876dcbc5734456e88f095761914f6508c0e3eaf6b40a0bb09fbc9ab7877861ea44ff91ecaf3b1e30dba836c7d76fc9591eb1908a0f87688735492b200eacf9111d20358aa8e09cd07bb3dfc17aa08e3ee8e46dabc1625cb0612b5b9308033715fac27cd2dcaa3dabcdbec93e843fee8a787d1b38f1f2b115f64fea8f86a8f4f34e6eac130c92fd8d63fce097e42628a06ae09cfb505a1f70f773a4efec7e69a3751f7bfe89795df97e48678b927449a7320240454bdb26fbd31787071b56c0062e69f3148662ceaff801a23787cf083aab73e4ae1c165eb211cbcda3a21f7f36e8858deb2ffeada515591346e145bb5164f2217f5d63596d91c9ce8bfaa416fc67c762c39ce007afc6ea4d6bb2e8c7bd77fb1d8955ef3a17d6f37536ec0ea8da277ff2de951c5b537f1ed7aef28f410bc07b3703ed154a80f76467a6ca2b7eea671b79f161b84ae8b75905eac99d741c9f4aca7f77d34ab691cae1a8b4783a16e46df949a2e7177522b1faaae039a47a5d7e34320e0af14f6ee4ae9122ef11cc102c7eb1a6ce38b75f646f321569c2cc806f4de3c3ad52da54e2f49a7b068d9ca1ce540bdd4906e90b0445537bfcb22a0d7a91e95f377d7f727127e81dc473cbab461897b6a215dade63e548963d4d128c4a0be314455c01eef7f6f10906b975b29adf5281a158da79e0df85e6f97d74affa329eb8a8fe7fab9cf339ecd0e2d3a6b3ca4aeafb10eb3e7d21503a6e8155eb1763ba7ff8cfb829083c29fa36f4244b32191cdd588ceaf33e6758a89cf588f15fa9160b660480672be1d113f737480f0063310d1ca925209145e9959bd25004ce4d849353d05a6dd0513ba174e8e16448a9d044f4b7a5d7b52d9cdac58aa9734e2694df00f2994b95a0914bac3b07e153c4b650cb14e6534d0e725bf78d5c22953cfa5417daa1e1b6afa46b7a5e05115a1c1235432ebb07258ab60e3461beeb90e722f0f9114056f8da6b12076eb63d4e1bfb7b2bc83042b8b54602d25c083e080bec27074fa3c6087f761cad7511e5ac8335ac3e35d6dbdfd9a12ba5c211fcba487b11ee131126e759cfa42efd6186a32d1aaa7dc603432e8098327f87466d3a2159f8f78739617914c74244a5c417518af0f0e80cffbe842215775538da1c22783841d515808f87d6cac3170f4ae801025994fd70c508335535c8b23b735bc5907e8d513236489a9fd9301f28a389f47a63221f6219bfdfd6322b6469258f5198ef5cfba66226692208bd98f33299f481c695ad2e047f5f6b4c364e6ba77cc9507aad5ab408c3820b774fc14b3f1594a439bf7220698cb5040fcad6266da7b760109071d95ee0a397d4dda7d1741d7aacfb6010ed955c889c8723d80a1ba7995236658d5eb600743497ab730684bc175c605e2d7695a32189a55b237790a304ac7b09d33fae19403621227a6813da67bbd1aa7625a4236e5ac358bf0ec0073702e1135d38f5b7260aa8d43e694994cae87c38b6415cb08b033735c8a691f5aa6ce3fc50dc600b07f2264219caa08a0b1eb49cbdaac7ad6f18c8529cc0f3ae3a5ab6aefb20704ca6030df5dfa872e1ec1434f1b1129b1a23d82811e64b05edde140db31509b5ea79057f7ef3cb8fd7cdd20b92262fda0cf12126eb807fd7c22a921dda70b5865e7c005143edb0b43bbd6b720daf7853ac973af1d54a69d86ba1e55a971c53ce0310619330f094290d0089af198b8482bb792c1271030f502b6d31d754ff05e0a30026883421bc764d5162c322111378911acd1859921816ec5278f3638d9517f0cbe246796e53cf2e83c454be92369aa152963c4ad54bc037896c80c2d9c97c782c2fdc9e44fd9ab6e65eb3ecab8ecc99e558a8ca7ea219fcc302e8da8e1de8a42507e148d3c291552d37eea0a0880d98a49d4e68a87cd5a8d29c935b3b1969af54d8f223545f9a9a48429cd5592fc03bb0e5c5e6dd4dd842dd065c34bb04909d8e84d785b5e2ffbb56be0a8834120a2c3381ed0b10377238927350931253d78dcb7809eedbaff9cb22a05e70a4d30b07a80f9edd304cee7728d14b69c1d2604c433a521390f925888fd5f580ec89da4047e44d35bdb511c1f3c6aa63ba93b0a487df373ddd3a23698c3f66537e6be52d5421dc4c75f9d6edd80c136ec47f9d902163dafa2fed9a766a79c77b01d1c1c932a66ff2a2ba4004a44a5a30e9425a17648ed9252c54d693412ff35643bbfb67c0cb7485ecc37e20651458c82d891d47a9c94808f18d4a980550b9892f8dc4c3e62deae5fcce22750a16e72b0b2386b80f6c6aeb32eb8dde25a7684fc52e85eacd71d2904607735bfd7204fc8429e5eb951fb314893693f22b72c2ca53627c1230717e51620e54920a48f1ad0cb5632b2fbc3f10db5af2bae1822f31ade6b4cb23c5da7415ecd3dffaf2a476c2ff92fc4790d7a94023179f75d6d807e0a5adedb79a6a8618e8646ea0bb8137dac8bc425b680ed4b129c8f04db04330a53d5cfd0f06b025592afa1085fca4685a0c04795603d421af4e70a475b166598832e77f24eb97bff36ea46a68faba9ede9c54c6a91a60e66ea493a6f514020ce3f85830d2e0d5ddfe25115a3979126f49d72e2eab890e9d0e76adedb6dcd148960dbeea4f40b7fff26328301dc654e1003c188641234871a2e13949fd83a128b380ef3902e845518d16eff7a78d4b8028a2e47b668ca1d856eaf483df43dbc009fb09145b5dac6e83252c032aeb0402f308acc106554788fd87608ca304efbb0684d17a178f370b4c0d40e506db87a151eae8fe9ce2e067cd8e0c43af9eaebb2bac8b40ecb8eae1417e82576b696183fc0b993706be20b3ff813013002fd9ee194d6cecd138ec18c70388a9835561932ff881ab15120fa855b648c4e6c5bc4d811890b610c63d3dc684196996e8e070a1912ca9e8cdd7d8c0e77689d4508b1482e470ac55efba4bba09814c5728699c37e364fa036749882c885490371a2b073a7fdb938ca6434160aad00db335149a47f860cc90f6558e2768c75449eebbdab4a7cb93d0c00c30828de5c983c02f595cefadb44ea418283af67c2831dd20c497d8039fae95bdd2d41465fb742768d92809f4ce52ec45b5c274a93fdbc73d9919ef0f9d6ca5cceb15b18ab1a10ab7ce1eb9c6807fd84bb7de10bde22fc46494c740b7b285bf0ae89d08a845019f348dfcef7c499b9ce2b88a7ef5591aec3efa6dfd9af91da50362a55604ab05882e53dabfbc67d90b8dbdb170d0019b28d2834a895542630a59e91a708600d98e21d0e62c116a3e483d678e577b9cc013e8b12641844beac6b9e037833ec0033b195c6703a29b769317fac27f3e9a85811231de29d3f3d31ee4de9df3bb4c9dd66f5908733f97fcba59f2f686f830b9b8e2e167a1153adba68150a11e255cbc2179b43d56e3f2d51ed1910588ecef110cab4dfd617b5b6cf828507e185a3afc5474d95b1174f5dc26ae16a0e26a30a8ed16f40964b712c477b2b4d3ea8578155254ecc51a05551fbb66440cbafb0b3dd16573aea396c0e79542de2079059247db2f1c2e7688d8e725939374464faa0c3c86633444e0d4b0b20d60197bf92921335d1c7c84318ef93e675a2c88c3ee83e3bedbd7774973e655b49a448c9fd2eee0a22ada4cd3f63bf402907f98414a910e43c210ae772a0f99471b8f8f27332cd05bca32e63895431fe921e86682b968d701e2fb8e0ff2b4b6a7d8b561f92adadfb94826b1c3fb6dfc083a54c7b0b71971c04c4834963d6579f39f7313f9c07f6238fa41d2710d165af7334d15db27fe35310c89b37b6b7d6cabd42bc600ff8e7336f2a607d59bf8dd64a3342d7cd7ea1cbe96a1466af10ecd26459e2af4b899c768dece9f8d3c6a33c23baaa271b4e50e325c5d8759d3639c04c9b063a59b6f85e292bf56d34e68475006e6fa75cc728727d4086a617ee966d8dbb8d2db941fd877ac314f487e39c2b4a151e788fe29fa42f459403a1134bf9ea1f550e857cf8a2f86e3316f1f6f0860c94052c3cfeac7294e9d40d8edf5c7b4d41c9dce56dffcfce9e116086b5d07beb84f59714cc24e95eea5d11babde95a357974286e0246e9da0a3e59af4a3fd8838e036087564103107a85c8cfda92f813d1079b376b2f00f0a346f813ba24258264f5bb361618aefbf412c685089f6240fc27c150ef99d5f3d9a0efe17ae99ee3e06b2bdeea7c3f920ebf253f7e59977ccb3f135e58684c116d75c9cd28ede6d01347fd981acf263adf1aa7c206c0c2537098520ebe1dfbcee5e04fd479d3a2031b57778f231c34504f48a60c1806cdd2cfd05c06d6f8a07bd9236b28ad7a6e9e99817184e931d4c32ca89e91720c6ee6f8eca351ba1f58e1684185d68ad9e543c43e3050ea660dfbfa9d6d5c150797958c98fde0a04131728148d66b118a9bb377168bdb7cb05832cfe46fa8d707fcf0c39f432976062129564ede188a74267ec518923ebeb3bec1fb3a1147bab9614895dbb2ddf6e77c6c0942a49fe41d998ce4c8152e31218f946fde149bc9271255bd49221d544fa412ec6efe3277eebca66d58a046d648976b1d2b78402a9bc0106ef770f923b2d6a15f4d36ba731266749625e9222fac8ac23d9861fe1a4df51736f710221d6fde95640ff72601c20a399366092d2be176e171ceb38667f9810c75bc1145ba4384530667d557b582f4cdb4b8237d563f198d901cfea8b610673b52a799076d862855da0e521fc688ba4bab18d395f23c7b06092a97c2fb6dcd129014f0447c4ac6cd4f0a009921e4b808382d87aa96eafe1b96c929f7e77c618bbb1f430043d5b38578c7ba437e2bf3ba482f38beb4bef754e9d03d18dc05501d408da18e85ea1d4ab2192b88584174acbefe7acaabf2f46dbece85cb4604998613df3b98fb5ca8e1acff085536ac242a6de0cf87c3eb114ed24242e6b2b69843c989daba0a4ca4aae2d78792ba86d925ae38ff8357cb79f23ee1b6e07c86ab19a682b0cd80c12559214ec6714421607b1dadd4b8ca018f5345a8cd806820863e3ed54e0d822848992d4fdc1515bd32275b07d79aabc21054904e10b4a4ee2ea51ac4d07f9d8625d0988bb34c1040467e0c44352c31482bb3707d99a0ea20764ca504015b447f7ffc544586d59316224d5714dd67eb2dcbada03a2058f29e588bac660eccfb11ed5d6a8fcec9c94b919e2267e2429c41a627aa082d5562aea0d440a53a86487c1028dac922de5a43091ae2429d701ea532350fad8882de19ebea5a110f2beaa14b18b83e5755933b015ea44fa432cb0abf09e382d830004b6cb50e051b33c80e76fb3a41422df6e7a79639a244566ea7f072cd3b39649b145e6d6a0a8872d98bc3ba5337702be4a4753a4349ac862cabbc0deffb069bf8f19f60a8d25edd3fa9579b53043702444e508facb87e271e7d3f7b7c912ed2c1c7326457ccf07ea24b765469df99088a39d2a80297256edd9485ec5ff819ef7c9b0df1200d4a0af5e0e05f7bd0999c9efe02d9bfd9d1e4f24975725edf27dc4448cf22d4fcb4604936a5ade0f9a95fa3881541c581e9fb82fbe6420241ff82b21d1e4159e317462c24289cfe801b1a26c4f5fe08b17fb21f0fd0db07537aeb2b40b068778490098829069265a189f3bd05035a263b533881fc702833433d4f8b2dcf85fea78b932a8b64fc499b686439a3c8bd316330ce3ef7aca983643b69ab827dad9bb4bedb7b86ce0dbf6d0fbdfeb50a97cfe36a3506118b2d27dbb9e27a266d2e8f09c55f483505c17227977e528b9799ee964cb73e821d355eb1772634679a4e24cb64822d08e57817a97ae6cef2ae981ea73791dd1c2afcca03b24fbeb33ae29d7166c42a331effe3210559b956039c728c28ec0a5f8a09a0b6e6fa5758b8d16d6963a490034b6516af4df1cd3cabcb5c8b1dbe3d73a09a4866231087ad08132b8430ba68cfad5eb1a43a78aca2d4da905dbeed0798be72ed5afcad846ed5338f852265c921b4e81af297845352057251f314ca4df7784563bbd188aa60ff7e18f499462e4767cb2aa2fbfa23370bd85798aab8fbfb590b85869b9575b08c63965bc901ff68a9c8536626982aae91a09e20bae7ba45f3d5af2a0bac0609abdd61b551aca6375623c86a33592db5ac8245033b385b606a632fd122bdb4b811357af63fde0fc2566ae4a2a30f0eca0efa26d04ca08607795a833cdb8ca259e7a5e0173309c1267050108633b900100e88dd1a091fddf278198bb7462c5e50d83a569ae864f02acbc549c55c7d470fa7b070f4b637aa154508305c9a8bce50a67910cd421972825038013e2f316524ff6b43591676d9ccad157cfb6df0fb7148368991b1910dcdab901283c8469974f545cf530a02bc224e1c2cfcffa42b1e65bceb22b0aca9c841664f46cba3813adf7e3ca8ec2c4ca45ad810a118d17edfe262db8147826b8d26b3b023cb782cae69fb283f99235cb869292180446ad30a207777510fa856a7e9aaac4ebc9eb981db8908563671749fedac8878a4e519933617fc71a280635d9549a862b8b6d490ae4ecbe231d3cf1f69c5c679102db525ea868fbd8f88d458a2c80a97c752aee14e9a0b331b4e66acf3e06d2478535a4e983834a404d1ef4a349c384c16bcb2f8d54e62a9600d3307ffe9a22f5dad211420ee11325e36c059016332402a4776a0aaa9076e820b19e6577356673ad165f550cd4a2111018f2ecffa98bf55dd7af7d31fcb12466e7c44739b35e7e92d9c45143a6c897ba0fb9718e477748548b2d8651186091faa42421bdc8d15443bf9e6a0dea031f35fc185215544e8a069834165787a21e3823d4db4dc31fff91f05da1bb7311f167abdb86f9a875920c01917b07840e0e7e6d90141dc48790bbf393cf81687fbc8e1c90f16a0d23b82127e18fd688f0c98e7ff607b5283982f853ea782c055ac148e0b1f80a6b5384b24bb5918a1139d6f4ea947aaa5f081149e293e74a39241ff2ff6099687e72922c793f3786a953ccae01efe8c6b5a6484e133fe70e6a281564dae26a4c122095d059279218a62acf2a61a1b7bbd968319bcc40d24b47bbfe9b7289f44e9b437d02335ed05a67655e626be7d5a00313c3a3dc5f70f894190282601b744e413726b876f68f9667b8ea324aaa4acf8a9fe6aa92eecfb6a056dfe691946cf6b1eb8e19b468d5c80a2731151f29cdd8835b705ba029e53237bd868531db2aa1a7e25546b28f66158b0179f02cbdfdc0f429431dd7282fe021ad0893f8ca0085748c31e2ab99ba8bead01ae37eb286db384cb124739e80d73459cdc3bafbf651eb2a01597df8e360980d9c111e8b2886643cb6dde12134c90589d4c9270b82cf999777d0130a2e55fa81f0a75e217a54581803363b3e51114a23f9f2549a264d09eb3cc7460176d08d663522b3b53be1ca62f725a8d93a107b82a309e57f3aa7420d0427667f0ce63983bc3b584c04f6ec4b47a16276d4b7bdc2008cbc3bde77d60a27a7fd5464e1eafe7020a9d8a17187c9c99d6bd805784a822d94f5c6d0791e2f8c934c9305e159d465ab97426de35ee4e61f0c5681dcaf8a36511245beca83eaae55e7f8ececb0fe6f8b4e8467f0044ce9fb22248e299830964304db0e8dc6c027cbaf7df0a4a8ac06ddcf9327ac90037ba2fed5ad456f9cd4ee39897db07aa7758b84672f64d5e8cd15df30bd97cc2822c9b43217b8c7072fb2ac83ac960bfcc562ad334fc47269e5cedb449a1c9d70036d438e77a8ee978449548838a8fe19872c79af843fb3c631a6f0806c239bc22adfff2d1f81ab1ef3124da9ebc58d2ae039d1b9982c837b4ed42dad0535a2df7367f5a2eb85b1faa92b12969005bf8a3a1b949cebfd27d64e5e831b15353c4e158854c8f2e84f3b5439cb14f9ec2fe7e647d8a38736257513285e75958b7832ea5205f162ca4c6c23fcde4df52fdae8fe5a006d222c1c38f87aaa7a8aaecae91679ed6f68db13844e250a3c48b0d23431fc9f6536285e119641618e577904f4b34d518e10b0368334c4e3fbbe44703979095b25d431e88447f6f624c57f33ccfee3bf6ae91021a1a8bf3f1002472a86e94ed1f3d1f953d2e43a1d17c7bcdf07069fe1b8e2794a6d4c02543ac032940debfef4eb479088624973b25eaeadbcb1b33a86b5c2ac14a71a096faf903a6620bc0d846eb63a8f42fcfe437c0a58ca85681d5a8b783bf61bbb0d195eb03b6d0dafb785dc0df04988c6420add72908aa1c274a519baf578f5445782678ad696d3e1c73424cd2b028f0e45c15903451248d09938ed360bb7f81ff219097f23feb9937f3c30bec7b6b8bb3df72a776f9c9c2a2e447b77fd69ae11db23fd5baee4c2468a50877a91c672e3b4ba12be8d991ac8ebd8aaa3c8539b0317451f8b7a421d072fd877edceecdbe758b32ff966816e7763df0bca8ce0096fbc308fa297c6188d591600b64ae5589bee39b761e8a3785b1dd4def8474280605512e482a3d54d47db3fa634cb17f929088c6f05902423825155c6362f531b95c2fb2c2219c3e3808968986e1e35502e5ff732b55813a38c00526cf375d5626bc1937981b5739e2d9cdd2eaa766bf770b369c24f41bada423d0ac5c1fdca53eed9ad62cc391ba81158dedef3d5bf519292e518f98a4b8f5ccfa8b7e7e110243fb8528cbda9f96a84a23c0d28316b5ca126e120b80aeabcf551f7f81ff799297ee9186a6c696b4dc21dc260d20544d4174121b5784737f8920a7031f7114f0cc21c69a366449a0c550a997f547433a6f44097ac7cb92589ceca0108f4014af0745f58f6f25e0510c58b473c7f66f01b4363388bb2d4b189f80c8c69259912fdcfc9d2dd9f5ce88aac13640e6357111d7eed5bdbc6bb2cda5842f0a675e4d4e7c48f07fa109174390916f5de70790ff0f17902ec5bb5b72dc4f3199112dc3b6b5dcedb0e82820718332505ca9bc3fb222f49ad9ba49d53c8f75142e6caf211bf50bac8cc32082a7f829f1716d4d568e9015016a791233801fb010084c292b61bbbca8c272599194e2dd51618e9cfa497024eb116cd8f6550a1a689630720b2261b077d8b1b37c736c702a310fe463f2961fb38abc375f64aa603d37c74ac88a071f32debfbe2e57f0c19253d8a81e4a7358334176086042a87e39a14ea3b089d4fa27e510b1f77f5739517168b4497a94648d6c3f74e1456eea60cc3e21e9eb21e0c609676c0ea6f51048d8699ebd149e88fe065c4614dc77ef41677077b89d3b31ad20ef84588167b3157449ca475fbfcbb9c07f0518dc1da175e5ce3bd4f51aa1ed2262884d08f8a5c15f15813111dca329236aee57bb6ae40dc7f24fea46235588a11d5d7bf03ed5f9112dcaf1abd60de21b2b40298762a6e17ee1d66abda76e223fbe35ed7a9731a15a1616b28f36c6ebad04254a9aa35ce1b124e91be617afddc790f5254af0e57dbb1d042e229a949dc752c231daaa5bc617817e5da58c9402aa05131b1d5b1632796139403bab43578d6e0e4b20ecb6bc8545b46f5979413a199ace73c64361a233d5429950dfc530f232b507fb8ddc6718dbb72dc29cebd13d7d46fd504208d7ecc8a5ac8864a8a52f3316ffa3c0aff35573a056bd461c3f1f5ff5b697d40a7e20b6fcd7ca89e5a03e52e6f112bbc73139f780b0988f597d99b7268855d39762bd79805a7391667feac1b4077945786f2d01ff41ae26606690339621ab472a45ee3a932b9df30f5802661614e22e3184d6a59b6b309fecb1f1fe774835b39da724c781f49a9bdfbbe7a6e129639bf1cded499339e9a1add8b44990e3c46c55a79aaeb6d3d8fe1410e717305a2323e4bd76561365166011b8303c5e1198a2f14b6b0e347b17db2d279bcbfa8998d0e9349a38fb868d468e484ed10aa6c1c02c0720573572c6ca90ff71152d8daa80b488040d8588aa4f1845763d2da752822f9191db84c48c8804dae1159a7a8c394623c6622024c9ba83bcf4e5e376e5cab8de41ae3f7b9c5997f9fa3d5c3d1cae113493b2f013b699588b724ec1077976d208e04417e49bb97b3808c974bfc5c081a0874cd386443def474690ce5b66d438166940e6fc0c64522dde88b27e775cf32d091957e58ba951c0cd78f88952d16a814b5b04f89dc7924aeb7eade3f42c8dbd0f7b7bf0ed7cae0e7582bd2a503640e21c5f101493bb76d38b9d0d63020d08739ff62c0eb28121244e10abf82bba0baa8c5cf989904b3c44cac7f988a99071afc24afc8960eb0ec4fc07937a2c4e93b295f50b1d73b1e8a10846d1319906467b064983a926504c357885580837b80d008c898b5b10b194fbf8e5906885582ca54796ad2d11f311a0e46a4e2aeff02217f9fea4ec28af6b56f51cf8ee0f9d12c8d9711d5ef7cf3974b3f7ead269134f1231632f52a68d312ab68dfed19f4504c896354923ac4034321fc84c42612eccdd51bd1a99f1c925a3f2036ab49146bff72ec9e25081dbef4b8f014001312b2dd5c1398dbdf24f50c8472d42b168a12c741f24d1c70373272465cc25bb83615c0cbce330d88917cbecfa18adabfdd474f93b0e273e83c094329cefc092f8d73d252e24f71c4a2e5870b1e4b10530bd2011a5f4731bb8427992c51b8b9571392fe6c5b7a3c5cb36185cc251f65346556a0569c5b6575fdba3143095e5105e7f8d021aebedf486394727a71a0af8341632e907671bdffbe4422f3b9ce1f23228beb4cd1b81110e990cb46059f1414b5eb88a6dae1845fbf26bd748f8475fb2c466b32531de1e3691c019e76d028ff20201e001f9fd504c1a55fb5e3e4600b90c0312936bfedaf2b2b74fe12432429afe559af3b29a78cb40a054a64d1c57efa40a40aab90ce0e7ad36dcf34d5389c132d6e76b00e3d5e7553917f1a7d52503de2730d929420d5296b890fb129f2c703b6b404356e0483a3510cb1e12a58c45c2e2667eae3f7e02119e6a2f734059fc5dc6d1f0f2b6b9e69e52a9c202feefe4551ee6607ae80fdc024e0638e88437d28d4c3f4990f6af4d94a09cb2e6d1c8b6b06863ab857c4facd6aa2da7579f558e5cb1b4249dfab6aa09f468f09963a75f78b08a033f69e855a9dd59f2397be120bf421592b26bebdae6b2863aae08bedb24bc2fe1065dd86d21c7ce4226cd3e3dd249cc1707c3a7962c2abc73e055b399c2de92c24adb4d65af4c21ab75a8248d567dd48e02b945f2b09d1ef6d0a6936144a58dce25564316fe351f1685da28555340be765347e3b9cc61e5e788336b8d21ff0364befba26191f23c46dd10845b2f51350ca8c8627b57da3549955006366f13200361eee0f625422f1988c60ea19e1bfb916b4123f23a562feed52b2bed50e48b958549e3f0ea27703054dce4674be5247d744daf8625f9b833a26b3d396ce8c831998a3a11a40d15a6d2c73725815c6d3cc82111f7d5152d615313c4f031c5937ca5df7e81eff6125a01a23686caf44143e1faa83282614d2d57ab72923ea16a61811573dd5027e54e3de40dc0ae17f3259d8f4600b946d590eb4fc5a8aa2b0400f691192a90782828004d7c36a63b199c33dc88048b356557ad280cdf8fe0fcdf91dd73911f81dc6a13dc0c71093ced14c40b99558833ed970051a90ab419b37681add18e1042c90c835ae0e2c2f897618732c259bbff3cc21dc2b929af668dc3c4bdbb5bdc69c9b57d6ac71f115ba95211a656c65a849f1cda8ca7037a7787d35ac4175362b6d0e3d2775714d79c05a420f9e66f6a0f026738b380858b0a41866bdd0a6a6917cf5354341885f985f001883cf0337b98220cadb3f5d68218fdfdcb1004ad38c8cb1a152009bc22eb673de047faab8ee2f4213603703a1ddace629414c6217badaee6f0aac96e97d8bb612b37d89872cda338a87d14e0cfe6fa8678c7ed77ae6719bb0b591efa0147888bb4251df4f478c955dfffedc5888aef1f7bbe794355b848c49b21e10acebd269f7fea7c3991f5f2150c164f707950e55814a7063b7aa4a95bff6b9fd7092023718d7fec57823a9db189986d631a21a7a900351f148308f6496e528065afc2e1f86f875307f4d4ec49eb717e30c57ad02df907b07a7dc1f9fc2f0c375ce8cd6d75b31552ad5e26e06e3d870e6cc0f26c86f4f6693f8da685f789409a2abe7c8829ccac15fa0484ee691b373d1439b1117dbb69e44372e7dea483c1043a7b060a229d5f5fcac0db4a4d8c7621405337887abb73c8b051c2debf8ab48c806ada05603bf8f4b4a813837d05e4b8d9d7b03a92af6a4fd27baa2a92d153b8624e6b02396ce27856ab1ceb25dd24786efa0dab9c4109c971567de0a3cbd16f8cac15e9777784509bc5ac19e7668950db0031c4ecb3e165ddded031f5ed4bcad817648287fb10c4664412d623f66fa87aee76f2e1adfe9207253a0f3de4cfe43dd523622fac1b904539b2e1eed4209a61cbeac61942d5216ad589574764d2d86aa471731cdb60d5a8813c79018ea932343f125d44aba08d38c40e66f85ce2c22b3dc0506fa842af6ff0cd9fd26f69e0685426d0a542abdbc067422c356b4291b68c7fee1484f75e43e6871bd0e3167255026c4c2fe829a0298e8f841e20dcc706ec4d6b2d7fdc5977ecb27e854e6456e7023c5e31a0876bf7261c398c0a470a95b4286b0aaca1e79ed61cc72dfd690a5b9915a14dbd5963a4a0916b78b7491994fc9380c0c333d420088561e3831424719f1ecbcb2d66b88ef6fe21be947a0c92c94794314b9290970b35969ce5fe416b9385cf5829928e16913546e38062d0fa92a265751f9f68f01fe2850e75b585dcc3da5a913c227df4d75361faf30fc234023ef2460fecdc115c43fdb2f17d984822c6e83a58c1e91802eb8e92f1f57e55547cae863031f514e5fc104b3d763f2c4de45a2572b12678e3a5365a8520182a16271ed4405db03883e5996ad8a76dba5f6049f85dbce0a6f24997497bb7e751879ef304d5bfc465cfe7aa20b2b245163ae226bb449e9957edc10efa7ca7dfd9b94771945ef3791e33ecf03210c8a974c6b8a2c9d791ba97e32b4a5ac12f97a398a510626d66828fe68e34dd115e6b892f4ac9d9a1c44bdf5d91469ae8f9d176356ef4fb415806d0f979c0887020d9f3c1cfa23504e031362ebf861aeeaae945081bc95f716e173e39598f45b625c9beea6040089b8a4d030a6ca16d05d7821ded1476a85a9aa4b05d1c0ea02134c308f0b3cf095d4cd1a7df4f0ecbd7b8a228714b3c59cba3a52fd9ecd444509a6366cca8b69a9ea031b31f9f0769c426fc8209123a2157b97e6c2ed7a55b03f20c1d9b2ea3b01a053941845775beaf6920080c27aa93c2cfaeb4f8825568e3def8f84566f81c89a10a727a469a2888c3b0803593e072225c345dfa40c4f95530fc48b8ffc5884b04b400ba639c9887aa4fada2f102f71bb7b02162cf76aa012e048047f085e6f7973fffac26b5b054b988c46c521b938454587d965ccfa094e696b74dd5643935890c1563913322b92a537c1cf6e6a1736077deeec18a59780daecd7bcbb9fe1cb6782961cf039e868f4770b28ebcf253219abbad5eee72765b347738049c8a433778e91d1211a5e204e061cd7ff82b1ba97e6270e0d1e45b3c692134caa6414de219d6fcb58221e56f49e4bea4fbbe9571dad03d3bbe7aa265ddaf2fc307b19237ddb4dfceb7fdb8864fa587076a3e312fcab80f0afb896dde1b22fb2e207ed48536ef07d1e624d0115f75afeab965676894433966a78e46adc58710924c9a274854aa2f2229f476a9ba45bf5361872a033a5f59b5ba0d98584b20b888c3be5d45c7b429c7a092ecec8a7f2b6b3f991551c0bfb88edb532add2844052e03a9b56bfe5c83c36f1bd6a3d4b966c59e916e37e612edf08263419c245add139919ea32a6bb54e1339e88104fd26448e2ff7e9255e0ba544f2b37f9d3abcc374b8d8de376d01bbe92f7c65c7739b5d053d371f4a8f64332ddd54929860f63fcd2d8f4508d40b4757564abf316aecc2b2e6ae9cca8770976423ee7f2a335e6e4cbdd2067407cb18189198daf11c70aa4412cd5b2471e775821fd55c5a7a1b643e6e2deb14e1e2a230325a3959e77599fbe7b06673bd810c58208f5ae0402c0c13b7dff10610cf42966cbd640c1200c141e4378ed2748ad6e18d523d8b7140380c28225a431a42df27e671749fb293067ee0723f0a113526c2bcf4e09dbc9664b9d29b25cba1bd09ca70395464804f66d7ddb08d09985d8299d84db5666d0f23a4901680cb33b5649f7b9fab7262b3b7a40c0f4c9b7087c79c3b24fe96e1450a44fe8eab85d4460c97e82a66232f562be300b20b537d3f10b24f9b5b3ffbccd2fb520c5bfd8e201e67545926a68c755e834276d7943934d0a1dab0eb50ac39a6759d0872456c7a44784fb501b039392a642df660551a636892009e03fcc8e9652ca119b84063e4f957865790d97077a9ce4a4f382c026bdb1e4e26970a9bc5c1006b921909c81f2baf8c7b26b360ed7cc8010d58cb6da41af3699cb20dd6be0d742a7b70d2a829ad6ebab7ee6774e19f0f06ce2a6d35422729b5337b1728933a082773d4766897b7db71621ae5dc75c74e5e527e61a4914d97c9ad16a30ee930d505ff2352fd0a85904283d0bfb1133801e3e4b97ea9fcf6390edc20966d1b3a8c87904960d33c442b9e26989b4f677233fd55a60d5aecb5687e206e06b2d98026ee5ade359deab67621103de33635aa5c013358db60a7e9e8631079876f49225a31437d617890540233b9836f9db8e281fabbb3fead824516b90259e8be3a5bf8a4cb805f287502ec3ceed9d694108402b0d4264dc81943623acc8e70c0754b2f968abe28e3ce73307fd8cd6452604547844d3126b4b96dfca5e5a28464ecf0fcb413486278f835854e6f6bf1fb526efb62fcd8a245f23283da107183fc04a6dcf3eb8c4864ef07210de462818d051aca66e4ee770d0fa0e088a7d14539faa67f8d7de231403a55beaec636975dcef97fe45f991b80c0a3894f3448f7fb6fbc74f3acd43bcd1db962ba4138699d33d84226364a4f115598fc484a0cb3793c27ff2e1c410e410a0b9f6257449975322025d16867f25f2bf8fea6cddfe0a71a125b9e1e66fcecf6030ce67f41278559f10283cae6baa56a235b5c6afd5090c58bdc483ac84355bc95c0095a6ac6728d3206e1400442a916511a96913359f2539f9809076c3511de322c9df3f333de2e968d6a2e2ae844617bfc9653007a300f608c242a81f201bfb41fa131d42f61aed968510cad3329557d01dc5c30e8a8536a76931b1ccbc8c46332ca5f239bcb393f9803ba418caaa3ac6e5e3fcc9d26a1e48d14d5fb2c24f0f7f0e646e3fdfc340313e0868684cdd74a940d5dad375125821ce8b7f673b0dc917925dd62cdbe645ae456f890bcfcb1747cddb2a92093381ab203957868595d911a2714f00a0bd720b2245a684dc6908ecfd38b5da78b0933bae216ebc27a6049f4b1c08ffe4619d279d58f10540d857775b1d6402ffcaf213e4ced3e6285ab1e89e839408a5a3690eea02b0977b57fb8a5d5fecedb0f66f6a48163d05364ddd27b2a2d347d90c42369c61f5749dadc668054ad52aa6980e5737ad81185ce462ca5385f7153974b1ffece619b591645cb48e29f79d6d7590ada8ed9fa367088f66a5e1863d3aae495d56e1b7e1f7fba0e7b76d9c443cf86505edf58fb2ecb65064b074ede5c1b3e00c749a8c4cfde800c54ec95804502494f403e0b9c5fedf4e807de8c5cc7997687668ee2d0d60ce21974e1048feb5d9f80415da1a57f9a2d72ed23ff414ab15281ea9533a708ca088404f1473ae2af4506692723480c55770d2398ab7896ae07c51e33cd3c1e8b55abbf04f73014ae94c687a842493584d952904f7604387a06a893e10b6a17cb921286f0361e0a95599422a56192e0a1115499c675544b40bc075135e140f74191516ef900a063ff457f0b423852f7c22e6b174806cd3ae9b0246b16ea91806f9b041ea1a9ab5500e9bc32269e3843c1d975958ada136cffb00bc118ebf52c792cddde8441a25d4ab94c41906d42108688744a681544bc760de8b91e1399c717815b5adbab3aec06ecab5d8b4ea4b913593b8f9860d7a7084be6092973923ad40b0f78ca6f6d607beba15901d848c4cca81a9896ab16b701fa821a550d1953237132419722fba576c1247828868798ed376a2e9d16fd91d6ca3b2f344818d66c94dfd9f44b91952874f142c3bdfc96752aa4b0201f66338a6d1c49c4995be692651ae970ac99a09e5014d8b72856a7b497b0d3422e63344980e90b833a47683930f49f07102596c76d830197719c130441366357b83c9f8dc320ca773424906a5b7514a81567184e7eaf12e54b9125f9e01e88238d003a10481bed8023e9bbbec491d1966f642ca3c0ea07f7db235984a7a736691f525a13b95de288cb2d9e96deaa4cde929bc250eaee638d9ff9b4db3cfef0db9814fd5f417b1140bf472d526a5b29b317b49c28839aa1bcecc7b0c4875e0762d64a468e87d0aca419397ca072933d96cb8c7e88565146e55462afeb2843b0043cbcd70698c2fe0ea2dbc15d6e61bd4b3a041cc45795d1cd5b17b0a1d2a5554fef41429328b8d767aba62360ece890a812a5decbcf8bb30bebff6240f5ddda3d87d4d015bee3448e10a215f5f5462460b199c44cbe9ac26ae681b7cd9a82827d27a623d3ba94fbcaca2dd7efe7815874a8f406bb8e98b745baa481c9ee7a43f199554ad6558b3ee6b96891535ec825d8c8136ff278c8f0e04d18c0d99faba6a64c0aefc1e0d22c49b41d7f26eaaaf8207183949872207389cf950def9d9c904e5c41f1a50c0360eae8e194ea616462825c165374d5e7316ddb505c19a5f6fdca353afe468eeb860efa497e8886711e4012c0a54a9ab4a3b5cb6c197eeca6017847577ecf7c83153ab8d2f884dc4fc17a0dfcb6ee406bc5036c3f3969c174c58aa9abfdfa2a4fdc9e54de51bf87c5df73ac381c5eb5ffcb0ef43bb6ee48c549ec1e65e642b93200442e25ba12864c3aca9e503ff9ac89853fd956b159d6dd36e9b46ef9769405e25b291f953a680de04167e877d234c39429921c90fbd295252a3393a76a753e7eb8bcc7ad1ba4fea7e421ce2f9bcee721e3d0248992c23b5d0117bea88d08fe333a3a7f2cc29e934021190d5acb4cd69c071fd068ab64518dbe65e7750d697276be0b45eed30f7e1b51e2ee40f065094ef0b4acc9bf18de53047847f5916a27463f17a0fa6c7d178d61028fc4c2881dd0403f75e3d201409225bd45877a818b9589de7f83a8bb93b610090ee1115d73d613c87616b12aa11e14d2a004243adab9743a1dd14545d39a1e52f6d08c7d2e32f55dbb865f64419ffa00f554e35aae454825aff6c54cacab5388610dde1796db3390e4bd224895433549f33d1b6d2441ade1905c57c27a3740526b300e3cc10e66a8068198024a2561f4fdea6447763d35de3c238292f28ce27cc0eedf060daa8c5014c2810564cc42c8b02b9971507e5d704e9bb067768c3eb51d8c484bbcc13ec94091600de6c276aaca479085763f073dbd498be4af314538b5ca28dbf590eb2dbabc164fdde693acb7c60897c6caf59d47e60722f47626703c051401e572132c341626ea67dce91be256c31ce8e9f683a41144e0a82f4c76868a01f24f3b0d31c833e770d8093c9838c804e765efcf92f49872bfce403de2e5c975a51616dda0ce2e3e1c984deb4952867cb18979727be3e5679c1d89d36e195e9a36f5f36f3c488b2eaad0c244c93801d84a9da15db4b8bdd244db42d996322bb24f785c20abb53ace54c98f9762443c418a50220caf33e7be7fcd6d420c13c20aa89b208599bcd75ce00a9d0e45fbdc110882d8846d6833a6694ba6d4b3f54d4f914c4844c70615ca1171798098ed70b135056f365ca7a8131cb7a9e6c157346d0d48a0fbe8004c87df0e9d3160415b16de1bce1a5a0697a303bb9cf1ea69f45f49981a5b7941de25809850c94d56294ce1309e6d6bed23a828a17a8703e063504d3576160f66c679ef44062e82c49b8bab00c409a084dd40cda8d3631781cf36500ff025c607ad347750482554b395a25819cc73fcc1f7d8828d44ad441a1e961118276a923fbc936714c4f42de248fc43e68e7581419a06dd5422a9e85fe4369a1628c0a8d117b0f42b3678515bf0db1f928663a61407b84f03c09e0dc541fa50cbcdea338185379c1d48790567b670110d7620fa9af9da1999f8b3cd895240ed421271117318bfe8d73c3e9cb6ff79e44c599cdc858079232eed3084d505051f41a338e936c1fb18f11051a52fac4446eeba9385ff851b75690eac7c3f66a62ebe233c49c288336bef721d185b43f5e000577bd9e3f8ec865086ae01fab23237ccdcdb395f67a555ef035fee8a54c93d1c2917aa95780e6036d9fad5e3fbb024df10757204f31205a2c9e542d02af572487f921d401111a74adaf0c056904edb83847964ef9fce26731ef461525a58a84a4a5ac41ec8793c7cad97682c03a0dde09b07e7912c9a6a26d84a0af9d45a4945105f45a71e33f685a76d7a015940a0df9aa2af967733ca5e6a2bd29666168da4a49cd625cd64794c19e252d273e9d4120122728db6c5fffdde08c83aa2051cb1b358ac9ac15d9ed7e625066ddfc869a1d70b9583c3b483b595908574a4e71a713eb65dd7020130fd1338465624977140d7d7749fba89cdd571740c08331ceec14cfee6df44b6b0dfae04007fb1a45319019511a1f5972c08a851b9e6c9065839cc18ca89d3731c48ea85b97de1db99a4fdf40fe00d32b917b64cfd3112eed64197fec1874916a24d7eea36b9750635b2fe9f218b7a4e811a6161c318d86195d5717950f9b6a9ba895f60e5e1a5a3c95adcda132c4c8bd7cb212f86da773df6ac168e8e86e4a217119091dd09ce468b6bf5d4557b0c9354317f55b0c0451ceaf3936028d78a0072243c77e059fc6fd629190f0f71cc0d5439258f0081c5536aade91fe30545b729acee946522b06ebcfc21c16da743417b0093c5e193fd5dc2ab0ea367e68175d02288d575fae4c5b190b7f0e27329244896590adc5dd3526279fbccc7ec10625c1d2c2ef0b63328e4488fd3800efdc8a9325c12176aa79ca09b93042df4d3e1323952b4c04c7c042fd3f0d33a8ba780f21c9ca8591d02ea8a0085fd8074c45acdbdc0f69b5e90ff42bbb9f9da837dca53e19ff688a0ae2f08b0ec7aa36218e367b45a35b811fe0bcd21d042b42435df9d94d294fdd7b71ce35da656f25499a1aaa7780ded90e02dfa3b521d6dc61d32a2935bdb6a27f0a1c2b1d82bc0472372cc9aa1839bf10e338c235f093ce2af815acf3ffb60abe0cc17b97b804e57fa634d55ff24011d45c17a214eaa5ee3efd2d615f380280e6ba7cfef5026f61832ed924e81dd0c78fabcef8ead529051d0709b5693610f368a5631b2101019e24a0443d3eba5523813468da1ddaf52be85085b01716fa360084963fe46730bd894ffe14ac0d06cd17d2363ebc7147ca9947650d0c6e0099867660cfbd7c03b6b39c5c522dc289d39f94abc42a9090de8677cfade6d1e5f104fc92060f37912084258223a5adcfdc349b93900b22bc0444310713492af1668aaddfbf2db70f03bf02634e8b1c0d48c5a9c72d7c56560fea7fd5b1fc8244a066f35e4391cd068652b0134944a1e886e80df73618dcf1b8a44354464c21cad907243a3ef348e37689bbb5e6dfbee639a5cfa6f9a323f9729ebfdc5282f596cc4114f383527920345c26fe12f76a9f6cac50e73a0ad841e26de760f1750bb88f4dc730f1bf363bae7e595d94adf030243c702b4c3928618923cecc1dbafe7975cdb0d0d9e952d76cd15c97c1620f12bc6cdb6ce14ac95da42f9582b08189549bbbc7f5e401c78df18c3b855ec749d5f5e7bd631f31f74c26c6eee334d0f609764e665c74a1b18b5a76b284300f1b1228860964f2e514d2d0a0679e3269825a40d6a9c6b4059680e168015e1e49e77e14ce68e605e50b378dd1ad061b2eb05f87d30cad59afda9be54cea11b81651b18813b2a8f9b0ce9b79ef1b4485d05c0511047b697cfe8706e6c02ec99af1254f6cd2b3aecbcd9b94433d8b8fcdd95b0e2cf99ee03390b9f47b0aa8150ea95f3e514d9091e8a08082a77202aed93972a8e199cd7aa32681e1779d802b26e38ba1878d564e1483d5169ae610c4b82541bd9f4ef826304842f5299cce488fb75fd6d49a85e060bdcf3613c4f3584d1188c4e058c21f871c76c1a0afcc85b6ed5a79480488c3bc7e51fd1b0494af0601a061d1543d478d849a6b3a9ca04335de801f5a4916918f5c7e81a0c7606ed61d430b0b6b9fb072086242bfab8479c64bcca1094ba0d0430cc15a7218db04a486ce3cfb96bad4eebf841d3409481200ecb81ed8008dd2c2cce33f231432f89b309ca3b06d3a1f79f70b3e60e1c6db48ad0dcf4b5569c4f874438f8046a8de8d79503d10089d9fbacc6da4ea5b2d99626567651ab441d2ba57b418ccd071a6196494a57a404da100aff609104a609a6d1c1641e7c9c3717b13484666168efe5df69f3b38ef72a33becc76d8c2621c5df25f1815e2240ab7cbe7f4b98373abc66d033ae0cda255d11e096564ed705841b47c329eb420ffeab1350c8e6d5451524fd3ae7032aa5254c040b842f4dfe2a9944928767797eabdf3fd35cb11721fc7a3cdbfffe197bd1de1ede93cd27a8cc314e69cbc94881c4420ee79526cd7401fba7ee4e0141fb2e2125b23e3bc9315d3f81f4555be3a58e0ac3e269ac6890371176fa1160b402a740061d01a5713435685f305224ec0c0d0605eed975f05961d87839a3a8de691a41224c1a2a8d8fb194cb982a27e12529868e871b59063185f2c2f591221ade928e928e512640cff536d2b78a2274269f1a6d911702f23fb6fa15a8a742b01ad336b1926e15158dba24ea0498561de98bc9752a74287c313403730b3ab298a46c1637fcd47dc67e721621f2c2eb782842a398a496ffa17d5fc92b614dec5256cce09b1a95560002e52b9fc6232d31496db1338769488564701a2862bf7feb151fdd3374c413859884b6a8a1217434da345da09bd18a9600e6ed6196cae33b075bf6ae821247371e7e76028e4c71dc73f8777340f8c70f6c2ab89f9d48f7a764b828192778960c425833af8585b83e5d3e084097a55bcd4a085540e1ef87daef70ffbd01de14d19f8b5096a3448256973a5b2152e0e2539a505fa3c0c94e7c95c0e8bc26027c88e3e60f7d20bc475fd8e780ba7cbdd17cfb7cb002f73fe91d2a9268fed331234226f9287a4440e80912ab93b07bb99a9970eeedce9a8a47c1d6a900bb3aa73981ab69a010c84ec62004e09a208fb981b48ac5c9230d676da33216a312d41297267613997f0e5e5aa0ae3f721698cbd1043798e042ae36e9acb0be072b9d9c6b5b6a8f8535eb60c4c5914cb6cac754225c1adbd63b3a362b80212ffba4fec7334abcc889f221ba1f31361dab3097015fc7e3b21c69a06074fc361b62d0b62a0745f1a0972d8fbdf4d37b9f5927081499c1230fc77fcc150851a2c4a60bf14cb7af1b9813fb003d9198000ce5e9ebfca8da01218a61feab54d965ac66a4c258653e199eae3416de3daee80ad2d5571b4563d975d3ab4cd3598de60320104b9ae23e186a868c99433e908dfd790971186cafd54ca44c7a905d86acefe3f4131d1dd6ef5907d976d0825147e513a9bb03c53e4e9231bad641f2125c578a29c6e4f8241fb2c2d8be021e1418d494d056c0bc7d18aa99fe11aa14c46e17b1097fb0b4607d4798b3507e72a5da148d96867cfb6057d2c84615d48c685687b2aed50d7c6a9ec750289847d4264b90a73850e6581ae9f86d01324c55a6a02222a4e91e0e190efa9532ac85a61a18152d968eab4b7b98a517a930740029632f7e683fce12f2fd7345470309f7c76f29b0b71ee898993454aa6508c41b08f074b5b6006ad3eb692224114bb65a0af415a111884478172cdd8ab84419da2831137cc38216dccec21bbc090b5c63b81a0f141fb68da2b233b58d7e071e0b6a8438fa3ee4da2f863dd12f96ff72b6838f41e433a57f0bee2c4751e8a94ec5c7adfbef46d56639d1f68ef75c617b9524f0d7b33776feebc1fe2bc5121c415da473af77c6b2ab9096da1a01398046a954a5ce97caa8fcc4584280691977e0bfe82938217353981f597423f14313b29c72b274075f92f3a44e56a0f6eedae2a24f6bd059d4e6879138ac2961b7b5e6002da628cb65fb0e61ba2c73d0bf505f4f17783af77486d235e0eca50d362d49cd3e5ca0154d1b6a3dced0452441712e38486cf781a50c72cc30052c5ad802518cf00670da5213f8bb799a3d9de0a1e54431b73b9075613180a9f75658fa5856f480d54c211513f044be737e4cca10c45dc17cd5e8918174f832c2ce3a501a38538f994554795254cf64b4dc1dca75227c17441af53ecd44bd0e3202740a570691d617b1ce4d32e922329531ea61f6d5f047dce9144a51c4683025448ad7c22c41d84b21f42e44aa4014c47d1fd722ced3ba39656ec89020d825f21813a8d01dbd044f4697b1a5ec17d5b81169e8374ac8a7cca5ee739e3be234049448d871d56e5c4b824028ca7cb1203e49540b586ad8960847511621225d69630025f2676efa0a472f934bd8d152555d34509ad3d1b77cc08f25d111a156a41d5e58859080d0e87fed03fccaee72c00d1f90c3a793be4066e631d231d4d217e4d54396c727d1415105ed00f80078a1d3319058a03ec689ce319d6dd2a04da4a8f91388223428cf7f27358240cff3c5d4fd399905b3eb513562d1030d1737cf529340c07e78a9b3ecc05e2d949058f2381a68cbb1cc2858346db408e4fd2cdc781623e83a3a6868d93e31bf07236aa9e85482439ef540874c3858456d0432c86b7a787aa167ce272bea32005fcaa6bef3f9d6723b303bf2a60c86716f97714ad1ebf44afbdc48ce04a5186ee2318b022fdf1796e6264d77f14d2a8e4b8e5ba47e4ebee1ca9dbd5d3e8874bb2df064476cae7a2f614845b8e94724867cea61fad2a0dce405d5f577151ffc56e99acc57fe914588995023e7e926305abbb8835ecf34f91f71a0f40ff96031ea1743d72c42a96b6ee9b910fc0d7ae6e7acd500a9826d39d87dccf53e24168c80ed2d1f650a3fdd051f101bf6b0c011c3ca5523ce37685a2d3068bb8e4dbe13f4bbf97a1a7775843232df1582564508a8ea4d6e46541c803793dfa74695132f7ca88f059510048d7c123092dd1e9bb44533066789516537ca3cb66f601b1d4b072c939fae40198bf6701b2304fdbbfb77e5bb8b38a245c0295007a5ed287909a03b8450208ed19eaf5cbbe158217b56e1a28c24d8e5bf96932ef43998c18094b248173dbe3eec641e217947ff7cf2286b5946149e9b6602714408e268764271ba23ea8790e53df88714e86d6c9458168a0daf7cd4677cb44253e439e945a80323b6861356a00e028f6caf0b7e5543455320ec6080dacb213ec46ddb5bc81c54fdc6e47722704e5913d1448c9963ddef0cfa1c93f3bcb284020e1918e8b1517b8e0651dbfaa87746303d280697ae18db935691a25adb8fe61d9c079aeacd40104a424ed2ee5dbc0619bdf94c663c3b9af63aa8c707e7fe978b0f6226ef512eb449e5f94052e69fcdc9a9eb5fac6942196fe738409ad5b1f76a46da8e366865be959e07fb2a01c92be125ed38aeec08f4729d7100224d66fbfc0a440d89bb4b3dd2b145b9b07807b54f41e93ee64562226aeba42807c57bfb85bb241931a7ed5de01a51107b4ee65902e326328b6db0d66eefa0f2dcc466921bc3faafa3d95d0a4ecd133cbf4ba432b0eafb862e142ff5dc270b14afcb153a150d817c4ab0d00c6a04b9632974813a0253ad56840467c6e582ecdc4072618815e3a9e787e279d880d51444c5d35c86bb0e05493a831a85f348c943cc14e7b6ae7df3ec79af0cdac8cd058750802e9cda4a0dd1a28dc272b98b6102f735a3fd6cf59f250b0b2e77c1c8107407843386ae5183e4776261f43d47597d495ed9674ad59c7639f85bc574bef00f9f475dd8d41b4342fc195540ad4d52eda84b7940d688e9b2fbc6cbe2237ea8497d6455d9f7978d16fd636c9e299713235ded82020d8afcd861035a20067c329e099875db3863ae8d3a23af8e284dd9577b4918661f3617792137f4bdda9d59c43b82185520db514d81feac585ff7b5ad7e9a07939d64a1664becab1f2b2255cc6da85e79d936bbc59a96f8fa35e95b6b3c9da8e8008042f03c8407a0fc3e2f1878cd4cf0d9e9e72750fd2f5c2ac235a011375e75ace4b4d3e1c773b088dd34c41c2280d5ad2822dbffa274322faeb2f8ddd5ffc5e2540687e891923b476a8877c646c8ed3f3b98267417566a00da0579004a837d03d91b1db6d18250be5ae651ab9f65e5a6365a35188db14eb4aa6bd39811049bdc70014303ca8cf8f23e6b1704cb75e0bfa5f2653a95c15b487db93f981d6f35acd683332ae2052ac8a7d621feffa1599bca4be4a13a05606a5d26196948902990813b27b79251ea3e660aa5228da3eb80ae93a385912b4cd1f2e247816052b9804ba2205d39f5ac2ef6b1d0251033b6ea7b1e3dac1702b9345018af30c7879a487641889b68ccf14f54f8ebe8681176a7ffc1be8ab50491bf9da566a303071e01d0f2e8a1e6540c0716dc94d2454dfbedb1ffb65562fa4fc905eb6d887afd77587ec530706561c887f3bd581b993192e3a10ea9ede8e8f8b96a60dfeac68c56f78901c85d5a45dc814467460d8a4834d2e3fbbaaf9479d6d6c0f28c92e5c2d027614242297f24226da3fb820646cd22549cc5282904c0ab478b7724e834344ac202686c729ee67f5e8ca64b15dfc3ae9045f2487edd360d2ee7435f2ec14b03864874b203f5f28110c4a0c14f6a08d9dd3fa6246aa8a9bb23e63609089a4fe88750c3468b49b1d40804536cccfcc4dbe574b95b88ae98bc97c4c0c7bced6fac1ddccd1f89ed5f89f5b0ef9caac5c360cf49c7646e5ea4d3113af958aaa60db9917e69e7881dd4f2fbfe727303fcf69de69d4b5425ab25cfa561df267d9403b1da89385b60d549c3950c075adb54f0255539c9754fb39d8ce4fa21261629968fbc6878e7445b87fad5279a11cb9b88adb250c14611c06b62fa16926a1dbbfd2412ee5378261d1140609070e05cadbb88ae553b179c94081242ae369523195b8c3cf43618dab91fac48d59d4b5da2bbe9fd526436b1f8b36a43aae79b4f325c6be5f59dddc68e41dfaf5d3bb8d212548e3ab7f0178fe7dce150dc6b7a52f41f325ceabe411148c74386282d48d54aa1306401de930ab917e1b511475a1ce8b4936368b42e612fe716057b33939f797c0af86bebc9e4b6035917e8a4b5ad9f1d0de00915a3c52b0cd51839e986383a579f66872e1058f73efc666125e396e1efa3e74bcd4c71e84bf9ef44b0b62d3802d425671e0213309e164a0cb84901dcc64fb5348a07e87cc5fc9d501257b52c91c6360dd7c683cf1d8732c9768be80c07f949903435a0287fee7f881890def72b2610b2d4944ca424e6e339ebbac9866852ab7701de7edff7e8f5ad290c374be61c237d8bc0945ac7b20427f41a5fddf03362e213777214d37fd124a2929f8e02278cb69d70881b736b7b54eebdb366e867d556ed5388d976ccbf40b963f917fae675d0ae62905564dc411aea21d0f6f3c36be47b34f2fcd07be430360045472c9bd9738867fc2c66d315f529948972ade2411eef8cd40cef9fb3b83bce86324e8c7dea1e73822f4620915af2ff130b835af42c2d0884ee82b8eea5b2f93b6a62958b2ff2661f137149857d0ae99cb53a26ca036369afb7acf081de55f850b7908f65d24697ac9649ae4d112c430143016949681b622dc6d46becd6409f7125cbf11f0377d8b584da13d97e6abe081a58755f61c41114845bbdbd10fa45774807057373619bd6dcf8862654c2aa78e7d9da4b2cb1055636dedb8b9649a1952d7d22d5669bb28716ba0e8ab1cc0e277be2fe5740fe6b63b3fa7d24d3c53a0a2b01ed64079762a3293fa0bb7c5fbf18feab9870b9c06a1464b6b8213b87ab4a17573218e8a5e382cd14c53474d709731001483a51410e984c15966330618e8f08eb695d9ba0012a14484cc2be16bbbce1731dbca6ab380efe1e5339e705690af9c99ddc1832692dbef9503722000376358e31d80394f28263d7402636ee139002d572709494ef3dd97d91a151d3a7028aa600036aebdcc343d23ebf8320be224ae34a595239ea232d38bad4bc5741854690a1890b672582c02dcbd4957615d28f2e3e9d00633e9db75223fcc7088fa09163969211b7e4c032da2580c2215b12e8d611b8a658c0425ce2c9bc367461f0ebb6d19aab840c6e95307de14592ab5fd936f914931ceb368c62527421d05e3c1f45be42bfed30b97ec392df53ce77f92f1a0b59b3eb578e4b78a53f12d4e99269c7ce6f4cccccebae734e7d6a4e251ce61be90faaa72b7b1eec024133b8fd1305bd02f56c92a051825c484f2f8ab04db1bf744d9f0bd26b0263d15d364d42b6da36842cf80b8d685fbf09d8d0d5e9eb1da7a734e2c834948e70ed5515cd0345d311bc132be39519e24d1dc1338658d4ca4cc3f17c1eeaeb6dca092d387426e9d58f755a652a11811b253345e89e39f58ddbaaa7c3ce7a5f151b415e029dd463a5eae0c201cb57821f71ab98a17029376d88067a8b68436a555fcd531d1855904582f53ba9173824406ce7269a1087cd70041e3e5ec30706e8aec0344ddc0123c1c94c850cb154b57630540e4869e984b0d3113c8a9de31317a0c44921395a94610c837eb130bc08cb5752d7716987c96e00b2bb813cddffdbdf34706d64e57d2164782458423c96027c6f044a5a17af5c3054b251071587d35e1c146a79302643028155195d69584e9d71212ee9503a1dd11633535ef7631c13d77605c0b708ec5be7c8d57d9ea78bfbc57aaae206b5dc3f247784ad7a43f00fb9f9f81ec3fe9f6c154bf62e217bcb2d654a32d70a680ab40a99f4e5e3c8747e5d9a1e9018df8efb8122d288aa924da1ce08e97ee9cb9a8c237fdee77d1e940664af699993f7541aa7eb238db3fdfb98b86507d9cab9a6b38c9c1ec5dd542563b23c88d274520c52df83982cb73263ce9a39e95626ab91f86ff471927eae49574bdcfaf6dbd5aeaf04d7bd98b4653f2584cb8330bc2bd78a4c6390e99714761addc757ee43eac4001285c699dd0a1453077d2e6c8103e37e22b0f33a87df8e2b7af95b1abde6b69903756a24b81c02719a7da04b93efa39e863fc420f717305d178b2d0485ef975ec8fd124e42a53f49fdfb424af64b3f5d1e8a30d4bf8f53ffe2491be3d82fe149570bb8971b4b2259f4f262bf3fe706d8e1328a8d7b36a50697ab5e5c15f24c883c4318da552a8d2125b84f89d028aa924f4ed42f3d4efd1216391cfba53f3d4ee94f38870af7392f5f7a0ee39c1ee661700ecc9f5ec7e5c3513f605e8044aee434babacd837be6a408354ed7699cae3bdb754d55326aec1b95591bc10eb287609698035113856c2612351a14c533e20671631575cdc6eb470245fe55486192ed385d1fe8e335ba02491e762d4b8abc5eafd7e98a3a0402fe9853df6b7495c4f52c1eeb1edd9344212fdbe3eecb59932c395c3a11dcd7eef20231f69acf965b760c74989419e41922c084dcb26f047a64d02b97ee48e5025da09e85525d0565752cd1ec2dbcd2385d374f111df98cb63c8ae746cc669d452954ee1c363d4a53473f8e9a93e798f7f29d4013e622d3278d3478b9c38e45a6ef56f05cae0a294ef274d59cc425c12d3b883a1044b81093153e7de2b1bee374d9dc8dddd819f4be8740bb8cc902bb078e3ee5b2836c441e02e9a0069a2bdab10ef21ae887d92a3ded12f61f3c4acd8dc0ae44a635a7c5668db62e5df5ec49c90023e8e2e41c8536d3e7aa2002c9eeb19a3afa398ac3338d6f2099efda5cd12972d9b55607cd2d32ab6379ce51c7b775841ee731a7c5bc5048549f7b6eeaf8db5f9a72bbe66c2920bb50594d465b054ca722bbd0aece9953d0a005b1d08a2e60ae8aa9b4c726d9640491e97fe0568e0bb5170030bc578dc74192f3c6cba42532fd4e0599969d95c982dc47f4109976400ca1ab1d521c681e56066d6b90433fb4355da9a01b036cc514cda0ae6d4352b76ddece8569e9625d6e59816eceea2ae721af6d966c6d1365c10d4091e95fb12206b6dcd1288df65420baea1b10bd01d19b67fbf5e5c45b27582e78c298b5a030ac966c6f99764c4afb93ed1899be6d0adad0488347c3a521b564b644d6ae15c88f1ca70bc5812fd86b274480832395fe0fd55f83a8f6b1cb1efe989e691373454bda03eb81d11e6ff41c1a57f83cb0862f50ffea9eedbcce8e28300b8cda1064fa615baf86cc9fd3ef91062f876f471a6e0edf1b6948e5f03f52069038491ff54ae81220682e5406b2d8dc0399bebda25b36c581db6960087da3ab1e783268e120d3ff88e0302fe64d93e47fea5a197dc1603b3bfd0a2aad8d96dd8c078d565adb929f5c73696dce9a579668b13f764ba654c26f9b5b2c9adcf04b87c15c939eb2956c47efec10eb4d2da170f4fc51b01b67ad0c1864bb420e479a3dfc4163b1586be9c12dfb96c4bc1959264830eb1eb6c71e316f6e694790e95b22acacb44364fa568879638232caa5858db28d750f5b0b62de9c2c1099befdc013ebc3bc7979bb83e561de709447087b18b4d65adb873b5cf327bb87dbceda19c25ec836836132588545dac3bd9c4ca54b1a819f28e475f6168e347c81e61edab2a9d4bd3e923307b9e3daf0c9ce0de592cc3b6e3f29fc619f14fee8279d65c4ff88978d1cb9b98a3173e0f0561dc357f471052aad6d8bfd0163debc00d116ea0b1acc9b989e1b640b032eba87a56d316f524fdf6ad162decca0d13d2c6d0699fac840ca759f4cdf6936669f3809bbf5ed73e296d6c683aee87b9e8d47a616067b427b3e20dcd2da688fcd66b3715b803b97cb2509eedc2e9724b8736d2e4970e7d65c81e68db562e60863b6ec151d06500d846065c00320fd05dd92f6d01eda722ebea2ef5d684c32c512da6e3480acadc76b635c0bf33c18acd4a556c6964c6d4c64f79843587202c979e3d65a9bbd82c762e136cbbc79791e267aaa7ce0a4f9d46c365b69e8e127c62d796061b5d8646077306fc4a7cdd33ac8f45b8c66a271d05bfa06997e7f316f669e56a1df34682eba47d3bcf6d962defccb20d36f1874ad75d0f16963b902f7d750446f69f44b6f7deedb1ae92d16fad6465796c732617b6c1570045c3abd814bcf36b0a5591f5bb358fa844b37d111ee9b8539ac75d00a4447f850951befd16c7ce75353ab6179ba87fd9eeee155e91e36da42fd484748870d2d0fc8c4d763ab64fa96666b16cbe82dcd077c12b635c7924d370b8355a0d38fd0b7fb376ce09a0a74fa1a148f4f3323a31269cc48e180195f502753e9924621f889425e6791d01945eeafc2bbe2d21f425b2bcf042d01e0c1a37aaf9392d629d5214ebe59538ac4d49c3f533c888511a32beafd11347abce69dfc9963ce199eabe1362ec1f751d4a22e75b24592fbbdebaeeb4e24fa19769da8bb1689fa45dded75777befc3adb55ee80347a49d8675acc441e1622622a8979814b782c983968508847e0ce624ddc974a44c9ca4ad6fecf9a4ed52a9ffe99a1c76b7e14618daf5bd0d6d7dd823e74d69de10c1dbc0a41da03d90fd844d49a33c11fa21875eee05798b367069eb3d5c7ab8bc9fea1b972ff31c2ec9992f6dbee4914bef314d8ac7ccb591c193ae4815e662e2cb03772eee9a78926b76a2092799be77a14eb82e6e09e6af875bca654713f930e133654493d162a6288a88020acc13b1276034a09041119b7122e6040c5be9b15244951a961142a150a827c444a61fe26962aee87f3ddc512effebe1de5cfeea23815d1736ff194da418228a4ccb104d5c341ca11328c6a486fc95401bd7ac65ffe64ba53e394ecc1f37ceaf3d271e13ef95e977c9f4bb202781b8a577b40e48155ba8d9b10a6e596d1dc77d465cc75dcfcc4183ececd2d6f71fe672dad5d1e86aec4ca30b010d711b9736488888f3e5f814d7f73a2ef0672804c416cbfdb0bdd1dcf5cc1bff92eba1ef2f52a0b3e3ce5ee6c6ce2291e8a9e8452f0ab9d84f163d17e362b198c8e601444c68247a46cae5fc712afa9f1e778e73217890dbd8884cf02e1e14346f9c6baebd7bd994bea3db83a4dcfe5195d6419f7473ab4feba0cfb920976a2153c5d23ae81439d53ab828327dce09fa5c15ee897983e252a0827953a5d23c4c0b7dba874dc592ea1e1dcd9b85666011b9482412898870ddd3d07723c7d978a1f069ccc0291c03f3823a994a97341285a1ead98e3bc13b1f5fd12f6b3a5acd526d415d9ca41d6de648e5b2a3d1e68d57caf4b92af3a633b782d9f2202ac54e0b721527bb477c4134677ea1b3088b17d598a3f5383982eb89445e57ab0dfda85285f3b0f06ab822dc340d5c27c3cb9837a725f3c64471a01ea03c501fe64d489dd00fd01d32cd21d3f722f8102893a69403d406aa811e20d40bea683133c04f04b7e47ae64de7567b50647a65f67c45dcd72db91edaf2a0a0ae7316e879900266e4c61f11b76cdbb5af2e5c10979b937636c42dbbe7ebe17a0aec68445e36defcb1f166e48f821ce8a3297fb6eb46a5121a5c153c61850a16bc208b1658d81a4bf72002832bcaee81c9ed440a6a3eddc3c6eba9628a287a4664d6bd6c3ccf83400f75290d199a2856b858196366ac21ebd7ebf544109ec0e2b958d3102dbdb08d1142000510143f37562580c0092748b0c91102f13217e374805c6cde38f7e262506ee941b42d363d342e7aa75f363b5a3d064000202f2860e6020bac137ca06033a358e1a667ddc3fbf501c0841d41d0e3cc3530fd19432bb8187b6dc44eeb54a3e86f931a7d88734678f4a31977c693bebc76c6e85f7e8473c4999f2ef1ab0822968fd0d2bf184965d3878f121f8b308cfef442c247fde84f2e033333fa7081fed01b6db96dae286dd15aedc76d343ea03bfaf0c59738f345c4519cc14670c48f21878888c572de44bca4cb7031b181872b7cf12788a825fc72da4a588a88773c1728c454012c95f06be6bbf4e27dd38bf75dbcfd34efd156ccd360f1be91dbe38ec58b5be8195f1aa5ccf819f1a588525434588c466fffcb2833c260997f797fc98cfea22d91b6663c7de7a1ad540c6da9b0cbc4b17fe88a069ee137baf29e98b18364f3a673387a4a7a9a99a3862846784adc9eee616463384ed209c3e80f0f7810c6f462b6a8177345dfbf8707cfac7c1e25fad33f997e93c271bab6fccc9b1974a30dd4c3e3a23f33077d11ee9d17fda92005886419ea4fa65f478a670d1d9392d60929f974a8124ec7eb1e083e380fe5a47ffd10aeb5d67a6b9d5e7623603ec2e5ca833bd2af1d68e2e3010882e037f8913658b09423d8c8a558c6bcc8a852a88f89e8fd54ca4ecab9f1f24e10044c051c60de340f0d6b1d13cbc4927718916e09067379c1287cc2b476718dd4ec8d44f636a285000197208efc90bda33414fff640e3d01d68274d76e68dd73e340fdd433ff19ead2e4d9fee3f4bd9bba7d36f668f66e261f650f642a1502814c2616c27bef29fa148fb23f1cff1ef977f337167c285c2b254bed8c8fdbdf3e171d69983f6a5241174e135e554c1714c1fcf57fe654df5ac0a1b39724b6ac34385f26af51b1a6e68f6684c839743efef81d6bd26bbfd19280abef2efbda78efe4f34b2e0d9ca1df1cd0fcd106681056785dec3e182affaf1570f50c4c97ecba152aaf9252acf9a6802c9306f6888c0ec31310d5e0cf3c6fbfe19b8e4f67e31e1660ce30cbeea19434f1df34563686461ec28378ed4ed0f466ad5e2961dfbfe0e62de7433477f7fff94fe8e34ae3ecbb82ee30955811d7931d9797563dcb25f3baf22dd0dee6c5c84cd0776114e521bfac4494a63a219dcd265dfcdd1ebb89c847172dc9b443ae19c1c1dafd5a7006ef8feede38fe699399a7628c28042951e757a79ee741a61c738a87fc139286cbab4d4a71fbd639cd29b700eea4bdf38a61f9948d39770cee89ec6d28f1ea7f423d497f0e84f38a7d461e89fb64ccfe18c9e44fa1126473e503c6c26cde6493ffaf27de6a81e5dd5277d5d0507ada647c593297559f8fda50d13e11ba9a10fdf8bf0f74955299d894cb383eea3699cb4499fa436a9105212136e1276352e8fd4fca39f0b85b00803c98493981ef5233ce90af549265d9564e670e97dde58ba25d0c3d1e8fee893bcdc1fe14b57dce9347ad32729c1e024a337a19efbd14824888d443295503889e9ef7b28c280fad10b41fde8f449467ffa7b9ab61fd1974651f84384e1f4a417727a124e420587f4a64f32fa139e74056221a6473d5d713f736914fd1b7647d1b1111cd39f7e01d3d53b39fdd27181595c17e99774aece45a50235bc64af578c034c5cd335fa2274455fe41a3d09679148e46393a208238b461a1dba0ca11770e94f43e7d0832f0a3f3486efb699f052fec679c54a2d8bc6530e8d33b947ba836ca4338f3f13ce32c00e97e69937f306f4a325d31a76d9cc417f05d7c33dfbc0e06a6848e7f39822ae97ba9f223f4f1ed3070bafd67e4307467703cb79a1ee3d912814128942a15048341ee1423f42de388da0b21d67bd29eb637dac95ce2bede3eb938471f99ee75d273da7e6a352473ca7daf3ba71a2f211cf6de58e4da9133fb4891b04c7dab76f3f88938eddaddb940d572ba5edb55cde76295eaf31aabcc6b05ad82e4d3a51d20a638c41cba8f21ac3be6c2745274527c50a4d96586289259658628925c025c025c012340f9b25777e6933692fb8f33929f7c327fdecb9e0925b368d7b1f4e724f31921cdcb2693fba23a956ff6b2096ce24398ee3683a93d554cca6828621e282d015e7025d71cf715c17331c9b4657dc7733b8f52b8dfb96e29b366fbacc7dfbcc9b894bafec1664ee7616994b751737af721bf8664d5969b9a24422b8e5e7daa5491e22238c13684b0fe564ed9ea7a190d51ba999891716f495c4ad3d4ed6775c79e8abbee06f3188af93f5d6254db33d175c72bb07374f0eae479bcbfd75ded030f74b6e9907527f8ea39744e83be939e973c624e29b73e2f7dc7ffe74ec2109f15c0f5cd2dde31564de74f305b9ecb2facb49f7e128847c2ee69ae37af2702273e53c6c4614a60d0a3c7cced9b8779c743761f13cef760d445e5c267e9cdce26403fd38d99c062e8f935e723cd95f3d9e772fd73dcdd33c4c38abc777faa7694d6b9e0cab4dbc77f77ceeeb971cc7d53188776de6aa692592e7fb704a6770cbcbc506b9bc36b4535cd32bdfa42dc9f369a83e0c3ace2b6474e972170fd84cc73a7252b28fa6da44f6319c22fb28ca5fe7813e86f237bd2e34453e96b20e6dd073160882a3374e2c15ecbaaefb485fe87db8a88730d4d90f75a3d882e843d65a9b00ebd9516cc1df7bef67eec2fa98fb2f1c535c58eb87efc39f8447b8bca93cc3ce82dcfbe82f1acbf9a1517cf1c5fe29d247796bba6afdea93067607a582cf4d2b824bdfbf24b3e5262e79e42afade875370f4df8efb79744299de878768f7fe85e1e12c98afaf82b34c5fdf070bce3a7d7d179c85fafa0770d64bbfec7f2fa305b82cc3e9637e8e16e0f2cce9698ca7930f8f194f3f33ca00f3319f7a1affc58ce5cb7ce9a9bebce297a91c13f3c228c3c462f7f3cbce1d766166fbb89c4f9af13dcef83983060d1a2a1a6f7f4e0bf334469827cd186f391fe6bf0663e68481c13c9cac7f0027eba346179cac7f1a59308d2a3849d255fd1afa10cfbd5fc2459cac2a245c73dfdf3fdf8793c6949395f4959c2bd288a4feac95fb996b91af8f64e277b23ead61bf42a3d128fa902ce78bbe66e2e27c03ec8c81fbd5e496e4ab5f64b5b8a672edfea6525c4703e775b313bbae3e8e2eb9fe9007786bfac08642fd59ab0d191ea8938b8e7b39ab9cb7de71d61656cdf58bd48ede137c4e4e77a7d4b10cad43db01dc2dfb74516fde78a4d0cfafc16165921e8a3c27ad4cd637497f0f455dd7c59d32d222281133c710348abf27cb11dd5102cd933b2cc364cde9f48749faf855cfebeec7291712a9237df7ba99f45e47b938c9d331d9b320f7e008e66f9c5074014486e3747d33ecba199ac70bd12eadfa38eb358a38a22f1c5da430baf20fb1df764436dc9206f96dda14075d35f4fe1b8d7c2151978d67681efa4066ee0ac5cc41eb3826b36b715969f4e61e17ea60d2daef2419483a041202b9fe1afc6e80e402d37e0d9936c9548799fd25b668810f44b4a00a20bce5c07fdacaf115fd66f2d9e0762e3f9b60b3e59633480b926f291d0adeaab8c32a20f9e2562afaf671d604c8ec7d9e97ad67736c424fdc7ef504e5d0f70fa1ad16c0eea639f9dd51d3ba43a1502844025de54143eed3cfc005283832e12b6d4a1b1bcff3de0b8542a1d010da0a611656530709aa50c2179254d3150a8178b96935b8ed24672007c9bc09754fdfc64724121685be69214f34ff1b59a14d3004d2b2a19f011d24189837a2a76f431dabe8d43283c2f047e8c31088d30e51ea0d516951d5ae5fd6505f4d2f6e398390d056f7b376d884b9a2af458b4d4849d5693ac306dfac29a9c9c8112fffe18fc61f6a04775cd48f63f8c334c320e2fb70d70b8b0d682e991fa59ab84a1861a32bda44871f6668b4d89f1fa038cb44637445276d8d4a3f49b132ae066e48e3536f9f901e6462cbaa479d3e46f45f5adb0c7e1971b35a475fc2a59d917294f41639dc5c54401e6e122a38312ffa24aa87f924312f7ad5c77c122a38df873e09f8dd27f93ef4e07f5fdad7690ea1072068ae19b6e0c36fb7d4ede6c5b89977676fa21628d3977d2c0513c92999fe8887899fd1d2be7e569b8d610b311a37ae879b794f5f72e930d5f7a8b1c26a0c8a93ae3a8ab0583f86cea828874a8c8ecb449bcd6ad417bd71e1247d1a63add1f00ab5519bcd69731d6489d7e0027d78ee456bc186c31af57ad946efe0d10d274f987ce0964ea36400f13c7db8106ee9b40ec7be15a1e0ba47a335c85bcc16cd3259f5599cffd8be90c9b0bbcc7f6432fff16a80286c8941162d2e251d450a6c2e2a28ee744d611d8d6a183e0af5de4f14166180790f27a192c47b981722fa988fc149ec8b7e8a44a76b0a6b6ca46e90ab550da302853ddc39b33031c87409e99224b134fc21c4fb0e0bb11f4a81eaa0c91040ae1c25d30b2c311795fa4ada055c785c5446d5f47386a4e7be1ffc784cd8f4a311e4e17eef6171f4deebb892806fb138c2220c30ef3d0ecc7b3887cae873bc87f911c68979f0633e49f7309f24f431df7de8d62374e48904e772adda766a65e2bd1522c258acffbd8e4b880b7445ebf7385dfd1cefbbaf1827643ff43a2e8b4328a68369c1f6b59ec2250813ef76bbdde84dc176a10fd750376b391152b0d05c4aba0822c45c545e48a511ca7bdb511be5b1b3fe9711e4e182ff813809151ccffbae69a317aa7f68b579f7debcce5afa4ad1aeede199d166341a8d0412c21fdc93d024dc4a0073e9301c1f007a74d31ae624b5a94ff2ad69175d72d0e279af24f4810a2097f7ed35f13c85db0b56962b14272b8783eb1c5e3727c7538217cd9503fe3785963b6f75fdc62285e5fa645ac51691e96b846d8e9246a28999cbc7372aa1435811e46261d29a4657f464a3d0196bb6e3521d3aa6ccb81a37e3784ee06aa3488a2e6cae6f9c2e1aa2300cedb22fd89d71a358807eae5f2737cd849dd2594fb1b3d0685fa385d115b55860b1557866f54ab58216039a1721db7524596bb3396ffc866b6e96539fd4a00a994b490b9105cd4525fcc6e0135bc36cf58d96b6c90f338b820b3269d984d952b55bfd70047998ae8a5f2d10f70d7bb44ba64c7275e221edc01caecd65050273b834b77d02e6702b98c315652f2b1038ddeeb02c1327b9d70e77da2ffb162a4094fbb92cb7311938f66d70b03021502e56e66411539ca4414ede9c2cfbd637fab5c9ce6bc7e54c30618a09aec36cd91ae68afec74e30e5d26129780a20ed9c1a0430aaa0b972944c1a24c144494ee895843a5cf17275af83fdc14679d1d9ebd583c353a01f1a95741078765ca4a7401fd4e146e1661fb62fba0261b7ac35ce3ef5be466715e806e4e5819b391e6ef6a2c1cd5e1c975bd2d9114bcc96dfe88a223159494c96a97b501b9d511534ee5b7f29803beefd14c21fa64f210412e43be1e9466db3678ed074fd76a357a440a356da9dd8f5c420decf8ca3c3812f6a3fb517c85e2f97b597fa80de5a21102f73b39963c6cd50d68985d9989565fadd586d20b0b8d6e88af62d6bcda7b83c4f05f07b8f06d1d687391ebaa21f22c9eedfa6f08cc68c1e608fa357214440a993fd391ea7ad00fae8b9d10e20fc51c2323816fd62d1f10b96897dfd704370c36f9bc3a54fc317260b72183a4767ce0a71fd0420801088976b2d872be6b2ae00d69a3522f4d47bfa36465bdd733fedeb55da1d0edb98e3d2caeccc5eeffbd203bfb42fbb435b201617305d29fadff8b2d325f2be4cd5d0e87d2bf48dde7c20916793a45f6b2ffba2ad5aabdecdb5c671df1c753c9e4e4849a743395f12050e1f433e5a2d35503087ec634cfe2a37821ce8f6c1828fffff2ceecff73c1b9469936de64d7b32b0b9a96be5f687c019343c2605e618e419a3297f0e3aed699ee671d9bcf9c01e2cb40efabf7383607c4aa6a992cbbce65a4aff194b9dfc32838dccbfbc4f7169ccdf484f14ccf6ae9f04f534a7af783a2e45ffcfaaaf2a2cc240f3f585d07cad9fc4f43458487d9aa7c1494a5f3dd5e5197e38b8a5cb6a32daf2a8cb3c35ce641768abfe1d4521f57ef81f3e89e6492fe43f7c9a273d0de7ccc17d870ca838a74281f95b2c3766a4f9479a1680ccfca3678ed2f3660ec70f5280e69891661919999957cdc8c83cf8aa9797195f54e258deec5ea631ce2b566c90678ca59c1a67724cf8fd68fcf13d387a115348e39b6429daf2285307fd9da7af54d02562e6a0efeafc5d2f47cf1c458e28b1a1139f7de2a433f11d7fd5a7b0cf9dd8f873f0a7bc1d431191e3388e0a877182e4d6e9c9fd8d3ef25872df756fed8b5e348aa14824fa1ec439ff39a24b57fda2b1b4c93f019bece13248e66a6c70f8c7714274e4a9452e1fe62f580b9dfbfb6be6cc3f5a6c351ed96115a7f075d2c1a85cc8069e32fa15e4f118a0030a038805faf469536a237dd50bd99148d43c341769f4d91ae242dd0d79f53be47533798ac6903796f2377b7a9199833e388671870471722ce5d0281a439fa5599443e3bce29344f6c62fe338f551f6b2fda172927ee7214152456e79de4ccf4999eb84a8d7022d550b7f23b359060ba0c8de4d2891645ee97ece19ad0e5b2fc4618a1b307370798893eeb97b19df6c5160aea84f0a4ab4c8bce194a094da90c4d1c01a6e396fd3363b96e78aea90e9536016e1ca9635b941ecdb58282714de9c2bfa5e9eb70e1709e1cb1de9901401bae5d7508e5a127cb3865616a4749e2da2e272524a7f44087652bc9fa1c829cc49ff19dcc6b6d642fa9e2074e5df93e2a19dcf6c64d94b8fbdc3c8ee49dfe11c11f5d3656df908cd14e872055eec8fc13c62befbd1c3c4743f7aef43d197d3761f06068bfd2f38f462bf91dbf8515e0bae8db628cf5cb95f9e0fe87adfbdfdd36914c1b7a12bc74670ec9f72deed4f57e7f6f3debaf71d96c2c4061eaeee773c974d62de386de680d1967b313d8cb97258f69f320f9a527e5e52ae14d2bb16b7d568ab235ddcfe03445ba5f7fba4f727124391195df1d01569f49f79b3c559fd23116f0c8d1d84b646d83fc493ae88d894f0c28819831c65b6da8ab9f2ef9ff190d9c448779bcde6f2a6ab8b70566303ec709111e9f1ef996ddbcce11c76013bee2a37bae29b359532d9716d426b4533b8212c65445b23da0a5f84d1dbd8403c7a6c7848998c07d9326ec71d6dd8ccb0c633d979e11f29feb1468da74fbfd842bd983d7c8cd641ffd6b277e34b3ac608ef36ba2a69505977ca1a43cdcaca8342a168d0f89cd4a35e4766141d8b30c8fce87164becf99f1323b54ef9d141aefdf0d341e592ebd3c4befc36ffc67bf1bed7f3bae898b93b6fa6ffa6e8caaa5dafe4ddffd4ff834ade791c2b3763c0a26fc093adee62705c0ea49c0f172da138e22f9e2ebb846a348864f9218277c11e7903efc9c190fbe8e8b0c001661101f7c1cf1419c4325009f93c201c038a2ea453ce98a7c1d1789450a7426bfa4b38ee6e98bce28ad511eb885cb67e11470994201ef38019bf0b2b9af638673e0890397a4dc5f022e4924e015eec0b88f3dc884fdd6dde09236b9b3f134635965467a2c53635977666ebc8d9fe18f1befc35f4ea7d3cb873847f52f9f938219c5eec3d771c58c62874738874a8771603ec439a487f99c191ff33aaeafc6db186f8c6364fa35e34f95c58cb631ba07f562eaa0efb62f7c8c8c1a01e686cb464dcdd938db1038c8257c2d810812e41248b984126addd91962c91053e411527984116e50140d64f22b19c52793266492f4ac5251a029840df2ccd719d908f28c0a794656833cf328679d52b4c98f162d43c8e357670d40882662f2f87dab165aab5d09011319070e1cf884eba97c8ae5c9dd435b36a86f50a9542a99124eaa2a59e5a93cd577105f401981080acf952b508410ce104551146f103c3ba60b7060821d7010b362054570126a4b9b9192450e8b5bd6586c567b42702dcdd66666807842a502c28baca222ab829865959755aaee35c383831449f8f073c5113890441e2eb2a852a954e20c86a2c2a2ea4528a24af53358a552891e1023988165042f602204305240040d702054a9545386c8aa21663e504516c5e9039329b2e843155914ff633864f16bc858962c3e0ef16d50e0e143165f05f17dfcc045169f052084c8e21fc059ddb44d2db0f8028a17151c70e9a289890a8f4a460697aa9789a954aafbe40502e8c1491651c8a2285ee98196c55a16af7c60278b5190232572a8579e18e1f504393141135194d822899df0071bc06245041c3a546e8015c105305041183ab86106a1bb79a8e1aff0106547567dbfe60e62b0c5091b605023a308b761c4e595c54a696874c09255aa1d3c9055aabfa8141059f52ad5ff0e5b64d5d738eb062900239ad022cb0f8ae8000f1be044516c228b2897d7cdaac30e37e2278aa23825892cd6dc2fc26c59f572964a95c4961e1a0f5c8aa8a262a25289af52a9542a1bd4bd82bab4ca03421069b238afc0a6d464f1db06d92eab12f22ae889bcba79b57a72255bad7e9260c795207811802b4140d8c862873f56321916b08750860e16d85985a66f906564bebf084714f1032e5c3690a5084bb2cd250a398917502df24c5f01020db22aabbebd99f16ffc901b46502003206ce9410f40f081ebc6c7e02cd740be710507af7ce386f8376edcb831c2dfb8f136b4058120d06460f382073164e0baf13c7c8820df48e51b376edcb8f13704f9c68d47e2376efc5c4116c56f233f664865127e25e2ff2a7b95cc4bdfc800a959f5345faa7ea6c6a0a85434e37452a5ea9e7b1a5caa7e06d7986aac321995ea65b00f2a8e25bc6afcb19c2195c91f24f92a996a8aa94cfeb7e31680cbaa917bcde05227cfbc38ca8c650c5946f5d359345fdeac52a97efe97a8ac12bf7cc9aaff11357388e2d38cd74931fc21333392f0aab1849fe10a7bf8a3047cc295f13209e3045259e657630152322f33c97e122447950a732f27bbc6aed480278fe37b36e4318f7f51a92f74c8e3abae7cb1258f5fe32c01e4f1c92879cc92c72d5cf2f8288ccf43051f3e797c169c45cae3bb90258f7f0067dd3c5eb1c117797c1c67d5c8e30f6900111bf2f80f70d64b1e3f8620f2f833386bfae4f1ca0d6890c73fe22c13f2f8486079fc1c67d53c7ebf9c35ee3cc9231679bc0206501ebf9f8cdf404fe4f11bca78250c1ff238ca233ee1f62c73edc51679841146a05c88f1e446efcc2e9ad8200c2da490229684d730a2919151c9d0c30224b0d8810bb218e12a3d7fe5f296689278e12e86c5b7f1436c3c91188a74916dfc9166e22c99b7f1bd63e35db0a17a1b36de86b66c3c0f677dd9c6fbd821db78169ce5651b341b341b36feee906d3cca59a63c836d3c121b38009165acc8c8c874305816590482412bb34ec8a2a571409655296495ca063ee1362c17a12d4be3415bdccf7c3969dc38334e2e9ad80007207e8081962cc432c42358303323f6952b9aa0694236029608020db4e4a08c2c40b8caef22e492f4646690455bb3349a262f58a968f8010f486c514514578c2002d71d8cc607646471065b9a93bde5561a9a1d2d0080a2890d576e99cae28c41d7ff57bcf0218b3ffe27338e325f5a9a8f28dab081cb9917ff9b19c71a8332f3334f83677079f3ccf74f1a5cce88f7ff861c64954aa582626727ab6cb6e62c9915422a628cd8d2e60d54dcb034eb53b342aeb9a28158aee9724dcd93353535bf832c7a0e13df9bad796b86cc6829bd9bbae2040e40f80007602004095ce577975c92defc1a10a0cccc1bef15b400cf1aef39ab845ce36f0d728d1a5fe32cf16b3c59a3c6a7bcc63791c52c4eb480828a2fb480a29602f233006ee18f1a2a2c21199e1564119733ccfca71a47556728a67092a38b394b85fb27fde966f084420aa01aef4951142717e24854bd283e0fdaaa31512401962ccae0eaea9aa7076a59f5d59365950a1694558f725629953b98b33036c00e97ee893f7196d8c1c607ea2b9e10591a4d0f145c8e0063044b18f185152efa64d8b464dad9a066b29385cdc90d36d0822c645d9cd5434822d3ef2290f4e30c21423f06679590e917a141a67fc459a34c7bba1eba6a200b4457a40d6dad9650c1832859f8688007ae1642a6efa38c4c9f05292470a28231b8d861cb0d5cf43d67dd2b19ccf43b184c0c1a645114c5bf4db2f828710c2db288258b3920228b5fe32c15397bdcc89e2dcdd2c44041fe31ff7b555c18824657938ab699169e9f1e20da10417435b30da22d1107e520d3449169684af16968c64ae3f1581e1c7020cf649167662a94fe7189620f6dd5588d753d59641912b28c4c9539cb692ff39f388eb5d618ad50aaac66f1fbf67ae552c4551673b26bacca3a185df5f74f1850ee5a183d64d55767a19055f884ebe5cad9ce0b893e301c916ec97442bd7ce96511a65b6c20e2abde87c7a8c62e558adfc1c451ecb20ce2774f9c8c394bc434be1471178339d91d2cf777b02ee6ac19a3abfe196395d1d58cae9aa7ff65ec478dfd279396dc5f021a85afdc0feee48ee596713c745563b95d964530b82fafecc37d7877cbb386ce4a498c0ea5d40636886ee8baadfd1c259c4f0d2f97c5544aef9dec0a9c55f6cd89b3ca5acb41dfe78dbe49fffd20d91dbaa2309912ee350b724d4fa1b4b34cbf7b72cb5abbd91defed779fba398b8be9291367f9a3ae4d6834d1cc851e3617d43d715ea843dcf5cbbe795ead56deaf800e2e47dc146e56b1d45a77e7ec9e3354bf0eba35edd6b490f4954ca1cd0bcccf962936112d9b424cf1039a4b493731821fd71252194d041199becbdc678686ce894d21670ab91a1cb780e9f2bcf1fb9af674dff0bc1bce032b906906879b4b963bf34c3652c3af5f077a76c924e9145de8e0e652a2fa81c745c5f4e5cd4b9ccb72294f056fb8253713bd1b2dcea1e21fce01bfae1da1b9bfd69a4682db0fa46a4909f1de622982d86fed27e9de7b2136f4f6a7ab7bef8774efe121a1b762a4008a0e6ef03c5a2bae355b106ec9cd2a92ae8c3be9aa7d3c42db078b0b43bb6aad2e71a7cbed91ce3fb8fb1e5a264ed297dd91e2967456b18f877e9830e5e166de68b15cee8825668bde9098ac3089c9aab3ee416d3d53010e6b0d29a52291281413791f188eae096582a01cbc5ce035859cb792b6b2f373e2bc75a00322cc5cf68be272260fbb76a11884cea81864a76130b8abc3bd33c5ccbdd0431f9148a46f0423950ebb2893a360a8f070c5cb95a3a441f0c5f751dbed76bb599bfdb1cd2a370399dcbe31c70441de2781790b833f9c840a8e08fc0a650a6127089b2bfccfcaf55edeb5d0748584ae7e482952c3e2369bcd66d4d68396d37c10845bf770d96d098de6dc89529bcd692ea3d15c666a7fa150e18fae7ea3b3534579ee336fa4985ef10ccce1c6e4d98ddeeccbf3dc3d6fd21511baa23b4e0ef1b965d33a4c672c30799d25b34256a551d810e63a256c13a8d9cbfa98e89c3229efe5e525ece73aac75e6e80f41169cf49814984a853f426ac45cd1e7398186a0889acca5a49bb881e6a2626a1dfa8728b9890d68c30d7b744c6740b4e74d9ae7dd7b9f1b67b081d1550d4d4451a401d2a08152a9c21f5c586b489392394d2693955eaaff904edc0825935d90c935bd9448278e1ba152a6f7e1299b8cc6fca7863416bbdcc92492c964325a61deeb3d9938ae851a39fc6f04c794ac921490a2869cd3c49750106dd917bd1c0eb7b42f120d289b4e3a165df4d0e3741fc2e972ec7798da3c992c65bbd746b9598fcca3708205d3a9982cee6957a179966e19994c26ebeeaef2ff63dfe80a16a732a8540d3586450d19a21111000000001314002028100a8684e2118948a027c2a80f14800d7ea8487a601ee86192a310528618430c000010000001189919340090300570391462b1a5bc8863eb002f5c1a42c6019beb5e7efb40965f3579696971df90a0618c83a6caf1d7fdaf1651faad08c96d27cc92989d46f7b40589c593893450b3ca753bac5702cfae133031ae389ecf7c91fc5ddeecf881f68c26d3c5cabd2eff03f0b481109330d39b03238d8f7d6f0576660b4597a00f3a1b7916713d1dd43903964b02b41f4171f99e15a5f2fc4dfdda79dc575bafc00eefb3486fb40e58ee1f511b8dca788aaa6791acaf3c31d076bc12b4352d30a44d32ea409b8426b14d3c5fc34ad00dbb1209030317f0824ac95e99ac65181bc4a705a801164c64f80ad7ec3b7870f6e53407029fa662a31700e2f828878c220839ec4c77486d8bfa052f1ba42b90b8dbb48fd2aeeb8831b400d75207afc7393b12788b68843b7b66adaee8134dc52dfc7bd0df7c0f6550014712b76795b0ce572807b5d1c72245051dea98775bd50b191d41321c9c72849dc66fe2d00d3469f82b030e4e5092d86b4e8deb1373d8ad6c5964d81d5877d8cb5af68944ab342e4ed87e4c323590d9e42100cbdcf78145b7bfcc28507c3ad957274f336c5694218421d64691b3e69b89c26088c6cad4b0fca8bac86bbc181fcbcef8637f60d1807954a0e3f12afe3cf315af8898237d919632b833bf23075605c062a33be4b67521157d88ac5f371ac57445734f6ea466e941d31b77d8c13a08689e606ee86603bba60a85c52cc03b0ab9abc8e2400914f649761a6553b1a737f521d218aa37cbb549feef383496183b6202284ecd41500aa13162f6ff17e307a47c025c2849ba5f6880974bddd5234a090b73c7dc60f67dc49294544a22c143672945bfa8ca06958bfd4f0195af2cb4fc4d9acdd09fb2ae51ef2c8d380622684c3154da0809b304b36506ac6c7c45dce7a5216935abe217979468572f520f14c532c0080db8981bd83489c0bae1f3a5d0d5ea300dcbc66e6c7fde80d2ab5d9990ce9fef7a7518aae1f7e8670b1346e9d7e4a9205f2724806be4bd162177f09ef4be4a3e1f3ad032c6c796806a727ffe3dddc299bc09d89a12d41aa5e5f0ddcd7c28122315218f8f6f9479ad332ad16037934a7b8ad974eee53c66d5d9e85f3c78d8f1a879b071e9d0951ae0cefb7781b6fe2219955981af11c98c55142fabff5d32777fdeaa57e975670f4689c4b1d42db6020ed0f3a3df24fe8b066240e1ce41ae8cd2905d48d66e5199f9d7f9c909c18706ecf4762006683f312be34beedd00d78a222805d06063dc49801bae33d0f0cc6ba790f0d27536a7bee9d088cbe478539cab97ec12a1fab772ce9e659a34b0ea0c46ee23c8c4669c40ccc08e1c6a1a67a473bfc7ce915359cffffef006c53bc85d0838768dc117f925f31bbe8dfcbb7430030d5be93863682e980876d0736297bd03458159524e32b8902524ea01739a39dfc51819f90310a64f1b5d08b3c7bf7d8d3b7dd0ce62276a6894a57d650d6b5e19ad05682d94cf5661880574259170497d32fb7b3d8949f89f91d37d27752e6f732706d2fa4204b205720ce76d7de218a77cc1c0f35f0d35f5b1fdc3730899b3b6c438546f0abe4416b2c7306108fcafe3007a9d19b31bd44e3d11cb5db4951bed2884fa34d1d42b8cc7dca4786a04695edf3b19553b2dafac0ea9b4fc1c4fa2fa2f6a29c5df16a9c62d790c94f61e80254143f467dec4f643b971814ccb533ebdbe3dcfc50622cecc79298bfbdfa2914a19a6ca1f09c5162bd8aec056e6df80093af317a3743368e38be21b5f12e16396daeb112bf6c6042fac7973f38a42067acbbe5153db7f541bd911420cb5a3681d137ea0037a22828766f1e7efca970f07db182f84195ef7681ab37cf4366de700153c28147bd1aaf618a559c2358d6ffa801d5eb0f35c17200cd40e2919eb5947fbf1df83bdf5ef54404958b119b604e3d0d3ce760b577aedafa3c01d315d188905465549fa861ebf35eeb340c51dad8e982065d2434cfbb13697ee53f4a6af51ec65027aaacafd1142de1b2e32615aa604dd88eb66b2f3461df4fc11575705aa99b10db889072b6a9ebbba78332ab09ea7cd32fa548f0aafbc751f697700cb2cc68e1b7d8cf977463cd22806b1903bd3d9b65a6dba1e76bfb07c1fca8e109e565cfa281d5fee3288bb39a89d39f8afe43dd9c0279fccd280d33e86b0e25fe74ceca1c7608ba4758fe812aaddcc94c14176366613141ef9a6430bea76baad8e4d2d1026005411a72f55bfd79695145c365eec8d40132f4f49a2ff09288212b21e4243a11983d876e3f00d62f1a0bdd78518532889bf4a0c2c9105119900c360647cd7686aa2260e2a55454b1507ca9dd84d192eb35bbef451e44c5841ede2406137eb3d18f6be0cf5b00f403ed05cfedce382a4550f1225c2600a491c3cf393030034f0af862711a209bdfb0ff9cc060675d4f70ed58dbcca5a40b1c24fba2ed4e0669a7696cb220888eeef04901fdcd1c322a11efa75ca0ecd3a1b10770ffe462dbd084940fb44e668c5b6cc4abe2d401978c9847a622171349731da60d5126e1c25ba2fe64ea7fd5fb5cc647bec1a60ef3dda426b9332fe04d2f11e2bde210a0370a12f60c61828227a10e0b8086def651db20e2aa0b0be0b593ad3af9f3d87f0a057e775fae21756de6817e2cf894c5ea635c767dee78e751af9fda639e51d3e5dc8e5abcb70b1f1e98da6269a7684a0b20dbf5294e143bc0f73347e55b2462daae1552dc72bfb22350b94c5deb9f7d9486e877a17b3af96d75bac962be1d0d22718fda6181c9acf8dbce0141896848720f9ec192467cb81e3c3d0641272de550a010e74971d0d16d800feba069007dfc589d842d1841f540b2f5629424c8507d785378b9720f3e71239230c3dc6215d258099a0f941613ec56a8b31d17075696105b280a7a0f6515d0710157c4b753d41dcb336aac34e6aaec31da31aeb1a99ef9887a27bd689be45ff659fd7b3ea96383bf8f1887ce487304f78288d06cd48a7106a5fae0f04b38575109f57733ee8404e415a1d860a93c0aa08c62676eed9bfa3ba883d212e9785728093a081d40ccbd05c750fb6b4a4c7947a45010edc6752cd59039dba482010f07114f9feca498574e0663c56bafebeaaeb855751d0dbcfcb09e891b2f3f81351011ec54a3c9115f6d52ac753c16c1f8b084504382fbeead019275c7c819e11f693a8f8c7fb93d9d484493fd661774296b815df66a0dd47c209c18303d4d4a4a66dcc699e7694b42fbce69547ed307edaf515b35227c6da701e853e49f415c60fda67fefc4d40f0a5c68ddb7372f08959bf35585bb1cad3f9f5263cfe91a48ccec09f1b72d32b63c6748692770d3d4565751fe1a90f52528dc89609290113162128c209c4b8afc361bb339b042e65208070fcafc00c75df3a6b5937e70a17f8757aa87c4674e4d425a904aced041c834d0b082dc3aba28ed054c48b2801afe027e6b1c24d1adcceae718dc79d4e6322da8dc67849f61a54330bd182801a5eb93f39a4f83b6c93c3bce96517aa223328bda31f845ed00f42af8c7f24257619a0aadbd8c0ac83ee85fa4154d7fce0a40469895b46507aa50f28d521c92115dc46f79354810db773e34fb902f7e636b973c7110df48e1e3ab786acf00ff78a00341a2586d841b0258945dea57e03894ecc3efa55c894dd5a34b71b6aaf4e106d1e7b3ae117389fe6a01666c66a2880766f051cc46d4d6b32704bfdc5ed772f85888356ccd593556d9133d87874902bb5a68f4398193d802296fe87f244cc67a8577a8fce0192b4438043e89783f9e7532704fd139eff45877553c69ca6c5ba672cf705de91a24fe25021394fc831f2b4fc6ea790e8440f02edd66ac8287e2fc5296da9a0bc217013e0c5514bde60cdfd175d2e14997e7b25ab64916eba8508180eb0f15b25a84aca6277a7e6093396bd39bc08152c39d8afb9d5028d6187038083379a6598e44050e8d4b2215fcf83bda8caa1db9cb06af2edaf92985075cdbfa42a0c2afbeb6d2a1bb3a0ad9fa886974d710786cb372df79b1fe3625744529521993a387b79a35896c2b002805bc2a04ea18ebd8d00cea7f9d558c5df4a1d163ede4c87d2d99438c2ca48bfcb0cf300192cdf6eccb7d7e9862de916583695761b0245d8c1777076532ee0d419505944a7272bb3096320effc0431bcb0f7919719ee7df0e054cce0c65724223736ade03643afcf8543af94902f463d725ec3d0017a2a11cf0ef9d67e57c9737fb99a3798739e972ac9a5b7cd59bc19590b6fc0db938e3b0c9d37af8a993608055aa262ec25140be07de63d084c0817a4b06c156426d6143ef1d23ca474e9a02d840192f1c9f734d72fce0d33a7736f107bf3d33c459bbf057e870a4691445a01305e7b7e003cdcef11a19ea9c2c3832cc83df04e97368d45f4c2e8abffa3ec195981965d7296f56e443d1ebb93c43a36cba339a107dbf9529735a0c343bd62e9310dac4d5b9eb08e71aafbc4fe20de35bf530bcd0c11345c29d7b10c51025d12bf3345d43be87d448a2767998fee214e3e790c696cf4019c6218034f971962d9bd3e69f77d9c07e86082359e86ec966c9940773482fb740199e1fbf59c859c0a3c67a1a30e209f84c1ea4fc65244618a21363265503b51edebecfa85a1b2d6938c806c076e2ead825ac4b836c1624828045bac1e3fe224732ec8596f3c4569b8ae4c8b9c153ddbcd9ea07c08103d1d37c7744e0c6ac8fe4d2e4c0085988710bbf951865e0e5203baa5d8f9120703a625c512c40941f11063f67e0351f0610e95d99d69317f961dce5536840e14c3222355f11225695a16912e66a84e497c05c592bf762ac9700e936afac7970a2da0551785311d6f496a26a970a6f6d40e0da85019616c4725348ee663fabaa45af1ad61e1332cf137f1ee411bc5e4ac05b14f4c76ac357e2ed2601f50cea2309ab5e1707bbb0e910ed56c71e8d646e79d340a8dccf97ccbe446362f7539f7f383f9e7145e26eecae522cfe35009d05182d74eaa621892c374f3b5765b2af34aa613771d1ce8615c8990be8faaab32a34e131f66b17b097ebc0e120f2bbddef7b48cb4643f68eb8b840b7ab226f7a6b5eff64e99ef44c550278c9dd9cdeb7fe441afb8245fedb8efd111499d60419a8d571040f4467fcb654b4b8c914b27aa615df1dd48929ff0c73779ced6e14165ec125c76f0bd15e8cee3e325e89231d6e71117a46a995bb185de0b7fb574aa67731ab6ea5e7473fa775e3f835db1a2bfe5a318cc31d88e7acdaa37052d7536e8444bcd24c35b051592d75e8ad33fff187466f62533a01b200671e8719deb608b90fdc03fbe52b48ed20f60695e6d57f27e043eaafba9b0ad0398a41cb8bf826925918e512eddf7b2ce6a81fd530a4d135b87923f02ca8ebea4b98819bc674c14d829d1ebceab2544f1598f3f0b34e4f3a8ba5e7642aaab0530af17e5bac1c9f1179b25ccdc77feceb85ffdaf3c48328edfe21b1a2b18466ee7b73940fa60eba1f2a4a8b51eca3c0e5f696ecdc858f07d9ad5a0073ddf225e05ed739688aab5701792bbfa94619f05c2a160422d3f13c18fc89fd0b9fa1229cefaa95db98fec88e28a43448d1c46c8af046dd60d13485a3ed7b0471bec8c0c7f7b2cbddd988cf0c5103052e4da1f400f2f283ee30da38d3609fa6228ec6bd86869bbc12d2db1bbf1d7a904586c0d66d460753a134442c12ff073a6abed3e9415a02ddfb0041a6f5bbe91798a1da6c9e7c8204a3915e5079d6d78b708a69c3c88b66d0b31d03e949bc06a834b6148c063446597b2ea32f4af56949b2732ca50165a66f9c9e9ec3e7c5630e0f6fc597cdc045679ca1c48e41871e9a91c0e1a2b2fd388e0f492f1ccc25d92bf2784b4fbb4c85963d9b3a4b229ac5aef0ba5763533c3edeb55fdca9585b353bab65654cb1ad6556b3c0a77a8c66f7a584a266ca622dc662ae12de19a9f950e22f7221013863887a0b8aa84c98b5f8b203983460cd6731c83ee978ff5eeb80ab57e70aae6515c9659d8adf623a3ad00f075977ea30b4b70804202e422c6c2fa49db348f891328c7dd4d62741c213c6d02bc19b90a4617dd03fe2004f9b6251565a99b3f911cd4b083ec043c3c9cd1514b8888f279bdf9e25939ca9ac7765995fdc88d80c31afae67a76c326f78a5643fb4c6d17c3ef443f9cc5fe08f8f78cb5782f47854ed5dd8e6a3d1b0edb688036cf069831112527d1846be27ac4996f1a5d551f3da05c73b0089606e37e00f9fa95259125356e0bfa8b9117c91cfafb2c08e8929f650019defaf0b1f11fec12bcccd069c7c76c397bafac9bf492662a697280a0ebf09fe0b026ad97141ee345114f94ef88a14250cff110ce0795c2166e970f8e2cdb3359063b29916a463a3a7c053bb8b3b503fdc6bb5e127ae0f1ea2f0b6a988bb95923770161b8e5797336886869b87540fa09b0b25dff8660d494306025050fc1db86f397285cdd8afa138adfcd6d2558e2cd1425416e84168778b7efa36f5322ec9623c4ea5967c8f97ae292766730e6e6362f5696ea8288f2a1a14f3c457e2a05cc511a49e8ff6c52f7a058a8ed57b523b468f0046b79b55d30d3a9007208118766130c16ff448d1654e9d9628c186a1816fb1d701b42c468de616d2d0028b453d4f9c7463b4d4156fb9e229e7705ef75691740c92ebd3931fa600c8698a31eaa6dcc464eb1e33250afdaa9679c886ca76aacc79278e09e9514960ffcb65e031f1790371441ac4d2bb5439d641afeae46160d7b5651ba0e310a4d7cc98e8d643d55789ea2dc7bd0f8740883ae6ff4f27e1aeee5ed34b840ed54508fb106144bb19dfe36ed3a01bb7ca4d7e6416c86c669e58ba33a807067f2270dc70f4846718f11de03c2be458890e36e63bf091fa601f5c94f621b882db836dab76f204741ebc80b870067167a63c53cb3feca6f1e4df03c5237a7bc7d6c5ffb0872cc119ec19f6baee3d536f4ce2df78c4cdd913e3715079e09be1660722c1ae632a60619821f16e8802284a8cd1802f8089c4008e48e618e246ba00f1f007d430c2296e1903f2043491e4e3770f702a7a8f080af37f30ba4b7a2be8695846bc8e0c078f31c064e74e8510c9e093ce84860a2372935f9511a955ea18bec92dd6985b726731fb1044278dac685a45632189d0d401a8883e9cfdadb30e27d77ae95d6e34179f25622a09fd382e1dee2bd1e36e1f460041f420ee326c9bb16b07cb4ffdfdf3ee43f1eefbe762e2b3fe9f52b2a35612cfe70cae8e2a00ff37faf2b7f5e9f7f2f33c9cb9a80bd927f0e9182ef7aa1e3d8d0197ccc684601d77a20ee00a2ce5ecd5dddc116f80f6bd3bef32d78607365e00b5bc8ea93aabed772fc607d7305c4df0e6f45204dad1c2802df9d42e7da48025dcc3f32e7462d722d68f824711ee7054623965d1e88dba1e187ad139f957bcbfbbc950ff48b63827a485eb7e2087527ddffeaf5a5d696758561ce0464947a7e362af502b544e02205ed188e6366df780c1c6a8b7622331ca571daa76833f3bf2b3dd04175ad105bfc813bb88d28fed82a0ad010eb915561a83f401c603138a9e92377d9a03e22ce33cba6b57239e56a24676ff755a2b51745c273efd410009091774d17c00160feee45eb1eba5c6983016874eac919c398e7c03a4c4c41c98d4e3d536e76677b04aba3ba177e04e2011700db26ef81bb03085da0813700fe32cae60f1471060c8ff26dab9c239be7bf8f0d3630863471d24e28d3ea33be01a90c2b6054169e60bcf948a90fb8e09a900edd04ed1f51f9d3298f3494ca994c7026635ef0337860a22b20b7c767ae97c3e3554e5ce1667b617cc242e14bd3cb9a47570db303ec6f67e892a19cfa4b26467bd714b85939e6925926f10644aeee44c5ea19617807a59e895ddcaaf22ff5a6a959a42bf40252439ab43806bd0ffc0a1b522876906025a64b3ab0b5a4d397a8342203ed5c4e300137a6e7f4a38f6385740b2606137b0623e73e1bd3c49e5488292df8441c66d81773ec8d8d02b4c6b266619e2b9f9b6287fbc8e9d1c4c0e3a2870c2891dd7b00829df15ad598dd78f5fb0a407666b8aaeb16a721465b2f641651737fc7c1396c070e1ce7d86d3c29f7e225b9e898776a24374c6308b6afa2e9683219007040459ab6e36e84ce9eadf8b906f84423edcf94f7a59880cd000ed83b21bce62030912b6c7423984b49c2b9b129b07396af6b7f791e9fbe597e088e2330b15158d941917f46d4830df98f1e87badcb8de2bec2569f8d8ffc647106a25cd67ad16bfac9fa30cddb4770a3693ee668053b122a6b8d513c7e1aa4af78a4db02072534c23766ef6ff509a2f92afa6e890e85b7a2a2a2e6c7fd0a2e2e8975baae0f35c117313a5bb16bf6bd09fd491f33605d7585681dd2a68a1a2bc430568c3a796d3b1abb89a01939d50b369c43369001b886f7cf99bdd8efaee01665651cf0cb5d6eacfbc20677ca6490702bb45c8db28a7fe43e3c625f468ecf561b00d9eb2c36270a19a67cdc5027322851a2922f1cc97edccf05ec720c05fdb025229469e238a06689d29b0d2876dac22fa96498c93b62b5222bccfd068989407a55b124ae303ed9b04316e684b466c1110b01bde9d0caec308837c307e53add04b94b4b389c05b3148d26360223ae3db179e7405e80ec02974612c8449fb89d62ad0d84f892b4d9235782e8e6725b4b99792f3f2d0c95d401874dbb9fef6e0b89c16eaafd8994780df0c29490dd8242942b09601e0c9c29831210cd36152d87bc312ce7e46e917ad39d65e17ced8a13864f0e48f8c9bcef720c11c98e482419534da9a8c8a3fc865884c13abafc71a4fba4de3591389e8efbb4cfe0c179bea41f6e298a0d217a0f0fb08100642688167dcac368acea497ecdb1fb021d914932f6e426cd6911be8b5e90a4d6645d16a9d4460c03a47f318e337e88051caa21b91098d8941baa5810cf0a446a5f5f461733e00fde794d51a2760017954a28f383dad5c271f633df23a93acde35db18ae14a2dd13856058d8d83baee5aa2ceb3496936220152ec447dad0484d4f0453aaed3c0a491e1da0177b53c06352f82fcbaa8c4dde8b4113f7299cc9c956ef88f0a097b08b1489fe5e391958d53aad1f8a698ceb4bdfd8a858d07934f6fb650852bc2f7190c78fd86e6a7d4b3d73961e1cd52f2007559b9813f5ab55b948cb3ceb9ea57ce6c302ead182d5dad17cdb924191dad102c038d59fbbbd85ffff15a353348aacfa217bad27006db29b1ad10f57bec0ba28d5fe23914789385f6da4d8ba52c904f362a09c201eddc3ed1cb5b69998c98e05a2980aca74b1244f4a914f2a4f6bf8ae927e5b63efb41c744cf8c671267c9c18c6f01a2e2042b07284da0a751cecf29d075e9033589f1b8501132f6bd0dac993902d216d7ed02e8dae42ac7f2b7ce13a2060ff1f1fd033a0fb074a6a83e781d8e22c61815bf04c35e35857bdfe9c334fcd9d89b5bbf6f10a44ea2481c9dac073a559e7e75a9916810c8aaf174e6ffad4ee402cc600e124bf03c410ab41828c2cb46461f2fa7e40d62ec952d8b897083c68cfa4ade0be33dc5fecdd65c2080d1ecb4461667a1d3136a7e249608f3afd8dd1ec264d4e102634522c3ad1af62899b5156755edc23035be5397387af980852eae4dd8fcc193276de515c797fe60a618a308ca06be50706c451b2eea40ccc7af682644035a22b66da929e00846ad277d520a586237549eb0ae44d4791b16c1e759aa50a4640c619c5950fe23ef93ac6e877ade738824c35b767931403044dcc950d3a6d4afacc315b25abad3fc1dd7b2741b116ef7c1f8118f5b94f0516508d1f38ba6594bb0b1b3d9e7bf6cfbd7470978de75f31048b7652dbb1545bbf7d121db04e54d047f91e5d91e67fd0b5e8c56347976f63ccf8732a50c3b9197dfa979f5c7e559456a6f10a050543397bd3ecbe1c1779a966caca21920e55db93d812d46337a4a2f1f0378b99d8e26715638c033a16aa6d52a1a6553033f5011b323cbd0ff8781a936e2c0716157c8d6533bd6738ab2e09f1d1148672c620801b49fc8e32815af1ea2877b56eda6d12537583102dd38b03b93a5d86f242231e11111900589b8ecc7b059fe5e10922885ea69cbb88734562ca5d78bc87d54ffd43afe971e40bcec1a0ed886777dd2068c2b64f2d3d988f1878fb938f110f3165d5c19686c62cf50c55e7a70698d0f990115535d0d7b919572f5ee4a2713da5cee231e53d29fcc85112c4acbec7ffa30267db4e26ced2471228a36d29376c8adf7beef805359e5521fc84c08c5abbf9ac94bc10dc366e4af93c667be4227acfe20c2e553c9fd05130f97c660b84e47397350204343d33bad0c13981cd9c8c034fcea842186929d093a842971f083b7c8bf508aa6182e086c87f793583cf8a598532335b12f326c80e56f8989653678961cf6ab03a59ebd70d09ec60c20deb600535e233e5f417d7fdec53f5ae7bb6c64c51f162108ce3faea1cd032d9fcc313112d741f07c63426d7d9e33de639fa1768f49944774e2d98f5e524c3b390b2547961d95b7074ff38e9d975ed0cd87c24e1f1c0cbd26dfd9595404b318b071cf7e5545017a729137a34101235f560858154a8a51d03b256179e886b2761ae9041c393933d92c65c30289869b726141c8e0b15510fdc147b962a0b6871b49bcd454c50da57523aed80b81c08a1a08d6af6e25224dda9de49ed23761018ca9d02936b42a46bc4c5927a29a660a9a88f269c90f1592c8d54fa9997b23382056ad3b3fd570f4fd5ccd6219b6a6369c8b7a4eaa7683e321203cbe62b336abaf480b86cd22780465325ae9ffa320f283430c62850db2b54d38d477f19ae3b1d6ee48292a3bdb0c9df33f8a446293cdfbca9415042e72005dd8e4e2c9a1f4a78f16789da769ccff581e75aeb8c643767c754e74cc22c41537476e34aa46f01610b2b3244857f99acb5038b7667231e6be3e4026d1373470336ce4ea99734b773af9429368a11963d0b53ca3db94aad7f43d3211b8461a22e31d5ced14a3ce85c41402b100dd1af9050e193b140d610caa60135341fbce856971adf48af957f64dae125efd1e0aaa5c63625ef3894afd2f334e0113b828f526755d844418a117c02f294be37d78335f5e6563b51fd726feeaa2f510896f9f42c2add428abfb972511631c5301abbb22879fc6cd830ed2a40cbb630bbad3009b7f3c891642cebaddbb55b3fb34f438e4e68d25c9843c4570d978368287df24ca1aeb582a7125cf1b87b8ec14adc006d9523200d5983a44fc34e4c47bcc15e7bcc642e8c434eea8fd8113f3d0356de588c445351f80359c40583240274b061e3bd36ee3b30f56ffc159814f0a3bd1605543800a4b9d75bd90f311cae7b6a81b2c20f55f2c9f47efb8a585bfaab6b71d1d3019482a14791e6f0ddee98e7ea8afe95cb0ad1b354018de6efcdabc35e72f60e65af27ee15dcf28c0bf838747edce61dbd19fdfa4dc73fd5fafc8607f9249a2458ff047b468ca10e64a55d6ed18f98b0d61b474d722ada34f3983c17d3e41c4aa8da504398a214ab5f3b684d08b84dc74a4e4c243bb7002665b05f3ad41d2aaecfb9f1d873f48291c76549a566798f880d86b54d176f2717d1e4daac9805d6efef876589f246dfb98b21be57f6258d5581d156a24674ad6ee5587d1506fc9e7eadd368606b75a2557417cd7978d3d4cf8648c32ec4b44ac11e692fce0739e3836f33ad47c3ef747a5209248df702f53ef88357769c99cb1a39f307d3ffadc2110bfc536069756842cb2bb21c324a426efce77d2577557ea2ab3a6e3573379ddf41a031304b2fd81529048e2e830b0b8916182e4649f3bf4722fb95089f7b9677a865a5d95a38e8d91a30b6d9f57d2d7601cfd3744c524c37a983d41c447c99ce2b70b2d1086c2c35e4fe0345aea9b7c9453069811b3600e254fb53d25ee601a825655dcb4a70fad06e3c6f07f4991101f0e3ea88eea2b7c77d8b46a95f36bed0cf14990a8c62061ae13f604fd619ce65ce59cf0ec82590c5cb3de937b9048d4ef77410108c7542cea4f095e8b139d4bf51f27b1c6494bf498fc17286ec3b14ed4e488c3ca91e0b64ea8728d30aee2783e72b2b07f7e53b6d26420e933cea579f3e3b8f8bd3c1fda9da2c9bc18d5df2ecfc3abc43da31309e4cb0fb4388b171e00537160bf2573383ba3de987da74041306f8d3fca64f46ddeffaddb8156dfc98599430fd5414fe1ca28cd8f216d1cddbd9442e648d2e9c2a9bb80e7257699f1740785c19c746de5e7003ff90c27c2457d7f55e36080c38d020348be87d874839605d385705f7a7c9df8e7e4f754c6498800fad36f9f293d2f6e9571c293cdff0f2fd0a722acd0d49af8dbe3d2e84e8ed3a409753ea4249f9b2d70a1e00d2691917f931a7bab330043998c741d36a40f3dae22bf33f4c18fd0bf3036ca51f7fa3cad19ac27dedb52008e08bb9a3ebc006061edde05e72e1b98395df58fcc6edeacecbcaf59fa892d007fbf4d21a42b970fac3b5ea5fc57ba084f39e3662d482c8b80e58ca59e1ebe680f8653f08ff08fc5544443a81909041cabb18a0eefeadfcd27c1cdcfb5320b1ccc42b89c71425605036d50407866f7c21786e9797140b3789813efb044bb474b938a7c7e8ac5da40fed8e7cf494c02691c25bab0ec9c9b3b25a5f80c6a8655cfc9f196035cdbef1e3bd503446cf3b7f727e068672ee3124f5fb010df76711d8bc47e8d5dffbe39c284ebf500facc29a3f7e19da2ae227bfee11607740ecb5e9f708431e660fa3722f7821158480a8221c6006fa3798b066f6d219676ff5f157e83b0b5c7634a2a4f55bcaa861ca7e284c0b928cbb45490fa2ea5d531a328c51686c00cfc0aad1d6dd4e324361efdfd4170df943d1eb23110cf458fbb4d0fa1f41b4ce56020af971152cb154e1d1f922c4d8f963e05503523042744cd4bb683374b2170f6817b2c41c5a64907c9a52f3dcbe480cf346fa998880845b6b585e064abe567ebad7ab8d09bc812573ea975e305c62c861640c6b16626ad9389f49370ce973e4ef8a0ccb87ce6f7749475690d9262e4781378433170a2231fcce6b287ef5189066f55a45fbc37da4da29fa5e2a5ddac1d063b5fc5d045401c683f55e627aae388021020f50367155bdb9759a0593dd12fed8015a02acccbbcba4d7d2b6a5f97c81f19c50b09d957d637e660b170e03515f6e49322f446211bc9cdac7ce81babb06e4c9bc3bbd6158fb68a3de6ffe37f70ef800d72145e63239597c7d21450fc6c3a7efe0298558961d5fa341dbd08068169be26b91eaf355ec2812994e3ccf418603813786f4610c88626f06f82016dd1091a418068e3db3a70a9f3070a9fb34d8a15dac642e0a5a0fe6121fa76c02e62e81377e72fbb7de2e3fc3116700e701e3bee49da779f9572ad432d5142594c22321787e7d5483d170002d544a18fd255fc99acf1e9694abcc05fc845c70e0fb7d829d92cac9a63b0161a496738f1eef0a489ec6494c84874b17be92171c4a4c62a89169819035234901784d965702aeaa2669c9aa38c64298c705a508364290bec98a274216eff9c0f4c89e2c0134eaa792efbb812333708fe1653b06a08876e95ff9b6e30783ea72af561b5795d69f9622bb351ad3870761e43939db10540c6becd1f1f014ea924b36ce94abddd7770968c6cd9a260627bcd84be4c3a2ccbaf2204bdac4a5a7ee6eb68f9ea6e1dfee26ec74d9fe9a5e0e4d7ffca466c0c1c8b59f513e19364590d64622135b09ab34a6ded409dc3079071a5b58667004551ee079205557dd77521e7fddab8d0211c8ae6c4b5a346e9992b4d7e09470456916f88e4dedf8204099d0b57853e3936dee6bd3417f0e20a1b9f6b5ba8a7caa49159529e9e38434dde13901115e2dfc58dfb6c82c921d300238a6ee6d57c489c3d905c56f55e26b5a2c69d9cfd8e91072bc25ab50bf1bdb2d689edc5c0afeed26a0009a5aeeb18cd8778cd65787406e369657ead9a5d27040005ae61f7415998ce2f34abdc9c5448d11c385a65cf444b4c1615dcb57f4c217d56ea0d238492c0b74babb8307e9d1ccf57342b7419d432837c8dd8a08015781708d9561dff7550596a116a4eec0a1d8c550d55ebfefb6ed5293c8434c864e5eb0f375385827060a88d9aa158845192dafd58dbda705142a85a28e6f57d03b75d300f6d254afc385e9ea00f802924c6981b8fd258baa10e9ab4ba088e0d106351796cfd3c52edef9926303318467e09609e2c5915fb1474b15e0847c4429948e1d5f5a8cf1fb57f6fd67329b375eb031a5408701615d1fd76e6b9e59811518c9d5a921d1a51fa175a5c3600186a586591ed33d93e54d6fcab9aa279dd012f88a47825f1334893c7a34447ff102a676aef7280b1e46211c43d6df068504d5064233d19fd344180185ef638722556ae6ba8e135476cddcae1723411b71806680c3e9361f4878e98c0a2004c8eb6777c714d1eee13ca72a8f1829b03b3d0788ea5f1a8b7c795c1052070f4c6f79d4df7e9f57bc331300e5dca03afda72c0ca7e8fde673a1cf933271df5d90c65e6e938d71266d68ec2696dd3cbec2a29248c3960e6c3809f9afd8ff4c47e46fa7dca90fdd610e1682e0fe7e50ee3d6b74fc6cb48628d7e119f42fadf07a1e7bb9ff526f5b954aebfc59112c0037110a9a604ed008a6cadf4945c350f7431fcf8cb07f6d9881b01340de9f0c65dd22a4587b9035047ab43b0f87ad307013563f6190b1fa29008c112532449cecaf4a798948e30265c371e8a92d13e6b0075104c0deafd8fce2f45b4dbe9d28f4820c17300761ce6c025656dd2818d03656a6ef807cb12a10db416fcfa0452be9c32a3fe6543be8d49f1aed039ba78f7330331cb95a28d7fe2e5362b30fb88d57de8e4427d1e800c770dc903a430e918cba328c3cc0cbda24490dee09d82329c930234c47b775e80890d61426d302d719028adf07b1ce2857a015e49f5e842ae63eb42295ce402a9a3af3fd46cd9d9664af691970904fb053971849bb717427e86f64aeaa15e82947ec21dc41e304f5c40163c29bf51dff3adbc88bf986933c6139a52c25bded6bafca132d8efb855e0d3d325458612c4b4a58fa5fb69171151f7c2684ac4a974b89de18361e54c0c5b573410c828122c938ad433a0062bbb22d779f80a37e68856d5e09b3fee22da6baac3f0ffda3e6316be9f6b0894c9f0ffdd010db016291a0b7dfe3e855dc5a8a3a5f0175b78b3894097f39dc92def8b7d78be279c5ba665b76cf73654979a96f5467123b95bb5b39e586132e56fcf3d7cfa9e66012eda878d097c3dfb151bb7d05c3584e9e8b40d0f11354337c5b33b5603bbebe02cf6c65f9984606b49f7adda7734eb644c53708e92ab47d3235510d07fce333fb6a0a2050801822d54d5569548baca9f97b4c5912d4652012a4f0cb73fd53eaeb960d46982004bb6579002311e747524605f66db4e95eed1237eb9757071c70eb478693b31ac42a462a06509c31dc9b837bf71c2b3316628ba69e400df1353ae314ec6018166660b60efeabe6412e5d01ca4943d004994d49275f9505f6d337366897ab26ebb660a2ac823777d01a4eafe59374562adf88dcd4aa779006c2844e308e4a50d91ac1d1789b5f885f04967ea4267fd7eda457ba59b49c03b56929c03e2b10b598adb0a5f9aab28c1c3b7a697d91184c4b60eaea16649cf923c2f0a31bdd390a0f4f4039465de2bfdb8049933d78b042ca1021e0b3765abb12c919c2511d4524dd58329877423f53faa35c7f0a1ecc284c0cff27fd9d5f3dcc7093801fc3c58877029673081e91be91a828dcaaafb7c43b92cea04843a405b676d5a2cbf34d57db611256c9e4465b422c3824d4f2ec3fd9d0d7770ab6a0aa724d253f1498dff40897a5040b3f3e85b306ccaff4e103919cefa519c9b7fd025751f54a5848300503aa7530ffd0b6114022ffe7b1346d7a71b6cbd97f745d16778aba8752e1bd90e40df927f11d673400a3add8d5bcf66963717d0f676702aa5022060e7832da4c7f824241056f180f5567efcfcf2df9c20e00abfff50aca5edccd85b54527156c89b0c9e836992c1851ae9108150a3e83f338bec14f4943c88bba0a675c2c4b6104eea571c1ae6698817de01afb0450025eaa22f42369882f6fa95ed76761184b5e0f89efcd438d528af8d9915a9f82431d1b2029a340eee5dd9e040c655367abd683630324425a91f97014e48b00d518098188e3d8dc1c23f6c70e3b23d2dc65c88a753ce27b0ea0f3b81e6e34f5968c2061878a4a64a4c1314b665ceb0b886aa8271a0517bc74ac027bc52bd6860bb24acefde3a1be629d36e7be71847e6f73662cc8fb1a0fd0620918ba034f4efe960d3f6883356c63ace20d40907fdcc24b33d89724ce3694e7019a32a69f082aef896cf16a86d65c47b3ad8323054698dd45b3452673bf35937484f534806c3903334480ae3e97f6213950249b87d47b43887d640b7029cbfd7e78bc12e5f103afbb5a5a564576d1e28978931e21cc0b7ecfa61205106f1a9bdc525c968717ea3c3902b699374bd2be828cea4663919311ab094113970d6e441428ad002a31d456185fc17c02337ce261d410100b53dc1072f88d2f4d28696a6724be2f42d42cfc48232b7eef51fa9ba3fdd3f95465b4f479c34d636e0205603913a81c703af80ba7d202400dfb34dade46913881821af4f0ad72b77d84ea8b1d3793d36f315d8e7b1396c65802e826664c99059ad843705b0f6d0201d392d727322221b1ee40452566e62e41d9244f43928c141d931c0c09503affc49b89ccaf01999274d4c59e2177dd1f5185e74ed94ed35268eaba23f771db55783068b44775c062aa02c5498026c26426a745bcfd77313aeea00e64e99e349ca86382d0619754d1e274b20ec04b93b92cd624bfb75b437b2619bbe0ea15ac2abba2e0c90b9e0908caa7822acf75fd86ea9b87872b850b9913f6bbd599548928b1c2df2a98177b939c02ad5b729b1bb3bc48062b6743c4f7fe6bc4b9dcb34e32de090a0a64f255289158c66acdd432377c9143d06b9f6a806a89599ea34a87a184bae95dad5ee8e8d19407cd44ab165f525b4931434e08d9630fcc704ebf11593b27f4ca89ba4b240832bf41f7cdfc57dcd6b1e3094d56efd5d2e7daa1fdf05b7e3932fde9201f3ec017e35bfe1709b97c5a19098a4506d229588d3507bcf30d59e71195f9fa5dd19108f0d665e606e921b49e6f6d6073cff5d7791f50990126fc3d0b7d80a576522692f3bcc998c28ec4f80969fe33830b56d5bca93b531c7ef1d7482e1d1c6ac47aef90e381cfbd85031edda0124153f4a25087ea861dcaf0f17e22b00323f3939a4a9a9d0bfd29871c213c5055e8611d1716926026c859848526645a75bc7b25a2fd38c134111016185a30023b1a627b2d5c638002c9625d3110d460d18131c76b5a6538d9d203d609da49060ee85b953b2d94f15b2a7cd50bd8c014d4d202029074efd73dd37ede689c98201d015904db5ab80939d89421ee76d0a0077a84518649972b2d27cbc8d39cb1f5dfe4587be5268bea115ec153393a743e536f5d503e475bce782b4d6defcb2522fb867e70c0b9f3b9d5fb7c3b6d327525480e8f74b113689e4018099c77667db31f331b524a8cb810443d89aa0538e777718abecf6867001ca7071ba4d145110865882481552f94e3c2c3c616afab1d210abb0e350384a689167f03c4816e7626c6d72540ef57949327768aeb06e8616a44afd4fc4279d9cdefcde4aed4cf1db3f8fb36724d5e96c3452e55fa9744301404e9c10e20423c2dda5dd1720982cfcd6deab912977ab1da73424419617b20f2376b36060b8310e66f9a75b256d327fa2512d64b9f12254494841e12b223bc536366dd9fff860f7aa907313ca8da41257ea6cc31605703277408a0844d43b0d5bdbebd389aa64ed80ae641828afd46d7882c57607d49a70e7ff4ea6b36b42747883d8351d25d9c994627213ad0bab26295a531100116e310595c83bda5c26bc2e81fb4ccacb88fcc74e1a2d65f5a588e19e0a5512932b7151f642b96df4dd1b204908f38ed64a8b8a69a04e4533f736a3a8fe47c89d1f5d7711597a7c8ca800916651389183ecbba5b74bb8c329a27fab2f78b310156c987f93e873a1046e3953a5459d1b9b8f8af89c75daa166af4462c89f252f576d07af37d84302758928cb2fce0db6cac5cbfd65b54bc4167155bd0e147032ee0c45edefe308884827211bf4d6ed7f2bc3659a92ab757c8c3465beb6bdacca1585f5c5aeb1b16e6223b8362fb71ced1d00813152371ab249dbf76bd5a51ce956311982a1428eeb831fb70bf319ecdca9f449329d19ac3e7bd2dfa44b14816b8cb8b073a2e0df9dc422559327e86676544ab33d25169c60e88606d322ea66981146e04fd52534c1707530c4b89ea5c2946c1bc511902075d43ef9470075c516af84b9bc3d28ba68220574477b85137ca9df48b83452b172a591268c65233a4e8f1149d4870e8172fd7c7c357bff8028ccf5ac9bceeb11aed40303d295794fc2d5995e3bfa64ab328b6497cee6dc38e2b6ff3a40f3b05bd7a9cd8cc2e9409306c98176385dc2aad35d2c457d1998f3266f6484c90701092a05d7f18cf03b346ebc3e16ee9338c97e7b94e0e025ba95079e9662673b9309ac076b3e127c30691f3870d9888272a4476879bedcf92234f73cd30bdd63c1666f364b1e9d8a88ba6cbddaec5269e89c11ddab8c171477989b1644893fd9ee2170e7d8f550fbff8a41ed31cfcd21e2b0b70759e241b7004f3dcf7f2556fd0b2e6d2baad280dbc5b1228c0f402a18a922c95f0cabd691c61308b4bbcc83a42ad3a8d1a8ac354211dd9ae0100ec83d69e6e198fbdbd0e122cafa8556e917c59cdb7d714bb78dc6cd6a3d511c18fd26272b6ef5315837af6b5d9224eb751ba11ba24a85bdc531cdd705a87c7e269a617c67b73079ce83cba4e9ddfa699adef0e59d559989fe60038315e426cd03971cf1c754c04e491971f3b66b518c5d2cffe191637234e6143a358280f4becf22c40ecb2e9509d40d31fe031bbd0ff038cecea3d4cabbdbf7eb51f888b7518537e323f1c64a86874d06ea3d1245bacbad9eab3f939b24c2f0ab5e7c251c75a9fe4ce6ec250a5d426e49dcdb87abb62a35b31db66fb9b7eb7280c25c5f734f0328a94151a4e471fe80fd5f813d940a06fdf1caf45660c081d76d5d11261516b265c426be8c60622d39cffe09b5fb0a804e616f94cb065944d839d4b3de65606cb74490844c87399c0d0f326d26cf708a9fad25854776d534da03b4a962c2992afa998e9f75b94ed3f9adf93b7a41c0f4b048ec33d52f72bd5035b9c8c087a944c4b60697edf49ef02f5676f8ea3e235cb146215805581f8368538f7cf3f34ca655033ab8a968e021a18f2fa2910395c08ef78789555a1ca3ef4b84bf61a2b4c87e89131faeea581e0fd1a0362d55774f8cd34a26ee31985dbb81f794801e023da530a04a85e75007a0ab2c1c891a5ec550506a1940b8d0ed1081f93124a3ddc9abb3cdaf1801abe92f452a40d3061c5647fda4c85e6dd15d351a67d07a59d29db5bf0ee39c988a6646a0a2bda06320bd1cd527a5c8630ccea69ec715f3c81bbc7315eb9c8c95055584e2f48b2d97fb2d5a8f65dee93853d8e140f301a367287ef3afc9592ff543f0f0d2bb9b7a98b99e9756cd8f092f8ba21cdb380a5e854db235dc2800cf08b8d2178845f964a8ba77148ffc686a42db948a89c9e5a82af3017c059565df8da718e1fe447f517759232cc20621e7e86f638ff7e16abf98fa1a6c3cd9d067c1c0bf7b72b28deb6a5a1bdf1452b686ed8aee9891c068717dd8762f28b830022622cfa9c827342875bab2ad4375fccdcc7bc848ab40e2cc94daed8ff934240b736e92c2e32452f7002a29bc17b9cc354e5b12364dfb167825c8ce31714aaea5e62c89b3841d07629d15c339f052f3e28d1e91333c2221108743ebab7c024c4b59dd855e3087cb2be338e6cb5e539d5a6dd163c24d10a4de556c0c87df6f059e36b4f854fa63abbdcbbecdb109489d62ae77c0eee7bd98397a3e0dc40095b25f8638ffc21f8f4dae6401e633877b87959eed41d75abf200cd0f0b88dfc9224060ff2741740fae1be234a518c86cb694a1084b6b7cbd67b27fdcc3753304d623188e96831f40dc718103d0002b9a03c363de54b41be5815bc9cb8911f689b659adf0d150a0a449b060d61c909db7361316823c4d33ad5400f4d4a62e38547a20c8a6063a829c6d11b556172cc4573ca36cac469e59d0b518c4bb7cbef3f57656493c6b62e7f50a10fd681bf306469fea689be8d7583e9bc43e24a913d089b91359cae2bc460839ffd560ce7df153740f7476ef7b5ab16394421973bf1fc187828aa7162e15d8c094332d98f9805137785ebe7f9a3a9b9dcdd2b6b478498c64fe9e1180be2627e99fd86c8db4d759bae7ef6cf2e5b2e064a5e9ec54759010bc8b5e9952167d132ff18fd7fb13836bbe9f44897ff51d02ddcbfac961ca67910271ec09af019c1010785828a9cdbef3280e1575b1792718ae6f6af290f3273fb1027a71e1bd6a986d2c3a8742f25975645ceee8f31a98305d583efc76d4f7af2b060000a3ea83963fdc7f4c50e5508c47ec10514adecf0db12ad2084a1745da00dd11105d6b7f1f9060c2523fc13be09b21510974c7596e8231f524e5751cdcd55c505d1734d4769d3bef4fe0b6a40ad86a190d12f83e82930275bf193757fc272afceb9e394b1ce25e99c642e9c9eadadc513b854b58875518dde603ce0d8b22c41e10ce96de99890dcc9768d2972c325f7705445490cc8c0450de79bcdc1c7ba72cfd678ad82b1a85ab9625f7283b6183d689e58f8d2066979d46276cfd4fb9becd7d507ce074e4aa197f6778f49a09dfb53302b4f03e2f7004941ee70dd0c305c9ead68689c0196a3f2323a1912953f0435feb97f11b7919d2b1cf8474d089b0a58717877478a56f387416db2195775b15a3b1dc12bd27e5d8d7d28c51bec00c15a5b8a9f4d87cf00d187a1737e2c31033a0df71134baf03e8135a11ede501faa77a5d08ba57ac87b1ac69752464a1383ef43a0c3ddad8dacf96e3c3112b3f16c7e2b1657db05f373367ee838c33a399e019e739fb463a74d2ab8f27a60c4b0f377a09dce8412f290651bfd3ae43a860fe498ee218ae610351174b08fdfd78fe660705ed1e240a65732335c25ee29e368fce7ee294c5907e106e520e47304409a6dd226624bc0bc8d4812f9cc65cb9bd4a63d8839f41cbe27799d498d205d61986c1cded9017bbf98cd52eac89b9359ae7a900f8965ffb708dd866b8737156536c76fc9163216e696a7086a28ace22454e0327e3c2c78d77983ce32325621bd8d42ebd029a6e4795a11a3570a5fbbe840b38473fe4f7ded5534e0153f5acc8087bf5d4618d83e61accb82e08a796d3b70e8432283ed676ea50f26b512be28ca5b6043b5078e1766581ccca865011888a5862c8323e5c3507d6bdd18862cc5cc72092028ae25aa8d9912d709e24eb86099a990059e256184e0ea77c2b9eeebe7e34a593dd3261f5dc95d10ed87b82602176fbc4f0145ec3bb31894c489aa57e7861fca03f39574125fce2c5e739ca97cb808ed45d23ea4e862d99c7695cc482e1c4c6d895ea189a6ea10f5170436d70584270b8fb5487eee4949b88e29191466022b6347d082f622f66932248f5087aae8e89644ca838a4405ed47d0bceb701b2190e41f7c8b61a3233c9697d749b50222adf3918765a31a649a188cc47396b00416e2f87e4a594ab249d0300b16a5e92b8b24d97469f38afe0960624b0c318fab147342a7764bf5d8b255ba088dbc516e42820dbf7b52b2b7bc648f8e5500a4b42fb183daac06a05b2632e67b7162ce4d846e8126f4cf42adeffbec1a66dd58136f7821864cb67447f3b49c4a3fb6a372f258905c65194194116b0c0838c142d8079651289f83c1fc85fc415280e6f404145d9c9b10919f056547abed88a381c53f3231a9daf0412d909645be825fbdfd5bd45c5e6f6660cfc9e991d05270d0380a8229d5bc0a19956f39d79838b8d3e8a1e9ffee34646d30ef2ebcffdd9575c4f060349f799212b44231516d518436170be8d84768bb29e176985c49543d47f2481067fa0f108da94d662101d0478630b9e97a420c0c226e985c3ec9cf867d9269b59d19428ae874a7bcf78dda73ff0cce0afcce434c478272c70fc690f131919381130c070015ed1e72ab2468015212cbc088bf1d386b0532971480c4456617384181ffaa79fa6571ad76cf040e831abf81805c2ec6cc85bd6283dda4f48894ce029cb88c64716aed316a5f3d63643c38e01cdc14bd735f4c4beff4b340ea1c7d4e43e010bfccc1a87de1d7de7d5f178a30c59c9e15715c89b8401fb551db1e930b0b9b5be5d555b5c9318ff48b0afe8ba381d916694dd0c78167dcbc7c9885fb9030eefdcdd2d7cb6fec4d9ceed1f9a3f423b8fb245c58338751f702248b3b1143002220db2186da8ac1e36c80a0513a347e274b119404f37d805ac9130aed6653382809ecc88cbf5488e6f0e765a1194d04cf4777ebcfab0a96863db23709584b6167f8b4334a95baf6e0edec12566d3a8445198ab5eeac1b6d32a38a4c458de8cdfb92098070636414559e8f88e0a8b3659f0c540a701a33bebd6505da1f50f19e942db77503ea2d2fd924e2da861daf7d18a66b3396b82e1ad2f6e186787d6c3b4d144ba95d55270541ea7b2212a83ce220829a9956cc1516c6b596d2f7eb915835872dacece87b4c035861eab26e531f4009f28fedadce552cf534022891299722f7ae8938c2acfb71baa8cb8fbd5055b57863891541860040db208814f0a042229ddd25463b9bb807da54b44ce4189d67e69e32a8fc27cd0b6e73235c33800dc3386b1d016272fd8a2b9865330b5360344880961d082629a1f0d3fe3dafaff824065829ee65b07327c89140c188b163edaf9a8430ef368166ebb8890884d4479c7a96db8b7bc8b29b396b898dd7713568b51b07e8e28a9da42233bb249ca8174a00dce1805c3be04fdfe495da6dd0ae7e988414d80ba26349b973ab537a0552c7ecae95028763161338149bbbd3d6db45b93a0f35ad296e636583eaa5e8f88c4999883eecd45a84808f436554ec6eabd87c67ad56d8b5f62703ace7134f101552b0b7af10cc4091b38ee7c2c4cb313fe6398b767ec58be94454891fa8c85c0b5fb1305db68a913b59c630daff3fbb14cba5c287cd8c7f742ccde543bf7399d12223ae1ff2357f882d54a63fe055f3325db8eb62ed745bb79f2eb65835760c38ca7ca26ed217725aabe0104b03b44b92094835b8e47f4133cca79d16d820e859fabc57b1b50692ea04f9f7c006f5dd65c52a78516bda7cbf5db5637372c9415216a15155055f1db3c107bcbccb52c81acbbf7b264ab6a6f73c1575fba9f990bdca0bf32df4b454bd91281717b0c4ffcaccb61bf66c24f899fbcf4aa9325c939a95577e38b1663969f4d77b708663e5df643710e826ae59d7e81200d0c01a179298a216434b6d6e78948d7a52ae0e961cdcfeb7644975b6bb57e1ef5ae666938b3e05674e11807cf70d1ee70a2d1471e2c2f91e82314f178fff7fef00ee90224fe819e2cfe8ac9f8f4b5e42bb79cc641d7695ecef642dea196f29a2e7590644baa12b0690cadbdd6f47f155c6718388f4924adc3ab07f7aaeb774311056bd8079e0b796293a57860e2aa35f95df68955a63498fa2994a14562efec9babd74acf4250eea276a627d251d61e785156028cbfab4bf45d401a7ef0dae490e4f90108aa6923087a7c10bd468017500c8c65e053f648e142a84dc0b93a59a807df4cb7a2096e07e20e35d4a2360c550cb277891c55a14e288a27852738a9bfa040df59fbd299ce64f08e70a90535ebd81544a25157c88ff84943f952efaf06357185cf6f0353d00b1a5a4b0c97e70fad22979005b5f5094df46c794e361a65b5472cb26aba44683884ecbfeac35398ecfd42f9cb67bbc1edc03a47ffeb71794ad4e910d70655b09856801a188b40554213d5e319064e71f55b3a0e14dea14cf0873988f008bf0103af0cda62de88e6c52ba3f376267502b85194b19758ea6144664eafc5f90df0f7620705730bc363bfec3d049cb7a1db8655aaa8847eff003c0740968d1d38d92dd56cf9d0dd3cd590b5b67f461e66bd3b7a0f2beda990ed34ac39d4eed927a023780119808daaee9e2059bea0cb27431de046ab94e0d59182c315eb9d4bc90c5f502d98901bf1ed5504357007d2f1a9fc80ccffd2587c80e59ca27b8d7f7e36fa4d31c1ce7055e2ec176c23998859eff2cf42148460d86c3106ace20a831dfd28385986685224bfef8d57b46929b004d18b6cbb9110d03c8ba25a05bf404df80ce76b8f3db4d9990a21ddbe82edba7d8f0d59afa8e65bfe536510caecffe316b2e0bb458dd2f92b6c1b4fda36d643ed47a746e05e3f0c01e680f80df6909e92205a404b375116097bdba91ceb04dd38df0687b921da91c9d8dbaaf65ed8f4acc7a46f9f6d7fd04f4f9aec90c25ffc405253cb9e0c02760d21d4415efacbd90074412bfd9b1e144095de011714039c96a7eb11582083fe254679b8f9c192253f526380811aa9237ff320f96d7030cf022bde04705689485d7dc0c49a5e0f6ba60ce3e9306851f23d832fe89eeb2117e24ec49d2cb3b7d74ce6141531fe50c40fc1d8c58d845757ccac5f88f368141d50c54b0b481cb958bb896000c5241d838455578e2785fb0ea86cc604080726be2c2d658df7b527fd997185e6be2f64beb3c5ac8c77fb20b40b5d2086491432c0bb9774c7b478eb48d4442938ee57dfbacb4df4e358d254b687dc76f882a1c2f3082259850bc735dde21aa279fdc07af6bfcdab644b566a4511f9c22e097f2dac6eab9d6a8df06a80722292124824556dbe60406a2d16b5316116a528d1763a456493e2a9b337198d1fd4abbf3918436b277a35c213a592b721065ddbb5a90d9004cbd880ba4b48a1b2d42cf4543c510ae1ff674eb8f4b1f8eb43db82628b441351b4ff9737d9854fb9303270acac403c753e039f464537d4ada102a1fa8884df089d868210a4dcc66a521c15af191e33c19746c3c4478c40fba0a8f2300f4e800b6e54cd8279e0f05a2b3ce7b66c0bb9652899950b08d282417bbb00ad57bfd4d0e02ad4bc302802033a9e6479206d706bb47e7e7204d07130273773bd20755925927949db1c9151e86d3ed0c7c0248bc9e77c5c5cad381d2f0243040ee20016579f5c866c20c03b6e0fb193db7db60d0b57d9ed5d9c7b80e6e6351ca99a815e9c848d2a58982c316ef06181fdbd9c8e6c84a3fa1b7ab9b8896fa242ba15140a762b116c692c850ef1bc20a014627a16476138e6554e4a9afb5454b0610474781117e0554188e67d29c702730524e39b56b61bc76eedc782ef3ef42c0ece626dcbe577bcc5f6b155f783e3f1ee33c43f4eef30d78ce357f343db99f575c014075063b40bf5c567df5135878d4c1a11751471990c95562a8e321f292b522b426bd722d43942877a47e21f902af02f5c1d94b5218746451b81bfb3dda7ac0b60d0091abbe750581161293a9f16609f13e517620a25350a170adfb1a3ebdb61ffee408f88c8840011964e617694f80b4f3888b9a8e1b9162081ffb66ddc8a7d84a01cdd0090ed76294e10e8b79db905b514cea1a667a41dfaab74813a027a75b8718f1bf392eee05ae948a701187b949df0efa55749314f5f3686d4976ae7cb18bfdc0d78d52c68f1387aeaa8ec51ba59e5323ca54e436b22d6a371c4129a714e6de262662459c7f127cb183b5c40b7f404cf25cf1b7089ba0b4b583d7b9b22f1a8495674b1902fcfc7685b84f15be908561cb7e518da2604f0d3a30bc0e67f0b475ad3336a3bc78381ae483018efd6b955d3295fa5f25da6a78e82eafd8464b532db388ef027059758a7234fe58d22ed4e9d6530172c78c1993cd73a11067bf8939b6d886a1efab068aa9079366cd06406edd208f97f40d00a717c85999654cb5edc6d79512ec9207149ae3a2bb8a93d4356015e7dc14f8adb47839e4ab698b359461516d20521b8786cd6bb760fdf493107175c9a362d4698fc2afb358eb83ff2b1d21b54b872d5921a737a17c776ce357a2dc444a5d1e6c0fe02adf33ec181bbd37447795054282999a07f111a6bd456299e8d6f9298097faf10774326182bfc13ee080257ed3179a1d8cc554d66fbfc6c015763974c45e78500288430956f39cf2b699f38c4b3624590526e8a2fe0b7aef15622c9fdf4d16bf16f6f99c3d969c8588bc6412791f2faf50dec2f4c2aa97b1341bf3b22b834de2fea79b9e2fac8a6e649c3bbcb07671a37fc7813cb1588fdf531e54576858f9e654bdf65ddad9e6b9d388c501a38dced7071e8e6dc92b758d5b351004d38dc759f505b5032f7cf5482838e7731113b0c879a4bfaeec858048ef1b0575c101089c698b6007845634e1363dd4f3d6de1e757469f70dee75da0721189b044c49dd9d43f7690e309183a091d36f467e3147391285f0e2dfac7b14ec14ab59c04436d95f51c35911a34f4bb863e27b2e0decbb20bf4153b1209fc7272970ad6d3c4580ae201e41bc5cd28092c1f86bc71610925da9170ee4a988eb74e10dc2daac07292b82253965f6bb15f027852927d3dd57e0145a409d8d3003906fc096c8fa740774f2b01ecaac3fb7ff456ee0f4907e2cba17eee1a6c38e4eabc579bb5fc93fb12b99a53c525b342300f3c342645ba18022925783f43b673bfadad3982915104a4d6a2fb0d937c0a3b7b16a6ce9bbdc36359337ef9dcfe76ecc8558d173561b9aa5a76f4f26b65c89690bd30cec07505ba65b607832549ae0b9b21cc188cf24ceb22bbef9976eec81b6994cfb6ab55c7881d75bc03a829cb1c3b419c2b027af1908ffd06df9ac02ea51195447c1a3a6eeaf31ffca385641484aaf7db1510a9bf97111c466f1c5858d6e3cc031de25c9210695082819c27f9da16b4d68bf9b29d8a196dff64558ec61751adefede03111e4d4ccb33faa5431a6f2959e4a7b21933496763b0d1a8d54f92e19194d96d525f2d37b3c1165fe24bf9da54ab3e3076be09bc701a1a5433dafed46a5871521178108c8e5fc551aacf624e34b699da990b8303764898637c8b88dcaaa173b21337597a638e05386694b1924a268eb58e8cdeba820995d057881d9feab5a27b75f6c7f5aab170024268a023a695a173e9fadcc4ac533995b90573904112bb226417caf4257a5a8b6aee7368ac5571265a00192c123b986d39669208e97788d2df510a309230039cf2466dd59cc5a16db96391fd02d0c048f13c2c76645bd24e05c6d9b416f9aa9dabc3859269ae446fdaf5af679dabfa398ada812b1a083c04ef1857981d3e9e547c5fd06c96f1040ed24ef3f83068d3531c538ed9f65a864342bd17a69920322a4091a6391f0d0723f69ecf9160979499434412fae44b4f9032fefca82d6e8a156f7f618d233bc0b07d2e8ab7a905047e9b4f764061ab137267fe95c09c94e0ab49a517b5020f8135219b23c54ea14ab2b7df5a6646d7c2e16807d1039d18cff611f91be37b129121650b2e6c0f94a8895e83e613acfde384e918b09f56bc05c6e6be04f1099becf6ba7f13ce1b1b97974a83fa41bd5411a94b154b94916c0cf55dc27d2e3ed10c31324ff30f0492b5976b973580bcac0a33ac0c6e77aed6f8b03037b02f3a3270deca170a6d255704cd386e1707687454499a6fb12fbdf7a67afb9b1fcfa4db9a0a6008e54b3c3cfc4563c6ae71b5e7541334a6c014851f8de42e3f75825917c3630b1c099ad15e1c0f671aebda8d5f2aa1d3abf8c9cd72c00784d369691594d05d6ccf86dd287a19fb2cf78556634bbe4f48371bed85e6a8a155a0c2b84992dc265f31bbecc4098315ce828637ba776392d50f7132e468e600dd95bb36e440d6b6dc5428b9c0e65c500db62afc8cff111803a260c0d3416ebcb06c4865fa695104b4b7021e74f9916a8f4d0a57c29e5b73061c0a31ca7ff89a6af9d4df058548f1e4893582970528d4b0d974cd9b159c3a733f2438156507fe9a5133a55231c474bc032998e95908a6138c8bac500be94cc8695816fe203c6e0bc4c180717616112e6a076d3c61a55e471d3b29895674ae11a30870068f093c1dc816933e62a931c7e631f4d6ba5425c2ccfe8e2fa64367516a9eda84b7ccf7c5b061a17700ccb6338298213373e3c8c96c9b026e1592bc5eee41d19909d0a7a3019a32c40208d5514b7d4ad8834b0eb297606c7765d4aa9481c5719c99758d2b2a7da2fdb47f6d6abae2b6f8677b0df52a238af4b7a64a3509b8d8f54190f6c13b62b5c21138ad4d311cfed0869491c476a345bdf8d23b0377df76859f9361604fe2e1c58c3f3688951bd74742c9070d6c33f60235cbf5727a6043cac34061694289fc56014aa879c2218548cd173a2bd3d8eb7f330bd34e9607258b8e7fe96dc6c679c248202ff692886ccd86b512a710bab26298331a5c4f8432c5ae3956a709f29a858c2cced32c3b4e06feea97d870b6eb36c224aea6e57080398bf4c20b80ddc44bf77c889bc0ee7f2512b75452ecd174cdafae4408f0277d888fd0e6a0942b953e4469865048c44fab161125fcaaed7990db12432e4b0e8bd4403b8f3b5b20e63b17fd94982199e993082e543161f7ff817a96846f9fa3ac6bd3e2c58105ab4c4f3e22b3f5d4bb89342bb6895eb9861c2e80986f51b8664b551b5fff16d25d70a0e15589b0bcb4e3eed2b4778d558c423c86dd8ea72ce78149347ddc8e6c2eafff0bf568a5ec0233f20b006622030440d1ea2e197bc20de01e6b02c60796d641da9c926f0d1d4edf553485ee62756e6237295187dec22daa81d8ac45fcca6135a0441e746d265df376280aa36fc41742554e3a6b32c92e6e15205eb28ecd39a7bf1f4a2818692e64f4dd4a4b796ea42e753c1722ca034bf65e6a402c33ef5753666e5d76e881e4f4a27afa2685866df39e4432caaa2973daf6ea5f5cd88aa8796df6d976e51f293bb8fa71b258219651b341c435c54280e315e5f40c1ef27d3505a87e847209bf0cc92107888fff3386964dd8cb1eb0a5a6f4c8706138a3ba4c5621b7700085e943cc99f4a45042c33cb08f378bd2ae0181c74063c2be1e06bbba72f24476d2cd3b051d7224a71b523a29e31e5e702bb5399208fd49e6f5032f9537afc0a5fc9d519d87a7bd6d7d56a0b51f7f5962abe2aa629ab3394157dd2b73e7bf5c997fc8d3ca8c83f7ea0a8eacea78b2411ab10b7e74ee4fd4980e31cd3baa66202a156a0afd7be92d03d2226875451509e80ff462089969d892188ee07aa970488f3d4f647c194660c3f637c7a0df4d9dc45d5645fe4694c7833f334650d2b87f9e9143ad56906cf6f02480cda4d9daabd44a709bc2d31198382090c902a6df4acf53abe2f9047c4e6340fa376d1473dcc00ee46ed7758b09e2d1472c952424d8264b0b970081d9df2631ea42365504a016a7d901e0233c3d11ecf41d29e66e89d0817374af9f7253392e34bdddd84aa57d21a6279ff2c829c3a1ecd085d67904600d33be012b7f71ac6f253a103ad99d913753e94e861423569c70b87d88490985fb62469d75700051f66086bd1914b8f6eb6819de3b98ec75cfddb5fc1adced2187f9d44e6260f38127bcefd69d84a0c74cd2ef3cf4be76b0da8e12408e4da269996d012e935885ff2a96e3ad6be1f80dabb07df7d44ab458afa69ab004c8287eab9382e9a34c64f2ce3da981fd6163ba64a8f1c084c3b6027807cb5ceae40ad1435778936a6d20f6824d056b07f3005faa5034ce918c74cdb24fcb4815d1608894e3a961c2c99394c84a8848b29092a62bb85f4a11c62ebf6e75a2134f7e773e16ba6a08d468ee24a895cc7c78b687f8adb95c8155975eada0b8f5cfab1c014ea48bad405d14feb26a042fd3859ecb9923607a91b80b84bb87279502c5932b491c774fa3ac91201614c247d965c9ceebabb4475bcf1cf40456c7fd641066d2855115424b2a55706451d81ae526ff5a7336704606cbbe2761528bb303ebc5305376dd06aa3b31c1190993d38b85f155a39cc383fc69f5f8f80d547a51b0398d211b850362a2116486639cab3645457552f72baefffad751d4336b50a094c5e18a7c33b716af8106a3b581e0ddbf5825b939b2c7e9243b9ed20d2aa9102360a49958633bf8cb204e3194c9fcd867a4222cb5ce33fe11d06f1f07d07ddf3a43d2442e3ab45bef99dc35aee95559adc67caa5323ce2fee40d3b9c8f735e2caca2a80a80bd3aa3dfcf6d765262c6be1d8ddedafc14cf1865073a7987ecaeb1c3080ef66e3eed51bd031846810805e1f04c7cbc6b278795100482b798b0f6cb058873fdf54f8ed6e1c1d0620ee03b4c401e3ae452c5b68f45fcc1803d253f3e55d993cce22f390dbf4297005011d7c74d7429fe932a24c5a19c6a41f587b8e71d0b984a693d4dd59d2cef99530ad86a2b50a2c094d1c9028f3cc53fa92c8d9d61dd8062201953cd4e48975ef80ec8ae2f6aa746043e14a7088250e9477b171b3fca1c7a6a88874ca2965a1d019613c1d4bfa00a5c1443212154cc7373363b56654045ea9add16365515348fec9617d784a15cc64a5d2e8788b854db399093958cb98b0ec456e6bac63235c02e38afce7958aff85100d0d9bb331fba2f0e56358fe0aff58d0aed474c4ac489cade1afb3b01bd5c6f9519bea293981ca9cf04bc11312ffdd630610eb65476ef71c693b81dc7d85c65df8195c342a158002afa50ec7ab48c9c4984ed4ab22a6feae1c19ad0311061c3bd402331424e45d758b2017c6b3679d9228d5458b4f0f2440bba4b1ab19c61e175ec056ed19a39f985b307ca60f3df3346a18c4ef0875a9118dd781b574209b1131d301f7a3193acfe074229be169ac1b16c15669ab3d7eb5fe5f0cc5c0411a48dc68290e5d281e3bdc46c7f61009c1c778b11ae1d4758bcdf71a2feced7fd67d6cb06886e9b41dfbef60ad7c16b4ed4cfb6fa53ad586e2b1044ec40e1e3093ad787109acc933c0e3301ecc3169cb4d060fefcc2f8e0ca2d4478ecaf881392e3bfdcff32eaa66d48a392740ef0786049d55596a2e6cd828e1c0f873622121807d23ff80d47286cfa3e4551a84577897060d03309a2d15b9d70834e01a55e8ad795bf5c8b2007b1f555e785518178352204c9d9083888665883ddfd4a62c2a4897e63ddfb361c5f2f9f91feb3c7afe5cb235377745807e3d945da7ec0d2a09e08b6bd460c5f8440d44d418770e1db8c324fc6a63598e24e70af1e5aed79d5a4902e6dbeeb8b937bbd2330ec8b49e221576913c61925ac4f388cc36fbbe84af1128467675c14fd8e8993745cf8bb613d981dc2201d8135375a4b3e29b6dd854c857a14348aba576781ff50252affbe81042034ef72e09c3d61b963047270c5db371f20e1f989c07e8eba8d8c77d4615acf66ee9059a5c4b352542376bb5bf59c06ec88bf8345feb58aab7280e945aab7c950904f521b94162442342b7993356137f020ed1e58f1bdc8188c2b80c76c2922529c1fe0774ed346cae158e569265648077b962cc3201d5de2a4c49d5b794cb1f5e588c8c94a904fabb7ba04bd2021b14539b60aa4efa0a90f22947244d225d33527756878a41c8640e640580b5f3dd80ec938360082c4a0f1a27ef3074f7e32c693041508be13c8c2723e2ff59422c06fc0da26b785d550afdb764ee779a5a4c0008db605ee6d22bfadd48ce3c441a11543fafc77db35811628d135d67109de576845a9d89480ee2474ddf537a8df0b414ce8362999bc10768bb10fd47133049587ebd78e6d324066bb9a9d4a2f9bda5aa0bafcd171eb85b62da574945383dc49b702c9f36228ca3a848875399bc83b7543e17781e05811057a6cc2e824c5f240e65210e243702f091c93208a0c657f17ee8d6515a9e9d2c4a68f47269f71c0bdca90382ac7992cb75bd286e0a6e37f4aefe6bc79efeeef94cfd534dee7dfd2e79bff1bdc7c538c38fde62a713e4dc6a21aaab1722d1f4381171f563f6c5e4a8423f460b17bf959b955118a54886f83e899576c51d3163dee3dc7b8a6a5e614879b79051c427cef90c04060a56f936b7319ad9a4e9c3f667f36fa47c6809e8f1e34f43a19048cd402748d054a8392fcae520b66ee9cd74b7fd4fbb9549ad8af7843a1b493d1dc592295ed15751031b1f36ef0e63178abae5a076f38bab0d407859bfb4a379af4da2d251ea78d4dfed31d598c07785223257897bd66715e6a9ad8513e68ae56cdb9942291784810cc53b34052da15d549e5563da966e1fb220336eae6b040d7c7160d889351a5af7a220817221e83dbc27260409bf8cadaa8988567563a1a92ea6652f31584317dcbb90e605da072c0ced915aa93d0bc398a0e75c34ef3d64ea8045f150d38a72c8ab210ad4708ee61ce64daf715c58882519e5eb95d95e2858a3693d3e56282361a3344848ccb6ad0abae95d97dee69258b1089a20c8c252242c3f3201be784969d20b4c10b911f9a43e5a4d0715089d75211f594b312a5fae0c1218b40ba01f833d48f3291a119959e5e7dd5b7451da3bb19b1048c5c99d216695a71ee3b133f8bedbc69cbdaf1f50ea9b11ae3e576600c39617afc22fec6f215d74c647a8d903cba9bdbe6d2b8b6a6309f6751d1fa577ba1ba2903c5624ddc586806117b7f85c1efb06241a4ea2710e03f09ebdd0c1f946ea909c321ddce3946256182bf9e0f99a458ec0df71619d0526aed51020439e2236ebe51ef8c21db53026d04bde13720108a22c14010450481e014091282282210846714f1dbd817f18a76017f5549be7f1829a94b14c42860796dae0a913b4dcc8f6ecfb67b1475a72d89c77255edcc688052bbf3f84b854be2e6c60ef4a07b5ab101e956dd3e46312f397546eb6515648fe8757f3cb3d691d221c02faba98ec75f3b767b3c3bdd329eefae8594b650f5367aa483fdac12e2c04eef9d90d1231d3c937be2b2960f35264b659fbee178e0990158155cbea65960b84a20c16644f5be500de951ed30034f89936554a3682d4b26cbf9cfc3374694ad5ca570d7781d87489006496f4985a10f0d4d12e046f240c9ce5ba4a61b043730d0a2fc6502ec467216a11c085d7f5aedf9090c538b801503fa1ced37b67f7e409bdbc22c4471ccdb008a62dfc9a9fffec8c3403935c10a9cf8e4d4c2d4f155e57f0ee92eaff887cc3dd85f850f8e0962519d452cb154ed7b23e60e0fac9f8fb51f1cd20dbf7a3039603a0ba89e7b4ac48f3d5c5653ffef29371e77debf1dee47c905b62e1a81cf189263c25c4fcd21081504928607489e3bc93446f7f1a97211c4f0bedc0310330dd495bcd878e71d9c79896f78b7dc32d58de675371b73af8698bda94302210d38ef688307d97c05ab21565cbc1630e5a3ce5db11af0468eb6f04a6e436b4c77ad3b324b3d73e27dac2f2f9d71469b8e1d7b2e0595215d960d47b5af8406f9dba0460306b921dc2ef58a7848a71ed5955e2e59fc08f2b57231c3902cd6a985273572fc5bac7d58cc8129346d70483e8c045406f1237ac54cb8f2094ad36289c95240a907c3894d62cd62354eac1863b6862be4ac183262acdfe7a377c63c3f58c5525301bd87f495a5c097e342367ab6df82d87552ec957570f12e5ed9c248e5990948b3e711e2ceb84bf67a13fd4f3f374f84d7d155b3d4d0f2bceb9e0fdddebe7c4f74802a17f26ccf1eb54d8a63b5964c663a7e72029e5931380a302e6e8491e5db68c6057fcb53b65c11eef6b2750f40a2cec5ff0efd0d5a4c46c22bb66f3106e45950affa7bbb5bc9fc9115a34ad184a32f351375fd77ecba6d32cb314e458c26c8e2202286a24a096a7bd16c9751bba8779c7fa7de17bcbf0bf9f4172c6ff2d2330206f59d5e50b31a3be8cda4f19f8a010a65eae8894be48f52778a060aa00eb9c4a7b803899c4a1168e96b7437f309ab6426f645e137654f302f6dcaca793a0ef3047896485f57c0ccba676153f8d1172e434e434bbd604e79200c88dbf4bee8b29f78baa1924dbec077474de8837ad00c4ec76eff8e09d6f90f853e1fe20fb55399893a5aa273914d9c6b9395c73170f2135b6caccf6211c0f4484e5b15a699bd2d9f9e962844512cb06222cf217f493b2ef8b9d0ba597000d01eb197f02331c378da1274b551f5a28628051932e9cd06ff5653cc09f2b25d01ea7c0658470445fd1a31ae9e177fabd525802c0c9c5abd1522bbc64e029b70868b6616549d193b50270d81130b11cbf8fc1994c27b92ff9dc8fdb1c3b762fe6c1c26af124451327b2bd720de2e756351f1fd9dd07b1f1f1dd7380eec3b32edab6cf7ad4ee96d6bb6f727ff6dcff8e687d0ed77a4a8f8fa0e407b7dfbdd0f66f430080d2953d8dfae47e7cfaf79a4298ecf389e425cbb4d916dab351c6bcfd99dbb06d7fafe29b972d4b19ddb00266a555b23dc83e1100bfab9e4ce08dbea66abb90cfe00a6bc4a23928741adaa4a56a8b009fae356dcaa948269e48aa0cbe023e2349e678fc0d10d0b498f4bc433afae650a5ca6d2d6c98ed640ef05516cd071a0ccc63284c40d3011ff5053c6da237ff0c3a9159d36437c02d1375b99e46cb53e4dbb04291d52aea7741b5754057cc2f6a5b651c03488f9074b8ad3cd4556be55a619889cb4e56be332f0a682ea22b129e9f98fef00de9b47a35f3be78c6d7644d201330ef1ef34e653867c40a7b82133b04fe4e3daa6a0c833515b94ad47725bf354afd357967c710d26a0a6f7138baed8608f9930a1f40805da395a32019f6d7cb6f31446b7718a927cd91a94a88c13c426166819f2b989653eaeb3d1343dd05dae761d0bc85b5ccf38a21acf97a98890c0bd661e9dc190f203080bfd6e06ec603820aa193a156ef2c90c9cf4761f8a426c28068692fd98d11436d83324220b6dca93c13d50cbe37abb8a03d2bb0acf266f2a9b06897e6872bd6e942aae09ca214896e4e32507926d3ed207dcf48e7c8089a8cc74625e99afe6c6807e5360bc5815e5aca65e4a5841588d20b079b253a053f78a5b157ef437ea1ea086fb4f4faa6a5706c53596b9745d77d7b0aa324fa8b3bdc36f3a2d2310d8a757c5489ad7ab86bd8af6ea70aff6b24c187ce1c437aa4174d77404b5c0603ff90e6da7ef57aac7d0ec788a194399eef1a18c3bb4d79767fb36eedbdd5b278edf81b40d7df21b47bf5507e5fd82257f8343637f83ee1a01cddfd858fda32ff671d57e9927c0ef753a88f5ead4a10e442434036ae7c29f5d30c851c6392ea8469cbdb325820200b2ebcacd1ce7f19ea5da6c15b028ee7b68ba10db1756945c07224a7c75ae2bc8f28eb5656a7e560d07875c2150dcc8382f06390e7dcc8318d052cf687facb69bfddd540b5937238f7eda444a6e12eb098a09ba0923dab539eb35d6716c0ecfbacef8ac23b5ebc0b32ccbb22c6b82162404aa2058194c09a9f1c0cffbb2f99be7db140b34fc4d763c1e199a0232e385cca014f9f60f25b997b1f8a88028524c78683d610243b7d080edc6edd6a23f1ea67ec0c8dd7a60a65c51b569824687a39df7d3ef6a3bb6e1cd853c7613bad96c3e9a68533e5e10b279595c6204875310206dc408b9d968e88fc6aa34b26bacb342a9aebfdd6e14dc1c080808c87530d03c90232db5ab3a90330101f90f10101010104b030272b207132c0da8e8d6ab2faefc4d05daba190d73ec00c353c18434473b6f8005eaf2aacdd6a2bedbed0644edea050b463a08a062f30bc24710118874101c2cf447e341cdae783650e09878233a0bc44575a3915d034a83c3cf541a1f6c3f14b0ee5ef6dc4b9f7bf9732f9ddc4b20eee553bb36772fa11cc8ddcba07b0b775f6af7e6ee4cee29dc55b48bc1bbafd0f1eeafbfeeee8e2bd271bdfbd1dd652ebcbb93415e601e48b655a4ca0b319e15be404505c38c9ef72512f5b7db8d65a1785353aa10ca8a9590880fd889f7b150558b7480d0f48080ba9cb8400500110e247351029b30519e688121f38205a2ef1a22e459d65f3f3ccbba4cc4adc5922350467867aca0c3d1ce81fcae1663c9db19324040eaedd6420e00b410e559f71962c2b3aeb6cbe32fd90eabaa0ea43e19c9e0898c889f9ad76ab5292f36bee648edfa7cade64cb55aad56db82f1b55acd936a4ee278d633cbb23e1f7a517ca012a4620003440e508e416203ef0806cf55275b18262d3be12020d02865051e3e283db07eb8b7e8af64599665599f9284d36b26dc3cc6b62dea2b6bb5a92ec277f6a6456a38021432435028e343addda80079e672e6596fbdd63aaef522dd9a6f5b5fca9147adaff59fb66d5b9779f9b6759274d5678f762416eb2d2b2c038391aaaa6a8b77af12042f4b9cbc10c4c90924acd07acc5b775565b53cfbe33519d156093234b1a0c21917da0965b97ed468e84f5555211922cfbacfb240387fb51b7b9ccba81e87c3790d87c34df5a0e3d517296508ee3b47bb403ef3fe756f669bb54123df99119a7298da12e668d63d7e2684e1879fbd7ee625b1dd9bcfbcd49ad5b68c332f8fcd83f2336f19efec9db9cfbcec95bef2573ad5f0b3fcb3e3ec38637d369bcd98187f369b9dc0d9cc6b33c7cdbca85d0c7ee6ba253ffbd9cc7f82a28257a8305913f51ecd54f899cbacfc6c967f55213c906720202020202aaaaf79aed5c81ca94689950fd23061f36d55dbb6534ca0d03cca7be4e559969555bd2a654a47159e31ccd160d647238e2c1859b6f4c0f2e368f74ae177b22ca816d9d43be359969dcd5435b6020c0b516daa64795973b4731ebfab9135f8c0ce58d6db124ee66cc0d21054a268b2e44c556b901084ce581a584e08850e04d4fe005a7d090243062e21505b02c83650f5f665ba60846583e87aa75274c50607f7da0bcf7a0eabbabb07c1e359d6c508422b2f004173e384127ac7e9edd5d4d1673496655dd7b01bc8b66df3c33b4b23d1dcb0a4ab6d1bbbc122dbe55ffe95688efc6bf7812fddbd8dd4b3ec172d593d24406cfd4001361b816d87dafc4a08f9eab9e75b4bacacaf8e89c5ad1ea27e75ccf5aeef8af3755d572b5e7e7dfd7a3caeb623e6e11ef6017fedf9d57b6b5dbdabdabdf9ea2d1c12ab50f935e75734185cdd57efdfeaedd44f3c84f9b5815fbd7bebba655cbd3c368f871fbf7acb20aeebcc572f83ab97ef8ac1af5e0edf5f757ef5f2695dbd5cbdec95bef2b743965f797ef516ebba3ad3ea2954ac9802c2afce62f5249c338d236aabe38a744f707e2dae66715da57cb0f3eb10ad8415322f24e4a49090d0ab45f5acd0b32cabf5c3b3153c6b05c8b3ce6ef963952e8fc3e1582059e5c5db3cdb6c2c0f452ef89b932f169571c43a997f4428ef9edd5f547ebc3b8e5f5161f3fec3b2ac93d30e669eb0ac6f0a093f9b915392fccc7d663bf87ee6aa53f95aad2625c7b7af590e6d545587e0ab585932b2aeb288245e75b2c8e94875d2f7fd8b82da81e48991a917823abc88cd813881e7946a941f6c6000921b60b868c54065cd0f8d90648758b2a22031924dc9faa1a503c60d6ab0f40938ebfac2fbebbad2d67535f3aa8ac3d5ab52862a045d0d9d44e00d00c1cca090f0eb0ac5cbafab93b29b4aaaaaaa3a4962059fe0c87aa205f7ab939e8115bea8a181cc0b60d21ceddc84dfd55e66a6bc7ad3038ffcdbe5df300b6bfe336d18ee7083905f6f6863f4ab93ee62c70a33a6b081ea9142550932344048f20acbba5ed970e357263f3930a820c4f2abe7f5ea6ac8afab93b222498425fcea797552d73a18f069e151e4863344600ef57422e357cfab13ad5f6531a2bc20c64b0d5d7c340930f6cc9557672cdb84c8af2bd9048afb63802a63c8dc30e34b99ae116230f85025ff542b2ebf0a5f3b5066aeac9e00d0bc52c7baae2b6c8a83012201982bad302cf42026068a0be0b82186a62b40529872b47bb508bf93c5545555fd7c5dd72af9c3afabbf709c74e1f8b5f59287eb8a78b503162a43da1753d5215a5e6d69a7d069e77bbe3e23b3523fdfb59ca9b40cb094606514b2f9e04ae358f2e5575555775ec2ef6a2f55557f78559dcd5495a6965a5440b3757531a38d0aef0f480de38ea3ddebd71bbf93fd1a625dd7755d5bda9a330f61bc4a130e5355aa4c690d81c09cd1450a96de09c15edb1842056bb16aa6c205071ea28ad41c1844208e813245452ae8d7553853551567c81895389cfdea655956b959a1aa667ebeb3f614ce4e214c8a6c977f53c422bfae244e20e7938f82d44dae76594fdd3caef860ca096d5e84b182e428b5e0533f7dc01b9ffa99c3dcc2b9f3358d9fba59650a533787c4766fc517d26c09a6a99b39da3de1a99b3fd3c97c3281347cea6654bb213e75b3976e69d784f168f25a68e1533765b4cb43c43934588c6a17177c85c31e3ef59cd56ecea7e7569a7a96d1aecd53cfbdeccbbfec34e353cf40da85e0d3d3292de1a9636231c5c028a405aed3970e79eaf809187c6df8d47155bbb24f4f5eeacdd52e094fbd8f98877bd81784c6a78e7398c6d4bbaa85436211c9a73f419c338bbb7e3ff54ebd7fedd44f0d04d2e553efa8761df8d4bb8773e6b04c81b68cc7e6cdf0a9cfa7b997f6d29aa75e065fe1b0874f713ec5471c547a3af3d4cb5eeaa52f4d5738f369ea2d700e6fa5782b4d534fa16285d3994f9d45bb39c4141353214fd33475ddf01bf85498fa0fce6161aa82974f534729a0c110c2bb67f7170c58ef8ee32e7377772f890c9f65fd95e359c77961cab3edb32c7b6c418616b85a08e25557d52155afaa5e7bf1aa0bb58b7361ea55272a720188571d850a55c3ab2a1118afa27855bd01f32730f813279e7abc091326682764af2d214a1e875bf3389cc7e19c4ea7203cbccd2684c7db1ca7dd9cb77999a3818d764226535fbeab203ebe04ed84eca592379c3c1e0b4f7e6868a8341abf74b2eb49786ed7822741827642f612512cfd47945fdf5f8188f02bfaebbafa0f90dfafaeae40aafc5a2303ed3e4ded0e79bb8fcfe7471af51c7be7c3fb96f9f4bebde7ed11b65b8ef0ed3dc31e62bb3d459c2b8098263eece0c597c5e9a8bd67abdd9efaf61e230b48bebd87abdd9d6fef5142baa7d3e9d423f5ed3d50eddabcbd07d813248d7a9c70ee04ee7a9ebe3d44b13dc456bb218ced218eed9263bebd8787732e8a6c79ca31e5460c31d8386aefe9b5dbaf2f47cfafbd8747082aa47bfa4e5f08ad6f0f81d5eecddb430c4310492392c9b78790ea1ceaabc07721aa7abfa71040167e7c7b88a8cec18eda79d490eec9e3e9fa769e30edaadece63ec5cd9ce73248d788abdf5ed3c4eed3c4fed96be6fe701b6f304db25c57c3bcf8b730958c18727c01884688047ed3cc276bb866116b19d478b4707e99a461e1ecf7a3b8f8fe7471a65f0ed3cbce6e97dbbec6d9709db2d717cbb6cd82e23b62b2be21cb94583468d1b3980691375d42edb6ab7693072b57b736c97bc32d2255342ba66d12ccaa4be5d06d52e90b7cb80b2206984c1b7cb9cfae9db778aed3b5bed9637be7dc7d8be7394f1708ec461c88c2d6b5c8871e677d42eebb5db33f872c858f87dbb8c47bbb16fdfa142bae6d01ceeec60b54b81b7efec104923007cfbce8b7398b823fcf61d5efb4eafddd2c6b7eff8da777eed925fbe7dc709e75c4879a16222468712325747ed3b4fedb614306a2728a5a38674f1d454d7b7eb84d131ea1c492314dfae536c9dad6fd7716ad7796a5707d8ae136cd77971ee0133bc108a39b2dab0396ad711b6db4b8659c476db75b47474902e6ea1051d1edfaed3d46ecddb757c3a3fd2c8f6ed3a3c9cc38d757adf9ef3b6e708db1db6e710dbcd29e29c8b9f0f273c65e9d09261cc517bce56bb2d8391ebd89ed395a38474b10822487d7b0e54bbadb7e700db7382a451d0b7e738e11cfee19ca76fc729368d6fc731e2dc00785853e4edf5a8021eb5e31cdb257df8f61c1ecebd62a8e1b1e498e44b98a3f69c5ebbadc49723e787438574310d4c0347ebdb71b0dac5793bce1087481ad5be1d47aa73e7db41a59ff01d4ed5b7e3f0da717aed38be769c5fbb64976fc771c2b99ce38b1e2f845435158fda719edaede0b7e300d57c3b4e54e7d0a3f6981ad26d3264babe3d16a6dd99b7c78cb1236924e2db63459cebe3d1a93df6d42eb03d166c97e4f2edb117e75cd8a0b2024450062a1ff88eda63c2763bc9308b0884ccb7c7b4623a48b7a95089f1f8f65853cc17fb9146b46f8ff170ae8bbb58efdb6f5e9c7311e4a8034d97200f1a498eda6f84ed96207cfbcd10e7482b56b0a01196600291ca51fb0db1dd22ce8598e1842765badc1005c451fbcd56bb1d83b1e7d84357bb3ddf7ea384747b6aea46eadb6fa06e803741d2c8bffdc609e75a78f3e42284202720312ed922a3c39611e75ce8389205868d22255401e1485aa1320185274384404e386abfe9b5db487c396e7eedb6dff0805121dd6ea15b80697d3b0cabdd12de0e1bc288a411fbedb017e71a08147e3b8cd70eebb55bcef87698afb57c5fa02546d493244980e872d40e7b6ab79100a360c176db6152eda26a48b7456811babedb5fc62369342be25cff7e5bdffe726a20cee51b30627883a4c162e488ccf2adf4011a1dc47015a570386a7f09dbeda86116b1ddf69756bb3a48b754a3e6c5e3db5f4d2fdfeb471af170ae79cd7bdb5161bb25b15d72ab5dd2c87544f2ed6817aa84744b2c58a050201a248d1ef876746b0b3d495f0ef457e4db511eed5221ddf2ea4aab5d12de7e0e4f2269e4c0b79f2fce95c3f2e47519e3db4f5ffbf96bd7cb922d2d318e654ca872d47e3eb5db4780516770c8b79f52eda26a48b72c52a4ebdbcd30a6b173ed6b378fa45103df41a310c4a84973c38636588edacda7764b185dfcd6208d152150502d483173d46d6498456c37b5dad541baa50e1da6d9d46e90b79be68f34f2f92e9df2dbe58b6ff2d9c408724404a91e211c39ea2e62e43ab64b0a8174b57bf3ed5909e9962fca1759eadb3354bb13787b06e62069847e7b76c2b9b2d765ef690b1fdb257bed92be1ced9907a642ba0ff0a2f5ed18ab5d09bc1d0fdb317105e6b5e35ebbd8d78e7fd809e78aceb42902a3860e212e1c3510188583ed58aa5d35a46b80285d61da1d613c32e1766aefa77649607b07dbc50a44907421b9b2830f78d4dec2761b8661567b6bb50ed2b580ac956e018f6fefa67645787bfbdafb471af5b7370fe774fd769b6f2f8946ae7661dfed6557a984745b9ab797c0268d4a9cab75eda945ff40f9fef98e40ebdb1140ba11a04221268052e7c8623b5303f12e4e0063e586199c487022e6a8fdc7718e026956f81569941932e5a85ff8213cbfcf97c885684215d08476af1792bd10d10b3992909090d0991722a209e521181499cd66b3f9889a8df6d3424242424242424242b61378c26d369bcde6a4020e3c82b469e2e168e76f6b22bfabbdcde648ed0ab9cd956c36136e23beed04cd66b3993081a5c33674bbdd6eae03c1c9df1ce9e64cb71f9c437d377fc9c4fced76f3a4cee51f26792f7405420daf17121212bafaa038b5c2d50c2eafb7d96cb71cd5ae05ae7a0ea23e23b5c855cfbdeccbbfec040588573d03c14735e7aa636271cb88e455c75cc7a3eabaeaf809187cd1bc1ac1ab40a05ac111f3700ffb9c5e759ca35d9f57bdb75495c8d521b1a8f5aaf7967643bcea1d54556fd5fbd74efdd4c01eaf42f0aa774f55552fb7542f8deaed556fde9357bd6594445535e1ea2b1c4a79f5e7559eca53875cf5b257faca5fe934c3ab0ebcea2d54d5979852a8ae62050faf3a8b767b5e55cda2aa7a4d755c916e85c7afaae6505555d57d509f114df8165860810516582084e2fba2a2a2a2a222e193a8cfe572b931efbaaeebbab413b22cc40a7e05af0a2aa860eb86e213bd8820782222da0959b641cc9f3871c3d39f709c762578d989134ee66870827642f6bad2a1ca8613726c0062c27b4e9e50cc9b3021bc32f2264c3829bb7102e4873c0f099d6cfd90fb4342a10a3f84e287866e3e4f5aad7921cf42fe927a21c76912c40bb94fbbb49f5b0c86df14d72bac1abecde62f12dee63836ab1ddef673c34dae646145f17847b7dbedfddc13b209b52a42d071c4cb14931b6aa80da5964338b7a11dafda6c36dbd0d092f76f372910fe767399cf8fd48fbfb97a9302f3379ebfddd05f8ca71c1a2244b3b5e88f86fedc3c34244396bfdd6e37e1121b7fb3adc015e5c78e2e2544e9e1020eb29beab81caffa90c76c4336db05f9833efeed76bb096570fadbed66a3c91a8024c845c60f285e0e43f0edea55211afaa3d96c4a807f73e06fb79bcb9afcedc4df6eaab3de3f9635c17ab9a5dd9bb35e6e198fcdf3f1acb70c961d0abec2e19a67779e3dd993f592f5b257faca5fe9647cd64b202ceb4bac33750ad655b41b7bd657b0f02ccb065b7201c011a683c8dfbd949692c46cf93c292442ddc8e03aacbad47c84cb1cdbb0b20a020b8d1faf65f473cee88827af8a5d5ef6e45571caef773829aa186e27c6ed072a1a646223a80002c11264490d3210c9c2a146c6ceab3302161c42fc848eece801cb0a8525bfa3ecc46782efa9084784735c081a3a5670fc70f3e4d51124bfc399382f4e21461d8c54dcbc7123c36342e60392ababec7952c8c298cf795258c4671a9971247633c3013b804b9ad4f8c0870b3a7ce91b3132e7fce2f28d2a55543158cc63b1580c5663c70756bea069a38a843630f3c92b365b605f62c69831f643ec6606a925d331325442614c64dce056dcd038420293345230fcd0c6490e3a6ad07105839dddddcdc4f8e41bedee2ef2bda44361536dceb74705740093c2568fde1563141d7410bf4f9a12ac656a9760280d767a8a1c690a5040768c919221e4a887df30be51578aa12d13baa484732fd44f5f81732f9a9209950114b0080c545d5628d33898b043a9694a4b3aa415295a148df825f3f9b90116bb9ac2faf3c9aba9e331d618934526dcdd3dfc5c5492dd2d49e2cc678931c638c3ca5dd197dedd8dc34139d3ba614d76d3769924652deedb4d7c9e1ecb37258a3e07e49f8e3126bbd63b0f32c634d2bb3b03ed026d1c19267ef22adfeeeeaeda01e35b9784f42299326450a6802072a6090ae5c205353a9a602983e584a3865285c214a525251c13063ed0079ebc3a53e3759ebc3ad3c2ef70c51709b0d257a4a7838b041e7858f2044bd149ae253c941cf99184862e3ed800e3860d3064dcd47c84cb1cb6a6fc416f84e68b3b714c90840414a084d00b620a969621565a804538221ccd6f5e0b5c38660521a382550d375861317ec1c9705c3e770844b5114e548442780482232f6e78a49b2bf8ee55f3112ef3580d10706981ea070b5742106343958e3441602fe742db9fd64b17ca3967f4c7471c7fe73819381c51110ad8b963f78ac5622f97e5189fd1a658cf2a0b8e2431d89342235f746495e35c0cf6fa19d966c30717ac2f5443a7bec2d5ca170d9715656b862d33bc57476517def9aaa243f24e8ccf2d33af1f17accaf3dca2b185e5db71da0d2123b11a288b48397d48f2adc30e324c62400187181cc210a496b24b1629664098418b480d5050b0e168e74e7e578b75cff0dddd5d76e32cc03fcf2c6afe3ccf538b0a7f66fda9a5cc9f3ee2f4da16aa3f5da85d0bfe741c51bb5bbafe7414422e38fce948a72775f1f1a713e0bc2942e4cc0263a83b02275a701c65f0512c76933efbf4eeee1778f86e307fba383212fe749f138b973f5d6d17822fa730c6b8a1c8763f671106143a37e50b4d1863fc3233fa42b3592441bd9defeb7554bea23089f9e4acc06766f8f921f1151838d46065d4e90fc328c6b41d8cf673f492e5237fd3ec416b02191126670f4ddfc30d94f494ec58422384b7ad62a50b42f04fd74af79f52f59f1fff42fb39cf9ff3fc82f149c3de6e799e52433259fb79aec041a59fe779aea1d1468c55d4b0c8d955bfabfd799ed8cf9376fa4b76faeec5010ecc4a96db152ace92854963d16285f1f47c9e27ad45d74a37692b56b420adc0f8ee7eb59b238f7825908d183962871a7f87dbd59eec52238a0d628e4872e7f3a404f957cab6d6555555b565b52890617682111cb8a73e6b7dba369b8d78756d86f3eada6c02f7d4279860e61d8ba5f09f9fb9dab23059d7f58cf5186e8c4bd2d4619d2559dcb32c6de701d1b39eb678d5d7d65d4c007dd533f033dc92bf6623f675c6e6316589d4595fdbd4d576e6abead9f8a6d3eb3ac6b6394c59624d554fdbd5d916e7316589d53156d7361bbbb6baaaaa411ea34026c4b22d9306e9ac5b6017cfba0e4f00c5ed2e03336fc94fdbd29d659dccc1deeeca7711c260d6ddd396f5598bd974e6a5efcbd753c73396a531752d9d39dba6a97bf9339cb42d7db3599ba64ebe08d7759b7abb2b7a9780c6b22ccbb25ef3188a03d4a2525d43835d2bbd7dc86a5edb92c077689003542a479124705e42098a1e15be5e32d9cf8fbb1228fa60f9e58db67bbd80683b996c02daeee7a7a5eddc6bb41daee624eb6c597444241500ebeeced25060ecacc5a064b20e22dba13ed6591a8bf283681aacc076d3d5c9b779e912ac2890a79d5a5d3b8967f114d19ec213ab6ba58f68cf61d74a6f49a38cc2c90b9cccd1e0029f394bdb313deb693b6b77e5cf5422efabeea67bb9a6bea6a99b64d750acb41d8e3af3d5d9d683da630080f6ec920145963a05b2eaab5b20bfea3bf463a59a5fa5b1c81ca43e0132a545a0f600f0760b69c485bce074224b948e0115141baec23c6922e1a8a9be44e1e5e9c387bfc09d02590f798c021901ba365c3d162340d7d6ac7575d5d3344dd3344d5335a5ad455d5b6943bef3802cbeea436a1b01b2f8290d02439e819fc6765d2f3d36d466e06eab7e8ccce120031ff2b41d721122dc6d77e5bb4d52bd087ff202544896285d84ef885e840b750ef515b5abba08142fc275a491052ec2d576895c840812beabbd089f9c0827dbcdb908cfed1679908b70d487d250614a2b7fc5a940ad80e6a40913284fa5ed945ef5d46314c8525dc7d2b4f6acabad07b85771ac8f7094376284b33e6b77237e06e43b9f9dfa336f7de6af766b3e7372029fad2b2d57b56d96bab542cc128856cbbf09da0c856b6cbbc37d4a63d99636e22570d547b43b0f705fc26925ce23ca1bca4af8ee3c96f0942601d55d32cd5fe6a44ea63421a69f66098f09b5e593809df052e884139def8d97143805aeeb5850fb8eeabcd4b91b002f8d48e21f3999a3c191eb3a166b9c196d4712674533d7f56c36735deb70dabada4600023327e1f9a95d099c04099ff9daee50fceab55fdd3b870a71bfee887ec509f2ddcfafbe537f75a122d2e8e640be3a996331d6d576277bb5f5b4259f6d279081778f6002e53b2a2c856831a0b67c5c900f551dc80df2116dee5aea4169900ad4923fa26d223254887343d5d6b62d52d752bfb54a248914a83641eb695107a5ced2ca594a9b19f9daee3c40f11278ea245a238f49d09212b4f909075901545f7da5490085e76890e60f409bba514b76eda8444d9546762d4783a715752d0d6ac927a2a085b5321c943a4eeb3828755a4b80aea56e41cb449248fd444b76ad82d48b5ab26b264ae468b8aea53ed4eec8a2aed3b6dd6dc9d7e59f082ffd0cd339f5a8f40cda5d03bc6fd7313e066d046a0f001a0450783a819f2f00cacc2803e492450d0a47a59fc1769bc9c724581db3a9b72dd9354cf3d63f25bbb6d276aaa3701d565bf225683da8a1a0e50bda3260acfef592c97e7edcd757ea66627cea23c895560403ebc6890c3474843aefa73e82bc823145c7060a64a967a7544d5595b6f3a0f6abe71f46232b7f5d653f3894f9d447a4374ce0a38674d1201aec0a633c924664946ff729b6cfd653b05d52d82e39cc22b6fb68b59bf3ed3e3a48f7dc3ab77c787cdf9d75c3a41729a9d8dddddddddddddd6d2586955ea6e11253950f3da5bc72f7b0bb35a01a663c3451b3ec6e26409349b0afac5881b54cd334adb0ac28b630b238712f34c3acb034b0caeaeeeeee152c56d0da4677b799cda1699edddddd8d7548465a929ece30dd0cc39e970f870c7d9d7abcce1a88424298432539f97d9bdc601a7a3b6de4c118638cb10633f830c65dc6c61ad0f0d4fde286a4d7d840f976219c99a71d10481060d8c9fda3c4345c62b252ec2072cb8864e5c8ebf5e0eb20b26fbabbbbca772bd1007b60485404a578dc39c1850c390c01e248a54acdf108137bbc7066273aa8e900c61829883167f43c9348e139d1065ea2a22c2cd3c43b927489f92025119fac82c1484c42e6ecb9c2bacabad2bada7215e68aebaa2b9b39499a9c330452120b4ec79f24a619944133334f15308803a84c374c7a9192d0aaa8a299d1332865e61da41ec3f334835272b20e52d2d094612e8f83591ce81ca7a80e22a5aab0909cb2ae82c71b9caa30c0c718e770b995c0789d68ac6acb747adc8431c63805c618635c5583a84423e74609c7345c628a214c0c5c3174259191a429498e243ccc989829d95472028f091b26bd4849efd30b7c83effb0adfe14b4473118e13d954f294935f4a5588425c36f2783c1c486e4e14574543d66337cde38e1da6f94a71e33c95d4f093d1d349981d203095844cc3252615a288663e4d25c68c66254f8fdd348518638c71074a67c9e3f1783d1978321393c226bc0e227b2f9fecf7e3e44f35a42668265f188e58563271c6f9441be3aa6250a8030b9433301cbe0e4c2c83ef3cd1f2c5195651e961b2dd9e18277664339b39bf7008186331564dc365598a3239a0274a5651f54862539b399b2970ee4087a4a2830234a5905d898a995896e2f8b2e85a7777e71466109dbc53242a6a430c9aa6699a29a0643317733ecf9dac93f42225117772945ea6e11213103dd33473be82020eced0f7d2d1c39df98a8d1c3486232ad28007c45d5d01e144cd9b2082a6e943ce3907049d1d471e9be7a9eb8ac15e36479d19d84b574c7a9192ba822ebc8f755b2ff46dc333f389b19430657c5fce144315c50e54b0016281994a45a6e112931a5e2b55c92954a8309a660f59288a958a4cc325262136cd0cb381b51eefb8916138aac6bce07b8c4dcc6245139dee15c31646162d82e8adc039ddd9c3fb18638c3136628c91d60c73c622608cb1785372cea6699ad9cc307c6213638c3186b1e9a13a21c47834548979b2c2a465aceb8243d639d595f131f1b213011a2726c71d087e005281f0fa21c3a3c2f10017d1e9c6013344243345d9909c068e4f49787c8c429e9e31472a2a38218c432a2e2f9e974a4c4c96c64775dcd939d303814727cdfbdbc9215314f2c23973eceaf18a1161b811e220f20533de90f3527a99864b4c65de2ae20d529a63559618d20f3e313ca66e98f4222571fdaadaf40cbbaef0209d79b212c1b88384e6c55d5939217119afa48612e0505365079f2194b698864b4c565b4e66db41d73236b39a2f3ee78b074754e46408cb61aa6973ca7c45580ea5d36c238fc73b61049ebca3147cb209165470cd0f59679d144315c50e5464ab36bcc73a33f378bca73547223873744849ef934d7c74bd3873cd939d1307d7bc279be060a6e840cb27bf62492f52d20932de1a5de4f17826ac31fadc94c0279b18c92a811904190f7486a5e84045b642037c9c02e794f08e9ffc7a29310d9798de279b24a97a95320b471a6874d84f4f360141ebf1d3a718f278bc14d80877cead262e74955b6c7670c04c7a9192cae1934d6808530e5f3f70931105211b310fe4572ed3c31803dd69caf0c958879454e3d8bb713b4dace397e6572b099798844f5afde07beca629fcb3eda06b3806ee00671ec9395f250e63fc6a71864da89a1e7b2e7b4fb60b94038e9c95d614cc6c0e4d5337019614e6aba2d8018ad252fccee7b1558ab3038c855def8e0f6eab2d5adf293ad0fd0cdfe2892bf8c0b802e7746b78ce6e637793119219922162137767b3711bc9f273f6bcc0e2e04516c62b5ab06011a33b9b5178728835bd35be353fd3344d33453673ce39639c31c6352cf89c9b4491e173c6d944af5e67e6611a2e31a1e9751089c6f79261139b18e79c73ce1967dd998d4435809a325d9bac365a6db640099ad9888f10e70eae084754248628a628664b8c51cc710c0f3d4df377839a3a492f52d21927f3ccd319a0ece734b3699a26cd488d9c1ca59769b8c46486cb4c57ce18638c31ceb8c8b1e7c4191215f1de0e22851cf086419c31c618e79c73ce1967132dc2a5e7ccb1a41729894d151b2c365938e79c73ce381773c618e79c73ce19675d91273f372f0f0e600081a23b330d3b309d11680c76503657b4606154ca458ae4982f25a6e112d3982d63c2144901ed40c5311f8f41d90fae48af01f32c9a7932cd004d334133ef0fc638e79c7310678c71ce39e79c714663222505c1154417ee34b7844033ae08475494a6294d0ed43ccdd3345b640cc4fa414dac4b7a9192baaa3a88dca00beb6536618cdb40799ccf7ce68c7d055ec2d34a2fd370892908204140790af4c440213e669962a8a2d8818a1fa236f8418a45d730c618e3a69531f10a608fd79981c801048fa6180bf3c60a230ba5252534857101466a00215b7524118883c8978d1c55eb87c24e5a655885d8c24e043c38057920d03a5ae1355df1fc60d1c2b245c603ec81a256714b0807b28a38887c359df9698007230f471b36dce731c618e31d9a3a88dc21c74b6683c8033d5ea0bc44d9a8f209d125ab8b960de20fcf97df17271b461e99d2cb345c62d281ab83481dba5e593264594d3f5939bc96f38bcfd95f3e3b9f73ce39890b900e22a1a2a4aa36e08255c3f190e95cd9ba62a412f2e44879828200870a95a71fb78a6969d29243879b9b1eb836e8a1cb8a0e4c374c7a9192b69eb680b21b60426081ca1b608992dd0042866601da38955ea6e1129394230e225f29c84cdd30e9454af221b8810f2f119cacc4b4c1972d2558374c7a9192b68ec29d567a99864b4c538238887ce11dca0dac18f38b83636b032a452110465b0ee8f03471576292648cde289a49010c121a502368edd0b3ba31821943e94cd7eb547a99864b4c3786327cccde0fc7070482e304cc69a59769b8c414c441e46b06198e229a272134c0c1bb2243436c079652e631cfe376dace831135a4a40f7c1d44fe5e4eb2a71f6007911f046ba7993b066aa23484268da1498368d228c6b8d07c0e33cc73309a120e2afd8cc1a6c60ba57c03e7444a1ae65eea23c869a228c44ca22219401c44da60c2c2eae1831e809cb0a3a7c808e13459780029890a4697d0cca729f5ca2846a97a32ca37c9e29f79cbcc38f49c52a563e62ee26d991de69b0997c369962f51d151105d3c19bc265e8e1f1e0fcfe7941c4ef395831259a2f429c4fcd2bd019091b3d9dddd354cf82e4690c5584c6152799dd9c415e1888a84388804a184d33433564ed6e1925ea424118899c98d89955ea6e112d308bc3c26492ce31ec6baa71dd4d4f94cf33c6f6e68296c90517ca84243c70c2e2a3310f55ee8291cf39399380022009b12902605255dc0187b58396a293cb22e698caf3834f258d1e1605387e3a7e5dbf169f5e809c00da291b5955ea6e112930d201d4442d9889229e19c4e0b87084a5d8e0034f1c827705a5e76029f2ea864ca1c0b7350a22112910001020043180000060061240a032d4e4ba6d60314001145ba3e4e624094c7a3b11c88612004310cc550902104108388310a319434025ed93fcee7e87f9c66f00beee9a1639d2a2d3ac28ba8c8d7cf7302ea8c37b90a5936137f9e47e1cdaf82f4059b0443e9c4d92259b4326d8af8f81b79625931110d89b8536e393b90c61750c9dce85d9d230164d29c92d266f0771c36ffd9937e84c7b2e7fbff6dcc84706ca5d60bd30a9115ccc41f4f95c51e3a997c5c7616b2d6b5f1296f24d4bdd7c9fa0b3fbd92c641a2b4fb9f78fb8377f5f1d39112a50bd8a31155dc93a2ea21eaad8e7b35d2731d1e72da01440f353e71c18db90c20aa094753c24f21cb6c39b9b81723480268011d4db702e0e9dbf363150b07d8c008eb0ae19403d4835ebc17b34d69024f6bc62d085a23d672dd3b7b337ab20c85ea139da1080be303bce5823c36717d91aaff9712d1351fd4e868ae283bc9803cbda3df051f484a6f1133ed937e7d1c45b5886dd09c1437b00048db58a05674e2e832c13c9b13f9507023829492e2fa5631c6acdcd32fc71b10877a949229e16c08034e350d68c11b9649f47e8861e44d525e10ba1662f6acbbc616fbf13267ee9488a7007b700c8d4e0e9e9724a987cbe11e6ea3681a5097bd3618a8b3b210a478fa7aa3c854d4ecaff31b9b3827acdc6aa336512c4a191572a1a8ab175a0712664082539533695f29ecf12192f032588442b3ec62197a311fe2788c6eb882743a5c2adcf55a59397d7c1ab985869d629fb5c7323c48977bc25b1286d779a3deea9f8714cf0cd5bb7f9439e4a81f290ba0d7774bc7759e4f4a5580467668a2294b3b2e46192da3b90ea7566e809ee369486162f8ae4a35caf7446f88ca2e3699ce3b3323f08f830d69b25ffadfc905bcf5089b176d732500ecf9ade83adb72c23415d2ea17e02ed0d15d92e050b088eaf1fefaf6a59493035ed189de7fdcfcef1b58f478cf84776d9f0afcb18871da5346e6d2aacb5ffd1065f05a37f3d8bee84fa37b5bc734c58cd103896dca927513ee09e8eed790ad8fc7fd05c312725e8e264f89668de546548166c05a5fc8cf82a67c63e8370bbf60204a19934f4e216184266e3b925bd17c8ce97655e72d438cf1ed0ea9e8443690315a528bb534af25b526ac8a0416d57a6432d432978a391798acaf121878e2d55086eb1138b3be46ecb53d54383d2739b12fe1f039a8a3c479aceb85633a93db654d8ba7faa68d3641c06b425feafa0df003e7a30c936096b4be2008c1e234c32de32ad3d1e2adc8caf2113e34aeab156d25b459e52e01a8a080c5fd337e9a8b9f6d2bb8a14e8f44e296c68ca39bd3cc3278c64757c6dbae75e4c6577495f1a17ba022f819705c3a3aca0f1a8eec3cd877753109b2214d56c3f87468aaa4fe2e7caa23dfa3773c1f0511fbec951846f0ac040882f8f0e888e09739a84d328a8dbb630b7be657b9f0528a514353742ff9423c8608e43e207da253c9697aaef75adcefde34e0f68f907fb66f0cef35147213531bdd63bf6aa056408a7dc4b7693ff26d362264a8a63a34427508e0085a3e28e32655f73bf60036db52ca5f86ba9f8f09038d853acbaed632d2881912088b4a954167649fd25418d482326eefd91a75291ff27748c9309131ab3b20c641ba08927754e0e4224152487d9a704010d784f1804494c3c66ae96034edb621c5cfc716f8049879304fc1743ac4d9c91f7e2d640add69bbf75340644a2f9d58be9c0c0bf2ad28bcc80e64caa43cb771f969e162128a8f1360f95cf9bb94cfff925fd35891ececdf3ce5db94df34c23ffcdfff668707d637605c56f7f424df9bb505ceb1091ae5edf054608ad90652479d379427a6dde09fbf31256cf1c5d7a0f59588abdc42d56bea95980e0839c900caf91816dff7bc3c57f06c529e2a8f7e81480da90d0ec6ff23b8ab22e5b344ae373468e95a655f15b5cf0f1095873e9112e820407b8c7efd3ab3c51e33340f0d0320ca4afc501995f48cf042379ba2b9da5e93e6c5d2fc3bf88fc3ac061bea2a82ff4d033e536033cc9b1ff536d84c01120fcdce085ac15dc6cffcc954fd329dd3c13584e78a8e6e52bca532d4361757c4fe53eafe30afebb3dee524ebc9647be979ab12df9ed7d4fe2f379c7c7ad2245bba1e1c4c165a54e03d6ea9c2c002490bcd78ec939aa50cfcf4f8103d44c3c6a0b3f8184325d2220c60335e1689e3f79a32de3fd4b531f93ae831a0342f6f5c390af98ca46a5d24e9f27b78591cf57105692c87582eb9e7607ba5dc9d0429d39edd43431b62005a88dce7378e79aea4e00887988898deadc17a881676bdd85c2c00cb4a54560d521a79747b2372d646bc5798e8c71096e1a2b04821122e96e7a81a68d6b09ad934ceeb01e861c5f4c6aaf79f1d249e22f2f2c10a11258ce933cfd9a03d9cac4b631190bfd948fc58e92a36a3c502b048b5015653d39aab2243743a88c58ca57ea96b3fda59af9443ce5c3eb319252577bb89a8a368db2beaecd6111fd6d42ecc1cff01b7ee6f95c8498e67090e84a972bcaf2387b0e092e19059fb0cbf6cd5b937ca8abaff1611b8367aaa896d796af6a33eb477cc7f4b1376d42be5903317712f32018c75f313fe49f06ee06199b1493513d79cfb3a6a9a08c186b67b84421173c8f88b5246f251a7fec6063df87ebdeccc18aa362fc3fac8d9aa20b6f841b55b4eef9d1c1ca07af346852bc8aeebf8680076b994b0bc926cdc6311754237374a8b0ce39e28def2f90beed796a207d9b9a50aa0c58e7883a9ef6b2156c810c05b90af5a71b3de3ec2bf6feb40191a410838533a94586a5c9b1581aea6d6b949e097f90650c40fce038ab45828bd1e5f20ce3cbc6eeea6caefbad8b9066a67aabf8e76d56c14d642ddcf07fc9f74442bd02b55eda3db635b8dcac6ef3f6e0e90c0464d8008664a4d2a2f511c23b84b5858492a2192e059d2e3b931217d87d5e83941027c7e93535db2425b4c416eb4f7dd7135ac00b6ba9514f0fd9d7ab96e656a9e7f074b6b9cbf51b12db3704dbe4db8279294607c91a6b640c5e64944e25c8ccb1c8e7c5e3d91ea0fadc4d22914efc59a5817eaca44b833c2f92115c772764efd60c3bd785aaa19c717449c200b37e44bf9561c5acacaf50315c370566e7d29809f70dd99e74221383a0184207028ee9852af42a15afd925c8e6fbfe7b97e295ad96236c3700d869a6fb6d1eeb8d30898252189d7bb0f748f8bd913bb5cdc2d3820887304bead809c11b8bf6438fd7eebebfcae86a29f2d940e867b90077deb23b4e9908171a39faa8dc4181da1b38eb2de60a3816821aab6a0c3a71fbea702c66ddeb6209562a9e2c59b46938f5269c8b435294b1e2c649f32eb5dfd733f20740e5a843ab74278d8b46fa9a4bbd56920c223e241e9707127d96267ab0907a7eefba141d3f074a64877516973d7c68111dc51af66daf9c27bf035abb24ed7b45148ee6db61239c28c97816ba0a1e6db6dcc1e8eac6ebf7df3b06180b18491a180dcf265dfebe03e9ae29cff3f6b8c5a35a7f45b124321724292b0b2cc59c2171c7a963796922d24d93dfb9a6599060456856961de297038ebe015b62c29bf2c9156377e61106f04ef52a3708d1d903048466b63be606d1f51616642b76c05dad6deb07252d313b8778199463bf87e7add6d3db4759510657176b4c179e4ef2d9607400c10fef656d19bb78976ad8b1665aa548bab65658ac35c71270ea2959c564c7838fdc953ca937e91738b1dc93a444a2a1ad689f227c3beab847485e3984c26f70aa28b96bd3b392450d618f173d88791a2f4ca1a39d068f9a72f4b0f1942e1702e8ecbc4cfb1ab344632ce88f73089f32467c25a4575ef542a9e614b5579593645fc9e4892f952559c170b623e6328739969536adf2ba10c75cec8baf40e199777debcab7b2ff94046de2d08f81248326e701a8099accf0af0cf71738ca18b71ec9ac96835d62be6a584e90c6c852d8eae5317be5fdcdee7eca0f32262f44495336a49207e128bfaacd9fdb3fd528e6a722a535b294e07b1b5cd66fea6ae276860c43f33173e93935f9e86ad6775506b770c950a7575e5c2c444053e3f292d6c377bc2e4ce43764205a127d2f0fbfa273f7d9fc873049b857ce8da4554856013021bb18733b56e34e61113b5ab2509ba6ca8f0872cab939f844fd201f249af82e5eb2cb8b0644b93b1a8c7f30b3f86d0ef4a16e0268bac924c98382a8444b6006930d93b586d7d3640ab6ede41a6a132598d8a3882f03d6e90d406a0d370736318532859a15c89b498d92cec010722a9d28ee47c548b71219067abdc6294abaccb7f814694e54581ece7af47cbfc983ea5f8e684a65b8e25e58bd0963e0346f7463ecac70aa26fdaaf7b96949891d6d2028926a6bcad377bc2b8610c668d6954cd9a0586b8259599511a60b3145cecf3258cf7285ba14819d82ea177659f632dc82baaaed02a3c9a1ed60f47b1acc4dcd33c66235b967da2622a5dae34d1a31f61a3feb2327dc4790dbd2ed27ca34ec8d97d28a1e812240eda44bd125a1604612821d55a65adc66ae791e464d87050c55f95bdb9f08e93eec181c30f1267f6b3d4dacea0ef46f598bf404092710d1364439cb4d297edad7a0ee4c0490461e54702cca0cefadc972e0309367559f594a4a1e7f485ee3275ad53bb6976b65e24de000e818e72a30067268d4a47f7361ee970dd6580abd8d36fde24232ce39dc345ff63f9dd1d682785cc1034f6a000cc3ac8a50d2a0d309bae200f08fd3b51619c6461ba4a4031f0a14d1f34b5502c6b86c0ca981b487bd0ce7933883012350744f1e968860b44d189e324bcbec0105a32a4c2a8fa633a392c98d885801c2409f2e75a2664f941f442575044301904b7008a6ad8ebf7801bce8bee4fcea6a93add16645b1551066c22e1bf22d5f60cc46c904a4e56f9f2a4c7bb0778aa880e1146c52e8096194d82d23291578b9f5b8d5d6dd1ce029983415de41e482dc77c5e1300dd04722b518045aa932017e1beeb09fd1f64a79b91bb5360d1dc7e73b121ed7ce771e09867dc8391a7c27ff0a04f8b75a73e735976a5d7a9454136c380e0cdbb5e543b5a4b48aa9fcd302d36b68c21219e3aaca682259a4ad89d72b58b76c1bc032efbd6c630956752eebc9c96d09f7e8c201a6f759990a2d70cf534735c1b3d1e921a4bce6fce56b93a3d747c41d4f956c52199bdacceae7fb0c24221224753b9ec14f46dd2dd1b4bdb264f07e95e8248ae881dfe574f6dae55ff0c794ae0ea75acb9cedfdb9f9c64b97d01cb32514374d16402754b08dc79c5e42ef6e6b2e0b77d832e475d7c70ba691e710d20d696a2ebd1c59070842a93e1d028c9ce563a0b43141b2c8791462172c792ceb0d64d8c2394cb454c443b3171434103b5d5af8a5c3931e220d09bfccbd11c9ef092f4a81300949ae33f0d266c6f4779d7097e0235bce5a1a10876688b14863854570ca35b21f08a1b3c1506e6e85055cac95d977d7e7cf204d8928089e70ef00cdefa191d6dc4271e9c4e6f39d313f6636078135666f1e192b9a91815193d10a0624d7a456b5298e628b134a2eb4ba127ebfff746ec05b3c4495ae8669388385aebaa5a747f4acb729c83ac91502f0b545144946f894e41237947e6a02a75f7d058a43aa21c6f204207d326f8d5e79eef68f53eca88d61e36ab82f34e747dcb7f0b4a7a3daa533ebeaa40447a099b22d239d08d5eec580c0608183220ee3620a60c841fff19f737548c392bb7f4d3258bf72253090229c787e6e41214fc7d29e7a521af442881c414dcb7db2d236177be1d811572a67b9a105df38dbe854b4b485b3cf4fa7d2db2b1c15047168487ff26dc1f525949dcbb3a5aeedc715d149d3a6ac235a46ba7fbb02edccfaf219ba8b6fce8f11d7af1424fe91b68308b9db046008220274eba2f35cbdb1575f0292851e35ea4bf9bf020883f70e1fe429652ff5dab06c49025e1e5833be71754c53778255cc68e1b073fa83994f7416e979074fa434f6a7408e2549228f7d685ae405bcd0e864633a65bae961f8a43e9dd8ff257550790e9d233055121484cab81dc979b82db77c99a0ab7a138f5488ccfea3b412702c340f60dcb6983a120dcfa87f06936efd7ffc8339406177edd40f7db595ff552d75dded32fd5df3a32a1fdbd4d23680d186eeabf40e121a0d07dc5e1bdaaa3a53c35e6c6626a5623858c8c35cf1bb5b9967ee3459dc96b9efd2cf849b4fe9525bc1095f6e75f2d6f263d1a3d86fec129258818518d86474a8603b68d9fb001b33a3415916e8aba705464d8476b9bc25c20ef633052bdc74c5c1e1568c7a4cc39948b6e07b4a1090ce8406741a34ec6c302d76ce39d79e5397496e66e416ce351aa6e2d7401c491331d74c14d27e50f7bc6fd651314d2871684e416d2e90b63212050b795a658f2c857e937a9cd493e3377b48ba48f98f07d4d23fe53b611c38b9ea1e08e538dac23eae53838b3d8c8d4411f45283324e5908913616f4be6590ddb86345b051c177c9de6479a993f634fcedacc3b85aba815764f6300a49c4ac2a8c51e271516b455d8610e420b113e93cc5adeff8828011888552c33829228769c00a6670b3dc95c3398fa97f2822edea471b4c6341f33180f5b29bd4384b72b06b2a00f3f5390812f26ef84fb201e9e9d05887be585d852b12471ee371946e59b26088bd5d69631c7dd17fa5f4ca450db206b30a0b38f8f01631ce4bf5936484467a3f05b91df988452ed0999d844b9402815f561ccf60d53a6f18f6f3ad16eb3f18d8bc2417d52dc1bfe36342cdbbbd5424acab23bad0c8d74f30b363d70a8b4cde0f7b09f3c6fea0b135b1c7c2521deea1631f4cab0ac06acce03934b7f99022d947339c3ca675582b98393d5c511832239c0fa379873b84a8d7ce1fcaf4c9388bbe6c895a4994bf06bfb102b0321ad4d6838867a087e1f9c851c4cf2699bd75c21d07eef76720a24fbb569c35a69c429046532200deae62e43cf80e2cb75ef70f9c2b92da62d2b78509f018173314494e9680c8e0dadad94d9611d3a496412a36ad3e2dcbbe2d885e16582cddc7672b81fc3eabdd53488ce04472d3e85a45c4fc134a87afdb7be67ced87e0b07a8c2e44a6a58a9b8fd331b67bfc5c4c2d2fe759b421699aafa2ff19acb1fd56e9a581938f56f6980219be74737fe7b431e1ebe5c9b1e9dd0ee0c4710b9e372b06d816ee42e251dbe944fbceb014a151c0bccbf65ba4d8386ee03bafda106e7a7dc8af1864a64ed40b3a8faed54108399904a2f4f54a8d1997bb96a07308935ed9c3d5c8a196a6edcb26b614534bb8966b1d0a8983ab56e4f012e5619d32ee61cb1d56643c3c7d0ba8e08c72dbd43aaf6418eb426682fce289f73351b46f9248169cf9b668116db1795d12ca8e3328afa7fb0a058db727ee606a5a500449360b8a2df71d6c5eeb1449e8e9d21a57fda7ca280647ab238c6fd700271e80ac7a27381c045b39dafbc96628f77e64dc8c5d7171892f04d2bd53fdf5ab912c79c15ca4a8136065612963bf8900b71bf7be7905676fc3ca5efa89365700a12430d7e4d6399abd3301f0470a237016cd17d654ab59f02b0dfc87d31682f194c56f2eae4e1008542b8ad340646f8e705f402fc96522b34f735a2d667c2c912cd98811be4baaf8a46019a8b4d9af50f7cce2ee77e515b61dcbf5e5b23acc8ccf042d5f539a3adca26c31ef5e87bb462c5d25e92b506e99209e57f48da2d6c36578ec6a746eb7517d76cf460eadb5ba5c0ec224225e837d00abec591eaaa623559cfc67836dc4cb6517eb0108acbe34e81bb56b32abaf2c3a8e669e71ed872b496aaec140c5ec7e6737301709870a74d7b42055a766ea89ecff56754eec0ac2480aa7a20cd7c8ab8d37870382f347e7fd21da9ac7a7592d6902b247cc3029733170b6b17b262de850dcfb2000432616caf38d609c7315def0d4bc48fe165cc74a3d2fe83f2e6c6eafd7f55172966897696b7f53812645cf84e55ca77c3ae651b1ccfc5a2c2cb7ea29ed3dd40f74e7495d3d400377041c99f0c3876d0f48d7e4f7585fa6aa180c2f4ebb3941ac74685d1f36e957a82268cec0cddb971e8f05207b1ab73ada806d0487a97441f06f2b372a835b70f154fb4f558c54348a8c3641677508f9b9103d104d5ec60af7b6a74f5a066970d373d8e6bfa915520e341068e889f9130b4ded98b8d271258895278303722ee13fd91c8ea80445ca90dcf90bcaf807d63355486ff25291671f847ea1017b24fa5f4d04e960dda073087e0413df543a768fd48a13c3fb71acf21c9946e73098ac483ad960447e2eeb0a0c8b0fba9701b37df467ad73a7fc28e09097bb955d8943ee42dbfab0e3b312d20dacb5868e4cbb993c34ca8517c819a6bbfd98121c014feeb6394e5ec92103c65321d791f10a01c2d5bd96ccc5c4aa8e875d3f64748b39a87c2470c4581c450afa18492f857846d81b2c6ce521ae8ad1d27d52fc8d02eb3c30f441a93c047d15ad6bb31eeccbfb7311e6d4424fb85c0e5acf21a27d9af1d0fa88117bf0c285a7acf840b8626837b144a4510853c4f4ad254507f0385a052fb80d0ea4db96dc3237403fbb5a05402bf18e746eb48d129e3a2032b0204ef92d802b76709b4cc2ca6c808b9c3cf5067bf5f4b9d7c1febd857512480ae9f98ab61754bfb63cfa872691495a356b0f05b476539418ecc13417d3f962c74261aed645fea8e321785206205b27a9ce8dd244fc872d9596f9bedbaac2742af202854731ecb3d595406c29ae3f8aae9fbb0059350f0ad850a16ed53dff9c8d17e682284db2e51f4e58d769957c953c15efc706d044f7a88a2caecbc464162cfc62469433fb51d6c4117dcc5811459c740d7a8882c26d595308c2439ccc76a2c1344dcc94aa094650d2ca0642529b71f0966320b722ddf3cc53e7b972975e368b5160494bf403bbd8423f389754c6533b4dd1bd4386b6b9c7ffcb96d88ba263e2922ea4dbfb5ce95f808a36eaea0d24b255557e6f99b81738e657845fe73ca0065759847fff744088198db0946da5ec8b7876ed3d737b75135f9ad2a24e55da70b38b3134358be126825993646c1450535115cea2f2280a6aa84bd528b331df1c70b132575b9290d15d128bdc1c562bf9ca0a28036588ec2842f3c48aece622ce104e4b02c1f4231167c9b822ec3e1cb09d4952a49a28ae0005d420dc40b8d8a81345ff484e535c5ca9594a93e4ceffafb61ce296819c9f01111a60e1e8fa268bee685107fa4e10e5384dc84146f2bea411e22c9661547a351fab01ebf221243a8f431ba18f4d2182d8808b78c304843982be191a1f513258c682341988a409e1830b7eb53afce6caf8208963c98537aed6ce0bf9448ddab88fce3bdca0fcbbfebc70f7742d5406d53b6461c873fcf514b1cb49c0ad766899083810afc80ee4d7b8af683350edaf7d2f32f33f88ac74fcac428ceffeca0f28ae3d219479e85896fdbbe2a4091a6661ddedeae0b70c1992dc940cf5efd480eaff6dce9e2b9b1381bf9e9caac5abcbbdc9110800a844ad14dfc9ae88a4a91571c730041b0ba0d714865ff4fa0271426402ab61b8acf3685c19351bbf9f04a8e3fd94da19848b2aaf072a59e4cfc215b6394d0c34ae7a1087a46679404c95f9fec9c73c5bc3683cee273bbff4e02f5ff2ae990bae5446a6f0ea2a3ab388c7a39f735d6c45015240c72e3741b4a2af13aaee4b751218205c50c89e4dc2b5ede90bf5586a7e59eb4486cfb416044f1a3a5587c67eed7b81fe58d2ecda30dae86a8f54a0eae6d4c3e1b98d077910a9b6466dc41a4c1a6d5483b10a52c06edb8cd336416ffc8794331b5992bd5f2d6a58d1c4ed42d31f124bb5627566ac566bd4a97a3b31b70b5ae90b8cfe8d86c1bdb9f2dfb01b749311aaa04b1c06b8308871f4d3f7694646a54d7b6dd2670b4a0bb93319653880cb540ede7bd59de2dce48a308bb5ce1e5405cb4b9f2a0228526276023c978356250bc8549a186e2c4388b45d93293bc89dc887ae49ac835b10e5d4139463e9dc0730571c16d3a31ec800b01882d6b43a1d137db8500cb130a64de8c017751b886fd97cbbcf99a165fb2c743ccaec90b7e21c068c741655b56bc7046f710360d010f560f17dad3f79f11ab8a705c1eef36b8ab1fb1466b926132387f490c6376a791e848b0d91851a7e9fb787df6c3b475a0d48c8c5e687e662e0c268cb258342b084433160471f4884ba4bdb9a893bcd1760719fd8129a2ea1028c8ff9367631e378c3080de3389c656da315ed2efef368893a705dc7f77cd79a866b1a4ce50acb9c20162ef31041ae09559652b67b19bb5d029bc98bf03fd68c8358d8d0392b691930e8433151333dd5ee6018b406cd9c2fe03e228aaa70b4640595ee44b5a856fcec88a277f68b4f64a4d09f2890f8833a44da6d88e63a85d9e8202e8cc928f99415b534ad62825e1b3ca0e303191aad95dc98813b7ebcdf8f02f176f6c57756a82dba80ad7cc61aedaca1395cb25c4774c6cbafcc46522530482467551e30ae19c953b1829755fb1a0c650acfab8fe451589699d9bc6aa4636fe8a9229fdb150d1090c46046b2f189862fbe0d28d875d6bb09902deeef017667dad92ffc867dc5552176ce7797589bab90dcb1646426322b9f021831229ef97e387899a3d0d44829f297e6c90cf0195723f99bad933618a840e68990e84d2bec8aa362c40104ec91ffa9fc92bd7a781b18a3d470b717f831738b783cdf1a0402e19a20ddf650b2c3a2628a399e618e565a2fad0be4fef687e15b97b4c212a3cdabd9e5af9d496f78782efd7dd17b1207f889621338c700a7efd74e9f491ed84117f6417011414144cbc3d86fe53decc0dfb5070f8628a1450863e2001f91328ba7a9021c9115a5d12f0314586bdef3635a7191db45fd8129482e69b4c68ad5ae3446e7eacdd20d85eda07d92f757cda2a9ed52e87f9a4ee64196982ef7e7aa043728285c1ed3dbbadfc0929f5c90415db7720caee78707364703e8804a9107a71c3058b3b649b2b9a2ecf16f8b6f79e3c09783f6c106d4c49a34472d38a60892d19c67e23ccf3498a9291626ea07e8e2714317402010c296e77667f010b9297e387607dd740db48f876da1a550f7adeed345a69d58e72dd7bc355d8946b0b4070d961f6909f89aada1f55a61f7e2fda68d663f47bbfe8d4f69d55b41b03e9b4b564402d9daf3be008c5e55ee4d02010c4b72550b4e560eb072bf7cd1c15b7297dee79c3b426715bcae70e5e957c7dbd66ab14591bd3ce14f93414914e00e817646300f86f6c40a03a01b896ca4494ffea2c55e61e7aa0e06ca2f6a5bd58e981ebeec00c409d74a22cca122cf7c010eddcdceb9e6bbb3650f27221e93aacaa29a7e9c88e2aac180f8975a66b905fe42a2658d6376810758192c493a6c52e35aa8bc794c89fe20e24400e670d0af5599ed635570b530eb2bb176c6d88818dfc5864510fa75c7b66ca0c8e3bc1a18b05eeab243672678db22301a5a3fb9c94d94d153a2a60380ec48360f67f7f120368ddb1d462808989fa8db605eac25167710651351af506a0f502d7a6d1b4cc2c8ae9712e54502edc6b59d96afd86cda70a120640bd649d65a40a90a790b1d470e117649ff5298e246840385ce23c9ba1123cd3c66687014d1bbaa69496e7b65e4ac1099ff08d6f0476bd9bcc261ae341ca0faa928978fef3c3ceaf5ece90318c950105f9a67cd824f0aac052484ed0c230e8ccf0cef906856e58d0656f4589e9f4c3dad96b894d524a23c8f6502c6be19997b2d422b076110a24e7b6f5447f9660c85be2b11e505a5c2937d243d6b516740e2dd0e49067b3023ef29315d856ae977dc76ec3e4b73364fe73c98628cb3fd290489397f3282f8692fd46a2972087106c2a696af874b2302115d4c5df464aa5c71c651dda32865d1e8f88669c4315c04a3010daf2b561f3989ce95b37ac6061849bdaaa4c5823c1d61e562852dd1bf07a904490e2fe98288a4b15308880749ecb72a5fd2a392b73e506525d1f0f05cd698e8f8e0fe6c1dad5a0e18555f39ee23740261fc1579ab7922760b679c1caf4341791fd0f6fa7169c550f9d334ca80d7cc78967fadc5d2421e93dce596b72f36a901655dfa11c06f7cea603a36a17757c0e8981beeb2e4f80b9b532b36e3e4dba1eed759c770004c2ddd024073f2de2f4bb4ef3859478dfa0897a874b824f6c15a96901620e6c1fc7034b1fc00fc9fe16fdc712dc667e0bfd65bbb2a3e50f93a5abd50f15ba4a86d47149a12432244482cfe4ef2cc826d34360ca539a469dd7886355cd18edd8549c7ab5a0617d77b8b5d34de28dd31ba619c164712e17f87f5967153098c439afe739e6f9d4017632e7e1640fa60cfc2943ce929fe1c63bd23c73e9f29a1f0ad8ca505a4ea54a724727723e6bf0f84e4a0b2f6931d90ec13bbe5a9b1595493a01d8d9f3b22b4d9ec2a85c6a36dc62d5f35feeaa4f04da5c92a934bdf69fd1d9e8ab966efc917bc0a92a5343a895224d9d70dbcb91a2e47be6858e3297ea0450b1fdafc626c471d1e481333c524cc86c4f740c2b479bfcb501bffa33f9cf29a52f43e364e99bc4fead4765eb88ed0052e5130e068dca3a2b71876e893f56435a7b54a5272ac7dbd07dbd2ccd981987bd41b0255a08ad49792b205baea8579c423a5d3c9e7d97ffa75791a468e2bb9d071e7349a0a37f2a7428dd1ed29181fd7bfe04d76fad5996684a5887928c996a5a132cb05295eeb7c6a42424729ca50b879c1a3f33fdcb7f68b782b91e40b5673f0c108b5e12e5a970db2c910702e739ce6c1420beb117e798cf37ebff3ce8ac51e6fdd423f8183fc8f7f79ced3f86123ec9799d6d085f35dc90da45bae27c8f93a725d9f48cb8f26ee5430d64223048a34969f86bef315b597e2fd4681f3ab6aa5129d052531eca4bbc1299d825d2435297ce4da78422e2d28b932ee44a28e48d2b30e3767b967c923eac9766e55d06bb82d032772d8b5f2c5a21686ee248d7edaebca971626b1a884f946ad67e20306087e5102cf65679ceb099f7bc61f5797fe36843791e73dd04c8fc67864622d04b0e68c38b627a0292d3b2c34aba882488980f1d6e840b4fc380a1e10d17433f19d2b8d5450d1f977f07c1e1dd24d191bfc5ce9c802f2acd154b8d4fd0858dc373cbf45dd76d2d28025735afc1875b8f4ad02187f3b33ef8f020af01f19a3324d2637beef29a1c9d021ba0e862794b6c7cda37eec163306ed75b76de5a9403704c453ab02d28036aa30bd1c13aa34775f26a15d206f2ee2a4877ef89672ba6d841d65b4d411273855f922aa8d341d6bcef74e7803a5e0b16eb39d085c239fcda1e4dcef5e94d062fe7f4f6220dcf249394513c5c72549dc6f4789881533bb297724ac1198eaae4996474456a4b013e665bdc41ec44f4d66fe371388105f9921806eb1baa446a647fbea40125c4fc972afa433ae2846a70952ec76015ce0cbdec6004b24d2c4976518d1092872dfe77623ae92cb2d7b7a7833510650ed0a6901625d72d4d2b0e673b4100c476284a40eb1fde8ca0a1aa618907187bf686e74ec61f284744987f18924f5d4fdd7adc944e491db2d7c5fb41718f0ccf380cf2e983b9a3aac7c8a773fb41f7531e2c0629365a0eb0c242ff066fe5fd6ff47a7972540da6c4a4d9174371b760193e98ba1360ff07d6ee573a063133c1aa043bab8753bd07869465ca12ed5833dca28ed2cdbe1430035960c56bdd95a78a22a395559682050c171d240c6f38a9b415cbe80b8c7843c19702d3827f8596610b6dcb3cd012aad0e27881dd7980a47c25926a17c4b30f13719aa93dfd960b0ead78632e677864282dd8a081c2bec66ee9a353c93fe81b1feec7446b39da385de0cb66e2beeb56e66d1a3bf104017421f6d507cd22e3b6adf74f6d4320e26f38b9fb26742acb0973b2a513677408a033c21d59579416f6e158e92063aa61e617176a7d9a3a15f87f85fb7f8e9f7ff6e6b183c91dcb521587071b88849e495dbe4ec6af0e6189fb86659794a62040d7de48b03e6c379d326e91640291d9408d560d5fa57a18307c6f760e9733eb25b47844c2401743009d7eebeb839e033315259f9ab2ecc85bfd2161e7d4d77f9c6363fe10d41837000e1fd844005dbf33fba097d21d2a08a50ecc84d55a3b4049a5c6ac5c3a45bcde13107dd0b11140076f286e1fbcde25598aa6d4be1f43b3df7ece3ea99a27a8d58af7d2401ebfd45b510f34184c3c509e159100dd4c0b968b7754f7a12b07a4ee43ffd2891a33d84f01d919d0761cf2d47f2a1eabfbd40314063125400733142cc044be0f5d0786c85d4a40325642d47c0909a0429d062c1e90aed72744f4caa6aa9665086098005d334d6acd124040192bd500ee8f31bb67f0d9a37f59fe1bbd428f181f8b459113a0bb7e9c005d6299bdf861f46bd4376514062ff43e4d81d4c4d9b2bab42f3a2f140aa04f9d1c2eb1b456f9611ce89e51e100c5a0029bdc3c255642c3bcaa7264c21f1f90538a5b0ad592c39e6c898cf7dc44658a1bc65ef73ccb3e9fdfbd7bcbb4e0e6d11dc95b8f538d574063753bca381eb9231ba7a2ffa15c54f5bc958bc91dee6605e8aec7faa1ebeed86e83abe7e7cfe8081ad321faaaa65495d45d1abc73a32cc7059aed92aad756e8b9555abc8bc102e89b6396a73d6504eb37b320714a3015df80ce8031900f5cf8fca12aa97247b8075ae44193b62df0a1c9a9d7b7847ba80673c160d102f4d92d94fd3248b8b07cbf7daae9b82141dea74d9b91e5c11be61f5ca3db87122ce919cb91764cd69821c32dc10be8a48c61541d803624efa55a1625e3f6d3135269275f8397fb58d552775880de632777fa29931f74cdfa4fb713a6b3ba594b60ada8226c23319578349529e2b02cc2bc8583a2734fc91b3a0c0ff04187b290c59edfb7badc419a1fba5d13d276a099c9b645f1a2ccd005e375149417c311544107611954e1c5f0795c4a8ea8bc27a2c126f980b68bf7c005e8b5b1f0d86c8c606e8869f6f085f1418a1108d7784aa5d455fe390ac47f4f373646156f23c9183350603c968b1bca188ec6957663d672b4a8473e865c420f058c9f65d031136c93a3441bee7a0706e3e612955980cebbd757017b761f7a51fa37c2522380f814b05476cc2bd59e89cff46b7c72b33751692044f90113d0e0f5322a40d9bc2695ed379526177b7303ce55deb705d0e5045168cce7fba063abae8bdb24808ebc84b156bf9ac566b853305fa00a6ed24ce1ddefd45b2dcb9ea2d0cf2104f31bd0274717a0d7f1b56fb98281d330f311d818937176dd584e7c27bc039d812291f670624dff95e1e6c87c4e009d73eb2aab0346654ca26bedee8aa5f4a892a2fffc8087624c5b9389ae9c724e2be9b1fb11656d246e5b579d74a2f1c92db68edd58204d5b78b8396c05d3420c1cdd72d2f095aa1ada02e3338a075c6f81a8b89916a0f3afe09ac27811ca7a4f7f687328f6765699f4010dd86846c669fb42c6447c205a85123e58fb5b92bb552cc1a1953ed262c598b92d5daaa27232c8ef66501780f29ff09d948867e72e340acbca6ee2a107113d06e78c2e3f17d8c7542201ff446cb74d6a46de2aa0cc0779ab1cb8f36d1e7a1af991e08fba2f067703d625312a04aba7eb0869bf22c7ccf68ae558a286590424b7cbc4e50f4b590d41a5e0ee42343ce81fc91de2ee91d91b53018d4dcd210219f463478dc740c2913f8f9969d7ce49a0208c0623c4773c567663f7c477159727f0b860df9c22727f3a980db093c8e2104811a124f93e4fe6794e98bd0d5ba380f6dafe3bb5d9aea94aa1a0068b6663e2e7c457d248d2d5d9427594b6da2cf9a2ca70ec7732ba27dfefda8d3e3ea724417010840174be2c74666adee11386115ecfc3e762dde2aec2dd4fc1ffee17481bd5a6fbb55e367f61f292e6e791c36df0cfc3e54157e3202577842f740c63ac1a5d5f883c0fbc97fe0d0ed925f0ff917cbd5fb79acd0a46a3b03678d2d8c17f92e78145a92a67ce9e0800b11918b2a810a7c6fdf305ffd052fe7f08a296ed7e3f5800229f33bd2baf4905139673bb36acbf8192fdab90fe48b0e721bb01696efb21dacbb903b002ed845f8509bd47a4d672b070fef1be6b6c98f36256e6834989c8abc02124a9d009b7ef67b4e03f442a76f60f3a8d7d03caa2719aa214380bdba965176ba66db6fc934c13f6b7a4f3f801a648e1aa2eafeaea39af68b941a54d05cedd5d6caa5b66b3be53f52016d14c12c130b28710f31c491412f5b67c23c48ae3e4da0b7432746b180411d49ac21430bacf6d4016229e1c470e2808426da4d646dfaf75ea1a478ca1c6dfc00128c7f83decd4ada0fd5b73065ee86ec1b7d4e54950c07755036a2284f0359cf81080979ab600df47984e31a854b39c8516965f186ad147df61d553567f17779b018240cdcff90a82c675c22826e02ef1c492e158d9b0614e3a159badca4276b829460c335cbcf2712f71d24a41a263a1bc38e80fdb2121c61a9019588444fbcc7d7af1f8223fc57091173ad998be1a2b8ccb3eb433209714ba0d49c7f20cf5dc497f3d4b0be7e4e228ae8149809799b3999c53c1b6240e1671416bb8a0439c37e917956548c76f8553984779672d458561330f0c0eca72e1088bec95e01d61c857897c1863a885e5a3b189af067411cda75a0f302452f1b118ad317af0f3adf8caead404310cdae86629acc0471fc1d262c647eb702bbf96fd2b4a56e647eea24b9a1274fdcab2ad9cb83d47b4be38ca44bf20a1a6e3ed4953a074651b9f8a0c1d205308d1aa8d12cc1670a5a36215beb8fe72c9317f5b907b03d6756de0147b0d9ec28117c90510bb341d873887a7e084149ac9a74b6d061ba0da6848b020bc28d7057581b5518914493863390edf8e10a866b551f45c77fde21db276c570febfb8a1dcc269c8b2181f8f4c207c314bf17ef5dd602821581be5134bfc324a123a542c30120bf518ae36c334bb0a3e2734dcced0d4751ba27e26b9c21c1b780c7d35581badac403387cf976d8dad3917ec8369d32a5d733a7181877299c603e5894d238fc618990fd926170f63f3158122eec1b17ead65fa66f457f20156471069a26a68f26e9409c1dcb3c270a8141d022bf675c0c5e9bff67bfb297188545c5840811f2560a2d5e50aa4a20a1681970205e043e23ebaeed1e2c6dc6ee95355f1deaa449c7e65954331eb115005663475ddec5e0f1e1600653bd578b201d2f177814f7f68f1cebbd3b45f615f76d29cbe702ecba83218c3fd75a6531939ab0e89810fc37e99f65d13f2616efb4647ec54e30771a0517a0dd1f69d490484c62c8796efaf65683736370d3ab9ad03d3be9549cb84639863363cac412f6a37bc05ca2a5337a5209b327a0e021292ee65a1a54f9c7a029f5c9f11e1545208b65eb0d87496a96f4e391e380e5d834823d48719ebd141b6778f8194ffc77a16a69fa5363c2a0d173a052b2ef27f19302e39e38bf40e1406c043f48419c60e1abca5e091a6a076aa83368343679bbafa113637018538f6eba80ee24552b2297f885d41bd8479fca57894193ce89462f154c40092e140e9ac11a21198c11ee6ac6af52ad2f9ffd2cb2213971ed22850aa177da251788ed9dce1d76e378545ace441759b1f0c05779a809b5b4303c6b3dc99e0dd4be4631d6d27b93c7b63efe27836165d35e892840de3b7a0804a35e5a03eff858bd683d0d27bf8229e8575b5b4ab06bf10e3e46505d6b90e9350f0af5ccf92abff12191a0cced09f9a122413b694b752bd4075d5477c359ce5348688f56b9e220abfd27b8f082a05ce4586712760d1f410910ffcb499e93afc39c2c1e02a4e9af03175f19caa010d3fc7f90888c70d6f43f2f80ed523b2e19c649c99ace90215000f6b22458e67b549984cf506e6bd25a966821a400cf2a96419d8d4151edc50c572df2c994d31d338c5d446d59af539de09c2494871f982f80265b6283c27c5789890b63e47e7e98db1909ccdecbdacae9a66dac3b8d8039224b4cf68414a2660631311ad09778594b7a5b6acc21592a90a0e1c3e4c03346829466b40eb760ce3ceffaa6c8cff3ce00a1549ece1e8e9ad3f33b19a9e8b62d0e0c2a9180b4d112a01c0efc1ffe993467281e317b5387a3280f59a033eaabe3cfb194281bb5a08198c8177339be5cc90034da0c26c95fe237b519d33b48473e636a2c39a651df9a6822f46d37a242d2b137038cf1b33d1d31325323da77f97a06b287c6462e5561f63cdfc803f6f04fe8c1717e4459da03f1f59e9d30bad280d704d997a1849c600d055ccf3e623cde2fb27c87c8ecdb72b3c802f3e7cb347247986c3fd6f66d7e1d3232b9955bef9de8ba5f8b3f16512231a39a295d3effcf2ec2452988b502ecdc1ddb9ca247d30306977b6650a85503cf2f9f6626f8d12ed08e32efc925a9344134657a7ec295ffab0270b948bb0fa2d16de579d1e65421d928aa47258ef09db6bb5b39846267f90e8c872154147d6c0883f2c4d45df20b017284a85edeeed9557ef7f71a78f2911fd071df81e0d1121ba85ea8a5d12eb250216920be2a916927622cbb978bb142cbcb6f65253e20944bd2085abd76ee9b0b24d129a89416bc3096fdc59856f07fd8401be4574d6f1747ca359779bee162f33b64d798732f4266bce83467701061f3b502179579c0e87f8019b634953d4ff089a82fd7736413078d415eae5c6129d7127250d204a484f36d605c48e1d41ac8d2d14586563346b1f7531203520f986d26a5211c5ce2db3782dd448358e84886ec38735008cf9df673b5014170300039da4565dad74836a1928ebf8ec6025447d45d0f5a9db6e0869d8d6b549796119ae13039fe61858eb29537b0c16b6da38fb5f75d8464a5c277d08bd360fe35cb9dc7b0fc003491da90910d11104b9f4921369836b468d1c8366d0011a2ea9701b4f3e90d3c1539381db843cf8abb529fe011175e304f8b0579ef31fb267f4d6a794e8720f24500040e538e7d47bc1ee983b8dad101184b71a3028fce950425bd2665cc887d38d2fd70a69a9b7e0bb8d67dcd60087fa200eda0da2018db308fae356042fb1c6458b994b31d1780cc0c00f4fbb2fe5e39dd861ff1b00fd431f6783b7cab71fad310f68476e5a1ce57133644a7b8443ceee4174620aa9103d2f9e76e808d4b751c992989f87fdc5f78084832a3836e8db4e728237d4bb2ae53621a0568a459984196abc65616605ccd3d291280bbd08927885b3090bd642a052c03a725a809d3ae6345257a0170e9e4b59f57085eb54a9de2338e383d5435f0845155e7f0548671e3386bfa906bb5b07ee09ee0a5cd0f28055ac188652aa0beeef2192bfe6188dd14b76e02098fdc7affff0da2b70efa3aefbcc40ea06c1518945ad2b980248108c5985e6419a613b06e0618ee29ba947540c3ca5ef93fcd907841fb7c228d5385ebc928b8d45d8b1bcef13d279248a6e956969d536faa3b9d2322a0d2ff3990d7019f38c4fb0a16ef5483196fe2ea49f50093d382f9a19b7856a8df28602f597b9dc28005773312d80cf2d25b5df6078cd038557c8711b453fc1d8c7a69a92ff48b6f29ffa083a90693af371e3be35b819d9c074166421e342fff065287a99c088b1003e709278c63d015f64592f13d6f33c3c173e8918f8e8eff113f79eb24df2486d0fb8ed7f6d015ce957c53e2c9a88c21fb5d280d5de28b12387a7200369b3f9852b941474abebdc9c658dbd9dcd0517b6f75c8b188bc10046eea6ae171128f1896f52ed8178004b3e0c2183cd2938fd8fac660b42ca133454334b308d9b12926a06213ca60c0a426ca3329e912844a8425864c002253429803180218408801dffa22f8854fc4328bde483e6a6d4890c21f46696c41a7f92496e31842c6bf8976beb10e2168391c08bc5033f07d4b20d09e280bfbc7a5f0831f8e24e20fbe5c8f36c6423e95e6f45644cba5f6a47212495f23a238e615d22500a5fd5099410329dc15f100b218f502573fe6fa094aa483d011d8c5f72d06892ee99ee4e092068c6ad56648ed381b43374f9e90f0a42fbc465ceef1f933e44a67076fefe202be7a0b21e6eea771624a7e6df38e072e63bf34b4fe691df00cb75665d6e05574ab9e8576703195376bedc650765054bb1a5f96cb44643f144ff8ab1a618f6d59f82d31ee9061122b695a0b4d58713960272ee0b744e8bd3caf1817b2c39dde8178258a29351617660dc96a14a1550ccf9ce8a2e17d9f2169022ef621f54d0eaac48420cfe29678f69cbe259a1dc48ec5ce23400896a9e5c3eac1fcb088dbf91010f953f4a242009a8f13056373a6338e926f2da8a5d00c3bfe536826c80986cfa4afd5bae28295363e1d54605048677136c376bd65a463cf744ec73c9924eae24144dc62752e61aeebe264339f1de2b0f3cb503746b9081e29091216ed343c055602dbf22880a6cc46b694e12a5735f13cf4e461a5b37958427532675c4a522d180b45e57a4b1883413997aae01ee1dbbd2b11608b587eeb88bf62c3fb213a867d9ce9e950ea8ae9dbb33c67ded20e7f7bea013e82d952a6702b0111907d652605aab5bcae56c683bcdea3ff6bf41a2545b0d52dddbf50cedbc1d80f6881b3f07e141cb028a62fa49aa288d188e445fa2d24065fd1311278580ae977ab3715420d33fab65f7d2c4fd5848aafb64c5deb6835591744c1856b92f221145ae944a324fecf6c4eb9359537d8239e883e838a8b945213b84f21c4c3e69291b4729ccfa19f9a3713831a2babd6a94f9f7e199bf97957280d31a595695cffbfaef8ac35e44dadae5df84e7044c0ecc34a505bb1858b7051d710075c805682d59acd0edef32e57f62bd145f5d7136c6e9f6b69a4d966c2527b6e8a557c36f912da783d2a4d37189dda3bb86b4d764d0029c5f7d7b07df3ce0a5756803d2bd0c20e9fbedc52b0a6cc4de02991bdcc6e620d5f287227cef3a055104c7839d95bbefa15231eedac87fc86264d1f4ab780ac97a353f3d76d900d9c6a79e700406e5d63f81c90348009beec9d925b55899e67526bf104a3fd0e2c94ba36cbc793f3306b756c479464c9d779d2805655a122e4c02cc4c8be052c02f65a1896ac2e351a7fd2efc862ab0ba0e6a2dd3f7a84d4469911dc9768443733e3071b1459237f2944a62dd8078b5550154ed74d79f989c5ef0d2537f3378cfadc5d0d91717405ba50a202019eff99138c3da1c3d50cbdeaf622db8c5f909b84d12982f7b3eb41f3ce6751e6cdb2adcff4f26e16807f827f17fcdbcd6f57b130aea869c48d135b51dec980e637f5acc7431ee7c93aa4b2cb5a8028823769a5ce7131d77a01436a43c8da16eb02d5daab1b5b9bf129c5d83774c27fcb57f6498a8259fc654bdbe3670335c01236f657b3d5911a458177776d4a6e813baf020aaef3657b7ff92d191295ac320c5a3c6f4d1e6de52c075d7c7281422c2066801d9b64af26bb65e6867545d8cad4181d414da409d134b31994687d214a24851b0b96b32d5e928bd375720c6ad350cc8c5d2471674f2b80bfc3ef01acf3d44338513a5a7f67ae4d3de62d26e6ad81e046a74bd33eb393e1c3fd4abaf3fa3c0087de05aeff0a3d59d67c9f629bf95d932c84867d8c5b9b6828946b1b9b412e2b38a132b71ee15700400c4091eb916145ef19ed276e53bb26e15257505236f345e27c11b65555548eccfb034539cb4ab82a38276f09764bfe978d1718120cbe4c4cc0f9cc3b409d5f280eb7fd62886022a1e08df902c4983c24bb115f1a220768f4ece95d3ded0e7145e30d82a73bdeddff921d1e12ec01d6e34e0276aa0d072b8bcee281198b5118818eea166a4e2ba09c9789b3ebec849b623d48bc363ac5d7226d6a728d9fdb616893ed2b3a66128624bd74d7e6cd529807cf3edfd4aad45c5f189271e18db08f91e6139730fb276dd99a812afa352287de95aee0741823d30cb7af3ce13d66c914ed0841767cfca454a91647c2d6c2f5e6da474a8773cc8f056aae17a3df62fa8e801609071573d57f1fdc2229f3eca53025dcfa49e489efb97d7b32058cf7fc93bf926e1ee92abecd9007c44620ba0ea3e29e879c20ab83b6a0c85e9e1c49b0f1511dd0c22b38d88df8a502b9b929625c9dbee501204c558554294088a695f40ee78d25dc824c448d146142b2a12f246193947f1f8f7bc0ab405e406455060df67d50aff065592084c679cd55051420c523926a6229dea2b969805c4a61e658a4faf0e25dc718abfea90cc4097b55c205388150df0759196f3c11b677c6985dbafc6f85b8685336acea9ac12b42c8f71b31ae48de26f0757aa008fc03fd89200143409aac25d32b4e49ca735fe793bc13815905c5e689a1c705f976c0ff9016192a3411508079eaee2a2ff21159d56eba15000db6e848bc316c7a977a636788b8d6c0cc33e4fa3756fc0cc6c2834db7239433f9df365b19ea9c3b84885dd4e229b29535c4845cd0a281e0f2e908fbc31bb2c12f8c6baa7595e1876ee9db61c29418f2ac1223a59fd88227c2f037a5ada765a301a16a5036a65cc880a8ce4dcb5b09713be7da85dc081724a9e2322c74c553146c962242bedd3a9204f768ce470cff777f7f53cbfb30582951a13c5b7b64228244c2ccaf84d4afabf2de9fef26d239b90bdf7de724b295392292d08ef0622070c888ed3261d71f6601b7146382303da64dd71da54e3f26419d906ff0cc7edcd2221534434349999bdb7a94d4abb0e4ef7e11a4746997677c7382346bb2fe619aa72f921736c83e7b426b3e4f817dbf04c46e32d46669e9f318d3566ebc10fa9e0e0cf3741aeebd9dacc48a63b720bb5a8a4160bd7a6187db669c5e436d6bb0d551971ee4760124e54041a6921537aba539f22daeeeedd335cec6e9ae3d321d174a73e371ae315a9c63327eceea6315e91661cd7d835695ba736716c8f2fb489e3941c2712cdd0c889a677c3880336b3ac9048d7748f3e699cd3eaf7c136384e19bb238a1b5a1242e871e6b0bbfb73f7a4b4eb6c2e7f16698c33d29e304a0861f5b0c9f67fe6d4f1e436ec7372931ab2cb766ff7e1e0cf77779736b161fdaecb5d5b522b33c2c10f5dde2ebfc6369e6b0cf0f677d739b7e17fa16c839f575842cc36f8894009839e631b98833d8e63e9609ea84113eee8f21335d0e1f2f6030b8d1c3fe2881c8baa054a5cebb20a892beec77534e28a21a2d6dd33c9e5283748723b497747cae3821e1e9030e1075b94b1c30e693412b7bf63e2767bcb5374d1b43277b7a22c31c5796c00f203848767082baebb4bbf028889edac7476a2103165c5dd1d88eb66b85c38291e384544ffc1904c404a0aa43842440d4ae043121c0ce184b83a028bb468941634b9fe31fa4f105678c00742aca4e8a465a1dc3dca0922d074f74111d7a36c429a2a9d9d284b7c828ed48cb162418b7c0150ceea879598b3b3d2d931c2274a2ba44092ce03c4061905099feb60a8340a0827c503278929d38a20b4480bba7b9412a88a5843d04031c5f528db63509122458ae0b142357dcae5284e20b90e2f206060461148e001132bac6802914849c27529690a585a70823074b0432a25831d5d58c10ad7a34051c47597de343f38f56074daa2c91650a6944d60d11b27c503470842884b60d1bbbb7b0b296dc3326c0106e52690c9a3baa205981587c064084f8688628b9535e70482e2810a7921c6d625252ab7616a8329302f57fc5c01c43569e980d004062e4098d24407a4162a544d5695f4035593313c962c5459ac9a00c2ae5821c50a30b8266400a3b2025a054d511aa15638291e38514c69028cca69a1c4490f2251153f484239a99d95ce8e1096b80d5327488cb65512b761eac4898a56451227aa0c0b254eb4786c0a2da690e2a40cef42ad70523c70a288821bc1d3284051826e3003cf52a56450a96e30c5cccc49edac7476a218b90113343945911b98f11273523b2b9d1d299648c1840b627319b4f851c1c8dddd83b0c46d983e8901d711babb1546a215479e4091018b29326451e4945d563d01fac1871f7c0741aae83dcc69f5e9c68d0ea4c42b58dddd6d3df1c4e7f6bbb7bb4779ba3cfab4ac27a030d2dddd3c3600f9e1c1829012f201139e1f20a71ba8a09116a815371df58393e2815345aa0ad59432081edcb8a922a88a291ee58c818a15214e8a074e13ca885f4c1e1e52a04285122a96746b4e58c10b4b093cbeb2e107080f2ae4831cf0d8f00384278747044898f674a33b1b80fcac8256ba48238aa739a99d95cece144fda865371c714aa2e099a855ae1a478e018711ba6698cd132a338e3073c806024a32089424412999893da59e9eca8a4a8c0e09c6c0e8418442034e1a058e9ee6e29945c618b904788e2811365e5364cbd7fe03f709fc28490132726589ce6134f38e37692a944165cc818631531b6370deab49c07ce134b48a5dcfd9297b5e40b30a0f480c50ecc28a209cdc5182418234a26297049ddb879c2084a965421e5252f2492c90e0e9f604210b703e993670653d0dc7a028b23b7bbbb5b3a901c9d889273cab84afda8848152d180076dfa14211bc0210807214004414a2653d82cef3394b80dc719678c42e264c28490e5b0bbd150391a2b6bce10f8e0facc5d883f0a4b4d15932358581a4bd26062cd3901206406e190a3930313d42c5524f123722f924612342c6767c70a47928082e842ad70523c70a890721ba649a4d142a5008414902019596524294309122f930c25642ce1c18a344389194baed862148ed8118518783172d40a27c503670a444ce108951250e8a62cd931850908ba8e10e5ee55a02256410b6e49112bae45efb08214151b7c219211058493e28103051740dcee9f33248f6807281e5b49912245861883b402e2088f0d407e80a0aae049d9f003842787a791dceef69e32b6f7103e209a565b5050f1e4f6bb377d411fe107288e40021b8000e10192334b604128a49c717b4697a8211411a5035d86e20709d04fafe8d03fe0a2c32430f92b85458e8a8c2721eb52828f127e687727002808568ecee9c66947878ae143f298b3520539a1530018457ab814f0c59131822079ecee6e243c510012527d1ac308ef241439e190c104769d8a0b15d0a0201e23b23879a4189172444a12195cf247678708aab66122ac28117cb81b6011b5c249f1c0f121c2e7089f18f834e97ca0bcc99a4e6cd25d67a7084f8a902a828a2bc2aa7bcb8b27a746230896f7eac60d17de830b6bce2bc7735c9667f2d0837434b8805df874f1d305d0b466f3a8d05002d6d40b2fbc60d2fdac824869fc30457a94384638f2042c67e70849bed050383f405a843a27b5b3d2d931c22acae6f027498c3f40c9fc083e24b8a4c3eef602c8bdbb43a0856c2f56eea73462208b904e567c4a1e8e6206aadb4157561cda145d0a39ad88e281e38225eed1a33be9033e59b890eeee6e0f42f45377476102306e7f8c6d41f9418a807ac4a2bbbba358e288db303acff5c300646c6f2eac69c1217e1a87b6830eca8851481143b85c45c1a3909f6c5a9715050ecae822179429a63b12306800c589bbbb7bd60da5c86d972eb3052aca34e69c282794f88c518abbbb0785644e6a67a5b30345926e6f1ade5d48e0e47ceb29756697f5f979254590f17b946df0cda0c6d6438bdfbf7f56bed21fe5d1f9fbbd8342c02160e0029882bf811ea0c277df48c831948a3c40860c9bbb6722943ac4e81142df21e39a6f967103905cc18875b4444232219b805909b8527b31ca248d23760e5882953ce2e7ba4f93eb44340e974a241551b64fe390d2387a891b9b4e1214f42363129f185a02e1c315374926a711b6e1d1ca23d24a23498c782f746d7268f2699394af9ff65bff514aff33d18fedd326b792d0243409db9c4c2fb4c9b94f5b8f39fb0706ce646a1c3ffddf8deb5c707f9b19caf83531096eaec8f8022ea10c1820195df8970f341facddd71a87f7eb641ea46d1a0167b9366549705c833482f4a2fb99999dc0c1af690a64f3b35b9262706f3299ae4bebd7736bdc7a4c5bb11e3b6100e2a39cd6c83e56f8bbb9ec4a94a01a5e23a8043a41a9ed6c4c9c6945a10c0232f45962c5750a24010c8c802a18020a018518020a31c4e587424021a60732ffec6a4440a8c365feefb26eaf4c4a8a98942c79010d70e0c4a4d4526b85d04c23827b13a542d864b27101d201703aee140da192254c9e78cb347828c1c99f7fd32618adf78f50cbbeedc76f41154731cb5201a9802b9a55eb0c6e0818b800da7c30050c85e80bc32c0cb35f776363603e5cf81765f816840c5710aebe7f0503c70f57d877b7fdb087aa0a571866e1aa4d97657bb0120efac08752bcf97c256dc2b53e375470d24255ea834f9e14b93aab42e6d10077f467975eaef96010cec7aa661d0c9d5e719d8beb7f0486ee4f04479daa9c3acd61721b53175985e363013007a458705d7cc1615c87952f4ca5526cc3ef4379122193816b3229d0f8b95d9b7c0925476e0721bc6aff124c2c1fa2e6ee1ee51229f8d6e5d44a872b8190f5670d4550d497a1777b20bc40c63531da6d0b557863e550680b6d995c71ad848824fe51094e489bfc6f6893bf0d6df287d1039753681cc95c6b4929956d758d92c6babdc517e5a81655d8dcd043222d6e3d7a224b861e123daa33de6250d2aab962b151c6f4b5cfe6490555c82e77fdd72aa7b4556d3ff6714a25a5545a9605638c5b8c316e8f6ade422ffa483f14e2a4ac80c559d653fabc496ba3bf7d57fab14a1929edad5acf9b03260c40bff5a88e50247a5a452f2595fdb2c6066a53cf95fd198c903d24e2bb851ed5a250f5dac61b1f2a718275b03f340293e46823679cfcc6db08c79d3869bf6eb340f7a93572bd556870493ce52ad6c117a32a2568efe7a930a4b894725c2fb142c07dad52b10e2958c7143087632a98fdbad2fd5af5d9eeba7fbe9e62cf7ade31bf39f829aa5a59d35527cfe127d5f603bbd15a44a0cf18237817d9a1640331a016bbc2d4ae0912d76275b95ebb8e5aaed7ae245293d5d46265693286d5d55e95ebb52bcccdae26a6c0b458b9ebb56bbd59a675155dafb18a6ea669b186906c4e90d0ae5791166be644c569b1624eb4b89c94a1d2f56fb6d2d5bb194bd719c984ac458b5d5fae07d1751dddeca5b6dc8c5f3a97165289bdaedced7118c3905e644b78d675b6e11001eeee1e3d4a8fd1dd5d4ee109f3a970873636021040010ae0048fecd0796582ccf3615d7eebb265b601adc8ba06d0bc3d3ac65d5ac862c944dd46616efcfc2fd073e5758928c5aed0a659199d73522ca3149b14a29a5907eb9011a3568d08fab4b21c1ce59452669f59d89f24b4e62cc045008e9b0104e0f22700007c2ed4d070a18e5b5434119582bd4f35e0e047fbd3a462651c7966b14b4efaa7c64169bcfed4389a6251da8fc64067b56c10f94ca9a6659c28b4691423726946b74cca8cca18e4cff93272e4112ca191714d0629a5573f641bfe0ea1781ffa14633cd9e0e76a975536d0020a5268ec47b5694573b02da61579b409521fa8c5b12c8a07b58215168659549b208f140f0bf5038a5af674a3bbfbba2e4b610528f73bfd50a751644e472f02b85c80cb4fe96d6a3fee5ef47473dbb212601b138ee790c0753fb6a3fbf1cbfd18486503dbe84735ec2d064ec98e3247f6df771cc5f11c9acd98556ed3fd53b3c1a1012e36e3f673f7e47b69e0aa924df29be543fb75e0c667938c93552e63fdf0dae039ae4a69fcd930720dcd9731d2de8cc8b2ee0a3ffbd1d6160357005ee142e6e766ee18a506259c739381dda37497ee16a597c69565e086b20650469eb9dc3b3ae4b9a214c6aea3b44d30c6ee7628e29cd3bb239494765d0d77e7989ab2869435a2acc1152e69537777d30bfbec3b1a7bb83c3d8a24b4ac01650d66e6eed8cc1c05e6deeeed0ddb5e8681733861373bdb8f9140b71e0ed9993d025777b7bb7be4bf2ae50913e0eede5fbd8c00b750dd3673c27880d2e5efba303818633c991a32d62e7443082184ccf6f387f4b234d2d9ddf4bba24d8c18ed8694639bf84d53c639fd74f3428b60f388d2c8e8cd23c836f8edcabf107d72ec39a36c174c26b6c1dd30b6b78cd103a1ecb7cf41fb50e790fd66e9472be30470acaac193fb835aef7afa6c2976592d0b4e766e3ad17610c0eb39cfe141a833a4078ced7bb4df5e47bb7e88bfa633a4470b1eaefc4b8732aefc2c7332b8c9ede0f7713dccea65b11c1e7ae8619be19a217b69afeb337157aa1fbc25195a6339d485f2bbbffcf2cb2ffba12efc1672e17b592df5e6c36f90eee5d358990cadb1b65ecfbd564910e87e76b57b947ffd012f7599dfc91db4b8f2e14b4bfa273dfc27fd472f8dfd2af3359e85d3bdfeeae85f9b03bab72e002ff62793e9bfeb60e66197755997f597f5b47ed84f4ba60196852fb26ae947e93b075cd673f9ebb187df55cfe5b3ef4ca6ffaea39e8bad40a62303df0cab5fce97733bec4738f0ca7cd997acb6e232fba2b76c1099a736887d0bab57fd327bc3e9cad8d8269ab73f9f85fac55b5f6e3fe45b1f371fd6726fd98fdb54bf868d6daaf6b9f76d867f12e9519d91ae7af9f04bfa36897c9c6e48c8e97237dab4b5fc4de3207d8419e9af876fbf1c66b86cccecc73d0e7e496daab15fcf25f9e84bb2355c3db5297e4dfde0bd69536ce948cf7d46aa5c3d91627cd2bb7c4bf7d797734bef5b8f96cf9eabf1fd85ff99ecd773b3bf1e560bfa437b63799885b5f4597d79afa2dc267ea77db432eced4733ab460d8dadf6333d6f1e0ddb6b0f81cd6296456dd6723bdb62bf9eeb2554cf70ddeeafe7cda2799996ff1a2cb4006b4a36305eb5642cfbc97cf7318fa2892c1f4d321fd3fde7d2c97771f94bc67e7d657ee6ad0a216cd1360fc6f45ec7d19b6b7d8953d653eb31f661cf81729bf82dcf5ee35968c1e48255f334f6ebb30bff3695575edd6e5a5035160d8bad6f33fb99625e46e567ba97a97c636a67835ceff270fb21dfe579f371bdcb7b9956bddf2accc3fae5e868ef7d5669d07e7b18cb59f3cb7b34c0fcf6b06215e3b2a975d5e57993e182a9db7b557b945f956fcb577a229bd561b781dfa3e47ef34bf686d37579de7abcd8afe7bac0dbd2f29748d0d7a3e4ce1fd52fe7ce3f350ecefa106375a339f4a8d69e35d295af6d36877e6d06683d4c66d0528803bc32f0c5acf513de70baf22f9b2e47fd4d374823d23d1b91eea116cd1619370e8ed782345a2ceb0b392e6a5996bce87401072fdadd17b52c2b9d48f7cc8e4c04e1c4124c64913a838c202ca45042501641e8e104fe6e7f584bb87de403418c382208257800ca922d5a8a76062f616ad3b7e929120e562e7b52036e93658465c409be0c237ea448f9f9f1f1f1d14295848f2a091f55122befcaaa24569748f7784328d91835b0eb0d35351dc826dfa965ec3958c776a71377ce6e3e36bf0200e118dd4fbb3ca15c8660acb83cd41ed29bc1c08d46cff22baf552542f6e3b9a11b68fdc89eda7463b97ca8e2202fbc3941fadfe9ee987fd338d8e5e767cc03132d10c2c0b9b43caa2d06e40de2f221ab66a1fafdcb77a167a69dfd384d7b9487aacb5bd5e547150779e9bd69d37469a937c8e02c0cba9c702c1602b569fe8a853f6d9a9665416845206ea6ff82828b9fbd9665a2e7ec10f9a21fb27dfc9e1d19bbb07d566588e348e5bf53e84f8d43fbf937e6abb4f6cc9aa6852a0c8253609005abf3360323e18e6ef4a05a9be63b16dcf47cc81b7a794396a54df3e71cbdf6f00782c157aba736cd1fd59b2638ecbf53cfbfa0e0bcf6ba06fa97dc9ecabf6e4e6d3a79daef644f7f27fef5a8766ac10a7da3017bee9b13cdd06ba8be68c085acf602dc76bc6ec7ffac8293d5b3fef22ceb699686ece9d710ad675d4f3fb39e6595f0a730e8e439e00fdbcc9f733e5bd36de6cf79d1e074e76750b8cf74e79b1a07fc9a49a489c49eb6465b1c611d9b11ee077f7ce89133a6643fb0abe8669e441a1189540289a9040f2c25aea04a787165d8922218bba895b1d6b56392710dd4d8730c99ff51296d1f1932dffa0c060e0695f1c5d847b00a83da14b1183985c2be93b4e9489b90f411295bca296d72d94790e0902f39d57da49120f9e83501eba0f76b22aebf3fe7e823b14fd0990e383f72f9d99d479b5036e0e64fbfe28b2c523b620ac53ab6ebce394f8146bcf89e7c1aad0574b40f3dfd1ae6d3901d42a9edda934f2feb49cd7a356cafbd6673d07eb3930a8e77e480fb3885e2d1393829a57ceeadad879cdbcf97d25a3fed90f99ba4757bfa3adbd3977688973ddc713db59e7cb823f443bccc7a39f46b803baecd7ad27a39db3f80776c5f03dc11b2dc667b76f8f600eddf6d6291ed07bcd83b9689a6ec70b987e9852e72a387bcd84b1814513838e0be0344d373933a56b1e81e1fd5030eb36da488ff011a47d32b2dca93f3add7996fcdab1fc945813cb9427592ad06d1153cf90b3052c6ec238d247e7de43aa7628f479527f4b345b5e9db04a19452be7c868f8383e281e281033985828f03a114ee2feceeeed06595148ca4c1721d02592fc1dd5cedb2ca0c15706659d915d2ae86c3a53feba7f19c15064e85074e9b5e6525fb95fa599f69f77a480577659f76e75bd3aa1ffdd00dda153da48213fdc7a913d5e13b510e8645ebead798da1456f51011d823fd47938c87abc8857007e40a7b322c023dc0ace308280444010f45b22c38fefe8f7f7860d736dd0b37a2176f6d7d4425c7a883aab36e02a561705f8bc10436004f7120be5f03355003916efcc9b0e0be06ba61589637b9dec4edcfaee0fcaf0a08b9deda1c90fdc8deb3f7f823c3b06f3138073719242f12e18d503e914f9e746c930cf04207ea2600ad38f9de40b1a4ad3889bd0570e04a96f6add92f5e7e2debb17a039f71376b5915bbb40360d6657d5bdf160c5c54827ed7cc0aee7320a0cc835807bc738c6bd9cd01d63750e3f0267810ebd87e583666005ed8b3a7dc3979da2053896723c820013898ced13ba06391722c7e6e13c932110c1cd34c046fe03bc3c0d5b8b08aace6ba46a39717287276f62e4697e557790a8a4517ecc4ad31c8f320e379a54506f779010af009c0a63684f0ebb9cc36acdb03a15f91313373cc4f39168ebc450ec8f840a6b56eab33a467db362f26265bf1b64d262b7da8c6bc8cb775d94ab7799e9795bc32baaef3b2cddbb62df3546262de2bbdf6dbf77bd52b7de8bdd2b6857e7bec37ef51cee2c5a864dbca4ad7759dca68345a79e9baee57ba956ea55b79f1ba5ff9ac5be9bad2bf945e4ade6bf5e563625e685cb22d93d95c623e54615e86c60b6d342e75cb5e3c1be4e54b2fa547794ce9c57b79c9646662b6199917cf2526dbbc92572ac5b864db8bcccc8ccc4b8c4bb6bdc4b8649bcccc8ccc4b8c4bb6913caf542a6d32cfd5994d466606e6656466b6cdaba58c7b9997986ff9ac24230313636f38dd520996eacba3dcfaaef2756921b1ac8c461c73af339fb34398d07e48fca933c47fc2597907bc6a98b03844229148f6cbf972563a970f3dcbbbd491cbbcf6a49fb14824adb3106017fb7197d4312fb2a247794cfd01afb38444eeae69cf9ae85d9e45cccccc1c23b7887ff268f4a210bfa87aa1ef5e148a514445a3c9edd6fb3643cc0c6cb5188d2b6b935fca6769c14d7bc81a6b6f696c69acd9faa8fea0e8d95aac3d94c2a227d5ed47d5b71edb675e66eaba273d5717167e6166761d157be3b2f2928dbeabdcaf54ce137d7c38c32eddbfd88f762eb6fe8c0c74f9e81263ec8b8b0b8bedb6efd0a37cc49b68831b8fb628fa127f0ccb4b49f485482f22f987424f8279179767e651b64566e6c81b1c65a32c3233f3c78de10866d0f499eec7b9d4d27bd7c3f0bbcd00bca2f72a5f920fd28742a1c81c2333894422912af72daff25c5f5cbe7bae2f2a2e95543f78499f4d4d54432c2abf5223dfed1b3df62ca1958fafb36275d87efd1fa75223f78fec0da71bfa7a4415de6d7b943bd67f511f62aca2945689187d902e8b88c09e863d7ec95c2193a3d9e4f68bde7acdfad06771547b9b41f451383ab906eee7fc1ce273f3b9e76c0efed3f3a1f5dc50d53e835a6635d658c8b719b4b7beb719426fc1cd015accc3d499fac13bb3b55083d46d7d8ca6b9e69a6bf643ddfe16d2301faa3335e6adaf6141c342a1edd9bb1a96643fd3ac1402ce5dafd17c8c8d7994d3d41ff05a3f53f96e303196a5b2c111d77a91f518f6354a4f53faa6f9120bcf428dafa96f7a1bed351b04fb98c7b6d7b498c7b2c7421dea50873ad421eb651aa6611a86722cfbeb17501b80d97e96aeda637566e66334ebc1bc16533d980f7dcc866dd8866dd8663d185b81a92303dfd0678f691faa5fce8df9b26fc1ea17fa19abadb8907d16cc06a9bfd920351ecb429585ef1a7fbd4d8df5580d16fa498fd5bca986e649345f6a9a2fd194b4d7bac4d2bfd22b24e9fd4de328bdfcac4325ecb56f1afbe5704b4f2a3ddc66d06c0cd98f54ea164a4f2ad9165aa81fbc1ced47faac249f244b527e09e6bd98d76ace9d79df7a789f55ce640ad9afe786b036e970f66694bd84aacc8feaacdd0216caea8b89851a35d84f8cfbf910e02cbb0d4d0601c6361bc2bcbf626c10ef617c7816e6513ea3a13ac3be9a6c5ce816665e50e9b03ab1fa31ffcdc20bcd26b3aeff1f92311f8cf6319af53030af55fbf5ad6f7f2ef6dded4d6ea4625279ced41ef6b205ec6758c0fea506f65b0df6190df621f9decc9b6c5c00c0dbc0be05166a7c8dfd68fe85ca2b56b1dbd858ee46cebcd84dbe0cd9cf8472acfe5797b7f0b6ad95ef6b7fc5d820dac3580fa33d4c68d6d17355e5bb7e393a9586f9231dee559aebb932fff3bb66cf1ffaaefd9d4d2d46064da5723faa93af37f3dd6f30a39faf33b23adca3afe7be7ec6de70ba30305ee50b53bd47b9f5d25def727d4bfd722ec9fa106375a37965c52a31a76569ad8dbe86a96273f0e77ec47d0e9177ccdf893fed8e3f67457f89ac6785da8636fb175667ed1dd4733cd7c81722de7311813dd0aa89226304707cb1cf44d67bfea2efd9c1d9214cf80f89af59aa6387c8d72cb3bbbb7fdde59c8bbded01c7f7e332dfb087dbf5996b16f7581d65f6cbb9d95bb57e27aef2e546d57aaef2f562b8fe0a9cf5aec73dbc9cf53c1ab417bdcef6a11eb417d91eb6bfde2bfd2dab379cee653b6ad9693d764f4be983f3e6518f5a8f8650a056a8646cdba862c9d4c800000000a3160000180c08868542a1308d92144ce70e14800f67983a68623e9347b230c6411405410c8388318400430c328620a3d4d108007dfda21ba9a22cb27c7ca07629e6072862d9e111fbfab417ab3536469cb2f5993932cf8931f4e6b2709cc28c1ef92a2bb25e6280d14cc0a0825d11171b3eecc99208a20838145c9d80942c1d50dea38fdaab1e99ae819b92a0b0c881e273ff76b9ec9b22a53bd1b15016359df0b0a5e60c0b8d5be313634caae73dc4f2b5325e1389490c3bf45f4a79b090c7e7b8f65f68ff01b065372efd4970a340ee87bf97f06b86826350adeed3c45e49498e787727b1a909af4473a30cf09d0b725410ec057007725312b35b05002089dbf434c6ceb58563188483b37c4454ec2a9e5c39724d54e51a2f4c5aa221901be256bf26afc878f99c9d69073ffac3e1c2d3d14e07b80dfbeff5fc7e21baa6ff5db3d80b477cdd6dc361b90e7b66322faacf5d19d1d32ab5340a428362ac6fae1579ae5400aa0cd48ad83aa35aa8357e48077e58013475765d9c7fc8f4968f3af570fb4209479a625dfb5782cca8a69a1823536c73751deae91df34f6089e2406f5f2101b11c0b90d2550cadab7d450d52ec0d712f638009278d55e6341078ba697cfe899f95632316e84c54571d1cdba646f23f69c6388c981811a5e62da38a2b2fbda0ea34701f6460c67ef32989020d9efc7820eaedaec1337e17aeb89c9eb189d1c4ccc4e98a5d6de23d90e91fb97684b027d14cccc817d9a5da8070acc6aa4bcf0411872ed9027153e131d76aaf201597a408c3a74bf2ff1afc5a9bd7a94cad8d7fdb5e2a545ad1a74b58163b24ba64a23b00a5569aadf3a973f5a74b5cee4f2df3439662d8ca374477ccc0929a6e065df2d79867fb4ae2d9782f82699b5c387a66d0b30804894edaa45f40802c92e31af9be868010b1461a0b77a37408aba311f5c54bfb8126af3d4c4b1d9d1ba83fa200b5f2e7c20ee0075f833a41bc29e4e6e369ccb3bc5ff7329800a906cfce12b48c6b905a514fa616a97e679955091df32c1e7c923051a6d6feea2f309ee8460dc7c82b384371c895453551585cb4cdae45b05b5d7fb1c3c6208000057de6d68474af6f75db2ab451b34b250a816c1ccddd836cf20ef77c8915dc1e5cb0465791aea1a4b5a0ab2844b46a015c5ee7fc8ed308751283f73939c0017e6accb5ff0d053f5a72288efc7c7ed4ccabad33f2342e22d2f88addcdab8f85a609becd75b1cd9a768c32453275d482de13bfefbf7d7c4952f299d768e494a3f8ae8d88dd10b7e5e6ce088109144ee6fac79855de2a3ffb2a8ea1160ed43b5df215695dd2a2bffca5ddc76d06cd1214a131807614b3cf235bbe219534a869748e178a3b4d03b3bf2440a0952f579e629c24912be8f97f1bc8e3b6f9df133f715c93995598b2ed36f1681ce280f4dace65f1dee40d25b599a063875b52de24bc1ecdad8a89051b287cac400725573ad85adf261cdd382be4d785ffc80e8fe940665f1672eb357045f812c054bc9fb9f950798e6f1b6736fc92680ddd4133e464ab4e8bf4299cac52bac6d206994421f72d9836c6ebd9f36ec9fadb479b1f5a164f23658db1f0f4038f00d1299a6ac8f14250dd5499c9ec1ffdfd04e9f1f156183617f7403e3227da7035af76100b7f6992b3888cc0747441b702ae2b6df0fd807e0fca4efe7f5f99a08cb68e3450f05384b848b631cd430b945d41970d35230bc75b40440453681077531ad7a99bfe1266c95058cfe486d9d7688c366c9c1d860811cca081d1501451ae5aa5a22d9ca4b9212f921434cfd98e0031d57420b95db6ef037945fc93e742313ad3b3d315fb25f52760f928cd2638685cf2327570486e47e005e20d5e485cd661658533cf992508a822396d8c36541714b9fec3dda181a50d37d1f55fa05093d0925a1764dab0a991a6a205d2da0ba6a126eb5419bc647aaee3cf5247fd4a481be43fb67cb468c3e7e555141963647ea0f021bc23911be83a21f3d83a1de4693c07081c99e4d5e5e06716a992554c79b8e6821202d27c8bfe144b5e948b21b735f7a94a75750c60e1813d52db3a6c2e9d7c9b13a7dd007b63c2dd2e927195e1a7a25a95e95d2d74f6c36eaf2de6534744b4d945ad854e8a15d496fbdeae7788cfa94a812dde6dc7b8011ac1db96725a9262cbdc51896f7949e03abef8b90073262aaddcde4b2236eb5b82cd560d993c91d3d2018fb511ae5575d578e62624e608a612ff127e3949ccc0e00eec496ccfccb51ff62ab90ffdcf32afa82fe06b57604152d0a94ae9cd1ce37f763d1b233244d15c07e37740e17621131b3d9304806fc3df67064d147bf8a94a9dd790459a4f3d644189aa53b334e958f893685829fd9aed15fa852e43a2c75b10bb5f29a59319d267a9aa1871150aff571e8825a99932c22156485267f3e0aa8a7eacc26dad6a43942fcb8da14bedb14bbf83010067f682b9e17b1901a84949a977d07e0250009fc362830f42a64a444c87e30eaf09eea04b4fe132ccc29d8f76b0a7f177ecedc9883be8a32f46012f8e26fc5a140422715829b7c2e3f77718d564c6a00ab0e6c3f548f59284f6bd408932d54997f141703c16584cf4fbe5f0a22ecf84ea9e2021e44097064b3392623e30c778e1420a9e3dd5b7517aaa52750f34d9ad43092b0ac72f418053dd0ebc613ac8de21a9653206281e124676e516f539f8934c48f8d1abbfdef6fe1dc92d917953a443426303a506eec10181e12da33e78630696fbb13b53957c71d38da76b403d157518c2cf9fa1e2583c364e55eacc52b7f80a40260564203300bc8d414740018d6146666a4f529ef62aa098b3361730a858179a5f5b7c1f6833a72a7558357bec15c1aba9302a4a223902db2561ce307b0ed8426770851f3a59283a649194a7aa1ca40b7535938e585ee1adf512216ab8e4fe1288a112a9584bc2ccc2e101691d0c19b322cb7864b96405c92f74c34b0cfc0649ad2e095bd051e4de7fd00a1622d81817af2a0562836101a57926617e42cb6abeb6b2325295b1c8af8662017e0d3259102057efd923b23276c45803e16627710e0cbaa2f5d494736aaacfc25314fe78c973d405e83c792aa1e9328159d94f0fd1372ff4aa26ef3606f1806a3006df24849e58c6409a09254f479e1c973697bd954ba4404fdcfea5c6be19a529c70c66fa39246d29fa96e2bb9d07d92df63217dd62ddcbd855045604a6d804c60fb8f7682994476992b01e6e4f30e3f869c977c76d7136d29622ee39ffd06224b77b1fbc9e63ffc17c04dcc680bdbb81890814bfa9e43c7ea87b61de7db7afb16d5266d4b8aff2bd6f871d55e9165e16a7332d0492f8f70d8f325d6c685c8e970d72e152a047e67d318d080a0a1b8fab8e42cff265311dd592bc66276a45509f6a474cd2780f630c097cf28808783b4b964950adcc7b2f78bfa32e38e8a75e1cbd37f4f8696ab02a641849ac8098e3476a877870c9db2cc94670cc3fc14c821ecf70110ef6018c11b90e47e685d99ea75c17c74ca2419a38966efc8b8f9fc39b88b46f8e572610a2f6707d559edc69681baf3f6da4d61e073a7bdd1893b30fc0f20a96cdcce68388c1cf7a9f4f49fdd4c450e099fc731fbfd0f994d0110668454bf4f64969b31217464a5227a18075f381a943ef345d92c68fef3b1f892bbee798884f3cdea47e5f29e2cbd8ff8f1f19eb6fcc0a75307e1ef4e1cf1c30ff878465a179de307e640f4a620964154411ff1274b7aaa721c0127b5f59dc9f8e1f387c798f9f2453e327ac0efca4f686aab3b42cc5754dca13db92e4e68dee058a12fbf511c14826de148b1c7cfb1c00195abf7727830df1914b56c9434f502e91ef225f5a6fd2b3459cd19758e28a085aab7792ed756c8d9fb08b02bb10c812b4d1c9cff1a39e4e79dcdde73fa3c9c642a533237c892411c66a4fe8eee709734be514313eddec8a0e4e3745cb4a210b273e6759927eb7a73adfc8a9f1d3b62fb95bcf0321a46060b2b40f352f3bd6980e7568c7cf2e02f6802ff5c117b1c05bea364f743658c769fc60d18384458e5180235f46401ad746b8c1e149c16191d3103848c71009e5fd3825b7a50d09295985a0c908b3228b69a3e9a55f4a4401b778c3397e145b52344a1699afe9ad3cc08c9a14ba2e32ec89a0807be4728d0ae30739dbb56c9f42a1ccc996f1b3a59ba681b064fbb022de9e47650c8470508ce445807887adc5a872227a8152731012c39d0f976ede18f018d00de007308d9feb86a00e20abc101051fddf61819d166793b6c0caecdf21f216b62d4de4b069fad0cc9ae4082c6cf08f5896587c4062e1a63e2655ce53d38184a6690f14bc68a1ca9903dfa49fdf8af579199650bcc1395cc4fc9229473afef08fb46b9f8df58461b334cd23541c7e6314567d1347ed5e9e159998f8e88736e30f0011a3f87e0938f7b23a1bec8be20301f05def8c1989d3fe79d4a70d80deb00320024e7411a2d1f830a26e8ff69864c8a5713e80307dc891ba83836cdcfa04ccc29fed032dab886df63a02a8d5f6c80e4b5ef9187840b33ea1ae130574ceb70d401d3e766598f5dd4f806c72c6af750d03e20e3078e9ba2392eaafd6251e6e33db37152939ea5c70f516d3c5ee5bd25dc6e4b6ecddb05be83d587e1f8c1edefd595e66c0585f7473d76930c98a6d391837443d4489e7973e3cd554c42d9dfc8bf86829a7b6255a7588a512996e4037118930e7bd1dfb1392cface04a3d16762b1cf86821b149b9dcb19616b4a4d4f7651c7918bf70d94c57f79184a96098984371acee6e9e93e5fb9710d92f8df84f7cbceec7240f121705b3e2e02224c3242e648dce933e6553937c288ed38781b4c764470210f5a0018b226817dc11bde143023f1390dc0acb843243fdd66b2e3d39e6d6745a3412eddbaadbc30a19fefe3070e3d05c8f512819462fb867dfa44b9fd9f07796989d7a1d8fb4b787645e693f2fe6b5583449ecfa8f80f6fac93f9163298918697f968fd29f4a31cf0809842560f8b37227e360bae8dab97278d2311cb8e11544c28ebd677b17940d4d07ec8b88434523b1ed69a95b99f0960f160073049ea5a5bfb9b4dd2455470d24a90fe2d08537166eeadcad7ec9f357597184f4f029d4fc15b7efea42abbf0531c1001c8b647a208af8c358d05369d351aab5ad18d9529a42b8c70f5f24885de9ab2b6adbb6a3784ffaf4a50123a42a4a5d3b7ea7b0ba5fe79c2828a412bf3e4105162c3e33eafc936cff84ca17b1963e4e43f9dea2662cd72b23e8277cc4188328ee331db79ce15644205b4c8f062f141875f496076f8f796a1c7c18a5150984a470095109ffa8375824d6a0797d9a62455779808af9442f7dddbd12fa6cda83cddc720abbac0bf475928e698df401f657a39b8ceb3baceab823f18da3510a733bcf4077a8bb56121af712c6ad86cc60de378545560845b4fac982c826e69fd2c155c898a0eacd043bedc67a82c44b900c629f6caf4588bad429937fc47e763ddaaef773dbd9c6a836ff37ed8039763b822f767c92b5f85b6442e5314b1f907db08650726b665e3a438dd83a58cc04f95bd40e341cb811bf9618453f8ed508b3e95fb628d8975cbc780d46077a0ab51836248c044108d1a4bdcb73db880a2ffa25936789ddfe7e0ee80973aedeb8e342651ccebf5ba2fa163614fb4651746e97f82b49c86a5e166891b61c5eae7a4c083ed8604920d51dc28d3b5a426b31444e52a99ed24f5f127007d623cbbd4c9e9a323ba1360feaaf94accb1e687d12d205930386daa0fa85e0714932d21e22cf5a0108065e74179626196b63ca2801523778f94e6661f10f2d59f6d66a0f7707896a13905ea0021851a9c9293e4a7dc73e19d510d53e527bd5ce71910be43391b4160902fe8872deb7d0ae072d70cf19fbfba4e065ccf4bc0c674f82e4ffd6c12c7c35b86415c7b515700904dc15832a0213f28f4c87a7c3e25f4c88ac0bfcfbbd7d235a1afe3fe6269161341c6a34af683f4f7f2f6a8dc06ed5509d10b19c723dbec9f8c141c850687291ba815e93fcbf034f43954c5aacc13fb141082ed282ccb789b9cd5d9727116f46506cfe9cdc336b9cc025c6e5f6c873ade8bf26f3b36f26f774167725f1157cc203338d26f16e4368b1a140e9803a378be63f153c1ad0bd83a32a3f1a49b03c646fd7df26a7773c0087c78a7ee596d077af28c600b57df2de97c181f28363ac10d8778d779788ffc7f947cab6bea73f2013f812611458c3064c4d1f1aed22c01b58aa3f43c4790bf51ad3b98e9e5e9cea203f2f3382c0bd1ece0fdc34ee867f6211f46e5b6242a591e0ebc04ab9155f830f104df730040656acefa963476989ce582a246346ac949dfb60837150e02f2bbd549eb0d59c61f72a8a8838238187b7aca94b6e1afa32fd99665e7611377bf1692f9182902c9b2b126b0d9b909749e77b720adb1cc108090f6122aca0b71fa65669e2e1222fc1a9959afd596f39d26e570079edf7a09250c38c019d8cdc3874db882f6ee6afb959a1ef102c3a89d75b9b78d8ff7745110a0c601b9d8d546ff7acb13049835289c1dbc030df97b403708a259992513acbf70dd063efba6eae80481d5f767443e26e7c7182c39b85f23520350b80be14640083a8186d1814f1e44044ad52ba04913824a1469977d0ddd1c99ba227f13832837be88c2be8d1b063ad5ee7d7b04072e0060681cc4b6a2912ac5315925b80e55d548875c8a650894216976f39443e45563e8c0a7224f49a6580ae14973b1ede13047769fa0c412b24fab68995520c5344d5d0fa7a9fe0fdbeb81956c5856c93c3be49c20f48dc5f1a3e63b7de1eb4ce8e842be2a05b9f45acb7d7ec6cb32544f87ba3e87cbe25fa83d101c5bd9c0ad96e82fcf1f4bd1fe2cda06b6a0f1bc23111ceb6d79104c009e42c08782a3196e47969085212ade22ba78a3d3d86f992117efec923b0b95abac2e99bd861840a8e67f3201d9a555fa5557a0759fd21022815bbcd3a49b17f2803ea080ed01c0353e407038a8a2e4d6020d54fa0240d0c5de18eb059933091722105c8e4a56c13a4d3277e348ce8542e30cbc988ee03baa6c495eccd9897710ccbd4478ee08093e55ccdbadbd11fcc3a0ffeb0f6295767a89aa7c45542f3cfc44a6e81b290cef652fb07dfe06a3ea85fdb44459c698ca0029b1b15cc23f287e3fa06e867bf6340c658c101564fbd1962cb516d1255f6860f80d7df1181ad0b0d005859d0e6e91eec329259983670c002a3c79a6694602f0873458ae5d1aedb9f48e6c0565d60e2b8945e175411477443b1206d6abf8f96fb2050b8aba95cd104b1443380c17937eeee20b5e469b330c91906e96b7c7c3596e91ca79115d407f7d432c62e5538073d7b092b1e67e87de45ac62efdd9d5ba1256b17448d55597817ba113413cb9d74a444f9c0bc80512c281e96f9d2de3094ad2b039c7351181f26e668ec9fe31c5b29d0fd17b1c17f7fde0a201791c788bbaef52f40cfac960542e22c8550e93c836b8b3aac02459ee0aec323349791d0fae0c7bc7e2245c155636f0f8fc67efe73be924eed3eafb53cc4155accb4258630a075e19f284ba5d1af45767c7e6fde74b428ff0ff91bf594bace68167e7524c80bc982269225d1ae4beef97483a1f8e88561be09344e1564420a5571ce3744027c21078cac9394fc0f77d544a2a0b905504d7bda6bdd43d71553948ee50616911af0896f841a6e124f077b0e3f25390237ccd276fc01670ee47d75a1bb5c63f15dde461149bb36a8784662f6c9f47c8da897d5b41bb1cd04896d86851a8f00c0320135c4e8ce25debde01153e0f1b569a1e46bb32bfe08c89612c6e14b2f2c67549142a2258fd382fff49d04147d482bdd20f26fd12b11117fed69e73409c045772544095e1918318730693ee9bab9de2c3d97c962e2fe2de224214c81b2b185b822e48368609705895d24c21a5b3a2851ef158a94b7042bb3b641791ec7e163b2212c1858e9f3df4cc44b890ce0405f927ba6d68ec165e731f8661adbb6822c9e4efda31fb3a446c34769a59b4ac2e768c04df816f2f55c730d2be8f3320193aa0e6b9ec84224ce73f9f829c89fd81cb480921d9e453cda65efa596398d751145c5c3ae32194c73da5f21963f3b9ca87c357748c107a8e6e62b6983f3ba9ea3e257887be1ac416f6171666667d0cb7d55be09157850b672c75800684c11f8d1463fffe2a22d0047da134e09fec7883e48cf01e31875cbdfdab08531d5987f61245990909526c836ec50f09186906bce839d92c61f63636cb0ffa530ceb56d37cf702f17855c487f9276ea991e92f95ca36921eb3289450e0a8a8a0b3c2355b78a5f5deeedb158cd1395f245ddf1129da80af355a0c909b6748343904e7a679e7f127526d4ab870ce1c7abf062b1ec64c7d0343bb106b048127ff249a043f120e860b681807d6798e5650d4cfd4f48882131e2c8243683f9268b713b2a7d70e9075aa20ec6445c4016a4842d8ed530e6c74bf79de4cf49da0268dc5f8bd44851fe807b0c9f31b87cd7ba223cc8c781da6e26d9627ba52f49d96eaa29671a78404aee590c0df130240c0894e472846e0fdc4c02ba1b35a18658fe81f76e76a28427837bf5d50240958b186b59e15f98d00d7c379872e3ee3d2db5756d7fc56d434205eefe80217c3124ef0ae6962eac69f1880966481d935bc24ebfcf07d9fb003d415361f0c79565aab139706fbe9e0c86c927bf084d71575a2a035b3fad969b4aa0c3d345f75b7025acea52cd26f826bbabad36ddfbc34c9838415205a084214d97c2614cecdf995ad627063089da852d63d72ce0d76b1f122dde8ec0315b331e2c932acc081290f16f15fab1340c511ddf39464be4610a749f08aa847d8d0f90ab85b3fdb13b35e2f248000f982e7d3623eae03b34932fa086363f6f961937760ec686f1c783156daa84c35d4790eaf9fdb906912618b8f855680a5ec0052b8e685c50577e294d6f90afa89e6d412513e17bb1bbe9ac3dc053ffe0372ca9ffe92afab2192f54893ce126c4777fdbf349883fee0537a168ad4842f270b860923d388b4d0a886c98c7c18fff2670be0963092fd170521e1b2f8382e642beaa45dad616bf401ce69be5b097938f56697421869905473a76b617fa0de7f11bf889dbff15109ed061516a74b4712cf689daa98a7767234c5fb711dd21f288f3be372be482eeefb3de56e3959afa30f9733378d129604d11889686c068304c7d3321785db76e2306fa6c128dce1495953d98bf89da49e0a6db2cd81dfa7a9b9fd198e523154184262c1e8bdde5978a490408a11bb0df2671d60fc8185ea19aa29434e151ed0df29e0d6cb9940c525015d89a04c16f00e1e8f29c3aaa69c4500841438d4f35a9477fb22fd0e2368aaba8dc05470407217c22ee6815290fb862f3d5710623ca4643a8e9210affddf63db7d9b092c62a397684373a6b3c38d6c241a91eb23cacc6376424789b87b3de0fb5a41aef8b838d15b3245871d8a0ac39eceae3fe389758c2613ed425ae7fcda5f11c244f7603c672fff78cf33df7fc506eb61b96454ce25c1e4a7d9486bd42be190656c01a0b55a21b3cbc56c3c389e2605e97dc2d26bc617cb2f3cda8ffa3ac7543e820430fce89d2da3efcc4e2c6e6ff17829b870f3cf53d8e299ff38d71686554ca177ea207790e592c7c892e91bd7b2ec5503944aa14bfb9bc0e5722ed6b5cb931be370402e052ab9cc3389316bf297a18de8fb24e0fb0f49a28e2d2a4d41a2ecee26c37280a397c2ac2797c39b3a0e97ba19abe821fc82b9a52d33ab549b9bd3b002c686ee36c34c699d8ad1bfe37e2f6e5f40b0067bad8662d7013a410bde684f21881c56102fa5389b37d10c16b3480658bfc52d253f89b47af2184b472c8d1ceb7034fe9637044258ba2a9cd2f6253b6de063dda045fe1278483388a1460e4a128bac965384013665586d228c9e30b3f7f06194e3fc8f16258343561794266f9345b70de71950fc398fd0b9acb306d9945e880f807e2b5c27774a8102f3e5cd999f764ec631f9a6516bdefc1d81ed1bfb9faa13535a3600d1cc3472ed7a378cb3d4610a70d432fcc14c45feaf1efb3adbf15359f3e4cc493b11b1b1cce81a035e91e2af0f272b574353648902a30462a493f0acd4cceb03aa624cf5ff3b204557699fa4bb5c91eca9685c7791d842d648ad10d13e0b71e18a305cdf9d331df8897fb9913c9f94f97d8c19cca3525d79bec4c13e645fbc242a31458c06deab1ff528d120f2272ec2c7d1960542df1ff34ed7dd22fd8bc718f87b8a9571a5505dcaba0b367443fb7f5d16f6bd19f9bcdee79ebe638b5fc785d26c1ecf59d8796c254dc7b696bf3abf63510db98f9980fab222f0031c916e8cf7afb10d113a641a6d239293e92e7ffa7333a71250bc12d91d6c5eca3594fe3280f122c5c273ad8480ac15e71e8d6602a9352d7e588d46876326c9965acfd19fa7bf7bf29da572cebf19c268326286642ae884604e8e3e556ccd6a83e7d9928ab1aa09b5b145895ad5497393f6418eca7a878759c0953c7daf731324dd0a81ff6f5613d0397a26cd6cb69a6247a424c1138d374e722d841c113f69ac30148c4e841848445ac8616560ef1388302620f9418b629ebac8955d3d7e2e2b29a09e82be7ea748072b24eb58eedf58bbdf502893dd2bd0a9a17ac0b05d144f2a0aee80289f15096a25ea9aa625018a9229a2893c7395a3015e19d66a2adf90fdfc0e07d15a841758d815913c22b331954e927b665d8681e480f0ea7d394bb4a184efb2e8d7002e4bf4b65f3dd65391ffb43a73d69dfbca284e139cc38aa77d956273ad96b14e420c49451b83b620950332fb31a8f04858ab09702488e61d35aae599a808000c093e909c0e127102028a4d6feb2bfbdd5cafd4f90137075421be49869307d76a29bb635efdb941845fc79df415af63b96b816789a64f2ea9ff7a79e15bad94b139dae63512ffbf04f4eb67a10013aaeece50ddd7b7d7a750ab8f44a70ed1f6ca08260fb52cae2f5237545f448098fe4bb28f5df6892b674d954b30d42a9cda176f276da08abb850b3315db07022799a06a148b9481b028fc7b7cc53d25564f3a95b7d936f317f7ebde9e65b8ce4dd4decb0415c51c7f08786002321aa0c8bad72b26d40932c94864210bf96a4e326226b085084f019f977f10ff15cbbf0f542df9f6a620adee01c0826784931349a5c0c6d44a5442ee67639b097ae67e85b503ea17c5d4eec401e735db40c0885bf24d1fb4189f83be8568f98f800725f3a005c33ee1e25179773ee72f4c4a80fa6b7206a05f062af04b2e7907840806eaa5c60277fc798b3b150feeb0300843a1b31ca5b3fa978fd294977d967473916870819d2689d9bd4d001503b2d384bcb4f95c9473c5f518dce6cdce5a5d25af32d5b48e3d9b2d09a93dff5d624bb40b445db415c73e40358b565d45cd7f4a65ccaa279f4268dd447af692713c1fad81d9e87ea3a72db430a62653530316f992c75ea8de26480addaa5a3de28a29734c40d283b82787782e6c2bc1385a4af0521bf5a65ef2b6d1c199f08a6b0e3412c90130fa5453c238da380df31a9148025a3e0673353c885da5d321b44a44fb975196340a27d1a919cd1c0c6e6952c100a8e95808f2c2cf65da5c26725c5f0f1d36a0b46b2236dc32f22f35ff4de8b02021f08df1af723dac3db5104c84b76dec6db79a11cbca2f02ca6c5844d32ce12f960a4eebed628397048daecafbcfb2766a66a2a3998144757d59571e8933561985d568dcb1ea96907176e3b29b1e74a20c19501e378a5c9332dc36d36cf8ab58dd7f9935d0f6fee8afc76c4c9d7d32b94aa21471868506a2740212b1eb2e92b758c6bbe96951c4bd5a1443a07d49da178a9481b6fd77888c117f7a781f8b0a40e067129a8b035192c37243d7416e671dfdc49b0a30e19a85eb5bf68cd50f438c68bb0799544edec89e9fa322bc5a19b269210fc934da9468c2594cb4643fc5cb4f348828155aa85b8d25eb15ff3e8cd8c6abe0e01e6e16f2fb32750eaf3514004c4324087ea554e5edc73d72a966d91ff6b29d4ef64b895eaf1117b55ebb0cd94db7e575aa8560f0e7aac0f2170341568fdf48fe655b525a2d1f9ac3277cdabaad3fa0f182c651388147f02108b78813ae96108a5ce1e126b9654a173a8b70b3e4f35265f5ae947ec5d72102785a4cc5a847a4b22f8484a72a79d19ff8186eaf3889d2bc815dcf17cd244f8d3520943229d56416c95cfb1e01868601b51437e616d3082440c45f2402f0686f93c4ce1fccd6e49ed5536b2b7cfbb654c929f1185aadc526ebfc5ac0046748937d999fc7157c08c7b360dd1ba9b230af31ea4f0c2147c4850261061c36eb328591966254af2c486a6a6b8cb33bfa75ba74064cfce903e8952aaeb592c7ed7a73fde8b023fc838234864d729d35f099eadc993812d47500e1c21593b9e1c4919abb5ebab3751df7d8b391160f194e1574bd750ee1f26580d664078009a8e2466ae2522a30ebf2f361f369978267fbb85adf5afdbb797a094506324c53e4a639437b097cf0e6b37644a65a4b0a4d79822b5d81fbe4bf5b22c0b91dc79de542eedd2ca462797a1f5320c8c7ec716c8431135dddb3a05e0c9aca55ad4b05d0c493c7d506858cf76820d39287177aa54b26047d085aea9355248f9f320958e31000eeafa0b06df7df0b39f88c7dd159fa894a9a60467b9aa2ad73f1bff2688c708d8ba103728a5abf709440b9024855d50533467cf26bdde8599d1f8e55712c8f12b806b86f05320aa4afc3d1abedad3740ddb45525088d3e1283bd54222c6da5ed0f710ea83cb6dd56898fc4417d275dae2c7788da61ee810781282eefae7668d2f0eb9956fb272b20b425cdd034dae62329a25b3b7f93beb4319339e361ce5627ebc7f92d7a9442716e105368525fb58bb8c7ca8d51fbe63d8a8768d79a1a808a674ff2a099419faf05baeb020d6e7552b6cb004fc9e3089ff172257a4a4db42832c1f0c1d4688b49512faa1db7b24dd868846c6253221bf15a930ce7e8814d808b664b30de25ed1e04abf061649342f0624e977cdda8cf34457236abe5171873c0ab6627aa8b857ff4077be45129e151e2447323ed0cce60214635e4723bfaab971dcc624504ec7dfbb00bb733f832dbffb455c48cc455e3a2967246a25cdaf3a1dab59bfe90d838fca35b00879d025f22bcc862d9dd7d066859043d56ea1ab0ac54265d88bdfde943d3a6dc087b6588613013daddc25997bfaed89aa969210838222c2fdb231bf45653dc5b24491beca629d0344f61191420692c4495eec78520992c03f11df3c55a545c4095906d0a5ec8f64db080f90511889dde31f6710752738d44afdb024b99c435ef4ad3391bb773d5f170ef730d15e4334d2afa160e3e468fba336f4af2f2b341241f45cac9b393db43da6d5fbaa7458e6dee01f18682bfabfebb7dedbd573f8151f03a2f68016e0f89ecfc5179a33342844863ca14da3dad28e12f7b9e61bd450f6ae4bb97d1e427b29ea3d780b448bbf24a529cf65406b2e469ec09d1c2292fec84cac23e7b352d881269d2c7c293f4a8ba523fe7d165b30cda0a3d86c5b0c2ef3ee54043cd5a5570ac5a7ef8e3b9f4ea34f51f2eb88227259ef3443a298b969abfc89fa7669d69427b513badb5383bbf004c18f03d0fdf378717d22ca789ec4f56c8716f2c193aae76131d1deba4c4e8e9aaeaff9992a1ea634cef25d8e29ebaf285c0f900c9512402c122a578510bc901f1c8639014da0157c5e79b4d99b740d1dfeedaacd90a38833d62979c59d49d31e3102e9413e6fc2acaa0fa21ecda83c9abe11b4553f858fa65a9c9315da92d1765f92f9762b2bb26c4bc4dcc2e4a224956a0606e4e59e05f181f137b0694b539fbcc406a83c678134334995261ca54cce960a285e178fd47b12efcd6fa3180d00d663b904145e042d85c7ef9dc6d60efab3baa0d6948e5da806e16e5714aa99bce2aba718df9cfe55ba4163b77ccabbdbe57a1e37d5f6bc261d4abc8ef7aa3bb73f28894b2f94fa1209ada0043dff84c7a17870a0c5a3682c947fadb851a41702dfeb99056bb1ff7df8f99567b937c3ba4a5baf1fde8c9b246578dfee90511d3d773bf5381b9299d53c07bc5d7577b1e22d4311fe99b25ec3b8409b080546e5cb03f4e606f9833b80efcc949e73b73ad17bfedefbd943ae93fa65c12091901f39cdb74a81179df46b4f600b1dbf25b5f9e0d2dd6684743243a766ca2f67eca09572f5b267527b7f35dec8da7c26a6843d841af7316fdf5a384f8b20e78a1eb2880fb3a398fbb97c72ae4003e76087c8ac6032db51fc0b685c6849853bd80d84fd3005671de880d76926f58960002691c1f639f597c7cae382570a8ad948ea15d93a0cc5c6f5056c6d942ace57445ad44fa1a9cc7c8d1409ba00f74260b4c12e502595076ebd90b47382791f04d5ad870d49f84b6ff1ae5df80a273dc48b59393c221ef510331669b0f9f02529f6d85195b62cc0491f506ecb30738ead2d1e1476e11270128873a109041a6c2179f61ae6522ebbbd24293872cc0135eac4dbebae655c9997f65bd11bcb5948829e81bb2cb2d774fc1e9f99f8af7980043e55c5f21ee58d6b73830428df71882f6e4da8c48f6b4d2638e7f29788c05870e80f35d7793226483888db31c60441917174555593d005920bfd15d2fb531655d2f56eaf29b9597c5d34465811e981fbaefbd77e6785b5075245437932aa1ea14430043df976a268dcc98bd198ca4104cad4c9bc0fabe1a95a801f16c404522c8a446d7d45746979c7f3fed2b8dce1a9a0c5f35b114555bb1dfbfbc66ab191a69840b85530488d0976104e0cb1fecd7bf651fb03b206396ee475f2b891d65e615f2e0f4e87d2c823073455951e1c36a0dc3c028379027e458ab4ecbaf4c7373f65455892692810b951a920b221dc83ec3220f29dfaaadc037ed52df31fb2590ea18b14fa71759e9c73407ab558829cf76a3310e30a24ea5bf1248019dc2384d0f3d988abde1866bbf994c509fa402f979d8d5b95be5fa02ad3e632c5c991fd1db3896f276824747cd672b11d8fd6b782e9da143cbb589f5470a0d05663e1e71c335c5e9527cbe980b4fbb732bc2a585d67b4b37bf8edc093a219fe0e34c9e801f41b2227f731f8d089ea4d997331a71b499d0478ab9ae96202cc4fd3184a570a2a4d61c1340ba1972db32f27fbacc8643d9eec07646f1db9c0dee8dab7d821e726829c07063d5557796ae40d16024b73a422bd7df05e0a37d116de954b201be5c721c36f03e1f2bcf495b939362eb8cfd1b19b23cdd2b39deb6b54d008661ab5e2ad81608b47545ab52128d9d8ba2689cda514ff602bf00a26d7b22cec28a312d68f8cf9a658b8504e1be5d279d513a7a2b836bfc79c9bcb17f6f0d5e697fe4db943eb01dbd4356ed94d79f76fbac864ab2feec9513e2800eb5452dbecce409a1cc115acff5b9b9c456856acacfa6f637b22e593b9526a94973861062d1226f3dec1e9081e6f4814b19ba213776c972f4c4684b4de3e9344a1f4b39b20732e72cffcfd7e0c8b49ce77d361bf255cc7fc46dc3357e55559c3ebce2de395607bae5d919cbf22935d6e45d4c0b4cdfafe80e48c849375afb386be0fd366c6e25eb795404173ae1fb5f5d22ae84f383d12730d77a218919f118a19e74f232840716907f581e46c5d33a9c1499243cb46ed08d9bc114efdd0d4323d3c564ced4a20452aac515316e632a098a9e951f74772e6480c7571fbeae891e966adc9788fda111ba4d192f3d361e699389e940081ab658875643e337226fd8637f4fadbfaf96df657b4ef5f97346b6494bbcd36c096859d66fd235d328ba32e21b1fe8103f7751ca5f541e56225433182eb2bca8387c534c7be67488c3b04f1d58a39352ca707a6b817305f88b9c08f4c46db7b614eb70c2a56445671d2da209a6db358ca0f4755e2f23cd62d8320f996c18ba829bf09e22fe2d4c930a63b7412a1ecf30203c5dfe6ef37632a048f0a3982340c3f9010688e7033bf80fe3df407382380c381d232216d1c5920a730dadc235243f63a32705de1e684b414ede8cff7ccf1f1f1573c50323f5886b7b713f01024231c9eee6193c6eef0fce9a8a35841cb1816bfd65e54fac125534e6435483f78d09b3c9b942f057edf3dcd5e7697e5359f42abc66c19a567d0e7424b4f1a04259f38da213e058f3a98c0311edb604b0161cba329b0a1c398421fc77a6e5c572fb8f26b4a433f96b7c059c0fc32be207fb70d4d67789d064839850a82b9243d5ca75b0668bb505f0ed21a3c0e4442e08af2bd5a7f6721a30d66196d86360bd065a9859ae2b9ab423ce9daf4d39e5bf012f01728e506360a5b110d3f51c8227bba11abc59258149395b7e49cf27e792b2c50cfd8b6f876e2a1eab1401985b5f54364e242b2d243e37625335be18a429bca17653994c208211bbda9e42c2c4ae3ae938ce7c400a356bb7c3cbbfa6771f0bb1992761f12acd1f7f986d3e0cff18d504ab5dc34986f12cfbf6621e2be7e12f38790ea88582c59ab8aef21065c5ac4bf9082d0e021822b9d42788ec9e91394e8e08c2b3d590b76661f58630d17565a1f8fb7a1ad8510f5faf82ae100a4af3359023b7cbdc10d84813b97f1c191f84d36bdd4b3495e29a1accb793dc268695d4e2c29b5e8112a01a1960da9b6cb21d5d521133c72116a5efa02a4ca85ed58fff48470c4470b35d07c059f640a58ce560fe5a6c50102a3d229da4e8442b65c1f466a2b30a6210b823e5175e1baa60981e5baee14215e960dda690a54d6e7eb81019ac27f1e3cb4db489811c15800a6ed4a538535c54de4f77fa36f6b5905c8dc1902aae1fb157459df926215052f04b51770d109aa4e70529f2cb939e36b52594a91951bf4d967208140a2354952cd46e27b7012aafd2de24619a4ecc7126899f735b08dd8775261f955595c3e37c17fc433ff4c9f8649e36478cc583c778e8a1d56187e95fdcf4a89e75b7248f020b4fe2c6831df3241160c0996eef49ad88f2e225ee816ed619cd9ffe74e03de5666270edce7a5e90219834a2f0908a48086f7f91e57b13432e8135b7c010913a6c4c063d46ae278ef88e6334b098d5c01c52daa5febbb84ed25725852e51a02743b8041db25f4a58902a8515078bbd253df1b16f795c23bb402df278a7cce77d666c9b2c19a33f7dc29c9d86d320c59f2624e3c8fa9482e66820242541aa2dac068779317c364336ce13340c63c919c71ab033007f9f7f770fb4d38decc9d61ebb0e1789ea69305e7908508d688ffa517cc55d8dc61afa341af911dee97dfcea427e46fb451efdef881a11310f7af6343b6ba2353e02cf442d53db9b02a32d49d4113a45b6f0cf27a3516a5a41d2355b2003f6fbfcd8d97e4be7283af853c6454b0aab874b9c6f5c5c9372f19124b9fb564d5eec4945821c72b20e66b005cd784d5063a87f579a1146e52a07f0b1ba5589b803aa76241a1c4cc8b8f3a6176dee87e1de57d9b910f171cda5d0e0d31b3c22bfa05806ea3e15f80ce1070a7195407e2680caf01be611e3f5429b77662cbed991da4641131bea6902c1d7e96faeacba171e20c328caa41f740eab6c1d5ec3dace52e232b40f83ed3c891a48921fadc10f883959363d00b746e737c80a10b4688e0b4441a40d181aa6eb10053093db733c1cda5188a91ed67a9436c89be505b3f8eeefda57cd47bd8828dfcbd60b05d3ab3bd82bbe6efc9cb37a333fa3b8c021948f8919f9777aba27e1ab3ece2dba402f06e378dc4026d799b97f3e60f89daa95ca31b1437ecdc706abfa43ffb09e2b4c79bdd40f971479b414c0c7fff6eb8e7c7cbee2439cdd407c6da522061312cc247545de5e9b8705ff9189066eda7ddbfd9bfbaec8755cfeab1fcd101b3cbac858846c734397b83037e12ebc8029605f26efc32c76e6116697832ae352946d5515b5b27af04226d07455fd26f55a7361c37ac5b8d1c2b788a2017c2f111f1b9ee42948aa35a7a74e7f973eac87f9c033a83a482721e68639123e47f3755ae7184201121d1aaa0e02b9cb65b224c448d00c1156e9f65299afacbc877277eba086ec8e4b26335aaf9c319b5fdd2e239c5e07978a98452038eed2fff057961b803b032474012e16fb889c416517ed30fb522b87445c00f6f19590684a378990ff23a067edc72573bc0a2c6a509c5d242ae6206d0b92009cb7af17178169ad6828d2b4448efbd60912ca14eb13b81f0e1582da3b30b7d7489cd8546a92c34609cbf37ae01e2e4c436ad9b8b44338ef08307a58a1791b6b5ee0b91ef4095554d7742e5bb37ee29ed4a0b2a714a567914a19478057b48741775ab8a9ebea09758e86363ad4a4510d07593097a4636effdc489f455a7773814a1b50747edbeb126637a7556fdd74bad2334e5fd0745ada87c276579022044c59db8f59d77d81c9848402aab52d94a0c4e1dfdccf77a3e279ba6292f0c2419f962dc32a7371dbfa8c005021896a75e7c29f067d6065173dd06bdb084ec903f3f99c81df8dc583fe10ad2c4067c06594d41ba6899a41a4319d889f5ac6ca0dc9201a2b35819d4ecdf9fb854cb988134ce60a85422cd613e72d308970c2888260adbc114213a0749fb61abe68ae147d366fa5a37302c7041c9d0b42d97f088420f30b553c4b0d9f6028c10070d055a9e35cd726cbc7233de7bdc74fd53ee9023b5cc5c240642006e445258bd7705fe0165485c79f74d61de86de8e94501213c0ec9657cfb418fb3140ab31c40829ca38aad51b398b95ed9c36fee361614d0f544d264d04d4402d5a6f3b729095fd4a4da8504af2e12a3cc646a111f7cb6275b7d9887ebc0aba522330e4d485841e9fb9e981899820afd4a77e4768481fefdea51e83e3abc95c50c18e50486d8dbfe58824ea7768d8f0b9b96565f030cab0c4f97e104ba51d87c6ecfd52acef9cf9e2a92972538577bbf7a362aeba09585117a01fc445c0c092edb8ccd343fd0aa0d9018e95a585843c81e800bdd9a8063303b7f39af5f4a4d2ab2f44e267d7b10ae7608061a0425bd23bd6b3bb00deabf850abe3f798ee7b2e058a77a056810c985808fa1844543e93ff16fa769d233de909ba6742b37b4a7f820d85a5ed670972b8ba670b46a82d6092160cdc457c08e981946a5f27319ebd00e625ac56ef84ce5376d3af3f7784707ea26f149c3777ccae0b8913628c0788f28bcabe592e1ced7b24d6b4e1c0748c6c2f9c3447d1720f349f196d9f649a979c46e9e86771493e2b4cd1a8f817c418214541bc43cf83d809958710cd8d16971cb9f8787269d5538cb2601ddc43c7b476d7648a4694a210a7df36aa612b61f92920bd9868a8df095234d104d6d885f9d3608883c234f1b79729086cc60a039cc97cce9d13c652f3f172c1139be474f8421a906ab9231cd87690b7c5d865c032b235d30a2425268a4a48727a25583884cd1c50016b294753ac1bd705042e6543ed561ca742dd30a2b6da359d2b9a55c1c3e1160bdb3d4bece9f57dfc9dc8bb8e2c67f1e68627bcea7535eb6638bd8f7ae158d750336b0ba7f7bd79805749afc2c09231c7ad5fa27b0d4e0e490a760d5f5c2efd9549ec2b023770948c01820203de763a0d22d51a2471a11a8080ec9718117f1aa485c56c56593800851623774da6a9cb8a15f8cb4caa39df384225d90d5bed9f3a15428ac4b9152b2a1dcf7df7205dea80851d142e2d8f78fed1b7d6066978ef93ca1a48b8a2aac1addce7541704659a7e7c8a51901248bdf299a965663df26a17ed185808de9e198737dfd0dd63531d26709b84e201cb2f2259086bd0b98a761018f647b23920112534155c6cef3929fe1418e3af70f15dc9c0d75f9f25189dedd40ceea42bd60b3bb5fc9516755870430029fd55109314d71827cc8788886b606ea9da8396d47e0a65c2ede63be53c8debdee1d1ce8b930438c6f71b2c2143497c7c0526e8b61bc8ee7ab9ff683358ef5525f996fc3de4250e36497a0a3422700491c68e3900cf2f00c1041008f39bbe3d28e0362fa5a58aa94a89ae5ab79d6e622562fcab44e78a1fe86fbc143cde1a4b26ee5e7cf941cde65641b1bdfae797255b97d0e4f23828bf8edf1f56c87deb934eecc583f51239973f5da191a2ddacff655e197cfa2b88f0fc7a1cb08231fd6b08fee822ec769a254bbd91fb232faf89e89e3cf762d7aa3d8d65c272708bd0f39eb466c21286341ba8a4c2f229c0ac7a0568eea21ac12aa53351e228c9ef85211182165d8465c3a7e2e23a64a5ccc56ef4bc40d2b95ae27ec279517e1c5504e0d28bc78932cfd7770a5700e4d6df5ff0fb9270aead1543ea2234393c944cda3a66a10bd9fa41f398c789555cdad255dd04a4e25ed55b5b4a418d5f4e9cb19d1e0315fc53a269552fb499c2709e144c2670c6633dd3fe0d7469716293186bd5996b8d84b2437642de4bff7ae29d23c7a0284d2ddb9e89cdd5f6615f5c36eecc37b87257e81a2ae026a69ce1a4c375261af100fcd0bb1702147620f74c9250b89a0eed5de1337d9ff16bdc9c3e5f6c171dbd0f0896e49be5ec18915b4d7d9e0212fc78955019c443584c31c4812f5b6b1377c9b45a95c71d11ae970b8e56a8cd6da4eba6c6c46d1de75533fd82c2dbeddaf76e53c1291076a457e51ada57f8dade2420947e3f4907875dc26dbcb5b86c2c24859229eeaf3ffa0d39e0bca676d74a6a07e944946e53e0d4c4d23f5860f5d4b8850acfab62ce8635c5d25817b20028556ca1f2815a96231fcd2815203000c305e63e182ee337ead1f903a7bceb062dd4ff4a1ebfbff87de042eb92eb945e47acfa9386208036119a7815c4ec5453988df52b82aa1fc7ab821f8e24bf9960b6d1304b38a86485399501e5bd39b5cc73ca780f0a7f26946d280d9a61c99d5cb1e2e233e036fd277f997ca3b0b1f51065e1d21fe412fa6dd6466ba1836cea8cdac0449aee12510891b8d4692aeabbd1767be4f16f5b98a1c3870de84950ff5b726787f536efd3761ebc4067f92f084abd517f78f736722766197f27bc8acd76a6668b7fc11c2ef83805b5ab23865faaeb5ba23b9bff872449a57ff37944794486c00a16d0210ffb89b97abed1d5190f6eef186f3c9a5ec3eccff81aa0f7e04534de76d79e543eb426d05732220fd1d453d87c8234ab26b181bfa1bd0718cc72ad81192a8546ce7b24280ea8173a70b3c38d06b5f9a02b678c04464dbf37b3131202e61871d8d8590ac9919cf04641ae1a601dd177c7abaf1da559b55bb4e5d318ddef9b82a06e82543bf56b5afc76951a577c73e3e927fa8155e7110ed80be7db8da26ea9fe2abfb41aa6f17742fa196538aafcd373228b35988b85f8638bf0f1a2483be0deefa37ce7e9cc9a29e2ca4445421a5982b7cfb431dd25ba4b351951eb0095277b129feca6e0cd0397417c3e94a94b5e97aed113540eeb91fce513c01181832066c68681e10607d07e6168ff24cff03692e030bc3b6c13f779d0db0d04462d82580c24bf3b0ccfb1784fa527b7b96daa787664777a8fc87da26816dfdd14128a0748423d840140dadb45cb64783c71877e7357a3e36e5a2fbaa2bb789df52f4216a921eef1c1ca705199fe85231f36e4b1d51129de10850ec5027e4f4a77903acf115f9c7f25d0d86fd0ff75c8428e3e558945c602a37c7c820d25a0115633b534e12b66d48423b2566946c14e4c287c4c83a2c0465e4ed208afd6fba6d8aeb956c93f24545ef623ae8416bd9e2c72fee1fe345304a6194ccdbe7758438ce5b134120734cb561b1776a35f28897e911de28acf4dc3eb1e5dadb14913fdc7c528b8aec945a8bb14521268e2c0601f8fd51c742b95d9e6df7274803740c088ecc42ea5b4e2f47fa132b238fb1d64ed7ed8dfa4807b73ef46c6037ef49aaa11d42cd9e73a38370393483f4907e680f8e89e7c20139fd8930b6ce2733b720391f8c6b56d3980487f2da5fc0a905daa46512b685f1f1b79426035222423a447227391d248c40a7be4058eeca730d3a6a1a9b5957df57108023388702ac4ab8ac347de0b6bf2996d42e98fcc4139a71f1d2b0748f401e0b67f735c4200b5013a646a746b50a472649d0f4165d32cd87517f446a14a7941849cadb2cad399c7085a3285f1911f4d612cbad64c68aa785afe9c435aa464e6347d850305a0c9df4c1adc938f2f593c63edb16063688e050d9c0128c3983457412d91fe978d13cf651fb7b31d3626ffb9a6bcdc1ba1e78dc964742a676b088870600bcd16c64aee98125ec3b3fb0ca6fa56f1d3648752bf5edb1a11c9b837e6057cca16dab06b030afaf80351ef8da3ca0d84fa732879466821ff7ad777ca16797dd0c77e0186b911bd10f4e76e7ece518475e916fad384ee42415c0a73ed1d9e13f1e93747bd3eed9bbb6725f5c498a2e684674e6ee9e254d173dcd4ff2e9604c6b7b93e4fea78efc23e19f5bd15154b92693d8fab6b5fd59a5e287359b02cf819c73a7c677bcf0fe7fbf9f83310295f266c15f4332517e39e3596daad7b1685aa52262d3eb266290db256c7078e5f3a9e0babad80be47a82334d644f109fa0eeadf2de3680ef0635307e66adfe4f4d87fc752d3ae7b5e1aad934e58f77f21e6cab8ba549a44662a2646c4be0f4ca298569b43044499b1ddced847593df060f9fe054e072c9ff592cebac90c64dc554617d3e63748c3b77813fbc4c0e1ba18b91170814ecdbc4c34a57544c8d231d5a199c456684852accb9a04946ad64253169861fc35ff3ea90648a8678ad07c0ab22dd9fba3a78f61e1208cf13e34e56a2af2845cf2163bc15a11b724769c14a0a6db1ad87597fe7345b2b71fb98e844f0de3512ac3c79c157cb22c7c6f7b0ce403dd6feba348fd85609a66146b5610b015e511bbdb826328b29c69612e145aa573fc4646e0441ee54c8b5811d450c9ca6f275ca30243797fd4ec75ede3ebf6890adbbcc7084de1d30fc2e0cf7c4a46a1b6ed7fc905167d88b85b367e09876a03f0c8c4cc1f7951226e4fc1e8720b1260babf6d88bcf20c407f083bea4d09247217feb1c00071362fece4a553819ba79a188be2ecd2c7ed8288c3486d6dde28827b1500f4ca9e8b6cff76af9dc256fd2c32a43e9c138c35e8afd8d78185ca5dd222fa2c689e75aa01b41a4276c978cff10db190eea9f81c10fc475577696fecf9b2c2b84e5467c2edf21f3edfdf4eacd0c465e762fd5df3c53b72b71962b52ea77b10c4098eade65e0bd3079b9ddb86e5575f23fa76001618134c9feaf2403a5dd433c87e91d2387d52ddec2eb126c8140fd8e2131e914fc99091c3f60736deec518eed5aa13e149417dcb82a5dfe046e4503ce06af56c485e5962e5338eff9444857f6ea842d9947d336a34cfcae917e0c8ea3b47c0c1ca2cb6532a8180d2dcc2ddac404c41bceeb265a10d2a71821a2af0b7d22b20a2f948a9bd52181550741f159fbaf4ed893f97d16b0e5eb4f30dd1227340af41ac5b467982449037e5dca62cb7e5335c68dc694f8ad7451ca40350f33e660c42277a4940675757ce186a7fd36fd1e6ea1f056291f6738e01a809a9ae39da00dedf66d795469665f670d2d4184718d3688e51cd4bb7333338bb1d90aea079c4efdf42be6cf1137c7ecd384b6cac9313bc295a66cf8c1f3d1891f07a4f6faaf8b59aa0c501e147651945f3947aed45b31d6ba38c3b20a8b7733194d3f439e389ff74c9f66c196519fe0ec446b5733019cdf05cceddccd76173432ce72a3ee40c7a8e8787d3234545c7e1940484e8edc03a8455776469db9e5c9372907879a53fb252ecac9fe1b2c4a80e343353ef3c2eab10e6d11a764bfa58233f2a601a5c6a6797332e504defa5d59f04d35f03fd40dc7caa560146accee8f7c209387b867e5030e7d82eb4f2ed089cf38b7f20150b4e5659d965a006b4be2913dde77dbbf59c796f67ca1c201b4776ad042218f25f1ca1b6197865c177af8487b9736e8733a5cc4890cc13a700116b3b1e1ae9e82a18649d91709db6b03a6391257ed2c29ec1a6ff562940387ef0e19d14ab788e7403113a7e1e2440d619f4d63ffbb4176b4028a72364548de06526221bc7ce3cf7194ea2c41924a62613cc72984ca9ad4a1f356343aa46ffd7a5ad712f06007252a8d88518bb4afbe784c8eb87b495dbb786785b41c7fb138d00ce3790aa4cb54883bd764d9693251b939519d049c3fdf9d2a85fcc318a744406e2008331d704dcf5e1d3b69fba6d6988505db77c5994763b2f5d04df2d43b8b5b0af6ab6471119111f538084740572a492c0ebf71c28a08283e2a7689287c2858191b855ab467e84c7a940f95732374c19a2102f3cb429a00bba446a8ee3ced400904999ec311d7f026895776e050fce172832fce7d909407edfcd60dca5c7c3a9df0a4f0da44d2e0b14458f1c46ab650bf59f580560108cac4fe53e0058f3e38082f9a94deedbc2861971602d292453696bced312e28592672710299d57825a5f1517b92621f0be46eb1b894b18292deb932bdf2afa0e0ba2c927dae9631855c308bf8283c4a31df8b331fbfa9cd453de58123473275e3107934680811f07e17654751f3cb0bbef9f1eb72202b2802c1406e983208b110a8dc900096a1995bb55f64214c77c641f14459a9ec6d00af18a80e11222015fda855f03e06bfcbc07cef8c3315513e67d3afa81b34532441126967a1415c11fb45eceab5d8d58db6c941bd2a4a0bcf95f2618c5345aad0b5889167fb9a2c67f9054689582621478136df05ee3022905447313e27a0d3fe97635aa51cb0e6ca1100af42e4dcd02e0406ba4767ea57455635577a13de08c18c8293a703aedc8a1ccca1d3a81233c004590ef4745f9894aa9d9d6395ebfff53a03039bbad4dd951f0bb1017807d1dca605cd1920e8f140d0586d9ac6b07c72a0fbaf73719554c22afbb275258638af3f80dd13a42834cf683a75c957d9480958f591f9a9e9cc4d4e815baa9b53affad4fbae9e529728451d962799f6ff1c187be6391719cad088d181088135e52d5fb2c7c44d265f606afb98386a40bafd42b56ead56a807f0447bdfedf2e2831e3234c5ea5ee6c8da3033aa4130d4cad80d98e0c6fea57c1d9d6c8e709a82a197ee4969df3fa111f4a391de02922f9a0bb76e61149d8ad4f649d02c9c3efe875ee6c3cc0bc6ba5d61b87315c907b5843f03be6a7cb750b06606ed9c922e9095d85bf9d9e5476c7d9e9698018b792424be50bc2c16f53bc203bdb161320a0868a446fda62025a9532845d9e2a82aba4b21720a5098374c95abf057c1cbaa7808ebf8184863243d12ec68ce18e840fd6eee4947233ca940e7b4faac572df2e86bdf2cbc468ace6ac9a05cf4896bfdef806cf498551ff59109db2bce5fdc979598e78447d7c575677d21c5e429953d0913ae66577cbd80937f140c57b61452968f1411b4238488c2a95d339b444dad79340b3115f08c607e587c5da59d9f601b1cd903efd2e6ba46fa8ae36ef5eae321e4e31f26750349703c6b6c658b7af1a8e53259208fe45d9febef044c6b9162d1bb2099bc51aa8e115e65db48ab66dc288eced03c1d986ca88f75accaa897f3bef16033677aa15e08370560347a476341a6faf0fbde8492a546573fc766f09aed5416f9b63cb0bb85a8054600db5179fce7ec4ab53e469f611229610b081a140fcc40213ab30233fc9d7342bb9c9aa8fa24b2f79e754d6d003fc498723b6a606e6da911c708b2ad164b5c8466114c911f9268ea2506047dc2feff10c1152f413afdbfe9f8ea00df19479045cdffd57d133e1971b8a6fdb3606478ccee89c2130c89871b25d11b3a80c517fff5a90a02cfba8a0efcdf5b9ffd65d7bf41bb0072c4d8942fda005e0ac713464f37c0f82ef842d57437c6ab772248b3e76b4c019f9de2ba6c2eeb540dcf69f1fd689d744a4384aa059cc9f6022fff5e6bd103226b2220c0547f3e04b1181eb4150fa7acbcedd9cf67ef1f1f2c22cb1ecee41f33dd9dbc3f1f1202acd1040add13bf5a305a19351db6091fb8046d0b353d035678ea6253e5ff4bd2d6a1f6af67c02069ebc8fde98c24600680405ae3a1dabbf3f820d4c1ae34cd96b952fd70648939d44d839e297ff47be958182262ad59646db75113a1a546f6967b07b30bc30bf60b353c4b2e1d55421131ebd0943a79844379826c7d336d23210925d6f4ac1dd7cd3cfae9ce3c27f66eefcd1237ba52bb713b9d509c0ef63baac34143eeae83dd288dede346d7c63cf67db195b470b455f3ca271d0f9247f2cc9920268cf535f913100a0d1c634c2779c24a27b20771a62613ddf2ce9283084d9f2fe1d86009d78c6e8d8ec2a3576bf4131e51215bf744a3989147b36824da504e2c27f274e5139f1a1feb76c9d7e4254ea392ad6f34f672f59665599604ca9c44c1869d840825612fe96ed2fda42dce1a69cf2eb51b47576a34eb207db29cf495cbd168341add74d268b4825339584e3a09b36ca6fbe598ba1ba2d78f3a57ebb7faeaab2fabbbc1f2d1e7dd4697341a9d543a9d50f7eae974facab94e0776540987a38bbe753a4c3f551c8e6e492c67c1a69ff00fd1e8c6efa62b734c18f88810b193e4b238ebdb76e24c2fa1eabdd3cab54e07f68a87901985c379d1b34e47e984c3b9d2d930bde3c1847f885effc37e88cca58faeccdb8afc69d07af715ab23ddcb27adea6ed97f41a104cad665d90dd553469425ea6c2fe5eed4321a4364c6f075c3529e5d8c1a6c56f6996914cac6555ab76043198933a4e6be85ddb6b65a6fb47666add6da89960b76e40e7d2bb4a4c85617b2753db47c820821ea74649fefba1c598665b5de7a419ca911c6aa34c8560ee28a6cb5f8cc99a44ed95384bdf6cf140aa541ebd4a741eb1b14ec3c76ea93ad5b3b6d55c12e90109aadfacdbaba24b6ad85b265f590d564c842166da156c537156bc7b278b265f564cbba9e3dd64bc61831a6b37a695a56af6be76a5113434c98926d0e52c95671956b294f2516426fccbc39c1c606b91d73f57d7146e70884cbe1e5ee2b5c0fb152bd1e5add1d6db8338235c2d45f07af1657f52e305f3b71068c7c45e1b92edb096b491c9c5a2ff91255f57d30c288aabe5863d81fe9cb252d136c7d2c2763bf70e8b0f108244892ebaf0de36ab5f6fb0eca4c18ebf1dbc496103ab18c062d24d8203241a40ca06c356197c8961561ac8702c8d6262d2eaae4addba8ea5b97f7b222761d78ab34e6accbd1f8c70dafcb5f5d8e7ebdd5e1b882c82124fd8f790bff88419616b6d884fd41df0fe9659f9ee221649e3d196bd3431aab7a0bfa94564a34279e098361973da9756135d336ae137976445a29994ea88fa525e5b282458bcbe96071d0902f97c4392a0d9a8ee384e131d221c918d61de1f9914c68584adcc2ad2c8ed41efbe6829b97e6d2e5a87055ba2497136af0f4d21b9b2ed720762a5da855dd31213493482412ea241289446a71128944228d4e229148a496934824128944229148df49241289442291482412894422f549241289740944229148241289244ff24e22914824128944329d649d4422914824d24bab8458d14942e649a7a1b34122b1b8a0587ca5058b152e2916124934ba2c23d2a86b1162418d48160845a2de871a91a848bb74e8d5659ad088442f0ea8495b46a2576b4032b3bc2a74d5ae12c85253355d3d2b9c10269a721d2bba3aafcc6aad260c3663b6465a353a9693b1239913b587bd84fd7463832fdcbc33976ea43b3d332b4f76923befdd67959ea1941aa1f408a54872f739d4aad4bb4fa09ea135a8d3de7d36e9194ae7133aa1d0c944ee3e7b5a55df7deaf40cad49bacf236f297ac6aa54baecddfba767acbab2dd65d525b649eede3badc2e919abe6589ddcc9775795d25d02b5caf4eed24963af3ef627f7ac727789a467aeaac42291574b72d75deab44a242473244e77211afb27a53b027a06d301d22aebdd7b68959097ee43d323f3b9d8ae3bd83358cf0be9a777a73d8375b386ce46a73367361decb4a787f650ba9a339a4635aa61da6a4585565468458574e68cd6d3a3d3a3d3a393314db3344bb3acd59cc9322bb3322cab15cb7a7a747a747a747ae64ca6d3d3d393b12a2474ad8484b0af260cf65aad15ca58ede9d1e9d1e9c18ef5cc99aa3361b0d76aad4e4fc6ee5d8eca6ace60421346e8fbacc5a61086bdbdd4a6e361960e6f2e44399c41b7f37057b5aed334cdbb1c5d753a195bad5619fbb7acc7d37ab49e8cbd8576693a17d5743a4d876a3a193b8b8c13ba2ea14e4828635f51e5ea5a652bccd493f5643dd85357a683339d4c27d3c9d85b9e60ad1ccea02a546b1512b57838d3cbc99887b3aad665115169184c542563df87a7944aa541acb3e876ae3db4f65cb5a77b4adb874dd1a93a19fb7622a15c1ac45e6a10bb6d10131d13e190139d743b973a6342133b56ad90088a89392a3fb5d3f9be537703fbe604fa50d384342aade2b06f3a336e3a39a855a168155a295a854d29ad92a295284aabb8631741d12ad1b1b0b4d1c0996ebf7445511ac4be72ad088a8c7dfad8a14f2464bf8a894efa06763648325b5d0f91fb0b8eb6aa6fdbeed8fdedc5ec4bbeb044f323ec167bcbc4a464ecfd89e4cf766b113bdf3f19cbb0109a39a18c3ddc7432f67a3b6f3670b2934bc419138b9a8831d831d12ac66017ad327617ecf105c33f6c4f8e2e8a90372c1dce608b2f615cd90bdcc4191df620d943223fbc838d1d753a9d4e28ed19fecb85051b5fef79dfbcf6708c30c2de8e79210d698e9d87b995cb0e070db9f46dfb6e0a8964d4af96a79e62f9e82b6ff9960222a3eef2808c7a68e5940bde91512d37c58273bce4d24b373d71957f04c91e9e3ec4cc41a05028140a5f40f4c63182e10907c91e52ef86d4fbe9b3b77bdc4db7448211d220eaf0102c593ba73dc318be56066415364c1acf033161a6b4a178c78499571638f0d91801c49ca913261a61849d30f3347e46c46904fdbc8f396361bb8aa822faa6a77683999dd267b79e6acf6eeceb86bcbc615fbeb9d8aae6b05f97f3d9ed2b1f3b1c510af374b5c5977006e568a188f2c9b0306a646266ab7799997669dea264a2c69c96d57d589d586373ce1e1d1b5d54df7d8b3dd87884110ce5fafec6920a0a3b48f4c99d6ba87b68c008e5904b2887c02da8c58574cd7bcf67a51c76d028eca0b083c20eaa81f1e2b2539211caa1eb279aafeb6a2919aef82dc2614b818944a2ef41bcfc5deba0a98405877327e8844d7884b2d8d47df4b0bbfd3e1c1d0e65167d7454a763f44fc4c54e07f7e6ba2bb3e4b02b73ad3cb0a177ec522adeb0bbb5e0d17a6654f275ecc6b9e4d7af27b649be8e641e913b335f9755866c19663a68c25c270dc918d7bb4dc7be91a4b4aa4bd3c99c3d9367ee4c15e4eb31861305d5daeffbc196199255f2f596a0795d0e497b7ae901884e13205965074a4f39d213650e51255e6703fb3a1da3637888739c0b8eebee0232579344a20370bdb6442b5cef2848a54f9c3983663ddd85ac2287b6cba4e7d010273b68d52b39b4ba7af53161a184fd847bd84dae3793785d56e919211ae6fa65837c758e7146e9612f0191b8920f89d0917c19c9d785c83eeb470febed852a1ee27d1a381d6c8b46221a38ec7ef38aaedd992f6d4e960ec7c4f5db0b4ebb5334aa15bbdfbbefa27f5d85e15a147ef57576b2eb4cadb5dca85b0d9c0ed76be870d090873478add056618f48d4c0d55bdaae1126a415d3f76d20c75deddd8d369608ab59ff0b9242871ae6ba85c35a6dc57aea88b0677288458443d1d7e9a89fcdf293d504ebddab5bb01d0ebb205e9ed7e875cd9d8944beae6a5138fcbe9d971e80e83401925576a0f494233d51e28ca13843fba9b3a199661744e6eef3a387f3f64268a9c33171288219fa4a241a61a8e9726848847df410bbfd4a8703c343c86cfae85b5722d920bda6bb1b7ba6831ae67ac895845c7ae805068e4dac1c69258a357d743b3b8904cd744709d6fabcbc2e87ae8e02fbf50e8a33fad75958b00785d9312c3504cdfd205e6e1c630cf7daaaced4e9a86f1c368ed3dbfbe9b1e3e1f4be27f2ee9da2a834a2a1117dbe1f279a641b72fc712227cf6d769ee8f47eff30e19a21328f628cf16e18001ab97d9618e11a0d5ea18c9a9fb8b2ba1cb7835a65fa75acc3c29aad5bb76c704e58d2e363c70329d78e87d3b9d78e07d4514164fe3e0415dd3e3504cd41a450ee1ec4cb1d7ef6aed331ba08877dd3b94e477d87879019855339b81fd887c81f262c4483d787c83c7a4df7ca25ddd8a0506c50144632e478c91e1e12d2843468c3f439110e254ebeaebefafa06725d4b69f03a47a578ce776d4dd81ffd7a21f4c243486dd29a9f65fdc3350d5ada14eca569b72e5f6071b72e8f883bc09031acdb1c2b944bb265274c287d84442251d7752fd2d94d7df5a63e9cfaa1def41ed94fd94dd98bd012ea2b1eef8a16964e8396f5fe5b1c93c286adb3d33a568b9d380368ce9c5c60d800d6708f5dfce55f102d39dbe9a6583c87471bd34db1c0a91f4cc7e13d4ecf0117993f1d87d38bd0e3f068c342079cfa2187e3f01e391c071c5ea49f03ee81c373780eb8883c0e38dab0c0a920714a944013c6bae9d6580fc23a11d6654eea32df6300e07b0c0c1cdafcfd061cda9abfc3e0b0b2fc05aeb9e534e0171c7a39751738f472287330bed8a2698165302c5816770577979bba42640ee5cec77243f9832a9d23addc54c4a91f564cf22479d28bb4bda938baa978326d92bb128906ad7ba525b5bba23bfac9d695d9ce19eb8818c3ba7d018c6c69376ad6a758cf8060ad6f59b02f564b117d23fb66669d12a670c28b94cf7509dbc4f7c4a300b5906528c1205fa5fd0e621a2974c4ecfbf5cdc060eaab79608b2f590639561a192e77ecab2291071bb461595f913b723edd852dbec429fd539f3011d22391d2597a9c6e7a8f951512fe8ab094709c3027adf46813d668532abdf4e5ee15d2d53fd7a1f4cf46baa9365ddcc3478f363da48de9d2c6e480d24def41fa081761c2a374d34938d5379570aa47e9a4974ec2a91ede59ee9de526d453eff19dc5bfb378b439e11b9b159c6ad3799c6e4a594f615f39e1d4f554df94611ea4948585f0b017d56038f5c3e92bef71faca0813a1c1a7f75819612056483875599936bdc7e826132602d6d17b888a987010a21b9b30feb43ca469513acb4d8f362b1e822e8f36269ceac1e29de5d1268c534e77f4952bbae9da936ef7d2f52ebbd40ed415106d506fbc23752058cee2fb8d0d0a852afdc344be978efa8dcd8642fd230285654e4e1c6a798b9fbef250e69cde72079cde824d77c0ca5b60d315106d4cef216d4867d1f21b9bd48ed463eea7bcb760222df79efa8d0dcb4df5a30dcbb7d425c28447ea2d98081305441b233c49e0946057dce5a38be28a3b60f41538753ddad83b4074179cba706a87b5d2a6bb4dcb95362c57fa4c18274970226d5e3be7b60fc6e3e4e22eeb978f0f0eab939f55b4f9a938c33c160602e6eb94fbc9545a2165d9e87ec26017dd78ed84c130f68a6363a4522e5e9d3361a2604329c5670acfaaa3b4aa0220160201739eef9c399392400dce471b19d4ab9c39df3ed8bd2e7ae38593d02e35cb0690ce46c419c671bd621c17ae78aedcc822fa06a32b4a58e52a65370581c96a794484a96fb961e1882a03199a051b7eb96edf94c1cc0dc01ee42aa3c455ebfc357f3d20881853e58edc993354a553affa797d723d909ea13316aed50a32a755d9ab34d2aa0a8012a755b26699dd47b4f9775c5740b4b97c00d1603dfd809535892e472a4bfc07f44cf75abf490e885a65100dd6771748c3d46741b01237963b31a6bea6690faca4c991caf26da3d638a53e8856d50391b854753ad7fafaec4a1e27d6003368ea77284054358d4693eb267972a553e4826bf9faf5a9a8d25edf22aab2d76f25875fae9249ae91abda8d3f4240d9946f3dbb59a68f9947c53f7ad5ed600b291332006e340b56521f5b13676c4bd426628c5108e596dab70bd7e83a719562e56b8ebd93c8b6183483f51bb7156c28d3e07c695505c03c4f3b1bb57663b4461684896b1a9416bd6ef08493279e3cf1e489264f34b1a19465df342e7edbb82ed2909c75ed0a69ceb89ce121d3c2a1ec726839d33a1e48b7b2ecb403524aabb25fef3a1b9795613a676abe6da26f5bc530ec35ae6058f75aa7e4b0c3564ab2037207ec9da984c3ce5c87611d367378753744ae6b991616c99750777f702f225f379c393bed70cc8cddcade61eb13ffa09d8eee99752efb759d0b3b73bf2eac8540b8ebaae77ee1ccca51df5ddd33dcd97b3e64bf708823fbf5ebd7a3cc913b5cefb076595ad7f150fa857f5ce7ce95b49369d34e9b3c92ad12a9b3a1d55a6bad3247c6c87e75315bf7fae8d2af58af99a41b6746223cc23e26ccfcc42a76d52eebceb0769bb021104e7b96bd856b02ffe07e3dc39ab569210db30e4b2cbbb47f73a67e13665eb742205ceeae0d9939ebbe69bf3a1eb2ffe8747039fbd77d763814459870c8ccd7b70c574dd36e3b1bda75ad8c6157c6aeedc20f6dbdea15b95b9976ddb0dad0ae5bc7ba6bc8ccd6b71bca23b103f5c6dc524adeaed315d86fc6ecd22a6bca685a86c32f4febdf945d1763e4a5d532844d4a19fbf4254aaf89598a6fb0c92c2336dfefcf63bf22264ffbc27eddcaf192839def5f97862e8795257d9956b7b5cd4be94bbeb1e4fc8192142c69faedeabebe5dc6ed6ad6e5ae4dc3e13cbd21cdec8f79fa1942827839c6181a63e6270e2d1faccf6f33ccbace19c606e3afc9b9da98b0fd4d62d98c4c14a1993373a811d7916059c1a80439a41f982bebd8c1ad092bc1ac65dfb6e66ecc1963149293c64127d6ebb77aaf2c8733e7b29ccc27ad8a33b856c94ca358305312276242a60f75d8a15732067d98d95a877272bec58e51525178932b136c0fa00c084631341161e89fa85168810acf12b0890f8dcc8cd242f448a68f130704ff6faeae0ec7cc6111d7ad1f27a6e4971c7f9c8092b78c26fa449ffa2bc4381dac77acc341431e5d078bd529d8fa24bad774ed72e43575e28cf995db1014e386a8ca4e830a3093abe49a7de543f68a6556eb5651df572baa7ece5b2c0fafa3bea1ae8eab9d0d0a3648afd734eafa3e3c572bf7256f2cdb109a39ebba7cb826a60dfe20e578c923c913f4b50c9adab549c9160e5ff205f292af4709a25cb5e1976531360127c7c8f1274a4fc664fadd4d9363e46aa501ca1cb444fcba750b56fe4c271186521f9e5ed224d3c748b7b90ae74ac65342a64dc41d2613d969065a54717ac982b1d20ea7931a6d82281341424698c8d4fa759d66180d529a19d35c556bbf0d0a1bce9c9c2339327080013648c46aaee60accd93902821f8d4ca158393868c8f348146c3c45a267c0094329ed29254f29fa675269fa0d0aecd6760c49384590a985e79106694e83444c18fa5aadfd3e0a6e1b13ec140ac109529c497332d5c994522599ae20d3110823ce881ac859882a520b79a74668e4dce634b91009707a10c8422bfd6671f5da7a92f579b19b65c0074e1744b39b6c09cd994a3f8dd04f2746329d391386ce0ec23ea895bbf2eb6a3799beddeba7dbbd3a913bf41339943394a3714632bdd6e1a0211369904af9d3203d1331865e9ebdf5db257de674e7e4d0edba6ed563976561dab659989544f7abc3db126c767a18327186e8f4210e997e32014a7e429c913cd3893857f4d2e70b4eb290690f15323d4d04af9b2e8d0873bdde1a11bcae5d202278bd741f1061aedb4b81085e5fb9444430889c39d34384b94ebfca89e08643fa12c1ebdd758930d749f78be075813cd7757ac50bbb4c834f32bdd5f980fdaad8a56d34e285b7a7aae85e40a6eaad5fdfea4a88454365422621ce80535223644aaf4023851cca26e4b9ba334a8c994d8830948a11ba90af90e9439a4ca714e20c21dc830891450f477325332dc12a3fc72394a027374127d75bdf44daf532d6dde82c1ad26e1745bb5c8f76b77944bbda14ed6650b45b7b47bb5815ed5e40dab53ccdd3b4ebdacc5d2f6754498cc1be6ddc150d893277bb285de62ed7c365ee6ef3c896b9ab4dd132773328dcadbd533377b12a58e6ee057465ee5a4daccc5d2a75620cf6ebd2ccdd9923901e3a6b2f3106fb25f3c5e960bd548e7ad249aff76e31ae855bd9d1a8b36173b03a586f74fa96ba659cec78a827595d0ed2bdee6dd2bb5e72ec708c5e47a3d16f72cc231eea47df46f7faa671a3700ab1ae97bc691c0928d3110ee70acf55839407f67af670ae5a15459475e6eed675373a6bb82b0d8d95dca18b31faf403dbcbdb8a76a373d6dd5a73d45bb5de0a22ad30bcc04d26a2417aedd6b7abded3c8c8fdabf3c11a8ac7e8858934482fa1f469948f093a939b9e883943396ae1d052fa715314164157f3e62a42de64160f1958310a8d0c0b237ca991091ad167260b5d6c7722c5566dda1c8d704c22cb4076d9dd30ddc6c8ced10865fa097b2d9d7ef336cb75df2cb7dd38ba92445af1ba99d87ac69ea2796dbba545968b46db48076b3bae2371a31bf3e986e4f111753c741e6122aedd0defbfa8c32193ff8332322e2e570687162d709091c1a1450b1c645c72f875016ba801046bc88186fee7678c367af7ee99be59dcd7aa50d66aedf7fd3f4cd7bc4d06c16a5976adc361ba76d9e58847c8dab7abb3f1dd74b7161ceec82d477d37e6ef7646a56e6837dd74d4f7d8d9f84edf65feec47e7b17291fd68e5227c13b3a9f4967b3249a0954be9fdf36ebaf6ed6b95977df71e3e85e33bea287c934df7fb26bb1d468c30a2437d2d9d0fdfbd77e783e91efe1af4aeccdf65f6ae76d3f6e21473038b2d765fcd28140a85c2cd6db213b57ce77efa77bb179a0d30505fcb8b130af51818a8df60030ae5a20585f24a25180f6faf99303787ccda89bb61e9db0d6fb286e3fb7e838bc3b8b80773178761c38b03e0315047e11f9f87e37414ea33fdbb774399ecb5782d5e8bd7e2b5a44ca80ff5a1bea3ee7d3fddd0f4d25ffcf4ddef6bb9f715de45fddbfec94e070aa7b8a36e4a716ff9767a08e6ef9bdff771388835b598429b4d37dd7047466da1e92dbe1761cb3bccad6c0bee74bcf8877fbcf809ffb8e19fe9a26ed88281c8e417983608e337bcf41837a4d9865b5d0eeddf6987e3061c1b84e19dc53f1c02c00698b380b90b0fe62e605ca08eba72d3b815de5d3c1716356d752f9f495ae5e2d9d7e2e23b0a068745b28bb37071d9f980c25f0b0e59b8f0625c9c850b1c13734399bd7b2cbeb9b8334983d959dca9d360f61906ebe2e1d4c9199206b3bb7881226e47dd977737dc91bbcfcec6cb379887600beadefdee3d4e2fb43f5ff8ec85a00d1e234cf3892ea34fcdf46ef7964bc345d7d6b45ccd19fbccfb0d315f8b09e603008c1b6c18ddde01236cfabcef845bbe979736fce3e5dc4bb7bda05ed3dbf7172f008811bd1812485ab92f23fbbdf8f61a3c1818e604be780ddb430ef50dc57147bdc061e7170783f277cff3ec48b402ae88beec7d646bf668f2f72efa7c3f7d3745a038b3bf00204694c1e18b81f11b6cc06104cade612ee37d05c7c0a34b93bddb2b93bdcb5516d3e1b0e21b4e990d3804f3f7161c8235f3bb35fcc50f7adef61737e61a502f6df807ea9c760e75aee5a67fb757f4d15db977c31d2df7077b11e631fa0a8e13c643a15028d4a5e12b1fddbba6b7dcbbde5beee77dbbb8ed723fbda657eee8a26b5f335137e697b0fbfdc99e873d8f9157b25ee91d0622936990f9e5e52f57bb8b1b33bea1cd7e4b7fa9f489830bab89a467a24df60b73c149d8631687296b9f59b9e7951e3b1f52d75a9eba29efdf633e7d2d1e4ec59c6ab9cc2d38c532ba081b413a0b46bdf49b5c336b3ae6d335ddd076da6d83d98e39b302c49cb1d7655d848960bfb1c9c2cf19124e791781736684531e4efdd0b7e7d1b7f73ccc435e8489cccb13a16f99ef39fbb4fb3598fd42818d2f19fe31598a90375611d4c2120084edfa8645f0aa8f5854a122783dc8b6f8566fcd35d813ac6215bb7aea75bde23778f0b2a755b249cf481d9d273b7146cdd79550a2a457b8cb78572669f07a6995f74b867779a8a88a11bc8e88b3bb5173bd6e45b11c08ac4b0e2546854dd58a533f505a7b581f7d144a9dd12da2dd7abdb58875ed1453ac0a6b7b68b7b0f49930d767b7c348a60069237b26cc759a031b3ebf55f5d710996dd45f7fa9895974f07acafb4d79788711eb0d5ed745173482ad973a12498397a8d399332f0d73fdba905c6ff0e2b0cc69f0fa86254e83d7b56079f4b5a7eaa34daae21f64b4b94e7f60a593eb922bab88be9954cbd9e24b73d70f2ce93a2b3ad72f1fd8300a7d24bc82391cdaa8001b9758c1931c801c97588106f2b6491cfac8d9ad9bfabef26ef41b1beca6483f91b81b3e73a5efe658e1717d848930e94ec4be8877d1af7798073d0a132932ba3d3de91261423a11eff524cc03fb0913191d237592864683f22bb7a64179d2e8da0b4e1879ef5e13d80e0bd1a0943a52a7bf5dedce896d839516416fac22e68db4986c5eb499d5764c899e3d7636ba1359dd5de6ee3a771ed8b7eb1c3602fb866fb28aa305e2c5298b98d36a336cf165f3d1aa540e9caa9fe7722c31d890c68e0cd868dbe9d5522970fda298024158f7b15937080a0421dba22adaf93aed1d1a8b5554412fc490ceed8302414839a47307c92441351aacb8a6890d65ce07620e07620cea3b8138237354d62f9d2b73e4111d9ca3d343aba6f5fe856b8cb0dbad0ec775797f58173bfd75e5639783628943eb43c82c2fd7b846cf709fafb9b249c3cc986b5a55a362516c287348392a61832694aece5a1feb56b6f06ba0c89dcac5aee2d047aec7ae655da79765f9a094d2ecf40a914264be3a1b29ebd186020d339fdd94353f025b139740c9610cea1d3242c4210dcecb24524983f3924e7a7a7ccc9c79a92373ca608dc04c0e4498f9240ec5cafbc4a02fdbd8715d96c0ca1c274ccdb4ee3110999aa6d12a29316a3a830d2b96f0c019725febf281549eb7afd77244062c4ebe255050c08e58a1f6fd4a1fc87dbfc224f74591a0e4bea511d0d66d228e5e0f031e0894d82586f0c32dc97d59f246e2e8dd88a03991e9d5f256e2e8cda4b09940c0851308ce80fac0178215b08480490b47efec418aa3b77f5c387ae394bc459754cb8ac822044fb0902ce1e159b204092490406267070924942851a2244912254a90204142850e1548a84042c5112a8ebc580f2b96e57100620c7a8a67620c7d08804ca3605772487b72f186cc3232620cbd65053b1fd65026d3f91a67f429a5340b1163fad167a2a00a15449054806156b1818d569124f7659137eb7679bbaa1842eebb5285945863568513725f51be99520a495bb395a1f6a6839d25ecd5e69ed77a9cd7fc25f36d6ef547e49cb08d371c270ead1bf4e10ddd42f93cedacb5669edab86a7a5a1d58ec35526cc6d883bdac8d31c658674dd7236cf1a5e310228468b0af840da310114194c0c6873108a72753c2f6c14729e50960e43a5b26913af1fa68b0498cf1d6a5ece9d6913e2810444b29a59328a423756a15f2610223028d257aebcad2d72a891f5e11db06a7dda6b0f172b581341b8c56c5c78734f2add205860c48596065c0ef0dc6879f3cd2f1dab45b3894d2de8a61180e2deb97cd9675d9045bfdb6a4b44490fbea5ffd4b4a27ad7a742265944d9c5cd7d54e2ce9a4498fec913bcd135f1b9b01bd6a485aef6302c53bc4ea5ce5255f2b56b15aeb15e515b178c528a594314a23b21c6c5a789031d888698f30514646889c9d86460dcd1239a0124477770f08a0a1f10ccbd8b267b7b3312fe74d02c30f689806e24a810d65a89cb20c3da5e001ad82fd681417c874d0c39ca61c7fa6c0420e6d19e4c11e9aa67e727646d4ea051394c0caef4005875b6989178411758833a24a7b7c8eaaedf13d4495e8f108880b880e881108220289aafa7821e20ce93d9422788bfb902308a31413e4f82071460645324cc1408e421ca801250b391e0271871ee219107740c00eb9c30e19c346dc81473c01629c893247c8217c1145c66859c50ab17c5020081f12485691361d83f2101feda355307a07a8068d8cd1a7a15163c3c3474289e2238f1067c80ec49855942a42a420c6f4e506a3553e24481b460622ad5c86dc41fad058318188dca1868cd1ef010132465fd2c0d9d1813843013186878cd197519008918278649b12e8888e442263f465122674e3f03be1f0cb47a24e645100949fdf18615adcd385ac788ff209b705f28fd349d2274a5ffec8187db90adb85e5a9efd247ee20a3b89c0514b983ac923a0af7e50f0bfe59f557e0551416171c253501db521ac11022c4047cb07c3824fd0237f9843ad9d3c98ebed1d34dd69e70287378faca0887a7d3a9884cfa36a304a284c39b4c7a7f0503d160ff010db67c22c2f4a3e0d1428fd731a69fe1c01e19c9233a5607894492248937b2d8ac927a3fe6a99c07a2553de73bb3989cf3deb444e40eb28a8cd1973872071842c818ed430255b22972df9355721f86dc829422f73118f205920a11ec735b17725fc382b48204e20c398518d3effb78415451913b120cb92bfe218fbdaf1085e4e905a2559dfd01ad8ab925906c8c02f18056f52fabb96057740b13644fa28842becc533aff83beafcb47c521c5708e963531780b031c99169a53b0f25498c8e16190c47a7cd9646bb5afcf99ec13a63f6f77a91f28d53e5fe43a7d8ff90c17d13edfd8bc308669add8e98b5cafb8077d868b60a7b29331466e8f9f5dea872ca3af2f329ff5a8d77011fa8a9fb79a09d3f51926521f6daa35ff79faf0169e96b42c3384f6d6b6e960035b8c52f6cf0aacfc67905c0234a1a83f366c1fa02c9348dbd332c7fe344885f6710115dae788d911c1c98e94418c3364ee091b28370f8f93258dd3461a497569b0a305a47f34edf186fd93e37b2aeec13fe6e592c639818d9611cab0cab108391aa10c3979e3e9e924cf921eacb3212f0d03e99f9c5d4a7af95665fdd58c41c6ced082ce4a767456304f798aee15bda67140900959c895c3c6e131226344dc38210863d23642197044383cf7ed1c4e49ee5b1073a6fb27c70e7f46d809c3d3384972776f3746189969e7039627c6306c66f1b2e68939276cd5864cec35f36b954bcf441b9937d997ffa12bb061e34cd50e6d23adba8ea4254f834672f2111c15d850f2340f0863c9113cf3765093aee0d3d28992dc532a914b241426d7e34b284b94ce49af9d0e407f3ac186328975a048a5fae03289dca920b01fb0a96a93d06bc7cacbfc79e924c2f429de3e9710589bc32f1f91b33365758d618b36d8507382d3aa78840f18c97d6b09268451a946ac269a0f26840d7500fa5b76c4ec18d3cfb9624c5f5ee6a13823c698214c08a3820de194c49d65ae472cd094b05794e75bb78564e70753c286974f6e6b89d563f1f0501e4b47675e4c48a83f710532c286960e26b4b363216121d9e1d17c6a1556423ea64c9122f72d2976f0a032e54c329534d82da50ccd0cfd85c3f92beddc994af0dcc13389b4a933c9dc994ae6ce4c42ab126b0981c19af24a71688f356526994928ce4cb29333934ce959b5e0a455a135d4a4722ed693dc8f36bc70725bd7634701926fa055af3a4a83fd066a95c48d1ba8570d76af1a88a38195ddab18d336d3496a1eb3a64c22423736db75ad0b949a41a989533f5813f3b88e5dd8723261daf2e999305d95d8887988d992418c698aad9d09d3936d366943afb5732d9e18d31287738ab5f393c35e4d9be964c27414563eb6e0a74661630b78e4e56596174e7745b2451bac0fa09c234f88206244e2cca77e902f444c98be457f607d60819833f57dfc0bc70963e14df6e55bf03903c46983350d028980881833bd60c3e853b3e251830553b03178183ef817f0e05fc06ccb2ef8f92ad3aa3e82c45f644c49e5b1f74babe6ad590a6996f8936018a10489321aac73cac8fa803c2fa5942e19c605f292a58cba6d54ca9cb3d80442a362094496a60b4d9692cad0e4170cc338dbd139e5bc432c4a9bd2d025d20bc796fd9739846edbb55b1363b4cf1b462859a391b56f92a3c1730b5346831a8c06b5832f9209534a29a5165d1ad4ce3dbb59f6b90530fb9c3774915755316db0b9adb3511becbe70ea29f998654ee5a8b9bee68a5339aa8587c8dce190afb6c11b1886b90633197239bb21334d8cc9b2c7c9c96b0fad6d509371d60643209a8bf64d3681c9ab5517e58957c4188b12914dcc4fca7d92ce69719209b6c363dc4b141bda2f9c73ce24bce4cec63c2839e9c41bbca4942e31e67a4813da4d3661e5d7aa39e74cc2109ae7e5757ddbc29a5b35dff4f3a19d73ce39e99c339372660fe79c339b73ce2ccefa6db47b36a553e648270da9aafbcb544567e75945159de7fb8794931e084d96a722d9cd2dd88fcba1b4341c92277e99f86bb0e57d835a132c0b7e58c01384431238424343479054099242a5bf79b503b64a577a63967306050909491694e85095202a434152d02998131bcaa0a02021212a52a654196c07c891a2031073bf72c086dd9f9389ece15c4969a056d13714b9a314e104ca3d658a14bdea282da53729bb7f80f48f94b77062fcdd2e2f90fe89514a798194b225a7e46e50ae1aecd79632a5570d45831d941b28c8b60cca41b1bf029e694d0dca66bda603d0a7b7870e40bf3eb1fd3361621fc10350641f5376b4ea4028c933f7113c6024f76b50216f2bc891dc0192a0d2aa297948e70bd0dc848d796b2a50e4980f0083a156459f25f8e4032421d4aa143e4012427dd33dc3f0a3d249af6d5e0ac775ec3c5cc77e936f67cf700a87f6ec3c68d687a0597b102f6bf8f3194e0591b93f04cdd9837839c38fbfc9b4d341afe1213a1df2191e42e64ee5b88e1dc33ffa4324bd8c42c4ae9eb67014ecc7ca501f191a19193297a13268685857b8bc0082292da0c20423c0820a9030839ec20e0cac1b54c0037c4a29a5941aa194522a037cb90c1a1a9b480c42a03232c4d0044d041a0cb6c9e1ccf025479087bca450f45338ac4f0ba7226d90fe2687c09efaf8482a769428d9d9499224090f1248f0f0ecec4cb133059229924c91640a9d2974381a3061c2840913264c98704c3826dc12cc08547ed5963e31e0f86c8000d603379c6231f060c394f8c212b61a31c6d860ac2177a831c6d8e59039abd1420de81a0280b9318aff6cddad4989d588606ff5461923ecab8759ad7c1bb19638da133d4b96f4f4f0f0f02c010424960002cf1240e05902083b4b00614706ab51892d581a954f340c9b35f8a5295185bad5eca817081e3c76f8d8418d889c18430d44207486222c410a4e301ce4a326089f20d9ddd896e3124a2891c3e823d461d82467437687809b3ce7a4cfd5c2366dca9187473a7bf6e8e4b04af1039f98c3c6259ef8e4b086b409135d9778d20324c79790cb3d69ee38d11097501e82e4f9e421ae2ece98dde9a03838d9e26479b903216a134d755ea35518be861ad4eec59848c435846159950ad2b4e80dfe1ca33b199b30a224b6e3c9d8c4e1106bbbf2f552243206167524ee300661e14d13c9f2d8c5353333818c811d0b32b3a4e10d36041b7ab91f34efc5199bb421bb1bd8af6fb8c6d5b4496976ecd69a619f97569c110c426c42a41c81144104b460c110b5c92dd9220d1b950881931cca1f261aa8a1c87d1994a38c2db93c451fad6f5bf67ac32c475a49b035b3ce4bcba27848839c500c02d269ce479c31a33c228a60ce49a70965c45e387da455d9abe973f6f0e499644a2332e76be148604d2f721df522f5a6ebd66350f7978537298aba298a533f5837bd07f6132e423a7613c65e6465934111c03e62cc7c94a7f1b2cb51baf6d8510f8732a3fb9ade4a9d47a737a66e68b7b71fd194e8a14d952e7309a77618593969051b216d48d83b37d28498b57ecf288e342273e4111f5708b0e7870708bca3c1ee4bfb41ada9116dadb13bacac9c6d90032d48391dec475db26c5cd3a08c31c6062d6bb5a36b6af470c99669505eb66c9a1c7de64c9db3e3a70069132b15ac5e5622e60cc5313628b1106a7179664243122747c70ba70ed8c412f15302881e3001061a51c878224f14d423ac0cc27903968771ca8a4c22e389f40c0b0eeb5cd1c8611cfa7e96a0b00f12275089e9484adf91bc8237194566ca0fb892abd9d9c8f0bcbc42e84412676433cd01eba3333f9f99e1ce4219b97d6c63e9d3e3933dec1ed2e76d297a2f795ff15e642433fc453c39106451de2e2ec3a9cec3a98edec3d87ef3b55abb613087df14b61e3b1173c6fb7c9c9ac443dd45377af756e783c4298963aeef2e071ee55a75643875a4f67a2983606bbd3a1cdaebb56b7f23c3dcbbcd76ee2e6b27e52629b5e83d6c847551766cbb385cd43b77e4a7f5f97dbf4569568be81b799560b0c501d869a4de0876ee1b276db02bb1c6b1c9b22ccb32faf9eca14cce70d838e8b14d777a45e18e6c659de8c6dc89aef62e75639e9e5eebae0cc32a76ce88fa2dd3326981dc2ea26f2c6b960104d6e690e6ebb1c321af24368c3f723e662cb43460f44cb4a1bf2e8d209dedd2607f3dc54401153604c139f3a92c7aebafb76864cbe76bd0aa14bb442a6c8aa628ae271267c53c3a451ff66f40993913c32174939cb67d9b1cdd3a1b1b86533dae6757c0f50cdf6449af71ef6e326d10c818dac781c0aec8b1d3b04b8ac73539106473611d29fa2c6bf90d561edf9c81d130d62d1916d8a0054483d62bded1a0f510cc1676af9d3016085ab72ccbead322e44d5b52ace4942dd8914956dae34b38778e2851d97374ebda22f6a2d73bfa8a158d566e7277cebb7a6067945685126742913dbbccb2faec33c99c193dfbc49933a2679f3973ea6c2b97e5a24bfaa6836d79ec6ca08a90de1fdd224c7890de2fc27219a488ecfdcba410ea4a2ab24a83d949b7b3b36497374e18cc04f6c3367befdeddc3a91c51e43d762f82e438bdbb8defdb29763c984e377583fbe9a7a3be357763137d45f49578ba9ce8ee983059cbddee2a73ffb81737488ed43b9ccadc51d9d4893059f64c892536c8d95d5ccebb31531f2b5771c6cca41672f61825187216ca27bab30144a6d4603600abdd24256bf76810713ad8151705aaa0a8e40c96a5454e324523220000002314000030140c8805a3c1602c5164a14a1f14000c8ba84a825c9b88491253081904083104000000000000088c360104084b1d921c076e5a085da5529b8bc208021345c00b82517cb94e61a6e4f329ee226cfc9374eca0f932a039ffca16a0afe3711370323f44c538abc99441671eae5cdbac05466cf8265661d9054d347ec0b861181b0ff8e8d40ff36b4dc01e24277de3323fa917344841b699d80b52700b8e3ad15ee9fc26616beb9a3652a380a603d081f26ce08a564510ae645b735a6e19a807770c186bf2286507ffb6f64e2d8926b7dbda13cdf31b45f690693c815ecca04d10007889438683f9270412226cfa7b01cb01682dc2bf30ad6230a5da53aec2eb929d0e5b8730d161ec2dffd135a496b449a2e8ede70121e2bca571bcb2b96732ba17ea70b6521f07c0f706409d93188f3b01f4365d189c9fe7962f4c67347f9e27544ba6f30814ce28caa75ff7d572558b4c4038b43b4e977d57a68da633249bcb91f231a29049a30cabd9947edeb9e0dcaecd432170bce9a6991bb9c2ee831e0816188c21f8ca68193947435575f8a5d90966059d33356414f10ff6ea34e823ed77bf7f4794750aa2d48eec67682b60628182245b4f6a630710c4331f7609bb18c977be0feb408f8d6c216dacd029577a87a4b1a4666c8ea37757f269d13cb58e14073df1634b920e3db0658fdccfd5479b3e0a8279de468fc752af652608564b510e6064eda54037f287c52bd28284daa315e7255fc29c432a116550add3350841232cada3194e8ad6d178cfc622c26d574c286171c6645e397448c23b525bac02efe53ea1b0d946d2fe09e5588c33b308cc786a1541bda6560b1458f51e5da28dfe7cbd52f3419da2594b26406560f96e3b8bb66a5827de961b21ed9b5fb47d5eb567f8a3c89a918ed83c74ca05bca1f4f9a0c108a20d7b51f29df31f73b01f8ffb701446a3f79cca9a2e5ec7cfda7f4ab0542e5bb7de50d2614029b16c58832da4032f83e4b0fa75c9d26922a12862a6ca5ba8cc385776c3d047e2a66a9fc5e3fab640a512cb24e4ea400f33ab523c4ceb5768bf6a6e5d38bb0398790e785c2c1458e52cba6df6bd40008fdddff0cd30f43cd64d01fe995c300df76b2bfa4acf91c5cc01aab8c1ec9156f9351d6c67fb17a77e801016040dd6f9a72034f3d3d1c1fb61cc3bca5d54a84550304c1a5521a71d1fae92b6a17c134c30ba55ca57eea40512cbd841ade90b98818f66fa3d3f3efd81c551fee15f48c8ae8517e67133846ff5ef14a78166dde354ecda0034023adef2e2227b2be2b3b746128b79b7dc1def2a4808fc1535c699e59b4ca767839bcb174b290d7ef15baef44d33be9c7909f50a87cd5adb6cc04602ae49210744488d9ecdb8ee45b185dad3a092698c1d9328e3fc2e95a43cc2444a9f77f1d9f66797e113ebc0cb2d8e4ce070150151bcafc0bd8162f4d3617481e71a620b6ced48a045b0b20261c3b4b2503ff94042cc4a3b50a82f891dc48fde0a446339f84ec4e7bc15069b722dac1f36dcd58b68d00a04a6ed55ecf66165047acd68c33bca59ef8ab5c2aa2a89e47896e32d5bbf918084da6e52498ea53944cda317232ca67327b24e30330f928f072ebb897e83da6cdaf4c2696ea03630488dbb8beef69054912b77467f1c1a940792b5e2fb383a5f020ad7d716a14a23e2a2d1f901aa36cc4e5143403c4a6d34a7602349e3396c98922d83b921542320447750bfaeb16a29fb0f707f6140c3b5a2c88134c5e783ded0737f2dc092ba32469db5f92b523fa47a01dc580fd247d73c3aeda76a68786bbb839ecb395506806b35e5daba8c4ecaad9f27f6b77c4549c0f2195562f7a682170873f61fa46485f7e78b187bf04e1c63546ff20b743800de0189b39306558145855c133370a30eaa27d9f803c182444101e8d0fa475922a0b8e245fd0669cf763937e80a2bdee41dc48ecf9e6df57dac8a3dad29891db40140603ae2e022774063faedc2693a4ba5a31af45493b26b780706e011fdf8e14ecde54b6e6cf4b4900e320a649fa33cb309282dd8fc6efdc5cd0d351d80ed8415f22330527efe54ad356a922e20fcabb7be2146e77d71bfd91940e5b142d50b824e60bacd07705582fdcc6cb7eb377130506aff311bf59d7a312137884779e961a4177c467763e990501b50755ca5455467a35a388af35f4541dcf4a58f99017aa9ba866f2f6583aaeba953581793d8746485e72e77bc9c63998f1390bf845ace662a1fb66ee6200b207029db24844f337332c92efb4b3a99a895c28470b2bd8baa19278267e0f0ec132b5804d8131e93baf0af10cad45d8208130bfaf7a5c67c20deee81353630e594bad8ccd0646bb1412b73c59671fb4fb37439ef4c4e3aaefdd4d8457e5f01ded6064abfe210bd14946cfc67a98697c1aa653349ae59c2a891377a7a454a321897031f6ae4c548cec3125fb20313bc99e92690feca727a4187d0da7a2ccc149e77d283a9dc9524fb066bc4c764b26b58233fa053573dcbb7ebf96f929d3a70312ab153a69da87394e3a64501432b191ed891632424fa8f923db4f1fc3264a68f0d870d07b4d5bc6bcdc629b7ea1f5daf7634f508cbfcaadf5d31c5acba62804226eb3745ef568c266790ef764da0a85c844c00c1baab232cd83aa7cace849f3f312306a5e1f95244af321ec8c87bce3a96d6707a607f1b9deb83687e9c6ff21aba33c60f97c88fc87bf8b47f79780fe493e5f120eaa4df150ee34c66f1e16023d22fb9d343132538de77fe6fcd948b3f5d65f6fb14511504c33f604ceffaa28e9887e9e9d2704840b3b913dca70972ab9abb890bcd67293427e64c011ea21f99f9ed7454dd998b6a4b4c119aaf62b3a3cfcec71cc658b116d5af2aa3b379b4d328645aa900ef02b067892f4cf19a1e0912be749652c827d96a589300a6fa0faf8ed79e5f6e3c0bec0e60128e670865b9ebb523fc527def27275797a09775f1a8d5c5be41444d17ba684acffaab07cb61293ef202ca76b064217c47ea6edee57e93441b44ad801622d12a54201573e785cbb6acc4d6dea007b16f66f9224d48f7f0221941efa26089ba4f6b5d6ff2644616a76c8fb4c1ddee41d25dde3b708135ed913d2a1a87a96bc0ebc501c8462bbaac72125fc8fe578088db198445d405c829aaf19299203ad2586c1679b30b5ca9da83d7d41dba69e896f9e918e4505b80a9735069633d0a9ea35a10445a67c6c9ab73d70fccee1fe956bc5e5faccd457fbfe347b4339b1d05a6b7c39f29190d3a90e8d46c248ed96b24d5416b39219795eaa7137d8e830a0ba713461e2836a1cd0f210e0501069f03daa14b67af2aad5a2cdb8625eb32fb747acbfd3289b23326000d7120eea49d35b44feee9f4cf0c0b2a10299d3876ecf3c31c5ea2099c3fe3f362836bfff3985c0b6f041deeeaeba738dbe7a14e6b195c64f87881e90971c1f21abea32da9af5e8c088998c942394e31bbc6a01a69484e87c2f6751b7f9b895dc44d6bc0fe23896c8b3bcbf5d50177a2fb4c426b4f44286cd02073e82abdd8ab7eaa8cf82a70b9eae7b722e28e8a7b433bd336c33ebda88b1d02b7c04cf4ac55736566e615becfb9f086d55fd0c2dda1f0831c074ffa975eebc6ee2a3cdfdf94b0bfe8e4093ac60ab8b5947dd534db905626d90663d5c9d8a72ae2a9d357fd8a3d795559564531eec84d225ff6010c92e17a6cf7b3e193aeb77f67e9b0b4a6a2c9244a958253200d92bf041b1fd27f9240cf7347387ee5ddcd542b5e7298d3cd331207be2018011f0726eeebf26df02cf240957f80fbff7a2e1df9c572639a6e5efcb2699bbec3e62d00a4697574b5f2168395ceddea9e156f97c81ab872c88e1c1eff728b137bc0dd2f258a73d03ee791efa3e5e62e1b425d077a24446dc07bb58933d5227036e00067c5f74a8afb2affbd2ae85f4d69364028c9d114d98307a2a2a00826a5d11c90623cbdcb3a24727aecf4493569142750ee6f00e60740d7c4737f919f54a14c2cb12bae4e6ba98ca9ab862ba21abd05a81fe336037d5b1cf2c55c000d009e9d44052c7eaf43bf230e423db197b27f85fac842aff777a4ffa1b30c963c121448851109105be7f5d0ce81c2f171845cc5e9bd735b866c24f654134fd5bd58eaf70c39d799215fe3d3c9aaa8fb6e07f61a0f2806d44db407b6250da2f6bf53083f4a4cec6caed373bbb084d852d0f12236f02e93fc784ff97b44aebdc27a8c464aa5d2f58b41a72bb74b3dc86fcaeec33ba614e39b78c57362b188bdc31ed0b29d2ee83b3428d0f17f6478273dd624046652d022c4e9f557c0a67ac938f4de2e0ed4b5320e761430cc0bac89e0d69531a2284d3a5a36ddfebd455df7e3fb85b5a774b751273ae789913dc933cef7d4598efddf59a457ebde40270f78d9694d62d1c6c265cc85ff4c8e088436b198d1c594cc470cf311f237d617f9625eb350679c9e7948b3363504901b7647eedc354cf9d7bafc6bda1ab6947ec41087359709c7d958fabae2ceb28adb77006504dfc2dc4fd68a797119e072571c490087eebe9199edd2e2a136e1929f96b3ca6048c3f58419dfa2fc60cca02df98302c2df6d08b05442e7fe72bb707ca98d06331b58d6a98a9d2db7b9c2475324c976334ad41b237d993c79df193b51f53b4459c9bf585d4bbab1119094dbbb04ac4b9cbed6f0dae8eefe96e00b6243fae7f869596e0b1b4a4708f666968fead24ae887b1b7ce7b378fe6f9836cda1864a8c2cea31dc7ae1293edd6249fc6de4e9c775a7758c5d70fed3b84bdd0ee2b197c2613ec416e133b078a7c8a2b083eaa99ad48995662a5c9ea5ca28919fc97a83b7a0c2dc32bfc71edd583486ddb8337bd9bc2fe5ec2e660bf04d81a196b6fc6688ab728fdef343eaa54a4c66a20bfa3b36f85a09800c0ab31cb65204353fcc5065ad5eb252902c3858fafb4e70df1530e8a8f1861f4ac04f50c8f4dcf7185f551dd06eae31bd8ea3695e12474144e7d1a3ec87fea8e83c9fcbd23264ddc08cf8a1b8a3dd038987d50d08af2a8a2d7bb33998fb0728a5c6449fcafe664a7dafc5235c50f075c5e7cc8096eeaa31b699e4c95a2b1586ca97c096b90398c138bcab7730a9a46e52b65cd890452f934847f1cb854bed1602c3595ef1a22272a4fe54b19d456e861a8f7a8e81eaff6b5cad7a16332707c09636533ffc7c4154243751359111f06adabb82b48fc581e4de33a2c749cf1e22e53c2bfa2a5a86c80a466a5b170df4931c17d835638ef6c1b0a0ff351697cee2e4710d390d7d6a8a052770ce695ec6ca9a845191279ddbd97deb007144d6572b3df628235539d5860b12be64322428331435120d0680cbc865fab20176123bce2786ced3353d54427bd7ed31bf1d8b81f697bf626553cf41e02a3e1fd09005e61a8f56879d661c1d4c48a91513a2d425cb04c1f4190a94f862c192ba43f59f9637081f11b4467e4e014f527b820cda0fc0dc3f84c0ef1da3cfd97f6dbb45277a340c51b8779050d915dc4583b76ef56b55cc9dbd8028bacbfabed2a197e896e93d616670c65faa064788256f40ff3f6486239530b6a30a74a0fa2a9b22f10061479012e7e7f29cd76e2fbae621351fd7fe40f084c284ad69fa554fbee6c274e3f415291a4e4b0b04fa619611541b9d648a878771575bae44520726c9313f30b0ae9e912712d4a00ed21f31202405d324b4eaa13da55da1d2679a48ed67a01efc14e0618008dd59a483eabe4d0d7d3601ec3fcf929e251bba9b2f93c30b18c17a652f772e2181efbc44f7ed864ae382ec73f4c5a16d47b8352e0aa6872f101afb6f613897ab1dcc56c231c02e586468cea0e4b90e5d6d7d31149983abd508c63e1d917b627c09c9725b3961449ebeea5c01b960ed34d74c2f3e2a44a0144f3210806824d160cd11b7f3ed33f48733f41e406f8d332f32fa412a4dbd6c451861324ebd7f15c62e684ea2e31565d962a2595902e7d5ffff8d3d7ed69cb3dfc03bdf600bf2465c72f51a407d5bc5f92c353747bd07c36c3f13baa1b4d707b9f4d436f4f3ccbda50c5b6a56bb7824e0c2043736f3f1b855457f5ae9340b5a4e66f1217d121ee9aa2f6faabdea8198e9faa65e63238fc013022524a891d2417d7fd5bb24945a31f9a0e6bd422c05b1f5e3e78e01a54c4a068d2db96cc58e3dc11f6ea62883703fb1d2a8c900e7ea5e628a88d25d40d9c44576a6cc9ce83f1891881eb0bb3c2493895288b48ce748f1bed319465fc5e967487d514bd859c63704f77fecfab0ff0880e40b02fb9a639b0b6e38a863ce7d65885b7b41eda34ee60c21b90a519409600205e46a308f150e36c7b97f5de474303c81c9fe70c15cb412156cdc177f1b3e8e5b58578746a5278a61d5d1a9508c0872e2bd510a8011ca835e77371e1a84338795fd48f5d2ce303205d1c9d284d739580dea3b6bd41c1c7e15ae377e88745cf910decefb92b295f192b90b1cd2e8f346b08ed3686598533195743ea49979cc090ddfa32bb9c9d0c2790507c3f2c0626c9b3f20a3a12e47996cacb4be47c3e99d75c7e05a5c6456465c1109f5c02fb9deae9d9400fbc3663565ddd77d79a6ada2c33028d4219a932a232c5edf0649af255edc110e5c3e452738a1af14ae627c3ac0769b41d3cc1e15184634cc60f44a6bf19a1149cc4cbe7c082769afbfaf9ec3644d3dd0c6e07ee04a17591345b796613ddf4b883c1ffa22d048121d501da15087039dafc7d7d223e54756bc501e7a4a35253af31b0822b53efddb3a9d3e44924a4a7c198f909730d465a90ce12af4b6366e3587e5c47ff3b97c6c0b709d945e142989c4c6066e78e8c71e230512f249651b18c9118f2562b0b00efe0a237703873888dda1e04a02024a3f5ab5ef1250b8a142ccd2b5004cc7d4d8d51138ef3bb0b7c85fb04e510ae13d4978cd1f4a769b1d0d14d62b66988ee4c83e73992428e5badb23723f1ba3a121e1b804bb20acca0185a2ac60693fd518c0a57302aa1676d2cdaa9cb9d8046fdbda8a3c6cc15f65e62d79b10cd07ca2b1f1563f1da2733b58ae1e34ac658e151e10e08050c3320fd6a218f6fb2f0cbd735a1247c2554b480a5f218739633c2327d9f4ee06e835517f58d15d95333ca7d5674fc7cb2fd98e701ed659c38bdab4cac57a972079391af819278cd175905061c3afb5014ab93c18a0bc4a942f168eb39cdeeeac46d08122d32018aa82574d2f3c4948ec89acc92158a0cc4cccefd41308d3dbe369a48dc2ecec4cdfb66dedf4b081cfa26fd797d6d54ea57ae9c262914df8b75d3ffd97a7e4a37937d7df0b48dc0b2231d772907d316f4fda8b517dcf7a85082caf33147906e1608e66a957ffc8ca1c921cca6296e5691021a12840c213d5bdb0db224a07121a9589244a9158142ae1718e5283ba92cf11157170d41909bc303593b774b12bd2d1a668da27d8975aeea5bb9ae6f57858a397662451de38b1ea69992ab9bd76244a63125498b8011570c83343cd7a599fd82bcd072dcfe4cb34ec8466114fd239cc8a92f888b92e7f67fd72f05d9a122966b8302a667bd3020b53e008a7c9d397916a6225759206c30d9ee365dcebab034fc3e7e2b0e2e3f235db03b907250b1c571a8b31a9cb7652b99ca9ba7f8bdff9847d5520937d5dfde009d2a14fa7f9c428d6659e3b766ac9495956c3ba01f6332a0b91dc23934598ee4381a02ac718aa8e0cba35598c54075ba791f8b45cf3fb52b3ecbbcb137eadae2326caa13622b51ee1abf207cc180c154b6562f59376452297d4c60c932e2076b701a3068ec757c643202c6d00102060d80f2c73ef14063ff052acf3af4bbe12030c0740b1dbf98a68ac29a6e81a880b30694b07116e9b2b79ea821b76088deae33653b34a448da2de85aa620bd0e28552a586b64186830830e5635cc50304a7a0d534fb0be0ebd44e297ceb3f555431765f2ae5c847204c512185efc2e19001711b5acbedbe225afeff5044d3b156cae5ac9ea9934db642b8aef27a7afc987ddc3c315f06a56eb662739f5d02e512000a133e14a096b334306098b3c8edd457255d299daae9b272999c5a13ab44831dbf555c7f004720892db334320a3ccc9f13d6908129c63a04f7ab5d1a411a9965e8fbdf52c530a1299b625a9f8d42ef6c3e1584b7b5ff0ad36ed09f244f692c58ba73ee243a2be03270d9418eff89af3a90f58e28188a6dfdc5118a14e8b2809d6935c18cd05a48be53a2a54766d2eadf90e2587813636e5188cd4df6f8a181f2a45c4ca7cee10c34a9285f2d16fb5bf347d2a4e0879596d114ebc4a7a422946c4019f454bf33383570d43519435ca6d95e0fa4dc344b74bb23410a6748c1a4a3ab1df8fda4333b48608f14a2ede2083722966684a69914a611fa195046efbe56b49e1a868d58e8e583192ad7030702a172a6eaa45194bc43aafe33b216d59015f1fd8dc13856df583cca09cf41255c24f95b088453232b71b11c1d117e3ff57746bfa73589d4cfc6aa011b032b12d95afc8078aa2ce9ad6b2817c22802294eca3b2c1a7eed93f8fc42caa5013241351b834b23e427a3cc24a71f7f4944d11c8b2411783989349ad25a8893bd96da5e40f339ab035cda951cfba278bae6240a786916be45405a944880a9da0cf71215a085b645f3b38be0b94133146376ad0e810c2586ac2b896cec8b125c94ffe7328b30e20669d5ab0b6cc84818a48b4b9306ab39839a0421748e6718f5457b2b27e9b0e48bb91b30eecbc80e2ec959daa40ee5d2827aa0a6c4244098c631830baa73b948a99680212e331655474d6bc766876553103f966fa723b188883710c4d1984656ae9b765469dfe58d639bb3780d920a7d745fab3bca61501f1d18c32c38608ba73bab69d51574a7f24b035c1bc538b67e9df3be09890ded00a3d1fe012fd0de10c5126ccb9b735d1bed6ca38a7920ec4d84a520ac6d1ae0b36ec3cf8df8818a2a71f2749f61972fc95403516f6c00b801d6f1a88963fc63e9a31829b5456a0235a88ba33d631a815c01dbc1d3332e999b0c73ea3c6227f357957e8608c0d171e522fb58feeab90580caeb23006c47c0594cb669b7d70f3340fe577a3674c7b96a4fc89ac49588d001dac1ddcf7627de6ce305e2e289ab75a74199943ee04359288605b99b54553ec0020dd5479bcd50bd512e64244225ab5ed70cbe22811dc408120d0543b2813642e941acf616803619cc88212ea90561cd3d5b1881097ae92b02fda02c0863dd90989773fea2733b80eb3446e360e3b12aacb1bee010b18c9ef81a3b6c15b62a4fc23f2c5c8741bf3fe8e37eed093d9334615e339dd9cc59ce7afb8bd38b896ca249330502d144316bdd51532b45e4e0f9d739441512520057563190caf3318b79e0b7a84865539405bb031c86b0b8d24e288ee78252034ef7563e25c244f489df1f6eeb89937e8d7de2f9c2194be9945f6096c81af97050ad09ad3f1cde2993a65dbc0ede599f351cd3d0827c86240385bb0d56233acbaf17c3e510c0801069f5a7ae88a3319892834f9ec4903c060c5013456220f1529c6c699fe0545030b4eb1a281b4edf3942ad14b29433e15bdfc794fa8e89d86c9641f7092b90dc6d1a7070f8fc2c30d971ca039b89fdca8d90f9c64b9b53369b9f860597bc170c228e1e845fa9a81f49fc286a3c767bce8b07cb9e63a3d9ed9bfbf5989a60edf192dcaca0e48c3371b65d581c9a00e63255750e6a56e49609172be88321ebaf882f6a3db2888c1fc3083535c000c78d74a468c2b6ad82731c62b38f276ca57c2d5dcd96b45772bd8f1c32820d25567a49793101df141feef177ed1bd2f67846971e446462c3a7ff0b8d78b158ac1fc4e5110c598b7dc75e94336470d5ada387fca283f2c6f96191f69d0b247e0df8c8142fd9b11f72e88a2a13a4654d9a38a0286dec04ad17930a0c00077b2815957cb9ea2ba6459a1cc921b746805df21512df319a019095ad9abdba426f480c031ec302f068bd7f2910367b190cfe29a2d28b594c4f385830110c35ac233945b4f28997cd52b906529e84588da7303fab22ce4c5db9380d18012ba446140cc8055afb7afa2e29837f53f29b93f9295b7de7d7000375c1c6f0f6a85ba48d8aa20e0a4d1e5267a260fcd457b957b9ecee2bc9c70ec84a57b6797f121a8347950843aaa2b902863938d9ba637de7152623b93c2384425c11e44ed9774cf0638a49070d8ec471e19341121ce01f01eea636b3e46c815f54a74649e25019d98a1c70e57a9d74cbbd2322333979bb56e428bfc06bb96364e7757d0f0306a63b079ecbef1666d77697de7a65dba0743e1b461f4a5a95b3b4811a5df6f3bf349bf98bf34ef54aa86470d30f415143663327840dc00360b27b9a9052540be67cdaaea30095ed390c066e8b09bed66bfaf8999412398150a12b417c57716cbc029cd670de65d743484f03f582ba6fbd98f397eef999efd25147507301f590d3604e59b7edced5d9c1e7376affb4f355723e9f20ca421b3143f54fc91e8a03231b93126f7ec1b0e1eff1b67705a4cbdd6071ddff3cb966916f7c10281f89baaa83089adf43ddeb5c1cc0b38f35efdccd5233b8eccba47825411880545673b58d3784ab476aca8d7cd451bccd411e2cc063206a9d9872af22d5e35fcd928482b65cf0eb2bf51b10f1d24facdd097354edb047232375ffb576ca3a3826566dfd88f2a66cee943cc9b5f1ab9c41c47c67da88fa641d5a12dd8d1031acba1d27fc54a1908af524e4b7961cc111d23604282faa9729449e51af3ed541e14b7511bacb805837e2915a7ebeea5a7c295d340f7fd72a32d68e01ae0c4975d427b9ed6a85cd45fc24d8a26d8ad4e7c089cf7927adacf1dcaf760bc102b7fdee4d4e0db7628c8cdda7b0e1b4a7572096c5819d223e337c9ecee22247a9fe15184de1218a846cf40353b9f3c9e3822478448813ff89b8f4c231362e3bb78ebc3087d0e90c0e80414a0b537ec7e8bda71c1c1e80bf5ef1a5d36feea720f4cbd38f6b757f32b00706ddad5672ae32a44a792cc426d76820b516ff80745e7623b0b6e0c2fad7b2713216dfca7a6a549909f2c20c6dd32c2a783dead471ad982b37f0cdac10347596efc2c98e78e22aec0d9d7389748caedfd16d1d93f133e6a35b7cb5234086c9e21bacb48a22402c93fb2281045a48ff3b246de99e158ed641a94e482e288543f89afef93ec854cfdc690d9492bcc5885520259b9f1ccad1d83b6343214700505e0c01737027178165e740b9f0202547b11f48104d82f80405d247e063182a0ea80b4d3f0479140ba1268008680e2d3f03239dbf3f24dd0e871f2958984b74e2e81d2bf20879d1bed5694352a17a0d41ddbc111d9df702457307fc53db030e90c79768557c9f1be8bcb22440d32fe6366404c270b4dd718726557bfc12e47c00e13b0eacc81c30e7ca90c1eaf722580feb7fb0a7fd9717ae9964ac805ac8fbefaebae92ee93b1460a2c6650e8fe6aefad7c3cb693de3dfd65812b39f96b174508e85b7c93f3eba6a7e0508bfd0f0127c8a6375929a18fa83740587f1cc5f69b42709ca7d13a8404af14fd2fff5443ece7da38275219119785808eea2ea67bde091a3824e404c2ef5e382b5780da0679e7c7f05c7b7d95bd3832e3d331ec4902c3ecf8ea593489f44954ff14a35e2ad1a32ac7f2f3bdb5f923cebe1847509564c3514f8a08954a6c80b7939808f433d367916c25f17642b5cf3508ca1dc3d7351501714faf9b092fb529ab69dfa24e13a4e1f2eba84dbe19893373cf0407a8336f9bb2443aeaf77470a68fe89361d7f5c098888581b4306f218ca78908220095218a766b5a6f72115b9a96d8dd00db858dc3fbec807babeb3abdf253e19960f7e07c43e7a04e7a02edca6e58c70eb5c289f52ce0d69170096c5d1ce881bfffb8a9d67f14138dea9403002a69873203045caa2cf5591792fbabb30ab100135d58108977e3439401bc42f1e2891706ccab64fbaab59f4293673c0e4481eef1f52dd4b9c254a9d66a3cbd6142b234635deb50c2d0b13204da969686561b21b48ecae7f489e646d769bd35cca04a1c84391d659d21d5338707adfed4fc05c6468c51d649fd0b23bf4f5431e8c370d07a20166a0559ad19f5210c5a0eee93d11034f7fa06ff2703573ad87fec72b486c38c67bee3c456e0e85fb57ee0d18703d28514b2325b523fed97f62b009e2187e84dcbd4a191b82dd0434c3753d679fad251867586f7c0530cc3d01d726aac2be51268bc513899ec6cc7b53ba7a719f07fc1674a5eb16c1fda1e41fb75012e4a8855bd4866433991466134b370426132a55e3aed600b51e010d947d79944c45bc9ef06ac744537a8a574da7f72a82103ffd061bf813f3283be4a12420ba06463e2c2cd8858a59238580e38e1bed36632f93e49092a6e479679b07a27e866ad1bcaaeaed5fa36664f2a66e7ec5843b60160b65eb1daaae913f53f88444e5fa432b127b36903ad8025ba4c01b7c1788ab242a1f2bd9eff34dc8d2407288ccb24b55b13f4c223757b69e079424504c9d060f088e4572bebb5e8a9a3f40eb3e1472deb6fc846aa33d5e7f1e3678bbeeb9db101d8959457e04ce5d2c3da508dc258e767d7a133426026d92d9124d6c50ea3fa1f6c4539d06fffade6bac6c39458b7ad2453a7240a31a5fd4cf24d69d7d52ca5a2df281de3f75ab67a629745c18aaaf0bddad58fef2ab58e4bc3c19dc33d3779c9f26737b22aef3a8dd68f401bb58a7a753c5189f9919512808481b08f9e2cd19e262838c6a1d4a691f5ca7fa09f580d00eca24137010febdc3c6a1609d015f942041d3f87da6008c1c504f4253e02af38a25c81019a047e3af6a9a0d54e920803a83e864d5a63919aa224183b390e4125f91c89a0363c71e42b713afcabe057a5684198a5e40556b56096d55bb372696ae50de928ace26c974ae157cdf6eee745558dbd5d6a431e8fd9ce4cf444bfee04a55a85c6eb7b78f4172bb51bc4170872e7b57fe0573cdb767decad05d1bfd18c6231a69bdf4c2797743aee05b6aa67265d06eb12d55ddb7e052209e9811f739f88f03e188ca6a437d6b9767925390bbe5b0532fc2c018b9dbbe286e60a570e8f7707744d436382d27e56dacc6da8c223d3d7a8dcba65cac89d8cd30c22621899b30b36898854860f03527ac4b6949efab18fd6e14b3293563717615047bd4635f770121859111258666a6d9b6a3f25de8103b56afa1196c141c1c8ac13c89bc2fb8bbc2926fba0fa6bf48c30b15cac1bbaae43ecffaca50e339da12201214a057ac04ebdb8c112692322322917699a3f9f5a7defcd9f082c559e80bbeb75ce9d2ddb31d6074089359e4b480980961afc73b2fedc0007817fac64b0b26c739cd798b6bdf1f82366ace5a35ca217cb7e72525c967998c04abe664f2f0a076df83c704695af948a4f3eb7567c6147bc8f806e7c604407eb6679cfa3143ded4673bf27cd95df153b6982e9f90099bd216d004426877a71bed40a35f0eb364cfa0e20f6b8532e3186d1c687db843a6e689adbb3507b345b91cef0c210b6071c161873e009fac2a0ad849d7a1dd8bf1b762487d462608b3b9b62a59ea0c312738feb813d114de884a39c75d6eb056120760a9395af5a78436d5163640a566d3224059098796f03a58bc17691544e43a7d8a0ebbb6aa699f82ea3bb3ff71393eb41eee143d151b0762f55f7d434ca266c2906764ecf986c10dd6a2c5dfc6a41ce943485da7692c4a699d6106329cb44017637ceb528f2c83846a569283cd194acd2633773abe51296921d40ddf7822f2da5815fd09a6c7751329872f144b9fd677cfeabbfe62b964f9cb038bd1cd7760adffa5c93eb1695d6ba5a68e1d230e010b671943f9ccce48a12cfcbcd8693a8e631be93d2718c0e7471887375f4ba9b96af9607ee77750bd53c0270603b1ada8c59c33abd686e279e885ebd8c79e29a3f644a754e4645219d6d55854d8fc95cdaafc8f65e83e4331851803fcabd05c27857371577d0326a4813e9747ae487d7052fa949612e2e216c86ecaa4a97f996c145681df36566bf285e191ff7f1edcd9521ca1cf8f657d3482379e41a0a0701a3f4281d706c3506b8801fea0860e00cdb3ad0889a8508103248cd5a8f46e246c19d51bbe84a44ee003cd06a0c7475f33765beae3edc20f775fde00c024063ebadecb5bae9989fdf1b21eea63c83fb8447206d3e3d3facb5f901fbc6ff4c4f544b2aee87989be3d30fdcee557013b6e858871d522a645832bbff364cafc025e5514ebab539ca47cf1ad0e3dbcb3eb04241a684ca2cd9b6d8fd53ddad5326a56bb6b85b73fe5e2f40665b0081de9f598edb68ad962b38c84c3d92ce9da335368e4647f3e36169549ccf692cb7fec8f4cd76c4f271aa2854f3ce52f312ec70b736c029ce1d8ecf3e838b1471ed584c3b2f8298573dacfdad4188a02eba14ae413569844e859aa557f017d6b692d993a118b38512b4e81dd20bf3f848899e3f94a61852c0498b9081f8192ea1866f193515022aab8e743b571fa019b427cd0f5ea68446527cb47e89235dd083ae17e60c7638aba8a7c5caf7bbc90275a42120ca964ecc08ec0fa395fe8b11abb81827bac304cc02bd2fcea28bbcb99cf5925d79cb82a0bf41c93c5d5c22392cb75e0f8d08a71fd28fb49c73d5411189f2b9378cca6081b130ed8f70cbc95c58071ee235399ce31403037f68ef04f54723c6a64132daf70e602842987ee857d0aad50d72f0be68364ee62672e22f55e635625fd63114acdd1db507f3013936a27e01490cd8ffc8c9fc37ed35c8b43255890dc84783d01c0bb27abaf6c59817b85f86bf86e15609d0cafcdb1cf09744f20b427e463071f546ca7fdfdba7e2ea636bddfdc655578467a816b698989ac927882d9a12defc2fe7b59021a02ef665a250b9f5a7ac8ba8811d1210f5a8565a9a4333aab7bcc68c0978aef25db53463eaabdce13214ed7bda18978aa991e08ddd02db5cbaf3e80d5c1db5f6cbd69780af63f51b3da441e4522b49fc7d47bc1efc5c8ff77d59d1f37173a1dd3460ecf7aa362c1b822b6b9b7dd6765ee884a3eaa599a59e9fb3469eacec2733fb5ad0369b5e4d0716adb1cf82a5ae0b2c6b6dddfb00c7e632fb3d55293902dff4b199e0ad08546677650f0ed878acafa58641547f9d299bc495b5d5d9529a6cac30615ded6d18a6ca62400b1b55c87e4f1fbc172f893500742f66c89c3c9d019382689b846f90ef6be159a32057c121daa5eedbbb90aba991ba082983a411a6e185f899f0b8d21b59e68db2ab4c346c6714be5dcee892065a645e7a9cbb117e4cf07acc24a481be4155debd65ff2eace1f96b705a10b7ee5d27f57587d6b651290f415055adf0a6c13bd741a7516539c472b534d1405d44b3cad1feac58067a0cc24ee9816e81fdc6b997a383a0a5282485a0d16a7f4f829ec7c045767e9d271f5ace5f71056356def291b0e132d72b12599b719e800a3ed22c6acfce098d577893029c2ae81bc424fadb0bdb2ca086555cabb23a7c8af28234e5eefc096ae8def143e248ee88cb1b806686cfa3644e1d028d39cdd1e4fcb047b72d93a891f557e0c4fdbb31a0846c856fd0e62f7908233453886068f4a6bc2f9fd9460455474d599fccb2665fd1111a47aa9eeb4e44f08a565efb40685cfe20d29addde39668cc6a5899cd278e0cbd06930175c79bf508c53099e7742a5f15753e64ae38653b1a5cfb2add7afd2f8cbe52bbed31ec57862d90b0f77b950c78dacf53c268a310e609a53267d2ac0d3f72c4a92b0b5862bca2b2532d1518b375d42b8b59a5ca24cc8641925321f480114d3bd63a58eea42c7754c748c4396a36cadf8eef9c8549192a58fd08f3f6d33fe48832681c88df86537f18f34b712006e925f46d30f48e1e611f401bf564a608fc6cfe2bed49a09158c04dceea340d1b9af5358771a010bb8ad1d4bcba41a2659764f57495c4ef5b285897d644cf94874fc0590c2b97017e42782fd172f87258422b16f58da7891331f897b2022f0344a4a55d266ff66ae865967cd1a69d315ec6098a056fa69f746adf544b715f6fef146de6782c90bced89b2c3ae21c951797757434a88d7331b84746703c5d7b78362d4a00a8c9bf54b3edb611577740eccaadaaa3ac8fbd089dade6b7360cb3ce269a9439e8d67dd4b3ec6a46ff46a89e98f2bc6846cc0b252beac934cfb11c04f5810f792bb21e6df84941407ee16fbd94cac3b2457a98935ad2c08c390add066bcc3618cb105568711d165b210178302e05b281ef68ccf52f8cea115a4701be6d842bbb52b3c722cc87e6cbbff818a28b1478f863bb8066dc8364db14643fcf1676fcfb34e6229cfbc426235017d449fa2d553b578c7f7784eb839c964927327f629656d01d946f1aa1f32c930a26fe3c14d8834f1147a502de0c408eae208b6ed326ccc7c06c39b3e37a18be812311894d40516a6fb7e4fecfba35709912fae066039983dd0e2ea51179887e89b318f2e721fb0254f58c50b3e6d86a8b50a562949d94cb233e2a6f4624c616d1acdc274c817f0cfa117dc021aff194f88a47c556c895c85889ce0033ae1a40e9398144c41891444b26954fc5e0e1085191bc5f597c04a1dbbaf3977dae296875c7a597debd1e1decd4518b1ef4a01de202b7bf0b96f5ae5bf8a600b0e7988688d102cc7a3590ea9251a26962cc6b5548f881c4d28dca0829429d9d188419596b6210fe1d37a725c4910e6482cb7ea52664dd1c6c328e116d3d5eccd8fb9657a3dea21ae0c2e8236449a7b227b6c336a464e539a2635be0681ae30389204e40c2f7001f32ffb76aad967f862e2d774159b94c1f51e530024d94cae78395664c1f093bbcfc4f4366bbb825e8094f345b292330f451fac8d9a6e1c9a432af18d45991e65f52f216af9406427b1613393aa1a9e39546c564a46a10df0cc3c86487412f67114c82cdf0f5d9a1b8f240702124939628cd13f405e9f993d1a2c17a24e3de81c4b39b3029c209cc777e2a0d65456860f2e3abcc530bce3924e7b228f0bdc62e8dfab61fe66b499d527483c90b31b80e4e14d588729695021dd38c9222f588aa0ee622eab848f9f7fa0258980624223a293e3abbc0b260aead291241e0eb27e0f83e43f8fbed7c882c5de2f28f809ef5b42b9372eac12d870ace0a68307f3246b93e15f01a58b03c167a9f364130e1b94999364e0320e5e4c69ba169838dc90fc68e0cb398a18b475f6d40e32632c1a7285db68e6b6e757b704f0839662a1499803b24c52dd6f92994d7ba4e43b3480ae232c8c2d8909918992ed7f56a07e8ee585deda7af622e9a995e2c615e2d573a545eb61df460ca242807262ab94db8d6ee267d8968d7b7515bd2c68c5d21280f08b6353cd21d2d8fdacc587d98cead75e229c1506eadee944df90434303ad26ca24165d9bb3377a449e76df81a98b38b346041b9257ef7c507ad65bc8a123924c1c72438e92894618f30dd58120e9f8b7d8fa1b4f632f1b68391b1d1d7a5439324e5423c2165896507649b24fe2fa2b068dbda4d8039b1acfe01498ed11f9041b8c53419790da7548fbf087155c74001094c6451d0cde640201e789500497c540d0fb76fbbddc4930dce7242515b8524a3defe25384199085aa8877b5e253dc4b45972044e24ace23425ec9341b9cd967cfbf6480e396de24ea3bb660dba3b1510f15b259c989af4c8006d1c35e4fde83be6aa33b88c1ab04c0cac56cd9a745f50df74b28928dfd6300645ad63885fd7e4f1f903d956f473eaf51df874d7ec93ea046c3804abfa28ab6ea6a097440242f4a7b397bd92c0ff5ee27308ddce5d0ec47495b4804623e6ae77541d80859416b32826d6e54e168d95448688804c89a4b530c0a0239cf7e169440f3dcd2a7e30872a9930e438206428cc8925d61b40f5933f3bda0e8712e744642b95c444a87cd6c38897b4a3df561b83990bef5ed0abd12e446e05b3bd594a5261fac10c9d7c210f6d14177335b95169c49fe4f98239e89f9adf6ec4889ec20f918e3a475ae5d34231b92f18fa25eaa73a350c364194641d693802616448f946db5f36ba3608f6731fb851c486305d15e99d3f46703f30e2871c8c5244a1c3ac1393bad655ce27b4ad7eb40f62e5d7ab7c66812641fd7cd1e7208d7855b2e731b080348eae40ec992bbfbccb7cdd02c43caf80f82b0aae28930acd487a7cefb2fac11a75c9b1ca00b238607038a647537709fc3892983f13c8fcb075c5a77e5448333077b77b4e5f45b495296acb78397f95da634dbe55b3a99b48dda73621ac263441190cc68a35792fac9f5b4b1a2baee761428f7e9083201c88b50f474809db73a99cc779cae4c90ffee1016546d2e3a73b6318e56a7431b3fbeec4f74a452e637a482bfd9194fba328852ccaa32c50db218a3aaf63c7ec3b0375f8357868887900ebb1cd8d86c2184daab0e9467e8408a85e3994b1b460534177ec8086f726e87bfc6f20ad798c5976409be354250d834c4b8c6f588179cdc3e7ff28344daed7cbc739d59b91e14f890662da5c2d3930c1aa4dddada54c95ae2553a5a4020f4759287841f3c5542909ba76e51c1477e21ac8cca06b2f624734a7b15faae070fb21a931c7869a18b939907ac190815c46f767ee5730eb8236a0dd006acf40d30650e5c6fb7d3c241a38d1ef381b7c33f1e016821cde7794c7e00867b2820bd08ddb4b616f36447c109f43c16211af9381c57fef308d909d29b1165c21558c04613efd1fe8722a01f970924ba7a4c9b7dfbc9599e7f86eb7103cd8fdde20430860ec036858ccd9dc1d27267f5267656ce5dcf1a16384619e529d415d9d132bd8f07d74bc78cf83ecc9aef2d6777704773c35d5611580ce6ac316bec172813bbc704cd6da571118dd8cbc5754024811d8e2672e901ca33c24c0d50e9d5aadf60a63f8746d96a65af73affb60cb9b6497f8512e2d8b389d9d88fa5d5b42f08a75a5f709cd0f3abbc83f4b3f98f18008569323c84e4a2e0a83595624489d56b87a50306e43920f2e376b5d6613975cccd599a589703bb2a4822e22de856f12314d701ae731db1151c318efb9e540c4697718cccb88ee5a387ef92becf2055424069c25427d5ad632e3dd261033800559526a22e78c80e020d61a8c3c5dfb1feee962afeced739fce82b48215029998ff328fe150801e5fc4c4051f68b650316f0a75697597c8c7a70beee87aa1b80b92e963c225c624441dc5f68068022c40a5f3a91ca15fbc5139914bf21e72938910a3bcd4e4f4d500716370b7628c84df662c270b5403e1ceeccd071f8a760bde2daa9086d1b4072aebfd4ef2eed20b1409f605895e8526230d18d4a099ae2fe48b9d44068272ec794d6ef50303115ec7f934424163d12552b05d5ac00e0ace4e92543d98ea42e52f8ebb4bd7fa65dcb658400da7a5f19200dbc22a419b307cbb708435391a5bcfd021c37ba2a87de33fb4a3500a163db6833913ecc61b856710197b23c0411e7a1433cf5060ade49ad7ebe33c2e8951647059fbdcc85a9ee6ab8bbfe3938f66cace6c5bad146425b93e9c5cae88cd85ebf0cdb6b32b2f7f4db182a84cad41150d0644030b457a34a85296621aff9e2ec472976520be751309d20d416ff190d87fd08c8297f44b6b45bee0b246195e23d7bd2b480934240408e4f4dfe65b260c70ae5ec77757d569d23f2f5a7d2381c429c11a9b8649a478877e703693a0d2061aeb765035269e2b7a724d1d271c676cae8cc4cdc5b25416c3e31b7f52dce2811f193e4d3ee47d3ae0f97cf0409e0c8908c84d074bbc492d270520f3a5f45849c67a3d3d5ae839c5b24d69ec5ae2222444afeb7cb4014b47d254bfa64d0dd59ac86c25b6540550853e35faa1eeed61a96581555179ca0c78da8ef55ca918eb740ec1f7f8a5057a0b3e7233b70da5183fa9b72f015bf1bfacc65a6ab55317bf782621b2b076c2adc7c2e1633056182558a8626dd136fadd0c47ff98be35fb3cb402d935c713c150d630fe0e209f0fdf5aefd47a6415784a78dcc2287cfa485f6433a89792810582039358d3429d02af1f99e2925ae99826bcdc96492f9c23f99a1ef798acdf158504854d90df193d88b80730aeaa4a64ce5c25bc89e083529ed48cc2dde8059777cd6310f71175378ed1db980ed45921f5c7c1fc4cf36619cedb8939a5b30b0be40d7970ef4545875eb1b2c4d1a6cffbcce08a95cf573b0b2e3128b30ff3229253aca8e7b2c910bf530942c4cf077e8d91772c4386ff207c76d5f830d24fbcc60f387cfb6488bfbea39abe3dc1cc17762dacc8e74b55590c761cf25a75b7e2a07c41a3bd8e6398c56db3b886dbaf446ed5bee2ba3311d8fbbea5d7f5a701a057046e6b0654316fa5936591d5005ce6a0b03a14fc1902c59810d63d6f6d590afe47ddd8e7cd4ea4b88bb9c0b5f40f93d8e4d24428fdc3436729b557380c708a8d44a75398c05f79ba013137c89b05d87581ce35c7127ce7c5ad6a0d009067da27be1953760103d5e1a625f9bc2723534afdf710b8ebe9b0630ea2b579882563cb550c7cb0fe371feb3618edc45b0aaf5e818eeb45481f0add28b390303ad223e113cf61826112493f0a37d85be62aa426e384288f13bbc910be86db883fd3b96f587d76f4314ddd048e7bd3ea228a997bfee40aeca10211a7def912afb2d3fea0cf307412a7ec210ee95055764a215287d7b15f9700a942bb59bea95bb121e18c458a3ee8016448b1725aae68a23131bd931a871d4b354e5429bf0c6d9e0f56277e05ee6c24487b9c2640f10b9dc0b48b92e6a0cfb4dd16c2fe0f5471f81d8020e16f2d59faef0b3e8abf37b6ceca4eb0603c4c8cf9467b6644ba33c9a2fa15b49acf3cb5cccafa4617637f4f0f10567de1fee9a39ebd430704adbaaeceb91e431ce98abb338b002f05a8d90e83cc0ad85213fa88ca0b4294ae5545ed4b1d96c89c222662b8dd4b65232dcf05107a7d2f0e03bc0c0b14f5e2d9d3dd3cd15af46ef59e779b3e80b4028a8956a1478c84994ca825e7668bfa8c7a218a3059416e9b661a7e675945de9c770e5228f0e597cd110667c6814f11f9b8f4bf385c530ae3beb358af45bfefaec21e595e8c38b45972f1a3d98c8204651c5363819af564e97859fa289e3cfef7203432ef7f2f777f3d4cc2e402c1dbf2f4d4f5612c37790f13ae91e69e802c2df7f76363cf34f0c14c0812470e10b4b7218a108de783d4bccacf5e143b2b70a1d965db7839d31f0a0c39b0b8e645039f834d7962952a1dfcb25422cf3c391635eb769773b4b2ee798083621bd0991f2599348ddc9314a199cb12de22bfc54dd5b8cc9393a601d55eb0e2354dc19cb557fb2092e7bc039843c13f49d126830eb3bfe59949c6f5b715481663624030a8456cfb8e04a4269e760cd66b1f2c6f27f0c24046f988b4d49a9149d81c1ebc65634cef893b14e53b1dd2ce7bf88fae3f80b6ff672728989c5edfe1026f93051a6572fc0ae5a6baff6962e6b2a354686bd0ad0259ccbb0f7bc612679926d4a3057c2d5b3e97abcdcc3980ca27210ac0777e95af461c5e3e88cd684cdb023821fd8c8b181cec778e10a37d914d63c701b3ef664ca0121878dc662f6cdf5175d629eef953ee65f54a939fc85451ab65d12eddec86f4ca8dc99816ce5bbdc37cf2118d4ad617dadb50d69e65e32a0679195e44ec4f7608f277c7a88c5177200aa453211e92e747c67249f7d23668ae0fcd6fbd10c4eb237b9512640031f2b9e91f5d7e3c23b7911dc08c9886129a8c7dd9a67a05c3c07235e526077859abc7a54ef0e32fb8ca8f1accee483e2a5ad089be1003dd3acdafbf643402501f2133cb6773d49c18069413f18a105def41e7be8329ac64d833d546c8edc7c702b89a451d93928b179b42cbe37163707a3f4e966d7d996ff8a7bd7fd64065d9e298a9238b42763dba716b1a29b885a4963191275d023c49fa9a967d6566a22415cc81f49d4e000a11316ddff99812b4c272f14d0d0305fd40f718857e312d8dcbc5e334d3e695726db4aba5bb2689c9be89aec08d79424758af225d3eae8e2c9b2573c539b42ede13c5be9e3983c5842be5a609228fd801178bddc76f042c0c53198b85ab9818474d133d9ef9a258af39eda036b15e62e2f49c2cc8a06ea7aa8f36411b40b99565bbdd85d2216389cd77ee493769facbb32c8c24ccbbfc0205bc03f78f1bbdddc4f7c220f27c3a832828d830766c4cda136e07c5731db6a1343928446f1581d55443e79984da9cd3458297b75a52e76d50263924f4afc55b8146d1bb7faae8e8de422cd9b1b16def986127a514b7fe25203b7b8b776d7d6c062ddad220402b0691603fb9b1ca264e68c32368393a0c36857d08ff28e7f1db17e2cf8c717d46ea6ff31bec80512b6565f131aadfbbd8a62d7fdbc26c2124c68bce89213f8e402779829b75efb4e48eebb8a8fa1e43a2db3a3288152f0f59c19e57fbe2ea286407b272b4658ef0e444f62f592c1082d8dd44fafb5be0a36fd7d3b5d9f4ede58814d7aa0478e39e33dfbf6ad5fb4eea62780cd629611422145691cc42aa009ec5361819257ec3f11295468aad261c01d72febc1259e4062b4a1f8a478f6712709daed4a69ab9fdb0f74813b4b0663c152c74b9e1c0b3d467384bd99b941f71801d0c73615851283d1fa30793d81e2f5f9639cfb4e22f002e604510f8d113ba9326f92eab089a013182a44a4eb2d9302309c53749b3ae819ced3eef74ef2c2a7a9ef7c952e66e87ba5241549a56d3279dd531915da7bf8102302896423f7cc7c19c975b6966c0c4ac34123b3f33fbd02aa2cd0dc385d85d56772f8e955d5adbd8d82a0277e58f54974cb8e3d7edef1237518ac87e1217a393a23843f13659723a09ac949f2663cebbedd349b94ae1c750e65c62757815f11d94910aa26639962adc05f9326e814b1c843024b5077422a984d3e2861a11688100f666fc9ef2d7305b3239839c4419722219c5147afff5d2fbcd63fbd61b7c382797a94547fd34d9abafdb83b751961c4ca9ed9ac88ee6f8d9ca7c6c1d9514d8baade7e95a64c0f0e733a4d8a4189956dfa36205e76591f2ffe214811c30994b9c54bb7e6f17ec514add80215f9f3ad8fa67414a1f321d51c33613b9a753053d2df1982c77719e0cf804fb40d97fbb161d131e243908a198f6d003cf17a0a0e90b8152004828417192281bb3f3a260463324de20c4ce038c30e813e2535a1360429ecb82704241d9a6ab8f228919c991198e24fe23c04c1639112bae0b134c24988ec54691c0fa36c14ae0d2efb1a91d5e94b78123d7ea925801f5ae9880341b849a24279a334f13a31fa6c423db8bb7e83d005a733d6231c782bbbc298167772f21604050d0af6e4ab1fe3ee5f2b77dedd70139f3a549c5ff6235f047b0fe1b2169b0962e5e16411acfda3dc441b1d946cf8ae0c575b932c99bfe4822edf8772bba18f65fa13f083e88b73470c1ecd8e6cf2f11495885d65febc8f24c0e597c4096a56ad43fddc31c5b29c13d1a3f08ff522b265430c973c39ae7897fa89093d3bbf3037846add304fd436b1bda9b3e16403d457cd2cde63b2e43e91f10a64586ca2d4be61ba01139592740ea563ed2d75f7716f9ff21a70f8c8a86b0c2555852225dc0a0b074e0e36fb6a7530cd544596ec8f3ce2aa0034bba022fed1f05ec17709040f8ef4f0ce6b2ab2de0ff31d4664b78d3d21b1e07c7f4a888ddfd00769eb6eed64ceea137825bf2e7cdfcb75409b823b50282c08d81e43f4805aebcda8a0e53786d01cc9bd638b864c391519a15d7a12db5cb28a4298adb72a0b446bc1769a1628b8f5cad6481983a539ae317fa1a8989f17e04796cd3bac0cfd6d21c3bfeb17a4ed60e5864877a6c19e2b2f73e0a9d48ad0923ec9c88105b9dee16b9cdfa9c0d4af690b715d5ec23dfa909c73234013fb5acad4e1fb827f7cbe5432e2322fca85522b46ac84c3b58b8e1afca3d86c906089df8ab98627f32b832f0da0ff9654c0e8bb5c131e001a894783292a45fb63fd084fb2313d47624c64fa3a6d944fad99564eb233e4b6c7df077282f4eb0ed00c4267b75fe46045ea9f718663df93a8745ffa32dcb0522f59066cc8d8f369c0c8e3ae1e0b3fe306e8f8e6c6b05f663e5fe410fafd4ce2b6924ace2718f84ab29e93da58b28275975f834bef05722702a34b2566d22c2aa15134bfc624b5c4ee2242f1701bdcbc9c3ef88dfa83fe1bb0b9812aa5bfbdd2b7b044e8891cb8f6a9559cf6843320a27cc24894c11f6931c3b443be96d7448be957c21459c1460475cd19b0c2727f62c109057fc515d15f496795e6bdabb172f5d6f4d7429ecfdaf7cc39cae92430d20c8275953143afa77ab48f026d696a55fee7218a58356d94dfdbb562ce8674401a422b3b7ee271467d6acbae2699a9bade62631587f4e07059e34a12c93697a0fd6f20bc97d0f0928371e8a10a1c501e69563fe070f34baccb18f5298aa8c29a96c043b49492998bb02e5cdab4e74c0039e4a0709ccab99efb1f692f2c3a2464c0513d617383c2850e9e4195968f0b08c4cbe0f692b9c7dc64bc2e6e477699896f4ff042ac0831044a5928ee30b258e03764e5ec5cde6809841d708a494a240bc12e366c098cb9627d5c854b3c677715b90008b128ed2229fe227654626005c812cba5112ad3055e7828b9d800f4183e86c2d4bf17027627bacf489efe106212d26b20870d049216de8980c00ebb3b4ed7383167a87c75cc4b6bc2e8f6cee64b28a34ce60c2c21599405baa685cc56591b1e2e1433c3e83d5d20a29d809fb85b88c81f29eea439c8588d74f8b0dbaa55d7d6e6d73a3f73ace241485ffe7484c3c2fe02758e263ae48e5eee359792f109160ce0fb02106f83f64b65738910176371ef702e8d68b44cf80e818260495145686c8b411d1b922770e9391bb20d4b3fb564f4059d179cfa909d09a9ac8a8f7367b20ee410b4afb0246f9a72c1a2c60d3eb10590e1ebff7dbfc87b6cc37b05eabe5335112635d85fae2bf0e15b9a0585fed835573c18a93a3ae8415b4e59db81aca025f32297e16051085b54c5fa1ee94d8818ef3b7f359744f3f2e0c3e17ad6fafce90eb35ff81960743b74297a15234fe9c709f21ff22e73d30d406585d99bff13cca239072ac5e51ae8ed630545e11459c8a3a26375eb3b403ffd49c573830c1a9b81a0a9f73383851fd06d6a6f0504689476078165e9b0ea4f303fef78ac5dd7ab8db6f9645caef57a38dca9b1bcad804115fe7506f1995eab33a1f6e7028a7e1c37518ac40c4827c4bcc3db23ef5c61f42ab40a385f3ce07a247ad1d5681060f17963c5baa1bd3a9cd8de7d243f6c6d92c2a2e4b0857f7154b0a665174de3ef5bf3faa4013439e9126316b27d6f9351892cafa54afab6a25dda07cfb351d85ddde33eea56721daf7d136440501faa40d41462c1b015a1d314b0d3942a98250184a3c061406c72bda2b363f7940f8d5f98578c6c455165058f46182789118999717bf527513181fa7cfaf3f8c7327b8f5c10a7b259120f46a38012276100a07882eb6830abdcab5d12264b58bcf63d0fa0d9f1a99da53d179979b79d187e8804ec8b998cf2648cc3c4369fcac34e6a4520fa0a40dfe32426cd7dcf589e4aceaf75a8ea5c4a36be2359fb70c46bdfa30698c40ca46da6490825dcdef28cac3965e95f20d0cbc004c34d29d7d609d31cebe2b7e7b9359c0eb4dbb6e0d4561013698794be317a17a83793180abda825c751fc2049716db4dbdb46e8801ab2430e76f1e159e46242a9040281110c337f1c77a015568fde0be923c90e9a2d519aaa52843f5955ee66ec20749a235fc1bfb8d20df0cd540a7805db8aea231555d82e83c0f6e7248aac31a5af80ca31ed6bd0fa7e5587d58e3af6ca7620bc39431895c5b61b4b6c86c0160dbca2adf6ca3edfb94d0206ee045c27a789b9ef4e8cfb1eba4b6393473c09d84d112cf58ab12165d9c88e2f5989bae9c8748ea77a2ddfc1d8616bc2599adac2107249027940f1030df56d1a91e0290bb1d7f914e3dac87a4b275366907b7f1b0e3efa6b46d74fa7f6f194bafb55fbcce2c0b3cfb036aded831f92014088f73163167a46d19e01c869b4f34685db73109dc08fe9680bdfa3123c18c5e19202e8c74580e2e11eae21aab700649c461857118f63ec9514e7672a64ec776bc8083e56d5319a2c649c1244e8cd2841214b2f1c92dcac2d97ca432017cd5b1157b38c674c491c0331e37d48c4b801c54fea787cd6dc81805e52eeb5442992b9740086ee7b3f67044eda65beb8b9e9552da82ad969f5fc221371288c9daf2e18298b68e1ae1d722bc5f6b75f458399706ff9e956d003a2f0b74b865c6bce4120acb12f468f8120810b1793ecd51b96af4ea9b482c91bfa6a18aeca6cc59ae2ddebff2915c3223a99b641fc9ac158459b135835d0aae4e4a31e1834f9f174f14096dc66dc705747183d87a55b7c54893fb7028593cac60dc317910f9431d324cbf1b350c922dc90a4dcae8a5720abb05ed73580aa81d6989955326d7350fb39a48ff234b8d3b5aa181497b0b7ced0e417cd6ea82015f4335a16628cc069b184391c0fbf3f7b8bc95d189484909baf99f395dbdcee9a9fd3d1258f25713e5117af8dab273e571abb9117eadf30c783ccd703eed6510b4056d3d074227388bcddaf5b1d133f2315aa17f33830384313a5fb5ef0bd39faf66768e4788188371d7ff689d2e39cf7b121a2486b801a00c2718ecbdb42be72072517c8d983dd01842bb7d84e7f7c531fa482513396a0a449d38ca60328a7f13eff6496a38ddef3e5b430fce3a15dd7a11859391a6cf87a7f9011506ca032d86b846da0d48a822f8294e0898a1626da622d6ba9d45dc475eb23f9121ec5f023e015381a62bf45598a353da98cabe4c063ee1dc51134530901ca226a2cf3984faf2eeea1b25cc1d6ab464867fd4818b2a3d04bc3e6fc906ce21d842448be98f65f8b0843ef83a0524b446184b31933cdb21dbbee27647bcfd177e47bc5151243e2f72fb893d10c5aab6d54ad882f55af64c79a316c0683f08a7e30d964876352b4dbecc11bb3f0b098ad51691cdb26e2a508137a3ec9bff85e20628d402c2522cebe5586cd864c7bdef6424861e9e663645047b827f6c0593dfd5d5a2680ae39f2a3a737cc0939903b0cef341f9110f95ca45fc87d9dfcf21740f3332f6a5eaa9f7a0b086d585e4ad58c8d51d562bad93aa70284db56c55df6f2fa2567a30ef31ce2ddb60c7e06deecc518a95a98187f949237e28aea1278ddee7c75217244cbbc52537d562d99562ad73c7a4b9745a1b5464ab2d1d86eb400980d31b215e75e003ebd2afe87cf622010f04656fa79cae328d7647444b71d8880bb9cc4bf051cb14ef348cf2c51a8bb8216a2c2f0370ebc3eb144433355636ff9620feee4772be9ab16af5f54736a7f439ad7ef82c96d37f16c1acf47ef28043d9a9b04741b87413d73e5f1f3532b74bad403a4eb85564208fc333eaec6519e82277b643b99483da4893c35bd55bbc1e74fa6322b4d425862181fdc2c416e78d2dd85a33bd9a881810327875a5432c257de89f41d2c30c1241a28de248d07bbfe82ea0dce3dd7a54eb825454880519a285e403ad75835474dc65c147f5322a3578367b7ab344cce9436b825f140718a5dd48ffcbc3dafe8d2842bc2fe2a52c6264eb668cb0087c50b0e4a49c09b3d4958fc3ec684d9e4c8aa63e718026e4d1981f1321020cf3abc39bf5f59372ddd5350ff472d3bcdc1ccba89c7804dab094e4e0d9a41f30f3b4276e90a6d7dbccb5273be2ac25a1061f2596d815de5fec2f21c59b59d12c51404ab44aabe154139236202f8a52631d5e65844e2d78176d07a22cc74be9b59430bc70194a320af2be04c64254f3783c7c344325a8b2ee9465458310573fcc9beab871b7ab61292c5f23712411d015d5d8cceb611fb57bdcf0fce09645d127148dec1db6e2ece789648161c595d5b1bd65473585b292424b7de9a2af038c374ea81fa4e4269916192c7ee86210b3691ca548660a01da85d43c1c58914cc8258369b566ab4852f31cab526431127420320f0d83f2d20a6925a3ea9ab88a734d7bec280fdbe7f63cf7a5cacd0a3d74e0b06700e330af0896d22ce1809a0ebfe0b868e3fb58d96fb137e9e6a713d059368e2a3105b7b04d6e75e75e6315126fae73ec2e931c94580540a5b1f122f58906190f58815e9a76912ac67cd42ef606bcd56fdf6a4464b233139d31cbf181942c6e9244e052366355167286c026c4800de96cba15ae055e454f10807918388159f6d38ad50a0a4e063adb69c6ee6b19edf5655e4d61392c5b96a25e6e9cdbac70d417ca8c970b337b747ddbddadc778642c5d4bb803f4f46b5eb384a2971583e9cc10933aafa954df8a16df67ddd0b4426b41b9da01f18bf72ee0c84f82cd05429db0a3af77294cf41deb504cd51cb6a65e6d03dff59e7713db27e39eb5cbf496da14568deadf20e8bc3ac99c4e80a02a7cbb026525fa179e4fdbd825a835b1f7306b4dbc970f51faf029b8346aafaa2fb05f793736fd80b4063a8665ed411870cd54a32ea88ccb7a81d40b2a97ad660dd8b7dad726970f1d6bd3f3135e3187d4a9ae4cac5f6b85637d1ae522dfcaa54813f6db83b6d54e32f271f093355103b76b7e9f0d16d5d1e6e43132fb708df01ee1086bc6f5fe0def9f891d088290163a066dd59d76fdaa229494e92284338be39254005865ef89dc384916798e1b63a858e6a04ffd2f44f676d4bac2adeb66fe43dd321f748ff66fc5b688c207d5a3abc1c71d455944e074f43a6993510364a1ca59107e196efaec043ac9bcbad59a0e5c9bf2d3c905afff6a9e6cd1f4a88cd6e24e2d95673aaa3e2351b11bd1826f78a8f2ebf3938dab4d6a7d650e5c1e04e68ab116639c3dc8a13e1a193d81c3243e7242aee1cd2e578b2d5265f3379ed88d4c1cec371624554dbac7f9636611d69d55ce06105506ed04c6485836d8e8a0bafed79840f168ef7cd8629af25d24f6cbf7fafbcd35d8489fb1e27a84935ff2231e4d9a5b9f414ddcae8a65964a038ccf19b329766656c641deab7a9c830f4f1366dda49ed4458a788e69e1a7e87b93caadd1d0de1c9455c77320ce19c969a7f7aca9c44b2c2e236969c530052e6582c2294190a887d27511838a17f50eb3a95bd0085c0e72c9806d3a555778ab583f723dc094325c5c23484d850353268b8fbd94c4ab8caa40440f2166b71a6647e6e4bad441679b9dc3ff49b86535161186e2401b3a2d8a9e8644ae94c2d0b4d8301be8b65b2afc2380048e662c88475ad4cf8a74267c29e0ec955bb87ab19cf64ffb0ad4e62f2a959378826dfde322d1a3fcf839db9bd4ccdd8a240e9c696c4c7a6e523f273a0170e09ff4a44a5cbd594abfe5478586edc34ae1851525841d2d032521efc21471605999d722ac27a22f6fb4683a103422a956dea3905d7d90068d15484285819e758f9ce9956e954df69e5f5169cc83466014cc6be60698f1c8aa5c690250660c0c188eb225a2c5b72920f87ff19191916f39f4753580f02669d007f8849d7ac5dd3b7a21d60492680b901c520f1fa4b7cfa478611800fa0562887582efead41551fa7a0749f64c97537b096d5262059a5fb062e55d4441ec8752cc5a9f1b49cd1604b48b80628147e62646d190c5af835ba93420d5181235893cdd81a3db79183155c011c13e9fc4b8b685fd24f496db8a4a9728afe398326a8ab63234a73e09c7beb1ddf280436a466599920ae2d6bd8b5aeed2aa29eea80366564cc7ec122febdddf62a9c5a6e1ddaf94287509aedaaa7c0664c59d2dbf3cae42a046ab3757d5aeadb3cad40ac44725a9343128455c21366609ae1d82a450c31fdea413eb9ce9c76b1441087ed61c63f77ad68076860a2752f4bbbe00ae63e06fd9e03225420eef7709b83bae5e0ebf994a4a42f58c68dc97c4c5232c4d0ecf93078e7d3f4ad903c8aea214772d8ede3cd326434cddbabc39a0e36870d5f1f3bf61b5b92df3c2415f0111e68d67455f41a91935259ed5dfb5a2c82edc5104b86c03c853fac1d4469a4d2271a445bfec680f686d827794933835958e22f6ef8dee9189ce709054ba116f0a89d33c5c434f18b9f2cb3e675cd7fa5a05280fdf4aee262f871ef1fa73855377b6795fa0010650083b93978b2ccdb04df41778e6daa4b62dc98b8aec928d413dd45b4c1631c6bd28935b1d205660d660e199f1bb0503f82202f9ce63337ab39bd24bbce508b6eb1ef22e3552cd4a4c00bec67e04a58ea185e362e89b10b88b03259cef753eb3762e8fcd07c57c4ca17a1b964fc2bd83cb77b4abdb07cda86fe672191372329cec436a9b3874ab8e0686d773db74536c11c5c09ba8a05ea9d22eba9eae7d86e0ea33ee9f1d46283dab2f4588ecae2028275c6cb74cae8942b98ff520e1e6a1321982bad96eac8d362372661b3bda65bac7825683fd4d8b19526f926a6a5e33051fd4910bd7d993da409f3eee84a1031498ca2b6720c83797019d62ed2a0132360993b1e2a5a28300a80a8233022056e273682e84e0dcb2561de79c94eb986733ae2f248ceba982002c336cb586e652444190f13b84c3b4082137c32cbaa1b08f30f54158f82f4d0e31658bd674bc62d336eae9efd98a6a6bb03afb9fc70a24f717486642057705ae79337db379693c9fb8ddec3945da4dc89514f0f24ad1eef50366e4479d31985fad9166dd0e6e0be61fc78ef3452745394de1a253930861f33ff20ad4a0654965ce0518e3d76342a05b3840253429be80ac7c8011d09f5aa6e36d629a0c4fd0f33a91cdec0f7291938d9c59eee6fa0a0f9ea19d6eb319869c6cc77395a99ed8283f1716613e399920e305f7d0923def98d0ecae2b81453b39b9d9c11a84f2c6511ab9fb672c8c5c3c66060dfc31c08cf08a73f98e80ad08b0876c8572c21b5e015a3f91f1c5a72de0383d6777e0c3e0ff78923240d669c53796f5100c170b882c66e9607cdfb6258e93b1f9ca292b0890dbbff793290e27b43f700a9975e87ddc4a13076bd9ac56084617188ed6725c6557661215cbc15a1e482c3dbf608ce23dea41f4652d133009b9799ec773cbf1e7af54086c820c9b8e9d00daddf2f9c84aa0a12f6ed80fe919344d418ee07d861d4875003ea25ac520c7c1281d0fa33903381cc67a316464a5ac1087787bb78cc2a5b637a3765490f9a8f2bd921bf6d3568da2e53b2dd0b3fcb1ee52360ac91b9d7fb9817dab4b4d7abed94fbfed11db56ca2bbe9829784fb2cab362d402e763247e8f2e088d00d8a6a5d2a0001e80e5f59e82cc604df6a14ce2512459526cd44e5dc1db3e40f6205022e0566b76bdb5ac25fb0c630b8229d7f7fd878101aad3f7211abb34d03f908474d8d4cfaab55f1802c3b5c2319729677b80801cd90ed02c00973115408770d1fbabae20cd1f4c2c7083287358b93b8c8b5a3149f0d7742adb86dd21a43fd8a0b73803b1ba495152854dba94f532042ca77da1478f9345a78a946d2dd2792178271772c2469f53d0c3fbd264fb97e4b6b09a7d459c61eb85ebd56274533856acab78200ce45ec95db530be9b9403506959f1168500486c59ab0d7c4750468de35d24c6774c1dc35bc5fe1752d8d2471b5cb2032262892abb6cb5a7b8b3d4c9669f1c2f9b3ad3b09e7a1718f3b29934dd36015bd5a0997a2163908c556449817329b37a1da078c7f1140709ef6b8b2a17c49ae7455948545add8195a61aa855e6e7a80ffc185402fa05bfce611dfecb1aea990924b4932617087f0dafbdcef9a852e1046baed6b238a325258861bc494403be4d4de3d06baa84c82996151e6c8a557d8602c13656d770c84ce300946d946604b004737f856669f9b6c35c14261b750488fe9af04d34bd1fed3c8dbe8d29e826ff4cddbab1e9006704d7101cb159cb3566dd63d04c762c37dd61f4c6a08e23ce033452a3f20d3187814bfb199a779649ad7c4290831f298afbc909c3fd799460041ab7bc79629af3855bb21318966793dc1d5c9d1836d586860231d215e072dca3ff18871569c5c8e3d59d0c21905d4be65097c75a379c716dc4992829a8cf8033822e4a3cfd596a7ccccfb4ede33efac11ff9e00f7cc0c73ef2b18ffec0077ff4c73ee4831ff6d18fffc0c77fe4633ef6818ffa707dc4e3c3e5eb18f00d35d971f380d895ba1c9c313d5c9744bf3df777894e4c5787eff92756096161bed55961c3fcf17a42ca470fdef6b6b30916f56444c81dba9423f1a3cc4265fb7f0ce7712b8f71b7c40cc057a2f728183d983ec0286470cdd048e690d62ac4dadd38db326b0843dc59c1b1b2e0d2b4544c9d5e19227f552a2d6c21323f0a0eeb69875841473183226d5bbde365dca706b1714f46d71b2e928f008ff28115f7024bb5b29c9f5e2ab7c6a0d79e65fa896f104fe7973514da39d9a7999806f1babebc21d06ee7a2cd441b85d8f90b0d874e0b1f4d135b43c94a61162b1ce46b0d41734feea9278e8d2a5944536bd4e3ab0641bf81c8d0dc188dd8986a14fa1bff874e03e0640193ac50360e9de3442945c994a4241911c87810c92220001930a67f2acaf529134db4c4ed937f26594670c9d1dc6a4fdb4a7473205daaefb49937b4b2acea07cab83137e582db832c3593043e849cc49fba8361d978cbeabdba434ccf19dad04d845854051464055a576d4c94b1aca28d0a6d59340597a10fc1442516b282d20bf2a95c08a3d2a7ae29b384ccb27855dd96e85f8c3e0426263625e0770c59d2ee6e74cb2d2b15d7c95a7ead4a8196151e27187d284c54ec5481ec842cafe122beb7ab2b74fc797ff98cafd02b6cb5b6c3509eea59cfc5108bcfaa9dd8955350e3f0c7ca041af237ddd5454886eee6fe1b02684b2f58d5b8b14cae35b4da68458bfc8f94d5bc8b6a362d1c49b2083dea001b549aedee70e899cc4067377dc5a5271ce9236328687ff753ac7e7eb62d080a2079b1857ae1a6289639b4277c5b2d7bf8e9efa2391a587433694bdcc8c4fcaa47387648d53e90c80d3a5af249d2787b912c3cb1e37d25b59fce8c33f94c647de51314c09f157d4d0a2d2d6edf1561e9e809d51423430aff12ad6d2d17e3f7b13c10c368d6303dd24dde0c0b83c091a7da5b1134a30ea0f0a0f03f6b07e06395e534603936fae6c1bc849e509eecef53900d3b0d6c4c45b6f6ce0424b1d42bcf26cb13f56a15c7dbe1a843f884ac1c1e8b7d0ba3fdec10c6e5c9f25aa0861c146f456c633c7399246b4e82c41d55ad1e8936673481ccb07d79e685164c718da5bd516ade76434c91499a47f435d0eb4732313c500e8426e7b922673c2d48f84c99347a6422ba25c1feaa03d36f10b5686cb36a5196c33449cf3b06cb1a032406661696675431842e0a4dd45651ce4ae3b9ce89028025d389e2fefac6040a4503ef8b5876379afd77838d6ae96defc50768b3c4099d4a0524ac8ef57755fa32cabdc9c0649cdcf16ad15f9e925237998759bc6cb6a086509c96a06b08817e5c07a47e78a2493ef081f283e4c8bee83391847e7d05c05a19eec1f1ec8dcc4b01ee94209c0ed988e728954b916277055964c6602f7b5764862fc73c99198ba08ce09186be27f732f6451e5302dd5eaf86cbbb4ea59962798d0f0944b8fcb249931a361a5c5eef695dbe7c24332a3c2878d27f46d371749f5bf552a05d010b877362e891c80b9898957571e2981c5428c6b13f4cdf1adb15ca3c4c8040caa9b6f99947f91728b8c81d93919994a336c107149643136d792f319abb57d91708c7365365a38123975d1d6a8c22805c2e623cb5123e107cc53209e005a8852f936083144a056d7a7536b146df36341545d3ba362ef29af39c0c0584e9614e25968209a5092d795ea7fde87f0de7eade840fdca471ac18afab5939bc8f3d8ab2b41ecd177d533a7c94afbefaaa870f905e17e2a17b536ef12f0af855613d9251160c95f51eeab9d756281b453ea6a3e4ace12912064bee287e600eca10c74ec020fa0f4ecbb0bb1040f29aaca779e5c3bfdb186335959f022eab4b781001e01af9cd57dd8a20511e29ec3564b303ce5dba6683722e7ad8017246123aca50b60ce3d1563b59a198c53da39bcd4e0e3c165673275bea5603b26884182c7ae11557a3a53be3dac22281dd49eb40a92e46ae48beaf7e0508df5a4df306bd4ec4b86b2dc98fad5fb0db443a91056923daa6f18a7b4f2e5b6915983fc1508c0885ab6f94d2f17f0248a9af342528af5507bfe4175ea216823b0a9701fa2fd48b38cae6d65bb9e0b538af370d248be93bb28b7edb6848396086caa49b3f6132fd8236edbac9b634b609290af1e641c28d9c5fd1e9f73207b16c6a426661dad11d2b8a5cd36e0a07cd89612d72797f40b32677ec57767d5f0e4195d484611bbecf869fefd38d1e43dde45407b314dd6ba8437ba1480370935a546f38c399b00034ea6992f6d7a926b278b6c1b7af17ee9f0fdb0d930d44077b8c171dd7d0e231a62e6a21a673bcf42ec9e4815910b9140e24f164707fbfe46f4cf9e26b6e3c46475986d9edccaa43fc26aa5b21976080838be37347dae3cfb648419d1887247fce13a1c05a65a71fc22cf2394d06119fd25ec58f490d79842651511c5e8ecbca02e6c296cff7dca9edd9481a5c4e7237b50533a09bc5e2f449e8e2f1a9c29a6f47269f6b58b1a038f4f8f2d69d8e239a60bdbfd1a1a01f5b01c8bd7c4bd3098b98e11501d67335887334e220e65ccccd4f84e50c020d0066d98fc5bebc40906c216d521fe5a27ef4546e328ccc38c742a5ed2346ac64b0a63dbca9bdf2aa864fbf6d32455eb2d9da8999c4215346ad5e6844763a7b2d5fc2bb478c933131aa077093fae020e78a80657780303cc1673bf1bc4036c138b41ab1f6571e7ab72ee41078a17ddc0086ea2d3ad7fe2c1deba06a23283c062b80f519f753eec90f750ea4d424113121cda68a11802df402ac89b263a55f913b72ba58285416b48d9a7b48e9dd6d03ab7e46513cf50674bc8603dab6cc15b34723bed83bbc2f1055ea1596be80263a583ac7f4c02ff8dd5d84da784c6227c43acdf18675222e269d4a2176bc27e37be59c2d6d178ac42aaf4a22edea5205c7252efeb2f9f0733e276db93f33cc775e7aa90bcb513f26bf6b2890a2fb24a4f498c47e119db8789ce901af97894b39321dce64832ae386098b5cc9ad7eab504d8b928ea828cceb04cdd3e1337d2f5d34247b15bf8c886d23ba9f8135db6b5e186dbfac24c359be1f928a7c08117f5dc2b1da615cd7c8cc9154c460d64ef367881621a9a822e0be0d00e70a4f12f030e4e305ea1bb1a58884eda54645c43a3296a848a02f2b66b59b63d999a18842ea439d37acfbee527e98c5b7f00f2ae268d0d806aff9ccf1eebc5cc393a46aa2e5476a021579fba5789aada47306ed35f0cb37c8f423518150b4bcc0b8e9ca3e6135d6d7cfbefd7e55b16698ce55cf0b65b7d59284bcbcda381d444949b451c0e89a7eac46cff062538749d67e21025c19fa5fa00403aac67cc03b97805917c38c7e42ec11b605638c3276e2c9100fe90aa88aa3795ed0697ad4abd96220a99111884bdddaed8f3a7ebc49d0c7aeab41987b5c5149033aae6202c2b1468fd17c72206167490d3d84e43b4004496f9342a624ac01a0cba5c19ac576770493bc9481abc1a23d9944131f1ac15780802fae309431f4dcc8c954c7dd6b6bd6ac2984910ae864a61958892ccb1ea8ec0be5f9a6f761c1f62ecba64571db4a6d1090e83f7774e4b858d0d519705895063cea06bbcd17c2976b173a057f29bd2e86d565ca4fecccb1db4216dc5d2b3cba6c1beb312d5e51da78d1ac1e6b054a9f67999a0f451adc18e251ffa9347c7133ddcaf9c0558c4591143bf37e351aa295f9063547afc3e00fcbe6e84ddffdea66008bc3c3ddb96debda3a3440b45f0047dcf20759ce446b4a89afe5ada705da994698fba96ae11852ca81b5c19682192e9c3786876765f274bbfe6054a2bb75a9417529d4a445368364d83f93d6c01db1961a2abe103bb9c06269866ecd0cb7058d57a2c605a4feb6dad466d6d1af48c2da5f97ecd2b81ba6692b37f9737412cffb06bffc1ea04759a96129a19a99faa1c9e5e62888216589c7595248640c7f4723b30311d636d85810a522ce4142ed4bf0b89d0c666fef0177327d6d2e3ea871651264d92bbea88f9bc59a7304bd313f8cf061966f608c7f455ce51167c5c3c1fde5a8f1f175d02004b6dfacc90206f293aee27bdf3410417d92907ac81121b4cd4929210e47382c1b6d3d631e6af8e2008177969f58e108d8af05904861ed7f2bca18ad3e5eec5258823e242a26cae823b96dd993364d0bbff78a8616174c85dcd0f783b59c0a14c5a4de0a8b38c29dd6811b72361417becc4668c66a0b1363b2ef3076ef223d8210fc9300b220909bea832605569bdaf9bf482e3da4bf499afe070a3ddbeb11a06520e9f653d969cec69aee8ec2a91301a822c93550b196da13b64f96e815c0cea981599caa598acf5b621e098b3bc783a7dc5450870451b2f47abaaaba411432564d33fcfe331b14ff021991f2759a400c9dc29a7d16ed0f155765dd42023356b9b43426190bc85d27063c8e5f51a6c4651bf597a17c11fc47ff6f1ed6ebe2dd6b776b6c31c6f65e30e7bf2d8893cc805a2075fff8f7ddf59f3fba762b1cc8015c9b8fd229e7ab8b05b0e541382b96a7282668e275b34dfeb5ddb36ab1189ea6ec81eeecc6fcc037ce66701298ca0e9810a4a81c64321d0fb327bd29bd224d9e3fac36b4abe583cd34de01faad21a3f4634409e4954dbcc50168019325a6ede288d47c0b0ba14d2a927420a9625b209592bf7e1159aa54a1516fc90408819c00e76d7b57d5d54110275d01ec433c11fb1e925ce8958eecddf068c992ff50e7e8c94cfec00e52886be8f84f7f9337bb17cf61db12d47ce3935f22854e1c02c434bc91bb9d0a12e4c36807ef3dcc67f75219ee0c5eb805bf5ad7816a21a36db5be924b911121de42b20f5c3da418825ef517c6030f07d61bd0fe94402d31cecda87b00de9c2347b626669cd023ff526ce5140eecc72201f995a0b0b7bc3b5cc38e0c97d198e9b0d18acf52a0f549f778347443a74bdd4431116dd0ec60be4f9b7b53c66a357a9e98b9b650b39d40908e937952534f6e88d73f752d96fe708e9a28fa0f5eb3aadd8e81bfefb9625dba6079ae99ad6bc2717ebd4aad2554aeed453e634c9d504eaa2d9673f46f946f7f4477b7bc28b1430488a162bc13578e1b3eeea1084fe15eef0497a689bd00b9d7b0243f7d0b016e80d09053336bb49cb12d2a377cbf734983217dc7112e557221b6dd3f6c11d160a4c929e1a4fdedf0a63bb69e05115ca386d09eb94dc74d1ea8082fa9c42788087deee4c1d208a089529e40c289943c0dffa43af8623dd58091466f8a6165d87a15d7ff8c3c1433c34bb6f2c89511243216cba3032fa20dad90f052d1e9d6d202ebf8b3fd490a7e96c123f1369db2cc0067dcc7771994bdce647ef9d06a94991aac7b1e506554e67bbd6b0b260aae033efbbd2b2ea0638ade2381321e827958c98996f408a25fcda038d2527b124d02159cb0b098e1abb0b66b07d28390d88c36773fa2ce3d3a8b9068b4f9c48fe6b1f0781d495bc672790d18526eeb01351c57e4c4d0a7e427a5ae80a4a9a8529378a8102e64a5824730d75f97c6b1e5f7ad10e2acaacdd9a3ac54348404d5ca68b636fdfcfba3151a8e1c07da45d8c6b953a7848b10b1661006e8fcc6c526aa9eeac0b7a131c07952c2a5c3506b7ff520e025b758515b7b726a896782674c2e534b161f606e47e7927d7f6a5fe6d95bcbb3138d1e56aac700fb94130c4c66aad55f1650cb89845d1123752e479a652d28b3f9733b60d2c942210ec3c4d8584b0fa101266fb66b93cbb5d4863ae6e06021b20f4d99597b47936fac00f27b3c578ba79b1284fe652def99a07062dfdb0aa55c357700d62020b1bee85a3824e4f5a77630ffd01b8b7c42bbb4f740d85af61cb9941d0b271c49f9d5952a09b616880715d9671f184eac91ae541ef0254c4a451af78266a4dcd0c951dbc1a86835b2e2826b9c5125677f1a889b7d60fc2f9764a35f19623757b8416f753112fc67180bdc08419fa057c0fdd83bda7faef2baf023083b20cafa0eb24a33e11fa82ad530e8dc3015eebc28ae0004150980df34e6cd0cb4851580d278fc557d7442d7e2ed14f3c6b8c3e1d2e59e737f42a2cb1f3052d8e2216bb79743f20283e3e608b7f85dbe0ee3e394c21d8d27125017d12782c0850c7592da13bc05dc88192ca628d00cd38301ad47106dea900e22173cf5fe56bee82009079449cf1f2cad244c7461a9e4a187242c3cd005ce5c451912561058a96c3a7c81fd636b4ef18e59b3836463d687fc8353ded4b83f497ba8eede95ab1a5edb246e29a94d64875cba91b4bbc935e19d53f83cceb46c528585c502000000615132c0fd5f57dda9f3891b80478148c8de29261498104711a5e7a56e3c1899cf5bbd785f0d9f0b9f0b5f0ba94eb56782e7f27dde8caa95527d2a7cdfe7b978aa9a07138327d3f2792d9e0da01ddf0d2e32309f475bb15e3e0f076fe579a9cf537944bc163ea18f854fe67bf95abc94f7799f17f35af864be1795976a49791e9097f25e1e8cc7f23cef87e7c217937af1562aeff3bc98e7b9a0f0e5f0549fd7a2f2843e192ff5b9e0a552dfa7fa549ed0f7792b7c311e8cb7527d9ee7c5bc16be989794a75aa93ccf03724f478f1590948f162fe5c1782a1d1e0c4c4c66c90e173c1854def7b97c2fefb54ec89121e2799ff7799e77d32f9d6b256b786828a9ed49cc38838c2453cc800b24d38c1c2633cae8259a16340e5394e071982468a529c0904289c6262599e1040d23342e08c1063358c8119a42078ed0b491059019333100d1c4783f66784af809d740c08f2fa1c110092edc84563e58190bb030cfe9e1a30aec072f84ce7ac153b8d1557034e9b08589769510dda9eef6c8a1ee5e6a25dd45bafbd5ad1916cc3cc7994b941819421005f3b25ab9c4c4b8b4c8a45a807949b5a44e6035018154b37ab9c4ac82542c133c15eb4507564ecda45a2d59847822cac5c6f702a382cdb410c445544c12d6a882d900e2ebd9d18244e5b900d140541023452e213e558cca884d11a2ca88e2b5c45c2fd400c4a75a21759382281f6644bda014e50413888648d9004411512ac02861e578226ac809b9158e214214900c63433880d60b4c6aa6c54965441240ac54aed40d0f1038a002a6870aa2acd430808d4fa6a506d78b90aac82fb912048e9657cc9098195c98a87abc08053181296c08a2044be04499118d1cc1812899b2068510333b2678128852e107889817219798958d14d0910da9166286bc007134c3b422b2c368480c0c1116d30864025129a8603f312e311c332e3132463500584054cc8a880b3424a25a52ad16cf05079798961f2e3d6434c894303c56445c625e549829828941850493420e16665801851eab17d2d20c40c4acc0179e191ea023a51796ea65859658ea0786a5e2e135bcc0bcc4a8705a8aa8826af05a76a4685a50c88159892921a31f3a563128c00001210449a667f552c5a08ac18501513d6ca88a5a7cb4b80013838a051374522d041105e278a95aea46956a09400d0008606b03b82003cb950630a08a237ee8010a3bd55e0c01c064871c92206152327203915810cf6b0619607095073ab0c60f7880031a8664a8594185972a2218e38a05e0604443ac851358322e1c0083025b58b9a20a054c51450a242f1e3820144fac918434683bfcc0071898d9012c416b433f625eac30310508860559b0b01213fa4921874cccea85851d128800931f93906e381a628400011851c48d327c2cd0002e18f0839224403f3a72a84a408610920c05f9817971e982080a38808a02100089002400010858220969e8070f968784ef089f1a2a34dc07df192a1c7c66b494e1b5e05bc1a7029814b050f095e023c10746aa019f93ca8917c3aa8516166654f852f84ef072b870b4dcf85c5e4b65e3936989f96056abefe5a5e5537929cf73e91913523b521788522911a532e2d2c3bd972100d15a40544b0beb65861600a19a42479502ab8a2c5c8e88521981412186051d4244c1e8a0da21e5824c7661ad86ac825c62523f74c4b484206af545540e2640c000a5a408024b06512d6b44b5b0565041142bd75c200a46878defe5470b4e4b13524e9051c10041a892883281c6049ad48d0b67a5c3b546102d3e56412f405226a480acaa884a1dd1c1718971d1222a25e3b2820a26a393f2542c152c66488b8f171d5c5670897171c2cac1ca01a3030685171d524a08c26585d495205ac28892c1890ae733195a50c55826b8b8545eea262544a5348382cbf7a2e465c70b52cb09363c1799548b8a954aa5bed44b6a9582896141957a41f272c304a518d78bcb8b977a51f5a87054de4a85d40e20605e68c922ca861640b85c543b564541a8641044cdcc7b8d25e08005594a400608c2286d4c4c4c3122a2210890ad3ff0010e8f9609ab97253b2421ad31021498e0852572a818a0862764b002127c00031268c01538e00c0528f312f80e010868bc200528e800047ef001004c76c82109c986212fb890020a6054e0870670e1430fb31658b0f5051b3288c1135cd41a4b280211982c490105d70a3ee0810c60400211e8620901183103800e4a92908e4830020f88c0025488b8a0052418c1073a80810b2ca00a248610020868ac200518b800180e8812f5e391916b060d1bd4400620e8400528e005164c28f1e30c004c96283932fa11b371cd9060042090020a26a2fc08801b8e8618fd88d99851b50d6a40821188e1810a50c08b2eb0188000a234b9e128c88f18508f8ecd0d97aad7b0410d622006083cd0810a50a00b2c06c084009488328359132634e080494082912226d880010b53924022072539542881c40e6a0b9835524bf894d08284ef08ab2c540cf8b0f8aef0763e9d548e07cadca47ca41c85173e16bc1d2f2ba454f074a852f05080c171e346aaa53261c6466b6605960a322cc4b8605e562e2f9f8b4b4b4bcaebee153aa6bb65e8d6ead5ddf8824fd266aef4e6707eb422ada54bb75e8ed0ddab6ebd04a1bb67e8d6cb18368e3fef682ff71f29aed431f54cfdc7eece3b6fa24fea2f4fb45e0ad0dd36baf522a53b745ba57fd3b98d0701e2af2040bc52dbd35e72e86e996ebd1ce90ebd661d53cf3b5a1310049774b7abdb6b75370cdd72c9a14a7dede10be29192f309e7661fdd6a29410b189566fca3dfc43c719e6d75fc76749bd78bb7b4b8d5828016293dd6cfd371ab5b2db7b17e4db75a7e5a62f05bb6d527bd66ddafaddd99b1bfadcedb4b5469e00bde9b887b1cce8b94c4bd1abb5de85e35517dd19e53b7e7a4dba39e0d84747cc8ef2dc51e4242414240423f423e423d423c423b423a4239424241414140413f413e413d413c413b413a4139414240414040403f403e403d403c403b403a403940423f413f403f3f3f3e3f3d3f3c3f3b3f3a3f393f423e413e403e3f3e3e3e3d3e3c3e3b3e3a3e393e423d413d403d3f3d3e3d3d3d3c3d3b3d3a3d393d423c413c403c3f3c3e3c3d3c3c3c3b3c3a3c393c423b413b403b3f3b3e3b3d3b3c3b3b3b3a3b393b423a413a403a3f3a3e3a3d3a3c3a3b3a3a3a393a4239413940393f393e393d393c393b393a393939dddfdd3bba958a6a7c415c599b2c8981bd625e3d780f1e0077580c2c2600de9dd3dd34dd8d9382e10be2fb23494b1ace5f2bbabb777bb76ecfd6edd5ba5bd55e0883114177b3baf565a001ddad42b7be02782c0c3d16030b438fe5da93ee31a14dbed9e875cfb5275fa1c7c627e9ace11924c897eb6eefd6a7d4ed98e692e68ee9dfb2c7f0584b4bf39af55c5a87fa31d5ad2f081087f1e0e179faf84e22ad33d7ed7deb6bb9c14354772c9747aebdd74867efb544ddfd75cb2ba31b045f722774cbabd2999239ec619ee18d6e79b99b9cb114bae5f574778e6e79de41eee34abb7ba6bbc59506bee0687138e23fddf0a10c0f74370addea2bf54907e24ff3912ced0dbb8d63fa72a81f2bf57fb2b8bfb3dcd4e1ee6ee9fe765a1d055f50fca7996edeee66a1fb2bea6e1dddea258d2f9871351cf1621cd192e4c4d9dd796994bcf6def73a7dfc7acbfcd7aba579e6fab8277338ea99ce9bdd5669ce13776dcd67b73776b7d75ed8ed89dd1eaddb9badeaf6c2182bd290692c5151b24ec55869424666950282b2059428529ca8a5c9c55b1c0a141f3e4fb90f9eabdc07185f794321c2895a6aa0f8005323c5893c1f5c7c5523c58952fe52e3834b4d4b4dcadb7d70f1ea47234515450a112997497d354e7e907d5e4b4dcf18fd90f26e70d22dde9752bd40bdbc7ce1e2e2926a696969493d494191c9542d354e3e77a971e2048aacddc5c90f2e349eb7a721d33f7c344e54322da9d4f77932ef0914d9e7fd83ec494af6fda0f2bc0ac8ac883e2254eef9471345ca164f68903911a1aad9e2090db2943f692cb294a764d5de182d95b700699149b162683c22560f3e7cee5213f5b92723e32b99171895c37c5f1495cbb847d3c3cabd6fc552fd104543040d51a47844292782062295ca59de242323d3ac181a16cb61625c8a47041345c6637068a255141967b947d3038c7b9ef710d3a26971d68e17a741e694f22b769fbbd444b9cc8ac58a12e32e3451584e8413c1b8c7aa894a45e9c18794c3d444a5a24871222f35b3432b2a8a45d3830f298fa9894af9e7a926a54f0a8d148f68e531345188a08108c6a5784431eed1ecc041e52cdf21e532ee421345c90f4431ee790f304ed3438c7b5e43aa0586664543c4164f6890bdb847c42241eb49af217ba971ba62f7f9153b95ab7c070e2affbc6946694649e53da394721f5a542e1090c92a598b172d2d4e9441a50628e04001a29c40c30b99e72bcf570788224bb99786ccebd8934ae69e57336394bae9948c6c3573a4056605032303ab46a6c5f26862bc85357364e55e4deb7b792d2acf2a7771d5cc1199aac609aba562b15a668eb4d89839e2b92c06c68419a315952a64bdaa71f2438d4af5e2a95a686290a9686ecc24799ef294c37830067805e5b04412b2cf99bc60405a5457ccb04cc8b56c788a26ab642d57f78e95ab68725eaa9ad78e17ef2b605c2655b343c69be539df8f9792f15839fef2687260df2b47f5ca79c16c784bcb5bde7227af97ec5bdd7097dfb841b363e563b45c35574871221877f26ae96089d172992b8b550c0d8bc997c32b0b09b810a0e544872ce8f396c6d2594c9075185640c00a2bbc1f5e5a584fb4829c07b2cf615b78feb574a8a0358296154da4d15fca0999eed17a39d1a1238bec73165a952306cf3b06189441e4b9b792a90205557c4290e91ead20596779bdb0c83e87050119a387082772f116e76979eed24213f4f97c0eb3809693958af5ad3e19b49c04c9668cbabb868518747cafcf5fa0a38a26605ea0430169b444e00c27ad9600aac83ecfd160cb4ba5b2ca68a5aae9aea1e87be9a0f552ad6a20d25a39916e2722d322cb2ad9aae50a179a96157d2f553beb6b550d911aba7f5edcf39ca4000323f34ee81f31b8faa7c53db7d13f5e31fdd33f60a9fe69f762f07ee4c878cc0c90a11c4f06051d021bfad5a21aead8102038fa05fdf26a3e7f81062fbce0c20c5c70a105335a68818532586061870c76ec5821062baca0020c545041c70b74e848c10529a480420b5040e104169c70428e2c3972e058010e1c375470e3862b052e570b05ad96092730c1041b26b06163a60433332c32582c1912c8c8c48c20260646043030ab3156ab9710bcbcb888e1e2d20282961659dfa4542ad9e736742c951ad2b1cfc8f31a8a3af6b9786ac648e6736951a95c582e450a40c1159ee72a276fa151d5b4dc65e62887095a5e8be711e923af469563a65bad1c0af0e22507140288924aadbc69bc28a8efe5b294b77bab55abf5a911a544abd56a7c0e63839693951a6a28a00935a84823860732dda3f5e21d83131c64c83ed7428b2adfebf3aa4849e91b1a95952b53b49ca8ac1c6184ea8af7f2a2b2a2b2f242f385abac7caf2b2a2ddcc9ab515df1420bd997f2940e5a4e5456562ccf8a5725e5de159515cfc90fb22bdd292b5a783299148d272503ad1697d961c3a523a6ca0ac65daad888c2861456d40a354e5e2ae0b061c58a0d2d4816cccaf35652b49cc4a040e642f385ecc3a27f7c40c8be98972bb2cf61b4907dee55f9a8b46cd88881e9150e2aac284e5e4e5c478b9584f70734531305ab8a2c5ac83e1763083186a822c311c68b150f0b0fa844f1a2850bcb86118d630389161c5270248123ca8d24c8dc50438a0d23fa870a8b46a263aa2cfaa6a645a56f3ebf71c68d33a4dc38438a95552b46c72ad50a2365f3f94aa6a503268c30c27849b1a4b0a6b0a26059b151e324c7cbcbcbe749e958af7628b1bc654b3f10b9d8884266c38566478a45c362cdd440d991f2978b4399f1962f359143d1511374e3f31b355056ad20273a527027412d444d74a3539e038b66478aa5c4aa8142c425cb8c7b44399c95825613cb5d9c55b345bd6247929a1d4588b65039ab668b177fa9a1e28c2896bb7813ed48e5e83070682256cd0e971a0fc715d9f7c595944dcb73b84be6c96e780aee2426aa4a0a8795140e2a29a014fc0477f12828d0ec48dda0b971c3537e23851a2828d4a8ca807242cd27c3ba61c359353b527ec37f2082e2927216cb6fd44061d5a8a0b82c3511cb6d6859eb0061c46049d97c3ee32a77a2b272c62ad57a81394316a5e5847586ec7356948d243e5fd538d1f1c28acae1a99a5613b2af268a965721fb6a5e322d5459bc58ad56ac2aac2a585134c1a222fb5853be974b940c86c5d36a87993182f942f63918b2cf8b66e1d022b354cd7ac161e57b7d4f2d9911fd23d5314f9545df7caec262c6064fa662753153d39a92b2a96951b91125c34125057463f5050e2a3538a87c8183ca1738a8d890c28afaa25336a2907dada8a8282088fae5e5e5e5e5e5e5e5a55d68a0fc40c472d68cd10b6bc6a87760b98b7b7f3f2b98d5aa05141395b2896997f507b4225ad5c8cc18354bd6334d2eceaa89f90247143b70f08854569a48750547151c54be570c0e2a37a4a46c3e5fad5a2d1d3adc595152643b92b8b8b88c0b4d0f41b8f88c4399a9d99184e5332c6f22282e3e137305872672a989b192b261d1ecb8e5523667b0a27050c141851585838aeccb92254b962c59649fc3b8b2b8acac522d191d312e2b2e2bb2cf615c565a6aac522d1dadc64be6c446949615d515d5172a0ea8c8e8d897c3a7a4807e20fadc85e607221b54aaf87eae74cccb217362434ad738f198961a2731644c917dbe028b8cd617254bd5c444d99042a5e54465e5858a152d54579cbc505939d16a181b566c484901ed802282e21179512a2bb22f52403658513654563e56946aa5929202720142db7cee62841720649fa754525e8c5049c10203039595306060a0b24285151c64c81a06cf874f25530317a9335ed0ca1143aa06b2af0a1349603996ef870c0e6491b5b838cd8785e60be3f3f9bc695a96d241cbc9878525d3fe6191a171a292c5d43821593450323131313ec83a55c3e7a5dc552d334629cf5534301e8c276b964723eb9796a6e916554bcd17c617c687e5c3a2aaf93830d3375ecd17c687e5c3c2ea9bcf3f2c9d4af9f7c5f74aa53a93c88b7596181f6172e237824952f64e33335d9b27495a21e4ccb6e9477aef3f25e570620eb94ccae12e919cbd4a4e77e2eee7a92487bb44c82424ced9a68ca711dd23bd78ed901fad9024b64ac7fa4ab55f7a32476f936d1a710ec9e3e85572122d4924d6d2d62ac34f8a15497ea691166521f86996e1dd1719c9896dce5ea5b19676095f10a7d55445ab29aa1bc47ffd7356c45ea95f9bc57ff2f1a7d7acf84fb3f1674ef37531f1938cef345f49b7c744df6be49494c952c86c1c27183a007c2774f041fa22d565d8eece4a69439c242778cbb91fcb5bced6deff9b9d9cf8fed3bcd9f1f4c74dec4f033188ef11239f774450f308786d6df4bf35ed6cb2b5f7e5d3afa5e0e83fdaea45473e7313e7f9c8c14aad8fdd5e92eefee91b00b825e550f24077b676c9ddedeee6fff16fe2fca55bce7dd14dbcf399a0e6915ad2fdaa4bca1669aca51d922dd2f84ef6e997c6e7a122c1632d2d917d5a829a47de76a7116b9b70ae7fa712d43c22421909819a47badb0558140fd648f8e1c363b59080f48f0e987393adbd374f6f160284eedea15b47b0e426aebb02501480099a675b5fe7163bec9f2c6dbaffedef2bf992d0e9fea4808f2d293a542ef17f99ebbcd346c76a45cf599b4b7bcb54094c0c484e91e69814bd5a3cff7a9e436062c04c7178d2a6fffd9bce6d953add89bb89f5697e6dadd69c9c54fc1c76dd8c0751772fc143f280bc22f0747bae20dd7d46370ddd9d825611a8b7d9a8c958011760773bd18e8040beff54ad28d4dd4edd3a2201a6b7ecbb1aa679e25d9d4f7f736eaf388f38083571313810b7819ab818709ebc48faa2e3f893d98fb6d29b9be0d1dd5f7849f43005ccf847d2d6ac87e227096dae340f75825c86999368c9fbb55a49f3e978fa782739e9fd3c713efe63773c1d67512708676fcdf1fd71feede97d263f42cb862820d65992ac74de222a3eba9b0a29fa081cfc369bf1246162aab53897b3779c4f7a9ea26c27c938fe0d4f924937ef78cb54c9f879d29b67ee97462463fefbb58cad918ccba2f17576ac4615cf2360b59e3185fa9a859ab8dcbf136e3acedfe95a5dfeeabaaf39600eb8f3f4d8c7c74d2407ff6fcd5629ecc7c7f84571fad39870b58e49df559983f8da8cb1638aa788cb985153129283350b961853c799d6d2f12ed391964fa8914cb1cd7d113969aeff4f9494e5fe8b3c598e7f139992d82a1de717e1a55d9d47ac6d223203fcdac4b5744c1d5f5b3dffce612fd6bf5ffbeba2bf588ef6e64a894270fcf1bffad37c377119974ec6e9a2ccc19d58ffde52f4bf16771f972ef398add27aa712ec245a23ee98295bbbb494eb3f19d95a85cab617abadb358ac7e86fa1c256bb37faa383bd67997684f00dd9e128da19a5eac160953fcf56d7012ff2684084967fea2dd4dbcf33ebdcd7eb448b3fcf89f283967b97f27929cb3fbb57fba8fffd672f6e2b5358c836f70726a3ea2e89383a3f3a3336b3a403d3c3db59d1d1f219f9b98ad553ac317a45112e3a802a0e241955bf54447b72aa7b2b54a875605e9ee1bfa8610523e11e0f710297c25f882de1a49ba3f1abc99ea08baaf2d35f45099c060418682b80dd4485fb9f646624b3729d7de88bb7b651200871ae9ec6de3cf9cc479b3c7808b2d5a1060830cd59eac4180b8fbf0fae46c36923695802354475cc4c878f42041dce6559f04c58b87e4f890ca0338baf583ec1f6df55dcee1bebb7b74eb4750b7c77eb4a23f499b3771feada58f1f236715e2071dbfa9918f3d4810cf371bfd1bf8b6f1bf1beb015ff0475b71fe6fa6e1e027492bead0742444a62413e2401c6aa43a2b2489f84930cdc930cdcda799add26b6fb99c640e47679d899fc3630fb7a1a1a01288f849465b674f6fae597b7333dc47dd35b48e58ddb31896828aadd2fbb93e124478f8ef48d29be8ed6e0869c1f84ffc47ee3376122df9f86d75de44afd5ac8f757a2e0924ead16e9c7f49d9e79282ba3d2360debdd3f83bb2d6b286e9adc9c1f11fe76a45c7993a6cfc278b8381818189a9d3ffdada13f9ee9d7c972f1d7fbc56fceb98fa97e44c32fe6e92f79f92bc4eb7d95d36c4900d747b47c4e0c3c44c07e401776e6e7699de996b19667e4220a2baa174007c9ae8ee9971a53771e26e7264396b5fd4dd317477954f85ee9e752b0039ddfdf3d2f249a54efe2d5f9be7f8d546712dab101b9d25693e1db481ff72fc5ff3c759ecbb99739b7d97294969b31efd2d7359ab9424a90efb38697ecb97d27c7a9d8ee74d87b3199722e8757aa53e3e6c3e6d9220fea779db4d9ce31f38c7d49b7e7c76acaee99d2649347e9e630ec9fd5b4e22e7335da571de8fc562311f1f1f1f1f1f9f9e9e9e9e9e9e9e9e9e1e1e1e1e1e1e1e1e1e1e9e9d9d9d9d9d9d9d9d9d1d1d1d1d1d1d1d1d1d1d9d9c9d9c9d9c9d9c9d9c9d9c9d9c9d9c9d9c9d9c1d212121212121212121a1a0a0a0a0a0a0a0a0a020202020202020202020a09f9f9f9f9f9f9f9f9f1f1f1f1f1f1f1f1f1f1f9f9e9e9e9e9e9e9e9e9e1e1e1e1e1e1e1e1e1e1e9e9d9d9d9d9d9d9d9d9d1d1d1d1d1d1d1d1d9d9c9c9c9c9c9c9c9c9c1c1d212121212121212121a1a0a0a0a0a0a0a0a0a020202020202020202020a09f9f9f9f9f9f9f9f9f1f1f1f1f1f1f1f1f1f1f9f9e9e9e9e9e9e9e9e9e1e1e1e1e1e1e1e1e1e1e9e9d9d9d9d9d9d9d9d9d1d1d1d1d1d1d1d1d1d9d1c1da120a01f9f1e9e1d9d23e4ccd7e27047dd0deb6e1dba9b76cb06e73e8e48efd7b7d9fb3bec88aaa5983ed1223cd67288457a5a3492a555822b71b4d2233a4b3ed1e7f957487e8c655567ab5345529f077b878c5f91747b40e44a276b8d08a9d4466fd23889ba3d239e2c477bc45669a513f74bf77125ae5608be4a52babe936deaf68a904d3c8a464c463493e51172964ffe86271122babd21bac5c30b2f4ab72744b7178407c4df32cf6aa34c43b8cf4719bf8d16d92c391e7da5b66a24c45669be96267370fc8ccb79837adf5d8b7b9c777b513baf7b478e3f5ab1fe97e47cb232c3abf10577b419c63327cedafd5ce94daeb3521cbd22a6a3e3cafaf847fa646fce7178eab025d2ed619c3185329a7916fde083add2f1f3b5b95f22679e43c6a3cfed9a765fc4c6623b3ce391286bd2e3f3c3c3d3a4e7e26c499c2dc934cbe5662c366f3967b8c4f571b5e22c872f0edad141323e141de242467793dd72b24677aed4e666e343d15a0cd4da5ce9c4de75e2512f00571ca00898ee7eea6e7b9f07dfd1fc47fa44730ef739cfee995bb76088015f30575ada288d2429eebe12b6557acbb3fbb9586c96c3413b3a65d08e4ee935cfb6d6297a77bfba6db76a72748fffc47f885ee72d3bc64f3ade4d1d397d47f3a7fb63a5b8bff88299d282767466f87e8efc9b48f3e36e99de89837bd059b276ff294948b70785bcd748b424296b150b342d545a92e8eea46ed108a9f7739e399c9b314e4dfc11e2f99df93b234d47cc11e209fa1f219d9d1da01f1d9d9f1f14d403f441b49f1e1c31e3f2e260265ba5380047bbee17bae563d85a1e36bee02dcf1cce2ee78039a0ce8dad557af3e414310ecf4e90f842b4514868e747145fe70667459056de32b5ed6ec6d4f617dfa7359aeb8fd4332e971ce7fa38db63bfe599739294c562dd1e0fddadf2c21f9f1d22dd9deaf6d4e7f873bb3c7ba102dd0d9593ebe3bf4a37e35f2a33b643373c89d8f02e5371e6e66e923feec4fae593bfb559093571b31ceede3ecf918e75ce7065cd955013375a71063571b15877f77433e9560b17a0b939c3e1a9c3a1e5e4d48246209ca0df99dff33e23d04e2d8827a7e726db713a913637f31c3d97b94abbbd9df8a315d28debeed9ada12bdd2dc456e9d37c23ff44b328d3d9499233cb99f124e949e293e42789add5a3235bab474c64add258cc56a9d3cc9fe7d2d2fd5c4b2b8eb5b4f7daf14edddfcff3cea0268e9c65ad5327494e12db137e3c9ffc252c1b1ff7f96814327ece95f77eae472d165edd8449264bfc77091307c7c753e72439451bbab523cbbcf9f44a719fa93f69ab14bbacbb77bab5238a6e5bc71d3c7437926eed900124c9d7e1e9b0fa4fd4e6b64a33beb4e635eb0eee48b2acf9e72773382b8e7474fc5eb3443b49727d2a56994e1226dd2375378f6ead90a5bb91bab5c2110d66fc365b893ddf6c14e79fdbe5e9f769b8b2fadf32ec6fb93eaeb4dde97fcb9f2d9283e3d7cfe5e6cdf1bcb9eb1e69562dc5f831d48f4f0fcf0e94cef84ea235429faa156379fa0e4fe9a28f6eb30f61cab8d269fb277b7339d92ed36b9dcc23f77325d348da1bfe7bcbb3cff62916db89f38a16f72349ca444c8f747b50dd9eaedb7bea960a49acb1c61a6bd85a3dca781aa199d6231e28392b1d62b423733999add29b9962b1590e6771e67056482c26fe68c5a1d9fd1cd4c4398996a49133db3c839ab8212049501327525ce9cd503f7b3c69433b3c2590fb4a5013775f09c7621e03ba1b00dd4aa18aee2cfebd56fc3b1dfbf51af5f1b3f839a8774cddffd6e43fc2d9b5b3d06f99ea7cfc1ba695d69c085f10678aa364b7577aff778888292e16c3f59d6c8ec5302ef3cc4c2fd6494e2225b4a2c7d15ccba5ddb5798e751e21e7e792c889bb1609e3490ac1bba9845f078bd4ed657cc11b9e371c9c1f7b8068b589a3b333738078c49e9187a72728e7816e3ecf9b31adc4383897d649fc9b8893a90dc7daee14411c4a925487f3387bc3b9e1798bc550b8f9da1b766bf30dcf9bc71edf7ffaebf5285f9bcb9578f6b8796b4d82fc4750b9e433bdba71fefdafcdf06ee6309ea4986f36fa3a9e24231d6951b787775f44a4357a3fc9ee8b544b736e77c56ad4eddd1c8630f128be48495aa9148b09e9f8f8ec8c8faf8de262b1b15a8aef27b13df9453853dad0500e778900c9cd23ffb789889cb95a1ee8b5b7a17af4b8d9689bd766a658ece9cdb31cfe3cf378a7aeea6c910de3f29ce5fa38d7bf7fab14ff13cd1447ef11bac1f1f3109cc449f3f149d25e7f9ad7297a9eb72c4e5ce7cd5e3f67dd2275f74df70fdd7ac200981fd34cc959ef67a877b2da4b9faad10fd98c6f1be9a5c91c361ecd3b955e40c44f82c519b5d9e1291db6c353be9e078a675f7ef964368ef36f33f1096ef60437563a6f42bedb7be2e56ad65ea51fadf845b93ea6c9303d92ad5d1ae7df64d6861fe7b5e590d868ad5a21e37c22e293234f7045cf0365faf24b1c6e629e394c8b7693fca57a94c35d22503fd6238cffda8c72b84ba4dbb35e25bfd6791392c35d2278f679663cdb4df26f2c86fb8c777856e9bc89f3cedc2c3f49cedc0c9764892bc56c6f38372bd3e799996c95da26c67fa40756e078410a68a02207360081151600597282cb0f2b08c4b820400226bc023c7c5508116061081a7c21830943183900cd94991d27a4f0c28b9b20e828808e11a4008b221f4cd074449018b8747bb859b55172ce9e078a736977d348a31115f60beea55541bc7ee91697f7d226782d287836bcd58e0aa8534da85c78f956ab1655caf33a850fecaf3d1c543478fdf2a3a5bff63c2ff511f1bc17eff3bc940b0f9ff7792f1f0a4b9ee7e2bdf4e7cd80a9cfc5e515e39eeafb54533c95e77d31de103e0fa65b3cd5977acf73f279deb742f2edf8bccf45f5793bf83ccfe5f370f052f0bcd4b7da404beac5868782e779de27f49db04a79553c97cff3bed4ccfb5431303d1fcb1b5a792d31a482782fdfa7d249c57c9f6763c28f1700958ecc01be56f56785a74abd542d9f97ea1627bc1978fd75abd56aaf3d95f7793ef0565f0fcffb5abe2fe5793c1e8eb7f258dff77d2e423c1edfa7fabc9c1428a3c26a066fe6c60a9f01bc964f054fe5a5bcfe943e8ff154fd5197f6d05322d5341bf0ba060f7c29cfc553bd78335e8acaf7ad62292f28e57d9fca3f16cccb6bf1bc971c95ce0b39de17e3b2fa5e3c2fe67d9f0b522e1ecca74a3d79355f7f43bf01bd063b58dbf4a353425922929ce210568ac59a804059a2199e43243985389e4e831b0d70a081100d7668d00ddabcf09cc562b6568f62b126f7e1d5d2f006b4212ac2e37c8aa346fc06b4d17925f90d58a98d8ef469064b6600c48c33cc9862060d66b4caa8401951c09056e2d9f833d4ede8f4501ae7675c6d14873ab3199ea13f2e6d6e682599cbcd9bebd4d9d14bbb0b7750f6e642cf626977d5de26ed66576789ebbbcd5eda9dd78efc2b3873fe17c4edaa1dcbc7391fffde32916ec920043298e2639d24692f696f3adcdfb2e36c9e31a8410c9888011018a001032860b00406362678419417dcbcc005683418864e96b5fb3a2749929ce2bd8f611e86748e5fa7c39a1ccc18578a978a49a15f301c429244b158e833b7a3e19783e29db47604dae4c779a52f0f67c6d57ab6d56361e837e0ae1e01f1f4b13e930bc80073f4865d60a57bcc98da7ec905504547482e78758318db1c8e3ae6912925739116a0d1fd77ba456a010e2db061810f5810060ba2b04089053059c8e88679cd629c159f96b1ce92a40c0cf1ee9d98b280595c5610821550d1dd39746b0537ac4086ee6eea960a4aa0021e5420430a8690820d74181b69457e13860e0bf1ee8b64a8470a1d16d69262b1a69056e437a0cd0b8f74b67ba7580cefbe482cd68433b6a2e776957a68a3b3cb14eac91bd0e68667c6fef2a223f71d69331f87cb97ad52728a34b7cb8e79543a6f45474ed2e8d3c06b835fbb77c26f6fba144869d0e6e5b9d2c7ff14d4507494021d28c8924341956e4c5100d5840222289869909ca2ee2bd48ff5042998400626f040cb043d9820a9046ae4fa3447c5bf377fed8efc279ac5afd5de312dc10d257891a1043266d022230932a290d1d34d627192391e6ceda6da3a4910458220233863044c8c80ec6edadf5ad5591f7755962bfdff8a4008110c11414c042c8c31c618e51846c6d811023342904477dbbc9cc961d8dd22f11b70fc4ba36e312cfcf2e630163e0fffb716fa0d583ef91af59cbdb1d5a7eeabee6be837a0cdcddf57b676e996341cade4df6a470e8a91458c0e88310131a6102300625c3190c4b801021980000441d8e097e3e83851917f4dd229715f93fc0624cb5a8d7af8b88c85a1df80b319a6f7438fe5fab8dd54026b59a7ff53bd6ffb5ca9386f6d56abbd1583caff6bfb919c75a809c85012871501626bf5e886279158ac298c32bac3f82237ff3661e2551646d412261887a104bbf6de5fc2c4ab2c8c56cf9cee5cc2c46bd207d20063e107aae066fd4048bb9f495af30fe868f07156bca9b6fe48455a32b53c0046bbbdcfc34db5d53d30f340e8d70a098dc47933d4776009ddadd4ad0e70d10d3e9e7fc51f7df74e244969f79586be0810f193ecbe48cf4ff9a315bb3ba95b1c200207ac7060ec6ef0f3bca5284eb79756e2d273b676e9afbf12efd1a3470f108ad6fee6f00654d0dd4cddda80101b78ea6e1cbab50119badb48b734c0020d600177d7e69f28ae9f837af7584cc414178b593acbe1f0e5a10dd32b29f498cdb3fc785667c81432b90f17a281a981a06e1a2d53dc6ba055b3f99932c081ee0673654d96019a811c1988c172042c2cc0128121ddc2926b0749b2ac6592a4bafa63fddc8f8ea98edf8036a18d90575228be74fca6664321a1ffb51112fe68c57057ede8b9b4bac71243776efecd310f1aee3196d15ec9db662e3f13068280812cdda18dce2b29f41bd0e94edc5fbfa9f69de6110c3400678b0c35893467f3e379cb19bd586dc578e639ce6b04f5633d8ac59a9a62b1260ce8b84096ee264cea930e5bc204bc400372dd4d98e0ecad2d61025efab70bbcba0913d8fd9c056ad00d83d99b6e0913076516a0d216606201161861749391a322978221058ca0ee1f54400bb0eaec1ddf761f87e9582b10568085ee06ef3f7d25ff969550000d0a5c011ff737117fb5142029f0ea9e001a57485a4e204fa0e7e2799b40ea0b0d74877e6d2d4fdfd50944fc2438166b8ac586a63701618ac586449a6766723c63b12620129849804704d288c095081411012211d8118118089800020480c013080475e35ce9245ab246c31d193a89969c8161d1d18c881024243223b326234745c2f1c849b446f024e97c9a7fcb4660388bc5429bfd4e92e2285e811717f022ea013e3c00880396e0800c38600a07cc1cf072c08e2e6420858e6e7531441742ba80b91246e35d9db4b9abd3e6e5de7474e4c8482c86737d9ce78943f73b714612a9cd92e5f5f043ff6702ff71639d304c92b301b506c8d000171725e062005c44e1a2062e5c5bd8608b0b6c01658b205a1c81025a58a1c5a8450c5998918503b2b8228bcf8226060c8082013306d06051061655dae6e5301b1bc71489c31ce6245a2399a445ac87a32cc4d7e28c15e3af765727494e8bdd8e4a1c1cebbc8dd43e4d9bdda6d23a5f98de52146d99459cbd367f2dee95a948c95c98f13f855eb3ffb5fbb89234d7d271f9b7eca50e2603afc5243961243945c7d3e27c6da57dfaea4a0e4e9ccde51cdf311debc4ff841386b87604e6e9e3579dc5a2c58a06ac446105ca0a9015f00a255c31812ba0b4ae70bae286976e5d21e48aee6e984d8e0f3992d7e8cb499216f11b98936891906ec08c2dcef3f41043cd2321f5ddb553aca598b3417a799865b64a6faecf03c5e4cc148ac78d68c98a245bbb64c712fba44fde64e4a8c88e1cc9001700a5bbc105282d20a7bb09932ab342065680d18449d1d1cb613058d191154b58a1d4ddb4f656cc60832aac8ce3f4a77db5b6ce12fb481d8f559016a90a151490a5db41acfbfab7ac802a14302a0049012c6f5101022aa680e4cc3bb22681f7ebbc514104472729640a1da6206a4d0153c50555b054c9a2ca932a38094823012548c01209c021014136af1addd5293ea63a0769199738ea23f523d0c7f171b75ca9d7c8c799baad5a72faf84f13fbd37216015d20804a0b0163d1742930208504a4d049d11305115a5194d10d86b0fbbb1ac5ab054510ba3bd62d28be808208288aa0f09eb8c1132698f204d213261c008dee1ebf28168b29792c86c9a49c67ee335652aad9bf7fcbd7fafd4c1d761f7fbdd6c76be9dfbf9fcb5c2e9362b11b9e4470931d9e9c1d305a07c0812f383d4f252a1fa03285ca12951c0e967847bb33e080010660807c9730911940c8003a8c9474681252001b1460010588d24d98c08a8e8a8e60b2022029405077376152745474b484092873e28cee76620c27a4fc2d7bcb099b13317437889bc8023631a50922fd4ef6a98955773f2e2dc5f346802f5a04806291083009e0dd0d524c318f1fc019dd3f802add03c8a1fb7d008ec4c40b2c92124c28edfe969978a1bb81ba35e58cee06af152f9e37dc8f6e4da9d236fbdf9aa62875e7d242cd235356ed34b3675b654b5820378d7496adbdb95dd36c87a7c4b319d4c48d74260024022052628d96122550a289ee0643301c1fdcd160bf6442b792b040124ee4e8561240249193f041220848888144124818c1d9daa5cfed9a46bb34497ad339ace8285b7bf13877349d258f1872c4eb08138c18c308258c28d232a246ca0da458e9eee13b21987748e34d9cefd7d6968a1840115f840e45d050440b44b480080cf8d0ddb26e111184881ea20655866032440bad28368842452bca4721d2d846070cc710e76158b3d366076d4618f8207d391eeb74da8f76fc6b71f76ff99643466a6b1338d6091ba9cdcb7f2c49b1dafcf8ecbcd324692fff5bfe7f512caba50fe25ce7585fc43f66f12f1d6bf69fac93f6e66ac5f19633d57d9eb79cfbeb422011c2670841882008255a410811c4077114c40b10416800104600916b0171d38aea417717752b0a0b5b940cad1f68d0fa2102ad1f7868fdf0a3f5c34ecb87347080380c31fc995e257e03c230ac892ff1181ee72ff90d1886bea3d19b4e888d905792c78680380c60387e0f17e238539c1188abce3a0cbf5116df09adc45e7454e4d37b8c75fa7f6d37737e6dcde6b0bde93c0c73a6385a897d7a0f9b2bb5d16bef8f988e767c274c612f4ec732076bfe893edd12d7d8ea78fad3a6ad96d733f5c7e5149fb623717f7316ffd37c12c3307ef26ff9fed3233968abd4332e6f0633c5d66df63024e73897489266ec98ba93386965ed6f11883375929c363fda3a7d47dadccb6f7812f9dc2e0bb9e1799b1551dcfd1c692ded0ec5624d0e03929fc96140869a808c43434d406a49e3d18f16c9fbd13ee8f67ad0edf1a0dbdb41b7a7836ef51043ab071d39e8f6cee82335d4ba056589eef937e358b787836eef06ddbd6aaf0a283da0b8da6d9582d7daec9fdb35096922dd36e469a34fb37a3678d2246de612373e0d4f2319e0015b60c7816f02bb29ddcda38ef3bd1a747b34e8f666d0ed99d1ed95d1edc9a0db8b41b707836eef05dd9e0bbabd16747b2ce8f6b2747b2be8f654d0eda5a0db4341b777826ecf04dd5e09ba3d32ba3d12747b23e8f644d0ed8dd1ed85a0db13a3db0341b71746b7f7816ecf03dd5e07ba3d0e747b1be8f634d0ed65a0dbc3d2ddaaf642a8154079d161e805801202c762480811cef2e3b0fbc80bddd281d1e0df92a4d385e8a674ae81e4fa42f8e280e1d732fe3cc92456c9a7dbaacdfe3a4b75d85f173ea55e3f677a757756ea37718a8ea73339666a2c3cef6ea86ee524e00bbe581fe39f59e9f6aef016d0ed59d1dd2baf8a1632e62972bb6c745f69c4d18c7f743034423a325224332a9a152dc988c462a1d779bb96de1c499bd509cfbc33e260b5be1b1feac7ea4f739b8fdc36653c95ea91936849a2fcb63b9b2cd22ff9d0adebc2dff2dffb244a5faf540aadf5e4d5ddd3aba53be4d200a172607483e33fb91ab92890deec44c8d5e0a191eb2e3ac34ee97e7a1c9b041c3f4fb214c929e2f06c06e2f1bd66df31494e219356629c5d8e1c2daebb5be856d562f4e161b87ba7dd3bf9ac3a3ba7e370566d78e79322c6a54fbf7fcb7fd359ecd873ee9dfe691429e601c3fe37250e66a8aff9317e7a7b9adb2abd56a4385badf8e4fdb196d4bfbc4d0e52103f3eb248798a94cc954578f7452c924572aac0ccf6f6bc19ca08e3bfe3282bc7af48f005df0af91f629b9214c94d5c6e1e89cd664849474c4b4649664636c896929a9866b358bf60e8ee14c26ed11ae00beede69464ed1769336dd2d0023ba79401d50e7e615d0ed51d1ed4dd1ed55e9f612d02d9aa345571e02ba3d2932499d3eb7cb220eae37f9eb0d4f5c2c36f1e72ccb503ff3a280e2890350b93fce27227e8ee9e672361b5fac53bc9f6b7336e27fa279cef024c939bb8979d2f09ce1e4c778f74eb3b7dd32d7ed190026f7a45573a219ff3691b499b111888b8e8adc66a7b64a73b979c46516a966ed554aea1f783246e8345c1ec7499c345b47307ed18dc949f310901dcdaf58e918add1ee48108f5eed93b4d28e993a6cde52e6d70e71f0713493348aeb639ffe95e2ee67a76b75be23c9e9f5b1bd897e4bab8383189779de99cbcd9cf7e8916b74744cefd43d9183384703a6f96d3ed22207b3fb155a152d56ebe5fd274b927629d75b128dbf24b355daa2ed0042cd23a0e7a66e161dd9e8df7fb2d871a6f4fee8d7d660238f7a4b2230e7f7739eeb2d6936bb3abd465f7f670edb66ae2fde571aebe798403cfe13adffbafc341f2dbdaf84f36b6bb3668ff8582d11e8327f9cdfe6e3e7dccb1c9ce4fdf1da6a6998c71de2e0f8e39dba996d75077f9c38afff34247c9fd66a25ae47503f569ae7fa395cf36b6b38ea4fe6fcd8338f3a92a515fdc61d572bd6a3fa3cd8bf43c06ab3632ccb16e931927a649172fd3a71f795f2e31913ae0b00001bad266978ccfb89569330ba7b896e9a56a149bb9610a5699c9c8f7d2e95b26ecf8926083080dd2df1fcaba339ec327512ff266436d2d9583f87679fc577f237379bb3fb637d4c458bf19ce5c736a80112465ce2fa084ba0baf38e9c798eee39dcccf871b429273733c6d14cc74a717492622fb18312be200e4f5db55edf696651870ee8e6dd0175aace5eda0dcf9bfb0d4f22f8672fd2a7fb78ac46232dc2e9b0bab9e1c08d5266870709ae1c97648fe7ad141fca084f254d194f23b9cea7277f69a4454533cf226caf52b62413266913d3a272fca5f14eddeb1e697ca749ab48327e9d35320ab94fc9dcff900cf548e39192ce22e1234b19ea91a0e6911b0ee2f407dc70000abac1f9385ba7cb014538c00607b4745146175134582dec6ffe3a8933e789bbb05d0481f8dada151ed82b605c21bbc72b420d5003dfd4d21be0810644e906ffe6b0fcbb06f870a146b7675b9f8b2fb8909273b87f2e9270e1dd986e5146b7bdcfc3b845175b4439d43c02bab610b7787537784683598b2b5a2869a142162dc8220a7a67ae25699f7cfc6b6d362fafd43a719bdd49b2ac791651b2a8c195858b0157187073318085c65848008b272c7ec0792d6e3623499a2b2d9fdc57cacd665730b9428605d4a07b66eb6c012958d1022b126045132b96acc8510519554ce96eb72006c73c9b14f084025e01470a98a1420448507144458eeefe4c975c53e4a64832050c55d400a30a541520ddfd44be2e3ba6ff34fdcedff518e9cdfd1c8e42d1cff3febd37f3ba272029013208b80102b2400089801d298c20c505a4b0420a21a4b0418a55144a8882035144697216bd7af88ec31c14c73afd422105144e501c81420528544f28e1092c4f00f184d113aaeee1453ddc8b8a1cb6ab339c4dfa44315672d0daa6e33cddde74d3c875801b545840a50a2a2195170c2003034c6100220c9064001b05a841c3dc8717b90fc7d3890938218413469ca871c26be2054d5469c28726624db81904a842802604706100650c008c1ebf527b4388ebdfb2eb6ede69e63c6f19574bc39ccd8e8f407b03134e98e031450753ba9872a7f44c695922084be0608925e8124c4bb8045002014c110092005a5082054a64a18455c288122a28f1259181248448a2a8db61194f230ec378de3c5c0aaba5d6615fadbf4e67ef8ea47fa797355ba5240ccb9ece5a88afadd43a0961b38c4bdcccef83b4b793ee688e79208184c42b8d235870c4028ea047f8181104232a60c4008c6032e28694331c86f11bb9b74c759e4bdaf8526228e28c22bc782a22a8081688280211122022aadbc36b6baf24f7e136487fed91f19da83b0c7ca7215430041843046008a12154ddf795b0632112200412421c09e1438898205c10841541281184912056407cc0058414208a807889ea419406a2b2882aa3747e40e3072cdded301b1d875d4aab53746cabbf132e6f4d78bc53c747ce66ddd71c121f5e94299451e8f7ef1c310d6bd661f896b95a6a6d0ec436bb0f39f0c1013e50e1c3cd87197a48a3872b3d3ce1ea81003d2cf5d08222022848402902e525004808c0170ebb36d7de08ce505febbc89b64a1d36fec524f9b75c8e7ff15f8b1b1fcfa779cd92a40cc4d5bed38e36df080f69f060032b3c38b9784072f1f0c383cb8e073b2c76b76ed25a2530cc14cae89fe693b34c2b0df198fb1b1ec7e9b0240729d4df7f72411901aa035055404501958383939c2edd139d8ece7b0ae38827a6a7134e503251e64a1d4a14f20bb20372ce7b3892c31cb6a34da87924442a721f8ef44a22ad550a917c88df805e67399b67a1571a7aa513979f09cf9b8dde32d404c75ada9aadd4f6d89f263abe011e034f8181c0442e1cbb46b860fcb5b85d9db67a8dfa0c4b8f046a1ec1193f1224afa4c7b949fe3fcd5b51e8e5b535d78dbe2349f216dd1d4f84f004033dd69fc562434333206335627a5a39f44e33e32187bdd3cc4c40f233dd24a81feb1116f1b54c0e6b0292ab02e672ddcda326e53cdb264ba51bfcc7fe4367754d36874b18cee63a6f4a3687eece16c9d200ca2a115c354b778fa3ac2e51cbeaf9b1878ef1cc8d756621b8327009c0e5703e70abeec6e50fed4d47424162b2c8e61ed9d61eb9a9638ac59ac6718661b54e2770328013ad1bcc7566a80f755f95c070f74e385ba5b9a9632a725a5599132cdd60d191932a9c8460e65127750284aad160d151d151918b5ee96e2aa5c1a6a1db193706dc6edd3619d8a2b0e5606bd151918f5f53a3f64577d7544fc627f14d7e855105ae11014d5c230bddedc3613bd261f7736da42375325766c737b0e8a8e8450888097089515ca24cfc465a54ab1522c3454745feb73cd2d156fc3b1a0568b7b679d174b8e6ac023e9eba594377f78f3007aed04a376813feeee53e6d95c26c5e2191ee0673a5e34cafa564f8ea1effda6a9b95d1207e0a71cd4e71460584e5590eb31c9af167ad06801a503f02200b00a8b80b00b5bb8762b1a1a123204ca4606284898b89cb12072c49a269090b4b56ae1d64b0c3113b30d9c1458724e8e0850ea10e457400cac18c1cb0c821871c82be5ad77dc523699ffc51678eb9d2afade150295472b7f94cef2b29745868732454d27df510e96624ad874790dc872b1db965aa13eb0ee7b79165edef14f3e35d95814dc2253eba6dd6890bfd6f4d311b908e9096644a1c0690e28b64369236f41b10fbd3ea4fe460c694c4397ae3a124014a9450228412234a5a921c21491697762531411228ddb524580fdc03434d1c387e8f185602c1f14edb5f87655811122a4828929f2625347da0e9004d4a9a6e9880c0c401a621988830a5b0c483a5152c15b1545b7a11d592822c25ed683f978c88341d19c55e67f74e331c8bcd300d773cc8d00e59abf3d26cca9c5f6b13ee38107f390e4370c42105a5329452a0f4834b0988128e243392189074939024adae205d8194e43aa2c6912a47941c697119518191282e2338455ed098e7c626d4510a5f1e92d58ebb3a77945e49a13b512de9e598c76fdc26b4d1091de6b197e31dbf21270e7794421da5afddbcbcd230240a7794dc87ebb80f27baa5ed4ed2c39e58ac6667cf03c5a1631a8ef36f38e9930b09dd0738ce7c80979c989c194ff1318ede5c2d71b5b496d5d2e658e7b8a3c1466c492145788aacbabba55d4552376440d5ae1b2c7003bd2105d7511a475f7477885dacb3de7fb2364c8fbc92be363dd34a260777753ed1a90377b3fab5febbe9b2a3244734472710c14244024494208243bb0e5191fb709bd0e6888ec7888afcc66d952a85e3dfdce0f048a8e43efcc80d0c6018e27c0e01113fc97d1aee8f10693575d970860d58c06a8315d0062914636a430e3678ae2ffea5fea4d834747f9c4f64a6fbdadd3ada356406dda5d210ce1e89c59a74b60ec13124659485d1cca887d10a45621439515443910f30cc8f67f76dde69e6582cf49a7db90d0ef333d5a410e9e56118ee685fed5fdb9c373c6fb91a49525da54e7836092943c895fa379d102898139e7909131f55689710a5ee16b21a5d4464e099a336106101fe4d374444a4ab8b28465646834d42d917dda38c4a3728cbe074dcaeda2a93ed70d55004d0a6463ed3ab49182e017de299878662313a345e7b6950a379d080650a0d617783321aaecb86cae8ee29433534ce541cea205fdc824c01eb07c9a1a7ef6816e7b2203aba6540c2e8d75827102964ae5f270e885203c969b09636191024d78f309abcf3dddaa61f54fa075477b7add24ca7cef10f22fde3d53f6ed078c4b2d81abb129bd2dd3f4e5c0cca150bbb3be6dd24153ae3c91c8e62a847129242884883b0f1c7a7584847f751d01938288cb196b61624c5159483d3c405e9e82ec76aa7bb80c86870bcb6569bbad9f4457737121015a0a8eeee1b9e37a0a4fae46c2867afd2ec69bb89fbd9e1fa71f18180cbc7071f1eae9e341a0c475bdd91b412e36a71b44e243dce53021e0cf00c8027b6a3831d27768a5c3b2fe88040470b1d243a30e48cc09513d50de21a754c73cfb6867e03fa635ae837e0dfb2b5a9656efe0dc7b7b85a1107f6f25da64f348bd3565aee2f9e6eab96744cf1cbefeb2c8e0e5c3820c01900ce88a3a3bb2fc695d9666bcb27d3fe808536afdfcd19a6a1d78eb24d022e00bc2e70c7057a87b3586ca809482c863d88e7723705b829e206c88d0b2c4b778761129b24af24367f129b3f49387e12580d2e1f45f071858fd2e543a707105c3d38d0209e37260cbb932c459aeffc6b9b8e49578f1e1b336c2a6053b3d9f10ac3afadd16b49bf9fedd384859fed13399f68f9e46bb5d1a3170e8f2c0de371c30c4770cd80c60c099861ce30836b06d617328c32209141d50ddab8cf52e730db93f489dedc4d9d2f0f6d729856d98e240a9f06bbe17923339d5ead6d66ba2363782206d215435177834b4bd5c2d0050c4cb860a8a127a5dddc780d086a90a809ea6e213ec99d58dfeba429a3bb69742e9a9a8b86c679e0637811a14dce267ce142bf0145b7d9ff8966979ff042192f8cd130d4fe867e03ba5e2872bd8082cb050db85c90c285212ec0b85a48410b50b85a60010d30642227dd4db2468ffcdadaecc99dc4392497b4af7647da7ae9f8381c1dff6647ee4816762e167a5c3b8ee0daf1831d55f4bc09713089fbbfcdff942489efd0b1020e5c2b60e906c31c1d0fe2452118168536877e03fe0a312aa4e15261032e15bc70a9605341874b471863b637f772a3d0c6e895145a246a2b2cd7af1487a3f86f621e7f9c96ccdd48076faef49a820452a0b95290c195420a852e5c2840a15073c218ae13a4709d503bc1c7099e2bc70e7234e1ca81730cb970ac81c30560e078c285c3002e1c50dd6d9fe6d292db2ce93e7ce96bb6a9762f6c766dad564ac359115b5deed1e39f48fb54a9ef268ec7bcff646d7f6db679ffc98e778e75e69bb14e8765ea37b1b1cea7d7d99bc36a47360c6d95ea2c49da1a08829fedd338719887df6bfd47ce7aa58ee7cddaaa754c495c39dec46a479fed93e3d0e1c45fe73a5b71e5e8baf1e4c60e37705c2c7011e17235b95a4a6889e16a5171b598741715bd92c2a53c497156a39047a6b3662b9ebad05669b64942b7d73135f25ada5c2c1c6b6973e5ccd58ac165421a2e13b234989b4f0a71999044b75218ce3edb1aba4c80c1654309ddbdd42e1b59b86c3cb96cfc70d988a1bb91b46b86043ddefccd556b2b259dc449d21c16fe2cac48c0b74d1cfd9b0b435c39da9ea4e3bd53bcc1f9f45cda7acb8c7f37f16ed61b9eb71d49cea61d49cedcf4d92619ebdff024323e3933cd4d71c8e6b34d027b65fb3484aba5434ea235226437eb679be477f3c54a7797e6a09ea5546f69bd6665d4680775b64e978c95264c7ec86484e8ee22ed9209ea264cee2cbf6d2c694b9890a4bd3f645c3157ba9b3081c1a43461b2848983ba478a09bb41574c10e88a9169305bb748743674e430174c0f303bc0d8e08261611504d72a8a8ec1eef42c73909cb2d50aae171fb85e5ae07a1180eba5e86f79ac53e6e078a7ae5472b978c0e54200970b102e17252e1715ba438fd9e884b15853383e383e6dac96761fcf70f6d6fe6fcde6265c2d455c2a355c2a2b0ddae07f1ced524971a994ba41976a05da5c4b9fe6ed6998a6b074b7cdaed412ae540dd8929e4b0b33f25cd264ae948eeea6c95c5f16d0e6d65e53c7e4faac589b5ddfad9b9ceefa6ae86ed7d7329747460ec7e555b9f93ba9486b5f9fc8e58d495c1e0cddfe7f6b33ddd799ee6bc63fbabae66a1d6bdc608d296b0459020e968081252cb1841f96002a61054af84109364938a361700733be14f3b88fcb713a51d2332e6ff0219b2f6f7ef93f5172fa97b0ddfda7779bc7e4acbd6078de9c24b187243967f3496b692ef318fe31f41b1004c5fc0ec3307c7ff73757da1d6c5e1acc26fc92862fc70e838d5f679eb73c7b9236fdd25c3f095e24414a834d49494bbea3b9d729047cf1da9aef68496001093040021524284142eb083c00c36ced0d1d539bf0c5fa7298eeab4d18be3039c14a431feb9c4788e2084747a0c1083c681057623c7d9c7f7349f31b90967b11eac92c4e282323246104001821498d2480a3bde5c7c140e2f20d04b358de8c3d96ebd43d8e661984849a844bfc6f99a908382882078ab044118288600611b868116124826b086b0c010843b0620851437819752b0d1aa4218134701a3021ec40081168104754e4b656ea4e9e6d75f70a0bf1f4ddd4e1d06f6a49ce8ccba2fb361bbdb97ea8fb3aab3616d33d524d72ec37eee08e0c75b33ac5d9df12bbc79640b7158f3f1de723bf019fc9efe72c8c5e1117f90d786d18bece92cfe3080cff8784341f81f7c3bf43c230c44bf86f4dc41437feecbf365221b082f045778336af5a7aae3d99415bfd3c47b20c82940649b2148390431056ddf7f3e3e69d392084317532204c20e8e86ed056a91007bfda719c38c478de9ad008c1c4543604c4d6ead10f50f08302fc60f7831a1fa4d13b3b3ea0c107a91e90a00711e801ad073d60389224cd471c1c9f0738f020851d646007bb1dd876b0820ed6d0c10d7420001d0ce9a07330841c20200744ce10c219518cd58a8f773e16863b3efc95e70cd489853b363b230cd479e5203b127a2c0cfd26863f97347a739e7ee496adad6fbb8f0b7774468bab254cf7353ba635ea793e4df1c7df70ed68acef19ffcd466f6e1debbec26c64395a5df6b7dd3f82030ce000e320090e6edc20cb0db0f4f4607bd3ddd8e00636a062031b00b1810c35c8410d22500329babb09d3128761e77118e6f118ce797a2d6b2f06ad2ea854108af8991c654aa119111101000000631100203020188cc6c4b2217d19c5c90014800269cc5c9e569d89c33cc821858c316440040000000020010087930aab1e1a66837f89e4d1275a10ff97664d70c064d475221e6987f1b3ce3877f02ccdfb5ad402d73197285af1d128cb8d17f934c6af25f0104768e3e7d2e2b62733869743755fe36ebae51bd5af362ab141b8e03daf3b682d6f1576bc3147087279495f8c126970475fe480c80cd8bae30b893153fa93ff5aaba6f7587eb3538d88a55f936a538df6c18b6dfe3b89ce284d50364f2efb86f6010fb6f0020975869c56e9761c243994d5f7551f1af46daae6d83340a709957d256d63123f57f801da64cead1457b374d4f61af2ad2d6fc45342a301ec834a1b70e90d4fc21e261fa7a4e3eb6b39d4dbbce6e0dd553d80db518874060727ea3837a4e5ef2f5489e11b2d8b0f1938fc5afd9f9991936a7f73b7549bf59eb374eb63ee6d8028fb6394e77b1568ad6e239188a70ba485f6b7d32cf871c6bef43e56ee2194f337b9f33adf6068165f2e2d78e4da61dc5330e0f8e5dcc68ab728762b4db87e505bbc4709c6928f53101fc77b4569446c1b70a29bac5bef8b6c565e92744efc6a20ba8f7d68b3986206bc39a9f2826e5e6cd67fef4450fb70de3e79c964c13a8da61218d7a04587219a1a559407a046f4f54887f18e3fb2037e9229f67aedb4090858f7d29077a0cce2c90c9a71fd7e97092881828b69b22a9a8f6949ea0773ff4b0e0b4733366b4281c48b8ce4eef62a3ecbdf1872c05e48eb584318dbc7254b8a12c41b697cb71f4652e33163dceb7dba157c5ebd6d0f652e17b19c98be0e3dc7c00e0050113886a8bd6f355194242e74a10429238ecd19dbb740b7a2bc0717531d430bdbf0add71bb092a60004c359f6bc8116d1ba35e5a13e71cc79d850bdcb1713693de362e7b1c176fa0fe7b7c0fabfec7ba9ff1c8819d478cbef8de277dc4cac7c905b0391d127248ab12e701a00f88d26b26202cf6d27af85d68bf6987cb82d5786be2fd3ce2b25472a805ea98a19a0688d5782ae26862f4a0150c9e1080e21f75fd1a8c13eae899ba332ee2faec1eaa8496e1f5a69d3b5f7d9f9123063fa5d3039b51699f550412fcd826077abd20e9bd0b7257c3ca846c681df6965d6d865251060bfd356086ad5d75be7c027c67cefc6d6c979ffb75fbef772767d5bc4093de5e4b0f02b147e9f539b208e4a323af6ba4b45fe0671d2669001d06ed1d33cc99861c93ee931f97328e80d1142e07a009813f842a1208ae231db64cb88762d30b458d6f8c78c7071e0a8fc56c5c943d063cf7b987153f647fa55345ff85e3655498b04e262755bfd723502ad2e3de003e3f012fda73efe25ca5734f941243d4efb84eebcd476377c8c3745e952deb2cf2499e565a3c3ba38f98d677c52cdf9b7748cedcde410ebc0f2d4bd5c68c71614b74135c85e6ce6f5dda0e11b23f623eb53ac3c3d34024d829b68fd3811a191ceac93a2f87c123e2d883fe1ceca854acdd39d0240b9dfec0183f9e8427e4597dfae41feeb68f62ebcb74f8d55f75d6fd8952083ecdc380949382f36d3e64abd697cd9f2492d1ddf9b21ef86ab1036e205a2ac080399041cc79ed8d0fbb7bc4703c8edf2506a1e38e859153f762dd3214d1b82dc039ed3c7872cc95ba6f4de5e01cdf4832466fc1d3baf568ee853adc17ccf41f4ce9eee963b3d864b069c8de623f2e0c1cde5bca078a59eba91ad5e3c26f79d1f2e474b015cde64f7410e35e2628047ab28d7494794a5868e6fa31be05797773745581897aed1761197a65e3fc42267eee8beddf919ca11cb1b4f089917908d039006e83750b4b7345a0d3cc1719ac6c9c5b41cabceed2b673e93d5c814d169121c469bb7486b2b430f528bdf28fe8fd4bd812004a3e25323620d011b279ff489666ec120e9c13b4363b8b549c36e9d38a6d9387c80e68eb65d0261ef9cb67d72933072eda9aea6e97d2fc4fb97d8a700f12e39fd1239c3815f6b0bd364f6d48b83e22defd16d064f8252092e30b482743bd0307f0e54c021d2a1ca2977f39aa26c5dbae23ecb415929660e5a7dd68c2cc06a48d27c21edd267ddb95e619f0fec52a010a66adb1d5ab19f91e60a67b913cd16f9080b71b1d8d5eb29f2bd582c5d739d00fd2470fc03ff49d2cd49876596add7df479bc944c2acb820212abd5bb9a62bb9e13eb894b9877931ddef980855d538f0f7713b16d3d4817417a685cb1051b565adff1914d3cbd88482c27f35268392b86bd1b14980cd09c00df4069160bbb441204ad141dd558d64301bd80a8a46a4fedc09a3c03829f88bfb443f4f10a1b86260ba7cf3c1cee3d9f8009f0ae3a0fecbca544de16854960dda2ee28f43bb288681a959d943dc005a8b0149d37d098de2ee9de7640e24deff97e3571740f8de2ab3dd270387590a3fff6d9d25bece5d0902eca83a50e8c34a2871d09be9a04fa30cbb02b2f7f9c584e7e1ef518c72ab39550a638f279b90d63df6b0fecca76c79a73132af12b89c8f96d71b28e7861b1776e7e32b297d739efa569405e068ba081fceb2d6a79629e418275ea244b1a7bb1031051923a485ec2c8450162d95abbaf9bca5cccbce8b4ba84a229beeaf9fd9f30f3d567d717a45256ae21d03d696d7424708503955fd56747c80a7b804f88ceba31975a63f6c4efb3bdebe626ddbb0f11abb3f8376f30abca13b65fabf0286b18d8b31c5cafa26e23b4e67ab3ddf63c8f03ff6fc454e97dbfecd261e5009e37b0ae3f5ad1da3269b26be1fd89df6610577509afd8f0dee548aebfc23ac0e6ff1fd1124395b0f0fd15a795120a5575b1d80f6add0428402859ae9bbcc707f943ab317b48d4c29717b99c2a47dd9d0b7cf530e50408dc9b1c260702c8309ccabc863dc3bcb699d54a1eeb3e2a7bb8a93810175298d02fce5510c232aa9c601722d32839b0e84dddba1a08c946fac13e11782067b8c18299807de62a0204cca4d6e12c7de40b53af070b49527064c435549e7b8649e0c5d999a7b58781d8363add381ad5d27f94d638e62706534a1d77fa2d59f8d9c6548c10c082f87d01b8a57165ab0ad9815cb8dcdc78a2b1ac2740618f2ce205d17c9fa1ecc6124f409b8440d809819507b3cac07f324f896963e504b694329c7dfe335a99b37d8198c2cea473e43181a873ba741ce274f5f811c767dab0f203092d5169805b435e1139b3acc361033feca7f799c3df7d9e64c8f10379e0b2dbead6617def7b9547d1a4e5cf5ca4cd68c5dca61e0799ff2b92e70cb2ab4c40fbda1a4472a419b47ce6685ebac3c49ec5acd5621463365ad602059ec09a229af4a951230501c9b1563606d02861b563a033371e5862ee75905f3281e4e059e34126fb3b105c1971735d62030106fb17af1bc533e19bf07ab3c7225739e00e1e907f49d486a9cb90a3552d21e05f32d5ae653da8f19083477ddbcf6a39882ef21ee86ac2aa5d172c088356f93e67e967e26a1f74fbe4b7df26627a4398a1cfbc2b233236d18b2e22b9ce5739a642ae46f4382f0c41f0145eaa8aa2e67239285cc68f1fcbb7fa898ee5c441a15a72ee34d03390a8bbf8c76aac187c2332916004e8519308d282d500f2ce63c0d4c42fb4da0d52a1da364f1d991acc1c1fac7a8bad8462ad7efb74d909d29a21757cacd81b044ac38d69800f2a7f0e94724b651aadf0958981dbce6d51a7f944ec8c57712a3380c921f09ca62a6b8ee85ffa8cb12482ec18899dda6bd3fc2a208d390fa4e32857fad6576332d6bd4b97d7015b340e154b0e3d0715e80499f79d6824dfd99ff0a5d42ca3e85c1d4c13cd8e3294aab53aa5f1adf5b05d1275faf06e49cf210770e4025c738fc7c187f28788ac83d92cf8f0fd0476478a1207f1c3945503c1d317907e7c504e590870711e8b2507130699cf719c12b34c90f8767d7274c7a54ebcbdff7c39c97edc876190192df196a2f81ca5fc69491c35b2b55c3792ae19c98b044ab67886b36d1c100c5a9e52fc8c39b20a9a2096db1087540a77759f33d76de6f16fff526b76ea0ba4057ba306a637ae587545f691ddd63fcbbfdec2ce144666274011a35b44e69eac4c1858fae34c0c58517e354d6c6a2f40605b300caf4d27fd7610618d356274094b5efeac59933a5c1b41165e6cddaa1b3d38368e0d54265603ea8cb66dbe231353bd3d90a5087056dbcce20f5b16ce447e1ef2be20d91aa5c243380e9860203e2e644cec404cf58a3f5365474217752a5b65fc1bfc1b8bad60b576e455e165d730673a0a9f663210dc3e3556801be10fa5818d7835e38a08b0b3d0962d7bfbf641e6d058cebfd50bb4b22c11d6bbf0d86b02eecce83766543c64d9cb0ec778a1e97678ea66730b3da4ea0eded4212dee8c7441838db0a33f2ede934e0f9705cb654f62aa7e15c6c99465312d804be2c0d53ef9d89af2da1035b567c2480bd45cff59e1da440e3b4033251f4b7a7970d111d8bfac4e796faac4e96d877f949f2fcab9c8b8307bef5b23c1cd7f7e007f057879d21f8f61b8594ee3c99650c8cf20e0e991157370e12e3cfd74028719a795d94b19ac5ba78cb37885aa2621ccf4e5ddef4f8ac0d0db12a10f01a7c5054b5181cf14af79adc8df5cd63ed3ce1847ff409ea87829d58eee1566cb26c766531fcb4c166d3df6af7569746bac477a78c776dedd6811d34fdf07caaec1d396d3c824166196cd2c20cad46ae0aefce8b9b61704b1cec5b9058a3b9965e4659758cbe4cdbf92ce0e7cfc8de6c1b0712114e0d2c0cf1158c83c86ba367c6b1c84bfa3ae84d89c4a90af5f7e954bae9ab0d1746ddaa57334af01a0b90c6e1974f14c940c8a7b58daaacdf7f0d84ebb5847b614fe5599acfd19a1af671e2b7acef5e84e72288812c2e97ea07344c4a098c2f34936a5af5e66581f8b4eb67ed2c6aacd716b2fa6d1b036f7dfcd15bbf35148f352b66c8e3eddefc106601ac9b2803784f67e65abcc6410e2f42494f556698246057ea9f4e205b71f346bd5a09143001f5f48f24c4542cc03f790b8c8062e2842b7c66eb05603050ba6d1e3fdc16635f808b5c6622c9b615c43ed0a7520eb703f51415af90c5a8d7f2ca797ac9480a34cb23d53e6df28cd80f1105bda767b44fb250790e9771cbf2949e9923c2e9479aa84c539136c3d64f14208653df5bfa98387f972e0e38d54d98c4a231d882f34c59c102a0f6657a50b1cacdb0310d957d809b081e24a575d6ffe9a8467fbd09829b210fa8d5b51acf7ede4704eab1e761cb9d4459c479ac4fae7729771ff801d7eb1d9b5d9cf9c43e15b8039f1d163db65f5a5c782d9701bfbc7092b7fb60e86459f7bb883d4565fcb7f76d12b222ee040a44c68e5438c265519f68c5b5b650dfecd76f9a6bc1b11c0ca3123a258c7c43dc10b6183570b0d51f7600bfc36a0ab72cf008f6e1a0b74ec2f2e0df47cd221ef65ebb4fdffe32dfef59b51247d600f4ec6421108061ea29c63875ab8fc12a79d414b5afb55e3aa1668e4bd99f33d323545b27c3c35549d71848c3881e4d81c5818b14ba2463bd892019051cb5ca72562e1d865d492f2cde9ba331e3e4d2fa3c5203fb8e12cb648b4fa8fc57eded2daa34ee1049432cf947aa2a396a9d1430a0c0fa9319b54b4d9dab1c889b42ca4aa796746cbe672e1e134a220df64e88ee43bda9fd36d9cc0daf1d7b58f04ff1a00e62de5a471e1c0b76980ceff8066607136c8f12f8e86be57c32a8fbbc7aedb5d90c29bf609f6e548877dfb9cc15195d5300822c1c7fc30579966825d1992c37fd8676aa85468a9677aade39886e5878f343c8599f73800ac5cfe57d18dc7b0568fb5202da611c9ea12d12f795e0fbc2ebfcb6cba721f977d9b766ac8dd35b825edab17b65da5698b33eb1e523c8a597f6f72c077518e57f70a7d46f6ebb9c87a34790f56b53b4e332b4e7d9d0217dddbbacb32a4e9034ec1989a3f891348b4f162d63cb0466f17c1dfe7241ce51f303d0a0cfc2d0975b8fe82d1eb31090cbd2cbddb1294cb45e95bd7a0a612c3616c95300c985c74c8662519e893bd2d48c0e9baaa41b2a05eb8c05e3c0618a8745c2683743cd9610d66dec87948aef0acee5322c929308df0e8068161c6a9a99e58d74ed3613a0461f318ce008c7b53a253d12201bebd4b61cf52eb2cbd73f69be3ec303f12eae452bb8d6c0ad6b53d390b48af944ab26923ed20a4ab9e61f52336d054a50c33cdcdaa0c8c2e5ae18f8e205f028f10d3eaeb3733bc6c7876db2b1d96aee08045dfda4fe607ce2a6ca863c61644814f4fbe1ed1f5b5e1ab18da5732696aea6c8ad1827338f3aad93269da208cf68ff44d18378810ed42f380b311c3e71f5cc32f627a463f0ebbebb646f68db1e0e9f70ed59abb6adf05a06113279de8bd4bb40485840bfd92e9563edcc62f1dfd164e2419f42e2958bc185b148ea2230348933897faf85f227a9c227a50c5e7a0cf2370ad823b2a5c4e00e7a37f188c98b36c4e5a22f3bf4709384068ba9d4d4f4f0ef8afa0f089b21b67d66d86bbcc8fa034743d7d4fff117a8864321f45d6c434e405fc8882c5f9e1e9f7dbd4ddd9c288949cc90fb2c70abdf508b0566428576c9364c44e6f7e44bced6a6f9a0799a059e25775a8b39d4b4bbde54e7065ec70301907a1fe467811eef3fb0f65660c824c39ba847914745b76b2745bf7690d49b925c11e81c79c705ff661be8f525c1a7cfa9735f3302d5a07d2b5edf12590dd78e170109346cedc0298e9aeb8334485bd3b219950702f74ce9f6c0b4d77875805a2e757d1e74c7e65810dff2afdb8758e5340cb00a8d2999de1dde3d53d76ed0b06747e3c599c2e27f2213db41caf5188e785af988c18ee896ee091a98310f3474961f384490cade7733c8fa025edd31e2e7b125a7e25ec13b20efb8688b91a0e623e4628afa78d03b745b95bb003aacad9f5cc4ba42de5a5186c12fc44662807514c9bf92600774660cd6b216d4385672b93c21394dceebc0532921da88a332bfecc1e959d4c2a901015e7e148d5e10ce367537496efb32c699c647763cc5f569c30eb491b6797603a898742bdb78eb1dec412e19d6e97cbc2ef8f8e96d7699aa662c9e64a05c876b032bbf340685f591ea287eed0de5f891d8f5d74e156110cc8721adcc5dd3f1a21aa5336196e32cf38f0b0dff38ac52e62a27fc3c1190ebc58649de978a9fa50b02013afb9a7ea3aa7bfee3b8e290735a00bfb829c610185effacd4ced509e5b91138f936b65a104065704c5a889a7745d939f19af73783b0ce811e07899a98894efe56e58c936ed57f6cc5df5d58bc8f7e7547dcc8bedeb43a90c5d9637e5efaf987bc57ae745afd6735f431fd311be4197bb976a9aca742fad972237fa507f22990c0dae93bb4603f2539c14bde0cde6d03976585d5827a000544d59d89c7bd0f3edf9effadc71238916c89af1be48b5fb575b4099106d0c470d4dd8cc251fa8cca4080bb38cdd4152bf1ae9037ab7750fe51ef2bf4a04a05c602a9a432dfbaf903670efc2fe6939fb8697d24fea1bda9dc578a1c55a1f358bc4c487d7e5ccde422bdef67ef1928ef0425baaad8c9e43c0d710f31a56358a54542c6454183c09e44da1cd6d51b17a0d6929344e30d122a3d2451078d71a61df451993aa29b9282eb3c01333c48d72b936aa7bef866e10ac5daafab20d57328975cb44074b8102c294c3a698bc1e4f0f3823bd51d9a1a058e5e6cad610c7a903112672d40e6d49c3392a60300a95b762c35e995f82d0277d35005ac9bca938014ea3300493d286748416763e8a3abe333a70e997ef34594bcb636f7eb42d0f6f76fd4a60d7ddc18c46d40f74c09b6b27e3c84f7d2e782562de0e512981fc07c6f53f1a75c89a584b7b4882c4a0aced24f33299ef03000e0c20556a0edba078a7f5ca28f21b8464f2093228391308e68a64521f6d0d3dc948ee86819490bea121b104b5fc25ec5125a59fd8bc690467d1a8f79e919791795bd00c25f08fa8fe983e2785209c7bc59964fd7965ea872e0046bcb3d4a1a1e35a3b84f58e2dbc77df5713f15f03e4afc8840c385d4519432f06b75dfa7de27bdb89a3068e634f090f720d067ce7cc2322c12e9e62f5e19bcd5714a8249541498c54e662557afedc31ec413574d4056cd17c7f0af97163b964fa9479472b04d2b0467120eceabf070be4c898b0f4643b0621d00605bb1fabdc854657a7223b693d31e64d114351ea48a0f4c2a211a510bd29a272745a0b900450e0e236a0e43058dc9d8e45d9559c5c9bd5abae16850641405bb75d853db713365799ae553fc09bd03f062bb8b2f6965348766c6a4c61632f08ceebac98ae8f6c7fe755b9a4ca1d5081d76448eda301f7a1d94eedc539c8dcff565b5fd7300d7b426b04ad0b1eb701d04d8711ef02ec09c19189d2ed6947f655b1efc635eeb39e6a9b45261a913e61345aec49fe2c70da390c054b035a51452fc8e510e47c5edeaf1da68380546768139622f63daab11a29837661834103f933af836cb4bcb75c37b380f6776e4aa3cc354f4e7917dad06feae0827b7e99622274efbfcb8ff56f4cc5282d3847086800d767ced8b4a219c1bdbb87fd809585b3b7168ab4ab9513636af70f8d8b33e07e69c63bb82ad211a2e2ca2f2944c27b976f4d4c99c444b220491a363b2a27b587f85890d1ee53479074d5f51955dd7eaef3cf85c5ad0a900100774ad208418c62d05d2e4a3afdb16a474ab11db55124366406b97a6afd460eeaaab62d9e124ef3181df26e07c3c97035253a110dad08b765d2b0e958ee07b255f6f600f00bdd5888c48497d288b40b0dd4e7af3a12886d65ffcff8f1c39358df4bc64ff9e10bfcc7d9baba1b0e49630b4123ff8087cb2706384d38637cdbbefa3e05ba357fb1a5cce40f961dd09331cdd13020f77a07fcef2a4811fcecf41341784edd809f1cf2948e8c0868fb7d6bc472f0cb9c05a1f2dd41e442c7079b46102f14ce10c40b1016c3c9a4841c368c1f6cd14776a03935dd06bbcf30aa1992c90823515124f5936e5fbf1e9f5c9338c458c510a641d27764f212959f8ab739a61ff8ea15a88eaf7830de9895692c9b64e6155f3141aa4d6cd2c08c39d2e679b029c3ae5862d7c0801278683b53a4f2520fef4fd405dd93adaf4ef6082ec0b8aa19365c717b7f22d88d5e25c3c14d9ba1ed0141d8938e054991e35ddfb9a26cac2abac9f68f68ebf773b592bad970b7223c01f12392301c8b6d6f2004a09add83c978961dbc03cc3452338da37238df70b0fe74098620a44ff6e62210ac535d77d6ca16f1a057b50c3145f809683a41ae600d7887884c9b5cf1f85bc39cc44c55a0fb930419d1c24b99e4864f8f5f9262bb9d1b58bebf862f584776a85dcfda87c64dc55ae4d40f691f720ad197b8dad6b6df2d85cfe863f3e09e84162f6fac902096813bbc7aba3a13c630cc25000f3ea298d5277afdbb6c319ee9344fbed0dd86939906ac2845846991485aefc128a1a2ce9606e073413024fa31faed002c40fa69d76a78f6174c03bca1b49c903f8e7d1f51b89fcad78e4d0a5e2830c47e274219537dcab71230651c8e7cd1af5b09c26328b37c470342bf87f25dc44b1f4b4bc832e74f93844d6ea79f08cd94e107ea2ef0b512360fd10fadc0295575444725882bf7e52aa3ef56949e383f66d5d6b1d866a3083c83b472f268beb04cbf0f6008d94a6276bd71e58778fafd20651b61445adc2761d818311b58bfe817e4d2936e3057f54c0afa0dd3874fc5ca414672f7ee2df0008b0d1b2ad105f6dbc5d48ea5ce45307ff83c656ad47d2755be5e6c42e9535e30f7f40172b2777ee684e7b87f7e0215645ca35ffb7f7ad9b471256a10a23f70d8f87c522a4174ce2c150e621b6558b3679db9e12de3c61c3531d5ce58973cccecf22938c077df330bb77a1da37d1eddf80397cb0681634db9082cd331bcc9ae16d0ee7d1e6bd4fd86d6dabe89c0d9685842492677962bfd77573b29e495b94183b42c5c5ea6eb514b22a7c2df7deafae7e9f3c85d226960a63f3a2771373cb89d208a982d91de981ae61139dc06783c449d60dc5ae57c98be3e006da5841965368b22038d70df73bb0ed66bd6dbdea9a02428b671744b41f8de3c6c4229b02fbb4527ce2c9ae83a7c3c4839d762a9de46399f8bd84ccec35cdcff66cec2153b31ab0f2ef70bfac2eeceb8eedb4e5164ee3f357da5492c5f9860a5333d7f20e93640f21f63076ed118178b9da100e03ab27209dce3adbc7d5b01b2f86d479b8ac48924e2b31075a59e1c8cf3ea5c5694c6e7e1144999f7db7e0606000abb60fdefc91537a471c9d9481fefc266b3225e48617a446d9070bcd1c4e11ab30392cc4a626c32778f8ba53ea529430dbd6a9b1eb780596b3064dffa1df34874b6b1436bab50cf9af9f8738252b1b4343f13148e9e0f8a770f1e0795f194868860510438c9cbe11f210c28ae464605a982cc3641792ff36661b349cf4c92f81ed9f1670a269c27a697eb480d2e16d2d34210ea8bd4480cff418a65cab05a6bac321b7d8859ceb1c7136dbf3148dfc553ae0396781fbca8e2e28c172f8de8174311e89b1f579f7febb82fbd285d1c594bb208e76b9c4ab721288d2a21d13ec6a43ca03e686ac8e0b5223557374abeacb8985a8e4e03fecb3336133d7a980bb4f0cc9d3b818b10f56ad7cef4f3cc661716bdef900020da528969ae11f81974bdd7bcedbee0667701d04d01bfb0ec6fc09dd9141200d5cb84b14935cb4eab35cc0f8ec7c8891be3632c8305ca15062dd5a717c205a1c01470dc278d1c080fe372f59d9e3cf46b5ef1b882e3936a57d87e27d294123c21ad6a79d99dd64c7fd659f805676cdec43d627125be5ea4fc18c1110ba79021915209d391d2742fdb24a1ac88968ad0e57335b42801baa898b4d31973c7b52477e8ab764eff62245c5ad11fab3a61c0340bd5877c7c4f385867fcae660c6c88971762cf331c02993fc35c9c03d69e8d2c0e1f3ebdb5f006673fa85e27d7a7fb4cf44a00fe7c441900e3d824106e9eedf487171f73ce40010e240ff4f6776dfcefd206eac7cff5ff7b27bcf283f4ff65cf0f513c9f880b4f8a0673f932737155e03747a32a4c7d78e2b7dc7be9c0477a6bf7ae4448d63ef124c52d21d53f508ee218fde2c290753d3826452482b93fb586f735eb4f65112f8d67a085e3f673f1a932c9f20a109d1717448a12b9d1085f6eb9921b7d387014d99c75269ec19b721890e8704a0c25997fd577bbadb91bcf21e851f5bb69788a0ded4973b01b9c2483098e1131df60602fd11812da3122735a6a6b1605ae52fcfa36284bc9092ab8b02c14649107b56538ddad823b1713dcf9d17c2bc3183a8f8cb99ac139989329f0741fb1a6f63a07881c27a8711eaec49a3b2edef9d2c5ac37a367d7726306acd5be183d171710f1aae34880555fab2978f2826203873c3d62bd3b56b18f1903a8827183af00de0479e2bf31a327f9f7606a2cafaf6e620fe8e47924dadd315f8d4fb56d45563849829d5fefbb28775199592f956574198744465edd090ca8a72e76da29d4ecae34dd7bc98e74e38d3a421c0f6a8c58928a1fab14bf4e5292752abdca0b0dd5065e4e46e77a2a5839e83fc2743d54958bc44d5f5b872da7ef57f5441c6fde5f695a4955a4fdec1e08bd8408e395e9e67a138c672637c36946d49789c3ecd47828a933d6f48de627e319874e4b3db9e1676ec96f90519daf8010c11ed5286781ee41799f5d6193f851a300ca4366baa69e08ed0a03b252eb0a52393dad17a55bdaf0645614fd7c4c0db98ffd61af287b6549f71069626dc33a322bba24109e4f7745f6de20d7f4c86a413acb629cfa5c3280d771b1a244db7ea7b840304237f415730ff23751fd1247627b8aff9c0c66fa3ca0d767d2dac2fd19e4ce8bf6000a55368b482cdc84e3169a5ff0bf27f72dec2db5b0a922f0be5089355b4034336de00eec2b36432328460f125cd3e1a91897e406a9405e99ac6534035d8ded0528621b408ea788ba5212cc72b45b17c4864e28b70a86aab11f4ef4d2de382b9eef6ac25fb24177d87422b87298d5b03c52c050239df25c198147bb2c67f510e598f01d421c834712dabaf5d6b78b9d1d12413ff4968f2843c7fe333e4daf3f7209aa75ebe6bd8c80b1c9a4f275e0b838c2742428c484a943933c2681a37b11d700abc01c9da74cd7f88ba1a786e82d5adb8c38d622cf62697a91776736c148883cf72be5e9be0a59367357ca623def78151fc15dd7da33c01f793e7821f77d9d8c84bc934137305207d75bf0212f5336298b5b62d6e9941ffa8c29f0d8da68e7f3f8966d923a956aae82938850623a0624036a7ad2082b075bb75217266c0682e544a6ff113253323d84b0a71a9fe5c69aa7dfd123752690b20549086826852e2995c3c3175b91f5e0303f30fa9316261a9ee99aa7a77975eef68578e22d32b314d8df125abcedc645e5dea77256a492e84a6dcc949a2da7d5ead7b2c16eaaca285f6b954e376c43f38e0b67ccfebbb82753086f1a62a53a594fcb9a01b9d151bcfc194b66c998fdfd17e2184e4053a723f26a2a5405bace5124c384f208caf44339ac4b7fd2aa5bb968d64ded2a1dda5fa0f53f7085032dcb121d62d71afd158adc7c3090d1bddca620188dd9fbfa47b6f7b5a230c2d3a33cce18d410189b7e16b163142234bd8d9b3cb5f6b642ca904e62c1956c378a201eb7ce4aed7bdccff05d28fcf687f85b7a5c211a0ff856191194f0a659857b40e81449ff860f41111e6e3f0e4279deaea8f6ff58c43804a9daaf8356ee027af08eb3a55d413da2bc062e84dd8c58fcf8762e32e97db15e1da17823aca658052dd6979b0bd1d70930dc08323f258a8feab3f989262bab2a38630a1675fa98362473ad3efb46e3108d22a84577933d5c66fe5103fdaa5f1840875c143efc4be45c0aa69e75b9cbcb171bf55f78b9e94a592e8aa7cb34f043aba7fc331a4d287f4ffcd7fafbfc4e80233982e01d111a9547bdc1927ef9927f83554fe47b4fbaeacb48fe2b16576f744a43653c3492f4e33b6d373216def92e86da7d43b98829661d8deec419ae6160eab51486338b95fad6c7e23be861bbf844bfec76581d08addf11e06a0bb783b3339c4c93af8c7947ebefdb0d3cb560295db6ab030e6ab0aa2e06f43d9e222baae8a3be146fd4e041cde5a071aae0998b02cfd2e6baeea2f7395edcfec16d83a36b5ecda7f4f146e669794ac869068bc5a4fc5dec286a9cbd9fbb449f021ada4d2ce17b799d3f61f951a7ae9292bd1836d28567be85e2037495aa1a9ad94280c781165be90951411cbd490fde0bce3127626e1d19b878511e9f68b9a4d4a86803b49cd752defee7861989eaff12c335e5c07976addfac7390b500b3ba022239d7433ef0ea369872b46d981b479927d17f699e2e0e6de1603e22ee1a79143de437adf3a7e9fe918731de87aabf30c48b7b22eeb65e6d019b2c24f3a0fa0cd7d7febf95b7eb4110f6f24d2a964536e94521402391203d2915d5ee8c41e90f9ba6eb6b8c80fabf4d8cd98352c849eb2060bcfede583154370c0a5da7ec96b8ffb6dff613c723d38abc8048509b0a037a682a85d741d521671b6bf7043da9139b5ae0fa1608530ac89123b16422644635f7668e5ecaa39f2a76188e49cd899cd2d5064b9c1a2e560500463538327dacbbc7aac217694489493d560f0842cf6c31abcd58384562521f36730f4ea936b122a5defe08b63fd94249712345427c25112e00c07ec3b3c886d2f72eeb0f28c6aa7e7fce34d4dd586c2bcb3c49a4258e84a711aaee77a8a2ec15d20accf6a124cc9991895cf07d1268f6d0e88440897d84609d1f8ee22a83954aef8d74649b43c8da2bbf93b3fd2141a4e799ab4cb0ec53c0a2ca5ec7f0254354aff6e26f5eec7794ef86987d5ffd5b9961f016cf44da07c4690ce78e979e7bd7603fb648925bdf8b0a0e30a71141d5711f8eadb807673ba5dee2d8e6966f3ee18aca52f8e58881bf1eb7c9cccdd5b43138f291ec16945281e583e2deeaa4c67ce3def4f55d08f4c8fbd72afc5e5314c6b91f898b8495dab693f74ed99cb4ad8c4290bb5ef490638993b835a2a0a55a9daeac5d946f7f9f39174ebd6a1eb89441667094a9e198085e92a3eb2be314cd721b700844cd7d1873ca7e24a96c265482afa208519b82bea8e8b2e58ee1a8f0c82a4bea7473042cd0b16a73b7b9a11c0fc4c5fa6ecdafe6632a705d0737e33dc3f8c40826a33f26c0fb58a162846421c1a629b4b2f399ed88a7d24585b80d2508b1ebe5fe00f57c38285a01015d5031de7da3dc28166ce0cbe6c21d13c238ace23d07c800e045ac8c917d70482a8579724d113c331f3b5c6e65b53a8acedc883c4a2e33158958fc40cea69f1c9fa3291c0e87ba5d73a8d7a70f1f514cf87ee5701438300dc575a410731d1392270648ca2d9075afe9bdafd23a6c0eb9fd39035327d3d06bbe20c3f376dca16a4dbced9c6712cc4f06cad99d718224659eef095eb931fb3d19022a49427c75f3fdeb7d3cd01cf813421bd9eca64ac2c897230f09f5cbf4e520d7e37c55d47f7d0c48fee943e413c5661a85a787896f1d4a6af59b9cb58dad70473aba3f10307b2547dac900cfbdaf17ac5f1f201a1190307d1d8fe810c405774ab424eb53f07b134e36d5598b18a38ab78024567d0971c044d12a27ce6503e89eda2141cc296bb1303ea74d2d5014f3cf597e45d8102ffbc40d793d766ae62c90df0d1e5273724109886f008b46f594692c9eb131891baf4c3daa8acb0d32e092a125e16bff5e030ccf6e1355449564202a25f6b09acaf86696de0f01229cf9618dc5f7f5e0f72d272de69e702bfc7492e2eb047cf05ba94949cc48f718f6484b4c91efd8886c8ac9b70a6637b32c513374ad7266e61489c47e22d111cd442d5ab3b1149eea1e6e557fc56288fa071bbf796d7b8855df31061d3e607320aa2a075c1c1d52ebb8025122f55e305d47a4a3461f7a23487e081dc0c4b84d0ae630a277acd863b5249ac3b354d07abfd9d8759b025a54d0f4bebc5ee6ed14218629aba45d04768856b80df5a814c085797e8770f92aad04d6dd8b99d1ee7da4b1dae4ba9b8d4c32296582929431230d655ac12639a244bcae1a77dbb08a47471311645fd633e92a07912b571c448886376e6ed99ee6e3a3fe65568337c8dc8a39af9595e99019f5d4f0e3e8e3d468f9fe5f71ac2a9e135f18f67a06aece496a8fa69bf4e97a060c6d8fd44a73443a7e5938742ae87fba13228fc9d46797fb0a84e2087afa7a59c3dcfc68210a3125e472d8061ec9fecfadbfd5a592a187fc45f9a5214afc544213fa31c2b465abecf1ea03b8969c7e4a78a7641c9351c54d891ff3f62d8b6d850f3d45af3914add290f9336ecea2c06167a0b22f0c23d05c6a312402bed5a9772dadc058669e025eb221ab1617d90bc65bd42c64ebf2871741b4297f63a003e45b2f8a4bed5258769920d389fd1e946c0461539130e7bb72c5647913e51cb384ae8e32e32027c2d7cf1bdf4e1812cb6f042ae934519a3a874cddc8453c7590e8826cc6fc8e229c488a3171d0adac0f228c33aa0686966d699ec5098367ba76cf4c643bc4b60d136b9b67198880cf0302334f5f580a71f341c53285aa6edba9b15a17fbb5e2b74a4958ac84d2c914c023ce77d2adfcb5c6efaf9293302c5178c07c48d19a3326e7fe0d77db76ac3a74d406f708ad8338436ebfbc9a4f2a97955bd79c14c925cccbbe95c9f6b2c3ad4833a1c8c55dd35b291f72e1be46fd8f00b235c829c7ac26f9a4fbd72a9dd2c087ec262b8d5d84d7846481de416b71e989a3c18b38a9186c952a8a9eb8a02349b449f794f88667c2db01ccb347a83579be2ea120555a7217b4f2ea76ba279daf913c181d2fcfccb7b39fb0372300ded72a4efbc4d428cfd18c23a9d4f2efcab057a4e198b01d11c73e49a31b7a417c52331e7a530e3b4af68d9642064ab182167bc751f39c3920127e960592dfd21e2533541cbb8c82185a88b4eca5d481b837137ac6c1d93441560aca7c7c4a0d6ff6ff9f60f20bdad98e520e8a3e34e1b6856ac6142cfb6ea05c4cf17e8037a9c00fa0219c05d340501049f7816390e4859387b908da305f01bd5451bf642a4691ec9a778cfec534ea3b6771365fc404917f2cacd5a5869322c2d07f865b3d34a8cc8803cf59f1af13aa67b8df69345c68b20cdcbbae479c1017e678d3f347043131980666be5296a69edb346e105c80148b742d69cb2db969bc50c37a4d00147704925c7ce79c0fe743c63ece15ac4c9159c5912efd86fd6705e23ae0cb1e20be9db138fdd15740e039a2335640b304fae159d6613457196eac1383048f8b44df05495e2719e0cada352137510208f78ce2473648367af5574333b4183b9db9b7c67f066677b5d3ecb5e17a0fdffbd67a7183836ff47e806985f91e1974b2b9bc06324ecb2177951819139e3f2d074246c1abedce43e77edf73e0b9f09396fbcc0ae7704c0764eb6732145cd7af73d23180de5fbedc8a89c4d9aff6cdda21ac1095b7959a224e3351d4457d391e9d1c4f93f8359b5b38506d4a0023b56561ed1471b590a59e74f90ca69a7830a25803b6b4b1f28209d17f51459cd4f7f5e20646aea218722037a9d04d2665d0a776e69398d66debf9474aafc5ac7e196dbe65d724938e1e4f9fd3b351a6bfee4d85e1e191987ea121f688adaa254bed3b00dbf15ce373a6886af101fce094b3b72da85b39e34ee14953044adcea73f274b15bc40a0268e481c898211346ccbc017667081cc2750e804914f3371b54427c4d25ce8e063c2ebf2a357626956864dd4d9a504abb43a22e3c1c8ba5ce3fd3f66580736f3a0b3a1ba97be794db51502ea62bfdf06bbe0fd42fb58edd5970c24eb04864e633c27828e52f6968067afe142c14627bed5eaebd8ffd50edd141ba67cb95bae7948f0e37a76e7069421afb9296b4536920331e0630da4b644cc26d6d64aae9ae271577acb11ed89ab355b681adfa3d4ff9c4e2caff7b660edbcf5789098dbeb43fffe13f9cb3dec3de6fd497c13cc1f1d14f0189b3f9d2f134fcbf9a3271fcec24554864f7def8f5894f92d3df9c7907f9ec84c51dc7cc87af2fad60943b4d9be41cb782f82c79f0660e93dbe2935f7b68233ad63ac4237ef09d7c2ab3d4971b580db9c01c58b475b3450766a6476f54b2907bd77de2f3364604915298e6a2c3a2b500b405b44f51e1dab1378452d420f96686eda8f803a191f93af3e246402298c63904eb107580f8532dca8584b62041ec6306e4b03ff33322aa81b1cf72354a8a6a13e0f5e3dd9e25f835abec40da6bd95c41256fc3d7ad11d2d400efe1da54c0dcf889c41335c9fdcccdb59d6526a2282de287d39253e7f3f81c4ea1ac066e8a3598e5c8f37facc3eb89e153eb4c895689c893e3b4ac758fcda09fef4c78182bf76e28a1dce5509b33e1f3be63d647765dc2be80ac0d12bed01c84869511c5abe5c3cd404cec62c8b1a9a772a1bc11374f543bf599f5716996997f482156e1948b46a643de94f6fdc5a0bac4ad9c599193ce3de8d52368a94e63b8c124416b2820810670f64135aef0cceae6a0a13751453535e365d77b24ef10bb0200bc71e70662e81b7ea8b9778c9276b4881c458b21e811d937fbe9b9d97b301bed25b1580b9510ad38f629d7734d79ad19d07ce38d62c839e5a27a672cfa12b8474ea6938e832aa1f1ae6f4bde9e615560ed478f99df6c405a9489a7cd840af3526159d3d3fd95d2f70b8e2bd3cff20454edce4cdbca36e30df797f81cf45c83403fdb6bed8a85729e717327ea183846256725fed26f43d33304162c0db9d70a0de14dd0a72c5d0ebbffcbfc506e1b402084a2ce3a794d876de756fb632ac662a185b9cb616b09f26368cf768afbccbff7dc0dfac8e97b1dfa9e0e54668322d45cbeba0488a366d525f869581b939cd21f27601b83a057816d02bb96f40f9a53a99e2ec887314816f393522aedce27fbceca4b5ad4d48858c50383841d41a5352e72a28580116d5958f04094b0de233b9e957f4c578a3ebba404373cb4628e75f3071274f3a5a210899f22af25a54858b513311add6e79b5acdb431978e8acbba26e1f679e4d803d7f94417ebb6f4facb46817397e38dc2777fe4c3fab208c0e70515b1476f92153476b12d374fcda0c153ef1ed1c566803cc61396e4087c4e5a6160b3968d8db8e6031b23825aa996a0979ce7c5e4c715979457e3b9a6e4d28acc4f8795250939f31fe3e39ddf338f36e7a766173979d457381d9970d58fb9c6f04c7e15bcb5cd8930e4f57f44cc55d308373332872156374c07ec4bc25f8953b989f59d9e96f564b2689ab773521b97f1bbae56edfec4ad2e688aaca501522df9b9dd6048233c97fc7f4a0b31d5ef8163eab531f90f69c12f63d5321b866ab3f4d7e5eb9e8332408b55f96a6b3197dfca2af64bc0c11b4e04a5961cf2b20dcf4d7732c63a9122911557fac23d57ac13c33150676d55d7a5a0a0c218c6643e79507227412ecd8f96d4f9303ff70ad96cd5b4db79658d1e7d418c373bc9a3bd5ae7fb9ade5793a2af80ff297bb6aec956352ce772323b6a0a0736907d54d8e330d20e279c758d755fad6b99651bcd8a0fd7bc0f71f5610361f47a8b601d733dad5f94c3e8c1d2d5c15cf052733092a663def99dbb3b9647ee7a0452f5e9698388661e171ebb218c3a226cae7d06e9949fde1d1061caff2be7a01eb24e3eea5acb3d29a4572f708609e06ab20770f4c8fabb2e7e176e2a13ae163883a4761ddbdd3aacf500c12e82e15902e756eb1946c44813a5cad53a6a1763f94c1e0844fc24a4373734ca677689237500234c53525aa1f98ca48e76171316061c58915ac6ca443cf47d3590f4c5acd743889d1052f032e28cecd304d8a910a3e555fba2af46f3b2b57027b49fdd435997e67ef5f7299c2f9bcfa8d95c3adfc807cf7d923d0ad09e95d0a04fdc2b11185a3e18148c0ad16a64fcce0bd487a67c9607e0b7beb12ca607693fddaa3a11f0cb97ec4bcf5e097b225860029fbfd6041a178ed933405dc0f4b209d4d363d453b8cbeb1bf8ae66f55410a1958f708e8b86d81827fb08db9686a3fb563e93e0d03335f986d65380e84148c9f692d8e63992f691fd0a6aebb42e4c93cf04f535887dddd4df9b8e421cac7fc1b6500e81231443a5f4e1b5901c4a5a6301e189a27d926626c5859daaa016bc9db28853750e996cdba55ad519a5d120fc9a8a9a0b909bdf9277b7da59aa45abda14e02962798fbee541c6a24c79a1d4b5d62443249262c33d71fa8b10e8723b2aa7125b40942d3ae082a68070173f61ccf91232d14fbbd999c6331f13cddb51b39fb37fd3e7c510a5c72de12e46d44958b44f933294901dc73863c553a53d66975305cebf20b0b96cdece36da6498d595382cab6c4773e4aad2425d2ba99acd4989ab575f66c8c0ffd10d7a6ac1c4a1c80c5647f675885f31101d85d459099cd2adc7b5ba0c033b55dd137340709cdfc296955465ca2a7e22d3d471f2cc343c00d06d5bc09c666b36a48b674c6af76782bdb6322abf573f27bd7db07cd8ee75c2638acf6774fa84369926027ffe8dab2abdcbb89739739d2ff1370702c651522e72f040190d028df2500c924f331f1955e50de659137444343992b638c7ed54708c45b952f2209ba7fe1a147af3ee27ba738d327f1b8fbe76af4b36f23649fab603ab68e00b8231609c75100e352eba0d06b321c7c3c0c82d048e27cdc68c7e2e61b7ae36db4f11b07ab9e8107d89fd60477bd03183b546d4360bb63698ea6ced68a8ca04b4fed9ab70fee73a28ce01d92969c016df61c5aaf30eeb9c32d56330756aeace08c4ca35b99f7d96f6b44be61d104b1e8d4d28486c23330489fd5bbfc34b54c45c0c0d2304a1d74b278c1521b3b3d8f4c801078d48398768a603ed32ce56546ff28a4efb3504aecf76ea27ff1ac4a8f29b61f981fa6182ea8481abd23207b66bea352a063465473b0dce8efe59c9f01fcb2cfb12e22a99798af9d1f5510592a56368fece05ba0ffdcc9d1b3e241a45aba026c6686fda33698186695c53bf64f8d51a73123ddedf0faccc71085d42fafdf088946e1cdfc8b062e86bf10c233b72c5cd8141feac6ac949b995386624bed3e7ab8609d9f9e1fef6c471de71c077b53e3c4747f093abdd19e9ff5851ede18e2f56c6d42cbe53ee3655ffc240bb13913fa28af51f1791dd5e3345401b68c0dc51058cba00c14c352dd5144ebcb0fa06e5658694b4cf1a78027183f3cdfa0bc64d04a919ce276af5085c862b38f28191fe0006bafc3302c6f789a44676a12c1d1193f4037ecb6dfa174b110903ccb68ac9772600413bf701bd1f4ea2df153d39c87a2c59f5e9f9c3a6ee04675a284419f90f312223e23b199e0cebd8e22fcee2dcc48505059a4f70d542a40df289ac9e317f03efc2a5f0543c4be3851f9f9231eb99e61015d3293b9fd5ef6e4103567c55be88fa304cc9c8d3f33f5952e9382a8c434200f603a97fa5b7459d43b1975380c535f20a54963ee299039dfe7fa66d45f9c88bbe85505e33ce919f721694a7fa3ea000d272d11670b46519d8fd1f34ec844ef5927e0982a710703c984a9efb4efa2fd148dce8cd1203340ed23d6a7b4b7442e7d73f4cf15020687350e8d6a81452b7bc05aba2fcc6e92373d061dd492cfc24adf9602df0ba700b407aa941ce87f1afefd44980909afd46e83fcdb93be12f38e6544eaaa7c0c416f8e37f010c83f2885b5aa5442776cddcbb845a9c2473567eb0c9c306695a3e678e30471b40c118c9f78877eb931af3172dd5495a709f82a24bbe60ad7f8610923a4e2407c9c125e574539e444dda549b3980ed0e6ffd4ff03f90d6978c115ae0101fc6d0df9f9ad9044db0cae154712ba240030b878fcef10882da9331d7e8c9ec118ae35b91ac9ba850197fd9ee61a6305f65e880fc5e59c0c722f8a4cf3e357f5b7dfa03dd552387c1a1b278721dc7fcbe017b790ba40c3266a7e7f029d9e0d450a85a9a722b3ba73268708437798092d62b2666d341fbe2b94f7ebe5b7abc23dc9c87ffbc14c3263f5be40a80f726f039df79201787b422e125c201a37077c80cdf0ff5c0f30c8d8e7e8db6b7b7a5920cd7690344aad55e654f382a1ca8ad1a679dca4c6556c732e799f7659f50eecda5cb8c4c369a99fb92d91c60354510a1f3d0ca97c1e37d5f935986dbebbf5260886cc4a1ece44fc386f60b103c89c185712253025b20e483c0f8f52b4d7819e4cf617b6040b4c3e3f591472df73e100eedc96467342201a4e299dee5ce6a97bbe4885d83abb78c7b29c18b9962620c2a1136d0f48381d71c934b7d76cde1e5b27f881a43d6d11f3ed4785a8f165ade27427864bb52b383c7e5493a8bb30fae9d0659cbb083063a16fe611e9fa7b95e21108352530583a00d1dcf333d236ccf46f59b983e78d66543f42056bad095536708700f1fbba75b54b04ac78a3825f48295b8766bf2b4beeef02bf20c672b2c326572db24efb4e810f41e85627f29ec1637971b718ae3b6bb933c25f769de7f7880afec310c234f8708e4ae4d0db7024bfcefb61baa72465f0a38d01131326b6cd3e17a810c861e5a8f545bd220629bbf0d5a11efbf21c4dcec0ff8ef05c597bdcf4b710526ddfc6c73d40ae7f72cb42f85886f152201880f1de400ea00b7124bf4d6d9b08bd6f1be74e286638ab56ff22e1654fe8313f4027809860fcbd33c5fed46019ee151cc5981f2bf6724a430906903fc09482891e82c7edf890ffd6ad5705a402eaf201cebc86b16ea2d1025e73366e22653c33b8b2d3ca74fb0865cc16cfe9e813e431b9483bec0bcff1659208166a8e900a6f2b79dfa686de83939268b1763805a4f39e8469cd844169ee2375b1fd666449aa7bace06e65964869a8ee7fa5ee8c9defc77fd4afef7c127cfa8c7623f911519c809883e4259c0c64e06da5e3704755f71c58606e1cd70908cc6d7e435a139381dd19657deadc0754e31d4a2540829e1d8074a8038766fa0835bd83aebb8c614e9348bdd0ce6be1c435500ae59e291d3a8e35516e66aa891f5508f345dea9017aae3d248ea5116bf3a53f046a2958dcb1b73ea9af407b475d59f6ee5d4bd89640dd7aec0def5e6f46993ad6d2f747ef8660a6a7c670015c5044d0a0573e5808d88d97b33c40fb938d8e1eecb6679aea3ddc4a3c87d8ffe6e8ad5e76ab3cba27072228db15b96045a5d5d57dbdffc198bbb1f184f94b4e11393c96123f3d0e4bc1bb5c17bae8140abe05a00686901266802536ef83b30058b000e65106abba4f93410d2c66642fce012013e6defc738d73abefc54c8f4191369a0b95d4270929e24d09648489359b6573490b084d6a9eaaa9a789c7bf514dc90f38753c26415819fd759d2d0cb14e8ac7747e6634717bd36fb9b5b513150f94c590cc58c5a0af352b2e670b982077635a8052b7bfcd6ad0ba52bd47f93e39130b19fcca48336991999f79ce028aca249d0117b6db4ee518a4d6d0f951a7278382b66f6cd760b0f9129a53c72e5a0c2e07eed0a7d88c18c18356b479ea7c1a91b3a8621baa88890d7ea4ecdbc0c8a6b6d9575e440a50b09c07ae96d114682cf86d03b7f06b2569663006746f23435f977819b35569781ad66cce35d69544a3eb46b3f469bd219b3d15baa4a30ca4546edaaa7d89c5920f2987cb27c5ee236d13518d7182c3fda4131455c161787a788fc05b8e5c8714302090c5e104d44cf4e37037e8ecaa9a251791811b10ef76a6fac1ce90ebb2e3c5b8e9596d533806fd26ac86f1b74b60ba2a6a8617e089dd900b841a8c5747a2f2f0d8a887aed8afd01c3de5d44d38f6e4f81b0f01da3fec984a2ae696e7f1ae8ed7bfc1d60f2c25413f168b4f3f84536336b734030ff126fe518c1a103f5c4b8efa6d8e2cb15df884ede0e5387f4c3b404ac0bb4d1503fdae1fff5e82fd450718cacef41a620bd00738446fa9613abd04feedfccfa062759c6f3dbd6ba6679de825948090c46296becabfacc0fbd8ee8aa0b1072c4f471cd11d047ac52c382ba8d66fdab6b44bffc26cab63b50f92aff00dc905683dace972242985a42d534e9cb190d2d791b74e2dd0df5ccddfd3837d0df9861493d66051830ea07b83638f66d60eec8b8b1ff7b471c8ec3b3afe8bf3ee6e0518fed3bd51c15e0b468dee02692bd2d79cf4a29b0700b6d59dabffcbd9f951b07fbea9ac5bd32131d542229b6396d4d94c73acf59aa1e1c534da40fa4b885424628787a981ca38a1a0c0924b6a1c2f419231779fd0ca543c4a1ee22f7cdb8986dab79c4cdd0f01370b9ba459d72cd58365e6a86bb8edacff421942d4a59d7911df821b8ecd06924fb1a7d5e92baf9fdc02ac49ad33cacd48d387e36d705a0883324cd1a6a1cbbc23d0a6d01ce56078b7e7b128cfd516d3c8f81f2f5acf77eeab41ce5d44db9855e3520d06b61052e5332ef0258907d4ab000371e0848feb1b3f5dbf96d6efb0f9ada0dd86781ca0fad7c60f6fc1f7b46f724b6cbe1b86b4c5469d153f26fc8488b2d41ecb8ba02ef335316c43df3e2565411d613f8f058881024ca2ce59a8d6174de8f8e721df1af1f2c2c9bfb6f78a5750b4d225ebecaf07af9d146cea33f4592c27558946850a96e87af6a7e518652facfc6de5d3b7c5f2006e5504e9dcda0a7f718c3a8633f71f1f1f3e55fa88b27e79295adfea283ba7e75d26b4d585623e6af064a0c638befa9f8ce79f83128f8acda63dec4bafcf3f589a3f950a69808939596f0c9985d3fcbe8791e797ba4ef225aee267fa049dd369b0e64bff89696c983947dd2e8654bb209d1cf93c8ee77677bf4ee4a4b42e46fed8dbf87b7651ae9ce204d5f3d39f0099c0c94676f5b93c3e05b27c28ca31992e846279a1a7a20e610782638d94e61f57bfc99da27a7d50d310ad34a20681dc347f907590318cadac6611cd10abe5fb268afaf725148eeee9fd71c6ca1e4e69834384f77d6f47deb1ec55ba7cfca43fc487dc17616e13aea99067b2470e2bbde4ded000d497d6862099f54d4b92f3e39798bead0298dd0ff2589f3fc2dbfe6e106f3b92f58ddb17590b169f471931b80a78b7db3ba301e9f2d51a6eedca1cf4f4f192203b2bc20dd430143cacce2931dc61e19eae43aef8eb6d7e958fe568df647e802855484982f93242624d6f7645f590d003fe9827b8394efbb374769296a72f7b738e9600470362c310d0e4ba6abd14570da09cdcec6a01a52b3c093c72996b4022fefd06675cc402cad50e6119aa10613431b42f73d31161a7b3e13ed914859caff9fb745a77926f6e7371eec1d04aab4d6a0e1099a87fd9a5077db282d89620cf56ac698c6cbfc9d99604a627cc942818602e07f1dde8b16552ce06bac5f7b04d5a3226f7e8a1bdda68b14a58c812b0385ec6cf9d301a333287ad3a711e45f5f8753205fdbe2fa90cc0bfd43be2949e3a2e7ad088d019e85cf79f26c7fd6e10e2789f36058fdd4b9897a28865b38ed5697b30d1fe855bb217a4c00f637670cc852d1a408e3627c07afcf0027191953469fb8432ef7a99a9fce9b128df611e63706d9f4326f039c5cde1e9dcffcaf81e6e2f0cb15af65b41f9f0bc8a8c70c0ae951d373b0e67bf0f0bb42730622bbb6cab507c6fd6dc05c95856a7a3802f1d1cbfa6c59f384da07dcfe9e00fde7beb8fe189b09ea1b341699ceb9f4645a266cf741a22b52c83987ce637df8c217cdbe09805cab3f61ca2363993d08ae2f03e51a473f40bbf480afa75ba7537610b455bb27e90b6d352d22e92582e8c99146ca478e959176890335cb3c3e7af924aa54acb1e85a9b87efc546282db367c29da30ad1974b232f7084c59cbbfde1a0e060da5cc5dbcc3d6a8dcef6937ab536b9d70a31aea5cfe3e3cdf4009348e993da04af404b9e96608f4e7442683f4b80df244360909c363308ea927234203b567973b8b38d3102e4ff15b4e09647a895e701f722d89b3f4f2c7277dcbb434010d9fd6d633eea0ce117a1da4ab9fd1cb055e9e4a5e50a2c810986caea6685f7faaa58d3cdbb6ebe2e203b26761adecdf8c3762c2fb6980f3c38be2af2855a7c533da0ed2ad99984e9c0928213146f5774b1cf9e071e3f11c7128cb16cdcfe15fd10833496017911e38b684563c3c9db0cf7a1fd606913ccb40c29b6746e4210d021a7488bb47f05841ee55896a5e3d473e1320629d15e6cff25420f99680ef79146f20092b66cefdb84b02fdda4d506e8eb56565fffbb535dc0f0b0d81970f50f7a84e12e701677798e90634eb4e5742a78e90dae5e76ca2378b6be616ceac608f5d3d9b12a663d85b41637417dff25a85b896a5b72e7262168dc58efb01c048e01fc16269f2017fc62d59cc4904579c54470c9cd6334e6c18e83a20617d0ad9a6b5c5f5040501dc3476d8051ba141c3b6fe74c58ea78eaa350e40cb86d43e25300296c0837182d3d3fb69354b509a07258e3c5a0f67428f8cd5de01fd81d6153bdd077bd1914f61bf10cd610bd616072f062d187adc4a39336c595a0b718ff911491f6627112854bb4487b174abc8859646b4980a9ffc227720918c82da56fffb985cb53931b3f67361dca5823d0de667324e0630c9ea5f64205db035ea3cf919a52c705038319372db129684fe34703f316f6c3c294fb55c7fd3a03fc18d5479f1f470320b8c32fa31bdf46e2e0d2c0e88a20ace6202c9e412d34ed029b6e2cdcf7aa670fbf3a247c1247dbf3e95d8a0f1016be9c845ca37019b94161f18468bc900ee33474b85ebd11734c1095e073c6e129337145569d043838185ec16d377961e42446a24153f525f64435ee3c538f59f79b900d5569272a796ee299cd66ed1f3348516daf7a7b1ed9865362a27d86dee340a0a48781a87658e1e01397a22ba74f8494e076fd4f858bfc94d7017a78cab72e6608265619ab01e85b13cf2a69f438a04ebd642f0b446b7b564f1580c8cb402615831935ce64c9bb0e125b53a2d98fbb3bb68b1f7b886f999a61350ec3b3f2caf5f7f267e1cb1c9dbbebe2f792f1de5fcda01a6a6386ba933b9ea0ab765707eaceae2d5ff2a3e3df57dfff802f60d712682d49a8ddd41ab29e9b8f926b40f32257b8d85f3031922287fafa9af6727e3d513cee522e16e2c7f3cd58dcef8af08d527f78903153b3408706090ea668927e362d8a5271028549ab4ba49b414653c8da49475b4cd719f1b4a571650656ba6d082474bfe6b5f9002e4de000408ac97b836236394540d1e8e66dda11ce77e6b62159e1459f48bed32bfb24d841a3a03914d05351b7c29f93de7162d1838c136759b7e5a206a523cdca3824fade7b0e1013b05cd24399335fdf6e95862f88ff32aff1cdf0a62a1e8f59c540ce2d27a26919f805309941f5248dcefe02403a3dc743867a0b3683a334f27140f36892ffc0de97ade50fa9b00cb982fe2d6450d0d6601ce9360e51c9575ba704e473953950d9b396d7fd9b93ff67e6b593a46f5f367a7902ab03c3a22efd3600d820be2db0b75fc59b93d20435adc3c0fb0a8227d74f7da04b2b0c8e79ea4222df08874bd5099ffa6581626c9cd427cc8e9363d5ccb281e3398f5c4e69779e7b4890e7adfd1f126c5e4b6ef706fa6fc8f1770d3e4215f453cfa0251b1ce75abebb72aaf121c34978329e40df25ef67bae51c1cc81063303e22963902c7b022e4ed23510eed47bb8a47bcd2d72b2d4acb49b7266a93dcff985fe81a862e05bb509de84a8a684ab1c26e47e765507cd69e811ea9699ff853f9708ae66231e61ae047f2109a11a3090a31013d43a5770d8e8aefe1c00d07775dc7570dd79cc7767221ebe84160408957f0123a59f3b0c166e7b0fed0ac0435789d93cc6154bfe0e51308ab91da328265b37c42be7b33ca6d58c76a1c630cf4a71cd6148550daff803e6bbcd6df351eff7a705f5a4a48694b442ae1ac2493aefb63d409ea4d3f3be47acc83c0b1b6a8363ca64dbc71d4d9769c36885cfc67e14f35bdd636e5adc9cb095ffad492f38cec71a6f37d34462b7dbb8a1d8c5ae247467b7f23039b61ae4319e6b232192464c71393076e5d499f41c63f8b3e4edae017993706eba87ea80badbbfd884a5335f5d09a40d7286c9996d3af2ec4b0eb8ce3ebe7ae89e1dc82fe6f832746c0bb79661b7f5fd4eee15cfff76272c493fec2272209025f4bc8447eb75eb311964a8f6431c11eff0bb565711d03e9889b5cfd5175a319fa2026002279ec74448bdb31e2b5bf5c1236c0a6306710a6e3859a074762753c7d2ec9082a282b8358a7892ea5b10f009dc9d823e3032f6d336437590e3b57f032e10182d99e92001fc0739f915c30fa87729d582ef05b3651d5c07cc50f782d418854de1f92f5be3a84dd4f5bf44fc1087983b007ae4c48cc74f3cfc9d69a7ac4ae1fbb06e5f22e6dc523f513c939fae20e462b55c4eafd47e4447cf54cd2c46f2acb6a16be6e56a3fed5d0b2c061780c3af063ef4bd8efe8b0cac38e269e9495cf335e708939474a05559ef7bc94dbf5e4279b5705ded205a6aa876fe599007b2016aaa90bba899823fd66dc438e1f72aa1ff14a6cea270639e07857793328b6527a41bebeb456b2567bd543c5f58cf09a4adc5271e638bd5c0659ab375103d8bfdaf7ad667164c0f8cbc30b3b500f755c8951e2d8076c2cbe821e19c521e94845181109ef51d589f230ae375219baeb1c0495824109f262772a9f6f018a8229cc52e2349dc7b9e6f5b429122acc4fc51cd1bfa9566e8436fd6983ac3b8c63cb1d15ef285e76e8e38be1218317eec887a12a068999fa351c0ac441c9bacf93073880eccb55459d1485b394b269e920c06a6b3fae23d585bb55700e7661620d5a82a28a38f3feb459a85add51a2605c37911ca5d196744c018216d0a6434cd980400460d95609521ad4b46e518bee43c2ac41fc4842ca448af11fcd0b22176ccba3646709af54b3617c2222093ba0c6a4ead0767fab19fb552d6afdb01e8ee51b4abd7c7ceda53b15555155e198c0183312bc8bb128f33d63f5b216a268d782d0ba5dd7d3d54ed07d5ced0818b94d81c8b76e2dccab11983233e680986b0fd2eaf9927322a4965cc75cdecce72d2dacc2085e9f8d527a68821e6cd83413f49aae66b901d2e301f0520df44a654d09382fb6c626473491c7367b84fafb0ac4db3457f3949bfc8b35de1f2aafdffd37f1aa9f65aa8e6e7c3e09ed7237d97d2551581ef44a1ecf0eff22959f40f6970e0eafd1bdef3e89e2edb086a2502709af797116079e9683283358ad32113b030b832a9d37f70d3cf3b63d4051e3948cfa5c9985ae951c8113d6faf86f54cb424d6b5db45d17ca1e6411717359b921aafd84c93b556f21bc6e78685b148e19870736dfdc87b14800372ff91d1a6a6e98a94c5f2e5881f01dcbcffb0b4d8a0fbef174eb7d39fb7d4625cb9464ad9bdb760296b41ca0560b90709ddb50c911a2018af251442cc4a94cfb855577cf5c8bb14e6738a68d064e91aec723e4e39ccd9d5fa91dd665f4c6846bc7d1cd62d849f453d7475c50e462a6ce17dcd11cd4fe84a6f9981fc9ca66c4a5ac9dc776641a59e15cbf07adc794ecabceed142220b1c6c46aff64b7f5014cdc3fe889a4893f0992e78bbee8eba8ffc8aabeaf6e9c403756df2ba05d14dc919fca7429e00d477a4503f76f9d2f38ce74fdb672784ba8bf3e64780a47f6909df68788c01ee0de5c95fafcaafa1ec95dcb3d7354a28a215761bd3f9d58cba4fc9aafae9a9e5027ae7b1b9c1ec71f31ac358bda1dfd63bdebe1dc8c3ca2c22cfb106d9c4ed068fd96ebe2b98cacc4c92c6ec63f7bb24931aff9645f6f66dafa9c5ce7f2537838b59314d13d106f8c86815b862f1133e33f1c2176bed3d11c425243debec80b2f7e2a72a440a910d0589849cebb40a94488b5fb809b279d6d08433b4e425e69dbe3c19ad71b42e5596ed3984723edb067e4beb20e99ad0b1f2436935665a1ecbdfb182f9a07d348fa5b9bd308e048008d7ea02bf6180696a21c68a8b70306224eb7fcfd43cfc46e89be5f40ba43a1c6a8f210d380466bef870f8bcc2901d535e882904988ce3eb968560bd9308c5667e562093d2e1efa36220be131c098df4e17f3d02caafc3932c9e7a2e4be25fad45b4b14cf7e3c0b27e9520187b9f75a72c2917b3e2da161f90790fa2fb1ce978e2ee4da0540fb5397fb5e0cc44d57c19008474f2839af6d8fc7dbfedd420b874ad63c18c1ff5b2f5ef589170d3fa86121ca415ec8a0b0de50e12925d7db1159b850ec0ee106bdba496431abdec5e9376304b6aa8efd47ec33730f42cc548fa38601bbab60a5166ad908ba79619d1f44472d6cf527cc5118d252c3f23054af7b37247acb3e62149ff95c72ed1d29b44ad122cbe2e627ecfbadd0971a8430047f87a35693f8187abb70bf7c2da80a4278bf3434c6297d600ca87276d47acb162deee2a66c500b3bedba6b9615d3702e2ac752a184af79124bc0fcb3ea5d869e871f5c7b51f00a22ab896f6655a4a5f689796bad7229ab01727edc23dfc1cae0d0838dd9eb865c9bc31c0bb8da38df3423f77b513e90c08b24f4eadb2e838297cded50aeef0879e1b0ade025c523129ac81972f0d9121b106cc701077d2feb6629a1efe0497d3974396fd5eb8edfa2bd65f056353cee5ca667f28e3615a873feddcf7737c48492fab14e305b5e57f0bc161256fe57f202afa25a0b7ff880437a55b431486705bf70d1bf639db776142b8c37fc6eb2dc164f3fe25abecffda032d0c45acd3d41bb433962dbe61e7a160f7017ed20ac9ee85cf1e5e6b52dad12806a6072c4f4ed05e5d874304a61aed833393f1413dcee335fb4d97af4e8b4cc96d475b2e9f94b80cd59bdf386c7029a45ffc65d212cfc1203f0b42e1dc60947e3d0b603c43ad60edbe4769209e7c20bb1f2382b018228ff8787a23505af3a1a4085e783a46663164386177514e066f336780527544b8b5ad4226d81b81ad70a2dc4532d13230363ed086d1a134c3d03f2e71b2f0e8fe42640384411c60d04aa9c6194b2169b1a83ec6a58fab7b7c750a835d4ee1e0d9365eca42c469daf9a25f18c898108c29474d8442faa0cfe344a41121835387e956eb573004ba3079b12d815779d636e5f5f9598bc5e64b954669f8b3721f10b6f5178d6458e83db85cecbc0607b2ccf3b3464934441fc00dc372b101c48071e0b360b327a2a0ad7b320237bb22214b9e4eaa05a37d872def249b18a2e63ef458adc6496a167a53df1868abd17c03a5e44695cba92580f9391ee929d6c73d423cc11171fecf781528c1f008523fa37e91f40d26761e877fb4dbeafe8ffbcc937bfdb7b7cda782c318c06510b686df65b086207db77dc486dff5e4f3b8f5764250775591129b6248225814e7e8f4a6eee82638435893a3364b1bdf8adc157e82908df2cc1ea996ba317fdcce8a187e93c51864ea5d8601183847323121777e5cd22a80343da78a9449e532074763fe327de3b3ebc651a98528981d97152045fec379b42fc0f16cb57eea106e6467555dda320794014b17c7f91058187f7827ce7546b7cc9f5badb35fb60c750237725a053ea8aaddee143ab36ff37b4fac07b3d59acfbea818e05190a3d675408c54385e50349575d29cb29315ac7208e2b61f7312d961b0beb058a3a15ec0df02c8e8b875f6af083328b429790870b01f4ca0425ccfbef11486613389de05c2f6e0c336bb08e285ca031334e2558d8ae6af2a4db49a500f3c4618692a14027310d587c87ff136aefdd8ff23c2cf1791e60d3e82f643c234768b63c764021451d05f7a63ccff5ff7632d103c2131cd6387d0f0bf1d45d42bacc53e72234d130ed892cc75fd859c2a311725235f2690b7d1db6ea43cbb50cbc515721fe842a21cbc7f1da8e024116b380f01d5a37c185d91ceb6f4770a8dc8fcf6b7ebe08452ec96c008567818f0fd73bfa6189d4d18747264d5bd6eeaf151eb39af4e7e6d8b882428004a28ca1ef02684311cfc0c7f9ffc70180ac2db03cdb06463cdc5ec2d722483b4cfa29322e3aeaa1e7c387c18029ee1748f5db925fe9a478475ea1eb040fdc846c0107c4d5fff1f5b799333bf41db2085a48b9cb91f309b2f251365537e1e20542ba2eadba1840daa62f49e85a13fa4cd49987bff402883a91810af7b290f74ffe4a81846eec8f1ebef18b7775e6b0fe458139f7ac1ff5785a1502f70be18812c24aebdf6e88128fbcf78afb9e09ce615d7dfd4daff7f509a445171be962b3867ec5f74f0f23d2a839d880f32a96167be95f51e1a2b61bfd1c573944ffcf47a2a82131fc2ff8289ee2875133279184fb01bb646d4e64bf00d20d91d4159c85233d9e2d719365cf43b1393950cef1b34fae50a45beef4e6bebfd240eab35b1abdf23c1facb5ef3580beba56b91f22fc041e03aeb2291c58caf8bc936d2517e73d86ebca6249f18f653bef33c74b8ff90b6e4e0130087f31be7722b3b8000b636bafb5a2554464fcf598fede2013a7bff063884c57827458ee928a285da517d2567ebcd11814a27ff6ca23114b3c0eebba509d3116ee8e6612a1f275801f9df9a8829b6c747866fd710b7a9f6f06084767ebf31d3f2973ceba2f60661ad3c4b60337c3cde61a2f05c2f0e8cbd2c3864629f88ee17fa30efd50af4b0caad2fa67a03d9939b1575cd6d5c73af82cb71d4be9ab2e0d98ff4ed0464a0a95c4568135cb96053ff5e6af0527769ef47ccc2778c949f3f84d39868be8eeebaab370f149ce4a4c4e75ef4f46e089d7e1a004a075d799d24dc65b353355a117f0816d490c1e970b722de9270540666e4761030c88a32745074f0bd8a4067286e8592b0895fc897b64e147ec7f29add5cc62d2aa0c275c231398fc621dcb79aec2aa8eb990de10cc2d73ac59813e3d64404fffad4c0bd3e3467906d0a347d4c4f8f107f9d10485c7fcbf4ba6ab63e355057b8e066cf4f91955c4c8fd80c5b2381a022ae36eb17178890378c40fff862d6e9406856fc80f4e63c7fd5204674183cb4d48974161075429f8034a56ab4e8b00546d3fb22140c204eec2c17efb6c68832625e9c74126398086423795a0be0c8f17b6d9a7e99235a6007c0ca5eb2120fd4c8c4805d087a9a399679a9d46244b2e5379ba47f0634923c51b3ab5d27b64c7b151ca577a59c88b2a0b5bc5e5bca1648298a8b9808310f19f8a0dee75ff7254195720a2b0ecacc0f451b1de6cfc8495f203e1b2442afbf6d7a2a58327f2cd8c7527789b6e72a3a79d6ae5cfc2ac2239d85293a8597c2073148d1c9a48ce40588da18e44841b882c82098226de1b22d631a442087704829d440a9045b906cd2c106938523d40672f6e5ae197d91d58d895895c0c397da3b3134204a504af91584ba7074bb61bb81cd2130190c62504cb4184418be70999955812d0853880c266826248e25c4363144c0a5c09cfa1b044211120b04bf0b893910417c55500e351c8a048e8029aa568c4c044728fc269047928229c0074a85c72d7f28d1bfc6d616993958d0436f3ae39b406a55a006a827ec88f837c55c687523c92fb07813f09e9412c2fcff0739617657c24f507397f12e883501e8ff1e22c3f657849f60f527e92d307413e1ee2e1382fcaf04be62f64fe24a507b97c3ce0c3611e8af192cc7f64fc4aa60f52793cc787433e14e291d85f13cba4f0479441f8f55076f0a7a194c1cf427dc0868d0e47242f74a6324c5f632f7ff58064b8e602376eb646210304e77058ffb1a9ae5d2ed3bffd3ef35b093cd245d0589dd13d643e1344ad45a64ca0ad04be83f0065b1c1a4d6d848e12128a02655f01e4919f321bacf8de5bfee7f1ef21f2cf77f47e961954289cf6a0f7c475147a9ed4d1d3258cb3ec8192f50b547aaa4737862903652c9dc3d9da6ce6d92da74fcc62e75f6c6a9819f527e0839cd1f3fe7a7362c5a8ecb9bf875ab09ee01ccd0df7cfcd6a2ed0a0653a96e39300934b0df0b901ff04d8fad6948be875db977644d853d57727c4eeb3d70a5e252047790087d296cebd475fa57e549164b15d5ed321ba0d1682c9dd47797e311d211db38e8680992758b0cddee87afa721d6434c5acff94cc3249fd6482441ec92dd6577282f448c7ec39666827c00c846f39dd4b286e97f05b4385ab80fffd4c8b4f640bf513134e325dd09c2226acc39a33b90fdc495800720fa0aa49480bde62da71c965627b4b441f4eb9cf43c6c1155f289a3ecac1d9b146cc766f1e50cebdd03cfa07f2b29f6ab1d365d1233df5741841e9522f2055b2ef7db57f003d77adf0fbf9f632f6cd705d66f7793c735156ffee87aa6586628ab36ae5ad4d90069b7fee9f8b510d31b4dac03fe5e58af41521395d6a462e69decbe3b3afc544c96ad2e625d4a43cb98e2ea5167e21d24e4a5102c06b52deba669903b91d54c139324c26e4825de13d26b2c3a810481c6aad7300cf70337d09d56dbf43c9f7ecf9ab0c4e342df25d54a6ceca704051e47a460e4a31ab490e7bad957cf7134a55ad9cb7ddb58c5b8ca9d69464915f7fad3193c69c1e5e0cee7f31e79f6256db7fa498c83aa53bb36da237852f6ab4f62d0ce2e99a0b0a366e73a65c37e8c9f58fed335bb7d439a74ea28611ca6c1cabfe22f47d78c454ee4a50f8fa76c07a873e6a11b9bee1cb5a28f48915d0c925dbcc8e81788f8bf4f2be93261a29395200175aba8bee2a326432a77471f734fd71a71cfdd7f8558466ab2eef410602d7faa98bc01ade1ce85939855226721493ca2cec8cfc54aa8019f66dd8ed028ef1efec443694b93a43ffb07e81be3a38a47b220d0369ab760ef4bfb5beba16b6a9e811937b9ea61d6c60a43ffe77026dcfe5a4fb98aba712bb46e23f724f4f13266203ede729d2ea45d176e455f7a403f43ac1d1a376444738b432f9e96e0a0aa2ac8e4991c26531a351b5c1c6efdfbe1908ab7f339ede425ab3d6f2141025e815bf25429e6f0af2bb25aa55a4e263b25ded93d91e87a723c9973c75a4059887a755643612a421d97e15473e3afad7fc4eb0fa2cf6a4adbf5d010ffef33f58fcdee1854b9df7c6d446aaa52050a2ba7986a01cfadbb3610604e95e16bdc3cfb86188a610d361d0f5ee3b3964beba456f7bcd41797e406629049e713f6731fbab24c55f6a9a3f40d64b7ac1bf0f03ccfc9d8b7faf20ee0f93b2b52f931b309390b3fed2dee536306f6595670fdaf0eb0b6ae4addf09f2c183f7ec55e7fb06bec01bfcafea441d7fc5d6efd9ec271fa21f71ff8cc2eed936b109b03dfc5a9f5d126a0805bb33c719c31549cabb0cfd37a3fc85f3ef48623c7247bb7904029c78c2698cefa2d0f7f33baba70137d829a6ca5610fa0d122523c0f9b9c6f19bf5ac8f4695f626d7cd40fcfd000f70d730f9921660b333d81e05e393f1e829388ee02876e6dbf3f72ff8800cafeedb02157ab9c2ff51ce99d281e59c4ef39bec80f1e7e4076c758ccfa3ecd01fd20d62e1ceebef1ea8a55cb1e30c2cc5f26706f3392f5dc094fbd20988ccd343ac57be3f4358e5c5374dde90ef5536c34c617166d7ea47f313e5953d7e6719736209ce2cbde9af11f669e529d67f342f36c934c0cfff6efc7f3d28b634ed03b4f88fea6d458fab9af73e473372969cecd9104c94c05367af0eb8bdba14f499d878b18803274f96b4dda7fa60f4209682716f7e53cb9ef230000a1b89dd896046bbd93aa3f9e5922119d70116c29811221cdc4f1688bf60ce830fdaeb8fd27d096266f68971f5e805bf646e4329e02c6104a71fc8c2005874680c5012cdafb11e9b9067943d642bd762f18389feb53fa58b491fe95cd17bab4a118d19494f85678b0e1882813f8d2664210cdaf5139098bfc45375d554d4f6c9305f7838375ff8f0b4f6cd3d45d47b13bc72679d9827f9c67b7271810bd501fc1a772db35d39f5ad3bc86b2e682714dec26079e37e8e468261649b8400485b08b35edf84f1328f5a2441bb905bb568d0898aa3e3bf27d64d5a734648adb55b8e4a5889b262f0fd13bf711250891f9dc68a4e4d29513f02485c895661ef80b79f037ea86c9befa3d35dd395e08965a0bc645d2019dfa6c34577680f225357156c05b445a60c073a0479a763d6a0b3a098d2089f9d8a1744c4ea8722e14d86dc3f05fede8b938c5ec03808e38076eec2446a034952ae5479300d36b81a546781bfbbd04ea9f6154469b8c46f4e6a233acba21e57620e409050792fe70d400f93327c4a47e1ae154177f32a2a8db15d876bcfc7fa9e336e379e04644905de08ed0cc6994b9c2caef40f4ba87ba28d54a75c08a131962b6920413c82b8326c6f512d65034fe372eb40350e928fe655130832b8908c08b2c1d77b99d21fdab033979bb2617adc555e175ffcf965e1e28a2773a92f246deee397e7f353bf386b0997f9d88b28f892aa469cf6eaf35290b4739a30ea6811a52b12dca35d39106d23c90b9c6cc820cbd648964ee8f6440d0124a7f5950ade677341da1ffd4c95bdec742c72831252225c8e333d245bfc1ceabb1c9dbec29438ad753d87a93ce6143e9f1e85f53f4c633d42d8c7ff9ff7d9635bec4673a89fbdf58cc363935b18325cce12cb8b1e81f2a7585504a3acd3e82ab2e7799cd9f8618e8b55629c690da028a546f4ea219a1f7344b890cc8c1a2bcec2141903da33624110173d1dea64f3d42d5a282e00d0455984888a469457ab5a39affb9b57a95a422414638746d9e95c8df194a365ac628f23769278e98b184d3232113b010df5c15180348c0d07d4d098db3015af64e0b096229296790fd08d7a2b39225e31928acd26001bff03a9584b68ccfccd08e0f5b5571c8b4b457b2fb8a56e0ee75780c6a949f8b34ce09c2e1a2432cb6801e60c26495b03621f71e285ba5893e4660ee51c200ccfecdc5a27f6ca7d2f15b041e6fc1805f71231740b5e24e1ed42954538ca6ad7f2182e5dd3c1ac53b8de0e8401ba85edd7530634476b4a1f1c71ad2b9151b52fbc80039afb59b14c997cb24df930233b5a7e7350d132bc392c4458808233928a4f115387706db4be4bc4464c29ff6acba54c2c0ecb3f8b70286ad1e69f6c5b6d2c869b3740e2cb95dbfb4dd9d4cec69b7b7866c0f9cbf97abcf23aaeb0d7b2533c49b042db8b7e536ea27c32d598d7f3ad5d15f0a6eaeaa3d707fbb63c8dc59708274d2fc486ed674b5f81b753422047c1a6c761374ab2c001dcc6d4b8ac55fdbf7e361628abc9aa6c9369efb149acdf32529206d45487b1efddc98cf6e8aab36826a5182c2332a44fa77066ed38eb9543d08f1c09cd7c40ea2c460dc333a132a7a585d007f04c62116f4cb71ce9c1ff711c2b017e9ccd990df5831a7a242c9900813ba5ca1dfb4e02b0cc1146e8304cddf9f73437245e16391533e380b46b1ba2d00acad0fe5c325082a7b2f29be1704ac3d75ae1a65fe041eb494574808f301abe12fe1c9c53d39cb1821a993af14b8b8ce2ba38accc6f1569e29d0ca49789db1605d61891330fc69b2d284026371130357548ae844b2ff8d89e5ff5ff62858413b638fb096987f57017e82ce4f08db0efbe0352416998a09bcf91e5eab2409e001c967dfc6e1109a46336fcd30cfd63c30fdfdd3af82fa448782841cf9f49cb83265cb07373c73bf3af5e5cbb402c1effc44586f89307541601c297bd94936cbbecb9e6ad601fd247add15cdc48f8f86773de7421cd119828ccbdd9f3d3478146424f81ccd5e51f146280ee456f93f942ff99c3ebdeab0618df7c65692e5e6d6e7783aa2fcd6d960fde49d055266755820e66e132450174671beb5df24db7f3c1a7040849d149269a7cbfbdfbdc4643a7d66d73b8533ec4d760f33fe4f244fc0ffc4f88d42b207239078874b707a4611857b42cc6933acb3262f498d5e238799858e8f90b6461405d84458e604c502efa89bca5d14043e4b2f0129af579468cfd1c066c59c4143b14c541495cfda0069a8c85574ef7cdbcad78905ef5f0b9340a7f7a1e0de6a219e576e6df897a4cb7a76e62b8150b57fb10729b2e9bee61c9479d804b439bfa5f45cf11830517fc67ba0211301d2d94747ee2633a5d486855f19e4d64b7c0e4c46dece59fce49394f4c9d14614a51e430bb9e7fc3a9f4e60046cd4f23da3b947595a5a1f8a87ca334eb4dcd4a29e752d907e8d0a9cc0d9072743dd2316b9eaa059088ab198c1d6a67f5a4b63e1e0cb985b111c828fce9d0a8f8ed4f21c2dadf536b12128bb02dece0c5428132aa46e19c62420f39169338d83ea75dda182cf96e62f6fadb61146e2ccc5d479a0e2920ec021e068d0745609f420744a6076446d1c8e104f2c76135411d8c881f8c0cc914a189fb06c51f862e427a27105e1269108b7286cc2e88328c500ff04c12c8004a700dc4599c182271274859c2298108f110c2381139b064aec09cc4122017e3808465806228619ee11825930195e01e84430c4104d18e90b167f615afb9b03b1eb42ad09235342b20def5f1f42c3540df0870983ec454c22ce80873976dd1b373121e261c2c2e552314f55a16dc3c9a85e9c6dceefa66ecd40cc104557a3dc9ebe076a9fe7a763b01b6b538324dde6ecf33b1db8607efbfe902b97a9064ab924d223f3dd08a5e1527bd4f356100d7d3ede26dca7c617ed2925083614aa000a4b1378f8f45409df46f9f364ba0aad18fa11957db1c29b6283e7df27251146516cb55d4ade70a11f7428216d8db14e00f79ab43123ee08e5e3f8b147d91095e7d59840f6d3f757e4ba199f6a21dfee5d1da1a678160ea8464c0f0657e73bbd3025803a1a2ec611fcc8a05106227304ca468ac2bb9f40db25c85c76aaa2672c08d792b38f3fe4ea635b351e34b0c800cf2ffa0b191c5e59e41059f657929070b149697dae0fe09723f14eec110f7b06318f4182b3a751f13f46c3592b732a532f88808fba277ba50ad09533e62e622912538698a6e74161e32742d1f529b4c24b819539adc83fe6b044b5e5a935cc960d6349e934d4e46b6b8e8343d4c7bb7a4e0c5c71fd835b95c551aeed3b8fb657874afd96baa4b9ccd1c7282b6b3b5f1f32a91ab25113c8e995c5d5e0eee178278ad54f43b83b2a44b6f8c2c4cf6801284ee15c25f7413522552b5ef6007656c0be262ea605619ad270e684065609735b1882d578ccfaec45a556d80218ad171b4282d80c118bc76ba544e0f3438edd2d354d6a1e5e18295f012787957a30dae3c20f6b72ed2a43d9c8ccd68659b4b9973ca6705a34f8fcf592a3ce5b32b751c9b6577334bb3d990b5aca449f08e4af87419bf8cbfdb081f223454feb364b3dfb9b5da334a1ec569e9045cd70b7e7ef0f25de8a96296668cd28bd74eefb4a241093ffb71ed55713cee2603357b365511e75fbb9f7fb8efe7f986ba78d4bbaa892339126872e97910e16095e03ec02b53b0e7610c52c9e895093f42b8de6f709b694124e72bb43fcb6148db9c6074317b8c0e2937ced353bf5bcf7f40dddafc6fe07f0de9604c64bfc8ff43700a753a1babaef4bd7e736537d69bf5a0633b274716f47a05537aa91acb4784ab0534d746ccb2eda4fbe7a75852d6553f4448aa99147840cc6fe6ebabc5b37de8bbc3d2a7a3773b81bac74f6583ea4487d75c21da2a0ae1876be3fa923cbc1c3673a317dff4c1ba0c87d337e4df23d6eea901b1d685a8bca042ae8731452c1e38f7cfda7409128116d3632d99d44a82c8b419c3a56a58df9f30517fcec6de057b0b150ce604efeed39ff22828de1485c12bfd128318973a79b1080c953d61ef089707744e448a0c184972ceefd5eabf9ab90be7d7f4292503c69274690c2500cfdf26abb98ebad4ff3ada7f85de013609c16e2a06fad103d4fc54d20203a4b90395a84b130735fcf685f410cb092b324433319bdef5f0782785837491c38a594cc41a32256f8a33ef85467a84d6bee9b3def33606cf120faef4545c25469bf068854b7803b57623832df65883fda5a870e68b0f743c63f49e07b1b2b23534ef6bdc198b4d2ef6b5b7a0a0202c317e7c181619b32b206c8cf100b3d55a5e99b9cd7cb86d3b9e5d9a8454d7de73e93f05960ab599e4619cbac56f6250aebd140a0c940cc090d4aa5e4c92bd248cb3981d730a377ca7f84b132f0fa3d6698a255389ee850c109fdb717710a82eac31541340cc88bd1b55123555cc6e501f36004b7bef10768e11260650c9650f3274a2ed3a5ab2dce416ae98a45685d8e0f5383a0904c94f1109e145e8a9d2ff3a1a3731e51f3371ccd846f4aeaa9e8b4447b05312a4f7f2700629834f6aaa367596a91504119a4eeaac11dac2c2126d1f2d5eca8c71b9d8d366500aac076ce419e4bdd5dc261fa6156a306ef85cd4bb022875982b0122f680333d4f6a205f378f29f8ed15ec5e06c1fd393b666312d3bc944f1bb6bae1311643bba2743a462c2fd57199a843f7d0407f70d0fc0da3514f92eeb080aaa9eb17e9c409bfa73c556b4cae3961c7ab22e6290a8fc86fa4799c9bb41223ffa04771cce7d15f175209bbf55dfd11a4b4d01ea5f260d467fdd1b47fb21bdd1dcdc092025b0b4b7a466ad0cf43a829f8c59cbbde00b44cd2bac3444afe72fa390b2b18d88e7c6e305cc95e1e1aed3d6a11c1a7674098800954a22981ffc608b3cd0bf04b2b73c94df22e0c1982bb82cdd76446d5cd80eceb0e28cad1b00403e7e9484c98916749847cfe0696be3d0079f8a85a8fa062eda3640bb4d0708da48cc7af91c24675a4aacf3215450fa04b06c0977f38d8279aad116b69c88a1d90cc2da3897896e8d0e50a16fc5cb5b1e57af4f5dcf16bb2c7d33c5f0abd3eb1f6cc652c9a14f5c6b942b22c0ce644c0ab19f6e8360f48875287caf2d461e372a852bca928efeb455d4e27fb2ea4782f90e06ec936d28b2f3c5ab9dd5e47e8e4295d5712a723d44cf2a08b18307a81d02b42d0bb818479168a47268ccb012c8ae11fd617310bffc109e29d144e5e94b04e9f4469054ffd354d25698af43138e41aab396024b503eb01411e0483ccfcbb1c4a89960cbf007aa31de022755dc66d6d5aeddbe7b29c6ae693bfc463e0288e0ec89530ca230ceadaca4795a2d3aab8a97f4feb8e64f9990454e3d4fb96b0d4d0aecf810249198202b58a31cff97e36c152b255bfcf964e7452ef85828b81dc1cd7a3e9b83654f446a8246a4a71291b9d20137a8c7d595ba2bbaf034d8738846682151cbef801a970028f9c0195233fba8df3b6dcc816a2306ca045afbb06a9ec163d4ca03cb8ed1cfa78fa3c404f82613a8c8d2161331659fff2e010360e46675070ea1280303649007d9ddcb3a14fe60a6b7f87b40ea6658c8863e2a74fcb11bb9d511d61edfe0c744fb7797174efdc8f67f6459b3d6182c014d92db8a8ef25073ae48bcb66c6b38bbe9cd916b9fb54ed2ea5b475a32e12060d65114a140f44667b6969b0bbf0f49ac1d49b16e7a1e4f59c7aa39672dec8ad3fe058deb1cd83c388368901fc3ce1034b9d7bf09ee234207306fa45414f3f23f780a703819a4481579471257892fa9fc5b26b1f0e6f047c0785a7bac01ed7b006100cf7aa8a8d933a9fdf244c643f5fb1c68305fa55f7cf8148990ab474cf415692f36d9d8e720a977b585fb6d82d3f2902f56c472ef1dcc0b4d66e2b0d1de6fffc4d2bdfcf58754d64fc942b184cecfe52d75a833f489ef091fbf3ef4f3131b199d12c5222ecdceee60c42b613ca140e25d678ed16f26248f9ee5d563a0a13329f31a8510e3ce0197ea6f34724dacb828a16abad794bcbe28773155d790d647627d1417b80b58b44d3631e0b371070a9884a6c6051d4585bb4c37ba2d366c864ed2291e0a61f29526cb816a9ba752e68fd2567d9fba375a21a49cf484183073169934823b956637483b323ade754a4a5b760f2d572162ccdda39cb08d00dca90512e44eb3c15b8e896cc4595ba3ca48e69eccc54951b5db0a0aea63013aa0503ac4a3a5d6807bc6304fee384b40e491090364a1b008c42e28b0dc00c81724619e10105ee0a724e792328b180fe04e21b9bd58a6d65a694a48dcd79182d0dde70c468a086ffa22391dddddd6dee9eb10f426ca06533841a09b811da0d790d5ac840da42da628c2084912404425e900049722290a418a4a0651a35fee0bc28e5089d463d8e077e25a150db6092132f60038e25e2f822074424e98824492a2ea970c180182f6e500349aa41d52249490c002549a291a42092b484ca1661c02e0f7e251fbab712b548544d4abc890393e8436d5a020393e8435b645bd048d8575b049124e99359216c0b1d92b44501244148d727b92c9c8f166f646d0509fb68310409d3020692a445267db418812449ff598b1749cab9fe660a2d562449d282025aa064318724492732092c0b2fa42c7cb2b2a97b4c58cc217d6a44d5a564ba3225ace9dadc5c78b23251f571d1634900028881ca156590dee48169d4a3c63753bc7ff02b4902135997070017b8e203a20f2dc1327965835d9e91b54387891592248124951658409278741840052f6097670241506005071ee321933de6ae5245098e38e28801f867471c71c4003c58b646a1075d1d53a8316bf27464b00233a8ace00b499276e8983025d30e1d932475b0c8398224499915f399f5444ee8ea1f9635837d6024e9a4074a46a0821950a18256510154c1247976e8d8a1634a22a950b184238e3862009e238e3862003b78b8a8792401952461551e0f862d4f22090a1b651948871418121f471c71c40054a8900985da878706c712d14c1f98309ae92f1efd8e612e1336157919504d15c4b2663c44a4064bd4204940a419ecf2e45c61a226ef1e470820000ff231f39f594a782c718124499668ca820772605680310349f29f4289c65122d4d595754e4874f5f44aac7b593d5ebeba66261735455d9b9bcb0712152557b0b2c72409891b3b844636d5877a1a0ffc4a72fababac57f34aaae0ca36cb0c66191244932010026f2ca79e4aab2b14439216be4c1ac6c5455a1914d4f164633b2b9b9d3d758329387665465d8f5d5836868683e1f9894983c307d60facf1f1dd312d3a8ca3e4aec1855990e1c6afc59629ab20f2591c4b4926137170d0dcde4d931aab2c912613c724299a8310dcdd453d5a19b9abf2651658daa6cea0bebe93f7f686872b2eab2aecacac0a8caae4a4906b22a7463e332fd03f92ca7c7f4598e123cbc721e1f2cb2aa2030369fc1e45c99e8c7851d711f991553c43f47e4a968a8feea4e39a1eb95ac6437231b0b0bb94c9ecf727a783c27672b64593e3c3c3c36373c32acb3272794896a449512ac46544d2b56368d32eb094fa8ea4cf4137665d3caf55899c7bf776059b6261c2bc8f4c3638526d14d765da12cab42534f7f615cd41e2b9b3c59a5236b10ce65611a9a898712343434138f89cadec6c2c91e94137a1c5421c72484c884334f4ee3e488daca46391786c252828151851cd7ff00e222ba1e8b2cdc17cd8fe966127527e969e57e6eec73cbf0180111286694cc4c1e0c09d191c9837de7c9c276e8c0b186fc4da89fb062405807b162322b06068a175931971563c5d488aa1a5115837d66c5641f73fd6874a446645d50609f59a2aeae5632d1f82791a4efe403a60922436a442f59151ac9c874d62f39d9c724c504c5bbb8c20452b02161d6f5280875ae4018142a4886485283267839a2b6b9bac8e79304f7953f56f64a6eb0507f5a845d9ece04a48e07aabf46d394734152270d951250515dd9f4bce7693cae9b9c98987444269d1454612275e45069411a1faf3c7b9997c95e0627ff100cfb21f98764d5921f18f643b2fc43fc47d6464493a88af188aa9b9a2aaf609e0a4b027b25a1c76c1e945dd592b6a1a14982ab24585ba0c6421fea1b51db5c5625b2b0a8eaf6881a5fd68b2c1e22abb24498a872c29373b5a73bf378445695f54a86756812554e7832ac43d31124f0b8e8b317951837a8c4b88165fdd8344902104392a42524159615c93def9962c2b23585426dc4e507093e467e14f9c808f14164488f1759594f59c34cd89561fd39366e6593a7b114482651c8b28a20996a44595555fef8c6b19b1108b714482c9b1b6cfaaca3c8aab0ecb2aceb4b10ea276cac981a5115933d0944951582274166c560380fc4b266328cbf12ebba642ff397e5841593938d6c7e6030393636372f392f247bec8dc8601e6c6584ff89c95a91a48e1015162a547e20f183012f87782184ca8b1892478aa96542b2522d80e6ef8d6739219c17c1e4a9c2222293c73f13653dc49030903de62122d8e0077e9024294552e9c18524493b24951e3492a48129eb09ebcf7f124b892475da450b92d4e1808b0c3c36edc924a9b30415139481a592248901920a138190fc8d5833fe564c2318b108457cdc9b47f6a1d08df5c91efb7cae1f7d3ed963ecb2feb26c3e9fe7e12249d21149a50b01489d460051518207d8e5c9b932d127316a9b2e685e64c5d0d0ecd031ea0b4774435118ae46d64c2662652c7339826522d8bb15d32efa1a97cefa050b5956914ca47ac1beca446c0c244992aecf4f882a273c3434d6b41233c164564ce682630dc13291ec8608a652332049d2a86d284a858a21e793509f75e8b2322342de2d1f18f618dfc84c3f4c2f4853912a65643ca2aa415d7d92b6b949264f4e96812a312c03b2cac84cfeee41a289c9d318b3405807c9b0abbab9463a6c260fe6a289c23a3079441688e62f5066e56c878ee9b15003993c340fded0d0d04c9e0cb3429995892cec3853a6d9b1a28306fbeb339c7dce960d56891a84dfe641d9877864a09a2a3461b8cab00ac3d5c885255b3da363a2699961a1c94495e8069b3c2b2f1e1a1a99c9b323c390b0d13161d883b0068dda89ec66b4031bf583a8b7e918fc236b06f3ff9827b035e34364c558d7974064c5f8a7145901418c0a8f27a8f0f84292a489daa183c70824498507041ee42b6e48d28de358a18cab1a6b0825499d44a87c400f2a1f1843e5034290241a1a25130d0d91c9b3c3031e98ae0ee1f7699ac1197d10230c3932ec957c3ea150953f23ecc67aec130a55493ea0acc2c93a4f6f62465693b26309506883e4a9115917cef43696cce4c1ee0dd623a5017154a31b8cad29fb63372755ecd0f1c12a0c608d8634860a0caab0238824492a3b9a24492a59b080092cd06086194d1cf1002b28618714bc40451138d698c96288782840e8870e0cd4a18e61013802f020e28b3962425c0ce1889a811d3f7063584004baf09c8cb0970d307102176421040198c1fd3feeedde399fe4f3c95e924c98402207d2102347b01e5517c6dedb9393554b6696b4131e0f0d8da72751e55959799175fde81f8825fa9c3d57d5797aac525265a2c79274125532900049f2a860800dc9c2000c5c24c9e4aa600004d234080ca0f44165524392249327a84c55489212542616493a7180caf4d8c901542e50862449938b2499a041e50254489209182820a95c204a92890d542ca0084912599549172a16d8828a05c690f1f8e758a1d1bb8fc983f595a4b195ac12dd4c7d831fcb5e605e32d1e5f1e0d43b5e605674c8bcc0bc48128a04546e462a1400a9500093542860449a5e605e5e8078f5f25864c58442ed23ab6caa214bda092cd499770fffe1d5cb03c9e922d6cc1187f951ce4ce83a727d112c741d2992593130164e1bf1eae5013b36a0628517922565922485241508b48125c156c861a62c542509ddc68e78b0aaea913581feba4c5676e3e2f160d5cdc5a3c744ad84724e36b2f1abead1b4634547e5d8a89d983c35a26a72b18a587efda8c7101f991583bdcd83b0cce8e56d5a06118768ef419c36e25d65a11b9b2a0bdd38e195f5c4f5a150fbc8221898be6e5c8a8caa10101f4624a963884e213a8390a48e200221491d40fc4125016c48920e209224755412708674ab25ac3fc8e106799024a97386fbb610450ca6804392a4ce0bf470811d570a4b1224493219f283093abc008917144292a49306cc600c7cd0c1176a944192a49430706088ce192846804092a4ce11828084220b48830d2a495287091b202142032e7aa08624499d390ca2065428420772a092249dec8026006080be70823824894716aa92bc28abae6a8461392f4442f1a02091c510243a5015047c815d1e4fc1420501f5faac4aa2438793269658e273dde01301ecd091c4fa609567073651b1e333ad603a3a40c5b4f2c9b99f8f670f18ab5e5c80485102517524d4f1214452218017928bd5448e01c164d5746ca7032a03b883f4e2f997acea2b9b2c1f239870703cd9e7e04c459c301264f234367944d584316cc244d5b5fef66461a1cea6950b84bbbb9564365605aafa7a9b078d2a9bc9e63329686890bc8d2543e3972582993c8d3d1353aeaa2b9382860609ce8bfe8632d18d8d8d85abecb169a226cc92e2c70b111f14f509851e0789144870a69550f3b06ab05752d54c99853916fa2a4f7e24a7877f919aaa8765cd64568c1563c5fc65e198204e09457d3aeb1791555d5f44068d084392309023aa5c9c90b926684412922459211946084292a6aca7b77c4c941122468cfcc8963c0f462091b0f7645608cb0021491209240524820996df609f8f2449219024131ffe534c4a74d62eaa2884aec2723049eaf8a10f92d489815480225820fa5c9f551f1bebca1ffc232c09fc4adec69279911583554aaaaaaf9b4ec2ab2159a812721d71e26d2c1fa1c69508847f265461d18de5e3255bf2a3af1b975105c2a6151996cb02120ab50f8a1a8057d61314f511bd7b05fa54a3fe8cb096e715088b6e3af4c9425592eb3911cc4a0b4bcb68e462c49aa13eeb0b6f60c27aeaebc685c5da0315f6208624451448a2d8c348923c7b981ae71092248166e640c11c770e27e670c01c267ab082e482dd4c51896e705ea4872df4109a562e245178f4f022e98101799863e5f2c7f2d0853c9081240a973c80a4acbaf260c5e0e10d3cb84092243c5478d091f349eee007c9ba705e605eee90c61d9648d81d4c7087c90e73787cc60e66b0c3170ab083c80ecdf36d85727a54873b4892a70e62489f45370aa843918ac70bcc4b1de840c60bcc440797240f767d861b06c6878c0b1d60e8e0a60fbcc0bcccc10673282279b09c4f92adecb1c9af3924210743489e0bf7e32a9445963768928319e4400349923c7228e2c15c0ed21023471420c7192f3072ec408e1278b0064d19fe13545e79f552b5b02cb17a7cacec0387864306e220441c538803270e1b4705de00c71bc278c3160a78c30adeb0041c8c80231070900147088e1537e8c10d64ecc062a61d42744c552612a2c184c40899300c6b9ce905e6e541d9b443f4226b0a65fd02f322b264da70823614698306d800073688c1860f1b26b0863dac818c29d6f002f18617dee8e28d98370ee046176a08a28623d2f08734b4210d6248d207a61d4e07919cc6a9b2e92f28ab6686c0089972449d9355369375856eb28ba77aa1096596c85a81f1e0609785358e9565eb77e8b87e493661486434a150fbf0ea65c55d2a4fd6a02c6789751541431c68e8011a683c58355da1d0740636a43374c00c869024c90c4524495240199250062565188144862b90410564a0c8c0809fb2971983350610fc24862488c1460c559224af5eb069057b8179798109c34b185c1806008631808106604001189600c305dc78831b3f7003891b109072bccab9a150637d612e1e1e7fadb8cb4da895fc84552f302f2f302f2b59f52f5fe0e20b4124497a817969e38c36c2d8a28d246d4005b43179e10d5e108217ac9024c9ab17af5e682affd03c28ab9658d708e7452f9925ca1e34d332c3e230a1eb48e8ba699961f9f1a39c999c4fd232c3e2d50bcec77c705ef4c9b00e7d924fcb0c4bf632392fc425e7857c723e49cb0ccba89dc8792145bc7ac97921399fe473d3a1f6e1d5cbf54bb22ebc74a10092244514d363371f245178b8e0072e902149110592283ca3890b23e742bdcd23a7435b78639afcb74086cb1668b6d024c98ad1821f24c913a305cc0269a14ad5ad40d635d2822479de2d9c853864810692e8a6c2c1aaa9c8cd420b086b10168280851260a1035840b9421957f042f2bc8d85ddac7885793a6ba728fc4a28ca33ec33c232cbba3e4aac17ef0fe2fd5738c20a6e90a4886249db58c18b114c48a298302ba054a18c902455a1026bb4618d21485244e1216b8d6c8d194992220a973518400537485244410530a81005152624514c9e56230b6a58a1060824498a28562e352c00471a3c90a488c2b2469ec608d2800092283ced68dc018d33fc6a1c470305684c3450a6c0862479a600c6147a0a131c5cce58e38c159c018295690549141e292c420a5af0348e148c9049921451600d9282125210807bb0284c210a4ba220cd08841950306384048621b16221896232e3b22633a432d4c81fca0a28a30a8f954d5e469524492a83006c4892070a46808207f05e2c6aacb54a87e783f6db672b4cae88b9f64bdc9a85f9c50c33d12bf9a1c4a405d27d9d38bf73afd9be696245531963a39de18cddadfad8c2a48afc92e297e55729dd3ddb6984df38718370ca9fddcf4114b5e4411d46c4962f6c37e1cf6f7f7611af9b6d6ce9fdcf83371d45b4f98f5a69678bf6611a59663a8980d6b57bedd18ef59d7d1d1b741081b1cdad6bc7e80eebb7249d435c686f84f95dff86b2ce13740c01bdb5a4d1fea5b17e67d08f3e9f1d9d4234b733dacf9dab7ffbbc09e5d921848c0e5efb5ca3b6e67f0b8a9d41c4f9d5d1395f42e72d2388a29ca25a6aac213535d69091154351355688a57604313dde2c636bfea2b7dcb0ee04c2656727be30e7d75a7c734907100ebb6da53fbf351965edfca1f6fc87b5555abdcea68f35a8c8edf8a1b67697f4be5b08eb9b7dc8d956da93da9c6fcc0de674f870edc3afd9e793463b610575f6d0ba46e7de175afb945a2a3a733c787d62e8f2c410fa8c20efe8c1a7cc53def65e7ac3b361d1c983b77f78b68778fe7cff251d3c746d10cf770c5bf459a555cd74ee10ddf37e18a1ad9f63c70eadf95757f17c4e1f7ddba943b3d169b5adbabd70363ad8f95ded94ff4ddefaee8bce1c66b4b4337e18bf86f1ad9d2a3a72f82afddfcde8dece096b9c37724ceb24a68fed85d9bfad2c825141270e2f67bed851391f7d7df30a3a7080d746fc7c56fb32b6b2e67411eca613876b0f62f7f3c9f8ea7f4bd17943fde8fc3176b4dd679f7074eef6fa666e733e4c1b88a2603a6ea0adc5f9ce798db2e1da7ae44e1ba8bfbfa433db97f3840e833b6ce8d61ac34aefb53736b7208a02d25943746ea577b55662ff78412dd783b00e923516593ee25c62e1ccb0dcce1bd1b173d9417f91ba9e510d10c7079bca3be18b16a60137489dadcf42cf93d658d3414385edadb50a5dce1cb33c03f67f7fb8c19a2995538a19242c413a66c04da58dce46d98ff38c6570fc72d3fa6c95fd60cf90756d7264fc4547aeefc0a043069f7f27f4766f7ecf8ac770bb6527dd7c0ebbbd2dc520b18c2e6fbcd0b56bd085a1a9abb23579e5b78bef8b7e8c800548070c197f6bd83e1bdbbb6df4837d74dcb0ee5e7697f57a9cee71d6f942b7bb676ab35b79a59b2eea96d06d98969ceb5b725858583a69e8b4f12aa4ef46881d8537bb3b41c70bef799b733a0add7bc4940deaed32c61fe7b459da27ea74a1f137c493f693d1c17ab9d07076c392bafcae76c7293a5b68f770cc95babf9e6f7c3193123348a0e868c11f776ceffd73add62c6f3a59a038466a61bf74ee414a6b3a5880f5f393b065eaa6ccb85ea1c186a5abb9ca8ce7b33049c70a36badafd62cc18c20c5f15deff6d289d6cd5fdcbb874d6a0f47e85b0b96a5d6bd2e274a8e0b9556ba78d15cb3629055154478d9f4fbd4ed9f5b696144551309d34e6ffbd79363b5ddf2a231a175e79ef7d4aef7cefbd29ccec37feb318db56653f104551548b3f28eb22d7dfce1970cad9b05f0c236d6f3629d096f1532cedbb4de288b9e844a1bec7b82196dd39621a318aead0a0630674f63e1b737d2d3e891d179d32267d6eb6ae6feff39b33146edff7fed965cb17e2fb84886394afe517fffafb06a2a88e13626db9b94c1fe2e6a8ec27288aa256d0210343071d8cb13a5bbfe5c554d06942ed5b5f94f37acb593e8c5909c232830e13dec17ec7f55af7f07d3d84ce121ace0e7153ff7cab9cf28b8e12eccf9f2ee398a96c0a731266be4ee593f51da5d5552f3a63dcdc5ae31ca1d3dab13d12a8edebda73cd520cabf42ad33982ebbeb5fdd997d062e73a4688b6c67e10c7581b76161741be6bb1cbe9ee83f3ba4dd221029edeed454c67cf5cdfe2748640dbc42fc7dbd1b54b631482cf9ba9f4971d76934e1a047cf1940de2ebf26c3d2b109e8ccddaa7ff66953914aa92a4a023066d797ea413ded8f0ab36ebfca03b3f48ad7f7d87bd4dcc07efaca335b77b36b7996b0f7aba9b9bc40ecf7ba73f0fac84516698dddb35f92688a2b0ce0e6a7c182995d83689ff1d88a26e3a61d4a7cd3688efbb3663cf208aba3a60d86add948eda7c29fdaaf305a40e36872b76589f6709a2281d446c6bbd2dbb3cb3abf7da7472f0608e0d3f7ce3b42fcbccb27050ebe3d87293adc1bf9f4114953b5ec017af734bdb8cd93e38411455d3b981ccf352896986efbe795f8d0d3ad73cb3a59d5f7dd661dea9417b2fdea70dd6fb9ef65f14f51d1ae0a6793629fda3b758af179d19f8ac37d36e299dbfe6e44c4706d1e9cb764827b5f42feec4a0cda6ada3f7b49746f8584ed08141b6f6bd53c70ef3bff8e8bcc0e5766fe8b7cae65eb59d2ea49d367a7b2addfd7db9a6c34584377b63d89ce3e6662d4251a0ac47afe3829963744efdc576d97a94e96ca1b3458e4eb6092dcc3edbb7a905743aaf4b8a677ef76bccc2e36ddedcc4de6a950dcf74b0b84d276ef7baa63556da64569e5811c2326a27466d533b57b8f970a3cd3985fd5d1f88a2705e445114853b2d80f6b65965adee6983b275acf09c1b8ed3caecd47d36508b9589666cac0b08fe910c45b174b0e854f14d1b866eddc2fc5a94a961818db6bdc7f26128edc4df328357f0f6e5581fc5f7dffb97208a1275a8c8bb154351ef9688a2ae3b15380c61c5aebafbe8e88519ee910d4b122a5cbcf74978df664af37df98d689182e9b2baf9e6f37ed6db055154f6352b41587abc5cffd1b9020534628c1fba19e3acad36504b4b108aba415664587a7c75cd5014457d3e6b169c1cfae8fb6ff46173f2be0aa2a89696fc2f36d60584a27232165fd2d5abcf86a3957452fb1ce60a1cf9d235b4ef53ce87987e28aaa385124873c3b7d116733b992368478f15171d5984859eb8b1f762899f46c7ee397aa77c413e37198c5e9b5677d05128dd8128ea290a539f0f09b0dba8b3d4f3eb5a6f3b78b5185bdbce91f6fb0b33c5cd3d5fc3086fa530433972cf61e9b6512b2f95b981405883a265f3f47fd9f6c5324628417f7d70da0845e1f445512010f585ae421861b4deb7361b8c6f7dd57f7efe49a10bb98317beb6b63a7d8f35497b117ec67da5753b9f6b39017ecd3d7a5bb6367b835e611b63b707b19dd86b8b208aaa39bbc11c08777dd83f46f9aa8b30db7c441fca69916206494c8dd7f9efb66f6fbae9e6cb30169765fb1665d758a5bbb11d88a2ac4c547de2bcf93c76f5c8fdbf07b3536f6c6b9cb682288aa2b297a10e276c87a3ec8cb353dc1f1addcc58dc7cd62b25a430df4cbbdea7f4dd1c71dbf69162d7eeb33e19abb3164bef0ba281b9ba3c5dbe8e554207419e8ff598dbc5de6486ff3e9b60daffeb9acdf7bfba384114e5a1af3245c950524ce971b57a85d065291bc3f91e05157633dddc1f12857d9c33b651ce7b1f3f247f5d93d459fa317e53948bfaaaa1a8ceda3f4d94e042f84ece5631a513e6667924f84be79c6d21cd34d6695b96380ccbd7846004383fcc7e2f76173e87128a67a5bdb2423c1bb4764217ef22324fd85a5badb545eca6cbf6235836ebb065fb29e1b739031fd65bdbad479cdb6d208acae9909399d99f94ee77ce561d568f11877842daacb47962386f1011e037ddbdad35d6cf395a8a0a851eff2862ef83b8d167af94f5e55f8248bed6a56c3d63eece58bab0bcc44c4c1dd3f793c6fc35b7e7c4a4f3553c2176ecdcbdb4e6e6fe4b0758da108a2d94ff3443d83ad30ba2a80f1582dd7bf6bd376b9b79d60ba2a89510c467edd3dbd97186ad4a266070636b73956d2176bf194451a20f7d96bc8b5c82d4eb686b73bee96ab4308228ca47138e6dc693c68cdbc63b1f4451a1be6abe4712889cce9fb5d9ba38a9ad0e44515e7d5a72442e1495236af70357871d5df6ecb5526a4114d5d2d2526f58aecf60587c50947f35b2304561d767a3f6a6a8ebb3aa032c1fa7a82bb35e5c54e1886e3e0af0715f3e2a6f9ed5ba97cd81282ace9b4f669393e871e18533ba78a594b9690651d4079b2ed01be3f896e62723ee06b23ea150638a7a2c222202425114858d2c0b82961bfce630a4d9363b6dced6c78589a6ad298cd661e82d5f6fa1b3f1a3afbd672f740d5b96b8f07abc144ef8a073b9f260797f7a5b6b576228b1cba096076fa60e8db0ea2534b2a958286a64535194cd8d28468997b8df9455b6ef99a5a3286c798473b68c36477f3c1dc8ba7ece39ec2ef417b36d10455d0dc24a546a5da54d67a3eff6ba07a2a82bc33e2d5040316537361d60a1a86df2e18cb1c1b6525e09a2a8cfe5992d3768678dedca5bbb6210457d565d381a9019d3e61c6c31526f383388a2282ab3c914c58148618df8f3ec6963a6d78128eaffca3f607e1866778fbe1be7731b8ac23e1966813ea2ab8987738c5d5bff3fb4fe1e445138d655e371edd286d06373475d851644512eea8fe51445512d2e2b332cf89fc0692331edb9885f6d37217556420ca2a84a74597847120f5aec57ba5a63c3303a88a23e14153d369625001e3696f5a9b93e1f01ac5c9f0cbbb93e1f097ca0e1eff86ab4d81f954f4114f5a128e881577fd2dc7d5f7c57fb411445511f50b7ecd0a1c321f199f279a0035767487020021b9080063c90010960c00253042e60011d15c800052630010a48c0c60211b8acac21f00007b8cf833e146800033e1958409c15505962e1641650c09480fadce75323aa4058832604380e1c801a00b60260481020b3ac0178ffa5e308b7e4452b02a84122001e00404bc996fc0e14f779251ffa2c699b0b9c44c0c4f977de27e7f3c996bc06a402a4e1883998a1f3362d4239620e6ea8086002ab465d804e16052080d48611e67091aab00615d448038d299c218528985106149ee004329ac0842528a19384ce18489072202520025f482a28a8a2630802486d1041102e5207a50804785080180020219d2ca08a0e1756d0021c16508731682449921470240b623930821a2c9c91802300d0e3c6e65ed70f9a49244952077a045ded73d20afa6e8bce3d4abdbd9951aa78f99e930f47ead79f37a2597c1d7613428b656d46b4d731ffa476e6e711c6457463f72ebcffeca5334245f85fe791dae691e6ec89a80f36e85ead0db1c389884bebbbb53e38e375d81d2237f7b6ffea9d14dee60c51a77510bab3ed3696b810cf3d47e18bf97ac34d3642d0fb17dac68dfd63ad3f881b6994b2a5fb065194a8fa287122888f0faf8dd565ff5b690e04adcf67eb4aebede83303e2e17eeecd57ad7458250451547659d8074efed06f5e0821f61933b630fb215f9c9db51236396fc6b80ff965a6344f87e36378f9105fb757afdf66bc92d23d4cfab3451bf3b3b34e084114d5f271a1a8933922a633b7c71753fc6e953193127a7832ca789f67e8393b75277990de5ac7f667ebb7d81e1e5c83af336d09ddf4395dc8b22e0b90933b6039ed3ff9f2ffb5ddd70e37c35aa3abf0affb6c2dce1b9621277570d459d96e4a0a59869cd0c1d6272b94d55e6925b573c8f06fe75cabb5effcb91c1e562b5fa3d3f9ac2e53397083157ef62aa96d8fbe38dcea9a73f3bafa3ad23b4114c5720207dcb8734f7b67adb6668f43feb3b26bcbd79ebce1bdfd7cd3f6bc1d69cf96133830ce91fea4b2bbfd6dee86dcb2ce5beb3f3b614fdc06fbe2f3d6b8d9977742b8b2b2120ab50f96f78453d40f239cb08146dcdc675a23a6d35d5dc3bbd49db673ced98873fcc1c4c91b2f4b68f3a48d1bb4314b35c4f9a0db26a7bbede23f4bf4117d1abec506dd7d17e79a9d8568c8127b6ceabaf51972843947ea6ab493e6fcccd0a89535da97737bcfda2765880ee72bab6bb5bf29bc6480d3be83d3e11a6dcb6dc7f03ec3db72ad4f9e88c1dd6cd435d9f4654f2bc3107176f8cd3519e3a3d48121bb732de3c54ee2ecdeb951e16badbdfaa20f7df02b7139f942f6069fc5cdfdec96736ba31dc67dbb6f7e4ede4bbd20657ddcf1ce775dc5d1b1913d66ec15e73a69db99bbf0b0e70cf1f4d9ae5647b9d0bea5bb587ebc3f5dfe161a4fe936c6f7a883fd5a904fe21bdd4a3b3bffcc02f5e9e075584ecf98568c05671dbef99f6c905e08e5153cc3f8eefd47fb515ca315f27b9f61d35a1da6cdbd2ac4096bebd9bee1bf6aeb1a73ceea228cf83afcddeec80d2754f8ea903edbb2856adc17efab0e3ad8ea83b3a5e19ea52fde783bfec72b43a34fb6ee674995fd4538449654790f2768b486dd73b8a58597b6731ccb0745e59329d077afb3d3eb7e867b9931852e43876ebe3d9102f468bf52881dacf2d27612857fad595c71fbfc60fd79dc232ce793c41333e68b10bf87dfb6ecd69e945121bd55b647fd040a5642e7fdffdc3dda753ee11d74d345592fb4f9dd36c18913629efedc77cc71d63a6b266adc4f18392123376cd969635a2d84af223969c294145f0be1ac70e6e71644514c6837e776ce9f951637b6509c2ce1d9ec9eb38ee6192f7412e44304274a78adeb74b6768cb3ad8349887136c66d3fd2d8ac159d8c11e18caf4eec3862f9f38228ead3d2b2d2526f3a3d3841c2acb7ce6ed85a895d7bf708557a6d09aba5b8bea3d53a31c2633833c519567c6d75b6e6a408b57a76dcdff21bbad9588820e7add2e54925ceb6711d82b3f4b3fd3c1f7e72d28909e1cd0673840fa19c76664a8293203cfbddfefd95b67cf305519408a7471845b55054f614d5274080b9ab9dd4f673b8b5bd62b896f2b6db1a7435662c411495736514254f7ef0f7a57d13361e9df8a0d66c9b52173db77c9a879cf400f77cf9c99c67a4de9c07965efae2bbae97427f1804e46407d65ee9733eb5aec1be388c76f03afad2622b61b570667402069659768b33bbceb5a3fba2a5634b71b56edb567fa150dbc8c09ce8c031a4b3c67a1b46096fcc01adaed2fca253faf08b12d432b2ae178a1a5997f7090e9cbecfddda74b1e6f79a38f102ff753e69bfb67462d73f4e6e7025eddbe2bdf0e1ab12db80de69dfbbb6c97faf4e77e3c4142735f01c5d3fe733b61bbf61d0e722f2a39c990e1a27347011fabd17becb0de6eb3378db37ffbd32df9771b332784de6766383594e99658d41ccaf756df7bed38b29848175f46147fdba9727acf005f5656cfe6e8c783e4973d245e32b6d6d1f65bd95b609a24a70c285743ee57b74dcf11b7d10457d8dffc74f5c406b3bf516e9a514c24fa83fc33e49423797a2b2259f2139d922be6dafbe295babf62a49f2c9fda18f9096dc3f64e58915212bd98d1314757d92ab6df21b096232c68916b7c229bbb9dc1a94edf2248be632de07e5eb7e6ea703511445e56495cc0916d37e73da5c9b9366693b3bb98266e8de7bed5fc78a93166417e9bfa41646e8ae6c1045e537123ab1a2637eadde4b2d7cd3b9fd41517dfd91932adcdac7d93aadb25e9f1864d288e9edd5672db5b47ea4159b30823ae7103fec0abd62d8160125841062d8d6dedbe255c4c3d7cdfd51975ba4ed6a4c12515d6bef679eb6c9ced752d4c70411f35b57e7fde27494be6772884669ccd335976fd336c55354cb143f425d655717a1a8910d2e8189217e366c0eaff31cf37c156452885ae3b77dd651599f3f47c484100fd78c2bf497ffa9942f2463320828adacd3bd9df5d6601404c516e29665feb7b2ca1688f7d9612a5bf57713be0888b7af566f779fb676b3208afac3ecfaf2fbfbcccf7d7d3fbce31b737e2dedbbb166ac0fd9d55abfb56ef89bcec6070aa77477d2f700b36d3f73cc11ce69ebf56132479611c6e84ddb29ccef9a30d1c38c375ae9229e0dfde9cd038433bf49ab94f051e9160feda7bfbf7865beb93e79875b218d1ee995d69fab6f87a635cf0c3384dd2c85b40e39ba5b3396cded9c3edd840ed99d9b17db1a6b537716445173704eb6fc0f37e7bec9c6267278fade4d0b61aef3b66f3b74b03413396e7bbf5869f7c5fdfec198c4a13fbbb3ad6657a1a3df8498c021536aedb515bf8e17c606a2a8189338ec7c343b099bd68665bd6ff0d61ccc0f7f746b1d9e181c6edbbbd0eff58752bee8867eaf5dd9f0bd2f4b1a4560d2867b6b9bd8d647fb56eaf488091b9ab5d9fdbd8dbebb3276119335fc47f9f075d729ecf8644cdeb8b8b1853f3f4f1bb37c35ccc75ee98bf1c586d73e1298a421bbf8de9c6e675788a735628206cff25e8ff1daeed91e5a9908e60cb33e98a7fbe88fff7d9bc1360aabc4f375d3f63e55ce334fc0000142511f1c933238cdf0a7a42f9d6d1d2d88a2829890014a193d629cbb3596d829caaac6f05ed378616bcdd96abde5dc0f08bb19511413266268ef568fb6f67fbc2f5bc8240cb0e3c50edfd7aa6bf93136c2585c4cc0809d6c587685cdd9862375a34a47df3f740ddb1c1bfc426d1d716e10ba2aabfb50d410971e448634415114857d955523ac87491bd6d5ebaaccb0bfd1be3764e2052721b535e2dbbcce86a9091b335ae8aacb7fd1d5a6f9419610987421ba266b930d5fd7fc357201ca28a58c3eab7b96debc05efd6b3be575fb53d67d542aeb6c629dfdb76ae5f6641cabfd53fde7a63bf8b50986021c6469fad984ed9b61dad2e284cae402dee4a61b48dcefc322463636285d7cddd8aab83af369865070c932a48f7de734aad9b333ee9d688d51fdae9dab370bedc970a59b687b13f76cedfb36fb30213351cc6d15e89a39dfe39671045b9771ad725c415536ff3bad82488a254a082bf6e302b845390028a5252f98b091ab0de6c3b3648f1ffa50f4451a11b1b6a32856eed6093add66cb3db0ca2a8104565a2ea484dd583a228933368e3f874e61c6163292b88a23e39f793131a013191428e77da7bf3cbd2d21b5b14b2eb2cdd3dac355309bf9998116b37f6862fad5462e9441645b184c0a40c092574305ee7aef48eb43e7703054971cb9edf7bffb0f3369dc913f2947f618e6d52ecb65dc8b2ee111327c4696fbd95d2cfef6d6c64d06ff73386d46dcf8b2388a22e6bf419b5cd8b49139ef476efcbe691cebf900975be86277cad5edaf7fa9c8ba24060b204f9fe35e9ecb334fa9db605c87459796a7161398189125aceef66182dac0e6b6b1045659324b42861fedce6774e5f978bc918cf3eea8ed639bdf6730fa2a89696232c562682992648c8ce7aa63166fb2e8d5fafcf69282c9c198a125d9f65d911acbdf17ac63056e7b094a0961759211f14f5222b845d56809818a1e54ceb5729a15357e5132b4244264568fcb28d1137c5947e6c274c889023b5573af92a7ecddd252fa2a896cbcaba08cb9599c0640810dae7a2cf986bcf5cad105c660a5fcaeb41c0343b396dabb502017bb5d3ef94ed3a79f33411c3390bddc597d04698db892c1b1b0b47931fd4fc6ebfb410c3f6b2933ea034bf97dbc3f72ef920d7e35843a0490f2cbe345ffb0d67c709df942f088b0f131edc7723ced39ba4f7a1c35998ec00ceafd5bd67be99b67b61601246c62f3689bb394a1be63701c3b97e0fc6062d8577d20aa2a891cd05724a4260f2459df1d6e826c53266dad24407f1e6fc6eff7fbe7cdf4c72e0d4d54b27ac193708ed9dc141739e61beee510a9bac3733265ecceb6fda86ad73f0bdce312637c899d2eb229cafb993701631b181b514bb67cfed4d1c5b839430a9c1a5b51fdb3c5d42e966cb6e4622987a83a4032c2f263488f25de7da2e8dcf55f87c6861328376ebb7add06fdfd8fc61612283eb777af5dbe4adb6352f4c62e05cb4ef65499bf6bbb55d98c0c0b9ead6bd63d8d9d9fa2e3079418539b697d94adbf963eeb4c0a40bf9d0ad9b4e3e6a276d306b235ccc3cdb7c7aabe3e6709695890b9c940f3b5b67a15befa643c6640bf9d7be97cd1dbef2c9fb636586e504265acc885b85f24afaef5fc4d9248bf60f76737066d9361f6a8c610068d1afca483fe6aef8617d0064412d743ea1adceb9e79a63e124b4ffb97dfcfb375f0c802b5adb5965cd923ae86c6c4700400b2a9dd2130500ac802d36e7d1020055b43aa52706298da0744a46b4dadab371b6c7bff7c694453c9925a6d64e6f7bbf521045f90892a2884b9dcbeb5eb4cfc9185d4a2268aeb6ab746f63aef6611f2b23484144633a6dce4e66f9e07b1846ca216e962d766cd3217cdd866887de60c4f6fb756b5e88afd73a3771fd9cf342ae14426479ef9531cecfb6ba77ca202e76b93a7588b367ea0fa2a81441d0da3237886dbff4d72088a2509012886c2f7437dbcdefd9fe0708fb5e8e2fb1adb3c62aed14297f9037bb8cfdde74d82dcea3143f58e713c328bfe5d624a5a09613a4f481de289b75ff5a7678b1e303cdd4bae71adb47ab74bc07afd56b7ed5ede3065f4c99c3dde1f71b1bce66a9ed143d7c6eeddf59deec22c59e87d75abb1fdf73f9c6ec170fed1dc5ef70f379a3cb2977b8d921c410c747efc43149672976b0eede7337db65fcea0d54079aafdffab7ebed6f674114d5822d692756725ec8caf520ac83d4740a1ddab5ff8e18dee6aa159232074abfc1ef46abac3037ac32922287f85e477c297c1e9d6322458e485b7cb8e5f9f75d877dbd577f53e2509d7e3709718e6feb9b399fe4e3951f4981c3fd7bef74cf42191d528fc327c591ce3cedc4edd7bdc142f89646daee279c54a6c081258ef0628c216daf45eb06d8d6e2772da618db8faee58a9436ccecbcb69d0d7fbe533e1be2b5cd5d18637b27e5a7aca133c4cffab5d0b5adce4114f5f9846e5f9f85aa2c3ac2d2b922e50d27719b8f5f4be731d60872fc23999ba206fa6fba7db7363a6d6c07d2919206f76cfb6fadd26fb47da221778c8fefc4f6ddd7f8ce60618bce351a63747e71368383edfbdd654c27cded96c1e62a9d4b58e5ebda8d92e1b59cb6a9c3f7f5d10bc71025754ce594f163ac2d86f77276f965dc9a9db2bd30e4fa1efd297e38ebc3120cd123fc2aa33bec468bf3daeb9ead8dff2fa67ca1e106e5fd06a194933e090292d2469bd17ab4d0bd18bdbae8856c7d62db6cbc7ee5fb6703626861bb3a63c72c73ee82bdf1cda61deb95fe3e295cc08e6647af8dd0559bf35d22650b59e2e7ae941036e8f227450b8ec2e6efc9fbd93b5efe49c942a40ee76e59e27aa3db518523450a167a3ecfd952e7ee3b97df92942bb8c72e67b6f7bdbe96c29b142b54ecdfe8b3af624b69672ca50ad8ddc3ee7a46676163bbc67dcfbb3ac58e258dcf82288a0a2d66f8aedefe22296ab4589da4d7a1ac6def7c208afa4cd435574a1a56ba56a183f562d7f4492752d0a0b9afab31576a9fcea7d7142e6dd77df3af57d2899f953f39570664058665d44e8452cec8f9bd9ecfe1acb9469b53a460677edf62b3d256d715a64481b6dcf0739c555a6cff3e660675f3bd7c9442576f9b16b349290352585dfee6de7308ed83282a9402850addf41bdfcb6e4a487128542579026e3a1ded6ff7c206f175829bb1fd7bde1acd19c70651d4c7ca52c87858effda7574aeab2cf26346861cf57e1c4cfcde9a84861427468b3f539e36d12ff5bc2db4923ae6ea5b5d5670551d457d70ccb4c8a126e860fc26c5f630ca18c4358b21b277abcf44849823fa4fe35da7771941f4bf489296334dc30bb77fff2c30e669a1424d4fc3e9d3f69fb4977f111b0add7c568a97b2e7d7e92a418e15197e3631cb3fb77ab17e136587d7e5ffbd14d28bab188e0b083b651896fbededab3b9acdc5293320438df9d596659a7cc385e518a10b267382d7c16e2beedaaa84a09426b6bfffbb57eeff01f0484f6d2ca7b5f6d0d3be819ab49110337c5d6e7b7f92da56dd80f3c66eba4cbbf913628b12af45905c2f9645fe303a7b9a1e3bfefdca335a7f440d23addcdedb9f1e05bffc3d5b69c1ffd2b9f48d9817b1df3fd2b6157fb0f86e1aa7d32e2f79ecd19db4e01e35f464b2174cfd3e18b5f48e9ce4d08a7cdf9c9fc3a68b5c536ad84f8d14c671da5e4c0c16e33c3d83c4b8afde2c0560b67abd7bba5bb5cbdb88e42196b8d6f66591f0515f6c99675dde07a57d8f656d8de4effdc1fc22936686fea9ce6772d659e0d9452830bed6baec2666f833e3188a268e0d979fb6df062da30cc293368f8e6296f6cedf9a5b782461f16fc6ef960f91419e4da6c3f84ce6bb42fd29418449aa373d6c9cf12ce595360806f963243895f7587fba6bc0047f7b26757f7d479ed942e7aba0c9d7cea39be39e98e6664a58940c78705295cb87f313ff647db5999bf89141734f7eca69d8f6babb5e58f942d206cafd43fe6e9e8bf7749d1023f7cda0ddbc311cb9c29aa25a764316d750cf3ab3eb3752652b06855ceffeb60bbbff1bf5345ca15d05d88eb5bc7df0f7f5b92d202af0d5adb5a8537c58ae960f5c0a45461fffecbd7648d4e7e751045b54081d208fa3e52ecf942d9fda633c21ff57e3bb1d329efb4208a0aa12c82dafb60931f5d732fab5781a28856e59b163a8cd076730772615962f5e8b8002511f6cee9af5f8417b7795d10144454486fc30d4f1a1fae8f412f288778345a9aa1ffbf96ee0cd1f9d5da2ee5cbeb64a42885c0edd94cbb4dfb646cd8db471214426097cdf18413d66fb7659441e40cab7dd9ddf85e3f0f0345104d5fac3466e9dcc42ed64cf44a0211a3bf7675fafdcbbaae1f2a400184cf8f324afb9ab431fffc83751267eb2ee34b0c2b5ef22e0203c50fb2360ae1ecfb306d93522a50fae0b167df9c1d746ecedca150fb40e103960f1dc76b9bba0b9ddc03c65ff3bcf34aea31d779c101650efc15cbeb64be8f52283f9f9c2b6be9ac5f563e73a0e8c17986d85af71cbcf77a1b50f2d0ecd7e9e68c13b778ed14357e03050ff7757417d28e183aeb72f6181950ee006d6e8aefadf3769b90da01e7377f76f5f76aadb7dfeb506daecde1ecba9bcaae1f2caae8e02d1d9e10cbb79d25be287398b4c2a732d7981b751182280a9302450e1263fa3ccb8c5f8ee617cef81ea17d4fdfe330318c545e7c6f75ff7c48126c85ce800287ebcebd3b1b5b95d0e1e6064a1c0d7eedc7f3b6bb15bf1904e50d8f3376de4fb656e5b5f7c1215dc4f6a58b8e4e9a3bbbc16648e375873bd31b71b701c3f87956d7eaacf9d609a2a825a0b0a1d9f9ddff2ed6e83e3794355839dfb59e6facf5def7068e13dbdb167f8d3036c49ca5930614354897f47bc639efc5d8451045593f288a084a1ae8f5e9e6bbd0cd6bddb5208a424376ed6c7410dad9a69df40cb6452ca18b36cae91043501750cc4031a5947e73071bbfc32865f81abfb67facd0c9e99225fb26583a57a09021629add41ea7095b3bd3605ca185ad2d93ae3fa5c8319bf18fc3afc0bef9b59bae76c08250c8e3a57afa37d7b663a577eb080a1e5c717cbeafc6963c738286e50f724beb4da463374d16158ac2c4a01ca1772be2d3feaf2adb3f32188a23c286dd48a2194d5798646280a5f2f285e68d0da79f37bd8eac56e5750d8b8ee6bd7f61cee29259cd918285da8d6e1adf4e17d3d65c320a07061e246eba4d7b3b519da8cb285785f7cb6566f9507285ab0f75f7edb2a84aee6864114f519d9b08c6c7c14e9b800250b504efa9e5a2c65cbd30845a501050bb9e5bb9cdeb1db59f9a0232222148572852be97c0dcaef9629b4f66302142b38f95ea53ddb67fb2e665015fc36f8e4ab74f6a4cf1f88a29ea25a72b291cd0f11911517554272aebf11c1ca4a1196bf09b50dca1a54f6b5d8fafc7fa742c6cde137a3b3f2b9fb1a88a23ef809143572fec6ef5f5bcbae3176d14d4549235b993bd3789fcbe9723ec967d4369f513b11050a1ab9eb378ed8399df5ca0ca2a81c4c51554099824ff8debdaf793b0771bb11ca19d59dbafb7b2e058f7e2fccd2be8b2b8d390a10fb374ca375d335ae664c6aade7f812761918bff828a4b8b1e39f140a1862da17fec7266fdf0605ca1364b7d9247dff13e64663447142530a1bc4b8dd23c365c4ad66eaf0f59cbfa23401b6dc51c2d9b19950dfec3be5940d9d958f2ec1e18aff71bbadd9f8b02be1ba8cdeeecb0e432b214c014a1222cc953e4bdbe7ea7de718f765f7309cf8c689dff60c0a126875199f8417e377f4429423c46c2575d2bd58a3d36a044bebcbd3ded772828052846aa9b536d7f6b045286b670b1422bc6dd0766ef97efcf91c0c9421386ca1a3f129b5b2d95c655666589280220408f37dd639d7a0edfa6ec5e40025081d6bb35edb943937673310e4c5115a99dd2d96f342c4e8e8f27ddd72b619de28517ed0f06cafc2f9f2be93f05d283e708afddeebf04f8a9bcf1e78a5d57995fdf9ba889d073647f72b1d62ec22cebe832aedf54ba56bf979c4398c49edcd18530b9f743b2918b45ad76a9cd9b90a65d346f9c2cd7bb3c5cf71e37ba7ff588161c9443720199624283a789cb18d19cbf82c941ce42beba3f827ac73deda7030b3bd2eca77dbe1fbdcbd6781e285cd394a79adc748f1f4fcc9b99f96bfac4ce60745f55809c2922df98102941be08ba77d0a31aedef91d4b47062836a84ff1ccf43e1cddca0a4114f521af3e222be4302222148525b12cd08e95f643070b46a901b6ed2bb6efb1e1d69c06943eea56c6d7d879e33c83085f73b535aeb6dd3a5d0694c68ce35fdb304f9a63d05a93374bf772ed2b230c5e622be3dfd9b0bbd2e117f4f32bf37fc69162f76e17d5c5279fbbcdbaf80f9b8bafd8396d8fb165f4eb02c73ddfcbfe52ca7fcf6e41af835ef17c363b6f48b590d0efac0d579731df9a45bcb6eff77b38e2f8dcc4c2a3a50f5e5867bcd7e62bdcbb2bfdbdceceffb305eebe6f50c609039e06a804d455b23c8a41106300010088aa6d5000d31000303024228ec6e301a164381ced05148001597e509a5a3a9749a3e124c6611005410c4388210410639001c620e7641100846c29c729a180fe438ba9985e6f323b1dd887dc033aa4ed2faaab2b9e9f6a89fc6b647395e055fb27af6e8a12bb1a9c9a42b7c93345419150cf3c1b73b2d98936bec4f7872a746c99f504f3908f94af215231dcdd4f766f335c0e9b8c58ad58b4d73cbdf90073688b4a9b952a21190c81b79058603437e4a4e4484bef9f1a17655454fdb71a6c9a2840738fe6a6c5182fd6c8b055b3599cd4aa373792b34d5e7a2215e1cb9f9d6915a76f79aef55b7cab72040880fed1c43f98890e7673898486abf1df836a50f3eca9abc0b44e985806ccfc5b32c404df6de0a8b0c5930531647d048b9b3bb319b5a33817b2003d13dd976893c58cab82177a94a2bea0c3eb04499416d00bf31221f336427e126a4a440872066e6504a5f3d9e6f1e1c483192c5d2b534c82acdb89447eb1acf25813e5a7990837cafd90c51c72010990178447d2cb2b3e9368a51e6429f2168bc57e41197bdfbe6c9e264595dcb5002f0acc678346c7cb276b380e75b8a0f190618c70dfb407aa3bc66af7446d4bb581e3f15cde73b278ccb127fb1345febb7a46e982a5b2da33b5ade3b713ab668fda0edf34cd7bfee8d07567193f584106b92fe5c49775a8dd6512b33df211c0f8e6f9e15b71a8734f8b8ea1d2cd1b269628ce50335dfc2e78e5d2544cb53a5b784fff2a8a4fd27c33bef02a05626cac65e3e87b5c77c3b7c1f83076826c7a9710007c9786df01aace4cf30d875e9ad5f3680f7ba5fb36fd7cd9926d18be3159b480b12a235625d8ca9cc6f615e3ac1dfdcca020e194dbfffa292b5790927e800950b88dfef7d041376d64fb05ae022e495fd292f6d198f18ad6ac780f112c49712e09b3f1c426e0191afc5a7611d3ee28aa582b7097aa04bcaa84b3d00d7bf1f89629198fedb5ab96ceb0bcab84182eacde3ce259ed01e4e2107396603ad7b8ff9057faa21a03dc3fc45a26e9e0cce92d6f3f2012dfc2e12d0fd9d0b0bc3fc5c93445c512508fdff81d8085f835548a979b37cfda7f48b81019ec040c5d44c4b134e47440d7c8e2c7439e20efa8a9ee94455a29a350c199724e20a9d727e61de035bf45b1edf607241b79f83636ccb15d3df1d0de6b6d48ad3f34c19b0ac654d8af57d5157282b5491b0e2b133663a113ae975584923844b9f569e886f0eedd8e86a779f5f6aa7d4fde0b3a4846cedd891c5074c61a6988983c07824e76478cbd12e78ca1f3f42a00445f877c80281a354767c87fd3d962932ed03e58d573d6434e0cff7f7266629ae1c4783ee0cc9e5c6636872af4f27eb5667732f066df7c954151d61b712959ccd1682d6f8d3954215cb4f16ec6a02c735c6713fb7f5837d7957ca72e1fc50c53bd1679a03985267acf7812e382e64c2b537d3574a448ab7d61f3d4c93a963d3bcb188f62379ff8be1fbba0323de1258b67921a0ad7928b03453b076029c239778a78559fe8695a69654d0abb5d360b3b29a8341245d6b31576cd6185c255965b5121fedffeca6c21cea11749eced7a55ed82abc5dfb5deec8bdf0ae32f68c9864049f3fb1c347e5a7143b706a14ba3c8a473a124f4afb9ba598b61484f0715c9e84ae248e2b668bd32fe021861ec545bd64a6be236a04ba54947ab91c84db84a05290d7650542b4e5a154cceea5bbcc62957c8a0a59aed63b288f317445840fc6e60d3bdc5285aae80c903c9ca52310b566f02ab67da72dc7407ebd1fe8a9ad1ac251c27823d2dba8b3e7606bbef4f69b0717536f823dc5a51e1027d7303a28651ceb77c8891c4360dffe5e1ea71ad8ee279a556fc825142644378855ea53da0bbd32514ed4b6bb9bedc52de7b3b7a1ae7bc9867aaee1dd2f7e69679d6b7c5f8cc313d5b1919a54909223b480415998e881fd90451da95738b24024f8d0b4c47dea6def20e49298fca584866fa82f00cd89d6e6f67966156804528d7825aed934f74e17696af2057737c6fdc3274bfa4b966a3fb009c7c938b2c8a56d610015a0e247cd99412bc35d7200f28e77acc2a9166d14012986d67ddb406162aa84f32195a647f39b93e4a777d979184647f5522f0d2c776061fd509890ec7e4cef991b73469ca1f0dbc4ec692c08024f011ea0b2a8a43460406afe4bf765f3bab03102d9bdc1d330a6bef2d3a16845b4b5d5bef4ee1a77fd75a11cfa5ef4238e9743d46c3d0df8e0be54bf76971c43dc9a066c4a35b4ab7f0837ae63d4edb9249389c6b4ca207feeda0da3091dc8cc8b95fd29fa6dd7d9114dd976a5ebf3a7d58267bd3b6da6bbc86dd8a3668deabe76fb994b9f50a21f9d5128b707c38cda9f8163d7a40b5c113e5ea39ea54db47b8c65ba92d503c03f8b277d7974ea611262e04dd3aa60b9503c5ce7baf7058936f7a6aeb460034f480d03919459455740f3a7cecfb8f10c0f08c569868b2bd0a287e8273bdb85fba92a6e01f043edc5ef8d8962c892481d63a2afbb9fcf95fa06dcaeb9ee6554be71341b47497fbbff5d4c7b8f2d8f017c78818932a4d7cbd57f5c1a46b8ecb2a63c4dfc011850d0ab4eafbb84a2c3fc6952f642fd623fb914b9ccdc8b818cfa19236193de15020b4c594f70932877f0502eaf3551106188ad737f4f6207eb65817e8604214f77748e5b8b757adfd732c0f41ce99229cd549a2553d72939ca8f39ce77d38bb269773903a3116f4adfca1e37485139a0ae58700afe48f1704fb2be49d941b04aaedb25a08758255b0d435eef802a008257e9800667afe35d3a37d392355432f5d8c7355fea7024946ff3178acd8d8ba57945e951fec1ac46d148ec494e505e40591c6c1d2591f790a3f657f4868cafc8871aa2240387f24cacf7b48e0dd38fe39f945901aaf80b9790cbb0c257ece4658a953d951005668fc0eef519be50c70d4ee368a858a7e8aaed65940472248a754ef8d968edee057a92531e181af6817148038c7662d8234787eaf926b2b675cab509911ef06f80411cddcaa6746971b7fbd1854e05c2406ccbb907d8f9ce74af10cce460f42ed474be7838db9cb003811f4be78aabee12d90ec58017c5f24f0a4b9eee8b2f8b9cacd571e272dd2c4a939b1fa5e860b7a7587bf42aeb5f771cb73163b57cfe3386354d9a0c57d83902523d45e82c9c915000e59c008565c0276901980fc70e14ba5e013dd1d330c127038303217801de8003c9baaa6d717802819960a5202d431e7e8f2f838e0b050f68c85ec7101f5ba02d7b1435c13075c372fe9ec5e9037afc74cd459f6f18c5b3dd519d3d0e123552ca5289c73a5dd882bb8b8701a892bf47cc74c8c9dad7cd0267b74b2a8b44bbf4ef634be6569dd23520a424eedb64d9fc03cd8f91578d39336f36bf84d58dbac8f510e507d6d35a4b9a26200f8eb56dac9526c1c7cc6977781e788e54e72ac48a3eb0142a3fe06efdc31b9beca384494a76650c341405f46b8aca7267c34b031217e54f014c5b49bd7d8ea9a02c6c6ff24e72738e6bd4e0c107a6bd4f444f1d54279eb36ba170ea17d2454a6f79927d02b11423132991a13184ed4ea575e813eb62b507105fa9156f43b4b0f1a6e1c1dcf836438b4841bad6074b54aaeaaf2295b2354f7b2c11ebfae387bb0a29ffce85f05afdb713706861b53386e800d2da7f9895454bf65e04ab6a7c4bc33d40c2103c445d8b826265571719bca292b4dd5e0d636995238a406df77e8c07fbcda991bbaeacfb14a3e6139b2ff8d40474ef55368f2263620b504a24955e96ae8a600d76f3a57a0746aca7ea06c354553a0f437652b503435a53f50b49ac22950fa9ba215289b9ac21f285d4dd91428fa4de10a144e4de90f14ada6347581b2fe6f2c063d51b38d7f6386180c87fd5630763e9a0fb4edf95a571b9721fdf842765c3eef158e6996be20bc5bc74fa1ea5e81f1fe51dc6863629b92d80f603ae244a645ab66cba4cce1cc6102d1fff78b865269f02ea378fb3706bf8a08561b64143e4793abb35c8b4c73886c3d91b2cd62b1929d68154dec7826f62390e93d73b376e3d38eefcbcfb5d68a38648f21d75b9c0c9efead0940258c8b2383400667ebe83f7fb7589c3d82e6ff2204c3912a7411cfa373c74436f3914076659013e69e1cdf76c6d12be082110eed96211bd7d935aac10257d3af0ac0e94dd186908a85a76b1cf0eee0798f050125d08b4ff54909bc1f43391e87df5760e8bddc696ab594d834a3fe8f8f887b94a66910b7959f7df4015754b3226a0c2f7e968716e663612bb3b891bcf89f77d1e2402caa651635924a78318182d29f845575e1d5c4baa6425ab95c0f580887853dc128f994a075fdb4423593dfbe21f365c4b3d0e70b70a94fa230e9d5d32257cfacbeeb672658987f6a57f26e5e136f642cf1a33fa932d0a71f1357bbab3a2ef830d95bbf85b29c13fa1b30fae491d9a7d79d85108154333e041141991c1f8fa11440e873aef03f5f396b045703b6d3c6cefcc1236c02322c66090b56a800df5d6defe5d4abd6093f6e2c6912f8e0eb4e31b911be63cef0e4cc784de69f0312d1a5455913345e835201369844e7ea4c807e94efd2524827207d104735d9657c0637ff56601aad5ae1d4cde334b0084cae7dc78d6a625fa8ce2112d2397d78d1a099858e9224c285ea9ea6d11e9f1afb6185245044a263b67cf9a1982d06e79dde24b3779b8285a3231f7c7b51f15b1db33b4c1c0e4a8a6bee6004765e985a1398ae8d9112c9f146c32c8519eeab86c5be9cd28dcc5b3accb017d85c8499b5f02f3adf6bf92114a8a3959fbf2d6ed2a3a6e4ed691d06ec83255c1764f2f1b299d1fce1f03c6ae3cd3c760f713c163c1ba70e379884b741f51324aa698825b0e2d10e0a59c01e0845513553ec5fa4f583db7b979bb6d5980478ae21260aac5a93ad0bf522ccc16b5f5200a4c77f4476b5d382c2a8dc420c4ba7522dfae9bbf33fff940b6ab2025ac396a9d4ac4d6b5a3b768159b0567822c9c877b8acda9814106a7c1c9cb3ac8537c48a452a7e7dabfd9bc06a7327a5aca95e2ee494a8377a9ce289a72ba032870abd5498bf830529927d700227dd0fd5882b8b910f6da6fa848353676f8ffeefd6cdd0406a4563a0d8afa94a63bfeccbf1ba49adccd00ffc55dfd8084e2b17c67d03b947b73dfca15483953b9b31e48af7d971cde5b3bfd74041bcd01417b99131a85db592bbf423ad490df4e3cab8880e53f169c53f6b8ad089befc94c8b05610695585201fe310b05302680790bf3e3f4c8c0c7893c2a4db29c88e7ed2a77ac74630aa7870223d25efb031c380dc218f249d7d7914c07ce6bf60bab9b3d521d1f28b36d088a9b7da1bb46d1595769ca2500d82425fd664217e6bc1353f7c48ef9b151c475a171017cc7cecb59dcea627d34f7c94e4adc4355e7348c98e3289b3952c590f1dd53c8a8007328a90b8cf1b91c0e953f77a42e5232b78a7c138a2937747ec42c22e539dce4ae80f168445bd96179cf7a2db1390320d9e9cb179a84c8dde11d8217c3d39a50b18449925dbc101919c295d83223a357e854eeae3d0f646bdf03080cf6cf03ad02e084bb4f8d8067eaa51261338564cd8a63f912ea8e0cc307fcb466234c2de82f94f4a966771e74657efb307f734a83de0b12a9458e26dd0770f30678600f879d525ac3309d620186642a0e96d68be506f106d98810f9b9f94acf2720ddc8ef0cb4bac32b94587931b61bdacd575b6a3ad86606881e96bf3666ad5e6c8d1c581aa541c5076191ee68c0d93f2c04fc86df037141ed503c88086e5640c108620aaffe3db32a209fc0364c003d3c58fb7cdc33d868a9562d3861488ac632249e5a0fb41e73a0a75050a04f6cf1048e07957bc9005cbb436b299abaa7e75b5387e9d3f70ab6e31896693689d26a660025d30df1cf47840e58fe818029d975b170d4c126533675341d9c0264f99e114acc15441fd352f7f4c51244bf9a77a4d28b8bf6bbd2900b1bc46e0e0d2f091a3c28fd1aef9329784667ccbae84880551e49448b1b63743ea25428ed2afffaf1e20a717443846d15a01158c800e2a0e41d79ca0a86b91b7f225f8368da1f153e5f166ff8ebbb75348ae2966718e30405d62dc5ec2c868af0b40e403aa2759813f5abced384e9938c28a72620a550a1fd00a30f8d2bc1c8fbbb65f42331bda727a073cbe7353ee125a7f00ceb9f53f911e23b635888a8ffbb6626b450014f004f27357c63af8402eee607d815c9077f1980016dc832ac90f97d98e13b69032d81248066952bc2750f322f9f87c48b37f28638e5c131f916a172a15c83dee215ab427409b086dae1ca5a2d378eee7664af4f21f44cebd1533e7c08625a91b267e7d9864dba55abb54c2cf30355907097dcea5424971f6f7ee57d2673629ef89459c9175e92fd3abf02d53843d0a511467cb5487a3351fd81c0330a316ec9a8428cb84a8f7551ccc84f57d0eceed4b385648947d63324bc46adca862617bd725b4ec1dec53ce4c025781944656d085e1b00cf999da2bfb55954337ad54820e2505f0a4f171533f0c33b59e5a566001f86adea4bd902df70e4a4ad84677944101b2be4ee4b97469c9e52b0625534c1d1018c382c4e291a1d54544b749c177bcab4d8975b9ab982ec5e1fa38fe6882d05ba9ae9d66012b288377848e5e9cfccefefbfceb11a8cb66eef39922e810144e41e108605a17b4243f090d0752ac29578e7981840c0e3ddb6f4e55c5e60225800d749082dad6126ca6856e485c86007e72472ba015a0743369e666e65726f4254fddd55cf431a35927e28b8703b2cd2e4a36ad97a3c674f70f9bf106d866300902d3df87a7e2eabb8bbe20b267ee59c95731ca131cf839edfeb564b9bc9e8cd1baebfc628c98edf3d180f700c7505fd31983ab8baaa4156d79a5893fbacecec442f95017da8d22af0ab699930c026918384388b330250e9f33d98b737e29abc9906b44b95fb4d1c8a8bc6466e46a4d8e885454f73068604db285321458a1281b365e5c2c7614cc6abaaf068e3305d635583c92b1117cb5291c9ae64178ba46ea0976450e35970b4ad199446701ef2574a31a22ca4415e5a0c519d748942cd130e4459c4223d90faac714a518eb4f0ba5a7cb156e98177b3da6bb64dd16d7614492156a122e25f890353e704053f111d5aef383f9e314cbe8fe2f029558e9b639c3ad915c6937f3483ea5c309aa892139b66d330ac896423ee042acea589ad8c871da130d1f0001d163104f91e09d9559eff451e468d5dbc9447722b179a1bd9e93bc0a785988110496870d6b55c6b4af82285e3807c251fcc1e7bef3095e104ac070d5ecc8354705d1aac0f6a30fdbd29e293571251928b3a5bd30f75bbda98794de0f800bebc2ebb730738c5dd6c5edc880f0f40843e950ba099843c6f3b0ff1d3e9601793d6103da7485a715f682c8e11ee71f2a63ee4c8d7a96f694714d72329855b5ffdaea93a36df07bf7f334bef0331b25b513e729df7a9e170a2dac772b6939528fe8b79ccd6ed51fdb5dd592a2f201aec28cc7045d5b875eae4b5bdec8e82606489810a868d4f4e63408397ae1b74369e0faee739286f5dbb34868bf5411e23a712ab3628952eb1450d6c87d20408b7adcc2d1971aa2eca006262e1437d6fd191e78a92463805fd26a063ec2864b7eaa70206654431ad975092b47ea0ed73bebf2e8a9b18ab3499414fc7cb0cfd46a16b2104301d043ea68164b3c3ef08598da485b604643369ea09045b15e42654e9db42017fc5e4e185a23a47717853123ed35fbf5e80dd1403eadb44b9661762e23de5ba2f230065c92560dabe697e42a8fa969e5a1bd50dc1a87d4b034ce4021678cba6e15635fc1b5e68ce064ecc55dc63027d5edc759a5e2e777d9d1e55324ba8aa43442d96494acca88c53ad7e4dcb16013f4fbfd2159adf975abd89da2520e16994419a71781f596f1af61501c900c21eac018624815cd07432b8b7330c5872d16fd8c8ebad6349696bcaf417578845b8518aada0369faa8a8f02addf25cbe097627a4c5c0396b420e80fb9aac41f3cbb9deeeee0ba933b37f1e317686be88b91f3a17c74f5b5329cd00427a067af783c29214d10da17c967cd88c0a71c781840b9049a65c7a4df67e34bada109b273873847e94c1a117e8166bd20180dc06e6db42171c8c5c899ede5db4f92e7243e5a785e5a202d297f5c1abbc028112606a2cd2deaa61ba0069e898e3c07cca1ba855b9f77a56568bcf870db26219bc82c2b8b65bb4bbddbc04b48b48d83682a3ca6da5457fd1b0706dfa1e9d12d2e2e97a2f2ebf77202f02c7e2b6ef982841113d8a1e8ea773ab6a4ba6f4b99ddfce6f3f274a6816cd9876c0dab4f6cad9c81d46e07ff38d28f92e01958c94d125cf668ac235a8ec32f2a0ebdc984c16c22b5df750d0ca1c07892ef7910b9d5736fc10941966ee0b9a3cec3e4b1e12e4ed1daa2d9e0c433048ddd787bc9f9f6084916d192f83186abbc29922046a57a159e4ce0ea438031907f4036ea93363bfea5f1b4e50b56a2636a6dd7775c754fb56b5660dbb37781f82a19be88392925ef883a6c600527db407fca670883860219958f08738e5a3eba61bdd14c8fc05a422d6337664092ab9300404eb309af4f9c4bd07d194f7314205e81392089a881489dd0a81765a0b5c1ee9da8e49d643a23db6eb4a9710855ef8963d93c377762ea2c1cdd4e8acc8bacb34faab3394cce192244377c440028e12fc78e710e4621891b70e3dbdea7a1f00546948e5990b2ee5cdae7b31d8e4c2e21b3e39b373906f87c1202a210d253d463e84814622c8f9f081f80bbabc48fff63cd2a8c1e2576a86f480d02023958fb33cd094bd5a2aa12b7ba56dc6e7ef1009f2340b97ee506c99fdab09830cd139e80bc25e391c1159bfbfaa2bb7ea505250fb62feae0dd130126727c711a53de121cbbdb29788220cc26817cb4b0bcff11e95b7baa695228e12b25080f493335e3ceab1a8fd06a018d3f9d708a1f83dc565fd2b0b8d89310db2e8f28a2fde888f15a02a73c885acb1ae45b0349cac29eca811ae2f7aa8ba590003515955fe0552145f99f934b79fafc1a54766789eb0079b8d406d65f6d19a26bb730935d7df44543ac5eb9c43e9d4ebcdcbb12eeccc50867bf801b7def42150644c32cff72e5e2bfd81f37ca317b6a7a9080a35f9d3dfe57db3d1ad47e008365c961fa0251f7e902c4a33ec01948620e9bf2aafae126943f0797ee54875c0d1f352da2db9ca0fd6277101d3f5a6952b2c3c5e0067385125afaa11406b40c88c23d5664c8edb5878a2945c8534d1c12a19024c97b39eadf552952a50c38a75a5f533a3eb526c5986cd8db8fc13fa7b4a59c240c7f09071fbed14c7507668644e93a1c621c901e912a44a1ee1bd74b604ba745ca694bafdecd49674a29685962e25be10d092a12413f2447946c281fedbec1c417fd85aef201b242a77200cd75015f92a115d7444059ba61b522b64b021b2ce063e1a49212a228288341b66d250fb2c148c1b70ebc9991b2d940e43d05a4e2ae344793d3457a42651ec995fb656343535ee47095d65d58f9f5e14bf23dfd31c3f9df7eb49f8287e1850b9550ee2223642ed1e320d930bfbdada14167ec80b12c9834940bd4ec45cd69ffee3f112fa56e33f614debf19824587695595de0bf87c90d0e65aed98e6a236e735427308d6cfc4b1457aa2a6873cc7d5cf4ce24426ca8f217a653e60382730fd49f64466f5c31c509486d021560c9a15742ea57d73c85ffd19639c17b45758d6387ce5668488a936ad7d7bded48caeb14afc79b25b9df8fc12ade56790f9e5eebf5b375ed5a8f390e6aa17b42d9d0176331a12d5d542a152797556e051cc28a6130fa0c9d18c7ea985c4119427f13c2b5e50b09640343743f79aae26c11e435bf5066c584f22735d81701213409f9506e8924a1535c13161fd6d71c3eefe514afaa6d719c3e9b7e2af89e8ed865fd95e13889473803494d241a93347a8683b25909b0769bcbc9892b2fa559ae8d1777f50243e047dc1b4d9b52c8c330fc7c990cdebcf26fa7c3419b180c885b3c5604c8b660309a64799e0bda1b92d3c0a9d71062b321d79d0e86c303b521943e1fe295be2031a6a592312d02f4e0a20fc0f56d609dc783ff90f024b8c00d54ef1acec160e33104884f0e38136390c0a2bbfcfe08e424de37876ff7690347969af8769f6cc2ca02fba3b69374f1b8002ff79ee53caaf23c6e87accabb43fb468c080386e431040a69b3645831dfee87b2b4ece12b441fdd47283a1a8ed63f00d98832590ed0b77bc0e00ecfe7e5ddab02af4aace215bbe253490d546b0fa7e1fd3cd4c05686f33f0c96a172acedfe494276f5d8b73b1e648ff33318c0f96277b9523edabeddc3018a2736445b6e3b9f9ebcfb766f7c3fe40a28bac3e82c62b165acff4ddd387670f7aa930d2e23e8e87df0b1f04b147f1a2cd540f32c74665fba04b4cbd847931d43290876348058b2c63885c288c62140b6184d71189576849144b0d1f961a69ff03c9d8e58121f36feba0db437e7e6a2e81f6e2d2cce490dffa4f582839e7ce496c4f43bd9e6428d950d537c8dba1db57fdbcab0e186ab184b45f262eb4467b7fee8f39256ebc88b54034faf2e07bc895fd99da4fb0a60d6a705293b2b61a2ca282212f61ddb487dce31dc72361e82ca9eb9f97f1fe2dcd8dd6fe9dc2235c317e0b4f1e9080e2654d9ea984765405df5e97e801efd81626f865d24940830fc532ccc8cd53e94abd69dcef90e338bda9848c17ad5bb38256e2592ce15824fe9641382ceae1c3aac30ce85908ee99a771c268eae7d7cfb75ed308488c121bb68f2911b0a074f3dff70e4d3aeeb1c5e1acb7996630b069fa9452069255622d7c1cc3419fc138ffc2fb838cd140a8b89e36d4ebc91fc210a5b877bb3a59c567bc7e77bd01c6ee90b45332e47f8f5c0d4426f9846a846ad53a96a105a608bee4c917c0405435ef28a686090de7e0769bd1cf163add912ba0849f8c4ee17104c04111f8a0e9ba88d511b203c8a05965c8fc5071c29b02b2e85306e7eea449d17854f11e85fdb15dafc033c3729374e8d867e47d38a8000c75aaa871296da0f28e2966ea594c28ed4be1f03db5b26e899659c9e0e45538d87655be85a9e62e2cbd2fb2ad52e23b731b02cb22fde5f2ee17af565e3c746c9d51831d4bfd0a7c004e625e661320b1dc2ff8ccbd1a7f333cf97ebbe534c6fcf14bdfd0647bce45230a90b5eaf0e62fc0ce9ac6c68974b1aa9f3eef9d0374d8ab3bb08e89855c9eb06da8cb967717aa38f83d7c92acdeb9a99f97ab5159b8782916062838e1aab4d240d5f01dab52b056a4513275a520c2e2cf07e40a5a080b35a9dcb740ee5cfece7a10c66fc8ede11b37230633250307ec399a2a9c92c7d8e4ee8625f7c8f98642a2aa51d6ad3bdf129e52eff565f0d92d4a107caae6e0cf4378312c42c97917dec67a440ed07ad6c4059245cff1adfe35f83ec056e49b85710ee12c48ded438456de7daef3612ca9590f9d115be5dcdc035da40b067f4f77b7337fc7c540cb03e4ab9f8a3657e9c9b78d3cbabdbbd73c7dc68de27408f58e990b6835267faf8a501f755c30784d1a8e21663c984e50f27f09ae3a4e258db73a2f675a39eb7dac6f118a84e48da088a4506b4bdc0f35c76b93d94c995614290782001e4df21705dbd2aaacc33eb539c410c9a75007f948004eb90edee1b47610bcd9c7a6d78aa8da7ca3d4fee8e1496f7739b7102b3271ae65a0883a5aab6254b73860fe652290928537c577b8afb367174e6bc604d8d5ee31691052b5aac5bd67488a36f6a739e676d171f11ea316ce616b7d0f7f21a2ed5aa18fc944670d07db7704d92725bb5fafe1244b81eef58267f3cf1044ea1882e20fc09c475872d0e916ad13621054f58183bf62d848f40a873b3e46b44dfc3bff340785c5ec6fd163a033fed49c2c083cec220593bc3d2134563732a90015f52b170336e818dca0ec8ebd10f31e1db4ea3d83f1c5aa35c01a0e1ac78bd8c41faae79824a3ceb8386730a4894a3e670356c2a42e2cde0edf23c6f6d9063c15936ace2d5e6b7733fdba6527bed3602f5493befe71ed3f0b271a132cb53799b55f4250109c21ca98ffef372f9caea5fe64ba1772017719ab273f9042784a1c6a0b404cb4de852f912a0caac9109b30ed9b48c64e00183d9336b38c44e16c79dfa5d73adcd8bccfa6636ac2c2ee5301f539f79fd246440baa1b7a79335485089861856b95f140d840fb1144d0dcd7167cb43dafd8754dd5ef1138bbd374e4eccbe6a2816ae4eb1a6def51578f015acd16f921a02594475622a8ba9fd30041f3ce12507c08669604be9c5768e879b47673ab9906913cd8d1db401b173e731fdd8ffa04af7b0aade76b7a09a353386eeac4dc5873e2991027354ab413ea8dd1723dd65e5b792149d1a1a58210da16d07ecab83fcef4471cd68281320b158d2c6e4b67b9b47bf12668fd73ac75c95cb8d2d719f99b666f120e7d0f855e1b48d18779329baaa291b8c4d30d9aeccb1b990d50c7baea88ecaea1af6fdf07e2d99be81ed8140cc01f142fb75553f590bedef5c58b90dd2d368be9682dc53199580d02e8dc8a8d9468f6eb29dad975543de0d0d05040af5c59bd11053f228447aa825a7e666519f4d9c15ebe7fb1b4ab0d933edbbf527474dd30b36f3326d3253c99441e3ae713378ef4f63e463db5ee4318aa3182e815e21e6201f269efe5afe1884c2265fddd3d53fd1a503830d4a8ac0daffab1ff5e1d08713aa59a1e4b4437aa73ce78fef8436f40f07a89aaa3a5699abb6ba28dbc6dcef9b68ebd4999b16696d285fc572b536271285835beb7d7f8245085dd4d78b0764624aebde043d22c4808e4cc34e67949496f9418dbf6b412bcd007d872cdd25d288032f96beb970aa05658b0a6f2212b5f86f668844224aaa2bc592d06bb1e7d96966580ca55cb44f98554d15a8a6ab58f4c9edf8fca64304777f65ca5b609d465d8ae0e99cde0a0b14685136ac64b4eae1f681224e1aef901612c9bdcda78edb3044fcb586ef31c718998ee68043d05e0d6960c9825ffbf6de7c338b7778035be3cddada6f92ee08b479778679093f4074399965f07873be4e7f5f8314d91ba265b3f04f095552598364e6db22b471e46f04d633e7dd22655403c7d7a43aa5bba4c6da1a34743b71212eaa86f6c2785dee4487ac7c710c6a2270a560f3615cdbfc94fc0e99430edf1470fdb9b695775e232007fcf8dc006a25fd6b2a94786744b5232afbe9e0adf24d4c9942064b79f1988cb4d007f42f85dd8e22a3922376399e8d496800e8731824f643ca44853aa3e88a3b1d2c93bfb8b5e423b06764afdd3e173f4acfbf6c7a05a930d0326efb3536657922085281a90ca3212753849ef652ae5f0f1e5904ca6dec493cefaca787e673692d51873ff2e6cfa7e9fa1b1d3ba88b300c3894390133989d6cc4989cb618f57fcbc44f4a013cb654a9f092530d8707421f244091fea7ff58bd79816965972c20f1c4c718a82b598052c02714ce43f7130c792adf15692563af384f791db62d65c183a52df8bd9ada61464f962df647738c10cc3f98ea43245bf95e5188a8c3304ee412541eccbb85468ac4cb58238770cec2bb0ec550d7e1e8115c614546bbd5790f8ec5308c276b1632be6c225c57f446efd47cd2be956f359d7569ac68e0363f5e9fcf448ec40049c41b26add0ac50ddb15aacd93c82dc5d75bcec39efa69d9db213f67f757499d038e378b3172018c802d459981321ca9f32bb2d91b98faf61a6c6d9b4a10e914726d4690a951e1e04f5922b183708f070b53785852d417ed7ad6861b65f7387a0df2bfd79579d7c43541d3fefc6e65eaff846243a72f2af68765c6f35ece015e589bdffc53e90a8b8c978ca9f8b19ffc3c412760c7b84103d6d2034d739bf383634eb05456ba68179db62fea3ed0d0effb940d0a19bcf8854250a2d6a0ea7e7162255a7bb861cb70641ac8667aa95d36bc0d9089f266b179fbc676c7c193cf70ab67d51f483e1eb8d0e72c121c5f1617f5f82bb527584a8426030f557fb7e9057c24342832839c43471fb6bad9ceb41cec4b52be745feca897dc768bde839adb470639c6b29e0e7e456484203587fb3b859d68e806436f5606710374b275b29035c786e2e063a0c895750ea0900087c3da504a5078abacd2eae71ffa742e6afd09aebfc7445054b9f953c931548da9a60eb5877a5fbb228d60ac9d2bcae6c83755d8138c7e0267b40069764e15858684e1ac66bb1f9014ca48236f18ae3ed8f4d911835285514f58506971ca419f8292a9da19fc63203f017813b38394a5d5d7fee0e05aed9e35624359062cd11c4463bf225e19563e56d25872324210eac0d57212c831689a76491c625092de4ac5a896047a4c6a6f2af4e09cc0b14c4b069482ced50afd30448cf867aa8c5b37f47600d0953b215ee2b07366c061852017f65a16cabb0d1a4e1eab3f0ac3e3f3e8223edfcc74392dbd3f0a8601fcc48c2d11ec3f650b3f2ccbb7cf0aaca0059d27a764001c92ce32ebf2b11fd3e835583a628540e2c8acb9a9c8678a93513659343705ed6d91a2011cc78367a95429327e8cd55e5ac651cbfc0da1fa15eeeb9c5a41b5fc24a2417cb297bcfd5ba5415a981b112c086e04a587d7f44ed83d9924cc77305b0920fff1b3712d66491ae3a762a81d11fda6d42175002b3914a441a54d6de910c5914d7643899e537819622a71750f04c282957e4d11464fafdd56dfecc135016948e65318994e67d01bcc33fac13862f03531db106fc5682c64e1218f87e56ddb79ac3dd2d2e89e16058f7e9d336a48265c02b66d14b557b673d1211dbc3d3e1823fd3dca969ba30bd3044093aa7b93f790ed05b9c7c8a8f7dd1f47ad1ee7b63e1d2ef5ae1d083066654de1eb7cd32075cc441329a8e5032366bffd9a7f2d0e50d148709ab03abd6676eb8716cc7ab49877fbd40e3374c827c42dfbde7c28dea1a6f7ab93b11912f154999d9b6c447f70b2959a2989826bcd20a4878fb3401172c3ed8584018b8727c3a547654824dc9c21f59154aa4ca9ca8b93220d481e3aa5fe86db45049f94f666199536852b45a6f7a898e11f1ee4237cdb7b50178f6718e4d6be93d0f6995275788348636d6c57ffdb1a83d8411669f64b54c6855658f6814e66e0b13e20385a6bf4cb43dca8456839c5f0648841d8b005832a35f43de5691be20d530ba78dd90634066520c44f5b32e27f63d09c1b199ebffbe164708abd90723ef0fba51f884479c585409d057f005d733bb8370d5dac2807849b78f5cf0c8a31c500e1db1949295cfc454e3344ef8299151e00c4b54ac00c7e0180897b6f8157c3a7e00e85c3fd7f3af665d006aefd14b18f8640480852cab43f6fcb5759082049f3db3f22438c2c4902ddda04eec07760a0b0e92608773d8ab61af809a4bbc83cb7689e341c545b2760dcf5805694da1293c9ab01aa082845a1a1c6509b95d336c8a9924f47f82ad7dd6337269ddef2149c4c1c54bfbef0ffcf80a816e72f25f46bd5fc5602cab8f4d640d5b4816a1f86ee316b439c013261c9e1a5d52737b349980524db48f93cc327c000e03ea0e2c9fb4962117d414ac38b555db00b31f3aedae30013e619f7df96863ce82630230243088afaf1a3c0196f7d73b82ab7ec1a81728a4f806d14b3ab0ebb7a6310fd2cb265c0081418b95a1d62e8844819f78fa46e2c08d8c1c32a3dbc2100e438b0e0282052a8745a47e21a7f45d6c2f7312948c689c05f29c66aff0feb044c5e14104ae1640652daa07a90efe3a12d2289199dcc2491fb9d798daf8ebd30bf49c825ba22c7fa0d0dcbbedc826d410312d2982035ce60bd8936cd64a45282d23e49300eef69085435eee49437f6704521b265773a54cf03fcfbd1b74921ca172d0eed4e40244008e7f19f27f6683f6268459c5421844578e0d604ec52a3802c60e2a87b3ccf7ab5af1f0673cbbba20d2017f9c23993b3a5821e80cb57d3ecd03e4d80b477c7696f7495ce1276e01815417062482b0ef1c36621e7e31b30fe5e4b5b3103a5f86bb71494b7afbaa46e39ec27a7711a1bf570880d39d6c02898d93f0b6409affd41049a7774106820eb17638d8c3b992365b29616b0384bc35ac02a0ae5a9da843e7de4e97a5658bf3ed4386d0e6218d4ce6407225c1bae702fc09a94271468b0069245b550a4ad9f9bf876253a28dcaf23d4619bc5c3c332b0eaf32a4bb5485ddce115c09b180f995a1e10001bcb7d53c12c2fa702d342c29b87bdd7d2e1998e46d849e99ea9ad7949a15410fe682bd6c4fc2230fd27824812513a261f23fb0819c94c574c2c605d0cf6efda20c3ff3a915f0e46c9db0176022a43695b771975e3bc179af0fc5ba5bc329e354fca8eec7891dfe0c79189efa03ae4c2a17e6ae586e16c043c4a552005621093b7caefccd4588921515032b71e9ac5ecf90def4c8af5de34960a5069a445d2f129ffcf15498d9bf0245d7978698d8ca009bf4e8094c9a8f06ae5fb5997a333891befec060361b19101b34c1846bc56410a2eddf68ce6762b64833d93364bcf7402a61ebc48df00a485772912616cf9c0b41b89c1e289d974269e1173e82cdd84fe6fb5923e8165cec12121512c92b2a13065723ee2581a53f2c04cb2eb13f449c4406e149ba4ff94199dd563e0f8a2cabd16d3606053f702881e04fa89d12a9a3429d431a392c2b3b0192d26c8d1e392f1ae685c2573be104c1f88e1e9b23ad18f89dcd7367cb3e561e4fccc6a1562116caab4a980b355e50e7da89d9f22cbeeed21b87a222c98dc3bec072adc808b855c95767fe16dcb5d1a177f995a08cd042db02d8ec0a470a4e864043ec37300152ef2ac592c0d45711177b048964f02e9f90f2ad50365bf86130e4bcc0cd8303961dd0ce0718794aa08316c339dc8bde412ea5bc28edb349a965e633712be904045745fba56951b0823462df73870c809dd5c8c800ad2b6fe1d99b15ceac51d4eace4de0faa56f9c72803464132019ddf83e464017b8e8cae88bbf1c0802214b6b65220e3f87daa973e53d8f7b47d2a2aa15a268ce5504bea65fc9653461d2cb859ea2a81cc5707d4ec2567ea86de99c4913f5527cb6f5923ae719a3b8d3a6aace2a0d7e120980a6a5427971d5c25c215aed059f5a6b84a20a36e8f3b8e63a447210f7904decbd23d9723cc3f38e7bda0f9628d96abd0dafb16a61b71be9d3b3a246f6d87f878642e7c3a25b0730cecf364b36a09dad65c0775acd162ed7ef3d582ab3a8da71880edea7e24945c301ab95c1386eb0041526df047f21afdc8868ba8e1ce090d04c737ecec76a12fd8a1e92844968441f721026cc2735842e07f458900489ea9557ed1f56ab7816f92dee470cf510e44c82f3cc1d34a1d6140e91c93ef09d30412e50834638b43f229bb4f76dcb89e48b481e1c4f1b611838bc10347ce61f391da4edb4071f47ab2d26f89486dfd69dcbf98154a74084e6947656d5f5bc8c09135ee42acb779490d85b24f265d9bc784152612ee5afe4c4fa6bed4b5e06f8eb3e3647a2605416b7173f608300d7b52589c6df34536acedb0f9bb2b1b60d7dab98847572fcd4829ef87c5a731e9a53d1c92b1dcb46f377604e0fb0468e4131ef9c39b903343ca0f36a2c7c18c185752e5f870ec4aaf3d2c75da0c64d07e27830086bc08773d99ebd300f3047747e67435588fc6e0d73c1a484d92fece85412aa52e3c7d96aa18e6f297f99ee78e8e079ef87d4bc9cf08879aa3fd0caf6fef9ddf05b0259fd2878b375503ebc100f197833019e2a3d40bd96c6a40a2742a43692df699cfc443d52d77a05c60faa8724712bab099176e10f5fc33996e1c45e0e2ae7f6877eb4af237e59338d3bf1a079f865d7829d8b51aa4492de8f3dbf16f18436d18acd933cde49d0a00b8593591c583e700acceec4a434606d266bea483a029a2c2129464f07c909fd46d8ec239ef84efd3b4be1b6bc0cc984bec4d38cef7fa88048bfd11c4fe229799d3643ac3496d9cbd502364505c698fb9377f4f1009301b58801d3079c419bb0ecbcb87c08c9f134a7b585801c0027addb3d4581e86cc4683a243b15b2e47b02b6ecb0400ee43777a1cdc885c30fffc6d9ec87f2dbf2bda86f9cdffe28fba9139448dce42c08360f97c5405c21815300ed48682d31ac982f2ec09f0c3a632005d0eeca2cdbefd3037be62ffe3517c94667b6aa75fda0a1e403f0d23b6817d891b7969677f27f5e214cb4ade6315665bfac7d3e826ffd8ea4e289be106a5fb38f2103a7a7eb5abe30ff1d6e05630005c13ec8fa7b7f9d5a9fb02c6f7ffa5d4f34db7eeb1b50bcdec941064d7480fb0c98f123bca8e30606ff9833c13187c5970e1e2faac960f178ce19724ef6ba2ac6d4c41585f0bc730c26e2775f198de907c68c0e5b538879b2e0bd03d23a7b8d1b4dddd8bf23caca63392d258f44db1112837b5b2ee025153986931873e7cb5acc91b953c9f16b30a610373652314073909823c4f903e6d61975b7d4c8be66a407ee0c88eb6f4c6646239c24a25cfbc2388d6d6fcf7db93b9a85051cf59097b8bab408a32268b8b53d8f93478b6fdfd6d0dbdffe62eade2c25b8aee6a1f9b3cd274d2733bda770c78d601ebc608397bb846caded283319229bd00f274d88c619101012bd4e8642ed71a34fb4b2e30e2e98b1e8d7537c1100ac08371c8995777319119c80df679c78f926f20345bad0207b3dba1f3208cc3238c22b6392c3d0d79a9c04b0328fe372e2ad92ed72d6b70657753913e640a010b637d590094f8627db6438f6396bbd0a95829c6d61411bed24cc7245c64b852cf8c9b93f2d9d162013885d7a9f93ab3890fb3fc922c49ccdd72902c7882969473e3681370eabf7fce3161f4857403bac9cb1f4da46690feddda087106b22c91b05c18e912ae1c7ebc4df8d1480d018af38ddc7b2af5b0d63ef76da6177ea0650b4160de40430240ef8ce0ee3976d8f6ebe485569b6dd1a67946925c3c2750bc9d9a37049149653796233f9341fe929c9a2ba835222c104e26cd73d4340663790ac14508352bcfc4d9c1827b33c363fb6e4faeb96171683d8ad37f6bd22534eb66344e5162b46b2c8fd216ebca5b3f1037622fecb57b864038062b93b15702617026d726ca4de2f3b4a1f5a02ac3433e0e6129f9928b90a1dbcc5ac5660b0af84dc402dde1dfc0111dd130d3816852c2741caafb8decf5237b200ae5d2dea848b12c97e5276ab3d96e84cf7a4b50aa31d187f2b82c20dc483c7da1ddc4ceb6c4d869a1dd18d5125ec31a1c98a5994e11f29a9229038c39b58a7d7b78f2432395db58f68f5be4b7b529056dba53fe35643814dd949b1ae99d10428821238613f47a1b6728538ad89f220722838ae4b24cddc62dc0f6dce538530146900af9a9f39631fa4b02c9990205a270a85c6d2cb9591c9314e285a99b4a2ed4a44e9b3e871d05398403118e20b4ec048b74be28d7510d57c8c8cf94ed462d5f3e7d4c7184cde329e8211e240c939f3edf6110c38824e62f6111c5d7636d1e0fc684e9488bd7d6dc69ecbf0cfc261c007cc9a3a99d052cc8d451f759e68c3a2c77e7d8ae30bd5a76bb12225fb7970724d0c189bf8e64ff6595aa9552b056eef9b5891e9b79b4322f71081d56aad1e8f59e5971e1bbc631275a8f050bbf2ee0ac7e77a3124112faa5fb87363a252f639d59b7a9f7e19bb931c08046916dca5b0be7f9239065bb61ac72f615e34e1b8456f355bfff826ca253a9bad149fd43011b7fdf09b121119ac92817b2c5c46871ae7edc0f0d1bfe6309801ab85d7c8731a2615c25ffdacedd7d6ad85dfc3b93f5515dcc854351c6e9c5a759f61e17a617f2a2ede3af15826069bf843326e97a13b58253cd037c46bed606b8af08da6b2916d2e78d6d9f29b782a28af4473f070ede29cb2f7086f05c10b6e55a6309a0e6555f7111705c2fc5bb7566dbcfd0dd604ed7cf8cd9a33f3fd6dc9cfbf52fd55aab6bfaa7eca242a84e89f319ca04926c7237a84e079af6e2ffaeb9b8ec686e36b149b3d5619a87629f9c886e9723de85638ee3b9e5b39dfb8bb48d88687570f98e51203b2081e4b94ba2eb8779c4e416b2151b870ec82854ee968e65921509ba5db1de523d32546c39461182773d7bb8534648a4da1ccbe381ea46704fb250a7e891971f0d0e05427e0f512d63a60d2e2c563687401f8241d8bf203eb6f463fddb546c7d9cd3fad227438d34aec029ca71fcf7291ff84b83e59e680d81eb2ecb154c5d351d5f3640e72ee1e0d6f7fc6eec4011f70dd420fddf5a266a5a80103c45c6b9c41e1f7049c903e694ad3d54101f96baf2cc5357b51d707a82b59ca6c3f255196e679f97a7a07440fa40691158ab925dbabe5bda5a459173073710f8be59a76038ad2892888747a1f62a5449e3fa1195d98fd049acb1ed3b00daebdcf0be1cf0d8e106c68b6a1e41254f207fb8da081ea4b8ffe8aee4245b6e5ee2a13f68407ab60e35db4732a612caf17b11240fe4e527c98128dc2ece1670773fe8d6ece94b383562fb1fa8ffc8ecfce2873b52ec8170ad43c0e1b391ff92f65e6c91eb65f20274a1560afe05017618a4fdabb3ffc5a6407fe1b34dd4121f848a37d2708a70f9b64f760dc2b6c32ec924d48470ecce39c64483d2312fe425da46dbbdae11cdc23e4a8db8e7c97625fa9f787c8747d63a0cf99e14ea47c27735d31c418a4abf32072b191e83755eef4f6199cc30ad515e9396c180106af96345ffb7a737282738c19466e093b6a77247951a11022155439251ce9e00677510c9644cc13c1418c3119f56cc39fa3ec88f3022316615e3c482321f2ce5ffbaf0e2e557e00233fe6c167a3a00628d171c86dd0d6e1be763e44d6efa10aacb25b44c8b1d653c51edcde57936890ca1936240437b3819de27e77fefa61a763a2c227e86a43182acba6c5b7401de2846e40f05a2879f63f1cb8a0deefed64502386b4c9e154da6674521fd8879e7f4c43f2114f1a40623e7b2583e6cb96932378d4106c66229db91246bb0800fa7adf34e98ee994c9166628ae681e57e3eb8855ad4cebb38c32e526f25aea629204500176f04c4af0255c140e4b0cbf8ce72aa50b2e069c36161b012153585c86449c654fb587346335af2b1f22053d6cd4871625acca190684192f396111543053b74ac5f4b16eb6518587f419b7cd8b7b24d98424f4b71edc79cc7934c081c9a9fe929ab6ba1e0ef6bb5d97ecd4d8116cf261f3b0a885d833404505d924a682236301ae3756b7ae0937ec5f9a1a9f5c80e4bb5432ccac39190632f69ebcda6882e0a9dbbda0cef87e99642726b35e4517031a1ba1e11ae86717a6d1af19e8a774698e6086098044b33273beb28fb3ab4e4f67925f15b6349771ea04df950ef6653d59da833cae6bbb59a57289a628dff171162a2493fa4b46b845a87f9d8ca9d9df929884b337c370d439b5ce02d3b63fae6d35921ff8c40d0047764a4f0d29120e558ef7e96153da7458ffcdaab75845591d1546be36effd89a49f9e90b6bcdff64bb9795981b96f0b59e484d59b48b9539f518e61c02365c3e78e1c99f34ece68db9b5049bdd67e99c94ded77127dcdbc18c429d45494a6e2337cb76b44420d47fdb35a022d248d260c4cde913a8cd7f3434272c75ae0ec78a4a9b57bdd552de709e45243489b153175f92ef12960fc64d495ff63357127212140330c03d34c6307ba32a598a4d6acd0cd3e25197617eb679f73e002ff651ac1c84be77f713b8886ba7b0886531c88b2f6b743627f695759d32a045947908e3cd5e440ac8338c0d92289de378fa53f5b08f197c2e7e89309ebd18d9e9969cddc395ae528b69f2b420ea9d11c2516dfc0b0141b3d2bf50f52e5151001d86e811ba79c970e431ce089ec9519839efcf8ece8a3eb33998bbbc06f4afd170e38af1d8310f0d4bb714d9425625366dc995ef9c8140af7e4c559dd5c31b3add273f5adcf78156112003fa21b4412bc76e421f662d118ffa104be9e19f659e7cadc4bbb163673deaa9b943b445e767e539bd2bf2a6fe37ab6f74d7772c4f2d32984fcaf543c0e4a39f69f928a67e79fce9218a5f4884a9e15f9366c519d10aa65b7b946af7cea05947a9eaef0d6d60c62ee3989547f5543a2a64340d9f0e3cc52af48e09569b55d04e5fa0dc7e20499fc1faadbb50c35aef3ba69ef6004c695049e5d43efadd87d0305c16086bf6f9796f08daf2f2537309fde06f325ae82ca02a9a0fd566a845af8cbe92b63c83411d97f53fa4ac46c184d25ff106f76b9e355d07b4a6e3e3de74a4018e2146064e39a2b5b3776c6da13a82f67a8c1eea8a0297dd79f7b46fbb457efd849786c75682c9fe47e51c7e04c644ad6959bcb3b9ce5459ba84ba92810609fffa2bf7fcb91f72368a94bd3f8971e0823234ac11f304683fa7af96199a90d7a66b4c3a41ceab678efaaed3f109ebc59d63a1244f3de04f8dd3e39c7d07fd588288aed1cca2ebbfed7e742467b74fe318cda49c14b7ed8d50793caa481a12724d9f31483e0f27a5289cd34e24424f5f6908ed32faec41023b532f60377f0a54c2494343c26b4c6d07aabf6306d5bc175698eed07f91cce8fc7890cc39657250405c8cc67cae81887281ed1910963f1329509e513d5e88ecf5ac58fa3ea54817a90c9d6e20482d7b83f904ad22ef3795f5a4e50939b48ba452188d7f89defef00366af701da97b489c1f52bb30f061b80589e0f77c76e6f076241aec4e63298179264148fc48b8ca010e7fbb0d50a01e10d844517b87c9036649074d494125422aa3c96fa0637e65bc2ad2e9f355d2bfb8f623e4d74b5ebb961bc1b558f02f068019998317d2357f6e692a184daee38b9633f3bf876d63b143c46026382969303ed97cfd64a396e1844f3278f340f53aaa5fb49ac175a71f6bddcc32d4ce8018aa858330515c64f3f666601421878683cd70420614b3482f3e944da85a9c0fec4a2126e4994dd8291d067932c5122303780cbb4da44bd4f71bdc317187b859ae1d809f87bc7cc8367715356bab070dc27fafbdc33418b306c9050b42ea46a62ce613a20615840f49de5e29027ce9e14a9f0144b3b4e60fd2f8d3a6c36283ee593edd6ac4f095c915a073e3f5f89c5ad904db23f84267fb78aae011e2311e934b3d7e47e83d672f8bee3d4513575963ca4322d094f4e4d7193592d798b29639d870b0cdfed96afbdcef409a4c614f71901697ff94d449885b431423798f8fa00f6a1803f1850f6045f0ef6f2d94e9b73a5290211aef7c8c89f618b3b325271d77181b336c79327b39959b52ce900a52b7ada3c52495e98d6c51c99bb875e817795601b70dda1c0c580b9dcbc0659bf9c3c79c5856c38e8b9bdf9b2d4514f418547bc6c723d924069b63f000e8012860b3c1ce6d462214dbeaf48a984e8f72a7c886b64ee2e6688448db9b3be1a76094975535f976ba5b06e4c8af30ded45e69870a74e588e2c19f7629972a716a680142025af42b7a643a2b75ae43535d251a34c89dbfb01154827341c51a3a5cbad449465d34e7d030c914ea572dfae42d391c277e41a80cfe0e03850c024f3c4af8277e497462fd36cec0e323b46a5337c7486110d665b05fb21ffac6f8d0c58788c1f446e47d8a336e91e75b50027a3726dd10c887a2219b9eee6e5a5ecf639da0967d9d2ddf3a028babceda8b32886ca229a94a0852904256590ba65e13a6313b9b80692403935458afef3fe17ebbb439400b59f6f796a7257411a9aeda06b95cda5b01fecde7938d0c9a8c62912fdf5e33d0620c650f994d758589973b8e20f12ef62d65e81642f5ff9147d7ff8432ab815ff7a502973e1ebfcd4c0ece4ac74e626b52eb246aee1a3c39b43467329451eee0ec84812549bc3340ac353ccd53ccc9f567559ac43d616a699d5e11b3ce2e04a282965aa2d2f03a38ad92c63631f706b1928568f176f31a21df3741bc0644fc9feac90af471459e225e9fcc1f9348c0d8bd2ff0d8ad785b9b4ea722cce9c42add33d80bd42bbafa676556b2c81bf156fb132050e077856b4687384146c8f98b214401df9c0dac2c5eb655c90189b8fb9d156d7435f29c68d3ee14d5a25ad0da0dd2231e26a830e4a1bf4b89cc584a18c5c1716029a93937a00d0c37bebe4b95257437c368bb306075d1f9a4f329e1595df3fe47fcf34d32acc0e9d6f8b7296dd6bc2beeb41702ed592a3fd5edfbe3bf94d0c9326eea476d17bc0fd95f51451a9923435f2e047c899b02d500bfaa8cbb221e57d883be389f087e4c5f0d0713aa09d3916942ad65c10421566b34a1ce55000a20383f06c10675233907048be65176137cc7c466fcc34005b4054a180729de18a4386e6f431a8890a76518f75131cb2e7685ea080b145a350327442f962564c27641a0319d964df73eeb7a9240d2d9523a7525467127534b51256f94f8ebaa41fc3d720b7af16cb8c19a71050527d1ee90ecb54de8ac5726ff1b7cf4fcbb59c31db7d841b3876678c514d51680eb2737f4372706bc0c20edc78fe9fc45890047a2323e9d1890b8f1301b5a53f47fce88f2546be04a615d64991c9cf9789e35789b5ad7314d03310637202a10d7f25cb3ab0f8883f80f17395f59e463ed92f2b4a57e684a5e05224352f461705ca64c10d71f2ff7f2fe1cb58df669bf1b4fd6b417a614bbb59b88eb36c8c29ecd96c2b456df8447528cc8c8ee5ab1ce739ebbc856c2bd09a5dba7790ac9dd161b49e5788da621948fdda93348cd6a7ba44c2e31c34f1e27f414c3bcd63f146dfd1c3ce6129827ad074d0462f553d15de869cf1b6a0983803e5a48804aa7f1742d34964b9c92ab6396b683f7cf2c75d249154afb3fe58443b47c68866d7b3866f3217bdc0a5ddf8e1c66bc79f22362e9fcbaa5574d1865c5442968f90ad6396885ebfb626969f34d4a43cd1350926e2e62e8e815106c87e78fa0e08ed60080bf2a8ef71a62cc66d48e51d322b7070fd8afaca6d0ad64a9ab0e3261739b790cd7e32e9769ac3ad6bf607cf0b618750b9066f9b7eed7125d112850de83cfbf2c2041dd0a439602400a0f74ab529c13e25aca769c4d884d76cf3d38f0b17b55a33cb18c568fe835ceb0938f9cf47fd945c6f2a0e945a27e824851e2b8a77f5cce5abd5afeefa0f9dc27d180eea7784a130163cddf5e5ee1e0e909b834cc1acc49223bf0920a0690efc927f1781a16e9b0e51d58d1b8f9c90633a60f9e0eb2806b12c6e72fee1a2fbf8ddb860c8779b7eba484c17ec58a4c7926102d7aacb9a7cf82c5bb45b24889a85ba09e1a0aa3f65081e79fe7b020c1a43df01b3eade476265dae250f6b3861373c027bee29ec399141461e20ab556be1255ac4aa90ac309e03624c3121abdacc513b80688d2551857592aefc4c7b575c8fe9e56454f14e0e2482ef24275771994881e835fc07afc87697a8a29198d75e3a065d1f3904dc2f5609ccc238478ac30d57258420e76cb18af160c74c6cb5746c5030ea9406a2c60818af24a40d74bfc9ed9fb0f797f5a99714b64776e5e1fb33b6e1562eed947179d835c5e500c72c9ad39694331ca3ad1eb9bfb1c9133a720582feb19bb3c31005ea2f0144e0b7b24413dc97b93a1dc188b6929873987f3018fbaad105f6c50b4c1973d8d2204d8f0476c37c7dafbd37f1a087357e66a708e8e2a83808d704181f5954dd055fa92dbf6587348bfdf915892c106e40b7f2045d0e6748a72be4660dcb7b9805f970f13b9e2f8188f1d15b31e87f0a9ab61d3c6e5344702533e8217acafa03693b165af148068848acfb06a10e63ec6b68199dbd5205f083ba2a75e78ac88d7fe458e63544a01560c576c5f9d8907d0f4d69095b42eee63a56333a4a7380108073b08d4242a7321007eca4886e42c12996d430bbe3fa6e18cdebed531bc3d3933cb601d23c757f69a8a754ddb6cfbf19119a1def40d617f0af42c3cc17cfeee8471a8aba63173d1d17876aaf3130e166386a9dfa1b86226a4f98c8caee784382aaeb560762a26d1cbed302078e9e2a4b4d99465fa1b7edc50ae587b185f979b537047347843f945708a6495176585b5401f8371cd404882638e400075ffb8b4eb6d797a9a2bbb881f222ab7ba52cc96c56e43eb7e378fcdfa27965a4082b3a955a5bfce9d1b77a75ca9cb161e6f491839fc0b9e4b0835ac5248f7345218d17ff9690b5d42ebc1fcfa8007308a9705ac9398ca1351598c25b96c208317520328a8821db9759d1ce1c0fa442394976126270645888064c52684fd41658d5477bdbcdb2ac32ca5acd2a127b30134eafb48b60194d28a73fccdcaa34c78400eab125943dc116cd7f5acdb608084d6fccdf599a5a1e2975f579a108abe9e09bea37b8717711f4bc71897b4f52726e364a40370543c902aab972f4a695106887787c6559cd1f0385336ef032f6b3b9a12b3b057d250473cb71bdcc13fe01a84d9d02ace7df557f1c9dbec1422433cfb2f64332c4eaac3bf23cbd85c91716af10f539308e1017c7211996aceb88feaa96a18d867a12c9af6bbfaf07ffb72f9bf891b160692d89b6e756f31e873c2a8b2f5504f46d43214b50d5ee5eaec2bda048329bf2b9164ecb84088dbdf828d9c9bfcd7a9509ea709f3748d85e9b39ecebdc1e8a7d329b0179a00125240ada88d678ebf6164effb1ffcae9761f631b9d4e9f81170408e9073dbd7f4646ac1ab0d0f5ef706d8a41d05b630a593681288d89ebbf4757f30580772ea7df09efecc44424aaf6faf186cfce887a0f01ca45a0d3fd90110701e7b9434c88e6da8ebc24b08e94d2bd95d243c7ec75b8dfc50e1b7bba2ce8c70436548cb4af1bf1bbcd077c2d94ba50d17ef396b19b61f6713e0b199a138ca8901a6afc505d57b5410f37355aa33319c5197e8e92671a8d08b8153af1eff8203a97d2480879aa25fdb3c3c2f359f306f1750e93f6427135fb3d29f0df9e532c5e4805485bd477915028d2a4d68616324c5c6d5ddac15494ad90a2306f8eccaa66033e0cb437997ef7cc17f4a0ebe412ca416eea0c09ec4dc79123effefb5a2c7732cbc17b0178e0f9282409098e829e5463ae38e6c6668f0de5fc987093e309b7cb5e97dc93ffdf2812a6b3fc70e10cde136e3b8bfdb240b686203aa2d93595a5269b279590ed7cd8005831d75b2f66f2bdfae0772aa074500617080d6f84b59142344591cedc4414de1b1b36013d359ebf9599578d561f74d3d89cc6a7587085b0dda356d52ea5e4a710dcd460b49852e85d4b93435ee88c5434bdd9f8929ede241fb8d8945d53aac9e5767d87bdc325336633e17aff424b29ad62479aa10421e8ac4d7f005d2f5b4bf65889576102a7eb06ef3b6cbfde180a9d800e18f63a18f2b534e47f96086a01ecb531e92cf0859e85caee194f87aca59fbb1fd10be2e28031d557de3eadadb745d95f8adba27a8b3abece26b8341842e1e714f78dc719a2c702058ae824354902b737376be8b30cb54b6fc5e1f03bcb5eb42bbb8fe4f5a874925c40f05238b2050e91eeeaa46683777714920ca15a59c7dc31144475e4bea4227484510445291948d2d601c370a983c80182f788de8da38d07c2fd710bbf886b5e975ce86fbc974d40486d3a5a70db94cc4b045c271956a10d6fef4073d0cfd7dea771afbf037c7d17b85a4f7803cfd61ad5c2f8085b05c7ee36084ef1faef6ef1fef1ed82e4c7fac674d2ffcd198407251f3a836aa05434599b631574de0be3713bf52365465788af79f06add06018734f455383568e02e28d7020117c243feafc5c196d403f911a2fe33e10a87d3e80a40a9fd57576775390c9984519b8524d1cba7f87a3541895f633126c799cd04ef6eeaefbe3e35be357ccb721f0b189c9d2b09584c433936b1fe713a1c52ee8d9e71343835f2050581dd794f01a2e390a3703bddd250ec09be1ea473d104ff1308566718c23f80ca143a8febfb4bc9fd97c628e19ecaf374f08eb69717e60fed03657f8139b4c17042498f56f106f5f0d500bad85353c456fcf1e1ce6af8167b646218f1ffe48870551d1324274bcb2269e9605e0196c92801aece4dd735e01d6d47e651832fb2d63e41ab77eefb3f343431d16a534d97873e011484b31246fa947657ecc88f9bb54c0474e7205da95e86d8e3d1230541e43f8f6d113c0e14a84aab33e444a9779d65727d32e85af1cb84c11fdaad2024121028fbadc25c7685328123b312ff0f451164ceadf9f2be93ca0a7d9d087e4a456e5f1d11cfcd33d3a021163de0f82c8c74f041b0c7db59c8635809c0fc08c0f60d90d0006b6a007d6e2f0f5b1c3e24b1e3e389d99fa07397be32201b81de1e6be8603ec1e98860f55a76f3afe860c7feabb4d90ed332908b3ef393e1bf5cc6288d69ae50638d4713f68973d0cf60c59e1d2a4d1353aefe04e77c1056f09e150f91528ef93260c6866f22935feaeb8fdc2edf4d1c131f85b689697ff59f47eccb2c06873f95780d1bb8c55ba6de204f6b12f01a18b629673771053bce22a70ce322ce5613243d28248b04f699484d1513b889051ced52f82a29ddb12b36dae347457f4ac5248ce71e402cf2bd1721ee43478005deaffb1d10efcd0083d68dce640d70541d6046a4f6bcc0de978bff2f76588cfdc903f84db48efd0ed86814b03a8386f83e22bfee21f4da2ff62b0d87df4d6bec4dcaf2e2e7426cd370af2af9a1b49443caf02dd7ce0b6ac4361af72ff3bb788031df93bac9a9f126bc38b435163edba8a305ca6d07ff917427ebf61a5568f2810ecb5f6db9aba19cfc7bec285c87b1b6247dcb69d525f467db037e60e45133e9e44741b6a4c386216ffed13e50c3aeb6681cf9ecae8adecae3237ff62105c62ee84474514eff24cac2622ab4b1e933fcc62a6a90a746884d11d9f87dbe0c275fdf82efb90bf079d7e10cf512c578a6ff84f856c1f0e7647ad22159d4f1682d138a9b5788bb34a80018a24003821eb3cb7d1f28129791b2e8b3028b3aff3966f7a033b38650d785107ed51bae2e36cdbd23806a0e6ab32ce468df4604bd1e28f1beeefc2e05ffa8b76cd30508b0dceb4c19728bbf7c38eb426ed21b9cf4294f5fe0bf5084c3931c89299841ecf11ded5c710ad3a68362255c7c4a97c3468d8f616be95e923ea4f3c403abfcdff347f8ffb095b32d234a5b1adfd8d6ae05d102bbe89259a8bb99add4596603db60e1013cfdffddc380b7fa6f646a9add2218f92d7d4630461d91b7fcb5e64ffce39fef28aa792679101b38ad378f8c93365010acf5cb8c1a67741ff6c8e9562406c9ec21500a16fa26f485b7e630cdaf88c7ad990ef29c1ac9ee07f1c139b54255e2a6dfb9e550a0c6126f5e7651a97846b038ae5a3c04eb1862e59e97e232872865df75552301251f02aaa11b983230b224c301fcf33ccff33ccf6c11b6b56ead553ae929a594dce7695bb1a54c52ca94e0bee0702f0300d88305082184c0a506330999094009a757fea3f8b2a3c606b5b937054b2693c9a40c1a7c88028f664aa7a693a32e5b5282c385908387191fa148d8cea51c47bb92f2949c018af2c5ec861b53fb1ff309ced6dcdc4ffcbbf62593c96472820f4f94bc320b2474bfcbc66294f250f0d18942465a8ebb0a953e73e2503916a8c3326db45879bbf8b189455f9041368750db9f268ef5584b6e165ac5a13b4a3e32a1aa688a15557c2fc7944c2644f8c004be9e6fa22d659cf712a8b86a8f166d72d46e09944c42cb8f0c96ee62a2f05109bf741c3badad0ded0725fc1319e16312e7acd217c2cc43545a12b9ce67b98ca9f2e668244e7615a4a5f0194e7c4858aa624c29ffb728194b2693326ef0f1889352a66d6ebf287c38a2ce59a6e554100bc2c3e3a3118fbe3e8f73a1c2f84902325e50d2230dffc0648243081f8cb853cec722f094f3a1083be55880041f89604d7bb2ca58c1d65f167c202299f5d32e27f5bf203f0417a242a7b88a798630786531a1417754d685d03b05a555a1348c4a22043aa6c6ee888eee7df9184432ef099b3171552312e14310a987e82fa5469cac2610f5e7e6cf1f27401ce4e8fa14743ce6209ec2c71fbe4c5b17b19a42b756ce871fb2d0f5d992ca9c0d02c3471fca10da4ec5942d5530f9d02591b15fdddc83ffa72b69bc8b1ed2f3723a760a77762a163ef2f0998fe9f8d0ab31450a1f78c83bff07cfc1fc6455eee08a7dfad58e9a94b976e073baee96d851fd731d907167a93c5e87db4687db553d58c92b6f3d9de1630e9f76b7290d9f0b1f72306b436bdc840e97bd38207358f6dcd0a9f3840240850f38a06d3426a1d72da9966f3049dd0e7274909377f9c30d894e4a698de8b0a1c18f36a0ec2fee4258ba59960d6f3cd94bed6911dc08c10d10dcf8c00d0fdce8c00d0e4840071f6b3867df0539324bf48f65e88e1e4100c18d1b644c2601d0c2871a902f17b3382a5d2aed0e3ed2e0ff5b5b0ca763c2071adeea7d1de9a3bf92ca19366976417df57b28a53a7c9841d39c5345b57945f5cbb06c9ba567aafca53678f820033278e5fd7532a5f3e31f63d0d6af933a2d757f9361850f319c66398f504ac794ef6b7c8421a1f4439e54b7303ffe07188e69d2d7d4c54ea24d6418e1e30bc631dd59af2b6d18f7c30be9d3fdd48c95d1f3fdd105459b4c317c0aca32884b3eb8f05ebe1c35b55b580c95ecc7167ac068e8d8027c68c170293a9f7436abdceff0562ff9c802163769fe6063a363de051f58784b54c4e293d758f80abe75c82434a68fd9532b18ad620c5b61aa029e72166d292fefa84885c673f24e29bb8f291cf6f2fd0999e93c5378e8c8d1438d0b7c480199a96242b3c2f6250afc68bc27f91f3ec20714f658cbf939ea8f868a113e9e80eeef6f1e6fcfd287138aedbeb11373e2a629994c3c5006522304264001196b7c34019d1f3598e6d6e0ab1a3f820f26e4e1a2bab89f7bf8ba84b3fac524f4c55668fea1847f2ccfb859aebd1cfd48c29b7a4b66291daa29fb4042d2ea47a870ff4e6163e31828a17d4de7a765e5c818c64fda426bc6f270a6356c1403d3f836a1aa79633441b0418c776384bdddf5c7bc77d818469de94d7774aacc5e07400936848196d2bc38ea7739c600612318a8b0e1467f6ed6f816187ee6d3f5137b3e6f12c1c62fead3967552c34e35650e367c516aea1b1d22b771672fd69454e9bec92454dc062f0ea231bd53ad33dd59b0b18bde459e7dd2dca5344a041bba2878965a96b651a6722eea98c473b4b5535ac44596c49b5a2be5295fae6432e9d6c96404366e81748b2193fcd5d5a8964c26366c816e2e99af622a0052b0510ba39abc0a26835c14352dcc967386f22443699d67a1ffcfe68f1e2c54576471cec1ce3c2b730cb9d988859ed516aceacf64acd88085b1b7bfb4c51c77bb53f2011bafc8ba926f27adb27db62bf05cdb155ab1d18a4f575269848e2573b38743b0c10a46979cd2b57b8d575a8579b663d62c7f9bb2a504365491988cf662b21f93c9462ad0b970f93a639c3f990d54244ef967e9fcdba6fd921cba03470f1e32b0710a375d783a79972dbd290caa3cafb9a9d828c57d369fd4a86cf22c47b0418a54e6e8d3cc1b6c8ca2aca792f6da4d39ff4d051ba2b8552e89ba131f4fe943918e2b66154b697af341812cef9cfaea49c71c138028d8f844ab5639a68f2521b3af011b9e485cf508a5473dc8c7363aa1091d948ce93e059d323638610a9d1e2b5adfc4e795f966ae94b89aa8f76346b9fc8db1d299f02eeee768b865e78c89b48bae14d22d5dd397404e58bda8aa964868f0d0da317bb8d52b6197deea5a8d8f3a264aa0828dcaa074beac31279195c7bf2453fbb37224a19a8914950f6bd237913067b1d439a9bc77072191864d4126cfb031ff89e0053fb0f188b248134f33c2f6c3ee88e23a9e1c4f6a2e53b81127df201fc5327dd7c90623bc1cda63984b3e2bdfc0c6224a9d49baf9d5a7a45645b87ad9f12ddca34935118aea31fdd54bb7a445449f37fa6cb372084c6f77bc3059e2b26488626ca898b276ceb254887a9356a7305b3ac79310463f15633fc60781456bbd1c996f1f53823858700d6e37aa4b2610e8c60e328d2551f300514e52b4c5d3b1475ce70fb9c868bc548b2985cc0fe5386bae7a76427bdf075f933cb33ea91936f8a06da8d34f6a9be4e5f780ab45edab1759716e3d18fa963defc9e4e1b8747942254be284d6031b783808cd15843e9d0f2eba037e79f3d44c7c4cd5ed90925adad65d45e8e5d4e1cb304a6ef96d587de8f0ebcea54d7b6679f373f873a727d9312e87939ac947971551cb89831b2ecbc2b4dcf43d3894a74125cb1cdb296bde5049134abd5ef9a69c71439957d46faa3515b66f43726310f93983cedf14365c9fc3e4f88e6b30bb4e3f86cfa1636b6ca801f1592c05d9d15a2c4c83e982cd45abccb65134ecd915d7330555e2b13398a4bbfca59fbda76638ff6e684fa92a83b99f76c3c26d5cc5c8607b69cbc77e12f2f4311443e99c10aac38f8d36c4b06dd29673d012ab410f0317465d376fc8789ac160968a39f5a425d7e3179cfd0aa59594bcb3d60bdb25dffa0daaeee4a90b988db2d8604226af13179226f5c44bc88bd7a52d6c4a35e690965b264a5a48d3f9d5a5e4e227cf2c54a27fbafa8368351d2c2047e54d61d3be82a97dd94676cef1662b64697a9e2557d4265d15de1b17cdfea2df94870ac8f16833a2331ed898826b72f961357e73580a8e9022229643e9e7cc46145a1dd5b4eb49d5b95a329940e1cd3fe1156e26af9f92c9c4c6138e7f4164b7fb48bb58054b376234949290c983bb98ec58cfc0ac9687dd4e13cb8a19b894a694ea5f06ebfc33cffcd53dfd6440af66b4d3bdbeaf3e86f737e590490711279b32848801ed30b2e397ede7cd43c2809cf78a4e5fcda0432160d873e677e8a0bf1bff82235bf77e3aa9bda50a215eb8649dc9d6ec5559d45db8c65a4f5ccda5944b644421840be57fedd3d2f7a13d6fc16b513236233242b4703a15dffc7e1bb4de2cf0395e10a62cbe6185102c5c6294d251eea5725aaf60c6f2fbafcb297649add068d491f561adc21b9736e69843c345890a5514d5ce266f5e2d3905f4a67415f53368de18297071f3ce9a28d5a18fc2e5ebc1f36a69a69c020576f43b05bb9c82cc3fc1ea169ddf6e954e894eb8be63f4cdd59cc4c99a70f0533a5e343df5e932831026182ca71ff95431f5ff4bf8ab3dc891f70c1e7788120c59eb9641556dcaa6902498f3a69b2a9c7e198b4390c0e7ce6a7b8f669b74c7f845ad287da1ef41b6310031461d5d2bbb82fe53f10329c665b69b7cb3baab9349192b680119ee4fc60f4088518e90561a45c56cda1bc661f92dae5eea57eb821ecec30c10612443a84e266c7d3f0505a3f06931864d5b174d178000e354d28205d351478dd802905f2cba9a9385efeccc41be30ab7b8b0e9bd28b920ca37729e37f10fd0620bce8948d6c99acc551a71e6aa0600620bb40ddf463fcc9e8b11f5d94e52647e686e8b8391780e462f55131475eb42721d59186196e04105cf462dfd7f67d951a5304905b7c793cf7f6a9ee2ff911406c918a53e996e62eb68520b548c887587bdcf3cd3125389e00428b5f3375eb06a1121c3c94070774e80e1080ccc21c2d6c509a62889956c608c8e8a1861920b2b0b3c59ca2684fc2d20a128bf47afe4ca161e3a2c701105874296b48510bf17562098e3e4375e8193b405e61cc9f9dfdfb6256cd4f2665b82005ae385ad967aac5d5f0817f00a4157c95051d430631612156a8e6f12b74c4dfc7cd2ab2b49d335b4ade73bf2a56d3dd508fa9ae662a12d22f7a75ed95d878838c1503082afaec2c9d2ef6a8d174890e1d8aa3470e33729cc01b0d6690536c1e22ce647d368fb629d2eceb97ded2c99296e298ad4e9dba2c2974914f41ed4706717f146eda6b0b3a93e6f608220afeb534fda693d1cf2b014828f63a1d155b7339830a0aed4bc92cd2625f2af313e8bca2ab52f6b377f5c496fff3a9dea7cd0f75c2afdcb47e25164e5d4900e1c4fbc94bf6c7ad35e8403671905a3aefb2ffef723491129695002413c6f8b1fcd2589edd82893ac812b71b63e99e4a062097f0434533558a6f1d3b4bfc31c48fe5aa18641e954c2665ace12628e1a123b81107904a30a6fdb493ce889dbc048412b605a5eb47871196b10e804ca2d94b553acf4665f12491f013dffe1ad7d41ce781830c1e66780f1244012412b65ad217e3f3ae46bb6432e9110410ec00041266876a5deff958ca833c229d7ec44a2b6e05d9310288238e9fcb36a764c53484821b2f680148230a5716f7638a49dde5a0d1e304208c504ca9e7aeb6f0352a12802c222f8d71738a07a54f7b86fec0033d60ede1821d2c0051c427222ff55de5feee4a2613335c874b002411d6b7dffc99fdbe48411071c638b315ddae23b487c03c579bbad095936986e83b6e58eed09129e485706312dae25b8bf89e2084e8b3c97992fedb299776800ca251b51c44f7e6d0187c6f810f4004b1fcd55af5a52995fa92c9c403208130e9de4b3d42bf93e84a26931eb8f3c0718697f4c08102104058a32ed99f68d85551c964d26598510607c820a38100f2072d5b85fd7c4228e9501c3a00f143a284d96c9dd874ab4a76a0810308da072c986c99aaf8d12dae460c40f8f0e6c88dd4d149a97c974c2669a091c6193000d9c315e365dad2d896df1e3c54078e34d0d8118314dc00440f2969a17410b95e55ed0464ec00240f9d14bd9c843ef5c09dc70840f080aa79e6abb06f00e40e8c8c6b6e2763bb450d881d3c7d32972aed7e7cf602903a38f676c9626e0ca1d21774e0036474e003edac69b8600d37810a40e8b09669595ef3ea4f1a6ae0288305374e40060299c3979a5dd6153ceb9c2593c91440e4e0cbd99bd81874aa1687f2355e181d5e38d81aedd4ee98ae943a65dc984c0470069037a0ed93ad7d29eb54d21bb5821ba5821b95821b85821b75020904c00a206e287f188fb5a43ad39740da80cc318df210a626e3e7061036ec59a4c5d5c66bd03dea9e9cdc8a4e39206ad845af49ab60f2eea334b8db21748db2d050e9cd36d569bb37a42067602d87b8942253fcfc3183c14a86bcdb92f92ac303a0049032701dc6b4976fd4aebda4070819ee4dbe75d27ec3e73bd2a801c81810fb7f6e7167c3859318cc7296bef7bfef391d86fe4fac058d0db22d4e86eb583d030818d49844c83a7df9625f28674bafe99b2c9f93090740bc701221e46a75014817b8aa7cd6233a2100e1c2a1c384f49869aa1ade023676952dbc53c976a081c303205ae0ee624c94fe0cfa2c7c71f345ef8cd1d60a08164af25d45bb671da925c815bacd2ccfa6728805205638667ce6f81973ec622593490fd040a304479f91430a205530bdb6e2b64dc7d31240a860cb55593c2fef6c17c8148a63aeb725423bf35a32998048e1de20465b2e95d68c4a26131578e0060f1d3a3870230667c0e0c60d104c26fe831c4900890242ffb7adad54eb5640a0700e253f848bc8f022f201c813f00bfff259c9358038410d51b984ec1319409a902c25b2b2297d97125203840978f2b6d8a4cdbf72de03204b282659a97fcbe3fa551c204a684c47ef604a7c9d8e204928d8cdfc88540bcd6dc964726bb8096edc0eb735dc0437ec03be03751dab061a6d061024d4dee1194263e568fe1859cc73ea994779dd6d8cc552d2e16a393e4dab838f62f4672283fa8e109b22417c10831b69623e234d5de835f0318c3d44c9bc14c386d8c2d854acb7dc99bb699e0b1fc1e8c7ace36236a1a67337f80046d6b941fe54caa773aae3e3178cc85bfe78ed741ee40b64ec8cb9b9901a3bf6e2e4ae9d1a635c30557df0c218b343aa6fbef7d5bb28ebb928ad217b4b6f84f0a10b5d2e680fb246bf2effc805d6e37a1e735d42f441f8c0c5a17292b1326ba96cd18f5b9861e3a562b7bee6f98c0f5b1c36cafae6d57029a6d4a2529bf375a9121c3e68919c48ebceacbb29b3c87f4e7c09d7cef0210b4ec55b7d2e99b1608a45759f4c9f6a125b0fc1c23711b2ddb541dce6157ffc981e73a56c4a9b5c91a9ac968e95974c2669e4e0a315e9b8d2e1792e994c3e5861764c7167a54493fa6315e724e784e8a45574bc55d15ac67ed0691fb7f2546cca4498a98b8c31794a26930fd4e003157a8a1731d31d093e4e915d957c7d1669499f70f4f01d8840870ef5000f3e4c5109a152a41d74dba6c75131c6a450ee9256b5179dccef91314df58b364ebdef4f453753f1c577a942d7a8cd1fffedc5d5fe3362423fa49a4478915e7676f6954476c1e6b0a261d373451b7571ecd46b91d1b43d3322b958842569a3d63d6fc91841041766a5e8bb9c768b7359ff9b4ad316cb051d733a25ef2eb54610a9457f2d3aabc7b375b288d0a2ac15a7ff2a878f1acda2eff5a81e642b27b92cead8145e84f017574b24167d2ea139df3f632a8b8cde81067b0b3c4008115898d24a4de7a052e618df21f28a5bfc752d6cbc92f91c82882b4ae5d6c1949ed29ae256f09dc64c9ee59d34255614f5ec3c077d0dd2b3ab408d1261c9669310fb78780f3462b0041155e4a1948a55d763d06431de7a890a4bc4cab3cca60afd7941e414a6cafa7ba946a98657c414e82aa1e241ab9636fd18444ab16af5a770c15358dc204184145dbf79d8f7d114748ec828bcd22047750e4fd7fa1c444491ca3ce60d398884c2d21035d2d46e4c4a0814e97799cb6cd9a47e27f2893b9f5af77cfb1c1c657c40c4135e4cf2afbe922d48914e9841229c4083443681b6a8cd2bc25355a55210d184a247d9a7787d0a229970746cd3665f1e773e98c8477379faad18c5f34b184ea750df61f38bee88580225336953f952662abd12eb67d0151a4e4a2493d48fbebb6b235610884c82b9dfbb30cba62f5f495461dadd9e74ce66612490e69f3a07bdcd413bd07827884002d7b994dd4a7ea9ff228f287743cbc8944947b338a2ec67619a82d6f8374d26659421d208f3678ab708f1ca916184dffae9dacae7730c17613ad192a771cb33dc8a50eb8454cbf42662afccd8fcbc737319228eb14b219fc7635ceb106b2e9d2c3dff099fcd106b4975950fd933325c63870ac820c18dfec08d1490d18387fa097aecc08248219add1b31da7fed29240462a24fb88dd9a6ba5520320873c9a7caf607abac0471c6fa2452fc4a877e0251d8e6a4197674689095200208637cbaa8d9d1b4dbc814227f489aebe81166a279477e683d887bbc07a13efa7d70ece3a8c8a77ecc121f8ab616b762afc51ad91ef8ea5c2264a820621d113d306b9b53c659dfde9a87e5d4c5b3d4ac5dbaf180099931eb5ace1fc27307cc4ba6299dcff2747630ed89e5583165560fd66151cb9c927a98cc9ea6831694ce6929dfabe8670e5f5d8ce94abbaa522f07e53d6653a2847c104b1cea4e5dba9be1f2b80787aafc94092553daa9f7063e6e2ecd6b7437eb6e38094da40d7d4c415c949cf6917136dc95f7b3c8ca672a9cd6802ab3f87174749bcdd4f067cca26da64373ba4a2693129134546163fcf61de0e833f40c1134e826838c116b194e1c68b4c8194e615d39986cfd6caaa48c175c40c40cbbb5f826ed1c77e4a7022265385a8e7176b6d26ece7b8890c1203686d9af8ec818d630f95f2f12c32f5a4385ae0e2544338248182a1dd6b5391f54495f040c6b65cfe952544e210878a0b182921e39648003912f98639eed7ed4eb20fa0b44bcb09e4ab2e6a54ba3cc9389ff40a40b05256e9b828b89b76620c205439b66a9200c886ce14da6cd4ebdc4989a9e20a285c5c4769a5d9b517acc4251c5bc2eb4cb634c921100268860a18d9ff9eadd2382c8154a3797e64a49c40aa50ba35e316baac067fa57df0bd91c443f435d87077af050e3033010a18296ee4cec5b9129945a17c3eb7af0a0651129d4e95174a97996bffe092251f83348cb95ad5273a5c840040a65101279c2e6d962f8696afcca1f41c4098dce10a5b3b35dfe6fe842a40988d2b814468dce7587f7701e688830e132ab2064bfd66ac8944c264010594251f3dcedce451bcd1151426b5944465f6d19cb2843870eddc9a45b75c70b8e219284e2823ad1675a46e45b3299ecf8418e1d69e428e1e12df01fe4d8e165104102164ea63cffe93edfe71878521fdb47ec79fc738d1063f42f6a53cef4fe3c2c06428c92537943d45321c46054dece0a23545e6b1d3dd44041860ce364e2ff3cb5c58c1c253c2cf083210c610421c2e092e76b077d9d74cc84040357919935088d155e64420830d86eeb4b29ba664b9311427e51d2a05ef3847718e28b436f56d40aa33de8b7179db5e8fffc5ae9bfe3105e9c7764360939257464427681122266d482bceef07581e67fe8dc9759b9c43708c9053342fd5d5d45c5cbe3c23d9567547653a7b47c8bb253b0918b5b9fa7b5055b3a1ecd67d62a06d52299659de5838c9978b43809f7247d83ba0d259b4532981059f55c168b6a4cbf314bb87a198b53524b523db0408713f27208eb35b9798596445c54ad519b650971c5a6b97be1176ac5da551d632a3bbf9cac703bdef54adba7783aabc06c3f37c7a8623a75aa484314920a3b4416f041082aea103521e414c910859882cba2d2c7607253c35a8a62cc6f5cd9cba7c114428a37649da84f6f2929511924c011859051ecf5fbfbb2df16b2bb408828326b0da3edb25eccbaa44342f18a1c2533698812a782a2a084fa91653205ddf01359a8a451fdf5d237f6c4737ea31e4ce8eca7ec44b7e161f2d329352a288413ae9fce1937c7cbad296413beae8bd2182b5ec8cd0e219a38ee92da2b1b0f5a954ce472a61bba72c6108209c489501a16f7316b2c86904ba047934cb91c736da94b64106209730c0f7d9d662ace0ba9c4359eb4255d6649963884129e0691e7715f27e3904924eeb545f5c8d42594422451b4944a6f730775b5422261be1e5316dce3867c432061ac1ff9c9c553a56925934908421e9176d3f6b0a6cb42ee8ee8f266262d569d74f49910d208ddebe4a5ac0c33796244e579479926d12276d14978a96cbbc88e22d42ca7e2282193082cefc7cf1654fa690f11766d7a7dfc65b3d70f61f4bad8340df740e3075708318449b3d2bc665e88bc92a58b9ebdde849a10664e49e72a75d741d88338ed3dd366db50b5b5643229428820b4b7bdcc23b75a7d0ac4997e7348cdbc1e1386002291116979f4e70ff97abe0b1f93aa2ad30fe715f922e725638af60161eafb7b36177e417c503edf52b4143528f1ecc18eae49d8f9f8bdf8217a48871369369a4c652f0fa64daf417bc688b30a1ed24e6294ba305f97aa903b547242e858cea7a5312176f8d34ec7b3be08d57d481dfe10a562ce943fb2270c7aa88e104c2667fc8e103a205350b172eba90e2387cce138fe172fc8b4e1b2142207e5c7e772e8a4636517874545b9cde8f565a6c101355d6522c3dad65e42de70fa202add7f55f86087b8c170a57329e531bffd961021a40d58feb35fb1131842d8604c3369273ea8d7dd6b28a7bcc57ba6aedb51881ab81c5a41b7d645118f1c42d2e0e78af16e0513c8aa805905ecea1c200107aca1a347c90e729c5181b200321630081020006b6c054800d083871a2d1840007c07aac60ece501d2002e0b123040600c01c3d74a861060e1c20249dc01c3d7694f0d0810347080927d2308337d1c37968c27f80861966b8191f249958230d36c3cdb0418209ccd14347090fbd04e6e8f1831c6d09ccd1a3d130430d1c3842482a71d041e8bf26e94993a7049da9319998e13b70fc2047e36817420e1d9a83c719397ae8c8a1c6e2d8e13a72a461061a7c02124adc31aba25c90d1534d8fcf51c203c719896412683c05482481009248e0c891060774871a1c480009241e40f2081c0d2071448e34382003153c80a4113bd881be8002248c5884034814a1009244e0e8c002481011019243e0c8910607564062881c6970800124854081014808910092411c804410242481c83b87660b6f95412e48810d4800713a15d7312fbfaa9d121c9349192e48c10e150c81e40f27d3cc022a20f1c3e92383db87c8561e91f421997da2967233dff3247cc884b68794d0f480bec5ae1e576d0bf292c984240f081356a5bf43974e2f1ef68b263ee5ebcba4f47738c6375bc6784f5b991dcea43a1493e8602615c91c2e5dd1e7c58367c70e891cea4e42796e6b49e290508b5947ece9a8ac9a80040ee7157da2bf17b3c5fd064793baebd5f4d9bc7583a3b1349cd83c7a73b809246d784bdf62929bf399536bec78410648d8a057d0298857bd862bdddd29652ac70f27891a3859c1e46c63105d76491abab94bb5bd700f536180040d8b9a0da2b1f26ebe0fc919aa4a190e48cc70562029c39f97f1736c3d8d31e4a1c6196ae0f81c232021433198f786f8ac7adf48c680cc20c3c73b7dfaa0e36801891812d66aeea16aa3a750c964b2038d199084e1e029554e0deb4fc2c781469380e1541a2bfbe3594cb1f942177ee3859d8c5dcfd9810a48bc90a9585a366eb61cdf2e994cd2f01d698080a40b8dcc9e3353b55ecae642797f419c723f9d639d460a48b6e09b7e5cacac3099542120d1c2bd253b2e7665ef8a0948b2a047ab31d5fd705bea00091616ad59fb3ce3352420b9425b721de34c2891cdc902891556f78b72bea5b24a5e85529aa90dca5b4ca9980ac8d1fd53da27c9148a417779eadc712f5d48a4c0c7a7a4ce4d83d7982593098ef6129044e1993b21db96a93f6b9a4002853a69ade6f9f85c953ee1d0798b9e524cc2cbe2843a6c0a5b5da66489bd096973f35a91499cdc38134ecac265f258ab73c2256495cc4b4edf4a30a655fb706a35f4c5244978adebb354bf9ec9fa06244860c68479b8ca2c299b6398d5c6bc4f579b0ed1185aeebfaa78d99a7a31f20eaab76ad36f251931be14d72e3c3e5f297d18584c41b5a6db847167b4daa073f2249e606069c2748a0baa356b60a45b47d5325fd0aceb2fb4932b623d73b6ffa82f38519ecd54bce79ade0b731891f18350619945bcd0d29ba785b4bfecff2ebe0d4deb7aa7c275a78b949e7e9ed8f657f472810ea5115c14a234728bd278fe1321ae363e650b642c1b9952483fa5a3b5a87436b931c782f08f1665aff4d45eb18e41681656c814d5b2c3674e074664716808dd3964677a5db15833578899d1d2500387b31a3d020b4b5a7d55894fd3f115c7fd1dd5dd242bf6e6811157e07f1bf28288d29ea29156e4a5d4e7ecaa212e572535186185ebe37e61e4a68be1600f82cf606415d685b7f8326fc9b485a37d4415cf9ce7f1daff3c37fee00523a940d76e32154d8e501a444533f33193ddee6d8b3dd44883c706464e81f7755d7fb44c49f82593c91a68ece8c1c3db1455878bc992a98fe9ee48293ef5ce8de94d5f1ea11b21c523356992a24d6aeabe048d8ce20bd23e69d38ebddc4c30228a93cc94b2a5b7451c8af7df2e79e60ad2530f8a2f79ebaf6f5cce2418f9c4bda231056d1e4343dd81060e3f23870e1578a2aa5971cf1877fade121c3ed289720a6f6351e468f4c031c289f34e5f30aba8808c914da4d28a850a1f2b575f253c740469441368f7ea5c9a0d4dd9cb4459948ff87cca2bde3a2307084630f1078b0d13c2460879092b4f462ed19ba63c2346dac8ddcb18b1c421e6abf2f865509a9d4c7890b182914ae465d1cc2ccccf5c3f4289b3c46dc8c5e6aefa2393e8e245bdac56a66dd511491473dda79163317e221c6bece8d183914878ba72d02fd371f26d48bcb952c74ffddda30e043474e040a3078e1e3c7680a3c70e34784c262e1879c4a749f6cbc5b9944d72843bfa7ea3efa60d6d964c263b461a71c5916515264fd9de2566ec984c7c30c288b4c9cd5639193a7c74468e4520b5bbeec3c36d1e9deec00d0e9031a2886b33c7e6ce9f655601c44822f0a0b2d3c3974ce23222f6cd26a3b351366cd2c821b6d49e3d36ec8a7b68c41068db6b5ccfe0a55e8d14e22ea1b2ec43b7d7c81042f1dd34af0f9562fa02d084914118a3c6a8960f1204fe1a17d4ba567f2b8138c6e3685fbaa46659409c2ae6f872bb8efc2195e6396b8a8bd5df19f1433e1e4b6c9b909631ed8397a14a684695fd7a840f2795e3216a4cc373a6643239c1c81e4a49a55f1acbf714e60d8ce821e5ea51442771b184380f8aced6a53ec62cf28346f0f0fff88c5891f35003876b60e40ee64ddbe641b742ac6a073de9ca141f4ca4584a47ea80aa513a3a9d3013728dd0011313627bd2cf2a5773a844cadfb9d59598d57194c12372f053ed7867c68b10323bd078188cc4a1ccaf79134a5fed5946e06055e9245a6364d2ae96e0f01eaec38cbce1aa3cd766b22ab4c61b8cb8a1102a3655fdee985c68a40d887baadb9cb4e6531a1b5a13962ac61d5333cf1ab4fb4e718df3e5b28fa8c16a4d7b26dbb73d4f2593c90946d280a6d93e1533163368e02ef70991f59c21bd9582c8d8ed9c526b86f4671f33efd51c3f25182943574a8ff24e228333ee59713963de5863e0e49dd4cfa2640a0d8d8821514d4925fbe417848291306c1b62a253c989ad39020644ff859525b9bed019f9c22226c766b664109160c40baffa75677d7a5a515163a40b26d5919b6ceccd3fc50583b77b12aad26cd969640b281d836fe739219f93b470a78626f3d0ef1a9f912ce45dca5d763f2cbc355aaf1a76c45accc815ae7832e85a4eea2ee3112bd4e12ee36255d7052d1146aa60bdde5e88fb1c3ba61c61840a8e9a1abdf93e9b41250048189942962efad38d6717d19160440a063116d3ed8fb620442351d0543f77a7203a1e2b1e2350b85c462f3bbd35469e90181dcbc29a6c6908cf1871421e73229f843ad96ded48137a192d1a455e636a9b09fe659cd2f42fd720e491251c77b6613fa97c4dd931a284f3970ca5df3ee9dd9f04e53c86655bf96977798c20c1ca2edf7816a4f9ff3b448e71a558f2e169d3fe53c63867d9e041a678ff19e221528c524e19eb8cfed54915041162ec17de22bebc73cac9613027ae62458f611574448451903f2a49fb4e792d188cb3e3ec74b250db260646597d8a5aa86492927024108644813020000080c18fa7038311083048502210c7e221b16819ec0314800142341e564e242a282218140b8583b140240e8743a130000c0405c3215114cc712c46c4ed035bcc69108e83841c62d76c956a54205777fe937bab691e63b2fdbfeea31a860359963c1166d7bb1df28c05a61f2368e32fb09f854ae562b496d9d130b195bd4bd380cff4f396161aebc7835a47798acca8fd90ba7213aefac1c88eb21c94faf9a932e6a827e987dba09b66fac2f42372688de8d1586b264a51c7d9a11f99f918ced91cdccb8f23374408d6e38bcb92c2e3263c8ecc6e76fa42783b61ddfc5838c5e83fbffc1071ae4131d46810bfc481ce517ef4deb40ad43618023ae89ee5f5edad4ec1c0340f1c01433c78e49a8a94725d7bd0cded2c9fe0f595605076022f0cb4eb8bbe7b9b4adf2d75d36ac0521381478077a148e89d13d9905ddd474d77ba73ec84eb9eb5ef273873e3890643c2ab7b634a82b0a0e54e18314acc3baec8f4495fdeecfe388cab0c2c36a1b20231040ec52953315a7ac269838f31296b7f9ab26f3779ca597fc20c59f425dd48eebd64bd7fd515fee328816a2e29a91f768c4418b8c9c9200cdc26058053372c9c04d50fc19f2e30d5199fd9fc6acf0dc2db707f7f9e1927f0c7fe5ff9b5f859c56601a2913a3505bcfb505d1cbb67cbe1871d30bb1a0b24cd183cca6730b0bdebede4e184c6fd14d9f739d214cb1ba800c5e51cb212299c72adfa90fce8495f3b0ffecab20f4636de8e6fbdb791eda9ba1199fb2102c0af999817d9d28948a6e4d805fe1ee99dbe04a23bd96a2f84c2f6014ad28137548cbb9c72df795e783f6b10782937b91338b7e6391a643cb21921d51986e35cc074c1add8de0ce48f034ede5171bdd52b34fefa0c928a501d37556cd5e876e70af345d99b1eb95068f850fee7d90c090313e0096416f3d82f66de88a627eb5bd59da2708dd5199f0470b1bc4a9ee576377e8ce86d8bf88ef270fd609f0cdb315de78c4caffc294e1a75f8e798ac350f9d9e62fa60c338f861bff21be18d94333029bf08794a9d88f306ff2e19cbc10a456523642636c63559826ba6e10d939a157584b1dba2522ea9bc285073f6757bd327172b5581c457ed804bf5af3b850a622eb8cd2b805e112c04bfa5b1c91059812f2fb3db1064f106c49ed0be1831506d9c67ac5fb2ace0255f2c149bde166025c25c0e4d66b46aa9940a97a19a66919b42665cd8edd2b54599efc5cc8c6b7b583cf232b3a28a652d3a5a5a4f364f08ac6adef7ca057f0e17b3b9f378deb9a2175eb71a9298aa4373f39ba0be209dee885091733251107ee3e749eaf777d9bd49e4de2ea610c7a078603ad9bf3da1ae4ab589a875caaf8bbf6da11ba76579e20d4303abf547e24f5be525cf4b4ccc54bcea1530c80d918b45703ca1943d054d4fdfb3639dc85794504a24bae1c19d6947ba64fd1b8077657994d54b71524902ab7e8bf633cb6b8f913257111e8a3ff724a7f32672eb9849dac12808181e92b14850f4ba3e180e041f6a40531b8da6deb301839c60901ff9872e68460269b9f7fc3e751c34bdf49c7f8944192124fa5a32565ea5dd310a4a65d7a89d457a324a9d2046510ac485a58559d963894b241a7d550f6ae346e57a21e2cde3212d7fbc30132122e54357158bb86d5146b4359d58b12de0c48fb4790afa68b33328f400db6c2bafe217c095e0ea415aca7b390aa360c1e2906c03587e547de74587a5e2ef9ce22bc924baf434744bcd0d093b52c4dc08501dd4a789e1f28deac9c80dae108c37549bc1f18899104be4a53e3cd4ebf52ea1ec116408dd617964564f97096ed7d80b39e77e6466888488a9ebcb664cab7a0ef2e09bda94994cdcaeee5aec367ca2afe8e6582438aa68fd24fc754e4fd3ac7d1ab9bf4de4a18665d003840c6a48a48580bfeb5c6e87277cd9934e08c87ca3fa41fd62716ae6caeeda9189341f27b041aae28cb0bd0612835c1103d2363cd6b36a54e9b5d8f3856974e53ba386de984dbce6c0c7da15584fc57607ae2855033cbef9d7208d9e4b00a3e2764245c49d5e7adf0cfc2e71e7821c08709a0f309467a4a864b92b25d6a2f88b37c05ba60aa05d268dca47372862e9339f29ed9b29a899fb3864719bae8ccca132ec5db0d1ca8176426acab62ec461a30cffc888edb99204acfd1c6dae67db870fcbd9612935c7f418619910d0d038cd47c4c66c4f6a7bb040b33e04c0590600f699601562e9aafc21b60a289b85168f90134d6bae28e9002f1cb954c9d011fe7407342f5dd4637e54416f60856aec85bd2ef452480abb0b2c95a62dd43002f2b8851e34a5449058b8a96ea77f6475720167ee6be3909388ce43890637a8c3255e1b89fc359474c483bc6893db41d0c155e2cc25a02720b04de9253f4912058888de1fa77d7a47009ab9f4990158d09573389fb5580cdc3f82925b29d6755e83e2a63ab08dad1f7073f62056a5558a02c69dfe593d619bdefcbf5e688fe5ff69054359679f26447469169149e726e26533251d95d7a4967035d920771150cc7c21e7c8f9122da8cf862793abccc9866be69a506bae9c53229c0769b5e7ea69be9db924e09153c6db125e973fefe9d2b7f2a53cda566cf20d6101ef8b63b9eac0ac0ecc34ce25f51336f2357006d00a8ac3ec19487d28408290296a18173448e075957daf67a526822dae67f940be12134452031512e2e8fcb3738e6711348e079890e84304c27eb501b1864c7d182ec6ba1d2a7626ce6037e1406c21bf0eea2ea28a098448c042dbb4ee711a4ae08302c7128d2e030c060524c11a82e182f22e30933965193b0e489f330ccc69ee46626b2332e2807d67ac94f533dcf224750e995411ce2942afd78f688c1d04deb1d4701f012d3fc4a101e9cc7de3930d7d3865313eea5569f1e40755207e49d17fe9b9b11c4938e1a4a6e86a0a57e689c3a068a5227bad0859af1574ee3d9eda09250012079120c97cbc423a3af021bc242c15bcaaa808f5e89b0704bce96bbe7ec0d8c9068385edb7f616ad30ac7b780ea864f293372d11bc8977480856af925cd147aefb600050b8eff1258b92825545fa94c5ed9e140f3d681e5104efead77caf4e432ab759363d43f9f549ee46e028b6a6deced1fd18061c23708aa1424fe127596f322e493232bc37cd3971f969923f7f2b3fefe1d6c9029f3e901bf57fa922e4c4e813ae5388444da961dd9e167426b4084da4ab38f3756bf60c46519da5883d6f792d496c4f3acbddc1cb2e871461bd78fa106fd4e68ff0821bf4bcc3b63893d8051fb14f4e17e60ea7394742a09aea9d2789bba674873bbb24a016975cbe9d695d57a208f8dbe249270f27c337057f53321c8a12e25fa5581803616a86ffa04396ad48073f21d49437074967a2b86bb491ee30f703091b8358952e16d1224c10d27ef5ab220b846a9689d454baf3de700f1b218c10d6db2936b38ea77226aeba72173a9d184dc9846941c9b6d045bbce2932eb8bc0f7bbf4681fc9ee9be2122cf679c3e6ba328db698435417e14be478b9a9e8bd6d53937e16dfb39bbee1b2da97a3508df148eb3bd7e6f2c4f68c626ea5ef68dbde420e37c942763b2749db4afa61cf7573c6b62b5a48d1021b6c6a72dc7fe0e40d7d03c16687747e945774156a9e54d561d9246737c29574a1cf82c8eb9f213034d2e225e78d03db40208a2aed844f5fe84eff3031cef319b9584aec78b7b77225885b7544c63036a55c27406449fd16803ed49f9d16fbe34bd84ee4de25eeb2c8aaeb737256fbde6ffc2ae0d7b9e4aeef6fb56bcbf7398f83e9755f9a33684cdc67666b0a893271fd46f07d58735928deb2d9a3f41f5dfd0da82dfc3fb73cec02496f377ef3fc12a82706096d22bb474a2ffd2a06a7795668525133b2b839ae1dbf589af4d9a112708dcc8cb6073b7253a493fa828d9c207d57fcd27394df9a96515f3f70c242d96c6d7876b3d339ab8e1b8934bea042db6a3dff8b88b25d12fc6b3c274a5bf471b7c6032d8d98c6b00073b980ba1b886cdfbcc3386983bba04a82a026dc51fa101c46ec119a89373cc1ca8933f37dd880d020511c80bb94a2ef96847a552b992df7b6f94fb3251766adf4464b1ce33b84cc1db89a0fd0492181800b694d1b701e588c03f306b2ebac21f75ef7bb81f5003f40472000977ad967ee0dd46e93fcb536c13ab2ec9053f3e84fdf34e050bc58305d9e4ab3ad2cf481ed452c5720b8dd03c40f8f7b1e40c998b000ac0b64155d26e6a0fc687b6bd7d1d62d3044714b40d0c68bf6bb272d956e5c237fed4413e116b423f5802372dbbc926aea2f743b231a9474b3e5e9d41a5a3e13bad266f0086d7f6b5f2b0b623b3783f6b929592363695a11024ce0ae27192a1f79aaa5cd8ced570f61375947c4ff3a533f2330d4d0d97240bc25343c425a7ab7c8277b919536177664434fa2553e3184a12d6177df09576151f4227fdfbb1be58a5490409d9dacbf7f03a137dc0f50729d8322526d2b154a28c9a91443ac8b454ffb16864efe790b57530a32e771c4cecebe79ae8aaa7702bb7aa17358ca34401cfd28a9fe0da24dc9e898b524322d0181c256bbd35e518ba0506f3b21f7cc7c34519cb1889d385bf18bbd2210c9f0270df4918d9918f6c431c3a493e4a35978291f4b21314675761737659731a856f2f9bd8cd3c5a84cff049500e63a376d9406e185c3c4fe04b62e5247730276e0477f51b6efa086f86cf75252b105073c21cad2e503800b45a7ca14203937ef7545e27e3fe4f5a6a28621466605b1cc9cacfed0c218a527680dfa567bf12d216291c33e00aa4c7ad3f07999c966a97e739588c59aff650570cfb425153607f0d109aabcc906ab33ec8aef2e10f81d3bcc6a3fff0d9ae77b1d5ff44c68dc565645e4cfef5747fa8bb165c809477f8f24354ac51264f83b1449677e928afb0deb41864fb14265cea792ae446fc6073eb5dc678bd7d6531ce9281a1048491668729f83a103de092b6934d3bf9561007a1e2d3c94481e607f9981b21b60fb5efbe859facfe5b7037d1f9c1bfbf25ac08203d2cedc94726ec39b8aa6c587c6cd8d815428a8385e6dbd90b1776bd5bd56548fe1f60db51ef23bd1ab50191eb9a9e1f8034429c97c1fcdaadb9ec43e5e85519e07e2400f7e933a849da06f80eeb01f096d2ef6b486e8ddc0902d83826e925253053682f4da606e17f53e362cc5560789f42a62bda65adc985c6baf38ce887682eb1c38942884ad01bc3dc35aea7c56cb9b1c4d12a9d2cf7741c3bf69043bb32c42aedb64ca1e4d5dbb9099af461b823f6e5cc73a64e02a4a8e0a643f4c11c5d91d79a7eada59ed2b11c85f25d9b7b7e0db592330aaf3965b4457e3d9ef887faa9c817de10c99bf078637b2953992d78892f47ee5e8fdfcb99bd59dea1381b62372522815389d15ccdbc5cb185a169ec58101c02c0b7ec0bf581238de578305acb50eb13d234b0f48d270f145b9dda7c2b4b015fba843568594704224ea8783d4b3bf8d2278d5b36fc5e3273bc907feef1152a1f97ef10e955cfa2db1b10b09a06d147949b6631d2e09fb947b5a031a786e5e38f224c07be294299ef1ffc0eec4c3d4d83e3763d2d8f8fb2030e6123cc5a495c5ed4982751e90f2a7320d82cd993881cdb17e4967539e19fd0395f50569710680000b6d109350c97230c3fe77b838b0df9f5ef1f7250f783a9ebe3e08ae43ecde5ad70d64dead8c3a2b33c023048aca6a46e8834a9d0e398b923baed2515086c094553a48187da6d2be85b09b71edc1455aa4d6be46c1b24816d52ee5a344d6dcda84d1ac4245b2ab32594bd3a3ddca0ea53d7456764f3b39e88a67ea6f8cbe5611fdc8beafd3a7a9b237b43c3bb4f464215d426692a9dfb8924162c3801d0b36602894103ff905f0c5882cc176d32a61740ae6aea316d7e17b218b9aaec04d9246c3ed9e2e0c4bcc11ceacec8c3ea6fc46f35ed513fc3383d1d268043923b530e0dbca2e61ebdd43c112288f224b466848aa7b87d5281f1c742d14303e8d0199f4230b3592ac292361d129dcf4444667a225db61c85e7e80e567ae81948ec068ce1bd09836e044a4ad9d013dc0f852a023e0431fba84577c1de30f6471f678ba6557f77443145088fd170e8b57dc80ae88c47571b691abfbdb39085da3bdd72009d6b364086f2a6b9c5c41cac0bc6476cda03e353486b3c890c6ebeff93a88e3c6771ccbe71d42a08b8806e9cddf0cf65f129ce0126d4f4553d329c8595b15f8565b86d5aea0c98363085541bb5562688a0796a5ee1302c46deae63b48a4540612f9df0e59290b5746d8d7a9adeec2c07e6bd79c15a96e0ce6fa21278303f2cbf348f48de44fac7b0b6064c5bb0a812a1aa59d19ca0e33fa66738cf06a7272e1169c92479e903fa752a3d4cb258e49e27e145ce6979f576f7ac9ccf23697debae4988b803381524e30ac8fb32032c9e298ed542aeb70ee7babd6bce773e322700e9b746a244e06e48de403218f5fb9a42d5c03bc2816f81de5c94798124737a38ad00109589c1431c2a8ef5118ad0f3dfad3b170b139993a33cc790a19c5a029228cb9c4443ba5827994562a8ce8d23ce02dc3707ada1048b6cec84a027166fa8010260aff452b70e84e062b8a95df4a9e57cf08a471af83dbccedbc97ef4ce94f45c895daeda68171c17c11a1d0adbd6932a55487022418f7a12b0b028205fd003d24738bb21e7a1483ea084928fe6ca0f8c6149625c9f45d3ea30452d69acbeb8b915d66759b184777e80413d9bcfb17f8c4bb1389fe82eef3a56647a86e1057142c030360a15b4a5d9b66a9f9690a90e280988fc1bdefa3536ec6f9023af656aeda703c3b852037bd0d03a13fb544f9eef844cf6d74d0bad830f1e1df81e2786ee9a5eab06e9c71ca245f7657d0410170c81a06cf2fd2151021406e9fcc886ef3b3dce552d90af6d9ac8e0ec7f23d40e670ad52df79dc3c509ca1befec97db532b1318b06e43f617101bab640f76dc1023a6c395218741e059a5967f4b4ac2dae32bfb1085c772d90421f6348205a4b49e5327f8f713c812e8ef6e54fa5ceeabbd8052047b9b88bda1df9af27b59779724dd5882889bda34f1a330f5e1fc630bc2c5e2b994f8c7793ed4f49868962e5ce261b8b32b26744a9ed04c7d231dea1953118ea783001e502ae3b7f8598db260386267f28a735118a7d63fcfa2bd394e31fcd51a238c78fafa1065af1aa2dc8f69bb2447ec0957e8f6728da0d7abc535c948e96432e3a4857871bcf67ecc17a62c287ddd29d48355be14d81771a78d4852ccd7cd9ba874fbc475acc9c34206b66fa6009fdff078e47a27c820118ac7f49c391f312f89d96109b25f93dd4843b2872a94889ea69b5b808f579fe9655af171cc190b171c4d4914486c0cc5a7f9a0f50b87cd1c398df9eeacc8118451a44859bd956164380faccfffcf805f05a1afae72b5e813d12ade691ffb7c7a59e4d617a34712142a57fd648d099a326eb097b2e48b6f17ca86249df0a4252c7d2d4fb26e809307f6c616b6181527fd465f26a7728aaa5925726b7858f8e827a3c7108f5f040e3ee1215497a50d15b4aa4d6742a2483acdae7cbc93da05300dac2d7b8fbb4ebc207e29f36b771a2cbd5dc092337174231f5688ce589082889a3a447bfce320a01463d307c49e0e749cc8cf7a93f52a0b3d8e6ebf49454006de31166cfa0345058ca3ea134b0990aaaa8294cd39b1f9488829cbcb1e370df1c4a4260a9af5cdb44dac8512baf98ef3c1de693496ce6a5a014bb800016640440cd98a9cbaf2425f494fe76d0cff0b24111261a0e2e42ffdef3ce39bcd545708c45f9c1e052475f902ea3bc1bacf66dab0523f08eafe24e255968f75d3be105d75938ca1bbb6b646435c14f7cb825ee630b745c2644c28c431ba9d785fc45d637b31ed161af5865b1b6ce67d835fd919c7a4dd8509cf85bf2d8b3bd7285e66ec4c83294c66765ab4ea524b306c871f202af379961b29de4ab03674066fbac4f61090f6c121da32294ee2d988c0e4c1a4be12c01ff5ed369c4e4355eb8f96b5828b52d4c235c10364b79d5d4d875eb7f6630dc47e37716d0d823ec5e13289c04f66a539fc7a6064f25c86f7da7d4f1ddda0e43cdece6550d660f43657c105187d9dfa0c5aaa6cdac3e1b07e0d32356a174bc5c29f516a12b365d65883db4726a558912f77e1e70b67693fc56853ea605d8b6854fdc4fbc0b3a0d8f9326d0977236ec0bc83a4f2ac0345891dcda8ad70231d133ff0f8027dc6f2772b5804b842732e7d0a5c3c3d2dd34934af70afde86e52740d2406a5dca550ba5c9750ec115b0b6b982c734e96cd05a65c7f5af15c48602d91179086a98bab0d646397dddae013764c0f8690b6ea7b2f525e8bdd97446e5784d87ddbd05ad1bccfb1ec87134e827e388199f692871998a125676688ff82392776b4e227134e4c4e744cdc0219e5f56486a0fee34bf14c5c5c1914240140b75ff53a6fe15d1b4494c655cb2717950363025613d942b48ffcfc2ded3c149a93e71fba581f4259a9237438a205de85bb5d3aca2d894844c6f681e5f81b063e8b564aed9597c32d0032a92a72ce4a21a85a3971164fb88f607bb1fcb24a6679521d2c6260dabbda412c198b657346505b381db50dbe330c74244ee10ef7ba36d8f777f66d84c387083911af40cb32a28bbee43e0122ab9ceefbb1f7b9119c7bef15891ab7e9c91bec1dd73977830bed696a311d857e02a670e70e70d09681063e5513316ae6d53684a4edaf360052c097bccbf81aff941492b48c089bab2efa6fa1da1176f69eb5f42ef521de07c8beef7c3c9d0164102be7cff41899e1c7bdfb7486402b3ef833c2678e7ca0d09fb7ef6b0856f698f93b9415ecd4bc9e698d53dcfd0d6c54b9bff58d215ad38cd38f5a430cacf3fd0981859e43f684eaf218dece815b7f6725f03b730cd1dda4aa2612d8e30f9561faabfa9e7b18a7244faa9c1f543f0477d47044fb0540ad138402513d1b07ab502e2fdcf2f7ebc08e4a78f18d4ffab2f9294df8361d139f1646aa572909f7ce04f90105a162b0c27140765c9ce0a4c35b5b109ccd9d778e068ed475411c5ce1c4d56c4f7d1107be1095d121adb42cff428f0f0c0cb8053bdde13b6357a0d7fda3d4ceb342798f827768757318a4fc14cdf64c03cdb3ae5c2062f3a7c120eff6d56479d9ee433e7d38ce17b655445c978992b940ef0ec3afbcaeb0855edc65edb92d73839e56e74d16dc35e268865aca590afc9cedb860828c56194581dfd41a0977d4cfe15ed297bcf41dd7907b0ef4eda00ec610da6d1cfa0407e487abd193f84b2f785ba5ab228d718e55dc8c2674144d84471e33a3b93d3698e1cafbdc48573ea1eefb95c9278d3726978cc36fb9e7212f29570e4d4a493329b86023e05b906944c25454ee37ce4fe3d856a59250057bd32f9f6815e35729620fc7b940ec55004a490056230795347ff1373fbeb6b13028018805a76c35c09db22b42d130a0248dad0594095845315cdfdc90701379a9a224a5f39d194b8fcb0de7c6cb94161005ac53410a985ccbb0006771481f29d1a2545cc56139f55dee86632abef375d1e8702d5edc5cc6c981bd9be97bfc5793d6c1512f5dfcd014163b6c415746e89b932e621d000edcf724eb618c0eb7eec4f09d116d30059011e6dd34d784b09c9a97ef05da22e5cd7fb1b0e9e8a79b4ff984d2c0ecd6fa4bf292ade5acb8290e4a6a15b6c0bb62e74dcf4e3b00ec64f8fa96a4744327edc200481303d9d4f35f279ba8a94c3ad5b013f10b05e2e5499437ac45d92de27341c24b50569689cf163e7cb0845a9a628c031fedd7aa431ebf6d68922bf80caa8a02802947ecb6c1ff8c1e89ceee5a087c1e01e0492d3457c7cb35871904ea2793c4c4d9409c77f7e84576fec4365f25daf6594ba945f0eab9c7dea4bfde89120695b7ef57c016a90ce939091cf61d2d3023ce31f4c8c4d0a319a636f0abbc1ba9d0e16bbde14ccc4da66b092511cfe0ffaddfbb6f27c295d659261117e850724ab74f5c22b3a77344b76f005d947061b2da45fe977c71baa82d0cc375bb65e4727634b1e9d8da752050fe9c81ff7c8082dde1eba5cca21faa5f470679e23d2b69f0b1fa1860b93a0d20ba1c524282377d2c4253f0871eb62770d1a81b190e3ee63e770421d8e1b92700488fc0bed199615ab9de8a79c65ebb226c18d0478e0098e864cc8f62c4c05a082db0a98aabf36a1d7554f919525f81023cc214b4ac5105b4a861d9d6d64fc7304261c29a8fb5c9e37a50f2cd228d81c4d52fdffb72dfd3684bc2145f73c32faf095c8b6593db4c9f9c16f12d7659e6b540c4c24f13c359dca3aa2ef46bc5c274799459957da7f6614bc23bcf33cc630c2bd6027c6d896ccf1165bfc94408f7072bdda6914f3e8a3c6e25fb3cce62ca81efe1f6211b67e51e29a203e1a2196acf31e454d6ce38dd4ac2f22997c0f3b4e7ef2aeb838e336a6fa571109138ababc67035773bce5dbf76957607dd6f5178099ae2e3a2b703a909b7db3d4c635665c2d418a6985699305039676f15a225ecc57700299e0048012f1f614933ea2e6410b0916a30800737fc816d763dfce7084d6eeb915243c5667ea6372d4f87090bce2c647f3265a6f6316a30e121285795e69c9499181f56f8a873855aed474cd90e2ab62ae444937424cb203bc2cb367e87039082b96b0155e8a12c35ec561442889ee91f37a4c2811cc59a01", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9db4cb4f3c003a283405383d8ba0e13e892803729b591966fe5148066855d42465ea6bea06d592cbf2ac854704500fec8": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd49dbee7d35a1459e3206a8c8163a547cdbea0fba2208ad528ced1ca43acc10381ace90398c71554beae523b5b5f636d60": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da90fe66eadfa8d31121235ec8c8df35ad75476e0c84db6bd2688e3564051530e61fb95e44ce2d7bca1c06b0915651624b7": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243210d42a24de0ae486aa28f8b7c8ed3d165641861b98ffc60f24091b4ec914345f259cd283ec6b621fba1e7af7a89d66a": "0x04000040bd8b5b936b6c000000000000006dea73fa5d67050000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d872824311fcf3e922de10898cb04273301735e65270ec35ba01254d8bff046a1a58f16d3ae615c235efd6e99a35f233b2d9df2c": "0x040000e8890423c78a0000000000000000d3badd5a7503000000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d872824338a3d7829288825384d522a03048d90d9c9e218ad3a96f0f3d1cd177e30fdd9641a19bd61809168cbf342f474bd89dc9": "0x040080d44e3ab3b18b04000000000000004afb03efff39000000000000000000000000000000000000", - "0xc2261276cc9d1f8598ea4b6a74b15c2f218f26c73add634897550b4003b26bc67c7de191b377e05d5c64c2e13b3d4a2f768538a941d1e4730c31830ab85a54ff34aaaad1f81bdd246db11802a57a5412": "0x046b696c747073746b000020c65abc8ed70a0000000000000002", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4a2303fda817785785685d9f08f8cab21958326f3e16f0a85901c7d4e0d2e173543034ed0c9e91edc8507befb0e1e5eba": "0x", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d872824320b3af82a22e60f145a55ba4575cabad2aabe8a8bdae388cd746f995b878941d2deb0b4cc9b0995cffab8a1e2f34e3a5": "0x0400804e3557f3bf75030000000000000079614e8e252c000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da96c32f8e12b6e5d74956cd3f59aaf297d88a6e14d7ee3d398a5bbf1cbc23ebb2b060dae7e78ddac02aa91ca4e3bf0de7a": "0x00000000000000000000000001000000000000000000703b1bd2aa400300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9011c993ecb68f286c4197f01e93decb502ca701ab9010c86892e408ab69218aa7606c7cf494a19a2cd632abafc613905": "0x000000000000000000000000010000000000000000007c332aa12b541400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9f4c757f9064b587c4f7135964bb17588c9105e771ecb129305f8c8ef93fc4fc6f536a4fe135dc3fefa649b7e90df9eb6": "0x0000000000000000000000000100000000000000000010632d5ec76b0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4962a9f76c4d2d5084e20b7b813dfa633d0d0d2465dd64a16fbb5a52ecbfe87e4a414240e33e41dc6474e5cb462da5161": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da92ca9059ce1e594cdedeab74f3f0ebd91f3b6f7351ef023a2a93fa11bffba602d302be2439743e223e3ae59b97199f127": "0x000000000000000000000000010000000000000000006c01d325daa46500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4196285edc0505b3296a306e0fa52cbd7cfa6910113062b80483f7cbfa38268b3e7911944077fd555bae464a7d89a6bf0": "0x", - "0xa686a3043d0adcf2fa655e57bc595a7874c6bdda44177fd8b580beed8d6ad3d8ba801c8d1aa245fb768538a941d1e4730c31830ab85a54ff34aaaad1f81bdd246db11802a57a5412": "0x768538a941d1e4730c31830ab85a54ff34aaaad1f81bdd246db11802a57a5412000020c65abc8ed70a0000000000000000000020c65abc8ed70a0000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4313da24700aa5dc598e9b32cfbdf54f4fab9ed2e3ed9dec315c66e97d422bb19c4d68cc6570ef7e78cf1f9166769af37": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd43ffcc772c75a4a58f32cc87a685dd7b7625c94a9d144cd2fdaceeb1e045765f686a72c10f27c6a0dac0421546806ed79": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da949c7578212f2133284f5f0e0e878e1c13ab79d3bb166382dd3b416aac10f5ef38bbd2cc3d152f237d77a63baea12e5a4": "0x00000000000000000000000001000000000000000000d2e7e0bd23ee0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da95fefec240b289fc12f71908e0cefb70768a7a05e316865a68968f92b09e9ec6d5d1847e71e520e68e5d306b5730c2468": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd409c2c70529f4558f2a9cd22c20c3304c00e3e4fa4789f57ee08670dcdba4191f13f7f03d367df798c88fd6e79ed081dc": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd49717298a4f5fd89afd62da6109d86d2ff5fa080fcb09ce1fabad6a20cdf1dae1e499194cfaa98673d13c5baec42f59cc": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da95cc5adc0f0d1203c0dcaf26cb0c53dacb747c877104bbbe671b6814429f231bfa962d00b97b37e9b7d7da1ae68752d24": "0x00000000000000000000000001000000000000000000bc93e9fe24610000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da99c33f9c4fb1314ca81e17c5b96b7dbb54ebcfdc6cdc35cd99a8bb93c64ea81bb30731c2f01b0464bb400bad3f0d4b61f": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x52da4aa879a49f588394d236e8a0642f4e7b9012096b41c4eb3aaf947f6ea429": "0x0000", - "0x5f27b51b5ec208ee9cb25b55d8728243308ce9615de0775a82f8a94dc3d285a1": "0x01", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d872824318df5aceac1e35b629b0da8605464092416effc5f4ec314564a9094804e9caf8248d17a96de3536776962aa44cc19f6e": "0x04000088b116afe3b50200000000000000424ca98c9522000000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243b26a85b49b16f2623c4c4e839f6622b563ec078a284d4bef2498322c2132632482ae56c6a8b934e78b9f528b8bfd88e6": "0x0400007d9f046b663064000000000000001823ceef2b7f020000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4547c71739b61d22ef65d10364ff0a0a2a632d21dc803b56b1c8cd0ed27629883e9cf6deb653ec074f9cc4ea91404e972": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9488e4d63e5075ae58f2a115a49079591abc39441653f4640b1fb66b0fc8dd2d51db76a7ded96d2f603052c79c102a859": "0x00000000000000000000000001000000000000000000d01309468e150100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243dbad6a48be5e41538bf727193978fc8466f7271108a4562cec481ecf7d9cb4de50ac20cb0a875b94de25ffa145e4654b": "0x040000ffe0349dfdc20a00000000000000300eaae3a744000000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243ddf7a37ee322de59bfe2d87a57a3845fba8cc1849118cea7d30bc5a4aeae7f81795ef0a04c62d112a2d24040be1e03e2": "0x04000040bd8b5b936b6c000000000000006dea73fa5d67050000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd42ca9059ce1e594cdedeab74f3f0ebd91f3b6f7351ef023a2a93fa11bffba602d302be2439743e223e3ae59b97199f127": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd44dcb42d635baa02dfd29656035975a12720f92e817f84fa748cdff1b59ad307624ffcd9a70541cad4e01d09cfca12b74": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4665f5fdf47649627ab9b6dd81cb9af2496ac877bb59d6334eb6aebb0a9e90be0165752daf6e6e3dd078ac71f10cbf5bf": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da91c6ed5f9f8c114d493b279b219e362861b64d20ff82575998b6065e9b31b54a03e5160e13ed3fcb00e607ad27fc0b894": "0x00000000000000000000000001000000000000000000e8890423c78a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fa8f2d315ae64b0dfd4f846bb71989658ebc112fab44560f2de284b2b97ee98ebec740a13249f9f1c809fb75188feeb242": "0x54101400000000000080b58eab1328541400000000000000", - "0xcec5070d609dd3497f72bde07fc96ba0e0cdd062e6eaf24295ad4ccfc41d4609": "0x086a5c355bca369a54c334542fd91cf70822be92f215a1049ceb04f36baba9b87b66c4ca0710c2c8a92504f281d992000508ce255543016545014cf0bfbbe71429768538a941d1e4730c31830ab85a54ff34aaaad1f81bdd246db11802a57a54127cff6c7a53c4630a0a35f8793a04b663681575bbfa43dbe5848b220bc4bd1963", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d87282434feec0588592d08d3f085323134c608d98181e71c3cad2a5486d7892beaa6d61f1a40e94a748027277f09c8364d6f909": "0x04000040bd8b5b936b6c0000000000000036f539fdaeb3020000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd46e3dd8cc6f283705a94d388861821e692a109e85a5e97fd07d6d26fdd939ddb5f3956404c0e3ff00356832ab309be5e5": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da95006ffa9ba9b88aee8b6d4f90bd0393edecd754290f611047a8d9b57813fae2e8506506ecd44e2584fcd9eb3db552e8f": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4dd266a958e8103a71b70d1c1df4a59310df6953acb9c02923012c24020e66eec9064de83950a1555ac1d5b481138c97c": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da95e6ecb14a3d50fdada0369a44cb32a2b19196c56cf559a190b40040eb13bd73bcdae558a28f2070adf7dcee9bb6aa5ee": "0x00000000000000000000000001000000000000000080599332a32ccb0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9b83e91a4b560b28ea0b07c77856900fd427b946b2cee9bd4ed03982e6f716d4eeaa5dc8410255e7a8ecf8d0080effe24": "0x00000000000000000000000001000000000000000000b2d3595bf0060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da981d608634400b86372279f30f286996c283073d74823d49eaaba6dc69ba145b4e28b91499ee4d314c35d5a8625477a31": "0x00000000000000000000000001000000000000000000d01309468e150100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da982f2fec429046ccc7010de5b49629aed3bc59ab2887ec0b1a8fb9d42ea2c1a698d3cb2080f1fa7ca1c01fd375568ebfd": "0x00000000000000000000000001000000000000000000d01309468e150100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da98333774cfe3dcd38f02ecaab798bba9480fedc83c94ea1d7f45f99ba3aa9e4744cbe9ad0784467b7f7eb4bfa58b6edb7": "0x00000000000000000000000001000000000000000000d4bbb835b9c60600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9834f1e43f41c370b23bf6b7643a47ea04056bb3bfc486baeb748deecb2bac15dc9ceb2730832270ec54b2137847735ac": "0x00000000000000000000000001000000000000000000a877716b728d0d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da984651718030a8b13a8edce7f6278590fb7aa19fb9950a43440469a3e337c908b7af40543ec718544b7a58079e39ef48e": "0x00000000000000000000000001000000000000000000b89d0d6955a00100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd420b3af82a22e60f145a55ba4575cabad2aabe8a8bdae388cd746f995b878941d2deb0b4cc9b0995cffab8a1e2f34e3a5": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4c399dfbb8067b0b4e63692009984eb5b11b7aea197984d7711449a2cdc1c16cc2f5748249dc4d8adafba46d60c41d50a": "0x", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243612917032a0bf90a0552a27fa5d41a432d286624fcf9399b8b508929fdbab4c21fa0e7f42153c57d8705020500cfa1f0": "0x04000088b116afe3b50200000000000000424ca98c9522000000000000000000000000000000000000", - "0xc2261276cc9d1f8598ea4b6a74b15c2f4e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da984954f97bb03137be465c9e08ff0bf920d45f0ef0221693f976f1c7aed9c5e9c2c97c8078295b56edae6943923cc67f7": "0x0000000000000000000000000100000000000000008075c07908bc240000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9857159a75b4006112c66ac2cf10ae0c593fca8a758746b88018006d31259f02e335e0e36701e8dfed462e1495a8355b8": "0x000000000000000000000000010000000000000000005e41a75c32550c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9860886668a9c38331ffbab78ceeff5f50a799e768a336d6e6d1dbdd24c30714fdfebea3561504e3c393165931407af12": "0x000000000000000000000000010000000000000000008ca7f244b3760100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da98a9b07c50f5f9b448b4fc071aacda5ee5cf4bac7a9ac479987871eeaf8799a4e3189b19e158612c0f25480560dc1f0da": "0x000000000000000000000000010000000000000000803094200036960f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da98a9c021f8ee00eef7e6c8853b4db5ffa4b3362b2a4c34dd0699ebdf4a5cb60f9af72495e70980a5ec3379e32e1c58330": "0x00000000000000000000000001000000000000000000d903cd71ab2c0700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da98cb96c0c7ea850acc4585a76c5d419f94887dfcbe03cbf03c019cf906a49ebd60e86655eeba88e68bfbd0e030b2eeabe": "0x0000000000000000000000000100000000000000000010632d5ec76b0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da98cfdf19ade2c25573b354cea850446e205cdd205b57bf767c1ffa4a02cc1fc96c4b74c1b2bbe00c97c5dc30aac532be4": "0x0000000000000000000000000100000000000000000040763a6b0bde0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da98d375a063d247674ae19360ad9d36c4aa76a92eda466612be10b1789158e12011b55b7685b3cf29597fac6dceb922f17": "0x0000000000000000000000000100000000000000000040bd8b5b936b6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4b7de2f26a60f50022fcc854895e884d6d33eace5a5beb1628fe218d615bfbccfca6cecb606601652bfdfd8a053e069cc": "0x", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d87282437efbf6c1171d21235f8cc7ab61ff2de24fcc4e54e2602b7ce46c5d4c87fd546b9d82c2318d68196fb2ba7c4594abb33f": "0x04000040bd8b5b936b6c000000000000009bfa9c7ed759010000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d87282430fe66eadfa8d31121235ec8c8df35ad75476e0c84db6bd2688e3564051530e61fb95e44ce2d7bca1c06b0915651624b7": "0x04000088b116afe3b50200000000000000424ca98c9522000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da95c5e14851de25f7f56f13be97727a4c1e090826da0aff4db97b9212caa1902f6f8e0e5aa249a55009d9b3976bc4da195": "0x000000000000000000000000010000000000000000008e2d9e16a43f0b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9f2f5bead9dd475a3609f9371f8db7a3259df73598485bf578f190b9922cce88fb93fdff3037dfe9a9901edf97ffe565a": "0x00000000000000000000000001000000000000000000d4bbb835b9c60600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fa69dfa1ec148065340153c6fdec3981f0a32954f3e273b7bdacf30a62ac3f1ced3ec1fbdfc86b65004f45809e3d5c52ee": "0x54101400000000000080b58eab1328541400000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fadd88ee968529cd4c31ee11c344ed67414b579d1fc9a20bd2b01b620c2c4785e02444e723086d07d776bfb8b3954b6857": "0x54101400000000000080d16fc57fa7210800000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d872824368f76bf6873b4075fe534f5623815a9b643254e645e0e040e78449793fda50fba9cd0929631c3c9ea08387cfa1d2767b": "0x040000aa23d301f2d80a00000000000000a129c430d70d000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd42b66c29707383de0ca389a677d48a6bc5c8e0e8ce9b5edf5df15710fc72967075784afe05209c26743be8ccb9f0a7d37": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4813115721766ce06270a07326b11f417eaaa8bf827b40dfe5776f1f3020c8352c1d68c4d796e43ced8f4cee1cf3e5cff": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9d0da10b18065b0d7db27e2c95aeb9900793b07a6376e5d4618db105f5ec6473377e8b9e5e1fb58be5e75765632eaa1f5": "0x00000000000000000000000001000000000000000000d4bbb835b9c60600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd438478afc0631a8ff1b56df208a8a40d8329cff274f5850352624040b344ba12dc6a24ce6fa95fd82e95a45f3e4731f11": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd49d2d321098020c874135d3cd8cc1dd23e47ce670fa341c73b97f178c7ad549b0ebcdf5fabef30296bb51529944f8a76b": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4a9ee576e73a40338d42503ec9484f1d066f80251d2f11dd66f1f1aa8681b9dc8b035405123ca9d22195e04bb08827194": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd42d5f0159a37fc8cc1c1b9677d93f4877d1d1c89c8cde97b88dd4172426b7d51f952fc15a239905ceac876cce979866fd": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4fa84a9ec3dd90bb88411a100bdb79fd03396be16ee113c440e2df3f3bf1cea861655a863097614a316a1bf02bfd1daa6": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4be7b5c9ba4d7db2ec2e1725c22dd36defab36fbccb54a4bc954971f5a081fdda5821ba55f84239838ad380f0cf0f111a": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fa857159a75b4006112c66ac2cf10ae0c593fca8a758746b88018006d31259f02e335e0e36701e8dfed462e1495a8355b8": "0x54101400000000000080979c28cf2e550c00000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd429861ef9c26f604adba8b3749e29aa72d3b2fec896bd5e11f7f133748d0c1e516058da7f76f06129c26b0432e607c6ca": "0x", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da98e4d59dd4262ffd933cf602317c95745c25566a102d49ab2c82eb168629f187d905059b0108adb5f58eedcdcdd249f54": "0x0000000000000000000000000100000000000000000058c51ff571cb0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da98f2d315ae64b0dfd4f846bb71989658ebc112fab44560f2de284b2b97ee98ebec740a13249f9f1c809fb75188feeb242": "0x000000000000000000000000010000000000000000007c332aa12b541400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da98fe871e416c75335d38292ce5a4632e7ec3237a87bb923f59c0aec55f34eced3cbe83445a93595fd8251e3f0630fa1b0": "0x0000000000000000000000000100000000000000000020c65abc8ed70a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9928d77d4eed551cea8caa01104e35ccb88086a1607427949f024de5583f335b584187bd2c29877210832c0a5de2281f4": "0x0000000000000000000000000100000000000000008013f375d31b370000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9929739a53fda1775df906d3db633132294d5f05ac375fe047f1b4f699e1dea6c585c82071d81fffd59e62c39f7c171ee": "0x0000000000000000000000000100000000000000000040bd8b5b936b6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d87282430bb6a83dba2ff107a1b2471919efeb20301828e741f8e3349cb4c8f22681597cdaa0041a0d009356b89a256450004a1c": "0x04000040b2bac9e0191e0200000000000036f539fdaeb3020000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da919823aaac33b2b924a18ddd82576c455253c75708fbc38dea1f8c3ba1169204f11f129a64d7341049af8bb2912ab7253": "0x0000000000000000000000000100000000000000008092013c4b3b310200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fa1ea10ddc22ce3248c726195d83c1bfa9399232899607eee84bd2e642e90ba677f7ece4e544296cc1f245a76da0eb3f5a": "0x54101400000000000080e1d2f2dd6e8d0d00000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd47efbf6c1171d21235f8cc7ab61ff2de24fcc4e54e2602b7ce46c5d4c87fd546b9d82c2318d68196fb2ba7c4594abb33f": "0x", - "0x57f8dc2f5ab09467896f47300f0424385e0621c4869aa60c02be9adcc98a0d1d": "0x0866c4ca0710c2c8a92504f281d992000508ce255543016545014cf0bfbbe714297cff6c7a53c4630a0a35f8793a04b663681575bbfa43dbe5848b220bc4bd1963", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d87282433889d35d383dd18a2908a2d50ab393f2cee1ccc12d271c0fca869d2a3f464d89ecc1af567e675dddd105024f0fa194c2": "0x04000088b116afe3b50200000000000000424ca98c9522000000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243993153c4ca37e123ac636637a013d4d0949fb97cd829a40f57bf7b9bbe0f27ac47fe93c8e231d229899c61ddb7870e3d": "0x04000088b116afe3b50200000000000000424ca98c9522000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9857159a75b4006112c66ac2cf10ae0c593fca8a758746b88018006d31259f02e335e0e36701e8dfed462e1495a8355b8": "0x000000000000000000000000010000000000000000005e41a75c32550c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243eac90b8d599c25a5798d0896ae8e2b4bbe1dbcf4234b70c81a518378e72b67aa7cd06b122ebb7658562472167e8e231c": "0x04000092d54d06cff01000000000000000500e9157136c000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef74e7b9012096b41c4eb3aaf947f6ea429": "0x0000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da91c0103457ed7d16ea3c2200d16ecf21289c8fdac7d863b8d0b9ef23f78c5fda3e61602f83d2526b09e2a9fda94b05dd8": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da96bc39de50d1e863372db928df2437e5b9547235d39ca4fe5a04832c75657faf5b2ad3edb41a4ccfffe90ee393e4ba869": "0x0000000000000000000000000100000000000000008002c9cdd5ba8e0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd496bf253f0831e74d830ccd5f1e1c6c10c7823efbc8acae7997f4135e6b98d638035e38687f046f364e8e54b13731acb2": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd41c6ed5f9f8c114d493b279b219e362861b64d20ff82575998b6065e9b31b54a03e5160e13ed3fcb00e607ad27fc0b894": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4e44b9f782644fcefc2f2645e5747df37374bb4642f661cb4b2d58cadc5c78123cf9500005fc3eb0093e8ab1d7c6e3e30": "0x", - "0xcec5070d609dd3497f72bde07fc96ba04c014e6bf8b8c2c011e7290b85696bb397fbb62e872d951c6a5c355bca369a54c334542fd91cf70822be92f215a1049ceb04f36baba9b87b": "0x66c4ca0710c2c8a92504f281d992000508ce255543016545014cf0bfbbe71429", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d872824357978ab76d55e8a45eb90de986bfb21d2af7838d1bb344b8e700b3ba5530f448a0a471296e88ac104bcb606880478c9d": "0x04000040bd8b5b936b6c0000000000000036f539fdaeb3020000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9febb1eb13459c4993744d092e155825417b3faa5419c8e9e6a642989fa7212d1d0a8d35e179908171ae38ce0fa467c30": "0x0000000000000000000000000100000000000000000076b7a2396bca0b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da927464e2a3147e039f782ca46277d39135a74972bffc24b19546f2f4c3cefd4103cc62905d29f402120e0f54c2c2afe0c": "0x0000000000000000000000000100000000000000000040bd8b5b936b6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd410eed07487d5176ed408b3c8e997831d6b506daa6e92c4e42eccc9d6aef5b020effcf1ffcd89b9d11056efa1632eb84b": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da99dbee7d35a1459e3206a8c8163a547cdbea0fba2208ad528ced1ca43acc10381ace90398c71554beae523b5b5f636d60": "0x00000000000000000000000001000000000000000080ed24511ded240b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4edfc29cbc40a17ab9629de821b6de080b81482d150c6242e6828f8db847c98996d5988bd12e406882bf9f41678262187": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9eb3f773f29180605363afacee027275dada3b50334815d952c14266ae058cdc8b8b2a2b6139a08e701c8c61b2324ca47": "0x00000000000000000000000001000000000000000000687679f9dd460200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd471d0162f359de5dcff9b13f6204d8eab5465176eec72af78d3a9469f63f155ac9b1bb93ab804916611e794a362b3c810": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd434ec744f9336e61990deb04951d288ffaef07a4f5bfa1afc55e093f60e088449044fd55b96d1118b293d5530467f87b4": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd41470c3bcc7e8ba8cd403663b977c87b3b9489493994cb84cc3a75a3a7f08e1352487ee2bf3066b6affdb6b0fee7b1082": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd443f68e2f29bf5ed665c97906008b033a3e725c262081e9460accd50c1e0d8c1493a4617e0038e8aaa818aa57a071be6e": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd402bc100d93c1cfbef693bdd87372717fcc2111e1db2fb155de143004c1ea354d2defb82e515667f0b9ebb80a4093a0b8": "0x", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243b8d3520280d1edc39a740cca98a0be0d51b24b22701bd6543196ec23cd6c4636b49c06f9c9bf85b5c7d8e1e6ccbb64ea": "0x04000040bd8b5b936b6c000000000000009bfa9c7ed759010000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd40ab73c969c5df7d03c64b11dbe8aee6fed6c7f8c0113066d68d24d3e0a54b14d98f9265abab08b2c4ee5d74ce4aa313a": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fad7a96857b80f6d4231fe84363b757190ef8affba4fcafd3ba332616e8567c87eee82129ff3924c8d16a5e0cca7ae3f58": "0x541014000000000000800d173aa8b5c60600000000000000", - "0xc2261276cc9d1f8598ea4b6a74b15c2f218f26c73add634897550b4003b26bc6653f9ae8c00acb30c3a91ca50fc193bc6a5c355bca369a54c334542fd91cf70822be92f215a1049ceb04f36baba9b87b": "0x046b696c747073746b000020c65abc8ed70a0000000000000002", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da993eaa916ae3910ff4bbfabbe241955c5a960f8a6c8769c4a795a8d6beec0f179a9d9fa113f4de4c7118174f752bf4adb": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9962a9f76c4d2d5084e20b7b813dfa633d0d0d2465dd64a16fbb5a52ecbfe87e4a414240e33e41dc6474e5cb462da5161": "0x000000000000000000000000010000000000000000003029881a56431000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da996b978b08d78f0e190db41b375c76824c6938a28771912d459c6f8c68e447f5e9dd718a40334840da17edde1105fa18b": "0x000000000000000000000000010000000000000000804bc2602aacb70000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fa28f484bf7b7b236bd15693657a19914aa220eb5dff08cfaf3d7a591cf9e773e4c9f0d9f93bbcfe900d17db8730fda4fb": "0x541014000000000000805921dc2e8bd70a00000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d87282436e3dd8cc6f283705a94d388861821e692a109e85a5e97fd07d6d26fdd939ddb5f3956404c0e3ff00356832ab309be5e5": "0x04000088b116afe3b50200000000000000424ca98c9522000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4e11f494c0e824f364a61cdf856a2320b70f7da648bfecbd0e7d47f4436e1bd81ba7ff80241a6be54cf7e63c0cad72f11": "0x", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243196285edc0505b3296a306e0fa52cbd7cfa6910113062b80483f7cbfa38268b3e7911944077fd555bae464a7d89a6bf0": "0x040000485637193cc34300000000000000847288bc9a60030000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d872824373f8eb5cdbd142e440a910473cc25126edf262c08a8966b1ceec8a041041d9ff70fa63491d4939ffa07ee63161dbd841": "0x040000809e483072ac080000000000000037addbad5537000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4c26cbb8363be38be8512d444d7a39ae42722592ee6853bbb850186b181eda27693c3c972c302be708630af4f5431fd16": "0x", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d872824321d1c19e418427112b1e953eefd634ca379b8847d0cb00c709664b596a61e6eb04b1aca46e529be5699b8e4308d9e4ca": "0x0400807ca242c019bc37000000000000001c30591c23c7020000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da91dcffda847e8fab75a973a69e4fc78f811469e86b311cc9e4b08215f4f16468fd36d0fbcf8c557a4e7fb4c088d064b8c": "0x00000000000000000000000001000000000000000080eb621b5653590e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9be7b5c9ba4d7db2ec2e1725c22dd36defab36fbccb54a4bc954971f5a081fdda5821ba55f84239838ad380f0cf0f111a": "0x0000000000000000000000000100000000000000000057db3339275f0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd41a8f6bd5494d74f33f1fbac904e7d349d04140ba9a3c03878d3a751bc6a13b648ed45c50785347e1267fe65bd5345895": "0x", - "0x89d139e01a5eb2256f222e5fc5dbe6b34e7b9012096b41c4eb3aaf947f6ea429": "0x0000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd437a44bc559e32b5e2fe5eb04a1d4f7cfdb9d57d0c975dcbae8b2d545b6c50fc724fce0d54644d3c8a85057ca7d8c0f0e": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fa008155f894582b35e8b7953f66f55432a406b315d1eb8c378c34742b8d94c6ea4c47a5b1f578846d99578022e7a355d0": "0x54101400000000000080e1d2f2dd6e8d0d00000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9304fda1324a8ba8c36b4ae11d1ef2faf21d7fb9660c76f96436407fa440d324041491c9116c329fc7ac705ad98407f30": "0x00000000000000000000000001000000000000000000388a823f6c5c0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x7a7b34fdb954e2e22000798738d613cd4e7b9012096b41c4eb3aaf947f6ea429": "0x0000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4c7f2140316a2ec05e5d52ddabf7a1c84627e29d9ce025575d2afc645d7fd1f572a24fed6528566335c616e86d0798571": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9bd3ba1a91a4a6aa714f17f7b51e11805ebf8f70eb6d31f6a3e74af6a06b0e6bb932b88d520a175c73de4dc6aa3177985": "0x0000000000000000000000000100000000000000000010632d5ec76b0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4b685d55343600eea9074029b4b5674e65f7222b1a6e28f097ec231b1c303f638fb6fba13e07d9f638049275c02db8bf7": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4fc219f82f0febadc96255c8172fb62ceb8ffec4bf145e4034c3e4b2f8bfab86ae93716769d67ad006eef502e1b60253f": "0x", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243be5367aef1ed18fc1cb984abd7d7ef00150b2739afd9b03c84b805a071a5f6873d9267b6d5f49669bb567dbaa1dad165": "0x0400007f02d7d3bbf12a00000000000000f96d4973f023020000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da996bf253f0831e74d830ccd5f1e1c6c10c7823efbc8acae7997f4135e6b98d638035e38687f046f364e8e54b13731acb2": "0x0000000000000000000000000100000000000000000010632d5ec76b0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da996cde687170c504e3a8633cee85f7b9a97a55ae82df0968bf491fe6cf75633ee030837da3729cb7db5de957c8e325bdf": "0x0000000000000000000000000100000000000000000020c65abc8ed70a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da99717298a4f5fd89afd62da6109d86d2ff5fa080fcb09ce1fabad6a20cdf1dae1e499194cfaa98673d13c5baec42f59cc": "0x000000000000000000000000010000000000000000807632aafcbc3a0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da99718c4d466ce34f33b81e0d1714873cbebbb9d24ec13d64c31f9942884a1d1bf91882fb28d10e62df333bdd84971fb68": "0x0000000000000000000000000100000000000000008008248aaa56bd0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9980597d42f20e91ceac14ec0ed58793d9ee228e6fbb6b32ded145d1b38be420e253bf43712e2f52b3177c0b9783169f2": "0x00000000000000000000000001000000000000000000ea5ddc9a5c630300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da998596cd1a356f3acf0f1e0d05b460fc17e46bf3da2eb3127575af70c1efc89ba576615735547e4f58211f35b930a2f39": "0x0000000000000000000000000100000000000000000089b3efdbd75b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da998d3f2e89848adfd90c9ef441ae257177fec95369d9c0a35e438ebe713aab1eb51cbdd5ec50b2f412279cf4cf1d15a0e": "0x000000000000000000000000010000000000000000803b2f59ea91d80200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9992ba2f593fba249e966e0a7d81b8c27e912c3d01f14c5a92c13acc55ad7de82fb4f66d329db5ec06788c66052b354a9": "0x0000000000000000000000000100000000000000000010632d5ec76b0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9993153c4ca37e123ac636637a013d4d0949fb97cd829a40f57bf7b9bbe0f27ac47fe93c8e231d229899c61ddb7870e3d": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da99b38bda30d2a1a372eeb98dabc4e60e53ab019edc8ab259ecabdf335147ae58b1327e2fb169b2aa1702a9cc83401bbf7": "0x00000000000000000000000001000000000000000000d01309468e150100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd432f1d1670fdeaf043ece3a9a461d50bb1fff87189c37f8aa2f9bbb95322c2bc4518c33f7342e1f5d45add551a2ce7673": "0x", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243edfc29cbc40a17ab9629de821b6de080b81482d150c6242e6828f8db847c98996d5988bd12e406882bf9f41678262187": "0x04000088b116afe3b50200000000000000424ca98c9522000000000000000000000000000000000000", - "0xc2261276cc9d1f8598ea4b6a74b15c2f218f26c73add634897550b4003b26bc6496b9d267424345a13c01cf7256660a010abf8ffbb90d92395d891a798e4476ade3d28ae5f8c5c955b9199d995871a62": "0x0476657374696e67200000aa23d301f2d80a0000000000000001", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9123d9afd81b2f03b75d6a208905a9c8edd907656f86d6d92edde215e7663d9e75123d3ef061486cc2cc34bebe5b37ce2": "0x00000000000000000000000001000000000000000000d4bbb835b9c60600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9372e2d4634779b20fe12ec9b3b9df9ee1664016a5caab8f5b4b1360b1e05b4aa84c1970f30a19d49ae4f40312404a538": "0x00000000000000000000000001000000000000000000b89d0d6955a00100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9d729a62463e6d1cdb421213c81944c8e0a4706d85177aba489066405376734f41c30eae6167ed6e6089399ea5e723e43": "0x00000000000000000000000001000000000000000000238006034bdf2300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0xa686a3043d0adcf2fa655e57bc595a785f2f5afb5694b77f75c74fc401491a2b": "0x10000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da921507eeff5a52d6d02cfe57864aa602be74c9728a9f42e3b3a2ef5b122cf2ffb5a37ec2309cfee2b6eaef39c6b77a2aa": "0x0000000000000000000000000100000000000000000098451af020de5e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4980597d42f20e91ceac14ec0ed58793d9ee228e6fbb6b32ded145d1b38be420e253bf43712e2f52b3177c0b9783169f2": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4f8cbd8d146c004544e448955afc7defcffdefd1c81b099f4a6882634e2f7deb1e8745b208d550a7537965af1d309ad4b": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fa6fd81811d76d99582f4818933ee0ae77bd642527d72ac58f627f0dd4dfb801b54633459f3e255f08c581b14aba03890c": "0x54101400000000000080b58eab1328541400000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4f8640cf9d93fb667704d31d8fd47a2bfdf7e18dafe8773dfd181571d4dc33f79fcd534ed2a07ab0a3e052de842500a8d": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9d2c0f47f68d20e285f0b26f931aba06733da83bd9be0e79c7d71eab84f8223d3d09335d29f46d999d61424d1abb62981": "0x0000000000000000000000000100000000000000000010632d5ec76b0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9e1e81f7c28deb0b22e6cb54a3aa86e37074bea38099aca5c4b3e1265de56d7c9b86e7ca33c4f5db1b944ed9af11bd987": "0x00000000000000000000000001000000000000000080a6e129e944020200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd44850cf2fe54ab12bf009c611e911f59920dd6fcbb20b6adb38a29846e9d859dc5844cd8560231c80ea826efcfe955c5e": "0x", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d872824308b32b49a41b56c678fc7c44a15b0a5c1ac8d44a5886dc8615ef2d1fa2a61e7cf49bdc562411d3558c0291f3d874ec64": "0x04000040b2bac9e0191e0200000000000036f539fdaeb3020000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da928f484bf7b7b236bd15693657a19914aa220eb5dff08cfaf3d7a591cf9e773e4c9f0d9f93bbcfe900d17db8730fda4fb": "0x0000000000000000000000000100000000000000000020c65abc8ed70a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd413b47d5a37d3bf28be8be705d0184caf773daf86370e3a6df97744b76aed7b1bd1fa6ed770a765392852947735552757": "0x", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243ec3f2c6941cbbe0539adc221e0b33750339a8671146b0d8239806359ccc92ea29fb583451e7fbfbc9cba2a46381716a5": "0x04000010632d5ec76b0500000000000000859852192b45000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da949c7cfb200295b16976ccab33fbe60948efe6e88d9c540c54df4f0014268f38ce9b5619624e2ad0ea1511c97a2a321da": "0x0000000000000000000000000100000000000000000010632d5ec76b0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da952755e98dc4eff129a3c2a6d402800a8fbb942ccb01d679dabd754a67a57e181d035e58e602bb3918a2862fbe3c090f2": "0x00000000000000000000000001000000000000000000be1995d0152a0a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd440d5811f66cabeaee1a537e54af0a576d3cd2a65220b22f2213956dab0f7cd077f5b77279cea9f336b0562469cf24baf": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da911fcf3e922de10898cb04273301735e65270ec35ba01254d8bff046a1a58f16d3ae615c235efd6e99a35f233b2d9df2c": "0x00000000000000000100000001000000000000000000e8890423c78a0000000000000000000000000000000000000000000000000000e8890423c78a000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9be5367aef1ed18fc1cb984abd7d7ef00150b2739afd9b03c84b805a071a5f6873d9267b6d5f49669bb567dbaa1dad165": "0x000000000000000000000000010000000000000000007f02d7d3bbf12a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4bc517e8543ee25f3d049208f37dc604f5ec546552827c43f2f6dfff11f2030c5fb701ea7fecddaf28d8e20d9d2c01a93": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4eb3f773f29180605363afacee027275dada3b50334815d952c14266ae058cdc8b8b2a2b6139a08e701c8c61b2324ca47": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0faefd19c3c75c67f25d5493a1ae0663afefebfead3c2340b0c461c40d8ba45c6dca28e74eb003d5a86b0e43ac8bfcc2c07": "0x54101400000000000080e1d2f2dd6e8d0d00000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0faf4b0a80effe6c90f74f151d4eaf850e8f542cac8a850d6ed16ba4b362880433261fcdfa06afbf07d9567e4693cf635eb": "0x541014000000000000803d03316227b10500000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9421e0a11a05b599114635ce32ea5890dcd14aa92dfba7adf3f6952588042fd0997dac96397cf5358afa7c8735b0b0ab9": "0x00000000000000000000000001000000000000000080e21376abd6451900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0xcec5070d609dd3497f72bde07fc96ba0726380404683fc89e8233450c8aa19503e46bbe690b532e6617572618066c4ca0710c2c8a92504f281d992000508ce255543016545014cf0bfbbe71429": "0x6a5c355bca369a54c334542fd91cf70822be92f215a1049ceb04f36baba9b87b", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd46fd81811d76d99582f4818933ee0ae77bd642527d72ac58f627f0dd4dfb801b54633459f3e255f08c581b14aba03890c": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4e1e81f7c28deb0b22e6cb54a3aa86e37074bea38099aca5c4b3e1265de56d7c9b86e7ca33c4f5db1b944ed9af11bd987": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da91d591561cfd342a533cdd62ea12cd37b23e8cded630a02a99ce7ea504bc270ef66070d461d4fe3afc541cad1fb879097": "0x00000000000000000000000001000000000000000000827220a807850b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da99c33f9c4fb1314ca81e17c5b96b7dbb54ebcfdc6cdc35cd99a8bb93c64ea81bb30731c2f01b0464bb400bad3f0d4b61f": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da99d2d321098020c874135d3cd8cc1dd23e47ce670fa341c73b97f178c7ad549b0ebcdf5fabef30296bb51529944f8a76b": "0x00000000000000000000000001000000000000000000ea5ddc9a5c630300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da99dbee7d35a1459e3206a8c8163a547cdbea0fba2208ad528ced1ca43acc10381ace90398c71554beae523b5b5f636d60": "0x00000000000000000000000001000000000000000080ed24511ded240b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9a0dc912555e16cf811c4193eedbdddadbf086b359213e191366019421d1411d03205b3c298bbadf4827a48d06524b9a3": "0x000000000000000000000000010000000000000000001ca2a3f100270200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da94feec0588592d08d3f085323134c608d98181e71c3cad2a5486d7892beaa6d61f1a40e94a748027277f09c8364d6f909": "0x0000000000000000000000000100000000000000000040bd8b5b936b6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4193717753455332c0dc4f765f481ea352174ace194300ced867d118d5f4c556dfa5f85d50e3d01b69f4c1dec054615ee": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da949644071d7f6f8ae2c4b5cc0e0da8c9feeedfa97bc9583acba109f30a692bf4082712f8b690d65316bcdeacade76224c": "0x00000000000000000000000001000000000000000000262dc7a480950700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4befbf4bd2ecbc034e1f6bcb3d73978202a697c791eb88c60e621767ca411a4c1281d02cadba3fd238a7fdbd5ff26abc8": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da938a3d7829288825384d522a03048d90d9c9e218ad3a96f0f3d1cd177e30fdd9641a19bd61809168cbf342f474bd89dc9": "0x00000000000000000000000001000000000000000080d44e3ab3b18b0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243fa489d0f39a8d8d61442bafd5f9b4487211199ca46f3b312821a8c43161813ab164c2f00636c550aa3e48c3c8d96a255": "0x04000040bd8b5b936b6c000000000000009bfa9c7ed759010000000000000000000000000000000000", - "0x3db7a24cfdc9de785974746c14a99df94e7b9012096b41c4eb3aaf947f6ea429": "0x0000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9b7de2f26a60f50022fcc854895e884d6d33eace5a5beb1628fe218d615bfbccfca6cecb606601652bfdfd8a053e069cc": "0x00000000000000000000000001000000000000000000d4bbb835b9c60600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da920b3af82a22e60f145a55ba4575cabad2aabe8a8bdae388cd746f995b878941d2deb0b4cc9b0995cffab8a1e2f34e3a5": "0x000000000000000000000000010000000000000000804e3557f3bf750300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4b4e2eb283b96514e38deb150cfddf68a5641a670536b50a86261ceab15c2457330384a6166e269b31cf34c928734b62b": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd41c6bdf3a51d71bd6b26a907cecebbaeaf55f275fe555d0832a239b75fcc14edde7f00815271d60821c98c56fba2108a7": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4be5367aef1ed18fc1cb984abd7d7ef00150b2739afd9b03c84b805a071a5f6873d9267b6d5f49669bb567dbaa1dad165": "0x", - "0xdea281e5282fc26537660d39d11b9e8b4e7b9012096b41c4eb3aaf947f6ea429": "0x0100", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd412401e72171e3a3c0b63b44d49bfaebc39c1c82ffa22143597a4d812a2b64f29ae49c63a9dfcf24197651efc9bb389e3": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0faf2f5bead9dd475a3609f9371f8db7a3259df73598485bf578f190b9922cce88fb93fdff3037dfe9a9901edf97ffe565a": "0x541014000000000000800d173aa8b5c60600000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fa43f68e2f29bf5ed665c97906008b033a3e725c262081e9460accd50c1e0d8c1493a4617e0038e8aaa818aa57a071be6e": "0x54101400000000000080e1d2f2dd6e8d0d00000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9ec87008009878bc16878b6f129db1bcbecf473a6376219ed9fd65db5c492765f385d4e11c2f66049055217b529145ed0": "0x0000000000000000000000000100000000000000000010632d5ec76b0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9ecfa156125a10adf639d99f63bf8026d9a17c49afaf011186cb25b8d6ba4fdab47fa8303c066a5f83d4f3bd24ebbd0c1": "0x00000000000000000000000001000000000000000000a877716b728d0d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd410c20c95d184303aaab86de1cbc44398bd5a819811cfeb468a4d8ab7eedc49df52df18395be227d222acec34db493f37": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da977474612b0165954ef1656f4d00a633ba758b3dccd3bacc6bdf0666f5ab2a81cbc75a355d00eeeb4540538e484e6819e": "0x00000000000000000000000001000000000000000000e41ee69380320c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4520c3b5abb39bb9bddf88adcfd3045125ac771ace1bbff810939e05a04716e98a6c002598ee07cfbcb2f7defef8bf138": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9111774c6281a01fc7c2ad34499ed8edbcd138aff265310b93ceceb1ba79b9b5e68dcf8cee21b976ca1ae43a0c8011389": "0x00000000000000000000000001000000000000000000e8890423c78a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd40ea384db833802a1abc8db31d48e925abbf6cc6e5258a119f696feeb0c2ea5b854c1dd08024998e8c70afc815c629879": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd469dfa1ec148065340153c6fdec3981f0a32954f3e273b7bdacf30a62ac3f1ced3ec1fbdfc86b65004f45809e3d5c52ee": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd475aceb48822a21ab12539b6c14f87e329ba99796bd8e94f76adc2b65a40730deb3ae801b41493bf852c7219eee59a260": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da95db21c28e028f7dc1ea459542c77181cc75a2e423128629ad2e02443e4bd902d0f08ece6b435034adccc620ceab89fa3": "0x00000000000000000000000001000000000000000000e8890423c78a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9b5727f435c3b53025b4e0093a4436e5b3fc478b6e33eb789cb4d0c7504dc7cd17872435253c873e3c3f2bff687a308d3": "0x00000000000000000000000001000000000000000000d903cd71ab2c0700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9cfac8f76f1218dfdcf307de03803b57b25503d870d273f5041911ce64638d97bdf453aac529feae4435ff33de0067201": "0x00000000000000000000000001000000000000000000a877716b728d0d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd44feec0588592d08d3f085323134c608d98181e71c3cad2a5486d7892beaa6d61f1a40e94a748027277f09c8364d6f909": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4a58cb0c05075494cb0c64d79345201f595a910111666608bca19a4767ff1957c97ad79e6d2c33f0d22e1cb74ae177dbd": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4b8d3520280d1edc39a740cca98a0be0d51b24b22701bd6543196ec23cd6c4636b49c06f9c9bf85b5c7d8e1e6ccbb64ea": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4d8871f1e90b52b933c336ad74b61094f5e841689213dd3c7d0508914d071f64c132977b23dcf7c07b420a0e046918d4d": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fa1f2a387ba8a3db1fbf407adfaa62ba08dc8e39b099aac859321539ec7ebaf3d65ad9ed94b984990159f21c0b35995717": "0x54101400000000000080b58eab1328541400000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282434e7b9012096b41c4eb3aaf947f6ea429": "0x0000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d872824328f8ceb71a4d04d2885b6d145d1a9fbdc1ef936211ee37e34057f68a2fbb22fffc389e2e2767c935090fd09a70b2212e": "0x04000088b116afe3b50200000000000000424ca98c9522000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da966af7e91e9a6933cac314bef3c467aa1751513fe96ed4c5a466b2075dea2c3a8ba364e77dfbeffba3236154802f3c0b3": "0x0000000000000000000000000100000000000000000040bd8b5b936b6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da993eaa916ae3910ff4bbfabbe241955c5a960f8a6c8769c4a795a8d6beec0f179a9d9fa113f4de4c7118174f752bf4adb": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7f9cce9c888469bb1a0dceaa129672ef8": "0x19a1386b696c742d7370697269746e6574", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4e6253384d547abebff645219992c7f0c31eb496e27e37a93f3c92339689002ef76c34d09ba752dbc53d484acc7ee3b56": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9c98c4c36a640dbe6e91d4093918a88599b3ecf356c3023c1e089e91b6c4fdba564eb4a45bc1bde14d44fc74d7fd5b975": "0x00000000000000000000000001000000000000000000843d1afe213c0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243bb1d416df9fb8f40bb36ef99ebabd405ffda621f9ed91a3f8583a8f748caeea2bffb4054f2417d0beefec685a894a36f": "0x040000ea5ddc9a5c630300000000000000a9cfe9779d15000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd43889d35d383dd18a2908a2d50ab393f2cee1ccc12d271c0fca869d2a3f464d89ecc1af567e675dddd105024f0fa194c2": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4763e223ff1cfeaabe523a5d3335bea421c9a8c244db96e244c8c11d7d2b84f439d6f42ab1d7cb3e2f66c9f2940cb702b": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da97c7de191b377e05d5c64c2e13b3d4a2f768538a941d1e4730c31830ab85a54ff34aaaad1f81bdd246db11802a57a5412": "0x00000000000000000200000001000000000000000000a0dec5adc935360000000000000000000000000000000000000000000000000020c65abc8ed70a00000000000000000020c65abc8ed70a00000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9665f5fdf47649627ab9b6dd81cb9af2496ac877bb59d6334eb6aebb0a9e90be0165752daf6e6e3dd078ac71f10cbf5bf": "0x0000000000000000000000000100000000000000000010632d5ec76b0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da981d608634400b86372279f30f286996c283073d74823d49eaaba6dc69ba145b4e28b91499ee4d314c35d5a8625477a31": "0x00000000000000000000000001000000000000000000d01309468e150100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd473f8eb5cdbd142e440a910473cc25126edf262c08a8966b1ceec8a041041d9ff70fa63491d4939ffa07ee63161dbd841": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4ab9d6a2a796f939432f6e847441bc1f66fa6013bb0eb484f8a0eb2f68569734b35dafbadfab264f352cbd844a33889f0": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9c25b71060955ea843c65fbf58673a67eccfd6821fd2d3221faf7dc8680bc9965fc225661389ec2f52e60c817d8a1d2af": "0x000000000000000000000000010000000000000000007c332aa12b541400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d87282430ab2dd168f19aaf9fb571d8a60ffe9e6651f3d5a407dd40727c0409cb133377e1d245137cddd0dfd87aaeb26629224da": "0x0400005bacd32ba6d824000000000000002ecdc21622d6010000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da961986e3136e9a1ac5436d8e5389aa2d8eb423ba54aa669956b9d86a517fc7af6380d47c0c86a3953262c0ef6865019b6": "0x0000000000000000000000000100000000000000000040bd8b5b936b6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4210d42a24de0ae486aa28f8b7c8ed3d165641861b98ffc60f24091b4ec914345f259cd283ec6b621fba1e7af7a89d66a": "0x", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d87282433233da4c3d4978f8dd1bd624bfc68640d340d8a80e40c37701744917a8a612bbe4ffa6888c1c904f76e7438a0edfdd91": "0x04000088b116afe3b50200000000000000424ca98c9522000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9275940a8cfe39c56d3c12dbb779bfbe339710d562e971f963c9523bcebb9fcc57dd93ee65e5495b5418ccedcef2a6aea": "0x00000000000000000000000001000000000000000000e8890423c78a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0xa686a3043d0adcf2fa655e57bc595a7874c6bdda44177fd8b580beed8d6ad3d897fbb62e872d951c6a5c355bca369a54c334542fd91cf70822be92f215a1049ceb04f36baba9b87b": "0x6a5c355bca369a54c334542fd91cf70822be92f215a1049ceb04f36baba9b87b000020c65abc8ed70a0000000000000000000020c65abc8ed70a0000000000000000", - "0xc2261276cc9d1f8598ea4b6a74b15c2f218f26c73add634897550b4003b26bc6806ae4fbff1bdedf667edd4846e2585ef2460945ba4cd7088085c436b334f0c9a3240755f16267e293dfa29ebe840a3b": "0x0476657374696e6720000040b2bac9e0191e0200000000000001", - "0xcec5070d609dd3497f72bde07fc96ba04c014e6bf8b8c2c011e7290b85696bb3ba801c8d1aa245fb768538a941d1e4730c31830ab85a54ff34aaaad1f81bdd246db11802a57a5412": "0x7cff6c7a53c4630a0a35f8793a04b663681575bbfa43dbe5848b220bc4bd1963", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9992ba2f593fba249e966e0a7d81b8c27e912c3d01f14c5a92c13acc55ad7de82fb4f66d329db5ec06788c66052b354a9": "0x0000000000000000000000000100000000000000000010632d5ec76b0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4ec3f2c6941cbbe0539adc221e0b33750339a8671146b0d8239806359ccc92ea29fb583451e7fbfbc9cba2a46381716a5": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da902bc100d93c1cfbef693bdd87372717fcc2111e1db2fb155de143004c1ea354d2defb82e515667f0b9ebb80a4093a0b8": "0x000000000000000000000000010000000000000000002cf61a24a2290000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9d325b2085166653f9f1900b59fb6f3a241ce733ea740ae76f455cdf3443f66b5713a42c1b54b15334094a4c1d1bf123a": "0x00000000000000000000000001000000000000000000b89d0d6955a00100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9fa95e8b66412468668d4103cdc255fade5c7928ebceed1c3f1baa79d8ecedc3dc675c755eab881517c0a8366d8da1e04": "0x00000000000000000000000001000000000000000000af4d957992a20a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fa4f6f1e8d430dd01a8ce796642390a904bdc8edb0ecbfa7ff0a9fbb0facfeb722aab6ca21ff1231606c1d565ab8b02021": "0x54101400000000000080b58eab1328541400000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da97f4289499c875383341758bb801c21264e03ec514297d5c37acc50d21d73662dfdb3e6362d17870edcc3767fa8f18cfc": "0x0000000000000000000000000100000000000000000024ab9b0c9ee12100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd47f4289499c875383341758bb801c21264e03ec514297d5c37acc50d21d73662dfdb3e6362d17870edcc3767fa8f18cfc": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4efd19c3c75c67f25d5493a1ae0663afefebfead3c2340b0c461c40d8ba45c6dca28e74eb003d5a86b0e43ac8bfcc2c07": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9e14a03a2e0248283e6b86671029bd7d14839e68deaa2ed5d93835c57b7dfc8f9fbb8ab9e9749c0c258ef3281dd73367e": "0x00000000000000000000000001000000000000000000e41ee69380320c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fac5c1c72da1bd7fc39f65ee5b6286ecbc6c848f4c75b46c62f5b6995e93cfcae8ac2cc53d59b5d1074d6b3795ad217c4f": "0x54101400000000000080b58eab1328541400000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9d16d25cea9713898976b6d453bb6c1fb4b0e0c0d95bea9ca3c384b78a806429ff4a731a43d50b3d8762f77265d01f5d0": "0x000000000000000000000000010000000000000000007c332aa12b541400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4bca66ed8fe7bc989244d435f3cb33bd3100bf68c67714f65574e27f4cfc3ae3344771d4d96c60f86a9c0d5178c249a99": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fa193717753455332c0dc4f765f481ea352174ace194300ced867d118d5f4c556dfa5f85d50e3d01b69f4c1dec054615ee": "0x54101400000000000080b58eab1328541400000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da975aceb48822a21ab12539b6c14f87e329ba99796bd8e94f76adc2b65a40730deb3ae801b41493bf852c7219eee59a260": "0x0000000000000000000000000100000000000000000050efe2d6e41a1b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da98009fa6a516f17be9340679f592f0f28d907d7e2d47bc78238a247ebe5d6b23219e3c815b37056aa616c7f2cd937c017": "0x0000000000000000000000000100000000000000000008c5a1d8ccf90000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9bf4a2abe86f4f6015ac8b79f344d56e4dd1ec4546f256cef48ec4bf7859f7b991cace005c0f0f61a805370f0c4660a7d": "0x000000000000000000000000010000000000000000002cf61a24a2290000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9a9ee99305234e672d5cdd2bdc179c2e01c62f8ac085fdfbd1935895a994c9761ebba22c2ea6a8e00c4abfb4b5db1dcd6": "0x0000000000000000000000000100000000000000008063c964ce1bc20000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd409046e5aadcef5bac8eeaac3064d3fff84e515ddbd862234751956bf90ac5dd822183899249191afe6aab9174779228e": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4275940a8cfe39c56d3c12dbb779bfbe339710d562e971f963c9523bcebb9fcc57dd93ee65e5495b5418ccedcef2a6aea": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4febb1eb13459c4993744d092e155825417b3faa5419c8e9e6a642989fa7212d1d0a8d35e179908171ae38ce0fa467c30": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da90ab2dd168f19aaf9fb571d8a60ffe9e6651f3d5a407dd40727c0409cb133377e1d245137cddd0dfd87aaeb26629224da": "0x000000000000000000000000010000000000000000005bacd32ba6d82400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9f86837afdbeb9ed3d98aa822f46f7f0847f0106057b9c0d509445c72da68161b2811e100eab2b1ac7b40e64a129b39b2": "0x0000000000000000000000000100000000000000000062acc5eb78ad0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4d1fdb33ffcf86b19e0284e617b6af6b668f2358dc6ba14a9b982e49351fa041c46a840e54cb4d09dbeb08c5b2515204e": "0x", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d87282436c84be5fcb3126abda911f589a3ec42d8719681183a8e38a803a1f2ebed095e1e4fd0220497e335fec43918c3f96e160": "0x0400004c0aa286d510040000000000000064f2fd52e033000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da996bf253f0831e74d830ccd5f1e1c6c10c7823efbc8acae7997f4135e6b98d638035e38687f046f364e8e54b13731acb2": "0x0000000000000000000000000100000000000000000010632d5ec76b0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0xa686a3043d0adcf2fa655e57bc595a7813792e785168f725b60e2969c7fc2552": "0x0000000000000000000000005802000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9bb1d416df9fb8f40bb36ef99ebabd405ffda621f9ed91a3f8583a8f748caeea2bffb4054f2417d0beefec685a894a36f": "0x00000000000000000000000001000000000000000000ea5ddc9a5c630300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da929861ef9c26f604adba8b3749e29aa72d3b2fec896bd5e11f7f133748d0c1e516058da7f76f06129c26b0432e607c6ca": "0x00000000000000000000000001000000000000000000a41dee21eceb0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9763e223ff1cfeaabe523a5d3335bea421c9a8c244db96e244c8c11d7d2b84f439d6f42ab1d7cb3e2f66c9f2940cb702b": "0x000000000000000000000000010000000000000000009e32fcca5f120000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9196285edc0505b3296a306e0fa52cbd7cfa6910113062b80483f7cbfa38268b3e7911944077fd555bae464a7d89a6bf0": "0x00000000000000000000000001000000000000000000485637193cc34300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da97d7d473c8f985b4811f6f7c364b759da628da4055a812ca4145c75c38734138b6c62f0402ff1feae649be54d4c42c32e": "0x00000000000000000100000001000000000000000000aa23d301f2d80a00000000000000000000000000000000000000000000000000aa23d301f2d80a0000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9f6e8023bb1b4e9f725970ee15da9958f6e9ab5ca126703ebea216413f66232287b303dbb50795960a8f2ab8f6f32d16c": "0x0000000000000000000000000100000000000000000010632d5ec76b0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4a5f432bf32961d5fd0b2dde69f27a0555721f6fa1f73847072f23b8e2a029a92cc51a321f5da1b8570f150bc6c8185c6": "0x", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9a21a88dd97cf42bf00067ab7e5e030e5f6a6f336f18005c21f0e70982f72c49f789e2be7bb0bdd1dbafb0d66ca693319": "0x00000000000000000000000001000000000000000000203b9db5056f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9a2303fda817785785685d9f08f8cab21958326f3e16f0a85901c7d4e0d2e173543034ed0c9e91edc8507befb0e1e5eba": "0x00000000000000000000000001000000000000000000d4bbb835b9c60600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9a58cb0c05075494cb0c64d79345201f595a910111666608bca19a4767ff1957c97ad79e6d2c33f0d22e1cb74ae177dbd": "0x00000000000000000000000001000000000000000000a877716b728d0d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9a5f432bf32961d5fd0b2dde69f27a0555721f6fa1f73847072f23b8e2a029a92cc51a321f5da1b8570f150bc6c8185c6": "0x000000000000000000000000010000000000000000008c59c69e0e670800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9a64e153618a57dcb75a3e136d42ea494295de105e3928f31e1121aa1fd451d7b16028f82a4b2bc1f6611ee637c353cfa": "0x0000000000000000000000000100000000000000000040bd8b5b936b6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9a933bf37224186f955260f85d9dd8153b9817607cbaa3b2b55134c31aaf0743e2951643db7b33d89b2f122c61a2e29aa": "0x000000000000000000000000010000000000000000007c332aa12b541400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9a9ee576e73a40338d42503ec9484f1d066f80251d2f11dd66f1f1aa8681b9dc8b035405123ca9d22195e04bb08827194": "0x000000000000000000000000010000000000000000004e8e1a853cea0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9a9ee99305234e672d5cdd2bdc179c2e01c62f8ac085fdfbd1935895a994c9761ebba22c2ea6a8e00c4abfb4b5db1dcd6": "0x0000000000000000000000000100000000000000008063c964ce1bc20000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9aa45f6639f5cae3bbccb661fc165f7aee245a8f86dfab58f672fecabe547f5bf7ed54869a24c6e55311edd0a8bee478f": "0x00000000000000000000000001000000000000000000703b1bd2aa400300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0xa686a3043d0adcf2fa655e57bc595a78fc4be2423e9507ac15720245b39865ba": "0x0000408cb5781daf150000000000000000000000000000000000000000000000", - "0xc2261276cc9d1f8598ea4b6a74b15c2f308ce9615de0775a82f8a94dc3d285a1": "0x01", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4860886668a9c38331ffbab78ceeff5f50a799e768a336d6e6d1dbdd24c30714fdfebea3561504e3c393165931407af12": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd45ab38c78bef50e13399f255745cc478e2decf61451dcef6837f9a9493cf2f3e3da1672132eaa39d274caf1f72bbcb4b4": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4bd239b4993d7cece82f33070cd24dff9e065d252656752041bb686f61d41d26255d189e979e491e543b73260c5fd765b": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4c98c4c36a640dbe6e91d4093918a88599b3ecf356c3023c1e089e91b6c4fdba564eb4a45bc1bde14d44fc74d7fd5b975": "0x", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243929739a53fda1775df906d3db633132294d5f05ac375fe047f1b4f699e1dea6c585c82071d81fffd59e62c39f7c171ee": "0x04000040bd8b5b936b6c000000000000009bfa9c7ed759010000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da90e35115b2d8165fb696037e703d17b8a00f6c8612150bb014990d3428dce630de0bf17864c8c76096f8e65c74bf13f55": "0x00000000000000000000000001000000000000000000fac009f923cf0800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da942e910c58c81ece4bd0de09832f1a5a08718fbdbf3edabb9e7d9589b03dc39bede72111dc9959552cc511b1b0370d404": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9ab908e0476348ad26e45cb0076d506d3d16f0678bb8218c19df2df6c4b529dbc108a9ec5afc39eb57022172f6defe611": "0x00000000000000000000000001000000000000000000d01309468e150100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9ab9d6a2a796f939432f6e847441bc1f66fa6013bb0eb484f8a0eb2f68569734b35dafbadfab264f352cbd844a33889f0": "0x0000000000000000000000000100000000000000000010632d5ec76b0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9abe07b38b8a82d3b110fc532f5f4de0d6057ea7c64ea28336f1ef3ca8b16ad8ebfa568501701355a09f02aaabe070b18": "0x0000000000000000000000000100000000000000000058c51ff571cb0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9aec5f147dafffacf1cf6408084953390babc9b78a16496bf61704d42c6c767646abc039af92bb75b021aadc2e28cdc43": "0x00000000000000000000000001000000000000000000986270b34f310100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9b0b59d78bf2ee14ad11460e58f9d6f4704e18eb080becf839a2e6a333c803ac4f1dc514b3a65f3ebc91ef805c73b7e53": "0x000000000000000000000000010000000000000000005cbee70f17300100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9b26a85b49b16f2623c4c4e839f6622b563ec078a284d4bef2498322c2132632482ae56c6a8b934e78b9f528b8bfd88e6": "0x000000000000000000000000010000000000000000007d9f046b66306400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9b2f5c6d48600b9d571b32bba79b419fff2db084e7ec2187f01243fba4ae3c8c04ec8a60918ead09df668d7108076f2bd": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9b3c6b2fa810aa6d5e298e4583aaf90a21516bca37fab03241448825a9d76f0854020c753f7a5db1d188f58b5129a7a28": "0x00000000000000000000000001000000000000000000a0dec5adc9353600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9b3e7734e0f1365819f1c8ade9db4a66a69caa96417cd88dc2aef0ec2690f23574dad09cf6f4a39d87b928c0a4baeba3e": "0x00000000000000000000000001000000000000000000f18ae57389663500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9b428398afe6b68ef63603ff19b96fc003e836130b0ef225ebc200baf54beb61e8a707c529e7f28ff87f84f421401df65": "0x0000000000000000000000000100000000000000000010632d5ec76b0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9b48203d2c55b9a6b03b0b798d17cc48cb9b053d4c0967a7155dd5a6c3bf55dc5acf8922dbde40ab1f1eaa9e151907d38": "0x000000000000000000000000010000000000000000007c332aa12b541400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9b4e2eb283b96514e38deb150cfddf68a5641a670536b50a86261ceab15c2457330384a6166e269b31cf34c928734b62b": "0x00000000000000000000000001000000000000000000a877716b728d0d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9b5727f435c3b53025b4e0093a4436e5b3fc478b6e33eb789cb4d0c7504dc7cd17872435253c873e3c3f2bff687a308d3": "0x00000000000000000000000001000000000000000000d903cd71ab2c0700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9b685d55343600eea9074029b4b5674e65f7222b1a6e28f097ec231b1c303f638fb6fba13e07d9f638049275c02db8bf7": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9b6dc3428454e01264c97883a9852c2f988ec1fb086e073465c1a0b880352c9bba49c5de4b0cdb8efa80ba0471f726879": "0x00000000000000000000000001000000000000000000c52ebca2b1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9b7a4bfd5916b37c715ac45cdc09c51d03dbc062e3e5d1e4c0d709857023c2c3ce13bfdd722a417195a5287abefedfb0f": "0x0000000000000000000000000100000000000000000040bd8b5b936b6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9b7de2f26a60f50022fcc854895e884d6d33eace5a5beb1628fe218d615bfbccfca6cecb606601652bfdfd8a053e069cc": "0x00000000000000000000000001000000000000000000d4bbb835b9c60600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9b83e91a4b560b28ea0b07c77856900fd427b946b2cee9bd4ed03982e6f716d4eeaa5dc8410255e7a8ecf8d0080effe24": "0x00000000000000000000000001000000000000000000b2d3595bf0060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9b8d3520280d1edc39a740cca98a0be0d51b24b22701bd6543196ec23cd6c4636b49c06f9c9bf85b5c7d8e1e6ccbb64ea": "0x0000000000000000000000000100000000000000000040bd8b5b936b6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9bb1d416df9fb8f40bb36ef99ebabd405ffda621f9ed91a3f8583a8f748caeea2bffb4054f2417d0beefec685a894a36f": "0x00000000000000000000000001000000000000000000ea5ddc9a5c630300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9bc517e8543ee25f3d049208f37dc604f5ec546552827c43f2f6dfff11f2030c5fb701ea7fecddaf28d8e20d9d2c01a93": "0x00000000000000000000000001000000000000000080ec81e6b855960300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9bc8366cd11b7d96a093547548ea07de6fa53c9aba42da8645c332d15272cae9b939de4181b8ea261e3cb9c2e79e1dd36": "0x000000000000000000000000010000000000000000003b967219f1b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9bca66ed8fe7bc989244d435f3cb33bd3100bf68c67714f65574e27f4cfc3ae3344771d4d96c60f86a9c0d5178c249a99": "0x0000000000000000000000000100000000000000000036687e2132740700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9bd239b4993d7cece82f33070cd24dff9e065d252656752041bb686f61d41d26255d189e979e491e543b73260c5fd765b": "0x00000000000000000000000001000000000000000000c84e676dc11b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9bd3ba1a91a4a6aa714f17f7b51e11805ebf8f70eb6d31f6a3e74af6a06b0e6bb932b88d520a175c73de4dc6aa3177985": "0x0000000000000000000000000100000000000000000010632d5ec76b0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9be5367aef1ed18fc1cb984abd7d7ef00150b2739afd9b03c84b805a071a5f6873d9267b6d5f49669bb567dbaa1dad165": "0x000000000000000000000000010000000000000000007f02d7d3bbf12a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9be7b5c9ba4d7db2ec2e1725c22dd36defab36fbccb54a4bc954971f5a081fdda5821ba55f84239838ad380f0cf0f111a": "0x0000000000000000000000000100000000000000000057db3339275f0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9befbf4bd2ecbc034e1f6bcb3d73978202a697c791eb88c60e621767ca411a4c1281d02cadba3fd238a7fdbd5ff26abc8": "0x00000000000000000000000001000000000000000000260551c36a080200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9bf4a2abe86f4f6015ac8b79f344d56e4dd1ec4546f256cef48ec4bf7859f7b991cace005c0f0f61a805370f0c4660a7d": "0x000000000000000000000000010000000000000000002cf61a24a2290000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9c25b71060955ea843c65fbf58673a67eccfd6821fd2d3221faf7dc8680bc9965fc225661389ec2f52e60c817d8a1d2af": "0x000000000000000000000000010000000000000000007c332aa12b541400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9c26cbb8363be38be8512d444d7a39ae42722592ee6853bbb850186b181eda27693c3c972c302be708630af4f5431fd16": "0x000000000000000000000000010000000000000000807f709ace7e610500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9c399dfbb8067b0b4e63692009984eb5b11b7aea197984d7711449a2cdc1c16cc2f5748249dc4d8adafba46d60c41d50a": "0x0000000000000000000000000100000000000000000036687e2132740700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9c5c1c72da1bd7fc39f65ee5b6286ecbc6c848f4c75b46c62f5b6995e93cfcae8ac2cc53d59b5d1074d6b3795ad217c4f": "0x000000000000000000000000010000000000000000007c332aa12b541400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9c7f2140316a2ec05e5d52ddabf7a1c84627e29d9ce025575d2afc645d7fd1f572a24fed6528566335c616e86d0798571": "0x00000000000000000000000001000000000000000000a027128c1c2b0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9c94ef00051509e6966616e4fa7c883d2cf4d87628d9776d82e2a608e05ab70a8d81c2e02a5dd2b4fe428a11e997c20a1": "0x00000000000000000000000001000000000000000000d01309468e150100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9c98c4c36a640dbe6e91d4093918a88599b3ecf356c3023c1e089e91b6c4fdba564eb4a45bc1bde14d44fc74d7fd5b975": "0x00000000000000000000000001000000000000000000843d1afe213c0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9cfac8f76f1218dfdcf307de03803b57b25503d870d273f5041911ce64638d97bdf453aac529feae4435ff33de0067201": "0x00000000000000000000000001000000000000000000a877716b728d0d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9d088f17cdcfe78101b8fd643ef23ff24ec9b89167a547f11a13ef71c9fea326d66b067d3dfd83744c83fda31d7fd4171": "0x00000000000000000000000001000000000000000080ae2e83b0ca8a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9d0da10b18065b0d7db27e2c95aeb9900793b07a6376e5d4618db105f5ec6473377e8b9e5e1fb58be5e75765632eaa1f5": "0x00000000000000000000000001000000000000000000d4bbb835b9c60600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9d16d25cea9713898976b6d453bb6c1fb4b0e0c0d95bea9ca3c384b78a806429ff4a731a43d50b3d8762f77265d01f5d0": "0x000000000000000000000000010000000000000000007c332aa12b541400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9d19c224383fb618182192773fc9013c70280948c5a15efca05c1ec3bd8f6c16288428ad229ec98e119b70dea63002f0c": "0x0000000000000000000000000100000000000000000089b3efdbd75b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4504628318c996c44377e499881fcaa23da0748452893e1b6b2bfff2c916034c0c9fa58c3d01d3ef19d1e2fafe6c3a244": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4928d77d4eed551cea8caa01104e35ccb88086a1607427949f024de5583f335b584187bd2c29877210832c0a5de2281f4": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4b2f5c6d48600b9d571b32bba79b419fff2db084e7ec2187f01243fba4ae3c8c04ec8a60918ead09df668d7108076f2bd": "0x", - "0xc2261276cc9d1f8598ea4b6a74b15c2f218f26c73add634897550b4003b26bc668f76bf6873b4075fe534f5623815a9b643254e645e0e040e78449793fda50fba9cd0929631c3c9ea08387cfa1d2767b": "0x0476657374696e67200000aa23d301f2d80a0000000000000001", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da973f8eb5cdbd142e440a910473cc25126edf262c08a8966b1ceec8a041041d9ff70fa63491d4939ffa07ee63161dbd841": "0x00000000000000000000000001000000000000000000809e483072ac0800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd48fe871e416c75335d38292ce5a4632e7ec3237a87bb923f59c0aec55f34eced3cbe83445a93595fd8251e3f0630fa1b0": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da91a703197c4212320e897080995e4e36b2ba37175566430cf84982f55bfbe6d418fdeaf6ca7bab076b2b89b2f8b078ef9": "0x00000000000000000000000001000000000000000000d903cd71ab2c0700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9141d668cd6e871e47a72b276e890ff27d1f5597346aa9ffd3a1c5e7c7327bacbdd93aeb9f69d21c6c21abba9c0d25d34": "0x00000000000000000000000001000000000000000000203b9db5056f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da92cd5d6b8efb2cd59856d56358a682c4b07724a32fd32825e3c1b45fa243b4784a4baa2f6342b2abefffb1a201a094c8f": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da93233da4c3d4978f8dd1bd624bfc68640d340d8a80e40c37701744917a8a612bbe4ffa6888c1c904f76e7438a0edfdd91": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9d1fdb33ffcf86b19e0284e617b6af6b668f2358dc6ba14a9b982e49351fa041c46a840e54cb4d09dbeb08c5b2515204e": "0x000000000000000000000000010000000000000000007c332aa12b541400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9d2c0f47f68d20e285f0b26f931aba06733da83bd9be0e79c7d71eab84f8223d3d09335d29f46d999d61424d1abb62981": "0x0000000000000000000000000100000000000000000010632d5ec76b0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9d2fb87e31f44d139639588e8cc9fc4c666bef087654682f32f0643d46ea5f79078a3dd3f676d5e908bec4561dca999ca": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9bc8366cd11b7d96a093547548ea07de6fa53c9aba42da8645c332d15272cae9b939de4181b8ea261e3cb9c2e79e1dd36": "0x000000000000000000000000010000000000000000003b967219f1b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9047a7a8ef7756c3fa6977f657bfd387873dafde4839ffcaf83e1707c3807cc120f94fca94263bdea9524ad99d55fab16": "0x00000000000000000000000001000000000000000000b89d0d6955a00100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4f4b0a80effe6c90f74f151d4eaf850e8f542cac8a850d6ed16ba4b362880433261fcdfa06afbf07d9567e4693cf635eb": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9008155f894582b35e8b7953f66f55432a406b315d1eb8c378c34742b8d94c6ea4c47a5b1f578846d99578022e7a355d0": "0x00000000000000000000000001000000000000000000a877716b728d0d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9d3107ca59e5d1c52b75ceaba26370b7bd0d237f90730d75b1dd726deadb158c448c7d6110fdb571b9a306ab21609e01f": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9d325b2085166653f9f1900b59fb6f3a241ce733ea740ae76f455cdf3443f66b5713a42c1b54b15334094a4c1d1bf123a": "0x00000000000000000000000001000000000000000000b89d0d6955a00100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9d462c5e44e9f8f3886ceb82c3d52dd42f213f5635dd0a00c44c64983f5067b89448e670208fb2068832f52702ac33b51": "0x0000000000000000010000000100000000000000000040b2bac9e0191e0200000000000000000000000000000000000000000000000040b2bac9e0191e0200000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9d473fbd94ca0b57d8dc14fee5599b875f73bef45185623035375ce512f83ac52acace663c04d424d25cb050b8a3c7216": "0x00000000000000000000000001000000000000000000a877716b728d0d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9d729a62463e6d1cdb421213c81944c8e0a4706d85177aba489066405376734f41c30eae6167ed6e6089399ea5e723e43": "0x00000000000000000000000001000000000000000000238006034bdf2300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9d770b5646aa0f2597975d1b2361ec02d9997d35a0b0584e18076cf420d7295a7e9d8a8a078760dea6d184411ea83c77f": "0x000000000000000000000000010000000000000000009e32fcca5f120000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4238f39e6052ad1efafb5b6010eb6bb52db206b80ac8daaadaf090a15611feba1029c135cc215cbe234f53fac0c118ced": "0x", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9d7a96857b80f6d4231fe84363b757190ef8affba4fcafd3ba332616e8567c87eee82129ff3924c8d16a5e0cca7ae3f58": "0x00000000000000000000000001000000000000000000d4bbb835b9c60600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9d81a23b77c9821dc80a9f44132d84915f90c3c73d1c02340f7cea7a772680542008b3b10fedc2caa02f98d66be623fdd": "0x0000000000000000000000000100000000000000000040bd8b5b936b6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9d8871f1e90b52b933c336ad74b61094f5e841689213dd3c7d0508914d071f64c132977b23dcf7c07b420a0e046918d4d": "0x000000000000000000000000010000000000000000007c332aa12b541400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9da841dec8dfd73ab260b5a2dc6c041df9c393c0bf47418e40286f14822cab057b69fc111e6c28809d94cae387eaffe22": "0x00000000000000000100000001000000000000000000ec6a14c6fc670802000000000000000000000000000000000000000000000000ec6a14c6fc67080200000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9db243040a685617388a6a7999e87c8cab6040e7bf3d981b810f0b2d605a0acb337dc5bd1cd4e221325265fee7334814d": "0x00000000000000000000000001000000000000000000e41ee69380320c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9db4cb4f3c003a283405383d8ba0e13e892803729b591966fe5148066855d42465ea6bea06d592cbf2ac854704500fec8": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9dbad6a48be5e41538bf727193978fc8466f7271108a4562cec481ecf7d9cb4de50ac20cb0a875b94de25ffa145e4654b": "0x00000000000000000000000001000000000000000000ffe0349dfdc20a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9dd266a958e8103a71b70d1c1df4a59310df6953acb9c02923012c24020e66eec9064de83950a1555ac1d5b481138c97c": "0x0000000000000000000000000100000000000000000089b3efdbd75b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9dd7337d2ce0eca168226b2466d093bacb3d9bc87518ccbd1f8d81a45cf9f1645d6de2eae4b74ea66234557d4b55318a8": "0x0000000000000000000000000100000000000000000092d54d06cff01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9dd88ee968529cd4c31ee11c344ed67414b579d1fc9a20bd2b01b620c2c4785e02444e723086d07d776bfb8b3954b6857": "0x000000000000000000000000010000000000000000009814440dab210800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9ddf7a37ee322de59bfe2d87a57a3845fba8cc1849118cea7d30bc5a4aeae7f81795ef0a04c62d112a2d24040be1e03e2": "0x0000000000000000000000000100000000000000000040bd8b5b936b6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9df7e09d2b8b14411dabd7e84c0783120951de44e62168c8b29520bfbf168850070b628332642849a8bbe44983238bb44": "0x0000000000000000000000000100000000000000000010632d5ec76b0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd42652dab2948830bceff5754b7abcc8b05f08078b6b50b5e396a5d45d38581415ab8c0a3c64b6067f4d2f1a153167e25b": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd43233da4c3d4978f8dd1bd624bfc68640d340d8a80e40c37701744917a8a612bbe4ffa6888c1c904f76e7438a0edfdd91": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd43603ec196e126d1fea97931057149e88c2bd843c63b243488e736ed9b9dc3d191627e1a19fa6f8abc7cca67432ed138a": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd46bc39de50d1e863372db928df2437e5b9547235d39ca4fe5a04832c75657faf5b2ad3edb41a4ccfffe90ee393e4ba869": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4008155f894582b35e8b7953f66f55432a406b315d1eb8c378c34742b8d94c6ea4c47a5b1f578846d99578022e7a355d0": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9f8d55820d01edb13b990b98173320cc20acae1796448a59e5209d79459eac261c6f5e826f467c3c0120ef6906cdc0ec5": "0x00000000000000000000000001000000000000000000a917d6b739420800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd41c0103457ed7d16ea3c2200d16ecf21289c8fdac7d863b8d0b9ef23f78c5fda3e61602f83d2526b09e2a9fda94b05dd8": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4ddf7a37ee322de59bfe2d87a57a3845fba8cc1849118cea7d30bc5a4aeae7f81795ef0a04c62d112a2d24040be1e03e2": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd48a9b07c50f5f9b448b4fc071aacda5ee5cf4bac7a9ac479987871eeaf8799a4e3189b19e158612c0f25480560dc1f0da": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4fe166f828ae19545437607972c0b349cab868d84f97ee9f01760bf12182e46c3c7787ac3425e0769f6b58904536c80ba": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fa8a9b07c50f5f9b448b4fc071aacda5ee5cf4bac7a9ac479987871eeaf8799a4e3189b19e158612c0f25480560dc1f0da": "0x541014000000000000006aefa17232960f00000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fad0da10b18065b0d7db27e2c95aeb9900793b07a6376e5d4618db105f5ec6473377e8b9e5e1fb58be5e75765632eaa1f5": "0x541014000000000000800d173aa8b5c60600000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da96f10eb2dce9f15d9f5f753823722bdb5ecf462897281394f1994ac9856e8d8dd846793c3736bf8f36c1c7167f368fbc4": "0x00000000000000000000000001000000000000000000909dceda82370000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd405266dc77f47c6aac7e7c982f908ba630e71d5efbbb198c71e5d09cb50af4b8191c62ca64c2b933f052241647a45e00b": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd45764e6062b7c46dd1f124495282693e3559467a481d0b36f1f246f7c7836eac0fd45c45c91437565a4ef90bd11b62d69": "0x", - "0x3a65787472696e7369635f696e646578": "0x00000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d872824327464e2a3147e039f782ca46277d39135a74972bffc24b19546f2f4c3cefd4103cc62905d29f402120e0f54c2c2afe0c": "0x04000040bd8b5b936b6c000000000000006dea73fa5d67050000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd433d4a500db8237e790d845d8a13dca2d73112b6113b0bd000a27341cf0d99e484be39c93dff0f584af86605001ab8357": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4f21b762906e0cf6d8b1357c4f5460f4e6fbcfd49c851b083a0cc36efe277ccf337b574710da5f0e0cae155fb59c597c4": "0x", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243275940a8cfe39c56d3c12dbb779bfbe339710d562e971f963c9523bcebb9fcc57dd93ee65e5495b5418ccedcef2a6aea": "0x040000e8890423c78a0000000000000000a675bbb5ea06000000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243c98c4c36a640dbe6e91d4093918a88599b3ecf356c3023c1e089e91b6c4fdba564eb4a45bc1bde14d44fc74d7fd5b975": "0x040000843d1afe213c0400000000000000fff39064041b000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da928f8ceb71a4d04d2885b6d145d1a9fbdc1ef936211ee37e34057f68a2fbb22fffc389e2e2767c935090fd09a70b2212e": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd428f8ceb71a4d04d2885b6d145d1a9fbdc1ef936211ee37e34057f68a2fbb22fffc389e2e2767c935090fd09a70b2212e": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4bb1d416df9fb8f40bb36ef99ebabd405ffda621f9ed91a3f8583a8f748caeea2bffb4054f2417d0beefec685a894a36f": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fa1470c3bcc7e8ba8cd403663b977c87b3b9489493994cb84cc3a75a3a7f08e1352487ee2bf3066b6affdb6b0fee7b1082": "0x54101400000000000080b58eab1328541400000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fa1d591561cfd342a533cdd62ea12cd37b23e8cded630a02a99ce7ea504bc270ef66070d461d4fe3afc541cad1fb879097": "0x54101400000000000080bbcda11a04850b00000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9686b6c6f73a46354748bbb4f040de6619629af213ba412d37d770bf03b12304767f1f20a7774506065036e84983fb0b5": "0x000000000000000000000000010000000000000000007c332aa12b541400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4f4bd3dc22dfac8d71be79f2baa0d504a033695ad0b784653d27741345e8059153e80656970b9a60f31230e5bb3a12780": "0x", - "0xc2261276cc9d1f8598ea4b6a74b15c2f218f26c73add634897550b4003b26bc611fcf3e922de10898cb04273301735e65270ec35ba01254d8bff046a1a58f16d3ae615c235efd6e99a35f233b2d9df2c": "0x0476657374696e67200000e8890423c78a000000000000000001", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da93ffcc772c75a4a58f32cc87a685dd7b7625c94a9d144cd2fdaceeb1e045765f686a72c10f27c6a0dac0421546806ed79": "0x00000000000000000000000001000000000000000080599332a32ccb0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9962a9f76c4d2d5084e20b7b813dfa633d0d0d2465dd64a16fbb5a52ecbfe87e4a414240e33e41dc6474e5cb462da5161": "0x000000000000000000000000010000000000000000003029881a56431000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd41dcffda847e8fab75a973a69e4fc78f811469e86b311cc9e4b08215f4f16468fd36d0fbcf8c557a4e7fb4c088d064b8c": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4d2fb87e31f44d139639588e8cc9fc4c666bef087654682f32f0643d46ea5f79078a3dd3f676d5e908bec4561dca999ca": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4abe07b38b8a82d3b110fc532f5f4de0d6057ea7c64ea28336f1ef3ca8b16ad8ebfa568501701355a09f02aaabe070b18": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd413a897f9c4b4fc25ceacb2ee73bd1d951585c0fc6d0afdb45bd1d133ab9e6b08486a427659b8e44792cb342d77b99d31": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4612917032a0bf90a0552a27fa5d41a432d286624fcf9399b8b508929fdbab4c21fa0e7f42153c57d8705020500cfa1f0": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4f8d55820d01edb13b990b98173320cc20acae1796448a59e5209d79459eac261c6f5e826f467c3c0120ef6906cdc0ec5": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da96e3dd8cc6f283705a94d388861821e692a109e85a5e97fd07d6d26fdd939ddb5f3956404c0e3ff00356832ab309be5e5": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fa2c11dcc175a2ef3ef07f0210bde82800f77c9dafbf4d6e326665db143950fbdb86ac84c93f6281cc337e66318dd33fc7": "0x54101400000000000080e1d2f2dd6e8d0d00000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fa5e4e26a118178e2e4153263663058e281be7c8f6db75cb34c8a9496dc7d3abb7a42ef0ced5a7eabf0d2ee1d3f8dc09d2": "0x54101400000000000080e1d2f2dd6e8d0d00000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef73c7528dff85a7339c3d647527b5affb": "0x6e016ca65cd213156c075da95c132bd1917762de0026ee539c720999aded3216", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d87282431ebc44e32ec2d5f27d0d564aced42548da861e6473107b9fbac66e6cc9bac3e302d37abb25df57d3ef025ec8440aff6f": "0x04000020c65abc8ed70a00000000000000859852192b45000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da930caa735aa9f519b8d7005229883ff41c753745006cd791bca49d7fc03da9c164f510c842289ac0c77d71ea8b7766513": "0x0000000000000000000000000100000000000000000040bd8b5b936b6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0xa686a3043d0adcf2fa655e57bc595a78432bcbeef465f5e3d4a1cab57d5f28dd": "0x02000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da913b47d5a37d3bf28be8be705d0184caf773daf86370e3a6df97744b76aed7b1bd1fa6ed770a765392852947735552757": "0x000000000000000000000000010000000000000000004c31b8d9a7980000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da94bbaad4e13a86f5ef31f4c438179660f897410d586fc7aa556fbad6acfe8f32237a4897a4573475941df6fb8bb3aa225": "0x000000000000000000000000010000000000000000007c332aa12b541400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4304fda1324a8ba8c36b4ae11d1ef2faf21d7fb9660c76f96436407fa440d324041491c9116c329fc7ac705ad98407f30": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9834f1e43f41c370b23bf6b7643a47ea04056bb3bfc486baeb748deecb2bac15dc9ceb2730832270ec54b2137847735ac": "0x00000000000000000000000001000000000000000000a877716b728d0d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9e11f494c0e824f364a61cdf856a2320b70f7da648bfecbd0e7d47f4436e1bd81ba7ff80241a6be54cf7e63c0cad72f11": "0x00000000000000000000000001000000000000000000d4bbb835b9c60600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9e14a03a2e0248283e6b86671029bd7d14839e68deaa2ed5d93835c57b7dfc8f9fbb8ab9e9749c0c258ef3281dd73367e": "0x00000000000000000000000001000000000000000000e41ee69380320c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9e1e81f7c28deb0b22e6cb54a3aa86e37074bea38099aca5c4b3e1265de56d7c9b86e7ca33c4f5db1b944ed9af11bd987": "0x00000000000000000000000001000000000000000080a6e129e944020200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9e44b9f782644fcefc2f2645e5747df37374bb4642f661cb4b2d58cadc5c78123cf9500005fc3eb0093e8ab1d7c6e3e30": "0x0000000000000000000000000100000000000000000010632d5ec76b0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9e584e1ebc21b8a5b8e83e3c060af13fb4294c4ffa38dc95fb9c57fc9f82ded3d02336b78f137c08636b849f9eb9ca60f": "0x0000000000000000000000000100000000000000000072e77c682a8c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9e6253384d547abebff645219992c7f0c31eb496e27e37a93f3c92339689002ef76c34d09ba752dbc53d484acc7ee3b56": "0x0000000000000000000000000100000000000000000062acc5eb78ad0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9efd19c3c75c67f25d5493a1ae0663afefebfead3c2340b0c461c40d8ba45c6dca28e74eb003d5a86b0e43ac8bfcc2c07": "0x00000000000000000000000001000000000000000000a877716b728d0d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da94c778fcd23b412f3ebc41f2414dee64fc09cdbefe84f06ee00b54ccce6359c98ad93a51670a1a194a9f420c052766cd1": "0x00000000000000000000000001000000000000000000f81348d4607e0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd43cdda083f101c55f02ac371e252d616fe721f7351192890298e08d1ea08b0356622b0c5f91c27faf6d6831ad53be79dd": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd46c32f8e12b6e5d74956cd3f59aaf297d88a6e14d7ee3d398a5bbf1cbc23ebb2b060dae7e78ddac02aa91ca4e3bf0de7a": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9225ffa4176a6bd2bf34cd8cf344b56c3e7ad9115cb94aea2f03aee9df47e96bf3abfa6d4b1f97e54a27d93a87eefde9b": "0x0000000000000000000000000100000000000000008088a60c0d096c0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4c5c1c72da1bd7fc39f65ee5b6286ecbc6c848f4c75b46c62f5b6995e93cfcae8ac2cc53d59b5d1074d6b3795ad217c4f": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fa0ab73c969c5df7d03c64b11dbe8aee6fed6c7f8c0113066d68d24d3e0a54b14d98f9265abab08b2c4ee5d74ce4aa313a": "0x541014000000000000800d173aa8b5c60600000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da933d4a500db8237e790d845d8a13dca2d73112b6113b0bd000a27341cf0d99e484be39c93dff0f584af86605001ab8357": "0x0000000000000000000000000100000000000000000010632d5ec76b0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9aec5f147dafffacf1cf6408084953390babc9b78a16496bf61704d42c6c767646abc039af92bb75b021aadc2e28cdc43": "0x00000000000000000000000001000000000000000000986270b34f310100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd498d3f2e89848adfd90c9ef441ae257177fec95369d9c0a35e438ebe713aab1eb51cbdd5ec50b2f412279cf4cf1d15a0e": "0x", - "0x1a736d37504c2e3fb73dad160c55b2914e7b9012096b41c4eb3aaf947f6ea429": "0x0000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da90bb6a83dba2ff107a1b2471919efeb20301828e741f8e3349cb4c8f22681597cdaa0041a0d009356b89a256450004a1c": "0x0000000000000000010000000100000000000000000040b2bac9e0191e0200000000000000000000000000000000000000000000000040b2bac9e0191e0200000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da982f2fec429046ccc7010de5b49629aed3bc59ab2887ec0b1a8fb9d42ea2c1a698d3cb2080f1fa7ca1c01fd375568ebfd": "0x00000000000000000000000001000000000000000000d01309468e150100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da94dcb42d635baa02dfd29656035975a12720f92e817f84fa748cdff1b59ad307624ffcd9a70541cad4e01d09cfca12b74": "0x00000000000000000000000001000000000000000000a877716b728d0d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd49718c4d466ce34f33b81e0d1714873cbebbb9d24ec13d64c31f9942884a1d1bf91882fb28d10e62df333bdd84971fb68": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd49b38bda30d2a1a372eeb98dabc4e60e53ab019edc8ab259ecabdf335147ae58b1327e2fb169b2aa1702a9cc83401bbf7": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4b7a4bfd5916b37c715ac45cdc09c51d03dbc062e3e5d1e4c0d709857023c2c3ce13bfdd722a417195a5287abefedfb0f": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4d729a62463e6d1cdb421213c81944c8e0a4706d85177aba489066405376734f41c30eae6167ed6e6089399ea5e723e43": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4fee0252ed767239bb4fdbfe9e4b6a376902d10b5270d8f24f12ddc95186c5045d7875e8cac7e96e43305bc5c16008bdd": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da971d0162f359de5dcff9b13f6204d8eab5465176eec72af78d3a9469f63f155ac9b1bb93ab804916611e794a362b3c810": "0x0000000000000000000000000100000000000000000040bd8b5b936b6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9a64e153618a57dcb75a3e136d42ea494295de105e3928f31e1121aa1fd451d7b16028f82a4b2bc1f6611ee637c353cfa": "0x0000000000000000000000000100000000000000000040bd8b5b936b6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4ff7a97eb30759ff14219498a8efa5fab5a80d988ec9aaa72a2b1e481dbf2cd430f3532a6acbcaca1feb7ffb9fba8633f": "0x", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d872824305de498ec9e424a6be6b039622a653f3a18bc3e5e23439c89d70907a8cfb196206daf38308d90da0fa35b9466ef38d40": "0x040080d3302802fb020300000000000000290ac62d6d26000000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243225ffa4176a6bd2bf34cd8cf344b56c3e7ad9115cb94aea2f03aee9df47e96bf3abfa6d4b1f97e54a27d93a87eefde9b": "0x04008088a60c0d096c030000000000000056ab97cdd415000000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d872824333d4a500db8237e790d845d8a13dca2d73112b6113b0bd000a27341cf0d99e484be39c93dff0f584af86605001ab8357": "0x04000010632d5ec76b0500000000000000859852192b45000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7a44704b568d21667356a5a050c118746bb1bdbcacd6ac9340000000000000000": "0x4545454545454545454545454545454545454545454545454545454545454545", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9165f813a3c8a066c04403c23e10513804d11c4abd2c3ee4c87d0aa7cd4a133404d619293e6192aaeb12bf6dc7141cd54": "0x0000000000000000000000000100000000000000008004c87a6a3e7d0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243504628318c996c44377e499881fcaa23da0748452893e1b6b2bfff2c916034c0c9fa58c3d01d3ef19d1e2fafe6c3a244": "0x040000b5de033a2c8c0200000000000000958e14a34010000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da96a5dc9ef021a3645b71500d1b9ccd990de28ef5b1691663300a2edb97202791e89bb6985ffdaa4c405d68c826b634b76": "0x00000000000000000000000001000000000000000000b2d3595bf0060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4c94ef00051509e6966616e4fa7c883d2cf4d87628d9776d82e2a608e05ab70a8d81c2e02a5dd2b4fe428a11e997c20a1": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4b3c6b2fa810aa6d5e298e4583aaf90a21516bca37fab03241448825a9d76f0854020c753f7a5db1d188f58b5129a7a28": "0x", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243b3e7734e0f1365819f1c8ade9db4a66a69caa96417cd88dc2aef0ec2690f23574dad09cf6f4a39d87b928c0a4baeba3e": "0x040000f18ae573896635000000000000000ab0354ead54010000000000000000000000000000000000", - "0xc2261276cc9d1f8598ea4b6a74b15c2f218f26c73add634897550b4003b26bc6da841dec8dfd73ab260b5a2dc6c041df9c393c0bf47418e40286f14822cab057b69fc111e6c28809d94cae387eaffe22": "0x0476657374696e67200000ec6a14c6fc67080200000000000001", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd45e6ecb14a3d50fdada0369a44cb32a2b19196c56cf559a190b40040eb13bd73bcdae558a28f2070adf7dcee9bb6aa5ee": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9db243040a685617388a6a7999e87c8cab6040e7bf3d981b810f0b2d605a0acb337dc5bd1cd4e221325265fee7334814d": "0x00000000000000000000000001000000000000000000e41ee69380320c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4a9ee99305234e672d5cdd2bdc179c2e01c62f8ac085fdfbd1935895a994c9761ebba22c2ea6a8e00c4abfb4b5db1dcd6": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9c26cbb8363be38be8512d444d7a39ae42722592ee6853bbb850186b181eda27693c3c972c302be708630af4f5431fd16": "0x000000000000000000000000010000000000000000807f709ace7e610500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0xc2261276cc9d1f8598ea4b6a74b15c2f57c875e4cff74148e4628f264b974c80": "0x00a05a079959867a3020000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4ecfa156125a10adf639d99f63bf8026d9a17c49afaf011186cb25b8d6ba4fdab47fa8303c066a5f83d4f3bd24ebbd0c1": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9d81a23b77c9821dc80a9f44132d84915f90c3c73d1c02340f7cea7a772680542008b3b10fedc2caa02f98d66be623fdd": "0x0000000000000000000000000100000000000000000040bd8b5b936b6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9f4bd3dc22dfac8d71be79f2baa0d504a033695ad0b784653d27741345e8059153e80656970b9a60f31230e5bb3a12780": "0x00000000000000000000000001000000000000000000ea5ddc9a5c630300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd493eaa916ae3910ff4bbfabbe241955c5a960f8a6c8769c4a795a8d6beec0f179a9d9fa113f4de4c7118174f752bf4adb": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4dd7337d2ce0eca168226b2466d093bacb3d9bc87518ccbd1f8d81a45cf9f1645d6de2eae4b74ea66234557d4b55318a8": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da905de498ec9e424a6be6b039622a653f3a18bc3e5e23439c89d70907a8cfb196206daf38308d90da0fa35b9466ef38d40": "0x00000000000000000000000001000000000000000080d3302802fb020300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d87282435d9b4c51def7e60aac14fbd7537ec31d73539b13d84475ecf112fc41585e8b48dc1ac4b871be0ecea1e0f003a02032c8": "0x04000022ff39761e9624000000000000004316e935d1d2010000000000000000000000000000000000", - "0xaebd463ed9925c488c112434d61debc0ba7fb8745735dc3be2a2c61a72c39e78": "0x086a5c355bca369a54c334542fd91cf70822be92f215a1049ceb04f36baba9b87b768538a941d1e4730c31830ab85a54ff34aaaad1f81bdd246db11802a57a5412", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd44c778fcd23b412f3ebc41f2414dee64fc09cdbefe84f06ee00b54ccce6359c98ad93a51670a1a194a9f420c052766cd1": "0x", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243b685d55343600eea9074029b4b5674e65f7222b1a6e28f097ec231b1c303f638fb6fba13e07d9f638049275c02db8bf7": "0x04000088b116afe3b50200000000000000424ca98c9522000000000000000000000000000000000000", - "0xc2261276cc9d1f8598ea4b6a74b15c2f218f26c73add634897550b4003b26bc60bb6a83dba2ff107a1b2471919efeb20301828e741f8e3349cb4c8f22681597cdaa0041a0d009356b89a256450004a1c": "0x0476657374696e6720000040b2bac9e0191e0200000000000001", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0faecfa156125a10adf639d99f63bf8026d9a17c49afaf011186cb25b8d6ba4fdab47fa8303c066a5f83d4f3bd24ebbd0c1": "0x54101400000000000080e1d2f2dd6e8d0d00000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4fb027e73befd88bc7424ec37e48b116234d570b29b50da141d62a96d5ea1dcc9e57a2a66a9fa45147b6a40a2a2b65ee1": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9b0b59d78bf2ee14ad11460e58f9d6f4704e18eb080becf839a2e6a333c803ac4f1dc514b3a65f3ebc91ef805c73b7e53": "0x000000000000000000000000010000000000000000005cbee70f17300100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9eac90b8d599c25a5798d0896ae8e2b4bbe1dbcf4234b70c81a518378e72b67aa7cd06b122ebb7658562472167e8e231c": "0x0000000000000000010000000100000000000000000092d54d06cff0100000000000000000000000000000000000000000000000000092d54d06cff0100000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9eb3f773f29180605363afacee027275dada3b50334815d952c14266ae058cdc8b8b2a2b6139a08e701c8c61b2324ca47": "0x00000000000000000000000001000000000000000000687679f9dd460200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9ec3f2c6941cbbe0539adc221e0b33750339a8671146b0d8239806359ccc92ea29fb583451e7fbfbc9cba2a46381716a5": "0x0000000000000000000000000100000000000000000010632d5ec76b0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9ec87008009878bc16878b6f129db1bcbecf473a6376219ed9fd65db5c492765f385d4e11c2f66049055217b529145ed0": "0x0000000000000000000000000100000000000000000010632d5ec76b0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9ecfa156125a10adf639d99f63bf8026d9a17c49afaf011186cb25b8d6ba4fdab47fa8303c066a5f83d4f3bd24ebbd0c1": "0x00000000000000000000000001000000000000000000a877716b728d0d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9edfc29cbc40a17ab9629de821b6de080b81482d150c6242e6828f8db847c98996d5988bd12e406882bf9f41678262187": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9f4b0a80effe6c90f74f151d4eaf850e8f542cac8a850d6ed16ba4b362880433261fcdfa06afbf07d9567e4693cf635eb": "0x0000000000000000000000000100000000000000000004a8afef2ab10500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9504628318c996c44377e499881fcaa23da0748452893e1b6b2bfff2c916034c0c9fa58c3d01d3ef19d1e2fafe6c3a244": "0x00000000000000000000000001000000000000000000b5de033a2c8c0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9ddf7a37ee322de59bfe2d87a57a3845fba8cc1849118cea7d30bc5a4aeae7f81795ef0a04c62d112a2d24040be1e03e2": "0x0000000000000000000000000100000000000000000040bd8b5b936b6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9efd19c3c75c67f25d5493a1ae0663afefebfead3c2340b0c461c40d8ba45c6dca28e74eb003d5a86b0e43ac8bfcc2c07": "0x00000000000000000000000001000000000000000000a877716b728d0d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9f07995e3074904aca3ee6054624bbf83cc8e9cb3c8765d635c07c0fe2c64cdef0b47ff3e0ba3d50fbd07e24cac984498": "0x000000000000000000000000010000000000000000002cf61a24a2290000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9f21b762906e0cf6d8b1357c4f5460f4e6fbcfd49c851b083a0cc36efe277ccf337b574710da5f0e0cae155fb59c597c4": "0x000000000000000000000000010000000000000000007c332aa12b541400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd40e35115b2d8165fb696037e703d17b8a00f6c8612150bb014990d3428dce630de0bf17864c8c76096f8e65c74bf13f55": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd498596cd1a356f3acf0f1e0d05b460fc17e46bf3da2eb3127575af70c1efc89ba576615735547e4f58211f35b930a2f39": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da90ea384db833802a1abc8db31d48e925abbf6cc6e5258a119f696feeb0c2ea5b854c1dd08024998e8c70afc815c629879": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da92b66c29707383de0ca389a677d48a6bc5c8e0e8ce9b5edf5df15710fc72967075784afe05209c26743be8ccb9f0a7d37": "0x000000000000000000000000010000000000000000806764041cadde0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd45b27a7ce79dad0126f33ce111db6765a7fe3fb95f4358ddd77b82ac4b0086c253af8fd83fa2a947d2746199e3c83c904": "0x", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d87282435006ffa9ba9b88aee8b6d4f90bd0393edecd754290f611047a8d9b57813fae2e8506506ecd44e2584fcd9eb3db552e8f": "0x04000088b116afe3b50200000000000000424ca98c9522000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9ff7a97eb30759ff14219498a8efa5fab5a80d988ec9aaa72a2b1e481dbf2cd430f3532a6acbcaca1feb7ffb9fba8633f": "0x0000000000000000000000000100000000000000000010632d5ec76b0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4857159a75b4006112c66ac2cf10ae0c593fca8a758746b88018006d31259f02e335e0e36701e8dfed462e1495a8355b8": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd496b978b08d78f0e190db41b375c76824c6938a28771912d459c6f8c68e447f5e9dd718a40334840da17edde1105fa18b": "0x", - "0xed25f63942de25ac5253ba64b5eb64d14e7b9012096b41c4eb3aaf947f6ea429": "0x0400", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fae14a03a2e0248283e6b86671029bd7d14839e68deaa2ed5d93835c57b7dfc8f9fbb8ab9e9749c0c258ef3281dd73367e": "0x541014000000000000801d7a67067d320c00000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9fc89509d4b925f462734eaa3a11469cc2e6ac101bf3ecf2f1d0e1cbf86b2775793f38a1c2c833b3a5606ce9302f5c90a": "0x00000000000000000000000001000000000000000000ea5ddc9a5c630300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x0d715f2646c8f85767b5d2764bb2782604a74d81251e398fd8a0a4d55023bb3f": "0xdf070000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da95cd31698798a5f861e64dbf9559ba78acfcce582e8eb2ca36c982404c4a98830a721620488d3d0e4d4253d213eee90f4": "0x00000000000000000000000001000000000000000000e93e11385a260e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9f2f5bead9dd475a3609f9371f8db7a3259df73598485bf578f190b9922cce88fb93fdff3037dfe9a9901edf97ffe565a": "0x00000000000000000000000001000000000000000000d4bbb835b9c60600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9f39d257fe56ca1dc62095392c9a2e9e100a57df6366a2a9f9be8b6dbe429c63f34bd3e3f925a95ca2a02d66083692772": "0x00000000000000000000000001000000000000000000e834fdc605f97900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9f3f2d11c744ef8063b52ab38861bdeb535ed5bbe32a1b92ed6993f2e6d8f1b68b306df13a1195c8d7ef07d5c17f3f7ed": "0x000000000000000000000000010000000000000000000ed1d17880130100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9f4b0a80effe6c90f74f151d4eaf850e8f542cac8a850d6ed16ba4b362880433261fcdfa06afbf07d9567e4693cf635eb": "0x0000000000000000000000000100000000000000000004a8afef2ab10500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9f4bd3dc22dfac8d71be79f2baa0d504a033695ad0b784653d27741345e8059153e80656970b9a60f31230e5bb3a12780": "0x00000000000000000000000001000000000000000000ea5ddc9a5c630300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9f4c757f9064b587c4f7135964bb17588c9105e771ecb129305f8c8ef93fc4fc6f536a4fe135dc3fefa649b7e90df9eb6": "0x0000000000000000000000000100000000000000000010632d5ec76b0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9f4e4963c409ffdfa46e1424b14b02d8ecbc5c313673398ecd20f32a63b94affc3651919ac950b594d2fd42674cc77fd7": "0x00000000000000000000000001000000000000000000485637193cc34300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9f54a9d879aef2f7404b696682dc7a150ad4cac04bf7ffa4e71b0a630ba420a35a38fa6c6e1bf1293c3895f08566ee211": "0x00000000000000000000000001000000000000000000b89d0d6955a00100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9f6e8023bb1b4e9f725970ee15da9958f6e9ab5ca126703ebea216413f66232287b303dbb50795960a8f2ab8f6f32d16c": "0x0000000000000000000000000100000000000000000010632d5ec76b0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9f7cbe917bf94c7d2176f38a588168f2bcb06c14ed9dc021ee964c556fdc00d74a69b82acfc547b18e46fbcec9ff75807": "0x00000000000000000000000001000000000000000000d01309468e150100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9f8640cf9d93fb667704d31d8fd47a2bfdf7e18dafe8773dfd181571d4dc33f79fcd534ed2a07ab0a3e052de842500a8d": "0x0000000000000000000000000100000000000000000040bd8b5b936b6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9f86837afdbeb9ed3d98aa822f46f7f0847f0106057b9c0d509445c72da68161b2811e100eab2b1ac7b40e64a129b39b2": "0x0000000000000000000000000100000000000000000062acc5eb78ad0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9f8cbd8d146c004544e448955afc7defcffdefd1c81b099f4a6882634e2f7deb1e8745b208d550a7537965af1d309ad4b": "0x00000000000000000000000001000000000000000000d01309468e150100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0xcec5070d609dd3497f72bde07fc96ba0726380404683fc89e8233450c8aa1950739a602bb1403f7d61757261807cff6c7a53c4630a0a35f8793a04b663681575bbfa43dbe5848b220bc4bd1963": "0x768538a941d1e4730c31830ab85a54ff34aaaad1f81bdd246db11802a57a5412", - "0xf0c365c3cf59d671eb72da0e7a4113c44e7b9012096b41c4eb3aaf947f6ea429": "0x0000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9d7a96857b80f6d4231fe84363b757190ef8affba4fcafd3ba332616e8567c87eee82129ff3924c8d16a5e0cca7ae3f58": "0x00000000000000000000000001000000000000000000d4bbb835b9c60600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4ec87008009878bc16878b6f129db1bcbecf473a6376219ed9fd65db5c492765f385d4e11c2f66049055217b529145ed0": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9313da24700aa5dc598e9b32cfbdf54f4fab9ed2e3ed9dec315c66e97d422bb19c4d68cc6570ef7e78cf1f9166769af37": "0x0000000000000000000000000100000000000000008075c07908bc240000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da92a67c4eb1ca61688a0cb67bfacaf2c7ca01240d0c36c19ef4701f2d27a77b4d3254f4aad7461fd4bff2ee4180cfa1fc6": "0x00000000000000000000000001000000000000000000111b99ae32900a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9da841dec8dfd73ab260b5a2dc6c041df9c393c0bf47418e40286f14822cab057b69fc111e6c28809d94cae387eaffe22": "0x00000000000000000100000001000000000000000000ec6a14c6fc670802000000000000000000000000000000000000000000000000ec6a14c6fc67080200000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9f8d55820d01edb13b990b98173320cc20acae1796448a59e5209d79459eac261c6f5e826f467c3c0120ef6906cdc0ec5": "0x00000000000000000000000001000000000000000000a917d6b739420800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9f8df09ae2d42f6ba4b1a3549759ee214ffdc7231a4f6136abf667f334580814f60ce7374cb62983fad77eff9de0578f8": "0x0000000000000000000000000100000000000000000040bd8b5b936b6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9fa489d0f39a8d8d61442bafd5f9b4487211199ca46f3b312821a8c43161813ab164c2f00636c550aa3e48c3c8d96a255": "0x0000000000000000000000000100000000000000000040bd8b5b936b6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9fa84a9ec3dd90bb88411a100bdb79fd03396be16ee113c440e2df3f3bf1cea861655a863097614a316a1bf02bfd1daa6": "0x00000000000000000000000001000000000000000080eb621b5653590e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9fa95e8b66412468668d4103cdc255fade5c7928ebceed1c3f1baa79d8ecedc3dc675c755eab881517c0a8366d8da1e04": "0x00000000000000000000000001000000000000000000af4d957992a20a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9fb027e73befd88bc7424ec37e48b116234d570b29b50da141d62a96d5ea1dcc9e57a2a66a9fa45147b6a40a2a2b65ee1": "0x00000000000000000000000001000000000000000000d4bbb835b9c60600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9fbd7a2614a073cbe4d0f9f8af1ead5cefb910a7a1d18d683f8e94f8d77404c14128da16d8773a19acecdbe4c4ac41701": "0x0000000000000000000000000100000000000000000031d6e275bc560000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9fc219f82f0febadc96255c8172fb62ceb8ffec4bf145e4034c3e4b2f8bfab86ae93716769d67ad006eef502e1b60253f": "0x00000000000000000000000001000000000000000000ea5ddc9a5c630300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9fc2538d2d433afad0f1d400d84891a8b41b49e4820e85799d9069a3a9b89a1d9a8114dbe5ce49da53f953f07bdfef1dc": "0x0000000000000000000000000100000000000000008079575a8c31b30100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9dd88ee968529cd4c31ee11c344ed67414b579d1fc9a20bd2b01b620c2c4785e02444e723086d07d776bfb8b3954b6857": "0x000000000000000000000000010000000000000000009814440dab210800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd41159a5f9199c7d512270630c46bd68938c18a444bfe52f834ce9bce580e33f38368b654c815392cd669564799e209ee7": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd452755e98dc4eff129a3c2a6d402800a8fbb942ccb01d679dabd754a67a57e181d035e58e602bb3918a2862fbe3c090f2": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da927b2aa5fd18f1465e4f165d6d1090f7a7645bbaacc77083cf2856ab1d95580f4f328935dadf001b83a9025dc163497aa": "0x0000000000000000000000000100000000000000000040bd8b5b936b6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fadd7337d2ce0eca168226b2466d093bacb3d9bc87518ccbd1f8d81a45cf9f1645d6de2eae4b74ea66234557d4b55318a8": "0x54101400000000000080cb30cf78cbf01000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da958d26834f10d93b6cce482003d6c18d727e06a64a7a273b7e45258cb5f9a710f306cc4113acd580a6334f9fe9b820df6": "0x000000000000000000000000010000000000000000009784c154586f0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd44f6f1e8d430dd01a8ce796642390a904bdc8edb0ecbfa7ff0a9fbb0facfeb722aab6ca21ff1231606c1d565ab8b02021": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da905a6a028e0cf679dbf4df8bbd8e505c761bfb5776a9c0aed565379a95a287d4c7b6dc1566af98687897953289d10dcac": "0x0000000000000000000000000100000000000000000050efe2d6e41a1b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4a0dc912555e16cf811c4193eedbdddadbf086b359213e191366019421d1411d03205b3c298bbadf4827a48d06524b9a3": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4bf4a2abe86f4f6015ac8b79f344d56e4dd1ec4546f256cef48ec4bf7859f7b991cace005c0f0f61a805370f0c4660a7d": "0x", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243b428398afe6b68ef63603ff19b96fc003e836130b0ef225ebc200baf54beb61e8a707c529e7f28ff87f84f421401df65": "0x04000010632d5ec76b0500000000000000859852192b45000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9b6dc3428454e01264c97883a9852c2f988ec1fb086e073465c1a0b880352c9bba49c5de4b0cdb8efa80ba0471f726879": "0x00000000000000000000000001000000000000000000c52ebca2b1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd48116813fb356b126a6fe2fb370f0fa0d5ccd6ec4973bae65c2fd9935e2de08f538d053d4824613fe8810431fc355b2f3": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4fd9240ec95a0ecf279c3e5e0f91326d685508fc406fa865998c608b0b94a992c9939055f4a1b9412137214b2811d9529": "0x", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d87282431a8f6bd5494d74f33f1fbac904e7d349d04140ba9a3c03878d3a751bc6a13b648ed45c50785347e1267fe65bd5345895": "0x040000d4bbb835b9c60600000000000000a63ea7df7556000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da950ca0f8e48c7b76efba51492eba77019d60ef7c5bed47d4b0b3b22adf44769eca987352b057a81d05a9668262d1fac37": "0x00000000000000000000000001000000000000000000b348031ec4db0b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9a2303fda817785785685d9f08f8cab21958326f3e16f0a85901c7d4e0d2e173543034ed0c9e91edc8507befb0e1e5eba": "0x00000000000000000000000001000000000000000000d4bbb835b9c60600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd430caa735aa9f519b8d7005229883ff41c753745006cd791bca49d7fc03da9c164f510c842289ac0c77d71ea8b7766513": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4992ba2f593fba249e966e0a7d81b8c27e912c3d01f14c5a92c13acc55ad7de82fb4f66d329db5ec06788c66052b354a9": "0x", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243b3c6b2fa810aa6d5e298e4583aaf90a21516bca37fab03241448825a9d76f0854020c753f7a5db1d188f58b5129a7a28": "0x040000a0dec5adc935360000000000000067fcbda98fe6000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9193717753455332c0dc4f765f481ea352174ace194300ced867d118d5f4c556dfa5f85d50e3d01b69f4c1dec054615ee": "0x000000000000000000000000010000000000000000007c332aa12b541400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da91d57e46b5371b96df9e72922653c5459c31b8a17c8f2bad666dade9ba56bbd748d080d4b1dedf7d943da4eb289506c9a": "0x0000000000000000000000000100000000000000000040bd8b5b936b6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd421507eeff5a52d6d02cfe57864aa602be74c9728a9f42e3b3a2ef5b122cf2ffb5a37ec2309cfee2b6eaef39c6b77a2aa": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd42a67c4eb1ca61688a0cb67bfacaf2c7ca01240d0c36c19ef4701f2d27a77b4d3254f4aad7461fd4bff2ee4180cfa1fc6": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd461986e3136e9a1ac5436d8e5389aa2d8eb423ba54aa669956b9d86a517fc7af6380d47c0c86a3953262c0ef6865019b6": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd48009fa6a516f17be9340679f592f0f28d907d7e2d47bc78238a247ebe5d6b23219e3c815b37056aa616c7f2cd937c017": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4f4c757f9064b587c4f7135964bb17588c9105e771ecb129305f8c8ef93fc4fc6f536a4fe135dc3fefa649b7e90df9eb6": "0x", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243165f813a3c8a066c04403c23e10513804d11c4abd2c3ee4c87d0aa7cd4a133404d619293e6192aaeb12bf6dc7141cd54": "0x04008004c87a6a3e7d03000000000000000f87992c852c000000000000000000000000000000000000", - "0xed25f63942de25ac5253ba64b5eb64d1ba7fb8745735dc3be2a2c61a72c39e78": "0x086a5c355bca369a54c334542fd91cf70822be92f215a1049ceb04f36baba9b87b768538a941d1e4730c31830ab85a54ff34aaaad1f81bdd246db11802a57a5412", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd48cb96c0c7ea850acc4585a76c5d419f94887dfcbe03cbf03c019cf906a49ebd60e86655eeba88e68bfbd0e030b2eeabe": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4e14a03a2e0248283e6b86671029bd7d14839e68deaa2ed5d93835c57b7dfc8f9fbb8ab9e9749c0c258ef3281dd73367e": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9d1fdb33ffcf86b19e0284e617b6af6b668f2358dc6ba14a9b982e49351fa041c46a840e54cb4d09dbeb08c5b2515204e": "0x000000000000000000000000010000000000000000007c332aa12b541400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4aec5f147dafffacf1cf6408084953390babc9b78a16496bf61704d42c6c767646abc039af92bb75b021aadc2e28cdc43": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da934ec744f9336e61990deb04951d288ffaef07a4f5bfa1afc55e093f60e088449044fd55b96d1118b293d5530467f87b4": "0x00000000000000000000000001000000000000000000c4588bd7f15a0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da98cfdf19ade2c25573b354cea850446e205cdd205b57bf767c1ffa4a02cc1fc96c4b74c1b2bbe00c97c5dc30aac532be4": "0x0000000000000000000000000100000000000000000040763a6b0bde0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd45006ffa9ba9b88aee8b6d4f90bd0393edecd754290f611047a8d9b57813fae2e8506506ecd44e2584fcd9eb3db552e8f": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd458d26834f10d93b6cce482003d6c18d727e06a64a7a273b7e45258cb5f9a710f306cc4113acd580a6334f9fe9b820df6": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da95d9b4c51def7e60aac14fbd7537ec31d73539b13d84475ecf112fc41585e8b48dc1ac4b871be0ecea1e0f003a02032c8": "0x0000000000000000000000000100000000000000000022ff39761e962400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4047a7a8ef7756c3fa6977f657bfd387873dafde4839ffcaf83e1707c3807cc120f94fca94263bdea9524ad99d55fab16": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd44275b779a59d2e0cf8e4fb1e8e908527ee41990a8a58627f3a7db8578d3ee1ab25ff4f0613dc67933bc724517b91a578": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fa10c20c95d184303aaab86de1cbc44398bd5a819811cfeb468a4d8ab7eedc49df52df18395be227d222acec34db493f37": "0x54101400000000000080b58eab1328541400000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243547c71739b61d22ef65d10364ff0a0a2a632d21dc803b56b1c8cd0ed27629883e9cf6deb653ec074f9cc4ea91404e972": "0x04000050c5acd847830300000000000000399e3933d22c000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4fc89509d4b925f462734eaa3a11469cc2e6ac101bf3ecf2f1d0e1cbf86b2775793f38a1c2c833b3a5606ce9302f5c90a": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da94791680a163a9f1a08e32c8acd389deee0569783b0da9892e6e2b293dc37972415aaf9e8ed919afb4df2c2b47a0c3371": "0x0000000000000000000000000100000000000000000069d5df935ed2a300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da913a897f9c4b4fc25ceacb2ee73bd1d951585c0fc6d0afdb45bd1d133ab9e6b08486a427659b8e44792cb342d77b99d31": "0x00000000000000000000000001000000000000000000f84a5a4ea23e0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da92d5f0159a37fc8cc1c1b9677d93f4877d1d1c89c8cde97b88dd4172426b7d51f952fc15a239905ceac876cce979866fd": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9fc89509d4b925f462734eaa3a11469cc2e6ac101bf3ecf2f1d0e1cbf86b2775793f38a1c2c833b3a5606ce9302f5c90a": "0x00000000000000000000000001000000000000000000ea5ddc9a5c630300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9fd9240ec95a0ecf279c3e5e0f91326d685508fc406fa865998c608b0b94a992c9939055f4a1b9412137214b2811d9529": "0x00000000000000000000000001000000000000000000e8890423c78a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9fe166f828ae19545437607972c0b349cab868d84f97ee9f01760bf12182e46c3c7787ac3425e0769f6b58904536c80ba": "0x00000000000000000000000001000000000000000000bd612980aa050500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd45cd31698798a5f861e64dbf9559ba78acfcce582e8eb2ca36c982404c4a98830a721620488d3d0e4d4253d213eee90f4": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4db243040a685617388a6a7999e87c8cab6040e7bf3d981b810f0b2d605a0acb337dc5bd1cd4e221325265fee7334814d": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4fbd7a2614a073cbe4d0f9f8af1ead5cefb910a7a1d18d683f8e94f8d77404c14128da16d8773a19acecdbe4c4ac41701": "0x", - "0xf2794c22e353e9a839f12faab03a911b7f17cdfbfa73331856cca0acddd7842e": "0x00000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9f4e4963c409ffdfa46e1424b14b02d8ecbc5c313673398ecd20f32a63b94affc3651919ac950b594d2fd42674cc77fd7": "0x00000000000000000000000001000000000000000000485637193cc34300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4f3f2d11c744ef8063b52ab38861bdeb535ed5bbe32a1b92ed6993f2e6d8f1b68b306df13a1195c8d7ef07d5c17f3f7ed": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4d2c0f47f68d20e285f0b26f931aba06733da83bd9be0e79c7d71eab84f8223d3d09335d29f46d999d61424d1abb62981": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fad8871f1e90b52b933c336ad74b61094f5e841689213dd3c7d0508914d071f64c132977b23dcf7c07b420a0e046918d4d": "0x54101400000000000080b58eab1328541400000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fafb027e73befd88bc7424ec37e48b116234d570b29b50da141d62a96d5ea1dcc9e57a2a66a9fa45147b6a40a2a2b65ee1": "0x541014000000000000800d173aa8b5c60600000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d872824330caa735aa9f519b8d7005229883ff41c753745006cd791bca49d7fc03da9c164f510c842289ac0c77d71ea8b7766513": "0x04000040bd8b5b936b6c00000000000000cff87b531fcd010000000000000000000000000000000000", - "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243b7a4bfd5916b37c715ac45cdc09c51d03dbc062e3e5d1e4c0d709857023c2c3ce13bfdd722a417195a5287abefedfb0f": "0x04000040bd8b5b936b6c0000000000000036f539fdaeb3020000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd47d0ce3718c7eadaad159d592b40399a161d4e61d5caca8477005a7a2270afe0d46899c97cd11230bd8d91427a573afb9": "0x", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da95764e6062b7c46dd1f124495282693e3559467a481d0b36f1f246f7c7836eac0fd45c45c91437565a4ef90bd11b62d69": "0x0000000000000000000000000100000000000000000060157fd4c72d0f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7a7fd6c28836b9a28522dc924110cf439": "0x01", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9d088f17cdcfe78101b8fd643ef23ff24ec9b89167a547f11a13ef71c9fea326d66b067d3dfd83744c83fda31d7fd4171": "0x00000000000000000000000001000000000000000080ae2e83b0ca8a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da90ab73c969c5df7d03c64b11dbe8aee6fed6c7f8c0113066d68d24d3e0a54b14d98f9265abab08b2c4ee5d74ce4aa313a": "0x00000000000000000000000001000000000000000000d4bbb835b9c60600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9d8871f1e90b52b933c336ad74b61094f5e841689213dd3c7d0508914d071f64c132977b23dcf7c07b420a0e046918d4d": "0x000000000000000000000000010000000000000000007c332aa12b541400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd466af7e91e9a6933cac314bef3c467aa1751513fe96ed4c5a466b2075dea2c3a8ba364e77dfbeffba3236154802f3c0b3": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd4bd3ba1a91a4a6aa714f17f7b51e11805ebf8f70eb6d31f6a3e74af6a06b0e6bb932b88d520a175c73de4dc6aa3177985": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd427464e2a3147e039f782ca46277d39135a74972bffc24b19546f2f4c3cefd4103cc62905d29f402120e0f54c2c2afe0c": "0x", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fa686b6c6f73a46354748bbb4f040de6619629af213ba412d37d770bf03b12304767f1f20a7774506065036e84983fb0b5": "0x54101400000000000080b58eab1328541400000000000000", - "0xaebd463ed9925c488c112434d61debc04e7b9012096b41c4eb3aaf947f6ea429": "0x0400", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9210d42a24de0ae486aa28f8b7c8ed3d165641861b98ffc60f24091b4ec914345f259cd283ec6b621fba1e7af7a89d66a": "0x0000000000000000000000000100000000000000000040bd8b5b936b6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef090b4245314cf3270fb3226865a05fd41d591561cfd342a533cdd62ea12cd37b23e8cded630a02a99ce7ea504bc270ef66070d461d4fe3afc541cad1fb879097": "0x", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9febb1eb13459c4993744d092e155825417b3faa5419c8e9e6a642989fa7212d1d0a8d35e179908171ae38ce0fa467c30": "0x0000000000000000000000000100000000000000000076b7a2396bca0b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9fee0252ed767239bb4fdbfe9e4b6a376902d10b5270d8f24f12ddc95186c5045d7875e8cac7e96e43305bc5c16008bdd": "0x000000000000000000000000010000000000000000804bc2602aacb70000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9ff7a97eb30759ff14219498a8efa5fab5a80d988ec9aaa72a2b1e481dbf2cd430f3532a6acbcaca1feb7ffb9fba8633f": "0x0000000000000000000000000100000000000000000010632d5ec76b0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "0x26aa394eea5630e07c48ae0c9558cef7f9cce9c888469bb1a0dceaa129672ef8": "0xf1a5386b696c742d7370697269746e6574", + "0x2c5de123c468aef7f3ac2ab3a76f87ce4e7b9012096b41c4eb3aaf947f6ea429": "0x0400", + "0x3a2d6c9353500637d8f8e3e0fa0bb1c54e7b9012096b41c4eb3aaf947f6ea429": "0x0400", + "0x3a2d6c9353500637d8f8e3e0fa0bb1c5ba7fb8745735dc3be2a2c61a72c39e78": "0x00", + "0x3a63": "0x", + "0x3a636f6465": "0x52bc537646db8e0528b52ffd00580c9904be8e054911501050ec261d80432f34097ce2ca60650331492cea1ae87ccf906f5e3a6f2936ebe89fc8fc46e6f19fe51ed978bc34614c28914aa19abeb2284a56aada60efbe39fec3917fd8b6646f49b6dc524a99520a5d12fc0fd6105c6dd7c2fffcf9bfcdbfb77dde8ce8afa722b71d741b28420a377e179698c1d7267f18b1e0ab914a046cbe1a8951157d35dac119ebeb085460861a6cd83021b939e28bf6cd9b3f9e28e982c7b3900b5a47f1bbfa01cdf798dfd50aacf8ee77d5439b7f990bdac3e277454410cfabdf9510703c017e574274f9e79cb53055aac6e0f63e6e5ef64c992cd66be917011616aa8056c4df26fc664245ddd8dbb8e74ca808aa54df4e1ff6b6bde329c4deb6793c8dd8db568fa7119319935df36b9e6e842de5e3d995d8e1d6ffb69f3fe254f73ba31404fd5d7d09f32623d44a0e68dc400a1ff4f1a50cd4623fcf4f391382ddb16f77ccf1b0ef57a3f7b0391362ce09f4ddf629ddac89e4aabff4d9d9be1cd81d578dde93dcd427eacf8df4c9a2d67571f572925f16a6fdbad627ebf2e7d4daf8e9d51de69c35213dec0ee32ae624b7b67d6c337a7f39e55e7e256bdba7db3ee932fdfa7c4037386adb67174935f2cb55f976e156f98b1cb03e37a3284469639b498eb7dd5eb62fa7ce87d9760ed65d4f77cf2df7ee9e6f26643db941aef24bdf4ddb7a76d7da3f87dbbecf0704552a954a857adeed92f7cf7b9ec4f107babe3d9555df3ba4adb30a68aba2113ddfafaceadf1518369e5b602ebf5c65d53fa79b41df4dcb139c9afae7bb4b2a741e27a4875c11ceaf2f1cfff375df7cd0db20b61b0a3476feed04ac7356e4ff7cb322ed1f17d4ac12833e163476096875c62f5ebebb4dd0c8b36fc682c6be0f390b5da1a0063c40c3ba7522749b0c1f98844083be4eb703daae5420c517e077f5858ea74b83063dfa139306940c88b1e259d6e389febc5d0563269601292a88826cf560840a7daa0ea54fb527037daa9d943e552d863e5553509fea9a79e8d057e8133ff49f3eed4a057a3cf4240d1451d7d74533d74c1bebebd6f1d0b74ff1abced79f877ea44ff5793bf4ae4f8fc70954c17f5a3f674c960c95ea99c352b46e54aa3702f2d11f1623ece30cbf612972c0f722613792bf4ebba74f45fce6dbe18665dd487e74ce9e44f9f6b81595f0edbb1539e07991b06f1681d437b77b841f8dd90a29309e647fef6df5b9742ab77a828fbe05052838b28e9a49fbaba98f60fcee91c9d576228babcfd76b6412fd7950bfccc9e3789eb43f7f5c45c1b7ef47aef2f7dbd89df6f69c72a642d0ef1ea918674cdad95da83da89f3fe1c83d616f539fa44337e285cdc76dd9e14a4c0e1fb7e8103a8d1b1fe18f3ff8cd1e598f1bbff9cd229002e35bb547d6833a6eadfacd9c3497e73eb543c7faf41cfaf6408e68ddfc062015f9ba822e04b4e7edec74b1d42b9285d1224c139f831e39b469077839e3458bf63aff3d7fcfdf7b5ec0fc7befbde7dbf3aab4e992461731dea7f6f6ae4f157eb7f7f489bf6b58f3ed58033d547f3df2fdd5c8b76fff5ca1fb82b6ab1a8cf85da9fa40c0ef8acb99cf82daa5afc33e59feebd4daf6e5c64ff7a4f15bfe30ce84e40a29cb29674ea45b5c952e9d76e6447be99bc1eea06f26143da8a56ff6e86693aba99f6e6d755a1ef4acadc2b77c33a1e9d4da2a04de72bad9c5551afe726babbb7acbe556b73b1a6688414a06def2badd55286f79952a3cb9ed5f5bd17bf3e64d1f2fddda6a0a0f9d32666dd05bb0de9a5b91f592abfc1657c46fdebc79f335f5511a3d66af3acf93df11e8423c48743da0ed8acbeaebfc5d71d1e2d7b10662d4baa94fbb52f5f1fbd5c8af6fcf3a80ee91def879e3877d62df7dd8a7f675ca943176dad872ce0a69b4e86eff39f4f6970935b79bb3429a5577fbec70dbee7ae3ef8c7db3c7c1cd846677bddf1bff661258f682eeb76f3b7b5da7dbbefeda89f6719b6a9e0065e74d02da4ac5e62bfcf6c93ee73ea06d9faa3d7bd51e32bff0badf7bcfd427e8cfe98bfe608c1cdcf89babed0f48a338db53fddbb74f7d62dfe89eb475d85d3b6742cb6d77750a6d77ed419d008dbdddd4a7b7f16b7d6ad7e9137cdbfe66d0833aa879e379329f7d3e733c4f9eb33f67ce881f72feb8cacf1ed4ce5cd0fdeda9dab7d3ed53657f0ebd084f1b1a7bc5beb73be807d0d85b60277adc7607b93a7f9d37e8e6b500c1618cb7fed56b91197dd8ee12f6fa7cf6a9f23f5fa76f43417bbebe5993edaec25f7fdcec6e3da8e9c3787b9f6991189bd78295760916567d91039ebdbdb316a04af5ec9c39d154cf8ef569bf7d3327ac7af6a0de6dbb5bdf9ee688b4df00a41e770fe8365d1fba06d0d8d7f7a28b44635fdf8bb26f9fea3a73dbddfa7a8a7987ee4a35e6d7a2ab44635fdf8bc70ade618c0c483c491421c3a344890d0aa6889947040d8347f58aa02b0a469122bc1dae39201945a6282285898b49958347ce1d45a0281245298d2147d05e30e48f2260ec0051240c4d071e2e3b4d109963c78bd2131a1c2433d8153c35ec082164882262686f94caeccc40cba1c88a7ef18cc07240931062047606e5420811a532767cc881c124a3b5e832fa8c7663c708213f14e181e908130b8e2015251d0cd963081aa430d90fa5334380c088782b464223a20811f087b682b4060f12f40eaa86c6417140eda03ba07b503da810281e3408340fea86b2a16de80da80f6814b407b406940e5a07d501fd01cd01a5824a41a7a030a06b280fa80da81c1408a4375445fa4308166c03ae01ab6138f80d4ec368d80d6e8369c067980d5e83d5e03478068c069fc166d80c2e8365c0646042604350349619eb8c9d2b8a7c41bb0ce143bb6187095ac3ce101a0e3b2be82d28119a181804dda204c64504fb0063a3b560c70a5217ad87cea2481294cb0e129a0a680c3423da8bae43f3019ea18d115244a90b8d078d05a5303a076d051a123b55d0166071ec94d971a2b4ea1e90bc08419383054e0f8ab820878a9c2a34278a983144080c0a6d8f1d298a8c61715112030b020362e7889d2748aa1d2830237660b0c3821d323b540871438b812546912e768278626840683fec9c71fda0e485902076c690b8683becb4e07aa385d182d821e29901c5c0b983944306449133483a0c09a2d4829c323b4a349a9d25765eb0534491373b49ecb8002b82f4a54446c64326265381e682d218590f180bb4349a1b1a9812178f0e1e42090a1311d617591cd90a3018906e28a9416dc87c782de823c02534345a1110888e4253a33d515a032b83e9a0e7e8353b536843906ae81b94bed8e9817f508ac1103d486a5c7f0c1902a5c14c82ba910531e40d4d81d646112f1a0843fa7873502fa42390ee20d9a1e5408b8394463b43434333434b439381b686a6062908a43c486e484220e141e2833484224b1469420814459828a204e98d213f6864b42632214838340e3b5168426836d8f962270ded08ad0617979d1fe018170b86e4712971e17079b9be5c365c63ae145c2ab86eb8c05c623809b8c6c5c3d5465b33c489216586bc203b236b2343a374464906386a0ca962881643ac284951baa234056907d20a483ce4949173468e19438c1882c41016909620c140e3437ba3f58165817d81695142a364060e1745f028d247113725332f0538566465322c32189098209521b920eb223393799199917d4197a065281345c66874741f9a0f786ce011c393026a05bd024383e1004ba3b1d17aa0e920c78b090913195312f08919c694c11c638a31ab9856cc18cc1c260e330cbcc13a8245044b0a0b0b4b0beb0a2b0b6b086b092b06d6181613d613d60b2c27ac262c32960bac16584758632c232c252c22ac30ac2eac95e58515859504ac015403e1806fc034100da403f600ce017d10bf442f5008300f58045807b423768935442e5105dfc03fe011a01fd0089008b00fc8071c02dc03ea01e5806d200fe00ea00e201b98031807c4015c036f006d00cf401a4036601a500d8806c4026e01b58057c02c1e10a011d007a80288030403bf3c3b1e0fde1aaf8ca7c6e3e2bde08d794ebc219e10508857c7bbc102a36bd06a1a8e7ec382a2d168336d468fd134e8347da6af682cde0f5a8aaea29f682a7a8a86029a016500ad68307d0334d336c0326015cc86dbb00ea614dc8307039e03dac072700eb88ed703b683c76015b018fe02ca04380b168279e021f807eee199e11d0a40005ec1f3c18be285c15c585534c3152b32c0d042932d2c80608a063280d2b202075208f84972c206a212947f9924c5d56f28cb1410449961ca500c51a2507e3058198a128594338452a6c70b51ae84c08a932a55ae3cc0e885a12a55ae3ca000991036cb1015232a58aec46034822941b23cd6ca152a4653b08c0086284657aa64894265869f826504bf930561cbdc6c96120c1145c9126508862b2f0cc110254b09869e58b942254b96a10a9490e1b124a032c3631922c27205032d6cd91d3b643405062a55a66889323482a1114c0086211188608a0b05c8ecd82c442f0cc5f0421d9bc5c8ca1096a118ac50f10c0856a8848027fbc1be40258b152a588c68188a52822a33cc30250a962118aa5019018ae8852b555046321f6c962a54a6180dc11065682804266474ec951058a112a504588646501485ca0c6f64654886124c81e282673dd8a117ac5cb112654a142a33fcd00b56ae48c0c8ca08aebcf0c29390cdb1324499623405862946432ce4647298804a9529548ca858a1b293b559a217ae5401419421a311bc3044c310908c078be5ca03b0e5a12a209862646504218862f4c210162a3058a112250a1121318cc5268d34687e5374572ad573ea11917189b804cfc0166c2126dddd42ddcd4448285e2fce18a3e4f798ce89c38f42e01179006a637cca1c810ce007f0915f1c004d40900338464a428c0da0f1c8114a279d9299690e751f06445eeae3436904f2f9f179ef87c6a65bfa798ff951fe8931521a8f700492432986611c293df28e502aa56531cf39e78c534a6959d4b2a494efc5689162b4482f9351d24881d09cb8478e448e34461a2184d0a2f4c88bf131537e94a6b031522171322fa5f18a71df3bbd8d34c6dd5d1a63cf9e735a5346c628a50ba04c5b4adec992d29632cef924a54c1f901c1fca94c6a6341e39728446ba7129a56c71b3a4255894a3a51297987779997933a634e38c729665598ec6a5127389998f309798994b9432102a8fc42528448e344a69450672e4c8118a4521b4a964c9ac80c89352a6969c4a36f254b28f46205a8c4001c08e1c3942699405a09149788c80019c1240630298d20124a1034040b44a38000a1886513a80398028a34599e52e4fca735e7292a29493cad894ce282dca313e8ecf9a344a1963fcf901c211488e8c14c3b013baee1da19436a594b68c53b6949364599635a58c4c299d734e4a993e03bc5d0318201a2022e1dd9843310cc3b048e9114a298d941fa58f29ef72a4ef51caaf59ca024819a3a434beddb71b29957377595249e394fcde8cefcd49278d4ca234b29451ca2925a5344ac9fc98f67b8f23bfd29c96ec99f322c9975d31962e4929cd24cdac185f3669dc1825a574658c31f2a304e037a94f24511a9f7c8f99797237a33441f20022a5fcf83d2a239551be378452193952c954ca4829472a29f364fa981fa55252cacc8fdf7bfc28b3a4940a80521a9929a517474a25a54f5266ca1c999963a492ca2949d79456cfccb22cc649e98bd2e2496764fa648c92779f94516e7caf658c4ff68b54cec98f5266e6968f298d31524a6394017833c6185ff7f5deebf7b8cd63973063cff74891d2f8de7b2f46006c7c0ff67b9452664aa57c94524a23a5946634f68bf431a57497f258c183c52b2d0a435a86aa44a1618a0c2590b02888e04a952822b042450422b852850802aa54a142f463c4049eae48871dc14c204200d38f0643152a31bc10c5a8ca08a6846008069fcc84030c59148ca66019b23224022c590420640f309425cb10961964b8f242142c435aaebc308425ca942c30bc30140505a253020e30c30b4359804a31bc603405045162c842c50a9510743b21a08265484b1405a09080041c0086a128578c662801961702e0340cc160854a142b54a6c4f04208427085d3816108cb100c58ae443925e0004354b0181140062a4656468085cb0981d10848c8a1612886284656a8609921ca0b59a8c880658a511613b42c44e01ee0ca152c45885e9802822a55ae602140902943588a946088288a110d43560000c46848044470b21865a142c390916c51b072858ad10b53b2589982c5288a11151964b8d2617b001aa8846008cb0c5c0e962943555ee0d160b03234c30c53a20c89600a962b46598cac0c00e0a1212c218882e58ad19417ae54a932c548921309345c218111004e093800cea210c5ca152a59b00c6989a2e400284439c010d1942a208822022b5462c83225862846340cb9162b434f67bb0458aec8302483d46265e8112013a3e1d111bc8efae8284592b2a9d43c3a3a4aa552307574943a4aa5a4943d3a4af5d11ea58e8e8ea69414cba3a314efd151ea49d9a3232825c547477df4a4a4f828d5528e8e524f4a8a53472de5885347474fca11b3943d3a6a29293e6229295e29bb528ef8e8a8a56c2a6549497194b2a9944c41297bc4296e29294ea5524fcaa6584a8a532ca509dc81779765c8326503d3b7cbf42d29d49cdb17bad904b8e9bd456edb2a0a542d3cc7e666f966135894e541dd25a55a8d1103c64b0d5c54a82f29d43e1ff6b755c9cd67aee7e1d6230fbd3be8410d9f9bd8315f974dcc5921cd985d9141e22bb379e8bc9a66b433ace6213fd61dc75db443add978a1d565133936ad7a1d6ba0db53d70d2f807f1dd25ec656890905cda76e40fb7ca25722ffeac4ae5dd25e4d6f6db03bd841bf36d2a67507bd3326fdd0f701edac0ff4240fbd9680e4a157930048880fa87b3ed131af937ad51efaee69b7ab25d4123e72f780a03c9fe813e3eaa45cd5be76cf0772d5f4b5fb0805fa9c555b9f6a7ac8d59d67afa6af9b39f1af440fbbd49cce22616d3bf66bc3b6639fdbdc8edddae06ec73a0f356c3281df5c9361ce05c8905d80d25d7429e9a0d121b74be82ee97fbcbb64d9f23a3b13624846eab44ff4ce8498d372d0ea641db43a3f36609f4f356d26d4b5072e92e674ba8b42daaa2e9b67e77e53d06dba850403e70919ec22d9ee96ca0f0e3f3fdb5384678d261d76fbfaf31addf2960ebd5631516b9bdbded01ed4739bdf3e2d2dfccc7132985e7244d0e32683e9899e63dd31b7dd750a28e4a26d9f8ac20839a2f8a20c982bae40f5261f6742edf405f5e3755ab95a05fb082726e565595bd02bb25e7a505f5b3d92cd61be1af54f7fcf37b3261994b1ce9c300e7cc27b2e37cb5b3a8779eee2839ac68dc1f009edd656f9e5e3de86039fd01e65dcb0ee9a40432689a7bdaf3727566f1ca6bb965c911561773b9b7b5f097a9f7a63cebb9367e83609476edc11461b6bdac0f106095b34d967a79910fbcb84f8f16b7ffdf675f114677b2890a652a9b8a0d63b136aee6963db2708db0732179af61c7ad51efa5776c85be0fcaee4506d4fd59640e82a95aa0654d0faeb4363af49268a7d3e2056a9542a3028fef9f5ae81202a8d2bbabca1c41b37e4d00565e4dbb50734830e2a70430f1bf678011d289eeff9fe9b35e71fd4dbc331a0db2748997991f4d1b7b3c5f176f104f09f05e547e73d2146e72ddffefe65cfa3259d4a69595cd17b19390ea624371874fa86418333df45ef8d1f4e5ab58be461ecbd3981961bcdc762a4fd2e92dd1398ab10ebcd4957a14b7f590b5b6084ce991314c4ec09fcb761d060f5cf53ffb226a9873efbf49c9d5afeb8da6f61dd6f399dd8cb9cc0d7fc4ad33763f27e7245ef2de8ec9bb510fd6dc642e420375316bf14e03ca07d3ecf776ed306ad49dceda42f3b3bdcf2701f3e9f3113b23836ea97327ae4b4f443aeb5c6e2bdc791df7bef99de6b5343eff758724c81c95842968c1c3932e46dbe4e37e0e80755868cf4b719bd172203c651923bfa4195891c0ffc07fd39e4234ec1e61a7017ad6ad2bb9d1af5b3336187cf0ee1331ccccc4374e1c7c68af0b8a145df7fbe598c1c19e89b9101e328c81da5802ac3909f099eb7d3eecce993d1a53f67b96dc46026f46226c4de597c99d054811fb31ada649f5ff0c4ef22616ed779635e240d17497b11267c60428767c744a0edea8826be62df4cdcf0edd8c25df2bc3dee92fd76f9bb62a2cb9bbad3b8083fa6efae4f262f747cbb11537755e75ba74f31ac6b1cce57ec0708ca8246e3efea082d160508b72a1a117413beb2b7a7643c7ae8f5626179f0d2778b2e37b859f5e8e5b45253b841454eb56b88815eaf37e1296fb60113fe1d71aa5fa361012b00dd062a799d99578de455877a35fdfaafd79edfdad5147e534fda329f5bea29a59467fae599539ce5053497af5892147e51eba55db2bffea3443a95d0a153e894a618bbae6b2bda42bde83d75ca18ddf6a94f229e279647b7a807b585633db1702cead3e945f2fd8bc431997ef9c5e6a193fccc43bf9c3e8c28fa85f9dcf82f1289c41145afd0b3a45ac8927acc89a4c3ac0588719707bdbfa6c436c3b8bae531975b697b6dc32e0a8cf252721b765190cea8a0876d5462727b5eda1635b72717479439f4cc3713e241a365fe2475c9d5cc29c743ddf2e8d0338e87724fa64b9f546e24b788e6b49e4c6b5e5c954e9dd2ad62ce73f93e75b9f15c1c93e8d429b7cfc3eaa153a78d499253aef257e998d3879136cc2b3fe69109f5cb377342a93fbfb8227e7351ae92a807bdb8f14be6b79af04387d7c35a40d771d6610379b9dc4b994719eb55c49ed3ca11984d2dd29c59132b5f74e4042be13309a4c65c5993d4982f92f224a718b66c54315b01bbb6455d527294661148f180652dfcac9b27396d2ccb5a088a40ea499e654fbae2ec2ec7523d12f3d2e9eb52a91e8d79e9a48d1dcb5a6827cd6d5134c3e6b628993969975c3d7a1dc6bc746d6eaea2f4c2366bf254d8ac85f6e704fa7bd2ebf316206745ef899e47e78c49eaa325b95d24f5393f222e417c928b0e605e049c3c131e5a4ff29372bda35b1b8fe5fbef593ee5c6634de727e5f6fef193d7254beb7b84e7edad746aed630b96d6839a7f376b93db2e120a68cde523a7756782c5af07bc3d146edc47dfee8de49dad9002e3f5c6a476ea24e7793911e6d42969abd43bcb32a774b1975512892bc2c9c9f17ed06a5e182d59c2f1b88f23a510b39ce4d1a9b6f168be5f53af3969c3f2f345fc5a8cfa352f6d3c1a658cb4ad11beb4f5bf276dbbc797b6f7f461a50d3eb596fb414b1ee14bef714a4ee13284b084b36b70b66e92c3c1ee9e6fb3bbe7a54d3a11c9a957a790fa664dd829a51ed414662a04912289442239e5afd822793e79b919969aa38006555c3ef3e7f4da2afccb5f86e3effde5198e974a971bc92fd5fecbb30d4bc98de4e3f8664fa2e094b6cb2963d9766d95fff2cd56b87cbbd6972d4eeb8efbc89970d81a027d384e6493e7d283daf2769efe2c9f42bb99ac6dab520bbf65b99c3e397fb9591cd1f4183da8df7b9694fede7bef156df9666f6f2c5a3b77dc28cec6d31bcff39e96b3cfcdb27c6eed6f5bb72c7f734edfccc90c4ea4fc7bdcee91e9413d5d4a277a6e399ddb7c8ec508fbe746f29fbf19ba05293fe7e4768f3c6e7ad0a30f7b3d37764b7271abedec2f6bc2df84ff416ed3ba5b4f49b6ba30e140a770dbe7ac9d72e6296617e8f49afae62d73777de79667eeade87d50539c14e4ad6e51a9545c1e3257b7585691f5e6cd1b3f9edb8bde335704b9faa2ef568dfa492e9d6ad1be0a5471f9da5e64f9c1e5cd6b9944d09fef562f976ef972bd61ed5aac6f2f9a5e6ae0f258b4589f25f5fc7693dedbbeb5d575e9cb19f593b822f6e3e1b519f543e7789cf0ea9f7726f45c6eeb416f6e955dfadbb4f4c33dd22ebb4adf23ed9b318940d19687bef5f95a5c4dbdc55b7e7a6f15beeede763a6749fd7a7bd1fbe7b2e839810f39a2e7f09f733b9578a1081406ad331cccbc14cabe3d558341635fcff8b15dc2de8ef5695908949de248ccf7794d3169cb9890fc51de7d6fdba7cddbebec8be4e7d7a593b94ddfac09fbf4a03619e96e332697f3c67433a17d395a7724bf9cd6d4f366ea6efddae046e7a6859f372dfc2492cf6d1fd2d7fc5ea9e83d0f93f7975f9c2f9275feb99138a2b90fb3a2c9c2f48bc3890edd9465d19e37d3b9d5e91789aba9276d2644a25cddf214beae1160bf3ce8156df9e7d7fb773dbf362c9af6cfda90bcdce656796e353abbb5f13057c42f0bf09b09b15b6ca9415bcc43efad8a4664b9095f2d8ec374b71fa64ffbd0877609969f27b39eda399c7d978b9c171b90a0a28309826287ce61faa4e38656ab3c87e90efa8f1c50bc44670feaaa550ef3d0ebcaf1d0b7ac6bcf2785da3d8cc8a2055948c146a542455f146f2af8c40e4ad4908417282f362041b1830982f26243a3a48369008a3d6e601a80da52c605f62d509e0f743ef3d0a36f29e382f4c86d097a3ed025b7a58c0bd199dbe2cf077ae47ef6f9d4f975572bf6ba6776082938838c1d3678810edaf087ce93465b54ea8734bc38e28830d4502104d4a2d6eb8f0bae52a1384c9f4c781673d4297e700cdd5d527f523827127409e1d13fc983879cacf3827e71562657a757494de1e62537bd3eae6e79e8ecd3df06d7e0e12747264aaf475faba48cf86985015e562fbd42aed2f0cfcaae21e6a557133c9c9c956df39283d2c41727c02106c4418b37f2bbc26188a78dc98dcc96f5a39411288bdf3c19959038a6e8e203157426a3224107267c1883450063a230a3329a61db3c19d5097088a1d2c2002f2b1a54bb8618d47a35c14bdf5dc0ee0975576068f046fc646ad836288b536d1bd4725bd68fac1c81440db8f8a152a122a7f2a252a1d6eb167f5c9d81422c6eeb707bded9054e80238c37a8f5cd2e90a383385cf04797376f50ab82cebf4ef511a7f888531d2518f441b84567b6668cfe7c6e5a8cb299785974fe5d8199e24ddd45fa30862e233fec66037d7dee92e8eb343e7ed3dfe54ffa93fefc923ea5f467f97bef3d8fd269635d26a8dba5b3741ee8fcfd3c300ae9d192901fce7643373adc25d2d7e32ee15fa7724bd25d54e27fba8bbed9be1cacbb57270cd31f10c9a3770f887a74237d82dd4d8fae6497f822991e9d6e5afb4c276db37da6cf07646a9fe9d14d7dba3c0e5981f1f235c9471f22a7bf31fcc6a73f4f819b37d2dde46c3a8fe5effb79def25d8121f3bb02c3c49bba9b2e8be05fdc7637ad2d2e92f5cde022590f6ab9f11f752af6b382ae0a5a8cfd0c40f789e33447b4decedb5b67a710e38cc9fa7af386405b97be9433265b3b95db7e6c417abbb511496fa71183bb497f190bbb849b90dea5af4bae32c9839a92b64ac236abd499443722cbd73b6362b9c582b5190b972f57e7d3e0a5062eaac742f22ca92771242faa2430c211de7c963dd3840f383cf52ca9a7dc7647e2eafaa49c3db1b0983521bd9432c608217cef7537f3c78c09bfe56f3a69db8f74b1ce9890b8ca4ff2f5983121fd2e924af2e9418fc4f3c4f2f575abd2c0114d2fdaf2f539996f7995ce4d71f873b0df1518231e2e9218b7be38d241d7031af46afae83f7daa53499fe2cf478f9e24ba498f8f6ea4811a1553f878e4a36b7d6a8fcfe37a648fbe3d9123dad511dde55d6e8681eed371284ad0a35b33fa5bd2ebaa79cb954c2d863e599e429facb73c037dda550acebce51d682088b256cd92f156a664bb8b1ed446fab46e39ddcd6ac340786beb37d9f196d36dde57b22c9f7d62b71ceb53bbe5db637144ebe63501bb3e7d51d3ecd564646d58f3ed9017de3131287697f0bb039eeff3b7cfb5a7f34da891a6d1cda891c6be3bcfe1f6362abbb2c1876f3fa2f5e959dfeecfb1afdaebfcdbb0ee300aa4b48083072df2f8a1076d72402dccc1ba5b0968b583aec48634befd4803750adfdef4fb711973d8efca862e1e72a6ee7857cf06ba1fd07a629a00e85e406ba7b488bf7b40d304f3e8bd65e16fef4c85fd8b238a5bed8fce1b165e24d18de617ed9ba7de1913cc494e198b1bc93753619f722330bd91e9a357fed81b3fb6914073ba3468ed985f4e69a49b3521f9e5bc5d5b6ffc829ab77af9f3ce9e40c77c332797631ed44d2ca7ce1bf56bc3fc654fa64f676e17097b50635b6dee72bad57ef6a047da8af8cdaf5fdbfedcb4cc2f7a7fa87edddaaa11a724771b301fc7f8778410ef1f9d6e146d572ce8e3718a788b4e376bd2ec90abbb48eaae5ab082410f6efb71aba987fe369e27710c22f69a25f5cd69d9790e8bf6cd9b37d13b6bc19fb447aea678dba770d3b243069312e016c7f8b719f59312fec9db88baf23f8f9133a2bfddd55d1db17aa3fe17d6b64f834aa5e2f2942eff3ea02d5ef68f3728ccbb7c49a1c05828cbad3e11c9e9262f6d15ca974c6d6a224e192be25611ab8855c42a6215f1dabd657af3449c5eefdb2d87db7bcbeacc2b6796c5d5cb69bdbce441efdaa03cddeacf5b6f3e839a174dc86921926dbb482e6bd39c3327f38ba66721badce44497b736b5cb2fd72eae08f278101e1c1cd7096a9ead6a8f63f2fd215e6433b9a6fa5d2444b86ae2da350fead2a6f990ad4279edf2223c6bb4cb35aff3b57ab9e697674e2eb7bc37eb5bb82c7fd6b6df9753a73b7dfbc4ecb34f38cecd64fa736af99c9a663255efdeaa5d160b7a51e695068bd342e44b5e61734599570b7398b9e5b0318b2b2a71646e10e2421c1302c4b19df620fee54b4e6baee399d39d4d67333d9fe741b62f4072386dab509efa6642d786b31149cfe0c6e38656727ef33573cb632604a15bdb7cce2caef771d642e6cdd51257e753cf3832986f86d18dc7c9c317d222829a7a2bd61bbd6f4ffd664dda8b785ade6e712c68e127713c4ee64faf62bd96f7d7a4028aaff3a730f331ba293a6dcc92928b4732058f386545206e5018ad79fd3a83a1b15b5e4994c212cc1e0b4a788b2b2a6197c4d7ac2266f316257184145a125bcba2d07bf6e931795f9f5f7e654fa2bfcd58b028579f4bcbd9e973924f2f9eb4114ddfbf36a2c9f13c811efd5f1307bcc51539e0336c77c932ec074b59fab548edfa01d696bf4ca861568145598fc3266f514da7e7d121a0429ff6a3bfe8262342984c1fa38948cef5ecbcbc195369929c1113175ad0030a3ad347fbec07d140d5dd996ee88674cb29ce56ead169dc68dceafbe3a377ea319f713acc9ec827ef0fd5d7232e1fdf3c3d7a8cabec24eaed3063d25fd92fcad5d47bf3e6835e50ebf02422cb399e27d1a547971cfc57fb71d85324ee1d28dda06e7f735abe2f3d6e5d2cdf9242596e599ce5bc4dcedaa4f497b50063f4a07e1e79835b6dae72ce471c5b06f027fb80333da881f4740f61f46ae4e1ce4393d7eca17b5c1d870e774910875c85f2ecfb478e747d227abed28ba0571a867045fbe6c950a7bc0d192244723d2c86c639debe59d7dd3a33271fc71541af433c7309852b82fedc87cce7a068de9a9bb8d67c67358f5c1df240bc1f8641a3671a364c02fc6f8667ae4697ce9990f4c855f979a222e89531df7f9e6d5d32df9242658e6d26c88aa0d71daecedf11cab22ce3be90d8e510ae4808470673c87977eb3bdbbece4626f32099bfad4279c9f5500e0c1114c6dd80f997ebc230bfbe60977fc19cfa1752e65f28c967784019f7f37cda49735e9a8671f5c70d03f1cd9af0478c9b7de341a359fed3dd7ae48c89e54a361c871e2bb0a83939a3f669cfd9b40d4b7c6e86eea8d0ea74f3ed13e38cf885a037f4fde873de90f9172cc3a6674ef22f17e9bab4077403f52f244a2279e6eba6077443c9bfd052e614cbb032d133c73c73eaeb3e8598af3db5fbf59f9a640a30d9866df3f940a74a1e3a69dbe7736ddb6e74b8ede660d1615b9ce476853466fac4131d7adc87671eface5fd5c7cd20b7421a33dd918eac947c41c8a03cedfbd5bfa1b8e556959f27714445cf6bbb96f764a2ef6f17e85b5228e8713301f4a2e7757275fef4866203a32ebf28b02808b72e5db61cbd01230778f0618423bc4141ff924241ee8bf48bdbf5a9ed9607bd59a1bc75c4a82efb060586080a7a6f4564207703f408b91b4ca82fd02377c3447d99cf67fd8bb63eec5f20b785d40224ae18e2073066300675b46a9a38c217346dd2fc5106b5cf673dfa975dc81e39edf9ac7fd9859ce9f9ac3f17daa397ea08c750b850889b7b25cf3fdd71d61c77a141377519747b6a14f3cf294f1aeef5c74b9952e635c9bf9ac23fefe913c95ff7efc8bf5d0259f0d28639ce93474635c2ed5fa6c5fcf9aae96b835fdac8689e6d64c0384a5b7dabfe691f39b855cc4c9fac26fe258790462c63a1c461534b11ce47bf4a0eb7336be8787aa8c208b184145d9841c3a60ed847f4d2276df35226731b1c55c6f26786c2ec49748babdc63382468cf5652f4f19963d99347065775ba7b9e7138dbbe956961b4fa563f1d6642589aacf426fc96e36cfda56df7848a393b674fda33dfec090a1ef3a036d3a7cc9f675cedc7bcb32791c3b8aa85bf4a41c7b7939cc00e6aca15f147276dcf4c5c5e8eb164390adee2b877a61f9aeee2bf338be479185a7dab33dc7dda2826eb290338e69fd3cd848438edfebda76dbb44f316d236a6c122794eb90f3fda8fee5e1f6fc567deea91f1ccbc336f8de9cc10afafcd3f67666e93772644c43b1332c204486cb29f6346f5d27bd330c30c372f35af448278cdb99e046fef39d2a722ce679ecff3664cc73913125282698886f33cbbe479bcf6e96dc7e3ecbb40d6faf038e4f1c8591b13fba2ed1761e25fc449186742459cc7858c78506b5bd5dc1dc85681789055146c5e7a132122ddd398411d1fc439a741b00b0bb2f1fbc64f37132ac1371372a7cbcbafc4795007f58e90b7e28036f71200c0a49f732ac45d482654820bc984dc85701a49f3e99484203b6cdad051871baa8305f1adf2f738dd4c6800be9990094e87f45b3d32ba7bded95b75f79cb5d02a14d3c713037d106297f4d127f7e7cf8f3e95e000f03a4df00abd0ce0f52100af30cc3f7f67e6d4349369fdeb3361fddedcafe45e6483444c702299d0009c482664821371ef37c2a3057e7b11ce3797719af778674c7a9cc7dba7d5e33cced3f3bcf489f3e70fcc03da1c73233c7d2ae2cf794d9f88f87366d32793bf21fedc84ed49d1ddf3016ccf8aee9e0b607b5aec903226eeed413677da5b009c06c079886b814f8488890811225e726b8824620a00c7f3c49d8813712ea87b0703e241b2263c45fc3dae05ba979ca7883f00ae057e11bb79ce8b709ee39c048f590bd29dd3c2dfc3d576cd61d64210e7382dfc01e06afb8e073d20991090205913201c91e6d38976dc883f88d321d836dd079b3796dab9ed09d1ddf36d7b46b4cf73dfde12dd3d2f617b4d74f71c00db83a2bb67c4675e7fd074f79c848dd574f73cc8c66bba7bbeb3319bee9e1bd9b84d77cf7936a6a3bbe74536aea3bbe7443676d3dd73d3c67a74f77cc8c67de46c953fc767c66762a029e9eeb98e0bd99274f762c6671e90f67c9ecf1dae4e2dc8d3381deee77292730d764911bb6957d3590bf289f4337d2af97346d32735bb649fc822fe205af883701588e3b816fded9a3ee801d9f673b67d6dc3e1e6b695fdf8e7d8564dcfe956598f7f4eba8cb8487270569c67380600afc81814fe7c09b45dc1408f8fee2fb14a24e7bb9d17a85da87f9e5a989509457fefc2ae4ce87994d6e3b8f574075de6406fffe10d2e17b326fe1113e2d8dc1c6c8e64d06dcea9b2ddaf390a23d2c5a4ebbae2c4fa62590784105a3346eb823e3738735678104aab3f638361dd41cb2f9f535adcc54d3803528e0bdd69dd45225dd88b77c81c18e2bcae1906e4865b167e181d6ebb3933743bec973981ce357caf6b3f6caef2f25be6f72257b77cf40eead80f3eee7ecd56a8f0e088dddd31c678c11963bc366d9333be076514269369af9ca0eea45bce1e7dce183bca59fbff6818e1ee6ebf07f76dcfa0354db33c03d3b7fd49d9999094990afb1d376de76ada933f4040ce9cae3badc2bfaef8e48f28e38330423820945b117f96d4cbf9dcdaa09503a53b9fdeefba7a5b38bb7bf207333333473e64ec27a5cce90049d6391d42292fb72c990959167c9913cbb230f9fa8010426b658e9188c18f515a3e8dfaad18a315a30525432865bcb80aaf2b4a4bc21865e4a017d22d2b2785ee9ce1b3fa619fe0eeeeeec229188a85f4f20aa36f2ae6c4d01df576524f6f37b14bd7fa24bd5d87ce4c4872d6a635d6dd7b1eb3d91dcc9c482791a0dc16f66c660c325c082dae42cbe2f6c90723dcdd65c22fd380020a531b32a89473fac61c29dd35d9c7ba83d9ec0ea63efa2e672d489f5bbe1af5cbe8d6b68ba439ac3bde1cf649721036d07c3ecfe3b35bf1bb2ae387f6bb2a83e6cb2cf1bb82419837fdaecab479dad8ec2e6e79cbe156e1c3c955383da853126eb3bbe89d829cb3ddc1ed8e2dc9110cda504e1256d280e860bc35592f3d785377bbcb4ef8e1041eccdc4f881110c2288750615996352f2167508c4422912846ca4109cbb22c2be1481fe4609aa669394080fcae5e80870e16244890203a3b252e4330214284081962823c14c188102142a4084fce0a48c08c64422bc59bba5b2359117c23995011bff92b6bb29190510060bced3663d076f582305ff9da25fb73975cbfab27967853772560fc4499372d255dd39211bee6c5bc777ca0ac3d1f662092fcc208ab985e3a046aaf477e2da0edca05623ee777c5c412bf59103d7db22e673f522f6ef6748743a687c955f9f9ebbaae796949c010a68c287c90428c2fccf4b071b3447070010f658ae8e38e23d8204500bc78c3bdbb6e7a6dd2d31d5bae3d2012e7cf879d9dbfeaac542a950a50d5c85fa8daf397ef034a59b1470c983893c311685e80ba7cf689fbcbb5317fb90ba0f86b729e026d2dcea4a301a179f736df7ada87fdb5d112f0bb7222062fe477e5c4125ffdd9b78739a21feb88530cad257697c4aff039dd252f8b4df6f9f1632e001546a896b8c20e3ef2d81ffc200c162811c4183edc00aae8f6d0e75be3efc77f5b93fd17792ce78f1b937e8e45fcec6fe361c2fdfc9bb9a049ee6d16399d1823a7d39d962448491a4a92ac9a24df5e957c7b126d815e9a19c0e186aa0c0fd440b59b1628e5c39938ccf4804515316803d5ee0b942ae20822fc81c6861a9c3802d5de2d50057060038a3071dc20064558369c820fa2b14b2433f75388f186693a268a79ed7932d03723db3d276da6ed9e5f9bce76db3db7366cbbe7729bdb3d8f1bdcee396fbbdd730ab14c880c74ce9ab811938e86fdc367ae68cb3373eff17b1cf4df55136d5e9b8f0762bedd7af9e6cb4c2849771d04811c2d0803612b13d23a09fdf5b815a3139b9950467a2e8ba4b1ebfa092c121266c2cabfbd2a4043817aed995ebb20d3cff3599f05d204b00b20f9ba09bbe4c27c73341d1d5741051e20418262546157105021084fe4e169300da64f61fa0484cb71b9a98c5a08076855c0f1765aca807075cb0371254aba6b93572543bcfe08f1daed78f57f3a5e4d40509e4f7bd58a9c8878c5760909fe3cee1223fe5cf20278fc71b54a0afffca7bbf6205b851fc4e9db9480d19ed79f26499490b0b19745d26e64e32f8ba49d67631bf884f6221b83e9ae9dc806e5016d772fddc4d56e0857ddf4d28570d5247d87ab9a741d0e16a1d36697f4b7eb74a186cd0239208b24ce44518429c2c002d5ce742c1003544270038a3244680107aa3da84fd1db21d0a7201ef4826c25971b90cda83ffe3ca0a9a44f5eb4fdced9b46dbbc361d522693f73064a06bed0784c77d9b6dd65501609115a65d583a8b9b199ee56ddfd605ff90c337771c31c56a4914345c40fd68f29ba6843f5c40e67b4d820000105163c34d1e60e16ac192868a0f2e30936545f5ce8aeb3e8726b3018dce076120b13f8455b3eba13f8912303c6f7296352b297ee9a55ddb567000aab184d9b3ed55df1196696bcab201bf2e063083745f811c61ea915f430032e3d509d1923850b3cec51c71149e44089223480073884d0c4103710421864680f8855cfa71d7a1d22bd6a756aaa215ff9ccb7d3f9ac7a408b427de520be9d84c98d5f884c772644c672baed22914eda784f907e6d6f91489f1b5c24d259f580e2fa486f2341ec88f9ce5e7a6530df1627a5ec6633ddb53f8e57dc938156f7cceadb5de85365150c7daa3f50fac46bbe7dccb743aecea6e35b8aaf3fdfed3f7d522d504acc1d3cc0c00932aab88307a87606b340981d5cf081c71044584208a87616b3402916ece007618421e3c51f6aa0da5988051a3a428934668879820660a0dadfc6635acc6f0052428e38159f911bd0eda9adfae90e522232473fa832d279868f461fb95ae5e789b4bc2763826f8001f376c0bda10293a60f3069f4f062e4779546cd937e5769d678d70aac69599665a549e32dcba2234d1769acf8aaf91050aaba5b9ab3421a30dd6d1a1f1e42df6b913cfa587858205d24cfaf3de17d740ae5a6a51f3e79d7762ff6e357922eb9a2f7909b8be4794df138890f3d3ee4d6ca59c10d2de2d789fdeb79697ee4f8f96943471a2f6886f0c1cfc7187980a68b1b6fd87023083becc00d1cf8b00337cef061074d871b4eb861840ef8bd863a88238ec8c60d206cc8811b626c70038c1b5fbae4c00d2e5e72d0c61f5d7280039cdf551b78bcf5bb6a838e36d4fca6f97eced33acd40d3a31f51328d5c5e7f80485e53789ff6699f175fea35dbf10be9b6a97b4d499f607724059377f227c974095f2614fdf171795f1bec1968f0777526086e7a40ddebee33767c774fb7dd038217e7dd1931fd24e91377bb76a68e6fd7899b91e7f33893a93b22e7f8f762166ba8710d7165e5c7134518228f26dca459030e4b33693a9a86ada00c1728b11a021958fc81041a36d8e0423bf3557398c69a9635c5d84133599675068bb7c2a02ccbb22cabd3d04abfab334dfc1ad8efea8c111f7f576782f082ce3e35fb7233a79a198d8b9260f5c64d1a5d7c0143091474638d56e3dae172ef71ba46974baae1c7c31a1e5e735a329aa676068887ae633aa362c30d1ab492819ceaa8cc7a19a22a55d69bb3f2ec4c4c61984c3f62fcfcacba90c00614602cc12b29c108627deb24e1ab46820b0938bae4218413392083c41867d8a8818d1cc0b86640042f4878a4b1c757fff9e34733a9317b70c531e7cc7648f1c04597386ad00311ce50011b6b8cb1c619304a6b44b1861760acd179cf1c4ea4a145afa1461d6a706935e60f736ef1c31050f441841f72d4809a6bac11c41a443418bd86ceef2a8d36d230c30937dfde6468550b300f48a2609f8f74c9a14052280f68d59c313da0c7f15ce0497f8b5a54f509306a4b990bf01d57a0a1424587bee548faf308b923c96d27a07217cf8e82a3c7a9de1a20f8a04249975acc07f4a04b8e67028ce2b9c07c3e0dbbb976f31b802398e27e44a0fbbb448be7e8ed17781c0aa2376cb72caeb9e83c5076d5ad9a3db36eb68f65b3743cc7527401e8d12ff03c3a94e89b5d80e7021105d023c7233d7a0ab5281e28a8cd8aa04c4eccb35360d979a034f1ec5b5228299efd08b5990b3c928322c4b3c731cf9e65600b645573f3f9b007f551a7f8083e28866e7ff1c5175fa0a1c60d68949182127e57689041c388339a40238c999599efede9325ab5fcf2f61e19bdbb5fa0917c9fe4ec16c9722248632674c1cb8965396710bbeafcb526f6f38a606ac264fa71e2e7c70c19306694f01280df9519d56742584dd33119d13119d12c9deee20cfe78c3d24c9a8ea6c122b8609a341d9c365f358768e8f6d41fadb9985e960c818f3b6a500334f6e0420d31ee10630896ef8c3aac1e447cc9018920b868410e6988b1460c1d481b506b8ea8c1181694a9a308d4350331ce88f1061766a8f9ea0c2517cda4c3c60dad99aaf63a6b9191c3c57d6143f6bb32638a1884552757a5c7ea614e9e0ef70169d8cf69860f3f55733619a83517264d47c8efca8c221efeaecc08e2abe6b0082e430f33bcdce15b15909fc20d2e928d8ab6ab31c24048c59b7891a48103c4bbfdb8caaaec098e16f87cf7ed2e9fb04e9b11b006ad29fc2e19bf491a68a2c45885f146c720ca18650aa204be80c11e7df4b1822307a868e6631ca3cb47aec27681a693fdaeca58f3f37755860fbe6a0efb0cbabdd0698e4e773c96ef8a06623e3a8fc531e9b77c576da85e7a77048a6fcf000c0df4da93f46957652cf1b366bc4055195d7c2666573220f375d7306a8534696c2bb4b1668536d874f7dea73ad78c6f5f21cd99eef67fdbed4c3a4d74bb01434f2db939e594534e39e5945e9b1f13e98f8374f689a8dd729e9cdceab42c296384f0bddad09fc739e7d6ed9b11b5bfe71007747b36373f3b6c08df174c30c1441b75f72d5cb875a1507eba2a3fcf32fc38dd6acfd3aaf3d4ab91a75efda99bfa04c4a9634d69c9a933101ddfd9aaff8e07bd9d0d884e102e7a1fc437130ac2a500644bb22d19cc9784c395346dbde7245567ae765fb5aafdcf2f67faaa911e3402dd9e3662a925e5b65c659e36b425e3aba985d0a6d7656362f3d2594e8bd3e1c83c0fea0867fb4c5ef16339e8f6541eb36e599665599665adb56a7e3922abae9ae916b75b4de1e7d43493c981eafca973bd87d0488ee62f5781352cb0790cb4816e0fe6d68671b57b4bcbfceda191fc726c7b7b74cfa775dec2def29e6d2319e6edd9c69910c64dba55d33357b1afda5f1cc641dacd0565ee7e0fc218b1dd32a1adf6987ad0966b1568cb4922b4f558ca1a7b1492e225b1d9a7fa7cd67dfe9c2872fb98e7af55aa343cfc797a5ee7fefadb487bfc74164b228b24c22d0f3e081fc45a077882f0bd17b1b63ad0c343959e872e994e4c8a8b890fddca84a01be96e964c8b647d068d054670ce3925b4a6d1a36eb026286c5fa142d9328351f72b54f9f96e34cdd555f3ad2405a84648c9b2799b0ccbe69b23622e05f959b15c85800f1afb2e194756a0b177efd5ae2157535d3cf4f7bc81d0d85f9525e3217ddc111a073d08fd4dadc9a098c9c8afd79f27f9fa2ad925d629c737c797d2a007b71c6f27990775bfcfb8349e21b0ea8094b40fe939369f5f1bcce8467a7bf87313ff6c501609bbd438259f9a99ed99af49743a6897646091b0973a25471aa87b46fa94f97acfa473e36f92774a6855d3b81f8de43f73760f9a15b633cf381797bd3d340cdbf6f9303f209df679fe5c0709ad2af9e7dd913e65fe94a4d0a7e9cf8320a0e6497ef973154a5c35f2e8cb30128933f3ec647c0acf4a92ec1949057639af3efaaaf9e8b53335900a580329793ed1df1d9ab5050fedfda1390bd1a7f66e23b4e8134f475f32cfb9191e90362589abdabae14cdbdb438bae42067609f5e83d469302439f308fd159d5272679741ab6f4a956e97e853e591eeb9ac1b8ba683e5a186704bfbd97ad582491b45ddbdb43ab2c040bf180f6ed9b9c105cd5fe75125a65213efa0c46dc042fd1a75a65d93c3b14828de893f4e83c26853ef1f4e841f3e2c83cefc71d2d19a8320cdfdae0c36d751a68511315371e99bcb294a0418b649dc214208c1046251de8f9a14acfc718bb9eea6ca48bd0d8a3b39451ca6895119f941be1ae9baa9452428bfb2d617991f892d024d1b364dcea845226396259d2b2246d1d3436f21ba5752d1259e17b3a72e36afaed13f4add82f84b0c9be12e896252d8bd3aaa0cb41ac7560eeb6b86de6e466049f9d6d70a4bb25e3db3bd0f3bb65d7ab913f52a5e77793e83017fdc88ff7600eb94a0abf0e978cc86f07fafcc8f7cfb7926faa635a6c4ead4acfafc7cd364eb2d55dfd9a8ce2b3cbeea4a9fa4b96dc6edc143684bcb1b48b8476d75dab2879f64e4d8e6876adb86ead135971b908d7dfea2ca1b50e1a3bec2534769e8352cb7763125a744924e1be8f0e8de87427bd46df18a12f9295d26234761823e7d09fd724d88964ec1d20075f174974f77bfbde7bbdbd3030f51793e90d1781fd40e3085a90df5518597cd5f80f6de7771546128f0171871134f9bb0a438cf6bb0a43d5366023f461841d7e333ea6357b7e5a4c042dfeae5646f8eaadd2e39b8b66fdae56763c447187e9d17e572b1cac66f0d57f640d34ba1b6c38bb725640a3ea6eff617183df190f1a6d7b151e10af0ff4eb61ce434864a363170974c34d77fbfc16c97ba517f0fbf9aaf95713d7d0d3d3b16bb0f648a2061ccc90e1031a32aa6082879c33797c51851d7514618f31c010434cea8638ca50a2cb0d3f9881460c2894e861db08638a2da0b8a208657841c930e6708118ff018c35482c01871739a0a483d147123d28616306971f10014d0d681c0066096902e3003077d0a0061f7031c50f0d00238e25b80729d28063750419b411870a18b022024ae9d2751a08a2a4fb2ee99e975e34e93cbb63a8839451ec11c5166cf051071822a0640a2fa59b68f03272b38bb60f1d26f1b3c7cf8f1e7c8061c41751f431e7b4e0ec32e79cae4101861442e0c37f575ff0f0f477f585173279e491474f1176a3d51f1310abd88fb6302afa9632d08f2c3a50cfd9e76e0efbfca0eee9539d46ba07f4a385103030a3882bdad003d5ce1b045a543b731c5c68f1febbdac2084dfccfef2a0643782ff4e8828e9f31aeefd3bea7cbec09e91fc738f009eb316b62b97cfb6ff7d7b94d26b4739bcfa7dddae4e3b01e3cb4baabda052979405ab7dd2f90d63e0b85e0dbb0960d6b20e6b10fe2b27de842cd27e077d5c598e7c20d17667ed585ea29b7798a534d24ed02c24a2eb70b2b39b645276dec25df07a4e178e6f4613d7dcac94a4ee923912c27918cfa6d44f33d1029a53f8b1404885bb2755a08c2d5fee93a56370764abfc138857e7807044cfa737f7be3667a5b61c49664e5676f3b5e4464d04c48fbeb7fa9ee4dc925df656998eaf469d09557e520bb51f887389d4ffbc1a35f7aa6055fa7144d2817873dce64b0db95a920e0488f7b655fe5e202c63615a6d713cd3d94bae3d20d71c477a73d589f4f67630bc80f6eeef5af2ca6d9eb5ac49106f8ea81d88e304a1aeb5977674dc4b5913e9441617c4336959ed3b5c855f72ea51a724b91a847db14c887d78fab6ed17bfb7f8d2bb85f81248c9a5cc9a587e796993be395b95d161c6690f2872fe7ca0c6e170757ecfd2b6ddd1e9b50a66b1353922e9cf2dae5a38f0022abf552524f93689ab92ab827d493a1bbd2f71441c939cb9ca61be5b7a93b8ca1546af46ef33278f5dbab5550ef3ccf14c27793f7f403fcf073a640e56c19ebd56c1bee49957f824a3f7ec256faf1ce6492eb326ec4425ae7acc5ac09efda7e4b06479c655f88d6dbb3e8f71e005b0e59423911c6642a4367f6d32fe945f4bd05daa2778297d3327f125fce984bec5310e7c4273d71173d45963e1ef9edaeb7becbb5fdf7bce7c82af9fbc05c0fee627c2c26fd4dffe9eec9b37bffd92d0d801dfdc833e605107166e804861f29d9aa6633202e17c3c6451420e25b6e0c24514aa0564014416434ccda4e974c71ad4a09503095978c922074b461dad4f90b7b0c143687a1dd3ef6a0b31b690e3abe63109ffefdec9ccccd539b7399d681e4992424fc3d3f4fae0bff744afa15753d5e6f3c9552b09cd7fbf2557a7ceb347ae6a461608ae0ffbdb3e3d20887a900bdfa9693a2623a7e9ec4626a775c7d7a6d31ddf30e79caeb969cd4fae5a5c951f4dfb0957d34c9ace162df8aab9f58ae0c10e823871003437cca1c40a8d3d7458a2c5182daa5853041144f0b05a95c1440f3528200b3db4f8b226e78724c408c38c237630a347114ab258238b1cac993841d02e3bc0800a1b6ab8c1194059349145166b782080df951645f89ddf95167240385f125a3b84dcbc437b188410f21c38ce3b801342ce7bbac3ba6021c643ae5e5c959f87104286443823aed8205c4890819a875c5d33af8b4230104a51451343f0e2cb173850f0f4108b1a3cc4a2cdc36bae991c84ae8d79e83a26e8de27121eaeae40e2a11f19f2bbbae2861ff2bbb2228f69c401da0665bc910220e8e00617d0814ac057ad8769c022cc1549fccf0fa18e57c2ec29f429c9f36a086b9ebda7811ac5499efde2419431be6bebe91e0e324c7479230a3cf84021e0db359377ddf11a938ec683ee67ef8ef489dd7cbb8ee90161e0086472d0c11773a09903d5ee7d3ac0b7774178869bce9383bd877d7b5756d0317725e11b130e4ca6385078118071c20e207ed8610c36908bf6f3a92da848428a1af421042140815a5f1d0ab968273c06861e44e0524397376450eb1be4063f3f373099debb010c2084fe7ca0b3145ac579e81a7cefe1ec921f2b5ad1e229b4ea6f59da911ead4fd12dd731591e638c51fef8c150aca1e9bcad42abf399de7b6f0d97d1aaf650eb1374e83a30c618064ba75288c968d5f4d2d427e946fad42ebda74fd065f7523a267d379e362c8bd96299664e26b9946eb9c51159de2ebd5a1c8f13ab49ec3addcd39e7f439e79cf3baaec911fdf417dd27cd09adbaf7297af49ec89b64f943871a2ba0b8c20a23fec8efaa0a37cfdbfc5e141a138a850680172ca1d5f9cfe481c84d6855fb18dda4e94cac276ea1da6b4a6815e71b6797f0131c6db2bf1c131afbfed0ed79cff7516101ba3d9bb1151a0cea85d804aa60f33dbf2b2aba788a23ad223c6d683c4f2051ac91e371129d3dfa7c925db069b4d1e6a56f8fe488346e7e019dbf6ba201a257a8d44a55ca63414f42c89499811901189000d31440403020120c07a4114dd6751f14800e9bb64a501fca834912c32888821041c810630000040001303334342c00ccb59f2665350710532fc26d1df10b974f4cfda433e456b15da078c8899ecba52de06db61a23b303138f8d3cb4838f132d62b94d6edc343e5e288c1f5a6ad5cb5ad3dbe9010641ab6e18451bc7eb0e65f12a151cd50148f6be2110e6e5e3b8410137b176f16ab6b67e78bcb20e27bd436db68a79728b465d16c4df2d0d538fdb65d8a5169c73b7a36ffb7997912c8a1540a486fcd0689e9f0cfb3adc01e5ab91ef2ca44402d8c33f667ec49cac2a825683faedf3b3bc4648967cad9d312f4010a306e62a1645f344ff9f0c2905826e8079f7e6cd2bcf930b202b59cab47e81e3b824c57594d150dadd5007290826b035e1249609a47fd49134adcfb170c5d1685c991c847e4d0be8eff02784d5e797f03e97df888ccf7abb4623a231da74e6c2645d372f9f5d71836a337d0c7dc1eb2c4436ba39f7182bbde150a81eb4fa99f4c33d6a0553acb449e1577eb8e24d3c635c8998689fd6b703702bd05bbf7102ea6f48e65a00fd0ec3e56ff270d473d29c01782723e55568f4a8b37ece3f4252bf9e2f428cc9d05b5560e59ac61de7f487d17897581d644fd039de1e90dde6aef06e793415a9c72cef29d6fa8e80458516d8c4351dbfd08be4246331808e94a4232b1bf30380ce6a059d49fe44bb1e5e4efa0829dad4d877c21697011aaac145d7c9812d826453f2ccb5627490617f4a11fe623c26bc08fdf79242fa040e468deed58da4e5958d9c19bbbaf2bf4fe254016a4457d1483d30b3e6c77c551e005c2b4f847bbce1d181cfc9665015e1312514c2338f2476d4948b0a01022a18a2731363db47d1fdd01455e2e716130495b5f5b66a99867dce4fc87a537ca732dbc631b6cfcd4c4f4bf479b4478e987daeb9538f71102b86961b349e62220a633064e05817253bcee1e8b31400641b966c4574b175fde420e6429670666a71c7c910abd9a844dc1b4d6dff7ff5e0fbbcbc2f0040d6ee6049d8062fb948da3449ca94d73073a71a82876bf91bcc745e810582f583aa5d51e93cbc6e930f89dfeb20d54ebe08c7d23e684118f8c31e871c2a9b9cd92d8cd05c68c92c2821991f8c5b3061e9efd4688e2b853e6eba046abefe5794c3dc02312ff39b00e8924e2d7f14259e50a4e6ce0d98a27111757b7e08b144402531828adf4fa9b47b3722f304f8345a568170275c0a3c19324f6a59195bd124c6b230cc23aed8a55674bec24a5b945cf7e0532f05ff5233e46bd4fad7e37abca376080f2a6d8801550531cd521bb00e1940105259972341422af163dfb82d13b35ff68d1b27f58c1c507de6ebf203d1707d09d523e2b276b97657606a04fc93412556ee0b888de6ff96a2958c76356ea5c40f3efd7e2bec8804e3f0695d73657610be5eda10ea6af837265eec435ea9adbbad68e03aec7bb16e2420bd5d3804d1f34929d5bd79a59978e5c0197dd7f10397a6d92134031ddb326e091dc9c70d0bc908e822e8c5321b5c8fa66d09b8429838f3a4becb8791f9b7dc505d6cc3e8138419940628b7163b20ccbcf5135821491c2e2d4df29af56fc505a53e53406202d390dfafc24769f74d818699c784d5ba9a85487f2130734c396d58e5f26dd51803b84e0aa1ece116b28655e02c0e57e16d213cd248f685c0db4d995fe13406c7e662f712901d23d0fe391ca2ca9245844a6bd1c80f8a2ceaf340db53a013218726f67d0348f3629dc312ef1a722868481b7d0220c18632f1e52fc0ca22c0a10fef81af0628a1ed8ea246bb1f1232f203e5e29bc5064d20acb0050376aaf077d395bab71426d02c76427e9f6deba18d16616f0f2f25cbc7b949f4526e4fa40b84454d71e8ac2ad2e555b3db543e7471e3e4aa3acb3a836eba2a271ba79b719dbf3f4b6b07cb9bc9c2137fb9643af37a74860f6038fbe88f33cbb9d420e7118196a193ecfa2334579fccf0741b377c52ec5a2dbd1290e15c886a067fe8aaab4515afb08a3336a0e28cd6884012247f72069997e2afd35ff5b85aafd3d2c2f8a1d1a0deb93b7226d6b396bc557317ef0ad3638eea633da635a94709f0787524c99d89714a5fe5ab88a0dc34e12ebbc08966e530da93d6c5e5272b630ec6c5e0e9b3d4a2d8fdb28bc619b2b2df57991b6c7abd9ad8ac9bbcd0b73e128eecdde116249ad4fd120c9c8ad093869914aa8adb03e768bdcf1c331aa2d94ee5db816ca2840db5ab798abebf559491ade8e6d6666115b089a34e9dddaca30fac228933b8066e064e050f00aedc1620360affc98092d51d028546f18fdc904a4143e734933332848b24a284e8abd0f5bf9f58906358e232031cf6ef00151df8c121de3878d301f1851aa523219b7c9989cbbc0b2564bf28270c1903ebe4d0412e3123df77aef76812f27c43bfc1e167b660960590a5633aa42214b1f27cda34d132de4c25ca4b7e32a104b1e22c03552c12c512ebf30d7d365f36c22525099461fa1d13bfa6464e06b8e33ee70fa5e0086b93355283bb83c6690dba95f7b418bbe2ccd1db190173508c27d4cf380c58439c8c82ce58a5933281818c51a5935a2ba20fe8a376fb2072658fbf93dcc23ac3397ed5b1d8c853f31c3504c3155cdd4747ca6352ef4f69f7f40e1e083b90bc496a0098013437a8ef44f1b9549436cf77811b676df32078f19bfafa78517e24715702767d59a1b83a5391df4ba8a617531547a16af71d2c1e6a6843386a33d218c30d24eabde2a02316cf087d458d2898af5a04718b57bda31e0e3b01b80a589809de8193a442090a32cbaa86ed1d03ec963e4465917e25d41f354f3561dde4268110d49df2780cecc16c0f5d03b631747434507f718bcb0a185a1b9b62510db7e06456fdcfcfc14a6d3d9883f81b3a37998ae056b6cb4d6b4a3f9d44f769212ca7a5d01347dbd998f7e926314017a416207fb2bf7fca73bcefcf1614166ede4ac28ef7dd569bc6db3a77df61d6fd5fa84ad6dd91002f6ecb0a6bc3228d332142c03e65adf453871f43597c75fd18194b439bbe125d3d14ea6db796ae3907798543a3b439c3aeb4a41f966bda3a21dd6a2dde191a467e8e756034ff44f8a8846652e4dc006444b75cb6a1ab0b50c43d979a601f68e8355ea0b85e2bf7fb46fc1bcb87deed540aefc705509aec8bd8ade247d16c496d4586f7c1f89ba53637ab481faf9046dd50e0be9f14352c26287b4abd1ad70e2382b4291a1bbbbaf00d7dcc9a3a271c17699064cecd1955562ca55b7f1246e0c4b4ad3f6118234a43c275286b484a0e867fc8183f5d6cb9bf65bc02804ce3247bab8f0d082d01b690e58fe4c9eec32c066e23434de75860e050ed41a0c50df3da19d1f1a06042518d1766d038cf0c66008201dc96d60079d23c771a442eadabc545b27285c2044807b4f739dccd0674f7f71f4c58955c477e6692138b6ad052f5cec6b2a6fa4961c4501f0582162555978e9deae41a61ae345684d0a3b25dc7d069712bdb2eb6e142f27cfd539f9084ec9f15f891b35711fc73f39ef8c3a94fa712bb4effaa5ea441028d508acf49f1086fce409dab47748593079198846913fb8923aa378217cadb4618a44d28c43b03aebb16dab1cbfd771b9053daba53f60d207c236afb41f70fb815e6bc2fcf4e0132a1a474293290b92ea5c3e2261a7b2c4cd40c01f4d372a4c46e55eb9aac14f461d73899b7d2fd4b9f8014105778d05a3810ef0d9ff4eaa4477c8d9c7a3c6a88f6b8bc87336032edbc678f34f3de2056f1eb6c33dc12d23d4ab556d3f483d01ffe5423add71cae53c7c58f72b51920a6efce2ad6cc4476c977cc9a194a7e5c272250b2446b1ae16a348532984516b8e88e41503ac5cd6aaeb58c11e800ab91f6508188aa8d17e8e842eca233204e150f0623b808cce30fc304bab0a49815b7f101ea024940c3abb57a0b4a2f0bb5cd821ca6db29149d2b26a7c01478596bedb360f9e1616f4d28f361ca60a08c3ef5c1c75c01e1418765d11698232f43a68699fb5999899249b62fc5822c4074ae4795d551fb44708dc1e2c4db8ab77ea0636710b6426bb2fe2385728f4e84f8727e19a0b21878016ac8de493d194b23fd6160c5df74c52c8522612320c988ba6fc494025e6e831dedd133b2c0a91f0172f5af06877ca89d4202e241054f8a02d42cb79df5384577d9645bac9a067bdd23d70701f69477a0a12a16d8d162bf23d0f5aba8385149a25bd911dcc3055da214c4dbb142fa638b4b43cf09420f6c8032d18064f01d80ee452f1491bc47ead3f0f21f6a70d08e5aecffe23aa62ad97aafcc1713a2554c150b0e2a703c34d70f8e583bca0a98c282d4472f2b511572b207af2ad80f3f07125bf281b889fc216e902fdccdca07c5cde143625c9e37c9e1fb2c1104cf9dae1d35fa899d21fdacdb4fe46e81d1021a909c81699c4575fd5e53d30615c0554ce727520d94a475ac7ac41ece057dc90b7c1f1298d92265a3892c4a439c867db7f3b270a1ba3ec61fd4147db376715cde7ef8c8fc41cc4c19bd26ef209349c6e3bf55483d3ad9018894484f1cd99c16aae8024538745fd0c0de7f43a62012f0ea78f65b43ad564fbdacd59e7aa58a9d01952c67c401c5020c92c4f1c0d9506f87a41ee9d307260932d65c18a4d6166f0df21199be0d5c02ae69c25912adb79c890d846640b0c1989e2bbeb8a1a6fc79064788efba134ad3419753a4f59ee04427a2b5b5aca7bf3ea14dfc4f8a13a0de7fc46c46da76752c3c0439f1ac8e24e81e71481013e96a1ad6f049f4cefc8e567c8ae9801db2bbbf48019682b7186a76ced50c10b8d8e48f38edd590b64bec68075957865e673047ac62e3f25eab3b8c6ba307c1440d5cf44c9d28f9805760774d6a086d03a7b05b57f8ded3085f78ea707b456435c1d7a829ca49256ef175068ea6b35b31540bb6a96671ffd528f0c15af081ffa70ce952b6e64b8b3610936225008ed950210260f1952bf41ca1b9ea4e110daf948d7010919e5c58e5048e840eb562f9ec8d4944dc11f7c610fe50aa7efe9878d6450054d848cdd01129d8893fa4502e81db705ecd8b81f4f50862600680fae1d030b4235071076335dde5076dea6f310ea31c8103903508f16ed0a987846e8df2e4d6a02fe77dac227139aec6addbe3626ef335fb26097d195d2810a44b5fdb3e7d7986e02fb9cbb546d10b9e74ebd3476796a6316077f301612d1868a4384e71c89b28faa5fdfde1b8c74961b171089a1868b03e7525937a85f7bb200174feb026043dc36fa0df51ff3a5b35bc70296a3f42c2cb79eeed6578c15bc594e9ad91bdc894e5718f005f945c77b63e2078e4b8505f5d58df6c6d7a1b3f8f06fa8fa029a74becdfed18cce93a97c182db6129e4f712c84d4159026fef60a35c86eca415f8e824ecae8cd8c139108ac6a7d11df4428b17dad60a66608e6f69f7b9a5330e4353fafb5daf973346a63bac66e73ad249fec53b4d69cefdcbdecc5ad00e958812fc04e6056e7e93881a4c2c8f020a90bbb293390b821050a5a28ff045cb79d27eef9e384582d0866c23bc472bc64167ff927dc5f515d799b39386f2c851a928dce13993d6475c4674ff5324d0086782dd95d11aa45718c9c96153c1a3cbcfd42dd18633aafaf328865c15d1eefb1d15f7eb1de7aa3ecd3453f7a36d0e9477703d25adf8f2d619c4633b01108ca92d8e85abc13175080d5a75f41cd2ad86331f718b99bbcb08584164ed341fb371cfe86adce310b4262ddda40a430ec0f9d4ace51a4bd14d0ad608819c18b9120e8cc38cee4e77c440962a8c7806977e6c59f244502e83943903cc0f32c6c6feac5b60d8ef3dd1db16ce524799880493414d6140a38ad5458acb4d5c909be22e62e74c3b3cf6c264db87a7e34601e9c93cb908051851a98882c622dfd608462a4ab38b2cf2b0a912efc20e12806cc7be40f22851742415a0609f802d1e7e4da054fee1e16fed9f62a8386e945d7fc48febbfbc8a35d8dc83a7d1bbb870eb341cb27256d82f1b304514c04527ad786f8ddc20aa5cefb64a36e03adc094c86c26f9c3a03b5cc2636148195159af81e4ae4be11e914cd21e1ba37a489032281ccc5072fea0d71d7265b9c35d97e3d4bc28ad6dce19b13f630abe8e41859edbb146ba91cdb6df896501309a9fbc22a4929cb623212252a5b94c8c81567ca55798c35775f2445df4e24ba3259281a65e811fbd3a17563e0ad45ee0baf1561fe89246f62ccac218defc898989b01f0f975a34ca9c46b482e10101888420adfdd08fbfc44f4bc940cf2a3f327256ee26b5c61992a6b73fe1d6a62ac85b312a3151f89f0407e7b8b63e7a702ce63abeb622976213f47d20ad73bd4e69d0e2af99a2c3de8d6f706fb2ab17c820ec5287bd1c58b0419270cc944060b81f8a47e2824db87fd70ff16d45d020891625f17a258289976fd9219fc9b2dfa7e56889602437adb56f8bdb8e7627e02594c0300620c0488952aca0009314946457a3dfb9fb938f90c4784444ec8a3bfe6d78f65cd7bfa3a94eb119794e3239c8d3733940b57e51a217d9e03b4f1f3c6d6be1d3d72ded4008e4d5dc9895267275dba0373c7340ddaf6dff78b33bab6c61f8eae7f9c362249147b8d25d26cd9b49fa7b7c7499cc9be232a9175901d11d8512be377a5c6a0c3b95ee2a4c490bd50ded462d4c8e703c92367237d49bb06d6582079cd00baace0e1cfc954bb416ab5653474f245e8937a41749c0252fce05ff6c3a58fa927f58d28dea455eb2356ece53837db1b644e1ea17e70e7a162610c09cc3af3907a9423d40a19acc7e28508925777e1e7278c2962ab0d0d523663ce611d5fea451df4af3747283d464577141b2bea62b038de3a1e043e22145cfb9b9252479ed1156b8c9a2c4bb5b00ea801b7dc996ad3c2fd53aa468cfa84127cf436674da2a8d50157e910fac8d7bb944fd073f2b1fe59e77749a81b85632a0fcc6aecae22e4246ad8efb9649e95c1a1465cbe3be9694ca42d3c6ca19e404c4a39a0246fcb0ee33a2f873df23b96ee748cf46fca1a9460379fe078e76a2b614753fa33fd4bae3a10b83e218b8251767287870c87da1657cad47f86be469dbefccea7c0334ac8c7832a309070e85f2b620e7557866a21ae914b64c030001a2c3e7137447581b85322967efe24ca8e6c2c8b0e561a217ff5c5c7d1a16a8c86ffb5c98b8340e291f1686f2675c77295eba2b24924a4ec6efe1906fc55423358271cfbf9108421b0b0e566945ecd47ae5feade4611d3a77d84f6b23f0c1f0cf082ee4aa22c09244b9d408aac549634c7b2f66f8425101ba6fe44ead30f201ee03052d4f54cd446960e121f09e534ded948426b6465473da01b0d626c2acda2306336bd38d4e697be1dd2aaeddc48f2f052d6e125b03c4019034becc72f4cdcff5cb294a0d1f9413b36483427ee53a891430be83321f280502b16dc9180febefa701ae8efd06517a906c33fa7a8458a11f14b91ea71997b99a401d25eba259f42ab8e9753e48cf59e334ffe6d6335eb152c4fa557cf9946d5ca5c783b2e433d9a0453a6253d4cd4ddabecee79d22ed90fb4cae218b21ec54833d99a26035e8fc48e0b62e7a0027e51d921582a8640109c8105387988e006dcf9e3ecc6ae6374ec50c9bb272811575047b6c15fc660a5fbb47150a2b8a523f0feb3b48bc7e40c7bf1a89e685a1d59c309dca1cc9e095f5c3202ef526c1b6700a7d1a317a5e8e20eb632f7ae46889d92af67b1a4e545c01fe7b25b0b4fa8cb7954dce0e81e2bc5877a721d65e7077012b9e8906221c09523662a9f20d6c59d8a6b82f2679cf69040d2c0cd3516e1074fa58609c52c40a401eef4d8949fb45224d06ea29257d892bbcc23b881ce1942e11a07140a6edbe42f1d819286666cc4672152b28ddbc9c2b17bd47b6582d20423bef4ba720c62516f2251b1324730c12bb91a30eefddf20bda0c3c081810520a135e964a11a19d812d39b56dedb73d7a7cc0c2c699bf6d81f6fe2420cb9e8aa8d5e65c83364da2c54984a2b649c9d229bc92ac96358c4aa684c64ff97a19240d305a615bdb07522c07879c5188b8330963783982a407fd73079d5d7488ce79c81a371e0dfd571e1bed6ebcabd5e8353807c12667a3255c2c3f588363e3f40489ec5d0c7b9fd4d897b6350904653b2372804e17241b8452c3ceb66041a8b77c3055a16721c44bab037b40b340e8fd2852dcc1e8aa54a43e98e47668629eaab4ad436f14056162934a81a270a38dca02777ab5b0b5a535bd3cfed14c870f98311b6343fb4783be4ab25f37f64f03f560170092f4236658afeb9147ef05a31a9798171b9356d45b2fedecb20e898309d35a2a9744b056d9d03951e00fab742a1cf51e92e863371d6d898d2b300a773c0d9a3d0fdd4715ea54f20f45ae397ca6ca28ba448fa7de7ed24ed2ed955d567067d68d7d04ba3051c4983d3d081171a0011cac3361e1bf58724ab20034119b1d501ce98e30a66d29768e9a3303a98cd1ad0b510782949801b822eb5354bc678d1f380a289896ad95c1d9c1922287a932feb0a3a720175655019f3e0d3fd70670806c0133e75a6f2dbdd6a33521318cee0847f797de9542e3b688310def723f86684cbb0718d823ea1cbab929e8b3a6e6b0cbad569e628473661deebab7d17bc0d6bce119ec00611987a080c4318ff5c9993c6c80eb8ea980ca5a8818cc5491fbb4787b110a0b99f7293a1a441123bdd1c0e4960990ddc4d1f3648e1b15838ea1ba313e436a52d10de0b2afc9e69ee7b4c5ac465b1cf505dd5af696dd94f6bf4a04653efac2a7931aadc66a83cc5656061e9db8ec69357b3cb838bcc39d63b945fa1f2130e493590c5eaf6112000a2fcec0779f8b815ace6a41261c87c74e2e2a0fab105b9ecc9043af61c9a6c0b885e8f809a578486869d2c54f24d94bd9437c0102d9447f3c7c533737ff16bb91f90d06e2a00e49e2c17bb72e90700d680fcc48cda6fb0b7e48c3546e467ab7c5b25ccae166b21fb4e61550b6769cef941302224433326a73d53dcfaba0ab16c3f7aa934626657ceba6fbd5af8b455d3c77ba3dbfec6f398272318736a119a1d685ea07302d08e9625d79a03db98047a4e4357d6e75065b93915989255c0d3bc122a2ffc832cffa65335b966506406aeaf604acc25c2b6fbd7119c805bbd0e6d90fa41a9d92040449e873530734165c45761151f3a50a25afcc3ec97472b8d6965367edf706f5d83ac1553dc1a5bb77679d343047d92d1abeb6830016b194197c01beec16475324ab06717af00fa0b6e5ad25dffc35a57b0b0f89a56ebef5f0fc1b583d435c4194b18839bf2848bd60e5d2ef4a43a7e214012dab4de345db7313f5e7625a0d0eb6ad69064252e00b83690e4dbcac85c2b3925f4aace3f5e81cd23c40d95300a9c78d15a1bf235a2c1fe98a15c00b8103bbb2456cec761886fe9bce42ffe83960f26c5fc471bddd6632a58e84fa8a8cc58b3de3b88ee38101fd60d976e46c792d76eb5b3951bb24bc5dcac40c373df8cad43b663bb4ed017eb22aae2c7749559d2ff2584aad05db850e8a8c9e65ea1bfe4a0edbfc3827d88fa920bc11cb3d2a07557753fa200a23f8e8963189dda847efcf6411a324747b0f430fb1b6a437e373766917dfd80e1816425752589850101e27b095173f81083c668ee8e7a67447ec8fa8286bdb8601fdc06a91308c59dae7ee06f3c32502bd69e1d70610790ea1f07551dd496678eb5fdfc590296c13381edc2dc0e5fba5b8c6c439ca0b526c9f20cc63752fb7788cd890c5fc874c2028f9a002434a4180e46dd7f1bf5aa78efc5e500a746c321ecc8c5cd8379f2592c069d96d7f14dacdb70175d51f46b4cb0e490d1c200143e10d88df0f53f5bdb1fcdcfe3c2c5792c6709dff7c09cdd48f815c72d1c7316e8443e4a0d39656de11e46609f121006fc854da065c83d09fbc00626f3bda733c715c46372e19d1bf66d9743321859290671842b38ef0bfa84ba161724ed3953946308f2a7c743712763acb073369aa915138b59b4a720b2bbb68cc98e357f50f084f1690af0a389091d8c20e59d3091f12b0ae3318f07dfc5b5035d2ff2535a88a15886cbb839cc52cd17134198529f30a318956320e041eaae2d68b265aea9d183fc4ccd2bfb64a1f5600185c0eeb2e91cacfc0c8482ec270486a10294e240114dbed5cae6e410c0f180c66c984a41b8cf11321c90aa484e1c60ab1ac382f6d3521975522851eba6b92d43eec4134e09cfaa7d298ca72459934ef925ef2ae74eea8320d88b2c1a42e67c5b1e852f9cf66d5bf7845eb487c6b8a51da6e9bdd18aa90fce2a4e72bd27e078d2324c5af250de3439cced9c3bd9691c190565b6ad3e1512b638f14e47c744292f559fe463e3d7b9dd1603fe1700655b059c447204584f9ad485d7ba67cbc7a0bd29896fe37182a016afdfef4394c62cdaa800b33b2485c1b53db5314d53490b769b563cf489c6059f262f3d67400e40f6b9f0101cc900547ac141a8d11bb59dddb14d3fdf5a2f3f8dc031587929a41c5ced906ce51659c9d65fbb826aed3f59374a86ec0134935e684790a9840eaf78993b4bf288cc506f002b1bf286a30296a7de542b3c5532a86401e59f996716b7bbc4c19b409f92dbd0e65f65df3906f551034d030e0bdc2869c1ea4ff0fe496742470d88849cea8202483eb0d48d2b575daeb8784c74fe97a1f240d3075056b48b7322d8d53577c81025c067cd7d322aa548d694e20123c53c906e4f7f15c8492a988e7b879e10f5e8252cae01bc71cfccc1c6c742924c01fcb2d9e54d759e2544bfb032ecf8c4387a4a99a29c571ff25503b823777c4ec16ec6dc028cfe70089bd83a1a8286c15fce13d7e706a72b5c5d2550b33ec102f4c1e04adc8527323c7ff5526c3dce29c19bb5e0f8ab69106b93eeca768f7f118df6f5fe5ad347ba63d367796ec60e8f91bc959e4caedbe63de691bef32db59f83747dc33406e4511fb69bd94f97c18d8aa6788d13a8034dcbaa32d635d28a2a7b7039c32a959684934f72ae50af4b684f74c81a7f1fb0149a2b96030c7365b71ff0cf89d4508d28724b9c8b2e14060d3edf082678c98aba85a860a8b1f22877919cb0d5e41f4a60da6a2daa1174647545d97c8516a7c7668bca6c609587f0398ccfc61b680f46df415d61c1d2b0705151211b32115e60d56205942203dbec1c2bc9a9e0c9d22962ea4e3b49f425e687c9070a09f1001a1c83e1d0222ff8d94af0c83e76426e6722dbcc44221d724352ec7caaa6e1481050264da5757af4298036dff6493aa9e69e475c4c6802efa577e1ae6ae67f21482c73f67acdf05fdf7180ce58ef085f2732cf5b9515154fa68e6b00ee9742924473223d25c5fc11197e730d941194c19b4fd96660a02d78a34205596d5f457c424091f51088e08d1e249b1139f181687a4fe72dc29a757f7c126ed0dedc685108d98ddb04de94bf6c207a471e1255b6a8f97df361fd14da0faa57485ca50c86dec51b9359ea93e168876e1e88b87dafe2b655823f0d5b13357b8fa62000a864ad81d14c663cb51308d438b1d60b91dd393fe81bc7f9a4ea0055ae7312d34f29a2d1802a6441ebbcf9e4e0de55a0349605665741641f7045298692ba5a0b1a4912c6473fe1a3be3dfa41e38d7c9a429e66679276b23c1fa9c8fd4ab6a020712cd1936093b6dbfc81201954e08c59924045f40a3993b29c553a1a18cbf7f86c0b9e9fa3365efc689f2d443317088e897305b91f6aac8c1724e1a29f417eedea4be567c186f3fdc90bff66bb27c6ad1363cde028ef680f2b8c1d88ae4dabb05db1aafc5207b4f8d4a1793e5f03e776a5edb2d71bbb9dd82439824bebed75c160b5d6b2ab38e48c513a0d122800f708ddf726d4cab2526ac426bb15ae19839d4232cb6633172153f0ecdce8e1904e98409e0c14096a4d8aaf555717989d41650d1510ab12f14791c7cee049ac7e9d0e0ec908012c93efab3cfbe879253c893fd5d60909be92e84015ac5a80f79baa9d2d95bb396bac322cce4c0fc554df0fb1f9dda0b441818979e613955a28ec14df8472936f4f4317f82482d00d1c6fdfd1623bfd2e9650820667ac1ee271d5e0727e3becda1b85a7d7cd32993614b7a2a850b8e4e68bf17d4a6a829853d98fab06770d6a77f3af1cc29160aabf5d663fc19be5d00d314ffc5b5804bf1c99cecc550949c80c9156d83077efbb72f9f293ad1e72ac3fd74d2c7320d5a41e71716031620f5ef4325c78c6889bc32689777711cc9f66b93b09e591fd12cc0dd912cc8f664096c58af387cedfdf9200c95020e3f6bb185242a6ee2db2f8190e6027b91fc24aed079baebaf4e37d6152ca739e722193c82679ca92c1c509ae558c046134a6df5989d615e47382bba7dd50db5c9ad418e8e73037475708adaa1a4102108ae32f858b4e515fa62aed0adff1ed0c28f38d60c514d5fc516a4801027cffc1a2fa57aff2d60cb090a58c50ca1e30a6d8e81891f05e4e6b570c20b556c9b9fd47e14b5d7213d485472493af565d6aa945b3a2911308d2c5441622e76cc487a7811fc83eb0b729f77545f76cd27a16680888a30ccf3322373bdf4837c788f40b3acece2e6849ab1d419e98e9f29e107ff3a3a9a465ca2739de77fc41339529bb203bb32152449b1d660d0cb2d4024744f7207fa98902686c932693dc10f062a9139e7df00608c2765526c6c89e4392a6ef55a642996400f73701d21d292111eac81bdf685dc62746449a268fd13922604531aea8d50c92b04aaed878108fb121b722e721f2e8ffdb5a0e3e7a6a20c38921b0ee7e2bb53c06d15f5ea1453d6cbcaf74c256c2a659a819e5831c860c391838e6048d29dd14d7e7fae92b0d01642ffcf6cda7d03b88f1786b0690a14dd7914e9ce801362d193bd17b2df7280707db43c9432cd7db1e2102fc6b5e3a722302ec4d2419a32a418e3806200211c0b73219301801880076d5ac7a8b08c80b64c2209572fab62edb42757192e52c060c8d7a4d6faf9fec40ee6388396e99ef3ee1e32894d39124a28b83998abe8a37d6cb5fb0f784823ec555b5aec2e5f6591d6b28aded617a097cec00f745fc0cfc34940b32d51f401e2167d80e410944b9f56352214bf4ac80bfaa6839223c2a1438fe981547fbfc0754a4428b400ad8441f2244db35160513ab07e4b2abdf7625ec91ce1149d1b4e98ac66bdad56755b7b2d77fc575d8771ffdc473b720ca9460c3ea3cc5cca5c78f6f940f3d988f772842f16333e8059c576d935ebb5da15077f17d8ab5d054e5392f459123d6504b81cb9f7afb7553c7e02e68b6616f8912d06865aa2710a5eb95bbe3085f6d45b936cdb7495c758f71b7d83ea19ac01a9c46740ac398826ce9c300d8395440189177652a07ebd0f7ea14bfd685d608e38d8b939ebef5e5f9a60ef8a8382f04a492ab5e24e00988ec16c201f916ca7909fb5afce9bc96b903b998f598b7e1ed977cd00b0278a1b1d98c4f8df427ac65f54dbc90f881658649600a12ccccf175e9a1e3c8a9f761484dc2370bab2fa7d96c0227cf016c4865f5fe23bd6e356bd28a9a8a992c98bba529b2a52c463450ca81907920eac37ca9a976b2c6826a7e4df9bad679f30ddcbe3e86cdc20e4d4bc288d87292a2ac1f84d8ff9e234790043c720a5a2945e2261b7b81a036c17bac55e268a31136fb38f40276000c62d4f5402330fe51c5ff9b7ff894f1245eef483c47f4d703dbfb6d2b34ea8476a4af2db04152d8339c4d599a7c6fcac79b633b0ba9cca36cee44b574fed103a685f65608354ea047ca7916a86df71cead77c685db2f7b081f77c432af8f10562084e6343c8f51a7c649254f4d27031ad3ad3d51c06b6ae030405316853d3a73edd91d877a1f7978299ff5e037dafae7ec8733b4d6d5fb28da9250d91d3fc733c8d77ece06e0e5202a569d2c9b2179b2eb9a216651661cef6400bed20bb266e14160ded89a5a3c52a1543c8218aed65045205215342f662e20e68ce0b50020bebfd502da35ec13cf0fd9fef9e46cf3c075a4b45185437bca08ca7e582043aa7fcda28cf7234b0a7fd3b2fdd65924506bf82a10e3688b982fa300a0168ae773ca842954be9405267e121cf7842c0a3e8b0cfed4bfcc14742502c57c220ce4f78b41dd0b7ec1ba882901f9812d313593918b186b9ef696699fa85eb399eefaf8a5ce3d616092b69786471edb4fe0dbc1145f1a745f64930748e140cb09e01eee72ef30b2ba5be061638641b36303f0dfb47ef14093d76b0669450e134832d40087c99010213b4b87d95f2df65365a99115b02595ab77fcc756cc56aff86e81ddc441003544d73e02c3562f2dfb0a3c423e1824635b521b372f3659bb3585748e151b8a6d64e36665130b9a76f20dcc933d867f27b24f90ae696320d1316b7de751381c91a44f5e28ef9f86a2adc0d33278b7b19ab196675c8945fa9ee98c8913db641ca47fff7e51a6238e1294502c3943084a2594d373420e04dd899009d1b1e6cf09e33c0232532e9b4fe1891d1b5aec601d9ceda6b907dd16c4380a6ac4add23af54cfad75a16c8a054a3f2422a998e296bc018ae44c183822bf2666000d033bc5f8a82ceea0bccc53b261ae122bf3754fc1d14426b7a55976209333410d05c481d9a9e39f0799debaa28023745f2a9784093ce43d76a07476e3aa6fa84db0aed1ea912f174ce2f7d9028080c0cc49afcd0e0495776187e9c9b6ef34686fd7e8d313648a6abae7ef0a3017223ce45b307d3f402ae065107384a1c4ffb7431dff865e7320084799a5581412c64bfc5aa7833d931f2a124693decfa7da6c51911992621a4e23842de1056eec311a3d7b70b193c93547210f6f2ab7e18938f4d68d3c5a6c9e94c799c79863b1966578b5422bcd13d572884cade726366fab2ed11577223b701e9a00b545d2267eb6e22250483f0ff9cdcfc9197045ef6a317c36ea198ea21cacb0ce41c9b98c052782c0c9f671f411d81b5f2758d04a1e1a6472a3e4ed106fe4155c9f7d03813085e97707d812aeb48008c96511a621469fa6396a43cf1ee4ffdffcde168e7ce0b1e50ed6ad4c4db341ec4ffd93d1d6f6af6e989f40905b2792a87fe0e841e41c32a97cafbc1dc7a0330e7bfdb2a51cf6240c7ffbf7e7992fdd8f45def729e81810048aa1a40cfe579fe90359329cc0c6361e9ffb298a24f97e7ef466f1769d259f9e6a767cf6cc008cbebba56f03edb41b01a7791aacc1ffed42fd024885a45023b4dfd1046d1dcf2026eecc767de4da43315132a121481ac8fa0f96d2ddf898f92f3a6833fbefa43849ceb5fd17ca5ef3e2cade02cc51b3b4efe2a9f0d6d423698c06599e23d6fb6a358d7dd603e1c4897c33267c3c60904afd7a3234f21804217b5abc13da472edf639999e382816103af718d34b1449b27813540f8f58a39c0e5a00ab643b8d5dc1b8724372795c026d7893947b03d211c6e52a001e7e42d2626e86e1b302d22abce5c52566a9e3bfc2b8f6082492c63710f90f29b234075d808b2a5013e2a66b011fa07519a7af7c4883cdbe93785b3e98593e98027eb76e812d2134cba94a63525431feb97c204fef8156ba0c01001552edc2d6fc44f107886acd43a27a20191e7768858a305eb96291ad4d89971ecc6ea35be943ac829fdf418c3f742364706100389328480c7af3d03810148710858add05aa2327ecab00002f990c6fed8289dedf5082fb59a819e8d9fe9ff55c0f4f2ea3157e20c50a9ce69e21bc8a6eccd58ae44a37c4c4aa92375a24fda7e188b64c2c85a9f04b848d09f945d506f286fcdf301096f274ccf47e87f33c8242dfc9a4c8fb05186f81aaf45288150f9c46b24faebb31e5d52bd7cf3495a3723834c8bcc51a60088ac3198441da5c504ec88b0e0e1a4fc74f92b78b4348683c39deafa96af310aea1abe05794cc56bbfa31d2302cd0202ff47d45ae4529233a4eddd33cd1e7b36f809509261381709d0541701e7457159c07837d16ae5d53af3254a27904621b3c86afe94bce4001bafac951876330892822f26ad40b4b1c41a560c3d151e99c7ced1c7a083358760bd3b25a8dcf4aaefc64cf69613b27dfb6ccb83d41320d39d020c3bdcb17a22501bb0e37eef6c4950d0d41830e9b501587b6759de55cb2903c8e31d2047d9e67a0e2ad5e7ad7f9469cab5c152a50380b5ca9fa9c5f94fd1b5b09bfdf44e9bff080c33da3245abcc09f8aa58c01f3eda05087ccc26a3b1dd6b6b199daa41c93c506b181d7af69781263ee8196cd6c8efb1fc44e66f68225506d9dfbb7c3127004422b6fc9de5207398d544f183cc6afce12fa79db7b15f9ec0283c08d7c21ee61e31adaef2eefe3ec0c28ef284b39be6467d761ea7ea13bd1f36f91715d495312c47be4c01499ea8405f0e7f70827239606df8b742f85f8362c4413732190bf21518a557c230d2a9bfb064c3482f040e8c7b800729addd8caaf78eea53f4d37404246cdbf65f45904922db7cf7bfdba89ff5765f6611abc8defbe0e67321397822efb75d66e127696b4224fa11f299398114f4018506cb945b78bd70994b0104923f8272972e89c2efd24a8f4cd30c1ac410c2b5601fda36413c78a7c213651d3e18cff1ad6be620ec4704382da823ec3c02f3ff933729ea7bf4bd63b8714cd1393e51eda6ea30cd68d3f710c5a6653609bda661293d0dc2c33d358a406edd416a8b00740549c43aebb429dd912e22c2154be34b69feed2caddfb81d8f94c6b1dc02f93e3ae8cc510c74454d35a8816e71b5ceaeb6a462886ddc0bb5cadf3b41030201c3e8238cdebe5463f00d43a61211e4efe3c5dad91b3da4bcd56daa5056fe6972fb6285f8fea5d0318bf4c5c888c1be8259bd97946ca88d4700c51e84dc055d0c474bcd77caaeb035255275f36e30ec9742cdb9420bbe5e0bdf1ef04fa0c2884a3738c98b2edcd51e7835468aa5da5e38c744fefc8a318e77e92011ed73b65e02e85cea33b9949dd7c184757a1126ebb37f63e8c573ff159b2892d7732001c9e53181ff17636c0080613a6a9a54356a76c16135f824beaac0710d6df584bd2f6cf328a481c81f199be225124e3dfde1c48a4d28ea4de1c7fa4a137828b494911ca1af192780ab1c8cfd50294203df5d18e0f5977f6f401d6c1ff66eae7c3636f1281276ebbdcbad162da9842a713064137461da8310f708573c9d00a2b5feb54d1d40ce5a82f82318734646d8cf2f8e23b02735ab59e49880ba066372062846b0f730361173607b2b0a4314030123d8c3f18dd35692139b4069e0e8358e40cd4a0f289c80dc9cde1d4eddaae89bb65d9ab79e72e4884017267a3a4334872ee15dea907fc90afc46f98cef2903027d8dc15d9f4d1819f761d4ca85d42d23e4a2c3cd8be0c81f0044e0cc97081e4b9049573fcc3778e154b7c5dcdcadd5ac585fe9c102c07c12504a248068a9426a927e8bbcc27ee659a3ae4ba90b46c9b59bbc53e684ffac81a8a00be526ee32ed1517e6da99ae1642f4c4ac4e02183724cfa4513debf2c89f6b4597d15499b5fc06e840de466026f8a0b5554e71c76b2aef08bfc6531e1d4407959dac79d38bb2e01828dc154255655b427a1955087b0d456fd35565210e591c8a803e1393041a9c5f6c8fa521e70c168aad38911aa31beb1697d1b4cbee5f38dffa79e1e37cc4a7f8cc87fb980ff521f001ddfd69005e3591b89a0364ad7c7a3a9f1702b5250d132897b0b795e6bc2785ede33ab9b8a5a271685db46d60715d5b746466fc858b163e8248307aaaab648ea949d67f83cb1b7d17d5bc101443e507848451a7ba3c962dfc069f317a1614c072e57f205346dcf5022cb1e2034cde885f65f545f53fa84c23474515965cfb09966ce42e14cb522a3f20e78c380b54e9c9c69f071d718c808fe1355cbc7500bf8bea0ade64849da7d752826542219f1c585aa8398c49622a809443d5cc8de8194715bf84aa83abcf88231b8e1104216b640def676ae88963f8da3f0bba372747c85a4fb4e5f2be0d86fe70db3a1b4afd77f06850d87c02d6a2a197c60698d8cc93316d4623279c62eb7f35afa5487d70c4d2ba2d2b96358a4491955eaf115169d5cdf56be3486ee33a36537f7fdd24894011df48b59ceaf43dd3a0f673dbae8b8e229664dcfe7dde11f308e04376def11e8c0ba2532cf3c8cd738c5e0ec7b0a4011594fc2b47eed8767b075b273c8dfb2f05939d42f29322a4150bfa04fe6b052a96394c9c00ec9fbb7f72587d794fabba67427af3230b92ed6e2be5714621712b003322cbb72434ac8bf73fd093ccebfcbcf74439495114ab809b1e9af0f64e26b4c934582a1afe18e6a93fa570a9dd00581ed9abfab917d1113e9bd58e630d868c9308468a423a678dffe5eff53309a7c4cfd1ec3dd3e9a89d2be67c62d66466839da1d62000ba5c1c9b07093545f3d79fefb917480f3df2aeee64e5c56c2367f10fb126b2e4d569c0a81e0c48c507f0c8825a6c3407a24ca84ef427cb29a80b20bbcc0bc1c8564af7e633418ba0523c1d7dae0433d2ab257d9c857575544f10b77eeed14d98ee737031ec09193ee88c91292fdb1a906fdc5c02e3a7099998e2681ebba29f5e34d14452f72523e837c4979fe6e085fc2894f8bdbb45acf1104383441476c87daf06cc98afe761a735107fac6dba1dd35222580d546fab490d661f98870ed5bcfaf071e721cb7f42c61ae105cc0b805b6f19b61d4228e5377798e365b8a10cbc40ef7c95fc296a9c99498afe530a2c866d5de715425b29257dffae391e36041d2462c14c15e45f0137f2ab599028a13bda2d3421f086dafba430345c9cfd570b618487a6b2bc0486666cd074e1671224eb44fd1e21e0c5aaea55f2bd44c1196eea237e4707744fe5f810c1c03a89d9137267c7cde25761f8461e30fa208533af7499f491bd4b19bc2367e5579bf3899595fa26c1128ceba10f3be2f60302e93c53f196fc31221ff01383da1e0075c9001c3388abd09fef09aebe17ba87eff0c817df33746b68276da5b01e20d4d8a8cb309685a39dc84afa1c493a9c705b425509d35e1a78e1307142fd9ae7b448483a935c13ccc9e52d6258465cde21bd5f85fa6839c56aa27533a1f247228eace1fda21451e18ef91e022b42d151f3771e7cefeeb860a1947d33e86f7a34e2aa32e6efdb1c32e69477f5a0b636471e8826998e95c3bbba2dbbee45fb3ed414134c890b995cf82ef1ca6064f126eedef6ed49c0a5273e18224407e447d1bb7d32b8dd4d2d6b299226ace362b7e65b68d2d5a57f376c455a20b9e93d2c79e428b388457765be4d5075710182021af5cf1a1f583c7b28ac4086c2480a0f4823bf98e97d4497ea4b55cfaa8468b13a2c4954d42e2c497e2d5cb509646fd57dd5ab6dcfe727ed8ac476650dc231e8ce0c9586ac1592cf4ab3886c851e3aa8508457a0a26e519523b5bbdb1cefb28113bae6b7a8f3780c375f2f65dcc094f6d58ff4f6cfc72807028b8cd3a8f11936cc80fe10a471dc74683c8de20b5bab282e4094e1752eeff7f32317506110475e6e1458e5c98a6d5e91462876856d94152078a833f524a6e5f90a874aab296f8a52027de512601e4c4c5074140494375f9608327d4c3e182f14bd97fc3ab785ceed677fd29980734e2964d9af56fdfcdb84150e52420a5db88a181273bf4cfffe4208539ce1ab12ccd24c95c6225fa58b877e5a3da006f648abcb550405b79591e2294fb3bb995ba8ab07228159e5b3654fcf49e7ab5ea4eb72d1a85e666710ca589d8ed3ce3fcdc9f7595b5f166f5b627f5515df2bd24adeefdc44c66c97510aadb74a6000c83619fc75d5b55261854e5aef5f0fa4cfdf397a3c0e37b3c454150832bf205f66c3f8f36724517d71aa53b7e1870c586c26b20c7582211d099fe2d0a2b38e1557490d1cbb45d853ff49431edcb865cbcf9d846cf0ccde6b74a73b54ab225212f00dc1b804de488e81c47ee4fb9062f2f4abebcbbf22dd11b77aebd33481fabbf94f698e39f363e3ee41178ad0e8c70d34b40744e60a37a0934a568a0093812c2053577009bc94c5a76a764935aa0c006e76d6fd9ce034b978078cc5ea411b0d179ed0f4189a238c15b72db8f79a41148e006f48b4d9bd34bc7c5c0ce459287326367c9aad177917d9ab6701e3d6602f0667241ce55bdf56ab5faa8ece246bfd94837de701e493350fa9d8498957552a512fb8e32bf96c4037a6addd795c522a279ba05ab13cd5115af606698d3d5e0188d50814a2e1a4845a9154848681e633172e574a3f4f054675d36232b6831b2a03112e56289e27faff9da11de7914781d2becf36cf07c440d7af37fada76edc2721bbbc1c84ed885ef5d8834137fe6cb7c5d4830c49c34bb9df7d592431c56e0e9746162e152c39922bc3a14b2c2e708ed97257f7bf5530ec0c8df82bf6cd0a75b748d33fa9612c82de288665a11c51f844597c3eb2e794b19e80f09a010abe63bc069ca3a2efdb543423ec6d9a7574f6d25f147e47619f66c6ca4382bf15816eb90485606aa30baf8481d32b32082305cd1813c078b35101ce85be09497a44fb3246cb6f6a95df82adfe342c99c3dc87ec02bdfad32f68c408e3060c03767e54ce6e000f8ed21096e560ebd3c4434e96fc86bbef9bcc2c62491a2951e154369d9f9789589da83f7896ecbb45a6e5a0e941ff5c3e810a3e3d11b43a0d14ee50a10b4be0a153a964f99f1a25fc53b08fe9832249d6a0a4855908f1009f084029298de4a66a2ba6211481cc32a556005e530f7e102611d0e07b2be30df9ebeab5b0488f9b006482cb2616b43091e13fa037417821cdd36bec563e0a5be47f9d4f6adfe322fca27bc58c4101924f7688d6ada8fe1d1f129e324b64c8f9805ffaf87514f20756a1df3c7b454475a0cdcd45b8df942206c9b0829e802d6940cf9c300813dce5a1763e7c2bd14b58c17777239134426b0572a8d873956dd7a02ae6f0437b8278188256256926f776e03f83461f945c6ab34598c5d8b49060d04a49d3ed2dda505889b61f4fc7afc5715137d77c6839d35c6902bf84a86e424a8973fce159b48c9e4669ecfa3c4d7110904c70583b00dac51cbb7c06944bcf4ae6e78f40f9b776d4512d3513ba5a521f0c8ce6f65368033642a1439183836f155746bc0fa6647b2a452c65ed626a3e91bd0086f2e4941f658281e7997cb9fe1391cd63ad41a94c523ff547fd65832fa6a21a354e3e6137e99768a69f9b7e3d4e640ddfc92e4ec7a297d08a9a030b115a932c69b261387f3a81970ed6700e44c12a97e422051510cfd88d6ffe678d5a3028916c4b1fd39164849d03ca60c07a12578bf4d5826f77526e3d38d5653ae3c31c3266c79ecf3919b9846712970a7a20c15eac29381312f96e49dfddb2772699ea694bacceb7a954aa798e92f1e7f5516f1886e839125f3be2d6a47a6162dbd14008bf4124773cdb20421c42c331dbaa66e92ad08cb28e7b49531cadbadba5c5266d15673b0d264767ed59417504b8f0ab38d2511a2cc0ae0f4c95fa70d1f6ca1e800c942b659906e673bc0d62c48d0f48293b8a46cccffecb4d685f34a4af2729858a6073b7e1670faba00999170606a37c4497ca6da0a4f1a1373f788f52002ebaea947a23bf3e0325c2519755260d70e9f5092e647aa37fa83dfc89ef9dc49e17bfce00fe5dde00448e9f8a61db3f4304250d471e40979d552cd4e5de9a803e48526b1ca30b08a1665991bbe24201690b18a9cbca730d674c3c309230a1f16b847e7397222ba5937909695221a5df4a78938bb4a5ccf5a9e2d025f48d1a99cde234eb3d1d6ccb9555ac951fdc670bb39b1bab230c0418b53f0fea774f8ca91a5b667d265b1aac7e01ddc5afe303f02560eed5cb1eabd2c6489b0440c208c086f4478f3e4207c4902d1e19983c63e0ac2403cd08677461e0fdab281f0dc13592de50abcbcb9bedad8870392285a6f612d44a7af59a8213b174133fc1a119c227401728ed04328558cbb97053e11aa08bd20dde1d6fac62ab27f110e23b8c8f0e9aa703a0dcb96fdb4d42fa8aa2ec49bcac13148d1f45c6dd7e48a4868b06d20437b6073c94c28201092c85d8c4a7529b25fcfa28166242081d5f67b6e0d12d6175a4c1611c3834c0276e5ee4d12cac0687f00700d34166e0670445af0a69e802d37eb773afe7b1c1980c5d2de13062fb0a0be361771e4f56ab6ba455f59295718f3531155b55763d3beb93bc4027d9ae3d6b0c16f253bd6c9861a9abff82067f6013797432001aae89d6e6cb51d56ff0252a9c18c00f296a9de23ad0fe6f1be0285fcaa48b1535da232b8675372ecb89ca659bf0db1ddb66cbab30e0c8beef06f46fa2762cb02bde94741d2e2cb69c852c7f7e5cc3d4dbcb39c4843c08791d51443e92f61640f36051f34cd87e3e548a14950e08eb48acbce898a64721a11458557f2e524c46e2cab1e7c2d864f28d8ecf1c9a967aeaa5b0b4382c1cfb7af7e10f2ddad3222540cd2a01c7d6e306839fec602aa8890c12b433d256927e91ffaaa9365413097ad5559d04928c11310466da7ea48d6bcec80a05a92dbc67e4e52c29446bb070f6a4e066258ff595657a9c303efef3de3243053a48c1371d64ff93141feaa8c7cd04a9a918a292dca944a5bd2c323f7a198752666adeda090651ddc8f88325917a797c12884050c0acc2c2d6a6471e3db873cd8c76b27104192f00a055a4742b4f2c7de5e321f00eb1fd85c3b8698dd901f57cab3a66d98efe75446c4e72e14cdbd8df8da9cc3bf88502edb1dcd4a96b6bad8141129877162962ab19ecd2a077c2dc34e8446f7b51a781f7597138b88b8e0497e7206b6a3e6f2bdb6b2727be5bafb4852c87a5087cc3bdbe38a99aa189609795c0b9062383eee44b82a1d86aa90c79cbac395eddc0ac4886f2c1c242f2724f97906f0e82d98fe8e0d3359a8aa0dddc703922f81907cc807ecc3340ce7a6e2f4fb32435f5ffa634e1c91e2c12791838fbf9cdef000d20fde9045a0c50b4e773582dc1110c13391b4f95307c8432a89ae1aa1f9f19bcb3feab553dd363640cb41d08a200b756110e721340704099b4a52a2c5f34d5ae521253be3c7cdfad70f233a289f0785a6a5edbfd4418ec84a82c63df861341585090356581d4363e1f660a25824a5b33446b8276d91c58cd4700897fccb3f15018a49849ac4492ed8f0bd97923a87a9235b5a4b57e720181df13feca04922006a8532252a1c7672b749ae1c35db1eee72e2b075f2a311438d862a44d7eca3e30f8200e6f39cf1130e061d631a1fcfdcc10ab51c0ce0534c8b364597115b8bc7e96b9c2bd010344f153cb02046aed97b89854faabc3cdf4d48454e4a325ba91a1496e4cb344cccc8ea0e6426f1ab7d8be184dac446d7a285769786f5f6a8faa17430e0517c94b25523789a1aab5f1b1d90653ca0b158d09e482cdae96aab2283075d7c35b73692ae32a7723120046457e7b829fd06768f1ab80176bd45743805c28136002d37efe04124228042c6feede481e127287bbdd56cf47d226e9ab858299e120045838594f12088c394a5046cb005892961eea9126e19b0bbdc88cf5cc7fcb2e45f0c8d8bf5799748a00559f829654601dd5b206247c364c17973dfa9b516d198591417681a1659c5ed175814f85c21c51e8f7d0f230aacda03d21c72d231e586b83ac6c5328118bf29a677789f903a20f00ce04d079f8c4b99adbdcbeb1e52fe183e156537cf8f90a9cfd88d1916ffa296e092faaefd74cdfe52264d8a67bb3b27f0ef66ee71bb9cb14613a5e5e9520629b1e4dd216eeb7bf5002b0c07b6c7d016dcb05094ceb47883aed56f0e96c2b1009c89188cb30ec220cf15a1dd0a024594b0c3004dd9bc71270b4995fd81380756a0c16b98bb0c719734c7b44d9c0a13e70a1f03b8b9700255b7f6f5b48dbf762954ff4cc493eed368dc6c74969a413296039f5862bb37d6a7d44672e8212bbfce413bdd391a9078e0424805685b4a521eb53d8b1a8b7374c87bda3e4735e0e04c155a372acab27d7e7a65ad2cdd3827fc29425d3a3208e6db33638cd52526131e872028ee7f461ab0a557e31bd69685bda07835cda2ac5e974083304e0a468081f1b56bea382ede71ef255e6f1e08bb7ad36b3eaebca2e0c6c1df8faf1d7a9e4560e86fcaad5ea9253259787acd6d2d770dafa3b7e5602bc6710fc8b95757bae11e9741ff8f76b4e9657ee492b8808a91609dd3ff038907e248352d7d2ca5e9a3aca3a9afd9e7eedd10adb88b0e4ee66b2260197d0e29ee8ac36b6293a17b7dd641f771763269c9097a34a4513af9b466338c5d4ce6d36db392cf59daec2f447eab7a3eff3edb286a3c772413d8cc4b6212e370e879315990862e3faf9ce969b0558fd54d4cf725c9c69b4168b3710bd77f85504416b42cd0b5906d97c5c141fb22d909fbb5f5bcc6e84898f28f182b96273e9ad67645bbcdeb096dafa41dac7494b90ec433d98a3f6e4190937b15a07ec5d868ae5b5148db94b07a8f36d5ac2aaf550af9f89e99a24ab1a4a08e7cec7145414e1081b6ebb6913ce1e42e44916aa931309fc32887aa7558dcfe1a429e908bb6732b2baae18fa818e297d2663295fbb79217ea7f43001892077d3be834ddc0c9ee85264058ab2ddb1344fc862178c34ae63227a0c886fc5bc3bfbe1cfe5059b7882f43fbc0d92cc5467b5e079597b841bd099a73b5d8ea764892a48193cb255c26da9124af2856d36c887f56fb63572f72424e49c7224600a8e3176bd7e060885aea54ee68e8c666940943e551d79e13d8498b4653cb48cdf9a8f8c26359ba2a1b94cc17682b4817d7f7f940941c807040a15d7780bda8ab547cdc0fb7b0bd206c8d57a0028867de61d687c10e3e49c9bf3ad4dbd0ebe6d09df24eedc30927726efe1e4e96920a2ab331fa7defbcd99ccc825aadb527789ac6c9d8f902932bbe0a7d6d1dad3ce66a04b6beafc45c74d9b9cdff64c86d9b50bbf220b7b6cc125d42f2fcf0835c802b7a72293a3563f1fb5c3c98cee4134859c15954e36171c6643c4969cd03567dd317427deb3ae67bdf86cd86d3bd6b338bfbd8a1345036d60c45a08911fdab835ae98906ccfc7609a5a1862a78eea7ddc1b758a54ea8c5e6a0db9d6b575171e8d18d8e4339fd1bbf472a3e458dd9424dd211e83172fcb02697fe91ccac6f2c41c397e195fd5b52caf9d9dc26abc2cc50207285d90d1bf384f0ab752be76eb62806f68de136e0ba1c9e941d1a1a79d709a01b42fba7573fb9b1ddee2426cba904acab90453902998cff41f1aa0443e6c95e3478389682a34166a79ec0113a17648f084e38880c901a0ea1b4c0de91be3c1be0b8d92d9c4c55f3f2dfb923059a247492a4866df1e51e7e706e42839d1378426af8851a51c74d621f8036b07037e6efa94d5d9ebeb9da797b7813ce15dcafeaeb38398be465c4b0aea93d64a8e9567b1efd1c428f05845a4ded3ab1938c3fa7b334e06e82b907ddc18686e9579508abaab23cf3708316070626f8bc32a72f614b2815b897b7b259e70407a817be4c3dd8f5d89aded8a8551bb52123bb52a5fd43e6e4a0daea06c4c000bf168b073b68c011b349dbc3e438ecf8e6ea4a30595938038653ca5aa6ca6abd6f2466bf006ae5fb013f939076a17a475a49dc792f4922922f81470d4af5868772caf9f7fb27c3089bb11adcc384e01b83e62e454659e5a58906b1bf6713eea2744a86519c1ac7d63675908be07cc7e6adb42529adcb8b93d4e82eed8eb9cf36d6c759ca7ce5d1098016815f6fe61dc1d8a47b0161680f9242a2f74abfeeb0505226f1b1de8072cc015746d208768bc4b5543440ff1f3b5d5f311255a1acba86dc5b5e2e1d3a6a585d7a2ed255e1c21a57428d30922a4232531f2a28adb60aa9956c50f2861b5d2fb22a4089edeb676cb1f7e1567ebaf45ef397ae5c1956459ddf2a0b03c9f56a05ab52d8da0d6e3def5b4611aae8f75265cde2933124c5f74119d3d1ac7e7aa71a3722660ae68e4ff5d2e2210e66a69ca2854adefc92037379c93111d75622afb79a40849eacf8d5b0cf9a9a894bacb97192e19962e3e8e22c8512807b00a34d34b175aa93937fcd75bef76f861a6aefa71de836971f5ca44eed84e22438f22b172427ec067f06e699709801668b99bb196876fbc4ea2517849b0a5452c6f6d734a54c7f57fac7bbf53bc3f3299e52f6c27895c534ccbacacaff869a0a3cfdfbd8733c213159d26d0d91b3bfdc78df04b428af09f471b48fb10d582553af37c9f6e04615309ba34071e62d55c9eaa51f1305a8ea210a6c029301281058a0d12b071b4876b9f766839c98e7c4fb8c9471102c89ccb7d36cc14d663ac0ff9c8163a893ab5ce62662f9181473b4a79f0e5669baf127a4ac784e2e7df6430ce602e599a3cee8fbee4f3c82d4ba260f31aa18f6a9f5111577378076798bc3b7527990e9ac51ad939cb85d2046e0739e5f379a58f86bbf1a764410428e1324946232bd850ff4f808887f12d2e4ffcc89dfe54444c70bf48d9733b1a0684bd5a67fc773c304868be8a3eff6ac07a3bacda89f8820cac135a6ec44b03c0a016a30954fc67624077c14de9e80680d304dedfe2c8b47a81d31fa64d0d70714038fe2e8f0b8a8b0dbbbd8aef0ed0a293712e1e6d14cc58412f68ef4c2b655c9a7bc14562d6f1ebd4a5e3e2951f3e216eeb6dd376781befee6d48ae2fbd05a68a13da396e398bcfd45ce3fb1bfe2161a305495f31dabebe469ea0db95875ebf487f90f5a3e4708868d67c52db30b10cb39de1608e58d8309fa76046aeb25939abce8368905c111ef363f1cc7fe4ec9bec27ca01fb8dcf0c0c759ac73e2c3cfb20615f49df11a3086f54bd1b4f94e068a30eeffc92e71e78dc9d47600fe514b9bc94a9cc7240a0b525bf44331122f0df58a24acad8df1685c0917a85b5c0fa7c6b7c9d311cfa5ef8ab69c629ca52a9608fb5ec583b40d1744e040023e8dc9e41db7e273472f13771fa58cdea7e45c4d7883fa1f15aef844bb776b17f083fd1023925fbb0e5f1061d759b528ffc3ebc72e276b4d13123a6ac206394e6b6d25d003f3eaeb4522cd5d718522b55fcad04c88dc8b7fe6ef6f7d414dd878aaec8a7a59fe27f0d8a31cc623fe90c9fdbb1286dfc68cc290a03950747f1ac8f0fa1f66a9228ad4bb2d3ec2079172621b374334d9a5017416648d9304919c986dc48764f05e11d024be8b190f2744be278a68fae4c28ae2b032cd95202bb002e4926d122be6d8b7086c6c8d1aafa16bf30be6c78f917cc782671111a6fbcfab932dbe9059654803dab42077d095d15d1ba575c4ff76136b1abc5e59157437df0a9ece45089ca8574c5a1289266f4dc45bbae029262f38ae6b6b436b6e5574cf80eb4932f240b1b225234a59db481eebb71748a1ebab0567a8841988d6e29183cc76d7bfbf62f6c94521b3ce58faf2a3544d4a8de8bc5534d39e92efc80111708a3fea1b44ba05d9e7699e32f54c0a97247e5ab31f4857eaf1a31dc5612cf461198117c914c4a9f24cc0d203ab36491435742da0929b89a2dc89571bee102c5a74b3f96635612c8b677da2708abee33d1979f1f9cd2de4b06afdc00f50ff35a07fa79ce49349d34f3146cc58468cbd2036642b8f91b73e18c557da895b16eb5c933cb019b88e07b12ed3b2905cda37b6d0b7dc5dbb865a20b6a035f65ebb4c64b173e9fdec01df7f9dbce3f8a5027a56447020eb13cec6279e307e3a9f2cab090386a2ae03392b666a752487fc5acbdf7950e81be9ce45b81966e46abf4edc24b838c85766c52cb1b2965ae7d64af2d9a4f7c0c8b4c488212c3abc00b1b0634492dd9036e397cd52c34ff4ca58fb8f013e4ed690cf33597a582c5165198524dab2296707a40f64579b300b8bbfd3129118238d1a23c43863cc966ce3721199cdd1f080608f3976bb129ca6c2b224426002b6a25ec3e026874c62218c8747dd8c945fd2ba3c5e2842cbb015e8312e11d063362eb1aa0fddb0095a093028caeb147c526ab0c2f26ee67e83cdcb985c006172c17354dac966bf01e3c6dbaf740a162a07e25d936331260c1fbccda277920f27705efd2f27aeceb8b24698d607fc038c95027a33966e5c30503a4a734a6b13fff7d585d9e1ca4d669285b5f5e7df52c3032c890fbc0cdf67a1600ff0f6c619178de3c74cbe25e18006050004628d4b90aa3ec9dc11ce3b24db15f842834e407944722ddf672107fe6f6b5b6bdd849a0809d9013e075d068006d3e6c6358e703f1d521507cbbb6cb1bc0da7038334b91df552e8d6c8918de4a871f9dcd3b2658dc30075a8503cad99566d908494e035dd93e9f27d01a8f38a6cfe9b6bd8f8093757d24bb8a75be30a01026f0d81fff254b0feee1196d6cb27bc9fe3119697e7bdc64b96a4b7b9362ee996f053e916bd37b4c9275c1bcf11cb9b604d0e8775d2e6039ea744fa062d8b5acfae75ed9670ad779b7bba376cdc1c71c37792b6edc8eb9c4c146cb2cec226ebf0b42cfcacc4cf54a31fbfbc0358170ff86af040c178edb9462dbddeb81d14bbfff041eb656c963a4f08e2c4d3aadd5c03bf22a8f3ba409cf8778b687c33cf94e6b9d63c9b74683cbf618038f11ac9812d09281aaf31d1580771666c981c39f27c905e1e79edb024656cd6fe2c4a6b3599a4d4ae911c58662339f2bba5cb233f9fada79e06447b9787d23a0c709a4c47a172ea09411d185e17a8436bcc9b6b7d57a8d6d705c7472fac1c587b369203974e7a4e35d69e23ce56b52687e39d6e3eb4f394e63644c3da61803a361cce7bcc4f079c6af17b181ce3cd4672e079d2cd74b3f3d6a3174f05cd8a47524a2965f4e21dc0923e247891c8dc4d8642f8659982dd50135a8cb01bda010ef03b723b10e070bca71c0e266a7e47f81d4e813ab28c3051944018053fb882502010cef008ead014018c1f18a9de5f18a8e354efade468858131638c2c51a6085d19c2cf08e77744c281134d4051a2caad05bf36c2ef075038b1841255ee2e2830445754b98f7287c14710e75dde8ca2f0ba0b85600e628c14eaf4dddd5341eb546edb21f2b339c0a72994cf92c80f7cc72279cbba5490f8600f9c80fb5f4001bd30c2107ad10543699dcab24ef5b61d223ff2d61bc943f2de3486a0aa9caa0a92f81caf074ec0efaffb7d496549a54c3b3099eedcf341075007773ef0224a1744149180522a042f846013d0075f7ad085900fef4b971bfc34b70593ecbd77fc2eca08f76d0e05b7d3627bb80ba0a7ea2f59b06342042d5f90e0e2888b3030094803580358835411a9d4152ea2b061064a986a0d174a50275174d1440c2aa200820808d59545155eb6b8302f4f5c5e9aa85e8c2079a1a2798942237475019518c21421d8002e61f202745dd7759d70c0a28b1977e8a6cb0f35bad440e388842d37a7a73358b6211c31842b56a812282e94601bd80d711184f3535b143729dc3939dea41680514337586e6eb41aa7e39400e3640a2310a1080860a8fa364ee74638e4e024cb93265654455240266a3e860fe7e89cf7df3c486b8cd72a852ad852a0115ec478090395682f637801630616b46232a5529088c7a4310cc39e6da48ee5fe5e013cff50d7b3d63a7b3b52ac2027604aa725234e5f4ad51ad5140e51df33854a8e682b43e8b8d3381d77c2ef908a1084d8a208e8021b28a558088108280485544cc06e688ba02d74c0b93e063247a3a074a929d5c11854076f1a05354aa78bf43d1954f7e7e0162615984ca915a452a9bef97dd2076360e7f37bfda6c5454947862a7df7d8393cd98dd313b5ef70ec7857410411448428905db2a8c2e5b86778d997d7bd9ce81c6c15da39d887cec18e0fa660d2500404795dd7b5037c996a4d16599c788f32dea050e0210b26f0b348824924c14d1652b258fde09a01c5210833c42811833126f8a1c1154160e1820d0729b22656ac7831224a123efc50610516396051028a05932c94401204818bd1111cc165c60e160e0be8420431e0220545d8c0431541f8128430e00e9004586881c596f86827f01e758e050771720fc42de4e3b86314d4d98eaa4861c41150942851f50f75e03d45c0a94c10a7efa3ea77a77a5498426032a544904a3d08058b2430dc0105510769e485d197251007f8c4c80a23299cc02632d5b21bc64827a513d650217643464f4026b5b11b32fa01cea854e7b8db00a190cad1463ee82d464536463a9070065ab1086930aa015c6224035cb15bbf8227b09a6a8d490bac50e7af39acfaa8dfa0aa00ea439dfaaecb4809beaeeb32712982380e53f873c511bea20b04b2c28b155ae0fc149d4d1c392aa3871e7880428331b88ce961cb98cf39b1694d5a33e79c938a2349451829315b73d93ae79c404f5e2d6bb2227dbcbb75ce392717257872a9014febd62adf2b89c5cae1b2f2450ba6380214490441851545564841235462c51488e3a8f50400413cc1c1ca8b2a64dca0b2b67001e2f2640c15679cd1f28c48450d4bcad822e68632c4dcc06e680b165bb61c810c08c9c8996e898b5e573442c5b01bda5284b76081380ecf39066a8a26a66002e7a76c30896132559c954cae083f348ec3d7144234ce55b1e584ca1434c060da4b1861740ce3483a0cc3300cc330eca2d891f860ea4c92de1ad8b21f2184ef88c407c3f8ebf218866118866118263f2f6af38bf16ebba23c121f1c0febf5660f4010420b10e6210512b8df00224be08602f717353ba30b40a9f37fc80dc10846b51ad045cd7f53f808df4da3fae1eea2f6bba3119906db0e817f179a326879628d971b10f97edffc2e4fff042f101fec839f3d01e9bfbffb606887f0c05b9e78685f8c7de8da27be3e238ab5925240018a58047fb9e6fd587333fdf5de86c86724adb71deb35f2f48f063b8d3d6199cbd6cfd84cdf97b1a720f2f5f2f59eac9f82908e9d74ecd8f57ee93cba6449d68647bbb5518f07bb144bc8c57405a526d34d1531dedc74ce8cdaa5591e50b35786f1e8c6eeb69dbf67d3d42828467d157bfd03afdd6d3ba4cb47a9367f59d79bd7a58d6200a5d9c80dbd3effec7cf3bd77d1c7988fe3279dc7a60eed9dc425e5ac2b9a0e8b744358e7147e376018f507d4a1b45693e98715cbfbe14d7942e0b77a4011143fa4809fd6bd55e7e8b080a292ea9edfea07c4e9535aabc994fd26bbac760de0872b7e3266b1efb6f75f94ce89af66d7accdbb3d11cfde7ccc69f37e70673649a3fa9812dc74ca7973bc6c3ebe24b5ac30b85d0083fbeec95087a3af61511dcc602907db5148cd8c66e63a88635d8f10f7e3d537d528d47c168e6e0796d5ed88d88aa66dc7da4eb71f0e6f974278599bae691d9bc681359d63f3ea76b4f58e30b5ea76381c0fc5d46c83e15f88f0db359b2bd67ed9ec02be6ad5707756edc332367b5aa5a5cdf2809bcdde765eb359c316cc1e371f59766b1ad5fdd8037d504adbb2ee26927ae6f086b2228e8b73bf8a148172d937aa29c48937f1d634caa6518d8aa2bee7540aead0c671cf3a1c97f80a14794da0ad9130320123cb910e60200146134cc697304638b3ae5bd78310c278730ac77bdd37371fd1e1e8f07b3cea9cf807abf341310a0e0711286a765d344069ada6a38a409dd89a114acb8b7444f8a270f16eac77775bf096b4720a5a9742787353d4dd2d8bdc5d969752de688fb83137f8bd6fb0bb3cade386dcdbd2a8f241916d07080f8a95b76db71366680c19e0ace59d45c59faaa3512f87961a9fbdd71a18b06b9f78d4a8e6012776d71a6525aa73b20f862f448cca368d251b83073cb11b1ae309ee6b46103386108d832a47ac7580a461d4aaa1024f0549812c2b59518baf1fbc957ba01146a082dd90184e7002b01b12e304f8029d6309610969b4a1ba46c129e78d378b1672a9f1f2d2314598080b9df35478581e0462fc80e385a4c85c679976b1d6304845c59e358cdd8045a8bd429f56999148f7d4427f7b04fadb7db06633c51a0c998659cfac0fc6ac539b9d9659f320938c27660e5e240f6f3b479ecd32f8edd90d1b6fc3c6d758684978b460b2e0f95310f87978f3759bcf9d530d87831e42ac3ec35f5ff01c02c3056b9ab5ed9c0eade9d1969cc3d1db90ebf0ef6edae6639e845f9684cf581eed33af366bafafa9390d7b3add611ba732a7f674fa8d3b9c416bf3cc9e8268b7b9769b7b3add1e3e98c64f416e5ce6372e438486a702720e0139de3acdafebfa0d4be3362c8d9b6c26fd7a0dcb33f368af9370b3f68b86adb9378d92a7b114e2c8cf589eeb3215b33a1a255fb23ca4eb1aa57db3d9076b575e97beb71e580633cc66d9b1230cb32f60efb1706684e13df2c6c0631e30e11e13861f022366c2791e0d690f7ae77b23391cf2d1760e10d478129c5c74e83099fa3584b09f84f0590f4208613784f0c107e1160cdf03e18b0f085fa2911cee73d2eeec7364e279192ccbca607cdbfce47c7dc4513c8a5ec4232ca3c42f2e7a412d0943b40f4ab745e9e56111b87ca185956f7bea3f28f80de179186f1569543c0f7839243afa5a8bcc754ebfb993b9adc7c3f49e80d0c7fb883962087d30b40efbc8f79a8843ef0f0abeaa66fb98add1d25ff63dcb7ed94b9b1db3f59a6dd2dd6bb6ec5916ef150f619178f8830c3862f2d715652036b1edf28a3396a294b9794619a39432ca98df0f3867ef699eed32606933c4453a277b8c8f076bfbcb1e7c9e9762f0f634bd3d8de7ed89df2ea1e04c3edbfe3421f304245e0e89972f226f41c1b947cad2f38352da7c58db49db102dca67b174734fdf9313357bdb6f9b8f781eab742d46f9d27b91ec0d5978c628e3dcb2282f371f567445b23fd2dbac3f6bbb3cf1d9adf9d7e4a920e3cdeffabbd971c1f2d9e5b9defb75f39350a78164b9079ee6b7265cf076b3cb5fc7ace3a259995decd13af66be78282a975125b785a87638cc7d39291c20a851058c3d6a18c12c697308808e3070c2e61f08033acfd0867a51bb7a3de2d916d70a4109f17706d0d6566c2312bffecf5cddeb865fb17f80925645aa109cf326dce397b5ab33c2597cda969367f99762f9e0adbdf7c29bb7673e3d2b39bdb7a398563599665d920e192e996754d9767be74ebd964dde79344429963c0d6e5858f6270eef7344f8dcb802d380f1bfe45302d678d79987b840437fbc85ff6f4449d7798ba539087e565682d462aa69b773227c19710cbea67b7f0654929fd952cd055259f242b946e922af449aa5c2fbd2f37218e14647bbd3cd6b7e3ecb28f06c94e2f8ff5ec9776acb2926047ca3e41e0330cb3a727aa7587e9b71dea6e4fe379048e19730a824f413418b1380c5447b4e40b7e87cf4a998bdb4ec39ef62165c44970e7e81a25e3ede9fec95cc35bd8adc36d0892ec6539622ab721d713120f89946419a3c5982f1defe6c3babc75f33bbc2e5287e31dfa90ca21958a505c4ece70ae7404190eac244103a52584e00a11d99b38d7588233c49cb143ec61091d03253e8925b081ddd01820c6acac641ea8afba439acd0f7177f7dd0c2f121fdc59f0f549b404093c4f7bc03710785dcf10f779f32584de9cdddd2745e283e19b092320278d9ad80d9911063be71e2dad5aa6d94de66619b04cb4a6f8be49faf1a2a2833826149eaa969179f6b4be645434f6e1a6294115797411c499bfee1533ba603724e60a3e007643661481fb4ae738221ab2e015e23b9e600a9ebf74eaf5d7537aca0902f1fd16e2057aaaf77e0b3f4c18a07a077a2afad2af34caea38e28c708fc4325947cdb3cbc64b73504703b4cba9a8beb78238733ecba6e6361f3237379639cd359bdd100c3f925461a11f6f92f8be4520ce7c927ee178e67a765beacc3de286b076a7729d42765a649c2a5aa7d268ec91996754c63a99d7d8230fcfdc9266b3ab641f8ed779747669d196a06a214f09ee91f8ba3d74a573b4cf37129d43f3f91eea9c9acff7142a9d23f3f916ea9c99cf679aa5f1cbd6cbd846a251f33343789ec612789e060b9eafe92cb8c63e4c631f9eb10fcbd4db571a355fd25ce7ec5c3105f5e1dc4019a6451454ada857bd6a282b3c8b1a35a188516aeed515a8f3ba74b982e7bb08eabc307f61f0ec223cdf4078be81dac97b3447bb52e8afc33061c4c4d8fdeb1d4d50f3eb82e75f97cef932efb25f8fbd42f6ebb45700ba0afb75ad57d876ae175880b76e92240f08e2ccc3007126148833ff42049cea298138f34722e054d9b1e7b7c2ee5471fe14455565f3595b48ede9bafc533d7bba6e4fc1f3710ac471aa0dde7765caac4e9559d2314be427862a2cbc638f014b0cef3e2c10679eaeeb1405e96ef7698138f3f961c1f3a7a26add9376a7b22eef49bb2722d623e054d65b782af9a792cfeee9c2eee9ba2708f4e35b7887f969792ab711f98987fdd7b3678d50e6ba1b42189df45ba28959e1ace11603856237240648cc940894b9cee28fbcfb02108c088e7fe1479e0c5926816f641f2070fcbb02c7ebecc35aa33a08477082df9d161d80423c748736cb3b78276f4e72828fd83994832270ae5f63c9508db2b915299c104278a98c7227ebd83146d87ff1b0ad0d6c089f938d9227c8ac7c0c4d5a4de7c85cc26ce6f2ceeda8275dec661396249b29269d0724d92c839148a779a9741eb064654eb20ed3689ac3da79342ca3661496a7cf413a7679140a9d53ba7c4aa2b0cfd8d828ec32b6a651d8abbdc381bd846916fbdb76b24b6f3076ad4b6af006f5dd5ce3fb147b8ef623ca1cd4794a523af010b76346d34dcf7a6ec77338dedd97d49c4a758e3cad3d9a94d2d215ac0a756026dfb36e65961639708379de1b0c785473d568a832ce08cba8b91a49e158df393d77382e3a72419bb627530ce58dd0052b228696e2671b5bb6a651f22971a1a7752a8c4ddf3535ca8c9a5f54d4a59fb91f9d13ef7befbd674447362d0fa3ea427c51031ab5f5a0f8f1e070f421984849cf9448910a748e2b955828f28834ca85f730a988d2676ac08fed664ab59b6bcd6e3699b09bffeb6614ce287a736af69562bd371daa2a10c83bbc3a1ad5f7c13ce03e04536b4c61f014f58568823a4fd53710429f69d3a89ecf41924947e7505aab099b8422bcb0942106cb48a9e5818fe7899f07b2f5889f385e032c8f4675e790a2bca5b91df24132aac3f4f2d3072f405a78cded40f2b0f517e127a59ff4c15bd66287d8af6bbec7c2d70b18fd35ef3607f8a010bff5c0b61f3c32ed6d3de0e5258c9adc9cc391496f0788c351655109fe586e17bdb2ec9aa5b686ce7ee744787b246eda3ea4d767944a37d75583afcb065ff9f8bae2ad6bf6e444d57efd954a2412e96ef60ec7bb462d86dfd60352ab7b8bf03a5195c12658bff8dec32cf69b9485d9232eb3e0e5cda9674123d479071f1f8f732abec66e8ff461fd0803ac172b0752585e9e78a998ac0608c95eb7e99ceb5656d339340b863f05b9fe7a98af67faace6cee1a0a1b135365f9fc9d769195f307c4d195cb24cb3b934baed58bfecf61aed34a59b0504614dacf0700083dc0da0589d8274b02ae38b215636e80a1190b1a2e28cd50941545e15631c0fde0c4e8b3156ef060f082e589982ae5889b17a3abca11ebc29aa4803040dad9e95205639364145505657084c30031564996187148ca08bc70223701035f8f2927063b8302f0b018274c8020ba11374c40acc8a84a01d566f891dac7428e00aea811bc20f3fab17c6e381153358c9d05021c868e5041940acb2ac1e14c56acb08564558e5107104392f2a58d9c0c4ca84201f8e5635414d2eab66ce2925d861ce29054f221d80201305a8413100f2b2723f704c1c0105ee8c558d20222836e0206420440f2b1a8405976703b7c509564fe89580a68a32563b829a7054ac6e9094201f6cb1c2618ac09a3cac32e776b40d99cb5d1cff2c80dbe2d21d7ef7391c3142274b6047f4640ace811d110e51b0db805817551d03b201103df9827b1a1f9918090a02084095bf197cf0a6c2f75494ce795d170075fea78ab45e5770abd422a5654929a594524ab7d97a2d598f877f9a734e7ac29c534c6682044aa82edaf06893e9547faac8cbe42a53a7009f355bf3447d37d081a1830e3ae85470ef00983a1c4c6a4e498937dcd016598f876d5437b31e0f9b2a3c8dac0609632e76444f72809d0999738eca3c008a2e8d72133ba22743f86105686f45f4e4caebaca73676444f78803a3f5562ae305a899fcb898d7a31de535ff7b0c44ee48feb1460ae514a29e5ed4be323189694525e231aee231163d470945066b02f8dda7710e7645dca459597f61735343332d5c5acd69f2a0d6f7a52ba6fa9bef78e8c545da4d87a0ed5cf3e58ca3c8fdeaafc4f1518ff83165f9da86f7347356b4cdf95120fa1dbb2fa1e643d1ec664b2abbaf8e4073ba2272b6c00ec889c40816b4c8d92f639d48b187706dd6b29960fad0ee2e488f309de8a354c845418d9aca4acfe54719d42ffa78a7b770ac864aceece823794760e67323d16de75f5a7ca3b93abaae4783866efddbd0886cbd182003fec3a5a523e8bdb0f87b37c0f071d7770043635eabdd7908bbb444d781063941651932f444dc460d3e310996b08816410a72523ec0d5447840314a1bbaeb5c66403a7108e45c40e92d224a8c90e404c9e3c39e249110b8ae8022607354c13a01a065b61d870030d4464d1e50622ac80054510bac14b1853886ed88233ec886ef0810d923822953ac2643a22de2e1922a26108a809184618020206433cf1048c24ae207e20ba6105446508484810828698a14a194d7a38baa1881a442222a01100e91085886c20b261881d0039a922343306c723f89082412a657a81c9442595a26232516901119328443558618112444c8456d082016047c4040a6c6147c4a407a62926931415a8e06708182b3f9881083990710315fdc209510d4af0851d510d5490a0821dd10c3f385322255cb0fb81062714bf927b4928c4c136b7099197a7df497c54546e2dfcb84ec131b98a421c880db96ee5c9ae51358d72f1d2e71a7535c492b99b1d53a3a2566b32ccca52f6c1efc9f7fb00e9ae51dbdf26440ac18ebdf001fa1e999784946eee0ba9a5f736a4747d30b65dc61e3901f3908e9c8049b72c0f7687b11bb3d634fbfe2cd52ae93c9a0b76d8e17ee634baedc8b8d043e33cfa7a37f6c743a3a2342a0ad12811bc21a1986f8696c0124f50a3e0f8774588084a1f940b6f2eb71d12ee3a47ca4c6f43ae0ca3b7e67791f8e01af4b574ecbd44b4440c764433f060c28e48c9174cb4c409b6811dd19228187b9661da0ddd86f4ebcdf4d6d34d0876733f632fbd84c467488d632fd9e76403f25ee366ecde342a92609f9246c5d3b00fc8be1f20ea059e90121c9b5c35f307d439fdd339bd83d194681a33f950f3137a485cc1ec8ccdb2b7b5501a3366cc18150f88a3e3460ca2a2a229d20a449d18649879cd691cd4a9b94a664e737f985c45f39ac7a36afa34d6750a7d298fcc7b838053cd5cd729983621ef360fd62fbd84dd2cf377a3cc9dd104359b70fc91fd803a4fa81df6d2ebf3bbd228211d2af67e2dd99ec658e3f74744e7f413823a5115ffb6578a3cd83721d8ad8da28fa677e5093d22de8b51aad08f3f20f613126a6ca45f7ae6b67acc7ec01ae9f7ab0d0231f6923552c2fe4a24d2cdc0c39bf6b8ed68ed328b5d6e3b58f7755df40fd32bbf09690bcb572403f421c11a45593ccf3c0f7ce4991f922f1b830cf4d8af6d27fbac805d25f4d7fd6172d57577b35349ebaa9c823cdc7f99c7b262b4ac539007a18fecae81f5fa7891f8e0edf19addde98cd4930f6de7af40aa5e7cf6d88f5cef06ecb504ad729f493942e83eb1448779d827c7f6e42eacdceda84641f5c6f76878798b30e97ac5391ec907877b3fcc3d2fa60cd3a9c6141dc4d826112f7cc619b90fe75692fe12febe694592eb1def4a26ffb70adb78599c7307378a4943e4f7a9c935e9e7aec73d638abd09c0493ee7a8513bd2fb440f3d25b9839cd4b3786d2696e0c349f790c49686e95fad2676e152aa46f3dab32df64b4cb5c9e79ed3cbad25a4fb1d7cb338f9d66e7d1745a874976d3321b041e0b96aba8142cf785490e32a5484400000000d314002028140a08c542a15044222afd14800a959248684693c72241108328886110884118c030001000002084286594a1980345ad38bd8a1a774920ed400be215c45461f10a1bc5916adcbad682305c9213691cef4878726d074fa2e1aeb56097851a38494edc38de21391cb8162c66718318d286a3751650754954bc71dc91389cb85418b3104fc5712a8eb98263161dc6906ed0acaf825d166ae0263971e378878487eb108f349aee2f54a4446f77544c67319d0ab416d22a986ecaf90a5ae398414288532141249ab75fb748839b94a8c59d0a8ee92467477116761c47a2d1d6a7bb72ab9c12f9a12923bb6416ad59614dc5eb57b4aac2f50a581114fe0f840d9895c4950794cb986909df8e7cb771884ff286ebb0220d5167e33dc9cf8d433c6934bb0e2b1231dbdd5b08362d89b3c5af38b10a0e63489aee3a15b85b20b74507070911adbd2aa059188d85edd1489cdaf80a88a9e0384eba8d6e8d6a12b163cf02d02c088b8e2487b3111e29341a071592885dd476499dae712c96264e728deea26a52b163af82d1a69699e89a8d0c09485b0b58dc2096b4e9688d05545d12156d1cf7244e67f12cfa628c244d8de38ab498939d890b71f08b17de30fb0789f0e1ad76b479f4ff9ae5ad3cbadef745d9895baab50c45886fc8496c9d3c6b427ad112778ad746e9ed91782126b1a50b4b9707ba95a6d7650b6dfcaa37d64bb9376d8bbb0a8ea4c169c4322e1c2c16d6b388581d92101b4155885b1c6b519c0a190b27976c54b405b17b04b0ec80e05dec0b4baf40a446d04c3aa6f2a3ebc6b198310b35c6927aa371582111b9f72ca053016d1546b3e8984efa40134f85988a63163fc602aa18a937340e2b123177775674444b5267e38047a2e9aab7c065c165b19d840ec5369c8b46d03e9b30427bab12d1401691e05dbf8925c9dfb25e92a7634d1f27f6e3f2f3f9a720ab4770e54fba5e95f547d950fcf3c7524113f184fa81995e1c0b78283568107067949bc71ca62f118f3f3ed981766c91d08600966f435bfa4b02e210552e465c9f6c7ff9ba788c8b4a1af2ce4033dbd7219e682a1de4cc724e07d5d293217a5262e174b2365e1572aa3a329220f381bfc52e9e8607e6ab7989618005ec220514a2f1b2c5fb2ae3428d81403f8cf37658eb627203b8f478f0422deb504698e543abeb266fbed51c2f71ec5a0e381a23ff84069b57c80b138e2ed2b1d63ab194fd31f4288380548845d4051def0a1a12c0d50e0afafe6a9516310dcdedeca50796d04dd69006e24cf97d4c45773c84c154896aef1c25312769ba184e0a790ded3735eae786a6fdb5675204924571e7fec873fd26ea9fe711ff6bfeb2487e4727edea640256d928ba80c0fbc9f4d5e584f4f7cc40c120f77bb80655ea001cc170103782b8af1809074cd01501bd169cfdd8addc27b5789ac714599a91292b2df3b9e3afdf21d923a1ffab596f792c8b1b664a0416dc68474cd4a88cf07f80228b8230db12d7457b1d65b72e82e388ba8461088ee287acde3f0944ced2df3a920578292344e954437636145f11c4142572bf98132eb66548fb26375e0043919787ea0501c75a26239299c89911c1b20f2f5adf9cd9887c3cc70b6982de7eb5ea43b747b23ad1adf3b194bfb779d630b99e8adeec99c44b7437b931f46524c88259a759041b2708502152e741cb7f4fc765522b5000661f33f5a38f51c702e7d0aff98ecd880f8fc6f3bc3c3dff5b928d86b8810da515e1dffdc640b35f354b3663c3626003467749ed2e0500fcb05a29d1c6996dcf418133c1160845e841795f711ab42d00fe321ccf4a7d190cbe44e87864c43f892771f127fd38ec38b455d0f79a6104b22db96d8aeaf6249764cd761b7fdc21814f7041e3c09f4c7015dcb89c79548cfa2aff5f721b7b92ee71d00d9537470572d6ff7e6c546701db451fd435379b551c0d4dc4f5501e69156e4ded2158bda6a9db2f5420fd02ead6dd94d3d4a9f7b93af3581643f65333cf1b7cc2972dba11ad5e7719442c8e0564f380206ea0db5438d71ae7fd58bfa0a17eb805ee487748e42f4ceb3611f94ed554d16decfb424f270bd377bb73b9bb7bd03912061b76e4e1102eb266c48acd9ccbf543ef41285368ad6464f2c25b07742d4aeb3d03a081bfc53244bb170735e0529a19eb58c0fa42d4b93321c8e1f820a10e7603e88837657e339cc80e02c519de0d11002b06a436d8dbd44949b72a20c5267f4fd6b0f2f9b5f584afdcc203994dcd975b686e2f0ddbd4706af016b429b9d7617367de4020fc7f50e895317e9ca57ee13a19de6b2bae2075fcf66ff094d52bb804d7729fec11a3de8c0551562d69593e1f49b728927be55a57096f08fb993bc7bc9d7de06e2e2589edd62a95b01177647cfd8c33813e607a0ddd33da5d0cf4961281b1d13076321e80c9a43bde64d5f99228fae7d8163de051dd789ebdfda9360b3945a6dfe4eabfa4b7aabb1bed863b67a2883e2f7a1c9af363b0a384a8731dcf4f6a39d8722ac2f133143121f52331c9b2bd47576345beaf8d3fea745dc59c501d89533f596e4163196e04e04549e128dd5f00bab066dad31d29bca4a546e8d3045c064dcbe39c0182d445d01b5091e60269629fc1f34c2d3d23f74654feaa649fb1a2d8ea04d67567d61841cf17d47e88beb6a5f36ac1c050fc02aba1292b71a0a30277f2899f927f20c5025580faa47e086b3c8c12c80c1025c8aec3751fa157e16eb100284ac0412b8149541181d8044cd23b8aff1d0e3cb36928421d8ea537819388c79c169cafa9c467ae3149d02988379d08fb9a3455943bd0cdddc53ee00aaa8c06b81cf42bb6045aca0173273fa1b6c2b71982e8aa39652e1800205db3d6405c5ec379c24603b1ea16d690578158a94ef41fa1f97b2fc2831cd7c50ab0c12ae6c0d5f98240454e85a19c34c358ed6f405a662d65b80c5cc5c0b54b2bf352fff0db555a6baff69106327bf3b1517b96ac64018fa5ae385281f0cdd0354a3cc3fd161b15c18095edae6500918e4758a4289b5e41a108fcb8e4d3abb223bb9f45a4dd628e4bf2e86018a71444fdd5026231cfb5b574f8793f2ebc6d6fbc53d71636c06d81b99d2cb07a39b8e32195245821c3ceea7c3f41a98370913eba58b687f80a3783550e6a0a2be50226d2fb68e4c5c3a1991a5f4b4ae5805449c01471f5f45068416a429fecff101e73322017c4f1dd3cfd8e2b814ea33e2e2fac2d1629e52caa0cf0c25027aaf23a88b05d91977cc3f4c6875fb9337d24ea4cacd929cdf1e5b72f98cd678f44584f4d39c13a5269bf9fad8346f9797350dc987936bedf38b52f58bbe4078391316ff75d90e70039000e915c324b6e099b5abbd998a955c7f626618c766f6b9a200908f9c4460c967e7e8ed514d202596d67276d63605d544ee02cac69826078f231002dc121e0c21ad4cb9916a20b6ecc50089033988960c358209708349c58a4d454e87696952560fc178bf9eb6677ee2a511630837dce925317cd41fa2be5da5e05e6c2413b5e0c380b26e1685c3eedf4e27b69c8fc6a27f92f2a6dea12b51c3a996c36b223c078b24d78915f0b725fcb00f546dcc8c5a398dabc0a4b4ce474edb7ab109151af5341b6b3f78e3ae703e243f5fa8d875df3f99a14e41abc031499438ad3bf6dd31e843094aa644e41cebb4ccf5338910c71f4ec27317ee946f1edb518c1fe48b67222d3642f4e51fbf17376bfcc6bf715c8a601299f4500201378a19dc2e6e8105fbd14144760b03faaaed6144e03add96fef41337eef189c889964ffba5ec033433640dec4e394658b992676938e3be93b5e0d07336bc7c2a1554a44102bd528985d3a1d4e9557a486ea36d4c2344607408c5a2a35cca0c9443053c67a89a97b6bc8ba0bc174cf146f54deaaa0906bee88a2a4bdd9cf2fb751897be09b4f998100fc03c69df4f81ea4ac35143de18ba51fd2403a82365e515271f2094b4f60d677642d4301a2a35b68d766ce97acbffaa66bcaa4e805e7c4b7393c30fdf2987e15d760e3997925dd204081da4619f1b226105cceae929209ac318dad7c145177c47a10291c1a160f11f00354db9a77805091f75366b56432b0069bb656e81aa839888fa0f9f23cbb123fe1b4f5cb85ee2210897e6f894a9912cb245bc8741c059cc8f2f1ac1191ef8a88d44a069af3a7040040474804ac6333a53b450dc73a1c73d45d6109555fb099a5fc5d2d5ca29040b5ff8c0d2e0241afe8065a9f65e19222be8f72f893eb52877597074122485c2b4e0528cbccc7d8d800847a4a15ae138c6170cf0176024a53904b4d0c12cd7e159588f90d26156ab5b8ae860590fac19ea1baf0d10aecaf3311127ba8c3ce4828818af6828f8ae32567a7d77de79f336360eaba27c59537936157d331ccc74ce4277c8e18fbbb7a48d9ae2711879ecf1ea7ed9edb2987ccbf311538cec69eda2cae2b84478c900a16f0dc208c13280bcef20eb559838a3b00d981ab8d9eb5a5cbecc277e24c60c891719d1a8f1396c59c12abd1588b199c2141161d10568dd3bed1b5032c1461f83f4af63ffbc388876a450f28403d71cf32a170e2e48e9122e669a5c76067b84a79d5e851fa1391e683c16738063ca428505d6180df001bb1fa88064e54c6ad58b10a594104b5968551cc6e90e850377c23013d334693036c696abd1cbd29b51b369f998e8ebeb40fb212992574eafb15abe2f340519b10547e8a712ef1544d096b6fba0495cf5966187c400e4e2a78ad68ef76005972ae7b573ec3ebc0c24d94a53734876a1e935b14964478859cd83f4cc4b3521b1aee236953a72c8824431b2ad7777ae0969301a2afd283a90684e9506e52c3febc74ea8d89824714454fd19ba85065351a3854941b0fadc8c2db8ea34ebeffeeaf5e16821aacb19614018f6a6ec29e84182544b06cc391b5fccea4fe69f8a1a41217c9f6e9f6ebf9323d69a3edc97b7561b66c6e870969d9cbbd7475b18cea640297a877d09c64b91cd2a9e9ca1f476b80a6524d16b33ab898f3a1b279807b41e7ce45684fcb2a7dcf8d126b684a6eaa547696cd7440ce4ee022cea5f0b205d2c64750a89d3a705939b0e26468464a35f604a913d0a89060886221bc373fdc6efe4041f052a3d2e70aa706beaf582d7ca92c5e37105118717543c5f179e3247c1775949de5a68a78368db89018d25d70fbe09fd317aff06f731180a0d15f1c4fa045be79c650a2a80f7a7d89880b92c3b0c9e41fa82a7d18512def12a8683b051c7590b637b6030bd0631071fff43b89fa3069f4fcca681e6b32b9ef6e12b7f7afb8abb8f53d799a3c7d9732fb975a59129eb4344e28aa49787cafd76deb44c9d53450e461ee84508233fd054606e295ca414fe1db27ca9c81d3adee259c917df3a97488075482978c722a149cabad372ddc4762f9765e18be267e405a065ac840394094039fb556fea94966348258473a570ef009eb968909ae0724cbcce8ace512833e34594c31f71b545cb8e20e926b23d4b4387b254b74f379ba37022d758a64c0022904020b37a8060d640a4237f8ef44732acc2b9365f8f13e10ea5981da37d71b8b80f9f1feb1e76cf68cf1b47b46697092dc2e1cd0bd76be63e23bebcd505b0efaf4ea9a3515a84dcec15083c6f901ab9500406437eecc6622c7b20a6856ea0229d86ee806db7b38b5fa8ad5d973ad2444061d5ca3056702ea0dc24473109a3e64b371ee1c5fdd9a8d75a88620cdbc6a1b311097368f99673f24c1a2a19c29118d2e94213489ec0f4636580e3edcae9f9823543b9bf039d3176d4ef7022e178299ba410b423ed5d21ca86452cf59990da8b7aad208ab6de97a941ac470d93a7fa7adb6e2915f64318c7e95251aca4b8c19ef2babcfa919ce6a105455ad5e4f05aafea08f6ca9840f723156a1e2a28c019f57dd25a17ac9133702626f50a466164fc325943ae127041681d4308d10c24a4c1502294c457067332ff8ad8120f78d72a5f03ba07f4a4e8ab56792a7234c5159a4c8c73d241a56adbc23f736c34adc798f176506cbdf5a46f4bfd81f346d33d09eba615f74db8eed109b0ba6c26ac9250db855fe7302ada6e2243e5f98e4f6f060dba3824ac51391c73a461eeb1ec5ddbd5095a4f38f0d5c6e15c4712505ced050584e219cc8384d51dcd7e86d4218c402b43c68d27adbe77d377b1c7209223fd079e7a01a0e318a5afadaa99bb016a19b63eb90bd56d11b673f002f5e16afebfcbd3c1aed90eb05df3ae83c5a6c9bdcca006e073a1b6e5111f1459652688f32faf55ca5f75af3ed1260adb44a86d07e7800e10cb97b224967e063fb027acc2eea0a0cc3885210b5c89ae080fa0e24c723ae9bbaa09b1d8411040c0bea76200f78bb20125ab1d357a99fe44f39f64f280bb44c4b496be837e40c61c48483d55258a2f12103a4ffee0746873984ec307a1b0a9ab69cee8d54fab0d0266daacd7bef743e8c58bf5ca9bf1199b6d039d7e4a6b04d134d707fab3834c4a3bb47425db5d91627d581966d9d80c48d2194ef178ddedeba6c762da85f695f46242f9d7deb1b91dcdfde6d2e508adced63df8cf1944e02c89880e45a02e5483d0dc034ee3d380ce9fd9c72d09d7608991180e690d84172a00b5eaf110a73263a84cc881c5a5b310462f1ee4d3a48e79654b617e88811faa153426c5db57bd6a32ec1b21283e5756b043b2213abf046a046795ec83aa458b52f836d8f6dfde073a789691893cf14e0760a371c2e540856d3f41b6d8041812f07d7f215c0b4b85e154a5c5d65442c9fdc212a6015433128531101ec5405453128d9948fbf69514a5aa61cdb83bdf9a7fb8b71d270c5641eb9cd9f70dd22626704d6c1c21bdbefa4b5bf53935646bfdb9c5e65958271abf593d62d00e897a8834c00fe59f34bf8ed016a3046ebd65200c4168eb157dbbcabbb1831c66a974b15113e7bfa77280d9306aa57b5a39b9c9e3cc4b421976a3704a21cdee93b4f04e4c39b2b6118bb2e85a6b575cb0b48378d11906ce4c033ea384ed447a58896ab5dda9d6a30daa5d6c3c52f3f062fe28a9b4e0c08344207e224e19209eb29123bee1623e16839efb0c8a873f016ce4845aa4a0aa44f37e07ee6c2420a256a49913e443b47e1991c3d5d1727d6691e2d82da76ba7d8e8c0906aeb451b64d1b67d47d43182b3048893bd437604d955473f2b7c403d4d1fe54b406a034038365e66d4f22ced32e5ec4a72c905fc1edff4dfe491c8ab3921fd9c7290c54065dc35031fe2f263c6fa7de2ff951b1802930cc158572528abed1338a6c0a367d89ef7e9026e7e2aaa840a57f84c0dc479c9c92c02721c24ca9dc7783a9b43e60052bbf9423740281677c979b52a87cf82ca72869e14d70be20f134955099465d69790787038c939b1c8715f60d6e9742cbd364b9fd7c71634f303587a33bfb6dd5009d4a888f657999cc3b553a59e6200ec3823c9783fda26ec6fdf1629bc0f5178716a4f4c070a1371f8540cd7be10b77bca1c2591818be5b3ca2d570050a04a0c7480f6a077743b4c7c463443a4793cd8f577699cae8a98d15cb2e3410dd6ed8477d178ffe9205adc2b42f1cd7210d9bffdcfe85f41bbfb8aba0d136c8022f54ad88b233c57a12f1fafb49ba2812164ac3b094069036c6c83e918a2717dd1313e97742ab344f187babaeb0178101da46bbf7b8a213bf04eb6873a598b28061753d2d0583cd97a19e030a2866e07bc155106990242a269b399bc6ae8af0ede6ec79ee9ea0cfa992134307cbfac4e8e14b650f1a030056fef54054785a11640021d5379e7517f65804874b86b5162e8cace42a590ee778b0531b6cc56821a26632c8f93add3456ed427ecfa758fc77b435d4b680e8bffc5f4c798bd264f14219558044f34c223ded0fa6e69b5382188b2c2ac399d7d3537bd4221263384ae60dc711889a69bf487a97e537978e2f8d50e0c46ba685e257777bcc38ed8736422c8ea262c8db0c605c3c4271151142ed64c82857cedbfa6effe0fa5f35799d775248dc9edacc03d2c2b80a07910c2d2e63c11320a2e69e99f7986c8e9f0c19b66cd8807ad304641ea52a6617fa5d11444f0282577fdc45ef47b265bb59abd487bac3e85d663a4bbe90143c6362562d4be1a623bb1c44cb345924400bfdbaa784e5b1f65f4a81cbf50caecff3a996a9864b0f469462416d2d24b37ed368f78e032792be499c8ad2b7d454e6f08ae8b5bcd4fdd01c0c25662cb60e88c20ac131d2d77085b51c267f46f80ce10f17c074117a0a0d52c72d4bfe9431a537242b4a2c07655f43fd49304b086b376f3fae9116c9aceba2ae86630f6ad4a8103d5fa4cb64ad3cfe19fc1eccbb865579bff1b3bda8e7f15bda753f7954f4b74179453fd120374d514a80138515acd3429cbb28601d4bcff54b1e40dde081a79143c28f0163f19e12ce3c6b2633510e4bc8942b16224568fdd45eb75b665a914be166c79e5113ecd81341b27189f3dcf81bf57556b1a115cfcdebae00f24f4015536451396712af1ca2b2a876f04a1e8f377e16c77068d52e859dfe4b8d21cd430df25301724a2ab1784b39c69fae832ddb6866e0157426069fc604819788aa3ba401a426c849b4ebf85a7162482179997803718252d6cf94c46445cc751eb976862c51ae40080f7755d61665e3b42f0861711e82670155deef3d6f911a8d546a019dd03c18de5b9358cbe5a821372609ece9adde1e900612a18c67792d190a13cc6d8910b809cf67723c16e4a5f89c34efdd8ff5c0cd778e8e9466f1f523b4a44684aa5e5daeb8a3e00ad72880316231153e9f929ea3b21db1e421219a10451d33c74e4fc67b2c65948d7f06a1c19a1c5ea3d6fefde344089ac431f63f181c771f652428f2982cfff30847c50db2412e06d7f57cce72053fb006d568a3a7873d5660d9726f7530f2d312cdc73f82b53184280f14298fca1129e9644c89a09bb31a3c1a356fd31e563b2138ba2639b7bc3d3dfb3a8c8da381e368806f7e8cb684fd477797638097922a45bbaac22e0f25aecb3b5b94a7e89218b42ebbf982cc3315eefd42c67bece7545c713ce55234f0d49c2ef51903cc99ad8ad2abc6d8d31e200ae62ea125ad4a095ab83c794ae95f7b92b73c42b44e556c7477faf8b5a24fd3a9515f7bf30f9196d549aa1011cd9700fe5b88b4c30b4ec0b38d8b2f9cffd2c372e7a325bfeeefc0066e029c88d0624394f9708d0df21523a10e458bbca23f56f656186f2813dc85059fb82845297cbbc12f1bef0614539fbf67b6eb4c9c027beb413c8ce16ec9c44c8fb11a8aae937d7b0dbdeb9229b106cc540bf612b059b516f78f7b8545c41c7544a4b895867a4ed83d3276cc5be537e2ad7e1132e02488157f9c1172c593b3de79b945fe0e894e4fd70dca4f751a3c8c7f258a7ed04242c97d903029004c26c3a8bb0a93df3c2539d086bee1e794e8c0a5a1b53b63ec1b35aa3c7041dc032655c77fa42603dec2870619a8b63fa5664834b3ecbb130e5f51ae02c71ea3123c82c1c7d2bea7ffb448e6c265c3bf8f6d426c8143fdcf78cfa4d29f9281a05fc9f8e668ee4cb5400b0a42abc230b50fa5123e6e39e626345c46eda8e0349510e4cb60f48be0487b7c5e70a6c51c53757f547d188563e00a584555f04e17052ac6cd71ad31e4d5dc8948f833738341a4a820dc28b4c7c24442340c999a49cae1b7c22db588e54deac91a6a16a2105cdc12cca65b9269ceb4d3b32f588b41b5760fb945fda835fedcf254fd8d0389a7eec0ae61b60b06488e3c35c59b96dd3d552993110efb44fcae758253e0fc7b103a538655d35b13de92c849f7d122f8613226c4ec5a15ce908a5d081df896f4bdea859071a96f148dd689911802d2e79952685acd9839c3f6e8c3dcb03ce256ea95670235ef9006182ae3eafe2ea626da9479c42b2293af6abc97648559d481e00c5648f4c8af94d28fdeaf92fff8144d1d2cf8adaba0b25af36805a0dd6f2aaf300544bd30808e2f6f3713c0fe89c6682303de52a7bb4423be84006c3d743144e60bfdd0f8d1aac2db1afee4f7ff64934bc9ecea7b66d1f9e0adbd9cea1b777f9b83cf703836cbc119be3c5396217ca6046d60e1965115ecac0189fe87bd212d41557d98a2c82147f2684642b30803af68d85f08a3dc35f29e55d921d8925a8c749a065dce10e1a9f7411e27c7072c7207e4a6d2d34b7f30eb8fec93fd89a3220bf52a8f800b8064c95b591edcf6ff7e5ccb646e53281e084cc9144bc42e7d100f44f05cdb5140b9c213c0a5ba460f1a0f041c0b1164d732ee9198e3d98ef51ecde9da7fa9d268a85322c285b605f68409cb654677984d35831ec644a8f812218a8afb7b06119e08a66212ca56d867c2e4332308963d7f7c689bcc4b1c912dde0018705e9a949c7ccfe0e4a04787c27581c5dc0fd21148802172da2d70e7386036645307c10c91e61b75e0e95c7eea59a99b9a87bf94bba905ee52982dda54f0280b070ee4aa39098b355c5a9e64c0e1aea6285540a023c7a8dc31060a1d7843d0ae285152b6849901f556f382aa43c51b9543efaa6111755ad4f17347e3432f0a2d0de184957166cc3809bac9cd833141c7b84970d243385073932bb43d4335d95854e4133c509b2f535a12a926743d84e424edeaa223f252fddb37eb782f516a018fcc7ca0af796b115c7ae84da541296289427629868f56fc35d51fcb169e8a59bb40c5c4a2d4f994a0f919e28e0439d81ecd42fcdb618e0d8b4fc671664be3f1fbc3584d3d48cbdd4c948b3347f2a1728c6bcadd229c331e8e3f46684efb28f5c1ffff74f4ba39e3a69063022ca21672174d491c4a1e02f62b11c19e7b0aa8bccbeefe066f6a1be9e751a42c2a42dd04f548f3fbd6809048e2ab054192490b421db2ac8b2771d7850e94a3aa6836de42958cb712df22089b3438d2b2aefa53e1ba2ad1dfb1dbf971fd298098b704f252c6f21ab47494c2584b9fe745fb7dc070aa68feea4fe58e94c09c404874a33da343ee05bce3e32433be54229cade7580eb32cddc7bfc347c9b4af97d3578ec8a666633fb67b54a5f8e506e7852d6fad437956daf65f68437126046bc867a7daad8c0556b8efef673c086ecf96354d049869eac7343765a273a952935799abe41693fef4de81d2507f73f3fc8ea97ba9c24edfc4299538aed3bb1456b24849f873973db2914c266f6f4abf573fc79040e210f4659c8b6127b72fa37e8ed1327adda4af4719430fc18af6847cfb2c18ad6d1bef98d8000d5a0456ec92f18305379715b064ddb9946b6648d70c14bd668046129d731e61b0fc1de51a64526e1447d63da538b891112c8b4a3de699d06411648503481f228ecd05a4e27814c8e234b490c496452a0a77c0799e92662d0845dd98040de86380ded31d6b573006417ed93a200fa93a95052592432f7fe4873e9b10b683263a0a0ccd26feb8f95ca73364e9fd6c42a56c25b5cc45727fa1274945b0c2d68c8805411d039136612d2fea65c1fb1a3671d18d2ce655c584d2c2d78a78e8e8eea67229ff99d9a2e337028d43ad5dab56b0510e52ceaa31d4cdb7f01ca1f23198438396645a1ac40811f79bf9907d49b4bd0705e6026df73d1abc32cf97f5de6f7e6d84487e1bab57b56780ea9e90a746e12663d04a5705951ad48b31d7ce9d3355f940b47e167ed29385b83248a9a80128d426362208b829c2218bff4cd6a39bd40a1306958e26f02f08064a542d5490982e268cf32eec928680f939412a26ff0cbf25adf183aa6669a434b9a76982653a7fd7031a96ee62de70c728ab40a8ce015b9517ad94e1e22fbcba3e32eafeece6d411c334b65447b49906074b3f9d7d180ea662bf3e6c4b560600f08c3a5ceaf1f57ce8e83128e79e55caad21648d71117c3edcd6534dc3b12f60fc87eb64373f2d64b7ab0ecd0828d6193b726fbf2e24b467098c99d38d81e947b77d008a21dba01b39f3c587ca77efac7aebc07e9b369e7c09410209406ad31ae3b27e6e80a9f5d66ef7a124e1bc35693890bc0549310c1796327b620fa5499e1694a480e3189d4699ab5bce64f58f0ee9502684f943bd27f1408a88a5a3e6facd9b84860a77aee2c5b84a7dbeee230a43af9bfa983c133fcd387a54619cf4a4f0fd5270e2d6a6cb5e5f78992a5239718e61573f069ddb581f261914ed3548632ab9133b7e2bebd37ef8a1ffef17e279e8bacf767aada9b2c40e07947d510d64a4c035b40dbb6ccfda7b39d0f6e883a397a8e016729ea0c455ea5d64212e6b7bb0c5e1ffab4f3e46e164240bd4b9033f1f8092c165881028ec3dd42e6507419fa44b715fb9258edb79aa6eaceeb214171a997a97fc061beb9236814171fe2f0c0a37050f7650d92e06291537e131d354ba7ac87d91a85bda15c4829a58cd27d1bed6cbc5d9a867e9ec30df4cf7154eb4f280a685966f083539a43fe76be92c4ef59e75dc59a4ed83165163760e5f625c0aff9298211a01a47de5c02ed11d1523c6852506251bc1d4edffd00478e30f96612f1483cd1fb6f7411695b1b7841a399511b1b915a167350c590a692139152e987f25609a3791bdc4d3e3c6c92bc6ba16394b324956a6d2398a95c0df443c5662d0a4e11c925c8934865fade167c99152979305a67c3afc966011b061e8ec5a282da809ff006f37ad234892d670607babc04efd2f341d08520c525adca8cc87a9857e8adcfa6c9cec91d4ce82c496942b61121229d848e77f8a5b18f26a74f71ba2a8d59de317c6b98f06b5e8d82388a3e77cccafa957c285fe62e3d285fb3096b7be7704220448839d05952360876daec00ee7e452f8101a48e09fb83f0476e435c3151dcef25bcff0af93e8f6b3ed0ad2cff1cf066234596fb7246f3eebccfa03afe1f032381049d090a0be220df2d129403de7c2d1720dcc90000e28f210da66c8aa68955ae434c7abeea76036ea24d90d82125d6370b4a3d2636aa7a00088beba0cd95710fab45956671a94cdb3dea5554aa9bc31fda04c523ea1191c942264f40876fd1dfffb3097534c92a352135550b1dfb09ce2d06030aee6d3305abd1a178ff7f6e6934251b7bb9c8207c70a990204f6b6621634349a202b12a38c84155b25110af373ed5d1e43acc3644f114b4a85b1734232e1fee5211dd84dbe6c5fbfc871712a25500d7144571cbad858048f9a6df268e1637c57a82f4b16c8f1fea2adefb73529323ee742422f15b27cb7ffe51cede91a4c4347a5a3dd88b0af8ef1674b9805fe9a23e805afee18d8209432dc464f05571917053d46ba9f72728d9132d811507dce5e351b5d34bcd35c98f83967e68432e379120d7658d6387a572c38caabb1147209bb7cb71a4ba6809ccd683ed07095b3efc47a7982ab52c1a7586798668a41762fd31380c140b590c4077be26aa223c35b990bb06384a1348573e2cae7fbfd10c0665b21d6034d9a7edf730bdfd3e4b2c2c86e9bd9f7cd0e256477d245a0fe1a45a4e39e70f74dad167ee2f601af7395f64666d0b902cafb86ad946f9f95aa10948e0962073281f1dcc47d52e76ac42c1904a1f43237ad8e0b0487ce95efb1a19e8e4ae3225a57504abbfa8ad1da3d96abc4dbfb57e9b22b9d65fc28f37435b8ba92a34466e56417e54682cd8d0f9f30ab53071f3bd562e1e9acee49fd1ecb2c127de8aaf51b0a80c552a0908f6a32262235683b4cbdf421fefc49878272d15f03a6c746234124c3646894b82faf43c2f713f6c06298ac4686dfb248a0b3cd8c40c42762a670f985661d940217eef2ba3a446a76061fb9fd4608a25bb116357d65ccc57a9c6936275de2e74ce45e43f8c0e9ab3c7a17dfe378865330a752b39b4c929eae3dd3092cd4f8fbc4569058eb0fbaf31e798e7119ab0d9ca802c098a78f7dc977758550a2fb3bb2cfd4a4a005ce44bca230b5d4e876e59b10e31ea593aa75ae1cb34a580a30c68694c4ae4a199c3a61e1551908dbc4c67f187cf205f2f3a6077f62c180fc14c398931bdeccf155dbc644acc817c12762d15362ac6facebe5bff89504597c8e2d36e080f06b2c8613bf8af280341bb0eb1c01153196ff604b3b68fea5898b983827ae9b1034840d55a92c84c9ec4fd7df23ba3b2e3ab9d520652ca44e089e40804ca7ed2d732c24338bbf5d9a8885324fd9700ff0832e05bfc6699e710e30b1a084b1d39cea2f6b84002e4e86d203adcf97f628a0248d284ec3a3b981e63844198807fb104db0f2fce1ec753371270866747a1f3689ef5c9a1c603193dd6e49bec39b827ff2cb210ad10c4e10f5d893c4d2999e5f54c27cb2a01906dd940e498380658b08b582b17e088cd6e0453f196274625e30fae8b010c06e5061608ff263a730fa1185c8ee7288e5f1012892c689982caff65547b634fa2d390ba86db6f5c70395e889343ea789576cab831c7ca153976ac3dc05fbfa66419bd3b4da729b3c720979c4a2b02fe91f169c9ca6198c85a881cdd286b0380c22e24387b21b50802988bf396dd5729a4ac5201630e317e1e69688f5d3613e7d55194c844d140e8884128f4f1b7ff8c6ed94af832d89c6a78bebeed7f7ac8c50aed8186419893abe05c0e95e7e002b2598f49758e545bd85979b17844b4768e6c34bc33cb85e08c2646dc368cf490c62f01698c5578c5f9704ce38d4b908737de8a6c1bc3567d24bbb0177675557a20409386bc93dd25404db3d4d946c0fd941502235c2004645c4882dcd813de054ee89d5b995d9ed683ed8272f13e34515f42cbde9a1a89e67c7be5d0717b17f3483e23f78d6c9f8a7eded980d6e36dc687acc1e512d9ce6bd8b4a3f37250f3d813a96585e4901b2d4e4d50ed2678fe271304f2ec773b4c1b345b9246e67357760f08a688d1dec13a4e4b2436a4db04236fb0f0b95acbf3816ab48283cef2fb111eb6eff963b790c1cf62f7623f19bac301b6fe57f1e6056d67f5ba6eb0e420164bc849708fa396354f0d9bfbccfc6fd8eb8de39a652d2ba9f868347ab812992282864d79de8be2de1a07f1f80a21f2b884ca594653ed9db6ec59b4d979d4c71ff14e26435cd8bfe4c52e1044521702df60f6e24d44e8a63b350e092fb3cd0630b832a9973aef5b0ce0fe12317a269f0a1d89ef35620140fb9abf64ef2217c08359fc871437c416b5728a4b177eaa4e24c4dcbbd89301d4382d571a9ecdf926162f6ace592b7e709f8fe6af59295ed36cf303043f013e9f772a850d488280e3ba37b1e034e278f54934e0e2a1ac88527ff36b41223fa48f586e7d7b4188d38bde7faa6b9227085527e993041159597a70802d222e5fc166bbb20e6a8197f04daa9107ffea0459246935094a3a6272371168da53677b7a28165cb21142d0bdcb365874506453291dc1e879a7aa4a05d24a1ff08f7e2beb1392ce61db54a12ad9e90d8a4fe5cf8aa78b6e4496d0229f681565b201b1913a458fa394430e21a9320dd7c4bf578586780deee5b2098b512749e92f80f7fa47bdbaf005906d6ffd68f24fb4433092c64fa53b845c3f73f909256c9072f978746776dd8c9b69d5da256e00ac8e4bd3f82b4b5e7519bb3e3d4a7d8b0812c8fa4e4f7a9b5fb14c8312da5c4d60a54ade71ae5bb809b6a81d682e1873f5b0a3a05a4136521a93561ab97fafc12645d660b0cc3a381ebb19072404d1bf693edd341c3ac41c8f8669ac57fb479c3f4cac3722961756f84647cb5f76c550583f7775467abdbbb90dccf99381af0c2db8d64edf44991aa0e8309ff1417849df1dfbeaa9eb860e4f6ca353120a0e6e7a67584e8ab2228d834245267f9bbcc175ac3fed72029cf1e009be93d501264ef589f3ac1aef8e21e48b70b0a01071fae8fe0f16f1557be2c08eb8f4c43fa224593a8f64d18fda4b28e9fbbb7a0eb0c866e6a1f1204944b92ecc08fd1a0329f8d0f2ebe9bdf15c8118412313abd39b529cdeb37107b458c83b1cc6991c1e2e2c3836179d462c016238b8a3ab70d2a7521cb1a8a0aeb6d159b9145be98d51bf3f53e27f5bf0ab3c2ff4dea3223542debe6b5eb6aa579096db5563eb0b416faaa8a2fc1d07db222821730c4e19a93960a49e8fde2536272929c2e9f46cd017907d3e3ab8af52b91533134f9592a195b09f8abd648378c22767f4a084819c2aa5325c41678732c508808d042044d946b0ea0d6b091ba1e4d8544b1c3158584844d98bfbe07162119ace8ee8b12b4294542b7ac4950395cfb0bf7348e0e36c262b6f3af2bb3112ab4db3401a556b8caeb2cc249c8ba9a1a01c29c1038ddefae7d2360aeea8ca3855584edefc04670fca93fc85de039a138a7afd5aec4301896ed56192c064619f84858c8551c180525799bf73934f85550fd85ff50c1834e04a11ddce707a394a76430b981341270ba987d505af07cc8d935c0c53c91ce72dfa4eb54e07a107fe9fe48d15e77f9e01c9e6a0b16ed353125a430b4d5f1ea489b06a52d875a787381eba3c991891e30eef8fa4bf38d2af63b5a269988e5d1aea1a550d88453259ad1008a52d113fef9552dd675599443e689f2283abd24345e22875cd4738a9e471175a2b929086b86a782166be72a4a557c1236069ee6a5094a03abcda96071447d1330af9bae78d6031fcf2630d20e2158295e730fe19f0408e621cf6fa90c888c7dc4a4b10fb0378d4d809557a01b80ae7d0d6215e2076ab2c289c6c7354e809bb113aa62ce9546ca8a1ff60db59ec083cfb296995da3b254d744e2bc09aed7e03d375a14c380404ff590f62389236018c3250a63dee7cd41809183fe37ff5850d229114142a9a122dd412adf66785105aa107a4b70d04e02dcd925ec817bf8bb4c08bf5c7d4a3f747528889aec900125a8b11ab7976fce96bfdb164e08215ee06534e45986bdfc23fd1d66430f344173aa7f02894de4bc0856937a2fb58232f622f7caad12fa223a80c41ab13b5a07450e15f98bde2143a1d2cafd73167b7686ef5a501f02c23a0fe813b0fdee82f9e44e80e57a3f927b3df5aff1f1d6d2401dd37f91f10bd2bf04a513961db07f25fc5f0470ed548ebf1540ac357635626a5af11969601c56b72a677e15623b688acf5dde03e258a8868d844cccf5224d800b157b7fd58a7737eb0a4a1259dba8d21503c23cbeb64c44450072cc92b38c792b02cd69923bec17e269248a37ea58dd0a8c7995b0b16688dc8ca73de4a53b837e046ea17145b9c2c6a2b0522340148679fd7959deac7a1f9f24b8b186b36aaee27691cea34fc69b5a49d97463a8f81767f9270d030aabf08b55aa55cefc70d869ccb3a7bb3690f8d246b41d17ed9f9e49e26b7b89887bfc7bbfef7b0c005754cb965fa1c7f1adcf80ee63398d58af6da22a96fa291fcfd838f83ade4d426bf3016e446dc7f799b720c2eee2474558e0de484404ea32ccbbf6e9e0587e5aba731437ed58f94e4e0840c0c443dbc18657235524884d8a12bc53b51d109a165a3be84755f5f98c444187cd04ebeee0b4f37455a9da7004e92bc9b3c944a31d5c10d5ca5a1f2595e91d04d547892f07635abefc2ab804a170b27f462c0089905ea6d190077aac5ec8f4cd71d4227a2a000a62a89e00519c9ce981dee7bf082dad34ae7e57c919cb0e2b43098915f5e69978e5e20edac10c9cedfb735dd01c140c880efabb45b3ce010050bbc751f67576cd77a2cd36408ed53d6960aac9de35a9512a104411987291fb33c4de3a602862771aac4b72da7bc25ab956032f500124cfc23a6b18c3d54a57d66ae2bd9bba2bf4ad5c0fdf782c912285e56318a7b0d6d0dfea3e3caad0319923404a23875a16ca7b0a12dd649e94b0eb344b773b5e01aa5e9adb468e5a0305263d13d8663955c2dfe85c8304339bb909709481c92de04a1dce6957d34098099f8b3379d6c6ed03da2dda190be058aa4241cd87dabb635548185254fe1ad97813ae93230f9a23001e73e8481f4eb18f5b1a6a6a34938612cb878c5eedd714ec31dce199be58fdf693783b6a21c94c6d9db80d1e0146996b5258fa208bd7027d3232c3f0f6bc7a4481139e53cd30ba246ef2a2d557edfa087378004e9788254f98410b0575a4800bc07f9775261800883ecd98a0ae013c473caeed4568b8152e72b32020915bc1ff2a048519dbb59b7c790f5927933c1e61f59ea0a6bec07da38808a8cb306feda303b1ec695112508c80bb4a7b55c2a0f2ccb7f28a92577ecf574e802b4f71826f69a7dbe4f41bf4126fe0faf9b7840d8f153ce6964c5e17835e60eeafd80f5411d840d4d8bed7b80bb383671548ce40871c846baf8dd6c619e521d635a46d0e1f34796952cced3d07baea63254cd0d7337156ca0be616cf648734849972680431b816a0eba5f420f638927b4b3f81bf79f4b521110d8ffbcaca6fd7d12780b11a02380d95a199a58e3ee2004314480b69cd9f1d3194881dc4a15ef81ce26af9c53f6fbc271f029cc5757b8a734e0f890d21d256f8ab844a179fea53e4a7ede3900aa519a402e649e512fedebcb804cd6a8b205e7c6212ab60014af7ddcb1e0ce6dfa6e8b5506713823348d1d89a2762380077751c8297ee9f5600b215de1c3a2ec09495f8babc81df0ac4d16f1c76b00db5315a941c4a64650e6e8ed86b080da0e7e604a231cc9f952270fe0b67fba6dc7e5b265e5431e29703831ef3c2108f220c9f455c3cc2476eff56c2a9e4ed235604edc74e2feaec6361f8e84d2245e0c89e84e7d924ad1d7df85044e311d51d68d5d13a16592969ebc3ef647045ce0f70bdb21e7fcbcbf096a1947930486512b4a6c511738ce1631f339de5a8664106edeec0f4ef0fc4af0f53d6fbac8366c7e83634000eb90c8cb2510d80a9b1991f2fa198a86a182552cf10f1786b6f360e74d673bbf80a0518d0210dae6a5eff8b47cb62436a736d82301a034e563ea4cd8d0fe8fc1e637e1d2809df9896fd59e1d8bab50e78ee40491cd477f652a8c6646002a7adad58d4ab84d3cb73f7acdc8f50a961aa42645d7097577b7dceedd7a9be614416a1b4324a25350e568d06cf5eb86c3db9157ca6304186e56c0e7d328b88fe02133c71be7062b49b1143c34a2c0361996e71cbaae47c31026288730f2a13669fdf6be0351e09e284f29dfde09347ebcb81142af8fe18a45151d9d6713aa81f500fae99e7a58e8fd772733762dd8c3bc7e26afc3a8fedab802c7e98c60fa7dea76b67aee211d52725f34a9240b74f0f74b4e8c0dfb9c39ebdbddd3643b9409c43f269f48ba008f54030d2c1aee8b6f0a9a007662adfbd35bc31f62798a5a1d443ea81c0dd70ff2ab806d611d9965f1d7d37a8b441b58f63f4b116ff24b77000af601fbdf5ca2f3ed9b9efd8b9c79e7ddb961f4f76db171ffa9c853fe513332e59fd2e5a2f3236a31b14d847a054b0a667729b26d1145da38687c3de0ba968ca75a724e3c0f631691cb7086a7abe0b0416a1eb1d71daff15a0122cf179bf6218a1c2636b53adc82fed5253eb471a22556afcf088cf8ab2407a98bcc54c30f12dcdb96f439a63698426100043df513ff33d3164866ea30234312248c1f50675b83f114856d101cd3c15b38ac9fb38ad6c4380d35a72a39cfe391d79737c68bbec90a82430f9b60c9e85ed9f4016838badd2500b6b89108ea6fbbe6300f44711235e8a909d295d4f11c3656dd90db7fdc4e6ef9056ccd084531a64c116efe7d8deb46b889d3cc3262f41d0e0be21078577cf025c23567bbf0c79030fe9c5b147d539b755d1bf8d517aa359542174586a9fd626327749e0af67521adff112b2514ab5ea20316287d5eab670b371b4c584d359b99ba57b20b8a7b09a3376d39d1ec96de2de4b6c692635ad4c4637b126820d0d785cfd53d5e249b3c4ec0a66d295c62b441403ea45f2725b4090324a1bc95c2bd214075ee7af02c0697c638dcf1b58def3518d606e047025c039ad5819281fed476906676117c734c6e8a46e3e74714fac63e8ab4a5bf03c639573da192f61d5844a92fffb6a84ac91ec96921089ecee9d490621089f06a6063d593eb5b6fa60185655f99a73ceea33949d0178603a005224e59aebc7a223843204b26b1961466e1951d43282d532e2286776d5416dc4dd37bd7b8a5d6d039346ff6a1bfcd4fc5bc37cb5d107433fcbae39e7bc341d1b4d315ef12fd30926fbd32264dfd18437cff62fbef1ce6c76c5ceb0cef5f6e56737f3b8f042f42d059648de9e67ee6e552d827fb441f2d657ffd3899fc96cb3abfce835bddca4bfc44f36d6899fbdf45742fcac9f6c4a7b400c586c7ff0d6db0e6ab3efff7c75fa125e555fc518dfaaec4ada955d65bf36a7be34556deb1c3de68483e4bf4dc67750259b135fa76bdc40739ec2f265de43221883f10997f07663ad16c78bb2b59acb578c528bf165b4d9b32aec9f16ffe6b573412f07fc1e6e23e436f14df061d0d301896090e3a0eb61b4192cb77b647ad99f1661eb1cf19c4ee90e2adb9697dc5c952ff76f6c7ffa836b0795e35b3c43bf7be4e74242193e247a900812713067b65ffacd5579a272db9ffd3af66a0bff6a260d7acae28dc7ccd797f0e6aa2c9fdab7166f3ba87c7dc5f607db9f39a75d65ecbaaecbfec0a3ec0cc0736a0e80280943490c6c7032f822851618aee020c39111a80b32fd1b6483112548ce75bbeeee76dded7abb59c66d28192783238331c18a9eec5a4aa238f7ba9d62b739ed52eed9192bf7bdcdc979a5f7379ee39c072ecb9851eecbd06dda73866eb33deccea08e7a7c50dbde7777776f8d1f7cee291d3d823cba1705238410b69420c910420821dce2c620beb8f087888412214328b121cf64d74ad225891879bbff8aa8a901e141f707801001d48d9a4ccd035a49a8e4975d2b091559223991b79ad84613f208132d487ef82106216e24590991848698460da4176afcc0a54a1626b078a20a328ca292273024c1524203234a0c9162b0200a921a2210487ab4800d09840c2c5dc41e2cb28a2a55a288425ad20ca2a98222de084222d9c14b90c81ae2c7972160706206619891c517f18c18e860c5b461ca0c50e4124c1819315542b28c1e6ac8410c2156109d10c247446a6385c68f30e417494130983fa69035bc200e39395a326118020d1f24106b8b900d5908cd1081dcd0a2cb922dd10a174f5c316938926b3c218f68418c82849624924b91b8830e478edc205570a427067963f6ac21a18c01869638832ca21954dc80427e2952a2c40f222415401c412412019225089f378250810f5ee4953262135ee0a0859cc20a14528870411cb204902126477c78d002072220543c0011430d68208338a30a30642083c8e54a4c420a39441439d424d270041221641a413108a06884911fd9861119241b5fa2511a330631bad8420d24090615910d27625013454ca4152492e8879590161459c52b8ad080450da4a83106971eb24425b080a28a1b8c707822b948421651325746229621720716c8227ea861c90f3de60ad888820cd9a48b98c3bdb0c42ef7aaf2022932098a844193a2256420892f2872c310790424aec0871f71091f6268b581451ad2c99626b24426b29049549935487902251a6992b464ce80444a913586380112a908fa117f8262f0d1c69434e4962d44b2c4225950a93203299206285634895d2c4102894f116964885c0190560f3f6ce8210629da98228d68c596c8459631b238a38a1a52844091a2891cb2448681247a5184c9109904481482871f11063cc490a50d9f34e4932dd34796294316f2a74a10292a28b24793264b220d901451a40643e2164064d8e1c7fcd9210669441b65a4d1c3162a595c90454c52850552240ba044284da2d0121b90cc1e458818d20588971f527569762d2231c42943bee4ad460735f2f6353220236f359fc31779fb1a1f92f256f3405c91b7afe9a192b79abf424ade5ea231244ade6a6ade7b439cbc5753e3f8bd05a8600d1d7ce8a0aac1945d4b071c847ec82533c425e00b54af0a215af47441031088ba3258762d215cf2761f480cae8cc19542370611ad24cbe847ac7203c4a9282eeb4b0d7e6550f50bb94106987a1a9b5d2b8724f2f6353864ed50d2face0275b1d9b580bae86e7fab16cb0784304a2156508b4594519991addd6255c1302ccb585c585a4cb535d697d6aa0cb79a4c26d3bdd479d012c26a09b9e1a2188645110d2da02754404ed9b580aa4c235a3f5e5a3faa794491ebba985801c160b3245f3308455d999adb91871b86740117f14a2b872ca6115876ad1caac8a5ec5a3940719e654272c912f505b50a215a08e9c2390f9a8b6c2e51d4027ac279e02a3034855840ab16508f560e33a0ad1cc808ca84acd1d2c1474b07557b0a00d3073a5913a899c84e8a255d9a508185163330dae0ede09c830d259b4bae4f22aebfe3e9a68195830cdc2d45931dd5ca61d51b5dd251b29e3b94e0360a6687cf390db4703872466e3f8498891c58473329c4b76fb10bf0e3f38c30b301fba52fbd7d4783c3dda75c08d7bbbf9796e372ca7990721e347d39faad4693d5c7512b4dfddcf2dab0c76abe660e52e76a173e2b32e7bd3a9ad25a2561f7434d0d0a55eb9391890ee70dd18d61050760b0aae8275240ae4a114b50c13a0002806280c24a6295807e600d006808215833b0c680c2ca80646011b11c50816a60f503b6e8a33358100062e29ed8c2fa00a807146bc0c0fac2ca01548694524a29a504c27101446de01962450b2dbcf0c107125024b1928b740e5e3412120ba8dfd822a8e5be741617450b0b0b2b88de810140cec8adf17ea4ba80a2c997a02020492079927f70685061a2b17059c42082a546fee10a96732301400dc6150703e745a751a50d16172b2c0a00b158ed440901a8c4605920a10e803a06bd022fd347c90e31189921091d9e68314414b948bbc10216940010196ab0229051175610d616961335571ad064b458d29961802f4e67b0a4b03e4428221411aa0a22222745518ca61cd5d5337a466f4aeda93e5750281c4fd341aa661ef55ff1ba8242e1789a0e523555dcc6f1341da46aaa4f5d11a18c503852444e5044d5a7f6a088547973221451de9c8828c35b63580f51bdae4aabcf510fd9fb6611c9ddb8afb68d2ba5a27ed6754a6d5ab95d74af9b54aecef5316f5d9475514769a39ed232c336c83fa487f4b0cc0c5b9563b24b80f9c2f6e6c94ee22921ad875ac86de0c721b7a1df57eca14945ff151b6f3cd38a4bdf6d2d44e5f6c3f1ded679b3413c257fc84ade6e1fb9cdd642774a7e2ff35ff2fb4ee23625b771ada1a1fcbea3bceea20b5b557fc0c27be38d5bc4ca9b7791173d1d2df472bcf7a2fcf0c6936518c3ef5b087bddf8be97da4baa5056a7da5359a7533c9d4e5f7b4e95753a9d4ea71384a119066f17e61d4cad3ed5a7fac4951755ee1bb26b31f1926deec5dcfe5b6fff9d319ace269ffe0bb9abac7576cf5b354cc6692bdee0d5b65b3fa67ecc8da91f73ffe6dd7ead5e98187cb5adf3fdaa6d30d7fba6cd06a92c3c98faa5d2df18d3cbf8a6cd84631e9b1e06069be0e99d5f987b4f33a674ff74ba0f61e0c5db0eca84e797345c3d95650c6ff2af9ff1a7d3c2db7487a07bedcfbdf7adea5a22f75a950d72efb52b577df6fb28932dd90d5e1cd9bee9a9a9845da6ed8ffdb13ff6272909a3ac80ec5a4910c174b6f9f05f88d3e2184d264b379833d6f77ad3f5266bbade64ffe6d97e4d27fb5732e18d279bde56fbf55dfd3c3c5f9885974ddb0b59e7faec9d3d217bfb375e7fab786231e15ac21b8f592a997ebbeee9b0b8350c29de267eb8d4b3c9d0caaeacca12b12a1b04853a0db9ea9eaaadb55693bbfbe974f213aada1fd485578b09184c90980c3109ca0dc8aeb584cb7baaf72e7defb0dcf07355e5e867d0f5bbdad3ef74e2bbdcee5d6165e1e5c600bcfe92bfd5eb72f4faebefdfecaf0af3f7b79d9a131f7b0eaa5b5b4d3fadb5f6f4a58fd14e7883c1d7a439cf51c219e63133862f1fd4b58f065555eda9aaaa0aba825694aebaa71494e7f7eae938fda478a393deaad58b4b57addd536bf5a93ed5a7fa045d97682cc1b284c912233901d9b58ef8c2253b20bbd6114439334de8b4b735debcd27e4aa90e0b2e64fa2ebf0d66f75b631e78b32bfaf49dad9e721c9874d08bda2f7db35e8ef917de68c573befbc663e6fbfe9b0fe5799289f92bc78537997c4d9ae3a20ff3321afd188de2fa27cd790e18bc4154be786a267ce1cd55256d86cab578079567d63667e3d1c9f0d6f031ecbafe4d12fa27ce72c46fe8fa7c62ea76d2ad2ac2e152caf83c5ca752f76eaf99a4b2558d75fa6bd635d2fe2a9ba2aecb99268f0b2fd066e5fa2f64e8324a219c2b5aaf5778ebc340c71ba5747e7dc733f4e563dddd235be5adcaf2afcb54bf9a2ebc999b1ebb7883a6cbe2c87642697737adb87db4eea1528b9f69f26f5eb70f0e5a6ba5a5fb7494f0bb4da53af0e94ff84d71fbf4d38f55568cfdac9452f94e5a1ca9ca17a594bebb0506ebb9905e92f392dd97a37f2798df50f7b27259b9aec4c44c9b799c97954bcb65e5c2d27e21e52793e5f5a339e57b7e0455b8aec8e08d6e17a68d2e2b17d2857421c1c05c57fa837e451bcdefa81413347f831818aadda329835fd1e915c1e0eb0ad6735db9acd4bcbda0ad3a2f2a3c1d6db4a16e0fa3a7e305a1266ea3a0abcd60b94e4b9ef3ba126dfceb8a96fc3ee8e9a02f282843f832ae43859703fe3b42da715a9c965ab12993ed9bb4eb29fb2a50a7e51dc1bfae5c572ea4ebca4b3a398e1f4eee45d82a27e5f759ca6daceceee8b08e51fa6c0c31acf313c31bcc1736a59f39d7e8bb537dc730ec5d85f9e644727518f7fa5e3d08068375ea4f99f7bff197f5e10627c86c8037f755963178a3f484b79b1fc458fd094b98f21d6f0d259ec1763c1d35d9bb7791e00f4ff087efaa1601bec42b5f6d6e6dcee921aea79689811f637e8339fe3af2f4983da166ff1d19c631f8c28eb7d35594b3aab98cc98c692e57f78f1956cd1ffabb6baeea0f9ab6161f46ebbf795efda7b7c63ec27fd4d371718d3f1d26ec5e8eeb4b184298e9c0c77ec297d6e29959f3fec25bc558fd0c7b9d7a61bfa36eb4e26894dffb4f8b805ddfedfed31f440c931e4ff64e565427550587aea9835c3872ffd56464563d1b4511710cc3308fb1fac4bcfa4ccca7cd3c4e5abdceee9eaeacbcbd0cebae3d2d42d7d58ced55c59ab3bb8725e7a33d219d13cfd8ef7fdef374c0d5e96b4fed9955d55535ab2af75f573f789a1ff3f17b4e993963dec3a0ead31fbcea2467eeeed5a7f6f40772ae5628222cb87a3a60d0aa59734e5cab4f7b5b2b2956bb27cf597da675d6a34113ab159bac0ef1b7e820ad5ab43835c618ff42d82397dea45d9366df59c8934b9acbd03ea71db9be315ce336f32f2c931d18fd2fce3c7f0ebf61b41840e1a34bc179e0bef67ca728b2ce9af65f57cb5ccee2d097b429a54dafacbbddcfb75a965db4a7c5e9a6d9bbef9ff49dd63f6967ae5d7ba4cee11262ee6feade6993cbdd6e767f655038b2769fb9e926ae97f270b307e48d26c7a2ad831865e286e355f0546c01e6a9c5dd5cd195711d372f47a4a9c17ebe094719a6edb8a900bdae5e6154280c2cd09754f34c82ce73cb8dbff1c89be9776aa6a58f4f1f6ad4a46d3214d76835bac38d9f452cc618b18865596632994c78e6be8ee9e75fd3cf375dcf93ad56d2b6cea5bf9a49a35e4bb6a4f1645b312c8b315a0c43e9dd71081452e0a0a6a0a130dbb89b3be240f6500f574fb9a419a2f8701ab8ae05454b765fb26bb590221d722d209371dc3fe7a4945f319552aa20bebffc4babf95d934e4a291dc7dfa536df71097162ff0bd940a1502894bfc31b2abb1d94c9392fcd253bc79204060ace1d4500840e6a40c84e06f5d965ce7977c327ce38233b08217470e7cd34ee4673bbe8396aee0437bb6dc76b9c8ccc79f624f49912e4d3aba84b76ad22555e4076ad274999bacd11ecdfd796514b2867b04e1b6b533a8ff867f1853a8212faee8a6d732c0662f6f8d7d5f1a3c4332478f637c107369e7ce33a508b518bd9d1bce9f049f6e8ab105a1c0cc3db4ead5ae66c2e86e1ec72ec63f32f0d737f69d9635a7dabc5ecec093257ec50376fce34ee86ca29f7fc34975bac960f9bf80faf6fc2c52d8eb4169866c81c0c6f5d33a52350893a617e3635f994c62c73e66caefceb298965bedcc6d553548a27ffa428cfc77e7ecd60ad9e7ada8d1bf6cfe64cac8375eafbbb2501fb8967a8dcfaf4dbe6cca9c58c12408419e5a8d9195529c59b0ef61505d7b59c787102c69ba172b1df68db9c480216337521389b8bba4d0b4e5d083c3c5f380ed3d6f187b05b84163ae7777db439d8573c4342c70cb367f2faeab956ad33fcec045794673ee6eed123d3a24c4988ff78a0756a181199734965b8f3e7937fddf9995fd7f5be692610d9bd9feb47df7b538d5b53f374fca4c1f5f7778773f87bb96188f1fddde6ee58c7a5cf35ae73ce8dd149d95b4baec1dd3a48f69f68dcad7b5c4b15350b0b688fcbc331089eeac94555ad0135e99acbeeb243ef5792ef5273b28b0c429750a3d0ddbcf70d8f30d2257f762d228e14a125d764d72a8249132cd554b587b9ecd387b884e35fb6042c539b433ffb4c528b23afa79e445d9999e065a9a7329506cdb8adc2104b079f4e6b4fc8f245b5192ad767d6e25cf5e641e91323d4dc4b2b8262164d34465c5594062226ad572fc77babb5cabb676271b7a621bf9eeb67a5e1a7b5d6e299d2ebd88f5fb21fdfca4cdb78e4ac64339e9c61b852ec5c50f5e7464fd6b26b0d6971d74766cf8f303d7b6719b62b4f4120e7c1e321c2b436d244584cf2fbd949e615776ba0fc7cb80aa87b4c2de2f322e893399aec72407bb85b0a7ebd328f03735376a5f42fcd2dcef599e975e2973ebec9356de391eb63dae6b464cca439b75af6ce569e5c33fa8eddbc8b62089f4fd64f5301cfe1cf010dba1b2a7b04505b2a83902b403385dec4e06ea8cd15c1a744269f03eac37558a7fbcc369e5aebe7b85cf18c7d9dfaefebbfb71f7964ecb36ca7e68b4ed95fdba5e8c90fe3701bd772210d5d5417be028289a425ace4cce4e0fb99e56e90ca8fedfa9d851f3518a196b9c589ffdec7d81fb556dd3c16667e3cb0dd2b41e80d71701265a7f6e46dc76969c257bef21f5f652f7295ff5c4817d275e542ca58cf65e5baa252e5765255ad2598b4947ca95595ab93ea2a4db538d3a8cb5eabbfd55c76adcd946beffbdb929061fa519349baefe9c3a7a95306f71f524a1485c889096e475fc0e5190c93edbc44ffc6df732fd196125e5a4aacdce6446f2f61f4310ce10492bd8d0727c618e34f9edc59f6bb71ba459d885f960c569ffea0c708d0e4baf14c8ecb8d67aed7e9977ff5cbef19e345234fa63b3543ec9eb78325e729ff27c5bdb1a7f433fbb4aca4e5b85c723603107ee94b38964aa5d2cbd2cb2f61faee79f28db7b54086fdcdab3cf9d2765099bea8bde7c9dab7a83e34461aafcf2e3cb3c3e5eb735cbef00cf63a97953b43c2f5f0af873c396a53db78e479518d274f6da766095bcb904af5aaaaaa627cacda3d6f463a6b86986659eda93e42f925c9cf48b326d2ad3e484392862256133981db95a7a6bbbb84b0e345610ebcc96488b71d549641ad5f6a5675f3ec4f7f0099e448e4439e8acd7a2ee0687ffa03f82284c1f57f443ac8d122b9c3918a3696b9f788c8495114a3294755ee866aa2ee2e8026e197fb75c2932d7c865ee006122a299426d54114a85695488403a933df2b4572e73b164cb99d07fdf44157c1a32d42e76744a52e04cf8f858e6e8684079f476719699e132e84fa5b46c4edfcee4df448280b20bbd65151ce62b5da0c09782b65a5528ecbaaf63e730b2b2c61fbec65df8d0c9f7a966e310bfd4676cc5ac076addafbd63cb7b50056adb6e5b8acb323dffe7c8b45207f7eb438f2318b331fb33836e761aa6dd9d36fede5aab5d0ce03fa3ce014aaec3a705d4b8a2fd9e55286a9c5994f2d4e7f67cff15aafebfa0b562dc2ce3073de5eda5ec8fd329a096886d8f50726a0d9b1eb0f786c4b366a92d4d450253551e4ed9e800aa3295a4085bc059e1e393ecf13e7cfdd3bbf0dd299f7db4d8ecfe33c88efe1478027000128004ba55201729639f9db7bef699e65bf91a316e3c3ec3a6ee6b9733c81ecf88d9cc1da18ba7839a14850995245124d02bbc104650c91411736c2c0020928a860a1e2051d8222d19a4228d7ec5a5310794f3247e3ee74fc3d079488ebff1e864b5cf7902a71a1cd161f5e2e84ebe15b17c27cc8c20b30ebef4c801c7f7b02e4f804c8fe14c833f45dd6994f710913c871e219122690e34f20fbbb37de0c09ef8d37b25f11028512e2f56b0115a2afe896c287141a74f7cbee971d802cdfb750345c0e9737538eef9c8e2c258bcb21b5206e00b2cb1e82dc2e3f8b13bd0390bb81a045a418154937e16c9fee69951319140a05714c71b79aaf793a5c4d9579efc1fd3957f90ac2e93fef5c05dd7f7ce5365036744ce36aa6dccd19ed7046a8fe7699768d06471252f4d565e53dd79bebc6d715e8da5d572e24b7f992bb8714d7bbe7e9a832ee69283192ec2ae52a4af176ed4a2849074351dcad9372ff966464d446444e8a6870b84ac655f6e753492e702285280a24d98bf29b1f1dcb0a4bc0e4cf1effaa721b3835d71f61139172b72ecafdfd5dd443dd41465ac839d73d1507f4a21fee8f0a41a17ce66c7ab9300a2332dcf8d40ce8465ccad9e4288eb894cbdbcb6f66675f0da2f0d1a59df4901717427bc9ae4b762d27bae40d84dcef5ad9b5a0187a1005b77929b8103a05e7c1c310c218df7b0f3e08df7b8f953d2d880ba12115416e0502aea99e6af91bbd281c6f5e4810caa01eac79174513532e6fae080a23a227dcc899c99fd26024bb9f5d6eae80a7faa1e8915dcb092d1984ec5a464639eb6a86a7ba8ba77a360bc9538da50697fe44e3aec6b89b7b0123770f2d9b7bc9fd0e867371339ace70fbfaad59a90e6a3c95ea915b8a71fbc69f89df0e3e3ac3ed9794a469a54dd44e9aa887b4d4c43b3ce5d9fceba939b1cc05252acb4b8b396a9b4c96f5611cd38b4b3f4bbd9a074cbf903c355f4a971d4cb9637eb7003f0582db481981dccd0acaeee14ecdfa7dd42492b3e2a664d733095ac3953f29a490524aeb85d8c30c5e484d9f5d34bb3c38150606e6735c86c133a7d78179fa304ffff457a9f426d309e69678b249e3402ed92cfb9b57b12cc32efa91521a91a03ded2e9f4b9752fae5fe3af6afabb4f1644ccadb4da49b03b9661776b166a8346c088d68eae3a63ee55483cf41f7f091a1c7e0320cabbfe1c03ea5e9c0bccd307b7afba5d2478b53a2947e8ecb14cfc4bc0e7dece9631ff3d9c683874886f9538ce6faa499ded97bd278328cc6817c4df65bdba0b59848759f693354ee670fc3e253a9c1f8222cfdb8bb5b712ee53c15a5e4c9f0d9f811c61861c4726f76ad2882e4e81176f69e0783284cb26b35c1a23e6ea5abebfefd3ef8206457e3f03f044670b6a66d8831c6e85e7277bf5f6fc9bd542a79a954f2528c58a294d99bf34b54a6b26c96a7fa4626468218694190ec5a4db0326ca2c78a93ce85f9f8c61e81be1cdd1070bc51e7a9d8ae61b9ef26ca7d4f64ce6f154e145d5a04fa73bcdb1f851454f0f676f3af8e20f8f512d32f6e867a9a6e4ccac6e1daf743792a82d01d8128258e28e3b25d920f4c9891b91a6b6060017e8e67f817844ffe0e135090753ea6c1979f4518e71797dea7a347805755c528f36adc66bb9bcc03dc667348d2c12cced8614286658f653b9906022b48538c4c4e8a980c958c0811614dd5ca470fcbe3043b2058c10364dccd192565f0e1ea29e799735616f18b10c2eed80da70f65370a236987a7bc5a13f6efb3d2dbceb0ec08fd2e61f47990ce56680c5b010771cecacf8334c6ca322e777349fd2b50fa8c2a6e01a71f07d336576118d6e6cc3b9ef207c10a9ef29784f376b8cdbbaee3bab0f31cf01dc39a3857082329e905e791ef844316dfd174716228b715d9b5a220e5cc6b1a0f95df9bb0c3534cfc5f12211822411da457a71e174e407746e081153ce5ff5250c1841d3b287c538132ee56335342ccef1f3e72fd8d77bfeed263d05dd20946db5a28fbbba22ccb4cae74df4489dc873717f2fb233cf2c55aa07479f6bd578a1146181bc212beb0e9c187818e716eb9f1779e8e9a875bc0099e9ca8d40cd8463565884602008002d315000028100a070443b1609e2649de0f14800d86a6426244944c25498ea22808628c31c6180300200410028c3124046707f52cb285e7e93d7bf11ac99b314d67d645683b9ce958516cf4d634412eec98caa735cd951ae218275b6b1adbcc2ee19e6332f49749e77a62d9f9330f69737a48b07e22ad6910b4c509b241a5be7f81d3d06bd1ebb0c76a21f89f4d6f029c7f706015133f909afb46022a13709855161e9fd891d1422ac248d5fabf3492a7be052c78104a9bc98e86d4a784186b2ac68a32441c3e55d2aee17e54f5ac53d52b14e7baf8f1c3ff7e8f85c661569d7b5a00025be1649af1c3ad272495ab7f951bb8f1a424633a55d3e3d73bdbb32072b299083c6d8ba06dd80487e79112b7d58f836608abede6465734ac12d651178b249f7f297dcf4880b8668027aa23c796493b73f7ab9889fca3980f453826820e31037bbc6c80a62fab3ec6fd83e09c928a65e0adb50a1896be2060b10f756c1fbb7d642f595e26b44d9d1816a384f542122dcaa700a1b5802528a54f6f5f1914047fe54650a59c396edcc3fe934f1ae796eb873d83271df9098499413371391cf2ebf6d7749fea8e3f42dd6cef034a07bbd76c5a7a47417f80964d3e9b6cd1ca897589e807f52655721af1794bded4a02aa7a5eb3be2de6af2fefa9b297de3b0d78690c671c23480a7faab4b9e8a54d559a38e1a9a2d3c245a84eda6f86328bd8fd90822fee825a57537a39c9fb3385d2ac48cd56cb8cb84e1848fd93f19c211e08a00f032b2c44b650bd3a8eef21bc04b67711a34ac6af68e3d89122ae352392ffed052d62b33b1b77ca601f83863d0416a57f34c44e6808fbe5eae890a74ee826e19202a81e83126c4ccb34b01a8404e3e7f96a12e6dc1625e2f3830b98af44a3208ef07f8965551aee163a9ca30f5a4287d815430a282edce24af7b3c97c1931fa55cd38909775c321c129c963457d275dd138a05a7baada6175215c26acd9919932f24a3a4ea5e5fb836c8522579b722e1d4d300e1d0da6efc825cd3931f23b068f0b3fd1a6480ceec62f728d9300bb0782790892e78b4f0a4cc20419025b90b6291e1f4af053eba73b5f4088836c0390d084f30fa1f2798f68d9f715ac51d44405d69c9bd8f3bd81c02a161e9455e27f53e986ef45c31af6886a711a8d095f80a749f5471b990a4b7c0223593fa5977998131aacbc3f06a20338250e3ba78f2593171e5e8df716ffe413d74b9dc5938e20b25027ae97686af8ae108245738199b92ab9f2431bdcbd16adb587131cd46e68247c03883504a3292ca8c706eb04132e168626da1ae9fd6389d069ad9997a2f8d7633b4f9999509408ad252d6108b3776de5ba27668ae5fb8413122b3d88aac1e786974f6d7374bf3909a528a88c0d4e1a6429a16b39171f47def29ac4b53a742aac80e0da10c32077da44ad835a7bb2efc84e0b5856e70329eb5d2308af8f0ed91709ecd8d85af3af1de27c381b2427ff5cd5e37662dfee0cb4c26a00d66a01e39566f0fd1f42196498ddc4cacdbf968326e14e9dccb6de68375e5948d10167be9e19013b48ea82a84577d2ffbbd4ddf715468d490b865451ac160fa9a82f45dcd9d3a5554beec815327bdd28eb4287072c1223f42dd348bf93e4d0b93cdca45b4208b9b851448a0eb3cbac27288df9502970641e321379fc95d5ac5689ce384a480434fe54bc6e9f9fc08b334a24db61cdc0106c711217e5be380e134f9c58881744598abee12b5b6b66cd375ca47326292acc04fa62c7e7c281d23b0d51cd19fda742e6103e10cf8c324cd4aac5b30fa7e5bab31fde9ec9a2368be9ccc0975d1b9131f12d74cd96080d7311a3511a36d4a0d28936c056c3499115f4adb8108eaa869ac79987c8d38eb83d018a827a5511125918118660762fa46087d2b479b4d4c7141c872e0618d060d80d567e7996fa8ca98f28c436aeb08b4530e4081de6274b8fb621b66b386e110081353d4aed2897eb3526c65d90d0d541491252391d208a818b146a398c842a0d3e7a50f0cac68f84d6eb98fd7958b7628b58d3a676bb3101829dda736de189b591d3abfde140f3f1fb5f64d7af907dbe64aeca4b59b0e1a7d08c3bf4351cc43cb600444498e32fee1b7a9e35507e5066cdb038094adbc1c682df20686a7cae817e63ade818ebee7b9bf30c552740f20a9be89e0b8d97c13e4b996a256466f3d7d0593517ca2fa452e17303a0842d7372922d9d5576b95b6c895eb41f4fbcb9351f1cac0dcd796b92612b3edda2a4957cc89053d6f13251f117f2c6a5f8a6a874cd4d6d631c99ce1535a62d19948db58d2b29df7802a52620ac164f15050755cc61d4f1ea88b009760bd55b044b0d7001448b581c5ebeb29adf5287f34174798dbce0058cfe00f6af1d46e633d52805eb5c0820ed6dd80ceb13624be8226f9377c8892f89d37d27d4c2f595aed195ac3d252cdc7671c102b0c228d08a6e80f06002a55e0a21dfb1f62c114b2cf3a3400aefb8a15cd992e356d2ee5848c872ee20b059b08d44892407b604ddf82151bf388021cb20ca47c77267941e246290a98faad539d233da3712995118d91f71e98cce0315c9d97e93cbaaa0fccf060dacbbf243149b1b323697f8c0c14512c4dcd1b04aa63c440d31e795851e314e20a73d5e34787658530276bf83d0c8f939c736199493301f421bb2de3884b6cc8a63e9f40e1e5256e199603e1050c3d8c8d98fc5f65934233edfb1822ca2140a84470ae4f1a84dd96d2f7933b2df9cf2ca22c4f52227d4001123762203e8e577220ca01739fe34a6d3ba152d54b999291eadb1b7957fa98db570c1327dd3bbbca39f4c901d207f90210760e631d642521475bafd81d0988cbed2cd2578993d32781bf726bd6eeaef36d0c270b177e73d8f96d2c6d93a26e4f90b20002b08455f48eb23cc42a96997d423bdae7dce1e69c00bb6a621362230795d31679bd202808e6094401fc21b5b66388407f2da16d7802ffbc710d7dbb07541590090a17b6d2e8574071da34d8d70a7dafeda86207916890c8e1e370e80e81fcdbba1dfde6263b3875ce126cafc0b6bd06b2f6b3285addded7dbe7a6f157250937b675f40252ed98f7be1a8ce65851324ea81665c0d2c112e238da1f263d4290c28eb08f621f5ab8452615acdb7a22b79614358e7c60c405606d479269274e10820694619484091ae13fcde9e08a690cbd26ddb622aa74d3165f00429992b62d8a90f49aec066ec932f8e5a7662776078e6d88f00955f98e3d1662d8a045c58e43676c6639c8fd238b9d1ac8d22471c7d332565360d3c8e8e64d5a27a3a8588fdb19dca16a48029bf5f0238d22f0ee6137b24e18acf6be9f4e4b08a6ecb41b23d66f9e4854e4c07594d03e3eb02b0c80072ef4d58fb6fb2b93714c28b6899cbfd34f80acd2b3514d1ba084ac3bcd27d307314c5ce816640df4dacaa65f88b7edf997f8ccd961062865be557986913ca46ada4dfcae268a862ca414246858238ee219c598bbb8fd56c618d012b99c472d6b039007d097d0223cbf6d53b095b9a01e28fa8b8278c695e4fd675b34a5766bff476c945813febbbb59e8a56c35c41aa1e64d2b80841e0003140eb24e405a7bdf0ff059e2b785db6ea43cbc529ddbe34320f3175f4c798f227d080430df59588c9e2f4a6eb8c19947d466e2a26f8980ef1f17f3de3ea5bccd5c4131df51c67710e3b477e193308800c1ac9fabedf314d54688e085146db67815c0ff6c8f7b33acb8de0090f8e2e2f57de5c351294a44b2d1f80632cce1c0ee87438e16a2252fc87365a4f0d10c4eacb4b7fc1d7635edec4dd40e8132465842256164e7a3d9c8757427a8fcb551406611c4bdadd404290c43b3b2d6d4d8d0fd87f9c46d2b79beb9846798856fc5c6f3d2bf5aab0d9e7b3c6d015ea184e0bde14894469b7f44910d146d21d2764206479a2e0c689d80e0e6458617c88dea6b9acb22bde81e4da8546cec5c4f7ca4c7cbae8157ca37c0e13951d484e93c6ba45e4fe978f6e4190ca4742125d044d9fcda910b0be6664dffdc306fa0b4a4f551866a5f9965a0d9fe4352ac83861a7a2a11aa38ed6b6746d4c76649ed6b8c25a12859b22bb4aa48b863181f775e6eaeac001ccb1d2dc6b322facf496d9d42f00885813487a82444e2be0d1b8394e69ac5bb02e721f54fc850d55bc8194dcf6d9af98a696b8f5529e1d6d7f14175a2f48b618a056a9e5653a1bbad3bacae9e93b5e20320708497ac91f80a5c09acdaa389fa8dd8a336b6f2ca1a7bf681ab82585ddde6c07e062f91c9fa217bec8e83fb32b477973ad65477e097eaa666c8be6850f708f810265e1ced492e56813f9d4bd74bf074b6636a9824f35562b152bf5eed95caae67720d95a14d2e4302856727cc9a409f021951d28a096bc899cf79925f338126e2d39deb001d826b0f19e9dd10037cef201bb42282d3bacb55cdba4dfcae1ecf77cd2f949280d4c0228aa7b820cc1edb375a6d69913218d5dfc9d552ca15e348a4dae69580a3c32db7103b03520e94ad3325ee2f17786ae690f64bf58ad791c33ec9d04ff9ab6135a3301c4c56a14795f3df3258501322c1a864f7dbb95ab1dee9e04c44832cd9b1cf7aea97d24ead2d3f7680d1009c42a6e1440cd3d78302a3bc11910e26d51850d9592dd01105df7ef473d73ce0431b0303a6303b38fe5124bf4395b329b8d6f8e3539a8100e94e65b46b9f2b80805df5cde43998c52c66addb680d53663697f8a4269f6f257369c65e78bb3b570162dc192ae70a88bca49e366988c37ed531d45cf1814c0380a6fb922d24f5a2fae621b67d8da99e874ceb4e477621c8e5a592e8907187e02324dd9471673cac4b71eebc6498dd0944d449c470362d39502fc6ad54573e542276b303f9b9cc32ccf5fcd0bed84c34e1656ef092fcc1db0e457770aed0e96d6101268968f07a08031b5e7549562a62bff96a6f4994c1d5e97440c7ae225a04d4d827251a5b606f7721133f3230996d423741003523548e7907ac461db2b9abdaf4cace4223315152775457add465e6f9558568052835e371a54f58e07af2653e01b85dd89906578b79188ab6644a24be0ba9812123d6e005a64f5dc6009775aca545a7a8e60876ab9ac147258f6ff4829ae4b019bb169c87e8dda94203530b61dbe74b642e3fbda41de5043615c37b7a0a12f2098054efb9b3863e98e1e8f912638ddf7ea9218ab36e23e3589bcda46af9c781003eb19ac7d381f16265680b7f51ec76c74339da7e8661ca37bdf49766ed25ecce9fed503d5b5d6305579a1f8454033a4287a72dd24f3a08e21c93584ba37d8eb237e362c8b705952cc2d90b7564fd825029f8a4853fcb54649c73a571c2cd89882f998af1058587360cbb793a4e8a55cb1fe0d40f72bcadeec2376eec53bef045492106d3878ce8a9884fca7a0c62c5b1fb79d0e1b6997cc62953255030a60f20a0f388b300182457954b95e9fbafac3516a93756d63fb652f7a8f5d2aa9187d0d86ab6f2f7416195ca76561283eb225aac0e6760d377c1a04e2360fc196647de2eb0781f5c3387c8c1d4ae750f4d27b59cf1851c43881d03b67ef3c1705a84b98c6399891f198590f5c4513bf2581bba7f32ed133ad62094edd30aa0b426817ae19ea56ff477be905523835f574f56b2714cec80b2467acff59f0cb21008860c6c6abaef2ebe07aad7008451ed49e78cbf4d5847939790d2a5ff8c1c1d3cec4c62f2c12e5a8af4e1469b7cb47dbf846d5dceb35235052a7a98e536d290748738e37fa7ac0c59cc9572f19c492136b22c10067f09eac7a06e49af32f77b45c607d54890f36d7196c057ef73e3f25ffd5e9de26b2c38737af5c8eb014c5a5f406a191ebc6d13b38a3d52907029f2526ed062f852d1d1fa384e3048db42ad589e6848d6878c6a2e6b6d8470dc84f1d9af70d350d09d27942953a0cc19d3f32b814945a27c0138d0055f000964c7ed8ff0a40cd98ba4bcb2a87a3288c10851fc43ab3f1f51155f9a40104981e9a81764c2665b0748839aa537171c88ab1ef985311d9cd5cf794a8b99eb9413a1d911e8c9a2d0a85066f7c600453631e2618e22a1790447ea18122056c23749b31824bd3d41ac47a3738ea75493686d8795e76e0af9d1dbf1188db369923a054566c6361f59104af40cc108049215afe68888ff823f57857f95d35e1af5876a3aebae1ed6b32a63288a95d2497f242ee3713410aab0738cd6d4689b5f9de7ef4e19b218ae3440facede380e48f83f85a658f98a133be2d929f5a167d6394ab842c999130075591351ed303d99552ef788a45a210dca34e08121bfaaba722765a30e24b1d7a22198bc9a5ebaf778b0a38ebb81bdff5948619e254ad85a8462a91548913b9489e0c8460d68447baab01d1915b07a7731291260edc0b4a064e6356ece4423ba88e830d5925c75188c5f2d37faf4adf5e9484526c65c0549aea032441a0f434b003af102880fe2e2237a1e72f053225935272efa2b2cedd95080dba1b3cbb97afb62ba47a82899aabc276a740ea8708e1818209c7cbd585508a3583a12250a1331779e72a0570b7a14ef34b93afde60e67e8908c5a9d44ad03086d212ef96683f31a76ce6a0b931d7a08d167cca4c259bfaad90c50094ab784b842653aa1cc8b9b603ec29741496ee9fceca750b873b99d41d429cd93608924cea0ec054453509c779db3b6af644b3d0c9e9a3d89602291fe9c8e290d36d233bdf920a35e4498c3edcc272ed00711d3a92c646559e839e0fc29ef60d6f1120fe60de8860ee437470cc913d77c24d157565face125f04e0b321a48a54492b789de5aa8e949644ce391e829e8d57b54199290c30093920a37b79cff080d80edf7a89d4fd1333802eea87d74c0d2409a977e0bcc593d55aaf71942af033bcd88f51844aefc5a4cd217159a11586811ed68c85d880f66416f0612f400001f7bf356dbf60000b582e9a90415c48a8381692901824ee4e38fdcee03630c958cf93f4138de4a6a5a926d198db05e674a002ef1de50ab37b231ffc47c6783a33ed8bfd63fe62df50c169fed73828e2d780d6823237bc88e5d44d02f30d540541ac707447125c92aa80fc86f6c321ae975fd27d0e7dc569f56d90bf942522cdd648ce63b10d8ee530b420117ceb00f5f83ebe8903f30039e7e6811cdd580264aeae1874aad2df373c2e722384c84173d701dff74b82ad84734c4c30eb7388a8eeb1a28ebcbc0ac991515ec30d4ad4d87ac6d08afd252664a86470b3dd18e6087110701f8b343a32c3baf2659123316abcebd12a100a5ab6007543a2fb2fc4a3eba593919de9380033884ac1d8850a185e2f02c588a22606f87704391687b44f27a3f74ed85003b9fc8cea1b08dd6668711cd4ff1ed443fb524e19298e05886c0d7998f01e304cc8c15ba568be161112bc990849e1af359cc1a3bb13cd254022a64601edaa29ff2ba4a14b010bbf3b2078b2cfbed6400266bf1e3a8bcd0c5c50e6b28d57243e81d68da2d9748a2f5c5af403f7b99263e0db862f268f149f46d146090882f20c13cc3514b6f9d8373da2375efcc1c8b4c2c9c52475c7ae25986acc009b2b5d96bf2ea311e9bde81d8bc2d93e594cfc20a2689a16cc0a9c3a559e823dd6757313aa6c94923bbb40538dc9b5c558569413659a08c314cd3b6fbe4ecc8b0982ee8885e2d6b686c4b4699f4b399813965150244323f2362656927823553494c167f10f1e1c9084a2c5448aadb75cd63a84c1c612d3303fc6f58b582fe76cb97695098d7083a4eafc6810c829420a4a01ba5d08c6c24391513629267f5b8d81125bf1a3c8e85fdbd9094bc6d321e6e9ce1e850687cd691146315920314b3bde1ec401a33137eb5d28db5fc373fa9f6bdcaf69a8034ef1fe2771dec41fffd1c87dc514302fcb5805ed5432b1a2b13a40eb427fc30cb8402bc327dc912024dd10f0bd15c9fd22c2d6d4f9e46d3978c87605b812557420e0a88ea98f96916f9157f174e0cfefb072fc7ec27ad8878d72c1493fe9612078064320e718f4e7f7b2e246886b643b8546d7456f73c847788113e4c3589e857d0258a37f6b024383bc772a6fbe182ac37ce84d6055403985bbc8cc22d3cc581ce946da7c114208e90b200ec1e2396f1f1cf14596e684072423f92ef32ca5d07740577a65b316e0b72792eaeebb2fd64280208598b425f97df2d0028be53323c0c280b55355ed3e3413404ec8c17d95f972e5e15a176a799ec5c45a8c55a48846bbeb8d7c120177dc857edb2adfc931b63bf5b068d6336a41e5281960bc984809524391442bc61c171edd29b0c770e0d5110c0e82c237fdc15c62856c3c15d97babab046130316807b7a43c32d0dc90d188cff7393bf3ee20dfdf03feb53594caf77f2a8a8b17f39e5570770ca121241786fddce92a095c5a068a197ab6a395c958f9dac784c5c42eb5eab24cb7529dcba2cdfcd632c8b2e6e3cda6a100ce72aa4fe1b99b5fa96af32f3090c8fd2dac40485b33d55385ae39de27a9a1b9ce20eda7ed85e653374fd58432779497f55a9b1a3328be00b9c42f9b1b559ffd1e89ac2087300813ca68885ccb0680a14baa56fe29519481abb9a655303fdb7b9d78aa33986e18cc87eb92175346fae92b406a33b5c1d5fdc1bb44ae20035754462bf4c1b1bdf291a274fc5971a94a7477934d5961142388a013871ff7e1f12c580a5d87103c015d8bf01955e71767359fe19c34aec9afd1cd45bbc8c72e4b3e4fe48cc76eceedaa8a5a67094702b3a04b6b8a1da3a5c436ae0a901bf3bec1d689cef807d4001c07878fb1284f34a7f0d74c7c58416e827a590439bd8098f6246aab560c0aee9eb42a6012db2df3e85866d44242ff85b9e52a01fbaafc5555575c780a6af82573a0013427e1d88c749b4df1f98874ff2a320053d287c45fb069c133733afe270e8933bd716f14f460463bbc3b77a02ffec1929d48ac61ee3fce747e7c2f9dc086efea68cef38d10f8624911aa707fdfa5d8e8d84c8253ab63fb476e39013b18c5ffda1ca7ec271a82eca9138024f0d980c386d0e1df6121add13c12a3b6805128c23a22e9419c6f8d84e7748948c3dccc6575c97642181871987a6408b3545ed31b10cfaada65bdea37d136c7906d032ca47a40ef7228601428fcc0e92e7dcb84acbe4e2445277aff1f2d4d1052b1498058b78ca90090290993f3bc41604aa473c585d73cf897d0094ee3669954c2da7e3ce5a10124cd87b69d02c00e584c5921befbb096aa54251805d2d82c0328133b16d6534103327093385beda8c0e7d9ee38f66f950f93b496bfd2bf9239ae5a0871d14501844f2ceae13472c2a1b33df175dfd7f5242b7eb83df9b8cd9803e75bc5a20118f823a6a48415cde71e85e0e22958dc111a38106b2a7aaedc4f40649e87824ad9f8dd24c8e6c0c24d816692cd8524f96c94629245b0c67a54b1311b0a3dbadd3a595aaad5c242a023fd3924785a291344d75881afca07d88a80dbcfca511fd2197395f537a4e66948fd9d644e0aa936f084604d54ffb8378db14026694ee1d6e35225d2a6c643967f6fed6678eeca5f99924c5facaa588974ef089e1b4c56b44734f05858d9968bfb1514e8e8a0b567ceb72b429cd1d92675cdeeb59889483963e28836b37a2e581542c2f143b86037ddd5b653dcb105fb460f84ea09b848d87d9fbecb450f8b4aa2da47893786426ca510b25a0be67cc14a85c0da6065981685d4b6d0235dd8a1cb479fa4b009bb04a6f700e90ed1ceff999c9c41e5f4fe199342ec058bcc04a681394759f159479067dfdec5161a7419344c6a744ddc2f69b068415776ab9148c20ba73983157b7c2106fa07324b80d545b641a9af267c4f892a21f0dc845b1421e03171d092247ffd36892048fbeabc93aa0b3249aae50bf95c182e4c6bb6aa11cc010e6c1ecb08b1ca43b32b4e0bf099de31551371017216d2a8d920820dcc929bca8c609c9f887f1ed6237e7888a6e517f3fb64eb41ecc99f097dee173e76086426dc910c9ef66f07d2bc76c31a2e3611f7718dd49ccee095021c7cd581eddf1e0a413b8d72a832ca5a590721d906d886618fe9c0325992f9ec49bd74e000815c2d838f35dc32358b9344d09df4b98a4030fe9384e006706574be154abb38259a60a2cb884419d02274374eef3ccca97cb8de53a0b114a22062402375b20c58b6c9f1bb4945876cbaba966caaad748f485c79c4515727599dea1bb4994b50d683c0bb249b214a1644bf4cfcefc94840b51fe2c6e215c0c7ec258f42cbf9a658ada5b0609463e632de74292170594bd027a473135a16537f129fd8ec00e2510017e8741072087a0d81ff69494b569fe134a650195448f526681c01c347a72a424b29381f8ad36c168230ccfadc87ac4bbdfaf3f274ddf93f8d2746156506b051e2f44f89e330f7d7631c5fb610a883bfd40e2cb049cd0212f239d9f6e1301151aaf6ec95ef8e314757605263971f896c419a66b7b442b77614b2eaa3227735692b3a57de54739f9f07edfd96441e9656cd0d226a5ebccb0057ea7c7f2742254200ef96c8f6b0d06e56055b0e80fcb1d27baba03972aa87d8b54ae174174edb91f0f1160761713c89838db033d813cc4dee59203e52cd22c78d118f58685f06317ce511929c665d8830abe5cce1d045ce8f1c8318ce3fd83f62bfc271148a63d259fc7f2e27ff405fde40b08927c533611132abed6cb03a3387fb28d77f7f216f2124ba2cc5a7e2738995525802b518858b5a8dfe0a8993c44e846a6a4e52dab399643768f3dd2c3c34a48c046fd832ebd7e1ee3c61eabed802a1cc40e03ddcf77d2498ce76483ba67d78a404cbde0c6376d703ea10dad2f0124d98705f0fab02ca29cf726049c9391efb8e9a8347f20456e8277a6f6843660fe712ba4b35d3501ae2c3bfafa3606241aa94c655a50855c838bbe9a945af09a2407ee537fcbcdd615ae924ea37c9f2ca51b8c666eff7811162083921863b3e6ccdaf476685919e7a8e059f58b1b66d5e412ba3c406fbaa4f960562dc0717a6c418722cd9b072b4a0ae87406c9d7cb7ec96eeeb4c462a6e55393c20595174ea9e72a6f0082fe2285058029305d46da3b693e7ba6ec385e6a502bcf44c8b72717dfb500a0982d3503500d717df501c3e390b77d690542986f6c339fd3594e08cd91febb7f7d1172c4cfdea2802f36e9d99cd4d6c882cad8bc9b7250231a42e7b58647030d9c88cbecc2968dd14a1f21f31dca50e4109ced21eec13ee1aae0f7fc84dba5dc12b3a461f97e504d65119e2b89931de64192d03046ead3179db5ccb497345a8ddaa1a64f5acfdf567f0be487ed40a7c207092e48869193fcaec570f92eabe1ad14531527ba720b0d4a990b18d52ea1469130c4c4a875b021cc20a296820b71dba10ce45e28e0800cd585aa3c8d708d757a715845b162d47788384f5ca9000816c0096a72e2b4d8997e6d3295a842673fdc9007c8b9c14bc1f56b4e14d1a466018f9056000ccf0edc3d267c19f26b114ac7332cd99c64e871d6b216c706c5e3b09ea220354e946a29c72035945caea4ea757a53886673158ac456ef23cee9ff668f6b22dd22746a2f45d261d85c57fc516c8126b2ea0b7d9a60200eb058f0d065c270f5aa6d11ba40460893fc948bdf29127bcce1deb9289ea38bcc986267193ffbf9c20e05d2493a82802f024640fd2a3f1cf1bd8796b545db628d8dc0f1458188bcfddc41c9c73039b9754338a8ec0c8ff2daacd6280634defb5908a7f8d3264a463fb24d9b1c2202109040339e12fa7d8a2fa13647d1ddc994dc3344d52ab183a7824c150d0a8c4d81d44ef0e530a443a63877b1442186292198d78e1bf51083d8bd698c202292119a0643141fec2945b9c93676993318f70ca1f985f2c921ad9b5cb71a198800b598b35a0a66b57ba3853ab0c8d5309b98f53b9993e7222aa96e85e1ae711dd2530f2d8707d508944733450dea2550002d720e0a28fd726dd396edac45f68e6769f254bf751781a47a20e0232ffd3400f2d8112d1d2014a391f9a4f97b98e556bbdcd5cc9836038cb8b84a26c077fee53c14b3519cf1f6db410707406e416c716f6a5a53aea0c2f54a6bbcc5a5cb066d961a67a3f4d71566e5fc14f94b3715cf90f3fb13a0e0fa3e6abd8ae544407b331a22d8876d83bd0cd7c41afe5883f54201af6ae546b005c0f59b01cbe9cfa970ab167104f7436d85ffc2c987becc51f903ac0f4d019e4c7225c6c5fbf676821d24dd74e5fa12ac7e57e6d31d98c1bad47588a63a7d82416984a4759c5d0ea615be4a98bc5ed13c321a1cfb69fd717ba02b6b4233d1abe21c7bfa425d48c9863d97b53f83c8055762f995f42f7003712879bee7c1420de11bb21e4bdf4061bda9a81b416095bc2bde8441e916504fa5c2325a1971e94bab6aa5367271110a92ad86ceb4f45a166a39817b3711d0140bdc5bd1b00ca452b3635cb8150da63aaf1554797dfa1a7d19a9c831fdcd3edec689c6f72b581ffe9a97932aadd3cbec13da9f68acf728edcc67997e46fb8de551d209445adc867c85321e48ebd7958d5984da837e522dfb0e6145aa9ebc5184650fac3830a5836dccc2b000ed4b71f2224797332deafbfbf84eea58576835e426a3b18794dcb67ba691a0d9b808ba541a447bd233af1c546c4a37b912cf7072bafe781dbe32360631c96c37e3b8dc8a852dc69a79f4860a127307835d7d7c5eaf24cd81605312eac4b47739ea395c1b155e3492eb18b8fd1942c66a02623bacc53a90db8e051379900c22b53031ef4421f29487b0e2bd4a4b1934b5c6808548cdde7004787d920624dbd955358c3271fe773aa700ab06e0e4ff7771905837cacba38e14fa578b54f4883b61e28231e3f6cd78deea7fbaa0a2384b64a27b71221c1308452b1fb125f89e341ae854bb9f30ca6305b899d99ca656a471f1bbf5a3762723df78241e4b4e9fcf84274b682e41affeb03cd0f08f18cf98e392e6510b736585bc039b212e898a06031aff568e058a1a81bc95add6137df159a7274b0f96049e58822d91549155fa71a95125077453b366bbfbb406109e4f1912d321df01a64cb6f0d0ad429f25a65184812dee2929b5b90c026874e13a4f8a19f175c7d613bb748dbad8f16973f39a2e38b1e175d77857c1a70f4dd579a46ea77f7f6de574e79679134f0c5d0fca167d084d6625201e19da74cb9b1c1b4b0623f20ec4843bf54502a4ba87a25f1974f2dc320625bf89f26ab1b0bb6f26d3a7f5a7733131b3c6a94af9b1d0e102cea73bc7f54a6dad8cad4d5525c2690b3741d8d9db3250abeea86d909230b24e0756001092d8783a7fab34701f9e899550be6680fc6d1374a132f0c2b9ce8355877064aff0a4f3c79926e76841a64cc7d083c8e77b08370b4ede9229a5e9bd16bb7d599ee1a20b4341f52b22377916e815927e7d2ad887511868a91382e2e6808322173150c14716e86e1c187128cc39da116d1702281c81afcc9913deaf11c2f0eb0ecbdf65f23a297f69f21afae518127d6083eeaf6c32c710932f70b9c90095a840590b9c9314d84d58c49d54f78c1f47b052cc26d2fca6665beb6719b98068cc1c191f823acc6205eb94b62749cc36024ae1f5b80522e9a37a9f1c7f3681cb697988c14e08583ed498a3ed001e09215027f7b99f10f9bb804186a1a44530f0124252e3569a5321ba85132bed1c26d4a26ecb8bfffeba43343229f2294d16ee0714844e19d34b38c693e0c831dde41aa0a4a4d2cc152f0cb8439ccb50ee1d9a5c0a69acfa236de4342e2a6f2872c261f2e6b824bd2ba29944f90ac69ea559bb452c46c3b56a97af4f47714626de5c0e8f540c50e8f969332d67704c4efa43bc00da1321b4b24fb3c4705eac82287203bdbd55c7c81ccab6113aa96930d703ce17726cd64ff9ee46c30ae25ca3ec616068846a613f4184701f50795de2efbe4cb6358bc22d2851985070a57ed8be563aaaf0de31e16808d323670fe809e5703ea9dff3e7ec69b246e0c4f84b1028481490fa52333b684024548b91681ceaa79df0d9dd96eb8b8e5a8a563122ba0f2426e9a293b8aae92a2291707ecb5074482cd11059873b0bcde0f2cc3cb7cb96a22812ebde32f646b3dd71c751ad6406d25d881d0e762bc38a8795821fae8a6755733affb10423cced1061a753c27baee5cbbce58304718efedd72afb54ad4aed76795a57cb88c932132c0d5b78de710a5ef9f7d18a9f0175e21c8c8ea61fed7bc69f4955c2ccd4c2d63c5f8096d4536750d919cfca9579f721e7ee30d25c4ff6c516aa047529faeaa9512cddd13388316e8dcf6e66339a0f7f5803842c16341ed15499e0a7d81ac6656392679580ca20b48d6ce2892d7cf2f3501bfaccbb65a5754d4d164a2c722d1a3e06caadbc9dab82c4d1299bcdc4ad529ae242622a7226a2c29c8638e6c356c14aea17ae95082b8bb3f0e658ab0e0bd742de1561c6ef89ffc3a860859d46e2358e6deda98d8b185667b3e07e1e3e68b380fb0f8c1b1e70c9fcd1f51ba1e427328263214fec2b349a88280536fd1af31b8aa1fade69ba48f8fcc6498e6c1555f4ff9600e66de0a71451e8c36404e380c31ff4889f22cff3636a87169025e8b07e1457928a5d8561b5ff7342a1f2f1c70912143608a37becf09ed66856392dbbccac89dcacd2a4da1aa6a66dd7186622969840407783a06b74b5e574ef6aaebd832453c0591a63e4456e46e22456bc60ca0ba21ef65e8d6f066f21b251238e12dbe18f136840096b559b87ed21963a88158f4432954fd97a33c3109b4eff97ce93ee81f3b9db731329f1713b182f2f71353b9ad128400079a821abb82441b48b8f0c1d90f6945cfb3be1a5b1dbc08780bf61c9d58fa6168e5dc7ec943a1d62b7242bf023b81eee63568d78c984d320e7038dfb019e2db9f4e18fcf78ea3f4c9eccdebaa777fd4ac876c79ef9024e5edbaa79c3c3d0f6fad4c2e9f4ebebafe5be9ff1814210a806bbdabee07608f0af4da8b600dbbce9fb40713db26002667faf3f264e9b18046e3cb43505b2740110c0747368aebe2b76aa3540bfbdf88ffac0067ccbaeb8c8760c003440ee76df2ca11a5835555025529174a8b3cd9a40fa3a4220198726412f845be5620e9097d91fb2e8d4113fd9162dc8f861534beb80dd091c383e8387607ee53c14e069f453a084e095f42c0b4ca0a459315aa36f3a5adde2406533df7c84126d313260301eb14827bb9ae944d72846d6af573dac3eb2bf822df23107186e06703b9c15715dd467ae4da8320a3d05f72537f782e90492c801608f321b0fe055ddbc1faa0c8f517e2c08c26004d2b1984a70ec3d12fd02baa8848c8fef452f799023b4b248f3656fad9ce0e9abc3b7ddef9676b5c3c305cea3b2238c406dccc3eeb617528f6098956025cf4bf2cff44a3c8432b82a7c861d880af4ff0eb0cb42b6192d07d5a83edca10f364e3008eb33a63fdb9a7fd176ce668cbeb0dfb565c87ebbd2201281f9a890837165943731e5e9cd699a6cbd48771649b5b51ec4bc0e37a6904405d32bf70e310b9320b9ab1037fbdb13978364de6d220c65936c115921691fe5d64743f15fb44c505e45c74c99a32de998df1def0ad60a1ca98f35969cac948a2aab9959645e6a33acbf0ec18cfd8a636ca3d93c637bc7d3a2b4092542c18b0d894673a12a96b4ec089deb3be24caad040b65328d072311f3772b8561f6f8abe1e328df5dc484875ec79467de6d4150d0507296042d0d9dfb0a0296834e8ba505f94084c9f76527d59018dafe78b01a050ef005346c59c1abdf51fd72492879c46a46a8ae9f80f746e0772c1f2aed5bab64f881910823a1d607b1aa4a5a4ea5b397f14fb8814708ef04a0851b89509c6db32439e5e6cd175d09d2de4ee389caa982569f2b786f5a5b667b30b71e584cdd06cf9206bd1beec6fed1779a32c82cdc35353eea3225ab13b2198c19d6390cbf4e455d45168072e31d4e795db03a781048fb3d883b9d19d343dd69be02b2d6002a529446052034706346a3d3ad1643d013c2b9c9051867485a3fb0ff63096872ba6b451694c121486057bf146901640e52420869774dce43ce12ac800726e5e6a0b6d7491e124657372c030176784a79f20990aee2df9e966bcdee909f302c76778cfd8f775e23ee8d2f00d8298dc1d607ee633d300917e3855935edf5839b62aa81a6f1ef89ca105e4033e34698f587ccabbdec66898a4cb79c791cd8fa972d82dc7eceb5fc16c52f4267fb5a3b78f443f63a2e32ba23568dbdc708962d19178b3f038b4183afe0684f21a13a383c82539ded038c0653d128651c5a287486ecfdfcb74b8b5e9d7968c8e2605a0e1c3562acabca6eaef612a75b26b454730f9fd09afc1c54bcd8aa2150e405807f58f0d401537110daa4ed21ce28877c8fe5581ffc65237044b3b048c11131d380d3e8369c994f642526c84b58dcb2ce9ce86e02949fa4c8b20fcd01cde3e2bf96bcd0e6d9ce1e4b43c8dbe7429ba7a68d8865d989779782ecb25d880e8597e0f626a6c61164dd5d1cd7cce406c27fb57df8aeeae548e4a44012e3e14a7a2e2b3b67e59130438d1085acdce450f71dfbe01f10bf23689fe8fe8da2de77c8764c9f04eaa7361e75bf88ff8555eada658c8572e3fa185a3bbe154e92aee9593107b03cce0c31223e417c3d2bf8aa33dc8e43c859695063c0122a4ea7e955f3aa9c562ae3416787f490a850df187959fe201484424211e4a286c9250be387469154ce3483622bc08397fcac5718a45605c25a5f0d8a3b4173537c090af8c38c98e689c07a86d637f83c397ecd04435e6c77d1162dbf80693d04b40e735ca7e31377f20e695d75c232600f5f97a12eb429e32451a6be5300aaa766f81b87bed796d819beec2e2e42e3d234b80c7418b02ffc07096802a097e032835eda87445ed6e9234b2c906d9997553db26ad44c59e42b458d3944e0da3edaca8b9b7d10c2a78fff1809bbe0583c119c3ac55e2896350ebd6caefd8f71f811871b6a9c84353c98f29104f70bdf6f71b94bd4fc49d12e0f14d2c673a2667ea67c3b4f5b2eaaa7b9f7ada635e794667776cb35ac959fbf6b6bc7d667de182920431c3a2bb05cfe88b500d779a414d2ff0f9a95834c7224f11f94f68bced1f7a0a3dbf63fc42413145886d220b03c3a0a2236960b9510af2ee9fd0c93d6042a9604f0e22f6b3824d09aab6dbb726f780b850c2d39a00800e0129b448e0fbedba24c7b04885482ac8fbacaa3f72c61fbf41402bbebfe94d339514776aee57561fc99a70037bf4755c99bfa342c0d0194d339d145714e08e47cd471b6921f4551ad933b9f56dc24e7d3fb1e4de8073c182f20e74374348f0a30dd388c05378abe398595a939c7761d512397acaee67a31079002a493269e474b437bf075a8cbc58041f35aff829f0cbf88210679dd309b5b29a0575337217e507097a85f9888e8b1f28e3e24a8b827682b43148ddf901f12186a13feab0964b39af2e3212f272eea9920a8f26741f09c385ac2f0ca9f053d40ae3371fe404a059f2dc8225489f98963620ce24290fe91480f8231f0ef910bf39858cfe4c4ae0292a6ce149d09ae232535b305019f23914fc7e72f7bdd261c269c0387178bc9e1ad0f3e1df33e012f098aae078bc0bf23036b2965ce384967e888a0bf96407f0d11528173a4695729ffdaa70bd7da77f1e54d9d9baa3a9053d62640bca019f8faa5aace028ddfa94ed5464610a53756260a174d43bc74638a3c9bdc342ee6a68d1e33b83da29de48ce338a218519b0668e82fb74d341d8a791d652f1a5accae983462563257d12ed3e3e928b8016f0d3a7bc1137cefc550cf1bc44268c872a04394339b0839e3a2fb396c40500ecaa3bb7e59a90f1aaa068ee0ec2d403dcf085cfb1dc49c2e0f4eb00030e58348fd60f930da4bbc0ad97cce1a7bc130087f3ec140f941fc330a23e5c59428e894c8b9291d49e1042524459be368c916ffe89f9f07bb6a16f26d1dccbd51f40258562dc0f452656ad17945632b61a3791736bf1f492fe5eb683d17f3108ab5a9be843e7440a9016e114994fee40c6b9695fb4b98ad4337c9559c3060dc7024dc3e96ae70446a55b09db894db9acd64fec716cbf5017a64ab05699031185ff05d8eadefe87598c7ac38c8ef04e8ad498c2b06ae1f0eb4caaf20bdc15c57d047dc23319ac4903de08bf8706173808ee229567f0affeeafff9b24fc80143e133c27bdb789ef4d7306c24f342a2907254ec7e8511876e00c4cf1bcfb46c5b34dc31c95cdd8181d5c88a749c92d643dae44d8f9a5606b6b90e7e184a9f1f5166c20784a662ac0f43fa463a8823eb6c451e730c8a8d6d116d778fabbfc2f70b4534b06203717732c615235166a09724a110e7a88898003b8796fe60b5b8020308774fb16e012228779e0f725b6a4a8026915561f0907ae7df058ac74fca75525983701589b5afb827f8aeb1c5367a96fba7b0031918746bf0fc14ae5612057a34e99eefa9856c2f73fdc740add47b5e0e4c2eef881bd192f644dd57adb56f456711cbcce0a1262886857064380b9956f351c3bdb1bd9b6c2b533b6a503bbacdc94c18c4dce835d69fa4d5324df775285a758fdd8ee4b60b92c8980418dc5e7e87ada73f74da9592d7b7ad2bbc177a8022cdc61693efcea8b793f114be8fb6a745b151928eee539fdc1ca50547220e9dfd5d77148c3966663cf27e9228d73a810ac2d217763d42610a293f6deb9c86be176c5d6ddd86ce5ac2fb07eae31d8707331b9f3a2eb31292d852f4788346c4fb47073115043a4b0c3751637173d641caebfb027cff3352e8fd00d98c4ce092e97a42532b7ca837748337feb954394d45452949a7ad9b25bdaeb66b9a87b7cc4fded72c238f64acca938f734a15efa14a8b650752170c50c3772805e86a14692e4c90c0b22728e2f48c0d3d3c59328de77a018ad89bd9091096334d3f3824f7bc0a4fc6bd007185d45fdae3e0b3652fd591bc133e402b068ab3948a2aa9b9fe3ca6f4e81df20442b6390c88db852325cae51fb074437c749ac6e5bbd49bd0e65655f99f50287225ea799300921fee475bc309327fb7c740847147b8605535d791d68beb9af174d837df4a6145d3597e6aea243253d0916e7b03cc3c8431969e6664f7879af181bb1df6bad019ffa512902ee5f454ea720b5cbe198fc03c80c824efd040179d0c8129e410481c89b952abecf2e0e6ace3c8ec715f79165865206516be88f079ddd0de9712130f76099c1f0a9d60b0958ff3dae142ab32b218d59130c835b37248234b95b3741ab6507ba492f473620636a967884738a59c58c6d18b0a8c144d7afec9ff8affe7994807697d5200e1145dd4557a34cf48185c6cc9a89253d6c18be52ac2faee00423bc6b755504e93caaff24afdeff7259ec19f7c3540708580ce1e50f60be750beb1a38633e1223bcd36461ccca81c4fdd026335e3d69458d48a67d8575bf3511a871295ab955e37ef16f18387c5eefc26e05817ee5948dab6f1622b87c5640db25edfd9a18bc49ad9a31918b985721b03986e76ce0ffd6c7a2af7f12fb4fa2ecf500a51f72a157ccbcc0b8fd6a801e24217ef142af927df140172804e8312579d908873dd420856804185da2004e497f9f673e1ad48c34980b245726300cf761e8079581abf32334dd9c04981a07c2478a82f70c49a2ecdfd28b4dc40fa8d351ea7344340bc320cbda277ec495ad2c15ca6aa847543416bcd51f71f3a16c47a608122d7a82a3533ae06e40e5c64f1c50d33a8cb4b142cd830d08b6260e3062236a638fb0ba63f13bd86ba3cfa20ef62babb1c90614e80ff2d10c7d423afdc91d7f71909c9ad51a9e0bdd416a5f9d75223418a2a4e7f7489af186152fa700543e26b0803a234c60b8928c5f43865659fe742eb2b15a20b839fab2616208c86a4dc0537fcdc9b7129c2eb6c4a4a0ab960bf845d4630032958cbd193d9218fc1e109337536970274223466b4595e869c450db3c582b09aecba785893769b358d04d4d31e23cb1672429a9c51250d0a8218d618e855bd51b31dac8a905a490551b2cce81c6b9d0ecef2583700d46771fba952fc97908e0a3ba5787478d22f9f1cce7e9f7035395c1256419a9be111494fdac29952cb95a50c2287616921749a7a8fe141ec27517b47084185455aee6aaf09e2bef310530f189abf46a9634078282a13eec66067ceb9e2b02143f9885fd45d7c0017347fca02c766744a4d5e6daca5f07c4e411f7e2488657ab45c20c34d8c9a9d8732fd29cb8b2494a647f2b226d2ee41c87b6bd0d486b7d7bd0ddb96db3c11ae304520392c80905c0596ae00c465e42ebadfa9eb97f0e2d1714de5512477c1aa132b311e3f665396288e41b45e733b43d31e6bd51fca9a214892be5241fcce23e1714dbbab43ca6627afe303dc2b13fb527e04af97fee404830a29f830e79892288c7654de30fce8ac7dd0b3780bb1e4c42f2b08b126f1e6408a7542de56d658dc3a3cc030ad1a1eb720477918b5f932a4cd1d3892d4b292636b329db7718e80a374f5c5a1fd9ae996111f75d7dc888627d7e9faae78d9dd3398ea2836cc1638a0686eaa2b8251c001b48381916104d0d01f56880581ac705a2e8aff595467f01791aaefe032a14a3ca12b3032a0320286d21782420a1e73c0571ae9bde97943107be7ad7c6a6a0f046c898c30c78b0fc32058612f38bc907bff99d205020048851ea60cc00c1ea779fdc5cb4a72a27201b666defa142d6f1b43d3043171f7e2df42f7e6c7d433140e6a1c912034f1ebb423e0a22c4c10c284994dd8c380dc2bdcc21c506ebe37226c9887fd9c0c70dda6b3d838c2c93246988a8451619c11119152b3923c83c14cd5a1d08bd7b303efb54c1e2de2b3a2ca9d0cca0e2aa8c8ac323338528a9200764bf9d9efbc41eb849c4e40fd749fc25c4494e65d6a2a41145e4b92f449c415a0395bd4a90d9be05f10c3bcbc00fc9540501f405c2a5939cb882e76f903adae09856714ee13bce8696785d372c2fc82acfe9e84ff4c0e82bba2e61deaa24658a58e4b620367c1072f0efb94324f634c95195f32e77acda4c9e804060a92a2b1ab388ba068b1765e2d81e599a268b7c9555b9febcc3f5c6671549ef5d0abca4b02abd4a1f1e0ff6ab6c3ee90799ec529004e3a08e85ca8cec01ec8c58418175ec749e3d00973f0325a511a73c1144ff169013700617bda0ccffe54110008815e63be18062c0236a885132eb6042d644f2a0ccdf49fbecca69a01899a6944f97c6df9d5348d59f92e623251fde3a03cba7228169391d5396b0111b55f7b7f7628b344a80abcfa05918f1f08617f21958a728b95877c6e9edd67b60ad76edbee9113a8cd2d20e7d060a29f1b01285f2b07618ff5d9fd36a045ae89e5fd3aa5882de51568f5f167fcec2f66395ab85699db847a7b111326b9a0c87e19792d28a6bc30e445c86f014b23382d3c829e96037a8572223e5d4311da4cfa8bc6952029a10da42b7355d2e412781b2a492c11eb18dd1f927f48a89ac16b159c779eb2cec41f5b005bf891dbf30c84ee6a32805c7bd87f671f440f2445caaa3f804110ce43186a0200652e0e0d01a0aaeb9392db0611d106f4be10ff0521ad6a82788325ae120dcade23b1d18f8e4151b2910a71562e92803bf1f1d813209270a645f64a6aa31e09960c455ca10aa13d7093f774173ddf3a05ca4b402fc298c18cf52866d5a07a7ec260c940b0c49cdd8a1be1042f73361cbceb5a6ca1b8400d97a78bec9c0e6813b8c3c50da8e0e5afb2cc62a1c49f88e7dd873008b079a46b741b6d4f4c5c78a8fc644906ef535831ec75c5275c0e91f49019716d2472428b2aee0d9e50bfa9f6cab5bfbc2ae1cd6d9bd03e47f801e26ef326068ea5e259799b1c5b791762e64772047cb50fdf127bbdf431fa9d3581c2736bbf31a57eca2c0f061f1b44d72d3a76357f6f961f6441437288d3c3430cf6f3e5f4ba8f9183a5060c47b07d7b3e91935f225618d1f7bbaacec6130f72bc1372014f5f8dea6a66030f871bae8098e015174f657a12f4814a8a0787cb506ac3b8e6bfb6b9c59b508e0cf1ba285e6cc28f6d371cb85117d67fe913f5732d09ce1b9da7fa3cc6e98e47e9ec1aac19ab0733cef2b3ff4f282f49efbe18a65ec1382f3f879ab591d67d6959a3e12983e0deb375aed57a4265592fd8e75a59461c141ec69ea11f94b4178be5d61c4fa4618696adbc54283df8d6e591fff56553220ff56fbbfdac161c807ffaf05369992d17cdecf86b525079cfa7dea2c494fb19c446ee50aeb15c1a7ad2343a934170ecf1f728b620a8d083c32acf8fb8c10cc3f0b6df9a07da112f8f7411f5b3a74f95de06594c67d0f7e481bbf97558d4a24d6b079b7636d1048bedcd17fad61bc58b0a5f019ca251233b363b862d8ed3525b2afbe7d549c65af70a8ce33a9a0001c942ed7622f5645c58ffa1b29a3a9ab908ed3bd1b39575044e1b7da7a9d86848d491c5e3a3a9d033dacd37556e9c0785ce35c64f96ca67047feffb11789d5ccaaae950f7a7820b0e8eecc2ae41a24b2b7de7c560e1e9b38787e45c255378ebf05bcecd2d07bd08f3fa38d54aa2ab0dfd86e8ab314197ed48b2a28ff85e8caf605a7a7624705694d696100cc4acf97e2448a71ea5b8957a3f33edd2ae84077ee9ae8b486c763c37319869fe61d499e446ea00c05bb2b783db5fce801b01384985425b792c8c27ab08d8ab706869818f0cc7e11ece4a548046561c2b5c07ef5c4e4f209d12f5901cdf94bc641c9d802cd635c955e5b12018c16a6cc3c5144fdcabb46621881800a58f22d7c40592a8e175240dfe5c2abad204c561b2c99b001f825341a93d4689e162b4fcf5c87268349a89a8fa37a98014890e82792d34a7216f36f1dd521f0783c2710aa55b7511dcb5b2e0a4dec7163728579ea3d548f98268e92fc6bbd7233367aa1f6b0866053b4ec9ce570379b66d476cabfbee6bfa1e4f1fb9bb93a129fc17faa57f9a8c5d8bf80813305cb1af719902a5739aed1c639fd4d521c9c2c0150bc9a96cd2305ff2f4810df08a0c1d0b2d9687027601d560eebca2660ecd3068f98035416d8c1e069d786a85df8eccdd28b254f40b3eb3ddce4835acfff434a3030c9f8b042d6ffba4951b949e3c564ff0a34e5a980b3125abef9db17f4a9a1bf07d8f7b34f8920059658fbef1a50b9c069d2223780ec1e3315e78825cc0597d0f7aaa7f1c52db5010f3207d11a1ebd31aacd7b1438cd80155810e1ccc864f5af774cc82f8d7fbd65d2f7e79a112b1803bfe260558ced9422468cabe217c7e27542a48905fa5ef9fc1d8338509d203088c319aed7334e58de9310411b757c2c994a1f142a5b89e10c5ef30481655b85d38a51c8ebfb93645eb9079e1da4c4542df2de1050820cf5149171a285f09addd826e70fa11373713c16053c5e10cea068f1bfaf12a8a35bf46d3519cb04d7130385b41526d3ada3d65e6e9f0a98e45b9f17f5f5e6993f1a8a58a9c74cc9e685498e6620fe5df447cdbe4acc80652e0825d0634f5b8d98433f367c0363e2263200527be6857a29876363fb89ddeb32f0d26c74c5778ecac0fdec9467455761129cbd9225be046cc2e24aa0664752c52e4e2bcb5b5f437d8a072e38e880ab10440f62a192846e0a94e15570422783e41b9b8ab2207f6a59cfc442b6b8aa84e8f462c7db55517cef6cfbad6d408017ae0304df028bfa1901d09190682e18a9668de4bdcf888f01797afa550aaef8c56614d6143fe008e359814390de28a98476a583a927bbcf4e5d78ec14bc95d6d3ce70d8d45b00873c60cfde5e8bab5a01a92138cba539e311a2211a885443a463b7107116cb2023a6409fbc4986d10bf213a88037681de2988ce98f5e8641ab110b2e9ecdf547ee63e57b33b8d9fc048fabd0c9d05d12214efc2b5a681e6b1391aa950d6a3ef338b448e238231b70d726c10c7f7b7d5a193343bd49a289649ad2510330454b622bd65b937666051813942ce938fe2a71d1259915475536975bfed2c9230a85043342995bfe3599cf29160bd33cc9317c9382e91a38442f9967ec46fe463257ada31675634f05b7df6b51be83d30c47f8796a578e4ea031be593f1c0284479ac0d829ca0ab7044c738367532d2da3781d91ec6b4250b16c488069550cca952a7ad6fb2805d68b6e23f5f5ad42f7bca6f706c7462085563e3ec28173307f4729e17de593db080fa5b8617f7f4a881cddb6ab66b9b8ddc3707494689a00623608529d8938d1077c0addbd1321a9f0e2c7aa831b5902f582ebf51adce057d54168e81660c01dfffcc1f56e22d893c8b9fe405e576e96866f194a7a43fd36efbcdaae3d8d48e8a45908a281e05a9f95572f9d40c853eaabfd58d05fb17a2cd4f0462adef92911b7b1ef0a1bf4499769335aa4b3587716514e8fa4dc44e60a0ee9485cdc9eb0e8b03709ddcec613245cde386690d24a07d597a4c41ac71fa4624ef8b2e8a0472a654e0d1924569df9b2487b3d522d6d1c6690f08aebf8414a62eea92f9262ad7f5570d423a5b2eb3813e94af3b344acf9b1a0bf0ad66ba1c63bc915d3387c48c5393e56307d0bc2f6223d57e3682249c99569919ec5b85b7458fdb04bda676aef9e0f1a09ad368e5fa4c41dfb94d491f8197e83532230faaf6d0fb5b39cf0e00c8ae519b3ff165c16b0fc1d69f1f603b106090aeb426e26ec9de04bc36de17605d367e1a9bda4e972125093499669325ba0b3e06641bf15f658e15685d16311552f49b99c1a4c222939994aafded6b7c2b17a48976a33aa48a7e25bda06b461197f581257dd7057f6d770597863419f0a7baf706fc1f42d3a5a2fa1f5eec6ba0e2786bdfb5b007f0bfd5bf9bb827cae233729571b4f56d8a097c4a5c68485de2abcad827e15f458dc8dc58df549cb5dc8b0b81d1d89726f1c2648a5c4759841b272fbdb827ec51e16ea6e911af5496f59e39049bacab16f05547a24cb6e324baed47c58a857a197509a3fa222f5bc0b3669734703d02cd2988ec4bdb5890a8e7a48dc5d9bb050630f92eb6a1c2690961ccbb0b8813ec9b95ca74e244dd941c30c92158e4f057d16f654b85bc1f459d8be97a46b3379853d156e2cd4afe0de1601e3467a31477bdf2462c02dcd32d4eb030a7007b15c30d0324e072a9b35beced262723ac0d4f667c19f8228c6109fe87befea3ce17953d687297cae8eca1fc54269e8128bfafd709d8907590021ee1ebf04465047c579dcfd6a80417233dc6dab80a31936119264efbdf7965b4a999294016e0ab60a790b7906f47edc40229d4d35dbef3141e84021a647fdfcf6208092018974e6c051c7047a23d47cc11e9387759e1ed937a5b665de772b99ad092810bc7395713ab27d135ca47d63ad6d2f04ef6df75d6fd5753879be7b8f6984eacc38aa87bb4fe057e14a6bad59366be6812e57b06b96562b8edff8085bfd9a65d9d71f6e5719275f7226992b9981b4c5fb23fd4b2bf81f12f697eded5e049c48260ffa5e371c384e5a11cb9fe550154364ae7645a89d15f5b73e0a1ca737c25dd97bdfee7478dffe70d4ea34eabc2e273b9cd4eedc95acce659d74d1847b0620f57f02dd97deae34705495de5bcd5667df9dbb56b090fb35fb4f4f849aaffffcde5bc996e5ecaab4ba4078dfd7f256da7fabee7ff8a66545c0ac66d48d581dcd37251cbf29954a3de54961934da5de64caa6f6334b99aa6732e914c17487f2981e4f53096393a97bca334bdf874da6aa7de6332ef3d9847fc4793a4365a8e951d4f4276aa2d66432954cf8c36f32994c265c02a992c963522595a2a666c5662fe55623d629c2e16f6b5a0919eb675cb5f3feb4d9b51d077e3a45b837f5cbf4cdbda9bf9510ef65e6f089fb9c9bdc897bcf7b6cfa40fadf09f5a7ec3f6bc27fb2d6b9f77e24e25c099c5ac76d590636e5681685163b4762def47ddf9799ecf7994ca9fef2a5aaf7fdf79ca75623ce3a454c29d35353ea7f78eafb6e25a494c2a954f7748290faee3399fe47e3d2a7c63b3f1999cc544a997ea24e26b0b4b293c767ed674fb8bb6b5ff5f7ea7b261ba34a3e50d329f2bd477778bef7b223dae779df6aa4f97bba4379342bc6b331eb8ef293e3cfdfcbeffbefff437df8330e8bf6d01eaaa4166939e8d8dcdd3d93e9abff99ac1d71d629a2995ed2cff40dc6d4994cded30982e9bdfea275dc9bbcef61f5f4524a2cbfef64024170c4b93f0fecac05413b797886448b2a5af864adbbdbdf48bed452fad1ffbcd6e605758adcfffaf57d27b9ff3513ee963ed09bcf79b779eef7fd8f2edddfb68f7b0e1c7b87082d95b8ef4722947b5caae9ceebb89e41bb1938662353c78d4c9d8d6632f44e7777d7f6deb15966fb5742a8ed6cbf3a493be538706c8ee34622f5d620422c38ce6cff82a3b5d682f603eb6b1fcddda65d9b6da9a9a135f666b686d6ac46ac53a4e6e90ee5a9f91f5eb31ab323b6a6a6e6e7ac796bc5486bb39a776b65caaa5e656bde6dbcaae6bd66fb6a4ad894511ffa4381fcdfc4c1e3520d38fee7759a09956345b3fa1c1cd0c8a04ea6d39bbe860625535353038e36401548332393429d4cb8f4791d070ec1a14a549876618ebe1c1d1d3d39fa21f7c872088b2477ebee5f77a0fd5642522892e7cb9c4d097e9fad469c758ac88cca6c6c3042b2d5f7f4cbfc3ed8f77dcf79cffd9775db8faaefd3b64dd3b4effbbed7beef4b1f387a2091ba69568585a891a973e94da261b6bb4bafbd17d6b00c67dffb4dbfdf5c2efb9c716f5a497993dd95f726bc2a7d2b29b3665d6badedda2a9165d6c63cbb77a7431e7b6dcd6cb5316a63d9fd744970ef23c1c5e98302c77b02477c415c345d250e1c559c0c079fa97efa3c98031c591c8035e08803ce80e30cfa2994653ef5171c27516e1c2fc51b9f65387e46f5385652dedc58497973df6675c11a70a44039538123fdc9d9d380239e0147ea933399140acc4ce0883138aa7267d7c721380e12a9b9671ba269fe540955429578dbf02d090b242c8272523e4096435748c95ca9d6ace75c8db8bbdbaf0e33cf68cd6857a7b5f3ba6cfb9544cad97d135e9556d23b506b908867db1614a2f9dfdb3d03582d6daad37545eace7e3a1b73119764911c4a40961ef88d647536b8ee4babd3e3958dee1e05bfa13fe6185523cee39519557eca78748a18c9be4379fca790ef8d64f7da8a991e5542f3ee7d4fe37665c3737707bf99b9bb4f5048f65ff3e814a93cd9913c76bf1262ead9ddb9ede6fc4a9598aabfe97fb48de5ae7160ed64da2f1bf63529ced89539a5b7608f43706c8342fc4dd35a9629e6a2f45e3a8d8abb1763964be003a912d0e6fbfadd0cbaf13635a8195026c994447778dac6aa8de591488f36d6a6aedcdf00c71caab7011f2533930283ec775ffbbb4ed5b7b13aadaedce1ff4daf9df35781fe34a083dd7be0349a013138a6baae4f77b29fef7377ff4c1d4ffb8aee3c20e8c71c99d2ca32a1c3fb0fa07f3f70bc7827479e412e4e23bf516254c120238a83336567b233d9d9cd3eaac4efbd17c4c1b15f6b37e79c5d96659f815409edc9d3ce9891e7c8a152c576623b2a95516633051e8293bbb7bfd59ebc3d5e9556f79b31173579331f87199bb1098e4370e84ba7594fb6548992c963c7c6a892f6b946a64e57758c397d15ea9dac23cb1bffad28575af97ff4b9128be3ba6dcbba9510ceab599779dce9abc79d4014387606725e477197653a45e6f568becd736f378974aef6af8ba5b74fedb5171c6fb559cd38b067c8401beee7df24b3ef2c79414ede7f27fbb7fee9476954a9a3be51f64ff7bdd3773dc3697ebf388eabd5dacadd4e526fd6af9ee1de8ccbee6733e3b21f89b03a1c6bcfb0fd7591fe068e15243212a1b4b346443c9b9ff50c36b7672042895069e4dbe3d28a08cdd973f62bf54698e1d5a1ec19ae1b711dcd4d5a50d6f66c0dc3b173ce5ab2b66dc97e1c0ce3d257a7d8d2d5789f953b894d78d329c2714f3930dbd7b4bf701f2864434d10b86f4ba1521b4c9a2456496efb8c48b593c736de6c4dc01d0a06e360b66451e0a83261d38f97c3d64fe0783b70c4f5da39a7f7646e5bc99c6ddd5b7756022dfdaca4385f3970bcb9be7756822391ca3d91ca81f6faab54dae66f2b6702f7cefd88a573d6366cba524870c95d9eef54ae68a2054cd692c5795ce30d1bb5cbddb7732bef56ff76f536352fddc68defe7b82dcb70b66eabbfe5e84021198e1e1384ee67c6010e0ec0b125b6d6c3f1e3831d0e50488643a788e3b8fbe4b11d87bbe34c10dc7b1a078ef7ef717fd440ef5a55b61724d238defea881ce236595515251c007d9822391dae19819c7bb07661fd43c877bd41c200eff979e9ac1711e1f39f8fed179b2bfa64d1c133f8d0cea7b4c10ecf7ea390073f8e4c004bf2f57e0f8c1af72803d38007bb83b95cc655996e1007bdc588dad7a6a53038e38bf0d705465faefa20a34d180a36a061c5532200a3cc9d28fd8f4a3ca04bf69d0b4927e8339e937f7ba47a47b7c4025d75ab70fb6df32b0c7e4e15f7f7a2ebdffe1a2097e435f25d48348cd2391fa41dea867827baf001895ecfd28936495ec81b6ebd1833a4f8fe9da32950aaa0f65e23dcd33938c338967dfd3ad677f6b7fffeb407a8437fa0e4e241309b582933ab450d1c2448b98164799ebae8aa13107d34933cffe922bd8b066d5b161f4a783f5b1f8c1c295e7ccf7a3f7db4b1767be473c23a2def4528aa92fbd94a2ccdf9f594979334199959437a9959437a89594da77f2c6048e384f0c4a79530247559ef2e682e3e709ce8d48ad99fb2e88102b8403bdd65cdf4e10345008bd1928c47ecda09d3c2ad8303b79cc37523b5b692064450a130938aa82678a2a80b0b2022b548c712ac4f80a9789a12c474358c4b8421e0e155b68a82698dcbff40521a82491c20b2e76f089d2d26880441243742c30c54005132a569021cb972c655c29f73241c5185470c9e3e37451ee0c70e8d8604497276ae000058919554c80b3040e8e4a09950a072789245477002f012045ec37f3a50c7207b5204819212a531c51b93286cc1065220bfad2248d3054e8a189a22b51384185770697e5d096a39f9d2c87907a728f2c8790b4c8ac1b99d3efcf6da992e510d22b7790e5d0169f7cfd7dc595ba24786465eff7efa0bdb32102cfbfd15735c5c0238b85e3a2c5c0ff68af02d3e5b2c579d7dd4dc10e9ae5ac66b950104772d31e7ff9d4845536e82a8599eb4c6166a906ae3ffe1c874ca02c77b4d68327e8b4f355087366efe8cab39a51ff461dee52ea3de795de378a204b1c255c3fd72b2029cc47e5d98031793e8f31b9bd11bc3c416f16b27b2368281893e75f2632f546e0f204c71264eb8d40f3a8c365ddf444a0b76baa656da774cd3577aff9520841cb52ee0801e7eb8dd079d4c9d70bf285d029e4d0620d323291cc83808d2c6f4feaf2da6fce5683a3cf956c4490df1f448243c021dd2b20a5cede759d39f74228d9a430c774e67a35e50ebaea95ecfefa57796653cbd383c8cc5d59af7f1d8412993988cc1d24c89c7287ec6fb0064ece77f70e5beb55969368ca26f2fc513a91c3801e2101f2fcd100a29c372398e78f02c8f20390a50a479632597a598e353b40c7a7eb50724087f3dd752695212e4759beb49902db8053dd50bd9c22a59452ca3951e0647306e064ca6d96755a66eb467ddbb6deb6b96ddbb69dbe512703f13105eb18e75a8b81645e909935ce48d1cc0b301d3281eea49387b64dae3bcf03320306529ab50315e05156e13c116e1e8d640a769d17647a9f07a424bde401c19a0d78bc3194b424789444a994776a761788c90ba1332dd1e73a19036f642ae79d52cacc47ea72cef9636af609854aa53ec8f26570b294323333343441baab7247aa4bc9504ae9904ed2ce5333335c600a8e1d8dca468d0744da4c9bfb8d3ade0a789459b27c573dbd4d2f9e2d068f0ac852d27840a4aaa7cb1df2e94c9d99b1d9d536aef3be12369d665029ef999959f3d180e13419f078bbebca5f75235755adf4ddfddeb1a317ec52fe15ecd070ef7cceda020d073cbb69a5945677ea05a9d9bd1066fde4b4fd79080eaeb8ea7534926d420882b3cf5ec2c97777775f6930609943e50e1eb8fe79bb66852088673a79cc0fe26537a59ad5354bb2e6e4616649391aa0222b54ae4ca1912285bea0066c4a18507f74a7ee7473a12e20eb687e30c036c40eaa75584c07dd5001b8ae2444809a326ebcae84040b06002875db10a037e5afa9f3a6e438759c101ca03a6c8399546723830c37d3bd646280e7d321321e10f99b0b783ed832e594fa4cd75d61693acca56a68bcec6aa3530941a9e4668d0d15cd8c4c0a7532e1d2e775dca65d69f3a5d2989f47bc3259c1fdaeec0552965f3ac22e5f63017bcb7d4aa388c0a52c87ba60011584353450445813031503ec5d5059e00d0b530c7345a72eb84a71ca82e913367889c2e3a50816e09ae5909726a826bcf87085c98f971b88bcc86084516808e113ec04db92aa016b46445c49198133274e57b8e8e2833729a921f0cd72a84b0f79c4272d5d743089e962431e31aa0a2e6064844c590e6de922d32c87ba18ea1224a54b82881897c9850b172eb9799cc7797a384f762a383db6d81855626339fba13c9da45f5d665050d0843283f284cd27138ae779de4ef63cafc29ad5301faa016ca80a976d58f61ebbe5e67126b90ebbd689fb41e8f7802273cfdc02f4b5a700fd7b7b066a64ea5023d3a71436cb6c36d29e7cb3d5f8d9f7735d3fd3c9754544894f224e6a2fa70ead3477afa4df54709446dd60bfb2d5073e7a0670a78bdbe1ae417052077765c31af655f3ee721ba8aae0f899da9f965aeb3fdcfdaf17fcd60bee1fff75b02c1493049905b4b1664d1beb5aab7d6aadb5f64b8f828b920417b7b7e0c87a211f200e8bfbf16ad672141ca9cfd683b59fec2f05bb579467f2a03b54c9fcc18245b78b2cba5d707f09d408d5a99e69c1491da34cbaf15d76bd0d632ba5ffbe9dd2f7766a54e051123dc04596dff8df9b050bd9bee691a5fdd43eff219f3637b067d0267843f5aa0eefe4e8f7b5329fa31ca705d7cf826726a1021dde3b4a233b551dfa032250c20d9624627592edd2f974b315bc2035d23a946bc2b9942a1d9ca8f29b0ba630bee2eaf06edbaa03e905bb5b051e7df870f1041f12e6c387846daffd8f3e61080a444a506403fbcbfb50c003da4e7aede471ff87cf0a666055429b5042064ce8309b45265cb1d5de798d70e6c3680a4ca7e4b8223b795cb0bf346b5e1f2530f2a1800764e084213e268f69413a79a85cf4e137fe9fa7ca5ee7f5b1f9d07c64d09b9d0b9c3f09e02df2787a98f878d78ad7ebf5ba58b090fbbaaf243b1df27468dfe75bae5ffdea249487ee80434e40e184212874cf5b51b8b75ef0de2bb0f652c264aef362c1338f2aaac48ac9464627f474384a98515115aeec3fe465f42489ea4595f0d09d19348d5c9caf13fcc6df672cfb4cca8e93c7191434dfe4d8c7cfde7c5d7b825f1855e2a5f9d5e04e4feed7bddab0f1f54756b6018ed3860d1b36c0914845d900479d6ce3e7ea3eddd9a14a6cacc3f9c36dec50253ee90ee551626393eeb853259a14e78f9bf2b591ef2adf2b73bcbf77befcc6ce9fab09cef963f14bef1c1c7364a73b32ab49e437dadbf9c3923937f52670cc717a1b5b634170548123b6f7b95b8485ccafd94e902ab10e8e36d6a5ea25a159d67a2b77fbfe2ee6783bde991f31cdf8393640a8f9eda50c6d7efc5135e2ccc14d8e15071ee49b80a1cc1a2514f97ecd6a06f9be0d6925df57adeed3aca4cfaca4cbf89df76ff7f77ff42c9239dedb9f3f2ece987f0a1c736852bb25d57c8dbbd9cf985b6badb5967593e797f06f672c84eee7a730c7b0e40efbdd2a03cdb23f572534cb0a4047cec0f1e6c68254891ba13aa78a7ac1090d4cad310ac693fa8b85e50a4e2ecd2ad97ada5e726fb2f84fa7cefbd309ec9b53e79d9ebedcb69269e5792b3dcddeb481424ae0265fbec9048e338910edb70d04471d6d22e192adb593b35f57f6062bd72e95eddf5a53700fa47205b3ec2b172e5c906499cdb2d34f2e2710c99c13c9cc90ccc9259b2f245c6696212921f9b2df5ed39e7b0e1c53f97e09fb8d97daa300feefdb03a28118bbf6f7666af3de11ffe5c2850b17245c9074c54970f5b97b050bc9b22ccb28a55566d487dce11ffbe16cddeaa40de33acf825ec7d1cc36cc7a40eab665192cd368c33aac9fada473b793f255b672b98226d8f95908661e7df8903b6ae00307c77293ab81bbb50a25722a2d34f3052f3883bafbeceffd710655fc27f9db63ef5dfa28fd9ce08893afe9ef4b9486faeb6037ded3902e9f2838e26c2b9b29b004c76e82db7c9a4fa0107c1a8774381cb8fdd8e056f19f3efbf620700227141438ea6050c89c16d4ee5d719bcd669d734eb0364b48f65b10cc64efe96f507d14ea349fc8096506fdf0d3ca649a50ee9d41f33e99204c283368c26a8542eff841bee084622794c9a3fe863bb4f85d2cbdb72abd5d7dcf79ab1210deeaa65477ae30b6f8e72a0519e4fef7b459f66f698557dae3f71bffbcd5d4feaebccb826c9f590b04d366753fef5f7042c1d9ea49061c273b148ae240a12e0a657a9c0982cc9beaf79820c85cce24038e3a59e64d2b93e95e1390fbc365563870a04cdf638220b3e9a707c48432ddc7e9e13c1d5ed345a17ac87b4705e4fb41352175c2df63825051b5dea7995159efea0ffdc17d9ac9ccb527db9738a0d3fcfc3af3f5c7edabfd6a5363031c4d8ffa11df006d6a40211ba0942aa9bd942eaba824a8805cc1cb1a65fc76f7f4a91fefa3563653601348a466d48f44ea0779da4c813138d2dcfb34a340212694f61a387e10fd42ee3709b9988dd8220b18589884f1a1d56f22eab05d28ca62d46f3a322d91a1bd62af9898e47e538fcc3140ee372569d11a19f1c45cb43098c9057be57e2ce4220886d0387a4d098a7244ab1f1375d82de47e5ce46208ac401205176a44118285563f36eab08fe47e8ce4a24e12630c5d59e30b314b90b4fa31acc36621f7e3a47e0c064791a12da2082c25f7e326f8090e92393b723fee71d10605611ffc93fb4b482eeab0800b58122f40530481a4d55f8275d82be4fe52928b394b6ce1c40615c058b1d2ea2fc53a6c15723f76b9a8c3840f2e3843862a579491a5d58f5f78c74b94dc8f793afc727f498b0c6d0db686d251ee2f5529652919c99c0e727f29c8456b4b42b64494fb4b2e17758e78c10635b0800b1235b0a1d55f7a75d83b2eca2882d0610b2c3e5b6e7041abbfd4d361c9c7c59a1dc640e2822853f4f8d0ea2ffd7438d7c8fd25a0fed2930e6f1819d62d5bc4c4644e01beb458613030b9ff3372b1c662483158eeff7c5cc4c0145e5e3d5570c18413adfeefa7c3a946eeff805c24c19114639e406232050dadfe2fa8c32926f77f422e4a2e88ba14fdb002193e2cd1eaff883a9c69e4feafa8ffcbd261cdfddf1219d6228af898e4feaf47e61020f77f495aac41411f4fccc54a44f4b9be57eef7845c945974e9c2250c1e192011a5d5ef117538d1c8fd5e918b3a44f488519245152b31ecd0eaf78c3a9c6172bf87e4a2ce121b80b1e5c74915596c69f57bb00e6752bf07c68b22c3aa4255c19392fbbd20997393fbbd262dd6577d794f72bfd7e362eda93d9ecfe8fd20b9a8c384104b887002850a2cb00ee719b9bf4b7251c715b4c3961a206df1830badfe2ed6e13423f77b2e17a519308812061a5386d0c28956bff7ea7096d1eff174a84586d40b2f8e727f57a5c3a2ce48e6b0727f27a5459ad4634725f7772e170720250a1f56f04211301cd1eaef5e1d4e30b9bfdb7151878726473820d1e5065d5ad0eaef7a3a9c64e4fecec7451d1ab058e1b2841049c638d2eaef7e3a9c63e4fe0ea8bf7bd262d6eae7c2c89046a151382e26730090fbb92f2d52212130b99f33729116152115c1723fe7e3a20e12415fbe1c11c6126990d1eae77e3a9c62e47e0ec8451d21927881c48a18e4e0faa1d5cf05753893723f27e4220753b0745103580c3c98d1eae7883a9c37c8fd5c513f97a5c32532a44be8128e49eee792703c5c8fcc01632e521f1fce3572afdcbf09b9b82328092aa878614786165afd1b5187338cdcbf15b928b178d1c30e4740b10396305afd9b5187d306b97f43723143a28118569470a10c1f5afd1bacc3f925f76f49fd1b980e51b97f8b22430f13a6c9f6640b92393d2e5217756d3ed4b5fd20b9a803831b2411f30252172763601d4e30925c9453a020c3064863c45092a5d5afc53a9c5fe4fecde5e22321420a7354c61043adfeedb5695a64e85ab46847b95faba265d18c644e8edcaf05b9e848424844b95f73b928a7b4a00b8c892e80b65869f56baf0ea717b95fdb7131efa0448716967c71c39156bfd6d3e184e57ecdc7459d2756acd02244981f356c68f56b3f1dce2efab51b46861e8407716f4ce67090fbef97161dc881c0e4fe6be4a20b092109c172fff571510a8131861863be98d1c415adfefbd3e1f492fb2f908b1facc085233d18dd108515adfe1bd4e1ec92fbaf908b29a8210c156af8224c97165afd97a8c3c925f7dfa2fe9be52e91a1c3e0305c26b9ff26b93c3d324795fbb3988bbee33bd7e53bafdc9f09b9e863051b80287a01cf0e4bb4fa33a20e271746b0a4fe0c4c164586ed85179994dc9f35c99e04c91c9adc9ff5b8d8499d947552666d96edf4673c1dd2dc6fb5c8b0a180c21ee57e5bc56631923933b9df06b9d845455668b444b9dfba5c0452a50b201a6af02a6349abdfbe3a9c5be47ebbe362018854e005172a70111dd1eab73d1dce2db9dffab8e8812d548cd8a18858114cb4faed4f8716a8df3ee9300b23c35ed24bc4e4fe1a933932b9bf7e69b17d7cc0e4fe6ae46203012101c1727ff5719186051cbe38c213831f205afdf5a7c35983dc5f815cd4892106030d30d430258a195afd35a8c3a945eeaf422eeafc786194041633acc8e28c567f25ea706691fb6b517fcdd221cefd75890c6798304c727f4d52776a8fcc49c55c6c57bbaaab5dafdc4f855c944850bed8a9810a307830a2d54f893a9c47b99f1a21b96867904483161caca8208b563f857538b1489202a6c32df7d328329c504041a5e47e1a2473b2dc4f9bb4388b8ae893dc4f7b5c9c4848d4a7df611dc65e1dca7ecad3e129f7bb1619ce254bf2ec7723996373bf576971faf864c9fd1ee4e204722177b948001f33c62c71618b12515afdfeea705e91fb7dc7459928547ce0716541449856bff77438b5e49662f0ec204315345083e78756bfff74388d72bf03f5fb930e6feeef30329c2aa82026f7f7974eea98cca9b9bf915c9caffef671f10054be48d282982c5b845afdfdd3e1b422f737908b4256b8810c80286a214c12adfe0eea705691fb5bc845084cf1c31a53a8aca0458d567f137538a928ca62d4df47bd448613905798e4feeee9242d9660c493fb84764d2117530013c6082c3c36186206ad9e598c6049fd134c875aee9f5164e881075272ff6cd2f34990cc99b97df8f07142095e73a755b9ff02329c9235df4b88408b2a7f428c2d4078010322a230693596dc5820ed30260d30415448d1ea29720258f8b28223b44ca96289d695dc8f6373bf06e4e215f29bf920509ee3bd91479c6f1e3fc85701f956b9539a30caf77d3880049933f30565b3aed0112cf378852417201ad1151a028f5a153cde589eef498147ed95653f64c9d9a774b03c7b55f6d205d9a7c8c00b2a539c700280ecff79405c35c50e4730e172b5ee7dcf03723b0f4856a2011eaf519ebff9e0f102e5f93450f0785d793ecd1178bc3b79fe07033c664579fe67041e33a43c7fab018f994f9ebfede03103caf3b3ccc61af3a50bb27b91984cc58525b27f8a53d1b0008fd628cfa759011e2d2ccfdf80c0a30dcaf371183cda9e3cbf8b011e6b143cd6589e5f52028f3528cf2f49c16325caf36bc6c06315038fb527cf2946d89051d9be0e96db2260d90990fd370f8887920a2172f69a0724f380f04885f27c8f083cd2a23c7ffbc11e1378a44278742030e782f9353ce0d177f27c550b78eca43c1f7f81c72ecaf36d90e0b17df27c9b171e1b28cf5a8972cdf57574e822ce8dae2f91384076275f24207b132ff0210720fb671e10cf528ab2553d20158a67051e67519eef55d15981bb2af03881f2a4372822cbf475b054d48b0bb91620d7a71e902aa5e8b580061dc680b95afe578ab2e53d5f2e6a2fed55e3021eb597509eaf095199d2854b06b3b6f332b9804d2de051c2f2fcd21658f50356f9805d59436a3dc1491d1c0d104779a49e0e552479471303910be6cfeb0b660128eb68787ce460c40ac6fbc3751f9628be2b4c96b80b5800c30b3a20a9a3835457730587e50387a361ce741d0cf06cc27a1c96aac34860bfb1d1d1a48127f8836fd29ca7224d063c9fa394d297780ab679fc2df03883e40c029aa0039a15822977f4bb8e70487485153c183e1f9a1be012183cd22d8d22138a13227eba3c6992641a6a4479b5b8d9f54a6641830557ab883c23872eae96915211ced325fd5ac0c225a9c595bc57e90c1b27a532f04887ba10ca73046309f20489f891155c59be267364d66278a49e0c9c1936b48ca1205eadd9420b4e6032d744915ccc94e46203a65801524bd60461eac54b11c7050d5517214e588afa04f52286d645ca8686e6a5881e6e17d8a90b1b3c2f30ad0b164a465a171dbc30c9bad8a045f9bab8172cb62b5bb22e33a05cc0d82e4e6432dc26d507cdcb0d5987a82c5fa21ca90255a1a9095d1705928de44917687355a416aa3b1952f5c9ba284baad4258ba88f8bb5487e57c326958d5fb16e3cf09100dfa2c71b59c73c424a39bbbbbb7bce39e79cab3682eb1cd92fe79c73ce26b95bba87212557724077f3647799339f4e07f89c657071d950e5a5928b3262e0a2cb0e175820e1a228062e66c082b706e582cabde107672382cdf26d96a00cfff81625b9e83e16c8c546dad979bda66bba62b13c5a970a8691b21bf910121aadeb0aec2fb31c22234ba679b4ae0ee5101955b2bf3d62772c4f763a5d2ecad665927dfe90bd4ab3fc63d9898af0e83c647f24eb6aeb52a9c091e5237778efb8cbf321b9c3bf86c2acab1ac91dfe1d348b0c8c03aaaeb08a6691174962649f451e86aad0afcbd1b440d3cdec50085d21d252e45bb2ff0c67a3c349e09947d6cca67fd665058f136847a881541e90be82c709648f483745008bcf0bb4ae66f9ab8af0685d62f6fe9852988b19e850c81b7fabdd6ac214b44147a7b09b1d0f7ac6ea9389544ef0689d28bb05aa72b3e02320c9a577dc83de49c00472714ef70ca8c608d599148418d02ae50874d5dd8595a20438487074038b453b12450bd4099009ba828c87ef4793625f704206285f9a0cc5aca8a41453381d433118c47ecc9044324335064ae9195ab68bb9642a8316849129385eed521828a5b2c40d54a6f8923be880184ab050650b1dac60d1a24e327d0c25d34fa95cd4c9210d2f30a001688d1c90b4ba49a6cfca22d3efa0432dd3c7a1ef830e9d3125d37780241a3a4388a13368e0c37881a850f9e283f365477583d5811a7854a96eb03ab02181becc156857cbebb26c25827ddd16fd6e75c4051f2dfaafdbf2326ef3c0ee698742ce38ce6ed66edacd0ed04596201036f68b48a19609e89ba086947abfb5f6ed5b1b099250df8214902d89638db44ed3da8593266039f4c595c72b87d6c813287f60080c9f1e2d0d3c0446ec0b5705dad5e25edaaf22d4d76d711ba7c9975e08f22507d2ffe125c8b6fea6691a388510e96cc11178968fcad283c000b20481304148a9b78f19536bcf3ab31c33a645a5ac1668408b82d26f9cd61738295fca77e92edda577b77b77bb77b7bf80932ed280b1c545933e1e30128e628cd10492028a514d8a628d9d28c634b99d14d8e5db38184267ff7e56073e597e091ce8212f7a461c7709c94cc8891cfa6294477994a58f2cdf7bae22300592ec21b2547568335f0ec1c0c8d3668238a7b429f08865d213f27136e0b393ef53db59a774cbc9be52ee7612947f3beee7f580dcbc4a01852ce58ecc9340f6287822d0bfa00801a8120550be7485820413820a011df98227c811cc5cc1c9d3acb647b02fcd12cadcdfd9b006d3319b27f0e82e3fd2bd90cc5d32470599733f85d277335f6f04eeef5779a22873ddbdde4ae6c964357d9af5d3acfe6d359f34ab5f5bcda00c9c3f34abb6579b2a18378bf54f57370414bcde0c3b1b165170528793ec25962dae3b27b2e54dfd8c034d20c82e02ae371a093c116ea6cfd98eab00d5c02911505140bb6c653381eeb92fa103b92f417b9b2b42242cebb4745afd29cc3147b4c77e847be9375b2c136949e9c1a8936b083ad9654b5bc9d636b6110f0207e8345b6bf59f5fb3d5ccf4336de564046ddddd9d7adf0547d0d44846ab0c9870d24527f66f05280228951500a7bcd14890fba7af9cd04a69a59496f07292828f2c8495755af7b914e698bb3a72df052729f8c844dc03979df482e8e496adb1b391ea410095eb089e6fe79ed7eeae9c8ca03377bff5cbc01174ae15b44e7910a15d549cdefa181cebbbb4b2bb52b0cc9fc79bbd8d018a2fb6e07c8025363d20b6dd256d324ad0acf929085a8ddd02e50f69a212346b4ed7045b76cb96dd3f2495e5a59d4d490ade2ec9bb74e92e5dd2315e3083a228506e98d64e296c76b56dd36e667b10020d266c7635ed667609328eb0d9d5b49bd92284b0d9d5b49bd9266c7635ed66b6099b5d4dbb990d020c9b5d4dbb998d615a3b838c6c766f66b9b0f695d9cc06415b005b38a963f4597344c46cb7d17934700a46956485d2d024513b9cf9f990b099cc978d27bb29531417d5545a4a3fe926b9c7fec18749f368ff2c160e8e0f1f343e68db69e33ad9a169a7ebf9d181d3e0ba2a98a813eabc528909ef13f3c56ac07ca54e76e8f5e4518252c29d67047ec91d5b10a6d3764269de102a756d76ef3f8b8583c3a5a4ecd0765deac60d1d1d24f1f097191a2105bcea0736bb3763b170706c92d0787d297feeb858c17ebd765ecd42e2a5e29225ade9b4d8a8e964873dea18fbd51de8b88153b7cb54aa7f164beec05bd4d874d2c5fad881f8d1a617381bee46273bf4b9f1ea57dff4cf9dd74e55fd601b1baa9a1a9a1999544d4d4d4d4d4d4d4dc7d56cdaadc96a6ca535de3535b3464ee06d1cf4168018a7253055e2e70c7c82a55e80b32da92a5d20d16539d4c51042e0e9d56657c31a384a22211f161c7172577054393841123cb0e8824dadb5596649c08d8bba0e7738545d6633d6ab30b6165b6c71663323ae73bd1b83935a96a62c6d6439de7860ed67459288feec211d26b297ab0d88f0b99b6634cba8c8c99c993bf0c1f16620dc983c66ce56556a9255e54dfdfe1b1304297968df35b9feb823b74cae9dc71b6fad64d56d04d95bb22ab5b99e80b6767dd48ca7adf37ccfdeabff67dbfe5170763692fd694fb9fa3250ca1df56d498844badde5c0bd94099860f76b57ca9fd27f0a35278593a283a4555255e09392318088d2f051810c4f1c71c318284c9a60141a2834f00976a282b32d4260cd088504084503be3da0b0c0990e2925d50541703445e0f97d8bf0fc2e4d81e7b712787ed32f4a03e8860303a6a9ca02264d0b0cb003abd1c1ec9228c02d0d11a0c68c9b5b8a01cb7b02804abd76d4df7e53ee90efeefe5472506e080ea477b7bb7bbb372dd9cc20d3616171173cbfdddd5bd5023ca594aa94105996435db0005faabad8a521e5e925862b51d8a025bf71c0cd244b2e6320a1411363d870a4454b1372518619e28725426374d14585d67c8da8c3d621cfd78e640ecd1e606521f7fb47552ed21ef4bf43581a51b35617d484342acd9a5fba02276991ba5c2e974f6b3e4d18196a410421e60b9898cc9157723f0d928b1a908f34b0dc4ff313d4a124ea50166531eaa739ead0cbfd344b64a8f5a0f540c324f7d324a1e1a1e99139b228e6a2262444e3a279e5fe19211745781206133e4891d48216adfe19a20e3b87dc3f53e4a2a422c50dca90b2c6cf1357b4fa678c3aec25b97f06c94509cb52c5112ba208030618b4fa67601d764fee9f4902d36129f7cf4491e115430c29b97f2648e6482a4d5abcb11b7b92fb677a5cd45e3eb9f1cc4fee974172518281a2e48b182d0023090bad7e1958878d43ee974972515691c51648bcf4183191a2d52f13ebb095e4fe19978b20c410e50a2a98bc608a14adfe9957877d43ee9fd9e99fe191d122c37be5ca51ee97a92223632473e494dc2f13e4e2353292111a658872bf8ccb451d1f8e7a58011a4b000189d1ea97797528b3e3a290278888220c2d76709841ab5fa6a7c35641ee97f17171c81330578e92d06107a8d52ff3d361db90fb6580c4c8fd324f5261647883b8418889c91cd9c497162f101098dc9f3a6af10af5cddc7e4c71f909224a15f5a7b2b4a8b5fa534b64988509c324f7a77a644e2a498bd7755d299e988b77e7eea45c63ea95fb51422e12000625908aba604194255afd28a20ebb86dc8f2a723105578c41450a2a66003dd1ea47197588427251478634aa6c51c4c4112d31c03a6c1a92ba80e9d0733f2a8a0c3328a04049c9fda82099d380dc8f6ad2625654847a92fb513d2e664848281fd44fee3f21b9288b98a8411530482831028756ff09d661cf90fb4f492ecab840440f425491e20541adfe53acc39621f7a35c2e8a40cb15391821850542b0563fead5216aa71fc573d222c36c49b6e47494fb4f46328701b9ff54a5c5cc27f33965c9fda7201733a00ce824949d8872ffc9e5620e2c548c5104c4d11048adfed3abc38e21f79f765c9458d438ea2106a02839c8d0ea3ff574d84872ffc9c7457974030f46c4965861499456ffe9a7c38621f79f80fa4f4f3ae472bf298c0c331532154c6272bfe98b094c873226731680e462f682e57e938f8b1ae8d1028916620cc1c30d5afda69f0efb95fb4d402e0ec08a27b610f2028b142c5afda6a00e03a2eda8a48cd7653d0c159a1100200000186315000038140c080443c1601607e2de0714801173964a6c521789045a92c328c82863102086000088010000668c682200a05cb7118f52456139eefb142b433ef9a914a10ba2cc86a4eb7b2a1734ede2c7b104609ae61a81ab19f5164a0d207f040287cce9f075ba99df57b5cb433adb34f0e18ed1612393d0006849ef0f3f08482c3acf337e7f22f7cf804c46a7554e15fd03b99d698fe4ef284e0bf5fba962d932f1c1456f0ede27092ef9fb8a41d10b7d056f397a99d5e7eb1dc0e44560bbb2a3ed96b9208b325ff150813ad3717e9f31c116829ba8e37dcb7d3c50cb2d9614fdaf43edc33605b4acadb72ea8e7f395f78e25e5e8f3eccb469cc8db9b7500b34683c23040c0b565c255816f96bc0698b55676204ed9a8329059a14c84815a92de2bf0778275f798491a5e5581ffae52218d985021fa118bc49952f0cf12b05da514deb5ae89554b082db2d92ff3d2e08192a61775a09d78f84a0b96e056ac26004d42bb23c0feb08c0ff05216be4ba299506b7b3dfa1dda965144ddacccf5e0584aac535fa3b0b440b6aa523dc8ea4994aa10132ac55578ba2fc4aaf5ca7775cc0cb242cdd0fe4180d73ee7e0f58f9f216a649f5841395098d7e1e98aaa1170c929248b1d465d815f2e54e03b4fa4128510eda7268839b1e20f575714f3a34febb8e53f55e2b79a4f46a57e89152c088e4d492685ef4da2faeca8d888b27e173a85f2855c92191e3bbf654d3f201e58fa484444592e38eead90b2b12e82994f116a6f75c8ed65b7e4c4ea528a79d8192bff5a0fc21261464bc58501386ea9ae19ab24711b0f25d09315c95d1fb0674a31dfd516b17678df53f8cacccf46d7f24a023e31ba0f354b760c11318167edeeb16380f5c0b62544b0a5b337feea22b04b316d5eba63b81b15f289e252dd1b54ab7fdcb8f9dd06b256c664f4527b055cdecc05ba83a54884dcf2ed5f48e54c04809ccb6ef48d518483c1737db39488bdc21fc637bd10bd39a0437f492e78d86ba74e26dc4bd8bc9a49f03fb8ff4f1535daae9e35da81eac9062ee12a83353c69e10548a434c4c58fc4e4a64d127ff92a838d38d529de3d6c0abbbaeace05bb9e23b9734137dc6632e3fa4e20f9118c7b6706a188d2ccc2679465f2286401f9fe4178d9839612c41cad77b0a9a90caa6e8f886cc1078bf78953b01c58e71f0239a882d801b1ab550489be2806da2bae91b8d91e040ff508bc36cc5fc4bc500c6614b61716850b11f3fa9b585726164164cd86ba1fe956b0ac4bf4a28415104685569ff9bda4ff1f4d6952b93260db2625098fc490669bab23caccb6843c4ddd9fc344284400d6df4cc089f2484cb110aaf56583ad6ffbae52a39c668f24e1ea9282bdad18d5f0c91530c8cb76f2e466e8ebf852469ae8e89aee141f3e0c4c6631df741839f9a36c81d1e2784ca979d5e67db0920b4535619da970afb7ae79e5493a9e2406ffec5bd0ca917e3d9c15046cbe2b22d41e07a5a53b076d86faa29830d31be3d78816c5cb0b366c442f0323d06760b3dcd1ab75461e9999d9e3e7b30d8c7bd8e40ed42c73ca3163fa7a3cb2fc235542edfa74cdd37ae27cb899c422cb5d2cdccf348487ad24d03712e6ddbab6a3b9a44de3f10c6fcb778e4516825acfafacc1261f88c00707b163918faf50a8d5a0efb424c611b2b41832d7526706c629aa120e4c67640b4bb702d5a6002edfc5cfb27b2382b0634fced0290ebdb52fda221fa24b67d79d2498f3db308d07306bad38ffd51250c2e23ba3a45362c55fd1a4ce8589e22c9d8c2f5348af55934ec6ee6223a3c500465795c41503c8e641ff2c97d4da5868028e93d52f42a24acf7d3e63024bd9305117fbd62cee3e00dc3c4e88a51f59bbc0c0302a3194a169277d9e6443e42a6c3c566383405adfcdf5199b974029bcc8551927d17d46430883e07a73ad145ba9c0deda396f3fa3f4cfb4b2adbbac60936e280ed17d742ba20920d53f548ab497efe625ea9e50cdf0a4232c01951893fdb6b5a9aeb452f1301ac4768d23622043452cb94dca9c8e82d1bf7a995c012c2b8a1a4d553c1f1991836e74bbc5502054a822d20dfe94d04ba77dadfa6b1589641d59cb8606330e9f69bdffd2079a6423ba647a683ffb276e31e99c133abcb5367ba363dbbb659427d6b6028e63258f20ce822d5d0b08c3be954a532203a682dbe3877b10838ea610e2984dee43116f7f541747d87330d46148d9774ab4c4ece59e0a7cfe99c58b7ba0e6b6b248b8767fa26beb7774119eb0ff487c057ec57eb0db7da5b6199a211ad3613fb30a6b685af3545f7ddafca10e7ebd6145fb0a41bb216666481a72bb4b209a0587609172358262812678916ac35b66aea699e36ccf78271efb827e751a59bbf78954a2cf3024cab8261cdf9f2483d0a3f1b1a9693288d26cde6b88d728dd9bd4ce848737e776b3bc690021ae612c9ed845a9813c8fe839c151426b83eefa1efb1c33bc45cbca0d5c241d9356dc97fa5dd3811192cc2cf54cca7f07654519d2c5e9cd9b90e17ab9aec06db75437e3f2f57ccf13ce9aabe6eb331aacb564f87dc3151e695ade340833eeffd18ecf2c0273f9e21e0cadd7dd1f7afd6f8010a316cd955f3cd645aea7393df7e7f9293191e53526d6284b04dcfd97bbad990aa50576dae8064e629df4a3fd0fe3ad3170dc07413effcc185810ea7da4db0c94475e9dd6284c55e68da36a9ba6415756d65061f9c25ff066c47b1b416b710e6db64812393809e6d2c6c90f4878d7bc9d6566785f59d3fc2046b1e851fc0dbed146d4984a41885f1f31b1f4d70b3eafb80b315e9c550a1d74556bfaf6e81f760bc7bbede7eb5fb04cb91e7286ea670a7c4781ca5241eb4dea246c38122883ce924f3fec46eb0ee65aed9671f7f9f3a83e86ae0c6c91f7bbc8b37b053cc5cb3f3f43f032d0c9391e74bed0930e4ed13c1a26b60e3b2450d2006f81ff500d42a231f979b3a7ac0c0dcfcdb0c6d688ad3bf8663a84823fbcc38ef48eb73a439935c2673d16285eb293e93e897b38d2fe9784aba71146d57b314382abf7a3d57cf52cd607ecbc4b227ce8181a8fd2bb9d26c0db4c793c71fcd4654c75adcd8c31ca2029c28459322fe4280fbf33488d26e314bbfe4f5da8f9e06423548ee25b34dff54a6801afc5a884b13722180a430e632d2aaea8f99023a80076fb8c4df5525d79b73b2802922e04ad18b659baac5b48c2a6e8b13d8efa7fc31aaa873c53f6959ea002619d2e6f82b79da2de830729478a1ac633b2fdb83ec68c8356ca87e83cdbeccf54aefb03f46703577766012a3040caab48480390e5f9124cbe8e30a594c53cd2a5ad772428f0990e13f8f2fd2b3643e6d0c62294f58026da5e2bb35cbd6758c25a12f669c0904d6b03afed703599bc88d0c576da41ce6beb9b88394e1adc802ec947241fd7436e20a70c725f71a1e8995509ad3a12a18258f2afcc839f49af9a22403238918ef385490d75e1735837d52c4994aa6a275eb20d38fa3f36fc00dc20169f2cd68578ff78b866dd323ef1693065cc34dd03b1ebf47df71e5d980fcdc8c7c7a7c5243e5fb7e28a9ecbd224f82256538e4bf33d14a3c7456a2abe88b5e9b1a4b1a7a766157b42e5465a261da78f9e6eec17b3f2c971d364627bccc665a25193c1926f617cd741c261cf5efd6a160484dbb49a367e1fffb05b1592fb5eecd49732a9448c261ccf47ff12390d43fbd20c13b6cf9d1bf777d094ad9e1890cf960133e072c214c6b8897c7259e46437b8ff67883e4b0169e41cea6c04f8bb1f893f70f485a59c0c9de4f620752937d5f4c95741077ae0af631489a2021a480adf117425b715f0c4e6c8d933e7e09f371e608fbeeaa51ad3c6e7471d5cba3c51bf6caf10be0f9288f285cfe4bac513ea8f7403a8420d48b5920f64cfab02095d3fd2f5c3600702e1443be9a08e94126221977c48915485671c14c756fd632ffa5e0fd0595f0188acf427f7f794323ee91dc8a1c9a5fa40fed327690ef7471870ae8a1b8f65a9360a48ce44f52050878290713ecb1fe9e86f05b185a0981a05135950ea4935670bf9c4157afb2bb6fe33024a43939edb711e56c8c10041763fe69923582364c9989595f5be7f1257e8ed6fa6e6b3fa4191192a7a838ceea0118118b7274fc532a6bf21cd8544836898cedb9df9e079dd50f0343100863cbcf46a0c7a59d3a9f61f6e196a38b11c5622d922cc1925c3590c473c654b287f0eb6f03cfb42e32975d5ed7497646cd8a38c6a8b4f1ad7a3694256c4bfa4655824ea8b6726c57509469b1628b1cc11c57a59d07bfd3f3367232a9324be478e76ac19f475d1986abc06a2e47717bae8e25e3a5a0c7e7069e8be6cb3ab7969a1e23235dd2c05e837e509b59540aace6f166d1ffefe5d211b9195346869d389adb6d8434e15deba72724daae142fd8e66720fa79e8a3f6f904270b78fe40c959ac4569dbc9014c3a97c42d631f86db05dfba0cd28c809c1a1c4f22bd7c8b9ea12967cc2f9affc424b365cebef53aa4d43185c66f1e2035e432b039ae9b27ef0b6ba8ac39dd4649083be91a7c4405e971d9e2fac2aa19839cc06e83e3fba1852202e1a402af13d35f4717cffaec8cadb8d9a845ea687d6ae8018ca2e52123f2db497e640dbf32bff30b3b386888ff6b1bb2f43539688e805172ae21484d335d2d25a9022a50a6e45354279e25ed0232d0321e7888dfceed4902009933bdb6adafe18c23b9deb2ed5586f6d53f024f4cbe50839f7c36d4b798e40e7a02a28c0fd74894657dc4522df15ae9a8d0e2022719cd9287607c0cb3ed0ba3723239d2ea15f42bc5e3ab84827d94235fda821abb8b232cd875625383404d09239739178b3f5a1fda5645cae830690565e0e4e76e136d635ee67a389caff5f5b86d83d94e55a0d8d8272889e669c3331e9b105ba778ad9f0786bf5657a7be8044226fe736204418482c4ebc2d71369752d96132d01260e44b946f6fc9678aa0d75e39ce2555585fbc014134bdd43c42f7609f7a4273f4a38c848f432ecf14d9a1711eb281a8ca68a44b51f1c16fd66c38bd747e96de022698b3b3521fcefde711766d2eb59f5e13c766e9804424ae299dc898e87fe56519da7a360121e15d060926c4e49766d23f32c021ad73f4c58258c4cda9c12c94b6ac2b71caa04868342b38b0c1d3b751699f83ef33329177b5bb6355a37752af0c7a19a3e3498b2278f6fffc80d7718eb1ae7d050c55d709fb176a34365ec4f2aab0ba4b96ba0eab1e36c02c06785d03ee920cd0231ec2d728acb2bd580e5183fc5a96f1705c84bdc7415ea6b7e4ac2d78ae9945b53343f936d021415f909d3b18b5a23ee2ac42ecdae1da030ff708e8d1e29172cda8f124c5779226e61a369f95efc67c5b43ed257fb154703ea06c31e7754c55878a34af9e7e65d7bc48db1b4d9734753113fc0ae0782ee42c0bca2287873a7b586fae43873d5959f819bfce9320b64d3eeb3e549f3393705a86aaeaa32b5e6529328f04aac9ba5ab169fe4b4efb0b2f56556994e545129930a6bec3a595d0a7e4ac1bf8e9bcd516318f15394e96a0c16ff925212a061ae0f43381d5ff324ed2ed24e19288836ccfa7184a5f174aa48fba94706a6542026185e96ff162ac113912165232d4399e7fd43e07ac3b25690d324a110c539868343d7cb54c1415783cc0b667a04eca4c99f996915e844759f9ae90227890d8a91d04471791aa49c2a8d299d48bb69a113960f4f13944ba6492897bfe22e8d8d264a46315f9e0724a4e02757d67c7da60a3d8b38194b549f68649d17dc23deb0fc2d2f8cc076cea6ba6c6b90d25ccaff27a067eca89132733f7a3e7748d95443ed0b460d0d37a7bacb0ffba082e59f57ee04e8490ac3d2cc525c4f3d12aeae73542d47190b009d94fb3446ebfa68f7d2557453d0c8a4beaa3573aa0c60b14c3391241f134a0bee71b1e8d300482b503e8a914b39578a799286e1bcfec4186b09b34c6a233387c1e2374931239c3d39263fddf39cce3ca7d67444a952ce7edd6b11ef3639fef77aff546201aa2480a82acff0e17d0e4ac94dcec6be9ec6a99ca1cfebaa8edec543a3bf76373de734f62f801d6d30add025f409a9fdd34e9df52d2755f9e6cf450c35bf4139eb0080911930a67eee1392894a05e7eaebdd66f251e5a6c5d75d4680f55fd86c9b28022cf025631c1b73fb52e59c661a2d4f411e0013231b0028be258a572a18eb3488c6a819d6b1b051552c0cb61ee6be2770165750fe7adbd8ffb05d81ed8a6ec85e7d14e91b71982f3782927de336920680c8f5daac119ae197b8c68a3e3a95d0a2fd5ba56099b262cb601c88a16ac0dd0386040035a7e3b90a45f053278dae3e7450dd68b00edc8809ebd029e20b9b268f7a685e670e4511f064b80a43851b1309cfe8c28ca00e4f1e4162c9cf037083beb944dddf26660a4f1457b6a35b90fa78a9b8268b0116d9324a9bca60f428d09ecbc87e9d55646a2fa3c05de383946ce1f6d26390d5caf5ff4962afb9977cefd0f41999a9b0987fd862255ce8d7af18ffb3c5319a798c24d0e7a914b6d1c710093a3df77ba217e0249251de8b7fbe39ec2d29c5b31c80022dcb7f2e82644b9c7e3758819cd6d4a318fcbed155e95f69b7e253c79a8df19096d3c5d62acfce7ff1dbb634a8df8b1129aa87b964f19b6a0b1945c9b6dd67ae939bdb27dd396f189ce6283a770edb1799f30a7a5ff428ce81b480f23f1ba2bd1946400dff241665b482951b00e8a494dd94bd1fd0f266ec98312ba657cef5e21e16b5c8a5d2039297ed40436e196000ac4a31542682e75e1af8698f3ac9e5a53904d88d18eedb6885252ad714bd5001703254797e163b053e06a462aee7e5e6f8e3bd4f76501f19374d499f03367b8af4418153ddc3b12102b2ecb2020b70cc7cc531f95e23a7d2c2f386752c2a8f489a5e0e720e61fa75b4625b1a6cee973c17901d89385fb9cbf7dfaeb33fbe50da984020f3de0490389f39cc053c7658d4c2e2bfaa77fcfa17c53da4a33754949533c70f3619b00b084d61c703bbfed34cc46d8a6c0b7ff03068f28ab84b530edb368b00c7fecd31ea1b642de2868b5a5e6bf95f6b9dca44d8df4b2d4ed1b7d32190b180c068d6093f86d35104cccb79e922ac2013fb7fa0bcb2f622c275e47e0b493152eb021e26c3f2115e80562fc86c8eb176c143c26ace7db4f8dde4c6cefbb5a71b3fc959eb440d638abb8a785486e8208d9ef4910453c4cfde72490ea21098b0c69409fb395f311e9b21ec311564d799ad8789579f36b8425b6ed8f07c97456ff2d9f2cad72198e3a480b9b82a86ed0f8b452a56de61ef0d5d5b3219895ec7321f1506f93a984ba93ce234edff74b976989c620ec397da06e5d8c22515303036dac84c3e92b9893fa8de0945576e0a73d744b366ca5a70f8d6cf3616d621ef2636cf3f4cecdaaf3f99270aef20f2b95132ef7d7bc98a64d8cc03f0ffbee7f5b142a4f05f5331510893fc623dd4905358af43bb51d5393c357c1c1d629f2de6dd6eb5489cd61cdbae09426445a226f7bafa8056ed8e598c4a869c8db65ae46ec7045bcb84c520b8a2af64de8521cda24e78f5a8ea941507bd46a455dfeaabc39aa47caa8eea2c58084e558e24ad2f94d5e62ead92aa0184171a43908522510514ddee22493672ee61aa122398f06d5334dc87492e7068aa83fda297186e0dac257dceaefa27e0a8bb07cbeeacc025df656b02af1b5d47f07abcf0ebc015e69317f4a973485b0abec59f4a7ac9477f784a5fcf72880f079d448551b961736c7a844d845cd4bcd0646d63696a9a663357d1407f07952bf9cb09d2a3759038cb1ff09c03b03687845b8e99448196558d83321284d58ea727ed78d8a5ff84140b58f98cc1617940e357b6f894559d55a2e60a06194c490c6573dca98d3c61807d90a897942a321752b2f0a34651e7622c3c7ffd5552321b65d66c910d7953258e37505990a5c28c7a15296f414e724538fa621a3394512d24a6f7fbb1e7e2f63f9264b768154c22719ff32341b1c0fbfe186280a7aebfa7eb055fcb7c4890a557059e1e321bfcc37262cb4d7af68ff5e6def5b85febec81956711f9c3c11eb3ab61f7fcb1740de692d71ae24ab4ff491ee46d8655e5bcad77ac573034c284976765d12df348e0caf2ec5230cbe3c74361249bd64e509e55faf8cad111fa117479eecaf1ecc7a04f6c85e0c49303ab50310ffeb2f5c2d3ee97515de61eff621bd8d9c33bea36d8237f3f4827d4f5b9b2ca0cd8c0ab3203450b2d5821343d219c44dc0053a06c84f0c25fcd24d518d9b2d9e32c5c92cc38cb619f8573121e2625f11fdb3906db922ad97d487445b7baee6cb652bc8af64697c9a1923823a57fad29a7d0af06ca6af6e5f23a4d449f7ae55da7c6893c79c8cfb403a3aeaf2bee97515d9e1f53b0ac68ea50a3f66b18e3cf912f6eadf558d24a07026c840d69bee5f493ebf8a5b649fd1b0fa9f28dc3e6652efb7902c2b3384aaad09d4899e186c4b777d4d522a3fd8fe8ee68a85b783fdbdaab1ea474f1fcc10ad5b3346133ea012792f51b9e40a1ba0459dfbb9ef4f90d080eb752f5713c5ff2e84510c86440c5b035eaf562ab46992b0e3991f15ace57fbfc1c639fe99859911c3d550e7fd01ed6c718107745bf83c5358abc943cd7f886ea693b5f0d63bc2aa5b3a8775a81cd9dcd4b501e46d950bacab7216d07f5c837ab496fc45ea7fbd7767b7637b011744c68455b20964be2dd410013758deb317fe833bb1820de3378aec95092ba43421ca2261a346104ce9332bbc300c238f558cb198a5eeb7bb7d462138a1220966f83082ca7032fb11ef6c4fee15f9dec4b66ff72d3837bcf3513f03cbf2219be20e6194669eb693f092160c5463d669987f1ae60e47ecd6a463a13ba75b095637466b9d205ea4934a49c5e64468232a4f09299d65d8acc9a3819b9e1ea7091c7618b2c7fe2ae2b72f0d02d389bfd86f76dee24604ae6512558bcca7970a96b950ccd3167292bd6ed507329f36689b3795db0ceea52e426d1a6f1b9936a3cc18d6c2c061d88b6497bfec28b53768fac89d23ae2553069236250f8285c4c847527c38ca98541e4334299add31230b8ac36dfdc83e24b32bf3026bc0f5649d1907d58f49287c03eeb92260f5ad272a2f521632d1edacd13c5e26be22f9248e6a9ee189970deecdf1287cc024adc567b3d7e605bda4c882e9c205abe99c3c6d78693bdabc6908be356c89e7666b74d322dd2d0a4ca6aef246376b05a0d86ad165940ba42e1412bec929c35cd730120e11870ac069174519a1bc580c8d847b3572c20eb22f976e719a169fcccf862fe9a311596c609d0f1c766fdeb80202e4261603da63fb552a6d4d61f460ee07c48be724cb9fcd7b918b60f2cfabfdcb3ce2af1f87cad7e7bf7ef08da64ac0d72ce9309253baa12ca97f9a3a0c58288b82b2c6b0ac4bd05f3048d3d11663bf72c957874ef4a7f76efa54d98cd762682ee1fd174a94cc85c74ad6e83202eae3381c49c7f6b0eae55fda0adc85489aea03f4b03c2f5c9cce56718a1a3a97178fe034ff48edb6368f24fc94005621083c58d066eb30a4c192c67f2cb81485034af2e4e12b0d26f74107a81c94d4f5261a66a62c031307686263ad1e475beeeedc7a9ebf12b5dadc7ab71152546a759ef488aede2e81c7a58ee6a792382cb61bfb6e34313ddd945a2cd743cdba33b1a87f7cd0b36d2e1648dea66f18356f001569b2e71ce9da6cf49935291a4209df9fbd1ed104fcd7c53adc3cfbde8a64b8dba51e73936446803a736a34bb1454627d7297b387c4150c61b87561ff2628ff5c18857216ed89a94226977c14f3e814381ea9340187b02b393cacf264eac9c3f5f9e9e5a52f6b191f0f043ea4eba700bfb016e4aed2f243a6f8ae4f1573deb817dc0a1fe3cf9461124e5fea8930dfda3c4475c87c81630fb0ecc601e9fee2ead12a705311ac11ffeedb73bfb761e9c52138d4124dd8fd1e263452e912cc32e350efd085ff50f94942c0be9ed408614b4df03858eff2f89559f32305d4343586ae41e9062647672505afb11c014a4c33021531f996a2efd9d7d123d6d5abb95beffb0c2f3ead2e0dbc1947274bc8dfc8b66c30442ee619e4ab95377e9b789f6b891dd052d953a553241eb0e603a80d771979a27ec0a5e17598308ae7927222217458c07dee2f6b921170ba42f5ee9d4150fa012aa4f27db7dc4e3e9670b555504d2975bbf6a59ec2bdfb1dcb4013cb9b16efbdadbf6d5173a084acb0c02c5146a3c75e9119dc18b175179201fc1c98b3a84a123d0537a903cc1b0273375623686b9c4d69f8dca0b7a692254005d11eb33bf8855de179ebebe4eb4ca8c7e4f3be9f6f2cdc2a1df13b0cfd0e6e6a90e7cca44b64a6465f7e3283191c03ef51599adb77717f45d2b673288c403753d59a414fb5b0b36d75809710139d08b333120f6424e71d5fd7aba64163b13e1b398144ea1566538bc879891e002621f2b557cb404138e6dbc2a2dfa6c0f91150c6677641f7383a01e9dd2331d0f93a61713c14e54dd722dde7a8de18a60908d90aacf74ada307c2bc25df41881f2e70a6204756651441d0f6b83eef2aba3ac3843958a13fb010d3d69674809fc5558353521a5fd799bb21fbe51a830e1b307eb25d2c47d70d0e26ba2e928c5d9b4489182b8a3b100a6bcff3132187aec8f4e1b1d95962e6fc1a7415b051b41d5a276a19d3e8dfcf7ef12c15779a21448e815a78fda36f76861a4f9965f1e7a011473d1b10b9c1add9fa9cd73f315b41f78d4841ab7d13390eb612b8fb49b253d20b05e1e844a6f2bab3ed7ffa7bf2322e92ae47f0a99dd53f701e6cf5b17ae49700bd10415d835e6dd437ee08b62d83492c82bb49e59d5562fdb2ec0d58cb0cf1ac5f4f634801c539c9a361f047d2a82c131980b45c32487a4e5523b661a540681cdee166873380c5a44ed8db53512547e55233645ff6080dcecfd5deda94118bb19bfd5cfa112aa87566d86d1635daf401775c80fddc3549da56553de08a2c8e5bf6389f626805c0f55167911019c926dfdc30bccf55b1ea6be64f1339f2c00378e54121777c9432c244ed8290f4f8c9de8470038c4cb8d652cc2801c7ca75a3426cdc52231003a6feb43fe4692bf5d1ee3af06202567a215324adf64a4739821745d0d9c8c3ea5e2f68be5aa12352ca4b0aa45353e5dbab3a564ee43b9f2ae7827b5e2f60885dc2592f33976511f8e80f34b6b22c79f756901e56cc14b18d128367d61de6a6080fd56c169c6f4f7a3edae8e9a927057afd9d1da179732a5eaa74ae62d67f6292a833ecf712a2523a408aba60f7355a2977e46dd6d706975c9110dbdacfaa2f1e3d4ca1e3c3de4217b76dbf589588355062d1011e288e63dad1d83171e9b2a56d818edd4e5e37713d5f28c8397acb72a266d9993a086d6f7cfbf96050cabb615645bfabe46bd520e78c964f0572a3178a29613696f2d6823907ed0cb5a9fad63badeabbc8e423eba1327c5cc2285a73cd463307587da59242ff5f07c80b856a32ebaf25c0f28413950a2775331338f0d152cd0bb084908baec4e7cbf634ed99968e2c70ca7e191cfd4a0edd2a765ff2900d7aa27e615e939820e96b93ae1e983bbc5078a95cb24064b3c5a95a976c8e6be80b0df3024a4ff61a5097b921354d6b87ffed422c1df4ea373709e8cdf7d0944a0c1909374653e150c3712a6b7c1b15b162e26e3fc1ad037435a6c1b6d2f422a6fe29c06736474ba2543c65705a583d0240000f01d657e8694b632f59742c85d335a8d8e6b838239434e437817444f0375032c73eec9f47162287e8848dd7b22565b3897a4a8ef072a4b9184fd39c32346900d59995290570f5256ad48783523fc02408a1c52755a38d79c24df60fc3665f4bc678dba8976ba1c8e52afcbb1a89acbd72aeb2b4a1c9c09509f00b82089a0caef0888f0c71cc6ea1d9675f7ae83d2a6f42eb4b88d599f844a09d5b94e7aa9b9a3cbc688f2450bad5682da6f6f316e3cf5222313cbe4c56cb7ba54eb24d8d510e2b61ec64b2580fc6e91281b8971b1554679aa54410bb971d601aca534d28098b9325bd6a3544671a516e8b61118781c05c523e88274baa9e66843bc19763b122ba7010534014fec1034e8fa65c19c30202100fa05315e5920a190c9f181409da7e79151c38682851f9dbbcccd0a567bae4fb894a680d76f2a73f685407e63372522fa9f83b85299c56b75d79ce661181c9a69615555c42772a2badd4b6b8b1feb397d37bb00c28811aa120832626c30c1b3522fe4dac617a57392d70173032fb3a62d595219bd458d323faf8647c1f28505b77cb3e41d381ad126a1ff5f633a95cfffa8fb9d3deececfdee2f48b6f568fba25c8db20ea483ef1a868b458feca2af86949edd0d1092f48909014dbbdfe2615dbe7107ae9be95f510b1ffa19aeab7563cc504ffb00816e16a76599563aea48f66ead81f8c0695b2122a52236da3ca9e591c74397b5bb0d86e0c98528722f27c70dd3d4e339fe340fbc3e73c8c225c1c82dcb7a082555c2304b8bd001690d6723c100982c5a5eb03a11e8a04c930395850bfea14b4a1f7b1a926bd93dd72ab5962ba77cec239386c8711e936d177b0be9ea253e667d402a5fd0d03c47cdeaa533180162fb8142f34d1acbfcfcf7bf4943c8c38ea9320d91425601704864cd64142e88e24793b820642958c38602faef7f20059182439882c3b6bed3492140a3c4023470272be68220b186d0cef204b3ba651cb6fd256e0e62a8a8fde8cf1c6a1ed758cea77a13f37526a38ddc899b99855ed4b1ff753cd6e4c9383618264d842a2c60e02b68109b7f899b2f310df0d5d2339686d92b1aae71d8d427dec90a644dbd2037ec4e0c829d439198b495db9ca645b84be3c66a21be40d4eca296bf4856968b45c68f12bd3731004405fdd1b2a5cb9267e2d466627c9dc84aa98386ad1531fcf906c410dd98c6bd1fde75226914b8253d03db2b6d3d4e6b600d5d94e9c18c853e1f720a7ecd30da4d589095c59a7fbc67383316f883a9b7500a3ad8bcd8b32b823450a40c7c23033fe6c0cdc108ec31f76ea9597664d01245b839cb8622c664299329429917fa22efe518edb9c21a2fdf83b373851a55cf15c5ed73c5ff5333a91c0412c360e8a355e5768e44f91df9a53a2b16a95b4082c9b1656e75676a3963822ce824c61160eba253aaf36c368f051d5b73cea0aa1abd11e84e857ccb59cdac94519ee6adc17e6cd78a8f9eb10f7815b321800f1581b49bb242f0e42af632184325b1b3ac8f4cf2e0adb4fcf8685b2ee95997b25010bad267249628d5cd009ad8ce8117258e9998c5921426052142c8ae11cf3e8cd34a362a1dbc54ea09631d8f0bdd3bc60c7ddcb01cb0be0c757a5654844baf548911000ce26358a7e78460580a67d39fffa0384803ae81c066efec657b339feac73e75fdd63ceb8837b0e419b0f3eb69a9726553b4ad4e53aabbca67852867f934a644580cee5dea0d9452079ee3f78765698268ded23e029ad6136ad2a02627e0aeba7e9d8ad5c9451869b42a1de44556c5a6ed233c9e23448414132df45897f26e438093c99995c4a0c7635e7c36bab6ef89ad7f2207ffa409e706205b6c96cdaa6f9d10ec5bc5d5c07a47adab836f0dc6bef881dfc62e546c449f55dbd8759c7fb5e7c0e343060c378b30086837685355928fea4b55c5f8c58ba8aa920a2e2fa4ddd6e173187c9d188547ddb9b58ee942a221f97a83b9d5ce4bf497c8f474680358554943f0f1a4c212509e9e223241ffe606d4ec14c174aae8bb66f354a76ad4835555519e8810101dc5fe1025e1acfd1aa1af45b7db32823fe3041035fd5c2634ba97c0ca88931130149f0f19867eca26d3e0240be3178e37cb2d2d4b08701708067afdb2f6a00792d7340a8a79e0100e0e275820b87858c66b20e849bc0022bc9385408549fea1b54be380bceb163acb16eedf17aac11d943d4889bd3118dd53a91e950614e1f9489e1c9bca7b7440b963ad96458900b904494ed75cfdbaf6d46f3f76a27901cfd1787bb24b594c5e03f83295b99d4dcbc49e35c117eadf38033158044c6d7cc0844e3762728f130248918ce0dc9dd774239e6d9f43bba143ff3c157cf9d5ffae0d7fa34afaca3e3e939e02a9353a001374a1194a03b33355342314f440c741ee59fbd1a388dc91bb69e42109a9e3b34accf3e494a1545f0035c9643623c2f4061584662be21811d73a213aa7fb9ee14b9abb74f496b825c2bffb8cdbf81451bdcd5054b3be3312c820217b901ba5115b36970294a079a558ffd6cf44ac1b3933b06af0e2ff052845c8b9362b994572e6eadca0e2104218d92e5ef26102dd21e4089c42f6c8014d69c151f5048e260e88e9b3a7c2782d4b6e1cb97ff98aebb5b064e7922e41e290da5ae6bad9d6dcafe81fd7d5b1127835695db5768767bbbb86cb1177a18a19d09c7114d4f902c278185d5939d168b46b4ccc24621075de84eac59b4f6c71087fd2630d319a94d0d2083b73d8788b81139fbd22f9cd1d7efd488f7f6b7e4cca1537b388d09f19a4ea63f083a7aea75a8a5d0d74255d6c949c071f342bc25e0dbe2fbbbbb7ec24674d1024ae70ece5b25ee5f554a66ed64fcdd7fbe893c6c9c149efa603a98ac3cc7c8c23bdfbe502f24d082bd7792ed317173b5dcf30622f6247c0d8257a2a311da29315f0a28154c2c5f5f4c55182421a51e73c43652655c61df1a9187d4c387e4179e55f374f44b8fb972b35f95c11cafbfb433bc1c97afec414376692bbe8c508bdf07519b600076b21b79fbe7532c6f2bbf470c97cc6f4aad0ce2b9cb34cc2f6d15755a6b0f683195fc946ced82f4d33454df9d87ea91e70ea52fc99d3df291853aaf0d157adf21963959266f700d35e92627a4a4c043876d447ae844e152ece91d39523a1afb96b5e080c561b372705ecf83a8884669c5ded7f85792953e953055a67306082b30ada361a8cc25dea9162015d06f8d1b6f19071e401a1b4607083868c28db1ae14719466196827910b85dc30228a1a9abbe8eb64bc99a83d1de0b1a289fda50b94bbc322204d7bb9672733c69a9dd406f82f88a946db7189e046603e7575c04707f5b70cc418e8389119c8671ae031529ec559f0d9e644c9f224d4e0d8b2915ca9e75df873ae9c96659dbbe1274b926c06cecb80eabc0e894dfd75f773cd72bbc777e5e028786f5ddf1e4f48345740e44ee3ac1c2fb4eb7e5d52c526fbca9599136b4d36a6c77e678622a613ff04319c08c4a14ff4cb41316a93e0e1f842b521df7a23ab4d7c61789e64e53e7f395625ed1d9af7313a2f3961682e6b5683e647fafa3e6a25a147cda68122aa203f2c5c540a0fcb0ebf9cca88f59712890817d7651401abca1d0bb61d3312391b5d17f67f513eb1515b743e3946a2ad4d0d748f8f9be5191486ef0bdbb8a711f4d0104877e1af75bd872690276f05b0028437ac41cdc92323f44bc36d4f9de8258c88b9fc6ae7f0adea5bb033f4161a608886863d05cbd38ea26a15e95bc468d84723a888a6653f2381ab1a46d18d0a3ea52c0abea1f882e1521ca22babc1a859a652454e2e2b401766adea164207df68aa387ed1d00d4ba7bb5ca248de20d7f14813b68a7da821c0e9cd48f8a628c7ec1a5d9417798c24a0cddcd44d1a416eabc89abdc919a77d44cdc55009eaaf170640077a3a5f1515939dd53a4fb53939eb99f0e44cdfd6064b53323929c22f609a5762f7f76c2b3a2af521bff439577eae6fdcb53751bd3d48a1a9119a786e5d051a5939b7ca259d604241921bee734a74a2f5551b3ae97febe1c38e9d02266fb876e6b05bb486ccdd02f96abe02b11aef765d27bbdddb92b2d51135adcd83ee4ed231790726d9a9be14a3bc72ae1b399f6262e0b55b62bbbfcc6f9f96556ec87cc97c61678db5619763d2a7648f143f6317e6224cfcfe458cd1422b69c1a86ff8bd00ec1ef4730f380bec34714269a3c83aa0cde6bda596004cc5b89bd5edfffb16711b7cb026269cd7b62f3cf90ec116816cdcd6095ba0afb215ecf6732422f5dde604ec39d1bda49303d87b2a835c8de6574e1072aad7dd3d8236da768a477e869ce3beac723b48eab455c6cab448f6e30f5894fdd6ea81ca1461678d957029c168b860ecda4eaec61e9a521932b2ed5d0fab1601d5dc25fffb3043861266c27ddebb5b14168e2a07a5987907fb07b7984034d4ff405637262e81500ae3a08c7ed372c761676ea7630fb37e09bd747c4b21febb004ef11e7f3ab686474c1e5ed852e3df9eccd76402584117c967503d144bbd7741fc7d595e9ac141fc374cd0e42920bfba207c98325a7d53bacc232efa7878c87058dfa07749e7c1edb34ade4aa8535c2c6c8e946b90003ef9741a776587b176609b35abca2fb9dae82af68811f28ad296190f291621e0e83264c950a509a941314b965b3252a8e5b9df193f1af444922f7ece3d664c9e1a510bb731bd33a478d6df454c8a966653587a5334d0fc7fcc68a79e4eac8a7a5c350b1793d1b578e4def956ac6e2a956be8590c43e0e4fd1a70cd026bb061a40acfda723ab8adcb4aa56cd57e91cd436e97453f397bcca3dbfda9a3ef9d1ea5e59d642596ed45f778b279165115c304d6fc5268bfe75f132093301ea978560c2940e2ec47421ca862ff8aab871fcd2a99322e331e3effb5e821117877358885cd91abca117f7912324f0f2bf2a38ae9435c2e0898babde1e60228f0fe2b48b9c97fb73f49d155c6bb9840eb40ad11bf6ac9b7a30b84341c1c44e1141dc427392db5b014a99356ebd6c3a22950402c85f7269d0ae335107ae85f549240f2e2d37053224f8fc8fce58a7627677869b3595f3b23781600cef44e0cafd88c7972479d2b7328fdce6d4efa76ae71c8f6f67471025fdadb0e2e78f9a85efbdf35de40a9b824d24fafe1bdded73c78e21e4c2b54b6a676d3a17bbbd35f28fe6581cbc6e9fa135d832b8088fd3f51ab8d55bd369369b5bf59ca4328b65747b716395ee86c4d85c31be0133ef140d4abf475a755075fc0d07fe2439cf9b229cd194246ad3418b9080e517bb3211cd545562273004282eacab74063169d11e81aa3bc4c506322715abc0c53589dbcbd194ab3b4b008df3ed307591600fff3cbfbcffc5178deccaa9673edc95c672c10ef96156fce07e18b1f9043644914062f77ca1fc5c8dff87c2036275e90230f2a95f0e609e5856be722db9ed0db104164789070598c6ea401f846aac26a508e0391060705f41ec5d2db7a09a85978f54bc6c35134910183ebd0ba47d2e706b2408e94c4a1c12626e13068906114de338fd0cc0ab574f3d08bd2bf0283ab232080922519dfa25684b82f4848bb6bbc791f4579854e5f7e7f0d75df00fad1995f4538509382ff26f590d5c5c9df50843a528582cc3e313d8dd362e5b7262df0e9bffcf0c879ead92d499775d99e45b317159a6ea57e9c8cf48a5fb88520452e1a5f92982f23d4a5c7d88582c7e3f2bc881a99d3bfe5e908290c97462795e415a3394c234cd4d83a7b95dbd4f0e7f40fc56e8a96692e84fa9f649816530df50dafb8a0171800e40a079718bdf34e7478cb05865b8783f35bae07616e12c29929c58e5f52448a16c967290c82d813ca7568848e4ad6002c314aa3de3fb7e553dda1775c69e4b3fb6f29594439e07f004a5229dd960aa9756a0c4dfc9d5c31841c6bacc443f9dc75ff15901b8452cdf696136e3b1ff0f0d3c17490325199b08d1b66c59fe5034245e97847e6be0e0a502932e9f755adf0ab9580683b96e80e7031c9bee3b286ce4654bfe40fea943ea6f4ba95921393d7a8da6b2995928630d8357a51642ac496052a40573ec573914e9360bbacde6bd7f26de21fbffa951ba30d4dd60fe0ba6a46d70c50d1959da0e3389b99a25dcec52efa871fb7b75904f7eb62f6f57d412107a3b5cbd6518f3dd69d63d84e00829efff5b6cdfb49a35c7c2d988f2602015bdcb4edce6bdc69ba0eba5cf1e816331bbed24a4f0660a7d9157ec37f57d06d8089c96550de786dec48bb50db6fcc95deb454a8bf6ba1d10afe5a7a812560e3e05d8847c3261e1894c788918aec26b9255b423d230c9f09c195784e375d9e1d0c59b0d924cb1f2e2466313035f2633a84b33f7f9d8f6937aa564a557fac42dcca843d3661c517e548a05d7466769140d4dc8f18f0d2c02db8b29470b81f2074db996cd679fb0a71b525e8b5e4f96905745453805a5b6bed3aed7f26d221461d0e4bdce6fd7754e3f8a56216cd5072c6eab11a5b690bab7692ff0aadedf96fb39af26bde0f00a24fc80397cdea2f8d74ddfd0a5c2a2fae459dbeb5969ceb9a3df20391ae468922fdc8391f1f3594a950268d5d9035a4e15bc5c3330e5f86b33442314fc31087bfa8dc5a09e8d0e8edda380b97ed29fae81054f04fe308d43c7ee13aa769edaa4feb3fe2627958df99c424e90312f2b8b93104399421fba8d50d774af3edf7269b28c103c98dc0a89736487ce705505539e2b8613447691c7b0b8adc18fc900a9184f7bb2ca895328d1d3148ad159686d778ec28b41d456a9c3023e20d4b946541f5f5631512ef7a5ff4d042bf4e2e4e2c8a3cdcdbdbd35156070ce0c833f4cc7b267e6c47324b530e3211d788b1780a6b8c711e995ee762f04e572c19daec6d438ec15da563e255ee39f684414418781dafaeee890de2fb01a8acfb96929a642c58a0855fd17e11eca1291351835e04686246a140adccb8c9a65af040db7915beb3cc8f53ea32a4b248f8c89b050abc59f576fdb18d4a4b621a531939248d96e1da15bee4ae0db7d01349d128dac2e29c137e89d2461d4f133a460361954a003f480bdf71816967ddc112eb442626b8e29d35fa08d61c476fced8716f213e8eb0619d7c9d23bc5f58ef2f15b674626c4de176354d32473bd2b871208972b9b528e211df0fead0d9d0a5c5b8dc75b0aa735944ccfe03b245083119fefc99555ca7d8e05cba55e90bb18e228188b282ff1fdda893f43c73c138f9bcb0d2648bc76317d12570a6655f8103f7fd18bb644157300667e32e652c30a33bcb5d41591882ec082582d7ca78d1529b72b27cc5bdecf634035e5cc4c48a35317125c3a8e928a21d1ca161fe97113d21b4d9a2a5233bdad5256afa963b7d03ef73d5de675cd36d6848fa3532167cf8d35f80855584e5c838d7e522c05303bd3137ee89aa765fd2b6d92e0671902b8212c8240ee7291e1f63f4b6430e28ac861744e8318cf473b04834339e2708d13cc18b5db9621bfcf9b809fae02deb459668dc62da6b5c0604ecc505063ed5e4161e580dc82317c25519113044e97371e427c1b2b6ce6a45cda738d5f21c862761dec981a97b777ec398c18dbc23cde967561a6cada5487dd554b9918dcd0c571a5fa64cd83cc848e9da3309eb94611dee3f3fc8aa2dc77cab1340223514a1cc0259246208d45d797c42c4f1ed4ef4516d19e75539721642d52083b5060e002b8197e144586b5328311c00a9551c91cc2657bf3a19bcd81b01e36c755c27bc511dc961de6000c353fe7a27d85ef57c11f2540e426368d4b69a13b94998aef6e01a698119373e82f78c03cf0115d94cac1b105000099ef8d6db027b06da5d70c6f2e84f035140d554b43d620357167be62a9a10869f8a066ca5d484241d5f2ef54fa84c6aed1bf61c1c30133d6d541591e35e1815c77130c5fd9cc0fd2c2087907fbc7e5a46b876728c479b639531e9c49c6a3e343ef5ff4b4c7113f94a48cf81fde2fea6d950be8ccb4c860faf07a0ab0f47f5cb02d582cf98afe8c670d517e9be804da1fe2300ae7a63963e11c672a1b71a40acdd51136013647ef491adef904e0a97c52bb54342806fc44755a6a7377a8864a547f69160704ca69ef7b64749dfb4963f005b4d7a55a51f415003d1194375a4748e38468dba64f45835db9d33b601642daca475716204bd544abbe5467dd102a7d22cdcaabcd86d634718153b9c7875dfdffadab3fcd1dfa0d653b6fe0de37272c1146cf10f2f8d39ed05c7b6186662b051b1b14d665c1e77b8f10b5d5c2543bcb0e5df220b7745d6e499f649d9413dd83b0eed6525b424341c9f771499d6ba3e3d709c3cdc5c1483c3805e4464816b48b800283a2de8b22a0fd031be8fe005c0e0c4631ae7de8b54f68d1c85e222d356aed280594c081a639aa59244946375873274c8993184c4d7dc16d132d834ed8c52709e98f82cb1a9bf610eeb3680b5dcfa5b5b97c4cacee1f2771ad4692288f44c5651f38702c1bbc7d4650fb3a3246a2a0fa50d333273177eeb4845d18ff77bcd0270fe52054b3d5abf9e15e5906ac81be8cf2061e110392b906b7ed5cf86302a2e13f6248114de1e7c830faf9b09a02bc77e4b926937834d64f319ab13a926d0e2ccd93279545a68bec958647dbcf035f1fdf604214cc7a3ecf63912d3c0f0671f06a7c05ccbf50c6d70580077dabc2b1a17b657c41948acabd8e0498a4242e1b47154d1eb643c60ee94c5ac558a60f3606c6d77b9e2f511da3acb62fda8779eca35c0066eab1c5d8f18f3529d5c4b59345c5d7cf0a46987d28bec8826dc2c58539e12e9d6e90bc3af115aa7eb3cb0dc34024704e113ab9f64f86e0897bd91c262778192a80c7509e4c493d289634302f7ced2566708a676720d6261dd40bf372247639d42762ebc0afd2be0178ecbaf5a2984a6ac1690aaed2dfb2d58a1df9f1ae0e3cb8a783db1f860cbbdcfbba2307d3c802b81322fb4a5f83af76cc99f54fda5ad86dad95b6b87ff3441d4e9a12b0a381a59d3320dfdd108b8f2f69a7ad722d75206f5fac17969b1acead73f4b73f6da95245209cb7c672277832768b95495b1d3bf2af90e5ffede25fb313d15a3ed9401ad16b3c08e71e1885ce703a25aea8b50bf5d68ff50d66b4da0aad6ef4b5d13b8b42c4c8562bc5b91b1060a7f380c13d6b4d0dfbbddd3df567bca9fff1983a79b88551ed659b809076dd6a2cfd5b6bf756e402df0f95bd3819d336e5403ac6febbd69b1ea0ca4916309b5b0aafef4a99ce2d67fbbb6adc27376f05c4e74330aa27eb9cbf889155cfeacc2ece1d658997124ba20d934507df178f494c050ece029a5b19ae2781408d801ce697243ac362d74f897df8e61c32029c380d4be2ea1ea112ee8a7c06dc001b4e26f5f3226714744474b28fcad1c49fe3ae0c11cee6552dd2c3827d2988580f19b3f7d7f8f88b47f63317d427082c286a4e8c5c2194ddda945788124f3b833e9c7dc46e8d2c9e1eec4cb98bf2a46ec9efe387ba1c4f10cb14fd501981365a9b6fcdfd828a39956b113c9ad36bb960ceb7c82c674b204017667f0ca606a832c499bfdd6faf9eadc791b44e2ea6f3390ac2d518f14892ef22b365ca5812ae901450b95d2b99ad66bbf6dbf47baa91a55ed3cc073869bc16329445ff33c396c3f774838b5015cef450ec78adfb425cd50cf43c62e4479dbc163ec6b73c3b3135731b5df91ba98d014070052d2e747979b5d59330e65bf59b7a5d76df9ca36624bcb0387bb6146f0b76f6c3d46c2105910255fc877897c875db85d8e22c4d824d0efe6b63f768bbc4560a38b1e5fc43e195c9880e17ce5659d026b8ab75e283d7ac2b87a94ce7f69b1172ba49bbff118395cdcc14df75c5019597c6f196c5f7145283745dad03539582ba294ce09502defc3db914e5281d4ac6ffeb17177ab09ef4e093a5633b851f09285467815e8a09fa8cebca7b22e28bed51591723a48bd5858cfcc48575056122f6e8585722806dad1aeaf1147d1aec4a76a1f2b305a9022aaee13506192dd7d51589b53125ea0359a4e21f354fbe22987e74aa898f4532a5b7786a85ac9fcae98321b147a90efa0853f54f48df4d73aba3bdefd4f34432813325295b3ba233e25332bfaf0e86fabe5f3e844e3178958d8a862324eee2017e7dd2e347dffc8a6b4c374ab8829a372570ee6f32653d8d4707d37406f7471cae041bb00fba17e1d6c76569832df536715ddc4d15f1a88c4e47e2669a6e1530fab7963e7fefdeaa3ff7074e1bcd46d52471b5f65c130d8e386b30c504cc44f7a28e9b9c3f666c96f9571c64d60f8eb893feafb67be6b29d4cc8bda41f186ef43e871498dd28b3aa4aed3b2414bcd7ae923f34dfd45015c189c3c19692ce41dad0354cf6d1dc219a24a9ddb2f6b8ad4ca34015d93453c06d01bbe9dfb5f2754ef2b50af872390375472ea51d7184a0eee507b50a8f34591686c30bafaf1e7e60d1b2ba22eb08145f295b889d4af09f95c2ae96c277fa45382bf8897936063a3a9509d3239cf7d3eb05fc518e4e31640e28c302fbcaead0af09277bc3181615b05685b2e8e796cb8b61c9df3303f29419d2734a3a9386beffc2e286dcdcc1d63a78dd04c278614124df34c7df705f51fb00a492a9afba9a8f19d085726a0e862ff9bae5d14c71173d691c991ababb38a8b0f2d01978edcf2fa5fa06cf7710cc859c303e72e1b7934d7698284fc5a487b89edd48b3eb0fcd267eb92ca510e937327751b85c5a5ba8aeb78e0cd81325751501c2903dade15ae27cfb01d53b12ee3f098099b7c2d4e370bbf1fdbd1a34c70162a45cb5fe6916e94864c57d45c04d8023bb116c70606682e3a2be3caf1e23e137a46a4226864c7f5975a6988cfe472c8248852d0cf059ff37af785a37a33b0ae794afbba617c5cd5f4511959654afe00304edc40fec767dfb7b2ed0085e0cbdbe037c386e13bed7587877f46ac504a11068ada47a1c1f05b9505a9fb93857ea12e67b6cf3a02185a9d644d45336bee9012c0363b69a8617d1410125ac17d51dea5c89433e73b72b59f795059b409f691a36aa5585d26e0e18325465d1f5962b3e2323ac337cdd6a68448614b9dc2722436f0c159e13365a0e6a796e811f0170313d62b43003d8394b9326dea2d8999cb1faffcb9b0963585638a4d7d453d8575e4613d6bf17b75be5caea954d32c27d9650f18d93428c59f52e3844e521c0c05fa422d0cdca6a559729a3dadbb58325a02df2cbaa9f692c624be35048b5bc82f30bf5d29758559ce3c9fc6c309e58869568f13556289d9d0b6223700552a9c5e8001303a48a0666b50a73b6b778d1314fba1be68e693a2016831d43c63b2cf0e26e77ba2be32a1c808931412e4d56927cd571608140a43da0e4b5021ab64a26baa551e7053ba57989abb792eb8e7305152dd7ae0e665d234627be5fac739429b854b00ac0208f7b1ecdbdb82da10af78d28248cf53fd622f81c2b1026d616a32d137e1ca8e63394db4a8c59b7b9ad3953a48aaaec0805650b7830f826342ecbc8311b5c4cd244cc0d29b5ee2106c44312cca78e4d9118899bb7cc6d4e7c997eb269e8af1b26e41bd7c6a69843103fe16df1b64548427b71373fbb0380c20f0d678becc6dd3c90e850faf2396c6607335c770c707861766ded1eb09fc1bc8e7d14ff4cec339bef8ff084d02d7e9b96ad12dbadbe61da436cb4a8ba36eb07f057eb4819292afaaf5031d6cd32ac753f98c4b3512659c4eb648aae33ee87c708388ab76946142ccc279413f2df159738d233989d947708d2a6dda3246377948101cdf342dd60515811f797dba6c84f79828b30922b713419f853af941cb1214db123ec0c6573ecb5e4be30d3d49cb90e77b42ba45018d73c8c637be90c3ca8a1f043f66d66ab6689ee5d26cf4267c23865e57828c28a7e05a8a9608873d01acbc23a398763968c83267bd54bdaad538b645ed27ca871ebc5586d44dcd715147def564ae7b7f1badf10de415e19ccd424e225614dead8b52f17931699ce44774a83cf605d12b1573ab8fad4aecd06fa87aa753697551236819d661bde1c274c404ea054b27006801af46f971fa22e3afbc1997062dcf00bc9e705e2d612f8fa30c93dac3bf7f3db0a126c1b92916ec184a27d97dec3a973a791b004dac1c166c50ba918a1ca15c8b6c9131fc4c8be856c07ee17ddf1626ff608782a451a68c1198baadda6cc97b637779b6a9d62cc1f432f7d501ca3356a6894d9323293948432d2822feacdb21be72418b0065f7cda7039cd85e2b7c59c5351e2c390cf7b4ee3357dc1f8058142658ca9eb6b1bf9cfc26228f193ade59c275bbcb6c6375711bd36167454372d5f4dd4723082c477aa6099e5d895079feb52075694299aa71c63c6ccf2c7560b57cdc7ca3dca098fa49a9001a6fe2b924087a77f5d4e468a33ce9dcdf49b2ef4b90c26c84bc7f0b0b9011464188d38c231ce581c00051582aa29b0cca583fcbf4dc2d363946cb8b2827454c87cc790d8e2226718b93cc9d1398bb1a8112326fadc988f349a7e823e34a00e501a8a66a890f28b2493dbb2ab35be64324d1e644ff8699fd23c85f27b550f2df550ac19296ae9f5c767bcd596dea312e5db63d452372b7a785b4cd288e15868b82cf73c1d89ebee432367c5dd6947b0b23cdf1f434c41987c6194cfb9ec03337c173ee4a2a293ec1c67b30e4f010c118a44bd0d27a611c5df2b451ddee6094f7539885585d2d0a11ba5d83191f0d2c80772dc1af0ae64b626b9622cafd68f9f0b105cb00373bb2e29829d06461c540630849daa1e7173fa983e3a1bc51475a7d310b134c843e32ee271f2ab891112e1fc859e76b18f64f821904de0da9c8a3500f3efbc08fc15054b6c85d9f4ba70e314188b846e114a3a2970ce246820215a913c60e1cf2ffcbc6c9140c0fb4f918b6650882f3fa5eaa55ad3e881fd5525f8fd96d390413738da58c72121f3c13236e2439f18811b682d82202aaab0ae88ded78c13fcc60b269a694f71381c08c00f1400580e846302a0cd53d298189f9c5fc6d8bedd16bff26d6efebbc71f6beab86fc19c1a7762054c2e0e025474049986b08e441f7707a9e6bfd5d032767f764a17cfb2c51c0060a017b69d5f5cd0188749e61528fb8b85f1dad798d2c2220e946dcb38c50a2857e8a0974139c7404d5cb5c1d5feb3ff40d37065e38690b09fe42a3fada9c784f629ccb09c4ce04bc76da540675b19efccaa7cea2ff023d3a25394a7361bf89139080b9db2f785e4027b99cb6919915298bb9701166418abf2b0cd1226625539cb875776cc77ad864617967d2c1cf2230dd0d42fd1282a5fc7f8d82f9583c62e12e499fb794d784aba83929b9928c559a12c453aa950b224fd058b8604a70823753e09f7aa21f73c55f71bc9d6e57915661f2764a2be69f215c4322d7f5121262e3b170260555e133bacde6db6161be670ec3a7c9575a7135418102e1bfdda2997aba59b3e7772dc11a318e81dca9ab4f6f429ef99fb94bf4516f26a15f50634d10aea69c51b0591ddb50cdfac62fe0812135d99e7f3f22cb1000404500bfe4a81c9e3ce4ccdb37865b884b1fb71422eacc2f145d58e87f4e3ac9188c2708dd2f0f741e43b53aad901a0377e0de63dea935d1ff4ab16b89fbb15e00f173abdb489e211e5800acc1ba66daaf2b8766b7f7fdb650b519188dec893afbb279c9427293c1dfef584ae29c75f3711c1f29df648bf0d1df78ed702b0596e6b0f08f361a76a73e529e8012dbf4ced44fe07e0a0556c943f661c346b594f74b01de52b8c568fa276347a67ff596fb4d278434535a61336d37f14b08e6c3fac3a6e626db65a44c8acbb623faf44afd52e422d1c3a38453e66baa4b65c5f76d87f88b41561f3dde2ecf934abe73f60fd81a24aab61b9a3f85c70cb2eae28d697b2a9492f298c7928dc1af09b751b7a60483d998258a78a7a649d925e88485845e5bab9b4b40895e178421b53891d3374a75f95344cc8fd8fd6074c0c44a3adf7ecb2f37c6817f9cc8ea6cea22960cc245c6f7f07f6e2aedd19629f3a7e13ef9630e22420c6a6329db3ac56c9ee1663ddc12e57405f4fc75c0906fb69fef07985d4a643d01c6ee092f9c2478ebeade92df01be9ea13d2a1269ea64fb62b5582716a4b7512c7580aec5585fd98c55eadd66b30d80f71923db4f5519736b6c485af18c76e6e99e01acb6bb4e8ea00fccb38a06df928d62596e5a183500e59135e696db03438c6d870768a25ad68ae6083a5c636b38a5770fbdea0a558fc2a3b99f464148541d2d2c3040de206a25c909ac62ced30522f48f95ed06a128044825d0c20290a9039574ad90bb39dc2bcd529df5cd87dcf5591e5711bbbb8be7bee7e5fc28e915b92396d45f581b39ee42e81eaad3cc5318dae3b8e7155b974a083d03456afaec475491544e8e80f620d9218a043a08ca118148fbdde0bf44214cd6cfc4bf769fe0dd6f391866a53a0527662af5811797b61724e6e9d8513d863a584c3ee34e5d7b766128f81cbe4d69bc6d912a0ed411afe9d3a58790b1c2f92551c669abbe2b448399334310a5f1ce129c757a67425d307679f4784c39abe694a9adbca0f11487ab93f6c5152cdd3ef4fc93b173caa9c91cabb158589e28996e7f9bf47b3be09485205498712c710ca244605f63439bef32eca6e29a3cc4749524d272f3054e7cc83a796998161ad545237e1c910e94f1cca328fa34a48edc365b00d53413d0a5089331ca818baa827eb516b25c74b1366f7e58e05e5e9475ecdb639dd978ff11f14d9529a17f3ae47bd2a1940cf1622c1e14e54d36f884cb3fe12804f71872a6be5986957722679d6192275aa8ce94e4b93d83aa7fe299a30f5466680821119dad497d70d7b24595199199befa8cce67c8fa94776f8141a3937c4303d81dd019986f372980c9c614f1dcab63f8c82f1bcb16f06be76642931030de032582a835461a5ee97d7f036815e3c2933b577590ebc05199b94e112872914d2337f74cd74776e68dde033f2e7c090a20c9327b6dd1933c3f7475a94799aa29755f119439afd673d9ad9861d3a4ea3e000c335643c3c99988d978ee4a218894e74c493f125a01ad70952524b4e8773aba41e3ea4c9c31d2b4b4231192be698371229d86c085e5b9c11c46b09f91d2908027589bf006baa8dab32991ef69bc9dc9cc9941d9a639ce2423302559084aa322d60242af90100405faefe2acb830c8ef0cb866002a286a779c74a265cd0de050fa6ba28cf42d570904248a8fa64e2af518430c9cdc69e8dddd2460d18fee35e96558fbb8ac854c416bc9644c0522ae7b9d87e6323cdf503646fe725f9342f813813de39a2bd0b84ac84c8fc4617916135695081d63b32b6d1c89c7c5dc843965bef4ab3d7103f5c3950bd4d4171e8af91e5da7e0432b08fa9e9b8e6885499439557ecbaf197a47a11557bc0e908d6367151cec7a8933e46b06c80961f572936d694344df6e999895bee562a1ce1a0166af98b9080b2b428273848481d9489ff8f9050e9017083ca4d2fb97eabc62b6d8ca9baad1ace4ad4033d95dfecb0b003388074a61e8881d5e37641af5c7f303db516a297af00c92a0fe377a2b03412bce503dbf6af64ca18b3a07c6a6853c07ced29728f84186f64705bab51e49f1b9f0705a3c230263d3bc20725e4c229f4010c2e5c8dc2c66c8166cdfc520ddd3d5f3d6bb219760330c0dc15a749ac629feeadd014a8b706c502969d33749c016e9f97fa1dfaed5d8857aeee896062b83cc31b891662e035223d2aad899f092dff3ed4cc010ef0c99214c9eb90e40c91ec9f5a837c079f2c7c6f46c00ed1abd6380e2fbfcd5d1d5200184e2248a5c4d6546dc84f0f2323ff26ac1ed4103eec9da200354981b15524343d619978f79f47a1681c9420988676c8e60bc643caa8b924dab42bb3e958784456e21657f8bda77e72f3be2308f61a424ae2224f798d594b4ae763e25e2e7bf39c05531ccccc4013efc12806c233e8fa35310734271eb2b471f935a913aa800564e63635c9549ae132f85afca628b13f30ca41e2c2e693db74ef7d460d9bdd0af0386b7beb0ba307382b39e2c4a200935226c1303c7c8a5e2ec935d157160465f4285b7262b500d996d0111064610b18fd9f905bba22c50e4b734df76074801eeaba9b5db29dd2206e7661cdc8b35952afe6b2f13c31a422adf8a15d0987bf8a21ec65b3bd074f3eb752f684306b09e8e93e4ae2de474bc5ea3ae7ca0eee4ef501ebc838d4113f68cdb7491fb288b09fa546e5da0e50ee719f0c45fdc616326fbdb22c6c366327f889b27f179ea3b934c5336f4b45d208668c95904f58533ea18a1849d0c29560b271ebadeca679f13034d3c50285f9554d4df9c83b2cbdf53004a649fcf96a74b0e15ea5ab59dedfc5a932364ea3a1b0feca8285c68b47f7512bdd8fd86380b45827bcf32c37912693293f5ecc9cee615315f8f573b3785b59e97153461b24d222cee21546c3458261148c6ffaeeeb332b627e3a503c4ff1c55933f2bbbde32c5413ed2182eef0859a87eeb98172ba73750bd5f2301e4daf81758814eb638c9129652d8a92f3ff18eb0ec8181c25642c6a280d6a5caefb7175c50bec529713ef3879ea126625e17e62b150ccb016642a96bfa65384c31079ca44434caff0633ce66c569238e16ebb75fb0289dbf2ae80a273feebf71d002196bab7cc625ae9ae4406bd588e44bc328787cf62459a5a791ff498ad966eedd9cbd7f828149e55f8ff42b0148303bbaa9552f1d14c8c52773f5b662d0298a93712e95fbe8cd22a43e8b9591b0314c095dd032dbe9d839191aef03d89b928f25738f83d84b0260f5397dee5a17aa3c8bda14ca7c4dffbe362fa7d6cefc8b05bcb1f5ae55e1a698f208778dc592567241acdd121d122d2db19419d2c2b2a378a048d14bd909c6fd8e23cedecec430d71cceefb5e539691fbbe79e171bc5c6de085c31a814a584bbaa394b94e58719db6cd4c17b938a10b5beb84dd962e7cb13ed71ef7aa7003b5ed2a1a8a8e511cf6fbd283bfa70a0a04c3674e04791ae1c7a185381cb8bafc9dca14df249a5597d952191e7e56fe1487dbcb48ca8001ce9805a28457bf42905f30e2cbfc573784803ba27ffe6318b8f3bd0cb4553cf6f590a9d9fc5aed2c13202ae383e0d2fd294906cc59358922c3fe098a7ef882aa0e63e5df6fc03ceea055c82fa15b1c94c4b16c2ca8ee200d55aed5c8715e65a73c1c4b5b4d8a2b5e3f10b1eff6d3f062b7da8f4a99b3629d8dd07428ce66c6cf3775ebee08a387d959ee5e448d1252d6ad82fe6a0f118fffaa13c044387b2a6c0b96e62f84a0070365eddc783364a5c1fe52cedda2e0cb6779720b34479d411cd9f87320d1fd1d03fa4bba538615b77f1952fa423745b4a2f857bf294da46f3904af2b962d7d2029bd0a969236be65a79f0c7b2a9ed36c73e40189888e681d9817ee6984a2979201846d034a82f2815a30d0324e0769d8a7bec778c09d25b7657b253a0fca8b11955f800c16719ae366e5f1d9ac65ff0b9f6a5d2a08cd71d01a040005206aac428826cfaf928042296105bd30c0203921bd37d81b7c42811f90476d77db724b29534a291708d4070e0848923a105499125bc16eab70c20598a5304df4c0c313d80a761e04152fa4550b567e0033431a3114ad60077f40428da5d5e65cec8c14ed8008d80a765d44451944ab3d35173b234b848932b4821d43698284d18a4f5cfb5b4063cb104ad8b0018da2d50a29826268750119a620ad60c73bec6086a19591566cccd06a4ffcdc5e50d4b422cc0d6a58c99e21e6899ae5416d809824661047d9c1195d742086122b6825072b616630c17451fd5b020103d874653959d652bacf420823841fe906f567de97bda411d26a04b6d0fd1984df71fb4e6d8f8510bae7b075e099b94f9c9d79fb635fa8d4c6f5d98f9ebb66da865217bba6b86aa8e1078e9bb34ea62a80402907a31c5818b264f482c564daa01f1b754163c1e4808211d207524832323232329ae272963781403ae58f8406fd38c9594e14867ece62a42d5b908c8c8c8c7220c10896c3094236666464646454038b223d18ebe3df25c98b128759e2242410522919c2cf8fcb9583510e0af8f1c3e8058be560a483ca423f94d10b16fba1f4adb5e671da9c439c45e449eee33f27a5fc5fdb63d940b9c6d839dc322272f2161cdb944f254578c54925d57fc607530e15aaa9016685e87c7e304a70b8d5cc125e82dcfa6f9c75bbdad68ba431618b18ff5793f7cd3951757e8083b097c28c4933699a66d25e5301044a32bb945db0302f2f3263e8c7ae15b80b7ba9fe1ca6fa0fb97bbe60b6ecd2901bae4648cc8b10d98086823f8db3dc06bfc19b380e9e8313f90ece833b711fbc05de72203c087fe22f7021bcc8897028ab8aefef515808bebf1bb1aaf9fe7ec4aae4fbd7986c6c6c34cd14e194ec72b9b28e575f356ddb496348ac53445665aa0e3593fcd1d2a4c998413f4742e258a79062f573a4240fe23929657990531936e8c7b12d30870a9dd3ebb64e07b775459054af44e247204f68732c18bbaeaca583b2056302b347c2c288308b59bb06911c635a090d74636e66090563839ce53ebe2aa6d1eac749394fe8e72cf72fd6c75f73221acdfbbc5584b43d6ebe8875af38f182da3d9ae6fd090aad9c94d4393a24b50742b7975a43a972fd388963490df4396ba981960bd7b5b246142e1de42bfee25c1607b5c890a1a1a1a1f9243052b54d87631a22dad0a4994c266d3d1a22daf5635608ecfdfce4f06c19b33a6ed23e3ca707982ab368887838ed1481f9fc9c34675204f8fbb52e04fc7d1a81db6897c9fbf84bc046aa3fcfdfc9be493bab81a46f691fff6d87b39ca881b63a128e24f4eb9527b2542e6c3ed35e94594e361f90aa3bcb593a629e94d9b4d046bc016c6cdbdebbbbbbbb90696840f9e3efeeeeae95ba0f46ddde75f7393dcf21f496096366eb8d2b77656cef544f641c44d4bf85f9ae8b1025cce08430f67454a410669ef4a2f750268a696a385ad7751e8099b30286f4a48888d6d9019b8abf533071a5c6e727bced117f7970a0fa73b73de233d11231118c4364741632a47fc6255f5a622219508e3f32beec1935366e08b9df8d637e8f32f34dc562dc9a14e56d0a3e110f5aad67cb007c1aa8fc5eb3df38bd8fce0e547e7758597a42e2547a30bed0a2ee52b1567c83846cb56b6ae7d4e6511b95005a80da729fa95121fd13b213d142f9b9055badf8e328d44f0a1596f01536af6a69cab861450d1abc1823851867f0008907b11d24ed6a3838ec282c0a08018630158065b3ec96e5b29f4f5d9a0f67b7b32834a96e330b97d9cb5265fe9ed40fff8f06daa9fc40b0a8fc223410aaf29f80023f09267851a3c62326806e162853aab08112e06589ea9d5481b4c370c697335e3a7ce022b5c486aac26f1d4ce8471f2e21d951e14ff8dc1210f50095d36c403b367feea4d406a5730ae20f35087b68c52e4fba44e94225433db104eaa0258f5031832b21515ad29a77714353d447ab0d2a0748907ad0d22e3440081f426f8a8003ed9d9aa1065c139108396851d40e90e6cc64b441e9501b2b5f72503ffa9b17af4d4d9b61be785161a085155faca801e20bac7e79b98f8c90d3f852e1db7451228da5fafd0f3c62069231660c998164cc98315fc08cf9f2e50b194b5fc82063b570cb39c12bb21ccd62c04b017cfe37b2da60b71c4dce03cae0628a81f25b2943a9ee6984b5520619b5bd8f851e015721ac94c1a5b2b6edf9b29e6ecb31867e72c861ee13c61483a221a67e76e44856c132062c65207780ffddb851fd61b7fcc9188090427905ae7eca98c8a5557106c3662eac0c0344b2fca5129ae42969de878279ee19a164513d71cc83b440faa2fa0fa10126153b1042a85e53db838807c9ff065aa1798bede1cf5aac0f7fd7c2d5f638c605417795f39ac18c274643ab986b5eb3b72a7ee7c93450620644905d3c3e7ecafbef8787c7decf4f964ac97fefe541bce20804c8aa5abe50fd3f9d8ab340726853feab8d63120c1822b1582c09fa39cc4bf57798074125f7f19f932e6d0f7fcfd2a98dc6842d94c41c0695b81fa8fb3811f7f19f5349a6e1446671fac6c553cb5027a8dfe04050229174ca5f86103b11ba07982a90ede1bf5127a8d76f5f673c39c3c9769280532768e4d8769366af592cf4efcf315815cffbf316abdaf1feac858576de9fbb589517ab622119ac0ae7fd7906ab426d61a11c3558150e1bacea86856cde9fc35855cdfbf30d5675e3fd990b0bd1bc3fe76055f4fd5907cf4a2c24068fb12aeefd990c16dade9fcd58d519abd2deeb08b88dda35c79d66f75dfb79badd1e3bbafe1d59fb7572b4daafc354fb715032b51fc78dcd8dda5fd3ddb8a9fd34386a3f9dc1a9fd323a6aff89db59f6f1ede827b260b6191ace748a806f34262dbb31978415ea8b177089add8cb31861ee1a0660db150db806a420a11ec721f20503b501b3886ea8f53c42e26abe254ea0bfe44e682135471d2059524be44d1c3141ea8f0e0048410c21928361b36e0048d1e8cca30e208222962ae409a1123868c0d48c820268ca6699a7683480728c22481a1240d1de8d0ae35745803ca8d18c40021868a298dcd8b0dcc12658f8ddc675f7b21087a31c6e7d8f26b7d163a84de4451429f44e618711281f0062424242d262d262d26241392c90b9316a62d86e664231783d98f9350489bc50d722629e8f7350712a9317e1ccba91c2383fefac4884275e843757940e83bd8e6aababa6a7e02f074dc98a66ee58c73f6f688ffe341be3e51c71435356e35fef70342fef12014dca77fce9fae5fba7cd82820212175a0ba8490873226765f4a7ef9407c77574c5cb872f937868249f9d193523e9452a2648c2d183d3a746e8f333a94628001337d9b709b71fb4d6e3e376eb55ab198694e1e1c30b9c934e79cd2f45b6cd802b7c993d25b183d3abf044c157a9ca5533df01f08218410de90616b865524a5ca59b6d44e6a8728ac0a7228acca44c4d7e017eacac037d48f79a81bc6cb76c9002a16f4034561b089a30b9149330fccf4c0400879548d0335ebea9c30180ca649ad5ba8d9b356576bb55aade7960731cc7dfae784b5600cab3c38506157b3e76c2bc350284ad9abf3798bd0eb3690363308398b168675aa9f5aa1fc2f201085fa259a251a0d3a60d1820b8410422ecc0dce80ac1d2c964861d10009303ce823a4c0220b1561daa8d0d3344dd34c2f5021a6061f98b80d301d640023020c1b37a83aea5a61830a18b6edf938c9053a64553dff6326227490e9d7e4b10b4504056269071b503054ca2ed411fcf0ecf7a72e4a8926fda456c806fd0f12aa3f0f5955cfa42a44a1faf39e4a20f27add702c96052b8b2c20e453901db2b434dddde106975b66ca17e273328bc5627d5d951e88f2650c12e2824df517e24143965ca0df2ec586e8c72c76d2df31ee34bdb8bba7e0499c966d7f7bbaad39bb3d3e14eafe9781badee7fcbdbc1007119e99b00d4400c13b3c0c3fd88530df3fb57f74e4853223e0362af7936dfe56b92ff4e3a4ec93941a8676218c972e73babfa4a6691042d8faf6a5698b9d91ba9966cdba9434519973ce393d2e4a49a98591500204786390b43208a3fa9018d5637593929292a623cd6669ace5d0bdbdbdfd23abdbd322e01b88088279601b98093369b2ed6fd54485f2ef331a759f1f063e52f73f9aca62eafea7d5ed910d59d50ee9611b8678a9fb43862cb16d5bddedd2d25a2d99375267be3bc618e3762f438d541a2af3407c46e624dfa7c95bf73179d36362a2423f0561c74c56b5a9552d7c7f017010bfdcc71f660015231dd5a42aaaf30b16e3e8da6c62e37e944ea3a4dcb64d6e3072356e2f63b36d5bb76feadfde8e1343810849a181a008ce5df73926d48a2f5baa01ea5a81d4a56ecd41173826947381b6dc979198132c41b3ff1ac9e7a4d4bfaf286c0f3e8db055e92541b3ff3ce63199f5b802575fda1ece82ded240601a28a7dfd4ec5ad556d556f75f246e31920e6a221f53a9d292c3a4a8020931aea1953f1006e3416d44e4415db492de2cf2a52eea250fcabc9cf9bb02b3aadd0165038d011e713155fbcfc3b49117dbb68e31c6cf5dd55f6ea796e95888f5e475d1e675bbdce5416d64e46a2397b791bbdabf38185f6aa3466aa4fea265c041bec44b1d062fb518bc84066489a95e27a528d4bf2ff99c4b4bda9ba274d0aeb6c70f58765306fd29eb5e81024a45c1806e8643c9067f7b3e5eaa5bd5c1a941bf543da5b42a7777dbb6ed15a5aca9ccafd78bfb4223bf3ca857c50c067fc15a2c15d59f5b93a2fc276fdbb66dfff110ec4ca697f335c842ac5396605379c8e7a494b174ca19d6297fe8f1ab5348d02ff50ada4d39655fca9ed801e5de5cd3a6d67df3dd48951d0bb1c607e2b0fbd1a95d2f436ca89599cce66efea63338a0fbb047cc09b6f82d12dc11bca2c0bd40f7f935633f2084717df8bd2e5b776f7b5f8c5d8d5f43103b76c7eec85ac4e186dd308d6dbd7f1e9642f77bb77580deb60a957f3bd30a28fcb5a9f03908a10a36959f0ba65f90e937ba9ceeb3da7a1ffce84997134237714d2893ba4fb385fa734728744dd334ef9b5e75a4ba50a9ee47211036cc32e7cfcffef7a44078a8c19a16b081a5891860123169c4124fa2159fb668e84f7d4f8a8a12486fa89051245089b1a144867f2558eeb33d29107e4c57bcacf1fb2f05ce787d663c0531818b97c7421cc1bdebacb6e046604724b655c9dde5d85f8c317a0ad53f762f810fb210ebbec718618c9043d1f57ef7bdefb58983ea2094d0db5dc61863c4a1d17863fc18618cd03319b3de8070e9306ad9d466d6032f276eebaa4f0166677aca6d262febc95a36b599fd46cfc6d858e6d261cca2cc6464e61c747dba66838074eacb0132c64b5ba2fcdfd468577d0a90c9788a004f656af25cfbe86e32eb6c72166526a3ccd67dbe5e75ce314e8a880aa831fe46e953830adf519dd2008b082c4a3a70828494d5376b34a266f50ba1c61741c80f8fd1fb54a0a888ea1408df33268a01e6846bcc1f3806090c535a6366988184294adc67e7dc01eac729caa68c26324824edb34b4830a28976c308aab5800b6a2ab2199272c309dda2a8c9a18c2a28116578d13f6b858d1558310309fd6883a425ae218cfb8ab0ff55002454122ac92689ee30b3847e8b84c2aa18e58576d9056395a0bf68472004ce23b0106b09d84885b4b607d1ac4f7f773fdd1e3d87dccb56047e1137d2c31138b8d2c40ba4154bc998d80a76fe841953b4565b73506ae081d10a762c050e01dbc3bbbf88abd5459e91d5c74bedda9245893592a882cb08265415f483aeafab546fa006fa78a95269a08fe654203e7c0c402fa71f7e0e7ff7465618f8e13ef173d8cba900fcee4f80df79458ae02fd23d7cf64e88cfe3797845787c7c232b20cd61a11f2f358b4757d475eb3e3a94ea2773a80e5d5460541c62a9fe0eab54a7394267a0ab59674896c4a181ee5469a09df76fd69cfe6a5e6234380dfec23c6035180c8be135780cf780db183af20292242b5012830c4b68a841049e20418230cf0e9d1c1d38a81c386e6c6a6ed0d0199913b799b499bd5eafd74e3702091c09a720ac5531616d2570344768d7af591190555048d021aaffd030a9c38dda8f63447978e79f77ee789e64198da1fd548c1ad6b06e98cb5b385b28cfe39c22e0fdcb269df2ef4210834a22894283f23cacab682b3a4b63d15974ac63d05bb496eea2bd682416a2e919ac6aa66bd036e8a40ea36fd05c3a07ad83127620c0410002a7e79d1d3a393a70503970dcd8d4dca0a13332276e336933f3bacd048ee608e586ad6a878a0d924c56a30047019a2334d6af2bc0e518b3aaf8cf4de82759b5a9741074b94f506cb98f3f2a0bc552bdca7b9f74429fd44f46a9fe3853e827ddd5409fbb6a930622f2a0f83349e8c7d554773cc90a82c28ffe5ee584ee514968d7b9cb7dfcdda8533835d0d86ab15839270a2c970a42a7fc657240bb9b9142f9064788f1821d868656f1a18b8576bc3f9402a7402a5009b80434824d4027601508058c02bee011bc02b14018c029200c5601ad80592016abca62553ccfffccb3a3ab4e8e0e1c540e1c3736353768e88ccc89db4cdacc622bb6622bb66a0a8593794e0b6d84671fa12206cb1283c18e92c08e92bcb6151c25c17294047694e47594e4c5298c91810c9a36e8ac7b2403171af41cc93045ddea1ec950a57effd383e6bc44c146922e592cc164d55e34c132ca9a2f34d63d82b2a5099da97b04e58a2319c46c5760177104650ad97304454a95a97b04e549fdfec7b1e03808087e26b3cca3369d32bdb0c303121e68a899f7c52ccb32ceb2998c055996654f936a866587336a2663747294a4ca5112202a57f728090ef18a4d00ace59ce015895e0b3ebc381a5a15c139d2a09b7b4c494c02dd9055b402231dada315c4a075ba9000f39bb0058b2bada6ba474962f5e3200d8a70194ab8b0b46a41a62806ac9c22db85063460ab16645c528a56db08c861314774e05a750e496296568b050baeb8562d30730fa8a5ec25058bf8a904e8ee6509323c03723bdcd541a1606cb6a19481fc27e7bc29e8401cd4d33e5f030affb4cdb9d0b528b69cfdad94db930d6810ff7e1b467137ee461977e36ef41dbf634703bcdbddbdebbac56ebd7bbb770853185244f84098362be8f7f33f1b9c136e77776f6ff7be6690cd8d4641bf5d1a42c483860c0d0d79f615a916d8d5ba0f1414083bf43c5b209dfdf4e2cf6cce99b15fb17114c64dadc66f7bcee3368ee3365326b90752f46bbf26136a55f11d67dfe495a0716b9eb7b381d802c937f8fd90bbec3fd36f5e4e0ca8e9e76fee1f6463ae262f420eb36d0f84426ab30a3f10b2099d9a935214ea3ff55379f26f7b27304ce0a0921f0af8092105c2f7d44fc7868453126558c6b63d5f8cd5b872a57cce99bf0277abcadec9985fc620a99b5a32bf9f1ab76ca92bc0faf9920d354acf3af7b23d224d8cbeb641cd9aab928fea28cee660b4a11a1d2af197926379902fb94f7c148ad28c73f7e7ed49653bb995a720cea720f304a3fb120bf9c7773456253fbea7b1aec606711f6772f0d4ec3f9efaf952d6f9a6b2f76ed747f6a64e22d1bc22e4eb90d1b32e7b77c9a707fcf4620c422d8cecb7dd6e9d4e653ab2539096a70bec4a833a9dca509c182ae4041452d98390a56633a3b09aed297b219dca3ee5d9a740f8799e334b1a138b916106ca7de44f36dd99bf98e08f2ab309ab744a76ac81dae32a1b8f41b76f38d9a80cead9c3d8171620778da553f2738ce8c7460deb94fccceb57a7e4e770817e6cf472f9eb90a2e0f7a34aa34e492b6d48f9a83925caa70f653e70cbc8ee719de2c41c0d19d180f6a37e637005b1181966c4a4e6994c58a6ff9671a62ce8b6c44dddfce6253c06dd4e7da9fe6fce5106dddef4df54c2bd77adafb154162077931c23f79aa853f0a3d7ac36282ba11485fa144356d2a91c5fd0fe3d1a52a22426af6cd05c879123ef9aa4ecb606859797977fbddf19f9b517e8fe37e1f7dcf5183264e8dd60aa68c349edffda0c4210f7b5bdb98f70d14225050aff9b567af0a4c6df9f1eb7278260ebdf98213401dd2b4cb2d4edff747a2884f6f314c4f4321f1f32d0e9e34f8e37cdb4a8d3c66da712ba46174e116c41f8a65310f832d49174aadf877a25cde7aca1daf31bae6a2111f7ed7d73c693f196fbcdd34e23bce981f4c6bde937ed14c4343929fd14fb14243b9d4e32f3344fa7d3e9b7799aa72c898bcfe9a7e496dc87d54486e8c45ad50c139999d3e9f4407a46e6c4751cc57523f319166c6fcc43aa64e1c7dd3d05fccefccecd04014c526c949919f215625cc16249ddd8aa88efd4ca8dc5df17e21731b28a9d0a2ae0bd60a4932818aacd15d8157cd8bd3f83f057b0705279d4bd52850f954f14701c6050f67274a1fb46b88536e2ee4f6c33755faf2a15a533298ada400a7d090b8c9cd0c08a0e327401c5125f8cd9e2511b940eb5a9a96ba50735d48f3e0e35378800065a4c51c30cae48c1a2c41a57ba8037c64ca1699aa6d5ecd0cd90a405943047e8804b27b1469735c6e0e061a70618161f8ab0810c5c349531388c8972830d9394ed8bd14a8dfb8addb13b3620c618e3ab01b1cad1d6d54a3d8262ad30ff48c04f01523edfa170a0572391031b733918de509bb5de84ae199c9c1d189bf5cd92c5afee8dc70df79dd4b263ea3479c3f6f061545dc650b0574b930f0e0b8007b0e5e0706e688e509c0adb81d11ca101e0688e50583f771dc550a51aa0ee9192a4ba11e0001ccd11aab3ab142a9f7aa0eb3e330b9afa0f9e4727a5b7f09fbb0fbae8729f58b4d3c5279d22a2eeead44c1094861f09682b6ac336e58fc4103fe84071b2a03b9c54fd75f4ccd7407dc780af20ed716b06072a9d402ad008e21ca19fbba08e2e6ef43b371cec78155bf1498c52fd6b626b06caf3d0e51e5bcffc12bad687a1117c41182ac729769d454b6d2ada0a3eaafe35ec35ccb5c4e2e15995b7432747070e2a078e1b9b9a1b347446e6c46d266de2481c8e4f41765e7a3b747274e0a072e0b8b1a9b9414367644edc66d266c6a3c3c1cea357a98ec4fa94ede1fe375030fac90c097465430d047756b53b747274e0a072e0b8b1a9a1a13332276e336933cbe1d1d1d1e1d9a193a303079503c78d4dcd0d1a3a2373e236933633b9f35c962b68d7f8704f4290448fa8b2dc0707c6cffd89fff4cf9244b2b5803496585f4c3068172f99121eff65435a506165a6e2cc807231bab57b1effb96b0300c75fb3fabf6661e083f7f9ee4ed54f4252bfa71372626b573f5a2b232b1f0f958402e9eeb81a5b1e045dbe238d5c3e04ea874aa50e30f541927ce1bcd040904aa71cfaa6e324811dcfdff10923e9945369a03d05196ae7688e50192e7cea1e2db9a272d1f658812b6369a09c1264e5974a3ae55f652c8aad4ef9a3cea09f641535d00a6dfda09429aba2c2424aac0ab5c4aa72b09037e14eaccaabb09043e151acca5f2ce4477e65558e85851c063ec5aa1cc6425e855bb12acfc2428e8567e1ed3c0f1e3c4eff3b3a393a70503970dcd8d4dca0a13332276e336933933c0ddbc1809fba692ce1a471a5611ee42ef7e1d7a666dce5411009872e772dc92133533fc96a25e9a45bf049eb495115a56eb5b8a8593637a7ffffff16b79e14155551eaa20f3824d6c79f89ea36be84f26469a00fc0071f7cb001e17854a17fc242efc122de60d18d5103a1be7f87bd0fc5e37d93e7334fbaa4102e0842feb073e371bc6e72fcd65c775dffffff677e270094070034b2e746e6d5cc1d369ace8d2907c7a6e3c438a81d1ef9ca38e944003c00789e3735d3c66f7ae1f03f891265e6f52a2aa234376a58ee6a160e779d5ebc64f3ba39fdffff37bf78ba9d8e77386e87476653e3a557a3507fc2716353738386cee490316933933c3bdc36002e762c0491581f3e657bf87f2ea5fadb40970cb481783216ea797f69c3aabcdf217158558e24923b481ea41316f241b640b624103208f944be400a212511128a8c228d90470840ee0c60000338edecc81e6f874e8e0e1c540e1c3736353768e88ccc89db4cdafc6c35c384f2fcc6c3d3ede6003e52c505d8aa850620b9a2b52a421321a8a7fed79580475daf0453b64e41580afa4117effc2602b71eb4ab3136e5ffe91469253db86068d5420354204589c7d8be52bd5f9bf287102231c40f70d602709da581fa59b28913f46b16ab81ba493b69a02fb6709c722a003ffe09f0a37742fc21eee3cf61a15f6cdd9c82ac4a7e7c87ef2e97cb15818841c4272c647afff882556def1f8588452c747aff48c4aa64de3f4289515888be7f34625534ef1f8f882e16aa79ff28254e89545808c7fb47255695e3fde312d1888570de3f36b12a1def1f9d88555848e7fd2314318a5579ef5f0003703bbfe37d462a7bddefe0a06e6ce88ccc89db4cdaccbaca2ec22052b256d52b299df08006fa4117cfefecf03c004e81ae4d794b22c9a24212ed9cf634c256eed3ff4b0420e014e49fe608d582b8991aa84b6ae1a2c265c55d4cfc2787882d9ec7b9e2d0cb39011671189256f08dacfc2591c30e9584e2b8227954e81408624ba91302c20e829e74d2d0058dbe5b49e402952c1c2e2f34b6fc434d79842c424219420a215d2083903fc82739c81b240b6c640b240fb207e944eab0e37df307d7306666e614d20780fa49d67f72899eaff3fe9353fedba99f64fd278fd09192f59f8482fa6efe9342d87c92f59f0c82ee77aa9f64fd275b50ffe34c92f59fe4a1fa4f16accc615537b24a4b2c9d456aa9fef0c917edf07c9289ead2899e7fe2ed14edf074bcafabcca666c2f13999920e0f472b42e5f0beae383ca42a594fb478b24575182bca02165d51ad8051d807155d658a2aec430aa52bac6445e63f9865e6835868fe834b4c7925b142bcc43e7c5536fc621fce7d144ef4eb89ff6015212e621ffe1f64a2a64f0fe0e01316ea22168ac242555888e77df0fc4eb7eb63e7bfdbf5f13eb60d3e79b803a3f0fcd79595e4fbf72b2b9aa6974a59bfaa7f7de3edf6681120476d747abea87da78fe6bbf970be9daf0340ed77d79600ae61b04d88eb398d00b73979a416d9c928d225a95454ac3a7fd288a7d35cb093bd1bf1f887b0ea5960ac3b58f754820a0ea4ffffff67a7fef7d4ffff3c5d07a9b83c8887d7f37442866405576081d64953b5b98ed787089bea9f75612c61032820310420c43183fe09384262bd318063007457e5665e70ad6a9f7920841de4f1209c1e7b394e5ff78a151e6ae33805698f8418fd1606847397090cfa492dd005a7acaa04b436122bd4de0a2cd06a7ad7aa76fefde197c949d687faa00bba7a7efc80aed4faf09d4e7b42e50dab2a0193156aaf04b3fefbf344ed937ea200cf3f90666666def1563669113af5df49569bd09dea26eda4fa3b80e541389c2c28bf944eaa3fce1394ebbffff73fcf7b9f2b39a1ae50e23efe44d59fc7f356f5dfe95613b516da282a68f317e88a817e92055db1255941382e5ad5105c3481319446388d60aa5cb43dfc379a23f4a67e5c8413659588aa5441bbe670e7b0d7aca19ca8242d18363575684600008004a315000028100a064462d17838d144493e14800d699a4476743c94a66194a428868c3184004000010020003042431b05e9ec21cb11e25e879c348cc3abd758dc18cbc2df6376281777e0d5bb2e6731671f38d55c2a981b8f45acc546b53f168f7e98dc3656ed2d5776737dbbb8df823033bf982370a23fac5c580bea7190a480537f81d2afab2e874046ee6abb3902819091f9af2b0a460fc54b884756cdf7d2e2c70f862dc0fcf05ed446eb051f0b4249b8c2ecbb998d54005554114a12021c4f515420af282aa614bddf4c4548660961744cbd751ebd589eee3647ce0f6c522b9fdcdac3c6b3fc58555b92075b9403c38694ff4f95ed6b0448735da47b7deb985c66efc4e04ce427153569def204923d95adb67a271ee3d5ac5a0cc3b1d72acbdccc3060ddce5d72e00852c98f57056eb550cd3982ce5380e6945bf4a13e649a93c7646c0473e09778f8078d55b4954f15a729a1f16cf82ccd8a0157185c42e84235e8594efd47e36d2c4237775e908b79e22088b58a207815d22a40a111ba93ac08ec43ced2d847c90e2d6e4af1dafc6aeac72aee98fa4c9ac20a93fb1336aa397ca34d37b0d526d554dbda7bb7c612dce9ab1cc82d83cf7f6402b0df9a34af7dbd87471a72aeec107d06bc5de32fcb0c3e672fa834c56ff6eedb29ef4591d311d8ed3f592541dec725ae9d8200dce51a75305694eab4d5121589525ad1576c3a9e1575742ec6e256ce6c62d1a1c16f5559bb54c43d5a68698d87dd4650fa5c414a842c707740edbddfd06720e40b3112d0bf501924a9df7d09a9d221a84d8b67541398512fe4060370962c306b43a49cb87b56080a9783d157d203c42b6f76b6104608d0939ef5a1ce283bccd06328c4e15d2d8a0185214312433946d8dadad7371d0e118f82153ba1125640cc1dd0cf195d2a1c5874a4eb0175b83d04a6b3fd28bbeee8f03cb8a428d2c5bea213980848625a009556d97277b484a4e292c3c81e903542975ce67d5a832c45a693783ccecaf13a70b950422769295af1f26035ac673169654eedb2a43973a7b5c7a4d057556d85dd8cb548c3efd45ad7d27436c16304957cc6dc367d23b4c26be573773883206099794dd30dd27bcdc3472f672ddd9e961f03cc5bfa3467f8fa8a0d17ff804d0433aa149ba2b6383d47441ad18a3f837ec1ed3ad611c4a5149599f6c8c93985a2bdc885e1d9b6f58a7f3d8d6162ccc7db9a846d3e24bfb518a0d82d3a4d1000abe8b147e195e5b155e23d8ca2ef46b046d9ad1f3c70183ff2c8ae765a41baa987f0d2ece32841378c4d4fbf82edd0e8491e684c5a1ebe92119ce47cc4e4bdcf87fe86625db4915c1d08dbf9d089404939a2a1f1cc372790871a52cd36624a2ebf19d7e5e3839d3af2674af98ecb96523f5f8345247837b643a66483a2753c398c09671d0e5922ff6123d4c4a30ace90c8207e8224b126fe87d2aa5301ca7f9c1db0df739d0b2d4e340e797f2e6a8ad08853029075dd2cc8500f46613776f40918696c947a34ae20ebc65b1d150a3bf662fc4912ffe44cf13e74cbe74564bc9f81029ebeb421634e5eda97cba4b7df05471ba4dfef05118addea2bed8671db7e286255002ada37a50dbdf091b8a178a69246f34eb8824d8c1c1aa0533c5d2012f98fc0184d6b5fe4c10be31962cd2e2dfaaafbfed5ba5a61fc2bad604d077ef6ab341512e9c179d8693e79e8fffe3d607f88ad1a627aa2ec3d839d9f7fc1fe5da67d6bb1a07cb3943002e798746ad68e19af3cc6fd25b036245bc9a7b8e85506a1e6e4e11f0b8f533507ee96101c0b094ede336765a42388117e85902a4e489913a3a60c82b512130557d3551ba62f08373ac30db0b2f09275b169dec36f7ded18e5c49e4b29627e5c15da07c93586398e83ea6a20d4198dd7b5adc207adcffd66caa0089571fb503f95499e8a063648533399b3c1d11b29d62465e8fb27279f56ea911f7cdc48e081d05c661e3637d45db8e95e68fd8521e9aed6e6a106e47fad8f8e56152f33e94b5252248af00d826f2eb55b5d1c963e05f8e7941be4b49b0ccdad04a84eb0723371b315a7134ad289d801eed7a56eb621de5f13d98599f17bd35c55750b5685ede42aa9d2d0ed520e0fb160da9cfb4bfbbcab428a2b2a2324745955257f6256375aa8e266247af946d4437d65860305b1bbf3a57303a56de22bf99463b0ee4451faa60fbb342e5a56da7ce03f9d15504a6345777634eb24f12ba1917f3b1f3a37e345eaa5347ad9d9295badcbc34dc484b852d015e41479a7fc5b269aa7a973712504f15dcbf8ac103afb6663faf969bf93b9f4c9f582b6c0d5e0241533d96875484f70dcf4a8525d985bbbce23830e40b40337e5b3ae0d8e6782811d4348acaffc150162ec543b739ee81198638d34f2686b817872867ccf51467767b98d187524cd2927e46737d6741c92b0e9d8c39ebb563b53053d67c7412c00c8b7a3fd493b1f269fd7359616cc76fe9e3fe19349e5d5f051806a805546351af5bd7b6c5630cf5d835f3def59b3fafbe88e1798d8056eb675ee9734527e2e7adeb736828d6d8abb6e5f34caf83d9657c4f083c25eb0367fa589be3846b78b595714a2863ae19d52c317e44e889543006d3d10242858366c9ed451ca098b70810119e0e54702c387c019e87a808cfe124bcec94b7ba0dbd3bc6296ce76041a908b63049f486b7dc1809202d5c7e6febeb6078b0e6308f007943d23044c8debd72caafcc83937429c00464652c8f8cc4e02a8f17ab115e7c756cdb23593b71066c25747fe54221569c39c302ecf7b37de282d76b45c444ea661263fd04566279a27ccf6b91a68c85015fe63c11afcabb21de83e40e52b7dbccd45acdd6092bca95d41d34561a3569c406e67439d8ba254ce45d74d5e4ed9629a1741049b2988e7a0de6d35949033372676cf75c81a7c9a6d05459321d9385722fed8192925c5c2bf951024e8c2b9ee104073050c0e6889554d596e9db4fa922877ea78edd473888ab4b410ab86beb2da52540f27299a0b0a77d0502ea65da4f47642224b46f817116712ca4240bec967ade2799e7448120eeecb863bd1642423de5e423f8138f15168a513b484fd50620e80402f7045f894453da0fc90b1c9834f9a4a77180579582c7c2d8a25fa9a92e9c4cd0c73268b9132d0dbd512d08df38489227dd87e5c00841affa06e542946623ebbc8e5f4899b2e82722be8985632330c6e2140c5bc19bda3593bbf91407ee03f5389fb91bb9a86eb6db2f5889a53fab18edcd90f3e0f92abc81ed01d7428a7e40a21a21316e6ef1abb09921b7a10d8fe442e2210dbb8a5a73baf31611bc6062a65c7e7ce4602304742661c13e29e9e390b4c77da386b44c3efa5f9a36b660b54f64898a634df0ad61a004ded9adf2f544b21f3cb076fc6d8dbd1fa7ac3eca233130f5ce260499e63b857efd167bca237f07b94401ee89b9bc4b4eaf0e79ca3af3400d4a2915938eae7f1f414776074400507d10cb0b40e29788b456b84aeb7f88c67a7ab341a792510b1b5ae061d09cc932b35e3a1b491faf9ada3517ebbe83aff226a4a9b27d75e48e6a7855b9a7ffff4bd02b8132fa22a4378b0214d6dc6ac82708862a45967fd29ccab94c113cb193e0cec3f01527113d65db925a1b001848290dc054769fba289725cc45cf479fd6e2a2e19faa1e2405c3556882d0b775b84cb2206d7f45b34380137acfe362cfc96abf9d6a9bbb4e31b439cf33cce443778ae7ec48b4bdd22d7069637d37b25103c41bb5b4471b7bd7bd5c20efc4e20fa0176022258bb4365f68151ab70390ea43ec5fd9a45ff15e470bf115e215a3da52e0d52a3515e95c405202d83231090914cc29bdd24cab56e516bdc47218135a205d309b5baef130044a79ba8607d5d29a03e1a9059700c04969b54387c072a32b9a92a541eb7595c2f55403e79129decf10b9d287675f95196eefe02ab86082cf330136e344dde88c30938a4a08fa35380b200fd1d580a3a6fe9d129ec9f5e92158e8d808754a8d1f722480d97c39946bba28d42dfae1447fa344685cbc50bc7063d61434b536c7e2a76c23924dbc2ed6709a0c8dbfe31d7ab229a2687e8c956e9a6e51878b9f229987351148bb7ae2a43a55243c6b654448a3284632e77a6caadc63e2331a7e1b648d5187ba70a52763bd89f8e1dfab179c56d4681772c00fa3d3f114ef290adfa66ceb7c28850da7e6978dc0805b69096d5a8348790c6b4dc0c480993dae32a396b9e759ab8d18bdd00d659055419f2319fc1bd0181e482a078c419756fb59821717360b195f1d508ed9f098f45f3fb38e6cfc8550213c6bf4c2575c5e947259c43ba82335c8e57d454b6dc090defb9594150ca76f4225afdb542bd7273dd0d8d161566dae12fe74cd87e25596030ec71ddd9f07c43c22e3dde04f6a20cde0da1430bca7c4af19f2dd787e9a9fab5d1c09e892539ef87cedcabf8f26cd0c7adb90a8b63cd268cfadef3b2b97d920db4e1fccc395c63ca2f17edf3b23fc9603f62e7672f5fa72e7e16915afe2b3ce7bdeafa773a5e3e9ded425fe45331a1fa170e33022c3cb08fc2bb02371bf629e2409e3ee8c0436385021b4168fd013064be44652dd302632c7ac96d89ec3ee21ee6e983ad8538996e875f22018475e757692141854f62b1e0065d0c755ac52b662486c011acb10ed212a56c6bd5728fd0354e944e83b99a3ad29d02fe82893f42f47a0e694513d95551e9eca0b45756e5031d08c9e5fe846ac1c35d2ac1808c3227f87d1351ee4d3f06052d886de847ab595596ca6a1706c96778582a59bf677d22495b08cbb3ba8100b246bcc0303d27ecb55a3d4a2ddd62feb09f704367a48609672c9ef92550e6667f0d5ad71b8093ee0256506f1a3e7771057354e32afd45aae386732f7de3e2c7e8825cd664ae097d737133e4fad318af405bb97b1a963070e1cb62446047c749074b0c4549f7dd688cb483bc39dc92cfa8b28155992a1a246c78aa42385d51e7337c0d732aa7a9a61efdc4d9350cf569815f62c522a92c602f00755720eeba1acbe9fdc7ac5f47f428662197cacdd4b319807f3319b32c9089ce03f31fa5492428466a38ae91c155b5c47a4135e21a238413f462e885a032b6e50b7332b45c08dbd92c292b9ff17f7b63c05d79485d46a4c6c27e151c9dac34c02c4850ce7f4b993ee98417420916224fd716a2ee9f527cef64a96c0ccbc220ae9270553ea244262dec29a9fd0bb467138cd8599a32bd7b7fe6b12c60ec6fee50c675c0b05dac6f4b05a276bed24922ec5e7bba675f1b34e5dd854381486899b46b5b19a7c01e62568402342c95964629bcd0a38cd4367d072fc9e6d730a73532f1e6d7dc3d73a0cba47d06e8871e30431bbd7e4a03452bcd8026f9ad35943a37d89ef318fc3fc37a3faa5b02fc57870c8ac4312b231abdebe3cc4eda4fd1318e9ee89fbe3699d4449a2ced3a28d441ef87bd748f4d43353bef4d633371da0020076442097452cc37a5a736cc8798d5a7bd8f62bc099967c3eda8af02303df32fa9d5ecd153c69eb23eab9a055306da916e47ed5673a233ef535db5befde0afcd74c69406d9b8dcc1f0d77260dcd19435bcf06f035b38857ddb63fdde6d90a869a55b330014d84401d45e234080e94848fa6868df694ceeadf29f922771503aabe2e10445a8c144a4a44d9f3030d06845ae8d6f0ff8afdba6ce0b2d232d138074479e8aebd6097f26389394851c26e5e78aef71fa63c0674f943101279a4b3ae25fb7630a94d9979f9df30e0f29132ac90779fbda0b9388c8ee68d9cd5b645b3208a404012604037729d4791cf24871b7d9395ca94724633cf4671428149e9fc9f9c3e85b4ce835400ff9329be39cc2bfb8a2953349e139adcb0e12fe13b30d4b2395d29d8964bf148ae68946a6ac9390df59e9f6a7f2bcba8f8c5800861c2b1a70dd6463fbd166aa05e0d83a341a2213a46bcb29451ee50cec7ff995b0f94427d09a90c346e394e29c431d0be8f348b12d8d4fa57aaf0d07bd868bb94e336946b5ac6632c6c9c38c176fa55ee1c95881894c7c117414a0bb57c567b0e39dfb67b9f2ed1f56c982c0ab7413810d42e2b588ece6db79e49aaf558225d81c6c88d37bbfe4ea9bcfe1d8287a4decc1bfaa5dd95cccfd9cfcea9cf2fd7cd302dbc3646bcb1f9405e9583409cd3276003d1aa398b6e5ceb8a78441b3c4c92d66901baf44d0fe137bffdba54d668bb19b204da762cb3a09f462114ecef1ac14fd4666abdf76149a42d046bb5404717f77bcd4b107ed197bb63ab46f7334497cc76c52a72ea5160852162daf18b4367b31d900b6409392cf2c45901151d56447a2a26e37e64ef2378f2a4d583c55976a552697b5f54c0017ad8248b10214ed2ec62ee2f23dfaa24ed0837546657dfc42bd6e5d0fa0f5110da8ef3d7443a4063950fc8813e898d6dab7464804c754e31e1f9005ae6c78923b19fc9c5b5b4a08a578fabce3859bbb1a66cd08973c1a5dd7f98b2a3dc874b2b77caa27e03ede71b3910fcc78ff6908d693687c12ba4d0107f2251d28b2c78e0d42fe7a44531ff9b6415768390c5214780654d05b5dd8a2d0e9c4a5921b1f0b7c77125383d4d40a3c5adfef37723d831260d0e1d3c03e7a4a1121728406d485139d79e723ada80b85da6ce31e395653817845fa8ed3dd17112d9a186ec984df8931874b8cc0e8224bc5fda70d79550e4f5a3c64b7ed68f302bd9ba2782eb5cbea25f79c131f45a3f8f885fc0f1ac52d386276a32b251fe717a35202eb3535eaa642cce38a3b00bd51159f3d66cd9332b5a87f79760c6168af7235f85ebabb9189c9329b440ed93719a3214ab72e208250270100ef8c8a006c0c923c8b094a068a3297c2f8ece52d1d1a0c42c95f3535ce091ad5c92f4e287f863396bfdfd5e9d6f1256e5974dc6460e8bc3b8dfa172309c2cd4840b08de8c94f48c57005ffcfc0816502ff75c7da56f4debfbce10d1cad9aa802f55827aefa61979dffa2f1be55c5c8f5eb06822a548dc03d52de5a9b61fbf04917ed17ce570f621f003543695452996d18af7236f90593310a02c64af84b4e5870af01ed9b580ab161869a9e89dc6abd7df6b4fe7e0b5d97ffefd409d547df41bec3e9e5952f3e69c29e26706739a54544ad69cb09800804171a1576704b078088158e23d8cd1f4bf89fd931b7e44c18b138211ffbe4ec1ec2d1dea4caf0edcb72c59f1b299171ddc5a910cf97257c19f51e84f4843c3edcd07e8207caf629effe9895fefa0faec5b93a5a461a58a7649baa22818634fc578d431123e7a51299a270d58104c21daf9481a1da11edb1476941a612ed269045884730677608e7ddd768ba7373504cbe7c7fc02b36033f6cd1917781481b466051e33c1ff779ec28b487801ed5e9ffc6de4ea3d5a9d4c7b75966989b6662d4077a74828b5ccecc313e50e0231ffb7d73fd1514d65e7c9a7e532c4eb1d821bde10e43197a34cfdc4896c34cb99d15c7020c438acbb46ceadf34bbd424598de233113fcf74654e8f6f8e08027e43b8a132f35737ae3849dd745994128bd21855996f7baac92b7069e657748fbb13c0d52b181296c6383f372405edb2f7838e01a78a038bce8b4ed3fc1dafd617b9d033b2088b25cc5ce0433e36dc1721efd68058eb49c58d7ffd33cfd6257c5f2cc708dbafbbef3819c5a88bf94054520fb5674a323d99a8cd8597bcf747983801f3419c00f95db68002d1f0cbe037fad4e5dd931b21bd0fc871bd433447b82b929997af376e7608bd9033542e0e9faa4acfd15c21d3e749c093621377aba2d3e3b79fba9b575dad155a0ab4cff7923a6497e43e630e3f2935f7086a21e8fb2e213527ea53c9e2d1240441fb24aeace4d575ed6c43fb62498495268a39c4b30d82bf780ebfa6ef8a1660786d42a6cfef49c90945a8c5eec850f0249ac2da10cb2ed9d40b258485a837b3277115f75028f436c3b28442edd88c3a9b5090eeac3f9c8ecdb32844844175695b99b0e1a244830301d05af93ad7a2a2579cb384c0b026d36b642126263882272e2e17e0163f009e7c5c6e3d1331afc7fe44a53bc4ae1200b59efabf57bdd9537dfa67bc4a7015c5cf61136b983ad4b615fa421a4c2e8178ef8cd9506b09e91aeefbe9d85b9c2ca9720bc21350153f4aec63dd494ec1f8a8e293ef34c75015866db897b568549bcbc448b0fa33bb3f26cfb8c348f43956d1a013d92294c51a99e1beae208c5c53291767b492d81dbc03d9943e20fcf0453884a1b6e14337db418772a1e971c27cf1768dd4654cd34eafd32f31c58833e6174e5881f05f942452dd20591e9364fe93131eb260ff57eea29ce5fa3f8fc50661902b6c7caca44e983ecc3e6dfb8198f928e9eb8be8b634ec84790b9e3003b9438aa8a1dc09afdb638b4a7745ae3732fd3d9e3087e3ccf422113086f46943e771d29cc42f50f2965ec8a905a68c4410ec9b1b97168e405d6aa15519d6868a2975cecc94ccb680c34aa074517174c79cd08194c1eacf76bea8e9d75cf3bd2e3a6dbef860d6f8644ae987e3f600f4082cf1789a139226a31dacaf4f4374483327bb899369d43d0b2624b7fc973b344b3bd9d5e110538d81edd1f7cdd3a651420e76b9718d2655be943c2182c0da049326c589f153baa86ae085f3c4567c0fcbe0464b9de441e5796b852718455b1d475939e83b4fac7575840688c7ce5e1ed582feee30968a128b90108386f0908100f7376a4b4f6567dc1b20ffb0b9d78e4f3aa0149a397a8a016f37bf6aa41815f38326eab357611d0b322979923a8292b12b8c5f2260ea888f4a0c17bcb46fd3b0cd53e7b7028a10842767415b636eded91d7c2909965e3c8b5801c5266775d18d6078057ffad642c1c6d9908ea279676cb5b731baba89268957d261e4b8106c85f6930774504059f6090aee7a20f2952c792085dd7a5bcadc6c2016a8b429e68cda92c70c2ca6743b891e932512aafd19c3bdaa5c2c8fb7c87f8c905cc5f7299709c69a0615a846e2e774674548f58ea1962f4a3d747822d463fe2be6a5ce2e4e02c843ff32e2798777c8ab898cc7ceb908d15f4456f94b48bef645feb41be1cf7ec517e1f419341ae5cbb4a958979d294a93a8c95b05788e18bd1034341a661d5b60de08dddaeb207dabcdeef76cd100948c5f514eb38055e8339552e3ed1c6070ad6b3bdaac87ead0a7c2127c0aab6adbb93a254a09d7167973d94c90da93874ea5491a92d3d541adf12103cff30521717552625bf3ca3d90abdf00d4e6204d49e0f2f851808c62d42c7d3f25b2f33cabb588347242cc516e14606ec0c309956b1dd9c7b99da250a8a5052e930bb5509a47911ffc75202e8a380fe5a6c27864ad2898495491fc7120375ea0ce3a3e6b1e79e9c19377148ccac1bc7a204dc85141c810088e6635097767ac8788ab0127b20891ed91dd1bbb2480b959dddc9a1a3589e6bdcf4501d8abefbb05e14de99680aabb9f8e3a209dd36df9042835d9db1795bb32166d4cfd753afa4e91e5fe96d02bcb6fc1c7470d40c6fcf6b18224da2fe9572d9ea1e15812fabd927bd50cd76f76205da7e89fb2334f7806d651ddb6c1f78f783fcd9308f9386936b2a894f60e868702e21e15c8c9f2a59e01cd8c2e1d9dbfcc077c16f46e23bac726886adac7515ab12661d375da8e1639de46d1e035be0faba5e9e82951f3698f5b39dcd51dcb50968cbfedc8ba8d5f6006cff3fce09eeabb3371801fb5a1ed392cea5f204593ccac0e18e22b59926e9c0c2e671c850a602263be8238dba91e4f1fa6e23c745c78749c1691deeee90f111405fa61eb061450a45eafde297398102175b0c75cb78e818de8716b4b58dd8f9ff4e222aa21859c632f0d9d3434a08ac6eef2c1d3d27da7fe0b5d7a1104c06d08de44b8db1f8d363ebd7d87098b860f75c9a7f88928995338a72e05ca231c06da3e24e32a45cf945bd0478589f26916212580e4b0a9720e3a686646151162b57981470241e34bbca8dbdb8efb6ae8b493209d73e92887f168d44442eda1d13255503a1c4c1e824dadf014499c6c9817e6b39d4b3a739f4d7d3804a6c52e52ccac56f6b7e38b833618099058883a4b4b90b461042d9c7ebd6b2c9a1b7b7583a7d1cf2209b12d8f40c241057bbe8047a0d4dfc94b5f3bc5316b6a6d96d4f021edd003db2e8224899f6e4c93e261fc5135e5a19a17574a79087df441c978d4bfa7c71829bd18f11096c03b793958d001b1efb81bc6ebc868fe311d3c5bc5ee46eba89a65a9be0be36dbc5909f1ffd2a1aa39a0022e767efe1d11156a168aae8e321e26516747c0de54480fc0fa677eb998f0f8704af7b773cbf3a1cde4d4e989b7d49d4fd45911b9a5391ca3bf15ac4770a55307bc1f42cfa59a25fa4835d4117a5816a6188e8175c7a2395bd962b25ac15319636eda8253760d2af6fa0cde2a9ef4114642d0650237044aae3eb179ef22a89ee65321f906f1e561ac6211e372d5a10f824ec6980f684ca722c8328441f3e2d8bcbc4496ca3673c583a0761a80c006626fd174eb77d844b6dfa2983dbb4b47311c7301741342bff22e45a78716282e97babaa3a5df919b41482b21e38f8d0f8bb82c70c8c53ba076be3f0a7fa2783087b02879ca9e585a52dfc034a4e5c6b8618c0115ca716299fee0fa0774a33af0423e4d1d7c8671709375c1b892cbb62aca9d85894805c88b5386cb0eb6eadc8902e1cf2ce620d66111028aa8510243b10740f0e80256fd9f73b7fab8dc145b997d22c271c8cb2db044267704aa4c91423f4727381b319d18bedd482cefa57b7b329928e94bea522e973b4d6fffb3235a1e3809cec6ae3f6c183e81584d592ce316d7fc62358b7dcc83529e7d7b2925d0c4374116d538db8c4e6724ce59af7e0da13e4f5557c10c6068d50f9db16c40e001f506563ce8e443daf5c700dac71df6281223c458f5161db641ff776aa971e5362b11076b8a3206849a8319e1993ed43c9902021bd32f921e5a4761fd42538f675e56105914145f0beb51a82d0879771a8b950e0855b505ca3723a10d67b338027dcd866720b7938d43b339a2e46a0fdb2e230498fd7fef071c6a42745401558597d54730cf92055009fb2e4aac264205e00b2a0fd3a9f2bf824c00fbb8378632066d10a3fb3f3cd00878605fcf84ea23e595f05257949a3b2e2112f4046c6984a769ede602e57ae4fa1cbc750056ea7383c15a911112fdafb01be91a5106b2afd0ff53a965d7c342c9922235ca539c22dc082eaf1fb029a68e9f72fe9d228727e5b68e9e572c735ac57ec95a11e40bca9f4da87ae41d3f715e27582d0e9d417c2c79a5b361874dc98b80de1fd09f02b48042634147880cacd209c6c5de74e797fb08aa9699cf765055b83fd1f3e6fc8bb697905eb0bd81353ba9723efbf33673020669fa0a82cbcfb168a75dffbaa9b724aa6f232e42f6e62faabfed3a99cc456c94b97065fa78c5ce0c72f442062da0baf05e089233ff4ee407f2fb1f6471ac14a07efb96c197945c487be82445058d390bc0fb1e989865adc011b417042de28a0d1cea852d9fea9315bab135811f1946db0984b4f97e4dc3c198a9db0da91c1cf54c8b8629b20b0167186ce7b1e6845521000811b07e19d041814fedfd7669b97d6e80255bd87056d9ab456320ed2704d6df52446b5097b69c6e7fae2e4a118272e3b271c45b81c8cf020b53127d8cead91eb02c54428a820078cb046917db10caa10eb42e6803a410f6a4585d09f152f2548af7585d330d65a372a15cd0d7253d6b79e58522509a16811abdf110d9a24290baae86e94a9c16019709d786d3f5793d5bc174d9aa4913b05650f5720f09f26922feb2bbffd4f3c482db9010b8133e80aa95887586791551088ac890ac4c33eeaf9838963262bf697241ab7a0983323c4d7995fe38f952d2d1bea8e0be6529b24170adfef11c137053c72b8b42bf61d2fdbee4ec13bff515768f0a19fd0e9a61a54074b06e811886b0802250ecb14fea19e43052bc09acff75f48553faf554daeac78c0027a66823cb017b1088ef2b687dd975d43b02ec9128a640997d7e9d806626618a0edef69b7f631be24c34d0e0bba00c673627d03d99e2e8ef2ba9d1a2b89a2fba15c095425c0b1d7451c3eeb6c71234eec3940d128484838ccfc81228f31f825e697a6bcd75029c8d9841fe2707fb3c3337a56c3923df597e0dd70245cbe31ec80c580cbe7dfe3ca62a9040571a37cc58e71bb4b635e910312d6e5faf42f11b8efaeff621e2d9b42f1f8b315e2ae2aff9fcd384ff3e17a4345f8c2abee7ba71158cbfe9465375c9458752d904c3b23f774f27d06d8899401c4ee2dede5b7540b8dfeb22f36ac1a549b12889d4380b17a378bcb17a544ecf5aa34aa32acf6a6bde7dd8ade4d37ae01ae5df7105315993fa8948a2cec780d0d1279c3e413c1abd0ddd63d80e0686659411e9df0f421d55b3a3b576c15fda0675b74880984db8d9615db29502c21b2f830445379bf8d9e94f84a1b6003cf18f4e0720e5454f9b3200cbfca5f0853dcefd2c8a5c00eee4adae47eec6c763eac548d2212e4cecfeb0b68aedd6f9a76eb8a22066433a46909249e80b16871c5c2258c8e62da9c48d0b98fe11441628d3ef8fed714c3872d286aa6f32313fce2d1445f7b2afb1693d0a17b62c7ca4feb3b2055db7854c707870cf008914d33c42d171be0bef86f409c2286b2efc53aefe7e1e8a06b4e1f9eb1b98c4e9cc202101f488191f958f5812a5b71177775ffbdaad8ecd507e1b7f38471f9e30e85ef99ab515bed91e345dcd334906050df3c4c67d5b49c4c5626ace45efe6fd1f9fb05725ec9d61cca1fd69cc7e9a02fc72fc83972fe30aa4b26db5184b2b73a7bc79605bed331115af2e8841da8dfc468f0cd4a199e263235852def3b546cb0888bb1ad42b58b470dc135f2681d5294638dd26b465c988aedb0c75cd2c0e66bdd391f2a3a40a8b2778177ad142466d4094d58efb97e8d2b0e41624bfe92cdc092129be378e8da79fd539d5ad9d911d7b77a8e411e1c7d3748e955bfa7bb2f19b2343a7f7facc055cc8b319c60d1da235a94315d235ddcb9b7b35cebd6886551e2188204a7f03554e09460734aa52116e8954242b0a4f013a481fab92f244745ad6724c1bc4f6f5167e0a96bcdeda52fa7643978607c2ca1db681b80c8d390c8d8017461951671e0f8b362995f044904b964e1145326b46abc6174b793a6350ea5b81f4e54719d654879d374a6cc225c4357e51ce800a60c7d593c503c380ba86a191d5ba8e73491d2d154cb29276653b73902ca0e3ff4db3eebaec0e2e3a1f3ad161084bc68325b7029c38ab9035d778dd008fc24a0f429c9b34b0ada5507227fa4d2a60204414f7ea78b560e7fc5490d59bc1dce7baccd1667f8909f6c4d1a02b0a01e55b29932888ea06021240203f82ae7ba7c802e1238afb009c88baa06ff0f9ac9b573e75aa6563428e0a32bf44b40701f64b5569cd45b8ce15d73c2466c70545cb756cc75ef3758714735e62c2a1deac636de7c349f9cd245061e4117c1e58daefdc52cbadd9770ef2276625897d6a7a19c0db3ca2c0cfecd9e703ee3cfb26dddfac2be060309d9a67eaee3aa5822b79b583a5dd0f1924439846048472a4e3c3a3c55451ff630360e2c45ce3e045a585c8b8280945019c06f0ff244ac000a5195c995556004209f21092a1a07cd319be1ca031da0fae9c61fe7a1101880208d0ca08df0300bf1e93b200d0688edbda3983415f6017d652e74159659e9d4500d0ce298b3527087c3bc24fab8d392bcdf9f271233dc02eb5204492e54a146cde14fb756e2c5c2f2389cf5ad52d562535821c379e5e6bd1857669bfed95fc14b7a0b1534ed5a4dd12f2c9ef2a7a555396b7f2f8517df37a1a272e4410e9293e1f3fe765841198ecf5c40fa0238d281a7ae1368f17cf91bac4bc0974221566456eae60cf34db4851e79d96303a0a3e9c5c8facb57804dd175292777c05f334b75848d2d9a22f47a0164675f9c81a9c842f8a9fdbcacda046e2c8e6479e54aaec56ce2f62fa439b975b315547a4c71c28a22bf0cc48041980bb9a329d3a1d7319bb0ac8538cee115d43e638fb6f76ea530476a632a66a0a68b21dd644b394a9fa7f8c48516fa954898c872c4c9a0ea3d98be577e871c747c7abbbb4717f35dc4e5a89afa2ba8d2e1e7fd4d57633661b1e8ec53b0bb26e88363835a94332eb25498e9c4776273308e8b1766715e7f4188099f43e4975c240653b8ab2642cd74498a05b8d21f9cc0a8b54a36e359c3ce333993cdcb458a12c873802a1dfc29958c67fd09a768b0cf81aa30c98889bedc3a56e2faeea50d19eaa651d7f11668768c35abb3216607eb9d6ca37ee93535acda2e4ab187220af98267d0dfbafd63a2de23dbde206299d65d75cc8028ba8e6cb2b895806c910de2be1ecd5d16662606173735f72320d7d8e4eed72233dc958e9d068f6ef494200e5d9218c5c684f0104b958c4bb6487f6e21559f8c13744b78a0b4177d75cc7e460b2be0ac3680911b92c3cc64e5892589fe7dcf06854dd8879f74543aa97f743c343612cd129b1d8a3d166fb03a34e44255e4f68e3df9c2f813d055b71f4cb85a7aac25740187ec5093888d29595ff97b42e05fbc46d06bd2c47f09c49aff28dd42070c718e30b202c6ab1857c0b466a678718350845295a483b6b88915c2650b375713de3e10851f53e626a1320dd8d0538cf94b771bf133ceaf81debaeec67b88650079b799072fad2af5d3f40b982cd155007d211ea0b768d1a957e5449da02a32498eac72f5d40c32dfc9481a38356d0749e13f70c00d2c64018bb64ae0162c4cbca84c61c10cf9f2c11006d15beeddde9ee7332c34374d947ee8277012ea60f7d9d3049412739c350ea7b0ea6ed5b153990e20bd4e08e12816ea3a5a5677a9b63bcab5745762098747b092a26d00265118f89a1ebab499b18978ff7ebecc403a06dc0109be2875de61196c4087bacb1cd694e664c00f691af0daecea64e1385ee76631d94082f73f61bba090752bde52b61e16eac3a751b0f85df50286476476f1b3c7a1d0f01a83139cdbb8471292df0bf673ee2ddd6c6e55739f106fb1bc672a311763dacf88ed45af0ae892ef981a2a911061cc535107b375f08460121c34d982d6b1cff3d058664ac5f1ebfd231cabaaae54d04f70bb8144aee8ee2af205016de915467cc14a2deaf8e8d984daa42697d3748386ea110a2bb8e98d75ad7b554addf468d17191a6c0822bcb71cb1bacbe95694f058717917c5e2d5309a547e054567e7e29603fd7f924ee228df7dd044c3c443d9ee00f1ac3db6f22ed195fc48cb33060ce103bd1a36b2b089e95fbaba0bfccb2aafa4b9ee6af735d34fc9e90e404de563886d1a610800b17963619e0fe15f18c412acc96485743f30cb6858a136273c81bfcb980498efa06d1405e80e0d464ac6f90058b5088169fab3737c6f0a3b6e23d8f0eb3754f4c203d2edf12945e8d0394e2341ed63b42b0fbf8fdd5a15f6fdb678df8de0ee957b09ccf11df1f76db2c05f905a36e9f058d3b223f3f163516b0e70994d41acd3725b163279894cadcbe26255faa03eca9787575da1ffcb250f8f5790849a767c59faad163c25d92c7c9d636be04b49ffe108fae9228e3a7d0bc2b654466eb2c403dbd8952b7a4a6d7391f76a8b3d02b44cba4e591a711f40b02e50f0f5f304eab26939baf0960b10534de0c0f672ef45888ae512626ac791d75af7ab4c02eff3cb2b10e813100d78fd21a1686b859a3a4cee844aa28025a8be2add929ea3e118da8c3799a6c5c355a0fcfbad8093794d5b1d9cf2e8f0f17df9b2eb5adcd28d615af52e550c992ff53252451b6900a96bd4d34e82b66e53add6b98f0786d5e9b7ac0524abdba7657149236529fcddc03fa654b1880ab1585de25a3a40251a65940ac13d72ee2548949014123a2eba772ed6bb46ab7c5acf21738ddb68cec56d3cefe878b58252422368f96a686d6e99c4608349dcc3b77cd44d06fda6e129789822f1fe3b21b5221567a69a304fc4bd60357672bfdc60e7f4fa4437874bcb51cc37d3dd4615dc94cfb8a63e9a1134d65bf826ff3cbc66d8fef6e1315d0578e8f5720f88c252cf5fbfb9e2c312cab33fdc967436c38ae14e04af3b382e2e02507180aa84cf6cd303afe125b4575d326f2eae7c769b95acc8f2dd57abc911aa2e5ef954c06726614cafe29885afc42427c5969a6b4cd40b9da2a09c85b480600f20a99775276112a65f312b61a3c5f235869f2a2cac42ec9885d9ab01407abafd1b4a948c32d365bb80fcf610e4511a7dfa1ddbce6d1161dc5278dc610e01149fdbcf085d86a110a51ec8944f4c7d0a4a0d5d8ae948743368038545e6fc3562a3c6fad9eb059341a1c52926cc6f0ba03d8f5d9b29a686f1ae460c6862735926e129818e1164101b4dc418a1940f79bd672f013ae52f33550dfee810b9bd9373b7dbc0cc23a7623ea5b282e8530fbc0ac4afb8506ffb2b1973121fc8503dc9dc82bc6cc61354f1fba3672715bc3c0d56b7440f7578fe763f6574f9bea28eb04806697a56a4574c41006eaa108c5d95d92983f6fb012d25c282c5c5542f405068190224f55343b87b4d479a976ab839f0b339d83808915d4a969668112e39653412042e8fd3f4ba7f6472e74559b808db406ccf160a9f4c2ce1b2b5466781df65f62ea90dbf4c83d27242caac147754ea8e33f98174b5e4c80fd99367bf8087c23345d6c0752b38820037096fe05876c901782e5e505364d969c134b1e770a658bf295b4427171534b246ab3e5cf64ebd210a559055749aa862830e994f3edf33b23952d5f3780bd2a1992fa7dde35f5f211dc14d7211545670851a2808faaf874150308509188203e77332eeb483c1b7245624dbcd98907dfc3b379fc7dd0686f3375bd076107c7f33b2065eb0ca4270af43fd622bb7d137584359b4226ec5c03420c7940a41c0f8ebacf3eb6c58d711c739257ecda3c7d46ae8789bfc7db866cb237afa15ac79a277306eff2eff5c7f1e317294d84af684118143e0219e62a0cc28ec8b2cd165187d21807c3d62b48a47deefa1ed0e016f0cb3d3f751b326d7a102e9de837ca3d338e784e698ed7e16970b436c5712beaf483b32398464923067b886a86dadd0852885a4d9bdf9c25da287862f209317d8a5bf18b043dff6266cb0219735a98412d649371fce22b07ab8c1aaca1fda69857e99d6d8ad3dd885e618f0116b0ea076749792b0d357ea04ce8705bea9e49079d39075be47609af356ba477583f2cf704232d18fb95734f4e79177e2eecd4dc15af1425b1c545e99db40ce8bdfdb8f0c6007551165204746966d16b5d7a381b1791779d34c643f38bfa738a39e6ae0b40b5d891345aa0a147f12492b9fef4dd43a14443638eb1249c3e8df2575c81cdc96a150060969622d0a1f67a6c93baf0292c7a15774fd7c987de6364413c8c5584675b97d5041c376d6f6412e898e40c6f98feee22e65aa930100902daadf87d846a067fddfb0da1f92ec3def4f0fe512a0031ffde01546d68d7ba014edadb42af57784ae0896c97bfc1e13f1cb83a13bd0767ee72859173ae7016d429b15b6981ac924846a4cb157780f13ee861e30ccd9a9510792b40118bb2670a279c20267c0262a473634b9d34391f373c64e4e8eb07620a939f6b369eb2450b8cf6b0c175d6ee06afaee9774f55c19ff065bdcbc13fca61fb8acce32bc6f41a103a128a25c192bc8a91017abe323ba9af1db6e6b8a8725ec9357eb4ce7dddc5439f6d3d73547a05ef4d0beb8f867e1c95e385817c5420cc322c9faeb07ba2b7b9c36f113f188ef8715b7540e13c960984c11cb1b5ae6cfd35ae10e40f38860fb2285234cff7eb775540bc57ad52037d79933eb772d9e9801bcf7a0156b73df6eff43659f9d9c25a9dcaf82db14141e97e34351bc0134cf1404cfd96854ec8f0f5a24ab892e334b2a322181bb84f0bc9097ce6e02a47aa155dd848740d3a4425eade669d333b3d99526ae33fa20ac1ae55c3d8d3fa251ced34557c122a474751697c502f5281a8f60c411a7e7960e84f00e03863c154449a8caf25e998d2957ae1e66b3f3543ff204c9d5d4c7d47adc8182027686cf1c668b63fe4093bf391d7d04641d7914f1b520271b274da2cc87e998a68f3b8a6ed4dbf3e73a7afafc0a7d829c0a1c49a7c7cd15838071e35c94f203b21eb99e58f554acbeb79ca7d18d376a4bbca3696fd4e958e02fe61b7b365d2022b7e36484cb082744f735185b9d6cd66b374022c9d6a70f14bf89d2c42fa1dfd9ed5a186471202e7ebe7b798eea5ff3f29b5c065160c92e3cabafb939ea9608c81160204da3951fed683d05ebe2df7a9596e4dedadee87b418acfe0476450999935f53c09898c44dd4722d0fcbc0d8781e51c7ac72f5f896d679d73f34be639d280780b136346e7639794bf3fc0701adff4ffd0ee3326b456eb4e7b1154a643c24c1116e545b0c7cda1e77859d4e9958d01a89d43c9fbc3928013325a91c2aeac8721d15cb02398b557c0ef06e7bbc1f2bb57f3ec218a909570601db3b958542b25832e19f248729ae7fefcc09d439a9e2469366360fbe2334b8e50549252aacdb226613e48b5cf3f91983d21953441953bb07a8e171ccd6f10a9c635f930a1e1d14ece10b382b8ef8daf1052a1a9d0eba6a49882ad4ff23fef5e2dd63e1ef581324f7b29dfa196a3ca36f2e7c6c9f6f2fb82c975757e1da5aab8fa7eaf300f02615b1b858f34678e7e1166be4017a79bbf1489082f1d2ce5669e3e5724b362466d7bd4418860f1302595d3a4758c09925764a6c184ee8c274042138eb0ecc48567fcbdba26489b77b29b51969ee9999571ef554e2a9ce3cb42ed2dcbb1a0722204eb7007ba76f6a2e7e696fae75fd975641d3d075b17773ab44b92caa1406dc906f1c913ad8c8299e5fe8b0a8864b450d4fc9513cd298030dc3a5dd3587fc9061b442fe15d5abbde353ae00c9d4009a19620c5e05522afb84e518803c486f6a01305342487a23af4d00081b2bee8b54e65459b27f3b3ba5bd3c50628309d827a3e8898245ef24044a5c65b75fc239ccdc31dcc8d868b305642ec38b93d2a3b4eb9db3959d4df1b08032edb4bd268e32e34276d5da783b105d69904b068b279fcbcc5b3433a465f4bd974ca0068ba53820c08be1c05371bae6b623b9682c840cc34f5f00cc6ad58f54de61bb0b6ccd54b7313ca5a569c9d7d75f7402cf6ab7d790e211fd6ac2391081254fb6fac4b561c6eb0115704e67f29d4e035c00a5935778b45604c1aa29bbf54fd91530a13581b3aeb6b68370e7666393bf5cc40ed20caf15b830a6cc2515916ae1c342272e019380a200f1fa6ca3a69659befbd4cff22dd252f25c15a80772f506b436dbe8a7dddb795ff97e0bc63b83b710bb6988f0e3b663f97d97744a48115108ca93f704f98162e99967be8692a82ac6c51a6e2728461c66e183d0e6b4a632a988789626f27cd8835005c0d73e4a7f61ec98a9fb86e9d0cc7198af6f154c0a062365f7ffa50e77b9caab671f85b98da4a00b548b3079a4ab977fc56d43b1e31648acacac22d1ee99b1de88d9e9a3245f305be9f001af9cdd5845e850c68ccf76256e7617f7704f40b97816951059580d7cbe0c006aaab43afcfa73ec42762c2503cc900dd440d730f6dbe6f523f1d15901e9988f6f63708e4fd15833ee1d1a0aa566c53f2bafdbd707fcbb4256ef1331241e6a5edbd3380455c5129ab77b5adcabc3b50bc39572d67d58edfb8d0d99f08e9c00defbf50746f913629549265df06f14220d29e9c0f3fc6fa34e98640b133c7cc69bc1c5c3eaea4e003d6ddeba572adb507d2a6dc1659ae6f87ea1e5245f51aaa7bf5e9c25578402b788fa2ccbc39f8ef5502c1f7a999c8136f13372d7beee890d9822eaa22a0b82ac64917296393a3255e5a5e02683870195c1f90341b7ad7d18f6fc4a08853ca3dea6a8248601f52c056094d3e21452cb84131207120735b57d504906ad6e6885a034565ead9f957c022306bcf0d3f98ca81c23d76b86cde0887837be7b41de3416b0f6e24e83fce1f8c732b13e98edc9f32ca6231f5f20a6d893ca0367985b6dce2e4cbfdcddc4273ad94ccf906d0841d2ca37786fc177f9c1493c87df1f8004b520b3a958e633b684f37ef037255a9a5b55d8ce67a63bbcbcce02472cbee95b21100a79f9e2066bb5892a5044a6f9f7032176fa7231beb3efc1ea0d39b42bec71489bd352a12b27393ca71e8e12c627fd9a49dbd91abfa952cc6b774801ea13b72f327f7c4692054d7f6766598b08080de728bf75f6a3d249f9c209230818db7cb6574598cf55ff4346aa71ae8e1a707698c02f8a376d3d2e574d5c4d57697f0069b33e2356c07bb365aefb2318a11ded41d96e09302aff11e033d0f37b1364220cf27456049528a7a1611b25f42d3be1e46fdedb14e2b2248233f111a0a780ed119c86b730e009b9dced0704492fdd54551ab7f3cda93fa88ecde4ddd33dfe28455179109a6019620b6cc7f1dfe3f8b52257650ad98982a770bbaf1d9f94dd1a3e52f9b753a807c57d61a261737a1b1fa4cb7a1d2a8d7f17c1eefece1f973aef4640145319c382d79fecb134744561f053b7cea910db07cfe6c0dab703fcc439b492dd138db24168cac267fa7bf234e0e521f98a7d57ff5d387b9b871d6755d9a25fc8dde1696e7a2b0ed45cd6d78a0f3e3e56161eaddd30f5001a6551b9035e05112dda326c27501f80426592e0625f7fbd64323b3e271f55fd4f9efe41f9d996ebd35d9e072aa9add70a933dffe41ef20d0149f891a0e2b8852bf6f30c0562b437c5395b10fa8dd1edcf750761dc359168a3d3b527811f6cc8ed499dbe448434bec4215e9d873f9fab9e33ef6b978ae6090d4bdde9d93b064c033f1a59b440ab2ace2e92bbf1a98e8d5e876bb2249333119238c4eb234428707b9a4b65500e793b319830f11285d8ca282d3b97f0b0c84378f52b7e0233a9731df276db447339924c224b9d0a9a9b6b30b3c6cc6baf7dcb97bbc941efcdaa1a5573ecec253dd8fe079e6b8c3b22e3fed3c20363e3442a6c1718be63b343be9d5c168a692185a9f807844606ce4338232d255097e00c131ebd0829855e00f07a018870511147d1ae95756d430e2de120bbda0e45cab93e269cb711819a6a39a87908c29cf3644b53ff1f841edae1829b623dcfaa4f7fa7985ec469f98c529715025f1be9c9b936a75a06e28ee993b139d1ec841e0927d5396224999d9818d5e8f6ce59078c9f203ed003dbd612e56181b97cd8173079612683dff49af09101b340be8e4f253440dae5e74d2b60e86ccfaf76a15b6a2f6332986368e8ebd202cb4a8ccc349b19af3cc423ece57b3ce8a9c2fbd8859a09edfe76b0749c91b6ade1b2fe7f0543a1ab10c36b1380fbd505a3ee8568d54137a4641a3f9b128e9d26a97e257626b1ffddcb87413746ab00b9b8d0f3fb5debd7b50f32edd3b17d8d57c9a4eb2419b84f497f2eec7d0d58c0fec1ac9c7d659d362c8d1eca64f0dd7ef0b6ea342be11ada1e798f226f5b7d79146bd80e2fbb9d905c02a11b39df8caa5e55a3af288c0d5177a0a470bd566284cf44cc65d385bb79c8a99c08298daf95befdef3f2f3cfab661baaf72c1f388a7bf65820d247d02bc6a5777e6ebd81af28283d250e7a9047e83eb7f2eb73acbe8daee28ae49fef40a6e758d2fffa9e762c28ec244613a214b3a5f9fb4a01a8397e07e43e8f4fe364ddcf47e027d3c34da5f4702989130029f06108f5cd5837d95cbbd3403faa370273ace8f58d477a9f09001d4f438121e7865ae0ba66e2094e9c0a2aeae2c8ae93ead0591f96da493904bd8a471d2e58e4eec67d882f651a6778ff2d1226d2f0e8d28276527992f9b443147c3eee6ddd82826d764c6e6d127be339916c659e43e13cacff5d838d34e6382ce4153fe855bd09c4a2df66e6f87347581133eaa36dd5ac5c6c3f661e36fca299ec1defbf04fcbf61a96cb099158559dac275a0850ba40a6562b659658057f6a8c25ea57d10163fcca9d47df2bc2a9526e0de5f67079a8c8cfe66b5c9265d34c4414c7ac72fcb27d41c8c83a359eedd3507b7274934cf151a40199bc3991a47995d77ac0330fb439f58da94dc0b238269d96fef0aacaeabd8d1e92db1640be535640191c8bcdf55fc7352583fc1b7e5cfbbd2263fade77d7b46239a0cc9f6a328398a07637e55b72f0c4f40b88be7257f6b1a8eee168351372347a35e15de5d615f123fa5b67946abc70a5a063dc9573a75658b0529d764717394b0968f6b0791467530cf35681d7ad7995bc94cb94407185dfa69cccc5cd62a59709c9af9a4e83e2fe5fdd7a04f19c031af66ffbb3c30b1a481400fc2e3a5e953f668418f3377ac4fb070ac42014330b0af3e5d8b6108aaa414d6be3d58d94b2fa5c59f2ed89c2e5a736e6f41b1c570e52bd36f1517f02f0b2c3fa4204df1a516c57c742c579ab420bc851bbbb0f7732196fae6023a74f51f2852bbea3a751401254bfc2d5f73e7b811f4396fe9ef0cb2bcf238ca0b9e6b09c21e88f5e2523a44f9a34a8dc4fe3b9aeb9ce0ff56d656051b436ed327e5269b227daebf2a43b426a4876281021cca1eb4508cd51a5f892b87b11c9595d644b87f885366aa3b5c64f669ef60666c653b7ffc3ddca2f597e7baf1e2c3b6027fd7bd8be700e663e6fd150a720fd8ddf153376fb4c481c76cc6fd4f46d6619abdbbc0ecb1680397b141f87173ba0dd18a0d371135caae9d910b6d44612052322f1b2efc3f7cb158db8d2780c88fac94df14379a9c46c49e1538c0099d82d47c505e4000a691a7283bee77fc2fc1a65060c24e5815e0cace397f670eefd6d434de5cb692a2d2b4630195d2f4fb40c4b7d6f7f97b30ad2c9c63b0123cd3e8b474d8b91ef839f764ee377f60ed0226c6f32c93a0b0eb74a12967396df3d55f78a31dbcdcb0e26da78435ec79493027c4f99e1f822d583924f1f23fee54a454da592fe7a79af5d3f69a9cdf0de323217eda22323d9f964e2330b0d4f99ba7e405c02803f419e916cf1a9921dc74f9619635c9b4b1e1b75909c8d8fb494561d4cd53153e51c40abbe418f3c2b32f766b0f5c8ed36f3a9cd9fbd5d5089d986a7f9d3e01ceaa3be82019a9e588755a5cd6361da1ef0bec6fb5db7c376bc9fb8ec81ea0babb03dcafc97acad01c6e20c0883c4242414af54496a0ba6603542e8ca88a75b109b8e3424472951b3351641aebb9a5cbb2d0d3b0cc80027be832fbe38379fb34ac2d3de1b7b713b5895b5f50c6009e781883f0b088ba8d7c9c0a3ddee6b46ec7d5cad8318103d520cc1b4444e7086937e646b1c779403d90c273e18337509f8dd35ed641e2d3f37d3d7da5aa9c03e7f1e70d0aacfc0ed215676b0155da83a4361791daaceecf08604e6d270a12a8c1ab242de6e25eedd0a0e14c5999c3f419671cbb31a47dfd0d2611de6fb4382a1282f1b3302dc572d1d165e3dede84ce91f676bdfa1c27748d71e18289a1dc2140e6ad58d3d0a9cde307293d10d993a3a75610ea007551c814fefa4c05a4871ad66a458fc904196fe646b54da7a068fc8282af8027e0cd8ac0bfa13de1b720ceb4b20ccd5e3474e05ffc2c31fe4d8294e2966aff89f0f21cecee0110a1e1b507c5c762485e7918b3be8d37f8e260730c33117bc1a0a564be1aee53f68a487bf0f140b3aceb32ccc098b652f9448d8120bddf29da22194525d6e90ae638c74a16948779a903f75bb9d9f59d2434a56493f362fb981cb9795ed6712bb9a66ec249337e022123ac4d2909e822342252e3164a5c72238ddf3d4e7e6f778353a125d1599cea7af9c5861fc2fec66dab318c4676bb3aa74986b0f866c66941db806e25394edf4225c43d21e5e968e3e7df1b77579a69cccddadf36975c878938ff15fc6f725d141e0cd1e458e3874f69b494f4da59732bd8ad03ad017aff083f54fc2c7c1b1c71118efdf445da32d984e002524ea7dd037ae00f2bf77cb14c4eb856af80f90748bffa590f692500efa07229c09667457589ddb254c8bec2398aeb18d5f7d820c0d984d4b45753ed8bb5f36833607b8f245d0432b1f9754e1786a6e1031e87314410303421d0556b43dbd457e618fadc45540557a65218e682d66729c1294be94663a9ddc3526efa905277cd2a0fa379d8bfa4aef697da0f4c39ab049bcac222943da24cf37de47fa187323d41819295642b04d929113983c510c59917a76fc011f702da4c6da1036f71af213924d1eaab0c250724cbdac3398c411870d45b1a5da51fe445ef89de182a342e8727762c4919df2ce36ae9f64ca75558d3b45745ea5d0d675c135710c205a3d1fe5e46d89b39dbcfdc1ef83ddd06a2770ce00df9dba3294604ce4310d46793a91e50f169464b6ab8a3f2f266717e2dcac36a289a09d17e1447545957464847692226cd1979d6c40069c7034ae7c2dc4d6bbe1d44d349ed476f30dd15648385431ba9571be43046b7f91c2a36a7477f6bf4019a83d6741660eb6c484f6c1c21cd142560800f1c2abcab5c547e5abdca20e940c3a30658d4e599dd083e4768381ea4346033ce59d50e093cdff255799cad28aa7b4cfd8e3279ae13bc09790fb14f29b76febbdc1f74268c031bc6f0fb30420babeacf4ea6b3dc9ac2214edc911285be1b0f0e249bdc79f951a28d97a40a3b21c2940693ed49773cb21760401c5e91e425850ab560b07c6e2229889e8503055d6ac7c413cae67eb3ce19d71d5439acfe4f90ecc2433a3315f4bc3adaba2f375d77b691981d95d7b94112f532da02320c0f1bccf5549f33f35012dea3072907e0b3dc95ff5ac5c9e2a66be814fb9b663dd34a92b528f25833c73a4865cad609c0c48d35856149a1a65ccddd4dea3d5a0d50b6bd338f128b09421c6dd8aa3af72df4facabefb6dbef1f6df49080e0c38a931c23523db839e6abd100831c5b3d6def0e419ae1d1b0dc378bceef44be05284ed4a3d650f8ed444482c1a6f1cda0bb77f17a9753ceb81de58326a74aaedd29560276be35f77d5d4a9df2aabe144e377f123857cc5ab78b6852311a3608fa197d3c93f264d54836a4e56cb978b7775a313aa8d938f685f9b11ea5342a0a8379ba30651e870b4f6be2c508369e369fc30f0c755de9ab7e3a04d8e94cb468920ce300313515182f1a369733d84ebaeb1127bb733a3a40c6077089363fc2df220808157519e7b27a375ef39e021bf9350775eb6bd4187e7b9ea546cc92fb71d40d67cc22bf66bfb19be99c14f8c284e5e11352b07a89fbbd1d55c2d5038edef3c52859062160ce72c20f523905e9381b6026105db2d3f5dd21adee02c94892f6862928e03d4d82b3d4d864563504854eff70b63ceca1bd7e1e6bb96392bf7ca212e99bb36b22cfdd1ab52491f5c3f531eb2b3664e5f1d4f7a0440d765a3c06eff40a82b3075ba55e20d6e84041c5c4953e71c7a7ebc94954287cb27ecb4c39e6a5b17d419922a1d8ea468b5ba814d9a3740d65d99d094dd08e517ae61507a24083b266ae036b51d52cdeccf1c2c4e86c22e519455a85e96b30377c27ccc3d7fdbcafe24496e0f3f39e454da7fededaa1a9e896dc6b19f519df48158d19278783e613cadd994e325fdf240a8999480b02043682b6433094bd4eca0965638150e037648c495c823924ac061181c384219df3c520893a45539435ed5a0bd8047c5fab9185ad01535631175ea2614091d17230e76eab7d359152dcf43bace43b32a66ee715ad74464708803aeb2e22b04123febdda7d283d012dc87e9f71346e597789cf121e4b4121be9afe46db2c0d66e974994d90bb06ebdea8cbcf6fa00d9d4dd6e2a91aecc7cf76c000d4041a23f330a5ebb8fedff3411e889a6810fd572587fcef22b4395d481ce5fb8974b21839c0ced99efad33f2bc34a92e38425cd941f00216ace3f0d206633efa37db4ae8d36a105d35a82972fe7e8fbf8cff86baab892f36dfb5ff08482a6d3a891581594abf7dceb914eb2beb85bffa44a68c95b212cbac0001cc57356a07185c4beaf26e804a36ca9d6a7e7cef25a0ca38cf6afc42c94a3c0a65dbfbb0cc95194d09e000a933ac12447e1b31c661b22c286fcc42abc31c30317b42d7879d0dd2625b0429e0b4193ff54b49e58c71a2839e49f30df76df9071e00db2970871dfec11cd67a97b46ab7332074e77f920baaa528708eff62f9d6230f0fb63b7ee9e5fd40648cd091c844dd7094b57a3b79efad8c0f17492b385771b553feb81f53a3ea8a3a6e2fb6263335d033037fd3343e30ba045ffd623d8bb805bed30c1d59207e683f85f7e04bf801181feca1a35d71264c7e7c9073558e92aa4f19fe5e46fc48c9516a9969bf697e98be9e137a9027247273b184e4c0c747e9d5a12e3dc89d3c8a3f5f26312209f5d06c5dc18bcb264c6a4b99ad97766dd18c6108e9ee5432b07c82b5d7547d6ca8be357252b1a542ca720bca1d2f3cc1bb5a840100ad0b325be8d7caa0b15ac8a29cd10394e7ae89d5f60ba0f1fdb68796eb34b8920ee2fc7574444ea16e0f11b53854b07909ad9d3428f5518ca56722f1c5f8a36be346e933949a7728fe816864a9aa2b904992e6370ed84303b2684e49c58a863cd7fd2d806f330a6884bc8e165188dea21cdc3b161817a14a096a741615e6cf9f3c0ac28a5d891840b2d394df3614eff1121b6340f5dade3a9a9179dbe4413ec813fcc08ae58d14171a663cae3af4fb35c7375132e13a1007f0c33ed3f615023f460af3c799b8236b0e92f0fdc7c84750b6c84af75cab9073e802cace797e60c1054a6d86b363cd1b0a8f999e72d0ce8b20aade8e3962d1795e25b39d49be632aa41162a07620dd977060aa1dc4c71f35a04854d2c0d33de6663898f1ed6989d080b60074bd6aa51b95d3ca4d3e85e79d3d9a2959e4b8c4379c45390130bfe3537c79c9cd6763fac5cdbec3af1a57b1423291f918ca4a79a693230051cdfb4509d68d01dde719578a5c3ff51f32380e0c2edc83bbbdb479d39e61e1f252aaba2fd7c4c550a27e24821269b99d7af1c23e80cc1db1e41a693d11d9c927a93f34ecea428beb0f8d7e0f86dc16a2d65a42fb5694eb42d128f9a7542351c73947a20195b8321d5e4639123d2933bb67ac211ad27126421e41fedf1312a4f59b137ce64786bb5c1411e4f22b1f9a5c6708820bbcf3dc308de703f5b4fc34bd0fc4f1792645ddb14af66a594941f308776b734a9a5acc588134fd01e782341a5e5a071023b082624122439bfd95018d8b7fe43fd37f655fe7885f41fd01b59fc51c08e001a2fa56a9c2f1693e149581bceba8a4642807653a7f120b560755d4ec2ed04372281750c21af11ffa9959cb3d647d2a15ba9326365c6566d672095c71af198f9a23a308e979da6d5eb81d0b2c331cf870cc3933aa8c9386e5792a25cf7d8e142eebb09fe6b0b6c71ceb38725ea92539bbea14c7de7b98d2c4efd84e90c08f22d948f4d9a308d4f9f4e999c66033df41259c3f73f752f8ce8012fe9c87e492d6ba9f9ba8c5097dd38879a0a955706b8ef22e69c7710ac1d0f2a9100fcfdf20f593c2be013ee408a9f66e03c7b9bb90462adddab7827c797fde8b562636423d182d6e85fb20952857f4180e20c63a36eb59f907285c8db6b94b2c3db855ae9e2c9066a46197ab924bf02a96a58be13d655d9f559419c3a923137cc7106e21b323b16e0b508b2aa860fda962d931392e23235a0f3d0522f2ce44c0926d8ca807af085966d792bdc50ea87ac2d368cdd39c57c309a6be77b8a51637409f6103b00640744ca030abc7a8c5b30d0b24a07d615e354ef5588dfdce9de68c4b163d4dfe8a9e2d73e736de4c4c187b81313b718b9c95018064352c268c3431540452ae50158c2c0640547c5adb22f5362b70547426a2ffd8295eab2212209d97bef2da59452a694026a08f9083a085f851dbb33b1602883f6127a46e5328c9650d6122f5a98208548932104caec3dfeedee18a333bb3743eff271ca39a7cc3967b78ad1c1cecb4631449926b8734ea9469446313cb954464a7670afcb464accb89ffd689489e038fd6c75589fe7554d84fa9f33f32681ebb187b7c29c20d5db710117e186b99b2edc3dc0c2b1ebd413a179d43680bf3b6bb95efb6995b79dde7e6c065dff8c6bb82bbaa2e746a7e23955297e618224227d12e83a17697972fd7eb149fe2869b9723f2945f67c92c9f5e7c89435bb9f6ab576b5fa5f823740b79756d977138be5794b5f3341dec282a2db4bb0566b57ab7fcf839d711fe8212c0a15d1a66882a855840587810aa096109fdfdced3fee7a179968ae6f1d5394ddc591f3603fa80495640f9fdab5f130378feb7e2fb718ab58b665d8ef2187f5171b997807bbfe316e14e01614aa3921db3e7b23adc8046766988983405d0148048128d02d38046ffcbdb05f14ba42f7bf28347429d9ef834057a372bf1046a8b95773f4a30a3e985321deaf976013906bf1f6c14e480f5df9140b20ae7c1f7cb1e71a42082113eff0f7c23bbca5951c6ced3832c5997a000b92dce31b99ae7f64729caf5b8d0b3baf62632e176581328362cc1231ec5029ca9a0784485010320485b87451e8f1f969d261d259d251d249423a2a22faf9a981cf37c649fda3aba6b5dd40d7a1c0aea5b490cce4673f894821eef993060aca64946cec867428b8e7bfb281ad0e7b384dff40fac18fe7f5cf7f2bd672fb273ed6a96efc890f7fe6c78e04f71c8586fdfa477baf40b4ae7f30e7a59fa52dc9c267d61244038ef3c54e086bb9ad10bc267ebcb1d3791918d8cf2e6751c1d1fd3a0884fe61b18a240b6d04462d0c2654b87d945c7f7720eef9ff70cf19e9c79015dcf35f456163cfd74b2b259bd444d75be87a3f7dda6fa4f5559da0d68cb3eb9e89e42e71c4d5cc17db3d11e987ecfebba707761d84f40192e79ebfe743f48b76ab90d284d1122a4b988cd115e1a7916975c4f2a3842ce5fcb3ac371f90996e8c981128377e4680dc8c2fec913379937bfdab28ac84576051d6c4ca87fd0c639ea17d86309fb5c64487db1b8f0f61611b703f4fe2d6e747b71f8ee13872e636aade7e140af5ced43c9260bedfb7784ef733c37c651cf9305f371e98150dece7422e740217a1cf6fe407edefe171e68b25e21dc93bf2f6432d324cd89a59339f5ba9df9e08e6348476f56fe14d3fe5b0a84547aeb5792cecf7b7e1d566f7197112c43bf3fbf45f5b2218c5ed9f2b84992ef691fb3ae9d63f715fbcdbd7451ec57b6e2fddfaf1d6977de45ebf967e1b69d80f1215394e63010273f8fb332ce5824ddd8f93bc8bb21b1a072dc3c17217f10e76fb21d10d96a7cce52c4a6cb91f40af480362b822a9c5c2890a17472d21e2f3f6c305a844a9c55f63024c417635f1f9ca131c0776352cd4e52c4d4cb93084d93a57841e56106d97b330c1e5c2ee8347b7fb49809005f68344d1596823170b4d4f573cc122d999d9d939bec376e8b676dea9d0d7a3dbf0c1d2ee13a2ba22f84dd7c89cb144121aac570ecdc748925e81104218218c0f21841c3bd82cd85273027b151c925afc465a2729963fab09b23dbabbbb3b7b628b788757117ac0b251105dae36457e56c30ae713c247fd22c0f9bd9930bf7ec61ba518e087b10ae1a33b5d7622f84dbfac1772dca37973ab046590922796c8f2a374b09f64fb5b892eae27b51653ca67ce081be347aa42bcb28b5a32b6c1bad59806fc06b680ccec67887b5aad376a44dc8393b6b4f6336b2177b7a4dc07b8e9767b777bb74b0602732013bf81afba1ff449d560fd7e9c74b7c4b04589942969578a6994d33ea3dfe4de17f76077ededdedeed291898cf6060b80ca5a56ab0f1aa106f6c77575d1174ecbac97bdc83951bc2ad406405f79080292d55839d3e2a7437135fa2eb471b4fe419e1f3ae7f3b21fb66dab6ff605284493609daf9bcc1a62814e4de2ac87e1029a8889116f6f0afad025957e3cfadec07d635930c12f66ba68c5b410b9becc9a689c7bbffbb827b10f5946af47bc0eb2df7550ec57dda89e39854e87b09e1a615b2efee13b2c21034ac7753b08f1d11cfc11e22f19b2130a7b6e0afd05df7c8b0c0c804f7f39e9a7e6e619ea7c3728f89d52230f5e8dbdd038e44d0b75d260d262c65dccf7bae24fb3192d7900401ecd299f9e6524af92e23857f850ff57d063df7baece52c36c6cab8102a29c1afa8bbc38720762112ccf12892905c08bb2e046fbab09f2b5d51ec0785847887a3132517c6162efcf141a41b85e8d71fa1e60eb9c6b09f7b904bf90173aaedef4eb9604f10897724f4c2500c865dc02f953912f972e15f4d179a01ade01bf83abc43762b0c718f49f6b89108af2c323e6998dc32ef422555418294cf2ddaa8ee6ba4a1d3a665d80504e678d54b8a5e926782ec9ed5f584fd564292932ec037f039f3e15776ddc33be06bc0051b04887b9eec80f00ef8ac01e11d2c8b5acceec749d0fd648477d8f4fd788d0bff474782e7799e11ef62c23ff34536f15f5ff9af89b8fdc3497be61c1612cd9509f00d7cda7d1de5c2ef16b88777ba8616f5d18543d77f4dd4396cdd67dbc9cd945cf841600eabab2c25d6099cc3197c8a750f7699764f0b23609776dd73750f938842c6524f8b5b42c8fffec209db6776ddd385fd583e24e1cc8219d2e7d1df9d0a446cb3f39fb86603f46f2dc57e95797437827ae3fb5fef53fc6dae3b91bef585c07b6118866118a675cc697ee38f7122c8d8b98c4c0d659622ed87b695a6e237421796c12168050e6d509ef80d447dcf26c80497a0124c423a2a9a44dcc7ef5a271d58141196e3562f58d40c36f3fea737a3b5fa3f962d485c98ec52548a49cdcdeb9b7f248273001087b8ff2e389df00d2482505cf8721b015eefa60c0deac6e35d90cd47bc3e78e0019d00e032ec6a8e9b4ffca6eba2a2ee747c86f2f87de05bfc061ed9239816b211824c2dd4f916264fca5432c2a1303f543943872a5e605850650655c4e82a4940c48eed85976e2d36b01a4f47d1954a529286a58c6e0308e15385984a7431658c31360d9532ae94a829ec679fcad28d49f204579db50661868f1747417c79f24511951f265e305181c2e40b252a424dbe68a272c4cf1740549ca0a18b10cd0eaf2df130901471857e6876802efc1dc065045ce6eeb2bf8ed87772bc83ff8aee5d17a3c71861bd95d67629e0744a29bdbeba735bf75589bd67cfdb04ea6718f75d5fdfebe54e2b9df0bd2115d549acdba63d1fd1b4cf28b7bda67547b4a7dcd6695c963ddc24703dfd1e10c3326e3e567f3ead9446f843843cb1a3918c6dbe77af3344e72019ebd29f4458d9c51dc9be889156f659e4b4cfb824196f13e88e641f39adc3b88f043d17ab1f33eeba7efef512c54d4cc1e5f256020a4e1997644358efb600a493720c0c414061c24186209898c09ed4b0e1082d64b0014689d56c8002bbc9a0c9ce18c4dcc0665c9a4c0193c5d62c3148ec9584167b11e14410572c956281b84106bf94524aad288a4901103f5c80f001a2e76d7ef8b9dfb3a8121f7c3d6fe533d0469451c5c06c5a4d6d973d61a89a691b4f446d2470b6b1b45386c2ec5561680c8de3d8d0bcc6da5fb9bed442a793fbea8cd62e513ac0618669fefa91b357ca29eb75338078751eef605d2853ccd542e66ad9a2508030c3ae0a513146ecaa30c62823c462c4ae0ae336b56e1262e731eb30797534ab18658cb25612628c31ca28a38cf2af8d4762d7bf0e29a394117617638c554a687b68ed560aab363729a584524a09a59412f27f527adf11e4b37b177ecc9259c2d4ba5ac5ca31c532c6d5770ee7ccef4e369d9c945246c931a78880343e08218ca92f6cbfc4669c2167e31e9d12b3c1fd4118218c51253f082194171a1b0c4d557ba1f8e3cb18618c70d398378bf2387e8e774008213c7d1042c8cc1072ac292d4616bc6178711ebce18fb129cc8c912a8d4e49a7b411618c9025c3086184dc6139d773579923f39c92aa40845e1f7c19b321c5f2edffece518618cf042c3f68586edfef2932b9d1ccdc603638c9086664718dd5e669c29171c717386521b3419c79e0cc095df19b8f0dbc67ac95c982a7a09238c30c280342ca5fc965d843cd8e650303159b71799eba2f5aaf4e60012b890e31b7973a5052efc9e73cea8da4ab031436756734523696ec4664f06592f5ebc4433669cf0061a1dc491e604f77eac22f700f7bc3b12b4b0fd53c239436dd8d0ccae109bb25e32b148bc3015a631efc4d88890f5c834186d4b6d27abc5e03a10fe0c704efff0173668c03ba7cbbcb3f18ec6255d3635e4b6bd8dda46a037ee60513031598c4ac342d071cf5f47e6ba68bd2a65315dcc37ddaaad847abbae00010ae483a8b612dec60c9d595db45e95ae682e5aaf4a3fc8d3f00e7b1d8bc41b5a4de5153310de11c5b27b20b01c07b6dbe078ee030f87e6b12e8699073c532a0e8070d28a86a63dc0217eacb6d6fab556afc69f1eeae9e959e2026a0a29b41b048521486e3f91158a784efb20711ceaf3d3401d14839bbafd2de4385488baa891a22c71fb9b0bf6fdbd45f6fdbdd44ced493d41b7df9138cee96a4c9e385090d0d009c4b0e23832448e73c2a2c57150478ee449fdaed482dbef5d1c67b36e86e3a4bedf9b7aa00ffc11e276cced8740100a94e23831df0f85863c00a33a8e6a0b17c79149824a700932390e1b4d21e2f643331c47bb6de3fbe19788c47166be3ffaa0a0067766e66d6c3c33d5c6cb6c3c36e207574646e6ed1857e6558ea3802b83822857c6892be343d19579d5c623a3fa988d471523e58b1bf3301b4f0c0ccca7361e98d409d4b8a9b71b4fca3e6ae3b13c2eea04552eea4f1b0f8a22699d7edb784edbd71e82eef6dad643d3dd5ee538dedda24c71b7d7369e4dfb6ce3d17805377b66bad9631b4f5631ecaf8d07b336f7ba2e1eacdc2b8b7b0535b9d715f7e2e1e75e5f9f6e3cb5003bb4a0ca1d9c40254a75e7426804e58895095ab8f071c07f136071e1db38ce8e0b9f757021738e4ed0cf9d69bbc3aadafeb63f0393097280e403a5084b0e7c78c1290773ce396374dc1875c042003a2071e3c36c3cf1060e2518430a1a2f39c0e0d6121471e76bd63ae08b0a9490f10515286c8859442dc6e71875b8f175448831c6281fb5f1c816003d81450e3adce4a0e5060e4c77fee95190861a3790c1840a96f0241925b6ec6cdd021cc0c070f8b9f1b58d27d29c6183900b6c58c30577be5519ddd0823b1f87e3ecd0a4f1e4ca8e2760dc69b4da98e0724571e31317726ab872e3d78d27da26a650de42031937dea0c1c91649345859c00d254e92dcc9dd697484cb9d464e50808382c27ef697b8f3e8ce392708773ecf399508e3ced711c171e2cf39e79c380cb8f1a7a722c170a9f6736c3cf027931cfcd46459f2a0c90b33dc78020947131b66a06942a9a689149fd51342379a509989550b114d9325aa8d5b6bad350aa1288656168a26325020cd7071a2ca4264a3890c9cc44cd123d324074c608e7e542ef8a49c388a8961898d8209c606941429294e4e50f4d82366d89cf04169f1d1b2349db6f86452106d5c9660522069317072411194c9c0d4a43ad184c9b0831828d305c392294550a5411ad113d4109b289a483881b14681342b1433d45a6bf5a16569ce16ccd03d90574633c8a0521f464073ae7ef0b12a79d94808e87ef63d35bccb4a2b39e70cea5122c35e978d7aca8851c39e2e1bf534c188d1c20b303ad8ecb2510b38d8a0851e90684188c876978d5a380288165c00c3d402193141bc703bfb94917a7a7a92d01a2ebda1455f4529a5148bdfb096bac572f11bbedfca07135bf88d77a7910b3fdc395fa5dd39e7f4dc6b86c2072b77c27861ab11305e9468c18523d514bb5d3672218b18318c5c0083062e30ed60697c544cac8da232c25a22a4d878d9e84813f77b1c8e38114384a5978d8e4cd112aa8ec346495eb8f1b2d19425ae2ecc7192c7d2e1a28d973060bdb8720637a0380af08d7d010a4e5c6b6329ea15552e4400dfc8cf76ae5481bdf4d6ee00bc4322e0ca08d4b7d11e4002d8c579eaca10444db29cdb7f2c6cf5d73b7191c737b56edcf3cd7b4034ce66ab2018777175c88d1ebba8dac2dd2f23d46b0f53ce29639458ecb21113273e7649195cd0bfb279d98849128e0374c66f0ec6106037ee8c805ef822e035604070fd9b6fe20712e6bfcad3474059e52050ffe0d4ce629c0af59f6df613cceac5f5528fd14ceec9a6e29eec2e95eb2e9bf63d74fb67cb959fe254682f9b9a959fd120dc5d44a15044b4bbf3bafef9623f079296b3ffc2b76c37bc316e3cb556fb53ec56a4c7cacfaecfa2e590545700fd17be2544fd150ef72477099265996b57e7b9278958ca477d37917b9ebc1e3b7dfd8fb5709713a742942f82e3f065d7b24bbe6391b27ffc4a2076ef1372b11616fbd3a3be812e8cabfd84fb6162e3432227924fdc8339ed846fe4e77065942b7fa05dffa494587725976122ab400c731455bdd92516c6f8f04b202b8eafd2c69312568c06ebafcd39273d9db68c3bb29d7edbb6ed2b77eabeaa6975a3947ea5b54e3ae514aae1788c7eca89c5717a4a2546690d369e6aadf5b216f57c0485fa0ce3eca35028d4639cedb8d309439db8ebba1ebbeaf7f00cc3ea559b7629b082c0de860704d4674fb90cc7a57fe9e75dfa0951ddecafebca1e9501e97e60dc096758ffbe59474267430dfb315233a1b423d2b7d6cc67228e933db760ebe32f375e9491928f110cc618e21e8bd3c9fe6381d0e95c2240ddcbc3fea3ffee793bb0148e20deab63de9155aa9375bcfd75d10bc3fe47f771d2a943d23a1dc721f2198ad3e158496c6cb140d08159a41f217d1b8f0426d23fdc8343dcdbbeba577bacf65fcdb22c3372423664c33ee3aed7b8665e57c733ff04c7915342a919d9cfdeede74a90ab106f9494c68e6347c7228b9f75843fa574e62473b263ce7c8bf6a41b89a0443a729c2d9204aad519ecd747d905040404248180604e1f010101f5d1111116a28cc53bde5d040434bf8bae8f50ca2bfed7445c696f3cdd2cde113f258385fff511f6df51548a74d3bc4e48bdf2511fd10c0ccbdd3eeaa3e6066a28eec5672019d81afd5e1c33b9ad746517bf8fb4b0df4047740bc23ba6587f261bc411443a327694b2a394524a29a57c29a59452cee9ec45e95f64bc115921c905889b6ecc2e2dfb6be381dd57605853eecfb2aceb0b59ddacd6ec31ae03287042b620eec54f31b1fdd7fba66d3cee5857e39f028dded59de05efc6de3e98e99eca7f3c371f80776e9c48f514707d3322deac09bf89c8e0eec6743f01c2447506bacb1c61a2ded5ff896f6355758ac9ba27dd80b59dde6c1debb3b16bc89fcc16b20d48a62b29f55ea40ecc266dfaf1382e3b8dfd8317e8a899d9d94c13cc35aa8658dca62a37bd8630f7f5561d718638c72ce39a79432be8d7b518b237cec85a8f8d9c89612faf7fbb719990f19a3fbb7e2bac6ee2b32f69c689ba4e637f239b524fa4797b2ca60e3db484712dbe58cb43b8fdd0eac7ffc7e973c99b27771e3b718377a416375db83f08ed8f00556962e1b116106ebb2911148376b083b6677afee5598b300be891f6b1437b2153746f8450d729f0d6d4a630832b0f0fdbba803bb0fdc8b5e13ebb1125c229b5a6a061cef83ef0cef989f7262bfd5ca713ecdbee37c33368e33e7cfbcedabc446f7e6fceacfbcaeebca1e43a14e1b77e474fa8c72a83f9d4ea7a71caa3b715cb5a7276edb1efb2d7b0ccb2e9eababd46bb858e8cf7107196f29b0d1bd1a23238a2e012e1b1941c3cd50d1713efee81e13f10bbb147a2b617629c87708c44e76bcf920d257e311e08b8089f8f5eef3f7678ecccccc91999939323347668ef2852c729d0fe7d7ba7acfce8f9076b1c2950edfc8aec217b41c196305f911ba8c7ec335ddbe7d8d94f0b9124862e9f2e5eb30a7fa8d371a46443015412d356992b17974b7b101e64f5587e21df3bf89ba5fd478c7fc9390657f3424bc5fb430d87933c8ba0d831a8a5a5fbdb099777408a81b7d78c7b3e01d4a38c75fd037fdee25680639b8174e6e27f18e7e298f6411cd13fbb55011cce980dff48f3164067fe9a2cf953ee5cbb824adc8305949d4c921f7e4afbed84f165df99f1cbaf26511cc897cd3af1da99092ae548a474c1981c09b48997e0f9f4795521d78c3451772bca3bbe353ca3d1cc65a3dd6a7736ba5f0a63983937eed6017b98b16defcb8f121b7c5f277fe758aac569ab5f63ddc26c89d1f39a6dd2725e4884869ab8415728410dab84656299c1c7d9ffd6c1d4237223df6641c82e52c5f8c71e3d316fb4b2965e58f3feec79af4fb7185b05a46220bedbd032925a5934e1a6784f25d66514228434a465c0c24ec310cc3eacfaf40fdd991408813e8cf2741adc0fcfab52301ed181a81d0c750bad16808e9c66f23228a227fd1933cc39bcb6e107008f4c7289fbe91568d773513984fff84f9f48469a4d5dd2784c51d8bc1b11a0d155d362a02c9555d361a02e242bf92da4ba3bdb821db0f2449ea276178433bfb19a9392252f7320000002db20cc6c88ad9f6d9c7b8fdf5d9957df3b0198b756b8eb01feb92d36e6cdf76dfeac667c578bd1056093c45091b4f71b35aad5dadfeb99a115a4a4cdaef6beba3fe04faa7faa82e09bd66a671425859ede05be8d0bbb0dd4894948b8c7958f913f6e5db9aa6699af629fcc7badaa986ad84694277e5ffb89475b5cf26573382fcf9f333de1141af3182112e7c6b50df17d5d5d44ce0fad39f80fdf614e0169224f02609f65bc7f046d3b8f8997cb742585742083796b3e046a6944ae6912e399ca1c4932f92d42a74b0c2058732b4c8e18598744efa4384113f7011031c7868e25b1c6df1e1ceee936a1ce9f1e1061870508111ada8c51063f4102d1862cbfdeccb2a473918616506d2aeacca5ada84524a8f72e0e28c3a04d1368413b40c2ea855d95c361ae2c9b5978d8640723ffb9287cced651d075e597fd5b02e46564935bc44f664654f7ec722111a9165313273bc5234af2346e8b2c61861c32f2cd6cad20fdec63d4886954929a55448092a03ad424589f9f35af2440d965c0a4597a14be79cdffd6cb274e913611cb974cabfa64823abb286ecc26239aba79c53063dbc875f5c4d3f6d2eee452935dd75907b31a991dc5b6db14af407cf62fdc7342d806c4080a078e85898253e3136feb98fb1d3719d8c46fb7f2936be73135be1c872681af0ce9fb807bb44ae887b547b98e34fa47c1e2ce21e845f6bd290193a434b1ee43e3067f582859f25b11f7fe99eeff9e9b85cd8f5161a0f56bed71c3aaeebda74e8c85104c8cd01747474b43471fb332ddb6ed0e33fdb864ae9348f168369c03b688786fd380988e3d05003ef3c691e37e0c03b40cda3043af00e94e6b1030fbc13d43c7a3801ef48691e2898c23b42cd03882078874af3a8c23b43a45c474a47d41173e0a8b941b39ab121a38a814959d469d332ecaa74ca9e9e9e1e8eb3f9e09fe39c05b0ce7d992cb80b31bcacace02688c8e15180d4d9e9acaef4240dfd231dc1225fbd607b08e600e11cbdf1e478abc542564fefba8e6f4e08ebeae06afc6b5bf12735dec978b14da4a3eb21958e282323b3c5a8a3e606cd6ac6868c2a06266551a74dcbb0abd22973dc1c60014092926866b611b03b579a16c5fe73cf711e046fe03f4d0e56ebe1ff3d68454343e3018e9a1b34ab191b32aa189894459d362dc3ae4ae7c72e874d8643deaf9778478ac139ee4b4b335f36cf22c77ffe820bdd0a8fe2f326aeac88b03f5cf81e853d875b391d9a1d1cbe07c11cffd97258a20912a19ed6b7c73b39ddc3e9f00ed77ab039fed3e9168e9a1b34ab191b32aa189894459d362dc3ae4a79c0e181071ee0a8b941b39ab121a38a814959d469d332ecaa744a9de7b8a545b1dcff7f3d741dfa138eabdf9dffc878b1b16b9fee716fb5c50e156184152452409484125854c0449151162d4f407124c5145ba8a842c7ff6bcf758bfb5ee27a8c251c2c71d2508e1f6a1e451881440a7887a87924a104ef60691e2a608277526f948577b4348f27a0e09da3e621c514bcb3a57950c13bf3e177154b1147cd0d9ad58c0d19550c4ccaa24e9b966157a553f6f4f4e40880c6711ab88068b17535850e11efe0f09fa1ffa1aee606cd6ac6868c2a06266551a74dcbb0abd2296d74c4000420005b8c3a6a6ed0ac666cc8a86260521675dab40cbb2a9d32078ed79cb35a2cbd1f275d2da8e1d76a6dd18fcd7f78b03dcdc303178e207901069f1896309181776266e01d98e691a281776c0dbc83ea1b78677b0da8796425e01d4c07deb99a47efd03cf0cecca143878e1c1e2c2d2d450ef3c037c084498c46aa30d190650a1a3fb06086561ce346279a0ca9563860e0e4ae2e1b31c1840b56b52babb2d649105ea85638665005152996951550562222892023c42043890f0da8f4f0437d86a18c2b3762d7f5a96e9421c638832782507a82ca93a22a6e5c55c184511533a8c20b28982cb185872a47a88881c38811344892821fb044f1828b2f51a18229074f20f19121c99530dc83607dc1c5102e30430724a234c08861071a3b8061822f5a5ef0d272195c7f6fc9f5ff80c5840b41a0b0c5184c44d1a50a284fba78914c1338d4e0020612445cd6e8c1bf90293262a2856aa402342a64f2a5253025db2faf0cbb6abd2eecba627c127f66134b4e8578dd8be5aff3aa955e1a1178eb5f49f77226eee332602ea7c824b1ad73b1f7e7897345c8ba18111112569020fae2fc9383d984c417240c31a38991becc262560f024d0804fe013252e6c1c01f089114aaaf874a96974e9a22444154397256cec80c912f7f9c1c10f183854560b6ff9f7d002b7c824ac0d3490ae803055ab3963b5f1a7773768a226924748150651c766850309a222667a9086d060d05ea8ff5dd77575acd5ee63d23ecd44caafde1abda8d755bb7ee65a5916f1af71e58cf962beb4da7d1986611933863163fcf4625aafaf1fb9eb2b17db00f1f9e2627c1ae35569dff9c586d20a5f3a220658669278f1250deb65f103b89ac9d6b0337086774ca8ee758c485bb8d04c6e77f709d16e6dea8fcda488a3c5a1ea62dfc6d358ac721cf98e13af709d3962bfff9fb21483a68da7322d796bfc38bab0dfeafe4744be8e0d0e2965e4342b167e77956de4c07e9ee74a3f64465e285d22504736fb633ee3152c1b254174633ef5993b4386f0a47d0f2fbaa72e4b71316f030cf83dced81ef59f10d54d3d7f1098d3ad09d399d08ffa98ee4bf19c529c0fbf5a7c1b32b01f17095d7b633e630e245d18a01e8ee39e84cfd57efb248e2ead8708bce5cecf2eeeafc6f5ada9d3cf8de7546d0ac39e39a707bc998f618fbd76f9d07e3b7d0c77eabebe314fb98f9680ba31196653dd27e4a6543e44d06bdc98ff1e8e6d1280d94e299c3a21aa4bbfa24ce8a77d293782f6db574e88ea76b5abf7206b6e9f719f099a5687b0f353f04ffde70ff3f0e7ff5f18ae04ff540cd7b7d6d3096e3c2714f717f5a79f7c33d4f3e6833b3d9fb81a843d3dac9afbfb6682fff6319b8f5a63c2f6a94ffdf6598ab3a8984f715f4c3702f38ed333ef407dea7b4014973d0c673f75e2b8c604d46baf3dea74eaa8d655ae721f3fe59e99322232b681cf90eb2f9e8012d4824055ae00b522d716de7825e207a6562b8192444fabb79c51b4d4ca66165c24b1a9474b3d4d2d165048181292a3a4160b33449063e5c00aa056a6699043400f3e558e5ad9a6412e0142446a04b55aca142a985a1ae472beccb0d4caac06b95ef2a4064cad2ca541aeade4d082a05606a3418e95860f4dad2c46831c0b8d283fad4ca5418eadc8a208a656922350865a3634c8b515645c416a65331ae48a3015254841538b854b8aa316bb0268a878410b3dad4e1274e5876807411775d948075f5cde784078da7dbd35d1951ea20bc6bac2bd6a56eb5f17765d355e2d379ee838d763d885750de53bc8bd172c5fe952da48d6d10b931476e2b21191d0100ed6bf87c7b87d7d583f06e661dd20acf27d2e1b15f1c465b86c7444d32502eaeb52c57047542a954aa552b104606262be87cb8fe9e4d73655bb0bc78abf0ab1b913837f71f0baf8baaeebe2b2df36142ec3c0ed9913b25a4a71cfa1581bd78f319971bbe9f617356cdfadda60fdddbb1e82f10c89d831c69825ab36d8eeeef87e5df427e42ec85d1d097a2420e7f49f0e617b4be95864f586fac432e64890749f902fee31921258ffafbf5cf61e24b25790f1a6c496848dd23e275d9c63f11b79840365bd718ec58b38d7d2d71fe8abd94a7e763afd69e3897fda784e94d2cfe2c643af8d2746c752df8164e5acfbec7dcc8146f05b3b27e21df2534aac136ddbfb2625a5b4a67e0afdd9d73e7dc764a748c55a14d175e401a43da8248db8743909119500000001057315000020100a06c442b1602c8d7361f70114000e7a8e4a6e62988aa34992c3280a42c610630c208000038400d0d4d438013dac71d167bb1447fa8de68bc46dea53a2c07f6b10bb59eeaa24e10a0dc732eb24b462cdedd45e52426fdd198ddab7c0bd6ce1c3883f3edd16232f388dc6389fd2e47917f5a758ffcdd7eebf1055cf431e176895242d9d33feaf6c71bec6fe426d75b1fb59b2b5095534e58298d200603d3008040622d29577d3452e119fec952fdefee8e24b6de1bf3943fdfd3d663f464b9d42b6a8d9502e02bd3bf8b1e171c4e742cd1f4ff013937f9deb9cff5d4f795d2e1b1650f9547972039a46d39ae5c7584990dfceab0255a1bc10a58ab98bf8d3913218abf013d33c232c07452f1efccfeccfaf6605b784569b1b7f44a1cc00120425f911136a2794ba6c8b50b385bf65189caacfe24338994a2879e6ba469a75f55a842d36de36980e411aae577aea68f16876bd9f4b586a7e312a88590623eb344995286c86d83ba56ee84485f2a52b42d3ae080f079a39a32723aeb640bbfacb334c6b0aaf182fca1e7a8fb42eee559d802d260914db7cc2fe3099a004ca4ab05989c6005fbbe44d253986e7b633ca0bfac81adc3ab1434fbd6d365e0bb0f7a358f7e94bc5fa52641d4353ccccbce2e8a3aad4c13b8651f0104af808a4bf4529f513058e275c885e306ec092ee6a84b7b7c124a562a0fe5f4390ef8cb7cb93ed01297e349f49a36daddf2f286d571d9e480621f3451492246e900eea0800563e990b0813f6cb250ecd0503d6822333cda0956295300916d9d4044dfeeb87eef114ccbb51bd57aa93217f8e27344efc9f6bb307ede315d3f2933aeffe107a6f77c857c04a47e67deec3354ecdaf07c38f1eae2113a2fcc5e99d5435e8c62a0320be64435308772cae332c7f5d28cb17930518c16cd7b877349719b257d600a4323f884a0c518cd7980218ab12ae369c3928b975e272d5fbf05b81e999d82ae9c9a9b297ce091aed3290ddf521a87a4aab92bf7dd9c0654aeb480fca8288f3f31a8468368ae59205aa32b9aab50ca0d0cc3f2e8a1e0c0a839c352c2d477a1fdd1a79a47ea80fb3ae1f5c9b4813ccf911dd578b2b1b4c64a00df73469a5b2f496cab6ce937878b7c3da436821d18df8a4be3c10a0f8053485ce24eec8a02e9e2ad19e78e968b4010ee64930da4626c38d868d7052abaddc56209c602cc9bbd46b7e8806a7f212f57af9f98f07c7547bfc51ee48417c73ddd5471b0634fe057ebf239ebdaf7eb2433baac6502e54c937feb729ba0384da2d3dbeee2d7e8e662f2ea6ecf75e0e8d1c8c0daf44eaa1fa9fe87fc1aed6c84778ae736e6bd7e2c02e0b1dd872604e3fb23d3bf0c18b2f6937598d906e06ed6765472b971332e6d53d8e8d5aeba0411c8c878df4fcb0658e8ab0952f47056422f4025d8e02970a3eb4c3d64cdb4debccf5c3a9ddd261ebd6ea4f33f157e2ffd62272445c126353509c745286e18dba131b2e9d3217667001ceb202d2317691d2cd340766866fe39358d8cb1c2c170ce5fc053c3a40baaf20287b0679370916fee9aa0800bb0a38030b69e61f0c39eae341bd896c1c8550c0e6d7cd7de2b5977a3f375706adcdeefe8160512e5009cf6e35f823ed84e2b7f06d18e0f06ad62c4d2107972ef08de3cd900d93c9b46b1590c9a21394e1676393ec9ad0ceebb5b102d3f32c554add4aea63a08033e90ec5218380b3aa12afb0b6d706ebace33d6d6f2df2f7139ce179271e11d2e2e9d918ef7a8d0c63e6ea0a4f37c6fb109a0fb62bb7bc4ac5b2e102696cb158694a802db9483f5532f703d377bb83d77bcb13d4b6e97a7ce85e24eb1905c4aac0857eca439fa1f90d51e4bf867916b868028a7fb93cdf04fe679109a7461038e7c4c53196e52e037acc01d7bc74705861b46512fd2a6a8d6be478b5e32536ecb9ab2b3c9fb8f74b683cf88e73703622035d8e04720b8138559107907b4a9784b3dfd3479268fb0f5d37e5522f9d317ac4817d0d3454cca3bc6d3765bb8f8ce0a288608fba293ba20ce97dd4c31b7802d886a5fb0cf47a87be4a76c8d47722e234e230bb3609e819957dbbe288b98f7a06db735773fb3a9cc29e8a8d85d2a71da4031d6f84d0a5ddf1a7049c79f426f82422ac2eca0b6cceabcadf85dcf0ef41bdc0a37f94c2de4facded965b026b5182fc9e0a63320aceb5d5e58ad39360d41b703fde3ccbe563192e605e3cd0b1a81094c5cd87bc390a025102d1451c916c9fb32ab220512bb65588b7ad00d7f7829d22043ddcb9b6e2b100e5feb5aee6fc2386e64c36bac781c149b6fbce3389c0df99b2b3ed878f73368b8018b9741058b62a546fef1b74de11e20ca6ee9f04a6ff7120a7f39116dbf7a720d8da5f1bc351295321d5ce4f4e1fd19f637a9c20d6269c70df1a0fcc5d84052b40a70e77ec830403cffd95ea429dccfc891a485a14b47a93548dbb466d263c7cf3ed56f2171a69ccbc87e7084fa58fe79d5923fdc888bc6a35934f1c5f3f07848d8e249e5683c6473d2c412c9059a2a533cad866b35f80627a2e859680211361058d046e3915eae086e8ede0a64adf6e71374ec95a6200e847b54fd7b947c32fa33c4c5905d745ddad9ec2db14b718f7ff8f27a9294acfb5b27aac7eb08930a4e21786dc75a2ea566e3e1e41ad3746487588ecb1f156f2bdecf77e67cbe240c658dd3a9f8bcbaa5d186407f543c29b9103b158de0966a332f8bf25ff352fdae9c17282141413575d428151ea55bd3804c730529410a4d1e3cea273e1e85d276468e527e0323ec2b5a68856ce551d4c96e4957a095d3d82f4421aa2c79a8db997e24ea4af099c9d083a6e8f897ab81d3e2ad858db9ff3b09ab6c5d71544caf19dcfca76ce43d3562ca2d3def4c963b8d9f975a69bc685c6118cd558657d983a7d26b7ab195c6a389bb9895221903511ab0dcc87f8d384a13e9f9a370b829a385cd0a45cfc7ed4c8897515e29aae7fd6f13fafe9e20da4cfffdff5f74d9e6347ce831ac20e8a67580cd8f7faa0e991e24abbb0ad301264513f0098ea9ec848dd4d806f71d32c56bc54c004f161aa268ba25ba536b196932eb36c9e974424405aca26642191e90a3312e85075b19d31450c28fc47679f0628817e71a6a20154c224d7d07577fe0bcc493141966b2d43aec93ac8effe18fe3a4db238ed8208c39c512d87621125f112388fd6c6c0c5f31a63bc24ea5e8e8588a381ba183772e6f4c8ef8983ececedb31a60481b25bf45de50c77a071506dff7db52ff1b0638994f139ca4403569900c9473664f1229ba831ac54bbbe4294ebae8621581d3255252586b8958f643559dfdcec75ec69fb7ec21bef9d72ea455b7f8df0ee7d8910a8f085c36b38923fe4927eb06d349ea4ec4ae0b1c10bda8463924cca4006ce9551da970ed2c2a188727605b2c8dc9e31c3e768b881df6773c0f7b7f31cee9b6c97dc5e6d332a0350cfc2b82f8b1a8467ff5519e86378852d108c084251c8522f20a1f955f26f775ba0ffde5cbf6cf72938a34473e4594d1f0cd0eaef19a71319474ec32dd7b9e1f7731c42edfc6d7c3d22c5deb39dfe7415dabceab22624ec5c4c6c53ffd9a9c88ae8ea69775e2929e462bdc6d4c675e2f3adba526ee5a213399898283b1b61ed6ddbc4404e970d847c6800d96091064841134320ac62b36ee4ed83ff9f0b0ada97d54cff4c96b462572fb7e011a5fc920d2766be7b784963f6ba25ec6a5c1a3ff02465cc0187fb32ada2df4d7b9349b78231b2e6002755f77f13bab2c9158c1101a8bab2a57feb38f123b1b26391b85ebc0673e3fe62b491571066dfd25adc84b8bb40e21d1fb7e5bac149415a8e853bed2b08a049f515105bdba9f31158bca5865df20e78e0f1225a232510c8e45b859b109cadae9d42a20c2fc818c8972b2cb0070d68d3bfeb3c4041297784d83d8915ae716cf818831186605f1bc874e66099d422d6e17a67388bd071140c5cc4d08c161521a4689939013ffa88676a31de519108b385c380fa96972f95d55f0676ec108a47470d8e4cbabfff1f2e28066ecdc005a1af3e3b5c6c4570f34a5582ffd24650043794cde65921a0e7366804e3f16da7ad8c65d0f82e9d14ba22470f2e2ebbc399d6ae7c483f73db029ec5e1e9a1b8ad602aaeca8655b574f820227f3de81b6d66241af230196bd5f6c9bcaf22b9c162e8c191be624e4b62a8f88f10768889ea5eb8475d57e9c62de688d19a8286f35d9480dbb25bd9f5af79cbeca43c66ca8dedb715e9b1d224bba88e2eacfabba83a997f2dfa7135b69efdbdd409d560cf58190a285b5815a8a1171d574bab297ee7a70b4c9d02aea5527be6b29dd85a10a987d4b4176bcdcc34c5be7e8047e22073d8d9960437ab7dc93aed10146949052ea129f6e7d9cb92736ad2de11006c351b02124857ed4994774f447da287ce2eb56fe58c0c1b37196e7841f75c03f577acb49118e0b8d0e75677ad789d82d5f7d07b7cdc79dd522221caf14e6969723d6a875c8ce5d40c2989c7af520daf71ef50923d6b356f10af6e0c99254b041192f2a80fac613b9c0f7b318e192eb906dd0002e38ef57dd2eec8d69ff7febb34cc9796b4210853e0e62f9816ac34658fd145f5afd5903f70a19554b5c852c2b2d20d8c26c26c0daa3f95e0477fdfc41aa42bc2221bff03371067cedc4ab7f2dc8d44175d346e577a30fd6284a95e907e3e0f90fe9bbd078d68e3c0d21163463c3833d64d194c420ce3e66c57dc890193d8ca882ded424190ce80b603e99f806f1a8739c5965b6aa0b2c910269e083c7512367ad899e4413de5508027caa36dd1494a99263c76e6e2ed59b5825815ebbddbd4606155717e2ff988c1554ad1e6c67a39b8f83f6290e47cb4f5a0285c5f01c17a32b992539fcc010bd4775c13c766f016ed858d7865a994cdcf989d8588d062d2afce69faf3384bf185f93fe79b092dae30d7e376a51fd68d9c6f96052f5236fad6dab30fc16fac13e7496d3c4d4c81509b85dad71b4d8cc3968d892a217b985ceb4ae59729d9e46ea01487416a071b1275c0a61e268f86ad785ad2c8232328618e84ddd73466c62c46581a4e0b15a056a1436ec341200e90068470ede3e17b8f03e916e6aa21bf217ca25088089c34bd6ca629a1b0fd91b0544451503625d492e4bd3272b72806f26702ee0131e6df24a02a11926e4f00bbf003401b0589c6a321cc7fa443a4f403c8786c29d2be34d5e50740af3383f4bff516ecbb47ee4d2854793f4b17261075dc344687ab1cea90cdf2162f990e754763b2e9c265d346c001849ec094f0985c93c1fbf78193284c195e337e9545a1f2a047920558bd3e4d60a82f184fea986f68bdfa7a4197486fa3e8317438a4f1a3beb7cec518a207eab0a5859edbe2619cc9d081d0ecf022887798d5d2f3a36456d32df4ee553acf4bac8c8e046a0532198be4b3cc6b102449441c4f1a4f485e29320859f28a56277442ecb9789d2e300e61f54bf090a4175a699e83791d4c60071d38de151f9e2be862a3e04294c498afc5b8f61dd06b3628dd529649332ab61b4419da21fc3e993085052df090f4078605a0aa8a4510bf548d84582bff6a515857c618e3812a843e085d2c29514c002fd562c97fed81ddab9e12bb5a2c754d20d89afe82fcb30c88ef060b8525e41675fb187a7df93d21abab057ee5aa718ba4acbf9743f6294ae0942f13ea2807f57a959a0bb3296a9eec5688153636d373c469f9d4890bafeed78a0ac54112e1d7cc8c8c2ba57a3c585020c1607c3a46a055b443768b4698b0de1d15e8d3e224ebdda23c4a2ca2611f5487ab5975b5f4576dc4b99bea13379b961b42771d3549b1c1ddfb303c01f3c2e2b33c01bfc19508bae625c476686c415f84f161260ac0fd1f83a17a9a2ab6c356f42c597735500b1db0f2a86125b04ee662795e828e696a19ec713abfa0c1f911d1fa6b5c07564cdb2be8d35ebc1c5879d1f3b26fb3e5c7a3cce30acff6928a2b76915be9c5ad036a1170fba37553a5665ccc61ba5ebd21cc40cf2f89098127ccaa7643cd3b104360c0059b1d62670868310bfd24e2be86b9c3c3142d96c40e1e2a34f3660ad630d9380193ad339ccb15675cda4a7a2a3e385e19c72792ed18c2db052db6430b241bbf03e1b7c695a21fce310ba8f5402e6e5c10c9c673db49ef59c500b5c4167b974da6061279c8386e3b56a181d55402afff962b7b2bf2d81c3f1a80458baa3b52e70f5832346d3bc7b678e266e4b895168ab44e57f1b4dce21ab8fa543b8fc58db2ecac56fc62e2f85680a8e50d79acd7222ec958085e2fdf727f9287d0f7b88a93d938e172989824ac1a8de613423dc0847ee59e4471d42cb5e46db9f2d45185faa9cdfcf912db232cbc41ff1bb8b73f387e022db7941db18db449a5e862a2fbb9f53849d2c346919780f9b48d92edcf98fd428d30a6a7a254253902275be9b07f822706ca626131b268226a383021fc0565c2596d0a97f5349d750769632778ce33c03214ff4b085ac07444c61273cc6104644ba502aa4697103f8ef40d2d4f0b6d3e775848b423cd908aecfeb34e3e8ac7bddbe88fdfac17a14b9193304567a66de954f531ae118462938ee70360ca620de2ec4b4a6c5aa056d089d6951e603b8f4bec5307093b0ac9c4703e5197f1ff6c9cf05d0fbbf2ec296b7052e47168e60ba708219dd40b289e1902274b3ba319a7da5ea409641e6f944b890bd17e35ce0b60861c9128e9c720779c030b69c4f6f4b5654139c700e75db4b68c77d15b4d2f6f2c6c441cff48ebd4d38d56546cc4b3048b31bb859d0098fc008bf1a8053a9c2cee0af46fbf6cddb2d582c84099df7e00ae70e42f6c0620c2e89822b7c439d5c5881da516bb68348eb48e84cce82bf36349409f32e1ba2daf27a87c6d0eb5789158aca2cba00623e079a2eacc5842cfba67fa295c57b50442014bc23a926ed69f36ace861bb59d7b24cd0312edc68600abbab23c1fca94d5109185796044a1247dee4cd21f321c174bff5c2e765869d7b4f38cf9100970f222969882acea0f68ebece05e225925268359b5cac29e831eb3eaafa4d847a7521c451143a0ad9f8598c51c517dc04bb196564630794b7bcd4d64fb63bbc3ca6804b06887a00602262d59f5f491b452483be6596b138dbbc1d7093c35ac6c57383230632bf9f69fdcbd35498ce6231f65386b786503b55841fb5a1c5b78b462afeafd660e82b162be254ad06ea3d8c118814df6ace07d84256434750af18a7528bbf1a04cb43447109f3f4e34e66b330075264eef0ecf09e1b995b43cdd63117a32158fe1b9886741af38da5ab97083283d7197880d0d42aeee802c6ac8a8e8e386ca8d785d5913a73bef7a498b15fec41c903c87eb994f4713e748bd056bc9c2ceb9f3cb28195c716c975b0753ad3d60412d8bc83cd141c483585d7ff570a4c15a87829d8e61290e014748167267953ccfd6be41cb6b4798335b3ab05cc0cc994019c4d7af05a596d0ecb32c9a09d0989c6a11a0fafbdce4e621280812916b18916fc6916edb961af234c01c2790d4e9c526ee3f63a79aa7189ac78c4347f486982bb0d2dcd752ae79b10816ff54019c403657859d465f4a39bef0817baa29746ff1c928fe05d6f8989e4361603fa423f448ba114c083c1adb4f6cc376b79ff763ea9ad682fbc4644b8f19ada62519b9af02ff2162e160af1146882f15ab51876903c86ae124d497c0c5e83dc9c08c6d64bd7f208f8c138be2bda883fe0095d88b6e349633eada97cc063d1b9fa8c0e21b6fd45510cf9af074417cf36e2d03234178671c09ca8e79797c1879244da601d240952c1b8bc8e1f8a1ef4f5e6c1d619d2ad4366922b63c002b2221625a131114db46908224c9f56083e15f3053f35b550c702867827fb648a809a10f427034ef2a1a4aa7d735ecc74b26f87e67db979ce23561adb1a404923409533a5afd04db4f88acbc0d900c109a8c34d525b097a68ae4eb251cdd110e694ad7be8d81c7b88b86687a76d9eb6270fd4f7ec8daaca4a7075b853cf19bac8ee175e72335d238388b530b9342932538a5247702eb803cc3922bf294acd4910099dce4a7ca2014b72c5c359f39f25689d38fbc9ef97ac29c9f09b280b109d03795241b23af2bcca7befeaa9e4ffb34ba9ce2e39700561a38497428ed56141da0ee8f652ab369222f00263d1974cae531a0ba3b58ec21d644285e077e8d069ef938f02a1818a505738555858cc1b80768c0ddc44e8938f2238315ea17f5ef9f5cff6fe0b669163f5785b49882fc683cac232d0e114f3a7ad48d204b1782561e7c30f04c4db578c02c6a117951072552ca2df375a0243e5bec4ba066a2e2f0ec91ab5ea21207e0db5e4ecdbda0ec197a31c81712e7f94c9b38db6225208dc48d826d953f8d306a9fcc7d2ad2d817cdb78dca7ee8bfea39446905c920ef0347d2d2177b925339994fc9efc47340342f146bd75e1c3a1edab4bc10842c8483821054f42d6d55580d91ececa8437409a2d1a979608127c23a424a0e17384671b4a69d8f1a8f627dba822ebde46b3368f5d6aa02ac6333d488f5b18e6d51e2ae5cc603db9931e951a7bc97f87828e76864223b09fa40a7a5b2a1c0083adc09b2251f10f5ade95cf07192824a1bf9705c79ce74951c548cf6e1c08adae8c31bb16fa7f8a99e9f4d7b3439db31666d73f72db1032697bcfef0ea53f5fe029a3969b963849d3a61e34bb2b10749a9f368470c251b307a9414170aba63020fcac7276ba0336d4b2e888662a7ade071c4ab8bfec8910fb9d26dea4a507be590ed01edb758232f48386c6d27f2f18a871ef0b99210170aae3e24d8c94ab0009568872f5a8ef298399442aac29a060c53362ec74e4029b1b37adcfd486e0805c1a5e23c060a11095e039028630afddcf142ca335071eabe37334e78d55c13faee20f9103a75381c6d9f65531064a53324e62d4f56e88c3fed983f956a8c97060775487ae037c8c218e19db12420ff0c924eed819eda460443567c100f79752f8c87da23b15b3f6c7618e604bb3918e803a4f0c13de93f4d5f0804f542dac56d50f78440dee29f269d18e7026424f5d122fe0b744c6b8ec63ec4f557d024593d4e2792123640d5ffe53a6a3863982aaa1653587fc58f9feaef75f0f75b2f6bb06002def4504a98fb18dba3f46ea59959775dedd212297c46181be891c31bdb5287ec251f4c392720d7252c55a5aba5a19dda5328be203366727020b6a3bb91a30d645b6536452065c1d6cacf70303face8ab742c14bc98e945beca2d9a85da0ba24aab815067b7aaee6bde1330c68385ef966d7d82c2addfacbe8f68f7dbc3929d7951061ca23478ab7fc9f7965fabc1f2807e8215b6c16d58c34022cf10b2b301babd74463c0328177c488dc78af4ec8dad37aa794e592dae036c161a087231ffab8174e6e060b233acba8a7cd9170dcb777d53c37733658e2699cfe1505e306bf652790aea8da65c243094f0bca51a9b25c2c60a7716b404e8a4ec11764331e677d57474db30ecb30dd2740f121c4b25fca5d73d4e336833d15ac57c23cdc1ff56d9207b73fd2c96bd144c8ae88b4d85256b33d6facd27c1dd53528056860cc7626ea418f176da04fb7b1181962dd39085b3bdf47157e7863329e09e331e7baee75b98fca3ca065e5b16c6f04c003497a4682ad5f2934c4a6abf418be5b7c0ba9a9d15b406c006ce8b3e0073a1260b82ab907dc715e605c295a3e42172b13667f582c274a05198292e284c6a8e8952fbe41beac1521b51c0556d40421155f724a66f2bd1c3dfabbb2fb3beeb318117bff8ca40b1a3f61df3130931f73e5056fb40b4143c86c63373944ece720eb70379b8e1548bdacf3f2442a63ce292062a9018215d24d764e42f6bd0b8d8aae73f93ac362cf57ebc897685c8ee6e21e6e3748ef4f3577d170a96a6ee98befa10e7a956863404e6d12141c9678b4cb1211a831245e359cdc82d5b985f2c142fbc058f84836f3c374825c5a038d3503f872716748b70d7d329da1dcb813f3303dac73fb406cd45a92ac0602bbb5d65b07693ae175d5bb08966407d3c2453dae1252e38f6fd882e60065c890ed0164d7529e85c7d338ceea0a72d69ec07dbb5e8c747457f1b878e9451f7d6636f53adf584d7635b7a8f7d073161dec51f4c426274e2e0d63b4040d6e8084d591ec9284d8af73fa294c02d97a6173cf202f1734fa055a9f9e57964dda471a4b3d10f431c19454d4a57c60a7c5db10e947b92d4ac4cad6ad2d00686e0edde90ae88c1458facb2960c93ee6ca6360d6359885746ea2f6de69c0785ce41ec4c9f61880a910db5f74e339403873c376b61d135bf1fad37aa9bf329e363e9f13bb18d0e6f2211bf290bfaa6ba892f9ea08fd4b00afc19e1392b42d3439867191659131a71809e64c3fa4036a0214b10ba05037895c41336d7e26fb76189a34aeb4f6bea03407af776958467ef04453e693fe89448e53e4ecf81e843809e419ac428a7c02d4258c2ccfd7ce684011649adb088b19db320c3649b49e0c4b44a7a259eba43073aac5217512c36f2001d5ae525c2aac8511eb4f92c559bc21897537eb8b5e84c582907067b3058b3a05d2cc903e332797773eac58ab3c89317b1fcd2f2b179670f2b3f49c4ce1b6c3c2538eb56289227ba509ef04d17c96815678aab61c1d79333543861b4a57499b84cfe88a42f1963df924f0e5136089b950c1eb950dfeaf227c3c74f0b5ac341a8548969f73fad12ec0556b53dcabf987b3867fb67c8efe8f48f8cdd4c49fb2409426b38526228fb151be2a5017a5876367bd64c9ddeca3b2125fda892d5cada42ab108b9b0cb69a9ff388ca56c497385ff8fdde94c25db353bd6127e8cd54f32baa8bf43858fc5ccccb846a93580c40e3194c267ba6125744125f41581c87cd58abb3b99afaeb9da908f3cc74b34639c57f07496d82b08c336f4aaf397c77a8436efed1b396c529bf84a5809ec8af4c2df653d280f483169756699d29d47143280c531ab7a14511f6ceee7234f8c05b86a0404f8d98f906023672953cc0df4764102b66a3b730f68c184944a8ccc802883d8d92c3c2be721ab5f03693a5ce60adb776f4c2215b5ca81a4cffbbc7cab176bb9f940aa1771e0420e92ad30e50d7b9d34b0ac4d11c5aa844ee5d3a7929995231538aa3bebeb8784c812087bd31e09fef3bdb75dd8fbad60cb420f0bc0d1858e9043e9bf4768571dedcc79caaf5eb90a5d540b3e9810ff80d7de41b52f1a83f14ca41c8a5a0daa59833d1fc76003c04aa44bf7e70a22c5489e69806919fa42eca45f6516cce66ceb64702880139283b48c87a5d91232449557561b34ed40381d3956253aa6bc299a1123e508dfeba27058c34e687371eb05e46141680b1171c27c57a4fd266453e43bfc91245d74faaad352fffe8588363a0768201e36f6056c4718afd4df40406c708bbbbb738a01a720737db994a8333fac2d230b2887c1805d62fa60feba8e18cd2143b10eacf73d8ec1dc1df0cf00019ca340d2bc0414e8d01d54af03be554e956be7a592de27f58461186ca05df8c08f0f774f70a1416ba8d58b0f158c5145237a2b6013fc864049bd09595038385df0d72da154490c53c729aca44a5af6dda66242f31d7a2df8d90ddb3628c2db00822a6c89bdd31cec0fc0cb333060f87c2423e4be1de11285da78a4b0155548a091b197180138971c3d3ee67f5712cef6a572b7178c684fdb9dd16b1fd6ae4dfd7ed57ada2fc2b3f0a8baacfa7575daabfdefa1ed5100d5921aa6ba46320260196443a82fc8ee43cc223a16cfc19a734ea31abd94d88695dc421db601837c3ca7550270b332b13dcc6fea7a789b81a693431c92520a52c64c6bd580097f04d4b4b1229d94b14d0551abd7b7fc0c8f2dc85b244f94ea3c430726ec2e85206524f40e73c188c0f1e046eb8f36160462c3b67921ea3b95895cba205c1dde4975a13d2dbb875ce9f855f4176efe6f6df9578433a7e8f1c5f03226c09bf0123014714f509b2ab65a4dc38b2659983c4fed84bef6c83b52080e2ee6d512804edf98d4152b146fdd03e326e64df63931bebc8f5d1c5e95614f99158ef52074e96a08cf504baa82b5bedcd899559432dd08c8c6344cb095e129148e8ff16749ea9738159870a1e1a59914d193abfa2bdc99c5131fb543e511813bd723dc0f1dd596cd93168c892a6c10042c3552c94b6880fa692a4996d0ad139ad40e2757bc1db6fb4314f6047a1225ef7d19d4016c7a9feccebd60556864c5328b25c31914578e5898b7a0c355c96ccc00122079645b9f365c8e808b5b8e3c9cf2e3480f0384845864c771a9630af250050d1d925cf23f300b02b49b0104ce62b05736f6c2e6e63ce96c0a157ec811c4ff7dd4ab4161d1af5c9f57394055da5f32cea13d4bffedfbfe9d51da89a142e0ecbba21e20ef1c89728a7356f2c4cb14145812f34d96b638163000ef1d6ab12ba831e3b7ed7485bb8c96855b5322f245741b467a56ab418702ab0b13d46c612ca65bed5bca5f750a41cd5bc3f65a3af598b96313ead38315f4500dc2513c0a452403ce8d6ff7432b21daf9c0e9279af8acc487a8f586a44f31822e88f58d4fad86cf41278219c7d98c0e394bf50e748f2bb44876e4e2b456fc9da143cda7c514affe8be0e905d9e43a4990ffa37d83e05d669e3dc786899a753e00bb4079b5524a57718f27293a50df003d1e04c03f8eb89ef9cc9a5e6f34faa8a0a744a00b737a42afe3afeff3cf58610c94e277a23260c9079f16706dde57fdb6e981009042b52195f59174f5b790425dbdf98cf8f295df561517502018966473c3230b24c23288ccd6cc1f6f003285a19d901ee4bd4a66955842a5cb1a020909f7a50fcbcf8f89b3e3b0b554c34c10242a0acdc149b192adf45417b2870c0beb2b031c2ae70b6f8a5a38d96142fecfdf861426535798264fa66c9080e71c5537bb15e0b1a7a5a36c9e444ecb1ca5f92e2bd0f3c96c8411e6715d544d8e77ab299ce537e792332e660414c36e1248a766b568a1afbc42049d60c317fb4ff09b9335495de4c2711fe2069993cb4fe16e64a5c40853ab00b40077883dd91008632e75411e64c5f15d0b59e968f816adce83da52dbb67ab537e973128a6cb015719477bb7124ab2ebab02d55ca0d6747d280e06bb76e103ca6659c4119a85aace77f2fee136af7c416461e660a8c1ece3b05549aadbc31b9b2be049fb2980ca0f46a9035251a8a33ad73a3d38f25a27b58d9b03d633ab4f8e79e66b765bf65cd0134d70fcbe2371a03be70470c9d93069f0538f7857a01f8c9e4bd8d29930f5ed9733e8a23f0b1633236ad7fa50bd2b9dab6f37c362b69ff8af237eb50c36ccbde84e18e8cb006421865728e96d4e4da8e397fd71533e9735bf27551203f5037c262c53788014b7b2311150457d2fd0921a13e9a8de6ec00a0d6d1b14798fd1e5a2770fb32a7efbda07935b8899bf9453b51b8c01f05fa82046777c6083b2995708aea3f0f2c24276501a734535194ed16f2dfa33025aa8888ac122d251847c08a5358b653232384d316137d99c497d6ddcafdb4d7e9d0175e91bd32bf7270b4cd95434e5bba6df50c19f3d0eb38c5b7916f3d1b7b10498f63333236b93db74a31c45cf43a807e7790d9a82e4ae1cd0d78765dbe409d3a51170f7bf3422a6f70480eb760dc56c44e5cb341b8c475f0a7a248a741588488ec50aff4f75aef2a8e55b36eda35dff46d48e8bb5e41364c613c15b47659572124f628ffc3da8dd782a7ef5854878f138887ac7869039fc7c54b4498bb3117a7eb2e2006cb9e04f598402ff1ad195753707fb5d8c4d760a9975100f0cfa222ea7b6abe579fdbd7916b26f9b71ab48dd83ea00f7cf0a83a8e1bdd98a83f02999b7c0c10e03e63f4bc3d52547eec15affc1bb807782703ea0035c8fd0923f5100135f41c252af7f89c00c58d5cde409777abfc9ee9d86eefbb1b7016735fe10d6250947c23585ab662b80ec40fc0158ca8017223f301981fdeeb63ca0bc44281a5a9e5988914eac6cc0bb3e2bcd25222aea872c0cfc29c4d50eb1629e7261ca5c3f86e917ded7f7d0abc57bc6637753550865410af8efd78d02e2eb3d2b8e8c10da46da6b7bf649242a3ad778b53178742e946710ae051b59097b3f10617eb04d6bf725609be53c2d7df40515173262c575e5eb5a07bb4dc5c2ea85a0dd1f9026c1001ba792ce1b70176684aff7c05af978106e188a57c458cc5631aa835b79ab128aad65840f60651a344467fd7cae4f46d81c342803ff9e1d3fb848a9fcd8976c9a69bb3c06a49d712ac536faedc80e88b77128022f5b78166cdb09ea6ebe08c88fcc7047d044e0cd572ff32fa9ee855f4bf1e18c9a837dcb87e5624a46f77cc611497cfc773217f3ceb42406f62909bdb30ea5ae8da4bdc9ed413bac2961c11c7342c356e2472b19d53fdfab832cf9a83a7fec10bc3984f41687479566059925c2899e1283132586a1c328156a0bff5789bf3ea1e7fbe034d5a5c44bf3a1b27a788aae9b2a09558de6dd47d955cc8c786f2923dfe40ac6898ab6705e071616695d7f9c2a020c817227822ea9f8d00576ff933554d40f6757182bc8ff05c7e6c7e11b38c33912200374f965b8d369c7bfabf6775443c2bf902d8f82461973f6cd1019e98936d29ab2cc3bae0767956bd1d08a51160e153b8329d3f3853e0421b2ddc72992c28bdcc60b3e4cab5da8162c806506f4ca9ecd56f53955da3a59b7eb4bc04c3282d98300d13423b145e69d706070cb8f3fee71803d8d04c0badcd342a791b6fa8daa6ee3485742c9051d555b813e83ea24217f748cc10390aa6a0aaeec43db87563ed1f2ef74582dd57ba33fd585143cc8b9f409ad05a48a3ab4f508c01c2a891a4496a723444098def59b5ebe82345f4664aac62a7ae038380254f7046fa4b10763114873ff7d4e9bd8dca6ebd71b3cff018b7c41d64fe1dc038e60b400709720d17d5ce21325c1beeb2b170b506e0578cb2e097f422fc1996b355786ab88f11f4450f941223764b654a80d9401fd39162db9d7f075c3f785983d785d73e93289d7e31a69fb3744c5fba368d025aa0639267996eefea52fa7122130c6f2feaf227b6418d73902804440ac2aa5d3f1b7714e8a430d7a350e833e440da17a498f2f72179ba8a4c51fd4f660165dc46df8de970f3ee16ec4984f16a42a39a4cb621fdeb512350e09e45d0e5a282b01d687dbbd2b25c2212810b8e28d3f5a64905764572c942762801b8f44b8897d2ef5158b3fd4bce7e66827c0ffe256cf056cef5297e0cb49d937edd47be854b25088a6132de64e10e40ac3c9702e1f94c0c720595f303dc189cfc57748d01f838d62c14b4416d88d9819de4bbb7f834558bbda43bc720b7faf16e4417842ad83bb0eacfde45c6d21a449df95410db4bb45267504e2d4d045c5d904e679962ec63d51e95a036a8903ce69bf11828631eb83d26cd7e87e00e21426462e12f0efe2044642d6e25637209caf128ef2b8de98e3acb00215ae795559a8be38449efba1ae9af3685067f63177972b7628c67a4a7a3a0bff9d83d9f3fbb141ddc4484c3c946a072a824e4e1119bd91d9ef52186de8a152b43362037c3969bb8f82ad98076c1d650aa015ae48a0e42fbcba105805512f0b0b3bd3fc1913d612c91df163c06548099ceca9eae7f1f592a017c0c3bf485d4d77a5d05915a0b544e707d6cac7cb9110d9dfe0b88e12f542cf98105d63af5fc90fbd81758a686cb043c9d8d2a6783915bce10903501d76938eee4f0151b7f561a65d424d45ef9fcb3ce7d8fc64f61557678cd6949bad3806c760b278beaa06c117d9d5362055dc5de6cfa12074e7a10d8d9eb3885da484c4d08591af630080c7c3f0adfcaaa55dee64b6863ab54d7aca359427f5e7a7dd71557d75822ada9fdccf6560b8ad287748073394689451dc158ac2916c498be2a46e9ad34806848639480d295fe8b8926af10d766008e66b93e198419767826e86ae360149226613b38bb886c6ce89bcf1c377a3d4328aed2b7aedb7ab5f942ee203a4d46c1412566aa02f8d0b08e896da5d12a0661a9062b4cec561ad630084a355e6362b3eafab751a8044044e8a395ad485cb02a02b3197d6ca0b38235d84588a7dcad0d2a37e00a72790b21a331afb75f5c96f9210203e35d745957ad5a41ee9c93c5b5cb75b9aa87be9082aed2e0645978661f4f593a3119aed907752e196306291eea4a693ea4adc583d1b9fdfd4a8d2370a64ec9579d599bd1c11e62f9840e349c42a354be7a4c8e91ba14dbae1cc4d96adae87da327989293bcdf9fe297b674a0e254e07d367c01de725081dad4d8fe62b4c44b5ad7a43968ed6b1713bcc8c9a82ddb0290d3f952a9afef40a48ed26fcb3496c90375474a0696bc63b4ee589cc976506c4a7ebc7c271a531cfeb70a90f280a9c8da9f705fbcfbf71539a2e8961c01a610bee260c8cc95427c182ef904b1a14384d78d1a77a9821cb9c499e18c813b9f57ecbe0e22d893179d44e37b8a33b113c1ed9a3b6129bbf079cd58f4d5b7b9a7b526af32ca7c4c02f07fbd5fff82c958433c97d81148c3008f47fb101e88e79a793a8b9f6513a4ae1429041c8334efc027078eab8e56aa9f645e9c276d180b1562758e95a51f00d8aa158a695e2e8d1541181564ff8f088ef6255686f0d45240c73cc9e6bd66abb8539ae7c6936081d24c242fb9801860acc02aa4f3a2429f7762756fda98c977fe5787db32e212532817abdd81c8310e9b3d920219e859fe48935a1d0651f43d6c4b1dae1958c5848b5ed3ab0220b4c300a3fe261a70853e4857735442191f0c2a2b6bccc59cbf0449fd09c9af181f5403540c03888b9dcb8471808d2c03bbc43fd155744d4fd35d7605d7417a69df14d866bc037e3aedcf9cc0e51db6ad2587556a8572b3077caea369d19eb3c3835a29121a0de310cc7e8868ff9c638ef42545d98f08c750574947be1df0ad2259ae53bb3206c67a4bfa86c01ba2afbcb8072c88cf9ec9b5875b4469a03d5fd54dcf763cf4f7a8214c1fec5a34dce3ff3cebb374e73306219dfa015a557b3ec952f3e75e5a571d6b8df15c84e4fc9b8e620fbd7005f3a100e69a660c270fccfa12ae77a1ebdb37d5afde1653c1ad01573d9f77a1dcec6a01774ed78aca446c6b2b0a2bed4ca852c7f1356176d275b7bc6959c8170c13d033ddfae4329201563b19d76ea46bc576225d6085f03da044a7a7aa43cd5ab0560529a96996a08f9b75e7d26139d4e0f2f269691599a6f345eeff0b0f7d0c49daa9d6904809cda57124b9e461f7c78c8d8ca7d2b6bdc1a40f1d8225fdaa6c8cf451969324beeb3c7afb8c3f583086485177e010a399b72dd2eb1d2aea0ffb6c66498d2fcf46185a4f80615b916abd7663313c7a333cfe6099230ec3321a09b999f57accda96c58855b626442d7cbbe20f484bc88eb72f0bf52ff3ede18896be1e5904cd8f4f40b7d13589f35598bd13e1828b5412f0aa69ad206f280564ddc4bf3aeb9fdd775fbfcc008ec1079bada636718dccabfe27f6b67adb506497e1c5c73c5211a27079b32e2b7777fe08ff7630414b1fe73d845e40c803693093fccb848afc8ba45f618f2b9b72d70c9d1edb2a25f496012a47f11012fc02c8b6990dbba44f5acdd5d9e1b93511fed7b0fd2f37157fa00fd53aef2aee1a15a8cfe3d4462dcf2089f8d34dd159aa227c628c9c6a64fd0efbc0b55b6830c29e233ed7649eca5675b38a71652a162a3c35b6fb8829840191dc794ba5ba56b8a4ec23cb120795c981d3ef8c74a88a334c6112a02104baa41581f40cc3e7ad6edb9c1fd2f9b0d5aab30fc8a949a251c2571448e3d0bb37bdd104a9d092c613a41d94f6d3135e68d31ed73ce67b3749e8b4fd8e9518e0bef9bf06025e1311ed4bae0eec24a3d56b2d83d72d9617ab18a69bbdbe83b3f050bb3a56ab3925a1f1460d5fcc0d60afcf5a61b7e959ad8a9b78bb5dc596e15864b76c52bde5866230c5eb209d2a617766444ee1135121aa9f8daa2dcd12d9ae420921b2736c1ed5a886956a4f47237a4b6ff912b0dd0680d8cb18e0656f0c8794cc9c5b6874c22f0d44221e8ab4904414d72f815cfa293a9951fae318847ab9f019c76b7158da694d7f7d42b8d9e4e46c32692f30515e94a5163f858beb8d784ef2da6398b14c5cc711c9ca2ee1aaa15ae42b5c906cb859276af12f989628930a655652b5542b01f06435b411f5cd0e72319294efe1645051ba13e202ec0e1c29835a8cc58230ac4092c7bf5290e09f5323d4d3d179f0300ee82283376f05fa979986b9c94170d62448cbdd5d874d491735824efe3a2ee6b57e7ece9fa2a1ec16efd5d48a015557bca843e7edd1280814ed46882e8c9b84a6a32a485aeca76f7af40c29f990f8372b0df7f31d703c9952004ecab4eb98a30f43ed0521110c5307374755b62c64237c7e54b598447a54e8edcc0fac2d493e4ab139ea2f1d895593575b3e9979e095f209c701af510a7d3a787402a4f0a2214d8e865775ee257ec821219739294ae195d551a8582f33ca46e4d2cc624828281ad28fcd6a84b27d6fd67391a0fb84f69a1c90b136a212881b5b79632cc6e939f56e0dda433f3cdd48088d77c2540a66a5ce491785d00925951066f046da2384916fccedeb5139174de98243097acd7fce0e7d9563fa264bed635f3e3208ed43eb682e243a6fdb0d71b76d4a5235ceef9c8f6619f0a529f15d1ef419e7f1de97a78b1165d3e03b45c5373d0808efe186f8e420b25075647d8e51869898d3a5fdf21a3037483e4049628c4bfc0c59b6b1fd061da17450373dbeab5f6389e1862d317ca747842353673aa783a9cdb9ae374b1af9e5a46adec81f554c757b86fcc34b9301ee4cfc24652fccc47766f59da9750b0e97a15efb2152d571879178a97adbfae3cdf61de14650339b6178b769c4c518e87872ab0d8eead3d6c8f98827747656ae0c3fa1069a259de9b9fd500206c1d4bc34d96766845d554bb6c39859ed432bf7edbf2525546bbcf2f7d6e41a92ad2771a1a8e7987952c787a9d50a008b3e4cd238fe826590db4a47a5af79d870a2ba6a14db984b7af54658bb0d94a862eed3bee5cf9ad9a947e40094577ab62f4c4c5ed8c1a6788e7cc6e6ab7fefe41728c87a11f5f7bc4ce08c9b5898a9553e4907b3ae7235aa480e5e641562527ad7ade25d9b0112753837d795c4c888b666513175d64731ee2ff83199feec8d14b4827a7eb1eae3a179674578c1b6e70a5008505b69b6f7c4d78e804993e3cd60a2848ec60548db30917fb8c5c65e6f47236fbe75346afcdd01db41fc3fb34445c6469f4cde2f2054c8da105792c4b20d59acfddbcb13553a5e497a49b3b90a5207639c8bcaaa7941acd9f21c52cea9152581510c32cb8348dde51df1c20d227e791fe0c72923fa8cd32fec387177ff0daa70c177d20086bcafffde1b9574e2f96a4d5c5e5cae6ac94cc94db6b4aad5df311675833c6060d5a9eec1f945d3ee8aad0488c3a8da4806ba8dd8f657b2b9c700142146bcc18aca3bf8ff3fd3e0b7894d63c56e0ce518dcf41c974c01b061b66bdac44d478ccf84f0d8889692cdbd3b2fd8fd256de96d8964c9d89c4211989ada458df15c0707e0fde5d268efa41b59fdb893a82e7f12d4c7d94cbeec349333c3dece1dc9e50ed2f0efd72a6c9a62dbca6c30a1b37d56e57a1ca6405f945389eb52fd859b07f16bc52abebb7413b7298bad3f4eaedce25d2e15ba0c94804a1998c1f6dd0ddfda710fe75a365e6495dc3755c85699a6a0c1c20d7273d7c5039ad83d7478066517f9838e6b3ad924271d517fd01f5935e146721cefd00c123a07fb60581faf5d19b80dd305632bfa27dfab0a862b33a1d67b7d2993c5fe9dc547f63ec91756d4fb1a72af0ffa115b522c4f0d279aefbd13c460cc951e30774455b8c5d7c1038581fd7f358e58fc899840e2ce0a17037efb09fc45ecc6207d449e5fe43841fb1447bb2009c340b3311bd4196a3201394f418726ce537b21423f2112588e4cf4286c9049d3006418683e14cf66ac4b9a2c22d1ddd8a15b81c9f8ec9b5c071951a285cb6800b64336192f919401feb84d4b9dcf296767bf6fbf73c86090d37f168195f9ff8b23b101f0394e5160214f87cc7012008ecdf720d5b9e19aa06d77e777636d35e64c2bd1144b0571577fcc7269bf17b9de761c5646fc2c5a55d0a1eb47801fb66a276f88aa2add264ebd7767fe2461990ec148fd33faa75741e80cb1c5b08075693af6af820d52484509ec2017c909ccfa1fde4c9123eda3b01b935781c504dee2ad36bbe3110fff2c677ac0ac37f7a0cc3af4071d795613370dff1f83d279321fbb9249c0d08c0bfb6b34d6ae6aecbc9ed28dec18e63b1e6e7b9fce0b6fdeecfc104985342cd1328e024d09515db42fade6842527225d6b8bf2adc6311c8459fcec0ebe683e90c0604a18a0870a66c52824721a4259354aa1715cf81e131b905a306323b946fb9df6609db3405d1eb531c1f544446312df419c5fa73508f0bced3f5bb2b61f8cde5e55a786e428aeac39aea045bc7ee6cfdc59c5584ae78722833f264c762a4e0cc8bf395f7c5c01d1e6bcedf960c45e6d5e1ea071a37759db132e80112bdf28c90f22d4b92c8ccff60e0754b0802677bd99ef427cafd095112f9f0ba35407355ce5e75c95c3e3e22847769566cb11cfb850a687f53f654619a1dda1fb4bcc5b8c0fd267ba0b5bf7715971e88759d7dc92486f44950f9503a2d1841655e12767c5c390f11f9849255d19d8eb0edf4ede6e915e5f4b8834555844596818c40434e0c680282097681cb5837243b87a949df548d109c2582c7ef638ac75d9c73df8413d6173816cfc00670d0af6a6364fe3faf0a6302bfe0fd0a958f8263ca29fd82c0d3adceb98eeac999fd6cb371f05f2f5c1c2bfc5b2309d11ea3808ddbfe0b70b18c53d331815f2bba3de43d39e59cd1c830d1dc581a0e182e4c58d45d9f5959c446eeb142eb8f07201b512a71f73d64bbaeba9c750dd962185a9e6ac9d31994b38802b29dc6ea0aa6104d608c1f49d938082256be01b25413593c45ef373efe53cbd0a53931951275ac54b57ce8c0e6382266ecf943abed2d9ebd34b9fe27e0650b037dafd1777173d733ae818747ac30cf50f6660476794c0ce42484af75d1de14fe66e309444cdc63a019f041bf484830c3b6b5588856cb22c71c7528281b3febc14eb0d6f1811675527499d1973da6268f08d2842380c8dad109c69842038a8fc4569165951839cd5889af21b9de096979b49f2480a7e9a04b380d8488778c882ce86cb9e2c0f55c80fd4227c9fc506607e842e148408aec6db506a4cd2e7cd173869e83bc9700337283b21bbc8c86c89f4f1df254c3dafc09ed09463aca8e4ae32908e07a884b5016f5c006c38e958248b3dac76fdf614b29170fe1f258c2061d56b1bda8f9607b63fe536a084ebbfde256b50b90de8f602339b82322d9b1bbc17083d33942008af062b347b092bcf86b7a20e2ea26a03f52fc96a13bd968d41e97cbf2e55eb4cdbfcccf54636b8b94ecc54b4dfb446ac858469bcefa58731b71b7f64d83c22d9019a8905fc22f89d503949c3c6cd8c8353687953d6838e10178eef3291a4507f9fd40aac90e4a26bad28a3e16b287683a5364dd25eead6d2d54117e66f862569c4498998e725c7cbf7d62a1b15bbbc19da78f00bf4166538649c841c7f84cde76207f8bec324c7fa669a72a2279ce468771330892645dab1e6fa668b00a2eae3cd85c61904674d2c0b21c76b1c96cb17592011783fdc81225c8926be1f83ab9c809aa8db484756ccb355d9f6cc030983c6cb50b740c9ebc63059c70af72820f3f3a0056d91f8b9bdc07685cce1cd745572b45686b96eb97b7eaa0efc4ee736f61bb4a98126893751f0cf66d690ac1077f50d92eb060806d9b11a27a8b5951c3225f2daac42322c77569f9d268ceb482a8ccc0df946c8002542837d280a2e485726bbfa4c2fa2eb11ec0969b07b265f4482c48f695823ef7f48a732892b8a3d80dbfed978505dce83946bb37ba23b839bb06875ef32b493d3191a2377f923b33dcb87301a96e948b123562a7cbf3b3325e851430d06a3899ed7f2b942aa453578cbbae9aa54d100d0d66b4ae7f35d6163f2b30a761c3f649cf6011f42ce06b5ae0276b1e4d72cf7843d4715ee05657894bd89ba482dbe7ecc5a09bf6aa0b0815df8aa5696172e25eaf895a9d92abd8613e9addf363b953eda7ab5ecd4ffd94df0b9d6020cec226fb53ebaf02e52c5b36e9a57b1127edfcc4017beaa49c2835404cfb5001b58a29f3552e0802d86eb47d75f5f6d3bd37da2e9e4bef2044f68463f5cbe8f65262a873fdec6f1ea2712a3b1973c9994f853486645670f00fc6007878b6fbfd2853eea51b3748079cecb6b8f5e0531baba2507a26c4d26c21601181722482edcd7b9c5ed548fa3f094f14fa56abb683df66c47681969e832a49a91281d4a834cfb9ccdafdc0fff8b543b72af9460d72e8ff10ad5e4a57db0101bcd6c5f42e9cbcaa1e2b573770f6ded861fac318f39e9dcb6091a30c14eed2258bcee9799471f70c72e86651d0c2430277d9461764423604ef150f438be591d8647984231793a4082696f8f8c6dd77d236b7f41c4de0b417a2409f8fbdf9c73347889716699aa6aeb55429b1900ef0dde93c55d70211c08f4d6eb0d3d0dbd8289c2c3ba0242850c4e5f92b6d120be2b66ea69399e52261b85f8a699fb9b806e3d40b8905c60adede9b7c13c2f17537f2229110ffd24e1645c0f4690bde328096bbf2eb8b86b6fca6c31cdddccac625fcdd945bffdc367bae7a1475c3e511bfb55185848aca87dccd7c36633318ff0b67f202e2be80036f742e7f40eccc13b3443da2627d15df0d5b1dd4e6a2cf28db80330262f5303f6189cf7d1d03c3d403917db65d9ce0fbb58b2bd84b677a9991b4defc568f2120fd56c8f61208236b03d618c160dcb1c92d02ca15021712764b8d35cb8188d09a6f4c59992c2f6ae9aff0cde926bf8d9d6f90f9cc0d5e1faddc836a06aa9f1b70270328d8a5ed12ac6d27bbb7992407994fd57fa356b75ece2db47d72139e381c043dcab5c341c78804e813d1669602bbbafcbd2e814ef771e7c8de1a87572ac3a55fb98b72306a33e66a953e800c81a1d1e3a7bb94230b20791e1234ddd0dbd3b53b4a1c092acdd80be1f8cf0b64a300b20192602d8bf31862d0c0c0228bbb018dc44bee69af168a7137c496c8921616e283f3041993606db153f836194a5f25771e5c41a35649fb101abb485c587927075df58b8840c202b68b01652f0ffa6ef2956caeb6a2c1e9cc5e1feb245d23c7f383a9099158fb6d960431e27a9dd955352095540ce2b5001f11076a42e63bb3e6ad9be25413eef6830ab0b6570102fd8f0f82a92d830d73816d1e23669d0f1d7876d9292c9be21917621bb00d8b9faf8adb6f1eb2ee6eaf0c1dc031177fe52246415ef6f1ee262c3a01283f1cfd0e1daa4fe5514f7973608daa92fe215d9aea57f694b757680bffff21edb73328332adeebd826bc886f1fadf9971b8d1efb51cf9979480feaed157f53a41cebdde74d3e728007a09ead8abc0b6421283a747d2d7763f36400079eea8dff2f3c19d229b2e71cff485733def4146d083bced2cd2cae7559e0536fcee8d50704690f2739190abd340bf5cd92c06924044386018e457723d10a13c23c3d848fb0bcd6b5de08094792314697a23c4147a4d4d6822497475163c493e10a267e648b6ee19d64b81964e95e914de504ce56bd12d730795169f3904657a9031123ee4c7135c07761045203f42cd2ee90cbdc24b8d00b32d864970d1a20ecbb42409bfa3a8a54cbd0b58bf1730b3ff24816e79c373e52b502f0377b5f3ae9df4d8264f15934f42c150a7c4992be62adf4805db76f024c8c1d25a0f407f3b3bc22d49828da0759989fb5b477818756a1105a84afea5cb4cc5b900fc39016cf6850ad6a34dab928b1ead79dab1bc4a4347aef6d0ff0557ae236f6b02d29f8404880fc4ed4b12505f32cae2c5492359e73f5d2abca4957957c9a3b2fc1143ce78ec3812a0e1c6a10f645c162bb06d96b7fe0a3153974b3e10fbf3a70a42b70ff201eeb4ede15bf91c22a4b0789bf8fce88b9b9259193186b6be213aa2fefc74c6954e4789f4323097b27075baa7408891312f65e14d51ff3a99a7042de7e951edf4f3a29b366607e96be4c14c58392679340ff641e2ecc7a9634d5fa575f8ee02830af98edf0ce17230a7404d9b7c71e1aa5a8790857a598634885fc10bbdd7ceee44184aa2983f6df9ac4a40df1a9dbe5911e26b6172a2d29bcfb0ee3fa07f9662996ee3021d4628051c12e86c9a9ab236cb9db6e3348213810a4b21150bbd7735c4b252b85e4ea570e4cc978266665877f8d63d433cefc1c40de9243ae8121da69710526400284a94e91625123200e83cffa338ae6b3a9135858240ae08674502d4c3f0df3997619b5af88621e9048423669daaf8079af6e27278f2375981cb829a358db08d290527b26323c751881d9d15cd86f33950b5598a01d9049cb67f8c99a29dc124c9fcb993105cc14255290096b015c17e3eb2e69c15282b4e6b9b9a7996e91d410070061e109519b22f5ce4b61f9df34e895dac0594fbf9b467a0b199c9c5b0542f6bf489242074e291045a7ad6beb3879ce0888c2903dd6e0cd679ddef1dfbc0c936aea24c8176e944fb11f54e980f76e9a98413274ccf123130a67bf036121f87102387bb38f782fc06cce75b7076a008a5b73f8b7993bab94e28de58823faddf8feaf07ca3d59df9835c802ac7e4b9c62e8c28f7cfd7ccfacbd8333631b58c843fe13e1fd7d032ec1979e05544a82b25799be967aff0f2fcaf5a2c27b86a6943e954b1e5ceb0bf54874e00c60675c0466f226b76c485f5440405444081716665802169de849733805684d009c9388d54711a4f356feb1992dbde96705587ca5b715aee4326eb08339b9ab2948b4a7e5a832897f6be2c7ca8b5c74b12d8241dc84b48ce6511d6391021eda726d40931496f416f1e137ef9f52625781dda48870c0e4369695e732275845187d0fad9f46123e43eed8e0be2db874b9afa48b0f4e3eba540e031b117174c1b7227025526f9c8e1b70ae3ac978951548c866cc76ec2256ee80cf1925acc947346216660368fc7c61a0c9b42ccc811fb2599283bdfbc2ce54a8334ef41fd538243d950cc1adc6d499d99bd2d53255e8b81a112096c7a0110a7c4468512b7a9891c5dc98f1d01de1f07d63517d2834b961a175f4c0eeaa0838d128467dc1a9fc9ee3794b394b711f63940b4df876e99d4746ca827c3b8af11d7399504fa0097152e0525bcb473ff6e76e0ea5232f51531eeffe954752d138286a980c26e650656413f8407aa10cd82fcbde29892848c423d4b638a4852d24dfe0e4e37e101f5baef4c3c21b791b971a5e31ddb79a039261d6c6469ef9e9d29e886deda06b22eb6befd904b8d1fd8211c0d7017f6e0d115280e2a44c458e1767b1f71cf465513057ed80e005c8b91bf0b88a75adc2b8d9b701a1f4fe7a4421bcdadd4c6a4eb6fe26aeebd7271b1a375a1eb7a84da321d108cefd91bf4321a349d54d33b2b6aa14d6dde3e319f3c39b3a984e0a9cd393547635dbc95cc439dad778c2095eacc314961576c4ff677c9f5a6e043935f5bea888afbfa6299e48d12863bbbd2ff44d1c8f0083d86acd120e05afcfde0dcdabbed74e8c8ec3669cf6dbd645b3bcb8a40def920658c7355290e7d0e20e02bb850bb80c2d3cdf0dc5338d1764880fe46b1b82390476674c31cc9cf3a0541c2610000d90550428906a077a50917428fb88ee6da76bc26da740b2b42248e9800b8f5ab0534f59f58a063c5f3a000e9cf6e9d4486a76376a1b2149dc081b5a17041f6084a774eadade89a511aa41da11cacbcc37b0796d8324c26ba0a532b24e37be3e5db074bce98f03290be8fb62ca4869a1da0a90c010aeedd5b0a61cd4cb56bb61788688eec6084f4a65271230e38341e4dc77e61fa14e395f464d1f2d4c0858821b65b3c2a49500730598368252cea5f31c23af77ed0bc9f7e1493d0f044f8c184614387b5936aa72dd3c3b41f45ce85a18dd3bfb84fc1caecec529642819c916433aca79b38a90ad91263bde56ea26f2f914e36b031ef4c1e58837f4d5d834abc2dbbbd8bd302edb5c1d38386be0e7b907e8015d064f76d266445cf81005872069174ffcc0bddb038ce863c03102f01302814f99d75d49f447e89925c3f7dd3640fd40b29820026de7090cb67fafcb1f25f81e9186ed47f54e8248c8ff3abc3c378738f107a42d94791746ec34bbe872232a11b58ae10c094300c55eac1c5597a5ae8dbab9ac6d44ca9b3bfd4acc1ce10fb414c9e697629e054e3061723d5ac6882f126ee9564b8333d32e2e32ee53002e4ed5c866a26979cb1108481264698eb7e2c2f6fd35e3a6bdc18aec5380476e12ec97784dec0138e03e06852c6c66b7759f2c96e78a713830b555131fc3033370c505479bf5ac33abee650a87e49a41f5a87d9784f10ecc10fedcabc289f684c752cfe96858c09b894eb4092e2479e3f7c4ee69d91dfa8147ee5b4c683a620fbcd2e8fd35ff9a634e27c015d840829244d26a6d95104a641374a6abf6807d36c6b819fc74962777cdfc106c09a650d13256400721fc8ca7091dfe5c38530dac94de8ac66f92c1759639cb58df124c204a41cef7fd6e871c11438a561c8234b35502f463cb044a227d1a28ed4c71f15694844261d2b2be81f25055b554f911c77f8f6c896f2d91e838a3294d68fc9a48b442771812fd956c1acd7d7d25477cee855538c6261eb16e4bd8d5dfb391a96d60b4c8d5e92d47461b19cca51e37448219d6bd54ca4a5472761dedb4f87534ddd74070f949c9c17ae64b0f24c889e2500da875ec0c6844d1b5741c6922398435c9a2bed3ef062f711221485a72b33721a44a6027e1e8a087ee1d3000f06eba063d2dda973cad56a01cd3cd61aa313ef582e1dc5262febbc5eea351dccbf25f54d7ae8dd68e601436d1d81e353497ba3456073bb6283cf48bdd12fd5a2002ab6df621a5c5488c542a3f915bdbbf3f14857a7c43ba1fee8c60151aba3a51a6100b56a90960b0b043b7c0483ea829b35ed7fe6408328098995086c901af248c3cf9108868b8120b4bec2df90f75cf40198d0388e070acf6de6c0b43c1cc4e0dc38f5f60442a705e583d6568fc972b9e854b7de3c69418c35245661c8386cdee04957abe80a44ba95428cd9e365a1088c9d65015b4e626a6b683cda6ce40b2024a9ad98d33193744c281d8b5f8db646670b955ee8061212a9175ddaca035a3947b44c686ec1c155aa5b5c22d0193257fe60cc1d60e89eedd38a783123bf13cf61196140b39802ccd2e550727690f42f74c6196273e34b488bb73022e397c4f2916514b9d6172912bf7f8ddf5421705876ece07c9d88b2d3e13bacf47c9259e3216a2399cb2151ce8d76413d281348b6088729a384040dd52f7f2217ae20c922dbcb4a37323b2bad38a12266f3ad25a3d96601cd833b7715ba7114efdbd57b3f4c077afe360c40a9d99bf0f02653d8923ecc0ac1cae3ff59c5a375ba50261b74177a1867b781413eec8f9247c63208b2b8ac878da5515d35f2cdf24fdcc0a038fff273ec8f3902003176e191515cbdd365a5fec48da693bcb8d2f8582079ac9233cc5d3bc722e683480e6485a3929fdc9232f264935f2ee52d1aba522a6ae85023bb59f2b11fcda05dd23cb47ac734ba35e544b4cbafc42c4e1cb6450ffe1f7d8c307397da43ebfad1f25aa5f4384554ebac2d61687ab5255f4d0069e91fa3ddd81c384ac52067b03fd3df240480bb90baef15fcb789e88d7b81ebbc8b2c4ab362d1a74513d1ade7e500ad08f90ea7b12b081045543629a1ec8b4c07bdbc142138b884d0b7ef9f2a767b9778d043c97a9818a6c698339a33b385cfb8035a77fb9f8db10e2511c6c5088c8ed071d660ff6a6ad478038dc14bab249fb4766f488090383e24aaea9caa9c3ae0c3ae1ef0f216dd8047fb0d521af8d9efb6973f28860a99db90635a5b9dac1c4910fcee43ace3e52de6da8d436fff786048fc9e859d4e727f10dfb5864758656ff9630e9de0f97a0623870921198220f89cfe3b9016ca71b70a0a4a11eda413a207a010e1d5ac02054fd23355424d8cd0509fb177464bc04c2ac4a5fa3e6bac3541e719f0e7194b06b3e990efda8643e59f3e5c1998b06a3173b9cbc1bc4194b1d2dc32379275b785be107d6f2fa4b9d4c00e375168c5d863ca1bdfb4c5cde90f5ec08c133a366c482497e900e807b306399890a69af24b604ac61a8ee694e7886c72509a875989bbc866892f73a179f3ab0ae56dca218cee03e71fd76465144e61043817d81a4b87f52fd85c2a8db1eac5b18de5e7e73c37ff8ea296b70f31b40a95ae5cf69dd092a765dec698538f5c72c3f21dd5ed7d7906126a28f86c9b4c14b7ca8150ca2ba91e4206e5f7e4c8081d04803f7c52250714422d11425a896b514a0b71121f5d47ce9ed24ea81d1d6300cd9429f4719173f711c44d99baf8594fd27478137e769da52a524cb5f4a85fbfc22d6d7c67672f4a4caededf35e5843785fb01a992f4498f1b09040b26548c66c240392dd9a134a007943f3450575c1914c91ddfb4ecf93563ac8d0a984b6b5e4bf440db6440e6b13bebc76a1ed7acba40b72aadfa106dfdc1f6f64d09a2fc0c25aeeeecfd0644dffc107d6650c84551ce0b26661f2206b61cd64a3e659f2a870689191930fb0ea273e2c021ed6a0d6b6b9731b534fb5b63391caed23ebc7a5ef102d9087d923d80168b734266e0fba737ab9447bc0a6ba6b7b9adcd1cbdda622b722e7a9b6d9a268f5eeb6421b0e5d827efc6bc704f6c304b8a0163d074b7b8690a13b8777dc7a7aa1429630649858e1eef687a96fa65c230d908f714e3d60f9c4cac97aeb2a668d646981c89224e4360b2082d4574cc2d85d9bf62805450357a22564c71d965e7127eccd46b06533254dbe176a71c73bb4d95c0f9d1f2b54cfc2206984806a536ba9193980743308d0064a2414e265bde627e60a7c1a36d7b67fcefd3905038defdb16a56b42a5fa26a3dc697284c510970777801c5f10dd7a572197702135af5c464e4898e65f1bebac0edda1309684d46896d803539e329a222061c1abf318024aa884909e583c8605a565e6285c4ec81a6506f3684b846c73a61844204a783012778e5c35eec4a985e94589117a059360bd2783bb379cb291b043bc68d0b3cdb245841b36f58e40d5a1b0042447f2700693c010c58a3c6b960105f6eea0671e53a9651f2df0f1cd3a81f4111865a2a232af9f9235e41f92c63871fc946a1a55745e14e9a6cf14b14b52f3e52e3371e95141dfe24e8ac4e0ec4a3908099f510d75bad9eacbc7ff9c0cfec7d6568df59f8e280a5604fc3816655323a2ccafa29747a638541915af58df95661c974d05b4291136d1fd5bb915032de64753f7b6bc22a5e4ca0e9756ad654e9d9b785e90669721434df4cb2009a89381f694d199df2bd999c9474e454bb4ad58e60745c6ebbf6fba7f7e41cb2736340f5b6ced34823e705944f63326c467a1ac878561ab2a48a61b3c39625f9ea62654aab62e797e448f61fc79c2a1de4725adb988a5145489588f30a5ea78025f9d4d72551291054a727102913b1cf0285316799d8687963f2140f0488145e177431532de08bcba406d6acef8c0d43ed54d985072d2f69c07571854778907e566ee8ffcae863155f300dab8447f5d511c2fe9d36742d9625e8b0e777408b87298ed05fcc43e50936d6282548b4e3bf87cdd17cfa5da6a7897c096691325bbc595034600067fea3d139e44218daa64e238599e296444cf1e01092e95da99e468897d11e1ddb358e98458d3a9337046d8f9e5d3e0ca14ac951f6bc96ff525580e944073bceca15b9fcdd9a4924c07974d75fb76e90838deed3acbf1f41e4e84fa67ab76030d0d8e963615e5487569c77614d9323023a5e7e492c9e0222938c402f3bb923922c4f648429b1de8ba0a1167c1873fe032b695ff9e87411b3185f39f19ef0fff6d57126599fce8bbcad38eebd584de65b0cc3de59a59abc4cfc3b4703e62fad52e260de3057cfb29ad1e85c47d2f454b3038349b0067c9fc050b212d54031662335d9930c7c147ca087204ab5a1aa43c70ec2890c81758d7608a9c377a4743f56d1f7d275ace704907cb7854e7ad92a76a06a747f74da35780e3b616c0525c727f91dc80a5ae92e16bfcc5de34c798d6aa97e992d3d2a687259d0a0e71806531ad2e7a90adce70251cfd2f0e7839ed69d152d8979e04b86f507714c8ea5b88cf7aab571efad24cf995905d533cb52c58ca2abd2aba3184e36949b4dd56d1b22bd81549285f0b01667cdc15068a4dbbe70fa98c9fa1aa8c82aee246ddc44aab3e659b5a74ae576ae4a568e9481e51a93a15efe998e1f6ca5c9c68e76d4f347c06ad657affdde9c8b66bf1c96b6fe143822b2df73179948321cb7e69313ae631b6ba3f40338bad50298d80e231d7d41e2aea2e83ad7dec6a436cca5db89e37b10dce79548e38d948622a9771dc5c1c0608ed8a4d84a263fe909d5b1f4aac836793e4118d81dbcad704c0ad363b8baa14858f238226a7277515410fe0850f3607c6332362e068e34ded471402c2555f63f6c5836ca7aa5b04aca6b9ddae6c3a23d0752493ff6d772103f9d776d6c8fc22635b65b76c5fd2b32cbfa2158208a74e68b51f43d79f89fca81f9de72364a18f042930b97219340f02fb975910c25405e3d4da75b3a80f847ea1fe55a08ef50e6fdf04e3de0c0c2b0acddb67ed9f90b10d4022530b1565ae2e379ccd0e37c67b17ef05decc7e1b75f3cda88f3db035557c6dc8bfb9c42857d7c461959bbc4605e9b1d81fdb51f6f8ca3f5f4676fc4c10ce106822fdab5b7fd3d429b4d0953fc9f9852a7a3b9ff558247bf6cd3cf436cc9037acf4e905c40145aa5038db7a5f56add3131f6eed1dc6358f653876a71f088601800ad050c9a9b1a70cfe6ef36c300f526867af4671fc28e8165e6402ed43cd4e61c01cc34c8d5c657453361baa4c9c56b6162e07a5849f6de726fb9a594294919cd081309bd08ad1686999e087a31d5b82f528af2777f2b42cbf48f4ae570894989b10089243e18e2e5c875c970080919bcd8706b8643483c7182cb5591bffb21408207f9fbbf91b55aad383084c4151de012525a3906134814618727477a78b2434e491172152a956328091038c145fe9ea6d212c4d81a1219da06c22c3120ac02a96c2db4cdd3be72d887fe3e4cf7e636ddadd64ba89ba34fbd63906e6cdb55008691e70dd46dda836f69ece688401dd38b1db20b81aa99f413596e321db1aed56ab5f21185cc79348fe6514bf250c73670647b8cae4801228b94524af9438c9e284ed8d0b2228827ddc5151c3a40650f5272e1822b31a0575280611886b9952c94c84a12a4100d30211b00c18141288b2c3f025d238f1e258444be321c127292bfa7d1a8cc9a0f91524a291131c6d846995e5f9fd249279d74d2d84038760ba285d828b5345fafb0f7d1a6d2cbffeb8b3f5ffc41a2f98142461cfe6e5ab47d8a3ed3078de84f6c5a79ad5b8671304a279d74d249a9534ae963dd8fd08f772624f7eb55a6df3eb46bbe88a4571149d744f92e9fceab88f344c7a87494433ae5ef3049881fbc8350ffb550118eab7ce288d3310c8901c787744d4482297f8cbf52bdf090d803e388e457a5d98441e8aef84324063145c68129ff8d9b31839af9f9d442d8dd5dd80f910eff0421fba36677820fa0005087d3fcb8178bcd34a84d7c42bdc43b4d7226861eea774e8d4f38f2e7efe8340932f10eeae5ef34c941cd3c8fb723f3a7c658a749e39cf93358c7849faf93f2a027f3d0b3719ba1022cc48cff05e8cdfc0c3fe2e3cc3cdc50dda91fc7434fa63bf5a31e7add4cd72b5751d129ffd8ad930bf2511f443e0aef34d939f5cb3cea71e09d197c6a7c7241e6511f04c7cf3c8e9ff9f99d959d09a90e6a21e9a53ae899d0414fa6831e8e0e7aa80e7a33bd82d1e2de987c2e00be841b366a9c68cc30c98881797189d1724bdca6d98a611800be841b366a9c68cc30c98881797189d1724bdca6d9ec5ebb418edb7e546ddbb697be3800a90058c171d51098f287adbb8517587490fde9964296318e48a8ae418a96b500937af571fb91bd6dd8d1b9ee638e3cd4d81a0cc8963f9a1f976ce336830addbd8fb638e608a3735cbcaeeb3922f5da767caa1c33ad43210098a5015294fd71d71915a30f2d33a899f76f41cdfc7c8a7af9415041667e629c12113b322f71fc7c17c1fd7a95779ae4ccc7f13bf265dc66673e8ef7fe1c99979f83a3b10b322f3f88cc4b1c04c77b10d7844f7d4c9980a37a1f6d579047f70fed81ecdeaa4ea69be9501d7455fc3171e0267df04bc9bc3f8edba0dedfca74d0bb2694c96d66deffba0d0e1c9d2639a897af33f3320f734e9fa047084d08ad3c8975703c6a06c8030a0bc09aeefd3100350089c41e2d20c0fdad4b8cedc7f53136153a63fbd2bd0b0c8469e7307d4b6b7d4ad342ec41dfb1eeea308422fbe39841753234fe331490fde7853afc35273766f9f3bde6aaa99e8a3bfcfd08b98798ed477d2b03ca88ced1ffe1a1071f4010822422180110242801cb04275092822196a8a0082646ace005631c6fd8a871a231c3242306e6c52546cb2d719b66338c76ea762a3ba440178f8d22cd1327027e4025074cf28c0c877220444f279cec617e81c7b33cde77bd0f952194de67aad67ec53a27f96f5fa7bef62f40cfa473f1f3784fe32afa3c9ef6d8bf00bd8a7534fcddd27f34d3839e164ff2715c45259ee105e801c13a16f3789fb532adf89453df7ec54d2830c4f6f22d5e79a7894f10a89f7d0ef6f533ac13bdfa41219c0d9f8264bffd864f2c784de667b889fcde702e7c0a624f41a2777df4aeb711c2e85c47715b68b5cadd83d60a56d9763ec5b525115cf943dc467bfa4484b84d89fee00f62893e9da2d8d76fc9b17bec6fdf933dd79de4979ec7d33a4d7bf95a09eb70380ae96c98daacb31dd049bef63c5ed049e2930bf6b3cfb19fe9349138277b0debd0cfe8ebd0b7d4cba28fab68c412fa148a5d597686effae3950424ac32be5e5cedb7a7273fb9bfcefcec1de7581d21ae9a6fa3ed4ef0b9d6093ef73c9ece84f673328b759a409c639fb398c65533c3d3a65c35b72a6e853ae2cf9042cc29c48c411df1afaf5feae66d3c05c9debec5356ba88235bbc9eb055f688f621a57c122334ae9010b511136ad17f619a591461a69a434a318b594461a69a491d2a694be748a52a17a99bc7667eac08d2fa46be8531719bae68b41a46bbe97212f94be0be4319f7e0cc8433efdfe89c24294f72a556f867959775d753dd655a00bf309a7a73f7e4b8ef9444f94be8ef6d9539c83e9d8c7be1af30f9c9e9eec35dc83bdc53e5c757d977534a779739af8e442f6d8e7648ffd7c0ceb349938077b8b75307c793c1ecfc3aaab2e6fabe242a863beab662bb6b4410a1194222852a0104121824204e589d6048a101422284fa03cb946d090ac40d2d44021c4201578f048d20ac6bcfe729f2ebbf6819e940192fcd1707da669ca3208db06a57e811901bdf86895083f30b081505561116295226c774a4e4aaf7929a5f4d2342de96258566d911823ee9461f69c33ebe242ad8bfb6959eb424bba5f0e2d694e0ca18e920684ab5dd1b8983e7dce39e79cf3aaf5a5763b9def73ce39e784d1ae294f298306a53627fe3419324c26981bee37e7f70d65f7fc687039a577c3388304ae5da05ec094e3c71863949e43db82b8f3e99be206c288ff412f2092ff07b7b031c6085b08458d526df2215e4d9a6e749ed81305a7115cf8ef36d7cfa739e126d58309b33c491829eecdd0892b90d4ebaaf9305cdc397fd279837555773bbdd324a73fc33bfe31c638dbed16c4cd9e7ea459ae10c8a34d7103378c2c65ea859bcc64e2e17e2f2f3d3df5e9f7607fbd9d12ebb0c06871bf53529a7c6e7caf7ff4cbef9feed9c5b65d893dc8fe70e2d87295435cca5f6c957252f60a4095bf0eb2870183ab706297652c8bfb459f563f4682d88a52b4b6c8c20a5ff98f85282258538229390058a3d188f3bfdbff99aeff524e23da00892af95ccc8da88a7fbd10e912acb10004126d4a2fdf029048d7f4975efb0c7f37b69ff88be19ee28f831147fee050965f52c114e46ab550ebed47bbb5aec18dd21458f28a523e2b059a27968126d39ce11a31c61ae28f089459ab3927bd246b4504690844d2e67bcba84fa8283424fa02b05a7d170d107147a75649601802674a16102c56e436bca2f88b444926fe22152b895749ae4ed1dcd84e61db8febb14d858643fcfbb8b9a9db8febebc32cf2a8d77fda77dd55179fc4a0b88a3d620ce00ed6c448401dbda530b3e3180475f4d3582288fa4b9ecb5faa883f31a8e450a9d820c74ca5877c21204f1c5091e7c441086a08900d70c50e6a9551e84ee173292cca376ef3141201c98814494c51822aa600422a95bf8f23c8f2af904196f2a9112b82a00a8291110460051199320186afe2c32992c8f465d5ee8ba9c6a3523968a264fa27744d3c92e9dfa0d0350b00d2024e15ad4c3f873e0c1110b2caf427d03559a63f4406221cc8f469e89a2dd3cf40d7c0212a4290e9eb744d8ed50732b5e1c344a69e291caa424aa61f7de89a2414b26cd002255d03a9587224d38f4c2250d7c0a11b6491e94727140e191591e9c72714026113b2215238714c91a4569141a199d2b3c3d1941e8aa6902004293031e5052934f13325091e8a82a6b47a489ac2830fa450832453b0e8904211d28ba9060dc7034d6315c3eacb09925081cb93246280822496884112464248c2072e5392f0a269a8640145c950af8a5aa9164deb06e7715aad5686e3c5165958d18aabece6e77eb03581bead8b27b6bcc24294cda4b9a926efa2e7c36bbdd7cac8e25664970232e1f37d747b3579e04a1f2210cad4e6bad0bb4e2ec8af1fc4ffc23bd7fb57ff9d1a693f749557bb53631ce8aa9804534d882bdfe716c4b5fff2f32304cd0f5f0b75d10bd173f9f981f918efa37f7ea460420918fc350b9a8812fe61a3b365b4753ba00e8ac3d1167cf167a2a17f690b8d416d47bfd2bf5ce813c1719bfe7115a5494694a33f5eebbd4e71eccf0f0b8810e2871fa1a2cb6642f1e7aa3f37dcaf7f7c48d2359f00327dba23d3a71fcd0f8d77bd00764c9e38b519d87abfc8cad7631fa47e8677faeb63b8fe8efff512872c370093b07a25b19610f1000e308cb824e52a7ad309c1711fd6d4c51eee079388d09081dcd383637f76d0ab9161f54a42933c560a52c832ecb91dbf1f861a21a5e91be802fdf841e8477cfd4e3ffd20d757bc13ff72796977921807468b3bb110f7ee229ad09cb8f163882efc46f577bd31466e8a882c405264a117bdec2905b7fee5f257d07ef2c84e526a4a72e1bfe00fa3c5ad380645b85d3fc3c9f587f2824617bedf64bfdcd4cdd88cb608e451c8a4c38d4240b1b3402caba1d6172d30260d4501c5b69e7491bf13be1ab5370768274da31e25c92aa3d036dc8f86a4f6cc155011dc4f142655f2774276af6b61ca51d7c0a128c080c9fed189b76f2b142037cd344d833a2efcd514e8cffeabcb714eb8f5f74fa452e3c26a4e5cf940e69c4fe543ec4376dc912b17d0a939e734f968209d9a6f8a71e27e9f730c2113d03ffff1493eea24b18f4ecdf931462e35199d528899ba0d9cbe45564412a4c581491502136904930e2e2258d8356f823aa46c08dd3b0ac1c239e7a4b99973ce8f9fbaf4d219bd48b7afa4a4534a29a594555e1293524a29a594b24a294d3ba06493ebededb9597672817e7f103f457c72a1df7e10b7f6bdd34e29c42c613ec5cf1e7add9d3cad3b45db9dbc7a5def38d055d785855c30a9bb8db010e59d22c6f1e04fa0530da3c5c542e2066c94524a2971ae8f31c6384d1f902f1378914656b60d5c80bbbb94525229a59453ca196b5f73ce3927c5c2c08ad01d71dc914265387dce39a7f780ff49d931eea873ce39dd21bcbad6ebf2d9411d11b3e1c647750a7e4b1637fe9cd36727e7949ecd4842628af8ff58ad157b2158093eaad0254485b0ab5ed44786655886a590f4993483709b529f72ce5864464adf3dcbb2d494524a2c312034246e7cce5ba6b8f17d08090979cc92d82e670695101a80eadf47f731feff57acd68a6197cd301f9bb669597d1f34ab35a3f33f1ce7360426841b1fee983fa7905017ffeb9ac11d1a0daaf9d7b642679a5d20fb95e95ff4d2b4cdb32ce3da6806366ba6d8083a0968db0a5fea8ab056c42d32b8f1b916a31bdf87909010b7adf05a66b3974522cf942f376897232890f2f74b4091831f28aa7802c512318e0045900705d0d0134220e8d49267258931094b0ae98ffa13408e91a6ce181f00b16648a7a40af2d8ae8e0693fbc9199b143df48f54aff4376e43c455fd6fcad06d2ceda674cf2b11719b9b4ed22698f0b593d8ad6b2d741061aef06fbc71bebe558423f7079326bc707b3264c0202697aee4fe2fb2f4dc704eeed5c1507124c5882877673cdc4fbe64daf5386e629fc6690a84d66a2e59064bbbba182d99763d4d36fbb09b81869ab94e6e99eb66a061c21df05106f87e6e3fb618769b376b4f4aa5a1abe332d6497d93691061cbb314743fa9e51794b4abb339fb800fb95f4392fbbde7f622d83aba7553e6181ddc19a41fe0000318804ad57552dbbadeba982b601fc35a5aec7f33f2d65dd9769fbcbaeceab0bc2de1a25926f7ab35db17edea681ed23552e60f221569723d0deee15b19db0f38e382d7ec2491ae01404cc1e7ae6e7a00ead05a47e421a6fa4f3bd0d0aafe181cdc0f662b43bb3acf9292a207fa87740d8ca92ff290fb8b5ec814144190fb3f7825f76b544cda35bb212aee39523deceb5b6b6b373deb5aeda4b7752aa8037ee79e955aeddaf30e7ad673e4bd9e23b754806f33007c4b27f7f174d1b3333422ae92a614dc2231bbd901283b408603501175f618c5f09ab0ee0e308001a85418cfa0b107acf44a61584bcb8c19b1eb9619da0ceef54099f69437f5a2596331ab22abb7d3d9ed0d7b78472fee7898a18e5a4d26d9deeddd1e2184b0dd27cfec169fbf5fa54cddbfcd8247abd5ea081096f8c0ed1f20d4e08818fd63a328b351940535b1838c2427a898d1440af2f6b26b0c90b76d6b020779b341de9c6041debe46d7c8c023233288a2b5f23429d95acbc40bb29d926d133764fb35baa6166d2145910e12851a146579479ef3b54b459eff32df24449e5f630ed1200c042c81029a1ab018026945f4c4072224d9ffc589a46467224a11b4d1b690c10aa808adbcbeacbcc50c89125f80e07ef787a20491258d1ae4504f962fc550155916dd286d02532604869452562992302556594a29a5a9b5c2724022a594758a2558087090524ad39424182b0729a5ac52b0b022a49452fe986284612ef09152cafa438aa2212590b841663f0257806182259ebd92205979b66a4d3c01b4c4b355f3ee94e33f7f621d2885155b14798e21767461f604eb8823af8b40420427379daa5ebcfcbce4ae338712920cb0ca174a24953208db4f941b4e2ab8463881860384b9bbeadd1ba818aef55b64b6dd520ccc65d7cfebda54b85e7b0be311d7a352f06388b8f28b1461f2a3894f68828ea89a932382342d093706d9232eb78911fb784416430495349fcc1d8f80f1881844438b98a5aff42e5fb5eeab59bb2e7d79c12df88bf5da5490cfbd6d9fae81325efce2d299b6ef328fd1dfd27dd0e847eb50e262740e09b77fb6251b0374883b66d561da0e769d0fef8fb4d321eee8397fb022ce439d9ae00847a01aa4f7be70b107cc4b98df9ec61e30f88b39060626e64b5f3716b21c8369dc61ffda5480f9ecedb5fd90366a301d0d3ee1a5bbc1de2fd77d7d65b3fe525afb8d9465b98d84afdb341254f527991acbca357b64d42ab2452da3239b0905012dc9960005096518ab93b40fd63efdd3495858ed159624a48a9484a557f53a326a155d452da3a38b0a05012da14b808284e864459f9963fc89495853621922872461919d67086d80381008856e52ddb976299a1b06c44ce38e7e086d4c2f6b47e38e18a37345244f3b67831b20dd206807459a116a928c192e904774c19707a00e07d29c74ca815a5d4345bb11e401bbc6c6fb5f3efc572f202e25374ab86163738931bdb8c4986ac89851631b8229c6e5fab1f13edaa5fb5c5ee661ba0fe66386b2a092e9f78d1b32313f13d3c52c23836566625a3336a897c1dd8c0c9699b1e1d2e2e272428d18938d2b5d53c2bf53d1a94c8b91e9be9871bc7db8fd5051e1ad3026d0f5d36a99405d23f3fed349d7e0f70752fd379fa426d024cafed7cff573fd5c3fd78f8c8c2aa592b111b3b93c8eef2d051c4fe3e1a6028eef3f9dea75c22716703c8da78103c7608a99419d60e34609aa940932df1fd3c9bced0ec75b1c1fff2f20f38d1b25dcf80a94f28d1bdff2d7d31b25e0c0271664fec6df90c131986236989919996fc1313333f33564605c627e068769db700c2ea69819940cee4e88584ae8e21737ba9844a38b57aa1cc574918a51a7a8907269fc89bb5ffacf5ba74e46ddaed6a581af249df297f133bacb877a63b00b9681af9feba7a5a52526067f301fa3561f0eb34b1703d7eb27fb97baaff33781669035294399ce4f26183a4a9293484adc489d725a823aba6e71bfd2cc1ece1967ce26c5b2a9587f1a170797e653396cadf1baae77f7a7158359d2b8a3d25aaf7f26935fb1345a96b8fd349b3122d13e06fbfe9a7d7f3b3119b45c71e440dc41218dfefd0492dc65a884112bbb75f7ff5298fdd975b69062e994fc1d5bb5226331c18bdf228b8a74bf1dd9bfeeb036d6ce7a8d6d2dc5b2c993338c5e18ca29232b6bd9c4d2592b86135e5f9f460bd1fd600bc76da4b7fc532d542af5ee98a6699af63c797657f7d1ccaf9fbd9d5787e35bc5127f579a680aec85d0a3d13274e5cf1ad3cbdefbb60e45d57b09e96fffc3308a39c03f068cba66dde963eeee0eab4087f0dd21847fc10ec2777777874766006bcff59710ca2c8396a51ba129f1a794d23751ea2e7fd6a9e5892ba5f4a25ad7cc1af9dbb111f6aab5d6b8f3fa148d0f5745fc432ea0879082e151119873b6640f4680c850891e2cd9bf952861c395ec4eb23f1852a8fceb83ccdf5e5aee79b6cfb936acd384e29ced39ac93fdf63adc5f1cc7712dcf3dc5393adad72c1eef44bbebb90fb23d8677b0df9ec33b4d72b0df7e87b318876d7fa2278a4f2e708f7d10ee31bcd3f2dc07b13b10c81e3bd19f7fbff4dab7fcd7ac13b5f6391ecfb674d0552fd805c7e872e2cfaf5d8e0b473860f2c51058ab95d7f29ad6d2f178dac6956ec7e3953a1e0f6e3fec5f6f793cdb6dcdda6992a3ed68f844f189e220d963279c0c07a15840602588208a562b0feaf8b4a77d11fb183e61f884935dff35eb5de5bf9da2b8d0737f92c30ba080a28a86778aacae97e2d20eb0b2e7ef1bebda278cfb190927b9e2af81e8d3c0245874e33ee5420f013d429e10c6138bc42be322a604577616632c92e335a33b4ddc213fce4900e93ec438638c34c659e194724ac7b28aad5d1323cdcda720f59eb7ca57ed5619c33a21fb43cc5afad8cf8e3ed6d1c41df3b1ae1220ee985f27e63e746a528c5e57ad8eca127f091c73c71cd3f8e14a0cc3b08942c65e62d8ad18e6584ade7c50758944e87acbd1c5304a61fd228b0cd4a75731516901aa609d1886ab3c21431488724c17d8d8aa36b6959fd50bba0aa3711fddc905f9de64e7c2f08efdec5bfa677e55d97d3763587df93bd76338887cc73bf525beaeb22717b2971f24938ffd8e531c047b8b77e463f85d059fc79b2107fb4c07630fbdc67013fad0f3ff2ea5d252ad76f0d4bad0cb3c0a2f2ecace252d41bd6a8eb1ce5927855de94f2925954d2f95b776bd62657fe431af896317295d91e57f50089adebe0055f2bf9b1d6449024dbe95de04900f5d7a0300aa24011a5059e87c6115d401802c83f8032896250672db924729e5fc315d4298600e90403175f8803083297e92b88189115e7081858b234829a5c43aa0032529882130618418246549832e7cc01edb7aa41523524a29e5d38945962bb15eb55e40b77ef172c3bdb89074ca2c2410a2b8b0d041fe9e86ca0f982e2e9ad46bba2ff7ca7985e85609afa906164558cc00054647846184122c8688e2c6c870088b0fe480450e2e396061c30ea884e1032f8c50d9620a951d4c1e24a59a8d3eadd6d26e5e64045b393e9a13705c15df76a85a51a93ab197194ddda05428a4e85f76fbe1943a3de1ca71d1136e502a5894bb69028023553b9927565f7a9e58fd5a31fd39b9492756bf567cdddc9450d94b952957c528bba69aa4cb9ff46e4060ac745a481beb8e0a295b621d6b4b29a5b7942da50a3067a803fe9592ca39bb25ed9bfe6e794b58ca96de37df129573ce3abb7b76cf1aa5f4be25fa2dbd67f8c0de3a239473b6a7bc614b4a3ae79c34758365a141831b5fce39537336dd424a2aa1bce82492724e4924e5452718f2a293884e492718745e7412c98b4e2229c10043124979d10986bce824aa6221aa76bba42b6cdbb64dcaf831064d94fd676c2b9cb4eba4c56d858887d0b0cf7bb69fb4ca5fc80977d0912fbab24f524e255d0387908024fbcf56d750699b1d479349d7c0a1237ce192bfb9640a659f45d92715d9bd6f762d542185ca514dd75489797e136506546cfb51a327adae540e9a0453a4792ab54018f694d3fd3c9efdc0855127ead0440958de25e93791e190174cb26dad44c4956f1b7a73430891fe39f54ff277243e3976a1bf7e4e7f9538873ef63bfd15c3383b15df0d48a73a37765591c8440cae58e2f5dba4920886c04d4693d210377e340d891fdff442200f4cc679f2884f8e4f41a024c1eb0f723dfd20fd15ebec503102921750bcd3a4f1c92f7c728c737d6c4148079360b4b838403a15539c135748aca1a510f2e0fb6854740a8506f2c072fff794883b849be81f895e93d3f5391fbdfedf812f7f47fee9c22ec4f7cf89ef4f7fa709c539f0fd779a4c9c2371ddd1a2dcf8f03f1ace89fb99728711032c8c10e1042c9862c5eb9e8fdfd15bc842d427a9a0d29a734eecacd80363183cc688bf6bb02b8121f670214e700567e59280c8949308111a9cc86f3f38a41bbf3bcf70fb815b095ec2d2c18d40cc2e7a72ca59631667925d8620ee8dc413c795ab6e8e8e8e58414938ce02c1fde095dc41ce6a398b253b158540c4599007e6aca1fb398be5364bdc46feccb3f0e658b2bb10ac64c7f89b3bc8ee3cc8ee5a041579cb68854b465cbb69b1b56a390b854f8d83fa1760cecca33ec8cb4479f244169fd5ca43619d265f901b432caf0604f4087945fc48cb433d055ef21028bc639af1232d6fe651ffd52a66300aa75c756ac99fffa59cab41b147cba091803c6e74120da5857aa8a33451d3a06bf0e212a3e596b84db359d6618c1fcbbc8fb65606cbe04bcad68d981bc4085db37301b107c571656b0c8a4159cc21fa34eca366b19270b7b9bcab523f8a3d281ed2518c64c901c830ca0e6144317225c3283fadfcf951941f25d98fdc66c8bdd479e0479ef52b3e3e33aeb85ff4c90107d8c38dc01d9047d18ffb780fd4e13f24f6702337401dd6bd63cfa9097193a49064b3be95b44d6d21600f0a24f6a0b1c864c5fd62d62c29374d4aa76a9e417eeca8c5fd6251912c9a31c628a59c3f686c713f3f9a54080130e59c50516be5b39ad1ba9f07ad5c809ecf08c13de2d102d4e10c7040dbc4dac22d401d0c800ea8c1b6fc703dcf20b3d642db5cb00816c52c66526bf9e162b99f76516cbdd3686f56118e1fb94a864e11191283228d41199552ca186346e9a36470b7c30d1b354e34669864c4c0bcb8c468b9256d086e53215a582a6d534e695132b8fb126ed8a871a231c3242306e6c52546cb2d691b957155ca23f6a078013cb2bfad492e0b883dbc075accfc52148b7270243fea1e1f5fade07e3289d185a4536ef4fd10fb91ab7470298e3f3e9d325de173350faf0275f87b0fe00e2da08e5843b6b9925bb8727180f470cfe11f5c5cb61ff36564b9de03e84790474cf6f72a7e43765f4123d9fd080e860f17d9df6da8599243f60f7a32a388fbf9911fb90d92dbf84afe644fbde9c859bec4889b87401dfe1b5e998e5cff711b20be721be855d3fdcf5745b5c827068cfbc5259149f7881085ebfd634fec11b11b813bb0df0075f87ff148f6c7435cc38e4483e2428f86952b86a22c5979309bc907345b199af7b4cd75e1a3cf577ed4f2c3ed9f41c22cdb18b56c6768befd305971676cd1ab44473a8ae20e711bafd25e45eac8f163a4f4bbb3196e2b7432a86b80b80df6a6ea1b802a7f1c3c90fd33fc8369255489c02cc86eb4f2235f4d39638a441e59c479e4bc49226a720573926499cab25998ef7f5a81be537c7a7121ec0cdaaa8700c48cf9b95193b562ef7fe336567b7f9aaee98f38facd39f0e90b5f63e9a6b85fc45287b81e6e309c72320d47243fe5603a16c7241c04ba2afb9a937dc53af58b49d93f8f1e864daeba2c96d842b9b5da215d9f541d0827731a07725590abfc1d260c89695890df2bccd367548691024b14258ef277f3cbc682a41015492122227a2244f4e4c91327414f9c3871c2c40a9015275698586162858915259b0f56965861624589152538321cba9283951a4c28226b4300c094cc21c17aef8ba9069db20b15c4fb9223c3a12eb2fcc0287ff78da64f529225102205e5184486433e40cad6562d6e9abb975c2b95b8968794eb3a7b8cf1b2dcc55ddd5761b49b3663faca6a150ed75fe3b8af5dd3f2dcdbed079794affbfdc569ee5e72ad549ad25b2be1e48fe3388ee33ae559d7c027e01208c8f00d009b26c313720e548d97b97255f7cfd54a02d5966c65b843a15371c57173c5cd15d4c1c996db342bf56f62b56868713fee6b562bc1380edfadebcc0297e59772e76fa7f36905cf5f91ec3966ebb253ee99765fd5f0755ac1b3bf67c7f69d7bb7f73923a3cc7dc962407b2e287319e0def6804abeb9f4b645e33a994f44dae6be39807be7defdb96c2d7eaee3b66d05ebc26d9a864a752a470deed7df4abae62b7dcbc750fafbfdcd823c627c7f0b017970df6fb9ae0225ee5bbed4c5e862ce3607dce7ee731cf7f77d748cd25f20e612feaf1443e9b9af1b0bda737f6d2b94b0091b6925cdb272bfb9cafda55f750df7fdb367fa401ef67be2007954202665cedfbe7d79aec34cdb0afe165bedfdb5b7a61a9d9ac91ac6fd0562e6300a4ebae6b3bf7dbf0cea9a18ec73df2c4429511465edb98f1b03b4e77e5bc142db955a6e1fa6da9fc9f65b6e03bd7a654b833a2cd12dbdfcd31257fe964267997d63a1944b6f6fa7f9c028432b190ef5e04ab632b4130dee17b3493b2d71a2c18d8186986330d1989c671bdb9bfb766e87e55247aff942a323a42139d929fb9db7ae76b753d646fe9a05f399e6643d0fd20500440dd54620b2e829f28a401a2cf1b43640fc2490f4d0f2fc06242a58e21511409207db003c1ed6396101c14a4a1d1b2e6cb88190a7534453a228478e5fe4fac2061f0fb6013e9a1ca78c90c22a611061e4dd7e62cbe14a2025bae8f9c14ae82675a0c583244432bcb83d4937583d482b23478e6ca0a2e70994ad5bf4e23f56a4d8241e8041c5fdae91957f6bb849ac4caca11960e9a421284a8666e04415576eac86b6a82259ac6d35c4c5d0d0164158e8c0259868c2c72bd24046318c273f425e911884248d441528495e91e843904e348252c5915724fe00e8e341620a184921b0d1063e4846ad450a843ceb3700e10acbb332fe40c504429e9d4ec8c048c8b334a361a814cdd83439ea14d108000000016315002028100a0844229138200c9565f70114800c72964c765e1c89a35910c4280a32c618630801c010020c0132534343055d2f31400e683001d4cfc57fe302ed5fdd5455c6a18ac5dafa2cb6b51510b55519238a59950300413042e30b5059b0b89f28c9e1f434e245ddd94f97ce42e7b7ce4dbda67d73109f0415f84e8358e0a54bc230c76e379cfb697005ca2e3cccb5a89df469b30c315d53e83306f19316440ef802d6014de6967140d6a173df8533439961519bc2860261a3553c9f6d5310e5926cdafd86d38d1cbcdeaff4cb4060c9830a640e40472dbfb9073e67854f427bba819d69caf1b75ac293c4a8a3c2458b43fdb87bab0e46202fe96ffaedc7ca073d9f7a45dbf03df22ad7566e24f8c4945ca4b56283f65af6ff32f074b8463e5271c628a91357e8b9f6b1b36693d99f91f7450c1ae9566755c55bfcf12a3e46571fffcf7bc5c90a72ecec4a8490539c0a0b9e90c8d73923ae4914731e710a033ca33f5fac5487a711b90263f302b228483ea94d085aa3e262121d787ee6a027693ab0011f72ba1312f157a523926ec9a7c23b270e446ce394fa20342138fd44701cf268dd3350fb6afcd3c2d44d1ef83d78cd347f1011888d08e946c0334dd6939ff7247eac35c40a6c6ffbd76595e3946ae5c90093c331fec50498b254adb6a6f68516a9f0a098631c1f0fc8b73cb2f3264e90d45fc49aa022336f12441af5de2836bfc2c9f3edbbc4fd906591f109ed315efeb1280ae7da4be98ec12eb7699224a40d8096bfee564fce6e9da879f2743f9073fb983e4a5b5eb0994d436159456f08debbb1331f0d9c06a294d43413a841f307044c53032b9b0cc3df0f094412fd956bcc2e0e575b4cb6613e713e7e97bbb9d8d5068fe64e354c754312eb2d625c28fc7ac3e3a38a126c533e0a132a52f749683334eb1e6287ba2dad31399dfd2251c8de8a119270d6aeb21d349f61d505523fa9330cddf08f7401f78731fcb84dd241f028501141f84e576b8e82718be4f87bacc25d057225d4184d059f7fa105fcc5668825dd8b6f78944c45374b2ddfc82726c44764fd28ee724c7388c967a3711f4165fc55d1b82d8e9b8fd8529816a425fbcb512f2529d965002112c5dc70427b921b2d0b4a62169302045f6a36009a8f04b4a58d040aedb16c7d39fa0c1e7bab20f846d0ccf326ffade78d572f95075513bc62f0dd83fa13badb9274ed94f712d0944819290b035c302a95bce32cb53d221519b4394ff70ab557412089da3a2594c3d7b53b9b880753d9e1df743750d77350f1620f918e4c5fb576a955c2e4a3948855b56e690a4f54009f17547dcce287759b5dfa4f982cb8826b520178a0fe7fdea459c16dcf90dc0d0bc9ad642f3c70ff31748fffb232beda3bb342a5fe81f005c0132d2d350bd8d296f434253f3354e476a1f4e702028face128caf3e040c4bd6cafd466ddaa23f22d07fae476607dad18c6585cd31aca3586eff7c0d61e8f262e8db2ca7831fe72e16606c046a6688674cad133f769eadfde22f84c0a01d4e268b639eaeee16ca73f586363ca4b64a008a2141b6b98e2b671058ea7e513e6a0338670435a95f5a7952e89e4b87e20a48a20c84c5f0006994dc16873d6345eaa4838e39124b28bf669b593c4c17c029da51d4d9ed4a390eec1b9af1dc4dfc6b526615a2d27c510677245ccaf70e0bc4f0de06b61270e5dead47afaf3a481afc9af6a84d216e7d0deb5112a872eb63678c034fa4bd4b3a5603018d01547482090187a16e43116dc0fbd10acb9e32850519729bdb64949af4cce127e488d3303d3ae9afefaa13f985b8e26abcc180aea35748b4b31141e341e4dc5d3e75b2c73c6ec438a013a6b7f2414f2f90dd4c92ada22cd87e5a0c268560cc44bee1ba03170fe4fec8203044a7a8037b92bb15d06022d31c2f92c9e3c6f95ed2366b28ac16bac74052d60507c4bc32f724820bcfba988b3a78d372fa806f3b24828f49174d7b56430002a922d9b87da93e3ae862eee998742dd06a05f25dc2c299f89ed0dd16c139c5e086ca4374468f5336d49b0f721493f620f3d94a479ab06ebe1bc3d246ceb7ec63ef1f3151ebf93d7fa5bd425b23b08855a1075c7f2a0a30a94302d94d2482410cff470ade73f20b0499c0b6de7199b849ea26a056cb750d9802075d268295aaba0eaa1fa6ab1410af83f5a3221041d3106c88042f475d83a426b1fd96de320373525d4e60bb5e3cc8967ec79cbf9430806778d6d5f6f8ca97808a47cbde8854c2dbddb4b8c33e778f227eeeb57c8af9ecb21e2bf70de19ac3658ff903f1c04a2b46dcc76ef3a4abdcade50d95be9833959bc778fcb5dc28af911d8b87a9978dc0e92c35cac74af4cfe7e89888b650a5d99ae57268165a2f826dc9b8fbbbb35d2ae629cdaad1acc3956d19f718b7df8b81f056868a798cea33d94a793639720acbdc92417f138199f7e0c8fbb2c1ee581c9d3da20e5becbe663bc214776c9a792e25a0bcd38d48f58e42586fdd616a0f315b0c0befaef8f4e46b8f923dc1a723e1e790caf1d56caed52828c1e54dab94e17a69ada4e7beec62551ac60574e5a86a256b2e1f3d92480827137d4514df28ab4dd79025912cb5e8291f581eb13d331b9b56ff2b2ca242bc04dcbff2c5f35822d1dadf00e97ac0f4e22ddc71e47613eec6d5410f6547a7bcb608648ee6e0f05b6cdf46a27284a1fc1a96419ee4def25b1b2270684dc3e16c09407b62aa37654b08527ec1a4cb7d190fd25b853ffe11ee35b7e08c81478390cd44a179b4718bc4857256b934c6db9ca2f244c2dface8592db723eebfc423c3709ebff335adcd3b87a5ef485ab737a1f3f13bf145a18fc9f3b0a3ff06c22995c687c4ff0ff1b5ef7c934fac63ba846e364ecc417b4ca5f45f832ab442394d843f1c8aa068d225073ab6d4309a330e3aaa30bb8574cefc13223a0e64ed99dbbb838bfb857fe03e2e4514cf0d76e077e7c63f10118490e6603962ef9c06b5e1042b64d01add19085d4936a2a5fdab020c3a2bc2ce785059f79032f35bf507786dadb526ddda2256029ea6a68a663e0de5f7210e926225200891434f48b5cc49c8ddfadb71ece0c08d7d64542c5b1f486931c716fad62574b4d274db759fb28a44306db4479c7d4214e30cf5ef8bc7ee22924b0b743769f927be8b824f03c7f86f5a7dd2622cf1126766a1715fe436113db6afd003cd0e550758cceb5720bd66cccc7b408f12dda74adbfef6d7e71df6774b682df0b44602108fe0ef4297452819918af97a1f304c91561b780053f45a4027de868cf3c9ee83c54e8d8a989dbd95b6893abd51e8792e6ea0858b6572ed6cf39f65da6d1b7a09e0a6cbba3e15317b13bec66829ae90e6f10e69fa57e07cfc12072983a73ef54ed8ff5baf6d3cd800341e39e0cf16402b92c7e44eedc7d7c93ff628250add2b76d59f02c20b705c1875cee6cf08c5bab880cb879d970aaf534a8fa0f8d95db1b085897703baf0f91298dfa4ff4fd0fbdbbbc602398e90e491f6eaf98f5ab9fba5d0fd60dd0e5450d1803c286e5dddde5deb4e25a90ff9757242ed75c1497cff65a2824421b3e21038227d586a75052690404102bcc2c33fab82b6a788d30ed35af15a5bff9d16b16b1d9eabb6f03075ec29bc785bd0fbcb39c8eeb39c47ba8f4348a3c0233586dfb0b68cde46e3245a890afb1766582b9af79ecf4fe856d5056de75e026f43a1b8153a4c4b68a4a2a7f4948e5f06f1b3d0a1902af33c1ff9e39e783d8e150746e2036bb7dd07818c13e5bdf642e9bb29b0ee32cb7e395baf1b70cb8d1b0f8161186c00eba3556ea21d1c92393ceaf708c1c47a7f4ff5492be56237332515bf637b44daf0177be0d8bd150ddbeada2dd9b3e854e5850b7ab81a937be7ea8a9e58ceb32aea03ef065731c21986f3e97fd2036951aa272c595e0ca6ac0b447d9330a46bee0a456afd2ab5bc6e821354a6f8bb1ca35da45fb7a5cb9cb03a88a722de96957ce2914bd26b5a6a08ec73c94aba7d1bb8818b6eddbf9b9053d6704cc5ec81ff77d5c179c7679518b630274375f39594e336d2795d6cea69da00cc29237c6a6c35dab119a2528de203a3540eedc931d1768d186408e1eb683640f374c69e8f4d5f0a9376e899855ca623c84f430920c24f1801478c1d207236d7344ee5bf966e46ef82c2cab93caa73fb2e2276086ef0077095cc48c32ec0f0b2dfa1a6876b36a9a35ed4d05158dd9eac266d83a85a457ec8842d20402e31e09e96ddc62ccf65775fa8563d4003e24697cb8b6c9378230d539beac6da54c3271a7bd1926b96e91d8ac1e82f8f7c7801afe275842e68dc1324216419a4bdef2932d46ccf263e5636c9292e33ec02fecdeb59beedaea7f5eb3eb377b3e6c3ec331ba09d62924b7c2ee0e1064a68eadada849a55433ffe151c70b425f05025571442d5c641502b5833b59cf00b10334c8d562dd097a458d53edc2ff30690eb0a0ed0f2d5d0fe4bcf558f924747feeeac56182534a32dd7c5904fd8cc8759599e591cf4668283ec1dde9c466a93c2bb39343591a49cae26c99f1aa3935d854b942a111cfd151e6585da01bf8a94309ec17e56d47719552fb360f55e99e6d32a4cb2318889665f7c99ae6182215f800bb2d14634bb0dd2728e15b2a545a596dc7c6bc96d13e0c1604d7e0f3991d664a686106f83d8015d50529bb1b1ee0d96813d2129a90cd785d146b028d42b584f6e123e6ec859f48c2ad2b1556d2db688f8cb1eec3ce83cb088dce6f4f59c2550048c43e55e2662ad09fa0fa2d902bf7b6304a2c7f2312a655fe9200cdf3aa9e99146f9be1d407120a0782bd7eaf1cea2f2296d39fa78394b765490557a2dc8bee6c3fcd8b5b80b694971da04ed81f6e2e51ab9c408efae7f10fdbe29aad890de9d9dc38146adc6532b207e72e978776b4c30e99456ff7164414e7bd363df974175b21d329000420aeb3963d97e39ec5054a69e0e2e068f405f09fbff1019a015b790f05a4fe816f629a4dab0d8f60472c76a11bae1f1066b8922e1f42a3d0490340e0af33caff8a66731ea6712d084b52b8f0bcb513ff82fe1f4775af0904a1fe70c8e28b082d9e5e786d33885b2370be6e617ddb12cc6d3164f0109b3bfbcbc107251b10bd92b7473cb8246e8863d141f7b7f0cb6efbb402e0ae7ea88a86d1d5f65d495fbf8e9a0ea58ddb31275d9b718cf1cbeb030c814d033c2f7ccb5480c5bb7ca632641fa5582cdc846c159edb29120ec44d6e68c5b5afa0f799cbf81923f5c01cddbc63e54087a91832b4b786cb125ae62e8e8ffda404f6c11a9b49568047e2695c180e5608c20bdfc9c4734f4ad16f6290bc571848703261e19ab2d542ea4689e7143fe2c738e673fa5a0e9d7f97f370a97ea1c639e04563113219d761e302e126a21fb51268839a55924ec03f79c63e1368b1cef01e5df770dc796cab5932e80376c1462d51aa97c52eabdd19d6a2581fa52c064911efa30efa60782d57a11bf3917e3b7f51af60591e091a791657ea5c74cb593ab2029d38ce9c7843088a5bc1f00e8d605dc762459181567380e5c6dd230af78d032501f118652e067c1a38cf287d23eb33475649d374c7d1d2ad1e4d9213583c935897866f50dca4d45e6659650a2b27c25d26b495adf24c767422c29d7a5ccd08a892d951454ecb1656d143b9a234b8b1a496342baa3a12bd3d4a0c13c874b2843bcebd73c97566aaf39f5e2b3a729d067bc58a60178829a62e15c4aade84eaf5bfa882b6a01ff870745122c9e5ba0843ad8988a0df15808d27dd53ac36b8b9ba2738ac50c191077f483857b47416fe9fcf1637b7aaf418786c419b0e1420636d27235e897160528c5d908f6e2163f0961a42ac8a9eca8eab63c07eb657ece30714e8353ebb6e122f3a18a133db3f22ad36310a8bf1b26ddfaf0cbd8a15e7df3ab2c7e6ccd704004eb9ef9c124de19b661b8f3741d4e8734bfeaa6f6f405786ec97b7f07f9e62bc13e99af8f58f0b60643cddfa543adcf744ad8c1e3ad2908e18314c59f000279053050e9707d4178b5da0f1fa27072aad88fd2424928fac1978b68e7d994f3becc8dbb2ea388feb54d95a2ade985fb62985b60330b99bbebd7a3108d270a81d2dc1b0d46f07e0760bea87583cb5124cb78d039fec76371c0698a08cccf1be03e92d8634646dfb89ff43dc6370e3eb349250e0204d15f21ac12139a599999cca6567e90031e1f9a634baa5eeeee4fe1c9344b79baef9306c7fa56911315dc9b19f055c2110fa5493b34279c80714828b7381f50cd8e8a261feb8559e1324007763d2cebd85e2022a868eba74858a335e3c0aa0cfbe9b44e5ac63c74a80be9a200da243899044ba2b872ffded6a8b08885e1add95d3285b172a73370c4684246ef40183a13e7c62f85e0680a23555c3b0ba02249c8e92f44dd89fed51554fd3e19207108dc445defbc90b342cd484b5fda4158a4989650db194fdb617f473b7e2b50daa5c6e7fb531a2a23d7947567b5649dcca37820516371209043c28970183df12bb1c946b7d39eba0ef6b479f3c3360a7b9a45d507fb3d8fcba38a5bd368023dada72ec1005892d200552093e44c80558318067d1cd9495197061698391918cb10348fd877374696671014d3d1ff6bf5a806dc2bf038284137021a43bde5bca56251a0cb49fde27e0205e06481f24f218e51bf0a04cc86a0570f74ee1c0f465c09e9c95d3a08f477faf21766a948c383f06ea554f880797e588ac0a2e16a254806c6fd6203fcebdd34c0db6db63edaadd2001d1052e47c4c740b4deb1f16cff1014e7c855939d83c03df635eebca8417ebeea58bef8c4a401ce8a8dbc62f4974b5ebb3300040caca6cb34d8699883bcab25ff20ca8e21e3a951a1f9d84a274099a785c2c05cc28f12e8219fbfd34fc8ae010ab665ec1b478f9018c8d9f8f09aa636e591e23de877b288d5204d700c863789b180005c06d45d073b0bf55a5fc7d5d15499b99f9e12fc8f336113fa95ec38f2cc79464e8082be0c1d97c41ce82405a2c16a876494cc5e2b645684d38c78a7e9f4477fb1e05eb29cfdb8e5220ac7a15d58d10930e2cc4f086071ea87e95be7b20108bdf2b27fd1a24570d9609865e546e41e676cacc02f9bb331b344ab06bf55888ffbdd1138886cea0be02e38c6ef23055d8e0c8e8a4f54db77e55ebd2ae5f189981a5d807ad0bd629b563f5225302803978bc906ddd8030b75af4184af337701970726c1c5c41c1faff1223ecbcf9bbc67e2c6c1460ba419fb5e76aaa2111994a76d20440d7dbd37dfb2581ff1dbdc802849c2ba157f47b405f1940cd375538ec3a03159434bd633cfd4f1c9ee0f0d9946b6d504502519821bb2cadb15db5d7ded8fad559cabbd4af5753857019f92bd6b53e69e1dfd15c8e4403a4e587176a11d9e9ca29565dca2511e6d5e6d781657b13040eccdbc26d234f81521197a232d82d5d07f07bd4bf0a411aa874f2181fff708d7a9bc1c2d13ede3d8cb43fdcc8facd94c3e28b20fbd977f86dd1f967a2db47565db4879b16e872900b495ed5ea262f65212d0c4248640bb311b68b228a6e4ec156993d5e7ab83a1251830cc806e1ea9fbf7dcfc70f911787c74b0df3db0db3ed8d0be1cc7f897de9a40100e1a9d8f30adb31824dacc0675489d23888075283cea875fc286167da940f6fd50b50bafc2afa61152725328c5b35edbe5aa2631bd46bd654dad1d5d552ee9522409c4c4c9a85dcbc93240f5432944d475a20010a586de9886cefbdf9f9df5194c11a3c3b51868c911181dc1aae565054d65714027bd978e40fd458a55e686d464dd1ef45187b5c060c3080f07a690129bcd10c55a7d0577b2c6f55262f7033510a9424555449fc734b2b2d8aeef09bca1ca7a5ba26ae3e396362fc9a7e74f4106cc428d8a30a674b8e4cc74d42d2d03d317b8101756cc0391482737ed9f2cf4d01af1ec454d9cc9aa32449d450870834919a3464148b72fe45b851079a057292738155f38ddf0121f524108ff3f5cd0908652fdf6f01cbb6ad847c4f87604a3dbb0f9d86415e4ada9c77119e25a5e4726dccd4da257c15b6315b345c24e3b0a31239f5b7ca539fc5af22a805a4e5c076180e3c8eebe2c05abc6856ea723a928d95dfd18bc85b1aa978f1109b4bfd4740f25e2608bd4bbddece7712a4b6f5ba8d87f536feb29ba8757d5ffea20d5e0178111e7461fd56ec0b1095d85f5d005286bd12b08729845aa4fc4a93f79556a919bc607a0851f1a1e2c290cedbe7049f9ebb0e6138d3a9060cba303cde162cae77cee268707818d66527707b383528bbc3bfb02e3bd2caac499da90e1c4dcd80d9df24a49955b800011e8227ca9455e87ee90b30279a7c0cc5325cbf9b60628223bb5234750cb6218044e078f62fc7ce4b16aa97020b5c8c3cd0c9fd5c1325b26ded4a3978532a02817d546dfe214cd9214987f4a33401dbfe6e466aba3a0818da408cac230273c7186c83eb3561526dd5c910a19611048d1fa788592fc35ec822b1bc81f7316a94f7644b24e2664517c65ab64fdcec222b5c8db06ac432e64e3981c538042b7277589166e50688a2ce306cf0a704c1d5864831b9eb36179d5416a91b30fc121d2165980cd24b548db5c8b01e50b99387eff1723eedf45231384f16379864a2381fb1b046c390ae9cf4e88feeed1c3c77925b5c8b3c48697ec53b8f3a8b5c84b65167985d8223b36306416a90b7b1eb230801ecaa2abab127072df39e4776b4b73bb1df9437a2fc922e96b95e85c8665bed3179f4823d186f1500060b81a5a018921b654b3f1a055febcc31ff6c8221beb064a669d0d1359e4214d218a362093311965d95c2b0612a4452d3afaab2c689ece37bd6e41a7d7bc22a4aa3caf7f75c32c5d6dbb7c37021659e02e639c61dbbebb042cb2eb89fc2b484be1c480c6a2b91f07a836bf7e6137d393c5a13250bf4d0dd8352da4cda2a56d03927389f52641501cd2fa68153c08e313a6c7e22823acbe795aa8388c99e5d838e05e8992e2a202fc6b115bb8a112ae0a6c54c1ebb2bfe21984de435da38aa9bc5b5b9372fe6821a2e9997aa8e882505f3611dfb5b3a5952802a1cb044192517d7e95c0c34bf27e63dc8a1370770fac404b55abb6efc4f05197c97d7c6b99f130a5ceb5519091a36bde27eadd7c53723e839604bb18530a925e9484ea85503017a19f9f05933556492fdfa3a9f0f33951bca888ccba5b179a015bb88d36b719020921dd83e215092f8d0c3a0d1892aa4b7b7700774bc4a4512765aecc63cef94b13954b000f2c681be0756d8ec96ad6f4f641a228c3cd96085fbcef63dde2d7e8993dbf911218b96aac055da574e5affe97e274dc403d5f50075be2c8d6db7d6d3b239c223e48a339a994ba71da63ca4a2d6d11261067402d18bdf0161c5f87f0812a5a4453e6ea36bfd92c7ce2a4da7d859e088b6a5145553478f6f94d15f869b7d9209d4c15e44b72357d54c6a7d0bdeb186f50e2971b1c5ff0539da281cf17ff33b849afe019077166dbd44a183f1d81b5123799c88e84226a6316504d561d19823b2199616c0edd29605657d1a470f79613fad1cb98b21093e43c25f05523edb2f8445c902deb69637cfbd04a0b02d352515d6ee6a5d1fc92ede8f26d4f2b11ccf4dc1b6d0e2a3ae4fb43069a2717c3dafef83b9434f73c2117944812bd2a9032037b5f2742af3709f364701f2fc221839c88186a7a0509e4e6795ecbc4fed6e7660bc5483f8589fdab0706a78c7cfbdbc8c808cc4a797719a1cfffc7b9fc8a5af9fc8f66cbbbcc62e8be7ed7c777aae6b675e2e27333514d30ea72f168ffe2801baca73238b3cf1ac6604d12713afdafafcb212561b3f4bf05e790aae0c9499af42cfccbbc236fe17811520e00eb4e3f18d5265bfa8daee11498fc0e12ea607192cfca212d44eaffcfba1232516c55097cc5c51a29d7f9691e27684711ce10cc2a48bdf6b7e14964f046d7607e0de73f7a73a4b52c19862ae6951f7865b67719fcc0f37ad8001f19f2b86db7f414699b6a902b0c0d93975e665826d482e60c3b6dbe5e78a556da9aaae38bb72f8dc8b42657f166e094ac5e144de2f8ff543eaa0e90a64b0c252aa23f18dd5f1952abc459e9187e2928c0969805ee9747c5fefd9dc0265b6de5ca9d88662b4cb284fcb91b0a9d7d6a78c0a3b701ab918ff414a59c7b1e3ed17bc3c154de577bfdea42756a73a79ca567d5f3560cba780c644b12ffc5b75cca2b60f9dfcb0fa7ad3f79e8b2b7c44426b7788c3b379ef341dd0a843c4ea5f0adf29bf62a70e95e0ad93aca9f0b7376804255869bdd85304318326d75e25f008bb17189b720292e0c37cae880cbc40248d1bbb398b27147003294c556b83fe1cdc4405930c28c27195bef4a06ba32941b27f9384ffddcb6777bcbf98199e2de8efc516b12ed3f45b9719fe5ded0c06945f84bd362f1988716fc8efd6a9d21424d3a462b9c2c41941b15b28c1bd4f3ec7404cd306e3443b5709cbee263c059173eb5a30f69b316ac974d288a17bcefcb5258d2cde42f3e13caadd670432e6d5bc8dd28cf9a04b894506a4bb52d1e23337b7fcf913d91c3eaab1b6646392a6f33425de104792987d7a3bc1e76d9cb134162e84c70a25187e30b3604da7f90685d90ec7096bf0e862fcd99ccc652552d550dafc44a4849f409466dbb82a7b4f4c71a3ee4ef30f56642a9524bae5ab7020a8b0f927a7323c88bf93cb57bd0f1779282e8ed9fdeb4f7abcca379812972ea1cdf5eae4920505d5517302aa276949769c221469a59fb199364979dd3b21e88e208c59fea073be8cb4183403bbcf758eb46818d29803439ddc121b1be84ccbc6405c8b95566533be3bd647648bb5b9402deb012793515c66ab2995524ca4d6968ce6862651adcf95efb7235aca7de69956407359d4e206b43690db38c923a717481605778747c0b673db7fbbe70cda3c14f6ec0d5312fdcb3d2576de27f6343bf3dc8a80933b906112b683cdf65f047a6cce9677dd293bcb72a7c144802ef690e384861a21e82e4074e6347fc1f3d1b2f99234708dbc8985db439579d45e604154a974f362ed365c43551676524cfba16c06c800587a8632ae50eda2cc53524ad6b2e2182d479d90536970d4d0a2b423e2946844908dd0e60b02731e230c427371b20611aaa7cf9be387c6ea7983400b5f375245c980b1f284138af5e77b44480c3a6bb5702148a42024311b5cf67365ca95d5ed3bdf119f18096f8310507a0aaa80a7c9526897277294a8975a3c27390079c55dab7245b7cf7d639256644394f77610760f4fa698b4034f3f299905a3b06bbf7d5ab1d6bad5787965b36c601a67b4920536042e6b37881056fbc0984909d275e279273813a2c5ba1c3d98793c9a1f2a54029729a1c468350e2ec14c1139db21510ac639d17234f76bcfc311918e61e059edf686d3e6f6e42ce80fe18486389ebff5c86f0088e8835bac73e6e89fe5688dc211bded1622581f92f7566a9c4e82a99317b96ab2c854a524e23918a1780f877444eab79af72c4cf5715a367b708087232093430c0ead6743364b773811f227875582585f47a8251982900a42423a28da7775873d4b90b15162695c06ba34986a62f756e3e6166126d838945b2b3b1108602d0a841a73ea971568b84f06519ea4061d08d9dd75a1af5d168b0cea404607fa5470e3dd826e1b0da7062dfa5ae57579313955ea7b8165a775fbdc3ab28899efe4ee6e5435cca509061c2c31d3254237a7b7d5456f16432193daa52871008693cfef993ebd677187ba6677200122b061dfb257f385229b8c6dbd0d64730fc20bc96f400f121be83c22bc4b89655cd91d0cd08b018ada054d96a507c841dc7ca7f76e7f3ab0e4c0328a345974168e23940b96a68a7d897444624a5521f98bb854b48712f343cbb8b6b2d3cea5982446d63d41524602178146ba49141b4be6c46fa23223f22378550f45d230e34b25acd0992467d7ea364085a3abe365e8c74787cb099631bf698ba0342e6d5bc33c5b3042f085d0ee2d56ab70bcf1e48c266ad4a15506111cbc3a97e2001e83fe8870f1084bd665f6de76526443fc703993985368e408c879e8af9dbccbd1c4dd8cf12be39c689a11d2b6d4805db73a200f2b67d988019152afeb5327486f0f472b9403c0dc909b10b65d93e6e292b50685a730b482dc72462f445ebadbf9415496cf315ede48a9e1f1981c059f2a508fd50543bbccd828206ac04394e34dd6065178e8574fcf78f828e005b414c2f61f8ae2efbd0b2bdea21f5c5538c78dd099494dd7d7a8927b87718329218a50d9eca9ba3600856116d59c969bd0bb6dd05206905705c11e0dee22104e45d4ad6fb5bf93a9958870f51c0f44002b1dc315e746c3958512167d6d344df8b2c918fe8a19f0827db4ec6440e2967f1db4d9c52990c3b2dfc21336d104049c33e39c680fa680d7df4cbe0a2ef19e1a180b55dd8f14bdb118181924db5b726951fec74bda350e834ae3e615921eaed6a1cb82b3f1718beaaf77ab47e23b0a595c354407487a2733b45184b3797c153844889ca2342511e87bbe06c903f076d5dbbb6dfa1f15127a14c8d3afdb0a4a9a2cefeacd8b452a55547595850af6d76c10cf76fc811aee64edb9a3e4ffbeb824fe4efda20245bdb66fc384d43374e0d270fbc1009e6d583785d36b06f77268960f4ece7f0ee1217c6d7e02803ff92b8e90713e9ecd006e69db96ea8559b6d0db94e0f9767ecfdc87f2dc4d7ced9c6473143a2d375aa29a9de344c21feaedc8ae054819a978f957b786bcd39875b54353afa2344c895e11e9507e60665e5731f2921543c214eec360f7c0481085f796ecff0b944e057eb7e22ed511f4c26e38118aa25c3d50c3d0db9705fb8890cd5346e5bc5b8ad4d02029eb6dd1ef31aff82785691f0c04125c4949c7186bf696dcaa4280ef3777badb0c3c8760e091198b6ccdb163d08d91c0668ef888e86a05906c558353b8d32628befde3df106d2374e24a0d4fd329e660a3b8aa060c64d6fbb965c854ee1ccb59a70a718cb625c94c7434711fb672d39b83e6fffc453c6efcc5b80aa22ae2242a35088fcba075ef0e33b2b3b492a9c3915bef8fdde479796f849ac91a7afa3e76e1b50544078b704a31b3656d94bc81d1ae6a6059e14db83f73677117654e3db2612b8a5a7e9fb395aa86dedfa1099c68f034caa0cc27f49bdca01aec9895e77d4045f27bd780a49e058ea30c652ce23486264b052ecd70f5d110139d24b5c32974badff2b2c63b9bb33b9dc7b9b493312d06dad03b173577d25c20316722cb7a0829643f5cd40ec46f34b770ac2d594455488202b4d397f1998de22a0697b33baa06ee2a1982193b7b024a09fddfe31b75998b050ae80d0ffc78af40d32573432972381a520e31bf782ec44aa6f99aae0823d844f6798825e60b65495bc3e118705a62a8dfb71e7aabcbc06390425768d86e02d4189b4d9116a12821854a3457fe820b329857df1dfd1b0c3250413b9bfe289b76bb70fe47c4f4c277398973903eb3666e8cb311cc8be75f70372abc722967ad7f54fc86db2307aaf8c0aa3754bceb149c331e77b5d085201bce8b5b3262232da07bd6dccc3135cff961268afd13a1e17209df6ef43c03a8dd1b4ab7f2b2ad20a230dc6476b7bb919e1b2b9d03708b4cba53f6864d7ae6926a48555b51725afb43e3b0cb93ec3896ab84e1dca40c73d8568cd35a0021696a706698345b9eecc604928bab8a70a26567dcb3b36debfa1fdf0eb6756b6c75e1d70b570cdec8b8147cc8913be01c02c3868deceb1914d637dbfaa0ecc2cfe006725e5850781175daed19b7906087888bd9de54032176ab83a86e31c8d12551fd96fb19d3c18281428ee946bf85a4f4d8ba061a074143a7957b44c692c35c3663c29200b97e3ad978c962dcce048272a81a21d532ff25e033718cc4a473e76885fab2984928871c5fc32d19aee3b3c839fb4c8faab749cf129ccfcf936eb088041864d2b7c3f781f77f1e7994db3d6846bebee177178678cea0df4d22a0b8621689c3986fb28f46689c90a1b8794a1f04596aa5afa41380f1061a16dce766a66a15d6126744af138844d903e2ae83362d4d6ad4b06b3bb4dbe6721701ddf491aab2a5ded61ba887dbed2124726ae3d1613b05c216916087ad68c64803e92aa3ca4610210e9079254aa5dc4332cc544ad6d22bdefd0b9eb9b28038a8236b30ec4b8386fd39e1059e43b64511b133e4dad5f783852b3f20a6d5e64be53012d968374ff2758c5837a8dd5fd26e0b931587d5587bfcdd3c6fa238db55f022c779323ef378e34e9059004a806c805d2acfdfc6dcb60bcfd522685490910b9ab37e2069efb7b5ae0c8c4f53d1d6b47d61714d471837804b2340cf8c20ce71bae0e66c88a6eda9d1006965ac214e24418527bdd418a9392b6c3cd80688b8a1c57e2250e75e95cd7ee058437ae21033ad3b7a60e086d7e478670a0c72074a69cc6297784654cae29479f7790945174e6d712c5eb2e39d0ed0862824c3188fc9eb3d2d9884c761ddfc4189627ed15bb6c53886fdb813855fb5a83b8bed146fa9c3c7e9f710f9ecf21302a1da5487c5d5bc4bd7177d58c22a4ee7ef6599c8635194dbbb25ae7ec0c03bf71979987e73fdcc350c615823f4cd7901d9918c46923e2d7ab9c96b8b34686d2bace34053e8377f587d65505810979ef0b686f18bd8a9d5c8a87343d9d381c2756bac070330e702834a927964ca404d083439c29aa0273f046750390832e0c3bea2b53a97422c1e17e3c5501e1c7c843418dd2445efa4b1adabfc245020a81a954f7d1f4be4bf94133ad5cd00b1dc6566a24135adac8625ad863be94fb8c275bb7c4742a694266ab25b01bfcaf940e1bc38fd7d43aad7b0f862679a41cccff0f061a8e0d6576c0f5f29a9da1cbac8881313940a8429718582cbca0fba253780c89a9b15e1ab0b155a68b02d1bd92eb51f94fe9a8e7b5520abe6a2f1480d07e7d1da7191365a2dd20187dc5b33f4cbfc9d514d1715101a5996a60d16ebee461b564d9c9cd30704b762d0310b830ed1b4037a210a6e911e37bd8befd30c12dd467182de744501f22d123bd0bd40717ad7b0b0f5b07dea26eec22d74fd31cb03663e70273ec4bf815b741490e5185d7918246d09a4815c1a94e0c490b58abcb67060820881187581a7798b12f0af2fd9ae94478ad543cb8ec5b6e6d3384244244b48a31dcce054eeeb6f99e3a142141ad6cc280dd1a8a76319d8514d422178a75714876e337c6ef9256867c68507941e444808d684fc3f9bd9fb28ea7d2a13626cc2cb246948c4bd68ee2148f2eb70cca2dd50feacdf11a0582527802073bf88a5ffd3577a4518f61499787e5a72b002cfc2f867fc9b0f76658ae53442e8d6d4fe2510c7625a6706bc110e142248dd176e466b142b56879b72c98adb034b82aad4f1366b84488a54d4a8d2893ef4118aaf8ee308c20ef728a735e8b9d2281d15be460d6684dfd337350108b2006eee534329d4c09c7b33c64ea0dc754cf277444a1ab9ce4d7057f6e70a6ebcd44ca94095bf0ade2e9ed10fbfb5bac134d2635babadac07e0748ab971a18f7e38889e3a087da4ac72f1458c3be0eb016f322eb5083f2d59469ae41cb5f8b09a82e0b5317335bae40afd42019cd3db4dd37d85025ea884ddb4e93b28837472deca6cc731b245612207d224ccb2e2832e935176189f70698d1cd9c692cb320a00f8c99f37845a0f3397f99129db604172eca68f2fde76694b9e5754489dc066986dd9c9ce3f896532bbe09ee5d5744105477e1b8a1d1ce221a8b75cdd1c6bc4c28028fc35eba4114b018733ba2740504a35678b84383f0d29264441e8846868e4010de81c368d4912c8886643e104446af29df6dfad6fdcc7b1b3e37058b6a1e1adece1fa346d678ff718d335f32f57f3dbd59ef7ccc26644b8b66af683d781054e3303e8ca64e6056620c6b196b4b8dfc2bc7e7f3f2b295438db857870e61bfb5df131688d60fd1242d0fe04faab7d8ca4eb554a1c2ac2a4ad471840132df6182f1062ec251a899c1e902404f7d9bad9ed8281206d072fbf85ea725394d2833f832d801d1ba9b0920c7daf5361394ed0d82c5928155a8cf29b9c8b3e92e45d82e861082d38d0a4a1dddcba4d1a222a6512b154b7a8935461e1e81a51247c21286c9f4e4b9c3124c44ac5d3c61283ef1a10a60669625ae3c91bfe3d711253885946e11e7bf4141a3fb9c1c278442bb198b4f0130f065cc2a3e85c950955461bdf67d65e211d5336a510082158369c0af41762f83435a27c49070ec6fc9ffa6514067e97e4a3aad30b4c68a1728e053be58096bc3c4db41f660b40cd6ada163d27000074c660c93e4d091bec6a993d983c55a6030460dc324e5b0d07264779266b21376ef351afc22a268379f5834cff8fe7b45186cf3c7a1e1cd81445be6dcfd30d2c25a7ab581f78a3d166f33583e926ac655b399f973e9cce44f7d6ac42cc3ad4022475e03610d7d0a8bcc78454aa424834adc8ee9deb1d3589479f2cc603ca2981f8e6a8ec683bd055a6b9cbb236fdce49b0ac8c30441a14924109df9562e2c1f294b9150d35b4eadeea34e867b225fe899a597cedf17de1783618e7d26a7b1ff17df82bed1a2d1a98d0f94440301ff9cc107a8014d3139da5d948a3d33b98c83d428da18cecb2fdb341f83c051ca7b8e802cd018002359907f19d361bf020c367bdf474ffd22705d22f15a006c7dfb65922027b45aabe8dc820a44a0b8f827dfa2370f571cc87301841e21dfc7c3f8f13253329e2d0f93ec8451a207d3127b354ff441367ef645a25ec09baa3704f37285e18a3b5177604c31a66e6c5ebce0d1b03d0593677c059fbd8880450cc089465bf2f80427c1d747300c1326c7a9bb9c62ce4c832b97c35ab276a1ad7796ff9713857a6fb4d9d33f1f2dbb25d995df099122f930e1329650cc4c693a9f68e05858af654572733d255b60612e65a0a24e71740ddaf8ea7371bf95e120c8959aad456291e2b3184fe5d01e7b0a6c7c6409089a2387071c018f9d9989cab60b602f19190813ea75ee992a77b8b37794560d8c302dab3f4d9aacada65590b235aa74794528aa5e00d19509431e83f4bfaebabd4f6d538be554820ceaa598fdad6b3adbc329e816200fbaa81d0a29811d73207c6488382c7bcf10cabc65c5eec6e2dc112a61e290d1ef6830b82f82cccc5b86d4006594108a9810872e2bf21b23c69f5b8721fe9815d838af81793c108504559cc205081b62c60ae81485a938ac30dc368e88df2d77e2b98ac2e82accc78e219ddf9d64555c2ba026e9608ba38a2fa9d303471557092f8300d8085b2d77b646dea3bd035e3f435aa22d6554a53b79a2ccf5919bb5692d921b20165e48520af87b682a30034f8becf721ef4631d6e7558abc1cbb02da0e4620ae429f2abb805c95f03cc5c5ab218ba989d0b62b839d2ab89885b66f5241c683ac2aa786a9f7390b0d992f90397db35f993fc47151c59e3855b3b270820407456f50f2dd203e607a58e302826fb6bc2728ce3002459756e90a320dadb6d7209b9891b784268f2b53334e1eb78c431bcae84814acf0fd17881ae510a3bebae8823ac248178250c7e3d5dc993a2f345aa33ad1ca1eec75c85245a5ebd9e56014f5e1628a7a13d577dd61daca00cce5f261dc80b95c19f016c1372df0d2a697b4b944904d9112f8688f3d30bd1ac373564e7abf9199ad42d6f4e311111eb34e27c26de56e37db41ed608aea09542f620cb986526ce52bb27151f5a981bb1f464834db74be6f1f0f1c0e6fea70c34e334959a8e51cfc2062890bf5a9e18ea066c6bc0e1568f4aa69a4613165427d323100d176290638aa78e6c9135eed3eb2585c2f0d282bc4e36c485b79acfb192c53ee40d4015cf9e60b0b9289fcaa503a1e0282afa08cf404340f8921f8f2a047d4d091f94b7d64eb46fb117c4acfaf8098f33672318e4027242ebe34011c6b463b95913324c39d5ceaa2a8758b0805389726acddb3e4e4e6bf595406e0e62668c4cd558827353f45d9f90a9c8c7b6d141b06b06f301a436ba3b1f92c93929e59431d927876730bba44470c9e7c6dd0f9491cd33c7fa8a19295f7c99b2b93bfb1a54f533f1350d600ad27a008a0714dfcfb6234b92e4164f5c76f3e89cbeb27f0c87197e1e5b4468aecf8d920f0eb1654218970942c4271378126755e72a5d5478ec8ae22a8744830502e5696e67e6350f8d68ff00a654fe4427c8970da0dee86fa5922715b5b43ed541e71e9bb3ab769293a5cc27d6e00ade9e9f4a04f451e4089743ed45d4012d10615095e2dbac6f1f234d9de11b74c0b4138eb603ba12604ab5dbc2f459b918028ca95208799b2d4825d1fa0f1eb005586ccda305950f605c8c04915a22ac1ac0fddbce866fc9e4c461af2a8ec7e7d167f263b204409dbcd9b3ecab41ced3f2aff8e6d9bfdd3bb54df4f9d4d953097a1c77267b050cd3d5ee9a23e11c31b957e11aa595fb514540132bf6eb891681e6a70c1b05134cdec163dd8394529967923e7b68cc6c1e7069cca9274fd3d1fa669eb577ae65000d3cbdb9962754b2fb5308824cd02e019e1842dcefa4aaa419bc3f56caee346caf47f231591646937494f9e71713c3ff989fee9c43871a00e89287bc9ff448dfa6fa9ce42c49f0505d0dee62e758382494ce6d7dcf85a0dbb6db72973e9ac8fa9c4bc4dbcfbd71560586e56bd5b605806ae88230488a50bde3d0add0feeaac50f9e16242ac59f23a03a45bf5f1fa1a0c043125ba7e4ed345fc142f07297c9f0e6ebe502751ab83087d1f61e8084edbc0f0c013f31354ec79eef525adf3529c4e7411fdf9bef001e7d00d90b1d9a29ffda823596be6c990cc874e8fd29e414cfc588e240f627d4f027c9db3a9a7ac62b3d927f09e22df5caa5b4661097eacf8521eafa9a717b8c80f3b40bde8c6059036cbd80b9f40ec48b448f3c58cf081b27ef61c45ea867c401384d68fefc7a2484dfe1872616a19cb530d7d30f65e629037b0e95177a3fec827b5b27c51eafb51fb6151d67f1fa2e7adab1c69575d9efd95bf087feaef64d66f913787ccc02648c2e2e93c7359e2df04077c21b7b48da52b098999ddca590de51286c7197a87b6a1633d37de3f42db9bbe0c7b6208f0df9782a6e49ad19f9d7cc1145341632560eadd8f89b8e3d3a15ac23637f095ca08246e96cbcdaefcea9c1e41abfd29a6ec289157e5a8573ddbe4e6fcbb27c90a3cdd55148eac3283b30d03682a2ab9fa596d129a44416ae30d89bc0640a432a4d8041737477609ae99251dff3ac1fb69da95f0afa79a7d7bafffd12c0c2ffa7d18fdbe96c9b26eed50a12415966e952db1bd83aa76ccb5894c37314415de741c7deff01ae779a05600c9ab0f8ca0bf1bfa5471777d9daee184d55c526d06c713759f92b109c55328f8101b8b7fab76c1296210e6d15002f50c77b2f4c91b8262b084dd7ea8f3088b893f6aedb855f1b499272759e1fe3f1162405e00823cf8c0fdaee6b619f3531e05c8a93885b75f37206573bda1d4b0b90b4f0e59e09dd97d8ffce04f3f5667efd096d1090ea85d01816abff2ddf7712ebb4f504b85db992e09107bec54e2c359c1e37802158ef0b112fcc373bbc10688124416051af0cce3fc467ab6c90ae4f059a0642c580903fc1e310d6a5c0c8be651ccbf9536b38151c06496b54752b5ea626f31c3d700fa5165c8703865be6e27a8c1bb5286e28fd969c88e7656073a0cf1ccd5df71778b47d93a98b783a7cd241060c91a18718ea862ef18fec087a6c1d255abca222614ad36c15556f157873b06b78abe15c8db7c8bf592620634582c2fde4aebe2fe36da0812d4a716f468ba06911ce9a3ea6bd5a39ee48b7fab6b02bf2856b286df7af223ecf79d6c50a14509d01e4bc24895fd66bebaf8127b23eef00890990b5642fae4b841b8d85c7f0dfb5286d5956949a60f53b0b09bc188ebd18c4d139ebdde6160b840f7c99e3a5a423b179c9c066cb90fa034236215dd117c65f83cb4a82811bb832428ae30c5aea6cd5a900ef079495f7b12343a1d9b9c8942a8cb405267b04d239b94fdb47c33d7bd8d07252c0799e52dbacd16e8058ef549d41d561a0611c910333329c8be3e3131c6fa3411e735582380547a11c2e5601ba1f4082fa49df978c00417125f1963151d810385f55d7bd2e43251ef2c9eca5ffc03f8e63a454d36a4a2cdaabac24b62b4099f95ca3b1ada4caec24df34eca6202606148141e7724fcd4ffbbc14cd50a467d308cfb19182faa9d3bfa0e3995a553a05067549515779d9f6c1257f701acd757d3e50a4ebb490affa47ce1604b4e3cb6e42ca734326dc4248fcdb96b8eb82957b5ae6c07bed867f10e5c07feb9ddfdae10bd072104d75ea5ec38159009026f20d209da9d6880bdf4a61528c81128a1a75507454283a7ceb01e3879c44c064a491b7fd2586c87ad33d2c22eb054aa60b2d6fd4371e007c3e5eaee53e76128414081f689ac6740cf4a001dd19228574e861e1833291798394aed96e0fd120e768183f54dfecc2f09424ab9c101d062a2e064413c9b2d6bceb845b5e4d861e16b67413b39c8b2bf51d5c79cb485df9632d5ef9c404928a8a4ea2d7905c483912a24dd80bd824e7e469d9efb7cc2e4c784874de3132e6670c1b6ddbbf8eed3bd3aaf97b47cc5b382c75c500c3311855ea085862a5c75f56ccab7683c182c9ec4dc504d01296f45a7538f64afe698eea488496520e6f62a5b20c5ee0567b39a9bacf3190f42e8e34adb4f00ba079f58998cedb25c316f676b6ed8aaba0779762f55127a0f3bbe7343304c3de78f1681f37f2821880e306fb42c2d21574b3b7384915739400050c5d472eaa23da819c899d6e022aaf2c2965682f63ce5a70bec208f2c972a227b0d269c7fd70354a9b991224738b049ee67524e2ffa4c253180be796bb93db8ddf89e48f449db50f64266e428004eea6624b23f4f1127a40d62422d3a2d27e05c61ab2e6108c85a44d2476681c2f70bd0641f3068cd31452804c9f515c03b68f168081f0dd3a999b7acacf35c44f6a52ef26958ba26984eeb66a149ba0e287601dc708a78a0fdcdeeea1fd21558e6d1e57b117c0cb0954557f01e367c2fe6b659a5d6e35007cb8470a3d4d11d3a5ab59a59156bf2158ac39d82f32784c3d7a8b7ee5881e695c3560278e1d4bb13a2c34df5e2c41921a3e976dbb66356211948e6a701d6cccc5d59003ac536ffd796b87928b589490c991f5817a8b098810b34c869d15f73cb1f5bb48c1029fc8f58eeeb593824fdaf42ee6a4640864f3389c943488e36d17cbce3216ac83b10c0025ae827f23119e2c80d66c90a08cd28361363652305112347774d9c0e83de9c940bc5308aa2de5c0a336e7769fb628ca40d32266edb4b9a295d5b39c81f938dcab13f801110f23c1300350517319900052ab6df13ed2ae671a440965492ecdd7e093b42f8d66324bb54bac539ece7b4db3753d7b43931733895350e27856e56303e0e532c7d23f60c1f8b434aa827c6cd7a84b175f64f2025f28a78585aa703095227c8e2934496884374902201497bcf2a74390315af17b4327d0ecbf4f6a201a1c29dacb0d6a64231959f145fa6691e7ec8c0faa17f2f95a80ef1669a0e41a562a7ffe24553011df13c3f510902277fa20e895611119571243578791a8568d74cc76693a6765289a44ef5507e99d518c227c8c27b4cfca09d968322ad3560b12b9da3c5228a8693f73212f7de86c0a9bd246d6420d4b20371d439f593a4973cedd9095e026c7f77285355c09404c99f36fe9eb89e205bfafcd529bdaaf303dd62cd5c8adc74d1ff4bc55882f0eae9ff63d9cde5c23a72e758a8410c9ba29c82fc7d18fdc595cacf9efb3c53e5f4141a132e88e6d3851306985f213078911d5af213dd94f2d5fd6ec6feef367dd07ebef37fc2b4d7c2b30b8c1db7bc7439467431f1796fdd558c650a882ab2e8dde5dcee515425f946d0909adf7d298a10a6d0f7e17c14bfd323de465a1a2b0c21b5af77b601803cd94003a22fc30ac013793644729daac47de3a3c665b85bae694e21b1a105e3a5109307558f552c65c91827cf41e1bdc2ad931ac51e6db5a23cf5f968507020af560147412b60e080c1a8c8c441f7c32232299938bf8a27f8c06f1f8607f8ed6e29a5657e5832e66028db99e7ee4f7b4c74a96b1d1843960a7478cb1a0e26f08a722591154cad6c724de6bd8c164e51067b877278aa1eff14cd01a814c1fd7676b9d8353e6ec5184af22714e47ae2d77a7a75882def77283293b3add9c22849a41eaf5a2a6617bb0a30deb1672063af9320259ea2318df34c900411e7ea0637922f188629c021d22f05abdcdd31b1ed03ff88978b9b51253a9c04c423ebd56c488877eac8e6c5de86b9afe762f8d5ac60e881d0ff38fa972db29e9b91203fb245b86727b08600910fe03fea16b948d9e8783278a6cadc0b360046c10709655b0b3cd9cde6ff5025fff8a084727d6b9575f0c9b889dada5c956c4ef36777edc524d369bcf985472d8b509a7d08b70284229cc5789c596efbd0aabc6ec85f25412de2b6fcf8153c589a314e7c5eb5be2fb4ddf93b5cfdf5ef470cb96d87fdacba4d7a73012c9bfccba73705557914821e8936ed7799eb1e9bd5e1720dbe15fbae9d44f0312bf8dc39b2813d6c7e71fa85a215e8e0793891049a2876f33ade134d00d3dfcda3f42abb4d3726360eace004cf4a25a06f57c10cfe07d01307dd8b5e12f105948576412784aa382b96e83f9eabaf171b4c42d75be642b0e213156f20119ce6e290af00c5132e357c55245c46a72bd9723d9fbdbe8c3c9d2bf22c7e679298e18a62ee00a9c2efe56414c9f4f8458bc54c4323f23eeb3741cac3852380b439492dc22cc06233939e0c98ed5c5c0bc75fcf289e7b4954c456d03387a4ed9d11ccaa62968072576357f336d9728133a4ec512d96c088fe24df7e35ebecd1741cb4fa20db81dc82c7694c0faef4eea743093f0cf6e2dee4684d74041ce3d53d68187c15d4c09348a1f4df4ddd9c24fdfa27b58c19c7c4a9944900ebb7018b6e81d9cd499b566f1edb960cf162824f54a977d30a1a1c74befb9199cb2d2345f6d41f47cde35d80333ac2817287066f66823144a8e767c32c2a21406afbabb48a0a2ef6a1863827d9ebcfc9076e6319aec7ac0159997d3cf57a223468026fd7a5194d2a95574dc364323a6369e4eb5878c95a7e8d8eb7b0b563062749fa2dcec2513b896e02c41fd59e3b0d1c118450d58294a146dadfb8dc5243c536a65dcda42398da26843c4f488145ee105d70d9965967ef61ce0501f2f29141575fbfdd1f1511ebf33212a0ef6a7a98c412311017bc977d3ec5f805958c9a2f7e17ea60ee12e38bd1d88a0d409c2bd601a49bb7aa21bc4bbc810eeaf7ffb3f9417e1bee6abc137baa6afae45f33f5a8c70239bb73927c22dd9d604a6e3e89a3871b1e6d70a46be81b6d9ff5016df4845251cc548a906d42028ee0d70097c61dc7b8c2750e1e2db1582d0b19e971221d98c6f34aac5d0e3c6f7a521c59cb220c25780323dec7cc07bc92b591bddcf607191ee327422abae0d8278f52d03b5e44718e60e779ba8ec5d9bf06a800b79ea75a9c460dbbbb2c1992ba11137c48567ef96c7b8acb2f7174788bd6ade9b42ada418772d082686c6bd84500313b723748964eeb5021f3086d41e51be0e7f5606cec3a8aeaa5013438e1786e2bcdee7cdf35faed8ff22c101f963a8b0f4bce3df4b94df19835a35980ed88d8a4f67f5dde449f251d46e68eee385cf3e1dc2fe55ad05fac0814c2051b2eeebb9e709231f153d746600c3ef3e1e7ba870f255516f4e96d153ddc7bbe713c6df0a7ae8cf41c3db7dc47bd5e77a1c4027ea0bf0e4fb7c9311d235074108da9b93f14abfd27eb753f74d553925106bb23ec049f22b3d3b49a37df9cbb2b3246112919729426cbe1b127d9597e7af48767c791934941eb9be8499ec731155b616b6228098e3f8812414f15f0bb86d6421fbd37b96bd4ab78f0277f1ec96a4d85c891c570d9470fa5364aee92897268272e053afca6e36473f8e9725ce58ca81457076c2c5a28f3a6e84bc5bdd5e679032bbcc29765f3beb9210f02d03a176e819a4a1510e5a565d2ced2c4c3b16b2f368428817a3fd1fc9b52db59f556a61c9013e2898e048fa409e7e3b8218c7cb2b42b3fec7d0e3bfd9e1cd46b40d98c55b0892943b62b4c9f702f3f65b80395d1c4060de7623f8feba622d85500f7e93791343693834031ecc63f726bcab4d7ec113b96c57c9d8161cd3739e9030734ec3a3f8bb88508bb81cb525a23f22de8901394948507cb895da093da9a737216b742bbbc1de777e1d7d2d14634b3ec02210bf61398d91156cb42db420bbe5bb5cb0fa3f080c994eb42bf422e4b94bd28e53ed3a15d18da3e62af0a3561f0c0d71463ba60bec57d4e79f9b793e579ef87d426246c722a4004aed0cf169ab65c3e3d297ad884099359c0e3fa38caec8a01c7ac8320ab6e8c0c6be9ff67ca5084515f23541871a4d1a454c52aee0c598d11ab72387318599646f9fd9529806fa2a5ffd2ac0aec1a96e0a3e6abb1300c599d6eb07cacc2b48a09f9020c35774abb3818335fa37fcd5bf31384934d9cc5fe2253bc7c8692d53511b87d84230e81c09062ab81d9cf222e45c8bd069e947caead315bf0e2d02d76694897c407a3bf9a83da98cca5811ca34b33d098066060ca8ebbb3504266674292c5433f2df850938871caec517531b9e6dbe3183dc3bd1bfe59cb1ee78efb02cafa64f256eaa60636727fb596ce85bf0b26ab02f2418f96e0c6d41116559585b374880df4be1a5d3d24c5916606548192ff62773b8a7f34329c3d20dc1168e4f623c3117c99a4b017be231619f8f61384f97166ef2b9f425a43b12343c05bb20037e52b2cc86d583e2a2763cca688171bf6fad3df27295ac7f460a194ad4719f80260e86ecf5b9df0bcac7de25a328d8ef0a28dd17c09071614a0fb9191e9452d61970ca08343082565c1a0a719ad444ddd1f64ba2c16ee5446e2893bf17bb9a0476a7744f52fcd3a6bea7cba1f603aaf8363a502f04fa116b544c43bda5235c3d72559cb4526023865febd0230819cdf4ce377d34c94005122129567b8b82fd971b62573aad6694da68e889179fc283eb344f37da40c0837fae52bbbdcad2712312b965301c08496a1ddc7268f032879b01da35ddd04094c4b04ed9ac6f2440f32cdd9c1c228306621c1d679aed3030dd150f79456bd576a63bb3d977f28b5c8464445eb178b8a362ef704425dcdf1d3843ebcefee4e01c7beaa4f7eb664d4bdca98e5592563a30878e87230b85165e11ceec4fd4203986a89679881a04b9bd3fca365b804661852a1a71801665fa2abd137a3209c50f19b35926b3f7e151c5a2a8cacc8479a66a3cb3b310b38acad9154b7133a3b2bb9286ca92d5938ed70634b2d42b2d38fe544d42768da27f02b6499065c12df5cb1148bcd4ff2fe621fc9ebdd10c5b8c314f6754e06216e1a2289b2b8cd5c9bc130653085cb94bdbfa7d0b1758e22b850bb9c6a0aeb081ca624d3a361b4e1df4c311f5b53f3127506fe5c59e082b76758d9d92c5aa4af6a3257d2c05e809036a3e10d12d41df7f28336e2b51819a7074cf009dc84e5d123912f52bef3fd7faf1ae735c4fd265f820714e6929e9e5770007d5e697b1b439bc66fd485ad11cd2b2356c446669d91d0244b86f2a0f6ff28061617013e4ebf8c35ac6cb548ac3a981f695d5d24ac0b4eee9b0e73c5d29ed52a90ef6b52af97a00f44998e56857aa00c6dd68c3ca4e22956e84971f5050939210ccbd80b080332492b5ca7cf3d8ffb0b22063004b1b0afa6ba174312811993a0887ddf57a38fdc41c99675f21d60bc1c97f94bbec523ccea97d366243872abc597cd32045a081aef0ee3d69f07ed955c857b0cd64098a2359938fa36d343602ddac4d4d8b8f343b8b0d0c6c57e2d81ca71ac28b19e86e4c60647ee0ced32c02e0163e99c59dc30fe9ad6fceeb5e1b7e4f29ca62d40b0fe5b8fcd88fc98d2917e1e00880d65f39a08c50662aabb38b9dcb2c6a8a915eb283d9413e085dacfd3ca409d29153b10b0fd61f898c5db82c4a6175b3605e3a03876e93ea969727c8370794dc11a64156577850c772def811e6ca5ae5e194113e47f05ff85670b3961bc2e369dc3db1fe83dad735521808bb831a2fce21ef52db6b89d978e2ffabe6f244564f59b48c716c63c43aa6491163ddaee5b3d1e92215e88633429c0828ea541f189089c9d9af0bd2f26b478d95e0bbc3fd8d5d69ad5cc48d650010d3ce252625be9c0f6229092d1976463df18f02ec334309cf285abd73ee90282e0f34e14cacb82369ba47a6898c583046290e639f926eb9e464e041f54181c6fae53a0cff598858c2547cd2704edb7495916573bbf8c989021ea1b47a83376ac150551528b0a044693c1c218274f4ab7b87d3af6391cf436a72234ba1f5a84921d15bf5413735bbfcacf764dee614c597d8aaba228a48e0a9eee85944fdf1d2b68010b9171319b7f755b818ea03021868ad63f9b3a46573a1b0b504c5b491bf98c85021df7399660753541ae7c941677a2bf6512cea2d94d7e267df82ae8db22ae61e69eea8b567dbba7b36ab059f75db567d30f4e6333c13e573580c5f199241d3d5b95393473a4d424a645a1e60bf06c8949d2b06725c02609678f758b7c60cc74f37afb7f4520ad4bce51d83b73ae1f9ff9c24b8add21cd14ef970835aabcf4d0919255135be2ee85d7e94a1cba4cae003980e4c6c94f36ee5b6c7fca7b48e0a24ea384c1c79c619d1ef42bf0044fa7508769ee20a891c4cfa94e7d7d62ad3870be77fdb7d3e21a0eed17e3f4159885dff480508cbc1c0aafe372151f0632c88a6cb693ed8e625bf8dcf165395a4776c62c36ce0bb1e37c5bf1b80a2775b1d0b00aa4408506b1050e68ba7e3bffa93bbf2cdeb592975124e376ca7b1033640e3f76d113cd4d9e68f7153fe0150a7b6737a686e938ade470944472c3e51362f60d2cb991b56ca001529c35c2dba8dc196659917b0b67b8fe892ada68e2bd25179b63fe7296f6fd8e122f52972ffeb9e41e0061dffc35acd244e1b474ad40238eeaa14d2532aa566103cbe2e8be0f67c8b671c3c3b65684751d04e57ec881469b9a24c9971d62a85b4dffd0df2cb285b68000a430e768bff3e577ea8fb87514eeb12d32d18c4e4c297f93e1b5218dec6bcafc96bdf010ed6b160434ce1a685b60da489983ec310c4cb52db3ac89dbc7211fe302d835c52d92f2050475f38a18a1752de660c12cd84f0c823880e673bd7b4857ef2b85ac3a36a794fa92317a144fc470599ce59607342cf6f7129421c6499e21618aea8b5d2d456d77fc431c7fe2a44b836417a22957ea0e000efd63907b7bcf6daaa87cf2dfc0880a1853882cceafa94a448672f7b4115d3d1ccce510cceb5163d47c3f28d3683f5831c7a1571d37564754e929955f64dbdb5118347fd797282a3b9d9bdf814d235abd92f8242e04402a72f005ed8bd23bae3b352b126d2e132885667ed5967220749cb338a2decf1e7a1fe73d122fc97589d4e5bca9f1eda431d26451ae0095b495d4a546463e47d2df995facba914eea3f73fc9f4a068d7ba42a85a3dbbbb9d0ff1360851a3b46186161a7a225d693d686d6b61e24590826183502899f7ff71e8b7e9c425a19c7688a53b681eb6fb2806eb8339a9ac7442482e7a946303afe3f41848b136052076e1def8900fde7de81d3bb863d97d5ee5ab19dc51d2614fef58b753745a266c2f4bad2b889e1f10581b7ebc15e035792fd2a544ee0c626ac1160562718e8a8a35e9ec1ba8d5f8012286654a937a3f68966d0b23390c657dd4e100d19db56d79b310b3300c91f5a0cb16e796dbe615ec76e7948c8ac789b00191b9b1ee60d8f76605d49c69124f8d874a7f6c5a87f40f471edb7b1896c09b3e176fc7489066f580be7cca509a4262763fc5dc4470143cebdf387228e59186187da09323b7c8c827e41c295a58f37e9de046b61eca24a5368830380442d14326106f087ed52710d26046a3d2864c56ddb2b9bd6f5dd26d555c49890ba8dbb50b96810f274218403d5068b61e0aa09a9de3ce64284ca984881bdbce11f8c14c05396a7b7e4b239d92058d7196be90ad227eabbe43bb5c3af4c784432b44dde3e77cb47370578a6bf18a9c576ce6ecbc474574d68be6c87c53e50a85463c4747996375812e1028d5214ef5bc65355711f677c5b888cada4c4cd277700d2432ef78e9991cd669b8cc613a4dcbc7b089cdaa2f9c42d878e468274d379a287d43e8c42503d2f166c9e17b07ae4122f38e931ead05d314322c62d2321bc7b2c6587fc0b863aff546e44ec5e4114cbc92f3805c76333e70196c8577b3a36f10bfb5fdf1cb55144e32ef8f814dd2247ef3c546857f73e53ae07f81b0c8612705f2f53addcd7ae822109650e532add500c28e8f782554e89c806eb5837a4fb3cdf10b689a6b0f2386b01d60d6e5e8c63eace2c05d63afc87b3fd77d013d59da1f01b6d719eed1fefd376bb71bc4f7b714fc94abbdb48eee283111340ef380883931e363219849aef1e796d7ff048ed902727663b86059c50fdc93ab7ac932604b6958ee02966c0c2363943d5c18e2cd4dde5646f3d5393aa26d5bd369a591dbfbd789455a73b404ca7bb806acac973829a6c9657c804fab770c737b8edaf004569386f678500fb886316072cef239d57e23358f16b2a50292889696f14385ce107069bee43c3c9d5a9d6e48563502011f8f53c92e150f5c72642de0c71bf542f5670e0be2b125a794613a1495b71ba5aa429f06e9d45ac1af1a89981b0c07ce776c1d62965548144c2c394f4a5d6ad521e21fa0cfa8631ae33f47fc61a06c8e25470ef6b70e277aaf3260a683b9bf48b0e43c8f5175eb61d9f9d5f158be09c296065bed82fc3d06e10a4139894acda3abe4f86d058ca39eae4ee842a956e3422a3924bf7adefc50c9e16051be815372840f2cba09a6e4d4e8d17a8d515e8c941c7931ffb7605911567b326edd1107ab8024949c7e9d7dac31607b002527a181259b3ec911c4bf35abbfbc801c53ce30700c00740bfdbae5671e9ca84049884cf224f5d25538344476a44b6c01e1f93b0e7471a048451077454bb17d9223f3e5b14aa543f0d9101170430cce01e4b78d0d0705082764fc1016336e040f9dae1e5137592358e9a8359de458910051cdc31117b9ec1e6b9253942fd47f981d6e99e4180bb5d7b4fedd14bd5ffc23778b2d9c7295ff4c188da31b6c3b17c478bb43c7c15d2ff9146ea678a704559acd462f88b13b9a4add8bf32d1aee34d04c27e404fe24956b9ba0f1049d05c8bf971a8eb053963dd52c066efc0697f38c3f5baeb55b5452e77d06186a3a2ad909397edd8bd56645342658c5849cb9526a97ce20a59db36700a897d768f528a36dc65dfef345b9a7f4621cb9d349238ecaea5ea161e097c12c855de5dfc365353245d391b5a941a84126016879a4d0ab21b61021e19a11070801feac010f94d6392917aa80703c59feaed3b4ee739c4f0f51eebf50225d82e3229c61b99ac69047a86185ca854108c313439e5319f9e2a66c8a6bb0f3abb9ee1578cb74b44fa83a0b935fa066b619656146830e9c03b6eeb9a8cbcae23f844e3c49025ac73a250ae00b84ba469bbf828bf2cd7ebdd774ce0bfb0a6053fd69ed982a36ea87e84528cd66781bd798737f844f7df6124b5997d3321b9fc664d16a42f6550c568e3968546eb7e18f4460f6466164ffff807cd017f37f1786ff62d196000b84465d3a9627972d2dedaefe0da3124cf3869009df11bc2327e62264f5a7e6b0da371b269a4ce1ec0aa1d805c05e94ed555c32b6e6d0bb5d9c50964e749656101a331afb396251a1272663a139506c29bbabf6bb7912aa50298aa6ab9bfe77a6487f2a92607a5c62e60118d68f4246f290c2d576f9e8d3a16fa28fb81d593bad78943d424db6dab2478b465c1f8489aa75619e2e42652cb7c518003f9d76ab4cea3ee9667cb2322260b17f7de35b97be5d00d701d7f03ccb380fc976ea47ddf037f0224e5589144be3227e7911ae533b5f7ff80d01aafa482b883cc0c9213c953a58ee2fc5b7ed4a257ba6a582423ca0ec0b11de84811bed0069694c0d1531aca387cf6f15492867d355151b5d52dea84f14c414d76501482201978b405858ab8edf507eec0f750b709ef24ce2ca7cff2101fed03fa0e752e1b6cb7fef306584c3bcab935d209e2ba2275c58dbc0d968d0e7b1b24f9ec20a405beaaaf908760ce789b34d613ced451aba83bde3c34c8149d2d250bc2c6357f9a964a53a825276455192f04bc6e572238bf70106be9a49faaef5025de4baa362805e7cb94e86a143cf30a887f84e52c4582d4f60aa7390a19da5d44c93821a9fc7fd6a298187967006799ca8b1b50e2be033966cb1e0b6f1dc0925e773794402ff47ef2aed21c80525273134338934fb44c5cf7139458e104eebef771dc632973598e65cb601c50aa90cf36538c6a9f41099dcb9d7624324d58dbbe616f22d6f1407372d176d95d65542df739bb3537a62abf700e07be9927d7c065cc522bcae03baa75e895e3054324e0799765da1d23fa686df49205e23f148571164e62e1ff391a6750b40b8d57e38d29092ae5de2b24211e879067fc6f9f5eb86e23521001972c081a086aa02f0ad7d6f72f33f09db1b6c8c68847df15f1ada7b77935b4a999294018f0885084808dfa68deb3a0e0232577f0d4582bff6dacbd3536fdce1290baeb4a79f6e35873fca5f4e8d87205e332d8956a4489122b35910af996635c0e3d3400fd9df59f3fb84e0ef83396cf486c0ad6d74db6e6f97ca573f0a0d2af9de48e3f8b346d6f4e7e66c390040c8c9498521f8dfd31a12eaf9ffc01408ad180830560ac60261ac0fc67a182bf6e07f20e8b18ff5ac8f7db0066992b8d7ffeb1318945792d3912652ad56ada6692c16ab3524240468fc61b588c084bc847e86b416909315936cfaff27604ff490bd759a2543ff3ac2a0c460332cd611368ea3368e407eb4234534edadb609d980c69f0fbf6e1a570a820a2cd6280e23d59bfaf9b7da770aac602515a943582d2230212fa19fc669fd7fff813e398fe3592c21b05847588e2569daff081b5df8dffe64b558455893d5122a32c46ab1584a30d6623f5aec48ac486c886b89f632570d6c41d3b4670116eb3867f5ebcc4264ce3c8ab9f381cdfa9f7dac2a72bb3a740049dbb64d8b154da3297b6bc1140820a4c071a5ad62636c8c8d1e9802613e0829500811cd7b80f60d3691ed6b6c8c8db1b124a40434fec46045601b1e672c36c6c6d8b85d219bd56242b4cd12b9b111c6b3e8328fb9511197693773e63be0dc01411effa7539d207867101e70027b75f8c2a27cbd62da644d239365534f271a336c503534a719991813cc8b0b2eb578dd76abd5e8a453a331c3065543739a918931c1bcb8e0528bd76db75ad24dea9b992dc7719651cfb3288c6584d5338e3fab1460b18eb3e53b52d5a62d8b7368b6848a0cb5be312635283568ce92c48ec48ac486a8008b75848de06b5f03686c751be8048f735637188c0458fb4a43e0cdabe38f16589cb3b1c6b777ca028b751c476efc598de3aa27a699307ed16060603c4dbba131c3065543739a918931c1bcb8e0528bd76db7da9e1adc09fc6f05df013f69f4dffb647d53057e2815be071f047dbeef0347edc53aa402981040e4ce9c8d9247fb71c923b8c81d92eb38c234d8d0e83bed02d80d4aacc0975e0add82e566c1482077668c1553414c88d80f3de36bce667abe255464881b7f56e3b8ea8969daf73028230ca81bef0d8d1936a81a9ad38c4c8c09e6c505975abc6ebb3d88d16464643c4dbba131c3065543739a918931c1bcb8e0528bd76db7da1e8e349248e38f1013212c23ab96ab08a0ec4f62c55ab39991180dcdf6dc4622fd46ea81c58a5c16f31974034a70a5db51a142250b2f0b2f0b8f8a47c59be25de161519594befb96528b468957af7fb282c5198bb9973e0a384efd964fd618f25c4d3168ae9b9db1592b476bfd5a6bad5e0a29384e25219133e638f54946987efd292536a3489ecef534bbc875e220577052f191067634794930694aea599a3aa43f017f5f19e11afacad457994e9129a5af0e69bd125305ae609dd1579dede8b7603ee10ea91d7998af520bd32891538253c80a3ee5f955eec8f954f2789e33f28cc913a41f2a0a8f3cfd7bdc9370f7ca12c00b82999cb4742fbe73884e261d5e7c854cd174005b8739cad05f09f73d0d82a52158ac2d9fee83aa4ce6f23d8dbfa77b5e2555c8e418b78e569fe60916e710edf11e55c9ea55e0f7f4550282a8182cf833294b2218109129d8a7d794353e70ded2f7d7f22da41c2d24d2772e28125ea417b3fe810fde03649539344b5f0f35930e5fb484310464a6ddf2134542cbcf9fdfafd691b4b6680ff58b49bf6aab49b4f6a8b904d9f26dfff2a1eacbac7da38ac0d54b827974e800e87272b8304cfdf34882e7733c3a04c0833552390000bdcbc9e1c230f5efb3c991fae5b329b3b01285a5f2c1411152d5f8d9601058acadaf38a8322ea694272724ba88d3364b614e89f41f86f2f61c721cbfdc2c9aa4e7240feebfcf0955e9eaca3e5b920f9065931eb83217d3c9e7c06faac04faaa4d4f12d5c8812c880543e6aa8cc1c06d9df7b4886feb5c5c54c66e57637d7425b3ec9715c8f164e7470e9e0be187a9138ad7b8286225a568a484d8c4aad225c85cb4825cc39f835fe7e73202d811804c513588da8415e2dc2a822691cff16f06b7c0dd02705d06762814519422a1f1f34472e15055a047f1f1f0498a9c0f7d13521a40a9aff43253d2432d642baf7415b24ab2def0418fc966fb5d02cfe1c9aaf199b457368167901844be5e343468c57eba50a9aef0171a9cd0eca5985552828904a8fba600bf74be87cbd1ff0055910e97729c853e11404bb6702e9513be697be04b290db438104b611fa915e02390fe64e0db07be8760d30b2c33adcc09c711c77e76c1e35096cf1482d17e91b6c57873ee54e6a9e7ad48e4b7d5282fd80fb0d76111dba7ca95b1dfacc652e9420b3cbbb745e0bcf999f5cbebf9a1b8bbd24fb732ef75bbe99efec252e2d8e3f99e74b0f15a55b1d9266e64c2b9fd191ae48ed95f0bda4b9817c27357752e01cfd1f049ae0dc492d91fda7bfad8205b632a30efd69e6d064328746b03870fc0d8d1936a81a9ad38c4c8c0966b35a7d71c1a5961b4a17d349e7fd1b1a336c503534a719991813cc66b5fae2824b2da4efc481906588d1c6048cca5912c2626dcd97ef4855c76c32ddcc2f9761682553f9f8a889414c1534dfc7875cc28545a6aa3167b2cab2bf58b9a092bd4ac95ea190f5098d0f3ed365a44afd7d10f0eb057fea3b05c134406099df8b4b3ee0fb959660ceabad8aa465079d41f8f64e52b0585b40bec3fbfe107272604c26d383d0a55e823552a0f41a60770d3c55a90fa5428d4f7d0af469d067668a2e5e2a1f1f3343aaa07e1f350920558d1a4a52dfd3b575bd4a21d626b27f4d226b4bf2d81312d808796b50ae2d92cbaecbba287b5fd1b29a82ae4175a55e7a29f4504fa7be7e398e7f0fb50be49ccd663c3a74a3f935c8a34307bfa7e7cb850826bd388b1ee07d3fe9db32d7ead05d326095e4e1a1a2ccfb3d3e7fe6f9a41e352ba901ae5e0582a809ba4ce55c344e15b21186dfdfd0986183aaa139cdc8c4986036abd51a6c1032821b644877c6bb97f4fd0d8d1936a81a9ad38c4c8c0966b35a7d71c1a516b0bbf7d236c048340ab9541acd0fa5ecafe3868cb37f0a3ed4c8fe14b8008f2631591209b1c2033d6403647f18a0647f9fd61925d19058f6284048b24b2bb2138d600c27ba818aec2dae3c8d584da9b5fe18c12c8a1e7490430e36d850c7a860801a00228b266c802296a40b1fb840a98f03534ca28229cb8a11ea2f7dc727c8274805effb7db627fdfd067db0e368ef81527c17fcf2dd0606c13c0cf88ea3fdd68139392d94b57994b5f9ca9aedf13e9fb20591ef87cae5fba172edf127bd9675a8f904a970bfdfc7274885ed1bf449c171b4bfa04f90a8e4fe5fd007e9fbef6f200fc7d11e555faa5015f44087dac3e038dac748c19f35972c895e426497d8b2ac75cf3d090caaa56f2ee9509bae0eb52751c1e2748d4dfafad56c11029fa00978afbd5485c0035152f0f6f73b70b2561b18a4c226ad70c194996a03fbc871b497aa2e41141120f11a55e26465d2d733c7d15a5669cb87fd31e91d829329511ad139e74b2f02f787ca823edbd7f7396d5f0a8e733f543f49c2ee25813eff43754f8ee39abc61c1d99d248f2781698429284e569e3ffd75efec91376a5880e58b367268ed4bfb1d4eafd65a19f4d9f7a7f6b5203cbfa9d169ca1359c42f46000942b482010c18b89425d16ac950a9665ba975ade79db36bdaa1dfe06b95b54a4abd67ad9fa9f47a849329f9924eef5aa9bffddaa15b29abfda17af5ead5bd56b732f35addcacc6b752b33afd5adcc2a8552276dbf94da9c4e26acd5ee5e127deb3de02998a23587893bc6146de611ad7cf06620236b5fa3b85e00a2197ca0399c8882c4100526d3203ac091e9fb08689018c880910a6224532bc4c0a716232c0e36e41571c3c644ab23025a4246c590266646459c10ba3f5870b0b0d90d52e5a57709d712428d23b378319127463fe4f0c4c502202747443b34214404e40a1c9898994e36304c180545c9e29b94c09e65932a576411bf1255a6e0a755b69824d8902b536aaa32c6bd9aadf3347720825b61f07205db2c897e76a001b76449f4b37a61e2670cc25c9644326031e5806f96443274e13206ae5912c9207bc14203a58a5967cd94199a2cbf4eeaed62058bd72580d3977bbcbe336734e7d93ddb7b05e6fa02b807c03ca726ef443845ae2fe6549c59ad33b09916d0ae315ce4609a75f38a03c74cebbed80ca199aee6325d7308d7eaac75ba3ad7fb1cf6725c17cfdc86614cb85293aee52887e1c92f0de15388bfa7ab76f5a3797e3dfb6d5e4da7cb5c815da05d6ba5113b1cbd2dc122c59b8b7cefc9cb12d9a7b0bf6b64bc1cf54f737e68bad8bfb37cd40d98b64c16325d3765a60bfd2d11326c1cc93375a68be3b8fa551c79633ecdfec94984d49172bafceb0f9aee623f9d82c05d3fca9ca9544e4e2a45e925699fb704d6b8da495993d3e17c3147a6c2fe39e7f43ccf0345ede9771ff74989b37dd5dfcb41ad56b529b5960c29a5544b59afdeee1a686b5b77ea4e311054522aa9a4544acd564abfa9ffb5b4d2a64edda96c1da07fa59452da52eae850bebb5fa74edd1dd0a1ff8dd44e5468d56ad5d6e983da4fe946ba9a0ce97735d2d5a49364c0f3e9ac54ce2fa743f9797ba9f1a6eeeef35eb7b347cd14ec774a9d522fe1e0b6ad6de9bc16afb39a952f605f066ead56acb51fe9d456365cb9ca795e43daf2f6f7627cb25f26cd8d4eff8137c59d56abd996ce93523a0fed4eef714f090e1c27740873129d1488d5a39cdd3241e95ed8e3a679394ea79e75071565ac9b9ebb40c11ebdeb5a5236726ab8ef2dcb972cc3ede5b66d23c97a8fa477fbce8152de207d4ff74f87dd6fda02dfbb758bec47125f3809a3481643c8a0023629d188a4d65a4957888095a913994691e95b2f07adb5d65aebe3a8b5d65a5f321dba12830d37f211fe5451aeb5d65aab132b227698c2c411344851c5a8b5d65a6b2d2275a36c403a211d48318e48874b0468ab0248d30188f4831cacacd1fd010f72a842da3884e2c0b2650ca90156060f37e8202254461038e8c86155460b68d00174d400198cfe622b4bb490a1055aece04206a65936d1a2871bf8b085164130d12288064a132032c6da63857cca5a074e1e78e95283ffb48e7671bf073aaccff96c75581f060e860e3ba661abbd073a84c106acf5d04018e61417f154024517704ee930ac9ba6d5d7e694d6d999aadab15bdf1f2381af12acbdd8464653266fd47750bcb556972198d659bf8daac8ba677da5e5ebfbd83adcd7e75a3e7feff3b7f2bb5303bb0e6bfd9b05937e8ebeb36a1dfbf5a7906aad73f367aea68f1dd66fb58ef8a3c767945c9f3452ff7b713dc90e3de03b54551f06171c6011bfba15ccb218b9e4e430c524459426c690816c0c2680c6789d6008883184c6700d5541fd5e1a265c250ff5acbd2591ae46d22ee96ad7662a60ca02b8bf4823f7b7d7281c6767ad4d29f53a67c525ea94ea504f754829f56e9d9e9566ea54767344dc4962d42a6b952e069eb5565ab3049eefb5567a84fbcc7de63eb3d589adbec46c1a428ea46e230c697d4bbb08070e79a3e609a5aec489e67931a61deb30ae7cd1a5422c52c0fcd8210a21a2b0010f76a0d2431f8171044c06630bee3ab152060ebc68424a0f1d46182fa03058c113649ce0044f1c0d69308e7e2eab35430c24dd91905c7a5a2a958ea4c8252a4e4b8411032760800182d1c46d295e174b159e39c59532aa94265752f005161e24965bc6726992b6b8d40b2719c0a2c91428a0d84113531a0bc936e9225b6bad9d5f185940a6345f7841c68d9704c5f1228a937a448eb502860e332f680092bdbc2081101274e045122324c858271f0865d3c9c607ab1be5050a19cc88cc0a9811e052964d643a80c14106860f46318ad86288184225e066fb4fc0dffa5307515d4154abe44ffddee71c1f68d240c8946b717438428796a294c8a26ca3e04f694fc304d6e1ae71dfd324251c886aa94a358efd182cd85edbd66edfc3e374c258d3fcb56f7b1cadb3bdfd117ede89c349281249c709f655b0d64a59b6324bb6a4ab8520e2c061ad9d4037068e93d76e5c679f5af05a6bed459140facc95648af38808dd15d8a85180472ed6425a1c61b568820644acb18b11f170d4dac11a11b15c443c40e1045114ae3044eda031e8f654aaebdcbd27b5f646cee4ac855ae87472f7a69e93c3b957dbd53de6de75bafbb4d3ddddbddba93c924753680a8d30020c96c5e9148657e4e4587bd3ae76d55a45b7d7a22293e95ead0ae9443ab134d71eb4659d56a452b35612e6b7c0002abaee8a6e0993b02ca6906e9f4254417666e1619993033db67c851ddafcf4797b507ab18dc41d9e6098e30cb0886756807790754f605922de0bcbfdddc9c686fb777a8251fe52d5354eff0451fed38b6652258b2113b8ff05c469872272bf8da4a6141523957b1bc1390c773092fb6d60532a84ee02937880459ce70e9daf84767bb2431b2f1d4c5ae9f7639f3e36bdac15e75a5f7e2dc80ff2aab045e88f99018b5f7f0b82c31ffc2d427b55fe74a1e61e347bfd540d3b6c5903171c5902348e634b25bf0c2c25783b8963430528ed81e1c051244bee1fc16684c681c553ea6453b529aa14319230dba2004cc709720ab5afdc36bc7dce39fda5143bdb423ed422f473333ec0336260d1857c4868ce4c83032cda56cb771ce8be6d5531244e7f0cb969c8fdb271c8fdee42ac9a22b0285fb9c701f67597f098509189641621dda88760ad53345f0d054987fd6a11fae5d7435ee0b099cc2079a3fb35b444dee8efa17e35a98b7e8f79ac5d40ab2cf610eb252305f74bea46b50bee27c87e9057551a822171b240f91d68589e392d42bfcb0f7882eedfa943d0060558a775fcc3531122b9df26b431424a880e1be208a6cf46873921845d0d38c436d83467473010f1f9e9767777776babd5ac66356b4553b616bc325ce07e9a1b60a756703f415e4545cda8b25a84568bd05fa201163b4643032ce2d177e84f5951c7bac8a8b2aa91baa4a7e47e0ec73a4a87ddb11cdd90ef14e5297665c5403b3a0efea29a34232259345b0146810b7061a2cf032c5e241db6b7e48d087852703d9237fa4b90b98a216f749ddd1da952d195e3f404453a349345de8a80abe84ac65250c18e54068e7e3ffd647a80a3e0f9621fe51c65184cbc7749eeef7242904e4cd9556ee41205cea18d1a6b3046c9cafdb49ba33f2a85eafea1e37477cb767002350b4e3944c64f85600abf43fadf61d861530aa6e80bf08b17fb80c5cf37c0e23b0bb8a99229b1c7b143397d4e9f3e3b40a595565a29c139d2cc00c3e03be3cf3cad5a6796fb4d30f84c2136e09473ca29e7b452a4fed682473038ce1c87f06c5e19ddaf12dc54d150995926ab5b87a2dc4d441be925532608379559b283629781588ed3dfad98166011e7eec7a6b143cd973f318025910e43b93f051d47b9ff84cec128b7aa3b4be64af4734238b98e145a047f8f0a0c4a256e30e6fe13a4c4887698e51e9d3f40738bcb0951661c77821428cecdaea7c87cc21446ad23952872e50429505a0775821428d9595c57116749f25a4a2e38467871db27e50d0e94dcbb97c3e5ddcb517a8f036987cd7986e1eedd248afbce3b3ac37cb243d373d293c08f1e8462f862872582a4d040753f1308d38303b7ef719ffc029abe0e7419557a1750c44e3bdb5d42e7125873c49521c75dea1c0c21f7ed994033b781a24fbe3f9f04d20e2d95a613bef7ed14dc7c99eae6b7d0803be9515a2bad13877a7b539a8298937bceaf03b39bf2464e35c1f8751173078b5d96742714431c3ef1af367aa77beec56e7bd1e424770be18864900422c9fd5a2fc93d7b95855aa8c3a6b1a6b1d671d23af59bb61d3335d2ba02c1c994a88d993e47856426977f79efb346e40dfb1ced507fedb6d55a6bfd3bd3c949d3d534d0ccc08c09d8e935edaf0d110e4cf28cd7b6bfd6e66b666ca7af39086529459644384cc95cce000cd0c90320a09b92c77e2e000172e6ff0004200098ffb7556ae8ed9801f04cd8bede0f6d6c5b57bf164a3719845a9fdbe9acb55aad00f050a815845a6b8d0ad65ac15a01505f4cd52755add65ea1507ffb1b8f04ed5b48085db3dc9e70e9adb54fc3a3421d5a3bcbd67ef722159a62489e16e6ec68868782bf36b3575ae748f2c0c080e2cce23fccdb2aad235e2b6b1d16ae51eb6cde8e797ac0e9338d67c2fd4dfbe4cb77a6ecedcbda9737c323a1f3066edffdcddbee6dded6bc7daa02c9a37d2d94f2cd775fcd37f38c8782cd6b369af636dfd3359fcc12d5c2ccf55fa059fb164a599bc933af691fe3a130e335f08599eb7309e8504e7029931ec504263dea8545dacacfcd9a1ad4cdd3dc79b25a8fa36afebfdb246d01b54e8db73f25cfbff6355e7a25fc9b606a80b854dfc6bd1666a6f1f57b61661a4f5b67e699af5e09fff5fb50db56d36ddf42296fe083efe2a160f335e00b33a340b13e8dc71e0a337e035f98b903c50a7ebdfa40d48e67419bf1200b34bec7cc36b4d53a37a0b821691d1b9085cdd53a34bcce3361e378ba29794898f1d1788ec60bf446fb17686ea18552b6e0d7bc8e8702ea2ff8c2cc1314ebdbbc081e0adb5bf08599bbeff19baf573440d48e192c74df63e6ed67802cd8d8ef31330a6c211d9230cb401161b15735a0a83dcddb0d6441fba1d6e9c0b7df793b4e5f9ff34cd0c05387f72ba8b54fb9d596d3873bbca0ec704606a41dc67cfdae7562c00e845cc519578cc9d5cbb5d65abf057fbd6297efdf87f9647ef9dee5b347447a7bbac6dada59506c269e3592e9db97efd8231287be119906619b24d3d7ec2bd32a99a34c8aa042db16586c1615a297529969056577843c9fb3c916c43305db69b5436dccb2c68f9f21164eb6978426b958aaee27551b6adbaa64fa2bf4e89d98987442c3944ca368940ad5b04516a5d14ff7726243902c4a2e365bc3d6914e6a98929b884c5f922a474f8e43bf7e2ea8a061c779a9d240d922a870d8e890e67881e5a4a38be6d4e0943bb6e2227b153434e1b23f369d688022fbdb7c2bbb13d54025fbdb701b84708cd033068e2333e9ed0f45801cf6aa3f24c9a11df064455bc072e2c4014ea0e01f64c0830360ab215aa6930d9110425f1727324ad002217c3039815db22412620458083126e19ae5d025731c99352d15da48d12c895cac5295b2564baaf46f46b85ea5bc012ba2395c5cc9b28131381e3c46e02179ecf6a722d80e8f588ee7cc2339b348ce1020dc9743e2d4df3e28723d85f894055f91520a11d97ff24001e7fb24571890788c4620e46a01f9cd6cbf0cccb165bde36cf1903c3d5b5ae4fab3e53b3c8ca8510ac614e4fe699d9a02c923e72869cb99847d79a35a8c31bebd056d2338323a3952434d96442688410bce863bc6d00d2e38e2870717f80c466860640794524ab52223588c64a9404e1891c191591294524a35223f4a90050b10225800b3020b0f62a4837b84d4411221a6a8e2891818b540a8873164b0475a0538f4c0834b11173829410f6c3dd28314d111191c5142082753e2e55c34b905922b2f95d592c89d1cada521913c55d4a864d7a4648f79518322bbf6048644f6971141a697264d6bc580fddacbbfd8a08844da6ccccbef23dfb1a003cd3e7289017d89bce11ee4ae2e06dc3d1724250ffdeddd88ec45d60275b88156a843d46b443a748d05d421501eba9906679a53a6f98b44f2d02289e37fefcd4df6fe8eda94d6c18f7ae93bda6b2dcdd552d3525353737af1944da7177136fde9c59b4da6b743bea3b56c5c6c5c6c6c5e1b7d470387863c06d480b451bbf9193fe367bc69c68b379ff823df7ccc57235bcc735e8e1b0de86a81450d68481ba2f1fe345ebc1948f2c898221ee0ed63fee6455b94b718b01ae9d033053524f286bf2d92792fc9bc4b76815656ebdc3ce91d6582f69acb7e2815ac26e438fe566bd1df9ed6a7200b5a8e0d3c9181675e3c0139ab758c38a5bf6dffdcb6c5fcb77dd40add7c95c6e7029d41459b05ea13b558f6aff944ed136f0c5a6be673a1e698b740ad435b87c6fc9bc02cf308e67f5a07ff84d197af97b8bc7f43913cf4b556e3406b3515ad25456b351427276233a950f0579118657a545414cb30f9ca22957916a8772c10089311e91da9ca82b7af2c23d95bad2eb23f16572523fb0319ca7ec1ca85bf641a12cda569adec32adf5955a229665813af497df8bb1bbe7a37f703ee60fd76ab070b800563499c9826b120993e957249456289e54246a5057e990b6ccc136aa2d21d29c42427705c933339dd9a206a34afb1f2aaee2c8747a5952baf21d0da4ad09ae308765f6526d2065d2f21d8a84c4a14f8762c0dc7348c81d2a731c2692a73e89d2271b58ca6dd4217d1f3ba4f547dea04f654ebb174b59a4b2dcd1dae11930ce2ed06cc2fdbaea906a1f4a05cda702390ea5df2204ae3bec579085fb960cec19f9ce54d16f597341492d24d206b6a0b57495964dd294de52c7d6f13e1768ee3e176aae5e0e9226d658a6df463d6b9d4aebd396f5954ca31cd558914b559154576d4da11f356d545b42fe9237e857ca84bee85067c175a4949ec698e615d557a6ae65916699a5e4f9c0cc52def81617ae2f7651ee9f3b1c48ee1f62542477cf23b31f79a3e910993e953505ab508794fe6907b85fac42f5e52bfb5c1703a624fb945aef62c013a42d29c0370bb65ad7139e01cb581a89636bba30707d9d2e0ff0f6b2c3103459ceb177da93bc615f3c4da31827532269ceb945c36e0c77bc2d9d1bc94b0a6ad93d42630416efd82b9aa7e369e6e5694e80c53b927e248f74499c1a5c2db0952b46f6cac498afd1e916e158be30a357f6bf407e99b48ebbab959d06144ff71691fde9e83b31277086eec4809505152657a217f08ee25cb9dcbdc50341df4c600cec483274f9261b0c4457745cd17145c7d5b81ab5ee19eb195bc56298948a7931cca99193131386f67fd6ae81bad52e6dc9ed482b24f9ce404f901d882c80bf487f2092fd85b8b617ce445794455b1beef00c444000652a89805801015d224e3fa9baab79c73bce4903051667cc9b2da539c5199379b90292555ce646e0f7373466bcb8e0528bd7719b2908c903a3a4935eb776c1ef6f68ccb041d5d09c66b8cd0423e3d23590cb150294dd7f1a07cf8061b2d82e3c03f6f26a86b4d28235d6c580c96809a97cc82598c072a4a2dfe06c77b9e69ceebaa3bc51022cbaab87c0e2cc9a34ea5c8803f9ca5d311f035621562b1a97cba5c174948e1c4aa226403fe629e823ab20e34a4ce5e3830e51a4aaefa345053360a9e8c7803e31409088a97c7cc826326c71a4aaef83f4d352d15fcd1312d888d56a75a22277de1d85c0e25cad5a9865dcfbe3c25aaf76d47cb3f69a9763c656342717bc6a420a5b7445ad41f6ffae4c8763b859c42e72c79b70189e01b7cc80b92c628a67c0a8f93477a6715be7c81d57b8231958bab838c8fe048aec52a864ff0b44eeb4ec8e920746f23812d788ec41a723b848f621beba4932097498122cda2298886b461dee5f85ec12c933e4a00bc3fc6b95d6d1a664bb02457c947db682ec082e92c5ea1a92c5ea40b25885f48eaf886407db5716491776a64ce40dffe919a1a2d0d7c441b03857332cfaa559ac2eed6594c09fef8fff1d5b67ceb75e8ee92bdfa15cdc2b2b9a257bcd1de990bce13f8b445b94256cfe0eb018f6aa650deb15a957b757bd6a570bf5ab4916650d566822cfd70183856118cee7505dc36cf00cb8da749ab70308cc577defea8e51b0d8b2d116d93f55972bfbdb22dfa942481c7fd215abcb1689d555643f7b547146b1bac4ead280aaeb8ed5b5f296b5ac654e12f27ccc1f2d3efcc7b439888c4c1d8e335f95836a284d47eb9cb024cf87e1a777fca542eb4827ba403276c1243bc14510599459349df90e681d0792e79c3327849c393f4fa226375802039119c092888959f6a72b70e503644904c492cc951400c50a5e2a999a494c31e10bb48e28671d9d0116af92fa15ec89c95622022985cae7874abe8ed699f7b69705fb545277c85876f07beaa742e3f0c0f47b74a4d0e17c30f0b76449a4c41199cee90dce00b78cf64a0d0c645a4024b8a209290c7c3ad9e850a177ea2b15c2e338e2caa27c69311e80b228a184d77403a364a8c46c381635ebd4cc0000000004a315000028140a074462b15092c6b92afb14800d6f8050826c361308931c485114830c3200000200010010408c4135452400eac1a7a8e44525ba8ffef2abd0d9cef2d1eedf0e4b9e90f5547c4cb0d1ee34577369854f3e105947ff7c0f17e0e5230b447d4c23dc59d0ddc03a597dbb0c25dea74850e53fd19b297cfe9fb3b40fc562c28fe29d2ee43cb0a378db0139413e7aefa062c0237c0726c6e20502461ca2ebe8de093f0f2df4fdc662e2c0ab4151bcf609478f6b601681992cdd8aa6ef82ed2bc13731df7639c6933bd0392faea4cb7d354d30bfb279a555aab18af6d5a407e7fdcc3a80edb47df5b78bfaac72de8b988955acae0e813b22a356f2bc21e94a49a13f607ae9f2ca46b6473458bb7a5bf7701f312edef82f459ecaab5b522856ebe76d453f335506b2b2e215d56641ab2059f82b2eed42b68957ec5b8699ae6cf562557860e5085af47771ba1b01b70305001a3e8413a7ce8a735d3aa6aaa382fd8777fe8adf74809ff965243e890a9f41dac7eb1f0a837e026ea994b654878eac281a57708e250cd5c336bc1508d7adc8dc83e3d100a4e3bc471209909f98ecb997715840a03bc104f4d6d0fd6b2b378020935ad7ccc10bbb49f0ab69f5008bcac37cc160a65c42c10c82c8906853fb4145c12ec9168d7336b41a3068985147894f46f6bae4536ba8c4dfe45e4de0a22406e22c57185108c2b821f5cb246e4ddab74b4ea0586201109ce3becda8a3ddcefff381d2f74839a61b47ef8a03ce2922d7ca536d61007c9e025f1c418678f36a3119c780432cf4f5790facb7563529f9a8a5bdd4e344a93bab8828dac455e3b675be2948d5ca6d9b555b611ffd2a4f8ead5a9ac54852b000b53d50a3b842974cfe80f6a1c24a4451071e0ebd10c69c2e048f6d906cc7383e75a87b8909ea090b10f8a4108da7962fc1e9a37cf183bc49c3b26da5bbc83520746b424348c3f58d1c953c4536a2446de6fc59122e23fa1a92dc127f3217594725da19969b92f2b416895ed06431324596fcf73106ad2d155963dacb25fe61f9fe7693962843cdf5a6c8fa8f7011797f82ac1cb7e6a3c8228b94eb0dd1665f1e7dfc9c4d6c698f9284b1302647630be4404e64a1b7b4a011faeaff4b499dc017e8f68f17597f24fc9caf479960d41c1365097dfd093a8a5845bc3a5f2bec707d9f9fcdf6ad38b2039d3ddbff6af7f0001abeaf7c9c73df9a7b80cb1307e9a4ce89183d05740b6aa499ff2109551f452c9627617040098665013b007a915781a3c87f27b0a55cbc2dee10f4a578989b4bc393458b813cf50c5e8859c742eb21fceea000383ab4cff569afb52416ed1f2811aa3f854fb0071a5d773ccae95c32fc3b9774107cd093f338b5e23686445fdc391f2c3727abdb27a119fced56515ec2e59cbadb617e3b6069746ada973ddc8d70c86fe98840849143b5cf2509b15d580485ea3147bf065378f1291f830e2cac8e495f0ea00947426fb89a267ba4f45f64b7dc9452b1e7281bb66da86a645a402c59ea5c82968a00fae06b5ae9e94300bdcf425eb27b7d1b4981012f08d93744e85d023c73658e6ebeaae0e0e777fc003da363f0278e4efe020e096b1a5cbf5f1dad6c7dffb6d8c251c8366caf9ca5867e0b8282ad9ff82d0fef5ef9f0d5d5cbdbfb6126754e2e4995559a177e4eabe84d1e01502e6629bdaca4e157415d14bd1b3741c2a9783d5652b86e9827aff2f5142f16f5df855931c84006534256b2097ab38ef88a52f13b88bbefa52f01e9f28a04c35fe45bcd2076c545d16d45002a9cff97132b48a64a59fa54576ce05a3f1933da097b879f3dbc7881ecad31f8dd2bb9450536388480c7c52f7a8bd6ab6f56e746c461734c3a3ce2bcd7f494e42f5ab86f7980719a07e1cdeda4ac3dac5d6d6923a93a3147071827b26d62feb344747d63540bce40f9f0bb650be7c56911c366c380c19bd39ed5a4632f8e33b950a12a63050d0c28f1298f5ef2b3d989af803710f3cf067b65e0a4088aada23bb5be332ba09885d51705e21ff526856b341b6f28de131287a4fef2e47d210ccf45a9feb0372aa9812fe58c8c85c6a9f0bd213192af4d55a784e7a224d5516575b9b320a697599f8c516638710642a7510a14ba9dde38fd1359056550ca4ece1c2d3447a072a7dfb21c95ca119090448abc4f3d6ed13fdfafa88a2262b268831fc432077154d1197f3d217155ed4aae1f459feff69cdc15d9536510d5f1c938daa5179189e8366593785d64d8a172a67bc836b08f95b91d60a568c1dbbd09d6ef596ed48d180997ba1c832cf515dfc7cc0881e9b57cc0828307726ebbba4178bcd91947d9204d5ea93b9f387b3860754205f88d17bdeb6c1c2fae945054d32e12e2270757c92fdedd2f8a786ba85215940be43c30a82e83e007c0db018d9cfe7cedd91bf1ab4da6476fa547f70957b6f75d7621f7fb4c965b4e0fc3456a9d300a1beed6b118b793fa784a25f69540bee67a46224909cbb341b3441a45a19b3c371bf4da791bc12ac66f053442ccfc05c87b6545cb0d2b0695431cfd0cae23d4897919a855dbef9e2d7afa40f33fae67a419db854802d210d0227b5534ae3485e4bd3fafbe369c0718e68329e7f9cd5ac8b2860728b40a0520b6b24a5fa95672d416c3c20433f7f474b24312dcfd56e1d9a13313c2fca4fb2ff9fed7b2eb58b45643c0f691d982da402dda7f2345645de98b97ad6b33922817eb561e18919540d88d76f605c215c6c445dc5f6a5ad3cc3115c6dadd0acb88e701535b13306c31d03b66bb809220264439e830b6db075c867f18fcfcf23a2292b8986c9b80ccb9ba68ba9f69c2df929b8acedc53998e6c353fcd0d4eaf02fc3b89f03795765792d511726e44735da7c45bd67d259a880c9a36d840e4c03e3344619e1830590881f9591d665c65178c465ed83852150aed1bed7a91d1d225976a758a31484f4b5d8359329ac5ab08dacbd10214b1dc45603c07db8486322b91ab1b7c8d6fa06b42230b0b6e104bb52703234e762b56893a9d203fb1cb2e743fe56b1239552f4d075055f60b74a330f3ac9c60f8a77bc519478f85a43d8592466257f3c408e444e1e60fec2114f1af6e607611e21262db3c4b941fe959cc2cac8f56ac05c1d44cd8b843c077e99823a6533fa6a6e8c87581c2ddf8dfb0a1d10af8e2e95318090acbe7ad151fd78cee5ce85ee9113ebdd5d99a226d81cf918e3ab8feae5a9ef7150c68ddb45f40201b740cc34693e766dfc2a723daa47c09d4a819b4a416d29e861bf93ad493d47f9fcea2a175b8604797376f612af38101374acb936f2c14adc373fd7450b49eaf70283f051d82a21955bed917ff5b91dfb5bd4d3bdd62b07f828ad1145c223fe17272e6787e82f749f06e4049bf1498c44ff8aead6dc40ac393c34a9ffe0d4076b5afe7eee55bdbe04e9adca70fcbee3a4168fdea5f2664902a750987f77ca83ad3df08f844f72bbb2e041f2c2f85e7d548858053eb5f7e6a8d1c6d1a80937648b868475d92f0f9eea5f7936334d31f4838d138c7b73aa02dd7542c624956e12757e29b0c0f5b85ef77fc2c79565517fdb3fbf2627fab80f8be36c195a8461d0a2bedaef30986067701cf83122b1cadae0436901f8d712841faa154bf516c86802f95804720b9a64549d5f5276f501f5b7a3571e608f6899f1a2a73329830f303cd516236404c138a05fc408015fb15da6ff33944e5901ad68216210b2e366e70eb61bf409c9b233ca67d3fb6ca4981e0ad46a68e7d60761e9045614036afa5e13819b4a26181888563d73dae125ffa77e510f8b4e73a8a040eed6d3f96b4b2442d653d6d7338a2b53415186e27d9af85109b424ce5803a6a5d7366a291f1d612dd90251eebedf9f6b7d1dbf2e35f55277da98efc1e4d5cbdb91bb4a5a99d3ff1baed1e5fcc68a9e5e6f12adc72df50e3c902bf0b813d5c98737f9fba73e9638f7aa09ff87213266c792b821131e7de1df752034baf45ca2a1d923e8b2517a8f8b2656c8478f0e2a79dad7a2c8965c7b8fa3889416338444fd52891824b523da6562b5f17445de81bee50e51dd1a37f3ad67a514ab13bec687da14cd0b83d03d05a136aeacb03bb97eaa0a156ec85cd6f109c68d1c633ecb4273e5fdfed8a069b79274350b4c3983fa552cebed6bed5c51cbaac02a98c5cac48bbc538ea8a9991a908045e2a1ed4d7e09d877938c7dea589efff9bcf4881d28a619cce2e8efa86c9669caba8c794bf3d53d45f6c9e4b7da70bd9f1c49b3071782a6d208ca6b8067cacef31c5e778bc7b59a3399ed8b215df413c464756e2b57e26844442d7497d8628b0fdc1d7a422128253970cb57c6992e70bef2c0dd6ee5aced7738265cb2d7331c58f59d99678010a106e0786355af26d25428b71eea278a4ee93eaa0d7dac98f9976124da1691503879a3b6179b746385d4583c06f35e08b7e0554f9f4c6f83ef25b3ca5c3b99e7a4906b60d2bd47a43aed098c3c226d2425d7708c3035d3aadce071a20a7d74ba6de9a99408de5273e1a0dde7ada32a62cbfac67dc2c8a864399104bef7e06f286f3835778f4483592852742bfc346f99e6b5fc05c14efde917cef1fab810ca0ef6c966d978aaa6fa49a67e619d099b6d72185c20f12a09ab644817dffe6b85ee69224bcf33ae0a418d31a7d3408635ae8732384b4c21f41319dace43242f4896c2d7ac0f29bd27346c112cd67f92277ee0449271cfad030c2a0e05735df013acb9102dcb9b74f386d1a4c9419bb9e110306e6cac3536478de15d6c8090053a7d1f324a3f74a231ff8db960be892b91365b4ce9dbea2fe5d7af768a1d7a21e8cb2568295c95f3a6a25c4080490917df236f06ac0e3f07f4c70962851442a8ac330cdbedfe639711894488bec7e17a8459a7aef3601722d737396607bee4feb7c25026d23870b6f4da6a8ccb0527a342b4515dedfd9fa9c56a4fb1afc9fb1167921596fb6932e3b4eaa717d69c83fde11cd0337cffe3129b91a26cec461bca5dc9e112577806752138398f0c93e68828ce50f9f84e1e7faf21bf8eef3e531cdc305ce3b58d0471ea90877772d0fa41a390f9f95d260ba6ed5b8fb125ba3a287dbffb71ee4c71488ab0f64b0d7ff7980d44bb5b238dfc8eb7c7ca5d28b9c4121ae7c25d79cfbb23354a28e7e033679defe9c757643dcffeb3f972ab3fbf371e4b5504b777a41c7c403185d5a99b34705d5962fa2c8b3a0ae5a80188d1eec2b7134a63f413105e94fa3943f1101d8e7ed414415388165cff938a2a047c85ca535ce559da2945e2e58d5c9117f75c7b04e6068131e720fab088a89972658b7ef2ece6415ef7c180917cf4604288b8afb96f999d407cd0f3f7a5fe5a693d28191773ab73d9c7a3bb1f5fbfc10952ae2ffe29801eb71d49f4dde859468313c60a972c72ad851ef10947d21f7519533f27d4bf6e9bc6f21d855de03b05142bc37bccead832fe22345183ddcba29f6c6ae6654f4db833c09b9c76a450517a94b4964851be5a21f422dfcf8f02925ac0ddba4e53888eb9d8672cd5d23d9d4d15a4bad4e10f7cbfd9302fd06178192a9534dca9378c2d4926c2483db99bb08f85bf0d73e07efa4ed50ee91c1406bcdd6a23a2a0519cd1fed405056abf77be86c83438a493417133f12dc828364786458a9970a42b1ef361c486eb4c2e3c9ba9762ee9a81509312a01c537e783be045b62048bb49205de4bfc4b2dc1764eb863aaaa085d8adac41ccb33da7f322027ded27a522727196557ed41337b7feb0a973b526160f99f83db0d70f1d51151a65861180ca89c889765a01a19cf5673816f715261a15c55db5c04f7d78ce85d4806bbc03e2af95a00652bf3457edccef76edd6b2ed140d92e960923ff4adafb7e987de7004d06fb51e95e9f4492db500b8e9c922a2cf709666b98c25dbd630eb246d00d6e2276f9f6d8cf9b6d79580f8d24948d2fe7f81c481da0b557e9556a0f9b21b98ca66cbaf2c4114a91e713142a841672276a62e6a870629e435bd7a9f106dce150690079758576b54eeecfaad7fb3f75318c6520851d03c4aade1d5bd8827f1dd1f5578e8bce34ca28f5ef5bbc0aa502239af3ad7f03dfea14fed193e36bb7515e1870586a8b31cfa0fd478792c265d403bd2086501d0104f2b472603f1868870a25b510225546ac9406da1fcbdb444301f3362741892eeb38dbeac1ed7cfc37d9ad18763c53366461b527b74e7d680714404d73adea18b232585fca9b171b2697959cedb90ef317edc53bdb03999e75c9b00188d4b69535b74d3fe2c056d19863e7d63b8966e5312e39caada89963125a67d357c6186da994252a9a3227aa395f5fbf3bd03479bc0dd9ee3cc96d95eaaad6661217cfc7fa6ecb3379c6af698453486c413c0cb246f620406f466740b7774595c7bbd87d87e44afa4c6dd439ebf824f3a3b921425339e8d1bcb4db335547de0e19d1fcd00afd4bd173b7bf7b08555187f8d8512ea92de2bea12e2efa8cbdeca16ebcd8ce7aa3c5108fc0469366622095f5e9216c8d8a43154d90f4934f62f496c0b93369dd141a73050197b52879bdc56065d33f3624a3654cdf7ab5bf868080f2ba0b2cfdf643d44d985ccf58df42939085cfe379c090fd386b8176314f75fe8ac481536b8e300216445d016b834f022e1e60009a23a8f82760194b63abfaf64db05a070f98c4d33525b76b01547f06fa2a7a141ba5516068864d9fd6f691ca4ff6b2e4382279b3d612b243e69b14a8016d90f247ff91b3a09eed660806352c828fc4dc0ee4eeb24557589fe1607d7d78dbded4be4550ecc5148c91488010a22b27c5feee5592b8940f3ff9b135765c8e7fab69cc487c735bb49787456728d6630f5407d785f3e4ca9c6ed4ecd10c21cb496b7f4efd0cd6ebdeaf439b88187387413626db0b9e597015f5b4eab661a2abf98057250398f76b4c5b7dbc749b27f290354697be96b2c2d32b2917c3efa12387a5544e89a5c35d9cb8428a7ff6e079ef8e237efeee284f21ada90772192616162614b82c476216c14eecd469e855580db18aee730fcbba100759377d5336d99d279c319526d1d19183a1c11dff243fa60b10c202ba4899256e76964a59cb56a39080f7df72d534343c8209172cd309920666d02e85ea4fb76a5f2196dea2d3d8ea4d84ecd1ab801c6ffc8b7a6d56e6c332d7d1c137a9ed693dd0c9396f691122a5707751b8ba3e3d3f24f5ca5d09fa318b09807f609afed96908792a0a1dbfbfd2e1b260e3d023f594ba2fe26debaf33c8db3c3868e1e1d2a75434101405ffcd1d153ddcca737709269b8a6276def32616225860bcfcc2d4c1b0e47c6c17e1778f2d83c534b8051510543a22cf7bfe24a62a81d114d48f25dae21344acf4b5aa86b7ff257caa7744f73205e652d24b66f375c6fd2397113c7fe88716defd1a9dd295ac43bee7fe55652590a894c17ddd5120358ee0bb1f3f902117f14e97c8129b77c804bcaeef0a1354e355ba49bc25431a4ed55264c95e81374b15e40b0b324ce241fe2e4aed0e40115adfc3b29d8f9179fd84522c7a137dfe024f288b6241d936f1526e115b5d81579d4ccfdb43876608df1126756ef63e994633e768ae2a48a6d7828321a5c24cdcc1a751251c84e0d2bf93ab6233f41cf9a8b6c24c8c20d1262c0041762ec8b4f488f2430ed9669809b8d80d85bf92bfb7d29f77c088e948e1d11f827f64bfc81e4d14cd86ef4c90010cd94d0fd526288849b1dabb687ce36ada1cf289d57b43091dc67bc29d6ef0346f1935f61f5a55af98cd2d9cb48686124f1895f69892f4dae3f8cdbe7c6eeb5db546a64de8cbdc4877c4a2dc77b0dcd9bf8fefcaedf49288890bb57e20fd498936fd06ecfa4e3d00e76bfb3c44cbf55d64e69adb0d2f239967e88d3cc953203a44d2df6f59a54908a33059e237776258cf661f3760c8a60ef1f277eca345fbf2c00759c780ff4dd2702a0057b1f5c47fce40692ae586dcd75492bf17e97880cf2b7bbae50b71924e2de1f70f9cd9ff0e3a1a9997a28614887084e31f1db7a7d8579bd61d1ef7d8b25ca0f0a43dc2893ba572c955fde350d6fc028ab0531a7d8e97e3751812e0d0cdfc87275438f0864489820d6ea7884116ddcc06f0021b8dd04901df5206ae6dd72d429575a89cdc210253c9edc4cf7d2990f9f03ff9da8c79dd18f9dbc0bf74999c73811e693a6d40015537d66262ae67f2df335dd2fb9f173bb54adbf10982491d3d4d5f2996a0e5f2d1d641c5f347a266dde3cd1a496163beab0aa512b678c98a1f14c96eeaee704726b8d6d75199145c23da314fbe5bbac15c86860326d9ab8fa6ffd9776955ee0189ab5162109aad501020a06d0493429bf15bdc73897912f78bc25fbbc0210836ba5b25e4cbf68628e28fbd14269414786d20c221d0d2a2359564a4be548557fdb769916e3889276a88af7edd2f5f7583cfc473bce8fc16fa29f0ad1d67e7beab882815cf50d75aa95f0f7a8721b9e97d0de6d26be318a5e6300a0a708d46bb4429bf36092ed3b7f961e772caa0cf4c28d17a7c8275d44e7297d1f0d1b54e4220497e81046dab39e5caf1334ef137b3b1e9aadf0df2c8419d151f935c3e2ad154ca7c9d07a87eee645fd00851bb545e5ea0cd0fce97990117420a90b43c36a580d04b9fd47b8c413ba43a80338d08779f1fc3e8ce2ec18c0003075ef29834c3b88be0cdd5af981d407db04a210a5eaf76c88a47f8942f38ea8bf7694cbca7e55a59f2429fde7dcc55c396d3c8c4dd5cc26e703555c4f37fb18f4d6ef8b9839d55d80ddbe1d581c8426af6b8900c8464eb39a8f5625daa4cc793d30e04514567b6f588a20fa847eaf6603030ee1c4a082724c04c0459cc266460008a98da7954f4e6cea5924d8f7e909ee5d4d4cd5a16face25be5fa9d2559f404fc98198d4db568044703641eb1a7c7e431114331e270fe776a79fa84dd3b129eeac3e41bea15c4fc46d17b19cf17a8d380d6ccf90e947d9cbe98546a3b3a6d8795d1cb9b095ea9440b51dc4524e99ab2da97736b8ddfb0869c31714fd7292cfb673614b002503172813a364846e5347ef90978a61a88ed12d631727200701d54e7914a6ec8ba8a7861b9d653d7fcc9eaf31587b1a35b3ec84e8c161976380d6c759d9df43833e034da7a7c1b79867180fc9d115ef646ee4ba4dcddd44633d9e432196432f34fea38a69db8c8643ae1b0dd7fbe9201a28da6cd3bedaa1aebd903d3131905313982592c3b7862d7eed7805d529132bcc7d744f2336b67705815c8d0b5a56538cd386f8e1fc3340680395075bcaa2a45d81e38e334e4dad8adf667f35502578254a3bfb24ff746275e969ae044bfc63e4a9cd1f5c9de8704b5f360b36e112bd0364305bd1b89ef338675ad1974eb51bbe40aecee5d2cb200f55fee1fc5e94bd744c7f0ccb634152107765bdcaa1313a2477d0d66aa83d63f501746313c87d0fa6f170e30e2dea08932555a2b5c9190d0d631d6554404c14cdb6ef308eb5b978e2a7ed4305368ef7b76531f59e52f2020ca2f611f4e22c142aa2d5e55e79c7f6f12e08ce40725919836d8f37552f270c9993172dc272bb11c26a9ef740d4671521a31f25c9b221bd88994823671f08bade3b26b737a55c77a4135ba496292ecb5e8a3b324a6d13f7ea0dcfcc9f32e98828c91db2b08883ee31c35a0476f6883b7e938ba94898a7342d391e113c98dc11314d0368a1b16f81c55576c28651414c73b5efa95d74b7eedb2a3c1bdbb710d698f0eb4b28d7824a4431a503c7aa8168098ac0254f201b07b9a81b899e0a600dff5481f69e6d0958a48e66764516bb44f7f2ec2ba285586be87201c2dd104896a007e9b12e025e372d0a8da6f98e12a0d69851ec5ec5674d52ef4c0fddb542306aceb1854dd0a28f6581f5890ad16940a49c67172c03cb0b822abcc8fe981ce06a43925ebf8bb9ba9b7114773c52aee596351e4210ec3034f7954c64b10adec9dd007a83118fa426b2481ee9704033349af220c18554905ccc972f32faf2bc0df9ddf6db91716683354be8d04367252a485a14bab8e4ebd860e623eddb8af08c87d99bf79e3225d56d0807e380169290ec37790bdc02ddf20313bcdb63c68e71e2ca08a1f8d5695ae11eb82f0721f7e18415ef43c0284ac9f1187da1b830dcfe4514312b89c9e68d81800f7e86eb171c1b574ad5d3ca21af890fea8d27d97d7b988bdc36c98d4a1f04f2c925c0e16001e3554c5ac32e834affed3ec4ed0441ce8694d9e74a89881821a68c896ba7f12e455800e0b2cd82a04854e13c3c9bcb150a8d44066577ed1b5240d567fea3ee9575776425974d15b3c772ddf8181a1b13b800b2f30e5b590e0ddf4bf77cdc1f2bb8194287a6ebe770838367de4f22b1abe7881581f02ce9f26686de711dc4097b3f3e79c065108421f0267e6b93a92dc464a330bf90cb7f1e74c9de7de0d330496fa1bf43ca1c733fda16bf4dd8fd6483e4a0840be1c580ba557934991b3b9cbc6887a872446f25f4d8b067549455eaa54e27f7e48e1fa3b93f2c9b94ee4844ff0386ee7d1b00698074069e47df21d1b7a44160c06537aefe345c74ec39aa715a23a5609381c2cd308b9217ceaf583e1663016500a5536e889688aa426e8b5e58a30798af7ec95bc57387c3dd9914fbe86e7388287b4ce12d3543ce690b9d7ed02071ea4c1a722923de5285d3a7702176a8bc265a50b909c2bc04c4bdf98e979ea23a068cca4e5556da5b8b8632fa9145a62fa4ba0bc9405da92b79f990b0118ff3e76e64dab69cd1a5d3870aaf263baa3d4c6b92cc0e832d94cca73496eb41de4154c0f74c2ab5461c0f82e58e8d60fc1d20b98b5b91dcac2077e1d2f36688dfa863356e3710e645f28b3c30d0ea06989da07f5cdd44f6def0b351f641ec167f56539f8090cb55b715408b92689ddf42933eabd5e093a145629bd43be5157ae528485b41130ae4497c3305a14d7788c63d7536ea7a63a9dbb5b430741a053eeb161d6a0fd1b57396855f4329d0c47e91c160be6afa55c24628907769fa39bc66418595ca4bae8f4392d1a7f968019ce7a3929bdedc70677bd2270e5041b96f9130a84d6c3d18a6bf55abb736b6a2cd6971b754de4cb87d9f3a5f4eec659be9e27a822f6820bb91ddd02649f6a63fc4881559e35b4917dbd3fc1ebafd2dad02ab482805af94987170a0e5bc19a8a61f6884653e77eaa2ea431ae9ef5d8d19f7b9c742c2cbe0ac9e011962e599a6489a046c4568ec36c5e23768e2c3d923ce6350cc7356e31f0404ff88dc2463f3913f282135f32afd0758be17d33e6d1b990fd0f5a391e6670f40a8ce7e8b85a5de58df0294aa1c7f7bf7baefd44dc02b8b4cc3fd22d12f4615ca2cb3d232d695d1639b6844d823bdda1eb1379d321cf8b7b37bcb8d5fec027fbccbd1276ec60b45dcd12919e9e423d0a9f72e03268cf5a52d8e09fde3da8dfd4ce775744952a0550bc27ef83e4afe40ca6b0859e416754988b8d130025965ab5fb3a1c2325581d14146cd4f05634dfd4c0ef38ca850e29ebe3b73db85d941a34109429d97d5fd6a96fe11ea19a74f88412b5c1c7972dbd3298dbda06cfc2d91fc1ead178fc21be5747c515f54fdf801f2da245486221048926b6e9289d2a6b0ad017ebcb7c58e08f2aeb36baa434382e31861a430889cba1ee882ed44cf42dfbdf4da4fbbf1eb29b3582809f390ef44273444fbdf2c3b3a66cfddaadb1e7cdf1136e1072552b03b2b368a87ee11168d82809b45dd18cbe8ae5515792d73392c742a0fb58a9cc7a39ddb604d0555e6ab7481ca977fea93f655218e1a4f1d4492cee6ea6d3e36d0999bd6a34b3060cf28c8ef331a646d09a6e95a151e444d9880475ef3521bf145367644d7348c45cfc7d05dafb86231121d95b0c867c0eba9a1f2f820ba6732e19194e4bf2660a5c51d6f27f6f45e2351631c4b3817908bf835897a9f2c9eea7871f0850369bb96a1be87e8975627089a3e366011de8f8473a83756a26f25e95dd6229575a8e998dcaaeca4172b3ca4e0b8932d3c948005b7c69966a481b47deee0ead7bd4157b160a53e091a171ba35fa1bf4e72119ba6e66d133e97977c9fa64cd5173907c9e458f4857dc2f0afe6db2d5e017b95d2c23bb011a7bea6efc24a961d1e244a93b0f27d443653caad7f76cfa318956347caf546389584b7b938ab0497dcb229150730ab3b5123bc4dd85aeb9d909ab85d373bd37338dd4750a9812e0a30ece2de15da3fee7f6509d29031554a00c010e353d91cecc5fe1094eae8b70b5745fefb8d6a3540555fe00157b31b8987737e2965dc4254815284748a1c0da09b760494591675b246a621e4965fc42478094602d4b54b1fa5e4ed0fe18421e6b45ab441481b3244cf6dc5071086ccab4354dbfc32345c7ab8a440f66b5d40a8165d86d36048671b54136c2682478f9b2215e31c0dd3f74972c74b1976e29e67c73098bedc52b76219ff3660d995e1f45c1d5fc2b3d7c9f4c81d66c72422700e524d1f7ea412c10f1d193139b0030f91805b002221bfb2516b27b882415c467cc98b23d5bdf1284e827dd63524aa72486ad0762738c74a111c63b9f6eb71817c9157ff9affa4b60e6c477bea9099ee64bc72ac87727fe72258c7372708f272d86f968bfd9d4ad5a9f324a2403c200784d67e1ff45f2213ca67dc791da86c07f9f1fe5b4619fd6e63d54786699acc437ec104ef4a4b6c198e8eaf8bfedcdfbc255680a92042e79be385eb4297f0a1f604e42c4762ef9f88a84a418561ae993e9b2c6c9586b6890625b85e69d87a894ac8d053a77f7e727f2175b95f110e5d81759ceef9c22163cde95255ce5810477e1f47b93796e811dc7237657a44eac61f5105ce26676e10deb32af16386ddc9e16d1da087e4df41540c3a811af2673df407830eee9fd6ff4d41a41ad28add4698880dd12dd2f1e6459734bf447aeef2d477d3bdf3d938152ed48ce3c2b52e88fdfc4d54b31b0f35256500515a0d2fb38ca41fcab7d3bae520c8f4805813e800262f50f7e08fdbc835f4427b72f706f470bb9039ef7d04d5beb423d84b724f66b62d20c758f2f5f17d1d165c437198e75d20f3ecf80d0d493362fb59ea9cb3b62657361a4cd67975218aff3476ac463780d67f403d52da5f102ad511cd3bd644747768f2615dee249333e81551d9a91c8bf8bd0b5a81e95333edd95a24cc7f1ebbb12506b7775911d6c6b60037c64ffba49b353f8c02dba9c79fb9d0a158021b20e846e367087332083d4ca09f6e9fdfd056883dab107ce5dd805f774b9ce6454198be7ff79ca70db0745587fff180c206e0c46f37c65f4c3d523d950cc97fbc3dd208f642baa68444e9968bd8557453a53086eb602c9711ca60e4ca1ca9eccd4f54e9c2d2f907cd464702e96e2d8db93f0e2efdd8e52510f4b7e8e6593097539c104999f6e6ce1f0022a91143b482238325860c6c2e10db6448594227a078a3451f2a6c39092bc0e4f1942a5f40674799959f2e9dfaeb36c5d8b0c063a5089250e1a40a9bd27ad95d542cf5a2dcd4bea9a5e651dbd4fb1027ff9d83fc1638a0a95ccd546afb25cc7b2a0c76ae79169735134ab3c3437e902ec12e56384d6bd5de71b2cffe5f91a32e4a6586174652e876a0e0bcd0a203b6ffd1db1bbd4ef1cb9f795c8333a020252eec25a8a43a75d3f74881ebeaf0878156462d202a217f3aac0cac52bff61ea5024b6b1fe54b1a0e8ae0640935b7bd945581d6dc334f85c110de8b202597410707b3f998b6d3be44444afffc71ab0118df1a71ed133cb885dbe75f09132b26f28e44148484bac1f18e2fde50f2cfdabbaa0dcb7702087ffbe44e8692a6666ac1864c3dbb44727b1d8879ea14b79b80205747a1e07a4bdea965b224b2ceff6930556b0924ccd8cd30b8ebbc3c49eb87ba5d09444ef67242c7f6b0ecde6ca80b99180e755dda9bede0d9fc8ed82a9de53382d5369c743ce5e36321eb49c78de55142624a97169535c4e61d8f5e566f470868e16524ac0a81eeb6943ca266bd2ea6371b132cb01d0bcd2107b4ee6fa3580e24a45f59b2826ebc86aa7163c3da762b0f0faf404f642f8699dd859e30afc2a659d441c6f00125d0ea0dbca598301dbc8ab7cd79c3e02b5515e6a812fe472cf83534bc82ee72349726cbc89e05a7200d444705dc0ab4d1d5c5a4bc4ddb546a4180e999b0e6d03bb9b6eae9e74904b9a473ee143c0a8e73d33bf46b6a25e2e662514b100f81dee9c7f848d51e798b48d8fa77eac2b4cee838dc5f72b04282f46284051f3632427769dea37f36c801123d884a6957f65d9230ac6319ce47e375af210ad8487e3081b783354f145c6728faaa382d2e8eba291616b201644fc8cd75b7c9b30946f0501bceb347ebad34bb2f8c388adcf4ff10a3dad0a1f3c7fc2d3710ff45f3ff89c348780a014eda751e8208382e8a434860d68665a3dbd598996e08564e65f1fdc1321bd2431fc46ddb5ca8498ac639180fec75959901fa7115b80ce7ebef99ed623049060b93bcb550514fc5fd48ea4b83e4016ec3782484775202d3ac6b104d1f3eb5bee2b67f1250bb085111b6259c2402cdd3010f0b5a1884e27cb5c47f860986aec38f94aa04e5590055e8d9e67e654059ea83bb5238b222ac2f245598ca8e18d80719b311a922939e598bba0a183732af947a56c95c462ea07a07686ac4f2bb45afcbb0d647dfb806ba96e92c4d27f11e85a97698ddb57d6dd96d01b1274ae9c7b42baf3e035a16b07291ece2a3ee18b6f856e53fd974a296d27c392d521b64a45668d873c09d60af07bef0844c1ca447d5885f4e41993a8e54ae0738dd23e57b0b05307737cd4d7c943e72b6240eb1160bed838b2932ffabca5bdaac65f3b6b0262ddce17a378447d76acf8c7ff9cdad38fa5b0bfbb832987676fa20a13be0ba6766ad7b62771ae3814acf11c64855a40a0bc1661b1b6220a68e9b29bc5da51a1d40a1bf750d2506c3a88bcd6c69b04a79b12bb2be842c0fc3140dfd685b2299443b68564393ed3daaa09d3bd3bedb3518558dbc9e523fe7d22cbdb1ebf8fc273e8ee81b6237805e9c938f1af46677b9a83aab5931d9e657b9b36468e49648f2ccac106360e6a6497a86d650480c7adeed17b414bc9d5d8c26db1a13a11ec8f0ddc2fd377259ffc36032fc4208bde1b2cfdd0228dd5ff7219e45ceb6ad730417c2ed8c6e51b2d5d5b03cc93645aecfb04d044b275f1cd11bda79d207dcd7e592676f770a36331380986bcd22ac8357756a93fa63067e574eb9d6ba42aef2fca02e41f49aa270ba883b4ebca8b20cda957356f939672af54fc4416cecce45fd2f51618caec643bdfeae0cc17726cd0f75444fd3f28ab43f46e4acaf598899bbacd951ddbef11bb5c0853bc73d094aaff4185707757306d9f897fa8682852ca291e41fe19e9bf3aa117b7280347f7632d208fe4d408cce3159cb689feb8190fb2d4f2ed2716076a1d231143871049ba0604292d4b5b7f994bd7ebe1e47f8b1cba53c7c5d230a9fae4c3cbc8fc271c8b78c35d98d822781d3608303a6d6d94a57ff6521017b75214d6d95f8b598f1d730b04d27e8effdfd82a5f40065ca14745375faab9c99a0959556c2d59cceb6d7980e227ab30a053e3bdfeadf231c27fea6ad0c0d05b20f18c5cf5b77a2d89342c1c5111ac5c5eae21bd06fddfc2c141b7722e86f50fa23d4d90522f6e60083499472c6e8544da828ab9a8242b1e8ab461c8adbd72d4b8e0f2e4c2d5286fe495e27a9df4f64be2bc9e67f094e2fc1ba5d35fa631c1d2b7206610c8c9f0d8dbe725f2e4e61e794e19f1f3daad6987d360f5f7fdb783adcef1785afda0712ee1288b17fb5b98d91f0fbe714693b39ce553ed8237231416ec5cff592173dbdaff96c42cd788032b04421786c44c50fc126468149abc7b380617e57c98366941c9c795e7e3835b0dcdfae2ab531848612e0c88befcd29de818fccfc36577fcadbe93d7e8036ff54af569693c3fdc64ed7b1c30b3d085b9d7806935393689c4910ab86cebc2e92450159c8242e2fbd49096553587f2e2cddf59591f738b4e3010760416c2429e34aad60759f106d50c8022f7159d9bfbffacc3c182e4df175581d2dc6f51a2213299e077821ed837f52b6205fa8214595e7167dadf5d9e0c51a7b0efa9fc42f7c964a5aacc1414cc0881fe645ea16b930202912887853a64aadd2976c19193a2bf2e5b72fcf62c035732435bd694819d943a4dde4f65fe2c632c74273385d527f395a23a5738943109bad099c26a93a5053cae5442012471797103648ce7666de81a06d8b61950071795774b113bd1feb6a6151ad09a71d761a9b749e71d290731ffff07ca3cce6f4f84ea247825a5b9032c6febee64be2b87663f0d36ea2caa70238ff0f5c006aa6ca13e6fbca747b0348efb655778dda09bf1874ded7222589cf4e53afaec5e94a71dcfb3e57b00ce7be4d6afaca7d594b117ad0ceb33df9d6533b96b4eea2c8b3113eaaccea6668c78b3d141c2a41ead2373d6577852409a79d375e683ef87843208bc6051b47868a7450739fd105f7cd200d1d3fc4eac931733a16bf06b3868cfe4eca49739cbde59b3caad76b0291efda9058d0593738876617f93737194c31058f2292b3f71a71d679f5dd3a15b18fc02ac018891010c979751b567220c11417dfd4bae6d275cbe3df6efeeeb544e5c7ff2eb1104fb58d3a68447deaf466ab08fffa0e0b3681e3c2b5bb4047bb5d44786d9e49e961eb9db0d58e6d338b8890f43d3752709757cd12bf4f293045208d14e0f271156f8bdfc42d902d86158fe8de992df63080cdcf20bc98acc61835473c7b078d84cd9f47a2884d7016f3215fd1266d5a25c67134952137937f56883d032fa69a11dc4acd3ac9fd9fbd02d304ad351f934040246bf21b0beaa036be41a46c3f43ea008985a86677a3cfa5b28a61aa974f4a23dc81d81619d22c67b54d25437b33e0e52ed7ffe5cfbc7aee1462edd25fcfbe57f6b5298a768883dd72ca1479cc783c48298123dafd98af31b62fa71c2fd6878c261f75b8028c9e208682c9623c02abc205490587f89842cf3c18b420163b569842e3ee0eb61f1f400926e6af26dbecc0b06b486295884fc002120f32bc37c56ae818f2a494371521b1f915116b64e0246612e5392d9a95a12e5ae60c6a55e4271dd403e12d5520ec9b306643e5f24194b8c06c8ca426993e907821cb25c84ec69556081f7e807adf60b3cf88da8e1ca173d05eecd6de6c476adc61876b73dc19aeb297905452e5f761a5dbc40c0ffa9d6bb092e8e264f06820c3ae0e427dc99fb4d34c37c5513394c26895372f5b69156c7840c5220d8849f19825cf3f5831d0c732fe9e9a11b9d70f9e9a31b0ae16f417a8946bcde43c8132db84bac24feaac38ed00b5a3ff147f71217b9270b95fb992f2a990448930bb674c8a0eb32a613594a010ae8eb9a7915ac0f0364a028c08b37b18bfc87c5ebdb77825a53794df43afbcae65c04db5e03f2cc4dd1ad00f22974de6855a1d3862dcf2d7dbcd0f9cda5e58a355f5f6d92b40552a322950f084e052c3f20917e5ded1b1111ac40c9b8998168adcc225f99694666ebe67d21321bd405fef1d60410775f5843887615374f9d1fe03a7bcacd013d001cd298407a10c8b1a0b79cd1262ae77a77dfe7b044740fd932c5a9dc52e061508aae4cf069c2eb8b55fcea2e05bc5d3420aa4a0b46fdb469130857f259c5fd8c8dd5c3df31183bbd869b67c2d7d5acb3870df143614b56f415405d7fc04cd25f529c4d1152e76e43c1ee9978f557499fa303b2d83385d1a772f4cda6b01b6c2f72080fdba3d553d1281d10c68f67fbbdb2361ab3ba30ad9015eb0b8ea29f36951d8fe1ec975cc364e05c347f9b90ff1077411f701739524c789c82d1c5153bd713ceb34366aa6a3a42f5cb367c3aed970775ba6ecbcb4bfd5eea2d09079f03a34d70c2ae053611cca646d45af5daf570febe2c683bdad78479266e825118f972233fbdee69cbc2228b02098c10fbd38ab5b3f4e2502a3b6cf00cdfe5dad0346e0eceb4314153edeedf0fbd702bf586a11746aa5a5c11171d0be5f6e614ded41bae419cac48f612fbe92bcaa20ae234a210401850fe38e2b1256c178caf41080b6c0c4d61547daef0b3295a272a0c885517bd5999c436d1aea4a441dec08c36506a37915c37e89517e9374cc7ce2a096baf8c064df1dbf6bb7e9670444b8c6281da99fecd37212094012802e8fb88262b770557df3f488a00860b9d43cd5407be0eeb0ad04e3e3a8002217366ac851905e2f90ab788f405dc037c90348069a707991fea21332fa72735638dec07e26ae7d354b971b23da5da518c87e55390f67682aa9c609e2ba9e94134c84902bbeec00f7a9f19cc9b18d6af7a36e0450b33829056e0385b82d323048c9aa298bc4870357428d81e6b1a7c6f81f4e58d03bac423f4760a4589fa9cf435bca25b9f090c1677ff96e721b156ac04677127efa740a99d6047619af87e21908fd1c85b82e98b538b835324392e7d7169ec5d5c88f162a57dcf73fe8d4a12b13e6f31de72ac8488dc933c97111a1f39f8dd9e09e0c5102394846a8a8658931a7a735ae449808d6d19298ddffe345e1aefd2f64b46c18c9ba9aa09ec1c28e3e2559deeb2f72d770e884feac5bb46630fd4ebededf6f7fb3b98a5bb124354da53a08aecf669f0a43464a02a0f15acf033aa3613bc59147fe6ef648642b02159065e220c266ddb9b3793b42e72388b38101e539be446740de19f68014ee9b81fdea0547286abe36b05372f2d20fc3a54024dbd67e07b30d1ddcd213c082e4a3d3cb9584a453fac6630eb89c38028284e3435e8f2d8ccebfaa721c1ccc1e26d3c939d35bbee5d04aad96762ad615493018e6a207a0370f88e15fbf6cc55af06d94ec89ed6244d24d363f43c1245199ca47203090aa7e89a153bee2757f49d38b92e7ea74131d4f30373ebe45e6c16de0128d41ac96ab9d31e781fc50e35e95609a351e9e2abeb3deb1738a822e10a40150653999083f2cbd9ea714ecd92aa00321d0193c20e7193c6573cd56a0413c624105d34ca0afbd1460f4be14724cbb68c0edc9e2967de2c85625d6412bf2eb3d3999e78703eed04a5bd0b6011ad590c5ffc706d5bbf712d5be8a3f674f51a681aaed44539e5e0c81cadf270ea49a868b33e09328bcbe64fd88fd515bbcbc3daeb9e639c71fbdbe93514e32cddbb9b81f03adcafbfe481b113b62d1a4630d3b194bcd318d90de37eee40a776312d3de9ba1a2c6b01c4b2232a672f3d4608dfc2ffc03cae17de6577f2101bb5359ea7680be0e9576ff0b45541b8065669df1b6b4adb2493190b0cf4958907294f9ac17cc2de5d0e4abf13d41b6192dcc27070e8c335da55e6715a2e3afa849020b37b5f2212c0f4c792b2dd4861f8937d14b7d8b9fe08e0727b67e9017108d2006b2557401b05881628dd0523d8c0a6e632de1e78143432674688672f93c1ecc22528198b0ea0183e180e54f355121526058e9bc9b46612a2cfd31024810214aaf800eb2c37f5aec0c21cbb1b821a2746af95fad32288657f384b52ea95fc22ef620065c1d0408337ac7319de9e2784c19e67f9d0d7e070dfeef7d1487b327d2661f1fe5c909522baede12be924f49c53f204067ce996bed6e753953f686b9a6452e30752404b53b17132a12617f37d7472cfd4533ac48b8b6d1c18ca9638cb6c255a554c4066e5cd23d90d848499ad3f9e54d0ed9061575f0e88d7d95e0628a68d137e517c2e808d3354cca2360f00cdee7d77b72618bdf40563416d0fe71f5c2251ce70adeacedb8c86d97ee64a5ad05c8b6826c926c6d10384e9bc162ed9dc85d820de9db792e828b699e0df4de47921a7ddff4594bb8c744f0b53ae4bd62147b0f0e021db8f2bbc1cdd9c0dc9843cae870d1baeb0fdb038f84b0ec2720f04fb41fe2941af5a276678c306159f766f2ae4df18e38b92441421465fb1fd9713aa274124fdc160b517bd3ad20576605e05aba2b0614068864c93207aa17953218b038f43a28845a0401bfca6667b8f5689c9c93b8207962c05dcd016d288ae85e79e0ba0e6d1175422bdffac125d79d5bab3afb492359680433ad3cb6ae7fbcb414d992386ceb67ea2cb7465ca9008263440468488ae63e182a0fc4e3862e2cee45e48b42857aacf17c1ac81bb4cc3d64211b350bbfbe39acce24f744d1642f911ffbe0185040ca087a8ed96e847347e913ac20f4ab984ebde49a67be1ec5465b290ef3efff2c6df62e166edd556ac51a010144b0b07c7d28264af0c76bb1ed2a4c283637180ec5516bb5de0412e1f3e0a93c2f2f631290f4101a7941a4ae585b736589f4f62bdfde199841ea2f7b8e2849b695e6b0ec0a07d8c9284134cf148d820477e3d7231d9e9611c4ab3e4c3be28ef1a92393a75125d1c46d6d02f2fde8c499bb0932032d7a81e6bc1ef9f24186865347ea09e93ade30e036c6d48fba3f2b5b22a4753ad9ae43afd629886f83c8193b33ea7c9bdb9172f3dee63cfdb87f40e892504ee73e35bb2a21eda05be4c9764975078dd03844dbe70d235a085956f25bbd1cdbf253cb8e29822f125d48761d971b93bc5aadc23bd7862b3cc2a820ab501e9e674ecfb5d214b7db5bc24144c4fe1451171d8d8b73d66999669ca5ef0085028a42ef0d9d6c2f47a5f4bc096e78628fc3e11814559aa2f193d2bb2f66c28fdcfb9c55d5efdec6bd599039122d8667abdcb19ade61f76d8b71a1c06d89c5fdeaf4aae0d459bd7648c1906b1ebb9c9e818b6a53669532e79fde4cccde2f2bb4da5d2a457744b15629403f6b55e554af4ca9293c89d8cab1d8b608ab5967d76bfa8946383716f2aa40af256a5f6612231fa54eb8d2015fec1d569ddc325df8f27c15637750c11eded48a86c8d5315f71fbbd00c1111dc0c454107f8098b97e6735bfc19d8740d0d2732cc1ddbc1621cc8a773481408c7a2ced0ce082db4780fa9b1839e7dd6b5d69d52149fec8656283115ca3e2ee00ed6e98bae7b75407b8995c5d1722a318dd8fe4b1b1c684fabd0b450995689fa15d1009ed9b3c36bbefb7a94b324497340a9b039a3939320c2b57630ff221eb35b1172e98d46d2585f5674df8e85bdc76658252e86493bed5aebdbb749efe80ac94221658edcbec59304d343819c24b067e5d8e91c42ec0a17d52ea4505c4d4b7a033d3221d8a525c4752ff833a9dbd614fcc9ab343a1952e8d9caf9566091dc303e8b6006f183c70f14661c80f6688c46c82d2a663ccbd311c8ad1d261ed89ff3c96f6a780532d7ce761f1a922fc4f4f9ff97c90984bd2804782c46ac71e9b16deb5fe42d481f1c0ec9bdafc48484f0e071cd635ad380f870b4de46e06561309ba372134242a5faddafbf66ef261b5beba7726bf036e9ea1f983bb2dae4ca2e25d9e87f5062021c398ebd63225d450a63eda103e9d266294c2020ef6acf1dc5a8b382177ac8b97b2798a2408422672b918a024cdac4b1e216176f28cffdb3a864642de7994fd375aca7422a9e1f7108634b1572dfd2b016e295d4d9fab7612b04f3b650c177dbd46b705b2807d2700fa715361d835b0b028380b5e383129d3884aacaab82002b1e5a37f2cf52e16462047ffb20ad973e98402bc820bdb8af46be8922dc56184dc3b6116318790d6d3665fc2ac797f222554fdd18c1904d1aea6f8d3a6b0702797a63c061598a4063bcf73566d9fed3d2edb59c6579459131aac920bd4769a560023a0eebcc4a3e1a69c540959691910a4c20f04b3cea329c1604e09d1acef36f2f01dae54f30a6978561e928c2a3296cf7a423da9dcd0cf229a6f5d819a5a5f4928933f620d234b104802edbb17268aa531288d91199ea8cf4ecc8c3235ec220983372ad6beb9584977669dbcdcd93b0723f6ed0d57524dfc30adfedbcb6fdd9c1fb51ed59aff09d13f46a938e3c0a1b543fc8c433c4f0e6575dcf48add1a68c7808306c0dbb6f36e7dc209afa0cb8795b5dd6264802fdef3c71c61f834265a13120ec3caff5f1e8244ed873f28b20b6b027f55b5c2e95126d505caf476c1a4ae93cd9aa9af3043ef41c4d76a288144043c96b262e2f9052623be537925c1f6e6181f0a4009a547db74a2921dbe3628414c0d4553401183b12e03990ef1ca31858cb95bca4008e94c51c294c13a18606f4c69653e8c60496ef079c0ec096e802d81c571e40d61ca67fce6876250102c7064088889388477453cfe8ef2444dbc7d9cbc0d38f090878deca33b59398703df00604c3febc12bb2d38fb29636c1d8a73187ad11d614a34157e73407899b1cb35a7a74a2440763777731480b402180519ff70401bd10307bff962b2c1fbb8056f6f59ca1d12c079b392bf30b3cf589dd416e7275b397eb060c785a88dcb64485d92000e16ca9565b43ca31cce13286b8738751590bb252d1fa8f354e9dff33c5da59df52ef90abc77cd476465a67b102a38adc45092cfe07c128001b51034314ee08929257c2642939fa0a668af9970414a0bfb7212c67b52ce89050747cf159581e232fe20b54a536e5c73bb0945ddd4de9882af21a71db08e3f5449f6b1d945c9ee09e757a8b9104a2465a1b6188b713e8f56e8be73c53182cf033a5dd37ec617e74ffb1755f53c443688107fbd9f513737430f2b165da9268d8226b7a679450f9a40eb785de4a0c761a888a9788cc1712a7fb6d34fd2c418318865605250d711f3dfc46428307af61ead2aacb59430ac846565187c94da10015ad31d62a219ca029346cfd98c68913893a563fc1775e09257dae0837945a80b99b4a13c70af7b15792c09a20fefb8978c54988c6e85393774625e8b7f43f10cfd70740027f25e4f86f16d3d685887926a95028a6c2f599dc589fd8f0e2517e1d769fbe13f27f5898224c792a82c96b770a3b63864c696d0e336eff26c69cb111ba1b2257c1320c4408b046a08cd3996552d9866578a75f366054f6d6f9f050b34343c6d44f4d1fa16c61d70fc6d6560992219f9485646a4ccc5ca407965108652ed7e3e02cc074d851b7c14a9e6fc5254e902cbc09a361e4140b51e249d47d11cc3d2dd2ec3c172572fe96bd00aefaf7405668871380b7648552ae0ce0d39b7d71b598a8c24a1076199b114d29120d3c272e99400a2644d051f20e785d98017890d9655de8737b44fc14a1c849645d4842c8edd5f631d584c344e9dd1bed54905372d004605210dad8778f463f3e394bdcd004aa722f5420295d8e08658293f6d8f80ca7cc75a206d571d550e1997b162f08abafa7fc35da553ffc7df8c452d5b7745cce232cbc2617331081e50f8d5ecc4634ab3b02bf2e4dd8fc08af2d4a191d7c18a05263a46aeebb01459d4290a2580b41d4ca4b396ac9cf8199fd324db3addcabd444d204af75feb89e933db051523197197b2269312c9b074364e5ca52547131033a6c81b064c8eff433b2764dea2db43d12fbc914f7ef987f66e6ef13ea12e94fc4c8e1e5266eea2fb0ac1f6353800be18d39e965abed855895a4e694819b379a1bf8c791e90387db1f14ea389bd5a34e98b44a25a2e0f26603091fbee175ef264d6ebb35af00b3c19643e1c70fe42594f57427e9c57b76529c80e59dc9aab9f498da30b7f9c64d23a29c1c2c93df36e518ef9c072f2414a449fc648aeaa3b39ccaa146adc6ac040c62919f446bd5226dd22ad64d8a889d51628a2e6ece448feb3f2f21e08401216c805da88d71085b159b21a96ba786c15a9c7e74c869768e28340d4c7b2b2bd82079460ae487e4a51b3801c4327c60ed1adb2a57307f68a5b11a6d55b94f8e346c0e8cea67b7b351eb46bdd48324ad2da13903293f7a0b5d02a59024c749b97bd62baddb66816df0249e289a06cb8cb2725b3f759041b4bf0d0c291fb723cbbd686b482e0ceeeda2c9c9e5394656e5f4e31fc2ce8ffeff78eaca615eeef974d339540b4038b5b76d240748f14e70438336f2e1b903870f64aa54384fa4ffb30264ca4ccbab643eec32e49cb6091e61c9a186991f650308e97cc9a1589cc3aa7248e6a3effa065667f625e7ba1d3064b95625c30c386220762c84a792a6e81c13825f40295560dce3a8cd6d222c532c560015c418c01e0ebda78451d9896f019d5c60ef2e860a9fc3f7e0e357d05b904a2d45a32b1fc2e7abc3d8b0e962fa5cec86b3859b22dc14e77fcb7e0f122fc81ca1585542512aa3e0f3f6851e36940039e37d7c24b87b13aad0c9b33d03b581227ce0c9c9cd5a2b90e259f45f9338b1c2c5cfe0a344f2990aac841960e161c0a680d8f930eff56ebf17e8e48460295a1bc4091c77456e3460c67511fe9c21d3f3d0679db25f70128080065945a0a31098e26a3d41765df93138397084b6d8019c611d072f31f6149cd6728bc2cfcba76a672fb0061191a740482821196139732801da2a18c6c0d80e5fbf7ecc224a255de17d22a4d5cccce4f86c4084b050c7ce2373afea8b8f4bcf4f2938db018452e518f7e066008b75d7051014998742cbc85f74902276d3694bf0981d48cb000b11b715f25129643b55e17f6e0bc482cd99e81d5a57add73a525479a0a4bd541151cb9c17ef944970eda9d9b1fd5a681b1528099cac9d50bd602dc42cb3e03e98034c577743d2d06c2fce9b8e8454258faf9f68ff8de9a162bb2635b314daf94234ac224697212b6df055ab33fb12722de6663132df995a53748ea18614a47c3914a76f90a5734be0effab5b84e55f9a4ab58808aa8c882e65c1d36082cbc0a54c222cc5a3a8e82595fd87161a1a8884a441314dfd111bcead591ed8eb77bf316a22617180e3e3a200805041ce2c85a5378addc2f715015d8585c5798c9c1f225c85b19d5380c0ba19ae96b7baf34ea9de78d82266e23bd436f32bc92bf52d81094d7f1516f622b180b03f866037e1e553e2e72582c7e7c48f4b848f4f080ffd8f09ee76851738f04e1ac055e9fc1451933b8eff78d9c91856b152dfabe02ae8ff4d8548a3deb6e82b20e8e2df595962619903007fd7957fab3c0c4cf0f908fb22b6b018ca66aacb480584bc623af4361150a00d8f6f452f445958f03b5aaf253e0933866cb7bee245405e32ec62bd055cb1d4299d1d5a10671b0270b3eba82579ddf050e22e2c15103eb68bea43b95c58d83d99cb7b40519160912a5f211696a7f1f082afc321c8a3fb71118a7bc12e67db95dbadf66f784264d139de7bdd331b3e1e677f4c1796f4f7d8f3d9c7fd562e83920c11e4e4a73eb27c1a5e51b3735c8a965b708681b47e63af130657c8c7c4bd494a63b56ac2970dde2f8fbc2f193c5f1afac86c4d51725316968b5eee3a86055365ba232c2e3e4ce9a9923011b207592c84916e465d48bc41ac91837a7d47e4efc1a1ee70768cdb38b4786b4628c3f24ce06e9e8cfe6527c945d74b7b3fe96e9e9d241b675b6c3bc997312c83c5b66c16bebc8561d9b0e712159047ae27d61c3a6980076bf2db0bde75eb75e0e5d6611b9e5ce635cdda0f51064db5e4aa72a9304d4bc0b0b0a3b3332da4eddaa9e92f32c51bd90d68807ec48a6e4253f8aa8e94714848612f2f3b169443ff0b621eb1f33829d62a157671d1eb9082efe322d7a105cf621816ccdb07e3785bdcbe663293f669d03a03da20a04b5a4287441994407a49ebfcfd76154259b14dae1db5cea55b0511b2823c158ee66b7c3a3029c3e49c573e446ec8c1632053f19838814d1909c5b6e2493b960f637d0752fbc74e266ac940491d963804234da4fb302ef71e10ae3e82cfc7824883fc6118d3661cc04333f6127b9902f2788671a0fb7d4db2510aefb19bcff5f3bb1175596157059a7ae2794d980c646084881961584db727056eb0aae3469e1127d1405d951e99d2eb04dd34e867ebe4c6fb0165b32b2791b0a59c65043d46933ffcc82e061884b5ddb37785852aeec5594ce3924d81eb1180fe4f5431a1f93f36b0342bd9386c15fbd5a6b77f8989463bf1b11d053fd4c37f73238f6723f2cc67bd2b581109da288d429c87847c8b20ede9fdc1251a08036250139afd529836323280aea75595aad3234ed3cfd325b86b7ceee09640cb9e665adb3bb1206a6f4b2bc907985f990ac48116007fbda102a31dca9ecc69fe1502039c7aa15679ba578f765c2b9974b953d90f4466fb50f96db29353da468a7f05e8315856783fd5cc34befc82d08023df5c40a4f16305174d78341b67bc02351360376287648b09b354e48977f9d5c124e64e3bed2b35fdc4e97a1cde1e46abef24c5c33309ecb3104619a4ff2907c94f41d16355601df1c03ce69e2097bb64c4a261b81087871c62ff8e134188f07b05f9be1a907adedbabbefcb3fba6e9b7b42d979df213128324b36f43e9cf202b660bd052804490e5428f16781c6dfa5f65acf666d74001c5e6549437341d01dcce2c365b6e7a3a328b9a144fee4618a10ebb220e0c52731981169c0b34f03b13279c97cacf5265e62d409e5c7b5449d84f0985a0b0ddd74e105497a4299a0e55f6d2eb102e8a94cf50a6e7c178a08aa3bc7b623e9ccdddecf6f5eaca7c473bc11180d29291b05a0b0eed47697774ab05faced8d4f288d206cd1874a9679d7d46c2b41ca5d77c5831a70db9a47d4f5f757fb3f6212ee708f098100a0b0a2d925de12dc99d039a435e35839d1794ee6bd712519e67e937c3da8730d1053a8d806cd25421885541f843786ef2e45d061c5aa9f2b83b539f77e13fddc8d85970bab65f4cbcfa0cf9475bae862af60e83e006d9d7a419556ae90073c71c43cbd7ba1d40260a7dc9a1bcdc38df0b17f0ca8fd0746312af613c7f2f13b99abfe13d6ae498ea747e5552c2a5e145285ebb5bf47223372484f925ed9404bad34bda832d2940cfe8c74298148fcb9c8967854691e48d1c533757b693fedf6011106a6b22d29176435661bbf95e7e38a37b18ffa6fd2ec278e4bd4b0cc44ce80912e133521d9dacc270ea4ff3e1c9b2ed08b7c38e12277ec5711516bcbe84f76f1562ec64e2b9ced8ec52c0e89aa34191b9bac116d5df2b7f8078180a211de7167d527447c78dd60faa9eeae1917cc1107eeaaf65187ecffa01bb56182bb16e6820fdc6ffdb4b652310791dd518b7f59046b88bbd4ecd8f482e85db53c7381adefb2e92f51620b0b137fd037e19437eee965a558bc3c64df65be7526dc5cf981d9d4290bd6d17a63b76a2281125ee6517b1f42751d80fb0f8df96125b7d585e4961a95daa2358d91ca8a023ea9832c889707d2683a1924da869f5be5362164e941ec60f4592a235d938d9d9706e02516b5b442b591d03f986c26031d59e1012a1560946eda61283d5475586022870b19a6da17dda40995f465b3c22b44cc6f3edf1a0cb0dd0951fb644c2d71908ba1b36a6057402cb64adca6cdb596c139eb7fcadd7e55d38679f0f58f5bdbb91a5ff7152ce77070cf78e566611c728bfef1e539b35edf9f3d495f33b141a81c28a2118b5080d46ec74708a3444333d3811faba1b1d83d8b297a40ca2f0f542a371cfdc143a142e5b9a58b452a1e3918b9b8764ab968a2055037a7c7d73fb317a64ed0a46b7bacb5ab6aab23de0a055a980d11521969a58565075720afb34d148e9a89d0de16b188bbcf7c30d7b91270edd89a579fa54d66c8f117f22c95526e0fdb22b4525eb67539fac16e3df9555afc24aecc7c2547eb4bfc8eb204e45b0f0fd0d15186325b5105c947d20228f114084df30a7a939f6b16aa9aef48bb019e3686fcdac91840d7d3fff141f0bf9a5b815eb2ef02bca34042ebcebf29c26f276a8926a23bf7e8aff2cd805b5bbf28cba36f5b9d536d1a7c417676d58cd18d8cebdeb4cb6d08729a4094cef764cd03a48df37451de2421f5c29e39b40b1d00e8a781e08876d4d2f72055f96053d75fb52a7e3c32fbd82185c99f571014cd25972eeb012bd38ef975e2508f98f91cbbd820316eb595160f0fb1fcb0857560e4b80ac8fabcefe2435567b3e32a82638f20de71d46b23346243c9102f2d1487a87ef882dce5e3cbe02ffbbb3651a29b601efe7f09d06e69bf87ef28a25c78b9940a30abc4ef85598528f8d9d5479d318531a16224ab71f800c9d3b8d1a08af3447764d6d4058f93cdb816fd74231836fb923c48f461e34fb3e2ab0f4a520914bc47ab0f99883a09ce53dfc97470aac0475c3e46a0d62c01d5ee96865965c7e55acc10a7124ed7733a56a3991927c616a8dd6f350dfd1e1b183a0dd791f006100514a74e9b1378d337c6586780c37beb68a8b90688828f87e4ccc625af4d2836155eabd18e6c1c5fc458383f0ed1c325a709d15d446ae713a28f85cf2cf4e8e2ebec6692cd6d06390983b4aa87778c30d2d0938451aef7a9896450d777ccaef314d1bd3694027318d599f7a3eba86c54a2e8640cc460cabfb0eba1579d28eee1b19cc2183831f89b0107de0c967a687d04a06c2bad4a09cfef41521666a38b75aa6849c6aae2d400c8bdd6cc35df804c38fdcd78e70820781cebc0fba3822f5cd860a48df9bac6cf73367300c44f741dc2af76a1911ed8d71af1facd0775c3d99fa98f0c1076d30d4e5fe1c74f41b4934f6ef18d71a9e02482e4e139d2d55414e9f2766b12074a8209473c7326d4323700aed80da5fec58e556eee906187df3027d34be0960683fc888b1b10ad5d090ec0968fe60f25304c4e89457a6b4c2f8e47d940528e160ea6cf0590cedb37fd6e85cb62d8a2e2ca021f15dd0efd296ab4026624910c3025e94fadf392851a0d60007f1b45009947b0ee2bb2738007337f8d5d1ac4d5a072349ba9f2d2c3ba712abf1f20bcdc6347119450d0776cf7108bbeee6c9ad7309b98a6b6cd08a0ffc66fcd9e2e4596a039568e414d040e55de7ed843bead687409e4355f51beadf57ea6c8b33cfcb350be161bff2de100bdc5e2d521c324cbfc169a2f02153657ae429e784c1819be8cfadc16404f88c275649d2865af5be1c3d6463bd5a75e5a984f93ba036bc3e799ac66d8ee230f14c97da81f634ce4380b2d0eec2fa0d14d151b6d1deb3307c560c5f54e9d381e68365bc2fc8c4afa2e7b01a4b9a2ab3604ae920757789ca094d2d2c443c25554b4908d69611129f8b26fb04e28d5131b100eb238319a82cf4c6f02e94f5cc1d75d91d68893b68936bd03367a86737090114174442654e2df9d02cd8006c612c2b291b605a124d0cb0c0a45a56d0073ef126565809da67aa3ce019e976a8306eb4f2c067a926bbf6e40e7d0657c1762c3bc34189368b4ce12d2ebd785933689ed78c128db9a3db9f2d404d008347f1cceea4abc59329e6177589c49cdf68acd6d9f7c6596922afcd36ca566ff08d743d6d4818c1d5e0214803751a7e955a1f83637a3fb2bc1d66507bbe71c4da81bd841f9526a44d2e48e4a393d84940fed4bb244f43c22c6f9659d45c39a3becec39ec1a651c583eb564ed7d8748c6a4154728d0f23df5594ef92e135978209a7572ca1fe001dbd569891a4d195682c242379123e60764c730f1639a2847e36ac4ab34252e459e81baf38ce19f74e3d905b76abceda6285b07f3c2701d50b3af48b2f168f5ac722898c0389b2c5ac0ab49d7bb5f993643d5188dbcf1f59ad1569432897999374f103563f560d9aa90412bac0caee0e2363cac5fad688103397e0b11e610bec9cc9979066bc87533ae64162f69935b43c1f60125de7703d6d2e51623555606cb26d8ed2a205cebd2d5dffdf1237ed2952681c852f9f7c1a8c369053d4ed7c6203608a6f6203f0e7c66f80dcc64ecd0e70379ad43780b062103740d64e69bf8085b58179bf015a12408967117f0e1695456361eed102dcd32d71e602211783f2200907acc568a18b1ae0cfb83d55ec6e18bddff7904c023e0e64d2c9e469d420b112db7ab005d181e5534fcbb99403db7f46af6286efa97c01515d6c77b92beb5c2e254596eab839f68024a4a8ac54505636bf5995a5ebc624b7ba67d61294404406fa33d5775209f91129df40ddc957356c4c44898f90cc0c610e8771511fe8cca6e6ce363b26389e03f3f60da386706defddae820f3a723f3ce21e68e47fd8c0bdd0880e8789183569fe80d2e54445de0311113933d3b1ebaf8bee4e11172569c24c2bde661032296c2d033a25366f5c3052b29a0ea522a6d569358418d658e7762b8f6d7d2d6f29842fe379f15a0ac4184062b997478b19c525b075d420323774573ff3c3fdcf7aa8c99188060bd7cf0a3fe82c6cb5dee36ff6c90a9dd0681a6aa14676b72de5de52a694026107bd06b40623bcbd3440968a4564132f055330309f7a6ffb2cd8310ee8e76704124608e7890709de08dfeea19011be7e9fc2afe18f10be0e1f8184d0948251cd7c1b6da3c9a7590b768c63dbf57ee484ec8fdc92171b723f3f298e490f68ba6cba9d962e8915a2f2e24def05d5bd4ccfd4bd4ccf94f24c9ec9dddd9dc302b4fd388ecfbbfdbc5c728996d1dc19395c94383a4b7206c831d4156b7a8fb9633a8cc32c61be845df27d0716e50b51f3d13515b0c86216b3e04693aed60b5b1cc79f89688d438e52881692f0a309363fa230c28f04387dceeae54b15b44e8ccc13ce015b271cabad99f9f16545e3c79851262504f3dc3af4c7193534ba1f6bdc510afd0b994c5f4209257c09e2ebf0a6b54e092f7fd224cc3e8785dbd55f4213440008c7be810924b46b44c186c6dccf3873c749e394340ef920c8f1c037e4cb805c12be213f06e48e340ef92b903b811c0b7c79f9ae7b148d6d7b4a9f862695fa5a9f46cc8def67406e1c335f0332df50fdec84b02960d8f6c3429cd33f347794422d1eecc8fd30d11146573e07a575b81094f998f7c2b1723d703e783fc3f1e382e84065d2017be7ea67c2f1852382f55f38aeeec8fdd470941967eec8fdd0a8791a8e33466e05aadfc2b166e6bb70acf1bd841d8ee1e55c70e5cbe9b4427fd721bf6cd39b1baf4e2c140d8d1a18d5cc5753d41b47bfc9b3ffad1ae3eb7e2882f7e3ab86174ad7684d2693c9647a1d2ec302eb5c93a17f1c4ca59a734c57bad0b169c1d60ffb337e46b833e3edf3c4bc1920d87a61c6b7be15ce08679274c9edc7f4dc0f8e437f38876607ce611d699d2d094be6c9bc7e79f62e301ead4be3900ff3f6b442cdd308c7be35a1c702ebcbdb3229ebea5b333fd68d2661adb08bcc8fac1b23f3a395b01961cc7bfdf905fb749a0167c0f93420dfa649d846932ed9b28dd65d582cb0ef461b62addcc2026bf752480aa9665e76cd4105b4ee4cc82ea22cc831197054c58034d685d9c09feda40026d2eabe033114e9b9f5bb57810ea2de821c4b81e3f7a8ef4d8ffafcbdb0db660ef943fce539a4ff281b473f9d491ea7c1793a1a9ae7442760441648495920212161a12161c182c5e8088b9191119522232a444e889ca0981039217242e484c84933bfd8e575c6ab45856db1208290fe3b76d85ae18a524a1b175dc4e1b0d8e18a2eaefc77178218767599688909b020e26507f6bb4cb4e4081d2c6102688914652c9982f5f3a25305b439bb39bb171bec60675c26eaa18a4d5ae22fbe8d581404d09d2f897a108376b9c88821da7dd9e2c3086aa5dcf6e2b2205d7105100f5e8a0075b9c19e2e13010541c9921c7ce8a107321b66d674994809319c5082cb13db5d265242498924d6cf0b8758134b49a0c08148881d4e808409d3c006231f2b5efc04214909d11015e265a2a1150c0141e70dac17d897cb4455b600a2ca111110422f2a6f80e332510b80eecb6522274c7c3e161881441724ba10c22836250f773e71a48abd94db56442cf881932390ea0d7fb0010c6a5f2471640b99e4852fbaa8e18816747184904472f3c40bb474d1022e90e410f323d75d24188a6283a522595c11f31deecd104b94c08a235454c144ec87a789097c10d465ca0e7c90429ae03a1247485041436a8109aec4fc83388e2cc1f5d78084f14c8932948231664006901231a9c3f59e1e8964b50491931f56461039e96109911324bfea1abc86f903951e2db868c1e2880aa2180982112a9873ce7902e2003408010f4d5071a2c5064902253092046122949465062250c285ccc14a108eb0de86280a1f2b4198634b949981bf0fde6d688115b51fa5216ab3d808ee686dfa03264e4ac9cc6c929b69ce39e73373f82284594c524ae9524ad9b9bb9452baf439e79c524a39e7ec9f3c397c1178f294b206109dceccecd4dddd7dfa74ea2629a47429bb0817d9e7ecc24a3949b976f76eae96e5ee9c6f3e9d5d4adf6ac3ecb06d9c0dcd9c93dbe46c29778228293d0c1fc5dce9515454c489a2286eb5d63a9b725b902aab941d842a714a9bd2900f43dbc6cdaed22035a4e1ac5c4f10125c0fb8122421020b90777e1025256afab8080288017089d59de6b25296cb414c569428c0e2a6850fb44716269cc8dc04cf94add63a4d6dea6a10cff3e8073129754a55697bc9d3f9090c2f9cd860f445941564b9e3db292b385a6216c650142b085a01900a8462e0d96c3dddc6ab966d632b04b81c00978aa6094ecbedef81fd82c5637c0d620eb77fccd14396dbed4d10ac37b0ecf44a651020a0f468a1054b4f16d2a7081cc8c066ac51f083da3889035a250d2d529d49f6120d22211d3cef934674b9df7f4d94b8df01eed70408f7fb95e3cce05025931129b8a6ff1c47856bdac2761505415c2eacc333871501c4d7350443241521220622115bc0ee7cff1962292422e2880d561447d6566bab6505e103929859a118824236638360810e2b2b349920963801cc4c1613c415242f5394564168a14445b4041304193cd82886a290bd30f9014a49812445162a2642465052f4582650949c80525120f9761009a198e4408997742262f28313987618057d3900ed9812548700a2ae58568a583162b2537aa04e1871224967ade0816bc2a70679b1c356e588060d41c93c0a2f20914d05d688f81d6baddbe1079b62fc3c3114b8d331fe137dee77b6a7dfbd834c654915a5189fea83298ca670880fb5a284af2abfd66a19421d14870120a8a7a7270431267281ece58e5d4f0774bb0bbadd39e97cba24b77fcaba00146e0d73c8c8c08eb5d615719c71880bdd263e1ff3af65b801fcfb6badc7717cb6b808d632dcd5efb5468320e5a727b6853dfe31353b435fea6745b1fca32b753dd2d5b576bf231168709e8d06d99d0d1a12ed3c44d14e5cef1e12ea41b796ee1bdcfee92bd7ff13c2c2207de808db567a610f4997cf30080c2ed2204912f2787e037abe8fd689c9a16b18e34efe82d5036ed3ed19c5164a17888bf33bf4718495ef4f53c5ca9f33f4c137e6bfece90a10494ca99265116b8ade337bba20b59af8738c3fc6ccccccccccccb18e4d90d95599b9b9b9a5d4e2b18d37bbebb7aa93b361e32ed9528af79e73bc95d8bee33fc751075f841a346a5a3368583332312b9817954da14e9f675200c771f551567cadd5a3a3a3a2a5221fd2658a581934e0220d123bf2ccb92cf92cf92ced20b444369b4db0634b5dcab8f2e79215e08b5083c651eb5ca18273b0b48e0daae01c5aebdc00079c83d43a57708e0e38c7bed48205e79c5ae77bf9720bced901e7987cc9e3affb549f4f3c6a07823bdca54307df90af5262a78ecbb01e41fbf0cc67e6d345f27bef4fef4b12e6404b9e0ab948b28a4ee11716795cd8255f8c105cf99d6c9b42a4c08f9696544aacbc63ad9ce32fbfe36e49a5c4ce3b569512eb77ac155080e97aa801da1749596beb90fd838a06d6831cc80b2324264558ae9cd19adca220200c1508525fb258b586416080a1020eab31f9c27c541596beecaa8a3a502fb9159fa2c781649103c92239c14d925083fa1e536a921234559fb958edad9673be28b299e3d0b065aa9507bb582797fab5be4b31fd764de157ab1755a35bdf6427c88a62e5d3f860e557ef6bdd726b5216b7563ac1f9df67327d26f79e85bea670da603bd627173ae64d4a5f87cb1310efe57b1d9361eb47b823df43556157f5bbd0ba589fc503dbcf363514e2479c1794e36a5ca42a1bacbc44661d3f16e77c97528f47e542696b85ed72bf5d2e5cb948e9cf973ea3c2023f8af5a7f1c13aa5df4712d64feb534a1f7cb2810670ac3e0b7d5de86a93b0635fee04a4beff0ffffe0e773ae6de045585f5a399a5c66c5d6d9d2efcbe2a799b7952ca2e22ff6b9d0e01e3b0816fc81f51ddb3048dd9ba2e642c9d842db1c936950d56cad97e92c96495a358b88ec96432190c6432190c6432d90ae6c5aa642b981795acad4c666532cb7aae4e4a5540dddddd2693e9d4c5802dacc042d8836f00c18e9bac76977cf6cdeeed4693ad522c9f2935ad7be608644d26eb4e5449c23699cfe6ec1e9fd5be9aacc99aac750df3624f3255f58f9a509ea54a7605b28bf653200b6417532aab6a5ad39ad61f4a8542a9be8fad55a9b8ee51a9bcaf06323d3d3d3d35f4f4f4d4d0d3d3d340f667debb59dc0a46f502c4ad605e8064a70202f20b04a402027af16567f806cb4b7da9ee91b04dcad6438d5cf9a953f7a9130fef9edaf7dd2b769435ea437d5c94512c91be3c36198d5b92b018990b1e8ba13d9c4c5693b1aad82224907425b146ae2c72e548951c676c2c770bed827ad13afe54a9afd01f1c512e57cadb4040b21304b8888bb8e80b4fa0dfee4e1b95da77243b9a73879559d9ebf01e12666d9194524ac94556e5a0df7e51d91350aafa476528af87a559a5a26932994eef20370eefbd0ace4ff54881ecb2779359fb851edefe5029142af57d29906f8f5a5129142a357f1532dfd861aa9d45ed4885d65a77982da6eb1a6c0185454926ab718ebc7208ae235270ade81f9f5db2d6b421b8f7a9fbe41060706510588a31862c83733aa059e474a24ab2569acf661eea8a1debeda4c81a1076dc64b2e6b34de6b3321cc7574a53eacbdf98e09ced051b0c5ac7f4f237299cd3bfc93e25099335e992efb31e18aa4495ae2a9cf5ac509fd20a9e5e5e5993b0ad26d66456d8e502419a5a2fd87ef26ebe3e93b04d266b563693a55260df4d56476b6ba73fa15ea24e9f67ead869d8dd2d6ff46fe0ac43a94e22892ebae8828b1417292e525da4ba486d49f120d5033a6b85cc5e7fdf8fdd7351a7d47b7e926181edd721ddf3fa53de5b36c08c1f39272d588d1fb91fea4ca2fdd07e6ad07e44d959b699917e1cab12d66ad96eee8e60c227b6639f86fe010f3db127e18fb6ddc6f33a14e24bc86ab5606bfe8ce789793660df79e57794fef63356efe5bb971f9646f33a2de00782209865461523f34d96dce40aa75f853220ccc780f2e6a0791ad9946db4ee8292ac47bde79fdf3e4deeb9f7e41703f26d996c9d1c32211996b08dd6a5c2c88030a9d7e1353429242718ee7da57758a66090c5b2b69f860cd659bf399d89b9d5fab2ec61ad9582293c75dfdc1974498684e1ce1c7f992bbf0cf9537031470c1b98835f87bff8e560dc5114258cbfa1c091bafd3838e724c61d45481959425a6207651c1da1b56466966faffb4f70032c33023bdabf7d99684a963bbebe299290bc787d3ebc8e9899f5475120117270f47fb998c3c54e21478e570a0eeb583b1335b174c7f7293cc89ba1c5feacb5ce8a58624a19542c8f91ca07eb84953bea30c4ddb55adbdd8dc5cc9dadf715366c8c35fcd77e7c925e82d612fbd7c8034898186307990d494a30454dc238fe8e765d2df2a3bbbb7b874d81e632d1ecc7270e40d8a474f799828ba759456a7144c9091f241d7a3ac65f6378604f54be36c228860b9b0130a4cc72004518b52ea977f09d7586c5c88c4b952c337e5ec5f8a9775cd755da558e45f063d7aa892990e63c8194ed7d5c20fd40b8f7e122907e2e8cc16fbf102e04e2a2ff0f171d09a7bb7d4703dbb3c629457e4d3666f5d879772e178e3bf2670c5ee3db0c5934fb777cbdac4dda884852545484d462bd3aa6d867a3af8e15e768e4a46e2c4d605cc8922eaf36fa54869dfd138b3bc36fb009f730ee6db8cb87dc58472fc1b05bb8b24b634891b2a97cfc60b0052a7a5ce42b5f3a0f4965032b701697877c97a1e5231f453ffcb7eb610deb7b18dd1e73d8880f85133e49475a9c20fdc0a372510bf2b72bc395a5d2840deef87ac28eac0ec3631b09c0100271b19fa6889d2cf06d25efa601a1dcd6cc5cd4cd4aea20243c20fc2eb66eb023eb196c20178370a0191949ba285c36220119d7f36faec03c5c9403c9fa26abd37b55f00f1283c3e46c87bb3b6fa99463906f3bf18d65ffd040f7afcf5c268ac111771491ec585955d871b5e2a1cdd996b1c156a6c101012f1c6ef0a932e50b26b010c111a02979d0f9b589cfc7ba9fafc3590eebc279ffc70a6b58f7fd5df95e4341d6cac56ec2fd04a7bbe6cb138f9900ff6979581a9ac73d069ec7df06d64f3d8d6d93e78126b003abd75fed549652cbd56a2d656edbe89680f91c91beb67eaadbd4a79516d43a8beb1bd8630e276854482d02d8b2c5c3b8d9e2b8ed5935fe3d7ef8db18b9feeceeeedc362bd1931a5ccee8d638eb07f6c436ee3b1859ac97b0ed99c661ad972756b9bf8127269f5b2e70bffd0feeb770e7c9fc9d963fc7b69fe10ff9a6708765cbc3265287c78048a07d9254e0a84b52ad7bda487f5771fa7fc47c878b2d3dd4e1627f0dec689da7b94d06287c47a7202cff27655860471aa0dcfa4c83935a5f8723dd3a74e7042fe043578642ea7b3fc3d1353d00c091e702e02b68c2a3ae58f0f934db6bbf79bee2fbbc01f9f2789b3a1bb7a14a45fced8aa10d51fcf9a338457770878766100b7d6738875cec29245d5d6bdd90e394f0fd1fe7f845010785efef7e38c7f5e28fa99bba49bd09ad26389efb13dec3d60ff7d6158bc29bf0f33deec463a2f0dba9075f145008e7cc8470ca7c24acd66ec2b18ae198c201d622e9ea3f01ac472eb026f18dfe5a0bbfc31f53e15fb128945d59c7a96179415e901784f2cf059a6e9f78f8a8b32c76a43e5ed076546bb5467da80f0cf581a13e302b181818981998d56ab57aafbf2afee49c9b1995ea85faa8eaece53d71ded419f5a9b39b9b5aab62b058d6c7521f4b7d66a8cfe985d3b77e9cf0381e47b843ff84b0f5c3b9f7e789f1c4369f13fe847047470648cc461fa2f1c16e427774a5f934526ccbf57c6f7efb1144cff5b9401eccc53ace5867b7889bdfee4df8f5cd8b3fd63bd659ad753d2e6ecfc39f863b2621ac5ff1d94d709d6e6e6efe669e5ccf271e37ae4e8a8bfd2680558c5ae31bfddd1076a43e3e9c234ff8ce91e3f5aab556cd8f8fe347d6eb477b5bcf0c0b40004266d72bac8123acf12784ccae1adf62b1467b69d4bcd71ff5e11cbfdeb79ffe388eebfb69126a84737c8659cf33cface305358e7ed67b2e701ab9d87f03ce239aeff782667c9f7cc68f3e6511dfe89fd4877346c039f3654c4c4d46aa9ee513930adf68d02484bd79f15de8187d0eacb5a420e9eaa73ed447a5846d81cf577cef06ec6ba3d85a93b0ed47bafa6dfc5855ac7be36f40bedb8f846d43d2d55f6d84633521748523ebde3c9f78d8781dbe0d0d0d0ddd0813d0ba5ed096fed10bba7df3fd5b12c7e97a5c046b192ede2871cefcde8e4cf8b1ba7eb4771edd84b506043bd6d9ad2684637585b3d9ed16e15f892b9f6f742dc3c5feaea7e6623f8b07768417dbe6679084d16f12aa945b02c82e561ab20400c897847672fb6d46571aa76cac59c62a5d69a4228023ad018ef389db4f031ca716b7bf061cbf0512e93b52709c566e3f0d384e2cb79f0512d9ee487d462b038eb3caed8f0189f80af421d2014b9545d93b5226bb4b3d70e74bca1b0d37d92927bc7639378e76260fc5d59c361af46097b3c0cc545cc1e5844abdc8ad2d4b9472823d4e2e78ac8774f9abaed8da02ad1d8b270e54cf761ea8b6ca57bdc0f6eb70d93f5f58dc5e66ec4013bbb6af2f18a8a7152ab7a33abe315d5be7817a67a3ac581be5881a1bf19543871252aeff0ec759e174ef0f44d6f76fc19f6370bb87e2764adc70bbff1c0786028f3a69149f4bff731cd7a549287129f7723e174eb04786769363d40a2509cd10c298cd486247fb508ab8938aea8497a0722eb87244729df50632e9e22c4eb044e402327cacf8218262c38f02ac90ad58355fa578b2999927f3e4297df29c3ce79cbef96614d4a72990da87ca40c14d06e9f323af3765a05ca31bed641a698bcb6f8146410e445a941258346264788924b04e43691cfe9e27c1ed8a2d9bb50e56786820ae5b8182eb551c018a89370bf08d4ee87695010a7865fd3d42944e267dab2f57d08a442bd215b4225d412b1252ad4f29ada8531229ea9b94db8f04f0cdb7666e9b74d301920e90748014346f80316fad2e4a035cff91c2bebed451a171f877eb98ba9797adb30bf35d0502b802e0b222646db782ec3e65e0735e1dd2a582bfbb0a738a3ae45b39278f094abfa91758d957a68a0f098f6d46cb53ce297b07b65fce6d9b5356676eca39a5c7d170c4fc9b336f3a48f556c37239e79c1d76120fc8589a12c77c975c93613f21f416c64b675efe2a89aea472fb24990a135d223df986d29461bca6ebc87eb54e7752276d49c22167b8f257f0ee2dbc619dd42e7f2d0d7b4997e3bcc278b50e3541756b57ac1a39bb398f403292001d8256ac9a7f82e5a84806072c54968a8afa0b28b0f098fe877cd3f39b4cef853b3b3c4be4b0e55f126cc90cf057a700c310155a76bb2be570a4b493fefef1ebed24a448f96f1f2e02711c20eec3c506e262b7942f6476cbef5e491bd1c5efe5e1cb3c615f29e4b07118f7dc46db7863cd3ac5c082457a7d97b2bb9bb97ef7cc3b3c3ccf4fe97be18ef7f4774cb5bef72f746f0a6730fd931fa6903dee4dff029de1c90ca6e7586017a76cf1f3f3bf7435873e58d2c531e62d69f3ed0729fea51812d8bf3f59c772cfaf05505f7fc226c5831d00c37cf02b008cd3559c5e0e60180c3838b8fd2d206c0a2f7eeefde70f7e62817be667fabd83f4bb18fcd670e4ef40dffa937b0936d9de66922105c91d79f6e29acce94e85702f7f52e12ba4be875e773ff248b9e3101e29977b1e211ba0e176cfb7b68f1c69b87403cd019e4b2ba5c2f3e9bce288db7c6801ec0e342892aee9f98f28753f8f432683e37729531913d8d106b551e40967fa0ea492c121e038e4bbfcd5f413acdf811dbf574f3c9c523a85f09bbaf7e8a9075fae5fec09d7a4933225b0e3bf6240c56a0a7b62c144c1eda707b230fde56fa13f83630c77c8774dcf81e3ead69fa190b9bd874cc391873e7d0fb9c5020be1f0f289c790ef9a5ab4457f5e1a7e15fb44dc916735afdbcf02677591ebeca06c7333b22d398e08cb610da75db9abc5a529d44ea9a13f3eec898742e4734262d8ae1c85d0f7fc7b21dcf7d5e10d46adb3195454d45a22fa9cd96ec2bd0e9fa20d2ab7020e1393526898f67632aa6819ab74dad87c8d16a6214e2ab07d67686570b0630e711ab97bbb73b3dd9d6e3ddc9dc5aa749b753693432fccc0956f00c1e26fdfd54a17ff067e3db0ad6e75d8c47fb4418600151103f70f972be560a8006f60ff60b185d1da88ef22ff1dda82acf7f2b97fc1f49ee9b9194c2fc316c740934be1c2857ffe65390e2b3933333333333373f333773333ab20ae5841f30660c818b11e94c95cc5fab7204a58c7fc5f12f69225392ee489b9db8d25612d7e0e7dbca4eb63c4903da5103a24e9d8e1f2c11d3d1c875bfcf4795afcf23fbc7f79fe9770e709873baa7f095bfc2fcfb19dd47b618bc3960bde4b38c3cbd397373dc766b07586e31d79b67dad0e6cc9b0e582f7f47f784f5f3e0d779ec8f0077d2edc393d0d5bf2bfe7d80eeabdb025b9ffc219bce7be0b6778f2c37b2e6cf1734fc316873ee8773cb146b22f93a50bf58126f0a5aba5ab3fa60ad6cb65a225926cd69e7836dfc070d292860bd95c2975f57f3418f908850a3f2fa473fe7091d6d1f798244bc31cac2f2cfdf135f248b942fc873095bb799ecf2b537057cf3b5f57d87e7189e3991b172091e912e47c4818a562473e7a797f38cee79748df0e2b0ca6fb9ce2758f06b8697cc049f3c809774ff1a87017a37e819f9f381c5734f068ceb9e6f8053582e056bec1df0aa2998072c74eeaa322ff913200424f297d07135beec8128213a3231b6eb6e1188a8a8c18f929d9039e10a844ce3635358468460000001004f314000020100a068462c168340c9365d50114800a6e8c4882583492c743518e03318a42c618020c200400000830c6d4d4cc0d103b6e01ea375636588436dcf6e4b43bca32371ebf2a4f0878b2c900711d51fd00ad3ab31b224c85b67fbb60eecf4c5efc678f1442e95cc716fcec6b8ca1f753c85d1cab83b4f6f1a9f4f0f857589e463cd01606e9a844ea71f94b666bae5eca571a67d0d77dfd6a5cdc2c4dcd110f2d446f0c5844cd4a9718edb4b8f81a52f0a9dca53f8ac586f0190ce33bf8ae0a3fe602048aeddb3214f433d96030fd82cfa4a268faba9e3856393f34bd82fe7875288a7f4911f932257f5725bc005a00e9ae2faebf1ec65eb5953a1e8a8f942f2138902cc9106d20a15074dcbc5c807ee985ce4128f74ca060e1e6af8b8f886a75aa3ae7c2966e692d9b059f1ca6467c6435f1ebd61880e5dbe766674d1e62a4a9dea1230eab1b338953d86c82a8a669e4d908b61ebe3a3120501fccec855672283fa166b38d7053c6b5822405cc6db22a8869555efd86a94f495ac635a752b2afd76c5ae362938e92fe5ced35613b1eca5db142432c7a98a17b0adf670a1cda5bda833c3c279291d836c26bced2ec039e0bb045a4936aa8b7dcf784933698a9cdd755403289aaea12acf5cabc9e82f2d86a12dd367a87cae6e23ec23c055e371dc0b167a4ae58b2198d63a763ecd0f692afebc15db0e16a3421f5caa5822d3b7a0d4bc22fe8d1eca10fdaf64ac5a46e0afd6e24b6e6b1320a8743e664b8bd1a09d7c7c18a4552e3fe65a7c8b5d7892d855021c704762ccf51db565d2e70865969b99383fd2c06709803fdcf60b2b57cd05cbcfb009d74ee1ed0edca46cb8dbd84cf26c2f451b37b4bf62bb8a064dfdff33cadc73c782af7527e3efb344e76e6dd32703962e055411a5eae3dcf5bafd3aa1ebf6ea27c15866e96a754d861592d7ad7661e1b55a76675066b9911f42b69fe95d9c3dcd35c593c7f650a223eb8ca5d3d4464dcaa79565dc2a7b910e0bf4d7912d7fb3ce0fe2a5b2559d285a43af79d4eff5116437c39d709d3a119e794183b99ac5094306bd299f3bd360ee6ceaa609e2360d31171a96c7421ad8e15254fa666fa2a04b27f8379e57909909218ef57cbd936bb0fced22c0e99c86aa5444eef8411110079794377f41c99f0ea636fee6d71123d1712b8738ccdf391f786af86d56192476416b90f2a9c3373ac0fd16776290af7e7c493f0926a77d7adbfc423e366923596024e9f937517858141d878a2c4c6733aae222dbed0d844f7dfc527024b2faabbc2c412950a5fe77021e084d5b6da5d10308d33cffee8d9cdd5b08434abf1b0cca5c425aff1ea82c9d5d169fb278df7ba742da2b60d5925194f64da4090742ef907c895c164f90e55de19094cdf51467b451f61d811365bc2db8c8fbc63b0b9d3c8a39e57e7980e600fc609508adf67e40002022361851e80dcb478fa7a73fb0ecf00f43ab0ca0331750e25792ba93887aed2f5d9c0b86fd8ba98cd69224232fb7650a07f6fb3693b6d144a656ad4f9eb7c97b76a7502c40ac92b4d3924989c9cb0647069290ac0b022a0e31d5cdc1fff0e1d53d81b16da1f96ccfde179ae0a765f0f834ca576ec02adceee9172e6fd9c3a0a78872e32a7b30b3a811e1a471eee46b134323dbfb572419f24fc92d067910f7e6866dd86845503b14290dd14a4e9d76de8687e10d526b3deed62b8e5518e6d37dfe4be8151a319a2d78688f0aabd4ff377c909a1c74e1d57016e33562f59b783dfffb81c39ff84e465c6b74283a5c7e74390dad64307650b5b755140c599e3026e6e0577d5f98b3747be2423b489f64c88024b14ab025082534f2fedc7ee988475af49922ac3fb70dc60745e124aac9b9f3837eeb1c6c8c5624577361016f6c7ed06125effeb2133ce8abaaaf110a54c202c74e260c4b952b78b79768ec2d5fff67fa857934068566c20167fd30199eb0214f12f09a6ba7a417218c9461899d904a1fd70d8237abea3acfebb11eac180c598ecc5d2bccbb29a70194c0d65a5757f3702e592ee6d33bd042e9f0efbdabd1ed84c344ef6fce220cbf7a78a646c073dcb90c2fb3bcd181e79e4366e5a147d658a9a81c46339011645afc88a7d3b4cce9a64245936369acd75dda9dd53e672880cac93f8927d198bb2db5f36b56778d96ed65e0b096b98bc83203dd9b9a3b0a08d0fa6398a987631f01476d73832b7c515f882768e3b6b34b60f934245d3ac3523a8117695f2173075ffe3c85b9d1eaefc2c1c0685de29adbb091ee624a1c975084fcd7bff9d2ca4d4488957241c66c2b89b468586a88bde10d6f5522a1b07fa573fcb9ac1435318a60e6c00acbc600c4d233c8f072981613d52a8dfec92572b39b319ae0720dffecdcd1d67ceacb195f61bda3363b9dc6c9a40e69c16947327848d32fc933bd01a9b267c0b2c8ed68da0fe04cbff4e45a003d5d06b289be65a17bfe4a3681e5124594ef44229f9b398b48c71c555f3c9550101ef13dadbdab5a6253615c75c4eaf8c0e2a439027866daf3f6594dc5286fdb3262d1b4a043150a63a10e7b98241089cbffd49789cac735279263a879a91294c0792108d4c85b1fe369050cbb22c82fc4c478c4a945d0e82616e4cc4ceea5d6f02d779560b47f2e165ee4c0e569e2dbd0c67884f8afc2aeae5a1d3cd9a6d8bf2c2f383eb3859ad445951c292ac45f95134b237c766348a7414ef11302e3bc8f778076006cd846e5c955936ed5dce85da17e52047b626bb1acce23967e20a71aa7d4f12e3c2c178fe8deefabb8cf4a980810749b37addc1dc04349329d3bd488cdfb44fba3c16d23e2b90bcf362d6e7ffdf5eb5636ba0ccc2bf881d15940704b5587c8f05952b031185327b9b7bddc8e521d3061d590d04225a44167b27c7f9c4762fe2d2bb46c37db19fc46d1210f56013ec78f617907470c7d914350f5cb511616af610820ae4f08fac141ba57e4d15e7b0231d354ad27120872dcbb9f5a8f2d1cbc311b1cfb8bc46ae08a389a78448a25cb9bb7aaab505faaf38bc5ba766eb4e779543aa49a3b76e5f1fc33c0458ee1f5ae4bd613a1895b80d50e41fab126cc94888a50f969e1aacea3bbcf0cd3e6b82f4574662b0ae512d7e807cbea4647f68dcb65f48132eb1c79d3138a8818fc18f127c903fa5c77651807b197555c4f558b5209bc096a79253b0228fa52b68a41c2db40217bdcad27de0990a22f13d39377fe9f008544c70ebb0ee4354c4f00247eb05afab31fe04ff4cfa14163ecd09384e973dfb49c9ba4d4d51bd511aedc2b92095878f5ce1a09a01c1cbb8772ec3c572703194b86267351ebbbf75d5bedaf8adf9e1fe7b310ef5e0e427b4764991dbaa90610c916b423b0640025f2aa0432413176faf1744efc6dc147c7ecb4ea87a0e1777e8379b561f0f9d956786409f2248d507927680598e6d23402a7671f479509f22472631107e98af572475b437d8585a4250a4f515d34c3c2116f8f6a401bb89f59141d325278de1770f901588d69d9c81e963a60165ec0863ce845aea0b744f0e77f75771c2105170de1382d10cef43af642fc1dddace3588c25583a9331c98bc2985a185b19740f710baf57578e61596d12dd25c5ca29d6de5b6e3a0e3f7d817876ff460888ec1bfb075a1d0812fe2e8981b6cdad29fa4fa968fd1c410a391330e8e36d2b0af9d568a8d081ac9a1680f46d8f5a2090c1c0db637008731455e3005845fc270909674303eea7848a843fac25bd489c1ad09689b60eae42a45da8bcd3e51e24e87de0e1f6f75ea11f691c40fa91164373fd3fcb84e29f90d9e81cd39dedbc90b81ca63a10aaaa5097fd2501a41b2f7862c769a17c32448a9215bf62e3030d73442db7069ca208ee22a7dc0286afbfbd76440dc51a043fb23a294f0b110be46fe9d54c3db8a0e472fc15c8e9c20044b4489ce80274999c0fcbd98a6bc9b4161cc5830aab64f56b556a3e02f2fc0aeb8021be9258eae37281973336cfe8acba9c7801bb5e8ba3892dd16366d2d95fd30c8cd4644d5c53b8cf1a332faf5c9bcedce1f78cee8fbca5836c1e6fb06ce4c840a806e13f508435031931c85f0015febe1f8dbc0d0cd046322a6a095e41fe167ba00fed12a6d4e52f4d6aa10caa3ddafc7af911b9670d19d100bbf58a3280562043319e51fdbc48f836e462cb3bef3116318a39cd80a830cf45f2618a47bbe97b1b195f2d7c9404581236680b61f2b9a35a75000031982d585b7599670dbfc4a2d1697ae5c8891791eb8e9bd3a20e72e485428a49b1c779cbc23f41287ab2f5d05db71155ce53e45dbbb06d4acdb63e612763a1725ef05ae35b1af469ba541cf0f56d6e0cc281354c2be8f8ad4be2966cb527e5286ceef0cad0fe38f2ea005fa2ef5e91ade70680645422c7484708c67386386acf8a5cf7fc95f548a08c27aa77487c805b7dc7586e4b3895323a1a4fdabbcd0583571aa2c7ab0fc67dbd8ee9f474aab4b2a58af0f3187a9bf9ee673f61f07893fbe3ecaafc5e7d94f3f59fe18f87d74aed0be21ed1be5238384d9012d1c46d0fb5fd1f9bfe1f556565bfd7a5665962f7fc99c0b36e608d5163c65531e5b8e4ee88d5841c6c14d130347e102ce3d143c09d1866ab5541c00a98fa13fe89162aedb72a892c87bfabd6e3c863cc1e2ce3665591f532d9608a2979c2382dc609893f8aa36845140c03790cb3d7379e8ff03bcbd596e8678c3dac33c07ec87bf9f8f2b14b8757fae057a8ea105fa2ac4765982708ea21ec990e44878f114908353568281a569de2e0ef079080541e10491c658aa0c701c298611d2919246427f0caae6486e0d60cd862f87f31716d10ab0291d2b8d95522683bb20dda6b9d8a0ab1295f9e2f94b35e67dbc67e0067da23b74dcf181e07bdee63daab1bb3a07fd5ac43585e7563b1cd9e8ccb07973a64bd3f351f2a8b5b09b29c602cbda08dfc021e5c6a1a0f9e98edca0a05648bb308b3a1dbf87340977b3019d5a4a8b97b89c26803e23e20037ab953e0f3a7826dd3180fd62a30f075f0da74f0f469950cdf8ad11a186abe3fed6a9642d7cdae42b932af197700c03fa239578239281791f6f118def7abe647f488aff484b519446ea1a9668c8b71309b133de704e3cf53fd099aa8b93cd1d198d7c4e56a82648063e9a06967429ae26e67008d7d0470eb0a14586e992fbbde0cd3cbe605e0e1620e3cf3c636946c7650d12349818fd79fd355737215908c355a8189046ec532a147ef0c8a7189872d7321e9ccf6bcb4d07626c9eba7c5b06a223f2675e245afbbf11971aaf926c517dd75bc456b85f5bbfac18b85054048309ab9a469dd0b709accd64c9396a329e3543ea55722f3c79dc2237edb89a86c523c68990a298b78dd9b35f41246aeb2c2fe487ae13759fe0a4eb408417c10c7f9959991a809770915fe1466fa3986ab6956ff14473d9690889eed0740757f13c0430680d734d7cc5cbba54d9a4157ac5a0e191f7443059de72361d92088a888ea3715320057911d5b3398030a14393a1b9faddce87e2fcf25d863764062eb4d51056e5200d0255db32e84700861ea5bba29cd795efeb3f636060a74abbce81e87949af57413abf7e568344b8efe3881f6f72cc45769017572db07dfa1fd56a2ab6270248e085f287b9afd7c18a44a9d8e330a40080e5cb5fef4b55e7eff98a52edb0de43ea88175ff07d638ae3897519c2dccd0b6276de4e3b9a83691d2770447638c4bb72e79909d9e02212c20106ce22a9dddd5c289a1709389d0d4531a1fcdb767dae5f1304bee1523815d5c2c24cc833d5893a3263892c8716d6b552b2c5e20dcd36dfd9a6f09f28d2b2fb88e01295b3bca654b8a7f04de330dd4961dd4568e8aad56807b62d1cc7167c4c54d42caa07820434e5bc974908dcd5212390fb0187bb536e5d14ab6167136952ecc5ce6b684c66708b7db039ca752c97e215d4556d65578805903b651334b71925ada59bb997f21f4b1c2ff617f5cadebc440df8f95f597270115746f86a4862e74ddfed346d3364e970d6384ca8567097bff991b2a206136f02a8d3b3e9dde44725f9598e944bc0ec145c3fdd662a7d1c7c5ecf9205df0b786abf22d24493470e99bb36275e4914d3ba17e404e06cdee72feb99906cf9e19547fe3bf335f5b70fe06e62f7549f1ece7b35bc8b12ea6d8da6aad28397c4cbce3202431b6862b18d990cde0ff8783786721d43536471ccb22aaf03bf699739b04875255cad5b16f41ae8ae5da099e51f0173743bbcac8af774309d877b9cb6b14c8efee27813a43d6b591707150cadf0c07861bcf24488c4c1b00a9be2f69bf862f5ba37760c4a011646b2cfb0a99bc4324f9664a5b10b1844bba1c78b4413ec5ba22212a8e0dc6e47ab429d0104b2174362d9883bf1b81ec001d6dc730944d7c03af16eccd9d66d575fc852d34f40053e52fea1edd928b638337a8ab24b40ceeebc33a3ed9cc85d04e320638636d5a0b2c6080b63b08d45adad7d36ccc657c86a39246a1c53bbdfa2de0c5354130ebc783b67114a8504aaa8ca623113420e037f1354d2bcf1e6a0462684641c05713890adc0d440d3ba05e5c7e74565a7552bd570c68f1dda9c2000a5665048c5455164d97ced11e1748cca12e7cd1788398828261479b9cb4cede3eafdaa0dc38d88afa2de4df15c355ded5dd566ac041eab18260cb31499b3125be3967271b434f030e670c8ce17248cc6d0d7720a70dfb485dde94decc28ba303ee5c8942732f597b04e63ed63a507b486f8878b17cf59928284c6956925860fc9e4312adef3461c9a4048c6b0f5878b7358e564822e6ee2e44aba4a0466dcb5f8228625935281edcb3d8d25f2cdec7ead5c4dc10c2640272a8a36f654bd70386fd7b8330f6041c232166a0bcb428f2330c33ed698e04845b19657c3cd1773634bcfd56f6ebc72f65b8054aa2df713eb57dd926ad8821abc82f43738eff80061920c10a19fc2a95f32fb51144ffede8da1d9e687833f994bcb3ba7bdb68f8af2fd1c41b33d3d9cfe9cbf6a2d62c26cabe1c90ee2d14afd4040507b5d8a4e290743ea8c2aa84dbe39e621f5b5f9882b1f343a9f89589566a7ae3d8daf28b09cacab3d69be36abf625ded609071d158fe8f9eec785fe991ed35e896508b77b0e0073535c9b70f78f5f42f9574f52cce0ab7af087e16efcd2baa74f7525ce4604c00ea4691677ffaca4f97aa43a26835e4ea82e75261d850a9d04aab068fd78d5eb1015609fdd32a119159f265856c68f8a77200d0b7b07ae132153cd55e094c5e4015a855e6f5ec2433b8f84d050cf68f3fed2cb27d9b4d4275b8b7a23934ebdbdc90751fd24f6be4947a1d6f1ca98e52f3f7048738452ef59a5139509059f22ea1f5bb3a3e486dc16fb358d64a3a27888802cdc8814dd82ffea436433b5b5cc01e828bdf595a418252dbfa30bd5db1e2f0356e7285b0fde86e3d043d8fab34bc076094b105bdf26ddd6eae57430edcfe737f49ee2f363876b75ea9cef8095baaf7863f87bdcda70601cfdade3f967b9751f28090eb899de66b24798dceee00b4bce07cc37c325b4d772728603fb74452f4ef2510e156bb621615acfcefa8a295f8871ee0646996cee5e2346f8b8a989c184ed9547fc70f77ed074cb2b72c0a5b63501cae23d219c603ebaf2e3818c8ba9e79f5d6e6092aa1348c505f369d709dc66f439149da57d57ee9a39f09ee8df36f4d16b5ace3e91329606a5a09b0cca9fee591d0ccf703fab48a17fd3405806fec0e654c3cd4fade06ed806202ccc260d9d3a501fdabce158084ffa54ec151b0defeb092142e42596591a99118c465dfec01a4f472de5035eebbb86bddd8ca7ced1c2d657505fdcfa816a1d2973a90965455c499bfef80b5a5c6df2c37847e040589b209b0217013e1b9bf72a49d3e3d0251e166181fa9191a2bdc9734e26f20463dda941c1788f67df655b83dadd4a7d0dd1e64e44d8875c5a02d0d8fd27be1fc3f52cba0208f58cace2ee6d8e5bc0ba70b5160524264afe834e322d65fa816c531b1eec4e568080af79794a02dca54c1a35a9fb1044796e7331799fd2b20d15236ae64432e08cfcd9e59c3f12f4c5119e98761b4c6d401c71a833435e1b63b48edfd0a13eb27c86529cdc2f0131e1979e718101a9e59a7498c80db7ef5d57a30c7c8745e63d58080d3c2d51943015a6150ca44a56ddf2d6ce4ad63bf15d4b1f8504ad16818462aa1accacdbc59bf673bbe4c006c7927cf16b79a2ce10c7741e659a51b36cdee4977197edb712ebb91136e174d0c7ad1dc2efcb14e4462c975de3b769161f644dec67b8ea74c4e6fecd3f6faf29c51cfd93710d1d63d99af4404904a20df07ea20b280ac71a9f1b70f0f0ffd0ba208512947ac246dd66af3379965395067b0bab406d9984fbd9b138f3e2c33419a2207d6e515c7dcddce483e0cd32994b9c87906d674d2b2241c918664c93aceca650b5e2e31f2eff22ba58c6d5a696327da9c9987953458ec5b4074973b6615923cef0e9766d22020c0fb606ca0e7e8df53bc87f8417feb0d684e8b88139668f8360447c7ab36f238cf10a1458fe2914999161668a48ee72583f0e2ccd49290deccc4c0717c26722e1c97a811d8ff9554f15ac10ff21a7c12cfd3dce6e521a1ff354e2e232683e9a96f50cd08e0e0b85a9bf8d77c3bf201f17bfc6c009aaaafecdfdd17f4571564742e794f6b2ee1a94e4200cbd38f7621e7d752c8c3aa08403e5da36de50fe3c1115f48a45cee0ec0deacb26d779fda081bb99466a76847252f089dbbcb314b0683107bcc11bdf3010c12920f9e53dec36cd1d802b8d1058da07b64d20522175365daa96603d05e963bf1227096c87bcdb25f9298ba3eb59d0092bf83587ba9670af312e58be88ffd6754349a32dfe5030256ab9a0bee92dcb41ba864cd52a0c98ba9e7f973cb5d577866cbf6256fde484549635f36e19568c965cc70922ac95968e278065ad1865b42edd5c4b03b1f66fd91216b6d4f79c33064264cd7a5b8fcd77d4bbe60e9e0298a05fb16e91c7aacd9f72e838df22d4038a82d7772ca8bc8ef90b50d5bcd61c3016a3a64173228dc95b28968b927b0a01463763029584fa3840e451690cba41127d4125a91ceb87a8c97b3c57cefe56184d4d7d32fddfb79d80895ff0816e0fc9979c603920a332b9da4a9c1d27676a4b940b4677f23212484aabd2e90a518f5337ada025369ca4004f4d8d7b034f9b8e765f10e60d42d7ff8e863712b1f199ffe62e9369dd8fef56960438880f0a1c1a909cebcdb9bdb9d5311dffb2959bd262279a96dcf11e7056330f3df1ba37b6c2f39d50136e7b390746928f997bce3e1ae529bc60a3ae65af63b216f3318dbaf7665b54c1012e0f1182277946b5ec04677fb2ad36cbaf056e35bbd6f00117c9aad9293b7f5e9b88d9901aeb21d263bac9ebe987fa171eee687e9340cbe53f884c60965af0cf554c04a88311a111a4385e199611db4e441446c0a7d244cbf15dda7e42256c8ddfc0e1901d8124e42139b952b2b2caffe17fe4a2e74204ca33f26e005f8ce7c8565763b9b5e0901e607c254442940e76f23537d19e222c2141aaa75cbd91f040f6f9f7f6aae60ebfece9ceb6f0367472cd7ed55bb77ca1f0d3513c39c353240955dbdc1b31ab3c149023572f83657e9e8a142532a235f12faec6cc64381966a2ed04d5318a30c9cf96f0b83c1f89f53aee5225e3a61a1abedc747f0ad10edcb108287959744c257f4818abae03ecf07957d861bdd593c01f7c3ea72c1379b0b9dda73d7c0252d72dd58262d3232c11bffb71f38d09554e51bc35a8ad057ddb72a8de60d651872c293082c25953ff11acc5704e0993c5289099bf165bf72c57a33f45f908c73cc3465960a6aeb17162eca3820192a7687a3bfc598b90dbf9be3bc670cb833f59d7ea45b7ac9028301f2f7089555653ed05e696d9c840389ae5aea6696361a76039636b4da3bad895104decf0fee9678d9670e9aef46a05255730fd732c5ae20f8131e50e7d26f2eea56a21d02c492749b7da40ebdfc652d3359d1d9cd4f95bd44346143873f33d686ed99029dc062bb350642903daa6a47528ea3612f05934f9358d67e709d25c0982865c4b8e9b06e41f249cf198fe7af3fe88daf617625ccdc38e76d3e2960ae0aa659970f5a698e8c6e727e26d7a652b061e9ed46b52df719f88ec67a75b4052d1f62b80c0cf6d6081770c0b610eea1c109b380ec06bf7df5b1210f6e659c94653afbd443f0e9b82910bd3973e94d58be9be50c44e3d02f5515c8d7f9eca290b0b41274bd3416167dd31c2b66f174702674ef51803e6f639625a6c7df9b980feebed89ba36d29afa01e28126a28c635f6d1aab17e88372b1510e51aaeafaebe6915a404fda94e579e52a60b93b6dd5c98e730b8a79539ba4647610c45e85715b5df0118f2cba1a893c85963c62e362165e92624932ce656ae1ffdac919f44962176029eb08674b8dbb5ad9307c58ccef13adc7164f350b4ff2bfd382a104bb39e932463c907a0b88d8c300a4de48293409f8c5c97d409f7d157cbeba463cffa5d77451d7f3253304c4d72618f910458a1247430375843347b5ae1e7776cdd40870a302f8e1af66b459ef8f0abbc49343d0be7f46568f1ee27c9b5ea12391d1b77ac2e6f9bb54739332387a96766aafe1fb26f51f9a0cecf1886d04aa3a41dd42b97be35fdcb3a7d6260b3cb38a991fa2ff793e752e03d4cda52c38d74267c4b80d65a06476461715804576535255a87f0ca390c0208169713b04cd4254809cc0c21e102c261ee133a7768ccc12cea2732c5f765ee7f9e48b20e51d6b38cbb3c1c5ec53b1aa9a171a800a1e9e979b1aaf69d0c707b96a082fcf4d319474454f3cca7cea7a8c210134c60239dbda4f6e1756fdac900ee8128c80102055d910aeb7c65ab34acc4d0c528a03b178f7b01e773bc2016d64044c76d2f585da8d5d7b161777c2a68e293d314638dbe452f5f21d69235272cc5ba7169f6f18b8dff57ab6de0d4c1b50dc425c3d45f46d6e02775ad8b3e205215d7fb1699cf61a0462afc03a057707bdbc8e87884f5fc946c64cfe6d5a0ac27c8117cf9d6c1f8d7f93eb2b3c70043f6055d017f22ad9a4b3dcecc45b99073750fd52780f16352c8025d30243d5d33b38e45994bec24927ee0b8465540ae58fd568741bf04c4a687e5a231b11af3154b2d95e909d8e7e659c4f2ee61692c62af765ef5f50a83a20b7ccf3f0f2b4a9a26831ef6cc6c460f1853582d0f1e0debd8a2cd1f0709e26fb1f4698a9b40cede5978e7f924633711378ed455f177f0b37259f3e4f18ee4d4a9d2ed245fa97804c37174811c1e4ca9d02b2f9e22c0c7d220108720e60db65bb1dffab6cf8fa3b68f8dffc160e3710b4ae1405a37b6cbfbe002fa8b5ccdc116f65fa2fe20972dd97809f7592d8697183cb23c25f6b7eb8c707a9a378ab30b3c15d13aefeda9a5f3888c48d39bdca9424718df8cc8d8f9f9cc365d0684dd23a294695859e408dec3a8bac6612adcf14cf7da8cc27380e7e05a92b36982cc0274a318b877f4a10db24b5b3c6c5ce7379e8b6a7ae643d1e7f96d94ccbd53ad0774a0c4af48cb3fce011be0017cda78de074bd4862941123319d65b1750d53004aff2cae7b78628865ee185c2ec6018ba1af40d634a8241af30b43e7c0b34c60522b32d7e6dfd1750d5f7c6b69b4d6e8a195e18724a204047c258a397ba4eb6008f25b0f5ef56726ce785c3f91122213efc4f980b255a1a996bbc4826d40b864d2fe0294961c3417820fc2a85c8064e2f08a503f3a617d7a173a45f2aebbc03af1e6aa6343c3bc419539f68cb6b19ab6ad10b536da0244eeb15d1d3686947cb150da566fb915938ec06a2966ae213e9dc5e826dfa80c8db127903ead6f0759cbfa0ddef38e5fc3d2f9a2ae3e47f5f188117ecad06c246c158918ac75eac9af5760b8ecfd9a85f411d76dad44b34fd08db454aeb584e60e895dd1cdfcfc6beea20e5e89b9cc0d1d470351ed945d6a983eb0bc0280119817d93316d381d9f938095418c2a68643a197fc34513512d5db4b523febfb57c07841cba8b669430e88230efd1381f16d34d41746b6c3b1ff285bf31f580e026138b830c3beb7f7c12386f025c5903ea7e45c0e9bbb71e71f6954de2187abe7a9b12765e1de4b6c862b635bbe4885e2237f1c62757c67ff88f0a074b03574974a6457039e0a8786b6e30704975b90db1a143b78c9d222a7e6bb394b0611649d90cfe837757c6f4472b2cf1195c14b1aa3b4bf6d4edc597c0606cc4e7a11b639e837531b514e002bfb0d49c2a0e10718c26de011b745310366cc71082c20b460eb40d1a3b487f93281c5e92c4cd3e829e3297b91e608925a864b149ab866b7927b95720c8eb8c78222e8b65abead4a0fdf7680eac0c3235bb704dabd7b8de5a38ef8a3313017ae1d75d6ac4b67ca9a302f05c12e36a250c1d194f15dd585066679466958cf48f0cc0743f3933ca72fe5f49f06a6e80ae1f77426e9b373effe4a57de95ad86a80f16e9d53c80c0836a3d27a883b85808bb4ad97c4bf22b76fc0172364049ab0c569931a02f6c464bb3055e04b8a87c086e675db8361074b3e84536454a750d8a8f5e9002a98a9c2f0e70ae88844da08a8bd6499dadbe46dc017b7157df7c95c946363223234d620b153720c33af95dafd9b541c436854aed3e22ed1fa15b7f3fa0043ae4fe6fe68987c35c8b422145d7690086faf7f095bac55a79a896b126bc450d4c289c1d214b9e2439b154a037dee1440577010b7e186633ca78ed0fe46e16870dcf4f3e39f52ae31e763facb4b83fa9000011bc6766e3395bacf086a40a7f19de3ecef6802edff65404567fa50ab1e9ecec0441146d5e733074f235ac39cd48f4f7ecc00bb26762809fb67610e25501630724d4926741f2f91e5a0d72cc03539db0a8adee7dd080635a80cc838e7415a30b606ede583d2edbb7e9850db313014b250a73a62730d26359b233c57d000645f7dffb23bf6ce3d2b2e01eb49d6f0734cbb62441bd77c1d068d7445e7b91284df3915559e054b405ab244c0ace5f63a8f52f32e7c7224412088f5fdfb9aa01a284fc74395128d0d2e910e47819270a0418aebbf54449f4d8b8f6c45c3d9e470220fe213862e6a3b05d127c73363743b4e8838d3120a6b6a9c6ca5590c4022dac0dd0766468f7169a99fb1a29becc9e252f3cb366f1e2b58653bf070d4636c2a4161ab7c1579861d1c131c033b03a019c350a343b727fff6520721c984dbf9a575e8c11cf7440de29726881ac31cac76e2ecc6e2a0843ce9a6c9c15890812b442735adab233c4427e79908360d135c6895f175d66d84152ee1665d8beefc3b4c500bbfd7d60949e9def80302be0e43080c9832236319c03aff33bc9bd753f71bbdcd5a2c91be6181f41f7d9cf2e5176d82304019f9ed71119407d6a714e83a74a2b54f13bb208f89472611d5e45ca5b2fd0b3300a4a705606ce1d43d05dc42d4e35a6d0acc1f17d3baf7513ba848f11a35d3d8a8d9448475b260ede41d7e8041690dcb52a54fabed5e7a0ededdf5ecaaf9dba0a7511f10ba020fa8030e5c240f8c223c89fd13165b74754c46836bd8619a0be3637b7e66691f370f1d4b70cacc055a979019226bbffeed119cf53149368f437c858fbe6ea6d406f9f03ad62f0d9edddeb09f735767ef0752b5674c26ed24dd9d61c66d899432bfebe1c6e1a7e99dfb7473bebab70f63b5707db8e3ad4c53450069e10e12bf455db8904b67aee11a781102688d16789147f2aaad47968ccb2c95e076f6bb10b2d21731703408ded85abf61d5a376c0509b1cdae16088704d4d48d6ce297ec975dcd4ab29f5f75ecf7535d9781fd86f28ee242d257ea6ecd8c83ee1019f8c0ebab2b4fab18d49230fa55e7ae75dbdcf10ade2613800089c199428af8a21b1ccd3809f219b1a9a74454e3fbac1f95343870cf3ebec19f81dead006c8b69a2389b7ccd438594bdae5c261abce306f42f6490768004b17186399a57f2c54c8c2d4556c2b63b2d281e0e9e2b55f9da81832c4db82c62e46e8ed64c6093b2e952f8ceba0fee8a2c1b7327639a250cc1f5ba32e394f6aa0cfc4ba9b5eb0e7c2ee534c3763608878f64f744d4d0bfdba5d5b7121cf6d57f4eadd21d9410c840cfa8796dcc91508a53322188fa813cc667a941614b8bdb95f9c3889d727553ac7851da8088f96c33699440de6cc5132978ea87759dc089901f06c679e12772d34b019fdf550e0fae96f6e6b0a08140e1a697f8a32ad4460d41a1fc4e1664d80efa0e6620656c780e93789dd3f6d4f95341f0f2d40cefdd5912dea3f9567af2da348350064cfc3ebd0136b825b94874d18023dcf2c559eaf0a52c890f97ce5e24253aab1bf37ce9d242b5c4950e7b9b4867de07a7e573e12129989e24b32d055e40f0cf3ba84c1bb0f3619a086cc106ec194bed13187d464ef8ae2a108abb9aa91a0268399fe5d80ddcbbbe1995e1368a8c90a091f9316aefe91b8269851c9ae7c3b054a9d7f93472468e81f4368e55c8a46b7e4e779415a6c925bdebbb861a5123a26b5f4bb00132d72de0bfc75d99ef8cc3df48d21326374b4d009472407c464ece1ebef575685d01ba663b0b8cea08881ccc6d2c973d96be065a290cddcc2a2a8a3977ac7390238e3651a03bce538ced0b439aebedecc0e370344b6f15036ccd9b921a07cc155b7a1a283dc9c63ca0775a9dc4bfbb0cfbf1420103b97201c137a7164865636040e45a317f0ec41c10e1477bef8056db19d02135fde10af423028e321a9d17496335d8f92d1897cb81fee8fe6e4722e7d205625cf01e884c54fa63759162bbc2b372464028e8e34bd798d6a87296ff3a1f2f8fded22b88c605f95b993b4633e2f6ed62a25912189fcefb209411b003f9e90b024f1cf9c501194fffa5541cc32633c2bfb780a59a5651d69977e63fec2014cf85f30d859b810e5d941fe2f6c38ca43b60bfa3d424f1a90d364f1e1b5aaa39a6e69402ee30267c63b2a1b90ee57694c3c9c9abd1d5d8126679c4cd5183c94b390349eeb052beda92f8a04453b3c64eb404b511fa8821917b66d1f653d75dfd2b5555ca8c83b06470b02acab10daef5c8283a10417ecd130ced4c817c28b342f363d9008939de03845155e99fd43befddde76f74e543b71c62244fc6c328daccec109fbf47263511bfc41aefa8674f5fc65c0aefcd1b69f752a25012736932cf5338a5606d6a82531a905f518dc6e6e76c0a1d71293694b5416174a3a0a5aa8150e87bc8f40c09732812d4c91e07c7df1126492dd9c2f7547ec8585661ca5153e997679b6c2df88a3f1e45c40acbd4a65000e9e68b3093f4c35d76e10b19fbd921e265fdee0a2f87beacc6e372ebe4dce653248eaa65575a2e8a1dc4f1dc2286c1960e5d671197ad2a8170b2f65d5514871b46e65dfd2c77b7990ddb57b69ea44a70dbd08561672397c3ee4d22719f224eacee7649c7402346881342300d3218ada91032d38d9b3847e5c1756815b05c767733474267d0f5b1c0cd941c99a804f6a9bd9e26625c9f0deae06fd6b4514ff088dc0bd3049be6115491fa11d4fff5d910298b16577d6004b543989c3f7a8bfafa8ed5d9e21ab21086704ba2784a8d2d360094c11049fb21a1e3dd1edf9679add9e3ee145f635cbc2ed1f9e067ee5504eaa76a45bd285d3bb91433cfe0d8e63ad721564892aa1e47721e1a1e5003e5334470e6e852dda264b750f950441a7c3cdf8218b70db5afbe976a9b84c52f7e200b9fd2bb81f104ae20081e94e62bacacc007b2c0f31799d62da0b13cc9cdff89d0183089c3868356390514399092334e0fd5fda9bf8490d090ad52096adc4f05db1c6620e2d46b2e04858440d0d7c07d1e09728ae67af4c4855780751bcfa54137d7372125568d20e505b0f36f9733e65670f73b56c5e5ea63eec3bf8e74b7f35b65e50e32fe0d59427ba5e770f214c0c05d7f775a610ca2eed51c1d5b59075b1149cf3c5b85fab0b48cbd1c19c01af6cbcfba3423274342f773744f5acfc7ca88b515eb61c61bd95684b0693d945bbce2b0866e5aa28673b81e6ee5883c73a02182b4e72395f6079450ee08e8611d050ccbf4b640439bb5071e1a1f1f9cfd9502e5b69f6c85345ba984a6c0f61aad388cbcc3166737e643e73ae0e824388fdd868fef05b28ca98d64ccd8225423d2c7e8e1e627d2756887bb8bdd3d69047d5a2d524a15ef7d01eb71e20363116f8f950c7c144371693ee871eacf56c6094e626fcc1f722bfe7fcc69a7481357639f86aac07ace4665619599d1243d0e962c030d5c754ecfb61cd47bdb41a3a89c10869e2e67b26554a16910af0e0abd22df1130b39c9ed2c48a045092e1cc3f5a62623dc0de61390216b3680ebfa811d5f6d9a971ad0d6360cddd35e4ec6b4702f963e3f588707b0f73f4c6fc5ea389a5637f797a7ec9aee6e58f42035bdbe7f744dbd5da36df2f61c0453d8ad142318292545ee5b65bd3b41bdbbe5d49283dbf0c184c578a112c9066d0054d12f19cfac0f53ed44813d8f2425f8db8854e78dccdb0e8e18cb2e923792e2b9f9bef5fba583178eaeecb922ca7cc818e33c56cb79d94c99cb0640337d6265759a2902b39f9e8f016206d641b833e6968bffe61f3edb0df2fb4a194b2dfd0d1dabf12d528dd686175ebe8f188871ef9f17d9950a90b6c60eabd024de6f507364d05a3ffac3c1b5eb44ea510ef461d72d971799f84f18ec30ab1c9e4e2ad5e07bbebf4b6d4b655e91312c165c29435024149427469d0ae226b7bd5503fbe2a72cec0df86cd72e3ca444fea5a82f81c71cba86956b12fc1ccbac8d0850110f30147d2d17409f1aa9c08c6d57cdb485a51ec3ed64612a6b4f59007c5b9b48f58001b9fa03b87b6d31d290d81b9fabe8dc8f94a61e8d70930228de2d129c4e469c5c975bf83b311ddbdf894f10c230f7a156525ec8949cd985c8cc95c291b25b8b56255ef993e363c34bd6462d609f57de1b7717f36caa33c65d895eafd2be8bdfc7b1a9d3bb594ef9519454ccedbea7025495547fa38aee8927983824b50c78c5a800bd912f2e5c42d7ac879e382d4b807082069aa6e28d39a92969363f1e289dfe186cad8ff63fcc46e439f7a3e279766cbedb0caea1b847036d8ddb1a9c566b18477dd5e3d7fb041e985f6ecd52b9f662dde71798d4b0cc50b3011238faaa53a5cc4d8d8a1a688523c1946aa4d858aceb036530c2a2679aec50d839d302af5cb572f4473dcd875a122a3538ee4822734171b2c66afa2fa9badc05a025f51ab043d38a548bb5314dbf2b7dc18f626d8b8bdb207174a167ef7b289f686ed810bc1369d91b2c764d08a7b29349402b72e310cd53b0ca4583e89a6aba513842b39a3ab59fba7c58f20e2d7af797c53b807dfe3022cc9a301c0ad6722725188a0638d1145c0ae6b3560041f3e7f184837f9b3647f6fcf734fb618162291d0537d0a55c6e63f1d9db3de0a4b0602d58eac79619dce3a02a4d4ba3ac2c6ec97266bfa9e11d4cac31663f76ff659d657a9a3fa584b29baac4f9d1d03f20d65ce3dd0a701d55aa3d4b2563db588d2a9cf2f9b7a8b64ea47a9aab12e804dbd849013a63e0ddecccda62232f6a72ccf26f7e473f9a5de59aaa8ae90f24494f446a985f506a83c14b7aea8cd1dd54493b451f2656081b4503db0ac09b5b32917cc712fd4c4b6a98aef4e1310e11244a759654447b80b479789f3520eee8de8f762a28f3af16026c9738769b9c49a98538c9789db992395f1c4ee465627a8f30a04fe6fedee6af17c9f42a66535a5f40e01a4fea9ddc325339a9443592533f206d985ee48da67fc776e6645f9945146bb4dad68530249d9104da1835800b9283a111dbe84ea77eddea7e329b795ffb2958952f462e4dcb41a313a1487c54314b935b0e874dc9e10bdad9c60005a7cc6259d2887821b2855327370aafacb922fdea7b60e552e4bfe2283dac6084114f1c88ae09f9531f155406d81bb0282c86b0ce35221c244b549367e088aa55e570696b1c987e6dc12bd703f58fecda8c7618566d068b25b3d6bb26d14a5a659e1a716c2398235ee150bca743d6c55a6ba82a5ffd612483e65371acd80048935889c8f87975024c010697f32acade4ee2601d2757c17c973e8e5ae92ae85379b4c29b3d7168def1c4b33997f73496901f53348629c235469d5c31cf2715381a2537492afaab32eb5d09ab83d349893843f87b8730e52a2d5df2b8b29235dc7d54e7a9937be85bc23e43b455bfcf0750d4240415f85d48222b08e4166037c74de65efa0a78fafc809123cfdb181b7eff25ca4130d4a7e08fd780c6ff21c5b90a61590b1422836a295d7a1946ec734da84b42c075e7984634ea0e451553c05e99ce942dfb2a745e38f72e0631f9997f4f66987a91771cc90a3f7d756cdc3b111fb21402f200005b4c75654f30c934752f967cc9e643e39b746bbdf1c5e5925add3b35255c3cde6e1027d2782c44dde2fe894da32e47471385a3f8b3b137b41777cc4f24bb5d7fea21da814ddc0565b70f044b361208abc535a566bdb1aca98751f29190d8f3bd8a1a02a4d2d3770a1e1cc66758cb0b50b10ac50c3f111b26add28e5688c70ae0d6a189c159a971326b12bc87e4f9ae2b15d18107fb830629b70ccd08d2fdb87c34a4ae0c20be7ebb6885a7b70931e5d0bd9903d1478911a68ba174c894ba0464030b8040f161b0546ebf55657ac9bfe13a292111069e22ed54bdcdcc7d5a9982f9a03b537804fac49846e1f9492170ca87c6b43158fc7bc6bfa2459e17b51e8200c0c67f42809e136c45fbf3dac7d59251eb2fb259ed1fc7140393e27cb4d8efb515450f89c65f18992e3931f90cf164dbac882eef1424d78c3fff92c55ff0593deca55cbddc44911ce8cd4db7345f471e0b52cc2ef7e4d8ea95e273fc3e1ef666a8c46b40d71e3f58c6bee2b208546a3957d0c6016fb8e711fbc7f4eb4259284f9f353c3f6d65fb69ecdcf51ae0bae4c11387acddbf47f40bcc4d6ce67f26e8140bc6f2f7eea8d113b15613306e88bf97b0763bdf6dc0fc51307f3525b1ee3907a642829e4c732d11ac979561606dea5bba760e81de5bbba474510a29524434287971eb314ff7fb19a780db377f97dbdf4e055b0791adbc3a180d5b46f08dcd0586543ef93ef2547b87c812873d53f539786cf29ffc27739ea96865ecebc6993af3d866bba7c368649e3e69d30190667e9a5a890db9af2cc927c24bd6140005e9b37f92e3f48e0dbb0b5f9ff92f0abb30746708f29ccd36c314b0ae85be7f98ad7e7c55b3bcd440da3a85bc20560a86fc3ff55dbc00c2585f6a995c34d0949d46316314aec03ab4797df581d20a2dfcb427b5c868e458178148cb08433e1e4c2d993e5c65afdcc7e5f0659da1e1c365f6754c19a5f0f333b3ceb35e8dd652babd9cfe53eb2c6eceb7b9759273a084159e8fce2a67ab0c2f1ca98d62a26ced9b53abdc1f2a438d445e8e3f696ca83c0439f92bf17b4440cf87dc37871d013d7dab4f7ab58813bd716d777484bcdb915c458695ae83edef89eae0397e314f7d933eddf57df956e2d310cc70a60d76cf644b76688ba2da8699de321c058b0c989662fd82dec3de24d30f3a18438019602ab5950e5e9b1c102ffa5b2c154819a479ae7e0e86191c02502e356a3f86abcfa67afb2e0f1024a97c6578dfe9584378d48790a01b582353962a87fddf8eeba9ddf90fada96160ae6166ef7e996de37121ff5816abe56f12d84c766e44bdf155cfbe7fa4ec5a4de7a514e52ce2b532980527fb2a1518da0aa820df8ea051e4e53eb586a2128552d87cf52a8b071f91276e96dc15779b3a6d0535a018d129129b9de355a0c7853037a8ce62dd40669910a58eb8fa4940a9d586056d3d04f656154d3a0ae0a4f8e9a92bd0722f6350be451b6fb85fdb3a84db1b98a8e4414aacd49a0702f4b71a20a9d3cbb32ad5d61de74765a926b60d32e4c89a814f0d878e578629bba02519ea4e7548ee752c81d4a762f7a2fde20c3c60025b47f6b5407c527c7be51ee65e83500752edc2ec1130f89e752e60a4f7b809251af013c77364614f2c1490ff45c1b85bd9211fa6fcc1946867b24c31bd53843b533930b9163a40d338c2264513098a0e2f4c1d05ed03c2c69c31114760d591eb065fd24e9cf22fe5f41059ea0a23dcb945dfd3c13c5f5de635d032ded0df13ed81610af1864d08ed1c3bde6ad0785770011ed5bc9001f53e543d22b1c26502614469808f8e6ad615db90553026fea348db4e97102299698a55949a9db818cde8ef86a405671806f4d9acfb352267220b5515d130dd9f1453b3b1d25c05d1a0622c535617dcd018e93792ec5b44c6574974a2f8936c741fda6d33d2349066985dec30d6e29e3425bbaf63b163c80662043b856929d67077013ca4f61d8f00c3834531cfced888d6a4306a9419e21a74c6f6b5725657ae5233ced969e99006e60f982f6b5c7d23a5bea124eca84fd4ea1444d3c2857540370f4199d106a3348d3b2b136daf16aa8a5104d840160a69d8b08fe2f3818b116c0c6f07646279fd2f4ea5f81b0d4c912a3a259224ecec8c7fdb635a071ccb47b0dd83a2f15d6bb3df86468e23e658b5d3788d6db5c3c9d9d8e9583108e07aa21ba50dde740a2580e410c29f2ce8f6dc81bb070835bf9a1f5a7f5b73361c12ad661a9ab33ad05f47dd8edfee5055b1b94d86db4d95bae11d1f811d4ed0f474dae8f8e4fe85c1a671a7a8507aa9bc56df7cc964a0c034b2e0855fffa8a40760a9124a5614b29592410cb695c9e30e58eac481ec2db3d3c6889d3b878148d0e42731fb3fb5c13024d223195f7b6ede9a43e00c8f08f43944faf04201f3b174406d33c83419c004a5ebd0be4731c333ec1422896e30f756793bbd04befcf731964d01966daa188e5511975fb80ce6c21a877a0408dff2323a4b45989ee72f678e53f065841992a2240e6e2784fc4e3276d2928aac62f33cb80bcddb516e8e0efb30bf2b953e4f9ff3f9ac6076b66bb777c835f7d7ebf34df2c39dafea2e347745d7f36c2ee387d65188d623d3f608f9fae93176298119a5d7e3ccf0f15ccd22f75bd8e9aa7bddef54972c5ec35b06cc9b0ad69bc604bb133aca2ca9825dc8690966048f9d73202874d7cd77a9d5acbc820efb0f318a7f0e5b0aa429aae6a612c2f6c48ad4c7bf13ed4daf97bb97bac4a96a3439e9d2862aa982c67da449438c009463d6b4a3b12ea75fae3abcb35e29acd925898896bab8b04c30d1c3d010e45eab3f806d43bc851b9d0f543a44554f9dccdfb6e8052a1afcebfc38fddddd6030c685b2b082f51324985df1ce6ec8623eead920c4c156c39c4f72f4903408580bd0ce02231dce153596725c5935b373974abb8764923ee27df87e2f55c4243fcb54f279eab75ee46735778c0d328f2538cc2043ecd019c0e3e1df7982cad3122a6d5084dc6c62dbd24372e8e7287693effed045c4d8d0e18634891766d449ef1e45a214a70b69952484d30229d221cac2e5165680b941896256b207127c0500c561f1692f324338ebdba9270ef470ce6161897d1330aa13667b740694e0290cc3accaff28a5eb62744d87ee1633a37d08cbbde979377f77f203252606670ddc0c70426b20d5fe5ffb2108279340811dcaf62e77027cea829941250880e89c6e61904d34cd7d4926a4a2483fa4da0695762a5620596aba88c31e4a9757976e663b2922df6a55ba096443c162515172b2063c4343c25d18f18ecb1ec1057639da25277c662812597cecd17d8e00881b515d995434c7e58aa8c8472c0d2fd1b94d17f1b470f0125eca92fc74e44506cc124aeed433d2d558dad4ec9f840ae3e43947652a54fc07f6f6eea331db8e601322522f455ccbfde3e6194188f271f0d153bb3f0f49cc72e5d9a2d9456dc53f1b9fc149fee6b0bd5db08c8dfabe2ba002b41c8b157467789e0789abc0a93ce433112f3cb4a764ba483be96e507a97f8f2b4b597d35af0dd4989890e2e27cda675f2c594ead8fe1aae4038657f80e117a836d9c411820f98a1582692f6eca49d8f09e90bc55051cb243d42414e30a5001bf9d266cb8e96f9246905548be96dab8323e46d16efbe59e9370b9ee71f3bb421cf6f62014b8bf4aa566d0e64cfd1fd5d4fc02104ca1689dddd6a848efcca2b5a1a68518686865df8d31f061123eac34edc053134b92219d04f615ece6b27367c5482812ec3b2170a176004e8a496aa2c45facb1c15977564793ff569257a0e2c7648fe4d62862f582d954cfc17c7d4a32442b44963bd1f4a43bdbef01a7c7170de1c34cb784f27dea26effcd79f19d3ef4fa83b1cf65300573ec3049756042659f28b325a6be951afa4db6cafc96189269be42de6599388cffa5f8fc49f7ca7042b4e1c814f09d02cae88c32753af31a62e9d2d657eb430fa66e710e9f2e124118fea022d1fb6d4f9044bb23f5274b22745126da73ab98b1ab8e38d3a9ffe727e2c21128f14e4ece93e4c4a92719771ccb74cfab1f2b8616fbf8634ea06f6114175d6a2c5062507fd65a1e8a85470e12b6a1797c60e7af0408b4b7eaf94702e0f36b4db1af29c43fc5a49d3e27d2e5627bf5b2e2b9f9b3c18ca686424c709b86600ff36bd8160c28e09b009f5d9d6417c386250f39bc66a1b6462614f346fb1e1a97267f6c94b57ccb9c154297c129e1b54d3eb278f575d19986c06d349111e16f033d9832c4159a0694a3118ce955b0e19a9acf2520cb886998e924365bd633dfc717bc09773aad87535a6ae1c16c18988e55f84a3d4048af77ecb175ba4f32090de233bf36d74d9d7f241cf243a08f82fbd0210b14459407787bc4d576d66427e13f5f725e3445fe757f288435df22489e710e30cfc097e7cc02cffc9ee41196b8a5072a570d08604a15b74d307bd62335d5f7ce9d4a60f95fb9a8313af5d1966f8849da4924b4023c1c1e070be05ada0c12364057d8ee31eaf207faf7dcdf158662b96a300ad4d2209e1e01c54cc0b1c646c9c86394cf98fad2b2de0a28232e3e1eb0ca761caea647128d42b1141127fee7404e0c6eebf58acaec903bd81fd38deb0da01a1a10b503436da044082a471df499effc597bf4fc1be13731e2854b07511351055cca13d7c77e13e6d24603c94b16ba16843c0051b551772763c5b9a0d08eb87680493fa0e946629fb329e7a799aa4cc8b78e2e56996322f61e971b90acdc559176256ae479375662a297f5a02ab76e13da9e1c0c5da86082e96e1cc62a563da536a487bfc0b778f8962b19b24dc226fb207212f9b848c9f821e7f44d43c61cf7bb645a4fa823de61321e258a4a1b59779bb602f0e399991d0cbbaf7984cf05890e5ce8b7fe2d0d08898496ac715b0e06b7d11f23da0ac1055c2543f3b7a4f83616767d5c6ba6c15e2d9251eacee313c9bee8a8b099a27476ea276db91ebabad8770ff4becf9c7a1aad75a587590db52f0f9174df265b394e50066f3611941ba539f25432d539fd2d411b7e276a61e70a715bb26f02867eb2d0c3c5dcbd6a924031b10f21edc7e3fa505c1fad281b8824cfb52e152eb7bf6b6b8c41518d3ff41409778ddab027f20dc08203c42ee0b996c9a35268777c15363e6a8fa20b326d6e40be9321d208adccecc97b5e8f3e87b30e73a360d7372aed5ce156a5323d415960a20acf9b47fa503b27926136a23ca8a4257ee76290e8200a57a3b06ff6ef2090dab63c98ca8a148fc42c5dfb650d6bc64ca45a81938b4379216873115d7b1bb367770a3463c9d12c164c6f896c5e656e1370669fb512a224ee8d50669b73025c6ff8a9eb69b5131944e10ac545177419125b524279f41ca46830708454c95b809e30e2284a42cb2ad970dea29201ac83e41e6321e85ea29148bc7e1bff45b52d274c1e6b1c4afc3650b57fe5fac7c19e4fec73413a9532e38ed8b0b56d052a17dd552662d010ad21b9fb14a442907a188a385d05ec731c1b0289197dff65e6d5a6498c45286590b7c93f3dffe70fe101740ba8d83fb044d1ff9c18c1cb7ac90786558e0f01849f9a8ff3e09bd4bab0d22113335da94a1cfb1b41649ffbd14f7506c9c73f1a5ac5e3eaf736885f66aa7278daf2c3ec2c7ee33aaad23242a183065d07dca8cc30aa614079467375f2a6a089453ee48e485eeb98c132443fd795e6318edc7c727fe10c41224141fdd146577d4c63953bc8fe4ef96dbe7a10ffb70e41e5929055432f138ddd6e5ad86d4ae37ba98936898c7eb82a540c12b1772c3309d831d21f93c9ada6e7a76573194e06d3e0de3d050b783a8be1e5b2a13fa27978c168388b50098e2531d200b41edc7fc8fea045a2497b56cd36212a816874853e318f96ea47e120953ce4a49e18beb6fbeea70af551eab523619612ff02b7b2af1aad18d322c17364bd5f37708ae54e9f4c8397932a0200ed932479896fee22832abbce146d4df88b9a2b10a25374a9862f7b10e25ebb0bcc8932093e93a2c48092329ab9e2acf466645df6a219c820f04cabf1ff54eb0bc6badd1c123a2d65a17aaef78b604b6ce329e321fc2508143c965c5895eafff6092168a0025a83c4c734b5809ef77bca13e1ccf8225255938129402ff2d89bc5f95243a31cc712d0d6a59ec8a4027809242efb49aa362b783844b8b154a34cd799df775e868d86a8eaa4759497b91b2cdbb8e46469fe5148bb22e0a9a56adabb729713a17737e440700b8025724386f2dd1ce78488fdf3b843509dc3af556fc0e0ed6f2c8918ec6dfd54c219ac7d48a8b9420f430c52e49bde1229a046b7585e7c812d5ca73d190c882564f948adeee8e1f238e8962e43cb6d8c86e24ef7a2a062042880001162a54a5061ced31a64e5fd67560b625a6705acda86f02854a277f3dae5e5a8c5c73e796438c16be281b1c16eafb015bf4a229e93e4cad0ef5100998888e8fd10129008145354525dc5b384aca05ddc6612be7320a7ac269464280b22f6c443936851bc78ebc673b5f60f6efe0b26f7b60bf7ece1c91fa61d186517704a4d7d38cf43671440fdccc550e96b4a2be6ebf1bfcb028ac3e81e10ae7ca42df1fd68a8dcccffa1e9b4c253571f49f81de542fd1c44249dd84068b4cca227b04796f40b066678c061b3b70288e0663ba5e61dd4aac06a195d55d66c92cad87fbd061c64d2fb4cb32c1aeee8110abdadf28b4a84f773275218a5c95b96771b5b69c1be2a780ad13940d4f5d95753f5482af5732c16640671a207c8a22cef6831f811d7fa08f236c5ba2e1dd25e1d9aa3aa3d02d8135857ae7448020ce435cf1006630415ef98f570da9b920514a901c393f62d645e53f10ed8835cdaa80a6cbe32364edf8172816b2adbccbda1e7396ed0d6e1a228a0b43bf3c52f53ba595d225a7f635fceb40d052f54af832695d286d0f54ab56e6bae48102f6b0d844376adad4c00ecd92f40e2331fd9d928c7f9cc328fa3d9e741e516f2f0912e9b25c17b49d31e18ca8834a638433e3c26a5e0a60b8d3559f316948f91d69f638044051280faed97fdf2f64c5a9b16d9988e7cc6db0bfea10caf57532698a8dd84a85cf4203f4d7b414fdc4642116436c34bf9e241eadb8d0a6dca16986167993a68834ca6a224829a1d2bb37326b54a38392e267a00a8621c2ca71d7cffc87e8a10d7279fdbaa27fbb3dc57014258a0d6e3e14f8322813fb1e09a121d266896447f6c836cf98d50bf2ebaf2d8b44f10ca91e4f2bb6318b6b4d71a306573b0964efef20979c3407d58c7dc1a3d23db3c0e0b9d4f01cc9dc5d5190cfaec03b436cab886871a59a192a37a0bd6e56ce94ad89fc03788dd84afd76f8edf274f8ba66a2ce39e8640fd54438cc3bd233a170e5c30ed17de61cb8df5303e4adb25ce3b678eb8934a857a3dd40468a0f0bd7f60110ac011c8eb95355cd1176906f4c4647fd401aa2c7ad1652992db302740b04fc15140d9568ac41b33136cfd719944d20f101098e7db1981aadbc9899d8d11eeb28b5d999bed057a6ba85e46a599276cada0449a8884a49ef206b23e8f5a5776d05f7e00d9156b5337e835560f2969d71cfd35d236bd92183d65a1e2bd009855b2e981234c3dec5c5593eb4562fd789db5e9e5d523f64572fc9b6123465aeddcfa9780fd6962f5edbc4329916605cc4ede9742144c4a5c5cb54bf832484ffa54e48fe6ba1858f46261c14fcaa36c80cfa7d52045f99b7dd321da7f21c462243dae104df0487790014eff3847e916d1da70394c88003e9405f7ef0e5d7947cc837122d0f70756446b61f8081147611770c9d1c0d468fbe39e7898997b41477c80c89778007cece1333c8b387ce3b4074092300538aaa04b90612588c3b655087803a14158608284484728ea38d839b638fd63ce3f40b0ca0d1601a9196a1045dd5b3de5a329113b9dd26f0e012ef82ba2d59647e329636efe0bce23faaa6b93bf550f2ea195c3cd361614bd473dc78f3d8a1d4d333f878ab83f0b5dcbcf246538542cc3251cdb17221d2d67d0a2b375021509d139294c391f7995de80e4ec808e8e989d5c7aa16a5eda7628e93937f550b989aff32784fa0df7612662864173b26853a9c0c3de5a7e6055558ecbc0c85af73f2f2de51b9ab798ecb3ba7c0099703147a038a5236795820904a4a0759a3042c909d028667ddb608a03fef29f56a5868ffa09c4b80d2404075ba06182f8a6527d51882e6aa170aa5a1e416bb2710a9f750a817f08af07157ce25d61fcac3ba03fc5b6b441242f6265b6e29539232051107da076207b2553c78f8b7aa4bc083af5b1e7cd9076629a564666796524a667696ccec2c03c771e504735cec5c456e7ff4b839ed09e9782e772a17ea475fdd56c02cf9125fbb935e8e73e6666622dccdac691002b06932bdacf24dce39675bf7620a6a8cde8c42ba2ebeb83bed72d2fbfc4acdd2ef2e4264c8026e9c918846a9263529e5e4145479802b2d0af1ba176ff7addd367b422aa5cf39a7847ca68a199bd99bd9cf27c4d31b4f4e719cf70949a5525c8ae36cca3e167fc59f6adc7c0821d420d57e52aacda93c15aa2070803badf4ae3415429a36c5d594a501ac695a056c0006d219252a495b685e689a366193972724a43c21e1a6e59294fa37534ad91bd2cc94d2a208a5c67392188940902707d537cf480b3d2e3869a1816012222a7c38a57c2324e12d97f91be08399193a019a62b79b46931a6520e38bca4f9d1f3ea41107b4eece42b4f13671ef1bf1f5eae69f2b2a7f8f92caa92595b98e524dd3346e86326eda7771da7414e653aacd96f3b95b320cdb9c789975f46b1a111f07b0ae3febbaf531e14a0ae417f17b25e60304c2e643d8b4461d4c5ada40dc1dabf8d29dbff3abef3ef55a779db5ee6650a3d39cf33bd64a7168f3b11f9d34ecf762fd0cfbbd4be765d818d6b6973b6d93b9b3cbdcb9a1b9f339d9b19eea8cb19eaaa6751b0e9a3f3fce57dd50e56b6b58874e4c2776bb0d13f19dda9c73ce39e7eca5261371d09fdf4fda4c194102631506b694e7d7a74afda2537ceaa1ede747270dc8f62cdb502e1ed4f85f43b962b4bafe75e1ac877c806ccf7a963dc2823af2c2f6f58d54eb0384f5f5ab3d529ff50c33b27df5b159da40ab28ea8a6a2c13a2abaa72d1d7baefa4d5d470a873ce39b9998a326373fee62181cdef27aad9efaf4324bde904f1ba1cebc9172750dabc3067c8b22575e1cb23a6271c387c0abf5a39dd85df3440ad2efc18e15308c3b079fa77b95ac8ebba8021fcfa3ae85c0857643822f07d4a8817da212b885d685536d44800aec6d7f8a93cd51503e788841491903ad643aaf76fa57ebdabf5adeaa5da1673dd369995754be5ba3fd52fb20efadc8683fcbfee352c8243a96ea8fdcc41d1c99fd25a5def4ed7674b70092ec12378048fe0511019cb685739d77c99fa4ea2eef2f5ba1a0ef5eb4e6aa859941f6dd47eefdf494860febdd4430ef3ef276dda2447da6267c5d0c7624ecc817ddedd6f759959c605810ef1022e7f221029526f5d2200108b109ff6d00d0663e3c66712a875e950194604466d2f9f9b3eee504a29a594524af90ea7cb12bc785be8a1089352cedf72f8d83c7a238cd1dbccb1b1d40652614197b969a20ae366cbfd78ce9dd1219588e38352eefcd93adc2965da6e4b6d6aaa323518b54768339510a9351738fe3941bddb6fcfacc30788f6f43d7667ecf283c1010c0e479727a6233e053868fed7126011e69c5f143b20aa8cff3ce2b52a1baafcd437d589dd1956aa8f1e320261da04b4a75b0a0df444653297eff4d140b3cb66a10fed59e5837e51a4b18aa2aa7aa2d40897a233e11c5a0abd2b9d64e0201287110cc7390f7485068a0f82b77b47398f882de79c538381c7400e87e362cb6e5dde20c39e0cb5bd5e75870aff7b396d81524ae94c6a612a938318282230892982e9885800ae7f9c318749cd00ce00516b0ba23416252c5e2ad395273226a527557af4b043650253438f2b5033b0e0e06d2a4c9a1d28e1e054832d9ca0be70c10c93034b882d7ec0e2041847a889750eed634989db0f9ff808b5ea824ecdc6693f2aed57dd7eaedb1d55036a49891d76a0a28b255578be58d1a3a4c6e7eb9749777712532c51c31a23bcb8220d0e9c114dee31baf0dddd6d822b94948ab8e18c0f4c7d43cfeeeeee18b29a5a52e3d7f0185b4019428e3c89787c18860fff06f03b0ab44481a18c92394c74d036dcaf5e1f410ad3ee8ed169446209299799927073852e332931e7d6a52432619cdcd6653260a22e0d962ecfb9ccd4a58615eb5be17edb0b71ddfa9389b034d58e6ddb581ebc35559fab64cbc3ed48bd96aa29ff96c7ad6f3debf939c651eb6faa1db5dace274b85779bacfadcb25f77b794471cabaf95553b6a51a4aa1dad6771ddb5bced595e7de63c79b994b7facae2562bcafa9014c58fb258d60479ebd76f59d6578f7a9fd2f9957745c7fa54aed555effbd9e17676363b59ac21f459cfb5eab778c44bb54e4efdeafd562fa4bbf5eb7cd7cabd95f7f154db79ada5cafdbc2a0f6bceaeeb6aadd5fab49e85faf45bf5e9d7d423b99bf77577fb95f715b9ab9657b7958a7baef338be52f3e7ce1b777a4afb6d6b4a6717556736d8e5ce6e9c946af24226a25b6f5b53dabd35ddbcbeae7fb9be8184e6f63db7ad8bfd5c2ea5f089689745846a07d53ce8aa73d66de1384ecdba626dc86ababd7bf22b767b774baab9b77bc7cd89bbbb4b7709dda5f48eccf47eeed25d7695b2dd27bf747777e92edda5bbcb965d4f1215be6c5551e14f4a35aeb3b3c27d4b71abe96f662ad972be99b5a738089ae1fe94bf690ab3d98c08844d7162d42cbe6628a91f9cc138b1be113acd60523f5e8a41220ea8d7c6ffb3eaad0ffb45f18fa21a1bb2dbeff416361dd1a60f36a6968942f8813a02c04402a0c1443e35a08ed5f77f000213a59888eb564c34e3fb594ce4d261a21d1ea8230613c970411dade73a103cf8de43efbdf7a131c32523460fcf8e4eabb256aa8e4b6d549b1d0321d270c2b10a588e8c8eaaf4101da8291345fa138740f058c7071f04eaf8c0fec79473dd925391c72fedee5c8430e875c3353390b0f19c8d0f6cd8b0f136a47c1b1ffc33918d6fd8d0c6d660e8b66d5d0764b2958a47ea522d4c04bd78f36b6e7f18aeeb3a560782f781873a3aa00207f57fd606e1a07e970daa17c118c04434bebf0125f06022191fe3fb1f600213f1ec7c7f049848e7fb51f031010afc00620126e2be3f050c648089e8f76b60031c602269e3830f3eb051c387c60c978c183d3c3b3aadca5aa93a2eb5516d4aa711c2973971a2e6c48913c7cd2c8e1b376ed440b951a3460d9a33b2336acea03983a6c919341c3cf37406cd993267ca3471c180022b422cb1660d19364a34a0e1063cae1aec02bacc540599bbba5f7d341b851ca44de99139e250f18b638c1c14638c31c218532bfa021d357cc4104e4ad0e00b26a43882882e46441f6c0cc173e686d0085c74628859ba88a1810bbad860062e6471b2a44b8b073a7843c40c4c58e0c298245b34972e3a5170b9613e09a20c0edcdd7dc5034bc1a494c393132726578668e38527c962dbb66da38106616660f202274f947898d38509980b01031b94f1212a8b19da9469220b143f2861a1c4e5e0c09900450730346da9c206a983b82e2706d7fd7bf8609213c4f5d780cb6922274665278a26618c395293060ad20cbaec40d1c392025ce1c5090d1429b0b0d9c2854b91d9d8f42091fab2b9b0a4290b264de0c00628761026690a2d72f003931517040144112825663e1c71c315fd43078c60c28c9c1faae0620a2d3c45ec091c60a8020ba42f30cf2203283c70b2832aae7822d63e24e168a8a9fcace930c1f464e6c98917536ddec0f1b990100146163a5c5126893172605106372ad165490f2ef4d4c4bfd2acb9fe378442b8cc94664c1a2f49385681298ad913a327b22cfc25c0cbf17651eac7622ee7f029c16f0cf583175ebf53cce59f50352db7e117ff07bb44f5908f8e516df4f591e75dbe898583fa798a2aa3ac9cc557f7bbd254fe4fce668c5510a304ea06a41bb2fca0028b49027595b8ccf414bb1eeb38010d81894ee0bace44fe4c70a8dc112e3345a124ba9828482670ddaf85582c768bb81a07bffcca9771da4fd2f079a24acb82fc78f952cdab3954ede77f1585be2ccce79957127d48accb5686f58e2e36682ec210633008fb8937bc088b62ec5ce0a1faaddbba1d89b8718bea8b364426b75a96eb682553c92ecb1aa89fdc9f39c6a27b290489b11e824810494c0c49d7ef1763b20f223596db626248d2526e5fb91fab81405f550eb584a10b78dc5f95d4f87d5db52376490c8bc51b3d4628bb9ec2f6a94f81fbee8be28c42a9580371dd336c0362e3090f5274e8016c7b20dcf69d35e201383868238bc1b6cdfac44f3dc37c7050b21863dd93450d92025ca21089a6e0237596b382a6d66cfcc645fb352b743f57942fc7fd5c2970507f8cdd18a348665475c1312c258f98b44831fb21c9fd184d0ed78fab06159515d342e604184b4824990c969ce630319b58c1a03b5a32a205485298b6d8cc8c1927285e3023238a1929f4c88c13e8242606a47984e606505c21c50f40e4fb4beb03258c3146181d2a95d921c6d831ee586a3202d924c1e64b0c682fbf0033989102cc60b5478bfaf7ebcb4c61e458418655d1bab625ea27a48c94fbbaccf4849bfb049acb629234dda0cb4c4edce0bec7fdafd741652627c65c7f8e313e119fc7f48640a8a2cf2acd47b343e0a51c3404f6c06e1cd4bf51a99ee4567e5143600430e9b2202d3ba40eb5684d9b2d7d4ef9425c514a7a65ece0571a3c0e2599568bfc86d13bc8fe425c577e8cdeb166452d67052692cf21e08d7f7a127035904bdb0207495b6192d853a6be0b893affabdfd3f9e3d106ae2394a977ebe32381ee550f84f5adfff829851e620db5ecab550c6371ad954fe5be48c4c1135f3ed596106f5d7d0a1ab8fd2dc4fa03fd2b546e55d4df80f6593deb91c03acf67f5aa4702e35c0dd4bff288fce85e658d74fd0c5ba1b3412202fa19c6d91462ea65d47ed5bab4db9471e046f9a309abe77ef5dc6b9e4f8f94cffa1ff259dff32cedab35c27aed8db45ef6bcce2381b9e7d3637d24e05fff877ffd9eafd688961efb63be8e35527fbe119df74702eb0e7284f5f575bc235a7eb06c0e7ba4655d77b5ea194b6ad73cddb9feb543a94ead2d6b8bbaf34af03101feea570f1fda951581d06521beeaa1d38452be71e291baecb9e4d41713f985ef82156051c8a929702017698e1cce2d3d50a131764a80e91263b8011549392852f776cce748706753cf137a9fcd1aa1adcdb99a7c147a0817f1eb71ac9a739369de10f64f084c52ed90b6885fea33aa9aa0971ee03cc156c0639e68e2f4f30324be7fec8fef5b1224585b8e088836b6200c0d3218e7500c1ca828d80a1a42304970f3a36a053ed6a883cd37725812f94b280cb201fc59f5c361d32e818105931f61f1e10e1fd2321bc0bf2822894c749370db9d3d67cfadf4607c9ef3465184441c36814e31a94bec26dc5a71fb639fb9fdd0ae7112a2c6ff8474dceaa2f2a54e6edc2881e612e0325312606ea4ed5ee724be5aba7b7b4de7735efc8e9d0c01cfc50e05ac23ba705d22c96f2a9a942d7090fc28aa7f4b29f81b0826cda63210420821b6b4b6b4b6b4846809d1526a01d14a72f7ae1142197138d8b5ba5cff42391c5a56ec1115f0e43d982835810863950f79d443a9f716ba77d9bf07b11cf5104cdaacd8ac547f07f090c77a30117c9715f58c7bec7b0a03f94f4b6bb59465bd3a6d30cde6412b58841264d0503f2e7369a4bc0863d699697b0a0ff5681daef795eb0dc4f5e672bdbf5cf7ce7b506fd9ef55edf72ceb4d2a9797eec5705646662865611928e3207f5699da2d786fdedb66bff7f7587f54f3e9d27e03415725c174051a1ebd83bffaa592c048510fd19ef339f69e041180d7c8f5e1aef974295f08a6e1f8e76b2118e3f8674aa794f98a43588604a69a12f5e3a51e348a543ba694dc0ea18ef0652f71fc23fd47c25873d831ca18678caac89aa551d503deae078dabc92f8af2a5ad63baddbd0cc72a58e16586262823644e33509921c94b155e6411c71721ac224b84452ff78b6e2e1562ae7799890aa44bc5d11447578e172a6697890a37b1a37ace853ebb90674c51a97c2dfbbe88fc0b51f08fdf33048cd695a47e4278942aecc240f0979a8c9c8e20172a32a488e5c219170e821fa3a97e90cb851fdd83595e4d04820f2fdb28eb5153651d7591a8547aa89f9e7ac865315994cc08cab51838ef8610424e5d87104228c30b4a9da46297bf63a4d5d573a6f6288ad635c5bd232ff8cb37325fda691946a3ca87c35c639c721023478e2c745960788305f8aff872f943266bfff1534a29a57688d68253fd05ed09fa5e49813c01c98596ed90f91fec97cf1ef4bee686768866aff47fec22104309c38d9f1a3c30970180bcfb3378aeebaa344db5a3fbeee9779619e8d39efb7cdccdd2f99a37e4ca6442614a68034125fe4a9428f1d664105ebf549d1f527d4c7dfc20715bb1b6a8a37ad6af5a5f9f5b7d915b3f1244802fab5aa1f88a5116a487b8c69565595591cbfa9497fa984a49e8a55e65614859d7b11f5fa9e7dcfb90c454acf6ab37a6ece7e3b29434544d40d5f42177b987de473b0f3ee7411accad2ebea07508b714a4f4e153303d4872218494c2178a2fb92171ac02131a2750a0668805210512942e509c92aaf064e9f91e6ba487861535854ee78b220d2e75e75b9f9231a7fa6022bfac874c54df27c39d2f8a3e37d4ef1a89fbebfaf7c4f88fdef9aa8fe1e570499e9d6faff59f8a87c7169977e75dc563e777543b3646252f26451d38087e0c266a102c1a50407c2c3a644142da410726f2e9873196749412e3110d2fea176f4c8a3858b686cb159dc457962baaa851929d530f18b21fff951dd2cf23deb64f6ff4eb75a12ac6aec79ea29c664d504bb2d892511395a7a517f2eeee8f97babbfbf6e890be296f080829be1ff7dd773ba83d01bc5c91d93626c1a252048a11fb32e5b650cf175e78b86d3f96919023be9afbc2ffe1e53a8943cc848c99d628c524374f7fe11a32f7e3a80b9b6003a7f4a48803760d2efc347e4f80c209874f5103be88a5dbf604a7399561dce499a18bd8fd6a9ca88730fe12477c31e78b380e21cc1d06fdc150c304c610847599344ea04a5a9ac32d8f571510f8460a308351ebe3fa06ead1a2ba6ef4ebb504753f768adb12f513bacd69d1dddddddddd352d4955aa13c67852e3c3f8113a141a3a373ec3d48d517c5e7eee18064c52229b730038c42c04754428ae2438cc477461c778524788dfdf23c4177c2497839d158e1c85e22be620868103c72ac0c1126529ca531190f919c9fddae73fa73183c8a543c67fdbfd8febd1c1f39feab688ea7f3b97795644aa193e356c80f0369e99218410aae466a3860f0df8333c978cd4851fa34775e1f3c0df69e95cf895b58a71610745e0e0a73e787a02cb898a75402750842d0575506d29ce22ed6eeab994f5d143dfef94c3694b71d00cf809003200d0531f3dd1091238813a7cd09913ea839dba066c9141021aa17e0ff56806b05855e2cb8883a21aa82393cb8024b7a30bfc8a546294aa542187f0fceaef1e27d0323d38a87b887655a94acad1e7871e8c51181b62a3f4735521ea079ba0137c6aea5195aa16c4a1c06e32750614b5b352e973df348bc5622eee88a52ad5e60652c587b14a67397085513f9661692c58b0c02032d9073808041c278adb5adcfec9d2c1af1c9488c80e187b1d4cb7080e1c8258a08e950cf005f8c5ed9fc1e587926891ef62d80740c043d00b2d3a89ca0c0b9ca5ac112dd6080d2a5674718ac56029cb97089c55a51a2f11bff0ce70523fd8346ba2947a5a5c736a728262995dd7a976c45cb831268a0f91688a35c5208cc1260eba3588da347324e92e226093138e7fbe8f3cf54d9dc1261cabb0064d92182e1d2362e343f06e14a1b71f8845e8e7a2dbb02f0eeae7dcda10acbba5341e598f61af1eb2dfef011eb2b6c62a7d89b87721589aaa4054a7528d62f1284a698248f0108c3571a7c4281cd4910608d4dfc39417c41b623c727b049198c80a0fc13733880467106982f081f71d97dae84b978c183d3c3b3aadca5aa9be2174e8d22523460fcf8e4eabb256aa8e4b6d549b207ce07d05a2caebb2a17e745341240eb23243851f674dd0c6434a6b8d1e9c45c1a8d90c251092f9db1089836601f29f8976682fa511d5b4d6340b95e24b6e6120f9441c81b9f291b8f2933848aec9a27e30ea6114ad51d048ca8f59228eef8525e2802f1f1ac994fd6843c8b057f3b5bed3c2280e922fffc5aa2ca1caaacf64f54a542b95eaeb1093d62b59b5eaaf589545bf3eebebaf5e7e8f14be179a2babc7f2680369bfca21f4af7929eb9aa6699aa669946a7352a40e078e7f62e45aeb524ed41b94f3fe61d9527ad72bc8a9f13f864ad9edc6545485ff8a4272aac2b8511485e00bc5d79cbfcaa122b97ce7eb46c4d10e80f723e1c61b37fedc18a3cf8f2bb85a0959ba5015976ee70989aff92fe6570b09bd5e5013ae105ff35d1107ec9fff3f9c0a726cd5b9c2649a33278ca3db451cfcb493b498d281e3ef873dbadb13e24b7a0f36f0259d0e6020f9525a316d8f16933a7bc2f18f3b3b3b73d1e3f4399dc49707e921c88481fca340d9608583526a52692a74a2d4c9a993c86e901e0ac240f0a1681413d62b59b1562bd633e95e09d771dcb3debfaabaee59cfa4be125565bd6af52ccbc40553b2d2a23d4bf542629ec4dc47b8ce84c594fb91e0d1069a9d379ff352f3b59fdaa4db66e9d4b49faf4ded04289a66e49c38fe99e3e6faffed9ff86aa186420d553cfebab51c1cc1a11d21be5ae8653fbe9a5ea9f1bf8fad464a2e4ec0d1f6b4f070693dbedc3284b90a9e7e3184aa06ac514f6ebfd328d9edefbce0725d506e7f8d88e35580198cc21d64f939b7b904e5304876fd5b890e2367ce39f967075eceb836bad30514555c97166338566107556a98498901d1c58c86a31abeac926e3f7d7757760925f9515217f814655f947d51961465494b4ff189c6b617ea1779d019694a4b2aa8dbafead243dc11ecf27546ddf475465f67b4c93a6ee956a7fa6d5ed78483faa1d7316111da8865a67edcd151bf95dcd116060e750c04218e8923c6276e53b9f0f27310f41f1e5cd82a69b3c2b10a71bc4499d1102382e70655bbccc48519a3ba5d668223460d174dc83003bd6b8ff189397a1ca37b74f709239686dd2ddd5d93534a29654bd92d9fd9a5740a03e8ed11be81be0407bddb5b0c149f8787846a50e13ac089a21143160018d5af3e17463f66aa13daa584a726eea10a474c0966a2e02c6114051c289e18c1b9c249096796e06c6154421458785c356498a11c0e3b3c941133a68c99cb5343655d662a938358992e649891527a9ceaaa33a2c02960530e15426f185bba30a2a9f12b0f353e8d314956884db0a65b1463dba0a566a7666bf27d4c70f63674a67adb280d3da79c451c44b8825007e5c686b18646adda91924084cde7a4bf8f09cd82731f7f89b371e686d623b804bd4011e2432f1a1495195247cdb9312a4e7c452f50477cc32270c141f13f68c45da1873a765c5da10f5540208c5a232b8069b69f1a28be4f940aff04bf43b807575ae88ed448bca7131c9118bbfc29560fb43f15c387faeaa123ff397a08c28e68f9b17dff11a16b7d9829103953cf5118d7b455138030cd87bbffa1fdf6aa87f78816ee8f6caffd112d2afbc39ffe11edb76fcf87ad4f677f6c95b33fe8fb11b73e3ca6fa703e9cf591c0f6da03d95eb347b4fce8a77fc47f7b20b49f7e2ac53f29cb023bf9c0b10a4c6fb01c3d1db9d902675e3e8fdedefef293f673cb826b537ec3f9124ecb824b282194125ae8c30eb0bf23845e34eda5a6b18d9a36e76bde9473ca1764cb7e337377f7e83d88dd0d695f23720ecd0669a0f894a7d670fdd42bf366ad8397c3ca268c2dbab832cc0e2943fdea163710c095d48f70775f25895184bbd9c14f6182498b1c30c1b4851033aefc4db543bea480c2f2c6c887a3275a892f53a86a876c3363e2fa53375fae7fa7d5272f3cb4b1c1752fdce592b293f2737c20c592d00f293066ac4be88546886cbc5c872a19d6b8f942b6a68b255f1cad01e30918466c8ca678f1c44607275e60d1c1d352acbd892719a0533e222a769d078726aeb82e4a795c3596a2d871aadc65a63553eef73b3dac79328335b1a89fd78dff8132badf0b6dc13113c98655380ec2291f047f45f854d3dc6373198e7318a9d6b15fdddddeee1d6912e9bda4bbb7776cefd8ee71f3f7f68ecdec7138e937b57564071a0010cf53ed70200b4020b6f7ba335a90a55d7f7600658ec5c2cb3754ebc2c4b5489a609a9051b2a34d5313466e62589c69b2c34d920b2a46b338dab448c269071cd4d565262719dcafee30397509c2c98b0e1427315918999101164aa6a85354863b609cde314a19717084318710544518cb5407e3e57296a5e002205e200594580d569250c3032d02e148b274697343155d78f08416485cff222677cb82cd13305cacd9824b9c6ec28206a9c68c1a31548851f22426491556bf7c873afce5435db61f74eb9a6627f3f538a10e288f5d7ce548a25676ea971575d1e5a2b1074764014317a81e9c48a3830d7c8e92264f105185155c14114614d3183340a8697259739490d083110c824043859297231c0612ca5431058a0b6090050bc414e500e58b21c07049620aa615c8beb0f206894d9a168401032533c20a9c16e40005ccc1284121c91072decc200311582c2d8088355aba802206599a967c499224849517cebc30064908239a30221667cd120c45281191839319e0cc40cb9c228a58c2514b2df450ed59edf88838b497af81157a88a352f2d8efb563bf7f17cb7eb5cad785566ea9ee6ddb36df9e727b9ad6326a889e0a3848fed728601164a034a8544e16453dc910d500004800e314000020100a0704e270482816934bd3f80114000d76944680621ac9d320c86118848c31041800080000000000668866c60a2540d400b911a09010e14ca3f0dc2ec90eeeb7abc59ca6d730daa4327f0d8c47ad657d41368b41bf52da4811cd0d1a3825fc80ef1587a392add8fbd576caf27e69c1a9cc03d0526dd41aaa4bc6e2d5bd332c10cb0f38fbc533c90c1403f7530fd8df762d2bf209de2c46600257657fe3b2bb98d63cfad643ca5b79aae7750b270429b189e4df12a9d2f0f294f9c3a7d171037a56345e45a97ff190f9de501fa114ce938c294206e18d54b1724c008695d96fe20b8e5ee65647ed37a6f463a1ca2fc382ad260423c8f6fd590c17ef1276acf6667b13bc5f688d77a873db946338e8883dae7b7caeb27746a1c876f3c8e1da3da0c3257f89eaa22e3c6dbf24c34634a2ca92fc7cb78e5a4b724e708844f977cc12fcc5a831fa3788bd4ec0499c60a0a9291dc93c6d4d92175677dcb09abfd03dc5e2abfab2ee7a75870cde20b0fdfd621fb3531bc95c6ecc91715028993c422c5d48857eaf6c4179ddd390af53cab72026bbdd323478eb68993311fbc640341037aa8e7acaa3669c822bb3a0c4196f6ae4c3559c3f07968082e0fa69771be05864720c8ba59a1a4260ff55ded414b31abe04332c5d2539cc2fb9e05e26196dd5a150cdc442a037aebe1e4121d8660a46140ce6429584e9e45702457bd76cf5b13f4bf35288e71094bf2a717d874d2000ae7a1af84974ef858bde6067bbf9035c51315a7b0545d2c299278c99902c4f28031de2de5d8a38981903a4e2da1e5684895858501e492207ccf8f259ef89986a2e37d17a05cfa6306501c997142b0ae4489eb6c28e70c269824714217c865bb8876aa94727ecec404b175cbf83be23594747df7dbcd44e08d6240fd6696c1290b9382a74ddb3846c17cacab09ca8f2f29efe45698656bc8d9c81d358b3714a01259550a498746d95d72eee6e7a1653c99e8042ffb2615968d5ba9763c5a9c6758191b89f2c74c06a91d6a5fab93604485cfa68f793c7478630c03466d9eea3602c98c5c7469b241869287965fbaac2f7e3ff0ac03043f844da01e4905b0316e7d0b53abc82160da3bec8cc542d23a16e80cfb892226cb840b4ab50c1fb7b45a075233141ba632e4197412a3c834b0942aaea33da68755e52a1c5804d802d04459b1ed3c88ea2249047f38af8781f708a0301455d4e5e8708815d209aefcc5a2f897a465890ec4f3a1e43f08868f198ba9984e7a3cf19dbfad16d36cf6fa2cdaeae7abd497efcc93ed35d40aceabb80bb61f6124884449a2cbf4b34b35339ccc0305128502c16ce0e84f731c907ec9ba9c36c746f899266ef0135d19c7dc32ecb02551fe1b95745291e426e8ed74d7cb9f91ef9d3a992a4144e59f1e3f48c8b07cc156b6a4c4beeae3853c3ac6e723324613a9bccb0f60dd383195501522d04a760f53527e214507e0c281fe7d04acf9c0251e56be4c1649e51acbc8a8a05a248c5acc329038fb7278ed72a1aa059032a0bb9e08c7ff9e0673d3af5f1efd2ee541eec483350e821d4e1ee92dd5ccbb0076b3123e022b1ec824d2ca0ec994563f1b912a862515baeee1584bdddd0242f44db1809c5de45375a3845580ba8f42108b2aa3e5c6ceb0eb0298d448fd7a92bbd619836dbdaee912ed64fdabb9c60fe566e508d1a5175c7ebb8a4016cf0b5786cc78b0569b92ab85eed8ed7345afd9cd084373af915613ea6b380802feb11a558db827f8674dac00b166285959210c28b7b2d3eda55943524bd59d083d363be71890721e6a334ecd3363bcb178065483c15e69437a9efd43d5c5cb520a8a2f1e8c20fd0260a969000c6da10792abd328d438415855f17d512cd390199f681cc011e4b359fe7dd3e3c1f72b3c03dc455822a6a437b71601bef601a03e8046bfc256d7bd49c1f29cdaabc55fae28b226cba68522e747ed28235bd1fead54864b3e51cedf33f22714246a421545b501f6917cf20e28b524741a3ecbc4a48aa6a44fdcd75bbfd600f2eca2aa0f1c476567d6798b848847399eda51693bc265a025bdc0bb1527e05ed3af41dfc8a0ca49d2b4e994906903cc1972a6e50a9cdf900f8276a474db3beb89d436380c13b725edc97702b5a162dfd1857c193506ed97f062a6dc76ef2e1420b68d0555e1f2cd0ce3453042355b4e3208eb60790f3539b77b672c23bc1482e644205e8a6c0375ce09d97b491fbd4b56d5304b0c49ac80fceef6e64fd8b53236cf2f0bca4db8b0a75d1f676943c2f13b92c28ce197a4028a80deb943fb5adefebe7ee4cd1669bdf636935d562eea33a1abf1b6c9c4696d9b36cbc9e4a35e6087baf91ca347bf3eaf966a276855b4551f8f89c31ea46418fb47ffbd7c3e568fc610bf7f0a6c4737fcb2104adcecc11aeceb17728a8af3f89f4e5c01a97702f83ef143c72b8fe88b18035ad603c20fc0180e992e645b008436162a5b16fbfcbe6d55c2f2a15f6e4325f1300cee0aee52a600db2067824e99167a36ad0386718deda7f533035c1ad01b783eb3619b1825b2f42b4c321decd3a2bc8927e0661ed30a88da2ad8261b7761cce6acc64ddf804ef18681d4ab420e8bc9ec90c2bc2f0562d4115db4ba456f249d4dcf3089f1f14234424044a00712b5845f3ff3460f18ba79bac344727a4982ad90d3d66b41224edb4c334f86a3b319d2e8fb0181836553dd7e7cd09bc7c55eb90547aaaa386ebd25adb627109c7eea9e3b1cf59fc7bf640cbeeda2bcf211acb1eb460f66a01e02d0e444ae42cbb614605f731f04164a0981f7036dad48d2b65a946324e33898654cd04b81b70e4c8676db0f5d1294c4bf9fb3a68dece799e21f195734566b17a5e121d79c96f24993d6b037a4731a4ccc6d437076ccea553f073b457022007ec62a600532ec6e8605a77bbb310044ec907046b31790aa5b1c2adc36e0d1000598a3e51ca89081f1b79f319b36a8317a5a0587fa8171442582ecc8395598fb196570dc9c791a428c5bddc3fd8bf9dc4126531737fa8363de9cf31eb7ebd98c2798b883d5ae676f14039c14c840e309f6dc3797efb122214e9bcca7d2422a94432b72f70397251723703c83b8ffe4991ab901ebd8e681ee8e13e6167a67d3613e8871c3b736a7a4d692cb39fd28c663403058779c2556545de89fa93e74eadc3e3871a5e0c97f218a0d3a5ceec5a32ae5fd554587d3456a1f82864c53f8e7264b6cb13c2eba7f8da342685486ae5040e0289e4a615a8aece0c7a30502b416a7709b47f09f935cf14ffa6267639153a183e6e5a130a9e044634f4355702a8dcaec7892e3879d1e6219aca462bb3fbafe796c13625b9b8c2ac9b540b72dea36a179744fd2471a7bf9214ba31a5f7086b648524442b475112347d496ffd802b519aa383af39d22d152734b1863b04e762ef31c296ddf2a128875e47b823f89930888c4cec6e7bfdba61e905564e8f9775774ed14dcf504e7b45e3caaa47cf331a4d23e9e47132bf3247025def4ed7e893fa81ce4b829d93ba5a91fa9fb7b76eba830ca7c57e5a321b70c3ec54aa6450faa7e67d9de245e403730aed2bbf13071e8c274e8b8cc841044611344a2f691018800be558190e240b9f1327423d6c6312e4741f65d216380be1977a9770b86f4440ab0016b712688e86ad8434cc865becc32796df746016bf86a6579565ac0de0563611a6c6330f32eb58ea9e08124b3a735f52a63d884ce765b535fc1ed346db4423f871439cae0e2f08f6a0c8411f0870d22561303462ff039181cc8e1422990facbc043b0d162e2b93a5fe1b11587935f1aae8a064cc0f61a9ccfbf464feeeb381f3d431d2f701545ed36105d881bd1e31e4c382acdf037583efb005380944154e10551184efb8d012acb3a28c1b3b4c0be80fa42316ff05eea81f417656cccb7d98288d23ec4cbc6152a428a3db8819fc87407f302e122e904ba44f252acbce8fe3e2b04314fe8433d9f4eb85a11308fa665eeeaf622d921e32732622545e10f6a45dfe537f5fd65c5946a681177795384632365d946f23bb44c7cce981a0fe15e349d570951dc0f19c4c1c39e466168dbc8d5db64c6145c37ae47473c801426fac64375c853676f7836c8ceafcc23c5d27fb04d589e4a78823c19330b62ccf36192b189f7798d37da679b0f6d89f8bc19d4afc9d19466bd57e16628bdaeb64057a587d5cf57612b322192524d30a0d380ed780b4cb3f64079c230c4e0cead15ed43745928442e71ce74d7e20ee79ecc9ce58c72e65e67ec268adcd0f415bcddec7419b22285cd3c88d9e1241af08346164ded05e2194f252c048b2bdd05aeea063df85629f653a856032495997819e9ac7103d85851dc0a4c3b66c32bce5957b1d9da920e14c767984554081e3273746d96937a6b322c80aaebef85b3beced613eaa8309eb70a5f28e63e2c77bb69c9618f9fa86d21d1f4d83be7c1d5ffafee0706d72c20dba84bee82b21607f98672e62d348d06a1ddf6264dc42df137bcb12cd19d138c8fe3fdb045b8c842935b2fa8e635bc6d6263ad7b76dc31a208fec4a2868d0c144c0e1e4bd51c24d817d3dacde80670c23259c54784a9ab654be6ea431756c7f009c4f826bac323fc366bd790fc0c78f6c90df32f19f8fcd965fc3b9c38ad6dd4d6264cb04a9d2c456e5f20fc2ec508fb7d4e17f88a9f4a609a2dab5546844401c19684ce2ac47a54d132873b760d1d0f4661318bb61bc07c7d1a6530d219a26d0bdb794d96a9b588792c8ab96aa7d138d61467e0425bd2a61dac7091d83238fb4e8235f91de3bd0346a10a0360d33246817fae5c3f1818def0709494dccae81ca17303a3a689b108f4e1c6aad4d2da8f2ecd642431f5a513bf724c83ba94e2062de5863c47412a269c1e402fa4e11a2564e84f8f04674c14f02b7d87a0d5995932aca37bb2ee54665e3281b7043ba7169954927f9c042e89bb8adfab543139c60d06af5f93a6934b6025e559e4081c37b550cc167d81a613b505e885b1630facf64f8d5dd0ffacdca8efdaa55221370086725597a91b316336b0738082c76c90894554e14b443cd29201b75fe4be441454fc13b4dc80864f87e924b45b0741975ba4a2b70c5d00020711194caa7b253771d54d02d1f75d710bff4901bfea9161a45db47574c8a5d63c803d50f2ddcf9238de233706f670be248514e9509f62148fd75eba872ea333c24c0ed7379f4d3f0f7bef7f2b59aac8764eba8ddebc6630a6c2ec4e2d12b1dcf8dd989cce02c85031129060734ff6d75b06bc17630ad3ff8d6d439d9fbbfaf1719144981e9fefb14e3d5f541d33b0bec08986e7e311eec17a9139c8aaa4f3809af798f47341198cc33f984d3cc7021fa17d2e56e55c12ea29a4f5971793e12c96950da6320492f4f2c3fd5609c3476d2032031f51d9b5e53e1a13508007069ab96b3436f26bfc73e8b576956924697760892b4bb202770f7ab60c73c01a34545b43e82d73d9f9e74310b6b1ffd79b3f344084329ee206dd347f49c35ad14885d8f4234ecc9b9893afb82d0543b4f43c4d6c23eae83a6ce706c6d729bb3c8f18c2e2576af855b6b10b2a4e53b15a020d521f6a22e257fc99b704e49b31d11d1075221d6e6c1f03f0bc2e26a526b6620cf3922ad7c037dd0103b724423ce0a0a29d0fe900fd40ca4343fff06d9610e535adbd43ad1fd457d1540b56d475f939b2753c0fc7b7031ca1be4ad347aa8af374af0a03e98a998276c1b7a7b2ea7940333fd105cc9d3eefe6b1c19110f3502e84a7a578da42d58deed9198d4059c920a16ab10323fe7a46fbdf1ae58073cc00a99224365c34e94cb9412052cafa2a8e99292a54e5fdfb7fcb72ecb52b70d6b1cae5e90e9798ae8587e4a8bf88593385c3b1ce48e4871e0b1265957d2e64094352f8909e38ebb4af225a71d2ecbfb851055e9f4d4f2d45f2c5fbea5792dcacb2e84ec92f182098a8ce6827ad6b117e4333f7ef7f522595760085f58919fc08f31b767f21771d7f43e36fc969d1fe0975b15921ac74971e6100a00d41427703c650948164fd0309e26f32b991548386f459adc8546b0af400f8c7566109ecf63790155e416f15f8c0d42d005dd4751bc94334b47d29e4afdd1db6b8a6f9985574e540903093e9e6b469ffa237dba784090e16c2f5ca5d4f028be44ac30c3509c44b496a540e9127a0cecd97bd5bde3f962d65e2a4c9eb07669b3a5c88a503a124e21a05d3c415c2cccb8783546010db0b90cfe360979aa2a321c043a5f9db4a714137d831ac718b73b00ee551b8536663b7c44ccdf08fd70981b6a85cc534544866409bcb5270bf64f46389e0fbf2f2307760cba99efece79ea63098b2922ad18dd80d492e398f53789eb30f9e0e9e57c86096bdc92bcda944bbc0f7ba629c48116bdbeee34ea0edce740d5ae43bb8b27cd4d8c155a1847e7b2b54776ea53238a3150f9a56855ab095681a99cf1ba004f2fb183199654626ebd7f64f825b54a418903434be62726c5d0cf361cc764d25ca1b9dc3b16653e6f5947236968c0ef59e32b12bcf021e71b5796d9dd400a9b9d801351e81462b849746947501aa8115748f200f566048e0a0ceb8261da1aaadd4ca1d28af017fb357635d6d5c3573c0907da47b192e374fcb7ff2a953d7b955e923f6e81860be4a6ba2c013bfb553f9f4eb7182ef1a1ab941d31837e2c542f20f5b8e3da29b7e0f4bc128096553d71420b6b47f02afeaeb49db081a90f4c4b7f925fa9b1f6488a86514bb1bcde213450cd646722a4a93593aa57d4e65935234704aac54e92a79a4e737662b2d549ef4e876ea6431c12c278da1b42801317e01c50547566c5216acc7645106c6542905b361c3dd742a2308b2b71bfccc61069b53cbf4bf2838fe6f5f53ad305105c354a34c40a60eab150712265d50fc41b18975960f3b80465f129b63d04bf88e14a12a01c1670d7ed953b6d5200fdd66bf0bf5f614221c0457c712afb92ccd88c47228ba0f1099e09d0093a8ec95428adac9924239e710782f592b7f2061923dcb5d1277555b2199e2f64e0c96b2b2a5974f33e86361c723efe3628953973802ff396bbc2341ae729bbdb92b539a12984b994d809a4181802ece6d929ce2919785536688694c65647fa9cc58cc43d722ed3949253b179ada52494a16b059d245fcbfa96a4b0bdb3d7b0093b61ae4afe0499e459893bbc262587a65db3ecde387da6d9106c853b7422c6d2e00525caa0bd5a83c4223c5fe34a5f8a14162cf3ab52effe048f38e944e5d5c39bf0b7fd5e1240ef4b7bbf50a003e2dc950278a936a33f792e48b2df721e3430b6bdb422fe148b719f0f223617e0ea222e0c5efbd03586091a9278db24156def9e1e77f3f2648646eb334da0763c71d0d80ef3ef83ac4562d01a4011be53d31e2bc1216b0d82a589f4fc38d16d869e7f5b55fff5aba9133770bea8a79a4e8efa09de1d5e4dea1942a471c20beb23b05bf3ca1e6501109f7269b060b7dcf1feb102d36d3a830654a00b4496a8baf1bea40b1d6cf5444ce4a92368f124c5b0890c8d6d00d0a0171bc1e02aaaca9c492f60351000dd3101015415045137809681111cbbcdc768f2ddd1928c31a11bf5458615dcfb554762fc04709b6958a5fd231952abac012da7143d26a237ea837c010130986486bda004312a44ee9fccaaf86978d8311ab76b250d602ebde3617b702e5262d32c8d30699fedf39970781dbb8340880606805eee4c3352920bb1ba1b86456ee3de675891ce824b1f18a71802a4ec4aba2711d3699237da42dd1514566d877e17c380658615c852b80e5050327d332f0866350f1a1d2d347f5247af220535187221b1b6b10e8414e7ceb048af8b774885a17b67d1098ab7e1ca1045aedc200fe1406fc5e1f9e31f909110239e7ed6a829412c8af966defbf003046179be7fd2bae10110f124ba1e59c168659ba20129ad9f64a2c373fd5033b3fd60d1e11b64a23490a8d8a0e9389c38168ca5fc698848facd2169e8175a15bfa1a302392933cf9e84e7d372fe53c885390dc2e0a2ee95115110f7f4cba835f92618f828675e6f16f8eac799a24ae6a34030fdd482f502f61210fc33022681c6b561765a406bab3a6942ce06c738b70ece674c417431d2e4749eae7b9c34f105e3739a771b2d610579eca7331ab73ac4bbe764d0b2f9b865421cc9c8c59cdff61af47062a28f51a81a6457cdbe5803e7f1eb85d659b6b2edef80bd78928b48e63f002afe9c675c30496b344ee3b0ebaebcc39e286c08842483c019034134a6fe98c0380a90ebfa6fbf1e4a4b59bc0b46c2ff95af9905b3419fae3221d077b619c7fa659a092af128c480da65f16fe46ba667650e8f528bee3fead68160082ab6ebefaa92a5958274d4b5a70b1f2e4c48cc89c2553ff70961e3696e6b19da3883c59c6cefe842e2b74d49be628bf8c194c21321e7ff18c8279ecc9728153c83905b5fd1ac2f7defda8ea73c8499651f53fcc3e95fda6626634048d0fab02a1ba24a5d08a1edb838f4f1d8b36caf9c28e99839e6f1aa086fe9b2624014b38d10f1af74cccc79295e78509f4f2c02d6dce08fa42faacb0ad9af7ba763b3b7d6cf5382c6b66c7602d5687019422f36b9fa5602782b49cd97a5ae0eb8330f7730c606f8c207dca4ddf3b6fc62a39c7b582aab90a57ea18d6651edb66168f875a0e88fb26d67e57668e212ee9a93b36a681f3650c7cceab53826c3bf7a2c2e2a871cccb8b98d479773c4ae80d2bce17a12ab099d39391e40bcf0f55cd36f69ec50cb1a439f29d0e3bae0eed0c268a3455cf06c1b76b9f9bd28206fc2c2b77b5c747db9711c58eaf8c75dae776c78fa37c6c288eb773aa07d2bad84c48ebfe86d752131f45f2696604e601f21d969dc8035a003bdf713d2ca038ef18dc5d7ee48062c6e48e496abc9e6263b3947e144027307ecb8f8770ce4fb1a426086fdb532eaf0e446d489869b25b505457cabd0c2b09b125dd6d66075b9b05dfa4d50e28129a068f253fdb6927fa039baa085018e3bcc5a99591d84b8b356ac91669bc863e700fa3f3e6a1fb8da9d862a8092191333d4fc205f6e7a0f4e75af2ff39e86ae74217c2b2bda5c09551e5400f8859c47c2eff077f8b7bf1c4bf641b0e6cd7686038409078d06bd6cad3ed09f7a2da3ae22c48922db3f2c044c15ad19a2a6058006af004071d61efeb645535cd1e77eed23468e19943e653e6203b5150df2377b13dbe55e7204b15b620649e6186ad4d89dae8e03738e492e0f73775bb065476b66d9f96fad22f222c6da6a0501b40459a392d7000f56491ef7f190b864235f3adf0adfa4d8940bbf21e983f9184b8c00e8e695b662382b82a54b1e46422a1aa07b809a48a3adbac1fea63b2386dfaa188ccc84120f87b949d90538ded6e8b88ce468fcb2664ab469f0dc2b6f6d55d358f3653f7c3ba9bb284b727041124e2c776a32c484df28a5b1b41a7076da51c9f821e84af6fecd1b41383a4e1fac0af15b139fdfbcb149943049f098f2ce9040518c5a61b787efa85aa0133785b56768443682576f9181542c4d448f485fec24a054439561d22091d581a57b8fd2c685b2a8124aec82ad99e0b0434098d2e7cc9fc5199d698411bc614e5bee77891e3c7ea7594fcfde6452f2974f61052206a00410d7d9f473497446330d297984a38a4de3e8c88b5b17840d4b7089c4aeea55ab35ba2fca361f32b1e68ff068136de907dccda9b38df43cde6e985239a8e71d085d6f6f8396d14261bda1eab2e729e02ff7669d30ed9a9d29da9c0c5ca5c4e3d6d052d3385887229b298fb307fe12495b8f84e1e08ae8edf8db3bcebad52b59e62adeacc3c6db29d12df6a6e2da0818d1d00db0001d52b0ed726318fbb6af00f80a90a89631852bc81a4639ca7edae3022f6ad108f8ac7ce3e8ce9b73d36c02d325fe3f3aabaefab916009a212ba7c844c309d636f2aef20f08cf000aa61bd1547b728c87fe76541a2d1ac48e270c9b06d80b75945f9575b3dcd68f0df257a7a31be52fdd51fc227040763934931fcdad5f79aa733f2bdfc65f331cc2e9bdc59798da7cf821f2830a909466ada186275c5922e4f61725f2e17f9c3399ba2d8d8b29fce1f8a92c034723e4ce8d239ca0b35403367dccb73d10b7fd5a8d7d6c1934603f8658d6ca7640e0d96b75532af3fa3e160bfe14dde0ac84bfdcb080928bf1ec1bcdae6d484856eb5cdc7d29da24a32612c07e867faefabdc472f86f7ec92cfea306711a196e7dacb1d9e8bfca42a6771f1d38fbb1e4ae5d57b253347224f5bc2a2439ec90fcf307af40f10e541a205df0708ee819ac0b5160950e2616b128f000c5d51927472b341ae4eba876a20a56e734d92ab4e23878732f30e6e6dbf5c7a4965f05c2dc6032cbb816a9084af3af19d7c4544e457669f49a080eb0df0173a972877a02dbad04f704985f30873e0ab6880ec6c5ed6a0d9654d72c153215ebbb575ffcbf0d61a06a6c4d8533d585ddff8d6ea37dfd54dd9869068b4c9714eaf89b16588cbd64840aa106fbf8d1e8743a7d280c8c8b57db45782ee0c6fff5cdcda56332763a0c7a0b63b495e9bab8f76517a0ee34586ffc6d4f2590634d20957647c698852f843bc6244c7e0b54467cbfc11ccb191a91d6253943eb8487f5fc99c1558b4e16bb1b7a59355413d58035a6bc3d73deb89ede07014b18167c315c14af95ebbff1226316f4dd35e22677e1dec103d5248301f6346ed93d43f88499ca0a53abf31911f1f358f6487c777516eecbaf02e0cf9675a4d94e994484d42dd8eb9cc047785073d6e2cf4a6c85c8ea91bc93b48c7565bdf3c80c11bc9a5ceaabc91740bc52d6a5ba4c032b83d857508157823e95631867716cf8b5c0e48be487fb62e79089814177df2429b4770f959784279511a8831ce046c1a43e2d109ec69132730a2fb94732acbf4d79e2bdc995daa540dc1844c01de82d06e0084c855773dc6d246f503bdade592a114e9366127087aef0efd353b8e094d921cb239002ef5e38feca9b7b69da477a022cf49f9018c12582ce4e7d71dc9b92a76d69865b6d250f44cab63efd7edf2e82ae901bcf28b11e32a6ad850710ccc56cc79df6a0ba0b4699a2e4f27068776cd9e33b522790341920a9127bef71d9df1214e673fe0174f989109753cd13c0430362b0f4f04bb86a6b377b85a2147dcc3b44093ebe7ec59e7f2c23b281e04cc44093e1f1ce01195410d255c1a27b8f173b6bc77d47039cd81acd0cbee9a371e44950fbfc87254a00443dcea021a74d44efa1bb6f4c46322c49033006951753d429d589a7c240d98615209bba079843f4355c4764825faccef5b94f7813d20fd4cc8ba68afcbcbe44b369bf6a2bb0bcc7a34443aff0948d463b65104b8bfe8dd139028a22df9873c4871af6452d415acc3100bcb2e2e85756569a3e143af078d65165a790b7536d58b69f972045bbf31c8f82c1ba8f78fa594411709a3cb2d7e76e33f44b82750c738b324bd62d3b0d4c167daddfd89966bec12c808c9cc3257c9579d2d55a5d8e36f264b4780435d3a506f990f016c41aaa638707422994f0de48a9c9994410a198908f55fc402a9019f97776e5b9008a61e0f782255d5ce54013ea26f4f6ea5af73e64811513491a9885871d7ad8073cedab0320f81777a5ef58907b43039e9820753d95bb3907e34fb509e8c05ea18e9c8db8d738c3a99cc2ea105a4c0c38d01d086cfbae6c8cb8e53f057c9d883843c6cd273bd2329b9328445c3939b50773cbb46d0582acec6797f908ab281e0c533338386188fa517bffef21073f688bb263f3edd6e4f9405298e0573fd5b12d1c5454f44c3409cb2a591b1b4d919a1189591057e775b110193f73c0d3989be80b9530bda0ecae7461d1281558ae15558b0cfb8f8ec713618bcfbf4c21bab1cb94f57a988c01320ce1a4df54479ddbacc141295f4990d3fd9442e98ebcb44bf30a399af53348af23948d4530dd46279ca13daf2b19861ac776e0aaba72af34a0e57a755cf239e29ba0209f96bc9c36381ac37eb3fed557feb1bfd87e87596c7b3a33c4e45f8a062cbe064017cd631272938cbb08d62248772fb5b597b3c930ad0ef720a1bf50bbff98720e922224fd7694766273d2646d8a750183930fb216e485b9e501a3f7b192f5dc295715cc7453df4d0b7fdf1ded50363312816504bed9032c8fa64b58b20cba21a1692d838ebb10979043f8076ff54cc38c831c4f3b5d3a438538d16b0b44ac2809e3750706a0f90cfe5b03a485a4908b6b3f99e695eb1a1ffb3eecbd7681ec64b6fe5992e49194627f8bf784e14bc8b64806d14c09f48240f2ced5b9e348699e345c6cb68370f4b1b7e12c0ae27afe8a60c75e79872b0913329e0650b0d1f340f3818f68adcc86b38998b2df3265f1cbc413894bed73417356163b1e9a3f940a3b4785bc6dcac8545adf20072635776d1027f6c386123bbaafb4a21101790a3f415859c3c1ef7b63f15126ddadba67b05848ed91ee8bc0cda28e980ab8f46ac3891361f94a9c0a9e7cd08680e82eb5d6bf888e10e913fd3ec1ccc39cda18fe7106e0e732e6014cf5c9a8c8a336affef8c1d086bd18ef270098de5aa43f58935fd619c6312fa39ddfdd13d63b24f45ec05709fc7bbc483b3a6b55378b1e264dfe29e7cf76f72d8d2bdfbe574a74913c830c6c35301701b9ae9478bb9a4daa05f4248c9a4f095b80ea10236354f0a93711ab2cf2406d3aa43621de952a2de15257c8a0ff7c3f0782a722b73ea71568a61d896ecc1b67e7932cd81d0cd60db078bd59fd9cdf0fb245406de2308cb11837ff15ab140dea6ad0d93e67d5048e731b15f0550965b34887e2e468693ec8820a24d158d4a3c5cb19760f4b49969f226f32b329fbdd332c81a9ec2024101bc041c7f534a52e842b37fd6447b97b9d80fab2368cbed1c1c33572c5cfb3bcf78b6133095b06517b86e2c4f53ed3dcf6848cbf015df744f0015c95ca9547be94855870e87dc900b5c292de084c031ec4b80f1dfef5abd8f9c30d89a45913e38f7a5261e2666a30cbc9c3a19d856115149fc5dff3170eafb66d35c612b39dace05c4272ded444cd153966ac4ae33413d78827cc28295f9fd9b966aba40e2c53a9ce2b723744bbdeaa28cc87d30ee4fdcef44dd06e985bf84370e82228c60e927e21176a307ccb8a6ed5c59cf1a5d9e211b6ea0e251ad9243c05fd0a273a8302efb3e5280f9db31190016accd016fa10a0077927460e1179b7f68a54a0604462bd2876188ea613022aea3da2c5631ce8ab1ecef5f24ef7759c7d8d407b89abcc64601f51796bb28300d564df377063918b439b11482e0ae7e9be46d36ca6651216e3c8e9d628a665ff8d5f7bb60dbc45f419e47cd97b4979a416bc4899e2ae47a1493673a2d875e3d96c5d4d8b5b75d567fbfee03ca30ef1a4b9c85ae15d4c052060d1fbc4d3487b974ca4ff0666b7f06681176965e1688592a0e4ba9522c2dbb5936479a1d44da19bec5b30ab9b4c58c4f3a9f318a7695fdaf2fc2f9df60367f7acb7368ef7ef35bf7fac74e0fe402f198fe5068ffb338a997cff9d495f240cae64c12a3cf2fdc465ffd1f1745c5914d53d5cdc355577d5cf1519e285b4f113369cfcf1f5d47d95e085b28f6b99e654444c0516ccaa79e98969e6b1f630995d77273465ff794b4a1abfea1d9e1db2422b170c23c0f76334a9121bb3e98c793332aeb6999d903ebc10bdb6d894d68f6cf60b428da92a9ec23a729221286e616c6d31e6cb00a9609cf7d9601791f878354ede85e1e81a17f9f65d8606abd6ffce207bd3dda01cf32e02fd0989c34a91a6f193aef5946e953dc0de5e2409bd2f4daeccc1827660f5932e1ff271838d8884371abdc60275570ad9d6500bbb5d8981b6bc51f9ab50a5087f82f692d21cf2d1ebeac6cf2ee269c712f9167948d838c5b60a4a9d819f53f249eb43b07f3ba847042dead6d6c76a56d0d49bc3a12eaa9128c51208f53496e95dcba42e28ff8777119ad10692402d952f4ceb80912440ba9a7965f5b8bc3c9388577b90dd15a787b30baa8480b3f9dc209b608e8b796162d1c06b84534eecf483e857835084de9abe6335620e5ced4c46477d7a7f23ac60a377972e2e227de35cd79a79656b9abe1d8904860719e89d7a20c911a1cdd533df25bbb05646668f38b9ec0ba69a6fe4078ef1e7bae9054862ae4b648145d3e2d1e8c21699dbfd290e586d728d5402db4932f93789ea45caf6e7aa620ca841311f33233577da19ad1ac168961cf2c7dd3a7b8f9e88a964912079ce7ed821faee2201f2906d28f242229e0b0f2d8f430a9ceaca3ae98a9c03d72b7be076ca99c35f4c7261692117d5f8e3c3aba83de757ccd767ab09388d38405e262bc94201986a05526708089678d6706702085fb51a14d40e61f294b2a1c5020a17a409714e895f097c06536e319dc2869f11fff191bb083fe42daa4a9de62917cf2bd9d24caa9fbab3098b8faf0afe476072c89603ec28622b8ccc0f890f6f2602f5eeed87a3c409a055421c0c1e99814d28cf2541b962ef2f4ff9686c942f11e76f967f476196b47b5881acf4ae4ebf3a5bed345c0e73ab1ae5679db7096b242675b95fcc72da09d25620db6da871e4949b8d01acf001f479ffa407937429033507e289536f494585cf660de42b6d2c30858836ea13b3c3bd6b2fdf2ae74b9f9afa71c23756ee7d6e928c656ee1164195162636a2d33a4a35aa71b2c31c63d9fa3a0d3d4d4774201dce68e5634bd16f5957c4baf5be8b8dd2d855691cb5f7c557e254893f8e98cec8fe8ce85bf16bc56fe4bb956e727b5e647aa125b85bc2535222f502a0719c362084efe0d02340cb1995eaa5e360e50b8a5c4d8f22b61e3107948e9312ac2abcc20c0b50b5445a8f68dd8d313f9cf5c4011c3a9909997619655a465c092176b63c75c0480ced405eff1c99cc9f3844bb61d0a48eac4728f570e0e5a9016e6447697b15fce92ef74150f3320df2ad31a8711847e2194fa34bff6ba312ecabff1d09a1a0a702305fa8890c887eaa0d3b04bd0f139a91aeede64e1cfa3a1f26ff82cd6751a186614be61902e043da8996f647f086c836eb44d3c6111453d094ecf61a93e2a67917b392334e60e6be13ad7f22ac2abad0a66d1b853ea85eca7583982ca9f860c9f4f7520ac98cd29298c5d5d6cae3dd7e4f1be4cc75b2a832165821d103bb45d4f7726c2722bd5da449ffe9554454a535f2d05a302face6fd5c484736e45e546a92c5398b4a005d12a5db630ac92718f9e4be971ac5778654c013aeb39764fd233147d291e40f4d7588d0cf2c3c9e203e45b20380ad97f5c25b187b1441a4c864ba5fe0b5d81cda65a64e85210ebf1374f0ca283a624506394ba661dd4bac5e591edeee006c0240a70373a3e0a0d8f8e0208107e9828a66a5aa234df31ecf255e929bc4dce86077c1f4ceb9134e891bed95c61a29814b528d94ed71f6dca3ffd434288fa674610a2e1950c4a06d66918816e12203d5ae7091c4db2347d08c75ab82030a4cff8e1c9800bf996d1dfd8a2c2826c6cb0821e5d400977b3c4749092a20fe478e52b6091ffe128e7fd532291326581053e5a6c1741862b412166b3434e10ea03dc5f8d97c11ff39bd1affa40a92bc707296916607cf39bef3a64919bd97cc45f3080b0b67b6bdfc35042c6e1f53f740a60764381340131470b611ff81596c1748aa98ea5ea90cdd984fc90f7882253ffbd661d497274029e5453c116cf7b7df5ab28e7ddd1b288395090c5090072173ae05b6be66892530b4ad6e6c9ec10e7cef23d74d4b86546673213924cd9c874712cccd01919d6666ee468f54561c3caf9bdb0aeb34311a17fdef4cbcc31f4cf75e1cfbf4e1b2d77b4b91bb556f94fdf8c0bbf53ca46506bfb08f16094bba527bec143bda016a440a3a9f95458967caf86aec9e127adbd1919cd5ac402900901b3d1823d7bb1f56b2b15660b9dec5b1a7f6bde4b56eb9ce7a65c5d3bf9e3245623fb4c9e647d43890cccbad8dab4df326d1bee4d869d7ffbbc6d7a1709b64c18ece235c7bfade57a9b38b4d3573fc021376a4e67c108df43bd4debe1cb405b742842f03ff764cc2731f27e07624b224e6bd4fcc89ebfedd57a543443e7e6c101f5f94c450f7800f74f350d73da07e48a2656dd51490a0910e816e0783d904d738dce6a4a782f230849523af92bda405b08fedf9cb1bb19c2babf228d41df929340737773c022b3f85b01569821a0a2de2a0ccea6e0aa2655648fd8e90c224ab8f4f769628345e510db4ae41b34bd806a44d3c38334efbe2cf0c75b4d2495be7e5379778ea6b3cf49189594d08c18f3a495a6bf9e545f04b5a42e57428aefd16e714b12710290e068431769458fea0b0ab0eb6ac2ea6294664fa5901b9192feb4b3319d57b486af5ee7c2e415c3a65f8b8f28aa30e3d896b344163397ba3bb35d26f96a8995c92bc1898e1dcdd801f11c07644d22adee916ec9f1513ca374631c75a33a3e597a9a5388c79524176ef33bbfb9e206867e76656d45a4973c6779435a5ce2fb5d9da2e1a88b2d2de4796a22956242d4f06982e1976c26ee873478b46447b42b0f23d1da73b664998bde1a4e56121b281ac790d61815bd9788c7c382e38a67a0bf1337ae51b44b9c1fe01a9eb37296f843be4b80eebb3c8d6fc58eeedb53eafd61f865428000df9fde010facb3e2eaa08dab33ea5b6243f7fcf7baafecb1736337953933beb5fbeaca3c2639a622ff68608fc09a4d0d0628eaff29c4961c463829fea7005ff299e1acf41e12b69e83b2afb67bf18356601b18ef354f0ee1cc71cc60a3da3e51e7527f2f659986c1e05ea69ce91c1a850b19e50c34109b352f1fb1bf5811f568458734b8aedb36f9d9c9d7e0b1569495a085ac343b441013022cd13eb677e471fbb1f943cd7677cf35d348d5f7842035ad1a06988ef41fff8743e5d3a2f7629c0c9c2873415c9a3d087933854d57676e2d8fe6ca6c26b3c867f62bf51a2ea1c15c09b1e616cd62d167ac4e32c3289552e658c414421bac66ce4ae2e5199cea51a0b229a8833453534fc9f99ba8a9d55e779bf43ce4e78c7ceb9ed8047709fa46f5feeb608f9fa0ff099a5fe8e02ea9693944a1c06eca19ac9959c3d447257ec843851b47d7b56321f68ca1cfa59895abd01779671ed3544ea7f4687173d245719185d62f10fd56e9d2fd90d4db2935ed35e84d851a1429ba89c5d556a25308b939ef82d8b4b9f8cfac5c41847b1e257603e86f4e4738896c8509cb2ee844ac5ea4522779d492ad452be81552f498bc9e5ea553c72a7422cf0d335262ac5e59343bf2165db1aea7d8bac724eb0e888f1e19c48b022d6127f5bac984203e84132711cba440ad9c8b5f8a6e3f0ff08b982b0fb56b2aa191e241e5391c50a7ad11394a996aa48637b921e9f5c4c054d15f4fb4a475d3b6ef1322f40e6afd5c64b365c87e26a79156b129f67652e662903540af394a3d71eded01af49c36ebc788835058fbcd65f8e0fd006f1d8e22e077ce863efa487018e436a1cea0123542833fe0f31b74abb3aacee716273b3426fc8fa9810f556e52a65f1620591704716e4a70f2bc6baffca20f33b921684f34562f804f5862b0f05b81b02f1c13a64cd153cb481aef42162c62b6141bd010e28a1fd46de51e9a83eab3e5d3047471f06e295e514d0a6ba8ec545180768132646a4c4b590be011021e904eccb9ce1fa2643330655ec231f089dd837e361ed90bd7eec564dabe32420003634e61fa2864e7022ea9ebecd8982649b768f10f7138eaa205c5a2037fc142f7728b73825783f5456ee4d4f035e34b8acb2971fd8593988c5fd6afe3727090cdf3c87b606ced4c54815ad5f8f68e6b24758e81a43999ab179f5860531857887a689432f5370d0575e66373335cc78b44c0ad6ba91ddc59bb128799e3a8c4e9bff8b64a4ab420d4210d2610cd02c2b30a732cbd874736cc3b4a0973476e43dd0966e0b025166fadf3fe58036782e8e15c35deef145697694be80cde37123696d884cafc00016478c0e29311f5f35da968de8e5a34ca2190237b644abedfcf29fb4edb9b26613f03b51b7417a319b400f5e1fa780b67fbd4fa27c4dc57baef6fecee699edece27b323c052d80ce22ae7c842374ab19d9b6dc3ce5076b144ec77d6be1a705342234e5dbb3b3a8022b424d450188b49d7d8f962ef00132dd4d9b9d8b1f3c57e01d047daa15d24186e0d5d3aa61a23781421c6ae8e65644cd79f6ec5f2d492c2f6e8f73bc33b5c4d28799acc934365e8d6d32ba70b747767aa479f3300396e421991b6b65627505aef05b9017e61438e95eaeb58368c524e3cc26c3462d5d5bb97972ad387e0b50c082bbce2b00921c15cc2485933897c2b27dd22994ca251143f28f1e7291f2bc226b3ee4dc56198acda2c73bbb8dadd4e3b9167547b16ad810dc15814c1116ae31c78b5090f20b4ef29e6586c0c8efe66f04e48284ca53df6f441e7e28165e745b4b58b85ddf266545726a79044f363896c889946fe319ca0653d0576822fc03ba2a2f2791b212273178bcd024c5e9ac2310fc964207256bf18193f768990fd2dd6f57822fdbc959365115abdbf7210165448d2523d486cb057f4e80fb9d4468b96f4daf678388551b935a16b085740dbaa589a19ac7945fe72881aed7cc98814855ca09b96b1e57e05662ce64faa7c04dfdc2175833694588cd20b64b62a2cd87089a19314e8df0939318205da02858ffdd4452b9670b6d79e339ee643b21f04c07cb508f36dae6bcb61227fac9c3582a71fd638376b2e0bf8152658ddca0ed5b00ed965d3e912724cf0ac5d57c09bcacdbcdff28d6fe151dc495bcef58b05724e9311871f183446e224af7f5c163891d28502682d48c7a34d6db75cac9b230e59a8bca185e996ded84ebfd4d60191205d1df6f9372ca30001399bca69c516e50172ec509991fc895313e8bc5914877026045903a6d08e93cb787d544050bf69f5ceaa5d4f523a2733bd70ded29a642583726921973a9d6c3e8530cf3f7f55536edc20d2021176762fe006d1e658247e9d8f88475abd57a6a41d6be7b488392263b329e16e47603635b05945669e5ae37f5a6d8832e82bdbc615a4ffe3317715f26e74ce663049c01a3446e2137d20ea1d295c19a864d344759f4374e493b7353069cc3dd69704240f36379f3ddceceb44d36af4c1911f3a499c3c6c33cbc64cb607a455c07dc54c27c77b594f674172ba723d055d95883fd9b4c775fe1dfdf61ff0719b2b3c1960955c1f7a7e6479f30b0297de45fe6a1bd5fc32c21ea4f2a5139c31cebe7960e088cec5f71d4aa0855c695065839a3c963079543b370f680102e9dc76dc2f0427b27bbac21637c711fabb2e97228339ca15d4c223d5a953a6656ab8b679a8d2d5c96a1eef776690cddb127505af0fe683514cdc0a870ef9e407e487e8a649b248ef5a35366206a8a8543053946efcaa1b1d1ccfdc6dd37b0a0c2ee652f5f4e6b9c3c9d59dada54e155574dbe126672c3223a3148a47434422a19ce7aa7ea4ab4106faaed6e48c1e290567288524b38cb5824c681720f068dd8c56e335d786c66fa48f0b83dfb79f9277049bc461d49a08d912125305cf362bafaa1197c6f296b8e7e41d9969232607afba3fd892604c108ea7f59a2cb116ce5a75c320a742d2f3ba675d8078c41371e00af297e99769d0dc2f1a080d18b944493808192edd5155def204339ab0c068bca15616815abe1be348fceb1ac6141d576126be9655a6273eca6332851805745dab564a049d0dfb6b3e7dd98c84139e2f3b11823ae4e7a384910f945120fbc7535e27926ab4c4b7858ee6b4ad8cdc9332b2e7c895d12f8aeb5dda856701531f9724ddd06caad28e16c350c106f5b6246ff7dec5befef089f494a439f42a43dbeba47e646476e248100de408a34d126dd73bde59647d86e855a05c72124fc4497b7340da68ffb38b06de9fc4e6e3df67d5dce4449a867118b4ec351a9665a8af2fe79d7521313befe588949e04ed4be992fe1a3c26722060cd2c190e7417017156019d8a0b87638d3f0c23cbd7e68ce159d5858d8990e8aa295b9afdfe0909c5465b3e1b4bcdf10b9bf5406ac1a73b04c46d0066491811540104ca9bfc0d2428d6dfd950562daf4bf9a3d8ea5dfeb3c1458aa1348b027fb740c2bdc9bd466924f1960cf638a0666b5351f5060a7462b9cb7a0f5453759627b07f681e772b08425d6d5982e566109096c2bd3ce7c04c4132bee4cafe41b55bc44864e7bc8293109a26d62cd80b4af36a17f35b1fa35faaa3e6815d5797eb5e4f237e8961a1185fdfae8f7efedd55c9411992b360ab2af13a6d9a48c7b883aa4fdb5c94549c6177e0859860e26a3bfcd14aaa28ff4beacceb4b1f220bcd69baa06bef16bf34a3ef410da6d89ff0aec7f7c711a4a3815dd5ac22dcd8ae4d56df0430a91fbd1f946a00a7e17820ad6eca9cdb29eb83a36edf0b8a15631888aa1535c6a3c1a0b59e11964a616ce6dcae31881a3644743e06fe3c2a468dbc3d0ba50e0d3794623c0c202b183c835ab2ecad9a54f143d7e46f659127e636f33857b5866d73c3d8fa2734dc51cab6797f331dddaa78952a139c6d5d3eb1bbd7977d1a626048810f77a1d867cf442573252aad5d2f171b213bd5261501ba54dc522306f838ab8df34c56e4f89a0a853735e9b9861e6cad3a322b5a1729e672702668787d8aa0289712fa3d8de596af777f701c09bbca558e1613f3fe335383e8b747568ac46b51c0dbd4d6cb6972bf19ce08410e8c095a1d9d11b0da9e5b8cebc84656fc862a148c818709d5bd108412db6631ed397501bf5a3aadbaef6de560453b9b9fb12a70904362efe558f740e35d7d797f94c1236395b02fbac45d51fe14cb1087e1dfaf560f7dfcc71e498b6c758ca13b5b6db94ca7dc93ad3b24a76dc6fe7b04c42669be10ede36cd2077a005bbb834f054bf35ba000cdcc3dd4113be2a0ecdf64f14cf9af19cfd2fd0d3faf079ba2aa95195a77c8ca92c7d4bebb980862658e8c7e9ed299083eab872f2fd9bb8076e82514c93825c56eb8e8bbcc40e1a8f461f05b3cbe5320e2eb0a1ac8f07e2b10798f810a91e48617098b71587e5d91be63f06877541b47543372cddefcceee08cf3815f514f910927fdadbdcf7b222a6a6919789eb8f1194dc1934a4f2cd55cab9440c78af2dc9d03e2d9fd7bc236d1ed5686b74557b22209ecdae36c82c168dc53c050963df5b5d1930c0c9c727db217791f70523c970b4ca3b1f79e6394854e14c7887d46d1856495c203fe459a15009f81a945c42fc6a2022d3f082b75d41c92e5f059573a6dc23f811f8d9674437d24026433b2fe1882fec0ed15182a421da2d484f4d0f196c883708d784f63e6bb3a20d6899a57452252b11ba9de32d3f3f43a28e96d9023d0fb5560e327bda222e71a8f82c4076c97b9d02b8a5fb2223f13ab009d6c10d5668c3af68cdbfa92fdce4836f32007c9f229cb22bd4e1af1f2a85cdca861764b526b68806a54f41f0375e8be0812e4e95b7980bc78ae0d8e6c37761d9c9a4d13ae80974710a046b2fedcc1e8634e8a587b66b850b81701d11424c21960fc78f2315b5c46795bda9a51e6e6d343b169fe73966aaf50d47cb4e9a20976be9f4e1b607b6da2e3f8fc4547f429d10ab25547274c4f4f56c79a6106572da9123be311521f5f7a9d6c200149f833e730eefc10b49c77b6477f2c7436d5f8626ff9116c9977ef30568c57320263c9659c15e54833b84461c296f802fa7bb1afaf4e848bb5f7d6c8e4a37e583b4633bf7d65c480ba4110b218d2f9a420975bed1c9e2c5017cca2c79644d492dba7bf21005908c3ed6667a639fc27352566cb0ca765373aa10631bafe97512b35de456377cf065957b68680be4f8fe228e809c74b7b57315e6f506f9176112e7e9fc155bf0ae6254bc6f1e41f0725ff9e83d026461ed765b0e7d973afa8747bb1fa5e324d3fd50a9a4e2a5c5af6aeb4fdc6cf4b9e0a989b7f523b0e567482fef61fd6306d7c80d1745a69838111e7106945f6808dc1e4a062b373099a6511a7ea620af4a5de341b7203faa95150524c754aed0207f8e1592d798a818e85b0c91caa1f2269913208bf201ce945516a71389bd3eff68e9ef66d8a9a0ae99e8508736e78fc29c41140f58e92336a57eb271660a9ade8fa695dc30cd1a51c1be18a687e0df508b1516cae42d5bed19e31143630f43254fd587613eb3edc83c42d9dbc44d79c15a67d0cd51fa5067866e7197c931b8fee4df2c37d46071242f048faf9c4cb4d4baae2300ef7ee51d965492e83945a24bc605d3ca2212da40b40ad6473c32f93d89ab6ad1d89e1d7ebf9c356beff31b3dbbf707efff32a53672f7700dcd6b558f628a5c25e56cd915df8e7a5c32b7e4a82188adc7628ba8d9fe8681607acfc3016594b4261b0946f68a41271ac5e8e54a6072d63b89fb1b39d967f27749081c3b20ad119f74e8877e438ae34c1271b257772b80abfdc7b4185653ae79d3607648a206a1219c8907c23929ecf1c4fd94ee06fe9451c2a877b28d5e4631ea1a4fa7b2df613ff6b9f2a3f1b37e2a9c60faa04371d8d35393eebf43c3dd40894169c47b16afcee26479ed0e8800f1f0e138941ee1b5bdd11b1ab40e1ddf086895ed768c32f65fa71b2bf6116804526cfcb1f8fe91a23adabce1ce6bda0d033e06855bf2026b574c1b9a325883c7a051334018f23086405748de22f3230900b3dd3bfba0de9ea5d2a413c5ea67ca71ceec3540e52c00d95fc8094310bfd0f3cd6f0f2f00d57d8bf01943ae5244dde7f30e0a60cf20733b343693f4f4629e639960c0a5f38b21adc6c223683302e9526a24bbb303fb78c4ace9cf02deb8b838fc0190b79414dff25c36887acfc0d958da38813f1bb86b0dbbb6ea341e40f80779686dd81bf4c05238e8a43566da8a2add284eef350ce404a7c4b953cfe72f933371c9c5b96dbbca78d093e23816627812b567efa913c93b3b630f6d8ecf18b814d85a1b6a38d16f8bb132d1caeb34b2cb1f56ac3f5d23db137ea8f33f8be79beb9b9bcf26c067702e3d4ccf741815bc3f985078e2de08d2b1e03c0a950d8328432eace9b5e5cc1174e244cd5cb63f8f10eaf809181cfcfc7782f351fa8c8b511d433d6e590bf001d3a5480e6e6d2b42c22bfd166e1fc1321708f0e5a54592bbf030cc659ad5a2b0b9d9ea901d0ad1e4b804af9472d9f95daf00b2c609568ae8e3ca46483a9254a76c2fcf3ed6b44174403adc8dac28621f84b7fd08b4faac62fc06b82dac04fa05ec103c742de5661b96da1596ef63b482d80d1b4c4fac338edc84cbb44ee564b9e37aeffe9c58973283aa521ae5cae70a40c7346b514268d8dbf4781f62364ffc38383b3e66f153a476dd86d1a636fb74c78cab9220658879aa1be522678d9ce3e4c16334ac089c1963ad0bdecb944fc65345391992f771d75be13518d3065214843f9b45d5e74f334e32a963c993b0de32f0bc7c3457ddaa708bf62484249edcd0e8a881b34f1446abeac5a19110ad07be9b4d14067a7948736bd13365f30ca3b20e9503d01116514de96e1299a80b35c8edf1a78ae871e4bd8c20c999be26b0136562cbb80531d44f7d5a55a9926d26f28e126e036fece92f1e45c2a93ef3347c6f83a863994d10d23a3b9989cd33a23ede7e211d77b1991e33b9eb6be6edb3ace94e38efb9978094afad70db1f7c81e357b36da356bdfd5f62be2ce73baa788f7677c971f5857bc274b87b61a8d9b416cdcf588176610b6357ad464eed60c64b7ffe478f0db3a9cd7d1c7359c817a1a643c041aed9dcc0c75104906fad2e020fe5c8cc56edac31b807e6dd50fe1947167a18a0ec928ce2700814781a395c183a1a0a06cbe22705da7b474558edf05428d89151bb7e3e10ec102f1ddf9c1a5f868bc6355810eaf9ea2b138a0861e198f3ae163fa3d502a5bee286112e0ed12e19a0bba278993c629007b23646f2ac226b6c0d6492cb6ddf5bfe0abab50711d2ae278a5b1971bb1c01b3c83028dc0ffe0305fa7f2f62a88251281047150f42a08d4943f94a9a58b69abaf10057b19bc41480390468bde408f7ebe864343fc3774020f8ddeb9dde144b37a0fbe3fd1c4f64d39bc316e469770769a416c54d7d5e73857c6ee7510bc1c1b7948c759f4efbd072afc2da15c261dc64ab80f1d78b34977d075e0313d9a9871ef6ecc0f2844b1b31fe85594b7c6d44580d490b7150674999cf8c69537e7f9fe71444123d7ecb55a5f4f33cbbafc64d689fb64fe698411a07c8ee04c76b961293b68379f92108fba074e443a65fb58dd4a89334f97db715b80101c2a1ae717f3959fafdfefb6b412931852a943c106df50ae181f2025f791e1cd9faa1a189e96a305c8dc5160656737bb5efacab754bd44ba7b751f19f33cbf2464383340f867d44bb1fcbf497ef83b62cc10967fb583660d69f21b5597bbd98209af05577a66e72189ce2fb4b2030b2feb046eb2ca275bc1dc77c3a57ec0dd5659b8a958586755b8bc0963fd1740a3ad484156640936a11404800a6a3b32f382cf0d1817d2b60840752a82e325687d635a0480b8a01a4be51bbe727b1229665cec977f5a9db9045490823c348c0dc65296e09f26bc29ae61ba520f3d3e20b1df0406e79dece0a5cd375003e9eb4c73cf9fb7a3b7ffb158c8bf3405a89cadc3e3cfe9a22a654c434e414b0b6500f1fbfe1364af65e0d15d8ef3d39d6797dce5242732604630b1ffd033478d713445159da71795b02ac5c7a69e7caca218094d45e18c18441b272c2e54c21fdfc905089d44a537e760dba993bcac35cfd9ffe6ddea159ea979915249481769309d7d2eb10a6a8ba33e642e116e9ef0394d8da5c5928a46125ff75b72402ebd67ed63a41bb5ff50f3d3d5863a99ea9b7178dfb4b52d1ad38dcb26541539db821d1959975187d9c5109d48465eefc3714c1606c4c7164c2e9089ce140e997830a6e74c70634488a4804a4dac0799a230f64541a0507b14b7b42c7614991c3caef197556a3448a0e7881c60d51d68e4ea413dc40ada3d9558e16cd82856105182558d3855375b4930b1f12f0b4850cb1a7c290d13defd4cace259f445c488dade0b4d634c596968a2df296d9239244d8d9ed567fba74c54574b0899ef43e9fc2affa2911e9d9a6a97b337fa1a332e9b1cbaa60b6dde8ab9eb3a557f48321c36291bdeb1052daea66d9e209d0f06d307e23371ef29746924acd2d8cba6ab59dc4c25561342725531b972c8a1a476cb7d19872ace4871a15c8815af5886c0a6844735681b2a01f95b2b913d403bd84b6258ed436ce11612080401b212a6a83c21a03f4a03131abc3b665809d4b063f8ac186f02102390314a4bfae4c5bc33a449cdaaa6c8f78ad357f34c8ed1d58300841f50c2d5dfbe288528a2cbc5bed4fb1938e11f2755516744a1955315ee49acbf2ced60d007e53a495916261430104411a093e134c25e146afe4dbd39d4b25dd67cbb9c701dca09f45f229d688434ff413cdc9865df8ed30b4ac5a0f8169826dfc2fe76fc6a16dc68c630cee34c4ef95df042a710b6a9d9ed35c5951774b90b3a5a0d0d6235cfac7aabccf6811618a9348e3407d55c36964745ecba6c0c0e5990874b9e738b4921eaeda375a5defe8c05a0b419f5b62af23ea67a32392a7dd51cec7b55a5a1ba4daf98fb5e2c3347df639448bd13563505e2ef6e31f5f6b6795daa5a90078ee1445823cd3371366072703fd50f6212db42cace5cd11b27463a179f800e911d2c11b5b9972f9a7a4923c5a1834c9fbc86442f940c67a4460d5f281b749304571451150ffc2e14bd8b682098717a5c421bbf1aeda8059a86518424d2721316b440c9d0b5525ca62fe5cb4b4ddfba214f3ac0ad6be85b2ff42faeb00c911b1a81140fa76701d9e86684fd077ccd1b2abec11a7c1aa626fecb63515117ff1aedbeba90095fa0a97d06659bd920f700d1e0b68631dbf56efccda2e957bf4a5c832bbe8b1ff81e5c784041a09c112aa1d3d929b615d107fd7deb44dea3ad69c3dd72eae58a9519d520c23a12f844448b68ebd78c08bddf7ef49511ba7dd80a1971ef6d8ee840b03196b48ea94347c4ac95a04cbbad6b09e6b39681ea84623b1ed777eb657a2dcf7f63eb2b2da43f6964d511207af4bbe87404d11d3179b7b35f370308edc91f6c34bd104c46165daa35c95f7d634b8f779164e7c4de5f450859cd270434fb9e3545e2e99d5162a562f13350c4bff77f5aeaec9925edf74d4f64c384d1e819841047fefe8d550bbcc554ad21d0a1ab9bfdc7ab25def49b61da39279a5108d200f460452396febe28ee8833701df25a9aa406ee3c64def74d8c5347efcf408ebea17ac0e16b7f8b3b1354e20a0268d74113f48c632dd2d41502cd5d0413ba0aba57b4e631e558ad1182d9a89385a45ba16a4acac1890fac4e64a45187e2f03d687accc048735fbe787bb67d34a8bba5a490db972f7d37607c101f99c01e81297519734e934b5e7e3eb5ffad474dd5422d4e02ea60e6f9ae6216653407955d6701c00d2a040141f6f2b2bc98df5717105d4032caa5063a5e88cf08c77a4fd3169c0d8daf36f846d283efb0528ca7f5f5fb28585dce25ac7d1f5db6353eb2e61fb8ace305d2d2e2e8a906c9a9799fbf5dc2ffda68ccb7249e80fde8a596d3ba3794222bb4cca74208bba0bc2895c2b7c4883c85f8b81ba9c7f7ad95b150ae2afa1b795636cfeb42f0ccf9c090f8d387ff7536d95ab9d7dbce7d4a77400daea31b8838bbb2b61fab1f090a66fb4e6566376c1cfd9665862e920c74e52b0a7970a4f49d9febb2274fab83783e6d6014753823a56aaceb53f7e787015cdc629fd947892d64558813d70025300fd7deee3e135265edda6a414bb64211dcc192bd5b07dfcf9e341fe7877c3987c1e2f51f976527c56f88bba72e06b648a00b0c364291c86ef840d11193a640e070a24bbdf00c7882d85d03cf273b0f1c4b83df2c269b56fa6c43990866fbd349d3a8e442ac7b19b293f99c7ba4da30be35da829f3cc92655c4ad461b51d370200d8f8e57b6abb48ccf36b4d892450243c7ebebddf21a9eecb7b2d1676b9cef68b604efee0e81df07208cf0bb71f2dace5d612fa7acacc500b5b69b105afc1478b56e0aa72b179bf7bd1373d2a22e45235068f8808a787a5d44153982b78244d0ad465b26346c9f57c69c9f606c7a47c752df0fd25ac3632affd48bc7b5501d1c7b5c02cfa9885f1273bf24e2d978896421877e043112267a0e444290d2867d25955baf10b3a3d4de0013c64cc508e252ef74e2e2e21655a58de934d057cc7fadd230f01ca181bab9db8dcc1f12781c581bc1ff16f897ef982aa6ab9a31a9687c43290f354ba6f74d0b4969b9aceee375a201a5d0311bdee81f5bf7d338f56964da3e55172d48084cdb6094b081733f4e4515b7ebd19df16aec8405cc2cd41fb29360220b6dd573822da6e7875361401104b35c12b736afd50f72279a46a70eea4781b61f15ce31c498a82e694df2291ba928cf1c938c665cb6eec71965aec4e5041f9d619f089e536ee7f2776d448bd19f9190030da529fabe5a1f44bf03eab492bb7f75062503a18ef6736e29c3392330f53d554b6919a87ba40f70a1b16c4e8c03dcb55b8118303706dc362742db04c1e11dc23f4cb70ab2494ef20000a6efa82e0c92d765548a3577e88f89eb70ad4edc93d098d2f27fe282f37b582cbdda049224089e324db123aff2fa3d4e8b7ec8c65eed09991536a20557fdac2c8400ad3dd22ae2666c6e35eff69330e443dbbeffbc2da947cdef248ade538ed675803546e3755f8ec55f6425006746dcc2076832c90c520915a9ea8dc1abd2c71d274a1e2ecfaaf1f03718e8a47dcb85c9f68ce432bb9267ebfaf36988268146de46642da3a437c6aef35053008fae59c842f3963eb5ff8f9504f7492a8a75c1d2f2f9fa8e78593ff018657838200d28826c708abd9f8d04d1857c9ab068dbafa91755f5d189caabf7b80aaddc07d7d5a70286e65191fb5943382372e5e5b9e483b65503b0ee63afcd5af811678e7a33c0341b5e5b1b4f3f2a728d1a431966dfa0a23803b022c55f8d63662bcdabb5dfe6d381c07f858c79b206a6e8da81221c4a8dc5f7c0150bd1ee12fd521f5635d6d21c14692d7716cc35ecf1e56e58ca1ab12d46c26e22141f209c3a5f9e6833655b68404908983ff08322bf9e17029f08baedb415302f0c120c023b988e9d4649ea25710bf0bbbea83103603a363d6de77d7b71d0e676a813d62703b3de0efcc8171e499e0901c4f4486c8b0ee697273e451b2fc908190c908327c1793cc7f06e1ef615253e3bbf2d4b6398e0ba76470de0bafce96992f140c932efb0dcc4e2da68d1d278e495a636a9cc3c184ca2a990370eac4c13ae2875330536f70314de88e1a5b8e84190e105affe4222206d04dc0eb142d2120791a07f9315f94f107e4bec745fff0b1aa300fac1643a790d1e5e2d42cb4e134199252ad68db2960aa053042c7b6889db4781fe0c706b57465a219b326cbcae5781f895afa715e001434bee143e359c5258e1f9f20fe3bc864108f51837f10e67d04fc036d9f0cfdce4d4d8e74186dc5d69836cdf02b8608cc9c25d6f966f83581402b464626c12729ae6dd76cce0117e1ba5187b3b3ab0f7d0239d1a6f0272896db83c15270de28ad206d5e6f4d4f10c67ec611225927b1788138662e0ab6da234b3c0532e5a41483ab84eb28e1025ccfc5f40401957daafb8cfd991b01eac6f09b8d78ec3e58c476576aa9384c1ed43eca0636db462547e2a4cf2bc54a7c4b70de3982a2487e88a7034f6e85948350b3ea59e3e1e71ea833d11e3f15084b173bbf089463d4f77b1a5fb3d9ebc27941c39e4b5b231c198670a6ea07e30d6f060643649fbd81177bac7da8569caf535bc1733c99bce6932be3de9b2da0d273292a5ebf9fd3be7c37bf63c854036ef2e58e11ff5ed7c42a3024dd954a33b82abbc0d79116302de55ddec0e8c47e6a591bdfbfcac51c913bea61a9436e23a1eae6ea55cc8a6446c556bff35d0e50bbaf7a45ad307e37822bc5253054f48a31f662a57970991c53c24ed9b6c3462c6f8e72004f92f1e703c6243914dae23471fad664ed181cd75167875d44c1e527add35be3f8fb9420e0c4c58023a6ea54b5d400ec29a0ebadbd79b5eeedf1dd9a6eecf8a7030ebf76062866330bfd2f90b0cdf43d21a20f5a3697f2b4c3b37b1d3d66b90ac06d973380e291f774e4aa0df7e2f02521c8845c573a5b065d55e42b730cf1115d6dade524a29a54c32056e044804b704af7ee16f420fd67e7088654f88f1a36c19c921a12352d2a81c2b0c2c0f4ed2651047b2fa0e041df0df0e2da59e0bd9de02d1a65bdb185db139d882fd5f31869551428c017fc22ccb3520497f4107dc9f7fff8b41b9ff0b81adb67ef70742aeab5cbd2f04bf00e880bb00fbf15f112e2006398c683b1c3d8c4198e1af69373c86eccf83dc4a1e34cc52c60eafc02a3990cd6e9bf7dd97dd71767432b04c774ba9e4c502eeee965247ca9604c7ef9eb5ecc6478c628c445cbf9191c327a35a8cebee9e73ceeef82461b71b1165194a814710c24adfe5fb7427327c23f85e2b831bd22cab0f6f1159168ef86d37f1c03439f17bd81c493ba26f0008a3046ff9d794063f98dc85aa4b939b9b97116378cc5bfe352c218c1887c7bc45fe6c8bfc75cdd66c4d46ec8454e72ee8e065d3cde86a44177c19db8d7641a6ed3f10ace770b14566710397dec6184ef6099b4193bd0747f78389c956a4aeb6d720f5106edb26ad8a7c6fb6144f9c8431c396b51495944dc65d9314afea6efc37588a1a5566804d2a0ae632ec70b8ebfa98c93d70f407a95447672ae60d6c5b6dab6db5adb6d5b6da564b759e37b06db5adb6d536b06db5adb6d56adeba4f6e3737abd8a1b9076cf98faf99328e0eb8cb3fe54ab9b0ab6ecf2208330f7bb0bbe0a73cb962e6540777fa056c05d8f2df60088b0ee0ae89ea6d8462b84bc11ddbf19ca0f24a5821fbf768f29c23539dab5fe4e4cc8eb575ad7e011fbe84104698ad06a9e8e188aedc116e1e40e1ba03bf826948b1a3ca020cbf534d4db316a0a8e0a8b6a5545a3a9bb26c6b521bc365b474b8cbdf0ccb041facc384a86b64f4040afcb5981098a0e3844e87b7fc65b8504b8c6b90041fd523b8c681bdd4478d145332622d7b9f989f0d219cf6efbdf776ca07d74198b766a7c2085241525cca5b10e83ae1958568527802c3f8ba897618f7fdfd53e80f9a0316cb7e8d1803c62c0931d787b1abf23e96dfb618c8b3bb656f954d19c3f9377a816b0ef028118a091141d98007b78d850e210674a424e959186cb329e9e8b089b352ca2963c7c8a2f463f7c7eee99ded8e4e62849d9530b72a7b67e70637dc53659867780c2084b05bda29dfdd09fcdc3d8763333a7c963d9eb1a1df2e27f562d499d08d48dbde8447d1d50f658c53c6287b85163c7d28777cfa9f941032e57e1a841f5bca1865b794488ba89492044c7912e5fe142f60f9fd33a20e27caf0a553c1dfe32040c85b2d63f81cf2a1138c32567a43098eafe38573e2778cee40edb5e4fceacdc98aae9fd3561b5dd4b3d3ebee9804d71cd8593a228444e60469a7c788142362a66021428241692b687a36a01e0dcfaa7c73132b5c73200d9211212344516888c24cd00c0a87287a82828a50c0394dd1b6764a4ce5c4a9af52d553a4087caea5fbebe87865203934800c8580bc35c36fbc0874089d95c8092ee95b49a54e965e773854f26187016f45e8957065803f186b5674c5681ea1c8287a3169c1a8aa616c59f859ad7fc960c118047ac252ae6c4a4a293f16bb216c98fbbf168e8f9542867b0728647fa385000f1c867c577bab95e78c25109384933a693620c1be7cebc93a5f47cd28bce44175260fa853e70d0b482e188d0071128edfb1e3c3988d8cee232461b9c4f927e7cc019bc6093b5a299846d4d2821d58b07d8ccfcd592de4e26fdcc7eef3cc3d076deb03f03e8e3160ff7b3102b253a0cb4e3baa52cfc1548cd1fbdad88fd76b1b9565e5cfb6771ffceddbb62dc7e673b376d6cd7296e3a0c37b6d94d1d27bedb577b3f6ad97e35afbb0dbee76ef6f6fbb1cf7deed53f75a5c84eb14ea432a19fea6941f36dcbe5536e057d87130a63e10bffeed4200f37dae76f7b9afbfd2e1302005bab85ad5ba52f11176ac59755e81e0b18ef0d7471f6bf5f323d01fd44f81bfdb06da9567bd3569c45c7ffacf882aba9beeeb20d77c8aaefb6caef13e30b3aa63a53cd984fb19be8a9183f01dba4398c3e107a13ff4382861376c28f0f65b4387be03a38c33fa8398b9ae9d75a90a610312dc72dc4cddebd59400fb7ff6efd72e877dffed0cee1911b0160598eba793a97779401d1a6fa6fc144929a594524aa4d8132be694e32340068e991c3fd55a8de0877b9f8ddbe8733ff67daaadf5b9ffb9ef63afb5ac9be2fe6edc169ffbedb9efeeb6ce76eed263f4181df2a83ad3670ed2cad8100929a594924ed93e38d9909b73c66e9a1b0cd71d835a48869b2f679df323f61675495d07ae1d46b595de3929a514b6a781edde38f89cd31d4ef7975e748fedddae040febe54b7f397dca28a747079293e3ba29d89c1c580a1ca452ce761e54b8ee0fba869e7526843470365eb7e63f8b0017c8f12195d2ca0c50ef81833668eeafb93d6853696e87d19d75241c0177bb25a53f8410e6c07112d3620a4a59356548a12c42ef8bb3559c896172a1ec9b1767d1e505c3ffe22c870fc01264ee65e0c699472ed99d1af9f53e1e2f2a06dce5253079bf98ef104a8931620e112e66eab6c22827f02470302b8bd5f2189aec947315b8dffa8396d95ed57fab8f75045b227caeefd4ab97f25a2a0b7fee8869d2e4d4fb0b841a15c0a143851e99122228474a4cd089abe97a9c70d5cb1b675d35011c6fadbc166662be083053cfa9ed21d28f92ec1370124890b76f390ccef386e37d28c06c35801be907889329f83b60de015bde923bb93fc249824cbd9707de7af50b33f8fb1684ba47b8f93ed4ba43a8116374fdfd423e54748196a109318624f288e6acf58b28f3749ab7e22492398de64b0ea3618582ce04d73834c7ff049065e742522e4aae05e45adc4b63acfe52c823732fbb9eb5950628c0d5fa169fe26d3ed5224596ffdd2cff8359ae58ded74186dfc2fb3aa8f9cb62c5ca53e175bb6e5260cfc6f3ba5d2a6f078f7ca52a04f82a7c7ee44250333814b543854cffe391bd66ea7d3af77a3b62b60f336d7f28a32a04099bcc872a1ead1c27ee506e79401daf1c0edededeb35bfeb3a58d4c8878817c65b9a1e11417f80e1d9a30917ca28688f15164842b42483d5a0832021254151205c98712928f219b05ca201a95bf56b636c6e8e97809d921237964aa48d86890941d810e88ea4a94ab37cd034a3448830c0c53fa255368f4f21a0c063be27d65e7e9d6fa14a4c9b71ee79ffaa86990bc40012582210263b462a2c90b9a039081500c0125062520248dd121ca0a6ec0f2440c93446bc10c363c3045575b9ca7587c80fa17fdb2f91329eeea233bc3347775fe58359e30fd0cdf6eacd53a4301995cb140a6680483c192ac1a4b91a04c29d3102c55d0d498d08092a4b031068d0d323d40407eb34041f10426a12152c1132557ccc22b8cedcf110b451a0986235b7c981860083aa1c54b96e16a618168a3548b9325324d40929ea717315821d33040b20c4c716888524a292dc2698c19ea39a48bac2688947fcda248e4c81691221b82c160455a96fb4a104a64734899232faaecf0e0e4b75a6bdd9264b55cab3dc10e4690c12cbcc298caa065861424cda0838c664a29a5211ca1dd1ba3442c515a4213c2d24929a5949ab9369ed0dc4b291de295f2414c74b5fdd6e3fcdba432503879cd172a30a589d9191f4294f831c499197ceb71feb9a09e8196335d7aa25c1873149b6678329a4529d074e0f182c40c1817088194e55fd3c78b84e20d70229d519234882cd3868235180c26c43b2966d4505348e7c818256290e5c71145c410c1cc9280b6c41804920fb2aec188460d52ae05aae1c808b3f00a638cf1cb1660520b9022582d62e588161b4a4029a53c9452186a6d39ab8f244f4598855718cb9e1e9e70c1e8479825228c989e58487a42028d8092524a9174d4eb4228180c36646e118b99a55ca3f20cbfad2a9b512a670d526b04c262390212f4af19c597804bb428af2350358e44e1bcb79c6624a594320221a594b3d65abde4fa2df93e6a0dfad6e33cfe4ae4ff5fb6472cd3d474198b524a63b9b314d162990aa1b4cc0c577a80f222ace502155d6deb8f5a6b4d4ac242a9ac40b5d65a93c81f1080caf938c894bea58fb514d125c7506bad5c8a6244800b1477f5dcaeacaa9a8869b8e600ee2327a8dc47474039c1b2cdeb805ab1a4b458479b81dd3d638c1e8e1653018730187306f84727f8835420151644785693daecf7b4f6bff7e42bcb9091f1d7b3f757797d21c618638c31c6187f863025f0c3cc5d086e7abdcf491d230d3eaaee73dffd1a1da3cc755fd3eedfc7d7db21ed73a98e030004200000e8be56ca36cf41f7f5966cf34d6b8137eb9f8ea679aa7a3b6abc263fa9f761f1aa971d0b057cbd25fba752cf62c29cd4d74af90478fef736c658a1e27d56efb49c237e67fcab9fcf8a31569fe2e77f3a4699d3c9b6daa9eaa6399ddf78655762b839e5378f94cf79375f4a8f677ade313a2cc3a53e5bd9ddebd9947518dfe25774df8dbce2a58bb72eac0bebc2bab02ed264d673b085643dc7719e6ad516b38cd97ab6d4fb38ebc917d2fbb65ff133e2d6ddc8a9ee7bd1806932e46a7ec7e43c145c64eeb7dfbc4f7ecddb6ec77c10e4d8bec5e7d85efe0caf9935f3edd76c2feff6359bb78353a1c1a7b8791f1bd5dffcd440d5e23bb37817352cef6be1c9af915de7155dcdb3e8be1bb9a6e6a35ff36da35280768d4ad2e896d6a6fe6b814027cbdfb6dfc1fda78287828bbce23fb9496f07f79fbdbf71524a7957784d7e56bffa7b575785fc14efe36323e177aef99be77e839f7a9ba2f3c136292fc5cd1c91d3c9927b98267fdba76ad8e0bccd6b723fde0d6cc82cdf6699819ef2673312508ce52ee5074660113321317ceb71fe7f200d30b29b2eb2edc70a909541122af49087180d1e6498d2aebd606aad55882677b5930d219e30ab52a0231b3220ba2a4033a5670ad094a0294aa63099527487e460e9a4ed458cbb1aead2f0127569f800bb7752fac528d3f833911ccd201fd46878e207c94cca104c2cb161490a382018a5b443f8814629adb5d62fb5e8ea3ca79544ffa24c1048e23f9494583a29a594d2a02176af10afed7eadb5d61fccfc80e64bcf17a02f41b42583960862ce3967adf5d24a546bad4c4594524a2916a625afb5569bc3d147180c06134ad15998341dadb024ba59a63cc9fe480446d03c11041aa82745a2123da0c0d249fda86884232817534a291d42a8a98690d3a594524a8f78d11666d1d5b6d65ac3d17667d5018dbbba0728480993a24a43055064ccf02dd5e5de7baffd913404a594525a93a8d881edc476643b423b433b443b4634e220e3de5bffd2bff7de7b61387257cf2c0d33b16a2fc65d3040b9abf3f7929129a5348a4ca3d854117a75192aeeea089441b258492ca2d5100449162349c4271f680d82b41474036452144529752442930788c8ab674c6a319c9f4262962b4ec0621b519323b32643956279d21485309a4002c073040e4300f1485952a60909962625bf4289d29cf8e5900e9ec600618228021031b7453db020b5fec02cbcc2f801643c5673810e3e1312b32fd4ea3474810cbdb8a1dc5874800d659c07fad6e3fc6f3f3cf073346608981b786ec8a9645a4852420657728980420415205804f6320986980958c02cbcc2d886097e290466217a2a4011009c20800f1cf4103b59a89420f230a4128136d457c688a1b26f3dce7fadb5d63a9f80e8228317059708e287072432c992104b27a594d222a45ba4748b966e51d32d72ba970a25608cfb8489e2815c6925598a86035e71268c0f653ac9688424294288241d451aa40c51318988268ed2a424a2329db4a82e30880426a612bad1e265cb0ba28c09331b138584840f66e115c69b534d36d56ea5756eb5d6ba5d2102cab5ded904940094802f00b3f3b28691da0a07fdf020232362085548adb56e40454e3d44f1adc7f93f7381aefcf09404880eaa8899edf0b507a215c62cbcc2f8d65a6bc5628527d79f1f27918c10992121484e641cccfd02f4adc7f9f75a6b8d926b9549220aa28440f364abb55699bb5a6888e82bcf12cab364862535e0973948a40e434609274c2b34c1c40a39548c162e3d6478dd4a6badb5fe78d28152596bad3eb9fe3cd55ae44cae754ba789cd2babf2adc7f99f413a3f7c3881f1112288a8890b9e90c1bef538cf11711bb82cc552e04a68b6f4a8c428895902aab5561aa0a2ab2d66e1156e1ca128a5b4895974b55d6104004ec89c98018cc386a4c37263618289c3524174458f6864486d36e4ccb71ee77f06a194524a89b8f19945b1aa3861165ee1c6b5d65a2b118f0a62011b4c80b484092096684a62c683113bf4cb509ec16a21b28485e81851620411142850980445249e5431e2b50aa3e4ae5e9a36c234b16aadb5d25abfd65a6bad1548e9075ae55e79d2149342d529d71e6838283e7101892c2c9c80282a1ec10509972632c9b2c0c8bf68d30a1888c0a28433213129b1a61324274a4e962ea59452ea84dc014ae6ea61254811990c7cba5099211dcd590f2547708c4a0dcf1c06f470961ec3e6480987b4cc0ad308566a426e14266808e289a52a324423be142932a321aa67500683c17ee495169632a5d4854c61548482c1602f74546e2d3d9aa22e509529489cc001093345d08ad862c317175470250c90a028481461414eade5ba5403984ba8b46e78a410aa99011000a3160000180808060302a15018077aa2e70e14000b5c74466a623e8ec622d22890e3288661180001008001000060288681281ec34c6b0040a14fea4c473768c6aef9a40136b9a57f9756a008ae433b9be3ff527515df26865975a960ecd42c6109a0637431a79f01151dd797dc3656530ea5342c296c8e2c9d7531bb330fc776d667bdc3de577c66252d11e2dfb375388b9e52a17e2951adced7f61bb8afbd0a84dc53ad25eddcdb1316f379067318a7b365b27adb23f853f9676acaf5164faf5f3474fce98b87f60ee4fce8dbf4d271deb7dcd4b76a3a534a2274b78307062ab4e802c50397268ec1de949ca4d4a5f461aaacf14c8cb1e784925763558ae44199c2c64acc44deacf6a1d8209cbe5aec5975bf6173c84b04853b52866d1305000a34f10b597203aced79feb76815e6afadc12cf53ce85639b2f91415854fa25cc376c7d1d87a548a762218976d7c3463ffeb8e67f5a3d6d652af87266e71f06b9f6491994973f4266f3b6fd8f695cf53071e676c4261b2406079f274f8fbd8f4d936059ef6672e224db1e7f37bd393268fb6ef9461a9521026b9d52652be276c5d99103fb75b399447ea9a807ec4f5774236fe5f87c91e9295ddedfcb6e1f4c188581b7fd569b9d49c345d35eb163285e340b73ef519f195a9577eb3f6da6ef483561e8ff967b2d5032295ca135ee836739adaede9ad4189f1659cbfac5e46e541852ead25348a6468158f853b96d43a1a4585327ba454f7468e07022c387ba2ee7a48dacf769f891d86727e4b654be0cc90c18bf105a7a3858bd353d48112fb33f4231d541d7c7c49c39f6f8dbba99db7e6058f5155dab6d92466d18da8a2a202577072d244f0e1085313d4742753a40cc055b134d5d5edf7597ac56bb78ddf5a11a99fa14b76487f1dd207af485fe5b3042a9eed37788e90f413595753c94d6d363c7441cf4e05b7f5bcd08292a9f6ef5cf440b609adf88f892d18de39f27f911e1120fbc272601475dbe463a4afef8d36a1119bf2678ae6f44db35b97cca2889bd2b6ae0a670e561cce7812820bba7b20d3212a815308bd15f1968fe708aefcd497eeebed8a99e4a70495961c1b265aea65dd4c61522c9b7c0d50c3913916fe7f6e22e7f533a69497beb2bece184b4c82948a93045fc9453d3a6dedfdbe952d9ffd80ffeec564a47257128e2ed51202b8be7dd7ca36117339be9d19e06af75fc836639bcfd621db68a52b1598fd1867fa6d9b030a08087efa9e5e55c1fe34f44ac921a55c9e809a3029edd81d2e6a3310afa16e28b9e79ea1475f0e33b1fe4d8da3e72758a9bf63a8caa5855e500b00cb3704109b8a42ce3ed12d4c1544ccd382a4acefba070f9a26200f51bf47e01c5cb3f89e58b52c7aeacc36f55e45abc22c0d6422081323d9771fab233b18e5aea440c73b608600900c200144a095cf9617a796913a1c3b6de52e11af29a235df98bd76fcbc31cf65550993fa60bb8e2c8f3e0a31367ab6b4017e2c881b81c5b8cb973a8c45752c9640d11b2ff2f4235e6a0c495d18ec5d4bd637275ecc6b16f4acce5cb1273ed2875d83ab43f2646f6c6b0dea7aa66ed197ff77165b669af0b327ae648bdada1a5cac485eea1a0ecafcfa1e93d55ac266dd765b834ab4a70dbde7e85e1949b69e84f7f01a3656ab8c823073bddb42752de8ee414e8efb6b7295b0d5715d238fc2aef27950879d8a492349f69e53605c798343cc5a77f5f12252af3ae493df06d7ceb66140e8518ca5ca2353f71e262030dc27200808cc4807c69ff67e2e9323abd7a8bba814ccdf639fe86e4130a4a11658bb15ef509fc9aaca4871132bb631265b32e6584310819af72447932a2f7ef6d3ab8f959f6db19ebc4dc7462b4b5b554a34a66320b239b79b300a251a25bdd3ca47cd68e5aed8b73b1c513134a70f0522aab760d0eeb006e0faa902e9e872645ca5360a50d61446ccf64e2bae233860e393323cde9cf561b4cb3f23ca0686c585db4b3591cec71211d909dac672790ffec7c48fb651bddc5cef5a5b1c3b7e166c3100616142ce61bc6bf47d5b921c628a094d640828596d63666340559a24422cddd39753095f0fe2f9d5d69cc64f4e2e35d0c0bc47a9beb306e8962b7435f29d46473b7d27038b04e88b23a8948f27e8917965c4aadce394c8b5f5a5b2f7a7d80ae2d51d142082789e5376e004052654f5c697ecdbc16fe348761bba93040d979a4e1bd662da9233653de5635bb7451f8dac33a645385ca6a135317247a0f8c190c67e44630a13b7a93306f148948bb6d12a2d413c6c31243e6a3837715f96229c0deeb457a46400ae7ef1e97b9da73abab2b89c39dbf6237bede00b713017c99e3e22d0cbd20868cdd489a44103342bf02a288a82578f87bf6735f9688ecca6db9259b1002b8081cac211f140802916665d354e405cc32656c0c478a3246fbd78a2f801caf5d671c235ccd6d612f25427b3f44968eb94460035c6f18c7c67cf366e3bb9105821feff5517a3f33b4be02f613c678b5203ebd713078fdb1b8f0dfd8d072a0f0daa3d959214b4a58d98977a212570b30265415cd539eabc0d0d8a5d9e16a407e286a05d4f10dec52a5b028ec8f7fef9fca5fc2f788d0a578f0e58e4c044e7809460c0dfbc98d1d4f6b706cb40f7892d3570f713298b065aa9123f8c95a0f81735f90caee4479384f4e4a4edcb2f531c75aab39448779d9e42d41141ed15f5955e33613d04dc6032e33208f3712cb23f7b1e69cb4eda48c6348cf99201ba2e1fe7d362ed8f2ada449deceaa01287233402b2026789b2b327a54ed2eb4e7c87f1dc5c0efab5e26dcaf6d85410c1d663013e4c6da270edd6e498405402d1d9982d9a8eceb9b9c1c06c199e0841d817634567e1d6af3a5b42cb1fd8a6fd353c5e47844c42292d8d0a0c788d02a1dd49a717c1ec1ce7ddc0f4f9020c65bc1d917d86284a71e4d283b5558d980590d77bf3c6e3132fb6c2d108f132172ab8048e7938e73f65661bf1ad3613b4328126be6567364f70c0bd9982dea20837aa2bb12b5fb527f5519e0eec8b605a9216eb0aac4e84ec7ebdd47122e51b6015c2860f326c5670c9de1a582ff093a672ab5986559fbf76f80b236b3e84e351f146f73dd313878c7dd47af2a5bee1d0357bdbfbacf0b3dc4a3b606897cabf54b9b03b98d6aa0f62e1b654f524a33b448277ed5964e54545b81e8d4151185bb7f0e1e7d9900760c8e80041d9808b1d2075f84e0a19e11fe2a652a48dc97d7e9411627234983af55bd98dbe8c22c015386fc77c8971ba22a8789b7dee6f2d53d62a29cd0f4675bf0c70bfc0fa8d49e8b6f4a444cf8607224a4c0dde72e058c162891883422901e3868433d6cba87c9ec133cd902e0498755454d379483c07748125c08a080b2f0d4a881ec03d357ec295de8938df1e568981080c2ca67b76e3670751c3ab9558f5ca7501d92a3edf10c553801208565f20a995b70089eb8a2973e0f72742c48c9cfdf4c577c00fbbb16a5aa7af547b0f9a126362a89eb5ecf303c3efb1b1ba44b4bc36c59132e51508af5354d2ed184fd8f68ed631652f2c7e188e0b0c225c3549604f1a0ee0190b34a509d78266c54f7e32b0e50f61c201451e11d1b08cc2a4cf5a976bfdf3506142c6e2192b7bc5cc04ccc26b2b89677e2a3764d938c572e7a3cb0f07dba27200f19078e36fbcdce42a85e3823301e7b1e48ab9151cffe3cf7a17efd97b0b9235e521a94199440a0d40c259eb2b5221929ba43c1875459e6af0e5cfc8140a8f163c8ea9dec25916715b96971507841ce91f14cd8143cd75f4e936a93c4d4f9d389dd04d342001efa1c1cb9b5307b6a566ade9dee1ae8b01314a297d84b3d204a72513743023ff701d9d4e294c1944643f72fa91c05497910d380f6887c14c0590ce8c7c5c6e7ada0d9ba68d2aedbc0e1fd75a328ad4d608becad954e88e8f4af26baad182aedb66dc09555b66a6fd133fbf2cb394963adf643441dccd3c096d35bdcc7cfd737505cc52a8e8543201710529c3bcd650201b877f870120f1c7cab817e162c3f0073dcfa429ece1166c658f9aae845306f02b16af5bba835229d4fb7fc6f6aab88be0388d45403c85198f38d85b81eb840d785a54a94bc5d6609dffd6b572489fc53badd8101e0b45998a3877e4f863b2e02f2520466f9be30e2e30fa40b6a4686ed699cde365dd5709468826dca4a3c546c583261904d88ecacc3d41cb3b15d94ca72cdf72774c7f016329276f46e89e34f9a3f5e548d2017ac02429f8a997579564b273462527a53573a570a85890bada9c19ce7f6fe36687c73e79c199226853ea44bee146fa467c15c63b16f1a5e5638575d8b2b8324d5ad12d7249b7079f0b61c29ae62cf29b0f2f415a1864815be2777a310fdc5aa1b6320814501a226d472b93e237a387baea3413e20fbdebb9945bbdcd7e44d3a091a373260f3786936c731e0011a28f67dd7062405c219593a9e5edce5b95bba0ad2c1a03083c3ec5f73fc4aca87adfe430f8a53417ea3e2f26b4952cdac5706a26d78512feaad53ea8cc5ae113c458853dc97683cdf604a233d788aba4e4e876f27e38a91ad15d5d3a3fbb24d5680b1d06b883e1a440f182e3b02faa9838954c5f42002314132b1d65a54edd666110149819c2ba313b40f328153ece156c6a284581e1a433429f8ea605203e7510211d8887c276f92da0a181decb7ed8f98a39a5fbf1271ad9f27d220dd1009f834e8f719112451ad01c80aa00dc65d2446323b1d94882782ae28b89f8b83a436350b03422b0d504223b1d2914a11caff6f103bb20da5dd96ba9389315caea6c7f09258adc44cba1e6b665fb124ae3616510e5fbd2380c476228d65ec6ada52307df3a62b4f124be6cc38fb9a2105910e757ad2de012c32d803492b9b4280debc4b232d504caa810b332255fc806989561919b37f64f3b548fcc811564ddbf4229ea3e4f141b9b1fa599506c20a383b346a51118353172d8a5c621637b9f9914cea039584af2f614b15eaecddadaba4d9d75768a806d2450bae5673d17f5dd8be4dfe5235fb28bd0595421ae675db0739b2c6153d75e69a9e4bd603ac4b4231bf4e97f9d898f1f497851eb74a21b51cb2f9dbea53089529e9c0db8b3df5734ba959b782a18dc62c38aef934624e58dcffe2da38399840b28f0653a4d8295bdda53a440a1fec0f6d7e2e02211efcaca991de36de6a1a850a85c748c2de5f07804fd927fd675d8ac006b73a8f3addd2b4e9a71198cec6a8e1c8bd2b11637ff8d00301521348f87a12fb6cf83bd5fd9d83f525d6707b7152e18945d4c67b6f119beccee8c28c0ade0e1b302da38bc89bffe82d12053eace640a8a6f0787e90452465c5c6d128521c03e9069068ecbd8a05b4ef0324da5228b913b789d41a262ca586fe6948af01d5c9feae994878eade3a98720ef7dd671f0b5edc5adc53132b0717e76195c2aec03497646779ab30a1583fb7387a087e8b0d220777023509aea1adc847699e9b81a5ec5778ed59e91c9524ff9a41fab38643d53c0dbc949b29e0d9572accfbd4a52af1b005e143a784509ed1b5693f967dbc85ee9acef3cc8d0acff58f3e0f919f05dfe7737485789f59825876ec8c01d3322fcdfa91506232ba2ae181183a854074958696dc5a8d0de559b6519a40b87d06d83cf2e8e26fc1431144ed901d8cb3478f07d9f3a409676116b306122b5012e7f00e6a243e0f1e916802231f098886cbf24dfd898940c8d0198c4ca918831d45685199f5c70cd854e4f3e20a1b76729c5080e89061b8cf50714e9d047ac2f8784a0ef1c4e6433bd07c24c0afddd1ea7ebea5aaea9741329b3c1494632f745105793e4476ec018a6a24b71607a7edd55b13497191a4cac97f2c25dc12d78a21e6d85f031319d46a4dbd20f44a92f05461a9f82e42f5d4dbfe8b71c6afafa4166f54a5801ca629688a61a691dbc054f085b0c1195a5f9c3542e3e82959cdee039aff1b6929a88d9f529cec205e368b8237b491f9a197fb4b13d06a71da2c9badb5ca8cad46e953ed8122e279e4905c2a6fab4a8813fafabd1f91feb28511a9e6b3817273ed027b9a1eb8375954c9db62074ba5a5b22c8bcaaaac3560ca6fa9e7428e415411c0b16bf08d767af9b3799e9c24bd22649c681891a4b60bf407c69e34905b41bf55dc6fe7f9bfc00489378b4f40e3d03c6b4b2298ea286c06b40421a6ce6b1d3ffe55a6723543d251f680bdce5257913a635ddf22667cb12d929e543cfb30155f3136d2e2999ea024a77a4f9c1c192126850779e9d7041595fb261a57a4552e61262fd2a94b27eb5c9d6b7c95b4a992aaf3aac682d2d0a9222255b0523bc9d32464bba17f9e0d98483c57d6e10f2e79e51237b0494b3e9163b0366289cb4c91c1ca8b3a0b71cedab3b6c069ed4d8e7410388fd46ad857e944f263b5e6b75254756c5de966bb697a216d47596288419ad5b3de5e9cd5a574a1c4b91c730f10196005235270060a9c6159414568b1b96fffe85e2eeaf72114e3c412db4a7a996d59ec5870e8ed8a06a60ac42d3541f8c1e1785a04ab7a418b49c8387ba4b071b0e02e5c840dd4ab9990c7567ba27c72ce54ef9c04647c1ae180e44a4e58ef1411cb46824397c5a90c810ac2cc21d93c45c91670a0e701ec4f8de6b2a14ad8166a4e283e2463f487303f73186d99c699501c2768187255a449c447b1fe0e616de6fbdc8e306e3a4af39b66b4e8c0fbfd01945cf341a3b3d9e624367554cef7d7af38087f98cdccbcbef374aaeb6649c2b6925141e7a072b9f5f94aa9e614c316737bdc4a0bcf140c2caf26a728f36ddf2d37aff47561b13fdacba9957f2f5f5dd85a86c6c72bc6b75fda1a0b6fc74f3239bfb2383d8e34a03e2144e5b7e628f1f810e58922885ff327ea4bf44328e2675a91944f145bef79b649471bcbd89828323cc02d83752579fc4aa36c41d3fbf7add94bd8a2984b7c6f655280d33715a0529bf2e2b95694f5e2f1a305e3df7abe2d5a30b9e182a16633da478ca155263bc7aac3c2b13ab6d57e552dd092a88ad47030badd63f7a20096f125b94dbef17ebe940e8da6b17ebe95df2f6dc9bb9bb8bbd4d9589d8375b0e5e1f981e9aeee59d6fed87c7faa4146eb423f0451daea97779d513c53cdfca0ca3e5a11040224b553d148f5d08a6aaa7c329553d872dad7863a4b4634e93aa87381244e18bce96665e43f4bb586c54ecaa8756e2559cbdef5de6566a1f57cfcda4931e47e998e2e01dfd3748808f11ae124dabbaa24171b548bf90b3050f4e5b9afa3303a1b5c9272060dbfc20421036991611caaa9e4670e33b216480eae95fb7222d8f4b11e737ba6899cf79901c159df28819e0be544f3d673bc50f62ce1d8ca5ca77a23ef5748fa178a0a39f7a74cab2e7e81d053e8163ab3680ea51a6c64650a2bd902ef94f3d453291eac44ed6a60b544f9f80c96381a400a0d93f9a8ed0d614b1e828f1d056b5daac07544fbc2ec4468a3e85c40d7076b8b24f69305f788529ad45dce8d32b824a945ad38c5b899c5460bac0a7f4468329fa729ac14b94c9795fe96aa61908a9c0b14343bc693ed53e0509fba37e31401735b6516760dd4cd4556e1c2236fc405d9a78dd49d9b5e3a79cdf6551509efe83920bc149a78d23b9e872ccd790d2cc26a97fe062539ad420f773094643183c9fe7078450b8256058ed62afe63d657372161eaca7a70344e85ba5f2004572a37d0859e24f0e8673765eac8d0fd98933a2f2aafc03e8d571d5d8373d34e00a27f961f397f91bb9a7f433d03be13c70b05be46054128f3b04fce128ea58cc9c3137d4d9f476c5129e5041d88d23aaa03cd16fdfe6dd876b16b3f9bc742906344538e81f55509edb4df953f76debae8782fe5bd88bd96467ed60d4802ea7efadb65323fd8169837776334ee8d26227ddd49aca2079b39070c4850771f9e2d85c7f1c972a14df54fb6fda0e5a4f28f6947a62d74c9672868c988075be6766fb5716575eeabf53f2ba90f5cee3d3ac36c92ddf63916d237eac00b91552d59c4d1d6e5e30f79c8868f198e4b1de18d82b7e5e84b883aa05b376a41442c0827899ab0c6d1f233e6324bdce7c6233b95cc55f80df6c7751f9d39afb999487926578d59e366c0738ce310a87ad577370939e9ca47378a20c8699abf1b6aef1388e1aac3484e47693a15cad368f3b63948748d88d6207e1e6a014dd1eb131aa3286f39d64c43839baae9ec886f5c77595474be453e7467f06c9c85160f7f40622e3cf100a60317658798ee4085d5096cf25281d8e090c0c389fb44bc5b0f25096b519a05150f7e903a94be4447dd88cbbf2abfd2cec05a0ba759ac0edbc5b184929ccbb6d16c34dfb08d5446abcef2add645c0dc17d1929acaccbd8b56df93ab7ad2682242ab592272ee5343b19170bccadc265969163d3f69091a7977281618f5909ff6c85acdef2a8593bd9b6ed637d293b49ca160c26ee7b6e9c733e9a0c5f9f7634d54d33f3efda2d18d7f790cc5e76aa6fd9fd1e43659892569cc8b19c9a044e7057d6e367c24646438308f68aab24872fa0a40dcb4528a11fce7636d8ed7aa9b692130c05f5a3889950878e2e0d058169f62002945a69dc369b78033dd08763a0e03d765618bdefbe6726f11167c94f77c8050394b24e90ef9f13505fbd40697f10737fbd54c1b21982bc00cad08ab8de896171ed6bb2ef200676d3822035e0039a47205aa695dd903ad9f73cbf1ca89e8367dc93595da73e0423ededa86e209753c33203b7e75521430d224630b46bc36164ac12b55629452b3a31611c5b242fcf57c9869a4dc9497095ac69246950b1638644195c23806c8846239a0d6849b5b69efe6193e3557aabd93281c4e7ea8fcc4a4bd03cf08313d4f8c22e304d1e24a373a42a91ea1c74ebfcae3e041e4aa94db82b99d15a342aaa17e1341fd67990bfb4739ab7e012b7e9789ebe0fc37338cf38f306f29e80d94d305c6c6d4667a00c25442d17e59d3a4e46950b5cfddb786b2e11c8e2c26dba724eb609089afcd3785b81d34df4876b2647babfb68a7100445b8f4e3a71a9525a56d210d98cad211ea3c61b57153eef5ea73ad979cd643346f88aa9771114bec9cab993fdc4624f74ee578aba386f1ba4b569e0c57c162e5b27c302f1d9f43f995cc32cf4242b976fc3b6c0c2415bef2076978c2f4e7d928a8d08ddd4e5ac23c9924e227354c43f79429ccaf8e8ec4f6825f9abf2cd035bb13f071d0412b0a5995c9a14da60c4e2b60fbbc1aa812248f4953ab02ca6eb75e494a265254beea130202d42a4fa1fd9bda140ffe77c22b4f8b5910a9a0168509c706b506164679c6b385c384a89283afa804a406620653b83db80f93a17d01f232ec2d4f05d3970ff5ea64de33be4fbe9ea2df039f5ea4c34089c148c2f56c7c69b4527ac240929a3168218130b0f4d982f9a61ca32e28c629fd495f830b32d850b190dfaea36a4d8e5c7881ec39e1858edbc2127564dcaecf1d9218ffee63a08d07a63af88c2396b34f86f20384e2c1979fcfd7842e10136e86cc813e8e0fcf291957cc98013a28f3f42ed523838c3d239a101e7825688e79497d66c2ea39fa96a0b59933d7acdaf8e63bb620f3b23732d180830fc0039c3dcea4609f2228a8dd76e452cd06f30ce8b9e0df5d78ab50717ad9cd1e9c0526d9fd57ef689104287dee4065e770ae569ff49b2395b070ff43812fb7de6bb067dfd51246cfa94919373666b303ad0f2a102f8b0ee7fd44d809741f0456620499c84d74355db641894be38717f853dd1acb0976804804d13dac19b698717680e2c66f37461448908bc08212d4178b0db13878a33bed8c5ef7df8efbec3daf89696bfcd8544a231aa1726f920e8e361456010cdc2c800e04f3cb6346d030058af7d5cd6e19c1c0fbe0c39d34512245f1d514f723ee5bae78544296f5bfa989421fa17b1143cf88e208409e93105304d31d477c2afaaa81ea4bfb386758049b6ca9796bcf28f0954d7a71a523cf491be2899c23edef787dd7f78eb5b752b51c516dd37c110f929650138d73fb53c619f932ab05f1d47534eef1c41b2c8a1c2f9dd290114fa5082d8835e1ef2cfe7c4ac23aeaf5fb3f8bcf5e30170e9a8dd29a8c37b6f5947f087aed8d33d177bebc61cd1b9fcc1f8b0ffb5d479f2aa34bb42e5db97e9f941d7f1dec38a3c8e4f437babf03ff8ae1f069cfae84a4055db3b28960d36345c79a00640fb2b7b4f895362bedd42350af579539986caba11692b0e61e3778c45dd048379d1dd67f9f42c69f966f55f2a894780f5d76223ee8767d7246dd6cdf7a81ff42d5ab0c6922ea952a45d5fa06f76440be34c341a6a5edfe83942c283b79a9d262ebd31f21ff4268ff9302f1f3a1fb54bfdf5823089fb7914be24c2cb385ca13c8bfa9df5e853d884f4383dfb372b85e01e8ea5791fc1805bb388ce3b4d882a64a28de38b64ec1cce22100fa13eb87a38be022c2623df238e47f87118907a6ab9e4734dc8f3920962c528821b5731e3f9454a543170dc3bb63eac8ec906997500c9f9121c196f881dcec93c7bf76e4f627a88af4f3ab72e5fd315cb32b05bc79e8d5e233e671a70bdedfda98d110cd47c3ff832984098b84765202791e40a6db68170f192080d8404fe2c93fa6413513951570530277339580e9dfab3afd7a3d32d6b010f77c64acda48e8b8c49ce1db39fa550dde2ef0478f57a5766cd554b35305af1590b68e558982595f9aa26567b222726e36482aef1d751a3bbfe22a83976626fc9df2cffc95a038123e0526c810321a97b35442409409a52a1f7b43ccbf034c97df00a7bc967a289f6684d52dd20997c992f9d836f8665c2c48fa3cd2b84f2f6a84499c8173f7aad2c020d27bfb84d942425977c91a5c22be1bdf555ff065b2f4ff0b2e9583a24b7715e530d7e21fa10ac34e459d2beac3cad599e3b3478db64fa4bc677d4981ffa48f8b17b69e8b2fdde6df9d84cf6ba4c85b5155434644fffbec659940da573192ec3a4674d85c8a45b5b982cd5de104ce30de468244d2acf35f99a4142561f3b0703f5df9254f42961adf9c0f7ca06cc6e7256defd195e04d4741defaf5c1cb601eacc7dd342608d5acb577f9b46a152083768fa6c959b4572795dd8cce98048fb08705c2c0e59c465dbb68e7bf9eb420f1cc0599c94098a10ba135e6835331a77eda2e8a743991637fea8f9997e116ce9ea8703b64be033170b82d01260345d92ce7b2be27ef9600544b88e9c3c89b0d04294d15f923fd2b95337ac2ed0f5ffe516f5fd5d011a05fa370ef6fdb3ca0f8ddc395b01a63a670c13f711be25c04c13cbc53d64251414c43f7b51a302b4c24dd92f328b08bc345a32cdd549e30bffe1000c4f1b7a10c9367ae345eb3c24b3ff1561cf6c7ca4ede3d92b00b8856222af9109b291096d3d066566137a6ba3905f3758ac707ea02a173a2ba1c6e259c48f0ae53a6b640bb3b710679ef30ec9b1ee7bbbd051efa2c3f1b13f537fc1c1f5b1b88d1e58403b9e870109016e62185724dc1e988bf7ff8d0c2616ee274b8a0256bf6db9b25aee5c4c6a4a31a926e95be0a0871fc6f52c8bdb5045fcefee324373f095d8026e30d361805aa5d8c81efb84567673e185c48bff26d19d22e7afe29a5e02dcd4419d8d5973625df0e7314322724e86793cd29f6938718521ce50991946a27dc8a9239a5a402704a9ab9a66e4204e90bb0707ed4f46120ba96c401f0de4ca09035b7e129f8f638a301c8206c16b5ac312345fb710038b20b35c5b8624b1a22875aaac186bef62d0cb06b170823c14b567fe5081124b9b06202e665aae67b6ecb4c5b1d25ca147ace5425c441ce8c7e7a0d05419f112f2fe61eb2c384e426863bc378756cd571ce149324be97f7a0bd1f832cc89d0156881cfba927bab90885307e09278ff9190dcd007dcf9e0e0f7cefe654f371088b14c42a74fa046e448414ce5c89c414ac0da3e2d96ffdbb95a5483bc1a2ad11a59533a5c907357748e345a97eb9df857c4863971c52e004dc54061a6162630dca4368dd2890e34432863f656b72ea8ebbb4c98d43c8b0577c3f23e3348090b7ae5b5a328204bcb5a3ce7d556a1da79bba12a2bb1909440a2f880dc1949cb452406e9df8147e940dc5aa2ec526f639c57a82d2725925841f63f956ac484a857889d9c7dbcc880d9c80bf38548fb4ae7a8e0bd7a51b1b1aa6abbb379b2bdef284685e3fc71440afa6732516c52d75ec114d1664a480b848783e09f08e5b6508260813a17d1c555b868bdb4dc2bb1b17e2ecc6dc4e27249b8c2a5d20dd189436da50a9b8a43b278241cb539cab2298ad2050b6020632a7036cac4f50ff52fd9c4da5d61dc0458d8bb03559a619e2be600ad2e80718c92b0bf60d4bb3c0769957be36cf2d21657731cacaa11e755b0ee04192b967078d5cbe5913ef1fad6a5a7054c2b614a62a913b421a79c586256daeaae7371c27a8a6c0c583d7d6ccafe7ad346a5de43da4e978d0b35ab2b5121bb98300646383026b6029d61cddb528709acd0e19548a12810f1e095c202b54d6c8ae9942395b5279b4818bbcb41cca4abc6871caca1d82ff4e5fdc01e53aa6612fcd22935be867c0af58da714839fed8c4d1e5a78e1373d965ba3333b68183383b27a67490a00e9e7ba27b8a2033503436a2b4bf866f8ead0e5547d8744099473fa89ca36a4a12fe198851382ab6c68911be21ad678b2f0f809508813638bd48c7aeadaf733ff444381fc44e77a2afc069c774f22ea666c403229977f453e88ba0297a40359e0e474b01b3ba7577f16c058a704d55636b5f9d47b56ce119a8de623b98a02f0c4654eeedb526e966bc5cc77bfe509f3a3ec2adc5c4ba517e7f691c6e3095e034848a4f3efe94a0ea66c568a70d6f8d28764a578b583b777029ae44b7e03b339ab92cf82e510264670d524dc777097992d8e9a5c49b2b189a8002cfd9843a884091428fb368c0fffa9dbed1fdc6d4422cb0e6a8a2643ac33d1b50e6722f49714d98109a8923e365815412971c8233a14839714393bfd7208d9e4905ffdee9a2cb0ae2ae1a5bd944b10120e2450d99f5287991d797ef3d45e45e6c68fcd1a2c791b81397b663ae22830018358e6270d5af338a8212cb9bf058d9d77737d901d79d20f4e8c1230ab3231c038495bbee4f79a54f8face7077ba2f97b0dac022f5195cdd21ef5a77be99c3d4b116fa6638050f411fa7745cf7898321b2ab1865810930f5dc85e65b387c6da1c69cd762d6ed52d6fc064d71c682960b400d378d95ae54eedf84327666bfb87748b87489785842072b255a7572beb148c6b9b241656dc2ed7d1150e244c840d4fce929ce7ebcf031e99e3ec0e12aab3f9ca4e632f32cd56e2d64bfc62e823edca92e2227a172fe4d20550c0be64e4d3535b145cbb234f49c2b7ef2c8b7517df744cea2950657dcff76a318461e8ed55bacd03437acf2ffec144ee7633c42f8878d04c4b864fa4b738833650f7b51d30b5bd8e9e3269c70fe571715f3dafffa95e5cc60af0b711384899fd81ff354e7c7045b19e17b83ee5f5178e1a596ded783202d5479ffc9c4ce92e1969294b4df036448a2063664201c2039bd0393b6efc235e93c5b410caf8c012a9bfe1ab163671889f696005026ce331dd60868aaf797b126360b29ca02592ac0526bd1ae6b753b6c9c24c4ac746eff1c207468a1d97cab0d9d5d3cbdbb6c012bc8e927c0dd71993c785320a240fbde9de006bd2600e7af30afb71fab84bc8b355c1683d9d1dff0fd0b609cfe54d8d21df08d5ede3840bd1156e7c36b83d6b3e86c840fa111bdc8a8588a3a4a3426cf32777b6fc1229912a6ac76098c4ae71e763316f72ce2bf3028d91f400d767b122e5cb8dcb42975e2e246bd44161ab607834832e4b7a20b157798a1b8976951f8447ea7b51df85900e136cfb585a54949cbee576d641806a3632d8a87c645a7e676de879d591be982520d62748372315218a7c3ab483422fccd4bc4d0e56ca092f7533bdcbbc14c32b0c54734de41b79259b32c5b99dbe923bc2ec9441babd0378b77ab7fed461b4c3b3086b84249a2958fe7a465b0be3dcdee2d436584e1b8ea0e16c16a1c9422c87f9192c550283fd246cf302d0c9b1291bce4c5a327ae228878b01a7abb747612aba457969a5b9d2e893274d79a5d4c35faa962951afdd6c51ac4936e6afceb62617ce007ad0452c53dc76257a390d342555815555f5768dc45e57178cdb53f95a46a249ef787c7996c08ff98e8303d2b655d87685e3aa6c1a8e9f9f0a90a57b20a9e80d2028c1ce799032534239ecc8a1e2074c179fe369d3a4996f5f2f64aaaf38923dbd7e16d20be2fa3a6afd3a28440595c2618f50a85062262e897cdd6f9af2b1eff3099a2b7f092b894e5be80a050a138d39873b0b1f18bdba45c0a811bf3df96acc7f701c518a69b65b19ba5322e13e609865b2eeb17726baa4f75ba00e954168ee4932397d1eb019359da1d5327b3530644c85636115ee6402662a3f30d6c5d253267e21fd2e7a089a01fd42b57fd2da65baf07e058bae1d4c6727a78ce70df651aea5106a1d856f05f4c018f3c1f8743e2d06f749864d1da37b5b9172e523f5ee8b82dbdc10ea33ce3bf90d9f670a6ab5c3fcad8186bc0ebe8dafecec7e905e74ed640ae921ce92fd43973c159350cc82bac897f3e171451cf9b8dbf066adf0df0bfb1b546c25ab67831b534b2526101df0bd0478a7970e5bdd8850b607345377bb75bf216902d2d6228064640525480b791c268e66e1aa1dd804428db3dbb765968f47679c3a6c8e90d1d4f9d51da483488fb3a9583fd468ebfdc6961a6109c4713dd3a871f1fb335945aaad129fd791b2ce2647f99a807f1a25a44ba337127993ad3fe37921893969a8ca970144d63c37121900f9c0c4b10e4291d587352f2053923d7832b8aea5cc2a18902310e9a4804b213a8c90a9eb1f31ca533bc47787705831c67a1705c56115ee9129a1fc09a6e50c5ef189aa2ad142f56338dcbf864a8b599a9fe48f9c8928916bb1a332366093463d8d1abfda0a0dfe79c8dca693691e52d5fb0469348305fb34d8f67728d4565db993edefe6b47ff42b491b6161078d7b22c70668052017849b885882b28b9d1cf595e92ec4c18a2b424cbf9ed26ac0324ff718d6e03e9a78b2e6cfc44c6880ec969a11785168c7eaa45f7313ae5544ac3bf5cc33103d27f73a915f138366419e6de7f4c988b20be7e7d231e2b4483f1d28c67f86e11cfd14e6aa5e3ec232c7778d5d9c926f4c0722267c663446a0acbd6cccd7f16b97628e7e47887b429e203e36f996fc47bec5c2e678c1682b7fdcd0e85841b97a8e02ad2f7356b829a9a75245e02f3565945c487db99f2aa56c18f993649d49c63d3151fbdb8864df15c46ad0ad610aa1469e199c5b657071be67660722a6b754fc23de86181acbe89c1c308b6b99a5e7ddc9ff86dcd1c4729503cd09b7564a8b2fb9e799dd208b086ae0a03dcc05a6e18bdb04c898068d48881948a67b20e3ce800159f2df39828a8f8b682492092e8031f8cb3e2a1da17cbccf0e1bc7fb1aae08cad8dce20a09f3fb218903507a3f859268c9bd2bb9757bc897cfcc91efb2c9b6e93cc58f8f8ace82f152f4d7cc453f22d91e9e81a29ffbb2aca0874dad5ce88ba8d44289e3538b17c61ff03a5f38109f0c6e01155ac0fb178d0400ff489a2062509d0b9447d18d94e0c9af8b977df930e9e679648da4064f1636f254d268bc77e368ff0b17d5b9cffde9962f185a17315ec7f3379600322078914205aa92b686ddcddf55a5eccf8d50e37d74c247f2c7ec737dcf9e96876b1951038a773781980d6f26edcd8faa8d97b22927e879d85460619d762f8241b811710fb6099ca09c31b5afea3b7938bbac4de413b62c08c4a42556b50a56dc53cd3c507729a24d0500e18ca34d24acc12074c26f45f170fcac97953308a9be583e501bbe7b70f8160ff89e1e56feed3fbeecc72054009623f2f5e6c0f9f6ca0d442da16e579175f7bed786e76e91c3c97795baa1d01fc3a15ef00819f69fee2ab07d784a3626a14825369872ecc1867d1c6fe7cc1aa6bc5a0ec4a168880bccc08057ec0eb87d4c08204657fea74d19310b80dc9ac38b1a4420d4164beba34b72c3dd782a03705ecd7671072cbf9a817469dcd2ab5c00efd71e01735f4e29fa1b0201c513509b616213116090ce4d9228085f2e75555bc6e7a780903c94f4e544823928067a8b5a29bd3f113c1bdf8c41b850aefe568046df2e041531f42e6f8c597b4e9421cedbb43117857b16ee4b00e9221ee24886e85089817decd2bb04324d936eb0780913c09004f2938591790ae29c143ee9a95bfdd8480be4f6245370b73b93991b538f031346f9e812dda065a1db8cc0ec1838182529f525f3c176ee14585d31551a882e9677746503fa9000dc59322f69fd8817de6100688abc017f90463e1f9f1c95f8822246e77e95d00e49c10bb50bc1dd9a2d9dfa4a4c0f81a156d3e56a977c07c3983f9901f26857fe672c431b224ea35e79d20f76d3ab36187be184fdc70bc18e397f49745c6698c37c7ea763c23916aa080588c132095fae096b67a1a717d08ec03e61827c3181fba6f595c626e5591a40f45b9732e79862f3f1745dc0a17dccbee6e4a9ac554bbfc844af16f8d54cdfd10137b0524f54c37e013ceb488ce1683ac3196de01fc6ebd155362dc96fd8066418c8ad02f83b5a7eb097da5d0fc9e36a0166701bd6ee903a7d58f17d8c45e6931b6889eae8b194a157de2af8240ad0e25e747fae51b8b66d502fa93a9f6bef3122796936b2c069107b70d02b6e5b67a618ea8cddcecde295b390f4097ab9f4854b9ac89582117f966c3ec38cce5842ea12b0a505f9697655e6acf6d36508077a17beff713a0bd7db67f6eb9995ca8f1fcfb5bc0e41972e953c825226520a241ce19f505224786ef5c9fd1fde5b3d6f689166569857c4788454f598b0ada6cd7a9d7d6723b2c28bcd723f1389c34a926d32bb40f7c1fff039eb4921dd1c755f11fd3c978909e1d9186b6641970100c8b109f87688e6f881e35e0f554f5fd3b7db9b03031fceadf0d547abcfaa5177aa1d0d37bf1669cf4c9aedc38837324e8c038673ce556579babc47cbe4fa31367ff06aba9248d03db1541f6777404afaeeaadc90f63195a3f0f2d40fc4be28ab55b35f4cefaacb0cf7114cd022a5ab2270da39580f1d4c9739e692271f1fcad7d45c193c88160531e9b5cc2c37b8f2f4f56f4132116889b58023636c3688d346803189a24470083c391bdd091a3806e41838740ab54b9fc7f0fcac62478254917b74817596d9993d19365362249799ddfd1212f5f8b6f561251e8a071242416e7b847ecd99cb4eddc043a459da61bd43ecc8ac8ccb3790276946f2bb781a2e9bcb2b785b9a2c15bd903f2ce21483fec65a22c441ce5701e6b52f09187db31f7b86561b483393ef8234f4ab25aa47a6cc975453c7f59d054d8a929bbe338aee88e81b77f357e90c58ebe218e3a5dadef3f649881e40f2605730d7ac8b93b027470cb2e3265e5180be039415c7db136443dce1fa1d1e55e034870f19769918a4d1eadfc34bf6100420e8b90dbed504e005290ebc56af8a09abb991ca0ffcee595e8b298398eed7e17c88a213bc2fba4b0c422e3758d4225b88f74cff52925d597c4d7ca23bb4dfc1c516a061da2600f5a0fbb7103534a9b05b561e813d145d78e035dd01fc59d6daafe3c9aa72180822832453d651378143267ebd6b96696382c082c0d1d280893a76f6c20eef586d0e56a09aa7600f4b65de665d8404e720adb3f4b05899d9df63f8ce8a9edfc1ec54670a9ed457dd10b2b2890ac781968a57b497ddea94a8af940e5716283008cdc90bb829918d471c482e21cca52b22e410c22887f309899843d9d647eb0c97caf0d5bdcf04c1b14e6f892cc0b0a04ec8746bbde11adb5ef46ec70a02a77aaac76a87eeab9728424ce7283c74fd4ebbfe5e7b87bdf455c3dc854682980b8851b2b6944afe29939017c04eb89b26b950b6fdc057ab4c85688b43077abbfa36eb75dad199d0e71ac6161b291381d62419140db20e8988b720e73e3106f0590db7043f7ef3208a7bdef03cf29107da3ac3c5f730e4f7fa02b9c3308042d0bf128c539823e08286623860599b5de4eef666bb0dc7e8e27994d1bfc6573913b8b06e7ac6432b2e2862b9a72e36a4cdc700c4ca56ef84deb4342048df0aa9c58ad4962558e79f0c7fcf76023beb8e1e2eec758235044703d6076a1a0b795b38e9113e731693b0805e199871f09629215c8d2f9d48e5a8ef619daf56e53dacc3ea5b41c129b6dc28c908164e3e416df43069a9e1c324ecf821458734f9841c67c57165e3a7a8ce52f340a71d3127bf531e04ea4be3e1d71172be97f6baf9b8f83b551d80f5d60a3bab97c2990bf083a90f5ac6be6cbc5ffcb6ecfcbba0e27492f813719909d10878243d32d8ab21f8aaef34b225ddff40e2562a5b42d121d25f95111dc076ae5d0e03941bc85f05a2ea7889667a4f5cf2fc9cfd3b003a115424918fb035a906f5c00dcda70650d50e930c18d8a181e12b9b6e3797d7fae0b32c0c003be2a78118287d3906e07510e86680ad7c8bfa864bdbd30275b405f458d8a293f6ad1f239e10ac49409eade5ca021155ad410543848476fc1f9c7bc1f32f1319f6ea6807c1dd29b68a85bce3e9309d3f693482c0b1438ad44a4ff7b57adb10ee0451c395529b392237b7dff2e7984a4c701da0fcd7835a07f12486f370c18d271fc99322dde5a15fee85b742cca29476bc1c3b6d981232fc2f11364bfc46cd61ea452bec73a9282b9178daa35eeda76fa615aebcb7b091dd04266b83eb24d609bf607f6dfd93ef4be071220578c29fbee4182080a7946f0f425f9c0f4273fb921cf463d04bba8df113831a5ee427de4ad023fc007b0a25c9a1a77a65af1c83b470fe20d3f571d08e7f928d0d41f240a9d88032e3084eda8046c49eecea2377367f15164c29bf7911c7718286f491ece19d03574d24573cb34097e1430e8a46190ba58cbf538931d1ee37705d58fa50f47cba8f63b4a9d4e37d480897b4b8c93e4e345ce31c4bca7b4123b94f8ce9913d9e0851d1564c1f4a1d4a7a377c765e0dc871b2f6da0a9e09195f6613c92faabcf1433aada72966442fde515fd3e4a0ad53adbd4f3fc83ccec7a46f33aedd57cc528cd3b56edde8c451eef69ed4eca2377c40b574733dcb4efc2542e21eba41a3c95170702a9f4c5aed0c9845d4f294367679b7a16437a99dd99fff5897a049b7b1938deff76112547dad4de6fd415b028f0f65286c13a2442c9dde11cfa2a38c6e1dbf98a66bd863195a056fd7be54fb7e5908177a1bbd0953bc05a84d71bd70644f1b6505a8a0972df4d4ac2592dbea31847db6affa9600703606ae3a710607e7f132a2b7d31ff945ca057aac03cc1c16e82133a5aeaa96584e1d554a7ce5991e8dc7f5b21ad45100ce9170bcc713152c7678aeeff24d84b8dac577b38018951e40d51c73b43396ef961db38d3667ec58b303712fc8b8ffedcb7f08b6f116b66aa706cce1798fa5484f989b5e016bb18e3a1cd3e8e7492b4e4303833b12b1c63bcede8d96a1b16c02929ea4d1d9e008e9a1e0d52ac2f3f78493c8a8d0d63dd56a27f8377f55e10e7ece55a943154084ec1d37a4e54b9fb9c07c84fc74a127c966b5388434356f9d4145bd45fe2b5c14d1f0e1c5b8e7ddec96ad3cc3ced99bf2a9b0f94553048c0424b15a5066d2410ea5e434a6edf49abf3dfdc960d6dd0fda4d9a4db0902cabbac5e8238080b1256991eb880e5d1e10342befe09845928d46cc0123302003766f9374cc14e072088ae0b4c7df3876221c2d00832f8803ac81aef432d6167ac5a817d90252033fabadd885a1bbf336e6ca60fd22b7b02b1634a3d576268c1cec0fc9280476bea146002a4421e91d4f0542f212a795f5893942f4bb362531cb9dc29ee293aad71f7c692dae71f32dc8da90c7ef8c13392aab98a53885959f2a53b0e78743d9393cec4ac2a7fc5923c097812b8002208ccbc79da70d4363529da65929eb320e6630f5c52de36b3111963fc2437586f53cd96bf7c1cee40138f285e877108424fec02e7e4907199084f028ce98bf2e209854b440138b1a29fa3b3f027da4195c86430f30b7269121099d069846b87e845e34a37c443307a70dd24e0fe6f8dd4b501aafbe034545056da74962607cdb312374e58a8e00220805136fc0b867dab81307abee02bb8545031c56d00dc58b2015bb0089e1de228000c05002499e5abb45fde178cd2e31238d579b6d4a13f69b33eba04ed9d5292524a1947036503f502d886bb7b075660e3580344c50949105f56aa86c874c93de94283aa0a75d9967372bebc00a698a67e18939886f11213cb92fbee0e73c39ea16ec81b16b9adbbbbfbe8856c8b22124fe3ff9f07fd91a18b0fe10f367c7d51f9e2b9c0bad4a2f7ed65dc9bc996865048c3a310123f5f7eb874181c5181ba08f15463d844533efa3bc2cbc900ecb062a2844954b6e59c9c7f888b185db6e59c9cc75cf9efeeee3e130ae2aafc8cfb34b84aa96709999a2f462cbe1c89deeeee8e63388ebecbaa322528e486f5f496d2b164eba486b08986ff7f3e3969016f5a65b260a960f636c5ffcfffff544d8581d0f4f837574af536997e51522caea81ef7fffffdffffefabfdffffffe8a38d1832c2e87f966a572e97cb7133a180f8591216e572b91d2d2c2714af27b4c24d2a5254d8dddd5dc8ffffff85ee3096f5340457dd05af7846d757a5ced4dbe4b1f283adecc84cb3b4b2be80bcaae7ee5cd40cd553050ae1abb2aa504a8c80166875b95c4ec70496f3f7e30c502684140b12fd7affffff8e3d960311b0f28344a81b39d1dd7d4958e917889f1e1aae59aa091eed02d8d929bd09eb86171fae3ef13cfd3ced9e869e8c9e8e1e97698ce3388ee37d52faa72adfcc8fabe6f82283f2ec6d8a3568b22de7e4fc936d3927fb1cdd2851523338c455077f3f00a07c439ea993abaf9e5c45ff3f9fd2140d7f30896918ffffff37e1d04551117eb150e26a02044a170e5b767cf97277efa9b7a9e361f2474bb43996ec6d8a74f8f33fd37c09b28397234a5846831f63041604071b1b130bd1d1ad6103b67377f7f5ea6dfa3cf02db9f3a02bb886eedeb48be123871087d40e915717eb2565cc0f0b5d8e2851f5433029c976f92015236268a7785345533dd2ddc3ea17d3d551af0ce1a076f2e315ed4c7172a02a5dbdf33d5bd99673f22f293fe3c4dcfc7959eae5e46ccb3939ffffff53a79c538f16d2c8979133493c493f49bba4a124a31a1fefee2cd2babbdb8323c07b7be97fe7bcd9ab565142ea13d3ea69f9b496de9d2e8d3ba2b7bbbb2701eb6d0a470f9286e3e8ce238cf2aa2f97cbe1989457ce27193b9e4d54d5ffff3f26310de31ad3491429777731bd71ec209f574db1272c518ebd839e9cca07204b2a8b2aebeadd7d14f1440a7d02e3037611a308ad931e47a5fb8d72c203523827032023eaf7c4e4c89316de129b464824f4618d6316ea3d644fa24c5962450851984513c54a900b95a4b3c2b2c25c2ed7a36295f3e74313d64d105ed3440f7777f78c6b2313c8c483c18e6a230ac90369a000d59f96aaffbf5384cd73def5e5723920325e39833d259ef823a7038a171f7a8872636b892e486268970536f9e532342b38ccc14a19d6dbacda400a5693eeeeeeffffffffffff3aaf1ca2b7bbbb8f411d455daf6b2af283a356acf0469a95a1bbbbfbb803c6e9dbf09201e565c356d9db14ffff9fb87698c4348cfdffffdfc70419e18eaa9ec1654b10a93448c020a133444d444e6c4248047d38307426380677b52cd5dbd4d224e2fff7f1101ac7711c7d18d5db3c5262fa454979073ea8dc4777f7a713b48b54d58faaabf2a69dada154beb885840ba9e5c54a94024d4848e476d0a105c797ce2a1165cccc22c424a6615c6bb205250410dfc24244500245f40b104895ad2ae78f89a72ac8a6c500531008d10c233e3f7c7189bddda4da91db9b96bbbb8974110143ca21f520e9907838df2b3d3b53535059513e38653143e6ff1f09abde6617074860e4edb9bb2f8da3bbbb3b969af777aba37a9b4a4ccdc2ea97ffffff33ae938466cc10bddddd7dfc8de929dddb6b37b4b98275a5eb0a180fdf023e685730379d8c91faff2198c4348c7fc67f0243c06a0883ecba00a1c187951f868358848f45114b3f3f3d779f505d454253a66ef88c40d2ab92a5818395de8585fbffaf719204acfc1f7b8888ddccf53cb055735b882815de2e4bed4a800bccd4525d21d56b343c8ee8b0ba70d50cff719f047104f4210f19948c9e5cebfeffff3b97cbe57ab3da544e60d6971876e41e2307253e42ae254e598034f0325b4d843cd3574e479da431c2023a94afc7834201620973b99c8d9fc1202096d30816198232a394dddd8d0ceb6d56617960a4eb3dc94be93e37a224824a273a60026c4c621ac6f797044bb6e3f3c3ced01d6d7177dff1d4dbfcd90d8d2b7646b626540cd40df66785cadddd1d57931b8976d446d51cfe7f0eff5084f349d5cfba8fbb90d5cfea4906b212f2fcd7c60ea6f076c0117585c4c40cea1f1d478d25de5012e614930125ac8a0b7b429f10d00044966e72d0807e6c2509b3b4242a896118d1dbddddc7afafd2bda3f440813b3c4e70c0c224a661fc3c2158b6e59c9c6742e8902d16180d7f50123a4c621a0e1d41d90d949d75b2a7f860da6cae4d9c69812c77c673ccdd99ce141e549b08f6d642cf073305ad316d3693e40cfbd8825581e7ad8668bb44b05914a9ceda980ed539c560e2b21ace44d1b1da5de17efdbadb3723963736139751c8381c4eac966bbabb534a9b8a948a3ec5f9de5947f6c2de04586af789596a93d8b295c56238cd658a98ac816fbe22ae2a949d2f396ba2ed440fdbbc62a524595ecb3529a5ee9452f776774a29b5a2f862bb67d1f35770e553867372acc44411635a7965e525ad88d190d68a4fca2e9965b86b77b7c8296fbcdc5294e14a737278e09a919c16b88b9671671fd4d26b2401e2bc751ebb05f185686374b54062f4d215f6fd0c768fd58cedb19675edae10bf46bbdaba368df0d1d9b869c2cb7f9b9e590e008771edc666b42a6635db3571cca50ba730b8d77063bced292c9265774c66b3a121c3c9f386e7ad730dcec42d609badab3572e37d65b769bd6de9ec662cb4d64a6be3167d466ba498e98c05852a6f16fbf6bd5e7deb3553bb29a5b59dd6f095cd3beb5a0876ec4e83bbbbb39869e76f165d935dea75ef6c454d71c95b5d5ccf5e83e1967dcba16981e78ef5c55934e2ad5d9b207c3debc85ed89bcd37534a6977f7a4945e1d5ad95d13718b596b9f60a5ad134c9c601de576eb1c50b64c05fed9d860338bd588bf52cc29c5f17acf707ff777b5623477cfd4b1c597247fc4a40e2e69383564cfa2e77b2f8b5b93796dce6ccd8d6924adedcb2e5382566f36c7622f9bb30e68aef75e4a29bd382ed8345ec34630cd19583b5b0182d82d64e5edbb822c17d56b79c239b315948d2b1b5b1b9cbdb598c0f23f0cff67306f9d713d93c5ba51c8e5044ea0f072fd2c848b5363a2bcf78e0a949d1f735063459852d0d6690b5c59ce59e3ca5bab6a7b836e67510971da5c56fa0ce5bd3316b7bc620bd95d4186eb557badadc516e7a63074796bd7da1fe394a22a06284658a4ea10521ae1ec13af479793dddddd67940e93988631067305460bcc978f87e8edeeee23f0cc55e97e7fc8f83acb8783c0e8ee2f0c6ce752a238901202e4bcfebfca5e92b414096badb5b5db4e629512a96654d30564cd3cf55669ce4c170a55b6a9a90987948acddaa473d249e7bcf6eddbb7b47b69cd81bd1060a7569d09b6748be4dca2ec2cde4a2b992f7ec22d68b426e25c699550ab78ef04743453ebf41cfc00cdda0c2af532385c4e1ed1202192e465abc7d4ad2185e5c6494d112054469226b19f5a151e90303d9437060fcf983237c0d0eca82e8d60181f2ee71850ce6098a0d2cb190ce353ea649cc894c295982b3d1c479250727d86bca85992c0e0c1c324e40c940e404c7abed0289286cc0fca8846151eee0c1856083b048e1f7610e1c1c9072d36ae0c18b5884dc79121a0f04710ccc5e185a501c3eaf02a2a28697f775428a594d2f186dffa02b5c55546bcc12ea34a06bb7eca00ca193c222cc8093d1879ba31e4cb105c97e7450ca51d3ce4d8e1b14169c6dd8141850d78f9020cc3e5072be1bda1c8110c0462a8d92413b0f0c04815e12585c5069c1d52e7112210536ff7e6c135e50c7229296f2dc88524cb39089433c875a3bc296790eb865227e3c2d46625f202698958b130650ad381c4cb962720ba72b839182b14480081030c28800072801302d00200c004beb199c96235a3f813c54431514c1413c544317998b5396f5aa6edee6cadb5b3f635e79c96869838538833cf2a5be179cc624d71e71cc55a67ebd0bef3855bbab85548cc5a6b2db53078bbdffb7ecbbef75eda79deae8937c5a517cbed6deaf4929352516babf5d57cb18cd680ccff3c45b1522eb14b694de7b338fffe671f2749c5dad75b83d2bf54ccbc3e0246c2ef909be912cdf566602de56aed9d40aab5a8bdb2e65bbb4c5059d2a94bb5577b55b64c1791b7d6a2027fba0e29bdf7de5babb94505926035f89a6db2b7317538acc00aec22dbe5dd6dbb3b57fffff62ebd669b28c2e8928a9aa75bbf364665d7d6eaa296158a04617556d13bdb1a6dca6a518681d5bdd63c67eddab52bc5d3023a693b73de70d065d798a1b4d268ed35ddefbd38deee6e4f10d9fade9e28bedf29b65f4adb85493b21e4f67571cbeb136b17adb479521f90671ddabdb79b6c5f4a7dd4d71524cac41904e5bd9517a7bca40e99c105363632b02a4eb0373b2365648cac19ce26143617c0c374da74e696f705f7021d190bca9367a8d42e7a7c460310080243180008180002511c88d23c0962a8c70714000940563e6a543e1c0d47e58138240e87c180301006601006001084e2200683c0102ddd1367a2b913948f636dcda5d0fd1830e2680d9785355e68118763ed52f712ce0deb23864dc7d030a7e3ddaba5fd74281e6d17417f9912a6b57901d6fdc0ae423b62db8e9d107f7a156d7001edbc4f257176cc0d1c74ce6ee493069a207b1fa40803da31ebd99705003ac6910fc0086d4dccd5ef26feb315cc7fadfd2f10716b014bffe84d41617e919b7a3bb5b351d23cdc425aa09b48c32132f4c6983b08772dbf5b597a6a4f71f767f4e48a856dec89b591dda2aa311e68764ff1b93b2fa45e4feeeb627a6f760d1bf6b531936b31fbcdb0f8d9cf9b241c8766fa951dfc492a91d3f8d890492be351582f67f394d124e0a0a3117736e3cb2cc5afb3f1a0d8db4092d1a01f6c9027cf0bf68ab5cd004936ccaa8393f16589bef94b2a704236c6aacc9bbcebb8a0e2ced04988550dca24e57d0a9195c234e684199d0b3113f1019620e66563cea10b39c1bd6803241a3cf7a6a716deb67fc08fa984f821d78152ccea6d82f78b77508dc1cbe954cc5ae8fd482bd6b8bc93af751866aa1334b9ac10b8b9064546afe06de91583e28a0dad9d0a76b74c8921eee721386d120282d6bb4bb64712052e5d8d93a506f3be822c9ca6834ea39d329bb82ab4f134961d363118d4b7267f12440cc27a562878ba1ee8a32555cb55b75ae6527414591511cf4dc44476d35d5cc525f9f1ca3bcb49e5fe445f2df30ac55e56992f24101c8d5bba5f7bb0a3e5bb8cc0e6cb306b4b31279b795fb31c8456f3dca8859da3f71b968e7ec6938e86599c1bc2ee489615612be702d7b9f75fa8dec9941a8519176e785dacb883a6098ce8a2e894c41f617471469762d93a4dd2c9af3a8b57fb24fac27a2e86132d234e4b9cc036143a677db1abe8cf453fd9290f28afae042e73993a382c72892c01d5ed24ef991a0da37f05840c12a55098bbfd04c03fabcea5f4df7eb4f3e6863df23bbe383a2c8fd7bafe49cf084d8957e7a45eafe33eb0d980b3373e4d7abc1caebf2fd8c95ed14a2bb460d418880ffb8963e1706c7b50817ff182cbe7e0cb1ffd93a676709f3f19dc2e735381183aceaad7894a67c348f90210af87ada24b08973ebf5b6495590c9b4eb4076b515768b3e615fad0f6545e8b431825d96bb1bc9e616558e1431a0f740f87013bbf3e3aba18c3427c9ff6c94c4958e501d77bbd3306401acd904d7c4bbdcf92f545451883ed75714b5a933084103afe6f025aaca60feb82cdf96fca5354cae6dfea47f5c70bd6ed842ca0df0fcebf243e13f4df677432743641ca4df1d3647fd8c8d68e7aedc63f3089ef5c97c4605fd20b9bfd9e4e01c1b9b6288a808b96e8817fb5837f2fcfa93796a9ac4107d9b1a56aac14f8efb2b6005d02c818049ff825a03e940f96a407010b7b093b571dcdbc4d8093f314a4954f2aecd712aeb7e6b050b031dbb8906fee703038840178d50bc63b620781d282ff39d355b9f957a28b269145789f12541170949ca5870ef918968878d9096fc5d9afb827794200ff4b464db1cb701c9ec727dd01c403c83a7f70058341173258ef74efec6e55ea13c5ab752e99a0b720e395b945b1eab101b8b92fcd94736a2129a471c61ec4d0542ac2e265c3290079c5320cc65632c4935078fd530e1f902fcd47d671bcc465b1646ded6069166cfe47b44e7650a0c3d861bd79ae75e5e1c5a4a26668090471427260511151807e3bbe8e43977a1b780e849b96d8cf1c285e63f27ef53a41af5234cc4b98eb6ed4264080707400cce875b1a6982a770a6498cbece9e5ea25caab23c77602d8964bb9aa98e0f2be386ac55dc14d1d4ccb7dd23aa7745a6066d4fb244529971ff54e3cef4446b7e5903020349326dd5932bea3ecfe9799473f614f1f10255a16eb5d5c59a544add71aaba5e2962b7ed9ad13a0996297f28c9991afa5a25e12f9dca14fedaf250f352e921ad491b134bb42433cac87105dad069f9ec54a53f4a7a678e92f03cf8d181a026119ff361d93124e96534cae4cd38cb22549b7959c9ba67cfa766543043fa5177fdfee56ea11bbdbc8a5a6ecc888f351e4b8b6c74e21a8588bfd9289bea0572e79e85ced1c7e8417026acb6617a73725b59a8b12c831ab4b34a25ec466b05165b88dd7037b304a6c4a4ffd5253e395bedac00cb97e5cb885d383c6fc9b669cc0697dfcc6d7a63408e44e9b36898888a26972b94e9515a582bff949f6ec8e6de30e24a29c2e2c28491da4eda22d8858e5239993f8f866d89c7c07e98c5b0b1ccaa8620997e7e7b639eb4801b2e6435f796d9a103d94a2256051710095b8f13cb96f4a6a39f1d299c39fda2f71247bda1892a62d9dd9f424d14ba28dea38e6de4e3acdff3ff2319492a639e5038d45aaab445549ce3506e2b0c12c6a7c76b78d619ea85df2f8b764a84a7dc1d36520d811348c450ecd653264585c6b85d8beae12bd0326b869f3a55539301cdb7720a13a3f01eba136e64bd4474d472891a9dfc54b987cb45d3564924669917939d5c654ee04918f49f92464af4dbc1ea78b5831d8eb8608a5003519db10e0302d84be9713592487ab9e1781d7f4375f9acbd1bf0d344f5e4d62732ffb72eeb3b9398e724efc07348f638f45e390df5161e9d97f435cf8565bab0fb94f0aa6296949eeee9a2628e11715abf5236e975cea47b407799127c9d0adc5bfb0cb847f42c9fcaf34ec67a87950d8076c1ef561de69ff37a60e7c8282e08dce58fc3eff8384ba5fc3c5fb8c10ee4c7ec25ee08f5a7efbff667e17721ac7b527d247521d6529569f887d711958da4edba814f20aa2fca901c21394cc232dd977d898476f4064c5fcea48fbc1b0802f7cd2bf56a29ea8153705f460fc19e5461aa1de616b5848952a1529a0b9217ee6473981396f1e8b9c55e2e3b74585ee3a93b1453c9494c78a9b6a9623ae247b7668bad6714c2fdda157e2005047e08963f056404b1b101b3b387add166b5e2ede7591df5d816bb8280ec232ea3c7d076c182e827d23b8439f9814c9622ce1b23539d57d05e6a87e11d00382bc29a52a94cead841c4d00486f06a2cd0a0842536a4193741c4bbe8c54eef86d6629f79189df1aa8f34a1502211730ee8846b4123dcc4dfc1cf917e5bf6d7894b5b000a231cb30aeb717263759b455a6f7b1a33437abd7285f570110aa9d1c159209bfbbe5dd4991e98be97c1b6cdced866acc90142743c6c2ee92d4d731339a8babd50b805ca59d2363aba5a6d3d2b3e7969a17c117384edc346549f20c61be322b34190365b7ad5c45b200a50a6201a4166591b873e670041257380e8fd80ef0cbb4af3f01ec523b32e4a194aa00720647a9604082a68a7164f370f1455b0a3fe857b749bb3fead351d6199f78a812ab740bd199d3519f600ce7d6536662b422899c3a97d48816d4043744da173f37ae050a92867ad1928baf488443775b104e422da6bf67493962a374d92d1c77cba00e5ed8d03e1843705c271fd8a91f9963bdf389e163ba87d1b0945bf989280dd666e1c1683167c5528535f764553fc6d89f3c6a42fdbf4c7a121d82e9a802695c343eee607390954912ec2f43754a75ad5963d8a6b49c6fffbcedd344b031205c7abdbb526fb91c3599e72379408aabb6dab44f5add3b4b63815f202735e102cfbbeb997d08f5f7a1f8f30d201a45baf578d8d80d1e9e7546a0e31ae9a222b865d270ed3e58be7d81e96c6173a58e31dba3ccaa14b6fb49c2d3a2ecb3938001278d433d2a921b5e64d454999f7cec7c94a53552144a63a7e6ac98533ffed8a492b19dbc1c3f660cdffecd4ada44f5ec68d77544ca69fef3ccdcbe912d014e2b68b650fb3f61fd7c1fb632ef24f204dbd11de6d0f32ae6fc62f8a2a974fae6cab248ad879967c14b3af834bd871af79e3d2b38f92ff88bd9929adba622af80f5dbc0ef9f44b186f534ef92103a8db021e307b5953f1f44a2cdbd0bb4ef068061c2c82106778f79850dd0646662cf518bb880373c2986295a06cd8a5f213b2ecbbd75e9cf534321c36599d1dcd431aa67a55c50760b27fa7a3c2914592968775d16d433f4e3bb78e4b2c4c118935a8a7e4e29d9175299cde95625bd76932239c8c0d57dc9656429e354d77c61a0eb65c8b807bd7bbfaf9b0cbd78dc7a9fce9265c80852567e3f324726b5c79faeb603f33b126b2d0c585dabe05937a714ba3be74dbca61ccbe97bf43b635cebf8e46ecfe72bbfc8819a976d3cfb5cae67db7ce6be62d0b2020f78f1a59a547fdacebf0bb246e334089b5f7b149bccee0ce335000ba7211d748d70f39aa6899f643f3c9c6e76311c827121ee0d146fd26d2fb3ddd6bbb91912cb012d40074efb3dc8d77b475187a530563ed3d81e5068e5ed9eaf8211b2d9ca78661d46e80b45da8f1945014c4a834c5f2aa2a751f49443242cd19719fb493c574007b4520064cf413014ffa634dcc15f86f2f90da0a06eb3afdc8e8ae0b1211e98ce53418cc51e4af9a10677565210b0805f2c648a818b8f546cd5090d3e5ac8d56a75676875c13a6e9a1262f758a440f6b425662e425e682c118b68e7c5f7a1664662ddc529e118a7a707e4f225e8bc9c8fc5e717252494d97c6f282b13351389c08cfcf7bc327084ccb64b82fb1f686764af726b3134854615774373c50ecd2962c01d5f804c513bd4e55bdfdea4a6bad38266b8d0223334bb43a309c2308e4f9f5cd7338df2541c6d87c23a657f2b9ffcd9596d5392688a4f03ecbbd7a76649bf6a6f0e050cba3a42d273a530f483f4b44f38b1c6a509a6da230f1e71b548254787f43b514a7d605758ae1f767e90467f7431acb6d8154cb14290953b76003678f0c9fc21abd6dd26b5a3d2ed48c2f2d26071fff11006b170cdde1c5e7708dc3e8545bc44fc4af943e40c7a6876c5e73a5739b22b4ece1164c92bf346854472edd0f145a971718fd4393e1e8a8e2906756b6cb5ceea0d880bde19a2a8a143cede97c14adb11af489dee7a2b8c7b4e6202e2a0cc1d125d5087231a6dae4ca81a821e2f21150a203fb186c4b2aec3465af736fe883e4fc5032e503ed0eb3f80b7540f69af629291820d1c8ea61cc19f84e0604ea8c936fe88f4d2210a4a7e91450c0c6122ed2721006d213c443faa4429aebc1595a43b983001d5f937bf2b5f09f40fb667c34045908a502472a5915eb1a72e33906a72e293169395e02f53ee34e1d92c0d8b2aa898ae1e17c6e0de1913bd6ea0c3e19cdddea92454765c964006f21646e7c901094516fd6375d3c9c51fd12dbe947de27059f600f159668774b01f2e733275a2725e28b52223b376cbf306b10a5c8e6b5bedf108657a10e3cc4284aab6cd1700e7565028b64623ff304d36c2c0a26b0968446cae8c552e0a441884e484cd2c42cf6c2cbcaa1882870a4a9cebee5dffdfd1e72ef98f5df375d77dd2ac269970a346609172a452ef36f7406d4514f2158f3ac8914412197bcc16274a17725b40ee98817b605518c432a6765833e46a75dbcd2908586a5d62b765a08244249068a91166625591ee85c905c4a0b7f629f4675b498ceed94481214410b81dd1f64090177fed352fc22e243697b68168a906b978961a98888b02c31256c20b337207b65d91cbfe2627cd1ba1c08e609293a1266dd1e80f89be56f1d10fc3a908513bbcb261c55b2f0b2da1dd3e4dd8af409fd3e61ad815594868fa8925f8b3347f2fb8621f06303f16dc4b43166754886145870ec10234210578791a659d4dbfd6c7a0783fc6d102663c525e966b9ddbd1cb8c6b6ad9620b6b9d0d187921f4f9a21851bb0565524137a52823d9186ab0623a4e135204abc164a9ed1c557130440b2621e57a97810d906e1953a83057801ef73054c0efe771225ab9cb02bd25df07e0553f64dcd3e38518f83cbc5731f933540938f90e0be9ef5ed0789c7cf67051b63fa0451782d4fac92634024797c592faab6c7b50bb0409ca7bd1dfcfc64803cce76bafed63f995e4318b53c4885a543c51bb66b8cfc471730c4589145271c0c35b029bfa64627e54e9d6270a3a12f22a4a51049abdbab7bb975948760bdc2b95773a216add437ef3b78150434e801a0ef79254ba615186a65076ccd76ff9203304e872ca3e85762f492bf78bcf524d0820a4946e0805ed2b037c205fccdbc7a3c7c01cb6b139ff0834dc54c79f2a180b758a9fa3375ad9d1102755b77debd246247a5b54991202672a1aa0a060ea2343dddad6a27631b40206ad3f8ee021410703e9b70dba15247a8f4c74fb5835d38e896ab553a659ba269520d00790254b98f83d94fc86e503d75d0180f095438b07ee2dd4a4e238b962f5d4ef749e95369e83dffbb4e8c7e7acf346a34f48c125a52721dbf8e9d71b9409d7531e2c798f74f99d53a8b29c4df47c255493376a52b2dc31f639170dd8eef29120e7cd388cd48ceabc61d259a6ed039ec6ca1adc7dfa635f299a025935c722565034c6c0f2e94d9369848858bc03af6123eec23685c1d2c6f6345eb0db623d2d692ba45bc2ab782aa9c31528c674319c964e07acab4fc7b1309dfb2a94c9212ff430781e1065d4933890152e7b9c45535e2569740cfd8734c9c9997d6673e31a98aff42e972e3ae4d14dc20a09b8e76da2e3b93ce5798481c4027a61dc71e1d7df27cde4656c2f62ec1d3aeb3ceaed3641284263e220c6e350f6acc45958ed3fe056fc3c37b4b96528daa8ad1df0b3881ff9dd574e54af09c0a87228171af4e040bdab6d6805b85101b1b80c3689cbacd2db84449d1f59edabf8f9fe4f492afd315e4af3a23b11d8e3face0cb2bd48538903806d9ac232e829ac70d329d531a7e1a5ba1439442d9c4189a197776201fafe46407dc5ac673783a7468a8056dedacb6b969dd7d9d5a3feb80fa9dc23429a92d10e8e279f51853b1464b8b40d2b03af72e7ca16f52943a65aabfda668898f67cc8c3f68856e41b8290c46c428675a473855e11630fc97e3111df4376be0d335137a02106910343ca15e94b0812a861c8401e8ef276e2c7a6c1172a8a463683cd9fc8da3ed5ae77507f6c1eac4c4ffad4286d1e5cdbb262b57e12f031287062b984827d68573bc590853cfdd646ce817f164d2ae58e6bb9ebb1df00238257f6aa496ca32758b5d2d69270667fd8200e5f3681cd7e5a2b581e7ad1c23cabcca801dac146e22042d40fbfccf827be8e2887b53afee5d03de620f102d490c418895737e77a74b1d80810c17dd401b3eee708357cafe23bbd139c711344139aca6bca1fe8cbcc32d530ba0f2d2eaa20ef57f8c5b6e79c2df722083032f0254fc7d73d7ff64651bc311f4d012f7dc3e689d390b66be531fc6848b173a15827137a23d3040362289afe99832f21c9bc35cbd6633e086aaea330c2efaddc5c73c0b3ec7fb423681b77c7d9ba02d0fea24a1ba449e02ecb1135a12091aa759273543ae190e232add7b42db9c5515c9341907255708084f404025039696c38dd20d445ed2703a0cef22d5fb7e0a9ec3bdf0961fdb995884a3aa151179d8bb735baca098a843957795c3be841c8cfcc469cb9e4487229cafae22c7d081b30010d2544b096157a3f064f1dbf225f6e1725b8bb8665a06469da086252143556efd420744fbd99d267b23a35e1a81db9f8190591e836d664288ddc29e48a3193eb625b54343048f578877f8ce4288caa8cefb7d6383c6a4cab74e0a606a7e546e8631dcc6727f29eaa3763e3a61c268f3f036ba05db8955b43a1926b8786461c8b9e2e46e99275fa496a39c583ad01776bd23f58ee0e454db92af951ca412ada638030c486d42e5ce1ef40cb044b641544b9ccd60aa451f64a28e095d76aa6ab308af1af1ec40967f722e6bfce6adcea3a37af21418e5cee1e2a763f7c7a3d061ab5707fe11261a75d68ac6f60215fc78b2f04ee9990c58fea2bfb016c306291e5fc2a753079fb4596c44745d0222e0c62006b80bc6e5e65dfe1be57e03952940937a23dd675489047db3168154e083bd56a196ba0a8f7cd0bc94a363f078564ea4f612829f86f70f4b02e14c26a86b76660ef24211de83475afdc5f150260214329b30122a77f682c05410dc858a4711a0a45c97d2fa05f7ae60b1c52603ee2e8490450fd73daec73b9a93d16219794dfd5db201432d14ae376107a0ffb4249e623cb65073ea6afd380f096882ba7d33eb3c13d46128d2ea3625c40d404230c2a824f896dab0a8364d98e38a0d0a2f717670fe9437496dc50837c59f1392897f64fefbcc0e49eda00cfcda26d0db374b10fea36ff0910e11754920d7061ea4095f1a82b873074b68d1b926405b012bd9b61f2ccadc523df81b901df84c3655d40ba93d08533c0d0efb6b8bdc763caf31cf371434755047e194899a6b717fff707f312a25ee31de599238bc7c7113542c41a716e1497f314faf3ce03bc3d84244d918e31012229d28f142e021070ed0d971bc04d530c7310b4150e59579bff65c0a2d09027074a30270c2d70393dcc6a41a82ff64ffe0467d960400adc2464a88fb986c704b7097ef0396c47ab1e7f1120220cd14a1488420b10269a51689e98ab5ec485fe83a770ab0c108a1385b1bf4da516134733c560fc9617812fbb328675b79a1474509661d70e148f40fe8ea7e00b18328c12e3711c565c9a1f05e3186dc941243de4f9299dfbb0bd43685c0293e697dca360dd54adbe53a2a55b9e95eef3024436f72dd2ffed2b37e5b9bc4d6ad01a311e08433b119f0d92eee97e61d9252ad58be132c3fcb3657c46fc38469bff6cacd4c21d2ae3b5fc843f2db4c86f8af683e07f0fc6cf757fde7afa599fc962e427320c0f620dcdbb62cfafb46da2da40e52e0e05ecfdc624a9044215079afe63b374cb439c43c9871cf0f169654c853e5069b77c67ba98b3786f482c9aa2b60d16e9ffe89631cda925cda16da328e00c08d28d60167f9c5572e72d4b2a5abb5f8ab138969bbc6774ca89cf94e7b1e4b36a9f8d7bac2afe2c7de83c4b2391232fddfff44390deccf327c02ec250e733d34eae911a433a53728751162d1e9d49bdf083888827d3c4fe7efe238a0616e1ce4e59160dc66cf296a1a88f04e3d1afc667eff6e1682ad425ad6ffef3d74460dcfb01a6467bab4c0b817a477c782ae7475df8e378d405abcf35deca2f980a4d5cf106209c5a8e40afc988b547533ec0040c7978e0b0ac0f0d647c0e0891b40910721e220843a183193c18da5f698eb4060b4ab47858c77e34d20a87298d9c4ea5d3668b1db501d127c0a5931fa6b4a6547200c62d4b80ec4484f5ac416c40c6c6e91e42af89d7152af29c3da52ac8d9d9e0949fa740b8d00650098955caf9f9809afabd2707a0a1f14dd53adcde2f8b23486685ce5dc4685f590632482d28c67249548a42294da7721b3caa84241b2928c07a411492ba2f84a54f6ccfe1c0a362a6939df23f711b95e7827f4b61038c1af657f748376370901996eb70652f1869b09349e75b946a73d486cbfff700968211358863e9074a438d8d5ab3789b35cd7bd6b77219026933c3c3aa246f91631c7b525c1d78fdc2a4f0f3046cd7e50bb69be60f071a1b07eb6f9bc71033e98118733b2c9c422de528f7c345c551cedef35b105855d765e260d9605012baf41745845ec637a1f195a3d420bb58aed1ba4989592ac87ddb8e466e8d30790dcefa0c17c23ed17f3113bc42ebd1d9125294c3b5ed81df2a623184d6a1ac83c08b0092847db6acc2ba3f72efdd788509104e5023c6b25b912e4caaec0a208dbd5475fdcf93024b6a891b9447a03b048567983eb74aa8cdee7bbb42c01e960ad05f31e86d1770698331865b370ecbc68d808f8d683f2af0ce2dc99e0f51537e21fa8aa58b373ad76921187827fe417893fd69e4b33576886bb0b2bdda251e3a6f8ac7b53c6da1c4bfca6b5222dd8eaf9f26c43d0ebb86bcb8af620bc80f4975be8e7566d4d97607e1c8c2872c31e25aa43da3ed89f74cb8572016c3d5909301795bf46eb4e4ac77928104d506589050d26229129a4cabbe898c3f4f15575068bf64e8414d64dd199526f86bb124d710e012a19f1b6f42bc57d7c666048ea8fe4acff410b38a4f0637452aafb0b1939a07cd22ce33ea746f38e1cfd3b8b902b098e833ebf1601025092d6d338045c6e599e60496523186b739e7837a5aa2231cf6c1e98f6ec6a935d0bc6aefbb5b41b70f7571316b150d555dd056b3b10fbf174167e24d1959b788476ab1c94172a292aacdd36e5dc4e28a99fd27272226f52e2c7d91b1e0ba0d14ba425c77100262fac9120de9d2af1c6505652d070f49f9a10b4297eb58052a187c288b4b36782e6a768c2d18cf99029422f056d1f14f0cf04921fa622f50c073534d7390ccb4b564126c0db7517957aaab91f5c299e3f3d20c88afba8b55954f3f0a3cd90e89e6c9976e516cf5942f21a04696035c2ba447bf54fe7c78285864f087bbdebc8ca9a25c58297705aca8cb512e0b87588e5753125b80fcca39d2510e279704ec6dc69ef852d9dc2a71f6baac8d53a283d9b1febba849e8ead7e9dca67f0d4899068e4948ff74a205485f140c93b7509ce97c40d0b3b4cad896254b62ecaeb6cc9669e273c6f72a3f749d8823ea194cd4a9abd0fee7824f86c5a9534ff57b83603ec8a7c79e87ca26b504dd176d4d41512c19af113e3a5028987272b59346f8cd62bba1c959cef9c790e19c29fc2389c44ec410a8d1d6cf0c0b1e7a67f65297c4bc039840848d65202aaaf27b28f733468bea869c57216d06625fdc05ad800a6d7076df0de484b8b080c81403f9e87d33563900e8abb41485359dee60f105a3e093fee91382f4693c8aac4f0beb95787753fc746780e7bd53fbc0f381a8f0579510bb712e3c21ee28d5757eb5d13d4df59bc748bd88314ca60c548533288ebb24063e7c8b6edad1b710d245df0dc1f275324a120db2fb4d7c51194fc629adc9ababb708506c829d8470c50b68573a29e2516097b1404cbbc7d856b6ab23e78d0f6fa90e5fb92ae9155ace5d0164f7898afda3d9f82fba5ca5b81c8f7009dbaf0a3dbd76a91f5832ae05c0da4dc95f50b2627de2a122396fff64beffa63fb22ad0c0e088a70e38233043a439396d7f773a41eb2d0920f6534100932521a86b393b859de9f3029864aed13ce42d6df2e04bda56d2c7967c41727c05f8814378f20e38b71af78b35834fa21da830496201c8e1dcf53568263aeac9e8afe81bdf022dba0cde25dfce921f06563db18da679cf384ede8a5ece3989fa629c25281ea9e3d1c77780039f04dbe8c6b4b677c98c6b18e4340b440994e30d3bb7d590ce26973d7c6a89efb8af9940af72078a4bfe87b0347a0a54310bc5c9bad1c788e4f4e35ec50d7110cb01d53d19a8e15d70406a1daf972173b7c6d336e422c02f5fea4f4d3b14070882ca6c5dbd1763e2ad0866f6befc97d2688d7be635097067435f63f111307a1aceb83184d6b19343c8c67e210d8aa6b4b1d932d040092ecc4c6d7c4ed18e852a03fc789b43fa72efd7c2b48cc6ecd3036071da6d2a4823a07439db675dd4afa79c6fbad3b1cad51197af96f29aa1b191aa897e48e202b45109618db0110875279b4d6eb86314ef00bf25f169e88f20fa3157d6e8af0aeedbe89a9c15683a007579e116053ed124bd9affe604864c5f62030a21e98a357ffe4cabb27d073ece0ca1a145a5a750b05e6ed228c7abe34570368521613cd9a647ce55f47d201ca7a78f1787069443455ba2503ba387a5a987e042b080a4522a9532e42dcb8ad1c3059624111ba4cba4e2c15bfb743bd3ef102ee127b2b501f6bbd5cdcc5e1b88132bcda1a6dd65431b95e487ed651a571489ae89f80a3a853c9501c3e6d35e400b661b60ce4e3cdcb32cfd5f38d699ca1391266c40363e47e1a7b45c13a2ca15d7bfc05af902e498aebad75123598b1bea7e431bb288b1e0caf11eaa403af214708bbccc98cea5be6113af3823ed24d02435490c30b6a037e38dac1fa28ca9904c8e2198a663da217bbb22641be4a6be356a9872275b5016c19edf0ea7dc6194307eb84e83edd08ed84a8e9b5991fcfc6647a53133883cda4dc9c1bb3441d6c4c36f30ece42868e88c18b5d666498dc84c4a8114321f8284925e0f1432fbf7c1bff54d7762e1cbbfb1725ee693012760258cf2aa3f38dfd454be993be8a420319be16869f65019d39b93e75036586d28505e25666a0c2aa7dd0aad0fbaa0dfa01f211f3d29d1d9fa2171270aa4dfe9a8e3a4527da1fce4aaacd47c424c2e474f3a1827a80159b0309b480d43de3689def3755012289243b6f256a85aa053db3a56b0545f0270bf9e55cc9ab0ab9f4de5803b41b7b810667744a17b5ad42607c1e8c4d27842422ca68d51463cf445ad528d03c688ab166a8e824c970ef5c09f21e79a8ca34b1a0dd0adb2ab422fe0c44a263f559831ff121ea6a2dd154fc8fe194d8251b4153b2129cf6fd28271e5c02d5b78bdca4071b8b0c8e541d44208d24a2b7885cf1f427927724585e003fc5d45177700c81060c57bd7ba5448941e071e23b9d27f96c208655fd5a93dd65515e2e34927b86a4980722c660c5184c51fed8eee28f59eb19380bc263c29121a04919591776695695ddee68f0dce5574873683929d9e274eaf4f773488b7f7ab7c60f4dfb8b856b75cbcd025b5d97a832bcd1e23fd2504c5694a715985603184eac5001cbaebaf94a8106c97cdf4663e9c3ecb1a73ad4fde6a01067d179559b61d4ebee91633c9ad7c440feddabe02dd756870307275282db0deb17c67637ec60dade27e820b2a6b49d292203e00267882c08dabe040f0a40c2f9fa1ab25b94c356f019787245998bf814c17b18517e0d75e21c30e71762c8619db708a1d066ff026cdf43c737b6c0ec7f9f06ee975adb4e48a23f112dc3bff2b4469c585722c2e3fdef35ad4eed543739ce0ef6f4f3c2f31d9f652b7bdbdc533830db8a4d87e51d57688cd558236ee8aafb8ed7b23a5816b7c88eddc3cee18c049aa19809b4ee74773b107e5df5dff1f7e31ede2c24ca73098f6a7aed87220f562b73b0448c40efb1e0fa63a171928ae2496ba2aca0b9d251e452ffdeecc4796a49be986820d1ada6c96cd7eec2f1bd9fdd5d84f593603851ecdf453eaca1f5b330cae6d3b10fc65280d1987a4a83e4cc3d059e7762bd657ec0f4f3f7f351bb870fb45db49d9c520c653e8d40b8c4c684718420ba5d77b433ce97458a38f8c317c1ad96becb38952b0261914e3a7790f5176602709484db24704f5edb904c193ed631cbfdce14f2b44b123d37c8dde5df354a205bfa577b076c0f3488dcaffcee68cb46c26e0a49165073d3d96c9ecd7282cd76d38af681f26047a045ac6aa436fbd0b11e8bdab4ff8edde9c88ecd3d0d037fd75d86af94dbafe0d7d5a5e1f706aee74970e59739d6936a51deb85f90cf80b4ea090c7e0a8cf6f1d2618ae890f0e9e377c4f443cdb3f9f2e9bf816888619ad985b771039ceb31784f912956c73d83a35b70b9a673b6bf2eb2e75b0a05f803e85e846fcfed49e2f4391009d6a495a905dc133505833926e258507d792da171be140ca306672e9c7118524511aa3e0aa6df0e1672637b887c82beee60ee3fe9a601c8374f5a2eeaf37372b4eb2a0f647f60aff15076c8c963206441fadb0cb3a4dc023c9d503e9609e1d1ea31d18389e9a14b212ad6e3241fa246b51bb1b7f2001906be669f4b1a8a1c75637b862308266834283d543a5716a2c274e096c469391b4b097a49b9e040550a8c88ceb18523cd482545a3ec8228680511b164cad2441272bcd5b001d5e2e5d95f4dee138ec3ba9e59ef2229d194ae69414af625f8a64859bee299d251cdcb76d75f69161334bd120348bca0b41575765daa9e200d9eb14ed7c10e0e2d241d8454132038e641d72ad452c81b9592d304c7fbe4c3ad9a8852d76b0f7301c6b02109fd7ba7e7797022c0aab87c0620156887305d4fb1ca735d25a44694ad685875ad16079b8cc0fef25557d97961e4754a68c78207670fe741e85c012f8e9edb7e0efd5a3dfd048056e2f418531cb9ab4f248d93a2fc910a65ccda15a10d99134a208350ead63d30a6a70248b9d2b49f10f30ea70b66f3e1ea711bdece9e635bb80ee1319fe7239443f0165c00c2463e475d7820d1ae26b84cdaa838be09088e8f34662d23f67909071a4c1a335d77f4acdb25cf99d575b71258c6728457613f6f367ba3f2a335b333375c70a5d0cff06eebfae1038efe1b4149c56f6c7980f71a5f4452fa2e832871835e41cba13a9aad155b15473f010b6b9985ae5b4a5732b3dee8cf915772deb32913d5a987e15da7f96310e9c8f116bd3403905ed590f5ef4c0ce2989dd62203c6a8dbab341182cce096d312b790152a11c8986805b553fde6af579836d2f9f149159d6977e91b89f6c961ec34529af126346d984d8f31f72e86c1d50f7860c377219f57eed24389dddb35c2e4f2952ef1f490647f4f6d1456e651c006831a81ba4381a892dd37608aef2ee137c9e6e5a9468451eec0b354097d0dd84ac7d9ec85781e5c2469c291a5c0086b304b8468917c56a899c911e505bc1c7340a17b80678bc303e4ce631afae7ebba33ac0e6691afa68ec94d45782874058a5148fd88514c23d576ab3ff9ceed3a843501b7939babbe04d4f63acea8fad4b21a4e257c4956da2f27b93a59ca1fa0cd2c05dbabf0008dcf11947c16458cdc043f9c61f250b6057a6b784c6d3be550307377c2e172d4f26aabb422d288a7d5f5fe5387695c5b94377941f59d8c8c2fb9fa9d62063a5ab073a1c1aac6e9697f273e4d5f01c419c0822713670b06165959c4cd8f9f5e3d5da8d8445d1829bf6d3174a68d8e4c2c17cd0113ae8a5308e5d9a826de3dddf73645cf3369f5229634fde40a921ca24c640855866067ed14baf0329ccd039a97568158305e19a5031d1cd59868b4d1677685763ef87c5841ab8dc2bf781345bdeb572057f3f5ee54fb8417be126f9cb9d5705854c16b10dc468c00b00292eda86fce5c573f2db7432a000450b4b10d4224217befbde59652ca945212084908bd071ded2084d6277cf01dca380608ad9f1c335f3e6a49cbb20f63b2bc1474f6fe1e49cbeac4309fd6c2268114e8fb8eb17f4fa6fffc0cabd3390c8bd282764ecb160482818f4626ca2005cbb2a4258568cf70aa9f7bf0b8f035878190cf3bcdf978700e75f3c35f5ce5500936cc567c9a9c800479c2f5d1f7e4220bb4e322ed2dc1ee1cc90a5358d1b2a425e38d314a29e315a30f4bca784529e365454b5ef645cb82965b735ad2aadc02f2ee769879437e11c2c0a7a7878995fb6f615e4adb01ed9ae77996d017e3ed13851274045620838cd0af9050ca28239c2f8627f735ea80dc1e40b4252d3c002db72c6949872d6c58b0042951701b1b1b2988c083674897529e5e34097a848116f181cb92894e4074727f635a7e18a66c651558b0eab7ec4cc743b83542b8ee93835a3990504a09a77323281c032b08e500026a420520a31ad0ae7d4e3e3fae4a9235a1337dcee92f5e8698ddfe4bfb61c50be380756d1ab0629c3fe3d15e967d1342a138e59cd6b4e47c2f042fc513cf33dc256bcdedb38c7a9f67bc2551d3b44ccb6294d6bc38ee7fdad3c9b294532dede45443db038810fee0d0118a60fcfae9a9bb85e16078bc7745c218a17c717a2f6f87263052e6da85539d03a79a8758359eccb10f8c31da1e412ed4a0937bc1eb8aa72bc2d30b78e2248c0cd7f0f462645eaf66b59c6a08ff0df18d46ec6aa8c3b6895388a8187720e2070fef3d8932255af2c5b29c2d0cf7e2dcfb00ed64ee10ae920fb383abe4b70070682733c383ab3a01dc1d04002d202b5e64213ec1ec3f60d7099c97021f31dfb427caf2edc4e40d475177bb6f0d8057525984affa727a71eebd70ae0c306e014e9fd39a9647a1dbb546a440320d73bb21aef70072dd2df4078140051e3ce3747a5103870bf569728ae2764ca571b020d0e6c1331c2a99feef1ce730302e23e3301a1513e6441921d468af804a28659411cec98fffc96440a0d3279c428ccedcdccfdacb81ffc052ee8ba7c8c0504829e5eb15bd9407519e3c81d2424243a828d09ad3727932febbdc90c08b8caf5581765dc4c863e119aeb5ce6bc20b308bb1a38ca19cf213a798f3d7b842e6bcdb11e476b3c02432be50c2ae1dfd7e2063971136cba8cdc223b8aeebe2bfc1a9ca42fddf712c746377a387bfd1f6e0f1bc92824b286594117a0cb350ca20c8de13803f6bee888a11babbbbbbbb7b84cf9dc56a4e06d316c6808408085030832a4600219556b4462003051337e801154b18d1b3922270c194267a0a920b39680a0c2e7c1e20c3202ac44005157406cfddfd2a35bf072f231ef3732fc078cb2865644102859783b2c0b384c6cb415460e1c28609a2228a9b5d0ea282c96b22634c0a9483ace858c98902e520304401c3130c0ae5203020b91ef485255a2032c5159d24b2067e949bed58e4e68376420d51f9d34a6b7ff88d10f2c9d9aac1155880cebd50e07d0e3f502ce9efdfbbbc6f8e9382fa77dc0fef8a2b9ab9fed37b00741b9b660240eff1aeb862c36d6e0feb433e0ef895568f77a5e553b4a717aee23aee58c1e47250187a605c0eb2e2c89d2fa697b816920455497291c4f4ca7fbc48c739ff1e2659a989ab6e2c2b9af4b86a01d7bf85a2b4148fb921150515c5e0faf7148f2945e1a02a44d7570fc8552a48e4babf9cfb7460f072de7b7fafe2aac8f7ddc057a23c10368fab96b88a83ac68727d018fc42e35effda31042e7a06561cf46601fa4668561983502fb572d5bafebaa9c46844788e82de9f9e91a288a4b61192aa0dd771e6587e708edbcc88b5e4cf3d8251ec3ab31d0f85df3440b7d24057dd64f68410bbeae0c656befc89338f3e23fd8e3ccdc43dff7844a3030414e094a405d083a1727fbcf273dff74e2fad1f3124fbd87c9e104afc4be7ba17a94f5bcd2bee37c9cfb710e88090e2e84a3f75b1d81816a56141a9c75648562d57faafb14e14116495b1081fae042db75cf5b02a54fd0df9195bd368e733917cf8efbb88f26d4d90f1450f8b9fc73f37343e4b25c2d2491ad8a53055d5593c4b9d7028a264cf0b9fc3474f0cabde2aaeee93c239e7a7fe4be7f5170745e8c17b95d0b3d1e2fea712b3e42dd7b2204e194757404f5c1aa352da439e72fa6858e3ca19783c250e4065141e472501880eee972501874ae066184ada3051813c0c09c4627389d465f5140c4df5e08ffd2673d5f7b21b62f7d50186cae8bcb415828ba19d446150544f6d80b91592168bce6cb9afddb3e560dabf1e7bbf124f642a0906967b42fa19ab0c169357bc4664b36c74b65184a887e56af275d6aa31a04af4c41085132fad2c7d7aaf5597d7fd5ede7f598100c0766b32f5521374cf666b34294e0888fbd10b742a2e59f715413b62f3d7c5413e8f5531eb1d9f84794ec3f9410b5b0ef1ee6a5e0c7fa362078756359eb9f8d8f12a2d7cfd73eebe6adf4a5321e55bed74faf42e4fb5bda472bbe66498b1ab9f6ef71481b245a6f156d709e7f07de43d127fde8b18ae32becb37a83840256d8e3f82a7b5a6f602bec475588b7ca5e5621dacbbf6a102538b69f36c80d120b585d8fd3abf99b458d3e7b5e05c1e9d5f5a85115a204876651a3d784a0461605c4f6d6e3d07064afd920f3b30f72593ff3aeda182cc3d540cd75021504afac0fc23eab0ec8ef80f5bcea15afa6655de055d310cb7916da4908014e61c49a62890b615a5c0e22bae25a978388ac5896d596176894a2298221225338b928c2352db9216965a0fedc3210c21969b386d85365af6d9b7d71ae5d346d06ec5c0ece4505e0fceafa8e4e055c963dc59cf5b15ad18a31f6e071e55bd3b2e89db6e371adf9425f1e8c0bb59e9585df71adbf6ac772af0927bcde9f2de6ab4ee7d892320587efc06c5d17cf69499717169657880942985756b75bcfa9c876c0092423cc7161c751c9d8a57bef6b74d06c862b9489abb0dfde49241289a55b74cf16a5ef59fa9a55e97ad377a7ee9ef3b23d595c178b5aaa7076910ef80f5e5736c315da791126ee32b86ec505ee403ffa9ad57c7e31db8f5e499c3836eea5fc375bb382af41415f0a6a2ea00da11025f1858c7e7b21da67282046bf3d8e91e597e2891687669b677e8d977237a204eaa72950cccebc0bf27b3ed7c398c8d8b3d6f1235ef81d9f5f4ac77b77cdfff506447c7eb0b22b71fa114b30fb48c609a0d0a143870e1d3e1e99e059578d98a0af01dc759d1e46f77840c485cff174cd39dffabfecb44e48641caf7f75464afa789a1777f14fbb03e6b2f7c42e468e31c6b63fbc8164b36cd9103e24fc3a4d6f7fb46a9a73fefaf5b374be2418860bd90ecc4108e17befd1a147dbf1b84f875b76718e93a01c94b157081451c0d987e85e5c1f82040a0d1e0cdf8802b0211c0d31d2537e4ccbd39768a981b4964c1de880dea0e5062d376859d2b2a425072d3668e181104208210942082164a8b5749fba854ac657deeb06e21cdbbceee7efbdf7a6f85cc1e69e5eac802403ca9f713f1f39e13f1b881f895e2941cdc7017fd5df422f06c52f24fe43b1454d2b44095b216e591cd1f2130235288ae054ff0726096c7800f17f6ff336266844b1d70f1244b2b42ceb61ac130c7d18cb6fbe10214a70408be27f42a23f7c1c2fc74bf57362285a8217a8d004154facfc7de0801f3f085ed578a9fe289e7084123500010ba0b09455b441665eaa1fda94bf0156bc7a760bc237207ce5d609217c156bfa594c147972190a978fa0c4153723f9b3cb146c7063b3ba1d27e1f2ff754027a02fffd3de12e82cd13829e2dcfddb384c4bc6261e68e23edbd1dbe180c3658b460beb0be7f8e41c9f5a2081fee5c1b99d025c7078167a56bcef78dcc7f09ad78cd5fbd91f90afd854f0f3e2721015185021ba1c140622169783a80c1921328982bad0e4765a4e50177eb41d2d8907905cfef1c09198163272ff32144ac0d98aae3f9208218cf0a38c31c6d83abd23e4dc908ffdb9b1c98d3ece39141830a4d860c3921a6af879f1e2080a8584061a865cb830723a35996106262d2d43495ab438c2c2f2c3820514936949a97443a91112a9c9684464db90685a922c1b127215f67c699c30b9344e7aae9604bd70b267e4facf295e74fdca2552e4da38e7d6cd7defbd492d1bb670ee15dac92ad739ffc976b224594e76244392e564479ea052843aad4811231a8e46243b923d394d22a26e1275936842f198b7b323e57a8e9543796ecfefc0085d7f72fd332918917315becb7d6fc7e97463b498941e0da76048309d0d094c07cb312246ccc88349783022cef963458e80503e86e39c5b1666e39c633759f676683e91c9f51f57e8dba15d4c1a10b59c9d1eebe2b9f075b4243c77e74a0274bdc9f5873dce3191f2860154236eb841fe0d37dc70c3bf2a6f8030de5007308001c01fadc739d798fcd0cecab1725cd56936d611577572e8fabf1e24d765159debaf6156b41b2baeea261176c5555dd4b17155a7e564379d0026567806174d2b525c05898a6c8a5c3a390f2b82dd6050b0284bae5f492e2bf7ba72fd7d5ce532e403de4efa5cff202b885c199783ba00e5c608b4b90cddff4ecb71995234abb80a00ef3fadb86abe07e0bb9300bea3dc5b39d9d5f3aea0a9af2f371a298bc33919508b5989f1ec31989597f28ff1197625f5329895eb6f6d34527607e7204bcee36c3705603b6a036073ae3f00aa4b75f9ccda68b8ccda1aaa071a2ea4e142cb316a771db9feb69b44ddb5c407bc57789eb80ac2e0f2855169869e408112c55510c9e56b43a5198a22450a8fab6013976f0d95668867c9121f57c1175cbe2f2acd90cfcf4f8eaba00b2e5f54a519ca397244c75550e7f2a5a1d20ce9204122e42ad882cbd745a519121a1a2ae22ac882cbf75469868a183102e42ac8c4e53b43a519026ad2a4c755f0c8e5db5269867a983019da71155ce2f26d5169867686920c25c971155cc1e5cb52699ce41c39e2e32aa882cb9745a571e2f3f3f3c45530e7f235551a274fa040e171154cc1e55baa344e78962cb1711544c1e54b2b8d139b9b9b22ae8227b87c4995c649112346805c058d5cbea34ae304a849131c5741135cbe5ba571824384888eab60092e5fadd238d1418264c7559004976f56699cec244922e42a58e4f2c52a8d13a1a1211a273dae824a5cbe57a571d2e384c9a571c28465f09d71693371aebb843ed7fdad6859d6c777e4e538e7b3c887880a95b6eb263d380ff678919d17a3e5c43945e7bdaae9fcb3b3e8bd76c439278a9ace7b53aa5c91f29e8cafe538e73a479acca19f4b0c94c855aee97884106a3949965c6726d73f3a124fb9a6e3aa9cf7725ecc76c41fce8bd98a3c9c231e734df1549117734579442651dbdc4ecbc9b99dc3938659e41c1568a7e5105dedb5235b11e70ec841c6aeb232d9d12b0d20eca7f245a842fc111fd0cf2dedeb44a0efe17b37d4dfc79564cc339a9dbdc69b0664669eccccccccccccccdccccc4f0621e3976a218badf69e491f6408b99dd30195222a454ff8a114f349122ac09a2871844e155344cf411091952ab890959ec815e8547162f8e27250154caab0018d4f60147c9ac40ffc5cab0a9d3b2f075591632d61b2a1d7e5a02a946001cd2e075571c385315cd694bb5d0ee2c214e0f57ef5a55db60fbee7ef3db7828513d0c94f290a6d2b3c5e2a8a90cbbc1477ea09a3ff9c605cfef2c173eff29f41218b48c2b582b630e5d2cb415b8072bb87894019bbaa2f96c1dfcdafdf1bd2fe5a00e1b4ac28a3f658304f17a7fcafeb82910fe17b4dc8342b44c0ddbafb0760262184d0dd218410c228dcdd920fe37387d112217bde2529e8fbc764803473693d0bbaf422d4df7b6f5a34c649df7c4f3e777718c57bcf2df9e47b9a13da7ab7014a1e8cafe1ecd6ba4f2cc3dae94e85ec4609bb70ccfb68a14c8b13b4ed9ca2a4e37fae43bfefd7ddddf0fb7d377c0f3eee24dc5c3af4cf3a5d87ded1b15c8b85e7ebe087ce352d02add6aaee38dcb2de4f7777efa8f7ec6447f717779753a0c285a22d5461918267a08452ced3a4fdb1ddbb1d680c40b79baaeeb92757fe8b8c9441624072a594925d85058de1c9eddbf2a7ebe8d93d5bdabf2cbf9c001f3d7e4cbff3f9ea989c5dfd3fda473feaba90fe8809eacf597757cc78c7817e97fa80f9cfbfeabba5ae3afcfbba45d9f0ce5a23dd52ed6aae56fd966a5f71b5da0d29e26acf5ae9b777afeadb97aa5f52f5db9bf619d44a352331a9afef4b6b5f52ed8bf518b27d7fb6d91e3d1a8db2b6e16db0e1fa2fe066decd5c14f67c755c3f3fab28cc36400177be8f1a9b7b59940d0528e0fad708e1a27af06b3dcab27ce1ed3be333ce3e3c193333333384700719333373065ef8bfee8f31c21863b4b0dd5d6c952ccbd866fc725f349e2c83bf371b00b8d38790c981653043e11ede7d568665f0531b0078ce16d5c126f2849065419889cf8ee3ee0e7237a4769406f4d8917f380f1eecb880f621af067a53815d05b86dfa2e75bbde7671bb49232db3cfc2f24b992cb4a71daefcac54fbf253db5d3f4f9434aab36a955696f8dec59596d5bd836fd0666618766113c330dbc98fd89f361a579c736e34b0d832c6d3551439be940fbb67cf9e7df5d557638d35d63fb1f758ed5eecd031942bbb9bad4c9b9704a69ffdb638816e6f7d8b13e8e8a7365da5bdbf8b76ba52835aa7dd53bbbb604a648f665b4749dff56dd277efb6f5d95635edb3aed96bd8539afd95d1ac1deba68fd248fb2deb5b1a6d7d351fa3ef31c4e6d2d75c45aa5ad6cd32b6da177b6dbbf9129b1fa765c91837f836e9c32f90856577776f1b1e1e83c3f303f11819cfccccac2262002dfebf4bc9c0c8784cfdd812c31263c3f3733ca386679787ae8af12eb6dbd13cb7d2e0996799c9c5b6846ea93b3c0e55f52d6a02feab0e0fa3e6f0b51ee059ea8cb7a122e06ba8321feb4d8c292ae2a2a21d123003013231dd2d23335535d3a1fa1474a8ad43e59b43e53e40e5ee669f4eb3be9ac1c4b5058a4bf194ff746d6a53d3beb6c84c9e79e699679e55168ef11969a31163c45c591421c10c3ad574692daa019ea516e009506d78aea519a3fa70f91ff3c27ce652e173cd8599633640652e004c6402f4db506f743022870d013e7b5a4be5b7a112a0e5e7672c1b8dd9c2a5f66da9546392695c49a4279aebe8e250fbc94bf9cba85db74beae1aae9a06648fc88a7fc63541e3f3c48dbdc381137720296e1493ce56f32614968072bc6f52a4ac275de8c85d65207f02d6aeabfdef02c957b1baa00be861a80e72a6fac374a5e5e9e0857f170ceffe5f9637cf6f22fb61a7c5f5e6ea82996d13f809aaa01e87e1c62708d2d34be8956890580ed6a2e009e6b70ee7c97dab195ebf23c5e4c7cff9627f4232d95bad32d91680900d5be4b8df1346c3462708535cc1ad8ca4a89fdac355bf9c6b0f5dd5a5be7a5fc61d4b6a1760db58bc870739b0cf66436a219b4af2f1e463d3d4b45bd0d9586afa1ba68c1f22dd509165b6f9098ab193eaee0ea45f515aaf2a9f24bcd00bd57d949e3da37b6542035486d9beb7be6b1a8ef4db56b14dcbeb98da47fba2e41d753ba4ed23b3bda9ab179564ae010af8943dabd6b9e0b182f34ec7ec8eb23bc62849694edc47b7e7688b652522341904d1f57f947c97e5cd5ef434a34385f4c23b9edd348ae5ca1f7e431f198282f06da58c553ef1511dd1625341639078258049f44e101ed9c8767c9139a322b5fb9fe23de077d7070704ff3890b7094bbf13fc6687ad2e3303de94b4fb24194942c0ed2531b04557afabc0a822a591410d9935e886d7b9215a20407fded85904cf685734dfaec87a0963e6f3e70d027d920d4a2464ffa8e92b43f39d7a89145ddb83e085e5d2fc46abe8fb84735abd88c35968435689bdb36fd347b2f7d3747a798fd956558098ba13687dde26b8d46abcd9a977530575ed647bb603fd5ebdf1540fa86ba313f085e4d2b440d08ac00140548092db8e28a55cd8d74484b4b3ec1739d6d6e06359eaea2b6eb4bdfb586b92d73bbe98f72685fea03fd1b322db6938169613b1816165648b39b35d91389f42d6698e15b5a7e869616ce527a16b6a3a62edaac8ffe6847ef0f69d1e87ff4cc3277341af59c7e6adbc17432234a9fe41ce9a985ce59233be32df4628098e2fa0d1738b46b9eecbd9b9767169bf3b2d692b1461b026be4d388c0abe33d7c0e2f2b947801125eb8b284cdeab2333edff39e41777777c718ad8e7ef9978f66b76ddb6cb7c379aef6170a685fcd5fcb9ed6506bb7fa6695c91543fd9a7fb1cf9df11897c425b7fb638cd18a568cdd17f09ddbb6eedc1884afa633b1723d02f156d346aa452b8ba898dbcbbac5f82d2a4b655199531afdd28faa0efaa5cfa869647ade7cb8befb11afc976f439d0f78e9e8eec746e6e97bdec755d7596fc29716519aa87ede73b4a7bd2637f559446b23fb2d7b665435e8d059d0ad974d50662ed3e63ce7fba60d574ceaf495f4aeb7fe18239edfd4f3ce35ded673db10c2dd36ce7424a4e51e7baa565b5597550ebb9936c4e4a4f270c9b36766f3ebc8f35eaf5596dbf18c017fbebc2aa35ad5ffd9a00bf93b93073cee77047d6db0368cb0e2222b291320880290097fa7a7251e2f68d5946088ca0052a74e04a2057f2f3c08332cbe49b3de7833884b80298ce0b6f244e30440b0f688e47e510281b11d53a44da8873dc7b595998a87be2bff749448cdea89926f76503f0ea68e1016cf103a226425d80d1feaa9dcbbd82dc25de7b1676b9abbdb853a3d925010b36312d2393e89a7f5dd36221a2229fbbe57b60f099a5b72aedeea701f5a84a437551df2401edab51d268d3fa34434b0b16166d3ab1788601c3f4bc6382b0050b0ba16baaa509639eec7ce6cd16606636c531a77f31d8cfe7f8c5cc9c6660dceee49fa3717c643b18a79d2873e20815d951c1f52ff2286ee0be633d8765f8635050d945453ee1680a39abf64e580928cac6f5a4275df3bb7923cfb894f4af557dc099ac0469f4615eeb898896bae0981dfefaa60057b8def73e44b04b3c9395a0d59cdbda1a0167b39b4286fc9885611786617db5843eb0c67708218ba7645fcb5222d069a78b13fc85d609eb9fa5e3994841450a2ad709c36cf75640fbb6255fbbd7ec18abe5773fa59d8f084986081584f24523f327113dece09c7f736f34def5fe598d77e3459a1bce790d225ce5ef03d67831940251204a65769899afb94afe9cd361a433778cb1e37bdd2fc247297d57137c289c2a2373ce497d668b1b18045a0f1691b14b0d38b51923f47d77cc0303a7abe3babe7ff8c0837316fcd10fc439ff71c355ef3a74ebe39c906f0cd19207c642940a51214a856678a831e58cff80b7bf07f7d75c0c9cae0e2853737ba301610e5573573dcb82d37a68599665e715f4c1971a11ab86c5adf6b64ec49f714a29e53429d450012541dbe6c01caf215fa21a00813867433e94b66f6c683a67fbae73bac755a3b7b0bf825c3688735dcda8764fff3867c178d969fba697f838d72c77abcd4fde9c949e4eff1c0703336bd0dce0d178342d7bcf500de87fff2c87b2d157c7b339c0dc249a8709b4e3274348200705deac725f9cf3ae869ff0946cfbe15996807331a0dd94b9ddbc42d7c36c40ebc92f693b5884c539cf20675996b15cccf2a979cc7555174f3994564ad9f2c12230cceaabb5c6b4cbbaacd69e86cd9ed6bce69cd865f565cdebb9ef352d4b7acc29f27460608ca01dfbb85c0d1235112fe5dac32c41513672c014c941873427899248f57a5a7d27890eadd8936ae73a91badc87d303fbccc437b5673bca023d66c665a504c2879c11b49b5707e2f00961843b51c775745e4c137147b243bbe9d3a74f8c0bcfe77a114a2bcbf55dbb750ea08271ce65773dfc2c05b46b60dcff004596ed788a0baf14c3ab6230e76f0156fd13c133deb7ccf5b9ef2aff0073ae62d679d6715806490c36a0dde9ce4b3bc1e4ee77ba9bc6f3c564599d9c9a8f55e8aa9e9374ad7ecf8a22603a969817e7f69bce0b8db8e59877dbb47afd561dc7896c157bad6651d6d3cdb8a8dad06046cd6364e6b4ac58c4061f35032a23a3ed38c54ebb9ddb5cb769eb369adbf0f8e1291b1ad067d3356fda80db8ea09d4c4c8e0cab9c0aa8f5d610f2db4a5f719c1e5e9ca391439bf1add8d1d2e887cf40b64ee2dc665bc73ad2531ac88b691c1cb6224f533a9927c3bdc0b8aaadf869a5444a5b737f70733b99eb831abe1d417dd5569c6bb142ad97166a7ad738324794cceadf795b92ebd7b26de48873537220d19ca0fe103b92bdf71e7cf7f7deab1368ec61f06f5675bc875ddf6759d4a27c4d69e7f7d6001877ce078c60dbb66d2bc1a16ddbb6cf78023a99659958fc974aa5d2e5e26edbb66d72dbb66ddbb66ddb36b9fdb0619b8dcdc6b66ddbb66ddbf6a51fb66cb3b1699b8d6ddb36b97d9669ed1b8d8d05699bfc2c2a29dbb66ddb5e46dab66ddbfe6d34b6cdb76ddbb62f55f8b4c6e9dcf694b777eb95c674ce8330019f2759b2944f3e5414d4bfdfcb77f7f7f1f9f680f830c2c71ce8fb2cea873691c738e216c8d7c890735d2e075da972af48d15ebe2956f6335e9a8276a7fb725aa4a8d99ea2236e7fd1f08cd1f69291a0697ffda6c9d7e46b9af6525628a47ead84855216a88e1fdd43440d8176730bb43bbd5875338bc1feb9dcf7787055177ffbf73357eb4192bf7d1cd5be727b80f6527bf91ab52a07fa460bfda2fcfd5a6fdaa0e7f2e54b869d2b5b090dd44456f782a548eb29ce75917fd17b7d048ed1589c5c6fa0066ac2d244ee0484f02bc7b84e963dedc526eaec455779eb1bc8ca6cf7d7ad7759200b6ed09be098aee234b85e1403dab98e4ef409d9475d4d95db1fdfefe0eefb9ee25cbf6d220a6ff37ba36ec8e59956b06ead0507b43bddc7f1dc678237f7f5e6502e3c725fa964a26f22bd29e8cad0357d89be89f4a6af00e5a02b3f97afe9b34bbb9e682c90e83e16cf315048d37af3217e66aaef016afaeef4e2ada01db7fdc09d1274714da56bbaae89a1a9f430c9f643c9c21d0b97a08a4075781307724e431581ea28fd8fbea6a726d75044f017476efaad8778d93993ed7ecc6bfaafb926200b3b2925fd77e5a49f6974a394447a4a22b574819abe8342344c1e9ec1f75e3f792810854cbe83420f85e090ab4cff1e3ec9a0c0337a7491e94b3f989ef4d9b6d9a8a50ab3d9303dc9e6e0dc2359ceb9c7f2a6efed01a667c94a15a6e6e0dc632955f9250ef42d591cce510b7b9c7b7009af334ceb8d06146219ef5ba850d38f6ae777f49089ab4aaf3967b2dd89f4d94883ae32b9285dd3335fd3579e517ad39b56a667f1b092be37d3c31d57f5b88a3b86724b48a0416400ba3ffc96be834250287b5faa10d584969e6a4f038bde4ca5ea436019cf87653c215ab23a4c5f7a6a3bd3d3efdcc7f4a5cf4cb5076a2ad94949d67fe66db583500826e1817ebbc9e323f6f0c2334e5891cb316a4c5d42417613a392a8440e974439e8d48c000300040400b3140000201008864422a160349ea7494afc14000d819a40805c1a49d324876194420619620821840000190018a1198903b16f7bd5a070846483c0567921559b8247c45eb75487255db927bc460d08ac2f42928bd772490debb4bdb96c540df50a0d17b86f81292748a1a71ec87a5c92e42efc0cae520bc14c2a6dce104ef9db7d823ba7a7b6e4995d44a8935fe3a4a2a0dd6c1aafd0a2406f0b43d7f0a1e600d1cf1b2e121c8f41ef6bca82b9c97e94335d3b5c3a8ccacf10a07f4f9186f73096dcd4ff9786fc7e0792b473bcafe3588e70a074282e87e2804e283a105f521092b105df7178de3cae07ce3fe6731fa85df2421763058dd6d92962bd904ecd3c291e8c6e26f33b862597204b0fdf56fc3448a13c24950773c1825404d09adf140f9752e1388073dffce35cba26d2e427093928a308f8bcafca9a29cc19f5bd126eb1a79d6b8baa3ea73019eab71e495669d7dbe676976850b5b403301df5f49360cd8f1ccfaab8a39eae89c18fc9cf17c92a0eddae470d6d0e4d2ca49a15545c3e586730c6a7f6a5a958c1e452c360859b954a1c0770fd05ef1c3eb901657aff6bff0d530ee1edaa5c3e454fd7044554aee137544428f121efb05c5e373959bd6df06c2541d60cb4ff614e4b61d6eb52f570d1a52fa8736ab1cc9758652debb69ae1bad45a7d4ddb78211c6762bc76c0a0e6718b11af33702fe422b5d97b4f67ec1f7fc1d4a7d4b33fa10fd4387c474e7f221167f839f4c1249f6cf834a95c891741815ebe4137374dc40f4d9a686cd10ec35ea99cefb3000926fbfb9e77bec33beff2f76eb3be9b65b7b5f874637da9532e71a309b54ab0a857b2ac5f02ac8643057caf2cbb505c72d8b9f03b6e5867bfae9bebf07e2b28b216acccd74670f17c1c5f9895058491da770b818096ff4e90e854e514ef4726a62e4e8c4d280bec98a9643a588b77bf766a908721363529d67d66c453cf885507a057035ba4e247ff33ea30a9a13c15cb9a7b57328d5f488c34254f1e85dc7a7bbc5dc051d0a31165bceddd979a6d0410910a0b20c0d4eeeb10b8e359bb0470c6e46cfae5d348d01841ed50b1f16109c0678e120ba5b0c348efc1d5299e6498fb3e234009b737dbe45deb476e1b6e725d4cc207b463d21fcd809cf5f71e5cb477b1cc775a27035c1529b663d28c092e09a7863498f25606b0c0ac5f94516717fdbebaa9fffaaf8a5eaaf65c7cd9e79adfc1a87aea1f7c74d9f2fdd2ae179039ad56e432d4af95f8dbe5801ab3522e53ce4467cb6e364adb3c9e0e2fd986d0c858e3ae026a19862f2a37b9e59c3e3a6aca164f052c02b1e5b4c72ca61107e3acfa681d407f23547e03332fbeb6782509220fd2e7641243c3f7aa2409c6d964e89d0f8a704e2d48b414fc4a9f8ed41f0c45ad0a909cd37daa75fc71e9f649cbbe04e452c6adb2a848e15191d8a578f13c98fb106f802478933791950cd199188551092ef348057cc769eb1a6edf592ea796e1f9611678fc0067223ff071263ffc7834677324a3bc648c6d8700ce41602d0e2c3b7e9ccec14a43e88566023aa7e78a09ddd8b00c09ed7cbbe051be89083cf259e567ba8e84b21a118e7fd2bf545fd5a2b930567139a417a8b7162b38ec22cbbc0a40a53500ef4ae5aa7ff2da81ebd02398ee7d7bff01a5732278f98d01a644ca65dfa77f6179b3826b2d7e0bd00b09196fd8190e9021b5dbc6d5ec8ab7359d3ffb5954c0d1212cad87c7e60b85a2918f5113fcfeb1fd1e32fb33cf9a762873b7b98d293063800c445219c66e843f058592ca7fbca582d8380bb9d36c670b6c0bee34b3fa695554d8b62c1850d8542afdd7c2a4dd9cb5ef71bfbcaa05ef7f32c2efbb7c104302ca5443cd7d12626cd2ad905feceb70700bf9d66010bd4afb402fb2bda0fb369c40a100bcd0a5b6784bf26993a38a75df0790980153367d6932d204ac2c6b8a90cc165f5570d0d0a38fa1f992777345f0420d3796d9c68d30c9487cf65d56c03f246dfe19b9678ac20ce6ba4b8622e6f02f1e8b11e7e109d881c1e8420372fd9be94bc15140065840340d1f62fc48b435a4629816b136ea502d13e90f653ea89db50df0744b35fb71b781b74c1c047873a37f49cbdc661f37df3aa93094cb6c929b270fc2e3d69266a1c3e033223e08dace0d7248b47a0ca71c46eb54c1d2c1a78802817e85964909c21c42781d4ff520d27d7a81608674376e63870742521949054feb7dd62309e659381aead3db7f68c631239344b9251942c894445232c8598160e30c568628e0506e898adfbe009a09868a62b6b4cbaf23aa5c05bef822b6bfc3138e0847e33e476668e00fbefe4cdc1c495c6bd51c8efc14d9ae82fe69195c31ce709d1f00affcb51efc43acccc52883482e93e872280d8014074c0f085950927a9f9d9031654ab0ef892d10acce0a687feba76926bfd4a16ad52be9a0282d90c5cecdea4f68a9511288eef21477552ebbfe7193ad44794ae38b51ab2b7923cb851e9b6d989665d152cad5530862e9cc7dec76eeaa952ef0d5af01215a1979deb2932f000ccbe0862685db8bed695272f5013e259fcc213b77dcc9a936faa323d6a59379a950cb3e094159a0de72c8cf0ba937ef4c0543da7b057a985ff5fbe58d57a52f3a58020eee47dc71524822d6aa180d223efcf996d4524f3fd9cd7760383c5ff72e51482050f87d8edbd902734c39b75d949ecb2538a84dc5426cc76d07c88d13d1730a48993ca6993051fcbdda60f1704aaac70f2d4608ed552985d9d83d35a9931d89418f14141e5af3fb797cea329574d517905344ebce8695ccf28f06bcf046a682f6cae4a8ff68ab7f320fc75f1718c6222451437e0b405334dc4f020670074624bc3dd83a00d388c089aa258f00cdafdf5f4f87c6572bdf751aa8bb457ca1b1c29dad0ebe529e8aad81f9171b81bbc49e8fdafbe1b17fa037eb06db9b9edd96cdba25a4a140bdf04f7d543cb3a67e342573946079f3608827727cc0a91cab180f4302dc69ba309cfd0eea780fb9951f959920416f513780324256ed02e67b47cbb6202072377991c06874a4426bd4c4fcf6b754249fc684343d40642d1daa35f03fd314fadfe9e7e59d59d33d748048658625c60d8166a064130877a7efb1f4051ba85fdf523d47085ea8410a083a684ff4b3aef2670ea293f57193141ac90f32a4378bcee6e5efeffcdf31f6ada726880759d83ed8d39f383c395d007a10455607eceabc52ce756f555bd439413f6e6117a609ffc3132ec280896e61107e1a4ef6f873d7624b053eeb318c1f2bc4cdb37c063f7c7c1a263cd16551b88106aa4a1d933b05e05e2b629669fff4ca495ad2569aae49da7b5a8b659c8476aba50a15e38d3cdbbb25f2df2369f8a3dd2a549936755cc2e6475fa3313a6a93f0d11af7ed4f1782f3b50142a23a9dbe530b8b65bef436556aa31463e2b96ae0256ba016205640ace02cc0a23440f179df41b944a5874c79246632d8906018eb4f600ab352c05a1291da9e9cbfe530586c2b32e04ff0b78bc99c9eef2768a69267ee502c0df366b653d3553a9aa5d09a69377e2ba5b02806466cd68c4df322497e30278a358133854c879c71dffdc3748d3a9e554f0b64b29fd85a538798801a83c148ba9b6851b5ac9b64e8a0650a1b3221025676ad465e7e389ab486aeba9cf23c0cd99d8accc7e5ccfd0d16bacfdbe45ed49c22072b387df0e7cec5d157cf07c5d17b76a4e046b919ce760b5c827cfa4b48b4a655e4e78264a8d41a019c2566c919e34600b4e75836284c463160f3e56b9c6a7885b40b17b60c75dd08a121e996c54b12a3ce9974df86a0dac7a7a5ecb491d0eae5b58df93dbb3d64d02c769b2f2bbb49ba4b9364d22f9e8b23162442b1df24b2865ceab435b605c8267817212282f8de1bc8893a86e2e72650a226af1ce35dc59e10c9c0d5909bd8036bc270288be64d343634cdbd5358b10c4c11d27e0205210832d2356c55d352bb22fc82223a5abe252338646f98389bd35f38854ceed6dc2d08b83c4b5765a80a14705334c6997acc4d2a981685c403c9230144d8495dceb471a0cc8e66c9086319200dba1ecdeb8c945d3ec9be6e48bd4de29e856002005bbc33c8d7f9396f8f0e793bca78a84b7819b243c4c9aed1231174267fa545fc0481203c058f40c0539f04fb65a02c23dbf20d562bc6b26878df91a5ba9a407d009aa73aaada483f5228c34bc18f28b8add9863fba82a993ff1f1417525d53b0114c4222ce8b1292bf77bc99fbe0d57df1fd5c91d22a408df958a8b39b9e47b0911340ce6798e0a61276ef5d238124e9c554540a78df8487dd042a92615e62f6971f6880fb6f61ea97188157c6fe3888e9cfa7cbc5895f802c704a97f33ddc81df12611d3bc1721a23b50c686804e6bd097cc602f79ba1673cd12bbcbad7ac025742cc3b7e54d18b86ca9ba1483d1c3431c16df4b0bd02017a3aca079ee469f987599620531ea2bd7c9d59cf09d0eab6809bd8d416ecf264cf2b95a330f8d0dad0f40cb60ebc52c36b8ae56c57132ff8bad1b8fdba6b7026c34e57cbfa85a13a20e264c70e4a51bf1d8ab6f4d1d96880fd5f864ab91bfbf56f58455c46b3afb0faa70e8a27606cb15a5c66c9e5f7510e37141393c39de4fc0096a31be279464b0062b78604228f7df5b03131289d60ef930c0d3d73107ab13fd63dfadf9b2217c3d112452c2796a181068506128ce0363a4b774d69a1c830b59bd8f25305ecca5d7ced06c19c6047f52d5bd6f899ea4be51658aa023e8948d80983a411f15bd45dea9935e8ddf45c35038f5a34087c2bf23d5976784da32f3bf52fc413128f365fe10b495caf23e7706a67fc5157de460923846277357374db0888d5f253b57ffe9f56c0ea6fd0c847b63cdedc223c2f396c072c6a044260085f752eea53b9181f379b406bd2de259a3fa6afb25046a70f9be6d17556021f2d3ef62909aa8d70c4036001b3e907fb1b81072f8e7c4c2a3601d9357fc94496ed247c70fd0b10228d1a62fd340d5969284d95897259c043b95c409de448b61e6c9592fc13ea8248ba06c38c1029d766c0b8cba3ac1eb9e11c0d180d9c6b1ac05e9b2078eee06541096aa3310fb01b2e42a591b366663007f0c1fd42f56892081712e8c6857c58941248f505c367694aa74613c1fa2afa10c975ebd3672a2ac94d712ab3e89784abeb5fc01a9e39033e313e86d79a21d6150fb1a8b08568d45280b580147aa65fafdfaa943e5d34832e3cf4407981945c20d0ed9a88b3c397379d9e6ba8ea1d1bef9e984496dbcdef063078ced45cace865ea41a6ca98226c15c4734bc3cecc8a6d7c5032d29636cc1aa34fbc3673556cf16950ee14fdae80da31616a9e004724959362a00bdc7796329dd1d1702b40da9ef68869ed953dd125552dafb2078c9e10920e4b0eb8bc59d7c6b59fe209282cea5904a440b39fe3ea07da341ac1cfcb881eea1a04b418d491487d061854781baf43581d1d8785499d71c7fc15df78763f3c34ec532a9708ea1ca251b5ac1f8d94b6215ab2695f668cdc3d4f2602b53f6a0dd0c869298e4702d5de28a29ee2235868a3dfe44c014a3709d7a7c09a2615622f2ec56e48444676391dd5b801a49805da84b968e982c0efb2c3fa158e360c545bf18edf33024e6fc3ba5a73f6b5f3b09f3488756d0094fc8fc54916ba165fc5bcdf51b74a186f4730a3a7c8f5f514ee4ec2c1530c623f1284607c262e19a14321b269dfa885fa2ab3b684987c3b38d3195590fef2e8f1d0f647fce0670e9d3f70d842634afff02370210e482463aa3b5469e953de31fabc7bfe680e4d7d4c5cd71bdf1c84bfc99cb75e869df5bc75384cee8314066028441c7cf136e2a06794c660e5a7c8c102b891655872a16fb321e5fcc3e412b5954d2b0b3b2e77b14fe3e5da42428adfe53bb61382680a019aedd5a5914457bcade497815c58c137a62d00d526ebf3b4327516704ce5c2d0ee1bf6d9f8ea553fdc4f40b2cfb1629c10d7af3052cc6eb2481554ce6519d1a4a3697d80c7e54c172742ddb4c3cc31b15cdcaab8d16a169c9b2d26017a2e73758c692c168159a4fed83e8dd389918938c2f985d984208deec93eb3fd9cf82891b3e61f52b34cbdf4c1745231653c77d08d2a557b14102c8d50b7d231bc981b58b56c204d088611d8a10410bfa01717b112600016906562ff1c48c8a2d5c92903670390dd5d14a684a1efd2c9bcc23ec70887eae86a1098b9d2b9fac060dc8a14ad70ec96699e2e65ba8d596b251e1bbe2535541da7a072c2dfe38eb6a8720369bf83da80307bd5c079bcaa97ba36f6524754a4adf2962255448103b18ea0b90d93aacd647a243cc0813bcc88bba5cbc7185eca00e01a9e24562b1371cb6c45f57025264c850de4184c5aec8353a6e605db832b410576fe7e95a0a96cc32a53a9aecc10791b9abac913e472880b83a04b6a5b13f77c6ff73c973e6d1a454e61963e21f20bc0b35275899578ee17cde0ab2002c58867eb85fa2c92a4eb07feb61bcd71c9242908811141e0af0625a60f90524700a193566632756a910614b53a290116071b3026b39f15487549b3ef08cda34ab6453d3c32e14298f357d40989851c4151a9d6c72762b60eed022481b0290e57e2d6049a0dfdbf7a5e04e8cd2d9020d5550816a4f4734871cff55241061d96e43274919b5e00f4286f56483c288411faf201627d7ec0f1935a92ea9bc22f2a39c3f780994a199f9b8aa4e3f9da02e5eed018c12a69788e94c635f996a3adbf90141f1d3d01e235d8251e2ccee3b7a74c3ad0ed4ff956b7fd0e24e0ced598b47bb299a4f936b46513b792f6a5a562bdee45f6f32389ab8a60f27e7220db1f997a191aa6a8900f6d85f46b090a390f7c73ebac93eaa5f513dd2034db5c9eace26d774b4f0cec3e8a771ef5ab520d69ec31e33fd1a47b5c9da3d3dc6105fb3088a7afaf4da3303572dafed47c126be08c95b6b5e75292e3b96a0579552541af6b0b7aef53e403cddc4e14f19901734d9d66aafa8a3615c7cc9ace8d6f331c9e80ee0d098ade57228eacae155cd3c57d7f85d256668a0206bc34a99c82d02c4072c0586a844660b1524cbfbbbf7e99ac9e782e10941ca00066233dc36508eedc38101d4f523bdae87765015540961fa616264c2def2cd9c7fb205a5c9e406014311a3b0d421771a9f0a7a70968101db91d6eb1f97d3ebf0e00c47d3c194bc77abf61ccf4ca901f8351d075898bf0bd45e472501b0c695ecafc0612cb3e9a92de819155e2edd6679c3b0b9c0057e98fbfa0507f12d32b1d14fd65ad8104b519da12f98c564e90cc52c0d1d1ff1a6323652290346c7be2b2dd0a2ec900bca2a6b8705dd37952baeb20705c5c7cd5971fd082f6a1f87a158800c381a52d2cf675fa0a224915386b41ded6f4ca824278f6dc3f224bdfdecc0e481162252d39d53d32859c6b770da63b7ba50a2f4b3a94668bb62426dce58983bafe4aadae0d351c9d3a88f90b78c3220b8406887221844648550459db6f41f47c47fee5e26ebded3a054641c546f1b1e61146f72d0fc908fb99bb68670ed81ea143845b44ea75b186eee2f65d99e1db52d4d3ae85bc8306ee09e300280240c480994f5098836feee0115497d6993c929511e75e6e314024a0be17334457797e54c06e1fc1217493fa018483a09b84233fe3d643e84a517289e2be0902150cd937367416206ceeec6b6525a9595515c26063cc249617720275beb3e6238cd33d279d399b34a81b40c4d91aa9a542be67ecfae16c99eeba6ea076ead14b6cc673ff520e16a5d5869542737550728ae51cb54c05cb7a19c3f6718812e42ea8e1fbea995764ef61dd2bf8a8740a8b2b0c396d4ac51871c4f8d5d296e711e6fc7b1c168f7e8d3e850ea92397d80d1b750eddc54ddf7c0b267e295c1271caefdfc9dae1a156f565d1f19e32e12e68e06659d846d18fdf7a0944ac72b9919fc12c7928f806ab3139a1adb2169110ca04d1573f1e629112ef2fce39bd87634fbe852ef354427eed72d2c1eac865f0cc5250a1148e535b9bd026de42824f92102e3203cfa8704b86fb1f6e82ed635fea8becb9bc74949126eff504d4a8d424569bf66a2484c853962df663dea9454c4c5bf9e5949a07ada17f1572a7d4da775177feafa159416bcf276e101d6f7cc26a6276dc6a3933e129f963c218d9d437d167e4b72627f4be3683cf1cf802bdd0e95877134a294c1b1fc2c7b224c0cbf574c0096d1e4c482c85983bd1afa440c7198c3d627c5cfac085cc937230fa8a7aea7361ccd860042b6b0d346d7a757ebae6d14f810036ab4d3f7e1f35cd8319859b08a87a9f12de6f72675853bccdf239524a71e087c8e3548bbeb75d270c648d020be5981a708439925cbc82df64047f77577c84c00e05aa11fa4bf44291caf80a72237bcfc4d26acc37b313869669928fd222a9e5e9cfd574fb233dbd80880a8cc876eb652f4597dbcb63dac28808d368edfd105d23562f923fef73efb2be3480fff403b7888fb636f1a39b1096109ede33e761d00bf900a82da23f3eaa941605815f3a6c8d18b0a5616d9e348b344a44863f01eace32c02a4833ca6f813aef92bf08a976150b91bf7dcd46d73f03ed2d0973def8ed2fda3f90d003e11856c0f4b429b920b3510638df743f8fb49bb0f3c06b673a9c005b4fed8fa4e802297e1afa38071ab4c76e362cc16306aba082e7c30f160d33fbcfef924127025181051af5f38a3039c14fe4add6c5eb7ea547a96fb8411c55560db3fd88fcc1a8d2f26221c7de22b27c48793713560d9241cbd46f41aa1334c8c528aa4b33da36c1fec5fea13933348376bedb136a223ee8372de83d859a71256fa1ab567f353026aeea4065e75badd681a512a85311fdc9b7e2e4a0570d20c52f7f813cfcb876b79dad4b7edcf48de6e3dbb237fb91c0ac4fe91e1e781668384d75f025005ca88115e654a665eb310b8b05a94abf72aa7166a73daa84c98d42560f2e6c90ba886693ff081e7172a83f1927f495112301b0845c4535333bf9a1fa78684695a87724afe4e4fdd496b4f4959f0f9f271079061775cccc3c53dbd3819086cb052df3bf853fb1a12c9f4c66cf2abf2917480a678b30bd08afc01fa6b7896eceeee497d13edc28423a807b5d6a3729c1074838453b02c8737369c7919402229c99c202357b2c16f8045d086df3aa9743cd0cf0775cdcb21d767459cbb218a0622e328bb096c7b74794f2cbdc84a1bfba882ed0a9ff158e69ce300e36cc5132ac7a19582007fcad30e36ce9d6a3767907c340bbba8c6e241891910bd8281c35e4a6ebf158375fd0475f0722f5f1129cb5c04d2d1a8607f8e3afd22544b38c5df53bd3dd7ca8a56eef40eafdecf47bc87af8399cfaf155cb609f214b10e031c1d4514ff374339c2c4a6305c7e87ddb750bcc65cb537393443bce4c14ec8c4d351f0ed4b7e91d01b4f963158b534362e8a18f9032e7c680dbcc609af82182ae5c63660f4490e2ccf81faf281c5915a64290790c75af18cdb9a8c170c21dc7a2e85c37b20edd3d2e11a0558264f4c9e8615634c51be0af5181957e22876d3863cf6a9424debdf40c3c987ed12cf74e3e34fe3ed493c2cf4c3d44b051593f69933f9638a347cd7286ace440b0ec55403b4bbbf158bf4da3f1113a583620a7bb8fb4793f3f1ee9fd2eb14d1b7a529ff08d204057759a0d7a84610e1a6e75025f75987498386d116b29c4f3be01c0785b0b2fb52adb17c0c9d0930fdef257e782cec487f812e2ac61c50e289cdef871807d491c36d01621f4d83fc218fafbd1f9b4f5475f36a8bfb305920221d87bbeb82510026443804e3e2a9067f43ab3108611327626fc826f8514eab3b448d0a4a867b4c894a72aac8d41f26bcbf9d4b80d3271550c506f3c11cab56584b5fe074ae00b7bbb543a40d44dd9776885147d518371fbb515ae516bca20474cd3c0342766fc01b95b4318810f63e9542ac1af54a3a31b410301aac80e9effcbb990e59326ab7d7d968197dcca647ada30d5f6228e27d3e7e2bbfb882b836cc2e3449e1e8e15c2e823af5d09b4a1dca1f4e136a56a9296990820b915574fb46416b031d91b8fd24af8fa7f6c190120e37e73872e52c0222aed18dcd950f7921e5f91834bf66cf86c873be0a021af27105fe40e10f13cdac3065f84da3e8d17267114ad44c07fe3a603a6fbb224beb91a19a576d0bd5aa8e441ae64fb9ea3281c3cb04f7269b8205b27de45fd79a1e95bff620ccbecc6d8c93bc6a0d0138f501027c4d2d578a512c4442c19c8ca324ece1fd502d0c327e02f130882606b926da70b22238f6978520d9afb96567ebc8f0e50942cb77f458bfc3fc52c4c9dddb98020a9b8c42d88d6440330792752f406118b813be69f06452e34302bddaceef4678cde09526e643ed6b16db61d3200798a1feb958347e1a0a729c7b47390b0210c4e9d498c5a70e078bb7ab33b5a1aa42d413c245732a793cb3a83c35cdde4bd69b8129a2a7563139cb02a1d674c90b01260783a274d45e633379dcf588ddb815cec1358879e0288358a4fe19bbaa448f24f85e193a29acc7605693694fdd901f9e4225e0e60341aaf8325700765980a07f4fa42bf584d0f0c918561d259358ea41f2cc3e489812b57ea72a49a954b5800795822e008d8308ce29cb20ca2a00421d458faf0290431b778024b6fce1961ab693e11cd3c07c5865e23e1ae69d141576843b0eb153c03e5ebd3024552704a4e095570ba8eb784e23deed896fb2747d60a162900e5d014d48dd9af1a11cf5eca51efa18da364a6817be42c649c401b1f1f22c5497b63253035fa11729b086646d525b7f9af24e2571a0a9c14ac2b9994ef14367351bd33227b26fce5943cbc8f5b71ae12c63ddadaf72e88322b0c07353c3040ae2ab2a80e1b8453f253f7c30aeca6e580a5dbe76f864c70cceff81e9eb20fc5040d050735e36f315a3697fd3081013ae2ed39e36190e5d5b06489d051d48eb8e90be18352cb48dd29480a2331fa08381bd8cc447cc96a562e249973e9c41a8b027a48927cc7d385d8dc8d2f3dbef0215c9f9611082f0d59747c6212cd64c2fa4655b2470887ed384744cbddff2a6d6b44012c0d55632962fb6f078b8e5d6e815224111e8b347176a538f75661595aa4c77c6d6f3c4fc54a4d3d157c79747ff80c152bb53d1d047acc21f5fcb0268c39d9f00fde0d0be0a0e4e211e55ab228c604b00912f28b1106459ef14e46a66962de1c2d244fb0000422b87d8ef2a51dd19f2f75d93296619115cee92a3c87b3587db532071a91362b8c217bdf070850c87ba19c758b030abb5a3c716a345f433d60f48ef72aa79eee6411316c4e8038734d5b76b9db38503cee00ca51828ee0f452744e6de669b4320ba37016064350e10c0dc7ffc91dfed30d38665c6517739486ed2870fb1de3a8982c5cd926b7bb3219212eb68896390731b7f92b66f98359fb513f6ce955d813478513ff7da0d1a4625cd558e00ca71d97413036fa0c32f68894537d23f5c0aad5e2081756c1de7cc14e29a34a5f9ff35df0d776fc755438415270745dde8e4d70c4ee9f9ccf11bd01ebf30dcf30e06c12f8dea737ff02c6fb88f5ed1b0dda95f1468539274f2b17b2b434afd87129fcc7672de037b12c3427fd1e4d1e4a33be3a4f7792923caeb4a32e367cb45a1519581a6329d070c03e7ca6c0d11a3eaa72830321a791cc20cde5239b6fade14422f61d9f204a635dbf384aa7d61c3dc04b48a4e4c7b0df89c46892bfe770de8cdbc0220f279388de75950b61bd3a711490754a82e2374077f0bdc2283029377686ac659a7228d02e252c77c4e8e6829aa7fe86799ecd625cd47fb391ce610b12ec025bfe892555d5c7fde93c185416c82214bc767ef9db348ebb4ea80cb93f4e5b41a4cac05d0e2c1944f96755aa6348d37769a9b1d815be510632dbcc522a864740d77f733c2d1cecd92dea08108b3ace7645453ca1a8646da1d35e7de21ca7e335db9ebe94dc2b6541bac924bbe48dd0c0831e79a454bb27740b92aed5f665793465c475838e37b69d910ed3312ac79469116aea848830cafc05981db355ace74a996ad553b5dbf72d3024788077960dc6b5087dfcb5490792835b6315ed5f8db763dfa9797a2e4d64455d08ce49638cbc622fe4764d1b0956794c6a095b0e508475d8496836d184174a81516814fff2cd19cc5afc1b1fb05f6a15e5138e17e4abbadf36db0849f8d0f141fc012b14d26f350c5efc388a2382f6481cae47fee0c6ba9c2e61d2dc6ff6a52918c8368396825bd59a01648abe996762a28c5077c6c834c2f6a4cee4f0a6fffa40e366b0981282662ad864b646d080d933230e740661041a75cec9b88afa72481b688be502ea307af943f811a51d413686c8882de9bb4f415097a2f2cc9313abb1b77faa72ca04d2f088f04dfbbf0c0f16229ee7a3dbd2182ddc79aafe0cca212a89d017ba3aee68f0ff484529a3ae7089a408ecd5b0f40e424d50468386c66134c41c3898158f3d35a5186e8f69e64c1709a9da842ca00fb62f98a2c4544c3a0ab94b7bba2aed690bbffb7ed6985e9e5ca54514d178f7544e6f249321ce2effc5147ffaa3191b93674a7e423a503c0d539f30aeab8659c6a9f23dbff4feccebc420e846a5d41147449eef1a22fc8a09afb08eeaff35aad7a05dabe7998b30221348ae5a5b4972f00bd2cda57e1695856d5067384f008cdf91882c8c462301f21fc77aa8c4dd3e3cf271a4ce47abbbc3821b97680e24333b90d712aaefb49f45bb2b8ff61a468d9596b5a41a4dd4f3fd6b129a0c0967a08b39cb42745dfb77ae10cadc5c1963054e24dcce45197d02e7918d32ff5e6dfb3213c0017a3500a82f1b784cadbe15f8476933ef222c16e22f8c7eafaa92ae1fbc509705d54de281e669b518d1b1379aee25846b5b15e43a8be78b4abe2a52366ccc1e2959d89b31d3cb2c605d5a745fc676b046e856beb6b4598ed0989323864135ab820fa7481f09359fe258d1d90ec60d7950da69216321f39b4c5ed5ccf21dc102a9198cdb4585278d79df91eda1b9683a1ea5f3272a0c890cb622521f4aa3ef666cfe3f626b1ae6752e8e4a75e21180ddf7115d5cf6babd95c81e35621a164c9fbb788c81ca9a7724d70aa7f8bd37e505c8b0e9d99e37262137b1afc715301f471d1be87b5873468b949cbf7f8cc261f14fb1798487480b7236efeb38545e18fd8fe1f2243c4ac93456ca1f59a89b21cdd37a889d5bfaa7c5dedbb0b68534e5534bddf13b9d041b1899640cb7e4817a515ecb05c0e294081b671afc6e5c3c3984c836ac69d990d852361292a95daf3183ace15e380c385b9395ed7797d26632d1c55b1e4f6e7775bd4b0aabe5168656ead76e1d009b62b31ea0a516358f5acf50411fb3111625682463b522ebfd88638932c642f96a8b30d2a17a910f64c2dadf87fb7d9c9cde5416d5e86348e8b3c9c40b5ddae9ec505d41fdde9d51c390287cf82b1d5472f61c19575ed793c795c1e144ddd9b3f93780e2931ada9cef5c0e4e40826d78220be400335215331e715ee5127cab9d236c687706a5a9475f44e82451d921e9f25c627850182c67db35692234b88f33e13ccb769a70c54632a483e736aff399d4ec804580955b13f75c1f07eca00328b48227b2f62bba33634b48eaadb25b2c5922b7d9ff53bbf914cb1791b63b4be75fd175d43d6372a3c03666f8f18f10486a87c428912904e62eb69e64b4c3ff755bf4b39666665c339cbfe4d625f6c655872a51864a659bc112c61f4fbcd3e1e95557d944af7dd669c96b43929d743689a428020a6b1c450f75428d4c3e8c88d1af17f3aeebd8586a215d89123d8d4ead2d7772bfffce3adaeaf2e2e4dc9be3c128f2548b5742808bd8945a4649305e5addeaa31081bbc8b88d5cf5151c8b694ff7a572de2e0e2ea0b7888bebcd80378025f5e35306d56747eaccdfdc697634d84aac54fbe0a81757ec0c503ca7241965cc3da8a195019156b09846853eeb3dafb4a4cc98bb74701cf13aae0b3f61ea61a99dcae76e2546d550a88a25d52235a4b8c079af93194846dae2cb23544a135ddf1dfc7cf70a3a67ac869c4679f43867f4de6fc31fafb2b537eba0ec12da005d0b16391e9b58807ace429006faa19f2884e78fc7863a0d9af52c1dd62b11b2764842042b927de607235ee9165be62cff7633e9fe1523e6bf1e4256b016e4230d536f92456cd2b00fd26e52739e4e85027db018fe88e6c5a52d44885c02a558c4c140ac5c7b96a8c942b5129db19371354dd6ee19cd89589d1b30c701d2624ab4439363d014746c5468bf75455c594d44e18b18583837c69547b207cde066a304022c7bfad8136dcb324b81bf532f584aa1d4158c8e8be1e084b0e8b0eb0596f1897d1d1110f232ac712f6261ae0fe61f12d800488735c2d4fc5a7e16e68dbb2882bed122c889f11755eae2915167700ccbb6ff7658471c8f551d0bf2f07692511e7f7197953d91c4f5afebc996a07f5d940c1601bef6e6a1e4951a4d540f2254921a868e11b0778cbbe970ecef6e1b8a93e7ad44d6ab03edf53e3964d9d4dee8882313580a5e16d48397a216bbc5ead83e9741a70b2b5c7e49d9260c992981327dfd280089cd76591e29abc4d6f1d51f99509e1bec42189beb5f711602815de8cd04986209782a6e22f1a82e098724f88ae4e8190eb530fb8bd2828867a1f8bebe1762230b87939a9072e74158d73e286b75f82da1168606e4cd027c402291852d522631e085c9861d102cdb1f9c1457c460de05b55ed84b600c9d31dacfb6b84a3c82130774e2de84711272cc788b499e5e6cf4c2670eae90a059632f964fa3a3f83453fe885fde7c5a94832ffc9cc0dbae10685f4d588c3d5ec890c79fd8f0b64f46c70847a1e469507452e8bf8d839e22a2197473e73d28340cc1712a7f8a33d77c7454092a450f7b44c6216b0b6896937e1220d28cb566b8d2717bdd7a247fde482a9abc34b10075e3715ec60f77f1006663019b7c05cbb887bbaa87a50363589b06a4d53c6658540c641c2dd16517d06aa547eced142e9fd92f6a31fbf1495e770c985c453c11adef28c4a9a62ab1e6c0f2eebdfdb29ad740e517085fcb133caf73b6c76e9a099feb2d153693db9cb6b2e266234493b8902f4a18142a71122ad280cd6917528d3a29db686f2cbe26f1066cce1df3e61af31440855c5d807d095ec07c9e938cb548d431f787646184283251dd0da562c8f8ea5ec8f1c3d5b9e2c0827a08e1704cb57d1d38ed1b592c55a27e9b86905a6d1aed71b60f59d258e30d86ad921ad49edf38c30096077a124cf0ec74a186aecda5251a03d5fb50600f932a5ba3f878ac87b518e7f39efce87c8a8d9a42b3f1a10cc5d215016ee8c6452858ebac5eba61e3f10e6138977dc2991305dcfbe06a6667cb26ccd3cd1b58bb866b61529fdc2890cbef86f1952d17601e39ee703368f2e56297e6011f1550351c88b20777696adac5e09e3b0048d150908efb7fc688c0b61a9399c7cff40e71424595abad3ae74467e3959245474d8a3912650e608bb641d7979040d1f5ff8a49fa35769124c10d2ca6605eb2669cfc346bde69d01f3b2397c0f996d173e0f836a616dd46e114b719fb207e29f4bc1e56f543ba8bcc801965ec3f3e9511cbc68dd732a47145128bb99a03a2be046595d0ab9a39d432079d026e2aad943ce7dac53229534a492c6b2b194a56a6cb979f2148bc712fdc8cfc37db7dd767e041f51ca526c189b6bdee5d49424d04384483b2980c8547309af2235cde60443345cc2afe981fb60453e9c553933e2bb691a23e7877ca5a3c098daebdb444a1b24530640fa2aee6cd5a46c627118e45b10f2837ddd38ff354236848cb21183ceb35d40c876e5dc9e4c2b29e67e95243c2f9bf950a95adcf06653a52985e062724028eb2e1dad806a3e621335244f7ca8b4770cc461241046fcccb2a4835ec73581ec1c619140788ec67a0ff414e9ca1b2a4639d592250a4ccde0e76b43d90a2f49e9a676006878bb9aa29c74802d237c937c9a1919541157ab0cf7b32dd41dee54aa0159304d0f10190d328449c30065df8990b2ff03c52158c82cd4617a15fc06f236b521315791adb5fa3f071a67eaa901e8529559b94058c97eb8b62cf649578aed0c92554f4a483ccc8f3c213b3647173f013df3c2f5c3caaafcebca29a8f02fda249725cd21ce6939a8bbee11233247daee486e325974b156b2f2af2307b79e6d305ecbb35909bdef6495ad61c5b44134c29184743c408d57c132415c90a04c4d1f909fd59135c18f2cad7905220e988915b5d85d696a3be9ddce4bddb875119dfa28f214701aecd45a16cb5e47a522efbd376e612457f8e85d2341865c093c112c8a83bbf1c0e6d33e953e0018c586f4535c49408d1b6034c625c2814407dfe9404a85815823929c5afd7a025df1b112927940e9e329ab59f208f2e8c482844c51a6a087b81a98adefa7e6d26f5d947f2ccfde3e1be2652857978230b396fca38d7062def38f8b9a738e5d0b101a5cec307c985294e58cbdaff0a00297fee94151fa02645f287267e3e7dd57ef1f59bf8fb5254c7bd01bf443344ee34f36bbd458d79a635be8a629b4ddbac6143402df50cd0077a830237d255e738ad1bd1f2d2137c73ff186fa7dc7405ef74d62943b3399f39dfc2cc2b85325ba3fdb2f6cce5c6431c6578180c18e7012569386d0773630f87ab16d630ff5067b887c038c49c759883494318576278cddc6b90a595abc23dd21d64925868a0bb5026ffd32cba28f20189b1d04ab47f77da51ea097aa88b8936a9395d10973c771b68b7a63d734186ff4806eadbfcd000f26f8bbc69d2ce9145629167aa25c6201942b6601cdca51da88e54a3b340fbcd36983beee285116005eca008539c5926df15822516b48a555e22c77c1c64649894144c2910b84da28ab76c87258565fe5c4f770a36ba5e7015af9aba060d142548a380d2586060a68e42c8454a6b515e736873f46e79bdee436899c18c1a358eed05e368f42ff166a307b3e2ecde167d1582f2ea1fb2124e1a795a360f79c8c5d59f6b915bc4ead7d166b1d439e61f6d067c2244c944f1894e2aa0d42b4603bba1a0bf62f6a737a180bb63e6d8821532baec9230742d6f0bbd81ab6fffaa75de36b5cd26e709f67f3751334e50d119185cf972c40be5692e6b5840d8bead67744e0e971c0216a7115022f6d52c594927a0c125b498642f945477f5de3341a2b7c8f3af4a99719ff11280c8cdf43def2ac9bb063bbf2418dac06a1387a47343bd9aef48799db6e127c4f9e170642edd38743415769492d60955da0401a8c1a58df7db1045d04c1eb5a596ba8435be4b20ab1560299b6c3644c0a34aea82757af8d09dc193eefbe65ece43914e5ad00c705858cee15e2c91d7e52a86d2e4adacdc61e5af1cc1bed6383807cb4adf184ac191619c65084f20f2ea2f65608488946c2df600b35e4bab979de85e8dfb89775221064d3140226cdf249432b11432d7193ae9006e20acb854e5a26e80fd19e44bc05b97fcbdfcb7cef52adf41fb955dbf92c194c603ab6807f4b4e3147baf7176f000fd47454850cd53818032ca4c24341825b9866e9138d3d039c0f2dd24c7effc1c4e05f573f5e6ea32b8f0e7780efa71bc60043d1616707cb29659b6ff02fa2a32f1bc5bb1bafbbd625d87f3cdd48a4ba410dff8c6e3716c380bf8e91b357155e1b3133d5bd5dbaf34629676a2bb35ee071570ed448999949ee76bfa3bc5a03ce47f04d898ddddaaad1114851de48acebe4bc18e129587cb09884d114be5877574d7e8763c500a68e8d26c29ba95f247de5214666160434b69c05279945f986ef70dfd98c08574681ccff10b8a2024d34ee6ca290745cc4da0b7a133a4dd73c62ad437a55c38b89717ada6ee52d07c43f93dbca0f5be1b966ed72d52aeaeefaa6c5bb25edc4d0bd17936641dd203252d4578cc84079a3f8e433437e6813b90b4b771a7985f321500a99bd56cc8e4d4e3a853ec712bdde97153e86f230dcfbd4f9d7e7c037a0de434541dabd8e472aa89e8bab846b93c5a20e30036f1b0a43c0201e283a22d914dff938c067ea4e74e2c3b2745f514c501126c3722ce2432a388a7428582a87feb68ee65ef3f3da17ba6c174d1d0832d92fdb5f7fb87169845f09f8db99b2e6f691cb06d77a37cb2896593a1c29f647c03989687d00a0d8a8b94eb1112ea99e5f9086c676481ddad337ac6be55d54e7943eb1e24c2ab8d00329baefb6e2dcfaf6e5db7351b33a181df12bacc1090ff2ae4d1694696df5ad3593ae9f92a3744549175a8b2a9189b35536bb356f0030bdf86a5a21066a3149897fd33627d123df69cc5a20bdc2937b57acbc5d5f4549c7fb9886f33f28b70ad3fedd13cd8b02ce838f82bc25c19c62dc4fe030866568c4325f6f82e048198e0ef25aaa60e7602999170ccf421b6ef100923cf8b89786932609d7ed9567cf5ad04a8f4898290d0e7f9aed1f80b6794af173f9e0e4839408d3f1a02c5bb6adf097aafd698a6a577ec81cbaaf93c18e23dfc18f7708d11eb7d9dc153c1c2dea1cf6de490ae2eefe687a0b880494c4b79bcbd716a57f87b6a608d6d089eebc18fc6fa0e6054c322b867f525e3c9e4fe5b1dbcefc0727b2244ddeef8752a4e65a908df60d43f22d756399ce7d60034b4c0d02089b3348e1ef54215eda0b063b66a509b129fc7ac0705c007cc23ec1bb35d0bfad37d08e8d6d8eea90af2728b43ff7dfa63c74a448cedb1134bd778b464fa7feed152e8b857e679ec85de1163fa7965e9bbe443da7c2b8dc291afb8941b4bec85a288c6048edb08170a821767c26508cd2e92b70d6b0a5483576c6c7f5c745a38665d94626f1e055cc89c798f6c236d26f41aa416a5b1034eb2a8a8d0ec1fb2401f3520fa8df9ffa9c612f1897e7ad590641c119659758d84ef1dd2bef8e36c6d8a1b3fc03c3de8a2d1a241385ac4af23c6e15833e196fcfd7876324bbfcbc7b62cb140d4b965728fd87681f4c4f5977416641f469a2a0f6416a2d8c64c48618dd02cd5233e35307df8c8a6f85711ae1b53a66cc3c9a1697839654455a83373c758ee00f2e2569e241564db235a95877d36a9d8fb274e108d03adfa13f34190ccce60c2170659078fb407dfd4e12ba6a705bbd154ba2066c90f6309b004853104a65a34c8a0ae864394fca93dd1d613aec858cc837ec520459424b1cfd09a3187953f2164b051459516e07434b4ddae3f540589436bcc19aa753f772075b56e8031ff893ef00fd815d919039444644b94c80ab977af2d37d8c2fab501eb8b2a883061647456aa731a893939deb51990b675d4a68624a38549abe0adf95e72bfb2503250e366d01f5cf4c50e76c2179bcb6db0b8a73103be57628fcfd65032e3dbe6ba5961adac8c9ecf14d1bdbffd31530d92e0e477930a51fb456180f5504c9adae1e08ead1a451a5145a55218cd14b4270b3501ee02d11d60ccaaaac33746250f7ef34ecf616ac7d36e70c00cb415ab7c952f0e57a0b234ae65cbfe0c48fced5d015c8370e4e7873c29c29cfa06de294d56a8d2248895ab93f4ad062ed767e33c0e307b62800914ec2387fdeee18678885bc0e9ba44ac3d1effd0c585093657d5d5ff5f980fbbc6cf383501079203d6bfc93f06c78f37f16fb8463446072c4f063737a7c6bed66884c7e0cd981ff3017896e528cf070677a3123ecfaff91746398dde1d27e8afaaac0deb09d5d1cc6c54c2e1e7b78bdd89c81b6b236e814a5c7dff3a90395d54516bd109e7a97da27800e611d024fb6563bdddd4a2627f00c6838de92bbbebac484e13e1d3c44dad010052f9122d2086303da834d31a0f92b595b3ce3db73eba93dc3e7ffcdc4ae53c0d1212eb279c38a70c0e8597fa036b7639d3e2d6bbbf7b79e48a691e03110b3b111a2b53c6c0d0c8d5d91bc73478f0183b400ddacffa60b773bc8d74dff601ef4444b0bc26c576bc6a014d5f2bf99b9f88dae0afe3c40aabf090ff203d538317c5d0fc1b8540c39f003cc8a0cbe5404306cdc51865440a1fae4290264469208be259e173f78abed944d96bd795d1e7d17028170cf49880c4480b77fba5a89adb0b59604e34558ea02f333dd767b111b9202942ab216495a0308988a90aa30b2e52a2233fe92b41f6ced823d1d2f640259e38d91ab6eb4edf872401b55e47ee0347426d8aba01f3931e8bc39feb4a5c8c2375554e1190fa928bd4a72467dc060a1916d6ef744d821d308c8719d457c5b5f48c28dd4299fd015c2440e6d2ea2817958271b5a814175206b89202cc85a5a35c6a05c6e5a2225ca93b66814046900b44495c5411c04502642ead8e72512918578b4a712165802b29c05c583acaa55620cdb50dcf253754b6c203ee620026f527a40e580c02f43d6a4e20aa6e5c8904031192cc58774420cefc677e523942655fc36ce15a07421a3f65cea8efdeebb21ad0c7d745d5d7c1b7bbd90ccbc1559ef8edbe070e0bde9d0bb34f45c4599baf3c5100ab61d8f224886c0b0a9659ede901679ee678dbdb726de88553f64d42cf2575b651e494e51fddd41446a913247f5886345cef3c8d08ecdec8a43e72e6b4c5fc527cec91a0dc91755f1b322cc8220410a9dc944c6005ffe6c5c10f66df040495cac2972819339845da51024f9bb33084b0502f981522d293abcd309bfd6fe80a8b7784d02eae59472991bb7944beb0abd97d6d729a8653f26830c702929aa44504c4e17d22270a65a818aa6685ceadcb1c6174e1f01ab0d88d52f87ecd632fde1f2dd1a20bb8149c6c94faf0f7a0a979b430b449b2a791f61ee06858e77151e2f7a685db1f9a2d408106dcf358a4056881ca4a9dcc493f365342532e4620fcc29aa29ba18b931539f4a75886ddb2501cdfb4d30603dc85ad7bee0fe6f50236996c4918a2e85c8392518ddbccfb5cd8a19bd1a65f22944bcd6014c6bdaeedaaf58e59f38b63e0e1911e37a4b9bfa4fd045df38e38fa8442258eb840e7270dec00529a64eb619d3a10c62f4055b78106c9629502dc84e346fb463ff65cb99f2ac8f7e15d3d4a062246860b4f063791987fe61f7b6b86f3a0be649fca650cbcea64d00155ad28e5367c4d7bfed425e950abd2503c80b6e90aabb09c746f1003b8af18d2c87d68bd02decfd6685901bb84972e49097711747e91a271d7158d9c4ef88cddf23ec7b1085546d96ffa2d0445b490456c444ab464c7b5974ac4c46d3f220e0c3f6205bb89243a7f51729b67f3382627fddc6e39f77329b5c361fd8d6080b4588de086f90c2a715a3cfdb9f98143455bf3ec5042753a5fd293f6cf150a943e41b914e4d03744a184a526c472f98503182c61b1729125ae8b9973c6b711fcd8ca05b99d88818658772240b37aba27987a87f9fd2e14c9454e20bd7ed7950422e95a149b70224cc78dd890bc5faccf514cda43636db406e52252fc852a3db7a3b31fc55bc25b88f2488df17bc8824bc0c44bbab231a4bdbf63323066dce956fe16d11ba2867bfd6b81214a15a24e65b9bd89fbc3de5ddc29365f94727235df6f2edcb3ee34cb9d56d9548f08e0a4900da00af0eef70c361f125ab8d2317ea6b46ccc61c698c2bd3a8991c83bc8583fd71f4a089a5895fc01aa64fdabf449d75e4677b2fd2cac3c528c6714a2a0431a7872cf6a82dd8aecda5754837e9eab1595d8a4ce5fa007d061c28918ac3aec5b92664c24e928ec2b5245970a31f457137d629d092a7f878515bb523f7664cedd153b9d9cb2d312dd2b6038555177eef90b24856a18458d60fb1b1c5a21d473635a7c7932fa90ddf88c103b614ccdc2d98f0ec017e27dc6b3f5e122759e294cf1852bfbf5d252ad9efa59c7f35e7dcb7c8126766ad5ee862c014b973ae8fb0074fa30356493f6544484087dcb0f596284848bdcc90787471e2e6ffdd282ed8dc7a15bb67f2b5e44b5ae148c290a11f5f072e8a5bfba8e3b39ea70301c0180b55a636a3c82ede20a83f5e870f49c8db4f4a7b1705e2646be966c44f81abab68318e4b612125456a48708d038968664707528221688928a1ef6a14686ea613120f659eedc6245cfe87f32b67e16cd69b6bf6cbb282a66c7ecffd6aad1ca4d98053e0b040daaaeb48a4dc22e4cecb6985b7f41bdf5fabd38517f173e4a498b205290a2b1100e447f1494d4e2c665700416709bfd7d9e3df7d0e0e2689c72d3487ffcfb71c4c124a3607a0cc72e17727b971c8eecd6f6558587f94be266785b9b74956082d2c6523e4f6394c202b89f8790920265498df52f61c866012b02a5afb52f785dd1408980c1adb28390fa5c8774bbe61b60f15064170101351a8a5f06e2b6912f50e6379343c17d425b6566db1694cb7769ca35d6718d53fd1ab3054584fdc2a6d37bd3ccfb5a7a84a2e8cc41e82dfd26be5f472b6ddaf0440f6c6741495cbe6118abf81c1824cbdeb7da464deddb0ba4e40458da61e5b116f38d7446976e288edc6df5f8629d92e2e33517f296db2c352b0eac6667fa9a4c8b3fba5b5f7c7f48a8037af7b2151e156287716d575cfabc8bf855fb797d819b33536b737d4775df51e92965713467f4c31350d3e90b13beef62bfaca21b60e0ba4b59c1558504df0881c796ca6acee85346aac8d6f48334fa4952c54c5cd36f988e8a12975bcb6b1a52345f60fc010bc54b0baa28230e8d5b2988fa51007e304d0d7a6842ae4d190a95281f3c7b5f4f0fb9d62e81ef6ff2604eeb0e0ed42e3d98cf16a07fdf251804085149fc26deb21aa23bdd49dfff17714fdc7787becb7bc35fd26ff35408414778a82afd41489b9abc22a90043e3c947182ca43c36d715938c6b2cc43d7f32ec55bbd0f297f664b427e54ad55c17bcbd9f0251e39de872c4cd4ff1aa7b282d8ac020b09b6d4437a79f406952a0e8f3d0416ce320eceee533df2110abeca5cf80c8a5f4c6081a416a8989b3043e2c0bf441a4495e4bb1b6b3517d70a00c72204334bdd411eb31e842a2bfe9812e9ecba432fb635315b7f3220f9b203abb11dc8286adbee14b625fc1a58023583d4e2a1802edd52d58564164510261bb715270d49fbffac23e7ae924752fe1f3e4832837c11cf11aa03c39c41e02416b3b088d992d08066479ca8d8ff25d3799cabfc697f676a2856484e2804e04ffa90b4bf87b3ea1a97e10a63def71cbba4a97c19a95b1ac2bd4a57c4788013305daa80e21bb10b2afd22c22ae656c5282f11198489d9b814a49f2a63d09bdb1b67cec8739f6e77e88addfc8673bbc5ba3648a9449be92e003a0af66e951bb8a158480e08770e2e3e619db6dcf8dd7091c02c24a7760893cfca1ff9f40e9e53493154f98ae13bbad709d5477e403434db423f6928b059fb18bf96c1e49a3fbe25a4b3b21ae69c74b50cfacee50f38e8d7a2cc1a37aa07122f680f0244f99c157ba4f2a132b200f178c2d439749c6cda3d468be44839a1e70911dafe367316f667ec6e4827f11237d6f87fa69c65ed4943a26241d55c862f548348edd20c71e5f471650aee56cb634129da9f293a055ca9324a524c5d2b0483c7df8e1c518265d392731b9af07764765b6d8f114ebdd271bec3b82e8ef30a0a067504811341427954ae7e7810cecdeaff080fc8792eccd6337af5c54a2d0f99cd00a0b9f59fe5348e0975118393077cb4ba664efce61b918d68393788c122974ede400025976f2aecde9e1ba87118234da8e28f2d4858460316ac54cb42267be3c893f809b25d0f7e0bb377caf5ec15fa16cd30c534dbd006a227d8ddccc5c2130cb57f02e7f9397f59d659c8fa4ad1802fa00fa7b177e5d6bbe7251ecb9913b266197388528229b909c54e32898d77b6e89f542b3bdb4cd969bd7d5616457f092c79c79a708042676afe3f3a0110d230a593b714ba01bfbe9cc2cab1bc00412ca3bd728da50eba54e1b6443fce39702f4363aad3a27f88788cfed0c88dd06256613f51f17b5f672297441a5326e3d57740a740dcce6bd6883bd34923c7844df4ae51b862eb30014cbc0265817006f3dec17693fc00e0ecd0cf01f622dd2865aeb91b3e240815177e8396c7360319998fcd18e218a51feabf0ae122421c754a32bae70de7eb75b03617fe73e5758659fa22b1a8150ecde0847ef2d7f95d46d4b2fb117436d7b80b79e9fb51ab1dbef2666bd61ff884977c84a7bb8452fc604969f526066af3966dadbdd87d165dc77476cd26d74e223812195b0904c174d2e914bf1eb7b674e4325db89d04ae09cb74545a00a88b00aa158c7ca1ac744e8c620409e8765f20842081c942446e13f7377dd4a787eb1213d62667433ac835c629804bc3c6ba20e50944adc968148074d692ed6e9833d6eb6e6bb0974c0142353fcdaadf4f9650a422923b1a5f52228380d4466b0470f5346fd3b567af8493ecde0d5f5348141ed86f00663f0e610c4cbf62237c0c3f33cb367abf9722f0bdfd2b915f598b495467c909b1bbab53d062a737820d51356347b0b212eb0af579be22cc5a67d95f8f70112db8a981e38ce7b6a66454f4228c5d0656d427999d4d632ddd7cf067c4f21c459a749829b9872f454e6b4a407cca7ce7bd59117ed6f52e4c18f155276f3cfa8ed345fd8fec47f0e231527d706e5683f1554119b0932e4a1b6e90427ccd7598a64a83baabe5b80147042072d42c58bc018c7535936e6cb04e75609a289e24b152df285b94258745f72e897d87bee48ea5519e7a00cf35841c0c939a96ef7c8daae7700d8504eeef4edf5227b7f4476af177b31937775dc7b890bb8d4fb9ab473cddb1f89ee1ab14a76c3940478f4a81944ee722b54df5bb1cd4eb094f647662c26f0a6b938f9cf0356849fffe01377d623b21efd6cec530a380b98558fd9912ad244d3bfdf0fa44c36c7ec064eb48d4304e9ca0df73989dfa6bbea36701981a492b7b0af333b116de9fad63ca692ed446f2ccbe33e3c8cf799432090a6c76d1d298ed0eee9fd81ee8671d50acb9cfafb2cfbcb700f8d80cb57264e688671ceff4641a891a896cf35b1de4f69d75f208564cbdf0d811dab558dbb1e586cc62b3d67a5835ed563d2524118a8a4116e021705e07ceeb98ca85c085918fae933b1129ddebb5eb2d8ddf5dbcaa11e0371fa947feb0aa644320b637948fd9fc1ce98c280bb77bfeff8311241bfcc268e3453e10903bdc4eb9dc835725bb7500bfa633872e711e8489b1bfd821798f6a7e340acb46aedfd711bb45af4c329db961808034884748bae329a061b1d9ea55a04465d2a4000928a2769599dee0c082dcacedbe633366db35882480985aaf6d2469ef9a7a6b29b250f3a907a3e5f7829196d1452152bb6d7bb05480125f5804828119b3e9e2b56041c5e65e262034b46079229d12ed3d24b9a765a6fa0f67029f591bf5b1c731593151ec0237823c51639f802b805f045e97028cff21a4c38ea69c77ed840e781001f051f1eeaa91c6fa570e2598f28bf83a1386b4e535ccc973d336b25dd4da83be65c498c75f7dc9f67e5b28d46e86574aec3347237f80f249fbf71e37f63da759715aa7ab95798bc0351d28ac7397a3325b502dfc9d9d8e20ae5999ca0fb5ec36c1dacd37df10058e74e69a1761fd3f284b5c357903b6ea6c890f6b771bfc03a5e087fb33700775048ab1f68e2e65e1978bb884f3e786e5f01dfe952242bd711effd6e424b70ab91eb12e2bcc0d2cbac40c892bc82e7e60f6f5b50fdbe188426180c43c1739a889e1e350517495ffd83243b408905c33aa9c62ef7330ec3e8b063521d5fddbb1a398628f702fc7c40d9801b30f31bd75087613739f175a48514d082f122bfa6575b4b14b7a5eaea7908077453c80611be86b1cd20c78642514c81e2c180db327402bc3fc72657f3b167037f10cf863ec4758d3d099f8d668bff0009cc94814f99a4d789723f4c0875e1d817fd94aae21eef8dfa691ebd1f531a3e0e7f7d2d5461f7238ad613b87a0389538a7942c0ffec62c578397afd9f0c099ead948b98b19c4760639cf4e1a79f747533af4eb632bd1f55d5c7c55aae9b5d9f07ed2e85a96a6e9dc6b90aa128834d1e9d4707e151ff553276efa63e20df1f4234b1313c445114ca79a01cf15ef7de4b6ef45b9f6b32f28a381a3e0985890e98e4e372f5f23461a2b3197ed350fe56f2aba49e0f51577922ab98e27b6e15131a37cc23cfef8afdec4c915a1ae0992a5315715521d8f389486d751a734a77be9a4760652625fe24c0e05e73b8b0bdbacc26e8a5cdd9449b75ffee0ac1fa866f784b21c84c11f0c0719bcdad4caa237ac57cb98c80680c4eac691483dec8e8bba2199ae33e007f1007573b31d525129596dd4f862d5edbd5db705fd4930e3c4aba40c75ce3836a63b660311146e738410f57e1d01c5d09e400e108af58e7ae9423cb6568eb01b867c49a08b0005c9a4d23119d607306faf260dffa1c5cac22262818636834aa7db4910fdb0c617b549d671b44d0e2f0a61c105e9ef7adbe01d821cf768f50606ded0ac626f24e3feb00913585d4dc926c16848cfaa810019c071b91efe292f11707c096d8f5340d96bfb3f667b549fa14e2e3d65cf1ef5d223d0584b56b08a6d7c2e87380d60e168f7d6b1be731a59c401f71ab4b4ac145026c6e1e31d5606eafb98adaeb82db2e928791302d7ccd5422241d0d4ee9fed622a0ef617cfa0a19b039e21c3c0f5e8b53cca828c582df369e859c422f80685e18be02148180f9658cdbd12dc2826113d46c197fe42aaaedb98b2dc08ce7b979461b6cf557c8cc246982036304496bd3e1c634e0f4c1271df515ea01f4076c3ca45b05b6e508970cb411cfd588702bf051e296de2a095923e810667e6ec0fa2a6ce0b1651898dced5227232bf493380d05444100c9c94ee92c4cf0ab4192163a3e4198b59eec06a5bb1f3c1eee4b3cbcead8652f610454bc8092dafc53b2573c6e423ce7e785de171b0fddfea0d87879bf6c463c8f88751844f21d3fc7d643b25c492ab8751f38f0e35e6023e3158df241470cd3e4844b77174c6010f3a3795b2335da47ca51c43e98467dd7417a8cc8650801d501ef742d2641a84e040946da0da1a36707c6e4719a59223739e719c99b95e7f91a2fc0b2e88e751846dbc085296aa7668aadb0fbe0a61db7f112e85621f74a4636fb33ad1473b387a676c7474404fe878782ec08539289216fdf9867d5986b1296bf8b3c9b26bc4fd9fbf0181894c05de6d8886f608a1cd675b1ca57b4f017c494b9e01c1605fa54cbd05bb884bdba24f97d5e7ad49960552855ef79dd23595445f95e77c6ea092772450d49519313f3a1c5673910b4a0c65f18a192e58b586520f9099dc942deee27e788747fd72631b856fc1e2083ae6952d70df70cf510dfe6b7de20cae8b8af3d5f8384f60f13facc9956e0faa2f2dc47fb289dd8f91f1d7a476ed1640b0173e0b086b15e7309da9bc110a2614dd685f5d0c2203d2f60a5ebe3b44dd4bd8233daec28449476dce1d8491014e8096b4c5da2d8b7ffe06dec9fd94e71a2f8440ba1eb75e2e920334fde3824e0a1d4d1aaaa8e46c5e55f3a2e402edad16faa7ecc349536cd1f2eda7057201ffbeb236c58dcde6f11fafd421497120e593f64ed10af485effd8cc62512b5818b303b45595490d7e71ea1c667302d7f8cd0344744a20661ee06c8d1dda0c9d176eec54cae252f75ef200e66ca8535519a69a39f97a4331c0bb07e208d0bb962a9b96d26ccb19e9092231e6ff7908d7d308a70f317c2d24fd6e86e83680ff9e5924a969cd914f07a38f297fd28276c3e9045b89c25260dbe7325657c81961df44ebeb9f775fe64098ab4c0c1abd183bd72999a9c5bb4f000efc30e84c964a1ef62894774a59469f41e6dd1e261c22a7068693671f9a4821ca7e074b387c5418ca1016c7ea721d14656b198942a4702ab17281a546608777cf65f16a5aa468e37f211d078d0d8743478e9bc07e2cdd229ffe386f6899c6ed35ae4b183e60991fd6c51e8c8dc0f824b48e784801027471185babe56ceb0dfaa4e2b2996db8761311bab01b79d946e8287b1100079122834c6ca57a1ab06c7eae02bd6c69b4aa1d57c418b8a5b00e82af138fd61bf90a37ecfc15270e7ecc4195cd01790b9e2a7273ab4f75f2c0cce4fb5f083d1b4385123175b839e21547f6a172b1b904fbf1606c51371978ba8bc635abffc35867b5971b300c0b1243f22080c7d5988bc4be77cb56961740a42249b9601b0de3be8c13afcaf54c57e26e0772c33004dea6bfbeffbb023fa14be20102ea540347f6b1ec86f28dd6cc7c1e866704f2801280d2f9a27455882930667e348fcb5c8a82517d259f2289f1aec13ebe621a1e169b811120fdcbc1504a993c59998d1e316c0b684580a99963000e3f8b87bdcf19b96ff45191c548c37d1f120738c949ba7f6dd37c05a4f790df59b481c8acc913d6f86dac2710f98b75e27f9ec86934524886e099c5d9b3891a245ab7a77b4795a70b4cfb6db7b4c8530ac6f4ab101fc5c8dd6c2dec98280f9b86068b76d3589611843c5ce109e1bfb24e0a71f55970ff493cdb691ef2648a5bbd5eb430cf8a35e31a18b5350d42c778cd55540a257283026226e49e0f0ae362ee431b688c32f56e826cc07f8390c0068df765e0a50f0235b80eab610d4f547388fafb13280a85e83d204317852eb45188464e811e2c85d88e97981f18bd9af2f9e75a3129104d09cebeabebe42b82e00f42e569d3991f5bc4bd6e57b6f2197ba84c68c1d14e396d4adb427d46fa4981d33a6006c41f5b983a1dc01bf18223317a6c96b4b390b265903982e9f643cbf837ece365100be3df932e38869061b33ea41c4856b368c4f4fcb3b846feeec50e263e9d8ac8b0efddd812c1298f01979a3731a2b430ea895860403b03e732167f8395428a78b7ff0546f507fc8836be57812d13654d3f9d727a59ac619ec8bfc5937bab71bcfd105def582bc0deef97e4379268e21e48100058ad243d18c064e9c7df6e5ba9ef53827249dcb3b0b154246191c975b51226c007e6bd010c54911058057739aebd586a415fb8b944472d2a1b0715402814c34d53d4d9559f4c9a4662423900c1ca481f8496de43856156fb3731d8f4805a88cf15295524c005d6ea479a1acac64fb7f1349475ddacb53b97080ad2165820af05bb5fbcd38d779618a8eb2525eceb5203f938d6e06bf492f5913136d9050f45bdbcb274ee8550e69a4149eb3a73887799bea722b181a3c23c3d2174fc84d2b1f3a2c8e231bf5a81875590ae80a700237db9eca88e10517c37b721009f905c9249a5c0c914e86fc66195779da51350ecc6301551cecc7967531915c89abaed9de3d69e072a138e60d66139be58efb19d06fa2895fec2fac2d3f0cb954a1b6e0b063d74e2e5cff4a19143f71e73462bf064e632a52f6e722e86b382ff69f195e79ba45d4e8ce56d0daa1b07378043202a6bbfe3942bf09c045a8e185b8ce8827abd9d04eae28f50b942a05b90c23e3c5928ad998383176f55271625ad513a95d3de9b8b17133d1228526498d9211e372a454d10352cc32ff35c9f4fd53c0cf77907a826c45e37ed28c612aa14b8c0729263bcde7595f575f060b2bfc0f2998f2cc25b4d6439da36cfdef068f8a1bfd5bc9eb74620df8f3ea4318e020635d5f80ed6e2197f044e284700cf378088e71f19400629ca4d40213bde1a41f321036f2b3415b00fd46a9e12c7189236143403d6eb57d0d00c9d5edf0cb7fac819f042a7b10be47da83479e1d7591eb681923161cd974a825307adbf25e3dfb958f090a90427563329e1750b776b9802774b0a46425a62b93169f42dd3d11b7cfc37dda4ba15e38425b398de8b50cd57ed5f62eec3748fb73b21a4291e96da06bddd04a3bbb393d6fc759955a8e4bb471b25e1b15940a5be6f265a00972543269fdf630c08c989c4f1e32967fec41d0e4fd40c8e30cb18a1cdb12f7398cf4c041bc987d98cb5c659bca96579945efd48690ba321b6b0b7f5f52b7d06d0af1517d89c21397dd7375835406b31de2ab0d7d73f7d8b5b0cc45b550824763968ca5a5bd110da4deab57bda6ad647781fb4fec71daf8b21d9d218312d0db7b2b921e04ee9f30134a97b465d5e04ad20586c410d95c08451ab0b47720b7722b130a17d8d85d9ded728ec59bd5b04a9ba4c72febd622ce2dbc53d3cacfcc2193a84a244e1723863e995dd3822e73ecc1e6b5d3234408f06bb978062cd7ba69e390cc4b2c302bbcabbb81d726152de31a4b1f923252b3ad5a08e2c269f808e7b4cc190380d8d19e4199434bf49f3bc4c41ca8e281d8e7ece0e0a0299e83ef99c422b4d1082ff6f964b23b0edb7914914040fd6f3c4c7af72eaa325fe08397ece8d8e694131c96afd408f33d247c9a796481f45e2301404ad35a931958f80e0d6a3ab4f3e54b4f4323281d214f0482304136f20a9d603913f8dd0d726093f04f1b2797e6c7885923ef55a5f42d734d686031460f925436ee105281143d82611bdb6280d4a08054b12dcae61857ec58104f16068d6083b80ce3355693b354c6543c88ee8400122fdb1343db9d17b6fa04faf4ec1d6b60eeec45b994e67e55210d1a2d20a8ba5213142a77c039763242e033e090f9746cefc48c0e58b1c39ffb9e4f8d8c427816328cd13b7d91fc005fd71baad378a2d80333824ece93d667b3e9cd45345b5aaa11d7ea744f0214094036dd7a08be29d305f9c5aad715d4d294680e6f83dc6c1cd9dfff9f3e20945f37f99377cf0c43e759a9d80de1fd21d23e44c0b189ea82233f29d16eb07dea0e04e1943dae4c73625477287c9212047472490732f98543ead3743320d93d33d12109e88bb699eb4a5f81387d96e39f5b75d8482fb561237c1848fdd8e7711f2653befc49eea13cd10c7a7221eb4726b0dd94ad947194cb476579431f3d8875fec203e2c351f7fe036bf08fc8c0fe8811f61ac6997f61519403d072f44913ebe9beb766fc0f66f7a1f0e5ab7cfd0542fe78ef78d56acab5266430d76cc1a0612326c3a3d5dc601211c02e2c27556aa27713aec782d1de96a2c6e43485a839cb122d28e76345b9ac3582d3790147c94f2b8d3c56155a930507021730ec19b5206062cbbc6e8cf439d84c8f7b73a51ab4b0f1278f560bee2af8ce0dba70b7fb43d995b3427085c293091917de73d8d0d9aa103ba93aefc508cec37d1c72e812958081f60fd04c0bdcda3e18f2ccfce022633b7c7b0250f21cf41210fc4a871360e5ac750ecdc242734cda2829b5b6087cf30fe0ffb08443fd4041bbe6c15fcd277c2cef287f8faf1985e740e465423f85d574b1fdb8ac5672a68515f2edf48dcbfa2d2cad5e7ea869dee700e4ed0d96ca5fc5672d96f2b8ec2171cd835c41ddfd8c11d30f1036c55ab2ddb25c82ceccb9f55f12c1ac159f7b471b150e434dfb524dc82c9564aacc9c7879e643888c7d0ca22b9f4415b7641a3a922329eec45f224c9a1e91483828bb2409c9638762d0358e2a3f238008c56d7f60d8f4730377a1bc77d6e3cb8b4f4e40f843e24052d9bf1943419a24c5a8a4d85bbcd7dc0e860c2a53702a198fbd021592e004df3ef267e9af8d1df484ca9db74e5cdbeb958930931e8b6abfd69b5de6e79641192fefc8f47b5a72cae65d043a029ee46518dbaa3aa2ce0cfb7d8964b31e501f88705900b3c1a5e6dca3f49f4500b4307fe32ea7a904c913f05cb6d0b8ab140931bdf6fc0dcd008f1c93f9193a6653271c6d2461e471484a34d82a3f3afd17f31a7df8ef96063c9ef5fb349412d8a856bb24f1e5a7073da9b51018d5270007e7dc1522d8193ed235ea2ac59d80af83e05de168b377220701b558f54068e8869073a8889ce350cf9bf5a10f9e0a324e0807a522bd48e6b19f7825ac99258d594f6abcab8eac0e30c223c19904d953813b1469689c4610d982ca3d07808657261c8d5dd37cd51cf2dcddf8a6f45110db54bdd0ac37832c4428f114b648144cee97a988498e67fde13d84d4a90f4f07c4730f7c1043736bd26cd203ec04a2506d09f7eed44b3868d653b9aa015b0893e7f90704ee45ac9466d1c84df74df5d60f59aa1926cf0603bc51cfe902224152b403fc15f99557a7cb9f26a10bc6d6bb16a5d22e77cbd0d253bd83f5e475612e3dd25fe01a4c6c252ab735577a63551b6e3d843f6cce53507f0e0cc97f8fbac430f7a2b3bef19b53d6c38859a5ccc3d99bfb2d2634c1ff469034a778a815d3052aaa20ee9223d92f5d01ad38cdaca72782ace86ef3d1f5b4813ea25eae8e38b9d176a4776e59c4b439620951104625a84892161189889610eb133335d135590f58855fe110bec7cebb3973785efe94f7e531ad9bb8448b9a59449ca2c08fc0757087407f4467940c3a052a80fe80f4619737408271004a90ff509592dd3725154def29f375cceae3f7386195563cca4abbf9f53a738618f46adacacac6260bc95487f5c7c7e74dd24f5f17ee8d5c73c79650e73fda3ed26a90ffd702c90b31a6911163a6585267dc78576e5ec8e1134e5299d15de4093b426bb4aee92cbe44e316d5aa898362cb78a3bbb41d78a7bc5a5dd2cee930be5d2e0d6e0d6ee16978b1be5dee0e2e005060686d66a355aa3b569e35a4cd7cdc1b5d56c31effaa7840fc7366d74c8cda0c910e3da76b82077d1224e4a8d5224b4eb733deebab23a53df967526dfc47cfd7babaed533f991190977b48fb207e74393d467fb786dab5186212bac3ee6679d891965f0704084122e6eaf9bd5c8a245fe242bb4814e49d1d7e62dfa2a2167d5ab1a6f78d3acd76bfb481d87dbe03ad486e94b9fd7914619732f9836f661542a154c2a6c615941a980276d2a7d5e471a65cc5d2bbbb22bbb320ef378f11464f0301b5388c6fb05cb224319a1b76fadbb3f773f1cab4fd3a6a7b8674dc893b3d68149a37e7d054c9707e84cfd5a5833bba8e180165a89cf26298f5dfd6daeb356ea7fb9c02f8e48b400f45a9c2bbe8f3dcf3967c6efd93d9c31e66ae4961ef4fcf9b50c3d43d037548b5551c6181d8f1c5bbcac7065e0fe7e0b6e4a44546a8794802174a3012be14110d5e90d2560f83c207b35d064663942d3175af77c09786b5651866dcf4701cd7157179be9e023f47b4887daf668af299b9c536c75d2843d7f32800148ecf926501bfed68a4dd65871a2e948ceda9ef3a9de75df7880b75ee818ee701ba1ce310c5968a049af7a0fd4a449132a5aa868a1a2a5494b9316a096232d53cc2b44113ddae5c2bc65f774511fca1d1a8d5d1fb55b5ef20671d76b10d741cd4c7d770a9b36fe5d542c6030ffeae07260b12f0c7675260d6ebc3cae0ecc0b9d1efdb227dda1b392d0f7e9a6d787b3eacb60a16f7961ceaa1ffa40531ae5a67431c050a9f8b25d9c42ba2943926460428a3a852a954af5a14aa5ba9eb3547f512a15a71a3d67597b79fc02e59e1bbb3ffb5ada85d3c6dd6ba5b17975aecebdf73aa194724f5e1d347975ee7f42e898ffef2e964d9111fd74df134ff89c54a2188ae2e68426f3ad8505fa9a4543a99fdb8fad091de2c0b157c5b08084088994165898b7239acc37124a8062088a5b886306036119f6e90640a32427c99459c51178dc9410da47ac61020d49d36d273da1c302b4c002cd6b94b3eb8f5e239da25d57aad56ab51a33519e72938200fc838de0580d04d04c566d7931ae1813768d116b384d0d0e3a934601deac5d8c0c09a3f832248ccf62c5d0742d3bba7c63d5358e35f5c3c0bcb97991a6ce902ceeab9369839a367557a0a953c9a83aa83698c148679463047bc1de210fd5997ad31919a101f01f3392f0aa5b2de1013072b73a53bf84b04646d390707570ecea884331f8b56bd744ceb63a356f91aee33abc5583ecfa1588891a54a3e0911723ce9baef35c840069e3d8a4119abc538f3e6d72ea0638c9b93a41531c507a8077ead17a93214d75d11b6f93bf3daf6587bea940d46380a1ce1b2c6786dd953c9a7aea09a283a3ded440cbb819f28202deef1bd3908392a7874e0d37dd2cd9eaf39676a7babba39808df524268fa2e38762360b74a7c8180dd3edaa05574abc4498242fb8879268d0a54693888f998f1f2d499fa32d01b1cab3374bbdceedda4eb8c6a9386ef140f4d4792bb6de0658598175f1c65f09e9b986fc1cdfffc36f0638843c78c9cadce54cc336d7cf5e4e5a1fe2f2e501af5f1ce5b25d23d826932ef956cceaceaea57abbf3aabbfe15787da80b961dabce0306d5c74501ba91dd326d461dab4f0a036587898362b3df4a036547e9836e00ba6cd09466d6820a68d29886953f2118369e37dfd3bc4b4e99e74814c9b9d6bc4b40932ba2a1289f4a954d7722b6dda24cd0986868539e70d13c145b011cc046e02fbe023f809fc83a39836a7af8f916019b561fafa58095e326d3e26d4c614d3a6fbfa980a0c446d54316df2d7c7b36983bf3e0ea236b0496bfde2920a5b5856502ae0499b4a9fd79146195b980ef462447af331376765293e533f4624820069e7dba451bf25074d9fbc3ce3e70f9b4c9d98d1757c64f966631f4e0bceaa9f6fa397144543610ff4b5aabff45ed553958a5b3d7d7777f715f79d73bf1aad82aef863c59f41d3b1aec60ae4ac30a66f39f45898364e61bc9629fa0e992e1cab333cd306356d688863b1d4114dd2ed1f0d657079aa2bdff2edf2dc7edf2a90da3e8644b852f20701df1c8c8776f14e3d9a658f766aabacecee7a2e82bbe33c1751bbbb99c37754fa427b39d3ac923049f2b37a9a12a08062a78400a4c293ae38c6426a06121f24b119044800027e7e109000166ca2308263404151f4506a638277ead135702c07184856b10083673f117ba2dc0ea09936ee5bcc994cb6edbc0179ebfa78ab3ad9f52f8fb7e64cd6537f82f609df045c38a014bc538fb6db9d42a1354a731d72de2a504856202d86cf77792a101ee593ae3856fa54105f3cc7882f3e5e1e67d52e09581222d9ebc69fbc3c6177016fd4b3eba8dcf5af9090878e1e109d87eacd6547be61a0c9a451bf02b5e8d0e4e52131a1491a034c17a54d1bd5d7212cc2267a26d90af0b1ed9338f62b7c38744a17fe642806d1190243ddab4fe59082881f658d881c37dd6a65fa42d37791fcc01e5b90d99c0aa9cd8dfe2a3a6d962d34e9edfaddbc47d099fa446a476c57c9ada25bc13bf5e8aa010d7c3835a847c77002bd5d08370c75ab5ee700816393a14abc42268dfa2f3c9abc3aa422da7ed885fe42214dde527d42d445107c30f4bab93ad515ce19fb56a75a6075810b5ce05bd11585797149852d2c2b2815f0a44da5cfeb48a38cb94bb7d7913e0fe19b9eee4e7c09bffb96efae487a175bde8a242b9e92e8b2b2fcac2b3f2b4f595956505cd903fd3dfd7ba35c1e6f7d9664ff7e043817496f6193f4472dd8546cc1653c002d0089c4bdbedf299144edef43f1051cd3abd07dcb689df5cdcd228a28512583f4bf9c5babaeebe3eed8a2b86bdec0a62cc1d18426b9f216dda11b34c9954cbc356bde9a9b34ce623ddc6bdf5a0f3bf400b403d00e4549e8cc6400655f980c982460cf990c740c9932ee391b52db17365382c79e50f69cc57e764747409f2b65f6b9164cd87624e9c740f55b513fa56f72bf94723b3c9ace5af2bfe1eee90fe7c611f4e8c929e3e9a1d4c7fdfb3ed2cfefe3641927bf8bdeeb0f27e7eeb9cf23913ece278acddeda0a16a0bd40b9305ae694d82b3af4ef0f90384029a5d45a6a7d04fe261369827dbb79c369189a7b589da99ff34d8fd3bdc7a28b9e4924e90883dda3f77ea5074f360c26b0302576e59c8055d7bc899574242fcf888259b4739e3dc8e15e399346428ee78b17c743c74be76bc8955c597a148ae506baa8ce54160d4d8d278626ef4fceb63d2c0f1ef7962e44f4dbd14785c148a7d95aadf6412f2e8a103ac6f564ce88e67e3826bb7e0c4c34e859c260b01b0f0f454217c6645fd8acc7c89eb32b7c76cc9eb39e1ebbea5417b7e333f59710d1e3b53820305ce91c10a7b99f7ce80d8db8cbea2a8db666495b336d922baded7ecc99fa42625cc9a3ab0e6f5deb22b73369d4b7b5eae28ae08cec60d793109d77f902e5c26a8e490306d3556fa83f2a101746fab1ab4e916735e592ecca39b1eb8913e22319963e1c17fa6c366badb5d65a6bed3d95447ad395c479336fe83dd12296273479615c0c4a8976ef8f5e85e92c9233c2955954188e8fb486dd72d65a4b1a71438086c8c00f2748e93d8ab36ae9eddf3d673123765712af0f9f295dd84e57f6f0805ecb9469d3c2f1ec9f226c928bd51fc554e8ac25cbfdc01f4787d0f8e34a1f9abcb017eea7d0b6b0eae24a3c7225b753e95f979289a67022f5a13f4cfe8926e90a90269df689cea4c763396b1d86ffac6a9da6e2d9a0e9cbbce5412dfa96f3d94c7e7675eb968ad77d9c5534a527874362caaecfed788c927ad3206771401488524a29a59452ea96c602da82ce66c08b6ecad4dad513e6a6b4aa6aa57bd6b7ffbbfe744d47325cd9f3db93bc953a8b3a2b7f5087b96b6df55a5d53f1843a33dd9d56cc5debd4346bf55abd74844b31573157ad67cc65ccd93ae5de7b69f674ebdd3b3aa52c7d7a7fbcd65a7bb969eb9796f0ca514a39168bcbd6daae92845049dd28c690bd32ac1954c4dcb5620cd9b740e8bc72f75a16cdb5342c16676f6d919e9c51abed6e74d8e33e085127b357f6ce711c973f1cee5bb735636651fc1038eb01cef2f10657a78d84840a1552e8a0bd3d673b9c5062470cc48126ed39db61048fe6f69ced2855d801cb81874bddd128953a4d9a3aab4da546237fd68753b1b5332e939c8776679a3fb32e62d347794b65ff8007e83c82a033c79841101b803103020c26f68a1b82f6b773cfc8e953206fcd1fec4091ba1bb4d8dd5b6f25206b277b54860d6ae7c734071135e50df7f7c3e1663a3efbcee9d2f5b3a76d08daf551d58623b61dda1dc53a84392f1caf2c6638b2d0db4507f5d9568b6d3fefb0ed152eb06dfb286f7db8c5925b0e9c1d3e62e8c06356031172f0a8e186580e3839d8663930d081a3834c851cca998e212ed8d9343d0a42e589ae3090088df79ce9d8013584eef69ce9c0c1035dda738643910a380ccd7030a28a32c698e140040fb59a4f0f3e2f2bdc3acac0021b4e88c86e86f8d7b2b4859edf5d7156b14344bbf984d0252e3407ea063822a600ba997fc3af181611b3dbe7cd524a79bc36d530370cedfb0ccb62f948ce5b0d1a1a37c1d6d46c1f1f0064c310638bd78d044e98409f0bd4fe00017bdd4c72de56a84ddaa8493765c852ce62bfc095362d803f0db13da7d873360318bba31f1d8fd024f5f1f9b1b61038cb6733e460db307ab8f5a033eb21db73d6c367f3c0b3c30d28a4414f18a814930b28cf0a163a8a31b6e72622349929a51f02fa396b1d86ff2c160d0d2d799c457f250a65d97309143c36a574c767e81bd1f46916fa37921f3bdc466c191fff9d52d6a6b2ed94e635d29942543485888848ca1091142937d3ce5e52662fa1961f66afdbec2565f6129abd8430edae8fcfb4717c8bdcd81caad52a90920ad5af2c4d3e6090dad1d487d69437210e4d869bdeb84e9d89816e923aab22a19da35474a794baab5020b49c554a158a022566b5fa9897892bf88ff995b882212bfcc7fc0ac45fbd6744cf2d8e320c5941fc7f201986902a1c609b600ab580daaa27c11d83ac20e6c5f1848aba11ff9f9c4033104716ea4cfd79a3638f98177f25bed08ff9d5772b5ed87aa60d69f5241723839be182a1e387cdd975ca0ebb12798e5d752aad4676fd1f9a841f6735d4367dd577238f84ff27b338922dd09020d2519c754614679d79b1765a75397bffab272bd105e64dceffeaab4e75adbec650d76aa447a033f5e98cbf2de91168fd91741c31af7ad296172666bc4375c68e361bcc78875423796b3468579d6bd3b1a5cd96b6285d8d84711cabcecb05561ff31bd0d98038529da73edf0454630c94ca7a3449679abcb6fa2f4ad026ba5389947cd5efa8c6d25b74bcb6d44d93d75679ea4cadb15d9f16a56aa0c96bb3d96cb6dae781eb3a22b7e98f8cfadc9cbd2f0274c3c0fcfc7054302a714e1ae04ecfaeaf4b16259abc365a5bbd8dbe8a6ed58fbe08d03254303030aa91f48f81b660ab54e36f9d71ac291e34796537565dd4c747567d64a7da165c44b9010ea88d7641bda042f48bb41f7c9872da9c717f325d1cf02084614cedc5cc5c6cffe9999447a45126e5116964c71147ea6ee77df51bbad96a4eab24a020521a8d36565bf25a8e6853125712c5b63309e52c765aada9a1a1b97efd5ea75da77148509832ee39cc81d144bf3ab5d8a4d3f41d2b0f49a63f4be3ea2a8c20571831868f1f3cf870850ec6dcb5af5d7deccef409407600201b5a1dbad9aaab860269985d2ba745ea5367aecd34d6d258eff55b8d4b504b4f6a7f588442f9494b1322cbe6c495ed7122ea04c4892abe0385277b9c0872e2c96347d0a4c3625078bc1f4d6a4e34e992144efcbc92c789de12268f13bb1a0d8d058379dae34412278e36e7c97cb40f34e9a13c4ebc3d457a058b0e73960f8fc5e3c4ba7dc74b4e7426b01f1e46f4176197f2381454977f688426354ce77def98ea48f75a6fcf09e334d0b03bbac0bce5c35bf5c3b9a37a2b773d0e7bf992aae73ea38bc346ea12ab2e312f895f123833f6b14987551ea6cd7d7f1f9a36dc1741a202d9fe73e61a040a6a0f3b6caf39b6d719b63b19db5d8cea9a348f55574d258de18df4daae71d97607dafe1d0a72d6ba8806718b406ba038d01e523069d49cb57ed12775d81463d7e7c0a451ebbe62ddb3badc61eec308b0edaf39505d3573a6be2cd76a6afd7cecfa8dac0d116badb5faadb6a10db595e52555602645750a2554384c450f961e15504f781b9ab31d953152aa22a06a0828272e3a542c0f0bf3560965d3b73bde4a6d1a3e7ddb937afad62768889d4a7df8e1a4c26ff970c21276cb0e76cbb37c382d409be5573e1c9695190e7be5511fce0adda857f970502a526c95073f1c15f04f1f0e2833ab4287036cfda60f4737609b9a34b14d5ffa704cadd42efdf7e194ec0754c6fe4ad81f1093fdbdf7e17c2eefb9c9dd671fecee3d6f7dbb7bdd15c100bbfb79c4ee9ef4e1742d956da5d8232a72ecd1144cf6e83369e3cf48366e6d2c8510367e94b74c605204d4e6fe2a61d2c3122634189760b164d7cf5eecca644910129494b29da2a720c2b08992860c2764541cb101e60810a023619cb67debd2834f1703702207046cfb7508db4411cbce7cca6d73d0a4966922c6d2c41407086796a673ce5aeb9cb3d65aaba2b8c02801868f94cd4bf05802f6a289fc10febc5c8804d11205508a488f0f2c4ebc4222497eac28216b21d24510a8224045682c448c40840a13322680568a0ce1034485448a8abc50bac813409c8ea81499c10fed040d2c32860e269b637566ba608714a028fa6187d850101e5230523aa123059f583622056909294b1079467410c4c8e626ca26783abdc4abcca810c9109222922e83c047ca233c7a89278648e18958de42c7b53985268af0fc0206568796484984879b4b9491439dd9e6246a57c70e9e02121e56081ef4c796c2cfad3231e487582c85988f4685303f13842693fe655833ec1232a2d0a63d6756f040e5092b84c01eba65cf99154e8a68d49e332b9c98c18a1f2828f4ca9e332b748cf1c3fd21b6edd7199c78a1eb0c7dfa4eacf0a156f10220700a0dee3973f2a33204cdb2e7cc49114e4a266866e061dad1cff7ecaeff52436f793f1fe6a5fbb9492fd70216a8ae1b40683756a4c8b634fd3f4f0a2f674d12519e49236e8a3cca700f106f5041ab3370389a1ab48b392ffebab5d67acef8da6aadb5b55aebd6ba4ff769dfbabbfb749f5cf6a2d67befad3ee7df39e9a41e0f9afe8a0bee38bd1cede243d3afd35acb0589314429a5620c21a1a92d42ad576bb5302b73c63f9c7372b1c9150a743aa20492557e10cb41054a1242a02109a12641bc0ceb55411f9dda7396448c344b02063b4291cc73c6dc9561cd9801b51cb5948e46a7548a5afce1d84c2d0d81460dcd7099edd83f53faca26e4e0af7116fe70f06842086c633d6152a7dc1561d63ab4e1d7509a1a1afa60f33a43436badb5d65aebc4be7fef45a2867da7d8f763c2d19eacb5d65a7b2aa7cd11381060df5fe514144f543410b2c4be0fa35d7eaa98362fb406426c20004f6cdf77d1a2b5b6a54510a27d8304b1ef877a4509902b764bb637b0256badb5d6fed899113bfbb27c3817a888226cfbd65afb2b1f8efd92ec40b18a78b2efab84366589001e60df22603676bed8f74f3548ece0c71325ac8015b150345d82c3d3417b60c0b86beef4d01f8e3535d164b6447cb1002040b4003225dcf64d2f801c3f901194c34f8ce8c909c98f12113eb6fd8f8c233b04c1862240a2e041162c50f0989e1644dcb0ed7b1a15c23c19c00f25b6fd4ed7987e7226c90043d4b8288b3cf98163004304d9f647344f18617b02744594175c8bc50defbdf7de7b6fb6810f1dd48480e24588dab6516260848bd9103a6cfb35bce54367dbc7355e43219151ae2608dabe7fb5ee6ad82103223868e0a289a595a03042db27b36747cd7135f6fd5cb4ef6c16c4920f0826e169ca8ec09c80c0c2a8010c94acb67d8d0a6160dbf661664038b12d8ed5de22e9d613a80a5929827e429361e8c3100eb6b5f6872bb61dda76f60224db86b1edbf7d9919ec886d7f86ddf486cef0a149341d98a8368ab203878218b2dca3073aee0bcf7a90218445618c17f70310150521f0dc180e47854100422108349f999bccda07267aa000041faae80105a21215c29472e44006d3a73d6734d48ee870cf190d60a0605a65cf590d33cc74a8d1d0d53dbf08c8c77a2721fa9e84782d2b37e87febe5bc2f4aeb3b9273e8860fb09f0a22184390c5a4c9fc37c3592cef24445bef2444bb0b7485a66bf81cc24582f6cc9e3325ca1e6a98125131dca1d49f7b5fa8784732afe0b5fde9cbcb8b152b8fb3a40c09edfa17c77aa85b748774d02fa63f7df79572a57f393ba0f4555f2d8f47fba5e60c7efc29fc19cf2f9c34f0c37226a57298ca217e97075db093fcfb3ecffb44eec5e5a442d145bc516ecd592d98b0f5e3eab2e7929f2a761e6b501a9dd493442e0702e0a79e86a149ae2c67bee9ecacef55de24be044f9e3c79f2e4c9932cb2c8228b2c98d08c6cbdfddde9dbf1059b5bacd0d359de68814a1386d3ff863bf52e3a8ce29c450bc03d7939ba651ebf7b9dac3c67f273cfcacf713567d6e6c4961918a1b169333747e948cea046ecd7e244dfff5c73a6947bcf163bfe8df110d9c63fc1797bb226b4cd182da334cccf88d5190cd3ea4a2ff5f4c349bdfc0da75e4b62ddaaaecc3a24dd407f39ee72f9d4931e8abefc0dbfe12008826f411004c17f10044170f5200882a0f7200882a0ea411004419507411004ef83200882fa4110044110044130e641100441100441f0290882200882600be09f0082200882a00ccbc33c08ba40cb00bff4e180e08a8914865a7f255b0bedbb6c3aad90408fb65a21adc08ee6ad90562089a622adc0114d85b40233edaec08b697a055e8e06de4b8b01afa581b7d24ae0759a4c2643e112782d475756fc5a96af1f0eccd70f8725f537dc372b0c4b955812825995a46cad5db63b7b399c47a4cefb4a267df252411b7fea43a1848dfa70ba172a0c3d18969520281bbf782ca2dd31261d1bff0a462cd96a4c4a579a72c2292522777707c5ef75034d76afd4e3ef72bc157ecb9399e5490f26e649948b6ddad48d3ff5dfebc39fbbaacd66796c4cf5d687b7bc29eeb2af97cd79591d2fdba3c85b25d4dc65cbd256deca2128de5231e22e2b93fdc898c88262defa577de5e12e6bb35598ad96369eade25e755f2fa2d714d509c85db72c69654d5577dc75653223b29fad7a2fbdb5f2aaf797bb6ed6d1aaa753bc455ff5348ae3cf425aa5e2b24cab9ef67017977d6c59cf563d55bd7ca8a3e98b3381bbb8504847d9aa9780bbf0ab056fbdb01abdea4ff0d60b1feac9292b6b684298ad9a2e533dcb5db894f1d60bf655aa9fde7aa17bd5b77c382afbaaae4f854de3abacaeee55da12bf955517c946b259999561924c666d326b9359dbabba4865f92a5fe5abac2ed20be3bfb2ea1ae5ac351ec9ea0cfe9cb5c6a3b2cee0cf198f5e65899f935557b6d938998d93e1e76cd5956532ce26e36c32cef6aaae5c96aff255be367e5c5657ce59eb5c968464d5856d75c656c3506b2c23e1c9507c52575309df4b868471144da3a71a594aa65ff9de66f26c2a3615cae3649e8a4c25e3641bbf4a7722959e0aa954914a8e546efc20a9925e2a2ad28b23bd2ae9b5f19f462b3615958db355fc3a53998a935519956dfc264c1a952a6e54d6514947e5c65fe2365969b692d06bf41abd46af8dffbb2f6249c8667a853adb367eef0a6d375969592693c956238f0af90c7e2cb412672eb95cd65c7af9a1bad1a8e62cfc373cbff22bbf5e97949d85b169dbb951a26fae7a9729aa3aea89bcf5f2d88b36fed10aaaaa7ccf526efc303b1b7f0ccfc6dfb978a8c7b6eaea5e75067fd6d8b6f177289106390bff48748105af5dc79290b3f0772f6c7a85ddab7b956ccec2df6285e648369250c6ffbd70e96ff8c8378cd822a92cd728de22358be8bb42f1167dfc8eda1897f4e3a741de7752f94ee5b1887477e5e871c95667f08721c65987dfc18875b2eaaf443cbbf902dd5e80fa255b75994a448e1f3f599ab2714c4bfe22f02bd11f14a9cc59f855e2dc3030d96150326f818fffa58926f5c826469c3635354f31d5391a734b2cffa2b3f1bb883a36fe14fe50846dfc2de20c16fc2ed695910c512a2389024f23a9b56924bd9248638f9fca3009ff4b5057ca367ec1eeefb5f1935de9552ce560d2c0b649037fc9b6f194c1e308b48c05b4052ab5045174fe9d09876e2a233363c69c11f06dc2a95da5de02a7340b2c607bbec682c79e0f3375f67c3b5114e8a6b7ec90b1322b7493cef06698bcd66a6a648d5ded8c426bec39bf1a4982e496843ea6df92444f6775d8f34a9fe96be9e9e391ccf94b98e20f5f4c31a6b836d14d196ab9a7dc5310c89ec876fd16269aaca1f5f46490219f649c569d69e339265045f2a2403f14e873e3cc15a09f6bbdbb4e2e06bab9d19380b3e898b347a7cb5f73c6bece88076c5b1f81ff6f9fbeb3b32d3d49d1a4df5c2eab33f6497a0a25ad8cfa6c217f323fe93ab837c7605d8acfd8b7d6dacfbe3de63edea22f1847b947a76c2b13c29094d64d7fd5acc37fe111d08781ee9729b4b720d19edfa4782bffed76135f805e92681f2051c7b69e638e414639ee1a8dfeeaf197fbf01e1585123685e22cbbe32cfb82f5d7a461bf07da529f9b33f116495f366d92d077174c1cddf9ab807fadb8e62f9f18a8d79c46b5d8d6470ac55fee39a4bf643e74284e69ac192eb3494a0ba5086deb76c7ddfd96444bfe0dd29386751ffd27e05fdd05ee49da554eec6aa0f3085c1881095c757faff2a0e10eba090259f730d01624d3ab3ede17269a44e611fed27d0fffc5defdf9a170bdeeaf18c3cc23156436e6ec48537ba895a155a67aad63add5d66a7fcc3e5478f38e1fd391d65e6b6f1d997490e7bc1ce66ce5eead37dbea2422d64e6ba7a5a41949c9b4f42bd1e0725fa5d4524aadb5d65a6b29a5d65a6badb594626add6b53b80c879dd65919eca872558c215257ab90974979441ae510781f083eae64ba267daa27b0d64abf625c2b0836fd8a27a8626ba5f8ebfdca554a29a59452fcf57ec5d4b3f52d04ecae63e549a242fd2332a4961dfe5d4c299197e947b449cf6975c66bce62e2cd699d16dec9ba5705f6d2fb4de0007974281ea0c6a804ed1736390bd110000000021316000028100a088442912c49e344ace50314800d69884278663814c7834912e4308c310619420000001003808099a2a26d0066bd56f063d9a538f7eb0a3eb62e7acaf602d2db5abdff4f2f0fe97496a62eeb4cc4613111064714d40754fc7a52b8c279b8ce1bec54984408c26e26b1f087b922fc592a2823d2c52fe296e29e5c838fd2d4ec2b85ed34cd075f015c57a5e37282079df6142b872e1695c164c9442e92bc204e7d6423e9573d1efbf644209c056d925285c989d22acbb15ae92331154e6734ba6a385ed8a736e558cd74fbf30a1b196e7d6a63b08b1349c2a0ba48836b0d0523151ec49521414cff69acd1978c6327dcf9628ad1ac886c7852f0c54885a131d67bdb07cbd87b3b292699c7a75f72046acebd309382f66b6b211b8e524039b522ea84ed087db36cd1b74c6bceba0eac7348716fa1127b94211503bbadc27ed196f0c06de51141d4e6418099d7b7445912a033176ecdc76ad66b95b6d253d95b5b36614d9a6b46dc8470933f40f3cdc1a85522347efdebb9258e9c672b554eb724554cf59ef2e8244137e4d27d75127ccaeeb35ee05b5f444e7123bedfead58124e670a89d26d9cb7b3905228fb51a96feca416bf9d082539a30ad6c5f22ce3340fa8490f6225dbd3edb4a32617714e03051acaa67c28b561768effff2fa32ca3836cc4c59245d7733891121aec7dec3de9dc86671a66f49e15228453ef377a711a0e1b28b9fdafd08f1a3c76b171c14f61d0d7017b252064eae6e4d432be5127f9d4775419e26712198b14bc1ecf5ac86e9b94367cdfedf5170bd2c6885284ef069007ddabb0e67dfa8c8d186ed71fa58c7610da7434b8b3bb27cd4d62afefe8d7124e53ac5d69233f3ff4d0d53e0ccf84f1ff1fd4dbc55ba99fc5dd386137836c0d7e7787fa76e2b6d667e07a9e1099c1d0b9328e7ac885f9ff1fe4df8037f3f47e2383aaddcebcf0a9a8dd385975fd7718c8b372b8947912e92b1c6b2f03e495d0bf0a8718df3d2bbc731529d0d60ddfbcaca5fa2d9378e32263bf1c07b92c34d7e8798831d34af00c4dc46be0dc1fa2824137f1da51125729c08723ff1a270d755780a54a879aeb57ad1a0ef93de21e3d5db262f0b6273cf3fe485d080d4348876688ae804cb2680f007214bf9fad6986cb22c6b39f470532d21b56f41db291d516286637c3c82ab05c5b19ec56e29e9c40d10e0eb17006c77b07078ef9cc4da63db4a37b00f11313b8eaeaad8b8c78407d752f7128c5c472af4fb0fcc11a4137a0f139e5f1475a7b0d9c0671a445729d95ddfd5544317ca6447771f8c9dcb56490c08c1abb404c7ed3f713d3306b2914fe2805b1f58307df0a418789b5585c855c09ca21984266313bbc041174909e4a9c1dd34d68d46dd6ab06b8d75cb3470ea5627d768c2cbeda4d08bf6e0347ba1bbfd56234236aacb8cb106d1b7d4182e0f1d360e92db116ea55ea43f65eee60b9d78204f4253aa183a6092c9b0ba29f1c946d6f20c085f34be26ca7ca3864f28fd86307f35e6634a3a8ca2d3d46a3d9061a3935a686b9835fdd047839ff5660c1062477f5a40781d2b442e0b679b9cc6fe0daa59df48927b56dd1b816e1b9129859860ab259351167da87401bb61b4f5eda2e86f4881accef657e1727546ece30976cc64f2a77ab2ce9320f76f28b96f887b957692037ef93ade0a707d4c3c293e8c559c21027fb64e0dccea93b785eb1faecb6984dca61418c8746b1dda02233d80d264066a586e73c0b7f061a81616c842b5d1f2093cf391b73c3bf0aed1cc803ca0c1afa801d94b8176aab6f08ebdd5053298014cc0cb26309603e1ee528ba7a0cc4f2119e3e870701f3c66b3dd2a897482cc7d2729884f6b5721e89d4d85f0e4d0a83d6259edafeb9275e7823758329798a0b2e814c1729ad4e88a22376f3b1c62ff0d3bbb982958868e88f631a415c501b885260c288ad2db5cd3b08ff2b1fdd75320217b990499517cbc2569f479e66d574ebb6e2ae3154f369b59a7e9a24d931dc4a9a4c8101861aa615620b6c2d9544288ff6a15092627969055426baaa0c0e3ea4c529ae54ec65c499fe8574a6b8ebe1739f9935f76b8a7cac43845739df0d1695e81ca0c8da13cf832527b96f823fb382bbbb4caaab98084f813ed7608e7ddf0963a4e05bf2b15dd74d7ee7708e7fdfe6d09a58a1ac13a7278bd055349e6bcbac547460c0dfad5b11fbdf9a538542b9e7a99f6e58eab51782a3bc9d202294e96a17fb034794f6b8bac7300625176998fe1e9569601ec152ecff391014c81d8268ea6696b5fcfa0cceb06f2b1b8b15f978f55d3d28e63079bdbafa370b3d2698f54202338e3454721e806909a899ddc64e0d95f1818c5f07679d79b93a1bab9d55b7f81e14dc66b0eab11576cd93135c6b55a94293281c728ef867c93b1d285b270ba4eb5d2f9529d7cb5770e0c1e02e12c8dace487f8785baa9556620d97a67547f44ddf673fb0a82bd6257fea05dc34f3513452cc88d15a3bec2799b2da26c9c433ec31fc60544473c66946545725fec7277ae83ab0176007c1c42f419ddd5c16647b2157439aa764369814facfe06dc9ed1a06ae6f0a4504a4fe7a6915586413930dd601f8412aa89aa8662c2458c35bfb4f180b84d7d35aa59e47603e3aca68af502c80d96d27ab2b2b6b36d426f9d697ba037166b34957785fc2364a8f7b66e828711c34817376f5e6b74e394c546f8192a0fcd3d67ba9cfd5d6dd18008564d28e819607c27ef9282c85fe8c01362bf455806b26887e179aef15b2f73e0533fa33b7748ed9176ce7362ae8dd7786cd63352bfe921bf8c2b404573caa3a399c5df51d8dc17a72f698186aa40d33ef2ca5fcb4c734ef71b1c94764a518bb1a737a7417ec0b926cf346ff7f45b57eb7524eca360482178c45aa25850549bec1be1fae3af134180268b1813ac239b0d4122aafd87c91a817e380b1a0acfc837da84ce231bae03b50b8782e993d809bec3daa23b28d8ff3e876c82acba83c794f14072304aca61b48b726e20e2b4d5e425d2afb697a4443d00eda6326877c8eb3836ab23917dbe3b950fc624a21326ca5154250e949e57c3e73f8d1dec33b637d6d50e33b29c4c78241e2f33b2305651ac430c0da565c9271ada524963e9252004ec78410b01d0833e7d7b6930030dc4ab07f7b09107a623ea81f9ba6da1cdb00d466e2cff9fbe08c2bf1d8c789899672045a8e31b058289ff4449f7c6addfae4b995e79e8b0127e017f0ac383113b097bfcb0c30b00103e8b8faec7bdbef91dc7c76f3c8651c53a130c011c379df852c055508b8890b6677a80933b518c0e4020b12c3f574c91ad1bef28d025ce04857ac714e8cbcc683f4d63c5e8b43a66e5273bb12333d3a21c6f5d763f2d9cf76887e29abe6613649a6aa6c4cf83a778ce540586e93d96e1eabf705b60ef4173a4553c7b0914e223985e22c7c9c10de9a41db505be18ae29b5e3bb2eb52011909ff9480b1637be5b2f3c61a3860516449d30f979b2d7122502cca4d81e8a84f5bf7f96ac09f4466cd926cdb30e192a5ad05a6bd743e20e525220a2da4405d7fe1d5a4d55ebaa16f04f436d8de1ba130d69752618f680f7e1ff3ce98d94ea8dce5d0a5390e568011a8b69cd17e44fbac8da0d29a46a031ed989060235e1076c522dacca6304b87ec90808971f5da4ca41aa182fb87f30711567509d6b7bdb14f42d827fafbc7b96e5fe26644bf4b489bb231eaba7d43ffb0457d3836803925f319c728ffb064bca63c2d594f5155386a906aa2425cc798d44f0fb2d80457effdb19295e65def9f02fae3357aaafb8d180e601a9e41b4afcf223d6020aa21a9fcdf716e9f713f13a275535a630b782e9580d22292787d812ca891f7946f095afc54b81f0f57593a502afbe1133e6f02fb9117397b8f16f8c0574b4d6421c99156431ed90d057b1dd0d61b8a0624459bea84f22d1f99dfc588dc628e18dde2e18fd45e01579e7435126b78b3a82450c22e8dac10ce7fae5f25438c583ecf0ee745005bfd6c030b3c7ae778377a5c9eb2b82b67cf53aaa8fba292068576943c2df18a49282e61b86ce8edd2cff57203e9aca506ceae0bc42dd4a3818f12ee834ba0353c7ccd8b5a64f84d7b2695d1e70042cc07095212932059c3f340c5a06468354b73b083b0b6b0f3863b60eda4010d9f9b82e4ebb4230d067254621e039343dd2544ac6ebfda2a3fff86d3940a7ef433e303a3346fc6850de5e22a928f2baf72f86a83eb7a35627490fe7d105399dd94e7812a6f3eb8840c5bf899d5c6660c2212d8ec98a0d88896e3eef16351c975635d59b4c708caddd1b03f04edae8b86b07153a9a70e7acc13c49dd8d533b2966a38d0b5cb31a965a99c1ef902c093c60bd5889cb43a94923d4d98a131b5fe1ac33b2037966e1afad59fb8312cb7db19cda5267d2bdd80e701c403aeea8959440a2b18123251014abb0303c9c6bf9e49f3d85fd7e9afd7628037bc45f2c901711ea6c54d092dfab8e77d6806cad6f09d6d1c30817973e59609e3be5126e1301970d121cc59d3f048f334623409b6b1475ae0bc0085a4648f3e0bda29e09d9036c0853a0df1185da6f2e1e4e1778db7409994368f669a5f85ab1743db2e69021c253fdb2899959d74b9b00e987444c31205baf8a6454ff3b94aec99bdf0b288f8808b60fc7cfa3427abe2ba48e1d34a7cf9f26e30c04ec5c9bba74faf90788a5175d24bf4379b28ae95ef3c391409e8c62ff88fe5ca8cde1d598bdfb5a985e1499198e700c3f479df5ce2ecb8a2124b02ca6b4f050dc6121a3b1123bab3eb2786e76cc8f155cb6654240413b04470b139410cd76482b03c456ce7b8a96bdcdf5c57bd8260770d2a59b6c83fa832cefb10a4086c36d22f00cc9f37c7be5525a073eb86d34b21acb0a62c3a8c83f2ea3ca058b0fce8b759bcc5fd339fe74d09d2e71f13ca9904a0b252e84fc2e9dcc850fe80fe448662dd0a1469bc1d9a55a87da4853a8eee7f194e7f857729c66bfebb9bfb540d2c812fb699c8a83b101535cff57e5538a381890a18b260f92fb085a28a812e332c01f4f39f3d119f28c52376ac06b493a866e8bd72468d96729ae582cb2a03a047e9c234c9d185d50eda0790a2a1782b526a6a4afc7337604aef7c64af1af20cd5b049487dc8ba18e4357341454620de8bc2cbfb20d0974abb066c9e5243259dfda34d0398a5e81de426c06e5d7077c764a16ac1c3f5f1f468d472771f93ba8702007c6d04f0b91f8bd0cd927a2dbe6933e510a57745fd260e0f9e7670208540c8e57b2994f2320cb3b97fa1ef5d3d78cbc68457570f19826c7336265c9f82f537b07499bbe88bcde6e875be338d1f27be55f07da3a5a8e87c038c39640ff3f5ed202e7eb407c7899911eca6ebc29ca6ae634b663e1b9b3f553de96562c148f9d0ab8df21c4a95c0b3560aa66316f6939c3a9af78035fd6702f60b865930e5faa3b3a4c01135881b71277c02e12620c77a1423e0b022c7c66488dbc074c511a6ffeb614a8bddabe849d4a6cbddf659579e511b7155d82124bb07f3f21b51272b05fe281c1ef7366fc60afd719d3492823dd8474c9734b08a85327802907778d2793dda0a24a4d71c0b3b25f741dc43016e7c2dcdb4e4b0165dcacb4f7da2ef97577cec8d49249a0c36eb26aafbfa7ca980a35c5b58fb1568b050d26ffcac778482b2e709ce1aaef56d7ec35ab63d2a82487db534dea4d2a6ce7806b9a237fbd2d62a0d7ba0e316ad52ab8fbe06c21dfc43a38403e4b88c4335c810a180d3bbbf0456c8d4058db10aa0b35aced251e68155785122585fa661d79d3793491053bdb4d902652e179a97f248aa0b57e28af676f602e4d994f150ac2a5dd5090dce153fa7555e3838ca4c41bed0deebad490c13c67100c25569b2ea003f10dc552f3a11451411ec572a98ecb961ade137ec6667a4a233255570feb202421ffa5e2f0026a0e0f0761f2b7c602f73f9fbab563b0b23272ebf90764e4f1f59dc37e7ecdbf015b49063e6e7c972b04b796423d949eab6829fec1c18c63a4f6ded70223fa1b67e0e8de4b86ce93b08b8a142ba62b630e9675fb9d03049c8b20a3aa39132727d0501a334531a90262c5e9544af106a7808b255f1175a1eb649aac1db0df7cf1ffc74795a4368f8bbf8da9ae2f2e3799ad94077bb612975d1185db4ed6e38b8d77224bfbab53eccf19388022fa59c8c280f29c0fb88d3cbfd9f1006b37a1bfdd53759ef1fcdc7c1344e3a92dfb350088f6932b8e1f2047498a324d3799ee5fff5005a15790e2ded7440b90385c459893928b2104d24bb49fefc34fa3c10925a34103573dc65fb351fd72d924d0563f8fe6f96cc6d7746caad60086d5df5eb128d987352df0a2ed253a92fdafa19a961015ce8d801c4f9a32b7499e1b0f888a4b13f7151637e20ffcd721b615a09a9c88c21e23d79d7b59f11c71ff4c0ef308ae0a80d0ddf45e0a70b16bc655a4cf610e72ab1cafb7ae34a40e25688535453cb189bd284790f485be4d4a45fa4b33faa5ca29a41cef7c9bb033f82091d42efffcd6dc01da7a820679579ea6c3826f3e8b187a8a3359ef4125b8d4b5d6ee87df2564722affa7396132754559d07bbce819a57840f1ecb374d9566098bb03ed87ef1103a3400edab7f0502a7667721abbbd3047039e957eda10fb509ca82a59398250c234b7be72144b0db047f045e865bc90ff18fa5e635efdbb88ad5db81906dafb0b6a94b2a3875c9a91b83f697eaaa55813aca5d6fb73987ae1327e84d4a41ca8e5c641d2f39ad5c0f7712e560b2dd7386c90891878df66f0c1134cbd4ff4cd2929a9be5ed4e1fe12418c18b41fbdcc2c13bd16ea3087190f7f926192b2ab36dd7df326e96ecb4ab719afbd042b889caed5ea37f726947ad51ebc4e9f6bbbf37126d7d5e6838aea4b6b4e1b1e30b0b2558969175a5f5d929d759f60cbbfd0f3f67afd695958cfaef7e7cf7ea1c3685195feab71337612bb1ed4ccff59b43616c5b559704eeba08ee707fdb8a497710436b0c1d3e0b7b67d83aa0652c01947a9200a20160b1ddb23594f8c52c90558e5b82e6f7d76ea1c89e0899a2cdd113c7764ef96583a9641909751c1d1efd43be35c130da235323dea36880df76c41a45245b4643bcf0eab3d246df56d1fdf49811d5a292efec65698b0aa3dc68c344422905f9312b3261739834c1e5c94e606ca689731f743cc9d41dcf8bd97adb901a37d4621d6a5cf35f71b3661e85bd49755fd194fa6ad80f391b4f874b4fbf509194df28b0178f2945856e92e0467703b9797286fda09e542fc356ec8dd71938d1a5d7e39beb063a97bdbf8a56f52568b49713e642cbbd8834e07f73da2419f62bf19a71a48ae41428e3ed3e1ecf50121302e82536ab70d318e866c47217a9b311586b5cea3865ef4eebd8ab979094aee4e5a8defd34a32d9539afffbdf0f7bffb220866143740821dc3ab27ff64669cdc5a4a036c502b35c06425fbc513bfa3a396ff28d75662136a4b8131aa04a2b8bcda57cc9c8834b74b567a900b7043dec5533db3d1435382ff007257fc5279114d5e14df459f39a2a438fc0489b55c9bed859bdce9daa2e0c6a373a9a17f74702b223d024653730d6cb78f9b7b2e96b0b694a44f9287f380f6eb14a7e6e613cc57849e2c50a7dbae3284565a18ed09dd0fdc6f067b0a81a99141ecb6f7a6403967d06deed77d66ed973c9a4b472dfbb1cb48303fbe3f3bdb16caf7387bab2e8a7f989fba43853097e6fce916e68d4ed047656e48552bad7d3a8e4f365e683eaba6a90bc540bf2c3f2829fe25e5c80709fb15bfa7b5bf9933d5b8441a3e66ad2fcc6da7823bef864de46957318ef1467b6165e8ecdf11f41439d99598b453836119590c0644df4e95a62da6fe295fb7904b526eb3503fc43105c012fdd836a0ece56ccfff14c670708215e5f0d967e437d723463502f693879c3a3f8d3b37bb7e3f0e5d0f2214c09eef584c254d019db68c8f50322100011bce8132a5953d492698f2b79c014b3d8743356c86e247cfd30e310dd29f854e99b0ce1681e7df6a649b9a7fd678d9107022be9b964261f5d2653037b14e0b9633203634835fda2d770e1a80e84f0fce90ca47ea8505319631403cffe0176a521401c5049e0671215607767f3ba4ff7bc5ec71f17496e3f5f1f8f477bd04e49168fa426b57d238bb86d859fc19b22b01b736ecb02b2fed5c6ce7893ddb0cb0f71ffe53f060b321360fcd321314aa908d06faa58111bfea8948d89e6c7f98c2299f81fedb8b6f1a427b68a2b9123eed31671a1e49b9d974f01ceda3efe839c3cf3936dc687a57d61323348921304c6eb0361992e97496cbf5baf6010d0aaa5210bde135c6721324b3931239e13462f35a14c998688437b91b441924e006d09e892317b02b8d800319630c0695f627834bcbe9b5e6df20272d8d0f93fbf4500b488d2223c18ee7801bffa586f3aa1689c3e0a723c707fc4302334ad671b5f31b0721280fa3f51de2b102396f6ae83c8eaf30db2065a185c1d2516bf2233fb917f9af9f57bc03cbb3b8d6447f7004cff91aacce821cd14a164a33115b78edcd4c28cba0720bbf0361656f6c81f7a206bf75801195153d4f8831cdb9db9d20cf7090fb20b21f099b342256931d20447c0721f29b123ed544eca83ca5000e6953733b502940904b5dc25ed69892e92bc5ffe3b1ef9502ce085351817eea17759f7fb9d36f77974c5173deb17ecfa41d45bb5c64b6f6aa1f4a411cda83f16d1ce9ff3ad948b5e9c8911017484b27e8a94323a63b1339089a47a7419b137d741dd4fc06f530dcb8a0f0c771bcdb9452393c8854171a96367fa888d437b92112a65608c2b8f889fece7b0d7acc6c66e40dd43ccae997cc2d09b170ef31c567e46fc69d4e39c0469cdc3690b40718bc06d118bd847e3f7d4e3b9f74d2027aece5a94fdfd225adddd35dc674d53dc5134909b5497212f2bc6ed15e9ade3ea3424b9fd12e334d14fe47ad2643e86c13e09ca2831de2a88084e7298ed9e8ea251faac5e1e745c8f33623fc91f570ea4788503f6783ad7a0b17b02d3bfdd4fc261b80484c9041e574c1d2fb201105d0998db9be7c20004a53b6d00cf8991683a68df28fd82638ed37640ac3681a81a0202b30db84699d3167bfb53ab1c6e19789334b0953a6281052a56d6e1f89ee4f985ec881777d0388ac6c9715074c55986887bf44f4b7f8ab06a0a530e194b1dcd152ae30e140ab66151c8fb917114c2e2c518b40555b2c52656d35e4ce4bf3048babd08d973b4eadc9820bcecad4468cab70c1ff61d964638c5678b0eefcc753adb100f5bb71158a2d61fd3aa0701d578184c6a3a53c88228496036887f39f1f9a132ba1e6692489b57084f47894cd8cdee7ea343e8efd8fe9c9ebb7dc1b6b7795be82a7c520d23e2cff8656a1c750c7b19b1c6c6eeb22f283165661a7a0791649dd47a2b7321b21bd17aaaeb029b1270256503b28b88d989df3c07f443ba7be691f5adb55fd05c1a11d174e9687f84fcda27082b50ada09e7c94d5779532abf157ad7458743cb21682284c2051f403986130a3605a121aedd2d049d7122682821fa67d9a257f3ca22b0c1333401f97f860a1b7193f3382fe4b7a73d04cfb3bfe7e69dd71ad1c03bff2c4511ed68a0ce4c828a275c3711d31d0f766a3eb5435bcd0fd64a42d77d75d9023137d9b981e836dfa9f5d71a99cead2b900d099bb22a41c7277c13dbe24ce4c5d758d78f9a3f35054d21a9815eca4a67cc9add0e87fb9a2c4170a71dc5052bed24c3d018b19bb2dfda8435a9b67120bc51d982bb41c254c94593b310b60a529440e771115f7ecf6f8f56bf94552641f9d4945accc9792575a0f99090e1164af44345555515b6437d51a97dc1275a6a5c5442e6544a86d94fb2f8a0f133e0bd0a2fc29722707752d2d3f94ca177bfcfbfe68f7ca3ad5201c081d99f0a5392de6432b14f3192eede545d471f489595fc7fd28ed8a99a31732c8ec9c61e7d5a392ed5d25daeb3b52650a9ce1b2340dc41dde7e2c8614fbf042ec65d89e0c8a316cfeed08188cfe91f20e4903211e2ae4c8f2fe9ba639352a9774d5b3cdf9ac67bd451b217f711bb663012e666aa49d780bac762bd9421a991c472b1ba50818eb1f594ee51145e3da3ef9e2d207bad677936a1ff6d14b12d2329556bcc2e4e9e745bdcc0b092447272a49b402ae923ab0e46e7281c25eb0f3b2374849965a04fd2a74a7815c79e462af2edf68aa4540fb8cc40fd7f403bfcafa657e48f6003240b6f1c20bdf669ce9c4b73311b010d81062a2b3505cbc7acbf32ed8a951a3e16a691481bac47e52672429594ad46485a0aa1064cef961b9fed44786032908e3e09f841fb3964cc6c41b618439e63db8aec495619ba7600edd22fd68dc91767b911b9c10d1c3792edf066f9cc92cb2ee5cd72490f0f2b13c09af1e203f9099805fae0b68e222855c302567b603d7d1ce6f0f8418d978f28dd3dae6240bde2ae26b5f5a89bbd4117eb9fe4f1ee95596bfc5be7b06df3c6e0e79a3c04a9035c172573ba3cc08b520202f9b8bfaa27478036c4e203e66b9c24365904050491d4c519d64cae2380062f16ffd5dedf1a2d9a16ac0fe60d9b28e261e26a2069383e122a3084ead20ee35efa61c9c8276ad2f6c910847951fb234b434a2abd838b1aa0a10b5984991f5938c607300f6fcc45c86d2aeb4c8f8a09e9cff05cb42a7a0d87f7b3ab44a0b72705479c7aa9978d2d7d37b4447dfe8912d69c73f24d1af697771ccd9a84985640fd3205d0db21cbab2cbca6510988a1d2ae0b7d300973b8e6a9b8e96bf191e6a5a01c90cfad4b843405691a49b2dfc577f86bd696fb85cbcdf2f629c770617ac3118bbb762c943f78c83866ab99dddaf6237736a0a4c7b0b22b378c425a6e339d7c46b7ead9f9946ca8a0ce5a9583637392d67b0bd0b9fdcacfe3d8ce3ccd0c8454abe81982cbb59cb1d678e44a072323ab7adf2267efb904485a917b93675ad3f2d72c216ace693a325161e789cff721de8fd4656850c960c2c409e121d8cbd871b8436609b12fdda8998cdc67766cac2f721ccc52803fcdc314ac2450eeeee14a4fd4bc60c88a5116afc06c82aec13bcee3f64a6058a20d7c97ca953b729dbe667b64c69a6c2be962b5a766ed7038d4ba9ff0b925f51a98e2d6926e358fea00aa2ab130ae2419d37772e1dae9768874d3b54c0935f49edeef19c5dbf55e54bf2e0b495b4b73506b45bc26fb310cbdaa6131948843faa1f6245ea3db6063c4ee6e3d17c93ff19f191e4ec77f3a15edfacae12702fcb70c6b858cb9934308caf42069445f3a9e78124334d8ad0abd397807e489588a36af25526e53534a9ca595bac3cf5ca2a1723cd8b53dc684bb7fcdec30c23f6975d679270f554069a5d01f1802c7ca9cb2e5157c8fd10af18b2ca3ccd9d03dbee7aad21ec6b5c3c768192fbaec24dc53f81f03358dd29ac42f87bce67da7ab3d0d014a87ae4a6c4b65cec6c68191ec9fa602dd911c61dc07aecb6abdc85e5acd1a68158d823166f70749869a8e69ff621a328942820d80fb4095b3ddb3a759a239669dfb037403a0ed82f71d7a87dca5351a7e7931b617fb48c07d150b0585a29238efa1946b24fe6539530e9660031e19827ddb61c605230e403a09fc1945be4860e73d29bed412dab56d40b16b82cc9ecc5c8286ddaa814da42b331bbc706a6074aee6ec58706a80c3cd10151c4944978d07935cb1d6620b10ee04165c51039e268a21ad78c65c7d2210be3a8e6947a60e03af739e46187752b03ed9d2b0788db74ea8cc9b49af7882e677a43b219dcab69981ba29ed87c0b90600982ad36634b6ef45eb46d30ba2d9718aacb742ccd8843fe25dd992d84f75b9365cbc28c1850d6554e8c07ead6461ad25bb4749923ac47120e48dc2552816d71b9e5bd370bed4db91c4f8a85ab0a058e5afd28fb0dd7154fae95ee8f24aa8e32e4c52a91d74aac35fbc427a1012d4c30839b11f408d7cc5a4599765797b27fa95a39d989408ba69f3826ddd265b7f84dcace36896bbfb429ff529477340eb71a389ee98b52d2d7f7d9a012b7358e38b879fa3f2540f81793f1edc59ec4651f7971140d475693595d37f61ee363fd0bc0f1284bb4a34e419f0e6214a5e4a46fb8a61b311da9d11fa7bfc0b79f47c9bb40384d595a05ecdfa7411e9ae0f9c860f0b92267037e9297a95c10e692c250266383c1f6a5ccfa969f2bd69a24afe4476d210bccc4be465f38086c70aced1ff1c3a8812cd8bf41b2f7389f8ecc799d277c0ce4cea17a0a75b6904e97862328e64d1762b11f07999005433502fd21381c5080f83aa79810420576a0e6539e8ae08188f625ac428223cd095508a32c724ddacfdeebd5484347c6d94059f1f6098062587811480c766e06737c221fca57e19a7e707e30de26c58a9cc38f60d11408033d19068a8c015414b3d3cdf38cec6b9c37b9630265a868aed3bfe755de6d07e6fc84c9c7ed89bce686dadb007b82d873f11cf1668b088d2315d87543d15d52a5068a6ed7b8a60f2d9f7cd5376602a11fb99818f3c0fe1d88a498eaf0475012a815fea9108bedaed78562638896c84490c13ce6592a804d1e85612c75e9bbd70323f897a571be93046e1cc38371ab782066cae5f4865f0f74a659b5fe1b0f55fc74ee608696613d9929a1299149970f501c4c8c3379a797eb3cff614d2bdb7c9f983319092e7e78326c66161cd64dca5d2d79d29ac64909956001e930a330352131243909a3b9972d20a6af4dc3f817629c8a39259726d527023c4889d7ecb3e43b1754c6c6a933a0b0c8b434d562db9c8e51b06847db22d90e6b0d1f0b9dd025dee7554c7fe6e1c3ad1014ebde801e0ac5cd08a99866a4ca331bf4d7947738aa91de5fd818dab76612a71acb3f876495886a8c6834e30a82c862f41272b85c2d8315bae3498f79c68d07e1dc4b4d4711561d83c96c12cc47237cf512d13c64f08e96bb735e89dda543bb32dab74b5a5f651614b89b4ecda4d3d137e07032aca364a7f0af52791c3937dfa0810fcd9a07c3be76cf45478a4baeea261dacea3480ac45fa93dfb2441c9e41926493c1c1ade6362c9ebaa0ce877062979a294fce1ff4023aafc9331b40d43dfa6715a25f4037d095be46ad5f7da07d214a2b795634c13488615d262655c8ca5336aaebc8097c5d60308c4dac514176c51caea8b54d459a102a9c81ba292a272a55769be51f5b67e74964c48521a0ef438c4667ad06854a400d1ea2e846a5a8b255f0e1aa24d5f55f485f52ae5aca70ef658bbcb1c857b2ad9896b43eb28cb33029d47ca528a378576ff8ef056c60b8388f355065312d85f5d70469ec7c18cdf65c87470f256f4de3459654b54d1c40db110189c5f8bcbb70762cd5f62064d81407128699f5ebdca78068242e2eabc5e12de7db53ce9a1fd7d28c041cca141b992183cd969b743b4471524367707a30a80f87333478b8ca79528d306e0f9e2a44bfd2350fb2c2413b01c2ba46bddbb6d7185810b1b4ed7dfa44836b9802ecf47cba748d063f0db3b677a9b1fd814b48a04d176de82ec302825f5c7ff3a4aac4e32af5f0976ccf24eeeafd4428869424363caa9ad6298022b49f6f50e91e137afd297ecc9101fbb191afc21ad78953e1f4c990fb8a18527e71d694c4ffb6588b127248fe92d0a02f1e48f0c84785b288e7260412465b82668b368f520fc680cb909c35846ad5ed74f5c096ece33e37a55b7020ae30e5bcb1a8fc25e38159104fc29d8883461153abf4e0f61fb171705f0e58d827887ad13eabb4fc83699528a7513b6d1b939315e62337d25b27926deddadc6094cd036c3126bb72a0047eedcabaca0fffa370aa69d93f085d1434583699859d1c5b4ca5175b9bd3892ca536877b1dea0eb96078ab156de22b7ad6225bb3d8668ce92c17da7f48f5aeb53358d64bb47489b9ddfaad2083e551fa0be8eeb65ba41383d03c6c7e81b44d33f0d7a0aea3ca1e768a404ded575988c3fcae9263006a287b3b916c253782d0d4ec9be2f4a830528777dc4df011ae82816ccee99750e2a3dec7141552bc91049f6da76866ee5a6bcb84ed7c2980951b6eb42fddad1a26a6f9419e22a789b39a06467670aeb90122c5cdc67b899d7ac0d6cf9ad635914e73b0c2eeea4ab829480f14cbe9c9b90fb04c8a1325ed5ce3141dd3c024000af6e66d7838c9000fcddcdaa351ed07bc7639d4c6c97ede7a94825de64f9accf39cb7e40480b336cc1bd7410c7cd8a4a4272a0d4a994c8094a8500d5092e662a6ca5b2ce585dca332ef9ad8b3151bf4713cd5b24575279aa24479f496cbb261334d79d462ed22db256baa43187aecb783eb524352b491b5dead42928b5072c0f945280481951d6873050dee2f7467cb5e817860e3f6a33ed8ea7bb29084fee8f404f9f9a0645a9bdd77a4684a4a3ed44c3338201e9b927222ac6c56462ae2c56f0f56cc5f4370f57e4d950b9a55ce5852901be7dc91618425bf6976be5d91375277eb7b04db38852ff37cf05aab18555bba5674ef4be3d22a71cdf09bd717a1e390d595374e69b3a4f55b708a3c55ab499f726c15e823f2f90c5fd574d58d251d3294c2ce0fbbd22c8bd09ec9f43be7699b24fa54336312da9eb91e386e234166648eb664fae0112ebaed8f2f8a6fa12eb46f1f88cc5be248696ec868d05ff150eacfa3200c61ac645e8108156504f03796dcf4e8778223374868966719b8a58432e7b6eac03c985dd8e61d6f947b36fe4baefd1374802d0119de094c9b14dcc014bfa72f89e9c41e15b16b840f1927a35553de75c70f5ee331809d2967364211231b8361facc3b35fc2d57db4748f65d812a6958e99f94fd1a3e667194fb36879774d5982e2549a78371cdc0d567e4ce87fcd1ff7a78080a10a9b63648ab925e3c6ab58ff8cedf5ced0d17ee7697e065d54cf378e602fd914a3585e9d41c08ac48704bc6ae390314ba2748cecaec0ed32a67c30d014627b034cb2dfed6e24b505bf22aa181187e5b917a2ba3c4d005b173734d295de0d9f3de3806629447797e7898ec4479bb1487850ce980a86e0ee813ab27cc93e2070e5b71fe8b7567cf5e01c377b11befc05e4adbaf5b45041e17f58f34c9662e1be39c1c9332c7d754dcc09583295cbbbe1a162925b7f4b6864fcc337c40b007b4e4c90eef3a77880c88f85b1816b190f4b6d1a82980cec7cb65c1dfae6783b72d523e9be521aa71ea7087c9a2745167a3d9d363574ac266cf9cb15edab80b5706dcd030d31390ba1675aaef31e0c274cc1e1c60f57837401c6c293ead706922baf6d7119dbb882c87da3c4a740e0a4b38c38b0ffc88c4da86d96d62fc64cc39a48ada180b6fa97c1a1de0b7512ee9aae11236d393c7a0c151b1be39d3e4f1b7208e36f7bc5b7285d00a29f487090280eaf9cb1d566d5bc5bc7acdbdfde8a3b5504300c22c4fb88ef2d3300a599a36d957c6675d7fd7be9fdda1954880ef190f5f1a56e61770068c84d48c448057987589b52ec6d20505727501237afa3ef104145c1d268de73274497855f0fb253370c3fc6d9eebb062f3093e411b818329663e610e4fc9c479134585459da0608252adad5b2fa098b02f05d7989ace0ea25831fd729a7b440747a7d35436f9925bf20ee6993d075d6e0472089ac7663174c20dd48e8cb72b61ab8a0f86f5489428a017741ce04b3068bd22da19a586f145d8691db80a0b54a5fe783e208a5eaf8df149bda55bfaa3fe136fea3b5dad97b42541df3e5eacf42fe990682cdb6cfae53c8cd36979998459d897d0aa37a4194e196f3591b6792e8270257c3547ce32667de86b3d4192ea6a57ecfca45d1bdccf3931953a4d3bb0e0aa1bde72086af6a34526f85e2db22d7eb465cf3c9c0e8775387cb707a8d0ae2f7af69bd4e8985562d4834ef00a980909fbe87d58fc5302b44a217fc1caf7e200071ee56aaad4cc1063fdd14061166d04c16c16018dad9c03086de610f6809cb37a048cbe2fd281a2c240325d3a90303eea381eaa8ac01d5031551ef7119f218879b236b4e6d0a224c77d7812cc4fc13cb2e2ef3746b7d5e594216075248605d3991e612c3d9deb5bdbca87881f9e11bd79d4944c36d5dd9244b1b782fab2bafe953844ed1f0b980ae20a7ba8a5b2ba4c53448ebd139dc26d3d768e934225d425ce0e0843644350afe6315c8c2bb91681f88a6ca72369a85cd4f83b17d3de31daf868661363e8edf06db3390d765ac6f13f28d38dc3403d78cf64acba891f02b19ac31c39a6d4c78525733f84e165421b5d0ff178084c8d93f8a5f4c85a6eafa767926c1ffddfa4edcf51228f0afce13af1686f169c1836e087a7cd359a5d1e930ce82c9e94d56d6e8e7808c83aa4ba5abc0a42b81199ae492cac4da7f7e2890e67208ebcb56c1484f18167777b1c02c6714c9d20e9fd2971249ee139cc4fa42a14e638b3a3e3a7cefc365491f3abfbb47d1c955648f582b90e29b5ae72675bc0bcc82269e923801a973c4e5736117e92f8f04d6c4761ac89966f3fd11d43e6945f473ecd9222eb7bda474ef75552016430cc1546a68e12f54b43bed68ceacd28fe4badd3e28ca31ab205950dc5c35ee4172398d9ab0e981b30107de36d8c71500c284de5682c7e26b54431c427fb05e65826e830ee5d8e3adc7547abfe776256f8fa5ceeeb2ba88d7d2567b016483718a1afee59eb662b5519dfeae5ad3eb06795b83219f1fe7087e31bae23c412cf1cd434cf8f2e63c9798ae4cb893030322cf72841ec0e0ea2b95df151fe0494bfc098cb9c4415f57b805a33576a9762ba661f767b5e0c839e702d7b5a7c2f09c1f85ba2464e6db88d4245d765ee3315c17c7099f01187553c06417eb22708e863a7299a929838602ab2257acfcd4a107ed26a46d6db23d624c032128c1a9630e11540f0448596e956cf6ec1ac35b0af7e38970048c924c6c3aa0ca713f4c3d5494ffe01342b8cab5f080603428bcab88c2774322f32b5ea2a80f1101fd03ea87f957e2df30c090e3233c2b0de230d1d32c154611d29308a5a7f00394e581054e23fd41b45c16b56e53eef696ffa9685615c36dbb06e8dd49b24e99c5c1a271d609383be394f38ed5d21b1a6d4a85cb6841bf9019bdbf60c76046815c3c3e0c36e167d8c2947e7c13de25b3cd62dec6a16b60cc65476f805f735511fd177787432b9c7edd66fe5618e6d58609d310b8e45b812e7953985e98ebc1eecc59f2687629283892b2cb6ac08dbfebcea9433929eaabb2db29a79336a4cfe0bb055bc545d784dce87215080b36e27ff52aae057b3e11c7ab783be426a12139163fa5a35bf43ee350c71913fe2db4dd1fbd96e0a8f55e022726c6cb7d46b9830fe53992c8dc43b8793088dfb5c9c001844ebc1c6681f9ce40b8b780311731fcb3d7d946de28b01164e37d607b50d83788e932083624127b9bf7520ed75f6948c2d2e5e00e24c8f20200a6df52ab293786e5642038a4f3bf8d71a3a88e4e811dbc4174c4b91facab9159a14f844bd0ac92a980caa7636762e4fbd261816c5286845ddc81d412d2d27193bf0b84d08e581a5bf34839795c7ed5325c67050d86a3a78e4a106503e6fedf6f90f4b8f4042be17b92b12152530e1eee4cc190535132c6667d198144df6687c4bb9b3703825501ed417866cca95f946c113c63c41d55df598c0f6be854731ae2862429002ec3d6b88118b000ffad361383ab5fa1e8faf32ac9a84bf930540a598f6d2b7366d2810141ffd92d2ccbe28e14c8f288558a9dad5897821a2083d04893c4d4523efb793248e819824324ee6e291ba31f84fcc45def9c86e8632bf9eef0b06674bbd6b1bae4c245f5950e2ff91a63443a1aff0a2041e4b5d3c547a85072ef96e25670b829c5c2e175200ea73516d93eee70463bf5042c3b0865efd2de452294b2bdf3c13052da86be23f87a161ec9ff4e2b39a5a44b6c9581513f1f89ed8bac62581a7f37e2d8598cc034fa663f2b93e1be0ade3677c9f7e778ea4d829b68717f812e493149c03fc6da0a59a9e96996bb31767afe48ea37fe3ab31c78ff901fe0f257c0b0f72d6df902a894bbe415d04aede4f2081e9cec3ddf2d6286012d1bb0c34c760745d5638e53e88d19d6d76cb27144184929eb699c5d089a7fff74e122c8a969c39f19191ee35bdbad4d7643102392fe031a393eb9404cf99feaf7efb98bad892327154a4630a5bf4e846ca4e89e3d5b00e16246d56ab5d319401686b30ec5610d657c6464877c786704570aaf2cff2a2fd73be0e71b3eca610c7a94a2082a9c37c8f455a255d456e11152b3122a47857bfe2d58c2baff3f81f1ceba9fdfd1178824db0d5b8078c06d1293e4f21b85d31e5b8c4d232600fef5f74b57302f099ae98495353d1f77832e0cc56d4e64678408512604e1d01c37639a2935667627cf26eeb39a814b031ac90a56a44d298737146188cda12eae935453536dde6927592fbdf46ce4448a72e299a67a09444afcf4cbdb7d082c9e6cffda893f5bc906803cb226e5e84efacfca26181061f804675b0b355751165bf980d2ac777ff036bf000bc37a75f4334e1be64e85e2baef61139c1af00a5e1a7db40b4949d6140d2aee78d398ead3e5d2385a130fb5ba245b7879d2a5f55011ff73cc0ca64505e094a7bda135b15ed32caa8e8d61d848b8b5a8c6645faae544c24b4044d82aab394be59e44928d821493c0194d18bc8182048ba3a8d1b0b2850b79e1873eb89c8713e2d5ad995aac7a520c2243aeee166b4e074696fb0d63b074e9c636079bb39e6a2ce2e4d587fbdc7c841ff9764013240516ab8628a8bcc50edefb6719eac1f1298b3a2edfccff5cd6d0f708faf5a439142b698dc9201a126db0abc119c4299776e589a0c7132a8c229a8f65058e56d6e5f52759ec1909be7a817a053acdba00d42dcd1f8557003df227700c6544d12f43405b9d11d1d4127ac2c4150d0b89d82323cabefb06aeedf89f8e13995f173518394654a50899990b815d129db40b023015f773fab817ba95281189fa5facb8a398675f8a56a244c8febf5869d62bad38c54defa46be08af0b4b2f5b05d01cf0fd096805514674b2aa9e6edeca0fe08822a7618ce0251c2086eca600f100dce66f0d296e3bcb7eb9d09147854f3d13bd211819e385db6d2a67cb85d7a9586e3bf36039a2a6f94cbb6ceceee84a19d5c5e8a205800ef7a67e1643ead10f5a744b87a9decaa3cb1ce3cb00a8b749ed34b03ca262f9faa5cd1c4a8624bf63d2967730b2126148b22eed45ce89907d6ea323fec803253fb22c45d04b76cef827c07e1f0138ce6efb1eaa411d17e0ba027de8445fbdfe0c48ae6ed445505fc492328bb6dfa068ce5367553b9db3ff9f8ddb69acddca6fb00b473ca4a2c059155df1720cff7d6aab7ff3324d0449aabc154a96c2f815c3ac500bb73acbca39573615027463602ac65d15275bc8474130b774c8ebc58d13327b3649ce174057625fcf1b2cf62e7196c83a0d507a7a22573d9f13c346caee105bc6e7ebac053e071deec46e5925227aa39487c6aee11ce91bb09fbb11394c0c1ec3617feb89b95dc93c40438a95032723e404a06b867db5b04e7508e7990754b9a7da13b1f62fd8cabae87ae7e80eb7ca0106bcb9ae5e8b366cc5144a005dedec85262db009c61a029a6e5d66000db3f576bfb90b2da75bad51ffb2d86c7ef6274886015b249dd8d6d096c45945dd67fff930c61209bd8b209e6fdfe099ded5365b46124485c9c7df7eff6df90f8e85b8e3f9a36e1449483c298eadc4a6dee2dc3852776b0160a991051a9ae2300fc767a811fb93b3f15bcdf0cedca312f096cf08f785e3398386b00a6360d431bbe838e0bd6873e21b273cf67b2e1d5ef26cf869444c175e7c199af23cbab03ac66c7c72a63aa6f24f30ab50a596926684c0cd0ce23a0b83a79aeb0497a6d190b74375d7137105c789cc87464c876f67252e16cd51fa6632ec20268cc7955bb1dbfdc375598679d43f82297f012ef62341de520801806581a07ce705749e393fa194be1b0e5f354a7bb56eefca2d1238bd70cccd22b40c8b9506aec502226dbb95c38827d8960e90acf8e9394062e3a01d8962e082655b7920f6ff9696219c52eeeb68d823a3b2171773b2a1708bec8b7c78026fd923867fe54d37ca1b7963026d02213149a6a86b2add78fa0b52d431a2c697138ff56c01a0e1461115c23a5579b3a4a12d9fe9e276d248136e4a7b407c19afd64fbe038238b9dffdeea55bd19a5f3f67726448a2d1d36352146dd727a8458a2467b5dbb5e415526cc2ea93474f6350f04c3de4fca0b0bfcb1da93089bf03a52e8c3407c81d874ffc31a3615ea52b310670117f1ffadabc6c5b0c26df68c0c4ed3220c55726c0f9613f836b1e3126fe240c8a15c934deacc680ca6113f3e7d1f0f7157d0d6c39d7a3a17e12013d163023e6388549db2956e8d73c7f9a3a251eb03fd343036dde6010142b390d9119fe6d3d080217a81d37015f6d5e3a7f7163ea4a5c222d8d9ea4f5b27ed2ec01244814cb8ee5526884564b226f43f89a0ed6140938d445289e518e0c817d3170f70f3d1e50bd789eee1d6c610b21dd20b3f61ee4b99e85428c0884512c949bde944e9794c6974328f335b48d00a374ad19b6a093be2af4f2cf312b8c9dfb07870409decdd26cc4359c4bb40d06ee479036ae96e00fba34f94376c2af4e3634754d7ede42e4291120b32770e5a33db1d3a2ab746422205e91da7d4bd87b3a58eb017aa90f58fe8aff3bc8ef93c588e0bf4cf16944eebfb5f89d482d045f38c89c92e0c093f09328f3ad0ee8c46b6466f7623d35d6410d43f2e4bb273d2496d4bd87f5978e75cde0fdbfc77195a40dcc468cfc7e0aa74c6f74b9dbdea09ded96869506c194f1d1a5e182d1f5f02c3a8c7bd404c1b10260e7ed2854ee3ef7bc4169f1f32675c31ae15a4dc1b7190867f4e723063a6a5651289f075aec14c369344628a9d0bf6a5ce0fae46d9f6bb134b670f5f555949edef6988aa08f97ef0b5ac249204ac48d8a53c26cd02c39a3e48066a8c19ab554965458eed9efdf4e5aae7dcee72d7b7898d4d4473c258620a4e7f58d8a7c11428e34c7c02d64aa7705668f167266c761a61c6ae00affbb0b046b16cd292be53164c6ec0e781df4d33af20e4b1a80e2447207e3265903ac5168f62b5859fe72345218a1349c0a11a1a0a10bdfb0ad102c5001d4777f240bf08c8cfbb629c032450e16d8dca63829dad2156d6d8bca3987d5e8799434995fdb2b878e0bebc2da72c989c24dcc94f125d9569cf34ee8351dfb380515aefce674668e1439908146ac5d209f212c2617655a1642975cfebc1ec6a7c64176ec25064fbe26118ff7dca539f7f4ac5edb443af8e5478be5ade0d4f243c45592c0b441d0c1918bd550bbf57c55051a502e31cdeb5f11369b6ccceec6c5972c1312c2b4b6fe09b5ac447eebbd6083c1cf71f9ddb2caccc79bbd3be19101a32b38671c6ec1b748bb5ef3058d9aa058e00771e63b1f2571f33b91814d670810a5b8cbac3b8d2bfa4af4ba2ada5b915401f59d483d30a10eb90a9c98d00607bb11def7a07f857ce1fa4483189945f78cc9e18f342c89e6c7621be8900887861c642fff809e839f19b7ebb688584ac4427494b8b4bc255cf1f776814c6c031e5764cd554197e7f6826b8bfcbab0c6d0e38da924661b2c21e23b1ec8900b0a720eab40421c9e7e21735a5b3aafd1893902e08c82da592c0c80f6a71669af7bb2475fb98bba70b242d9552f97f707d9fbd91939b26b3c7b1e157d216c8811cb83f83bee70d84adbdb77fd0a647ee791a015c6bf4bcca45b26559d9f495adabcabe1f2757f78be214a54c0b956305919d578022aad4a000a9b6ed6b3558e1bfa828c79cce87f60d48ee129d575b8eb79b43584ab4faba09a01f7ff2d464b1af4c2c0e51ab6070e99f2808fc8525cd0d5b045558fffec274915309e80504060f53f0f8799ee7f121cdc0b6e2fd23eb0b2b762dcb640f7dd011521cee824a5a1d2f96779b6173471ffd923e21764a56704573d3b52adb90dd80ac0c912193f0e9eaafcd82b1cc31552eefee0ec7ab41f105c3c725493221a1cc33122d113fd7f741d24932def9023be093edf9ec2d630883e8ea01423e4dbe032a8514108d7603e7211b373cbf9571d06e28711a6b9ceeaffe9fa0d4a458cabcce0bc8891c969b3210d4f3494a50fb8d23393c40d4ed7fa7183839d7e0d6945f775d35a4d234424ca42a5aa75a9fabd80c00b67f977785439813df42a1134d110bbe2ab3e321d19aeb40397884079052801884b457cc0182b4c4b41f126bae02334f68f45f5c12a80e1a6d04e611d17e2791f6b456a9cca9c1938d725a2771ae29feab2325d8703d85753037ea4700e6f21aab4f5980eecd001270681ed7186af0a0a9aa7613f11bb17f0875e78e3327089cd7a0f6e053cf742ae01355644873f3ce58b51054746a55fcf78139eafd8e185defdc47aa31b8f68e4c244c90a4529c3e5a560023447d0104bea9a6e9bad851ac1430e5b08babff81da7b0e706fe07ee87bd793b0dedf355d37ec3687e2afb9ed7125a3c4f6e6206a9512f1063694fd502d57619cc57dd6875b9ddddd74af20fa7a2b5c0bf76e004e890b359e33487affc1152712ddf8946a4018c95d38c2fb072dceab8370217f03e36128801db7c517992940bf5fe39f099c519e6d3daa5f43aa75d95d23fb85b1ec664e8912d97678b2e950877b89273548c56fed19a9287539ca31ac179fb169ac3b1f1f9b37ba590280e1b193ddb7b584b8e809b2000853504baa5fa5115d6fbc5fda4c744632ed6e96b85cd3131619e7f9b0a04a3bc832669bdd66dde8cd94b8ca996e1c06ccb954324d4a78dd2c8e8eeaeb1ca41ea8d8542e4062aa6ece2b00757b02bb496ba377cff4f2c2f8d0815e5f4ea2543495e6b71f43a7aab4b2da6756de7a6fa6f526b41fef236bf214f3503e50ca1b78bad377a88e0febe8196898e579a02f87b3d228131657a6c91cce8e2e70ab9b91ae516ea94648c998bac0d843ab552dbce27cd84216824feac6841d2131fa961001201e1dc87bb838c69645be421b172a4c904244dbadcfbfc5067fd089134bba228c4060b6c90cb5714f54a207cf908181278f54f959fac74ade95c8f6aca1fd04420b98f411bc520084e73b0decc35644819b02ff59ce8b3f1e765646e0c97c2b241f384f4858c9a64a30de2411de7ff2591d430720d827d4d5c4eb6aed7e7b6a2606610c5f3660a1c902a3a4460555f6ae976c5654a417dff6030af5b389e85eb50dc2cee43818b34b5e65e1a56062fa52e5ef20a3b1438b8ece25aa96658aa494ccaadb27239064f1d3ef5d3b06d9890e9e4ef4c04fed2b210613864b915a1a3916a7eb7320f7a78dda45de1acb458f84ac833713721c4183cc22a34e6243cf3075f28ba25067d5d99c8d7c452265405f87165db2d559729bb342b832660b15b01f91b3d55f35fe80455f1cbc921f2984c9b66f434ab61fca7c34a64ed9432f35cff0cd5e1d66bbfe08753de831016ea7d66fd3ed06b9a99e9ed556cf63eb1d946b7972c1361b03184a4b2fff5c942103f34831e80bd6e21e4a52505c5b528d239b140c0fc7854c0f86284fee8ce6f2a00ccf7dcc4a48adb9c7e4e13c4a0d44805fe0168dbf990bf615c3a9a1de9af0c547f49395de597596c701e9801ebd25e2796b648ed474c7b9f6ca913e47711e4603599526de914b38a26c54dab2e64510d10f1b049a79546ef6c59645a810ba6d03bd489083f2e0781563d8c5d1897898ca248a823264e4e9c1bee1a73baede8d3aede245ef64904f9c5a4b389809b594b345e301d21e0c061c45f00b34d6c1127cde0a08bfb83490094440d049bf445c68b5b24e61956c405fc59587ab80b94f7cd3e2d4d8022d901da9c15d0f979d06b2ea4250ce98d73f0567f4a2bb14adb19d275f055aa4f70ee928233520801c5e104fec58d84952ba621cfac6aec65330092da56b1498cdd0e40a1de3b6eb2436739d88ae535367d8c781ee04b9b8f683a7c37521d45fe68a55d4d40966ea62635fa5e16cc2b11be1188ddb00388f5c32b9d8bdf5beca9f5e2472e322d4396fd4ae1a87986bb9401201ddf25e168146db1c488d2449715292c90b9e549ab521217615da835ebf7f1a7a0764c7f100208df6d95e9c16848b943ce453c9f6ab7e59303d72d340bb594ac8724c6670a3ad15177047f87fe15902312436848b0785317ec027e5c26196db69e0a6c93cdf86e3a3cc2251d37c0eaf6f6f576fa7b73f6bbf8a64f31c48fce3a66eac44444a2d657492ff3cf44470cf06d92f120d4258f52744b05749aea26498a55c3bdf5d339bc0d7ac638e4675b4abeeafa227e5d0e156c7471c67ea66db1f5efb0eb7f7078db46e6a6e3fdc747ce11c4cd9e97bcb62b60194879bea4f25eca5e74a59dd995ac204628b9dc332cfc453c5b5c07819eb53df95899ebff3d1e42bceae1dad2c7fac081cc226f7393aaa7bb873c7d1e73823f88ceb21f6caab1823e0b4b5668dab3fbec9fd9838b61e0077c8b23831674057be96a961b97e01f5b5f8ad8c2d07b3d267111ed78b72a79a4257188780749712204110dd9151f0b88620e8b06f511234652ea3ad28cb0ac2b2a0c18f878a8799eef0a59b3fe59b4e24cde994692a7035a458671dd641e90030c3df13f282018912f625e40c494e845ddbfe108188e041e05471b1c283145de9fbd4e2569b6cd18e56b7fb7083541aab6e2a46577cb437d449a35b6b0a515131e524f4f2433fb4068a1f231217485f28157d86e14a089f60bc0640957d8361f72ca177c379bb07f1415c6a629d6ab1239d6fe2a1ed626c9436892355c9adbab983e8e83a2e31def80ca0c719f6a6476a873d266c3939110f1f7127848d87a2059851e418500d26e96ded81b76c00b7c2390832b26d6ebc6a00c781370cfaf0c2931341c69c0d35a61ed36440e571f2315952a0b45727ef90c1d8a66914f552111a02d071010b198c11478093304f50d938716bf5e6312031400e8e35dda4d162513252386820767ac1b5872c6262e06d99c1087b734a715e3cf35279a0f5b29606ab62730489bbb8ff0c3b88410dd9dcc7168314fae72acaab669bd71aad0b053c419aac8c3d8cc9d0c30e3e4be693f169665a4b85f3cacd6af5163965c48cdfd00e5d8868134c37850f3f3af9c6e683e154c4157c21249bedf12e3014fff640a28d68991270ee9b0a8a45fbac3074aa0e3e0b6b0cde48e7649621d638102c28601b4022a7ab75a01f29a2262561d250615d354975acdb80f09b09b9b887468066cd93e7d86d850beae49c1a5c2725fb6577881197e04881fc3c0c5054f28279756569d281579ad30c9dc7b73e8962acd1db075a563b18af094be2bb491602f3adbb3dc8a1086155a60a05046d01044e6a3f854ba9f46b0f4690d2211fd63c1a27797ad8bf9826ac526a76f5940345a35631b88a77079db13d9e2fb2e02dee0b0a02df48c890c75ef96ec625686deadeb336e032cfb86b0229aa15eab0494ac202360d06947e8463b6271812230033879a9adf828931dceeea0e234010ed667d9e6067b1e3edd463fa21532a63e71b8607601d32f2ecfdb2bb38179293860c7640a6334db0022ee25ecbf44ae89189f7c01e998b15b337f11977039b8e8acaf4a4ed44f7cebf05a06ad3e60568782657719bfb7c9357862381b434e25f87e8f4f1cecf64ab03bdb00b4007d855c30e6546260b56bbdcfcef3b313fe2cea680f4efeaaa412103fb1d7a1b0738980f1764dc31c8c8c28d01d1480db9370e18a15f5bf32633a0cf949d27266f094628f8e88cfa2bcd5d4a1b42d2255e1229d6c5a6595bbe28482d85b0d740e993c9ccf2da0ea89355449237521396c1a615391dd7b56d93b13542025a41c89b209672d204c626e851f7d911a11911fe1fe4717f6199ed6a039216a98edd711f070739c9a39b4a16831870421ab9d50ed4f6ad5d677d7497d9dd9b57695e750e34d3f13f41115ac5227be4c36248b09f3984ff1b52069aa93ca09e0356c472522132d3c2d611b73cdd357cab0aba5e329bc395c714f1f474780f45b62426060fa76b9c7ac08c23792b18bfef1bb59de021d4549519b880c85c36ab81199009d16f4ccb2046615bbbb51bf106f41253e12b181a0b8cade6152ecd71aafa32b15a1544a10c5dc7d367dcae2a72112f60c5d7c6aebbb1552c8848a3c53c07d2e1b66745c5d7b1c0f406831a95bb19f4db26b02337a39013821d21301e0b0e8890a4d64f9b2e1b5f55c363592a05ae963c1f501efe452ac3219d1efdedc0adaa8d9c463f12f00b9b264f6f50641b5f41ee3f72b43b347fb41841c5da702c3b1d95c550d2c23e4c88b25a22bb0f26d09dbb495d3529456949fe19e462fa5b2f145c2d8df80fe6c2564fe1ab596e7b3f0b66874b6cff08a3339f81ab67f944b9542465dbe77d6472a78753dab5bf974f76a470d6c2310bfe2e77a41d522a0bd13b7cfa5b47850ba53b65c999c1b4610d894d28900e1a33c72ab17e8b5a8b58cbc9028891e00b7dd125617f19cf5fb51b2ca07989ce64470e98e7accd9eff33ed81b6774cbce190aff82a126ef10ff4cb8af42b9122b3606d8dbc4a0a2816c93e92f23d2b784b24ed26561207e8e10a9132b483ea05330b70dbee5c303566fbf4ac7f4a772c98bfc79461950d3a2a4c9c25436ba852c5832b3688b4f439ba027baf6c2d12a989020516677494c0d72730649d548d14abed0679fc32c9613e373e95395b2a3a8335604393a491e89b418a095b12e806680a07123deaaf56e852b136801405fc594021e0b436452ea360d70581c0ea13b1df0f76dc7b4e20384820ee7a11219996d60c3b7508d3d9767e30b847642f32361395f5198babc3e97d77e5b8b2779456e898d06d5065a8a4837e8837df0990367bb6cdedba7f6ee79340c44ed2830b69c2115c994adb644c1eeb7013a5bad12ca86a5df19a0dee1252eb3727313e2f78805103ec5f8477c8f324c11cd275e52dc493b2c80e18f599d81799df35deb86762d31179f1b844791b5da8898d3f0d20a7a40a286e4ee2b6701a05603feb60f6641f2de811559a977a3086ddb5207705d3d30245b0213506b6c1f02b8f7590ba20714cc799af5aa51fcfa1081299609bb177a0650b367027eb1f8414bcba02d7c0ffcf6adf50da1d66c7a13de076692e6689181af06bd07399f320f48bf81cef827ba6523bf9a20d403c725ac2f1cf7fd564f5c5b2bbc053160e4344cedbc8525b5e2741ee34fe35c79c6e98867f104ad84cc492fb7c7d92989cdf229893ba0f297a06de4b54712a760140b23a93e6fe47c9a556b26005c32657492f14c8fa323bed2811e690600cc3b0cad4533f7f220ad0ef8af722d85eb0b343bddfe8e482078f128525ae2e72bbd6e6175a06c8aca3d4526fe449228d8f5432b8223643176b36c5be5d560d22de4d54e4394236aa478ad40ca02bb681732dae61808270e2bbbed68ae8d2cec9b537fbbcb2c1d71e9b66de69a63e62acbe03c1ab67554d55a44661d81676d1a85fdd258b8a34f0d65da1754544295aa6c19bd4d97a36721a697426eaed9cd8cdb24f1af5e8b599af60c96b023c1a57ae57bdfdcbf6acd6af345f2aaefaaeac5162f28a71b4e824f85593a4ebda910be5c6a868bdfb84a1053cdd027a13b6675a409c15a50339ae89c3e6737177fa3a299053f7cd230129ba184189cc3ae1c4828bf627876118b2b4fc280086460d5d6d9c13d839a37f717fcdb1e1621b0babbf3f8f1e6b3d7fb8ef2a8de0db46c8de726fb9e596726f2953923230063e066b065da5d65a26cbeb1d4da2027fb247ae2a52c9fa4ff620f7e816cbab97c6faee2193e896a661dd3874cff1aab23aa8de56d5fc9fdbb2c1efaa0ae2f0658631ae4e660bada73530c618e3eeeeeeee6ec4f7547777b73bcc5555bb767777b73c158f20e951921e555befc0018317208c9148a47da675a66ea994622c12fd8f664c9910aeccba3db5dedbaa2fdfb2acfad4e9d7edfdeff57efd8947dedea2df4b4065fa4db7b7480320c0e7a6cfdde4a6cb6d1944c11e78eaf9bae77b69cf51ab0a73d3288f5e24bad6bbe1cab49bb2feeba9d817305cb47814162293b77f02ea1e992bfb2ff9eb9ebfee6f5cfdcef32034003cd8b3d672e17d3207c5fbe44d0bef932416de276df2896732e1bc0f8b360f7bdee5853c6efbfb3d355389a34b733dcdbedfb22ccbb22ccbb22ccbb22ceb6db83216bc34d8ae50692dcbb22c02582cd68a45eddb20804bc37ab728f53e8c61188661d56aab8694fb8002cc2472f5b2c796e32f1fdf48104018d57b27825cbda5c3067b13751314622a957291e535145cdce42ad55bd64718a37bae35b97192db88e1f33064f6bf2e92791fed6af4a8fa1a2ee0438f2a53f74451e3c63ea5bbbbbbbbbb1b07c2b44c7b97e67a6b00cc81f4a805bbbace59772396216f20668bdefecc9da6dc99f68288f9c6942f51bd2b61a23dca31c5de76ddd3a3aa8bb44a95bd75138d293741419ebac7e5c993701e8eb3c3a47a47018c01210cd0bb4453ab540ffacf5590abeeec3a469ee39388fa481bc9954faeaafeec3febb3ff24f5220d77e6fed501fb86c12c0c76759eb3eabfbfdfca28a5b4ca7b69b8331745487d4bc30d94ce9b0052a94aeb9d1477504a2985a139d004d07a430399864b43dff22e0deac91ed1eeee1ed5ab3e7dfb57860ea05e0bc0a808bf68d402b1ae8981dfd6f5d62d6ab1d84cf4b24f29ed027069ea532f886855cff4a69189a59331aa8f71676ac838a44fae20f4a2291e8981d12e9ae00a9017727453b6b7e2124a401895852b37b9e9f3b733dc19b76ec49d5cd1f7ffeabb07fff23e0f523dea49f976862b235f485aadc72cdaf97ffe9f511a73f59ea42687e4d13d8d45dd0363c0fc79187225066e7bfb9fec22d7b3de0c7766f3828899f33eeae2d2f85fefebb7d44d3daa509080fb6d58f7a47d21f52dca95a92b7e32045f9ee57f437320dd22637693e4912b8993abaa4a518c45a28fa9d4037e20f9e889497280f48f8e120f8441026170600a84e93c9fc5959922b7aebffff9dfc721733cd22df0e4ceb81744f6d4b30ac04e8a604779f514a7aa2a95abca2657d5430873ff9328c8d5b7b0027fd5cb53b7f0b8c929c518472fe0caf413e04a85235a191176f61191157075e8812bd5db1b1ac810ae9c5c1afafd269706fdfeafbda258847b465d0d1444357de9ed90437786f6d01e0f597712047f31054d70a5ea988a47ba853e929824575f0950a99d12e630fa7994a807e3ffe00e7e376134845d8852fec508e508f883279357ffc99c8a029edf3dae047489d04d10c6faea9f058b6d6b68fd9092ad671f7bab1371a06fedfbe1cd40afbd6623e361876eb95f7d0fdd925dd8db39f5a01a0a9e7c43864e40d123fb9d71ffe4addf4cbb9fc9e812ecfbdbb3c13de6d9b87fe2f9d02dd757cf755b57e302dd72ab37e9b40ed47d08c821bbbe171c72c71cdac53c6f7b1476f2ce007dbf7567e0efb7dd853e542deb5aafe4efa5b9b2c72ecdf696f7f5732fc34bba908742033fe8419e0dcea31bf66c649e8cbe9d7644ae342feee851e55514080e22e27959612efa1b2900cbfa65f7de0541737d0ba455aa0fc2c352fdf752bd915c55d64b0f877420d57567dce98b6e8f5a2e7bd69cf406cac022219c1fa1fb16f207af80546408797a200a4671cadf0b96ef2543ad83d455e6dfee9a6f7973ce39df9a32d39a7d652a87dbcba73c70b75fedd7eeeed9b3a9bda6fb9c3edd7dcecbd6cec665b15bdf667febdfefeecbbc8bd9af58ad6f2f5baf4a3d1bab26d86ffb7d3dbd9ec28f91509e3881fbc62b472ec71651be2c009692febcbe7aabbe3f84b176b36fe99da977a67fceeec7de627362f3450781f66cd40722e66b348230f6a5fc17f4ef63f4bb987569aea730db8f3ebc33f4afaf5d103157afabf9327a7ab2424249f3a71ea548a4f62740f017f387e299860cfde18d8014428840c1c3c3c3c3c3c3c3c3c3c3c323448810215144114514515c0116c62979f468fa7c11110f0e32a1538c45a247c19f36c27132477a92c7d6c91c9426e0af7f3e89424118fcf37bd28975e4f9a524c973ce8ff3a38fe40216f24c4518f3bf8aa1dca54bae329f52ce9bb324a49447193a21c4264799f97c3ac22ca21753cecedc419e5b8ee40161609e464095f947501a601ca0b28f1f23a36a47a5a3ca91e4086af4c222ba3335e4fb39e08a8f1e71dddcd1a3f9d54e9e1f4b41ba448f8c8cbc8fa84869f2e439a76934fa17914aa4d224c195f9f6840ab87df4687e9fa0f0277350797e9c2f73b69f2f7b40988a833c3f56610515600b2ac6983511c6fc89a40c798221cf1f2d701c674d5204ace72c8ed340a110a7712078b597d12872eb50e46f38e6a5a921735f3b16015d4e9efbf9310784913f5366308935dfdd0157e673dd89375b0055e69b94dcf94d521940ff715fdfa2e800b7f8c1917b190dea70e00f7ded6ef27c6ee264ae0bbdecea0c7993d4a3999241dd0d0d64ee5b5881e557ff4d529e3f497307d77ddbc72c8190197fcc217fdb9e5e1af237f9dbc71b81adb391d148c9f7ef5f5f63d6c89fa229678dc44fffe4cef02cc2589c528c59de865cfd6743fe58b897ddf65cf7c9a73e79f3be942cff87942c33eeb41c250e5ca1af65dc65482ecfcdb8c34a58c69d751d36e3eefab932ee2a909a71473b8766dc5949ac8cbbaaa7cab89b3e66c69d8c24dcf90f7085be8c7e4067980257e8cbae33ee62b61193306b9e4c406e914cc51817c2e89fee54cb2d533043b8d2b5f2ec1ba2cac19e812e0c7922928c802e1092208c8f78040d70206dcb2061bd8402c7ea4915f9d6bbbbe1f56a73d1a3f9fd55244912047a144f9dd3398831c618638cf6a408dec15df48259b2dc81070813e3fce9d5b81544a69802c54d59e99559ec5aaeb37ece519e38fab91b1d103883ecadeced62c6d8b1e3a6d7dc918a4970f5d5e8df2b8c2fc69aa6699ad6dddddd95fbda575bf333cbb2e82541d97bf6cebd55eb77e5b2af1c0c034c596bcd2e6a310be2ee149aa6699a965d150365dc75abc50870ed4af696859bb2d69a5dd46215d32d340596590e743d5631221856aba6699aa6615088db6c4641dcdbebaedc19cefb1777005b01ac0b33000e05b0067043b7b57d6b9aa6695a6356edbec6c9d5dfa85c993a8a496a6d952be3c24d596bcd2e6a316c0aac628b89604dd3b450e866dff5d8c56eb8335756b590a669a16d64c3a5c95e12900366bbced7de4bc57e268550086b9aa66d3130ecba197642640a4dd3b450c8e29b6115bb378fee8cfdfe6c9381c9c06ce7d4ba56d65aebcc386e746732393b8fae0c4b95b66dcd1870d55a6b9551632a03ea35ba34f5adcb864ba3d66ad5ab6f1aa7862b7315e03ee0a2f412c095b92e6a55076098146aadd845c385e54c337665dc9415fbfc316f878e4818aac4b1accbdaeebaaeaf9d65d5fe7ccd0670f6e7d579c6b8fa36933814fb0ff458c5bceece80bcfad8fb7f3f86b9b708c0015af83f4664da8c6edbb66d9bb5d65a6badb5d65a6bedbbb83216e5d264377b6b67ee57ef8bb901255abbbbbb035c076f809774316b2d585c1ab5566cdbb66ddb6417e04af55c17b7006154239fe7c1b4a483f9e4ce54ece6c6aeaf72dc028481f5bfde71d338385cb5666f455726cb30ba6ddbb66dd853296018450185f0774989f61bd64a3c141aa1c78f439e8d9b71f6dacc661bb577bbece34bc36120d0e6d9b01988bb1687b49bd59b61b5be75697cc63a796784bebfde19db537a592cfb7a71180885c6f6a10f793640dce6d9b899cdf05bac3500bb3ebb1ec3307b35ed3a6357a61ae03e007a106e101862c26aee0091ec4f4494727c985f64cb591cf65f8c1cc7711ce7dda06f79df23f89797b21dc1b92db49d77592f7a37acffaa7b37acb77f79acd3e35e0230a63279fc19c6265c77c3fa6ff3b86fd0836476f0b7d57d22c7afee0c0857a6f6268f1fde1925afbd35e94abaaf861c4bbcbf61fdc7bd951fea5c04fe42dc1ddcf32f828818f78ab80ff2fee2bafadb57c3c53c1b1631fef6f2a887847b25f02fe2e55b5e577953e4fe0bb84a7b910fa22ee02ed23d7f098b70580476150ffb693611d1d29690fd180e098323608c68d32366bfb969e8379fdfc43c4b2745f0e737fe02081304f69bee476902d7fe91fbba2e0d7df9f5d2a02fe5a4ef30a025b1baa96eba4bf5ea688f5c26f6701c9fa5fee951dfa27f7d0bab3beb798430acaf9865d5bfde5a015d24cfd67123206c0850653e4a8a279ca0d86942893cdf9ab48e4e4febf48f131626202e002651eb3c5b938cf6913c71fac77b5c65bee799fdcd8fb008bbd5f1644d9e85f6986fd7fbe24fd4429e1f2da7de6f9786feb70e2a8401c0bd7ffaa77f7e68ff788ff7b84b8fe4cef7884e7847e75effa902ee2ba04bd76cf5a77b5cef1ffaf95de3d5c4fb9a64bd19e4f9975a4fadca430942565f827d27d8ed70000104cf12d5e9fc0610c67c4782c78f17a0cafcfaa70579bea340e4458c21cfff6923b96bda48fb4fb7c83c71f09fd18ed72192393ac9c914f0e73f3ffd2849c09ff7fcfc04bde535a8410d6a907f4f9e2db09322b8e9e8e43739f354cad37d3810aa9f5687a351ae8c5f0157a6cfd0c27fe0ca7c4bb34b43dfff5e1a9452eb87528c4522ff999f19c9611ff3a147f34d3a991dc2150c4095f991b41386f910aeb88c0e759e2d0b99ad779d467511e0ca7cef7a0810c6fc50d73a70250e9913489e718a58859884a6bebfaddb767d762f4d68ab5fe329f438d4697f4d9ed6f172680f5c12e9f8d0a893c7d3c976c66d04a8325f942966823e8187b0f414794e1f29327e7fda7d11877beb5d7d1bb17b4decfd1b5abe1e35c1ac4b73fdb5d543a171b90e4218d983ec66b25d13eb028b2d2e29b1af4c6e68597af8ab4b431ff3cf5e86b3b832f5ef8cead9b0bebe8d6c9684405dd4f1cfdee24d7bdc7dad44ffe8d18c3b607cf10820709edf3aeee243abccc77aea00407b840098598d1ecdef1c7720cce5e9503d2062a66fc54a9e7a08819deed5dc61adee6408feaa1a4ac201049d36d3526979b6dcdda5bb63b4aaa9719f1fad6aaa10f4cf9f5590ea89ffaa9c8a479e35bb974655c9fa9508a00b85d509f2ac5800a7bf8c761d5a79e64f6fbc9b3bee245901fb5b1f5fbe91b73a1c34cfd938d5ed9b39bdc7741ce49c6eb1682e8d1c1eddd23fdf7b4098aa6656367956a43cab1b1c4050ef9311c2e8b6ac7a5dd5226923f01942850f1531c6a6b372cb9ad50910dc6fa3143e3f8568c813908589979c8302a00b8babcc78b62d24b5843c4db0860c6728b92c76625190328c0c9d1062cab662b51af1e9d1e479214d23f18ae8334932a794137d5a473412513149ac02c7fcc59a5853c355fcc40549a2c6074ad2ef64090792c724459449b473e714d75b6fc92023015d640d0ca08b24612d96046d2079b48ba73e19442493c8913ffe45beec4e88e03961922a0754a9741cc97322c92992a7cffc6ff69c5e4e2789fa8102e2238f6a264c0ab21130c6d481d112ae4a189be6576fb92e7bad03fdd6715f3b8d76f56d271febe87b5775274779ea647d32897c7295d3c95d1c959235922471228cf9a8532a85331fcae81a77912892bbc8144e8c214f35249c3cbf86bb4c126ac61a94a74c2c4e222fe4a53ad1735df65b2751f21463f88f08637e0eaa943ae5d93f2e1ad7907e6a6a48b6d690754a3e240fec6b475febea833aed65677f92dc05cf1a92abcc772f39c96b2629d6e4a0426fa5fc4d6e74db68b5d1edb78a478f644e8ef573dec7f3e70a7cb20ba00b0b0b604b1563b4cfcee4816922f132833c630e38922feaa20d1c65dd05e048bed6f90047f2b9ee017024bf760e80a31fa08a7c084015293f0996ef92a7068e42de2753e048fed68d208523f9d53bc95d5e8830a8e23f70207d4e9e0fbb54fd8840f5b292db7f31cb6eab55729ba4285b87b2d94de7c756cad10784d97e7e04027491399c44028fce132526f2ec61843cb76d7b6ec624715d44459f5885ce11c710bd90853cb9ff220a4218bc3df7f34600c79cd93e5e9a8d9b24cbbb1133377ff468fefc18a9803036acdffe8bdc6b6f7598667b6e7b0e666b86fbed6534ee60e6baa4755bf7f510bcf6810204935070fee84b13398f7b1be76c0154f181841de8dca014833c2787c3fa1b1ac8f8bfab71dcc7891324093ff2671824093879cbc9301391a3a8c929193a01850f277fe39e6297fbedfe5531998b7b7b6193d42dda4fedef5f6f2d16ef0c6ee6de4deb5232bc33da7b28339db90fc202446498e19dd9b46e7beea6e4eded85dded356fe26cde24b5b0026f4fe1cae67d12bb195b1f7dcc6c34b697dbcbede50d2dcb6e0344e42ec9b744e4af3de92f2c08c8cde2628539e7db0c3e81834a8c587e925a65be74a94b3d3fa25036dc932a309ca4efd29c4cec983f493e2ca69843f294ffcd27e64492c4e431370857222a661484a9135b9f2373644ead5d56bb5b3bac646b77d5aed68ed6ceaa5d55bb59eb0fb5c26e8136a0fe091036011fbe9500d0d5c14bb09292253ef859e0a989392d215ff8918411186a2740c2e663a487d2ee794de0a8c205fcee61de29b0b05b82a8b20d4883c5fe93a286081232104922450d1124449010414224450622478820219222928a3abc906462221860f8b6c23416e0af6b76f2e72098d368ea1caa6b611502e9ee833b32b9af17b812bd2c0b5846c79f6e41d1c1737f4c3412e17b17c264f0818b16e591abc426f9690a198017008ebca3e5b8a311f1889813499174d91777a9c0154ba801572c992ee69324b0f3088300fc177100f05f8c01cc0cffc519b88881f25fa4418bffa20db2471ea2ffe20dbe8844f6128f3ac81e77909d07b707f107d9a38fedbf0884ecf6bf2884ec51e7c555864095c8de0414de5fffbde498ab782b39bdee030080195ca0b460213a31290981327c358cdb6c8d1fcdb16335ab6b52592b9d73c6385fa4c8ebab87b6ab2a257655dd32a5432dc3ab878dc9eb075196d65ed75f95c2697991e42a3e23e9253bc95d368f33c8fe16aee143b7c8a7ef7fcd18ab8bd65a6b40980b2f81ddffba32d85fdbcbe80a2f81fb2f0d282449cebe51787096a1125420c95946995f7dfdbca33af6cc47f6b7feb7334d2f926e1536dda2c385f038308474d14baffdd8cd80795e37c7eaad0364bc1db516e048cad08929e46408e99589ddc16c7d6719bb1655c05f2445d25b5617633a8ab28c73ce086bd626941baeb0dd32c67865eb58579aedc4a4352dac9ad952ccb215a3f5eae08f5d57077f8b61f6eae06f33d84e84c71961ae3a822b7046ea2a29ff5d0fafebaad67c49ad6c0357916aeffed8bf03169623ba0a37f818c10a274ad0c411ba20a17042c29dd271514be0d46009173c118528c744861291152801b720025e3135cac404b64c4356401a7283252499291c788e0061d949d99c9c9002092778769ac01fee815f4841147ac4bc00094ca4627c96a0839c18eb362614f408114df08231f48819423bbd90151cc309b07022410c521024e7a3f90715394e20112212a108489c6286607941123d31b01140022da4c014636574c1153120c5d80905e907a4185b0951c10d7ac458eb54069b528ca5424e31f889b1f5842406a5187b614c10c229c65a4ca24cc0bf7af784e8d4157ad0f304146c56304427c6bff25026204413c1a604a5182186c0210b3b3731f3878846ecfcc4b44e1064501323c41038f4ecf4c4cc50963f4434e2082431eec146002604c5c314233d0a2b604b295da47cd843b7f70b5c91ff438f6414458f871ec12d442f4215f93dc8ef25ca17c203291d803152220cf9f23980e405c278963f7a31e9a74829802c634e958414e20b1c55ac285ca95e542e2aea3d9c4401e7f0e8399f547dbcb141e4876eb1be7a0cc0183c4418d5577f010843bf7ab1c1a2ea858718e309397e75aa7ea24024c3223dd058ea01112c28615956f6902a728426118a1fb7d085d845e091243107f4f9600f3cedf48e76e1c08703cc428372bf7d0b3a6cb1be3bb7c7438f30ef8b911481b8600da988b6b1ee85104224c2d8a63c1e7a1477625b0cd6f8d67a310557ae206d3e2f659c2a736ef207ffee80301ab4c951b6006a5dcc16d452a989f2b1ee22639a62ca145358914f117d5eea12e62529f0e73536ddd239e52e98873d8e52284ac0d61749a5cf6ddc47a984b283a5b4ac180624b023ed82793185a303778e9824c75a77f428e290310557a2dbdcd8b88ba7a2c4b98130474018eb6dd8b796ad966549813f994a4992d4d1a3cf8790a3fbe8517c91523fc258c37eb479f12551901f39028934a6e6f6a247f83fb721b98deb70528cd1381146fcf8f67611491793f4e8eed041a047d06da80f61c5b97a49fbf8f10884c9e27ba9c4fb68c8fbb0e8415ee97adfc718a0ff46d109f9fef5a0fb2cbafb2205e4fb270858b95fc35db08fcf791f3d89f7b177d2dd37e960ab609dd63d11a57cdf7635a5f7ccacf79a6ef92229c78f1f96e3c78fa4b8036a5fbb1798031cfdc0e22e14c8f1894a3c1fd87167a4791ded6a441dfd11475893634ab47fdd08d8b67d2fd4b4be3bf5f6005724fc171dd602250afcd52c3f9621fbdd213ba59ff1902f2d427a1ff5404db61faf0430af9b5287028e9929fd28bf4bc95096ea10d1aa6a68421555546145155654614515447e7e50f31ae9197fe4f96fe507728d094f2a1d8b92900986ef065dec7df8d6a48bb9ebece38645ddddbdc45f46bbbb1b813021aea50df793038140a06a29b5e2296b1d8a55f3ab92b7274ce0af75bc8396429dd6993a146391e8ffc755e6c7941e51ccbb98b5cea4f36c2fccc26c27e37f2d6a65414429c56c17dd4326973e96590dd33a5b0d2be9a00d82e610134f9886b838d5b44ea370c89fbf6033dc70233d722ddc9fdf598031ee974098d04f1b5a832dca86c958f4b36a862c9ad9a8548d378539eb1491000000001315002030100a850483c170200ff45c093f14000b798e48785ca089845914a430860c310618000000000000181899210a00c8f32780f80e76223014d75a01aea32e66423f8152177bc435bcc6124c692d2244b8246fd046259e2f2a77f2f8943487664d1fcfb1a78171e27861978cd00216dd58c6f83ce4dcf2cab29f05f18b7ec19eaac94741e76872e36a495a21cf769b8b8818d6d14351e225b1a5e1cced8d233409d2707e14c98f1fbf84f8fa25066b4a2dda36c9408e450ac51da042357b1cd3e5b026caa9073cdc98db29e709b025384d8faa2f624cfa3bcf7b36252f92b942ab8dd5bf2fde43645c40110b456ab38f6112011374da08c7deae98d2aa5909710c71c8046a5bd2c11bd32373293e5b3638ad14c197591b3ed3633349e40811917102d89101b9efedf0c031edfe6993435fd7c22dc499f8215a3dba7b38d867456061a558e4c304d3b2e724625f66908c9093dafcaa15d9eefe3c1c1cac126defdb609db21a557f277e235417763ad73d411a1d0daac5ac937e9ba53472af987840779dd2d9766dc45bc93929badc47c062107e2c103381d3e5cf8217e67631849fc576e3b885679ac0fa590922b7df86ddacea9253ffd295c207db6f457cdfe808e499e80903c61a575fefabac6a1c046dd9e211ab8f3516a907961a7163ed53a8221b4965ebdbe6380ebb7c9b639f2518a930ca751c9a21aaf0dff12d2fa3613b7ffcda1109b78571c3b1472872908ac1f1e9a48ab44a48532d4adde58ba78dfcf3df6325c37ae86489e861ff6348b4d4967d83f7f3639fe80e483d9e7d2053225511f1e2777992d11e09bbb4b39ff633f0b4aa0f55789b184cd6a775967ef0b3bd5827f4699dea0e95d4747774f991570ab20a9362eb60492b815a847508af2472c6f3b3a1d92175112091695fbab2990aa876318228ddda35abc762d35b50bcdc0000c9f457bef2d92621693e923e949ed96a0f48c90e0e54b12a1fa2d5867aa1afe34a58f4302126dee4a187bafea482205417f1a3aed48b7ca77f8a4375684fca4dbfe98ca4f54c6313218f925225919566579fc245ebedb31984f5f701f47414d1be378f7a79f7beefa72a209f55e625e60e1a660e6b263af68f08404b2e8a24a7ef388465af1f5c77037a5eb71deca23b91e0ae2540b42fe718cbda0066f5dda9edda84b28b722dd0db7098ea5816aa6a145c5fc815d21181add76b82726c8a4203c5b17c000a48f329edd0a4ee5edb6d8d58f14deb00a082b8eaff0dff050c9b7a12a06d95cfc24a62deec263aef4a71ccfec5109410d987223b093fc65c134f9e9cdedc8b18b448686de3435c3b980ece50419a2dc560769aa173897e42253d782d4523c1d595ca92eb719f9cc640c705a1d840d4cb8ebe4ecfab11b1bfd54d7602e5575f7acf06817f7a2852ac2e6deca85b23964165f4a4900187764bd41536537920f436baa9264a64392d29ddb773b84eafa0d9805d7ca4106ca65048016e0ec92bd894c8b0f9798f4452d8a02c265c529147372e0b299bd2765ca4c7c054e4ef5391eb07313d0316922b723d2ced1cd2c56f3ff924c9fc5b20887e407531206c59fc15a4ea0914e646501823a353c7e4b17a1329c30d9a8dafef9943acf907709fe089ca4a31a4a56c52a82425db8bb821e87d27e0eae845765cf7923411ec531b75c7c3f36ef903262b00c54b4781447b54737a3abdb8113ced8941fff71d407973565ef795e30722424a742b8e8d058bc4f95638f18925e33a0545d531f2610b36d86d3f4bd695605070049c401cbaba2eddaa52118dfba04a52cbe2732e4525a185668c53e39b37233dc98b09df09da11014d8bf21ad30d659efebe495b9de1c572e688b8651009481df41eca873259f121721d0b866dacc6b2a68c77079ac80e8f5fdefe9fed6fed89185b3c336ca3ba2a28a0cd9f60fe43b606a358919a981325c95e8eb3207b95be8c52768a93d6e334000af8827e53c60745ac2e9bdc01684481666ba010261b2157002497f67345eadfd8b7a7f67f78b9b43bbd7f6f0e727519f12e021a61f72991a84a139971615aa72fff16b76de2404b33ee1fd777043b52cbdd06755a65d591e865177f113b715f95209d417291a516801cbab1e5a78fc2b79278fe55c5be68ce556d378a193b2b3270f116dc8b7940d48e56079226143c07b2eb9e0b95b8d70dd23b5c8c4067e801b4d2837249d18d1bef7d01ffbe16f3dd84f6cf46d7c35d7026f16aa51f0615c4d30d59ad0bb8517f1c7573cc320546b1737916379016b5d217ca147fe207f6495d644cb84289f01b250caa0419035b1a7685f3a53dd41fbbf59042977fcf01ba138564290d107e1ab1c9c0c85f7c2c844cb8623f4e6007e4063d97ae7fbee260e20456666b711d3368b18ae464e71057f05515820c605d772b10bb91064c9a8ff9f9294ddd0eb04488efc13cbc0f7c0059a9881c283ed3fa2dae4a9b744216cd7d6e62c55d7a5682799b56ac29dec517ab9183306998d0d3b1cf4b6773b7788110653df94d190804c848e2d1af4cf5e1d870b2090562c97aa29472337c09dcef2af498aaf00f14850b1674fe57de0e071ab8c4c32fd583c0d09fea46e684fdd9c6463493899586953181a40ecdc0adde435917b2b1e45a021a5a439773ead2231e6860e91b92ebb8756ee5a59f1e2dd0959243c121c2fd6c328e6ae3cf16c0a0b4ce8d6dadda9750150b1c819f153ac4f70ca57c4e58130ce0ab9eeefde95c4487d2480a84398ebf6579879140060ea59a034c4967a130764097fe112bb0a52b421d9d47dad76054b5b2c1afec38bcdc4cbe5c36cf98ea5bb3ee1a2c1aaf5e1a758b44746346ad05ae567671ad052af384b8ff30aaa16600baa39a1f163648e86748648c3e6535c5275e622462f2dd0d04560abb695e34ab547a5140cfe67ec52db2fce7bb7d317e43a49f288f14895fdd8ff35eb016f407c0900121cc670c4f795faf4a317d5785b78ce4f8e45ee0c184bc776638aa455e830b9c0145f570c13ccbd4752587a9a937272dc42f9936295749a5e27627a2b825f696c61ee6046ddd3a8797e68a6c3154ef1ac9bc5e02ef39a07d5c23a210ae010cb575f7a3c94de166f49b6296fa12ab2f2b5cbe7a71687a94d7fbb3765deb1e310ff80d59c053d943c563bf6b406a112256d9565c5593e7d20e96238bb1622248e3b9c5219e680511d7b2800a108df3ec18e2f4e2ea3816b993c5d22e8aea849c04d14be9a80036ce17e4496c5e6386e3543870f33fb7d9627e1d35d46298a5e2849c0ae07eafbe498ec87da55280803758e49a2171d3b0e6afef7073e8a9436ffc643911c8e5bc626409daeba8addd4315641aba43388a939356f77b2048f2d13e24e3f3160535bcce9eda0c377033d7790d6b0c1ce0c67cb69b0af2f777860b40f0cf61859862a93334b2fd84d53327083f60dd852446ba2eb5f7d134babe2dbab21c32362c3fb3e8402d892e74000a3f9b258d0259c375cf7dd7b8412f778b1fe8188f17131efa03b588c64fc472d70ebb4f28eff62bd5b6b24978ce30de16e3d2075ae7ccbec6db8450bfbec27525e04cd347dc56a8600a4df93d73754f154766979153641c32ade0136610b8397d88a6bebd45c1dea498117d82d7a3e1da1e6816e4cb20674e839f5710fa366bdced41af741739a2d9eda3961f942efeb43f3e934d0b0fedfde00bf72ee8141f05aae297f44ca80e69d9314871910a460ae85338d9036dbc94fa65de300ded1735ff8b4c3aefcecad172aaa1c3c836bbbf29401f60c9bfe0a2d03ef8df6bcf206cb829a52335a62e1e1edc1054ae50c5bcd472619a5cc5e5cecca874de86342aeb0fb62852ed8c1b5dc247eb53e178232ad5d054b298c70d408893e083cb276abec1bebbf703e6c3860cf051ae0cef49c1c83cac17f1aa64f8faf489f68a3441fa48be1dd9256544a033bdfa634fd2b0ce4b0be318b5ea437fe467ffca4b82c7ac9346960c171235d127568e8fd4a1e37c573a092a36986dc360e850c9e920db78803417f18bb3ce3329fdb041fb3231ff0960e9ac4be69220f26c884780103e8e68e9c11c54fa454f02609158cd68a92771cd5beb0420dab90b1caf5623c539515ac86ac3c7e56136dc010e69bcff7681d1842d0ba551de5ce55262e1adf194137be16da04bbdbcad6569e1ce2d15d559c9fd2a6ff2943250993fc7f7d678ee0d634b942424a842030a8fba7e103551b1491074f8cea880ea12dd3481ac9ff9e0e8530a727cb7027fdd16a3d0c08d70f8771a2ccf420c32821c715a7f22a4a4327483c423c1bde86b8b93ad15027a585829de98975851f63dec832ba1b22f66fa91ba727149c5972480107aa416dcb186fc0c89e8a2ff44aa4cd62e29d9a8c78c7f4a1fb01ed9e4cf3a8cf2a2a7856a198820fb7f94318d66ffc1a0427cb656c8cb9795a78220075c50cdcad0dda085b2228ec80149394d3589670144d4390eaeaa107589b649156c5d3bda99285ccf183beba5d0e83a43d5f639901b60e1e4221cbd819bd360c2b27be75b741682e0fc42b1a310c812c6e0d9965a311daf86a14935c324116856a8c40a53d7cf0984bf874288bc959aa09423634fae6c207eb7a8c5eacfcc828371160401b46dab67c5811a67e123680ff3876e16732bd5b0446a62c734c06389939b36dc6c21cec91f8f993ac656130e234429f21ad2cbb5c56f8f0909590697d9694d1f2bcec298eb8fc7f4355880f53fe1acc166d0067bada49c8596cb23190d7e4506fd1c88802eea6507e39c69360168aa47bb4b2ce543a0d659f07cab80a80064cb8605695fd6ce5c305055ec10501ae7c934edd4ae7104ca1610056773ae4306b17d4a2517a5822453e58aed1755a281556d830a601f68ebe9da4970314cc0d170015023cacc8911a3bd8af1078878d203c3bfdd972b1e1653b5ac2c147a2983f5671d751139ef308897f45ca2e10315871317a1a5a5d5399f318be0fda32140fbec70025f1e1ece84080a6d9eb8c0e733da042d4455e21a412ab289847db8042c35900195f06ba49af46b2b17421d4d3c432cd913c91de689811e47f50f134b527e7525699b0e17668f3cc5d742d2f1baa3e1b370a8bf22aab575f8d597430a50b919b170bd401f79fd87d8b40ae7e760e09ef223a3bb72736a71f4514042eda4c27fd2efa105f614fab6fa4c8a8c06a80ca4019cc8b6472940ec1b877492fbf08a94c2aeeee45361d9944b23bc02d3cd04f78728301cf468bf8f2f46a211bfde589ca2c44e06d6b75e4f82fee9d21e4ae14041b24a67455a4cd53ca054da6daca328b40c49490d1b34529c36b3a6c24afd536b04db7b89578663fceb01130301c1a41c4a7c41e5f06e39674f838b47d6d40688da1195c8168a81eda4396b185d17fe88991e5c274813e69123f79c56c7685aa7a711147d75f73edc33acd2b09e43503b2e7489d46b7f9b08fbaf8829eae382e4970c396064204c881eac47980b9ea160bc90d32392668310fd9781285c5d28584112199044dd8166cf75a0b4afd29d943aa1ef8d92ac74f51733f20e403460795bf3b064751c2d49a2e21e561e7697b98dcba4b41dab4562d6b024e0b4fec62a4a25e9fdd104c23d5487ee19118ac80dd1e8a442faba637494c9a5e5304fb53e87085784f8602dc73742b7f221a6739444f2cbe6cc18209d955ced915b56cba228079e698cdb77a434c9f23cf3f5330d1cde8008b76665307ee58ed1082a46c16e7b821b7cb3169f7ee10f64afbc0dfffd86b68f2f8e5ed111ff3c7bcf47f1b36eb2d1bd6e3fcee8d5eaaa27b5f0b170e4177656dc429639e67c233170c17b85f4cc1d4cb770c9de8d595581d526d61182bd26055e625f747e727c33c4f7a9af7cd7322c6514cb77434b461fc6217981bbd8ca961a4f4e7753db9cd84454c4d894878a84f7e2fbd6cc4ff8019b990ce0a4d4ffd9cca3328b06b64e8803c7a7f583dcefa443ae77a1aab59caaaa93aa4a607fc417d81d58d9afe27ad16bb74593d46ad62c5e91984fa43d3415bf5a63e4b78935623f0d5ecad28e3ebf741bc196d01775e5a6cac5edb2a3f10c319b2ef2141df4d17a0006a3b0375b964348a369819090622beef4b7721f99df80bda9c8ae3430328db4c7e177e99397d54cbd674477227d99f5d8423a6eaed2a978a78304b8492fc04bc7616f8b6ae4ba73bdaa9e3311c34129008197a668cc0c5fdfb18a377c5e5147946850e9c13690af6cd58ae6a3ea743ed82a1d50fe8df977a611c97262b7be51137a0425b2c9a9c9f574b5a858d4188ec32387e71258826e616808023d764f3b721e74f580007321f359871324a4307d662b029c42899a9c88c59215d29d5bbf387df3b4505e4bd7bf9ca35cd37cc43d4775a4b0fadda08f3c8891384738203202f9f617d9346c64e91f75a5a5d2e50165753df769b1f1fca3a20912a6db611ce529d6a024672313116bc2fc4c76dfa2630714ae7a910a483034bb0f525ab9811d225fe5880dc4a753e6fa4633cdbb9cdf1ddc13c1d18fc53f46effcfaf6e0c81678703c3e52410b4dc29e24ea30931322a0c02100d6f4d966c2e5366ab7a9ff6f245e3756da0156c5f0250c6c2060a2103a0d042e1e7055d7504a853b3958788558eef0beed02b1283f89183dd29057b5f87cc18ad7f8f57c61f07c47e62d41d76dad90dee1d07d3faa1a04c6d52f698e951960826c27a00e311628df3b4a537f23e71b68d4a9892736b587b21c97ea074356819b635c12b9801935611c19f458bc72631089ab3c9797aba8046a211d89916bc3f42387dd60f90aa382b0076e9788512b8c85855efcd2b412f46075a58e689a8717ea59bca90c93701f84ec93a00fc4609a0fd6f03c494d85a74050c0c3706c56d23bcfbf53427023b9eed0b2d22dc16ca0319f35ea953e5e9d2d9ad02a9d9f77ad8ae4f96c87cec378c8c2b912ef23b599be90a1aefd0538f9349b60b756ca1bead9974844f02709b81092351f4c25b88fd77146e8442da50fc1325509de8602424d734e2e2dc166c2d80ff8f91ac707fe4611b9a59e2692fe0f3b1df290b249d64eddcab498ec759dd5512742beade20f588a84a04c7bc8aabd46947638f18a2aafd99ab0f3b2bfb7c8552ba82c555556740f6fa2f69a38b906108cbc92d00398663b472bec8e0b0bff8871313a94280611b5a99227592dcd6b2492ce6961a10d4a092cf596311b6a3d283dcf4edd81b0af89589a40ca844ae8a95b762b54668297982cabfbe92d7dd9833e29c4ccb814586756e189d3d58c55a10f28e01d8216d5d1fcd0eb37329ee90425b0bc68fc0e1450b4e2f73f08e0d51fe882fa07eb07eb6cf1e658fe10555c50f153ff0702d2789539d47bc7ac60afb80e1dbb0efffa7aea157973bba5b213c2452f957464566da36fbfc19f3440b3f94a104fcddfe27b39416f8f9efd86d0e3cd86110fe2434bad8223c7aafd1e8fc578ff6048d7239f94cbec63725f8c63d7c4410860cc9cb3fee6deb3b51a20f6e33fb4b0221d8e6ec0f362a29ce0bf415323b17d59feaf1b28e817d866f6038d5b9ff39775201026ff3f51a429f1b355eafd12db27fece2eb85d1ed86f5c04442f8ee23eb7541838d6894165536ff8d6236b81c8d1a173b018b2cb15e896ba6fec2d7a7ca7c2b31e33164eccdb6586c61911a2599dffe72c97f5cee45f895d997c5c124055c07e5d9859c7657421979d0b4dfcb3b90cd5da18c380bd661b68004d2ecb2de6d26fca038dd86311dd2949abb9e0eeee83ac0973e9d3d151988937f2733c5a1a761f0ecf1f8fc20f8cc2cf430a2eee4fdb8670a94a898b98891b100c596c1f5b644d91dea86de47f9c50357c8bd20688469b3eeca3a5c8bfcec839d32f9beb3fe7e03980799224b278284f37d91b0085d6d387551b89330e521215029e475d99abd557b44e00f8e96406cb370309508464e61a68b73c65438381e4c81c7bd9c97e6fba1182de0ef101207b6651b4e302226a961f3339c1e066510527eaaaf2b790726fdae82e8125398f6ce1cce3bde99b88241b1bbd337e3a84e86fa6f9c489e3575df832756b4045d2dc01b55ad10410869153c0bb58917c0d6fd1052c4fbb8cdda732a70489c4640adde8436a3bed1ce7271b5217d789e35723e0372b0b66da5f2be6aacb881a3e801d2dc532a0b57af472b6da3d87bfa4c577aeb5b520200f73452dd3817132f9dcaaafac837b779629aeef0c75d3bfd0b282255687b484f8509e5db6bd3ccc615d8fe32dc8e98c610371a530e5c3024af5d530032fd2cc7069bff2927f0264f21979e59a4a5608ef26dcca58c7c9c8c039687868a91614f49c8f31909efc6206cb05c5bf321d25d0924432f8a1369016af20a445158d71d34ec8f0889a8ec8a83d23472d232b973eb6e7ad14c3a040fe0c984ad2f0f12f4cf9dade4050f1a0a3679a88689a754deeb8bbd362ca3e03655a883a48a5e3000d320757e3f2de44cd4887de5fbac37f8e59e5091082b811ccf64154b857424019c9a52be1bd8ae29d8ccf022f7cfc983d18ab7e1e7849e6db2316f6ddd7fdb0fd95b04fda65b1a38875d257e88ed7ad371501903a74807920f74b1418a089bc8a43a63d07fc783e2ccac0c77fb72e4857982918f71db1e4714ef3160cce6ef234a9992ffe2f2e9bf0414d1282a30c13a62b8292da5a58b0ea6c2d3d8d77725b55dcdaa2e3e876c60d385f4044eacc8694088ed4dc4b51a39ccefcce908b44e8a6ea7e753c03179e3770c30751a2c6e0ef43d4ea55ae4d1f77f43ae1ab9138e9fbc2ca0b7d2de1140952d556fb9610525cfcf7b388052427f0be984b1cc6f3030addfa002ff3c511d66ff4940092874a9a95df92255a8ae8832da67d17d6eb683625ec72777c7be868a32f6c29f04e556d62d885f502538356ff623d34ac6ba48ebd2e2189792c373362246e8d2c94f3bc0e5f7266af10cfb11ec71a41af12608354278683c2ccd87dca4e1050152bee851786f9c943ed95b34bf0085f172af17f9ab111f228140012ad938bcd0bbc1098f212e2224933e81eb1e6f06260cc8830e929a97b03281606668460997e9c92a76a892282191dfae7535b6ec7259051f441e4f5a46a590345c9807de5e5ef52c26d5ee9a6aa65dec860b058801977896333ad471ce1674988dd6a6167a16c1a57cc3d7785a054b70bffb5f20603eb6e9e57d5c6de77afa755445cc04d36a345fe60c988aee92c538aa5ffd7fa349181d558e0f45d13c7e398c0fbef13b86ed68fb4c6caf54eed22e34d2145fc944354695a51c452af92f8edf5d05a6be2f47b732c31cacf75ae65b2e32e5e9ad22b1662667328ec8fa131e0d38896966b301daa6a825a74af25bf89e886947415f4c05fbb2137462d856aaf0d46682ae1d368812382d7e440e7dc245fe34131b8cbf05a94df1d65750f479af1cb8c85e5159da8c28a628f8b8c5cf87c6fc784109dd88e4ecc0e6217472072be584bba1539f5824f00e13320efbfb1f7b59abe4f8515cc6736a5cb380cb1030ed8b96d6fb62d04d028a86839b8164af52c7dd9cc15f94553d802f1360fd0b709eeca68f3447946101cf5130cd8d3032372ca8b54ff0f7e2d007363e6a33822f6bfe938cb4383ffccef241ef4594bf23fdf72dc0d129df7d37be6629c9cb6f21b092bc5b34fcdf02c74285dfd308bbcf71534bfadb44085ab75c33521881c3ec4470aea30dc328f06ec5459da81121cd88bc266b5b42abc404b73641e33466d2dba42b65373d10aaee8293a85a6335fa5eacd507f9f0107c494f67aa1fe4d7f7da1f37ccc69231c6c5e347991fff263df7c1daaf44cb3ac776c77f3223a73b9dfcb6920500c75ace9a3fbf28c6e27e5ee80f4296d87cadd8fa176a5972001c601376dd3a011e9bef85045f5fc926222727e9d0f8fbfaaf2cb29fd2c1c33dfda74deb4a68b3a7f79eb880c50956279ffa46bcd4e858f4273aefb9009ba30f60e2481275c2c9a545ca23ca8c42e7049539b5a4c05119d835ebd20221ad31cfb47a07f087f3db60662a0af208e605af3e112ef9ac8f3315399aa53658ba97871a21e6c0b37c6547989093c3ec4716e28731d5c5658d5636830e34dc6a4e2044009f78c1fa9884aefae4e0ac756c8012cdc815ae8012e8af36b4077203d2b276e68699bc4b1ca6f9ccd3318848fb3477544042441415d7b763c291948ec556438b5e66162c484bfd63a234e1f1cac0f718f4442a36337e438019a29ce7ee23017df1e800457918a362a06084207f5283695a415f42896caabc6c1adcc63f093e46a0692f7a69f8acc58fc7803197563ab5b112764feaf0cf87d87bf7eeadd82b46bb2180750bb3565462dbd5ddcce5b94f170d6f4cfb33f8ac609bcd35438ca4524e2d1531160c0f26ebcb40a1a3d9eef102a51caacd719116a0e110bf5d336cc9c181353d0dcb21d891570db9ded9388994c3d28d6262fc5c3340e64a7c7f3f0afccbd9c5e8c95051bffeb13e5d39f58c5c524761077e5ece2d3ee7ba2703356a1bfd8295310daafd68e1494ce9a1c30ec11742f9f34d6aa4668658d413558061ff1bfb91fbe8f4a463e2f489f9e87cafcf4efc3c1d62dd6e2a1a369780a3814bec3d03abf7219a61169bffbfe1d1711606e7eb0a8765ff704ba128c6dfa0b63038c17143fbb661695e149b2213f331c856c45198f90addf52f58cf6eef5a62c30dc857b11ee058bf9f2d1eb9c20627b1d4fa833a42d0f31adc9d38896ae16980d9e94d07ad43046fde80b73760ea179e838304956954a4beb0b1ca848d157060862f524de5b017e44bfdf83125d2bb911951230b37b93d43f608d14f061e2ab3cb212c60262d23b2d5de6f05d8fd9fd2d31d9f0794ebba43fefac5109ac82c420412d85aaec9ed0e9fb13e1934d5bbe4143367a98d392bf92d62e38e469ce2d7e77bc8988108305314d88e680d0a1900132b40bd5ada976a64195e75c24455358207a5338155879f8acfc8c9e38ad1be60c2d2280ce300a41bc2687ce9ae74e19667a70d9370e997bd4235374dda1c36f5668aa7f8b334e23cdc20f8a67c55a42c86b3a2f5dbb5316d6a21801e85a323fcda43fc9a97512ad5dd94ba93fdceef6c47263a4e4c29a7f5218bc2f4af8644734443b9b51bfb10296e06eee3d31216839cbd8ffd5c1a16471108e672ed670ba1ad34b8c665ea6f16493b07569e3e793fe8dbd1644fea53d03dbd6c832c8f1a3e0c1881cb958758ceb13381a1ad7c2ec14ea7ab0e2c2403564e7eb6f3199ff0e40cac289fb095a476d86f6102ddc7cae06b74063de879ae718be2d6ad4a4c1d7bfb82210b91948556bd28c31255f5bcaeda93de189eb19f3928d7d06d8acb6a9b5e20940aa3807d858d01322f3a9a7ea916713f5457311568b5a3ba7102c2bc66f0379ea861d775391cb04f51f09dcfc38b34644e4f7430f9db226b117dd4e5e621b2053c656d1fb01bfaddee562503e0b12191cea78bea28238f7455a172200355f741a12f7f2a9c7976eda69e631d2ebed69daa96c0d39eeaa8ef820cc8710afb258b2c58df96b829794b8c55430502e92152045c65e46a56a6656559b218095109626fe7e653146e1bc9ce1944d49542b5fe45549b7933f5da60ceab24d058fad925aa2856884614dc6caf5af31d68fccc74799cbf3e7397b7322a15682900a8e920133c6b9b643ee8f13cb548be0405364531e2e7382ba49dc4f56b1f53c68a71889546bd7b29f8718f8e87c814643f9a45ec11a028ebb3442f97e54dbd7f09249c3d02fe854cdeb9100bd9bd71c8d415b977a008ba1dee26e0f2da174ff46a1632ee976fa0c978489fba749ef1937720779969543feb1cdee61769ed98d5c974b493f03163a6d61acd5c9274bddd097b72e3ec94416964ea15380c89d9f5746d2001965256cdf2d2b07898a14fe414a9becda5c48ad48a3e7a34047aba5833d9d7c6b8aca3475802b7b99cba67a13d16763c6f476cd2447dd9f3895dd80507796c2ae88eec3708cea543269b98bae3c3fb1ae64b23518ad22b2ffd861f15cfeecdeefa121b819ad9a34fe9a465e84bb0250abcc321b22c8cd5221f28b12eb828699d1036b58e71583a227616d80136a894a1065a1042d497135dd0c4a83ea300044b8d045717150ba1a94b006a76d460afb13388fdbe4ded7f1e88a6df97e4f3c636d1cfc05f5cb1364732eab8be456d387002501f070f8169d25811e8a806a6e931034ccc5db445487d7208a1631c293d0aba8f8e50345f137e84abc0552659822e2d959578a1277a9e5b05a98726f4176539d9fd3f7f1e32048a0168a722b954d546e9ebb726d94cfc38bd59389b0b8c96cedb04f20cec98703b24b0673330df02fc65b1001f83edca84ace1304ef9e1ea2c70cb84f86a52fd201012c768fd60cc8d314a863c88c98c93ec824924b3b6884a1f2c949e39e28c149a5572480ecf1c0c921460449c1bb20cc7f343bb6881fe28abee3db0e4d00e2f64b97fb1ca687e2871264cec1ccb0f5110f14156082a8800ca9cb445eb0b65f1a0f88216faf2e89fcc377724153477d2d8ed60ec3f82f351504d239e62e585a440bf6a1a8d47ff0d5fbec5ab6d1a458b59ba4e127bec6c9d088a8ba86028760163ee71c207dd6f857ae86e5275d35880c6b546125d750e1f1b021a76265ef5996346d7c448f6d3ce923dcb81478dd188920bcf1d2d7be31f50e7c008e1e2684a37135a6a9f5bb7134418e51cd4376e540815a053df0a16cb1a902811b0c2c3e3fdef7fa62b3f6f02d6acbcf5decf93daedfddba2cd9c6a29d39668546f0a117ff47ba9f7d305e8caa9044e2f5b265140f08dc80df2323dbe406db1e30a0b62e763eb621f6444a2394c6ed9cb590a9f4533e4c5e88ba624aef80ea823c79016f0bc82d75560cdc1e777fef3a2cda302f0306cad215741fe5cbee3af97805403f597502710d8862d9ba203a0eb5630d5eee97d1d8ae3c36a8a670a6a64c8020b364992a8966840614fcaafd7509a55ba49a726bb5f4bf5ac2124c2846ef01563ee50771d33b02478e74f0b0390eddb3f0efb68865181e60e9a367a348d5b8481c8377038feacdfe21d2499442caeb041c9dd8cf9e9f9bd1e46e6a68de00a01a94094516875cbe0a9e58ce476a018bca5e4698d6c87f4b7eebd9f13d44b74e92da44a0f2b25eb88d063c8d43ff45c846b3b815eebbe5e3b16a3c86e26411e3dd500da8f22604e7500f00c4e2713ad97a54a9867a944c4262ff029fb5e6b3be62c0fecb5094b1871e38dd4150b34269fd660ff0dcec1d80d5c756803cd03b58021fa1cf57514fe1175296d013f57b85ff35eeb9cc4f89c1e7700abecec22d49bb0c748c0e2af5b22509648fc1cd815bc44d0ca01147b2e43c936c3f3ce6fc711af29b8a1d70241fcb61333d330a8e184a352d1f7f032288387d5f21f633686788636a1b40a2174ef66be9498146848de3b8ab8ebc99a5380b7ee58d7e9a5945a6680f44b9618eaa6920011b97712b2041ed778cc9357c8c992461511bbdf5852ede07d23d2a282f200952cd33923c45a5af2898a61d3b832282fe99ba74804f234139f0a58150e28c80f50ecd2d36c6f9448fc1c788dd8ba4d467bffa3d3b1be8e0cde5e99a3b9911f493a755db1f579f10a723392485a54a1877358127249001ce679aa41d6c46095d7542a4238d3ac69f84c2f4e009a7cf85e4e88ad7082dc5b5a63b7ee1dce714679a1658ec4c7db6c190cee14d4cab5d447601d2f8ec6d4484c8b0835e97428837169ebef6365c4829b923793124771b4f13ba92093d9160d176946da8268a41f5a9d384bab220b759e5f9062faf550b38735f28b91df3e3afdfbcb0d66dfd2bd88d68a8cfe9e2648249b8e0f7acac0d020316314e6fbaa17928819cc7e002e05c8ccb2507047dce4021095b472b4dd37fcc3ca66d56a3d070daa6c2d5420446139d7793798706c72ca54e094d4ed8d21b83034aee9e5eb639351154de389005aa40d23f6473be37365e64c5b0816436cdbb3a85f401ab8de8d41a74d113baf0c3165d7ba5aab53c87f0149146ffe3613a8e04e54c62a9ec3e1b3d8832993c80ad5aabd341ee0696c2f5adb4be00e1dbf3d2ce88339e8ab33a6d58257f7429b699aef879ff25af6ed080b209d01f10d6eeb3be6369d0400bf1f0749d9cd662c0076ae3496b5a9dc6c5925fef75be6b4c00da6e4e742bc5bb3a31ac0e1cbaa2cf8c340f9b7b91b20d311dba6ea7ad3df636d54f2a1a8253933fcd229ba8d31bf6bcd8057f1bfdc30fc3dda4362242db483cb0b5325963f7d6309b54e610844dab9fcac21ad01ab464020fd09acc35cef7806234c137e576561a37720642c6a254742272a9c489e868201221be85abfc3b49665d3963ccab2eda0b13353877bbdfaf96b7dc0eb0f84f420ccca3ae306affe9e94cb0b19373a05e5e03666cd439ea9dea5d801d59691690adc639da13f657d75f418ae51bb0cdcf29721abc48fdbf4a14d972a6b5cffd01e48a0e98fc86090d8de7024f65cd4a849162f4862d387bc02095541b9fb21e2139d233c3405c73056ed9da5225d102184f2714bf4ec515a1f557a8a6b4781380572aee97512415003723883fd6d08134f8c6906166fb3ce44249314d490278d34680f1ca0f3a628dc980f351a8387c76a3dd497d1c3d7d7d5a31a21c9b7cea861ab2ee7b1ce72129157f0af4735057856a64156f2ca0f8c36fbcd92ba51b1e976f2368794b731cf7479dd2a474dd83b9b198a46c7706776ccacb09a0479bbef1b1dc7c5062a9f92b8a436bcf59be07338b771cde5900ce8e16fd5055d38b3b0af5977c5b5253fa2aad74b66e5687588037e521833f85d2893abf19f47146129ea03ce278d5e290049aaf3d0d46586aebe838e03232eb94a32e989c68d58a1250fe4590d892a73921c6381a6f0d6ea986940e481ba3bbf525bc24103ec63a7fac512aa830a4925ab1f9afe5699e7a444e1322d1350727a63d3762b73b649ee1784418f255ed197a54983bf153b1c009197fa9eda431039fc9dd0c355a781ceae8500f493d8bd09a7297c9c30e66b1c538b6e025b017224cf28db6b30149b7e1fb42b777b4811757ee6182ff893f0afaebb0874fdf9f131a2222d76022e8312bec8dd394e867210daca58198fe667078ffef07ce38a27391b3fc0dbcf3cfc6afd81f8789790f1bb1c5599abe1542a562e7aecbfedd4aed16c64f25fc7fdd586525970a940d1c4f8956c77e7d832b92d1d7724ea349c1c4ebe56f914182d865d816f40bf71f05693ae57098cc91dd5cc2a383388c2b02adfe846296c5a08835d74dea617279800ab3af56d8d9ad1ef7aab1ca8ccad8f569d9b2b6ca1cf31d26de19815a1dc620c61d8d6356a31dbc0d0e13366f21f557b3dc1a6779c7b5392d6ccda89a54c4e5e82ee9dea72dd31467f91b49142ed3b16fd725355f3c13bdf585aa9ae33aa5b66fca449c241496bc0b8088dc96c8caaf5beaecdcd90eb2e9277f6df25a688fd2fabb3e64cc328b3212a6d0a64096e33b063d36b9672579bda40f32fc91110f9a7c6e63202e43419c25aef0b3b99c640baa1cf1332d93ece1054ae32d2dfb4796b67ec6e0d849177a9e4b7e9815fddf44c88bdbc7fe3a75dafc335ba81b899384f88eee84b5e1c0241b3b4671927135bca0343a43677f2d511d233b2d8793ece40cc19c6133ee051762c48e9ab6727b2028f33ba32a9204ec1086c0a63488086c17271462a1e0f8322a2971b3f8a53048c0c55ebc0ccd1ef6f36a0991e2a2973c909fc44538bba600fadef2b8a67b1639822d160cdf25128fe069b4e20cf73617188f70a3e5b7eb8ee358ee83592d3e348f31f462b629513f5be0e60b837d2a64b1c675350ed6faa6af718d39e9d08a1ee6f601fa635168c7cc90bc1b911ada114c9108f7a92d140b5881b5eb7aaf0f720d6570188a1b5389189dbaf412f0ee8be11be93bdecdf3f05f9508d82bc580fe84362db7b48277605f00d293c68c4876925df6651be0171410543f609b0afd4383a55c5b9d563b042c4e2af3a19f636255414b14c21cf98f15189c0758a80d41854550eae119ac90a0a7d598349a154fb33551cb357d57a99815d2c51a84c4b33fb4d11f2f213a25bcc3870c495e4274190701857c38d5fe8434a7a003ef49ee35e27cb98b7a29446236d7771f2f81c2c01444430e05f6f8b964ca70319769fdf96a73c339253a49985e66f2e2cdec408072d2532acd3febec366aff31d9f2404c463e48abb37de8a36e21c0458a1700692b2d1cef02dc247d12904974595693e13168476bc2aed2ef090a217920c080b4833cbe09d230d216a9b40863e94937956c75a010bcb2b6966569a67b08018e92065b3db34e3bd77040ec875cea26607b215613959a8c6d320c9011cb9ec24818f79a1f011af300dba399264e01bdc796b70736d9e90ed009eba46d794c970fe81b1fc4664041b6ecd1bb255a88ca1ebb422da6e68d13ec12573af5afb519daece04ab4814fbe7801d7a90db955e947a7706353fc08d4c422f7e625b2e78bffe1969dec11ab61e3a82ae7f1c150be45253f30d6b173894578baa0ce33a327207ba895570f103edc58bfb79561eb1140c4683fe11774619db67e0b842bafb105497dc418a0f7290a593db60f32c4b1908278d5229d6c1cc8676387a2c4701f120b47b17a08bf160f64f7d7b6a8ef7f7c76bab17469c61cff789822fc63748dfc08133c36a9fdce9bec0ebb668d66136e2cccf6cd569db97094351f3d50f642f59ab65f91d72055ace81e8d74db7a5ef5edd9b6c58cf4fb317696b8e350ff1f68bf7fe18cac0f3d0a6c35413e793c017e893c41fa8e9d7c28937b7f8e0e4b224faa4d40accdd1d915edd64ce9ec46a74d4f1cd2074ae40903a99ca2715f893fb30d83e2dc816f1c62dcd173d00618938df48c3fb7a3c061d9c50353f4819019837b19336d64ca5336209eba2ada47fcbc71a13a7454d9de8f6b1ccda1689995958d62d4a6c8c42cefe400e3964ae3299058f6d842e49c27cd7dde329be2ec550dc9580869012932044a0c8913a0adbf7f6586c7ad124ec74fb2e5e6e619884b4118c09898cb697c35d00aa8d55b8d0a82eb38edcc414b7a6c255717451b4101a4d7552e416a7663ab0854cc85e881bb8e71c7c13ab42be136f23d709198ec99db0680184b8271bcab48a7fdb0db956badfd7f347a55b06582531759effc0a1c21dfd23c92a9d733047f44f95baa4904b12e2fdc1e10560821080ca1a14dcefef68a9a61603dcee43c93cf54b81382aad2e7b2cfe78791d2427e4eaa65c64adfa2a159a62b6a73b7864d7955009caadf57012195a04598d441459fe59dafcd9c31aa10dfd3e6768fa1dbda48ca90ce599a842953892dae2fe3cd0f7bc0374fdf7c92010519f8291ed28686cbaa3bfbe15b435c5afd6a72d5651dd6769c0428721117499582bba800645952838b53dd4e4f52892a3e504fe0ea10b70a68ea0fc2247b228500ae438241f6483bbf38f41f946a8a2b2e9a64737e0cc3d5cd8a7705ea246e2a923b387cc2c6279b2b47f9d0ea89ea36f2080962eb6797c897affedcf4207c462109374a1033350995ed2e8627a66118ba6afbfd3b6134dd86d95d7f52d723ca009c81932b83e5a3ec1c4f60b75b72121b014d4c235513af517e04aa6d7abb24a061f4d5d86cc1a17042f154a72d68b1268a1d26a2b74d70fbe7337f3c97ab037e06c36540b93faecce49a57820199bb7d38b4bd5f40eacb4201c4c263968e10147537b1178a84d080a129ad20b9c22c7152bc4f289f6d31742f71c1501e0239ec8e87e7c7edf8cd505ea2f386df598abce690dd32c149f063454289c2a669f3a229997780f726b6405a1108c299e468e98359b25cf64e848e868881ea3d6341d809765a18f13eb0bdb06e7ff1a4dc2b266da8f45ab8b291379e9e549d5725af064f8809079c440c55519c203307591ced1f1a1376e5a3809d6ec0252ef55b9710b6e05d3d8c885b093450a6d97785db362f7bde8667743b3a7295ac83f949c0f5e04422ab5b7fc8ab7007c3d2c0edc06e1fcc9138b06224d6d2b7813ea7c6987f6581f43e4d1236377e22d5194b1491db78e2e37cec4df4650743be89e00a56f9e6a16e3bc019b8159d2b518481717564b0faf56958436df5fc086fa7929d61745126691d2f5b70369456c069e46c6254f97a1c7e5cf341fc84942831ff6b6fd32c970a06ea82d86ecd13a58dd6518adc348db2399af284a140ac947da718f227a47daa9f84bc9f561cd7d2977a80d6c5ae155ac4fb809901b1144b2fd0c3e2f7fff2832d69d670f5f29da3a3c011e50f1a99ba1aed20a314157e4101758e243ecd52df9bd082bc1526a5bb338d300f590997922675d91d784aec7e37191ce887a01c1e0b0beca18a0127d0fce05e145758230ebddd6000e8f1e8debff0c9ab63a8921a990b0c91d99c7c6ddbccc2c1ed589ec9bd6334235f30f6834b04f3c40e178716594a82265538949b8d23f922e3359b4ed81f2d4140edd5be4ac22969ba4f7bc4d0b2ab5b34066fe469c8f51744f60ae3e2968fd15823cf4d91a0ba0e3f7cdc0e5c4339613797ce59b3db1118ea288ae98f4c11701fb3b520474bc16d289748cf39306fb67d720bbb667c3353a054bd774c359cb132cb4c4aafda2c3b93f65c2e93da60c33549da3f2403a10188301884ff12104c9ac9dd36da001833dacaf7705eae37d9c83e2abe7e9264956d91b66fcfa1cc3ebc281895905e0e2279adfb088a5af5769fdd71d9495a2d8faeb317f9624b0c1416ddf4f4c5565209a3211ba47b08854fe39d492fa846652edce5a78b55c324d6116099c567e70d8aa13e57372aa795317e08d29a6ddc988104e404e830769361cbaf538c0b2ec22d766a84a162913ccfbd8787c09f5b99e3b1a6ee05e73b693f61d2fcb73021e405eb00d453413069d309e5782fdbbae2d5440b2d03dece516ef1435cee00297f3ab7bc7cbd17ac663e91732078cff46d46358a40fca547d1b3bf6ff08ec093052117d4b8f60ef2d298577fd0fc55164860e7a7508716a3a5e165beafa7906f67d5ceae55d36d1d9dc6bcadd41c7160e620ceac0c9db644a0918c041834ccfb0666463b87ebbb0047e9fb3fc8d06719ec1591aac6f0076dc98609aa5413b919db236eb840e829fe9037b47f3990c823f50c0f294e32f09fc35efd50ef5aefc061af83551e934e3fc106196ca8e5908e45e83048f844b1d6d3781ed1864daed620f4f3f3530dbd7527d09e6a9821f77bae6bef42e547226b150eb86d4e80dceef62fe23677b195318fb7b4e1fa74c89329069fe201ec9e674ef623143a81d87be0ebf5390df1fcd4e2d95b8197d446ede802d6a29fcb76821a930f0764b2455659739d4ac2071973f6062c900ab1ad65503eb658e58e1a286f3a22d377f8d915c4716ffa2b24cef6d5c40fa3f4dd148b2f6f96249aa9ef8b46b2252ab7ec54b581f54c82d45b85942f74bb6dfe5b82b29a1dddc47cb8c077002046ab72d8a028e6a711802baf2b2135d4a0d9001f52c50b5a3197cc3c4a8c41db282cc98d7aa02834cb923bf5d617383089069469e522b320451150b2bfc554100d99f48906f93ad759a9b8d1ddc72e7106bbe1ca267706bfab17ea211a9c544274ccfc44fc1921cf77447991d7bde1c9c871906988b1ee212b85b3df9d80b005e09945b9e560ecd8205bf5886eac5bb69856b6d585733fb31e0aaf7f9e80ce95a0092546fab3f16d6abbf5e3bc71860f658109577d9c88157452c3a0aaa35ca2b1ebe42508fc2d62106243a1da220a9508c1bc6231e6fbc833384f20c8ba164655e5bf6a46b1fa210e441d6bf56276568570e179839ced57e2d611391a0ab5fea6fed9d6a31e7959ecd30945ca1c3d64b55ea768cea0d7982d4a7fe7536c2787671b3504936b7a831430338a67f6c828b6a8c610b15a6fdedafd8701489165eb9e508b58ceb4ed5235b967f4aae7c162f1a38e301f00b59a75cd7067d01fa331e363ca744c8bf13b680e878ea478099343e002328a30084154531e975fc1567d6d41d74350e5aa44a95007e9bb8c3aad20b67ccc6b873bbc6de0605e52b3895c641a0bdc27053278385066abd2422fa112f3a0aedc6ea04371f085204d8661a9a03c900aada952757934459c35d3806749f7b939f64bf495c454b13c01ca9d5102ef3d8abf49b1a3175700103f5853464bb4f4cdf38721dbd73200808b1398256f999cfe95eba2b728627d5d8969fbe646809a3bedac5a0806ea9623e7c1ef2c9bedbce36aa6d10dbb471c2aa2c1d58d550cca36a2fd4d99d387e1930f989390d926b0f0e78bd4b2fafba158f8c124e79b267d4b0371f8125204c81d7a349840489024ebd63f6905564026692eac12cbbe193e0b0be691ea821ec73941412b73a9d793a9fc9cc78cb0875097720d1e95650982bca0f8299ded610f6f45529a4037f446a7ce65f778338fc2dd059bb57a2babf16750ac3799e9efb8a89ea58a6dc60d60e0a694a9ae6034a5d223034ca369ea286059535b3f289ee9056335e7981934080e2548e809b2418a627c6d1d39b6a1d17df63ba19e0cda9fb4b1685ecd8fdefa7db8c7ce2449922148823795ff0963573f1e463b9af04b6806fe4c98694f5758a121c93f7cdf4e48dd46e4f1673a884aabc251b489d5089b32610b8e5e7006ead3794e772aaa23681c6400ec94f888eff7da0dc4ad66e6c5816ec269404ac8ca39bb19b6ce46b3a729c0ce149cc7badd900085d6350a1e21f7d038813faef1ffbf1f14493700e733fef6190408d734fcc7a401ec41b73fef3855c0cad86182353eff6fbebaffd07e3ad64698d9bcbff6a6bb04e03c9a858f3648d6d80f3688a44ad1a9898080c341fb7f3803bd82b6f16ce16f4fb91ae0f2676c90472980e835b66690829e83d925dabca01743c2b9a1389bef3d1f819a25cdb93943a21872cf51798d9245e3ec9fde1998142c7ec4dc0ff8fd7a650760c8a169909a210580d40f85c991683e76b50e233a80002282178301285c4edd6480cb407eba28b4d3cc5887099f3a7a040124821857a76a89c4c17a0ed0500d3f209456648b610c19d9b8c7e91e741a34bc2a0862f2e22d199351b6c6b695150bda9c3565434b950a60b1741f3ed1fb76c10fefa8dafe139b156c7670146042e6b303934891928e2c1caf3f266d40392e4d4cd87a7a7aa125b9d9b538d5e9cad0fc4366b044474e9bbb82432643bb575c9692e7dba0a7a257ca4c4fd700370ed3c3b67cb235b19e1636d72fa4fbb1b4578d6f304f91fe067e9192c797a888b8a7accf8c3f6bbefefdc1b9ca554ecab10f5c6cf14f40eb6e7bd556b10389448324f54c1293a458f765efb3353517cf3781b0993e47df259f17603581b1c75a79e0e4ef1e9d182c959fd0b61e98e3100241ee43df36900b4c0c94442733be26b98f777d92144cf3f159adc6c7312549fbd5a06105a21197a5b05dc8941d55e5f64ee700052b72a4da5f346acd6ccf53598c509f5dc710fb8be6267006954baefd9fccf8aeb43a7f5c20957db610996ad1282719839a51871bb10858f8cafb65057fa1f3c5e8cfa5c83574771a49caf7119d5cc124c58a9059c302dd62645c02ea624eb65440fcb585c66ae5a68be8e4f9a8dfbf36824526a1bd947422d7ae1fedd663fe2a32989952b6a8bd56be812e28ac59d9e21b5a2d5995aabb79441f15fc9017db728a5c2a0426c148be141348786492d9dd9fd6f652b28a8ff5bc58ec288fe7908c0a869faf213ebf0cb5beef396f8b99b8dd5cbb8d1a8de120c6f1b8692c5773808bd301e0bc847b4384982893845487221c60eaaf144c7ef64955977f0aafd7d431ece0320b96f98cdf9e69218ab5e7fbb031d69a904fe146dfb991d8c66bd4947d7a2ab539d640799468f45fab7fb2fc5c85a4a195b7b9f6e0a2a8d3c62e02a74724149ef6cfb9f32d52e37d638f3a54ffc13d951086a2a81e9eaee222fe88c4d5aaa33ecf0c72d1260c0002603571fec00e11597725511479c237b6fa8fc00d0e57cd0045d01b6807084f409e240ddc11484702e5123494bc8018119a1f65b3b45bf5b47c76d01b946769da592f91f6c7ccd27ce4ec38cd1d44a09c6d854087673f31b60c443045bce6987bd8c44a6d52b76f469d3d2e2d33aad0fb2fc8afaf92a6fe56924465d371a5bfb80f359e13d1e896ed81555c6a33e1f5b2155f678a235e29ee63c9caa28d97e97386007dae10084ac96f8d242e1e4e8e0a7830074f7d307f768f487f504591083a70b240e5e80f3a4fe5459dd2515d4cbd1024d6803977023021d82ba866a73a7be331c4ce0476e593bd4a83dfdab59e44e2b90e1816644ed5330c780280c6009fde73b6c911d1aea3f474f739a2f48ce60a59e1661fa6a399357a42eda8844f56880f749832124226c9de17116853e0409d6286bd1042fffc065ca30e0361934f64ce8327084ba0c2af959f278e275b91f8454b7ad4f7eecb363a952281c63671998afac222018405e99485b28c6deecc0ac8645de65f040d8b0834a88baea8b0122a4b2f40aab0104f355b0b49672c9a7711c553018b54c3e8a35450f085bdd081b6919d538966c21ad955fbaed92e4e17d2f3e3c6c0cf5b3dc14ae391e5cc34099aa7f2739a0dfb793ff2a22bd136393f49a5e080e66ce95a16b82042f7ff65bf820ab5ab385352d5dcaa0be0074328166d47bd1e2d3feb50275c25b08502ace7ef6fb478051320335d9e892598e0e96cb958ea0726145f18d0223130c1d2c90dd89fee0566ffb3b936aa10582e5ebbf946593b58b66592a1b99705729b27f603c9ed79fbc746db488b6fc2dd19850c6e8d53bac1dfae3bdad9542a13637053c9283fa9ea1c58439b1d9f2fa4250c4c2091fbf1846a6260799a9408bd0414ff8574b73508a2299ce9a47c21bd66e1822633fd423a21077c7625446b318967c76e8ccc5175c7aafb8a61fb938f76512d99a2ac71fd881804620cfa9953a7169df7010fd7c190590ef88fd8d742e349757e75385519716f9231e45de4933b407c66c5dea8effebeddef972506a89ecdc204d2f683c303235a50ef33c14b1c248db282b29b3ae93a512005f401e81d26f55ed203a79728893d2704344b637155e88663f4a6847e63ae428bdec5c0471f8283442b5442fd046039fe4f5ab410a89aba2c71ccb03d1ad84ad5fa1f07efe5f3dba692e29528bd48fdf7bb7fea8874661a9f7cd31792cae8a598d9240c2e0804af25267bdff4e12c16e42fb8002a1f81265e376e027b85541614b7a035401ce00cd5a8236a17c866ca9bafa8055b045419080d6a1d7cb79d48b220381deb5e21327d6e3e710bdee9c3e9da3ee92bfb4abfc30902f11b2b054e776108e4573e2f840cc5cedefe410820dd29a83044fae116f50bee12d20d6dcd74a51cbf4bf6ca663b968e3aa93dc6374d94b576b82b0fb6906339d8c4d7e7e5f2def9a9ead83a4d189c6959c87366089dbf59923caceb410bb97a5fbc78137df16eb253889994f8144459b9771425764593b8902cde68cff7975f0e8aa68c1b01fa4f51ad0f5c211fa71b18b5a75e76dc541d255e387f10783a0ccdb559c02f018327a380e49268943aa8b1ca13b91ad238c91e9bc919cd00a42c248a96b31e7d1e8e2213de004c2f438aaf89556fdf15786395f263d9d1f36eec259cd8177a9e5bab841babce1bb7f4a2fff8c4dc6b2abf23f8c6529a8bb5a15fdc681e04f4d4030ac1c68b5c301616271d1214f2ecb737387f1fb5a7a1bd66db676c679a7a7d108ff5906d208232fc49fb19b672be23c23cacefc8037f008c4fbdeac3fb1180e1cd09151bd31d8690b5da5646fb305b8cace389d1d6b6b71931b28d10b2f79672077c08fa088308dc674edfc21756bffe740ff48efaccc946583dea9ef799d3539ff1aeb234354fb0b0830f52b60689ccc9d22091d9ee3dc2e2099c608c773a376ef6a88939e79c73cec9b3cf33881432e79ca6396392a63747b39ba96e06b8ba693b583f024b1781a8a7c0d3a3c75281e9195e4a9b73ce39675b20734e19ac144eb133ccc973ce39e79c73ce39e79c73ce39e9d91bf29daaa454acedabdf704ff967592a3626a5faeccfa972d16d60326ccab2542ccbc7eaaacbacaebaca552917591aee29a7d9be9a9c7ca57ca6802c95a7dc06b602592af62add8acac318b4b2f23dc80cacb39ad9d02e51499127f746887138878fac7c2a302eb44be740f5d565542a1f591ad15557b132a9a7581aeda91af8d273e0f6d56b44da533eb3d9f8946b29ef5240d1bd12387af4624c306fbbd77122cdd3e69cf486934dcf9212662c93010109225f9a4fcf0a900c2015a00f08688779b67f60e92aa0e9298f439dbc203d3e4034063a9db6b9590e004da00d0001d2e64ff5b374fa1bd337ba9db4b9514dd36a6933c578739b1bad37b57692d483d569a4c9695ae9281a1305b56f20ea15a4b7bd2114e07b6a8f47bfbd188a0388ec7971b9ae5cb96650df7ea240248bfc0fcb80526ea26461c5501557258baa82f372f245af523d65b56df534a96f36ca6a3915f7ed35294b396b591394d704b26609644d8fdbe1c9d189e1080d0101ea6c5aab5c4c26579e99040511225f2a994f4a505017440a12058d82827a524f01512781da3b907e049a2e024be7c0d337b0c2344b050af1910551fd0872e25db552d919564b0475078204d1b07219676fc8bc0c1b4384a5aca8bebaca61da4b5dfb0deaf453b55259a9525f5d26f5d5fb2b4b83a4a9ada1571d751a4df51aedaba75228d7caca3b56ad665005f1fdbeaf80dfbb26cdc03a1a87e583fb7619ee9bf695b795d92eb234f42b325a03596d59fd19edabcfd0abbebaf68e3d567f6675ed33aa53cf87b692b1f281553b0aa43f81a457b0bb091cbd048a625260fa1461138c3c3d3a3b383943b12041b37983c8864b4470854133095159db26c0af8d0951b824f7d32345d542a564ec03d2a780a5af406e7414287aed1ebdd361daeb31eb319bdc23c7714390dcdc70a7bfd95ebaf46ae8d22cab4f9ac695b6979887228c03e755185847e35ce943d34c262b435fb2349e8db921bd23558e9b24304e6f273f78eaf7564a3ee41c1dd4078eae02764f01495f81a6abc0ed29d03b0ad4ce81221518612930c25040248b74bdfc38d9981ea86b09e0976665c82131106d4859a469a0dc4b9fac7ebca7971e4384a1ec6fba9b2e47d3b25792ef5edfa2f46439cbea51b795e94cef90d44f305e91e81abdf619eea273d4f3be81f4db6738eb9dda2dfc7ab3a163443781ac12a93402592591a6b38393138762423f9cb4c8a6351215b3b24906be490811f9d2ceb16c55212116482f033c7d054cb907ae5e511b07d32c30c2bcda6920911f981f2192455a2026fb835e1ae69d9f4a09c6af92b5416809265cf9394488900e95abf59332654a59ed2a9594d3dfac586d63b4927c8cf16e3fed2ae74e972f42628efe78a84542c6c10ae1cb2d819d24d51b1e2ec41cfd294d368c405a5c12122afde931da481df57ad5c328c48a29591a2432ab974ea33da564694a5f9d15c3591a242a56e6f4ed3429dca9a559d9d38c766a6b90c8d4975e83b2516a76a6f493ada9d683e91e9f1d9e1c9d188e10a11be4c8a63993121d4b868d3a67e6042868f59085863a8643454f014d5f81a793502b30c2486084752007691da120422c932c927b7838e6e82a22144be09fee5df478a8425622fba2597685203642b4c14ab8498337a4d423951dc2895e1ad5c07776a411a5244b23ba761aeef436301148040c02b20ec8dc575f4c60d00b90f4985043e6691721418830730eef08c5a118e7ec080d0105f18c9dc85a6b6f0a96ef78867111ec93a40671c8385c8e5bb0246073237d0ca2ec73398916353e670a5da411f20cde9986bce3c332c0d25740ed1f58afc29a29a373206b9a40d2a327038cb01530c23e30c254220c05469889821c932cf23132263a212259246ca545f5ac9020a9b3c763f5d28c815f9aa529c5a118c58c432220128774a8fc4e7a34784354ffe40bc9ca0e29bdfe46fbe92a7b243126d694ac4e59ae54faf66e2ba31d65694e364a9a6aa364b18185adf065da1822cc646f6e48bf19fd86bbf69bee37a2df6ca78f30cf4e12112ec6a11ba80ddfc0d9b42622411769d4c83a22b70486a28adbe770923848cf20c48676e13a36dade1e0f1ab46fef4452249a718c1e21d194303831a3dd49c5b79744c151fac538cce21227f4dce61f8e220acd60dce62965739744231bfece604357ee13da74e083c1456fdbb6715c58374b351b6ed77c8840aebc463d1e1af72bed4bb73a498d09eb13f9c52551645081a6155da411ced895ef7a886edda04e26579a2e615ed08e8c851247e6c8971ee54b86bdc395acdde9de33f9e2e46c260223ac67f215614e803ae89b073607f104c57699b67b9a47fb2ce6681c28bd4557219dc4408ed204833a619a5ffc6217a601bf34db4df8452d0eae7c6497b6445cf9ae632fa1675f91caefc348977c69970f5bf1278c338e1b81486288b09b1b7ad16fb4771c57a50d1ba7dbc67096d5e76e038b77b3ace62e43fb34224bdf9d06d31cef04491613cfba89243551c37e17215fdee5bba75d7cda2548be86e46bfb65f7920d7b76df90de7d7411f7ed37da294947c636a1a1a02b236c0446d8466753b6664c64d3b294a463f16347d78df163fea03882c249a28a1e98c84ef04426c5e53c090a2d060045121fa5359030b4021ec020011849d0e904da512ca018e24e2e891b38b90942cb01095f3b9b7250e5358ecccca45a45a759968ca655236a7cb7513ae9a493ce5075e7bc080b3c9701372e71b273b1a073c328c342cee5bbb0a409426024911e0f92f7421247a8410c56d202a7726f2f03dc4b42957a12e052b0a85d73db19549706a19d6a208e6661d72a0c556d057ca31fde68513dacd1fa06501f16e0461a60e9a1001e06e02d901eb268ac842aad158d87a916bed10f4f2b2c013c34d9871df870bbf10fa58b6f740b3a70f08dce018087dccbdcc137faf1a7d389d4add3b9d1619a631dcc3a24eb601df47dfae90695202fe0f2ebf2451c47baf35bedfb69efcfe8bf4fa3357ad76f7b69c66def976447ef6cd8b7a57bdf457a1f87f7fe0bebe8efa8a7d142ba005cde2d8e0bdab06ff872eb6f63b4d14255cd388d56cbe51418230bbbc02530a4a1c8bbfc0e1c81e12a5c095b00ef00586c5c0434ea06b6a9b29444107c3d0ac8f7a659d60bf16a363eb481decd86f221607e33c14110f20dc648e298d49093e1a0a331c6c8454dd24b29e576ed524e51ec6ba24d8b360c92f243e5d319bef848e99c744e8d4a0de4b890524aa70c1613628c1b533a29382fa594524aa7ac9e09a68022db85abd28579ca29a03c018a1750a680320514d11450982dc716156d4fba48238cdca21d2f949b3413c75d936e40b5a5d5a29a66854ae3d7363a63e3a6aa0ad52839225cfc691892944fa26024d662d16c2e072983291461a27a372ef9220a0cbef8e20b2d74104a0df18513d50b6abd71c9173f328edb344aa3d5721a5fe8dcf02eaa84146994bbb1ca2965cbb949618a4f7952c339e9269a528e644bc991a64926a594b2bb5b4ad9b47bced93d7bf267a4f23b4629e311ad9edc399d1373f8d8b99d69c620a13e0ff53ba682dbef9b7619ddeeba8db44e778e8f06a01c312446154e2c31046c6a71fb3ce3b97d6ed292f90124485fc80e6ee9f689f04ddbc480882cd020081b38b9021160fd84db5d64e13677bb877c7d7d85111cd1449324469e5c01eb2c6e1f4609b7fb9fec238cb8208b309650c404b089c5edd717dc6e2f7670a5f4028a2b99b85228882b995c2934852b4fa35d665c79910e02f0e872bc30c11d7db60b78654a9200b163a473bad5440d3b4746d839b68b215cd16f3c71440c16ca774eebb4916ee9b44ed83a390c7389570a51a080609c7cc548c1060660827c2b168be5208bc5607c0972f2f57191058e3bdf292da8ffebfb8c6ef1b98760e748169611d98be99ccb3f2c7d243f768e4fcbfaa767dc393d24631247e65ca9d3399285351bc61fda7ad1641d82398ea36288ef7bc121c709512811c6183af38a52118888332c1747b8f32c4e23c20a9ee082075188e2ceaf783ce6df4e5644a882bf26a260823bafb204148870e26a4f99130b4250810e3a3ee840094560e1efb4e286ad3bb53967142777ce39e70a05355e6ef584d8d594b8da1394b89af6aa5af2842eaed6448b239610b402065ced2e1c2f414caef61d305bcce06a77417b8f76894bb6f8e26a87a15d541e0fedd746322807c88209771e85c41536b89a768eb4e48a245c2d091c57fb350d8b9fabbd258b153ce06a3f793cb4b75a5387210461fb81635b0f35de79add862c73531a9e177ad48c2d5665ced268f87f6251ae3102107dfbf192f793ce81156e870e7bd163c8a8410e84955744bac681b838763f2d5a2b6e33adb8a231b72221b471e0fcdd5da2ef2786c55b48000779eab4600a2332024eebcc6c9c40082135480c20a35c8a2082ce4aab861edb4225268d0e2b0b50408087a4dc331042eb40354e1cecbc72212394590c1144d484184102cfcd580fea24591c1f76f066b06b5c98d376c512a92e4f8a7b22df86ae5a618829bc2470593c70f3eda1449ac40f2a0818c4e11850fadfa7698344b6cc2ed3c699678c3fa4d11060c669084c70c9450c1830a76e05103235fe4a8be195084ba27524f34e104558426b640e95049372e69028c2c3489dda0aadcb8a4890ea91d2a77e39226344049a1090eb0d0c407084d880025088a0f4e8c01e5054f88a2697c4dbbdcb64dd3b44df2e926374d52c9463a8eab5c0d3f27405c6c9aab5dc20fc78b7c45ae7e534e5bbbd59c0b9ee8e2238d73ecf58a8f9e0518876ec660f3110c6fb83104f36a67498077ae66a50d6f90a9b0196a67496074353bc4149fb8ae18bb138c9245ca27ba9acae71b25cb14476e64924393961b974821749f54e108955d9ea4afa5d2884c7670ebe088af199389afd837cddd1508c06d9c6ef17fba156337dd9a3876c6bac51f98018ccaa0ac8051cb928fb0c840303419baa92c8ed4430d3925cdc29ffc5518aa9217356c9d2bc1af5b33a7a5d5eab60d74a36c091277c6628e3642b4c1e733199164cbda45490bb54b947ef10c72e21229722ecf58cbb80e266bddb065382e2cecd9e5cbd933c68353448e113a41d811024f921e27f83c91b54bc858f869170e5ba72715e1dcc1480c8821662c8992296e38995c96e2861314853316fb5ce060a2b44bc73ad6381d8361ebf1838518a49d6ab3c727065d0e674c2665680c50105010900cf3073b21e690c14565c5b86c60ac18ca975ecba20d7e23a1521ff9a25718da89d19ecb946787f9333671e42bced8e47185333665f367ce666c064da139446397712ecf98b4e1d736ec9dfe912c61bd1c6820403f2cfbb93c6bd9ca0a7286c94162901084d8201404592c7659f39731412234dd6223620e1952a82c8eddb018e7f20e252ad49071e48bc539ac336392678c5f0179a96c4a308caef3986b66ee62cad195cd6f9eeef9d18086e81e7a9b93b50e31098c8bd07e8062ff870c7cc6e917ab40288a26979977d0606002100fd12c7cca3f373217119dc8e4165128c7711ac77154e3a8a41afd099fc41f7e2f1983e786e78109158ec8a9451c7482ae1717541a1b98f6d0b5f577c41577927ad4537fb9285385add69c415d4ba2d8e1ba582ba89f36ac33cd08a69f1e2b3254be54f5d1be02d2ed2870f414282aa54c262042409c9c2aaa51ed859b5c8af7696be09b629af74c48e66be9741b98ca862d53a9f47ee96469382d750aa26ebae779de0ef3a45226564cc95e93358125d0c6f48e5604866116f343be4a3c3b293395996ab69acd707274b8afc0ed2a5043993c5409fcb1c3234becd3639299cd7cc4cc4aa81beddc25e54ed6e5621d8d23a5894395ba5442952e435fda4a2f591acd84c3c5f2415ffa0c775411a8582906c7a76776933a9d26f5d2354b83bac974ba1da571b606e50105c5ccb4e921a1c4e1708ece0ef3f4f8b04c7bfd077a4fa950a70dc571255e7dd378d3d8a5a2624b29daeb6fe8bd9bb8d28ad3347a94a5f16c8d4753edf69ad4b96b354864bcd7d7a48eaaf15e3d7bbaf41eaf399d65676aea29ebe0ae7c7b242caa9432a5a5fcc724a140d60c3deaf4a8a7643c75958f95ab3e23e3a9af5c75f6a697016a5932f4acb384ae0df20ed96e0df3969ea82157038f217cb968a32d8d2c4b6d87c82b9a537a1150f9f7e84940e59f8ddd9a0c963ec1920a980286f5f6eaa5d261baee601dcd8378435ee739b57bb0a38b28a1804e60aa6ff7441bf29dbc88136243b7aeec99dc5cc98729a5dce1caf30e527419235fa3c7a114922a6f0ca90635c2fa23d0b3810a62f045500cc660847d2db21c931ffa66df4cb6f5c4e9688d1c854073f48ddcb66ddbdce6c67d3bc9603bd74d59b7a086fca4bba3ccd03c72dee62c4dc3b8bbd9d550d5e20f2a5fc658d0b572dc8fed94434db934cc2622048b6e75100309893938587f48ac61a6bbea9d658d5825d543de79a8d92078d0d9b48f7e3a8bb32c1fddeb6746557672e2009cdac3ed476e008e0b967ac82db8fd122759fa3f64889b7dfd865047ef0e64697f912ccdd22c0d32d445d39236309613754445dd4759b0a2df5ac4284417d39b7bcbb017f145cf61dcbe2a853a551bfacc9978280fbe0ceb18126ff46b884d4ab0c85db642a20d2feab4313dba15631ba98d726662dce0896c49295f48456ab31326d2ca9893565063646407833ae3a508690a95c5a48b3e43bac8d62091119df499ae867bb723597ce6e8baba25e56bf4d6c4e99c6e4d20441bf22e1707850a44e50e17b5a55bfc8e6d4d578344867411cb87e824c6912c31373a311aa6103140e46584b4cb94ec9344f6d61481ac981b9a846d4bbf226c9545ddec3f25954f6de8ec8cbc70e639c63844970a2446be489f2ea9d89ae75ea28dd9b422a93bfa357750c2da5e7a8431c8da2ccb0733e9255b533aa974d26b4ce747d8274777ceaf049266952ff77b16235fdf269a118881319265a6a20b0eb1353fb275ae82aa66b9a9e5204735344484c8d01011d20f954f7a1f46bede914018c922593a21d1868cf9ecbf2aab392d3842154f8ef0e448ab85e338ced56ac95e2227061325d4144c2020202c1b54fab9310b21fa647dd97b61748120a97c2b92ca578b302026185422b18fa404ae2fbddca349e68936244864480a115b9b95d95550a556468da8a15aa96ab05857591a242c2b53e32d9626f51aa7417d759b96dba8de7219d55b2c0d12d76952ae725919158dca5536aa1aaad56834e2aeb2343436f4ab7f9f95d1aeb2343436a6afce6c654a57591a1a1bd56d5697f1be7afc8a7495a5a1b1d141c73b12089eb6301d1335e41daec1016ec71c40f00f15a77e88ee40a2c717567e3a83a7193a399f71d21535ec9c9dce69e1331e630e6ef98ae55116e07100020800f8285f377e801b4006e3bcb30112b9512388c57acb234c05b25896e543f51a9f59bdc5d6a4beaa41bdc6238ce5b22c1f2daff19996d7788dd7a4bc85f5991a6f798bad51790d1b612ccb1ac297f53006d568799f887cd9789f6392e50036bc0db005e41f7055038c92c5003b3091c5b66cf8025802d8f01b80a561ad056d68badf7700d826b505fb32c3ba58a22121770243d7e5ed32c0908168e020902f371a8d386ec5bd66f45190f559960f4ab5d5b595ad355d93f846d14b208b4d265349e525155b7a4d8a35c5af1e611ec88aaacf90beb235a993aeb23548645296f44558b781a7b3175f25ff106ff463b76b106d7405777888db3353f74f5fef5ade8936fa57eb95175f929426bd924f912270809644c1c18ca65bbcd32e7c55eece8b779234935933e11373b0e83af8080b41069d70620ba7a6faa9b44eef00415aa2f6951da4811f11aa96b2a2ba9c812cfaa7802c6a699049f9ca6388b0cfd2549bf208533d7c8aadcccc2b608aea5205b2c0d44d20ea4ff90a64b165f9607df5993fe5acaf7e025933a7affc645932271a2623f0b9364896eb65857d4656c637847a32fd9fb146b7819d40d6c8d22073bae9314498c9d2fcb036b047d81fc6a093e54718eb6174d283c5b685882d528b98a379a20de952ba7c2b21be5497ef1fd6d14af8865ce289f8325df6cf953fd83d92459e95fa415410aac3f407aa8019a82af6e9646c690f00b84516ed7c84877df808df90fcce9a228bf61654aef6e6893902106d68976f21628e1956c9e5699f2b3f5025650546c9c249543e2970a87a671c798475b011f18610f8c8e5cb3892bb917da20dd9391dbb8d13b6ceca8bca598e11e9d697a4f906cf86344d4828c1c8acd5c2711ce76ab57a4829a5944bc618bab28f50e713cae347bbd0c02c8468439e8d88375e9ca459e425e9f58363129f7609a213225f9dd00ba3fb4349e5fba3877c891e672ff8d42091195df41aeedd6b46177d0e711f70e3922944a123fd5047afe9cebd46f45177ee33a28f583eb8779fe1de894ed3d96feb2159e46166883f97419817de71f92fedb25d7e47bf6c6816f922d42f127739588fd96685585135eb6a05a1f27b74ab696f4ef430d1010b63f4c0848a479cfd168bde7ecfdaadcfa7ba94d8c18f86c511dddd395da4711a6f75ec6ee6c96c5531ce906df2a2c6f77780ae971e4e729fac797ac13a422e1c302e3033337777f7b9d6da5d5bc48998353a99538ca82149d544ad5454290445c7ff7a5025c74920260f9208b970c0b830e9c339e76cad7bd65aeb9c73d2d9e3a55bd205d3add9dddd495c71362fadcee79c732ec9c21137ac9583a286dc15d2c2e8971d61777f762bf22333b3144911d7b1a8fb9ca859d4cdf50f98971822d45035eb594cbbc8fcb46cd9dddd926bfa8463bab5e3c7f6b93de607fd117fc48032dd9af431323fe6c6b0c9302fdd9aaf31939e9efbe8ac1108890e3fd2104d0655ee9c537b979839d2a6b44da3ca7d04d35c3caa51285444bd9bf43db694c019305276c71d2d26296a1505412259c93d6e9d6d752bac114cc1a1d66f864cb8f176deee013ea96a8f97dabb08561f42eec6f35f41ae5b2771b1ca70b3412608c4871a7e0c0444f630332fc9821657fe939722894a42e994dc557d334e43f5cd78abc585e3a5d5e2c211630e13ea21031610be6ec44142c08d0a70d5444427ea7c04359528dd430eeb6816f0127c0407a171d03480013711b7bfe96cb673649afda2ad9d13d32d96f20832c8c434a16ed782785f6c02c6f45da38ba2cb044a6152c36803ed0799a11d502291eeea22fd244b6c725ba65df20513b158455137cbc964539f2727a82177577268411769841c48e9a1f28300a102e8025de4c8ccccfcc51513d4c85a349171bcb4ecc247e91769a4914ef09395ff3195f593303e359c11a3ecc2356fccc11f133490544a495b4a295de227e594efe2870f33b4e2696c199a89080902c48b1a462121424242394652706afffb82f4cdf8feef1fd38f094c669df3b55b5f7cc51709d6a42d6afc8764fc8a91dadd7d852ed25069406e24fdd4b05eb6815ed63e272c05560bbe9052044d8810ead1ad8eb398d96cd6dd8d8227a6fcf85fb7ba2bafeca0cac66156d557bffaa96abd557e5cacc65f0736dc748b7162b1080a21a24414fa81033a4491812791f4cd38db169d8b2f6abfd719dd1a95a0ee70a15fc1410dbfdbdf37a564da56483141659e9d25ecf4684016448d0f5d4ee84845407671cbd52ee007be5bf1e1c7cd7ce88c645159c75aaea1b483ca3edc13a5bbbb7b86aa6804b58759c6d14696911a0448068e44d1f9a1d1ea92505f56766a18653092e3a494b26d40e3488d3c549992d10e2aff5cc13206c1096a508d14a84f9a655d44b7ba65a719d4b0650ceb9ef6f9418d9701d439db881b8d447f69979188a394528d7e4d7eb8aa60b00a65e68ab55b405f003181a8a8d27e5154be500d4c6870952c7c6939a736dbe61c1d4dfbea351dce69ce619dd6a84e738c73726eae113ec2377c7352e576bea002174820b184153c381205ca05b2228a263c91e28a551735ca38eefb664fac9a28d104d7135050c37abb480a099c8480396504559e2d8cb4a13c7d4b986e759fa9eda64d7bc074c3b8a051981e3dc58802e5ce9e48d129be5e7aa3cccc92bf7661c9452aef44b962f6a40a2e583a750c24c8a48f64669692a59492b95f58f215397c55548680922838ccbac801053925283c595511ab7c08741c884d621020403658b103154d58e2ac72993d3b66110230de9631c6ee963442073ad0410e64e440460e64e840860e64209121840c1c50aa51798494a23b8da0f6255df92352c5bedce8739e99993265e63e99e745e773a32bea77df500db9db9d67ddea60fa0735e44bbb290cdfb40bd57864592c390b33ed27b255b65d24827141080d0c558271a548e34055dcc0d60ca3865126b262a38123740541e2d8f58c60040f58881f5ec0439159ccd52ea2cbe36818937757ef5e63fae835ab77a79717911e7374cde8a6d7745f9d7e74d365baaf46377d66749365f56990c8989e32d37d65596d656a4a8d309cc348964608a9f41a6c6eeaa2a35229e6184c5fbd3d19d355ac089cce6749e074fe0ba7b38a99ab2a65c36614582afd5441939c79331ccd02235daed65d678dbb0265d64e99b947a3ad99eb46ccb10d227ad7fce646e746a2d167b88bde8d9847e7246a18838274d06824e2b64da335469f34f8c27d7be97e6114af0c3474d7813378a003f186e824d1245525b56f0c427a8d88f479067fc8d02c92247a0d49f4994e242291228c1404ce61dd1b894aaf75e08eeec1e3e5c58a9720684d97682246d0eca7c98c8753134b985fdaa5df87697e6166765d6666664902d9fa07725dd478149c802a5fce0923592627277b60d2f94929a554ce161a3c2795ac69714eba824862e60b89ffb8f8843450cc11efc3c77fd1460eb10ac9c22c5b49d092315eb084dc819329a59452ba70aa183bc878e8218a282fd022274a922cb218c192314eb0e48a22580c619623c4248a0a6ef829c1c919a304514cd1e4c9f442e6c221e59c41a821c906ddfd96c92244a1849b28277062e602c7cfc3f4889fb3c779f2a4600f987818176647961c99f93df825c606c5b002458110174ba210f1d3041e0cb1dac112b5498d87e18a234bc468d2843082664bc6e0011559b0143129a56496cccc524a29a51825708215d20b666629594a2999fbcc0c52143cb185ec044ff824cfb297c7578cf2523273cc0209ae7ce2e23e26628cb10726c0d86670041adb690895fb16847798f6eccb0f6fc44a7c46602358882b798b2b3db047739f44faa1a66abca7fe0303f1c52211e59d1ad551af49dd3b3dab2fa33aea32a97b3e54477d46656550f71e25cb4cca7a9f2b072982e0dbb55ab27b77f71ddd9212e077efce7115ec93400ff09bbd08f025d95c520c9e8c77d4a347b2ac08984e3a4b02a693fe82e924db8a364ea587dc3dd95c59c1eebc235f1c273d1b259179920dff8d84fa5d3310bcc33ba48e77b87b57502a675dad6652f9b3156df46c344b4786e8164b30e49014ea9664420ab52cda90671e19fd5853a756a6569b7a1bd8a99551d1685f81295044294ff3344f77cdc33a1ae74ae66468e48a26754d4b5da63e6553299666557bbc8032f5a6d4abcad2a88e3a7b32a657935dad52573d7c893fa96ea25e2f837a5d1d6569d84bdd7499d44df529db92a131b556ff5a1f275964bde9214719e46883822a51620e7a250ed3d950b4124ada4506b500d1703243f6e8817e77eed1e8d17ba17b7bd5f41408767d8da9a62cfff0e86bbf7cb1bca71e619a573fa37a4af5aa7a4dd8ba5aacefc93ae55055cdc345507b47f99472d2ceb5a2beb22a5a45a5b07cd49b3e536f3abd06f5fa99d355b626f5d3b956d56b4c3fa9504f3d649c548361bdf533abd7fa9ad35776a63e656b50af96bdfee54b756d75d36756a9d798beb233a9ab6c4d7dca5eb2b0fa44dad22093baea2a4b93b2a9300ea52c928e41dddd8d027f985e876cb7a30dbe0756d3bd6e257d2c2465428188c5ed3ccf23bd447ac9f3ce75edf1e844e06988dc9090e49f0b72b76dcb98a75bdb14d9905a06143a1c99b55a388ee324951ce27001c7c4d12e517e663af48c260c4c17d13efdd33ddd0379bee481fc75be1c89533b89945f75d2412b709e39878aba6194c1c41ca3d0e696c21a6cee7c298587aa44f5e286cc37ec9e98235e4ee2ca3737bfc674966dd229abffab62593e582c1aa328a864adf754410a158d00000000c314002020100885c381c170389e8a912afb14800c7c9e46765e1a09c428c8619c52c61800000100000000408446065b010b70f308e24afdc4420d0eabb044529d1619c72ec34c650e6e1eceb8700a577ea6eb67a6d626278642d716b870b30af1d6d6e0ab7630c0ebbbbe95d2f1290a06b4aac128dd92c1a59cbdedda75624dd1abbb559f4258933cd3adfc2e3c2a921f11760134afee75acb6e92604c22d4db4e79bb977b3b8704ff1ce8f8118022318c64db7b2c10efe2951279565e808bec6d82dac23e699dccc5ee2410282fc96cd4ea5409c9c0e406cf60e5c97326038a44b544427d3fe02b45a0b801fd3c43035780606570ff4261b4436bd0171ab8ba461999c5086666184e64b505b3284c52c1eb9840d2431d8b03fc02b11a70be749dce64a04873513e8ace3923c3a652c0d2dd455400d41cc4373816b113aa0a3b5edf899540379c58d69b114dbe1be26aca98a5315accf7289e93528fa2ca4902ec327940dc53bbdfe39609081443fbcdad2a20df8c10389eb581e14d1c3ed273ee881079e63559a52122cb2ac834224d3fa2435cf2a4959247cfaf40a85a2a730071bd2cb08a16101f4c3e2d829f9cfa9dcad950337fa34c90b3d36e920131801a1c90623182231c0ece92236873ce58243f4fb1246e406053e1534d6374888b5eaa52e671690cc8495b66156fb8664a01060cc72c93cf4b264fc4d40d253cdbbbbaa4ee37f84c4ce8f25f7cab6f974a3929de4b50fe51e8c68ac41314e65eb1868247ca5c3550147153eacdf256544d17ad031a077440519791f7906c5a6cb43f02dac12e006d3395f5cfbe0676d57ad22398d742281dcb40cea256d0ff36268facf059b744a360640023b11d04b3aaa4741c2898b44b032357a3b9b3b34d484b20d3df29b9104068809d15adbdb8f4c081008354630e4fe2d62da5b8dc1a6f1beffe9dc4320d40cc36ad6328021cc39abe75228028048b8508a39c46982e327951577adaad393b7ec83cfad2d70665a52afe9ac1bee1223f56cba4f714e2db260a6b6ec7721f4405f61c46e4070efabb29119630fb779df3b64ec5f13277d4e20906a5ba9a1bf9aeb07788a919029fba804587600de5262a812e664b9d6e8b0508c78d37e4d2870803c25a103cc7f65ad0d4fa67f064a0f81fc320f2de34831d482dcbfd8f23b5b90af6f2114680e09b4d3929b28dc9093c93a171293f302c451160397f6d66f6ee8a85b40c925309693c23a1f4979a6dde0992b57c6547b094f6202fb6007b8f3de11011ca78301dcedc95a93afdfd53d0ffbe4fd4520a3cb242019c41154961cc2c2e7961cf5ff5b1b1fcf29cb025ec31d98c92618ff7e628eddd83122f2e313d9bfb62ad716b9ced51be0145c79da36360d4f321aaec08cdb3a2c9233753415c5f5914271e0738a41c0745a477031d414980d325c89c2055bb78c397c0d9941acbfca04d36342a46a48f8939e9d7346ba6e36c55f093d865c7247f35d6e54b9f225c2b1caf210f800660440dd66ea6be063fc6600a25fa321e4879fb775e9612f2d6edb04942cdd67b856f4bfa04933a05d8012d72d57ac82d45d18b3a45442a420e1e3010d18e43c8abff96ed52367ae99863cdc01e95c036d5a0274336a47352d209332e47923023d9855565ff26a9a3cfd10d60065b89fa1384b1c796c1b9a51f23e96d7078d740dfaf98505e75ea14433bf141aff57a388a5ebcb639004900497d486097f212a2946be82fd0d89ae806cfc471b25ce31dbe55cbd478240e748592255538dec29a808f4046429f1178ef69f5b79f7da7dd2d28b700492cc8ae440cda40badd70cba63c67741ec7f83660107a28602d241fab628147662c12647fcc825e13782325ae8860cbda24c8c366b7be45db778b42f0c258a701c3641cbecd6eb92832aecc54d918f0e6502551340e2d5e2bd0f23ff581b0ebbb4bc07993a2cde46a6ab91140ef799e5802e11a70b79127e7af864d61cd40962187e84949ada5a32a5191969e50074ba557f1d490cb1d746a91466351358840fc6c112060e4a9636ce73caf447c20e4a23f889190317bdc450e9570e4f559ed7381f49379a807b2640f200bcdbcaa7678b9f2138b35907a86bcced23605bb1ec7f34af540955eae1e3001e5d24b190f1b3ba20b14f3e8cecddbf8c6ab392390dfe457a4b1ce177fa293d104506dc91c15807ee1270b7ffd2f1f04b3ce13838b5d9a39f8859af600c646117606c2b8480666e6c11c2b0dc634887270d5451d4c460fb6449486597219b28c508bd17e8ec6e856b4a31f74f50b33f53e5b0e71fe1679f41bd8b93c733d6fbd16d56735c8c834c3618de669d01fb711288eb94b1624b770b89b3443490a1ef3817cdd0a5a5cbbed0cd77b6b6337abba3a86e47b20faa5f8d6c1310c90ea8657e792d85e164c2c05023ad0b972a6cde0a2e76d7db367666653175376b33bd6980b9e71691b91b4d521f8c72d6ca1ff338749fea2c18d6066f3d1047ee2d6e74366e72b4b8f710264103549a9c95cded4b072237b3e2bcbc5ba0f567cf3b0c6eb4a52385c0a0f85a8fa81fa44af1eecfe90f0881a1ec1c8b1c363cb3eaf3863cd09d69a440f18083dc3e74d38ad5f143e589669f59f780f55c3fa2d46f7545c11c9286dea28449e51f96310f3f0559a2a5b75da820f3a3d828959b0b6558466c83a09ae1c08b9a5296391e4137c142ddd1f719755d3556580491e56af1a6e39340104674e126ee13095c9141fb795e24ad9c253c692c24c49a816f5105c58b1259288e2604f02e88347b6311d154978b595a201c17f99120033e9679d3641670207af6d6f23502118e200a2660c98089d72abfc8c58a10b5757818c80afc1b7865e3157881130c8aeb88b0b277521dd585af39beb46b28df3d595c0dfcb1c86870294f275a00acc040989ee6c46d7a8269192104cf2e2881c077b37f05b4a744c07ca6951250e7cacfe1b4fa484de73ded5b702a55624c941fd3ceb37f7cda3ac6a891ee1d29088977b91bdf10d3703ef02fb59a71dd80370f083ac1d9dbe50371b90ef968363f9c51f32b47796e255544bcefb35b6379913bc71e503d0c8f7723bb9e40880851a619b57e93c57277be758fd155d41d806beecc99ace74c12b533f9410958c0a4a25ccfb3f58ab945bf241a8a921c50c142f02f9b74c58ad0ab0bb858db9258522cfc3e095dae92d862bd3a3e13081c6bdc5b7c5ffa542ec96d5e94b8943e0950fc615b0de8a1ec2ea82afa7ad5ae7f8c39e0a462cc61d7c42763e9848103342892d03ea36aac1df9044a4604802b1b7b53f15cbe4a5c3a3f458c31b16810b1c05decdb25d5418b16de197035c4c672b6ce11bcf764e8e545bacc40c313ff5a53a79294cdb6374c63c0bcb102ccb2f6d37b68572fa56f550b77f3846d380bdc68f126cbff5e23e5efddcd9ff0690321def37d48e57d3b941b64bd95c862e671fd758a7eea1328b55f362b665f694e932af68f558926bafcf34703650f72739b24983be051c99b96b400705c90cf420563d4c73e94caebf8be823e50efc9982d94834d3b71cdee9527c983dd5b21aa4fa1f7600db40470f370e2042c27dd03d852683c24e62ef29ff05c469c7af7680cc009fef150d308efd1c5f144196549d5f6d4e9d320127221c929ef51fb8ca7f4b32be00a0867b5cc86fee74b30c1d89b361c37bbb516a3b75d9de4937172e936e557a3a5d43d106a9fde0426dfc44473fa3cabf269e50ba9d8f108d4eeb0e14144aaa911414eb8e2c820d20a02213549202e1d658001d9b39b3f3200a4994e2b2975cef8688ec37fea9a4aad66da8b22ea2d69803498c7285dad035dec773f67be738034456f9d1e52b3148f4614deca900aab4a804f347853c25022d38ece0650c79e083b67cc01274703a5670ddf821f0a410329575d875cdf2515a0ebb4c46e83bf280513bafd39726bc7eb9aed44250cbd1f9ef066262b686fc3bb82ba71c89d53a853c5a03f1606ba39e238c6d1d306e710cf4a640952508d28735838adadace6f67792a7d37ec7e295a20c9fcc556b1cedeb211d27389a1c28e569ea9a2dde7cc5719cab2633d1402eb23733b92e660f18529980e9bbb3f6be54f25a0ad14b73a4385a8c586eb4559a6bee550672cf040b823265b0a1e3f95b310889ff7d11e8c06cd2f0b8815788eb7e78291394db3410d308dc6b38995241273de5c13bd3ebc7bf85b4ca439c0cdb4aac887f36450388462f4da01dfc5d342a349b91f7963bf855bcb454c9c4d9f83cf9e5a431f68e42978a1e2e4307e9a5d28b4a90e91cea1ab4b46b598f92879ebd958647baf054485bc338b51a0710f78e1a15add060893d87444ed99786061eee5d2822df9ef6bb7d4bc67c48e4b9b642f2c8c9bd8a49b1ef704e0b30bd8363840a3b6aca95f596001bd376b25262de08a9ec174f4908d8f6f31ef9822192dbcee551a742c834f55109b258f735e22f698d63a32eccf00ad42377b5c925a6e0647016b15f16caa97af98c487a169786c62b0b81f3b358a786fd008a73cefdc6b0a284c3252ca6a486e71dab8f71ce91a82b5b2c16757c4378fcabce4a8b3d25a1092fd1884172ab11c58c4aac83777f2c2aaa557fc478054782c4406f825d8ec493df315e550b69c1ebe3a3258e5084b08665897d616bc123f3bc3f8771a2ad6be653749f83c86afb22d5a0b79a5afaa8a2fe47bc25c9cda6cadd8c4594948c02a0a14743a65e0904bdfa82ee06260c8994a91483eef2b7dc6c6e5ee201d160cc1d26769d31f7b4adf4f54f41f71788560a6e38cde250b2af266295a4df8341f43f2ae81a9292f44b1222f2be3fbe0c0303c5854483f5611100ac8236ff78f78b1cdfb166f0755e35ea56ab568ab1c698f4a3f73ee58c0096933d407d0755afb8b519e66c5de9d896339c33d938d15ba93fd9a0c4d378802157cc8fb8a8a8314a9442ac63ee6310d32ca8fca0f5d4ec95c76e7928f69246769720a6255eed57435aece4092ecf282cf7fd16bad8ddd8a69beef3dfb3caf5eb899651e54f980fa69befbb0c95ba7320223ba379c441d03aa37f23f885403b9c702f07bf34c13e243844b9037a13bbacbe50246bbfc15251627fcf3d4821917247f7881925e50e35eb7b4e9ec4694816096c9eea6ae5042addbabae736712af72ca39edac1e69bd570436d3374073a4db12f7365b3ed56a1e8c47506ba4bc9abb01d809dc6d64f6255dbf2d8ae1f4a0ece953719c2610cf1e6eb75f135368863f866a7314c5bbaee2176a419cea65e8c002998ed41e70ee0594e0a74b84ee81c6f735d9974dbae89d88a8d73af84337c73c3b801305c9f21aa9bd30d88736e51be9162303d1dd3f6a5a684472319e182aa9374205fe21168c6354ce31a3a669b1a655bd579695cc14ea0240aaf83e59a68e675a17d6bee3969865a03e09b3f2ecd23146a5885d1f70305a3133b002db1318c33a2590dbd9e8782ee94dbea72a5cfc5ffc532cd2208c5e6dcad5899302e1f84449f6b6b68f009eebcaecf01ed4016db8320cd4e562710f3854244e39c9eb66398546426e60845b1ada0797ac6321a59e46520a12c4320ed154976041abc30f883f14f6c2a041ac5371c2e73a7b72fe1c3f5f779c1ee892b8c420a72ac95caf24bedbbe1a5500f329bd6964ce9636a435146a15058c34b937207c24a544ca260802b511c674ab6d71b5bfc39ca4850f6bcd68d55dde085ce1d7419d33b585072b07affadc3af1ea5e9d1b3655499f7a1b4e46e5c0ecfa9fdcc3c0ae0e7764a9c2c175285cece3a31980182e21bae3c6021be5a828626e8343ac88baf0b51a0d7c9c89172aef1d454180c943f806beef9f8e9afd85c7892684a9be073f9483f23605af015880bbb73d18cb91cc9b2d69fcdf8c34254da27ff1448569b5ed49e2b80a464152796b35f161f21241ef2f3c389926f322ea346203cbbf3ab5c838a156946a04de9f2730e005c2b9116424dc2a33b0e932542343ad7982d5f75eb34f553055d92cee43e92b7e4f373a244859aa890a657257086105c9d4b33a8a5a5948cd21a2f8dd59839259c9726eff34959e4f9e7d6b555293fbe55394c2db307cc831e8ac441ca764c997b95f58a9bfa91f5a26cd22a59421e7be4ba6ea4d50aaf707224c79fac208e6822ab2d2fb6cda56a4f72feaf6228c50cb4b5c06ca6cbcce39e0216122de9a04265880f20c17c07c3f8cf059144f1344aad1fdfa5ba7bdc5976eb6330a2fd7031a3150ff08ab26e6ae1201af6ff44e2c4ab850357782d2fefa6f44540897d146d0bf2f1f222876125fd8a0b16b7ce24f62dfb6fc0cfbc7ea57f75ed2f86cdb52f264e2a6fb4f2b1ef49b01805a82eb8d99ef14acf175f40a5da6a57510710eb55218fc2d97c67e3c42d5b2fde24d1b6b8c1cc2ac25f9ebfc5456be26c4d15ea6c32953d0c822151c384ee25f7d66bc1f3436ee472ef03fe9b74a9c71f5a523e02501021dffcf515dfccd776428e4617892c0d28cd35f761fa64b709df5399d6707189cf568c50f61a95ff43ced58a17c846bef15cabca960843409572074753ec945ddcd8f16b51e634fce30cf2bab137ac2cd5ec424c5b2de257f1cdc4e843f7623665fbe4581d95b6606c39a12300bb270339b7fe1343610bffd58a100c106ff6a890e26a683c360bed9c94e0d597b04bf01b4a0b7b48b546ff6f86a6c4a47d9652e6ff723230f6b71a6ddc55c52578d4996d0a87232fda4c6d24503aff2beef3a79d93943b45bacbca95697255f940e418972c73aa29aa8fad04dde48bf138b1ba4d800d3f767a95d3ca0cfb2eeb04e712aca9c7ec7ccc728f931cfe9002d2def6e3fd6b104e71529fcd505543177b798ce48182c5234508dcf485d53755f42ef082585fdf18b86fdbb4ee03094c3be368340383ac76225022f9ce8c1ac53784617a02e8b4bd28b3236686089392702178fe0b59c03051cd5fdae96b41319c5869f7a26e0f87db0a0caebc579edaab5da7e9bf562e28d5745cdefb75b035b4f06b909c26e43bfcc283d01ccc0fc1e0f81312041b1ce2015c7ab3a3c5501aad2f429dfef6be22a5fdd4c067f660e3574e8c162c7b19fc5ae04456fb4fb1125ce0f4d7d08d7bae73db692a18b81f81999836b959d808007a063e342149f8b6e6c65e6ce382ec3723b3166ce0f6e7e0a63daf77da493518e6feea606e60d0f49f18b449e11f14042faeab61d85d2e7e198c60bca767f223bde06f05db9bf217dcd02c505a520c8a9f1c5a5c3d6a7939963e8e7214b24c556ab30afa20b87b2a560be45710df21c3b381dfd832b65e1e5a09c4a4de17843bca4e5ca3796855ef8e0a4dedc2ae22c73f98b3fe8b0c9ed6f61632757934d4288e141b27e562b9f9592667024a764c71d82a2618ebd46c411c6c351825bb9ecdded1be4cbb318db9390618e77f3bed745875d32c8de95961226bfcf8e665677daebbad7355b7417320085cb3d63c29d5de7dfb9f3937e583aa76fd01641cc2e4935a1f82492dad441e0be6c3d65879b6fd0558b7da47d38a892b02360f7b73cb8c701580be41dce1ab9d1422ccac82a1d95e39faeb65e5185af3f32aa33aa295ebe8e528f2e9b730e3b0255a9bc01792ecf2d4c0e2263def9c733f58722bd6db47536a3502617de58978117284f840e1c505be077bf907c82d0d76899389d04123b278c5086239a4e6472d9152e93c6522b0234d6bd6baf932fa097302ceeb20481beabf44802ddc984512e2e1bd0f4251f8d3abfc68c5ce96a27b4bfde2cea4a4f2984d9bc0dfb69ec893e49bc1656b1a23e54e93c9e897bc2ef1ec4615f7cbaa9ae037de8250cf9975446762ca1bed1d8de2aa420ff59c05841e67864f46e7127c893e84f7fb108c9fa4661915e7467639f33c59a94c15f720ad4a25307d09af35a7f0bf62d11e95bb29da87a20b8173a25a9f376e9e26b92033c626162e344787a193ec89a96ac4cc98fab610d732cc81b6e17ee5d79319199e034d6db8f546148be242447278c2dcd54f3bfd0de9be28da933b7ee7f879695246c4cd878e4d23728d445688bd3b0a9d9cf2abbc22603535a09b738fd66986dacf0845a25f03ec6ba8dd7b5264bbcbbe538ac81252d9a55ac894a1f0b3514ce2d2657a404bb98155f845ef8d080d81599d7d080124de14e21b68d34a22beab0989480e516ae6d5e3ff5f3e6f9272a5799ac451d111527a184a945259ae46b87203732e2009813072453462130f28f63b7de5b782a997e36eca84b5f4961551722e70a8fe478fb62efb26424a918dd38e0d8130f1cbd77f25699a81eb108b29ac5fb623b1349d3f6e6ed2a53e0074b26d8c6de6ec8125cb3a0e26395ac23e5b3d293191bd01befe7c899adabd14e0a367bab34e851d7fca06eca82d3623fef198db1b46a5120ca0766b01a2204d1d9fe003025a7ca0ececf4b56f37e3da8c82554d1ca74cd7c1f29f5128191c8199670ced4942f42a943899c63e36c60c74fd9a7053014bf8106b7967a959749a9be3c9c26a4c61b0e4dbcb464684e68f89c6df009c2e6cade5737bef6e1d610b439488ee93a8e26578f8fbc45abb385fe4ae3103e92105398846468a434c6d135ff135c886310c51a757daf9aa1c4492edb3bd3a8f6014f1ff027c7a44af376a4aa22708b525a0440f0d11443930c2dec8ef59ad1371b2622790f7b21ce85c2662ecda282887502fa0dba593a1b77d22f73c30d5d4f2ee2519d38f0ec729bb39f7918831f6262807048d21a1ed588d08326346e7902757c34e9cc4968f53add9f8c627a27e6c61a05042e882d4fc2d99e8fb78b5e13e8f4312d22c7dfdd04f192c6f0ed10bcbc097a6503cd726747de99beb2b4c6726f2a0b179c9e28705268db44210826ec96d055ad8302e04ef3b692bee2b2fadfe9424a55ae528a289d3d9dbe5ec713baca3e92a7086fd3ed1e25d82db8c6edeb41e7e95b7c248b72e5e4e0b0cb39170fff389b1fd153ed05e5355dcf56cae58d5c29742e82b79243d753a5fd36df4c116d562c1ef9fc3cb214f7b7649be2a9458467c0fd4cbaa6064e7e9db81a23c489f051d3b6354b348cf1eb657fee94d68cd94f70860a710e42aa3153dc3706bb6303689b427b1d24bc7ea783cee84b232020d1233f0b97b024fad8a83ae328407bda8c98832bb97c320ffba613f5ed561f74f59a2ce3a97d1186e96a86698b667f2ff709648ccc96415233684b9e7102d8b3fa2ed337ca083c3a33ae9488eb0aa2503ba1da8d795217224f111250ed025163e51a366ba1d1df2b339d3524f1b915ce002505dde2ab5250bdfbd0de1f672a80cf8a63ba40e44f5373a9f3f4a44de27906436acaec2218122a21c91a8cc2fad2e17b1b6d79b73a88a16a27144a8a4891bdd94012c68dc2be7e19800df0cb08ead412dd67278d709ef930425ba3089cd2b03a085a686aa52e7a6657c7741a9bd91bd2332de42ba08d612a5dc3b192e3352207b3ade6d3f0e8cb42fc6083657a10e94a944d7012c8a62872bbb46343a6efe13d37799ffcc5b7038a1b1abec0be62e32b7a6191ee2092198168362499e7b822e749fab6b15dc1c5b3e86ae2f89968996031ffc1924555eda2d0b9209c873f34343a1a7fb4597e5a83eef18a2b7518787b1776944ec49124b846174b4da5cf0f5a03c9fdec43373af70c2c26b90146181ffc361d9e58e98e3a604b25681089b89e9b00f41210ae034d9ed834c3d357642fa8a303a3fc50d66eea9988734482d33dc939cda0619771a8a4f8b4556d7fff0eec2f0f28e20718e1f3887085b908a6f5d4fac7f221f26e9c4269503c934ad28aac664a89bc2f8ac8c7a760f49f339867802807fb4022c3f65aa817a1d87d02e78f8f26dff955bdbdb333a5fe998614a1e0fd9767957d84f6e86008c203c6c094780965095cfb8e4af6a2a84f6226572aeaab12146b5aab2da29497e135d8c6764ce3d8298d1409f23af198a101474c37e1d42e84703bd1af27cc64ec4799f4ff915f7f32cc9cffd9cfc7396b59362dc2caacb76beacbc411aa806a04380bc4f823056929ff5ea0b153f32b26fe11287817f627eff9d0db5492e2856862acbe09535da646c4588ed271e4ad72df28ef628cf6e72d0175dc9d85806438d1d36f55c350f04f613754efe1924ff81f3ac98df71ea5109255dfb972c2bd558c504e8e241c563bd18a5a50d344f34187d5c2f413fb9ba2603faba72ab2e67f6550017e5782ecab5012bfc7c33f3191b7ed1c700a0e3a301bbbbbdd428c6820ec76cc125b2f5eabf55bd1a33f52eb5aad4f1153af6886a632248acf19013ee83469555fe44ccea5f041d3ee33d7891b99304dae67a30254ea7ed22760c67cb36fa05486be51c259866e6193efe0f648fbe6b319fd1324db8d363997d0e3c48d3e83e998bbbb1c32df71c32d9d8e4f19996ee35deaf741e2a9e652f0b9a5a9a80995f5340f0de5422de0b07a25435de685cfa94c2415d701d206d1383aae11bf31de51552719e15ce7b34bc642a3313f04400b72b53af724bbd75db3a5b9ce96e2a0581dfb1c988085a72d75d87889b51ca1a9e197c79b09b744ff9f2ed6829cc8df83f533cce63e969b27ca60e06c58e2246506c4ca53b45e85b84f6342f62447b25d52d5358e4cdac8e460e00a8f2b0348ac1cc7322269d273a9a43edaac8c5205ef51bdf6dff1ddc39a65e81e2798faea7129f7b259470a26650d400556bfa79c7874f384997dbace9e965cd2d8106c4dc9976af8fe19ebfa9c39fa292a1d83e6b0d9a0b7209156b2e3090186519e878909926c33153b56847000fa4f793ff73f1d05510ca367423154b054010c964a045095556f56d3845f6298b6a1baba2fa7cb35351a0c5a0bf9215a543f94a2efa07b3bae489246eda49bff9750585c3a17a676147afb847d8e18e475cac998a8729f884bc700ac20283271eb315b606713412911d256542c7d85c34f66266674792ef768e4a54c91d5b8be37a5e8afe950fe748294d3f68d3c9477397f3376c6b2361238260f71cb14e9708bc5b23e42796b61c4a567217b8f1aea042eba8c27c6370aace03d08bf1a5bb9ae9d13204811b482cc9885b9f4130ce2789b7ed7534a9fb5e599dca42046229a97cc629dfa9cfa5eee2f484ca25f26cb585df68226fe8eef2ecc80ad7ea0060e0d887fe52edd881305d98920fe81800a3e5e6573f49c576608ddaf85f00f43a522d93d1249796fa7f302ef1ee50d17eeb44b8d5f2816fb7c4927c1bc3d112e1c6f22b92b73525c658562161e0318ae1011c72e740dcf687ad986ff797ca8705412ad70e78e2fd2c034b9282c88607fe7a1ae5efd24304e0dc9d019470808533b042e4b1663fbe77fedc2153c40ec264b35a298fe2806fde8df4c553aca92ebce178126a9c86ee7cf421c4ae265d97451736ddd3941c8ecd394d48ece9e90c15da5d9d31b9d0cb3d33bd62f0a0d76432172d25e33fc14642ad9689cfe6fc2554e5bcd1039c896e8e5a12e51f27d04cd001e37c85cedad8d91aff57732d34baad50c06651665b861158e11ef946fc8a3e4e630734f74b3e40c7b87440bd3ee0f17f88670acaa987b790ccb4dae0fb6fad9f4811c12a7ac76778623df2b87ebb72ab49afff4644d7f23d7ce6351d2d70fc130e9fc919f41628bd2b9debe770afc68c7344391d7bc88489f6e700393ffa8326eca0e2d3651df9d14d8436cddfd09aa928ba2716a37495e0500ec6a844ef84212beb84437be4299070a9b5e8ed96db6d116670634baf631407ff5352be50ee30ae07903b6cf5c174f2c51c0c8788a54cbfca7e6f3fdf18ffa7334d4daf5f109b5bc82505c38e5f4e89fc083a0f77cb38440287d1aa5e540dfc5f8e535a0bb8155dd46d14150e3131b3614e3ee19592ab98add212348eced0e380026d6d4fa7afe31d7ceafa462228b8f9f542a07ec613a12451f31522df38182d7ad62a14f6bf5a83862b947148ec9e57fdcf0d845b1f8abaeeece5327dd8facff4b3b0dea9d607060ba85de79bb588dd670263980efbd98a42273ac23df450c4eab1a1164dd152cefaa997f175ba84abecc98ba546c56c0d7e83eb355609d2fe10e77425b3b4dd1f07c54cc960f49efdf233248524485545599d0084b33a0417324f24ae4093e456636068c975419a0de187be110e7aa409f4ac4edd3d3f0d76fbf523af736957b0acde9814e19e3c2e87a28d0d1723b5935062c75d5b92bfc48d4158d770c1644b3912e689cbbb290a9b0f57b517c28149bbbe5e3d191cf3c02ed714bd08fdd4d64ee42a7a0acbb715f519703d87a54ecc3ab9337184547a1c32215e1de5d8735ad1c2c51edcae3794fc2054767750f43cb6c5c64c8d3f1eb11ae31d92880b9e597912c4164287599ae814047879ef97cab1cd26e546d7b79ec7de31864310e49e50751648859c047bc458c04dfcb8eeec2d2775bf73b2e623b5b22d4327a9cdf7cc199c2819d8d043e9d756bd3963026d019ca2d39a8ce2f42c1618181817dec84581c5eb9a5997104bf0711224c42d41684f0e8226555dfd8042c75308f359f02e9ccb14ddcff8bdf107b8d3b8221acdac4ed471f3bd06ab85394f13fb195d9c897d83ee3aa30483dc094e8dcf0b124e94d725419f15e75bdf0a00f1268174a819c7e2c270c096a6b3b654b2da2b88ac686c8dbb20498d7ae1c926cfe649792670ca67667366f21d22fce48c5e13a832513aec40441428b5433cd081997a365d56d3e4a63e21302ef1f43cad3d106b231cf358d5de684a0bc5556c9e1d366b9711b6d9db899ba62297190c3aeb6a811e1b62e191e86ce82ee89ca911382f5ef4e1772ce445f068cb29f27aea31e2b19ae50493d10ba4d06b983abc791a0bef1309922792b307a2f7b78116ed35317bdfa43d3109d3cdd247bfdbfc6c0f7be0821b90ce51fc97a0372f1d25736e98b8ac8941051d017af1a02067a79c37635f5042a0dca90045d233fa6564693789be452e282c5016c18b0c193c8aafc1234375de63c255923b60d583040af799482b572ca0022b7734c7e7632d6ecf6fa96ca2901207b627a11a462a1bc17d415a4ac5da00f42960c338e6472f1944a2e16320cd82f118a8a5e20a985907649bc880f61a6dc3844c3371facdef9a96a43f267cd8d32335ff41b53106a3f428fc02e28c7e5f8748825f927d6e766e4b0b0721e09a375e0b9e8b3dc5771561bc7bb39ebf86f64eb4f56b96cc8fa608d2b6b42c04219599b3b75bfc41f0af380ab206e2b8a685054f272aa6f7d25c7c615c298ee3badca80833c73d1520e65547cf070205e8044baf177fdea1ebfc6d5fae26e014ff90d24d8ee4ad8ed680fb8392262c955374ae2ff66a3952561298ad2c983f3175eec6dcf0c4e636711a2e142d096fa3bd1e966ad20395510852e4f8d78a9d0f5d4cb13fee57ec25a59e20ca7c5630ceb0ca30ada53b69e0d59eeb5230d3fdb25a70bf3da63267c9b814f6913008117014a5baa09c43f3f3df01a8203671d5b961b519fb01b347a27cec25906b4933707b7481cef82358ae9b32df038c9a557db85141e0fe3dfce85b3f99f3177ee4eaae5c52e08f1d6c64d557f6207dcfeb4e9db625b18fbf8782449003a82069f5b0727409542010e8d27964086c671a88f7f38f93bdd727d5fcc6a522c7ad41748f0bfa5894423825a6c674901722a89db849cd9789726dc936705daf0ea95eb8e6982780608df3c2d2362bf9c2ac09dbd5965a7671d71ac29c43d6843abef20640055d784ea63c18406b3b14856134b2b5415b4ed215947860087512842918c14ee571a34dc0581fc5530d63c952e550c0ad9647263b999efc608f387f035084eac09743b29cc718f9aa87911f5e368f350b53d77efb391d0d7aee3b72e49314676c89ca349891dc306d26babcdc3edce9b83484d3da4d2488ff99b724e98510fd6d4d55b585b37571fd3382be3eacf6fdbc4657ad7cd0b0b6750ae7bc9dbc48854d9f7150f2b8693227483221f2f42c122e259ddc6f215aad844c8c8c8012f4d4341bdb42188829657990c60df9b6a81b93bc619d8e9855f3530d22d2bd43a984e43a3345dbe46a6bd79c5838e6c5ea1fa08af7958149597fa759b6384a0de92bcdd1fd26eacb832fe6911b4b9f48a1ab79bdfa44bb22243b1e242182710f4d0d34491c144bf63736036b1d0564b4eaf6c42df7013b9e0005f06503c8e36c47b52cf9809cf18ba74ca2e7529215eb6c071a9acf086a58498af9ffcfb7e4fdfaf119b88d5ba1efe456c5a90075f5b29445cb6b0dce6373a813a0404a0b4a2a840ea33507922605946eca1e3c05cdbd9cb7cd61ae50feb445ab0e89bacd0c411c68b09d276da276a5b0bd5d77f5f5dc631a84da408d985311033edd74c1066a38d6eb93fd1d35e8aa804013ff56116a17b1c454e21842af88245b55c1a5fb8da7fcbdfd84a72c4b5db87c38489347ba5f44407826fe8a4b5fb75f5ed4259af64ec827127ba6c2a3d8169c762a7bedfa18b5c12552b2261d0a9d961530c011ebed2c1f0323e767feb444a4d13798410238938b4b8944606d0b06e29c4ae363f786471e7d8250ac7408bbe1fe30724626d77a8e1feeec444631f5a809d4a2a3a858e87ef01534f46ac8e64dae113fc178a81e3c594974e995abc5fc01019a3ba920ae444f8ec5f327ea13112fe44993761dddd369ba210bdc56d0dd87e2988f07b4b8e66f82c8997b33b49c6c3b7e30dd1384c3e1c588e10f102e84b8b20d539f4ea2b674994c59253cce02cb63f045a908aa47cf3c48123ec1120be21968d25c337220a13c4d48d7d09c590c23851eee4ccfd19bc4ec492bea5ac2c55811819f4e4e322cbd334cf11444a30791bb455c87c056bf7398abc5a129d826e31444e0b141726242ea9f14f1d946dd6d5f565a93dca111fc4a9e28b9dc72ec0949c5a5c98e6e158efd5bf5be45ab38c8b98fc96336c724dadd93441db82b53255174d001882840385f35f1197431f4e4cff88e71a313415fafea02b643149577b61949b679a018e7af9a3bb959bddd86e12196820e045e7c442f55ec9acc7bf39a271a46ff23269569ff882bd2c9a08d40b14c6fdca6cc0e5eb97afe46acf72b4044976922da21215ab53840fedabe8391f3caccdd10aa6e23a6a4963dddcd404a10d3f7bb16cbc8fd26942bb34f00de2a94fbe891e993c8d1c12e09d98d83297223494ee101175c7dcb15c47a68a307b175698fd6dd34ebc4440f16262acf32d82a60ffb0f315a4501e0979b0bff8d189685e23a0ca8ad93d092967c9621120b64ed0f9d30a6ef7795474c68927db09428e58acb74b27c82f41b2b7bc198e1189e6b509f7e1bef5d49629e1da725e82cd62b250a497fbaf91ff1014f0fbcb3c60d8161a3f5422a3d48bd0ce4010f5a123ef08fdd62742118f8553bb3d52707d23eaf3d6d278df457932b796d78bd2993de0836908797a147987cb0d4d37699b973d966578150349fdf0cfe4ec3420be7b62741dccd6cb27d6d1a54a48fbd29ef674c424fd9e31b3cca8c5e1d8ea8bd6e82b53989676cf048f0d14b3eb7394a70dcb4d1ed83635ea9d3c6c3c14b1cf4a1e73b659ac63d6410b9de77929e9e9ad851a4d67c6b16537f93cb161c4b5eabc3e05db63fd8151453d56fb2577a0e7e69bffdf61e79856440bdd3b79eef9b416d0c539e903432bdd45eb52adcf88acbe0db039089542143a968a2aeb5a7783161ee1fd938525b2496f0cb4795e3da1e7c67faad5133899ea059356d324ef33704c61fc4d3c8c546c17a5b6963b9ad5aaf5950c8245adc17329aaa882f521042091ba80190cf40a8e1b7973d575f9e025a85b648da2fe1043916594661157aa3144dcdc088a1252e86745a558ab503e4fbd8b2f2cce4995988c2d69518bbbc556fa8da1bbd846ccdbb80065f5479a46d52fa1a1cb180c50f45408ac166340f94223365cf89e75e61e7663a90517bd34e206cecb188d8f01066f5a80da8468b7e88207c024dd462b971cd4f04d67cc7cef99a4cd0e047bde87bce5787e63755d7715e4a50c8382d1db39b750565cd34ef187485496b766fd26c3783294970e0a4e11822b4084d4a4a82f474d7dc2c45908ac10e244b100f33fbd92038a51458cfec5698a6e329ae53d3ac6f3dd3530e80e57405430dd03ba4e763fca5d6c8140a6f5ca1b500b61a6d049df2a296af20289250b0d2dccd9a75bb6b9f50a5b3fc7ef31deb965a64c5fda49c3cfdae465fcdbdad133c9168f92714e45d6cf1f650424b4da4788bfd0a0129c0abf24fbaa35ac8d4dba7a64386a3d7eb3f1ac559230338101f8e0b0ff83c0fc63898f2fa7b5a95ec4757cb21d797cb6965963872e612a899f0b9fec4c21306391d3abe4e058a0175345bb7e2aa71a4ed61cefaf1687139c000884f799c4875e0432db10d9db9363d73afce263df127133d4aafaeb6e04d9ada26b55632ea893774928af34e8598719c905e4b53c5ef04a4c6fd691469671daf3b83c6e1c03a096ab1dda2506ddc3b29d3ffa8682481ce35e020267bd87c95b5fac32faaaaee6e98d886c1c24bc0ddf21a40e6c353eb9913e0362ffc98f19ec7708a9b20fda0998a380af38d69c92327122564c0f09c1db690a2906ac088793dfa8edcf4fe71cf5c49a66216612a52185904f6d75f30126ed4397e269b53890ba73814513d9f41eea6a089100fe88665470a70a1d23ed768e6e9e6104a3cfff1190a4d4e765d4ab5e0908dbbbd27918369224bf293d86b5452d3ce75e317006e554ea6dcb8f19b98409bc8cc36ce6996093f06beba2ca3943d391a42c9ee1ebdee188081983e54abc30fa7c3c0436a5623c22265498c3b3fbedd42dde3e0f38b9b6c492b5ba8217c96e7a49f672789a8c454a07f74d1160150489890f69864846e31528f6d6f0550bca92d8086eda268bbb480d9ed918b24643b98e595714a9224b5a856ce12f206d000caec6aea55ef3d0403c7e2b423287bf2ad98bfe7193c9c05e2878b2be79096d365383e728a0b14cd3ff8190b1ab20bc1ce87aff62bfd49e8d16fb1f72f5a1201f59611ce0b5996db923eb48b0f85cc2c7869dc62ec0fc7c7d1f067d855e776bad80734fc076ebc44af097e7da252bfc264c9c3b58d489ad712669950bb531198bb4d219cab901dcbcd1eb538e0d459c004199c420ce6065db7d886f03111c3d932b804fedb7448357c1a66a8697cf58151ce38f3eff85d5a2719a86ed2afcf578d9e44057679dda44a91912286eb777208b02322e8906d09d42206487a4601e03809b25155aa7eead649ccddb0b9f8dd674d53da4759cd5c41ea21ba477805c36c51afb70b77a3ece6e9e958a669c84b01459c744164b663288a7da1262fbce4db2c3accd2328bde577f356335e14074b6c07967f8edf0221f82c368c697f4f211362dff854440018ffc8c6cbbd51cbb607db66d0d5e1191d955d7662dbc168181c866ce53cf859b0669eadaab2fcfcee4d0999b39b17511cd7bb1f2134ab71564d8f9cd161d6ef3aafd02589085e2725ee36d626adda00a218216ad2300299ba1302ad939f17c9006b4c31e6438f8ec3467daceafc8192798060360822c00ef451018f3c7671fc24246f8af31e0225f38d40786109dc067182ac0a53206ac151b006d36a8559376b61aa002ffcfe2386785198410582cbf9e7ea649291772a4103f85b867e67058be4a182b7b4a1f4a4344bc4bc7656d10fee027de06865a84ed3bee75856909b11b3ede0f1b1d9734937b63dfd7295af6e72b9a8b8de88f39c2f6aa1802e4f803f04763b77bd8a1ec78b86b5b10d22353cf8c9c95902044117eee5641b4a020f02957fc00da384c89d53399ab5c10992a13b329d66fc8d49a6553f6358577ea012631506fa8fec06f2e03abd67c8003d07b8864343511cdb478edf7046306736105d4dd89e62fd084fe3924f9b73fc734618c806370cb47e798e24df55fb20a81ae0ed203e7f41d2186061b9a5a6282c658b6e54e049f8e08c34728e077e5cbe68a8c293f803180a6fc3e7087e87ac01019b7748b91d8a1209240e0075be348437eb0b95baafa319d47a61c8719dedb364ca18e5c8682e77e76766bd9526c8323961e31e546fc24966cec16eee765cc6985a730877c28e7aae926a3c94f3629cef2b3bdd42ad2943da26adae371c2bf5d3b2b96548e7bf15e1f95dd9999ff48a4634a5f5d280cb138a076f62f7c09cbfbdf472e3c5d27ef11e56f9b404e74add69d380eedbf665ec9de518821608d19613f491122336b2cc6570fc017e84c3c1be1cb59410492c7d0665dbb0a411a812b8c59b0495a4f493488efd5d230d8f4d92dbc529d6b9c4ed7d8d234d17aa9fb4160d3c620f1f3b6cb26e1d5ec492012c028be0246f006d1190244d9a9905639429170d16517006b53023c59c8f5e44846fecfd9658ed056ba8b6251de308bd905fb0d5e7db0cad362313f5aa1edc37af018092788f6265a02cd075e250e54558af88de83f12236476ae95e8428ad1e6f1dabc483f2a2f35a95354b785badbc1f01918d41818e4a2dfc98320119dc511011f0c428740465298ebf97573bfaa70826c611acbb13381408a1a373b88a14de77ddefc782ba6e8a95c8c12a178e962688d5cfc2126edb83e5182cc1203f45a80763c1f78529780f667092a38a3206ab84dd8687fd78e5923550c7a119ff90db8e46c4a0118e7ea6085a1a5704174cfdc0a524c3881c4beba7a6fc70ab472cc01c55f3764cc340ded531321826fd18fd83823492ee8c52f8dfcae1c14c8bf4e4d73de8318e7c04685cab6af287fa3f8b73ea50363892de68ee2ca856867c54c5eeff2616ff55b1f55f131bfecfbcf1a73f26e02215d5b644977c15c4e6ff9bafea0f81e844ab1080db7e3f058e43cfd7058b44f6541b86c008fa0f381ea4c5a6b3922a399aac2103053da78e35b337975317f83cf259747bf0818e5b79a50cfff1949cab4fb78e074bfd06baa000c202041440263730bbe90812420aa99b138b16848b4bb2a817f48439e7b2eeb4801139eb5ae5b9064349752958669cb223fec42b1587fd0cfaeefc36b294919b381287321cc32d922694c0ed59931f0a2f9f8ab3c9e5eeafa79d2dada33dfd5f6c36c9bbc040fdf98ddee6b86557aaccf727b2c98bfe11118f98b3b99c108fdba4520471c59e56557efd3a0f59d4ecd649f752cb56539caf16541a231996a707369ebd7b4a4639f9d2a6209088e22fbdf17ac979dac6333cbdd38506f7ac28d6e6e27be2dbe0e69684186cd0566b17f7af30136e15f31d4b45f63018ec372a1b10c578cc2a2e8e14b420db1ddc82cd4d4e60ed2ab7c0e2016e49f46c3d2e65d0f1d58946b38a312a2925ec48280f1eec14ad78a3af8189a63427662b4e3330900086678e531a244569bcd5b35bef1e93a9c94145ff63953ff83dfd9a9df727c09c219722ce0d0e04194cb00ff0dfccf127c89d2f0c991adb8cfa17140c7c9093b1ce2ac64f75d2eacc2141bcfcad522243ce6c432ff08481be36ddb6445d489c5411a55b8ea21a233f63538050ad0e46f9ada73efae0dbd7a684fc39e019136c6bf5b8f82b93112aaa578b66627bea8656926923e9b5b8e9c6ff40833fb64d511f929936e53096b10af71c1cc6c2fe070cb1c0f2020d00c02bef54d868856518b58f5617a62b3029497ad72d35b4171bac81cbd6d5c1a674756859c50175783d981844f34e8eacec005d221c2f2d470eea6a6ae40e884d0688ebe086cbd7237240c3251e80f66293f9b6825dd37ab95bb99d38fcd0bfec64f286d037d5d34bb672e3f212ad3b5f2cb39e37901625f3be3557895bbcac2541df63c14d4f070c40336bc7a9a4c996e176a63e7a327e069c628b41a01d745db7acfc8dd164a80a98dbbf3dd6663680f9799d7455cb2a48a4eb0958254b413233d69ca6201062dc540570808cc05489bc3723e83840b3c2c90bc094a21416e6ddefe7221b49c61720a4bdaac2f124b36ed7c33ea1197c965969eb1607a66450d513c2072921be0fd35c99019b54ce3f37409daf69b3e4120752a1ae0438eadcf0646aad0e68da08ad215fc525800e232f76ba72a5860dba5fa14d461910735d99f189f2d46ff3e8527830b92e55941958a9a1cf57c04f9e3e823d1645d24fc05a32ab1f7b33a71bdbe3be605afa169d05998123a3fe3b2ddb758e41b1ac51fa677722303484f69f9fc3aa9acdfe481a516338169d11db1c20c7c8fa6ebda87929817230d3b3576a2cd3a955f62d6026f748c98f27d5103a3a27e88d84961d5eab5d3735874823b094ff341f0efb2765fe9b782507e49c255d79490e6fd4181ccaa5dca40d6ba05c736d02e5861593c631e41a42e612b2d9ff93e3fb29256f82238c72a43a55c75907803ec6a0890a014a90287a77b9600e55f99dd1ed0e60fc8c4c79d3a32bb79ddc2ea6a9007aab3cf438e537c09dcb3501726c532c3e0a0423c768d289886332a14a53ede6b28c684e672241433601a3bdd18c6109c79aec7b4cde6712cc908a5655bb6dca43bfbb7cd3326c22f9c13f5dc44380e7ba3682da44df91abf05b99af74cbf4cc4db652e95bdaf694b45fd06c67ea260f226bd3296d164fd4185599a971fa7a3c778ea3805ce115c608fd327c73ce285b5f97e3d337bfbcbb55e32238b1f7c35bae7a9b10e70b8013daa5d0c646757d9555223f53c298c5043630a2e59345204a49efc92f029f684aa6958115ca3f7cc5f7dbccb662638ca01b5c68357acd1aedc6f28c5d66e22101e27046e6b6f92340d1cd3fb331e7f9de4d900d61bacbb0a54b5501cdfd9e9642370d2d42ae2c13bfab722435e5bfa2d87517ce53dfb41357f7aedb2269142b70cad2d823000de7654d020b2da1d32317270a58089407b84c876649cf1a86cac0122efdd8cdce70e70ddb38c4f985e229ffa7e7293ed56850c23adde6b1f8ed106be6c5363da4e4028fab510cc2f0e871df91848f638182a5cbdf243fe98f92c079e74af72465c5f83c86729fb27231ab71d97f86d33dac0e1cf2aaefe6b9b6a0c5329933bcaa71b171e0d8bcb897e2713b63cae60a02e99dcc53693cc5f17b527d3de1cc9334cbbf874b32805f8bd021cbd5531863928bd302862bc52491e59c1c509cc50bdf2b8fec08023c5cd4d7b89b2835f01c887084d8826becb8413aaad3b8170cdea27c0e8b7206868bdda758d63e5d26e97ac11b790a364422571df8400906ba379162067a7870c4dc6158af7e624ee63423bf6576fd3f723735b3d80856b23972afb47a1daa92fcafe941ca1d1efcbd2400989e85fe123484a0f815ed46007a635d507a4e99f441c82ceb1de09162ffefbe5a2cf389221516ee5f7cc2ac808fd074b64cd5d246ca42c6e2d0a210480e3203f0cae7edf1dd5ac3f095d99704259d8e3b4c24c75715a7124ce5adcb4038116f717683784239b2a7124fe70ccd97c2c04a95d1eb122e333c22f4e74126219fc82e46a67b4a651787c256a222511a84cc4e0642be72c02491b59a4eb21459e23ca612d58d9afbb15a34c369a94c952c0596189efeb7b50bbaed7a0a943f37f3cd97eaa6a62556231ebbb65f46ecccff035105770d3bce843cc46cd1b838e554a176274a8bded92e1400911122767d0cac7b4cfe9c84a3c5314d39ca6d239646d8e2b6486556f824c88edc427ed6f3b950fb11747e864decf13bf80e5608de9a2384bfe4b0fbc43860bec8bc63879d84358a541b3bacfe8564fbc13e16ab3940cc676703d0859dbc90a8d8bf702b578a5c6934cb60030e938d653696a8fb9f72e86058b3b08b95911ac164c2aeacfd59d86049759e99ec8e09fb805958e33dc486afe50550b02dc4547f6de12633cbb4a11e6ad7f497dd1d51e8f7fb1f241f06c90b441061452fb71bb6576759306bc779c239ea9483488d4225c8007383f6c3801b02b0574bd48a1d94c4607333b1505ef5f0593ef1dbd037df9e65543c763bceada99ae838bae3aeff002d1546583b4fe6006152ca4c7c2a4c9bb7ab349812929cd3b2aa0959589c78a235a7cf781866e6ed7f8188c31aaf8e7227f14c2685949c83b309beacc5851ed67d82fcfd84f9050ae88d4d3e420464937b0413204cc4c11de7531d72b841ba8a28d46a0b35c85ed3d98b5d655a0c06a14a61cb8a146ffc1bf863830f21d1ba01c0e710fc0d115aa20c21af2750f11df667123579572ba9a5a73d9971e2b39a44379b01a9f35635b677eda944775c34bf0bd283997ba132277a60577ca970893dab2b80459978b4a4eb0e53a64396588c277cd1153060fa24857a3d79f9b5328e094ea2c9a7db6200dedaaebe079caa1bbcb45659ad229f01b7c388044975f16a4147c6f0d470954edfe7b1ca1f9b5acb8cef934b9c7abddad7ffcfdac4f56cfe1ef2faabe3bdd167771bbcdebc7cfbec038a0db7644577a25d5df305d35f487fd4a72eda6385cb2dc8012bb34d09e24349bf2890cb795c864f61579d48cf6765de36fc72cd1963317b35c1acaa345f3750018c6c5dec811d5f948e251bb5f607ae12696a99159b99a9dfce3e00fb63416e22ea1a41069b8df946a499334efb93fd6ba72df6ca90ed0de79eedab1786af52f171bdf4f99219bdf24b6853dcb7add2a3b11865c3e8134a42b9a5a3d1ade9c8f83dd27c82ba3ed4e33ee68973b4b9c8e046b9d15de613d72f47f49b3d679c58f0e6eabc7d765a74aa53288ba29dee0526b97a00c789dd3682b7c8b69851cc94060393018ccf655e80063d8eec2cb8f451532097f76c57bb8b5f107b0fbefb90787a7d6e0b6615f4f9b1b6cf7a095f1708d853f1ee77343ae2d9cba504038ebcd01b76e5734678de19a57b1e7407c6964557e1ef99257a4af2cd0241e538592240ce2c8dc213420a15c1d4348ff7d2e84bb4f434b4c0e55bf586481b08c3bdafd7779ec0705401cbe6b5e8477c0abc51ad81e659fc4a1e9c86a8980cb5c2a475ff6dcea2702a45e5b9003d803bc94b208de2b0d422a7c69a87a191433a37717f4d7e70a3315a980937839759f57361726d3c1aef20c1260995afac39fbbc1ff17f7f42ab5ac79b1d69aebc6e0890b1f2bdb5c1e4e38b8c3056be3d30e8c3fd3606b840e2c8568f80152b7957f92e8c5a33046a643c5f31fe39686cc84645e4fb31b944f8a3f3939d95b9890cd5305548682c855677b8b3b311711c7233a0f5c9205ecb8a2c35e86a70c6e8b3cb4d3b4902cb61c3590370fa15be33e798d20679fdf7cc0182a51b529c0441c630acb183c385a6462d8e04c6b7490c5b8bef0b2613d0fb9ac7c256b2977f647322941316480c3077dc75dbd1d6e95378b2b4218de883c22ee41262ba08e968c8f3855cd2e0bd0ba05b21eac80f0be61aee813767b6627f02bdd5904ffc108c312b291af992df0181ae11d8caeddcd7237dcc0f4814378936c0d024604eaecbd6be091d41789bf461ae0ddabd0ffd33fb0688bcdc89dcac0b1a4ea2cd1cc487d67bfdeeb0ef904156a08ed34146af20f0abd6f02080e662acc36f4e2ddd23de80f8d6f3e4f391d3a98c9e6bbe47008b0ab47f90d2f42e91184696d77cd7f00deb0c0883dd1d081eadd956280d787ae6850c4eabeba17d7513fdaf80c160b668045db768303b8920c1b3b5e8665dfc14f44e0a1753ca41155ab260ce27bcd1b84632503cc8d6bd4502fb415889a03505edaafef483e0d9bb8bdc53a5629a23902b4aa7324350b7615790f3ae665e42edbeaf52c3801b54ea2a0575243b3fe51008ec232e431ea78427a3b3ace22199525b2481be47cb589c0843b7d619e349cc050b870b4057131cbc4f1602455e55d8951ff74899e000a0c1582e1ae8656e7ea0c3cbfbe64e1da088a5beeb2b167829bf02e9c6b737bc556a7fa876e8332fd507c8d49635a5622ff5d32f6f830c5576a915b9c404fd4815fdc64ee9ef9e5b9589b41f335051bd826a70c16fe9be1f005a7fcc4eaf8d7e738780a1a45ab46eb37365d2de5a83b3e32d21946237bd3d48f11e17ce4f0aa4116ce1e535503a0d1f7a81decf0a52d1c601511e121cb9ecd7ac842d4bc28dbf66e27893fd0cc236c9bc5e665e097174da86420fca4b566aed92bbf54accf85dae989e84fa986398e49d737214a229240c91c8f3eb988a6e6f8ee14f42b404b37fc63933b7e269f0b03e78ba1083080334bc1cfa340f891861f620ac428bd9ae5f1f596a645a0b0c0719d0edc39db231b5ada3d1c1449bbd21c50c5d54c60d29d70c6f9a2365aa457315036cd35c2eeddde501959b25681fcbd894e3a69ed0b25978e36d9d753d6457aa75eabcfc78006e2382920ddd330ea6bf18da5bf4c722f32deb8b5df803b14e4121e025918015a8b5fca3c464d21ed50379e4147e442d8d0a6a665a500fb4e48362fd1ebae211b9b887db064f5c148f81046e3eded66f8fe5454a6405155956e28c754d50341316e5e19c656293e3238ecbcc31f009015938d39b562e53dcf4826121e9cc7118d23552ae70738e8c88e6473e55cb0d27faa3549b6923dbea39c64d41f6357ac9d5247843df7bcc291e421630b1bb038b682d97c9e0ffa0b1e3be2568e4bd21f8ec0c10092afe6bcd7ee1834441cd8aa1d9e81813c4913eb82a31588298428582315f0ad19f8b8971ec8793d4e8ed850323661c93b8566c3faf800bdc8891530e62ff22c306c9d06c36dc447805a932eb4280196c4794d3a551621d7ca423629723cb51635daa30f1730715f7636a2d0468b112b719522ea9d07f1880e78c65ac0eaee4a695c8f1e6906ac70600cd86616a39cc861a405c2c80b22b3539b3da69058bc012519aaca5f43c907b8656a1e24af9575c9f05eb32d006c848d4bdbe4adc2158265518ac0d34e38958695e0e2bdfe087d3480588738641b1927a1477dfdfe03d2a3ecf33337a7af011a1631757a8b39f90e05f454e368a41fa78264a3640a276f8e72e78560b5082d177d79a52c75b626c23db9f47f238177581e726a99f50b673535ed4748a5d53f63124d34f1c13cf181065681a4e1d32cca2c3f7938e162e17cf3cc1e293fb5176ec362db2e5406f84f29cf93b1fda01f5b64ff322882ace58208b91d4a793919015cacf6c26a79cd6ca661bca3bb582a0f7640e413636bb2913d93c4316c3f178c00c578fab821bd9d8f92766569142670e7c2c7c2829cac59b3e23400184d0a053570912f5139184157afe040981d5b7cdcd87ca0698a5940bd9651775be951b024d3068f6e0e0e9304422a3de5cb06c8fba3099a15c36723f3c1089f0abb798a5c3076f1e2efe9d7b5d81cc4d21a78ada5793db57f89069d0df8bc69fb04e4a5bf2545599a998c99186915ad4a2f0a1a6ed597c18b246a720a3df9728e83323fbe2c8f8f89e147e6d205c90e3f7f71e856f5facaf52245770c513532a802520e1a30fc7824ef18615bae2853bad22b9ad42e8a5f4edb4133befaa91dc28943480f0212bc91d9fabb554736f2035158a5fb0c1130846dfe7263b6f72f97d4ba3e7bf05527f57f4c4d4e8a0d8c9c1c116ae121a60c399dc42cc60525c49387378731ddef866539f85e637208a60ad87ec046c753e629286eeb55f36a571fca396bf0878e3b3836b845ea19ef5c8d13ee0f28a6fb36caeec6cd6468d6abbd52e08bbc684b023aef41422ce1e78a27c2182c867b9f573d36b85408c1085e8d13da4cad73ba4e56937bb375335c94aaaa9c9655e1387887263f78d921d6490972d74193e90d00db1510e9926d435f101bb0dca488607d21fa1b726f299b5a1ab15b1d140c9696af9b962b3c16003ed0da39041504da07d9425836774e655520c90c89e6b39bcc64e46d16aa4256d8eca1dc8f6eacb535311ea622aa5f131fc619b80bc69888cc24192039bca8f2d00527cb04d8271290c77efac8cf1f928bc92bd41b4f664cd5b93b672007e124a01f345c524ad73de0b2ebddc2d1e9ac713322f3a1011bd762ab2af538e168f9c3fca22bf7ea479b849e372d776e282c6d12872370c13ee59799013b3371a81fc8baa2e3b035c26206623ba2e5e404b68dd3c7fd0e922c86c5746d715a89a1aa9bb115d139b6b5ec087dc90745471b3b733d40f8e609378a9f5be78507544717ba8ecec7d655ce6219b5858c5d396548b0e07fedc100e565b016cfeab56bb4fd7c503a819b9ad51a9cb86ce4b30cbc265a98756bf93d1a5e34d1fdfd136a8fd41746f7e8b4bc11ffa874781f43f6e7839e4cd821a121ca867d5c8f5bff9894744e020d59bdcdaf50944e206c5a528c022beee9e3fd5bcda60fd6e6fb9de4fa2904edd094511bd32d2e43fea596cbb683ed94573f2785bb12fa3e1d56919060a0f9e0ca1748c31433f02fecb6b0e9474f1ba989574c2a7ac38602b4d21c1e2b8d452be82f6189d0b400a4dcbcb845bb81f99c662ef11e9b7b548ab7569f902a59f9196d87f891363cea83dba4bd1fca772fbe1f131ad96df6534565d7ed05086241af788456167b671cdab623a7f92e97a1e10199f359a239dfada0423ff51e659b7d99b72c48d6e93cad4ee1248272e4f17a232c295ef10f26a88be0646bd15428195aaf03cbf2de431120fc3d27e0295bf73b83ce01c268f6c1cc21d4a3003c48315450406a1d2683303e1f2cc366afeb4f94c8adee985dbf3aada440f2c1cc3935021b86f2b74bcd29c755a8055cb11957732b0a10ab094896195461c220eedf632764050a44c771126d8b85843d530e541208a65b3ea7ac86d5a03dd163508ec401d925e3a66cd87d7b33dbac22b9615aff4ae55169019b3dad2c422b54ce678f951b4f79ba6d81fc55c6a646d2834e627390f744116d627713da75855a83b8915ae9b96d4dfeb224272f0bd5ad1213180e38420f2fa9d7d1260775fcbe4748146298f525b2059525e454c9d98fcc192b67b3e66e77787171d44cee17c3db680f472edc21c250d65d8ed70d495c42800baabc7de6cd4ad136bb1367d54e697bb06c4d054600c15f489551fd7c4d86e3982081ad242649db65b4be9090943ecd6b63a6d260bce93d3609d3c997123d0e0f926e095d73975775c0d19411fdbdeceb64ce940b64616d460027710fefddf4326a2628c9a6ec82706d88ba7084daf8e8273b80256c95cc149c5c38b95bf5d600701643b0e801c2c1aad3d726741f39af5db9de1beff6af42dcc16df450f4a8c571065628ad1db5e1e8b9e93d46acfc45feb857c4ef6fc2dd9dc0875d1fc338d3c2ff37a3e3e5146dfe2bd47619cd40823d444aa063fb2634f8520480408fb0185384e9e2c610fae6a55978151c901f5fc33b1bfb503a244763345aa47cd1b3f99b64f418e36791dce7a2faed661dca3805ca42ffdaf6f20ec87002143315640822001a91ae24d02f8a03c9071eafd21accd81b77c4009a352f973d7fa0688635c5a34eb90db7609e138ad4b4a6a9384ae73964f3f044ad4dccbe3693d0b5c1bed5123db2e80e89efb38e62ac36214e115e7b30333a800bc989109a7cd2a28e0fb24a2d6070434b3a6a87f760b2be93f325a914cc4e58f21ad4c24ec7cb12f48782c884d8496abd2e025b15de356cbc1c24dec445083d3a84a0c832cf184024c9fa5bcf254396c097b94a01a4bf5fcc647a65b806b4a7a1e57f85cbc0d130ef8459ca0a3bcdd32df451ede43f3efc08238ae80026915e41f3abc5acabe150e65e95eccb6c15247d8c00e0cc2b230cbd07acc1aad1593f45ebfa5befbd6f78793de569b5c2c333286ea5e3a875adac6af8b8045d5f5d6378dfdd324fceef66fc3d45f364eeab5c12bb8f57a7c7ae9bffec4d914b737edf01fb884e46f5a94b3cfa69b03e6e27b80bf0a8e8e022c708241df98852395df025c220b876a05da96623c2a7a8fd72a99bdfd1906a6596e99c59856568d057ad2f47f134bc93987442f38c382309fdbd66fb4181389e3e7e112063388c1461991c06efdb4b32b5c2fa47123b74b4c497b3bbbbbe5d2c2d0eae3b17fd50306699c71b2bc6ad0a6e132f3258e9326f3985d43d4cd82d38ceac32535f0c415847fdabcddf14078c08f7974daa210bb620899ab69fd68c963f64c8e6faaefd2e49bd60e814fb93a449c48737bf64e93a60dae901a16827b5329d521cb54672a2f86547b892251661c601751a410bcc7e4a3630973a80f4a0ba4a04362898527de6685c22313bb682124db8eec7c4d54c0c9cef7ab674653d5608ecee4569906120e6270692e4be15fb9c3b8b9c14511584bec1965a3e3148e78ad57100def6ae91b11f70ff8018e3855cc68bfda72f89f96bec74b63add37f8edd6f67944e12369f7a9bd5efc6a74fd63c6a6160dcdc5c2dc8d052f243403b931636033c736b5db0d9a5d07283e8542572286599662a85910f115be3981b4aadccc4b5f675b4fac4261535f51b15da565aac4227331860b8b890c60e284c3ec70c0ed296476ac8da903815fe0d35cea75a747bda00ea695ad143be79f6984703400e34cd889c13b8290ac3c3b48ffa93afc6c3d99f83a91d0fca998f45b78d523dc4914948d7062bb55e7a187908dad99130751ec157793ac50b829dae04806514d7465c8168561fc2568debf12ae1a90ba2ff7923f2fca74ca47276d2348f07db6d9b90c988f6d9ffd5858225d268a23efe632fcf697683630fa72aaa7183163afdcf93e479912716037c69514817f9a1c2fa286c21855833b936eb5e474862ffbf7f82824e790b9fcd7936af1e688dc0fc8d501be1f692163957e3f5a85803b8e3d9a8365128de496fa36485401a27c15d3ac680d0af8bca09ab18975fe7db47f0e2f776ad1a3d09b627f1043fffd69d407e70b7edaa0db8223302709be92447ccdc926f3d72d97399684bfcd7ef52496f7c48f8ffaf57409ecc205e6ced6871e8a849a3dce89316c217a86336ddba65333dc39cae381d6b70bd24eb09b3499c98d1e4012e1e150aee33ad872df4bdcfb4c7fb4d56879f294e62f33c87d79576a92feb510a6baa9bdd5293cd311e2d1261ed85fa2e57781e90b9058dc3c4b8f4b3c892e8be4774a20f9a661a53f909aa81824f9f39a460468cd013db1f80c492323362ddb668ce1d0008b0bc9fdccb9fd2270ab359f4db9ade539629c6292c70659b22a573d70cab5407af9fb5d0f3c613fb84902ed978695f26f4349e68615eb910bb7f7b1c57ac865d5f9a48268675dce328a46a7ee928196c2b7d13e10cbb067f1696da67389868d1efa9ed0d7d13c15cbd7224522f59a7ba12a6f891db8909d9cf8b71772dceaf2b36275d402da6250b54f9c008a1b1e4a5edb72c7bb33c1bf273aaffe5cd380f4dd1ceb3ee4d6a1a434f70c07b102520c78c6e34e7914d2e3e8e98a84dbac316356f5949b8344ef4294cef6391080969bf72d196f9c5de5ab772fbfe093794189718c56c389cc82bca012d49f6ced68fea21704b26f3cac6577b3951652028e7f37f8ff42ac0165c01816d5add6e90d331ea7c4e5485f4a3d2f411a5ea6e70ac6af69146500b5fe6776d772215d735b59e7094af24fe620269baa95f87d6b43c9ae464be95aab31a09f7687044a3a0c495c5448cc846a87f79059607fa168dbe146234f441f10930d6c4fc27cea26b258afe2f51d64e0c94085ad184d034f480e4ae33ffd4416503f282266443680bb9c3115ced10f0cdbae2920448058063d01f1f7988780e24ed05adeb0d851381ac269c09bfbb9ba4374517c44fabf9d87baac7deeb45d25956ef7cb0dedeefa58b5d425da204ef1ef281cbcff415eb73d07e72870bcfaf0e3932804a301cb6df1cda120eab2dba01a4f4bc00a1885b9c245069550f75788910c0bbccc6e91593bcbdf40b55aafab51c0a2d6889983f3cc211a4dc6f9ebdd6705a7f2682d5b3870aaa425366ee7154623c285c373b010dc0bb52077637f85bcad1ba9184c618aa75a42d571741cc105dab4373ca49ed366547cb2c87d81aa11d948116b9635f1ff05928a9c9dfe40ae875a89eeae51c5cf4fc98bec90e8dcfcf22ec8e4e4e6b411df9f29428734fbc8da3d0188e9d6f4543cce6720de92329efb3999b9996e8825412e8e08e261ac963168bd9c048b63b83cab295edc686e6a7955037f20c98303d455d3156831790d266250b0b472cbee8208689de7c8dd6792baeb3f454b6b907d2b973c710a5f47324d3f09c8d457634067ac6c2b5634c4e46e89c1ee7fa8e3a38cfa2fb65c99b8df938da2615c45212eb2b022576509302f5586cf58062d9be5af30c7920c47f30d47b112e4f97514235cc8858a1e807a0b195f2d2983ba027b9f8247e0afb8779fd40605ac679d1eeb2fbf1ce6b322de48c1ea1304d96a58eb0fe6a5bf8bbd8b9b72f25dcd66f3eea91373d877dca859307a7cb2c8e6da69bb529986152edcd0e9e4ed3f67b7bc7de9b9ef0145a279f37957a7f9c08f4c392addb25cd953bbaab178f0394a66e688346ae63b3c1ad5e844f952033b1b6482f33fd39ba8454cebd99a22e62bd12d885e9b11e200316bc38b5167211f84fee855e23094c46063e93d560146618339b09feee660c44ef053440e101df807959aa556ad289c60c3690e2aed0535a8ea47655fc60302ecaef2a15e7247bb7687c4f52d73e57df9823243ac7a1b200ca962070b40ba174308eabeda332479f6403c06026cf4b83f9f3a0e096dffc8464c3a107bbdc507edc9876185893a8242c2449d106637e5c312d60f20a77edf77361f4d9ea3e67dc962149afe49d014fbae1bf7146b8dc231eb5a2c9452e04ca433f50108e4a1658c491859cc0496afbc02aeda5c71244d5ddecf50aefe24bccb93bccaf322cea1476ee0493fd3de4e8fbb7233db7f6208814ed16a2ed168ee0cb55ee7eaa286676987baf223898b7eaf5d36561ede1f8a8e9f54c9aaa62d98b852fdbfeb6573412a722b5c2d3cba495b9652296b29f53d18825a3181c7e2cd71a2ab8a57bfa26fdafaec869175687e4c6f67ba0c5e1df5bdb69842543d4f73c5157e3b548a419b74575a3b106dee56355a24b57e57d1e7af889fec79b51bbb7df886e583762961149792440bbdf3b38437c16c989a71d37c2fce08179bbacb9654ee9067b0d6a21d2010039500e2e4a80987dcd4452ad1bf8ed1860bb4b729129f277ffd119dab1090a02ccd712c5922984a40f9771484a083fc4d27d570d33a6e8d1702d06a021e09a82ab1b51c7616a9f23911d28b9c94ebe7db48d5d6240c72528c9e6723e55f4419b6662ce72d6ce2b793c8216ef8185ab89efe384c4d8b58436f7bc522cc3179e777c6749240093a62c1a686ff9681e43b9c74db2491e8c52bdb15d40cb48a9d81e728f613eea96b7d373bc055dd5958bdf71c81173a57b0cbf5f0aba17c5522621cb9a7bc8c6f1c291b49f1498f02a51fbf6c9ea17c1207200696e5c702088a6ee62107eb8939e1dd3a282980b5c3a34deb660f17471356d7fa52c038e0f2a321b3acbc2c9ffe9da460327fd5b540b37d40d595b0fdc4f61a198d4084bbe0afa31aceac364c7ae1539fe79b6c448c7345b0640ad891f68fcc0bf3b477592b61391764b0b5e6f39f6704840b14f7502e63c82fd972ea92587fe88c8161107beaf76640bb91f493e0e3494e95240cde57c58c9352fe67a8f180d8a7924d8878f3a7d39764999c503f8601a97351798032475a0001557698d494fc3fa962490cdbbc453979ec994d71b6e04de21f6ebd0e31b699c21b3e528eeaad870eb1e1bdee3e254e376f1b4c09d4f66af2053034a38cf1b6345b8077f76a939be1e03745c048a1b9fa259200eb39a0ea58f06da1858bc8ee8208548d60c190e8e225d43fb745140756c438401aa8f55709fdb9774f031befb573b318101a964b4785910aa29533b627acfb9cc32c3ae2c92e7792cdec7fbb185b4bdbbedbda594324919450a030a4c0ab6639a3e534c1e87722cb6b5d66a59799da06a75a87bbfc4f73e3961a6abad8f565f1a87b46b253b597969489bfaa5f98eff4c41d926cfee6cb47e89ed121a6e6e9776dba8bf95c3df71f7decbddaa6dad9a9b76068fe7e29faf3aabadb6ba095f45f522f587545b29e04d9f73de7befad95d2afb57a12ae28185deaf2b45da46378a0569e39ebca6eab4f9875ce1f53003c3cf8f1d790fbd9a48823ef77dbfd4e6ca187b4dbb671fac7fedc4099bc3fc4394e53b93fa4ee6b825b8b44a5f58be71197e4b22e8032d9537fe0c86adb0f41486dab4f58ed59ce30bbacef1c3813acb3768a3974d8d6661b830e5fe4ecb015a000b5e8724b89fdedd9b4c2097699ff5611268abab55f8dbc5b9441532cc9f5c2b660ec2626656cfb3abed3c1c8d52e7e9bf9bed799a5960b27b7b06c51949f052b557a0053d406185290c0853a469e657ce17405942e8058828c165ab4054e3c080753022d4b4cd03072e18ceb84359d10625770a4b7135b8c31ad5b0b6b6c2bc654ac69d06de2540ec2195ffd246ceeef88396fb1e06361470f57462083b5d65a1b26ba090f5dd7759d0c931d42ac20d575b6c81ea18402243856e0c4c916e44e1a2cd8768a34a6d856739cdef0f5304b3bb6fd314c13dbbe8f2076cd9e58c2d4c049f1585b32ddc9745a5a57a0ad9687bfed73a5955696964cf31c6f6bc9ae6f33573feb5c9d4155bc06d2304e709736d460327b830c2a60b84dc03aa2a880017b7581c24b142c584ce0c3654155c7193a8ff417266ef18504b52f637c49c15d01d7c1c549af592ccbd216ec585f098145d40f6980f9020c26dd0af003e8c8d2058d5a14485e6eecaba3089fc205072a7580414a23f6820db3d2818a058838828a23a2e001cc943ab63a6af0297f63f0292a7c516589090e6be4d0848e5ac7139f3205192f68010b74c032650830b68e166e261a41123934b9514405d418f60b28c7ad72707478b953767080042e20420553e48002cb1c4f170834c8d0e2c54b0aa8840165e5e8c27852630e30586a4ad0c1f4c4a3230ba692d5a0a1f646942ca27441868de29aa8586b6d1d6910118bd24695266c1c576898c8de04bd61883185184c8680e2868563a68a092a0aae73f766218a78a14916636001857de3de7bef0bf7de7b1de7b321979c8bcb9456450a2baab420ca153624ad60dd20c114ee3a18980e1d7cca5bfbd65a6b1d37c132ae306c6badb5ac1f8cc074b4e015e07205cc0d715489c2826d6397aee7ea98b244185c487185872d7498c106e8c5a9ec307989c208249c74d9e2450cdf2577eb130754a1220b2b5610620825a032930331b77c56fcde7b7fdf9bbaf7deefb9f75e6f8245c2102b39164e4597236440c1167048598313624f2ba6cfdc1cad67fb1da2927103132ce450c4972d4e7250e302e1745661c61b42447959c1a9491abb1c83f430b90fbe272ebb9868d509110d4845332d7480916245176c44c5ee88001d27b8820729330c81061a335c20688ff5a409142101851614980185c919f5c9b6d65acb79127447cb93a62592dc5883892c7f5b3376396edb596bbfc777ea57f729dea453135d4aadb05b07ae203e381d3db76d9bb3feac785e1c6b2759da6d279d5fbbaeeb6aad73ce198337e7e3b85af9bb969bf31ab9a59452ae6a6e4e6b69d1b539635eb1d62ee982abf375f410c7b7de8a63adadd6564ceb10735e58cf486ff5c995ae7defb5d65eb71f9df2d4a9e53e1056f68c1decc55c5fa0e6b880cd57ed31b2f153d8ae3884d5eefeebfcfa1da7e9bd755a365c312bc8dd9e58be44c944c1f2c5cbb595cb5a6cfb2d975de34b18643061f912c597d92e1f666bf021e60f6b8398406c54f6cf58e4fa9d53765d4e288b347fd8e7a2b655f2d11ee1a3fd991bd91f63a5ca6349fb78865479428e0ca264b67809c7da2e16c67ad6ba5fbf7edd6d4d19e5595fb3da9a6baef928cf57419eefc221d3d4720ae6db38653a97b81adad0a3f33d3d3ec282c0d08536adc06553ea4e8a9c44519a4d4db66c4f813e11a528e890e77b2ba35cc2ee854d1fff5861122b74dffe156beac813cb164d2814859a3e02981f2786dc73daab6011d7650abeb913e8a6327f8bd8b66298c413b216546275086443b73a04c26fdfeaa0d05f139144a4a7276cfea09fea38a8da53613372e4df166a528babe8ae6861a6a5fadae2acf27449cc97bf335dd135b1fdbba3faea8c6ca0768697b6bb6d986ef81ee174ceb1daa5edb6d2b2f84ede78692bf29e6d0496ed78093795798597ec6c0a71a509c4bfc4534cd1fa8bfe4afcfc45bf7eaeddd17cf4a795faceddfef80a9d1d61d96264672bb775e69db5e24ffe7889ea12d35cae106c47f39dfa7589f9c3bfac368909047c95f87546622713431128393f4cf23df8e9aec8887318d819d1cee85d7966a41add67f98a7cbfec8a4a58e7d415e12b98c9477fb7b9217b2011ceeb424f17f1edfd5cca62c91f436157dab21d3b6dc74fdbb11bdb535d6774847394e24db4567c74ebdf19f98e7f27c577f2f6bfa1bab44b4a76367ff833c965575b62daf475dce89c521ef3843779b21b4d30bcb1050e229696a60f65327fd08f19f19176a9d47b294f79ca53eeae8de81f1b3e6e65944beae91028e87bef8948f08948fa34e64b35aa42d527a79a12da12136de9092aaac66a51952d5524a5d912d3a6afa4f2f8d28c9a4f3523c82e1c720a4cf68a60c8a135b3004396b488c2e0e20773773f9b7041d49ee007aa1dd6f77fda330b305b8948828f7a041f69985ca3144ccdc738d6200e3bc26965cf92ed3f3f53884dfdf759974b5afbbe919f1bf245a27f50e0fe84a1d84e3dde5048e13d0b12b95da7ebd71fb2a4b53df09142914bce48e5b13696f2d51873c8e6289a638b2da23424be43e7a0593c4ec442b3eeb79417796289e369c711b34634cb0f6dda94329d506dd45394931c3fc821a5a44bd5c67040da3348901d85b44b5b1475b4e95b18ac91950206069b17e4922e0db17141462185bc2d94f983be7d610291630b1639b26cfaf48ad3b2e0af8531de36ca815cce1fcc397ee0bb8244c22c197ff741c57fc10fb0dea4c85797f5bbb7baaccffd905ac5b9bb4d8747ecd7affff52d92ef588d8375c9b9b4ce0645beda25254f150b490b9e6c9cb24769f543fb73d7bf3d1df8489fc6867cafefa9edd58033edaa4db0bf39d3f6b668fea06f13469e8ee47ad65749978cd4d7d54b7c32c57c9c3fc1b0906429f271d2bf456e762a886eba2f11b65a051fe784c148e5a11c9729ad7489e3e895c953979a9036a54e9b5237b80d23515a6bad4c3ff88ed556e623fd716a6db47062c30565d8c4a8c06c6aa094cae0f292b311a8a53c3f1b79571c5f824d95299e6c6898765e31e24a4e0ef4030ba2e447094d49ce392bf901a2fd0029f95132299d4ab618cd25ea74064f6661a0d1d8f4a94ce6ced8ed6c30c7fadfabbe9c3418c8fd881b7c7a2441eb7242c160ef9af589a983b48f603ba434494aeb0f54f7ea5084d4e307da74785f871cd6615742c8e950048c1f7c8ed3405ed0ac1dd8f47e3ae42e4734dbf75e4e9743ca49bbb0cdbdd789256c77effdf658c49f7aa0cdfbb0fbef89c8940e55a90f3bf081520f7ef7a00e4aea74d0ac4424de006c73bafcd9f783f8e84b609bdfcb91f481ecb905cc4381c238a827a71a8d1efd91c51d14311cd4dfc421ba82511a4ca4750eeadfb420d75f3db933ea4c36a661cab16b94d3ae7fb46b19bbbe47e4a3b5980f3eb75f27da38caa06289dcc44956d06a1128893d2cb9b4b56b9f2a4f9dd557fd5a67351b15fb4096452e6d4c1682dd77e9ceb6acdedc1996d9dae5f2825cd699124bcc1d26e6cef7f5eb1393a7c6eaab56270aa4d6d9ae5f8485ce22454022df17791ae5d9aabaaff26aacf2e0af5f9d3c95bdf80363b1fa825ddf2b626b768be5b2eb17b1355bb335104a6c3447c6e10ffeb9818e623192e37006e106c9b74b6cb4b1148cc484d3d8a8f2606d9f545d72696b404e0489f1918fb543bed9a50de173b15c025300184249e485f0d9a89fcf417a452c0248c4d326501d52950ea93ef2fea088a360591bab26d97baa7223d76f81472696ed7975e63b9eb63e36e0c31cbe33f15af1d7ab016091d4beb3f9239c25f95475541eabba75d7980ecb3c2cb33a875cdb1e734e95878bd1a3269048bc3900e349ae5cc874dbbb2d61d7d025aad8ad98a1b5061a0c604feab3e774c209b717abf69c317bd2ec79b3278fff725ed9e183f3b3041947c88d8fcdfb7fd3c755f3feabe943f3ceda2eb3bdb57d667bcd769bede1761cefcb1d18ecdffea5b83d47e77e99c176008c1b0cc3300c9ff331fc09d2f0c39fe00e8d23d21b1b17cd8c4c4c5e815faadbb0ad8e433734bea659034600bbfe4bdc95beff5745e6967cf03254761b2a72f95597eb2166179572630b8daa3c4ef36f79f72d1d94bb0f8a799a67c0243f09ebb316cacfca3a0bd1e8a018dde2627e92938c89f9989aefb85a9f3fe67dacb527197f962a862e23ea21f555935052e6292903819897897999cf3af49789d1619298cf1ff3598749c0a779f0695e66e65d9f247c9c0f1fe727d9d244244b872ef340ad97d14149a90f0a592d1de20ffd65521a2807859b4601e8ebb9ac4fd27ad6ea59305a1296d04aff649d3f74994fb292f9ef85543ae885643409e55caaf912b683e66fbe7c9b9fa48c0e93d008814ff3dfcb88aacfa247c1f067e61930c9994f42f3a1eb1fd72ba1799c90c7139133333331cf4307cd7ccc874f447a61f833ac176abdd08cee00ebc3e7f1a1161e3ad434565f35bfe35bcffa92c65a5ff310687d8d967908b07e8796a1647e4ae6d0bfe689489718ba0e7f5c3f83925c03815fa3836a1e7cd71391a138491a91e63d97189404e4fa1a1d94c4804936f95e48a8465399ebc30fb5843aa4e59bb7f9d57f7ff31058fd8d0ef14f52f510f8de4687587f124a7a4f49ef8738256966444a2a5d8922d3a298ba5c7c2f8d466362a231a5f4165babcd669b5e32b6646258797bfb2b15f889b3e6faba29c758e4d29d4a5f32eeeb84bf3a985ddf8d42ea449fdc09ca0d87a250dcb6617bbb0c95ed2e2d0802fe4d73ad6b5b1e08f3c5fd8d1a79fbffef884cb7e53c23f307379940c0d9d647ce8544e69e001ad0e77ea4cffd0640e84847ea73fea09fb232a9e9c33dc7bd377752cffd6aee74cfd99432bbe4768a763fdfeb88fc34c1210d1845b060462c46564e9b309d280d7f4dd9f30f24520326fff4f1b6ff9c5e80ed02d84efbaac8f851e0451539f850051570fc34e1be13676a57fd50d9b7edcb50d979ba0fd271a20d15d96689bcbd0589dc1dbbfef51ece52e1deb93ca36132e616a01faf3c78b8a68f7f51618e9587888188a3f3389fb25f86ca74972ed7f47110cc28d78ecf55798260a8f4e68aacf3195015acc83d9587c7a48241063a3cf4ac2f9df7952a72fd921e55249ca7bfe3e911fd6147c5d154787ce5c16d9c0e7ca43e2346a6311566b99cb422f6aff8e18d8dab8666a61501122640810a5c000325d0d284e9d36d60fa6c5f9f0378dbb639e79c736ed8f21029c9e3e321da94577d423dd58244408fe811ce730d001261faecf88c53410fdb9ecac3830a794d20f43dcb833e97c2e9a06e9d2b88cbf579aea6cc240207c1143255983e3b70f68f08b301400e9842bcafff80e9f33d38b9d8b5ce2f6618bbe6569d62b46abe9c63ec3acb984f37138d9fb49986fe72ae91f31ff8816fd7868383f338381667478e9ef3716e6c6a68b63fcd4c2b869557f3f3f0e57a6aed517d3c444a62c0a307031ee2f457cfae3b78e7beeb8b9ad7337de8aedee355afb7aaecd36d823b9e07fdba8974fee021d28d8738c90c7e90da3f5854a042c2af1f82e973f3f545307d6cbe7ed01011a59452ba52819f97eab80d5fd6f743e98e39e79c93db78503be444a1ed91a5e90a53d3952b4d50ae3441b172c3d40465a909ca952628569aa05899536ceddc92b1f75a5a6f9df8de6badf87b628ba9c0185313767d6aafd70a86178c31be526c6b49ebde27e1ab75b17cc2601cbd73ce6aa9b0d7526ee3b8ed872258c8dd9e4d50905a31e4ba671314205c90ef9e4d508e9cc8be6713941eaed5197d6c8152c3f73a4fbc3c19c3870a7bafc16023f0a45a0217c05133030d23a8dc28413ca97258aec32eac91c4952e44745dd7754d505e68ba418dade9062df6ddb309072620924018baa31d46a0d444cc920a5ae8c10af0c96aa90728249c6862a57644136b7a62d4f4a4a9c9c951d30b6a6ca1579e888a226d951db440226f131428a0c85aa5288928d21211451735d2bb9f8b58861e868022eb1ab3309c486ffb5cbc2b7899e189ac2e38f122467adde722009490c561447aa9cfc5c99484932846b60c39d27822bdef73f10585172e8e480ffc5ce4c0882f31d2537d2ece279ad4646490b3e0a50e2872287f598146a63a2e67190ed470b2440e51ea51dc399fb9ad38b4a20555264c102387602ec4646412d11010306b1c0dc16638c1ec72297c53f85a71687bda3e2b062525a16aa4808a181934647ffb8ed343f6858674ac6e41238aeedcddb15faf4eddddddddddddddddddfdb971fbf56a3b3a3b95962a4a6415e9aef733e28d7b471f9f0f1fefaf6ec81a983c46660919983b57ecfb78c95309475ab0ef873ce4c9d353f1fdd5a5bae4b687eef34bf09d7b55b2fb441130ec7b779937129f5409961a17fbfe08bee34380e0bb6963fd3e5e577ddda94ba2df7848a5338b5cbaa6f8895c16b91cbdd187f320f1d71d61581bf1f1dec79fa5c8352de4d9c482d1be29e0ed4f3155da46607d877ae1250341acdf59c403233ede12804114417598af9be2bcf5fe9e2abb92fabaef3acc9dd45f9992db32731e007fe9da32af82bf666666d4cc8c9af99a1bb99c4b6ee4def7bc4fe47cf47e88f7d7033d0489911368182515d434bae43e9d75e9e9d2b5edb562cc8c8802951151b8220a544ce1f6c082f87891ccfd45914b5acbe2dca92cb2f55aabffb6367fdb97ca22dbf7e6f4b1bbb4de0e581dc79b3dd5b5ca3f670a77ecf1f106d13d3ed6ee4af5c1ef94a64a3ede7bf3ad7d3aa569cdfbaa5d97e32e69cdfbbefbdf7d293ede23afd99ea61304a166574d7f008d7cbc292ef290ea3a15956bf66c6221b6adb53e3eb0b532aaaffb961a65cef5236c4ce912e6a0532e675621a8cbbe4f9b70b0e70f0e9cd933830bb2d6c8b53b3d9a5bcee307c05ffad8570767df4e7399db5cb9b6c5c7fb3450f99b3a579be047439688d69a15a4acb5b683da013a647deea93c9ffff740fed1cf3aa83efd20dbb9bae979a28ef37cdffd7f1db7bb1f7d27d5751edb5df7a9cee563f73a9d36a11e59224a89ea96af785387d26aa7cf56b504e60b3f36a36763046cec3b1f1519833deb8bab2f25f8374dc2fc81dff544a64690f84ee963e3c7efa3be3f507dd7e1f6f62709f4436212ea0bffc5f8370df311bfab28d7c7efaa3cf6fe120dc2fa58f1904b97972b8ff7f4bff2b8ae18b65ee6efbb18c63c2be6fd89c89418829e18829fa8841e91d124c488a108ddfb0375ef3a2829e68384928054efbd50fe8fd140fe2c1d24a47a4f1ba92faa8392b6f71ed440a95fe920954e3d5296cdc19e4d483dec0af80882659020b59c340cf371fc929f23ed1025a29b75613e7515975cb6765dddac7ec8a52b84eec331727d174b97246cd677a215f3ae39e7bc7a170a544ce10e714a25a543ab8d20f15775b9a0c825e79530f0f37bf4b349caa5cb5579429bfa984fe2791fe3bd500cd8a9763e552842cca73e89cc7be5cf36c1feea4bd8663deb65c418d1c11072fd60db824458bab4dffd909ac5b9ed12d8dea84a1c81840a184929f11187fbd265b5eb468b4c77b904f6434eb4d92e88cd29e941f893bc9799f9488f80c825de3e853b111b6da2d290e5628bd5afa2726963aa8cad0cb473877ed61d96697cc4696cb45d76b9b156ab516f4b715b37c95a0a7faa2c439d8e6ab47634537343e90e0c3cfbadbe0a8446a3d1949494945aab8a24936d0c2be9be0f0dde63d10200aa7eb464b2b52c203f02f0e37b7c00fe078d46a3017125178de564e0eee45c46cccd1c6d53b06e9669ac26159186113944b56872225958850913260cb981a52cd01865c16573d49ed5d50a8d89268b120001cc99f37384e5a4baa3edc711e6790f87395c996a938fad53b3d99a1e55cee78ef5c2d682a8135ca43022876886502293c02ff3b65ecc1d167c87c6e638b1e4f2ce9494b600914b2cc360871e3ac6e59dd59fa012fc9b56c27da727c88089861252d470619bafdf246c7f5a4512b6d5b66603259777b64aa15ad55ff1045a9db8f8cebdfee450f5fbe935ae4b2e5da6ab938fdb65f753a8db562e3ed62635f64276ed2951d840228728104414914935ad199a8939d6ca9bf9d788375a72cea772b450524a738f69b4d632229e89471c6b876c736d131fab138f8d820543c7e2fba683729efba0542daafe35e663d11cd9bf492dca11ed53f79bfe8208fde7be3fec8aa3f828ce58c9b33eb9bee4f2ce9c5c2de4abc412738789b9f3c4e4a1352aa4228d81e5628c3befaa8ad69054f7de94479dfb3ad0a5aa597dac96f781ee97060d512ebc3022557e69ad9205098e484ebc7102fdbb1eb516873f75d60107457072d32584f15484f581201843298d8a3992a969b5686c115aa8389143f4090a1a1994e49f0aa23ad11a5494d3ccbe4a8c1c4b8949423acfe9e894b6db0bf5e8f1395f6219b544f8c8893760c4f466639e06b18cca4f7dd5bff9a2c6666cc6549d56a82c54172a94c9e3b41aa3425ce98b6a83cde7bd460068b13ed5332a1ab54b55a3ae51a12a1bb58dea4685a3c651a3ea1cf54b0553eba8615a33333334251acd956c280e48244aad9693aaddcc420ee7ab2b983c3789f9aad3877e6d6a62d7a7bb46911d1f6b875cb36736493676f10840ecc3def1766c0d358e7311b1469c0e1d27e1be8716eaf15c0f8d8d2ac6622767bfb4418554248bc6aed9a5ad5521ec1939ee9776cf719da6a1977241beb3ca83775832011682ea138ad08d69983fea13718d65dd0db9b476470cb30ab1eb7be1e7f75e2bba67edfc413d1e14830f0390c8ea694de2ab4d30d51940a8e2030968e410d55286119904da251b2eb26ae59faeb32db9b4b158e5381f524570fae851c1bf611dcb253d3a32810f3f4ca18224c410449ca08a92112838420548cc9458c20a0b98d8c183070ff15b89620e48e4eafc1007d3e37371923ea80b8b3c45102e53ed2fe6a9c79718eac60b227c077c87d279962bffac3c50364d644f92d1bed506ef7dafc1f7b833a7da0c33e1257c44d619fc4a0c1aa24f324491491a7c8f17dae03378210dbec76ff01a7cce6f399ffa12cb382e671fe26d81072c4c648dd56231289f71b3ecaab3076d4542f2aeead360030fac45d5d200607ccd68f0751b7c1b8839af81987a4ff5dd3bcbd95e8e78b54c2693dd74916958f69d55aab2e963a843070abd7ba0edbb4d139158c864d545cbf932c97ad875e7dbf178684c890aa152680c4a4f6420abc1862838e460b4c308a4f440822313f8f0c3142a48420c41c409aae4e8e8e8c4621c1e5d2ce9e726b96ee0d1d6761f148c37a13ebed506c316936da5d88614db8e629b516c8bc546d1caae9f7f88b3be02907bcc2a96fd0ccbb8b0b1cb54f18f5f7dc6afe328305276fd61e36c00c49cff618f2c92a8234ed28a3d74685fa7ce7a3cd0f63dde7e0f1d94643550f73a41f8a36da61c2bb3b19a2372a2ede2637d1fa2add557d5409cf5659f6a19cb50b05c38914b2ccbf99ba35da9beb4527572028ba4542f986159141febcd16b97425ea4aaee43523d5f6e7b66b22394f58a9024cd17485c9a52b4dd88705ece62cd8d82d983b9f7b511d8a07998b41279d54890a797d7d3762fa8c28983e007015381218f0d88113ded8b86a68665a3231acbcf25181d65e7bc1d708002d3e063c76e0843736ae1a9a99964c0c2baf549f0cca65230cc8116743073568e410d512861299943f70a5b21e8be559eb7dce8f7fe6243a8f7bbc10ce400b71dfe3678f1e2b15f801f930cc258020e5b5560e8b44abecfad6d322f7d0f99964aa7b21fcdb73df7d12fc9bd658565f01000204c84552dd8842c644060d51a72f686412eb8768d111516492b545acbe18ff9c9487974a3cfb9e25de68c942494039cfe990f5f88948a19ce7b4cee307d2798c5fe7591a2803ee33782232f5392f9404d47d062fb4bdce0b759fc16fdf7dd6255709b0c9f0ecd81a25f5395fd25a8f4f7d921ef6534f4426c9d9529a53c19133d071fa1a6dd79f260320000108b0e33cdff38044e87b78093b3dd698869928123daa75e1c51630c2707a81185cc828e3e90c34baa8b106141b6db801471c1cececec8450bd60c30a247288ae50c38246729406c16d05f87649a3bc0e3a28b271505a24f008a644f8e8d341071d28a0562bab9c4f596b65e3a14ad88aefd08e8b6bcb117bfcac5d3962d010ad928444ba9c83fa2971a80e41c7118953ba3e5075947ff524cf0c60009048b562ed013e6beb0b46c496c8d44a0c3d5dba95551e7a14b345b1ac8f7cf46a453cf351868f6a7d61251f69edcae6f2784b8d3e1d1d99c0871fa65041126208224e5045c908141ca10224664a2c6185054c746080cf000600efb55a7c0c78ecc0096f6c5c3534332d9918565ea9c0cf1b62efd29d0559199c6811450e511d663432e9fb996b8b75f0c05789914b2ce348ce1e39b96a9686eb12fec41b2d93ccf164ae26ce93a3694dd7aa96428209d83cc044eafec1c7221f7cb6c9aed808cc05896059963cc949e2071710cb259661a32fb9a435500371af82c3353e0a934b5afbc04ab545d6a6855c522d3e063c76e0843736ae1a9a99964c0c2baf54e087007b870c1902de4bed9cd35533d38a61ad54e0e7fd7c14c975e463fdc167569c82badf7010b804bbceba2d5b620a1aa25bb23022a70773abdf15f6cebf739ce375fcfeddf4ae8c1d7ce963971bbca6100f46ce5e1df1e76b54f28979fa6a5b719bafb6952e3bb0b9a7efda8a48460fc691aaac8884d3d19ad3c1b6be8bbb530867a7e7fac4cf9743325221204c20fe5cf29623dc9d5ec3316264fe802213416df63bb23eb074603dbeb3a34976c4f8e34ae68ec5f131c3a370c930b3d68ed04597338c50d2c10b1cecc5c15a6badb5f6691dfb363939daf7bf3b030ffb36ed3b432ef3cbc0b4c3593187cddb129ded6af9e874832d32e50937c5f08651a552bb31bcd072d52c87c30d3488581045fe9abbe472930c433c2942c588a9898623304f302e5f7cb7bfd576d6766038f9a2a525cfecd9e4a40b0c79b567530b4c768c1a39b567530b32ddd4c20e4d661451b2d8a78d8406239dd1c71c34dbeed92493a2bb546653de60d3c7dbdbb671dbf65be53601ccd7c669d8fcb1bd77bf0c95ef9e365464ef7e364bd0ffdf7ef4ecc7fd10df9e1337af83ed7d83ca7e2588bfb677f1a68afcaeeef36f9ea6e26f9ddb93d31cc7d9e7f073aa2799fb6d7b2edcdce6a538727bce77b8ad07e6e3e69afd34b96fa9939579020db3800dd40f41984f63dbea0dd4fa1fcc6dc292c9656f60bf97e1cd11dc0ac7dac0fdc96553a16f9f521dab1f02cda73f21e031d2ea58d56112b20a0d4d2e647dfa55c72617923ed5611292fe10af540d6f8ec06404491335262348a8c492ee0ff9f69473cdd5178ec55cf585c79eb18796843747b0d9b38909d96e7aa269cf262688d8138c3d9b9c68da25f8ce6c7a42886d7f89e39ff5e5e2b4f88ff565dfb90fefd3af1fdefa40f4cbb1a7be7e6879d3e17d1d5e1d94b47d124a724f498e7b37525fa1964d497d85b4aac3fb93acef3ff59350d29f920e55bbf0e6e3680f7ca4f4a9537b31f5c0776e9efea4934e3aa9135dea03f397aa4d59e09731ad99d497342e9b4d71766cfa258f1771c459826c64fa844f1f8429c4e6e91f993eaea78f64fad43cfd10a6109aa7bf80e933f3f485c8504ab7d874d63605e947537486b129dd28a6d4d259c6a63f6f6e6e6e9ef3f1e627386ffee62788a36f440f7c9c6f33df25d6d0cc9f69c9c4b0f2fc950afcbcd4fc6e9b8faf9d5f7d4e280e0eefb3d367ab1f06b9f7ee676f88704fc1233a182c72bfde23f737a7d6ffbaff07305012b92e1d047f13eed72a5a1032d85667eb78f69bf6ed5b7b6f9eeef444ee37b17b2cded46fe2fc2b72ef893a9bd31ff8d38e72f62d58c4f16fdf9ef3ad88b7ce9ea2ceb6fa299b40dfbdf0a6cef681d3870193643d914b6e5f7fefb93de7f5ebdecf7cb9fa3a63e5d952ffc1905d63cfc6f11def7d7c134fcae5bdfb71df136d7f9cfaba3b4d9f502018e377cd9768e9cfa5fb8647a98dab8666a62513c3ca2b15f879a98edbf0b5f56686e113ddd00b07d68109103608719d8861c30c36442142ca12464a174234e174827b831c735035aa80fdeb8c3e74de4249a38637e4f8f175fe3d1b9aa4be7b2cbaa22e5d5c27586a780114359481afcee8c3da6ddf65d310c37b9d6fcf26285b6c6f97dfddc0f1701bc7c36d397bd1530d514a34a518682babe4d510e44448718511891fe421dbef9c545ee4263a2809e8be7deaaa2ffab11409fed5de15a38b16814515275d90623112d4429feea92f2d4c46aa56529992426a643f282829fcb1fa0a7dba8414fd192ca843bd969456a1be4a9a25a5c39f947d21a14f53a5faa2475a547ad617a8e9527d85f52719564d6b3e3ad517a5335ae8926c6328a8280a8646d1a84d8370cc2eb91db5ed57dde4c662445824a4b04655ea5d2ee6e9102868280c16d4c8f9939c6750910233dc308ac5c8b216a550f75fed45f453a23fd517fd4e7c0a369da14317268ac2aa7fdca9be5c93a51b6dfa33675899d3a68fb03257520a7de6d66926b3e7134b5f765375262b2a99bfe404136dcc4827efb2dfffe605ae4b87cae2341fa9d342102ad1a6f3a97520fb6192f9f72758050b4ca477456b545f4e5b322ff267ea5b7ca45ef39156a26a63a02029e79f24f5fedd0bd54fcd295c896a8f36f8dfcbbc5a2d073ea87afb49546fb55012907d1598047b5264cf8622d8c7afa42a01bfdfbeef0375e9df7de2dc4b60dde6b5e679610a72cdf55dcf1ae4dfe91c45f60053b1dc341697ccc9553bdd93f0a60ece41696fef51d2fb2d4c414ed5ba7d90fdaa370da483ea7b4cf9deefde03078bb84e79d6655e02dbd9e957ce65270d076fea54cac48b19b3ceba6d8ccccfcc252324f8cef797a7937999ab683eb96e6eb46499177a99dfbec32fd4fd9c4b56460ced8c885fe69370dfd242ace75e867ba198c7dfedf9aa56cf1df3ac25b09d3fb344cf3fd60ed9f74cfdea297864f5a91df20accdf0fa92b95b804f67929b184213f9893fd121f6b8f8ff5fd4bd8d6b1e009b11444ae745237c2a34f45baed139115e8bed5414957530dd4ddef34c9b9b6f7b64df3deb8e95c45c2c31ef3de7b3e9de7fedcaadd344ba3606f0d2a2a065552a8924225c13591a7281d8bb1880fc24b3044875d9d067fc199c0389a2f27d4cc97336aa59ad3e9510d8d9ef50566574aa3ecaa65be8244649e8a28d837260f6d62beeaa463235124b6ad3a0c31ac4a3b28a898dfdca80c429760316227861b27722a2df4752fa4ba09b7e4d46fff892ad18221781f43bdcc1ff5559bb54bbbe74fea3d71134bd8de5a3915131364befcaf64a13122ad6d0189644d37f04b8ab4bf0fb75f75dd4a0b7dcfbd4a0b250155af1576c394f73955ef739b78f4a3eb33bd92cbe9f41da87aba5c94de214fb1923c3b3d28b2ebf3bd474b93b543ce25b783f187f4e7fed9335e649f4bb852b722f7c06c5c28c1f782926eee117cc75e4b3bd60e19c70688dcf3b591435b2b0bc863b62f7bf6cdf941d17db5e2f27322d1fef283dd4f8e9ba437df6560bd49b64f3d03b64f3d11279639a5aa431c8be0af44a26d5520d8e3236b87bc634f4f77e0e3fdfa821349443ab880d07eb753bbd3437cbcb8a7f28ce0b783fbe3e37dd7154efc713e05a9c160d71d6f27f0bc9f3a653dda5d0d4f31c4747c7ca2fa6ef5dd77efc57c32398b42dfb73e267fad2c0ac9d46f9583931b4b513230dd77f7bba74c95d22acff61d67bffbefbc7ef7de260addcfcf894231ff750e743585aaafeeb3f6587d75ff894258775f84053ef8f3e79e29991897e263f7a9cec8c7ee6dca25b09d7ad5874752afc323f3539faa377f8466d68f46647d4aa4bbf5df03cd7c6efd37f359f5f35de21271be78c211d6833ae4f6f733583861e320111b9db7648f25d2bc4b9c1b6afa54170dbbf3177637bb0e8a42cd1fdd7b4fe492cae8d1cc77ada7b2cea5cb9fed7a9698124bd84ebd47238645bca7799a67bd8fddaf441d1fbb9fe2e863f71e159942f90eebbb2244db4687353bb479ba6d74188af07d7e064cb28993efb37612936279ef1297c0b647f37392507966644a60e507c29f9fc592e91e56796202a723a8d48d16453dea14aa01000000009314000020100a064422a1603418c8c228f714000b7f944c7c689c47e32488611442061940080006800008088cd00c370021379063c418ab657730876dbebc19ce4f8da5a7cb0caf52d2d5608c1fcf73a298744aa08da460c592ca6497bfbc9bca68c725564e538e06965412b07f0bb4f45d11f6dbc9dd7c4a06ec07504949eb94a9cec57b97bd2012a44d54c64987b4d12b2ce591d6b0d61c815fc2f49e7ffaf406a9ec1e59d8b435889cbb013b620ea119268002e7fef635569220231226183605ae9fa29d3d2f1753f4920adbb043ac910b1806b70ce02a215bfe17ee231f4b01317ee146e8f0c46d9508a1c9b01bf163acd54b473123739711b551e194e1713a0b64a920e4f16151cff0f01736261ff088d9c8ec86df25edfdc4d077f1669785c008557221b05503a545637dbc4d05d9274d9c23d9a7579ddebcbc8dcc5355f8608bfb6dd2d9c347e9dce86c78b41d976a8c972a634a1d3bed6c2853f8078f5707905adc2ca6ffa95519679b0b853e2d79e8ba4cde1ab566b644fdc54c9ed6bc7ee27694ebd03e25c9d548ec8c22d6385905775b038c29be1ca54951dc72a2ff75c6d295dae65c9d768e091f44f232814cac73a789065401fc498e97daf9c355bcb955a1572a55389e335b994d0107d1c926a0a88af76aed0a26c0bcd47dd756e6b92800442d9e60e92ce4e77a55eb42bd925e337549373bff51c8b3582776cde1001ac75ec5290bcc2b52ee793dc23f0cd48c23ae76f8303174a7d7a40a03368ee3bb9a06b95c6c700f862b189ec2860aee99b686437f6bc6aad51dccf3bacc5a0725cbfb7e6fd38681d8219c769d9d26e72238be40751f492c993bb4159ebf922edeb02a71797fadba87b69b43c71cc2643d59934cd1191206776b2150f4baf5a57f221ccb7cf63e3959a1a71cb01312e084d27d9880775bd9f4beaa31e0e417bd5f9d1951d934bb03a6b43bdba604548858a5a96a9ee17a8a8d8106b0c663e29bad401584aecd2f3912382dff71fd56a962a616299b1d2a5dd3fab2a8922f64346d099f8027c9426b036406cb81516b3151be2b2bee46e58c8a6bd8a5f0cc163073a3f7b18e94b334adebd57856d9969ebe3759ebb928d011a4e5ff76edf8f959904f3d548eae170cb46bc98b444d84c23d0d44da9da264df9e51a6bf0584346adcdb9994c5bf508f9452ff6fd26a8d59316207d3bf4b05a5682be153a793e2c057fd5eac15eeac92a83b1e41ee3abede1c4e007d380a193a9be17ecfbbbf6ecb7c3aef31bde80b34ab08d244335664bcb135f98e7b68cfe28c4c3ae0eed0977798ae40ef8a64717a097796f02e135f8abcedc8fe4bb3a64ba8ef7cda870c66c8c88036f09e2c074197e4dca9d42fb517efcbc0bbbea50e49abc47302ef126bfba4ef028d681ebfc0d0d619819a2b0cdc95cc6a0183b635fccd541a78e6cbc79f9fdf72d2c73731d4bc18b23ab4bcadd52707ccb698958a3440dd8e7d381b21418607e6d790a20c6642c24e52cc22b88701ccb132b5999d87a0482658c1ed22248ffb850b044a7f44d7ea7707117337360fa984e9b492c493872e876b773b79a721c35681cdc93527e01ca2c09f3029348c8c01eca27e3714486d1ca1b0f9342bf35980e88d592f2d21a7a12a2764689848ac51d1aff7f6ffdd47d18cf7c0318dc2266481872ea0e7d883f4457eb81d01d920bf824d0a0c26ae3118f0cea4f2fb823126323380eeb9f74672ba98f21c2ef07c1bf9e26663e4e375f66d2584310a8186f1fe52bc93da83b1e75828bd6c1eb68f48ead08065c8bca258d8cadb09ed27c411b64f82df5fda0eaf4d80ed831fb529cc961af5937afe8df2815d895fc5053724216199e0cfd9959e540a87637b6c4bb6409dab663b0c3141c4ff3c86f317e70ed00bf9838746f30e8dce95ec0d62f65023869943ff5c520bb0e9e9bbd0641ada3097b3944203a88728cdf003ea2e2c91c5b41337f0a023a7abd494c9aff6b7e915488164a28ec30cafac42cea0c9729b5d5efb5dfb88b2b0a04af276a6e36fa463a0a9258c98dd0ce7e9fda00685b8daa5891925366f0e351e3967728a2fa013dd0f21901c28c24d4aaea1b473cff802bfd4e0951c1ed9983af437e546f25da0ea3dc235ca25996a113e996d708b1dbc79b5eb4d3cfb7f13a015ea0c751551227ee122e8229d7fa447ff62523bcfda14ca9b103757f1fc70cd8f524489c14983f0565ccd0b2b745aa58f5a1b73ea2d51f6eb0f3abe80aebb1dc67341dfd602385aa7e75ecbc1037bcc30b27fbd9149ce436bbeb8b66e9b8c5e6ea1b3aaeed20e979e2226740c873700dbb93cc82b407b6015653851dde124030427908440505da0d7f5c503c085782d0342225d08ea101b1e70ffaf6b024534f4fdeb777ec4a77bb3b81d9938b62e07afb252ac99e80475f8a36540e6691c10bf138e952bc835159c825b45a0e6f74bb90106b82242c382fd36a882c37c23c205f19aeed116699881dea18643226445ed14c7acbde42711285f6a5adb6f58222d8f38b3ea1b8faf7a5f98d35633025781fecf328133125a1fd03498dbdd690e0ccced1d85c8cc70abd9ef0f5e3f0a279977334506f67e81c4f9638ad2feb5acdb139dddea099fc2d93ca57f05201553384f96b996fe4a33907f82c2594158b4ea9388f014cea51c98a50a2d7a8573990766111e8af94b431a3b499de94e73847a803c8b0a19067ca299014206b46136916055e613093977b2d1317002847c2609d8bce82ab7d2388b1e4e01d2f110a098ea76eaac39befe8a3e51dc517093cc352f0556db47c3f0d9c343be1ac5849006c14b13fba40498d343fcc8d324fbf0f2f9662703dcc2028b71eca054e3f67aa533d39df1fe7ce149c4e38879675901127b12610241939bb6b01a8c4fd8fe3d463703b4c1e53208007796ab8f51b1cdb842a351752ed13f64f5f74f3345261257d61fd2850ed83250a5cb20be2ad90afd0ab2020401b1d5cfc14c7ec4c14829f816a55d6241ccb03bdff6718261c53edda8102a3497df3ab34ba281425bc8b3262edc09580d1f5643a87cae15481d7ac5361ed602fc913c0b5d6770017eca8b81bf8c628e31ffb0a758a473af019aeeef710247f8c32a81428a84430ed2622a304bb917173bf6f5747a361d9e04b51539636789e887e3f1ca8adb596a2e15251fa14cf45c790938796452d9b0baa7e676c5e23a54145145fe4884d7a07a8b2bb2c207c29068607645c1503d3d64b2ca30e800e929c67be3174afb9e5b8671c5d0b818eb9eadaf5dc1d9a01ea0ce1161bc42087250dd4441458671433133b19d3dc7ef23e727f168890c5b9afe8b6559453ccd8acd49269f0dab823387a21c5d2f26f3efd064bb4fb798d2e3bbbb0d811b508ea7687c94236fa7940f1e7dfd10a0c771c14839da8f22a34e32ac3f2db44b61ef7ff66a844a78e8b7068559dd21ab7f6a44566144f3bbdd6f571cd5f61363d343d40f4dd2be0b396ba88d8178541cd484a1b508d2856295e2b6ad090eef3c364fda2b79b58e8724c2b27e14a1f2caddd7773cf8db088dfba64037c4c8fcdf565527d8ed0bdecea772759c48c4925149bd8baef0e15f0e7d14d9ea272c5e3f35f493f1e963199a94033c8e3aaccc3aafb6d73b7810bdb31ac7c71edc33067c95c458ea2cbd3e935b2a0034f01a0a214d0e37c99221ee037b4dea434e665b2f4c70f1f8838f186f2ab329e425a622bbc8dfa0fcef2585092a3effdb969f657a2adc15c1463fb80391a87e3f055112ebd509f3903349899c32d5786af89fd1c4f7f89c9fff83807dac93329523aca851020d26eee926036cdc9a73fde5224744a92e021a4947cb5d0506ad1525b432a67dcbe711e17fe937dc32e29d6a85da15aa485c626d2eda9b2bacc77d1b87246d82911b338c3b6667814710afdfa85bd863816bd86fd72c1fcaf2423c4691caf23389a63d1e38bdf6436ba198b5949c648874d51aa803421b9b1378be602d5e39501362fef0e8f3c484c2b3cc087f983d7bc8fcc028977665f7bde5c6226b65fcd19324d299205f0e803e55f4e01c01ceda13518b0496386ba92726ec6f1610cf839f7a742bd6e01fd169da45f9edc7459d854a9786f203e7a1568a8e823bea3750d2f65faab9602d30b6ac57ba246cf3a2aa20ec13aa64fdad03b27db606db4eb737f4e5c728fd495357193037d6d1da210495852fba147a949c2b2cb9bb34a11b41ac025e01a4cd41056b89a3589e3a9e8cc39418367a652272d545d5ffb57dbafa48ab2d6d987aa791a46dd4ab5bf9c6aaf6c71237b69463fbca9ea165e686df4b7baf7421bd2fc3398ad5f6534d2bf77cb485b7181a1251828879221a6cf89d1e6e3dcabd2ba1c9f1bcd40907874f32ac45df16acdd52ef8466e85060542420fbcc6016265a2612a370dd38af60a5298806d3133d1113e46418ac20c9d651f9746fbbd8449662db8f4812dde31305c72b16123e260655009844bfcb1e7d967d445d08dcd34e285314cb178004534103eaebb93654466074add312109aa463ca85bc14ce71095489952e2eadd9b43d08633f9b39721bf8036bcc05e25be409cc183028d85c4627cc9b9c1da5e700d1aeb8feb06aaeced15a4f73cdcd4397e4d9a8b20b9ce9127e87ad69168bfa4493ec89fa118f9226a45fb7d72a8cf1ebd14b24d01f75b5ee0ea019e33d42c12523012ed5c05b10e6c34d8d339c3a0d2111f567da50d2c429d0054dac821adbe9f37098abc1749a4b9dec6c17658c4a49aef1fae9235a968ab50f3928210edd07d48a002b03d27aa8d4194deb0611da670dfc08aad91a1496d70596fdbe2dbfd6c4a18117207a78548553a6ec8ec021f4557b6167ec61ecd704ef343886b055a6dbdd538b5033f66eccf6404349fa8152a3c66164ea42e67c81499afe2dcca780200150b7fcb8d63021f7c318baafa6f9671430d13b2d4f1a5d29cca3ad0593a1d1eea294c5e9dccbec541c9d05915943267a684da918536bebbfecb10093656a56366d6da0bf1bc0e791e192d252fb8ba9701e19e733bea63ca1047e5f7ab0717c68075ea9e9312eee3c23ff0c144191b442198202821de462294ef37ee81feaa3b06a31c116d50fba1b2e60977467cb29ae4924088a878ed9aae47bd8795c37258581fd47542c1aea2a9a5daf2424aa25dde3f4dc95847299b761580e2ca053ddf18caab9c3ce92ab381e5740f223fbc2bd4fa33b043aa296e3aac506defef743de64e54f3a315b1fa7c40b1f54fd837436e9cfc0c163f489dd0a935f4672b234774f2af2ae81eb6eb89d5d2133c2bf76eeab89a74978b451865261b6371890feb8eccae1abf60b4380f358e6f1f3e6deeaef4c015f510c9db7df704f172b01339d920cdf0e99860e98cdb7860c34aee5e05eae5fbc0b727fcf54158641ece079416f1cd90706f79733c695ce0030265a80cfe3f82caa9715ae228a33c315bc1c64c129cbf795107e93bb1083c539c36dd0b244ed5a96fb39291784cbf4a3bce679a1b68dbc8a1405142370a85b963baf89780e772b0258fb778c98f07b38c811fbc2e6b7e2617b79d2764119938343892c7fa5309bf6ac1bcc38a52c5c90e476c5a00f8bd24760cebce9c34ab445c7a4f5a2f478c0971c0df750d21d7db47ed36fb6920ba4b538c006912a26e5a8061273c0dbaf4b4a222a870b7d9c9238ca39b0b7171465a88a8cf5bb950ba2b21c70ea98e7b12e07e99e8fd85d52b7ae7fe4bc09b06e6c21da18ecec0f08ba20f239fa3c3cf1179ce70efb1d97cedecf502bd22a7e7176eb2aa5206bee04009d574121b25154577331a4d2e169f47ceb131abb09c261bc0b3819f062cce3fc2c34a93a6d5d726c32797fcd5734c59bc137b17f42821af8068738a16b1b62e9a90febe587e15a29e7f5cf2d2d1a2ea5646744d03875fcadb10abf1f7c2cb6f7d0649a97126b54514371e4d46473390647ad9c43e8699877087ab98e5e86d279ba4ffbecb2c181ce41a5db852a887129e074ea9302f01440f2751e4c52899bf8ea2c8edebc268ec09a5493874d01ac71f074c8f43c6cd681f4b22f3f1b79f74d8df28da936560682bdb01bed34548b3e10d8c4501ee868bc2f11c906c825fbb9cf30d44698d5e06ac0660fc75fe536a61cd5aa13e0476b447805e13f83c1f48016052dc153bc415069794a58073bf5df0d2da9b945d18dadce3c87845a834076d866c5e458b996e810e6146456050a38fc26593c972647b40003939a46a248b712540e559bf8a75840db7be7f16adb12540dc6dc9f4811afd516835f6bb8b079fcba9030dae005dcbfe3e7e517f2d45dbd7e753e99d0df593101181fecf1f9a4f82d8f68c83b5042a1feca9c9c2568d90a0848daef7313204cd3706537ae98042fba8fe8d6c1221f668265a600113723487f88f760c22ac3564910d35393e4d5213a9fc57f9868f7294a32a0783354736bc6953e4fff5abcf21d5b475a494437488a972866cbc4c29125e3b52da6dfb37b7b49c19b1612fb527e8da2abebeb01958975bc253693e37b17a15ab175c7b831ad62de14e9a6fb92ebad8799da2cce06bd1e781e22c2c31c4d6fc42032d251a4260047bea00402262db1637bb8036b738bc9964ecbcc9a59ba0532c13c2751a41dd3e9383e0f6e13ca47c59ad98494d1e8547352190d1421f46e2542f215830b09a2fffa00869c448af01c183ec7c58e7e503c35bd83d8ddd5018dce352b68941904ae199fd2c45f1f8db4472fdaab232ed91d0386d99c5f5f3dfbb39aec123dc1093e39a868e92cbf44eb5f9672e6e203f947f0696e376c706c9a596076347c16cb40d203c954ac52d90b8834429a96ace7c154bd1e852b460e13b3ce0e5756e3acc75202a6e94ae754b3ba07ecf975a255043752200292a4d0c4c545b251d55750a0c7c0a55c0a71e06ba470ef30aca119d35317dc9bdbe1712049ae9cc16b4f037ed172446890cf33e8158aa33963d0d75253145efb0977be1699e89175fbce3c7d5afdc946576c1512100315907def4b5715d32e30a94e91b15684955ec2ec81b663d51b1bb0caea2999e1c39e4ab1d8183ec04fdc20bef584192e4635030ea1fdcb3d646b7b2870097959653eb0f877d4580c3601ac0d4fe9725c8e28b46af56340bb53328a229053d3d5d33ede6901697e26112fc0130a6fa3c3bdddce251cbc285da0731a43bf3abf271da85b8c55607aff9a04254260d3e2cdb90b4dc58ab3a47049cfef4230bba504b82db35a5f6d06535007ed61f297b82b419712e8f9315cbad0f97c5a0b8364e0c2b6461d351c6f60efeb8c81d91bdce87d35adf80454b0c7d22726215491baa1d62e077cee8d7d44da176d3530550c9210ecd619d76a33c8f0f7a600a10025e71ee03cf62d774e6821eeb8da78b3f4740ab55f9f3822100a679fb597fa4e613ccb219bb5ee0f1c7aa4f90654b1bd6a8c76fee0903c34951d0636126be031d24e23a0cfcaa2a238ac5839340a96d70b5491e45db6d4c104448ed09ddeaa06618b85a65b750ee8ba9d0eae3cfd573da4a74a42a00301b31420a0ae6514becd0a171785e50bdc970c31133a13842fc5d72f6771eac162d14f8f3a8c1830c4d7c875d5c9f3522c4f2d1f71b1b97e9c1f5bae3b03d4d725d163de380dbeb28a41853977c80620f3be44d49e9e04d26abd3333730243f8bf6862611704505aba072e1a20d6e0abba553db927c4b6cf723d3b79396a6bb25266363ca83ff9cc0964a8ae6c8e7c9d54391d1ef7aba8cd95c05cfc2c1fc1a7661973c29e2312846cdf7ebdac202841c15ce88f96e7c52482ffa617da45e880235b472993b4df01d345d0043dd1c5b9699377ef23fd40867d1ade7d047eca20bcef13872ef6d94ee9e0122d67d47ca3ae1dd27f83cfcbe584ba4f834bb4a8017c254a3304e7edab8b663188ec41eb1957e0b3f06bd058a4198178b974cdced1072fac68205273173a7291cdc4659e48e1837d8ba2e02814db7cfccf739937e6e43c767c5f88d2354b62141288619697e2329311d977613cb5c3e711a488eab895572b1eb769154f669fe3ec3553350ba74f679968dc3fec62ca52b0fb61b517580f63c3807d4c45d13654217eef79638331445084f4851955b2b83d8a1173697493d6714d478ebb4353f9e319e210553c82fb41eabbfe524c106f87cf8c01612ae67000b1f2c9aa47c77dda9a33cd018cb087f1eda16e2b1c2fd1fadc80cc6e52f646fc956b0dbfde10cc4be78a8148eb3669b55f90bae5d57a6e81e26303f745fa82899d9707d5d2707014da2a5dba6602e1c28941844a57a41027c54d3c9d9284120f834eddda4378915d335ead9d352f39e0f2ffd73ad7d3fa052440d69fb132297793ab16b56ee07082d0dcfe2990c15f92fefe129727c9749f776a4fbdc301f007fde135edc3bc97bd02e3681eee7b73e1a5f410fb044688a6c69c1cd4c88e2be28d05524fd184c83d48adbd38e1b3ee1a67895bf3a380c70f0cf39a3820b397d76b130ee15b5e0ffff166ceef6209c8c06ade16827597d1fe678cd83a5790869e078082de8695de029a4570e95c781c006b6e63469cbd7a1083bbc15a2834d6e9bb3ff4c2924c8205ad327e6ef9115cbd44159b78be870147238b6dd111d772a5bd28a3d8791c1223b47f6bd4f6ebc75b6b10700a40bd515187461bb93cb56a4043a2423766baf4e4e5cf049038f0aba3a0a4ea91488d0e5df8c0fce5fde24c3184a7f96c61c748b5c51ae221af6850c322c10ec9118525fa6a0375868819989f471d2695f7343ff97c95d2b0702052894b75a37378920a2495024e8cc22b3f361cb310289879f103036d18a706d67304e3845f5ac7ef6f967fd639d5ada6839dc50ec8fc13e20f10595b6bf899e6040061085378b2bab3ee5cab0259f485f65d8c4b3f3deea4a82d9bde8fdf8056c36c4287a22751414ce12344b601c6d809dc80952fa60b2181f0faa616b4e4ec59eb816f6518b749ecb32f9c07a44e29d2b1a8996809c4f7e8d68e73136c459f0483b68a7d2661357bc684ad354081c758454e784ad0857cba0d1ffd203f1d5c723bdcf944801133993c283720abf6c9aff253e58cf7a43e31501e12b68cf079e480cb5a662b6325ef2bfab3cfa723e3e3315bd09869a28214d873a22c257ea415ef2fb1ea80f209025e1677e27a35917591aaa1233ec898e0acfce95aa8db5425afcdc658ebf1b754900da494ac649290fc8611c5fb567fc2b2b7eedd5805f65c7ed7dbf24a170d5da338946b813a0ae08dabeb8652353f26fc1799ca45d3129ac59dea177e34f956e2aaad72b084d4fcbe67acf93b5822c3d416ab23f11cc859e7d3edcf96976a91d3da478b3cd6f0aa3d3869b99d5af9781ba51cc11288567838b22fb1c26e1d5730e3afd668cef79594fb5895ab77b9d034f85756e56555d2321e80bc35e21c7e9f0798135b33046c8c3a667604cc72b4a5d11feaf928f81938d5f7e3910004e0d2fa52bcda6d399f1c0776f9812265b7c017b90d07ef6b14a20d296429e5eac9c7e2b8c45d9393496d1a35b8e8202365b9162d13d1ad7f92359fe85327028556fce433cf30ebadd7fefc16a2ec7023f4ab996f6eb8a0ad8a88ab036409988ee0863378137161b2fe52359b1ab3108f06aac025923a5683f8ff7e005a792e8008d2ce41889e0ec691ee8db8fa817cdec095ba5f30c3a76450408b5900f80ddf296daa02d0a6713154b0c421075f04e5460fd50b03a3bfd82844badf069d8c48a94d57608d9c6325594c2a2a23d9165040117f30f70cdcfcdec46ec386a1fc572c65dd6fa857d2b4d88b97fc7f53900f5df8370267ac508323b2d152fc39c8530aca1bcd6dc5f6406c7a7b7965bd3febfba8de3d4215373121aac3c8f9671ee15e811aba5dc3805b23b83e0f144144d8fa06f9edc98fe79168f7360a95dd2a2984cd34b2c90e54488205272018b247a81736f31d24e8eef06364f0c1c1c355ae9e87eed9b477521bffd17dfd487780da60b5dd10a909305ca018716adf5115bf5bcc6923c19826beb312a1abd42761ae2b6cd569ea1165e7178ed9cfda756008207059cd53d087a2e116d0a90282904bc8df77be0a927e568bb4cf0927d875dcb8234620d85d708fb414e883d0ab79a27d978641f7ebb5c0ba6e6f204cb11c40f6a6890610cd4eb20c39289868b58a74e1bf72e12c275bc78360a74d4b03a180ce1cda8325f5299da343b96166f5164858f6d538599f4613fb40b1e098089e3db629d20db4109fbdf01fb20adba05d1f1adcd7d17a0debc487691ada47ec443f1cc92f82715cacf8843b594f81e890aa5755ade5a799053166e8c35cda21324fd7330782b308d95df0edb1a68f4449c60a1329e3fba1b17768d99d6fb439a423c7929b3a033d0448a6f2a0889a3a08a44918221d12c449d322b97e52d726eabf305eb1c19190ab7afdb02a095b36cc7143b3b036c5004e1abf1cf9094097b67b65a54a5c6a4b0afd7ec0d6a3bb030c0920caa1cc46a3aad45689627e5ddbb5b322878b1ddbf7f0c3c9ba4c82a3725dea79b88eadee5ade3224ccad2d0c8a0395a69127bf6f471169f4a02764171981efeee8c8aee0432208bceb142fdd08bd41443eed0800ae2d7c8d415bdb75a0d598db2383d0c1e3883a98990d71f5081e315cd4965dd436923fe8487cb9c0e792a9e9f64619fda1ec836b302b133e6015f3a194ea05c43e03eefd5725c0acd4422bf0a4671af846eaa9556f34440ae25374e3ece5b27e52955a1c77ae3e923596c7e1bb3dc5c45eb45810c058fc6fbfea9e0f44439492328b74bd968b7edc9e82ed129f9ea8304a8a4cfa3a8b6085c54ef5db19b786812def12013133bbeed01ac5d299ab8aad3ae0651030a188aaa1987b827dd698f0a84c5ad57dcddd092785b5520d07b0eee645161c350a8f8e9b8b81578eefaedfc828ad684a67beadb126d0142a6cc31e7727269bb4e037d481d142a932d6cc3fe82a52e29355c8eaf4fa4af1ad377c18ef4e40d5cf01a9058c82ccb95820d8d3fa7c2109e0d546e56418e5c22306cc3c6b999190808368b108b2a41074f0ae236787bab74c87034ca495eb951e44217890834350b43737d13355eee61c62621f68d1914be7013a968b5d5c32cdd3e56e89cf26759e16c64e4624cfe6e6656e0af551cccf163052b5e4d88c9063b00948cef8bdf053dceb523ea437b0008909d5d19bd353748d6f568b3da8c549b09c1f5c36f5bc21f3a888fffe5b0ab3490196b906c5c1fb68e47079eb932f98ecd5ee3996d6f9ffb3541bed3f929dad7efc4ba896d2b34b420088c5fd9b7d252f481ca66087326961ae5ed62eda12bdebec0f47367918f209e893b9cd5b7f593ea83f1edec6928d1a83a782f21d3308c7cf23d970c8a20e25090641e2743728f5d2e7b997465c06c2120e14579d1d2fb8073b6dca4cd9c0e432310e73910e0f0b111c4fc4101d3dc798297f0ee2bf644430a047b261a864882e6a1343c4911308916c5e2deea1afd4e568ae5e0ce0595a9eaaa1e23dadca05da51fd2b7d6ab4c02fcf2a067ff7bf9cf40d224025c9739f3f3ce63958008a750c6723e36d8a7b90f49c362aad28f4b189c9ccb3ee454ddbf47e53228243e342359525adb049dac84f1f7a4675c1d56c76902cb3a0cc408baaeef050f4b424130a9a9ccc5dcb1f551382faa1c5220f2bc0889cbd0666b811ea3c52a5ca07076a2bd4662e0e8cbf406db1b3eb73cfbb27149e1cb9201b21e5ec435ec8bca283a54227ab5cb62b546db93543fce71dda5cf0a189b2793d0c2679f2ce4a7fc0213512118761ca72632381f2bae1c630c01083401236ade17c1191056c98fd602b62b5cd897026e2bb97bb7ade98070dc80681816fdb5ac78b5a25e635ca0003ddb3145c0c43ba6eb3235f86f592a44c31b1663156aba5c14e75616b724f3cf5d2cb022d8513b068d87f5a6e090d0c2c256c41c6869afba92448f3d40d7575e2a8bb2f029f5072bf1fff0a9fc82670e1eeaa308b5ee639191b4ec2b6cf9626f99891df3d7f6b4b98d22f521384d02607f2fcc20d09a31feb97b99449ca118218880c44d414548543c965724d9d96bed931ce61d2f7b6caea1da1fd208aab01d0f36489655fc95a8453dc0c3ade702e0139b575cf32486aedcdca7a5d11b91ac720400746435f16b8d8599827a5f5c40fa238b194910a0a95cc786d93cb882d409dec06f47130b6c6d23f2bd3068036e29dae18251b00004680f4c0dd4643ff9acc036464d9740525e67a0e88ee9112872b759b9c3a29af0c0a7ab848ffafd713fb2a29f027f5ae1bed5b94e44f1e43a17b58f1ec12f1ab92795f96de86bdcbcc8bf9fdb73ad8707fb1e40e8a9c9b3d5236d1c6b0527c5841ea5ceedf6e57acd7aa668167a2a1d995775098bf9ea116259080a7bfbaff5bfdd1cda07b7249c590d283bdfe8fe08d067aa7dbcf22d9abaf86c06557200e7f3a94dea95a786b83869dc0f7410105dab3af4180b269ad72e51d6e29681510218e2369bd838557197469e6b20af0418ba4566522d0264c224a6ec86d2e24ff09b4e4561e8a3f1a0965630ff76afaca8807c167490d16fad3bf93b12d020be6c054e78b6e88aae594bd4eda827e1ff687cafb45d6ba00dea9d0428d3a3e91534e1d29dce6716631399cb906bac92e2ca5667b5d330686afc1051609a0830ac1a76a32d0e56589af954c3e137043598bfb57507ab3e1a29ae6e6a190167e9333c7e71e0fa601f77d4ee69eb7615c27faef9277955c208d5e39a19001dd2ff5b13bae9c019f261b0dbd02b4ffc971ff51bdc574eaba274c8f01271f0612009d899db15c95525757722f6096a58ce7580f61380337ec30a3180b6e52e9584c67cdcaa331634c2441af528b4ecfff11f110154e6b5d2b704f439d3fe8f1d1cd0e0129b73e970c3b4c96d6ca7db5f4d87259013134ce2302a52fff95eb94961a567e3790ba0e8e96715896f0ea9232c5b0252409a83b82dc7e717c517e40cee5c62a076a339e2c5a6d30c5048ec2ca3626e5c25625cd70a2a38a31dcbda500c52f406f996c2666e4312c9c707837ad0ac1da92b7945930d56f45d19bde3039f93538dde902652eb018918f16e5885b1b14b1ac90a99f4065fe40554f4d7b5d085e273a3c484810186e349a37828b0b2ff4ae6c122d544da2a1dbcca3771722672bb6911cc8e37899cfd6da68dab14579c385c5e8a20f71dd620342a7b17a8056459265c8f675df2967a5f4e55ea58237427f47707a9e0bc94895de4a9818310c11ed98442a4434bdd236b29dd8445eac3b1c38db0dc35f32d50f238294953256ed06936b1b0c49cf706a9a0b2c2269b01d501eaa3ad0a7bbd65cd75e04d0a3e83737742eb1436453e1e14320a1b6a25a16f40965a3b0148e5468df43e7fb10c373aa29a0498305725cbe17f73f31a604f44df92f44a9a3fce3fb35567577159c829784c5261ff335430137aa0970c8ace4ee2717f529aeaf21486150871ac0f37db922d9d828bc8d9087cd426e9acd13c9019f1b201f3a6d01e70b4c5adfb420135a663c65ec5a00fa9a9562c65d9d9879718ea19a56a6a013199d4438defdd17e64b806644b1b4a7426233f49e686a62125f0e44755c8d966c1698ffde9560860c6a48b4e191d4a13717fe59370748e2226abd2e937769c2258103172044a6cc7165c8c48ef6465b6fd5b6a3135c6e2046e513095ab68e85b63a24a9b4431f2308022a53acb416120a0896ca6e67bea57ba3999749d12367124c5ee41c6de67cc5a1ecfddd36623eb03e2d7a37c6e3ce13b495c06250b49b13e528cd4be3081b7e236138221ee19cd93dd714f25ff65d32a7bca5aefed7905142dc2f4469db07765a0463e7706d86f645cd90bb8b69fd91c70a3cda5b02916b9782c918c545d26e9cb65758b9cd273bec0aa486f57102da043fe3106eee5d93068b857f8ba918f6cd1985a206915f4545b342e74e705547b0f32ca08264cb4700d3da994d7f500e100eff0db3d09e5ba4804e93df111056016cd71817a5b24950a680f1bc83b8c6e1c298b5e457af8141480fb3f46b118cfcf37ec771ac916f4c06a4bbf107ea580a9bc3052408708e86aa3189523cc1aba2c4d347049eaff2c3bab6b0ac180c099e06cf932b1c55e094660cc06f8d304dd95ead5c60f658b9f62916960dcdf70968a20c8555bd17309c6548fa6a860558e7f01a7bac6f4b5a8af89d69e25ee836866444ddb943bf45af900caa18ec0dc868bcf9e50b9d5fbaed6430fbaa47039e9405138f4965470753690c345e24a61d37a482e48fd349923427dac9e88fd72bca2f4f2829b44bbba998e8c0ab0922cb6a5e93802f3cdb1265df069854fe3ec22b19a409bdac3f1f65deb99ff183bec84f2ae4f2b1056e6f6296d659f1819a31e378a903d877529169c82a8ebb1a1ab89ad3b9108dacda5beb89250143d106fc736cf95cd7357df311099b3455ea27b7825a9b50c44380d8d1ec3ae389e9e09fec5fc56e55bef8fc51ed83cb239443b6521fb2d6c0d5c1254f15e732f3ed01882d8729fb8184e5188d4ccbd647c23e319d59f08b59ab7d196640f977352fb269a5bac21bdae09009a3d9fd8e009eca38e2de6b6dad9f50a1a1204a871b3f85103c309998fd473382cabfb7d10ffaf44eb2bcbfcfcd0fe66832d87d8e52c0421eefd114dd0f13bb0c94d7e23825be392b40e59083121cd91495a9bae846dd0f306b8c9262af5c52d6d0777a860e5d4136f9a00a164d18a82cac59ba0e432c28b564828c8e10686f7c841497084a35e0f44d97e8c51e922348d884cd34b8996220177262f96592e02301ad97be917e88640438c737e46ffbd8fdcb7e5a2fbf84d502154b5620b661610895a47ec46c5ab800b8c7f63b4900f11ff76ae5cd801710dece548f10bb60f497a0d9f6a69480485bcab4e0a9bbf085313f89c1519ef278946ebbd9e3c1d2b2814e87182d17836de4a1b1c4f2bc9546789bd75134f40f6c8e99b6e8ae8d3e3c816835cb24650622f44fc87dfd13d62417eae843a7bda473ad8f7cb96beb9c76bd045922d1e4cc520c85980326cc0341e258b5b5bac1363017c5a7050446cd6b2f0408d66acbbe27d8d312e0c8dc7543047774d0fcfcd23e486a036eaabbdfea0592d48857f9c6860edfa2f23e437ea77f39b62327682878adb41cca3f233115c757ba84d681d54172066203c91ea3c1d00b97b13a1b6922e4e11575864bd95a560b95d4a1d704676a8929ea273b7582ec99ae40da3a176c8be4914949589c324a02d5cb87c06b97a3625b7fcbe13277ad7a15e17a248c61b44bfb89ea4e886d693ced17409d7ab58c02071fff452247e706e3ebc0e6a0e4b5c86a93e7909007b3c4e82dfe3bd78c0644aa843ac5b553f20c6b54082417b9233d9fff2052e129a419e337c7607e686296795cb1b0773f1c1f71d8787a93b32b64deeb755b567e54c1862f3218714fd72c0374d881d3fd40fa55f1a79679465eb9f980d5ce58007ab647c51f80bf9dee4e3015df06bbf483edd6636722d4e6b069a24b139786c778d8d675ce2b875de98bdefde869ffc91010c026e42b96030bec4ad9a33f3c4d5381a10aeaeffc1141e91eb63ce36b4203e85b3cda0b4a0c5d6864c0e944e0764404cb6fdc74854bab4b216f4754914f25a18a8678b663f5764508b8219e49ef6fcba9f4f7be9de4308c9295cc3b52d97bebb18148d96718b35250972ab49e396d69315d09bf17f7c1a01e15c36699190310e47a8201c9a624eb223ed859fc442f85e59ed2c54a66e99d4bd754b59c72db488941e5779689ed83622fc6b7bdc2540ac3d7a96299ea9c2af9aef3ef65e2d4ef2a7600e16dab130c83e8235a2e81685348b55a69e9a1d0dc50774e08be9bbd30e6e5987b52e1f6d994c501b7843c4dac4d61091f012dd63457dc273238e1874570a99dbb40ea1fb66f844d282e97eda5819ae50a8b233c2ef5363c0acab564e82cb95e3845d8b04f51d3e52fc5e5bc34bce5cf3c0a74147f8677d8c198d660af7232a2fe1179b6e9f235a3a9b97566c872f605659763921ff80808ed4a83bcce7107beb720f4004315aed6e91641217477b38c6e160f8b152bc9df4cbcb2ffdd045f3f6b979fdcb750511304510c84c6f5ebd80d7b2c52f9505e6ed33c710609026dacea11d3b457b96184e22fe421bc8d434f0060af7a6ae3e9976064c58120e84cdfd0440aedb9260a7aabad03102eccf46befb43d3ddd859a61aab380ffcc15a3ac73b71e446926e68b3e97000e0eae200ac1740eb3f0cf8d6cfbccf51e29816a3dfd09c7ff6363cc25c204f9f67034e7acf8e589e39ffb52d1a779d8a52221334f4dcb3e2357ce2bbd002c717bf40199e788cdea7757af1a340f5f3f0857af0471d8b1c67efa9a573429689353a3427d16d3dc5a80f7144c13f8a9068d4e5b0a624386e8ca5de619b4bb30b441a4ddf69a45186e849f5795aca2735c624ca9bdf66f172333ed96a2fbed55569e6a0979e2085abd1d07339baed01e1af401ee101761e70cb96172e528a041584c7a43d0a1782c89a43fd70eacaed4cec49a44e517afa2d3344b5ae1b9c613f0fc8301eec5145dbe6b89a252f37a5a8fc82c7adfd96c9ecba77c96266888b0974deb464d13bcd8e046eb28d56aac620c19e361cca6194320ad341c017c881c26d642b6d8d7280ed49eb61ad7171e3ac5132319cf87e28f8f858e28831fe14219d9b50b2409e43e53f56a09f8437f7c89f11fdba7173e15f96d10a9e303e3d4ff9be1a5ed7583fb94dafc798cbd3fd4ac7dc3bf5bf2de221d11f2d37d8491b54fb4a146b1b00e9051cd136b086e5fe4be4f861e07346968332bda9b9eab4f57b8609544c3e6a11eaa6652798ab02e2cc4321c73ecff1ee268dbab1beca9ab0cf3c26c0aef1825618b5beba9a2b4cf428d8bf0df1a53359df13ad220d2256532aaf35b591b20f3bb1bc09c2c2ed43136a57715a428fc160227631095b2e4f3ad61726a3e59eae24356da9f2b5b69404ae13ac4a54946f5b37500f043cef3d36961706914e0aee49062754859fc8eb93e3b0005c30aa3bc1cdb4ca9a046609a2586fff053c189387ed8ac48d085e59c9eae030c6b7c30f9ed75bf3c6e43939ab096e09bf2d85180ac3531f359b0e495a72e13abb8a46cfd033a4b43c0db7e2b9b6e1f9540c8520751171d8ede83fa502713fab307fc2769405a97fb8deb3707a3bb3468d94d69f916bdac131062d8d50a35d42f5ce2d639cb7f00252ba2795b1765f59cba41d1333b41c405e28c7fea3cf065a28e26c14391dc8b9c30c1ed0c570b06e086982d05e80e91635fc2c899f9ddb50aaa01048d723db3ed8dc432575f1ae66f5f005e702ea67ad747c9863ca45011ba549ce60076583886182705a83425adfd2ac9038fe5eb55b4c33315c189a952d74bc51fd6f82b2a2ad1be60841dc5ab6adf731e459babdb30808765877f1d565bf362b737f5c3ab382bc0ea92b901304cddc66c2c5ea89a946c5b6e00a4d7f9cf1be8b6b3ee4cf1d1c559f95666563271b7f7609c7aa52b24abdac4810e85ab2961f5ab4d118aa426432334958a1990455c1365c7f9cb7aa57052bb18e988b93e4985e26d9d7290a719c307e7e24dccfa6982a8fa3c480feb682f9167e2ca894a9ded6125408cc06de4392754afec0955c33b99389526fbe58dd085d187ed9a6d1717b58f988a8ba50f93f4b020d2fd991781e974ec7a89e246831d59cde45ad5d600a56886ecd53ce386de105b4644f2e67ed3fb296413b2eb4513805af65d76c41b17604e287451fc78b0fb707eec60fa520b0b4a4205fb2c73956308081608b072d8b6e2ac1e5d2fc5a90facc2435298973da0c2bd41b85dc0585bb83f072972453ddb7c730d50f5fa2073d2e1f75f1ccd0f42fc3b64e504f2083937e6e2a04936ad9f61daffd281da9a043ce1c6167cd3e9de6d029ff475b752b289d26fe84c6a9693061adb296d64d79604c32013c3b4446d6dbff9abdd07ca9e00f68a04a1d87298d1c289b0f230c9ddb7fc3b109050d599f68e8a963a321dc8f48a9751d77b0ea3cf32604aef47b0aac68aef5a50000d6b7168503a4215ca076c8b86062467c54bb59e810a2813aaeefee90c2d38547ebe477f2c8c7e2648c5c7a53d4513a96b09d4d70aadba8ea4d7f921de110e43dd2fb28099cb60bd3bd82c4d4fddd9e27981ff32bba6d4f146df190d7fb6e73f4f1a9b0b7d771a29d720010ae735fdb138997341b5c107cfdc57547f01c3a0b391894d2e940eee203e84bbfdd371cb682dba517b9a0f694fad67ca63b9d21f355d0cebdc4834afc6737824bd4db33e19201fc88d4eabaa098af674894ea9fe79ed810b81dc4aae920fd4956a1d64f9328ffcb24d9fc496d4c6abbdd833522d46684386b145cb9e4a624864e4e0629643baa77bf169d7ca57392aef3c5dd0d68d466581b1c7113a86385c114f736088d75d8e0ff2a866b42f86aa9ab781fbbff502d2f3fdd73c6b8705143c9f990bb4bb49c3a5a51d15881d481d4f53d0eb6968dc9bc11599840032a82517ae535126abc6ef3f2f077e06fd87f4120c6a4818ace1757b514bf8ab95d13e9ef2a1bab2bc25c85be3cc58b035d2bb181ae845dc9f852e099cb5b63044d0e5302194305e46fdc72a085d1621a51c2641730fa06660be8bc5c561e7ec5240288499503f6808dceda9238620d81bcb6093c40142f92539cdff91f6114da3b780b3aae61b79abbeadc825bc7b80a6555b351b35b92b3fd8e4e66e1935b6a12221171397413c21daca549841c2b7c93215c7304aef04e0aa98de32467942829c669c262e2eb026e3a7865207031be0f457423438b7999a8846bb873fc3cb768756009e9d3ddfbe2097047e84650eeb4bae33f68f29b7fbf088dc3e6ee062e532efafb2e3256fbdadd039ffa0a903c938554531a341cc8c4c5b36fb068a8b35f8dde654b235bf72b89bd233172de0eb9e9bae7fb0f78e355d5784dc083f309df76ab58cd7ce5ab7e02949bf80b5bf57706780e59b3a2c572b251129983edd06a8301dd37f33911785197480481825d098a6eaec01aa904204e4ec474490f38925d923de2456d2c3f76a1f67d1845280ada23f550bfcb3b0f7a9afc1c3bbccb7cd7aa33680db9479b9af5ec288158f18f9d064032eb9888b01a547d1775a4c6cec411bd4167230358d833389ddd0072ede2a9522691594fc0f6d0ff86d682ecce9327a3142d1d637b9043afb6260c1d219471749a936629c38a01c780fd5189e1c332d195354177a175d5c614a8670edb59f84ee3fc5603aaba96fbe807a2490f8ca18c5f8f398cc40c3742de3548d399726c38bcb0a323fcdfb038a123d4b7dcca3a616b528dbe7feeda22a84746b217c9f9b146e8ff16a511e124f3416d091034a4a1b928079d7429f1e16b88d47918a60a2ac4d9d705bd719581b00780bcba50576489b4b155b30eba8275000c2cc104c20f5107cf8c28742f5cb8fadc193c74ebd8c33b0c10db51eb2c05f9b7fb82adeffca470cdf695769804cce9cc413fac1d67a3df2ea343138b4a4d6ffb8a8e58497898740462b57346aee4e2bca0a2a06f649eaea3932530d125503477e388b85038c53f5fb3e43386c6e49d8d72b4c7e9d209e4eb378fd235d56e14fb84994ff19395f8b600c3e1f53477e23582465978e9b2c6fd02a986b85f61cd6b4a2bb7610f7df64c97c99e9fbdb30b5e30c0c640cddeb77dfccae4a89ee022d91746dee104c59f0397843f3d3cb6b234ab758e8b69ecbb705a6eb2d130944da8f3bc0431cb1af2cc2cb1f8ae820b5046387a7b250fff9efb6576d658ddb89797c6e265dd28342b6300d1edb324744b870186dd26cd8095db893527bc49ceb97162d081d9d18d8c3bbc9197db334be2c1b7262921840ae2a860babfc15ad2035265d90bd59a28b3d8e71dc63c45d32e462ae670b5563940ddef707dcdb548dfbcdc23354dcedb7f6a17b39a2a818e8853995b5f52bc7e84f24dda07559565f11df434615990ef38007d4c667334bf88f24e19be114f68ec640c2a86b19d9e40fe35ef1b311bf9564898477c6466d1fb832d353000ec099ae29fa42d5e6c1f37d7473d9038bb9028758e28b6862cdd68f16d063a5bd0bffc804f697e27fab933d29e636dade5f9290b9a0c875cd3ec1d7f78e8367eac17bcf80cb3c321a35215df1513de27810602b3cdefce1f576960d2e06ec3e0a48daaa560848f52ee23ddd622591f4392963ed978550628980036369f80432ea0084b9549a6f52bc840500f05005c3714ac233fd024a0dd50d79cdd42c129a31d00cf45a172d4d211533eb5dd80389c527b04f0dfbbb2156fa2362b5c3f73fac80bc47dedf9353d96c89cb62277feb7a8e1da2e9c41e0e4deb0d4ce4d6e48e37a76ad717965837e47dd4c726cbe7e62cb673613958835678f3f9ff13f454168d968a35bdfdaa70cecf2011e43a4023154750ad39d7e7f776d74c65005fdc74dfbd2d975eb642662a920b506f6a9fa2401261422856fd01111e17b3ddcc0b078db50aa9966e5fb7b1f0f8f3ccee23aedca56b711a772e3c1e6f39793f37a9db44e8c8001d7cf03a23d3d5f6bf7a7c47dbbafede4f58a65e43031d55c1b83b3f78243e7c9ba2fea086dc64625b3374e6b74b15c4a00eea2eb0e16ddde800c028a0038ecdefac47809d1d1e67214ed2047bea4b793229ae518251824554faced8793182059d3dfb69f05ab235512b9fc9412d26657a72ff7999520a29e5dc932d070e2a57621d24621cc669857d42a8856ef52758fa3ae65aade5259c8e28c458d41e111652133ae6118cb2fd08d7bcb91484ad20e4b087e4eb44a5a0db182437508c0152d7c8db0811f16ed49a65bb8c74c03ca60b087d26749953bb2f7c4cd133d68d99b1786312e4d290b89f13d7d5478cf66fc1eba3e078b108fec9da4a9d4bfe501e5bd3c9d8e6d8f0e1cc5871ecd38f21893815c7f83fb3d65084465faa621b380ee045d9bd661a18ae9369a46016c8ca13059a578d89d94dffa506ca32db67a31e7351b7035356954426b8e2dae6b1642c9d9ac3a174687d94b24b9eea91ece6fb5b24d02d5520f989b48bb30167a0544cb863e10838d9a0fe11757f9c4019bc8d49d8bf49e0d1406fa78909e46f995689a07d5b105ecea788e5dadf20d2b9c3a4d3e97248fb53178b18dd987a14ad5c97d7493b7754be1873ae85024976f79f9974e1447ed90d1ff6eb9fb6ca8e323ab6fb8ae6bde8a9dea625804c31e3e4870beee85e426784577d93964ba9b47bf3cd5bec38f494684f00aaeca23744b68030657830957a73e4f20cd68b8e9b74772d38247107c597ad72de21da8812b48d38b12144156783f75564b3359719ad6c5cd2dabd2a42595c0b0b9c2676bf24ee76d0a1b6b8822dff6dd7a0aae536ad9fed46d0943998f04326acd8c55e4aa199ba175d2bd1cb9a88b5e90a7e643353a368503e1c74cdcdccc49f7eb61ac78170990c3ebf6b1f40acbbe39caacaba5c219c83114c3119f4df59d69e88fd9e8afe1a07ede99494750e1d4849bef5af88af94e14572563f944f5dd7e65a12a7f4305fe50f292e7e6cb1fd071ba744fe99e1af032fbe052af01aaf1f8cdb7ea4ae59d0317b84004d68159bf4b6e3e5e039430611bdf93a3dc6af27b39526c6f2beedad2419c0ecb594db394fa584cb46851e3303adb24583e24d86133024841230431c9697d9d87e50763178e81f9eeafc444be94ae42fe3f57730232a6076e1f16207a6e6d1283cd4c6fd50090c1dca87a8402ae983a1c9244bb9a13d9a53ada2c25853004032fb82ea86f20eda984b34bf06e423737bfe2e2436f5822e5f383085817283b0531eea6cad5afcf0aba220cce2f3c5e58617740387a1f3a33a490f5729e44edc90e83b4ae9f2427fe2d12079f8918a470ab4e8a7ae3778f2325cdc4815a7aadb35fd6b99c5fd9526686300b20481d5ac133dc1bc20514b890016f53a87045bd5a3bb97a88e5309f7565b3db308b013a5f6a30531344d22a878ef48fef8fe33e4d5e015803130aac7191d30a6452366feabffb26acb4c46e9c15808dc3e07981f9cf4f6fe1019b2fec5d1697850199940a0c59188af3061197b1805e06f53090fdf9bab15f197fb8104b0c0ebab92f4678862eb9f5c5ace950bd7ed69a3cb2e44fb6da0f81e7bba7a7f21b21a7164984a4bae7ed8f330f626533714b0c0232ed146e5a2b1b5538be8d7bc20be94296264c39dd0be380f7e2b8c232e4bd0f639ec56516f415712ace346065bf7f3cda040fb07b256eb26df2b877391c3ee759f4b9764aa46f255f10e5a32bc31d73044d2c9feeefe51efaaba24a0c032d8259592d95ce2045f9c4c407dd9d95eb1366df7c86b34d30fc5efd5be8151266f449ecb31e3ae5e57137216691058cb36c54454f4395204c55782bb8237f6d06a5c6081835d19ffb0eb5d88836a489cd8c0bc3140a7d40eedbecfc80ba302f75fec60a5e68eac86e276d983783938d1a96981a5f5b32173aaee8fc509cb782a045b10852e35c4c5071c4622d5e49d7ed7357231c6deee13c173874ccf2a263e25f9b83d4f635cec9edc6446a14475e76d7e8ec3f3e29d125c475f3d9860acec9fc35e868c00dcb04a61fdb482b7bb576d31c86b1b525d11f38810c2c02fbcd293b1795bb6901a955713e12e56e0a72cccbb099f4a6f4390f2bd3f7ea7420f2218a763aacd6dc6f75c15cb48e474ed9c4973c4d5bea112afcfa324a66954ccff50ed025a6cb085c925dfb4eaa6a06315a24aabee6cca84ddcfed32735fabf5731bf9e4e38f69353bc7683ba0d344331845e485a877fe1aff8ac0260340cc7b22819597ce131a8ab238d447afeaba216096babb161d1d8213e37c7708b23d2f58e0c8658beb659d0c48b882fab0b5c740e2ea3a093a0178e5ea17eb9af2d3a8460a0c18c0a239a00ae9a7cae8a7d36f2a1ad4f6a8532999277aa963f5a2a8b260e3f27dfa9c5dc7b716939f9d5478c1abe3430f8a0dce1fb53ef653c140815d51e841b344ffa6d016ed6cd51396052f099ce1f821d5b31abf0137f5d6788277d312bf92a8b4a26700d8c8ccae60ca7e79347538e0e0d6986f1800d791bd9f33b5acc977aa2c021aaf867aaa67318c4de0dd04cbc4c395de8050fc4f5c639619d7fee51efabb33eb072763f968c3e2f69b0cd2869708ea6259abc89b9440ea509773891c62b9144827db847631bd02587553e90e06d5e95335f2a4075465bd923bbd99f9ee6c33a17fad020b63f599a4c675386605d639798c8027dad03805313d4cd5a45107e2e65103be45d3d2fe77ab564106844045d07f65d2df17a3464ae6181846c6e1e862e13727bef5dd7606f3c2ae31a2113fda5cc697b83dc33c28716fc3780a745c68fa0fc733b9c14455b0b82bf21eee5081f36a759e99cc7fbe57f25e752374288b979807bdfee5f9790b546e1366c06dcab6a3c289d36947a292e6e804cdabe0dd96bea7dfec44db3bae9662fa8e2d1fc897365f67d2839b8d898008b3d626ae2e3306125fbae0767f6f16c9842b38bb229b29dc7fcfcb0613a20107b7b4005f8c5c98ac4af5332cc0832c3c7b0809b7d9f0d38d4cdd07144a8f6c158363aec844cc71d380a29e87ff948eaa7afd7aaef70480bf475ac60bd196bff628115865d01d314b7a3f4d525d085825e15fa468c39a898b288c93e794f0f0626776176000fba7a0cfd257d96acd0e6bdb4071761165d4d835482899e0cf44cb6432458ba03f96e314cccf611ba670d62bd7ad4c438f6f1791243b0825f9865f7371ca36026b19ba18fb2d76c3b92aed9b1d34e483ca126109ae923137ed0f61840623ca3326d80f24d4a269be207570f60bf9ddf42b24723e80732be42d65595c5c72260e291529a49da1a7f42dbc3901b52819f12599013d2c6cf043dceb64179bbb02aeeb9fc8affae75d5483e5cf61c50f81d88da6a73ba145fd461de2682accc844a6d981f9662da64666c73ab90c79ab204794325f01a1d2c81c8788df5a3150e0df44d11b22f82683b7219673be231dc8cc5bc4098f687512469aa104b55949d96967260d479ff9c0dd6dc194fb1059ef97b99dfe97b2dcd42d31c3a34afda3f16ced2fc2c3d51f8bedb4a6116f8ca48a8c1aa0d7a80168b74ca2c468b4478457f0b3468acf2d74c612d747c2e039d5171e34aa5a4d1a91a29aea562a21356f4af79721ad6949e4c7cf47e9f042dbbd139a6087e23ffbe74b66c43c11801a6bc0ef3d9a0654255c448df8a7c3163aca7b6fd7735d7dad3dd4f5a70641ba889be49605b717d079b728298d9dd5335093ecc62263daec1ffc8b66c4f39d7f29074a2871b5a981f9759c860bbb2602ced824222dc4d31126bb2110fa1f1b0f1e202b0846c148ab4d80baa77f9909cb2a8f8c0cdd4683e86788862f1263e610f3fd0e7a697a49ee92822642525f39329b3bd7863484e9113388e47bb64c9a559c0b4cc323e4fd9f873ddfdfddee05785fbe6208643bdc657e8ac0c764f297c5a0ea0155991fb43a1774b6631bf2b72faa2000c2698ada8960f7dcc08e0c4a2dd06b7795521ab26394a691590e3082210ec525cd8bda75c8a69223ba74b073d9803a1e98f0fb580f03222b4ad581071db1d90808464ee4738c5a748813db53fb743bffb88807a44030e0cd64be959344ed17280c98ac4afd442b020e162c22bfb0654b5281d6a0b8345844596bdb05d4b5cb30ee62387bc60f78f609fc4c5036e37068a8687af761715a7eecb7449a09c7f93d3b4ad877fed734994cb0e4a558138f6fd06d01ce1320aa86ec99f125b95bba4c401181ad42f3a44046d4b803e6b886cdc3a5ed1998d3bb219198e00d2850a2a789dc3680bb36a2c81d14260ae189012ee15315a3dd27239203cf98783902f31e5e798c3cd836bff3c29d51c178c4a76c704a4d2f4f18389064a45446584d03e73624c19e5e1dd72eeb55823f32aa75eb36a96a0eae90455e0e286fae6e9e2497478f09b3266caa264979950a8116d48e2be06d0510a79fb45945c2c1abeab8b1b61556f37e70cdaa8ede4d0166b5ad55796fd036500af0261a535f40b7613dd0e4f5ef185af3890458571fb7ccbf1440e6c70cf250e77641caa277c6c237bde140b1c7f96be9f2ad8951ed589a564c5a76bf6e09fbe15ba0b067adf503bf363767afc3252597be03331dde7c97a4af02c6d3cbb372bd3403c568795d5567bd3b662872c6f9d4e66e91f70ce1d6c9bc16ca4e72acc8118c14d53f8701191217b838a1fbb77312040e9c7122d701097ec9c126ca71aa26c1f63670616f9a97f247d553c9419f595e82b078637c8511f7908da16e26292508674e6ac617d43c09300dd0cafe427483d0c5a42d31baafab7b58f52766dac2847b90b2e6b46d5e178e4be1de257366c11c782f62b2d3782af14521e8c7dadab3b4a42a522860ec4eaa9e797d9045f4167db270d51fd1577e337970004d433a47944333dfad93c88f0b7525074df3f62c34928340de01f36c1af34c877755c0af7f3dc7d3a1eccf517718534954adf45438608ba7d9ae4b022847b0563827f6e17490490f4955e5d4382233f0dc8c826bb76d7cef633f8b92fe37f28c1cf93241eaafd63fed40be48fa1137f07af68f175b53c45c3877a2a7797d615007485ef455fd2ba534d5887db095db075204e04b772b135b4d55c50bbf5ac2c08c076656dcd42622a053a128413bbf5b9a1f846628aa06476827a1bd6e0047e915d5836b921b53523a63206322f7b0737aef1d75df79435d2caec5663ea2b1872323d9885b4524d3f2a49bd21fe01569a998313814707bcd68d26faa1aea79071c668c1fc1d8d67ef38472bc9186c50e2eaad96f083dc2c85a2055b02d25ef662441488d2e80fc1e678914b244e5e59e6a41ab872501f357a66b2b8d6f0b71b38501f4c6e0b1179ffbeda8748696f76278f1f29c56c7fe9cd40a96230e6bc781c0a68d4454b3f4bb1c02f770c7a0c687aa0015f729c2f0b9f1be6b7fb3cb7e19effa7a8c31372d83095541fe0a68c4bfb9ddedbfef90256ee2232839f4864d56e82c3e04837b6ff2cd228661f989a46b43c059329e949d493ea3cf71d2013b1a0dd7587fdcdb55199044ec654c957caaa08d3a88e8d46e9f6ad4e5a81ab9f8aaacf3735aec23cea7f3f43f0a0904b56806f8b7eae18e5fd6ce5e250fa4047a819154d11d55d89d6275e5680e639fbda997966692576bb59586609fbf1a0ecf75549f5a1112df2cf73e87566dc6a535967fafdcb8d8fc19ee6495887b264b91f1c97ca960551463461bdb0e34b8fc7bf9f9b161c7a36a89a2c2724385ab0019eabbd09d3f0e1bc19be130ec07fcfccc2b1c82b6c8962eed71428c17275fdeac402bb15e02c791465aa0e2ee3a2f3b6d888d2a4e63027f3a88de970395d52791ac7e2b1b41dc28790685aeb06cd47b4c3b84862f04f691c4f965858da0eb93cb33b50a91d155a357aff51face6167a5ec49aa827d4cf69426e16013c3c54e522e7a6dba2b417c628d090b2151a9de4daf410bd9b594e6a9f5f18f31beb4249a08eff016446fdf582099e1153cf1a898b67078e51cd9d2dce959b788e18d734700e186c0cbeb714ecaa231809a99470435be00dfd50600eeed0ac0833d70cdf6069cb3094073a3d5be13e31a82bb025efd170b39a8df162a100b3e512c549d7830d70c0bf49a603700a09315087b013e222ce493160c395e8d863d5685164f9a5597e9d4620f70bb6bf213ac0bc586f7149300710fe48f46bde99f51bb41840273d428e06d508043d8554842769239645189493e7613eb9e4a04056d415dee7044095ae602a7487a10127725bad2b61e7ae5b3cc110a29c1e0af9430b5c1e1a5477c2939636a9da9255c4c4e65c36c376bf7ecc7f17d4f075265d3a83f74d5eb4425715ae388d27b3578f534a10fd1d64799cb68970b6af774e1d57300919ab9f91d38e37b281b4cee4dadbc2546450f35e3dbb18d8765c80dab32b16e6fe2142a0833503cee14e9eb0fab3bc2124a7a97b537dcfa137360722385739016fd3647e1c4a2479bbec09427ec6218e1d439f73106f058e8c0794be628b498b02bdc502dc1abec31adfd2f422574bb56a3100ad1bbd7624917d6b25a854e2c281a9550d298976122e8a095a509d7e9acd64e1af49b5eecb0631cf229596f9af2401960e92c31679b53dd3fedac0cb4031da548e8ba1f7e427339ebf8d037d4c9495e6704b49d464e014c9681e3f7c94e40c8f71e04cc5f4c585ca797cceb5ba9ba933641fb2e5105598d6fd775687da465f71e471bf4e74772d995c2a04b05fa559a71348bb5cea89fe185dc70da27777c1d8769183f2069e326631dc24e63cd3c70d40a7969e2b1a2f476441fc84df8a642e72e77d30901a72f375cbf39e66a663c061df9eea83eef2893182c245f5d6b14b58102e7b173f3346f2d8d4de760f412518d4e28d7e354d7ba3ae2b9a04ca94907250caee6b69952886c37a11183c2bc5c71c3a8168da70e69947fb42bfb3b885007e7bc60198f2ef36b82330b0a8b341373de5090468ee5a992a49e66e59628873dc3238c28c4b52e5aecb8c79f8d623cf8e1a5b0d5a15f725753480e50e9d480068f7389af7457cc42bb9911f3e26e03bacc1b432bf049252e9dc9ddcfdc4582743850225a81188ad18658b4d2d0fbb54913bc68a22b1fd3a61a3ca6a731b958dff28c77043d68eb4aaa533adc6632f42263e7fadb2cf0dfdd544b02bebfc4befe7690ec599957a371e0d563a424fedcc103e93dab8a8017d1973ad6fa4a63f05b9666c9ed19c18342d334b78986c9024cfbdb79e2e4b6d9f2f73d17a198426776ea253838001d38c3bd4345ea630b547e1521187d88533e421efade7848c64220d8586cb930ce2a69c782216743980b4d328eb93052a6d0b323c85a3ff952800ef95ca554e0f6c966e55998624dd7d2a941a795b8bbe322d479edd88a1587355a20080b1547045880497b16cff9fc3ba7f8bd5047e0b3b93b5d47c7b90972909055b7c270a4121c4ec848caaec64ab13a14906ed98083a99e46b16f6f2cac2dd585c3836f5d37e402086dacbc9e4403a992bad226933b032c0a130315e0a78f489f3e51f9a353308006010f5ae43e0e123c70277dd719621e6c3a59754c1de591f9f9318ad79fa39e7e7a6a861e7f416e290774539cd922b843384e571fe16706d1a6ce4a1c31162a047e260c85af628d2a955a86c0cf471ca6070667d3f5352bc7ac5a8235b3a4a03f0194ef79a9f9c644f79f4917cb9593815503aec57201ae36a8691ca58818776e059115dd9c64b5659930c89bae9f39ff3d28c0dccb440a9b13885ed676f0ed2dcc95fab05810c31b380a07a7e30e1f2bc32b31165c53b846b1fbfe0bbb4987627463b5f3b732e58db17748923f2553e8a6d3af4ad93d7ffb3ed02df738f6d8bf50c13a5d12282bb72836fd24c6ebd5946625ac2c5cedbbc51f016d13adb58eb80249c1e8861f4233c5f2c012ddcd2a5899ed7f051c53ffaee8260da11bbb59bf8c392845b75639b19767038db0b89d23465dd6cc0237bccf6c50a44a9a6c7ce2f40ad5bfd2bcabcd7e4f57b6050f4d66ced26955b7cc1bf049e7aa86dc608a26e58361bb7b553f40e23465444284553e29ded9e2b211b11244ef7ba25f9ddcae6650d7d767c02cf6443de5c6b3b23ce841fcd7b09e620e9d0e16f5c07a702ec47f5bef883bda81ec7ab6c315b033c9b71cdcd8c04e14f26a32d4072a25a9f5ea117b0e7115fc6fc3616606d4d6f012002c47b24b364ac69d2b5d7e38c5bc82daffc8860b2270137e66bd9340960b618e5c8f11c35f87a879dcd66707266f59044ffbf4644ed1e382ad9862854757c247fab910ddb9e81503ed5b5fa03ca694ef54c8a612e0193b3bc571dbb985c61e8bbf9ad6f551147f3c4634e55d3993a5b829601138f510a616e85148a3de39e63bd97207ca914a6bfe550c2a094408b4501a2f50c7525d986f90235865ff0bb908f77681bc1b216d25a87dda0d84aabecde69dbb0336f2c9122a532ceb9171b224c9763daa083911fbe0a5178022743e83d745047f60b3bdd3b36ae4fee1941ebe37eb78a5bddaf4ca0d6538bc0531565dbb95ef7d2bb78a27f5e932c76eacff63a001f39e4da1b29ff85d32050cda958ffa27edfb02500ff4ae59d180ad718d11e430e7dfeef8f09ea658c755e3cc972bde4b938135adc42538d3f1bb2d49a32df5848ee504e53f116735ce0a3389c47cc409c3f616ed7d1d6f059b65af86f26269c29333540a30ee6f9341a4585d8002e9f8004078adf886b1ad609bd8f9c8ee262b4847f1459a800d92b012fb3928ffe1bd90cb220e7b3c250af0ad57c1fbcdc6028dd9d1dbbd5f9b8166f90ec1b9b5c1778af10446f93b1d94224b290637577e0f1642b4e60c059ad978dd1f31b81229561a31af7995a9c665969684fbc07f4675c26ae765a944ffb4670dca728b18db2c583b7c721e4e81dfb3275656a93d3ee5ac7d159e50cb21031c805b5d631a3692b19b2cd902b21287cd04c60b2855101b91330374c86d471070dde2fc9264aa423ab910925146c67d0d8f872b4da9bee9ba8ebb7f9afb5b518dbff97099b4a4dc5a18c56c28ed3215456c52a864a0d8cd50af9c8f2cff38aba8cd953848fabc1adf1c9c88b4631e0d83e63cfb37933fdae4fbb13f71e8117b4c1d954ca4abbaa3ba3b53bc0fe2a9b4a8d0d574a23748101a9bbaca6ff61dc7e71564ae661eff06f6bbc80c7f2130d46df6fc33ffdf1647455ac1ae7a68c506b4d9a1ee9d7b87cf982cd8f06fdcad980dde5dccc924a58baa05296a1795e34ce0d0c6084c32d30e33ab4554e395c5fa2d116e870a12c055b8da6b89e4e06334a2c0d88b278291832b7da40c0e70807274ba879ae6cc41eabc1548c003610bb92f37b8def99ab3c9e6566060481520943ce1bd0ed918d1128ab7ffda95df3827d0478f90400750c6799ed55763973f0c5c4680e065cebd40e9a8a1f964b516675dc5fb72dfc8233a7628ee35b14fb0019a0d58c08d3e1150a4146d08d7d92365e7c31f8a58d4bb7022e9809825d129a0efb16e6df0de6217aeb7a45b4e90b8d33935717d1e1802aaed3d102686d9e4075a4180917e1cd6542e1ca607585e7fe42e086105bd9b739f20dd893b0d3d789d3c0f98b8501036783eb81feec3f3f1cd8736749770a7403cfe6e01b8ea9360f9dee16f9669966a798fc573311ddfd2b2e5efa59997f72de96f25f87697a11531d975ff94fac617e7830594dc140880bc43384ab54c6135013e4f652b5e9340322590e420b635cc74f6f8b4bc2606f1ed8c32c63e3cf8f6fd179051f20bf2f9e8ba61f893d76c5f8adc0113c623e882b1cf0c181694980af0aba79f8016e835a3dc7b0bd592760f10f3ce425aed0eaa68d0e456bb282c4d60bb648ce9e90b6f0d9f2fbc4e2f8e00909efda58369e2441c0a8120fac8eb23b05647cb1c475a6eb1b3d1dc5ae932bb17c7e605f1aa422a379b542ccc91646aa1179a1525dc8a9959988dc5a98d35a0d0e5dc18858cef3a5fbbe7f95c54a085dcfabf1a41401306b783866b4030276ab25084340304616290394158c12b34ebe02eb3fce18494375f5871fe495c26b9850bbc6ad7436ccc2320b2027c2f141ea69264dd5d08e02752dbc63410d390f978f716d72ec15cb1424094e9bf270a7ba6738258ed14d5ceed3e5d50353d645e7bb575605b63b1ed25d53f52a66e335de42eff1167597900cb38f4242558701cb567e740146415d6ba88a9a53032953200d51a10ec6af07e16c232a5747f84851cef518bdfa8fd716f55f99916e7e500cc9b8fa8fac926b0d87c424f18b17ec302739cdf2f03cefaccc2bcf114f1e7d969d06ec66731bdb383bcf74cddc17cdac6a7d2c11e6e4300a11f73739c033bc82ceb20c79123447565046a4a9dedd90e6c3ee6b76c2727bb7ddfd73e93595109910c1042d4238c480524beb8647af795b090fb1b1e144dd37e7517ddca4834e7627ab2e185c5ab181c1496e18f1261311ea14c5e8a7967d3b28fdef36e1aa071e0e45c9e32389448a94dcca906ad436009456e0e8e0b729e5045630211367eae78c61422d508d6aa600402abba6448ed157a5184c00410e878bb9e060d8c4b03c8f92a8d54a5abe83f70fd4cb45728ca3a86084b629e77b677b141209c28b6201dadd18999d54d70544daf5705a99865f139c0a744ee66a5ab3c7e42b9ce47a69ed1def7db100b923dd03be25e1a6939994363d16e2064362af4e7ef78b2ac6cd0013d92ba64a3bbc91348fb1c6af2b6ec82c1f8102072fa261752bc2211ce5be129e8d5c203f75533574c4b6475495be2b610d4457432f6ecc59f1b484f6053637b26ad090b12e5c43adbc9c1f284bfb3742358c532fecc3fdb6d8733d0ebe2b02112d18e26f8c1978a5de0d2dea41e942eb67396661b10d93446b6ba76b87160cdfabed5d7680c05667b6112c9639bb1c903a93e98d3ea101db3508522ecad279813f0abbdafb4074726c0908f46e293e38cc47322821bbc4673ddcbc8fb46aa68ac9b8ace1e5cbf3d89505dc679d15f04526ce1383359c692ee754f8f84940ce1579309235b8f3a65243b967e7e1331195b605f40e352b603d8c423f6d2382c26b1eca3a614dbbc9ff2bbaf0a642348e7d8caf21b3631dc862e7b8a3e2641bbd9e2600928279258d0f4c3b0539162056d6a29d2e5f21d92cb353646a91cd57c0fad6332ebed2df28dad2e724c21fc259e570488bcd470c37b229fce6988dcf2391394ac188aec76cb9b18a769f625a47f992d8d255c25c96bc9e4c820a073858229ede1469dfe28d13c6c1c51ff5de763722841cbe1c4569a4cf5e180c19ac6a6387222529191c0fe725fa7e6a01687715f0a7bed6812c74d78d1731083af695ed326a92635f80d8861fad910c01fb4bb33770cbb03fd5c60ae5b3357fd6953b6c5c45cc0dd70d2796013663418ce89711e40ea14fc5a1d28480489696ac2ce6c291800e644841259034b1a8539695a1a521859d9bc5acfffb42cb2097e7c366136d5dacd80f09f4de6660e989d18355f03fe5bd43cebcb8ade9a5726a3c38658d7915cc68fd887207064c3a1805292c2380e9a1f3280d2646a2cadd5d09b8807707dd1d1ff962e5371cae9661a3d116add80249414ab194a78a818fcdd2bca7ffd248c8ebed89153731ecd0a99d9ba5a0de2ec4bd1339d7bf7bb5033af0edf577a373444e1606daf221fd8760f65399f7bd09f83cb82fe9b138ccc910c456a8d6e496cb404c8b0e492b81d4b0152c6e94dab45f5f2ec5daf6d3e57d06adf42803928ae1f461060bf34aaa51af8ddeeaf24ec8174ec814caaf0a1482f98b194c354de52e3fea9249ecdc645abcd866c57c3d973f4d5100a57029814cf72ef50091447b85365f095cf58d2b3448e15dae29d1d5999c5bd320f1760bfe6679d4c88d31996d2f7728ae531a147146fd628ae9c56627ec540b67909f2ce290001b1fdcdeccc63676852c22c4a724c67ac9ba0b9f9188529ef860307c00a1714f0f0fc32b75774d11b28d5ecc06893a0b24c406f63913517e850efc66cc3aae80edc1688d25906f7c84857c5ff896442baf5f08b1d4c9d7ff6d1cac473cb35888773fbd859b9b59164222998fed6b080707f665c633f580dd5a5145fab55d7b2a9370cb691cc7cad9444343709226a00978e3a773f8045ef071bd5c1699f1171604dbd48d7e76d40b8cb9ab6339fcc478de49c005de4cbfa2e8a36b626e45c949d95a389f1c146f09e75922acc80981833bc31819b7566f013cf5a9d8125d03879bda23634c4eac8e4afe64460b8ec389ecc36affe58c5cfaaf03248e7118e8f6b7411c2973b5d36a53a7bb2f86f9ae1ec974632c2204ac8c0d77691a2f1db32de256454c278b4d4670cd9ea1902a123304811675431728f068684e286564d5973109c6c2813025ca33b48dc42da8f4ad662965a0d217193f4723d61f8298861ac13f2203e158e278d5245f1bee2b88df123d63accc9ee4880192ab13566f7e7431f95cc9208e2bbfda202c9b32d57dd45648fb8167a7b63438dd937c71d4721376bab0b1938ef383bec8b4257e3b7636fef6314ef5eb535e4c229ba25c109a1704b0a5b5a92aa273df556587074fc0cab28b4026c16564898dc939c280c0903f46023133870128b09701be6f2d7fdaaffa1ac7283f97ba441ed8214e5fda9814a94a953103c156621fdb394310280f5dcfc0688271864e215e3f097eefb59897aaac65ec5870c84b741df21f7ead5ef74803e9bcac9ec4fa2faa4679bae32fb8fcfbbb6f4db3162b2ce036046afeb144d326f8dcadd2f00eb1968c29d624a56b8a7f61ae787aa447cfd0c9fbb6902ce4f5033250d65a50e186674fdfe7cef4ed2ef9a83bb5a43614ecdc55b2520e1de553dbf89b505dfcb7a5734ff7d5349096306feca5011facba3b363523f78098f82af1b1338cb0c369ae72f4698722cf39b272820c28494b87e0301d3d166d67dd503c89afcf4422adc7b6f11e5df734d769941adcd94b802787085b876949fa8e3fa24b17cf466529711f1770d196b6dd1234b07e480c51b9364cd47ba15328fbf3bc4fba2df16a9e0c86eb64947e254c186c50ddc3c9ba6c2496419b162fdfe63c3fb7e03bfcb3d41d30911b1fc71c08bee766f69397d6e030389ed0891a855a27713399c8933840a83cd8e10acc0a2f665adb40a91d59ee79ec6d317e050b8ed046af10916dc5cbb2a26d527e2f0e233f2f54e998c1e07b427248a6e039d0062bf6482d79979b48b7d25ee86c0c6da9dd31587dc340142359f4385d9def4c98bc8f37b681881512b5a800d7c738449614229aaa7e5c7798f55055551174c3e9dd5cd34e2706285db36fd255b84f4e8d712ad1df85c1c5ca725f5d904c3d9c6e594ccde335d89d200e59e4214f77bafcb8c284292d32a13af8d662c7979351bae889b89941f7ab5187492fd3a06fb64f65971cfd384049f519a18ff412be921a94bf15a7973afef09891f65a0ac2eba16fad044f67d3782b2a0283f472c6f7b56840f92bcd7a02db972cc7b5d7efb382ad472b2ceeeb67c6be4675f92672a01288410f094687d54baf8f734640232c416b039e6a4ad9cba4d2a36497287a66fdb9592d160d29be624d3b49cd1166f908e72868961c9b01c5c449b6db93b371e20e2b98c427d05d9fbf0f9302d1c917362598886c877c1befd896b8b4ac67e889bb492aeed8bdfb1b0abc249bb9ba85097b4c50a8686bdda8f6c3926b53012b8639306d79cbd551be409ce173c3c61c5c08ad1a7a3851b10d84567f9ebacfa071894ae7fdeac5232894f4b1d4ae6dab16685674f0bbd984050034440164a0072f297f5b26254150bc2cf09535c7cd7e5239265d7a1d944367b10027a2def30bcba15f033a206214426b32e8575c557deccccf2ca3b8f195dcb390634c211fe45011b73c1f53b17671c2730e55574c72cce2771d7beece4e761628ba46fa20b93c7cb720066bb75dc150aa2e7b28af95cd4cfa16dfcb55838ee2169c9822be462e631dc33df13b31def9e856e6866787b9cc0d8549cab6fbac1f767f4da1adf9f0ab11e7495c1c8d6c886c292363c6c92d7525dd3a868bd52b29dbc2353d673aa032225a1ba4d78b79b3946496db61a318876c81e84881fdd38531aa63530b0f2b7db8888961f7badaaa02f41ab8042e9aa1e5d17a8d5dd462e998b570c516c6d9e761cdc56a5a74b29a5bdefd0bc2dc5edf22b2ede2ec883cca900a3995cd67bb98d9d332d53e4b6552cbf65aa1833840da1713da4f807529136f10f05e1e18bc055a909f304ba02bd8ace4d398512992c7406324c71e62e4cb9133aa7207424968324966e8b5c6b3fb4440cc4be7893c70310fbb7c469334c75b84b3046e5cfe52464139ee4d275e7cd815bfbb6ba71e32719feef27da82b1fa79e00562b15f4ba75692a52b5664d95bfa5a1131b9d809329ba55dca394a6d0a44739f8eccda1d533720124af6bf21058f87d5bc089681bd856a2a76565edbef9dc30bba6aeb87ad7fae5ff15a78513201bbd4980c447c8058147f5be8ec58ad9fc8ff0e62847f50960ae8686d940dec31afec97c07bc67cf7d5da3db3b3b0bd5a9fb1dd96fcb181a971f77ba842638c8eeeca7efd07d8bfa0a047a4a8f57769fddb21fd96faffd3892398c0538150b9509efac312f1fd9fc877b8f084ec2a190917e2598db9360136d8a71b5cf03c3e463794cb7292e961c403b4b57bbc41f3c051534e997e11214d6a6ceb04b4ea732c767cdcd7b35c19a91cee4057ae6d29827302010689125bfb7f5877fb884f009e7735de24df266352caf5c49661774078052de3c2a329c5e6bf8aa25959c1619b91c0bec263d34bc660aea1af8d22fe4b872ac29a47f278f403ce1acc630fb02cc7c05e732cc5935a4fe10a76172c031e07c0d9fe7eb5d0ccc4ac0176f7fc5725c52b7d647389a9dcf14e5c53a13b3ba7b027ccaeaa0e2595c6641f654147765092c4c82fc8700736149a5421a3a939a3e476a711b3bb5642ea7d42dda34ec7449f4841900f5cf6bd1f51a8d914ef39402e0e19b6c951af80f5bb8cb7083e4a862dbdf765f484b84d5bafee18343cc6670e3455d16e63adbbd52f86012df0680fbff7524095eb983b163177ca275886b2907046ccdd7733becf4a449cdd5233fad87f291004de043eb944d10f55106067b53928304506a3a074548aae9e19ad49b79028d4e0324f096330589234db3ba3c3e831523b518be97ce5f55f87f02aacecc3541e8b0b0bb68dc4e7fa0f682c9df6c2a7d598ecd7acc9eeeeeeeeee2da59429f00f3a0e16101ce72c8edb36676d9ba6394bd372c6d85918dfebac7bddc6751bfed66e4dc0d45f33e797f5e4efa10ad1c586d91c97440589ed495448b1559f9244a589ad03ebac84742bb7b104ed7df7eace0ef64c8d63bab3c3315fd0f65521b26cdb29c4eb563995dcd5bd34ec0c76e311744ac0b86c0014b2499ceaeb56d9f9ec4623b4e3982fb4fddbd92e92a84cb92b2cdb93a63849a24208a9542a95dab86dfb4dd34e6d5391a367401004ddf15f537da5bcb05d6c17c2152c3c10e255dc4a8e9d1a343bdb7994b7b3f606a0631d7caa459d6353e31ebf03b8532ddaeae900f71855c956fdafde57d338c6be03f06fef80fce08d1b6a10ee375e934ff71a7f2bf6e0c1a1c36610f9713e4f8063dc6dd6966067b843f80c9cf8a0d89a0bb6f62accb6e7121ea3216d7f73ab76896d9770968fdb60c275066063b4879162b2a1ed20cb5df956fd0bfcc5d6b4275dc787eb8caf3de839e46be0ab366c4d676b335b8b616b33b66682beca3f9ad863f28b6668fac03aa46ac3ce0f9eaa7ba1e35966767eefac12c3cedf9daa5f99b13317f9dc7906fb6a9a9dd176d6accd536cf781fbd6dddd9ddb560d2715a1b4dd356ddbdc46ceaf6978739daf4e8907df2c80db9b43dab6dd7b31127bef6f00f40bae5434017d7b964012699f4c42abd98a6ac855ede03cfafe118f751efca5b7bb74fa6bce80850aa6f07442b6f7aae838c6bbf7cc17cdd6bef753a5d9fe473c1b92b34adb5e94de2814cae537275836a42c58ecce0ac7d8d5c84501dc85ac1738c6bd50e2a954caba75922d14f1f36953611252a45828b68aad8263f40b219ed6da6bcb7b6dcb93af5e27dfc303bef842ab029ede79c7535ca51e6b50ccee5d4c75aba26e1a500d21bf7cf2cbffcc1eca6ff9f2ef8954be8b1a483ea1550dcab6db13bba5605b5bb2257b2dc79df7d4ace018ab55b9ab2a7410271892fffebdd73e77a5e098cfe7858263aa84ea85329eb70a8ee1e2aa462c428ce7c58263ac78622ec2f37a71bdc0312aef9e2aef940db94958269c984e27cf733a55a50fe20443c2bff7bc2f847d4e3c31143c7ef82a4e620b29580a947be22a58ca732f041742dc137381636c152cdb7e78622c5c70afe2fbd88b2d7890c6570d09ff7ef826534bba5a15b187fbe3f89667fcfbe38974aa50446c4c28a12561039d04a9a76c4ed0b8682233815fbc268c13343e556078aac0779ef055de3b8fca3b856c4f92183728dbbed8e203fd5bd5b6275a15136028194a9692a3b46ca1ff3b93d4ed8977e62ab94ace725756708cb5c2ce5e78175e20a0d5ed8915dc756e9f9b92ad07430130bc81f617e2ee9e43f671575d777499d87bb56d2942bbb553ac1425687ffb9dcdee1e03c77e6fe89a8635eb6eff5a772bdcc7a66fff1d8f8e6b812023a7eccccdee364a8cf1edba6debb89b4f95db3a19328cf073954aa5ba2ee7ef54b75bc632e842f5ed5f8d5fdfd5d5f6d461ce5bab5d101b7f17ea7cf33944c67e0e69fa049a088d7f071ac6387f9e26bb2076974a759dc661acad77670e635ceef5eeac710b4cdddd4398869dc1278c5499f5befb7e8e695f93be30006fa085e4e0a3d3e96ef60b7c21388adb378a5708a9005261fbbcdfb8dfba6efbbeeffbbeefdbb8df3aef3ba97897dbc25a6baf501116c23adf8b7e0500e13dadfb8c3d6576ab3b349ce569abfba25b415bd1895415b49d2265dfef24aba0edab568af7aa5fe9b67b89e09d1d1a9ad5ea5f4d79ddf6f671bed6bbf7b81c7775a7ec58c95654500525e854104e4f7409071a9882063b98e204399882031d98e208184cd1a401fa34859306f48908272e74aa0ad3154dba60033220c1090532c0c0076430c4090b6d92421985360de10352d8000a29a28080144c244991c44bd2d603f0644da5abb336e687b112b90efc3e0f0c399df09637678b3b67ddae7396ddd759ee796a69ab5d377abe39f9aedc7482c992d21d9773ce19df7bb77b73ce39677cbfbbf7deedde7cef66baf8de52cef9e6acdfdefc3372ce195bbb592738c69ff80c3abff7de7c85b2e49cf3cde4ddb6bc6d3fe3b72d6fdb735ace79e472be59bc5de885d66e05b8a26ddbb66ddbbddb0537fd6de0bd5ef8336cce39e39bcddfd65acb8d19af6cb637631a77e5bf915a36f5be7747ebe49c73ced69edad5fb5e6cbaf967d87bb77bb7df9cbbe59c73ce1855b68c3b2e0041534993a38835c9ad68aad8f7043fcfbde3b67bfd5ecf7eefcdf8de7b2ffe9cb5ab693667eca71629a8609c355398c1cfa392b3b695c20c7e1e152a1cd7796398c1cfa312e60d0cb94d13c30c7e1e952f04412a2447c5ea226dea9474ae6d5c67adb55bcea613c6282ed87bc21867cd9473d6b692b6e929555624c775ded86191ebb2288a6ad116c533d758c57c270def0b3f10bc399fe84da9b25a89a1df9c91e4c88d26dc995265b55ab9b69562ba64329d5cc33a9be9c563b4ee2cbd04fd30040f777aa5580fdb693d464b62024bd3a9a4c9f16405b7f0206573a775b7d2badba26c90f4f72b4830448904585aac132257484094c0d87958083ff0c6d8a24c82e20b282c52291ce82b5278423b799204112688e2e6bc4ca992ad1061db6d3f73918590937073546f3f63c9398a27b67dad89e6e4e6c078fb9a111a123727c6dbd792d098d0a0dc9c1851a44c1185949b23e3ed6b5268546ece8cb7af55b1af59d1b8d0ae64615bd3b6af61b939fff6b52e342bdc1cf3ed6b5e6c48f63727d6936230816d7f43e2e694b63ddffea6c4d6c4cd81e1ed6f506050c486e1330c3048da30c0f01a860dc39f620f0ce79b62cfd999dfbd00896d7e68bea007db34b729c5ca36ffc51ef37f86d8f351c060cf98118515f68c19af677c39e353517cb1673c8c192ca0b2673c8d9b43c39ef1ab21f68caf31e3695a30833de3715ae0853de373cc7001157bc60c290cd83372ec192f43ec99e19ef36d191f43ec91916bd8319eb0633c0cb127060c18af127b6068d50a96d8aa87117b543030ff22f6c0e897efb6b05f3ebc39e17e797f41ca45054a6c970f6f8eb85d8080face5bc41e544b0a40b05bbe147b5afc8a93124c5f127b4c3876290a12bbf45aec2975306cfda4d8a349289ed824b749f2cb14145136f9304828aab0c926acac88822ab6486e11050cd8e287628f9877ae0111524927e080d63410424d92093670b9124cb1b91c9b2bc11636f7e5cd396deedd0b3d5caa2341162e5b234105b696b9e0e96e3c91d45d1344d930d8972a80ddcde9ae73fe38e6da1be85f7d8a0356ae88dbef90624feef2297b95fc3b4e4cf13951c50a2847887be3c2de5e147bb6954be165ca936ddbb69b1154d9f941980688c007a708b43082291f04131c5105170e58428a0e6cdb46032bf6b66ddb56128115c1142f3bbfb7e3a4a199f9010d2e60830b5871012eb2a644ce39bffdc011f6b66d1b0894d85b152038420842b0b7a71182276c2a50eced73dc1cb7c1de9ab0c2de6ae0492270c1e6f6666593549660020d4c3481c30417553ec0c4de9ec6465e49428c2f21811a4bbc40666f3017f0c0117bfbdc859b0752b0b79bbdbd26f66c2f5cd0aaa6c111420d960049b0b787b175e0097b7b1a3727007b4bf58cc0031ec8020b13308111340e64a1539baa08add2e8709e92c77e92122048a55a68e044a77499ba22841616745da7b55ed174afb5d65dd77d06a63c89913b1b3c99d165c08a0460cc208a8c2e0343a0804a0b26b48012a30b0a64e932c085235eaee0e28a2b2a238e4895291c5cc1011618dd81225c72b7032476a0c44b1223a800aa4c3dc1a92e092949b4e42e8b295954b1c204152eae242591250339c0e293832c0f40620749f0d941171c4822e79cab58c1abd205bd8223f417ca54155c5471a50a2c5564a9c28bbcd200150e789ee779543071631c4a17454b494d792a4a624fa6d140119e8c65ca4a13564ca0c51e4f6b400a4788b9f3b1620ad9794d3ca4ed6980c7fb32dc9ee7791e1642b8319e84ae8b1be35858e1c6f828f6e4df800626007a973b1a64a181174e40c0a7065df0a1d22405139882654a162a2ab085149f2da6e80d64f184f3d181146f034678b2f9dca04ab781293cd16860840f0d90e0f41046f858c922010af85c1145090af8e000a90447f8f0204a1207a438c2670a520e523ce93a6ed3ca148c97a419272e942b5b145bf0e20145fca00349490f48817e000d9e8cbf7a1a2b2b96c8b24b271a667bd203b42821f0802ebef0002e68a14b0a8420035e03b8d8f924039dda9ee40406569090904490e4448b0b705ee507493b43d9a72e9c30e17485132c5c5184115bd0e5f6a42242709aa255db938a70c110b4b83da9082d8a280205bcca175d5ce93a6ed35e926852d0d15caf81f199b1d6529bd6e58e0a0ece4b804ea3c637be3ff8957c0582de5b71d46e03dca50d8aa71adbde5bf0038bb6f7d63b9de81eb4356e4e8d9b73b1f803868d4f9c1b43934587341a8d107db527f29e8b00de9c3de78b9a42db23cbe4de231b0542f0822aacb842892e94600a1bc0020a167c538694800b528270a5044e484103536041050b12d058d5c8c24b1454a02dc1f33ccf03a92072c5088a8085064730c10fb424ba1041d21334aee23d48e9128badead7a6d0fcd358d5a0f15b95cff3b49c73ce46d899332207495bd0f8558d2b302003d0db9e84812840907aadcb148c527f53e8942eb5f658c06d5aa7cbd4b73de902495bd59fbd8005c7e098269d11aec4762b56a0ecacfcdd0b54162e16fce18d144394171a5f8cc7d7c4303f8a0b5abd4e8cb849a8ec55626bef27f785ce6f416d5ac10b103c8db89fb99924f7059d4ff522b18d30af93d1bc54aacc80ca94adfdd57c0633e0626b5dd8dac6e745029fced3e129585d6d8d46afc81fc19b3f8bd459a4c727135ab03205f062c1a2d25c408a3dc3f6a40b0cb1c115f7a52a68efbc3aae15bbbf4e300d172b2b5f45b43450565ad73921e22c27e236f083305ed059e382c64a95d7b47f7c054f39a94033826bc1627cbf8ffbd09adfa90a11c40bdf451d9c277c1df77ea882e75b53d47169dc1556ad13211ca37d165fa0f3ab9db529ee35ee7d6faf95586c17d77a7173ac7dedaf932fb1e8306d129689ad39614a169b655bafe249dcc31c81cbff2b1a9c7f673977869d17018a269c5bb99cd571afb932b7876175d87f9b459bf28414db93a848da33b6273da1c406497b3594157dffd690dfaaee771bbfe5b84ddbd63e8194f44493b7d65e6bb9edb45a7e1771c81b86e3cc93bb6f023e55afb283b51b641f909dcd36676c9df00409a48c6da8f3811f831f343ffc1ef7b6f3e1db3b57ad07a7e33e0c17349984567f07ebb83cc108483cf7dfeed88b254a9205a4ecfb491048dad7a7a8df8596f12a035bad717f601d17a9bb9c0668aed7795e67da82d6db932ad00306e8717b5205aa54600ac76d5ab6c201210724ed4e0d01d4d058b2d0d45809c102a3f40d973b35c61c6a2aef9034b90f39f0137bb2c7650ea7861d5f95194f75b5cdbc37ec2597b1a9bd68debd6ddec66dd84b4e45d96daab90af881e6caf43ece732a6b9dd8c39da0a6b794639c37b63733c9475b3e3d41d3ccdfa7bb674d932bace19fe14cee51be580b2078ad637c2fbe176bf7debbda6ee5eb004c15575dc154a1ede37b6fb6f75ecf4bd072fe9c9cf3488aa35311c0abab54a7895a6b7dfa389254b43c52d1f26aebf2ef88e67b4c87ede30edbc75aa64225230cd3718cd66276fe833e8552612ab5ede95252955c4a2e2a54aaa49d3fe8cfa9ae1355e139449ff90c41101ccb52c8f4da83a60f9fec3a556f95e91ce23806fcf0044f558803cbd406aa9e4c8de72bb5512a95f864aa54722995c6d24892e393a5110cc94c92e6370a695144fd80a2d9e2697af287fc3438a66437a9cd0ec7947ec8e72b0592a4688ea62ab4c752793ae1cfa6388aa2e9148220589a4374fed05485b6f8a6d3f8a7f0ee30058a1f8ae3675568933f9a43f499c50fc55438249f4cd4574a8877299b99d823b0331571d7d3e7f5532733df95ea5db7f32bdcfa5fe1bdf7e5ded4bd486684bbebd6ae5bd757f80a5fe14beade7bef8aca11531f969feaba57b86ef14f7fc26bf70a5fe1dabdc2ae7b85af1008a175439d3a509a6ad12e1fcc399bdeea5325c3f04dff6699c330fcfe234d672e55074b5abf4b09fcc41e2fe79c55e0bba8a887f97caa2d1cf9fafb1cea533da23712d59e1d89a6ca47f943a60fbf3cc33785597fd6a6fecf54c3f7476994d6f26bf36432959f5f971f3e695295a70fdfaaf187be2f7ffcbefc2ffc30cca1469d34eaf53984d2a126515a758aaf615a4a2f96c05209d426a9b5a9a4cf9258ca5a0c3fe79cc3d7a6a7e38224f9e4f8d924bf6496a64a63e78b4be597ca17bf3ccb1fffc14f99dd8d29cb53fe537ef1f3994bef137dbc4f5d73177adf673a49f2e5c72fffc5f44ba64cbf312dbfbd09a53f1f2ede09657ad1fbf05dcc2193383eca2c3d699e4ae6dd27536df93ed3872655689e4ca6d23c7df8a339a45f347dc9a44b1ff943e2eb27c5d72f9ee287e7289eefd6db5af029092d34d5d70ebf2441ad74aa7697444dd34cfa7b90afcf729b5e4c852da0e97f02c557f9905ffa1ee459124f95cff8e2f71841b1c5548f764b4bcb990a5dc2d4a769214ccae5f42fa890fcf1c5f2356dec71b44d3fbe68aae5164b62492ca97cf49bbe87369d47bb74aa7c4c5ffa1ea62f89a5a9964e6f3a8de7f6da8f26083ef9a3a9bef6a8695f7ad1f464599e2a7dea57f9b47cf93d5acaf368eb53e553befe1ee56b53e9545f5bfbb1f4dc78025fe5e9c773e8f4a673c8e5c77f957b24cf57b94fa28b0b4ceac597301586645832959e0c45b2643a55d1bbcebbfcdaa7377da9eeea88e28befa2cf17dfaf28be2d5bbe47e95bce72973f8a7fb47560d16eedd7c5e5532e3feaef513af579b4c753e543fef83d5c4ef5558e62a93481e0177e20f82a37a9b53e55bd459124b5e9b349a29efbf1c4237c97ef5365ea2b5f7c97d0f429477d325bcab2c7d156995ea5bffca36d3a552d1ffed11e4dd38be6abc7f8e2b7983e6369f630f9984e3f9120a8225fe533bee97b988e3679aa7cc427bf8758d2e4399eeaab3cda3b0af0d2ca473d714750d3b4c6850a73aaa50f35f925131cdf76245685b072e43b1cbbb0651c5fd4bed4bee5d34aa79afaaee5b5538ba677417da7b546be16247cf047f2f4091fd4f4088ea6d1346a6d6aa0563255e3935f7a50359e3e9a925d7af25485b0228495adfd681acf21d387e790f8e34b33d592e9cce7f85aaaf4e3a9ba9c1955fad172aa162cb5f1c1d1d4a3366ae0eb1fb52f7daf697a7cb0a48da5b3d3f417e25003ff0bbf647e7f3a3d76cfb957f80a97aadc55a9746a7daa47a73a9adedd86ca39d9e58f6278abdc27f698e33e3e1e8398cef1fcf4f93df881af039f4aefe0177e2038aaa93dbebe51b61eb927cb100441f2147e699e5e9ba46a3abbd004c19f1dedd287a61abed6fa8b3dbe0ebcbfd78d429a2a933d9ee1a93281b2d5d78db2c5f7efb30b4862014c086165679e1bc54aa9a1807ad154856c51d31a0c4da5b968dace0f265d9620088260f923088ae06b5418e3cb1718a7ea7439d51508be68a006a640533ddada897a1d581c51aa97b27c17f05fc0578520f82243e502f33160bc943f7e293e78aae05b31c8f8e5cc6efde56af58f52e9f3880afc3ca48783e5835fbe68aafafd07005396a8d24ca57eb46210f0549d1e7cad3a3deac7d54afdd42e4551753a8fa8505ac81ef573302aea53a74a0b8d3a61be3c87605e3c875cbefc17cd2e1f3455d4f9a2d930afb994af893e2ea78c73c55bf5da97a71ae387ea54ed7e79f0c11710f5e583a5892ac1523feacb97530351e56bb00441301c411004c50f937c7c94197eca5485ecd4e3ff5daef24bf92fa6ea573e54a93fff0f44708c7ed36b66ea4f26a9ff7b130c8cf2b5138cfe19bff5ab4e75f559e71f1cc7e897703c87c21751291d17f52ea25efcd9d12e7f14c547bdd665598630a9322c61ca0f53e5c3949ffa4217989754a9ba3cf73af5783c87502f8aa817cb87f99796873187e4377d69ea90dff4620e297dcb89fad13ca5ca5315b2350a75ea4f99271d58c73d99778fa6ea72769a39a25ebf668eda4499aa4f01b57034c596fc3a7069fa0e4530ff9021efa69ba7ca648b6f77f83ab07d9049160f39d507bc17c5274b2da5a9de1de670f4e3393e09822091adc33fefc1b1a5fcbecf23cda32d9aef89dde33f75b7e5f1e9f1d9b93c3e55d4d90d7d0ffef7d80c41f04df85bf09fc8075522db3b55e283effe9d2a91ad1a4f1fa74a041c3f7c108f8fcd23bf91c0ecd9d11ebfebdcc3f1c4ff3dfec6d293de7f67f8f933c9efc12efc4a0f82e7aaedef4bff81ab563ac3d3c7e4824f15d5f261cbe353cbe31653650282a6076ee0f8dbb79caa101b7ff89be88337fe7c8618bcdde3c72392c67fbdef3ec9bfc72a914dbae3961f1f6c31c3f2b1d962865f9ae08931f9a179f7d862daed3a62599ea7d354bae3eb77710047fb54570d9fdf39d4bdd779a0e9220e9ef73834d5df4436f8aa281a7cd054c5d77e24bf7308bfe779f833552224f8e4f799aa786e9ef70171223cd08fbf55fb4c75d53678aa4cd423bbbb2326746cd771313e477cb2422bbd78325520f6a96c3169503341907bd2544d37d5a3337cf1354d3bc9d387a6ebf77157e350e9c7711c47cec49da50662974ccdd481451a5bf52fa14a13f725f72890e3b4f2b517ade553af9daa4bf9daf8a5e7c420a51f83881ffe486aa4466aa4468a6778ba0e3c8eefdff2e16802215ffb8dfbd13c9dbe64c520dca9d2cf7da8d22f7ea9ebc69114cff05481d8dcf81dd952fad3a9d24297cedf9e3c875a3e3c874cffa2b14be78bc66e319dfe824a9dd9e55cf12e7f94cf9ddc8325572a71634872dcf8a5922339ae34861cc7711cc77125500562eb0ba37cade5fdae4e6f1a352d0715ade57ddc5569ffa7525a5f9d524ce91d973e557a97d2a3ce96d3efaa74aa2f1a255d1a2a7d582abd8ba5d278aa47406c1abf35185b83b1c9f2cb534d9d4cbf2b5d6ead85245fd35ace93264fa7367df763e9c3b0f461cb9366f92da64f7944be36455305a2748e27536bd3e99534903481d8a5174d9ff1b45bd35e6b25f37bed439e238dad69ea1112db5f0a10ded25285f041533ddae09b4cb5689b4e39677348fcbbc7ff3e93a67ac4433cc9073f72fcbf2b1d7ed6f9b5d67f1a4fbf2b7d9eea91e9d7bced875a7e97fca752fe537e974eecf172cea7cfe1a9c2bcbb7c2e7d2effe5fdf4597cf2c50f7d4c9fc7275f0c02fef76278aac6d3073cbff3f37f6f3255f0fd075002d1428b1f7e687a1074d11483e453a5c3274d957ef0c9f1d56eabf4e9039e9f08fee6c3eef2c9379d2a2d3479ae59fbef1c2a5f9f43a527b3a98ae79a77796e2e1f3e79aa2f674e9d2bdea70f3f8b3f4e3f5ccefce0298b62fec0fcbd78ca1f92628ff7398b1f78aa610e73f63ee79c73fede039f343dfd2eaf863bfc7ccb0f4b7f7ab0649241caf7bb3285e49bc254a89f2cffefead4f2f874fa1633df98d3fbcd39bdcb19a45cf3f6de1f3c87bcff3c7288fc0f24df45f2d33b7cd1548bb66812cff15166f82d6ae9b7d726f01c22fffbfe2b5f344f5f9a3e27f25d2ddaa1097c93397e68ea512d9ddcf7ea173e18ea17d5a24dbe367dc0535cf368aa4c7cc4133cfdf30edfedf68410518b76cef93d9f34265c0a01d61f829a8b76d2344d234f95467ded54c917bfef4933dc43faed2af58e755e3a7dfab4d2f983e9d3b4a9992f9aad7d8b563ddad673684faa4289adfd4b15466ced510f8236cc620f683f5cb457bc8750af7da70ae3c7cb6b2eaf7aed5461c41fa8d7ce4e9be427b14f3ee84abab0c94f75b1bf47bd0d84b0bf7f791cc40f5f9be2a9aa4eda7f2a558b6f213bd4a42635a9312964ab4ea7aa259f43cab3a86887dff2dc831be8a2cfe9b596d7cc4fabc4ffa1f4f97f28dff4919fdaed4fd572aac45387d2e71f52cae59bb4ffc83f996acbfb6b620e2e2fbe26fab0dbe5c9ff420da40bb529be8b40ec76f9174f95165a9f415c9e3c875c5e3c87524ffe8b6693e78b666bffa5dec9bfa24f0ac6b9e2fdf2aa33c39c2bdea81fa81f2fa76a370a65aa4cf6a79f7c9034b599ef8afc1ed442f245bcbf1f6af8fad5156fd4a90ab1bf177bc0ff82e0fde9333cc553d57ec5fb23359fbbbf2e7f48fa7bac24c9c520df1651a62a64a31e93afa636b92235937c1753b5484e4ea77ab44faf69b6d6a574e02f9d2dff83e9915038758281f18e7564c43855a7aacf97534db5b494fe877cae76cb974ec7312e3f9c4ef5770bf87efeb05b3c87c02bfa80a77ab4354abffff0b608ead771414f623f7cd095684fb281143b7cad992a8d2a6493a4ea1debbcbce3144a06f93154a94dfecb6f52c6a9ae36f9a813c60973aafae55453a9d4e972aeb6a669e073df6222b1fbf457f4b95b3c87340ef6c30f51eff2a9cfa6494c9943f2297ee95d50a60ea2bf3ec93f992daf99e2dda2a98267173e78436daae1cf8ef6ee5189dff2fab369fa92596aa62a646bdf620e317d7ed1d4c1746a7348c983fc1369ba66aa2f9a93a932d9617ed30fc9a763d339a4746af254996c1ce3ead10e1f34ed1f3dd9ce842a64e7ec343c274062b76dc11f131bbedc009c31c3593366c890e12c193262c470568c183060380b060c95ca592a150c8cb360605e5e9cf5f2924a392b95727171968b0b0ae52c14aaa5c5592d2d65e9acb23c9d9c753a994cce32994a2567954a6ee36a4d92ce22c97174d6388aa2b344310c9d15866ee3b240f0fb9cf57d6ee37a9edbb8acae0b2a8d00d96e39688044430e3b4a0db8f9cb39c46401e94a13abb14a33740c71330cb6b10592008c80344348931692c701b8c7100f407af17c08cb0d20f16829ea661f169072ac5e0f2215d09c87456d281761c4105d2e611b37433001049e0c3d68d2799181f1829a8e128723e3901e200a034edaeae3f105600322cbc0e160c00b3ed08301595060a68908940304a82081464638d000d186b42e407ac919e2e3706c5f37621d9f1e38c6c7831bc247e4a1f3a1eae1f1793e421e5a395e80e4926be47c1beb246e1fd873266004485fe7434691082069586b76d361fbb4193619b60da0911743e763fbb8177187472303f15c4a18018041c9d0ad80ec108021be4e86bb116f747c847061e6603416cef1c21cc3ebe03ceecb331a0e794787d554d8d450345e078471f4cc90ea3e94a733c40d40409c6e9569641a1b09906418f30e4d009a0c8f468641d6e0180c409299b1d808b691b1b68033011688c1a04081952951a020411310381242c96cc8480a44240140fc50801e08c083901c06e083b573b30a000060f85c850dbe9042174cb0a106009c302f1c1358243931021d7a6c60c56809c18d8a1430380114279a08c10798e800015631ccc87060035f74c10a457e904214a8f8895580022e2335ccf071508e78a2e3fd808b27a0b070e4b894e0d77130542e680110692b089001f8f0e8f1c0048a7880e9ca0d19408102121cf9d0834e4eaacc5958a9420f35d090e3715b0a8880810a4080010b4460014b78c003140802a4861962082d17ee16ae1739cb47e162c94cb846d0ae58205c1fdc1e785b843cb8595c1d5c2930147728ab964617438321be5c97db62cbd24933dd92d579bca0f65dafeb2ec769375b6cede6228955780aa42c01a49cc326c35bee0a43e81120695ac805000843e40fd46497b089126c1040ca3978a80f46aa01489e01f20f5806b86e61c7a3dbd93e3c43ead3ae40eaa42095400ce1e9e00e50212c0292f6059216c2f400295ccf2990bcd478b919b4190d09272de04b0618908d40224dd2c4364a335daaf405033401743b5c0e4ce21c5d1348f847cdccf66d2640c2e006936b8035d8e630d7f8786802e00cb0c16cdfa68665587a290fc519007b81011b0c8ec200ad0a1200d44cf43f0088915921b995b2c536f00d598888da2ee703a7e280682da3dd40ace510637c31873bec7d3032e608c09948215f89db388bb98c9367b2ed5eb06a086f865602a4d1044394b6acea763020178101e7cffb175f60c20fb8c8c28a15558c827838e2490f8f0d34e8c4605288c24c0c9aecb803fc1004c81739e08116332840934406746ca0083ed0c10da87001144eccc8040003462b0566b22b4c218b10b6e0810d5870c4240140fc508020407af09821c30525450c8ea0400113217e62c088c1668c4520c21122a42fbe90052c0071001754c90737a8620654b8a00529a0c0048af84980017c0802c4470739a8020b1924e1230840d0410e6e60032aa618411311704003a690c5075b503185142a688294b67c7a4a62162524a10856d820063088e289232490b67e1200c4017cf0e999811553127590032b3ac081239aa4ad040cc08747cf0cac51ccae8424e8200738a82206308822054f5460024d1030001f1a6660e9e0d4c4984ad9bf5042128880032baab0410c609082272a70c40424d0e4083f0800c28619992e7021071cc87108309e18118102f8400302094460899213785fe02f5c2f685cb85be84a9049709fb84e589b5b8369ac0c68030b003f6ac68561551c0c7eb1a9ec6251dec964c23a93e2a84598f00584f1953caedbb8bb6d9a86adbbc3b83b005c7b35dc7d2693495f45d015e69215cda4ad18900b6674b4b9eea2e0ee9deb6e09ee1e00d7dd94989fa5eb9222abffb4e59ac15c3f73fdeafa1996c850192a04f4a8ebdddd86bb0b11eb60ba53dd7d74dd01e14ee48360ae5428c9c73c0d397e45438e87b982d222eeeeb9fb1097a553b93be8bad3ee4ee48dc47ee6fa75491104c8c8c81cc0c7c706c331e133990c4c96ae2b5a34235b679ef1752b00d71b02361f30d73a4b5b2f04b4a244bfc6603f4b63ad8f59a54032a318107a83d9b2b760e98afeec7db46b8d072d58ea38ee3ec3b5d684cf643233a76b4da61179a1350896bede48ec5320d76bf6b2981119bace3e0d82a132774fb9a34a5609eeae729d71dc1d47cdd7f0329911900c3870ece0d0c19183e3060e1c1c37386c70d4e0a0c18163676747672767e7c60ecececd8ecd4ecd0ecd0e0e9d1d1d1d9d1c9d1b3a383a373a363a353a343a38727672747272726ee4e0e4dce4d8e4d4e4d0e4e0b8b17343e746ce8d1b37706edcdcb0b9517383e6060e9c1d1c1d9c1c9c1b3838383738363835383438386e766e746e726e6edce0dcdcdcd8dcd4dcd0dce0b0d9b1d1b1c9b1b9618363736363635363436383a366a746a726a7e6460d4ecd4d8d4d4d4d0d4d0d0e9a1d1a1d9a1c9a1b34383437343634353434344a686632192223d8cc4a642495c580107080afc6ea5b09f142fc02fe6b7c35be05fcffbfbbb7b89fdc3dbb97709667258dc0dd43d77803d889bbbfb8c631777f161122cffa6a1021f2acd548fafaff88c4ac42412ed9ff6a247dad883cab95be5ca891194a030d3498b3540868458934f6f1f1356288e157f45be910900b8616b9bba9844facd4e885227922292c0684c8a30f8b3d919855112a4b023362b16031d75a1484c8b7d2d70b05ba3670f7777d45e03f73ad4645fe67ae54687dd6ac05338a157923b15f8d62abd10f594c26eb491293c9623cfa22b9cbc8dc2077e75c5f22fa1289f91c39be66f51c9416d7f77d75bd8a664f644589985c5b2bb8bfd01b5c5cdb28dcbd746d99701a64e90ce67277d15d83b1eb4c26d38a11cd00a548ac6b5b001e7747b9b635dc1d96be3ec7a745bef5328a09cd3ee667aed52b495b30d7a7486244a9eca7084d32f35bc4dd53ae2df6994c662532228bc964e9c3d06fa53099d19aca1e1673ade80a4b89d2571191eb57172a5b3f08e65a5794481633f2e8dddc1d866b77e2ee25d7de84bb2789bd8cc85224b15fb2ba80d02214682693014a91fc2441653340b2d90c50ecf5426796c8505911d7cbdd37f7ebee1aceee7e6d68b2050b58d0c373996282181758118490214c31c4880e709a10be7a56e61276ac9c9274325b48a20b20af229af076ce98256aac9c5e2020838b663b68d8a03a714008ba1d845a4c017d0a12d2761c6e910504553e701a6a68cd6b79422198dcdf4e24e7014d2716e4bcfcde6d921f7c6b0ad1bdbd5d681e219944d8d0c489e5c14f840d3c397ff84330f89f879f199a4e2c4ff89ed984081b78be776279bc26e07f27d26d027ef8d614c27bdb9df685f8fe82da0c55dcdbb087f03bb1e4fe7622e1ef3eb3c9f79bd9247c229ec77b1b9e484d846082df3b917013229e277c2cfea0919042530826f8bf1309fffdfb59d4010fc17f43cf746279bcef4c2796a7fbcffcde9a60fef07fc00ffe6636e97c38e2094ffb42786f0af1bddd4ce7f13aee2dcf179b3b879c5872df8925f9b3767f4816727f13825fc77dbbb1c0126189c84d9cd827023f88efd6ce130f00f46b1e015f5d13060c61efdfcc02d0b5b7d65aab723df63c82b79773cede735de6bc8c39cee3bcee1cc239e78c71be41a8f6bdb738e4df8240725f5bf107a1612d884e3baf3880a3cd75a7da3d1ed286b473887b707bed48bd6f87b8f308def983d8f9fef5d7a2808eefe32378730f829aa7c95624f7b7d7b27924b5ed792488edfd358fa4f676aed81ec15bedce23416cee1cca7ff1b999f87e67ef0cc00eeb04110493fbf899d8cf1fc409863471f23cda10efb567d2fdf76710443c8f7606c164fbef74f23cf8bd9349773a791efbda732793cdbe76e2f767b25918a8fa0117aa1ee8fb20d8619dfb4eae13b389937c9ee0880d449ce0880d7b085bb1c787ce35ff4e15049d3f0713dbb76b11e5cb9b195a537b8f4d0dfc4eebe921d911f2aef086b1e93babfe599c03303f3e550f898ddf66d1c40af8bb28367e9b45131bc9116ec3701bd7c3a5ea0aadbedd650ac6be5f76d66a767b2ed4d854bbefdeeb1effe8d6ec7d3b7fe20ffb6eaaf939f187f8c33e088a3d5692b07dfb0645ef4e55e3335b737bf73de2e71ab06dff6dff71dc773647732e84a0f3d0f79b8883ddb64df4f97efb421e77df7d451c7c3aaeeb5eeb2c95ddb995297b48fbee3753d5441cac179c8fc6699caa7b1ef7eeaefbad9352c593e0e7b06c4e09f71dde4aa652499fc252e461a76c4ecdbb53b7bfef9943251107bb75d769d167d354df77dfc9e36eeec11d82a687291a34397c0c21f252d2e4891250eece0fb65c31ac127a1d2ad4f40f75efdb8b38e0ce8b8d9ff3dd893e1a07fc9a76de6c1d6ba39d326e21cab66f250753fcb7eebd57ed56bdcd79ef9d584382dfddc67a84bbcf6de766aaf8fadbbf26c0820a164d640166cfd9ddc6f65d7857df6b9d0a073806a0ff4cf1d40a695f4545e3f7cbbdea06da59dee7cfe0667eef7da76a3beeb76e7bf7d99e7bdb852c1b3fbe32050b24b68ced494956505770f31e7cdd63ed596a1b7eb7bd35c3ef3c74cf54bdcf0f63afa92d3e924d8536d583fced45d3dd8668237c9034c7e7ccef3b73334313fcf1c9513c55fb220fab6a9e0c49de7e6ad6aadb6fbffdd6a3e2df1cc3a884a087acaa711b7eff1edc8fed6d8dbbaaa1a2a28f90a3ed5e00e20069dbbf566816bfef7b4febaf030f7d3eedc6e7907dfb36cb957d6e4fb2428aadd2deb3f7a0673fab59eeb7efdef32c8ded35ac16dad7447cd6b82bfb43586182cdda9e54e5c94e4a425216356adc95bfcbecbbdbd854ee3967ad79ab70a0ed6686fe9b995fcb35dc865f1ddcb7da3fe8a6ca273ff73df2737fb479a87cecfbf7b0a70a49def68f90db9eee36d45385246fff23641683dcb77e22b17b7b1df8f36c1edaced56e2d9f43f8de22eebd9ebd8f498bc33dafb551b40f9d755d901f9379cb8fafe88391d87d4f00e224f9392692e4ef6e106577bfe5ef3aad53afe39a3d71ee0a0b7dc4eefb34960b8cbd8d559f818ee731f8551c1b7b1b879ee3392a2db6f7c49ecd9e9a18247ff759f4d9dcd3f23df383575569a1cf21731371c8dfbd26fa88472c12fbe3fed01605a8b242abf7edf69b4f24761f617b804c6332d5d7367da8b5935612c9d2be0a607ad0f4d22892e7792a958eb6c954cbadfa8f5da8b5964b9476ead1045f33455d7a6dd0459fd38be39b9e044ff5b555e3793ad597fa124baf8548668cafe382a7cac7f825d4975eb322902e1ccd52a9740e954f86e4887a49b968ad412d82232992624892afaf054489a609b552cb924e912da7d66549ead3289e4ea389244fe4bb68324b255996e0ab2ccb931221915d9a4a2d203687bebf5b7c6c922f7adfe9fd4896ef81d8fb48d3a9769f6e0141300c476c8a535c348d6e851c61985c71d1a4919a79b44ba6ea56c496d3a7699a966a29f5bba0c81741d2245f33c7f204821f862af2b537fdf86468aa47a6533d8a7214658ba11a821a382299b167473aeea822b51f43fde06b22399226489aa068aa22499e43fac173a8742ba23ef35996e2932ea71fa7d74eed74024f60febe548201b5299ec6379d4e952cbd3880a3f24b5314c5f3134ba6288a62893c8a62657c922c99c4a328fbf427318a493cc73785a15b5141f24372b4127e6e051cd5975bd1983c6172657b14b752ea2bb42ab44f0f3ad681a17d87755a406d88fe14f8a1280aa9424e0ffea09f06c7983e2f7495c57eecd0d0d0d0d0d0d0d0d0d4e0c08103070e1c3870e0c0b1b3b3b3b3b3b3b3b3b3a3a3a3a3a3a3a3a3a3a39393939393939393939373e3c68d1b376edcb871e3060e0e0e0e0e0e0e0e0ececdcdcdcdcdcdcdcdcd8d8d8d8d8d8d8d8d8d8d4d4d4d4d4d4d4d4d4d0d4d0d8e1d9d9c1b383736353f5ee82a8b1111f91840ffa0e12e4b67805cb21496061120264b7f58c2038bb9662e24ae1db316cc88470c48eadad17a19c57c20322272c15c3f92c45e294fbaa2a9ec86359dcd362c55404cc6a395c208e0ee2890a5426b901b60ae20972c486b06413017cc8512a53bcc6442624066b294c868068bddb00486fe884d71772adc7d0a212034dd617511b97290a54bd01c64e0ee52780cdc5debcbe8c70b353a92fe1a83bd400a0edadd5de0ee2d707716b81e009628dc5d05ee9e02778f0285bbcc657404e6fa546895c556146604bb212649ecf5b1d8fa8fbe4c904cbafa599a1af9942836fb2568d1c7d62f82c27c5299d16a6404e67abd5c495ae98ab6d0222fb4ca5c451e7d18fa33542809516c9d1901c93c0c7d98eb5b299a16415f32b33445820a2d41897e36c3cf5c3f9ba5b2560bfd20980b16e49aa5b018107747c10952a2180f4310d0f3830f0f3f3b7a7604b90148cfcf0e4176d8a1e7a7270702ec08f2e3a700fbc786a543b121e9cba815fbb1530351bafaacb334c8b52328f66af9a4305710ace7861e31dc06c15cab2c5664bf112aa424fd25b218514af49a871477cf0006dc6356d67dc9ab955a283d3c28f2339ba14540a81159bac25c3656180a7311b964403357eb898c60e92c6db990c464454f344393cc623edc5d01b375e652d2a3c43d4910ccd58a01a53b5ae92a8b15a53bc8623259cf0b5d511e2d57ac87964f5ab464c8921487188b95ca6c6e5a3e401b013837726e6e7076d0e0ce62a5329c1ca31b40107bcdd6d88b879fa22294c5426546e8cfcc68064b67b018d04fd18ca70a02b452252e1e5b107617ee3c0588ad30173ab332d5baec029cd0c00390b8bbbbe3a075346114e42a02b3a10b1bb228224b85bc5eb320984b68fd91a5452cd64fd16c85a540b254084e8e91cd8dd18ed18e4d8d910da7efd8d418bd915f6330180af4305d830ff7567ae467007a182ab4fe6c96be7eb6044df2427f499147224b5b3017512a9bc9645657911d9b9a9f992c2d7aa54244af2037b8fb90eafe92c97a8062afd7a6610918643972e4c891230234dc1d891988e03ee32108e69acd5c3fdcdd15e4e34b66c8c132c2dd8358567c2693115ad1a299256bea32e25a6169cbf5ebcc68879fadb09428289dbdd08a16fdebb5592c771772f71c9461985a129a11ee1ec4358e2eccb8db2f7004b1334384bbbf5ceb08cd64322bcc152bfa69a54a5c46805c6b4a24b4ba64a80e0f8fc95205fc92229fb65c485c6b1151baae2802666488010d6498799b9b9f91a10434906126c706ee39376c7c7877f1e7e4e0ee3f4a686e60b9a1e406102b2c9da5322146eb2c668384c5aa416886fac811345b82bed2162c49acf58ac5807e8c94a0443f454432a11f2223589191129448094a6473637413c4e6c6c8a68ab77c582c958dc95584fe10cdd024403b3b35a90e3ab393daa0294e7aa3a5636364e78606c706baa2ad5f8d8a60ae87f9b83b4a04286dc56eb8614710cc85044d734891b856a03d4b8b96ac2d187a43cc08ccc7e76504e662b1663f363746b2748519c5805a30a3984c168b1981f904c15c43e8ca832cb6a2af570c285dd11d7668c9d024a92c5d51992c2d7abd5c2bcc657444960a79a14630184a3384d7f440d343101299ac672848cf90d96ea544e9ea4394ae3eb3d5e5c30de90af39939f225abebe55a8d76585f46b3543643334393fceb8502ed702d73a5876b9927a8d0a30f7311a5abebd35710cc35fbad650ae0ee32b3d5a8889681718fc15a3637463684e0ee04706de301ee32af579a64867e0d588ac415f44130d73a93b98cbc91d8bfcc92d7cbc8c8a76bfa2a228a01b55cad9fa56f24c663d3c30a4b5d40b05dd3c30a4b8996a0453f495220ee6ec4758d2bee9ee77d323f7309adbfa488e7795ffa31331b2d186a63363373836426e692919901c55a3333ac59d1ba0aad10b0c25224e9013e151ae279dec762adb014490f0f3fee1e83eb1a46ee0ec4758d1864d6591a14643423fab468c98afea7426b8d546885a544464132f453a1356da5b0b4a80815fa192af4e9ec93a4406672d4304bd7253c3904108500760860e5ee4a726ee0dcd828a969a54340b11c52580c08108b850416bba1a607d68abecd8dd1037deb63ebf39041064fd7580f3cac33980b0d4a91c46445457bc9ea92c554f4872c2d32e261fd49d71812166b09102a038a11a5add62b26344b654243d23566d303cd0fcd4f4d0fb37486a6af7487d76b03cd5c3fd294c7acc8cf0c169ba1e90edb8e5e99c0dd53234f640633fa413244e453a199d1b7d2571114967e5ae4d79911d1b760e8bb646f63493ae4ee3a35323832343682622ff702e855931ef4cac8dd53a2180f292c066448cc08cc679da139b85617cc4701ae170a73f1e859f22a2adae90c1512322408e692ad3cfc14cd522214b602a14544b11b582c2436374635fcc8d222252891ec85aeb1f547094a54430e252811906b0673c95625e94f3a438bd46073639443960a51821211c586c0025001592a64c662fde46049000021f7152895c96240bfc660ff465cdf4a57a0b44849fa33d7a742437e06223fb2d80f91562a3473c15c465e96b65e2e239e994c66b6ba885caf991ddcddeae0bea244b2188f16ca034b12830dc10890be8c5aa910d04c1693c97a72701d771fe29a8694994ca6054b5725e90cee9e00d7347cb8afb314f6234b57d70f514c66e407282d9acd00a54868ccb45224b27496ee90a6321e403317118b3583a543b195c59a19ade8ca430a04435f284f911d3bc48cc07c64b1156dc1d01f2f5496160579a144b21810166bb60415324b0d1003028bb966b2b407771f40cb47484ae45a6146320d83f65fd1ff56ba1619c964b11b663299562a34438560463399cc0b9d9979a12c166b95c58a8a8c663f29112a336242e132323231ace9abc68aa6b2a05f63405e66f62f147d1901bd50a0175a5d493e08e66ac18c3e95a19ffac07aa548d2d70fcbdd79f4b82360275d5db2242d3495cd96a042d2d4c8cf6c095a349ba1af1b6633f405e443926742cbb563498a43cbb5a300e8ac05d4c343cfece542d7b4f5d372b558ac96ab55432b2d2a72c9d6198b688626c991ca8c561416e4e261498ac3121910aca7e5dab124c501c865c4254b7b68b97620c0e6e667d8313a003a6b01a5b21990eb55c448088b85a3e6c60d9b566a7363345b5d4566e870f7254240325496ba847e58aca0f495b666b0986b367311c95221ee6ee36e759061019fc96496c856583a538412e1251a90796c2d5867ada781868f59c1d2970c906cd6e422c550b9d7bc0d23af74f634d0f0ab50902b159249835ae94c2693b6620618e273c316b26ff81cafa4e54a653120980b15bac185aee88e1596ca5221988f10a119eaa3861a8a88643e72bcd0151653804b1613aa01e69312fdb47860b152976cfd299a21495b3234092c496c47d08c08c81050ecc5b3a2b31a768c7200a53db05840291216abb5ce7e8a66e88ab6d015ddd142531f2d341502224b8b1019c16c6e8c90c48a7e94a0443ed6584cf69306a1b2d83afb5961a90c2d825901101f364858ac9f35d642875eb122744577c062ae1e5ae93a73cd64a9901e7028427fa4a96c088f17dc655ae9baba888862409fbb7b213304841689c93e2df23014e85754687d74064365ebc3d2a2d8c7800440bf10f1994c66660828f62af293ae68cbf54291d89899cdecd0e8e0d400e198a9c9a9418dd4e8e0dce018b1b1b981e3860d99359db956d70b85c9d25549fa3deebe723f80eb94154f82ca68646c6a64686cc092c464458466a8904e99e05f6886faa8e1ce84bb0be00b77197757c0910eb87beada258bbbb762403f692b069ba5485cab8bc8252b9ad169d9d8dcc8d199a9b14169746e80705a3737383b34a98e8d744565ebac88d16c66b61ac586805221a099d515e43edaa549fa2a52c405935100d72e3066329922a3a158ac46e6c64686c64691968dd4255b65708f59bd8aa0ab11512b2df24b5a682a7ba12b184c7727e21ab563269359920efdbc50a098bbc7b8fb048a70f71f5cb7e060269329e27addc8d4c8d4d878c162321712586a24169309495b31a074c70a4b6745f6ccf5638dc55a68bac312d90aeb79a12d34dd618dbd7868a1a9d08ef570c9d659ba43da426541450408721981c56e68a1a90fa0233f8e10ed4815e0e221354a8d74d8b1047da53bc07c8a88643e94a42d984f4f1191cc87bbc7e001f0d94fbaa2eb8cc5224ad7d992d90f2a438b7ed6f4f5428b7e66462f232223a03526342b42613ca42bbaf210047305a1b359fa030a223809610b1b40d004255801e507390ed0b21d752cf84a2cd0c1111f03055c58155a00c30148900200d2013968c07c22da5ca003514461830a290ca472b0c5133b986831040234106173f718dc5d8a7b0feed70677ff717d4ac28a06b990a0b0993495ad456666b0986b054a5faf18d0cc8e119b1b403928100e7a03478b6687264d6d727670d0b4686a6a6a6c509a74e7060e1c9c16503a03b4ce8c6433ee33d21a626e282292f968a5412d97acc8fe1a2d1f54860a59e5004a7b98bd52180c1502fa99cd525910cc15637363f4356c6e8c56a9025cb39fd428353af22304b4a24533574b6886fa60b1602e5408e86709fa4a652d3415fa013a42f47384a8e5ee32dc5d06ee6e00d72616b45e2ea3223632353236366246602e1be90b059acddcd8ec00a5388ab470e0b0c901024a6b6c10c580648a1809adaea025b275e60a4a6533b120190a2433e37abd5c496652a298d04c2b8505b96633a11515e2ee30b020d70b4d15e09aad46b125680e9e05898873449c671aac73ae952ce7a4d55076b49d4dd6718c4496c1ddaed332b6d65dae8c5fb73a641bac7333687edd5a8baf0f6b397badc59b02aebd96bba81dacdd2ce7d78a32f86edbea7b9befcd4f6cb6f67ef60ad77aaed97c716aad7aadbd1d01aeeadabbe56b9f70adddaed5c1ba588b6f57030d73a34559dbd261cb84ddaeb517ffd89b3f0fe786b686ce6a34300d96bb37d7e0ef5e1b43e6d805e41a5003d7b35f11d88c5759bb16bb76017b04ebd7b5d66edd667b6d146c7765b0f66af7626b6fec8ced6c78efbddb0d36867bf3b53458067ce902604513cccd80d5ee8bcd165bbf42ee7f36fb756dfe44ac04b09b35b0aea38a8bed663367458b93b8b76361bb83edbdf96fe8adac662d47936b66d0d8fb6ddde5ac65d97b838037ebdd8c91d8f31a598b6d580fbcb6e3ecd571655c19370676ec96b4dbbd56cc1ae7fb72efb59bcd46ac47c382dab59a1d755477001be85d5ba40bb96b75b09db5f8da6c7dd81817c78571c1cb5dcd627bed052f972dd6b0b53a16db95f56c68ad9dc1cab81fe66c97edb59665ed86baa5cdd76ad9e2b8a0c55786c5f8de7cb3c571af85b99ff56c97afb5966563dc8fc33677d95aabf336254397030b40b3d87a36a7ace7b1c003a8645818b2bd77bb5c6a750b0de8c3da6bafb5d686735ee43e7c61b3f800f3efc10858acf4f08123a08000a811687830c215dfc10482ebf0812c521d501db8900f48d10121662c481023a85972306554a1871160d0e0f8406a06073a9640c708220d1df3b33946b05ec821f2850772fe0b2e43840b326c1081726b5c1941acc6d3c82000266a486106910f67bc8bc9993821c0896847f8e706b8637777777fa9c1dd77f0c11d07775fb91eb14057b4f5b335f900700592c775ddf67d9b06e2181e8735dc120e1902c8d9adb6afdbc9216973c819205cb188b5c645033680b48d97f3720d31c60e0a90be1ec256ae310e717102a681a8c4ab57c91335ca9442230222000000002315002030181088c4a2d1709e46899edb0314000f819e58704e1b4aa32c88414821630c21840020000404006668b60900dbf6b5d9ca960c1bd76b28b7265ead90a9b1f361922165c41890d6c8f2011ea4b226dc9801136c4126c80254568c1b1161812de00539a86e0871312aa4b423bc100754ac39278880b456928fe0209535e0060950d5448d34a40870c8840f6567800d108cb10b0d0ff3cbe5432b506f6bf26e865d54153621654db65e76e6d7bce99f79ab1bced40f84daa46892b5c2595f7bfa7f4aea9c0f70caa352cde878717d5b7227704cece4c4a3e7a709954ff889f10eaafe662c934464910effc6cf0042df602c3e47ad5283147fc75201c6762b489b951de5b652499ea66c2e275e7d5f923f2791c28ff79e5fbfffc9a72d67755bbc2e7e8ead2998dd20eb100337f0fab096370081dd0496d189cbcbdc1531188e2e189e81f4c41fc9f3427b958d25bfa9e5e0f013caf9aa30aa93db16520c2c5869226ec2084b11d4df94526f3f4d8bc5f8d70a877ba686890157104e22305c24be9c840ae0e2387d5ddfb6bb8b50d3ccf5cb42cc64c51fdc6ded43e8c4e6b2cd537aeec3f44f76bf51720a1a2a45b8a0795f5fba46e839b19d4d75cc8618967bcabb942040fa335b7b1a26c45a707684d93935b1e37d5895f7204015d7798128f1890272db04bbe8328ad0689d068af9b84f08f95fd518f048e873e9a0617ff811a4760e06a04763702c0bab24d15596bc01d4b19f586064eb8053011358aff1c6fe39195a5f0bffd4a1b0e85b928c2c0032d3453b585f79bcf9bdeae4bbb5bce18d093e34262211ff06fcdaf0ad07791b8c2118528bcd5852370a9b1498f4c98990e11c313fe5848cb797c3d361909db749af496c7233517bfe482bc0acc183fab12d88d757d2a726fabbdf9595e163c87a45343561902a1449658c2e1a26639d8e67a923f1b2088318597232bff8627100221d5ac90e38873a40f869d4d9262dacd6094df4c9d41a54e7ceb89408745e30aa65e0556db178989bc73239bd4cef0e0c7642d19e576a278d02bfe8a62ae83c594c728ca573896d2f4d4c55d858257183a72ed7561baaa1ce2d50418ffbfae18781891ec35820ce4b577fe86f793772640ffd1a1794b20924b3c6d5720eb3c2cfbad2eb8f865d12380c653d54fc42ae8fb26d1adbe9161dfad484d5d3060a5fa5e5820cfb4d6904acd287ffc17604f87ebe7dc5caed32191be91c9c87e22c2812e9148208fc252723be06825c4e65fc47fbf578f627a7ba95091087c9690ff4ac70228d1f810545d6c805cc6ff9e0f950f44c8503b8e5957d65043aafe3591ee5f1455acf1f8e2aeea1941a64b3d8013fa62b8b65a28ad6bd8df3ddada3461ff4a80a622e967be453a2e22f0134b82c1cbf59ef5b7befdaa374a9aca8a8ba9d562f6c890e5bf7ad7b7fc53e791d70676c431c220ba16cfe7f553d4e65f7f5e286c273d3462021bed88dd41bdec89a5c3f6fb6816dfceec411f63e08d519acf0e07ad988ed38129f20dbe20d67964fd75d30bf4556d26c61287d54f507e83e446f49a934c0f4500af88abdb87656d0c410ec12c571b4dc4a33dd02060b5c0b3f02178fccf584cc0936352d9bca09c1dabee122111162dd16840f6f508fa24ef72e224bbeae252572c5817b5b18d22760975ba325fad9d0e29ec17e59aeefb76c62c81565a62b50b772b0aa6939c65d56d6b760ce0ac5890ce10453a5c0e2b81a27aa4d5add7787e31246ed83d2b2c669ef09ce99185213515dac22ca0b31cf821e643af42dd398222da9ea27b3937f85953b2d35669af65a436e71b0e287e832e8cf0754673093a746c98634a01385427c4f26353e9cd3795a23d21dec44b5db4dc27b0265c75348a9cd95345864846ea3b492d35c492e7160ffab7bd610480df83d3674a49116843d32372f0bc6d2533bf50c855e26121453f0fb4e6352a11fd8933d8dbea0b4d345e430ad5afe920a5d6b1d16ffa48e764b2d95b02a0fe362532ab14ce5a1c36f08e9d42b595edfce1444d50284fd5ee45db638598263829ead9ca922d5c2c5a7925a15c9a5a896867bd2e3df9bccbaff98fe8d7ff5f6fc2e4aff57a6beb6d17cf97cad55e530efcdf502d5e676214e8d1e8731ba592a1ea3e09bd30d8ad5e50920a652c7abff81a2575f9dde9959c3d802f4d5343a7f7e80627c92b432e1b2b2183272c4acd75178deab975fd4f5714b5ddcf7313e823c5c560f932988f8198b7199e9fd277506986e89b4682d59f01a3ceafa749a6fb35a03ac9a5b56aba8b100d4ceb14810c8a0082fee7959601f49bb72bc2d392e696a6b91c1c5c9d7b61e2e2843b96a76bcf1651bbf9c4606fbbf65a04028525089f3b51b7cc0e7bec737e25da1047c4462ba09a4308401072e3ef23f4d3790df79d0158d3a68fecfe44deee597aa799cb620eaec027d07301bb1e374af6bb5cf9b25ea4b6e5a4531f55183b6da3957c64614e761dbbff074335331396e095b1cbb25cc7bebae1987a8859a9326f1b4fb036d34a4b43d2aa62cb68b75b510c6fae7eaf79cab8feb55b59a1d28a4abf695b0a88af8b0f19b953cf6dafa8d01d57fe2ed4cc39f991da8c2a46d546e6425c9269c7ef5fa8b9295fd46f9245b41e6858ffb7c6f3c953e78f5da100e3bea9781936c761155b35b506d99723bdf781aa41dd570eabc95627568ffc227754e99b8bd14adb86051f3c5ee572f945ac78267faf56db6dd3f664e4934a21bdf34fe0b062584e93e49c5a21c48a4347e6ccb28def60f610e1a7b108b648d056cc61c3279da24440b9b6cae7827df8f31b9baa6a2ed5824802baef03427a3beaa68f8e3b28f6299be6f516945273ef6f22b0ebe4f26059388baf010cad5bc53b19d7ac4637e86f2e373a2a053797829fdbc7b16eb32b5b7107a95619bf34c1bb1a074bad1e71a13a371dd290fd8e235897033bf8a2a451e81e4814c4b0833590058e20e4a2bf59bd76b46cc4ff8fbc68954b5fe7f09e109006913c214f6f23b9d580fa440afbfa4b4728ede42127c74c78601a503ee5850ef7d1c7266708e73656558ac3aa7bae95e7ad29c9ceb23f4d06938c01e7908f0dff1deb3c002af1d13efefe6cdab29f8dcc403567b0c3f9835834e7bce60ecdc55bfd3af2039b6489c8647c4be72fe2b2dd3d9b8df809a973fb7094b2513dd02684fcfcafcfda911a8a6a8e45d4cd91e07cc9817db0a71d3977e0886ade9e3ba7ee3e7a3d477513a1891fee9dea8e3d88daadcb7b8604c7530772092699a3150522192d07878bf1c9dce376dc462b8c4177afa107b9e627f3ebdd52bf6c701a805eb9aef41449b1b17dd5052bd204c419d413c08c27e498473a0a5441ac7af490ff2e83938f4dfa2f45709dd7ea97efd00baff17f2fc6d59e1fa303efd8e60fff8a8dd2fa5f7d2c88674937b78e3292a184e166323ce66e3d318594be7357b90463d5f50a3dff99d80d58ffa0061da0f3daca1ff570ddfb636d6ecaccdb431c84fca7dcb8ccb205f09e70c2df1f72795e208d917257e71dbe942d2bb1eed5500af54773fb5c993c9d2ae63e8dbdc982e92e3b7c8f98122837f8644c7f91a8e20f829baafab136131ba5e265627b0fe039eed25f78c8620676345dfa295a4c49bb9a098b4e344b43aeaa5c7e612208de5dc347e066954e350e8af652e5a138dffc1dbd649dbbb0735f2a7b6ceaaeb5fefd094f5470a6901cfbd40b079fc5309fb38bee6be0faf2cfc13edf34b075eccf44ed8d13352b7fefa6676dac4265f69fc5bbc598c6de8001ffd188becf03d7327e4053e044be7cf7f9af16ac4bb2ca2d28bd11fe531d6012eedf598c16d1bc735cdf46ee38d6912a06f1c5edf447a4f4b7ea789f13f3ef53eb28db16f1d36573649bcfd8f985f46f14b102fad01e030bd73e017ec4480b8b1b0b821bb330c259b16caec62ceb71d832f1eb0ff146682fd7776c39e6aade7a67a1dec4fc3459c4e939ee6d3aa402af7a3b11243653cfc7ef76a5d1763a6f43e44156646a6f56db56e59ab91c9a5090eb700dcaded4cd04e08b9a22066feaae934ddb07aaf2faa1842330a7ccb3d7b99fd1df2384353a965e86abefe56bd353c3f6ee49c944674b83a9dd585bb1df8a30257923a3f746846135dcdb16b10233c56d989da5f147baf06b8bb9ccbb125046b37d125571b4c6f66e614508a7cdd963b584891be022903400c1b50acc89c43fca92629fa9db20e0b54254551e8445552e02c33492f001237f853afdb67a63ce67e7324a7da22f10e8bd5d7f071945d1a41e5d19d0402329f9c9fcdaf1d0c6ba952eba67b335a7b621bc3f987dd22d4f0907bdadbd776c5aeef56a99eddc3eaf2a10a3b8d9cf3770efeeaaba169aaff120045a77431faee82f147ed0ac0c989c92d1cb6621b8b3a13f4fa38ec5fc0b7259003621867c9e19ac59f73d7e6b48b5c99d863b437a2633b043f4c5e75dc826d9b354506096b958e4d5ad89ed0037beaaf6d18bd561734e97308e9c9de8ba27c94749ae085628147b0d871ff469c4ccb9f2bf3167cf555d00bbec9189e86ba6f7194e07d0c12b2433735c04d1aee205b886602990f7f633f2c5463682913e81571494679e60a2a5cda3bd6cbebf2adfe7f73ab36fa0f60b52034d7537df949764881ae29527e2fb8d1f1909d77973d7db2bd99e84fe32642af4c80426b82e42f9df3037950be0cb636916991e1fca18a4765a4f2399ad0d16ecfc28e24f70841875804dde416604e3147c423a74a55a572e3704302bd0b5fb9e83418446c50dbd42d57c17fcf0ecf7b3cca4111465002bdb23e6c933df5860b91090fc127884c79668f40e1c0a7d4220efb7e459e4d9ddc4927b16497aaa5285a4c6661443598e2c929921840370b94f5d3ae960eb985d72dc2913cef0d50c725d10ad4bb6fef6bb0beb500415bc0da891efd63e7b6875079108aa248c04d9698ad9cf624111d7376327730ab56f82aff72f49473f1442c33f28a70dc83a2bedb339ae12583e146c164636705a79f60df44caa85f5989273215a803ea3031524bd58008e7eed5e5344be6327be2d34ea984107eab9e2694910053174111b7c8a9ab9cb2a33b3e5a7c7ec65a0d08a1929c0fc4d28990fed6f096a7badef2608521adf05ccedb31189a59409f1740ed64c8f56e00a8442e5c563f105042b02f73fbef1d704e0709fda06458045e8f8adb1df8adf20993df0624a6773c7abebb83e21324881e8abf139ce74b21dd9fa75964f57c585e48fc1d8d972fc8fcfd87af0e3dd149cf1574fa71aeb98f103061559fa13d24b6a6df002441097f4dd72eb2639937996f157a8b40496cab7bc3331a8377a7725af5cbdf5cc76ad109928b9170b504d02b35c2bcbccd8d4f986d82beb3b2a6caa1c62c0e239a914316346dd47d2c4da88558d53b54a289ad431a0b091c18466212b8cb787c18ed7ae76a1a489509549314d683a6dd1b3d2ebb69c3e26b5b0450b09b15978fb92a5c0b00b3287ba40123297d011750db9d4875dcf5435fbcc19f31059ab1d8adcdfeefc599789970113b4720fa2f49db473b0855786db261af8abd026cb19f3993a13755b5d6643a2bd1336171e76f0352bfde9b391dd6bdba95dd0844a7cab547806315712a9fb011f17c760e229351636b2503467b715b861b8ebd992922c1c88c3003a243857485b180aa7577264923a598599433e3829060e0b023ba83815d6320847776562dc15d83156339de54c22d06c72cabb6dc583c7f8c5fc4501df63000f00a57411acb18a50b49485ec2582697c26781e69b12c4bc6f0f9f28b3063b7a42f24b6451196d2a7bfa0e8e8feb6d36fe6cd1b4936123b34d64c38580bbede04f1784b57a4054b9dbeaf729569e092a90d8d68395021c4a0315bca0d9c627fd5da2b55a3ff25441f496e54ca30afe8a3cc3d2fb141c29ae9e11e758c6cb7bce9b3df9d4f69a7e3d79cc119b1bf83dfe025efef26b15a398055689a5ca10c239a0b5a8f18fdd1f8a854f0c62f438c7e16ff8263b9fe72acf31dcf373ecdf16d4e922bf7dda698be406e0c7407a85662624bc077e8ebc355bba78014be4e878b3f7816f10c5630166bc9ff96172b7e5f10754988fb8c9665bb71c13db8a8888b1ba1730666309ac66f412b35befa94880a8d8aa120b1cdde6766cc80c0c710dee5bc30c2d326e542e4b0b80ad2d4622f8b7b93ca23336ffb711dad8cd5ff550d0b900028a6b878ca4a2a14e424e77477fa67e2a02e03b05cabc4730b672754ff93d25b0e45cf153eee090ce11506d1dbb9f8bb56393249ea44a0c9770dd5a6d763108029fb25e41b94ed64dc1b95fcae4ec8ff10e739032b2518409dc56c2f96e294333e9ad975eb2bd14365c28db70802f193c2a396423878e9ff19220925e64ec273c4103a9706b23fd55fb8b560b332204d133a27af3c1de8314f398c90d3939b7e0d61c2b834db5e6d41d221ccfb22654e07a43fde7dd4d03e8a64ad894cac6a542ae6b552415dd7eeb398dc333408b0253ba909b3f996050fd326871d76f3794b1f82dd3238f1376b16484d50274a32869f97d213f13831b533efa0c7dd4b4bcd7d866902b7d65cc896435bded3a4cc66dc1c6db8ee68ec15a836dbe1455229b07684af3f79a9ac10d08cbb1afeb09c20fc66e8b6312cf3be52bdf2a0f554a02a8ae6e8ca7e4af53d12083c32f48924c4db2f21dc17451f3de87548fd9ce6d544165488ba6ef728f797d5fa10151ae535fe3af7bb98746c336745006bec5a2fefba631dbeb6af7e75b4e75cf4d52434013a75d7360cc009851df96c52bc5a4571b71c6eba5901dee7af14691aaba968aed85a146d68dc1c8049c9f7d7e8e03ceef3dec645670680ceb92a1827991fde54315d540b38bb45030a64e0d97e40cc94dc1f60569ad3a6db2a121b538ab2a32c509e90f164dd8c68d91aa44edcfac5b7e7cc8b70ddc0704acf420c4295c4f385886eef8991f07f01e36089ad5d8c4b735d1b150261fc46b981bbe0a2ab6b3852d11a01308b65b069bfdd31ba10188ca82ae67de9880a137d3ab6503e8df9a5fa6849a1dd6f677be32d51234c22a852b9b49e81a24eb3379f5938c3a70c17a5cdf9f3a78c022574c1f5cae2651831b9a0d88ce2e7ba963760a508eea5aad0d5986bfd8858e94fa4b0fa69e47acd74e9044a53224c38116b8b806a927222999f40444958aef215e1e40378d9347c294b84da254c2e3718940697af01ba14bcd6ed88aaa749fdab086f661a496512566caed5e63c27acd4da4233348cf121f7daf04149ca4be9ac354563c3962f1d99ad41de66215711d9ce442b2ada7969c1efaf32b893f8ebd8e6bfe066c47a7510c5cf0974d3687e418652252add2cfde95aea4e8f02e1fd015ce84565f9f5e77c9325db889cb3bcc395ea24ac0189e08db7412834e74e7fd710bdbdff9edf2868b7e9284044b55ab0919d905646f59b7be25fca61838574662b47c422a5f026d4a85cbc73440d6c909ad3838a5fcbb3d3809162e7991a7b9a1152077132b505a2d549469c18da0d96fe0d357fd50e27511e3fab6794feca654d9e8a35e451a5164c8b81e1391a150509733ccb5c8154ebdb1362fb8e7d2f9b44f88031289c9ce7e851ad343e7862ef8821cd919fd358d272b36dd8f28d8f7e4d22128c36b1aa7ba5cf2f43474d6bead75e0c88444e4040095f678b81392307f0ca560ce7b7d2406f83ee302a52f32d330ab523159e21b8df07220728d173a055b1fdfa56c2c9e9d4f35d4475627ecfabd05e1af65859e67961c37e7133872d69d9f37be634926819cbd724313a1b2c02bd867267ae58d99c6d475a4d74fea0114ad5fbc064995c9806b24129995ffaa8a881fbfe041d9535c01751be8e19ae7e765d445ea0d5d2dbe6e3a52f0412f33dfc016e494c6b6cd933c35fe0e38f1d4803d51637aaf93a85bf4d7e94de0257988b6bcf5777a767d8fa097ceeb5ae3ee5480d8d7187ac749db7d45d9f1ab022bc75c1bcd5501db0ccad09fab23de2a57405c66a1f16fa90bc41982f3e525ca037976aa96085a0b308f7b299c5caae323e02714cadb648b37ba23a805ab9248db0801ba24cac704eb9dd708825402a96e2d838f86e99c7e19465a1b96487b75df03329b78649241402e1e1386f83e549a2c9779f22ab872f2b72ddedf8c59fc1bd221d0502bb5cb1a16c4db18ec96c6e95a7f00c7bd1bd8fadb0ae934b020a65fa0d7fc33beb16c0d37d5968c1c473bb771dc76ebff32da1171bf7de9bd12e9eff8a267cf6d039bb433127ff8f64836637200a38b3b6df21856557cb75df39a79c2116202534c84997cbb67d776195ad2d436c70908504e00bbc0508ced2185a014cc49e2ba40de6255ff76f909e1aac361253bce4e5810b00601332fc2bb5caed81c2c6850ce25b1f9f949aac4bd86bb0a48854c80468bf06c0ac5cd57a0008ddc753fd3c66ebbaf4c3e7cdfa7f5e7a06c8fc02215b1b5521eb012e7e730045d59b02228615b9fa281755575d2a5beb512edebb45385d1aa9a875cf1a315aaf64c7e99f05050b40a9ffb95133dad4147a5aad163c62e63c279009f277811b1d24e56c41fe5c552f8180efdd4645d7c013151289d893a198c62c002fa4995bb2fc21e7f428a75566441a6d5868470c859fe10deb80224ed657f9ca5073b1c0b880fb6192bdc58bd7ccb7c90f481054a4f1d89499807ae45894c96c4699b1b3d51b86204f3e2085aa2c2ce7c20e64889f859373209991c2151c0a2f1372ea8c4a30e63a59d6d9d1a660b3b6b6279279001882fbcb6f00b37e4ebca46ff5b3bc6951d843bfb784f58b4346c250e64d50c812094345d9a0401b2930caf82882c08e5158713f7ded38e33884fb1417a623f66ab1688923e0b010a8df0f4d8b989479c14b8a218595c426e31f1acfbdfcfffacc989793cd08a546e736a7cc6fa5119d59f13ece2b1f7e6f8dd528fb7a85a2baefedcd8209bb2c409a5268007244858e5e2403d1377966670f178ad1a053e77fa70935527390c93111c8f154eb34915cf6e2d22823cc205a41c8fd942e11c8d7ecc0f549bd162060875e15c1a55353a5d194932a7aebae039098411cc23f9455788a1a1258fe4e6d592c3619c787d0405f29da1f92ad31d60eccbb2a4274c914d24ec45ddeb5121588fed0837f662828bce21e631a003f9ef4d5befe326b91e0172641ea1d915eae3f6ef0621e206e05520dab12e3084ffd5cc771cfa4d0acb63abe3aa07a69707bb6f731e27be44b124f9bf665db02b2c9c442e70c6179903cd584466e0402ade5c438e2a594bc42a080a640d44dbf491378a02b1653c9b3029a4bc7693d6990d82214cf6b52b924e66678c5a647ea6780964f7dc0adcace889b761709067b293fa927981d0636492b4bcb0f93b13049723f6c1cb481afbc544eecc698627cce455cef31d413822a898b81b0430654ba8eb844fa148df208bc26e81f38a3103a4cc4b766722b2af8938f4df514e5dd360e84bb2bbf2f0428ac4c533f82a5845cd0601a7ea4d8a86540a58846aa86611eda47c53f774213596ee5de1c7496f94bf9c0d9c4e62808bde059a55e2e5f905b6c5e20a110d36db5be74c883f38fa0ff4f6b385ca092fee9deb7960a593b948c1fb996bb3fcfa7710b645100f2b37bf69aa771b39908ac941b8dc369fb43aaa3d16f81ae584b393589dc001f98ea76db41baf436ebc0f598f2b42bcc672fe96bce10a1b422988197136486e54908e1c324fe40b17f2e670de14f41ceb6c769695582049cb5f84e9a94f8d2a47bfdef4d0ec5c7cfe47922a47fe704a741f39af356028d88ee6c39d869b8538e431c3d863bcd68c2fe2d281902bfa9c94105c0c78412b1824dd4d8810da5181b655be6c1e98cd9119dbf10a998922235c6907875878e33bc4f2f13b05c018eeea6482a74fc493d77c5383b2669dac9423e97c1b448fbb824854a4d4a53663669e098fc741e261be9878e4312e4c159e0b00d24c3533f7cab858074b0c9709715de0008a1f229d73508eefe72b630c17b2ecde23018f37b250f8e052d63489384600b72c728c644cb8792122216f84f394f533030351246f1a2be4d5cf8889ed9af837c57e8ecf3bf0e2692e08688e9c7e6e4290864218567c03bea8c4777767cac83cbf9d22802671493eec948fe56653bf24c1a5c234bf000c18c7144a747605c2e96aa20e1a2b5057bd2d8ef2ff8593e69ca6960ef0f4b270bcf9c8d9b4bc9e4488ab37f505026798221787c638bb9485e598d4a27030a48d6bf63c8c1002aa5e82d80571717039994949c07eeb07409e1e8e2040b3a9c9940a3d089dd13ab4972a8373740a53acc85e34aef419cb22de8107ec8ad4ebbdcba259dbed7ab8695e0eec7c322acba274c4941046f2c1c2c766655b1bee3cd174f8edd7245246c658a56967ba44d9b285b88c599591924b9316b4bd4c98e8cb9823a578c04e048e812a9bc07aacc7d411449381cc01a0e1bcf5a83f1710c8d33eb47bd140131532b143af9be08ec679b20339a32883a5c532233d3d8ee94e8abe8f50f6d2922765bb036e2daac03fc7a69c19b2aa6c4e100725bddabbf289a21c870e2af9b93bebe7ccdcd4fdbb55cacb848d2831d8bc43d69102d22b2b965cdcc65c676e83ba9f199b79323b06b0f2312b090cde3a36af45f800105ad0d4386726b3b2a35c4d8cf0a77f6ab9dab603ba8febd1001744faca0d722fcd4fe8b7d12766a4fd11d8e13e33344fb41a421746a1caa5067d2965705b3a878fd5ce84f0487c7a60c44e1a1fc191649f16f8b017b6045d6b98f623b4094be4c5209fc0a114daf51aaac610df7a79c967a2a9adbdfde82c826ecf09239e498f0c644b5609599d20be1141767705c0466b31016d2d095774e42d44d5b8e47116a3bfac6c8f2e350ebf7a06d9982509df07ee3810fb4a0a7e67c20c8f1949d1983bee090d85acc9e960922f9d3e7bd2730268faac91142664a9a912074260299d6094c502dc33deea88b36752dd4b87aaad7ccdb06b8fedd8be4094535f90b34b1e44691cc626de33dd07cc9241c49e5661feb02908f6f52cc71e9346c065b84c3f159d0c36874fe00c532c3d2a7a516ca0f3277a1cd11ac94ad851868126195afeb8f4499c01d932d0cc049ce69487ed6554ba5ccbf0979e17e4e8c209b73b8f25393397fca5bfca41d2403bf2743d9af7c41af38a622052bda472979e81beec425df9cdd42af1026bb0634e45ae534bb3e36466e2b559566a04c3562da9034a92830acb0485ab756d54b139c0fa35d7370f5317f792c9aae39f4777ae0408c210781aebb9a7000d177c449884439570576154cb2e6c4d502f2d78748a5c91715626bd0d44d1a8bdec657216b2eb975c00c539d72d278952d1f4535b107901fb0049a2285c4d4d1916e9e947cd2000966baf78e5efa2be993529828d72db2b9c1f7bfa2f41156a94b153e1fbe8b0ffde763fcb596141656651ab2af06cc15eef23137f059f19f0fcafd874f75750d201f7ae8ea0bf35d79d5c9b0dfebd59ee621f5ec78e487b3926086505aca594276cc4925502cb22bc3cfa44b16d1530b7c25dabb47837e13a67d3c617f5e4984ccacc05fe145f66f264b6c4a7a8edca1731c533063268a9ab1647314b7f8a49efb6a1fd4cdd197500d62abf78d84d436c43e5045fd97215f40fbd4230dc02f9b8ac09d8d5c6b80526023cc58e83569d749bf486a5d553e6f09e864fa7a4885c56052300e543eac3ab14dbd23d3aabde681c423026289986fc40fb28588f5b517070c94e1602d9c32bf26ac1efb162d410ec378702fe3ff53de289a5e2509f052dd25edb79224833a6348fea7e70543dab4fb3a0f4d21214b512b1981ca267243585992d56696d829d91d10c97a2655f452966bb1ee99c4d5b9ee09ad5c43a0993216b6975cd09994835c5d681209f5c320354364750f06fb2bc83b514dc44f24eb554ce916871a65ea653923d6c4f492f907906ff07f7f7d875fc8472d0fbe36a203842fca4e20f1526bed7bdda9e8e334de6c1a5713489629b3342c599ee6984ca4323988853d2745e6d223b257dd9ef2c57328b620a58476cd9841d3323e5a34ac4e4afad5291a405ab83343ca59449c4f37d7aaadc0e7c374f411324f404bedaad8bfe6eb5a003e35f5955de3270725bd1a704dc43c839a00989a7523984505034d9bf69109c8ecddd618839890d6c9dc728ca38db2496c566184a9c11aec63468fc06fb5ebd0d936b1c5199d8356043794c6b19cd526ef5fdddf85aeae76e5441cdb8c43eac2958777103f071b7c76fc2493ff1d7338b8e0b662b2c358e014fda671159718caec55026a1cde8916bdf06cb870c4f416870f954622b9e61b4fc7a6fab9d8d19569f51236490a69c8b837d804bcc78c359f8362c2f0751e686ee6fd022e29c5f3e41b5bad19bc5f6d6ba6b3270b3552290ae81fe3d057121c10a41cadb8b50f25f2f35b224936413ee0aec7a343d72fca09142091e88d847ac2f4f49095dc976a60a854c5fe197fd86ea98772311060f4cc1cb020bf09cf65169e2a36a291f0331068474de704edf95c937d8a5e04ae8c78c90a7ae543ca27fa3241a8220e5d159abc4531250bbab14e0b4612405b205d8a1357446372999d882df6478a2a3de55e0aab60db38cbc81a492d09a1cb60267d7a5715617610bbfe99f524eb408eceaaa1c7163a784fd2ac2ec353638352359f98a514a88a9bc963b8221135ab255a2cb53ccfc1be7be6e02fc3b08401911bce3ce68d4fb03a9345facafe7343bc19dd026a112bfc198887b22800a8d08be8bf8aabe416f5bcd1d87fdb727a6f5951b7e2b128659acb2de16d6d02c9a57579a1e1a2101bdcdea4079e4c44b53fcb2148ac5fd529427ccaabdc83b889577ec909113aaf6d6282c67cb8453c5584411d5db5897cc6c135273336e6eee02980a2f781685d83982203c27f54d162143bc5c6c4552291b1e1f0fcf5505fcd16b7437060f48de24a5592a327d9089a172f8b15bb35f6c592e01552726f72668ea19198a7509d4305cdb5fa57982a3c943927899f9c441d8cc8c7a0e56be4277c287a83960769a2262616e4076c23b2d62b190c458a9092cc91c2915299d127682539a12b8f34175cf8f026f3fcd9819875f09c09981b04427696e0a66b3b5e2917d4a0e916a90eb8a24137e7c9c30e7c0aac35b3459500e2c520e22c4cdb71af3a54c7740e83c151b2e337163b68595bcd07a3969429dd4cb88a1a5f8c606f8fc9792a88dffaee5d039a4535b8d44afce86106051fb7e22f5d04dac5e37563f95546ab45f352927619d4b6b2ff50d6d752730e12b7aea772afa34c459c6e4a9a7d60aed950948cc43bba52841efb104a455081e72a7464e98d7a9fbc7622be89892a62965a0f957372c28ad0e4a83de26a001ab365dba42a00768df864eed04aa5a09d5539c374fd4d5156dfb6b1cd33785b0f243fb40d352a66a375f2b9ca535e980835c90d05e45692f6df57af09c83b3fbabb8b7aff4718c9b84c7f164f2a506c09e2a4206ebe927dff3538340cd2f775aeace0490387a04a9293e6032a355d605d53bc642e570773e686c9aa1d97593a3d30826821c7a17d3d06db8cc72b052ab84316b91666693ef9e1250706545c0f02b0cff2a2fd3fed32ae0f7b71c7c2171089481476fbeb4fec542079855d4cc276d088707b680adcce8e40f76cd2244d8ea84326a2f636e072c565a8d011981f2edc52874c32ab2c2d7ced710dd805f01fbc056788c301eb3e8ac4b949b5718b343551448fad6cbfa82772162747f34748ea4367e8c551874ea4f78484726313a253c4bb4a5f0480b7078e25ed4bb208244d5f657ed08811f80751c30ff0bdd36e2470fac6939d26aedeb5022f05f85108f18b6da35e78d555570c8318923f0d7390c5bc05d6c6a621bf3528831640eac9c5294a6f21b1f98fe7ca23acf97924a45b4c49fa5921b4e67c2b0945346871024256961d0e6d02a35e620d7a68bba45b7720d72a976e78239e3707eceaeb86e62545aad8cdc282c059565921615e7a976aa7871d0a61ea61348540397cb0feef0586edca457305747d5a6d4c7b037346493b8da0a2a4a873bbf5b752a591783f5a2376f6767c6cec4c2d9ee88f894362bb10bdfacc1ad4a764369742d54d73f0309dc836290dd0e38f72588cf4f60bef3f1633e90b01fc01688d80f8002bb99fc2427698f4e3487c752b23e8de7209b4842fd1b7d3be91ad576889c5ea59e7c57cf5d0d02500571bd3db9c96aa7ee9e128f52420babe53c1250e3cc8a8021ac5ddca77a43c02b4a31ea571ad7cda676eb3230ec069b41e55e36deeb1d6e86925211419ea773c8d9f65d608c9672b002efcd6db0bfffadbdb4825c4638ed08ceddcf5b038a45051a5b77368c2b5d727602ce36365459f0750169c0ea6755fac2bfcb1157e212303d7999cb2ade5fa5c3129e2252d56fd29be7bf744b6fc216c78a4e52eaba864c624ef977da3acfd6e2d685da22069f36e93348d0c042d9fa46ea53d20d69ff5bcb79bc176688e809351592d9e4c8be0dc455d8a93f22b6a0e037b8aadc85a17d9d147b9c44a0f299788773587d573fa9503ea89b7f09137cb939c3ed3dbed85f38e286286e68ea7a66ef7598d4f4fc72cb52ed5ba078e6e0ccc121e7396910c9d67450b14c01694fe9c634f8883dbc922142ed4b5788cfa788c2f64ec3881fc7c88077a61d565c558eb96bc84d724f4709a762c463aecd34e9b89cbb64d1e490dba865f03df7f6d7c79a3444876fc8b56823baacc368cce3b68669c6b08f373ffef6404b623e52098060cfec1a63def1be8cbd38de40b670d671ce824a902d9da74fbdaa74dbda2f7ad989f368b5a630cca5fc9806f86ac6c40a04f4edb70174d9119a1048fc01788b4c831601a96c31e863d48964d2606efeaaa47640db3911855d3e825a0a3c0293eff2a9c0c68c898dc7dd568f740e78200c59aa03b9dd6afe6b65405d2391c0f866ca04a8e940a476bd69e85fe8ee569da608d83bb4bc9bf3687b0a4e46cab9cd91935db1439a044274502a79bb09450c1928cce21b3860d07f841d5518b90e0bc782c940252e511f583ad417743fdfe1b94d4305f3c373cf399a8a8e8f15f38b9d6199c6a8dbdf36e331dc96889bcd9a9ec12fd8e07a4fd607c974f3510dfbb8ffbb6e4d4591ee6b23dc037492684859d6d2e73ac9ed9e71dc7d1cdf48d711909283a461cbc138dd546afd539071383f9309ff806bd0ba1337e3b80d3cb3c81b0cf8e0f26933e3b80e46ef12060c0260d6348dfc7762b6e5e5098e1b46886709517c529e1638978eb2c62663643b05bfa53b07ae759410cbe141e3129d40febed86ed92feacb2c070c5f021a21970528b20552a8aca2f58dadd7d885af86334da573b82d6234af09cde2db6323db07ad4cf0e8f28f3330e36ac2e084dddbf287fc7fd728ac22e32197aeebfe55e71792c8f143aab30e7f9fd0d30be52982076e09b2a16c33fe2b8ac9d9cb232abcdaf7d10f1e4b724f14c398f2c2eba1f1e632ec911150d46af62050170ed6118397c78a0e134e8f34e5114d9f52ab07df820149da14b6489a6e08b7c9966d2c12bf1aab0da4c1940a3b5a86f4a44b806734086418520290502c8aca59e11518e21b7f12b19e4c35708809b12b29fdf8874a3f3e8e7fa8892758771a669aace46849ef6ff434e92adddb28073337ed928de0d1e4f0b4f65f13b6f140215259a87bb3bae27a19655c849e6b5ff4a8e2668f3872b78469b81708906c05335d8fe104d8a79536cfc49de4daab0280cb0e1364251eaa8ec898e00ceb22ceecc3024adb475f6f889969b70f76147654ecfbc9286c7fcb4ee0eee05b073c18582d7385dff7ce14ca97522f9d62e76052205e26af437b4c1a9ad33d8e410bab3e07c3200ead6261771fb6f7f81a6743360b19db7dcc1b1243297046752b21307d892192adf6465bc76e56993f22505c2285362a075de66ce45f561dcb2a6999726a7c7e49f58e7f83aad06d5c5a01de99402f6cb424ff7c9ab411e3ca6059fa6ef520e87d1a331115a11c4615cdf398378d6d2148514354569c35df896c7977603334931e8d6290a5afdd15002429eb021cbc88614d07131bdb2fd49a42d5f6576271ef3af1321b45e0383cb8ea2f84aa01e8d79ac2c6aeb4f593c19ca8314fb383a9b04496d2fc8e9fb2544c8dc32bed9a3f6e4f9cd990d70ae953ea1ccf244b45f1bf45316ca91c1bd1d6aa8cd11ec00d2cb84256fd8fd1ca69232bd649919dc9c3557968a5d5e09232081c54fc1dd2b03dd2bdd41753f8712e8c29e1b99046685b2103597b786244da3e77e34370edd6821a0892ef47ce988a80d864ab6a9ca8332e1f88e07d14a6ace55bb92d5ea151fddc950c2f969ce276feab249013dcadcd0c6c5f26ca9867877d7721d9c09848a2004bfb5ac0b2ceb7c0cd052c666839ef4b834eac1c074bfb94b0959420a634491111564006eb6710c1828ac47d85ad0ff75a7ccf0046c65449b9fdef2d2129b835c716452dc31863882d58168bd5ccd071bf8c762fdfbe0243c227c3bb33c4ff0e86301f08b9f0a8682e2a61ae8b7e208a332e2ba72e6e69d7540bb2024e38e1a6cc758c47609405081489f17c2053aacee5f72dc7b68de48c49b8e4f27ba0efbea6939233a66c2cbbc4de1da09af9d9ae388bdc6b22323d463830d5a14ada7e335244af03a6ac1a7c42738860ca5bba1770812bf548ab88b7d5164cc0af42c9341451342180da60ebf9ce18bf17c3f98776fb159523e50b92ccee3e186c464e54d917bf019e5eed0f53723e324f8063294cf250658a9a3fc9ab7e9adfbccd8f3dfaa8e8464cb23b04e508f49f8f36eca34ad702abc66d3b7bc3d8342e9faaf12502e8c6e9134a3d073374d340701880397db224425913659526ab3714105398a10d8f998347a029db4cec167d1cf3d34261197dbaa2c8cb2b23e6ae4d766abbb4b28a2e136e639df58cb64cbf83dcfd3af098815b115f8103a51269dfc164df27de31075fe942dcbcb38225a6d2f5aefc500b6a465cea9dc8f05a694d7e2c4eb00fef60c2c914bd3936e924130e3c38fba82b50c892a64d522b885d910f67697447dbf6273b622246ac8c197b56f7631a6673dd255a0c2f62f8eff8fbcb319aaf5c8cabfa064f0823d5d232c4e9bc4ea3e4327320265e7cf4614b7946c6c78efa3ba78275be21235f11daa420bb042bf77e6335eaef781624f04ee2310f3ca56e4d77f54d6b527cd56f587905f02a413a037b704dd60321816b1af5acc75a399cb9a855612c3fc6ca7ce20e0bed4ffaa48cc4b1bb199106d179ed76480510f9a3979522640b986c2c9006c6625b88e38be31c1d1ee256bf808777b899d8ba8d2086e9fcea4b47e8f18464f7a6f903aa45bfc2f2273fde1079179a7da4ac2d5f07821dc0fc71ef150fad286ff3c1ee0e4ca63e52b8d2fbdfa6c304cfdadf3c7a9b8df350fb2440cc75388e79f4aa38b3426e660c86ddb16b1e4e497efebcf82ad93ec7f4dbf7f83b8cf135bd86bba6ee6aa22af5d62fa5308347631187d7afee81b1cc610b4ab2e1465fc51e823dcd9c76543f7d0df2d9ad1c4150f80f6612b88277c90a6de71e11a52953f2b1bc6fbd89a8f75b8022621172294f810b006f510e6e796d4dcb405cf66511d15495a5e09681bdc45dc1ca23e7180382474a17ce8e55cc8a5d8ce151cad56e71b23d85ae5d3f04a2c1c49eb15e716bc8993af14b2cb51a450ac2ce52533adf3ece922a81b6ff091bcbe19526454753b7341cb2421a6cf8302be38c636329062e49ac27ec476686a0dd605da6d9643e66968553b11a72b112a9839b6ef0d526234d2f381af8dc7e91941a15a1812f873b34eb7d1c80118dbf1bc470045498444a63682034dec0bc020345f13175ac53e030d9b0922073791fb1459b9852332546b67c2dda17eafde1d50eceb2b4dd85097307be5f21488abb8d7162e894b74de15b4b21804165573659381fa22c0943eb35392d5e7c82c69ad4b75ef2708687fd5d74430cae90dbff2ca9f1d096bd46e1f6587e91f57c719b7a2c40369b28748d1e0b67031f993cdae806bf7f4f0ee61c1a549290a8ec68635d20e296ca7d042d78246b241f8f1a10749505ec315780ec4140e62c31c01647837b154726fe366963b1fb5e8eb5db8ae09d3903b8ebea628521a2a97bb28e7d31757469c0ef0448d6524e2de90fad01686ffc0b5533d167e4cce416609e506acb4d0f8f1c99936bde90171a68dc8106ab442d64e19c11edb7e336fe69a563cf610e2c48e025eec62b61bce85f6c7693d744c8a7b4db3cbbdabe884ec1630bec5165fea6fcc31cfa79a9e504d742d864fe80977f6bf8fcc326e4b3ca9433bd3fac66b583b2cf909a3b78a9e6eb1e80f930193144f130d7ea9560d9191dc5cc6392bd748c16e88dafd905c6b18e547625033e78fa16148b93b02fef85c17ea8f2bd95c1a892cad33f2c2ec26f601eb070702fb42f0d7590820ebfb6cd746ff05aa28dd72516ea0f14a117e8e5cc22ad307199500c4d4674270bc297c9e3cc23b1f27099390c6d06742e0ba297c99bcee1536ad8f604899808562eae1292a10d80ae5d13a11ac4bd43a8eff59487dbd270b39152759820cdb7457467fc8d7b7640148f4286a4a3e23fb38d80d00a6fccd5d67cfe80c2f00d8aaf3194fc6c50b5e807410245f95a459b52a84210c8595eddae819539c9196d7c5e1903c21805cc1c113e3b65123f725be176dd5694912ab4088f9e299b083021badd08baf9402a5b279830cd15ddc334143fb9af22a1adfeb0760ed72c76cad12178ec8609cb8465d0f265a6062a87bda5b7b40a817838a683871e277a0264ca6856e4926d77c0f91f56b0b71121ccabf31495c9d77b2038cc080c95f1806defb853231a50657237a9965fbe8756ac778ba153dbd5b78750034ec37ecab1e588f2905175af7a5361f6f2803d751ce4650283298199b3e126602f5cc9ed2773ff62066dfaa073a13164702962692d65851f590241ca4664bff42741244110623449998447a48b85846c6798054a2f73f1fbbfcc697bbd35ad25fa4f6ef2fe2de3f0f8d973abff9902bc503604d53b06091927fd41df398497ee4cda3adebdfce832880b0f0531249b3067480175f82c3c7602f61c60771968c0364f34656c9c84ec8932a1f557053fbd5856b1233a950676cb5f05a6be6e3979aa53e203039eb5fb4cfaaa090b94ddf7d5b32c183d950cff9095444a1ebacd795ba6ddd5d64f06ab81c4816ce7a3dde07bf95d00bc9d066d9228847476da828f3d4fb0d3b9e56d1831279d7413e04bdb91ceaea3713ee2d35b701b84c8221d343dbde6e959134062cfd02381028055f6951a7698d800b2feedb87f0823f7149ac9229a06c9b3af84a8d764def40ced0d6ef628a84c7c016c9c87455e4563b29fee6b0a3f33453098784a38b88bf819753cb911d977a6bd436ef30c1544d0bd8be6d2ff42a16315c16de277f04860cc276384c2ce0b595194fc7441d6449611fee63568c9912c0ce2c85ee03a7267991f00c8189106ca56f5302bbc412b7c2188f29c7d460a8ee325fd0c5e712a03eb52a848c21a46785be1820c74287a47c59f7010f7c6a25e3e9803b590b788b3659f999203a1fd4f67e2db8cae25f8219b75530f914b26dc5fb428c35019cc14140821c489038aced2ff615bdbb0109f8e1846e0bd223bf3a935280f7be240d254f93dac985ee1c1623d9505422880028a9ead3ff915bf964b4c174f8fc5a419cfa7e2d43002b177471c2e23bf7c85017e367e9ba3bfdf637e1eb6881f4bcb950184c66ed40d0f03489f012174d939aa217c190632df50c320b0c56d3978d642e65b13226ab0822872db3c5af40a909e3b89e390703f91605429b26728798310f0120815eb5193f711cd9beac2d96d4f329c8c198eae0ee6e9745dbfc416d4686a679718c0c0496bc86596e0a8d5d28755b8001b4e15c8a10d5b2a34a6bae02ecc7bda910c91835194d18b72a7c416cbb561b137694a48bd2f92d63b36146ff9b5fb36abe9fcb8fff7a4bfb37c561046a67d015caa293ba33528f647605e34d68065d55002c1e3c439d4a10f66b00c6c8d559b9ed5653d858e45f49309c283ee7d6d34111d6da38953913729b8a0c273e39e0505bb74644d957227a4b638c51a3335d2aeeefe5096a5581099432b98553a684197336d7012305b106dac1ffa0598d8d61580059f3de9c06ca10ae1a4b1e51003eab886af69fb7569cf57d1ac01437afb2b0fcde24611b31624c49df486d4ed870b6d40dc8ad41f4845c8badf0d0f985a6b65740048334c50332d05f61a76eef86f76cf01a955abcc4b52e6f91218a412e979079a7f862744d7c4766901d048ee8066c9c0c9603a6b600e5ba30aefc7e91179a1cac32a43aee49bd77b40ed9e2faa2496b3ae76957a7639fcb84735b2dce5dfae4a9f5c8c9c6bde67d360360e8ea8c2b2dde804db174deb69a105905a7b4a089cd43874fffa92bbbab9a70feaba5ed4288742c7ad902c19ca70d8b2385929c8c0b9c3813c30e83ce3bc9333bc0f0d45036e7f12135a0e8b25def18c532bff6b049ccd1c019ebb184818d849e15041e110679969b158c39975f4da4ca8bbc2c03f6a1d0c6e6b491e71e1d9c5a845a68d216001736bbbe61cd94d99b4de60bcaade0b81cac39a1b4060fec17c834d34a619a45caf66b8964d3b170838efa6274d8b10da67ec7ada7adbd085ec668a379b86a342a1780ff9d3ce9909eff53ffa3ecf8295e19eaf009099245e1875d392ec4030710a0e9d36c678fbe2296e97c0d9b2215dd96740d983f815dcd07d6b454b2089eea34fd054a609f041a2da0786ff26ed13d0f1dc30210f18db4e8d1e77693f151d00fdd2cf0af851887fa5f4407e597a74d4c4884fbd587d2cded0028b75e080d90ac3f2a3b670ca4785eb6a610fe14e8b0de29741ab2fdb871bbb6c141d494c99ea88dd19ed858e403ba49707eb84d3d0063c8e6f6fd0a2346093e449fb0539f413ce903985334c3954f731ee6a210e752e5cf9db3d5072a0e838f7d7ef76587e0af8905031f46ceac535bc62c823fc14d0d10a48b3588bf80b415b5d358c9396fe891e7d278688db5244d16679a81ded034a9cd71467c096244c319a9fbac1c8acaf62f37a4054a90a852caa959a8f59e60f79e74e281f45e3c542071114a7c830dc3d81d8d6654bbce81c34d0a1119837dbf229a1d2dce1fa520a8c91359fc4cbf111a3555271ec72432f2fc17a6ea9c4a4f852795ba4b330628d6100667ccd172b309143e5e8e5eb8f2654194da84b10c07517a5e9a57b3bfdf7b5620d2b4b7923e4b582cdaa73339fcc5ee999b346d8455d36c88b3c870f680f925734c773aeb782b52f879b9ddaf6eb9d73ec839db015078995496f5991b98717f15010aeecdbc1f2c186ee49b909f5a849166537f924470e0f360e6ba7d406e931fbc8733edc575bc8af62157113c1d6edbfbf701d264bfe7b00b3fc21cc04631eb307840be192d30e4a5f012d6f2cd04c6de6ff517bfb709c181928ea7dda6748a7144f681d1a570d34bf138a6d457093be58621e901e73175d740253aca6811495daf389a895ac5a7ff7ef3064d039fa545cecc38d0f86c263eddc74d40a19aff7bb44b3e603babb7961d1be12a33031f388d26b230a239ff3dc6efd29c8c05ede0d2e4d556dbdec9e315ef198d994e6a094848ff9b822af3bb7f138ee06958111056928302db299b8de75a255c764084e85f47e5ae59bcbeb675f575a700a42aabee7ae3c19d3ccc89f24c5c81a6fdb1ce3abdcc3b092df321ad25ab1b8559108deb4d0c087a75220a1c9f43c6f5c964e450c8d632615a793522039067589b33a1f10b25e0d17e190804dc5664ad88d69590f7b09dbf3fd9ae03c2337560aff22b21c1b52f1e7927f6f5a77392ee220d55ee95a30eac48362e3543e878ec28c50118af9a016e5fb885a49b0f82321c6f03a97e2c675024d8fea0bdb0cfbe0168c419fd147d18cde45debd0892fd45201203c6a79ad087d2b3cecde80b5b482382105961d654365d71be78668c86bce5b4dbcb65c5beafd26472ad003383dc22f33dc7f9137408b401ac4dfec5205312c0f9ec2395c2ad69a7ba693e685df8ea8389ad6d28ab8df54e601174636e5e4cc3c83d084f0c513519b972b728bdfffa93a50d5de413b452b6ea88362c2e2800441b60874fdb7a4c1ab8a581daa7d429de02d849032144606f32bf46e75811f18710214ab761c3155f9011d38326427046a5680c8e8e0cf11c8205bded1a6882398908a3d5ada3a420c2f0b42bf028524b1db60d1648e509b7ee767621acec1e383815428d85e00858dfc6389e3d41bffc382cd4386674530eb7d830b8d589d1ad4fe2a61e48d8271db445940e4da8dd16498e099fd7f8e4928dc97746e2d9ed1f854482014ab86e6ebd9d611e7e14909aa4599d6344adad86c411ebf3f207e39443f23cf73412d78c1b23ddd8440c00ddb439c95ed5c77e4305d41c32944f440e970f522b0e122b4708ecbbbd199b0845c3707ce5c28b4c7780344d1228b447fe70af25b452b06a6ffd32eb239d67488c7561dd3a4312cf8b9e046524a509a038a0de953232cd7f0450596575d25a1c470a7ed07636e1d8704e41d5fbbe4e227a21363c02cafd7a79d9439d3826f560f5d393916cad1825af8204fa709d08f2f969fe74ef955b4e9d21e20590c17596a2d9177d787918ef41cfbb1347cebc5f32f35877309ba36ecb3712d8289b297f99d10848e76283889849e70f1d41def4559fe14cb0747b23693e22c8c17d9dadee8e4e53b179186e8fda48a1fb9b7d11c7760fee3ea4b40436f4601eacf3273d141dc5cb504c8a12c0466fa7c3e5fb5fb87d7f55a1aaa8f7b78a78c5d5005622c0fc118573d4d32e7e0fa9dd25a0edd242ee1bf467cdab2f980f0c993b2d6b8489167a40fab4a4cb8de30593b2e6c8ee0019de8f5265edc271cb4555523efd32b8d68edd74dbbd0bdd75f855bcd3c65f64edf96852e8a4c4ac1e6752a1777592f4c4e1e8a0f060c18bb0b15cc0e6d4316c53c281712fb7cce225e4442c585732cd22cd40dfae6bcb9afce12c02463c5d817816cfbc21bd5cd71c1ac89e5d5bf70b0755deb9ccc77c692e0b438a4b78b64479787614aacb96e007f302178147df73a7b1d44a9de2e21053d3b05557ad1b3543feca338d0deb878d9ff3343578dacd5153deeb9538546442d57a9d52b668f5226cad8d082c38b822c23e6c8fb985e55e45355f46c9d4f2ef6be89d407f25c90dd07d7c970e63324c9d5afa5f9c48dd46037a0f1acfa0ae7d60c113f6aab1da9951297798f90284cca1a0fe13dd2632babc13af17de1a262c34ac72515032656b2c5428d5d05718759589690c57c848e2525f6ed11d4c3fd2a89f6e39059c39e0bcf541f241aa2b0b5523e0c887eff9f9bd4a761785da8f7b447dc17224f04fc34ed4782a3d2403beb70adc798739eaef3ca0ddae1dc2600dd7c3a2143f663748551005b2a69d452672bf5bec108bd48586bb3d828b63ce62cf31706f0f369b62664a2e2c870940a1b4ec4ca4b22f700f4be0e2b1048798a7dec92ced0ff1a1a170672c0800ef7663b5b4841ba8ad8c83fa342bc20cef670da41ed242d5b3460b8d40399271dd141125e798bfa5612ab5470d78c28d80d578b97ca4eab7a7b9e669f8f87bc7de404a8501f9da5ba53cd7e4d88740e3d23edc754c9f7a2465863d3177d4adacf3f2580f1a5f1d8819f17c9ded51b6f84a122a05d2ff9840e8b16a5889cfa61a413d11af13e434879499fa214c5f24c30207dff494f56ae4a3b4ebd35b1b9d5339d7362133fa0334581d85cc3fe7012618c5f7211c210f17fd18f589320c50bf03e025583c73985e58dba5aef2833d3797b81725be0b62b184b0a4b37d5f857be6debeb6f951c01fe3dfa74c1b9b34ecde23d5c16e86a5defe885e6a6ee6902786cfa7f2678d540806a16f55b41fd834d333c4970e5798e4802ee3b5aa38e39b3de10e2edda0f98b4e53852a36f9063ac3cff181db45e92fbb9049f10189b597b217b0d27512d943661716e6e832191bbea21b9ba2c6aea31a3b658d750e2d1f98092de26c9596b9792e17f244370ededbd1151fed3cdb608c8e6208ccf8314700c08638a3fa45a03c950bde30174e58baf67b6d0d05a54b486a60631d2fdfeead257f0a5ac60d9e4a361c40b21cfa173fbe1de5f06ac0d06f0caebfdea98f141dc4969b3bba926371b61058b9d98b1a90ea79032662b09fa8e555b8a2f700db737eed4bb7280d343b92a1b30ef4e7396de37d0b06e3ca8911821cf9779cdd7e6d16720ae9194aed34bfb7bb80bb915b8db1a0535825857f1f771d92eacde5f76c7d8f9187f7ae50db783d3c3c4e051a56d39b6a5295998258906f6b9d3b3fb044c7e03d1c1c7aacf1cace3e44e9c64697f663207ed1e9bbd41f0508ff9d04c16b94e57a011df7a8f780565a3e0450987a197c60ef6e2f50e7e0a6582017b3ef21bb841e4dd96f0f1819fa76942cfcba21c88a42c637ea90ceb1b4ee2f5a1cb3bd4f2d3d288429f54a216649d6e7c40adec38484b222d2df78208e6b6b8855c9df3ff7f962dcfe8338e7bef2f4aed10721d5054b62edb5bbb5e57b1d385b2f779a086c917cea6e87cf4332ff081d8b1a1d93113de7bba3af6698cfabc4048b5b6ea5398a0b0cce506b217276b71b64912ca342b6ac9221ad87de9f587e2cd89b6c2688ab29ebcbf541be03eece9dc76efa4b26f6f7f539192be71210c21236ac98c20777b97236037eca46e2d7164d6c11744bcbb465dac48b35fb7bd8c6332a53ed0bb2e45746311390354a8fd3bda5230b0740591447c8c29a56bb2a7d580fd66c4883f61cd975ff95dc2e37ccaeb72cb0543e667243e7b9bffee63a630d31f81b15bb1d5689b4945b873f06ff5db03ae01c9133f218f33c2c710df8f5fd6296c4bcc8585a23379fc2134062bdbfc92dc6695c5d48af05b6fad55928097f190a4de564afce3bdeafb811443efbe817a87cfc9f4202202f86305878e682909acea110f331f7a47f080b6268048c3e2138b80743ff92828c46c19197a8a69e020732452fe45a298031bc21e17772ceceddc63655edb6a470d6ac761078bb064a47305d461686d7d0be006d4b989dcab9cf18b4377b1c473bf1543c879fe7981b700f25e84ce6bbf4e569ef676d9c92f2d9c6912c06856d67b60a0b66680517eeabb0e27e97ae2306b057be9d7fc96e7a01ae51113cbc97ed92cc76b766ccda3111c7c1dec629c585b9be5d523addc2ccad331ee204ae5d2fbb312bc6027ab31d92d9f6d2ecac3b16b1042a61d5e316fffd14a026cd0a19de5e5a6de4c1d3d57a947108228a1f3eda2944869a9cc3ece2565fed9e603569f4cc3725301cb26d64d10094a4deb5bd18c150776e5dba755a739c5e526d37dbb8e167c4dda2c8793b75e7c2200975c9c20b742d9815eb815d3ed0d5a495dadafaa49a2350c8b28cfa4a5ffaa92f7e7682180d7c4b6cb38356b8a4677afdbf981c27321cdb5ee47103534226122cc26f15083c32890c420cce736a6bee2e01b7fc58be0380d6eaff8f690045cb162907f706117f6a22f3842d1c5304cc32d1c2c3ff2e474495b8d808a6b87b159075d89614a19eae5812268f12165ff6248b99f173050b428fb970ad55f98573d88358d476a5b5b8f050c2f47e2cf51bf53d7cb7d6690e9fc47e3e690fb5a2763e946d758d397dd7f8f832c8dda85ddbc4ca3b435ef100ea799e1e11887fd193255cd4de317d57a7d75a4dfcd57ebc504f0bc043f0b3daaf8a5e1963d6543ea10a83611dc81b2ef8b79f7218277bfd1ef298907458e42f548b78f765082ff9ea44e2f9bb785efb8b8fbfe4740bc21d31c1f8b2766f0fb63726cb9333e42f33a91415f8d2f90d9bf544bc4d73da62665cc9c7a205b62d59b5d841168c5cab957b93a3118a8faf640f1cc2171f51b8a4ddb639320b8037d89a6690c045d2c50839f6aa14332c8ef39a49ab7fce78a9425f2bf593070fa7af7cae6ce41b86e86b18429783c4738d7420b4f279747fe4cd1adc55f3e741ae65ae7e4ee5dd0b5b577dc3a5ff7f3a7843a53449c3d67848ee9025bba5d5c3bd6e3ecae7b578a63ea34a514c79a46481731c9887db717edfbab71a545e5b3cce88b6133b6490e7cca1f434fe602fd036ddb14ee4fbbcd8d7d3b013747acefc2cfa04e2aad7cdd25f2223250897d66cea9cd9713b5d8b33ab4e43a608ad1914ca642b7cfde7c4246af2438844faa9f80c248997a1dee7cc836aad0474e3463df93eff09f2fd92980bf39970821f997f466aa2d8f39e339fcd5e667244e740f495e40d7a8eeca1b915caf7c9c64b41070c1874e49cb9b9dd5b8afa30cfbc3a5aecd880799c561793fbc270f3af8e39fd1503b01bad2454a20c0f028a570cee96eab7c5a37d6d59af9ce987cc984b366fc81d3b590e05b3a46d6b5fdc0248473f1cb0ffdf58d8b59a249908d4771331b65b93bfbc353c0d4823b964c03e5609878735dedff5b3264150446f960e666642992662f64a4957c54c5bd9de67c9007421c59e1ba2be4a087151d19cb15dc9c86aa3054ab29f5b9fc8d10fc5315a9d5005d122eee72e27ccc4091d1df8c1ce16ba4bb1faba07e71031da011c7ed0ef0b3bb33317cb64c53121fbf224486ea22f6f96af2d399b9211ccd4b4837cd92c82f65c66ffc0ece071a3984db9c0de20ca7e5f24f0e5c7d6159738db630c7c9986e4d1cbe172ba444931e5543d5f6b599233fada8a6e13528c9b84e6266f05a94de6376bf871e607ecbcbcc883604623641ec09c9fe11ea8b464bbf3b2a111ec80d1be93402fb56baceb651134d1a29c16d70d59e3a3e6bf48af47d7699ed2bedbda84f8fbb69c380a9b320f97a331717672e2b7fc8cf83248e16adae6051b079ab7eef465357fff6b6f455d3739e3f65312a4bedd1b754ec0593dd6d672d9b8ba452d834b2d047fd72ec0b4f2649bb90fc41ec48b5f8ccec9935e5e669e52909697ecc81bfdaabb2048780a6c43505c4b6a0df6b41e8de6f4c9fb265b2dd3a42af50120402f6e5a0be37ac5c4005d56d6728e87acbce6f18a3f4507c616a2daf8ebe4f6b6cf383f9d87c11b0a7a4a10cf6e8e1b1b56e0129bc5c7534cb0a080e1c3c961e761cf0a2c2e24484e74c77501a90272838dd0a1a88382a9e82c4de2ee8e1f066acfaee7523b00c67ebf49c3f822177a79c0cab0a2ea85ecf4e849a3c8410f12e5ef9923a053a77abfe1623ead7fb24578609a495b08da1a0c5c48092d358d009782ae26c24a195a41089e417a427355abf5cd3bb978ccbbef6a07fa0b1c6e771a465706ae3fb69e21a5dee742b6002aa8007b8134354cb70215f61aa32a89591fe44623a20310640b8f2662ec037334e4aec2d595fe07da78b3ab810c99b8bfdc7aa870d619e63d905f19bc091643c6e886fd1c5c57f66bd09f1b03d6ccf528621caa4aebdfa171ad10eccda1201024e6548a12b977f58b50aaaefa2b501feab711441d4b40911a23c62320cdfb41e6df522430efbc2918b8f38d83d0c5c7dad9ed85a6e1fc8a5b71985c15c8fd0544638eca85fec7a03163a78546aebeca639a67cdb327e19518cc2fc3ad84e2f93fde0bbe3bda8a8e77a0bc5f157b45dbe6217235c1beb724e46aa239979e13b824d3410a58dacd96735a7f19479044c17d1f1e2765453d6889e877cc2a14ea33985b33ebd205608b440b31db1dc2b44687fad4545660f61dc08b3e47e6f57254b3945b7281f03a8db6f6fd5584eed897b220e4b10f2edd9bffe52a2e66500f01dd4d15040c98a9787b882b6259136ea93d8448a62ec43a52bd3b2bfd960408dc1bd1597304c379fcae6ab5471c2427514e361092abbb5d4880e6c7eec168e45581214e7f9ea13a44dbc0d1c6955324f3a73bbb48008d9ca5135afd8413a6612986afb1394e49e9878b030c0b41773e947709cb93bf5aad43820fe68a31428abe7b40a62c4f90d7014cfe015cc5a08cdaef2261b23f7bb26e14771a3f408e3a22a6aab98ba3e59356de082b0731bb18c496a38ee42cd409399af27fa0a8822099909cdb6cea311cee4a9be75e90fc1085b9fe403df3b8179a798033cb0bd38556fe7a29a33f81528d649685c72b93d3a99daaa0579daf23584d6cb34716a68859c514f556b6ca40154be19c827c388730009c4e3a823e5806a6c829761758ae538a28331c4c06ef6c1facbf61b89c7aeece070caea1fd5b157a9045bda6beb611858de321bfa253c84043e1067930b556a42882296f93cb55d92e7fdfd47cb5603b077fc08430c5619f09a6d6058d726d98ac45f2c0dcca90ff4ac245cfad2d15b2253cab72c092cacd0515e154a0ad606884461e87850be930ca2a7857cd69c955e291bbba9a620d6b8e1cb98a0bd7234b572778a02a15647aa5c9623fa1883c5c2a4f2cd58a90fb4ad3c5125219f9b9f435a78b8e71c38f6b41a622cdc6bb96f03a0616df5bf83c7cac5e5aa677e62ab2784314fbf1b6d967b2702d3f8ebb527d6926a3503871cc5ee01233a989f29099ef5d0dee1c0992932f906c6bf3f958d485c0952fd1a30adac03b5e8ac1ff2109fc2b97d7950a02579cf1f2dc99daefbeac58290c89de8476c23c8708a230e2244b1f15bd98615fbf0b4aad229422cb74ccc9acaa0a8c000da1bcc9dd65dfa9627c2ce2c9fbc829e44bbef1f0f02a8e169567d3c880a08712f4e295e1c4c22b4245e449855876dc13c54f5ffb48778a0c1220688c05a59f4876895134a63e4eae21c1767772a2ae46f0bb07c67c43062b57fb7d3f428a2339f9d058e1b2a50f56de2cd787ff415ad53a2a4c60ccf98a81737cff7cdf8616f66303645c882a8476431fe3a2cebcd2a094e279e6ded6d22274c6a744993504ce480ffcda262c27196876a97dd2365bc2b6e80228b89a87f8ca3ac77702f574910a7ba1f1d1535fb4ca4060303fc46fb67052ffbae1eb0fa749e758394dcaefe167922f744012a47d3ce6e430d6964b5f38f56fdc1507b7c0d2cc6c0040c0b7271c6fb8ddf5c41e9d7918fc47a58845c1368862df1d84b1d606daf894d020b35efe125ca1d4b0cd8af0061bade8ac88a8b26fb31115f57fe5f595a52e3258069907c29424bda703353f012d1d2d5757a31dc3dfda1cc80a75ec56200683028ede2d185deeca309097feb8d75c07e3d75afa3454c7b642ce4aa6eec6c93996e5c9126a0da5cf01393d102e4ed8c23eca446b8d1ce03febe8b933c8d596eaaecf46a298497bd1ec11f55fc1ec51708bee3bc1fbde76303f51bc46a8f508e3d17b0b5875d29e7b6d7af12338a3dffe01bcd9025660b90d6a23d6212858e4bcc222aa3592b9c52a0edcbb1c8615fb07841f4b7736479aa75c6c4d905eee37688a2f3d1d51a37e0278a177ba247a845a340028ee0448f7801fa65ee446a1c283676b968006145f5677cb97a753cfe2e324945ed768f26343a091c0a7e6f977b8a5fc77a2eb9e9403607e39aa3dcdc77947d0f38b20a9031dae1fc84fb1d1c2bd49a4dc38d11fb6852aea4ecaec40073eb7970cc706de5927e9dec0fea6218f8e35f0990942690c387dac81765d616ca6a9ad6c00e3cb518dab2d86ca7ce92d3610001e1d9822cbcdade8824dd400a3c6232905a6d18703cb606aed91e40a89dca7983f04fecd47ea6e0d59bd6dde7242f13013d1edc5024b37f78c138205210c062829b92552876b418998331f59f2fa76fc40716b34711380547e68e5cae08c4f5008823c291c7f8da556282605eac5a284c2f8fdf189ebe132dc2d560a9312c7d63098fc8197b91380496d20342f1eb254ae0df185e9f3953b839f31586a8fb3b1e2c2a63b199e85d9549260b510f981f65dd167a2dc53ea13c674ae7b32904543d15142b8d1557cf3831c1f7a0d44ead5bd98bdfb34dfa315df2392d9998b84b6a8e4d2f7074ab59e7d9b227591288c5457475ff7f4ad5b8a9543821d8a0f3746cac2cd94ce29c153462fa4936b971f0000e1dfd16f1807f9ecac6e79da69eb5b266be1e0d82acf65be362ee18e259a2eb3a9b1983b698ce4f6668f85d4a381d97a05ff44248425df64a7776f87c066034cd9aa4c07b3624d94466c5b1e83dbf060dab3ecc0e3d2a3f8c67896d260fe4d294c4b0d73ff8608b428466f7f889f49a4a0c30b1c1bf83e3cabc752880a6c5a456d7e644cb6a4519e2187a0c843dd54698693ee43bf507fc5b128d757ca282e14fb1df86cafc333c6b19548cddd73a07735c9c362cd6136671c69f0ce0b8c923660d8fa3d1c6ee245125944c831d426e1f434a65306a0aa5f5703109d0fd2ad93fe0bf04c9b006030ff6d39ba096d2564f93209fdf7c4e28655caadf889ecd19eca0e6ce34d3c5b141b7ba9bb6f0ada58ea265d0ae9471bc92f143ebe7e58283efaa30cab5d0668eb6c5155bb01fe2cc548f9c918ec86207da7737dbd593c21f0a62f2d51c51b50956d0f04c224ac37035230784ee865ab8509c992a584226f8194988449165708fa6c6e7dbd834b0d36439ab7ef08590802a41687ffcd879bbd3dbe0ac2e9067f26b617850a2698a98769514f6df1be27eee71e92d08d7ea9da18cc16c90728c999c9266aa4fed84f0e3944226bfc0b5780fc4b7b1373dfff04e932483dcdff9d3261836d180cd565176bfe58f024051a5400b92749a38333d24b5217af9141866acfdc01be434cfe65395455db040e2aa70009c9aa588fc3f521f9c6180a10ac2320827c020876577401e8caef4797e432b9194f46ffce9dbeeebe8406e96b6e6da48034cff44f1b9ea441b6c292cae8fe76f484a56cde3f0b12d0428b7fd939101d5c4978e0e4a5f41c3545083a18dc371cc965e04772ce937cedbca771f7158732d051649e8fa3b36bb5d8bf1bab689c8e39a2104f3abb931631460efd07844b4044a86ed7efc3ac9d27a674d878f536e49c450e97e7680e6dda555ba099bf4eff05964eec3a3bdce344e1253ab9384125cfa46456ff51877758ddcd43872fc8f48891085dbf08b6d201092edbd1dce5de94311bb20a3cb3bef37610e9a75866a1fa9933aa24e8226a23296ec05e02ec999b3a3f43dfe946278e2ad27f60ac33492b51801887883db417afc530da1a13c2fc0c59bcb11ee85b7c38e1ee29e903fce401d382d77f40289a25bf38f58f02f868c44e5590ad554e925981082316aea97c41e8f3b7649f7b74a49f2d8b10c95630d1ec81e99559c66ab414c33cc411165f49fc9e64b040c95cc4d62b18c2dee1213c86ecd8f1571a38e891a47a3a6fbb6cb7b20304465988dcd109c82cc91989a1c7d6521527dddc6038a7930b9d6985f402b146acebe1348a3926736ca9bab1016267b065992e2f7eb1d2087ed27be730c00761c04b92aa7d3878fcedad70a3eb1925337d76cb2bfb54b54baf4ea424988b134526039b51be75f86289acb20b69bb6d9e6dfe7d60c86fa177037cf05162dac0b510fcdf457926ccd133b8d567a312c368bfb638b5314ae4ce1a1692e3a79e17128b40ff5c8c39814c3b163c71d0af5ed61a67eef1cd0fdc978fb427223a842f1ccef9d2c9b32819a8195ee363f8e71c3e792b3c1c26c8f2fae100b4de18ff097a197bf6e8d9ef6d369124166e0ada7791baee89eccc98c73bc5bc0c37002a3a0a2dd10c56bb0323e9a7b031584f6140d80caed44bd9eedef2f90f281e002cf76ff3f94a66581f06547aa997631950a88ec339c62a2daa76e928abf5eb0c0a0bf008c3e0dfe69e997cde2dd7333ed2155d2454e3312205b826a3b432019bc46843050a3441565f2e22951ccddc77851f188b620a0cd952bc8cc8235d272988007687f17921c9af1904bedac4f9888c511b2e9f6ea7464d8c92b4e1f7a801964a0ced06d799671d3ede10cfae0f45035ec256024e21c0548313dd8c64b1f3752978e02ed264a39f89d1d98132cca51536ac8a076d680a5a610c54d3a59207778669ed9a70ff041c546ee25fb58aa386c9ec59adfdd250a3ae7deee3c7999270574fa2a1581693123b9166817ea319c35f3a36b162d3d6235dc343839b95b6effe04788c97c3fe80a38ad7f2eef852fe941b11e28730ae8b2d6562dd547ba9263ee30d3cebbaaa4322b2739a15a12d5f3646ca46d94c39e68c8cf003e843cdc2f9ee3f13600890f5f5dc9693e333d51ad9628ba361699e854038c5b2bbec38bc92858aaf114bb58345fb3953e3c81c3e0583fbe6698bf4825bf34d5b0914cd8463b54651cadbad9227603246fb3c3a8d9f6e0b2b7d2e8d339ac22a1f59bf29c81dab27022ceed2b2b4a545887e9600b33abf2645941163ca81ee2312bb2d945e7b5c2e93588334a7a7aa95b3813d0fa01f56b48433556a718a5153c7fe45a74b888d940004025043c4c667b0627732ada90111fb2fb52a63759109a8370cbf253d1bac477479095e28a1dd4f33b5fd0625aa664b203ea2f31e50529ce0ca9b1498fc3d0cc1d78dcc8e4263649648fe7f386ee7f53479a569d60742392a0dcf5d17e57e86d19d2a059d6468b92afd4c700d1e9a73705dd742f72a84f04ced0a623bb0f7c7c990a64826586f93ae4761f0a17c0ba54714e4d3444b636664f04696e28722aef81d911d300e95e9c28c1a02f041babc91c81b389f016c34c146a43483c4e2764834b04a46574b44a777625f58b193c6ae4fa91fc14a3d80384d84c3f76741c9bce77ab502b7c7215342ce4e4df12ebe6e5bbf3f6910d6288668c3b0488726256a3b4ba0ad9df48a09fa306cf81b674c08f4793ae19ec15ca804694674049d9d640eaea347a980464bc7e808ed39672ebde32753ae03433bd998fa344551719ee203653aef0a4ade49199f2cd7b37596bca3bf37f6dc245761a6e5460ab38d8606afbf4731b9c37429e97e42e80bb5e7e3c0578b978ec890e4bbbccf1418080e00a6a5d234ddb78d13dad64d63c79a555f22054b2a2fe520d83010d20e534495f63656246678438a40e57a523302bd4366a5ccc35e28309c9106d9fac643d50a48a5b07c82a6ae57b819a821d0f0526269fbc949ab92432b0c11de139db4ba9767ceebfa2bd67ff6371e3eab662ba8b939c2bf0bbccdf25a592ea68d47afd3c27f40f38a064a9b7d1b3ca002a88c33eed5053a99561d594ec1a61d8a1ad85d68fd36aa211602ab6c643c30fe97d3e23f589f4645cdcda3326d1ade04b37385415cb795d910067bfb4faa88b9801299d2f840ba4ee35df391b873e93297613794ed48be587f77500923e2e08ca215fc18dbb8720c398babb1428ed7ed24792f5daea91f90f06610eb5079bb08f02bdac213a4fbc7d408b39ed88575eb99381a2337668d2a4a1e08db2c3c05baf173cf521038ce381dfe43b6171a7767e3e99988ee9159107f695aff48ceee50e7f7dd36d2fe72b2d6d096a4df52ee48841a49b29b6ca8ee5cc40ec10dd1b1118dfbb12412067cc4b633e40c47c4ae46615749bf22290f0cf80cde0cb64cb164496f96e1174d2bf9efd370b55532165ff36f7656a0a0242954677d1f3fffd086ff474bb8251c0e925b987373f5f831fe9951b59f8fd5e51cc6d49d1bbf6a71d7617185afbc32cbd9758ef10ad368f6a7bcf841eb39a63ede75167f52b402f0aeebdc07f79e1e1e99e5cb57ad96af7a785a2ddaf7463c20b5198552e88991bbf3e0fe1f0d41ebd9da751d90bbf085a04c7a9c6915c7e031d349451de82769aeff48f47385ff546a954ef92f0c86889938f32ae26babe71f7df5de7d50f4c4696fae144c07dddccfb098c3947e1f8beef296c4828f3c5bc55d66f92a2ad5f1d540a066308031694e976b4c8a628c288428a0c78e0c5dd7d9b09cd2f9aa4a4e25c38d47c331a73a979fb5c95aab74d60ffd67ac0769a64934ab4a71491c27a73b92b9bb367b324ae7adb0688b39f7e227597f43979df8858e9333ef878fa50ff7d83b558a667f078abb1d28f69bcb29bd623a7aaaf18f52ee6ffbde966b36fbeaafb4490884902decbf99ac5666b542fbdec8c26432996c0cbf69411b96537048332b7709d7aeb4fd5ca1821f897e5216fe1f7d9f94dda75551f6deb53408c0a1649c538e4f93ec0db168c1b1da2a65df478f727d307b9fc3df2965ddadc2ea01524a216011214a298626c2cc70c32d61656b6fabbbbb98228a276cbdb9c5be7a243b933ecac79201139d4103b8c7f6f33c29bf98abbcb2e6a1cda2b5658a854807dc273dfc797e3dcb28443ae0b09c5d09dabcfa33bf965669fe49ea7d885d3aa66349aa7cba4b5d225ad25d6a52d35d8789894e7a9b87945942a7bb711cc9fc6c283d51879f32ef91ca680fcc4ab2eb56a548c8e92ea9be6833bc848d2f774277908e122de89e3fa785b18cf2e3fc46432f996cd25aed0f6873953622d92371ddcdd66ee6dd8d2771dcb13ef9b3ca0773f89e27ffe6479e9c398ee19b63718e66dd710f44f98d30c55f5f8aad46a7581bfb868c98522dc5e2e7d5201b9653c0cf41ff79d5ca7ca3f9d95e991fca2fc256b2855999a2f74940f3bf6c61f331964446f38f40e288141c004677f7f7c91f0cd29ca563ee3dda75fe8fbd55a3339b6b74e6e3771f6995459b2dfe5cced5cfa30f37f348a3d9cfda1fee7ea649675da2234fde58c6320ac7ca58d29cf3febacdbdda3c113bae559aa9fbeacbf5ab04ef879e1f57797bd01a3967737da4afd16bab7cdb8d03452cb3bdc27d54e6fa8e297eafbea8c35f9c7df5499afd6b6dd86df59fd52aa559d0df16e3f0edabdbcccd97b7afaec235d3acdfec14cff5c1ecc90ac4c949b1fdecf82f3dfc48df63f06db98ad6abc4d7913c8bb8bedb7c2441ff2f67faf9f87df27efddafcf933975eff6ff96719cb0f1f5d7bcb5ffdf630e7dc3ff73e879988bf4f163997a9ea67997e345731f5cd28c6367489b3b4dd1c8966dde51c0eed25ea9ce5d7ba93eef127699d63ea1d1096586219cb2a9db3bc951f9cd57a6e6fd9697656595de22aef237d7ddbcfdc4afcc928ce8ddf9c89783a28be7863ce8df23656d97573ca15fedb6371ee5ef9891ecd57862efdfb5cce7df62eb1458efb479ecc397fd24fa028aeb1cafb5eb55e90f46c5331f5bf6fcb4ea3de756e339073f38fe4ac8ae15fcff86ff693f248faffa5794efa9a699697be2d67ead676b39ff495e3a7590fa590734f93d8ffcaaf7dae54fef52a752c7df53469e42da0d8108c9565084bcc39fb59dbcd1f5b5bcc396c83ab15e7aea4b9c5f57fe6aad41e375b65fef4b1301b9653e6dbfc573e4b8f7ea1f8ca16367e5702591b0b2aaa559aa9c4f2d5c2ee677b255b9885d5200b73650b0b7ad8aca2f5b91f86566ad55e2cf8b3bd92248588ba6efe54f24772e62dff09923254a556b3f797be6a95667be5c8b355aea59728d32f349a57ceea05144a243951668c317cf86a61f36b8d1a656b8b6eb26801072053d200106970014601b0300581c4144491ee168df0e55aad6a41d07a32032c6132800d7d7d5593df27dd7d0b134fe461f3aa28abe48f5229e150c2a1bb639fbdb95acf93ad96e792b20204e03faf8ab2fcf867b5dee3cf1649367af56bf7c107652fcb58d264363f1228cefaf7697fe75711cb72fd4a4190ca3edb1aca42f9f7c8b35f15b34592ddb7652bcb9eac9f31fd8e3cf9cd3e896d686f28f3ba4b56ba4b31a3ee525189a8bb34d45d827597844c04e0c344003454ba4b353c1912d45d9ad25d9252026a1301a03011c04be9d55dfa79e2e3824243a9e74977b574d2d76bd2d7275d93be4610145ff3677c2af9f11785a1bc19e1a2f973ba82389c314d7a1af595f757e6b5ab980b42d9c2ba4b517c58c307314c3e48e14314261f889ac3c17bfc069066fc2b2cfa15a78fdfedabd32c2889b8f922c6d4efdbf215696eeb0abf1f79f6bb57f4bc3ae4dcfc5ca9e72a33aed6f3b7654bef87fe497f4bab54d66a595a0dba800d9dd8dd51544b33ad94f62f1b9653c6247bbd2ada5a5df38b7e764841779b7638a25922448874806ff82142844807b2bfff734ad3d8473737ceee879eaba45722e19fd8f7c99fee5296318b238bf4b7bb6444698491c6554b1f9412b479d476a3595004699204b97a2d6d72f86df61ec95f41ee9c7f9f48b33607a9fc3c973894a0e720e72ab53effda8c1de3207dbc8f04d45d9ac2943f9039d0dd21b4e9c6a5db6b95ceff238bf445b38a364ab6b00fc7d8cffc1daa95f9f3df4b02c2f393a45089c749abd4a4bbb4d3dd73ca3bfe91ec1fff95ff792c59020c3080276d12b3c0b54aa7fc6fcaffdc66c799d268228dda70094b777b6dca4344d9929c01e08c553a7ef04a2c5a8af49708542259794b77d728e8b6fa019a90a3e741595de4c19703c1078a0668babb0190c6135ebabb3b50428612700da6ee6e100e708510ddfd7df267527be5fef7e107252c67f658267d4dfac29fb3ebc331ffe090e290c6be2641fa97e81a5dc956c62b62f937f633f085fee7931ead36ef631ff5aa687f5e3909485ed125afe80aa90dbb88f07b74d6a05848bf288ff483f157d0ce2a8b8c90749754a9ee924d772986520a3074975e28b9d0427789859283547e3f99621bfeab5ad8f75e953fef5559ef235929f7691636565792bd44dddd261d8674ab7ae8ee92294c33a34fac1e2870401ddd5d4a6386338616227478a3bb4b43b06005d5dd80678aeecea00a100d2918c266881774b7062230c0cc1d4a78e14204ddcd011348a429a5d1820194ee2e8191801444355b94314377976868c00d434520c0092ebabb34471f46f42088122898a1bb853ca003c0123633723841372b7ff4088f4f4548181e8232e3076916c2459802eda579b61f769ff26ffe9ae9a52156827fdacaca5f6d5882a5154a2a747729052b4449f6f17c438ea874c76ef627c4577644efaf601aba300d65add26b6d59945f08d21c32885580de7a78f21b4d5b6d7ab494eeb109608308d4cedccf354ab3f686324cb3f612093594ee9e423b02947f33963dbd9906436bb65a9f2869fffa2bdd72c24badd221b894f0dff9519b571a4d5e10dd1d7ec6479efdb0d36836b4b1323c404677d72057fd7068a7bb5485cb8ff3f847f3c7af5ac7b48a344c6d31e7f2e35cade738535f11214284480755fa5f4b7b1f1fffc8c77ce9f4b7e56bbdbfd26d767701629a85c0e19bfdbe4ae57d49c08924ddede50032f64af0d7e6dbf98ea9672c3f221d546b7118da3babf58ce57f9ea5f7e227af8cf2bb8f34e4d5a5010f3d1e4a4f76fb5a5a5272752874f70e77c3f21ee9fb2488c710a3ef05eabc32e96e23643120b6f4a0c200c074b7ccb8529b2741962a0c1878c0419096e5b0bc9fd6638d995e19a6691aba7b0d1cb68412fca225069d41095a62f5a64d5a86f47d7ceac6a14d3778e9f6ae7c2c439b6ec8d23dc5cf4bfa2b6795425c70fbba41131faa96d5ea49cf1357254d9acab4afd22aba4399f655dcddab161e3c6952d9d7e6cb8e3c7933b84605a2d84009db931eda7fb2f9d90d6a4f78dc9378fd4f269b9f8db2c47b56e816f245969dfe69ab8f3904bfbb91b4298b906e6ffdb4364ffeada2cfbf9feb7beb9335882d188b946e1998e0d85bec8fe4e793f1d7422b9f7ca34b34e5fd564b5e20264c983061c284898e8e8e8e8e8e8e8e8e4e4e4e4e4e4e4e4e4e4e0e0e0e0e0e0e0e0e0e0ececdcdcdcdcdcdcdcdcdcd129c25384b7096e02cc15982b3046709ce129c25384d9a3469d2a44993264d9aececececececececececcc30c30c33cc30c30c33cc30830c32c820830c32c820830c323061c2840913264c983061a2a3a3a3a3a3a3a3a3a393939393939393939393838383838383838383837373737373737373b3e426d966af963e877395954e9a7d24eb58da32bd7d96b67c12e109116422ccf08253086c842026041f427872aaf9030bb126e754c34177f3f409450635c4095500d4abb915ae962271aeeb7c9c61faa3fae1baf948fc67628ae5dbb2cbb9161e89225d11b760ab63296b55bc5894decfc60ffc1b3a7e24f91fc6ffbd2ddf477a9873b54ab94cb1ed2ccdd8317591f6f7c5e14cfdfba4f4f1b361ca4f277b3a75a79dd369753ab5703a7d7032d96192c244c4c944e56492c10527104000829813084074f74f9f40e849f5098411babba74f1f9c6923419c3ef0d2ad84c75d68e1cff46271165ee1150e37780b4ff945ce52dda486bcd5c3e32e70ddb4459de34c41206eac12f4aea359998bb8a32a3dc7f5667d85c74c7305928e6456e9ffb451867e2dcd862e1d89cddf2bc81f94d8d6bf6f8b71d9da3bce3c63f1e61b67c3728a0d4b9becb37636310e5f93cab2b557d6d36ac57ce5f5c4787a563c3d3c3839228ef1d08666d04f19913faa08d184093b1d289972060544421e2a0d3a540669faa40100faa44109dd6d6404114ee846818522be420927d4991234eacc0a1ac5c6068d62e38446b1b16a141bae46b1316b141b3e348a8d271ac5c6168d62438d46b1e147a3dad8a0516d8cd0a8366c1ad5469346b501d4a836be516d6c69541b5f1ad5c6168d6aa38d46b54147a3da8841a3dc28d228375268941b2c0e5064881a45464ba3c8808d2233368a4c128d2213a6516438d02832648c9070e484d3071f986a3c10d3351e98e91a0fdee81a0fece81a0f02e99a2245baa6480a5d532486ae29b2d3354588baa648d83545ba744d9107744d910d744d1131baa6c809baa6081e5d63a4bbc648095d63c4a66b8cdc748d111abac64800bac688ec1a233a748d1120bac608115d63a489ae313245d718e10204231fa0461883429bc6e8b469cc4f9bc618b5694cd7a631629bc67069d39823da3426026d1ab381368d09a34d63d830628a238936c5518136c561459be200a3bb6b4ca893e98b256dfae2a74d5f5c69d317b4367d51dbf4c596367d41449bbe50a24d5f44d1a62fb0e8ee215dc484041f6d4242903625616a531228b42989549b9260d2a62480ba1b35840d11b4898d39dac446206d6a4303104e468a80004207a713085c90dac4854b9bb820d1262e50b4890b156de2d2459bb878a04d5cd268139714b4898b1f6dea92419bba74d0a62e22b4a9cb0b6deac2a44d5d5e6dea52a54d5d626dea226b5397b04d5d7c6853972e6dead280367599409bba70a04d5d3cd0a62e246853971474774d912cfc68931644daa445096dd202862145fed869d31faf36fd21d4a63facb4e98f599bfe20012582490a216d92a2a64d52a8d0262998b4498a9e364941d42629bc36499124420d0770740d077d740d008c740d0046e81a0024e1800f3bdac4471f6de2239036f531a44d7dac30648f2cdab407186ddae38c36ed81469bf660a3bb3d28e2c1902f629bbe6c69d39721daf44589367df9d2a62f53b4e9cb06daf4658bee2e5283c263d5283c761a85879446e16143a3f0b8350a0f238814418181a65160e8d128300069d4180d1a35c648a3c694d0dd6ee4835b0a6dba3d69d32da84db72b6dbad136dd6edd5d43c2911146e823dd269c4c47ca9cd0a6325c9bca38695399a23695f93695e1a14d658a685319306d2a63459bca9069539937da54c6056d32d3419bccb4d0263334b4c98c00da64a6b6c90c01da6406893699a1409bcc60d12633654e1c984e1bd4d18d2fe7610a2a390999032bb1799f3d5f0fddc9fcfbb51abdf98a1f95b4fab49f2e4d687a28092979a046093470e32464a81b96c597ee3e6900c449035bad52eeda4c1dff471925918d5921c029832412a8d028a531022143a7121593ce294e251d1d4e3d4777b330ffc64ab3238c38f5abbbfb883484884110dd5dca8941081f8001148d86088a300dc207be1c7e191a8328a01b7f92e61e9e7156c634c8cff8e16a3115ed5cc92bbafcda285e1fbba447d7debc3eb636cfaf6805e01cc662965786a10c1d09924ca3d33195b7f7710ed390bf36e9cbb9a440782eceb9a20220456c00902a6d7d964af8e38d9fc7e2946c61f38bb285e5921a69b2e8ee529134555e00470a6d7a0116dcf84749bcfb23d9c9aaedaefccfc339fca347c2e31f611bfc8e058f7f149bd4f633af55ea51d056ebfde71c2e7d4116363e9589c7a762611666c38704dab3bdf577b07fa3f061c40548b860c7e6cf952decb1951a6461442753cb9b9380be4ffeb8c4f9d54a06f9b16c047608d26d5412240113d0638a1e3c68945e00803e401d0510210313ea70343d40604a1e5d7706253cfa0095c08309131e5bbce50fc023d6dd5d4477b330c41d1b487a96bca264c13ff9d86591e8c277c03e1cb347460bc274e390e6325a606b3365be84a00482eed2197db3c3d6fd63a63b509c5dc0022d1aace305f97115f18b3afcad221a15c0600eb2021eba7b5a6f49283306695632fed11543139aa0f6d65fda0eff97d60c5001187c3910cb5bb535557461338939cae304480e62860492c50c09238419014d08be7477a780c71b3b2c8c5078bbe07440d1a53fe8584d9192821ea2e0f149c197bd4791eee35ca90d2767c33f3fdb797fa5db711864479efdeed368e26c5e09fafcc7ee583acedecdcefd29dfe6f4be91955082fefdfd1cc640411210373f63fab6fc3579a9a4f9638a44737def15f4729b27ff8f640e25581f7f96e3178214bbfdbed25c1f7fa198dddf165325f157d02bf50a7ab9cd4e6b9586a1145ab9b23884b1ac727bd87bd746b959d8f7d5af82bfcf85afada22dc2a18d7d92decf5228273dece84af07e965842f04e11e7174dfacaf633ba3d2c273dec8f64364a9242ef5529621c94b1ac823f8b432178a758a9f2d3fe544bf1f8547072ac8456f0672dd1b551eed3bee8bf90de988d4d6c2fd16b3ed2fd9159be24d2b43ff88d267db97ed27b1f692804bd2c73e22b98be1ea497e87f3e996dec0d222f4e24a0040ce877c30cbe4f34816041555e2ea097ec55e49ad26a75639d4758663966e7aaf57135fd67e0e7a02a6c2c63495483be7665ccc2be888d1d517c518798b88690ee96c9383cfffba49c89783ce39acc28e24c92e94cac9bc37ffd43eb61afd4c8fb2bf38fe46369c964b0a120a322a02b322029aea2a198914cd6eadaa610b4100340ce60a3edfd1d642cd64793c9ae0c5fce7b24d97cd991fc1b05a0988004ba1481f78cec7d1baa851d796ffb518395c615b239651a28709d0fc0713ae79ea3f49657ffb7d299cbef939c2d873fadfdbfd93f89ef23c99b1d4b7f90c3f8e6d127490a8daa6ced4dd19ff6a7ad6fc319a9334630434777b6b6c8dd8e37db72f82fa32429441bca1646ebbf5c9ff42cd2d7aeac626d0c2749a19f24293425362dec5a5aa5f7677d4c3d8bb1944dd923d12c65587e9f946129b37959ce6466c8c19a746a20c4640691193c6dc60bdd3d65d97ed80c21dd194de3f18f6466fafed1b53719192b9a684c664b6332b66e32443d7e6128c9e874f73f8d8c778ff7451dc80ce9eef7aaadb20fa479f00370d00f94d1ddad01191fd8d2fd81b03f70c307a0489fe6e2ac4a455b7627d667a0783dc762e836572a9bf53dfcf3a88cae1444c9001cc621a534fa85a0fc5b1782e22c7fcd57d6c8b9fad8bb90e6a75f184a9a6d58f4bf3951257127ff511c8927f17f9a8ca6fc898734cbf27f4e5421cd29ef939eec897bfeefda28ae4489ffb5b54657198bb7eb3ae7fc6d39a499fa38f3952aa439e53b50cc1abf2b3f0a52ecd2ab7859b9da4bf32abdee93e0c5d5d6fe7aad36a4d9e567f9c93cb3ff34d9272ba575f3bf90e64f04913a7ac3ceb610d27c29520b5df7f40b33fd44d0ff69eecaa35a499249127c50c22a15aa14b4b12a4154b8998f1f5d39a63efe112dc83955aa87e51e521bf61e963f28ab4d93eed29752c6f7eb6d285b58add2e75a9b51adda2ad6c6ee67dbcf7c6cbf9f17183a747318cfa4d32c4592b69f79a5e0fdfcd371f8bd0d8b39a4dc9dc33699dab0b449d7db625fc40cf92210d31762ba5b95f24f8ad9938e915c95e23cdb2b3b502ff43079118617619a53a554a9dbc3da05251006e9341d74b1c7912767b6de47b2df678b72bda24f91ab5669174fba30c2c51541df277f92a41047a34e5445eb931f9457865eab94ca9be45e415ea37f1fc962c799d2fb7335a9dbd42bfa70579ca9c62a9d46537f655893b37e68c4e1f948944808acd6877bfc5ff3f9397c9773f2a33ef39f619b1be5ca9bf4fc631667d4615dee27fdacf893d9c27c0c31cdafa581f4b1679bcaf2cfd57a35280907c694849c91a6f740a34ba0012f25220d8312081ae8030b9526bae284eea45c8bb1649753226bb55a2dd31529f0d6943e0500620b014a3f74977c488a791f1a1d796ffb61e5ccfec6caff7d39b3bf590182ff6c91309db37e88bfc4c50116f8e204a48ee57b95624aa3d37a4e3e496f68b3d3a49fd6961ff401bf2d8357bac53e3fe8a785f9bc9ede98cf2a5bad1928de1f1daad862b3bc9fe9fd7ab3b27126bb55ceaa9c5531137112030fb8709de9e08e1ad62cc0015e8884c1a588083598096347982d618e644089d62183f089337afc3e198b52abd4d6ea90a5d5a0cfe826ef0c7695c5191468944011c6a108db0505143b8134e29c8099ee9ec0179f097cf727ff2f4d76fb2abb7df569b56219ff94c01c4648a08b04749a03458ca56771e62c2e7fd9934940118821021b7c09c1ed8b3fd1822726f004d1133d4f2c81c01c10f802023508b4e0841f4e54e1840e4ef07473a0cfcb6dadd41d4b1fe50dcb9c55c54f662cbebadb5759b5add6ed6175c8f1f8753759959eac55c4b9ade387e74bc739c859dc1bf9fdd0ae3ee9d14caf87b96bbb2e9436f79b28d344114d5079400c1e90c5038e68aecbd6dece315575ef550b4bf9fbffa50571f486aaae939fccb6f359e5ff8dd2492660c04418267e6022b5841a4b1060092c4bd82c41821732bc582f24280186125bda05772ee34bb14dc6620ddea37af1e694bbcd6ef3927ebc8ff4ae7afc495a4a7abec2d2e6df876555fe67edcc5ddec21ce7e5f7d5d7e4fdb1867fc36cab51d0453baee6cb3b5ba9ba9463ba9a5fa54ce6f8d25c5f892a4a7873b1a1a1221f6755fe703ece6412629268401206486209e7c207661b973df166ecad076986a14913eec8b3ad3874dd0dfeb66c74e4d92a1ea6a0ec9ff67f69d473554b8390984898e6a7aae899f65fad4ef108389afb3ed1fb190e5a8e2842ba8e5039008eeee6f08f735e87b1b439e00b96379703c24ab3ad0e68a1a7d5eaf16896d9c8b1f4562bc663c41d465461c4008c58d242cecd9745081551c3802e182032c063c0080b086401722c20010b68112108117a10c104112f05e0a1002f385fbb7fd3e124f1549632eea6d5e1a870e68abb4965710975deea3e8b337a73963eabb475d6af555abb0f763837555c554cb344929ebf135bb633a70565fcb61ab5f9dbf20a7fedbed0105b0c6187281ae28304a491002e8c74743a6725400404ac81800e20800b0240048c20041a1c1cebdd5885f8a08b982e13e832bb0875397131019731bafb065ff90a7b8eaf700eb6793267e9fededfce591c12170374aca7d58af124591f1996de5f39c0976e2edb547bc35d57ad1c6048107a04c1c629081104f1a539550a4b99a5d5a0562be649bc5adab13895cf0b4ff917a4559cc5a96e5243ce9a14e90da00203508169b4d9f7d9fb59db0db4591aa00b7081026429401120b000e20604d01d5bbe6c09da92644b91e6bace3fefbab7655aa5af62ce6150f42e3d1aeabcc3d2a7d592e138c329e7aea4b4204e95f2ae95abcc7846801a01a6fcc0c70f4dfc40e507147cf0800f4570dd4cc4b2f9b293379c1b2444537ec695d628ee6e64322c3b57b16622f6b15ecf55deec74d18e479ecc387ba21dabb5d52a655529dad16941ce7d9ff42af7370a38563bc5c7a1cf9ff58d7cb0754f9fefc3916e0ea4f4a3d2031cddd3a64f3d8469cec27a50000f6bf0d0040f98871376f0630709ec4065f46314a3f1f847aa1b55c69ef2f1537d72fc3e296231f5498fdabc82fc3e52b5decf8cc63ade8ca7a4152461204988a45792e906c76d895bd73d3e95ce5b737c2a39e9619daf3adad0aa53a5f0a4b2f18f5a2d3c3e954e75e3a0f5f0cd7e9f8bebf0f8479d0aa7c63f32baa59a53a53c147dfedf90b27805b99092e6cf9076fa93deac1269882882e9eefea844929e6fb1dbd7a49f3583c94759080f82d338e109608a43e8beabeec59b3b1af556d7394bc5fa9b92656b8bae380369fddef676ded6cd40073f747843072e3a3cd10184308b56e5fa34a4dedfd40abb8796656babbb7ded9cc5faebe3f734da3ba6d5d21c0ab160d8cf8a50f3e8ee9f7dbdd9eabad950f4ea531dec036c030c02ec015c757fb556a2544a63555ba5c551bedb37bf2c1f94cf84ef74d482230d1ced70146b15762537eef3721657876e44f0eb90b3b8c7a2579ab128ab58a57fb2e78aafa8f0bc2c872fcd8d5ff672c8218725dd5ca6340f6aa69b8671d1ee6bff51247a43c7994a0fff0ff56e235b1a97cdcc98e4734ab7e59b85c336b9d2936d88b5395633a3adcdabefebf93ef9136bb56232dc7c9ffc69b57a1c4b8ff1f024599fef931e6d4be36fe30ff059e6573b9d76b3365f8d33b7e0fcb982f786b7844734fb63964537d77d8fa50fd839cd8eb8eb2cac5a3a26d951d2f993638d49987e339148b2d14532e9e8e8a230ea5a4602d916193ec95818001fddddc972d277cee2e6df6c9db3ba255de8f36fe7acaeb3ab4a9120e132b61fa6f8fb5c4890784b0a2c0856e4c2c2d59b0cf100b801b480c3193884e9f1b58c400b135ab216d762ba418b1bfe062936f061c3171b0e60431401a4e99ef2afdf78ad52216f0dbd86621c5ead68f7511985eb96642ce630b33774d18edefdb511ed58ad38a7eaba07255e49b14667a0f456d7398b9bd1a4ff68363f12965de7f2fefc6f462bf5c7f4f6b3176b36fc97e6d2eb4d864627010c21809d2c7f64b922cbe4ecfd1d7e8645da5c84050c16222c46aea0e0ca1a5782e066cd9e4c7a236f759db3389a75da57ed91043ff917a7ba4e7656dcb072851527ac542b3134b12262b3392267712d97b35a3f93b1b8c9e252f869b55235539e5dfa389b7d911119a31d4e463746311409d2dd9c8a28158e59c6e1ee76fe9db35a9888bb5fadd8be4f7a9ffc5b94a5d5152db97d2deaf10b001cdddc752c6f0110d3ae0034518702302500dddc83d66355dba41e158d88c4ccf2476927a2e9f6fe0eac6aab130160e88ceeba6b7f3aa0a41f02339485fb9fe31ff53c151eefaf8c4fe5a7f5746410613fc092c054e8ee00f4490804424008d9384c558f44716db52c9585b84b79a732b259961fcbaaf43aa3cec893b8100addcd599ae50dc5efa3345715304e55be2ab32a45556eaa7c70a252867392fecdb9feac1fde388b53a56e9cf5f3d3fdb45e67e7cfdb53f9d2dd6f44254b3717cab739b699818fb16bf658be2643232a4bba7ba84f357871aa21ac61d5dd9c7f9657b44994f633118b9eb3b5457ffdb13812244890704994f637b4492a418004c1d1dda96eb8a0293205ffe84af02fab5aff23290494eb237d4fcca3a1cd8fa52dc432cb97cc726279815aad584873d090ee29657473788a973bc566a7ec84341fe9d394239c637a9252467321cd31295e6a74e6d666c7f424054a77feb17e953e4541a3647e142eba95cc2a5ada6d06c56c58da4e405d00450008041ae1f5c52bbf6c2fd34b831f2a4e3f5bbabb61c538ea195bf0934ea3d43dd3aebb591bbdd9cfc7cf8fbca77985a5cd7f5e3e66f854c047f489e2dae3e46aa26d6c9c66679545958e3ef7896496afaee3c63aab841202281980723b41a19da09c40831834843418d1a0428f193d46f4f0d0f342cf9027563c49ea5557d4d1acd72ab561692b72776f75aa586aa87396af68b62bf2245e14d2d8ed6192ce079168ed887e21cd321617d23cff7ad676eb9cc55529b2c2da6145895971e94e429aa767e9ab6b69ce92d8c6c9edab5f4ba5f080c1a3044f8da7c6c91627274827273f4e56ddf98aeb629d775cee54b17ab33357d17ad852404ba8b56a82c7a9c918a7265fb80edf0f431a6bb562d333b69e735de7e36c56d18662ac7337ca98eb407b4729c4b16c587ed8e7ce1a56ecfcb093c38e94d30c799c66f032c3014e3330e96ea33ec920870c539c64c0d2bdeabad9cb595de7ab0e8734d6796bf67216d7c5ba7f39cbbd53dda4863a6f8d9926398b9b1fd2d82b48528fd2befeaceb3ca4d9e783d4affcbc9f8e69485b2c4ed5ddbeca429ab3ad29b7d5447b6dd93b1b96b64e6624c3f493b420ae56691852fcdeaa7bd0e2bf4959c70a69764fdefc4578564aeb51cd5448b30dcb29d6763b8363c203932c38687905a57cb56292e25c3a8370d1386859dda0853be9344027003a21747b5fad5739a9d7ffd9cc51410e98eecee972529ccdcb12b4b0530e0ac70c87e344cf4fab1503a9fc6e1070bab9a79b26371e2cc963891b4b22b044b6e485d39292922f9400a1c4a64ad16eacd27b4c6fcefd8c7a10f71e371fb4e54a9df63dced4e72349fcdef879312e0c6e0b8e076e8705c889354737d7adee8f27560ca7951dab0eac92564c5626ac381023490192fc9c92bcd06ab5881c676b8be637946d0e3f6322229abdd6ef63791f3fad3ee923a102494562e5848485ee96f7eff7f05019ce6298c5a156cb86e5141b9638e0e424fdac382cc139a9344849714a0901442480d84fea4a6ae76403880d17dded9c88c7990d11366177e3a0c5e6490c302841e3a0e515b472c56081181480839657902b06590ca9c641cb2be815e4f76fd082d32718ece8e6e64bdb0906336010a2bbb90c03144c9d66e52d06c30b2fc0d1cde16b692f1c313fdb5a5d2f4ce15e30b920a6db0506b890a5bbb96bbdb76517dcc25a38d35c0b457473a716620d3bb5d0848534ddcd514cb1cdb310063cb160f36c2b0b2880c08be8e66c8e39946e1a15add00a7974b7af0026539026c9d30ab4eee62c2c1c63b29fb9ca922438a92c053a5200c3752714c240e10128088102100aab13567082054eb09d4ea0e1040d4e26a8618217248ec3755c116761b388f395eaa7ad25005142ec5442eb54c20a26e86e579f8e3871a43bf23ad2247041820f27128048c86084314e2380e95671cfd1d4acd2bdd97cef5a300a37e9ac7235a9ea553230c1f923f9cd52feb6436b0c7d19a20de9c0f280b5011b01ac013022981121338486109282127252254df7eada9cf4d52f1dbfd5fcfbe2fc8bc1f93331bb386c6b7535ceaa54f1808a07a848804a8d4aaa863b6ab8a2861d5035c81a68a84183203182b408da1204a55f2924fe823912c771ce9b55fa9c2200d4149b2944a4a821458c142da4f420e58994521431fd7d948ab390f80b89fbebe5ab4cfb2a639560279314e9e85a8c899cb335e9384b098402f2000a2802205011900a2f375e55bcf00be735a4bbf157f139e313019fae5b66ab6ce67a804b01ae21940b07e532014a1d50cc4021024a95eef655a69576389c533a97ef23d130021a3a40c3123484344ca12184ee6c6dd1ac2f6bb57a7a643cb30219b9a4483e458a7b587882e6c9069ed8271ccf1d3c617890e099f1c07087132c9c2039a9d2fd594b646565c593f8cb93f8274a2ca5cdbb5ceba649204dc468c24493b149acc9911d3f76aad8f1b223809d2333a8314312336441cda0d3f32bb5353cae332cefbc7d9d59da726873f5200edb1a504ce460f204931913954e1d3a54e8f8a093838e4c47859c38503966e42020272867080e193848e0040085e3c28d0a6ec4b831e266879b264b0259c245b7af7ce5d56269f3a2aedac75df77ff39bbdb63c7ef4af48ab55faad5cf2a9a475f8da4a6d0edd4a96b108cafc3e776598abbc71d76689b18d12409478a1a407255a94a4eae0a8e08ae08eb82428161fabcf5aa295afacf8ca57f8ad709d8fb3d4902771152c35f4d70acda7bec2dcaa08d4aa87556bd5411210302009972443494e65901081c42281215941b582ee3ed228151a45a8aaa83c489d91122245257593e2006583878d1636a28d0eca4648f71fc9ecbe7224aebaf155972485ba71067b791287a5863e6b89601ec5599c0a96f2aef31ada2cebbcd2cebf4a25e898dac46812d0a5e3cc563cafbc4912da7cfb4a655e6d68c5937837caef5f99260175df4733a6eed8467a8724ff9375b54a678f94f4af8e66dd96e9adaef0aca2fd2b668cad0de910873d47eae921c2bee2c1d7f618f92a26653d3b224f4f8c8706a651306ce90a43d79c0b869dee7e21cd0b59a05e486aee05282817d2e0fbd9932e8049ca8e72216cfbb9605d2eb8d0021ace96e9ed7e6e214cf7886a610b46b510e3c96258831e9415c58213ddbd6a140b3ab0d004c5420a2c983c087f5119a256d862851d56e85961081d2a88a14217940a3ddc1f6568f3a0ac5fed58a5ab4a9f14c248e102291ca5a0934211143e8042610c0a42f8aadeece3effdab9df909739ca005ea042a4ec827b850271ce9ee248e9ffaca4be2fe35094ad87c7a2fcef4fb2213cecc8932014c77db0c9990253f469960eaee2ec14c37676db77fec4eec2d5602182ca24a28225b18aa84b0db35a72ce104d49134dd7d2403a823481c81d239c6329c55fe90000314097074f79caefc9db5dd48c02812a8908002920591645b9184f266d46ac5e6945db5a8114a801ae101237cad564c844044f802254202bab95c654efaeef695881bffa85669286f4628119654570868bab9575008547477084284f06aee15f40a7ad5e42143cf3655d694d15cacc708559342a141a1566850272d4e48271c9409102d50a6a4d5ea7ea6dd4927756c7b1408788040050a041bf7bd825eafa097cf57907fc0820f3080fae0e8835577124fe2afa0d7f749231d300205ca08028c18c00890110dba7bd2d7fc4927fed1d6225f283acef45a5ca4060fd2b42a85f2408c075b801ae581aabb5d8dea004d37a7eaf0cffa63ca5dfe3753a5501d78998fea60a7db490747cea08878711411a2e63a79514476927ea288985898d25143d0346ac8176e357e573e6ac896eee9a821367477f7f4f404f1f460417120088a0310a0386002c58144719004b5c120a80db6d8c0880daca03648a184aca0bb9f344a081528213ca08410a184384169c002940664501a28a07d6843374fbc68689c7d11d094581050eb6fc63f92e1560bd3ee490f4eb5371fad52c7b4ca3b5371a1e8590cfd5a5587e33c9ef2eebe2d771d37ab9d599b4665c0072a033950199c41651001540636a032d8416580832a95a069432b2418094e9220371f09c7cd2b6b7f7db54295864a3fa8be03d562a05a089f972771af554a44e4493c063730800306148001133088020347334898419a18040fa282207908c2842045083225103e0239412066042206f204103b0039e3abf5dbd7f9d9ff7ede087544b85311b9ab3ed39b1aea7cd511ddbe7a0763cdcfb6609ec489846ab24ad096e9cdab23ce5ffb44da5fe975637571387437b8476bf6abc9da75feb698bbc0517cad54d176cee268f5f7712e63fa3928bb7db5d90032051013fec0e38f0b9cfe90e20f2b7f6890068e34507477a712124a0d3d4dfa4c3472ae72b35156bfd67f94ee7a41035e70c30b88fc00c40f2cfca8c20f04f881c50fef034d1f668ce943ec23853e42e0828fe7c3880bc470c175c1cf1e7aecd1c41e41dd3887a5ea6e88ba54ad7eb573ac12872835d4b9fbd086528e739ce5aa4e75d3f9aa530979abc35dca318eb3bce5f372160e5177435463b1b0908af54f63a51c57daf97438449ec46f883c890b7912f761b9c05d31bc9d4e0f4e8ec8d36ad1acac9bf26f2729d24fe749b89984a3f2e63fcb587a22ae96cee4b5f5b1fdc6e9ab1eefafbcd01eb6ea8186c37a9441b11e5ff448d283a8a91e473eaff6dc9ff2a7dcbee661826e4e24ea01ad50ab15bbd99a070831c0a30278dc80470c788c70071977187107cf1d365c971fcbee7f7f2473abd539cda65c85bbfc4675a8739a4d79d775e3cc65b6a92be9fe7df456e9b5f7025d7bef1f61193bc232b7e04c770bb2e81674dd33d90228d38e3433533bc474cb508a1d5ebaed007f7a2e4f92f5e9a96fbbb1a00e1688690e878e0545b45716d8260ba08c1f0b50a8634c1d10684e95c2a1eb6ee05c62997b7a3ef93366da6acd6befafe04ba766952be856e0cdd9a04183a68ce6aa5843e3058dcdf31ea351c199ee56c117156451c11215d071c6458797a663d271240570b405dd950221ba3b4c4116580a52fd5df96e6d2c05a6ee6e1b96b639d2cc71733c4716ddfd53827380731c696e35ffa319a3e04cf6c459ad776df6240ac0a040886e146469142c41c19104e5301324471131394239a074b71cdd8de98c238f38c4c491d4dcbc96469b32164796ee6e581cde9ff4b0388674371c681a8e32e098408fec67a3047b427b89ea7fb2137ce1f095fffd9c80c8047c34f737bfd96a821f4cd0e48d18bc61c58f7357dcaf5c7983bea1f38677732e94e0a8043d6ed0e146126eb8dac8a30d33da10dbc8d246898d326cecc0c6aa67b54a2bedfc3b67716fcbb98aa19c6f71b59e92948f99da3afbfb366c93b14c9de9c0192e67a29cd1e94ed66af5c4785a2d7fe261d8ad118135805863494b3a63b11ea9924002242822c114355ea086166afca0c654c3940617695c200d2de237934e9d55a52da7bc5385d5357eddca33adc91a682f1ebf11886004618c2069043e2308a1bb3b7cbb2baa2ba92b36ff956efe151114400439225841041da0a1051a0540238999349ce35a9db64c6f6095f866cd7c669c98f1a0cc921b7fe2af8e7b75658e28d39569a10c092110a3b94e75f3d359e742a003823840b00508682038e18c32fc5a1abdf6ca95fd24121575f8fb4167403903658617662c61868f191b9041838c126468f8801d5c27298dd620a732c71f95b41fbfcf20658ddff895e146195cca082ac3c6036a78a0090f4421230f32c0202301640c91010319208c91c5184a8c311bc30531620087185e9cc4d8428c26badba5d7ece749bc28068ad3d2eed71abd9646c14a67a0f5ec2d2341f2489f45aad44709da20d95babc9fb4896f5993aab35aba405d9ae56e9cd7e9fa5b9acf23f8fe324b6f19b3f1153cc722c6dd7fa8ad5a20571a038c558857182308a08034a7393ca15f71ca598c29cbb631e302688310218a3011861c0f8010c1b317c88c9e2f5ea3a9b4ca5c4f206d2dc752e0626c6bfa0d922b7651a7ec1802f7ef8a2c91742bc98c38b27bc48eaee4e15765d2a770147174a7421a50b11b840830b23b898cd616933b2d77a9edb562793e195f7b7261d7f5b78b105982d6e5b28e9c0996c6f98722015506aa89bdfad3a1044775ae4a145192dbc6841d362270b3b9a43c245d9b2b86c6956d4c1667782d4a9523f4a19a6dc678bd481e2b457b208228b016451048b35b068028b0360b164b2fe86d65619d78162ed3ffcf45ee9b15c3afe51e251d62cda7ac53c7e9fcc362c6d362ca7ccfa9fcc34949ed7c3d3a3fa6cafac8a523cde5fe9c1a3ac9fed95518e978649ff5ea55796bf36c599ec8aee3e92bd4e8cae58225aa7d92b86b415626eb35a717b98155b9ab3628a139715ce6d204d3777b3d86603667a034f64eb16d613e4aba49f3588caaaf8a30a32aa10a2bb5b3f736e7e1542347046036468a00a0dd0348042f7dbf2e730dfe5f3ca9b4814e68a300d08438030b13048d2e80769969e5dfe19e000035560c0060c1861e0e602805c40041790c005b070b6fa271da45f37a9ac63b580bace5bb397b35c9d2b3534a9ac56ede79ff4f1bbb30b1c692af2a84f4519950a2a88fa7ee836c7a6b0758a30b6c6a6d82289a660d29c7559c00c0b34d1cd759dc35c53626e0424141473a0a22121870df90ba84a15d78f03f9786c08e631232b426e1434c502ac335208d11c9e55da3e7bb30c4709aec62aa7b45f28facfa44081e902cc97c6b456e9af6e600670affcefe7ffd2643683f6d22a90a602602aa00553b002355188b1e528bc74f70ccb9b2b8a2c9c6a4671a49b53e17f1a05e0e8e628e0a5bbdd664fc99b11056a143882ede7590cad92a824d2c7d8490d99a2190100000001c31000203024180c87c482f17ccace0114800162bc5cb0569f8ab3440922848c3164004000000000c03409013fcc5d92bc983266facab0ada2a183fd9f2ac51574ded2e3c3d9f39760e943e369fd867ef3484737de3d4bb6f5ed7c17749b895dcf7a2505b79c80dfd900fac3a113cc27b813e67d390febb1c7ebe4569a35009ead80c3c09494fc6136570fe93332c0f51601764dd51188f3b84f3055a9ef48990f80008a827d7a0e6ac9253058fa2d63cec0cf5a5f28caa4899f48d3c844e10b666f7da1aa0307904fd64d181ed9c5a504f19b001955dd56e93414d2ff9689c404d76a29577f0449bb102bac0290574d5e493aaf3481a787cab206ed715ee79b6843563ced98732257fe3a4a3867dccbe4d10eee77c27614c43e98faedd80b7af79d8fbc7e5ff0f781cdb06b406b4ee716cc1613cce8dde52d35e3465e1af318a12f27b39b438725bde9483dd5fa1ec20255553c2865b9aade622955f6fa94f2745c17f8c64cbdfb35a031a341edf221d65f377454967c272195952bd11791c1abfb44107dffb7ae9c86609c963616564e11a4f113ac9764f35ae30293daa8a3e682f235a4581602a333aafe27e565a09f7114fe4c97ae616a88776c04062a4069c58ca7e8f9de41df7b4418098743c5876a96eefbca581461a3e47fba1dd33ebb13215fb3c1338f77c4ee7af14b05f810ff3d88bcf6d339b4f03d443a48b2e6764f6215dc180f68c34993862b32049576326d2b497801fae2427de17198cd7d211e04222bd630b5bba0527531f03bbb1ee94e2ead8acc417a01753b791b46ea9524973cf7d6fbc9c5ad2f74715f7867d42c672c60dedffe59a3f8dbbd42f8e277cdccf5b81ca50b43b6a584ee3ca7397c339f6784627de6db47e04b4363c4f779337df8fbb68ff74d099f639b048d9b602fd3f785f644089476cef4b0a485ad378b496b6aaee73eb175248e137f45efdcce031e2aaad920ffd7d93e06bdd7542a8543e66253b0d990d9c56cefd80cd394675b6a6768471a71de35f9bcd53bd630a7ff722b9df8602f64089d8b62ede327c52bf5d344fa8b94863469835fdcaec9bdb0f794f68ac87e687e7b432b45c209fccde55b3af93bd0b9082b81b913e1045c2e6709566d612564e42f33eb1bfdcfab849fa5d08f2d8f3d144c7ebfe6fd4242bc59d1a76b708df10d095083c19eb7e55eecc6ccbea3b9f235ea7f825fb1216a9466a07029d4d171ed5390b317b0b1544cb0c7553dd2051b7c884a9c4d5c2f05b33bc893e832b446f03b35289ce526160773aa41229305262065584bbc34f5dd784ba523d279a9841159af8d24ebef91e4aa2bce4f2bcc9957d45a9ea323cec2dee8ed20ee74d9e7795b0a9d644567b1e4bc365e4356672cb88da7583a071335865f2b5685e68d3a5e077943c091d56d02bff30bcca25c56e80bb2f57af9d8f9e7647b27164f6e058f464e19e0f1d58c99eb344faceef9e9452da185a42babe8bd73843af8572a1d7f05e6ca0f09bb7109539ac1daae76d1962a6080aaf09364897bc3abec5fe7c1f10f2548ce818b336a3fce1ee9887b57f6f3374107bcf510b13ed5dc1deccaaaa603d12170442b8dd6046a4654d6b4b75a05bb123da1905eda3e7d4ba48220d0400bab19d98da73821324a9a9518d4b127f56a9693edbeb5afa4dfa3e20642acbd58e2df54c8281a348e83e6a0df6a031b11fc4187ee6d31dbcb64447ab3d93b543eb68f259556c2753b9e15144fac8c000e0caac391aa2cc30567facb217a149ef588c413bb44862191551b91ed5e1aaa95b5834f946333a557890f16f4fce95e8d8fc0739e672f92996c3d709e222745f4d160814bbb3bb8b967e15910310557ad52605a76d5903111036be429c1b11c84bacf063989d8f96e9bd64d57775a5210067aecac0afd03b39af28a12d180b7efc582ef3b00987657613583eb55cef8623722229e94c41711fd53f0ff336c3436314a0dfcef8324aa495ff132fcce05570ff2ee0474d06b6673d896e15a5e478422e6ed25bbd23864d1db83f806517e8ba215de76c07d318d6752bb5f65f41f0d3eceb9f82628309242a611d7bd2b7b194d4097a81a611f6bb78bd3ceb6a3760d0715b0c2b1336655b3b17a57c1c672458a069bd80325b64e791712799ff92ac68aba40734094df06b665e9c01ee9997c0009b786122c69ea0739b3587b7b3461ba48703e06c3715c3812b01f22b8734252973634e8c8e6eab52a0cd4a7fa29854b57e046c8eb4a4662ff24c33e084d6ea8b95f8bfbe5260542123bd84a82c35b334d9e5f0cc59170021b31b796068421dcc5da147596c81e0b42041d365555de27993e459d0a91ace721fd2c988d978cda5680736b9059792c3ac73a69b9619bcc5c22f37adde0fcd65503060e5985e0237c807dcd723546f3d1db26e945373f0374fb49d7b4dd5ddd242a3a81a1239c2e394d1d50d7bbb08b81bc8d34c4c81c115728525aa20e5337da5116f055813006ff12bc624c3d0482812404f7b5dd883905d2102a8eb2201b8ed7e074063f136ffa96890c9dde446d2d4b4d5b60d8f81e1c324ce7eb485cf7b1bb18d3b0e32078d0c15fca21875fa7fdb8977fce57b04020a8c3144c5babf0b093addda9c19349eed3d2f53fb97da734a3425bf1b25f94cc38308bfda4ef0367c1d02228d6f792ce0051bd8b12930254cd01e96496ff9b1d49e4da414178fd1fdffe4643494ab33423a341c68a138c34689990c210a488421979f0edf39420f44c8d9940069b448aa121188f8d2ee4d444e32d1e1ebfc85b2bdce0c84023ab30b980c132f80fbd3fe4492e6ae7af97b8fb55b9e1ca44792d56c67c97036ec363f6464217ee6908768eeebe50e14b38f42f92fadf712c21f12c9b83b599d1ed137725e403467bd542888f0a6224ba30ede9a7074950b081bedc4142b4e59451b52c014affe05e5b73879343f07eb194bb49f5b8b35f0ab124b361c058f60010bb3596bd26ab492df9ad00e23ed5648616d66224425367661d10a5cb2f4a870e9f255ab7aa27b2b7c98aa96006613917c09610ca49dee52eb38b372af523745dca94efc7ade96f666b362999ef3653aa96db5793659c9727865de6fd48f376ece3e290b2d0eb252e0bd42de82567084414eee80dec5eb888e3fd4759b951c7d5b04d822b6b058f8e313dad5af45f1aadd1b2ceff4f288abeaa1eb59d50614b4ddba2ebb0bb3d8d801b9910f58d5de010e09039883d1ea6912783c6c1337053241742fccb08dddcc0babf68a6fc9f9a22520d3e09f182a5189531df7cf0de19761bc94bf3b2384a96db421b33b156cee030102f2e819f0d12814fe572f234c319a96b8eb0d419b05c580b3969a75a536de0ff3efb7b24428a1999672e9de96bb84bc7293cac7098f0a827064e9c01745edc423731a85fe99304963bf19c3595f3e74e9f519c7f50bad9d168600dcbf029134d74828ccdc9e049f46df8da423c8f8adc258dc5c484da39b162fefa62df8e0a42d44e5c06ff55515a14aeda6f9060162e15c605121a693c266520faa5ca487051c7f696221db40867d4b7bd0792cade2273c0032bea57992d96e91642568c67a010ebeef5c549b6a1d16b7d5b90750a9cfc726baaf2a9ee8c572ccb66799cd7d1ff99d38cd1e8af6baebd81adbfc951c29638e7a7290070538fb1fe88dd2e080d44ca708d2c0498f65e78830de8c681aa78a2a0b3e0c92f0203c9915dd09fa56e5278e1eb19ac309e017dfcaf96c1349f2ca4930191017c347b8a2ac54292fe500badebb218fa187ac6c511e9ce0150dd6278c2b03b21d36d385cd46c03a59e67cf98d0679f35d90264c5759a6261188993b3dc4def03d2fe05db6ebd1ee0429b1bb690ddeb9d0440f186e1c9a9d373aa0541aa6e6eed8eec8459b881bb7cc72e7cf117f65fdda2cdad372e74a90beed109ccf7a5baa5c9bf6566aabafe36a80f68a3f61ff46db970521b5f0c22b5e2dc71d1ecf741d930e37389018d95f9d356526ad4d16781aedc4c0dc05c9a456fa5b19315934544dd2c9b003ad39bb07ffdae5fa9c670ce821ac36480ad69afc86cb8653a676cf9e3fb9ada039a55d63de81ef6f1a814ed95d028d304e83f739eecca5e1e7cfd334bf0ad6b98ebcb7450619a1e341847e5299e348f6238ebf0fee3d5292d79ac728eb553f0ab9db12dab4219e8b5165053ab12eff3a6c06c11ead4ef8ba755eabffc3972e2dad1966bdc6d693a71328aa74e5bbb49204210fcc838f75ab58931d43aef08cfb8d57c398cc6e4df12b7b60e0ad33b4a9b428b69719218ee6fd1967d8c3e019951718292808baaa254a0ef9ef0c8a2e2980ae9985e45462a704355369af8686aaa9f0aa57672ef68d8a3828723ff0ddbb450a95f7ced73b7b79acd22662f09fc7c23ce3a0e9dbf603b316e1c6a171780e01742dd1e266eea81f35cdd9a317415f598678757875ecce1b36ac94aed081f7a4a4fe8c893be320b198a45b55c86da44ae4512f316d128424d07fbc4544a105216772787963ebb4871e5bccf80e807298acd33fba19c3858515a1016ab7d6423d30ee586f4ae7b1ebca0724bec5bb4a53e87f8fb50cfe614afb42967915b4c0607ebac36a217da5c6446b0348b0c17c1e7cf0516ba0b0416b346a8e6f6ca53521d8e2d8cb9730f5b78593f412cef033c0f5efc60c606fd342768b36d6768ea3168eabad6b8d377b6dafb7b0da8f5c4236eaf044f0ae0976e9310941337b5f5aff8923b7f4927ea7000e26ae1e66cf050470481f1159d32bbdb2d5d037e7fecaee1087656297749782ed94ca6d86bcac9a28c7d7c0321e0324fc350f4be4e83cabf4336ee70e927a5e748c83b56664f9cc5c7e7bca2bc803be2f6ff7ca25ff93f7241198057963fba941bc38d695a9e64a28afbe889a1d69e3eff6a658008d5924559805004d67639f0e9078ec74abb3cee56de4f43425c03dbbfbc7464518d83422ae12ae873cfaa270e2ecf2facc05a01182e624a52c7aa52eee94e993738a26748b90c385c022de310ba56e020935ab6ea0f273c4c02a765464d8d9fd703037031cb1ecc3b7d56eb74c0ecd80979279e4ea9767aa61e04028b3413977dd3b070b666eb7d556dad3eabda98eb3c4f70a2d52d0274ce382ea16fcc8c8d48a762456d11d02c09f489d5fca8df312065b315f22fdd91ae5ecbf14c892335e936e255e917863e16f02181c634ba54dc0cb6e89781717d36a1319a179f05305d430987f1ca306f64b62511d3ef8f137252b9acd2375b3aaf8294114ff589a94c09afa84bb5c4808d4e0f1458f047f08b1f2018cf923e8b1b553ad87476da92045cc7020c30f5cbd1b288f127e54166bf174debe4e5dc1c322e687e5c92211152b64b3e54e5855287846e7c71eb778ec0195ed01504cfbd4ea54b3c7c1a6111a42c94e76435df05e1ccb8b7b6cecb744274cf6c142df4c0845ede1c8a40f7b6ecb618ac130dd78d641ca4554a82db2a961646abbc0dd1d36844e33f5e2f00ecf897facff2598e4ff4627f21f04634cdbfe4f230f0a31fdfcb817ad360fbd4e16dfd4eecf21b3374eeae89429e1beb0668889c3b35824c842d0411f85164a22b9f2cdd93039c66f757eef7b63c56c0bdcf6d685830aefdc38d53a33730622c318b9db5bbe0b50da3d22beb0e8ea1da01f9b8e3910ace495ea0f219d24b902364499f1667a8dec3efbd205626a77af6113de05702312a8ab3362cddcafcf7162875f17566bad891a83a96f2bb18d4ca25e3317141c2b078868c86af08ec3df6cfe2c32e81b83dd79e1b4b63648219f8c1e514182826e14c70db92ada5d9133f5e74032f25e62d99f2ba89640da54f5a284774106df0c3a7db48cea4ae76cb8334d2d232febc07cc550c91e2e0ec6d28f27ee60db611b70703babd9e16ad2bdb5069ed49c1908876858ca2bc2ad92bda25a159401d1ac4bd5a063d4eb062c5e0a3889ee2aaf4aa75e42534b22cf594b39159dd6e7af0e7779b29d6ce0a46f92fbfebc35c150d1e990e414af8492e472866d7c81cadba17d90819549e418fb0d41b515c15aedbf10789a25a0d3266ce4e0b2ea953b2b0688f3cbea3e936dc258582726eff33e8fa8ba2983b5231756d3026efef4bd5107594866490d9a620734c639fe42e51683117952b566967acdbb414ff8fbb8b4f061eab0578bca44c3dfc4a8d0b4a601a14d67be9b31fade1020d9420e69e9764c6019aade7b9ac9bde7bc158bbcab07bd55ecfb31becaad71dddd23d10f341b147e3ac99b5c973dda46b123b13dc71e887e3ce1bed27fa6ebfa9c97d3093f0d3cde4ed9b6320b7c466b3f83a08c73f8259580e378c019f7027bc51bc01d99cf0c8938818e6c1e069bb04142d2244a2ca11f058e7d5171c64ff8376d370061be3a9c79d5c753d0843fa0ac8ad5af99785eca45b086f7805c418f4495ff12ce9978990e25d964b5bb801801b3172c2a3a4c84fcbe8a9ec0ec55774f1d2b9cb51e78bdb141d9787a2415b5a7cd3e59bdfdc223ac058ef4e72f71d7a6e4ca9b8943916757d5c17140b1d9233bae2ce8c76bdd78f18e1ffa36fc74d588794fc9b1c1d0c965817d2fbe781bce7a53615efd3f178b39bb1defad9056e3c69b913efeefa001a4e5392db734838f119ca2f61e5e5716a8d573e0e194fe9ba62ce5a496e4827968d8cdd21036eb1ee1297c944be11595b9b194832c482fc0f45b47a4df69826e14b405b739210e1c557d129242b33ea3f564d3ca255007a43fa182b571d0e5bbb5da307dd048e42183d0e894828594023d9820a7d8fb3fc4b19f1cda4a7d2c31b97644a453a315421554d21065475bdf6f585e5c652304e4c686a852432e8a9eb3403d309844bf3f1dbe31fd8b055d94b447d766c8179ed76aa77920bb5c1f5808dcbd6bf30767485c8a7349a22b78d16fe3b28bf0a7afeeea61b21ed65e8ab159745a8b6d3e3aaba24e0495fb985cb4d1112209c289899eefefc0e45e6e932623b137ce5a97b801517237f2aa6c9306e2e8c9cb100ea8d5ca6ec88a9db7f101a96d5dbb21d2b6a28008b32e2e08a098ff785e5cbdf05c03ac07cc9fdcd6eb094574c1ed6dc3f89fc60a07d86f8704de2eefb646002a22842c08ba63dbb8cf77cdda27a9e2ce7daefcf69ee51b7dc73f1234558cc5fb59ec14c191f45bc8d2e55e854e6af29279681474510aa84c0626e76e93ac0e75577d19aafad45799ac6c478ebb18511ac499ac15c7c21231005a963ba33b29c0a1841f3ddff8828021227ac7269cf1269412c36928fdeff75d339ae84818a2d5c726febd8cd1e0b2cbb0496d79b88d3490e13920e0088aaa2b8d361816ec1c69bcf9017b4aed0a1224189f7f0bd0a1910c28813c1c2556b879c7c2a7420e18d9fcb6fbf11355462aef0b7cac7f20e7c0b6787ef9fac6c8bf18b788ed361c3a6761f04d9c0e36df36812e2500da3595eecd8db5fd6bbe1a333a949d23aaa18ddac84eb5bdd69893fb0339d9047fe5c5107ef47b3567e154898cb672194ddf765f2ee8c6e25954862b8257a55a771403d9eb7984d99707cbaaceb0c17e240cc6dfa58a6c292647025adc7f3fa53d0751b327ffcd7a7536dfb96ff3fdefd0f25cea767d2ddd81deff6bf017f23ad979be2f53efab5d0db299455f62d9d777bd92aa49cbab28779bd17cfb7ccc6b5f1c9db41bf04cdfa421c197769502a26fd80001c3cfef91698e132d92b1e8076ba3f456a04892b601baa9b0acf8853c24d28a37795aaec7f82512c58e0c5a8bcd6d52104ac768555475edf2e1b1a4d4b5b347817056b4eb311b6c6a55c50f070a82cc5b76d396d1566d1f20495a47446488b36981fa45b5926f745b71f82451bbb308cde7aac3a53cf5038477eaf4b88a6fef92a30947e3abed9ee2caecb92b58ee695b221b65066f4705b20c993266ca59fe2cf27257efb1b3a3c2c9e5f5b8cb0b9620c9cd0bb0e393bf751e80cba871f194284f07892ac3785a69c31f2bb7acd534b65683d2b347ec728e3570221327dbb620063acc4a0c3a812e97cc89a87a3d8b106c8ba83a1a9e27ed9d1adcec5ebcd7fa940c82f10661f51f381e6c699ff789dd8ce402f545ab9140225e9f1a62e0af1f3003c3af35ca7732983112474d11a2e5a3fa4b62b2c1e1d86fdf66303c76346f9129e36a0eb557b2c8797c70801cb53d6c53fbc44e8e4bb553375005ddfcdcde6a3d47b4fc19f484060aa398318863e905bf7fc91371361e271957ee18f2d5b3ea3d2c1ccdf6eeea827c7722f77d09f82cfb90837c26da6b3e06491df7c2730d3424b82b0b0382cd712631c8517c42ec7019f08ca413480b1f1b648c5332100ab3fa37753b7945f1d7670b6d9654249c11d11ede6ad7952509f84aee8be01a2e076dcb81bf38c93ab0167e6658bfc9d9d315b984c4b16f78e07ccc7e1e9b0f0785d698cb56190d46e7a7abd723eaed30224b829eb08688956c783c58cfbe70e1faacfc68ea103ee1b54a0d9a8bcd1002391d30135acdf4bcb1f279b8674f7126558d32027e6d2651ee142ab8af7346e089738697d3c86cced602e1a6b2c409b0cb48a3fca7a23ab62f8694943b50847d24f85a16119b591499682526252c66d2f9a64b712d9620d6e76387133826e55e87cc3a18139539f1a125320d7c10f4b69c8529b2b8eddc4c2bd2feeb9c19953f588cac7c12f7afa1301b7cfe471f7f6592afc1caeb63dd33535d03771eb8cca671a8debddfb7ae86fb45f4ee246d10ae794cff997b4089de1f575f55cf357eaf5442ab29489e06780a3a900121b89bacbb1663632c738629d69d9c0844515ef82929739fe8d4d97c7f2919b8e70dabcc5b5ca8a4d8061c53652466d1cca9e32dbfadf64d415d130362b57321a10e8a4d05d664a1bbb2134016c2bc1dc3da0255e5e9793c39ddd418f46de5afa39b4188100ec8732236ed4256038bd805fe56f6fd2db6f6a598f2903742ae1a1cb93a76ef4c8172bce23215f906a3b118827dfd57304c0b30cfb95b64a8b82376f620492543d47c4f244f3d06b0c78e403dc3987bd193460cfd579f44f786e133725ce1b856b56d76ddd7a92b97a879bad2ea8b771c2f7612c70cc4eee26888e08fa9a0a438b5caa9b07b868a902a23553439c49da1158e708b3c9520795fa1b5f6f221ec737a34df8638685387239c20d36f47f83c3ec1465615200a17311fc44f966332b252d13a7929ff39b64892e69741c068a4b3d0186bfed8aa33fa035545804318068731b6e77869ce66b5791486b46d25c12299da1c6008904c4ca12e34b4f81fa3eec2e2c94f70b6d4e71ce43391a0645b47384c8a010e7b875409e6dd7d623bf17f1ec8265d44c5865b14eb4888fcd45726711b0b46cbf7185f0ab7ef6baf2fe79836804186ee56414a623980f99faf74531418045e291228cdc11fa991dc8e634c58a88321e9fa9d17593fb9829320b277d4760189b35f5abafd55ce689859df183b5023b11a7e2eeae1a063b5174aa951dd513eecb24b805d942c1d2ce0cd30f96cfa6b7a7dd55c313cba7f7c0ccf84d0ff59e4da78f7e1c13373258e3ec465893e236aa99c977dcc94f8c1525303babd1529982b2a5db9c811c50c5ec0a6600c2172f70e877444863768e11eb8b5dc6aee092d20660461edf817cf0a34766086809be1b4e7851a60ec5cc4a147a4bf43c287f530d6f6bf7d65cc2709acb7ac85e397221b305296c1a338ad7b5ee34451f128f82fed044f32789d5fb8410f87aaccbad0595b50e8beb55ee5a58c657d280316db1ff8e32f529139bdd5ecde81a6904ef0efdf6ae6e9786ba0b23cca2916b2c3d82c7f90c8d0796358001989cd7726a91bc62f282532063ac2cc4491ebceb599dc1e681412ac9c0a472b98271cbbbb4aef4303d09ba86ef8113fb7d78bafe781a37dadf3750fc805f881a636b27faecdbfd01d304fbf8825c7076d22cf57063f921011d4f62f24246939d99b9b66632539511039844578cc441758a82d707a00d1a4dceb2bb68d43479024e064d8ad5169bf081d299a7eb64353800ab1f62569702dc61e80c4f4b6b78a7ec08b582bfaa3139aa35836752c9d3b738a98910c47e28f98eda6b1a0300b885ce42e1d524f2a8b6225bde56e48b9f2f9ef67b0bbfda93b06b755a01213014816a93d967ee864a8f902e724ad3e2de357ea288fa82b699dbccce2c00cc6d728d38a3c2cea899d179689ce72e71330afd32695a54519de897876f002a5ec811214f8c01adab6535ef607e10a63d00d865273a09fcc3696449ba27cb4570d1c798ed40bb9f27e917ee72625139ca22d1d66852b60a66fbbc4da83c1b880fdfd40add32612104e9b1c37249f801612b96455399165140d1c57701a11a3b77093028aaa0cef4acce0c45b125b6d8c6f509f5e972638af4761e6af18cb451990d07016cf61cb0da56f1f7c826519ab356ffac614d9fad924664a26008e36cf3c1cae452401115bd05b98db20368a61e78611e895f71f9344eb0707f1a800495d6cd489452cec2899162fe9436eeb7b083dd89bbb0f948e7f3228f954b90923cb2c9923062ce96cd24cdeea71f5336701580abbcc78b3401e442812d5f08dbecf143106ee9c3e66710e32705b47bf80c2803e23844a666c4d600db780a197c349702e5c523d4dbb8a868e714168580b6ed81a98919230a60bb67c93b5d44145c3387ba8c9f5920e083ef517570c036a7326ce9eb763970bd2046af9b254c07722204808ba799131316422ffb5d5117f984a62380394cc0a47710aa0740cd8f22f4b974b11f1e364d9b4773e9c81df6cd30cf97bea35bf9c3d177b273c8bc1e8c6a7c922bb3571b76563fb61790e62b67219848eb5b7ff260c080631d1be473fd1cba3ce1f0986c52e0d8e1a133529f184184c5b899f611135b562266bf3b1209a80f20e2c7da4cfc75cb1565e00016f758801ba93cbcb32155c41f5e29a4fcbcc949d5184b5c02b49a47171b9912039c73340bacd387d6f9cadda18284d85c51de35955a2cc0aa88aaeb97a6e674b2269b4444c139e8a0ada0b57243ac2acae46918dec4a49c7f75f3361d1c8b213190df5dde1b64ce441a5801e7b5470c45ecd366d289969b8fb8d3a2f9e0dbd390245da754b25b36a02b33fa588417fed3953a345f09776bf745c40c3b41a7a050df20a0d59bbf95e9e08f10bd0704db587b4dd3ac3a2cc2a0a20da455b8234fff8095382324fad3db1d9345bc4fda64cef7ad071470d91aa80162095f4ca20558815bd1413005c90a785603fb03cd677ad72c4fe2344f8db1f5537fa06b7d27c00b03b1f0ccc2379108cf00600a819cee10f9f9876ffceb5bd0c348dc15e321fc2da8e2f9e666e59842465880789c30a76eadbadd34245e93396548b81a1749b0bfdf139c0c50d4e1a22e7d8d22b38dd4e22afc359f8fecd30590ef99981f71864d1e532edd5e20be3ef5bf951d15d6bb60f6dccfb3574cf54056ccec7629a8718726a867dd7bcea46d345d728cd99332a29b8c96d624d02e87e2832aefb4b8024d72ec00fee10ff594031214074bc8fe1f717f29e1c5471b8cbfea92a81dbf596ee844a5d2c8e0c25c435e588f482793e093de80fa02774516c494e6bdd8303b4fb82ad54c62e8524f88ff542bd6ee538fd6c7a0682c5f8e884ddb809892197f8f5ddcc5bf0f10cf35031d477ebecc756b79f701c2e72ee49f9cd252e632b9d97ea3dd26ad45a09aa4f28e116b54602909afa511ee4197b558d34d8e70a886ec433a4b9228b75dbd1bbb93d0ca9d0f7031f075c7c0b8b75556584aeeb1ef44583ec0209a8c79c81eca5b3396ec8e4f0102e2cdb79e03be1c72a889330969438ec3d813719d68482efc4c0136daed7a3b22060d8c5d4c0b46b22d4784b90e902039391b601671f9b7a094e57b49cdc94f6c9c09bead5d6a52cc2fc577b6134a7d6cd775b8d4096bf82dffd0c9bf1133f24ad360766325dfa8856f82ae1bf361265f75c55d91c8c8bc9e213ffb017bc0386eed3b1c9bb575dfcdc2808f1c09d97ad872d4795334a7d3cf2da17e3d55b2d4b8b01ce127854c2e94f7785400374a30801fba07207760b17dc8387943efe59c889f1256c9b5e6c9d14921f48e1f7d4a4cfac3133fb26d477a6d66716471a43d2dd738679cfaf673cc126ff7ba4d7bfa44ccd18ca4318e512df9c6d1cddca62fb48b1ec1a68f339e1dbd473d5473debb1cf2432154179a67a13ee5f46cdd17c819fdfca983bb99283e9103df2ac897192d357578104dc9c5162d67a0460615e1961a6f002793ba13d00356b08c0eb614c9efed356b131eb632c26b01c5d22872cdbbaf96adde042c771b6b34dbf07addae92011284c087e2a0af21048b85b551d323e2637a5b9d61b06750c8c44f905b080b1f11388997149c2f9252c19cfe61c90c153171b1e7a1ba3b48fa47187d3595b329e9d72df5bc9ab6c18eb4e18d828e0d45397cc10aacf7350de260c24b2357a917d7f73249838d9c18f62130a94d4904751cefffc01819bedf81077fdc5fadc1f389ce7cd4b76ec4ef68fc7fb5b48f27df3e5afc554bc83e6977907e7a3524dadb8f3aa80f69102d88fa9600a538df6e33bd1c0239775ea56735fbd74fbae0f5c5f49eb8f176ce1e1b38a521bfc04432c0c3da14e6cd34b945f759caa64cab02f7cbbb511f011425f444caffb7eae9aa2278bc48af70435a6f8424ac17de22af6e9f3e6cf4a458bdd1e87cff25135531bde4a0b24da1c8ee8571eb6635e04b829d61a083d0fd78b058af5e4a31e25aa8df30c54f8258cf66153bfe2eceeb53e2e4080f020d1cf04261cb0ee3c3fdd7cd9b0f901bcfe761c412b437dd0be78eb164365532a927c10e6871644acdb32e8d21c584a4f835dec56d00dbb658457fc2d04f3718bf7c5414eb90260252f0d4170fc89aee0029b61385508744202b0d761a9471d04e39963dfd1ecc27b4bc9621d8b4a070ff4a6d66e8083c1e0861f34564306fbeea48ab9b2c1fab367221853bdcc582205c81aca5207804a2a210089c847df2afac0b06e4c4315c4b2fc826596d2713d4ec170bdf193ab041fd58cd036e43d5492f13291148c0b0904e5ef1ea4a5d33edb24c80c6714c33b7250032d4ef9d44315130be358eeb043a7f7bcce7776342917874efaefb54d4bf4ead1a930f36b72a945d77df62caa6557a50724ef0a2b0e506c814c01aa0cb6672c02a8d5f5b8e7713371bcea34a20a813b9feb523cc675a9934b03ad6bba391f1b30f337f142d43685eca8d374ed261b9233ebe92f7b132a60c2f37bb939141b57e5c6ece4c7ff03fd3fa0345785a1638a8c2f9198abcdff6c5165f48501361f998c2f993e6e1ddbf4e476257604caf44f4144c4e8cb91ae1170570b1ca0c1705d3ea6e0f868294d48df6b37dc7e6ed073414d59e014aa5b5b97e87f8bed6a4c12aa5150a2dc75770d76addc6ae4925608b36c78dfbe90e537c654178ea82318602e7001272719d7427418ebc9fd72672fd8e9654bb71cb0ee6f5e6ce199287097839d3fa07635ac2b74f1e5f99f426e3372a2020a2d7320c275e9565c0d6fde94697c6d105ae0a76cbf3df9727c3502873b562940c1f64dc84e9da12ee7ebcb8ee2ab7d6156139e5942fad59d6ccf0b2b8d7589be282dd5462f407e46c6cb22ac587c8e917347146ef42b017fde2bc18f8e353018e254618cfafd767ca2c6dee00ad999923d1066ea447d228973983de1e0064c4fd46bc17307f65b56d9cb7e5ae026ff61592d9b600d0e4b48fd31ee201d12b6f5bb7437df0e77dd27e15cf2d55932580e7a04e73fa742f1e5421f94cbf75e228acf92adda982f17356f12de41726e55df07cddf61010c65361b72d5f2732d3f71689ce70488ccb2606d0a2e49b5fceb754a5d94b117458895454dfa6b505949a568532fa0d43832388a7625eab7197fa88e45310314c62a0a0edd22f4c2a443ab6b694f5669ec194b9a87393e1d9264ae5b373956824840d4429aff68ff3f17136786157ee64f173bac99f7d16fc98fb3bc773bac716dc1327e39bfecfbfcb39880cffb48ca810f3868c5b1c5181d69287526ed9ad6d49aab8d0dbf22829cfc1e74758be4df499b0e410927e822fa8d950a91534b5f3a830f9e3bdf93493b84149f07e571ba1efe816c8c7953eda48696167466fbd04c7f9b6c55ddcf1553312c02e33b51e916b67c93b5a119b9059a7c83097f0e2fbbedfc0efb0ac3dfc4a20d6a303d880e17be09f6fb832d9efdd2522a1dc42bcab99115193b6fecf6548daad265b16d88998efb535c036db9a548f84d5c0170584d9072386687156ab879b510f756cbe45c30b25b4e0be1f95badc7c8f9d5f4fec5fd91ec3bade0936e9fb6f10fc2f9226408a0c44307dccfd7f7fd0186998d144082574ee6de4bb04c24fa9cf0e691e60aba675197a35016bfdec62f01289596aa97400e509b1fe827e20eda2bcdd22ebf94ee49610397152abb74bb8372f931c277270695c7533737e08f2ea019235c69099945b7d937f20126ec60c466da7ad458a81af801b875549dad5caeaff4e7c8bc63e96e1590b4750daabae5b0b20cff014937cd490866fc5ca4147527ea1fe599c066f1a147fe6945aa973b5a7e545d7f89ed5a825ead997593f535457446db58a6a0212e3db8546a8bcdd3d617ae349a2558daa1cdfc2328ca0dce1ad3dab38a9f0c49f7df1a866800238abbdc01969a33447853cef6afff07794df0f8f5c8c50379f60d4dd03f337beeff2b88dce4c3c69589cd8f3eeeedc80e8e3c01d69b9f83eef80377160c402b7dba44afab5bced130bd4ecaf6ac62839c7cc49df0055624228d096f46f823c9f38881f0029be6aa2b6cc88594604713657344d7a120e16484cf406367a61176b4ba2f9f0cd3842cb6598bfa9b6017ab0e31e5c0fe0cb6426028a607d9ef7de262a531f1cc1a0cdd2ace3daad98d18b7fa8e31037704ee96d4f977e49d103e2d8428578315cb2728b5a58749e021ca3447fc8de57d134aba55aa5dbfe7516e4c387c34831ae22aa7784fe9b9df53c948737f737c534ad2151ec8212f38259062f2276e4c7ee267902c2901ae1b5e4b7393c2402e3f46f041d8ffe39886a62af73b14b5a12e6844763d357c30b4e9e4cdd1009cded8bcc1cad92a23c239c0b24cd1cc978f0de120ddc725ec1d0c5a086a62e330ffd9bf5d0c0fd16809836b3e68a1558fd6973d2674529e947bdac6fd962644a2b570b257a6c846d97739826410150cb41255665315440539d2643459aaa05a7048ccc31cf26ad83c4172ed32c6cba909ede7fba05bf5c9d510905eee8c1b9519ef70b8530ebd438a3187dc859fe0a6dd4255069e5d01976a3486f03cee08f8ff04d35c5757c4f388a775c3766859d89f2b8539edceefaa169a291594a13f444413b655fb958fbec5c054a7c26edc55eebed2f21ddbdf318d32cde364d20bb6a6fe95a09c3abb1ec13d951d4ab9df0a48da1cf96013a3aa3a9d4f4050746933ec7a3d55b44528c0c817ff916e109c3954a98b78e2680de97d0e4b9d52f8377f382592b09d0473ce0ed59477bd92f6bf2e6eae6c8ce6c4b37e06202e0d696bf14ea4abf69833f2948e47500223352515bd42f988894d760b33ec99c7777c1a1006446885957cd12a65acaf11cb67d4d80ae28dce65a08016c8c37a1930f68f4ff5ab0cc89fb6b69b79d35fcc8332d6950a5dfef1032e96f7d17370bf1615139a9073b2e2cfb44beafcac19c9fe1e30ab96f1e6c7bdb05d98b3cada60e5a00b730a527487b99a1f4818a18fdc6a9758a91532173c3a0eb6a5b249ba57a0dea0984f48865066bb6e1e25ea2c3630c052f7f783ce5a80db81ae6cf646629968b797f09b8000294338848d70496aefc9e956ae73b65e5b4cbcb5da9d3d9c835670bbd62167103c54b48dd24fe390ff52868e6983013716dcd4d3b196e5fa1cf25ab858fc862737babd4b96376a3109305a509b7170121a1c26d045a4b166a9d87ce73d70faf601cc350788edfd854aef5abb31c1c072ec551aebae4c92d45fd281765a8d07ac97b2a729ff048897ac97753dbab37208573e8ecb5f2544c50fa04761a92498935e54c885ecb31f4a4ddb5d5705b3397e624fc372186515f6ddbbae37fef6398e4817eda0c27fac7fe378bcfa5c51feddccdbe4b60fbbbb1c2cf87b8591b2cc06a4295a34e2d717069e256d0750dc051e91e570bf3e337a8afc9613d2528c043a9e6fa0fd63d8b843ac0ebd1c2136506b267cb96390fdde4dbbc834431bca7f224b93d382eae896e943daeabdb436d3632817ef5838441443a45831727761339bf95f5170398b9fa03ae056e37e8ede77f471cbbeffc6b0bc8a394be04faa121eacb4e341d87b0d4b013c2b8c1094f520c3ceae2e663be9b9fe185b135e80e6f6e487bf4d562eb049b016dbd2de0ca7fc55dc1e325aae3c20c943396b28119e937adb7b8cdff5bac5b12605299a9460c17ed01fde94bdb4a02102fd106e27353214396b9bd2c4bb2b1cc4198d329a970b93dc139de7ac21701d2302f99c5adb6d13c38005ff0c1ed4c3d44dc35c4b2e14d9cb40c73d8d32e6fc0ff915aa537df60758782bfd522ebd88a0e341b18aad4b796887b516b0ec86baf73008517262d16e2f0d993966c12e5faac400246f9b8cee42f94a9d954581cbdfa110c080562550c9a2435044b02b487fe1ab03e973ad546223d65d307da59c0c755eca8cbbeb7a261b26c56e589f1364c34f5854d8b6ff029891f137c5763b13446f9c68503b5760808e43aa1e4b54ced0df01124b3d554da2cba465362ae38c82574ee934f113763e67e3c02bf2b314cb7db50a76a424e53724c663c74c8d5fc28d5745fb8430e750e312340151b091e71ee845c317a1a78fae7f3f98d2b7c4ddcc1a33f7f7ccf7e234714db1ec9801dc8477e0719a9166f70c75d7de6535116cec65505c76193b13583e180a06e269684e997d2bf45175f797d79a161a3e3b647b1ab2a0def4b30c1017f7e396907da7e3cf83ce097006e2cad72a9f924b52e5759a15e1bf6538c6bd9d2817af83ec6822c95eb6db6ba6b15f4f4551d09edf68ab6a71844b902c443918b0f4f7f3512c1eb92b6972320d4732fcb34de6262549cc4b88e08ef9a34f590a452d23a1c00a7a2623e6be835a631fa7ab9fadd04801c2de6a031175bf4054b0440f0dbe3d73031d70681c61dc91a03f3c1c2a81c75a5fd1b96a7f5efe744182f0872fb9faef1f08dd44707098db2c17acec2814bb3620464a34f30e53cf0e0f4682e216d9f98f601ec2860bcaa260c53cac2691a436a4c04ea4c7ef7e039ba9e5e581a05d80694dbeb1161f8cf554f2c1efe6f0884d310b3ae3b3c869056f089097eace9d0b9fb5f419028a27fa518373c281d0cb9e05a795dfa367be0517ae01c609cd2ac2ccbc1d0f9459d5ec3f3def54ccb19f30dc80a1d7021fa2ed2816b66d3290a1477b320934480b045391c363914869afaba3aefeb1211d135219dd9fef378b54ed9738f765c08778365b8eb15a27dfa5db4d16c6b9c3ac23c09ea3692c0a1fe0cbdf4b005a7770434dbdd297d4665e1d78a079958039c82702e737dacea566158113938dbcd76216e0a61e0e54b7be0e907c0e857b24314a4c6d45fc2cda9ff5702d2914bf32e2738612d3824dc4e4c33b4be82605c55078037bbe3f43ebc47adf85c677b9cca829922b4ab6633188b3a0f1199838d43669d74555bf6ebaa9c9976734988c88d253112da0e67a8c4e652773461704e920ee9e4fc8df4a43dc53e6ac9ea9d6f6e0838a97f0caee3958530db8364335f70fb042b2c6854106e28636569409ebe3a29f534cd5666568121bca693693e53dd3ad4bedeaaab5b250cb4e826922840ad4985207ea5cd8df2c3e79fcda57d6b86c865a7abb11a42fe5203acae078c2ec9f85d9d47b303c71b22c26d2e3e2d79d8d53f8a806d1d8a7bf46a5f6a70e5957f931cf4ded7c5974f42d608825f018377d9b540c00989b90ddb2d7cb6aec8b538d506ebba2c2b961297e5f9dd0598aed160160f0be38dba10413ad261470123a338d8d973990726825d30961b831b0b0549a26ee18246ac04766515ae0a1eed4d72dee033e76923a9911c73e80e7574be93492de279a87f15c06f51d10a6a15d95782bd8f5d378bc1e5734768bf29d673aabedcd4a346f7bd6c372c9b44deb731bf01defe413dc7600de21f36c20168a7bc98eca74bde405fe23c4ac7ba22314f800218afbd8bc1313d44fcc4b846f127282fa8a92e25f3d6867fc439b43a81721c5fdf39d3cbef25332d754566b1f77599da12bca0b28799fbf409d9d4f5988c336c2f5667fd1d8dc3a42d2c33414669993a9bfebc873d853c7e6c82abb3699b7f461d99460fab7090a4dd67ca8d308b692ea5af4606a382cdb3bf2c981e7cd837da12e22d28c6c90f5e09cd24840a5ad9b8befc31be089c4dcaddb8a46254026f941495ae917ca0003ead1fd70466a21d47bef51a6b27b185770939c14c622b0a7ad8ed8d695e4540c5a08ebadd3da3679ed34624b2d3fb4b95eae18da759e66a69b96ad5d5e0b44e9a762bd6b474fa3109e02fd520a7b2748b5c1f285bf74ec7915ce0dd469845a0e83c995dcc58ea493dc324ce0e7ec0f65a82e9d379089d96d13faef40342026a5a1b13e952d4b99e21d6b2bea3a09bb1131392520de6a3d4f61ffa5ec5b0508c635172f25ad3e1b51fa3d8b9b4f16575f77d71a96732fffd301279d57a7c76aeebe07c10139f32847122a97f96bf2a516a0e00696c608a4dd719d12f4a605a6dfd4a554cc31ea76616e05dd1250875476c2ac323f40fd157f0857a4bdb7eb1b408cb2145e94a340e348895f17062480537a96f0c677d6e24425ac013f7443bece99c166a98b066cd86c29ff629c70aa7dcd20b175bb4025ed363d2c7e9fc5fad80a3c9b4047eaad93e343c22d18d023f9b3d2cf7d35f25cc8de602269402f241f9740e49b9191f0d2908c2c5b2990703f7b6b91e760382dca8b1e2bb4d868b5c7699077298bd1618f4d5be9bc080834e966defc666e5fcd3d76bb315b26b39faa121a8ff08fe82237e75ce748cb02d115f4877b3c53dc1a465a736b1f6cea578c5f289c66439e3e27eae0606d1ffcdf855e0052e9cc7eb1812100e562f99823b15336cc1200bc6c50790375229f3545c020b242942b78de2449509277662020e1ca850ac1d5f96f04c1c50f302f09790a93df5c4e51262db44b5d30b52cf35ed95070d8759ff9c7de1a5485d5573a71bfa6ac0ba4c3cade30daa3ce57d46689c197e53a970936bdcd23abd14aa33f43ef088a7e8d429a90df12398f7739c540929146500167ef9f76569ff77222fb3abef000c224ea4a554ff27f6c3a846c23931fe4f9ad5852ef7ec13e026bac63e4aa8e95182569a7685c3c33c303de703b29a3b2e9c40cdc542ea06b0057dddf22cf3725e9f0297f2ce86689e43ed03dcd5aa903c497764ce417dfafff6e805f72253a0f221601ec4a5bae583d7d9813ec9b2bd009f17fa88d242533a31ea8c32209e223684cdda308160700a798136adb7781e8f566538a7a237e6c209633280669b1159005470bf95dfbf1d6caa2b8b9854df916541e9aff1d5cef099e8722aa862ff57699dbf70f4001e5bba4a82a1239ce2ef08e7b03f03d793e0cd9fe61e2b98e2fe43fa73b0bec3bbb3968099c7d2561931a6fc8ea2774116290e1901743d566636b9c202f20e2a6f4c35cc8d52c3c4b7f91c9f86d461fc64cc4659df8b54c9490e5d16b85422e62680b129b4fb75630843ec576bfcebe9eb4817ea9921481086f69728ae38fb3c19b737dbca79f7f18c215a4b007846e6931c7158b0aea1b61e5d207bcf7379bba77b63e7b3474ec7d06335ea1fc1409c739601c67b2893937be30c34732f90a3708760469bdd917fe3407207620bcf0512bbf9b5dabb5b43d229cb410b1d4243adfca070aef9923e564bf9b25dd40992440bad67f2693962c7bf47bf057c6b80e0d3f792316e72306d38f620df127056adee63c6f6ad2e636092ef46dd4f06c7531ffeaaf5f8179c7fbecaa822a7978607f62278699ec52e7836d7f5ae8d056cc459313b3fd18f1adffaea18001e4d4e56e14c1dc43912675862227199b4f0f20b40542255c8b3dd195740651fefef949b6e258f19b99e8bf4fb0ffdd8bfe944494a50c84b790208fd4ac3b1c8631b64658056b5d911ac445923585a9437a70f67ac4a0086ceb24c2420b4b01326fa01d9c1b7062fb6016839883b1c2125bbb0cc00de42010187cfddef3978d0c067dcf618e1e59a0fd5bc40de91c2fee8b17f1ee472fe8497f71ab432b353d6d36610e2052705fe8ddb197cca615f5e146b00e27f0a51ae73ee3f6808aa2465f3eeeedce864cde661b553277d84881019f5684661b33f80c1e4a5c29a6d1db5ebc5d43e005a9278b8230d216dd35745542562805715d9723b11bde4ac449704e57747db540b1f85b8860b7ef921c5b93a24e1b9150819e6c5c20f526c7a3087807d4b3a1184d9eca3f7fdf4953c97d515b34d1c4abd435d8206e42e6cfe8adc65d6d196515d30602f2537f80cac155e33a910fa920838f06e9d92c62cd806fab8d543bdeb236321b08feaf1fcfcf084b82b1b3ef27baeaac8248d1b0946283393e2d07fd983ace4933d166613150b6c696507140ba6a9b00d9b8f346812f09236003acfd68123b0bd1e8e691ff9d0833be0739cea053f75a5eaa2c3f2f0e138ded6c335a1b0bf0cf4b0f71175fc287aeda6e987bb4e825ea45e684e3998990f231b358b263ef777fdb388596fa6a37382bfa02b9bb0755d6b34bbdd0b9db725b5bf23803e810c03ae27a5e7c1fe4e5a1fe37e282b0b06505dd2b460ec5bf67a56fc9ff52c87d0dc08f428f9399dd836f0acdde6dad0fa441608706c44456df7425e1a6ce866b33f2720dc8649c0bbb9f2375ab033cddde5e1bd04aef17bbf16fe124dd13375e7b0aeb7f23f70c9746ccf72aef1eaad8397eca0fda9936a28a3b088585ad3f1c9b7ff6b85c86fcd8f6500f92df572073c5720e1b3a2959cfa3f24642f785cf375fd46cc6ea214dccdf4e4cbc2c0766c7813bb977e1d4daa0e0691aeb903da51a064d4fe4a16dfe12ae52f6742ca6e23557f6c437e2156909b911ed52c669e2f97da3e2a575ca0a8dedfec2403b994759b3eda88a63f382598091835b06c08fb3026d7ef7e1a70c834fb403c992d5dc7a7937f2cd542f370a528bfd3fa83b8bbccb3a46618ff1d0303d0cc61e4a5cf61f5c7078b244302fa0b930901968c5a038790168285d41a8d2a2f7279391bc6c9d5b5b5b0761b097f3d735dc3528da0ece1bbe7603957f780f86794080c1eb4840cb37ea39c3b0b29caee6c82b599c0e39fbedc6d2bcd6a2debe71ce23c18d22ac463e701f4a02eb9761195668298e66922b0156dd60c7def694513971cc8ca9f9c54d84b2e041bb58411b2f56a1f7a1d6ed030fc713fa8ecd144f275ef2415307bcb9874e8e4f6150468e474859cff84c7049d115fbfbf1e057ee81c4afc10f1345c36959339e47f558d9f3b8a734d6934156e0c2394a8088081be0738811428fe200046339ab882cb75ffe41b9b929c2055bfc08067bbe887569439efe08c4f3eba58ff096cdb567fdb7966e31dab3174d6d9570133633606d4b7c3d75c875944929a81ac7351945b2d978826136a7019cdea061da5a8e9356a40ac198aedfe805fcac5a4564d05b7c0882aaf140720da05de0a4d35d8cf41baa9d4bbf050c84611d5e1e5109478270748cb826c671c20bad8991d21c8e813e020b8bcde88b1c59360d9eaf3524683b1d4ce6af0ca2c0542996333debe03eeaff0185ef7271e4fc10934ff37ee9e42d68883da5859d35a64101c7f4d1996364777c718c1dd0bf4b463c973b26dd58c1cc0eee148c37752e79a5cc606ffd4b20f092a59af250a504175276990f47a07e9ecb550c8919db7473e3f3e265e751976bd002f73388d02321b6df1befdad242f789cee329463b14e99f3e06e4829e8b6f5b3070f47aa1a9e36100a4c19976945c068a223989047ba330eae63c9616c3ebdac89b54862563ad136b787c037d9a53dadab7f7c34536dcd0904276931fb7a56dc869ceb988c990e3a3e00471671ed24f458790a0405dd5902c763df51453c31f9c120153ee1b133f0150ee7574898c7d2a8732e679c6460010284f743c109375248baf0a5df3e8c6adc74fae8912d459506af66b333ad33c6cc524023a9a7187e04781ce1b7d9a0ed5ff78d4b4677f5cf686c2d1c36816efca3eb15cfffd81b38e9017483d2670a2d19ac9a85e91db03630c229fc2ecd36fcdbbb17221ed8116e9a55d30300e61ed5fc871e34e450ed4101a715a2465c0f571fee687550c1281edd7f9ec1c0610f91337fa4feda4b9e9a99573de43e4a8475794a4e74d61207f97f1571e89742c8d77e8bdcada65f4ce1da470649f1bed56b25f54ec27b6d26c7eaab56d70960839d88db7b95aa1187a04e6bcf28502c60bda601b3ca53d17d8034cfa8ff98250218a3dc5c00945cc228f826649d62ce9753461c9a0a315b7a14d92dbae56e3288919b037481760dcc5f5a5aaf104e2eea79931096019252f61e6f264a4257faca03f428260f5817db8db02789da46464909d8761c688c0893d2713aa4995fb12e5b4b9e99d56eaa1f35e29ec1d76f685c6cbc465185b397d81c633a6e2a791d3fb4ecbd12116cfbd769c0feb4fb7370763ae3b4d1dd774957ccc98d811c7fae1c256ca7db6640cd39e74e04a8760b90752ef6a2d48dd7bf00758864a4cf4d720d2eda64d1df691a38be10579f56a54c8629fc21686ac809c0dc4b1d4c0dda2e1b33bc79e69b8b6a53b55c3faa1c05d81866d51c097d441ac90ab1c8d9eac35d2ec2fe654b70bf8a60d2da2763fe68c48c6fb7f6f6d3c0bcb4e373a486d9b86a66b51efca9176499930771974f6c23e092f8d0353b5eb6dc16be1ff9c59b700421ab7ee99971b08f99f039eac8ba5ff30c908fdf6f4fcf3d4bd590487f1e371426da316400f96903e8042b5cca38a8d155f0a6050aa54c7880083d9532445799b0fed19869f989516219a988264444cf0f3cabf7995d418f6edacf534dfdf6d4404d23f303c97b1e94e4225fb8f4d9372ace31b784cb6e627d1ca3537dc7b98f271cc5b5afed67299ccd8950ed5ab2f6c66e77f0be735c5d0b545bba1efc1cbb8611ab1de5b7e0b676c176d8f543304fafd780da93dc38061939bbf0123a1e8f0fa2cb7168500fe2ea8c7204748e80bff085452f482602b15ca7b32dee8d6909d15a1d78a8d8a194d1c565fcd30665af4533c0ea54c0151d88f5d0c339ce5cc64b7006da8a073a310c8e764d911475a25f34fcf272f7d69ae369d30c6c0bc9361568579340e3cb4ce8d0d3b75aff28498f34be34e2c0a3c9e0c6270cf0b20921db86add545ebf07103a8a1b4999f892e568aedd3372961149858dfc44daddbcaff4064dd0b34f237046caf9c17c49d1eeffd147efccffe8240a1231d77ef69a21341f9821fa8c160b36d6ca794e3fe8de34e7de290c99b6399c621ca5df045c5e4229901c75a35c39081f439ae7f5c547e074378ffc4048f377a4d7536403fcb55b66e546600d408a913aa803e33e233e2881fe71b1ebe97233206e5d5f7c6dae59775a5a68563f2c47511b7a9c16f06e76bc9d60b12e164e128b0548057785e118b8a702bcf15c28660eda69bd35067c06d0dfb887a9606dd6b689734e0b97809936a6fc707809cdbdc4e83564903058ee7ca3d8c188ed2ef9763bfab6c7362c3e54a7510bd50cecf7907c2f1ce39361b20bae7e03ca7ea151505318ddf3ae73f4ac4fd514cb54d1e8099e57a4c7a78b21e0a40b5b192eb40362a8c8539d2c55a2da5b8489c78f60c6da2f34b9fc27672818b60889d338409a7e2835a29d75b934ec617bd93a8783de00ec7994345018b7501198bb842bccda352fb36b6465dd61fdb34bc08dd0c995a36e609398367cb1bfc5173d813cb7ee7ab1e713b74fa425d8467c7eae2739ef8ccd42391fbac17f6bfc8909e07f88bf160b0bd027b3e935b687f8a7ef6c929b8c80f56d46e3f8ec907ee193480a047bd6e4f078929ad24fde28e5fbe17bcb63559c68c623acc25701648f8ceb7d538af9b89760ed734fc892a2c91d2132ff4074bdb10873187f02195809cedddc8fcff20d0e26f4f1860895e2101c767e61a9de52ff1c694c548b9a040af4764b16d003b1ec0f4e4b2fe48fbf1343939a25e8bae0bf1b6fe5cfff3959fdaaf2adf006b13faf929f91a24e375622ce268e35bd758dad51e2fbc4d666d3ee45d574e7d1ffca93309993a3de0132b3dde531b376bd0a4804afd7af4054435b08846c08c3496fb7c0ecfe29753ebb1f5c6dfcc9275adadeaeae26c1e0a25b533abc15540f7ce066ebbab14b480c0ae96e6a2ca14ff69e3d86e43133d7e0e42c006764a6aca7c571dac825e02548112e9f70a863708c59cc24306b6f7d65f3d7b5a103bfb061db2614db4d50d6b49c59a210387dcfde07b080c5356f4ab4f185b4ff190d301bd5de2e743bc8103e3811a7572e3d2d0df1341fbe73bab2f217f66ed0b71a6e14fd5faeb352f1b81ee6661b5d1f9df419bf6b602ea93ac623c81d6485a51e724d3556c8ec84306d57e4b00609b7013d215368431ff60b8591c03194177afa7f40b23b28c3c3c83840f664facf393c56f4560e6f792107eac3a937f9d854f5c13f73240719093d10765a52ecabbb8908517edb2848e3bd7b9d7c2cf04ae82664d8267957c635ee41356f41d4035aafe94f6edd562da3984dd0945b954b3d0580665f53af8f1178dabad74a868e498809ce08b857ea7d6d034b42cdc2eecfd80e7cdc0e23df6fba940926d4456a6978c3c1558d77c4a6be0e2ee59c08151e6cfdf83603398ca12b495e317f055c4ee9e34e59a568202047acdef4d4ea4cfec228403b45a4a2e3defefa2350fe870960754d8a2e748045ef17dee5c65a10818308542f125496d00550cf5716bfc4f31c58c3b3058caa0a4fbe1f0fbfa5c9d23c2a53a04c5534d9bebee9d86eef664f037b0d3a926c9edf9947d14a3b46f65be6a3fee1e7ae6909c2e4015f3098193042886ddf330021a75cd3b4da54fb954c7e38b53e1e1b97a04bdafb0e5ad5881f8dd183985a6541765a37e3b0e1a3014b607ef9a9055248b259bdbeb510dd139bd77a3e49fd06e58bcf3802fbbe282eaad596f404c43bee826a09a86b13dfc996b326bd62937cb7201c7d90b725168ef9bb8791182980a0e8134315061e7d1953521e8f9c54f2927804033098d66bb0063186d9baa217ffff9fe6b0c9ce363861f3cf1217ee4afeceb942db1e9f7cdc267dbcf148c84600290c1c684e00382aed05ce55ac43d72101930e2635fe43e6fe785fbf1b369f05c8a43c698a9149f0f32fcded0308272c90cbd1d7da58b423c7e6d7463730d7926fe61b8d4ac7206be31e5d6e57109f7a3ded8eb6675f1164f96b089483b8c0f1410829f351ff8ad39b3f1e715bd5fdacb7e89813446dee02dfb41ffe273fc55a369aa7715443e38df86339f2d75858b8982cb8231530e10f8faf89e45e408d3d182e2a7467e8a53a87bb49f8d6e0f4413c7b150b9a6f7f4f2d0de00141fa57f416324a49d91a53e4b34c6fa4c4c9abb29360bbadcc5e2bee8a1e1c88634db6b74250c1af109e2be75fbec4f4814b64d7d211ad521dd32d294cbf59f46f8282648ae61c10f9aae2db1f8127418dd20ee61d1d2fce5e539bcfde4c0f9d043e69d0eafa2a25a2b563a4a5841ec2e4bdcadb1d22a3be9fa65cb0aa15cf878dbdad85c0cd74f7c41974ba74d2d1ec8303a5e39c51f91e53e3f31dc9efeb3cac68fb387bde5792ff59d873f080e7aeb25702c79d8d14591b22a00468c55dc5e27799b3b07818afa2d132c9eb798329c7373db5393152f88d518fb4a353ff5d900a73da118988898333563920e127471ddfa8c0bd11f6a364da66de86ff55cb4e0bb76baf18b4c0d74db0e96983f8989c8b8dca1896b88b0e41272fd737fc174bbfc9f8c6570f041084d39c42dade813702c4564f88420d2ef698ac7f057f12ea1f6dccf38928705d03161ee9ac69b125d10225ce2770945735e20248110791df51d412eda55ef11e9a4c590890b471d8ccc78e2ccea4d5778430ef0ba6c4a5618698cda27027290213eb2002bdbc7ae334b742f153595aa75cbdc3a16b70b39a0326fb2ef8b00eab070680bf93101248d87e0978e6471afe403d3bb5b19223d28055dbfbd8f3aad06e494ea5b3652207faf1897885f6e85c1cfb59bbaee0d02b00c455569558e122969aee2527967aae785cf2321513336ba6474a1c797884b87104896fd6e03a80d81f72db2a5a23db6217a6b00996bdd037ff3cb488010799b1efb45e8d1a5ae2761034e94ae25a359c332f62943c1b3be0cc96fedfc24038e11f897199f22045e4946f16cecdbb57307c2ca8b9f5c0b522c2945abf9cb2e2f9a708708df8e330597ecba53560f462f95fb1ff5e5ce1bbc16c6322ec042b3095ab400317c9f5b09d6a722a6af2e0076d8ecd65e37751d2580e7573c313043263200df6d1ecb50e0816f849ee87ecbbd522d89c93a47d15e5208d12bfaa59a3a989052e880e4ca6fd133bad439efafd1d4191d67825ce4ec13e45dc1a6a8074913798369592365cb24412f66fed0bbd5fabb000b399f1f8c5f8576bd0b09375b4b46722ce13bba68e698dfb71a320403aa0eda3057fe0a560d3317a5c253d7522eccace51ba20f7ae868a420ed13d53f56e47ff8b50f4bc8b7de7b504e60b6d04ced6eef68f519fe2c3a613f744934f467a3d108510809adaeb0acf72120b781af856b05ed7fe51e32b18572c2d03f88fc10d5b714394737e38fec6b92a36428e66b1ea46fe6e880f9717307755209558fc722ce751f20a09334af8ff28b18718475c108437e8221d7a1c92f7551f5ac650249ff3a6d05088f80d00f36fe7b04d139dcfcfd843725007ad62601631faa548d42310a1be950ad388ff0ce31ba033b1a930892fac04d6fe5959d5db06f5cfea4e6d6c6da3f4ccb3f78f4fbe2dda80fc9a723c80c1e1810616ecf267351be881d826bcd4391545319f836ea1f24633a7fe2e0075285206fc5d952ee55dd31327d92c4f71d9e7de5fdcaf93eb95c63169416d3d9defea0e12797a65aec63d95421192635b6c79ca46be2771bf3dbab35905b92f86680589c8183eb711f981ec4becffe034022a2b81777dac1ad86f5760802f1e3d9551c9d54628fbedc11ac07fb9d0407648d123e1a54da3826cb37d7e0733d5fc42d326d227afc792b1dbb427e68bc6b72cf4215feb8b097ebf8ffa3177138d6f940fc0fda644c9e7e92e799f2f81417e069121084d9237e3935080343ec17c4c750097bc46bfc772e57d12732150ddc019fa9637c05ad0af022e5af621954c40314c3420e2f43f69dd09879b306a70b2591554ab4dc51f4c8d731776cd176bfa17f00a9e10c733d62cc23251e6be5d08b093ed23170199261848717c93839025211c9262341dab10313eabec389c330475578644c07c000ed366155a404e070339e45651c01e0632060ced789679f851ad7cc3801a0ef0f5865496adf9d42a37289182de15f780c1f3381f98c065b4ec6fde28bffaebe2fa00663db7899d61da0d99bd2e985a23e01b16eeedba8bcb81fcc0c4731768efe8563abc603eb068d56722d219a3d433f6c87321d48292ad49a837068c1d2a3733a7d4e4d708814fcc0b0a7280e1ec72d5a873c57c7ceaffb72d3202be7ab45066a17d596932a0a098a14c61f431cf4712aa28fff24c77227d0a62771330435bb45e9d97a8cc3b013804d291471dba64040e69596bd89e37d13db175a9c03cc0a9972a7b9e1208bc96e9cd01eef776be0016cb2083a8a6c80d8406e79eec8265798eb31d97130f292019c39d5b0dd4f8d97726de82c17c03772a0f917c1cf6012e78aac790a031894d770f521e493350a89d9238e7ec09a31db1d8a01e618b3a70b3327c002e57cfb0b43a58a960629706720dab44f48cab2f57f0f002217f76a10881c846583c7a52eaeb9f2bcdf11eeed7620f093f159f97bba7cdc499e518455f4b22bbf0d3ef2191c3888d1bbb86d48c83d55a146ce8af42624fe54c04c352b2f6018e728595880cb7ca288091a7f1251d05594c6d4fc9cb7847a7f5bb11122e6b8e40920455ae4b836237ff7ebf51c2ae149f54267e64691d9034866271516308288e631b1f2f0ca5657a1813990ad2b785ea97a7ee3a331b7e3e01ee2b8c1abb3ee7e219ceee1a722fc559f54052c7a9e67330472a2b4610d1b73b738561cf33f31bbf90c121f98261162e65032ec83f3a69253d694daa122c20b32cdb885724955373c703aad192fa7e0b21dd632adc9356d7d3b3901bd6aa7f463411b4791d066dec795a49e2ba93ba855ddc2798be0e8d6e5b48919c3fbc38866d4f8320a3cd896e01e3526cb564525d44c90d650b893a28b3f270f5050da65f6146e09b4238f953229e6403d1d2e2dc70409dfe71fe600f0f3053c290370f8bbdb9abf8e3fe6f2fa4b7db6cfe3f7d7da6307ae1d4f71abfc7f9396cbbce5b31e856199c275d9a231dce1da207933df40a07cc078d5c2fecd03456800bfe066aefd0f7dd44e59c07154f5937c72b860e3ea3e1e6882f8fc1d7e00ac5b991f181d79c6b6355c593875bc03bfbc12c63e652e21d822dcf7e0b98d51e547c937d05a7800f8fd1cace7c7536af33eb923be28cfa77018f55c38ac8a633dd695bfcc1891573f9a3860e1067ea2cf239efd5cbcf6d84f58ad3741be5e9f2ad2ffb4fe15196ce8e797fdd41f22b53126f69a9de57468d37c13f970af8fc74f7913bd79840deedfd5a92f5716f39f77b077f17a17e15e4e17be73220e08b68a59736362801e0303de83cc314fcee3bf487cc3df3cd0442b6ba120a8f97695c684a50fb5239f12d4ee2d81096aac3ec2b5c52c6c23ba26189b845540d6bcbefb109ce3d34e0022a964f26e5215332b764e518410fd93252c03e734ff4c4f11f13179ed10a76fb028a6e131dcc06b00ea01276cd6c8f4b9b09926f16b5995601f8c8fc295f80f822084859b5ea5ce22f5069f0950eaed27c8384c70b7ecb050bbac15ec696ad0373fbe66dbfc8e39e3b9e488395aa0a1383a1a36231b8638af967715061f0bf6020cecb2c5685785f8756a1a107bc18b795f0648526b34c1efc55af4f1ac99c708e4253b25a9be1477beb3a32189c1071878f3577c38723e0c80e06fc1d5c259c8777d111f91a6c85738232fbf0d03a682452832ff4f3d4fe4c8ed2c17560140cf1acd71ae529bc9a87700f459f9d3e29e27aaa289f6ac1926809f770f93ad9f3e6059047a4b847d72d00345b73ebcdc7cc3ccfba952396127e262dec53d2d1d0a09f765a9b4913683df4de054866286f5c281477e53033ddaf2cbe1f11d2900213f650fdd8fc95fec6a15c3aad4db0aa1dd9dc7f647ef0b47fed3b17278561531304e8c71fa5af408ff98187d2c7430cac776c6a08ecab7ea7b22fd05a3caaee547c20c61b6314a65bb2b9f5fef87223b2b2f406bdb9e0be196424f5483e09433fb81a6152ad4aea7d205264ad24064d3cd759fe250094417d8c3387cdba8c450877bb83ab0226695cd1c272d76b3e04a2e9752883942707a9189eac6d3cbc0187c28e1f5a00191c7bda426a16f8e5d12eaa58e153153702224b9f13677a0f4b9736f1a0766a23bdb2b2726de03d9f53948a6518aa1110483421540c6e000832fc28ae27ce87ef351aec88c5c0b9664b68c0a0cce851595b8e42a0ef806080cb8d9c678aab4a6dd8982600659ac24bd5f998f868189c0f7f9c18f4f0efdbf17854365cc847b33052dc98a77b878373f670ee60676190d6694ec8366cc8749a1628ae566d517309c6ad512bda954116965a00c88f041e7002bb28896375499e25fb19c33002ce5e42d2e2b0af9b2289624ec57e7c7bef52d5bd25e0b818f37e669aaf196d414238db6b719fb1c4567e2370059dcf9d2e182a03aad2a871a8bad36b8be35e324225aef1c627be46135770119598a8372ffdfd8a3fafe6cd7fb6ae079aaead572d4ed13682171810bd268b293e60fcd6b6d65896d20414e572693988f144b6d4bd6eac55ab2651cfc03921788dcdc3f25e15fedc79e1ef19a28ac2b0ad43ebb0a3044d9ebe8fa85baed92aa372e0d66167e33ead3a8ec58b5979312764ef3193c46e66e364387a7a0ce8232da5250ec060379d6c25bf30e45e7b8b7177422b373d13e8c47050ded050eba8e8ba95a8262140bd6abcaf7f78fea0dd588914b87f8cd4f8e0c582e95a29415213a31cc71d47351b5e4b92a1780a44135ff7eecabf00e38fb08a760daa2a8f5e48a079670feae3902a9e3796d949e0e333eb3a66d27d0211aa967ee5de50027b8030cb1b3485fc50dfffa9fd80dfc984b71738d882c9f9ca74a58e3013b6c0c61246f3e223fb1579de25791fba53f4992163d2bf46d00bdb7c471cec8e4dbe91132fb13672a678f488d42edf91db93c9ef86633a2c472d9e5fa7ae34264ff5069a4acea11e74de43d5f7a5d2593f658cf8778fb44812f2cf1a52d0d6a7d95cf6764be0143463db9092671446a9def1974873f92cc82f34199c6d0106b7cd952d394f439557076b025b666f992b96be9e2e78bb1b0c3a443b578911de800564b339ffba655994392e43564f133aeba3fa428d47ab56b53216af7d14e6581918dcc623876dd3e72d115bdfd6687228a48c6c73fcf844833c749426341a68dbd403d69cadfb9ced64f8f383fbd4c693df2187c9a5c35d949801994df10e331cf079ce5e687d66e3eedb435fbe2bfd4c5f89d13f60375c829703d508f5f5ae8b4cd31dda8374d615a87d7ad112371112fa10dfdbe29c6f081d064c99fc8030d4acd3f0cac2bb72ea721104e9c19fdb5e18f4754f1c120e858a92af69635906d948859f3bf8c7cf8a3d539f25c971b82d8792c0ab1311dcd0edbdf1961da54233dcf0997760866c5d7a1651e5706698686f8992f13e0731490d9f381a8520e351b7239f48d0106949fe1f0710ff021b633078caf24fcae672fe7adfbd01bef9e6bca6abb3279eec026421b2f8c0558a5fe346aa3d30f83d36e71b98d5e2b678fc1f5b8c473900e6147943d7aecd3d5e38a15aa15c5b40348bcec409b6b3e430edfa98218a37a3a35d9e8d9f148cddbc7094f1d1d4fe521e87b7757a639b35e5a80017a178e39eb8aaa486ecbe8c32842df52e3c17e5bbc128294134cda99fb68668652493cffb2cbe2c077a03ab1eb2ce834aaf67fbbac146811c9aada27b1d49ec3ef54b451a70c5dbf2d9929f669588f394be63ce390641e0204f027fec118d40234dac110803c00a2a45a08b920f75d6779e2ed0a8f91b331548f08a00e744d7821d78b4615770e552a478766ff568b2454b63f45db35b345be71cfb41358cfb4e12f9e8d5b95e14b1b91535f9015d946f67ed2e07457302560977c6146f06406a5674a53a1539753ae18486e3f93dba72f983a0ea8dca9a33dea55ce1fc7a3115a16dea7beb36157835e7debf13216595fe78febec7f5d63adafb4a1393892e28c22645981371d0eef819eb2ffadd7afa31c8de675e375491f270723dca9acb1e48ec579b7d5a2675855472a545b9fdea6d34e7917aaded5515a2b5e484e66591828cd8876f28c28fdeeb0f69229b9694b710eb20bb42955773a45bcbd70d48fec3df80bdbfa5e170143c010e7230239967f78e0b9d44e719f04883f581d4ab534e57068303991c6f5ca3c5d485cf9c56d570ec0c30de3310e14a304832c6e273bd745a1bb2d7e25b7d5a0b63a5db8d611890ac7fd6198c8c03b653a8442378252cf413f8f85fd3f0cfe42fdecb267455ff6edc5cbe0f1b14fbf5595f23ebba441b0247111ca33860c4c28394ce20996d37a3cc2906c3ae43e76e66db5056d83bb6f0c6f8882b2e52dac2401126ecd0ba9c57a39309827b79b207438e5a423169640fc37840e3668edc472373690bc49c1b7cc492ecc482b125d51656a4d8de3d2c817fe802d2871700ab3ef3e0e9f090526762b1eac3add425cb0c14f4dd6e02d303ce193ea73a7bff294d847cca749b241021a91cadce3516eee3e418ae51c2d2c734104ee291bc5db7c6f3456720045ab2233e45b17b72bc09a681953c070856e3eccf905826d676dac0163d8a93eae19b4d38b57e9c324b63ae853c6c42daf1a96c8e7910c23735cfe873ffc5b11b778e39df915627661f983c1692278b40ac20d0ddb70ea420b6526087935f89f0efa94bc8b9a78f73cf8f6b116fc34da25a5019219f697eaff65e6880b8ee993d7a42fa0a84a29d8c535d26804420d3f681dcf41b9d0001c281a95cfc4f43e70b5b0c6128c8aa55e04ac22b71e43652ee9d44b46781a9d5eabf9883c2d9582fbcb519dcb8d3f03f07254493a55a766d2ab6d02adf942c3456a1a69ee509b425563039fe5b59b13ede258a31e4ce53418f7871a8e86e28c36e9b355dd6ca7fefc87deec54acb60831849ab7cf2b9e2311a4054414c7daba543572e650e62204e3c3605f33d72c381746d8bc27065f7619e30748fa088b4e230733e18d2884df148c1e42514f7d95c7087942dfb9896e96cf32718868996919992d02891123dd931839882fd1a98c90885607fd7820ea2d9129e35c56b708e08192b4077650e90129e15b96686d782c8e069d7186bdca69bc5ad09eb0918aaae50416080cdad385aa095e9b36edb0971747d2ff16361ba6b91331e668a10a0e001b176bb4fc1e1649d856a3579154923c8b7ba3b46f84acd849c5a711480f0b8ea2140bf12cbdb0cdee089f81ae61a013382af8642c5913f8fc03a4e2ac058f9b5903c5f309d05f6e895605dfb0e82f2e2a56ffa88acc70c32f9e3f9be003e06d0a71719d4d20932df34ae24313368be65f2cb7a8a79836f6982cb47ed65b66800512fb6cf4e4cd4e2b3d8d87c1853c897c54fea663633a631b296c0ba8ed03292001e1ad4f72e5016d8973d5f4e6ea7dc4d7a7478ec65b4f9daf7c847aaedb4ba76919876e3e945048b7c145b063ee73b5285edbc24642ab1c2fadd6c701dceac5a5148c032b3c20f4886784a6b3c278423348e0aaf4d3b27079975a7f84e78158916d12f54a58b4458f0f82db8f604a60b978c73e874039e600e98ac7c8a351128e6beee76c62fd438151370e0020c447b708f468ebd155603de2ecd165e353c2dd57756fa44b2446c06c31cd6ca7f0de13feb0b4bc1be9f5e02461d5ffc08e49d794b160527e333424b9e3c4d2985e4a2a576700c915d7f751c0a8184a6cf10f8de01639610bc70adaed7fa69659a0fdb668c3d41d0279fe5c10c620e4ac147fbfe211f007f96165abdedc33d6c56f3af92c7e415765e94b82a327bf61335ec27060c39b047b9f797d840a77200712758562179681d2a39fe7c6a4bbc8b5b84dd3e4098b9166e9ab39060ed0c863b517cfb396c2a35c1a65021bc59c9f524f4c5f6398e3c32351b6ed4e3717258154310645b420e46fe597e5a4a6e5008798b944fd070041196a57e574e6d2dd875018d935ca2a1f1fb6f472f08ded08ccaa3043b13ea71ca861a1186582fc92d85b280289d4af5ba1c81d44dad484b8740e1cd67aba38da583818a1c6b61c43eeca775620dd3e8f14839a68699805866bc71b2bbb6c9f8905e701359701a5b98d367e7067a8d95691a7317f767f93169b120629f1ba7df6d47e78a5001530a8f013ce02a10c647330dfb625ba45e150b7240e8f05dc7a26f68f6a8de5f42b90436324783f401d163e383463caa3c663d2ac1bcb05f6fe58c2de65366b99c69a6911c9ca05e1902e725d5d76142c8c85320d4c41e0fdb7e9fb1cf7c11e62feae255d024b2ebb074901c1d20375404648558a6dfd48c177e380cfe8b6d84ca0464a4d1e56070a0dc2526bdf350c02b33bebea7887808add74eefd54251cae1408bc1ca56fffb7f69d6b14ff1a8c9be50144562b4c9b7aaebb39608222572cbe720aba63ddf0109167bf89a550515c233eab8da3e5764b3e4e20e69534c92c88d4964151bf4010d1616d59cb3de6ce0541c03321a201e66ee9521ec78597e73bbc393bcf319d8f6d169a9f915419b5cc4cf308936bc3ddb00b28d8069ff68c8420beebcaa9ce9983ba6bbe474988844bf60e5ceb386e98b3e1ad43098ec5209eb83c52dd591462580ac87e06b9fc10d80a76c6f15eafd3845b11425b22cfa80a3a893e562d3a98ccd5634ed27672f9fd0f38f5c3fb78080ebd83de22c192825e2e6df119a010ab88a27cd1b604a771ac9a6f9a21935be852d9818f06338f4660e03d521d9af3c64dec30c8ff2b2e991999680a40d01b652c4cc7df82bc6ef50130ec2ec62c4c0cac26f26bf15df0172c9e182c6218cbfe450c72396f6be968c4d6ba6b0ff0935666278906cfda112b7a7e6ad5f88befcf2de9634135b7975a53631e1c5c06bd903d3800970d0120264f23b28928873a077d42b8ad217036396a541a7f74a0c1121168998421450d47ad32a391adde5523aeb410b0833e70dfc45b3d37726e12fdc0bd0327c9dc1bf50013360e1d67bd3e005dc93ec6278763e12cb816c21292c1f962a1078bf0ebfcfbca2f679bc6969fb4b07f1168af209a286491cba3292a0e77b5405e6fda85299099aaf253138608f2d4b4f8f1c4f7601e0adbff346096eeb7c64d51ecf9bb6417fab2a984358d1d40fdea0bc8302e41073dfe203cdde8c03f34c4867c9051e8a86432e16a6d24f36a7b338952bf8ea202ae8329a565b43d32bf57c3b39bdd9ce81c9aedcd9866190b70cd3ab3e4ca88e46828c95290c1cef192cd44d3064bb90cc4b20f7e9fd3bfcbcc135c0c5d5190fe73726fd03789d87780d1fc3cec3c256eb8c8d91c5e238eb932f19eee8dd53668d7a6f7276b3ff81acadff9993d76617626662d585a8049bcdc862d6da139c825391124d204661e31dc4edb96c2e8c07b6726701b5a45217486a93ed6cb3ae56cbe1a016bae56d652a11262da90ebd0d003b4a3f9f78b8f90aaf2cca69b4d47883f2ad82316f0bf5990cc8d69f2a39a628c48bcd1dbb8a86ecaa8dd08cdfc9ba886f8bfa3801e97750f977cab8c315963b70ecc1b9c8821c8fe40c0b1c4f47115de0e5c8d381863fb12e3f1ebd883f000c09aede75906407b001f73b0238d1f109ebc4d6c016039197e5d277bfd632cc5ffa3f35aa3edcea44ed76e4a6eb12500c9f3462476fc6c01236ea3b323f35d0fb201d2c4db7fb60351d43988994949307a13e7487fa765fd5c0590fa04dfb38b039d633ac5a2ef75f52f85387fa24ee990711f957d05ffa64a9174e6f1bfc96017301da0c1cd12e1348012788f0ee906751970bec8c7aaa94e859e215a98ed9f20973e1ff4be44e5590c5e85a9eed2d317c15f08bc9ba6082e066c417ba35f9d6e58a7b526c804e387bc0dd46dfd8088e9fe0a2f220071063c60d7bb96033e0be9e2f862451b61802190054fe47f07a42eff44fefb0466ade21677c9a124ca560707471273ca1824a70e598d6a32253616346206c0bcb47951429da01e495950062c7b992243f41d5b42d0624ac3567cb7c204d0c2870f9f9c7223070c87ca8d5e3290fab5ee17eabbef0dd337208335011432ba77fe03b0cfc3c72510496892b7aed2042b0766d29fe2a7dc36e2ef714619dc4b76a3101aeda1360ef74911ca49b5fa33bab8c97d0eab782442dc846b7d029224b98cf9837b6567b5724399aae77ffe12bf0728986455ce82fc49465de53f01eb6250ec4729d460115fe29044df024465c2cbae08d308a8e1ade2c7dab8af640f1985e86d2c17d60b02c9950560371ca1a3da550dba72c24d74e4b162b995a5a9520ad256dd70d962151ea19da44392c9252f6715516e2f11b751a2c828e8c7fc430f1de4b503d4dff8a7fc3da731060a202b30aa393e6ac03f2eebe5e01854fb350a7be59356d0eb26755f45dc52db1ffe65769cb297a67b85194941c1b2c80a8c26601b24537df4549d52721b42158ad87d5198da4b6da2c6a24c88e8e912cd0d0dee6bc200f1ecc0c1522a93af00d96c51afa68ab3e27497550bc87db0a40800c481bc77939a92518ac124ca606223f90a4c28dc28ac56400df098d525d8adecc251f6ca40b22ea836c294e46922d04c40b905b34685edd3c23292110b46c4609c526878c36589a38bb91b6f487d0d96edd53795fc52f1a7c6c30d538b522c34344ad2f35230b692570a1a112cf7026f5b459fd8aadbb28545fe5daa734e0520f88a0ce41fb24351d7cb747f13242f0bc8f08d858b588eae97bb591414705ff82c19aae9cf87882a5e74890053792e40c1caf08d756dcfa1ca0de8a976ec1788f8fff2fd2310fa68822f45c191488600793d81a94dd51affd120d1c6c722e274b4c37d9fbf6f2719e04d0b51281b4ac2e392c23c4b7e85fa29cfc630125fc6344b81abd2b0b6c61c9990e32730d34a5cf1399424e92384f952e73add296f22ce44b79ed762831f56b6a005d4bedddc3a7d9ad2fa82d79aa205c716af336fe1ff0aa71a0494d5d8f4bbafede1634a44f2d8d3be6099f34ddaf1516f234fc1a51c53bd1e5f45354fec3aa909779464bdb27ff4828aab885fbf31140e3594d4692ac710293e46911517578f9607841beaa1528ff5efe36099ca73eee9f11d9e82f8dd2cf459b3ef7079941f987ca3e79433b9715910c85651bbc210a8e090f4f5fb89cc41646c91f523035f66c995260487496058312ee1cf10a76171fd11dc8db064fcec5e246c3aa8a13e9cd31c9bc959757b6c53ac0fc91a726c55caed544ad0da42b9713c22908aa51f83820e5dac9033524ddee5d7015e337569118fa82c88bd64ca1a02f30f9d97979473ceeb0ab23925de3cd83b0cd1da15067208d6d33ff2fc77be874b3cdbaf78953f5ebc0365718c1dded9e26ac59f3a1910641201eabd7c9e03a1fb8468ede39ace7b1e1314448e3234b581eeaa7f76d7ddf05ff42846b3c6e8de233bf3a0e94ed72e8ac4421d5222fd8b41ebdf290959b893d80ffd974a092e89954fa71871b5ac40a16333b23127638507c11039f535c998457d79b18b39dde170c3d2a27101b307179a6f442d12ad206cd09f8a4171434a294780b44b948a32d174df29c54fc5dd472c3c50debdfbef6fea7589dcc56000eb4e15db55de87c2953e2424a59fc93fa1fee9092b3d2b027b111764d3f251220dbc98b50308acf9e47b20b337024c08363eebedea285cfba7470f9b3819a9c1b3f27e4ccecabb42e9dd84f88d2d5e62a8bfc9b22e069f110080a53db409f29a851ef0816cd76ebd61bb10d97fa00440f0addcb86570dfce08d80686e020beca12807ccee67a6db5c9b0e99c6e82cf091a3ebd9da3d14a10293e57e6f951d7b27aea8471bed3b2ac47127b22dbf8d6766fc14e21978f24a61e92052757cccd7778dbb31fcf6439aec92c8f746b41d89993c3f061202dbebdb834d996767b3578929e2bb5b641eb1cf167220c6bca58bf9b0cfb6fe7889dac107ae5df40bfc01459d888c4d1d1b0c3c3c14683387dc2558570eab0ce4daf7ff792eb2554ab8c24fea2557442aef6eb88886083e02b04868145a4334e49e3c8531a637548938882a981692db89bffdbcd44525609f48d66fc348ebebe57ea43b74de99167b357e0f94323436f20503815741ccdbb956123c3bb04e41a771c2a670b73cf96297b570c08e3c5759ff3e95ac04a95e7f604ca4f75dad8b99404bf346e83e15f460e6141a00e21984224a8994463bbd7e24868f9abea2ee1af15542e3ed569dd45c66a90521249d201b471897a1887d59b8901bd68abc983bb090f0be5d9f17741d3a24c74880f8aa51c94613b20f08392edd71b295d061ada54acaf005cc167882c0c18b748a55e13c948202c8f190bc9a01d5c89cb0ba7cfc84300648e23c9243126d9a8c4d68895baf8657ef231db2c21d2e7ef4795ede4e42a9aac2e82634d82fda6551f61c0035d06ea5dd5b4c623028970bbd7babcefe2db354af150ccefe5f641b7eba741aa1f19f016ac4ae0dcdf16b047e9012ee7033e0c30284b2eeffb551b1902032ac68977ad60248435cb01664d977175e8197e784640e39e7c46198f6389459a6814a0b029394dc2ee50e1a6d149ab636b29f65c631695b24392c1a3394b17384e63c1cada5069e59028f139a96cbbc88239500ee0780357196bc054aa26f43d2a3dfd8ebcf27d4a99e0e23dfb815b410ae7356c2170b6424e400b8f239fbf3a511b863b98491fa7b3d1c96561cd82e8a42145573c13af3f0c9045ea295d097d61cc912eb7416adb84a87eb4a20179937e86695b7f7b2af71fda8a5c91943864e18f8ecab2743ecdaf15a0170b4a9f9c23ffb8f0011abfe2f2a36815105e58a9255807bb191c7b3a8341fd30cc92185aa7dcb55089479dc0fb775f675194a2dd47df100437f9ebc8d495775ec1420a0985dc253ac5375a4de2cf2b4e77e1b42bc4e9168805678beed87aac00bad1d4e82de73231842692eb25313c71648e6ef7a7155ee93658fc39888cb0225eda13045c146292a5140d83f9f837bf58f7024b1ea4e381239e4c9d8b993deff647781a8818af7743fa41e2321c9ed8df9552fe34f6aaa3747b38408fb7ea1f3e04be6703f890c3d93b1c8edeab03fd50c333f790b0f030a5134097c853e8b15bbdb051649e7e6b42810f319f90fba9a0cc28c3ef286d17251b2a170cc7670bfa6695780ea61a415a2cc7789fad1314c31db8844330a2c3baeff521d33c2ee546b772682fc73bca9f67409ab5db9f535acd0438f79cd13376f93c17e99fe6fdf3c50353067d1fe7f9ac2fc238b32ffecc7e624958f153ec553e365d9512a42ed6d04de3b0cdcd6b2636cf6d683aabe8ed5b81e1385ff3e0b297dc5e5c82423a6f43bb5ca01f1a145863295e75fea403c143a9aac2f104653a43af4c419ce7795090c59ca960969aff7f85b2a369490e70b497a96af96e06ce5d08a3a783f6137efe9ddff39e7d0fc48cb704667327e26e47427b7cf460f60769f0d7ed1ac92542432491198833d8b54ff6da95cf4bfba504d0e14e7ae5267ac8666cc798907ff47c1e47872ae82e5f58c90eebf7ed03f9b4b5e52755cb553b22c87cf1b4818d5abf09b3187745cb272c79de78ea859bc53560fec1ab7c841bad4d516cfb2462d8b59f633a2718a93a75e5ebf8464b1cdfdfbb524b0e6b94765655974d1fb52cab2bd0fc32d60e0448e2f193f00b2091c21f53f5967984791a7d4fad42794b24526a7d8b8dabc5f0ef6361b14bb7fbbd5f1081169e834b745607d0cf5996d3a24d822d2e36b46193736481bdb44b0ce521e566327123c999560394a07e1a3f7432381497028d271d02a16e8d75f38204eb28066585daa6f15a7804565967e8347be6245d918629088eda338876f9d975b22131bdd9948c819a3ae33419b82835759b324556b03366b25466daba29481839f9aff2113540de3e88009ee2a17c2c43698e506446ef6635cc3d29175e47f259008b5d4f195c94afa5c937664f1a5581b338335e3c60b6e4f3c1dda284db70b9118718f0e6a6070d0e2ea49253e2f07ca90319645e37d82cf5d895493d9fe76394751926f1cc9bde9e131288555ef2f578fc9815d62bbd0872731ef1549a1d9c01d04eca2993562ca5e7d6b8d2610543bd534922cb7a6cfd404f8df993585940d0be0d6a1f05bb81867db15b0611f7ce233746a224b6fea302d26c547101841a02f8c2eac6ab65dd4c1caf21ab4e6949c1314673760ba7f9f9b4e25349369c2604854dbd6d94b68fd5755e9d579ecc084192909a9ccbc56bb55f8c052455626e3f81af2c7c86bd63e1f76a931c3bd5ee0d28c2757ed146259b1e2ae09b8fed09498b9732dd7586b6b391721111ce7e20370dc15756464c669a31e1568ef16e31f6633c07fba73cf6df043e6f29fc6515823b7e0c167b8584947e607a5f40338253be9c551171d1f7c948a01b30d5a19eb31b5bc1033ec9a0c56a93cffedfcdd2d88bdebce90a80452891c58a468b59292ad6f35f49b2bd1d270d540e15296594f194752228b87422cc8bfa60523cfcd7ea5bdfd489cdf9eb9feca1a75fbb78df0e9655d8d7290ed8391eac981fd211059c95179ba18f97a0d6301f75eb913d9a10ed792d94ce0b82a63c2006f4e3df59a57fe9f5e8eb0ac5d658778fa5e8dd22d0811aaab2bdbf1be4a6d42e57d581ba089481bfdfb81926f732900bf65f8f622fb2072b6cae525a7833a3dfd9698ef1f479dbb58b416ebdf82916c6a75d21c3c41c4b6cfeb1f7610ccb6fdcdc73a7e1311f6a78d816bd59367c66732ab3b9e79e6e1a8ec1a8859d1ffa87c939c81e12aeed8074a3f998d33394700dc55fa49b3c7794a9874e4d545c2e3e3747ff421003705ed0b8e482af5ba1af4aa1142a7cf15c2cd6210a578574a364667688398b757b85b8c0ec20844d439a13fcbd69ba0e2e778e95c1bd81ce2de84c3608292de4c837abaedfc11248f7b8effd653d1377be9561754be5c525d7cf130e47394408d352fccdc18bcf3c5f5c7381fdfbd4916e330c7cbb09100d4992524246884b556e885e01d42ad311e54a668cdb63238433b2715c0b2df9c0e4864725ef3338e3f2dd97fda9bbda93bfdce1654ddad24f69fbc75b22d9d95e27e021d1d2ab033e725c29645d6f25045e2931e8f3888a5d5cbff5da0cf5d1f0cdef7f88e233e765c90bc8d842b23bd1e0f9be56a7441648c370f59d6e880c139fd474bcb147866e06145ffe57d26c9b09e5d03a4f21ea9f938c7fc0ca20fbfd2172380e7e03831e82f161cf23b5c207a1b98aeb39b8b9d7986d61d158dfd2a68db348768f64bb604af232b49c46bbdaff8ab81b832ba5abef977be2b070a58c1821b234af5d4ca664b2397b0337f343f4ae2aea0a31059fa2f61c3abafa1f8bb7051cff474687b20ea5e85d9b8ea4dc889e0fb3af430cf46393e8031b1cb7854c03918eb6e406a24cdceb787f58a5bc439a8a699a7f4639e55bda1804f82ebcfc2f437b769eea8b7bc1e9fad5a8fdc2a9b5503b9132fbd94aa965656cc66deb657cde36f0b82be211c36ff568feb6f6957871c9487038b43b1250e592a2fc0e2c6c8b41735b9ae7907fd46fa5bbf54bdd7a3de1b81c4d59048efa874547c7aa55324e19adcda0b66e8f9722e233f4569f978a82a91e1782f00c26d9fd2aef81bf8cbd8b657485227f0f0197533646f4a8cf178f98056a5101fe177191336877ba1fe10750defe3f16e7cb5ec2dcbcf9e5377636a9b98bff109eb7cbcdeb395b9ab71c299b73475c32bafe8131ea5f868829ae3846ba3272450d1fc72e51a07bffe3e64476d3735a83cc3b877feeafb86e3377a4078ce258a9e7a1ef517fba7f737737dc61384603dfcd21890569eecf7be6d90ea316bcf1ef55d7d0118ef341c023968edd2e8c4689f37ab6f38787a1268aeb39bf6a7287b1255314fb5b1c51849fab70c4c786fc6bb447c67a6094ef0ffdf3405f8efbeb007f0deccbb05e18c503c3ff3dea83633f3ae25b43fb32a017e3f161e0bf07fa71d8af8ef898217d6de82f0ef5cb43fec250be1cfbd1111f1aef9191de188a0f037f3dde8f03fe3bc04fc37b65a40786f1c7e80f8ffbe0c8ef0ef1d3c0de8cebc340fc18f8e7e1be38f2a343fe35da23633d308a3786fe79a02fc7fd7580bf06f665582f8ce281e1ff1ef5c1b11f1df1ada17d19d08bf1f830f0df03fd38ec5747bac02ebd6de9c56041fc47040e6385b90f431098b74907c0809111111111841444cbeba80d95fcb85dd0a06e04aa8d483c2082644a29136c63cdb11816f361f3e259baa594524a99c8c6fcc11522807411d766c4eef113940e4d0efc2c429678cbca27f9ac17d3b412822da4626d99ef6ad13939a7162fffe34f8d4d19fcf510f85a923955ea5fbbd7f75a946add6674b0fdbb7cf6b2800da5bb7febdad8840811126156423f6a59b1629afc3b2fa11fbdacef34857ed40181c099b664e8bd946b6c162c1e93901d748a755bc7fc8aa6ce779783cf1caf7f8bc55bfe7bddc7d4aa8c525af1dc1f6ccbed7c55b6584593f029f7cb5f06df412a86cc379fbb7b6b42c6f219158ae532d5e462be9653c799a65168e3e9ec9ca62a3eb00eca77cf54a536f99490c7fe98f15270fd836e4ed0668807a4aafe527d7efc727b85bdb3beab157fb575360abde8d311d281e67cb2173db6c55663ca99a6cd34356839295d953bf752578c9c69ca807401813649429b8d1371f5f592b3c9b5acf11b679a360d32840e9d5afe9aaa928dc39eb6a65cfc2995fcf5dd9c6952020a255171cb31c9dc1faba71afcc999a6d048d4f44df6e0636b32b62e2567620deaab8aba96b238a1e34c937f7603f26922a22f2a179573cc3da7fd26679a382298974d083437d32464488a92f5629aa8584dbd27e57366dfdc43e54c536839bdf95127a4649a844cd3c8658e403382718962a5038acd7770c6f94e2e84dc9c69121261a258d9f83485462f8a0312ae6b2cfaaefbb5e0e24cd328344dd3e40195dd67beac9ec1dea6cb016d3c9eed69fafe74f1c1629aa649f4029253c8c8569bac20b7e99a3b679a3c6bc66fa6e9d399a60f81faa5c47fa74c356f73717be54c53e83f1b606e49b91ceb95f1297fce3489fc5fb4d98c3ec93409d18856334d1bceae8834b0d98860429bcd03822c59170a00591b906793e4d3499204e47180144c45214506806000c805522c20450534a05114d80499801412d00b44606d3200010dbdb8807af3a1cd6691f19cbef48be00336401c10b391cb39f5df80462f31a1be4003340cb0c002409be754030ab04002e608068ab579ce26023fa44080c8014fe8030ea00103ec871e508025ff990001469fc40103104540006b0324006a012720e0c301e0d2c426041a6d0450da93c0c9129092d10432cfa9c9da445d9b4d924f67b4e4351204f0a0802e48c2e45df683a2002fa0110f4085a8f3b204305983000390ce0087310c91842005410282f403c907521e121e520f241e4877483b907420d921d521dd40b28154038906d21c921c521c121cd20c24194831906020bd21b921b521b121ad21a921bd404a4342433a437281d40216ac40054f0091437a22c8891b0390ced0862d0cf101051440be104515520bdc2880e402204ed8a183363a2880420a2492f48136a088e20d44c88025a0c8801c44eed8811d769421445400ce1692f4832528301082d7ece7d3d174403519d07cdea3341ea880e6f39e3d78a00f3a90a43a8a48604892f4c325282e9082f2068a1b2869a0b8a0019284d2021498245058e0450d2b5948922461c00c224e48c08920ace1015b507a70c0096e48d268a7e63f20054505ee70c44953d419ad28d4cb854665c9ba6040b3a209b2645d30c0813280783adf1a0e68ca8042d38010685c44211529f3838c0f808cdec81b19bd118f92f95b8844bfc5fc2d469d25576c319abf855f0185047a20fd68bdf87c3a44543e9d104c92ce4c11a9c4883810ea2c59172448c8e80e1948440be2ac67613eeb1202853a1f507f3a5cecfef667db93e41302fd079432c507d4f11579b123d047f4e970a1325a15d1ee48c5c31a4e1989d6a3f974b850d104c00b15fffc88058a048ca048804b92248946fb228dc6893a5ce555caf062c81525d8787145918d112dace8628b2a34ac118d56b32d1a517746eb021ac1ec7e8c0ba8352a2fa0908f1186e6e301818a84a1f950676446a7e3df30ae11717ac70803f4ef02031a89cc007d08c4c57a5446abd18898208540a13701182e202244465f824f07148224493e9d2fc1084444a4e4b100818e6c315bde0c100f19bd910f81b800118919bdb85c216a7980498a89145008e011a097989167471928a01080139b55024500c6205560f422cd04b9270834e88122a0084013a008801b927401cd6835a285a341e1041ca0702208920485135a48a19f607c3a5ca82041a2f17834361881888c8628016d219a5d8c60bac8411215541102983c48f0828c842283c716a0389980241db902343f2d193c2429c3830c0f2449a93225eb85b72c79ff74461e182ea068e2c43f30a08d48b409fdcb46f4a2cde83f0472d98c446fc69027423085f44408b6909e08c10cbca080149224c927b270e9892c54203d91051aa4275a9c909e6891427aa24504d2132d4aa4275a70203dd19204e9899637484f84a0000dd8814400221200a490a41328ce904cded882f4851a64e690a48c1c19382449722233831f8678912469652049de611989768b4f6724fad17ac00015d91775948834afe4f3a30feda7d3e1b4c6080744a2f5cf2719227a0711f10e8be8a573c4030215995d80b010c16021ea14a9422412798745d49d17d091d90568ce2e6617a1ff28112111e3122b90248f11354e70098d24491a8d060c4b1c4245b4234b40a1109658a232084bc43e5442122c75f8510937a44a6c21492a2efac21043f0a8642026ce202bb082042ac4888912263107c848920e0a3ea4e980d208d1a874c0bdf0783a5abc83ac98840424f10823574882075291e88c1851f97496b31d2643a3e231230b44271259c045234634fe0e860a08342a221047b4598c44a10e4ce805888b4645a4225ad64ca228349a0fa8c3412202cdcf28081024ca609020418244f39fcfe8036ad1441264c9fba725050812d1877e3412753c3dfa39412ea2ce6739fd2ea2f74c31e224e97834a2ee8c441d51775e86ac4c10100d1221475690b83c673441532c0155a15199e2d3d12c18a022f303a31169545266121524488c6854828c445200d18846302f418048d2cb3e677a9725d2ff023a22f27f22a3061db1e20322020abd099a5831c40f8e68394462b007cc1ef3c71ebe47913dacd863650fb647903d804892f40202a2d170401324031a4d4a0634d30b489392010d108d661a238c1f7bfc4084242449d24c4180e821214289b4ef88888024c138cc175ba8c48c5640a14f81a86346c7d745118508c268c96f3604b39918c020f3862465dc90246943305b88313c9ecedcbc88362318d08b36199448484de00189d4449226e29054927c4021251a11c388aa68420c9d17986e9066fa8b6050a608022466f4e2f21b51a7024218c41190922712c5901f82184309a48dfbba6fcc93b1d98c7e337a516625102e92b485175f88562566d4597244b464b95011a9a8a8a4a4c478fe03fa977f2c54409f2949276b0f7b90a40dec810ec9b3073186485266b38727240d23f4f08643e8410692246596a0872292e445d0030124e9048a3cac4192a4d18b4e06908721929469431eb690a44c19f28022499938f0700649fa803a9936f090033cac40c3d2c2624445b42132569432ea7c60342b8a197542a024a3d187a750a6d9202c2d46585a58585a58d64061801d48608796240d4b0b8b1dacd0b0b4b0b07887e5fb0322e2f1ac154b968b25cb856747be55f8151d96d985b7fc4bcc114fe88bd0171179425f9cb4073ca009c1f4090682002103b41175548288342b08b2d1a4888044b1024dca2686371b950078e1a16d5187658863c11b13985ca185f4230e23690808041344a40a0d288949074c80c0810c3b5a169531906ca6e98d68549020f1c00cd1a81c6101594102254a461fa34453840b2fb2d0a868543e1d8da8c320d182462e2011af67479a9450ef863a9c8e6743eff29c9757e9b868760c2448c278179011241a5147e421d0a745a3b2ff814e683406122461685ec97f906c3ea0e70f8c8b0ba8472fd268268d08f40eea31ae60e9c28a69da783caf248c31c208bd19208d124d8ae7393b052889e8cde824f9804022ff8ec7f39de9618862aaf02fb2a365193202111981883888481c649044053e1db83224e300933f64b49884491856268a3a9c5c91f9b1c71403c8504035f0046908d38a9020d1fc104314c49003318021862e240909123334489074a15109a2010d6838ddd1c4a14722f0b0a30ffe3fc290841f615049925e3aa30d47b49e17813cfdd219bd74461b300c41a5d7f38f85e8a57344e5a5330225e91c31e33b9c5ecd0734553aa116bdbf7446efe94c8d2804935285e6e5bb5794f2e96c92211a15cf8a8c6876147a1718987ed1280888a3449302048946e56541493a558040473e4a401f2d5e3a47fea50b8fa733325224930049924a20fdd842002ea0852724c961441bff8d9419c11656207d3a90b1d511c58832241841060c49ca7cf1430b5c90a4ce0f2d7c00c6853d0b77303121621286091dfe65683af0a1174d0c9bd0810049caa0cce107160621495928f98105245848f94e68f469cd7742a32b4842da202614c84451891f5750d20b680e56500408f4062b4021b3861f5658f96185064892544492325a48522604929469c980207385246558242963852465aa90a4cc1049ca5091112249190f4852664592321d90a4cc24491929499928491928499927491927499926491926491995a4cc92a48c92a40c072429a3224999292429932249990d4852460392940922491920929491429224944c1455d854614542a2a141150660c534b5e102243b5adf6441050c482a56e821098923da95d1e725f9438f2824491ac174d1e9b468c8173de4bde58714e290c0d0e2655d5e960b7f8e592e7e4421c5f3030a3e18793a64a42149d218d20f28382149d213f6203a22126d16de092501439362642504c2c2e3592ba64900de0181314dd3d430a1cde6f3ee1dcea6f3b29b179148882eef0811bd74461a5a2a647db7a4bc19570829f2f232e4c834fd68438d018d68351b8219b2b2219805fda0003e50843486186188a1e2033c24a97d70c4072d920ae8934719f270421e77e4317fe4e1451e4f48a2212298323a1f1825ff198484871e78c8218d21468a088f11e0b11286187830000f290c317a60871ed0214992ca901e14917a2049120ff49054469d4f173c78f9c0fce001163c7042e517e489d9973b5a5aac3032648acf1d4b54441dbf43491a9616cd1d07d8c11c249550773cf303f2e5ec20ee40924021253f74c004495a9a0db0b4b0e8600e1d14912415d1727400edb084ca0f3bf860071e9224a9d841861d4024d18f3ae6d09982a585e5481d6e489254c7a78e3a0440c718a4091abd4813a263c9165e7c410715124b0bcb0f3a2a90833df4bf683a4772e0030944448890232b428eac6c40a34dc7bd2344c891959525a02a6ee0861bc471832d244985a585c50600a8c1216a70841a24a981a48125b0d0021a7c80060a98230e73cc6182391a1007396c20c7177278400e29e23884246d40136401e9c2b356c48c3a2e1a50c8df033387a87458907846a0cf7346a04f8b4a4a0834fa20404452a424f92041d249717f15d1c66100382af1038e37c061071c268083050e1f3320c40c8830833866c0c50c9e9024c93b2c31ecf1ace87b43a3940f6888ca141f4a19a2e23f5a18cf9a21eaeca823838f0ca8902449250644f811031418a8e1070c98000327dee8bcd1249616377ce0c6c60dc5d2c2d2461e6d209124494534eab0b4b0b0610636de6083081b2992f4c51a77ace182353c6b1459a3016b98a881053552f0438d2392e41d968e6f903c67b49d67e96834eef91048337a232f90228d41a47185345c908607d0c8041a7e40e3076820f98106173fd0d09c818733eef871860dce30724602ce08800bc2e082345c50850b4c5a1006491a7d604056888210d188342941b4f00e4b874593e21d96ceecc2235ab25c20d18288161acd27e6c98859259d91e639e6b3a255a2616961d1b0b4b03c67a409f2f90fa8335a961696235bb468f1017552585a583ca12f449e108c90232bde22e4c88ae83b2f31478c287922428eac0839b2327a2331afc59098d76213f3640889793236428eacbc2c179e98d722e6c9d88c3ecf19c16ce8374b461e5e16f617c16cca70711798cf660559a8f80a9c00a9600d53c4ac4705febb9c232a502a1a153831e4470a98301281383f528044926042a2140089998324493f62a8f02386237d60421ad0a8a344d4e1182724d1a8c31d0e28f4e24b86075464c918244985c8123b24490544c44145946042891494a4a1048992277e98a10849e55d402298141fb2a3756f31830a09e6100b13070c17300490a431c44819dd6184040fad121f89a132d248928a08135810ad40d2a87840a097174d113244080ad21862b8073412fd08cd1172690c3196ac4b480165bca18c39cae8a28c03bc9c210c31342f77bcfc0b06fe00ea02280d104b4a1862a8804c3e63d0a8ac921f1f353e2c6188a132e49300174748d21862a48421864b135c462e3125250c31342afb64b847129e2d48638881024f1b9e23ee791ee907195d20a305646c21852825850c14148c411a438c140f280c31342a28582249288892cae847c7111d20a8ecbb74cae8a8293e301d13ce1a344b960b951f9c2770964892a4c269922485409c4c922d48928aa8f31c4dcae86334319f4db2449254924c132482e9cc1dcc9f51fc203aa11d7d603c203392748200d17c3a2014882648c3d1e35f2449faf1427ebc13a28ee6878f419224c97fb818de80f99e9d3f7a0d92d467b403780e4c8724a938732449fa828b3001160b7b86246946a0cfaf918d808a28049a232495d04392902c9124958f1250c88b20d102891392a422f280429b3548924a6783c666c8093271823a9c00071f98ff80527e0a9128f42f9bcd46f49e97cd8f761302b9fc1803458c2f88110331502086120300617c415a5799a01f26888409aaf0c3042e3081074ca02570440998508217499254442a3e127d3a2ea13f42023a90400f123081041e4992ac58b25c685446d087118c6104778ce0043f4600c6081400c61c3e047289f92ce8a3991d4d141a205d885ed6f36fc6726242a0a904f401830a30346000e08b447c81842fc8f822c8114748a12f221a2dd18c44478a1c79474e7e1899c30e8c90c0480424491abd11333cafe4cd58cd7e8c067c8ad0bf7896747eb4a10f4db1218dc68b2844b00811c041047588a004226040113814c14392a40e6f6b4ac76a3e1b7a9dbe72b81cf293d0a9915983b6a5a23ac9cf295e1897150f0c17d3344d2b24c8a881d5524a3d6c6df15cfa6970ea3de6ed9f4c2db78706a55ccf26a7720dbe7eee0c10aa7b6f5e1e5db15266f8d6cc62c7a9a6dba89664ca0077ee9ccddc95738c5f4c860ccf90597bab563fee972bc88ce15deb5ca75aff7fd71ec98821ba63a6e49baa4b2a544b3261580ff9f5e25d70b1a8980306e694c76e2dceb60c4ed31720cfd8d3a1723fdb52e74c931011a86324e3855debb667c7a9566bfc5d684ad7b5f5b5f6db5e2ea837a7f3bf38999f5adf025331ea76b77a4c4ab6b4b0e46bec6f9f6cfc3c3d0b1e9ba9c3e56a352695832383057de8f83167aeddcf96ce5cc1e72b9f1ed7eaf8ced10a4e6e6cb2c9e85329d8aa0aaf622bd7fdf8e47a38e9c85081bd55057bcde756a5d8e48c8c1e0dd769f417793ec65441f3d3c282cc149c31edf6976eee7b0b5b909102bf7f85ab9ecbd9747acc1681c94461ae1655a56cd63963eb9531325090dc4a2ae714be9faebd9579427bd0add82a2ecff83f9df0ed20cb7eaab9a5f03fd384c9b8c97ed5b7f0e5531926ac527339b7a5ac2e9f25c92c8165b7cae958bfdf5fcd9936219015192548f60e57fbc96263b65d45ca909569f26492f0aa236cca5cabfbf36790c0ee964675dfd5f27b1e41215387ef1973db4cbe1178ade8caddf8d746278bc09379549edcae6bce4884b8fca63e5cf03f366c4398cb70d73757f149762604f796c1c654b5cad76e0681d9c9d8a0bab61ba79cd324460608b249e6eacab2a72efc815207df97ba3f9e4a9b0fb697998bde4ef3506fb66515e7931b7f2ece34b90734a749c8346191d2b2f2b25cac70327840eee9dffe695beca1e44c1368f46929f2c9f460baf63ebae82ebfc18eff12730426c383e606799584b17faedad08ffe25e648cc2873c76bf6dc6c1d54dcbe8e04991d38d5b54abd42165f3b28474607522db96e2ef9adad54348141c60e9dacf1532ab52defaf28534753e9d84e9e6ecaf8b2018d42a0222b2e193a7ab66dea268baf4af16c0b8c0f6472e00aaeb98b5db66671b9373238804ead5fafddf3736b4e2be6c8dc00ca0723fbc7e08af399b968cb8c69dabccb86a6491c191bb8aa5dacb16163edac8d71248c952c323558a922632dc6d7ac645c1a286ff5a69cdc87cd5c0d49c9223307641b9f54ddf3f55adedcf31d2c446c64e490ecad5d37dfba5e0655ccc804069938f87d7faf08e5aa7ecd337030381bbe54eb157a736ebe17656466f00f2a8d3b95aad64bb98c0c36be8ebc1693eab5dc1583f6e99e83cfadd674decac8c0a0fd63ee9b4ad6ade73e98cc1b4d217b53a732bba8d654927143aed4c6f2e5f65b3f4dd3d4926983258cbcbe1974fff139229a0e1c0963041936bc3567e7b8a0f27b5d44326b2c5c55ea5abb52ace1abe1fe0e5f932a1f159917349491dbfd3a8e4a31cda4a15cea4a87fdb0dd749b416331d85cfe74ec41f66a336748f6a47c4c49a8cc4d6d2656baa65ec25798700bbdd77bc5d7a0e37689b6da3764bc11f242c52c21f745f80f36fec762af4ac0f9906173f3bd467d4a40b6dc21fbaadc395d71a6c98c691281314dd064120ed5f7c38fad31266793c4e27d96b1ed426f106a24582a39e17290c5a66fbec84de4308184ea73d3b97bd11bb2261f31591f538673bdd973a92318548ea1bae9d2a97eae11ec5674b7588c2d2e56cf08b756e3db85d03d758f71a629344d61982c42b132b6ba183b05592fce348d3edb0b8617268a988a1d54daeba9a59625679a927c3aa2104c7f68f349fc8ab9bf0518295aa48c60b898a6d093115a97f95ebc8388bcc73f9bc527a386492276bdd6f88b5d6b2caadf4c93108fc91e72b9e8224b9eed374267031344782b6c6f1b3f644b2e4687c92138ce5dc893f57bac5a1b42b2a65a35e70e2a750a4df030298493ac0f21bb8aae94cb0d104c08a198a163abefd554b17f334d574c53bf5b61320819dfba37c7962ea8a21349c962c5240e1341ac9dbddcd4f56f631006c2b56bcf392be60d46df232680501ddbf28ecc3d26fb1b182d30f94333b7206c57bf98e4f77e88d0b1fa25d7c21925731f146bc6bbb1c5a6efdff3a1b1c7bb6afdb1efc7be87e52a557bba36b2554fe901725c57af55fa6a5f9f87670f1b6e2be8ac8a413cacb97435838addf974bf038c8cc9d71c5c3957ce660729632bc9ebc5f7a2eaaf836ab045087f215b0d57e44c1319267458195ba9bf8b4c5b7cabc4640e2b9594ced83197ba1ccbc1dbd7f23861e3f9b6bd3828b8de613bf894b1be05876593f549b56c4996cfd3214305266f78f631aed61e748d41a7231337bca96d57bf8e2dbdc117b581f58bea31f5da6cdffab1a1bd5dd5e2736c5f3db63538d9cbf5e72ed677869c691299a8419b64d3d7924f427f9e9c6982314943af642d5d9c2f2e7bfb38d314324103af07a5b3a5266c0ed9e24c53c7e40c0bd9fbc5deb5de84cf71a6c90cdad679ebd96aa95c6cb99894c1e76ab518e4ddff6710880cefe6c3279f9bfe58afc699a6693206b731f6af3a7bce3425311103ab6a8f0a672b259b7349c2c07c9fb38bef1ea73b17b90918d6ee8a4b95b1946bf97e689adee40b3336f5da6309e3b3a991334d9b69da6248155d6c018269f2c2c40b31be7f8b315fccbe15e37ce83dbc47946c880a932eb06d6ac639bba9d419dd3b88089b70e1d7957b876b3eab6bce99a60d986ca1db7afd90ada68b4d6f9c69fa147444a1f77d4e33d1824bb79ec90937c295fa38d324242525b386491614946a32a94b41b8146bce3409c96225e6b5e088360b212b2ea01016d32432918209161c3ac51e5d64b6a25aca480a18295aacbc2c171cd166114daea0b6edfbf75c8aad5e2b8b152cb448c962a50a162e564cdc30b1c2aad3e5513baad6533dce3459f10e22324dd2a40aeae29bcab1bff6f7ff38d3f402b3210304f244132a686b3232f9cd9f62554e04295bacb043133d58d572ea49de06b909613199c25b5239ffba56c5efa5f0d61b2acb6f116eef47e1b55cba8ba5bbe7cb5080eb2d841cd57b51977c02836db23697f9f2a5a23b6175b7d6f5c6fc4bae6e82fc26e15beaa6e4864c70d8bad574734675e69600dbbb8230ae62fad46225a8f878799b3d640da54c028c0a21cbb5aaa56a312281dffae91e7d773d9c47688a953bfb54ee975b6784d90faeb752f5d77b2e82ece7363a972a4ee6da88f09cbb5bcc58a99b6eb121acd5764bbe72bbd63f21ecc6df5fd2dfc3d5b58220bda33e8c4b67f34a20a865cf2e59afb8739fe24c1367d451d2a02da6699a8498fc003273fbb64a3d16d5832b2830f1c1fad65edbddb7f4d58c46366030c983319d8e1983cd6354c838d3b47181091eda5e42b8947ba751b571a669b30125d9c0acc0a4072d3d3a08d7b6e5df2d72a669331281389b3539c384074d1bc7a65454dd7331e74c53924f673fc402933b667cce9774cceb576e6b931dace756930b2ea5ec50421d48f7c8bcadc6ea2137b539626247742c196bcd1e2ef55ee34c93106f99a6288a98d4a1f1e79b3e9bce5dcd271dd229a5739be4c74ef2cc814e0935ba7593197b10728e80469fce111750088bfe1723d364a286090e986cb131a964ecf97e9990236d7203c5b0318fd1594db7b87184bc80422cd3f4020a3918295a80469f96697a5997695a59131bb0f37654f99a176b64ce3409f9c2a406fdfb34bee7587715533450eefaa92bc9db9c7b8b334d31309963f9996be7397b5b1b7d92942c56e67b51050b47b4594c13fb86235a4e16294656aea8e23ba123d3344d9b1fed8a091b2672ec2fd7c9cebd8a2df7e2708b9ddb1575297fb6ce095245ca10202f31473c2f2e1d304ce0f8e91e94b3b9ade7f4cd19b876b15f84733e6e0f21679a5856c8309101548a2996fd8cd7831b39d3f479cfa6df8c9e36434c620059ebe994add9cedc3318b0d814b753dd9a36938a88c91bcbddbaa5caf2416775377857411725afd95c6b6cc3c117a3ef922dae6a575498b011e1e2155dc276ebe5936bf87b6db1b96653d3797b9c69fa74361d305143b2eac2f7d6353e65d3e4056b3d56cc9cd2d926e39da61693349a8a0b99732bf5d4e488c65b1e959c0c55bd64cd4ccee8f75d95b031d6ac7c09714173265779196b4f555c918b16c8f99462bc782dcfd88d334ded718005d37d559faf379b4cfd8b6902853e051fd087c80a9c469db2d78bfcdad9e34c9392ff4c53e88d844646a609aac0b909dbf2e658c9dd76ce34c539829926510a66338cab534ae6b2c1c6992697cde73d312fa09e2621631c0983488c6ba53eaedb77e5a88b334d1e58225fb7f5528d4a467dc799a60f2891ae0eee6a9ddf3c7daea819ea3ce77377e546a29505a356beaa6d0fee627399334d29235d27b5b5a8eda1fe949c69b242e4d8b16b769651e59a8c334d22168aeed6257cac1d4fb75f06ff362b962ca12e19dd0b63103676d1597b8a3904b585ea62f75353aaf79ccae79faef367c79cca95cf0197199f43956b4eb660838a334d9e0d25f97d711ed7f3f56befcae7aaa89c698aba60362397b901329e4176eddaf63a7f57ce3481469fcea63d98cd8b42fbb250d0524225957dadb7b8ca99a6968e63e69c726abedaf64abde705e688e4b07ec9efe2744cbab990334dd364644ac2a233e531f62ea9764dce34a94ce58ecd0b327d2e57639c691af24abaf2c82074e551a57286f81631e2adc58ffc8f213b36e537bf4a27a14385eb3176435658781b8b4dd72aec956aad5aff56c5512eb51e9b49ce346d20925dca771ff27ac80de546f436ebb928d76be564ffabe24c936fd6092283dc6f4d289795aee28cf13efabe5f6dfaba9572a6298818db6eb92f64bb563b9f613c55d1b1b5aeb9fdcdf7e2d22162029e504d9fdf5c82c99c4f976c9b7ab90f46b1a22470d77eec31c591275c1eb39e175187659a462eb33b9f2dd259f162040e3d2e66bd626ceebf538021397274ffb415c3c550e58bf8d67bcea4caa6dc4bc599263dd2cc8fa96b7d1246c98a334dd3e49b0d25992623bddcfaa453aa9d5bbd384960f87df32fdba29f2621a1e5881cc419bdcb155ec49ebcae10ae3827bf9785089e7c191f4f5f53418f3f4d1ecff715451aaa7c7025934f31a8cd9926ef6c84c47c864c53cc675717ad5bdba5bc4c1b53f89c69ba0011d674ba28637c7656cb94c1785e5c3a2bd3e402f30101172d3eb81c5db2d8a646c711920426b139d3f40828a3c3c9de95cb19bd39d3b4058a23146be4e9265beb5dbbd7085e6da364f3e152d8eb3182ad628cd7dad6966aa916f10f597663fed4c925238a225c4020275012e19f8e920fcc0601287b44e7cffcbf7fc6d6ac381c4041c44a556f4266aad462ae820059512887503827e3f5d794bdcee879716989a94224da22d3b40214433c65bfb8c555b161ecd599b3050b2c364a500ab1cfb99dff6d63947121679a0821396a3b359b62b0c97e9c691ac45b6efdafd9dcfe52b5207e45a7dc98a18b4fbae64c5320941f32f8adde4f19db164101046cabef6fb2b5aaff9be80f2b4ee55663c7e45baccb0f72aaaff382ced474d1084a1f7a35c956eef4d6988ccd0a143eb4b5a05b92c97e0cd5f71ea26b1132d60f7273729f1e987a1da37b1bd72ee8340fde627bebb5a95e42762602143cc4e9afa0d46e73dd43a705ca1dfabdd66dc996fad618dbc1999bea58bbd5ae9b551d66734ddd5b4dd63d21bbd06136e62f4ac8703efbd5e615287380fa649c71b5291f2f73393c18f9d94b7da8d041801287e7de8a0e3a9693a9ea73a6e93985c3c6872b55ab82dfed25679a36d3d482f2065dffb85cf25a6f903d679aae58417183b79e3e9dfb6a762f1da50decdf6c6a4ef637a3548dc286199746c64a25f3b66dae611f93ab722ad6d854991a1c5cdc7a42c718776c53f4225a19829286d5985979db43d7a563c4281c0a1a34b27aadf7f95b0e259f8157dc29a15a5229b7bc9c980d8516c50cb29bc639df794dd3e64554054a19a6caa9ffe63f7740608c00850cd1fd4b26e5b2dcb6a21a837b57ee997aec5dc26e62d0d7cbe9934abad5edc130c05d4afa63ac99e2768c0c1430346bc7fb4badf89e73eb41f902f46f089b2d6c161dba0f8a17e08bae6fbd77cf2d37a80cb41202942ec8f5a8d455ee42673ab9b03f5f67bfc654f406df169435c9ec355d6b7957d38253aa176caa7d534d55b3f0db6b679c6cf942ef8685a596520e465d534557f00a507e9ccdbdfbea27bfadc076ae5b0fee8acf0b36942aeceae81f1daa07a1ab4905e896b9a6da7e83ce66eb11a57bbf763af5197fe314f435b35c5241958c67934263a69c47a7cd50a2b03b5954ab5f2a8f0a19052850d86515db73437e562e93a03ca17b95636c1f94fdbbd063c405c509cb2e15931ca74b18dd6b8272eced795c6d3aa8cd98a0b245a9da748b3d73e725b8534b213f84aca974568243f75576edaa20ec4f02ebb5149ceaf53974bf48d0c9aba77cb27b7b1b9bd4817204e94a767bc773bac5181a4135f94c3eb5ccadf915c1df315db78d3d5fb99c088d615cdee29aabe36b1b02746c36265f9710d87acdb049c55e46383d08fb8cd964cdd0b735f84078f15fd78ccc52b7b180051f8211813cad0215b0a0fcc095aa5267a98c334d6674dc076ca92ee772d959aed938301b333a8e92873295faeb1a2b1eaa9229546bb115dd6218510f549973cdedb77f52315f88c283d8af50bade18d7eab59c697ae9844622cf17493a554cd38472473ff6f7abdfd963cf8c0565076be1c755d55deeb9a5283af8e672df39568c618ccf8ee81e6bcc34b2a8d05d43a9e3199c6cadf69a5de7ae491a28743805bf6d946b498e1e9d73c0bb7cb98eb0559f31e5f1745c70a07cd9d4c97e7bcaefd602941b7c9cdbedf1aad78ae9b401b78caaced7d227e19c66bc17d364c687264a0d769f95b1e65a49a9968ae14d8ce7050b141ab06d978fe97acaf18b938332475bcedd2a157d3e9d8fe5d806e3fe94fbdfde842f8e0525638f1dd7541e592382028783ec6ebd4b391b6ced2833f8a962544191417bc9f121732ccee9a0a2c4403605551dc2a54a7e7c305828b517af9f90593afe80a6692504286f30e5966aa5ef3d679a8444d182e2864ef758a372b81da76ace34893ad324f274463011a50df5d46c56aca08b4edf521436623b6bb3a3eb556ea94659437e5bcd7d7beb5341b638d3f4c507669a5cde05458dd8ec2bdfaf4ae78cc14d4c68e4417941abe86083edc9c7edad474963e97bedb2bd53afa574ce3419414143cdd77efe5bc9d415ecf92cff12736451ce80ee24646d778e716b3213dff34dc54b356dbddec204dba75cdbf69c6ceda62bb232ea785e8c9ce0e41230bec693edead38f735a42316efe9ce954ad1e7b1c21589c54024ab974a9d6a5d6fa4e212d6d9c5042559d39d6dba0fad6981d0148c9910e9c4ca2a9ca26a58b2cae928e25b178d75763b231771863249a5c95cd52552a536e939c40e2156428e1ae9b9c690a7d4c888a93472cafa6cb2394afbd5c50081643565070e20839db5cd8ddcc0f1dce46bc924bb5b3d722d4c8e009237e318f2c9b7c278b780b72e4d5fc2037089d334d9b0f6833fa2421d09ca6129c286235e6e06adce6d64b39112be3f28eab374e67e84ef6808de532071b632ecef85c9c2002be7ba99499beb6b72d08904334736cb1d84f2a641855d4056388f72243d6bbdc5ba964b75788b5b2374e852ac6f6cd08c1ce9f7ca7bd514119e3c920d8ebaa768eb31d640c8d9c08826594ccb1e9a20704e22f4e02a1be6eb995713a679a564e00a1f4a95cec675bcebc544ffed0abeacdb7fa296f0d475b649a38a3d116277ee016217cdf20938bdf6708b4f984de8a933e68f4e6f1f9762b4fd538d3b419853aa19128343ae1c3b29a2c971fb7e98ce11e1e4af6f6d06d8b6acda7079dd0c1b57afdfcf63c0f2eb6ff772cf7d7938a07750c2a7c16a33729b9efa0aaef4de6546b97b1a51dd6744e3ed9901d533c611d34ee3b3743a5fddc9c26212e2e2d4c38a1835a5231b94fb976c7db7368eb699bec45f7ab8b95334d493e9d18162c9cc801aa7b5dacea657babcbd984baf897982326553889032b53eb7aaad5af27837078e5e5359d54ff4d4d3d79c39ccdcd19956ceeae0ab6133768bfce67aca52f74fb6d90cfe752668ed9794cf219ad689a469f0ea8c83495e0840deab56c1b15745766cbd7d0d4e7c3b8aa6db9544b0d9375d7972ed5149c529ea42132846e9d2ae79a33e6d020976272b95a3a237bf633b05d6d41edb54bb6d9d80c50f19c4cf57f548d9997a1792d4bf5f5f7a4c22703b727e13e9451ada86d263919c3bae46eeb4ea59c92ed739ac566c58a1331c837a1527df5d4a942b6e4b308bd12d016ec240cea14366555ed7dd7f31330c86f6f69941da1c756fc852899f76267ef6f15935ed07daf1d7c97f0c5b5748d932e348b4e4965f9dcb7d58b8d132e3cf96c4a67d335bf9a4e06275bf8a9a08c8b4d9e4db275275a600f61b3d79c740f2ad89c695233a6098c932c2cfeb524cb7f555fac3f20cf09162674e62053d5b3b1f5f1e40a3ae792dc9afda7b69e275670b6febbebd9b717a156e11bb3762a2a5bee3d3fa1427bbedeab96ce7d2d64277aa8ebc5bf946ac73cfa3a99c25a4b46e954f3e5a9fe275270f75abd055b63cfddee4914f499f35b114e95ed3e9e40c167afdea85e9f3abf3b7942cbe6eb31b229a3d2a59cd0dbab54dcb69e31c9b809ccc9b631c6f95864aead8313262cc67abd99f265a64bbde0640970d7fbcbc9dedcd5627be34409f0a383ce623355ec1d4f92a09cad8f4b57f59471fb04095249b81e7e2b27995479728407a5e486dbceb5f4766204e6399f6abb964c49a79c6912c2c54911e2ce09fbd56cc7ef3907fa6c88a06dc28ffd96af16239f0c613aa8fc33ce9e50e96321b8c51f79a9f9be5b6c0d8282bef355656fb7620782376d6bd55a2dbf69ff003ef9cf6c9fbe92aece074c676bd99c94af3dd7e7d1628c0d19834bbd6c6e444ef068772cbbbbe18453771639e9c1d2e594dfa974f814ff090fa07f9bcf1f844c72b377720743b8bc45d5ede7719f8d931daca79c99abc61ab29babc6890e38bee6984236d9a3ba0983133b18b308a3ab2bf5bf5473e3a48e6692adb6ba3ad5cd96a3f5c2a48d133a5c35a7b2e3738e4d4ac9992651679a3a599ce4a0f96cf0b5c1b864e4973870d677abe95c922dc9ea066ccdc66cf5623132b9de062a97f2d99a37a598c55503a8343a2ffc674f79d36075844b552f9ceed9cf01b77d5b3bd537391d6b27722c76c6dd3edd3ac6ce9dc4d1188b4baac8d69a2ea7ec9cc011975f7ce5902d8b4ab919743f860c9b5ccfeaa7caa0db4df598b2074f62c09cf15bf66b256b6c7b0283a7de53edfa983f08215f9172640505276fc0a7b045e9dd5ce9c375e28673cf313e7d1c2743e94edad8a696435e76afbb241baebd50ce7db9aa719c276bec84edde2e7d99a3fe891a4bee5ccdad6eabd6299fbc403e08bdf954ec98f4094fd250bdd8dfdbd9baf2497582c663ebb9640f5fad777f549c9cc18b318d7139aaeab92f13eddc8cbdcc2f9df20731b14c3625b5ddeaa8d42f1a994b707b8ea3b6a9a6cee72cf1a47cc66ca9930d9f8b95e8a7267c93697ba99a314ab8834c77beb7dee39d6d1251c165934d9671df296646461270b977abed5ab9769345224695ccbf2354aee57348b09f6b4e85db8fa7ae7d84633ed9b6c68ed574f71c31254f66d9cc773e5d6d04af53b15d3e77c9534e46ecaa7fe6e23f36d97d2ea2a7fad6e05ca96e654345ec9b4cb1e558db189bd444e894abbd5e41069752b6076c1695eb3ebb77d83e1dcee653d011b5949141447737f7f0dddf4be5dd46e610b0f7e97acaddb67b571943447e507941b7965a8d77a30c6633ea295388359b6bce15bfa84dbf1102aa7352a98a2fbebfc606c1fcf554dffc52edb6b7722423880715ce17d5b39debac4c68900904dbe566b3291f4727b90142636c2d255b1b59c6d8fec0aafbbd6273491995d70f52fdf2bef6a64ea866ec43f36fb0b9756bbdd3291fb89dd529d3a770b1b67b98cdb5825146752fca5d3dc0d60ab232bfe5a86be5e12d54f231b68eed9aaff0d03f5b3a8decffdb7623237307c62054f2e98a92adb387828c1de6bae27f722aa7fa5f369b20993a6ce39fbedf7cbad50e7ae6cbd04132574d3df9e264aafb715a660eef9652104afe7eae4bf226016d314d4962460eab3df66bb2b77ac5b6e4274902dae20544649a92803c1dc8c4c1b15c72bda5bb58534d391938cc6e92fd62f27fbac74f94794333e7b8a99713aea6df5eb49c229c71c37b9573592d37f7155bce349160c58a4c1b54f92976304c45c92b25fba62668f81883f3d6d4effbf7365f3e679a8488c139d952bda8765befb7cb8f5a3a3ec2f066949239d9a22420cf34f90043bbb826ff7bcc6a2ed6bcf0f8f88273f798ea3ef8b19bb269daf8f042ef7f64dbf6f9fe64bfa12ba66943ff858f2eccf54f797c72a1d48d8fe3830b0e21fc5f0dbef9da6bac7d6c61bfb95e72355fe730eef4a1855fadfb97b1cf97aa19043eb2b00baad8dd565fbba6deb364f8c0428cd1317c8db5def5a2bf07c641eee30a4bf1aeeca8f36d63a8497c58a10a7029f55e6bff67f14105d90ea77bdd1bf5786ef86ad5c21827b73605d77cc9e976b292422bc86eb2a7ccad644e45e19752bf947e5b0a5b2b47c8fcd0b34cd3fcd0bb163ea0f09abe54a5eaea31a7fb84a7deab7717ff9db0da2de9627bfde573b98f26b007573bdef5fb76496782ea932ca36418a35ab73e96c0d89d4a17e34f1f4ae87d90456dcb7caa6be64c13193e9200573674bd10cee5d89a91d048b43e9020e7532cb67dd2c9ddc53e8e20e582cdbab03dff7611f83002e4b618abd7edb1677f173e8ab05c7d93ede2f2bb6f6fc407119e6418979bd5ad379f3d60f818828afeae1d74d52e32c5ea4308932da81e77b7c878b61904f9fe16d45dcbb1bd7b20b0c60bdbf25af75e8bfa037d6aee62b896b5d8fa7df8603d6edf628b0d57cb157de4f18b3f36289972c6128feee6d86afeded8a56c3e7ac0aea54e39a3748c5b291f3c70af3566b94dbe8f3bb8a3c785eb619c90a76b46302e54f8d8c154ee9e53ccbf7abd4f875d403d4d467ce8802de5283f46c53fa59451a80f3be0746cbd6a9f6f3bb2fba8835faea7b6a1530eca771f74b09b6dc1b518734f29e97ce48095aa9390b565cc0e3a223e70f02bca15192f27dd5c706fe0cdfd924a3eb336376803a6f675b9c69652e1a3060ab6352754caef5c74de011f34708bdb5ceaa564efe5fa98432dcf768f412663ff94c35f3b0597c219c792fd2a46c9d8bde870288e93d745085539ff0cd6f366905fbfb56c5d064cce76ab295d50e5c6603a8b4addcb57cd3186017cea296c6fcdb8bced1b31bad95ab1a5d8e374631b3bff26653f09956c03aeb65ca763d16d946c386e77dbdc5c2e37c635e6e25febecd8bfd9500da5187bb2e77232726c2ff0e5547e2bf9969a338d67fbadb1e7d4f48186f26dfad684de7a79fa380346f5fe7dfbb5676d668215afa7e2fe5bacee31111f7c7dcaa17a76ea2f211beb72666c4dc8965b82c9f95adb6472becbaec45c6bb6c686ccac605342cea53ae1aa8aacda9358c9fe9dd76449a87c929bada86e976f241cc3b5de3ede29174a48b4d47e5257eb6fecc947a877d0ddd2d9e0ec161da1208bdaab45f676151bc1fba652d1e1eab81e64045326e7746da77a736f11cb4e7dfcd8ce75d3a708d7e2fcf6f9ee31b39688079d724e57e9efe13af25b2d5d54deb51e118f69c729d77cb3d7547f08f9e45a0dc2a5de10336ebf954cae8e3f6721defcc9585cdeafde9a84884fa58a70ddb7377f07a156c165da6293ecd90a024ae9cade153a06190cc4c6d79cb14ba91a4e40f87bacdb3d5f8c9fbf3fbc5a4bbdc5e05ab1b9e7877d723d255f7cefd57a7d986b2ea8aa49c92c5de343fc56f8a45ae5a03ab68708db49d991997d7baa871895359fb1ff59ce9587e5dc367ceaf10055534e61dc76ff9ef23b4cb7aee53acb19d729b70337e9d3f9bd5987a96b2ae3b6acb3f9d3e1a184aa3f42ef39b8c8f65d74d0e5a094c95fec50fd9d7a1cbaa977ac6e67376b0c07870f36e96c3ed5d9fb0626ff75f3c89652ccad1b1acfd7f864936a77b536e88abaa49becafa3646c70cdcfac269b8f67d35ec373ad1d83caf17b39d56ad8872c5fb376d6f9380dad695b6a4a5eb7cb241a9a63ce7c15b29acfe1195e53d1173f2ff346680687ba249b5079c27eaf0c6d3e75d6e7c84d752383728e253ff746b8b68d619b5f9bcd609b719b896139d419b7616cc9928561e98250a57ad2d93e18a6ea73530ef9a3fb2ff86386cb3d253f2af6026cba70aa8650f1efea8253e8afae205ccd6f71c139c76e3a19156f41aee4956bc5c96b36c55a706dbafef72a0b52dfca578b555b6d1f0bfa66634db28d2c3efb2b387e91b5b7656f2ef55668e6a05bec3ed9f17b151653f8a4c7a63cb66f2ab8c67dceb9b91eca4db896b76eeebe7a0a0c9fbda6dc7cff646329e8c76eef99e28dc23f6616a5730ff23eb950d0d6a482caa5ba7627f709cd745f9ccafab5f9e23a81455772f6f4a9a65a719bc024ff4f295564823ec3b6a4ae09e3b2b78429597b70a96ceb1c7b4a604e6a335d6a2dddd79220e3540eb27eb3d59c0c0973298d8e9d54ebb0f5084fb6e5cdfd183f09758dd0b44dc6bab13b359b6e11a6aa8d0ad5c1c6ad6a89b0144bc6a664b06dfb1fc2f45f72b5fdfbd6da0b21eac27dd225cb18d583309f92edcacdc6549f81e0cecd5993ae2164e61f2ce9e46a43f51636b73e88fe5e6c6db9cda321f36a4fd9a96531e2f1deb39f731b63f015f620f69b7369d42779d0ba9463a86c46a6d2c93b60335ed23da87207b23d63a6e233f8d4b90e7a42c52d1bdb6ed2ed508b4d0559fff184aeeb78ca972de5661b97351dbdad1c6beadf94bc3a07fcd654ef5146c8ee8b03e53de5736b6ff0dada7be9a6ceb51cdae0b1de770e2e642e25ac81542cdd573348836e8b393705e332a5e01c5336974cb257afe63f3936b69a6dfaaf32f82e0eb9d071636b327edb0e8e25e1b7664db619b0c9549b4b55677f6c32908c9f6ba5cd620c9645d7d8848a9bb6a71106fd985473ba741f55d3f8066b3857741c97833e5704801bfe7ac9e607ddfca72b02a08d65ee77467ebad4ef04001bd1495dac1faaf7583f00d660112ac8ea70e75cea01a0066f7c532dc6cc3b4a07c00bfae72e337cd5f0b90190c664ac4dc6a63ac6a70c0034d86ae5abd77d53ac49009ca10fbd9fc3d7a69c8399984d6563f59ad357ce6182357b5ddfd1a94be6e0255cb79eca3175d012fd51beb88d718cdb1aacc4b64fc76e2ef662530d52c2416d6bb2079d8afa0c4e42a343185fb3057d4985927875efb6cceebb71c148b066d560bfdcd5145410122bb6846b995c5257157cc4f27a2cbab6503d37e77344f337b5bd7536027abbd6147c7586d019212794ce9f9adbfe602f62ada6f8c1e8e49acc5a1190b1e74e2df7b7ef38114cf5f13666711974b9877cd9cf24c7d75aeb8788f6b51e47572d1d6ced10d3a5ae56bbdc3a7cf60cb1ca9b7e84eddefaeb2b843ed794c5c64f2973eb1162365df2db73112a6f3f88b850615caaa346a75610ec1cb3974eaaf9ec2f10ee2ddbd972b21b2f03444ba8b4edc3752897fd61cd179773f6cdbe94fac1ed9ccaa252da07251f6b65bfae73cde5f8209bef728aa3843f77b93db4d83e1763b59c1e602b95cfd32d6f5e7950fdaefcd47a92b19a7868e51c6431eeb73bfc53ae2663eced105f37e6cab96acc41afc3c75d7750f25caa31a78393db7cdb7d2e74f53607f9b6e3629febed729b1c3ab236b72e597c8cc91687c6668b2aa74fe91abe060777ea5ab16b2a2ac8aebdc13da5d49adf781d93acb921aa26fd5f43676a55b5363ca74d9f2d8711ae9e6c884b3143d6a510bafe1a624fe99359cf5fb75c0dee2b79a1425530ca4e43732cbed99a9baef56a3430e775a66a99594b3e43737fe7cc1c4f5791cdb02b2e8693a9e7b02d2e838cceebefc5f58c5b92e15fba94acb19bef578ee11b5c951cff7be94a31b8d86f2e6bed8fc926c3a0ab1afa635dfd722318183fb8b01bab9330be2fb4efb5bfbaa9cf159d1796b38651b555703a74ac0bfc54cdf9945d1b838d71619fc7a59ceca7d87a8c6da115748a3dd8de3d6ccab4e092e5ce27fbf55370b12cacd65e934b41d5d76c312c28a79c3f17e7d317d96257d8e872cd05217c6af2b48284ad3dc6f8e4baebac8236165db1d8de4bffa930593ae53a2774d3f7f5707ed1155cac0b9ffe14e4c6f6f8dedd746f5d0a724d7fe5d8f2c7ac3c0aea7eced9bd9cbf8f0d856e7079d9b23bb78a9fd0af759cd1a58cd0e73a61426ef3dd7c92a1ea3681a95d3ea3af5526c86ec83e32e81a5793ba84d6b67137f616bb645195105fb2f4e65c5b6c29a849f008e3e49eabddae7e8a84c86f3abbb7ef12aaa74750c6e09cfade4fb96053232ce9d3b5088ca53e7f0ce7fc6daa44806bc909557bffd4dba543589f3fdb526ad7b2a654080dd9956207a5f3c71984c618bbbb6bca35d50904c64add4de6a447d5fe076f4d5655bf2f2ac5dc07f0154ef62fb262cb3b0f66556eae7bedb5d2c643219ccfda2b05bd45ee41932b7694f3390ff4b1d29ebcdc7e4f79879b72b9435de9ceefed8031d9ffdd8b75337b3a98b0c95773ba7e4e4967c7646dced43774f8baad3a94d355bf12ba5c96bae89053318f33ea8b8df95a39e0a71f75be330527540b07cb4a19faca7903a7f8d5ebe794299c6e03c71eebfed8e45bf0750dfe37baae36eefe651aacd6daf419dc39da7cf0957c2a46a7530ea57cb237a363e8b6651c52cd26e7bee9ee3dc3015b2ab52df2be536f062db6964af17ca7964619b8ec672bdbe3295d42d5440c763e7e8f4cbd6b9350350103678c3de3554c153aa79a78c3d953323e57aa267c4c35e1c6842ddbb7f852cd7eaa9a68c3a52e5d6cbd95933bdd4a184db0e198f4e61b5f74ce3465d1c41abe2b2aa8ef0c4ea7666c428d5fab20e3c898e2c7966ce205b0ed943e9da9748d1569228dd52f676b54ca4b4216d150db605caed4d7ea9b2268e20c15e172e8faff358eadbe40c90494529fca6eaab1e45d4c2856fe1f1b73e7bbf62f3199a9377b255b75aac512a05802eeab76ede18af0d7945ea054e2997207fd5b93de1432259c6a52edf3f95ebde918679a26f18f63d309d58aec3d6f92e035d7577dc1d5dae4c5992622289178c60c791fcbf87279e44c130a24b63dc798c19d72ca199b6ca884d2a57571928318864100006010a94d4000a311002028241e0d8703028954ae50f300148001527e4a8a5238154aa3f14018474114054110c3300c83300c032146558c292b03ca4e025bc561f971fd8b42312d2b699aa1188d0b8a2c2bb070cb1adaf0b7001ac46ea9ae92797950632baf1cde0b778ae8c38ae1db3e06005c02cee2dd52f67ce0f70ba7c2b703fbc0a9a338e2b726aef5101397607b128027e9219886785a82fc381619d091787fe73e961a5952f8a8f405bec664c62998ea55ddb83ea6d8fcdca20596afc95fadd6838702e0f4cf2bc2a06ab82380496330d49c9967e5808e9efc0bea3bff069037c0f3992a6940d5076c14fea3e21afe7524815cfb94492b5fc7f242a94459387304f8d205f5d84408538f4aca126bac50d278f6070bce80ac8bdfd8d55f56a0d9e7273f95d650f584bbc78c3b31946362cda35f41f64a3ac526ba1a80bba2d90e53b5ce1c78cab5382618715c3921ba2129ae19b3a2c8294cf7bf9dcb5d1760012e0d53b4c9949f0da3554ff64c533a4ce0de6059cf80368e56001b8b5801b6bcdc8910ad15d104c8f45f0300a8e1e59a980ee923c071898445667c13d9591c5eb2041e9aca3e0300c13d6e3a3a7b5adec14a1ac4111ca24e6cbcb26229cd95fdfab3e22bdc3656e2f192c15b32e070a9573cdc8dd0c8baac46fc520d0b11e7f1c34fd8c6c2e53a4b7c8cede5f24b048cb73a51634caffeac9b3ad17f2a9068483483a55cdeda6a53e8cc3d2dd042e923ffe8c8928282c4b963c46a627b4915eca9ed2da5e8585118fb459a2a28494c5ee2e2dfa824a077ee1b919ac2de9c2a303c819da8741a187aa6d56a401ddb1ec20d1651c8ac80156e8d88fb85cd50b06f1c2e2644723a80ffa0b7203b54287e8eed55209b49bbb9824d66e96e0b4b9df66d169e32cf346a98b666c6646c8cc7860e50357aef9152ff20856de26b0e6d3f9cf151b65bfde595adb63fe6a79d2764d1a57dc792106a7ff2213a5ad4e6e6fa534a1bc517d0bcf863ab4ce933ffb4c2abb3fcc82a69abfad5abb5cdca2753f163d25e41b8c52bb29a7ffbbbb68240ec5bc8a453bfe0d099469c9fc1002c85a653fb710c0af31809a122d1eef812495c1a8617f7b4404ba9ba51ef09783280b66ecbb5152d6b0915ee679109593421b43d57820a71be5d45a5d4fd561556c8ce7bad41e596250d1add2aa23355bd4e8575ba7a2f295077d0777432a929d613dbdb8a2843ad6f59c2872cdfabe250427fd38a5028cd555de8d803c20f956816965025b68bf75d972f44360403fb8009578ea5094e8776d34e96f3d5fe0fb3ce483a0bd43cb5ea2d90f124dbacc2f6b36cb702cb4ceb360b9e99a71b2d4c7586efb45097a9a53743ae2695e60cbbce42bb3d2c3badb419787a9ed56860ea19b65305356676f7ef70c9083b9dd5bb2bac64ba6c5ba0866049cd2d1da413ec3cab76a3b0fcb46d53e09979bad102d36ef08dfc4458c072a64d9b8677e7a58d1d6635236b774488e46431addb94f0fae53583efc954c0134ee36b9640c60633e09e2ee4846ce35db5f7d9dec2b0ce5ea1b944a2d54e7fd53ccf9e1b22bf6e04dd89129519b2b15237008e1e1aabd8263fbb93bd812d950e922b60df8299120da44b05e431115b421fce30b30f6b313af1e2b8c88eaba459b544323e7d66f10f36f75d0c280797665140a85392298f2eda249a5b8285f3ec45105922e68fca2e895a49913bd97c03ba82ea3af1d14b637e7e753548e7742e4d6d20fb69e6b418951f252f8c893faeb4285ca7f13f2db5ec85bbaea2a303feff2f35709526da42ece83cc3cf0eca3cb9a6b850bd7742d981eac969823a60c0dc50b96f7cad03e35000226de4fd45be66f706527a76a6d2e0e5f1640e1f87245aff379645bbf63286a59e2941d0aec2b3f52885e352098a75ffbb93002cac86902c0596ad32f1f5f0522a8dfc2e2d2850c986584a01c1bd03ab4e9a4a0b782f4eadd13890381ded1b63fde273dc669645f04d68af9440da9a0119911f58de2e5e200435d7d140e86471f811cdc8d3d4a48ff2a9d828b33073fcaf0212767060296bce94c72a43f284b6f4b195af28c4117a390b8ceced44cf2529cc552232b366864a2f74a349197f568206ce1a050e59ab6825668f1e2d0ee46144c1930ed45d8c168d5920fd7ff46e465c8a960230812a6d65b71200196c7dd5c6d3be472deb334824549cc1357e1d9008be24c71519fef7a3a0ecc6988ac8ab99a337dadc8e7bb09e5c29037600d7fef513ee5052d2e3719011c838a889df5aca089abb701c746ec393b00ea0c364bf0d88487d31fad4f4be1d054fa85790e2f2920a108995f5343c4ac84165efda82d906fb6af15776792abc179f409305d26d408b542fa84e7a0310f9e87ffb27b425e69758b53bcf20e7235da0fe530d542f17935857e63342585aa590714d061f2c4ab75bb2f6af5a89bb8555b14e410d4cc742a57fec93f46d487d0b4a06023b9396db6be2e564691bc73031600929a72dac4161d20cd162aaa434744e7da36d835727fdb3d61ac6c4cb8478cd4e34a29574bb18af0cd15811adbc812e8afeeb1fb8e57e233605beb06b13b138b24a3ddc187f6d20e89e4136681731db7ffbcef8f084caae39f6d983574404bcaa11cae9dc87cc986eaaef72babce60ed974468a7022a4f4a340810b3508e0e1a3077e6940db9b458a291661282dc3c6a9823090fb74a1316f9edfa216a9ef3efb6784065ce12eaaca317b5a256089ed7242228937702893edaf48d23c4647550d061f13e1f0841b8015af733d755ca27a5cdf2fefec5c8492b3eb0f3f243469b916a1b4d4a00991f9856395da01b1a50204f6a69282a9b25c6129ca4998d49f61c254d4d9fc148633fd55cffe01f6d94459001ae77b4da69c193bc540e1505a01a5faee27c01211a31ffc780ce1dc3de3e029f604d4990b8103b7d048d1ff3b5dc3c47f7bfa63e56e5539af56ddcff8d190f1f29bef94bc1200f08669c8847b6bbfe8f1c155333c248d5f3efe3f7bb400165649cd4d65efba0bf48bbeb4e5ada62e2e0de3d5743a2863d10ad14f1bfeb4492754e311e248773160f571e8f4a3fd39795d950fd351ee09c5ab13c62d192a780f1d85dfcc85cc7cb27e50f09f7e9091d205e939ad09f5623fa98eb2b46d13beb86effcdb28ab7412419063ddf99f3036ae404a07df99cb13fd00e44f7427c9afca9c9627573069f7eb8e89d1a630d8c5f17f0832352588db2bd1f484e0170f8fc8e82143209147fb4f9336258154eaee43a59e2f0b01f10bbf054eff5f545937a894e6e2ad821fdd872cb54b1e28e274ac0a9349cd9b8a20701a0f1c844efda10baf5de26097877a13e2e6dd7b4ec8627007d02b1b14bb6bfff1aefe2df19c7001d591ae72f6ae38119ccbbd853d42e789731c5a4deab74c877f987ace3ae1e8c727a7e0838a3d52027f34ece0c7db226b9fe462c4a572a8f5589fdca3c7f8c15ffbac4221f341e296850cc48cf1f91ff0d2d44766fd5128ba11b294e6cc615621cc27559ca0fad9bc195bc610fa7eca89591ec98439f7a06da1187a45edba3c8f357929845c3c3ba0f3ccad3383be3d9c11ebe3ca62fd0ff6fde40fdf953d264e3489401856215c789e157ebd06b6638d7515dcf339bcd85186d895c038c8868f1ca94d7edf6d345d09df685dbaa16a5c56aff60134bd144d65d28e7cfbaa7b7e1cb9abb754c14f3cfa43e12c241961a94160e0081d5c33fdcd8d4bc6e2ea3f5620adb08dd4e171ca3942642195a5dcc8d0b549ad3e8db3f9cb331611bdb8dedfc9130816e7cd60e37daeb4dbcdec88c3a5fe316ae26d2b5e07dd9066a59b4c3adb6a037a08b83c95f92a91cedd6fbcc4b81c709117364cfd9e3d06254faadd26940cc44a29585c572a60e66fd49bd6673fb460f25aaf4a2247afa12581703b3536670e6109ad436b85a0627de3ad2cc435714dee24efe0348c77a3c9d5eb3f1c5f487ac6b7a3398653323ac41bb93cbc721ccd4f3f9de2c11556661743fa0a4d8229611205567ed129abc6ec30ed103f8d3b4afa568d28b5c6579f567ed054cd44a394a9e72004ce4c669c17aeeb494e3677db2773c8cff202d5e453a9cb9729a4f77b170f42d04f170a78b90bfc3e272eb0c9b738cef2a089bdf09486abf8eb2b8e31041d8d4883d3f7659d90de17c7d53d9a16bcebaf020e48b07709d2dac68fa4caa76450e9f40c24613f26663a78e9004f93bacd37441bd4815f149bd1062140a409701e5309152eabcec4fd59998f417b09ca7952d0f0669efdc4e17ebf673d82049b8b90f397dab351235c4e918bd504451cdf6298d34f332fd3077cb99ef1ea08078182477744d37c49537d6bca777b0bd0de314a8180b4b5ad5dc7075b500759309022b9c6d7edb053c7797a5f4ecf6d5d28ed90e10681d65dc4803117c53f24d47b0db5b708063527415fd572565ad89bbcd74176cb23784c5cfd0eb680107bc03cd44d72e80751fb1564d68a45651cdf11fd7de990cf3dc78ed4d7349330dbadb03fd06d83e1ab690bdd5759a0a88b0a81d1f4cad1092e3dc125caf06580ba1cc99969c982eb8f7a9e5be3504354a182a2316a874ca54d8dabd90f20f1ec5268fe021e54d13b971ac7741b15627455cae2a7f4df9cf2065e5bf2e227f904b3b3fd107abae5b0c36950b6f65bb08542614dc8876674261cf7fe69b567987e9477871770fdd0f853fcfe9322b5ced8e20d3588fee12e029af9f8e1c4e1a0007a1f7f23a26fe44802f229ff4cadcea61244d6047e496d91fcc07a3c8ad05e3a133fdcecc5f10cfe91100802557ff56dc34a58beda959e18497abdfb3c047d99a9cac49dff346d580001108696fe7b7f2410a6a12308aa8359cbdbc84a39e2aa50bea496aa7bba9275a36398bc3e2a89ca493050e77ecadb8cd433c50153005049360420e71e6c9f2d352a85517c8a6db53b56e3111680f12693be86b551b372f09dc04306c5d2532fcabb6a8d638145324720038ac0e321332d4326537d30e3dc1435a0390fadf5b4079a55d9a9d3844e84e97a5e5845795f4b3f855d74f62630118f59fd98c9443048db190d5d9f19ca94f70ffa5f60120196753cb315d70ec532961fab37a699839766bb8a23bb89e6df32c3b1855e88087f50bcf1ea3e00b86d354dbab2fd6848d64b12782d724f0f711c5b4e9d915e6e8780378cd4c0a89a26318390eaa3a3e6dd505030a3788682aac81b1157cb59234ac8a0f7c2b26cf091291808d8c56849869841a8e5f87e8ca2adee0f38488f721139e2b932a0a71681c0d88a224ee8a153c1882ea54dffec8014f63c406f6e6fe5236c97df82863a1cc9ba5973aedeb19544fd552e6cbdadae041c93bc68aec5c991a50ffe93f375c2568463e681826481444312a1c939a087ab696281fd2da39d38fd9d2752fbaaa90e5652efc03033df33bcbeb1e4e01e6d97ff22f96042df148c29e6b26e379d5ab8a0e4e1b3a8f6f4acf7e4f4c20e06d65a29afb2e0dc98b5c990ddd03e78b005731d2d438b7c426d06c6681e07f490f519c973eef94e1235ac67696711584a1151a47a4c1324a48ec8530c64be6cade47b387e87bf65e89e177ac5feb8a02c97b16b7baabb518a1c92f6ca30a87be06d7847e75e3a740eface9e3dec1bd97bfc2d2856a691a171402cd90dd91ddea1b593ec0635547e169a45ec2a002d589a71125062a34496f92c07bb3475a3770c7600efe139a63bb806923cd5806b710a11f233189f734b807b0ddcadaef4e60ed7d6f7d5a45d1dba014eefc730ab0f1d171716a28f8a223e40edb82d579bdf1c9fc5862a918d576e7450042d84da467ec818de698af6c14bc69d54ca3097ceb7fe91d547e9f92522f0078ba55843319ed5eed8f5a5db0fc767be57353fa0d009f2e5eefe94bb65f54e20723c8eb61c7eee97f28f6e854c57de8e42dee1bbf35f9076b52a58cc18a274b5ed10a3def10299483cb4aa0f3b42c11459c0bc93963db461640948b6e920b21d3da8975c320e77d4bada403aa1301b097be4b609ad78c734238d102b5be9097a21b504a747ab3b954a6da9f449eef930b6fdac4c67dc4d8733f1f75e75f8350e917a536bcaffaa62f83b1e28bdad0bb510aaa4af34e8b5912f5045b492611ce0f84525da7a5cb34e7a60333ea4327ad4629f4ed33e29ab7b1cb584fd9bf381f0808b45ae3cf632bb2bfca989d18657825db15bd5afa9caca76dea1580fa15b17cdf5d214c9d418bb8811a3f816b606f42d2ff7b62e692cdfe4e87a40bd6473abdec65b99296144b5a1e374bbb144c7831fe9474d63f56be06788b328eef765055cf37fe0ec90f7f682a1d3c3d7e6d1acb72b675878d67dd7c5725af3310fb2aa3a02901880ab3c03207e1b1aff37dcc418685ae7b1768dfc43148cbed8e8bb0ea44b84b9499c5386a2e1b762fb1021aa3b4c55dac656a1e605f0804c8e400db86e14e6a63bb526665dca074fe4ebbea69cbb1fd7006aa2c39ad0d4bfd1c343d915c72e92235ac6c15cf5cc96ddd1564337a4516569b94a53492490cb149efffe3e6db01e858123ac7b8e279cf224c63d17272d9926b2d2e5a4511933682975fb79ee91ce28e17529b5aa1cf157e32d3f4933be21980e3175fdb6bcaf5ee462582d9a65526462bc8d7837dae1f979f8dad7ddee42923691cb2ca1b2809c0002c51f9a4e90815bbfced1ad94ffd4b6579b69058133ecf8b2df3722fe872ca9655812a6545776175fd3ad7000be2f0e32d0d96792e5435a138397898cd1fbdfe07bf023ddc9a67d57c675759b8ea9f917e1b03ec70bba460d7d9695724b9294b15329259ccaabb79d72c6ba9acb4d6d3bf7795f184454acdf5bb55b26a583dd7a5be5d95999e751d09f54bcff2c1e3feb576307b204f3494e73d149c81d88bedd101a2c2e7cc8a5f47e89f725640ca31cbc08ab8eb106cbda4224ef0bbb2dbf53955e5b6a2f506fdb7daee29a7e739803f8132edb5d3a60347389e927f2570fd58a7b5714c1ea652a02c9f8e76a280ab0fb398a442279608044f381f8d1fff372afbf5b6b63b0a9244831c55bb318d2e221eeae8114203c6ac47794c0075c7643ccf283b1e181ecf6e2618f33026ce6b491956096c8e34c6ae9570fd4b99ec25088f71838f48c27e5982f89472f184ae166e53f5feb9a8dc5ba1ae6256d0e2ae215df11be7e1d9dd6b725241b3f098a439808c06b6c898d0ececbaa3d37a3afecb04c7c0c22860f768d2c8e021398e8fe99d6d904a287338e3a3f16a2adc07b0556b2afbbf3243ca5c20a74334e2f7c2671a173808cde1aeb2022fe94db0c41dd2be2f95d090285f76aee882e31b22133cbae01cc76de01372b978d1cc9e5bc7cc7f0a32fd6b9a43a1499a4478910e9858d52aa4369918973f61d0a44273421589c96b000610f89b82bdafb2ea60ecfd986b8d57818dd547ff902cd96ebfbadd2f674e5d2ddf92c5dce909f7802a605b91268c8f67959cb450f2c1dad9a39f67a6fd23ddb6ef72057cf9d260bd8912f173163ee4ffd79d5397eb4c7ff18a6261967ab0fda4bdc810c328c196a83064121d2e9d8b7457c35a5e4c48024947b80d88f1b89929dbc69bc192098e02109d39c471f04462a941e5c5e39f870c68a2385db0abfc676d711ddddd77784a76efa1067123e2cdb1ffb7132edc041d03b4935459570ac433e827b8f276f7d888693f5ea6f1c3a821ff5b482767138305aa2f22424e8bd15cf39bfb76d6ea18e194183f30838a5071c34426d6ebb985205145a600f586da08ea190b13f139af56198243b93b98e4117675d6945bc009850d6fd7d5c6363344cc5d18711616c569eaa8e81563ac3b35f6c306fd18de055259dca0eff3f6ea19c0a785f787c79b310bc712a78e6632fe6ac8d521a17a50021219886288af5f66f7c28ce40779d4c63eb7cc650f4381c4728142cb258f0f6b6ca0d2779de4fa47518db76d869f71dac45346afa36363cc98dc27712aff0abcefe560940d0b66ba7df68b93dc8133087a9d24409cb1cb4cb776cab7263a51abe687025664eb54e3e23d19ef3b081326d341c2846c68f072438b4923b644696492674dd9f5e9d1a36aba8e60a0d2c59e5916d65a3bcf8fec5988205f09027a0dd79710a0092192237d451cb88005b992976ebb3b2c71f82898cfe6323985242a7fbb36a6304d18db203084ad5e4f837006418a22899b917c11d2900e49b32d4d54351a0d1fb2a172178f039e541f76b6f0b7092c5ac30eb4ee9cbb83beb08c613affad5c91eed295e568ca9a4312568e8b09effa654db61073cf4c9446a5e2f6eec85f1e319ac5c9de2652187029a0656fb9289d509cbf032ed61aca9ad0e43dccc6b11c6f10bac1f1f058a4017212a69cb7f4b2894160e0b22797fb67f458db7b253edb59a24839327bd077068ef9db4782a091d1a004f4dec65c6a700ec07e7fa8ffe0ce17e8c6ba059a6a9269479d55e33ad88e60c32e838b9d33a0671eb41f811aa4fdb1b81d33e0d689640f2e0534fd076fc130c0cf1956bf4305d8fac3b8adcd004d12a24219378676ad1c400c8db40b0c28c3e40551eba2939c3975e4abca34a629ce6a4e938b164ed655ab6c36cbe1524b8a78a21114758f3574a82b040f5683bfc30e63e201032a2278791e43806b03b5a37f0f945969f2c00506860c989143273643069066eae11b10a484d58ea234c97e02662834004779898a90f115d59a71416574c092e6406a32a62a53811c53bdef9120d8972dc8176e8aea1398bd084a70ddacb79361f3005d59006716a4690d10c004411b4e420a0c55a4cd7dedfb84c146d6cb068e1f8062f6203416cd262a81c8c9a109675991e41136bbb62ca78c4ea6fe9f30e9b0944afe240580aec297f3b2a88bd2777446b10d68e1739d787bd6343f2485b664fd976b7c735a6bf3b536a28e6075e9113b2f56ff5ffb8b27b09d5596c6ee12ca3e5fb2f0e13aaf6872632a6bf2682548454ce6a00104255abdd7000544db8ce087b8c124ecc7eb20a697355038fb37cb3d7d5c8f8b327afdeb90572198307fd30c102a6f66f1fc875bd06f23f82d9c6b28746516633173e7c74fa8c605af2185d78f1b2e1a263f7b96938065f2ea840ffff6df51baccf6257aaefe174b3c5e5c3663023e93f44756b7fe5602045d4c2e8e176b8e4cd336335d9add56c26b6774c5ecce57fe397ec5db3d7a66df85403a9ea0c11327c8638f54c35bf21d7f8d3f2cce9bbd20ae61c01137af7bff2122da4dea43c40a0a397395f27027991e1e7f9b11086a14159694c382297db4ae1a7bce76400a5b614ab609f54f6c3a6142c2af9df58fcb3b5bac268bfa5a38dbd204f0a3bd2992bc1dccc385c6c6c649e87bf65f368cdf4e3ee55d2780f5fceec3b005320f697708589755da0e99f869965c46869e8fddd6d1f8518d649491a2fdf2fe63f852f57d6121d4e0e97675e35a8ea6d1c68b0a9c59ce4d7f2b6a08e28d0ebe4f281a1016cdd24c14d12b7ad12d10f94ad10646785ad7c1ce44f30e589afd789b19cbe4818423df77b68e706ea0d9cc56aac7f76ab9f6ffeba0df96dcbd129d71647aadf0e1ae03da0ced85b7df640f4de8b4cfcdaddf782b7b3a9000c640f3a10f7c06294f3bae6aa0f0d59a6adc7a829f611ada36d19c2fd42b898529187529a0a007e9e5482d58775c47aa22e80a06805504152d7158e4ecf844264b33a4a8eb0f68c093ddc94361cf5d2ec30041a106154d6b54e94466d1aae35f1dfe83288b1f70cfa2959538feabce685ba82ab0f72999ced3c050b60579cce8623d023d635a111cf48490a8a56c19c80f7d448f3cd952b52c70dc3f1127ff9d3fff74e6ca1d2827fd5e91ae3077d58e79a72eaac6f7955383f9373759b67fac6f8c9e78c2d3a9654d6b92621a21f620c77d7821292915038bcba46223a4763cbd8291ae96e322dbf026d684775a49de6af562db9863b6a4f8441822cceaf5046c1466623dceacd5a889d03ed6f267326236e6c0e10a70caad373962359ce871c20474953bf8427a5ad70cad50110b1cee0e88bb43a469cdc528494633d3c22a1428dbad0852c4e78aa08013543b99ff530088140d9196d61ff2e20e114997d07d6c12e756221784c65184727140257fb721a4044cf5fc79cdc7c788b88d9a0c8180422c7db63dc03fdbf90c70c6ed5d23fbfbb4b988bd4f8d2f4c2b8e9fcd2702404454ba7c4d4712a07005b3599a8b7c209b74bd08b4fd3eeb49f36a71daf442b7884085625ca410c2d723ce08087e655efc11193551e18026ba06d992756715db952408b8b1e6bd9a8a68a099296d28b5d318c224d85ae31c0982f400ac4ae187ec41ef8f11539039366fc4b132469807152cbc603890c6153c35967904021791e5d476bc9a8d3ef1d076cf78637cd5b5ae60991fa6219e98b70324282f8917749265a51d938572e5dbf69ae1894b9d8590a532fa5b1623216c550eb1fe61f089f660598dd84bae1c13841a8dda4dc42e17437aca8cf78e2b31159bfe24195324c55c3891be0fb44dd7dae293e594d3680addec2059f359b8f2b8bcb00a5043fd0c76349d9f9ecc20bdc77c9d8c797d5e5a41d6c4fc3ec020c60f4dc8cfd5cc9761bae93a4d0101abea04d9749a392fce4f60bb14c00275a86e0332895b71285f32d78b98dab11ad3ff01267158394ba37dafe90ab57798709c4a0cab37faf803586e64d27fad8b8ca129f8a8a895fdb938d210eda09f7a886acfa1a2ab93623955e46d32b851cb4b1c25f856a26d27ce2a18a1f97628db21c60b60808260a7d8cce8d3f1515f5ad55035258c8ed9d5df4274c555bd000e83ca82788c59a507470f32395f8cde828ae19620d95003519c869f1703e2400b16078fd6de9e34d69cfa6a3e703902f182df8659af0e3828de5f969816c0efdde01e9073352c1c00327f1997df8194b98da385260c0245a1c8480f71c239cf87825057518046ac4085e1c7d167aeecf210da34e8ad35dc58898285dbf4df439a2ce6701b11574e6edfce038e567f522853e24d113839773d3709ba32325576b0deee2b9a584f70a168ca22ace71cc36927e64c9bfe5938dd5bb827d08b17550ed0faf1222de4ed87c41ec51dc31f63c93c5c77bc4da490a027af2e15146bbdcc3703320efe3a22586caec4938a4a56d67cb278813c82d74cf7f26de466d192051e202c822a46bb69a670eceb265b6163557be63e2e7768edf20aab1c92963bb324abca2378cc86580fd3eec0296338b5896e2c234e4fe150f463c6a84b7c38f99cda36f5eb1a8fd0ade44397821194fbad7311da9ce16fbba231f0c45e2dd192c0436fca06d2c4d96df35f28617ba702cc1b933b36a965a76a8577390bc304cf9695f49783bfb67e9756fce1caa03dc3b8cf3454f5dcb873a05b4ac85649a8667e4ea6e329f7db8aa500c3ad6e694a4886a812bb8f5b2d570a0a179b5fa6656aa00fddc019511741c4e8a2b7a33abc5124dce3e188a1c73253deb77d296ce22959f2f0a8ddc04b552653335fb61e305abdebdb4a11e5d4045838839fda274caad558410932461d9a62fe3f467325ec06dc866f2a3ae2a6d0127b7a5c3d7d86c1717938476e516d4b861a98c144281803bd11ed5a99b7a5db93f230dae9e338f881017227995d9d57d67a0a9198db8c69481299535c6ac9797f618112e1bb813e4ab412e2e2bf25e7f7dd4108d0b7cd2591b06b14201ec27a0a43cbec07a2656808ab7f986f175e3ac16c1f4568ab0af8916f1ddf1da05726ca3c88d44910775d7343357ebd11611b8bbf8380d9afa160398ffc20c7964f474070a7ad7f714d5eeb96e2847837b2441fa40c9dcc02b7ffc0bf82c89c6b807244fc886680f9233f69e6595407a8485d9ba4d97d6b7812f9be9e94f925d5e073d61f1298ee65ae97a064a0328d686e6833a7d8c64bc1722be975cdb9e296d2b48cb85c051bc05a772e6f7ba6c0e2cc8da12b8fb083b68bacf934c542a8780648015867e654e5e1a9aafd65d85fb094054947b35d0474c6d9e1ac308a613d75efe1d448e85d7ebd25d3691ac183e4be5e3ac3bf19b840ff92b5f4db139080f3581b5f3e16a948cbe007b6bbecb62db43338e2da307941e77d8eae04be91c08095107ee560ab5a01238c011c4b05962670b02848f1140bc35ad74c5b76a48d6aea03a89972b3e328b88d4e26d119869383331bfb663ad3f97dd031fd3e80c524d3d73ada498224c6f0e3e69bc5acb4414efdb74b86945b5c842f43acd1a48559c209e2403acecf3240b381d4c3ed806e1a92ff46c91f7457c3cb3e1263a1d725135cadbcb01288cf8dadb262d99e2d86c6e9e145e5b8d661f9a54b17b7fce992da9095a50989738c8877270389d8181bc82972d0f938484528a1047d2b1ab230ecd9b092758e97e253c5d0712ae8f58d2b76f2cb581b5cfad92c0432ace006b3fc35b5fe12c52b292fcdc256500285ea0f9f45355a23e56c0925e9c43c301ab097e9185592af36f0575823135f34762f3ab806f88fdd8e82431baaeeb755c7d422c4205d1e82202cf414ea4741a217abf2ad80f3a350620e66be261c655503e368fdefe42183e91e371a2bab90697deb7c7123b5e913acee0ee81adbfbc568bb15c465c6819afbaa674830a62625fbb5dbc4aaf24161bfc0fc8705744fdf5e0049978136a391dfcb19da9b48074ae11b33cc7e9ee5f104fbad4c3a9ef8dcac3d0fe2d2e16564128d3665aca364c11bf36606cf052bab82775a965be58a2b4fbee7d781957bde72f3cc43951959f94e3b365fd20773faf6f44c77b065d963965bff21bc0181060883b116b7ba2d7ffb00fe1f4fcc7f4fb883d00b40a2436a7249b42ff7ae7b02c0841d7f894be978fa8cee4b0e7ee9d2df4730b75ec0b1840cbc4e4147de752cc3be36bc74d8021a63736d3ae195b5d3c9063bf1c3007613d6e1bfeb6a6ce82ff57e79c20713d84f4ac8cc3cc2460a2b7604dd7617b035abfdd3cd222486319663410c6af38584805be63fb9f5253abfae5fad3ad12f2bd065878f820a35b44375f41cd1ff91f5dbeb3b7f6920567d4b666e6785b289f2a3750d714cabf6e5a8ab2fad48a404773e03854132655407d82ad4bccf8ce8c73a9259e5ae580050682494b7e8f8a4052facd478fd2479a52a813a26e1758578db4d929b5b960d3ecb0c7b18c670bde05241eb1d7fcd75dd3ed8b6fb27c25d19a48fcf33acb1bbdf1a5c005228c6d2c20bbca1b2992c5ca607291a1188d160d8baae470d6f9717b148d02fb97af1fcd1c36e8932eeb14b9c999962119a8273ea112906c3a24a849da263d0fbdb8d51c7f95da2326f3e59c8c21084432108eeea3c4a7c60c20d88ad63b5b04648d421bb439a89bcdb746142af8dc3429ddde1662929e1f1d30051e344e7aca3d32377ff41252f80342300a8504a3694e909aec60c2058104af415725aba225564b3a34c36b3cd8015d6360baf440cb86116edb9c062bc01bec9c7205e1bcf4238684945da7fd24535dd4b209f55499eb04525a90886b0d4c49d96c47436a447cca77442a1c9613b181d1166e0cc6f8ee11815586fa0f96e094cbe773107172eb292f4bc1fb76dc5a8d3ae901543317163633427cece9f515f9595362caefca4b51e2e4f051b8ce3689fe17188350722382b536733ac97886edac002e225c203fbc672198d31ad018b2ff838a46ef8b79ae1284da92f355dc27bff11a1b5e4ef3154a1d0b50694075474de33c6b440990b16a6bbbaef1933a182b5da677dd4adabae0c54c28ca46720350d410926f6001dd9947b44cdc3c58750b1375330d41fc7990d0d854e93d371eaa82da2a38c956ad4c522eb0c540b2ba2cf034a7104e05bfdf3939b698cb4a283f8beac7e5e1ab0b80297aac1025bd6527b80bc1202663e35c667c758cf881c7757303a743a8837ef44b56a49ab55df868ee9f41e0956ce3c80137857c23d73dbb54351301e8287f0ab12613ba79750464f750ef7038104d773eb3d633e0d8a510bac2a1e23a69d8d8ef4bf4a0f8d4b3713d4f2d63e61b1c8a8014537358b47d94f3108347e5816618258b5879adf507b32e80b1a0aa53de46503de69e7c4087a2644faba5ccf2895c30c9ed9a1a3153a9f614ff3b78b05a221f144a0c08b7d462f4d51a8a92d6e0bdb969dfa334b816f1c88578c193298129e26743f29dcf77e196270e6d093f56de30d07716c7f6634b90161e7cd1e6bbe777b503886cd6e32c6d55ee2e2d21220293bb6a804c683c3c3606ba80ba6be0e5cf827b154cd3e6ca18087ed35d2892cc9fd541624e2270c445d07a06aebcd21d8dd640a566cd5bca50cbe87b2b11b8cb205105fd154f8e8af9bd2a8baec5f0145b74e440829f8da0a6e49f70ff5dc00b8081049525a53ba4869f1e9efde3d68db239e1e2c836ecaf30fa1cde780ad745483074c4ac036bcf17ab53401865d48d55411a099b2396671c9edd59f17c72f8a3fd16b1797856908a6579f1df90628f05616647f040d639685007660f5d0cea9eaa3b0fb540b566daf8d03a86c4ac31629eafd2c948b600e25ce6976337cb2a11fef316bce2f989c4513ee0495f2c79ab5a1689bbe40d56ec8eb8059d903e7a7c17cdb5854b5096c577d42034d7b16d5c0cb9d094b8be892bc15d788c9d46f2ac1cfdf3d88346d3514346e0f1d6b11a9c254e71642161e440ac84f099a3d735dcabf01b02eb7b9afa5bff2cdc3039caf4b631f61d23f1d9b9d32568e076000266a0d610e25d337d154c0cfda876a0c23aaf2e9c0dd81a58cb6d3df8911dc86d47f6723b310f42b226f361a3c0e958f1a0c3e8355180169e7ebd272e8f3511fc9d82fadaabe2b7161e56979ed2c88b0a686db58cd48d01e4cdbb7be577e78594443f29541138b725751bbadcd469762eed9ad0cc1b86adcbae4db6d8aa26b75358eed48018b11920e4efd28bd24a16ceffbb85d1decc1d35d9499616f1a405392c9c67e37fc460c4b1c57be3545b8f35416c2bd32066d525b1ee904b4bccceda0dc7e75232272de8053aed2a248262410c2aba7209243ce4ec4d54411c4ea33359e43111c37e39d26b30de9699b1476571fca8b2441637d801ee8480d549f51c25ccac6e44b3c432e0538a2481f935ac92ee73699a271eb8b1316aeb42c1cdbac42a20b87a638908a2422d71737282627e6182485bd87283cb05a70ba7dd3cf691dd7c4514a9ebce49434dd55fe118edcd92e690afec0a8144f20b74d9fbf7ca6bcb1435e6d7533e6e52289c0a79f80ffc0e42d3b68e695f9b2a477f762d121b70ffc90625b432df4689c777361e419e5f040613dc710443fbc38b840e2d60fd3b93dce081d451c0883fbbfd72dba5cf265619042defa438e032fb6e073fab2a41fb197a5e1f80eacfb302cf46a0b03baf5c42b139474be1bc6b70e0addede69f29a8ea5edf69e4f00cf47aabf62157e54442e78fb4136a50c40fb6835104a4f2f58b227b805b35d9ebb58b28d39e16265a412326672b272e8d095b9a91ce4582cb8a89067b020a5eb9f065a10ce19dfee0787667ca97e316588dcc04fa2a9e3d44ef748f979a27ac0a00ab9905c173f44c98e59ded9c39f23cf2ee54ed763d818c7d3588b4033065365f1fa6bfdd0c7ffb4986561649690050a7f8c81840e5d8920afdf28c2fa69cb46ac87eb178273081410fdb46b1d331a42cba8e7181c487e115fbd577a1b7ad3f7ff118a7360db592496fe1add59263297d4222ab5f9cfbf605be963b9e60cd90b001c56f868b70681d941ce7a8ef8947a4a9168e8e6bf8644e52f2f43c86dd2afdf09cd8400cbefa306b8b0fb402d0e0c1b5b456cf5d70bc8e49aad307497c4d34a40b0e6fcdb2bf39bf20e07a9117fccd15ee6f6a5da2e2408400190cb2637faf3fc16001550a75bbe291153cc6a7f43f6ab18d672997423ab134e07a38200901f9b75b7c0ad32625bffb9856ca428fc526587659c60e209754e41a893322c038e74723c0822be324248130a464610bd7ee7862555b7d20de75aeb5332474a19a497ea85f1b25a2fa13f849640ec3c56a4fa5f61b998fa518c2a2f7f81c83aa58e39266f4f0617f115a51411e0a61fe719545142316e0235096bdcb08af6135d87fb1db3eba19910bd2787bb3e55cb9b73e75559b442166c9ca56f18f86fc0187a34782281f9556907dee80337bd96f2d8c692530d7620e4ac69f1643dacd97e6d593293662c8c6ed781462e0c34fbc11d081e5f81cf22983842f35f93b94ab234354d96227fa306006632404c290b836cf1207d829b02b372b4bf77fc9e536af7f4536a9422ec010d4862c1b8b9e9ef0461c3a4210f23e3efbd15475c3618b0f025eece308a2699a353859ee6c68b16324c23f106bd98ca661309090c9bfb4ea182b79792825e23ba16f1bd1f5ca82cbb391e30951c9322003dc1af43e26dc390f9f2cc305c57e486023edb044787070aa36618ecbfe62d9d45e7aacf3d92c25f059175e83a67c7ee607eadea1246f6677cbff2a06e7f63151d3ef30004f8c8d609d21a230dd165310f58e5d8843f77586d20524416ac2112a1823b171eb29b6590087c6445f675eaf6c6fb1c1515d8b2166aa1c1ff85005e93660e4821257c5bcc43442a790423ff4fa012b985464d744387697e3e1532e27060e3d9e1ee039f7b23479310a082dbbbc3643c16c6936f76dfb8c2755c9a3dc957445b46a80d95fc3c3eeca23a8035ee4dabdaebd5e47c7ad1c0ada4261b63d1d422c6b3db7d30eeb0d69077da242210e09a2a2c09308ddb16f28e134820e87988bbd36fdf8471ac2763ba518784df8cd220d63f7982da6207fd97af59484ff8516ac3c091dd9e0c61c3c8a0faa7713fbf83820b1d9cba8f6849552de9d82d61c725a59a425d4c0f1cd8a8968b6307323e787e9016884442e39d5e6f33c9a55929368aa1f24cd4e0b4895cf37b8726f2856451b37fcbbd2ac40795228b4e2961a1aa93b0feb22cf1306b26c1ac6a9a0b565c3486018d106f81440d5a60c187048fa9bce8d08fae979f3333064a5df8663bac1d17e06ba905c48e8eb0904fd711959f498390d8b07b10dc2fab1ed729872192b95adb6b82f5a9e28806f116ca3e526c20c45d4c313cc3d6c2c882ab400d975fb1d1988ca2b77545cb8d12beee81666098e6558b1643cbccea72e1ee5a36a41d8a4688d3c5764075758cb91b1d9764863988184c740ab5951cef3c68bd8748f62bb909219982a67da9eb12ad9e6236ce2c215134038d83bd6286a296f5f7cab62c1e5bae9dc07e2276ac07abe41c860342add6d79e1afdb864887b4d00dd0c8a2ac9b66752f204d828e14a9d843b616fb6b17713ad259a61bba508ea3a079f845a4889ed19912f9c23a8f4bfda910e723bb2a5d9df412e3989a526082ecf451628f9bfb621dd543db3f35e0dbd23a735a7f44ed0875a80769fcb600d4e0e7d4baac881c5b542fc930347e0fa95c71aad1e72908a69f25a9b8eabf548cf78f3b6e30afa50a1e8a9518f50033bbef2bb3f996d49b2ad114925bc710d03c337e0810d6ff0053e6ae024650d91750f97792079bc368fc3cc6118d30e7586f803948fb11fe54e88ac5175fb7f1eb472c6a5d82322f0dcaa50831a13491828ff1158d85e0ee3844bb5c6270493e8cb8a010392aaddbb201c6a35c6380c035747c77d5473bf898a679c5085bbbe4acae1c9c9430dffa6f09553b61129daf966677560587a1ab9c1ba3b64cd89fdca036a82b6d8fa8da2e5ab3af491f13f3a744c8209c970612d32e3a3998d67c27389651d244ee4027cf184f3cfb1a9537cb9804b90b28db4a1a222b40e7b87e1b142ef68d6300d315a13f20b2f70170a085af7e11cbe0ede7029b001fedee0fb8602848473248cce4be7ccff059a8bb5075515068a982c9e0f4146c013f309aadefd154cdfc7391ab7bdcc42d2a674f5c1f1cba26d82866ffcec100c387e9b215e8c722b3ee08595f258ba205a7329af1b3a1d6966434d0728a9e032b56f031cbc37f8afae1a397d16bb1650677f5a10f84b8a03fbdc6a67e61aa2a47b6445921c125711655a46a60d14a00fd19f39c98f6697e455e501484a63adc33c2f0590c788bfed6188be106b4de7f43df6619cc7bd327c3c05e6d8dc4039bde832856241bad280745ce89b69aab79dc3251a626231b400cbb1de89d54a11889a7d0cfa417db825c08628ecb3772c650fe99a5937b03668cfd5b092ee9d94a5703abad403dbeb24119b39028797c1e683375734ecaa6366ea82d6c4aa08f6a1570046a32e559afaddcf6ea752708af34615d9d07d8cb2ccbf4cfea7316f3d7bf6dc5ffd3d88c71f8c30acf551b5a52f9cba308d1f339d98702a23f8be3e44bb50b3e68b17e5552f2671185632f863a7dc6e576cf562e88b9e196fd42dc38b8c1d0d3c4bd4ea6b68ffb263422281206bc19b202a34594952c35a7ad5d3221d026d66f292b4de97a4ad7e2def01988d0785e1dbfef8bd8d6a242ee604234b7a87cd3c7eac4250d04deb144519d589f2e519100faf64bb9376c4e95375fb00af3cf2605123fd079d7dd86d443d3ba1d7319af14f77a5076b3920eb30892fc71f991b2a8db9b13ca0d71d3d4917baee1fefb44ce39f78ba8ed7e2c57fcb80ae924865e95f10f3cde2bbfa69bfdc17fc75957889ec66be43e6590c76b1a6ab081372cffdd399794a55e620f2cd06db02a24e255ee4779a965d784fdf3cf10ee44cbba212dc98e84be2c52dd7fd8c4c9375ef362d38f28dd74169449ad5526f68ac3796fd706d7f8a28041132098d3704bf604fda5fdd4db8a33a4282138a7765eafb04d9b2810d825e6b090518ec33edf5c2768fbe4df1a394ed2dcc67ab025dfc937a5a1e6462042950ce679e44207c31f26180e5e82ed4cd3b49047ac8710a47422d70cab0f69f9b104a77c70e8bba3da680d4efa818293a05ff1b7464bf28d36f37828951f460e38652d818fb905b87e6a8653db886026fc054b5ecd695cfd56e71c96b4eb9e549f34ea5c5bd555034d6c6ddb93a1f42087ae4400b53aa869d63f2e71162e5bda26892ff2042a698c00e7b18a03702ddb2e85ae9119df55a667e896c4cd94b042a58de3125cdddac6e8d26208e3019310835acfec788233a572e9ed09d536b30423fe7c5c9b9d33e4af62a8da0fdd88d8d9455c569495e886acbbd1279a987965ff3451b4c9853589606bccd8a46179a418809b034dac31697d93ff3e89d86d42100f88772bc281f4c57bed56479b059c21a583f84dc61532c4d14baf43cca1cf2e470989173f9283c0448cc41707b7a2230b47098b177bd10a26814f24c361098f3122e43e1e379656c0fe8f213b89575ad7c61645dcee90cb24e8cec5ed17dcfb5e882c56d4d1da74f4208a99e57f6de479d964e0046692f4477f8f2bb3482a9d210c00e68a40665412d34b2e48432d0a4a6de822d1ffc9d1bd47ca4f55baa982617c5912aea71dec12c92e36aadd9406b59339354bd73191b62dd1237c2e43fbe5af0d1b49074d9e5e8cedbb88e293cc263f08e33593b6989512a4880d85172b4916e46e6037ae2a542eebb2689e4d8c0c7d167c2b027b77424f970769b1cc4d04d546488155f5e989f2ab9615908a5e0d85306194b324afee38c12521184c423017637eaec556cee4f78d7f902d77d0de3e2f10cd3fcd71a91efa3761b32c93b029afcaf47018bded330ad3f8e29842b641bd7c32fa74348d86625a41eef21cb4033bf713b4010c3b751cf1508fe8b3a0317a4f12b27572d159aeaf489a5c44439cd8d58d0cafcf28b3786df8257a94fc78323ca69a96dd2e684bb4fc4b76be3d6f8d38fef86c3f2191a3ada47e7f760d4c38d67c1f86dd891c1db126a188748bd129378a439617c6d3ef8431c0b31d82a3b06a9d1f061579d615d7da089d0735ef134f6de64e1af37f45795e28fd5a24b3850dde2575a989694a809d1190feabffe3ff072f2ae6d853d06e98e11340475f409529e3c0b17f9a45aaab30175afbc73ba6d399050a65f2e4fa303f45f0d420f4b1f43963cd08029cb010ba81373c89d11a3d4a1e6e7ba6b6ee9ef638a46567cb7867bbc451b2f1753fec92a4fb3264be46c6bba107407ca939de4effb0a23f7e4b4b808905230f556aa1a182bf6d8c17adae9e76402145259cc761fc52cbea3a55184bb0ea0a62b9bd2ed7f37d5edf8af18005cfc2898c6d760e793bd7c629176806dc7fd915064f33cb2f8b271fe99c2c997a9aa8a8b646c473b476fdb7eef98d9689697cc2127f13afb28cb49dde087463ff280e0690c380c0fbdc077ffd7baaf76d791f2b6136eb20d97c4320774ae9e3c6ece292862218469f0ea5e19d57e43e5706531331074a64e071f4e00309d2fae0aeb627590c94ff5c723d39d1479a9f934cf7ce3ebc42a8d6b79c89f1a08f15cc6e5f1475b5baf322e73c7e8f0aba6cda0c533e939b3787d90f7746865388b02573e3038a7f5c71f9952522b91fe824d16a819211e5151a19c15b6bcee9c33c6dd2bfa2b861fe1b0806b05582ebc2a02af3075cfdb85d830d27908567f41b97fd08deecc409b25930e5e9d4c21f941e9a3c63996de79ca6f92cdebee2649ea22428e8280d6a8588f25b352b05b7e87ff44a117f4bfcaa68265b47d392121d79f9aa9ebdb8503ee1150761c8886fd1f9c230633868962d06b5cddf754de77452669b16bca0b1733cbc1dcabfd0009e29a4e2b7de7519ecfe4578093081ce658af27fa4a30868d530820c1943110f95ae54f3374095bdb87150d4f865ef09f612ac18e6850fc1c0873b57503100f4b50964d01ac4c7a39d965490a558bf81550601c28e3c1cc8b3db6838f1b188c0e534c12ec83a1109bc2f68e461bd6fd71d9f9731444d2bbdde154b5ffa88e17aa2f6b0853d86162ea2c6b879be97cd606124c45a2a846fe112589a801c2fe3a525a217dc23d26012d6b649fd4a12f707843d0fc7be0514fe9990f17fdef98d07c62f487c29cb8e9eb742968ae76ef0ce87cf1c14e6a91a4072cb35522e2bb0e157126d9daa75178e396a992ec4d8e86df0bc8449700314f018093a062dae3405a0080df0f9c7d1e10b6bebfa5f1459125b7b897c8ff32793648e8d6cec776f0f5e71b4d4d108e3a3836e618f236b051ad9ff56abd0e2e08e14e94a263d2531c9bd96262d4f9ed3b5d6049fe312b3bd1f5ecd5eee0752af7454fbb02054538a08e873cb8000e3a494d15ee362d799767edad21e2a85c1403de11956ed788d86c2c8db4ae3e115d137793a01b328956314d876518970c7e901b9f90b865194a66a6bf0dd60955961f6df5352fede067efdaa6fa6eab691e9aa9813ff94b1029a652779226beadd60a8d2d21d805fb8b5aac79a86d36395bf84edb006566b836a1605bb966ed8362e74baf62b653024d4c76b4ce8c5d0391cb7b108128e624db10719cb034d921d6b78a49fd2454c975e67f78936857072321a212e1e69573c14124ac9f3af035fae9d864ad355e7f14c8764c48cf27f19dabfa621e272a7a3936fb039b60c67ba2391fe5b30fb01943f6372d5937b99115ad65b6f9c6ef4e7177f1702f90a8a7763e11568325bc8b2c79de6e9151df0f081a7d80e00b153fe9ddac4c904e0994866cbcc3d5c05aaa30d0ed7fecb878a32fda68297c58b00b4c6c328ce9bd40e72403efbfc835144e13bbb43e18d05f83a00d662fa4b32a472a0bce5c77f414d0b0762c673040ebc8ba55cd109352abc78bc3b07d4899d80c4953e72e96a09807f48d7410876afefb518e01f8e4fb362c32dc328442f3298f5573dd601ea0ccee0d4a76b4f14f3fd1f584bd6ba7c3e0f9fb28b7cd27b8d33a6bb7e139bec41c09c8021960dbb3d793bc1f9fe9eaafce5938e4a707b4504de5cbbeb2e6f4cc9987e42d26135fcf297eaed90e9b5a836af0cdfd6e3fbdbc40f9313d546afb1f5d664f1ac51a1e1bbdf6da9e6dcbc3a89087b6dc9e00b3b5ccf288f55951e38f0473cd0507f4798444bc96bad2475a681f733cf15608e90c95382d77a7a22be9acae403db0db7bb10254dcb557b2e5639f0c414faefb27843f1b8d6215525f70dfe7970ebb58e2f0f92ae9a32a06580b593264e4a7e5ddd349889aefde488b450136d837d8aa47ffbc476a25b71823126e60bdd694c9e1e7aa7c060b8c8fe83f2e1e082c3f2068bbc6f420476d5c00516b1c66d3b309517f7fc0d6ccfa579f86b758f58fc40168c818ec8e437d966bcce9b97aab757fd65107b5dc4a6ade9d2dc222e3b6ed91faa4e74e5d846e12b4b751d7285f5a6ec41d5e137080428412b626037b3e25fb3df7415bed9e306775a3274967cecd89855fb6c886dc8c504bfff99392bef6d7c1f54d8a0f77b9b6196cd0c338fdf00c0ac7665c004bea05838bc3a3b3787c9c67a3e75661a0ce0609ac10167eddc090700c2c543b32967e7851868d58e16689ea6af69031d245a1630ac46a291ef0ab4b275fc0b4b1a51c21184f99de80a857c8b1357b6b6ad26544815d6e367de9fd00699f36925eef66c038901d3d33b44c5c036ab3b2949166bcbf33b6b6809203427fdeae17069b07e568ab04612e6a45ad41231c5e5b98042ac4870d230fecfc7d4ffc5a56f884e672927984788f68f276b57eb2058d089975e08a10c6c66d576844d306e853bd39d19780c95fcb152d13340f3147f0c0c86768caeb3bc16a846f7f0225c84d1e1e038599e506b8050eb406bfaf79864c09983f6a563d127b2a20692202b9755ee785635f7a7d876069f6a795a39dfc190d88a5dc9dd4b2d9721efd4fa2e102df4e26830132ed1a5a4da20ebd37cdacb6e95a50c0d5a11475f17a9276691fde693281c6cfad0fde9409684c8f02d41bcd4a2015dc9083866a3c606483615f762f2f826a9ee460a7e2ce0a509f2365e0dab97c73af0d585574ed2c9622eeb38ca02d485cc656f7b7f98653315b566803b96b4ddc3b556beb413a20486894bcf5c07522b3396a90594087ec94cb33e2f2e0b80f198d4336ced7631983d7bbfaaf3d64897217a616ef0a98d0840ce1bc78cecbf584d4822ff630e1e7f1000e9a6f3ef6ce7df849592d7d40f831c6cee158c9ec27900cc90d854687fa9ce02222e37ec3a6c3cead92d33632a5e55a460cca7aa5f7e686460338b7fbe286038f73b2043c2a69e2ff6e2d9a4e2f9526b6125dc319a02efbac5213bfd08f84cd00f3eccda6d128691954a8a9b3bb4278d619cbed2cf9c619a757131216f99091efc4802996337cfd876910209cd27070b8ba2edf83e350afdab44b46b4a91943afc0f7c1a4580944efa8cc768258e2eaafb2517fca0bd8ad14cf3d77ae960dde29374085f3634efd21b4393977529fff498458f61f592b8064c064aa4489f540c17cef0e45daca2c56ad32d93f3447001accd2ef185b3d8fb9f5630e0b21a495cbf5ca4acef9a7fafbd8b6f0bc68f2f7a176221876bb8ee40f963fdfef2f6de304453bf972388fa421d5fd22dd14afabf67d2857aa4cffd42e4dc211f61bf71cfcffd7e1abb8d4b16f7a411401c22f611da2e2870e97f9156e3fc654570094042b6a5cda06d699f24dcb52d9185b6a8cca8498f535f20b1c460a6ae7b825e809988fe204efa3e0ac09ccffe7952017df97484a72d8389b5f521579247e6c2b036fac5bbab1b379ce3c499b95a0b02fc388fcf9cff14f318e4a1c3c2d2cc1501c97543e1911ab4b6af69119ed77a602660ed55bbf3f3233272aa202bf2f3d470669cf45b89b7bd1cdfcf645c6eea44be845199630ab12560cec8eb368b6c7f4ab3c54c41728bcb8e9c8aafa4c01114fde489aa199fe0ed1c036553909c0897676749b5b0197e8c878943072a552338004448d131429374dc758900e4971f7792179e64aeaf0fffe7d7bc14fd8eeef73deb888c5f039de7a81ea0cd224f72d16da493e3a8a98853a1c3f9289854cfe8a9e14ced994b1360fa4372454ee5a650a12af7130143d57ff9607532b8bef87a4439a1c8b633132e023ffed682f9a4509e41b12e173172276f9dc694f8686a6054930582d4da137c977b6d2c1ff562eec8c6566c22ffe539555f7a927a0ba319fb7c277f58f42280790a4e7a4842d6935e35c7971818c7aed763a963f3ca077c68b7bfed13c9536e0e2462fd47db1f2b87440fc583340cbbe80cb209fa36033550350bb6b8ffa08e19187a86a92f676a29d2af4f85b7c018b7525394f636d24debfd5112a54d98b31e4c3c222ac749319ab2b779b6943c6f24996f0c9bd78f51f32faf2745443792d650d44e8d46313a6aa3b5697e6271a24602a153bf324626410b7148338f3b808fbaf640119533eb335e961a3678aad2aabe66d091010d29160f602db66ac25dcfbc784cb438167c81fabff1415790c10a4ac885a5bee0665b19bf0ffa780769de8cf92dec645d145e4e002241265cebc61cfd8df2ba968b211b957fe32252ee853239c3a3887b2508a2f0bbbf5206a10dbb210ad827c04e2eeb852e1cecea05c1808d5d5225155507507d39081b9abef3397a9a2fb74cc1307bdf1dafc25904751acc0d87abbb408be1820ae7161eb8847933aadb796d20c2d8a063103e77cbe2e63d91f4672e35e5cf56b482d4c10e9283200cd2e744d1131fb531d0dc0a2792c08968a714617fc2583e75e521f51de62baeb2a1c625ac508dc4df58c95055d9b1f4a70bfa06fc61e6839537284f2176e49b5b4595a83c53cbe7e4106f3eb17277ef67fa211b74f366262a07cce66b4f9cfe497f80de3bc60ed0f668e9a731757d02217e834a57789f2df6c166373b191427f7fbf165396aad3eee10f9ac347986455bc00d0706301e02be26bcaa29c8eb2bfa575f69f5d77fc909dc1d220cc2cab16171f6d7febffcb2ea737bb6cec0a528ede1557b646ee7b288a0292b7ae454549f5c9e50ddabaefd5de7148ac7bb88893c453c94feea52b47e1baef30557dbe1db273650fabad62bb79b1d0dd7a08a288ee9f6a7bdda115006fc1bb74bd987ceffcbbca8fc251e6c12cd266415afdf154ccfab0b5c19642c93375422ff91ada09f133560262656aea54a74b58437e701e0f69f8f9218fb70ffdff96058076755cb794825598c9969e2c507087072d7f5fa9344c0ed7966dbd04a6c65337d944061e10ab53a92faff1a1192d27ae2960ad52f85ffbaf9da44227c3879618ecfc537f7cc22896c67419932d20b188a0e7196bda8bbb19ff684954b149b573f32195aa10ad9fcdd2a8993697f3eeefe5cf23cd5a7ece2a26aac544028bf2c866d3749ef5acd3215b18276fde81b436cdd926c75fd9fcd32b949a442c0bf9675295bbb0bb1042042a34596c0263c5bf8ef9190dae7be6d53f6989641c16c466fd3bba456fe8b5025760349ae1fb235140c57a9fd94c6daabc03a682e1004ca3c2f4fba7fd71c253e283cfa4862d1c6c5d24fb2214e25ca93e1a8d6aab0cb0abe8272a503d9e6b0930a9d6fd550be05dad20dea77e301d02fe4ab2d8e94e0aa68e56da0be1f8bcb59d860c58c4537cdde85805d229ddfbf2aa9b88531f81464fd689917c501a792d118dc37de836a4d579d7ba6f2bef11382e3986ce89026dfb9fbe98de96b874eca77bc20d342219df951fda359cf90ad8fe8439171fe5e14c1a64e7928999750c5670aa9d1076e7c2e46c0f510690de6b640227e9e31cccd21d647e34d4278f68ae75417eb6da13ccf98a734da764cca6a7e59cc6fb4a8afaab2f8bb9c4b0b7ffb140dc2f1d3cfc453b259448d8e46b4ab1bf16567009ec64398b18b3038226e58667eb898aff53ce93de334522f9789193d0b71f2a791570b13a8cef07ec4e8de30a510959bbe38a6234c3dd346b569eb9722f3005532e8a9a3b1db28c4bb758079bc8c77b11dc70304bcad0f727207eb9e16778dad087053b1ffc9aad957d3d4c52c8fb7144b1e1f4bb5ff0dcf8d88e48bf9044d92c219617567f880e9f818dd708246e450ea6e2fc222db201029dedcd20f7f1bcd70ca72e18ed847401f9ec937c0984c714b6a0a3fd58b3359bfc158e808b29287b0a5c1c6324db0402b0406bd091bb6954ce14d89cb4b8a4d8cc72a1f33e3c79602686322dec421de8edd2509d8b0e18832440761c78b98916edcd733532128f98e4835ae8764bf57d953716b4edf884d717282bd1af160aebcf9eee1feddf3d7e5048793944cfd26dfc69af2f3c9cc41fbe69a9a6de0808d36d54a93c3cffa23a0f000b9cc41230de75d97fca8410b92aaedf46d8796da16856297f65278c002064fb82929e061e52bcb74089913aff52f9e5a2dea9dd3659030b9318cf6d7cff3e81b18f19466746c60f394ee1f227949c1335253e7694fe79ebbd64ba5cbd4ea12672fb15a83ee0314a0d03f08733ce0db9c192d8cac1ad5071c811d85b1c40722ce41ff20f6ae79ec13bedf1b19644e0d7947d11891e1e0e6d6a67693bf58b06c4b00545bae12d5f5e21b5effb5447c932470bec491fff285eca15e400d18be214cf35ca20579a3d40d1e30c58a725a79e1e1d3d76067ae1e8e092f208101a4b283b559a0539f45836f46b4ebc7baabd28c1b904798eb65fc2fc4c76fb682757cad3e60cc89f6a6d3316d3d7b71326c384333b81d4768a72e3c632cc163609b986671aa17c80eb82bf7b4230267964b664cec6d8b341905fc811f96fa614f60d019a9e92dbecfa5953db1fca3037e71cfefddde0d7e3886e65eec2311bf2060d6a12cc9d1d9870c537f25c5f47ec1324f31ce70efa9347eb593f1a2355e3566f80af0f5674503cb76ff0392c10defa64ea50f09e818185e02bca0024e8c44e10b3530b026c30100000000000000005c2b7eefedd6d7139f524a598794e7f7c34e294999a494ec20b896150e022e688d10a2d60f77f983e70be10bb70bee5f681068a653c96456ac4e55c964e266688f1ad81044993b763413424f741f8863105d417eceec21f480c04e3e63cc3cfb57fb1f4c6ba22c5fd0994ac7fdd089b2cf2d4abbceef3e9cc582c6a4423e5415a4e6b74e7e19d47bd8f3f9fce8d223e5d583fb15561ad4825b85f3e09b381946a5bc31f78b8784ecf71f8f9d55fd3b68a24b4b4efbbee46a8763b0a4b39add567f1dd67ca71e2aa703623ff78c50cee124aba257b59443c92f6c92419fe290c75bd3d9b665fb22385c2e3ada598e52c17d83a2ca4cdfabbce6a8b9010f263afe359a0e4ad6863bb57ca898626c5074898d39b79eb9e7acc1ccf80b1a2a2a98caa881d1f982c51026bcc4554246898d34b0c935bd08cb540db21c3d76d46007101fb4b08186928c13e363f1e3a8d59ca13471b952bce532d5cb1998b06106d3780eae397fde70ad643249c346192a8feff92342634aba121e36c850f9c76c57c2e25b6cc608430f36c68052133a9b8ac9ca4b2b06c52b5776c7cda1a60cc39ab1ec478cd021b4810d309cf44666d3fdf3d5fb0f1b5f38bd27a54c8aa577b95e58ae2ccff2094f2e221ed8e842f1e529e9f7f8cdf481d8e0c29934afb3c2656cc970408f117420488e331a902307190e68400e32fa03409c8c344630c61893898e1c96d018e306ec83c79e7103f6121b67b0b105845e8fb525e35f47553299e460070a3c073b80f81919f8820d2d2444e596ed18bf82279514c14616b0983c29cbb5e9b73d2593898e1f66f00f3332608230b260030b26d78c9a467d6438dd15ca1aef57292a18c347901e1f4836ac70f64f1562a2c1aa534a2613325860a30aa6483321d4a87cca524a26131e36a8703c6d9d2ed7aae7734a261332c8e0c1437504c3c6141af350b7d31c4dcb57920b1b52f0da93ac7c314aa5270355b01105f45a93cc141f47989e90f1400e1e3c34035db001055e6c5c6793be24c45fa2011b4fb063fe8d72394ab0e1842fe573b61165a7da1d63073e303099b4ef200c21d868429af2e7d819f6c43acf84ee43b3add95facdf7474eb644246901d0aa48c049c31860e6c2ca1e441474c6bc33ff34a406c6c0e2fdd9531ee49487346672cfdea8bc58c1d25674420073de881076c2041359995d5d6d742f62593491034ccd011048d119c8d23e8263f78d2f41fc43d3850368ca0a7cf1e7b53c9d036edc046118e5617638eaa3323b341043b5869d131855396bf818d21a8496c64c8f8d29d761b42504de5551bff30197730cc6f3ea2647a80617f1a4f93f37142667e61f655afbbfcaa8a2972a8e18b94f41c9428755339e97bf1a6f314532fca557b5ef07ada263bf25d743257e3c53ea5ebeba20c234d675dc6c6d5b948534c2bf22a35b574b87074d764cff259ec6fd165d5d2246e29a52fd902cbc142869c75b324aa0517b4dc89f7e8c9655a5c49eb4d869c978a6681e87fcd1cb6bee62ab2482b794e153bf7bea65814833ca9516e73b4508245b22f3cb906bde2a0944c9ffb0fada5e30a656be754d24b67b5a9d10af576738b98ae18b55981af856f51fa296c286baca2389df1b654ded3e5f4504315caa72b1dba3797e97c2a8eb314ac647e6bb46c0d54e429bf567541a37f55e314fbdc5b796bcc99846e8aefc534535a4a1aa45c8a77e7c43beee5e4599202a5ae4df36b380a3b5d5db88f969e314814a8bbdacddc5755df4251c9cd7af12b03c541d8659acc145ebd4f68fb62c93a9df24c194f24ff5fd7594c58388b276a74a2b0aca75b457d9fa69c30e991e13aa6282554586313994a3133c4a7cfdda1aea189ace7f4eb547bcc16cc04ea574c86ce8c79e2ab8109ab64948c716418b7110d6a5ce2f1bc14d735a6b6714b2474e6a8d799aa6c638d4a18a3add598caebb23118d4a044213cb7a9151d797712dffab8ebcce7a6f16b48a2ef4e1774b020d663d588442b172c55fe38dfe543e2f06193bed8898aca1f718e48cb99d2ed5d968ed873f64fd2b3c6ad0a6a84296ca55ce95ebe5646983cbbf2c714daab338bf8d45c0e57e2622e2e3514f15d895dba2f512ac644a0338c764df9d11556c964c2030d1e3f74bc0f1dab63073bbebd870e4ab0831dff8a1a88d0c47a50ba2f6eb6b60e7c646032f91a873093ced57e2a75ce7b3284b1c29ad08c4997e79b05350af167ea35cf36cdfb9a15d42044e14e83c8c61b75413788d4d23ece090df2845210db5e326d42fe97f09840785a4ec978b659b56a40ac25e6638c316fd7ad7f60e409d1aade33b38b1f922b973fc9e435cab23e6842c65ddc37b6a79c0f6af041ad607964a61c2cc3aab187e3ab068b3f9d9ab2a78387a61a7a4068575f98109982c94bd87fa4606be4c164152d5adcbe6fff35f0906d594891e9c233686adce1dc9fd14c25d3d077e21a7638e8ce98a9a4bc9cdccaa85107444fe664490d663253830e6b0ab229c57b3cfd06d1e135e65050165d6f3c8312fbfca0861cfc0e42c7acc12ff5c5944c26afce830c75204152e03b809431998c01831a71b845cfeb949d988b79389446cdfc9bc855b6fd86c383e7cf4c2fee7975c31ed5e6f7ed2a7e6c83a1b9d2f254320f516203a71fb437b7972eedacc1bdcc19bf52e4f3e86ba8c1d059d3e76e4e5e1a7e031dedcd63474906c8a89106c5e2c8a0a3a7e867060d7ca591fdf82743a7a433b8315b775f7c67836e06cc5d549491f5b1269701bbb6bbb1cd8ba00619984b99c534ec63b0eb93f81c510d7a2d62f0b272730c322f78755050230c5daebf4daf7a3723301477458f8dfe79cacc0435bec0ca9deabf94268449821a5e4095ced3744bb6a75b8d2ef8e53f37222d5fb894056a7021ab3ff93975d4947754630be6d9154b25544afc0c2d945284e7d491c1a3dd25403c480fcf823928bd2b3f19d3f5c2c257715ae2b58396d06650e30a6d8c119f537b3c66cc0ac974ff7e3a7e90365f0c6a5461d91c3f5aa58f1affcba006151a1525ed5747d38b09831a532875be9bb2b5184a2f29ec9776beab6ac964a2821a514067104de3da99938c251316d480822232c71417a7ddaf2d39418d279c27940e9a1b336a38c124cb439e9df2e8edf5a8d104c5455cc6cd56cc9833868f1a4cb84f5ecd67d10f63ea124eda42997f10ee2d102fd1810e20ea6490816884d1851a4a307d67a5743986ff582621710b3155d513ba63c96452831a4858cfee3b7e4a2673d94728aef3e3c6180fafd108f765ffcb2822a3f6d081fed01a4568c4661ef11a236305634c262ea84184947a093f61a31a4348caaf5f08e176d9833584c0fa4651315643841d8cc3875f59a81c3caee7036200c3fea062ac18b5549e18bfd832694d1f34b4842c4b261324862f5229b67b74bf0d19ed92c9c40c0ff20120402e90803334011718638c0df0e0a166a4400762f482cf7373b9161f4b4dc90e1d69f450203e74a8400c5eecd994c7bc242c994cc8d8055e39b62ce5d29bd22fc164a2430c5ddc97af83b0ed740ffff1e30215102317958eb57f99f474c5102e0efd57f5dc1bcc36358618b750cec36ca50ba384fc6d81f58917adce1f648ca945bafcf3a8d698738a941625ddac41855962cca2be532a48931e574aa66432d1d1430c59d47fb57a2a88d3a3722c36ed23aadc63698fac0416ed65bcd3902957e65e717a5f4e7e423efbe20a5545c8fffb0b9395f18018adb0f207198fdf9f72fe58618ee25795afcc327f56d19cec5171ea84ec4f8d01440c55d499428b7e0c95ea6e2a6ed3a9d9b4df9ba78f87ae600e62a022cb4d51cb7f1bf5ed29fefbcc8c1b9da3ca688a52fc2435fcc6fef82646290c4d39fc469a9a939718a448d7c5950f1693aa3495e8206314628cc2202b779aca23e6398b2215d70f5f4bc254b074748f1d3fd228830a628422cfd117534e0f0a5d4593b4e0299312fb1355a8929f3ac93ce1e84a5195532dec5b62744237b9571ebeac620c734235abd3f029cbf2684a26931cdc20871ec4d844a345c42fbb624a494d182faad5bf76f8a04b2593490e6ea0e3d579e820838c1584800d6264e24c19ceac4736e98e6222397565efddf5795483f616e312b69a7650f95c1aceb644a61e3588e5f5ffc74a26131d3410a3128b660fad383ad6a83c25ca5aa3de2a567185811893482e6b0e4bb2240c77dd27323a222a964c263cd4839ca1e3063cd0d8203bf0203d7c64a0063d76bc408c485c9b840e7e2336c6fa9048d6b74aa56ccca0d1471476365855ce3422458e5893ce509a2a172334311a512635291fd6645cfc88c1883e435ae64fa7e69b13448c45a4e326a8bca6692fb2fa3441643922a3dbf5f3da260539ca384308228130fb538c11163de54e8fe1071140dce965673ce7bd8a22913f14946e91a1736359eaf8a13eb93e9176f61def191ec4c70a8a20d207e334dbc654539a96e40327dc77e3c5abb9b8ecc1bc39f264fa510f58891d0b322ee5d84c092279d0af35ebd52e8bb0ea032278a86b456cd6956d8f721044ee507811152c285f4d3f0241c40e86aa0e39f24d9bc6ae0b227570be2bfdc8b55c79990e88d0a124b49799ea916ed10d88cc015d32ec9b6f9a4e8f965c40440eeacf0625d54465b6e86442c68bc461ad4a657763aa2f844a26930a88c0e11467d3966ff6ebef0d8ed61cea2ec993feb1881b0a16b53b5bbaeff49a481bca3471ef17db97946c09226c4085b7b6b3ecd7706cef0a7f2acc7d3e48105143c9358b27157dda472a9206f7aa72f8e9784ad77840040d6fac3c723c586ebeec07226770abcf92da0bb2e9827c206286f4084d9775f362102983dfdbee5954d0f42b578005113214bcf7333e3c89ad740c88a7b5d297b98f1d1303c245c5a84b3f19f14441240c26593fa54e2d8e12a19694e1407c8c600a2260d0928b983a1d543be72f546984a69cb11e97212f30f325c6f4725610e9c241839776531daaf22641840b7de85c29ee56f8f99410886c21aba4298618a5e24e263c1404225ac872ca5ec7c7e0e78f198864e198d9943ca5e38a8ab6643211c1026e2532874e6db954fa0a9cb04bcbce9a9e9b4cc820c3052256389445ebb2608140a40a89be55580f173fa12b994cc8f08108150e67179329fb52f2832593893f0f76884c2115f9b08814bc2fb57db18458ef3041240a79aef9c90c0b4ad80a854bbc725e844e1eb42d994c74f8e81579c23109cd72cb6911279cf4984a295468fd8a4e2664b448138aee322237684a74a401a40463e8c8a123c707ce50174110201b984c3c07521061c222639d0693ab1b426509224b405a50b73f7e8b28819bcd25bfba92b8d9ba2092044307e969cff3eee92882047344e7ef8edeacefc3448ef05d761319379becaa78101f391031826fa33a8f5097532c255204c37ee5b8d3f95498120a2244d084ce3d26962d694c5e4009224360ded397e96ece7d4a254176e84044086efc3b4b71393ac3ec7d849060601ef37a4b53f0119ed541c6063c3046901d6c800721c008f9c523fc64be09dd97c215e28b6ee664ddcce55d953e427a6189bc4ee2b2fdded6bcb8c73753737b9bec5cc82e8a5944899297dfb3534a26931bb8ef0052860b4274c1c98f3986ede791411783905c2436756791674108ef4a749ca1675ca00521b8d0335ca946bfd3f26fc82dd0142cdaf5e920fb6336c416be698aeea5d41add6bf19e093f4ba74fc7242b8f1f66780a4268e165ca0a7afce2a3eeb378c52a45b3ce29638b5010228b42ecd9a79d2b7ddf07416304b1b0cb72e45888f6514a6584c002d7f3f7989fe9e66e1918d0c01818d0403beb8f14a4e1212841c82b1c8df6769f4ce908b56432d1c1811057ac9f9ebf62b4d95aae04880f1d3a50203a44308605425ad146f10bd274ffce3fac38b6a626952654dbf4ab68c762883e35dd1a44aa50df54def8d34fb75b2a0edb9c9e1a4f5eceaa84a022fd31aa497dbda4653d4549c65aead1dedfe135455943e40813a3f19459a24383f0f00e29c577b9fb43e5281fe30b214549a7ef644a5c6a6f8582c98481682064149eb8e0b5abb5573ac9811051b49dede9cc9296d82a241488cc65dae4da6b128580e2a0db5227d9de27aafafc7d93f1423fe409c7c4e672ec9c4ed85917173d88fed18b1367792cb5cc1c1da25483904d8468222413899ace254c456a7fae6401219878538ab9ba36c909990ab9448825422ad188d359bd478b25fd154a844c02a137cd443d8b5a7b8a240c213fa5a47d7ba2b65a4110347ca4a1220882c60880101289d552e83cd7151fca0c81c476bb5e3db2824c563d62af4eee6a7732972e7910e288468a0a75a6f98267098490469cc2f25cb6bcb95b3a235e8dfbe941c822ce747973c6d5bbfe022444119652c9379789cd55188590441c3fc5d58a4a166a2922420e9175a8116a3d67cd9f9c10620884508d21425b8e1052884ec3c99b6525a5c293841042a4c1735d1e330d22a58285f3a02f412497d3f689932ed22f228404423fb5a0ddde4ccd461f8400c2cb2b51adbfad711f203e3e88d74005217fd8c5acef47e8de7a04217e487c5bb996c7e0312c82903e94a19e2dc3eb7a33890fc5ba6dfc549d9eba974c267bb04c552ea5f23ca637f550bcfcaa9dc4259fbd748020240f8cee20a372b4942d662593890e3cfc6b954f8eacf89fcc92c924e40e9aa8ce9d7d73061a3dd0d0f13b3c106207b3c6684a3c5c0899b10e8fca793f3e9c6a0c97308c1042075377e7767f53d7691a23640e89f11c3f74e48b4ab91c7eb730caafdb64ba2f240ecb6d8f05d919ac2e86c396ffa356549bff976f38b85c4a5ba7da41573c08714372151adebf1aea4b216d50f473ec6c9b6c4028396a6e4b94a7cc6142c81afe39b9faa045768a550dffc9b97c9549e4fa26042169586ce329ab50991aa22184a0c1d15242eb8690a5e367b0737fe77425b39b52114288197c4fb9f5af3ff8dd5d066d736bd2d393f1492b01f26347490819b05326e7434340740493090542c670a619ddfe31f57dcf27081143f24a79d04968aed879186a7d8fef8df15c359a420818ac786a8492bbe9a76343c8174cf3a13b77d2a6bb3d5c08f14223a6e4266161394e4885902ee4557dabe67fff69e7c2153b97eca44fe9b64b184e08d98231472e7fd6a7643261411042b4805096a2e9146b9e960e43082159488f34253de564dd570521040bc5e4efee31f8c6a0bf82311bbb93ec2ee1171f84582117f3d0e3f9e132753c0755d83d66adb887107b358f102a743267c4c55b98a967041141c8147c0d9d3273e5feac64490642a4706e2613baebe4fba5ce0889c25923776f57b52c4c20215030c68af13c9b4e9ac3279c7ffb632e7beddace09660a629feeeda3065113f454f323dd83c7781016429890bc89d3aa64a947c8a377e8e8e1630ce7d11ff811b284b296da50e23732a8678c308c10a204b584e8f13073292aab40481292ef4cae1b64f420aa1024a4aa4c644c315cc6858f506e9f313976aac2b3462895beb210bde2e66611f8302b75a62ea7cf981d84108133ff31d3f3681db3470819c27a5a49d58616a572d2174284e0d906af5262c47b92e578828d60f4395df6a594a3b5596c00a37b6bb7a0cd94ace7fca2310d62b3a512fae201b1e10bf3e58f26f643c970d3462ffe183f36e6a7fdd19d17ddefa998e4bc7dd8120736769138515fb5b79dfe151e3cd40c1dd8d0c5d9d947c9dcc3c76442860a4a30999c71031f3e4a1c5072d4069cc70f34ca68c0183bb0918b62d858fed3bc349b8b608c343c0418d0c0b6ef0012640c1bd8c0451e7563995ad2a7a47f0bc4a64cb3cccf361b465378d8b0459b9933ec94c5e4a7548bce65b4eda8e734bbb1448b32874b11d69f534d3f0b73ce7ea49d05cd29290b65e4523eea679f30d988c5e93b8dcad5ffa53a5ac2061bb040e5b8f5ce574eb95f07101faf83077baf8e1f67b8c1c62b1895d23e5655787cd615e9349e59e597925a0b1a365af1de78bfe94f497a75860d56bc76b92f9a1ab5f4a05554e96b6946c332eafd031baa684e8f6cd9fb8421041ba9289ae6a8a9ccead4240f1ba848c46fd27e93b9cb340d1ba738c4677814519ea2b61e364c810cddcc4dffe129ba2528381ba5c0724a9e32ccb26ebf253a7aa8603209820d5270214cfe4689ebf655c263f5053646b1c629b15e712ad111c46bd00151a0ba349a4a4209fdb90fc539c8287a75f13ef8a06834a5c8a86b97f9fc84a7294f3c6711224b4fa0e4c8e5d25351ebf14e68d23ac7134a290f1ae704a3e5b384c7d275ea26bee4e9b46a5cca3bb22676edaaf89fa283879c8964ceb20d66f21e738a0963ba4f2aab934aed2fa1a8ede5cc976e2bb7c431b6e62bc3f355ac127afbdf785c92128ca62c31e35b5d293989746e3a8b1e84924899cdbfea05d70b4a9148bb74d216dde93c8c20e1e61fbda36ed3748b1e71cef3d19f2ce408747d5df660a7a553a811f978293d3afec2ebc688f2968a31b3e837a53d8b30672e3ff1adec316c14b16da6cc694caa53c624e2b4ef972ab9883898fc73b77fdd643a043a8f750ef2fe2a34c510f6a5388b2927f5930b517cb7cdb0f1595312a2dcce96e3ef8dd84b984e11a93762af209030c274d94ecfc8a4d38b92641147bd394df1848af854cc1ed32719157293882ab5e6d47622eb33e90324887073e5741d672139c4c1e4c8f5684a2486f8de6a3bdee38fe8ee092485e8b49228a54668fb7009a18b9cce49c79867633588ef2cdb4c4529d39c251104974aef29cb263a9c8e24108fd0136e56b9f7cd4402883b777ab81f9169cb44f20743e98fbf9cfaed2a23f143a1494779c526d7fd4c40d28743a9ad8bcda4fb471c01091ffa2c9ee352760f7aa3f11e20d983ade1f379bab82c177580440fcc794ebbdaaa8ed1c3c00d58f7022479f0733a19a53628fdf390e021b91784a81999593726b9c31eb3252f75cc79624462876ef3c3373389a40ec7b416b3fd97b04c3a091db8dfcf2f1915ed839a640e056532a556182d9a822472c094a934531554cc0649e2e06f52f1d9920ee31b2781836afb718368f14ff9f880e40dbe88fcdad69c54f8cf8f3248dce0054fa7c5ead46bb249dab0e797cea9da1a271d6590b041cbfb0dad3eef29db1ab6f651513d8f1a90bb5945b4939bbf290d6a7a8b39083ff7a0f4682039c32345dfc6db4297d04b26131d3eba84c40c8625a5728c1c99c3562593490d48ca50864df157eab4d2e1a349c890fcb7259945c93db34ac82843022463705dcd54b9abad6815022462f8f44a45c9d81e839c49c290c63c7fc92c738a1f938061af8fc14a3da78a1f2e51418f124c263520f94297c6724e15425ea87cc4ec09d5b41b4a245d68d7e6baf2c6ebe76d05245ce85350ba2ce77cf6febf80640be92084bc77560b9dbaed47cbd19367310bd6e56b509973587853ef2b9c8b4a9b42728594a852f632a323fdf602891590bb73d517476cd5465285d53c58663dad39771506122afcc134a9d151fbb36432904ca1cca2f116f5de545cd94022856c3c08d3f5dd567bca81240a956ca7fca32ffc5464060914f48c27dbe11d9227f8fdfd29460d2aea7f27e8a6dd33c6cb1477b30985f40c7de1e5ff4b244c6064d4c6bbb8c9552f9225fc399fc825bfd831077f9028a11316b39ba59f346927a1d1a5dc6553fe53f12321697a747879adb12c3ac2739af6a3396c84d2b47ad22994c6668b7052a282696f26edf12442aa64aa28f141fb6a7808c66dfdc9914986cf3125118231e54ba57f262fea1c8cac46cff40791d7d680619af124846af36061fa45e131d6ab645bd09af585e12374cbfd25a5ae8ef4a2ac31d3ce6b3a95bd467891ed5ac54a3d6e724c23bbf0363754f6324da7e3baf8d57b4d87a5a015be5c30ab59333e3e7aa3e2c0082eee6c5932740edf621d15f2b44df955696d61edeec6568d19a9c5199bc4957ed1addf8fd0a28ab6be7521937966476631228b91588cc062e41523aef07b549c8c4a67a24291186945496c4ea5dc4273dd5392230323c8b1821c29c851c6181770e740bb214658f1c873bda453b97b8eaec2b879f74e5ace882a388ba93c8f8ca582f7d34f19ef43f37f5071677feab893f2513623a7a84bec9668d6690a0323a638afaf8e10eb31c52ea961a414788ee3733ab857b2fb0c23a4c86bf754149d35bba546b196c8b2bf1ce3396cbe30220a35a36cc9f6709f958d8422d1e95ed5a2bbe74b23a028ebfb5295b01399f54f6899ae4efc666387239e385e8aa3b6640edd141de984e7496afc4d97528c2d27ae9c34c7aca5f454cc3661d0ae539faa22d72f9a6043c96f09d18d6b3b0a463251f612daa3451bcf5a19c1c49be22d5e1e6be412c84cd5f9c7b4f4fee583114beca364cde5e8319f182bb16b4e3a9ce9f2144f058dd6910690202394c83d269127fbde1bd7496c7a173bf573c9149592c9a4818862441286aea49521fa3a172f994c3a311209bb3a866e37edbdf7974c263d94c3d0c408248ec1447b4e0983f819931879c4d146ed95aec511c64d9bd39d336430d28835f4ec899b4a1d3d5fa2a3457003f6c183115bccccd5e86976155dc415aea4b99fb6b0ab28c254ea82da0b426b89d608238960be643473751d75b1c41123884807a1d243076d4987bc643261c4c8213e95f64609355a4a611462c41076895a3d6bb79cd39188914224df9696f34ac6515942e879bd1b9ed2e6a6cbc8207af9764d2aa75c729482e8a46b12eff98d0402edbf31a9a6fe99130222d9feb853f152ea47253a7cf4f0c143078a021f417a7ca004237fb8f4637b57c5366fd763c40fa9f6aa668c788a121146fa60dc96e7cca13d1b9a118cf061b55f111f4aae81913d30aedf173fb807553b1a237ae0730cda33f54d3b95237948874abe15b32685113c944dbdfee78a4e2667fcd831728764c94d41686f92d97cc964628784f4509ab733528742a56dd3ec22ce54fa07237430fbda0599d163b2337c1061640e8753f1ecfad271f229994c02312207b67a2d7b342f8836954c260ee4c76442c61046e2609990d71cc35b286f040e7feddca9e6d053d2cac2c81bf8b72cd3a6affa2c34e20653634ec786b5b0b16fc377a13cbfe37ebe2c1b50319c27b718590b7b0d66cfe157a3e99894d560bcb6a4c4ccd76ba66928e9d61da5d49ae6f44103fae2947217f51b1a73861133a047a6f1900b1937b396182983636121b379c10819da9c447c25954c26648c9106f358751eab69700f0702040dc6c4c8184c3f9f6b744e36935552c68818b62f21834a1e53a6cc96a460240c88cc962f2e868ed1a1238c80e10fffa0b4cbe3fc075961e40beab96769ac503d7a1c63c40b7ed29c5c65f31bb00f1d8c7461714d224435e78e77e282bf559d2fa37395ccd98275f273d29c17208c6861f9a0f134e455be0965016d6bfd39e6cd0816b6b6becd416b4c25cf15d2ce9b97748c050dd90a27519572073f39bd68154e965654ffbd9b50412354e044a7513da62df66da6e06bccf7b7c9a2c99891c2a2336fbb7cff6568a3a006bd9c6da51b2be55040dde33d473659bcf809478fb9214de684647e67e9ca97c7466c4299595fbc6bd5e29c4c30e90cc24c7dd0a2f62da174f5bf297c50573aaf84465a52efdcf7784d25014de6975d96d552834a1cb0821c2168c0104690d07fce242f7aca72aaf2317284d3f7f858bebca7d9370232aea9f8f0b4b6202fc2977141535ef5c7081190d37c51d78c5b9b8e0c21396132ff33e36f36f5604408e50f2a894b1add36b360b0b9d7b4f877c7d3cd1001c69dd398d299c45f93fe0bffcd4359c6f26c91f9e2a0939fb7766a8f1ff5a252769f2a9629c20b7475125fd14e10ed81c82eac97b1ca98aa49c5301a22ba30dedee94b6a95e70688e422b96d7a53fe4da5160511c1c5a5a283fc930e915b24ace2ac26e58f1d3a9081882d940b3b7a54568a8de30e446a71cc297f5bc56eb02034446891dea94af9a3960e693a43641695501591ad61d933248b726cad752c2d994c6291fcef685f41bf47c583f4d01a001181c5163f9c95257151dfd2f18a3ad5566ed56c8bf188b822bddb4bdf63496f4eb6e24aae3b3aa85065aa36438415bc8866ca993e7ed6130f91551c643a691bbeb32eaa40b98f8a35ddaefa612ad22094def0dd4e3fa792c9c4470f1d26820a3795b64d9b79b92f4503915394fac535df85cbdaae29ba2b5942a9f01874bc371029c59f7e29bb5a50fb4959329990e253a29310fabde22ad96387c828d0f1eceab5e7228aceac2c5c254f594fa90622a1b02e094f23a642c56dce0045417bdd3df7755e19e48c1d3c3cc88e121de808e235f8c431d4fea9d21d26fff384e6f179fc82a888bd4b3a81b29c77424bcd64599c5876456f4443914dd82974e58dc192fa59efc3071016d184ef5934a89b9123b2a18103d700fb0a26930d886402992b99300dcfcbb33181b84b266edb6bc45c2eb1e9b69a1019114be8f12d9bb0144a40a412fdade7cfb07137536d03114a884ca2e839e85815b3baab5c32994882131dc37a850e3a985b3299f4d01c6300c0102291d0f399c8cb10df9e7d114870a78466d122cb4ade8f40e64ba6740cf18a22e38042418e3a410378fc3063870e1d411071847217a3885d71df9c3582bf0d65c293b2d1113302bd3909ab4c3263e6bb887573d0ea534245a4e5c4ad63bcf4d8418928758f77866b4e3a0ca241d03003032288b037acb76be3a58958329998e103c85b40e4106889fd09cb72c93c6d88b4c22f77adee89759040a4109b6c785dcd5429988a03228428e8b8154a8bdb27590771013f261307e28347800316385e81c315385a8183153856815a8ddc9cfd5b985b04385481964ed7949ee9d2bf38528169e599fa2b488f1d0a24c8193a58800315d85726752da513709ce2ef32695983503a9ad81486ace6e039b946992f8c25e02845a6530c3ac80c9734ce2ec0418ab473b48d1f5486bedd04675001c7288caba816a32993e5f5257088224d49e6529de9335d1d0a7435adbe44a028d77f7adcd2f9c461641e3d36971c65821c55821c45821c35821c25821c158230a680c313c9f1efdcf93b7ed85e32997402214b362c8cae18dbe7010727b6ed30f79ef6538d6c081c9bf04a7a69cf22c333ad038726b813be7b2153288dd992c92413e7d6dcefff8daa7e82c08189acf5abfa72ded2f6fd80e312e798f94f7c4a1b74791c7009d93161f40187257c35d79a4be93da3c25109cfe65547e378fa94838312e57065595fe3382691ce9c512eb7c3b98f3824713e15dcb39b88bfb37044e2baf5a43957bed17e7140a29349740af5ded33106c723f0e4a1d4c9b63db9de119d6bca4133af5355bc11a6a706511593c9f28c28573388f9300b235c04a7a76e6365520426a2d4a994b944e8398fd055b29a6b3344b0e1a3a573979b8d0ec7218e2e26dc2aa7c808e30e380c516eeb189f262d994cd2c0028e42dc196bebd39d999a1e0721d6a0572ba9fc41343b38069168054d3a1fecedde25e010449bb235bc6fadc57006020f3ab737d2d2bfc67000a20a1a44fb6c83e30f66e54e254f09950b1a1c7ec02ec757f8d1fe00471faad36c3b757953a6a80838f880630f8d58aafaa738101c7ae86ef3d72979331f3e47c09107c43a2e758af04dbee1e1183142d95e9af1b570dc4177d9309d930c0e3b24632f66b27e8bf6791daa0f79a2fc2a67ee9b0ea81fa13458ce997cd373c0a4fb0571afd4116239e829e3763e37cfba701c129ee4b7c89885039f4cfe83a91c44766fc034577bc8c9ac1c4b6e48e3d365093da19d74da80ca99ed2dcbd85f5b39c0c106fcb543a6284f9594d6b088adef38aad133c5d5604e0fcbc1c4e28b9d06f3e6ccc1af5278798d866645739d9ceb3f9fcf90ec778ce12e742edd0c985647abec221fe33298749d6da8d895efb26438befab4577492313706cc4f73f0fe5342ac14c3aa7153c7cc9f63c714867f4fb3cd93fd570986375a58ec67f767107dc1eb9099b263cc3dcdbce08efedd8aac9b154f17acf46a4f7147b6795ce86547498ddbe0a26da13c1b5b314ac5b015a30536b43a78a74a16cc5079d3e825e5992d2c14ae7a649c3cd518bd826a223b68bb788aacadb0977f76af0bbba72e1c552893381d5aa9a6337e030d4285c48cc90d215629a39fc2a682d8184529512a6d29f42d5bf527c5283cf2163ec76c22ad6437c00185b535937587760cb93fc158296cf870ba52cab1c40987e63463b9313efb8fa3097f6f0a96bb4a869a9b099ff6f5904d7b098f677f25b9ba0b2a2b21ed395a4967a8d1514e42396bd23f164fa8181909092d9dc4e85c293ebb388e90e66a8ca6e2bcb6b9388cd0c9c79c76453485717114e19ce2ab466578cadde2204229c92a95adcdee1e710c41d3a5462f895bd010e210421b9b92da7f4b4d170c469a6e9d49a90e18e910fd9e82cefaf8a55fb46272dc4a575ec7e30bc342798ac8dd18e45eb4f34175ab9279d00a2f4ecde2318e8f79770a8d1fbb60af4dec3346b93159176ddc4f5a3746157dc25cb4e2a9fb72f651c4857aba4cefd877b29cbb8541a76ed22cdbe20c6f9574beb5c094527f392d2df6a09a8499e62f9341b3e054ff8d5032b8ad8564c1efacfac6d96251e639e1e21ab282fec0822ba1eab22ee615b828659969a2a165d5c006375c71ea0fa7952ca6502fb6e29349333f874bc9c38815c920553efc2fb667155949db24d47cbeca310d204154710c9169326ada1b9da722abac59bef725b466a8d03b07a9d172252de6c1c18d53605a84fa49d3e8adbf29caa04fc7cc1574d60f3ee146290c6a49a86e6fced8818e20471a1e821c1ef8a1ada3fd06294afff9376ef5b3e6dc28bc0ecd589d29584a8d28da94e92eb75f3efe25053fd068d7c00f34da7b0937428112eba6f72aa73f304610efc0186114e10628d069b1b9c2cfe2dcf489c47453909b712bb105e18627b82062fc3ca3afe9d8a30439bac78e10a401c4d138418e1c66dce8442ada2194c9a0b456f40627f2f1fa942e690c26ec1b9bf084654dffe631d3974a6e68a2131a5e376e30b7b83391f4a053f418fd1b98c8ee6b34f4ab8daae3c6258e61e7466eb927adb5643289c10d4b9873ed5da6bb7c29dc4bb851891b9450b4b382b0904157e793706312a7d07949ac49eade85fe2fbf7c2452d925534eaf42029d54c3b3c4a93a537984dfe61b3b8e1693e1bae10884eca4fa49c630b941ee8106902067f40782ecb8d1084d745cfa926d6519df60c4a1a9f323c37f63118b0e169727e5c2956e28e238cbc146cc772ef101b991883c9ec50f96e3d9585c0d371091cebfa372caa61b8748934aef5f9debe18621d634d51be4c50a7a99176e14c2d026835fce94ed2cc703393a90830339369043033932900303392ed080bd41884567c795cf970d6e0ce21f99527b7c54c7ec0571caa3d5a2484d33360722b17d9e82dc099d97bb0108359ceebeb098a2d6ff0773f060aab12cbc4c0dc20d3f20e36bd824ebf4df456ff4215fcd506b41e6061f54df5c6331fd84d022106eece150a153fd7e3fb8a18744ad744e1ae6833ea53c94df7bd3e66a3cb88107fce54477403dbaa6a7d3faff191bdcb003b2cf84ee752e99e75287ba469690f14529717ec96482811b7470c36d486f3395644738b83187a497276db517ec4dfd71430ee698fff74d37c7f46fc4614f97eab278fe74398be1061c2af3d6aad321a7544c830c37de804cfd182263d81fb9b670c30d9797c991795358b3dadb07097460e1461bd29822a366a37eecd87092d95dbe446987fb4370630d75d8978f59bc3da9fa8c1d28b8a106bf44ff75ff0ac4bb071a407c0439636fa42195436f664b97e3fe0ea30837d080fb6d90a7367a2fe91d28630c4783873a1a407ce4e0c619aef6bedbb7131d3ff471c30c8aa63b2b13a1469ff646194e9dff79374d55fe0d32543a84ade777698be6c618d09dfaaf5595b4437b430c667cab32bdf9b96be61b6138db3dcdbc7f30d8a7ffb2c8e7bf70f64eeef9f4e469cb7be1de98943051d5deafbb70b4b968caa4299547cd05b3f5d37d525194e8750b6b4ae14fe59c16129a1747eababa75320b954a3d4ae9269129080bcd98dc95d21e53ace0153c0d5ed6fba32ca6c70a49d13ff2af73d6caa60a5bd438a746bef2ac850aac29e977f34f21b914fabd73501fee22c10d29a0a5c25cb01c57d5f35130ba78f67cad3af27728e0d7991f5afd3c85fe84e643a6f0233f8452b5131e651b64890fae9f6f023a833e4bee4157289709fa073533fe1a4b847609e95766fe5e280dd52ac1d271837f5e0ed9b62601d912fddcbfdb8b29124acd9663eed8a182288f8098b174bf24eb2b9e11ce95c4c79f5879b9a908ebc5dad3f922221c56fcb386af8fd310b8ea4e69d541854bba218494fa92d55b612a848291f0d21c4293fd45cf0146196adf36bbbca7f78b5fb32e7e86d9f1abf8e25d7bcb41c7982d867ba1053d1d791d9636cb8ba37758b6e62ad5e92ed6d01b2c948a441797ee4ee14b53dba58a241785254d4d16473657740224b8c0abdcbb722eafdb486ee1e37b7c20030f20b1c500486aa163c78f0b2810342e4000125a288064163a1040228b1d3f2ea0009258780d6aa0653c800416af38230124ae2800492b74188084150c2059858e1d3f1240a20a1d3b7e5ce00024a91841004850410092530880c4142324a540e6b638e1f31afebb316240428ac4ef8f87ea8e4da79301925138fa3fdb72ec682a1d780f1251a052b446dd4aa8bdc90324a148931cd9ef52416e9f4a3840020a924f907882a413249c20d9443afc7d698fe5d1529268a2145647653915435f3020c984f9432f27f131cb5761428f9bd699797df4841e048d1f66f860924ba04f950eb22bc585d54b2693c9840c124b98be7c84a7cf99d2a52495d8b45b3c94ae68f19328b1c83a59b54d417f1e774032894c57a6d3fe379764ee0412492c2afe323f66d39c5d13482291b98fbeaa1c3e6d6e485831e9ec7822a6fe2225903c02b5e6a1334dd45989248ed03f6eba8ddfc9c289028ceea8e491e27820128643a150200c048041af9705a312083038602a0f8743b154d175e1071400003d2a205c4e2a262e1810160e8847c271281c0c0702c230180c0a0442a24030180c6881bec80e85b3aa876b98f481ecf94d71f8f5d58168207784880cf08f5385adc5f2be523fddda873bf2221bf00b69c5ce422389baa38a3b14b9a59e3384d32d27a43601ffadf0345d008603684dae9750be78baf4b1352b731db4b397f4c2347f320bef8887d1a424309fe1ac804fa643a35974a906799e7b556002328e13faac0fb9169a28e42bea5e3ef5d298f3efde529069d25240edd7946e803be90bc142492b5661cff145a8b75fa466e9aea569fe8200d1a4007df67d2418012cd853d500583417a0ef774c0b682239c77a2d8920b319e4630cf2f49a614ce36cb773238490d6b7bd8e67bd9221f7a0c4b18cc6074a1f4d9ef2d0fb94cd4084f6b4438dce5c466cb7310a5ee3b4cba3cca6797b17237101d518d9b18a7a06e3d8a0dd23e8858c51917e77de3e54d339f1f297991ce907f1923356aa88c9d01813cfb9aa32265ae2c127df93632ef126c3d2be4b87769f6979e4a8efff6974ec8f4fdca47011a2ae41b272b9bc532de7e09f0f3b67589d1a4d22f81dafa296f791f07027f78898395d156e727b90ba9225e4238c735b63816040d2dc8f599359dd0f6b97937fbd4feab46d081d60383f4733ae0a4097abd647aa85911858263f7e1b501fffdef44e6e05c480e277b3a71a1b49d572d80835e3aebc484201166eff294b134020d768b136c528056e7b1c7869c5fe47419aa8cc32ba3844097b803471b71f69d705c43f37a81001cd86d6e6f6b8f4c212de3c79e39e7131b69405958913958ce6f72d5bf9d20c1496f58e03f86d2069703f1022a407012bb5dbf4f873fb8a1d61896461b05d97be2c3e2d7c58ee65cb39ff99e613a9eca0f9f992c385d763c7b67455b373c478dd75667a982c0dc29e82bbdf0832f318f0fd33d74ea68859d320ed51e05926e24bc7cf593c533c428df8cce8fb2879ae8524d05c3252999f59b61daaabd5aff1a7a60521ab1ab711a357e45175093751bbb71e1b4e8b4d62c42589cebe9c25c1dc73de6ce69a6e40799024780a6c012d819647fa944f113682c29c876972362701557e26ecabbf4eab93ea4cd22e884dd8676c070e47859b973819d24495e64afffda935d7ec86b36b9cb965283a67bd846b3c46977a4e5822209e10c61e02047d707bdac02222c18277be107d1c8a9e03390108835b882a970da758cba22b225b9606d68e764a41c5d1816724a8829ee470549e74133cabeddbc2de3e6cb7db8e35e8c2e5d1c8b23e2fa551961c5c14ed0027fea6bede55b01b156831962ccb19327e6604b5a011def05f16e26a3fc3c435b63d702ee2c1e6e2c6732454ba5a4f3a2b72315c409da613eabdf771ab2cd490734d7bda91be6585ba2ba4dcecc404a5d984f8f0fe9bc7ed1d16fc70af3f5e8482adb4877cba81b9ccc1e10d8b4d3d65a9505506a722d2b1aea0464ef5a8785b0c1dca50cbc991425d858529ce4511b35c88c4c26a8dcf681c91c009189cc8e4250b5549309283a6e2dd2d8ed56365ed501e31ef1e44830ae51903f4cb0b629aba70f967dbe06e3a5197f5bc588a440ca0470c773d6c6752213f7b3099f5e3c958e3cf0df834935be161ec6bff6dd97381c1492a006cef80429de6436dd6dc6c01d78185840200a4e0831510cb7f1523926cbffc0a41fc0096f8e67dda246c93aa55dc20b3fa15045cfdb53113e733ab9711e5dfcc8aa6881e4ab1bd96294e0e52ee5174a563c14849a367a6729bedcaba57a8142fb091983ad438e835c01d5bfb1252988a08bce46e2e818df51246b3c48784a6ed669e52b7b2a5c71603d23a50de05e93d32716e5e86b3903db4cb833371982c69a78a424116ed626076125634550cc775575fed63fd1634976cdd73aa55b8a1bebcb7e29e1945188e5ebc561c33190a66b03421f39a65998c6164705ec3ac50a107e8efbbf6e20d0974a6780cecd0422b158383a9d90f9500e969d3a9424803e74deb9a3c27b5b13789d20da87cf20530c33c5feb9de63717706f78af12d9797bdf718f50a37495224ff33ca2883070d2c45ed85dcf6079872b0cbcf1ec043fa199ef59a5dc86df25ea4066d8b82ac12d8f1c24d9ede15083fb9533ecf4cc294e47f778b10381c5bf3c81aee340f71773bf6b76fda0cd86e80f9f5c8f1b5a3f60fc3c1942cea6192ae0e62261a910093f26e93b633245d854296a183418450324663b5fcdbec83c14368a4768e25e791ce57499381227169d04124dd9a01a39e416bc74f68645e28ec62acd7064642cf4424c1b09a759381ccb4da943a1abb65d4af4ec47a589d5213b03c697b7524c856dab7841dc7bf8d3375cb5ef2e7405905557cc1962b402809be60bc4ed9c058ba80e8fadad80edda6daddf8dc225d9e2d04e09a5841d683a1368eafc32b209c946beb68ec0d9c6c88e93dfd907f1b9faf8f9d7de5fc70a67c2ff33277759b69814f9e60ad99868f12b4e081c0106388c7fc5f85d091c4f1edc7f949b29594f3213ca0f8c2876fade9c091835ef4ab8fe8ccbf5dd00044601e185f125ca7914300ae8caa1fc60b01c2a028c48e76e19b3d8a2b3d57634ca1d1ada646eae96716c99b9440f87bd71ab59c265661d7c608133a8ae8f03b810c772e98b42ccad345e9a2fa245659af1346af478ab395a54f6a782bde8f2894e84af6ca49a901a096abb01b4f1d0a133263a447b31a29aecaf4191b8ae1b8a7f07d539cf12d504c65f1c51bdfbaac5ce83a4ab5e42a59d0f31458d3c9168b25a556992698a0de1034841ec2249699c324e3596ecc0c83ee79be73896570589ba1e8be15a4c6874250af5baa605e60da4c4688f48ddd5bb9cb0e639659ed51851ac428c19c7772c0ab71f2d7d672008ca5796956d0f54f70cf18bd8d527346515e1f2b0cc502cf3c445a8aa88b9c6bd4a30d0f5480a2907622729263610f14377ec32e67a9bb598db7954ed5982db63ec63cf7577504bb4e55ef0754396df9f48c909bb1c1d84e4646c432e47d53fd38260a4758d061e6b593db2111101cc6e299385d2a5183f71cb5162f445c558568e1774e4b88fc5e1a468b19b3630cbeb0ec5ca75e785580a02c2fe5630adad02cd5152730eb2c4489bd93aa28e4f28d4d295d35448f139cd44279146e2a52fdd9788cc4ca328a839493f204e9314550c6d15a0c5ab8a2ee7a10190e5f0794f22c1a6242b21de3c09aa29e4993a5cf0d214294be58af22663b220d5fdb0982185f8c0672dc525cff7398e9fd0a3937a80d7329b73398314d1689fb616f5fc467c3c9a67290ab0a816cd8264378b9b44187d91b65d850e26e87e519fdf992726c0d483d462dc203b82d1083c1d5e0beda279aefc7e8f8e2f391f7e16b81bf2965a57167c176123af9e415b95df88fbd3a5a68b525449280a677dee322f5c413a14acb310f9f463047eaffd5a5bce2b9b4275366bb9c03e90788f5520745217e1488c87c89ea4bab35949001b6ec83c5408bd5f63bd880a435f6146604867bd15fd4ca0b6dbaa40ce387105868d461e89ab432a5435011a53563a3fa1e877c610852c9dfdf844b5e7302f61e1dd2d58734bc0299aa6f3f827ca8ba69030d58de73316b0997c1adc0ba2aac4debe83533d5a84483b2cc2954f0ad94667d52190d7021023b22bdd4d56b6a8751d0778e4c2fa12ff5cfdc816e6228196644de5fad245020ca5465da0db1bbfced0c384cf8472044cf745ed6d590ab1648fb71ff3872267dac340f2cee5bc3e207ec36926e44dfc87ad154d628e7a5eaced9e82a460caaea1399ddda57bb62658171ae3d96bad2acaebb56f88b5fbfcada1f9d7b383f5cd4d7674d2e00632cf4f8dc1b76ae98b757d1ea4d96109f4969175639bed26248468683574ba6c793c93021154049c04a176cb3ebcf0049dd18e7e08b5441e5276fc2a2141f314303ef3803beb717c650b010baec738216806f2fe130abc62b67329b42060b81f30c946f3d01334b0d2e5ed335df833ef8505b772ba0dabe9e49d2664a13dadad6bb7b3c1db34927f2812d0873633279e8c0c60e88796726fe6a5d696a92e56418d53c83f830c35c0ec16fcc56cded1c1c5a161f704f0a21b3a14f4eaf57a209e6e5c3da74ad9ef9a690e0065f64005689a91990f068586df590e0081ef1009b2a5f6d3a7253cc4b29438ad92eb3f98fd1bc3db2484fa434f099c29ae20ce0449545166d22ff98c7dca034f9c1426e0b8a347fd2bba0f80a02b6241f0d0bfe48f1f0b654435ff264b90e5f312aa1b9502aa64df8452b10e95e66ef58cd05ce69e0f174abcc182b2cc1aa4d12ec93fc2d0acd8a98e0f5d97eef599de853c43867c009a807b4c5d48fbb28d1f84449e8295d6415d3bf5a48ec136fca363aaf6eec8d0b132dc9ee4d735f56ec44707be5090d725dd651852ef395420822f26f9ef47cc21f894664464c9e1224d191c047f7113a0482425876b84e03ae957045be2a6a90415d00f173a8b8df2d3403c6d03bbcdfd8f8db18c37e6bbeb62fe929f33442d394ada1dc8e289d7477b1ec64121a541dfa290314f6ae8fc821e4000c1c343d1de265235f9f47cd3a88fea51c30a423e1200838527a67d8a5a9ea5f83dd7db1eb1a9ebcf796708030fe9a9275e400d20f1a079487dcc7d45a5d8fca7c8b304044e6c6610b061e16c0e4db86f60b75683d5cb8b22cc556347d0388205d64788b67d4c37354daf4ec815bd6d27031b0373d606ca48ec2cc1885419cb33e648b8c3fed83596ad8aec0f68eab97b488467d2a4f65fbcba7280004acba12db8ddf3820670aaf6281d8bf800a1a0e56c78a274c85c3186435ecad48f2d05f39a91cae6628cb23151742dc9fc41b248e9c0c283b4fa7b3a429c5be4634efad9a7026da0962a7c700cbd74c447881f2cf483339a2225058ec0d28c71a841fa2079c130e2a9e7ac6884598b59b6cbaf6b6a12cfbc3b0d33c86715fe3d8f7d04fecab73453e38dc8679d296f50816194f22dac8a8a60b61706e9205fab01781bc0989b714b801281e6b05123d00de04462a8184c54341171e2779b1b7648983ad051128f571e468b10b90999fe63c0709ede9386975dc1dbadd429a4bb5bf57484e46e76ddb545e947dbb195521be668ec93641dfb1d047aab56c0686810b5b50492ef3476b1a018c1b204bb63899923a0a443ede01921e5f691f258a253d148b512344751fccbe5bd17f882a445d61464477f7213089c51b171dd303ac960952b0eb7a5842eec1ffda019ae3791704f3e48db645c0b4bff25cc9312f83e62c65bd26e100d042f88d48cbb9360cb93a34d540320bcea4fc9fbde9041d7db47ad4b0b5ce6d3d9c40516d1086f2d6c15da58d074a0c601af6d2180c7fe4038b084081a89ff5ac42914c2e9e840f2290626084853f3c91836cbcbc36d00e6d2f1310fce50c1df44de2604334eeec24d2f43e06098222a640c0964299acf18a9bd3d8adb425f46a2afd0e168c60647313171065ef275d45b6217c79cea9a6f2931226aca799d090c3f878152be5640edf28f4d882ea8c4d9e5f802b623b1b605d4b1115c0ebb2659ea8ca38298850afab52fa2e3fffdbccdf56c00dca1da53e159d31cb93031c41e91ce3be6d4a8acd9449dd1a02ece4d4734827ea0632dc25975e321dc518bca25b8d93507d1a9a1fbf917f61e8f5be31ea66b9e0fe268f8d880cb18d57409051e01e3f908b874641f519ab164b52d7244b419e391b7fde81237483c5a753ff265d0dac81642da09b9985b169d57e8cebc4f269f750cdb19e16914badd5a97d16e2433c45f08cb26fe2ef9b6db5940c7f3f55bfae9699ac345f17c44c64c378ad695bfd326860254fc3e87bdeb363577114f314f5519ea400b54bcac67551664544b18bdfd4067f11b334097d0be1463d17b8909360144051afcf49da6406a42482b2a78c73afd4de1b2b045c142ceb2b3592e7d1b5aee8b6e54c3ff85ffbc966d9b8528733725e8d098876ec2a6fc07f7d028650d408cca98310a14906b18ff3cccf1bbd6ed0c6e67e7b3b926bc93434927a59baf0b8503d25efcf369bbc5a0f16f87fc5ba04d90f52a04fc38970a1f561aad2fca4f21cfb83b954b884ca34677e6aa7310c4b270311f45c5f0d3475fa769123c18d7fc1c31857014d291090c8d331338ca3a3173c7890aec68b73abab862a9657009c5f0f20f5b90b8169ce6fbb17a5c2509cdf060649c3027a604dc0975642de6a5af682a9d26fc655489ac973f8a7191aa79784c99369951a6646d26c673c2d5ba2186327dc1a1d9c322acaac061c77e2c56b8d4ed085639736894f8697b355d3b418e4993d9b53e158a789f71016c8f00a9da3c8a0b39ed48003c01e19036a3430b8647eb8ae06c3c7e7cbfcba93f0cc4d0ce87df52036f71c3802193361cd6ab68d3bb5c0abf87c8f5f7b72253e0889c59a1799e0697d6a80f9a42975f6a7bad2cb5fe21df86b2a693347afe05ff9d8a2e2f914b579c059b610ac2a0e81da39abedf0f457712abc9e99e2e6c390a335b6713f232b63a3d4aac00f95d4c043efabe4d56e009cb658dbd3db58041699cac12fa17b6455490b734ce811fa35081b4430c1b4ada3436fe34769d3413649b076326ffa10b4fefa549291f0e039ce0b30cb806537a5eee3ed44c4854620e2b283c7c20b40585a066817e7f2857cd6b386e194c618d281adf045889b45fc0e9011d46552f13e8e5c7e9e74586712e454bf7c2351579c9aeee28438d608f91ff8cc9372ffa478e639629988d1c7565b2ab22eac45c3ff7c6dd1038804520f939a38faa980d9610e806a1711670a489e923b1bf7789a10a359db8203ac50fa49c8605a3d4306efd53c19e3f60916fc79f4577014fcab7e6da5d6411b04f2a6e9047c0310e8fa6e063125edf4f56adf2a4065531c908fa3ce49dc4ec4a025a1967490b43abfbd391c17f3bedb27de2ae42ac53e8e01453fe2d9bbb7352d3a0e388cd3b9e42a4345ca959c84fc3a6dc6c2d75598447f5ae894b070ff14ce1aa8f2ffd4a417c9014c5f976865d4bb53fd1880aa0c29d8d71e079d746dbc8b022d6d71f03801e3064e41b03c4168984f321d6c3ec46f7fbf28abb028270f2c0c5a37fd80806e20d46263897397ef7b5a8ddf19029c7196044878c796a31ab1ac386d17c42b0c807eb15f2ca24c87b94eaf4e87df60fe3e7f97e4bea9ec2780e5de8c64b1701d202dbd589d2162c791d9ed6921b465ab9307523ad15927256b78208e1c8ee10e265cf800bdb1be041d371bdce9cbf176cb3a67757e4fa335a8e280699a7dcdd9bf042cd474febc37faa7f6325ae3cfbe1c95ca28ef7734831f0b7a9ce2d4b763ad60ace5961fb63c0d6712c129b29c53d22e15752f3982520ac8a4853233a10311db8380e73ea0eea8a3696d548b9c4f6d74a6ce77e2038d87bd6ce35a608b1ac0f87eb785b359ba06d612f6546f1519ecd6c0bb48976a5819e187a822d8b7a6447ae5a1106cff40c5f07d8c1cdc47422a0cbaa6a8e4b5dae67e100ca4a54f525b23cc034f89cd9301d33d382c5141cba494048b6c2c4a55ad8504a7dad10c02e736211ad9884a9892387217266ad0306eb878ab36f223e2d7820511b550d052636953cd60e1b444eb1d1b31cedc3ce86342f498e112768ac1c0e5456d80fe6e2c19c96c22f891874defa4b3171119913c44768f42773d42f56cb820e62d34e418b7719ede557ffa86b6130bf477ef6a4bcfa185a98f5a037d6c95f04112aea43a53d8d54f4315ec5cc47e5f986c07dfce18e9d7f2190bc3d0c756457c0ba5953eb9175719f3bcb97cb15922b564cd23140600c35691af8d6abf1c08f03c4f4b8e343e380c63b0665aa84c3d5f9f5e6c7923d99a0761cbb1cac74e37dbd120db08b4c977d0d5a8dc20b7485c6d7aaed01a295a73e9317d3ca4b82898948e5ec408c8c4601134f1833bab3eeb99de5dc87ec9ce06c0867adc5d1bdf6318b2ab99d0ff40dac1c5eec8008db581738e9910263bc54ba7905cad3658fbf6e374b2582757976f577d472efaee1b45ed29f689eb4280de48956e78038808561bb428f108fd1db7172d6cda3cb4e8bc508d879e106b40d94ba8126d6a434aefc1880c3066d2370f16a66ef05aa4d0c0aec00eacd4968657f34c7d4ed189a5ba437b5f4db8dd13acc82c7984f814871bc100a760f0734082076ef265ad1a21af173658e3f7b81c632af563355f7a4faa50d4b25e6b7bd60a481a63b53b3cd344f268a76b034717b093226a796ce255283435328d640874ef0254cbfe1e86904e51e70e24ba7daf809876fbc5aec726a37f2ecdc9b1e1c4f79d60284fd5884cb0648e39cf25c4e1ec972bfc41728f096583d2e571af0c43d3055c0e3396783f7cd41334ff9d984e8d36340bc63bc28d1b3ea1bb1da940c2615a8cf821b3ae5c8f889b29cc4305c3b26c4eee31b60025197d58f18cda1c122549fe0b0ad66f694d3740ce81ee5715d8c79888b781abece61a28bd1b10e9810a179344e9a761fc24cd8ca7a9b8d0837c48be634ca59dbb4e9209df8ff2a6244813a146ce2c6e5efb4fadcdd981a43998b64b26ca20a9d9cc4d12d2e50f3d04f3874fb94b10e857f11290d03bcdab4fbe3d904adf1e01d31bca7853bc8d3a55766902c8e53541444b440f4e74288a85c7a1a6a2e0925143d8a1f54af2d3c2c26a5a3e4e47efd97caa400c51a46252db3a1044e33abd46282d0256269bbf2753798bca072275843b75f14fb88b8e625e8494425254706b6a78f88309c9673f3d3a95f6cae056aaebe5140f3bd3e71d4e52942d91da81fc321cd53c5acff494c46f726bb8e644f65c21c77db693cee8fa8b2556a186ae9a988213d56fb1e0af9806f861c28e608abb4f1f0fb57e3a6911ee9ded602f02af57c09650345765d1e8dde8cdc57f668a2fb201452046eec0c6ede20bb06deedb1288f64da3c39928b6240e14da79fe293d7723ceec2f21dd01acd8ed0b88fb069a22c3b9fcec819c0bc0f0de18bbca18312a732b395f112f7f2aa6071cc4e11987168363c6a5867c2431be0bec3333311ed10515e48126034112d3c5aaf22f4c0c344e27cd27e907f578e2e5bf9377af40a318973658b6cd39258f131ca7ddf40bd962ae5c1d90168312059b8e07a6b01fe6eccb1c5a387099c2bd40af7edf5dcb5df26d91601cdeedfc056c3d2cdcf7d51ef4e7681c379281dc7f438773eefcd3b878245a89390cdb10981c39489d985df5e5693a47f9726dfd632ea790f6b686be21e319041c40a3d08ebd3d4e76a7c474f8020c86fa3e587d86a6739b835677a25923e1afe3f0d010e307ba25c80fc8ef706e0d4d5f99e3ffd4589a114ad6ecf6677689e5ac26642edf4d1634319f35d21a7d30603c0e871ffa1f1c7af11a07ff00580166a7b022f847e00d1d145f72d85f75215911951a4004fd6c81b2ba44fa5ecf699ff3fc2402f24815865e4f8dceb9d944edada4d21d7cf6371eaf0214efd7a1951668eaf3125544eba8765fcd828c9736062b31beb01c482b8aff08c45674ba83c8269951351a7e5cfb8bb9e102fe254510f0093117ec1f04ffb6fae0e5b446339d6877bccc6d92df1511e8cd18e38d1a4f54eb4a95f23a228bda7deaadb18e13441383ccd2efa250eacfeba4b7eeecbc051d40bd0dd215fe5f2ca926504f06597feaebc90a990f6161c9f4ab21a3733410c1ce2af81c0774ddc445a845e6195f3ed2643ae09c35ad14cd37a179a65319e909bd29dd24ed15149c688191ad029985855664a728426783139e0497a3747d91403c9befd731c7027fd937c4bfb7bb6ff73f6849a898f0df82dd31201f46f185d8477a4613b108a2272fb693e0eaddfa4226667dd9c72a10b021be2cfb4fee143366523285cad150cc8e949977a53f0a0a78681a76e1d1ee538fc06f05988a3bd271ac3472877f7fb1ab8175c1fac45ae8d981e3268c6d601598ae3d630f130e968e7716b08f3c0e96482ae5163fa076647feec49d15dc085de3528b0d735241197ee2c1643e29c72021e3fedd6acf273b9496ea4665fba64ce52b8abf17fb459d9cc7fb6cab6acd949b471da492d09d91f6cd3fd446763b0816cfc6d306be3aafd4991f2c03fdde94f22ebd221eb2817706dd077dd0f5e6fcf6beb01c3dbeaccc6c3618c1d3a9591baef31d72bdac4d96574bfa32eab0f47973ca7436c0c5dee7e95623f390d8919c965f603c0f189b57e50b623b2b6eacfef1f69cf2be7be9812e9b0e425ea28c12446f510e94a3c87f17d476221666aa8a45a9aecb198c25bf8e770b4603525b3d0cf6951d96139d715959073b4c83cca5ec3e980e811fb9470521810c5b03d03558c1149cca13c662e3ca32608df0813e6654a0196cfe4b87acd6f2b0b606e45c4058c3d9c8d65baada616cd0ab0012f57e932f2075e63fbd957c2c93f7d2236dc487a4046dc22d93ad8029febe4a46a0d4e80a7221d2012fdfdd5a663a9e19c60e23312369c2c2dc6cad95adac7d09966643aec27706d1dd13479a508dcb48bea47b134bd19887474a167d29dd04bf0f050d435412993205ef7e4d0eaa892086956eb3ffbd449d9ede9884f788d55115fb62a5948dfcbfa92a21c2fa934792338502e47e1a446d7cacbcdc81bacde10f5db489dd568d74d6034984baa5f7ff0fcf4f1e35c082082d50452cf47a75c14a6e91fca86003b12b15e90545c6bf5e0e0450114465ffdda279cbee5c3c97337c2f12df2afffc104e394ad5f3b019794b94c04c465dd11bf5ea5bcf7207dd26f60d2f07d2f5a69f1a544e68233ce51d912e685f919c16aff182d00f8a0d04e86eddf2c07f9af6ba27a372e92b5f86fe7d36afab202e1b38e1fc26beb573bf56fbe71370e5d4cabceaa7904dfaf6a91888347ad29786b3b8fd833b8c2314d71352140c4e32aeb52ccc64be1f1d1f5ed91c5fd13ac52c0d0acd3f0dea618646fec0e894d0f36cd1c972b19cada398caa189446415ed3e590ac91cfff6705f2c1cf513299a74dfc27f235b134781fda7c251c2ffdadf64d23187abc8242be45846ccaa88f8c3fac3f680a8fe1bc1d3f33466c719a16083584341bb302655b0287f2ee4f3009ffd12d42f4967c8b12aad93d91b3d08642d2a679354ecd093c44875292e3a2eacd619b4639b1999ec4e55b963ad1559204e1ef10c7310193b2ce88b4f80a29eb2bbc583c96582b11f92549e187411061147080bf8b3e503b601bd4a850620c94356114eadff781c99ca606b42b4ebe0e58fd04521ae43e3891457170f49a1e5001f53a81b74af2e058a4cce7cd3b684e610ca211a3d2a84a464c087beb7e5634b7d78ad0584126cf96291fec3c471a51529cc4ff85ca9a52f859fd2d2a13f82ded106c657d2650bef852aeb98a0a26bfd2ddb073b0287d288bf898bd53903579565a992108c61ae4a6e9b77473d043a26de68ee06e0bc48e16a6392da26190a0c55ebaf4d616f4d0c21ebae0fe96f5d7d21eb9c03d5d884ccf2d62adbeaa4685ea4ff8fa0945fa55595315147b2922658915e5a79e9dfc25424b2dca44835b7fb51a31ef5d06dc9141a1a03f936e332d5b30477da18c06ce32fb9f69d31173d43bd53c62609e7573ca648e17f53f233e270eac792d979e8a3def322647f54cdcdb0e142a3dea9b42e6f1a508dcb48a53c3214a782c00dc808655304db8b9f0f937767a3fe99d948e053a45ac837bfa426537ffcc2e195d7aa07e9406b9ce5f84a5675549c5a0aeca8b853aa3aa49abe621c36bd20b2dc956cafcb1e69d1b33d8297a3c23dd6fee4b8edcd8b6a1a7e0a0994d373d08b74ffb23d83ed305569bb64cd97245dbe224ffbf06db1b9f62752e3092e9914324d8c1fcf6ddea507e370b752031c7c3bd7c3092e7b3100cab277029b0c4134c6c7d592130e9cbbbda9490b1598fe68af77bec9b16ea9fb0ff52d83846a7eeb53828cd4614eda444f055ef239dcc26258186f1a5c60194ab8ca59fb1b2002c9fd34c02c7f3a700648360d9c30b0c64a71206c1f03d5b49b106360e640e517abd7c642953ae0f431246d2be50dbf6034934634950ebabda26b9035af0a0b4c5a236e608c32523b00b7f1604a1cd130aecdf7546e90a4f1c30594703c7c1e9e770b4c98603e803d3cf8203d1a15282d551d3eee557035159c3ed8d48db4578d3d76d5d93167a9d358c7a326ec704b608917a6163096021d5dcc1ce825ce4de4c0d032f28dc879cda814015190e7c1610790f82b728903c203b4262ed73ca3757908641d23e3f89f56e359d8fbf09b0d894497ac9dba6cf8f56a2ecd6417fe71ac28b493a602ffbc3d5a423d1be511846307f1a6544351e32579663a71f21529fe0bc33336ef7b64e1e674730d8d406440ace63d52a5d887cbaad387997908232d8e5e36274d8cccd1f968433b9bf316bd7b58f5cdafa1a9a20aaf869069d927f31b4ad5b800d7eadeec57f5b03a8c45fe5d38fe86063bed34e856b548a040227b5425e358ca9b3e75a077c86ce83fc09ec2f05fc2a3f463b314f297bb4a331b8c8c95bc0990378031139846ae4abdf9fa354b3eb2d309dc3b08bb2d1a9725b478f9f6083fc473862fa827eb2db195a946039ce467307add60487e027008c09ebe913364102e27477d32980a1b9ffa7a026d0010d868c0682e2d0b1c6340b7b2a5ad6dc0d8637662f01ed9c51d354c6f58a995c43e672210fb8b30259c2f210b594ed2ee51f9637a5b3faf574a850028408bc09e1991cb18c42273d9b13d35fcc1e883b999be3ad24f3123a6c53c5c0050ca78bb937f5092731ec8b5e7ead41c103ae815f2a7ae6f5f8db130787e0d885f8093de4fbc14eb7041e65694bc7bc85687463f18d2c059d55bfd8019ad45248df1373da65423e88c6eb1938e73b4138d996d60eae5224d4657e6b26d3ee4636de39473b5ba26865fe9f96872bf9506519a10abe140788ceab82f523a58b89090be507bb4c036e1ab6be6c708cf6d2d27980d1e2bcacb274808d98bc1f5fe8143590994ce6115efa117942d0eec8375922cd8ccacffe9ac3ea2b9e24fe82377dd7de21a222d95cd2aa1f2d4c978660ba1b593cc71d3700494d9388659382bb12f97e226b7b792278e5eb56a55a4af747ba4c485fd8debcc4981337e0ea5767d971c957dd2f55cab087e5652c03f4ab021e4a852b0d2d50b25472c33f3f3f3f3f3f3f3f3f6f2c450a490a95eb1b6e654544449a032800180500000b6d919f000060802e450d780c9e0d93075922eec507f1a1b68afafdb3aa24d31e881452c710269613263d94215f2c429b07bcfcc34ccbddde2c1e8ebae252aa29efab7748fb46ce4ea2bd6e07e2bdc55e0fc9a6973af0173ef629c9f858e8f0b7457b94b23ac5328752540411f1d2d78a1cfc918ad0bb2fb9cc38f0ada9a9ee72fd251c0e3ae29c6f458cf0d11b0e6df5b2723cd4e9c80dbfbbc56c9fd49e15b52167a856dbf52777880da6e5a7e059b5cf1c6b18dcbce11cdeb2cd6a702e3faad017612e9b8663086e9152160d456e567cca4c7aea194a8de694d27a0c7b31c3384e1fb947c1625bca5048b1f15c27198e3b48e260fe15b51c83e69995d68175ab62582e95fd07e7a01b8601bba84c95c101c31082a4edaef44bdf7ca1873c76f9725ea82236d2c6e497b7ba407eb8fcfc817cf5345ca84c4272c3d7e39c660ba6af48544a523993d1c25d1e7a7859fb3e259305e31b2ea4a7289942060b04db4aab14dd49227385c2a2ea2ca6e9e656d8d783b6ff50dcef2ae811feaa9296defd5430e34a2f4da50bee4fe1a8dd3258beec5a5f0afa887ea0f3a2367e14ee863a9fa180e5762aef0e4382ff849dfcac67ed27a49d304477147261245ebc0973648975e28de13713ec989093d1f1453c9670ff7543bcac019470388369f87ca8ae06480267d190e3f0dffc290640c21892f71eceb2e13bc67c1365a9bb2d3d33c6f82a92472bc6519a9a7fc72149220617397c7874316b6c18df8a47ef9546a52761dccd6c1d7d0423cb16bbff09215a86d80086a9f9776bd7a12409b1f10b02d8f045e95265e5471dbd5df26cf402876aa9bd8ec20b52e775689373e06163176b3fc4b988e5b02669431725936853791bb9f822a96665c5464baf0d5c4ccf7817390eb59f0305366e914a268f3a3b7004366c316fe3488e679d58f4b0510b4f1b52e6b90ed5e3605aac97e38a4dbdd631cfc20fff9a2ef427aab4b2785d2ce571924b4a692c2af96cfea0473f46a3063660e1e5499d14d3fa556f1a365e4110b9b108775276a934d048e3b0c1ea805dc107a972213607398ebf3422f00013d868c5b2169d342c6b59ecac20bae4b4420e5dc57c929f328b4b8e2eaa8a9aa7677faf3edcb0a4821cc8fac57f8b939aa8d07204915ecbd61e054fe17de925fdde1496ef5af8794f6b69a540d34ec4df26524c214f714d2adbb31f859ff29e9af6fbdcb6280e1a628cd8c70e777228ccdda68bef1412aa81c2f2b0b5c9e81c8fa94f68dfe6932c83d8a3e489bdd566a37da6c69a4e24397895871a31e7e0c451d9ec927aba3b249b2874554799526f95cb9af03d58d74b1115d8c8041ee322f991ae9736581ae0e0013630416b24bdb0a6de1e918d4b941f744cba5c66ca681a34a0c1a291060f70e07dd8b084db17c77d52acc8c7a45103a7c1056ae034700fd8a8c4d75851275cdbaba4f0c00625ca41520b0fca5e26e693208bad544e8f4cde42706043125c0ef7e1643f229146ba88bc2425ee812fb00189e3f84821953c18d87804d991343fcb87d5a1f3361c719ea36548216453ef6844d97143d0ae1851af64c451f61577c8f8ae115cc4fb1ec5cdd5338b7d14d1551667c9915e38021b892865482229f7be938d0d44a4f5c1e5398f43209731ef3cb40f732b86f85e52427c90298386855862797c1d7578b93c1b84a86e628474c80fc26d0be20e652f7e09225b1df54f91e8983c10648a15fb0aa996e5da00c42299ac2f4637cd255840d9f843fd74a5923eb40cdbf0838d3ed8e043d36b97bd5b42fd57888d3dd8d0838d3cd8c0838d3b7ca53bff60e1b5d96107df9edb3273e42c3962a30e58f8475e148f29daa30736e85074d8967e52cfc1fb8e224b457bdc352d0fd60276b02187836fea78c24761449275b011072607a6decffd142a0e07ac637e8f27e56f98ab45c2c741871eb9871beefe52fb3874dbc0470e3b0a19261b668f90439dd0fe34e31a8a46d135b7490d85979435abc8ab914943e16ea577313cea88d840832b4126ad365ba67d5860e30c84d0d0c9c8e733169ba11c3a83849062199c8913faf7a91bd990e13573d85b89d818c31ce433e4b049c9941103ee981d54faf5a0f2250c795c0819b9554b4106c3f4d1e94b2a77bbbfbe50d476f6384aa6df947aa1ac5b5b5161cd13ed2ed495ceff94237de8930d30600b36b8b03373682a1dffa7f936b6709d25cd52ddb4e007915432534827ba6781cebef08cecf0ff7c1ed8c082d1b0d69625dac4d0d841107c0668dc800768c0c0c615b8dc69f6f003d1918a15da09edf1e365c97b93b751853d5cadcad8d261da6a031b54b0a390f247b9a2b436a6f0bb7c6a5792bdf7f40536a4e085647e630f6361751b517852f6d5274bc48a6b030ac7646ab8a0fb9827d978021bb95ea6992b5ee56d38018f2c3dfa6dfeb8cab2d1844b745e522cb1e8d406136e8e5266c974393cb32590a3bb47596fec7c5909b9a4481f666448ec014e03de33d848c2d6273b39a88f1fc7620309dcc88ce4b18bf5f518867f475abcbe89bdf3a08631d64aeb5536266eedd5280631e3fe41ed225c6b6230e1cff9e3f0aefb3d86e164f2f3cba19ebe8a4ca8210c2e845a55d9e7068f32502318d9a89f37c4c841c87d083580715c71f59692adce236bfcc2b2b0ee8efce24ea969ec6035a00340d4f005f9952a57c7b233fb01002cd4e8851d7ce4e037d334ce388317a6c467845e1faba87771a0ebcc672f972f4c32d4d0454db65a16f59742f247a36d0002138080011578c01b6ae4a21c634b5b8a697bdfb860ef4435e3b47f64bd4523591f5a5aec38435b1425771f3c8ad7c2c8f79ad51e3a6e272ddc0ad18f32c6a66e9cc527592494498f811ab2503c5efbcab1a57ee8c4c2d48e2435b60a8b63ef18aafae9dd24fd8a2a2fcc2687eaa0862bfeb049c286d58e78a5462b8e7db4d815c2073e7d0d56e0ab139f72ec1323a7355681bd058f2aad76a4376ba882ef4ccd6cc68ff24b41a8918aba6f7258e12e23ffae810a52b4d887d64cc9b25ce314883f042f0b4b0d539039a9dc1c3235ba548aa309b33639cb2d33a8851aa428a2a3a5d0f055e6f13546f15cee8b9423fbc73451f091cccdc3a9cecacfa14628707c6e9d0cf981c60e0a3bbf65ff54fe0413ef63dfbb9aeb7b8254264df1c3a69454ec0416231fc7aedee5d87122f5c7cba7924decf2b897e2a29637a309c5eac383646db159a146266a60e2522d5507491d691d699c7146106880031c6c106880031c4ca0c6256c7259790fd327d4b00492e39835cd2a5f8e6b09352aa16595594cc941beb847a84109f2d45cc5a56caa7f24a831894b4c928e4b73e5b68c5043124e6bf34509e144224724ca17311ac42d53445f8211d48004dfe293e3f416a1c6238ebdead9f93b2a4fb9d470c4991b1e4db497d7482e70c619351a517fcc7ad3d1c6a51c470d4668a613ffe3d0d7e36f6a2ca228395f26bd59e4701ddce0020f00c0126a28a2547fb3481d132def24d44844e16ec287e6f1f36e38851a8828bcec3cbcd40f193209d438c4b831ed814b0ee4c259c310a6cb741ca5274b7b058250a310076a713651ca7dbeab41883f329189bb8978ba36a1c6206a088268992c629feeabea350241ca9243bd56bb4a3f01c461a38d4abd076765d5f843ebcc26a1994fa3861f5aadef0af3ce90a17183aed187f23c75dce15d94d84b0d3ea0ff9977b13b8ebbd0d0c10dd080418d3d60ff4d5661eb32cd02851a7a40fe4e526e48d67194e601a989d48a9e34ab8f0f6ae081d878e96d329d222777403ab52f732e4f489f1d66dc66ca168fdccbd7a8c3922d391c8f6235e8f07747d2680ab95a7f0e58bf850ada1ccac9871c521bb30b73234f29c7a1767c35df9f34dd1f1c46c76ac9bbfd6c6ad57803c19b5ca52f5850f16ab8c10ea4b742f47b4a696ab4e19f7cda487761c3f7bdb1914fa2e1ad1cd45843bfe9a21e35d64b347750430de6de5f4c8a6e1cedd33075bce7310766cd718e8663886d791d4747f7f719cab1f658cd7da4606133fcbb71a9faddd6f62d83cf34cf0c6e217b90a1bce97ff21d12b2a263f0c25bde57e638f24911c39283f5a73c0c84cb415a73120c8a9a53756530d30e64409da0c6176e71b8d8aba1e214f2421f4b7a101fab6abe0b88a4e33c99c385f669eb45ee2d47736f010ba1952d3f8c74fad08219692a2c783451d29b85ea237c90362a16ac0ec7523cce558676853e6a4831fd5ae11259a170c9a592746c15bc0c731f9a6545c60815cc484be95766c42653630a479739cd741caf2105c42a84c730527299346a4481b62e91902a11430d28dc113a3bb2f539347109359e4047b9f94ad263b08360831a4e383a0bb1a6e420d4684291394a91249a47c9273598508a6e77a29f113a921f60841a4bf06afc83b2897bd96395701c5986bd764be1726412f83c4fed28aa4d4a480d24d8289523bde291e4a034ce38a300c7f03f3ea9103beaf18df16875681191ad3abe8b51e6209c4de669a63f62e0817485f81e5e778c0de3e83a90cfb0291f7d68500061946b2fd577e42465090621a5a6f6b8573a840a008c723fd2c3879726b629c02fc68a2bcd51f87624378d33ceb0410c6010031d80a0bd06fb8133ce181f9c71c60c0ae00b6eeca5e3e738c7f57550805e54398e2935c4698302f062b9ec6e417f27d5bcbba042797039627b74b91540173c5a5596f99b6dead240e3063c38e38c0b14201743be6a0b4e1fabfe51031ddce023f0eb1d80410170e16f4a5ad47a10dc2605b8c5631feca5743a0f028c667d142195475a1143134a2c2bd43028b2d3e5d23879210c064249ef8d79de1b00001912f085a318f1e27f6aeb64f1825b21234984f9484017be798acdf1915a94c785b46a6fb32abb594209d842ebb15a8e27db26fc4e8016ba10243ebbd459c0834d91720b31eb83b03007614f613649c015fc949439febba3b534015620a4701d12ddd6bf5702aaf06344975c492a3861236a7ad273919bc2aaa19efeab14acec1861428a4541adecc0a42f4a00147ae651939cfb139690a912352976248b13589dcaf46a23d64d352193ccaa8e2d5eebff4c68525fc8799c2fe1c6145b292f8faf7225205afb7114459f83944e401248e99a3f2ee4aeaf3a0148d8a96e7f7be23e8c8f63e441b6f4288fda3c1ec66872cf3c644b3945e662e03ce13b2f4c0c227e4cb327bbe6d50e63c89c931d6e1506e51477fe8c53395883b135e885be78b1725460e8a19a533a5a8eeaf41783b37a4ec88c2c99fa62196b699030994e975e90a132fabde54559d25c2cf24a8c577671781c1d744e726ba9e8a2cb903bf8c0bf742725179563445faa9423b7714167ef774cc72de8b0269d8889fe5ab6302259071f758cf7246ba1fffaea6509d2e27a7e16ab7d88e5e06da4434f16fb47e9422fa4c27b582c92f46d2904bf94372c1e6faef0b1076f937dc536e1c36fac8fc30bba42af0abf163bba97ac5a41b4ab587bcf4bd8ac289ace85782cade220e48e2da455e1c5887eae440e5c4bc55aed7efe9a6e4e112af6150f3c96be0e2b3f45b949e6e6a9ffea628a2fde78837cdb656b4a518fcd969c5e9828936289d634954313136714d46b7d3dcffd68842040144bb75fea7df4931f8a2f1a3ae27a5020719112eb3b2bf59fe8e3f8c3f08c678fde138d477621f62be6f64ed44197d4caf8c4c63981f7bd439fc5d44b6fa28fb14917b25f740e4d9023ec781046af21cdc4d3ef5ebf6f7d8d62c2fae0ae72ca4b58c16b3d9cfaae032d51e85fbbd8a81e84b112b9c7618ce520a22c488927e84348b26679bf49600e323b29da792d497c2a8e5957d71e5624761475d14aae7313248624169ff5ebc3a147682185cc5bd61ae3bc234a69d2f4ff46284d697eb2a378387946d4dbb0221b2dc1fd453c7f65493f5744f231449ab11351bcd59face0bd31228ad8e311ddeec2c2875022344fbca32e5b437cb96ff2e423474e0be1ca6c4ce7a8c7682184f73e8da1e720e6707d461a1244b15d5ded29a2d60b044f751fd9946c7700e27291abac542f17fb03b92a9e65e73849ca0f57d725b7b0e9a3f7e15c0bef204dce872fc36b9a427c0f4d05bf64379b3713d7436a9229bd488e2bee79a092abe4c98e87babfc5eee3adb0f81d4a15b61f2a6ce7dc7650ce6d52c6737495a30ee46ad5aa48360f72d0a19cb2941f4956329e83d281a5d0b693216339b46ed751355bd884e34036871d5db4b0482e1cfcfe20a97e2419be7d83afaf2fe97f12a2ba210b752e229736f00fa5f3a1f8ef5ad8700cf21c32973172e41afe338f7e8bf27da61af034356dd9eea8ca3430f1d3f53e0a0db6dc54de734498ea0c55388f3acafc701e66e822ddb354e57e3465709fe9428ef2bb264306c3e38f899df418ccccab1cdbbbfc485a0cd7c7f52af1ba304c49d27e748faf311866b0d8b327de94f205d2cb66fc6ebe62ef05e634bb2cd34944ba0b658b6d7f73151ecf854c3cb4887441d6de02a28d91d724a4cfd542e92c424d4766e1f82c7d981762a14c622571bb027f21f904396bff302b0c9abade61e44a791d557832a207192b2a14d7a1e4cd89993b4d814d95ba4917d7d348a1b91c6666f1d2f1e48802d514b762ab729f50c03fe6a9e023e009a53797cb131ad634029c407ccd3c8fcd55fb40401372e9b824d33f887c208009e9cce8e78b6a4e0e042c212779c68992ad2733029440e579698ecc6d7e19014998723f762abe87f632029040f47b0b17b2bb23978f6138dc463d6457b56c8ceba3d3eae3f22d958be1a3ad9ce3548aaf3031aacb7178b69677c2c9c3d0e3ba215f077e4db2309accb1ba6a82f159a9857c934de603c69dddbfbb1e21b6fbc5cf375e615c1b3acc175d93bc9c863485d58bf16d65dbfc7d43e28551693a5eddd4068977b15de5b68768c937c2ba388cb897b1ec9b37cf45d5ffe01e5974c40317efb38c7fc74175cfb7d0f2c2f94349ed10daa2e83813fa9242fe6b31d5ee6e474bf0505a249a7aed94e27e949b4519357e2679ccb89d2c3a4997c3ea207eb8c662bdc6c91783455fbda31dbbcf90bd82ece1a4f920e60ae28cc715fce43eac5ac134ba956b58e89e96155fcc52c9f82a9ef6f8225d4ad09456158fc5b8acdc7d944e451d45acddf8a898effa53600f9235f2b76ec54df15a2ac9bdbc14e5a832588ee30f27a449f164ee70c55bf2f651b8a26161d1e37867511c197d727b916f0dc57be6f15147f95140413b4d08bf1f95ec13ddd35966ec8468d413e5e6c685f3e8dad9892e3decec638c3291138f76ba89f332a985ce34a184ba66db7825b532814c18cbe2a188044b3191ed3e542c8f5bfcd14b0cb9c5c6f771a23d6a09d3fec52d47db3da395c83ecc7d5c8b139e514a68a74e5162fe63233a09d4ef265c5bb8b7bc246cb6c93145b67bd047a270ce0c3e15a22d0e89bf244c3f12b5acfb11e4f0cb49f1fb24da8ea8ce66d352ba118dfc59857df438fc6044621d5684d85fffe045e841c7c1c66da8a8ac8842bfe45f7a87a86f229a1c47b3739ecdf522a2101f4ac7c71e024b9d1c87112e73bc862047f3603e16d603b51004c73af779bcb50a2196106285499c9d0d07314b4ae36428884e37f551421bc40b4431b43d9851dd960e10fe437694de3b09b93ff00f1d4d6737a51ce587d3fd3cbaac3eccfecc54122152980fe5a47453dad5e3d21e8efedf3eb0eceba190e299b49207dbe422796c61fcc4432f73192f829c49fe0e48861467719fbadb0e96ab4b8e7ab32bae0396f95cfd93a3a8d261a9491ec7f163fe1c73a82349a113d723532c075ede26b647d9d2de3828a193a6cb4272b4c2816cd3f1e421cf5e794357d9e330bfdeb3e286e6d72b2a893f8ed686cd24f994e4f8336783da129b6a151eef1af08e1bd2c38a2e29a586b1a5e2fd97ce8d69303bea65b7927f878672e4582f78ea6a43673827cfeea9c351dd0c5ea56f87fd6b612cc3304f17b5feb11619920af711590fe79931186fc1bda3cc2d6131b0dfddf1544ed4320c4eca93cd732f6d06061efeb3521a27f30b3369975eb0e1e393c6bc0bae64d591ac9390351756bb9792effbac790b56fb5cd80ed682ee3164cd099910e52c90e3ed2f1bf71d7db170943eb61f9aa6d77b059fc38c387a2715b2563872533709e1f1925a859baa7ffcb9bca142853af48c977d0aa856a488a8b41da514baed73b55c93630ea39005d10aed60fefc830239d5373b4afd137e42ce193b1732338fe584d36e2465959aa0bcb98b54060fc0043e366dddcb12de2578802510eaaaade4e73e8ae0019440eaf1fe50f4caf33f4012168f7b42987c49f31f0009f349c71b99f331fac7f0a3741e7c6ac620e7c454f38ff5245c0ccb3f302b11ad0e5a6260555fd697afe35b87f1a57bd866d3513e5518795077b5566a0d9760902d859baf098c8393c9313c83637ef78b2d4c969975a815bbf345be611da58f4bddbaeb057145cbc5f24d3676bc387214ede25ebbd86e42b557ad24734e175a6851c91de5fd4e2e177e10aa130ef651da714114cb991d5ef2c9f82df24bf3b1870d2ff1b6451f9ff97f903c257fd4a2fc207233a6b42047b9bbfec2527eec2cdc4aff9ad7ca02edd8f9b52f5be61a0bbe1dfdce5f3d520a2c3e67888e4e52f4b1bce28ee2fd53f6ced6d3159abba67930e1de662bc81eb8b5877792fb63c52a93038f47b2871eb78ab327bfc2627446a78aac522d65f88ae3a7a2479f955439e57243851f35951567966e3bc5902333c5200d41b22e058b57290ac96eb15597c252a470a357e6c51ac51db37b12b2686b65a2e0f49b26f39884105928fc48567a6a1e653b068ac751259ab53d05c73ed14fa6ecf88d79820f1b2264db49f5ef84b2139ae27a25499f13072debd4d83e1dc537514ee5795886d3bf35519e88a1ff1d99302605f7dbcbd58a31c1dbe74fecf0325af61294b7c49ecb087a5ba268cf922c5b2a4175580e25538ea70a253c494b975099c4181d35c4df486a8a242a5909699235ea9c91c0d5424769d229b4088923b32033599e7bc34770495d5a47f3bc42471c578e839e8e42ffc146fc30513eed31e2e0245edb233dc8de228efc1a97255b90e714c1a938fdbb3ce50e4b04214d8e564fbb4cb642440eb7ea515b7508e59bbd2cdd657e5586e8c442bc7f10d63ba942ec15527a11cb883b29422021ff4ccf6f4286d420f6f062b5af84f7c90b220bd995b6c3035133de96a4e689cc01511e178b1ac9927efd87a320de11b91d07a1f68391753f241c9bffa30f533a47fa5836fe5184302bf27ed1b0390837d0010f76e0bd8a8288ba69f8667c7d69002106af0aa6c925eae97fead4a9a07238116af41d7b4fe3d8e38c1ba8c04ad29c4fb4b0fb514d831ba0d1811ba7b8f2a694781c67968ba62856554a497ff3babe5238954efab33c524c9507be03bd418ac335d5ec90c9c16f338afbd4ea1fc5438b951bd82006685ce08628fa4bce71343513f12a0adc08c5314d900b1e76e8c90c8a637fb1eb503e08dcf8442fcfe674b95669a5278a21152ea467d4ca9b46043ad089f2ec9f73480c89ce7362b810d5c1c5adfe58dc441ddc77a3f3cc84f9d04427c13d1eed70c6833e1305bb14ff62a518293e4c1091bf37eabee3c01b9718da9264896c0761231ddc000db7410c68d08108dcb084922b29f37ad45b16e9c08d4a74e351c7e6c0cf38230239b84008ce38030735e880076e50c20fef8acf88dbbae8c6242653a95ad90a93f1c7e086246e44e206246e3ce286239858ee95d2f21f1209e14623b8e96aeee9fdf40cfb061f08c20d461c5573bf5dbb7d4a7a11e9adf3a8e498e23d8a22768ecc95fb2e8e2225622fcd8fabf4c3eb6288d863ca91ee619de6be0e4ce0c62108cfe514193ba56192c10d43ac1ef407d5df8179cc81831b85e839add2364637b84188a3ac34f5813d881b8238e282f7b34569702310071e490408cb2311099d65ba96b3e0c61fc80e3513b6439fe6b7c00d3f24e1324c48f22d93a5036ef4e1eef1d75019499df3b8c1872a336db3dfc737f6f02573b3bff217bf0937f4907d4586f06848df101c6ee4e1a032eeb33262d6bf6fb881072da86f449649155ebec371fe252bcbe01a0fddb08325d211328253072c672a9d243caf4e5cb84187c752bcd451a3e0c61c94af501fdcd7a550710c37e4b0e943050dd5c570230ed648ca5bb607136ec0c1f60e44328225d3e6c070e30d7c447dd49afd70a1c369d036d820e8a00420d0c003fc10c20d37386312ab929d37daa08848bc47692333f523dc6043163382e5c4b7782aaf81304bd6d16ff7c96b37d460d59acfc5092b37671a7e168b132a11de836870030da6a5d34d97471d34d6811b673852bc85489c5c39be0adc30037351faf764a276f8ede04619b691f3388e2ef94b7a6f90c18e22a558c1d75226be3186512b7bcb7a66c20d31b4ed178f4ea13a6e320c6f076912f42a9fc5130c8aa3b30712b5cdc4fbc2a9795561aff6ef2500ac70c30b84da4ae7c6c88d2eb06da996d9039970830bf8765e7c6e778a0f120125dcd8c21f7b8abe33a6fc5fd238e30c13f8056e68c1f3755e096b62bd971b5950d24abfbd6e47e68140b88185e123ad7f97c6b18e860e1e70dcb8c20d2b10ad5921c408d340e36e544109f6e2f5319dc61967e840078ec6dda0421e3f5c978d36b47f44b831055482d656da8f23dd2f85c3ec9e149963ca1a3d0ae465ec635f746ceb8042a6f2f32539d2bb9c9f70a44447daf893b5af13f298232f1dda2634b1f63d8e1b9c355c26d02e91235dcc7d1a7509ad8e78d77aaa8492849c25cdd496ba4cc271d8946cfd7155ea1b48a0638f334c9c63183632ef1555f42a3486965a3f72aa96497d31306bce8ea916ff9b88e19db4e43e978f6e1fc6ab1dfa44a985c1359d3cc71f138cfce5c34b91caeb1c0d0c2ace05d3f8f5b3f317a558292ebed373180d19bea0c3d13e8fae6c42c8bd808c5e94da6257ad5bcef69c0c5e1c5e3547a9da42863537e0011a69eca00738e80019bbf8e2a4748ffddb0019ba709f3765c4e5226283f541ef196744a0022220231787199e1552b55473d464e0e268fff1f6b29ba3fb167f8fa48f26abf5e5b705693b33ab23560bfbf5c643fc030d1b3c1a35d8c1fe000de7c1de8007102083167af824d78ef207e6cf428b9016d22244bd48cbc26ba6ddf3407fa5e258b41fd96ebe2e4bee858591b25bf33953eadf4a40c62bee8fc924e63c7b64671a679c518375345e40862b58b3d78dd42b3da2618318c0c0990564b4e2c8dd23d32b16d1332bc8f179be4b3a57e147926b7472f0f653a982b3bb1867464dc90d19a96042b0c94d5e6fc1210315075f951119fd29aa34922de845c722b9298cd275aa1041f5ff2ec5b4763f69a224d9aea4e89fd2ccb65c46a15fa8f3c0cdc28296a2781cb34333f7e86b2d1485efc9e145888e653950d0417c798e13a7b1d8271cc9b237d93c51b094137bcb4c5913199d6852f24cd7b070e2082e7192248d02646c82f01ccaae5596460b4ab08207fce0063ad0c10d28408626940f3fce57bdfcbe1f99583bb6ec501363a21ee9eefed0bc4ef912e48fab63e8a06289e57b725fee3a8bfe55822c493b88e73b3e1751a272d00ab927f5d6652691dec4bc6851428624980ae2a1073611aa2312be560ae999f92eab0f894a23feb663b04ca53ec2d68f63af5439fc38be1c714cf24d2314fbfcd3ae9d7811b23c701d302293c88f75697399e35884b30d2954ebe430b2d70032145166a924fba15875c5d2e833c848c431384d108163de53438a697a7608ab21cd76658e3bfd22c310cdf7d35f5cb610b356c4f5a05d77224888c1267d849547d1394805c818845d21659af6d23c7741cc50d9e3709f12082e74e528e4ca7ab70d1980e06acdbe2baa1c2d058d18a0b1831df87103064440006e20e30f1e20c30fe5b2e9bd148d37df99808c3e90c10732f64098c9a1cc7a0441073cb0c10566702c0f48a00300b4810c32c820e30e64d861906871f45e52dca806400c32eae0b73f7f3fbbe97610197438a890529668788477c035d880fbe0032378c00346f08007d03080012378c00d62c0831d411028b003770cecc0fd1f10804e903187ba2f851d295b07e94540861c0ec2295c0e0b39a60c91118739522c477eebf15ba5c164c0c1fac9fa7a9d3806de50846a3d6730879110006620c30d53cba45c4ed9e43e4ee38c334ef0001db80d6cb0010694e00140f0aec10d748081b6410c30200832da409cccb14ee8f308f320088c8604c860c3e7101e3b762cef75aca1ff484b3b5c95f3131f40861ac8a12fe1efb5a2428e34907945aafa72e07f231a8ee257c80b8911abd111c83843da7e2184a824ae569aa1a067ea97b23f488910818c321cd276f9a17a063c200e6490e1785382bc73fc6d48648cc1cba03357163502196248aec142d9a5e09163c808437da942fcfe9f2faa7120030ce7fe75643a95f6de310127e30bcc64c43ab568f5bbc8f0c275e631156b6202195d60e7d16b1fb5eb23890c2e3cb926ccb75f8787ad92b1851d3b7aef3823c2a45c0b84a8efcd414a16ee50e2e55c1909f23516aa481392ece35dfb5760d62964c54362858715a86de6986f0dbb1c55a822a2ac03cdca2f331578dd8760a9db14eec7e9d35ea57084d476bd4f593d8a45817916cbc6cf0fc2030a6a5408e1a3d03f17a327b0ebf2db1e4716a37602495cbc3f3b9a9073943df87c99e0847994f38f2c7665094a48994b57e6205e4f861298ddcb8b9df5dd9127230958f4a57d48c98f224f061298c8625339f763acb312537b223975639422389b5688faea2886924275a2876f0fa213e3407f72a80f238bd2a2135c6dca7161d031bd86d565f4480d462b1df6e6451a18aa767c57cef18bbb19d6e3c863d4f545212f5dfc66bb8fc35e70726229dc5ada4c072f7a86ba0ef188c98d777134365363595cbaba589e66a2fa5db09c3617783426f9314a8ef7c5c561d88573bcff205a7a8b4982c7f25651ed61b62062bb4bf4199390aac5de419499cf89b549a1c55a4e1d4f793b763c8b3eb2e80a1f8876b8b2e0b2cba3c4f9e9a7321684f5958fa3e4c1c24a91031db3dc2bf48f6c82fc65fa9bce158756939e8e1d54d9ad28e42ae844698e230f5690e1f8e15d9ee73357c1c9575cd7e49134aa821ccbe4d063485d6a592a2e4bf96a173d8634192abad074c952c2658f3fc581d7584456f270b54c519072d4a6b0973255a5388c7ced2bb3a312274512b152db52e2e93d8adcdfbfb1c2b674298af29e4c266753728f427110dbeb3259048adb2c79c7177bd6fe27eab8e2c3dac313659b7c7ee1ee841542764d6af5d0634e38513973f1a1a1729b288a85c4a9c4538a4613ddcecac4b83361ed47a47d19135784b0ba2bb55029e4124a881d741cb4c58f4288253c7d9110971fd685900a24a012a43413a283662871f4124ffaa2d61f79d4210193d07e2a847f0fdac2ab35244012cd7f58e352c11278210191f06d2a7c47ea21319465790cad674a95475c391457ff6ea8bacf11cf8524c9ece3f78e928046d4181121a42d588a2e23480f92a50ecbaea5e74564f562371eec4b562d018a202cb47790275d276a8928478aa7dfc15be7334c480022da8aac4ca9761a679cf1809e4009127088c7fef92627bd3f4601f0840418c2a78a7b979a32252354484021fe28c4cbad1ec76016a79100428c5b557771133060030fc0c17a80074b030c9c71860d5e070918041dc41011a7a4e6168f210182386b9fd2aea48148a5bd2f4d4c65d401430200413ef97a264b31400c09f8c390ffe88cde1e4eec8783f871e46c771a798a1512d0072242c6def04f9d8f0f37645c69e6cc35f37b30fba2e520c7d183fa9f972dde79283985d6ee6d7f68361eeab31c358dc489b5fa0ea3dd7f4b97a45cd90e04b93995d01fc6bd471d6eed8f7c922decd1830e85cd874ed34c2dcb1cba073bc9ec983b3796c311823c7684380e4f0715d7332147f485c391e4e8e21bd6371c73e46be34e71c3f597ed7edb39e69180363491a72293ce5239920dfe536e094bbdcbb16b482dafcc5744eff843352cf6943f71c1c2994b0355215f78649abb1b0dc6ea440bf1a3bb209f01fb4a6739b25c698d99a194bf51a79ac3b2cbf059658f2bb392d81419f61175eb6dc918389d63b57a44cb0c3e3017cd3b86f320bad71830630f65966f95f0ff4aaa9ba187fc596ddf72f8f1c7900d2260461e5acb126f3dd2da8c2f60061e3c60c61dccb0831975b0528825d7d565660418100733e860c61ccc90831971e031f279c74e57416d381439b46e1cdbd4c7f70dc6d47569ca8d479dbac17d906bd3f730f168c329993bb20f2d6c986327c2c7c799b186c4559b5b367cc34f0020c10c356c21e4e9aa6eddd30f0466a4a18eaf5ce6deb7a631299881862bcb4489376357393d03eb51f4f09fb83e7e9a618ed2d4219e35a325559851064a4298f2c02d32984106a6b4c29447487092c260c618e68fee71d4d46ed1cd1043fe9092bc6ac71ec25b30230cceec33c590e0f2764e000b6680e1b8aaf2675e3ab5f1bf60d7e67b10599f92ee85463f5332e766475617b2cc3496efec264cce05e6233f87ea660e596fc19a924ae7d1871670ee8f3f2cf3c8c294ed773dfc582e7c2c709244ed24343eed2b10a29573353f1a57add0eb07a97d59d25daa708796f23c4b874b88a940ba0b0d2f5139caf41476dbb48a1e1d6474488190dab7c3540913cc28283906d9b55c7f265928e89417dac3f70939f80985950fe7275bcc70421b52952db2afc454cc68c23b967daf93d32ca498c1846f63523cb2cff9d03463099dda8595d6f5849966288192307f16236264499a91047ce475b33d76aa189a8184426edcf368564c1e3c4672371f8498b83bff19c33bb96cdf4b31d86886063331bd8f18bd53a6142f7b5e38378ce9691e6c3fb034910963f9c60f6cf276d347304a11d2a87d601762028378b2a60bdfb5c9ea17443c498c14928490f9e24b15fc57aa744ea25e943bd6b5cce88be67991fa75dc439e2c36ee8294cb2edab4eb82e659c931dd1ee5d6110ac80527a9a61d86e6af78e082cb97215a990728e016c6d47350292c3c64df168a460e23755ca9c5b77b6739b88916049ffc7c47890266914beea8b23d5b4a75284101b2482d3a2b4f05fb3515108b2c790ce94389a571c6193b18c10300a00605c02219ab98f25c973b72c9a08057646fd590529365c8be025c815cec18633d9c6ab5a080568c32e36895925b62c59656d5e1fe2a4fa5a9a0805518a21b21db27924414a00affa3750b094f6b9b14900aab69fbbd376f1df334ce38630637b8411a68d0a0b9a00054906a732e69ff1c3e3e8d33ce50c0298e3d8ee63feab64dc2699c71861514608ac3cbc1e59e64dd0c9534ce38a30269f0200628d8010d68300106308001179882024ae14794c79643bd63f14fc0000ef04001a4b0adbd44e4e1d4c41fc5d5a81d87661772882f0a7ece4b724c39e5660f0569a522b4b7df4f74502cc1e13aaf83f6d0393e9177d89322397ba2a8ecd3751debb97227b81c251d0f8255afc69c50b603597d8c94daef26dc9e0b877049a33dd544c97424733a0812f7cb041d6b46f0b5cbd5d061a21057e135ff98f2d725bafa470b1f6c0956eaffa3366ddb932a71497a94bbb91b3ec85002edc8572b64758cf624c879a3cda76a3f512289529ef283d0717423792408eb9d59731f90a8e360e6cbee47986199a2e6b18ec89f52bfd77a34c25a5ff50b31e2c3f519d1055993c6f2176176e0ab8dd95147ec1551b84ad5b69ccb08e94410254392b19f20e2096e4965da43f8c1ae7c7022b9620843246372f362f75a08f256c6dc67448591107a38a64f5a31c79f6310e95a7cdec779fb0aa25cc98db01c81485d926b7cdc0242e9ec20cfda6d77d8fee19d1cee91be1ff278eda31427edf3ae7d982fbdd3b525f6e87c60c2bdcf2e5af6c0a657a387eca279e5c4ed8b48c9c3eafe57a9ee7af6473c641643c353caa3ffbc436b1fab93273b34fe2d4977827558fbe3dacb271dde7649f6a1f3a1a56e0e77d4b1058d907c336439e0ec2153cf5c1ca69fafc8a1849d7b0607e3323dfd7757fe7dde30041fdb6cb9dc50c741a50d472e123dfe1bf98a141b169909af93ffd7c16ba0a3c33f72f497abaae109d61617c7b4d1a434201eb9470ae767570d0d5a9acae5eaa8a4d53943dad1543c6fcc904564cac16e648b5d86d24ffbfefcca948490a1c892259579767b5c058cc1af76b058ff8b81c9d1becbf34f88d2c3705abd578a5697e25e30b86a1ef4e4383d2c0ffb021b0db9a6251341015e186a674de5e38f501e5dd827f5239d3a2e94239fbeff07e5417ab6e0fe4435b865ada48816c85fae5a1e4e6ba43c0b58c546454d080b3ab8bf8e54880f3cae807d102792680544fafcf471df3a2e5568ea8310f7d1bb96b454b0bac388663515623f85a3e91862d6a8522843461f6f7ac78a8f28fc998debefd06e210a05ba792f79b94bbc899eb05a878fedece23eb2134c8f0cc1263a4879db26145e3d78caeea8899d09782425e3ea97ffb14b60c41b225e3a7ae5a384a29b7972ddc5889a0d41014960c56342f670ad0b110b1480842458b949aeeafe7e0c3a888e2bf585d9efca184db8f8e748d4b7792c46755215a6cc428c2e7e89e7e46872109c61949d72187f21b69fc710ca10c6ba117a6159ade3b0835106308e49cfdab6aaf361fd85964e7ea79f3b9ad0175f688bf1896ab153f7a24b7bdfe51d213475f082d46817b1d51119d45d207557d9bd179cb64317d55998076a75f3719d0b4c5287eb54680816e3e2ef88989069d12c07dde2158fddc34a93ac926e0b2fc7f17ad878793df95a1cc1ef2b6863da9d7b863268916e45f45dcca6114b13ca98052979648b5051ac29220b3d962c4f993285ed3716879b7ed5deef41dd098b9fc9d29298e5153fed84cb46dc15c384a87c650e7fe9d20a3242f2c0daf3e27d1cace083ee1e877e54c757c17773f3efbaaac8f9f2ca7874a682f630d76cb73672afa8f8caee2245ee533ca96e2bcec2e3a9902978f29862a2ba6fbb590a676ca724e87a4bac48a1648f520eb3fd3f8ae6288ebf3deecf72515c491cdeb1431b0fcc50a06b3135db6265c81e280e2be25367a4ac9be227a8dc99506d3d97693cb154baeca06e2796d8b5d4f38d13573fd97a8db6893fa6709839df085d13e43808c92367cdc494c3b1770891944ac60452d966e363b66b429768c2edaf57795c21452d918b7360a1f1fe2a9d322a617d8736cd905362bb788e17163b0c791255c73012df7549fc53bf4562dfd68f4cd4c963bd21e16774a496704123e4471c5856baf7f2a07d5247dc9043d54bcb5982d8885be269e5e7bb99ee18f185fccb8fc9df2a5e84e7f21c35af08352d3fec256555e6129146883e49da4604b32de57a11c2ab871d628a7b9bf6d141cc8f0c7144081772534a73ef0b41c860c1a692fc937910c29190dfed600de28ae69182388ce81087f461bd3a81682b7c4c1d330720ce9ef8ea67cbe2e5ff6199f41667e2c339ff7ec0217a946e425c7109f6610a6fa125172934fa7cf06d26c4bfb8ee4105f7c086d7de9f3c4a9865e8e1e6d82de5ca114c9279b8425cf8ba7a9e921034cac08311a53db3eb56bf4e431977d855268e79e091c6196750109c030c201df804c139c080a101f7e006167018ac19cab0c3b459176257d1711f2028a30e49b68a5c5b1ac91b2c830effcdb8bde93f77341928630ed43a4cebc9b49a454928430e4bec0ede7c765b658fc391437c2cd1838d50061cecfe59f3c98a78d9bf418d4b41c24d698332dc70bc97a2842d198d892aa18c36e89cf79052ca8f259e07ca60c31e53d4494811fe965aa08c35e0167a5f19412a3aec41196ad024df44c8afcc6f370fca48c3f188c833f4354a3a6898035f6bf2ffccefe8089471864bb2635886384b95a30c33dc7a79efbf3f9c0ebf32ca508eb2ade4d89da544500619eac7cbd989cb718132c670a85671623ab40c313021b3a5c2e86168a7cadafe3be3630918b2f3132fb7d08e0eff02629e57fb5e212209caf0821dd4cd5e5ad9a6debb4048c8eee082cd85ec6e5edb6a1d74dbc26869b2a390b0399716defe0a21e93a119f230bd56af3e4a8769348b1607463b343ce6fb1e415089a251d4ade6f6fd00afda5b5d88de9c1a4ae0ac729fe1ce8c77512a702953a22ab4f888f3b3688c114da349530f5f1af959242a7733396279fc61967ec4007681c6544c1874c29e7fcb7367de0606b80060ed6030e8365411950a03d90b66bcaa011011cac079a16653ce118e7bab4342a7ea4699c71061a11d8010f6250861398c91f4493f41fa4a494d1844f53d58370917e58a97a500613865c99f3dee532ab652ca1097f219a5e346ca43294a048dc8dd39e845046121a9d90b91c6f4a35d583329080e9ae47751ce3c6ecf083ed6a7c4bbd70c3187a9c2e93112d8c5f578c5fce4ade5e4cc3db063e703422e0821bc4f0c41c3dfeb31022d44db8318c2faa4a9a081f93fa26871bc2d06ef266cecb82f8a3861bc1c81aca79425f60e02a3931a629eb4aae00035270e317b5ea4c9873e9b6b0f8c2affd68b6d3367a3a4e70a317c954dab08a1dc4da55821bbc38a896e8ea92ee82dde8288807bd96a7a11bba209779b4ba93a62d38b9709d3ef2db8e54eee36e700317c7154972c2e5fc582718dcb8c5aefa5aff61d887e3da62ae0b5661aeb49297b5f0d4427cbc9b66388516e59af747fc747e9344a0030fe0410f3ce031d041096641d687cbe7e141646965b1d8eadd68576e9a54821bb1482ea5269dfe6051f6874a1e56d278051ed439589eaf1c91e5c00d57184e79b42284fadb0aa58bf4a8048ec2a16141a140200e8904013050e8e905531408004844260c45e2481c87b2b8071400004b201630482220201610121012100c0e0a0e0783a1401800068281a14020107694a47258d4e60144031cebef989c17824a1a7d73f373ce5e0098017a9f12ad77205a06a530687bffd41472695d28842d738b55c14a9dbd4c9f7d73a16430cff5e55a74ad27792cd3a418c44836a2d2d01045075dd77afb4333c797d339799c82ad88b82fba24bcb59c3c4cbd0209a22c781d13e37c97ad112e9e9161ffa4c21cf121f182db167c040df226b6fba8f1e480301b405da7d8b54472f76a90f344e97b5d7766b074d6a569403f78e0b479f937d2ed8612bc6a1a74034df86b295bf7e7b3698283278ad78234f8a96c6aa2deaf47cc6aa78fee428e565cb598433485a6f350b4a5ca63814256fecb50b059e8e36bb703aef3b3a1b999f9f6bd6d3a6d6b56c3568ddcacb65834ac625a6c6cc7bb7175d3f9db22717dd92ab825eee6efcd32db8bfdd6cc3d8d9834568d0b6af5514bac9a1fd52caab658353eda44a9b65848c9cab94d6e64bc796fb39b4d31b73f6f14d988bcfd65abe0d662fcd6b4e1d16c145b736fbeadbfea0295c2bfcdd18230f0ce942e85e72b7627a57bfbd61ebf055f4b6025f82d8f616a945102d8778684a792a6ca3dc52d52f2e3c402215d50a00dc22185b6c80ffc6537339dbeb61c59dc933b8606744621dc15fb1618ab6a890be512a527718491cc467254e032d53aa7b46df15b0383cd287f31daf3061dbd7939858557815a48b892ebcf19d39b48ba336b4ec1e8b176c19622deffc42484027df2d17076222c1d7659519270d4a343d6ced03116167494c94c92ee6823487a3b9f1df492727508bf2d068924e165ce8ede428bf8c4232e8a945aa45088666ed4920094158f893c956aa16b5183dff8c2d4f8256ded747b8e966f0a7aaf1b84b509708b57e97fdaf53b576dd7dbeb0678130eb50598cc202bb2416d63dbe756bdb56f0137ef7a3b3044defad04e7223aee520c86f5280b48fb84c7e8f4630615d7414968d90e449ebd68123f87ce5285421c4989282e6eeeb8ed37c4cc2f3374363396c8e71e3dc5a8d0d6d9c86b193c1be6b9c84d8980fdc0fe01df7d211b5a6438f40cdf63d14c6aec07a387a241ba5bb1982643d637847d0f46547e07ab63b6e4a23a28e13acd1fcdfc2bc4b96b6addae43a6ba6c3ca22b39e388289c7d57ce49ad1552c2381bb235bdebb6446b7f280bfa16f0dd2176d8c4b2ac4596807b680d0c026b0994a274b5be4fed511d26f63bdbc6219c25a01585541035a535c4778a7fcd448085718b1675bb0e9470728eea39c085cf2d7f2f56f7b09d2623c1e2f55c6a5fa3bf8ada80541c49107fb57e15afa8a7952cb0dd740c9a21ed715309ff97f142f309d5e8c315381db75795582fe6f6845eaaa546943766773c56cbb3f68acfc95ee82a511a39bebe7fff7887c0630d72c632f07401265f0c2156045f5937b5cd17c080299bb3234a702c09fd4b6f1780fa4e7813ba4cd17cb50342ef943c96ceb65a835e6ec3344462f3b8d3fa1be3308e5a52ad675ec05e17e135fc8bed5165f5ffe953c1995335bc95e374240d907c1a954cd12729a4833a764e45490876c02b095dde2f7e886619c21d847c9da1fd5f55f61b786ae588faf37cf988d2e23061a50aabcbad1e43547e78191f9794dd54f7a8adce61d0c5018a2981161e6d7bf8fbb9a52df3b90e2ba7173c8fdf7525a733dd3337ed585451c18de5775127d77658caffa9077f760a066a86106c1837f59b32ee3b5c7154b77d5c8278e71d9808c0e9bdabde8ba03b789275b4112be75930567221be70e869ca487e99d4aa55d33d2e9d533a87495592913bc95e80eb0db35ef4c20c0b6006ed2c4859544433bf98d7e695aaa43d246b813b3927b63b961bd74078b56f8a4ea675ca261690a79d85008a717ed45a565ca058d546e02412f7a6f7bbfff5321788ed263d172b3d17711686f907a5c11720dc8ceaf907a4f016a7a5152030370d4555a7360ff2eafca24a9c25ec9db04716535453eacc82af74bac642d17be7e29f250ce65fa315930a289f738b537ec617d78252a5085586af63c3ae2aa3e68d62d1b7ce386ee0ed5e965758477a8ea525ac1acc9e42df01ecdca710a04e8f68b5e02845e9486002f83a0cf5d6f4cea9dff32805e279d29b611d2aa68e541f5cedd8f4754a7f7cbc4fdebdc8b48e8212f7882d347e258c2bc8e6bb076b2934fdeca98cad3e13c2418cd3377e60436688a2243e716144c37f52b9c7bd389aa3c2d923da5bb221b3acfab9f70853be81c6d522c52b6ae0e64809ccb4d986a73478b528b77149d08a3dfd327a1abbe6edcad5026daf49f863c50f919023851492126b4c29bfd5d69bd6dc0d86ffcc64f377b0cdfb098f239143f6373c80c32d8cbc115475910589f926a921bd4b7d55d15db53461cf03d63794334ca9d74846f5a1fc19daa4ba6dd2eb9fab98be6e62777de8bb83c14d9fd8b122dd3af67eeaac69cee12060cc3c8812ce8f6cb5a7beae96d3e4462e30aa18649d092e377c088fc45dde7b1de4876e3916b72ed14544857ebb2a7a3d440d7fda7e441c202935f16012dc6839fb320749ea8a350480975851ee28402895b71ef7bc90a99c1d224c5322924783463f08fe1fc7c68ce111177834de99991c25c2f9f4bc28990b101dfaf2ed62c83e4a87cb3c4f16296902a0f8b420a2c7e3bf0775b9bdebffe0eafc2d7cc6a14ddda2c0d61c405b491691ac22640c9bbc31c86fd4c85bb702a0a399dd76811155f245a13f68a2cf00ab60374532dad3f4c04b8c5f39d0a27e2500c19b3ba5d0a04f9eaa78b6eede0c7e6d1e9254fa4ce8ffa6ec21b45efb1ebcd8ec1ab584416abdec38010772c663c970c361cc7361a059f833782a94c704a99df36a6502350d1ec8aad5794100d15a898d132c33d624f3ddb8d976a8653bfe71d6554a4cb418fcaeeaae441f1ccae1706e9e3ab3dc864e6c25ea87d0ce0fcbff5c7b067f6c64eb302f23000d553d170744c0914ad165c3dfed1eba07104bec564459374f20ac7ee2edc691fae18f5a297f21411483382c50068b1f69c24dc52b647ab6baa3cd7f35e1911d407738a7ac6f7835b491c401f127944bbe6d3eede60c604595c0051669812248406e2887d2a980d272a3084a3407e149892427893150241b0b76c07ba67e65e6c808263182ce2aa2e7cbbd9562ac622c489e1569e740bfdcd3bf36922fd3af2a252dd18779591d097a05f3de80668fbb2a4fd85ad0c24e7e493d97a911ae011283a62984305453d6bed8c43c1398118d6e1a60c68e2e6863619d7d20930764b5230436915bb58b958116b12edef78ec27209828df78d280a794409929acedcf40611a756c2cfa675870ebb8ef5f77692b03b8874843fffe9c3235877f927897d1a846be59d71b80616c4d0f07970a5cb3d91c658310e32c2ea451033ec3505f048c921ef3928c32b34bb40b2c523ffcde6bc2e5f0fb463403fa943fc9518fc12de3cb7064b8366580aef364b6c0b43304c45410d1274dec5c93c5524c1101ba1b5c5363d34fa162e073e3ba96d8af7a32e7b811b64aad5d139dccab49e1b54a9c3a7f64cc4f8cf8242492382b49d28032ed913e0a406c6f0afe17ced51604153fc4de551f1fcfbe92d1402a5eb275d96f87a70729f19c4db35a1e3da29a0c865f67f6dca46a653ab5bdae7f7090ccc5814ecfef31fe819e165ef6bf3f7f954a88c7b6eba6c4eae499efa9f2f566ff366fd9e9010052f12fcd91b17d71d1846b2538f11eb14d2d89bd9d4b5931f5e95393726c36f18b6e7ab4cdc8da4bed69c25233fb61c7ceaaae9448de64564e3890e3e6057cd8356e396cce3a6eb1ece8c3f2a5d9541922b9975dad8d322e6ece8b58556fc7d62abfe7858a1bfdfe5bace8ca075b78d96e9097caf6a8940b572c39bc2f27f0ca2360043e3ca0c4b0a5934c58de97e1e8ef52a083b2bd389a4b61c4971fbf4ef4287939431bb2e05cc6d95b3afd25fd52a7e3be663e432a277c5b4dbe3a7961fa6a33957ad9285d825fbdb0f2bc1fba4b676cc4682d1ae31998d397a756cd9592b82fe1946bf426ab109a4c3be55d57e6f8dba1dc2b4995437e1ef1ea9c93d3f24f70c33fad9ccc53f7cd74e7f01bf72b2944fce53ac04d58a6695b90ba521d437c748afd2ec610e0c9523580636793ac99b6182993c77c0a9d838e9730c6eddd5d7c63e169e37770df76f44760314deb3cb2c9c513ba6d462b27dd17e6498db48bbd58633330b72658b6cae3471462605781bb4f51bdc43acb003254048b88809e4901d812cadc96ed50d9381f78a4e5a30e5e63138d170c3346dc6d59f7f68511ab62114623a67dc4bd4e00b51848974826b151e6097aa0257a1c9106586c2bb46384194a90142f44c889ce6be9fa62ce6cc043a21ee2b036bf55786dc72186b04858a502bca42af14a2d476a04d94026a3b429dfa5d4ccf16185750b5b22fd22e9bfaef0fdd39e6ccf6792019a546318a9f6e7a6065d13ed9bcb5252a493b62688340b04f9c267a703e40b378a8734f7d77db75c6ad026bb43cde4bdf3c4ab57fffe6f9cce1986f972c5cb6ac3190515e19a41bc75b2a6de66013f1edbcb83f69b35d50ed3d781ca67185bc46f7f184cfda155055fdf3789a5a2acbf858b71a68a91f89ef339c3d132a6dba35b756fcc314810687569392a9c492dac12a3b87a349e415a5b07e2f921eb795287e73a265cd6df977c985a9245cf9c0789ec8187fb3bf5d6ba3de47da2d0120ebbb396cba65e85b3ee6549393669b3f7dba6aa65b4683fa270b6bc8d1cc196cb1e60a16b2208a169901978ff9ee81c26434b1a5b97bca6f43d5429abd50cb2a4381be5a9ad21cf7cbc0dd16f4d6d7a33c6d2c956c08b85df17b4a133b4e4cbfc82be67cc75d42648108156d072e3c239cb37fb2acebc1036b1f00abcbe844f38b93282e923d2555ae8f75d29800b7b5109067c94622ea5e7055600bcabaae5f75ce88bf165b0017b707d54dfb5b6f2a992590b24e92fae40a04ce714fa0f84c48276e0a3df72d24d9b07e7101ca98914284de3d14347a1227bafcf38ed50c2bae549274cef43557598b08ba0669936c6b495bad0e0eed85fc670ffa23bbb1ba2a20730822c32d6be9ce5c68affb7430482d1fcb8cec6944c2b525b0f521d0a891860447a8979a42e079c47c20f482f93e41b05855682b4d49b5b72d81fbb3636b05c324e6d91de9a518851ac430a49a4fc20a9c4cb0e08ecdd6f2a07f1220054d4ea2599628be41cb0ad28cea051ec76c2f6bc7269b44ddf00d6e8f58c8e012925193e93c35e60b356d7eacb0262df21f487f32ea6a803570845dcc1d849f8fe5d0e9ab42ce9be5dd42331e9c75d8da929ec5cc59c901d20ff1114519a0313a3b76ae1c228e9ab050f20d76dba4edbc399987073ccf323728c2a2e675abbbc1ab34dce12168e117bb6fcbb029f48844cac7d58813da6d519f8f6e58beb694673bc78d823a950ca95f7a39b83ab58a8b181a39d44d2546d0707999c94603fc345ac49fd9930cbcc3e803013d295e579eab3261910c192ecf18daed8f774e095dfedd72d8b499ab041e52cae686be3c62741d86f5bc86cf52c84dde0e4a2dac04eaa790f4926e7c6950a31b932f61647c0c1b87089e0d82730a91bb82b103ff9e035e7a22e37b84b80dbadc7616304ac0b57fa1965cd483a2df736c2f23cc3598f3ff78f2fac5832294e9aa8945352e6111b0f1d8bd5565a2cd53751feb0d68d0c09e5f9938e5e64c09bb8253ad1bb288196652a1aded9a5486447d8714a0b9c91d03b1693cab136aaa981b1c9855957364325b91df91d7560076a80c046a13825fc23d7e428ceaaf36726459fe9126a1bfde33393cf206fc07cdb65b062511f418680d54937fd54b7ec65f714ed7be1eea422f62be48df6b864893117b8c8ce4e1572c526c2df8d5470fbe303284819eb2b5332375da6d7d8314a9eec0fe6aaa4dafa884b244e8669d7a80f011383e3eb83d2b9ac3762fa49ea2abeac7c423d83c6e8e92c7538141a8a402883a8fd511dbde331d27ea445806a1f858fe38be46d1a0ff1d26e2603030e4222ccec048313a57164ae049d385e4180b46cbd80cd6dc2f8f19e5096fbed915da0c335f492d21dedc7f45f7a10c44292c0b9e406c0c6aca1e1b1b9a0f3a8e45da108488a6af8ca8dadc7bbbab65663bc271a8987939cb72c8ffe8ce236a460bee64278d8dd06f67612daa1054ecbf12b9cdb0e321c9d4a8d68ad6ca3d9aaca489826a40a7794eeec6b0876a3635ab3ff2979ac50c577ce251b2bf2f734f35a6e4007cd2c71c2cc1c7fc7b3e9ed08f532ede63ffe6683137e4ff1427d04556151bce8e9a26941605d6930892d448b38b18a27acbba9dfb1ce0c2a0b3867370842b725c2b8f18574e67871fb0c65aa7b72a1a99d22e720cc7998dcfa1fcc01a45d2db1c8c3c3bb520f72feb00b3cbd996e71ab81a7fec97a8ac92f950be18850c7ffd63905b8fd248417d71aab0e4d24817918211761070c12e0eecc58a85224910b84a32aa5cb067abb739040e04b6c8ce5b0679f90bc04779612ac9337880b6031fe1112fe99706c63cb457c8c3bfe936198de634b88c0d5e9c9856a603d645a75d2e51c650dddb29f53df2109e00dcc7f7e836a1fbfdf90b583a2b9006abb5bc7087f296bf4d834dcf36892212d38b9e816195a255c5caab3a52969ddd6a36ab7cc8c0a343fcec7521949149df78596389c0bbe3c6b8c84bbafb4df24c5e869a49f5e52b368142b159242823f2d918bef6bd53549adfe36972d9f46df470460b88024ea282eed489de9780ca3384b5f4ed2bbba7a795b2575f2100ac31ae0b5ba710483e263df8e78802e4420ead60c6d070f023bfb6b46c4139e2f57743a46b640c7a69b1654a0d24b68564579c950481611db9ddc6f6d7103403d8754a8ccc64a723c660936506773a9310358973ba73e3115f84d1abdf4ebb7298198d58f63ba64dc5d0facaf9238659dd4730c54df40e5351dbb3810ae0bf55bec56558d6f78d2634fde3cc116be61767b7b24473381855d5bc5e3be80f8b0f94fd23872880a96a81822c2d6e38aebe627539c94b81a02e0c5cf3365b2e9b1c9ea60857100f5231e41891163c06dc01da6e7d61cc1b1c8b04323856594e150cc913fdd5e7cba1811383941925ce73728c8ace10634b99a3912e45623edb30191ad8d92915aca038b06ecaad1307e646579777de295ead0d89340196767ab622d671e616204bbb4abf480328cfb0bfa5df720fd8c9262b53e3e7b9be5c7951f7ea91907aebb1b17b0d79fc64f0fe04a458814db37fb3221066b60a0573b520a9067dd962e950ecbd775cb446e4996be73bb72ca18b1ed2c51aca97186aafd1f7045cff79d5253ee5890a60d7631a88a588886aef6aa72f80c8cb0bb58fb6504b27f2dbe3320193b5a3ca61b9c7dfc4a783209926bc2c30dece1a777f8d7783b1b862f921eab91f56b3a6f3d5db266b1924c75ef2067eb921dea71abfc4b28648eecb193190113b878b008053774f45b96e9a31a4b1fac87e0fef411136f8e3bfb078184d974bf5284d5f7becc125b6f1e1f3aa1fd23bd713a72a0cec3105d01c9cf7bae2efad6f4333b05980caab8b5ef9e877a9f0d771c4cf46585f3e56b1b1cdda5a50c58bfbff444c422776746d58d89e2924cbcbeba7126c35205d8927f15f9031bf2716b928c753f9e4aeee6c200fbeea65d8c5c2156b1c9cf01c711ae9e2bc2411d3feb262dd6d445f16cf90f1a3ebbb2d00dc5edb131100f41e512cfc6268c408bb92e1330f463420cf111f33565a702d92ae699607218ea2743b78a15f911affdb2e7403e22b0b36c5075c184bd1376ff8227d9dfe058d5ba5abfaec3966d428ebf8c09f13b2f26157832c15b920b4c560fefc2574b9c90f97487926e5b4cd28a68f631bc6f9a0f9da59eee5a7b8c66b023f1a25e4c5a6e40dff789b5701e139b4e7a44c0a99920d5fd121cac783618942f6dc65d0977e8c6eca75162c30ed2b5b33d3f650af9bd760e774bd9bac1b5c4667ec48853238e49107463d4d6b3440a261e0174f91271c1eeeb3f1ee3549213b7d71c5df5b492455398a72d971deee99bf1a9fbc80aca04a9770a21c0f562da22cb8af6b50d9eced25236f8b57da922ac2928303dbc2e1b13e6a03d6d1f9efbed4fdac565f8c34b596ee7797433b54c58cf8a2b9ca0402dec1e4a5600fdfae342d9c642a6025c3d50e7dd979261e49c28613b87f3ba4513d575338ae0a8ffb5b399d01e4d3a3de9f67f8443d44bc9c26acae3bcab9c71d657dc22a195b0e388b4f32856b0094d80a0a77735daf012e3f36152122d71ae80b7c64d0f16564d0efd0ff246aa101e8e2034ad1161e990401e4b82fdefe4c65cb8c6e577f1b66764d2ba4f5c8b096edba141938661b65b37df913c67b0d5b1ad6868d6a275a8a4a80b5e4ce02e82d6a57ea40be49539806438f366fc8fee009cf1c29757d005d0a559a161b28155b5b5dffa7a3f8a2b1be62d72b3f7fb4d516fb059c0121d65cbd78a875eeb857dd18ca8081bdfe2e2181b43c456a87daa89cf3d7e47c21f5c6da346e3279d14b841cbc9149d475f590a5e53f552db0491afb89d2bdf1d427f2e3138b4e9f383bd1804418bf3822ba5e14bc714e52bf8d3b41c74ee7c49e71cf7c59adcb347daa41ab423be346505c6f13ddc267f32226a76e059268040d781c3b7ebac044cbea41d4cffd3e08ac44a6cd3de8ba6c43d4ce24309d00be23813546092352de40cdb6c6db8a523dda2b81cf5ca12d5efd5a6400ab9f01f509cf202e6842a041a8dd51fcd63e3d0c81758d996188aa4839ed62a2feda883da77c648d1e49aca78649e40200fce787d6bfaf8d10119bf5957a2ef8a1b95d2ccb7df88a19d1aa8d503150c61d8bad1ec129fa5994de0569415c07f25694f0a1ab091fb80257d52eaa2abf9af0357f8e15c90d93e51f473d7e477cb555067d24ca01374563d5fa7bda7960483cbdada47bd66bce999ed3e761ad6f579cf08bc1abde7ce7da6019f626cde298e640c7407c70b9a8ae2f0d9d3d266ddff3aa0bc0952d97de06fe131a3dba6f2009bb624e47c0cc88196271421799b2e20565aaf8ecee58a60922c2845af09bac2810d5fab2df53869ed409ad7c6aca45fca669954c4092009ffb174c49cd22d1fd500d8191563cd2d1b256d58e6b2d79233fb82996199965dc6c80b688e63289ba03066de5a157cd25bcb3d996e9ccc030dc81d826002085e06e6b35098f0340a15677fec0d24ce493f929b935fc4e453c28183e28d5c128de394235cbb240fd03c524f7a6e426cab5e3d83bb10c641c34548797ff8623939489338a76658889c175e691b4a098d06bf95f1d14d593bf452ae4d01d3ee3a4406925375f28bee356653894c83d2b6cf7bff0f032510ea828e794de50494c4c41b8cf17a84d184b087d7299c88e48e81ca345234cefb6d06297ba8af7c4bb3ada2ef9958db5b7487c6dd008c76dead589d62c733e187dbd092a335236ab7ab18051e5418d065a135f49f506ddc872fc069ac6866c993042143d76ca7ec5c4adbb1521254c392e79e3b290d12a3b07b9431df61d67b2a8a711b57957745a184a10e0a8a708a480d49baf01adda9de0a8e1747ad74a86f877526203bb4da495b424b2b559d2f035ecc93f001b00dd302d1d353785dc9ec37ea57a1474ae0c8550225788af5d1e51ed8286e6071f8adf51dcb20b9dc388971664d453cf99e300be45dd7971f0600e6d82e811642f124e37e45d5aecae8aef0dbdeeabe93e5556862200dd51acd8c11596c8f612243d0a8a7560b82096edc5bd990433e5dc4c0698b2bdb5ec485692c406c03a46fec5336c7ce5306bff42d9c778c84e0b7f7e49c5588bd9a77782939a09e578966faa709123b88fde9b74a4c4f947b93ebd4ec8f4c6ccb7784d3a760592654de98727ebd7c98f934d795cd3782ef2a0454d95b6b2d9c7f5c2a50fffb0e428474a5a764333b00daea10f6a38ae1acc02397459c5264a236e85e5a2751880c507a6fa32991c18293350c47fcc46071a152404bab7e56b027d14239578246999ce185c0c0003a45a5b600a4cd4d75110b84a9973b743f4144107c114f5d63c39a292db913bc536bec847115034a543576261311d9e3a44ef20f2387d6093b831d72e2449beff77e24e7c8cd9041ad532ca90dbaaba9b8c12c01f8b691f5f7b524614749164af2df8a7d3a4074c51e9d8c2446145c17522a32bb14a14eb355325e84bceb145e2f04febaa610f2fb63169d81f27313d4a7276e9411d5abe1b8df23f1c5cefeadc5629753266adb56d76d84d18fa1308081cc08d56b85b1d110deea143f3486888c35949af9377d10860e4d5961cbc33e6276871e3f688f9291deced24a67c81fc3e068c73ab503eb1baba22fd01c29d00fe1b47997e03932317723fb5ddf296a861f3c96f0e32de85c045a70e90a0e2ebbe4646afdc6d3cbd581d1ef8cf16c54f0ce55757cfaf40f663c51bd91a4fb9ba16de435fa86ac73385e9723c6401f0f19ae432e0bcb27f3eef88ff8d45ba105d4e5be365e5ae8beee5d17742f175fc6acf71c47979b133c05bd766fba33db47c2ba61bb284b112978627f4b50721f0ed793e03f7f64a21163e3eb0204de7c1383237787ed65ac000452930c78bd3103c59ad929cc085435a9e2612676383569606b4a9461be31bd0b8664c98c5490b419083920afa6046a14783645058b964b8d88604653a53780a77838aa8544c66e2adc5910d14fb9622bd00e649e29a6c8994c27451d0b78e1cf979f82d334e615fe3dc04c9e6a0a65f950b57de23d0e71e93ed8b1798679377ce282da622a39deabc1e69818a45b1bd2e17fc35b03824e26e5f3f2813a16debad290240f12c9ba25ea11a75de5601b0d55b1e323136e93ed4065a342fc5559d814396e5c464094775b0e3561278b801403abbe650f77ed9ac9dfdda7fb74fab60ac5dfc99feba8fe63ded7d181904199ea282b8d0645f565352d71758121c50f6224721ac6f9d745d707063027e1c70cc18d66046b1506531a6a279df1cca7532f814c4dac1dc4c53c334c757298abc99191768774f8e57be45ed36759a7679e7938b17351d4ed15146a745b086c661e7877585c1c277611f029983c42bd2ee5151c77d4eac71c6837a0636af09c66177b260b0e5a477727857ac1ce63c65daa4d7c285a3963cecd575a459db29c9715faf3d48db978e937aaa219104426a2cc4eddfc757de6fab51fbb4241250c0a1e7c4f3182037a7a38f6cd5f9e2ca9bc1ad2fac46a37df2936a7268c8471067d15d99eab5637b1ac91ae7b57af0935d94e132f9075cd447ee530f5099c4ed461f29b18b4921e735a29b35b8b1f17750611173b745ca86db2e5a4a94186fc18f40a4d32ee5e04382dbaebcd770d717dd2fdcb70e84a2417dbe044d2607044121c0d0e14d16ae2d561ee39c068fd5e7d1b56c5175c59e5ff84faf1e7f20d92e77579738053579634f4715dc9fe55c2040a89528f5a43785c7df6392fd23bf1ec51e69433c32ad7faa6ffcac89ef56191bf20ba2f62fc7cd637f4454e26a239a6b3a618b8750f33e3e449156df19ec28d65efcece9731947b2f39aa2c4efe0117b0de0c4cfd7a9de67169c3ffa6a3b3ad29de030c06b797302fb1bcd69b1abe55d00281aee8ec8072a5e45e3c93aebaed0813420eac431bc3d4c790e34691f09ea328fcab246432ea2214dbed452af0eeeff78d05ca6ed884a80d701707af9df41e3e0e41890ca84576002abb30203a60b2241dff0000000000000000008c0301cab636d01a51051ab129a524cd6dbca96a2b719be544ca94a49452ca61e9610beedd6cf88b349ecd3df001e501e2019022aab5c4ecd3afd729579b19014a24bee7fabba5085d73cf1e0ea706428423b7972cf2ab94ec5267a637800e692cbef411aeb84a61b72b3533294086e42fbf7d1673b56e4d79e9002ac4dda6d654c7de8bc66b682c8008f175d7d262deecb9caf670385ba04162aafe6631a6760124c8f6730c1fe7d3e5519d065020bc1a631657a555ea0b3d1c4e2703081085ddd62d3ff6d473cb7180fe70a8ce54f27f5bd51ccfcc7081fc58ff1e542fc686ae226411a03e94f243a60d9d73367d0f09101f51a9a5deb3e65eba2d3d1c4e873d8c8f00edd16cc1e5b5cf3d967079a71dd223bda5545ae71473cc357b389c1b1b5701ca832dcde8ebb5fcfc5409c2e399bec3dea509ddc15e2bb3821bbbc196e211901dfbdec7e5fb5e83eaf004572665cda9cb4da980e8889b32a9c7947831d79fc32553e5bf4e23eb7a1d05240763f0bdc7e776656fa530de9f23a03876ad74ee417d9f9c3b08c1119dfa629620ec37523f597ad64dfe0ea11bcef14a4a33a654ea606be3c116b95562557dffd8c86c4d63834dfd954bdd015a833db5e0faeab6f4303d480dd5d246a794737763b869242f6fccfcc1652c3285d0f8a45cead874a5c84dbd2c60a03358abf40e555f2f6c0cd2406628ee1575216becf9cc4890a5a68b0326406534e44de6b9a0f27038224064b86b6a4556aa9c87c381c6c808358f5f6ade183ed54254838bd0d53fc789c1854e59886848cdb164ba6b3556f03933a219929953d914bf1d239221d955db7e6b0b2e6659461443d2ee6ecb97eb67cb9b4504c37636a7d1a1639b3e392ca217204b9f9bb9edb1dce5fe8099e19243e4424b6c15fef262502b2b75b54ffe98626e4d772056d28aeddfcaf48c3bbd0a015aa5b5b1c456ea87505d14902aeed6bb5dbda272507138a940a83c8ecd3d7d64ca8111d029de2047ff76ff5673fb4c61abd8ddca8f0d9592edfdad4e1fa6e418215232b1b2f6aa4a55fae63340a3b0bf8a2f2ad74bc5f45a9486102a0585e2ea3ca994165cc7ca55071028ac936b856eb9bb94da429f30830bf7c5fff4b9ce204f5e5c5e6d41862ae5630a75f2ce56e17f26b7863881cadbcdef0d6ed2ba29d39b8fb32691e3528ed3f32394492bb79cdd178bc92557184098bce4c5df5a5a1599ab42974497cf9b72ebffaa6ec892e8cfd25305739b4bc6a04a9c3ffe6b6f9a097283a18900a28453c67718df732e37e7496892e71959dca65ac6e42faf589005928439fd66705f3d4fdf6e6fb6822c33ff8122718af5f17bee6163ad1f8204c69410aac5edd023ebdf546bec7f5dac9523ef6247d8ee4997cb5ff66e04aaa5ffeeb1a65dae4c7045822c8c3c8d1a99ea7b6d596df32766915c1a5dcbb79b5862c55c02ab5c8c1e067b2e1b7b5e0e0cc69af3b49cf23d360f445fb042f6769db5dd5c5179389ccecc67e6f3222f1273bee2c7a79ab5a7f4703829b07bbc445d2c7bb6e9ce36dbab4d180b3c1117c9cddc72ee71eccfe5688bc87e1fba57dfbedb4b2ed24229d6d41253b89c76324f8c8cccfe278681288b6de5fdc7523b41b62bc222bd08633f7b74ba8ab5a782e88a8f9d9ab5564d1b644f9efeac1699b8311964d9c88adffdc59fdeeb724abf0a959acedad27e5468820da664b19732a82d9a82a12afcc8ad09d9e270b49cf04109911429556baaa22822286274112ae4a83e7a2266d3a6503b456faf96dfcc7cf0889ce8f72de3538a136c516313adbf0ea66c9eaa605b26bae382e9d01bc6e5cd25b29fa3e7435eb0bd544af0ab7eef1deb7eb8f89380d0bdb438dda567ab9180ca493ddc08d9ebcb23debf872efef3d4b08d68c59d74b557ecae0e16e1bda26b31295df1d73e22da3655ecd8dbd68f2f87686a3d3121dcf25f8b822808f7cfdbb6b7ab979d03d1ec3506f741a596a6e2e8874ff9cabd98b83f31431f58ec7fc54add9b261626ea21e3474eee4f33296d4e878887b65ab5d53b556efdbb036b8b336dc675fdb853875db6587d73a92bd56b510eb9d2bde6b762f67b432e110e2fbeb306771347377847d5ccd931832cd34536c0f46f030e2485c5252c6ba5a540030aac2073e3f112f3c192205809815a806f6cc0d41010c00a114b0200dcd880e1324000ee65c178f9accc0102d8d42000020006448a40660da617b55fa3bfe8794b81e170be784d478598ee6c1025c2626e643c36dbe9201021c272f52da8d65973e692e790a8967e4a6dada722dbe731a417a6dfce555fcae95654084cd71ed395763b399b4fcc4d8d8a08619dce01d120345f58901bb70964051afee25f0a8800613137351e1b993f58cc8d0a31ed078bb9e9992f603a1d04a23e5c5bbd6abf63c935dd27267e99e115f1a154f3d47435d9e284fe311e9b0e8cf6504e638aac3b32ef7ba0223d5c6bdd4eb0b115e5d1ee5d2ae7f5088f5d5efe091d64fdae607487721973dd8aac7dc35d9e8eccd64476684caedc7774bf5c617b381c9a4e1d6df563eda3a6b66c6bb332264474ac7aee29e814b3eaa29901219a8329cd95a9a9d4cc6ec51ec22784488ea6d273975c6e7b4dcd3d5aba6ce99a0e64a238987acd8570f55f2a7f0f8784080e5eef2d97d3d828446fe8a676fd587dd97c4a88dc68177d7dbefb4e8e71f47038eee5b3359d2e5b6c3e1eb5013fd3295d4bf9abf49a87c3d1d2654b27622353fd7795c5f66b34ff266caf1d996f643552b57fec9aceb041c86940e8d67395be168de89b5a335fc6bd90e119a91fe3872cd59f7b3332f5527e1d9f72d22fa3977a0a728a2ebdd71b19302ac6afa0f21a23bd7f91396b7189d1995e5dc60d823ea8224c4a29430c21c4104208e5361d42091204a3398cc2400a623cecbd01126020418a25298c822886718822c610428821881042444664a4a8b8013be6a17750e14cde15fa1668675ca28ee04cd8bc95473f02ed2a8c6d0ccee5792aee7af24c3fd97f0ac6b17baf38d6022af8c3b53d56db9b9cc1e8c3a7b46cd1cbdde68c9c2986e829ad90c897497021fb712483b690e3e2b7465635bf22cadd6f0ca565d1d226ff7b15e1e4a75096d1d2937a2bef2114bc58d725cb1ba9efa0b423b475e7dc8e09fe68634e82273a554de36e9ee85e24c4dc4f0e072c87cd7b6efe27e0aa6ecb855fe2613e717ce93ad10de1b3d7efab2b9c98426f4223284038c7000a52c7e0b9ed0751ab83793a85c73f584dd39015b2418a315269f79e6dcdd3adaa14384c9473aca12c0ea27b1e43004262826d2a34be2b1c90e2a0958e58d714b4652a12eb337db82e6e261ce0307f1a87cc2ec2b78de42053264a2347c092fc1162f7634f8497f931f325dea81a1b74b344b8fd6af02757186adcd43f82794e04c841d4563987db86afa96d7b28f48896826ac1c565b31e215530bb8e34fe49b32af23315887ebe99f8b55b622774fe47629f93dbcab6687baff27960535a9b77da7d31e838d413397098c03672777efbd58651d600b21125f89a2faab65623349233fa21f822e79b29cda72fc009c40631d6e73fd0f932acbdb2e11d459fc7693b723e8c9e6f7d329f9f4f5c7382f6a88748e20d6074eb1d3937babc9683cf19cbff14a7f4d0f48ad134c7e8187458320f8c13ab00a78c9d2c57f0c9dfa09a8f6a9ff01b81179ac8175d32c2600bfe266bc91ee59eb5be94acbdab1646447ff8be2aa10ff730b64f90b188d09c881c691376c25788a7e578cf59f8f014c8f86144efb2a8f5e0051ba1875da4c28efca860631ce1735879131dd287c49f8d0b214abb67c85f546311173f9672c955fa8f264ce6ca81d9a914352b47ff3c53ab427acd19e0a220fea3e953c544876814afc5aff90956e174ec05bfc06032b1ad87d11114bd031a03a488be94c6f4196ce01a97a8713a58bd40e087b8533892d7a779aa66135ea358affdd8496ae2f4612a6e6bb98628bed10ec315c260307eda7afde4cbb2ac5fc6920ba07811ab601666c74c4070f4812bb3961861906a176928c97288dfe52402464cf61b07cb3aef58b619b2dbc4912aabdaa0b6dcad43183e5596b7eb0da80480f28f3cb90f7548bb04ff663eea5f01f17f435dfb0cfd66687eaf175535e8bc904e97971775e1c079744d30cffbd2da9d3bc13c61e1b9c853db7ab3d7c3a99b52f7344482ab3486f901327027559b2a6a3ea0b4d2a821ae99dcbb4dada7ba45627e31ba0c052b8ca756142d5d89a36e4e705a4252cc4539c76502b72ff217a26dea6a58c132873e487025ee1ee491ea8cbd10b92d1b0590a8edbec1e0fe280e045cacc7daeb8f436427f2865b3fa9ebf8f6b4af13b4c51ba28c1f43429d42b3069eb2aac1e90fa3c4acd22286872cc3ccedd5d8dfcb3e8bfd08b364ee6d022d629d02e3ab0388bd6da6c84ca5a5904fab43d2a162be3346aa0849dd50046bb5763c2111ec4393c81c1fcf852fbac511d77ae1c573fe6fbdc8f465b0a83357969543f1722c71bee71da487c5b0a190c100ea7f6a42deab111888b9d91b6b58aca6bf01a00e535d6d1995384b8e5a838cb04010d30ed4140069c9ea4aafa7e6b212331340f9c79238530176528c6222387bb175fae9d22c5e4c76befcd90168144666c5a30c953a096dc49ee37168482fdc4635aca84188f1381642708006193ff380cb51b225f0aa0e93cf38ffb0a5b19b2ccda713d105757baad8328b862bc7b800b4fa5179f7dbc50d37e41579ba7027d193e0b00ac5b0a4bcf8d05851233d2cd33546b1ae2fb012a54d9de5d1bcda932bba3905a54b769e927d7e234229e77b950510b3951be3babdc6e428171ed9a360b7d67878d8e4166fdad59e5ba3fec9a4d07df9648d72192bffba8782c3f3e8bce52de9ee09e8e496f02f69dc55520a7a59aad45211ed635e48f6fc2958ca423f03d8926ffb74bf8c58811ee9624938d14b93e11e84e85f2bf353b98ee26d23d7ac491ac1bbab560602d151a4069c77c1b74fc9d183028347413ccef5e61355e9a531bd5ad24b1b4cb3dda43dd4c6bfa473d0961c896dd1b4557e97d21cfec77f03790819dfb0e7af9ffc08534759c3043176b3deb56cbfe27a676bef2eac7657f647825c646ed31089011b628fdd3e7b28d406582722a693a2f9f8d612e33b2fb6f2043fa0406d6f2c8f4ce352d68c4ca654237dba8aac8801cccd5067b38e5b0f8e58fa0c10f8e284e33f65a1b222b343f4eab7250c4ea6e7a1a822e268b732d36512db6ea3b93d42bcd959d8baac82b64d556e0c885c2f80b9912716b5", + "0x3a65787472696e7369635f696e646578": "0x00000000", + "0x3c311d57d4daf52904616cf69648081e4e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0x3c311d57d4daf52904616cf69648081e5e0621c4869aa60c02be9adcc98a0d1d": "0x0866c4ca0710c2c8a92504f281d992000508ce255543016545014cf0bfbbe714297cff6c7a53c4630a0a35f8793a04b663681575bbfa43dbe5848b220bc4bd1963", + "0x3db7a24cfdc9de785974746c14a99df94e7b9012096b41c4eb3aaf947f6ea429": "0x0300", + "0x3f1467a096bcd71a5b6a0c8155e208104e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0x45323df7cc47150b3930e2666b0aa3134e7b9012096b41c4eb3aaf947f6ea429": "0x0100", + "0x52da4aa879a49f588394d236e8a0642f4e7b9012096b41c4eb3aaf947f6ea429": "0x0300", "0x57f8dc2f5ab09467896f47300f0424384e7b9012096b41c4eb3aaf947f6ea429": "0x0000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9492da6406cc42bdb1bb0c413a1aa25176c9783e922b00e288d19b9020ffce919d1ab4ab20fc62d5d0b23ac1e61b2096b": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9dd266a958e8103a71b70d1c1df4a59310df6953acb9c02923012c24020e66eec9064de83950a1555ac1d5b481138c97c": "0x0000000000000000000000000100000000000000000089b3efdbd75b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9fc219f82f0febadc96255c8172fb62ceb8ffec4bf145e4034c3e4b2f8bfab86ae93716769d67ad006eef502e1b60253f": "0x00000000000000000000000001000000000000000000ea5ddc9a5c630300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x37be294ab4b5aa76f1df3f80e7c180ef377eb9af2d004804dd2a0928420dd0fad473fbd94ca0b57d8dc14fee5599b875f73bef45185623035375ce512f83ac52acace663c04d424d25cb050b8a3c7216": "0x54101400000000000080e1d2f2dd6e8d0d00000000000000", + "0x57f8dc2f5ab09467896f47300f0424385e0621c4869aa60c02be9adcc98a0d1d": "0x0866c4ca0710c2c8a92504f281d992000508ce255543016545014cf0bfbbe714297cff6c7a53c4630a0a35f8793a04b663681575bbfa43dbe5848b220bc4bd1963", + "0x5f27b51b5ec208ee9cb25b55d8728243308ce9615de0775a82f8a94dc3d285a1": "0x01", + "0x5f27b51b5ec208ee9cb25b55d87282434e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d872824308b32b49a41b56c678fc7c44a15b0a5c1ac8d44a5886dc8615ef2d1fa2a61e7cf49bdc562411d3558c0291f3d874ec64": "0x04000040b2bac9e0191e0200000000000036f539fdaeb3020000000000000000000000000000000000", + "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d87282430bb6a83dba2ff107a1b2471919efeb20301828e741f8e3349cb4c8f22681597cdaa0041a0d009356b89a256450004a1c": "0x04000040b2bac9e0191e0200000000000036f539fdaeb3020000000000000000000000000000000000", + "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d872824311fcf3e922de10898cb04273301735e65270ec35ba01254d8bff046a1a58f16d3ae615c235efd6e99a35f233b2d9df2c": "0x040000e8890423c78a0000000000000000d3badd5a7503000000000000000000000000000000000000", + "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243496b9d267424345a13c01cf7256660a010abf8ffbb90d92395d891a798e4476ade3d28ae5f8c5c955b9199d995871a62": "0x040000aa23d301f2d80a000000000000004ca0a9e7678a000000000000000000000000000000000000", + "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d872824368f76bf6873b4075fe534f5623815a9b643254e645e0e040e78449793fda50fba9cd0929631c3c9ea08387cfa1d2767b": "0x040000aa23d301f2d80a00000000000000a129c430d70d000000000000000000000000000000000000", + "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d872824372c13f7f4eaef96cf64e3cc8e7984e9d8c9138d2fa37cdda19528964efe98c0df5ca0bf5e6527af1a25d49b6057ed03c": "0x0400004186f67edf020400000000000000373a6b189719000000000000000000000000000000000000", + "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d87282437d7d473c8f985b4811f6f7c364b759da628da4055a812ca4145c75c38734138b6c62f0402ff1feae649be54d4c42c32e": "0x040000aa23d301f2d80a00000000000000a129c430d70d000000000000000000000000000000000000", + "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243806ae4fbff1bdedf667edd4846e2585ef2460945ba4cd7088085c436b334f0c9a3240755f16267e293dfa29ebe840a3b": "0x04000040b2bac9e0191e0200000000000036f539fdaeb3020000000000000000000000000000000000", + "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243d462c5e44e9f8f3886ceb82c3d52dd42f213f5635dd0a00c44c64983f5067b89448e670208fb2068832f52702ac33b51": "0x04000040b2bac9e0191e0200000000000036f539fdaeb3020000000000000000000000000000000000", + "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243da841dec8dfd73ab260b5a2dc6c041df9c393c0bf47418e40286f14822cab057b69fc111e6c28809d94cae387eaffe22": "0x040000ec6a14c6fc670802000000000000f4a1b19b0098020000000000000000000000000000000000", + "0x5f27b51b5ec208ee9cb25b55d87282435f27b51b5ec208ee9cb25b55d8728243eac90b8d599c25a5798d0896ae8e2b4bbe1dbcf4234b70c81a518378e72b67aa7cd06b122ebb7658562472167e8e231c": "0x04000092d54d06cff01000000000000000500e9157136c000000000000000000000000000000000000", + "0x6310fed47319b658f9b8b2504e0d72ec4e7b9012096b41c4eb3aaf947f6ea429": "0x0100", + "0x7a7b34fdb954e2e22000798738d613cd4e7b9012096b41c4eb3aaf947f6ea429": "0x0400", + "0x89d139e01a5eb2256f222e5fc5dbe6b34e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0x9aa8ac11f0e9c4ff19e9fc10cd9c7c324e7b9012096b41c4eb3aaf947f6ea429": "0x0100", + "0xa686a3043d0adcf2fa655e57bc595a7810ac9a39e38878ed8b6d2574e4e31afc97fbb62e872d951c6a5c355bca369a54c334542fd91cf70822be92f215a1049ceb04f36baba9b87b": "0x00", "0xa686a3043d0adcf2fa655e57bc595a7810ac9a39e38878ed8b6d2574e4e31afcba801c8d1aa245fb768538a941d1e4730c31830ab85a54ff34aaaad1f81bdd246db11802a57a5412": "0x00", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da9612917032a0bf90a0552a27fa5d41a432d286624fcf9399b8b508929fdbab4c21fa0e7f42153c57d8705020500cfa1f0": "0x0000000000000000000000000100000000000000000088b116afe3b50200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", - "0x26aa394eea5630e07c48ae0c9558cef7b99d880ec681799c0cf30e8886371da921d1c19e418427112b1e953eefd634ca379b8847d0cb00c709664b596a61e6eb04b1aca46e529be5699b8e4308d9e4ca": "0x000000000000000000000000010000000000000000807ca242c019bc3700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + "0xa686a3043d0adcf2fa655e57bc595a7813792e785168f725b60e2969c7fc2552": "0x0000000000000000000000005802000000000000", + "0xa686a3043d0adcf2fa655e57bc595a78224445e9cab340d627a7b05c9e661260": "0x086a5c355bca369a54c334542fd91cf70822be92f215a1049ceb04f36baba9b87b000020c65abc8ed70a00000000000000768538a941d1e4730c31830ab85a54ff34aaaad1f81bdd246db11802a57a5412000020c65abc8ed70a00000000000000", + "0xa686a3043d0adcf2fa655e57bc595a7833782e87398d8c8df86c711d2cba4e63": "0x02000000", + "0xa686a3043d0adcf2fa655e57bc595a784e7b9012096b41c4eb3aaf947f6ea429": "0x0700", + "0xa686a3043d0adcf2fa655e57bc595a785f2f5afb5694b77f75c74fc401491a2b": "0x10000000", + "0xa686a3043d0adcf2fa655e57bc595a7874c6bdda44177fd8b580beed8d6ad3d897fbb62e872d951c6a5c355bca369a54c334542fd91cf70822be92f215a1049ceb04f36baba9b87b": "0x6a5c355bca369a54c334542fd91cf70822be92f215a1049ceb04f36baba9b87b000020c65abc8ed70a0000000000000000000020c65abc8ed70a0000000000000000", + "0xa686a3043d0adcf2fa655e57bc595a7874c6bdda44177fd8b580beed8d6ad3d8ba801c8d1aa245fb768538a941d1e4730c31830ab85a54ff34aaaad1f81bdd246db11802a57a5412": "0x768538a941d1e4730c31830ab85a54ff34aaaad1f81bdd246db11802a57a5412000020c65abc8ed70a0000000000000000000020c65abc8ed70a0000000000000000", + "0xa686a3043d0adcf2fa655e57bc595a789d88060318ea21401c822b2e63d839db": "0x000020c65abc8ed70a00000000000000", + "0xa686a3043d0adcf2fa655e57bc595a78aaf946a086076d5237bd605fb947f4f9": "0x00002876e1158d0500008a5d78456301a03782da0800000000008a5d784563010000087e93371c014df9341507000000", + "0xa686a3043d0adcf2fa655e57bc595a78fc4be2423e9507ac15720245b39865ba": "0x0000408cb5781daf150000000000000000000000000000000000000000000000", + "0xaebd463ed9925c488c112434d61debc04e7b9012096b41c4eb3aaf947f6ea429": "0x0400", + "0xaebd463ed9925c488c112434d61debc0ba7fb8745735dc3be2a2c61a72c39e78": "0x086a5c355bca369a54c334542fd91cf70822be92f215a1049ceb04f36baba9b87b768538a941d1e4730c31830ab85a54ff34aaaad1f81bdd246db11802a57a5412", + "0xbd2a529379475088d3e29a918cd478724e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0xbf10d819d31e34a3b190afa41169b6004e7b9012096b41c4eb3aaf947f6ea429": "0x0200", + "0xc2261276cc9d1f8598ea4b6a74b15c2f218f26c73add634897550b4003b26bc608b32b49a41b56c678fc7c44a15b0a5c1ac8d44a5886dc8615ef2d1fa2a61e7cf49bdc562411d3558c0291f3d874ec64": "0x0476657374696e6720000040b2bac9e0191e0200000000000001", + "0xc2261276cc9d1f8598ea4b6a74b15c2f218f26c73add634897550b4003b26bc60bb6a83dba2ff107a1b2471919efeb20301828e741f8e3349cb4c8f22681597cdaa0041a0d009356b89a256450004a1c": "0x0476657374696e6720000040b2bac9e0191e0200000000000001", + "0xc2261276cc9d1f8598ea4b6a74b15c2f218f26c73add634897550b4003b26bc611fcf3e922de10898cb04273301735e65270ec35ba01254d8bff046a1a58f16d3ae615c235efd6e99a35f233b2d9df2c": "0x0476657374696e67200000e8890423c78a000000000000000001", + "0xc2261276cc9d1f8598ea4b6a74b15c2f218f26c73add634897550b4003b26bc6496b9d267424345a13c01cf7256660a010abf8ffbb90d92395d891a798e4476ade3d28ae5f8c5c955b9199d995871a62": "0x0476657374696e67200000aa23d301f2d80a0000000000000001", + "0xc2261276cc9d1f8598ea4b6a74b15c2f218f26c73add634897550b4003b26bc6653f9ae8c00acb30c3a91ca50fc193bc6a5c355bca369a54c334542fd91cf70822be92f215a1049ceb04f36baba9b87b": "0x046b696c747073746b000020c65abc8ed70a0000000000000002", + "0xc2261276cc9d1f8598ea4b6a74b15c2f218f26c73add634897550b4003b26bc668f76bf6873b4075fe534f5623815a9b643254e645e0e040e78449793fda50fba9cd0929631c3c9ea08387cfa1d2767b": "0x0476657374696e67200000aa23d301f2d80a0000000000000001", + "0xc2261276cc9d1f8598ea4b6a74b15c2f218f26c73add634897550b4003b26bc672c13f7f4eaef96cf64e3cc8e7984e9d8c9138d2fa37cdda19528964efe98c0df5ca0bf5e6527af1a25d49b6057ed03c": "0x0476657374696e672000004186f67edf02040000000000000001", + "0xc2261276cc9d1f8598ea4b6a74b15c2f218f26c73add634897550b4003b26bc67c7de191b377e05d5c64c2e13b3d4a2f768538a941d1e4730c31830ab85a54ff34aaaad1f81bdd246db11802a57a5412": "0x046b696c747073746b000020c65abc8ed70a0000000000000002", + "0xc2261276cc9d1f8598ea4b6a74b15c2f218f26c73add634897550b4003b26bc67d7d473c8f985b4811f6f7c364b759da628da4055a812ca4145c75c38734138b6c62f0402ff1feae649be54d4c42c32e": "0x0476657374696e67200000aa23d301f2d80a0000000000000001", + "0xc2261276cc9d1f8598ea4b6a74b15c2f218f26c73add634897550b4003b26bc6806ae4fbff1bdedf667edd4846e2585ef2460945ba4cd7088085c436b334f0c9a3240755f16267e293dfa29ebe840a3b": "0x0476657374696e6720000040b2bac9e0191e0200000000000001", + "0xc2261276cc9d1f8598ea4b6a74b15c2f218f26c73add634897550b4003b26bc6d462c5e44e9f8f3886ceb82c3d52dd42f213f5635dd0a00c44c64983f5067b89448e670208fb2068832f52702ac33b51": "0x0476657374696e6720000040b2bac9e0191e0200000000000001", + "0xc2261276cc9d1f8598ea4b6a74b15c2f218f26c73add634897550b4003b26bc6da841dec8dfd73ab260b5a2dc6c041df9c393c0bf47418e40286f14822cab057b69fc111e6c28809d94cae387eaffe22": "0x0476657374696e67200000ec6a14c6fc67080200000000000001", + "0xc2261276cc9d1f8598ea4b6a74b15c2f218f26c73add634897550b4003b26bc6eac90b8d599c25a5798d0896ae8e2b4bbe1dbcf4234b70c81a518378e72b67aa7cd06b122ebb7658562472167e8e231c": "0x0476657374696e6720000092d54d06cff0100000000000000001", + "0xc2261276cc9d1f8598ea4b6a74b15c2f308ce9615de0775a82f8a94dc3d285a1": "0x01", + "0xc2261276cc9d1f8598ea4b6a74b15c2f4e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0xc2261276cc9d1f8598ea4b6a74b15c2f57c875e4cff74148e4628f264b974c80": "0x00a0727d9436bfef2f20000000000000", + "0xcb9cdb5e5c0dca92cbcc1db51bc0b6794e7b9012096b41c4eb3aaf947f6ea429": "0x0100", + "0xcec5070d609dd3497f72bde07fc96ba04c014e6bf8b8c2c011e7290b85696bb397fbb62e872d951c6a5c355bca369a54c334542fd91cf70822be92f215a1049ceb04f36baba9b87b": "0x66c4ca0710c2c8a92504f281d992000508ce255543016545014cf0bfbbe71429", + "0xcec5070d609dd3497f72bde07fc96ba04c014e6bf8b8c2c011e7290b85696bb3ba801c8d1aa245fb768538a941d1e4730c31830ab85a54ff34aaaad1f81bdd246db11802a57a5412": "0x7cff6c7a53c4630a0a35f8793a04b663681575bbfa43dbe5848b220bc4bd1963", + "0xcec5070d609dd3497f72bde07fc96ba04e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0xcec5070d609dd3497f72bde07fc96ba0726380404683fc89e8233450c8aa19503e46bbe690b532e6617572618066c4ca0710c2c8a92504f281d992000508ce255543016545014cf0bfbbe71429": "0x6a5c355bca369a54c334542fd91cf70822be92f215a1049ceb04f36baba9b87b", + "0xcec5070d609dd3497f72bde07fc96ba0726380404683fc89e8233450c8aa1950739a602bb1403f7d61757261807cff6c7a53c4630a0a35f8793a04b663681575bbfa43dbe5848b220bc4bd1963": "0x768538a941d1e4730c31830ab85a54ff34aaaad1f81bdd246db11802a57a5412", + "0xcec5070d609dd3497f72bde07fc96ba088dcde934c658227ee1dfafcd6e16903": "0x086a5c355bca369a54c334542fd91cf70822be92f215a1049ceb04f36baba9b87b768538a941d1e4730c31830ab85a54ff34aaaad1f81bdd246db11802a57a5412", + "0xcec5070d609dd3497f72bde07fc96ba0e0cdd062e6eaf24295ad4ccfc41d4609": "0x086a5c355bca369a54c334542fd91cf70822be92f215a1049ceb04f36baba9b87b66c4ca0710c2c8a92504f281d992000508ce255543016545014cf0bfbbe71429768538a941d1e4730c31830ab85a54ff34aaaad1f81bdd246db11802a57a54127cff6c7a53c4630a0a35f8793a04b663681575bbfa43dbe5848b220bc4bd1963", + "0xd57bce545fb382c34570e5dfbf338f5e4e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0xd5e1a2fa16732ce6906189438c0a82c64e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0xd8f314b7f4e6b095f0f8ee4656a448254e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0xdea281e5282fc26537660d39d11b9e8b4e7b9012096b41c4eb3aaf947f6ea429": "0x0100", + "0xdfe4dad7b89644d5962c7bb034ca6f7b4e7b9012096b41c4eb3aaf947f6ea429": "0x0400", + "0xdfe4dad7b89644d5962c7bb034ca6f7bba7fb8745735dc3be2a2c61a72c39e78": "0x00", + "0xed25f63942de25ac5253ba64b5eb64d14e7b9012096b41c4eb3aaf947f6ea429": "0x0400", + "0xed25f63942de25ac5253ba64b5eb64d1ba7fb8745735dc3be2a2c61a72c39e78": "0x086a5c355bca369a54c334542fd91cf70822be92f215a1049ceb04f36baba9b87b768538a941d1e4730c31830ab85a54ff34aaaad1f81bdd246db11802a57a5412", + "0xf0c365c3cf59d671eb72da0e7a4113c44e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0xf2794c22e353e9a839f12faab03a911b308ce9615de0775a82f8a94dc3d285a1": "0x00", + "0xf2794c22e353e9a839f12faab03a911b4e7b9012096b41c4eb3aaf947f6ea429": "0x0000", + "0xf2794c22e353e9a839f12faab03a911b7f17cdfbfa73331856cca0acddd7842e": "0x00000000", + "0xf2794c22e353e9a839f12faab03a911bbdcb0c5143a8617ed38ae3810dd45bc6": "0x00000000", + "0xf2794c22e353e9a839f12faab03a911be2f6cb0456905c189bcb0458f9440f13": "0x00000000" }, "childrenDefault": {} } diff --git a/nodes/parachain/src/chain_spec.rs b/nodes/parachain/src/chain_spec.rs index b72287966..ddb6cde9b 100644 --- a/nodes/parachain/src/chain_spec.rs +++ b/nodes/parachain/src/chain_spec.rs @@ -19,7 +19,7 @@ //! KILT chain specification use cumulus_primitives_core::ParaId; -use polkadot_primitives::v1::LOWEST_PUBLIC_ID; +use polkadot_primitives::v2::LOWEST_PUBLIC_ID; use runtime_common::{AccountId, AccountPublic}; use sc_chain_spec::{ChainSpecExtension, ChainSpecGroup}; use sc_service::Properties; diff --git a/nodes/parachain/src/chain_spec/peregrine.rs b/nodes/parachain/src/chain_spec/peregrine.rs index 6d294f7fc..c20ad1c52 100644 --- a/nodes/parachain/src/chain_spec/peregrine.rs +++ b/nodes/parachain/src/chain_spec/peregrine.rs @@ -21,12 +21,11 @@ use cumulus_primitives_core::ParaId; use hex_literal::hex; use peregrine_runtime::{ - BalancesConfig, CouncilConfig, GenesisConfig, InflationInfo, KiltLaunchConfig, MinCollatorStake, - ParachainInfoConfig, ParachainStakingConfig, SessionConfig, SudoConfig, SystemConfig, TechnicalCommitteeConfig, - VestingConfig, WASM_BINARY, + BalancesConfig, CouncilConfig, GenesisConfig, InflationInfo, ParachainInfoConfig, ParachainStakingConfig, + SessionConfig, SudoConfig, SystemConfig, TechnicalCommitteeConfig, VestingConfig, WASM_BINARY, }; use runtime_common::{ - constants::{INFLATION_CONFIG, MAX_COLLATOR_STAKE}, + constants::{kilt_inflation_config, staking::MinCollatorStake, MAX_COLLATOR_STAKE}, AccountId, AuthorityId, Balance, BlockNumber, }; use sc_service::ChainType; @@ -38,8 +37,6 @@ use crate::chain_spec::{get_account_id_from_seed, get_from_seed, get_properties, /// Specialized `ChainSpec` for the normal parachain runtime. pub type ChainSpec = sc_service::GenericChainSpec; -const TRANSFER_ACCOUNT: [u8; 32] = hex!["6a3c793cec9dbe330b349dc4eea6801090f5e71f53b1b41ad11afb4a313a282c"]; - pub fn make_dev_spec() -> Result { let properties = get_properties("PILT", 15, 38); let wasm = WASM_BINARY.ok_or("No WASM")?; @@ -138,10 +135,6 @@ pub fn make_new_spec() -> Result { )) } -pub fn kilt_inflation_config() -> InflationInfo { - InflationInfo::from(INFLATION_CONFIG) -} - #[allow(clippy::too_many_arguments)] fn testnet_genesis( wasm_binary: &[u8], @@ -181,19 +174,6 @@ fn testnet_genesis( }, sudo: SudoConfig { key: Some(root_key) }, parachain_info: ParachainInfoConfig { parachain_id: id }, - kilt_launch: KiltLaunchConfig { - vesting: airdrop_accounts - .iter() - .cloned() - .map(|(who, amount, vesting_length, _)| (who, vesting_length, amount)) - .collect(), - balance_locks: airdrop_accounts - .iter() - .cloned() - .map(|(who, amount, _, locking_length)| (who, locking_length, amount)) - .collect(), - transfer_account: TRANSFER_ACCOUNT.into(), - }, vesting: VestingConfig { vesting: botlabs_accounts .iter() @@ -211,6 +191,7 @@ fn testnet_genesis( phantom: Default::default(), }, treasury: Default::default(), + tips_membership: Default::default(), technical_membership: Default::default(), democracy: Default::default(), parachain_staking: ParachainStakingConfig { diff --git a/nodes/parachain/src/chain_spec/spiritnet.rs b/nodes/parachain/src/chain_spec/spiritnet.rs index bfba67a03..f900ace84 100644 --- a/nodes/parachain/src/chain_spec/spiritnet.rs +++ b/nodes/parachain/src/chain_spec/spiritnet.rs @@ -21,7 +21,7 @@ use cumulus_primitives_core::ParaId; use hex_literal::hex; use runtime_common::{ - constants::{INFLATION_CONFIG, KILT, MAX_COLLATOR_STAKE}, + constants::{kilt_inflation_config, staking::MinCollatorStake, KILT, MAX_COLLATOR_STAKE}, AccountId, AuthorityId, Balance, BlockNumber, }; use sc_service::ChainType; @@ -29,9 +29,8 @@ use sc_telemetry::TelemetryEndpoints; use sp_core::{crypto::UncheckedInto, sr25519}; use sp_runtime::traits::Zero; use spiritnet_runtime::{ - BalancesConfig, CouncilConfig, GenesisConfig, InflationInfo, KiltLaunchConfig, MinCollatorStake, - ParachainInfoConfig, ParachainStakingConfig, SessionConfig, SystemConfig, TechnicalCommitteeConfig, VestingConfig, - WASM_BINARY, + BalancesConfig, CouncilConfig, GenesisConfig, InflationInfo, ParachainInfoConfig, ParachainStakingConfig, + SessionConfig, SystemConfig, TechnicalCommitteeConfig, VestingConfig, WASM_BINARY, }; use crate::chain_spec::{get_account_id_from_seed, get_from_seed, DEFAULT_PARA_ID, TELEMETRY_URL}; @@ -108,7 +107,6 @@ pub fn get_chain_spec_dev() -> Result { 10000000 * KILT, ), ], - hex!["6a3c793cec9dbe330b349dc4eea6801090f5e71f53b1b41ad11afb4a313a282c"].into(), DEFAULT_PARA_ID, ) }, @@ -128,7 +126,6 @@ const WILT_COL_ACC_1: [u8; 32] = hex!["e6cf13c86a5f174acba79ca361dc429d89eb704c6 const WILT_COL_SESSION_1: [u8; 32] = hex!["e29df39b74777495ca00cd7a316ce98c5225d7088ae924b122fe0e2e6a4b5569"]; const WILT_COL_ACC_2: [u8; 32] = hex!["e8ed0c2a40fb5a0bbb24c38f5c8cd83d79498ac029ac9f87497677f5701e3d2c"]; const WILT_COL_SESSION_2: [u8; 32] = hex!["7cacfbce640321ba84a85f41dfb43c2a2ea14ed789c096ad62ee0491599b0f44"]; -const WILT_TRANS_ACC: [u8; 32] = hex!["aaf5308b81f962ffdaccaa22352cc95b7bef70033d9d0d5a7023ec5681f05954"]; pub fn get_chain_spec_wilt() -> Result { let properties = get_properties("WILT", 15, 38); @@ -155,9 +152,7 @@ pub fn get_chain_spec_wilt() -> Result { vec![ (WILT_COL_ACC_1.into(), 40000 * KILT), (WILT_COL_ACC_2.into(), 40000 * KILT), - (WILT_TRANS_ACC.into(), 10000 * KILT), ], - WILT_TRANS_ACC.into(), id, ) }, @@ -184,12 +179,11 @@ const RILT_COL_ACC_1: [u8; 32] = hex!["6a5c355bca369a54c334542fd91cf70822be92f21 const RILT_COL_SESSION_1: [u8; 32] = hex!["66c4ca0710c2c8a92504f281d992000508ce255543016545014cf0bfbbe71429"]; const RILT_COL_ACC_2: [u8; 32] = hex!["768538a941d1e4730c31830ab85a54ff34aaaad1f81bdd246db11802a57a5412"]; const RILT_COL_SESSION_2: [u8; 32] = hex!["7cff6c7a53c4630a0a35f8793a04b663681575bbfa43dbe5848b220bc4bd1963"]; -const RILT_TRANS_ACC: [u8; 32] = hex!["6e016ca65cd213156c075da95c132bd1917762de0026ee539c720999aded3216"]; pub fn get_chain_spec_rilt() -> Result { let properties = get_properties("RILT", 15, 38); let wasm = WASM_BINARY.ok_or("No WASM")?; - let id: ParaId = 2015.into(); + let id: ParaId = 2086.into(); Ok(ChainSpec::from_genesis( "RILT", @@ -211,9 +205,7 @@ pub fn get_chain_spec_rilt() -> Result { vec![ (RILT_COL_ACC_1.into(), 1_000_000 * KILT), (RILT_COL_ACC_2.into(), 1_000_000 * KILT), - (RILT_TRANS_ACC.into(), 10_000 * KILT), ], - RILT_TRANS_ACC.into(), id, ) }, @@ -244,10 +236,6 @@ pub fn load_spiritnet_spec() -> Result { ChainSpec::from_json_bytes(&include_bytes!("../../res/spiritnet.json")[..]) } -pub fn kilt_inflation_config() -> InflationInfo { - InflationInfo::from(INFLATION_CONFIG) -} - #[allow(clippy::too_many_arguments)] fn testnet_genesis( wasm_binary: &[u8], @@ -256,7 +244,6 @@ fn testnet_genesis( max_candidate_stake: Balance, initial_authorities: Vec<(AccountId, AuthorityId)>, endowed_accounts: Vec<(AccountId, Balance)>, - transfer_account: AccountId, id: ParaId, ) -> GenesisConfig { type VestingPeriod = BlockNumber; @@ -291,19 +278,6 @@ fn testnet_genesis( .collect(), }, parachain_info: ParachainInfoConfig { parachain_id: id }, - kilt_launch: KiltLaunchConfig { - vesting: claimable_accounts - .iter() - .cloned() - .map(|(who, amount, vesting_length, _)| (who, vesting_length, amount)) - .collect(), - balance_locks: claimable_accounts - .iter() - .cloned() - .map(|(who, amount, _, locking_length)| (who, locking_length, amount)) - .collect(), - transfer_account, - }, vesting: VestingConfig { vesting: owned_accounts .iter() @@ -342,6 +316,7 @@ fn testnet_genesis( }, treasury: Default::default(), technical_membership: Default::default(), + tips_membership: Default::default(), democracy: Default::default(), } } diff --git a/nodes/parachain/src/cli.rs b/nodes/parachain/src/cli.rs index 854443e8d..8bf88d47d 100644 --- a/nodes/parachain/src/cli.rs +++ b/nodes/parachain/src/cli.rs @@ -54,8 +54,9 @@ pub(crate) enum Subcommand { /// Revert the chain to a previous state. Revert(sc_cli::RevertCmd), - /// The custom benchmark subcommmand benchmarking runtime pallets. - #[clap(name = "benchmark", about = "Benchmark runtime pallets.")] + /// Sub-commands concerned with benchmarking. + /// The pallet benchmarking moved to the `pallet` sub-command. + #[clap(subcommand)] Benchmark(frame_benchmarking_cli::BenchmarkCmd), /// Try some command against runtime state. @@ -136,6 +137,16 @@ pub(crate) struct Cli { #[clap(flatten)] pub(crate) run: cumulus_client_cli::RunCmd, + // Disable automatic hardware benchmarks. + /// + /// By default these benchmarks are automatically ran at startup and measure + /// the CPU speed, the memory bandwidth and the disk speed. + /// + /// The results are then printed out in the logs, and also sent as part of + /// telemetry, if telemetry is enabled. + #[clap(long)] + pub no_hardware_benchmarks: bool, + /// The name of the runtime which should get executed. #[clap(long, default_value = DEFAULT_RUNTIME)] pub(crate) runtime: String, diff --git a/nodes/parachain/src/command.rs b/nodes/parachain/src/command.rs index 024612e12..5a3784e49 100644 --- a/nodes/parachain/src/command.rs +++ b/nodes/parachain/src/command.rs @@ -17,15 +17,15 @@ // If you feel like getting in touch with us, you can do so at info@botlabs.org use crate::{ - chain_spec, + chain_spec::{self}, cli::{Cli, RelayChainCli, Subcommand}, - service::{new_partial, PeregrineRuntimeExecutor, SpiritRuntimeExecutor}, + service::{new_partial, PeregrineRuntimeExecutor, SpiritnetRuntimeExecutor}, }; use codec::Encode; use cumulus_client_service::genesis::generate_genesis_block; use cumulus_primitives_core::ParaId; +use frame_benchmarking_cli::{BenchmarkCmd, SUBSTRATE_REFERENCE_HARDWARE}; use log::info; -use polkadot_parachain::primitives::AccountIdConversion; #[cfg(feature = "try-runtime")] use polkadot_service::TaskManager; use runtime_common::Block; @@ -35,7 +35,7 @@ use sc_cli::{ }; use sc_service::config::{BasePath, PrometheusConfig}; use sp_core::hexdisplay::HexDisplay; -use sp_runtime::traits::Block as BlockT; +use sp_runtime::traits::{AccountIdConversion, Block as BlockT}; use std::{io::Write, net::SocketAddr}; trait IdentifyChain { @@ -50,7 +50,7 @@ impl IdentifyChain for dyn sc_service::ChainSpec { fn is_spiritnet(&self) -> bool { self.id().contains("spiritnet") || self.id().eq("kilt_westend") - || self.id().eq("kilt_rococo_2") + || self.id().eq("kilt_rococo") || self.id().eq("kilt") } } @@ -77,7 +77,7 @@ fn load_spec(id: &str, runtime: &str) -> std::result::Result Ok(Box::new(chain_spec::peregrine::make_dev_spec()?)), (path, "spiritnet") => Ok(Box::new(chain_spec::spiritnet::ChainSpec::from_json_file(path.into())?)), (path, "peregrine") => Ok(Box::new(chain_spec::peregrine::ChainSpec::from_json_file(path.into())?)), - _ => Err("Unknown runtime".to_owned()), + _ => Err("Unknown KILT parachain spec".to_owned()), } } @@ -173,15 +173,16 @@ fn extract_genesis_wasm(chain_spec: &Box) -> Result {{ let runner = $cli.create_runner($cmd)?; match $cli.runtime.as_str() { "spiritnet" => { runner.async_run(|$config| { - let $components = new_partial::( + let $components = new_partial::( &$config, - crate::service::build_import_queue::, + crate::service::build_import_queue::, )?; let task_manager = $components.task_manager; { $( $code )* }.map(|v| (v, task_manager)) @@ -259,20 +260,71 @@ pub fn run() -> Result<()> { }) } Some(Subcommand::Revert(cmd)) => { - construct_async_run!(|components, cli, cmd, config| Ok(cmd.run(components.client, components.backend))) + construct_async_run!(|components, cli, cmd, config| Ok(cmd.run( + components.client, + components.backend, + None + ))) } Some(Subcommand::Benchmark(cmd)) => { - if cfg!(feature = "runtime-benchmarks") { - let runner = cli.create_runner(cmd)?; - match cli.runtime.as_str() { - "peregrine" => runner.sync_run(|config| cmd.run::(config)), - "spiritnet" => runner.sync_run(|config| cmd.run::(config)), - _ => Err("Unknown runtime".into()), + let runner = cli.create_runner(cmd)?; + + // Switch on the concrete benchmark sub-command + match (cmd, cli.runtime.as_str()) { + (BenchmarkCmd::Pallet(cmd), runtime) => { + if cfg!(feature = "runtime-benchmarks") { + match runtime { + "spiritnet" => runner.sync_run(|config| cmd.run::(config)), + "peregrine" => runner.sync_run(|config| cmd.run::(config)), + _ => Err("Unknown parachain runtime".into()), + } + } else { + Err("Benchmarking wasn't enabled when building the node. \ + You can enable it with `--features runtime-benchmarks`." + .into()) + } } - } else { - Err("Benchmarking wasn't enabled when building the node. \ - You can enable it with `--features runtime-benchmarks`." - .into()) + (BenchmarkCmd::Block(cmd), "spiritnet") => runner.sync_run(|config| { + let partials = new_partial::( + &config, + crate::service::build_import_queue, + )?; + cmd.run(partials.client) + }), + (BenchmarkCmd::Block(cmd), "peregrine") => runner.sync_run(|config| { + let partials = new_partial::( + &config, + crate::service::build_import_queue, + )?; + cmd.run(partials.client) + }), + (BenchmarkCmd::Storage(cmd), "spiritnet") => runner.sync_run(|config| { + let partials = new_partial::( + &config, + crate::service::build_import_queue, + )?; + + let db = partials.backend.expose_db(); + let storage = partials.backend.expose_storage(); + + cmd.run(config, partials.client.clone(), db, storage) + }), + (BenchmarkCmd::Storage(cmd), "peregrine") => runner.sync_run(|config| { + let partials = new_partial::( + &config, + crate::service::build_import_queue, + )?; + + let db = partials.backend.expose_db(); + let storage = partials.backend.expose_storage(); + + cmd.run(config, partials.client.clone(), db, storage) + }), + (BenchmarkCmd::Overhead(_), _) => Err("Unsupported benchmarking command".into()), + (BenchmarkCmd::Machine(cmd), _) => { + runner.sync_run(|config| cmd.run(&config, SUBSTRATE_REFERENCE_HARDWARE.clone())) + } + (_, _) => Err("Unknown parachain runtime".into()), } } Some(Subcommand::ExportGenesisState(params)) => { @@ -328,7 +380,7 @@ pub fn run() -> Result<()> { if runner.config().chain_spec.is_peregrine() { runner.async_run(|config| Ok((cmd.run::(config), task_manager))) } else if runner.config().chain_spec.is_spiritnet() { - runner.async_run(|config| Ok((cmd.run::(config), task_manager))) + runner.async_run(|config| Ok((cmd.run::(config), task_manager))) } else { Err("Chain doesn't support try-runtime".into()) } @@ -339,8 +391,18 @@ pub fn run() -> Result<()> { .into()), None => { let runner = cli.create_runner(&cli.run.normalize())?; + let collator_options = cli.run.collator_options(); runner.run_node_until_exit(|config| async move { + let hwbench = if !cli.no_hardware_benchmarks { + config.database.path().map(|database_path| { + let _ = std::fs::create_dir_all(&database_path); + sc_sysinfo::gather_hwbench(Some(database_path)) + }) + } else { + None + }; + let para_id = chain_spec::Extensions::try_get(&*config.chain_spec) .map(|e| e.para_id) .ok_or("Could not find parachain ID in chain-spec.")?; @@ -354,7 +416,8 @@ pub fn run() -> Result<()> { let id = ParaId::from(para_id); - let parachain_account = AccountIdConversion::::into_account(&id); + let parachain_account = + AccountIdConversion::::into_account_truncating(&id); let state_version = RelayChainCli::native_runtime_version(&config.chain_spec).state_version(); let block: Block = @@ -377,22 +440,26 @@ pub fn run() -> Result<()> { crate::service::start_node::( config, polkadot_config, + collator_options, id, + hwbench, ) .await .map(|r| r.0) .map_err(Into::into) } else if config.chain_spec.is_spiritnet() { - crate::service::start_node::( + crate::service::start_node::( config, polkadot_config, + collator_options, id, + hwbench, ) .await .map(|r| r.0) .map_err(Into::into) } else { - Err("Unknown runtime".into()) + Err("Unknown KILT parachain runtime, neither Spiritnet nor Peregrine".into()) } }) } diff --git a/nodes/parachain/src/rpc.rs b/nodes/parachain/src/rpc.rs index 0130e35b1..6aeee6558 100644 --- a/nodes/parachain/src/rpc.rs +++ b/nodes/parachain/src/rpc.rs @@ -27,7 +27,6 @@ use std::sync::Arc; use polkadot_service::AuxStore; use runtime_common::{AccountId, Balance, Block, Index}; -use sc_service::Error; use sc_transaction_pool_api::TransactionPool; use sp_api::ProvideRuntimeApi; use sp_block_builder::BlockBuilder; @@ -35,6 +34,9 @@ use sp_blockchain::{Error as BlockChainError, HeaderBackend, HeaderMetadata}; pub use sc_rpc_api::DenyUnsafe; +/// A type representing all RPC extensions. +pub type RpcExtension = jsonrpsee::RpcModule<()>; + /// Full client dependencies. pub struct FullDeps { /// The client instance to use. @@ -46,7 +48,7 @@ pub struct FullDeps { } /// Instantiate all full RPC extensions. -pub fn create_full(deps: FullDeps) -> Result, Error> +pub fn create_full(deps: FullDeps) -> Result> where C: ProvideRuntimeApi, C: AuxStore, @@ -57,29 +59,24 @@ where C::Api: BlockBuilder, P: TransactionPool + Sync + Send + 'static, { - use frame_rpc_system::{FullSystem, SystemApi}; - use pallet_transaction_payment_rpc::{TransactionPayment, TransactionPaymentApi}; + use frame_rpc_system::{System, SystemApiServer}; + use pallet_transaction_payment_rpc::{TransactionPayment, TransactionPaymentApiServer}; - let mut io = jsonrpc_core::IoHandler::default(); + let mut module = RpcExtension::new(()); let FullDeps { client, pool, deny_unsafe, } = deps; - io.extend_with(SystemApi::to_delegate(FullSystem::new( - client.clone(), - pool, - deny_unsafe, - ))); - - io.extend_with(TransactionPaymentApi::to_delegate(TransactionPayment::new(client))); + module.merge(System::new(client.clone(), pool, deny_unsafe).into_rpc())?; + module.merge(TransactionPayment::new(client).into_rpc())?; // Extend this RPC with a custom API by using the following syntax. // `YourRpcStruct` should have a reference to a client, which is needed // to call into the runtime. - // `io.extend_with(YourRpcTrait::to_delegate(YourRpcStruct:: - // new(ReferenceToClient, ...)));` + // `module.merge(YourRpcTrait::into_rpc(YourRpcStruct::new(ReferenceToClient, + // ...)))?;` - Ok(io) + Ok(module) } diff --git a/nodes/parachain/src/service.rs b/nodes/parachain/src/service.rs index 52ba2802f..bb1a4fb83 100644 --- a/nodes/parachain/src/service.rs +++ b/nodes/parachain/src/service.rs @@ -16,6 +16,10 @@ // If you feel like getting in touch with us, you can do so at info@botlabs.org +// rpc +use jsonrpsee::RpcModule; + +use cumulus_client_cli::CollatorOptions; use cumulus_client_consensus_aura::{AuraConsensus, BuildAuraConsensusParams, SlotProportion}; use cumulus_client_consensus_common::ParachainConsensus; use cumulus_client_network::BlockAnnounceValidator; @@ -23,16 +27,16 @@ use cumulus_client_service::{ prepare_node_config, start_collator, start_full_node, StartCollatorParams, StartFullNodeParams, }; use cumulus_primitives_core::ParaId; -use cumulus_relay_chain_interface::RelayChainInterface; -use cumulus_relay_chain_local::build_relay_chain_interface; -use polkadot_service::NativeExecutionDispatch; +use cumulus_relay_chain_inprocess_interface::build_inprocess_relay_chain; +use cumulus_relay_chain_interface::{RelayChainError, RelayChainInterface, RelayChainResult}; +use cumulus_relay_chain_rpc_interface::RelayChainRPCInterface; +use polkadot_service::{CollatorPair, NativeExecutionDispatch}; use sc_client_api::ExecutorProvider; use sc_executor::NativeElseWasmExecutor; use sc_network::NetworkService; -use sc_service::{Configuration, Role, RpcExtensionBuilder, TFullBackend, TFullClient, TaskManager}; +use sc_service::{Configuration, Role, TFullBackend, TFullClient, TaskManager}; use sc_telemetry::{Telemetry, TelemetryHandle, TelemetryWorker, TelemetryWorkerHandle}; use sp_api::ConstructRuntimeApi; -use sp_consensus::SlotData; use sp_keystore::SyncCryptoStorePtr; use sp_runtime::traits::BlakeTwo256; use std::{sync::Arc, time::Duration}; @@ -55,9 +59,9 @@ type PartialComponents; /// Native Spiritnet executor instance. -pub struct SpiritRuntimeExecutor; +pub struct SpiritnetRuntimeExecutor; -impl sc_executor::NativeExecutionDispatch for SpiritRuntimeExecutor { +impl sc_executor::NativeExecutionDispatch for SpiritnetRuntimeExecutor { type ExtendHostFunctions = frame_benchmarking::benchmarking::HostFunctions; fn dispatch(method: &str, data: &[u8]) -> Option> { @@ -177,19 +181,45 @@ where Ok(params) } +async fn build_relay_chain_interface( + polkadot_config: Configuration, + parachain_config: &Configuration, + telemetry_worker_handle: Option, + task_manager: &mut TaskManager, + collator_options: CollatorOptions, + hwbench: Option, +) -> RelayChainResult<(Arc<(dyn RelayChainInterface + 'static)>, Option)> { + match collator_options.relay_chain_rpc_url { + Some(relay_chain_url) => Ok(( + Arc::new(RelayChainRPCInterface::new(relay_chain_url).await?) as Arc<_>, + None, + )), + None => build_inprocess_relay_chain( + polkadot_config, + parachain_config, + telemetry_worker_handle, + task_manager, + hwbench, + ), + } +} + /// Start a node with the given parachain `Configuration` and relay chain /// `Configuration`. /// /// This is the actual implementation that is abstract over the executor and the /// runtime api. +#[allow(clippy::too_many_arguments)] #[sc_tracing::logging::prefix_logs_with("Parachain")] async fn start_node_impl( parachain_config: Configuration, polkadot_config: Configuration, + collator_options: CollatorOptions, id: ParaId, - rpc_ext_builder: RB, + _rpc_ext_builder: RB, build_import_queue: BIQ, build_consensus: BIC, + hwbench: Option, ) -> sc_service::error::Result<( TaskManager, Arc>>, @@ -205,13 +235,14 @@ where + sp_api::ApiExt, Block>> + sp_offchain::OffchainWorkerApi + sp_block_builder::BlockBuilder - + cumulus_primitives_core::CollectCollationInfo, + + cumulus_primitives_core::CollectCollationInfo + + pallet_transaction_payment_rpc::TransactionPaymentRuntimeApi + + frame_rpc_system::AccountNonceApi, sc_client_api::StateBackendFor, Block>: sp_api::StateBackend, Executor: sc_executor::NativeExecutionDispatch + 'static, RB: FnOnce( Arc>>, - Arc>>, - ) -> Box> + Send> + ) -> Result, sc_service::Error> + Send + 'static, BIQ: FnOnce( @@ -248,13 +279,19 @@ where let backend = params.backend.clone(); let mut task_manager = params.task_manager; - let (relay_chain_interface, collator_key) = - build_relay_chain_interface(polkadot_config, telemetry_worker_handle, &mut task_manager).map_err( - |e| match e { - polkadot_service::Error::Sub(x) => x, - s => format!("{}", s).into(), - }, - )?; + let (relay_chain_interface, collator_key) = build_relay_chain_interface( + polkadot_config, + ¶chain_config, + telemetry_worker_handle, + &mut task_manager, + collator_options.clone(), + hwbench.clone(), + ) + .await + .map_err(|e| match e { + RelayChainError::ServiceError(polkadot_service::Error::Sub(x)) => x, + s => s.to_string().into(), + })?; let block_announce_validator = BlockAnnounceValidator::new(relay_chain_interface.clone(), id); @@ -273,8 +310,23 @@ where warp_sync: None, })?; + let rpc_builder = { + let client = client.clone(); + let transaction_pool = transaction_pool.clone(); + + Box::new(move |deny_unsafe, _| { + let deps = crate::rpc::FullDeps { + client: client.clone(), + pool: transaction_pool.clone(), + deny_unsafe, + }; + + crate::rpc::create_full(deps).map_err(Into::into) + }) + }; + sc_service::spawn_tasks(sc_service::SpawnTasksParams { - rpc_extensions_builder: rpc_ext_builder(client.clone(), transaction_pool.clone()), + rpc_builder, client: client.clone(), transaction_pool: transaction_pool.clone(), task_manager: &mut task_manager, @@ -286,6 +338,19 @@ where telemetry: telemetry.as_mut(), })?; + if let Some(hwbench) = hwbench { + sc_sysinfo::print_hwbench(&hwbench); + + if let Some(ref mut telemetry) = telemetry { + let telemetry_handle = telemetry.handle(); + task_manager.spawn_handle().spawn( + "telemetry_hwbench", + None, + sc_sysinfo::initialize_hwbench_telemetry(telemetry_handle, hwbench), + ); + } + } + let announce_block = { let network = network.clone(); Arc::new(move |hash, data| network.announce_block(hash, data)) @@ -309,16 +374,16 @@ where let spawner = task_manager.spawn_handle(); let params = StartCollatorParams { + para_id: id, block_status: client.clone(), - client: client.clone(), announce_block, - spawner, - para_id: id, - relay_chain_interface, + client: client.clone(), task_manager: &mut task_manager, + relay_chain_interface, + spawner, parachain_consensus, import_queue, - collator_key, + collator_key: collator_key.expect("Command line arguments do not allow this. qed"), relay_chain_slot_duration, }; @@ -332,6 +397,7 @@ where relay_chain_interface, relay_chain_slot_duration, import_queue, + collator_options, }; start_full_node(params)?; @@ -377,9 +443,9 @@ where create_inherent_data_providers: move |_, _| async move { let time = sp_timestamp::InherentDataProvider::from_system_time(); - let slot = sp_consensus_aura::inherents::InherentDataProvider::from_timestamp_and_duration( + let slot = sp_consensus_aura::inherents::InherentDataProvider::from_timestamp_and_slot_duration( *time, - slot_duration.slot_duration(), + slot_duration, ); Ok((time, slot)) @@ -397,7 +463,9 @@ where pub async fn start_node( parachain_config: Configuration, polkadot_config: Configuration, + collator_options: CollatorOptions, id: ParaId, + hwbench: Option, ) -> sc_service::error::Result<(TaskManager, Arc>>)> where RE: sc_executor::NativeExecutionDispatch + 'static, @@ -414,26 +482,12 @@ where + cumulus_primitives_core::CollectCollationInfo, sc_client_api::StateBackendFor, Block>: sp_api::StateBackend, { - let rpc_extensions_builder = - |client: Arc>>, - pool: Arc>>| - -> Box> + std::marker::Send> { - Box::new(move |deny_unsafe, _| { - let deps = crate::rpc::FullDeps { - client: client.clone(), - pool: pool.clone(), - deny_unsafe, - }; - - crate::rpc::create_full(deps) - }) - }; - start_node_impl::( parachain_config, polkadot_config, + collator_options, id, - rpc_extensions_builder, + |_| Ok(RpcModule::new(())), build_import_queue::, |client, prometheus_registry, @@ -477,9 +531,9 @@ where .await; let time = sp_timestamp::InherentDataProvider::from_system_time(); - let slot = sp_consensus_aura::inherents::InherentDataProvider::from_timestamp_and_duration( + let slot = sp_consensus_aura::inherents::InherentDataProvider::from_timestamp_and_slot_duration( *time, - slot_duration.slot_duration(), + slot_duration, ); let parachain_inherent = parachain_inherent.ok_or_else(|| { @@ -502,6 +556,7 @@ where telemetry, })) }, + hwbench, ) .await } diff --git a/nodes/standalone/Cargo.toml b/nodes/standalone/Cargo.toml index 6ec3e0737..fa70ddadb 100644 --- a/nodes/standalone/Cargo.toml +++ b/nodes/standalone/Cargo.toml @@ -3,15 +3,14 @@ authors = ["KILT "] build = "build.rs" edition = "2021" name = "mashnet-node" -version = "1.6.2" +version = "1.7.0" [[bin]] name = "mashnet-node" path = "src/main.rs" [build-dependencies] -build-script-utils = {package = "substrate-build-script-utils", git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -vergen = "3.1.0" +substrate-build-script-utils = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} [dependencies] @@ -20,55 +19,57 @@ mashnet-node-runtime = {path = "../../runtimes/standalone"} runtime-common = {path = "../../runtimes/common"} # External dependencies -clap = { version = "3.1", features = ["derive"] } -futures = "0.3" +clap = {version = "3.1.18", features = ["derive"]} +futures = "0.3.21" hex-literal = "0.3.4" -log = "0.4" -serde = {version = "1.0.132", features = ["derive"]} -serde_json = "1.0.74" +log = "0.4.17" +serde = {version = "1.0.137", features = ["derive"]} +serde_json = "1.0.79" # Substrate dependencies -sc-basic-authorship = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sc-cli = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sc-client-api = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sc-consensus = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sc-consensus-aura = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sc-executor = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sc-finality-grandpa = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sc-keystore = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sc-network = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sc-service = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sc-telemetry = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sc-transaction-pool = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sc-transaction-pool-api = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sp-api = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sp-block-builder = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sp-blockchain = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sp-consensus = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sp-consensus-aura = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sp-core = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sp-finality-grandpa = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sp-inherents = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sp-runtime = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sp-timestamp = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sp-transaction-pool = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} +frame-system = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +pallet-transaction-payment = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sc-basic-authorship = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sc-cli = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sc-client-api = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sc-consensus = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sc-consensus-aura = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sc-executor = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sc-finality-grandpa = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sp-keyring = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sc-keystore = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sc-network = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sc-service = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sc-telemetry = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sc-transaction-pool = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sc-transaction-pool-api = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sp-api = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sp-block-builder = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sp-blockchain = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sp-consensus = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sp-consensus-aura = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sp-core = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sp-finality-grandpa = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sp-inherents = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sp-runtime = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sp-timestamp = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sp-transaction-pool = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} # RPC related dependencies -frame-rpc-system = {package = "substrate-frame-rpc-system", git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -jsonrpc-core = "18.0.0" -pallet-transaction-payment-rpc = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sc-rpc = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -sc-rpc-api = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} +frame-rpc-system = {package = "substrate-frame-rpc-system", git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +jsonrpsee = { version = "0.13.1", features = ["server"] } +pallet-transaction-payment-rpc = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sc-rpc = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sc-rpc-api = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} # Benchmarking -frame-benchmarking = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} -frame-benchmarking-cli = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} +frame-benchmarking = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +frame-benchmarking-cli = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} # Runtime tests -node-executor = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17", optional = true} -pallet-conviction-voting = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17", optional = true} -pallet-referenda = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17", optional = true} -try-runtime-cli = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17", optional = true} +pallet-conviction-voting = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24", optional = true} +pallet-referenda = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24", optional = true} +try-runtime-cli = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24", optional = true} [features] default = [] @@ -76,9 +77,9 @@ runtime-benchmarks = [ "mashnet-node-runtime/runtime-benchmarks", "pallet-conviction-voting/runtime-benchmarks", "pallet-referenda/runtime-benchmarks", + "runtime-common/runtime-benchmarks", ] try-runtime = [ "mashnet-node-runtime/try-runtime", - "node-executor", "try-runtime-cli", ] diff --git a/nodes/standalone/build.rs b/nodes/standalone/build.rs index 8b0b37b23..531baa940 100644 --- a/nodes/standalone/build.rs +++ b/nodes/standalone/build.rs @@ -16,12 +16,10 @@ // If you feel like getting in touch with us, you can do so at info@botlabs.org -use vergen::{generate_cargo_keys, ConstantsFlags}; - -const ERROR_MSG: &str = "Failed to generate metadata files"; +use substrate_build_script_utils::{generate_cargo_keys, rerun_if_git_head_changed}; fn main() { - generate_cargo_keys(ConstantsFlags::SHA_SHORT).expect(ERROR_MSG); + generate_cargo_keys(); - build_script_utils::rerun_if_git_head_changed(); + rerun_if_git_head_changed(); } diff --git a/nodes/standalone/src/chain_spec.rs b/nodes/standalone/src/chain_spec.rs index 8a593354b..1be68d492 100644 --- a/nodes/standalone/src/chain_spec.rs +++ b/nodes/standalone/src/chain_spec.rs @@ -19,10 +19,9 @@ //! KILT chain specification use mashnet_node_runtime::{ - BalancesConfig, GenesisConfig, IndicesConfig, KiltLaunchConfig, SessionConfig, SudoConfig, SystemConfig, - VestingConfig, WASM_BINARY, + BalancesConfig, GenesisConfig, IndicesConfig, SessionConfig, SudoConfig, SystemConfig, VestingConfig, WASM_BINARY, }; -use runtime_common::{constants::BLOCKS_PER_YEAR, AccountId, AccountPublic, Balance, BlockNumber}; +use runtime_common::{AccountId, AccountPublic, Balance, BlockNumber}; use hex_literal::hex; @@ -79,10 +78,9 @@ fn get_authority_keys_from_secret(seed: &str) -> (AccountId, AuraId, GrandpaId) const TELEMETRY_URL: &str = "wss://telemetry-backend.kilt.io:8080/submit"; -const SPORRAN_AUTHORITY_ACC: [u8; 32] = hex!("0621f3a33afc66ab7973e3d2cdf86d30ab89aa3e717e8bb1db23a9cb1736061b"); +const SPORRAN_AUTHORITY_ACC: [u8; 32] = hex!("2c94fbcfe0a7db40579e12bc74d0f7215fe91ba51b3eade92799788ca549f373"); const SPORRAN_AUTHORITY_SESSION: [u8; 32] = hex!("3bbaa842650064362767a1d9dd8899f531c80dc42eafb9599f4df0965e4a5299"); const SPORRAN_FAUCET: [u8; 32] = hex!("2c9e9c40e15a2767e2d04dc1f05d824dd76d1d37bada3d7bb1d40eca29f3a4ff"); -const TRANSFER_ACCOUNT: [u8; 32] = hex!("6a3c793cec9dbe330b349dc4eea6801090f5e71f53b1b41ad11afb4a313a282c"); impl Alternative { /// Get an actual chain config from one of the alternatives. @@ -215,19 +213,6 @@ fn testnet_genesis( aura: Default::default(), grandpa: Default::default(), sudo: SudoConfig { key: Some(root_key) }, - kilt_launch: KiltLaunchConfig { - balance_locks: airdrop_accounts - .iter() - .cloned() - .map(|(who, amount, _, locking_length)| (who, locking_length * BLOCKS_PER_YEAR / 12, amount)) - .collect(), - vesting: airdrop_accounts - .iter() - .cloned() - .map(|(who, amount, vesting_length, _)| (who, vesting_length * BLOCKS_PER_YEAR / 12, amount)) - .collect(), - transfer_account: TRANSFER_ACCOUNT.into(), - }, vesting: VestingConfig { vesting: vec![] }, } } diff --git a/nodes/standalone/src/cli.rs b/nodes/standalone/src/cli.rs index c92b4bb5f..d05376123 100644 --- a/nodes/standalone/src/cli.rs +++ b/nodes/standalone/src/cli.rs @@ -55,8 +55,8 @@ pub enum Subcommand { /// Revert the chain to a previous state. Revert(sc_cli::RevertCmd), - /// The custom benchmark subcommmand benchmarking runtime pallets. - #[clap(name = "benchmark", about = "Benchmark runtime pallets.")] + /// Sub-commands concerned with benchmarking. + #[clap(subcommand)] Benchmark(frame_benchmarking_cli::BenchmarkCmd), /// Try some command against runtime state. @@ -67,4 +67,7 @@ pub enum Subcommand { /// be enabled. #[cfg(not(feature = "try-runtime"))] TryRuntime, + + /// Db meta columns information. + ChainInfo(sc_cli::ChainInfoCmd), } diff --git a/nodes/standalone/src/command.rs b/nodes/standalone/src/command.rs index 7f3cfc249..23b1b6488 100644 --- a/nodes/standalone/src/command.rs +++ b/nodes/standalone/src/command.rs @@ -19,14 +19,13 @@ use crate::{ chain_spec, cli::{Cli, Subcommand}, + command_helper::{inherent_benchmark_data, BenchmarkExtrinsicBuilder}, service, }; +use frame_benchmarking_cli::{BenchmarkCmd, SUBSTRATE_REFERENCE_HARDWARE}; use mashnet_node_runtime::opaque::Block; use sc_cli::{ChainSpec, RuntimeVersion, SubstrateCli}; -use sc_service::PartialComponents; - -#[cfg(feature = "try-runtime")] -use node_executor::ExecutorDispatch; +use sc_service::{Arc, PartialComponents}; impl SubstrateCli for Cli { fn impl_name() -> String { @@ -131,19 +130,47 @@ pub fn run() -> sc_cli::Result<()> { backend, .. } = service::new_partial(&config)?; - Ok((cmd.run(client, backend), task_manager)) + let aux_revert = Box::new(move |client, _, blocks| { + sc_finality_grandpa::revert(client, blocks)?; + Ok(()) + }); + Ok((cmd.run(client, backend, Some(aux_revert)), task_manager)) }) } Some(Subcommand::Benchmark(cmd)) => { - if cfg!(feature = "runtime-benchmarks") { - let runner = cli.create_runner(cmd)?; - - runner.sync_run(|config| cmd.run::(config)) - } else { - Err("Benchmarking wasn't enabled when building the node. \ - You can enable it with `--features runtime-benchmarks`." - .into()) - } + let runner = cli.create_runner(cmd)?; + + runner.sync_run(|config| { + let PartialComponents { client, backend, .. } = service::new_partial(&config)?; + + // This switch needs to be in the client, since the client decides + // which sub-commands it wants to support. + match cmd { + BenchmarkCmd::Pallet(cmd) => { + if !cfg!(feature = "runtime-benchmarks") { + return Err("Runtime benchmarking wasn't enabled when building the node. \ + You can enable it with `--features runtime-benchmarks`." + .into()); + } + + cmd.run::(config) + } + BenchmarkCmd::Block(cmd) => cmd.run(client), + BenchmarkCmd::Storage(cmd) => { + let db = backend.expose_db(); + let storage = backend.expose_storage(); + + cmd.run(config, client, db, storage) + } + BenchmarkCmd::Overhead(cmd) => { + let PartialComponents { client, .. } = service::new_partial(&config)?; + let ext_builder = BenchmarkExtrinsicBuilder::new(client.clone()); + + cmd.run(config, client, inherent_benchmark_data()?, Arc::new(ext_builder)) + } + BenchmarkCmd::Machine(cmd) => cmd.run(&config, SUBSTRATE_REFERENCE_HARDWARE.clone()), + } + }) } #[cfg(feature = "try-runtime")] Some(Subcommand::TryRuntime(cmd)) => { @@ -155,13 +182,17 @@ pub fn run() -> sc_cli::Result<()> { let task_manager = sc_service::TaskManager::new(config.tokio_handle.clone(), registry) .map_err(|e| sc_cli::Error::Service(sc_service::Error::Prometheus(e)))?; - Ok((cmd.run::(config), task_manager)) + Ok((cmd.run::(config), task_manager)) }) } #[cfg(not(feature = "try-runtime"))] Some(Subcommand::TryRuntime) => Err("TryRuntime wasn't enabled when building the node. \ You can enable it with `--features try-runtime`." .into()), + Some(Subcommand::ChainInfo(cmd)) => { + let runner = cli.create_runner(cmd)?; + runner.sync_run(|config| cmd.run::(&config)) + } None => { let runner = cli.create_runner(&cli.run)?; runner diff --git a/nodes/standalone/src/command_helper.rs b/nodes/standalone/src/command_helper.rs new file mode 100644 index 000000000..62bd5efa6 --- /dev/null +++ b/nodes/standalone/src/command_helper.rs @@ -0,0 +1,128 @@ +// KILT Blockchain – https://botlabs.org +// Copyright (C) 2019-2022 BOTLabs GmbH + +// The KILT Blockchain is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// The KILT Blockchain is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with this program. If not, see . + +// If you feel like getting in touch with us, you can do so at info@botlabs.org + +use crate::service::FullClient; + +use mashnet_node_runtime as runtime; +use runtime::SystemCall; +use sc_cli::Result; +use sc_client_api::BlockBackend; +use sp_core::{Encode, Pair}; +use sp_inherents::{InherentData, InherentDataProvider}; +use sp_keyring::Sr25519Keyring; +use sp_runtime::{OpaqueExtrinsic, SaturatedConversion}; + +use std::{sync::Arc, time::Duration}; + +/// Generates extrinsics for the `benchmark overhead` command. +/// +/// Note: Should only be used for benchmarking. +pub struct BenchmarkExtrinsicBuilder { + client: Arc, +} + +impl BenchmarkExtrinsicBuilder { + /// Creates a new [`Self`] from the given client. + pub fn new(client: Arc) -> Self { + Self { client } + } +} + +impl frame_benchmarking_cli::ExtrinsicBuilder for BenchmarkExtrinsicBuilder { + fn remark(&self, nonce: u32) -> std::result::Result { + let acc = Sr25519Keyring::Bob.pair(); + let extrinsic: OpaqueExtrinsic = create_benchmark_extrinsic( + self.client.as_ref(), + acc, + SystemCall::remark { remark: vec![] }.into(), + nonce, + ) + .into(); + + Ok(extrinsic) + } +} + +/// Create a transaction using the given `call`. +/// +/// Note: Should only be used for benchmarking. +pub fn create_benchmark_extrinsic( + client: &FullClient, + sender: sp_core::sr25519::Pair, + call: runtime::Call, + nonce: u32, +) -> runtime::UncheckedExtrinsic { + let genesis_hash = client.block_hash(0).ok().flatten().expect("Genesis block exists; qed"); + let best_hash = client.chain_info().best_hash; + let best_block = client.chain_info().best_number; + + let period = runtime::BlockHashCount::get() + .checked_next_power_of_two() + .map(|c| c / 2) + .unwrap_or(2) as u64; + let extra: runtime::SignedExtra = ( + frame_system::CheckNonZeroSender::::new(), + frame_system::CheckSpecVersion::::new(), + frame_system::CheckTxVersion::::new(), + frame_system::CheckGenesis::::new(), + frame_system::CheckEra::::from(sp_runtime::generic::Era::mortal( + period, + best_block.saturated_into(), + )), + frame_system::CheckNonce::::from(nonce.into()), + frame_system::CheckWeight::::new(), + pallet_transaction_payment::ChargeTransactionPayment::::from(0), + ); + + let raw_payload = runtime::SignedPayload::from_raw( + call.clone(), + extra.clone(), + ( + (), + runtime::VERSION.spec_version, + runtime::VERSION.transaction_version, + genesis_hash, + best_hash, + (), + (), + (), + ), + ); + let signature = raw_payload.using_encoded(|e| sender.sign(e)); + + runtime::UncheckedExtrinsic::new_signed( + call, + sp_runtime::AccountId32::from(sender.public()).into(), + runtime_common::Signature::Sr25519(signature), + extra, + ) +} + +/// Generates inherent data for the `benchmark overhead` command. +/// +/// Note: Should only be used for benchmarking. +pub fn inherent_benchmark_data() -> Result { + let mut inherent_data = InherentData::new(); + let d = Duration::from_millis(0); + let timestamp = sp_timestamp::InherentDataProvider::new(d.into()); + + timestamp + .provide_inherent_data(&mut inherent_data) + .map_err(|e| format!("creating inherent data: {:?}", e))?; + Ok(inherent_data) +} diff --git a/nodes/standalone/src/main.rs b/nodes/standalone/src/main.rs index 0c1b4aaa6..4cc616f45 100644 --- a/nodes/standalone/src/main.rs +++ b/nodes/standalone/src/main.rs @@ -25,6 +25,7 @@ mod chain_spec; mod service; mod cli; mod command; +mod command_helper; mod rpc; fn main() -> sc_cli::Result<()> { diff --git a/nodes/standalone/src/rpc.rs b/nodes/standalone/src/rpc.rs index ebd0e00b6..52487ba89 100644 --- a/nodes/standalone/src/rpc.rs +++ b/nodes/standalone/src/rpc.rs @@ -25,6 +25,7 @@ use std::sync::Arc; +use jsonrpsee::RpcModule; use mashnet_node_runtime::opaque::Block; use runtime_common::{AccountId, Balance, Index}; pub use sc_rpc_api::DenyUnsafe; @@ -44,7 +45,7 @@ pub struct FullDeps { } /// Instantiate all full RPC extensions. -pub fn create_full(deps: FullDeps) -> jsonrpc_core::IoHandler +pub fn create_full(deps: FullDeps) -> Result, Box> where C: ProvideRuntimeApi, C: HeaderBackend + HeaderMetadata + 'static, @@ -54,29 +55,24 @@ where C::Api: BlockBuilder, P: TransactionPool + 'static, { - use frame_rpc_system::{FullSystem, SystemApi}; - use pallet_transaction_payment_rpc::{TransactionPayment, TransactionPaymentApi}; + use frame_rpc_system::{System, SystemApiServer}; + use pallet_transaction_payment_rpc::{TransactionPayment, TransactionPaymentApiServer}; - let mut io = jsonrpc_core::IoHandler::default(); + let mut module = RpcModule::new(()); let FullDeps { client, pool, deny_unsafe, } = deps; - io.extend_with(SystemApi::to_delegate(FullSystem::new( - client.clone(), - pool, - deny_unsafe, - ))); - - io.extend_with(TransactionPaymentApi::to_delegate(TransactionPayment::new(client))); + module.merge(System::new(client.clone(), pool, deny_unsafe).into_rpc())?; + module.merge(TransactionPayment::new(client).into_rpc())?; // Extend this RPC with a custom API by using the following syntax. // `YourRpcStruct` should have a reference to a client, which is needed // to call into the runtime. - // `io.extend_with(YourRpcTrait::to_delegate(YourRpcStruct:: - // new(ReferenceToClient, ...)));` + // `module.merge(YourRpcTrait::into_rpc(YourRpcStruct::new(ReferenceToClient, + // ...)))?;` - io + Ok(module) } diff --git a/nodes/standalone/src/service.rs b/nodes/standalone/src/service.rs index 42c1a2fd1..292141b91 100644 --- a/nodes/standalone/src/service.rs +++ b/nodes/standalone/src/service.rs @@ -27,7 +27,6 @@ use sc_finality_grandpa::SharedVoterState; use sc_keystore::LocalKeystore; use sc_service::{error::Error as ServiceError, Configuration, TaskManager}; use sc_telemetry::{Telemetry, TelemetryWorker}; -use sp_consensus::SlotData; use sp_consensus_aura::ed25519::AuthorityPair as AuraPair; use std::{sync::Arc, time::Duration}; @@ -46,7 +45,7 @@ impl sc_executor::NativeExecutionDispatch for ExecutorDispatch { } } -type FullClient = sc_service::TFullClient>; +pub(crate) type FullClient = sc_service::TFullClient>; type FullBackend = sc_service::TFullBackend; type FullSelectChain = sc_consensus::LongestChain; @@ -115,7 +114,7 @@ pub fn new_partial(config: &Configuration) -> Result(ImportQueueParams { block_import: grandpa_block_import.clone(), @@ -124,7 +123,7 @@ pub fn new_partial(config: &Configuration) -> Result Result pool: pool.clone(), deny_unsafe, }; - - Ok(crate::rpc::create_full(deps)) + crate::rpc::create_full(deps).map_err(Into::into) }) }; @@ -240,7 +238,7 @@ pub fn new_full(mut config: Configuration) -> Result keystore: keystore_container.sync_keystore(), task_manager: &mut task_manager, transaction_pool: transaction_pool.clone(), - rpc_extensions_builder, + rpc_builder: rpc_extensions_builder, backend, system_rpc_tx, config, @@ -259,7 +257,6 @@ pub fn new_full(mut config: Configuration) -> Result let can_author_with = sp_consensus::CanAuthorWithNativeVersion::new(client.executor().clone()); let slot_duration = sc_consensus_aura::slot_duration(&*client)?; - let raw_slot_duration = slot_duration.slot_duration(); let aura = sc_consensus_aura::start_aura::(StartAuraParams { slot_duration, @@ -270,9 +267,9 @@ pub fn new_full(mut config: Configuration) -> Result create_inherent_data_providers: move |_, ()| async move { let timestamp = sp_timestamp::InherentDataProvider::from_system_time(); - let slot = sp_consensus_aura::inherents::InherentDataProvider::from_timestamp_and_duration( + let slot = sp_consensus_aura::inherents::InherentDataProvider::from_timestamp_and_slot_duration( *timestamp, - raw_slot_duration, + slot_duration, ); Ok((timestamp, slot)) diff --git a/pallets/attestation/Cargo.toml b/pallets/attestation/Cargo.toml index 91e412353..de5f09490 100644 --- a/pallets/attestation/Cargo.toml +++ b/pallets/attestation/Cargo.toml @@ -4,52 +4,48 @@ description = "Enables adding and revoking attestations." edition = "2021" name = "attestation" repository = "https://github.com/KILTprotocol/mashnet-node" -version = "1.6.2" +version = "1.7.0" [package.metadata.docs.rs] targets = ["x86_64-unknown-linux-gnu"] [build-dependencies] -substrate-wasm-builder-runner = {version = "3.0.0"} +substrate-wasm-builder = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} [dev-dependencies] ctype = {features = ["mock"], path = "../ctype"} -delegation = {features = ["mock"], path = "../delegation"} -runtime-common = {default-features = false, path = "../../runtimes/common"} +kilt-support = {features = ["mock"], path = "../../support"} -pallet-balances = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -serde = {version = "1.0.132"} -sp-core = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-io = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-keystore = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} +pallet-balances = {branch = "polkadot-v0.9.24", git = "https://github.com/paritytech/substrate"} +serde = "1.0.137" +sp-core = {branch = "polkadot-v0.9.24", git = "https://github.com/paritytech/substrate"} +sp-io = {branch = "polkadot-v0.9.24", git = "https://github.com/paritytech/substrate"} +sp-keystore = {branch = "polkadot-v0.9.24", git = "https://github.com/paritytech/substrate"} [dependencies] -codec = {default-features = false, features = ["derive"], package = "parity-scale-codec", version = "2.3.1"} -log = "0.4" -scale-info = {version = "1.0", default-features = false, features = ["derive"]} -serde = {optional = true, version = "1.0.132"} +codec = {package = "parity-scale-codec", version = "3.1.2", default-features = false, features = ["derive"]} +log = "0.4.17" +scale-info = {version = "2.1.1", default-features = false, features = ["derive"]} +serde = {version = "1.0.137", optional = true} # Internal dependencies ctype = {default-features = false, path = "../ctype"} -delegation = {default-features = false, path = "../delegation"} kilt-support = {default-features = false, path = "../../support"} -runtime-common = {default-features = false, optional = true, path = "../../runtimes/common"} #External dependencies -frame-benchmarking = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate", optional = true} -frame-support = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -frame-system = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -pallet-balances = {optional = true, branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-core = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate", optional = true} -sp-io = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate", optional = true} -sp-keystore = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate", optional = true} -sp-runtime = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-std = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} +frame-benchmarking = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate", optional = true} +frame-support = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +frame-system = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +pallet-balances = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate", optional = true} +sp-core = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate", optional = true} +sp-io = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate", optional = true} +sp-keystore = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate", optional = true} +sp-runtime = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +sp-std = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} [features] default = ["std"] mock = [ - "runtime-common", "pallet-balances", "serde", "sp-core", @@ -57,19 +53,17 @@ mock = [ "sp-keystore", ] runtime-benchmarks = [ - "delegation/runtime-benchmarks", "frame-benchmarking", "frame-support/runtime-benchmarks", "frame-system/runtime-benchmarks", + "kilt-support/runtime-benchmarks", "sp-core", ] std = [ "codec/std", "ctype/std", - "delegation/std", "frame-support/std", "frame-system/std", - "runtime-common/std", "kilt-support/std", "log/std", "pallet-balances/std", diff --git a/pallets/attestation/src/access_control.rs b/pallets/attestation/src/access_control.rs new file mode 100644 index 000000000..a94d79502 --- /dev/null +++ b/pallets/attestation/src/access_control.rs @@ -0,0 +1,105 @@ +// KILT Blockchain – https://botlabs.org +// Copyright (C) 2019-2022 BOTLabs GmbH + +// The KILT Blockchain is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// The KILT Blockchain is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with this program. If not, see . + +// If you feel like getting in touch with us, you can do so at info@botlabs.org + +use frame_support::dispatch::Weight; +use sp_runtime::DispatchError; + +/// Allow for more complex schemes on who can attest, revoke and remove. +pub trait AttestationAccessControl { + /// Decides whether the account is allowed to attest with the given + /// information provided by the sender (&self). + fn can_attest(&self, who: &AttesterId, ctype: &Ctype, claim: &ClaimHash) -> Result; + + /// Decides whether the account is allowed to revoke the attestation with + /// the `authorization_id` and the access information provided by the sender + /// (&self). + fn can_revoke( + &self, + who: &AttesterId, + ctype: &Ctype, + claim: &ClaimHash, + authorization_id: &AuthorizationId, + ) -> Result; + + /// Decides whether the account is allowed to remove the attestation with + /// the `authorization_id` and the access information provided by the sender + /// (&self). + fn can_remove( + &self, + who: &AttesterId, + ctype: &Ctype, + claim: &ClaimHash, + authorization_id: &AuthorizationId, + ) -> Result; + + /// The authorization ID that the sender provided. This will be used for new + /// attestations. + /// + /// NOTE: This method must not read storage or do any heavy computation + /// since it's not covered by the weight returned by `self.weight()`. + fn authorization_id(&self) -> AuthorizationId; + + /// The worst-case weight of `can_attest`. + fn can_attest_weight(&self) -> Weight; + + /// The worst-case weight of `can_revoke`. + fn can_revoke_weight(&self) -> Weight; + + /// The worst-case weight of `can_remove`. + fn can_remove_weight(&self) -> Weight; +} + +impl + AttestationAccessControl for () +where + AuthorizationId: Default, +{ + fn can_attest(&self, _who: &AttesterId, _ctype: &Ctype, _claim: &ClaimHash) -> Result { + Err(DispatchError::Other("Unimplemented")) + } + fn can_revoke( + &self, + _who: &AttesterId, + _ctype: &Ctype, + _claim: &ClaimHash, + _authorization_id: &AuthorizationId, + ) -> Result { + Err(DispatchError::Other("Unimplemented")) + } + fn can_remove( + &self, + _who: &AttesterId, + _ctype: &Ctype, + _claim: &ClaimHash, + _authorization_id: &AuthorizationId, + ) -> Result { + Err(DispatchError::Other("Unimplemented")) + } + fn authorization_id(&self) -> AuthorizationId { + Default::default() + } + fn can_attest_weight(&self) -> Weight { + 0 + } + fn can_revoke_weight(&self) -> Weight { + 0 + } + fn can_remove_weight(&self) -> Weight { + 0 + } +} diff --git a/pallets/attestation/src/attestations.rs b/pallets/attestation/src/attestations.rs index 5cb2dc7cd..677d10377 100644 --- a/pallets/attestation/src/attestations.rs +++ b/pallets/attestation/src/attestations.rs @@ -18,11 +18,10 @@ use codec::{Decode, Encode, MaxEncodedLen}; use ctype::CtypeHashOf; -use delegation::DelegationNodeIdOf; use kilt_support::deposit::Deposit; use scale_info::TypeInfo; -use crate::{AccountIdOf, AttesterOf, BalanceOf, Config}; +use crate::{AccountIdOf, AttesterOf, AuthorizationIdOf, BalanceOf, Config}; /// An on-chain attestation written by an attester. #[derive(Clone, Debug, Encode, Decode, PartialEq, TypeInfo, MaxEncodedLen)] @@ -35,10 +34,65 @@ pub struct AttestationDetails { pub attester: AttesterOf, /// \[OPTIONAL\] The ID of the delegation node used to authorize the /// attester. - pub delegation_id: Option>, + pub authorization_id: Option>, /// The flag indicating whether the attestation has been revoked or not. pub revoked: bool, /// The deposit that was taken to incentivise fair use of the on chain /// storage. pub deposit: Deposit, BalanceOf>, } + +#[cfg(test)] +mod tests { + use super::*; + use crate::mock::*; + + /// Old Attestation + #[derive(Clone, Debug, Encode, Decode, PartialEq, TypeInfo, MaxEncodedLen)] + #[scale_info(skip_type_params(T))] + #[codec(mel_bound())] + pub struct OldAttestationDetails { + /// The hash of the CType used for this attestation. + pub ctype_hash: CtypeHashOf, + /// The ID of the attester. + pub attester: AttesterOf, + /// \[OPTIONAL\] The ID of the delegation node used to authorize the + /// attester. + pub delegation_id: Option<[u8; 32]>, + /// The flag indicating whether the attestation has been revoked or not. + pub revoked: bool, + /// The deposit that was taken to incentivise fair use of the on chain + /// storage. + pub deposit: Deposit, BalanceOf>, + } + + #[test] + fn test_no_need_to_migrate_if_none() { + let old = OldAttestationDetails:: { + ctype_hash: claim_hash_from_seed(CLAIM_HASH_SEED_01), + attester: sr25519_did_from_seed(&ALICE_SEED), + delegation_id: None, + revoked: true, + deposit: Deposit { + owner: ACCOUNT_00, + amount: ATTESTATION_DEPOSIT, + }, + }; + let encoded = old.encode(); + + let new = AttestationDetails::::decode(&mut &encoded[..]); + assert_eq!( + new, + Ok(AttestationDetails:: { + ctype_hash: claim_hash_from_seed(CLAIM_HASH_SEED_01), + attester: sr25519_did_from_seed(&ALICE_SEED), + authorization_id: None, + revoked: true, + deposit: Deposit { + owner: ACCOUNT_00, + amount: ATTESTATION_DEPOSIT, + }, + }) + ); + } +} diff --git a/pallets/attestation/src/benchmarking.rs b/pallets/attestation/src/benchmarking.rs index 2bfe53331..8b4c123c7 100644 --- a/pallets/attestation/src/benchmarking.rs +++ b/pallets/attestation/src/benchmarking.rs @@ -19,49 +19,39 @@ use frame_benchmarking::{account, benchmarks, impl_benchmark_test_suite}; use frame_support::traits::{Currency, Get}; use frame_system::RawOrigin; -use sp_core::sr25519; use sp_runtime::traits::Hash; -use sp_std::num::NonZeroU32; -use delegation::{benchmarking::setup_delegations, Config as DelegationConfig, Permissions}; -use kilt_support::{signature::VerifySignature, traits::GenerateBenchmarkOrigin}; +use kilt_support::traits::GenerateBenchmarkOrigin; use crate::*; -const ONE_CHILD_PER_LEVEL: Option = NonZeroU32::new(1); const SEED: u32 = 0; benchmarks! { where_clause { where T: core::fmt::Debug, - T::DelegationNodeId: From, - T::CtypeCreatorId: From, - T::DelegationEntityId: From, - <::DelegationSignatureVerification as VerifySignature>::Signature: From<( - T::DelegationEntityId, - <::DelegationSignatureVerification as VerifySignature>::Payload, - )>, - ::EnsureOrigin: GenerateBenchmarkOrigin, - ::EnsureOrigin: GenerateBenchmarkOrigin, + ::EnsureOrigin: GenerateBenchmarkOrigin, + T: ctype::Config, } add { let sender: T::AccountId = account("sender", 0, SEED); + let attester: T::AttesterId = account("attester", 0, SEED); let claim_hash: T::Hash = T::Hashing::hash(b"claim"); let ctype_hash: T::Hash = T::Hash::default(); - let (_, _, delegate_public, delegation_id) = setup_delegations::(1, ONE_CHILD_PER_LEVEL.expect(">0"), Permissions::ATTEST)?; - let delegate_acc: T::DelegationEntityId = delegate_public.into(); + + ctype::Ctypes::::insert(&ctype_hash, attester.clone()); ::Currency::make_free_balance_be(&sender, ::Deposit::get() + ::Deposit::get()); - let origin = ::EnsureOrigin::generate_origin(sender.clone(), delegate_acc.clone()); - }: _(origin, claim_hash, ctype_hash, Some(delegation_id)) + let origin = ::EnsureOrigin::generate_origin(sender.clone(), attester.clone()); + }: _(origin, claim_hash, ctype_hash, None) verify { assert!(Attestations::::contains_key(claim_hash)); assert_eq!(Pallet::::attestations(claim_hash), Some(AttestationDetails { ctype_hash, - attester: delegate_acc, - delegation_id: Some(delegation_id), + attester, + authorization_id: None, revoked: false, deposit: kilt_support::deposit::Deposit { owner: sender, @@ -71,29 +61,23 @@ benchmarks! { } revoke { - let d in 1 .. T::MaxParentChecks::get(); - let sender: T::AccountId = account("sender", 0, SEED); + let attester: T::AttesterId = account("attester", 0, SEED); let claim_hash: T::Hash = T::Hashing::hash(b"claim"); let ctype_hash: T::Hash = T::Hash::default(); - let (root_public, _, delegate_public, delegation_id) = setup_delegations::(d, ONE_CHILD_PER_LEVEL.expect(">0"), Permissions::ATTEST | Permissions::DELEGATE)?; - let root_acc: T::DelegationEntityId = root_public.into(); - let delegate_acc: T::DelegationEntityId = delegate_public.into(); + ctype::Ctypes::::insert(&ctype_hash, attester.clone()); ::Currency::make_free_balance_be(&sender, ::Deposit::get() + ::Deposit::get()); - // attest with leaf account - let origin = ::EnsureOrigin::generate_origin(sender.clone(), delegate_acc.clone()); - Pallet::::add(origin, claim_hash, ctype_hash, Some(delegation_id))?; - // revoke with root account, s.t. delegation tree needs to be traversed - let origin = ::EnsureOrigin::generate_origin(sender.clone(), root_acc); - }: _(origin, claim_hash, d) + let origin = ::EnsureOrigin::generate_origin(sender.clone(), attester.clone()); + Pallet::::add(origin.clone(), claim_hash, ctype_hash, None)?; + }: _(origin, claim_hash, None) verify { assert!(Attestations::::contains_key(claim_hash)); assert_eq!(Attestations::::get(claim_hash), Some(AttestationDetails { ctype_hash, - attester: delegate_acc, - delegation_id: Some(delegation_id), + attester, + authorization_id: None, revoked: true, deposit: kilt_support::deposit::Deposit { owner: sender, @@ -103,41 +87,34 @@ benchmarks! { } remove { - let d in 1 .. T::MaxParentChecks::get(); - + let attester: T::AttesterId = account("attester", 0, SEED); + let sender: T::AccountId = account("sender", 0, SEED); let claim_hash: T::Hash = T::Hashing::hash(b"claim"); let ctype_hash: T::Hash = T::Hash::default(); - let sender: T::AccountId = account("sender", 0, SEED); - let (root_public, _, delegate_public, delegation_id) = setup_delegations::(d, ONE_CHILD_PER_LEVEL.expect(">0"), Permissions::ATTEST | Permissions::DELEGATE)?; - let root_acc: T::DelegationEntityId = root_public.into(); - let delegate_acc: T::DelegationEntityId = delegate_public.into(); + ctype::Ctypes::::insert(&ctype_hash, attester.clone()); ::Currency::make_free_balance_be(&sender, ::Deposit::get() + ::Deposit::get()); - // attest with leaf account - let origin = ::EnsureOrigin::generate_origin(sender.clone(), delegate_acc); - Pallet::::add(origin, claim_hash, ctype_hash, Some(delegation_id))?; - // revoke with root account, s.t. delegation tree needs to be traversed - let origin = ::EnsureOrigin::generate_origin(sender, root_acc); - }: _(origin, claim_hash, d) + let origin = ::EnsureOrigin::generate_origin(sender.clone(), attester.clone()); + Pallet::::add(origin, claim_hash, ctype_hash, None)?; + let origin = ::EnsureOrigin::generate_origin(sender, attester); + }: _(origin, claim_hash, None) verify { assert!(!Attestations::::contains_key(claim_hash)); } reclaim_deposit { + let attester: T::AttesterId = account("attester", 0, SEED); + let sender: T::AccountId = account("sender", 0, SEED); let claim_hash: T::Hash = T::Hashing::hash(b"claim"); let ctype_hash: T::Hash = T::Hash::default(); - let sender: T::AccountId = account("sender", 0, SEED); - let (root_public, _, delegate_public, delegation_id) = setup_delegations::(1, ONE_CHILD_PER_LEVEL.expect(">0"), Permissions::ATTEST | Permissions::DELEGATE)?; - let root_acc: T::DelegationEntityId = root_public.into(); - let delegate_acc: T::DelegationEntityId = delegate_public.into(); + ctype::Ctypes::::insert(&ctype_hash, attester.clone()); ::Currency::make_free_balance_be(&sender, ::Deposit::get() + ::Deposit::get()); - // attest with leaf account - let origin = ::EnsureOrigin::generate_origin(sender.clone(), delegate_acc); - Pallet::::add(origin, claim_hash, ctype_hash, Some(delegation_id))?; - // revoke with root account, s.t. delegation tree needs to be traversed + let origin = ::EnsureOrigin::generate_origin(sender.clone(), attester); + Pallet::::add(origin, claim_hash, ctype_hash, None)?; + // revoke with root account let origin = RawOrigin::Signed(sender); }: _(origin, claim_hash) verify { diff --git a/pallets/attestation/src/default_weights.rs b/pallets/attestation/src/default_weights.rs index a38c1ea15..10634e2a9 100644 --- a/pallets/attestation/src/default_weights.rs +++ b/pallets/attestation/src/default_weights.rs @@ -47,8 +47,8 @@ use sp_std::marker::PhantomData; /// Weight functions needed for attestation. pub trait WeightInfo { fn add() -> Weight; - fn revoke(d: u32, ) -> Weight; - fn remove(d: u32, ) -> Weight; + fn revoke() -> Weight; + fn remove() -> Weight; fn reclaim_deposit() -> Weight; } @@ -60,20 +60,20 @@ impl WeightInfo for SubstrateWeight { .saturating_add(T::DbWeight::get().reads(6_u64)) .saturating_add(T::DbWeight::get().writes(3_u64)) } - fn revoke(d: u32, ) -> Weight { + fn revoke() -> Weight { (37_029_000_u64) // Standard Error: 44_000 - .saturating_add((6_325_000_u64).saturating_mul(d as Weight)) + .saturating_add(6_325_000_u64) .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(d as Weight))) + .saturating_add(T::DbWeight::get().reads(1_u64)) .saturating_add(T::DbWeight::get().writes(1_u64)) } - fn remove(d: u32, ) -> Weight { + fn remove() -> Weight { (64_058_000_u64) // Standard Error: 44_000 - .saturating_add((6_317_000_u64).saturating_mul(d as Weight)) + .saturating_add(6_317_000_u64) .saturating_add(T::DbWeight::get().reads(4_u64)) - .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(d as Weight))) + .saturating_add(T::DbWeight::get().reads(1_u64)) .saturating_add(T::DbWeight::get().writes(3_u64)) } fn reclaim_deposit() -> Weight { @@ -90,20 +90,20 @@ impl WeightInfo for () { .saturating_add(RocksDbWeight::get().reads(6_u64)) .saturating_add(RocksDbWeight::get().writes(3_u64)) } - fn revoke(d: u32, ) -> Weight { + fn revoke() -> Weight { (37_029_000_u64) // Standard Error: 44_000 - .saturating_add((6_325_000_u64).saturating_mul(d as Weight)) + .saturating_add(6_325_000_u64) .saturating_add(RocksDbWeight::get().reads(2_u64)) - .saturating_add(RocksDbWeight::get().reads((1_u64).saturating_mul(d as Weight))) + .saturating_add(RocksDbWeight::get().reads(1_u64)) .saturating_add(RocksDbWeight::get().writes(1_u64)) } - fn remove(d: u32, ) -> Weight { + fn remove() -> Weight { (64_058_000_u64) // Standard Error: 44_000 - .saturating_add((6_317_000_u64).saturating_mul(d as Weight)) + .saturating_add(6_317_000_u64) .saturating_add(RocksDbWeight::get().reads(4_u64)) - .saturating_add(RocksDbWeight::get().reads((1_u64).saturating_mul(d as Weight))) + .saturating_add(RocksDbWeight::get().reads(1_u64)) .saturating_add(RocksDbWeight::get().writes(3_u64)) } fn reclaim_deposit() -> Weight { diff --git a/pallets/attestation/src/lib.rs b/pallets/attestation/src/lib.rs index a1e8aba42..707a508b0 100644 --- a/pallets/attestation/src/lib.rs +++ b/pallets/attestation/src/lib.rs @@ -82,32 +82,39 @@ pub mod mock; #[cfg(feature = "runtime-benchmarks")] pub mod benchmarking; +mod access_control; #[cfg(test)] mod tests; -pub use crate::{attestations::AttestationDetails, default_weights::WeightInfo, pallet::*}; +pub use crate::{ + access_control::AttestationAccessControl, attestations::AttestationDetails, default_weights::WeightInfo, pallet::*, +}; #[frame_support::pallet] pub mod pallet { use super::*; - use ctype::CtypeHashOf; - use delegation::DelegationNodeIdOf; use frame_support::{ + dispatch::{DispatchResult, DispatchResultWithPostInfo}, pallet_prelude::*, traits::{Currency, Get, ReservableCurrency, StorageVersion}, - BoundedVec, }; use frame_system::pallet_prelude::*; + use sp_runtime::DispatchError; + + use ctype::CtypeHashOf; use kilt_support::{deposit::Deposit, traits::CallSources}; /// The current storage version. const STORAGE_VERSION: StorageVersion = StorageVersion::new(1); /// Type of a claim hash. - pub(crate) type ClaimHashOf = ::Hash; + pub type ClaimHashOf = ::Hash; /// Type of an attester identifier. - pub(crate) type AttesterOf = delegation::DelegatorIdOf; + pub(crate) type AttesterOf = ::AttesterId; + + /// Authorization id type + pub(crate) type AuthorizationIdOf = ::AuthorizationId; pub(crate) type AccountIdOf = ::AccountId; @@ -116,7 +123,7 @@ pub mod pallet { pub(crate) type CurrencyOf = ::Currency; #[pallet::config] - pub trait Config: frame_system::Config + ctype::Config + delegation::Config { + pub trait Config: frame_system::Config + ctype::Config { type EnsureOrigin: EnsureOrigin< Success = ::OriginSuccess, ::Origin, @@ -136,6 +143,13 @@ pub mod pallet { /// the same delegation. #[pallet::constant] type MaxDelegatedAttestations: Get; + + type AttesterId: Parameter + MaxEncodedLen; + + type AuthorizationId: Parameter + MaxEncodedLen; + + type AccessControl: Parameter + + AttestationAccessControl, ClaimHashOf>; } #[pallet::pallet] @@ -157,13 +171,9 @@ pub mod pallet { /// /// It maps from a delegation ID to a vector of claim hashes. #[pallet::storage] - #[pallet::getter(fn delegated_attestations)] - pub type DelegatedAttestations = StorageMap< - _, - Blake2_128Concat, - DelegationNodeIdOf, - BoundedVec, ::MaxDelegatedAttestations>, - >; + #[pallet::getter(fn external_attestations)] + pub type ExternalAttestations = + StorageDoubleMap<_, Twox64Concat, AuthorizationIdOf, Blake2_128Concat, ClaimHashOf, bool, ValueQuery>; #[pallet::event] #[pallet::generate_deposit(pub(super) fn deposit_event)] @@ -174,7 +184,7 @@ pub mod pallet { AttesterOf, ClaimHashOf, CtypeHashOf, - Option>, + Option>, ), /// An attestation has been revoked. /// \[account id, claim hash\] @@ -199,15 +209,6 @@ pub mod pallet { /// The attestation CType does not match the CType specified in the /// delegation hierarchy root. CTypeMismatch, - /// The delegation node does not include the permission to create new - /// attestations. Only when the revoker is not the original attester. - DelegationUnauthorizedToAttest, - /// The delegation node has already been revoked. - /// Only when the revoker is not the original attester. - DelegationRevoked, - /// The delegation node owner is different than the attester. - /// Only when the revoker is not the original attester. - NotDelegatedToAttester, /// The call origin is not authorized to change the attestation. Unauthorized, /// The maximum number of delegated attestations has already been @@ -239,12 +240,15 @@ pub mod pallet { /// DelegatedAttestations /// - Writes: Attestations, (DelegatedAttestations) /// # - #[pallet::weight(::WeightInfo::add())] + #[pallet::weight( + ::WeightInfo::add() + .saturating_add(authorization.as_ref().map(|ac| ac.can_attest_weight()).unwrap_or(0)) + )] pub fn add( origin: OriginFor, claim_hash: ClaimHashOf, ctype_hash: CtypeHashOf, - delegation_id: Option>, + authorization: Option, ) -> DispatchResult { let source = ::EnsureOrigin::ensure_origin(origin)?; let payer = source.sender(); @@ -261,34 +265,11 @@ pub mod pallet { ); // Check for validity of the delegation node if specified. - let delegation_record = if let Some(delegation_id) = delegation_id { - let delegation = >::get(delegation_id) - .ok_or(delegation::Error::::DelegationNotFound)?; - - ensure!(!delegation.details.revoked, Error::::DelegationRevoked); - - ensure!(delegation.details.owner == who, Error::::NotDelegatedToAttester); - - ensure!( - (delegation.details.permissions & delegation::Permissions::ATTEST) - == delegation::Permissions::ATTEST, - Error::::DelegationUnauthorizedToAttest - ); - - // Check if the CType of the delegation is matching the CType of the attestation - let root = >::get(delegation.hierarchy_root_id) - .ok_or(delegation::Error::::HierarchyNotFound)?; - ensure!(root.ctype_hash == ctype_hash, Error::::CTypeMismatch); - - // If the attestation is based on a delegation, store separately - let mut delegated_attestations = >::get(delegation_id).unwrap_or_default(); - delegated_attestations - .try_push(claim_hash) - .map_err(|_| Error::::MaxDelegatedAttestationsExceeded)?; - Some((delegation_id, delegated_attestations)) - } else { - None - }; + authorization + .as_ref() + .map(|ac| ac.can_attest(&who, &ctype_hash, &claim_hash)) + .transpose()?; + let authorization_id = authorization.as_ref().map(|ac| ac.authorization_id()); let deposit = Pallet::::reserve_deposit(payer, deposit_amount)?; @@ -296,23 +277,22 @@ pub mod pallet { log::debug!("insert Attestation"); - // write delegation record, if any - if let Some((id, delegated_attestation)) = delegation_record { - >::insert(id, delegated_attestation); - } - - >::insert( + Attestations::::insert( &claim_hash, AttestationDetails { ctype_hash, attester: who.clone(), - delegation_id, + authorization_id: authorization_id.clone(), revoked: false, deposit, }, ); + if let Some(authorization_id) = &authorization_id { + ExternalAttestations::::insert(authorization_id, claim_hash, true); + } + + Self::deposit_event(Event::AttestationCreated(who, claim_hash, ctype_hash, authorization_id)); - Self::deposit_event(Event::AttestationCreated(who, claim_hash, ctype_hash, delegation_id)); Ok(()) } @@ -333,11 +313,14 @@ pub mod pallet { /// - Reads per delegation step P: delegation::Delegations /// - Writes: Attestations, DelegatedAttestations /// # - #[pallet::weight(::WeightInfo::revoke(*max_parent_checks))] + #[pallet::weight( + ::WeightInfo::revoke() + .saturating_add(authorization.as_ref().map(|ac| ac.can_revoke_weight()).unwrap_or(0)) + )] pub fn revoke( origin: OriginFor, claim_hash: ClaimHashOf, - max_parent_checks: u32, + authorization: Option, ) -> DispatchResultWithPostInfo { let source = ::EnsureOrigin::ensure_origin(origin)?; let who = source.subject(); @@ -346,16 +329,20 @@ pub mod pallet { ensure!(!attestation.revoked, Error::::AlreadyRevoked); - let delegation_depth = if attestation.attester != who { - Self::verify_delegated_access(&who, &attestation, max_parent_checks)? - } else { - 0 - }; + if attestation.attester != who { + let attestation_auth_id = attestation.authorization_id.as_ref().ok_or(Error::::Unauthorized)?; + authorization.ok_or(Error::::Unauthorized)?.can_revoke( + &who, + &attestation.ctype_hash, + &claim_hash, + attestation_auth_id, + )?; + } // *** No Fail beyond this point *** log::debug!("revoking Attestation"); - >::insert( + Attestations::::insert( &claim_hash, AttestationDetails { revoked: true, @@ -365,7 +352,7 @@ pub mod pallet { Self::deposit_event(Event::AttestationRevoked(who, claim_hash)); - Ok(Some(::WeightInfo::revoke(delegation_depth)).into()) + Ok(Some(::WeightInfo::revoke()).into()) } /// Remove an attestation. @@ -385,22 +372,29 @@ pub mod pallet { /// - Reads per delegation step P: delegation::Delegations /// - Writes: Attestations, DelegatedAttestations /// # - #[pallet::weight(::WeightInfo::remove(*max_parent_checks))] + #[pallet::weight( + ::WeightInfo::remove() + .saturating_add(authorization.as_ref().map(|ac| ac.can_remove_weight()).unwrap_or(0)) + )] pub fn remove( origin: OriginFor, claim_hash: ClaimHashOf, - max_parent_checks: u32, + authorization: Option, ) -> DispatchResultWithPostInfo { let source = ::EnsureOrigin::ensure_origin(origin)?; let who = source.subject(); let attestation = Attestations::::get(&claim_hash).ok_or(Error::::AttestationNotFound)?; - let delegation_depth = if attestation.attester != who { - Self::verify_delegated_access(&who, &attestation, max_parent_checks)? - } else { - 0 - }; + if attestation.attester != who { + let attestation_auth_id = attestation.authorization_id.as_ref().ok_or(Error::::Unauthorized)?; + authorization.ok_or(Error::::Unauthorized)?.can_remove( + &who, + &attestation.ctype_hash, + &claim_hash, + attestation_auth_id, + )?; + } // *** No Fail beyond this point *** @@ -409,7 +403,7 @@ pub mod pallet { Self::remove_attestation(attestation, claim_hash); Self::deposit_event(Event::AttestationRemoved(who, claim_hash)); - Ok(Some(::WeightInfo::remove(delegation_depth)).into()) + Ok(Some(::WeightInfo::remove()).into()) } /// Reclaim a storage deposit by removing an attestation @@ -440,28 +434,6 @@ pub mod pallet { } impl Pallet { - /// Check the delegation tree if the attester is authorized to access - /// the attestation. - fn verify_delegated_access( - attester: &AttesterOf, - attestation: &AttestationDetails, - max_parent_checks: u32, - ) -> Result { - // if there is no delegation id, access to this attestation wasn't delegated to - // anyone. - let delegation_id = attestation.delegation_id.ok_or(Error::::Unauthorized)?; - ensure!( - max_parent_checks <= T::MaxParentChecks::get(), - delegation::Error::::MaxParentChecksTooLarge - ); - // Check whether the sender of the revocation controls the delegation node and - // that the delegation has not been revoked - let (is_delegating, delegation_depth) = - >::is_delegating(attester, &delegation_id, max_parent_checks)?; - ensure!(is_delegating, Error::::Unauthorized); - Ok(delegation_depth) - } - /// Reserve the deposit and record the deposit on chain. /// /// Fails if the `payer` has a balance less than deposit. @@ -480,12 +452,8 @@ pub mod pallet { fn remove_attestation(attestation: AttestationDetails, claim_hash: ClaimHashOf) { kilt_support::free_deposit::, CurrencyOf>(&attestation.deposit); Attestations::::remove(&claim_hash); - if let Some(delegation_id) = attestation.delegation_id { - DelegatedAttestations::::mutate(&delegation_id, |maybe_attestations| { - if let Some(attestations) = maybe_attestations.as_mut() { - attestations.retain(|&elem| elem != claim_hash); - } - }); + if let Some(authorization_id) = &attestation.authorization_id { + ExternalAttestations::::remove(authorization_id, claim_hash); } } } diff --git a/pallets/attestation/src/mock.rs b/pallets/attestation/src/mock.rs index f4a8ddc84..15d8f8aaf 100644 --- a/pallets/attestation/src/mock.rs +++ b/pallets/attestation/src/mock.rs @@ -23,13 +23,19 @@ //! other tests. Internal functions/structs can only be used in attestation //! tests. +use codec::{Decode, Encode}; +use frame_support::{dispatch::Weight, traits::Get}; +use scale_info::TypeInfo; +use sp_core::H256; +use sp_runtime::DispatchError; + use ctype::CtypeHashOf; -use delegation::DelegationNodeIdOf; -use frame_support::traits::Get; use kilt_support::deposit::Deposit; -use sp_core::H256; -use crate::{AccountIdOf, AttestationDetails, AttesterOf, BalanceOf, ClaimHashOf, Config}; +use crate::{ + pallet::AuthorizationIdOf, AccountIdOf, AttestationAccessControl, AttestationDetails, AttesterOf, BalanceOf, + ClaimHashOf, Config, +}; #[cfg(test)] pub use crate::mock::runtime::*; @@ -37,7 +43,7 @@ pub use crate::mock::runtime::*; pub struct AttestationCreationDetails { pub claim_hash: ClaimHashOf, pub ctype_hash: CtypeHashOf, - pub delegation_id: Option>, + pub authorization_id: Option>, } pub fn generate_base_attestation_creation_details( @@ -47,21 +53,7 @@ pub fn generate_base_attestation_creation_details( AttestationCreationDetails { claim_hash, ctype_hash: attestation.ctype_hash, - delegation_id: attestation.delegation_id, - } -} - -pub struct AttestationRevocationDetails { - pub claim_hash: ClaimHashOf, - pub max_parent_checks: u32, -} - -pub fn generate_base_attestation_revocation_details( - claim_hash: ClaimHashOf, -) -> AttestationRevocationDetails { - AttestationRevocationDetails { - claim_hash, - max_parent_checks: 0u32, + authorization_id: attestation.authorization_id, } } @@ -72,7 +64,7 @@ where { AttestationDetails { attester, - delegation_id: None, + authorization_id: None, ctype_hash: ctype::mock::get_ctype_hash::(true), revoked: false, deposit: Deposit::, BalanceOf> { @@ -82,39 +74,110 @@ where } } +/// Authorize iff the subject of the origin and the provided attester id match. +#[derive(Clone, Debug, Encode, Decode, TypeInfo, PartialEq, Eq)] +#[scale_info(skip_type_params(T))] +pub struct MockAccessControl(pub T::AttesterId); + +impl AttestationAccessControl, ClaimHashOf> + for MockAccessControl +where + T: Config::AttesterId>, +{ + fn can_attest( + &self, + who: &T::AttesterId, + _ctype: &CtypeHashOf, + _claim: &ClaimHashOf, + ) -> Result { + if who == &self.0 { + Ok(0) + } else { + Err(DispatchError::Other("Unauthorized")) + } + } + + fn can_revoke( + &self, + who: &T::AttesterId, + _ctype: &CtypeHashOf, + _claim: &ClaimHashOf, + authorization_id: &T::AuthorizationId, + ) -> Result { + if authorization_id == who { + Ok(0) + } else { + Err(DispatchError::Other("Unauthorized")) + } + } + + fn can_remove( + &self, + who: &T::AttesterId, + _ctype: &CtypeHashOf, + _claim: &ClaimHashOf, + authorization_id: &T::AuthorizationId, + ) -> Result { + if authorization_id == who { + Ok(0) + } else { + Err(DispatchError::Other("Unauthorized")) + } + } + + fn authorization_id(&self) -> T::AuthorizationId { + self.0.clone() + } + + fn can_attest_weight(&self) -> Weight { + 0 + } + fn can_revoke_weight(&self) -> Weight { + 0 + } + fn can_remove_weight(&self) -> Weight { + 0 + } +} + +pub fn insert_attestation(claim_hash: ClaimHashOf, details: AttestationDetails) { + crate::Pallet::::reserve_deposit(details.deposit.owner.clone(), details.deposit.amount) + .expect("Should have balance"); + + crate::Attestations::::insert(&claim_hash, details.clone()); + if let Some(delegation_id) = details.authorization_id.as_ref() { + crate::ExternalAttestations::::insert(delegation_id, claim_hash, true) + } +} + /// Mocks that are only used internally #[cfg(test)] pub(crate) mod runtime { use ctype::CtypeCreatorOf; use frame_support::{parameter_types, weights::constants::RocksDbWeight}; use sp_core::{ed25519, sr25519, Pair}; - use sp_keystore::{testing::KeyStore, KeystoreExt}; use sp_runtime::{ testing::Header, traits::{BlakeTwo256, IdentifyAccount, IdentityLookup, Verify}, - MultiSigner, + MultiSignature, MultiSigner, }; - use std::sync::Arc; - use delegation::{mock::DelegationHierarchyInitialization, DelegationNode}; - use kilt_support::{ - mock::{mock_origin, SubjectId}, - signature::EqualVerify, - }; - use runtime_common::constants::{attestation::ATTESTATION_DEPOSIT, delegation::DELEGATION_DEPOSIT, MILLI_KILT}; + use kilt_support::mock::{mock_origin, SubjectId}; use super::*; - use crate::Pallet; type UncheckedExtrinsic = frame_system::mocking::MockUncheckedExtrinsic; type Block = frame_system::mocking::MockBlock; - type TestCtypeOwner = SubjectId; - type TestCtypeHash = runtime_common::Hash; - type TestDelegationNodeId = runtime_common::Hash; - type TestDelegatorId = SubjectId; - type TestClaimHash = runtime_common::Hash; - type TestBalance = runtime_common::Balance; + pub type Hash = sp_core::H256; + pub type Balance = u128; + pub type Signature = MultiSignature; + pub type AccountPublic = ::Signer; + pub type AccountId = ::AccountId; + + pub const UNIT: Balance = 10u128.pow(15); + pub const MILLI_UNIT: Balance = 10u128.pow(12); + pub const ATTESTATION_DEPOSIT: Balance = 10 * MILLI_UNIT; frame_support::construct_runtime!( pub enum Test where @@ -125,7 +188,6 @@ pub(crate) mod runtime { System: frame_system::{Pallet, Call, Config, Storage, Event}, Attestation: crate::{Pallet, Call, Storage, Event}, Ctype: ctype::{Pallet, Call, Storage, Event}, - Delegation: delegation::{Pallet, Call, Storage, Event}, Balances: pallet_balances::{Pallet, Call, Storage, Event}, MockOrigin: mock_origin::{Pallet, Origin}, } @@ -141,9 +203,9 @@ pub(crate) mod runtime { type Call = Call; type Index = u64; type BlockNumber = u64; - type Hash = runtime_common::Hash; + type Hash = Hash; type Hashing = BlakeTwo256; - type AccountId = <::Signer as IdentifyAccount>::AccountId; + type AccountId = AccountId; type Lookup = IdentityLookup; type Header = Header; type Event = (); @@ -152,7 +214,7 @@ pub(crate) mod runtime { type Version = (); type PalletInfo = PalletInfo; - type AccountData = pallet_balances::AccountData; + type AccountData = pallet_balances::AccountData; type OnNewAccount = (); type OnKilledAccount = (); type BaseCallFilter = frame_support::traits::Everything; @@ -165,13 +227,13 @@ pub(crate) mod runtime { } parameter_types! { - pub const ExistentialDeposit: TestBalance = MILLI_KILT; + pub const ExistentialDeposit: Balance = MILLI_UNIT; pub const MaxLocks: u32 = 50; pub const MaxReserves: u32 = 50; } impl pallet_balances::Config for Test { - type Balance = TestBalance; + type Balance = Balance; type DustRemoval = (); type Event = (); type ExistentialDeposit = ExistentialDeposit; @@ -183,13 +245,13 @@ pub(crate) mod runtime { } parameter_types! { - pub const Fee: TestBalance = 500; + pub const Fee: Balance = 500; } impl ctype::Config for Test { - type CtypeCreatorId = TestCtypeOwner; - type EnsureOrigin = mock_origin::EnsureDoubleOrigin; - type OriginSuccess = mock_origin::DoubleOrigin; + type CtypeCreatorId = SubjectId; + type EnsureOrigin = mock_origin::EnsureDoubleOrigin; + type OriginSuccess = mock_origin::DoubleOrigin; type Event = (); type WeightInfo = (); @@ -198,65 +260,44 @@ pub(crate) mod runtime { type FeeCollector = (); } - parameter_types! { - pub const MaxSignatureByteLength: u16 = 64; - pub const MaxParentChecks: u32 = 5; - pub const MaxRevocations: u32 = 5; - pub const MaxRemovals: u32 = 5; - #[derive(Clone)] - pub const MaxChildren: u32 = 1000; - pub const DelegationDeposit: TestBalance = DELEGATION_DEPOSIT; - } - - impl delegation::Config for Test { - type Signature = (Self::DelegationEntityId, Vec); - type DelegationSignatureVerification = EqualVerify>; - type DelegationEntityId = TestDelegatorId; - type DelegationNodeId = TestDelegationNodeId; - type EnsureOrigin = mock_origin::EnsureDoubleOrigin; - type OriginSuccess = mock_origin::DoubleOrigin; - type Event = (); - type MaxSignatureByteLength = MaxSignatureByteLength; - type MaxParentChecks = MaxParentChecks; - type MaxRevocations = MaxRevocations; - type MaxRemovals = MaxRemovals; - type MaxChildren = MaxChildren; - type WeightInfo = (); - - type Currency = Balances; - type Deposit = DelegationDeposit; - } - impl mock_origin::Config for Test { type Origin = Origin; - type AccountId = runtime_common::AccountId; + type AccountId = AccountId; type SubjectId = SubjectId; } parameter_types! { pub const MaxDelegatedAttestations: u32 = 1000; - pub const Deposit: TestBalance = ATTESTATION_DEPOSIT; + pub const Deposit: Balance = ATTESTATION_DEPOSIT; } impl Config for Test { - type EnsureOrigin = mock_origin::EnsureDoubleOrigin>; - type OriginSuccess = mock_origin::DoubleOrigin>; + type EnsureOrigin = mock_origin::EnsureDoubleOrigin>; + type OriginSuccess = mock_origin::DoubleOrigin>; type Event = (); type WeightInfo = (); type Currency = Balances; type Deposit = Deposit; type MaxDelegatedAttestations = MaxDelegatedAttestations; + type AttesterId = SubjectId; + type AuthorizationId = SubjectId; + type AccessControl = MockAccessControl; } - pub(crate) const ACCOUNT_00: runtime_common::AccountId = runtime_common::AccountId::new([1u8; 32]); - pub(crate) const ACCOUNT_01: runtime_common::AccountId = runtime_common::AccountId::new([2u8; 32]); + pub(crate) const ACCOUNT_00: AccountId = AccountId::new([1u8; 32]); + pub(crate) const ACCOUNT_01: AccountId = AccountId::new([2u8; 32]); pub(crate) const ALICE_SEED: [u8; 32] = [1u8; 32]; pub(crate) const BOB_SEED: [u8; 32] = [2u8; 32]; + pub(crate) const CHARLIE_SEED: [u8; 32] = [3u8; 32]; - const DEFAULT_CLAIM_HASH_SEED: u64 = 1u64; - const ALTERNATIVE_CLAIM_HASH_SEED: u64 = 2u64; + pub const CLAIM_HASH_SEED_01: u64 = 1u64; + pub const CLAIM_HASH_SEED_02: u64 = 2u64; + + pub fn claim_hash_from_seed(seed: u64) -> Hash { + Hash::from_low_u64_be(seed) + } pub fn ed25519_did_from_seed(seed: &[u8; 32]) -> SubjectId { MultiSigner::from(ed25519::Pair::from_seed(seed).public()) @@ -270,44 +311,18 @@ pub(crate) mod runtime { .into() } - pub fn get_claim_hash(default: bool) -> TestClaimHash { - if default { - TestClaimHash::from_low_u64_be(DEFAULT_CLAIM_HASH_SEED) - } else { - TestClaimHash::from_low_u64_be(ALTERNATIVE_CLAIM_HASH_SEED) - } - } - #[derive(Clone, Default)] pub struct ExtBuilder { - delegation_hierarchies: DelegationHierarchyInitialization, - delegations: Vec<(TestDelegationNodeId, DelegationNode)>, - /// initial ctypes & owners - ctypes: Vec<(TestCtypeHash, CtypeCreatorOf)>, + ctypes: Vec<(CtypeHashOf, CtypeCreatorOf)>, /// endowed accounts with balances balances: Vec<(AccountIdOf, BalanceOf)>, - attestations: Vec<(TestClaimHash, AttestationDetails)>, + attestations: Vec<(ClaimHashOf, AttestationDetails)>, } impl ExtBuilder { #[must_use] - pub fn with_delegation_hierarchies( - mut self, - delegation_hierarchies: DelegationHierarchyInitialization, - ) -> Self { - self.delegation_hierarchies = delegation_hierarchies; - self - } - - #[must_use] - pub fn with_delegations(mut self, delegations: Vec<(TestDelegationNodeId, DelegationNode)>) -> Self { - self.delegations = delegations; - self - } - - #[must_use] - pub fn with_ctypes(mut self, ctypes: Vec<(TestCtypeHash, CtypeCreatorOf)>) -> Self { + pub fn with_ctypes(mut self, ctypes: Vec<(CtypeHashOf, CtypeCreatorOf)>) -> Self { self.ctypes = ctypes; self } @@ -319,7 +334,7 @@ pub(crate) mod runtime { } #[must_use] - pub fn with_attestations(mut self, attestations: Vec<(TestClaimHash, AttestationDetails)>) -> Self { + pub fn with_attestations(mut self, attestations: Vec<(ClaimHashOf, AttestationDetails)>) -> Self { self.attestations = attestations; self } @@ -339,20 +354,8 @@ pub(crate) mod runtime { ctype::Ctypes::::insert(ctype.0, ctype.1.clone()); } - delegation::mock::initialize_pallet(self.delegations, self.delegation_hierarchies); - for (claim_hash, details) in self.attestations { - Pallet::::reserve_deposit(details.deposit.owner.clone(), details.deposit.amount) - .expect("Should have balance"); - - crate::Attestations::::insert(&claim_hash, details.clone()); - if let Some(delegation_id) = details.delegation_id.as_ref() { - crate::DelegatedAttestations::::try_mutate(delegation_id, |attestations| { - let attestations = attestations.get_or_insert_with(Default::default); - attestations.try_push(claim_hash) - }) - .expect("Couldn't initialise delegated attestation"); - } + insert_attestation(claim_hash, details); } }); @@ -363,8 +366,8 @@ pub(crate) mod runtime { pub fn build_with_keystore(self) -> sp_io::TestExternalities { let mut ext = self.build(); - let keystore = KeyStore::new(); - ext.register_extension(KeystoreExt(Arc::new(keystore))); + let keystore = sp_keystore::testing::KeyStore::new(); + ext.register_extension(sp_keystore::KeystoreExt(std::sync::Arc::new(keystore))); ext } diff --git a/pallets/attestation/src/tests.rs b/pallets/attestation/src/tests.rs index e0179fb85..0e7794b9e 100644 --- a/pallets/attestation/src/tests.rs +++ b/pallets/attestation/src/tests.rs @@ -16,425 +16,174 @@ // If you feel like getting in touch with us, you can do so at info@botlabs.org +use ctype::mock::get_ctype_hash; use frame_support::{assert_noop, assert_ok}; -use sp_runtime::traits::Zero; +use sp_runtime::{traits::Zero, DispatchError}; -use ctype::mock as ctype_mock; -use delegation::mock::{self as delegation_mock, DELEGATION_ID_SEED_1, DELEGATION_ID_SEED_2}; use kilt_support::mock::mock_origin::DoubleOrigin; use crate::{ self as attestation, mock::{runtime::Balances, *}, - AttesterOf, Config, DelegatedAttestations, + AttestationAccessControl, AttesterOf, Config, }; // ############################################################################# -// submit_attestation_creation_operation +// add #[test] -fn attest_no_delegation_successful() { +fn test_attest_without_authorization() { let attester: AttesterOf = sr25519_did_from_seed(&ALICE_SEED); - let claim_hash = get_claim_hash(true); - let attestation = generate_base_attestation::(attester.clone(), ACCOUNT_00); - - let operation = generate_base_attestation_creation_details(claim_hash, attestation); + let claim_hash = claim_hash_from_seed(CLAIM_HASH_SEED_01); + let ctype_hash = get_ctype_hash::(true); + let authorization_info = None; ExtBuilder::default() - .with_ctypes(vec![(operation.ctype_hash, attester.clone())]) + .with_ctypes(vec![(ctype_hash, attester.clone())]) .with_balances(vec![(ACCOUNT_00, ::Deposit::get() * 100)]) .build() .execute_with(|| { assert_ok!(Attestation::add( DoubleOrigin(ACCOUNT_00, attester.clone()).into(), - operation.claim_hash, - operation.ctype_hash, - operation.delegation_id + claim_hash, + ctype_hash, + authorization_info.clone() )); let stored_attestation = Attestation::attestations(&claim_hash).expect("Attestation should be present on chain."); - assert_eq!(stored_attestation.ctype_hash, operation.ctype_hash); + assert_eq!(stored_attestation.ctype_hash, ctype_hash); assert_eq!(stored_attestation.attester, attester); - assert_eq!(stored_attestation.delegation_id, operation.delegation_id); + assert_eq!( + stored_attestation.authorization_id, + authorization_info.map(|ac| ac.authorization_id()) + ); assert!(!stored_attestation.revoked); }); } #[test] -fn attest_with_delegation_successful() { +fn test_attest_authorized() { let attester: AttesterOf = sr25519_did_from_seed(&ALICE_SEED); - let claim_hash = get_claim_hash(true); - - let hierarchy_root_id = delegation_mock::get_delegation_hierarchy_id::(true); - let hierarchy_details = delegation_mock::generate_base_delegation_hierarchy_details(); - let delegation_id = delegation_mock::delegation_id_from_seed::(DELEGATION_ID_SEED_1); - let mut delegation_node = delegation_mock::generate_base_delegation_node( - hierarchy_root_id, - attester.clone(), - Some(hierarchy_root_id), - ACCOUNT_00, - ); - delegation_node.details.permissions = delegation::Permissions::ATTEST; - let mut attestation = generate_base_attestation::(attester.clone(), ACCOUNT_00); - attestation.delegation_id = Some(delegation_id); - - let operation = generate_base_attestation_creation_details(claim_hash, attestation); + let claim_hash = claim_hash_from_seed(CLAIM_HASH_SEED_01); + let ctype = get_ctype_hash::(true); + let authorization_info = Some(MockAccessControl(attester.clone())); ExtBuilder::default() - .with_ctypes(vec![(operation.ctype_hash, attester.clone())]) - .with_delegation_hierarchies(vec![( - hierarchy_root_id, - hierarchy_details, - attester.clone(), - ACCOUNT_00, - )]) - .with_delegations(vec![(delegation_id, delegation_node)]) + .with_ctypes(vec![(ctype, attester.clone())]) .with_balances(vec![(ACCOUNT_00, ::Deposit::get() * 100)]) .build() .execute_with(|| { assert_ok!(Attestation::add( DoubleOrigin(ACCOUNT_00, attester.clone()).into(), - operation.claim_hash, - operation.ctype_hash, - operation.delegation_id + claim_hash, + ctype, + authorization_info.clone() )); let stored_attestation = Attestation::attestations(&claim_hash).expect("Attestation should be present on chain."); + assert!(Attestation::external_attestations(attester.clone(), claim_hash)); - assert_eq!(stored_attestation.ctype_hash, operation.ctype_hash); + assert_eq!(stored_attestation.ctype_hash, ctype); assert_eq!(stored_attestation.attester, attester); - assert_eq!(stored_attestation.delegation_id, operation.delegation_id); - assert!(!stored_attestation.revoked); - - let delegated_attestations = Attestation::delegated_attestations(&delegation_id) - .expect("Attested delegation should be present on chain."); - - assert_eq!(delegated_attestations, vec![claim_hash]); - }); -} - -#[test] -fn ctype_not_present_attest_error() { - let attester: AttesterOf = sr25519_did_from_seed(&ALICE_SEED); - let claim_hash = get_claim_hash(true); - let attestation = generate_base_attestation::(attester.clone(), ACCOUNT_00); - - let operation = generate_base_attestation_creation_details(claim_hash, attestation); - - ExtBuilder::default() - .with_balances(vec![(ACCOUNT_00, ::Deposit::get() * 100)]) - .build() - .execute_with(|| { - assert_noop!( - Attestation::add( - DoubleOrigin(ACCOUNT_00, attester.clone()).into(), - operation.claim_hash, - operation.ctype_hash, - operation.delegation_id - ), - ctype::Error::::CTypeNotFound - ); - }); -} - -#[test] -fn duplicate_attest_error() { - let attester: AttesterOf = sr25519_did_from_seed(&ALICE_SEED); - let claim_hash = get_claim_hash(true); - - let attestation = generate_base_attestation::(attester.clone(), ACCOUNT_00); - let operation = generate_base_attestation_creation_details(claim_hash, attestation.clone()); - - ExtBuilder::default() - .with_balances(vec![(ACCOUNT_00, ::Deposit::get() * 100)]) - .with_ctypes(vec![(operation.ctype_hash, attester.clone())]) - .with_attestations(vec![(claim_hash, attestation)]) - .build() - .execute_with(|| { - assert_noop!( - Attestation::add( - DoubleOrigin(ACCOUNT_00, attester.clone()).into(), - operation.claim_hash, - operation.ctype_hash, - operation.delegation_id - ), - attestation::Error::::AlreadyAttested - ); - }); -} - -#[test] -fn delegation_not_found_attest_error() { - let attester: AttesterOf = sr25519_did_from_seed(&ALICE_SEED); - let claim_hash = get_claim_hash(true); - let delegation_id = delegation_mock::delegation_id_from_seed::(DELEGATION_ID_SEED_1); - let mut attestation = generate_base_attestation::(attester.clone(), ACCOUNT_00); - attestation.delegation_id = Some(delegation_id); - - let operation = generate_base_attestation_creation_details(claim_hash, attestation); - - ExtBuilder::default() - .with_balances(vec![(ACCOUNT_00, ::Deposit::get() * 100)]) - .with_ctypes(vec![(operation.ctype_hash, attester.clone())]) - .build() - .execute_with(|| { - assert_noop!( - Attestation::add( - DoubleOrigin(ACCOUNT_00, attester.clone()).into(), - operation.claim_hash, - operation.ctype_hash, - operation.delegation_id - ), - delegation::Error::::DelegationNotFound - ); - }); -} - -#[test] -fn delegation_revoked_attest_error() { - let attester: AttesterOf = sr25519_did_from_seed(&ALICE_SEED); - let claim_hash = get_claim_hash(true); - let hierarchy_root_id = delegation_mock::get_delegation_hierarchy_id::(true); - let hierarchy_details = delegation_mock::generate_base_delegation_hierarchy_details::(); - // Delegation node does not have permissions to attest. - let delegation_id = delegation_mock::delegation_id_from_seed::(DELEGATION_ID_SEED_1); - let mut delegation_node = delegation_mock::generate_base_delegation_node( - hierarchy_root_id, - attester.clone(), - Some(hierarchy_root_id), - ACCOUNT_00, - ); - delegation_node.details.permissions = delegation::Permissions::ATTEST; - delegation_node.details.revoked = true; - let mut attestation = generate_base_attestation::(attester.clone(), ACCOUNT_00); - attestation.delegation_id = Some(delegation_id); - - let operation = generate_base_attestation_creation_details(claim_hash, attestation); - - ExtBuilder::default() - .with_balances(vec![(ACCOUNT_00, ::Deposit::get() * 100)]) - .with_ctypes(vec![(operation.ctype_hash, attester.clone())]) - .with_delegation_hierarchies(vec![( - hierarchy_root_id, - hierarchy_details, - attester.clone(), - ACCOUNT_00, - )]) - .with_delegations(vec![(delegation_id, delegation_node)]) - .build() - .execute_with(|| { - assert_noop!( - Attestation::add( - DoubleOrigin(ACCOUNT_00, attester.clone()).into(), - operation.claim_hash, - operation.ctype_hash, - operation.delegation_id - ), - attestation::Error::::DelegationRevoked - ); - }); -} - -#[test] -fn not_delegation_owner_attest_error() { - let attester: AttesterOf = sr25519_did_from_seed(&ALICE_SEED); - let alternative_owner = sr25519_did_from_seed(&BOB_SEED); - - let claim_hash = get_claim_hash(true); - let hierarchy_root_id = delegation_mock::get_delegation_hierarchy_id::(true); - let hierarchy_details = delegation_mock::generate_base_delegation_hierarchy_details::(); - let delegation_id = delegation_mock::delegation_id_from_seed::(DELEGATION_ID_SEED_1); - let mut delegation_node = delegation_mock::generate_base_delegation_node::( - hierarchy_root_id, - alternative_owner, - Some(hierarchy_root_id), - ACCOUNT_00, - ); - delegation_node.details.permissions = delegation::Permissions::ATTEST; - let mut attestation = generate_base_attestation::(attester.clone(), ACCOUNT_00); - attestation.delegation_id = Some(delegation_id); - - let operation = generate_base_attestation_creation_details(claim_hash, attestation); - - ExtBuilder::default() - .with_balances(vec![(ACCOUNT_00, ::Deposit::get() * 100)]) - .with_ctypes(vec![(operation.ctype_hash, attester.clone())]) - .with_delegation_hierarchies(vec![( - hierarchy_root_id, - hierarchy_details, - attester.clone(), - ACCOUNT_00, - )]) - .with_delegations(vec![(delegation_id, delegation_node)]) - .with_balances(vec![(ACCOUNT_00, ::Deposit::get() * 100)]) - .build() - .execute_with(|| { - assert_noop!( - Attestation::add( - DoubleOrigin(ACCOUNT_00, attester.clone()).into(), - operation.claim_hash, - operation.ctype_hash, - operation.delegation_id - ), - attestation::Error::::NotDelegatedToAttester + assert_eq!( + stored_attestation.authorization_id, + authorization_info.map(|ac| ac.authorization_id()) ); + assert!(!stored_attestation.revoked); }); } #[test] -fn unauthorised_permissions_attest_error() { +fn test_attest_unauthorized() { let attester: AttesterOf = sr25519_did_from_seed(&ALICE_SEED); - let claim_hash = get_claim_hash(true); - let hierarchy_root_id = delegation_mock::get_delegation_hierarchy_id::(true); - let hierarchy_details = delegation_mock::generate_base_delegation_hierarchy_details::(); - // Delegation node does not have permissions to attest. - let delegation_id = delegation_mock::delegation_id_from_seed::(DELEGATION_ID_SEED_1); - let delegation_node = delegation_mock::generate_base_delegation_node( - hierarchy_root_id, - attester.clone(), - Some(hierarchy_root_id), - ACCOUNT_00, - ); - let mut attestation = generate_base_attestation::(attester.clone(), ACCOUNT_00); - attestation.delegation_id = Some(delegation_id); - - let operation = generate_base_attestation_creation_details(claim_hash, attestation); + let bob: AttesterOf = sr25519_did_from_seed(&BOB_SEED); + let claim_hash = claim_hash_from_seed(CLAIM_HASH_SEED_01); + let ctype = get_ctype_hash::(true); + let authorization_info = Some(MockAccessControl(bob)); ExtBuilder::default() + .with_ctypes(vec![(ctype, attester.clone())]) .with_balances(vec![(ACCOUNT_00, ::Deposit::get() * 100)]) - .with_ctypes(vec![(operation.ctype_hash, attester.clone())]) - .with_delegation_hierarchies(vec![( - hierarchy_root_id, - hierarchy_details, - attester.clone(), - ACCOUNT_00, - )]) - .with_delegations(vec![(delegation_id, delegation_node)]) .build() .execute_with(|| { - assert_noop!( + assert_eq!( Attestation::add( DoubleOrigin(ACCOUNT_00, attester.clone()).into(), - operation.claim_hash, - operation.ctype_hash, - operation.delegation_id + claim_hash, + ctype, + authorization_info ), - attestation::Error::::DelegationUnauthorizedToAttest + Err(DispatchError::Other("Unauthorized")) ); }); } #[test] -fn root_not_present_attest_error() { +fn test_attest_ctype_not_found() { let attester: AttesterOf = sr25519_did_from_seed(&ALICE_SEED); - let claim_hash = get_claim_hash(true); - let hierarchy_root_id = delegation_mock::get_delegation_hierarchy_id::(true); - let hierarchy_details = delegation_mock::generate_base_delegation_hierarchy_details::(); - let alternative_hierarchy_root_id = delegation_mock::get_delegation_hierarchy_id::(false); - let delegation_id = delegation_mock::delegation_id_from_seed::(DELEGATION_ID_SEED_1); - let mut delegation_node = delegation_mock::generate_base_delegation_node( - hierarchy_root_id, - attester.clone(), - Some(alternative_hierarchy_root_id), - ACCOUNT_00, - ); - delegation_node.details.permissions = delegation::Permissions::ATTEST; - let mut attestation = generate_base_attestation::(attester.clone(), ACCOUNT_00); - attestation.delegation_id = Some(delegation_id); - - let operation = generate_base_attestation_creation_details(claim_hash, attestation); + let claim_hash = claim_hash_from_seed(CLAIM_HASH_SEED_01); + let ctype_hash = get_ctype_hash::(true); ExtBuilder::default() .with_balances(vec![(ACCOUNT_00, ::Deposit::get() * 100)]) - .with_ctypes(vec![(operation.ctype_hash, attester.clone())]) - .with_delegation_hierarchies(vec![( - alternative_hierarchy_root_id, - hierarchy_details, - attester.clone(), - ACCOUNT_00, - )]) - .with_delegations(vec![(delegation_id, delegation_node)]) .build() .execute_with(|| { assert_noop!( Attestation::add( DoubleOrigin(ACCOUNT_00, attester.clone()).into(), - operation.claim_hash, - operation.ctype_hash, - operation.delegation_id + claim_hash, + ctype_hash, + None ), - delegation::Error::::HierarchyNotFound + ctype::Error::::CTypeNotFound ); }); } #[test] -fn root_ctype_mismatch_attest_error() { +fn test_attest_already_exists() { let attester: AttesterOf = sr25519_did_from_seed(&ALICE_SEED); - let claim_hash = get_claim_hash(true); - let alternative_ctype_hash = ctype_mock::get_ctype_hash::(false); - let hierarchy_root_id = delegation_mock::get_delegation_hierarchy_id::(true); - let mut hierarchy_details = delegation_mock::generate_base_delegation_hierarchy_details::(); - hierarchy_details.ctype_hash = alternative_ctype_hash; - let delegation_id = delegation_mock::delegation_id_from_seed::(DELEGATION_ID_SEED_1); - let mut delegation_node = delegation_mock::generate_base_delegation_node( - hierarchy_root_id, - attester.clone(), - Some(hierarchy_root_id), - ACCOUNT_00, - ); - delegation_node.details.permissions = delegation::Permissions::ATTEST; - let mut attestation = generate_base_attestation::(attester.clone(), ACCOUNT_00); - attestation.delegation_id = Some(delegation_id); - - let operation = generate_base_attestation_creation_details(claim_hash, attestation); + let claim_hash = claim_hash_from_seed(CLAIM_HASH_SEED_01); + let attestation = generate_base_attestation::(attester.clone(), ACCOUNT_00); ExtBuilder::default() .with_balances(vec![(ACCOUNT_00, ::Deposit::get() * 100)]) - .with_ctypes(vec![(operation.ctype_hash, attester.clone())]) - .with_delegation_hierarchies(vec![( - hierarchy_root_id, - hierarchy_details, - attester.clone(), - ACCOUNT_00, - )]) - .with_delegations(vec![(delegation_id, delegation_node)]) + .with_ctypes(vec![(attestation.ctype_hash, attester.clone())]) + .with_attestations(vec![(claim_hash, attestation.clone())]) .build() .execute_with(|| { assert_noop!( Attestation::add( DoubleOrigin(ACCOUNT_00, attester.clone()).into(), - operation.claim_hash, - operation.ctype_hash, - operation.delegation_id + claim_hash, + attestation.ctype_hash, + None ), - attestation::Error::::CTypeMismatch + attestation::Error::::AlreadyAttested ); }); } // ############################################################################# -// submit_attestation_revocation_operation +// revoke #[test] -fn revoke_and_remove_direct_successful() { +fn test_revoke_remove() { let revoker: AttesterOf = sr25519_did_from_seed(&ALICE_SEED); - let claim_hash = get_claim_hash(true); + let claim_hash = claim_hash_from_seed(CLAIM_HASH_SEED_01); let attestation = generate_base_attestation::(revoker.clone(), ACCOUNT_00); - let operation = generate_base_attestation_revocation_details::(claim_hash); - ExtBuilder::default() .with_balances(vec![(ACCOUNT_00, ::Deposit::get() * 100)]) .with_ctypes(vec![(attestation.ctype_hash, revoker.clone())]) - .with_attestations(vec![(operation.claim_hash, attestation)]) + .with_attestations(vec![(claim_hash, attestation)]) .build() .execute_with(|| { assert_ok!(Attestation::revoke( DoubleOrigin(ACCOUNT_00, revoker.clone()).into(), - operation.claim_hash, - operation.max_parent_checks + claim_hash, + None )); let stored_attestation = Attestation::attestations(claim_hash).expect("Attestation should be present on chain."); @@ -444,8 +193,8 @@ fn revoke_and_remove_direct_successful() { assert_ok!(Attestation::remove( DoubleOrigin(ACCOUNT_00, revoker.clone()).into(), - operation.claim_hash, - operation.max_parent_checks + claim_hash, + None )); assert!(Attestation::attestations(claim_hash).is_none()); assert!(Balances::reserved_balance(ACCOUNT_00).is_zero()); @@ -453,249 +202,65 @@ fn revoke_and_remove_direct_successful() { } #[test] -fn revoke_with_delegation_successful() { - let revoker: AttesterOf = sr25519_did_from_seed(&ALICE_SEED); - let attestation_owner: AttesterOf = sr25519_did_from_seed(&BOB_SEED); - let claim_hash = get_claim_hash(true); - - let hierarchy_root_id = delegation_mock::get_delegation_hierarchy_id::(true); - let hierarchy_details = delegation_mock::generate_base_delegation_hierarchy_details::(); - let delegation_id = delegation_mock::delegation_id_from_seed::(DELEGATION_ID_SEED_1); - let mut delegation_node = delegation_mock::generate_base_delegation_node( - hierarchy_root_id, - revoker.clone(), - Some(hierarchy_root_id), - ACCOUNT_00, - ); - delegation_node.details.permissions = delegation::Permissions::ATTEST; - // Attestation owned by a different user, but delegation owned by the user - // submitting the operation. - let mut attestation = generate_base_attestation::(attestation_owner, ACCOUNT_00); - attestation.delegation_id = Some(delegation_id); - - let mut operation = generate_base_attestation_revocation_details::(claim_hash); - // Set to 0 as we only need to check the delegation node itself and no parent. - operation.max_parent_checks = 0u32; - - ExtBuilder::default() - .with_balances(vec![ - (ACCOUNT_00, ::Deposit::get() * 100), - (ACCOUNT_01, ::Deposit::get() * 100), - ]) - .with_ctypes(vec![(attestation.ctype_hash, revoker.clone())]) - .with_delegation_hierarchies(vec![( - hierarchy_root_id, - hierarchy_details, - revoker.clone(), - ACCOUNT_01, - )]) - .with_delegations(vec![(delegation_id, delegation_node)]) - .with_attestations(vec![(operation.claim_hash, attestation)]) - .build() - .execute_with(|| { - assert_ok!(Attestation::revoke( - DoubleOrigin(ACCOUNT_00, revoker.clone()).into(), - operation.claim_hash, - operation.max_parent_checks - )); - let stored_attestation = - Attestation::attestations(operation.claim_hash).expect("Attestation should be present on chain."); - - assert!(stored_attestation.revoked); - }); -} - -#[test] -fn revoke_with_parent_delegation_successful() { - let revoker: AttesterOf = sr25519_did_from_seed(&ALICE_SEED); - let attestation_owner: AttesterOf = sr25519_did_from_seed(&BOB_SEED); - let claim_hash = get_claim_hash(true); - - let hierarchy_root_id = delegation_mock::get_delegation_hierarchy_id::(true); - let hierarchy_details = delegation_mock::generate_base_delegation_hierarchy_details::(); - let parent_id = delegation_mock::delegation_id_from_seed::(DELEGATION_ID_SEED_1); - let mut parent_node = delegation_mock::generate_base_delegation_node( - hierarchy_root_id, - revoker.clone(), - Some(hierarchy_root_id), - ACCOUNT_00, - ); - parent_node.details.permissions = delegation::Permissions::ATTEST; - let delegation_id = delegation_mock::delegation_id_from_seed::(DELEGATION_ID_SEED_2); - let delegation_node = delegation_mock::generate_base_delegation_node( - hierarchy_root_id, - attestation_owner.clone(), - Some(parent_id), - ACCOUNT_00, - ); - let mut attestation = generate_base_attestation::(attestation_owner, ACCOUNT_00); - attestation.delegation_id = Some(delegation_id); - - let mut operation = generate_base_attestation_revocation_details::(claim_hash); - // Set to 1 as the delegation referenced in the attestation is the child of the - // node we want to use - operation.max_parent_checks = 1u32; - - ExtBuilder::default() - .with_balances(vec![ - (ACCOUNT_00, ::Deposit::get() * 100), - (ACCOUNT_01, ::Deposit::get() * 100), - ]) - .with_ctypes(vec![(attestation.ctype_hash, revoker.clone())]) - .with_delegation_hierarchies(vec![( - hierarchy_root_id, - hierarchy_details, - revoker.clone(), - ACCOUNT_00, - )]) - .with_delegations(vec![(parent_id, parent_node), (delegation_id, delegation_node)]) - .with_attestations(vec![(operation.claim_hash, attestation)]) - .build() - .execute_with(|| { - assert_ok!(Attestation::revoke( - DoubleOrigin(ACCOUNT_00, revoker.clone()).into(), - operation.claim_hash, - operation.max_parent_checks - )); - let stored_attestation = - Attestation::attestations(claim_hash).expect("Attestation should be present on chain."); - - assert!(stored_attestation.revoked); - }); -} - -#[test] -fn revoke_parent_delegation_no_attestation_permissions_successful() { - let revoker: AttesterOf = sr25519_did_from_seed(&ALICE_SEED); - let attestation_owner: AttesterOf = sr25519_did_from_seed(&BOB_SEED); - let claim_hash = get_claim_hash(true); - - let hierarchy_root_id = delegation_mock::get_delegation_hierarchy_id::(true); - let hierarchy_details = delegation_mock::generate_base_delegation_hierarchy_details::(); - let parent_id = delegation_mock::delegation_id_from_seed::(DELEGATION_ID_SEED_1); - let mut parent_node = delegation_mock::generate_base_delegation_node( - hierarchy_root_id, - revoker.clone(), - Some(hierarchy_root_id), - ACCOUNT_00, - ); - parent_node.details.permissions = delegation::Permissions::DELEGATE; - - let delegation_id = delegation_mock::delegation_id_from_seed::(DELEGATION_ID_SEED_2); - let delegation_node = delegation_mock::generate_base_delegation_node( - hierarchy_root_id, - attestation_owner.clone(), - Some(parent_id), - ACCOUNT_00, - ); - - let mut attestation = generate_base_attestation::(attestation_owner, ACCOUNT_00); - attestation.delegation_id = Some(delegation_id); - - let mut operation = generate_base_attestation_revocation_details::(claim_hash); - // Set to 1 as the delegation referenced in the attestation is the child of the - // node we want to use - operation.max_parent_checks = 1u32; +fn test_authorized_revoke() { + let attester: AttesterOf = sr25519_did_from_seed(&ALICE_SEED); + let revoker: AttesterOf = sr25519_did_from_seed(&BOB_SEED); + let claim_hash = claim_hash_from_seed(CLAIM_HASH_SEED_01); + let authorization_info = Some(MockAccessControl(revoker.clone())); + let mut attestation = generate_base_attestation::(attester.clone(), ACCOUNT_00); + attestation.authorization_id = Some(revoker.clone()); ExtBuilder::default() - .with_balances(vec![ - (ACCOUNT_00, ::Deposit::get() * 100), - (ACCOUNT_01, ::Deposit::get() * 100), - ]) - .with_ctypes(vec![(attestation.ctype_hash, revoker.clone())]) - .with_delegation_hierarchies(vec![( - hierarchy_root_id, - hierarchy_details, - revoker.clone(), - ACCOUNT_00, - )]) - .with_delegations(vec![(parent_id, parent_node), (delegation_id, delegation_node)]) - .with_attestations(vec![(operation.claim_hash, attestation)]) + .with_balances(vec![(ACCOUNT_00, ::Deposit::get() * 100)]) + .with_ctypes(vec![(attestation.ctype_hash, attester)]) + .with_attestations(vec![(claim_hash, attestation)]) .build() .execute_with(|| { assert_ok!(Attestation::revoke( DoubleOrigin(ACCOUNT_00, revoker.clone()).into(), - operation.claim_hash, - operation.max_parent_checks + claim_hash, + authorization_info )); let stored_attestation = Attestation::attestations(claim_hash).expect("Attestation should be present on chain."); + assert!(Attestation::external_attestations(revoker.clone(), claim_hash)); assert!(stored_attestation.revoked); + assert_eq!(Balances::reserved_balance(ACCOUNT_00), ::Deposit::get()); }); } #[test] -fn revoke_parent_delegation_with_direct_delegation_revoked_successful() { - let revoker: AttesterOf = sr25519_did_from_seed(&ALICE_SEED); - let attestation_owner: AttesterOf = sr25519_did_from_seed(&BOB_SEED); - let claim_hash = get_claim_hash(true); - - let hierarchy_root_id = delegation_mock::get_delegation_hierarchy_id::(true); - let hierarchy_details = delegation_mock::generate_base_delegation_hierarchy_details::(); - let parent_id = delegation_mock::delegation_id_from_seed::(DELEGATION_ID_SEED_1); - let mut parent_node = delegation_mock::generate_base_delegation_node( - hierarchy_root_id, - revoker.clone(), - Some(hierarchy_root_id), - ACCOUNT_00, - ); - parent_node.details.permissions = delegation::Permissions::ATTEST; - - let delegation_id = delegation_mock::delegation_id_from_seed::(DELEGATION_ID_SEED_2); - let mut delegation_node = delegation_mock::generate_base_delegation_node( - hierarchy_root_id, - attestation_owner.clone(), - Some(parent_id), - ACCOUNT_00, - ); - - delegation_node.details.revoked = true; - let mut attestation = generate_base_attestation::(attestation_owner, ACCOUNT_00); - attestation.delegation_id = Some(delegation_id); +fn test_unauthorized_revoke() { + let attester: AttesterOf = sr25519_did_from_seed(&ALICE_SEED); + let revoker: AttesterOf = sr25519_did_from_seed(&BOB_SEED); + let evil: AttesterOf = sr25519_did_from_seed(&CHARLIE_SEED); - let mut operation = generate_base_attestation_revocation_details::(claim_hash); - // Set to 1 as the delegation referenced in the attestation is the child of the - // node we want to use - operation.max_parent_checks = 1u32; + let claim_hash = claim_hash_from_seed(CLAIM_HASH_SEED_01); + let authorization_info = Some(MockAccessControl(revoker.clone())); + let mut attestation = generate_base_attestation::(attester.clone(), ACCOUNT_00); + attestation.authorization_id = Some(revoker); ExtBuilder::default() - .with_balances(vec![ - (ACCOUNT_00, ::Deposit::get() * 100), - (ACCOUNT_01, ::Deposit::get() * 100), - ]) - .with_ctypes(vec![(attestation.ctype_hash, revoker.clone())]) - .with_delegation_hierarchies(vec![( - hierarchy_root_id, - hierarchy_details, - revoker.clone(), - ACCOUNT_01, - )]) - .with_delegations(vec![(parent_id, parent_node), (delegation_id, delegation_node)]) - .with_attestations(vec![(operation.claim_hash, attestation)]) + .with_balances(vec![(ACCOUNT_00, ::Deposit::get() * 100)]) + .with_ctypes(vec![(attestation.ctype_hash, attester)]) + .with_attestations(vec![(claim_hash, attestation)]) .build() .execute_with(|| { - assert_ok!(Attestation::revoke( - DoubleOrigin(ACCOUNT_00, revoker.clone()).into(), - operation.claim_hash, - operation.max_parent_checks - )); - let stored_attestation = - Attestation::attestations(claim_hash).expect("Attestation should be present on chain."); - - assert!(stored_attestation.revoked); + assert_noop!( + Attestation::revoke(DoubleOrigin(ACCOUNT_00, evil).into(), claim_hash, authorization_info), + DispatchError::Other("Unauthorized") + ); }); } #[test] -fn attestation_not_present_revoke_error() { +fn test_revoke_not_found() { let revoker: AttesterOf = sr25519_did_from_seed(&ALICE_SEED); - let claim_hash = get_claim_hash(true); - + let claim_hash = claim_hash_from_seed(CLAIM_HASH_SEED_01); + let authorization_info = Some(MockAccessControl(revoker.clone())); let attestation = generate_base_attestation::(revoker.clone(), ACCOUNT_00); - let operation = generate_base_attestation_revocation_details::(claim_hash); - ExtBuilder::default() .with_balances(vec![(ACCOUNT_00, ::Deposit::get() * 100)]) .with_ctypes(vec![(attestation.ctype_hash, revoker.clone())]) @@ -704,8 +269,8 @@ fn attestation_not_present_revoke_error() { assert_noop!( Attestation::revoke( DoubleOrigin(ACCOUNT_00, revoker.clone()).into(), - operation.claim_hash, - operation.max_parent_checks + claim_hash, + authorization_info ), attestation::Error::::AttestationNotFound ); @@ -713,449 +278,206 @@ fn attestation_not_present_revoke_error() { } #[test] -fn already_revoked_revoke_error() { +fn test_already_revoked() { let revoker: AttesterOf = sr25519_did_from_seed(&ALICE_SEED); - let claim_hash = get_claim_hash(true); + let claim_hash = claim_hash_from_seed(CLAIM_HASH_SEED_01); + let authorization_info = Some(MockAccessControl(revoker.clone())); // Attestation already revoked let mut attestation = generate_base_attestation::(revoker.clone(), ACCOUNT_00); attestation.revoked = true; - let operation = generate_base_attestation_revocation_details::(claim_hash); - ExtBuilder::default() .with_balances(vec![(ACCOUNT_00, ::Deposit::get() * 100)]) .with_ctypes(vec![(attestation.ctype_hash, revoker.clone())]) - .with_attestations(vec![(operation.claim_hash, attestation)]) + .with_attestations(vec![(claim_hash, attestation)]) .build() .execute_with(|| { assert_noop!( Attestation::revoke( DoubleOrigin(ACCOUNT_00, revoker.clone()).into(), - operation.claim_hash, - operation.max_parent_checks + claim_hash, + authorization_info ), attestation::Error::::AlreadyRevoked ); }); } -#[test] -fn unauthorised_attestation_revoke_error() { - let revoker: AttesterOf = sr25519_did_from_seed(&ALICE_SEED); - let attestation_owner: AttesterOf = sr25519_did_from_seed(&BOB_SEED); - let claim_hash = get_claim_hash(true); - - // Attestation owned by a different user - let attestation = generate_base_attestation::(attestation_owner, ACCOUNT_00); - - let operation = generate_base_attestation_revocation_details::(claim_hash); - - ExtBuilder::default() - .with_balances(vec![ - (ACCOUNT_00, ::Deposit::get() * 100), - (ACCOUNT_01, ::Deposit::get() * 100), - ]) - .with_ctypes(vec![(attestation.ctype_hash, revoker.clone())]) - .with_attestations(vec![(operation.claim_hash, attestation)]) - .build() - .execute_with(|| { - assert_noop!( - Attestation::revoke( - DoubleOrigin(ACCOUNT_00, revoker.clone()).into(), - operation.claim_hash, - operation.max_parent_checks - ), - attestation::Error::::Unauthorized - ); - }); -} - -#[test] -fn max_parent_lookups_revoke_error() { - let revoker: AttesterOf = sr25519_did_from_seed(&ALICE_SEED); - let attestation_owner: AttesterOf = sr25519_did_from_seed(&BOB_SEED); - let claim_hash = get_claim_hash(true); - - let hierarchy_root_id = delegation_mock::get_delegation_hierarchy_id::(true); - let hierarchy_details = delegation_mock::generate_base_delegation_hierarchy_details::(); - let parent_id = delegation_mock::delegation_id_from_seed::(DELEGATION_ID_SEED_1); - let parent_node = delegation_mock::generate_base_delegation_node( - hierarchy_root_id, - revoker.clone(), - Some(hierarchy_root_id), - ACCOUNT_00, - ); - let delegation_id = delegation_mock::delegation_id_from_seed::(DELEGATION_ID_SEED_2); - let mut delegation_node = delegation_mock::generate_base_delegation_node( - hierarchy_root_id, - attestation_owner.clone(), - Some(parent_id), - ACCOUNT_00, - ); - - delegation_node.details.permissions = delegation::Permissions::ATTEST; - let mut attestation = generate_base_attestation::(attestation_owner, ACCOUNT_00); - attestation.delegation_id = Some(delegation_id); - - let mut operation = generate_base_attestation_revocation_details::(claim_hash); - operation.max_parent_checks = 0u32; - - ExtBuilder::default() - .with_balances(vec![ - (ACCOUNT_00, ::Deposit::get() * 100), - (ACCOUNT_01, ::Deposit::get() * 100), - ]) - .with_ctypes(vec![(attestation.ctype_hash, revoker.clone())]) - .with_delegation_hierarchies(vec![( - hierarchy_root_id, - hierarchy_details, - revoker.clone(), - ACCOUNT_00, - )]) - .with_delegations(vec![(parent_id, parent_node), (delegation_id, delegation_node)]) - .with_attestations(vec![(operation.claim_hash, attestation)]) - .build() - .execute_with(|| { - assert_noop!( - Attestation::revoke( - DoubleOrigin(ACCOUNT_00, revoker.clone()).into(), - operation.claim_hash, - operation.max_parent_checks - ), - delegation::Error::::MaxSearchDepthReached - ); - }); -} +// ############################################################################# +// remove attestation #[test] -fn revoked_delegation_revoke_error() { - let revoker: AttesterOf = sr25519_did_from_seed(&ALICE_SEED); - let attestation_owner: AttesterOf = sr25519_did_from_seed(&BOB_SEED); - let claim_hash = get_claim_hash(true); - - let hierarchy_root_id = delegation_mock::get_delegation_hierarchy_id::(true); - let hierarchy_details = delegation_mock::generate_base_delegation_hierarchy_details::(); - let delegation_id = delegation_mock::delegation_id_from_seed::(DELEGATION_ID_SEED_1); - let mut delegation_node = delegation_mock::generate_base_delegation_node( - hierarchy_root_id, - revoker.clone(), - Some(hierarchy_root_id), - ACCOUNT_00, - ); - delegation_node.details.permissions = delegation::Permissions::ATTEST; - delegation_node.details.revoked = true; - let mut attestation = generate_base_attestation::(attestation_owner, ACCOUNT_00); - attestation.delegation_id = Some(delegation_id); - - let operation = generate_base_attestation_revocation_details::(claim_hash); +fn test_remove() { + let attester: AttesterOf = sr25519_did_from_seed(&ALICE_SEED); + let claim_hash = claim_hash_from_seed(CLAIM_HASH_SEED_01); + let attestation = generate_base_attestation::(attester.clone(), ACCOUNT_00); + let authorization_info = None; ExtBuilder::default() - .with_balances(vec![ - (ACCOUNT_00, ::Deposit::get() * 100), - (ACCOUNT_01, ::Deposit::get() * 100), - ]) - .with_ctypes(vec![(attestation.ctype_hash, revoker.clone())]) - .with_delegation_hierarchies(vec![( - hierarchy_root_id, - hierarchy_details, - revoker.clone(), - ACCOUNT_00, - )]) - .with_delegations(vec![(delegation_id, delegation_node)]) - .with_attestations(vec![(operation.claim_hash, attestation)]) + .with_balances(vec![(ACCOUNT_00, ::Deposit::get() * 100)]) + .with_ctypes(vec![(attestation.ctype_hash, attester.clone())]) + .with_attestations(vec![(claim_hash, attestation)]) .build() .execute_with(|| { - assert_noop!( - Attestation::revoke( - DoubleOrigin(ACCOUNT_00, revoker.clone()).into(), - operation.claim_hash, - operation.max_parent_checks - ), - attestation::Error::::Unauthorized - ); + assert_ok!(Attestation::remove( + DoubleOrigin(ACCOUNT_00, attester.clone()).into(), + claim_hash, + authorization_info + )); + assert!(Attestation::attestations(claim_hash).is_none()); }); } -// ############################################################################# -// remove attestation - #[test] -fn subject_remove_direct_successful() { - let revoker: AttesterOf = sr25519_did_from_seed(&ALICE_SEED); - let claim_hash = get_claim_hash(true); - let attestation = generate_base_attestation::(revoker.clone(), ACCOUNT_00); - - let operation = generate_base_attestation_revocation_details::(claim_hash); +fn test_remove_authorized() { + let attester: AttesterOf = sr25519_did_from_seed(&ALICE_SEED); + let revoker: AttesterOf = sr25519_did_from_seed(&BOB_SEED); + let claim_hash = claim_hash_from_seed(CLAIM_HASH_SEED_01); + let mut attestation = generate_base_attestation::(attester, ACCOUNT_00); + attestation.authorization_id = Some(revoker.clone()); + let authorization_info = Some(MockAccessControl(revoker.clone())); ExtBuilder::default() .with_balances(vec![(ACCOUNT_00, ::Deposit::get() * 100)]) .with_ctypes(vec![(attestation.ctype_hash, revoker.clone())]) - .with_attestations(vec![(operation.claim_hash, attestation)]) + .with_attestations(vec![(claim_hash, attestation)]) .build() .execute_with(|| { assert_ok!(Attestation::remove( DoubleOrigin(ACCOUNT_00, revoker.clone()).into(), - operation.claim_hash, - operation.max_parent_checks + claim_hash, + authorization_info )); - assert!(Attestation::attestations(claim_hash).is_none()) + assert!(Attestation::attestations(claim_hash).is_none()); + assert!(!Attestation::external_attestations(revoker.clone(), claim_hash)); }); } #[test] -fn reclaim_deposit() { - let deposit_owner: AttesterOf = sr25519_did_from_seed(&ALICE_SEED); - let attester: AttesterOf = sr25519_did_from_seed(&BOB_SEED); - let claim_hash = get_claim_hash(true); - let attestation = generate_base_attestation::(attester, ACCOUNT_00); - - let operation = generate_base_attestation_revocation_details::(claim_hash); +fn test_remove_unauthorized() { + let attester: AttesterOf = sr25519_did_from_seed(&ALICE_SEED); + let evil: AttesterOf = sr25519_did_from_seed(&BOB_SEED); + let claim_hash = claim_hash_from_seed(CLAIM_HASH_SEED_01); + let attestation = generate_base_attestation::(attester.clone(), ACCOUNT_00); + let authorization_info = Some(MockAccessControl(evil.clone())); ExtBuilder::default() .with_balances(vec![(ACCOUNT_00, ::Deposit::get() * 100)]) - .with_ctypes(vec![(attestation.ctype_hash, deposit_owner)]) - .with_attestations(vec![(operation.claim_hash, attestation)]) + .with_ctypes(vec![(attestation.ctype_hash, attester)]) + .with_attestations(vec![(claim_hash, attestation)]) .build() .execute_with(|| { assert_noop!( - Attestation::reclaim_deposit(Origin::signed(ACCOUNT_01), operation.claim_hash), - attestation::Error::::Unauthorized, + Attestation::remove( + DoubleOrigin(ACCOUNT_00, evil.clone()).into(), + claim_hash, + authorization_info + ), + attestation::Error::::Unauthorized ); - assert_ok!(Attestation::reclaim_deposit( - Origin::signed(ACCOUNT_00), - operation.claim_hash, - )); - assert!(Attestation::attestations(claim_hash).is_none()) }); } #[test] -fn remove_with_delegation_successful() { +fn test_remove_not_found() { let attester: AttesterOf = sr25519_did_from_seed(&ALICE_SEED); - let attestation_owner: AttesterOf = sr25519_did_from_seed(&BOB_SEED); - let claim_hash = get_claim_hash(true); - - let hierarchy_root_id = delegation_mock::get_delegation_hierarchy_id::(true); - let hierarchy_details = delegation_mock::generate_base_delegation_hierarchy_details::(); - let delegation_id = delegation_mock::delegation_id_from_seed::(DELEGATION_ID_SEED_1); - let mut delegation_node = delegation_mock::generate_base_delegation_node( - hierarchy_root_id, - attester.clone(), - Some(hierarchy_root_id), - ACCOUNT_01, - ); - delegation_node.details.permissions = delegation::Permissions::ATTEST; - // Attestation owned by a different user, but delegation owned by the user - // submitting the operation. - let mut attestation = generate_base_attestation::(attestation_owner, ACCOUNT_00); - attestation.delegation_id = Some(delegation_id); - - let mut operation = generate_base_attestation_revocation_details::(claim_hash); - // Set to 0 as we only need to check the delegation node itself and no parent. - operation.max_parent_checks = 0u32; + let claim_hash = claim_hash_from_seed(CLAIM_HASH_SEED_01); + let attestation = generate_base_attestation::(attester.clone(), ACCOUNT_00); ExtBuilder::default() - .with_balances(vec![ - (ACCOUNT_00, ::Deposit::get() * 100), - (ACCOUNT_01, ::Deposit::get() * 100), - ]) + .with_balances(vec![(ACCOUNT_00, ::Deposit::get() * 100)]) .with_ctypes(vec![(attestation.ctype_hash, attester.clone())]) - .with_delegation_hierarchies(vec![( - hierarchy_root_id, - hierarchy_details, - attester.clone(), - ACCOUNT_01, - )]) - .with_delegations(vec![(delegation_id, delegation_node)]) - .with_attestations(vec![(operation.claim_hash, attestation)]) .build() .execute_with(|| { - assert_eq!(Balances::reserved_balance(ACCOUNT_00), ::Deposit::get()); - assert_ok!(Attestation::remove( - DoubleOrigin(ACCOUNT_00, attester.clone()).into(), - operation.claim_hash, - operation.max_parent_checks - )); - assert!(Attestation::attestations(operation.claim_hash).is_none()); assert!(Balances::reserved_balance(ACCOUNT_00).is_zero()); + assert_noop!( + Attestation::remove(DoubleOrigin(ACCOUNT_00, attester.clone()).into(), claim_hash, None), + attestation::Error::::AttestationNotFound + ); }); } +// ############################################################################# +// reclaim deposit + #[test] -fn attestation_not_present_remove_error() { +fn test_reclaim_deposit() { let attester: AttesterOf = sr25519_did_from_seed(&ALICE_SEED); - let claim_hash = get_claim_hash(true); - - let attestation = generate_base_attestation::(attester.clone(), ACCOUNT_00); - - let operation = generate_base_attestation_revocation_details::(claim_hash); + let other_authorized: AttesterOf = sr25519_did_from_seed(&BOB_SEED); + let claim_hash = claim_hash_from_seed(CLAIM_HASH_SEED_01); + let mut attestation = generate_base_attestation::(attester.clone(), ACCOUNT_00); + attestation.authorization_id = Some(other_authorized.clone()); ExtBuilder::default() .with_balances(vec![(ACCOUNT_00, ::Deposit::get() * 100)]) - .with_ctypes(vec![(attestation.ctype_hash, attester.clone())]) + .with_ctypes(vec![(attestation.ctype_hash, attester)]) + .with_attestations(vec![(claim_hash, attestation)]) .build() .execute_with(|| { - assert!(Balances::reserved_balance(ACCOUNT_00).is_zero()); - - assert_noop!( - Attestation::remove( - DoubleOrigin(ACCOUNT_00, attester.clone()).into(), - operation.claim_hash, - operation.max_parent_checks - ), - attestation::Error::::AttestationNotFound - ); + assert_eq!(Balances::reserved_balance(ACCOUNT_00), ::Deposit::get()); + assert_ok!(Attestation::reclaim_deposit(Origin::signed(ACCOUNT_00), claim_hash)); + assert!(!Attestation::external_attestations( + other_authorized.clone(), + claim_hash + )); + assert!(Attestation::attestations(claim_hash).is_none()); assert!(Balances::reserved_balance(ACCOUNT_00).is_zero()); }); } #[test] -fn unauthorised_attestation_remove_error() { - let remover: AttesterOf = sr25519_did_from_seed(&ALICE_SEED); - let attestation_owner: AttesterOf = sr25519_did_from_seed(&BOB_SEED); - let claim_hash = get_claim_hash(true); - - // Attestation owned by a different user - let attestation = generate_base_attestation::(attestation_owner, ACCOUNT_00); - - let operation = generate_base_attestation_revocation_details::(claim_hash); +fn test_reclaim_deposit_authorization() { + let attester: AttesterOf = sr25519_did_from_seed(&BOB_SEED); + let claim_hash = claim_hash_from_seed(CLAIM_HASH_SEED_01); + let attestation = generate_base_attestation::(attester.clone(), ACCOUNT_00); ExtBuilder::default() - .with_balances(vec![ - (ACCOUNT_00, ::Deposit::get() * 100), - (ACCOUNT_01.clone(), ::Deposit::get() * 100), - ]) - .with_ctypes(vec![(attestation.ctype_hash, remover.clone())]) - .with_attestations(vec![(operation.claim_hash, attestation)]) + .with_balances(vec![(ACCOUNT_00, ::Deposit::get() * 100)]) + .with_ctypes(vec![(attestation.ctype_hash, attester)]) + .with_attestations(vec![(claim_hash, attestation)]) .build() .execute_with(|| { assert_eq!(Balances::reserved_balance(ACCOUNT_00), ::Deposit::get()); - assert_noop!( - Attestation::remove( - DoubleOrigin(ACCOUNT_00, remover.clone()).into(), - operation.claim_hash, - operation.max_parent_checks - ), - attestation::Error::::Unauthorized - ); - assert_eq!(Balances::reserved_balance(ACCOUNT_00), ::Deposit::get()); + assert_ok!(Attestation::reclaim_deposit(Origin::signed(ACCOUNT_00), claim_hash)); + assert!(Attestation::attestations(claim_hash).is_none()); + assert!(Balances::reserved_balance(ACCOUNT_00).is_zero()); }); } #[test] -fn revoked_delegation_remove_error() { - let attester: AttesterOf = sr25519_did_from_seed(&ALICE_SEED); - let attestation_owner: AttesterOf = sr25519_did_from_seed(&BOB_SEED); - let claim_hash = get_claim_hash(true); - - let hierarchy_root_id = delegation_mock::get_delegation_hierarchy_id::(true); - let hierarchy_details = delegation_mock::generate_base_delegation_hierarchy_details(); - - let delegation_id = delegation_mock::delegation_id_from_seed::(DELEGATION_ID_SEED_1); - let mut delegation_node = delegation_mock::generate_base_delegation_node( - hierarchy_root_id, - attester.clone(), - Some(hierarchy_root_id), - ACCOUNT_01, - ); - - delegation_node.details.permissions = delegation::Permissions::ATTEST; - delegation_node.details.revoked = true; - let mut attestation = generate_base_attestation::(attestation_owner, ACCOUNT_00); - attestation.delegation_id = Some(delegation_id); - - let operation = generate_base_attestation_revocation_details::(claim_hash); +fn test_reclaim_unauthorized() { + let attester: AttesterOf = sr25519_did_from_seed(&BOB_SEED); + let claim_hash = claim_hash_from_seed(CLAIM_HASH_SEED_01); + let attestation = generate_base_attestation::(attester.clone(), ACCOUNT_00); ExtBuilder::default() - .with_balances(vec![ - (ACCOUNT_00, ::Deposit::get() * 100), - (ACCOUNT_01.clone(), ::Deposit::get() * 100), - ]) - .with_ctypes(vec![(attestation.ctype_hash, attester.clone())]) - .with_delegation_hierarchies(vec![( - hierarchy_root_id, - hierarchy_details, - attester.clone(), - ACCOUNT_01, - )]) - .with_delegations(vec![(delegation_id, delegation_node)]) - .with_attestations(vec![(operation.claim_hash, attestation)]) + .with_balances(vec![(ACCOUNT_00, ::Deposit::get() * 100)]) + .with_ctypes(vec![(attestation.ctype_hash, attester)]) + .with_attestations(vec![(claim_hash, attestation)]) .build() .execute_with(|| { - assert_eq!(Balances::reserved_balance(ACCOUNT_00), ::Deposit::get()); assert_noop!( - Attestation::remove( - DoubleOrigin(ACCOUNT_00, attester.clone()).into(), - operation.claim_hash, - operation.max_parent_checks - ), - attestation::Error::::Unauthorized + Attestation::reclaim_deposit(Origin::signed(ACCOUNT_01), claim_hash), + attestation::Error::::Unauthorized, ); - assert_eq!(Balances::reserved_balance(ACCOUNT_00), ::Deposit::get()); }); } #[test] -fn remove_delegated_attestation() { - let attester: AttesterOf = sr25519_did_from_seed(&ALICE_SEED); - let attestation_owner: AttesterOf = sr25519_did_from_seed(&BOB_SEED); - let claim_hash = get_claim_hash(true); - - let hierarchy_root_id = delegation_mock::get_delegation_hierarchy_id::(true); - let hierarchy_details = delegation_mock::generate_base_delegation_hierarchy_details(); - let (delegation_id, mut delegation_node) = ( - delegation_mock::delegation_id_from_seed::(DELEGATION_ID_SEED_1), - delegation_mock::generate_base_delegation_node( - hierarchy_root_id, - attester.clone(), - Some(hierarchy_root_id), - ACCOUNT_01, - ), - ); - delegation_node.details.permissions = delegation::Permissions::ATTEST; - let mut attestation = generate_base_attestation::(attestation_owner, ACCOUNT_00); - attestation.delegation_id = Some(delegation_id); - - let operation = generate_base_attestation_revocation_details::(claim_hash); +fn test_reclaim_deposit_not_found() { + let attester: AttesterOf = sr25519_did_from_seed(&BOB_SEED); + let claim_hash = claim_hash_from_seed(CLAIM_HASH_SEED_01); + let attestation = generate_base_attestation::(attester.clone(), ACCOUNT_00); ExtBuilder::default() - .with_balances(vec![ - (ACCOUNT_00, ::Deposit::get() * 100), - (ACCOUNT_01, ::Deposit::get() * 100), - ]) - .with_ctypes(vec![(attestation.ctype_hash, attester.clone())]) - .with_delegation_hierarchies(vec![( - hierarchy_root_id, - hierarchy_details, - attester.clone(), - ACCOUNT_01, - )]) - .with_delegations(vec![(delegation_id, delegation_node)]) - .with_attestations(vec![(operation.claim_hash, attestation)]) + .with_balances(vec![(ACCOUNT_00, ::Deposit::get() * 100)]) + .with_ctypes(vec![(attestation.ctype_hash, attester)]) .build() .execute_with(|| { - assert_eq!(Balances::reserved_balance(ACCOUNT_00), ::Deposit::get()); - assert!( - DelegatedAttestations::::get(delegation_id) - .unwrap_or_default() - .iter() - .any(|&ch| ch == operation.claim_hash), - "delegated attestation entry should be present before removal" - ); - - assert_ok!(Attestation::remove( - DoubleOrigin(ACCOUNT_00, attester.clone()).into(), - operation.claim_hash, - operation.max_parent_checks - )); - assert!(Balances::reserved_balance(ACCOUNT_00).is_zero()); - assert!( - !DelegatedAttestations::::get(delegation_id) - .unwrap_or_default() - .iter() - .any(|&ch| ch == operation.claim_hash), - "delegated attestation entry should be removed" + assert_noop!( + Attestation::reclaim_deposit(Origin::signed(ACCOUNT_01), claim_hash), + attestation::Error::::AttestationNotFound, ); }); } diff --git a/pallets/ctype/Cargo.toml b/pallets/ctype/Cargo.toml index 128d8db27..9e0603d07 100644 --- a/pallets/ctype/Cargo.toml +++ b/pallets/ctype/Cargo.toml @@ -4,47 +4,44 @@ description = "Enables adding CTypes." edition = "2021" name = "ctype" repository = "https://github.com/KILTprotocol/mashnet-node" -version = "1.6.2" +version = "1.7.0" [package.metadata.docs.rs] targets = ["x86_64-unknown-linux-gnu"] [build-dependencies] -substrate-wasm-builder-runner = {version = "3.0.0"} +substrate-wasm-builder = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} [dev-dependencies] kilt-support = {features = ["mock"], path = "../../support"} -pallet-balances = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -runtime-common = {default-features = false, path = "../../runtimes/common"} -serde = {version = "1.0.132"} -sp-core = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-keystore = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} +pallet-balances = {branch = "polkadot-v0.9.24", git = "https://github.com/paritytech/substrate"} +serde = "1.0.137" +sp-core = {branch = "polkadot-v0.9.24", git = "https://github.com/paritytech/substrate"} +sp-keystore = {branch = "polkadot-v0.9.24", git = "https://github.com/paritytech/substrate"} [dependencies] -codec = {default-features = false, features = ["derive"], package = "parity-scale-codec", version = "2.3.1"} -log = "0.4" -scale-info = {version = "1.0", default-features = false, features = ["derive"]} -serde = {optional = true, version = "1.0.132"} +codec = {package = "parity-scale-codec", version = "3.1.2", default-features = false, features = ["derive"]} +log = "0.4.17" +scale-info = {version = "2.1.1", default-features = false, features = ["derive"]} +serde = {version = "1.0.137", optional = true} # Internal dependencies kilt-support = {default-features = false, path = "../../support"} -runtime-common = {default-features = false, optional = true, path = "../../runtimes/common"} # Substrate dependencies -frame-benchmarking = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate", optional = true} -frame-support = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -frame-system = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -pallet-balances = {optional = true, branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-core = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate", optional = true} -sp-io = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate", optional = true} -sp-keystore = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate", optional = true} -sp-runtime = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-std = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} +frame-benchmarking = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate", optional = true} +frame-support = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +frame-system = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +pallet-balances = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate", optional = true} +sp-core = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate", optional = true} +sp-io = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate", optional = true} +sp-keystore = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate", optional = true} +sp-runtime = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +sp-std = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} [features] default = ["std"] mock = [ - "runtime-common", "pallet-balances", "serde", "sp-core", @@ -62,7 +59,6 @@ std = [ "frame-benchmarking/std", "frame-support/std", "frame-system/std", - "runtime-common/std", "kilt-support/std", "log/std", "pallet-balances/std", diff --git a/pallets/ctype/src/mock.rs b/pallets/ctype/src/mock.rs index 84282972b..03919dacb 100644 --- a/pallets/ctype/src/mock.rs +++ b/pallets/ctype/src/mock.rs @@ -36,21 +36,28 @@ where #[cfg(test)] pub mod runtime { - use frame_support::parameter_types; + use frame_support::{parameter_types, weights::constants::RocksDbWeight}; use kilt_support::mock::{mock_origin, SubjectId}; - use runtime_common::{Balance, Header, RocksDbWeight}; use sp_runtime::{ + testing::Header, traits::{BlakeTwo256, IdentifyAccount, IdentityLookup, Verify}, - AccountId32, + AccountId32, MultiSignature, }; use crate::{BalanceOf, Ctypes}; use super::*; - pub type TestCtypeHash = runtime_common::Hash; pub type UncheckedExtrinsic = frame_system::mocking::MockUncheckedExtrinsic; pub type Block = frame_system::mocking::MockBlock; + pub type Hash = sp_core::H256; + pub type Balance = u128; + pub type Signature = MultiSignature; + pub type AccountPublic = ::Signer; + pub type AccountId = ::AccountId; + + pub const UNIT: Balance = 10u128.pow(15); + pub const MILLI_UNIT: Balance = 10u128.pow(12); frame_support::construct_runtime!( pub enum Test where @@ -75,9 +82,9 @@ pub mod runtime { type Call = Call; type Index = u64; type BlockNumber = u64; - type Hash = runtime_common::Hash; + type Hash = Hash; type Hashing = BlakeTwo256; - type AccountId = <::Signer as IdentifyAccount>::AccountId; + type AccountId = AccountId; type Lookup = IdentityLookup; type Header = Header; type Event = (); @@ -118,7 +125,7 @@ pub mod runtime { impl mock_origin::Config for Test { type Origin = Origin; - type AccountId = runtime_common::AccountId; + type AccountId = AccountId; type SubjectId = SubjectId; } @@ -128,8 +135,8 @@ pub mod runtime { impl Config for Test { type CtypeCreatorId = SubjectId; - type EnsureOrigin = mock_origin::EnsureDoubleOrigin; - type OriginSuccess = mock_origin::DoubleOrigin; + type EnsureOrigin = mock_origin::EnsureDoubleOrigin; + type OriginSuccess = mock_origin::DoubleOrigin; type Event = (); type WeightInfo = (); @@ -139,21 +146,21 @@ pub mod runtime { } pub(crate) const DID_00: SubjectId = SubjectId(AccountId32::new([1u8; 32])); - pub(crate) const ACCOUNT_00: runtime_common::AccountId = runtime_common::AccountId::new([1u8; 32]); + pub(crate) const ACCOUNT_00: AccountId = AccountId::new([1u8; 32]); #[derive(Clone, Default)] pub(crate) struct ExtBuilder { - ctypes_stored: Vec<(TestCtypeHash, SubjectId)>, - balances: Vec<(runtime_common::AccountId, BalanceOf)>, + ctypes_stored: Vec<(CtypeHashOf, SubjectId)>, + balances: Vec<(AccountId, BalanceOf)>, } impl ExtBuilder { - pub(crate) fn with_ctypes(mut self, ctypes: Vec<(TestCtypeHash, SubjectId)>) -> Self { + pub(crate) fn with_ctypes(mut self, ctypes: Vec<(CtypeHashOf, SubjectId)>) -> Self { self.ctypes_stored = ctypes; self } - pub(crate) fn with_balances(mut self, balances: Vec<(runtime_common::AccountId, BalanceOf)>) -> Self { + pub(crate) fn with_balances(mut self, balances: Vec<(AccountId, BalanceOf)>) -> Self { self.balances = balances; self } diff --git a/pallets/delegation/Cargo.toml b/pallets/delegation/Cargo.toml index 0260bc1e5..73e369ffb 100644 --- a/pallets/delegation/Cargo.toml +++ b/pallets/delegation/Cargo.toml @@ -4,51 +4,51 @@ description = "Enables creating and revoking root nodes of delegation hierarchie edition = "2021" name = "delegation" repository = "https://github.com/KILTprotocol/mashnet-node" -version = "1.6.2" +version = "1.7.0" [package.metadata.docs.rs] targets = ["x86_64-unknown-linux-gnu"] [build-dependencies] -substrate-wasm-builder-runner = {version = "3.0.0"} +substrate-wasm-builder = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} [dev-dependencies] +attestation = {features = ["mock"], path = "../attestation"} ctype = {features = ["mock"], path = "../ctype"} kilt-support = {features = ["mock"], path = "../../support"} -runtime-common = {default-features = false, path = "../../runtimes/common"} # External dependencies -env_logger = {version = "0.8.4"} -serde = {version = "1.0.132"} +env_logger = "0.9.0" +serde = "1.0.137" # Substrate dependencies -pallet-balances = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-core = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-keystore = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} +pallet-balances = {branch = "polkadot-v0.9.24", git = "https://github.com/paritytech/substrate"} +sp-core = {branch = "polkadot-v0.9.24", git = "https://github.com/paritytech/substrate"} +sp-keystore = {branch = "polkadot-v0.9.24", git = "https://github.com/paritytech/substrate"} [dependencies] # Internal dependencies +attestation = {default-features = false, path = "../attestation"} ctype = {default-features = false, path = "../ctype"} kilt-support = {default-features = false, path = "../../support"} -runtime-common = {default-features = false, path = "../../runtimes/common"} #External dependencies bitflags = {default-features = false, version = "1.3.2"} -codec = {default-features = false, features = ["derive"], package = "parity-scale-codec", version = "2.3.1"} -log = "0.4" -scale-info = {version = "1.0", default-features = false, features = ["derive"]} -serde = {version = "1.0.132", optional = true} +codec = {package = "parity-scale-codec", version = "3.1.2", default-features = false, features = ["derive"]} +log = "0.4.17" +scale-info = {version = "2.1.1", default-features = false, features = ["derive"]} +serde = {version = "1.0.137", optional = true} # Substrate dependencies -frame-benchmarking = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate", optional = true} -frame-support = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -frame-system = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -pallet-balances = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate", optional = true} -sp-core = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate", optional = true} -sp-io = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate", optional = true} -sp-keystore = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate", optional = true} -sp-runtime = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-std = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} +frame-benchmarking = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate", optional = true} +frame-support = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +frame-system = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +pallet-balances = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate", optional = true} +sp-core = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate", optional = true} +sp-io = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate", optional = true} +sp-keystore = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate", optional = true} +sp-runtime = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +sp-std = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} [features] default = ["std"] @@ -69,11 +69,11 @@ runtime-benchmarks = [ "sp-io", ] std = [ + "attestation/std", "codec/std", "ctype/std", "frame-support/std", "frame-system/std", - "runtime-common/std", "kilt-support/std", "log/std", "pallet-balances/std", diff --git a/pallets/delegation/src/access_control.rs b/pallets/delegation/src/access_control.rs new file mode 100644 index 000000000..3702cd4c1 --- /dev/null +++ b/pallets/delegation/src/access_control.rs @@ -0,0 +1,511 @@ +// KILT Blockchain – https://botlabs.org +// Copyright (C) 2019-2022 BOTLabs GmbH + +// The KILT Blockchain is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// The KILT Blockchain is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with this program. If not, see . + +// If you feel like getting in touch with us, you can do so at info@botlabs.org + +use codec::{Decode, Encode, MaxEncodedLen}; +use frame_support::{dispatch::Weight, ensure}; +use scale_info::TypeInfo; +use sp_runtime::DispatchError; + +use attestation::ClaimHashOf; +use ctype::CtypeHashOf; + +use crate::{ + default_weights::WeightInfo, Config, DelegationHierarchies, DelegationNodeIdOf, DelegationNodes, DelegatorIdOf, + Error, Pallet, Permissions, +}; + +/// Controls the access to attestations. +/// +/// Can attest if +/// * delegation node of sender is not revoked +/// * delegation node of sender has ATTEST permission +/// * the CType of the delegation root matches the CType of the attestation +/// +/// Can revoke attestations if +/// * delegation node of sender is not revoked +/// * sender delegation node is equal to OR parent of the delegation node +/// stored in the attestation +/// +/// Can remove attestations if +#[derive(Clone, Debug, Encode, Decode, PartialEq, Eq, TypeInfo, MaxEncodedLen)] +pub struct DelegationAc { + pub(crate) subject_node_id: DelegationNodeIdOf, + pub(crate) max_checks: u32, +} + +impl + attestation::AttestationAccessControl, DelegationNodeIdOf, CtypeHashOf, ClaimHashOf> + for DelegationAc +{ + fn can_attest( + &self, + who: &DelegatorIdOf, + ctype: &CtypeHashOf, + _claim: &ClaimHashOf, + ) -> Result { + let delegation_node = + DelegationNodes::::get(self.authorization_id()).ok_or(Error::::DelegationNotFound)?; + let root = + DelegationHierarchies::::get(delegation_node.hierarchy_root_id).ok_or(Error::::DelegationNotFound)?; + ensure!( + // has permission + ((delegation_node.details.permissions & Permissions::ATTEST) == Permissions::ATTEST) + // not revoked + && !delegation_node.details.revoked + // is owner of delegation + && &delegation_node.details.owner == who + // delegation matches the ctype + && &root.ctype_hash == ctype, + Error::::AccessDenied + ); + + Ok(::WeightInfo::can_attest()) + } + + fn can_revoke( + &self, + who: &DelegatorIdOf, + _ctype: &CtypeHashOf, + _claim: &ClaimHashOf, + attester_node_id: &DelegationNodeIdOf, + ) -> Result { + // NOTE: The node IDs of the sender (provided by the user through `who`) and + // attester (provided by the attestation pallet through on-chain storage) can be + // different! + match Pallet::::is_delegating(who, attester_node_id, self.max_checks)? { + (true, checks) => Ok(::WeightInfo::can_revoke(checks)), + _ => Err(Error::::AccessDenied.into()), + } + } + + fn can_remove( + &self, + who: &DelegatorIdOf, + ctype: &CtypeHashOf, + claim: &ClaimHashOf, + auth_id: &DelegationNodeIdOf, + ) -> Result { + self.can_revoke(who, ctype, claim, auth_id) + } + + fn authorization_id(&self) -> DelegationNodeIdOf { + self.subject_node_id + } + + fn can_attest_weight(&self) -> Weight { + ::WeightInfo::can_attest() + } + + fn can_revoke_weight(&self) -> Weight { + ::WeightInfo::can_revoke(self.max_checks) + } + + fn can_remove_weight(&self) -> Weight { + ::WeightInfo::can_remove(self.max_checks) + } +} + +#[cfg(test)] +mod tests { + use frame_support::{assert_noop, assert_ok}; + + use attestation::{mock::generate_base_attestation, AttestationAccessControl}; + use ctype::mock::get_ctype_hash; + use kilt_support::{deposit::Deposit, mock::mock_origin::DoubleOrigin}; + + use super::*; + use crate::{mock::*, DelegationDetails, DelegationNode}; + + #[test] + fn test_can_attest() { + let root_owner: DelegatorIdOf = sr25519_did_from_seed(&ALICE_SEED); + let delegate = sr25519_did_from_seed(&BOB_SEED); + + let hierarchy_root_id = get_delegation_hierarchy_id::(true); + let hierarchy_details = generate_base_delegation_hierarchy_details(); + let ctype_hash = hierarchy_details.ctype_hash; + let parent_id = delegation_id_from_seed::(DELEGATION_ID_SEED_1); + let parent_node = DelegationNode { + details: DelegationDetails { + owner: delegate.clone(), + permissions: Permissions::DELEGATE | Permissions::ATTEST, + revoked: false, + }, + children: Default::default(), + hierarchy_root_id, + parent: Some(hierarchy_root_id), + deposit: Deposit { + owner: ACCOUNT_00, + amount: ::Deposit::get(), + }, + }; + let claim_hash = claim_hash_from_seed(CLAIM_HASH_SEED_01); + let ac_info = Some(DelegationAc { + subject_node_id: parent_id, + max_checks: 1, + }); + + ExtBuilder::default() + .with_ctypes(vec![(ctype_hash, root_owner.clone())]) + .with_delegation_hierarchies(vec![(hierarchy_root_id, hierarchy_details, root_owner, ACCOUNT_00)]) + .with_delegations(vec![(parent_id, parent_node)]) + .with_balances(vec![(ACCOUNT_00, ::Deposit::get() * 100)]) + .build() + .execute_with(|| { + assert_ok!(Attestation::add( + DoubleOrigin(ACCOUNT_00, delegate.clone()).into(), + claim_hash, + ctype_hash, + ac_info.clone() + )); + let stored_attestation = + Attestation::attestations(&claim_hash).expect("Attestation should be present on chain."); + + assert_eq!(stored_attestation.ctype_hash, ctype_hash); + assert_eq!(stored_attestation.attester, delegate); + assert_eq!( + stored_attestation.authorization_id, + ac_info.map(|ac| ac.authorization_id()) + ); + assert!(!stored_attestation.revoked); + }); + } + + #[test] + fn test_cannot_attest_missing_permission() { + let root_owner: DelegatorIdOf = sr25519_did_from_seed(&ALICE_SEED); + let delegate = sr25519_did_from_seed(&BOB_SEED); + + let hierarchy_root_id = get_delegation_hierarchy_id::(true); + let hierarchy_details = generate_base_delegation_hierarchy_details(); + let ctype_hash = hierarchy_details.ctype_hash; + let parent_id = delegation_id_from_seed::(DELEGATION_ID_SEED_1); + let parent_node = DelegationNode { + details: DelegationDetails { + owner: delegate.clone(), + permissions: Permissions::DELEGATE, + revoked: false, + }, + children: Default::default(), + hierarchy_root_id, + parent: Some(hierarchy_root_id), + deposit: Deposit { + owner: ACCOUNT_00, + amount: ::Deposit::get(), + }, + }; + let claim_hash = claim_hash_from_seed(CLAIM_HASH_SEED_01); + let ac_info = Some(DelegationAc { + subject_node_id: parent_id, + max_checks: 1, + }); + + ExtBuilder::default() + .with_ctypes(vec![(ctype_hash, root_owner.clone())]) + .with_delegation_hierarchies(vec![(hierarchy_root_id, hierarchy_details, root_owner, ACCOUNT_00)]) + .with_delegations(vec![(parent_id, parent_node)]) + .with_balances(vec![(ACCOUNT_00, ::Deposit::get() * 100)]) + .build() + .execute_with(|| { + assert_noop!( + Attestation::add( + DoubleOrigin(ACCOUNT_00, delegate.clone()).into(), + claim_hash, + ctype_hash, + ac_info.clone() + ), + Error::::AccessDenied + ); + }); + } + + #[test] + fn test_can_attest_revoked() { + let root_owner: DelegatorIdOf = sr25519_did_from_seed(&ALICE_SEED); + let delegate = sr25519_did_from_seed(&BOB_SEED); + + let hierarchy_root_id = get_delegation_hierarchy_id::(true); + let hierarchy_details = generate_base_delegation_hierarchy_details(); + let ctype_hash = hierarchy_details.ctype_hash; + let parent_id = delegation_id_from_seed::(DELEGATION_ID_SEED_1); + let parent_node = DelegationNode { + details: DelegationDetails { + owner: delegate.clone(), + permissions: Permissions::DELEGATE | Permissions::ATTEST, + revoked: true, + }, + children: Default::default(), + hierarchy_root_id, + parent: Some(hierarchy_root_id), + deposit: Deposit { + owner: ACCOUNT_00, + amount: ::Deposit::get(), + }, + }; + let claim_hash = claim_hash_from_seed(CLAIM_HASH_SEED_01); + let ac_info = Some(DelegationAc { + subject_node_id: parent_id, + max_checks: 1, + }); + + ExtBuilder::default() + .with_ctypes(vec![(ctype_hash, root_owner.clone())]) + .with_delegation_hierarchies(vec![(hierarchy_root_id, hierarchy_details, root_owner, ACCOUNT_00)]) + .with_delegations(vec![(parent_id, parent_node)]) + .with_balances(vec![(ACCOUNT_00, ::Deposit::get() * 100)]) + .build() + .execute_with(|| { + assert_noop!( + Attestation::add( + DoubleOrigin(ACCOUNT_00, delegate.clone()).into(), + claim_hash, + ctype_hash, + ac_info.clone() + ), + Error::::AccessDenied + ); + }); + } + + #[test] + fn test_cannot_attest_missing_node() { + let root_owner: DelegatorIdOf = sr25519_did_from_seed(&ALICE_SEED); + let delegate = sr25519_did_from_seed(&BOB_SEED); + + let hierarchy_root_id = get_delegation_hierarchy_id::(true); + let hierarchy_details = generate_base_delegation_hierarchy_details(); + let ctype_hash = hierarchy_details.ctype_hash; + let parent_id = delegation_id_from_seed::(DELEGATION_ID_SEED_1); + let claim_hash = claim_hash_from_seed(CLAIM_HASH_SEED_01); + let ac_info = Some(DelegationAc { + subject_node_id: parent_id, + max_checks: 1, + }); + + ExtBuilder::default() + .with_ctypes(vec![(ctype_hash, root_owner.clone())]) + .with_delegation_hierarchies(vec![(hierarchy_root_id, hierarchy_details, root_owner, ACCOUNT_00)]) + .with_balances(vec![(ACCOUNT_00, ::Deposit::get() * 100)]) + .build() + .execute_with(|| { + assert_noop!( + Attestation::add( + DoubleOrigin(ACCOUNT_00, delegate.clone()).into(), + claim_hash, + ctype_hash, + ac_info.clone() + ), + Error::::DelegationNotFound + ); + }); + } + + #[test] + fn test_cannot_attest_wrong_ctype() { + let root_owner: DelegatorIdOf = sr25519_did_from_seed(&ALICE_SEED); + let delegate = sr25519_did_from_seed(&BOB_SEED); + + let hierarchy_root_id = get_delegation_hierarchy_id::(true); + let hierarchy_details = generate_base_delegation_hierarchy_details(); + let ctype_hash = get_ctype_hash::(false); + let parent_id = delegation_id_from_seed::(DELEGATION_ID_SEED_1); + let parent_node = DelegationNode { + details: DelegationDetails { + owner: delegate.clone(), + permissions: Permissions::DELEGATE | Permissions::ATTEST, + revoked: false, + }, + children: Default::default(), + hierarchy_root_id, + parent: Some(hierarchy_root_id), + deposit: Deposit { + owner: ACCOUNT_00, + amount: ::Deposit::get(), + }, + }; + let claim_hash = claim_hash_from_seed(CLAIM_HASH_SEED_01); + let ac_info = Some(DelegationAc { + subject_node_id: parent_id, + max_checks: 1, + }); + + ExtBuilder::default() + .with_ctypes(vec![(ctype_hash, root_owner.clone())]) + .with_delegation_hierarchies(vec![(hierarchy_root_id, hierarchy_details, root_owner, ACCOUNT_00)]) + .with_delegations(vec![(parent_id, parent_node)]) + .with_balances(vec![(ACCOUNT_00, ::Deposit::get() * 100)]) + .build() + .execute_with(|| { + assert_noop!( + Attestation::add( + DoubleOrigin(ACCOUNT_00, delegate.clone()).into(), + claim_hash, + ctype_hash, + ac_info.clone() + ), + Error::::AccessDenied + ); + }); + } + + #[test] + fn test_can_revoke_same_node() { + let root_owner: DelegatorIdOf = sr25519_did_from_seed(&ALICE_SEED); + let delegate = sr25519_did_from_seed(&BOB_SEED); + + let hierarchy_root_id = get_delegation_hierarchy_id::(true); + let hierarchy_details = generate_base_delegation_hierarchy_details(); + let parent_id = delegation_id_from_seed::(DELEGATION_ID_SEED_1); + let parent_node = DelegationNode { + details: DelegationDetails { + owner: delegate.clone(), + permissions: Permissions::DELEGATE | Permissions::ATTEST, + revoked: false, + }, + children: Default::default(), + hierarchy_root_id, + parent: Some(hierarchy_root_id), + deposit: Deposit { + owner: ACCOUNT_00, + amount: ::Deposit::get(), + }, + }; + let ac_info = Some(DelegationAc { + subject_node_id: parent_id, + max_checks: 1, + }); + + let claim_hash = claim_hash_from_seed(CLAIM_HASH_SEED_01); + let mut attestation = generate_base_attestation::(delegate.clone(), ACCOUNT_00); + attestation.authorization_id = Some(parent_id); + + ExtBuilder::default() + .with_balances(vec![(ACCOUNT_00, ::Deposit::get() * 100)]) + .with_ctypes(vec![(attestation.ctype_hash, delegate.clone())]) + .with_delegation_hierarchies(vec![(hierarchy_root_id, hierarchy_details, root_owner, ACCOUNT_00)]) + .with_delegations(vec![(parent_id, parent_node)]) + .with_attestations(vec![(claim_hash, attestation)]) + .build() + .execute_with(|| { + assert_ok!(Attestation::revoke( + DoubleOrigin(ACCOUNT_00, delegate.clone()).into(), + claim_hash, + ac_info + )); + }); + } + + #[test] + fn test_can_revoke_parent() { + let root_owner: DelegatorIdOf = sr25519_did_from_seed(&ALICE_SEED); + let delegate = sr25519_did_from_seed(&BOB_SEED); + + let hierarchy_root_id = get_delegation_hierarchy_id::(true); + let hierarchy_details = generate_base_delegation_hierarchy_details(); + let parent_id = delegation_id_from_seed::(DELEGATION_ID_SEED_1); + let parent_node = DelegationNode { + details: DelegationDetails { + owner: delegate.clone(), + permissions: Permissions::DELEGATE | Permissions::ATTEST, + revoked: false, + }, + children: Default::default(), + hierarchy_root_id, + parent: Some(hierarchy_root_id), + deposit: Deposit { + owner: ACCOUNT_00, + amount: ::Deposit::get(), + }, + }; + let ac_info = Some(DelegationAc { + subject_node_id: parent_id, + max_checks: 1, + }); + + let claim_hash = claim_hash_from_seed(CLAIM_HASH_SEED_01); + let mut attestation = generate_base_attestation::(delegate.clone(), ACCOUNT_00); + attestation.authorization_id = Some(parent_id); + + ExtBuilder::default() + .with_balances(vec![(ACCOUNT_00, ::Deposit::get() * 100)]) + .with_ctypes(vec![(attestation.ctype_hash, delegate)]) + .with_delegation_hierarchies(vec![( + hierarchy_root_id, + hierarchy_details, + root_owner.clone(), + ACCOUNT_00, + )]) + .with_delegations(vec![(parent_id, parent_node)]) + .with_attestations(vec![(claim_hash, attestation)]) + .build() + .execute_with(|| { + assert_ok!(Attestation::revoke( + DoubleOrigin(ACCOUNT_00, root_owner.clone()).into(), + claim_hash, + ac_info + )); + }); + } + + #[test] + fn test_can_revoke_same_node_revoked() { + let root_owner: DelegatorIdOf = sr25519_did_from_seed(&ALICE_SEED); + let delegate = sr25519_did_from_seed(&BOB_SEED); + + let hierarchy_root_id = get_delegation_hierarchy_id::(true); + let hierarchy_details = generate_base_delegation_hierarchy_details(); + let parent_id = delegation_id_from_seed::(DELEGATION_ID_SEED_1); + let parent_node = DelegationNode { + details: DelegationDetails { + owner: delegate.clone(), + permissions: Permissions::DELEGATE | Permissions::ATTEST, + revoked: true, + }, + children: Default::default(), + hierarchy_root_id, + parent: Some(hierarchy_root_id), + deposit: Deposit { + owner: ACCOUNT_00, + amount: ::Deposit::get(), + }, + }; + let ac_info = Some(DelegationAc { + subject_node_id: parent_id, + max_checks: 1, + }); + + let claim_hash = claim_hash_from_seed(CLAIM_HASH_SEED_01); + let mut attestation = generate_base_attestation::(delegate.clone(), ACCOUNT_00); + attestation.authorization_id = Some(parent_id); + + ExtBuilder::default() + .with_balances(vec![(ACCOUNT_00, ::Deposit::get() * 100)]) + .with_ctypes(vec![(attestation.ctype_hash, delegate.clone())]) + .with_delegation_hierarchies(vec![(hierarchy_root_id, hierarchy_details, root_owner, ACCOUNT_00)]) + .with_delegations(vec![(parent_id, parent_node)]) + .with_attestations(vec![(claim_hash, attestation)]) + .build() + .execute_with(|| { + assert_ok!(Attestation::revoke( + DoubleOrigin(ACCOUNT_00, delegate.clone()).into(), + claim_hash, + ac_info + )); + }); + } +} diff --git a/pallets/delegation/src/benchmarking.rs b/pallets/delegation/src/benchmarking.rs index a915bab1b..2f05d7a7c 100644 --- a/pallets/delegation/src/benchmarking.rs +++ b/pallets/delegation/src/benchmarking.rs @@ -26,12 +26,14 @@ use frame_support::{ traits::{Currency, Get}, }; use frame_system::RawOrigin; -use kilt_support::{signature::VerifySignature, traits::GenerateBenchmarkOrigin}; use sp_core::{offchain::KeyTypeId, sr25519}; use sp_io::crypto::sr25519_generate; use sp_runtime::traits::Zero; use sp_std::{num::NonZeroU32, vec::Vec}; +use attestation::AttestationAccessControl; +use kilt_support::{signature::VerifySignature, traits::GenerateBenchmarkOrigin}; + const SEED: u32 = 0; const ONE_CHILD_PER_LEVEL: Option = NonZeroU32::new(1); @@ -136,7 +138,7 @@ where &sender, ::Currency::minimum_balance() + ::Deposit::get() + ::Deposit::get(), ); - let _ = Pallet::::add_delegation( + Pallet::::add_delegation( ::EnsureOrigin::generate_origin(sender.clone(), parent_acc_id.clone()), delegation_id, parent_id, @@ -376,6 +378,64 @@ benchmarks! { assert!(!DelegationNodes::::contains_key(leaf_id)); assert!(::Currency::reserved_balance(&sender).is_zero()); } + + can_attest { + let c = T::MaxParentChecks::get(); + + let ctype = Default::default(); + let claim = Default::default(); + + let sender: T::AccountId = account("sender", 0, SEED); + let (root_acc, _, leaf_acc, leaf_id) = setup_delegations::(c, ONE_CHILD_PER_LEVEL.expect(">0"), Permissions::DELEGATE | Permissions::ATTEST)?; + let root_acc: T::DelegationEntityId = root_acc.into(); + let leaf_acc: T::DelegationEntityId = leaf_acc.into(); + + let ac = DelegationAc::{ + subject_node_id: leaf_id, + max_checks: c + }; + + }: { ac.can_attest(&leaf_acc, &ctype, &claim).expect("Should be allowed") } + verify { + } + + can_revoke { + let c in 1 .. T::MaxParentChecks::get(); + + let ctype = Default::default(); + let claim = Default::default(); + + let sender: T::AccountId = account("sender", 0, SEED); + let (root_acc, root_id, _, leaf_id) = setup_delegations::(c, ONE_CHILD_PER_LEVEL.expect(">0"), Permissions::DELEGATE)?; + let root_acc: T::DelegationEntityId = root_acc.into(); + + let ac = DelegationAc::{ + subject_node_id: leaf_id, + max_checks: c + }; + + }: { ac.can_revoke(&root_acc, &ctype, &claim, &leaf_id).expect("Should be allowed") } + verify { + } + + can_remove { + let c in 1 .. T::MaxParentChecks::get(); + + let ctype = Default::default(); + let claim = Default::default(); + + let sender: T::AccountId = account("sender", 0, SEED); + let (root_acc, root_id, _, leaf_id) = setup_delegations::(c, ONE_CHILD_PER_LEVEL.expect(">0"), Permissions::DELEGATE)?; + let root_acc: T::DelegationEntityId = root_acc.into(); + + let ac = DelegationAc::{ + subject_node_id: leaf_id, + max_checks: c + }; + + }: { ac.can_remove(&root_acc, &ctype, &claim, &leaf_id).expect("Should be allowed") } + verify { + } } impl_benchmark_test_suite! { diff --git a/pallets/delegation/src/default_weights.rs b/pallets/delegation/src/default_weights.rs index fe8de75aa..ea0ee5080 100644 --- a/pallets/delegation/src/default_weights.rs +++ b/pallets/delegation/src/default_weights.rs @@ -19,8 +19,8 @@ //! Autogenerated weights for delegation //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2021-11-08, STEPS: {{cmd.steps}}\, REPEAT: {{cmd.repeat}}\, LOW RANGE: {{cmd.lowest_range_values}}\, HIGH RANGE: {{cmd.highest_range_values}}\ -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 128 +//! DATE: 2022-02-22, STEPS: {{cmd.steps}}\, REPEAT: {{cmd.repeat}}\, LOW RANGE: {{cmd.lowest_range_values}}\, HIGH RANGE: {{cmd.highest_range_values}}\ +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 1024 // Executed Command: // target/release/kilt-parachain @@ -36,7 +36,6 @@ // --output=pallets/delegation/src/default_weights.rs // --template=.maintain/weight-template.hbs - #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] @@ -53,6 +52,9 @@ pub trait WeightInfo { fn revoke_delegation_leaf(r: u32, c: u32, ) -> Weight; fn remove_delegation(r: u32, ) -> Weight; fn reclaim_deposit(r: u32, ) -> Weight; + fn can_attest() -> Weight; + fn can_revoke(c: u32, ) -> Weight; + fn can_remove(c: u32, ) -> Weight; } /// Weights for delegation using the Substrate node and recommended hardware. @@ -63,115 +65,175 @@ impl WeightInfo for SubstrateWeight { // Storage: System Account (r:1 w:1) // Storage: Delegation DelegationNodes (r:0 w:1) fn create_hierarchy() -> Weight { - (47_416_000_u64) - .saturating_add(T::DbWeight::get().reads(3_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + (37_014_000 as Weight) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } // Storage: Delegation DelegationNodes (r:2 w:2) // Storage: System Account (r:1 w:1) fn add_delegation() -> Weight { - (57_220_000_u64) - .saturating_add(T::DbWeight::get().reads(3_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + (44_986_000 as Weight) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } // Storage: Delegation DelegationNodes (r:1 w:1) // Storage: Delegation DelegationHierarchies (r:1 w:0) fn revoke_delegation_root_child(r: u32, c: u32, ) -> Weight { - (22_152_000_u64) - // Standard Error: 55_000 - .saturating_add((18_681_000_u64).saturating_mul(r as Weight)) - // Standard Error: 55_000 - .saturating_add((95_000_u64).saturating_mul(c as Weight)) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(r as Weight))) - .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(r as Weight))) + (19_082_000 as Weight) + // Standard Error: 51_000 + .saturating_add((13_360_000 as Weight).saturating_mul(r as Weight)) + // Standard Error: 51_000 + .saturating_add((169_000 as Weight).saturating_mul(c as Weight)) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(r as Weight))) + .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(r as Weight))) } // Storage: Delegation DelegationNodes (r:6 w:1) // Storage: Delegation DelegationHierarchies (r:1 w:0) fn revoke_delegation_leaf(r: u32, c: u32, ) -> Weight { - (39_250_000_u64) - // Standard Error: 34_000 - .saturating_add((147_000_u64).saturating_mul(r as Weight)) - // Standard Error: 34_000 - .saturating_add((5_748_000_u64).saturating_mul(c as Weight)) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(c as Weight))) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (32_789_000 as Weight) + // Standard Error: 41_000 + .saturating_add((13_000 as Weight).saturating_mul(r as Weight)) + // Standard Error: 41_000 + .saturating_add((5_095_000 as Weight).saturating_mul(c as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(c as Weight))) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } // Storage: Delegation DelegationNodes (r:2 w:2) // Storage: System Account (r:1 w:1) // Storage: Delegation DelegationHierarchies (r:1 w:1) fn remove_delegation(r: u32, ) -> Weight { - (61_171_000_u64) - // Standard Error: 99_000 - .saturating_add((37_949_000_u64).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().reads((2_u64).saturating_mul(r as Weight))) - .saturating_add(T::DbWeight::get().writes(2_u64)) - .saturating_add(T::DbWeight::get().writes((2_u64).saturating_mul(r as Weight))) + (51_863_000 as Weight) + // Standard Error: 59_000 + .saturating_add((23_235_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(r as Weight))) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) + .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(r as Weight))) } // Storage: Delegation DelegationNodes (r:2 w:2) // Storage: System Account (r:1 w:1) // Storage: Delegation DelegationHierarchies (r:0 w:1) fn reclaim_deposit(r: u32, ) -> Weight { - (49_884_000_u64) - // Standard Error: 64_000 - .saturating_add((38_418_000_u64).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().reads((2_u64).saturating_mul(r as Weight))) - .saturating_add(T::DbWeight::get().writes(2_u64)) - .saturating_add(T::DbWeight::get().writes((2_u64).saturating_mul(r as Weight))) + (44_669_000 as Weight) + // Standard Error: 56_000 + .saturating_add((23_133_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(r as Weight))) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) + .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(r as Weight))) + } + // Storage: Delegation DelegationNodes (r:1 w:0) + // Storage: Delegation DelegationHierarchies (r:1 w:0) + fn can_attest() -> Weight { + (12_484_000 as Weight) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + } + // Storage: Delegation DelegationNodes (r:2 w:0) + fn can_revoke(c: u32, ) -> Weight { + (8_127_000 as Weight) + // Standard Error: 38_000 + .saturating_add((5_164_000 as Weight).saturating_mul(c as Weight)) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(c as Weight))) + } + // Storage: Delegation DelegationNodes (r:2 w:0) + fn can_remove(c: u32, ) -> Weight { + (7_991_000 as Weight) + // Standard Error: 35_000 + .saturating_add((5_193_000 as Weight).saturating_mul(c as Weight)) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(c as Weight))) } } // For backwards compatibility and tests impl WeightInfo for () { + // Storage: Delegation DelegationHierarchies (r:1 w:1) + // Storage: Ctype Ctypes (r:1 w:0) + // Storage: System Account (r:1 w:1) + // Storage: Delegation DelegationNodes (r:0 w:1) fn create_hierarchy() -> Weight { - (47_416_000_u64) - .saturating_add(RocksDbWeight::get().reads(3_u64)) - .saturating_add(RocksDbWeight::get().writes(3_u64)) + (37_014_000 as Weight) + .saturating_add(RocksDbWeight::get().reads(3 as Weight)) + .saturating_add(RocksDbWeight::get().writes(3 as Weight)) } + // Storage: Delegation DelegationNodes (r:2 w:2) + // Storage: System Account (r:1 w:1) fn add_delegation() -> Weight { - (57_220_000_u64) - .saturating_add(RocksDbWeight::get().reads(3_u64)) - .saturating_add(RocksDbWeight::get().writes(3_u64)) + (44_986_000 as Weight) + .saturating_add(RocksDbWeight::get().reads(3 as Weight)) + .saturating_add(RocksDbWeight::get().writes(3 as Weight)) } + // Storage: Delegation DelegationNodes (r:1 w:1) + // Storage: Delegation DelegationHierarchies (r:1 w:0) fn revoke_delegation_root_child(r: u32, c: u32, ) -> Weight { - (22_152_000_u64) - // Standard Error: 55_000 - .saturating_add((18_681_000_u64).saturating_mul(r as Weight)) - // Standard Error: 55_000 - .saturating_add((95_000_u64).saturating_mul(c as Weight)) - .saturating_add(RocksDbWeight::get().reads(1_u64)) - .saturating_add(RocksDbWeight::get().reads((1_u64).saturating_mul(r as Weight))) - .saturating_add(RocksDbWeight::get().writes((1_u64).saturating_mul(r as Weight))) + (19_082_000 as Weight) + // Standard Error: 51_000 + .saturating_add((13_360_000 as Weight).saturating_mul(r as Weight)) + // Standard Error: 51_000 + .saturating_add((169_000 as Weight).saturating_mul(c as Weight)) + .saturating_add(RocksDbWeight::get().reads(1 as Weight)) + .saturating_add(RocksDbWeight::get().reads((1 as Weight).saturating_mul(r as Weight))) + .saturating_add(RocksDbWeight::get().writes((1 as Weight).saturating_mul(r as Weight))) } + // Storage: Delegation DelegationNodes (r:6 w:1) + // Storage: Delegation DelegationHierarchies (r:1 w:0) fn revoke_delegation_leaf(r: u32, c: u32, ) -> Weight { - (39_250_000_u64) - // Standard Error: 34_000 - .saturating_add((147_000_u64).saturating_mul(r as Weight)) - // Standard Error: 34_000 - .saturating_add((5_748_000_u64).saturating_mul(c as Weight)) - .saturating_add(RocksDbWeight::get().reads(2_u64)) - .saturating_add(RocksDbWeight::get().reads((1_u64).saturating_mul(c as Weight))) - .saturating_add(RocksDbWeight::get().writes(1_u64)) + (32_789_000 as Weight) + // Standard Error: 41_000 + .saturating_add((13_000 as Weight).saturating_mul(r as Weight)) + // Standard Error: 41_000 + .saturating_add((5_095_000 as Weight).saturating_mul(c as Weight)) + .saturating_add(RocksDbWeight::get().reads(2 as Weight)) + .saturating_add(RocksDbWeight::get().reads((1 as Weight).saturating_mul(c as Weight))) + .saturating_add(RocksDbWeight::get().writes(1 as Weight)) } + // Storage: Delegation DelegationNodes (r:2 w:2) + // Storage: System Account (r:1 w:1) + // Storage: Delegation DelegationHierarchies (r:1 w:1) fn remove_delegation(r: u32, ) -> Weight { - (61_171_000_u64) - // Standard Error: 99_000 - .saturating_add((37_949_000_u64).saturating_mul(r as Weight)) - .saturating_add(RocksDbWeight::get().reads(2_u64)) - .saturating_add(RocksDbWeight::get().reads((2_u64).saturating_mul(r as Weight))) - .saturating_add(RocksDbWeight::get().writes(2_u64)) - .saturating_add(RocksDbWeight::get().writes((2_u64).saturating_mul(r as Weight))) + (51_863_000 as Weight) + // Standard Error: 59_000 + .saturating_add((23_235_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(RocksDbWeight::get().reads(3 as Weight)) + .saturating_add(RocksDbWeight::get().reads((1 as Weight).saturating_mul(r as Weight))) + .saturating_add(RocksDbWeight::get().writes(3 as Weight)) + .saturating_add(RocksDbWeight::get().writes((1 as Weight).saturating_mul(r as Weight))) } + // Storage: Delegation DelegationNodes (r:2 w:2) + // Storage: System Account (r:1 w:1) + // Storage: Delegation DelegationHierarchies (r:0 w:1) fn reclaim_deposit(r: u32, ) -> Weight { - (49_884_000_u64) - // Standard Error: 64_000 - .saturating_add((38_418_000_u64).saturating_mul(r as Weight)) - .saturating_add(RocksDbWeight::get().reads(1_u64)) - .saturating_add(RocksDbWeight::get().reads((2_u64).saturating_mul(r as Weight))) - .saturating_add(RocksDbWeight::get().writes(2_u64)) - .saturating_add(RocksDbWeight::get().writes((2_u64).saturating_mul(r as Weight))) + (44_669_000 as Weight) + // Standard Error: 56_000 + .saturating_add((23_133_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(RocksDbWeight::get().reads(2 as Weight)) + .saturating_add(RocksDbWeight::get().reads((1 as Weight).saturating_mul(r as Weight))) + .saturating_add(RocksDbWeight::get().writes(3 as Weight)) + .saturating_add(RocksDbWeight::get().writes((1 as Weight).saturating_mul(r as Weight))) + } + // Storage: Delegation DelegationNodes (r:1 w:0) + // Storage: Delegation DelegationHierarchies (r:1 w:0) + fn can_attest() -> Weight { + (12_484_000 as Weight) + .saturating_add(RocksDbWeight::get().reads(2 as Weight)) + } + // Storage: Delegation DelegationNodes (r:2 w:0) + fn can_revoke(c: u32, ) -> Weight { + (8_127_000 as Weight) + // Standard Error: 38_000 + .saturating_add((5_164_000 as Weight).saturating_mul(c as Weight)) + .saturating_add(RocksDbWeight::get().reads(1 as Weight)) + .saturating_add(RocksDbWeight::get().reads((1 as Weight).saturating_mul(c as Weight))) + } + // Storage: Delegation DelegationNodes (r:2 w:0) + fn can_remove(c: u32, ) -> Weight { + (7_991_000 as Weight) + // Standard Error: 35_000 + .saturating_add((5_193_000 as Weight).saturating_mul(c as Weight)) + .saturating_add(RocksDbWeight::get().reads(1 as Weight)) + .saturating_add(RocksDbWeight::get().reads((1 as Weight).saturating_mul(c as Weight))) } } diff --git a/pallets/delegation/src/lib.rs b/pallets/delegation/src/lib.rs index 8bb9d9118..d9ccb744d 100644 --- a/pallets/delegation/src/lib.rs +++ b/pallets/delegation/src/lib.rs @@ -73,9 +73,9 @@ #![cfg_attr(not(feature = "std"), no_std)] #![allow(clippy::unused_unit)] +mod access_control; pub mod default_weights; pub mod delegation_hierarchy; -pub mod migrations; #[cfg(any(feature = "mock", test))] pub mod mock; @@ -86,8 +86,9 @@ pub mod benchmarking; #[cfg(test)] mod tests; -pub use crate::{default_weights::WeightInfo, delegation_hierarchy::*, pallet::*}; +pub use crate::{access_control::DelegationAc, default_weights::WeightInfo, delegation_hierarchy::*, pallet::*}; +use codec::Encode; use frame_support::{ dispatch::DispatchResult, ensure, @@ -272,6 +273,8 @@ pub mod pallet { UnauthorizedRemoval, /// The delegation creator is not allowed to create the delegation. UnauthorizedDelegation, + /// The operation wasn't allowed because of insufficient rights. + AccessDenied, /// Max number of revocations for delegation nodes has been reached for /// the operation. ExceededRevocationBounds, diff --git a/pallets/delegation/src/migrations.rs b/pallets/delegation/src/migrations.rs deleted file mode 100644 index 01fe55e0a..000000000 --- a/pallets/delegation/src/migrations.rs +++ /dev/null @@ -1,103 +0,0 @@ -// KILT Blockchain – https://botlabs.org -// Copyright (C) 2019-2022 BOTLabs GmbH - -// The KILT Blockchain is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. - -// The KILT Blockchain is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. - -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -// If you feel like getting in touch with us, you can do so at info@botlabs.org - -use codec::{Decode, Encode, MaxEncodedLen}; -use scale_info::TypeInfo; - -// FIXME: Remove when migrating to v8 -// #[deprecated(note = "use the pallet's `current_storage_version()` instead")] -/// Storage version of the delegation pallet. -#[derive(Copy, Clone, Encode, Eq, Decode, Ord, PartialEq, PartialOrd, TypeInfo, MaxEncodedLen)] -pub enum DelegationStorageVersion { - V1, - V2, -} - -// All nodes will default to this, which is not bad, as in case the "real" -// version is a later one (i.e. the node has been started with already the -// latest version), the migration will simply do nothing as there's nothing in -// the old storage entries to migrate from. -// -// It might get updated in the future when we know that no node is running this -// old version anymore. -impl Default for DelegationStorageVersion { - fn default() -> Self { - Self::V2 - } -} - -pub mod v3 { - use super::*; - use crate::{Config, Pallet}; - - #[cfg(feature = "try-runtime")] - use frame_support::traits::GetStorageVersion; - - use frame_support::{ - generate_storage_alias, - pallet_prelude::Weight, - traits::{Get, OnRuntimeUpgrade, PalletInfoAccess, StorageVersion as NewStorageVersion}, - }; - use log::info; - use sp_std::marker::PhantomData; - - // Get storage item into scope which are removed during this migration - generate_storage_alias!(Delegation, StorageVersion => Value); - - pub struct DelegationMigrationV3(PhantomData); - - impl OnRuntimeUpgrade for DelegationMigrationV3 { - #[cfg(feature = "try-runtime")] - fn pre_upgrade() -> Result<(), &'static str> { - assert!(StorageVersion::get() == Some(DelegationStorageVersion::V2)); - - info!("👥 Delegation pallet to v3 passes PRE migrate checks ✅",); - Ok(()) - } - - fn on_runtime_upgrade() -> Weight { - // remove deprecated storage versioning entry - frame_support::migration::remove_storage_prefix(Pallet::::name().as_bytes(), b"StorageVersion", &[]); - - NewStorageVersion::new(3).put::>(); - - info!("👥 completed Delegation pallet migration to v3 ✅",); - T::DbWeight::get().reads_writes(0, 2) - } - - #[cfg(feature = "try-runtime")] - fn post_upgrade() -> Result<(), &'static str> { - // check StorageVersion - assert!( - !frame_support::migration::have_storage_value(Pallet::::name().as_bytes(), b"StorageVersion", &[]), - "Old StorageVersion should not exist anymore" - ); - assert_eq!( - Pallet::::current_storage_version(), - 3, - "StorageVersion should have migrated to new paradigm" - ); - - info!( - "👥 Delegation pallet migration to {:?} passes POST migrate checks ✅", - Pallet::::current_storage_version() - ); - Ok(()) - } - } -} diff --git a/pallets/delegation/src/mock.rs b/pallets/delegation/src/mock.rs index 94f91a50b..ef30b34af 100644 --- a/pallets/delegation/src/mock.rs +++ b/pallets/delegation/src/mock.rs @@ -30,6 +30,9 @@ use crate::{ DelegatorIdOf, Permissions, }; +#[cfg(test)] +pub use self::runtime::*; + const DEFAULT_HIERARCHY_ID_SEED: u64 = 1u64; const ALTERNATIVE_HIERARCHY_ID_SEED: u64 = 2u64; @@ -165,35 +168,38 @@ where } #[cfg(test)] -pub mod runtime { - use crate::BalanceOf; +pub(crate) mod runtime { + use crate::{BalanceOf, DelegateSignatureTypeOf, DelegationAc, DelegationNodeIdOf}; use super::*; use codec::Encode; use frame_support::{parameter_types, weights::constants::RocksDbWeight}; use sp_core::{ed25519, sr25519, Pair}; - use sp_keystore::{testing::KeyStore, KeystoreExt}; use sp_runtime::{ testing::Header, - traits::{BlakeTwo256, IdentifyAccount, IdentityLookup}, - MultiSigner, + traits::{BlakeTwo256, IdentifyAccount, IdentityLookup, Verify}, + MultiSignature, MultiSigner, }; - use sp_std::sync::Arc; + use attestation::{mock::insert_attestation, AttestationDetails, ClaimHashOf}; use kilt_support::{ mock::{mock_origin, SubjectId}, signature::EqualVerify, }; - use runtime_common::constants::delegation::DELEGATION_DEPOSIT; - pub type UncheckedExtrinsic = frame_system::mocking::MockUncheckedExtrinsic; - pub type Block = frame_system::mocking::MockBlock; + pub(crate) type UncheckedExtrinsic = frame_system::mocking::MockUncheckedExtrinsic; + pub(crate) type Block = frame_system::mocking::MockBlock; + + pub(crate) type Hash = sp_core::H256; + pub(crate) type Balance = u128; + pub(crate) type Signature = MultiSignature; + pub(crate) type AccountPublic = ::Signer; + pub(crate) type AccountId = ::AccountId; - type TestDelegationNodeId = runtime_common::Hash; - type TestDelegateSignature = (SubjectId, Vec); - type TestBalance = runtime_common::Balance; - type TestCtypeHash = runtime_common::Hash; + pub(crate) const MILLI_UNIT: Balance = 10u128.pow(12); + pub(crate) const DELEGATION_DEPOSIT: Balance = 10 * MILLI_UNIT; + pub(crate) const ATTESTATION_DEPOSIT: Balance = 10 * MILLI_UNIT; frame_support::construct_runtime!( pub enum Test where @@ -202,10 +208,12 @@ pub mod runtime { UncheckedExtrinsic = UncheckedExtrinsic, { System: frame_system::{Pallet, Call, Config, Storage, Event}, - Ctype: ctype::{Pallet, Call, Storage, Event}, - Delegation: delegation::{Pallet, Call, Storage, Event}, Balances: pallet_balances::{Pallet, Call, Storage, Event}, - MockOrigin: mock_origin::{Pallet, Origin}, + + Attestation: attestation, + Ctype: ctype, + Delegation: delegation, + MockOrigin: mock_origin, } ); @@ -219,9 +227,9 @@ pub mod runtime { type Call = Call; type Index = u64; type BlockNumber = u64; - type Hash = runtime_common::Hash; + type Hash = Hash; type Hashing = BlakeTwo256; - type AccountId = runtime_common::AccountId; + type AccountId = AccountId; type Lookup = IdentityLookup; type Header = Header; type Event = (); @@ -230,7 +238,7 @@ pub mod runtime { type Version = (); type PalletInfo = PalletInfo; - type AccountData = pallet_balances::AccountData; + type AccountData = pallet_balances::AccountData; type OnNewAccount = (); type OnKilledAccount = (); type BaseCallFilter = frame_support::traits::Everything; @@ -243,13 +251,13 @@ pub mod runtime { } parameter_types! { - pub const ExistentialDeposit: TestBalance = 0; + pub const ExistentialDeposit: Balance = 0; pub const MaxLocks: u32 = 50; pub const MaxReserves: u32 = 50; } impl pallet_balances::Config for Test { - type Balance = TestBalance; + type Balance = Balance; type DustRemoval = (); type Event = (); type ExistentialDeposit = ExistentialDeposit; @@ -262,18 +270,18 @@ pub mod runtime { impl mock_origin::Config for Test { type Origin = Origin; - type AccountId = runtime_common::AccountId; + type AccountId = AccountId; type SubjectId = SubjectId; } parameter_types! { - pub const Fee: TestBalance = 500; + pub const Fee: Balance = 500; } impl ctype::Config for Test { type CtypeCreatorId = SubjectId; - type EnsureOrigin = mock_origin::EnsureDoubleOrigin; - type OriginSuccess = mock_origin::DoubleOrigin; + type EnsureOrigin = mock_origin::EnsureDoubleOrigin; + type OriginSuccess = mock_origin::DoubleOrigin; type Event = (); type WeightInfo = (); @@ -282,6 +290,25 @@ pub mod runtime { type FeeCollector = (); } + parameter_types! { + pub const MaxDelegatedAttestations: u32 = 1000; + pub const Deposit: Balance = ATTESTATION_DEPOSIT; + } + + impl attestation::Config for Test { + type EnsureOrigin = mock_origin::EnsureDoubleOrigin>; + type OriginSuccess = mock_origin::DoubleOrigin>; + type Event = (); + type WeightInfo = (); + + type Currency = Balances; + type Deposit = Deposit; + type MaxDelegatedAttestations = MaxDelegatedAttestations; + type AttesterId = SubjectId; + type AuthorizationId = DelegationNodeIdOf; + type AccessControl = DelegationAc; + } + parameter_types! { pub const MaxSignatureByteLength: u16 = 64; pub const MaxParentChecks: u32 = 5; @@ -289,16 +316,16 @@ pub mod runtime { pub const MaxRemovals: u32 = 5; #[derive(Clone)] pub const MaxChildren: u32 = 1000; - pub const DepositMock: TestBalance = DELEGATION_DEPOSIT; + pub const DepositMock: Balance = DELEGATION_DEPOSIT; } impl Config for Test { - type Signature = TestDelegateSignature; + type Signature = (SubjectId, Vec); type DelegationSignatureVerification = EqualVerify>; type DelegationEntityId = SubjectId; - type DelegationNodeId = TestDelegationNodeId; - type EnsureOrigin = mock_origin::EnsureDoubleOrigin; - type OriginSuccess = mock_origin::DoubleOrigin; + type DelegationNodeId = Hash; + type EnsureOrigin = mock_origin::EnsureDoubleOrigin; + type OriginSuccess = mock_origin::DoubleOrigin; type Event = (); type MaxSignatureByteLength = MaxSignatureByteLength; type MaxParentChecks = MaxParentChecks; @@ -310,42 +337,48 @@ pub mod runtime { type WeightInfo = (); } - pub(crate) const ACCOUNT_00: runtime_common::AccountId = runtime_common::AccountId::new([1u8; 32]); - pub(crate) const ACCOUNT_01: runtime_common::AccountId = runtime_common::AccountId::new([2u8; 32]); - pub(crate) const ACCOUNT_02: runtime_common::AccountId = runtime_common::AccountId::new([3u8; 32]); + pub(crate) const ACCOUNT_00: AccountId = AccountId::new([1u8; 32]); + pub(crate) const ACCOUNT_01: AccountId = AccountId::new([2u8; 32]); + pub(crate) const ACCOUNT_02: AccountId = AccountId::new([3u8; 32]); pub(crate) const ALICE_SEED: [u8; 32] = [0u8; 32]; pub(crate) const BOB_SEED: [u8; 32] = [1u8; 32]; pub(crate) const CHARLIE_SEED: [u8; 32] = [2u8; 32]; - pub fn ed25519_did_from_seed(seed: &[u8; 32]) -> SubjectId { + pub(crate) const CLAIM_HASH_SEED_01: u64 = 1u64; + + pub(crate) fn claim_hash_from_seed(seed: u64) -> Hash { + Hash::from_low_u64_be(seed) + } + + pub(crate) fn ed25519_did_from_seed(seed: &[u8; 32]) -> SubjectId { MultiSigner::from(ed25519::Pair::from_seed(seed).public()) .into_account() .into() } - pub fn sr25519_did_from_seed(seed: &[u8; 32]) -> SubjectId { + pub(crate) fn sr25519_did_from_seed(seed: &[u8; 32]) -> SubjectId { MultiSigner::from(sr25519::Pair::from_seed(seed).public()) .into_account() .into() } - pub(crate) fn hash_to_u8(hash: T) -> Vec { + pub(crate) fn hash_to_u8(hash: Hash) -> Vec { hash.encode() } - pub struct DelegationCreationOperation { - pub delegation_id: TestDelegationNodeId, - pub hierarchy_id: TestDelegationNodeId, - pub parent_id: TestDelegationNodeId, + pub(crate) struct DelegationCreationOperation { + pub delegation_id: DelegationNodeIdOf, + pub hierarchy_id: DelegationNodeIdOf, + pub parent_id: DelegationNodeIdOf, pub delegate: SubjectId, pub permissions: Permissions, - pub delegate_signature: TestDelegateSignature, + pub delegate_signature: DelegateSignatureTypeOf, } - pub fn generate_base_delegation_creation_operation( - delegation_id: TestDelegationNodeId, - delegate_signature: TestDelegateSignature, + pub(crate) fn generate_base_delegation_creation_operation( + delegation_id: DelegationNodeIdOf, + delegate_signature: DelegateSignatureTypeOf, delegation_node: DelegationNode, ) -> DelegationCreationOperation { DelegationCreationOperation { @@ -360,30 +393,30 @@ pub mod runtime { } } - pub struct DelegationHierarchyRevocationOperation { - pub id: TestDelegationNodeId, + pub(crate) struct DelegationHierarchyRevocationOperation { + pub id: DelegationNodeIdOf, pub max_children: u32, } - pub fn generate_base_delegation_hierarchy_revocation_operation( - id: TestDelegationNodeId, + pub(crate) fn generate_base_delegation_hierarchy_revocation_operation( + id: DelegationNodeIdOf, ) -> DelegationHierarchyRevocationOperation { DelegationHierarchyRevocationOperation { id, max_children: 0u32 } } - pub struct DelegationRevocationOperation { - pub delegation_id: TestDelegationNodeId, + pub(crate) struct DelegationRevocationOperation { + pub delegation_id: DelegationNodeIdOf, pub max_parent_checks: u32, pub max_revocations: u32, } - pub struct DelegationDepositClaimOperation { - pub delegation_id: TestDelegationNodeId, + pub(crate) struct DelegationDepositClaimOperation { + pub delegation_id: DelegationNodeIdOf, pub max_removals: u32, } - pub fn generate_base_delegation_revocation_operation( - delegation_id: TestDelegationNodeId, + pub(crate) fn generate_base_delegation_revocation_operation( + delegation_id: DelegationNodeIdOf, ) -> DelegationRevocationOperation { DelegationRevocationOperation { delegation_id, @@ -392,8 +425,8 @@ pub mod runtime { } } - pub fn generate_base_delegation_deposit_claim_operation( - delegation_id: TestDelegationNodeId, + pub(crate) fn generate_base_delegation_deposit_claim_operation( + delegation_id: DelegationNodeIdOf, ) -> DelegationDepositClaimOperation { DelegationDepositClaimOperation { delegation_id, @@ -402,13 +435,14 @@ pub mod runtime { } #[derive(Clone, Default)] - pub struct ExtBuilder { + pub(crate) struct ExtBuilder { /// endowed accounts with balances balances: Vec<(AccountIdOf, BalanceOf)>, /// initial ctypes & owners - ctypes: Vec<(TestCtypeHash, SubjectId)>, - delegation_hierarchies_stored: DelegationHierarchyInitialization, - delegations_stored: Vec<(TestDelegationNodeId, DelegationNode)>, + ctypes: Vec<(CtypeHashOf, SubjectId)>, + delegation_hierarchies: DelegationHierarchyInitialization, + delegations: Vec<(DelegationNodeIdOf, DelegationNode)>, + attestations: Vec<(ClaimHashOf, AttestationDetails)>, } impl ExtBuilder { @@ -417,7 +451,7 @@ pub mod runtime { mut self, delegation_hierarchies: DelegationHierarchyInitialization, ) -> Self { - self.delegation_hierarchies_stored = delegation_hierarchies; + self.delegation_hierarchies = delegation_hierarchies; self } @@ -428,14 +462,20 @@ pub mod runtime { } #[must_use] - pub fn with_ctypes(mut self, ctypes: Vec<(TestCtypeHash, SubjectId)>) -> Self { + pub fn with_ctypes(mut self, ctypes: Vec<(CtypeHashOf, SubjectId)>) -> Self { self.ctypes = ctypes; self } #[must_use] - pub fn with_delegations(mut self, delegations: Vec<(TestDelegationNodeId, DelegationNode)>) -> Self { - self.delegations_stored = delegations; + pub fn with_delegations(mut self, delegations: Vec<(DelegationNodeIdOf, DelegationNode)>) -> Self { + self.delegations = delegations; + self + } + + #[must_use] + pub fn with_attestations(mut self, attestations: Vec<(ClaimHashOf, AttestationDetails)>) -> Self { + self.attestations = attestations; self } @@ -454,7 +494,11 @@ pub mod runtime { ctype::Ctypes::::insert(ctype_hash, owner); } - initialize_pallet(self.delegations_stored, self.delegation_hierarchies_stored); + initialize_pallet(self.delegations, self.delegation_hierarchies); + + for (claim_hash, details) in self.attestations { + insert_attestation(claim_hash, details) + } }); ext @@ -464,8 +508,8 @@ pub mod runtime { pub fn build_with_keystore(self) -> sp_io::TestExternalities { let mut ext = self.build(); - let keystore = KeyStore::new(); - ext.register_extension(KeystoreExt(Arc::new(keystore))); + let keystore = sp_keystore::testing::KeyStore::new(); + ext.register_extension(sp_keystore::KeystoreExt(sp_std::sync::Arc::new(keystore))); ext } diff --git a/pallets/did/Cargo.toml b/pallets/did/Cargo.toml index 4dedc9d28..8a3496960 100644 --- a/pallets/did/Cargo.toml +++ b/pallets/did/Cargo.toml @@ -4,52 +4,51 @@ description = "Enables adding and removing decentralized identifiers (DIDs)." edition = "2021" name = "did" repository = "https://github.com/KILTprotocol/mashnet-node" -version = "1.6.2" +version = "1.7.0" [package.metadata.docs.rs] targets = ["x86_64-unknown-linux-gnu"] [build-dependencies] -substrate-wasm-builder-runner = {version = "3.0.0"} +substrate-wasm-builder = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} [dev-dependencies] -env_logger = {version = "0.8.3"} -serde = {version = "1.0.132"} +env_logger = "0.9.0" +serde = "1.0.137" ctype = {features = ["mock"], path = "../ctype"} -pallet-balances = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -runtime-common = {default-features = false, path = "../../runtimes/common"} + +frame-benchmarking = {branch = "polkadot-v0.9.24", git = "https://github.com/paritytech/substrate"} +pallet-balances = {branch = "polkadot-v0.9.24", git = "https://github.com/paritytech/substrate"} +sp-keystore = {branch = "polkadot-v0.9.24", git = "https://github.com/paritytech/substrate"} [dependencies] # Internal dependencies -ctype = {optional = true, path = "../ctype"} +ctype = {path = "../ctype", optional = true} kilt-support = {default-features = false, path = "../../support"} -runtime-common = {default-features = false, path = "../../runtimes/common"} # External dependencies -env_logger = {default-features = false, optional = true, version = "0.8.3"} -hex = {default-features = false, features = ["alloc"], version = "0.4.2"} -log = "0.4" +hex = {default-features = false, features = ["alloc"], version = "0.4.3"} +log = "0.4.17" -codec = {default-features = false, features = ["derive"], package = "parity-scale-codec", version = "2.3.1"} -frame-support = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -frame-system = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -scale-info = {version = "1.0", default-features = false, features = ["derive"]} -sp-core = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-io = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-runtime = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-std = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} +codec = {package = "parity-scale-codec", version = "3.1.2", default-features = false, features = ["derive"]} +frame-support = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +frame-system = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +scale-info = {version = "2.1.1", default-features = false, features = ["derive"]} +sp-core = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +sp-io = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +sp-runtime = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +sp-std = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} # benchmarking -frame-benchmarking = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate", optional = true} -pallet-balances = {optional = true, branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-keystore = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate", optional = true} +frame-benchmarking = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate", optional = true} +pallet-balances = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate", optional = true} +sp-keystore = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate", optional = true} [features] default = ["std"] mock = [ "ctype", - "env_logger", "pallet-balances", "sp-keystore", ] @@ -59,6 +58,7 @@ runtime-benchmarks = [ "pallet-balances/runtime-benchmarks", "frame-support/runtime-benchmarks", "frame-system/runtime-benchmarks", + "kilt-support/runtime-benchmarks", ] std = [ "codec/std", @@ -66,8 +66,6 @@ std = [ "frame-support/std", "frame-system/std", "hex/std", - "runtime-common/std", - "kilt-support/std", "kilt-support/std", "log/std", "pallet-balances/std", diff --git a/pallets/did/src/benchmarking.rs b/pallets/did/src/benchmarking.rs index ce5699ca9..785bd3a04 100644 --- a/pallets/did/src/benchmarking.rs +++ b/pallets/did/src/benchmarking.rs @@ -23,10 +23,9 @@ use frame_benchmarking::{account, benchmarks, impl_benchmark_test_suite, Zero}; use frame_support::{assert_ok, traits::Currency}; use frame_system::RawOrigin; use kilt_support::signature::VerifySignature; -use runtime_common::AccountId; use sp_core::{crypto::KeyTypeId, ecdsa, ed25519, sr25519}; use sp_io::crypto::{ecdsa_generate, ecdsa_sign, ed25519_generate, ed25519_sign, sr25519_generate, sr25519_sign}; -use sp_runtime::{traits::IdentifyAccount, MultiSigner}; +use sp_runtime::{traits::IdentifyAccount, AccountId32, MultiSigner}; use sp_std::{convert::TryInto, vec::Vec}; use crate::{ @@ -118,9 +117,9 @@ fn save_service_endpoints(did_subject: &DidIdentifierOf, endpoints benchmarks! { where_clause { where - T::DidIdentifier: From, + T::DidIdentifier: From, ::Origin: From>, - ::AccountId: From, + ::AccountId: From, } /* create extrinsic */ @@ -263,7 +262,7 @@ benchmarks! { make_free_for_did::(&submitter); let did_public_auth_key = get_ecdsa_public_authentication_key(); - let did_subject: DidIdentifierOf = MultiSigner::from(did_public_auth_key.clone()).into_account().into(); + let did_subject: DidIdentifierOf = MultiSigner::from(did_public_auth_key).into_account().into(); let did_key_agreement_keys = get_key_agreement_keys::(n); let did_public_att_key = get_ecdsa_public_attestation_key(); let did_public_del_key = get_ecdsa_public_delegation_key(); @@ -278,8 +277,8 @@ benchmarks! { let mut did_creation_details = generate_base_did_creation_details::(did_subject.clone(), submitter.clone()); did_creation_details.new_key_agreement_keys = did_key_agreement_keys; - did_creation_details.new_attestation_key = Some(DidVerificationKey::from(did_public_att_key.clone())); - did_creation_details.new_delegation_key = Some(DidVerificationKey::from(did_public_del_key.clone())); + did_creation_details.new_attestation_key = Some(DidVerificationKey::from(did_public_att_key)); + did_creation_details.new_delegation_key = Some(DidVerificationKey::from(did_public_del_key)); did_creation_details.new_service_details = service_endpoints.clone(); let did_creation_signature = ecdsa_sign(AUTHENTICATION_KEY_ID, &did_public_auth_key, did_creation_details.encode().as_ref()).expect("Failed to create DID signature from raw ecdsa signature."); @@ -416,9 +415,9 @@ benchmarks! { let submitter: AccountIdOf = account(DEFAULT_ACCOUNT_ID, 0, DEFAULT_ACCOUNT_SEED); let did_public_auth_key = get_ecdsa_public_authentication_key(); - let did_subject: DidIdentifierOf = MultiSigner::from(did_public_auth_key.clone()).into_account().into(); + let did_subject: DidIdentifierOf = MultiSigner::from(did_public_auth_key).into_account().into(); - let did_details = generate_base_did_details::(DidVerificationKey::from(did_public_auth_key.clone())); + let did_details = generate_base_did_details::(DidVerificationKey::from(did_public_auth_key)); Did::::insert(&did_subject, did_details); let did_call_op = generate_base_did_call_operation::(did_subject, submitter.clone()); @@ -470,7 +469,7 @@ benchmarks! { set_ecdsa_authentication_key { let block_number = T::BlockNumber::zero(); let old_did_public_auth_key = get_ecdsa_public_authentication_key(); - let did_subject: DidIdentifierOf = MultiSigner::from(old_did_public_auth_key.clone()).into_account().into(); + let did_subject: DidIdentifierOf = MultiSigner::from(old_did_public_auth_key).into_account().into(); // fill up public keys to its max size because max public keys = # of max key agreement keys + 3 let mut did_details = generate_base_did_details::(DidVerificationKey::from(old_did_public_auth_key)); @@ -481,7 +480,7 @@ benchmarks! { Did::::insert(&did_subject, did_details); let new_did_public_auth_key = ecdsa_generate(UNUSED_KEY_ID, None); - }: set_authentication_key(RawOrigin::Signed(did_subject.clone()), DidVerificationKey::from(new_did_public_auth_key.clone())) + }: set_authentication_key(RawOrigin::Signed(did_subject.clone()), DidVerificationKey::from(new_did_public_auth_key)) verify { let auth_key_id = utils::calculate_key_id::(&DidPublicKey::from(DidVerificationKey::from(new_did_public_auth_key))); assert_eq!(Did::::get(&did_subject).unwrap().authentication_key, auth_key_id); @@ -531,7 +530,7 @@ benchmarks! { set_ecdsa_delegation_key { let block_number = T::BlockNumber::zero(); let public_auth_key = get_ecdsa_public_authentication_key(); - let did_subject: DidIdentifierOf = MultiSigner::from(public_auth_key.clone()).into_account().into(); + let did_subject: DidIdentifierOf = MultiSigner::from(public_auth_key).into_account().into(); let old_delegation_key = get_ecdsa_public_delegation_key(); let new_delegation_key = ecdsa_generate(UNUSED_KEY_ID, None); @@ -542,7 +541,7 @@ benchmarks! { assert_ok!(did_details.update_delegation_key(DidVerificationKey::from(old_delegation_key), block_number)); Did::::insert(&did_subject, did_details); - }: set_delegation_key(RawOrigin::Signed(did_subject.clone()), DidVerificationKey::from(new_delegation_key.clone())) + }: set_delegation_key(RawOrigin::Signed(did_subject.clone()), DidVerificationKey::from(new_delegation_key)) verify { let new_delegation_key_id = utils::calculate_key_id::(&DidPublicKey::from(DidVerificationKey::from(new_delegation_key))); assert_eq!(Did::::get(&did_subject).unwrap().delegation_key, Some(new_delegation_key_id)); @@ -594,14 +593,14 @@ benchmarks! { remove_ecdsa_delegation_key { let block_number = T::BlockNumber::zero(); let public_auth_key = get_ecdsa_public_authentication_key(); - let did_subject: DidIdentifierOf = MultiSigner::from(public_auth_key.clone()).into_account().into(); + let did_subject: DidIdentifierOf = MultiSigner::from(public_auth_key).into_account().into(); let old_delegation_key = get_ecdsa_public_delegation_key(); // fill up public keys to its max size because max public keys = # of max key agreement keys + 3 let mut did_details = generate_base_did_details::(DidVerificationKey::from(public_auth_key)); assert_ok!(did_details.add_key_agreement_keys(get_key_agreement_keys::(T::MaxNewKeyAgreementKeys::get()), block_number)); assert_ok!(did_details.update_attestation_key(DidVerificationKey::from(get_ecdsa_public_attestation_key()), block_number)); - assert_ok!(did_details.update_delegation_key(DidVerificationKey::from(old_delegation_key.clone()), block_number)); + assert_ok!(did_details.update_delegation_key(DidVerificationKey::from(old_delegation_key), block_number)); Did::::insert(&did_subject, did_details); }: remove_delegation_key(RawOrigin::Signed(did_subject.clone())) @@ -656,7 +655,7 @@ benchmarks! { set_ecdsa_attestation_key { let block_number = T::BlockNumber::zero(); let public_auth_key = get_ecdsa_public_authentication_key(); - let did_subject: DidIdentifierOf = MultiSigner::from(public_auth_key.clone()).into_account().into(); + let did_subject: DidIdentifierOf = MultiSigner::from(public_auth_key).into_account().into(); let old_attestation_key = get_ecdsa_public_attestation_key(); let new_attestation_key = ecdsa_generate(UNUSED_KEY_ID, None); @@ -667,7 +666,7 @@ benchmarks! { assert_ok!(did_details.update_attestation_key(DidVerificationKey::from(old_attestation_key), block_number)); Did::::insert(&did_subject, did_details); - }: set_attestation_key(RawOrigin::Signed(did_subject.clone()), DidVerificationKey::from(new_attestation_key.clone())) + }: set_attestation_key(RawOrigin::Signed(did_subject.clone()), DidVerificationKey::from(new_attestation_key)) verify { let new_attestation_key_id = utils::calculate_key_id::(&DidPublicKey::from(DidVerificationKey::from(new_attestation_key))); assert_eq!(Did::::get(&did_subject).unwrap().attestation_key, Some(new_attestation_key_id)); @@ -719,14 +718,14 @@ benchmarks! { remove_ecdsa_attestation_key { let block_number = T::BlockNumber::zero(); let public_auth_key = get_ecdsa_public_authentication_key(); - let did_subject: DidIdentifierOf = MultiSigner::from(public_auth_key.clone()).into_account().into(); + let did_subject: DidIdentifierOf = MultiSigner::from(public_auth_key).into_account().into(); let old_attestation_key = get_ecdsa_public_attestation_key(); // fill up public keys to its max size because max public keys = # of max key agreement keys + 3 let mut did_details = generate_base_did_details::(DidVerificationKey::from(public_auth_key)); assert_ok!(did_details.add_key_agreement_keys(get_key_agreement_keys::(T::MaxNewKeyAgreementKeys::get()), block_number)); assert_ok!(did_details.update_delegation_key(DidVerificationKey::from(get_ecdsa_public_delegation_key()), block_number)); - assert_ok!(did_details.update_attestation_key(DidVerificationKey::from(old_attestation_key.clone()), block_number)); + assert_ok!(did_details.update_attestation_key(DidVerificationKey::from(old_attestation_key), block_number)); Did::::insert(&did_subject, did_details); }: remove_attestation_key(RawOrigin::Signed(did_subject.clone())) @@ -787,7 +786,7 @@ benchmarks! { add_ecdsa_key_agreement_key { let block_number = T::BlockNumber::zero(); let public_auth_key = get_ecdsa_public_authentication_key(); - let did_subject: DidIdentifierOf = MultiSigner::from(public_auth_key.clone()).into_account().into(); + let did_subject: DidIdentifierOf = MultiSigner::from(public_auth_key).into_account().into(); let mut key_agreement_keys = get_key_agreement_keys::(T::MaxNewKeyAgreementKeys::get()); // remove first entry @@ -855,7 +854,7 @@ benchmarks! { remove_ecdsa_key_agreement_key { let block_number = T::BlockNumber::zero(); let public_auth_key = get_ecdsa_public_authentication_key(); - let did_subject: DidIdentifierOf = MultiSigner::from(public_auth_key.clone()).into_account().into(); + let did_subject: DidIdentifierOf = MultiSigner::from(public_auth_key).into_account().into(); let key_agreement_keys = get_key_agreement_keys::(T::MaxNewKeyAgreementKeys::get()); // get first entry @@ -876,7 +875,7 @@ benchmarks! { add_service_endpoint { let public_auth_key = get_ecdsa_public_authentication_key(); - let did_subject: DidIdentifierOf = MultiSigner::from(public_auth_key.clone()).into_account().into(); + let did_subject: DidIdentifierOf = MultiSigner::from(public_auth_key).into_account().into(); // Max allowed - 1. let old_service_endpoints = get_service_endpoints::( T::MaxNumberOfServicesPerDid::get() - 1, @@ -919,7 +918,7 @@ benchmarks! { remove_service_endpoint { let public_auth_key = get_ecdsa_public_authentication_key(); - let did_subject: DidIdentifierOf = MultiSigner::from(public_auth_key.clone()).into_account().into(); + let did_subject: DidIdentifierOf = MultiSigner::from(public_auth_key).into_account().into(); // All set to max. let old_service_endpoints = get_service_endpoints::( T::MaxNumberOfServicesPerDid::get(), @@ -1010,7 +1009,7 @@ benchmarks! { let block_number = T::BlockNumber::zero(); let public_auth_key = get_ecdsa_public_authentication_key(); - let did_subject: DidIdentifierOf = MultiSigner::from(public_auth_key.clone()).into_account().into(); + let did_subject: DidIdentifierOf = MultiSigner::from(public_auth_key).into_account().into(); let key_agreement_keys = get_key_agreement_keys::(T::MaxNewKeyAgreementKeys::get()); // get first entry @@ -1018,7 +1017,7 @@ benchmarks! { let key_agreement_key_id = utils::calculate_key_id::(&DidPublicKey::from(key_agreement_key)); // fill up public keys to its max size because max public keys = # of max key agreement keys + 3 - let mut did_details = generate_base_did_details::(DidVerificationKey::from(public_auth_key.clone())); + let mut did_details = generate_base_did_details::(DidVerificationKey::from(public_auth_key)); assert_ok!(did_details.add_key_agreement_keys(key_agreement_keys, block_number)); assert_ok!(did_details.update_delegation_key(DidVerificationKey::from(get_ecdsa_public_delegation_key()), block_number)); assert_ok!(did_details.update_attestation_key(DidVerificationKey::from(get_ecdsa_public_attestation_key()), block_number)); diff --git a/pallets/did/src/did_details.rs b/pallets/did/src/did_details.rs index d4a07d6f1..d8dd578a7 100644 --- a/pallets/did/src/did_details.rs +++ b/pallets/did/src/did_details.rs @@ -21,13 +21,15 @@ use frame_support::{ ensure, storage::{bounded_btree_map::BoundedBTreeMap, bounded_btree_set::BoundedBTreeSet}, traits::Get, + RuntimeDebug, }; -use kilt_support::deposit::Deposit; use scale_info::TypeInfo; use sp_core::{ecdsa, ed25519, sr25519}; use sp_runtime::{traits::Verify, MultiSignature, SaturatedConversion}; use sp_std::{convert::TryInto, vec::Vec}; +use kilt_support::deposit::Deposit; + use crate::{ errors::{DidError, InputError, SignatureError, StorageError}, service_endpoints::DidEndpoint, @@ -35,7 +37,7 @@ use crate::{ }; /// Types of verification keys a DID can control. -#[derive(Clone, Decode, Debug, Encode, Eq, Ord, PartialEq, PartialOrd, TypeInfo, MaxEncodedLen)] +#[derive(Clone, Decode, RuntimeDebug, Encode, Eq, Ord, PartialEq, PartialOrd, TypeInfo, MaxEncodedLen)] pub enum DidVerificationKey { /// An Ed25519 public key. Ed25519(ed25519::Public), @@ -86,14 +88,14 @@ impl From for DidVerificationKey { } /// Types of encryption keys a DID can control. -#[derive(Clone, Copy, Decode, Debug, Encode, Eq, Ord, PartialEq, PartialOrd, TypeInfo, MaxEncodedLen)] +#[derive(Clone, Copy, Decode, RuntimeDebug, Encode, Eq, Ord, PartialEq, PartialOrd, TypeInfo, MaxEncodedLen)] pub enum DidEncryptionKey { /// An X25519 public key. X25519([u8; 32]), } /// A general public key under the control of the DID. -#[derive(Clone, Decode, Debug, Encode, Eq, Ord, PartialEq, PartialOrd, TypeInfo, MaxEncodedLen)] +#[derive(Clone, Decode, RuntimeDebug, Encode, Eq, Ord, PartialEq, PartialOrd, TypeInfo, MaxEncodedLen)] pub enum DidPublicKey { /// A verification key, used to generate and verify signatures. PublicVerificationKey(DidVerificationKey), @@ -115,7 +117,7 @@ impl From for DidPublicKey { /// Verification methods a verification key can /// fulfil, according to the [DID specification](https://w3c.github.io/did-spec-registries/#verification-relationships). -#[derive(Clone, Copy, Debug, Decode, Encode, PartialEq, Eq, TypeInfo, MaxEncodedLen)] +#[derive(Clone, Copy, RuntimeDebug, Decode, Encode, PartialEq, Eq, TypeInfo, MaxEncodedLen)] pub enum DidVerificationKeyRelationship { /// Key used to authenticate all the DID operations. Authentication, @@ -128,7 +130,7 @@ pub enum DidVerificationKeyRelationship { } /// Types of signatures supported by this pallet. -#[derive(Clone, Decode, Debug, Encode, Eq, PartialEq, TypeInfo)] +#[derive(Clone, Decode, RuntimeDebug, Encode, Eq, PartialEq, TypeInfo)] pub enum DidSignature { /// A Ed25519 signature. Ed25519(ed25519::Signature), @@ -177,7 +179,7 @@ pub trait DidVerifiableIdentifier { ) -> Result; } -impl DidVerifiableIdentifier for runtime_common::DidIdentifier { +impl> DidVerifiableIdentifier for I { fn verify_and_recover_signature( &self, payload: &Payload, @@ -229,7 +231,7 @@ impl DidVerifiableIdentifier for runtime_common::DidIdentifier { /// /// It is currently used to keep track of all the past and current /// attestation keys a DID might control. -#[derive(Clone, Debug, Decode, Encode, PartialEq, Ord, PartialOrd, Eq, TypeInfo, MaxEncodedLen)] +#[derive(Clone, RuntimeDebug, Decode, Encode, PartialEq, Ord, PartialOrd, Eq, TypeInfo, MaxEncodedLen)] #[scale_info(skip_type_params(T))] #[codec(mel_bound())] pub struct DidPublicKeyDetails { @@ -551,7 +553,7 @@ pub(crate) type DidPublicKeyMap = BoundedBTreeMap, DidPublicKeyDetails, ::MaxPublicKeysPerDid>; /// The details of a new DID to create. -#[derive(Clone, Decode, Encode, PartialEq, TypeInfo)] +#[derive(Clone, RuntimeDebug, Decode, Encode, PartialEq, TypeInfo)] #[scale_info(skip_type_params(T))] pub struct DidCreationDetails { @@ -569,25 +571,9 @@ pub struct DidCreationDetails { pub new_service_details: Vec>, } -impl sp_std::fmt::Debug for DidCreationDetails { - fn fmt(&self, f: &mut sp_std::fmt::Formatter<'_>) -> sp_std::fmt::Result { - f.debug_struct("DidCreationDetails") - .field("did", &self.did) - .field("submitter", &self.submitter) - .field( - "new_key_agreement_keys", - &self.new_key_agreement_keys.clone().into_inner(), - ) - .field("new_attestation_key", &self.new_attestation_key) - .field("new_delegation_key", &self.new_delegation_key) - .field("new_service_details", &self.new_service_details) - .finish() - } -} - /// Errors that might occur while deriving the authorization verification key /// relationship. -#[derive(Clone, Debug, Decode, Encode, PartialEq)] +#[derive(Clone, RuntimeDebug, Decode, Encode, PartialEq)] pub enum RelationshipDeriveError { /// The call is not callable by a did origin. NotCallableByDid, @@ -618,7 +604,7 @@ pub trait DeriveDidCallAuthorizationVerificationKeyRelationship { /// A DID operation that wraps other extrinsic calls, allowing those /// extrinsic to have a DID origin and perform DID-based authorization upon /// their invocation. -#[derive(Clone, Debug, Decode, Encode, PartialEq, TypeInfo)] +#[derive(Clone, RuntimeDebug, Decode, Encode, PartialEq, TypeInfo)] #[scale_info(skip_type_params(T))] pub struct DidAuthorizedCallOperation { @@ -638,7 +624,7 @@ pub struct DidAuthorizedCallOperation { /// /// It contains additional information about the type of DID key to used for /// authorization. -#[derive(Clone, Debug, PartialEq, TypeInfo)] +#[derive(Clone, RuntimeDebug, PartialEq, TypeInfo)] #[scale_info(skip_type_params(T))] pub struct DidAuthorizedCallOperationWithVerificationRelationship { diff --git a/pallets/did/src/lib.rs b/pallets/did/src/lib.rs index 883f5858c..2a862251a 100644 --- a/pallets/did/src/lib.rs +++ b/pallets/did/src/lib.rs @@ -83,7 +83,6 @@ pub mod default_weights; pub mod did_details; pub mod errors; -pub mod migrations; pub mod origin; pub mod service_endpoints; diff --git a/pallets/did/src/migrations.rs b/pallets/did/src/migrations.rs deleted file mode 100644 index 71a616a93..000000000 --- a/pallets/did/src/migrations.rs +++ /dev/null @@ -1,104 +0,0 @@ -// KILT Blockchain – https://botlabs.org -// Copyright (C) 2019-2022 BOTLabs GmbH - -// The KILT Blockchain is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. - -// The KILT Blockchain is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. - -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -// If you feel like getting in touch with us, you can do so at info@botlabs.org - -use codec::{Decode, Encode}; -use scale_info::TypeInfo; - -// FIXME: Remove when migrating to v8 -// #[deprecated(note = "use the pallet's `current_storage_version()` instead")] -/// Storage version of the DID pallet. -#[derive(Copy, Clone, Encode, Eq, Decode, Ord, PartialEq, PartialOrd, TypeInfo)] -pub enum DidStorageVersion { - V1, - V2, - V3, -} - -// All nodes will default to this, which is not bad, as in case the "real" -// version is a later one (i.e. the node has been started with already the -// latest version), the migration will simply do nothing as there's nothing in -// the old storage entries to migrate from. -// -// It might get updated in the future when we know that no node is running this -// old version anymore. -impl Default for DidStorageVersion { - fn default() -> Self { - Self::V3 - } -} - -pub mod v4 { - use super::*; - use crate::{Config, Pallet}; - - #[cfg(feature = "try-runtime")] - use frame_support::traits::GetStorageVersion; - - use frame_support::{ - generate_storage_alias, - pallet_prelude::Weight, - traits::{Get, OnRuntimeUpgrade, PalletInfoAccess, StorageVersion as NewStorageVersion}, - }; - use log::info; - use sp_std::marker::PhantomData; - - // Get storage item into scope which are removed during this migration - generate_storage_alias!(Did, StorageVersion => Value); - - pub struct DidMigrationV4(PhantomData); - - impl OnRuntimeUpgrade for DidMigrationV4 { - #[cfg(feature = "try-runtime")] - fn pre_upgrade() -> Result<(), &'static str> { - assert!(StorageVersion::get() == Some(DidStorageVersion::V3)); - - info!("👁 DID storage migration to v4 passes PRE migrate checks ✅",); - Ok(()) - } - - fn on_runtime_upgrade() -> Weight { - // remove deprecated storage versioning entry - frame_support::migration::remove_storage_prefix(Pallet::::name().as_bytes(), b"StorageVersion", &[]); - - NewStorageVersion::new(4).put::>(); - - info!("👁 completed DID storage migration to v4 ✅",); - T::DbWeight::get().reads_writes(0, 2) - } - - #[cfg(feature = "try-runtime")] - fn post_upgrade() -> Result<(), &'static str> { - // check StorageVersion - assert!( - !frame_support::migration::have_storage_value(Pallet::::name().as_bytes(), b"StorageVersion", &[]), - "Old StorageVersion should not exist anymore" - ); - assert_eq!( - Pallet::::current_storage_version(), - 4, - "StorageVersion should have migrated to new paradigm" - ); - - info!( - "👁 DID storage migration to {:?} passes POST migrate checks ✅", - Pallet::::current_storage_version() - ); - Ok(()) - } - } -} diff --git a/pallets/did/src/mock.rs b/pallets/did/src/mock.rs index 01d503f48..ecc4fbe34 100644 --- a/pallets/did/src/mock.rs +++ b/pallets/did/src/mock.rs @@ -16,9 +16,6 @@ // If you feel like getting in touch with us, you can do so at info@botlabs.org -#![allow(clippy::from_over_into)] -#![allow(dead_code)] - use frame_support::{ parameter_types, traits::{Currency, OnUnbalanced, ReservableCurrency}, @@ -26,15 +23,13 @@ use frame_support::{ }; use frame_system::EnsureSigned; use pallet_balances::NegativeImbalance; -use runtime_common::{constants::MICRO_KILT, AccountId, Balance}; use sp_core::{ecdsa, ed25519, sr25519, Pair}; -use sp_keystore::{testing::KeyStore, KeystoreExt}; use sp_runtime::{ testing::{Header, H256}, traits::{BlakeTwo256, IdentifyAccount, IdentityLookup, Verify}, - MultiSigner, SaturatedConversion, + MultiSignature, MultiSigner, SaturatedConversion, }; -use sp_std::sync::Arc; +use sp_std::vec::Vec; use crate::{ self as did, @@ -50,14 +45,20 @@ use crate::{ #[cfg(not(feature = "runtime-benchmarks"))] use crate::{DidRawOrigin, EnsureDidOrigin}; -pub type UncheckedExtrinsic = frame_system::mocking::MockUncheckedExtrinsic; -pub type Block = frame_system::mocking::MockBlock; +pub(crate) type UncheckedExtrinsic = frame_system::mocking::MockUncheckedExtrinsic; +pub(crate) type Block = frame_system::mocking::MockBlock; +pub(crate) type Hash = sp_core::H256; +pub(crate) type Balance = u128; +pub(crate) type Signature = MultiSignature; +pub(crate) type AccountPublic = ::Signer; +pub(crate) type AccountId = ::AccountId; +pub(crate) type Index = u64; +pub(crate) type BlockNumber = u64; + +pub(crate) type DidIdentifier = AccountId; +pub(crate) type CtypeHash = Hash; -pub type TestDidIdentifier = runtime_common::AccountId; -pub type TestKeyId = KeyIdOf; -pub type TestBlockNumber = runtime_common::BlockNumber; -pub type TestCtypeOwner = TestDidIdentifier; -pub type TestCtypeHash = runtime_common::Hash; +const MICRO_KILT: Balance = 10u128.pow(9); frame_support::construct_runtime!( pub enum Test where @@ -80,11 +81,11 @@ parameter_types! { impl frame_system::Config for Test { type Origin = Origin; type Call = Call; - type Index = u64; - type BlockNumber = u64; - type Hash = runtime_common::Hash; + type Index = Index; + type BlockNumber = BlockNumber; + type Hash = Hash; type Hashing = BlakeTwo256; - type AccountId = <::Signer as IdentifyAccount>::AccountId; + type AccountId = <::Signer as IdentifyAccount>::AccountId; type Lookup = IdentityLookup; type Header = Header; type Event = (); @@ -138,10 +139,10 @@ where } impl Config for Test { - type DidIdentifier = TestDidIdentifier; + type DidIdentifier = DidIdentifier; type Origin = Origin; type Call = Call; - type EnsureOrigin = EnsureSigned; + type EnsureOrigin = EnsureSigned; type OriginSuccess = AccountId; type Event = (); type Currency = Balances; @@ -185,16 +186,16 @@ parameter_types! { impl ctype::Config for Test { #[cfg(feature = "runtime-benchmarks")] - type EnsureOrigin = EnsureSigned; + type EnsureOrigin = EnsureSigned; #[cfg(feature = "runtime-benchmarks")] - type OriginSuccess = runtime_common::AccountId; + type OriginSuccess = AccountId; #[cfg(not(feature = "runtime-benchmarks"))] - type EnsureOrigin = EnsureDidOrigin; + type EnsureOrigin = EnsureDidOrigin; #[cfg(not(feature = "runtime-benchmarks"))] - type OriginSuccess = DidRawOrigin; + type OriginSuccess = DidRawOrigin; - type CtypeCreatorId = TestCtypeOwner; + type CtypeCreatorId = DidIdentifier; type Event = (); type WeightInfo = (); type Currency = Balances; @@ -202,12 +203,9 @@ impl ctype::Config for Test { type FeeCollector = (); } -#[cfg(test)] -pub(crate) const ACCOUNT_00: runtime_common::AccountId = runtime_common::AccountId::new([1u8; 32]); -#[cfg(test)] -pub(crate) const ACCOUNT_01: runtime_common::AccountId = runtime_common::AccountId::new([2u8; 32]); -#[cfg(test)] -pub(crate) const ACCOUNT_FEE: runtime_common::AccountId = runtime_common::AccountId::new([u8::MAX; 32]); +pub(crate) const ACCOUNT_00: AccountId = AccountId::new([1u8; 32]); +pub(crate) const ACCOUNT_01: AccountId = AccountId::new([2u8; 32]); +pub(crate) const ACCOUNT_FEE: AccountId = AccountId::new([u8::MAX; 32]); const DEFAULT_AUTH_SEED: [u8; 32] = [4u8; 32]; const ALTERNATIVE_AUTH_SEED: [u8; 32] = [40u8; 32]; @@ -237,15 +235,15 @@ pub(crate) fn fill_public_keys(mut did_details: DidDetails) -> DidDetails< did_details } -pub fn get_did_identifier_from_ed25519_key(public_key: ed25519::Public) -> TestDidIdentifier { +pub fn get_did_identifier_from_ed25519_key(public_key: ed25519::Public) -> DidIdentifier { MultiSigner::from(public_key).into_account() } -pub fn get_did_identifier_from_sr25519_key(public_key: sr25519::Public) -> TestDidIdentifier { +pub fn get_did_identifier_from_sr25519_key(public_key: sr25519::Public) -> DidIdentifier { MultiSigner::from(public_key).into_account() } -pub fn get_did_identifier_from_ecdsa_key(public_key: ecdsa::Public) -> TestDidIdentifier { +pub fn get_did_identifier_from_ecdsa_key(public_key: ecdsa::Public) -> DidIdentifier { MultiSigner::from(public_key).into_account() } @@ -329,7 +327,7 @@ pub fn get_ecdsa_delegation_key(default: bool) -> ecdsa::Pair { } } -pub fn generate_key_id(key: &DidPublicKey) -> TestKeyId { +pub fn generate_key_id(key: &DidPublicKey) -> KeyIdOf { crate_utils::calculate_key_id::(key) } @@ -387,14 +385,14 @@ impl DeriveDidCallAuthorizationVerificationKeyRelationship for Call { // Always return a System::remark() extrinsic call #[cfg(feature = "runtime-benchmarks")] fn get_call_for_did_call_benchmark() -> Self { - Call::System(frame_system::Call::remark { remark: vec![] }) + Call::System(frame_system::Call::remark { remark: sp_std::vec![] }) } } pub fn generate_test_did_call( verification_key_required: DidVerificationKeyRelationship, - caller: TestDidIdentifier, - submitter: runtime_common::AccountId, + caller: DidIdentifier, + submitter: AccountId, ) -> DidAuthorizedCallOperationWithVerificationRelationship { let call = match verification_key_required { DidVerificationKeyRelationship::AssertionMethod => get_attestation_key_call(), @@ -413,43 +411,48 @@ pub fn generate_test_did_call( verification_key_relationship: verification_key_required, } } - +#[cfg(test)] #[allow(unused_must_use)] -pub fn initialize_logger() { +pub(crate) fn initialize_logger() { env_logger::builder().is_test(true).try_init(); } #[derive(Clone, Default)] -pub struct ExtBuilder { - dids_stored: Vec<(TestDidIdentifier, DidDetails)>, - service_endpoints: Vec<(TestDidIdentifier, Vec>)>, - deleted_dids: Vec, - ctypes_stored: Vec<(TestCtypeHash, TestCtypeOwner)>, +pub(crate) struct ExtBuilder { + dids_stored: Vec<(DidIdentifier, DidDetails)>, + service_endpoints: Vec<(DidIdentifier, Vec>)>, + deleted_dids: Vec, + ctypes_stored: Vec<(CtypeHash, DidIdentifier)>, balances: Vec<(AccountIdOf, Balance)>, } impl ExtBuilder { - pub fn with_dids(mut self, dids: Vec<(TestDidIdentifier, DidDetails)>) -> Self { + #[must_use] + pub fn with_dids(mut self, dids: Vec<(DidIdentifier, DidDetails)>) -> Self { self.dids_stored = dids; self } - pub fn with_endpoints(mut self, endpoints: Vec<(TestDidIdentifier, Vec>)>) -> Self { + #[must_use] + pub fn with_endpoints(mut self, endpoints: Vec<(DidIdentifier, Vec>)>) -> Self { self.service_endpoints = endpoints; self } + #[must_use] pub(crate) fn with_balances(mut self, balances: Vec<(AccountIdOf, Balance)>) -> Self { self.balances = balances; self } - pub fn with_ctypes(mut self, ctypes: Vec<(TestCtypeHash, TestCtypeOwner)>) -> Self { + #[must_use] + pub fn with_ctypes(mut self, ctypes: Vec<(CtypeHash, DidIdentifier)>) -> Self { self.ctypes_stored = ctypes; self } - pub fn with_deleted_dids(mut self, dids: Vec) -> Self { + #[must_use] + pub fn with_deleted_dids(mut self, dids: Vec) -> Self { self.deleted_dids = dids; self } @@ -495,8 +498,8 @@ impl ExtBuilder { pub fn build_with_keystore(self) -> sp_io::TestExternalities { let mut ext = self.build(None); - let keystore = KeyStore::new(); - ext.register_extension(KeystoreExt(Arc::new(keystore))); + let keystore = sp_keystore::testing::KeyStore::new(); + ext.register_extension(sp_keystore::KeystoreExt(sp_std::sync::Arc::new(keystore))); ext } diff --git a/pallets/did/src/mock_utils.rs b/pallets/did/src/mock_utils.rs index 91eb1d052..0a3ca10f8 100644 --- a/pallets/did/src/mock_utils.rs +++ b/pallets/did/src/mock_utils.rs @@ -18,7 +18,7 @@ use frame_support::storage::bounded_btree_set::BoundedBTreeSet; use kilt_support::deposit::Deposit; -use sp_runtime::{traits::Zero, SaturatedConversion}; +use sp_runtime::{traits::Zero, AccountId32, SaturatedConversion}; use sp_std::{ collections::btree_set::BTreeSet, convert::{TryFrom, TryInto}, @@ -96,13 +96,13 @@ pub fn generate_base_did_creation_details( pub fn generate_base_did_details(authentication_key: DidVerificationKey) -> DidDetails where T: Config, - ::AccountId: From, + ::AccountId: From, { DidDetails::new( authentication_key, BlockNumberOf::::default(), Deposit { - owner: runtime_common::AccountId::new([0u8; 32]).into(), + owner: AccountId32::new([0u8; 32]).into(), amount: Zero::zero(), }, ) diff --git a/pallets/did/src/service_endpoints.rs b/pallets/did/src/service_endpoints.rs index 104aee443..87ffe1102 100644 --- a/pallets/did/src/service_endpoints.rs +++ b/pallets/did/src/service_endpoints.rs @@ -18,7 +18,7 @@ use crate::{errors::InputError, Config}; use codec::{Decode, Encode, MaxEncodedLen}; -use frame_support::{ensure, traits::Get, BoundedVec}; +use frame_support::{ensure, traits::Get, BoundedVec, RuntimeDebug}; use scale_info::TypeInfo; use sp_runtime::traits::SaturatedConversion; use sp_std::str; @@ -43,7 +43,7 @@ pub(crate) type ServiceEndpointUrlEntries = BoundedVec, ::MaxNumberOfUrlsPerService>; /// A single service endpoint description. -#[derive(Clone, Decode, Encode, PartialEq, Eq, TypeInfo, MaxEncodedLen)] +#[derive(Clone, Decode, RuntimeDebug, Encode, PartialEq, Eq, TypeInfo, MaxEncodedLen)] #[scale_info(skip_type_params(T))] #[codec(mel_bound())] pub struct DidEndpoint { @@ -56,16 +56,6 @@ pub struct DidEndpoint { pub urls: ServiceEndpointUrlEntries, } -impl sp_std::fmt::Debug for DidEndpoint { - fn fmt(&self, f: &mut sp_std::fmt::Formatter<'_>) -> sp_std::fmt::Result { - f.debug_struct("DidEndpoint") - .field("id", &self.id.clone().into_inner()) - .field("service_types", &self.service_types.encode()) - .field("urls", &self.urls.encode()) - .finish() - } -} - impl DidEndpoint { /// Validates a given [DidEndpoint] instance against the constraint /// set in the pallet's [Config]. diff --git a/pallets/did/src/tests.rs b/pallets/did/src/tests.rs index c904e147d..0311e8294 100644 --- a/pallets/did/src/tests.rs +++ b/pallets/did/src/tests.rs @@ -776,7 +776,7 @@ fn check_successful_authentication_key_update() { let old_did_details = generate_base_did_details::(DidVerificationKey::from(old_auth_key.public())); - let new_block_number: TestBlockNumber = 1; + let new_block_number: BlockNumber = 1; // Update authentication key. The old one should be removed. ExtBuilder::default() @@ -817,7 +817,7 @@ fn check_successful_authentication_key_max_public_keys_update() { // MaxPublicKeysPerDid - MaxTotalKeyAgreementKeys many keys did_details = fill_public_keys(did_details); - let new_block_number: TestBlockNumber = 1; + let new_block_number: BlockNumber = 1; // Update authentication key. The old one should be removed. ExtBuilder::default() @@ -856,7 +856,7 @@ fn check_reused_key_authentication_key_update() { // Same key for auth and del key assert_ok!(old_did_details.update_delegation_key(DidVerificationKey::from(old_delegation_key.public()), 0u64)); - let new_block_number: TestBlockNumber = 1; + let new_block_number: BlockNumber = 1; ExtBuilder::default() .with_dids(vec![(alice_did.clone(), old_did_details)]) @@ -904,7 +904,7 @@ fn check_max_keys_authentication_key_update_error() { // MaxPublicKeysPerDid - MaxTotalKeyAgreementKeys many keys did_details = fill_public_keys(did_details); - let new_block_number: TestBlockNumber = 1; + let new_block_number: BlockNumber = 1; // Update authentication key. Since the old one is not removed because it is the // same as the delegation key, the update should fail as the max number of @@ -930,7 +930,7 @@ fn check_did_not_present_authentication_key_update_error() { let alice_did = get_did_identifier_from_ed25519_key(old_auth_key.public()); let new_auth_key = get_ed25519_authentication_key(false); - let new_block_number: TestBlockNumber = 1; + let new_block_number: BlockNumber = 1; // Update authentication key. The old one should be removed. ExtBuilder::default().build(None).execute_with(|| { @@ -955,7 +955,7 @@ fn check_successful_delegation_key_update() { let mut old_did_details = generate_base_did_details::(DidVerificationKey::from(auth_key.public())); assert_ok!(old_did_details.update_delegation_key(DidVerificationKey::from(old_del_key.public()), 0u64)); - let new_block_number: TestBlockNumber = 1; + let new_block_number: BlockNumber = 1; // Update delegation key. The old one should be removed. ExtBuilder::default() @@ -998,7 +998,7 @@ fn check_successful_delegation_key_max_public_keys_update() { // MaxPublicKeysPerDid - MaxTotalKeyAgreementKeys many keys did_details = fill_public_keys(did_details); - let new_block_number: TestBlockNumber = 1; + let new_block_number: BlockNumber = 1; // Update delegation key. The old one should be removed. ExtBuilder::default() @@ -1035,7 +1035,7 @@ fn check_reused_key_delegation_key_update() { // Same key for auth and del key assert_ok!(old_did_details.update_delegation_key(DidVerificationKey::from(old_del_key.public()), 0u64)); - let new_block_number: TestBlockNumber = 1; + let new_block_number: BlockNumber = 1; ExtBuilder::default() .with_dids(vec![(alice_did.clone(), old_did_details)]) @@ -1077,7 +1077,7 @@ fn check_max_public_keys_delegation_key_addition_error() { // MaxPublicKeysPerDid - MaxTotalKeyAgreementKeys many keys did_details = fill_public_keys(did_details); - let new_block_number: TestBlockNumber = 1; + let new_block_number: BlockNumber = 1; // Update delegation key. The old one should be removed. ExtBuilder::default() @@ -1112,7 +1112,7 @@ fn check_max_public_keys_reused_key_delegation_key_update_error() { // MaxPublicKeysPerDid - MaxTotalKeyAgreementKeys many keys did_details = fill_public_keys(did_details); - let new_block_number: TestBlockNumber = 1; + let new_block_number: BlockNumber = 1; // Update delegation key. The old one should not be removed as it is still used // as authentication key. @@ -1137,7 +1137,7 @@ fn check_did_not_present_delegation_key_update_error() { let alice_did = get_did_identifier_from_ed25519_key(auth_key.public()); let new_del_key = get_sr25519_delegation_key(false); - let new_block_number: TestBlockNumber = 1; + let new_block_number: BlockNumber = 1; // Update delegation key. The old one should be removed. ExtBuilder::default().build(None).execute_with(|| { @@ -1244,7 +1244,7 @@ fn check_successful_attestation_key_update() { let mut old_did_details = generate_base_did_details::(DidVerificationKey::from(auth_key.public())); assert_ok!(old_did_details.update_attestation_key(DidVerificationKey::from(old_att_key.public()), 0u64)); - let new_block_number: TestBlockNumber = 1; + let new_block_number: BlockNumber = 1; // Update attestation key. The old one should be removed. ExtBuilder::default() @@ -1286,7 +1286,7 @@ fn check_successful_attestation_key_max_public_keys_update() { // MaxPublicKeysPerDid - MaxTotalKeyAgreementKeys many keys did_details = fill_public_keys(did_details); - let new_block_number: TestBlockNumber = 1; + let new_block_number: BlockNumber = 1; // Update attestation key. The old one should be removed. ExtBuilder::default() @@ -1322,7 +1322,7 @@ fn check_reused_key_attestation_key_update() { // Same key for auth and att key assert_ok!(old_did_details.update_attestation_key(DidVerificationKey::from(old_att_key.public()), 0u64)); - let new_block_number: TestBlockNumber = 1; + let new_block_number: BlockNumber = 1; ExtBuilder::default() .with_dids(vec![(alice_did.clone(), old_did_details)]) @@ -1364,7 +1364,7 @@ fn check_max_public_keys_attestation_key_addition_error() { // MaxPublicKeysPerDid - MaxTotalKeyAgreementKeys many keys did_details = fill_public_keys(did_details); - let new_block_number: TestBlockNumber = 1; + let new_block_number: BlockNumber = 1; // Update attestation key. The old one should be removed. ExtBuilder::default() @@ -1399,7 +1399,7 @@ fn check_max_public_keys_reused_key_attestation_key_update_error() { // MaxPublicKeysPerDid - MaxTotalKeyAgreementKeys many keys did_details = fill_public_keys(did_details); - let new_block_number: TestBlockNumber = 1; + let new_block_number: BlockNumber = 1; // Update attestation key. The old one should not be removed as it is still used // as authentication key. @@ -1424,7 +1424,7 @@ fn check_did_not_present_attestation_key_update_error() { let alice_did = get_did_identifier_from_ed25519_key(auth_key.public()); let new_att_key = get_sr25519_delegation_key(false); - let new_block_number: TestBlockNumber = 1; + let new_block_number: BlockNumber = 1; // Update delegation key. The old one should be removed. ExtBuilder::default().build(None).execute_with(|| { @@ -1528,7 +1528,7 @@ fn check_successful_key_agreement_key_addition() { let old_did_details = generate_base_did_details::(DidVerificationKey::from(auth_key.public())); - let new_block_number: TestBlockNumber = 1; + let new_block_number: BlockNumber = 1; ExtBuilder::default() .with_dids(vec![(alice_did.clone(), old_did_details)]) @@ -1568,7 +1568,7 @@ fn check_max_public_keys_key_agreement_key_addition_error() { // MaxPublicKeysPerDid - MaxTotalKeyAgreementKeys many keys did_details = fill_public_keys(did_details); - let new_block_number: TestBlockNumber = 1; + let new_block_number: BlockNumber = 1; ExtBuilder::default() .with_dids(vec![(alice_did.clone(), did_details)]) @@ -1588,7 +1588,7 @@ fn check_did_not_present_key_agreement_key_addition_error() { let alice_did = get_did_identifier_from_ed25519_key(auth_key.public()); let new_enc_key = get_x25519_encryption_key(true); - let new_block_number: TestBlockNumber = 1; + let new_block_number: BlockNumber = 1; // Update delegation key. The old one should be removed. ExtBuilder::default().build(None).execute_with(|| { diff --git a/pallets/kilt-launch/Cargo.toml b/pallets/kilt-launch/Cargo.toml deleted file mode 100644 index 61dba5581..000000000 --- a/pallets/kilt-launch/Cargo.toml +++ /dev/null @@ -1,59 +0,0 @@ -[package] -authors = ["KILT "] -description = "Enables automatic unlocking of balance from genesis block" -edition = "2021" -name = "kilt-launch" -repository = "https://github.com/KILTprotocol/mashnet-node" -version = "1.6.2" - -[package.metadata.docs.rs] -targets = ["x86_64-unknown-linux-gnu"] - -[dev-dependencies] -runtime-common = {path = "../../runtimes/common", default-features = false} -sp-core = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -sp-io = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} - -[dependencies] -codec = {package = "parity-scale-codec", version = "2.3.1", default-features = false, features = ["derive"]} -log = "0.4" -scale-info = {version = "1.0", default-features = false, features = ["derive"]} -serde = {version = "1.0.132", optional = true} - -frame-benchmarking = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17", optional = true} -frame-support = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -frame-system = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -pallet-balances = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -pallet-vesting = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -sp-runtime = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -sp-std = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} - -# benchmarking -runtime-common = {path = "../../runtimes/common", default-features = false, optional = true} - -[features] -default = ["std"] - -runtime-benchmarks = [ - "frame-benchmarking", - "frame-support/runtime-benchmarks", - "frame-system/runtime-benchmarks", - "runtime-common", -] -std = [ - "codec/std", - "frame-benchmarking/std", - "frame-support/std", - "frame-system/std", - "runtime-common/std", - "log/std", - "pallet-balances/std", - "pallet-vesting/std", - "scale-info/std", - "serde", - "sp-runtime/std", - "sp-std/std", -] -try-runtime = [ - "frame-support/try-runtime", -] diff --git a/pallets/kilt-launch/src/benchmarking.rs b/pallets/kilt-launch/src/benchmarking.rs deleted file mode 100644 index 6829015cc..000000000 --- a/pallets/kilt-launch/src/benchmarking.rs +++ /dev/null @@ -1,285 +0,0 @@ -// KILT Blockchain – https://botlabs.org -// Copyright (C) 2019-2022 BOTLabs GmbH - -// The KILT Blockchain is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. - -// The KILT Blockchain is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. - -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -// If you feel like getting in touch with us, you can do so at info@botlabs.org - -use super::*; - -#[allow(unused)] -use crate::{BalanceLocks, BalanceOf, LockedBalance, Pallet as KiltLaunch, UnownedAccount, KILT_LAUNCH_ID}; -use frame_benchmarking::{account, benchmarks, impl_benchmark_test_suite, vec, whitelist_account, Zero}; -use frame_support::{ - assert_ok, - inherent::Vec, - traits::{Currency, Get, Hooks}, -}; -use frame_system::{Pallet as System, RawOrigin}; -use pallet_balances::Locks; -use pallet_vesting::{Vesting, VestingInfo}; -use runtime_common::{constants::KILT, Balance}; -use sp_runtime::traits::StaticLookup; -use sp_std::convert::TryFrom; - -const SEED: u32 = 0; -const AMOUNT: Balance = KILT; -const PER_BLOCK: u32 = 100; -const UNLOCK_BLOCK: u32 = 1337; - -type Lookup = <::Lookup as StaticLookup>::Source; - -/// Account to lookup type of system trait. -fn as_lookup(account: T::AccountId) -> Lookup { - T::Lookup::unlookup(account) -} - -type GenesisSetup = ( - ( - ::AccountId, - <::Lookup as StaticLookup>::Source, - ), - Vec<( - ::AccountId, - <::Lookup as StaticLookup>::Source, - )>, - Vec<( - ::AccountId, - <::Lookup as StaticLookup>::Source, - )>, -); - -/// Mock the Pallet's GenesisBuild and return pairs consisting of AccountId and -/// LookupSource for the transfer account, `n` vesting addresses and `n` locking -/// addresses. -fn genesis_setup(n: u32) -> Result, &'static str> -where - Balance: Into<::Balance>, - Balance: - Into<<::Currency as Currency<::AccountId>>::Balance>, -{ - System::::set_block_number(0u32.into()); - - // Setup transfer account - let transfer: T::AccountId = account("transfer", 0, SEED); - let transfer_lookup: ::Source = as_lookup::(transfer.clone()); - KiltLaunch::::change_transfer_account(RawOrigin::Root.into(), transfer_lookup.clone())?; - - // Create `n` genesis accounts each for vesting and locking - let (v_accs, l_accs) = (1..=n).into_iter().fold((vec![], vec![]), |mut acc, i| { - let vest_acc: T::AccountId = account("vesting_{:?}", i, SEED); - let lock_acc: T::AccountId = account("locking", i, SEED); - let vest_lookup: ::Source = as_lookup::(vest_acc.clone()); - let lock_lookup: ::Source = as_lookup::(lock_acc.clone()); - - // Set balance - as Currency>::make_free_balance_be(&vest_acc, AMOUNT.into()); - as Currency>::make_free_balance_be(&lock_acc, AMOUNT.into()); - UnownedAccount::::insert(&vest_acc, ()); - UnownedAccount::::insert(&lock_acc, ()); - - // Set vesting info by mocking the Pallet's GenesisBuild - assert_ok!(Vesting::::try_append( - &vest_acc, - VestingInfo::, T::BlockNumber>::new(AMOUNT.into(), PER_BLOCK.into(), T::BlockNumber::zero()), - )); - // Set locking info by mocking the Pallet's GenesisBuild - BalanceLocks::::insert( - &lock_acc, - LockedBalance:: { - block: UNLOCK_BLOCK.into(), - amount: AMOUNT.into(), - }, - ); - - assert_eq!(>::total_balance(&vest_acc), AMOUNT.into()); - assert_eq!(>::total_balance(&lock_acc), AMOUNT.into()); - acc.0.push((vest_acc, vest_lookup)); - acc.1.push((lock_acc, lock_lookup)); - acc - }); - - Ok(((transfer, transfer_lookup), v_accs, l_accs)) -} - -benchmarks! { - where_clause { where T: core::fmt::Debug, Balance: Into<::Balance>, Balance: Into<<::Currency as Currency<::AccountId>>::Balance>} - - change_transfer_account { - let transfer_account: T::AccountId = account("transfer_new", 0, SEED); - let transfer_account_lookup: ::Source = as_lookup::(transfer_account.clone()); - }: _(RawOrigin::Root, transfer_account_lookup) - verify { - assert_eq!(TransferAccount::::get(), Some(transfer_account)); - } - - // Worst case: UnlockingAt has MaxClaims entries - force_unlock { - let n in 1 .. T::MaxClaims::get() - 1; - - let ((transfer, _), _, s) = genesis_setup::(n).expect("Genesis setup failure"); - whitelist_account!(transfer); - - // Migrate balance locks 1 by 1 to fill UnlockingAt - for (c, (_, source_lookup)) in s.into_iter().enumerate() { - let target: T::AccountId = account("target", u32::try_from(c).unwrap(), SEED); - let target_lookup: ::Source = as_lookup::(target); - KiltLaunch::::migrate_genesis_account(RawOrigin::Signed(transfer.clone()).into(), source_lookup, target_lookup)?; - } - assert_eq!(UnlockingAt::::get::(UNLOCK_BLOCK.into()).expect("UnlockingAt should not be empty").len(), n as usize); - }: _(RawOrigin::Root, UNLOCK_BLOCK.into()) - verify { - assert!(!UnlockingAt::::contains_key::(UNLOCK_BLOCK.into())); - } - - // Worst case: target already has locked balance pre-transfer, source still has locked balance left post-transfer - locked_transfer { - let ((transfer, _), _, s) = genesis_setup::(3).expect("Genesis setup failure"); - whitelist_account!(transfer); - let mut locked_lookups: Vec<::Source> = s.into_iter().map(|(_, lookup)| lookup).collect(); - let locked_lookup = locked_lookups.split_off(2); - - // Set custom lock with amount `2 * AMOUNT` for source - let source: T::AccountId = account("source", 0, SEED); - let source_lookup: ::Source = as_lookup::(source.clone()); - KiltLaunch::::migrate_multiple_genesis_accounts(RawOrigin::Signed(transfer.clone()).into(), locked_lookups, source_lookup)?; - assert_eq!(BalanceLocks::::get(&source), Some(LockedBalance:: { - block: UNLOCK_BLOCK.into(), - amount: (2 * AMOUNT).into(), - }), "Source BalanceLock not set"); - assert_eq!(UnlockingAt::::get::(UNLOCK_BLOCK.into()).expect("UnlockingAt should not be empty").into_inner(), vec![source.clone()]); - - // Set custom lock with amount `AMOUNT` for target - let target: T::AccountId = account("target", 0, SEED); - let target_lookup: ::Source = as_lookup::(target.clone()); - KiltLaunch::::migrate_multiple_genesis_accounts(RawOrigin::Signed(transfer).into(), locked_lookup, target_lookup.clone())?; - assert_eq!(BalanceLocks::::get(&target), Some(LockedBalance:: { - block: UNLOCK_BLOCK.into(), - amount: AMOUNT.into(), - }), "Target BalanceLock not set"); - assert_eq!(UnlockingAt::::get::(UNLOCK_BLOCK.into()).expect("UnlockingAt should not be empty").into_inner(), vec![source.clone(), target.clone()]); - - // Transfer AMOUNT from source to target - }: _(RawOrigin::Signed(source.clone()), target_lookup, AMOUNT.into()) - verify { - assert_eq!(UnlockingAt::::get::(UNLOCK_BLOCK.into()).expect("UnlockingAt should not be empty").into_inner(), vec![source.clone(), target.clone()]); - assert_eq!(BalanceLocks::::get(&source), Some(LockedBalance:: { - block: UNLOCK_BLOCK.into(), - amount: AMOUNT.into(), - }), "Source BalanceLock not updated"); - assert_eq!(BalanceLocks::::get(&target), Some(LockedBalance:: { - block: UNLOCK_BLOCK.into(), - amount: (2 * AMOUNT).into(), - }), "Target BalanceLock not updated"); - } - - migrate_genesis_account_vesting { - let target: T::AccountId = account("target", 0, SEED); - let target_lookup: ::Source = as_lookup::(target.clone()); - - let ((transfer, transfer_lookup), s, _) = genesis_setup::(1).expect("Genesis setup failure"); - whitelist_account!(transfer); - let (source, source_lookup) = s.get(0).expect("Locking source should not be empty").clone(); - }: migrate_genesis_account(RawOrigin::Signed(transfer), source_lookup, target_lookup) - verify { - assert!(UnownedAccount::::get(&source).is_none()); - assert!(!Vesting::::contains_key(source), "Vesting schedule not removed"); - let expected_vesting = VestingInfo::, T::BlockNumber>::new(AMOUNT.into(), PER_BLOCK.into(), T::BlockNumber::zero()); - assert_eq!(Vesting::::get(&target).expect("Missing vesting info").into_inner().get(0), Some(&expected_vesting), "Vesting schedule not migrated"); - assert_eq!(Locks::::get(&target).len(), 1, "Lock not set"); - } - - migrate_genesis_account_locking { - let target: T::AccountId = account("target", 0, SEED); - let target_lookup: ::Source = as_lookup::(target.clone()); - - let ((transfer, transfer_lookup), _, s) = genesis_setup::(1).expect("Genesis setup failure"); - whitelist_account!(transfer); - let (source, source_lookup) = s.get(0).expect("Locking source should not be empty").clone(); - }: migrate_genesis_account(RawOrigin::Signed(transfer), source_lookup, target_lookup) - verify { - assert!(UnownedAccount::::get(&source).is_none()); - assert!(!BalanceLocks::::contains_key(source), "BalanceLock not removed"); - assert_eq!(BalanceLocks::::get(&target), Some(LockedBalance:: { - block: UNLOCK_BLOCK.into(), - amount: AMOUNT.into(), - }), "BalanceLock not migrated"); - assert_eq!(Locks::::get(&target).len(), 1, "Lock not set"); - } - - migrate_multiple_genesis_accounts_vesting { - let n in 1 .. T::MaxClaims::get() - 1; - - let target: T::AccountId = account("target", 0, SEED); - let target_lookup: ::Source = as_lookup::(target.clone()); - - let ((transfer, transfer_lookup), s, _) = genesis_setup::(n).expect("Genesis setup failure"); - let source_lookups: Vec<::Source> = s.into_iter().map(|(_, lookup)| lookup).collect(); - }: migrate_multiple_genesis_accounts(RawOrigin::Signed(transfer), source_lookups, target_lookup) - verify { - assert_eq!(Vesting::::get(&target).expect("Missing vesting info").into_inner().get(0), Some(&VestingInfo::, T::BlockNumber>::new( - (n as u128 * AMOUNT).into(), - (n * PER_BLOCK).into(), - T::BlockNumber::zero(), - )), "Vesting schedule not migrated"); - assert_eq!(Locks::::get(&target).len(), 1, "Lock not set"); - } - - migrate_multiple_genesis_accounts_locking { - let n in 1 .. T::MaxClaims::get() - 1; - - let target: T::AccountId = account("target", 0, SEED); - let target_lookup: ::Source = as_lookup::(target.clone()); - - let ((transfer, transfer_lookup), _, s) = genesis_setup::(n).expect("Genesis setup failure"); - whitelist_account!(transfer); - let source_lookups: Vec<::Source> = s.into_iter().map(|(_, lookup)| lookup).collect(); - }: migrate_multiple_genesis_accounts(RawOrigin::Signed(transfer), source_lookups, target_lookup) - verify { - assert_eq!(BalanceLocks::::get(&target), Some(LockedBalance:: { - block: UNLOCK_BLOCK.into(), - amount: (n as u128 * AMOUNT).into(), - }), "BalanceLock not migrated"); - assert_eq!(Locks::::get(&target).len(), 1, "Lock not set"); - } - - on_initialize_unlock { - let n in 1 .. T::AutoUnlockBound::get(); - - let ((transfer, _), _, s) = genesis_setup::(n).expect("Genesis setup failure"); - - // Migrate balance locks 1 by 1 to fill UnlockingAt - for (c, (_, source_lookup)) in s.into_iter().enumerate() { - let target: T::AccountId = account("target", u32::try_from(c).unwrap(), SEED); - let target_lookup: ::Source = as_lookup::(target); - KiltLaunch::::migrate_genesis_account(RawOrigin::Signed(transfer.clone()).into(), source_lookup, target_lookup)?; - } - let block: T::BlockNumber = UNLOCK_BLOCK.into(); - assert_eq!(UnlockingAt::::get(&block).expect("UnlockingAt should not be empty").len(), n as usize); - }: { KiltLaunch::::on_initialize(block) } - verify { - assert!(UnlockingAt::::get(&block).is_none()); - } - - on_initialize_no_action { - }: { KiltLaunch::::on_initialize(0_u32.into()) } - verify { - } -} - -impl_benchmark_test_suite!( - KiltLaunch, - crate::mock::ExtBuilder::default().build(), - crate::mock::Test, -); diff --git a/pallets/kilt-launch/src/default_weights.rs b/pallets/kilt-launch/src/default_weights.rs deleted file mode 100644 index 381040323..000000000 --- a/pallets/kilt-launch/src/default_weights.rs +++ /dev/null @@ -1,225 +0,0 @@ -// KILT Blockchain – https://botlabs.org -// Copyright (C) 2019-2022 BOTLabs GmbH - -// The KILT Blockchain is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. - -// The KILT Blockchain is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. - -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -// If you feel like getting in touch with us, you can do so at info@botlabs.org - -//! Autogenerated weights for kilt_launch -//! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2021-10-29, STEPS: {{cmd.steps}}\, REPEAT: {{cmd.repeat}}\, LOW RANGE: {{cmd.lowest_range_values}}\, HIGH RANGE: {{cmd.highest_range_values}}\ -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 128 - -// Executed Command: -// target/release/kilt-parachain -// benchmark -// --chain=dev -// --steps=50 -// --repeat=20 -// --pallet=kilt-launch -// --extrinsic=* -// --execution=wasm -// --wasm-execution=compiled -// --heap-pages=4096 -// --output=pallets/kilt-launch/src/default_weights.rs -// --template=.maintain/weight-template.hbs - - -#![cfg_attr(rustfmt, rustfmt_skip)] -#![allow(unused_parens)] -#![allow(unused_imports)] -#![allow(clippy::unnecessary_cast)] - -use frame_support::{traits::Get, weights::{Weight, constants::RocksDbWeight}}; -use sp_std::marker::PhantomData; - -/// Weight functions needed for kilt_launch. -pub trait WeightInfo { - fn change_transfer_account() -> Weight; - fn force_unlock(n: u32, ) -> Weight; - fn locked_transfer() -> Weight; - fn migrate_genesis_account_vesting() -> Weight; - fn migrate_genesis_account_locking() -> Weight; - fn migrate_multiple_genesis_accounts_vesting(n: u32, ) -> Weight; - fn migrate_multiple_genesis_accounts_locking(n: u32, ) -> Weight; - fn on_initialize_unlock(n: u32, ) -> Weight; - fn on_initialize_no_action() -> Weight; -} - -/// Weights for kilt_launch using the Substrate node and recommended hardware. -pub struct SubstrateWeight(PhantomData); -impl WeightInfo for SubstrateWeight { - // Storage: KiltLaunch TransferAccount (r:0 w:1) - fn change_transfer_account() -> Weight { - (2_981_000_u64) - .saturating_add(T::DbWeight::get().writes(1_u64)) - } - // Storage: KiltLaunch UnlockingAt (r:1 w:1) - // Storage: Balances Locks (r:1 w:1) - // Storage: System Account (r:1 w:1) - // Storage: KiltLaunch BalanceLocks (r:0 w:1) - fn force_unlock(n: u32, ) -> Weight { - (26_446_000_u64) - // Standard Error: 17_000 - .saturating_add((27_230_000_u64).saturating_mul(n as Weight)) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().reads((2_u64).saturating_mul(n as Weight))) - .saturating_add(T::DbWeight::get().writes(1_u64)) - .saturating_add(T::DbWeight::get().writes((3_u64).saturating_mul(n as Weight))) - } - // Storage: System Account (r:2 w:2) - // Storage: KiltLaunch BalanceLocks (r:2 w:2) - // Storage: Balances Locks (r:2 w:2) - fn locked_transfer() -> Weight { - (132_907_000_u64) - .saturating_add(T::DbWeight::get().reads(6_u64)) - .saturating_add(T::DbWeight::get().writes(6_u64)) - } - // Storage: KiltLaunch TransferAccount (r:1 w:0) - // Storage: KiltLaunch UnownedAccount (r:1 w:1) - // Storage: Balances Locks (r:2 w:1) - // Storage: System Account (r:2 w:2) - // Storage: Vesting Vesting (r:2 w:2) - // Storage: KiltLaunch BalanceLocks (r:1 w:0) - fn migrate_genesis_account_vesting() -> Weight { - (147_997_000_u64) - .saturating_add(T::DbWeight::get().reads(9_u64)) - .saturating_add(T::DbWeight::get().writes(6_u64)) - } - // Storage: KiltLaunch TransferAccount (r:1 w:0) - // Storage: KiltLaunch UnownedAccount (r:1 w:1) - // Storage: Balances Locks (r:2 w:1) - // Storage: System Account (r:2 w:2) - // Storage: Vesting Vesting (r:1 w:0) - // Storage: KiltLaunch BalanceLocks (r:2 w:2) - // Storage: KiltLaunch UnlockingAt (r:1 w:1) - fn migrate_genesis_account_locking() -> Weight { - (151_816_000_u64) - .saturating_add(T::DbWeight::get().reads(10_u64)) - .saturating_add(T::DbWeight::get().writes(7_u64)) - } - // Storage: KiltLaunch TransferAccount (r:1 w:0) - // Storage: KiltLaunch UnownedAccount (r:1 w:1) - // Storage: Balances Locks (r:2 w:1) - // Storage: System Account (r:2 w:2) - // Storage: Vesting Vesting (r:2 w:2) - // Storage: KiltLaunch BalanceLocks (r:1 w:0) - fn migrate_multiple_genesis_accounts_vesting(n: u32, ) -> Weight { - (48_179_000_u64) - // Standard Error: 47_000 - .saturating_add((96_707_000_u64).saturating_mul(n as Weight)) - .saturating_add(T::DbWeight::get().reads(4_u64)) - .saturating_add(T::DbWeight::get().reads((5_u64).saturating_mul(n as Weight))) - .saturating_add(T::DbWeight::get().writes(3_u64)) - .saturating_add(T::DbWeight::get().writes((3_u64).saturating_mul(n as Weight))) - } - // Storage: KiltLaunch TransferAccount (r:1 w:0) - // Storage: KiltLaunch UnownedAccount (r:1 w:1) - // Storage: Balances Locks (r:2 w:1) - // Storage: System Account (r:2 w:2) - // Storage: Vesting Vesting (r:1 w:0) - // Storage: KiltLaunch BalanceLocks (r:2 w:2) - // Storage: KiltLaunch UnlockingAt (r:1 w:1) - fn migrate_multiple_genesis_accounts_locking(n: u32, ) -> Weight { - (57_434_000_u64) - // Standard Error: 95_000 - .saturating_add((94_182_000_u64).saturating_mul(n as Weight)) - .saturating_add(T::DbWeight::get().reads(5_u64)) - .saturating_add(T::DbWeight::get().reads((5_u64).saturating_mul(n as Weight))) - .saturating_add(T::DbWeight::get().writes(4_u64)) - .saturating_add(T::DbWeight::get().writes((3_u64).saturating_mul(n as Weight))) - } - // Storage: KiltLaunch UnlockingAt (r:1 w:1) - // Storage: Balances Locks (r:1 w:1) - // Storage: System Account (r:1 w:1) - // Storage: KiltLaunch BalanceLocks (r:0 w:1) - fn on_initialize_unlock(n: u32, ) -> Weight { - (26_036_000_u64) - // Standard Error: 10_000 - .saturating_add((27_339_000_u64).saturating_mul(n as Weight)) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().reads((2_u64).saturating_mul(n as Weight))) - .saturating_add(T::DbWeight::get().writes(1_u64)) - .saturating_add(T::DbWeight::get().writes((3_u64).saturating_mul(n as Weight))) - } - // Storage: KiltLaunch UnlockingAt (r:1 w:0) - fn on_initialize_no_action() -> Weight { - (4_341_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - } -} - -// For backwards compatibility and tests -impl WeightInfo for () { - fn change_transfer_account() -> Weight { - (2_981_000_u64) - .saturating_add(RocksDbWeight::get().writes(1_u64)) - } - fn force_unlock(n: u32, ) -> Weight { - (26_446_000_u64) - // Standard Error: 17_000 - .saturating_add((27_230_000_u64).saturating_mul(n as Weight)) - .saturating_add(RocksDbWeight::get().reads(1_u64)) - .saturating_add(RocksDbWeight::get().reads((2_u64).saturating_mul(n as Weight))) - .saturating_add(RocksDbWeight::get().writes(1_u64)) - .saturating_add(RocksDbWeight::get().writes((3_u64).saturating_mul(n as Weight))) - } - fn locked_transfer() -> Weight { - (132_907_000_u64) - .saturating_add(RocksDbWeight::get().reads(6_u64)) - .saturating_add(RocksDbWeight::get().writes(6_u64)) - } - fn migrate_genesis_account_vesting() -> Weight { - (147_997_000_u64) - .saturating_add(RocksDbWeight::get().reads(9_u64)) - .saturating_add(RocksDbWeight::get().writes(6_u64)) - } - fn migrate_genesis_account_locking() -> Weight { - (151_816_000_u64) - .saturating_add(RocksDbWeight::get().reads(10_u64)) - .saturating_add(RocksDbWeight::get().writes(7_u64)) - } - fn migrate_multiple_genesis_accounts_vesting(n: u32, ) -> Weight { - (48_179_000_u64) - // Standard Error: 47_000 - .saturating_add((96_707_000_u64).saturating_mul(n as Weight)) - .saturating_add(RocksDbWeight::get().reads(4_u64)) - .saturating_add(RocksDbWeight::get().reads((5_u64).saturating_mul(n as Weight))) - .saturating_add(RocksDbWeight::get().writes(3_u64)) - .saturating_add(RocksDbWeight::get().writes((3_u64).saturating_mul(n as Weight))) - } - fn migrate_multiple_genesis_accounts_locking(n: u32, ) -> Weight { - (57_434_000_u64) - // Standard Error: 95_000 - .saturating_add((94_182_000_u64).saturating_mul(n as Weight)) - .saturating_add(RocksDbWeight::get().reads(5_u64)) - .saturating_add(RocksDbWeight::get().reads((5_u64).saturating_mul(n as Weight))) - .saturating_add(RocksDbWeight::get().writes(4_u64)) - .saturating_add(RocksDbWeight::get().writes((3_u64).saturating_mul(n as Weight))) - } - fn on_initialize_unlock(n: u32, ) -> Weight { - (26_036_000_u64) - // Standard Error: 10_000 - .saturating_add((27_339_000_u64).saturating_mul(n as Weight)) - .saturating_add(RocksDbWeight::get().reads(1_u64)) - .saturating_add(RocksDbWeight::get().reads((2_u64).saturating_mul(n as Weight))) - .saturating_add(RocksDbWeight::get().writes(1_u64)) - .saturating_add(RocksDbWeight::get().writes((3_u64).saturating_mul(n as Weight))) - } - fn on_initialize_no_action() -> Weight { - (4_341_000_u64) - .saturating_add(RocksDbWeight::get().reads(1_u64)) - } -} diff --git a/pallets/kilt-launch/src/lib.rs b/pallets/kilt-launch/src/lib.rs deleted file mode 100644 index a510d3a52..000000000 --- a/pallets/kilt-launch/src/lib.rs +++ /dev/null @@ -1,889 +0,0 @@ -// KILT Blockchain – https://botlabs.org -// Copyright (C) 2019-2022 BOTLabs GmbH - -// The KILT Blockchain is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. - -// The KILT Blockchain is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. - -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -// If you feel like getting in touch with us, you can do so at info@botlabs.org - -//! # KILT Launch Pallet -//! -//! A simple pallet providing means of setting up KILT balance locks and -//! vesting schedules for unowned accounts in the genesis block. These should -//! later be migrated to user-owned accounts via the extrinsic -//! `migrate_genesis_account` which has to be signed by a specific account -//! called `TransferAccount`. The latter is also set in the genesis block -//! and can be changed by calling the sudo extrinsic `change_transfer_account`. -//! -//! - [`Config`] -//! - [`Call`] -//! - [`Pallet`] -//! -//! ## Overview -//! -//! The KILT Launch pallet provides functions for: -//! -//! - Setting vesting information and KILT balance lock for unowned accounts in -//! genesis block. -//! - Migrating vesting/KILT balance lock from unowned accounts to user-owned -//! accounts. -//! - Transfer locked tokens from user-owned account to another. NOTE: This will -//! be made available shortly before we remove the sudo key. -//! - Forcedly (requires sudo) changing the `TransferAccount`. -//! - Forcedly (requires sudo) removing the KILT balance lock. -//! -//! ### Terminology -//! -//! - **Lock:** A freeze on a specified amount of an account's free balance -//! until a specified block number. Multiple locks always operate over the -//! same funds, so they "overlay" rather than "stack". -//! -//! - **KILT balance lock:** A Lock with a KILT specific identifier which is -//! automatically removed when reaching the specified block number. -//! -//! - **Unowned account:** An endowed account for which potentially vesting or -//! the KILT balance lock is set up in the genesis block. -//! -//! - **User-owned account:** A regular account which was created by an entity -//! which wants to claim their tokens (potentially with vesting/KILT balance -//! lock) from an unowned account. -//! -//! ## Interface -//! -//! ### Dispatchable Functions -//! -//! - `migrate_genesis_account` - Migrate vesting or the KILT balance lock from -//! an unowned account to a user-owned account. Requires signature of a -//! special account `TransferAccount` which does not have any other super -//! powers. -//! - `migrate_multiple_genesis_accounts` - Migrate vesting or the KILT balance -//! lock from a list of unowned accounts to the same target user-owned -//! account. Requires signature of a special account `TransferAccount` which -//! does not have any other super powers. -//! - `locked_transfer` - Transfer locked tokens from one user-owned account to -//! another user-owned account. This will be made available shortly before -//! removing the sudo key because the purpose of the lock to disable -//! transferability of the amount. -//! - `change_transfer_account` - Change the transfer account. Can only be -//! called by sudo. -//! - `force_unlock` - Remove all locks for a given block. Can only be called by -//! sudo. -//! -//! ## Genesis config -//! -//! The KiltLaunch pallet depends on the [`GenesisConfig`]. -//! -//! ## Assumptions -//! -//! * All accounts provided with balance and potentially vesting or a KILT -//! balance lock in the genesis block are not owned by anyone and have to be -//! migrated to accounts which are owned by users. -//! * All unowned accounts have either vesting, the KILT balance lock or neither -//! of both. This assumption is neither checked, nor forced, nor does any code -//! break if it does not hold true. -//! * Vesting starts at genesis block for all unowned addresses which should be -//! migrated to user-owned accounts. This assumption is checked during -//! migration. -//! * All KILT balance locks end at the same block for all unowned addresses -//! which should be migrated to user-owned accounts. This assumption is -//! checked during migration and locked transfer. -//! * The total number of accounts for which a KILT balance lock is set up is at -//! most `MaxClaims`, for us it will be ~6. This assumption is not checked -//! when appending to `UnlockedAt`. - -#![cfg_attr(not(feature = "std"), no_std)] -#![allow(clippy::unused_unit)] - -pub use pallet::*; -#[cfg(test)] -mod mock; - -#[cfg(test)] -mod tests; - -#[cfg(feature = "runtime-benchmarks")] -pub mod benchmarking; -pub mod default_weights; - -#[frame_support::pallet] -pub mod pallet { - use super::*; - pub use crate::default_weights::WeightInfo; - #[cfg(feature = "std")] - use frame_support::traits::GenesisBuild; - use frame_support::{ - dispatch::DispatchResultWithPostInfo, - inherent::Vec, - pallet_prelude::*, - sp_runtime::traits::{StaticLookup, Zero}, - storage::types::StorageMap, - traits::{ - Currency, ExistenceRequirement::AllowDeath, Get, LockIdentifier, LockableCurrency, StorageVersion, - WithdrawReasons, - }, - transactional, BoundedVec, PalletId, - }; - use frame_system::pallet_prelude::*; - use pallet_balances::{BalanceLock, Locks}; - use pallet_vesting::{MaxVestingSchedulesGet, Vesting, VestingInfo}; - use scale_info::TypeInfo; - use sp_runtime::traits::{AccountIdConversion, CheckedDiv, Convert, SaturatedConversion, Saturating}; - use sp_std::{ - convert::{TryFrom, TryInto}, - vec, - }; - - /// The current storage version. - const STORAGE_VERSION: StorageVersion = StorageVersion::new(1); - - pub const KILT_LAUNCH_ID: LockIdentifier = *b"kiltlnch"; - pub const VESTING_ID: LockIdentifier = *b"vesting "; - - #[derive(Debug, Encode, Decode, PartialEq, Eq, Clone, TypeInfo, MaxEncodedLen)] - #[scale_info(skip_type_params(T))] - #[codec(mel_bound())] - pub struct LockedBalance { - pub block: ::BlockNumber, - pub amount: ::Balance, - } - - #[pallet::config] - pub trait Config: frame_system::Config + pallet_balances::Config + pallet_vesting::Config { - /// Because this pallet emits events, it depends on the runtime's - /// definition of an event. - type Event: From> + IsType<::Event>; - - /// Maximum number of claims which can be migrated in a single call. - /// Used for weight estimation. - /// - /// Note: Benchmarks will need to be re-run and weights adjusted if this - /// changes. - #[pallet::constant] - type MaxClaims: Get; - - /// Maximum number of accounts that get unlocked in a single block. - #[pallet::constant] - type AutoUnlockBound: Get; - - /// Amount of Balance which will be made available for each account - /// which has either vesting or locking such that transaction fees can - /// be paid from this. - #[pallet::constant] - type UsableBalance: Get<::Balance>; - - /// The kilt launch's pallet id, used for deriving its sovereign account - /// ID. - #[pallet::constant] - type PalletId: Get; - - /// Weight information for extrinsics in this pallet. - type WeightInfo: WeightInfo; - } - - #[pallet::pallet] - #[pallet::generate_store(pub(super) trait Store)] - #[pallet::storage_version(STORAGE_VERSION)] - pub struct Pallet(_); - - #[pallet::genesis_config] - pub struct GenesisConfig { - pub balance_locks: Vec<(T::AccountId, T::BlockNumber, ::Balance)>, - pub transfer_account: T::AccountId, - pub vesting: Vec<(T::AccountId, T::BlockNumber, BalanceOf)>, - } - - #[cfg(feature = "std")] - impl Default for GenesisConfig { - fn default() -> Self { - Self { - balance_locks: Default::default(), - transfer_account: Pallet::::account_id(), - vesting: Default::default(), - } - } - } - - // Balance type based on pallet_vesting - pub type BalanceOf = - <::Currency as Currency<::AccountId>>::Balance; - - #[pallet::genesis_build] - impl GenesisBuild for GenesisConfig { - fn build(&self) { - // Generate initial custom locking configuration - // * who - Account which we are setting the custom lock for - // * length - Number of blocks from until removal of the lock - // * locked - Number of tokens which are locked - for (ref who, length, locked) in self.balance_locks.iter() { - if !length.is_zero() { - let balance = >::free_balance(who); - assert!(!balance.is_zero(), "Currencies must be init'd before locking"); - assert!( - balance >= *locked, - "Locked balance must not exceed total balance for address {:?}", - who.to_string() - ); - assert!( - !>::contains_key(who), - "Account with address {:?} must not occur twice in locking", - who.to_string() - ); - - // Add unlock block to storage - >::insert( - who, - LockedBalance:: { - block: *length, - amount: (*locked).saturating_sub(T::UsableBalance::get()), - }, - ); - // Instead of setting the lock now, we do so in - // `migrate_genesis_account`, see there for explanation - } - // Add all accounts to UnownedAccount storage - >::insert(&who, ()); - } - - // Generate initial vesting configuration, taken from pallet_vesting - // * who - Account which we are generating vesting configuration for - // * begin - Block when the account will start to vest - // * length - Number of blocks from `begin` until fully vested - for &(ref who, length, locked) in self.vesting.iter() { - if !length.is_zero() { - let balance = <::Currency as Currency< - ::AccountId, - >>::free_balance(who); - assert!(!balance.is_zero(), "Currencies must be init'd before vesting"); - assert!( - balance >= locked, - "Vested balance must not exceed total balance for address {:?}", - who.to_string() - ); - assert!( - !>::contains_key(who), - "Account with address {:?} must not occur twice in vesting", - who.to_string() - ); - - let length_as_balance = T::BlockNumberToBalance::convert(length); - let per_block = locked.checked_div(&length_as_balance).unwrap_or(locked); - - let vesting_info = VestingInfo::new(locked, per_block, T::BlockNumber::zero()); - Vesting::::try_append(who, vesting_info).expect("Too many vesting schedules at genesis"); - // Instead of setting the lock now, we do so in - // `migrate_genesis_account`, see there for explanation - } - // Add all accounts to UnownedAccount storage - >::insert(&who, ()); - } - - // Set the transfer account which has a subset of the powers of root - >::put(self.transfer_account.clone()); - } - } - - /// Account which is permitted to do token transfers in PoA phase. - /// - /// Required for the claiming process. - #[pallet::storage] - #[pallet::getter(fn get_transfer_account)] - pub type TransferAccount = StorageValue<_, ::AccountId>; - - /// Maps a block to account ids which have their balance locked. - /// - /// Required for automatic unlocking once the block number is reached in - /// `on_initialize`. - #[pallet::storage] - #[pallet::getter(fn get_unlocking_at)] - pub type UnlockingAt = StorageMap< - _, - Blake2_128Concat, - ::BlockNumber, - BoundedVec<::AccountId, ::AutoUnlockBound>, - >; - - /// Maps an account id to the (block, balance) pair in which the latter can - /// be unlocked. - /// - /// Required for the claiming process. - #[pallet::storage] - #[pallet::getter(fn get_unlocking_block)] - pub type BalanceLocks = - StorageMap<_, Blake2_128Concat, ::AccountId, LockedBalance>; - - /// Maps an unowned account id to an empty value which reflects whether it - /// is a genesis account which should be migrated, if it exists. - /// - /// Required for the claiming process. - #[pallet::storage] - #[pallet::getter(fn unowned_account)] - pub type UnownedAccount = - StorageMap<_, Blake2_128Concat, ::AccountId, (), OptionQuery>; - - #[pallet::event] - #[pallet::generate_deposit(pub fn deposit_event)] - pub enum Event { - /// A KILT balance lock has been removed in the corresponding block. - /// \[block, len\] - Unlocked(T::BlockNumber, u32), - /// An account transferred their locked balance to another account. - /// \[from, value, target\] - LockedTransfer(T::AccountId, T::Balance, T::AccountId), - /// A KILT balance lock has been set. \[who, value, until\] - AddedKiltLock(T::AccountId, T::Balance, T::BlockNumber), - /// Vesting has been added to an account. \[who, per_block, total\] - AddedVesting(T::AccountId, BalanceOf, BalanceOf), - } - - #[pallet::error] - pub enum Error { - /// The source address does not have KILT balance lock which is - /// required for `locked_transfer`. - BalanceLockNotFound, - /// The source and destination address have limits for their custom KILT - /// balance lock and thus cannot be merged. Should never be thrown. - ConflictingLockingBlocks, - /// The source and destination address differ in their vesting starting - /// blocks and thus cannot be merged. Should never be thrown. - ConflictingVestingStarts, - /// When migrating multiple accounts to the same target, the size of the - /// list of source addresses should never exceed `MaxClaims`. - MaxClaimsExceeded, - /// The source address does not have any balance lock at all which is - /// required for `locked_transfer`. - ExpectedLocks, - /// The source address has less balance available than the locked amount - /// which should be transferred in `locked_transfer`. - InsufficientBalance, - /// The source address has less locked balance than the amount which - /// should be transferred in `locked_transfer`. - InsufficientLockedBalance, - /// The source address is not a valid address which was set up as an - /// unowned account in the genesis build. - NotUnownedAccount, - /// The source address has more than one vesting scheme which should - /// only be a theoretical issue. - MultipleVestingSchemes, - /// The target address should not be the source address. - SameDestination, - /// The signing account is not the transfer account. - Unauthorized, - /// The source address has a balance lock and thus cannot be migrated. - UnexpectedLocks, - } - - #[pallet::hooks] - impl Hooks> for Pallet { - fn on_initialize(now: T::BlockNumber) -> Weight { - let locks = Self::unlock_balance(now); - if locks > 0 { - ::WeightInfo::on_initialize_unlock(locks) - } else { - ::WeightInfo::on_initialize_no_action() - } - } - } - - #[pallet::call] - impl Pallet { - /// Forcedly remove KILT balance locks via sudo for the specified block - /// number. - /// - /// The dispatch origin must be Root. - /// - /// Emits `Unlocked`. - /// - /// # - /// - The transaction's complexity is proportional to the size of - /// storage entries in `UnlockingAt` (N) which is practically uncapped - /// but in theory it should be `MaxClaims` at most. - /// --------- - /// Weight: O(N) where N is the number of accounts for which the lock - /// will be removed for the given block. - /// - Reads: UnlockingAt, [Origin Account] - /// - Kills: UnlockingAt (if N > 0), Locks (if N > 0), BalanceLocks (if - /// N > 0) - /// # - #[pallet::weight(::WeightInfo::force_unlock(T::MaxClaims::get()))] - pub fn force_unlock(origin: OriginFor, block: T::BlockNumber) -> DispatchResultWithPostInfo { - ensure_root(origin)?; - - let weight = ::WeightInfo::force_unlock(Self::unlock_balance(block)); - - Ok(Some(weight).into()) - } - - /// Forcedly change the transfer account to the specified account. - /// - /// The dispatch origin must be Root. - /// - /// # - /// Weight: O(1) - /// - Reads: [Origin Account] - /// - Writes: TransferAccount - /// # - #[pallet::weight(::WeightInfo::change_transfer_account())] - pub fn change_transfer_account( - origin: OriginFor, - transfer_account: ::Source, - ) -> DispatchResult { - ensure_root(origin)?; - let transfer_account = T::Lookup::lookup(transfer_account)?; - - >::put(transfer_account); - - Ok(()) - } - - /// Transfer tokens and vesting information or the KILT balance lock - /// from an unowned source address to an account owned by the target. - /// - /// If vesting info or a KILT balance lock has been set up for the - /// source account in the genesis block via `GenesisBuild`, then - /// the corresponding locked/vested information and balance is migrated - /// automatically. Please note that even though this extrinsic supports - /// migrating both the KILT balance lock as well as vesting in one call, - /// all source accounts should only contain either a KILT balance lock - /// or vesting. - /// - /// Additionally, for vesting we already unlock the - /// usable balance until the current block. This should enable the user - /// to pay the transaction fees for the next call of `vest` which is - /// always required to be explicitly called in order to unlock (more) - /// balance from vesting. - /// - /// NOTE: Setting the KILT balance lock actually only occurs in this - /// call (and not when building the genesis block in `GenesisBuild`) to - /// avoid overhead from handling locks when migrating. We can do so - /// because all target accounts are not owned by anyone and thus these - /// cannot sign and/or call any extrinsics. - /// - /// The dispatch origin must be TransferAccount. - /// - /// Emits either `AddedVesting` or `AddedKiltLock`. - /// - /// # - /// Weight: O(1) - /// - Reads: [Origin Account], TransferAccount, Locks, Balance, Vesting, - /// BalanceLocks - /// - Writes: Locks, Balance, UnownedAccount, Vesting (if source is - /// vesting), BalanceLocks (if source is locking), UnlockingAt (if - /// source is locking) - /// - Kills (for source): Locks, Balance, UnownedAccount, Vesting (if - /// source is vesting), BalanceLocks (if source is locking) - /// # - #[pallet::weight(::WeightInfo::migrate_genesis_account_vesting().max(::WeightInfo::migrate_genesis_account_locking()))] - #[transactional] - pub fn migrate_genesis_account( - origin: OriginFor, - source: ::Source, - target: ::Source, - ) -> DispatchResultWithPostInfo { - let who = ensure_signed(origin)?; - - // The extrinsic has to be called by the TransferAccount - ensure!(Some(who) == >::get(), Error::::Unauthorized); - - let source = T::Lookup::lookup(source)?; - let target = T::Lookup::lookup(target)?; - - ensure!(source != target, Error::::SameDestination); - ensure!( - >::contains_key(&source), - Error::::NotUnownedAccount - ); - - Ok(Some(Self::migrate_user(&source, &target)?).into()) - } - - /// Transfer all balances, vesting information and KILT balance locks - /// from multiple source addresses to the same target address. - /// - /// See `migrate_genesis_account` for details as we run the same logic - /// for each source address. - /// - /// The dispatch origin must be TransferAccount. - /// - /// Emits N events which are either `AddedVesting` or `AddedKiltLock`. - /// - /// # - /// - The transaction's complexity is proportional to the size of - /// `sources` (N) which is capped at CompactAssignments::LIMIT - /// (MaxClaims) - /// --------- - /// Weight: O(N) where N is the number of source addresses. - /// - Reads: [Origin Account], TransferAccount, UnownedAccount, Locks, - /// Balance, Vesting, BalanceLocks - /// - Writes: Locks, Balance, Vesting (if any source is vesting), - /// BalanceLocks (if aby source is locking), UnlockingAt (if any - /// source is locking) - /// - Kills (for sources): Locks, Balance, UnownedAccount, Vesting (if - /// any source is vesting), BalanceLocks (if any source is locking) - /// # - #[pallet::weight(::WeightInfo::migrate_multiple_genesis_accounts_vesting(T::MaxClaims::get()).max(::WeightInfo::migrate_multiple_genesis_accounts_locking(T::MaxClaims::get())))] - #[transactional] - pub fn migrate_multiple_genesis_accounts( - origin: OriginFor, - sources: Vec<::Source>, - target: ::Source, - ) -> DispatchResultWithPostInfo { - let who = ensure_signed(origin)?; - let target = T::Lookup::lookup(target)?; - - // The extrinsic has to be called by the TransferAccount - ensure!(Some(who) == >::get(), Error::::Unauthorized); - - ensure!( - sources.len() < T::MaxClaims::get().saturated_into::(), - Error::::MaxClaimsExceeded - ); - - let mut post_weight: Weight = 0; - for s in sources.clone().into_iter() { - let source = T::Lookup::lookup(s)?; - ensure!(source != target, Error::::SameDestination); - ensure!( - >::contains_key(&source), - Error::::NotUnownedAccount - ); - post_weight += Self::migrate_user(&source, &target)?; - } - - Ok(Some(post_weight).into()) - } - - /// Transfer KILT locked tokens to another account similar to - /// `pallet_vesting::vested_transfer`. - /// - /// Expects the source to have a KILT balance lock and at least the - /// specified amount available as balance locked with LockId - /// `KILT_LAUNCH_ID`. - /// - /// Calls `migrate_kilt_balance_lock` internally. - /// - /// Emits `LockedTransfer` and if target does not have KILT balance - /// lockup prior to transfer `AddedKiltLock`. - /// - /// # - /// Weight: O(1) - /// - Reads: [Origin Account], Locks, Balance, BalanceLocks, UnlockingAt - /// - Writes: Locks, Balance, BalanceLocks, UnlockingAt - /// - Kills (if source transfers all locked balance): Locks, - /// BalanceLocks, UnlockingAt - /// # - #[pallet::weight(::WeightInfo::locked_transfer())] - #[transactional] - pub fn locked_transfer( - origin: OriginFor, - target: ::Source, - amount: ::Balance, - ) -> DispatchResultWithPostInfo { - let source = ensure_signed(origin)?; - let target = T::Lookup::lookup(target)?; - - ensure!(target != source, Error::::SameDestination); - - // The correct check would be `ensure_can_withdraw` but since we expect `amount` - // to be locked, we just check the total balance until we remove the lock below - ensure!( - >::total_balance(&source) >= amount, - Error::::InsufficientBalance - ); - ensure!( - >::get(&source).is_some(), - Error::::BalanceLockNotFound - ); - - let locks = Locks::::get(&source); - ensure!(!locks.is_empty(), Error::::ExpectedLocks); - - if let Some(lock) = locks - .iter() - .find(|BalanceLock::<::Balance> { id, .. }| id == &KILT_LAUNCH_ID) - { - ensure!(lock.amount >= amount, Error::::InsufficientLockedBalance); - - // We can subtract because of the above check, but let's be safe - let amount_new = lock.amount.saturating_sub(amount); - - if amount_new <= T::ExistentialDeposit::get() { - // If the lock equals the ExistentialDeposit, we want to remove the lock because - // if amount_new == 0, `set_lock` would be no-op - >::remove_lock(KILT_LAUNCH_ID, &source); - - // Transfer amount + dust to target - as Currency>::transfer( - &source, - &target, - lock.amount, - AllowDeath, - )?; - } else { - // Reduce source's lock amount to enable token transfer - >::set_lock(KILT_LAUNCH_ID, &source, amount_new, WithdrawReasons::all()); - - // Transfer amount to target - as Currency>::transfer( - &source, &target, amount, AllowDeath, - )?; - } - - Self::deposit_event(Event::LockedTransfer(source.clone(), amount, target.clone())); - - // Set locks in target and remove/update storage entries for source - Ok(Some(Self::migrate_kilt_balance_lock(&source, &target, Some(amount))?).into()) - } else { - Err(Error::::BalanceLockNotFound.into()) - } - } - } - - impl Pallet { - /// The account ID of the initial accounts. - /// - /// This actually does computation. If you need to keep using it, then - /// make sure you cache the value and only call this once. - pub fn account_id() -> T::AccountId { - T::PalletId::get().into_account() - } - - /// Remove KILT balance locks for the specified block - fn unlock_balance(block: T::BlockNumber) -> u32 { - if let Some(unlocking_balance) = >::take(block) { - // Remove locks for all accounts - for account in unlocking_balance.iter() { - >::remove_lock(KILT_LAUNCH_ID, account); - >::remove(account); - } - - Self::deposit_event(Event::Unlocked(block, unlocking_balance.len().saturated_into::())); - // Safe because the vec is bound by an u32 - unlocking_balance.len().saturated_into::() - } else { - 0 - } - } - - /// Transfers all balance of the source to the target address and sets - /// up vesting or the KILT balance lock if any of the two were set up - /// for the source address. - /// - /// Note: Expects the source address to be an unowned address which was - /// set up in the genesis block via `GenesisBuild` and should be claimed - /// by a user to migrate to their account. - fn migrate_user(source: &T::AccountId, target: &T::AccountId) -> Result { - // There should be no locks for the source address - ensure!(Locks::::get(source).len().is_zero(), Error::::UnexpectedLocks); - - // Transfer to target address - let amount = >::total_balance(source); - as Currency>::transfer(source, target, amount, AllowDeath)?; - - // Migrate vesting info and set the corresponding vesting lock if necessary - let mut post_weight: Weight = Self::migrate_vesting(source, target)?; - - // Set the KILT custom lock if necessary - post_weight += Self::migrate_kilt_balance_lock(source, target, None)?; - - >::remove(&source); - post_weight += T::DbWeight::get().writes(1); - - Ok(post_weight) - } - - /// Migrate the vesting schedule from one account to another, if it was - /// set in the genesis block via `GenesisBuild`, and set the - /// corresponding vesting lock. - /// - /// We already unlock all available funds between the starting and the - /// current block. This enables the user to be able to pay for - /// transactions. One of these would be `pallet_vesting::vest()` which - /// has to be called actively to unlock more of the vested funds. - fn migrate_vesting(source: &T::AccountId, target: &T::AccountId) -> Result { - let source_vesting = if let Some(source_vesting) = Vesting::::take(source).unwrap_or_default().get(0) { - *source_vesting - } else { - return Ok(T::DbWeight::get().reads(1)); - }; - - // Check for an already existing vesting schedule for the target account - // which would be the case if the claimer requests migration from multiple - // source accounts to the same target - ensure!( - Vesting::::decode_len(&target).unwrap_or_default() <= 1, - Error::::MultipleVestingSchemes - ); - - let vesting = - if let Some(target_vesting) = Vesting::::take(&target).unwrap_or_default().into_inner().first() { - // Should never return an error all source accounts start vesting in genesis - // block - ensure!( - target_vesting.starting_block() == source_vesting.starting_block(), - Error::::ConflictingVestingStarts - ); - // We can simply sum `locked` and `per_block` because of the above requirement - VestingInfo::, T::BlockNumber>::new( - target_vesting.locked().saturating_add(source_vesting.locked()), - target_vesting.per_block().saturating_add(source_vesting.per_block()), - target_vesting.starting_block(), - ) - } else { - // If vesting hasn't been set up for target account, we can default to the one - // of the source account - source_vesting - }; - let bv = - BoundedVec::, T::BlockNumber>, MaxVestingSchedulesGet>::try_from(vec![ - vesting, - ]) - .map_err(|_| pallet_vesting::Error::::AtMaxVestingSchedules)?; - Vesting::::insert(target, bv); - // Only lock funds from now until vesting expires. - // Enables the user to have funds before actively calling `vest` if claimed - // after the genesis block. - // - // Logic was taken from pallet_vesting. - - // Disallow transfers and reserves from vested tokens which are still locked - let reasons = WithdrawReasons::TRANSFER | WithdrawReasons::RESERVE; - let now = >::block_number(); - let locked_now = vesting.locked_at::<::BlockNumberToBalance>(now); - <::Currency as LockableCurrency>::set_lock( - VESTING_ID, target, locked_now, reasons, - ); - Self::deposit_event(Event::AddedVesting( - target.clone(), - vesting.per_block(), - vesting.locked(), - )); - Ok(::WeightInfo::migrate_genesis_account_vesting()) - } - - /// Set the KILT balance lock for the target address which should - /// always be a user-owned account address. - /// - /// Can be called during the migration of unowned "genesis" addresses to - /// user-owned account addresses in `migrate_user` as well when an - /// account wants to transfer their locked tokens to another account in - /// `locked_transfer`. - fn migrate_kilt_balance_lock( - source: &T::AccountId, - target: &T::AccountId, - // Only used for `locked_transfer`, e.g., it is `None` for migration - max_amount: Option<::Balance>, - ) -> Result { - let LockedBalance:: { - block: unlock_block, - amount: source_amount, - } = if let Some(lock) = >::get(&source) { - lock - } else { - return Ok(T::DbWeight::get().reads(1)); - }; - - // In case of a `locked_transfer`, we might only want to unlock a certain amount - // Otherwise, this will always be the source's locked amount - let max_add_amount = source_amount.min(max_amount.unwrap_or(source_amount)); - - // We don't need to transfer any locks if the lock already expired. So we bail - // early - if unlock_block <= frame_system::Pallet::::block_number() { - // But we still need to reduce the old lock or remove it, if it's consumed - // completely. - if max_add_amount == source_amount { - >::remove(&source); - } else { - >::insert( - &source, - LockedBalance:: { - block: unlock_block, - amount: source_amount.saturating_sub(max_add_amount), - }, - ) - } - return Ok(T::DbWeight::get().reads(1)); - } - - // Check for an already existing KILT balance lock on the target - // account which would be the case if the claimer requests migration from - // multiple source accounts to the same target - let target_amount = if let Some(target_lock) = >::take(&target) { - // Should never throw because there is a single locking period (6 months) - ensure!(target_lock.block == unlock_block, Error::::ConflictingLockingBlocks); - - // We don't need to append `UnlockingAt` because we require both locks to end at - // the same block - // We can simply sum `amount` because of the above requirement and the check - // that source != target in the corresponding extrinsics - target_lock.amount.saturating_add(max_add_amount) - } else { - // If no custom lock has been set up for target account, we can default to the - // one of the source account and append it to `UnlockingAt` - >::try_append(unlock_block, &target).map_err(|_| Error::::MaxClaimsExceeded)?; - max_add_amount - }; - - // Set target lock in case another account should be migrated to this target - // address at a later stage - >::insert( - target, - LockedBalance:: { - amount: target_amount, - block: unlock_block, - }, - ); - // Disallow anything from being paid by custom lock - >::set_lock(KILT_LAUNCH_ID, target, target_amount, WithdrawReasons::all()); - - // Update or remove lock storage items corresponding to the source address - if max_add_amount == source_amount { - >::remove(&source); - - // Only needs to be handled in the case of a `locked_transfer`, e.g., when - // `max_amount` is set because else the source address is never added to - // `UnlockingAt` - if max_amount.is_some() { - >::try_mutate(unlock_block, |maybe_bv| -> DispatchResult { - if let Some(bv) = maybe_bv { - *bv = bv - .clone() - .into_inner() - .into_iter() - .filter(|acc_id| acc_id != source) - .collect::>() - .try_into() - .map_err(|_| Error::::MaxClaimsExceeded)? - } - Ok(()) - })?; - } - } else { - // Reduce the locked amount - // - // Note: The update of the real balance lock with id `KILT_LAUNCH_ID` already - // happens in `locked_transfer` because it is required for the token transfer - >::insert( - &source, - LockedBalance:: { - block: unlock_block, - amount: source_amount.saturating_sub(max_add_amount), - }, - ) - } - - Self::deposit_event(Event::AddedKiltLock(target.clone(), target_amount, unlock_block)); - Ok(::WeightInfo::migrate_genesis_account_locking()) - } - } -} diff --git a/pallets/kilt-launch/src/mock.rs b/pallets/kilt-launch/src/mock.rs deleted file mode 100644 index b3015893b..000000000 --- a/pallets/kilt-launch/src/mock.rs +++ /dev/null @@ -1,379 +0,0 @@ -// KILT Blockchain – https://botlabs.org -// Copyright (C) 2019-2022 BOTLabs GmbH - -// The KILT Blockchain is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. - -// The KILT Blockchain is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. - -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -// If you feel like getting in touch with us, you can do so at info@botlabs.org - -#![allow(clippy::from_over_into)] - -use crate as kilt_launch; -use frame_support::{assert_noop, assert_ok, parameter_types, traits::GenesisBuild, PalletId}; -use frame_system as system; -use pallet_balances::{BalanceLock, Locks, Reasons}; -use pallet_vesting::VestingInfo; -use runtime_common::{constants::MIN_VESTED_TRANSFER_AMOUNT, AccountId, Balance, BlockNumber, Hash, Index}; -use sp_runtime::{ - testing::Header, - traits::{BlakeTwo256, ConvertInto, IdentityLookup, Zero}, - AccountId32, -}; - -type UncheckedExtrinsic = frame_system::mocking::MockUncheckedExtrinsic; -type Block = frame_system::mocking::MockBlock; - -pub const PSEUDO_1: AccountId = AccountId32::new([1u8; 32]); -pub const PSEUDO_2: AccountId = AccountId32::new([2u8; 32]); -pub const PSEUDO_3: AccountId = AccountId32::new([3u8; 32]); -pub const PSEUDO_4: AccountId = AccountId32::new([4u8; 32]); -pub const USER: AccountId = AccountId32::new([10u8; 32]); -pub const TRANSFER_ACCOUNT: AccountId = AccountId32::new([100u8; 32]); - -// Configure a mock runtime to test the pallet. -frame_support::construct_runtime!( - pub enum Test where - Block = Block, - NodeBlock = Block, - UncheckedExtrinsic = UncheckedExtrinsic, - { - System: frame_system::{Pallet, Call, Config, Storage, Event}, - Balances: pallet_balances::{Pallet, Call, Config, Storage, Event}, - KiltLaunch: kilt_launch::{Pallet, Call, Config, Storage, Event}, - Vesting: pallet_vesting::{Pallet, Call, Config, Storage, Event}, - } -); - -parameter_types! { - pub const BlockHashCount: u64 = 250; - pub const SS58Prefix: u8 = 38; -} - -impl system::Config for Test { - type BaseCallFilter = frame_support::traits::Everything; - type BlockWeights = (); - type BlockLength = (); - type DbWeight = (); - type Origin = Origin; - type Call = Call; - type Index = Index; - type BlockNumber = BlockNumber; - type Hash = Hash; - type Hashing = BlakeTwo256; - type AccountId = AccountId; - type Lookup = IdentityLookup; - type Header = Header; - type Event = Event; - type BlockHashCount = BlockHashCount; - type Version = (); - type PalletInfo = PalletInfo; - type AccountData = pallet_balances::AccountData; - type OnNewAccount = (); - type OnKilledAccount = (); - type SystemWeightInfo = (); - type SS58Prefix = SS58Prefix; - type OnSetCode = (); - type MaxConsumers = frame_support::traits::ConstU32<16>; -} - -parameter_types! { - pub const ExistentialDeposit: Balance = 500; - pub const MaxLocks: u32 = 50; - pub const MaxReserves: u32 = 50; -} - -impl pallet_balances::Config for Test { - type MaxLocks = MaxLocks; - type MaxReserves = MaxReserves; - type ReserveIdentifier = [u8; 8]; - /// The type for recording an account's balance. - type Balance = Balance; - /// The ubiquitous event type. - type Event = Event; - type DustRemoval = (); - type ExistentialDeposit = ExistentialDeposit; - type AccountStore = System; - type WeightInfo = (); -} - -parameter_types! { - pub const MaxClaims: u32 = 4; - pub const UsableBalance: Balance = 1; - pub const AutoUnlockBound: u32 = 70; -} - -parameter_types! { - pub const LaunchPalletId: PalletId = PalletId(*b"kilt/lch"); -} - -impl kilt_launch::Config for Test { - type Event = Event; - type MaxClaims = MaxClaims; - type UsableBalance = UsableBalance; - type AutoUnlockBound = AutoUnlockBound; - type WeightInfo = (); - type PalletId = LaunchPalletId; -} - -parameter_types! { - pub const MinVestedTransfer: Balance = MIN_VESTED_TRANSFER_AMOUNT; -} - -impl pallet_vesting::Config for Test { - type Event = Event; - type Currency = Balances; - type BlockNumberToBalance = ConvertInto; - // disable vested transfers by setting min amount to max balance - type MinVestedTransfer = MinVestedTransfer; - type WeightInfo = (); - const MAX_VESTING_SCHEDULES: u32 = runtime_common::constants::MAX_VESTING_SCHEDULES; -} - -pub struct ExtBuilder { - balance_locks: Vec<(AccountId, BlockNumber, Balance)>, - vesting: Vec<(AccountId, BlockNumber, Balance)>, - #[allow(dead_code)] - transfer_account: AccountId, -} - -impl Default for ExtBuilder { - fn default() -> Self { - Self { - balance_locks: vec![], - vesting: vec![], - transfer_account: TRANSFER_ACCOUNT, - } - } -} - -/// Calls `migrate_genesis_account` and checks whether balance, vesting and -/// balance locks have been migrated properly to the destination address. -pub fn ensure_single_migration_works( - source: &AccountId, - dest: &AccountId, - vesting_info: Option>, - locked_info: Option<(kilt_launch::LockedBalance, Balance)>, -) { - assert_noop!( - KiltLaunch::migrate_genesis_account(Origin::signed(PSEUDO_1), source.to_owned(), dest.to_owned()), - kilt_launch::Error::::Unauthorized - ); - assert_ok!(KiltLaunch::migrate_genesis_account( - Origin::signed(TRANSFER_ACCOUNT), - source.to_owned(), - dest.to_owned() - )); - let now: BlockNumber = System::block_number(); - - // Check for desired death of allocation account - assert!(Balances::free_balance(source).is_zero()); - assert!(Vesting::vesting(source).is_none()); - assert!(kilt_launch::BalanceLocks::::get(source).is_none()); - assert!(!frame_system::Account::::contains_key(source)); - - // Check storage migration to dest - let mut locked_balance: Balance = Balance::zero(); - let mut num_of_locks = 0; - if let Some(vesting) = vesting_info { - assert_eq!( - Vesting::vesting(dest) - .expect("missing vesting info") - .into_inner() - .get(0), - Some(&vesting) - ); - locked_balance = vesting.locked(); - num_of_locks += 1; - } - if let Some((lock, _)) = locked_info.clone() { - // only if the lock is not expired, it should show up here - if lock.block > now { - assert_eq!(kilt_launch::BalanceLocks::::get(dest), Some(lock.clone())); - assert_eq!( - kilt_launch::UnlockingAt::::get(lock.block) - .unwrap_or_default() - .into_inner(), - vec![dest.to_owned()] - ); - locked_balance = locked_balance.max(lock.amount); - num_of_locks += 1; - } - } - - // Check correct setting of locks for dest - let balance_locks = Locks::::get(dest); - let mut fee_balance: Balance = Balance::zero(); - let mut maybe_balance: Balance = Balance::zero(); - let mut usable_balance: Balance = Balance::zero(); - assert_eq!(balance_locks.len(), num_of_locks); - for BalanceLock { id, amount, reasons } in balance_locks { - match id { - crate::VESTING_ID => { - let vesting = vesting_info.expect("No vesting schedule found"); - fee_balance = vesting.locked(); - usable_balance = vesting.per_block(); - assert_eq!(reasons, Reasons::Misc); - } - crate::KILT_LAUNCH_ID => { - let (lock, add) = locked_info.clone().expect("No vesting schedule found"); - assert_eq!(amount, lock.amount); - assert_eq!(reasons, Reasons::All); - maybe_balance = add + ::UsableBalance::get(); - } - _ => panic!("Unexpected balance lock id {:?}", id), - }; - } - - if num_of_locks > 0 { - assert_noop!( - KiltLaunch::migrate_genesis_account(Origin::signed(TRANSFER_ACCOUNT), dest.to_owned(), TRANSFER_ACCOUNT), - kilt_launch::Error::::NotUnownedAccount - ); - } - - // TODO: Add positive check for staking once it has been added - - // Check correct migration of balance - // In our tests, vesting and locking is not resolved before the 10th block. At - // most times, now should be the first block. - if now < 10 { - // locked balance should be free - // custom locks: + UsableBalance - assert_eq!(Balances::free_balance(dest), locked_balance + maybe_balance); - // balance which is usable for fees - // vesting: locked_balance - // custom lock: UsableBalance - assert_eq!(Balances::usable_balance_for_fees(dest), fee_balance + maybe_balance); - // balance which is usable for anything but fees and other - // vesting: per_block * now - // locks custom locked: UsableBalance - assert_eq!(Balances::usable_balance(dest), usable_balance + maybe_balance); - // there should be nothing reserved - assert!(Balances::reserved_balance(dest).is_zero()); - - // Should not be able to transfer more than which is unlocked in first block - assert_noop!( - Balances::transfer( - Origin::signed(dest.to_owned()), - TRANSFER_ACCOUNT, - usable_balance + maybe_balance + 1 - ), - pallet_balances::Error::::LiquidityRestrictions - ); - } - - assert!(kilt_launch::UnownedAccount::::get(source).is_none()); -} - -// Checks whether the usable balance meets the expectations and if exists, if it -// can be transferred which we expect once locks are removed -pub fn assert_balance(who: AccountId, free: Balance, usable_for_fees: Balance, usable: Balance, do_transfer: bool) { - // Check balance after unlocking - assert_eq!(Balances::free_balance(&who), free); - // locked balance should be usable for fees - assert_eq!(Balances::usable_balance_for_fees(&who), usable_for_fees); - // locked balance should not be usable for anything but fees and other locks - assert_eq!(Balances::usable_balance(&who), usable); - // there should be nothing reserved - assert!(Balances::reserved_balance(&who).is_zero()); - - if do_transfer && usable > ExistentialDeposit::get() { - // Should be able to transfer all tokens but ExistentialDeposit - assert_ok!(Balances::transfer( - Origin::signed(who), - TRANSFER_ACCOUNT, - usable - ExistentialDeposit::get() - )); - } -} - -impl ExtBuilder { - pub fn vest(mut self, vesting: Vec<(AccountId, BlockNumber, Balance)>) -> Self { - self.vesting = vesting; - self - } - - pub fn pseudos_vest_all(self) -> Self { - self.vest(vec![ - (PSEUDO_1, 10, 10_000), - (PSEUDO_2, 20, 10_000), - (PSEUDO_3, 30, 300_000), - ]) - } - - pub fn lock_balance(mut self, balance_locks: Vec<(AccountId, BlockNumber, Balance)>) -> Self { - self.balance_locks = balance_locks; - self - } - - pub fn pseudos_lock_something(self) -> Self { - self.lock_balance(vec![(PSEUDO_1, 100, 1111), (PSEUDO_2, 1337, 2222)]) - } - - pub fn pseudos_lock_all(self) -> Self { - self.lock_balance(vec![ - (PSEUDO_1, 100, 10_000), - (PSEUDO_2, 1337, 10_000), - (PSEUDO_3, 100, 300_000), - ]) - } - - pub fn build(self) -> sp_io::TestExternalities { - let mut t = frame_system::GenesisConfig::default().build_storage::().unwrap(); - - pallet_balances::GenesisConfig:: { - balances: vec![ - (PSEUDO_1, 10_000), - (PSEUDO_2, 10_000), - (PSEUDO_3, 300_000), - (PSEUDO_4, 10_000), - (TRANSFER_ACCOUNT, 10_000), - ], - } - .assimilate_storage(&mut t) - .unwrap(); - - kilt_launch::GenesisConfig:: { - balance_locks: self.balance_locks, - vesting: self.vesting, - transfer_account: TRANSFER_ACCOUNT, - } - .assimilate_storage(&mut t) - .unwrap(); - - let mut ext = sp_io::TestExternalities::new(t); - ext.execute_with(|| System::set_block_number(1)); - ext - } - - pub fn build_panic( - self, - balances: Vec<(AccountId, Balance)>, - balance_locks: Vec<(AccountId, BlockNumber, Balance)>, - vesting: Vec<(AccountId, BlockNumber, Balance)>, - ) { - let mut t = frame_system::GenesisConfig::default().build_storage::().unwrap(); - - pallet_balances::GenesisConfig:: { balances } - .assimilate_storage(&mut t) - .unwrap(); - - kilt_launch::GenesisConfig:: { - balance_locks, - vesting, - transfer_account: TRANSFER_ACCOUNT, - } - .assimilate_storage(&mut t) - .unwrap() - } -} diff --git a/pallets/kilt-launch/src/tests.rs b/pallets/kilt-launch/src/tests.rs deleted file mode 100644 index ed3038726..000000000 --- a/pallets/kilt-launch/src/tests.rs +++ /dev/null @@ -1,721 +0,0 @@ -// KILT Blockchain – https://botlabs.org -// Copyright (C) 2019-2022 BOTLabs GmbH - -// The KILT Blockchain is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. - -// The KILT Blockchain is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. - -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -// If you feel like getting in touch with us, you can do so at info@botlabs.org - -use crate::{ - mock::*, BalanceLocks, Error, LockedBalance, TransferAccount, UnlockingAt, UnownedAccount, KILT_LAUNCH_ID, - VESTING_ID, -}; - -use frame_support::{ - assert_noop, assert_ok, - traits::{Currency, LockableCurrency, OnInitialize, WithdrawReasons}, -}; -use pallet_balances::{BalanceLock, Locks, Reasons}; -use pallet_vesting::{Vesting as VestingStorage, VestingInfo}; -use runtime_common::{AccountId, BlockNumber}; -use sp_runtime::traits::Zero; - -#[test] -fn check_build_genesis_config() { - ExtBuilder::default() - .pseudos_vest_all() - .pseudos_lock_something() - .build() - .execute_with(|| { - // Check balances - assert_eq!(Balances::free_balance(&PSEUDO_1), 10_000); - assert_eq!(Balances::free_balance(&PSEUDO_2), 10_000); - assert_eq!(Balances::free_balance(&PSEUDO_3), 300_000); - // Locked balance should be usable for fees - assert_eq!(Balances::usable_balance_for_fees(&PSEUDO_1), 10_000); - assert_eq!(Balances::usable_balance_for_fees(&PSEUDO_2), 10_000); - assert_eq!(Balances::usable_balance_for_fees(&PSEUDO_3), 300_000); - // There should be nothing reserved - assert_eq!(Balances::reserved_balance(&PSEUDO_1), 0); - assert_eq!(Balances::reserved_balance(&PSEUDO_2), 0); - assert_eq!(Balances::reserved_balance(&PSEUDO_3), 0); - - // Check vesting - - // Vesting over 10 blocks - let pseudo_1_vesting = VestingInfo::new(10_000, 1000, 0); - // Vesting over 20 blocks - let pseudo_2_vesting = VestingInfo::new(10_000, 500, 0); - // Vesting over 20 blocks - let pseudo_3_vesting = VestingInfo::new(300_000, 10_000, 0); - assert_eq!( - Vesting::vesting(&PSEUDO_1) - .expect("Missing vesting info") - .into_inner() - .get(0), - Some(&pseudo_1_vesting) - ); - assert_eq!( - Vesting::vesting(&PSEUDO_2) - .expect("Missing vesting info") - .into_inner() - .get(0), - Some(&pseudo_2_vesting) - ); - assert_eq!( - Vesting::vesting(&PSEUDO_3) - .expect("Missing vesting info") - .into_inner() - .get(0), - Some(&pseudo_3_vesting) - ); - - // Check balance locks - let pseudo_1_lock = LockedBalance:: { - block: 100, - amount: 1111 - ::UsableBalance::get(), - }; - let pseudo_2_lock = LockedBalance:: { - block: 1337, - amount: 2222 - ::UsableBalance::get(), - }; - assert_eq!(BalanceLocks::::get(&PSEUDO_1), Some(pseudo_1_lock)); - assert_eq!(BalanceLocks::::get(&PSEUDO_2), Some(pseudo_2_lock)); - assert!(BalanceLocks::::get(&PSEUDO_3).is_none()); - assert!(UnlockingAt::::get(100).is_none()); - assert!(UnlockingAt::::get(1337).is_none()); - - // Ensure there are no locks on pseudo accounts - assert!(Locks::::get(&PSEUDO_1).len().is_zero()); - assert!(Locks::::get(&PSEUDO_2).len().is_zero()); - assert!(Locks::::get(&PSEUDO_3).len().is_zero()); - - // Ensure all pseudo accounts are unowned accounts - assert!(UnownedAccount::::get(&PSEUDO_1).is_some()); - assert!(UnownedAccount::::get(&PSEUDO_2).is_some()); - assert!(UnownedAccount::::get(&PSEUDO_3).is_some()); - }); - - // check only vesting - ExtBuilder::default().pseudos_vest_all().build().execute_with(|| { - assert!(UnownedAccount::::get(&PSEUDO_1).is_some()); - assert!(UnownedAccount::::get(&PSEUDO_2).is_some()); - assert!(UnownedAccount::::get(&PSEUDO_3).is_some()); - }); - - // check only locks - ExtBuilder::default().pseudos_lock_all().build().execute_with(|| { - assert!(UnownedAccount::::get(&PSEUDO_1).is_some()); - assert!(UnownedAccount::::get(&PSEUDO_2).is_some()); - assert!(UnownedAccount::::get(&PSEUDO_3).is_some()); - }); - - // check lengths of 0 - ExtBuilder::default() - .vest(vec![(PSEUDO_1, 0, 100)]) - .lock_balance(vec![(PSEUDO_2, 0, 100)]) - .build() - .execute_with(|| { - assert!(UnownedAccount::::get(&PSEUDO_1).is_some()); - assert!(UnownedAccount::::get(&PSEUDO_2).is_some()); - }); -} - -#[test] -fn check_migrate_single_account_locked() { - ExtBuilder::default().pseudos_lock_all().build().execute_with(|| { - assert_noop!( - KiltLaunch::migrate_genesis_account(Origin::signed(TRANSFER_ACCOUNT), PSEUDO_1, PSEUDO_1), - Error::::SameDestination - ); - assert_noop!( - KiltLaunch::migrate_genesis_account(Origin::signed(TRANSFER_ACCOUNT), USER, PSEUDO_1), - Error::::NotUnownedAccount - ); - - let user_locked_info = LockedBalance { - block: 100, - amount: 10_000 - ::UsableBalance::get(), - }; - // Migration of balance locks - ensure_single_migration_works(&PSEUDO_1, &USER, None, Some((user_locked_info, 0))); - - // Reach balance lock limit - System::set_block_number(100); - >::on_initialize(System::block_number()); - assert!(UnlockingAt::::get(100).is_none()); - assert!(Locks::::get(&USER).len().is_zero()); - - // Should be able to transfer all tokens but ExistentialDeposit - assert_ok!(Balances::transfer( - Origin::signed(USER), - PSEUDO_2, - 10_000 - ExistentialDeposit::get() - )); - }); -} - -#[test] -fn check_migrate_single_locked_account_after_unlock_block() { - ExtBuilder::default().pseudos_lock_all().build().execute_with(|| { - // Reach balance lock limit - System::set_block_number(101); - - let user_locked_info = LockedBalance { - block: 100, - amount: 10_000 - ::UsableBalance::get(), - }; - // Migration of balance locks - ensure_single_migration_works(&PSEUDO_1, &USER, None, Some((user_locked_info, 0))); - - assert!(UnlockingAt::::get(100).is_none()); - assert!(Locks::::get(&USER).len().is_zero()); - - // Should be able to transfer all tokens but ExistentialDeposit - assert_ok!(Balances::transfer( - Origin::signed(USER), - PSEUDO_2, - 10_000 - ExistentialDeposit::get() - )); - }); -} - -#[test] -fn check_migrate_single_account_locked_twice() { - ExtBuilder::default().pseudos_lock_all().build().execute_with(|| { - let mut user_locked_info = LockedBalance { - block: 100, - amount: 10_000 - ::UsableBalance::get(), - }; - // Migrate pseudo1 lock - ensure_single_migration_works(&PSEUDO_1, &USER, None, Some((user_locked_info, 0))); - - user_locked_info = LockedBalance { - block: 100, - amount: 10_000 + 300_000 - 2 * ::UsableBalance::get(), - }; - // Migrate pseudo2 lock - ensure_single_migration_works( - &PSEUDO_3, - &USER, - None, - Some(( - user_locked_info, - // Since we migrated twice, we need to account for the extra UsableBalance when asserting - ::UsableBalance::get(), - )), - ); - - // Reach balance lock limit - System::set_block_number(100); - >::on_initialize(System::block_number()); - assert!(UnlockingAt::::get(100).is_none()); - assert!(Locks::::get(&USER).len().is_zero()); - - // Should be able to transfer all tokens but ExistentialDeposit - assert_ok!(Balances::transfer( - Origin::signed(USER), - PSEUDO_2, - 310_000 - ExistentialDeposit::get() - )); - }); -} - -#[test] -fn check_migrate_accounts_locked() { - ExtBuilder::default().pseudos_lock_all().build().execute_with(|| { - assert_noop!( - KiltLaunch::migrate_multiple_genesis_accounts( - Origin::signed(USER), - vec![PSEUDO_1, PSEUDO_2, PSEUDO_3], - USER - ), - Error::::Unauthorized - ); - - // Migrate two accounts with same end block - let locked_info = LockedBalance { - block: 100, - amount: 10_000 + 300_000 - 2 * ::UsableBalance::get(), - }; - assert_ok!(KiltLaunch::migrate_multiple_genesis_accounts( - Origin::signed(TRANSFER_ACCOUNT), - vec![PSEUDO_1, PSEUDO_3], - USER - )); - - // Check unlocking info migration - assert_eq!( - UnlockingAt::::get(100).unwrap_or_default().into_inner(), - vec![USER] - ); - assert_eq!(BalanceLocks::::get(&USER), Some(locked_info.clone())); - - // Check correct setting of lock - let balance_locks = Locks::::get(&USER); - assert_eq!(balance_locks.len(), 1); - for BalanceLock { id, amount, reasons } in balance_locks { - match id { - crate::KILT_LAUNCH_ID => { - assert_eq!(amount, locked_info.amount); - assert_eq!(reasons, Reasons::All); - } - _ => panic!("Unexpected balance lock id {:?}", id), - }; - } - - // Check balance migration - assert_balance( - USER, - locked_info.amount + 2 * ::UsableBalance::get(), - 2 * ::UsableBalance::get(), - 2 * ::UsableBalance::get(), - false, - ); - - // TODO: Add positive check for staking once it has been added - - // Reach balance lock limit - System::set_block_number(100); - >::on_initialize(System::block_number()); - assert!(UnlockingAt::::get(100).is_none()); - assert!(Locks::::get(&USER).len().is_zero()); - assert_balance( - USER, - locked_info.amount + 2 * ::UsableBalance::get(), - locked_info.amount + 2 * ::UsableBalance::get(), - locked_info.amount + 2 * ::UsableBalance::get(), - true, - ); - }); -} - -#[test] -fn check_locked_transfer() { - ExtBuilder::default() - .pseudos_lock_all() - .build() - .execute_with(|| { - let locked_info = LockedBalance { - block: 100, - amount: 10_000 - ::UsableBalance::get(), - }; - // Migration of balance locks - ensure_single_migration_works(&PSEUDO_1, &USER, None, Some((locked_info.clone(), 0))); - assert_eq!( - Locks::::get(&USER), - vec![BalanceLock { - id: KILT_LAUNCH_ID, - amount: locked_info.amount, - reasons: Reasons::All, - }] - ); - - // Cannot transfer from source to source - assert_noop!( - KiltLaunch::locked_transfer(Origin::signed(USER), USER, 1), - Error::::SameDestination - ); - - // Cannot transfer without a KILT balance lock - assert_noop!( - KiltLaunch::locked_transfer(Origin::signed(PSEUDO_4), USER, 1), - Error::::BalanceLockNotFound - ); - - // Add 1 free balance to enable to pay for tx fees - <::Currency as Currency<::AccountId>>::make_free_balance_be(&USER, locked_info.amount + 1 + ::UsableBalance::get()); - // Cannot transfer more locked than which is locked - assert_noop!( - KiltLaunch::locked_transfer(Origin::signed(USER), PSEUDO_1, locked_info.amount + 1 + ::UsableBalance::get()), - Error::::InsufficientLockedBalance - ); - - // Locked_Transfer everything but 3000 - assert_ok!(KiltLaunch::locked_transfer( - Origin::signed(USER), - PSEUDO_1, - locked_info.amount - 3000 - )); - assert_eq!( - Locks::::get(&USER), - vec![BalanceLock { - id: KILT_LAUNCH_ID, - amount: 3000, - reasons: Reasons::All, - }] - ); - assert_eq!( - Locks::::get(&PSEUDO_1), - vec![BalanceLock { - id: KILT_LAUNCH_ID, - amount: locked_info.amount - 3000, - reasons: Reasons::All, - }] - ); - assert_eq!(UnlockingAt::::get(100).unwrap_or_default().into_inner(), vec![USER, PSEUDO_1]); - assert_balance(PSEUDO_1, locked_info.amount - 3000, 0, 0, false); - - // Locked_Transfer rest - assert_ok!(KiltLaunch::locked_transfer(Origin::signed(USER), PSEUDO_1, 3000)); - assert_eq!(Locks::::get(&USER), vec![]); - assert_eq!( - Locks::::get(&PSEUDO_1), - vec![BalanceLock { - id: KILT_LAUNCH_ID, - amount: locked_info.amount, - reasons: Reasons::All, - }] - ); - assert!(BalanceLocks::::get(&USER).is_none()); - assert_eq!(BalanceLocks::::get(&PSEUDO_1), Some(locked_info.clone())); - assert_eq!(UnlockingAt::::get(100).unwrap_or_default().into_inner(), vec![PSEUDO_1]); - assert_balance(PSEUDO_1, locked_info.amount, 0, 0, false); - - // Reach balance lock limit - System::set_block_number(100); - >::on_initialize(System::block_number()); - assert!(UnlockingAt::::get(100).is_none()); - assert!(Locks::::get(&PSEUDO_1).len().is_zero()); - assert_balance(PSEUDO_1, locked_info.amount, locked_info.amount, locked_info.amount, true); - }); -} - -#[test] -fn check_migrate_single_account_vested() { - ExtBuilder::default().pseudos_vest_all().build().execute_with(|| { - assert_noop!( - KiltLaunch::migrate_genesis_account(Origin::signed(TRANSFER_ACCOUNT), PSEUDO_1, PSEUDO_1), - Error::::SameDestination - ); - assert_noop!( - KiltLaunch::migrate_genesis_account(Origin::signed(TRANSFER_ACCOUNT), USER, PSEUDO_1), - Error::::NotUnownedAccount - ); - - // Vesting over 10 blocks - let user_vesting_schedule = VestingInfo::new(10_000, 1000, 0); - - // Migration of vesting info and balance locks - ensure_single_migration_works(&PSEUDO_1, &USER, Some(user_vesting_schedule), None); - - // Reach vesting limit - System::set_block_number(10); - - assert_ok!(Vesting::vest(Origin::signed(USER))); - assert!(Vesting::vesting(&USER).is_none()); - assert!(Locks::::get(&USER).len().is_zero()); - // Should be able to transfer the remaining tokens - assert_ok!(Balances::transfer( - Origin::signed(USER), - PSEUDO_1, - user_vesting_schedule.locked() - user_vesting_schedule.per_block() - )); - }); -} - -#[test] -fn check_migrate_single_account_twice_vested() { - ExtBuilder::default().pseudos_vest_all().build().execute_with(|| { - // Migration of vesting info from pseudo_1 to user_1 - // Vesting over 10 blocks - let mut user_vesting_schedule = VestingInfo::new(10_000, 1000, 0); - ensure_single_migration_works(&PSEUDO_1, &USER, Some(user_vesting_schedule), None); - - // Migration of vesting info from pseudo_2 with different vesting period to - // user_1 - // Vesting over 10 blocks - user_vesting_schedule = VestingInfo::new( - user_vesting_schedule.locked() + 10_000, - user_vesting_schedule.per_block() + 500, - 0, - ); - ensure_single_migration_works(&PSEUDO_2, &USER, Some(user_vesting_schedule), None); - - // Reach first vesting limit - System::set_block_number(10); - assert_ok!(Vesting::vest(Origin::signed(USER))); - assert_eq!( - Vesting::vesting(&USER) - .expect("Missing vesting info") - .into_inner() - .get(0), - Some(&user_vesting_schedule) - ); - assert_eq!(Locks::::get(&USER).len(), 1); - assert_balance( - USER, - user_vesting_schedule.locked(), - user_vesting_schedule.locked(), - user_vesting_schedule.locked() - 500 * 10, - false, - ); - - // Reach second vesting limit - System::set_block_number(20); - assert_ok!(Vesting::vest(Origin::signed(USER))); - assert!(Vesting::vesting(&USER).is_none()); - assert!(Locks::::get(&USER).len().is_zero()); - // Should be able to transfer the remaining tokens - assert_balance( - USER, - user_vesting_schedule.locked(), - user_vesting_schedule.locked(), - user_vesting_schedule.locked(), - true, - ); - }); -} - -#[test] -fn check_migrate_accounts_vested() { - ExtBuilder::default().pseudos_vest_all().build().execute_with(|| { - assert_noop!( - KiltLaunch::migrate_multiple_genesis_accounts( - Origin::signed(USER), - vec![PSEUDO_1, PSEUDO_2, PSEUDO_3], - USER - ), - Error::::Unauthorized - ); - assert_noop!( - KiltLaunch::migrate_multiple_genesis_accounts( - Origin::signed(TRANSFER_ACCOUNT), - vec![PSEUDO_1, USER], - PSEUDO_2 - ), - Error::::NotUnownedAccount - ); - - assert_ok!(KiltLaunch::migrate_multiple_genesis_accounts( - Origin::signed(TRANSFER_ACCOUNT), - vec![PSEUDO_1, PSEUDO_2, PSEUDO_3], - USER - )); - - let vesting_info = VestingInfo::new(10_000 + 10_000 + 300_000, 10_000 / 10 + 10_000 / 20 + 300_000 / 30, 0); - - // Check vesting info migration - assert_eq!( - Vesting::vesting(&USER) - .expect("Missing vesting info") - .into_inner() - .get(0), - Some(&vesting_info) - ); - - // Check correct setting of lock - let balance_locks = Locks::::get(&USER); - assert_eq!(balance_locks.len(), 1); - for BalanceLock { id, amount, reasons } in balance_locks { - match id { - crate::VESTING_ID => { - assert_eq!(amount, vesting_info.locked() - vesting_info.per_block()); - assert_eq!(reasons, Reasons::Misc); - } - _ => panic!("Unexpected balance lock id {:?}", id), - }; - } - - // Check balance migration - assert_balance( - USER, - vesting_info.locked(), - vesting_info.locked(), - vesting_info.per_block(), - false, - ); - - // TODO: Add positive check for staking once it has been added - - // Reach vesting limits - for block in &[9, 10, 15, 20, 27] { - System::set_block_number(*block); - assert_ok!(Vesting::vest(Origin::signed(USER))); - assert_eq!( - Locks::::get(USER), - vec![BalanceLock { - id: VESTING_ID, - amount: vesting_info.locked() - vesting_info.per_block() * (*block as u128), - reasons: Reasons::Misc - }] - ); - assert_eq!( - Vesting::vesting(&USER) - .expect("Missing vesting info") - .into_inner() - .get(0), - Some(&vesting_info) - ); - assert_balance( - USER, - vesting_info.locked(), - vesting_info.locked(), - vesting_info.per_block() * (*block as u128), - false, - ); - } - System::set_block_number(30); - assert_ok!(Vesting::vest(Origin::signed(USER))); - assert!(Vesting::vesting(&USER).is_none()); - assert!(Locks::::get(&USER).len().is_zero()); - }); -} - -#[test] -fn check_negative_migrate_accounts_vested() { - ExtBuilder::default().pseudos_vest_all().build().execute_with(|| { - // Migrate from source to source - assert_noop!( - KiltLaunch::migrate_multiple_genesis_accounts(Origin::signed(TRANSFER_ACCOUNT), vec![PSEUDO_1, USER], USER), - Error::::SameDestination - ); - - // Migrate too many accounts - assert_noop!( - KiltLaunch::migrate_multiple_genesis_accounts( - Origin::signed(TRANSFER_ACCOUNT), - vec![PSEUDO_1, PSEUDO_2, PSEUDO_3, PSEUDO_4], - USER - ), - Error::::MaxClaimsExceeded - ); - - // Set up vesting with conflicting start block - let pseudo_4_vesting = VestingInfo::new(10_000, 1, 1); - assert_ok!(VestingStorage::::try_append(PSEUDO_4, pseudo_4_vesting)); - assert_noop!( - KiltLaunch::migrate_multiple_genesis_accounts( - Origin::signed(TRANSFER_ACCOUNT), - vec![PSEUDO_1, PSEUDO_4], - USER - ), - Error::::NotUnownedAccount - ); - UnownedAccount::::insert(PSEUDO_4, ()); - assert_noop!( - KiltLaunch::migrate_multiple_genesis_accounts( - Origin::signed(TRANSFER_ACCOUNT), - vec![PSEUDO_1, PSEUDO_4], - USER - ), - Error::::ConflictingVestingStarts - ); - - // Set a vesting lock which should not be there from the Genesis builder - <::Currency as LockableCurrency>::set_lock( - VESTING_ID, - &PSEUDO_4, - 1, - WithdrawReasons::TRANSFER | WithdrawReasons::RESERVE, - ); - assert_noop!( - KiltLaunch::migrate_multiple_genesis_accounts(Origin::signed(TRANSFER_ACCOUNT), vec![PSEUDO_4], USER), - Error::::UnexpectedLocks - ); - }); -} - -#[test] -fn check_negative_migrate_accounts_locked() { - ExtBuilder::default().pseudos_lock_all().build().execute_with(|| { - // Migrate from source to source - assert_noop!( - KiltLaunch::migrate_multiple_genesis_accounts(Origin::signed(TRANSFER_ACCOUNT), vec![PSEUDO_1, USER], USER), - Error::::SameDestination - ); - - // Migrate two accounts with different ending blocks - assert_noop!( - KiltLaunch::migrate_multiple_genesis_accounts( - Origin::signed(TRANSFER_ACCOUNT), - vec![PSEUDO_1, PSEUDO_2], - USER - ), - Error::::ConflictingLockingBlocks - ); - - // Add a lock to pseudo2 which should not be there - Balances::set_lock(KILT_LAUNCH_ID, &PSEUDO_2, 1, WithdrawReasons::all()); - assert_noop!( - KiltLaunch::migrate_multiple_genesis_accounts(Origin::signed(TRANSFER_ACCOUNT), vec![PSEUDO_2], USER), - Error::::UnexpectedLocks - ); - }); -} - -#[test] -fn check_force_unlock() { - ExtBuilder::default().pseudos_lock_all().build().execute_with(|| { - let user_locked_info = LockedBalance { - block: 100, - amount: 10_000 - ::UsableBalance::get(), - }; - ensure_single_migration_works(&PSEUDO_1, &USER, None, Some((user_locked_info, 0))); - - assert_ok!(KiltLaunch::force_unlock(Origin::root(), 100)); - assert!(BalanceLocks::::get(&USER).is_none()); - assert!(Locks::::get(&USER).len().is_zero()); - assert_eq!(Balances::usable_balance(&USER), 10_000); - }); -} - -#[test] -fn check_change_transfer_account() { - ExtBuilder::default().build().execute_with(|| { - assert_eq!(TransferAccount::::get(), Some(TRANSFER_ACCOUNT)); - assert_ok!(KiltLaunch::change_transfer_account(Origin::root(), PSEUDO_1)); - assert_eq!(TransferAccount::::get(), Some(PSEUDO_1)); - }); -} - -#[test] -#[should_panic = "Currencies must be init'd before locking"] -fn check_genesis_panic_locking_balance() { - ExtBuilder::default().build_panic(vec![], vec![(PSEUDO_1, 100, 10_000)], vec![]); -} -#[test] -#[should_panic = "Currencies must be init'd before vesting"] -fn check_genesis_panic_vesting_balance() { - ExtBuilder::default().build_panic(vec![], vec![], vec![(PSEUDO_1, 100, 10_000)]); -} - -#[test] -#[should_panic = r#"Locked balance must not exceed total balance for address "5C62Ck4UrFPiBtoCmeSrgF7x9yv9mn38446dhCpsi2mLHiFT""#] -fn check_genesis_panic_locking_amount() { - ExtBuilder::default().build_panic(vec![(PSEUDO_1, 10_000)], vec![(PSEUDO_1, 100, 10_001)], vec![]); -} -#[test] -#[should_panic = r#"Vested balance must not exceed total balance for address "5C62Ck4UrFPiBtoCmeSrgF7x9yv9mn38446dhCpsi2mLHiFT""#] -fn check_genesis_panic_vesting_amount() { - ExtBuilder::default().build_panic(vec![(PSEUDO_1, 10_000)], vec![], vec![(PSEUDO_1, 100, 10_001)]); -} - -#[test] -#[should_panic = r#"Account with address "5C62Ck4UrFPiBtoCmeSrgF7x9yv9mn38446dhCpsi2mLHiFT" must not occur twice in locking"#] -fn check_genesis_panic_locking_same_acc() { - ExtBuilder::default().build_panic( - vec![(PSEUDO_1, 10_000)], - vec![(PSEUDO_1, 100, 10_000), (PSEUDO_1, 1337, 10_000)], - vec![], - ); -} -#[test] -#[should_panic = r#"Account with address "5C62Ck4UrFPiBtoCmeSrgF7x9yv9mn38446dhCpsi2mLHiFT" must not occur twice in vesting"#] -fn check_genesis_vesting_locking_same_acc() { - ExtBuilder::default().build_panic( - vec![(PSEUDO_1, 10_000)], - vec![], - vec![(PSEUDO_1, 100, 10_000), (PSEUDO_1, 1337, 10_000)], - ); -} diff --git a/pallets/pallet-did-lookup/Cargo.toml b/pallets/pallet-did-lookup/Cargo.toml index 558f8a010..f70607676 100644 --- a/pallets/pallet-did-lookup/Cargo.toml +++ b/pallets/pallet-did-lookup/Cargo.toml @@ -4,36 +4,36 @@ description = "Lookup the DID for a blockchain account." edition = "2021" name = "pallet-did-lookup" repository = "https://github.com/KILTprotocol/mashnet-node" -version = "1.6.2" +version = "1.7.0" [package.metadata.docs.rs] targets = ["x86_64-unknown-linux-gnu"] [dev-dependencies] kilt-support = {features = ["mock"], path = "../../support"} -runtime-common = {path = "../../runtimes/common"} -pallet-balances = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-io = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-keystore = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} +pallet-balances = {branch = "polkadot-v0.9.24", git = "https://github.com/paritytech/substrate"} +sp-core = {branch = "polkadot-v0.9.24", git = "https://github.com/paritytech/substrate"} +sp-io = {branch = "polkadot-v0.9.24", git = "https://github.com/paritytech/substrate"} +sp-keystore = {branch = "polkadot-v0.9.24", git = "https://github.com/paritytech/substrate"} [dependencies] -codec = {default-features = false, features = ["derive"], package = "parity-scale-codec", version = "2.3.1"} -log = "0.4" -scale-info = {version = "1.0", default-features = false, features = ["derive"]} +codec = {package = "parity-scale-codec", version = "3.1.2", default-features = false, features = ["derive"]} +log = "0.4.17" +scale-info = {version = "2.1.1", default-features = false, features = ["derive"]} # KILT kilt-support = {default-features = false, path = "../../support"} # Substrate dependencies -frame-support = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -frame-system = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-runtime = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-std = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} +frame-support = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +frame-system = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +sp-runtime = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +sp-std = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} # benchmarking -frame-benchmarking = {branch = "polkadot-v0.9.17", optional = true, default-features = false, git = "https://github.com/paritytech/substrate"} -sp-io = {branch = "polkadot-v0.9.17", optional = true, default-features = false, git = "https://github.com/paritytech/substrate"} +frame-benchmarking = {branch = "polkadot-v0.9.24", optional = true, default-features = false, git = "https://github.com/paritytech/substrate"} +sp-io = {branch = "polkadot-v0.9.24", optional = true, default-features = false, git = "https://github.com/paritytech/substrate"} [features] default = ["std"] @@ -42,6 +42,7 @@ runtime-benchmarks = [ "frame-benchmarking", "sp-io", "kilt-support/runtime-benchmarks", + "frame-support/runtime-benchmarks", "frame-system/runtime-benchmarks", ] diff --git a/pallets/pallet-did-lookup/src/default_weights.rs b/pallets/pallet-did-lookup/src/default_weights.rs index 091bf9418..9bc80f608 100644 --- a/pallets/pallet-did-lookup/src/default_weights.rs +++ b/pallets/pallet-did-lookup/src/default_weights.rs @@ -28,7 +28,7 @@ // --chain=dev // --steps=50 // --repeat=20 -// --pallet=pallet-did-lookup +// --pallet=pallet_did_lookup // --extrinsic=* // --execution=wasm // --wasm-execution=compiled diff --git a/pallets/pallet-did-lookup/src/mock.rs b/pallets/pallet-did-lookup/src/mock.rs index a0fb4f5b2..9cc14b74f 100644 --- a/pallets/pallet-did-lookup/src/mock.rs +++ b/pallets/pallet-did-lookup/src/mock.rs @@ -20,14 +20,21 @@ use frame_support::parameter_types; use kilt_support::mock::{mock_origin, SubjectId}; use sp_runtime::{ testing::Header, - traits::{BlakeTwo256, IdentityLookup}, + traits::{BlakeTwo256, IdentifyAccount, IdentityLookup, Verify}, + MultiSignature, }; use crate as pallet_did_lookup; -use runtime_common::{AccountId, AccountPublic, Balance, BlockHashCount, BlockNumber, Hash, Index, Signature}; -type UncheckedExtrinsic = frame_system::mocking::MockUncheckedExtrinsic; -type Block = frame_system::mocking::MockBlock; +pub(crate) type UncheckedExtrinsic = frame_system::mocking::MockUncheckedExtrinsic; +pub(crate) type Block = frame_system::mocking::MockBlock; +pub(crate) type Hash = sp_core::H256; +pub(crate) type Balance = u128; +pub(crate) type Signature = MultiSignature; +pub(crate) type AccountPublic = ::Signer; +pub(crate) type AccountId = ::AccountId; +pub(crate) type Index = u64; +pub(crate) type BlockNumber = u64; frame_support::construct_runtime!( pub enum Test where @@ -44,6 +51,7 @@ frame_support::construct_runtime!( parameter_types! { pub const SS58Prefix: u8 = 38; + pub const BlockHashCount: BlockNumber = 2400; } impl frame_system::Config for Test { @@ -116,8 +124,8 @@ impl mock_origin::Config for Test { type SubjectId = SubjectId; } -pub(crate) const ACCOUNT_00: runtime_common::AccountId = runtime_common::AccountId::new([1u8; 32]); -pub(crate) const ACCOUNT_01: runtime_common::AccountId = runtime_common::AccountId::new([2u8; 32]); +pub(crate) const ACCOUNT_00: AccountId = AccountId::new([1u8; 32]); +pub(crate) const ACCOUNT_01: AccountId = AccountId::new([2u8; 32]); pub(crate) const DID_00: SubjectId = SubjectId(ACCOUNT_00); pub(crate) const DID_01: SubjectId = SubjectId(ACCOUNT_01); @@ -128,11 +136,13 @@ pub struct ExtBuilder { } impl ExtBuilder { + #[must_use] pub fn with_balances(mut self, balances: Vec<(AccountId, Balance)>) -> Self { self.balances = balances; self } + #[must_use] pub fn with_connections(mut self, connections: Vec<(AccountId, SubjectId, AccountId)>) -> Self { self.connections = connections; self diff --git a/pallets/pallet-did-lookup/src/tests.rs b/pallets/pallet-did-lookup/src/tests.rs index 8fdb48713..827c9ef16 100644 --- a/pallets/pallet-did-lookup/src/tests.rs +++ b/pallets/pallet-did-lookup/src/tests.rs @@ -19,7 +19,6 @@ use codec::Encode; use frame_support::{assert_noop, assert_ok}; use kilt_support::{deposit::Deposit, mock::mock_origin}; -use runtime_common::BlockNumber; use sp_runtime::{ app_crypto::{sr25519, Pair}, traits::IdentifyAccount, diff --git a/pallets/pallet-inflation/Cargo.toml b/pallets/pallet-inflation/Cargo.toml index 5ba38dcd4..495f5120e 100644 --- a/pallets/pallet-inflation/Cargo.toml +++ b/pallets/pallet-inflation/Cargo.toml @@ -4,39 +4,39 @@ description = "Substrate pallet issueing a pre-configured amount of tokens to th edition = "2021" name = "pallet-inflation" repository = "https://github.com/KILTprotocol/mashnet-node" -version = "1.6.2" +version = "1.7.0" [package.metadata.docs.rs] targets = ["x86_64-unknown-linux-gnu"] [dev-dependencies] -serde = {version = "1.0.132"} +serde = "1.0.137" -runtime-common = {path = "../../runtimes/common"} - -pallet-balances = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-core = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-io = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} +pallet-balances = {branch = "polkadot-v0.9.24", git = "https://github.com/paritytech/substrate"} +sp-core = {branch = "polkadot-v0.9.24", git = "https://github.com/paritytech/substrate"} +sp-io = {branch = "polkadot-v0.9.24", git = "https://github.com/paritytech/substrate"} [dependencies] -codec = {default-features = false, features = ["derive"], package = "parity-scale-codec", version = "2.3.1"} -scale-info = {version = "1.0", default-features = false, features = ["derive"]} -serde = {optional = true, version = "1.0.132"} +codec = {package = "parity-scale-codec", version = "3.1.2", default-features = false, features = ["derive"]} +scale-info = {version = "2.1.1", default-features = false, features = ["derive"]} +serde = {version = "1.0.137", optional = true} # benchmarking -frame-benchmarking = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17", default-features = false, optional = true} +frame-benchmarking = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24", default-features = false, optional = true} # Substrate dependencies -frame-support = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -frame-system = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-runtime = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-std = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} +frame-support = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +frame-system = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +sp-runtime = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +sp-std = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} [features] default = ["std"] runtime-benchmarks = [ "frame-benchmarking", + "frame-support/runtime-benchmarks", + "frame-system/runtime-benchmarks", ] std = [ diff --git a/pallets/pallet-inflation/src/mock.rs b/pallets/pallet-inflation/src/mock.rs index caa06d4aa..432f39a3f 100644 --- a/pallets/pallet-inflation/src/mock.rs +++ b/pallets/pallet-inflation/src/mock.rs @@ -22,19 +22,30 @@ use frame_support::{ parameter_types, traits::{Currency, OnFinalize, OnInitialize, OnUnbalanced}, }; -use runtime_common::{ - constants::treasury::{INITIAL_PERIOD_LENGTH, INITIAL_PERIOD_REWARD_PER_BLOCK}, - AccountId, Balance, BlockHashCount, BlockNumber, Hash, Index, -}; + use sp_runtime::{ testing::Header, - traits::{BlakeTwo256, IdentityLookup}, + traits::{BlakeTwo256, IdentifyAccount, IdentityLookup, Verify}, + MultiSignature, }; type UncheckedExtrinsic = frame_system::mocking::MockUncheckedExtrinsic; type Block = frame_system::mocking::MockBlock; - -pub(crate) const TREASURY_ACC: AccountId = runtime_common::AccountId::new([1u8; 32]); +type Hash = sp_core::H256; +type Balance = u128; +type Signature = MultiSignature; +type AccountPublic = ::Signer; +type AccountId = ::AccountId; +type Index = u64; +type BlockNumber = u64; + +pub(crate) const TREASURY_ACC: AccountId = AccountId::new([1u8; 32]); + +pub const BLOCKS_PER_YEAR: BlockNumber = 60_000 / 12_000 * 60 * 24 * 36525 / 100; +pub const KILT: Balance = 10u128.pow(15); +pub const INITIAL_PERIOD_LENGTH: BlockNumber = BLOCKS_PER_YEAR.saturating_mul(5); +const YEARLY_REWARD: Balance = 2_000_000u128 * KILT; +pub const INITIAL_PERIOD_REWARD_PER_BLOCK: Balance = YEARLY_REWARD / (BLOCKS_PER_YEAR as Balance); frame_support::construct_runtime!( pub enum Test where @@ -50,6 +61,7 @@ frame_support::construct_runtime!( parameter_types! { pub const SS58Prefix: u8 = 38; + pub const BlockHashCount: BlockNumber = 2400; } impl frame_system::Config for Test { diff --git a/pallets/pallet-web3-names/Cargo.toml b/pallets/pallet-web3-names/Cargo.toml index 8b8a6ec99..3cd3a5a78 100644 --- a/pallets/pallet-web3-names/Cargo.toml +++ b/pallets/pallet-web3-names/Cargo.toml @@ -4,7 +4,7 @@ description = "Unique Web3 nicknames for KILT DIDs." edition = "2021" name = "pallet-web3-names" repository = "https://github.com/KILTprotocol/mashnet-node" -version = "1.6.2" +version = "1.7.0" [package.metadata.docs.rs] targets = ["x86_64-unknown-linux-gnu"] @@ -12,27 +12,27 @@ targets = ["x86_64-unknown-linux-gnu"] [dev-dependencies] kilt-support = {features = ["mock"], path = "../../support"} -pallet-balances = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-core = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-io = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-keystore = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} +pallet-balances = {branch = "polkadot-v0.9.24", git = "https://github.com/paritytech/substrate"} +sp-core = {branch = "polkadot-v0.9.24", git = "https://github.com/paritytech/substrate"} +sp-io = {branch = "polkadot-v0.9.24", git = "https://github.com/paritytech/substrate"} +sp-keystore = {branch = "polkadot-v0.9.24", git = "https://github.com/paritytech/substrate"} [dependencies] -codec = {default-features = false, features = ["derive"], package = "parity-scale-codec", version = "2.3.1"} -scale-info = {version = "1.0", default-features = false, features = ["derive"]} +codec = {package = "parity-scale-codec", version = "3.1.2", default-features = false, features = ["derive"]} +scale-info = {version = "2.1.1", default-features = false, features = ["derive"]} # KILT kilt-support = {default-features = false, path = "../../support"} # Substrate dependencies -frame-support = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -frame-system = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-runtime = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-std = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} +frame-support = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +frame-system = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +sp-runtime = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +sp-std = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} # benchmarking -frame-benchmarking = {branch = "polkadot-v0.9.17", optional = true, default-features = false, git = "https://github.com/paritytech/substrate"} -sp-io = {branch = "polkadot-v0.9.17", optional = true, default-features = false, git = "https://github.com/paritytech/substrate"} +frame-benchmarking = {branch = "polkadot-v0.9.24", optional = true, default-features = false, git = "https://github.com/paritytech/substrate"} +sp-io = {branch = "polkadot-v0.9.24", optional = true, default-features = false, git = "https://github.com/paritytech/substrate"} [features] default = ["std"] @@ -41,6 +41,7 @@ runtime-benchmarks = [ "frame-benchmarking", "sp-io", "kilt-support/runtime-benchmarks", + "frame-support/runtime-benchmarks", "frame-system/runtime-benchmarks", ] @@ -54,5 +55,7 @@ std = [ "sp-std/std", ] - -try-runtime = [] +try-runtime = [ + "frame-support/try-runtime", + "frame-system/try-runtime", +] diff --git a/pallets/pallet-web3-names/src/mock.rs b/pallets/pallet-web3-names/src/mock.rs index d7bad03d9..5f415c512 100644 --- a/pallets/pallet-web3-names/src/mock.rs +++ b/pallets/pallet-web3-names/src/mock.rs @@ -103,7 +103,7 @@ impl pallet_balances::Config for Test { type WeightInfo = (); } -pub(crate) type TestWeb3Name = AsciiWeb3Name; +pub(crate) type TestWeb3Name = AsciiWeb3Name; pub(crate) type TestWeb3NameOwner = SubjectId; pub(crate) type TestWeb3NamePayer = AccountId; pub(crate) type TestOwnerOrigin = mock_origin::EnsureDoubleOrigin; @@ -156,16 +156,19 @@ pub struct ExtBuilder { } impl ExtBuilder { + #[must_use] pub fn with_balances(mut self, balances: Vec<(TestWeb3NamePayer, Balance)>) -> Self { self.balances = balances; self } + #[must_use] pub fn with_web3_names(mut self, web3_names: Vec<(TestWeb3NameOwner, TestWeb3Name, TestWeb3NamePayer)>) -> Self { self.claimed_web3_names = web3_names; self } + #[must_use] pub fn with_banned_web3_names(mut self, web3_names: Vec) -> Self { self.banned_web3_names = web3_names; self diff --git a/pallets/pallet-web3-names/src/web3_name.rs b/pallets/pallet-web3-names/src/web3_name.rs index 4b4b935e4..bd2d2abc0 100644 --- a/pallets/pallet-web3-names/src/web3_name.rs +++ b/pallets/pallet-web3-names/src/web3_name.rs @@ -19,7 +19,7 @@ use sp_std::{fmt::Debug, marker::PhantomData, vec::Vec}; use codec::{Decode, Encode, MaxEncodedLen}; -use frame_support::{ensure, sp_runtime::SaturatedConversion, traits::Get, BoundedVec}; +use frame_support::{ensure, sp_runtime::SaturatedConversion, traits::Get, BoundedVec, RuntimeDebug}; use scale_info::TypeInfo; use crate::{Config, Error}; @@ -28,15 +28,15 @@ use crate::{Config, Error}; /// /// It is bounded in size (inclusive range [MinLength, MaxLength]) and can only /// contain a subset of ASCII characters. -#[derive(Encode, Decode, TypeInfo, MaxEncodedLen)] +#[derive(Encode, Decode, RuntimeDebug, TypeInfo, MaxEncodedLen)] #[scale_info(skip_type_params(T, MinLength, MaxLength))] #[codec(mel_bound())] -pub struct AsciiWeb3Name, MaxLength: Get>( - pub(crate) BoundedVec, - PhantomData<(T, MinLength)>, +pub struct AsciiWeb3Name( + pub(crate) BoundedVec, + PhantomData<(T, T::MinNameLength)>, ); -impl TryFrom> for AsciiWeb3Name { +impl TryFrom> for AsciiWeb3Name { type Error = Error; /// Fallible initialization from a provided byte vector if it is below the @@ -61,21 +61,15 @@ fn is_valid_web3_name(input: &[u8]) -> bool { .all(|c| matches!(c, b'a'..=b'z' | b'0'..=b'9' | b'-' | b'_')) } -impl Debug for AsciiWeb3Name { - fn fmt(&self, f: &mut sp_std::fmt::Formatter<'_>) -> sp_std::fmt::Result { - f.debug_tuple("AsciiWeb3Name").field(&self.0).finish() - } -} - // FIXME: did not find a way to automatically implement this. -impl PartialEq for AsciiWeb3Name { +impl PartialEq for AsciiWeb3Name { fn eq(&self, other: &Self) -> bool { self.0 == other.0 } } // FIXME: did not find a way to automatically implement this. -impl Clone for AsciiWeb3Name { +impl Clone for AsciiWeb3Name { fn clone(&self) -> Self { Self(self.0.clone(), self.1) } @@ -129,21 +123,11 @@ mod tests { ]; for valid in valid_inputs { - assert!( - AsciiWeb3Name::::MinNameLength, ::MaxNameLength>::try_from( - valid - ) - .is_ok() - ); + assert!(AsciiWeb3Name::::try_from(valid).is_ok()); } for invalid in invalid_inputs { - assert!( - AsciiWeb3Name::::MinNameLength, ::MaxNameLength>::try_from( - invalid - ) - .is_err(), - ); + assert!(AsciiWeb3Name::::try_from(invalid).is_err(),); } } } diff --git a/pallets/parachain-staking/Cargo.toml b/pallets/parachain-staking/Cargo.toml index 5fbfff42d..6224d86e1 100644 --- a/pallets/parachain-staking/Cargo.toml +++ b/pallets/parachain-staking/Cargo.toml @@ -3,36 +3,35 @@ authors = ["KILT "] description = "Parachain parachain-staking pallet for collator delegation and selection as well as reward distribution" edition = "2021" name = "parachain-staking" -version = "1.6.2" +version = "1.7.0" [dev-dependencies] -pallet-aura = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17", default-features = false} -pallet-timestamp = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17", default-features = false} -sp-consensus-aura = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17", default-features = false} -sp-core = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17", default-features = false} -sp-io = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17", default-features = false} +pallet-aura = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +pallet-timestamp = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sp-consensus-aura = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sp-core = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} +sp-io = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} [dependencies] hex-literal = "0.3.4" -log = "0.4" -parity-scale-codec = {version = "2.3.1", default-features = false, features = ["derive"]} -scale-info = {version = "1.0", default-features = false, features = ["derive"]} -serde = {version = "1.0.132", optional = true} +log = "0.4.17" +parity-scale-codec = {version = "3.1.2", default-features = false, features = ["derive"]} +scale-info = {version = "2.1.1", default-features = false, features = ["derive"]} +serde = {version = "1.0.137", optional = true} kilt-support = {default-features = false, path = "../../support"} -runtime-common = {path = "../../runtimes/common", default-features = false} -frame-support = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17", default-features = false} -frame-system = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17", default-features = false} -pallet-authorship = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17", default-features = false} -pallet-balances = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17", default-features = false} -pallet-session = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17", default-features = false} -sp-runtime = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17", default-features = false} -sp-staking = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17", default-features = false} -sp-std = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17", default-features = false} +frame-support = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24", default-features = false} +frame-system = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24", default-features = false} +pallet-authorship = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24", default-features = false} +pallet-balances = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24", default-features = false} +pallet-session = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24", default-features = false} +sp-runtime = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24", default-features = false} +sp-staking = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24", default-features = false} +sp-std = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24", default-features = false} # benchmarking -frame-benchmarking = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17", default-features = false, optional = true} +frame-benchmarking = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24", default-features = false, optional = true} [features] default = ["std"] @@ -44,7 +43,6 @@ runtime-benchmarks = [ std = [ "frame-support/std", "frame-system/std", - "runtime-common/std", "kilt-support/std", "log/std", "pallet-authorship/std", diff --git a/pallets/parachain-staking/src/benchmarking.rs b/pallets/parachain-staking/src/benchmarking.rs index c5f225452..1555c549d 100644 --- a/pallets/parachain-staking/src/benchmarking.rs +++ b/pallets/parachain-staking/src/benchmarking.rs @@ -26,7 +26,6 @@ use frame_support::{ }; use frame_system::{Pallet as System, RawOrigin}; use pallet_session::Pallet as Session; -use runtime_common::constants::BLOCKS_PER_YEAR; use sp_runtime::{ traits::{One, SaturatedConversion, StaticLookup}, Perquintill, @@ -138,7 +137,7 @@ benchmarks! { on_initialize_new_year { let old = >::get(); assert_eq!(>::get(), T::BlockNumber::zero()); - let block = (BLOCKS_PER_YEAR + 1u64).saturated_into::(); + let block = (T::BLOCKS_PER_YEAR + 1u32.into()).saturated_into::(); }: { Pallet::::on_initialize(block) } verify { let new = >::get(); @@ -187,6 +186,7 @@ benchmarks! { set_inflation { let inflation = InflationInfo::new( + T::BLOCKS_PER_YEAR.saturated_into(), Perquintill::from_percent(10), Perquintill::from_percent(15), Perquintill::from_percent(40), @@ -628,8 +628,8 @@ benchmarks! { impl_benchmark_test_suite!( Pallet, crate::mock::ExtBuilder::default() - .with_balances(vec![(u64::MAX, runtime_common::constants::KILT)]) - .with_collators(vec![(u64::MAX, runtime_common::constants::KILT)]) + .with_balances(vec![(u64::MAX, 1000 * crate::mock::MILLI_KILT)]) + .with_collators(vec![(u64::MAX, 1000 * crate::mock::MILLI_KILT)]) .build(), crate::mock::Test, ); diff --git a/pallets/parachain-staking/src/inflation.rs b/pallets/parachain-staking/src/inflation.rs index 57403bdea..e624881d4 100644 --- a/pallets/parachain-staking/src/inflation.rs +++ b/pallets/parachain-staking/src/inflation.rs @@ -19,7 +19,6 @@ //! Helper methods for computing issuance based on inflation use crate::{pallet::Config, types::BalanceOf}; use parity_scale_codec::{Decode, Encode, MaxEncodedLen}; -use runtime_common::constants::BLOCKS_PER_YEAR; use scale_info::TypeInfo; use sp_runtime::{traits::Saturating, Perquintill, RuntimeDebug}; @@ -41,15 +40,15 @@ impl MaxEncodedLen for RewardRate { } /// Convert annual reward rate to per_block. -fn annual_to_per_block(rate: Perquintill) -> Perquintill { - rate / BLOCKS_PER_YEAR.max(1) +fn annual_to_per_block(blocks_per_year: u64, rate: Perquintill) -> Perquintill { + rate / blocks_per_year.max(1) } impl RewardRate { - pub fn new(rate: Perquintill) -> Self { + pub fn new(blocks_per_year: u64, rate: Perquintill) -> Self { RewardRate { annual: rate, - per_block: annual_to_per_block(rate), + per_block: annual_to_per_block(blocks_per_year, rate), } } } @@ -72,10 +71,10 @@ impl MaxEncodedLen for StakingInfo { } impl StakingInfo { - pub fn new(max_rate: Perquintill, annual_reward_rate: Perquintill) -> Self { + pub fn new(blocks_per_year: u64, max_rate: Perquintill, annual_reward_rate: Perquintill) -> Self { StakingInfo { max_rate, - reward_rate: RewardRate::new(annual_reward_rate), + reward_rate: RewardRate::new(blocks_per_year, annual_reward_rate), } } @@ -112,43 +111,44 @@ impl InflationInfo { /// /// Example: InflationInfo::new(Perquintill_from_percent(10), ...) pub fn new( + blocks_per_year: u64, collator_max_rate_percentage: Perquintill, collator_annual_reward_rate_percentage: Perquintill, delegator_max_rate_percentage: Perquintill, delegator_annual_reward_rate_percentage: Perquintill, ) -> Self { Self { - collator: StakingInfo::new(collator_max_rate_percentage, collator_annual_reward_rate_percentage), - delegator: StakingInfo::new(delegator_max_rate_percentage, delegator_annual_reward_rate_percentage), + collator: StakingInfo::new( + blocks_per_year, + collator_max_rate_percentage, + collator_annual_reward_rate_percentage, + ), + delegator: StakingInfo::new( + blocks_per_year, + delegator_max_rate_percentage, + delegator_annual_reward_rate_percentage, + ), } } /// Check whether the annual reward rate is approx. the per_block reward /// rate multiplied with the number of blocks per year - pub fn is_valid(&self) -> bool { - let years = BLOCKS_PER_YEAR; + pub fn is_valid(&self, blocks_per_year: u64) -> bool { self.collator.reward_rate.annual - >= Perquintill::from_parts(self.collator.reward_rate.per_block.deconstruct().saturating_mul(years)) - && self.delegator.reward_rate.annual - >= Perquintill::from_parts(self.delegator.reward_rate.per_block.deconstruct().saturating_mul(years)) - } -} - -impl From<(Perquintill, Perquintill, Perquintill, Perquintill)> for InflationInfo { - fn from( - ( - collator_max_rate_percentage, - collator_annual_reward_rate_percentage, - delegator_max_rate_percentage, - delegator_annual_reward_rate_percentage, - ): (Perquintill, Perquintill, Perquintill, Perquintill), - ) -> Self { - InflationInfo::new( - collator_max_rate_percentage, - collator_annual_reward_rate_percentage, - delegator_max_rate_percentage, - delegator_annual_reward_rate_percentage, - ) + >= Perquintill::from_parts( + self.collator + .reward_rate + .per_block + .deconstruct() + .saturating_mul(blocks_per_year), + ) && self.delegator.reward_rate.annual + >= Perquintill::from_parts( + self.delegator + .reward_rate + .per_block + .deconstruct() + .saturating_mul(blocks_per_year), + ) } } @@ -157,8 +157,7 @@ mod tests { use sp_runtime::Perbill; use super::*; - use crate::mock::{almost_equal, ExtBuilder, Test, DECIMALS}; - use runtime_common::constants::{BLOCKS_PER_YEAR, MAX_COLLATOR_STAKE}; + use crate::mock::{almost_equal, ExtBuilder, Test, DECIMALS, MAX_COLLATOR_STAKE}; #[test] fn perquintill() { @@ -168,18 +167,15 @@ mod tests { ); } - #[allow(clippy::assertions_on_constants)] - #[test] - fn blocks_per_year_saturation() { - assert!(BLOCKS_PER_YEAR < u64::MAX); - } - #[test] fn annual_to_block_rate() { let rate = Perquintill::one(); assert!(almost_equal( rate * 10_000_000_000u128, - Perquintill::from_parts(annual_to_per_block(rate).deconstruct() * BLOCKS_PER_YEAR) * 10_000_000_000u128, + Perquintill::from_parts( + annual_to_per_block(::BLOCKS_PER_YEAR, rate).deconstruct() + * ::BLOCKS_PER_YEAR + ) * 10_000_000_000u128, Perbill::from_perthousand(1) )); } @@ -187,6 +183,7 @@ mod tests { #[test] fn single_block_reward_collator() { let inflation = InflationInfo::new( + ::BLOCKS_PER_YEAR, Perquintill::from_percent(10), Perquintill::from_percent(10), Perquintill::from_percent(40), @@ -214,15 +211,16 @@ mod tests { .build() .execute_with(|| { let inflation = InflationInfo::new( + ::BLOCKS_PER_YEAR, Perquintill::from_percent(10), Perquintill::from_percent(15), Perquintill::from_percent(40), Perquintill::from_percent(10), ); - let years_u128: BalanceOf = BLOCKS_PER_YEAR as u128; + let years_u128: BalanceOf = ::BLOCKS_PER_YEAR as u128; // Dummy checks for correct instantiation - assert!(inflation.is_valid()); + assert!(inflation.is_valid(::BLOCKS_PER_YEAR)); assert_eq!(inflation.collator.max_rate, Perquintill::from_percent(10)); assert_eq!(inflation.collator.reward_rate.annual, Perquintill::from_percent(15)); assert!( diff --git a/pallets/parachain-staking/src/lib.rs b/pallets/parachain-staking/src/lib.rs index dabc1bdcd..e76aed065 100644 --- a/pallets/parachain-staking/src/lib.rs +++ b/pallets/parachain-staking/src/lib.rs @@ -144,7 +144,7 @@ //! //! ## Genesis config //! -//! The KiltLaunch pallet depends on the [`GenesisConfig`]. +//! The ParachainStaking pallet depends on the [`GenesisConfig`]. //! //! ## Assumptions+ //! @@ -165,7 +165,6 @@ pub(crate) mod mock; pub(crate) mod tests; mod inflation; -pub mod migrations; mod set; mod types; @@ -192,7 +191,6 @@ pub mod pallet { use frame_system::pallet_prelude::*; use pallet_balances::{BalanceLock, Locks}; use pallet_session::ShouldEndSession; - use runtime_common::constants::BLOCKS_PER_YEAR; use scale_info::TypeInfo; use sp_runtime::{ traits::{Convert, One, SaturatedConversion, Saturating, StaticLookup, Zero}, @@ -349,6 +347,8 @@ pub mod pallet { /// Weight information for extrinsics in this pallet. type WeightInfo: WeightInfo; + + const BLOCKS_PER_YEAR: Self::BlockNumber; } #[pallet::error] @@ -548,7 +548,7 @@ pub mod pallet { post_weight = ::WeightInfo::on_initialize_round_update(); } // check for InflationInfo update - if now > BLOCKS_PER_YEAR.saturated_into::() { + if now > T::BLOCKS_PER_YEAR.saturated_into::() { post_weight = post_weight.saturating_add(Self::adjust_reward_rates(now)); } // check for network reward @@ -685,8 +685,9 @@ pub mod pallet { impl Default for GenesisConfig { fn default() -> Self { Self { - stakers: vec![], - ..Default::default() + stakers: Default::default(), + inflation_config: Default::default(), + max_candidate_stake: Default::default(), } } } @@ -694,7 +695,10 @@ pub mod pallet { #[pallet::genesis_build] impl GenesisBuild for GenesisConfig { fn build(&self) { - assert!(self.inflation_config.is_valid(), "Invalid inflation configuration"); + assert!( + self.inflation_config.is_valid(T::BLOCKS_PER_YEAR.saturated_into()), + "Invalid inflation configuration" + ); >::put(self.inflation_config.clone()); MaxCollatorCandidateStake::::put(self.max_candidate_stake); @@ -783,13 +787,17 @@ pub mod pallet { ensure_root(origin)?; let inflation = InflationInfo::new( + T::BLOCKS_PER_YEAR.saturated_into(), collator_max_rate_percentage, collator_annual_reward_rate_percentage, delegator_max_rate_percentage, delegator_annual_reward_rate_percentage, ); - ensure!(inflation.is_valid(), Error::::InvalidSchedule); + ensure!( + inflation.is_valid(T::BLOCKS_PER_YEAR.saturated_into()), + Error::::InvalidSchedule + ); Self::deposit_event(Event::RoundInflationSet( inflation.collator.max_rate, inflation.collator.reward_rate.per_block, @@ -2676,7 +2684,7 @@ pub mod pallet { /// - Writes: LastRewardReduction, InflationConfig /// # fn adjust_reward_rates(now: T::BlockNumber) -> Weight { - let year = now / BLOCKS_PER_YEAR.saturated_into::(); + let year = now / T::BLOCKS_PER_YEAR; let last_update = >::get(); if year > last_update { let inflation = >::get(); @@ -2690,6 +2698,7 @@ pub mod pallet { }; let new_inflation = InflationInfo::new( + T::BLOCKS_PER_YEAR.saturated_into(), inflation.collator.max_rate, c_reward_rate, inflation.delegator.max_rate, diff --git a/pallets/parachain-staking/src/migrations.rs b/pallets/parachain-staking/src/migrations.rs deleted file mode 100644 index a5e299e9e..000000000 --- a/pallets/parachain-staking/src/migrations.rs +++ /dev/null @@ -1,125 +0,0 @@ -// KILT Blockchain – https://botlabs.org -// Copyright (C) 2019-2022 BOTLabs GmbH - -// The KILT Blockchain is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. - -// The KILT Blockchain is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. - -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -// If you feel like getting in touch with us, you can do so at info@botlabs.org -use scale_info::TypeInfo; -use sp_runtime::codec::{Decode, Encode}; - -// A value placed in storage that represents the current version of the Staking -// storage. This value is used by the `on_runtime_upgrade` logic to determine -// whether we run storage migration logic. This should match directly with the -// semantic versions of the Rust crate. - -// FIXME: Remove when migrating to v8 -// #[deprecated(note = "use the pallet's `current_storage_version()` instead")] -#[derive(Copy, Clone, Encode, Eq, Decode, Debug, Ord, PartialEq, PartialOrd, TypeInfo)] -pub enum StakingStorageVersion { - V1_0_0, - V2_0_0, // New Reward calculation, MaxCollatorCandidateStake - V3_0_0, // Update InflationConfig - V4, // Sort TopCandidates and parachain-stakings by amount - V5, // Remove SelectedCandidates, Count Candidates - V6, // Fix delegator replacement bug -} - -// Migration for ParachainStaking pallet to mutate CandidatePool to be -// a CountedStorageMap and switch to new Pallet StorageVersion paradigm. -pub mod v7 { - use super::*; - use crate::{CandidatePool, Config, Pallet}; - - #[cfg(feature = "try-runtime")] - use frame_support::traits::GetStorageVersion; - use frame_support::{ - generate_storage_alias, - traits::{Get, OnRuntimeUpgrade, PalletInfoAccess, StorageVersion as NewStorageVersion}, - weights::Weight, - }; - use log::info; - #[cfg(feature = "try-runtime")] - use sp_runtime::traits::Zero; - use sp_std::marker::PhantomData; - - // Get storage items into scope which are removed during this migration - generate_storage_alias!(ParachainStaking, CandidateCount => Value); - generate_storage_alias!(ParachainStaking, StorageVersion => Value); - - pub struct ParachainStakingMigrationV7(PhantomData); - - impl OnRuntimeUpgrade for ParachainStakingMigrationV7 { - fn on_runtime_upgrade() -> Weight { - let staking_pallet_name = Pallet::::name().as_bytes(); - - // migrate CandidateCount - frame_support::migration::remove_storage_prefix(staking_pallet_name, b"CandidateCount", &[]); - let candidate_count = CandidatePool::::initialize_counter(); - - // migrate StorageVersion to new paradigm - frame_support::migration::remove_storage_prefix(staking_pallet_name, b"StorageVersion", &[]); - NewStorageVersion::new(7).put::>(); - - info!("💰 completed parachain staking migration to v7 ✅",); - T::DbWeight::get().reads_writes(candidate_count.saturating_add(1).into(), 4) - } - - #[cfg(feature = "try-runtime")] - fn pre_upgrade() -> Result<(), &'static str> { - assert!( - !CandidateCount::get().unwrap().is_zero(), - "CandidateCount already migrated" - ); - assert!(CandidatePool::::count().is_zero(), "Candidate counter already set"); - assert!(StorageVersion::get() == Some(StakingStorageVersion::V6)); - - assert!(CandidatePool::::initialize_counter() == CandidatePool::::iter().count() as u32); - - info!("💰 parachain staking migration to v7 passes PRE migrate checks ✅",); - Ok(()) - } - - #[cfg(feature = "try-runtime")] - fn post_upgrade() -> Result<(), &'static str> { - let staking_pallet_name = Pallet::::name().as_bytes(); - - // check count - assert!( - !frame_support::migration::have_storage_value(staking_pallet_name, b"CandidateCount", &[]), - "CandidateCount should not exist anymore" - ); - assert!( - !CandidatePool::::count().is_zero(), - "Candidate counter should have been set" - ); - - // check StorageVersion - assert!( - !frame_support::migration::have_storage_value(staking_pallet_name, b"StorageVersion", &[]), - "Old StorageVersion should not exist anymore" - ); - assert_eq!( - Pallet::::current_storage_version(), - 7, - "StorageVersion should have migrated to new paradigm" - ); - - info!( - "💰 parachain staking migration to {:?} passes POST migrate checks ✅", - Pallet::::current_storage_version() - ); - Ok(()) - } - } -} diff --git a/pallets/parachain-staking/src/mock.rs b/pallets/parachain-staking/src/mock.rs index fcb671d90..8a044d4f1 100644 --- a/pallets/parachain-staking/src/mock.rs +++ b/pallets/parachain-staking/src/mock.rs @@ -27,7 +27,6 @@ use frame_support::{ weights::Weight, }; use pallet_authorship::EventHandler; -use runtime_common::constants::{staking::NETWORK_REWARD_RATE, treasury::INITIAL_PERIOD_LENGTH, KILT}; use sp_consensus_aura::sr25519::AuthorityId; use sp_core::H256; use sp_runtime::{ @@ -38,16 +37,16 @@ use sp_runtime::{ }; use sp_std::fmt::Debug; -pub use runtime_common::BlockNumber; - -pub type AccountId = u64; -pub type Balance = u128; -pub const BLOCKS_PER_ROUND: BlockNumber = 5; -pub const DECIMALS: Balance = KILT; - -type UncheckedExtrinsic = frame_system::mocking::MockUncheckedExtrinsic; -type Block = frame_system::mocking::MockBlock; +pub(crate) type UncheckedExtrinsic = frame_system::mocking::MockUncheckedExtrinsic; +pub(crate) type Block = frame_system::mocking::MockBlock; +pub(crate) type Balance = u128; +pub(crate) type AccountId = u64; +pub(crate) type BlockNumber = u64; +pub(crate) const MILLI_KILT: Balance = 10u128.pow(12); +pub(crate) const MAX_COLLATOR_STAKE: Balance = 200_000 * 1000 * MILLI_KILT; +pub(crate) const BLOCKS_PER_ROUND: BlockNumber = 5; +pub(crate) const DECIMALS: Balance = 1000 * MILLI_KILT; pub(crate) const TREASURY_ACC: AccountId = u64::MAX; // Configure a mock runtime to test the pallet. @@ -145,8 +144,8 @@ parameter_types! { pub const MinDelegatorStake: Balance = 5; pub const MinDelegation: Balance = 3; pub const MaxUnstakeRequests: u32 = 6; - pub const NetworkRewardRate: Perquintill = NETWORK_REWARD_RATE; - pub const NetworkRewardStart: BlockNumber = INITIAL_PERIOD_LENGTH; + pub const NetworkRewardRate: Perquintill = Perquintill::from_percent(10); + pub const NetworkRewardStart: BlockNumber = 5 * 5 * 60 * 24 * 36525 / 100; } pub struct ToBeneficiary(); @@ -180,6 +179,7 @@ impl Config for Test { type NetworkRewardStart = NetworkRewardStart; type NetworkRewardBeneficiary = ToBeneficiary; type WeightInfo = (); + const BLOCKS_PER_YEAR: Self::BlockNumber = 5 * 60 * 24 * 36525 / 100; } impl_opaque_keys! { @@ -236,6 +236,7 @@ impl Default for ExtBuilder { collators: vec![], blocks_per_round: BLOCKS_PER_ROUND, inflation_config: InflationInfo::new( + ::BLOCKS_PER_YEAR, Perquintill::from_percent(10), Perquintill::from_percent(15), Perquintill::from_percent(40), @@ -246,21 +247,25 @@ impl Default for ExtBuilder { } impl ExtBuilder { + #[must_use] pub(crate) fn with_balances(mut self, balances: Vec<(AccountId, Balance)>) -> Self { self.balances = balances; self } + #[must_use] pub(crate) fn with_collators(mut self, collators: Vec<(AccountId, Balance)>) -> Self { self.collators = collators; self } + #[must_use] pub(crate) fn with_delegators(mut self, delegators: Vec<(AccountId, AccountId, Balance)>) -> Self { self.delegators = delegators; self } + #[must_use] pub(crate) fn with_inflation( mut self, col_max: u64, @@ -270,6 +275,7 @@ impl ExtBuilder { blocks_per_round: BlockNumber, ) -> Self { self.inflation_config = InflationInfo::new( + ::BLOCKS_PER_YEAR, Perquintill::from_percent(col_max), Perquintill::from_percent(col_rewards), Perquintill::from_percent(d_max), @@ -280,6 +286,7 @@ impl ExtBuilder { self } + #[must_use] pub(crate) fn set_blocks_per_round(mut self, blocks_per_round: BlockNumber) -> Self { self.blocks_per_round = blocks_per_round; self diff --git a/pallets/parachain-staking/src/set.rs b/pallets/parachain-staking/src/set.rs index a0e2cf420..c55e7a2a6 100644 --- a/pallets/parachain-staking/src/set.rs +++ b/pallets/parachain-staking/src/set.rs @@ -16,7 +16,7 @@ // If you feel like getting in touch with us, you can do so at info@botlabs.org -use frame_support::{traits::Get, BoundedVec, DefaultNoBound}; +use frame_support::{traits::Get, BoundedVec, DefaultNoBound, RuntimeDebug}; use parity_scale_codec::{Decode, Encode, MaxEncodedLen}; use scale_info::TypeInfo; use sp_runtime::{traits::Zero, SaturatedConversion}; @@ -27,10 +27,10 @@ use sp_std::{ }; #[cfg(feature = "std")] -use sp_std::{fmt, prelude::*}; +use sp_std::prelude::*; /// An ordered set backed by `BoundedVec`. -#[derive(PartialEq, Eq, Encode, Decode, DefaultNoBound, Clone, TypeInfo, MaxEncodedLen)] +#[derive(PartialEq, Eq, Encode, Decode, DefaultNoBound, Clone, TypeInfo, MaxEncodedLen, RuntimeDebug)] #[scale_info(skip_type_params(S))] #[codec(mel_bound(T: MaxEncodedLen))] pub struct OrderedSet>(BoundedVec); @@ -230,17 +230,6 @@ impl> OrderedSet { } } -#[cfg(feature = "std")] -impl fmt::Debug for OrderedSet -where - T: fmt::Debug, - S: Get, -{ - fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { - f.debug_tuple("OrderedSet").field(&self.0).finish() - } -} - impl> From> for OrderedSet { fn from(bv: BoundedVec) -> Self { Self::from(bv) diff --git a/pallets/parachain-staking/src/tests.rs b/pallets/parachain-staking/src/tests.rs index f9ead1d48..20e651a4e 100644 --- a/pallets/parachain-staking/src/tests.rs +++ b/pallets/parachain-staking/src/tests.rs @@ -28,8 +28,6 @@ use pallet_balances::{BalanceLock, Error as BalancesError, Reasons}; use pallet_session::{SessionManager, ShouldEndSession}; use sp_runtime::{traits::Zero, Perbill, Permill, Perquintill, SaturatedConversion}; -use runtime_common::constants::BLOCKS_PER_YEAR; - use crate::{ mock::{ almost_equal, events, last_event, roll_to, AccountId, Balance, Balances, BlockNumber, Event as MetaEvent, @@ -1460,6 +1458,7 @@ fn round_transitions() { let d_max = 40; let d_rewards = 10; let inflation = InflationInfo::new( + ::BLOCKS_PER_YEAR, Perquintill::from_percent(col_max), Perquintill::from_percent(col_rewards), Perquintill::from_percent(d_max), @@ -1559,6 +1558,7 @@ fn round_transitions() { assert_eq!( StakePallet::inflation_config(), InflationInfo::new( + ::BLOCKS_PER_YEAR, Perquintill::from_percent(col_max), Perquintill::from_percent(col_rewards), Perquintill::from_percent(d_max), @@ -1737,7 +1737,7 @@ fn coinbase_rewards_many_blocks_simple_check() { let inflation = StakePallet::inflation_config(); let total_issuance = ::Currency::total_issuance(); assert_eq!(total_issuance, 160_000_000 * DECIMALS); - let end_block: BlockNumber = num_of_years * BLOCKS_PER_YEAR as BlockNumber; + let end_block: BlockNumber = num_of_years * Test::BLOCKS_PER_YEAR as BlockNumber; // set round robin authoring let authors: Vec> = (0u64..=end_block).map(|i| Some(i % 2 + 1)).collect(); roll_to(end_block, authors); @@ -2207,9 +2207,9 @@ fn update_inflation() { }, }, }; - assert!(!invalid_inflation.is_valid()); + assert!(!invalid_inflation.is_valid(::BLOCKS_PER_YEAR)); invalid_inflation.collator.reward_rate.per_block = Perquintill::zero(); - assert!(!invalid_inflation.is_valid()); + assert!(!invalid_inflation.is_valid(::BLOCKS_PER_YEAR)); assert_ok!(StakePallet::set_inflation( Origin::root(), @@ -2801,7 +2801,7 @@ fn adjust_reward_rates() { .build() .execute_with(|| { let inflation_0 = StakePallet::inflation_config(); - let num_of_years = 3 * BLOCKS_PER_YEAR; + let num_of_years = 3 * ::BLOCKS_PER_YEAR; // 1 authors every block let authors: Vec> = (0u64..=num_of_years).map(|_| Some(1u64)).collect(); @@ -2813,10 +2813,11 @@ fn adjust_reward_rates() { assert!(!d_rewards_0.is_zero()); // finish first year - System::set_block_number(BLOCKS_PER_YEAR); - roll_to(BLOCKS_PER_YEAR + 1, vec![]); + System::set_block_number(::BLOCKS_PER_YEAR); + roll_to(::BLOCKS_PER_YEAR + 1, vec![]); assert_eq!(StakePallet::last_reward_reduction(), 1u64); let inflation_1 = InflationInfo::new( + ::BLOCKS_PER_YEAR, inflation_0.collator.max_rate, Perquintill::from_parts(98000000000000000), inflation_0.delegator.max_rate, @@ -2824,7 +2825,7 @@ fn adjust_reward_rates() { ); assert_eq!(StakePallet::inflation_config(), inflation_1); // reward once in 2nd year - roll_to(BLOCKS_PER_YEAR + 2, authors.clone()); + roll_to(::BLOCKS_PER_YEAR + 2, authors.clone()); let c_rewards_1 = Balances::free_balance(&1) .saturating_sub(10_000_000 * DECIMALS) .saturating_sub(c_rewards_0); @@ -2840,10 +2841,11 @@ fn adjust_reward_rates() { assert!(d_rewards_0 > d_rewards_1); // finish 2nd year - System::set_block_number(2 * BLOCKS_PER_YEAR); - roll_to(2 * BLOCKS_PER_YEAR + 1, vec![]); + System::set_block_number(2 * ::BLOCKS_PER_YEAR); + roll_to(2 * ::BLOCKS_PER_YEAR + 1, vec![]); assert_eq!(StakePallet::last_reward_reduction(), 2u64); let inflation_2 = InflationInfo::new( + ::BLOCKS_PER_YEAR, inflation_0.collator.max_rate, Perquintill::from_parts(96040000000000000), inflation_0.delegator.max_rate, @@ -2851,7 +2853,7 @@ fn adjust_reward_rates() { ); assert_eq!(StakePallet::inflation_config(), inflation_2); // reward once in 3rd year - roll_to(2 * BLOCKS_PER_YEAR + 2, authors); + roll_to(2 * ::BLOCKS_PER_YEAR + 2, authors); let c_rewards_2 = Balances::free_balance(&1) .saturating_sub(10_000_000 * DECIMALS) .saturating_sub(c_rewards_0) diff --git a/runtimes/common/Cargo.toml b/runtimes/common/Cargo.toml index ebdc55272..9a41d1098 100644 --- a/runtimes/common/Cargo.toml +++ b/runtimes/common/Cargo.toml @@ -2,44 +2,64 @@ authors = ["KILT "] edition = "2021" name = "runtime-common" -version = "1.6.2" +version = "1.7.0" [dev-dependencies] -sp-io = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} +sp-io = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} [dependencies] -codec = {package = "parity-scale-codec", version = "2.3.1", default-features = false, features = ["derive"]} -scale-info = {version = "1.0", default-features = false, features = ["derive"]} -serde = {version = "1.0.132", optional = true, features = ["derive"]} -smallvec = "1.7.0" +codec = {package = "parity-scale-codec", version = "3.1.2", default-features = false, features = ["derive"]} +log = "0.4.17" +scale-info = {version = "2.1.1", default-features = false, features = ["derive"]} +serde = {version = "1.0.137", optional = true, features = ["derive"]} +smallvec = "1.8.0" -frame-support = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -frame-system = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -pallet-authorship = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -pallet-balances = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -pallet-transaction-payment = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -sp-consensus-aura = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -sp-core = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -sp-runtime = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -sp-std = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} +attestation = {default-features = false, path = "../../pallets/attestation"} +parachain-staking = {default-features = false, path = "../../pallets/parachain-staking"} + +frame-support = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +frame-system = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-authorship = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-balances = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-membership = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-transaction-payment = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +sp-consensus-aura = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +sp-core = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +sp-io = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +sp-runtime = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +sp-std = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} + +# Runtime tests +frame-try-runtime = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24", optional = true} [features] default = ["std"] fast-gov = [] runtime-benchmarks = [ + "attestation/runtime-benchmarks", + "frame-support/runtime-benchmarks", + "parachain-staking/runtime-benchmarks", "sp-runtime/runtime-benchmarks", ] std = [ + "attestation/std", + "parachain-staking/std", "codec/std", "frame-support/std", "frame-system/std", "pallet-transaction-payment/std", "pallet-balances/std", + "pallet-membership/std", "pallet-authorship/std", "scale-info/std", "serde", "sp-consensus-aura/std", "sp-core/std", + "sp-io/std", "sp-runtime/std", "sp-std/std", ] +try-runtime = [ + "frame-support/try-runtime", + "frame-try-runtime", +] diff --git a/runtimes/common/src/authorization.rs b/runtimes/common/src/authorization.rs new file mode 100644 index 000000000..50b45e196 --- /dev/null +++ b/runtimes/common/src/authorization.rs @@ -0,0 +1,100 @@ +// KILT Blockchain – https://botlabs.org +// Copyright (C) 2019-2022 BOTLabs GmbH + +// The KILT Blockchain is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// The KILT Blockchain is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with this program. If not, see . + +// If you feel like getting in touch with us, you can do so at info@botlabs.org +use codec::{Decode, Encode, MaxEncodedLen}; +use frame_support::dispatch::Weight; +use scale_info::TypeInfo; +use sp_runtime::DispatchError; + +use attestation::AttestationAccessControl; + +#[derive(Clone, Debug, Encode, Decode, PartialEq, Eq, TypeInfo, MaxEncodedLen)] +pub enum AuthorizationId { + Delegation(DelegationId), +} + +#[derive(Clone, Debug, Encode, Decode, PartialEq, Eq, TypeInfo, MaxEncodedLen)] +pub enum PalletAuthorize { + Delegation(DelegationAc), +} + +impl + AttestationAccessControl, Ctype, ClaimHash> for PalletAuthorize +where + DelegationAc: AttestationAccessControl, +{ + fn can_attest( + &self, + who: &AttesterId, + ctype: &Ctype, + claim: &ClaimHash, + ) -> Result { + match self { + PalletAuthorize::Delegation(ac) => ac.can_attest(who, ctype, claim), + } + } + + fn can_revoke( + &self, + who: &AttesterId, + ctype: &Ctype, + claim: &ClaimHash, + auth_id: &AuthorizationId, + ) -> Result { + match (self, auth_id) { + (PalletAuthorize::Delegation(ac), AuthorizationId::Delegation(auth_id)) => { + ac.can_revoke(who, ctype, claim, auth_id) + } // _ => Err(DispatchError::Other("unauthorized")), + } + } + + fn can_remove( + &self, + who: &AttesterId, + ctype: &Ctype, + claim: &ClaimHash, + auth_id: &AuthorizationId, + ) -> Result { + match (self, auth_id) { + (PalletAuthorize::Delegation(ac), AuthorizationId::Delegation(auth_id)) => { + ac.can_remove(who, ctype, claim, auth_id) + } // _ => Err(DispatchError::Other("unauthorized")), + } + } + + fn authorization_id(&self) -> AuthorizationId { + match self { + PalletAuthorize::Delegation(ac) => AuthorizationId::Delegation(ac.authorization_id()), + } + } + + fn can_attest_weight(&self) -> Weight { + match self { + PalletAuthorize::Delegation(ac) => ac.can_attest_weight(), + } + } + fn can_revoke_weight(&self) -> Weight { + match self { + PalletAuthorize::Delegation(ac) => ac.can_revoke_weight(), + } + } + fn can_remove_weight(&self) -> Weight { + match self { + PalletAuthorize::Delegation(ac) => ac.can_remove_weight(), + } + } +} diff --git a/runtimes/common/src/constants.rs b/runtimes/common/src/constants.rs index 12b8aec40..06b4b3841 100644 --- a/runtimes/common/src/constants.rs +++ b/runtimes/common/src/constants.rs @@ -20,7 +20,9 @@ use frame_support::{ parameter_types, weights::{constants::WEIGHT_PER_SECOND, Weight}, }; -use sp_runtime::{Perbill, Perquintill}; +use sp_runtime::{Perbill, Percent, Perquintill}; + +use parachain_staking::InflationInfo; use crate::{Balance, BlockNumber}; @@ -41,7 +43,6 @@ pub const DAYS: BlockNumber = HOURS * 24; // Julian year as Substrate handles it pub const BLOCKS_PER_YEAR: BlockNumber = DAYS * 36525 / 100; -pub const MIN_VESTED_TRANSFER_AMOUNT: Balance = 100 * MILLI_KILT; pub const MAX_COLLATOR_STAKE: Balance = 200_000 * KILT; /// One KILT @@ -66,7 +67,6 @@ pub const NORMAL_DISPATCH_RATIO: Perbill = Perbill::from_percent(75); /// We allow for 0.5 seconds of compute with a 12 second average block time. pub const MAXIMUM_BLOCK_WEIGHT: Weight = WEIGHT_PER_SECOND / 2; -/// Inflation configuration which is used at genesis pub const INFLATION_CONFIG: (Perquintill, Perquintill, Perquintill, Perquintill) = ( // max collator staking rate Perquintill::from_percent(40), @@ -78,8 +78,20 @@ pub const INFLATION_CONFIG: (Perquintill, Perquintill, Perquintill, Perquintill) Perquintill::from_percent(8), ); -/// Copied from Kusama & Polkadot runtime -pub const MAX_VESTING_SCHEDULES: u32 = 28; +/// Inflation configuration which is used at genesis +pub fn kilt_inflation_config() -> InflationInfo { + InflationInfo::new( + BLOCKS_PER_YEAR, + // max collator staking rate + Perquintill::from_percent(40), + // collator reward rate + Perquintill::from_percent(10), + // max delegator staking rate + Perquintill::from_percent(10), + // delegator reward rate + Perquintill::from_percent(8), + ) +} /// Calculate the storage deposit based on the number of storage items and the /// combined byte size of those items. @@ -91,17 +103,31 @@ pub const fn deposit(items: u32, bytes: u32) -> Balance { /// The size is checked in the runtime by a test. pub const MAX_INDICES_BYTE_LENGTH: u32 = 49; +/// Copied from Kusama & Polkadot runtime +pub const MAX_VESTING_SCHEDULES: u32 = 28; + parameter_types! { + /// Vesting Pallet. Copied from Kusama & Polkadot runtime + pub const MinVestedTransfer: Balance = 100 * MILLI_KILT; + /// Deposits per byte pub const ByteDeposit: Balance = deposit(0, 1); + /// Index Pallet. Deposit taken for an account index pub const IndicesDeposit: Balance = deposit(1, MAX_INDICES_BYTE_LENGTH); + /// CType Pallet. Per byte fee for a ctype. + pub const CtypeFee: Balance = MILLI_KILT; } pub mod attestation { use super::*; /// The size is checked in the runtime by a test. - pub const MAX_ATTESTATION_BYTE_LENGTH: u32 = 178; + pub const MAX_ATTESTATION_BYTE_LENGTH: u32 = 179; pub const ATTESTATION_DEPOSIT: Balance = deposit(2, MAX_ATTESTATION_BYTE_LENGTH); + + parameter_types! { + pub const MaxDelegatedAttestations: u32 = 1000; + pub const AttestationDeposit: Balance = ATTESTATION_DEPOSIT; + } } pub mod delegation { @@ -113,6 +139,16 @@ pub mod delegation { pub const MAX_REVOCATIONS: u32 = 5; pub const MAX_REMOVALS: u32 = MAX_REVOCATIONS; pub const MAX_CHILDREN: u32 = 1000; + + parameter_types! { + pub const MaxSignatureByteLength: u16 = MAX_SIGNATURE_BYTE_LENGTH; + pub const MaxParentChecks: u32 = MAX_PARENT_CHECKS; + pub const MaxRevocations: u32 = MAX_REVOCATIONS; + pub const MaxRemovals: u32 = MAX_REMOVALS; + #[derive(Clone)] + pub const MaxChildren: u32 = MAX_CHILDREN; + pub const DelegationDeposit: Balance = DELEGATION_DEPOSIT; + } } pub mod staking { @@ -148,6 +184,42 @@ pub mod staking { pub const MIN_DELEGATOR_STAKE: Balance = 20 * KILT; pub const NETWORK_REWARD_RATE: Perquintill = Perquintill::from_percent(10); + + parameter_types! { + /// Minimum round length is 1 hour + pub const MinBlocksPerRound: BlockNumber = MIN_BLOCKS_PER_ROUND; + /// Default length of a round/session is 2 hours + pub const DefaultBlocksPerRound: BlockNumber = DEFAULT_BLOCKS_PER_ROUND; + /// Unstaked balance can be unlocked after 7 days + pub const StakeDuration: BlockNumber = STAKE_DURATION; + /// Collator exit requests are delayed by 4 hours (2 rounds/sessions) + pub const ExitQueueDelay: u32 = 2; + /// Minimum 16 collators selected per round, default at genesis and minimum forever after + pub const MinCollators: u32 = MIN_COLLATORS; + /// At least 4 candidates which cannot leave the network if there are no other candidates. + pub const MinRequiredCollators: u32 = 4; + /// We only allow one delegation per round. + pub const MaxDelegationsPerRound: u32 = 1; + /// Maximum 25 delegators per collator at launch, might be increased later + #[derive(Debug, PartialEq)] + pub const MaxDelegatorsPerCollator: u32 = MAX_DELEGATORS_PER_COLLATOR; + /// Maximum 1 collator per delegator at launch, will be increased later + #[derive(Debug, PartialEq)] + pub const MaxCollatorsPerDelegator: u32 = 1; + /// Minimum stake required to be reserved to be a collator is 10_000 + pub const MinCollatorStake: Balance = 10_000 * KILT; + /// Minimum stake required to be reserved to be a delegator is 1000 + pub const MinDelegatorStake: Balance = MIN_DELEGATOR_STAKE; + /// Maximum number of collator candidates + #[derive(Debug, PartialEq)] + pub const MaxCollatorCandidates: u32 = MAX_CANDIDATES; + /// Maximum number of concurrent requests to unlock unstaked balance + pub const MaxUnstakeRequests: u32 = 10; + /// The starting block number for the network rewards + pub const NetworkRewardStart: BlockNumber = super::treasury::INITIAL_PERIOD_LENGTH; + /// The rate in percent for the network rewards + pub const NetworkRewardRate: Perquintill = NETWORK_REWARD_RATE; + } } pub mod governance { @@ -204,6 +276,24 @@ pub mod governance { pub const TECHNICAL_MOTION_DURATION: BlockNumber = 4 * MINUTES; #[cfg(not(feature = "fast-gov"))] pub const TECHNICAL_MOTION_DURATION: BlockNumber = 3 * DAYS; + + parameter_types! { + // Democracy Pallet + pub const LaunchPeriod: BlockNumber = LAUNCH_PERIOD; + pub const VotingPeriod: BlockNumber = VOTING_PERIOD; + pub const FastTrackVotingPeriod: BlockNumber = FAST_TRACK_VOTING_PERIOD; + pub const MinimumDeposit: Balance = MIN_DEPOSIT; + pub const EnactmentPeriod: BlockNumber = ENACTMENT_PERIOD; + pub const CooloffPeriod: BlockNumber = COOLOFF_PERIOD; + // Council Pallet + pub const CouncilMotionDuration: BlockNumber = COUNCIL_MOTION_DURATION; + pub const CouncilMaxProposals: u32 = 100; + pub const CouncilMaxMembers: u32 = 100; + // Technical Committee + pub const TechnicalMotionDuration: BlockNumber = TECHNICAL_MOTION_DURATION; + pub const TechnicalMaxProposals: u32 = 100; + pub const TechnicalMaxMembers: u32 = 100; + } } pub mod did { @@ -230,6 +320,27 @@ pub mod did { pub const MAX_NUMBER_OF_TYPES_PER_SERVICE: u32 = 1; pub const MAX_SERVICE_URL_LENGTH: u32 = 200; pub const MAX_NUMBER_OF_URLS_PER_SERVICE: u32 = 1; + + parameter_types! { + pub const MaxNewKeyAgreementKeys: u32 = MAX_KEY_AGREEMENT_KEYS; + #[derive(Debug, Clone, PartialEq)] + pub const MaxUrlLength: u32 = MAX_URL_LENGTH; + pub const MaxPublicKeysPerDid: u32 = MAX_PUBLIC_KEYS_PER_DID; + #[derive(Debug, Clone, PartialEq)] + pub const MaxTotalKeyAgreementKeys: u32 = MAX_TOTAL_KEY_AGREEMENT_KEYS; + #[derive(Debug, Clone, PartialEq)] + pub const MaxEndpointUrlsCount: u32 = MAX_ENDPOINT_URLS_COUNT; + // Standalone block time is half the duration of a parachain block. + pub const MaxBlocksTxValidity: BlockNumber = MAX_BLOCKS_TX_VALIDITY; + pub const DidDeposit: Balance = DID_DEPOSIT; + pub const DidFee: Balance = DID_FEE; + pub const MaxNumberOfServicesPerDid: u32 = MAX_NUMBER_OF_SERVICES_PER_DID; + pub const MaxServiceIdLength: u32 = MAX_SERVICE_ID_LENGTH; + pub const MaxServiceTypeLength: u32 = MAX_SERVICE_TYPE_LENGTH; + pub const MaxServiceUrlLength: u32 = MAX_SERVICE_URL_LENGTH; + pub const MaxNumberOfTypesPerService: u32 = MAX_NUMBER_OF_TYPES_PER_SERVICE; + pub const MaxNumberOfUrlsPerService: u32 = MAX_NUMBER_OF_URLS_PER_SERVICE; + } } pub mod did_lookup { @@ -238,6 +349,10 @@ pub mod did_lookup { /// The size is checked in the runtime by a test. pub const MAX_CONNECTION_BYTE_LENGTH: u32 = 80; pub const DID_CONNECTION_DEPOSIT: Balance = deposit(1, MAX_CONNECTION_BYTE_LENGTH); + + parameter_types! { + pub const DidLookupDeposit: Balance = DID_CONNECTION_DEPOSIT; + } } pub mod treasury { @@ -246,6 +361,11 @@ pub mod treasury { pub const INITIAL_PERIOD_LENGTH: BlockNumber = BLOCKS_PER_YEAR.saturating_mul(5); const YEARLY_REWARD: Balance = 2_000_000u128 * KILT; pub const INITIAL_PERIOD_REWARD_PER_BLOCK: Balance = YEARLY_REWARD / (BLOCKS_PER_YEAR as Balance); + + parameter_types! { + pub const InitialPeriodLength: BlockNumber = INITIAL_PERIOD_LENGTH; + pub const InitialPeriodReward: Balance = INITIAL_PERIOD_REWARD_PER_BLOCK; + } } pub mod proxy { @@ -272,6 +392,12 @@ pub mod web3_names { /// The size is checked in the runtime by a test. pub const MAX_NAME_BYTE_LENGTH: u32 = 121; pub const DEPOSIT: Balance = deposit(2, MAX_NAME_BYTE_LENGTH); + + parameter_types! { + pub const Web3NameDeposit: Balance = DEPOSIT; + pub const MinNameLength: u32 = MIN_LENGTH; + pub const MaxNameLength: u32 = MAX_LENGTH; + } } pub mod preimage { @@ -281,3 +407,36 @@ pub mod preimage { pub const PreimageBaseDeposit: Balance = deposit(2, 64); } } + +pub mod tips { + use super::*; + + parameter_types! { + pub const MaximumReasonLength: u32 = 16384; + pub const TipCountdown: BlockNumber = DAYS; + pub const TipFindersFee: Percent = Percent::from_percent(20); + pub const TipReportDepositBase: Balance = deposit(1, 1); + } +} + +pub mod fee { + use super::*; + + parameter_types! { + /// This value increases the priority of `Operational` transactions by adding + /// a "virtual tip" that's equal to the `OperationalFeeMultiplier * final_fee`. + pub const OperationalFeeMultiplier: u8 = 5; + pub const TransactionByteFee: Balance = MICRO_KILT; + } +} + +#[cfg(test)] +mod tests { + use super::*; + // TODO: static assert + #[allow(clippy::assertions_on_constants)] + #[test] + fn blocks_per_year_saturation() { + assert!(BLOCKS_PER_YEAR < u64::MAX); + } +} diff --git a/runtimes/common/src/fees.rs b/runtimes/common/src/fees.rs index a1faccad4..d78381a35 100644 --- a/runtimes/common/src/fees.rs +++ b/runtimes/common/src/fees.rs @@ -18,9 +18,13 @@ use frame_support::{ traits::{Currency, Get, Imbalance, OnUnbalanced}, - weights::{DispatchClass, WeightToFeeCoefficient, WeightToFeeCoefficients, WeightToFeePolynomial}, + weights::{ + DispatchClass, WeightToFee as WeightToFeeT, WeightToFeeCoefficient, WeightToFeeCoefficients, + WeightToFeePolynomial, + }, }; use pallet_balances::WeightInfo; +use pallet_transaction_payment::OnChargeTransaction; use smallvec::smallvec; use sp_runtime::Perbill; @@ -90,18 +94,18 @@ pub struct WeightToFee(sp_std::marker::PhantomData); impl WeightToFeePolynomial for WeightToFee where R: pallet_transaction_payment::Config, - ::TransactionByteFee: Get, R: frame_system::Config, R: pallet_balances::Config, + u128: From<<::OnChargeTransaction as OnChargeTransaction>::Balance>, { type Balance = Balance; fn polynomial() -> WeightToFeeCoefficients { // The should be fee let wanted_fee: Balance = 10 * MILLI_KILT; - let per_byte_fee: u128 = ::TransactionByteFee::get(); // TODO: transfer_keep_alive is 288 byte long? - let byte_fee: u128 = 288_u128 * per_byte_fee; + let tx_len: u64 = 288; + let byte_fee: Balance = ::LengthToFee::weight_to_fee(&tx_len).into(); let base_weight: Balance = ::BlockWeights::get() .get(DispatchClass::Normal) .base_extrinsic diff --git a/runtimes/common/src/lib.rs b/runtimes/common/src/lib.rs index f6236a2f6..70f5cb27e 100644 --- a/runtimes/common/src/lib.rs +++ b/runtimes/common/src/lib.rs @@ -28,17 +28,24 @@ pub use sp_consensus_aura::sr25519::AuthorityId; pub use opaque::*; pub use frame_support::weights::constants::{BlockExecutionWeight, ExtrinsicBaseWeight, RocksDbWeight}; -use frame_support::{parameter_types, traits::Currency, weights::DispatchClass}; +use frame_support::{ + parameter_types, + traits::{Contains, ContainsLengthBound, Currency, Get, SortedMembers}, + weights::DispatchClass, +}; use frame_system::limits; use pallet_transaction_payment::{Multiplier, TargetedFeeAdjustment}; use sp_runtime::{ generic, traits::{IdentifyAccount, Verify}, - FixedPointNumber, MultiSignature, Perquintill, + FixedPointNumber, MultiSignature, Perquintill, SaturatedConversion, }; +use sp_std::marker::PhantomData; +pub mod authorization; pub mod constants; pub mod fees; +pub mod migrations; pub mod pallet_id; #[cfg(feature = "runtime-benchmarks")] @@ -152,3 +159,35 @@ pub type FeeSplit = SplitFeesByRatio; /// https://w3f-research.readthedocs.io/en/latest/polkadot/Token%20Economics.html#-2.-slow-adjusting-mechanism pub type SlowAdjustingFeeUpdate = TargetedFeeAdjustment; + +pub struct Tippers(PhantomData, PhantomData); +impl ContainsLengthBound for Tippers +where + R: pallet_membership::Config, +{ + fn max_len() -> usize { + >::MaxMembers::get().saturated_into() + } + + fn min_len() -> usize { + 0 + } +} + +impl SortedMembers for Tippers +where + R: pallet_membership::Config, + pallet_membership::Pallet: SortedMembers + Contains, +{ + fn sorted_members() -> sp_std::vec::Vec { + pallet_membership::Pallet::::sorted_members() + } + + #[cfg(feature = "runtime-benchmarks")] + fn add(who: &R::AccountId) { + pallet_membership::Members::::mutate(|members| match members.binary_search_by(|m| m.cmp(who)) { + Ok(_) => (), + Err(pos) => members.insert(pos, who.clone()), + }) + } +} diff --git a/runtimes/common/src/migrations.rs b/runtimes/common/src/migrations.rs new file mode 100644 index 000000000..8a444f04f --- /dev/null +++ b/runtimes/common/src/migrations.rs @@ -0,0 +1,63 @@ +// KILT Blockchain – https://botlabs.org +// Copyright (C) 2019-2022 BOTLabs GmbH + +// The KILT Blockchain is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// The KILT Blockchain is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with this program. If not, see . + +// If you feel like getting in touch with us, you can do so at info@botlabs.org + +use core::marker::PhantomData; +use frame_support::traits::Get; + +pub struct RemoveKiltLaunch(PhantomData); +impl frame_support::traits::OnRuntimeUpgrade for RemoveKiltLaunch { + fn on_runtime_upgrade() -> frame_support::weights::Weight { + let prefix: [u8; 16] = sp_io::hashing::twox_128(b"KiltLaunch"); + + let items = match frame_support::storage::unhashed::kill_prefix(&prefix, Some(6)) { + sp_io::KillStorageResult::AllRemoved(n) => { + log::info!("🚀 Successfully removed all {:?} storage items of the launch pallet", n); + n + } + sp_io::KillStorageResult::SomeRemaining(n) => { + log::warn!( + "🚀 Failed to remove all storage items of the launch pallet, {:?} are remaining", + n + ); + n + } + }; + ::DbWeight::get().writes(items.into()) + } + + #[cfg(feature = "try-runtime")] + fn pre_upgrade() -> Result<(), &'static str> { + let prefix: [u8; 16] = sp_io::hashing::twox_128(b"KiltLaunch"); + + assert!( + sp_io::storage::next_key(&prefix).map_or(false, |next_key| next_key.starts_with(&prefix)), + "🚀 Pre check: Launch pallet storage does not exist!" + ); + Ok(()) + } + + #[cfg(feature = "try-runtime")] + fn post_upgrade() -> Result<(), &'static str> { + let prefix: [u8; 16] = sp_io::hashing::twox_128(b"KiltLaunch"); + assert!( + sp_io::storage::next_key(&prefix,).map_or(true, |next_key| !next_key.starts_with(&prefix)), + "🚀 Post check: Launch pallet storage still exists!" + ); + Ok(()) + } +} diff --git a/runtimes/peregrine/Cargo.toml b/runtimes/peregrine/Cargo.toml index 7ea59bdb1..8faeb67bb 100644 --- a/runtimes/peregrine/Cargo.toml +++ b/runtimes/peregrine/Cargo.toml @@ -2,97 +2,97 @@ authors = ["KILT "] edition = "2021" name = "peregrine-runtime" -version = "1.6.2" +version = "1.7.0" [build-dependencies] -substrate-wasm-builder = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} +substrate-wasm-builder = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} [dependencies] -codec = {package = "parity-scale-codec", version = "2.3.1", default-features = false, features = ["derive"]} -log = "0.4" -scale-info = {version = "1.0", default-features = false, features = ["derive"]} -smallvec = "1.7.0" +codec = {package = "parity-scale-codec", version = "3.1.2", default-features = false, features = ["derive"]} +log = "0.4.17" +scale-info = {version = "2.1.1", default-features = false, features = ["derive"]} +smallvec = "1.8.0" static_assertions = "1.1.0" hex-literal = {version = "0.3.4", optional = true} -serde = {version = "1.0.132", optional = true, features = ["derive"]} +serde = {version = "1.0.137", optional = true, features = ["derive"]} # RPC -frame-system-rpc-runtime-api = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -pallet-transaction-payment-rpc-runtime-api = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} +frame-system-rpc-runtime-api = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-transaction-payment-rpc-runtime-api = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} # KILT pallets & primitives attestation = {default-features = false, path = "../../pallets/attestation"} ctype = {default-features = false, path = "../../pallets/ctype"} delegation = {default-features = false, path = "../../pallets/delegation"} did = {default-features = false, path = "../../pallets/did"} -kilt-launch = {path = "../../pallets/kilt-launch", default-features = false} kilt-support = {path = "../../support", default-features = false, optional = true} -pallet-web3-names = {default-features = false, path = "../../pallets/pallet-web3-names"} pallet-did-lookup = {default-features = false, path = "../../pallets/pallet-did-lookup"} pallet-inflation = {path = "../../pallets/pallet-inflation", default-features = false} +pallet-web3-names = {default-features = false, path = "../../pallets/pallet-web3-names"} parachain-staking = {default-features = false, path = "../../pallets/parachain-staking"} runtime-common = {path = "../../runtimes/common", default-features = false} # Substrate dependencies -sp-api = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -sp-arithmetic = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -sp-block-builder = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -sp-consensus-aura = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -sp-core = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -sp-inherents = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -sp-io = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -sp-offchain = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -sp-runtime = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -sp-session = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -sp-std = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -sp-transaction-pool = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -sp-version = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} +sp-api = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +sp-arithmetic = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +sp-block-builder = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +sp-consensus-aura = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +sp-core = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +sp-inherents = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +sp-io = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +sp-offchain = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +sp-runtime = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +sp-session = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +sp-std = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +sp-transaction-pool = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +sp-version = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} -frame-benchmarking = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -frame-executive = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -frame-support = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -frame-system = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -pallet-aura = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -pallet-authorship = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -pallet-balances = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -pallet-collective = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -pallet-democracy = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -pallet-indices = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -pallet-membership = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -pallet-preimage = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -pallet-proxy = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17" } -pallet-randomness-collective-flip = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -pallet-scheduler = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -pallet-session = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -pallet-sudo = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -pallet-timestamp = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -pallet-transaction-payment = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -pallet-treasury = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -pallet-utility = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -pallet-vesting = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} +frame-benchmarking = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +frame-executive = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +frame-support = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +frame-system = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-aura = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-authorship = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-balances = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-collective = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-democracy = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-indices = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-membership = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-preimage = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-proxy = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-randomness-collective-flip = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-scheduler = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-session = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-sudo = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-timestamp = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-tips = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-transaction-payment = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-treasury = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-utility = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-vesting = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} # Cumulus dependencies -cumulus-pallet-aura-ext = {git = "https://github.com/paritytech/cumulus", default-features = false, branch = "polkadot-v0.9.17"} -cumulus-pallet-parachain-system = {git = "https://github.com/paritytech/cumulus", default-features = false, branch = "polkadot-v0.9.17"} -cumulus-pallet-xcmp-queue = {git = "https://github.com/paritytech/cumulus", default-features = false, branch = "polkadot-v0.9.17"} -cumulus-primitives-core = {git = "https://github.com/paritytech/cumulus", default-features = false, branch = "polkadot-v0.9.17"} -cumulus-primitives-timestamp = {git = "https://github.com/paritytech/cumulus", default-features = false, branch = "polkadot-v0.9.17"} -parachain-info = {git = "https://github.com/paritytech/cumulus", default-features = false, branch = "polkadot-v0.9.17"} +cumulus-pallet-aura-ext = {git = "https://github.com/paritytech/cumulus", default-features = false, branch = "polkadot-v0.9.24"} +cumulus-pallet-parachain-system = {git = "https://github.com/paritytech/cumulus", default-features = false, branch = "polkadot-v0.9.24"} +cumulus-pallet-xcmp-queue = {git = "https://github.com/paritytech/cumulus", default-features = false, branch = "polkadot-v0.9.24"} +cumulus-primitives-core = {git = "https://github.com/paritytech/cumulus", default-features = false, branch = "polkadot-v0.9.24"} +cumulus-primitives-timestamp = {git = "https://github.com/paritytech/cumulus", default-features = false, branch = "polkadot-v0.9.24"} +parachain-info = {git = "https://github.com/paritytech/cumulus", default-features = false, branch = "polkadot-v0.9.24"} # Polkadot dependencies -polkadot-parachain = {git = "https://github.com/paritytech/polkadot", default-features = false, branch = "release-v0.9.17"} -xcm = {git = "https://github.com/paritytech/polkadot", default-features = false, branch = "release-v0.9.17"} -xcm-builder = {git = "https://github.com/paritytech/polkadot", default-features = false, branch = "release-v0.9.17"} -xcm-executor = {git = "https://github.com/paritytech/polkadot", default-features = false, branch = "release-v0.9.17"} +polkadot-parachain = {git = "https://github.com/paritytech/polkadot", default-features = false, branch = "release-v0.9.24"} +xcm = {git = "https://github.com/paritytech/polkadot", default-features = false, branch = "release-v0.9.24"} +xcm-builder = {git = "https://github.com/paritytech/polkadot", default-features = false, branch = "release-v0.9.24"} +xcm-executor = {git = "https://github.com/paritytech/polkadot", default-features = false, branch = "release-v0.9.24"} # Benchmarking -cumulus-pallet-session-benchmarking = {git = "https://github.com/paritytech/cumulus", default-features = false, optional = true, branch = "polkadot-v0.9.17"} -frame-system-benchmarking = {git = "https://github.com/paritytech/substrate", default-features = false, optional = true, branch = "polkadot-v0.9.17"} -rococo-runtime = {git = "https://github.com/paritytech/polkadot", default-features = false, optional = true, branch = "release-v0.9.17"} +cumulus-pallet-session-benchmarking = {git = "https://github.com/paritytech/cumulus", default-features = false, optional = true, branch = "polkadot-v0.9.24"} +frame-system-benchmarking = {git = "https://github.com/paritytech/substrate", default-features = false, optional = true, branch = "polkadot-v0.9.24"} +rococo-runtime = {git = "https://github.com/paritytech/polkadot", default-features = false, optional = true, branch = "release-v0.9.24"} # Runtime tests -frame-try-runtime = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17", optional = true} +frame-try-runtime = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24", optional = true} [features] default = ["std"] @@ -109,7 +109,6 @@ runtime-benchmarks = [ "frame-system-benchmarking", "frame-system/runtime-benchmarks", "hex-literal", - "kilt-launch/runtime-benchmarks", "kilt-support", "kilt-support/runtime-benchmarks", "pallet-balances/runtime-benchmarks", @@ -122,6 +121,7 @@ runtime-benchmarks = [ "pallet-preimage/runtime-benchmarks", "pallet-scheduler/runtime-benchmarks", "pallet-timestamp/runtime-benchmarks", + "pallet-tips/runtime-benchmarks", "pallet-treasury/runtime-benchmarks", "pallet-vesting/runtime-benchmarks", "pallet-web3-names/runtime-benchmarks", @@ -145,12 +145,9 @@ std = [ "frame-benchmarking/std", "frame-executive/std", "frame-support/std", - "frame-system-benchmarking/std", "frame-system-rpc-runtime-api/std", "frame-system/std", "frame-try-runtime/std", - "kilt-launch/std", - "runtime-common/std", "log/std", "pallet-aura/std", "pallet-authorship/std", @@ -167,15 +164,18 @@ std = [ "pallet-session/std", "pallet-sudo/std", "pallet-timestamp/std", + "pallet-tips/std", "pallet-transaction-payment-rpc-runtime-api/std", "pallet-transaction-payment/std", "pallet-treasury/std", - "pallet-web3-names/std", + "pallet-utility/std", "pallet-vesting/std", + "pallet-web3-names/std", "parachain-info/std", "parachain-staking/std", "polkadot-parachain/std", "rococo-runtime/std", + "runtime-common/std", "scale-info/std", "serde", "sp-api/std", @@ -204,7 +204,6 @@ try-runtime = [ "frame-support/try-runtime", "frame-system/try-runtime", "frame-try-runtime", - "kilt-launch/try-runtime", "pallet-aura/try-runtime", "pallet-authorship/try-runtime", "pallet-balances/try-runtime", @@ -219,6 +218,7 @@ try-runtime = [ "pallet-session/try-runtime", "pallet-sudo/try-runtime", "pallet-timestamp/try-runtime", + "pallet-tips/try-runtime", "pallet-transaction-payment/try-runtime", "pallet-treasury/try-runtime", "pallet-web3-names/try-runtime", diff --git a/runtimes/peregrine/src/lib.rs b/runtimes/peregrine/src/lib.rs index 9ab96ae19..33e544d9f 100644 --- a/runtimes/peregrine/src/lib.rs +++ b/runtimes/peregrine/src/lib.rs @@ -29,26 +29,25 @@ use codec::{Decode, Encode, MaxEncodedLen}; use frame_support::{ construct_runtime, parameter_types, traits::{EnsureOneOf, InstanceFilter, PrivilegeCmp}, - weights::{constants::RocksDbWeight, Weight}, + weights::{constants::RocksDbWeight, ConstantMultiplier, Weight}, }; use frame_system::EnsureRoot; use sp_api::impl_runtime_apis; -use sp_core::{ - u32_trait::{_1, _2, _3, _5}, - OpaqueMetadata, -}; +use sp_core::OpaqueMetadata; use sp_runtime::{ create_runtime_str, generic, impl_opaque_keys, traits::{AccountIdLookup, BlakeTwo256, Block as BlockT, ConvertInto, OpaqueKeys, Verify}, transaction_validity::{TransactionSource, TransactionValidity}, - ApplyExtrinsicResult, Perbill, Permill, Perquintill, RuntimeDebug, + ApplyExtrinsicResult, Perbill, Permill, RuntimeDebug, }; use sp_std::{cmp::Ordering, prelude::*}; use sp_version::RuntimeVersion; +use delegation::DelegationAc; pub use parachain_staking::InflationInfo; use runtime_common::{ - constants::{self, KILT, MICRO_KILT, MILLI_KILT}, + authorization::{AuthorizationId, PalletAuthorize}, + constants::{self, KILT, MILLI_KILT}, fees::{ToAuthor, WeightToFee}, pallet_id, AccountId, AuthorityId, Balance, BlockHashCount, BlockLength, BlockNumber, BlockWeights, DidIdentifier, FeeSplit, Hash, Header, Index, Signature, SlowAdjustingFeeUpdate, @@ -79,10 +78,10 @@ pub const VERSION: RuntimeVersion = RuntimeVersion { spec_name: create_runtime_str!("mashnet-node"), impl_name: create_runtime_str!("mashnet-node"), authoring_version: 4, - spec_version: 10620, + spec_version: 10700, impl_version: 0, apis: RUNTIME_API_VERSIONS, - transaction_version: 3, + transaction_version: 4, state_version: 0, }; @@ -158,7 +157,6 @@ impl pallet_timestamp::Config for Runtime { parameter_types! { pub const ExistentialDeposit: u128 = 10 * MILLI_KILT; - pub const TransactionByteFee: u128 = MICRO_KILT; pub const MaxLocks: u32 = 50; pub const MaxReserves: u32 = 50; } @@ -185,18 +183,12 @@ impl pallet_balances::Config for Runtime { type ReserveIdentifier = [u8; 8]; } -parameter_types! { - /// This value increases the priority of `Operational` transactions by adding - /// a "virtual tip" that's equal to the `OperationalFeeMultiplier * final_fee`. - pub const OperationalFeeMultiplier: u8 = 5; -} - impl pallet_transaction_payment::Config for Runtime { type OnChargeTransaction = pallet_transaction_payment::CurrencyAdapter>>; - type TransactionByteFee = TransactionByteFee; - type OperationalFeeMultiplier = OperationalFeeMultiplier; + type OperationalFeeMultiplier = constants::fee::OperationalFeeMultiplier; type WeightToFee = WeightToFee; + type LengthToFee = ConstantMultiplier; type FeeMultiplierUpdate = SlowAdjustingFeeUpdate; } @@ -259,18 +251,14 @@ impl pallet_session::Config for Runtime { type WeightInfo = weights::pallet_session::WeightInfo; } -parameter_types! { - pub const MinVestedTransfer: Balance = constants::MIN_VESTED_TRANSFER_AMOUNT; -} - impl pallet_vesting::Config for Runtime { type Event = Event; type Currency = Balances; type BlockNumberToBalance = ConvertInto; // disable vested transfers by setting min amount to max balance - type MinVestedTransfer = MinVestedTransfer; + type MinVestedTransfer = constants::MinVestedTransfer; type WeightInfo = weights::pallet_vesting::WeightInfo; - const MAX_VESTING_SCHEDULES: u32 = runtime_common::constants::MAX_VESTING_SCHEDULES; + const MAX_VESTING_SCHEDULES: u32 = constants::MAX_VESTING_SCHEDULES; } parameter_types! { @@ -279,15 +267,6 @@ parameter_types! { pub const AutoUnlockBound: u32 = 100; } -impl kilt_launch::Config for Runtime { - type Event = Event; - type MaxClaims = MaxClaims; - type UsableBalance = UsableBalance; - type AutoUnlockBound = AutoUnlockBound; - type WeightInfo = weights::kilt_launch::WeightInfo; - type PalletId = pallet_id::Launch; -} - impl pallet_preimage::Config for Runtime { type WeightInfo = weights::pallet_preimage::WeightInfo; type Event = Event; @@ -304,10 +283,8 @@ parameter_types! { pub const NoPreimagePostponement: Option = Some(10); } -type ScheduleOrigin = EnsureOneOf< - EnsureRoot, - pallet_collective::EnsureProportionAtLeast<_1, _2, AccountId, CouncilCollective>, ->; +type ScheduleOrigin = + EnsureOneOf, pallet_collective::EnsureProportionAtLeast>; /// Used the compare the privilege of an origin inside the scheduler. pub struct OriginPrivilegeCmp; @@ -347,12 +324,6 @@ impl pallet_scheduler::Config for Runtime { } parameter_types! { - pub const LaunchPeriod: BlockNumber = constants::governance::LAUNCH_PERIOD; - pub const VotingPeriod: BlockNumber = constants::governance::VOTING_PERIOD; - pub const FastTrackVotingPeriod: BlockNumber = constants::governance::FAST_TRACK_VOTING_PERIOD; - pub const MinimumDeposit: Balance = constants::governance::MIN_DEPOSIT; - pub const EnactmentPeriod: BlockNumber = constants::governance::ENACTMENT_PERIOD; - pub const CooloffPeriod: BlockNumber = constants::governance::COOLOFF_PERIOD; pub const InstantAllowed: bool = true; pub const MaxVotes: u32 = 100; pub const MaxProposals: u32 = 100; @@ -362,43 +333,43 @@ impl pallet_democracy::Config for Runtime { type Proposal = Call; type Event = Event; type Currency = Balances; - type EnactmentPeriod = EnactmentPeriod; - type VoteLockingPeriod = VotingPeriod; - type LaunchPeriod = LaunchPeriod; - type VotingPeriod = VotingPeriod; - type MinimumDeposit = MinimumDeposit; + type EnactmentPeriod = constants::governance::EnactmentPeriod; + type VoteLockingPeriod = constants::governance::VotingPeriod; + type LaunchPeriod = constants::governance::LaunchPeriod; + type VotingPeriod = constants::governance::VotingPeriod; + type MinimumDeposit = constants::governance::MinimumDeposit; /// A straight majority of the council can decide what their next motion is. - type ExternalOrigin = pallet_collective::EnsureProportionAtLeast<_1, _2, AccountId, CouncilCollective>; + type ExternalOrigin = pallet_collective::EnsureProportionAtLeast; /// A majority can have the next scheduled referendum be a straight /// majority-carries vote. - type ExternalMajorityOrigin = pallet_collective::EnsureProportionAtLeast<_1, _2, AccountId, CouncilCollective>; + type ExternalMajorityOrigin = pallet_collective::EnsureProportionAtLeast; /// A unanimous council can have the next scheduled referendum be a straight /// default-carries (NTB) vote. - type ExternalDefaultOrigin = pallet_collective::EnsureProportionAtLeast<_1, _1, AccountId, CouncilCollective>; + type ExternalDefaultOrigin = pallet_collective::EnsureProportionAtLeast; /// Two thirds of the technical committee can have an /// ExternalMajority/ExternalDefault vote be tabled immediately and with a /// shorter voting/enactment period. - type FastTrackOrigin = pallet_collective::EnsureProportionAtLeast<_2, _3, AccountId, TechnicalCollective>; - type InstantOrigin = pallet_collective::EnsureProportionAtLeast<_1, _1, AccountId, TechnicalCollective>; + type FastTrackOrigin = pallet_collective::EnsureProportionAtLeast; + type InstantOrigin = pallet_collective::EnsureProportionAtLeast; type InstantAllowed = InstantAllowed; - type FastTrackVotingPeriod = FastTrackVotingPeriod; + type FastTrackVotingPeriod = constants::governance::FastTrackVotingPeriod; // To cancel a proposal which has been passed, 2/3 of the council must agree to // it. type CancellationOrigin = EnsureOneOf< EnsureRoot, - pallet_collective::EnsureProportionAtLeast<_2, _3, AccountId, CouncilCollective>, + pallet_collective::EnsureProportionAtLeast, >; // To cancel a proposal before it has been passed, the technical committee must // be unanimous or Root must agree. type CancelProposalOrigin = EnsureOneOf< EnsureRoot, - pallet_collective::EnsureProportionAtLeast<_1, _1, AccountId, TechnicalCollective>, + pallet_collective::EnsureProportionAtLeast, >; type BlacklistOrigin = EnsureRoot; // Any single technical committee member may veto a coming council proposal, // however they can only do it once and it lasts only for the cooloff period. type VetoOrigin = pallet_collective::EnsureMember; - type CooloffPeriod = CooloffPeriod; + type CooloffPeriod = constants::governance::CooloffPeriod; type PreimageByteDeposit = constants::ByteDeposit; type Slash = Treasury; type Scheduler = Scheduler; @@ -418,15 +389,11 @@ parameter_types! { pub const MaxApprovals: u32 = 100; } -type ApproveOrigin = EnsureOneOf< - EnsureRoot, - pallet_collective::EnsureProportionAtLeast<_3, _5, AccountId, CouncilCollective>, ->; +type ApproveOrigin = + EnsureOneOf, pallet_collective::EnsureProportionAtLeast>; -type MoreThanHalfCouncil = EnsureOneOf< - EnsureRoot, - pallet_collective::EnsureProportionMoreThan<_1, _2, AccountId, CouncilCollective>, ->; +type MoreThanHalfCouncil = + EnsureOneOf, pallet_collective::EnsureProportionMoreThan>; impl pallet_treasury::Config for Runtime { type PalletId = pallet_id::Treasury; @@ -446,43 +413,32 @@ impl pallet_treasury::Config for Runtime { type MaxApprovals = MaxApprovals; } -parameter_types! { - pub const CouncilMotionDuration: BlockNumber = constants::governance::COUNCIL_MOTION_DURATION; - pub const CouncilMaxProposals: u32 = 100; - pub const CouncilMaxMembers: u32 = 100; -} - type CouncilCollective = pallet_collective::Instance1; impl pallet_collective::Config for Runtime { type Origin = Origin; type Proposal = Call; type Event = Event; - type MotionDuration = CouncilMotionDuration; - type MaxProposals = CouncilMaxProposals; - type MaxMembers = CouncilMaxMembers; + type MotionDuration = constants::governance::CouncilMotionDuration; + type MaxProposals = constants::governance::CouncilMaxProposals; + type MaxMembers = constants::governance::CouncilMaxMembers; type DefaultVote = pallet_collective::PrimeDefaultVote; type WeightInfo = weights::pallet_collective::WeightInfo; } -parameter_types! { - pub const TechnicalMotionDuration: BlockNumber = constants::governance::TECHNICAL_MOTION_DURATION; - pub const TechnicalMaxProposals: u32 = 100; - pub const TechnicalMaxMembers: u32 = 100; -} - type TechnicalCollective = pallet_collective::Instance2; impl pallet_collective::Config for Runtime { type Origin = Origin; type Proposal = Call; type Event = Event; - type MotionDuration = TechnicalMotionDuration; - type MaxProposals = TechnicalMaxProposals; - type MaxMembers = TechnicalMaxMembers; + type MotionDuration = constants::governance::TechnicalMotionDuration; + type MaxProposals = constants::governance::TechnicalMaxProposals; + type MaxMembers = constants::governance::TechnicalMaxMembers; type DefaultVote = pallet_collective::PrimeDefaultVote; type WeightInfo = weights::pallet_collective::WeightInfo; } -impl pallet_membership::Config for Runtime { +type TechnicalMembershipProvider = pallet_membership::Instance1; +impl pallet_membership::Config for Runtime { type Event = Event; type AddOrigin = MoreThanHalfCouncil; type RemoveOrigin = MoreThanHalfCouncil; @@ -491,13 +447,33 @@ impl pallet_membership::Config for Runtime { type PrimeOrigin = MoreThanHalfCouncil; type MembershipInitialized = TechnicalCommittee; type MembershipChanged = TechnicalCommittee; - type MaxMembers = TechnicalMaxMembers; + type MaxMembers = constants::governance::TechnicalMaxMembers; type WeightInfo = weights::pallet_membership::WeightInfo; } -parameter_types! { - pub const MaxDelegatedAttestations: u32 = 1000; - pub const AttestationDeposit: Balance = constants::attestation::ATTESTATION_DEPOSIT; +type TipsMembershipProvider = pallet_membership::Instance2; +impl pallet_membership::Config for Runtime { + type Event = Event; + type AddOrigin = MoreThanHalfCouncil; + type RemoveOrigin = MoreThanHalfCouncil; + type SwapOrigin = MoreThanHalfCouncil; + type ResetOrigin = MoreThanHalfCouncil; + type PrimeOrigin = MoreThanHalfCouncil; + type MembershipInitialized = (); + type MembershipChanged = (); + type MaxMembers = constants::governance::TechnicalMaxMembers; + type WeightInfo = weights::pallet_membership::WeightInfo; +} + +impl pallet_tips::Config for Runtime { + type MaximumReasonLength = constants::tips::MaximumReasonLength; + type DataDepositPerByte = constants::ByteDeposit; + type Tippers = runtime_common::Tippers; + type TipCountdown = constants::tips::TipCountdown; + type TipFindersFee = constants::tips::TipFindersFee; + type TipReportDepositBase = constants::tips::TipReportDepositBase; + type Event = Event; + type WeightInfo = weights::pallet_tips::WeightInfo; } impl attestation::Config for Runtime { @@ -508,18 +484,11 @@ impl attestation::Config for Runtime { type WeightInfo = weights::attestation::WeightInfo; type Currency = Balances; - type Deposit = AttestationDeposit; - type MaxDelegatedAttestations = MaxDelegatedAttestations; -} - -parameter_types! { - pub const MaxSignatureByteLength: u16 = constants::delegation::MAX_SIGNATURE_BYTE_LENGTH; - pub const MaxParentChecks: u32 = constants::delegation::MAX_PARENT_CHECKS; - pub const MaxRevocations: u32 = constants::delegation::MAX_REVOCATIONS; - pub const MaxRemovals: u32 = constants::delegation::MAX_REMOVALS; - #[derive(Clone)] - pub const MaxChildren: u32 = constants::delegation::MAX_CHILDREN; - pub const DelegationDeposit: Balance = constants::delegation::DELEGATION_DEPOSIT; + type Deposit = constants::attestation::AttestationDeposit; + type MaxDelegatedAttestations = constants::attestation::MaxDelegatedAttestations; + type AttesterId = DidIdentifier; + type AuthorizationId = AuthorizationId<::DelegationNodeId>; + type AccessControl = PalletAuthorize>; } impl delegation::Config for Runtime { @@ -540,24 +509,20 @@ impl delegation::Config for Runtime { type DelegationSignatureVerification = AlwaysVerify, Self::Signature>; type Event = Event; - type MaxSignatureByteLength = MaxSignatureByteLength; - type MaxParentChecks = MaxParentChecks; - type MaxRevocations = MaxRevocations; - type MaxRemovals = MaxRemovals; - type MaxChildren = MaxChildren; + type MaxSignatureByteLength = constants::delegation::MaxSignatureByteLength; + type MaxParentChecks = constants::delegation::MaxParentChecks; + type MaxRevocations = constants::delegation::MaxRevocations; + type MaxRemovals = constants::delegation::MaxRemovals; + type MaxChildren = constants::delegation::MaxChildren; type WeightInfo = weights::delegation::WeightInfo; type Currency = Balances; - type Deposit = DelegationDeposit; -} - -parameter_types! { - pub const Fee: Balance = MILLI_KILT; + type Deposit = constants::delegation::DelegationDeposit; } impl ctype::Config for Runtime { type CtypeCreatorId = AccountId; type Currency = Balances; - type Fee = Fee; + type Fee = constants::CtypeFee; type FeeCollector = Treasury; type EnsureOrigin = did::EnsureDidOrigin; @@ -567,35 +532,14 @@ impl ctype::Config for Runtime { type WeightInfo = weights::ctype::WeightInfo; } -parameter_types! { - pub const MaxNewKeyAgreementKeys: u32 = constants::did::MAX_KEY_AGREEMENT_KEYS; - #[derive(Debug, Clone, PartialEq)] - pub const MaxUrlLength: u32 = constants::did::MAX_URL_LENGTH; - pub const MaxPublicKeysPerDid: u32 = constants::did::MAX_PUBLIC_KEYS_PER_DID; - #[derive(Debug, Clone, PartialEq)] - pub const MaxTotalKeyAgreementKeys: u32 = constants::did::MAX_TOTAL_KEY_AGREEMENT_KEYS; - #[derive(Debug, Clone, PartialEq)] - pub const MaxEndpointUrlsCount: u32 = constants::did::MAX_ENDPOINT_URLS_COUNT; - // Standalone block time is half the duration of a parachain block. - pub const MaxBlocksTxValidity: BlockNumber = constants::did::MAX_BLOCKS_TX_VALIDITY; - pub const DidDeposit: Balance = constants::did::DID_DEPOSIT; - pub const DidFee: Balance = constants::did::DID_FEE; - pub const MaxNumberOfServicesPerDid: u32 = constants::did::MAX_NUMBER_OF_SERVICES_PER_DID; - pub const MaxServiceIdLength: u32 = constants::did::MAX_SERVICE_ID_LENGTH; - pub const MaxServiceTypeLength: u32 = constants::did::MAX_SERVICE_TYPE_LENGTH; - pub const MaxServiceUrlLength: u32 = constants::did::MAX_SERVICE_URL_LENGTH; - pub const MaxNumberOfTypesPerService: u32 = constants::did::MAX_NUMBER_OF_TYPES_PER_SERVICE; - pub const MaxNumberOfUrlsPerService: u32 = constants::did::MAX_NUMBER_OF_URLS_PER_SERVICE; -} - impl did::Config for Runtime { type DidIdentifier = DidIdentifier; type Event = Event; type Call = Call; type Origin = Origin; type Currency = Balances; - type Deposit = DidDeposit; - type Fee = DidFee; + type Deposit = constants::did::DidDeposit; + type Fee = constants::did::DidFee; type FeeCollector = Treasury; #[cfg(not(feature = "runtime-benchmarks"))] @@ -608,23 +552,19 @@ impl did::Config for Runtime { #[cfg(feature = "runtime-benchmarks")] type OriginSuccess = DidIdentifier; - type MaxNewKeyAgreementKeys = MaxNewKeyAgreementKeys; - type MaxTotalKeyAgreementKeys = MaxTotalKeyAgreementKeys; - type MaxPublicKeysPerDid = MaxPublicKeysPerDid; - type MaxBlocksTxValidity = MaxBlocksTxValidity; - type MaxNumberOfServicesPerDid = MaxNumberOfServicesPerDid; - type MaxServiceIdLength = MaxServiceIdLength; - type MaxServiceTypeLength = MaxServiceTypeLength; - type MaxServiceUrlLength = MaxServiceUrlLength; - type MaxNumberOfTypesPerService = MaxNumberOfTypesPerService; - type MaxNumberOfUrlsPerService = MaxNumberOfUrlsPerService; + type MaxNewKeyAgreementKeys = constants::did::MaxNewKeyAgreementKeys; + type MaxTotalKeyAgreementKeys = constants::did::MaxTotalKeyAgreementKeys; + type MaxPublicKeysPerDid = constants::did::MaxPublicKeysPerDid; + type MaxBlocksTxValidity = constants::did::MaxBlocksTxValidity; + type MaxNumberOfServicesPerDid = constants::did::MaxNumberOfServicesPerDid; + type MaxServiceIdLength = constants::did::MaxServiceIdLength; + type MaxServiceTypeLength = constants::did::MaxServiceTypeLength; + type MaxServiceUrlLength = constants::did::MaxServiceUrlLength; + type MaxNumberOfTypesPerService = constants::did::MaxNumberOfTypesPerService; + type MaxNumberOfUrlsPerService = constants::did::MaxNumberOfUrlsPerService; type WeightInfo = weights::did::WeightInfo; } -parameter_types! { - pub const DidLookupDeposit: Balance = constants::did_lookup::DID_CONNECTION_DEPOSIT; -} - impl pallet_did_lookup::Config for Runtime { type Event = Event; type Signature = Signature; @@ -632,7 +572,7 @@ impl pallet_did_lookup::Config for Runtime { type DidIdentifier = DidIdentifier; type Currency = Balances; - type Deposit = DidLookupDeposit; + type Deposit = constants::did_lookup::DidLookupDeposit; type EnsureOrigin = did::EnsureDidOrigin; type OriginSuccess = did::DidRawOrigin; @@ -640,98 +580,55 @@ impl pallet_did_lookup::Config for Runtime { type WeightInfo = weights::pallet_did_lookup::WeightInfo; } -parameter_types! { - pub const Web3NameDeposit: Balance = constants::web3_names::DEPOSIT; - pub const MinNameLength: u32 = constants::web3_names::MIN_LENGTH; - pub const MaxNameLength: u32 = constants::web3_names::MAX_LENGTH; -} - impl pallet_web3_names::Config for Runtime { type BanOrigin = EnsureRoot; type OwnerOrigin = did::EnsureDidOrigin; type OriginSuccess = did::DidRawOrigin; type Currency = Balances; - type Deposit = Web3NameDeposit; + type Deposit = constants::web3_names::Web3NameDeposit; type Event = Event; - type MaxNameLength = MaxNameLength; - type MinNameLength = MinNameLength; - type Web3Name = pallet_web3_names::web3_name::AsciiWeb3Name; + type MaxNameLength = constants::web3_names::MaxNameLength; + type MinNameLength = constants::web3_names::MinNameLength; + type Web3Name = pallet_web3_names::web3_name::AsciiWeb3Name; type Web3NameOwner = DidIdentifier; type WeightInfo = weights::pallet_web3_names::WeightInfo; } -parameter_types! { - pub const InitialPeriodLength: BlockNumber = constants::treasury::INITIAL_PERIOD_LENGTH; - pub const InitialPeriodReward: Balance = constants::treasury::INITIAL_PERIOD_REWARD_PER_BLOCK; -} - impl pallet_inflation::Config for Runtime { type Currency = Balances; - type InitialPeriodLength = InitialPeriodLength; - type InitialPeriodReward = InitialPeriodReward; + type InitialPeriodLength = constants::treasury::InitialPeriodLength; + type InitialPeriodReward = constants::treasury::InitialPeriodReward; type Beneficiary = Treasury; type WeightInfo = weights::pallet_inflation::WeightInfo; } -parameter_types! { - /// Minimum round length is 1 hour - pub const MinBlocksPerRound: BlockNumber = constants::staking::MIN_BLOCKS_PER_ROUND; - /// Default length of a round/session is 2 hours - pub const DefaultBlocksPerRound: BlockNumber = constants::staking::DEFAULT_BLOCKS_PER_ROUND; - /// Unstaked balance can be unlocked after 7 days - pub const StakeDuration: BlockNumber = constants::staking::STAKE_DURATION; - /// Collator exit requests are delayed by 4 hours (2 rounds/sessions) - pub const ExitQueueDelay: u32 = 2; - /// Minimum 16 collators selected per round, default at genesis and minimum forever after - pub const MinCollators: u32 = constants::staking::MIN_COLLATORS; - /// At least 4 candidates which cannot leave the network if there are no other candidates. - pub const MinRequiredCollators: u32 = 4; - /// We only allow one delegation per round. - pub const MaxDelegationsPerRound: u32 = 1; - /// Maximum 25 delegators per collator at launch, might be increased later - #[derive(Debug, PartialEq)] - pub const MaxDelegatorsPerCollator: u32 = constants::staking::MAX_DELEGATORS_PER_COLLATOR; - /// Maximum 1 collator per delegator at launch, will be increased later - #[derive(Debug, PartialEq)] - pub const MaxCollatorsPerDelegator: u32 = 1; - /// Minimum stake required to be reserved to be a collator is 10_000 - pub const MinCollatorStake: Balance = 10_000 * KILT; - /// Minimum stake required to be reserved to be a delegator is 1000 - pub const MinDelegatorStake: Balance = constants::staking::MIN_DELEGATOR_STAKE; - /// Maximum number of collator candidates - #[derive(Debug, PartialEq)] - pub const MaxCollatorCandidates: u32 = constants::staking::MAX_CANDIDATES; - /// Maximum number of concurrent requests to unlock unstaked balance - pub const MaxUnstakeRequests: u32 = 10; - /// The starting block number for the network rewards - pub const NetworkRewardStart: BlockNumber = constants::treasury::INITIAL_PERIOD_LENGTH; - /// The rate in percent for the network rewards - pub const NetworkRewardRate: Perquintill = constants::staking::NETWORK_REWARD_RATE; -} - impl parachain_staking::Config for Runtime { type Event = Event; type Currency = Balances; type CurrencyBalance = Balance; - type MinBlocksPerRound = MinBlocksPerRound; - type DefaultBlocksPerRound = DefaultBlocksPerRound; - type StakeDuration = StakeDuration; - type ExitQueueDelay = ExitQueueDelay; - type MinCollators = MinCollators; - type MinRequiredCollators = MinRequiredCollators; - type MaxDelegationsPerRound = MaxDelegationsPerRound; - type MaxDelegatorsPerCollator = MaxDelegatorsPerCollator; - type MaxCollatorsPerDelegator = MaxCollatorsPerDelegator; - type MinCollatorStake = MinCollatorStake; - type MinCollatorCandidateStake = MinCollatorStake; - type MaxTopCandidates = MaxCollatorCandidates; - type MinDelegation = MinDelegatorStake; - type MinDelegatorStake = MinDelegatorStake; - type MaxUnstakeRequests = MaxUnstakeRequests; - type NetworkRewardRate = NetworkRewardRate; - type NetworkRewardStart = NetworkRewardStart; + + type MinBlocksPerRound = constants::staking::MinBlocksPerRound; + type DefaultBlocksPerRound = constants::staking::DefaultBlocksPerRound; + type StakeDuration = constants::staking::StakeDuration; + type ExitQueueDelay = constants::staking::ExitQueueDelay; + type MinCollators = constants::staking::MinCollators; + type MinRequiredCollators = constants::staking::MinRequiredCollators; + type MaxDelegationsPerRound = constants::staking::MaxDelegationsPerRound; + type MaxDelegatorsPerCollator = constants::staking::MaxDelegatorsPerCollator; + type MaxCollatorsPerDelegator = constants::staking::MaxCollatorsPerDelegator; + type MinCollatorStake = constants::staking::MinCollatorStake; + type MinCollatorCandidateStake = constants::staking::MinCollatorStake; + type MaxTopCandidates = constants::staking::MaxCollatorCandidates; + type MinDelegation = constants::staking::MinDelegatorStake; + type MinDelegatorStake = constants::staking::MinDelegatorStake; + type MaxUnstakeRequests = constants::staking::MaxUnstakeRequests; + type NetworkRewardRate = constants::staking::NetworkRewardRate; + type NetworkRewardStart = constants::staking::NetworkRewardStart; + type NetworkRewardBeneficiary = Treasury; type WeightInfo = weights::parachain_staking::WeightInfo; + + const BLOCKS_PER_YEAR: Self::BlockNumber = constants::BLOCKS_PER_YEAR; } impl pallet_utility::Config for Runtime { @@ -789,7 +686,6 @@ impl InstanceFilter for ProxyType { | pallet_indices::Call::free { .. } | pallet_indices::Call::freeze { .. } ) - // Excludes `KiltLaunch` | Call::ParachainStaking(..) // Excludes `ParachainSystem` | Call::Preimage(..) @@ -800,6 +696,7 @@ impl InstanceFilter for ProxyType { | Call::System(..) | Call::TechnicalCommittee(..) | Call::TechnicalMembership(..) + | Call::TipsMembership(..) | Call::Timestamp(..) | Call::Treasury(..) | Call::Utility(..) @@ -852,7 +749,6 @@ impl InstanceFilter for ProxyType { | pallet_did_lookup::Call::remove_sender_association { .. } ) | Call::Indices(..) - // Excludes `KiltLaunch` | Call::ParachainStaking(..) // Excludes `ParachainSystem` | Call::Preimage(..) @@ -880,6 +776,7 @@ impl InstanceFilter for ProxyType { | Call::Democracy(..) | Call::TechnicalCommittee(..) | Call::TechnicalMembership(..) + | Call::TipsMembership(..) | Call::Treasury(..) | Call::Utility(..) ), ProxyType::ParachainStaking => { @@ -950,7 +847,7 @@ construct_runtime! { Council: pallet_collective:: = 31, TechnicalCommittee: pallet_collective:: = 32, // placeholder: parachain council election = 33, - TechnicalMembership: pallet_membership = 34, + TechnicalMembership: pallet_membership:: = 34, Treasury: pallet_treasury = 35, // Utility module. @@ -968,8 +865,12 @@ construct_runtime! { // Preimage registrar Preimage: pallet_preimage::{Pallet, Call, Storage, Event} = 44, + // Tips module to reward contributions to the ecosystem with small amount of KILTs. + TipsMembership: pallet_membership:: = 45, + Tips: pallet_tips::{Pallet, Call, Storage, Event} = 46, + // KILT Pallets. Start indices 60 to leave room - KiltLaunch: kilt_launch = 60, + // DELETED: KiltLaunch: kilt_launch = 60, Ctype: ctype = 61, Attestation: attestation = 62, Delegation: delegation = 63, @@ -1044,6 +945,7 @@ pub type SignedBlock = generic::SignedBlock; pub type BlockId = generic::BlockId; /// The SignedExtension to the basic transaction logic. pub type SignedExtra = ( + frame_system::CheckNonZeroSender, frame_system::CheckSpecVersion, frame_system::CheckTxVersion, frame_system::CheckGenesis, @@ -1065,7 +967,7 @@ pub type Executive = frame_executive::Executive< // Executes pallet hooks in reverse order of definition in construct_runtime // If we want to switch to AllPalletsWithSystem, we need to reorder the staking pallets AllPalletsReversedWithSystemFirst, - pallet_did_lookup::migrations::LookupReverseIndexMigration, + runtime_common::migrations::RemoveKiltLaunch, >; impl_runtime_apis! { @@ -1198,6 +1100,7 @@ impl_runtime_apis! { list_benchmark!(list, extra, pallet_preimage, Preimage); list_benchmark!(list, extra, pallet_scheduler, Scheduler); list_benchmark!(list, extra, pallet_timestamp, Timestamp); + list_benchmark!(list, extra, pallet_tips, Tips); list_benchmark!(list, extra, pallet_treasury, Treasury); list_benchmark!(list, extra, pallet_utility, Utility); list_benchmark!(list, extra, pallet_vesting, Vesting); @@ -1209,7 +1112,6 @@ impl_runtime_apis! { list_benchmark!(list, extra, delegation, Delegation); list_benchmark!(list, extra, did, Did); list_benchmark!(list, extra, pallet_did_lookup, DidLookup); - list_benchmark!(list, extra, kilt_launch, KiltLaunch); list_benchmark!(list, extra, pallet_inflation, Inflation); list_benchmark!(list, extra, parachain_staking, ParachainStaking); list_benchmark!(list, extra, pallet_web3_names, Web3Names); @@ -1247,8 +1149,6 @@ impl_runtime_apis! { // System Events hex_literal::hex!("26aa394eea5630e07c48ae0c9558cef780d41e5e16056765bc8461851072c9d7") .to_vec().into(), - // KiltLaunch transfer account - hex_literal::hex!("6a3c793cec9dbe330b349dc4eea6801090f5e71f53b1b41ad11afb4a313a282c").to_vec().into(), ]; let mut batches = Vec::::new(); @@ -1266,6 +1166,7 @@ impl_runtime_apis! { add_benchmark!(params, batches, pallet_session, SessionBench::); add_benchmark!(params, batches, frame_system, SystemBench::); add_benchmark!(params, batches, pallet_timestamp, Timestamp); + add_benchmark!(params, batches, pallet_tips, Tips); add_benchmark!(params, batches, pallet_treasury, Treasury); add_benchmark!(params, batches, pallet_utility, Utility); add_benchmark!(params, batches, pallet_vesting, Vesting); @@ -1277,7 +1178,6 @@ impl_runtime_apis! { add_benchmark!(params, batches, delegation, Delegation); add_benchmark!(params, batches, did, Did); add_benchmark!(params, batches, pallet_did_lookup, DidLookup); - add_benchmark!(params, batches, kilt_launch, KiltLaunch); add_benchmark!(params, batches, pallet_inflation, Inflation); add_benchmark!(params, batches, parachain_staking, ParachainStaking); add_benchmark!(params, batches, pallet_web3_names, Web3Names); diff --git a/runtimes/peregrine/src/weights/attestation.rs b/runtimes/peregrine/src/weights/attestation.rs index 4d9ba8b55..349ae495a 100644 --- a/runtimes/peregrine/src/weights/attestation.rs +++ b/runtimes/peregrine/src/weights/attestation.rs @@ -19,14 +19,15 @@ //! Autogenerated weights for attestation //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2021-10-15, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 128 +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 1024 // Executed Command: -// target/release/kilt-parachain +// ./target/release/kilt-parachain // benchmark +// pallet // --chain=dev -// --steps=50 +// --steps=1 // --repeat=20 // --pallet=attestation // --extrinsic=* @@ -36,41 +37,43 @@ // --output=./runtimes/peregrine/src/weights/attestation.rs // --template=.maintain/runtime-weight-template.hbs - #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] +#![allow(clippy::unnecessary_cast)] use frame_support::{traits::Get, weights::Weight}; use sp_std::marker::PhantomData; -/// Weights for attestation using the recommended hardware. +/// Weight functions for `attestation`. pub struct WeightInfo(PhantomData); impl attestation::WeightInfo for WeightInfo { + // Storage: Ctype Ctypes (r:1 w:0) + // Storage: Attestation Attestations (r:1 w:1) + // Storage: System Account (r:1 w:1) fn add() -> Weight { - (74_682_000_u64) - .saturating_add(T::DbWeight::get().reads(6_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + (39_155_000 as Weight) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) } - fn revoke(d: u32, ) -> Weight { - (37_043_000_u64) - // Standard Error: 45_000 - .saturating_add((6_394_000_u64).saturating_mul(d as Weight)) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(d as Weight))) - .saturating_add(T::DbWeight::get().writes(1_u64)) + // Storage: Attestation Attestations (r:1 w:1) + fn revoke() -> Weight { + (22_118_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } - fn remove(d: u32, ) -> Weight { - (64_305_000_u64) - // Standard Error: 41_000 - .saturating_add((6_297_000_u64).saturating_mul(d as Weight)) - .saturating_add(T::DbWeight::get().reads(4_u64)) - .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(d as Weight))) - .saturating_add(T::DbWeight::get().writes(3_u64)) + // Storage: Attestation Attestations (r:1 w:1) + // Storage: System Account (r:1 w:1) + fn remove() -> Weight { + (37_056_000 as Weight) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) } + // Storage: Attestation Attestations (r:1 w:1) + // Storage: System Account (r:1 w:1) fn reclaim_deposit() -> Weight { - (57_159_000_u64) - .saturating_add(T::DbWeight::get().reads(3_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + (36_419_000 as Weight) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) } } diff --git a/runtimes/peregrine/src/weights/ctype.rs b/runtimes/peregrine/src/weights/ctype.rs index 90e1bc670..8b82464bb 100644 --- a/runtimes/peregrine/src/weights/ctype.rs +++ b/runtimes/peregrine/src/weights/ctype.rs @@ -19,14 +19,15 @@ //! Autogenerated weights for ctype //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2021-11-26, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 128 +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 1024 // Executed Command: -// target/release/kilt-parachain +// ./target/release/kilt-parachain // benchmark +// pallet // --chain=dev -// --steps=50 +// --steps=1 // --repeat=20 // --pallet=ctype // --extrinsic=* @@ -36,7 +37,6 @@ // --output=./runtimes/peregrine/src/weights/ctype.rs // --template=.maintain/runtime-weight-template.hbs - #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] @@ -51,7 +51,7 @@ impl ctype::WeightInfo for WeightInfo { // Storage: System Account (r:2 w:2) // Storage: Ctype Ctypes (r:1 w:1) fn add(l: u32, ) -> Weight { - (5_120_000 as Weight) + (55_375_000 as Weight) // Standard Error: 0 .saturating_add((2_000 as Weight).saturating_mul(l as Weight)) .saturating_add(T::DbWeight::get().reads(3 as Weight)) diff --git a/runtimes/peregrine/src/weights/delegation.rs b/runtimes/peregrine/src/weights/delegation.rs index 5b6656de9..be3699ed5 100644 --- a/runtimes/peregrine/src/weights/delegation.rs +++ b/runtimes/peregrine/src/weights/delegation.rs @@ -19,14 +19,15 @@ //! Autogenerated weights for delegation //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2021-11-08, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 128 +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 1024 // Executed Command: -// target/release/kilt-parachain +// ./target/release/kilt-parachain // benchmark +// pallet // --chain=dev -// --steps=50 +// --steps=1 // --repeat=20 // --pallet=delegation // --extrinsic=* @@ -36,7 +37,6 @@ // --output=./runtimes/peregrine/src/weights/delegation.rs // --template=.maintain/runtime-weight-template.hbs - #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] @@ -53,25 +53,25 @@ impl delegation::WeightInfo for WeightInfo { // Storage: System Account (r:1 w:1) // Storage: Delegation DelegationNodes (r:0 w:1) fn create_hierarchy() -> Weight { - (48_478_000 as Weight) + (42_445_000 as Weight) .saturating_add(T::DbWeight::get().reads(3 as Weight)) .saturating_add(T::DbWeight::get().writes(3 as Weight)) } // Storage: Delegation DelegationNodes (r:2 w:2) // Storage: System Account (r:1 w:1) fn add_delegation() -> Weight { - (59_829_000 as Weight) + (50_201_000 as Weight) .saturating_add(T::DbWeight::get().reads(3 as Weight)) .saturating_add(T::DbWeight::get().writes(3 as Weight)) } // Storage: Delegation DelegationNodes (r:1 w:1) // Storage: Delegation DelegationHierarchies (r:1 w:0) fn revoke_delegation_root_child(r: u32, c: u32, ) -> Weight { - (23_761_000 as Weight) - // Standard Error: 52_000 - .saturating_add((19_062_000 as Weight).saturating_mul(r as Weight)) - // Standard Error: 52_000 - .saturating_add((43_000 as Weight).saturating_mul(c as Weight)) + (20_845_000 as Weight) + // Standard Error: 26_000 + .saturating_add((14_255_000 as Weight).saturating_mul(r as Weight)) + // Standard Error: 26_000 + .saturating_add((39_000 as Weight).saturating_mul(c as Weight)) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(r as Weight))) .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(r as Weight))) @@ -79,11 +79,11 @@ impl delegation::WeightInfo for WeightInfo { // Storage: Delegation DelegationNodes (r:6 w:1) // Storage: Delegation DelegationHierarchies (r:1 w:0) fn revoke_delegation_leaf(r: u32, c: u32, ) -> Weight { - (41_094_000 as Weight) - // Standard Error: 27_000 - .saturating_add((41_000 as Weight).saturating_mul(r as Weight)) - // Standard Error: 27_000 - .saturating_add((5_758_000 as Weight).saturating_mul(c as Weight)) + (35_096_000 as Weight) + // Standard Error: 28_000 + .saturating_add((70_000 as Weight).saturating_mul(r as Weight)) + // Standard Error: 28_000 + .saturating_add((5_074_000 as Weight).saturating_mul(c as Weight)) .saturating_add(T::DbWeight::get().reads(2 as Weight)) .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(c as Weight))) .saturating_add(T::DbWeight::get().writes(1 as Weight)) @@ -92,24 +92,46 @@ impl delegation::WeightInfo for WeightInfo { // Storage: System Account (r:1 w:1) // Storage: Delegation DelegationHierarchies (r:1 w:1) fn remove_delegation(r: u32, ) -> Weight { - (63_362_000 as Weight) - // Standard Error: 83_000 - .saturating_add((38_970_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(2 as Weight)) - .saturating_add(T::DbWeight::get().reads((2 as Weight).saturating_mul(r as Weight))) - .saturating_add(T::DbWeight::get().writes(2 as Weight)) - .saturating_add(T::DbWeight::get().writes((2 as Weight).saturating_mul(r as Weight))) + (56_155_000 as Weight) + // Standard Error: 39_000 + .saturating_add((24_122_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(r as Weight))) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) + .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(r as Weight))) } // Storage: Delegation DelegationNodes (r:2 w:2) // Storage: System Account (r:1 w:1) // Storage: Delegation DelegationHierarchies (r:0 w:1) fn reclaim_deposit(r: u32, ) -> Weight { - (53_098_000 as Weight) - // Standard Error: 75_000 - .saturating_add((39_041_000 as Weight).saturating_mul(r as Weight)) + (48_349_000 as Weight) + // Standard Error: 49_000 + .saturating_add((24_335_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(r as Weight))) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) + .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(r as Weight))) + } + // Storage: Delegation DelegationNodes (r:1 w:0) + // Storage: Delegation DelegationHierarchies (r:1 w:0) + fn can_attest() -> Weight { + (13_495_000 as Weight) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + } + // Storage: Delegation DelegationNodes (r:2 w:0) + fn can_revoke(c: u32, ) -> Weight { + (8_438_000 as Weight) + // Standard Error: 18_000 + .saturating_add((5_037_000 as Weight).saturating_mul(c as Weight)) .saturating_add(T::DbWeight::get().reads(1 as Weight)) - .saturating_add(T::DbWeight::get().reads((2 as Weight).saturating_mul(r as Weight))) - .saturating_add(T::DbWeight::get().writes(2 as Weight)) - .saturating_add(T::DbWeight::get().writes((2 as Weight).saturating_mul(r as Weight))) + .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(c as Weight))) + } + // Storage: Delegation DelegationNodes (r:2 w:0) + fn can_remove(c: u32, ) -> Weight { + (8_448_000 as Weight) + // Standard Error: 17_000 + .saturating_add((5_022_000 as Weight).saturating_mul(c as Weight)) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(c as Weight))) } } diff --git a/runtimes/peregrine/src/weights/did.rs b/runtimes/peregrine/src/weights/did.rs index a2212fe3a..ed44e0382 100644 --- a/runtimes/peregrine/src/weights/did.rs +++ b/runtimes/peregrine/src/weights/did.rs @@ -19,14 +19,15 @@ //! Autogenerated weights for did //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2021-10-27, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 128 +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 1024 // Executed Command: -// target/release/kilt-parachain +// ./target/release/kilt-parachain // benchmark +// pallet // --chain=dev -// --steps=50 +// --steps=1 // --repeat=20 // --pallet=did // --extrinsic=* @@ -36,209 +37,264 @@ // --output=./runtimes/peregrine/src/weights/did.rs // --template=.maintain/runtime-weight-template.hbs - #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] +#![allow(clippy::unnecessary_cast)] use frame_support::{traits::Get, weights::Weight}; use sp_std::marker::PhantomData; -/// Weights for did using the recommended hardware. +/// Weight functions for `did`. pub struct WeightInfo(PhantomData); impl did::WeightInfo for WeightInfo { + // Storage: System Account (r:2 w:2) + // Storage: Did DidBlacklist (r:1 w:0) + // Storage: Did Did (r:1 w:1) + // Storage: Did DidEndpointsCount (r:0 w:1) + // Storage: Did ServiceEndpoints (r:0 w:25) fn create_ed25519_keys(n: u32, c: u32, ) -> Weight { - (155_554_000_u64) - // Standard Error: 40_000 - .saturating_add((2_340_000_u64).saturating_mul(n as Weight)) - // Standard Error: 12_000 - .saturating_add((10_183_000_u64).saturating_mul(c as Weight)) - .saturating_add(T::DbWeight::get().reads(4_u64)) - .saturating_add(T::DbWeight::get().writes(4_u64)) - .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(c as Weight))) - } + (136_970_000 as Weight) + // Standard Error: 43_000 + .saturating_add((1_516_000 as Weight).saturating_mul(n as Weight)) + // Standard Error: 16_000 + .saturating_add((5_935_000 as Weight).saturating_mul(c as Weight)) + .saturating_add(T::DbWeight::get().reads(4 as Weight)) + .saturating_add(T::DbWeight::get().writes(4 as Weight)) + .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(c as Weight))) + } + // Storage: System Account (r:2 w:2) + // Storage: Did DidBlacklist (r:1 w:0) + // Storage: Did Did (r:1 w:1) + // Storage: Did DidEndpointsCount (r:0 w:1) + // Storage: Did ServiceEndpoints (r:0 w:25) fn create_sr25519_keys(n: u32, c: u32, ) -> Weight { - (157_851_000_u64) - // Standard Error: 27_000 - .saturating_add((2_477_000_u64).saturating_mul(n as Weight)) - // Standard Error: 8_000 - .saturating_add((10_523_000_u64).saturating_mul(c as Weight)) - .saturating_add(T::DbWeight::get().reads(4_u64)) - .saturating_add(T::DbWeight::get().writes(4_u64)) - .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(c as Weight))) - } + (139_739_000 as Weight) + // Standard Error: 15_000 + .saturating_add((1_503_000 as Weight).saturating_mul(n as Weight)) + // Standard Error: 5_000 + .saturating_add((6_392_000 as Weight).saturating_mul(c as Weight)) + .saturating_add(T::DbWeight::get().reads(4 as Weight)) + .saturating_add(T::DbWeight::get().writes(4 as Weight)) + .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(c as Weight))) + } + // Storage: System Account (r:2 w:2) + // Storage: Did DidBlacklist (r:1 w:0) + // Storage: Did Did (r:1 w:1) + // Storage: Did DidEndpointsCount (r:0 w:1) + // Storage: Did ServiceEndpoints (r:0 w:25) fn create_ecdsa_keys(n: u32, c: u32, ) -> Weight { - (275_184_000_u64) - // Standard Error: 62_000 - .saturating_add((2_307_000_u64).saturating_mul(n as Weight)) - // Standard Error: 19_000 - .saturating_add((9_953_000_u64).saturating_mul(c as Weight)) - .saturating_add(T::DbWeight::get().reads(4_u64)) - .saturating_add(T::DbWeight::get().writes(4_u64)) - .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(c as Weight))) - } + (128_949_000 as Weight) + // Standard Error: 21_000 + .saturating_add((1_495_000 as Weight).saturating_mul(n as Weight)) + // Standard Error: 8_000 + .saturating_add((5_559_000 as Weight).saturating_mul(c as Weight)) + .saturating_add(T::DbWeight::get().reads(4 as Weight)) + .saturating_add(T::DbWeight::get().writes(4 as Weight)) + .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(c as Weight))) + } + // Storage: Did DidEndpointsCount (r:1 w:1) + // Storage: Did Did (r:1 w:1) + // Storage: Did DidBlacklist (r:0 w:1) + // Storage: Did ServiceEndpoints (r:0 w:1) fn delete(c: u32, ) -> Weight { - (40_970_000_u64) + (33_940_000 as Weight) // Standard Error: 4_000 - .saturating_add((1_039_000_u64).saturating_mul(c as Weight)) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) - .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(c as Weight))) - } + .saturating_add((1_128_000 as Weight).saturating_mul(c as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) + .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(c as Weight))) + } + // Storage: Did Did (r:1 w:1) + // Storage: Did DidEndpointsCount (r:1 w:1) + // Storage: Did DidBlacklist (r:0 w:1) + // Storage: Did ServiceEndpoints (r:0 w:1) fn reclaim_deposit(c: u32, ) -> Weight { - (45_659_000_u64) - // Standard Error: 5_000 - .saturating_add((1_037_000_u64).saturating_mul(c as Weight)) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) - .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(c as Weight))) + (37_019_000 as Weight) + // Standard Error: 4_000 + .saturating_add((1_119_000 as Weight).saturating_mul(c as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) + .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(c as Weight))) } + // Storage: Did Did (r:1 w:1) fn submit_did_call_ed25519_key() -> Weight { - (85_657_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (79_603_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn submit_did_call_sr25519_key() -> Weight { - (88_121_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (82_379_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn submit_did_call_ecdsa_key() -> Weight { - (203_208_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (71_713_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn set_ed25519_authentication_key() -> Weight { - (47_523_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (35_722_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn set_sr25519_authentication_key() -> Weight { - (47_139_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (35_743_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn set_ecdsa_authentication_key() -> Weight { - (47_445_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (35_735_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn set_ed25519_delegation_key() -> Weight { - (47_109_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (35_251_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn set_sr25519_delegation_key() -> Weight { - (47_153_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (35_317_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn set_ecdsa_delegation_key() -> Weight { - (47_180_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (35_687_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn remove_ed25519_delegation_key() -> Weight { - (43_349_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (32_882_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn remove_sr25519_delegation_key() -> Weight { - (43_782_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (32_918_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn remove_ecdsa_delegation_key() -> Weight { - (43_469_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (32_664_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn set_ed25519_attestation_key() -> Weight { - (47_008_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (35_499_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn set_sr25519_attestation_key() -> Weight { - (46_791_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (35_531_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn set_ecdsa_attestation_key() -> Weight { - (46_654_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (35_185_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn remove_ed25519_attestation_key() -> Weight { - (43_206_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (32_934_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn remove_sr25519_attestation_key() -> Weight { - (43_339_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (33_312_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn remove_ecdsa_attestation_key() -> Weight { - (43_217_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (33_179_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn add_ed25519_key_agreement_key() -> Weight { - (45_677_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (35_159_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn add_sr25519_key_agreement_key() -> Weight { - (45_880_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (35_051_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn add_ecdsa_key_agreement_key() -> Weight { - (45_968_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (34_842_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn remove_ed25519_key_agreement_key() -> Weight { - (43_709_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (33_369_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn remove_sr25519_key_agreement_key() -> Weight { - (43_659_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (33_497_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn remove_ecdsa_key_agreement_key() -> Weight { - (43_747_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (33_403_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:0) + // Storage: Did DidEndpointsCount (r:1 w:1) + // Storage: Did ServiceEndpoints (r:1 w:1) fn add_service_endpoint() -> Weight { - (43_232_000_u64) - .saturating_add(T::DbWeight::get().reads(3_u64)) - .saturating_add(T::DbWeight::get().writes(2_u64)) + (37_336_000 as Weight) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) } + // Storage: Did ServiceEndpoints (r:1 w:1) + // Storage: Did DidEndpointsCount (r:1 w:1) fn remove_service_endpoint() -> Weight { - (34_532_000_u64) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().writes(2_u64)) + (31_417_000 as Weight) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) } + // Storage: Did Did (r:1 w:0) fn signature_verification_sr25519(l: u32, ) -> Weight { - (25_823_000_u64) + (66_480_000 as Weight) // Standard Error: 0 - .saturating_add((4_000_u64).saturating_mul(l as Weight)) - .saturating_add(T::DbWeight::get().reads(1_u64)) + .saturating_add((4_000 as Weight).saturating_mul(l as Weight)) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) } + // Storage: Did Did (r:1 w:0) fn signature_verification_ed25519(l: u32, ) -> Weight { - (23_103_000_u64) + (63_463_000 as Weight) // Standard Error: 0 - .saturating_add((2_000_u64).saturating_mul(l as Weight)) - .saturating_add(T::DbWeight::get().reads(1_u64)) + .saturating_add((2_000 as Weight).saturating_mul(l as Weight)) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) } + // Storage: Did Did (r:1 w:0) fn signature_verification_ecdsa(l: u32, ) -> Weight { - (141_265_000_u64) + (56_006_000 as Weight) // Standard Error: 0 - .saturating_add((1_000_u64).saturating_mul(l as Weight)) - .saturating_add(T::DbWeight::get().reads(1_u64)) + .saturating_add((1_000 as Weight).saturating_mul(l as Weight)) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) } } diff --git a/runtimes/peregrine/src/weights/frame_system.rs b/runtimes/peregrine/src/weights/frame_system.rs index bb6ccadac..4b33a91c0 100644 --- a/runtimes/peregrine/src/weights/frame_system.rs +++ b/runtimes/peregrine/src/weights/frame_system.rs @@ -18,64 +18,70 @@ //! Autogenerated weights for frame_system //! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 3.0.0 -//! DATE: 2021-06-10, STEPS: {{cmd.steps}}\, REPEAT: {{cmd.repeat}}\, LOW RANGE: -//! {{cmd.lowest_range_values}}\, HIGH RANGE: {{cmd.highest_range_values}}\ -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: -//! Some("spiritnet-dev"), DB CACHE: 128 +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 1024 // Executed Command: -// /home/willi/mashnet-node/target/release/kilt-parachain +// ./target/release/kilt-parachain // benchmark -// --chain=spiritnet-dev +// pallet +// --chain=dev +// --steps=1 +// --repeat=20 +// --pallet=frame-system +// --extrinsic=* // --execution=wasm -// --wasm-execution=Compiled +// --wasm-execution=compiled // --heap-pages=4096 -// --extrinsic=* -// --pallet=frame_system -// --steps=50 -// --repeat=20 -// --output -// ../../runtimes/spiritnet/src/weights/frame_system.rs -// --template -// ../../.maintain/weight-template.hbs +// --output=./runtimes/peregrine/src/weights/frame_system.rs +// --template=.maintain/runtime-weight-template.hbs +#![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] +#![allow(clippy::unnecessary_cast)] use frame_support::{traits::Get, weights::Weight}; use sp_std::marker::PhantomData; -/// Weights for frame_system using the recommended hardware. +/// Weight functions for `frame_system`. pub struct WeightInfo(PhantomData); impl frame_system::WeightInfo for WeightInfo { - fn remark(_b: u32) -> Weight { - (1_416_000_u64) + fn remark(_b: u32, ) -> Weight { + (926_000 as Weight) } - fn remark_with_event(b: u32) -> Weight { - (0_u64) + fn remark_with_event(b: u32, ) -> Weight { + (13_870_000 as Weight) // Standard Error: 0 - .saturating_add((1_000_u64).saturating_mul(b as Weight)) + .saturating_add((2_000 as Weight).saturating_mul(b as Weight)) } + // Storage: System Digest (r:1 w:1) + // Storage: unknown [0x3a686561707061676573] (r:0 w:1) fn set_heap_pages() -> Weight { - (2_505_000_u64).saturating_add(T::DbWeight::get().writes(1_u64)) + (4_795_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) } - fn set_storage(i: u32) -> Weight { - (0_u64) - // Standard Error: 1_000 - .saturating_add((867_000_u64).saturating_mul(i as Weight)) - .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(i as Weight))) + // Storage: Skipped Metadata (r:0 w:0) + fn set_storage(i: u32, ) -> Weight { + (1_464_000 as Weight) + // Standard Error: 0 + .saturating_add((613_000 as Weight).saturating_mul(i as Weight)) + .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(i as Weight))) } - fn kill_storage(i: u32) -> Weight { - (0_u64) - // Standard Error: 1_000 - .saturating_add((647_000_u64).saturating_mul(i as Weight)) - .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(i as Weight))) + // Storage: Skipped Metadata (r:0 w:0) + fn kill_storage(i: u32, ) -> Weight { + (1_668_000 as Weight) + // Standard Error: 0 + .saturating_add((449_000 as Weight).saturating_mul(i as Weight)) + .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(i as Weight))) } - fn kill_prefix(p: u32) -> Weight { - (26_556_000_u64) - // Standard Error: 6_000 - .saturating_add((1_214_000_u64).saturating_mul(p as Weight)) - .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(p as Weight))) + // Storage: Skipped Metadata (r:0 w:0) + fn kill_prefix(p: u32, ) -> Weight { + (4_618_000 as Weight) + // Standard Error: 3_000 + .saturating_add((841_000 as Weight).saturating_mul(p as Weight)) + .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(p as Weight))) } } diff --git a/runtimes/peregrine/src/weights/kilt_launch.rs b/runtimes/peregrine/src/weights/kilt_launch.rs deleted file mode 100644 index 65de27fad..000000000 --- a/runtimes/peregrine/src/weights/kilt_launch.rs +++ /dev/null @@ -1,149 +0,0 @@ -// KILT Blockchain – https://botlabs.org -// Copyright (C) 2019-2022 BOTLabs GmbH - -// The KILT Blockchain is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. - -// The KILT Blockchain is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. - -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -// If you feel like getting in touch with us, you can do so at info@botlabs.org - -//! Autogenerated weights for kilt_launch -//! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2021-10-29, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 128 - -// Executed Command: -// target/release/kilt-parachain -// benchmark -// --chain=dev -// --steps=50 -// --repeat=20 -// --pallet=kilt-launch -// --extrinsic=* -// --execution=wasm -// --wasm-execution=compiled -// --heap-pages=4096 -// --output=./runtimes/peregrine/src/weights/kilt_launch.rs -// --template=.maintain/runtime-weight-template.hbs - - -#![cfg_attr(rustfmt, rustfmt_skip)] -#![allow(unused_parens)] -#![allow(unused_imports)] -#![allow(clippy::unnecessary_cast)] - -use frame_support::{traits::Get, weights::Weight}; -use sp_std::marker::PhantomData; - -/// Weight functions for `kilt_launch`. -pub struct WeightInfo(PhantomData); -impl kilt_launch::WeightInfo for WeightInfo { - // Storage: KiltLaunch TransferAccount (r:0 w:1) - fn change_transfer_account() -> Weight { - (3_005_000 as Weight) - .saturating_add(T::DbWeight::get().writes(1 as Weight)) - } - // Storage: KiltLaunch UnlockingAt (r:1 w:1) - // Storage: Balances Locks (r:1 w:1) - // Storage: System Account (r:1 w:1) - // Storage: KiltLaunch BalanceLocks (r:0 w:1) - fn force_unlock(n: u32, ) -> Weight { - (29_019_000 as Weight) - // Standard Error: 23_000 - .saturating_add((27_620_000 as Weight).saturating_mul(n as Weight)) - .saturating_add(T::DbWeight::get().reads(1 as Weight)) - .saturating_add(T::DbWeight::get().reads((2 as Weight).saturating_mul(n as Weight))) - .saturating_add(T::DbWeight::get().writes(1 as Weight)) - .saturating_add(T::DbWeight::get().writes((3 as Weight).saturating_mul(n as Weight))) - } - // Storage: System Account (r:2 w:2) - // Storage: KiltLaunch BalanceLocks (r:2 w:2) - // Storage: Balances Locks (r:2 w:2) - fn locked_transfer() -> Weight { - (134_504_000 as Weight) - .saturating_add(T::DbWeight::get().reads(6 as Weight)) - .saturating_add(T::DbWeight::get().writes(6 as Weight)) - } - // Storage: KiltLaunch TransferAccount (r:1 w:0) - // Storage: KiltLaunch UnownedAccount (r:1 w:1) - // Storage: Balances Locks (r:2 w:1) - // Storage: System Account (r:2 w:2) - // Storage: Vesting Vesting (r:2 w:2) - // Storage: KiltLaunch BalanceLocks (r:1 w:0) - fn migrate_genesis_account_vesting() -> Weight { - (151_286_000 as Weight) - .saturating_add(T::DbWeight::get().reads(9 as Weight)) - .saturating_add(T::DbWeight::get().writes(6 as Weight)) - } - // Storage: KiltLaunch TransferAccount (r:1 w:0) - // Storage: KiltLaunch UnownedAccount (r:1 w:1) - // Storage: Balances Locks (r:2 w:1) - // Storage: System Account (r:2 w:2) - // Storage: Vesting Vesting (r:1 w:0) - // Storage: KiltLaunch BalanceLocks (r:2 w:2) - // Storage: KiltLaunch UnlockingAt (r:1 w:1) - fn migrate_genesis_account_locking() -> Weight { - (154_814_000 as Weight) - .saturating_add(T::DbWeight::get().reads(10 as Weight)) - .saturating_add(T::DbWeight::get().writes(7 as Weight)) - } - // Storage: KiltLaunch TransferAccount (r:1 w:0) - // Storage: KiltLaunch UnownedAccount (r:1 w:1) - // Storage: Balances Locks (r:2 w:1) - // Storage: System Account (r:2 w:2) - // Storage: Vesting Vesting (r:2 w:2) - // Storage: KiltLaunch BalanceLocks (r:1 w:0) - fn migrate_multiple_genesis_accounts_vesting(n: u32, ) -> Weight { - (53_435_000 as Weight) - // Standard Error: 50_000 - .saturating_add((97_798_000 as Weight).saturating_mul(n as Weight)) - .saturating_add(T::DbWeight::get().reads(4 as Weight)) - .saturating_add(T::DbWeight::get().reads((5 as Weight).saturating_mul(n as Weight))) - .saturating_add(T::DbWeight::get().writes(3 as Weight)) - .saturating_add(T::DbWeight::get().writes((3 as Weight).saturating_mul(n as Weight))) - } - // Storage: KiltLaunch TransferAccount (r:1 w:0) - // Storage: KiltLaunch UnownedAccount (r:1 w:1) - // Storage: Balances Locks (r:2 w:1) - // Storage: System Account (r:2 w:2) - // Storage: Vesting Vesting (r:1 w:0) - // Storage: KiltLaunch BalanceLocks (r:2 w:2) - // Storage: KiltLaunch UnlockingAt (r:1 w:1) - fn migrate_multiple_genesis_accounts_locking(n: u32, ) -> Weight { - (60_289_000 as Weight) - // Standard Error: 51_000 - .saturating_add((95_743_000 as Weight).saturating_mul(n as Weight)) - .saturating_add(T::DbWeight::get().reads(5 as Weight)) - .saturating_add(T::DbWeight::get().reads((5 as Weight).saturating_mul(n as Weight))) - .saturating_add(T::DbWeight::get().writes(4 as Weight)) - .saturating_add(T::DbWeight::get().writes((3 as Weight).saturating_mul(n as Weight))) - } - // Storage: KiltLaunch UnlockingAt (r:1 w:1) - // Storage: Balances Locks (r:1 w:1) - // Storage: System Account (r:1 w:1) - // Storage: KiltLaunch BalanceLocks (r:0 w:1) - fn on_initialize_unlock(n: u32, ) -> Weight { - (22_733_000 as Weight) - // Standard Error: 10_000 - .saturating_add((27_719_000 as Weight).saturating_mul(n as Weight)) - .saturating_add(T::DbWeight::get().reads(1 as Weight)) - .saturating_add(T::DbWeight::get().reads((2 as Weight).saturating_mul(n as Weight))) - .saturating_add(T::DbWeight::get().writes(1 as Weight)) - .saturating_add(T::DbWeight::get().writes((3 as Weight).saturating_mul(n as Weight))) - } - // Storage: KiltLaunch UnlockingAt (r:1 w:0) - fn on_initialize_no_action() -> Weight { - (4_445_000 as Weight) - .saturating_add(T::DbWeight::get().reads(1 as Weight)) - } -} diff --git a/runtimes/peregrine/src/weights/mod.rs b/runtimes/peregrine/src/weights/mod.rs index 112cd38e0..29b65e432 100644 --- a/runtimes/peregrine/src/weights/mod.rs +++ b/runtimes/peregrine/src/weights/mod.rs @@ -21,7 +21,6 @@ pub mod ctype; pub mod delegation; pub mod did; pub mod frame_system; -pub mod kilt_launch; pub mod pallet_balances; pub mod pallet_collective; pub mod pallet_democracy; @@ -34,6 +33,7 @@ pub mod pallet_proxy; pub mod pallet_scheduler; pub mod pallet_session; pub mod pallet_timestamp; +pub mod pallet_tips; pub mod pallet_treasury; pub mod pallet_utility; pub mod pallet_vesting; diff --git a/runtimes/peregrine/src/weights/pallet_balances.rs b/runtimes/peregrine/src/weights/pallet_balances.rs index 4d87bc970..85fcd52fc 100644 --- a/runtimes/peregrine/src/weights/pallet_balances.rs +++ b/runtimes/peregrine/src/weights/pallet_balances.rs @@ -19,14 +19,15 @@ //! Autogenerated weights for pallet_balances //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2021-10-22, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 128 +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 1024 // Executed Command: -// target/release/kilt-parachain +// ./target/release/kilt-parachain // benchmark +// pallet // --chain=dev -// --steps=50 +// --steps=1 // --repeat=20 // --pallet=pallet-balances // --extrinsic=* @@ -36,50 +37,57 @@ // --output=./runtimes/peregrine/src/weights/pallet_balances.rs // --template=.maintain/runtime-weight-template.hbs - #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] +#![allow(clippy::unnecessary_cast)] use frame_support::{traits::Get, weights::Weight}; use sp_std::marker::PhantomData; -/// Weights for pallet_balances using the recommended hardware. +/// Weight functions for `pallet_balances`. pub struct WeightInfo(PhantomData); impl pallet_balances::WeightInfo for WeightInfo { + // Storage: System Account (r:2 w:2) fn transfer() -> Weight { - (75_604_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (70_833_000 as Weight) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) } + // Storage: System Account (r:1 w:1) fn transfer_keep_alive() -> Weight { - (57_937_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (43_906_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: System Account (r:1 w:1) fn set_balance_creating() -> Weight { - (31_335_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (27_540_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: System Account (r:1 w:1) fn set_balance_killing() -> Weight { - (38_023_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (32_308_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: System Account (r:3 w:3) fn force_transfer() -> Weight { - (76_467_000_u64) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().writes(2_u64)) + (68_589_000 as Weight) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } + // Storage: System Account (r:1 w:1) fn transfer_all() -> Weight { - (70_836_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (52_624_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: System Account (r:1 w:1) fn force_unreserve() -> Weight { - (29_228_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (25_623_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } } diff --git a/runtimes/peregrine/src/weights/pallet_collective.rs b/runtimes/peregrine/src/weights/pallet_collective.rs index 2ea10ff0a..795130a4b 100644 --- a/runtimes/peregrine/src/weights/pallet_collective.rs +++ b/runtimes/peregrine/src/weights/pallet_collective.rs @@ -18,133 +18,163 @@ //! Autogenerated weights for pallet_collective //! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 3.0.0 -//! DATE: 2021-06-17, STEPS: `[50, ]`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 128 +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 1024 // Executed Command: // ./target/release/kilt-parachain // benchmark -// --chain -// dev -// --heap-pages -// 4096 -// --extrinsic -// * -// --pallet -// pallet_collective -// --steps -// 50 -// --repeat -// 20 -// --execution -// wasm -// --wasm-execution -// Compiled -// --output -// runtimes/parachain/src/weights/pallet_collective.rs -// --template -// .maintain/runtime-weight-template.hbs - +// pallet +// --chain=dev +// --steps=1 +// --repeat=20 +// --pallet=pallet-collective +// --extrinsic=* +// --execution=wasm +// --wasm-execution=compiled +// --heap-pages=4096 +// --output=./runtimes/peregrine/src/weights/pallet_collective.rs +// --template=.maintain/runtime-weight-template.hbs #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] +#![allow(clippy::unnecessary_cast)] use frame_support::{traits::Get, weights::Weight}; use sp_std::marker::PhantomData; -/// Weights for pallet_collective using the recommended hardware. +/// Weight functions for `pallet_collective`. pub struct WeightInfo(PhantomData); impl pallet_collective::WeightInfo for WeightInfo { - fn set_members(m: u32, _n: u32, p: u32, ) -> Weight { - 0_u64 - // Standard Error: 9_000 - .saturating_add(22_047_000_u64.saturating_mul(m as Weight)) - // Standard Error: 9_000 - .saturating_add(30_782_000_u64.saturating_mul(p as Weight)) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().reads(1_u64.saturating_mul(p as Weight))) - .saturating_add(T::DbWeight::get().writes(2_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64.saturating_mul(p as Weight))) + // Storage: Council Members (r:1 w:1) + // Storage: Council Proposals (r:1 w:0) + // Storage: Council Voting (r:100 w:100) + // Storage: Council Prime (r:0 w:1) + fn set_members(m: u32, n: u32, p: u32, ) -> Weight { + (0 as Weight) + // Standard Error: 20_000 + .saturating_add((11_799_000 as Weight).saturating_mul(m as Weight)) + // Standard Error: 20_000 + .saturating_add((167_000 as Weight).saturating_mul(n as Weight)) + // Standard Error: 20_000 + .saturating_add((16_773_000 as Weight).saturating_mul(p as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(p as Weight))) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) + .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(p as Weight))) } + // Storage: Council Members (r:1 w:0) fn execute(b: u32, m: u32, ) -> Weight { - 32_788_000_u64 + (19_437_000 as Weight) // Standard Error: 0 - .saturating_add(3_000_u64.saturating_mul(b as Weight)) + .saturating_add((2_000 as Weight).saturating_mul(b as Weight)) // Standard Error: 0 - .saturating_add(125_000_u64.saturating_mul(m as Weight)) - .saturating_add(T::DbWeight::get().reads(1_u64)) + .saturating_add((40_000 as Weight).saturating_mul(m as Weight)) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) } + // Storage: Council Members (r:1 w:0) + // Storage: Council ProposalOf (r:1 w:0) fn propose_execute(b: u32, m: u32, ) -> Weight { - 39_555_000_u64 + (23_299_000 as Weight) // Standard Error: 0 - .saturating_add(4_000_u64.saturating_mul(b as Weight)) + .saturating_add((2_000 as Weight).saturating_mul(b as Weight)) // Standard Error: 0 - .saturating_add(253_000_u64.saturating_mul(m as Weight)) - .saturating_add(T::DbWeight::get().reads(2_u64)) + .saturating_add((68_000 as Weight).saturating_mul(m as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) } + // Storage: Council Members (r:1 w:0) + // Storage: Council ProposalOf (r:1 w:1) + // Storage: Council Proposals (r:1 w:1) + // Storage: Council ProposalCount (r:1 w:1) + // Storage: Council Voting (r:0 w:1) fn propose_proposed(b: u32, m: u32, p: u32, ) -> Weight { - 63_419_000_u64 + (34_869_000 as Weight) // Standard Error: 0 - .saturating_add(8_000_u64.saturating_mul(b as Weight)) - // Standard Error: 1_000 - .saturating_add(127_000_u64.saturating_mul(m as Weight)) - // Standard Error: 1_000 - .saturating_add(673_000_u64.saturating_mul(p as Weight)) - .saturating_add(T::DbWeight::get().reads(4_u64)) - .saturating_add(T::DbWeight::get().writes(4_u64)) + .saturating_add((3_000 as Weight).saturating_mul(b as Weight)) + // Standard Error: 0 + .saturating_add((21_000 as Weight).saturating_mul(m as Weight)) + // Standard Error: 0 + .saturating_add((292_000 as Weight).saturating_mul(p as Weight)) + .saturating_add(T::DbWeight::get().reads(4 as Weight)) + .saturating_add(T::DbWeight::get().writes(4 as Weight)) } + // Storage: Council Members (r:1 w:0) + // Storage: Council Voting (r:1 w:1) fn vote(m: u32, ) -> Weight { - 60_438_000_u64 - // Standard Error: 4_000 - .saturating_add(195_000_u64.saturating_mul(m as Weight)) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (39_159_000 as Weight) + // Standard Error: 1_000 + .saturating_add((77_000 as Weight).saturating_mul(m as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Council Voting (r:1 w:1) + // Storage: Council Members (r:1 w:0) + // Storage: Council Proposals (r:1 w:1) + // Storage: Council ProposalOf (r:0 w:1) fn close_early_disapproved(m: u32, p: u32, ) -> Weight { - 63_084_000_u64 + (35_399_000 as Weight) + // Standard Error: 0 + .saturating_add((62_000 as Weight).saturating_mul(m as Weight)) + // Standard Error: 0 + .saturating_add((268_000 as Weight).saturating_mul(p as Weight)) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) + } + // Storage: Council Voting (r:1 w:1) + // Storage: Council Members (r:1 w:0) + // Storage: Council ProposalOf (r:1 w:1) + // Storage: Council Proposals (r:1 w:1) + fn close_early_approved(b: u32, m: u32, p: u32, ) -> Weight { + (46_262_000 as Weight) + // Standard Error: 0 + .saturating_add((2_000 as Weight).saturating_mul(b as Weight)) // Standard Error: 1_000 - .saturating_add(259_000_u64.saturating_mul(m as Weight)) + .saturating_add((58_000 as Weight).saturating_mul(m as Weight)) // Standard Error: 1_000 - .saturating_add(638_000_u64.saturating_mul(p as Weight)) - .saturating_add(T::DbWeight::get().reads(3_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) - } - fn close_early_approved(_b: u32, m: u32, p: u32, ) -> Weight { - 97_262_000_u64 - // Standard Error: 2_000 - .saturating_add(230_000_u64.saturating_mul(m as Weight)) - // Standard Error: 2_000 - .saturating_add(600_000_u64.saturating_mul(p as Weight)) - .saturating_add(T::DbWeight::get().reads(4_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + .saturating_add((286_000 as Weight).saturating_mul(p as Weight)) + .saturating_add(T::DbWeight::get().reads(4 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } + // Storage: Council Voting (r:1 w:1) + // Storage: Council Members (r:1 w:0) + // Storage: Council Prime (r:1 w:0) + // Storage: Council Proposals (r:1 w:1) + // Storage: Council ProposalOf (r:0 w:1) fn close_disapproved(m: u32, p: u32, ) -> Weight { - 69_824_000_u64 + (39_459_000 as Weight) // Standard Error: 0 - .saturating_add(267_000_u64.saturating_mul(m as Weight)) + .saturating_add((64_000 as Weight).saturating_mul(m as Weight)) // Standard Error: 0 - .saturating_add(646_000_u64.saturating_mul(p as Weight)) - .saturating_add(T::DbWeight::get().reads(4_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + .saturating_add((263_000 as Weight).saturating_mul(p as Weight)) + .saturating_add(T::DbWeight::get().reads(4 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } + // Storage: Council Voting (r:1 w:1) + // Storage: Council Members (r:1 w:0) + // Storage: Council Prime (r:1 w:0) + // Storage: Council ProposalOf (r:1 w:1) + // Storage: Council Proposals (r:1 w:1) fn close_approved(b: u32, m: u32, p: u32, ) -> Weight { - 93_197_000_u64 + (50_332_000 as Weight) // Standard Error: 0 - .saturating_add(5_000_u64.saturating_mul(b as Weight)) - // Standard Error: 1_000 - .saturating_add(263_000_u64.saturating_mul(m as Weight)) - // Standard Error: 1_000 - .saturating_add(656_000_u64.saturating_mul(p as Weight)) - .saturating_add(T::DbWeight::get().reads(5_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + .saturating_add((2_000 as Weight).saturating_mul(b as Weight)) + // Standard Error: 0 + .saturating_add((53_000 as Weight).saturating_mul(m as Weight)) + // Standard Error: 0 + .saturating_add((289_000 as Weight).saturating_mul(p as Weight)) + .saturating_add(T::DbWeight::get().reads(5 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } + // Storage: Council Proposals (r:1 w:1) + // Storage: Council Voting (r:0 w:1) + // Storage: Council ProposalOf (r:0 w:1) fn disapprove_proposal(p: u32, ) -> Weight { - 38_898_000_u64 - // Standard Error: 1_000 - .saturating_add(651_000_u64.saturating_mul(p as Weight)) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + (21_104_000 as Weight) + // Standard Error: 0 + .saturating_add((264_000 as Weight).saturating_mul(p as Weight)) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } } diff --git a/runtimes/peregrine/src/weights/pallet_democracy.rs b/runtimes/peregrine/src/weights/pallet_democracy.rs index 228a2f1e7..f86017df3 100644 --- a/runtimes/peregrine/src/weights/pallet_democracy.rs +++ b/runtimes/peregrine/src/weights/pallet_democracy.rs @@ -19,198 +19,266 @@ //! Autogenerated weights for pallet_democracy //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2021-10-16, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 128 +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 1024 // Executed Command: -// target/release/kilt-parachain +// ./target/release/kilt-parachain // benchmark -// --chain=spiritnet-dev -// --steps=50 +// pallet +// --chain=dev +// --steps=1 // --repeat=20 -// --pallet=pallet_democracy +// --pallet=pallet-democracy // --extrinsic=* // --execution=wasm // --wasm-execution=compiled // --heap-pages=4096 -// --output=./runtimes/spiritnet/src/weights/pallet_democracy.rs +// --output=./runtimes/peregrine/src/weights/pallet_democracy.rs // --template=.maintain/runtime-weight-template.hbs - #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] +#![allow(clippy::unnecessary_cast)] use frame_support::{traits::Get, weights::Weight}; use sp_std::marker::PhantomData; -// TODO: Benchbot - /// Weight functions for `pallet_democracy`. pub struct WeightInfo(PhantomData); impl pallet_democracy::WeightInfo for WeightInfo { + // Storage: Democracy PublicPropCount (r:1 w:1) + // Storage: Democracy PublicProps (r:1 w:1) + // Storage: Democracy Blacklist (r:1 w:0) + // Storage: Democracy DepositOf (r:0 w:1) fn propose() -> Weight { - (58_488_000_u64) - .saturating_add(T::DbWeight::get().reads(3_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + (64_086_000 as Weight) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } - fn second(s: u32) -> Weight { - (39_011_000_u64) + // Storage: Democracy DepositOf (r:1 w:1) + fn second(s: u32, ) -> Weight { + (38_769_000 as Weight) // Standard Error: 0 - .saturating_add((157_000_u64).saturating_mul(s as Weight)) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + .saturating_add((206_000 as Weight).saturating_mul(s as Weight)) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } - fn vote_new(r: u32) -> Weight { - (43_998_000_u64) - // Standard Error: 0 - .saturating_add((211_000_u64).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(3_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + // Storage: Democracy ReferendumInfoOf (r:1 w:1) + // Storage: Democracy VotingOf (r:1 w:1) + // Storage: Balances Locks (r:1 w:1) + fn vote_new(r: u32, ) -> Weight { + (49_982_000 as Weight) + // Standard Error: 2_000 + .saturating_add((220_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } - fn vote_existing(r: u32) -> Weight { - (44_219_000_u64) + // Storage: Democracy ReferendumInfoOf (r:1 w:1) + // Storage: Democracy VotingOf (r:1 w:1) + // Storage: Balances Locks (r:1 w:1) + fn vote_existing(r: u32, ) -> Weight { + (49_366_000 as Weight) // Standard Error: 0 - .saturating_add((206_000_u64).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(3_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + .saturating_add((224_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } + // Storage: Democracy ReferendumInfoOf (r:1 w:1) + // Storage: Democracy Cancellations (r:1 w:1) fn emergency_cancel() -> Weight { - (28_974_000_u64) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().writes(2_u64)) - } - fn blacklist(p: u32) -> Weight { - (77_299_000_u64) - // Standard Error: 4_000 - .saturating_add((541_000_u64).saturating_mul(p as Weight)) - .saturating_add(T::DbWeight::get().reads(5_u64)) - .saturating_add(T::DbWeight::get().writes(6_u64)) - } - fn external_propose(v: u32) -> Weight { - (13_334_000_u64) + (23_906_000 as Weight) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) + } + // Storage: Democracy PublicProps (r:1 w:1) + // Storage: Democracy NextExternal (r:1 w:1) + // Storage: Democracy ReferendumInfoOf (r:1 w:1) + // Storage: Democracy Blacklist (r:0 w:1) + // Storage: Democracy DepositOf (r:1 w:1) + // Storage: System Account (r:2 w:2) + fn blacklist(p: u32, ) -> Weight { + (34_381_000 as Weight) // Standard Error: 0 - .saturating_add((80_000_u64).saturating_mul(v as Weight)) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + .saturating_add((748_000 as Weight).saturating_mul(p as Weight)) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(4 as Weight)) } + // Storage: Democracy NextExternal (r:1 w:1) + // Storage: Democracy Blacklist (r:1 w:0) + fn external_propose(v: u32, ) -> Weight { + (11_903_000 as Weight) + // Standard Error: 0 + .saturating_add((31_000 as Weight).saturating_mul(v as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) + } + // Storage: Democracy NextExternal (r:0 w:1) fn external_propose_majority() -> Weight { - (2_650_000_u64).saturating_add(T::DbWeight::get().writes(1_u64)) + (2_218_000 as Weight) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Democracy NextExternal (r:0 w:1) fn external_propose_default() -> Weight { - (2_667_000_u64).saturating_add(T::DbWeight::get().writes(1_u64)) + (2_178_000 as Weight) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Democracy NextExternal (r:1 w:1) + // Storage: Democracy ReferendumCount (r:1 w:1) + // Storage: Democracy ReferendumInfoOf (r:0 w:1) fn fast_track() -> Weight { - (27_908_000_u64) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + (25_513_000 as Weight) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } - fn veto_external(v: u32) -> Weight { - (28_446_000_u64) + // Storage: Democracy NextExternal (r:1 w:1) + // Storage: Democracy Blacklist (r:1 w:1) + fn veto_external(v: u32, ) -> Weight { + (25_342_000 as Weight) // Standard Error: 0 - .saturating_add((134_000_u64).saturating_mul(v as Weight)) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().writes(2_u64)) + .saturating_add((61_000 as Weight).saturating_mul(v as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) } - fn cancel_proposal(p: u32) -> Weight { - (51_004_000_u64) - // Standard Error: 0 - .saturating_add((512_000_u64).saturating_mul(p as Weight)) - .saturating_add(T::DbWeight::get().reads(3_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + // Storage: Democracy PublicProps (r:1 w:1) + // Storage: Democracy DepositOf (r:1 w:1) + // Storage: System Account (r:2 w:2) + fn cancel_proposal(p: u32, ) -> Weight { + (53_486_000 as Weight) + // Standard Error: 1_000 + .saturating_add((364_000 as Weight).saturating_mul(p as Weight)) + .saturating_add(T::DbWeight::get().reads(4 as Weight)) + .saturating_add(T::DbWeight::get().writes(4 as Weight)) } + // Storage: Democracy ReferendumInfoOf (r:0 w:1) fn cancel_referendum() -> Weight { - (17_377_000_u64).saturating_add(T::DbWeight::get().writes(1_u64)) - } - fn cancel_queued(r: u32) -> Weight { - (33_882_000_u64) - // Standard Error: 15_000 - .saturating_add((6_070_000_u64).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().writes(2_u64)) - } - fn on_initialize_base(r: u32) -> Weight { - (7_295_000_u64) - // Standard Error: 4_000 - .saturating_add((5_093_000_u64).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(5_u64)) - .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(r as Weight))) - } - fn on_initialize_base_with_launch_period(r: u32) -> Weight { - (7_295_000_u64) - // Standard Error: 4_000 - .saturating_add((5_093_000_u64).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(5_u64)) - .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(r as Weight))) - } - fn delegate(r: u32) -> Weight { - (54_128_000_u64) - // Standard Error: 5_000 - .saturating_add((7_209_000_u64).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(4_u64)) - .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(r as Weight))) - .saturating_add(T::DbWeight::get().writes(4_u64)) - .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(r as Weight))) - } - fn undelegate(r: u32) -> Weight { - (23_613_000_u64) - // Standard Error: 4_000 - .saturating_add((7_196_000_u64).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(r as Weight))) - .saturating_add(T::DbWeight::get().writes(2_u64)) - .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(r as Weight))) + (15_712_000 as Weight) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) + } + // Storage: Scheduler Lookup (r:1 w:1) + // Storage: Scheduler Agenda (r:1 w:1) + fn cancel_queued(r: u32, ) -> Weight { + (26_060_000 as Weight) + // Standard Error: 0 + .saturating_add((894_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) + } + // Storage: Democracy LowestUnbaked (r:1 w:1) + // Storage: Democracy ReferendumCount (r:1 w:0) + // Storage: Democracy ReferendumInfoOf (r:1 w:0) + fn on_initialize_base(r: u32, ) -> Weight { + (10_480_000 as Weight) + // Standard Error: 11_000 + .saturating_add((4_516_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(r as Weight))) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) + } + // Storage: Democracy LowestUnbaked (r:1 w:1) + // Storage: Democracy ReferendumCount (r:1 w:0) + // Storage: Democracy LastTabledWasExternal (r:1 w:0) + // Storage: Democracy NextExternal (r:1 w:0) + // Storage: Democracy PublicProps (r:1 w:0) + // Storage: Democracy ReferendumInfoOf (r:1 w:0) + fn on_initialize_base_with_launch_period(r: u32, ) -> Weight { + (17_021_000 as Weight) + // Standard Error: 7_000 + .saturating_add((4_496_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(5 as Weight)) + .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(r as Weight))) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) + } + // Storage: Democracy VotingOf (r:3 w:3) + // Storage: Democracy ReferendumInfoOf (r:1 w:1) + // Storage: Balances Locks (r:1 w:1) + fn delegate(r: u32, ) -> Weight { + (56_025_000 as Weight) + // Standard Error: 14_000 + .saturating_add((6_054_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(4 as Weight)) + .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(r as Weight))) + .saturating_add(T::DbWeight::get().writes(4 as Weight)) + .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(r as Weight))) + } + // Storage: Democracy VotingOf (r:2 w:2) + // Storage: Democracy ReferendumInfoOf (r:1 w:1) + fn undelegate(r: u32, ) -> Weight { + (29_138_000 as Weight) + // Standard Error: 18_000 + .saturating_add((5_963_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(r as Weight))) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) + .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(r as Weight))) } + // Storage: Democracy PublicProps (r:0 w:1) fn clear_public_proposals() -> Weight { - (2_607_000_u64).saturating_add(T::DbWeight::get().writes(1_u64)) + (2_689_000 as Weight) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } - fn note_preimage(b: u32) -> Weight { - (42_847_000_u64) + // Storage: Democracy Preimages (r:1 w:1) + fn note_preimage(b: u32, ) -> Weight { + (21_539_000 as Weight) // Standard Error: 0 - .saturating_add((3_000_u64).saturating_mul(b as Weight)) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + .saturating_add((3_000 as Weight).saturating_mul(b as Weight)) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } - fn note_imminent_preimage(b: u32) -> Weight { - (27_699_000_u64) + // Storage: Democracy Preimages (r:1 w:1) + fn note_imminent_preimage(b: u32, ) -> Weight { + (24_509_000 as Weight) // Standard Error: 0 - .saturating_add((2_000_u64).saturating_mul(b as Weight)) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + .saturating_add((2_000 as Weight).saturating_mul(b as Weight)) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } - fn reap_preimage(b: u32) -> Weight { - (38_171_000_u64) + // Storage: Democracy Preimages (r:1 w:1) + // Storage: System Account (r:1 w:0) + fn reap_preimage(b: u32, ) -> Weight { + (26_108_000 as Weight) // Standard Error: 0 - .saturating_add((2_000_u64).saturating_mul(b as Weight)) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + .saturating_add((2_000 as Weight).saturating_mul(b as Weight)) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } - fn unlock_remove(r: u32) -> Weight { - (37_418_000_u64) + // Storage: Democracy VotingOf (r:1 w:1) + // Storage: Balances Locks (r:1 w:1) + // Storage: System Account (r:1 w:1) + fn unlock_remove(r: u32, ) -> Weight { + (32_975_000 as Weight) // Standard Error: 0 - .saturating_add((55_000_u64).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(3_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + .saturating_add((118_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } - fn unlock_set(r: u32) -> Weight { - (35_077_000_u64) + // Storage: Democracy VotingOf (r:1 w:1) + // Storage: Balances Locks (r:1 w:1) + // Storage: System Account (r:1 w:1) + fn unlock_set(r: u32, ) -> Weight { + (31_147_000 as Weight) // Standard Error: 0 - .saturating_add((197_000_u64).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(3_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + .saturating_add((196_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } - fn remove_vote(r: u32) -> Weight { - (19_476_000_u64) + // Storage: Democracy ReferendumInfoOf (r:1 w:1) + // Storage: Democracy VotingOf (r:1 w:1) + fn remove_vote(r: u32, ) -> Weight { + (16_115_000 as Weight) // Standard Error: 0 - .saturating_add((183_000_u64).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().writes(2_u64)) + .saturating_add((199_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) } - fn remove_other_vote(r: u32) -> Weight { - (19_518_000_u64) + // Storage: Democracy ReferendumInfoOf (r:1 w:1) + // Storage: Democracy VotingOf (r:1 w:1) + fn remove_other_vote(r: u32, ) -> Weight { + (15_889_000 as Weight) // Standard Error: 0 - .saturating_add((186_000_u64).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().writes(2_u64)) + .saturating_add((200_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) } } diff --git a/runtimes/peregrine/src/weights/pallet_did_lookup.rs b/runtimes/peregrine/src/weights/pallet_did_lookup.rs index 3f48d5be2..9772cfe51 100644 --- a/runtimes/peregrine/src/weights/pallet_did_lookup.rs +++ b/runtimes/peregrine/src/weights/pallet_did_lookup.rs @@ -19,14 +19,15 @@ //! Autogenerated weights for pallet_did_lookup //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2022-04-08, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 1024 // Executed Command: -// target/release/kilt-parachain +// ./target/release/kilt-parachain // benchmark +// pallet // --chain=dev -// --steps=50 +// --steps=1 // --repeat=20 // --pallet=pallet-did-lookup // --extrinsic=* @@ -51,7 +52,7 @@ impl pallet_did_lookup::WeightInfo for WeightInfo { // Storage: DidLookup ConnectedDids (r:1 w:1) // Storage: DidLookup ConnectedAccounts (r:0 w:2) fn associate_account() -> Weight { - (111_688_000 as Weight) + (115_331_000 as Weight) .saturating_add(T::DbWeight::get().reads(2 as Weight)) .saturating_add(T::DbWeight::get().writes(4 as Weight)) } @@ -59,7 +60,7 @@ impl pallet_did_lookup::WeightInfo for WeightInfo { // Storage: DidLookup ConnectedDids (r:1 w:1) // Storage: DidLookup ConnectedAccounts (r:0 w:2) fn associate_sender() -> Weight { - (52_658_000 as Weight) + (56_431_000 as Weight) .saturating_add(T::DbWeight::get().reads(2 as Weight)) .saturating_add(T::DbWeight::get().writes(4 as Weight)) } @@ -67,7 +68,7 @@ impl pallet_did_lookup::WeightInfo for WeightInfo { // Storage: System Account (r:1 w:1) // Storage: DidLookup ConnectedAccounts (r:0 w:1) fn remove_sender_association() -> Weight { - (34_338_000 as Weight) + (37_963_000 as Weight) .saturating_add(T::DbWeight::get().reads(2 as Weight)) .saturating_add(T::DbWeight::get().writes(3 as Weight)) } @@ -75,7 +76,7 @@ impl pallet_did_lookup::WeightInfo for WeightInfo { // Storage: System Account (r:1 w:1) // Storage: DidLookup ConnectedAccounts (r:0 w:1) fn remove_account_association() -> Weight { - (36_127_000 as Weight) + (39_747_000 as Weight) .saturating_add(T::DbWeight::get().reads(2 as Weight)) .saturating_add(T::DbWeight::get().writes(3 as Weight)) } diff --git a/runtimes/peregrine/src/weights/pallet_indices.rs b/runtimes/peregrine/src/weights/pallet_indices.rs index 4d884feb3..8a6b41ce5 100644 --- a/runtimes/peregrine/src/weights/pallet_indices.rs +++ b/runtimes/peregrine/src/weights/pallet_indices.rs @@ -16,63 +16,68 @@ // If you feel like getting in touch with us, you can do so at info@botlabs.org -//! //! Autogenerated weights for pallet_indices +//! Autogenerated weights for pallet_indices //! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 3.0.0 -//! DATE: 2021-06-10, STEPS: {{cmd.steps}}\, REPEAT: {{cmd.repeat}}\, LOW RANGE: -//! {{cmd.lowest_range_values}}\, HIGH RANGE: {{cmd.highest_range_values}}\ -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: -//! Some("spiritnet-dev"), DB CACHE: 128 +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 1024 // Executed Command: -// /home/willi/mashnet-node/target/release/kilt-parachain +// ./target/release/kilt-parachain // benchmark -// --chain=spiritnet-dev +// pallet +// --chain=dev +// --steps=1 +// --repeat=20 +// --pallet=pallet-indices +// --extrinsic=* // --execution=wasm -// --wasm-execution=Compiled +// --wasm-execution=compiled // --heap-pages=4096 -// --extrinsic=* -// --pallet=pallet_indices -// --steps=50 -// --repeat=20 -// --output -// ../../runtimes/spiritnet/src/weights/pallet_indices.rs -// --template -// ../../.maintain/weight-template.hbs +// --output=./runtimes/peregrine/src/weights/pallet_indices.rs +// --template=.maintain/runtime-weight-template.hbs +#![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] +#![allow(clippy::unnecessary_cast)] use frame_support::{traits::Get, weights::Weight}; use sp_std::marker::PhantomData; -/// Weights for pallet_indices using the Substrate node and recommended -/// hardware. +/// Weight functions for `pallet_indices`. pub struct WeightInfo(PhantomData); impl pallet_indices::WeightInfo for WeightInfo { + // Storage: Indices Accounts (r:1 w:1) fn claim() -> Weight { - (66_605_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (33_833_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Indices Accounts (r:1 w:1) + // Storage: System Account (r:1 w:1) fn transfer() -> Weight { - (77_706_000_u64) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().writes(2_u64)) + (42_192_000 as Weight) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) } + // Storage: Indices Accounts (r:1 w:1) fn free() -> Weight { - (63_439_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (35_607_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Indices Accounts (r:1 w:1) + // Storage: System Account (r:1 w:1) fn force_transfer() -> Weight { - (63_439_000_u64) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().writes(2_u64)) + (35_748_000 as Weight) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) } + // Storage: Indices Accounts (r:1 w:1) fn freeze() -> Weight { - (60_743_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (40_156_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } } diff --git a/runtimes/peregrine/src/weights/pallet_inflation.rs b/runtimes/peregrine/src/weights/pallet_inflation.rs index acd62c750..a7ea17bdd 100644 --- a/runtimes/peregrine/src/weights/pallet_inflation.rs +++ b/runtimes/peregrine/src/weights/pallet_inflation.rs @@ -19,24 +19,24 @@ //! Autogenerated weights for pallet_inflation //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2021-10-29, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 128 +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 1024 // Executed Command: -// target/release/kilt-parachain +// ./target/release/kilt-parachain // benchmark -// --chain=spiritnet-dev -// --steps=50 +// pallet +// --chain=dev +// --steps=1 // --repeat=20 // --pallet=pallet-inflation // --extrinsic=* // --execution=wasm // --wasm-execution=compiled // --heap-pages=4096 -// --output=./runtimes/spiritnet/src/weights/pallet_inflation.rs +// --output=./runtimes/peregrine/src/weights/pallet_inflation.rs // --template=.maintain/runtime-weight-template.hbs - #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] @@ -50,11 +50,11 @@ pub struct WeightInfo(PhantomData); impl pallet_inflation::WeightInfo for WeightInfo { // Storage: System Account (r:1 w:1) fn on_initialize_mint_to_treasury() -> Weight { - (30_794_000 as Weight) + (30_672_000 as Weight) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(1 as Weight)) } fn on_initialize_no_action() -> Weight { - (398_000 as Weight) + (259_000 as Weight) } } diff --git a/runtimes/peregrine/src/weights/pallet_membership.rs b/runtimes/peregrine/src/weights/pallet_membership.rs index 22b9a518e..34635fbe1 100644 --- a/runtimes/peregrine/src/weights/pallet_membership.rs +++ b/runtimes/peregrine/src/weights/pallet_membership.rs @@ -18,91 +18,111 @@ //! Autogenerated weights for pallet_membership //! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 3.0.0 -//! DATE: 2021-06-17, STEPS: `[50, ]`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 128 +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 1024 // Executed Command: // ./target/release/kilt-parachain // benchmark -// --chain -// dev -// --heap-pages -// 4096 -// --extrinsic -// * -// --pallet -// pallet_membership -// --steps -// 50 -// --repeat -// 20 -// --execution -// wasm -// --wasm-execution -// Compiled -// --output -// runtimes/parachain/src/weights/pallet_membership.rs -// --template -// .maintain/runtime-weight-template.hbs - +// pallet +// --chain=dev +// --steps=1 +// --repeat=20 +// --pallet=pallet-membership +// --extrinsic=* +// --execution=wasm +// --wasm-execution=compiled +// --heap-pages=4096 +// --output=./runtimes/peregrine/src/weights/pallet_membership.rs +// --template=.maintain/runtime-weight-template.hbs #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] +#![allow(clippy::unnecessary_cast)] use frame_support::{traits::Get, weights::Weight}; use sp_std::marker::PhantomData; -/// Weights for pallet_membership using the recommended hardware. +/// Weight functions for `pallet_membership`. pub struct WeightInfo(PhantomData); impl pallet_membership::WeightInfo for WeightInfo { + // Storage: TechnicalMembership Members (r:1 w:1) + // Storage: TechnicalCommittee Proposals (r:1 w:0) + // Storage: TechnicalCommittee Members (r:0 w:1) + // Storage: TechnicalCommittee Prime (r:0 w:1) fn add_member(m: u32, ) -> Weight { - 36_406_000_u64 - // Standard Error: 3_000 - .saturating_add(187_000_u64.saturating_mul(m as Weight)) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + (22_525_000 as Weight) + // Standard Error: 1_000 + .saturating_add((217_000 as Weight).saturating_mul(m as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } + // Storage: TechnicalMembership Members (r:1 w:1) + // Storage: TechnicalCommittee Proposals (r:1 w:0) + // Storage: TechnicalMembership Prime (r:1 w:0) + // Storage: TechnicalCommittee Members (r:0 w:1) + // Storage: TechnicalCommittee Prime (r:0 w:1) fn remove_member(m: u32, ) -> Weight { - 45_048_000_u64 - // Standard Error: 1_000 - .saturating_add(143_000_u64.saturating_mul(m as Weight)) - .saturating_add(T::DbWeight::get().reads(3_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + (27_856_000 as Weight) + // Standard Error: 0 + .saturating_add((56_000 as Weight).saturating_mul(m as Weight)) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } + // Storage: TechnicalMembership Members (r:1 w:1) + // Storage: TechnicalCommittee Proposals (r:1 w:0) + // Storage: TechnicalMembership Prime (r:1 w:0) + // Storage: TechnicalCommittee Members (r:0 w:1) + // Storage: TechnicalCommittee Prime (r:0 w:1) fn swap_member(m: u32, ) -> Weight { - 44_310_000_u64 - // Standard Error: 2_000 - .saturating_add(190_000_u64.saturating_mul(m as Weight)) - .saturating_add(T::DbWeight::get().reads(3_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + (28_331_000 as Weight) + // Standard Error: 0 + .saturating_add((71_000 as Weight).saturating_mul(m as Weight)) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } + // Storage: TechnicalMembership Members (r:1 w:1) + // Storage: TechnicalCommittee Proposals (r:1 w:0) + // Storage: TechnicalMembership Prime (r:1 w:0) + // Storage: TechnicalCommittee Members (r:0 w:1) + // Storage: TechnicalCommittee Prime (r:0 w:1) fn reset_member(m: u32, ) -> Weight { - 46_904_000_u64 - // Standard Error: 2_000 - .saturating_add(357_000_u64.saturating_mul(m as Weight)) - .saturating_add(T::DbWeight::get().reads(3_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + (27_486_000 as Weight) + // Standard Error: 0 + .saturating_add((197_000 as Weight).saturating_mul(m as Weight)) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } + // Storage: TechnicalMembership Members (r:1 w:1) + // Storage: TechnicalCommittee Proposals (r:1 w:0) + // Storage: TechnicalMembership Prime (r:1 w:1) + // Storage: TechnicalCommittee Members (r:0 w:1) + // Storage: TechnicalCommittee Prime (r:0 w:1) fn change_key(m: u32, ) -> Weight { - 46_549_000_u64 + (28_469_000 as Weight) // Standard Error: 1_000 - .saturating_add(179_000_u64.saturating_mul(m as Weight)) - .saturating_add(T::DbWeight::get().reads(3_u64)) - .saturating_add(T::DbWeight::get().writes(4_u64)) + .saturating_add((67_000 as Weight).saturating_mul(m as Weight)) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(4 as Weight)) } + // Storage: TechnicalMembership Members (r:1 w:0) + // Storage: TechnicalMembership Prime (r:0 w:1) + // Storage: TechnicalCommittee Prime (r:0 w:1) fn set_prime(m: u32, ) -> Weight { - 12_132_000_u64 + (7_782_000 as Weight) // Standard Error: 0 - .saturating_add(125_000_u64.saturating_mul(m as Weight)) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(2_u64)) + .saturating_add((33_000 as Weight).saturating_mul(m as Weight)) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) } + // Storage: TechnicalMembership Prime (r:0 w:1) + // Storage: TechnicalCommittee Prime (r:0 w:1) fn clear_prime(m: u32, ) -> Weight { - 4_955_000_u64 + (2_766_000 as Weight) // Standard Error: 0 - .saturating_add(5_000_u64.saturating_mul(m as Weight)) - .saturating_add(T::DbWeight::get().writes(2_u64)) + .saturating_add((2_000 as Weight).saturating_mul(m as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) } } diff --git a/runtimes/peregrine/src/weights/pallet_preimage.rs b/runtimes/peregrine/src/weights/pallet_preimage.rs index 58428be85..2e5a3f109 100644 --- a/runtimes/peregrine/src/weights/pallet_preimage.rs +++ b/runtimes/peregrine/src/weights/pallet_preimage.rs @@ -19,16 +19,17 @@ //! Autogenerated weights for pallet_preimage //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2022-02-02, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 1024 // Executed Command: // ./target/release/kilt-parachain // benchmark +// pallet // --chain=dev -// --steps=50 +// --steps=1 // --repeat=20 -// --pallet=pallet_preimage +// --pallet=pallet-preimage // --extrinsic=* // --execution=wasm // --wasm-execution=compiled @@ -50,7 +51,7 @@ impl pallet_preimage::WeightInfo for WeightInfo { // Storage: Preimage PreimageFor (r:1 w:1) // Storage: Preimage StatusFor (r:1 w:1) fn note_preimage(s: u32, ) -> Weight { - (0 as Weight) + (38_993_000 as Weight) // Standard Error: 0 .saturating_add((2_000 as Weight).saturating_mul(s as Weight)) .saturating_add(T::DbWeight::get().reads(2 as Weight)) @@ -59,7 +60,7 @@ impl pallet_preimage::WeightInfo for WeightInfo { // Storage: Preimage PreimageFor (r:1 w:1) // Storage: Preimage StatusFor (r:1 w:0) fn note_requested_preimage(s: u32, ) -> Weight { - (0 as Weight) + (23_491_000 as Weight) // Standard Error: 0 .saturating_add((2_000 as Weight).saturating_mul(s as Weight)) .saturating_add(T::DbWeight::get().reads(2 as Weight)) @@ -68,7 +69,7 @@ impl pallet_preimage::WeightInfo for WeightInfo { // Storage: Preimage PreimageFor (r:1 w:1) // Storage: Preimage StatusFor (r:1 w:0) fn note_no_deposit_preimage(s: u32, ) -> Weight { - (0 as Weight) + (21_609_000 as Weight) // Standard Error: 0 .saturating_add((2_000 as Weight).saturating_mul(s as Weight)) .saturating_add(T::DbWeight::get().reads(2 as Weight)) @@ -77,58 +78,58 @@ impl pallet_preimage::WeightInfo for WeightInfo { // Storage: Preimage StatusFor (r:1 w:1) // Storage: Preimage PreimageFor (r:0 w:1) fn unnote_preimage() -> Weight { - (55_186_000 as Weight) + (47_553_000 as Weight) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(2 as Weight)) } // Storage: Preimage StatusFor (r:1 w:1) // Storage: Preimage PreimageFor (r:0 w:1) fn unnote_no_deposit_preimage() -> Weight { - (34_044_000 as Weight) + (28_680_000 as Weight) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(2 as Weight)) } // Storage: Preimage StatusFor (r:1 w:1) fn request_preimage() -> Weight { - (52_505_000 as Weight) + (44_418_000 as Weight) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(1 as Weight)) } // Storage: Preimage StatusFor (r:1 w:1) fn request_no_deposit_preimage() -> Weight { - (33_176_000 as Weight) + (26_607_000 as Weight) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(1 as Weight)) } // Storage: Preimage StatusFor (r:1 w:1) fn request_unnoted_preimage() -> Weight { - (18_252_000 as Weight) + (19_019_000 as Weight) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(1 as Weight)) } // Storage: Preimage StatusFor (r:1 w:1) fn request_requested_preimage() -> Weight { - (7_322_000 as Weight) + (6_720_000 as Weight) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(1 as Weight)) } // Storage: Preimage StatusFor (r:1 w:1) // Storage: Preimage PreimageFor (r:0 w:1) fn unrequest_preimage() -> Weight { - (34_421_000 as Weight) + (27_827_000 as Weight) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(2 as Weight)) } // Storage: Preimage StatusFor (r:1 w:1) // Storage: Preimage PreimageFor (r:0 w:1) fn unrequest_unnoted_preimage() -> Weight { - (20_103_000 as Weight) + (21_077_000 as Weight) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(2 as Weight)) } // Storage: Preimage StatusFor (r:1 w:1) fn unrequest_multi_referenced_preimage() -> Weight { - (6_995_000 as Weight) + (6_661_000 as Weight) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(1 as Weight)) } diff --git a/runtimes/peregrine/src/weights/pallet_proxy.rs b/runtimes/peregrine/src/weights/pallet_proxy.rs index d73c27170..af432375b 100644 --- a/runtimes/peregrine/src/weights/pallet_proxy.rs +++ b/runtimes/peregrine/src/weights/pallet_proxy.rs @@ -19,14 +19,15 @@ //! Autogenerated weights for pallet_proxy //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2022-03-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 1024 // Executed Command: -// target/release/kilt-parachain +// ./target/release/kilt-parachain // benchmark +// pallet // --chain=dev -// --steps=50 +// --steps=1 // --repeat=20 // --pallet=pallet-proxy // --extrinsic=* @@ -49,38 +50,38 @@ pub struct WeightInfo(PhantomData); impl pallet_proxy::WeightInfo for WeightInfo { // Storage: Proxy Proxies (r:1 w:0) fn proxy(p: u32, ) -> Weight { - (19_267_000 as Weight) - // Standard Error: 12_000 - .saturating_add((314_000 as Weight).saturating_mul(p as Weight)) + (22_325_000 as Weight) + // Standard Error: 6_000 + .saturating_add((72_000 as Weight).saturating_mul(p as Weight)) .saturating_add(T::DbWeight::get().reads(1 as Weight)) } // Storage: Proxy Proxies (r:1 w:0) // Storage: Proxy Announcements (r:1 w:1) // Storage: System Account (r:1 w:1) fn proxy_announced(a: u32, p: u32, ) -> Weight { - (43_254_000 as Weight) + (48_023_000 as Weight) + // Standard Error: 10_000 + .saturating_add((399_000 as Weight).saturating_mul(a as Weight)) // Standard Error: 12_000 - .saturating_add((461_000 as Weight).saturating_mul(a as Weight)) - // Standard Error: 14_000 - .saturating_add((86_000 as Weight).saturating_mul(p as Weight)) + .saturating_add((13_000 as Weight).saturating_mul(p as Weight)) .saturating_add(T::DbWeight::get().reads(3 as Weight)) .saturating_add(T::DbWeight::get().writes(2 as Weight)) } // Storage: Proxy Announcements (r:1 w:1) // Storage: System Account (r:1 w:1) fn remove_announcement(a: u32, _p: u32, ) -> Weight { - (29_933_000 as Weight) - // Standard Error: 8_000 - .saturating_add((515_000 as Weight).saturating_mul(a as Weight)) + (34_219_000 as Weight) + // Standard Error: 4_000 + .saturating_add((376_000 as Weight).saturating_mul(a as Weight)) .saturating_add(T::DbWeight::get().reads(2 as Weight)) .saturating_add(T::DbWeight::get().writes(2 as Weight)) } // Storage: Proxy Announcements (r:1 w:1) // Storage: System Account (r:1 w:1) fn reject_announcement(a: u32, _p: u32, ) -> Weight { - (30_310_000 as Weight) - // Standard Error: 9_000 - .saturating_add((479_000 as Weight).saturating_mul(a as Weight)) + (34_148_000 as Weight) + // Standard Error: 5_000 + .saturating_add((418_000 as Weight).saturating_mul(a as Weight)) .saturating_add(T::DbWeight::get().reads(2 as Weight)) .saturating_add(T::DbWeight::get().writes(2 as Weight)) } @@ -88,52 +89,52 @@ impl pallet_proxy::WeightInfo for WeightInfo { // Storage: Proxy Announcements (r:1 w:1) // Storage: System Account (r:1 w:1) fn announce(a: u32, p: u32, ) -> Weight { - (41_024_000 as Weight) - // Standard Error: 9_000 - .saturating_add((445_000 as Weight).saturating_mul(a as Weight)) - // Standard Error: 10_000 - .saturating_add((51_000 as Weight).saturating_mul(p as Weight)) + (44_814_000 as Weight) + // Standard Error: 7_000 + .saturating_add((428_000 as Weight).saturating_mul(a as Weight)) + // Standard Error: 8_000 + .saturating_add((78_000 as Weight).saturating_mul(p as Weight)) .saturating_add(T::DbWeight::get().reads(3 as Weight)) .saturating_add(T::DbWeight::get().writes(2 as Weight)) } // Storage: Proxy Proxies (r:1 w:1) fn add_proxy(p: u32, ) -> Weight { - (33_452_000 as Weight) - // Standard Error: 21_000 - .saturating_add((360_000 as Weight).saturating_mul(p as Weight)) + (38_309_000 as Weight) + // Standard Error: 12_000 + .saturating_add((375_000 as Weight).saturating_mul(p as Weight)) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(1 as Weight)) } // Storage: Proxy Proxies (r:1 w:1) fn remove_proxy(p: u32, ) -> Weight { - (28_225_000 as Weight) - // Standard Error: 19_000 - .saturating_add((356_000 as Weight).saturating_mul(p as Weight)) + (38_994_000 as Weight) + // Standard Error: 14_000 + .saturating_add((309_000 as Weight).saturating_mul(p as Weight)) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(1 as Weight)) } // Storage: Proxy Proxies (r:1 w:1) fn remove_proxies(p: u32, ) -> Weight { - (28_040_000 as Weight) - // Standard Error: 19_000 - .saturating_add((232_000 as Weight).saturating_mul(p as Weight)) + (32_875_000 as Weight) + // Standard Error: 9_000 + .saturating_add((145_000 as Weight).saturating_mul(p as Weight)) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(1 as Weight)) } // Storage: unknown [0x3a65787472696e7369635f696e646578] (r:1 w:0) // Storage: Proxy Proxies (r:1 w:1) fn anonymous(p: u32, ) -> Weight { - (39_325_000 as Weight) + (44_627_000 as Weight) // Standard Error: 15_000 - .saturating_add((11_000 as Weight).saturating_mul(p as Weight)) + .saturating_add((128_000 as Weight).saturating_mul(p as Weight)) .saturating_add(T::DbWeight::get().reads(2 as Weight)) .saturating_add(T::DbWeight::get().writes(1 as Weight)) } // Storage: Proxy Proxies (r:1 w:1) fn kill_anonymous(p: u32, ) -> Weight { - (30_673_000 as Weight) - // Standard Error: 14_000 - .saturating_add((205_000 as Weight).saturating_mul(p as Weight)) + (34_989_000 as Weight) + // Standard Error: 10_000 + .saturating_add((87_000 as Weight).saturating_mul(p as Weight)) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(1 as Weight)) } diff --git a/runtimes/peregrine/src/weights/pallet_scheduler.rs b/runtimes/peregrine/src/weights/pallet_scheduler.rs index 3998b27ff..181ceb069 100644 --- a/runtimes/peregrine/src/weights/pallet_scheduler.rs +++ b/runtimes/peregrine/src/weights/pallet_scheduler.rs @@ -19,16 +19,17 @@ //! Autogenerated weights for pallet_scheduler //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2022-02-02, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 1024 // Executed Command: // ./target/release/kilt-parachain // benchmark +// pallet // --chain=dev -// --steps=50 +// --steps=1 // --repeat=20 -// --pallet=pallet_scheduler +// --pallet=pallet-scheduler // --extrinsic=* // --execution=wasm // --wasm-execution=compiled @@ -52,9 +53,9 @@ impl pallet_scheduler::WeightInfo for WeightInfo { // Storage: Preimage StatusFor (r:1 w:1) // Storage: Scheduler Lookup (r:0 w:1) fn on_initialize_periodic_named_resolved(s: u32, ) -> Weight { - (8_088_000 as Weight) - // Standard Error: 26_000 - .saturating_add((29_706_000 as Weight).saturating_mul(s as Weight)) + (16_908_000 as Weight) + // Standard Error: 69_000 + .saturating_add((31_130_000 as Weight).saturating_mul(s as Weight)) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().reads((3 as Weight).saturating_mul(s as Weight))) .saturating_add(T::DbWeight::get().writes(1 as Weight)) @@ -65,9 +66,9 @@ impl pallet_scheduler::WeightInfo for WeightInfo { // Storage: Preimage StatusFor (r:1 w:1) // Storage: Scheduler Lookup (r:0 w:1) fn on_initialize_named_resolved(s: u32, ) -> Weight { - (8_410_000 as Weight) - // Standard Error: 20_000 - .saturating_add((22_726_000 as Weight).saturating_mul(s as Weight)) + (15_706_000 as Weight) + // Standard Error: 55_000 + .saturating_add((23_499_000 as Weight).saturating_mul(s as Weight)) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().reads((2 as Weight).saturating_mul(s as Weight))) .saturating_add(T::DbWeight::get().writes(1 as Weight)) @@ -77,9 +78,9 @@ impl pallet_scheduler::WeightInfo for WeightInfo { // Storage: Preimage PreimageFor (r:1 w:1) // Storage: Preimage StatusFor (r:1 w:1) fn on_initialize_periodic_resolved(s: u32, ) -> Weight { - (10_450_000 as Weight) - // Standard Error: 24_000 - .saturating_add((25_249_000 as Weight).saturating_mul(s as Weight)) + (16_051_000 as Weight) + // Standard Error: 19_000 + .saturating_add((25_704_000 as Weight).saturating_mul(s as Weight)) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().reads((3 as Weight).saturating_mul(s as Weight))) .saturating_add(T::DbWeight::get().writes(1 as Weight)) @@ -89,9 +90,9 @@ impl pallet_scheduler::WeightInfo for WeightInfo { // Storage: Preimage PreimageFor (r:1 w:1) // Storage: Preimage StatusFor (r:1 w:1) fn on_initialize_resolved(s: u32, ) -> Weight { - (9_333_000 as Weight) - // Standard Error: 22_000 - .saturating_add((20_918_000 as Weight).saturating_mul(s as Weight)) + (15_912_000 as Weight) + // Standard Error: 75_000 + .saturating_add((21_495_000 as Weight).saturating_mul(s as Weight)) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().reads((2 as Weight).saturating_mul(s as Weight))) .saturating_add(T::DbWeight::get().writes(1 as Weight)) @@ -101,9 +102,9 @@ impl pallet_scheduler::WeightInfo for WeightInfo { // Storage: Preimage PreimageFor (r:1 w:0) // Storage: Scheduler Lookup (r:0 w:1) fn on_initialize_named_aborted(s: u32, ) -> Weight { - (10_867_000 as Weight) - // Standard Error: 5_000 - .saturating_add((9_744_000 as Weight).saturating_mul(s as Weight)) + (11_281_000 as Weight) + // Standard Error: 6_000 + .saturating_add((9_530_000 as Weight).saturating_mul(s as Weight)) .saturating_add(T::DbWeight::get().reads(2 as Weight)) .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(s as Weight))) .saturating_add(T::DbWeight::get().writes(2 as Weight)) @@ -112,9 +113,9 @@ impl pallet_scheduler::WeightInfo for WeightInfo { // Storage: Scheduler Agenda (r:2 w:2) // Storage: Preimage PreimageFor (r:1 w:0) fn on_initialize_aborted(s: u32, ) -> Weight { - (12_710_000 as Weight) - // Standard Error: 6_000 - .saturating_add((5_766_000 as Weight).saturating_mul(s as Weight)) + (10_158_000 as Weight) + // Standard Error: 11_000 + .saturating_add((4_979_000 as Weight).saturating_mul(s as Weight)) .saturating_add(T::DbWeight::get().reads(2 as Weight)) .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(s as Weight))) .saturating_add(T::DbWeight::get().writes(2 as Weight)) @@ -122,9 +123,9 @@ impl pallet_scheduler::WeightInfo for WeightInfo { // Storage: Scheduler Agenda (r:2 w:2) // Storage: Scheduler Lookup (r:0 w:1) fn on_initialize_periodic_named(s: u32, ) -> Weight { - (17_882_000 as Weight) - // Standard Error: 12_000 - .saturating_add((14_368_000 as Weight).saturating_mul(s as Weight)) + (16_550_000 as Weight) + // Standard Error: 86_000 + .saturating_add((14_921_000 as Weight).saturating_mul(s as Weight)) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(s as Weight))) .saturating_add(T::DbWeight::get().writes(1 as Weight)) @@ -132,9 +133,9 @@ impl pallet_scheduler::WeightInfo for WeightInfo { } // Storage: Scheduler Agenda (r:2 w:2) fn on_initialize_periodic(s: u32, ) -> Weight { - (17_177_000 as Weight) - // Standard Error: 6_000 - .saturating_add((10_362_000 as Weight).saturating_mul(s as Weight)) + (15_523_000 as Weight) + // Standard Error: 4_000 + .saturating_add((10_247_000 as Weight).saturating_mul(s as Weight)) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(s as Weight))) .saturating_add(T::DbWeight::get().writes(1 as Weight)) @@ -143,53 +144,53 @@ impl pallet_scheduler::WeightInfo for WeightInfo { // Storage: Scheduler Agenda (r:1 w:1) // Storage: Scheduler Lookup (r:0 w:1) fn on_initialize_named(s: u32, ) -> Weight { - (17_142_000 as Weight) - // Standard Error: 6_000 - .saturating_add((7_834_000 as Weight).saturating_mul(s as Weight)) + (16_497_000 as Weight) + // Standard Error: 5_000 + .saturating_add((7_676_000 as Weight).saturating_mul(s as Weight)) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(1 as Weight)) .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(s as Weight))) } // Storage: Scheduler Agenda (r:1 w:1) fn on_initialize(s: u32, ) -> Weight { - (17_574_000 as Weight) - // Standard Error: 6_000 - .saturating_add((6_285_000 as Weight).saturating_mul(s as Weight)) + (15_892_000 as Weight) + // Standard Error: 4_000 + .saturating_add((5_972_000 as Weight).saturating_mul(s as Weight)) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(1 as Weight)) } // Storage: Scheduler Agenda (r:1 w:1) fn schedule(s: u32, ) -> Weight { - (20_798_000 as Weight) + (21_165_000 as Weight) // Standard Error: 1_000 - .saturating_add((95_000 as Weight).saturating_mul(s as Weight)) + .saturating_add((156_000 as Weight).saturating_mul(s as Weight)) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(1 as Weight)) } // Storage: Scheduler Agenda (r:1 w:1) // Storage: Scheduler Lookup (r:0 w:1) fn cancel(s: u32, ) -> Weight { - (19_957_000 as Weight) - // Standard Error: 3_000 - .saturating_add((1_140_000 as Weight).saturating_mul(s as Weight)) + (21_753_000 as Weight) + // Standard Error: 1_000 + .saturating_add((878_000 as Weight).saturating_mul(s as Weight)) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(2 as Weight)) } // Storage: Scheduler Lookup (r:1 w:1) // Storage: Scheduler Agenda (r:1 w:1) fn schedule_named(s: u32, ) -> Weight { - (25_283_000 as Weight) - // Standard Error: 2_000 - .saturating_add((116_000 as Weight).saturating_mul(s as Weight)) + (26_011_000 as Weight) + // Standard Error: 1_000 + .saturating_add((176_000 as Weight).saturating_mul(s as Weight)) .saturating_add(T::DbWeight::get().reads(2 as Weight)) .saturating_add(T::DbWeight::get().writes(2 as Weight)) } // Storage: Scheduler Lookup (r:1 w:1) // Storage: Scheduler Agenda (r:1 w:1) fn cancel_named(s: u32, ) -> Weight { - (22_911_000 as Weight) - // Standard Error: 4_000 - .saturating_add((1_150_000 as Weight).saturating_mul(s as Weight)) + (23_273_000 as Weight) + // Standard Error: 1_000 + .saturating_add((917_000 as Weight).saturating_mul(s as Weight)) .saturating_add(T::DbWeight::get().reads(2 as Weight)) .saturating_add(T::DbWeight::get().writes(2 as Weight)) } diff --git a/runtimes/peregrine/src/weights/pallet_session.rs b/runtimes/peregrine/src/weights/pallet_session.rs index 2ff228bf1..665af2bbf 100644 --- a/runtimes/peregrine/src/weights/pallet_session.rs +++ b/runtimes/peregrine/src/weights/pallet_session.rs @@ -19,16 +19,17 @@ //! Autogenerated weights for pallet_session //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2021-10-17, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 128 +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 1024 // Executed Command: // ./target/release/kilt-parachain // benchmark +// pallet // --chain=dev -// --steps=50 +// --steps=1 // --repeat=20 -// --pallet=pallet_session +// --pallet=pallet-session // --extrinsic=* // --execution=wasm // --wasm-execution=compiled @@ -36,25 +37,29 @@ // --output=./runtimes/peregrine/src/weights/pallet_session.rs // --template=.maintain/runtime-weight-template.hbs - #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] +#![allow(clippy::unnecessary_cast)] use frame_support::{traits::Get, weights::Weight}; use sp_std::marker::PhantomData; -/// Weights for pallet_session using the recommended hardware. +/// 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) fn set_keys() -> Weight { - (29_635_000_u64) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().writes(2_u64)) + (21_936_000 as Weight) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) } + // Storage: Session NextKeys (r:1 w:1) + // Storage: Session KeyOwner (r:0 w:1) fn purge_keys() -> Weight { - (21_253_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(2_u64)) + (17_051_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) } } diff --git a/runtimes/peregrine/src/weights/pallet_timestamp.rs b/runtimes/peregrine/src/weights/pallet_timestamp.rs index 1c4741ba7..eb0da43ea 100644 --- a/runtimes/peregrine/src/weights/pallet_timestamp.rs +++ b/runtimes/peregrine/src/weights/pallet_timestamp.rs @@ -16,46 +16,45 @@ // If you feel like getting in touch with us, you can do so at info@botlabs.org -//! //! Autogenerated weights for pallet_timestamp +//! Autogenerated weights for pallet_timestamp //! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 3.0.0 -//! DATE: 2021-06-10, STEPS: {{cmd.steps}}\, REPEAT: {{cmd.repeat}}\, LOW RANGE: -//! {{cmd.lowest_range_values}}\, HIGH RANGE: {{cmd.highest_range_values}}\ -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: -//! Some("spiritnet-dev"), DB CACHE: 128 +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 1024 // Executed Command: -// /home/willi/mashnet-node/target/release/kilt-parachain +// ./target/release/kilt-parachain // benchmark -// --chain=spiritnet-dev +// pallet +// --chain=dev +// --steps=1 +// --repeat=20 +// --pallet=pallet-timestamp +// --extrinsic=* // --execution=wasm -// --wasm-execution=Compiled +// --wasm-execution=compiled // --heap-pages=4096 -// --extrinsic=* -// --pallet=pallet_timestamp -// --steps=50 -// --repeat=20 -// --output -// ../../runtimes/spiritnet/src/weights/pallet_timestamp.rs -// --template -// ../../.maintain/weight-template.hbs +// --output=./runtimes/peregrine/src/weights/pallet_timestamp.rs +// --template=.maintain/runtime-weight-template.hbs +#![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] +#![allow(clippy::unnecessary_cast)] use frame_support::{traits::Get, weights::Weight}; use sp_std::marker::PhantomData; -/// Weights for pallet_timestamp using the Substrate node and recommended -/// hardware. +/// Weight functions for `pallet_timestamp`. pub struct WeightInfo(PhantomData); impl pallet_timestamp::WeightInfo for WeightInfo { + // Storage: Timestamp Now (r:1 w:1) fn set() -> Weight { - (12_083_000_u64) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (7_004_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } fn on_finalize() -> Weight { - (6_632_000_u64) + (4_450_000 as Weight) } } diff --git a/runtimes/peregrine/src/weights/pallet_tips.rs b/runtimes/peregrine/src/weights/pallet_tips.rs new file mode 100644 index 000000000..43850c45b --- /dev/null +++ b/runtimes/peregrine/src/weights/pallet_tips.rs @@ -0,0 +1,108 @@ +// KILT Blockchain – https://botlabs.org +// Copyright (C) 2019-2022 BOTLabs GmbH + +// The KILT Blockchain is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// The KILT Blockchain is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with this program. If not, see . + +// If you feel like getting in touch with us, you can do so at info@botlabs.org + +//! Autogenerated weights for pallet_tips +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 1024 + +// Executed Command: +// ./target/release/kilt-parachain +// benchmark +// pallet +// --chain=dev +// --steps=1 +// --repeat=20 +// --pallet=pallet-tips +// --extrinsic=* +// --execution=wasm +// --wasm-execution=compiled +// --heap-pages=4096 +// --output=./runtimes/peregrine/src/weights/pallet_tips.rs +// --template=.maintain/runtime-weight-template.hbs + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] +#![allow(clippy::unnecessary_cast)] + +use frame_support::{traits::Get, weights::Weight}; +use sp_std::marker::PhantomData; + +/// Weight functions for `pallet_tips`. +pub struct WeightInfo(PhantomData); +impl pallet_tips::WeightInfo for WeightInfo { + // Storage: Tips Reasons (r:1 w:1) + // Storage: Tips Tips (r:1 w:1) + fn report_awesome(r: u32, ) -> Weight { + (40_507_000 as Weight) + // Standard Error: 0 + .saturating_add((2_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) + } + // Storage: Tips Tips (r:1 w:1) + // Storage: Tips Reasons (r:0 w:1) + fn retract_tip() -> Weight { + (38_870_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) + } + // Storage: TipsMembership Members (r:1 w:0) + // Storage: Tips Reasons (r:1 w:1) + // Storage: Tips Tips (r:0 w:1) + fn tip_new(r: u32, t: u32, ) -> Weight { + (25_635_000 as Weight) + // Standard Error: 0 + .saturating_add((2_000 as Weight).saturating_mul(r as Weight)) + // Standard Error: 0 + .saturating_add((51_000 as Weight).saturating_mul(t as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) + } + // Storage: TipsMembership Members (r:1 w:0) + // Storage: Tips Tips (r:1 w:1) + fn tip(t: u32, ) -> Weight { + (14_855_000 as Weight) + // Standard Error: 0 + .saturating_add((221_000 as Weight).saturating_mul(t as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) + } + // Storage: Tips Tips (r:1 w:1) + // Storage: TipsMembership Members (r:1 w:0) + // Storage: System Account (r:2 w:2) + // Storage: Tips Reasons (r:0 w:1) + fn close_tip(t: u32, ) -> Weight { + (64_407_000 as Weight) + // Standard Error: 1_000 + .saturating_add((157_000 as Weight).saturating_mul(t as Weight)) + .saturating_add(T::DbWeight::get().reads(4 as Weight)) + .saturating_add(T::DbWeight::get().writes(4 as Weight)) + } + // Storage: Tips Tips (r:1 w:1) + // Storage: Tips Reasons (r:0 w:1) + fn slash_tip(t: u32, ) -> Weight { + (22_062_000 as Weight) + // Standard Error: 0 + .saturating_add((13_000 as Weight).saturating_mul(t as Weight)) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) + } +} diff --git a/runtimes/peregrine/src/weights/pallet_treasury.rs b/runtimes/peregrine/src/weights/pallet_treasury.rs index 5c5c9ccef..1cfb07c16 100644 --- a/runtimes/peregrine/src/weights/pallet_treasury.rs +++ b/runtimes/peregrine/src/weights/pallet_treasury.rs @@ -18,69 +18,75 @@ //! Autogenerated weights for pallet_treasury //! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 3.0.0 -//! DATE: 2021-06-17, STEPS: `[50, ]`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 128 +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 1024 // Executed Command: // ./target/release/kilt-parachain // benchmark -// --chain -// dev -// --heap-pages -// 4096 -// --extrinsic -// * -// --pallet -// pallet_treasury -// --steps -// 50 -// --repeat -// 20 -// --execution -// wasm -// --wasm-execution -// Compiled -// --output -// runtimes/parachain/src/weights/pallet_treasury.rs -// --template -// .maintain/runtime-weight-template.hbs - +// pallet +// --chain=dev +// --steps=1 +// --repeat=20 +// --pallet=pallet-treasury +// --extrinsic=* +// --execution=wasm +// --wasm-execution=compiled +// --heap-pages=4096 +// --output=./runtimes/peregrine/src/weights/pallet_treasury.rs +// --template=.maintain/runtime-weight-template.hbs #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] +#![allow(clippy::unnecessary_cast)] use frame_support::{traits::Get, weights::Weight}; use sp_std::marker::PhantomData; -/// Weights for pallet_treasury using the recommended hardware. +/// Weight functions for `pallet_treasury`. pub struct WeightInfo(PhantomData); impl pallet_treasury::WeightInfo for WeightInfo { + // Storage: Treasury ProposalCount (r:1 w:1) + // Storage: Treasury Proposals (r:0 w:1) fn propose_spend() -> Weight { - 72_125_000_u64 - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(2_u64)) + (35_798_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) } + // Storage: Treasury Proposals (r:1 w:1) + // Storage: System Account (r:2 w:2) fn reject_proposal() -> Weight { - 80_772_000_u64 - .saturating_add(T::DbWeight::get().reads(3_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + (54_861_000 as Weight) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } + // Storage: Treasury Proposals (r:1 w:0) + // Storage: Treasury Approvals (r:1 w:1) fn approve_proposal(p: u32, ) -> Weight { - 17_983_000_u64 - // Standard Error: 1_000 - .saturating_add(145_000_u64.saturating_mul(p as Weight)) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (9_689_000 as Weight) + // Standard Error: 0 + .saturating_add((167_000 as Weight).saturating_mul(p as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) + } + // Storage: Treasury Approvals (r:1 w:1) + fn remove_approval() -> Weight { + (6_554_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: System Account (r:1 w:0) + // Storage: Treasury Approvals (r:1 w:1) + // Storage: Treasury Proposals (r:100 w:100) fn on_initialize_proposals(p: u32, ) -> Weight { - 59_203_000_u64 - // Standard Error: 120_000 - .saturating_add(99_514_000_u64.saturating_mul(p as Weight)) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().reads(3_u64.saturating_mul(p as Weight))) - .saturating_add(T::DbWeight::get().writes(2_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64.saturating_mul(p as Weight))) + (37_352_000 as Weight) + // Standard Error: 26_000 + .saturating_add((48_967_000 as Weight).saturating_mul(p as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().reads((3 as Weight).saturating_mul(p as Weight))) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) + .saturating_add(T::DbWeight::get().writes((3 as Weight).saturating_mul(p as Weight))) } } diff --git a/runtimes/peregrine/src/weights/pallet_utility.rs b/runtimes/peregrine/src/weights/pallet_utility.rs index 8dfb93c24..6cbeaa8da 100644 --- a/runtimes/peregrine/src/weights/pallet_utility.rs +++ b/runtimes/peregrine/src/weights/pallet_utility.rs @@ -19,14 +19,15 @@ //! Autogenerated weights for pallet_utility //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2022-01-12, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 128 +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 1024 // Executed Command: -// target/release/kilt-parachain +// ./target/release/kilt-parachain // benchmark +// pallet // --chain=dev -// --steps=50 +// --steps=1 // --repeat=20 // --pallet=pallet-utility // --extrinsic=* @@ -48,19 +49,24 @@ use sp_std::marker::PhantomData; pub struct WeightInfo(PhantomData); impl pallet_utility::WeightInfo for WeightInfo { fn batch(c: u32, ) -> Weight { - (21_717_000 as Weight) + (12_671_000 as Weight) // Standard Error: 3_000 - .saturating_add((5_457_000 as Weight).saturating_mul(c as Weight)) + .saturating_add((3_956_000 as Weight).saturating_mul(c as Weight)) } fn as_derivative() -> Weight { - (3_252_000 as Weight) + (2_453_000 as Weight) } fn batch_all(c: u32, ) -> Weight { - (15_270_000 as Weight) - // Standard Error: 2_000 - .saturating_add((5_923_000 as Weight).saturating_mul(c as Weight)) + (17_185_000 as Weight) + // Standard Error: 3_000 + .saturating_add((4_222_000 as Weight).saturating_mul(c as Weight)) } fn dispatch_as() -> Weight { - (13_651_000 as Weight) + (13_684_000 as Weight) + } + fn force_batch(c: u32, ) -> Weight { + (12_678_000 as Weight) + // Standard Error: 6_000 + .saturating_add((3_938_000 as Weight).saturating_mul(c as Weight)) } } diff --git a/runtimes/peregrine/src/weights/pallet_vesting.rs b/runtimes/peregrine/src/weights/pallet_vesting.rs index 8f046a21a..6a61b1fc4 100644 --- a/runtimes/peregrine/src/weights/pallet_vesting.rs +++ b/runtimes/peregrine/src/weights/pallet_vesting.rs @@ -19,14 +19,15 @@ //! Autogenerated weights for pallet_vesting //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2021-10-22, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 128 +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 1024 // Executed Command: -// target/release/kilt-parachain +// ./target/release/kilt-parachain // benchmark +// pallet // --chain=dev -// --steps=50 +// --steps=1 // --repeat=20 // --pallet=pallet-vesting // --extrinsic=* @@ -36,87 +37,105 @@ // --output=./runtimes/peregrine/src/weights/pallet_vesting.rs // --template=.maintain/runtime-weight-template.hbs - #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] +#![allow(clippy::unnecessary_cast)] use frame_support::{traits::Get, weights::Weight}; use sp_std::marker::PhantomData; -/// Weights for pallet_vesting using the recommended hardware. +/// Weight functions for `pallet_vesting`. pub struct WeightInfo(PhantomData); impl pallet_vesting::WeightInfo for WeightInfo { + // Storage: Vesting Vesting (r:1 w:1) + // Storage: Balances Locks (r:1 w:1) fn vest_locked(l: u32, s: u32, ) -> Weight { - (54_335_000_u64) - // Standard Error: 1_000 - .saturating_add((143_000_u64).saturating_mul(l as Weight)) + (44_681_000 as Weight) // Standard Error: 2_000 - .saturating_add((215_000_u64).saturating_mul(s as Weight)) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().writes(2_u64)) + .saturating_add((84_000 as Weight).saturating_mul(l as Weight)) + // Standard Error: 3_000 + .saturating_add((145_000 as Weight).saturating_mul(s as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) } + // Storage: Vesting Vesting (r:1 w:1) + // Storage: Balances Locks (r:1 w:1) fn vest_unlocked(l: u32, s: u32, ) -> Weight { - (53_721_000_u64) + (45_867_000 as Weight) // Standard Error: 1_000 - .saturating_add((130_000_u64).saturating_mul(l as Weight)) - // Standard Error: 3_000 - .saturating_add((130_000_u64).saturating_mul(s as Weight)) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().writes(2_u64)) + .saturating_add((51_000 as Weight).saturating_mul(l as Weight)) + // Standard Error: 2_000 + .saturating_add((102_000 as Weight).saturating_mul(s as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) } + // Storage: Vesting Vesting (r:1 w:1) + // Storage: Balances Locks (r:1 w:1) + // Storage: System Account (r:1 w:1) fn vest_other_locked(l: u32, s: u32, ) -> Weight { - (56_678_000_u64) + (43_825_000 as Weight) + // Standard Error: 1_000 + .saturating_add((86_000 as Weight).saturating_mul(l as Weight)) // Standard Error: 2_000 - .saturating_add((130_000_u64).saturating_mul(l as Weight)) - // Standard Error: 5_000 - .saturating_add((191_000_u64).saturating_mul(s as Weight)) - .saturating_add(T::DbWeight::get().reads(3_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + .saturating_add((131_000 as Weight).saturating_mul(s as Weight)) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } + // Storage: Vesting Vesting (r:1 w:1) + // Storage: Balances Locks (r:1 w:1) + // Storage: System Account (r:1 w:1) fn vest_other_unlocked(l: u32, s: u32, ) -> Weight { - (55_882_000_u64) + (43_633_000 as Weight) // Standard Error: 1_000 - .saturating_add((133_000_u64).saturating_mul(l as Weight)) - // Standard Error: 3_000 - .saturating_add((108_000_u64).saturating_mul(s as Weight)) - .saturating_add(T::DbWeight::get().reads(3_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + .saturating_add((78_000 as Weight).saturating_mul(l as Weight)) + // Standard Error: 2_000 + .saturating_add((114_000 as Weight).saturating_mul(s as Weight)) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } - fn vested_transfer(l: u32, s: u32, ) -> Weight { - (95_991_000_u64) - // Standard Error: 5_000 - .saturating_add((118_000_u64).saturating_mul(l as Weight)) - // Standard Error: 11_000 - .saturating_add((133_000_u64).saturating_mul(s as Weight)) - .saturating_add(T::DbWeight::get().reads(3_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + // Storage: Vesting Vesting (r:1 w:1) + // Storage: System Account (r:1 w:1) + // Storage: Balances Locks (r:1 w:1) + fn vested_transfer(l: u32, _s: u32, ) -> Weight { + (78_819_000 as Weight) + // Standard Error: 6_000 + .saturating_add((98_000 as Weight).saturating_mul(l as Weight)) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } - fn force_vested_transfer(l: u32, s: u32, ) -> Weight { - (95_180_000_u64) - // Standard Error: 5_000 - .saturating_add((117_000_u64).saturating_mul(l as Weight)) - // Standard Error: 11_000 - .saturating_add((141_000_u64).saturating_mul(s as Weight)) - .saturating_add(T::DbWeight::get().reads(4_u64)) - .saturating_add(T::DbWeight::get().writes(4_u64)) + // Storage: Vesting Vesting (r:1 w:1) + // Storage: System Account (r:2 w:2) + // Storage: Balances Locks (r:1 w:1) + fn force_vested_transfer(l: u32, _s: u32, ) -> Weight { + (76_055_000 as Weight) + // Standard Error: 1_000 + .saturating_add((83_000 as Weight).saturating_mul(l as Weight)) + .saturating_add(T::DbWeight::get().reads(4 as Weight)) + .saturating_add(T::DbWeight::get().writes(4 as Weight)) } + // Storage: Vesting Vesting (r:1 w:1) + // Storage: Balances Locks (r:1 w:1) + // Storage: System Account (r:1 w:1) fn not_unlocking_merge_schedules(l: u32, s: u32, ) -> Weight { - (57_069_000_u64) + (43_915_000 as Weight) // Standard Error: 1_000 - .saturating_add((154_000_u64).saturating_mul(l as Weight)) + .saturating_add((106_000 as Weight).saturating_mul(l as Weight)) // Standard Error: 3_000 - .saturating_add((203_000_u64).saturating_mul(s as Weight)) - .saturating_add(T::DbWeight::get().reads(3_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + .saturating_add((167_000 as Weight).saturating_mul(s as Weight)) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } + // Storage: Vesting Vesting (r:1 w:1) + // Storage: Balances Locks (r:1 w:1) + // Storage: System Account (r:1 w:1) fn unlocking_merge_schedules(l: u32, s: u32, ) -> Weight { - (57_544_000_u64) - // Standard Error: 1_000 - .saturating_add((145_000_u64).saturating_mul(l as Weight)) + (44_315_000 as Weight) + // Standard Error: 2_000 + .saturating_add((95_000 as Weight).saturating_mul(l as Weight)) // Standard Error: 3_000 - .saturating_add((185_000_u64).saturating_mul(s as Weight)) - .saturating_add(T::DbWeight::get().reads(3_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + .saturating_add((153_000 as Weight).saturating_mul(s as Weight)) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } } diff --git a/runtimes/peregrine/src/weights/pallet_web3-names.rs b/runtimes/peregrine/src/weights/pallet_web3-names.rs deleted file mode 100644 index 2645273ea..000000000 --- a/runtimes/peregrine/src/weights/pallet_web3-names.rs +++ /dev/null @@ -1,98 +0,0 @@ -// KILT Blockchain – https://botlabs.org -// Copyright (C) 2019-2022 BOTLabs GmbH - -// The KILT Blockchain is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. - -// The KILT Blockchain is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. - -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -// If you feel like getting in touch with us, you can do so at info@botlabs.org - -//! Autogenerated weights for pallet_web3_names -//! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2022-02-02, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 128 - -// Executed Command: -// target/release/kilt-parachain -// benchmark -// --chain=dev -// --steps=50 -// --repeat=20 -// --pallet=pallet-web3-names -// --extrinsic=* -// --execution=wasm -// --wasm-execution=compiled -// --heap-pages=4096 -// --output=./runtimes/peregrine/src/weights/pallet_web3-names.rs -// --template=.maintain/runtime-weight-template.hbs - -#![cfg_attr(rustfmt, rustfmt_skip)] -#![allow(unused_parens)] -#![allow(unused_imports)] -#![allow(clippy::unnecessary_cast)] - -use frame_support::{traits::Get, weights::Weight}; -use sp_std::marker::PhantomData; - -/// Weight functions for `pallet_web3_names`. -pub struct WeightInfo(PhantomData); -impl pallet_web3_names::WeightInfo for WeightInfo { - // Storage: Web3Names Names (r:1 w:1) - // Storage: Web3Names Owner (r:1 w:1) - // Storage: Web3Names Banned (r:1 w:0) - // Storage: System Account (r:1 w:1) - fn claim(n: u32, ) -> Weight { - (52_484_000 as Weight) - // Standard Error: 2_000 - .saturating_add((41_000 as Weight).saturating_mul(n as Weight)) - .saturating_add(T::DbWeight::get().reads(4 as Weight)) - .saturating_add(T::DbWeight::get().writes(3 as Weight)) - } - // Storage: Web3Names Names (r:1 w:1) - // Storage: Web3Names Owner (r:1 w:1) - // Storage: System Account (r:1 w:1) - fn release_by_owner() -> Weight { - (44_380_000 as Weight) - .saturating_add(T::DbWeight::get().reads(3 as Weight)) - .saturating_add(T::DbWeight::get().writes(3 as Weight)) - } - // Storage: Web3Names Owner (r:1 w:1) - // Storage: System Account (r:1 w:1) - // Storage: Web3Names Names (r:0 w:1) - fn reclaim_deposit(n: u32, ) -> Weight { - (44_143_000 as Weight) - // Standard Error: 3_000 - .saturating_add((7_000 as Weight).saturating_mul(n as Weight)) - .saturating_add(T::DbWeight::get().reads(2 as Weight)) - .saturating_add(T::DbWeight::get().writes(3 as Weight)) - } - // Storage: Web3Names Banned (r:1 w:1) - // Storage: Web3Names Owner (r:1 w:1) - // Storage: System Account (r:1 w:1) - // Storage: Web3Names Names (r:0 w:1) - fn ban(n: u32, ) -> Weight { - (47_664_000 as Weight) - // Standard Error: 4_000 - .saturating_add((29_000 as Weight).saturating_mul(n as Weight)) - .saturating_add(T::DbWeight::get().reads(3 as Weight)) - .saturating_add(T::DbWeight::get().writes(4 as Weight)) - } - // Storage: Web3Names Banned (r:1 w:1) - fn unban(n: u32, ) -> Weight { - (20_611_000 as Weight) - // Standard Error: 1_000 - .saturating_add((29_000 as Weight).saturating_mul(n as Weight)) - .saturating_add(T::DbWeight::get().reads(1 as Weight)) - .saturating_add(T::DbWeight::get().writes(1 as Weight)) - } -} diff --git a/runtimes/peregrine/src/weights/pallet_web3_names.rs b/runtimes/peregrine/src/weights/pallet_web3_names.rs index 7a2ecd543..995f67e51 100644 --- a/runtimes/peregrine/src/weights/pallet_web3_names.rs +++ b/runtimes/peregrine/src/weights/pallet_web3_names.rs @@ -19,14 +19,15 @@ //! Autogenerated weights for pallet_web3_names //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2022-01-26, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 128 +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 1024 // Executed Command: -// target/release/kilt-parachain +// ./target/release/kilt-parachain // benchmark +// pallet // --chain=dev -// --steps=50 +// --steps=1 // --repeat=20 // --pallet=pallet-web3-names // --extrinsic=* @@ -52,28 +53,27 @@ impl pallet_web3_names::WeightInfo for WeightInfo { // Storage: Web3Names Banned (r:1 w:0) // Storage: System Account (r:1 w:1) fn claim(n: u32, ) -> Weight { - (54_397_000 as Weight) + (46_312_000 as Weight) // Standard Error: 3_000 - .saturating_add((29_000 as Weight).saturating_mul(n as Weight)) + .saturating_add((25_000 as Weight).saturating_mul(n as Weight)) .saturating_add(T::DbWeight::get().reads(4 as Weight)) .saturating_add(T::DbWeight::get().writes(3 as Weight)) } + // Storage: Web3Names Names (r:1 w:1) // Storage: Web3Names Owner (r:1 w:1) // Storage: System Account (r:1 w:1) - // Storage: Web3Names Names (r:0 w:1) fn release_by_owner() -> Weight { - (43_897_000 as Weight) - // Standard Error: 3_000 - .saturating_add(T::DbWeight::get().reads(2 as Weight)) + (41_790_000 as Weight) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) .saturating_add(T::DbWeight::get().writes(3 as Weight)) } // Storage: Web3Names Owner (r:1 w:1) // Storage: System Account (r:1 w:1) // Storage: Web3Names Names (r:0 w:1) fn reclaim_deposit(n: u32, ) -> Weight { - (44_488_000 as Weight) - // Standard Error: 2_000 - .saturating_add((5_000 as Weight).saturating_mul(n as Weight)) + (39_385_000 as Weight) + // Standard Error: 4_000 + .saturating_add((36_000 as Weight).saturating_mul(n as Weight)) .saturating_add(T::DbWeight::get().reads(2 as Weight)) .saturating_add(T::DbWeight::get().writes(3 as Weight)) } @@ -82,17 +82,17 @@ impl pallet_web3_names::WeightInfo for WeightInfo { // Storage: System Account (r:1 w:1) // Storage: Web3Names Names (r:0 w:1) fn ban(n: u32, ) -> Weight { - (49_017_000 as Weight) - // Standard Error: 3_000 - .saturating_add((13_000 as Weight).saturating_mul(n as Weight)) + (42_203_000 as Weight) + // Standard Error: 2_000 + .saturating_add((72_000 as Weight).saturating_mul(n as Weight)) .saturating_add(T::DbWeight::get().reads(3 as Weight)) .saturating_add(T::DbWeight::get().writes(4 as Weight)) } // Storage: Web3Names Banned (r:1 w:1) fn unban(n: u32, ) -> Weight { - (21_396_000 as Weight) + (19_773_000 as Weight) // Standard Error: 1_000 - .saturating_add((29_000 as Weight).saturating_mul(n as Weight)) + .saturating_add((45_000 as Weight).saturating_mul(n as Weight)) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(1 as Weight)) } diff --git a/runtimes/peregrine/src/weights/parachain_staking.rs b/runtimes/peregrine/src/weights/parachain_staking.rs index 3afbbf67b..665223eaa 100644 --- a/runtimes/peregrine/src/weights/parachain_staking.rs +++ b/runtimes/peregrine/src/weights/parachain_staking.rs @@ -19,24 +19,24 @@ //! Autogenerated weights for parachain_staking //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2022-02-13, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 128 +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 1024 // Executed Command: -// target/release/kilt-parachain +// ./target/release/kilt-parachain // benchmark -// --chain=spiritnet-dev -// --steps=50 +// pallet +// --chain=dev +// --steps=1 // --repeat=20 // --pallet=parachain-staking // --extrinsic=* // --execution=wasm // --wasm-execution=compiled // --heap-pages=4096 -// --output=./runtimes/spiritnet/src/weights/parachain_staking.rs +// --output=./runtimes/peregrine/src/weights/parachain_staking.rs // --template=.maintain/runtime-weight-template.hbs - #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] @@ -50,12 +50,12 @@ pub struct WeightInfo(PhantomData); impl parachain_staking::WeightInfo for WeightInfo { // Storage: ParachainStaking Round (r:1 w:0) fn on_initialize_no_action() -> Weight { - (3_525_000 as Weight) + (3_723_000 as Weight) .saturating_add(T::DbWeight::get().reads(1 as Weight)) } // Storage: ParachainStaking Round (r:1 w:1) fn on_initialize_round_update() -> Weight { - (14_459_000 as Weight) + (18_017_000 as Weight) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(1 as Weight)) } @@ -63,7 +63,7 @@ impl parachain_staking::WeightInfo for WeightInfo { // Storage: ParachainStaking LastRewardReduction (r:1 w:1) // Storage: ParachainStaking InflationConfig (r:1 w:1) fn on_initialize_new_year() -> Weight { - (26_228_000 as Weight) + (31_315_000 as Weight) .saturating_add(T::DbWeight::get().reads(3 as Weight)) .saturating_add(T::DbWeight::get().writes(3 as Weight)) } @@ -74,36 +74,36 @@ impl parachain_staking::WeightInfo for WeightInfo { // Storage: ParachainStaking MaxSelectedCandidates (r:1 w:0) // Storage: System Account (r:1 w:1) fn on_initialize_network_rewards() -> Weight { - (55_319_000 as Weight) + (62_389_000 as Weight) .saturating_add(T::DbWeight::get().reads(6 as Weight)) .saturating_add(T::DbWeight::get().writes(4 as Weight)) } // Storage: ParachainStaking ForceNewRound (r:0 w:1) fn force_new_round() -> Weight { - (1_768_000 as Weight) + (2_001_000 as Weight) .saturating_add(T::DbWeight::get().writes(1 as Weight)) } // Storage: ParachainStaking InflationConfig (r:0 w:1) fn set_inflation() -> Weight { - (12_952_000 as Weight) + (15_420_000 as Weight) .saturating_add(T::DbWeight::get().writes(1 as Weight)) } // Storage: ParachainStaking MaxSelectedCandidates (r:1 w:1) // Storage: ParachainStaking TopCandidates (r:1 w:0) // Storage: ParachainStaking TotalCollatorStake (r:1 w:1) - // Storage: ParachainStaking CandidatePool (r:1 w:0) + // Storage: ParachainStaking CandidatePool (r:59 w:0) fn set_max_selected_candidates(n: u32, m: u32, ) -> Weight { (0 as Weight) - // Standard Error: 17_000 - .saturating_add((10_570_000 as Weight).saturating_mul(n as Weight)) - // Standard Error: 33_000 - .saturating_add((9_858_000 as Weight).saturating_mul(m as Weight)) + // Standard Error: 14_000 + .saturating_add((7_981_000 as Weight).saturating_mul(n as Weight)) + // Standard Error: 25_000 + .saturating_add((6_588_000 as Weight).saturating_mul(m as Weight)) .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(n as Weight))) .saturating_add(T::DbWeight::get().writes(2 as Weight)) } // Storage: ParachainStaking Round (r:1 w:1) fn set_blocks_per_round() -> Weight { - (15_586_000 as Weight) + (17_980_000 as Weight) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(1 as Weight)) } @@ -119,10 +119,10 @@ impl parachain_staking::WeightInfo for WeightInfo { // Storage: ParachainStaking TotalCollatorStake (r:1 w:1) fn force_remove_candidate(n: u32, m: u32, ) -> Weight { (0 as Weight) - // Standard Error: 18_000 - .saturating_add((3_615_000 as Weight).saturating_mul(n as Weight)) - // Standard Error: 32_000 - .saturating_add((23_037_000 as Weight).saturating_mul(m as Weight)) + // Standard Error: 31_000 + .saturating_add((3_278_000 as Weight).saturating_mul(n as Weight)) + // Standard Error: 52_000 + .saturating_add((21_750_000 as Weight).saturating_mul(m as Weight)) .saturating_add(T::DbWeight::get().reads(25 as Weight)) .saturating_add(T::DbWeight::get().reads((2 as Weight).saturating_mul(m as Weight))) .saturating_add(T::DbWeight::get().writes(7 as Weight)) @@ -139,11 +139,11 @@ impl parachain_staking::WeightInfo for WeightInfo { // Storage: ParachainStaking TotalCollatorStake (r:1 w:1) // Storage: ParachainStaking CounterForCandidatePool (r:1 w:1) fn join_candidates(n: u32, m: u32, ) -> Weight { - (0 as Weight) - // Standard Error: 18_000 - .saturating_add((2_514_000 as Weight).saturating_mul(n as Weight)) - // Standard Error: 44_000 - .saturating_add((4_377_000 as Weight).saturating_mul(m as Weight)) + (17_637_000 as Weight) + // Standard Error: 5_000 + .saturating_add((1_338_000 as Weight).saturating_mul(n as Weight)) + // Standard Error: 10_000 + .saturating_add((2_867_000 as Weight).saturating_mul(m as Weight)) .saturating_add(T::DbWeight::get().reads(10 as Weight)) .saturating_add(T::DbWeight::get().writes(7 as Weight)) } @@ -153,11 +153,11 @@ impl parachain_staking::WeightInfo for WeightInfo { // Storage: ParachainStaking MaxSelectedCandidates (r:1 w:0) // Storage: ParachainStaking TotalCollatorStake (r:1 w:1) fn init_leave_candidates(n: u32, m: u32, ) -> Weight { - (0 as Weight) - // Standard Error: 19_000 - .saturating_add((2_873_000 as Weight).saturating_mul(n as Weight)) - // Standard Error: 34_000 - .saturating_add((7_012_000 as Weight).saturating_mul(m as Weight)) + (43_107_000 as Weight) + // Standard Error: 6_000 + .saturating_add((1_585_000 as Weight).saturating_mul(n as Weight)) + // Standard Error: 11_000 + .saturating_add((3_718_000 as Weight).saturating_mul(m as Weight)) .saturating_add(T::DbWeight::get().reads(21 as Weight)) .saturating_add(T::DbWeight::get().writes(3 as Weight)) } @@ -167,10 +167,10 @@ impl parachain_staking::WeightInfo for WeightInfo { // Storage: ParachainStaking TotalCollatorStake (r:1 w:1) fn cancel_leave_candidates(n: u32, m: u32, ) -> Weight { (0 as Weight) - // Standard Error: 17_000 - .saturating_add((2_709_000 as Weight).saturating_mul(n as Weight)) - // Standard Error: 30_000 - .saturating_add((5_483_000 as Weight).saturating_mul(m as Weight)) + // Standard Error: 8_000 + .saturating_add((1_354_000 as Weight).saturating_mul(n as Weight)) + // Standard Error: 13_000 + .saturating_add((2_731_000 as Weight).saturating_mul(m as Weight)) .saturating_add(T::DbWeight::get().reads(5 as Weight)) .saturating_add(T::DbWeight::get().writes(3 as Weight)) } @@ -184,10 +184,10 @@ impl parachain_staking::WeightInfo for WeightInfo { // Storage: ParachainStaking CounterForCandidatePool (r:1 w:1) fn execute_leave_candidates(n: u32, m: u32, ) -> Weight { (0 as Weight) - // Standard Error: 20_000 - .saturating_add((4_307_000 as Weight).saturating_mul(n as Weight)) - // Standard Error: 37_000 - .saturating_add((24_082_000 as Weight).saturating_mul(m as Weight)) + // Standard Error: 25_000 + .saturating_add((2_586_000 as Weight).saturating_mul(n as Weight)) + // Standard Error: 41_000 + .saturating_add((20_179_000 as Weight).saturating_mul(m as Weight)) .saturating_add(T::DbWeight::get().reads(7 as Weight)) .saturating_add(T::DbWeight::get().reads((2 as Weight).saturating_mul(m as Weight))) .saturating_add(T::DbWeight::get().writes(5 as Weight)) @@ -203,12 +203,12 @@ impl parachain_staking::WeightInfo for WeightInfo { // Storage: ParachainStaking TotalCollatorStake (r:1 w:1) fn candidate_stake_more(n: u32, m: u32, u: u32, ) -> Weight { (0 as Weight) - // Standard Error: 17_000 - .saturating_add((3_682_000 as Weight).saturating_mul(n as Weight)) - // Standard Error: 41_000 - .saturating_add((7_135_000 as Weight).saturating_mul(m as Weight)) - // Standard Error: 246_000 - .saturating_add((2_235_000 as Weight).saturating_mul(u as Weight)) + // Standard Error: 5_000 + .saturating_add((1_577_000 as Weight).saturating_mul(n as Weight)) + // Standard Error: 11_000 + .saturating_add((3_284_000 as Weight).saturating_mul(m as Weight)) + // Standard Error: 46_000 + .saturating_add((976_000 as Weight).saturating_mul(u as Weight)) .saturating_add(T::DbWeight::get().reads(8 as Weight)) .saturating_add(T::DbWeight::get().writes(6 as Weight)) } @@ -219,10 +219,10 @@ impl parachain_staking::WeightInfo for WeightInfo { // Storage: ParachainStaking TotalCollatorStake (r:1 w:1) fn candidate_stake_less(n: u32, m: u32, ) -> Weight { (0 as Weight) - // Standard Error: 17_000 - .saturating_add((3_502_000 as Weight).saturating_mul(n as Weight)) - // Standard Error: 42_000 - .saturating_add((7_182_000 as Weight).saturating_mul(m as Weight)) + // Standard Error: 5_000 + .saturating_add((1_469_000 as Weight).saturating_mul(n as Weight)) + // Standard Error: 12_000 + .saturating_add((2_996_000 as Weight).saturating_mul(m as Weight)) .saturating_add(T::DbWeight::get().reads(5 as Weight)) .saturating_add(T::DbWeight::get().writes(4 as Weight)) } @@ -237,11 +237,11 @@ impl parachain_staking::WeightInfo for WeightInfo { // Storage: ParachainStaking MaxSelectedCandidates (r:1 w:0) // Storage: ParachainStaking TotalCollatorStake (r:1 w:1) fn join_delegators(n: u32, m: u32, ) -> Weight { - (0 as Weight) - // Standard Error: 20_000 - .saturating_add((3_803_000 as Weight).saturating_mul(n as Weight)) - // Standard Error: 54_000 - .saturating_add((8_007_000 as Weight).saturating_mul(m as Weight)) + (31_078_000 as Weight) + // Standard Error: 4_000 + .saturating_add((1_699_000 as Weight).saturating_mul(n as Weight)) + // Standard Error: 10_000 + .saturating_add((2_770_000 as Weight).saturating_mul(m as Weight)) .saturating_add(T::DbWeight::get().reads(11 as Weight)) .saturating_add(T::DbWeight::get().writes(8 as Weight)) } @@ -254,13 +254,13 @@ impl parachain_staking::WeightInfo for WeightInfo { // Storage: ParachainStaking MaxSelectedCandidates (r:1 w:0) // Storage: ParachainStaking TotalCollatorStake (r:1 w:1) fn delegator_stake_more(n: u32, m: u32, u: u32, ) -> Weight { - (0 as Weight) - // Standard Error: 21_000 - .saturating_add((3_810_000 as Weight).saturating_mul(n as Weight)) - // Standard Error: 58_000 - .saturating_add((7_940_000 as Weight).saturating_mul(m as Weight)) - // Standard Error: 371_000 - .saturating_add((3_810_000 as Weight).saturating_mul(u as Weight)) + (13_240_000 as Weight) + // Standard Error: 7_000 + .saturating_add((1_666_000 as Weight).saturating_mul(n as Weight)) + // Standard Error: 16_000 + .saturating_add((2_759_000 as Weight).saturating_mul(m as Weight)) + // Standard Error: 68_000 + .saturating_add((766_000 as Weight).saturating_mul(u as Weight)) .saturating_add(T::DbWeight::get().reads(8 as Weight)) .saturating_add(T::DbWeight::get().writes(7 as Weight)) } @@ -272,10 +272,10 @@ impl parachain_staking::WeightInfo for WeightInfo { // Storage: ParachainStaking TotalCollatorStake (r:1 w:1) fn delegator_stake_less(n: u32, m: u32, ) -> Weight { (0 as Weight) - // Standard Error: 19_000 - .saturating_add((3_567_000 as Weight).saturating_mul(n as Weight)) - // Standard Error: 51_000 - .saturating_add((7_292_000 as Weight).saturating_mul(m as Weight)) + // Standard Error: 4_000 + .saturating_add((1_569_000 as Weight).saturating_mul(n as Weight)) + // Standard Error: 10_000 + .saturating_add((2_722_000 as Weight).saturating_mul(m as Weight)) .saturating_add(T::DbWeight::get().reads(6 as Weight)) .saturating_add(T::DbWeight::get().writes(5 as Weight)) } @@ -286,11 +286,11 @@ impl parachain_staking::WeightInfo for WeightInfo { // Storage: ParachainStaking MaxSelectedCandidates (r:1 w:0) // Storage: ParachainStaking TotalCollatorStake (r:1 w:1) fn revoke_delegation(n: u32, m: u32, ) -> Weight { - (0 as Weight) - // Standard Error: 17_000 - .saturating_add((3_516_000 as Weight).saturating_mul(n as Weight)) - // Standard Error: 45_000 - .saturating_add((7_157_000 as Weight).saturating_mul(m as Weight)) + (2_496_000 as Weight) + // Standard Error: 5_000 + .saturating_add((1_619_000 as Weight).saturating_mul(n as Weight)) + // Standard Error: 12_000 + .saturating_add((2_730_000 as Weight).saturating_mul(m as Weight)) .saturating_add(T::DbWeight::get().reads(6 as Weight)) .saturating_add(T::DbWeight::get().writes(5 as Weight)) } @@ -302,10 +302,10 @@ impl parachain_staking::WeightInfo for WeightInfo { // Storage: ParachainStaking TotalCollatorStake (r:1 w:1) fn leave_delegators(n: u32, m: u32, ) -> Weight { (0 as Weight) - // Standard Error: 18_000 - .saturating_add((3_503_000 as Weight).saturating_mul(n as Weight)) - // Standard Error: 49_000 - .saturating_add((7_270_000 as Weight).saturating_mul(m as Weight)) + // Standard Error: 7_000 + .saturating_add((1_632_000 as Weight).saturating_mul(n as Weight)) + // Standard Error: 15_000 + .saturating_add((2_908_000 as Weight).saturating_mul(m as Weight)) .saturating_add(T::DbWeight::get().reads(6 as Weight)) .saturating_add(T::DbWeight::get().writes(5 as Weight)) } @@ -313,15 +313,15 @@ impl parachain_staking::WeightInfo for WeightInfo { // Storage: Balances Locks (r:1 w:1) // Storage: System Account (r:1 w:1) fn unlock_unstaked(u: u32, ) -> Weight { - (33_495_000 as Weight) - // Standard Error: 23_000 - .saturating_add((366_000 as Weight).saturating_mul(u as Weight)) + (34_358_000 as Weight) + // Standard Error: 10_000 + .saturating_add((551_000 as Weight).saturating_mul(u as Weight)) .saturating_add(T::DbWeight::get().reads(3 as Weight)) .saturating_add(T::DbWeight::get().writes(3 as Weight)) } // Storage: ParachainStaking MaxCollatorCandidateStake (r:0 w:1) fn set_max_candidate_stake() -> Weight { - (11_984_000 as Weight) + (14_071_000 as Weight) .saturating_add(T::DbWeight::get().writes(1 as Weight)) } } diff --git a/runtimes/spiritnet/Cargo.toml b/runtimes/spiritnet/Cargo.toml index 990cb454d..cd00edcb7 100644 --- a/runtimes/spiritnet/Cargo.toml +++ b/runtimes/spiritnet/Cargo.toml @@ -2,96 +2,96 @@ authors = ["KILT "] edition = "2021" name = "spiritnet-runtime" -version = "1.6.2" +version = "1.7.0" [build-dependencies] -substrate-wasm-builder = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} +substrate-wasm-builder = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} [dependencies] -codec = {package = "parity-scale-codec", version = "2.3.1", default-features = false, features = ["derive"]} -log = "0.4" -scale-info = {version = "1.0", default-features = false, features = ["derive"]} -smallvec = "1.7.0" +codec = {package = "parity-scale-codec", version = "3.1.2", default-features = false, features = ["derive"]} +log = "0.4.17" +scale-info = {version = "2.1.1", default-features = false, features = ["derive"]} +smallvec = "1.8.0" static_assertions = "1.1.0" hex-literal = {version = "0.3.4", optional = true} -serde = {version = "1.0.132", optional = true, features = ["derive"]} +serde = {version = "1.0.137", optional = true, features = ["derive"]} # RPC -frame-system-rpc-runtime-api = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -pallet-transaction-payment-rpc-runtime-api = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} +frame-system-rpc-runtime-api = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-transaction-payment-rpc-runtime-api = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} # KILT pallets & primitives attestation = {default-features = false, path = "../../pallets/attestation"} ctype = {default-features = false, path = "../../pallets/ctype"} delegation = {default-features = false, path = "../../pallets/delegation"} did = {default-features = false, path = "../../pallets/did"} -kilt-launch = {path = "../../pallets/kilt-launch", default-features = false} -pallet-web3-names = {path = "../../pallets/pallet-web3-names", default-features = false} kilt-support = {path = "../../support", default-features = false, optional = true} pallet-did-lookup = {default-features = false, path = "../../pallets/pallet-did-lookup"} pallet-inflation = {path = "../../pallets/pallet-inflation", default-features = false} +pallet-web3-names = {path = "../../pallets/pallet-web3-names", default-features = false} parachain-staking = {default-features = false, path = "../../pallets/parachain-staking"} runtime-common = {path = "../../runtimes/common", default-features = false} # Substrate dependencies -sp-api = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -sp-arithmetic = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -sp-block-builder = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -sp-consensus-aura = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -sp-core = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -sp-inherents = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -sp-io = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -sp-offchain = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -sp-runtime = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -sp-session = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -sp-std = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -sp-transaction-pool = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -sp-version = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} +sp-api = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +sp-arithmetic = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +sp-block-builder = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +sp-consensus-aura = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +sp-core = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +sp-inherents = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +sp-io = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +sp-offchain = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +sp-runtime = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +sp-session = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +sp-std = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +sp-transaction-pool = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +sp-version = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} -frame-benchmarking = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -frame-executive = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -frame-support = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -frame-system = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -pallet-aura = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -pallet-authorship = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -pallet-balances = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -pallet-collective = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -pallet-democracy = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -pallet-indices = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -pallet-membership = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -pallet-preimage = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -pallet-proxy = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17" } -pallet-randomness-collective-flip = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -pallet-scheduler = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -pallet-session = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -pallet-timestamp = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -pallet-transaction-payment = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -pallet-treasury = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -pallet-utility = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} -pallet-vesting = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17"} +frame-benchmarking = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +frame-executive = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +frame-support = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +frame-system = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-aura = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-authorship = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-balances = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-collective = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-democracy = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-indices = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-membership = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-preimage = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-proxy = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-randomness-collective-flip = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-scheduler = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-session = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-timestamp = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-tips = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-transaction-payment = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-treasury = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-utility = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} +pallet-vesting = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24"} # Cumulus dependencies -cumulus-pallet-aura-ext = {git = "https://github.com/paritytech/cumulus", default-features = false, branch = "polkadot-v0.9.17"} -cumulus-pallet-parachain-system = {git = "https://github.com/paritytech/cumulus", default-features = false, branch = "polkadot-v0.9.17"} -cumulus-pallet-xcmp-queue = {git = "https://github.com/paritytech/cumulus", default-features = false, branch = "polkadot-v0.9.17"} -cumulus-primitives-core = {git = "https://github.com/paritytech/cumulus", default-features = false, branch = "polkadot-v0.9.17"} -cumulus-primitives-timestamp = {git = "https://github.com/paritytech/cumulus", default-features = false, branch = "polkadot-v0.9.17"} -parachain-info = {git = "https://github.com/paritytech/cumulus", default-features = false, branch = "polkadot-v0.9.17"} +cumulus-pallet-aura-ext = {git = "https://github.com/paritytech/cumulus", default-features = false, branch = "polkadot-v0.9.24"} +cumulus-pallet-parachain-system = {git = "https://github.com/paritytech/cumulus", default-features = false, branch = "polkadot-v0.9.24"} +cumulus-pallet-xcmp-queue = {git = "https://github.com/paritytech/cumulus", default-features = false, branch = "polkadot-v0.9.24"} +cumulus-primitives-core = {git = "https://github.com/paritytech/cumulus", default-features = false, branch = "polkadot-v0.9.24"} +cumulus-primitives-timestamp = {git = "https://github.com/paritytech/cumulus", default-features = false, branch = "polkadot-v0.9.24"} +parachain-info = {git = "https://github.com/paritytech/cumulus", default-features = false, branch = "polkadot-v0.9.24"} # Polkadot dependencies -polkadot-parachain = {git = "https://github.com/paritytech/polkadot", default-features = false, branch = "release-v0.9.17"} -xcm = {git = "https://github.com/paritytech/polkadot", default-features = false, branch = "release-v0.9.17"} -xcm-builder = {git = "https://github.com/paritytech/polkadot", default-features = false, branch = "release-v0.9.17"} -xcm-executor = {git = "https://github.com/paritytech/polkadot", default-features = false, branch = "release-v0.9.17"} +polkadot-parachain = {git = "https://github.com/paritytech/polkadot", default-features = false, branch = "release-v0.9.24"} +xcm = {git = "https://github.com/paritytech/polkadot", default-features = false, branch = "release-v0.9.24"} +xcm-builder = {git = "https://github.com/paritytech/polkadot", default-features = false, branch = "release-v0.9.24"} +xcm-executor = {git = "https://github.com/paritytech/polkadot", default-features = false, branch = "release-v0.9.24"} # Benchmarking -cumulus-pallet-session-benchmarking = {git = "https://github.com/paritytech/cumulus", default-features = false, optional = true, branch = "polkadot-v0.9.17"} -frame-system-benchmarking = {git = "https://github.com/paritytech/substrate", default-features = false, optional = true, branch = "polkadot-v0.9.17"} -rococo-runtime = {git = "https://github.com/paritytech/polkadot", default-features = false, optional = true, branch = "release-v0.9.17"} +cumulus-pallet-session-benchmarking = {git = "https://github.com/paritytech/cumulus", default-features = false, optional = true, branch = "polkadot-v0.9.24"} +frame-system-benchmarking = {git = "https://github.com/paritytech/substrate", default-features = false, optional = true, branch = "polkadot-v0.9.24"} +rococo-runtime = {git = "https://github.com/paritytech/polkadot", default-features = false, optional = true, branch = "release-v0.9.24"} # Runtime tests -frame-try-runtime = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17", optional = true} +frame-try-runtime = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24", optional = true} [features] default = ["std"] @@ -108,7 +108,6 @@ runtime-benchmarks = [ "frame-system-benchmarking", "frame-system/runtime-benchmarks", "hex-literal", - "kilt-launch/runtime-benchmarks", "runtime-common/runtime-benchmarks", "kilt-support", "kilt-support/runtime-benchmarks", @@ -123,6 +122,7 @@ runtime-benchmarks = [ "pallet-proxy/runtime-benchmarks", "pallet-scheduler/runtime-benchmarks", "pallet-timestamp/runtime-benchmarks", + "pallet-tips/runtime-benchmarks", "pallet-treasury/runtime-benchmarks", "pallet-web3-names/runtime-benchmarks", "pallet-utility/runtime-benchmarks", @@ -145,11 +145,9 @@ std = [ "frame-benchmarking/std", "frame-executive/std", "frame-support/std", - "frame-system-benchmarking/std", "frame-system-rpc-runtime-api/std", "frame-system/std", "frame-try-runtime/std", - "kilt-launch/std", "log/std", "pallet-aura/std", "pallet-authorship/std", @@ -166,11 +164,13 @@ std = [ "pallet-scheduler/std", "pallet-session/std", "pallet-timestamp/std", + "pallet-tips/std", "pallet-transaction-payment-rpc-runtime-api/std", "pallet-transaction-payment/std", "pallet-treasury/std", - "pallet-web3-names/std", + "pallet-utility/std", "pallet-vesting/std", + "pallet-web3-names/std", "parachain-info/std", "parachain-staking/std", "polkadot-parachain/std", @@ -204,7 +204,6 @@ try-runtime = [ "frame-support/try-runtime", "frame-system/try-runtime", "frame-try-runtime", - "kilt-launch/try-runtime", "pallet-aura/try-runtime", "pallet-authorship/try-runtime", "pallet-balances/try-runtime", @@ -219,10 +218,12 @@ try-runtime = [ "pallet-scheduler/try-runtime", "pallet-session/try-runtime", "pallet-timestamp/try-runtime", + "pallet-tips/try-runtime", "pallet-transaction-payment/try-runtime", "pallet-treasury/try-runtime", "pallet-web3-names/try-runtime", "pallet-utility/try-runtime", "pallet-vesting/try-runtime", "parachain-staking/try-runtime", + "runtime-common/try-runtime", ] diff --git a/runtimes/spiritnet/src/lib.rs b/runtimes/spiritnet/src/lib.rs index 4630ed591..5abad285f 100644 --- a/runtimes/spiritnet/src/lib.rs +++ b/runtimes/spiritnet/src/lib.rs @@ -28,27 +28,26 @@ include!(concat!(env!("OUT_DIR"), "/wasm_binary.rs")); use codec::{Decode, Encode, MaxEncodedLen}; use frame_support::{ construct_runtime, parameter_types, - traits::{Contains, EnsureOneOf, InstanceFilter, PrivilegeCmp}, - weights::{constants::RocksDbWeight, Weight}, + traits::{EnsureOneOf, InstanceFilter, PrivilegeCmp}, + weights::{constants::RocksDbWeight, ConstantMultiplier, Weight}, }; use frame_system::EnsureRoot; use sp_api::impl_runtime_apis; -use sp_core::{ - u32_trait::{_1, _2, _3, _5}, - OpaqueMetadata, -}; +use sp_core::OpaqueMetadata; use sp_runtime::{ create_runtime_str, generic, impl_opaque_keys, traits::{AccountIdLookup, BlakeTwo256, Block as BlockT, ConvertInto, OpaqueKeys, Verify}, transaction_validity::{TransactionSource, TransactionValidity}, - ApplyExtrinsicResult, Perbill, Permill, Perquintill, RuntimeDebug, + ApplyExtrinsicResult, Perbill, Permill, RuntimeDebug, }; use sp_std::{cmp::Ordering, prelude::*}; use sp_version::RuntimeVersion; +use delegation::DelegationAc; pub use parachain_staking::InflationInfo; use runtime_common::{ - constants::{self, KILT, MICRO_KILT, MILLI_KILT}, + authorization::{AuthorizationId, PalletAuthorize}, + constants::{self, KILT, MILLI_KILT}, fees::{ToAuthor, WeightToFee}, pallet_id, AccountId, AuthorityId, Balance, BlockHashCount, BlockLength, BlockNumber, BlockWeights, DidIdentifier, FeeSplit, Hash, Header, Index, Signature, SlowAdjustingFeeUpdate, @@ -79,10 +78,10 @@ pub const VERSION: RuntimeVersion = RuntimeVersion { spec_name: create_runtime_str!("kilt-spiritnet"), impl_name: create_runtime_str!("kilt-spiritnet"), authoring_version: 1, - spec_version: 10620, + spec_version: 10700, impl_version: 0, apis: RUNTIME_API_VERSIONS, - transaction_version: 2, + transaction_version: 3, state_version: 0, }; @@ -101,16 +100,6 @@ parameter_types! { pub const SS58Prefix: u8 = 38; } -pub struct BaseFilter; -impl Contains for BaseFilter { - fn contains(c: &Call) -> bool { - !matches!( - c, - Call::KiltLaunch(kilt_launch::Call::locked_transfer { .. }) | Call::Delegation { .. } - ) - } -} - impl frame_system::Config for Runtime { /// The identifier used to distinguish between accounts. type AccountId = AccountId; @@ -144,7 +133,7 @@ impl frame_system::Config for Runtime { type OnNewAccount = (); type OnKilledAccount = (); type DbWeight = RocksDbWeight; - type BaseCallFilter = BaseFilter; + type BaseCallFilter = frame_support::traits::Everything; type SystemWeightInfo = weights::frame_system::WeightInfo; type BlockWeights = BlockWeights; type BlockLength = BlockLength; @@ -168,7 +157,6 @@ impl pallet_timestamp::Config for Runtime { parameter_types! { pub const ExistentialDeposit: u128 = 10 * MILLI_KILT; - pub const TransactionByteFee: u128 = MICRO_KILT; pub const MaxLocks: u32 = 50; pub const MaxReserves: u32 = 50; } @@ -195,18 +183,12 @@ impl pallet_balances::Config for Runtime { type ReserveIdentifier = [u8; 8]; } -parameter_types! { - /// This value increases the priority of `Operational` transactions by adding - /// a "virtual tip" that's equal to the `OperationalFeeMultiplier * final_fee`. - pub const OperationalFeeMultiplier: u8 = 5; -} - impl pallet_transaction_payment::Config for Runtime { type OnChargeTransaction = pallet_transaction_payment::CurrencyAdapter>>; - type TransactionByteFee = TransactionByteFee; - type OperationalFeeMultiplier = OperationalFeeMultiplier; + type OperationalFeeMultiplier = constants::fee::OperationalFeeMultiplier; type WeightToFee = WeightToFee; + type LengthToFee = ConstantMultiplier; type FeeMultiplierUpdate = SlowAdjustingFeeUpdate; } @@ -264,18 +246,14 @@ impl pallet_session::Config for Runtime { type WeightInfo = weights::pallet_session::WeightInfo; } -parameter_types! { - pub const MinVestedTransfer: Balance = constants::MIN_VESTED_TRANSFER_AMOUNT; -} - impl pallet_vesting::Config for Runtime { type Event = Event; type Currency = Balances; type BlockNumberToBalance = ConvertInto; // disable vested transfers by setting min amount to max balance - type MinVestedTransfer = MinVestedTransfer; + type MinVestedTransfer = constants::MinVestedTransfer; type WeightInfo = weights::pallet_vesting::WeightInfo; - const MAX_VESTING_SCHEDULES: u32 = runtime_common::constants::MAX_VESTING_SCHEDULES; + const MAX_VESTING_SCHEDULES: u32 = constants::MAX_VESTING_SCHEDULES; } parameter_types! { @@ -284,15 +262,6 @@ parameter_types! { pub const AutoUnlockBound: u32 = 100; } -impl kilt_launch::Config for Runtime { - type Event = Event; - type MaxClaims = MaxClaims; - type UsableBalance = UsableBalance; - type AutoUnlockBound = AutoUnlockBound; - type WeightInfo = weights::kilt_launch::WeightInfo; - type PalletId = pallet_id::Launch; -} - impl pallet_preimage::Config for Runtime { type WeightInfo = weights::pallet_preimage::WeightInfo; type Event = Event; @@ -309,10 +278,8 @@ parameter_types! { pub const NoPreimagePostponement: Option = Some(10); } -type ScheduleOrigin = EnsureOneOf< - EnsureRoot, - pallet_collective::EnsureProportionAtLeast<_1, _2, AccountId, CouncilCollective>, ->; +type ScheduleOrigin = + EnsureOneOf, pallet_collective::EnsureProportionAtLeast>; /// Used the compare the privilege of an origin inside the scheduler. pub struct OriginPrivilegeCmp; @@ -352,12 +319,6 @@ impl pallet_scheduler::Config for Runtime { } parameter_types! { - pub const LaunchPeriod: BlockNumber = constants::governance::LAUNCH_PERIOD; - pub const VotingPeriod: BlockNumber = constants::governance::VOTING_PERIOD; - pub const FastTrackVotingPeriod: BlockNumber = constants::governance::FAST_TRACK_VOTING_PERIOD; - pub const MinimumDeposit: Balance = constants::governance::MIN_DEPOSIT; - pub const EnactmentPeriod: BlockNumber = constants::governance::ENACTMENT_PERIOD; - pub const CooloffPeriod: BlockNumber = constants::governance::COOLOFF_PERIOD; pub const InstantAllowed: bool = true; pub const MaxVotes: u32 = 100; pub const MaxProposals: u32 = 100; @@ -367,43 +328,43 @@ impl pallet_democracy::Config for Runtime { type Proposal = Call; type Event = Event; type Currency = Balances; - type EnactmentPeriod = EnactmentPeriod; - type VoteLockingPeriod = VotingPeriod; - type LaunchPeriod = LaunchPeriod; - type VotingPeriod = VotingPeriod; - type MinimumDeposit = MinimumDeposit; + type EnactmentPeriod = constants::governance::EnactmentPeriod; + type VoteLockingPeriod = constants::governance::VotingPeriod; + type LaunchPeriod = constants::governance::LaunchPeriod; + type VotingPeriod = constants::governance::VotingPeriod; + type MinimumDeposit = constants::governance::MinimumDeposit; /// A straight majority of the council can decide what their next motion is. - type ExternalOrigin = pallet_collective::EnsureProportionAtLeast<_1, _2, AccountId, CouncilCollective>; + type ExternalOrigin = pallet_collective::EnsureProportionAtLeast; /// A majority can have the next scheduled referendum be a straight /// majority-carries vote. - type ExternalMajorityOrigin = pallet_collective::EnsureProportionAtLeast<_1, _2, AccountId, CouncilCollective>; + type ExternalMajorityOrigin = pallet_collective::EnsureProportionAtLeast; /// A unanimous council can have the next scheduled referendum be a straight /// default-carries (NTB) vote. - type ExternalDefaultOrigin = pallet_collective::EnsureProportionAtLeast<_1, _1, AccountId, CouncilCollective>; + type ExternalDefaultOrigin = pallet_collective::EnsureProportionAtLeast; /// Two thirds of the technical committee can have an /// ExternalMajority/ExternalDefault vote be tabled immediately and with a /// shorter voting/enactment period. - type FastTrackOrigin = pallet_collective::EnsureProportionAtLeast<_2, _3, AccountId, TechnicalCollective>; - type InstantOrigin = pallet_collective::EnsureProportionAtLeast<_1, _1, AccountId, TechnicalCollective>; + type FastTrackOrigin = pallet_collective::EnsureProportionAtLeast; + type InstantOrigin = pallet_collective::EnsureProportionAtLeast; type InstantAllowed = InstantAllowed; - type FastTrackVotingPeriod = FastTrackVotingPeriod; + type FastTrackVotingPeriod = constants::governance::FastTrackVotingPeriod; // To cancel a proposal which has been passed, 2/3 of the council must agree to // it. type CancellationOrigin = EnsureOneOf< EnsureRoot, - pallet_collective::EnsureProportionAtLeast<_2, _3, AccountId, CouncilCollective>, + pallet_collective::EnsureProportionAtLeast, >; // To cancel a proposal before it has been passed, the technical committee must // be unanimous or Root must agree. type CancelProposalOrigin = EnsureOneOf< EnsureRoot, - pallet_collective::EnsureProportionAtLeast<_1, _1, AccountId, TechnicalCollective>, + pallet_collective::EnsureProportionAtLeast, >; type BlacklistOrigin = EnsureRoot; // Any single technical committee member may veto a coming council proposal, // however they can only do it once and it lasts only for the cooloff period. type VetoOrigin = pallet_collective::EnsureMember; - type CooloffPeriod = CooloffPeriod; + type CooloffPeriod = constants::governance::CooloffPeriod; type PreimageByteDeposit = constants::ByteDeposit; type Slash = Treasury; type Scheduler = Scheduler; @@ -423,15 +384,11 @@ parameter_types! { pub const MaxApprovals: u32 = 100; } -type ApproveOrigin = EnsureOneOf< - EnsureRoot, - pallet_collective::EnsureProportionAtLeast<_3, _5, AccountId, CouncilCollective>, ->; +type ApproveOrigin = + EnsureOneOf, pallet_collective::EnsureProportionAtLeast>; -type MoreThanHalfCouncil = EnsureOneOf< - EnsureRoot, - pallet_collective::EnsureProportionMoreThan<_1, _2, AccountId, CouncilCollective>, ->; +type MoreThanHalfCouncil = + EnsureOneOf, pallet_collective::EnsureProportionMoreThan>; impl pallet_treasury::Config for Runtime { type PalletId = pallet_id::Treasury; @@ -451,43 +408,32 @@ impl pallet_treasury::Config for Runtime { type MaxApprovals = MaxApprovals; } -parameter_types! { - pub const CouncilMotionDuration: BlockNumber = constants::governance::COUNCIL_MOTION_DURATION; - pub const CouncilMaxProposals: u32 = 100; - pub const CouncilMaxMembers: u32 = 100; -} - type CouncilCollective = pallet_collective::Instance1; impl pallet_collective::Config for Runtime { type Origin = Origin; type Proposal = Call; type Event = Event; - type MotionDuration = CouncilMotionDuration; - type MaxProposals = CouncilMaxProposals; - type MaxMembers = CouncilMaxMembers; + type MotionDuration = constants::governance::CouncilMotionDuration; + type MaxProposals = constants::governance::CouncilMaxProposals; + type MaxMembers = constants::governance::CouncilMaxMembers; type DefaultVote = pallet_collective::PrimeDefaultVote; type WeightInfo = weights::pallet_collective::WeightInfo; } -parameter_types! { - pub const TechnicalMotionDuration: BlockNumber = constants::governance::TECHNICAL_MOTION_DURATION; - pub const TechnicalMaxProposals: u32 = 100; - pub const TechnicalMaxMembers: u32 = 100; -} - type TechnicalCollective = pallet_collective::Instance2; impl pallet_collective::Config for Runtime { type Origin = Origin; type Proposal = Call; type Event = Event; - type MotionDuration = TechnicalMotionDuration; - type MaxProposals = TechnicalMaxProposals; - type MaxMembers = TechnicalMaxMembers; + type MotionDuration = constants::governance::TechnicalMotionDuration; + type MaxProposals = constants::governance::TechnicalMaxProposals; + type MaxMembers = constants::governance::TechnicalMaxMembers; type DefaultVote = pallet_collective::PrimeDefaultVote; type WeightInfo = weights::pallet_collective::WeightInfo; } -impl pallet_membership::Config for Runtime { +type TechnicalMembershipProvider = pallet_membership::Instance1; +impl pallet_membership::Config for Runtime { type Event = Event; type AddOrigin = MoreThanHalfCouncil; type RemoveOrigin = MoreThanHalfCouncil; @@ -496,13 +442,33 @@ impl pallet_membership::Config for Runtime { type PrimeOrigin = MoreThanHalfCouncil; type MembershipInitialized = TechnicalCommittee; type MembershipChanged = TechnicalCommittee; - type MaxMembers = TechnicalMaxMembers; + type MaxMembers = constants::governance::TechnicalMaxMembers; type WeightInfo = weights::pallet_membership::WeightInfo; } -parameter_types! { - pub const MaxDelegatedAttestations: u32 = 1000; - pub const AttestationDeposit: Balance = constants::attestation::ATTESTATION_DEPOSIT; +type TipsMembershipProvider = pallet_membership::Instance2; +impl pallet_membership::Config for Runtime { + type Event = Event; + type AddOrigin = MoreThanHalfCouncil; + type RemoveOrigin = MoreThanHalfCouncil; + type SwapOrigin = MoreThanHalfCouncil; + type ResetOrigin = MoreThanHalfCouncil; + type PrimeOrigin = MoreThanHalfCouncil; + type MembershipInitialized = (); + type MembershipChanged = (); + type MaxMembers = constants::governance::TechnicalMaxMembers; + type WeightInfo = weights::pallet_membership::WeightInfo; +} + +impl pallet_tips::Config for Runtime { + type MaximumReasonLength = constants::tips::MaximumReasonLength; + type DataDepositPerByte = constants::ByteDeposit; + type Tippers = runtime_common::Tippers; + type TipCountdown = constants::tips::TipCountdown; + type TipFindersFee = constants::tips::TipFindersFee; + type TipReportDepositBase = constants::tips::TipReportDepositBase; + type Event = Event; + type WeightInfo = weights::pallet_tips::WeightInfo; } impl attestation::Config for Runtime { @@ -513,18 +479,11 @@ impl attestation::Config for Runtime { type WeightInfo = weights::attestation::WeightInfo; type Currency = Balances; - type Deposit = AttestationDeposit; - type MaxDelegatedAttestations = MaxDelegatedAttestations; -} - -parameter_types! { - pub const MaxSignatureByteLength: u16 = constants::delegation::MAX_SIGNATURE_BYTE_LENGTH; - pub const MaxParentChecks: u32 = constants::delegation::MAX_PARENT_CHECKS; - pub const MaxRevocations: u32 = constants::delegation::MAX_REVOCATIONS; - pub const MaxRemovals: u32 = constants::delegation::MAX_REMOVALS; - #[derive(Clone)] - pub const MaxChildren: u32 = constants::delegation::MAX_CHILDREN; - pub const DelegationDeposit: Balance = constants::delegation::DELEGATION_DEPOSIT; + type Deposit = constants::attestation::AttestationDeposit; + type MaxDelegatedAttestations = constants::attestation::MaxDelegatedAttestations; + type AttesterId = DidIdentifier; + type AuthorizationId = AuthorizationId<::DelegationNodeId>; + type AccessControl = PalletAuthorize>; } impl delegation::Config for Runtime { @@ -545,24 +504,20 @@ impl delegation::Config for Runtime { type DelegationSignatureVerification = AlwaysVerify, Self::Signature>; type Event = Event; - type MaxSignatureByteLength = MaxSignatureByteLength; - type MaxParentChecks = MaxParentChecks; - type MaxRevocations = MaxRevocations; - type MaxRemovals = MaxRemovals; - type MaxChildren = MaxChildren; + type MaxSignatureByteLength = constants::delegation::MaxSignatureByteLength; + type MaxParentChecks = constants::delegation::MaxParentChecks; + type MaxRevocations = constants::delegation::MaxRevocations; + type MaxRemovals = constants::delegation::MaxRemovals; + type MaxChildren = constants::delegation::MaxChildren; type WeightInfo = weights::delegation::WeightInfo; type Currency = Balances; - type Deposit = DelegationDeposit; -} - -parameter_types! { - pub const Fee: Balance = MILLI_KILT; + type Deposit = constants::delegation::DelegationDeposit; } impl ctype::Config for Runtime { type CtypeCreatorId = AccountId; type Currency = Balances; - type Fee = Fee; + type Fee = constants::CtypeFee; type FeeCollector = Treasury; type EnsureOrigin = did::EnsureDidOrigin; @@ -572,35 +527,14 @@ impl ctype::Config for Runtime { type WeightInfo = weights::ctype::WeightInfo; } -parameter_types! { - pub const MaxNewKeyAgreementKeys: u32 = constants::did::MAX_KEY_AGREEMENT_KEYS; - #[derive(Debug, Clone, PartialEq)] - pub const MaxUrlLength: u32 = constants::did::MAX_URL_LENGTH; - pub const MaxPublicKeysPerDid: u32 = constants::did::MAX_PUBLIC_KEYS_PER_DID; - #[derive(Debug, Clone, PartialEq)] - pub const MaxTotalKeyAgreementKeys: u32 = constants::did::MAX_TOTAL_KEY_AGREEMENT_KEYS; - #[derive(Debug, Clone, PartialEq)] - pub const MaxEndpointUrlsCount: u32 = constants::did::MAX_ENDPOINT_URLS_COUNT; - // Standalone block time is half the duration of a parachain block. - pub const MaxBlocksTxValidity: BlockNumber = constants::did::MAX_BLOCKS_TX_VALIDITY; - pub const DidDeposit: Balance = constants::did::DID_DEPOSIT; - pub const DidFee: Balance = constants::did::DID_FEE; - pub const MaxNumberOfServicesPerDid: u32 = constants::did::MAX_NUMBER_OF_SERVICES_PER_DID; - pub const MaxServiceIdLength: u32 = constants::did::MAX_SERVICE_ID_LENGTH; - pub const MaxServiceTypeLength: u32 = constants::did::MAX_SERVICE_TYPE_LENGTH; - pub const MaxServiceUrlLength: u32 = constants::did::MAX_SERVICE_URL_LENGTH; - pub const MaxNumberOfTypesPerService: u32 = constants::did::MAX_NUMBER_OF_TYPES_PER_SERVICE; - pub const MaxNumberOfUrlsPerService: u32 = constants::did::MAX_NUMBER_OF_URLS_PER_SERVICE; -} - impl did::Config for Runtime { type DidIdentifier = DidIdentifier; type Event = Event; type Call = Call; type Origin = Origin; type Currency = Balances; - type Deposit = DidDeposit; - type Fee = DidFee; + type Deposit = constants::did::DidDeposit; + type Fee = constants::did::DidFee; type FeeCollector = Treasury; #[cfg(not(feature = "runtime-benchmarks"))] @@ -613,23 +547,19 @@ impl did::Config for Runtime { #[cfg(feature = "runtime-benchmarks")] type OriginSuccess = DidIdentifier; - type MaxNewKeyAgreementKeys = MaxNewKeyAgreementKeys; - type MaxTotalKeyAgreementKeys = MaxTotalKeyAgreementKeys; - type MaxPublicKeysPerDid = MaxPublicKeysPerDid; - type MaxBlocksTxValidity = MaxBlocksTxValidity; - type MaxNumberOfServicesPerDid = MaxNumberOfServicesPerDid; - type MaxServiceIdLength = MaxServiceIdLength; - type MaxServiceTypeLength = MaxServiceTypeLength; - type MaxServiceUrlLength = MaxServiceUrlLength; - type MaxNumberOfTypesPerService = MaxNumberOfTypesPerService; - type MaxNumberOfUrlsPerService = MaxNumberOfUrlsPerService; + type MaxNewKeyAgreementKeys = constants::did::MaxNewKeyAgreementKeys; + type MaxTotalKeyAgreementKeys = constants::did::MaxTotalKeyAgreementKeys; + type MaxPublicKeysPerDid = constants::did::MaxPublicKeysPerDid; + type MaxBlocksTxValidity = constants::did::MaxBlocksTxValidity; + type MaxNumberOfServicesPerDid = constants::did::MaxNumberOfServicesPerDid; + type MaxServiceIdLength = constants::did::MaxServiceIdLength; + type MaxServiceTypeLength = constants::did::MaxServiceTypeLength; + type MaxServiceUrlLength = constants::did::MaxServiceUrlLength; + type MaxNumberOfTypesPerService = constants::did::MaxNumberOfTypesPerService; + type MaxNumberOfUrlsPerService = constants::did::MaxNumberOfUrlsPerService; type WeightInfo = weights::did::WeightInfo; } -parameter_types! { - pub const DidLookupDeposit: Balance = constants::did_lookup::DID_CONNECTION_DEPOSIT; -} - impl pallet_did_lookup::Config for Runtime { type Event = Event; type Signature = Signature; @@ -637,7 +567,7 @@ impl pallet_did_lookup::Config for Runtime { type DidIdentifier = DidIdentifier; type Currency = Balances; - type Deposit = DidLookupDeposit; + type Deposit = constants::did_lookup::DidLookupDeposit; type EnsureOrigin = did::EnsureDidOrigin; type OriginSuccess = did::DidRawOrigin; @@ -645,98 +575,55 @@ impl pallet_did_lookup::Config for Runtime { type WeightInfo = weights::pallet_did_lookup::WeightInfo; } -parameter_types! { - pub const Web3NameDeposit: Balance = constants::web3_names::DEPOSIT; - pub const MinNameLength: u32 = constants::web3_names::MIN_LENGTH; - pub const MaxNameLength: u32 = constants::web3_names::MAX_LENGTH; -} - impl pallet_web3_names::Config for Runtime { type BanOrigin = EnsureRoot; type OwnerOrigin = did::EnsureDidOrigin; type OriginSuccess = did::DidRawOrigin; type Currency = Balances; - type Deposit = Web3NameDeposit; + type Deposit = constants::web3_names::Web3NameDeposit; type Event = Event; - type MaxNameLength = MaxNameLength; - type MinNameLength = MinNameLength; - type Web3Name = pallet_web3_names::web3_name::AsciiWeb3Name; + type MaxNameLength = constants::web3_names::MaxNameLength; + type MinNameLength = constants::web3_names::MinNameLength; + type Web3Name = pallet_web3_names::web3_name::AsciiWeb3Name; type Web3NameOwner = DidIdentifier; type WeightInfo = weights::pallet_web3_names::WeightInfo; } -parameter_types! { - pub const InitialPeriodLength: BlockNumber = constants::treasury::INITIAL_PERIOD_LENGTH; - pub const InitialPeriodReward: Balance = constants::treasury::INITIAL_PERIOD_REWARD_PER_BLOCK; -} - impl pallet_inflation::Config for Runtime { type Currency = Balances; - type InitialPeriodLength = InitialPeriodLength; - type InitialPeriodReward = InitialPeriodReward; + type InitialPeriodLength = constants::treasury::InitialPeriodLength; + type InitialPeriodReward = constants::treasury::InitialPeriodReward; type Beneficiary = Treasury; type WeightInfo = weights::pallet_inflation::WeightInfo; } -parameter_types! { - /// Minimum round length is 1 hour - pub const MinBlocksPerRound: BlockNumber = constants::staking::MIN_BLOCKS_PER_ROUND; - /// Default length of a round/session is 2 hours - pub const DefaultBlocksPerRound: BlockNumber = constants::staking::DEFAULT_BLOCKS_PER_ROUND; - /// Unstaked balance can be unlocked after 7 days - pub const StakeDuration: BlockNumber = constants::staking::STAKE_DURATION; - /// Collator exit requests are delayed by 4 hours (2 rounds/sessions) - pub const ExitQueueDelay: u32 = 2; - /// Minimum 16 collators selected per round, default at genesis and minimum forever after - pub const MinCollators: u32 = constants::staking::MIN_COLLATORS; - /// At least 4 candidates which cannot leave the network if there are no other candidates. - pub const MinRequiredCollators: u32 = 4; - /// We only allow one delegation per round. - pub const MaxDelegationsPerRound: u32 = 1; - /// Maximum 25 delegators per collator at launch, might be increased later - #[derive(Debug, PartialEq)] - pub const MaxDelegatorsPerCollator: u32 = constants::staking::MAX_DELEGATORS_PER_COLLATOR; - /// Maximum 1 collator per delegator at launch, will be increased later - #[derive(Debug, PartialEq)] - pub const MaxCollatorsPerDelegator: u32 = 1; - /// Minimum stake required to be reserved to be a collator is 10_000 - pub const MinCollatorStake: Balance = 10_000 * KILT; - /// Minimum stake required to be reserved to be a delegator is 1000 - pub const MinDelegatorStake: Balance = constants::staking::MIN_DELEGATOR_STAKE; - /// Maximum number of collator candidates - #[derive(Debug, PartialEq)] - pub const MaxCollatorCandidates: u32 = constants::staking::MAX_CANDIDATES; - /// Maximum number of concurrent requests to unlock unstaked balance - pub const MaxUnstakeRequests: u32 = 10; - /// The starting block number for the network rewards - pub const NetworkRewardStart: BlockNumber = constants::treasury::INITIAL_PERIOD_LENGTH; - /// The rate in percent for the network rewards - pub const NetworkRewardRate: Perquintill = constants::staking::NETWORK_REWARD_RATE; -} - impl parachain_staking::Config for Runtime { type Event = Event; type Currency = Balances; type CurrencyBalance = Balance; - type MinBlocksPerRound = MinBlocksPerRound; - type DefaultBlocksPerRound = DefaultBlocksPerRound; - type StakeDuration = StakeDuration; - type ExitQueueDelay = ExitQueueDelay; - type MinCollators = MinCollators; - type MinRequiredCollators = MinRequiredCollators; - type MaxDelegationsPerRound = MaxDelegationsPerRound; - type MaxDelegatorsPerCollator = MaxDelegatorsPerCollator; - type MaxCollatorsPerDelegator = MaxCollatorsPerDelegator; - type MinCollatorStake = MinCollatorStake; - type MinCollatorCandidateStake = MinCollatorStake; - type MaxTopCandidates = MaxCollatorCandidates; - type MinDelegation = MinDelegatorStake; - type MinDelegatorStake = MinDelegatorStake; - type MaxUnstakeRequests = MaxUnstakeRequests; - type NetworkRewardRate = NetworkRewardRate; - type NetworkRewardStart = NetworkRewardStart; + + type MinBlocksPerRound = constants::staking::MinBlocksPerRound; + type DefaultBlocksPerRound = constants::staking::DefaultBlocksPerRound; + type StakeDuration = constants::staking::StakeDuration; + type ExitQueueDelay = constants::staking::ExitQueueDelay; + type MinCollators = constants::staking::MinCollators; + type MinRequiredCollators = constants::staking::MinRequiredCollators; + type MaxDelegationsPerRound = constants::staking::MaxDelegationsPerRound; + type MaxDelegatorsPerCollator = constants::staking::MaxDelegatorsPerCollator; + type MaxCollatorsPerDelegator = constants::staking::MaxCollatorsPerDelegator; + type MinCollatorStake = constants::staking::MinCollatorStake; + type MinCollatorCandidateStake = constants::staking::MinCollatorStake; + type MaxTopCandidates = constants::staking::MaxCollatorCandidates; + type MinDelegation = constants::staking::MinDelegatorStake; + type MinDelegatorStake = constants::staking::MinDelegatorStake; + type MaxUnstakeRequests = constants::staking::MaxUnstakeRequests; + type NetworkRewardRate = constants::staking::NetworkRewardRate; + type NetworkRewardStart = constants::staking::NetworkRewardStart; + type NetworkRewardBeneficiary = Treasury; type WeightInfo = weights::parachain_staking::WeightInfo; + + const BLOCKS_PER_YEAR: Self::BlockNumber = constants::BLOCKS_PER_YEAR; } impl pallet_utility::Config for Runtime { @@ -794,7 +681,6 @@ impl InstanceFilter for ProxyType { | pallet_indices::Call::free { .. } | pallet_indices::Call::freeze { .. } ) - // Excludes `KiltLaunch` | Call::ParachainStaking(..) // Excludes `ParachainSystem` | Call::Preimage(..) @@ -804,6 +690,7 @@ impl InstanceFilter for ProxyType { | Call::System(..) | Call::TechnicalCommittee(..) | Call::TechnicalMembership(..) + | Call::TipsMembership(..) | Call::Timestamp(..) | Call::Treasury(..) | Call::Utility(..) @@ -856,7 +743,6 @@ impl InstanceFilter for ProxyType { | pallet_did_lookup::Call::remove_sender_association { .. } ) | Call::Indices(..) - // Excludes `KiltLaunch` | Call::ParachainStaking(..) // Excludes `ParachainSystem` | Call::Preimage(..) @@ -866,6 +752,7 @@ impl InstanceFilter for ProxyType { | Call::System(..) | Call::TechnicalCommittee(..) | Call::TechnicalMembership(..) + | Call::TipsMembership(..) | Call::Timestamp(..) | Call::Treasury(..) | Call::Utility(..) @@ -883,6 +770,7 @@ impl InstanceFilter for ProxyType { | Call::Democracy(..) | Call::TechnicalCommittee(..) | Call::TechnicalMembership(..) + | Call::TipsMembership(..) | Call::Treasury(..) | Call::Utility(..) ), ProxyType::ParachainStaking => { @@ -952,7 +840,7 @@ construct_runtime! { Council: pallet_collective:: = 31, TechnicalCommittee: pallet_collective:: = 32, // placeholder: parachain council election = 33, - TechnicalMembership: pallet_membership = 34, + TechnicalMembership: pallet_membership:: = 34, Treasury: pallet_treasury = 35, // Utility module. @@ -970,8 +858,12 @@ construct_runtime! { // Preimage registrar Preimage: pallet_preimage::{Pallet, Call, Storage, Event} = 44, + // Tips module to reward contributions to the ecosystem with small amount of KILTs. + TipsMembership: pallet_membership:: = 45, + Tips: pallet_tips::{Pallet, Call, Storage, Event} = 46, + // KILT Pallets. Start indices 60 to leave room - KiltLaunch: kilt_launch = 60, + // DELETED: KiltLaunch: kilt_launch = 60, Ctype: ctype = 61, Attestation: attestation = 62, Delegation: delegation = 63, @@ -1046,6 +938,7 @@ pub type SignedBlock = generic::SignedBlock; pub type BlockId = generic::BlockId; /// The SignedExtension to the basic transaction logic. pub type SignedExtra = ( + frame_system::CheckNonZeroSender, frame_system::CheckSpecVersion, frame_system::CheckTxVersion, frame_system::CheckGenesis, @@ -1067,7 +960,7 @@ pub type Executive = frame_executive::Executive< // Executes pallet hooks in reverse order of definition in construct_runtime // If we want to switch to AllPalletsWithSystem, we need to reorder the staking pallets AllPalletsReversedWithSystemFirst, - pallet_did_lookup::migrations::LookupReverseIndexMigration, + runtime_common::migrations::RemoveKiltLaunch, >; impl_runtime_apis! { @@ -1200,6 +1093,7 @@ impl_runtime_apis! { list_benchmark!(list, extra, pallet_preimage, Preimage); list_benchmark!(list, extra, pallet_scheduler, Scheduler); list_benchmark!(list, extra, pallet_timestamp, Timestamp); + list_benchmark!(list, extra, pallet_tips, Tips); list_benchmark!(list, extra, pallet_treasury, Treasury); list_benchmark!(list, extra, pallet_utility, Utility); list_benchmark!(list, extra, pallet_vesting, Vesting); @@ -1211,7 +1105,6 @@ impl_runtime_apis! { list_benchmark!(list, extra, delegation, Delegation); list_benchmark!(list, extra, did, Did); list_benchmark!(list, extra, pallet_did_lookup, DidLookup); - list_benchmark!(list, extra, kilt_launch, KiltLaunch); list_benchmark!(list, extra, pallet_inflation, Inflation); list_benchmark!(list, extra, parachain_staking, ParachainStaking); list_benchmark!(list, extra, pallet_web3_names, Web3Names); @@ -1249,8 +1142,6 @@ impl_runtime_apis! { // System Events hex_literal::hex!("26aa394eea5630e07c48ae0c9558cef780d41e5e16056765bc8461851072c9d7") .to_vec().into(), - // KiltLaunch transfer account - hex_literal::hex!("6a3c793cec9dbe330b349dc4eea6801090f5e71f53b1b41ad11afb4a313a282c").to_vec().into(), ]; let mut batches = Vec::::new(); @@ -1268,6 +1159,7 @@ impl_runtime_apis! { add_benchmark!(params, batches, pallet_session, SessionBench::); add_benchmark!(params, batches, frame_system, SystemBench::); add_benchmark!(params, batches, pallet_timestamp, Timestamp); + add_benchmark!(params, batches, pallet_tips, Tips); add_benchmark!(params, batches, pallet_treasury, Treasury); add_benchmark!(params, batches, pallet_utility, Utility); add_benchmark!(params, batches, pallet_vesting, Vesting); @@ -1279,7 +1171,6 @@ impl_runtime_apis! { add_benchmark!(params, batches, delegation, Delegation); add_benchmark!(params, batches, did, Did); add_benchmark!(params, batches, pallet_did_lookup, DidLookup); - add_benchmark!(params, batches, kilt_launch, KiltLaunch); add_benchmark!(params, batches, pallet_inflation, Inflation); add_benchmark!(params, batches, parachain_staking, ParachainStaking); add_benchmark!(params, batches, pallet_web3_names, Web3Names); diff --git a/runtimes/spiritnet/src/weights/attestation.rs b/runtimes/spiritnet/src/weights/attestation.rs index 2b0ed7bcb..d86b556c7 100644 --- a/runtimes/spiritnet/src/weights/attestation.rs +++ b/runtimes/spiritnet/src/weights/attestation.rs @@ -19,14 +19,15 @@ //! Autogenerated weights for attestation //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2021-10-17, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 128 +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 1024 // Executed Command: // ./target/release/kilt-parachain // benchmark +// pallet // --chain=spiritnet-dev -// --steps=50 +// --steps=1 // --repeat=20 // --pallet=attestation // --extrinsic=* @@ -36,41 +37,43 @@ // --output=./runtimes/spiritnet/src/weights/attestation.rs // --template=.maintain/runtime-weight-template.hbs - #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] +#![allow(clippy::unnecessary_cast)] use frame_support::{traits::Get, weights::Weight}; use sp_std::marker::PhantomData; -/// Weights for attestation using the recommended hardware. +/// Weight functions for `attestation`. pub struct WeightInfo(PhantomData); impl attestation::WeightInfo for WeightInfo { + // Storage: Ctype Ctypes (r:1 w:0) + // Storage: Attestation Attestations (r:1 w:1) + // Storage: System Account (r:1 w:1) fn add() -> Weight { - (74_334_000_u64) - .saturating_add(T::DbWeight::get().reads(6_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + (38_475_000 as Weight) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) } - fn revoke(d: u32, ) -> Weight { - (37_282_000_u64) - // Standard Error: 42_000 - .saturating_add((6_344_000_u64).saturating_mul(d as Weight)) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(d as Weight))) - .saturating_add(T::DbWeight::get().writes(1_u64)) + // Storage: Attestation Attestations (r:1 w:1) + fn revoke() -> Weight { + (22_274_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } - fn remove(d: u32, ) -> Weight { - (64_367_000_u64) - // Standard Error: 58_000 - .saturating_add((6_230_000_u64).saturating_mul(d as Weight)) - .saturating_add(T::DbWeight::get().reads(4_u64)) - .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(d as Weight))) - .saturating_add(T::DbWeight::get().writes(3_u64)) + // Storage: Attestation Attestations (r:1 w:1) + // Storage: System Account (r:1 w:1) + fn remove() -> Weight { + (37_192_000 as Weight) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) } + // Storage: Attestation Attestations (r:1 w:1) + // Storage: System Account (r:1 w:1) fn reclaim_deposit() -> Weight { - (57_366_000_u64) - .saturating_add(T::DbWeight::get().reads(3_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + (37_573_000 as Weight) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) } } diff --git a/runtimes/spiritnet/src/weights/ctype.rs b/runtimes/spiritnet/src/weights/ctype.rs index 221405e6d..a3c81a9e0 100644 --- a/runtimes/spiritnet/src/weights/ctype.rs +++ b/runtimes/spiritnet/src/weights/ctype.rs @@ -19,14 +19,15 @@ //! Autogenerated weights for ctype //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2021-11-26, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 128 +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 1024 // Executed Command: -// target/release/kilt-parachain +// ./target/release/kilt-parachain // benchmark +// pallet // --chain=spiritnet-dev -// --steps=50 +// --steps=1 // --repeat=20 // --pallet=ctype // --extrinsic=* @@ -36,7 +37,6 @@ // --output=./runtimes/spiritnet/src/weights/ctype.rs // --template=.maintain/runtime-weight-template.hbs - #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] @@ -51,7 +51,7 @@ impl ctype::WeightInfo for WeightInfo { // Storage: System Account (r:2 w:2) // Storage: Ctype Ctypes (r:1 w:1) fn add(l: u32, ) -> Weight { - (7_425_000 as Weight) + (55_554_000 as Weight) // Standard Error: 0 .saturating_add((2_000 as Weight).saturating_mul(l as Weight)) .saturating_add(T::DbWeight::get().reads(3 as Weight)) diff --git a/runtimes/spiritnet/src/weights/delegation.rs b/runtimes/spiritnet/src/weights/delegation.rs index 2d6a0802b..d2e582f30 100644 --- a/runtimes/spiritnet/src/weights/delegation.rs +++ b/runtimes/spiritnet/src/weights/delegation.rs @@ -19,14 +19,15 @@ //! Autogenerated weights for delegation //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2021-11-08, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 128 +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 1024 // Executed Command: -// target/release/kilt-parachain +// ./target/release/kilt-parachain // benchmark +// pallet // --chain=spiritnet-dev -// --steps=50 +// --steps=1 // --repeat=20 // --pallet=delegation // --extrinsic=* @@ -36,7 +37,6 @@ // --output=./runtimes/spiritnet/src/weights/delegation.rs // --template=.maintain/runtime-weight-template.hbs - #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] @@ -53,37 +53,33 @@ impl delegation::WeightInfo for WeightInfo { // Storage: System Account (r:1 w:1) // Storage: Delegation DelegationNodes (r:0 w:1) fn create_hierarchy() -> Weight { - (48_311_000 as Weight) + (41_504_000 as Weight) .saturating_add(T::DbWeight::get().reads(3 as Weight)) .saturating_add(T::DbWeight::get().writes(3 as Weight)) } // Storage: Delegation DelegationNodes (r:2 w:2) // Storage: System Account (r:1 w:1) fn add_delegation() -> Weight { - (59_067_000 as Weight) + (48_679_000 as Weight) .saturating_add(T::DbWeight::get().reads(3 as Weight)) .saturating_add(T::DbWeight::get().writes(3 as Weight)) } // Storage: Delegation DelegationNodes (r:1 w:1) // Storage: Delegation DelegationHierarchies (r:1 w:0) - fn revoke_delegation_root_child(r: u32, c: u32, ) -> Weight { - (21_963_000 as Weight) - // Standard Error: 46_000 - .saturating_add((19_693_000 as Weight).saturating_mul(r as Weight)) - // Standard Error: 46_000 - .saturating_add((139_000 as Weight).saturating_mul(c as Weight)) + fn revoke_delegation_root_child(r: u32, _c: u32, ) -> Weight { + (20_626_000 as Weight) + // Standard Error: 30_000 + .saturating_add((14_142_000 as Weight).saturating_mul(r as Weight)) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(r as Weight))) .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(r as Weight))) } // Storage: Delegation DelegationNodes (r:6 w:1) // Storage: Delegation DelegationHierarchies (r:1 w:0) - fn revoke_delegation_leaf(r: u32, c: u32, ) -> Weight { - (41_137_000 as Weight) - // Standard Error: 29_000 - .saturating_add((108_000 as Weight).saturating_mul(r as Weight)) - // Standard Error: 29_000 - .saturating_add((6_051_000 as Weight).saturating_mul(c as Weight)) + fn revoke_delegation_leaf(_r: u32, c: u32, ) -> Weight { + (34_444_000 as Weight) + // Standard Error: 24_000 + .saturating_add((4_926_000 as Weight).saturating_mul(c as Weight)) .saturating_add(T::DbWeight::get().reads(2 as Weight)) .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(c as Weight))) .saturating_add(T::DbWeight::get().writes(1 as Weight)) @@ -92,24 +88,46 @@ impl delegation::WeightInfo for WeightInfo { // Storage: System Account (r:1 w:1) // Storage: Delegation DelegationHierarchies (r:1 w:1) fn remove_delegation(r: u32, ) -> Weight { - (62_336_000 as Weight) - // Standard Error: 87_000 - .saturating_add((39_220_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(2 as Weight)) - .saturating_add(T::DbWeight::get().reads((2 as Weight).saturating_mul(r as Weight))) - .saturating_add(T::DbWeight::get().writes(2 as Weight)) - .saturating_add(T::DbWeight::get().writes((2 as Weight).saturating_mul(r as Weight))) + (55_382_000 as Weight) + // Standard Error: 46_000 + .saturating_add((24_306_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(r as Weight))) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) + .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(r as Weight))) } // Storage: Delegation DelegationNodes (r:2 w:2) // Storage: System Account (r:1 w:1) // Storage: Delegation DelegationHierarchies (r:0 w:1) fn reclaim_deposit(r: u32, ) -> Weight { - (53_370_000 as Weight) - // Standard Error: 126_000 - .saturating_add((39_346_000 as Weight).saturating_mul(r as Weight)) + (47_460_000 as Weight) + // Standard Error: 56_000 + .saturating_add((24_567_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(r as Weight))) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) + .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(r as Weight))) + } + // Storage: Delegation DelegationNodes (r:1 w:0) + // Storage: Delegation DelegationHierarchies (r:1 w:0) + fn can_attest() -> Weight { + (12_951_000 as Weight) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + } + // Storage: Delegation DelegationNodes (r:2 w:0) + fn can_revoke(c: u32, ) -> Weight { + (8_132_000 as Weight) + // Standard Error: 22_000 + .saturating_add((4_897_000 as Weight).saturating_mul(c as Weight)) .saturating_add(T::DbWeight::get().reads(1 as Weight)) - .saturating_add(T::DbWeight::get().reads((2 as Weight).saturating_mul(r as Weight))) - .saturating_add(T::DbWeight::get().writes(2 as Weight)) - .saturating_add(T::DbWeight::get().writes((2 as Weight).saturating_mul(r as Weight))) + .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(c as Weight))) + } + // Storage: Delegation DelegationNodes (r:2 w:0) + fn can_remove(c: u32, ) -> Weight { + (8_055_000 as Weight) + // Standard Error: 19_000 + .saturating_add((4_947_000 as Weight).saturating_mul(c as Weight)) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(c as Weight))) } } diff --git a/runtimes/spiritnet/src/weights/did.rs b/runtimes/spiritnet/src/weights/did.rs index 8477e92b8..9bda1d4b9 100644 --- a/runtimes/spiritnet/src/weights/did.rs +++ b/runtimes/spiritnet/src/weights/did.rs @@ -19,14 +19,15 @@ //! Autogenerated weights for did //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2021-10-27, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 128 +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 1024 // Executed Command: -// target/release/kilt-parachain +// ./target/release/kilt-parachain // benchmark +// pallet // --chain=spiritnet-dev -// --steps=50 +// --steps=1 // --repeat=20 // --pallet=did // --extrinsic=* @@ -36,209 +37,264 @@ // --output=./runtimes/spiritnet/src/weights/did.rs // --template=.maintain/runtime-weight-template.hbs - #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] +#![allow(clippy::unnecessary_cast)] use frame_support::{traits::Get, weights::Weight}; use sp_std::marker::PhantomData; -/// Weights for did using the recommended hardware. +/// Weight functions for `did`. pub struct WeightInfo(PhantomData); impl did::WeightInfo for WeightInfo { + // Storage: System Account (r:2 w:2) + // Storage: Did DidBlacklist (r:1 w:0) + // Storage: Did Did (r:1 w:1) + // Storage: Did DidEndpointsCount (r:0 w:1) + // Storage: Did ServiceEndpoints (r:0 w:25) fn create_ed25519_keys(n: u32, c: u32, ) -> Weight { - (155_200_000_u64) - // Standard Error: 29_000 - .saturating_add((2_379_000_u64).saturating_mul(n as Weight)) - // Standard Error: 9_000 - .saturating_add((10_503_000_u64).saturating_mul(c as Weight)) - .saturating_add(T::DbWeight::get().reads(4_u64)) - .saturating_add(T::DbWeight::get().writes(4_u64)) - .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(c as Weight))) - } + (139_062_000 as Weight) + // Standard Error: 22_000 + .saturating_add((1_602_000 as Weight).saturating_mul(n as Weight)) + // Standard Error: 8_000 + .saturating_add((6_002_000 as Weight).saturating_mul(c as Weight)) + .saturating_add(T::DbWeight::get().reads(4 as Weight)) + .saturating_add(T::DbWeight::get().writes(4 as Weight)) + .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(c as Weight))) + } + // Storage: System Account (r:2 w:2) + // Storage: Did DidBlacklist (r:1 w:0) + // Storage: Did Did (r:1 w:1) + // Storage: Did DidEndpointsCount (r:0 w:1) + // Storage: Did ServiceEndpoints (r:0 w:25) fn create_sr25519_keys(n: u32, c: u32, ) -> Weight { - (158_638_000_u64) - // Standard Error: 31_000 - .saturating_add((2_385_000_u64).saturating_mul(n as Weight)) - // Standard Error: 9_000 - .saturating_add((10_847_000_u64).saturating_mul(c as Weight)) - .saturating_add(T::DbWeight::get().reads(4_u64)) - .saturating_add(T::DbWeight::get().writes(4_u64)) - .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(c as Weight))) - } + (142_600_000 as Weight) + // Standard Error: 27_000 + .saturating_add((1_587_000 as Weight).saturating_mul(n as Weight)) + // Standard Error: 10_000 + .saturating_add((6_483_000 as Weight).saturating_mul(c as Weight)) + .saturating_add(T::DbWeight::get().reads(4 as Weight)) + .saturating_add(T::DbWeight::get().writes(4 as Weight)) + .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(c as Weight))) + } + // Storage: System Account (r:2 w:2) + // Storage: Did DidBlacklist (r:1 w:0) + // Storage: Did Did (r:1 w:1) + // Storage: Did DidEndpointsCount (r:0 w:1) + // Storage: Did ServiceEndpoints (r:0 w:25) fn create_ecdsa_keys(n: u32, c: u32, ) -> Weight { - (273_495_000_u64) - // Standard Error: 35_000 - .saturating_add((2_403_000_u64).saturating_mul(n as Weight)) - // Standard Error: 11_000 - .saturating_add((10_325_000_u64).saturating_mul(c as Weight)) - .saturating_add(T::DbWeight::get().reads(4_u64)) - .saturating_add(T::DbWeight::get().writes(4_u64)) - .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(c as Weight))) - } + (132_375_000 as Weight) + // Standard Error: 37_000 + .saturating_add((1_497_000 as Weight).saturating_mul(n as Weight)) + // Standard Error: 14_000 + .saturating_add((5_600_000 as Weight).saturating_mul(c as Weight)) + .saturating_add(T::DbWeight::get().reads(4 as Weight)) + .saturating_add(T::DbWeight::get().writes(4 as Weight)) + .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(c as Weight))) + } + // Storage: Did DidEndpointsCount (r:1 w:1) + // Storage: Did Did (r:1 w:1) + // Storage: Did DidBlacklist (r:0 w:1) + // Storage: Did ServiceEndpoints (r:0 w:1) fn delete(c: u32, ) -> Weight { - (41_042_000_u64) + (35_098_000 as Weight) // Standard Error: 4_000 - .saturating_add((1_095_000_u64).saturating_mul(c as Weight)) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) - .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(c as Weight))) - } + .saturating_add((1_080_000 as Weight).saturating_mul(c as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) + .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(c as Weight))) + } + // Storage: Did Did (r:1 w:1) + // Storage: Did DidEndpointsCount (r:1 w:1) + // Storage: Did DidBlacklist (r:0 w:1) + // Storage: Did ServiceEndpoints (r:0 w:1) fn reclaim_deposit(c: u32, ) -> Weight { - (45_858_000_u64) + (37_604_000 as Weight) // Standard Error: 5_000 - .saturating_add((1_099_000_u64).saturating_mul(c as Weight)) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) - .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(c as Weight))) + .saturating_add((1_114_000 as Weight).saturating_mul(c as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) + .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(c as Weight))) } + // Storage: Did Did (r:1 w:1) fn submit_did_call_ed25519_key() -> Weight { - (86_443_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (81_034_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn submit_did_call_sr25519_key() -> Weight { - (89_533_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (83_045_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn submit_did_call_ecdsa_key() -> Weight { - (204_492_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (72_485_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn set_ed25519_authentication_key() -> Weight { - (48_157_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (37_241_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn set_sr25519_authentication_key() -> Weight { - (48_387_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (37_473_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn set_ecdsa_authentication_key() -> Weight { - (48_544_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (37_498_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn set_ed25519_delegation_key() -> Weight { - (47_631_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (36_794_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn set_sr25519_delegation_key() -> Weight { - (48_186_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (36_806_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn set_ecdsa_delegation_key() -> Weight { - (48_042_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (36_349_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn remove_ed25519_delegation_key() -> Weight { - (44_720_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (34_065_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn remove_sr25519_delegation_key() -> Weight { - (44_742_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (34_433_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn remove_ecdsa_delegation_key() -> Weight { - (44_476_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (33_775_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn set_ed25519_attestation_key() -> Weight { - (48_241_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (36_696_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn set_sr25519_attestation_key() -> Weight { - (48_137_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (36_951_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn set_ecdsa_attestation_key() -> Weight { - (48_281_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (36_352_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn remove_ed25519_attestation_key() -> Weight { - (44_762_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (34_194_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn remove_sr25519_attestation_key() -> Weight { - (44_854_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (34_191_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn remove_ecdsa_attestation_key() -> Weight { - (44_720_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (34_179_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn add_ed25519_key_agreement_key() -> Weight { - (47_004_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (35_896_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn add_sr25519_key_agreement_key() -> Weight { - (47_082_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (36_379_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn add_ecdsa_key_agreement_key() -> Weight { - (47_217_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (36_056_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn remove_ed25519_key_agreement_key() -> Weight { - (45_138_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (34_384_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn remove_sr25519_key_agreement_key() -> Weight { - (44_988_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (34_868_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:1) fn remove_ecdsa_key_agreement_key() -> Weight { - (44_926_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (34_643_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Did Did (r:1 w:0) + // Storage: Did DidEndpointsCount (r:1 w:1) + // Storage: Did ServiceEndpoints (r:1 w:1) fn add_service_endpoint() -> Weight { - (43_394_000_u64) - .saturating_add(T::DbWeight::get().reads(3_u64)) - .saturating_add(T::DbWeight::get().writes(2_u64)) + (37_784_000 as Weight) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) } + // Storage: Did ServiceEndpoints (r:1 w:1) + // Storage: Did DidEndpointsCount (r:1 w:1) fn remove_service_endpoint() -> Weight { - (34_936_000_u64) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().writes(2_u64)) + (31_680_000 as Weight) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) } + // Storage: Did Did (r:1 w:0) fn signature_verification_sr25519(l: u32, ) -> Weight { - (25_599_000_u64) + (66_507_000 as Weight) // Standard Error: 0 - .saturating_add((4_000_u64).saturating_mul(l as Weight)) - .saturating_add(T::DbWeight::get().reads(1_u64)) + .saturating_add((4_000 as Weight).saturating_mul(l as Weight)) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) } + // Storage: Did Did (r:1 w:0) fn signature_verification_ed25519(l: u32, ) -> Weight { - (21_307_000_u64) + (64_220_000 as Weight) // Standard Error: 0 - .saturating_add((2_000_u64).saturating_mul(l as Weight)) - .saturating_add(T::DbWeight::get().reads(1_u64)) + .saturating_add((2_000 as Weight).saturating_mul(l as Weight)) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) } + // Storage: Did Did (r:1 w:0) fn signature_verification_ecdsa(l: u32, ) -> Weight { - (138_685_000_u64) + (55_901_000 as Weight) // Standard Error: 0 - .saturating_add((1_000_u64).saturating_mul(l as Weight)) - .saturating_add(T::DbWeight::get().reads(1_u64)) + .saturating_add((1_000 as Weight).saturating_mul(l as Weight)) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) } } diff --git a/runtimes/spiritnet/src/weights/frame_system.rs b/runtimes/spiritnet/src/weights/frame_system.rs index e44d312fc..38a47898e 100644 --- a/runtimes/spiritnet/src/weights/frame_system.rs +++ b/runtimes/spiritnet/src/weights/frame_system.rs @@ -19,16 +19,17 @@ //! Autogenerated weights for frame_system //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2021-10-17, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 128 +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 1024 // Executed Command: // ./target/release/kilt-parachain // benchmark +// pallet // --chain=spiritnet-dev -// --steps=50 +// --steps=1 // --repeat=20 -// --pallet=frame_system +// --pallet=frame-system // --extrinsic=* // --execution=wasm // --wasm-execution=compiled @@ -36,47 +37,51 @@ // --output=./runtimes/spiritnet/src/weights/frame_system.rs // --template=.maintain/runtime-weight-template.hbs - #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] +#![allow(clippy::unnecessary_cast)] use frame_support::{traits::Get, weights::Weight}; use sp_std::marker::PhantomData; -/// Weights for frame_system using the recommended hardware. +/// Weight functions for `frame_system`. pub struct WeightInfo(PhantomData); impl frame_system::WeightInfo for WeightInfo { - fn remark(b: u32, ) -> Weight { - (0_u64) - // Standard Error: 0 - .saturating_add((1_000_u64).saturating_mul(b as Weight)) + fn remark(_b: u32, ) -> Weight { + (860_000 as Weight) } fn remark_with_event(b: u32, ) -> Weight { - (0_u64) + (13_814_000 as Weight) // Standard Error: 0 - .saturating_add((2_000_u64).saturating_mul(b as Weight)) + .saturating_add((1_000 as Weight).saturating_mul(b as Weight)) } + // Storage: System Digest (r:1 w:1) + // Storage: unknown [0x3a686561707061676573] (r:0 w:1) fn set_heap_pages() -> Weight { - (2_062_000_u64) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (4_811_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) } + // Storage: Skipped Metadata (r:0 w:0) fn set_storage(i: u32, ) -> Weight { - (0_u64) + (1_312_000 as Weight) // Standard Error: 0 - .saturating_add((915_000_u64).saturating_mul(i as Weight)) - .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(i as Weight))) + .saturating_add((615_000 as Weight).saturating_mul(i as Weight)) + .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(i as Weight))) } + // Storage: Skipped Metadata (r:0 w:0) fn kill_storage(i: u32, ) -> Weight { - (0_u64) - // Standard Error: 1_000 - .saturating_add((612_000_u64).saturating_mul(i as Weight)) - .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(i as Weight))) + (1_523_000 as Weight) + // Standard Error: 0 + .saturating_add((448_000 as Weight).saturating_mul(i as Weight)) + .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(i as Weight))) } + // Storage: Skipped Metadata (r:0 w:0) fn kill_prefix(p: u32, ) -> Weight { - (7_328_000_u64) - // Standard Error: 1_000 - .saturating_add((778_000_u64).saturating_mul(p as Weight)) - .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(p as Weight))) + (4_533_000 as Weight) + // Standard Error: 0 + .saturating_add((841_000 as Weight).saturating_mul(p as Weight)) + .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(p as Weight))) } } diff --git a/runtimes/spiritnet/src/weights/kilt_launch.rs b/runtimes/spiritnet/src/weights/kilt_launch.rs deleted file mode 100644 index 4d3bbe14d..000000000 --- a/runtimes/spiritnet/src/weights/kilt_launch.rs +++ /dev/null @@ -1,149 +0,0 @@ -// KILT Blockchain – https://botlabs.org -// Copyright (C) 2019-2022 BOTLabs GmbH - -// The KILT Blockchain is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. - -// The KILT Blockchain is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. - -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -// If you feel like getting in touch with us, you can do so at info@botlabs.org - -//! Autogenerated weights for kilt_launch -//! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2021-10-29, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 128 - -// Executed Command: -// target/release/kilt-parachain -// benchmark -// --chain=spiritnet-dev -// --steps=50 -// --repeat=20 -// --pallet=kilt-launch -// --extrinsic=* -// --execution=wasm -// --wasm-execution=compiled -// --heap-pages=4096 -// --output=./runtimes/spiritnet/src/weights/kilt_launch.rs -// --template=.maintain/runtime-weight-template.hbs - - -#![cfg_attr(rustfmt, rustfmt_skip)] -#![allow(unused_parens)] -#![allow(unused_imports)] -#![allow(clippy::unnecessary_cast)] - -use frame_support::{traits::Get, weights::Weight}; -use sp_std::marker::PhantomData; - -/// Weight functions for `kilt_launch`. -pub struct WeightInfo(PhantomData); -impl kilt_launch::WeightInfo for WeightInfo { - // Storage: KiltLaunch TransferAccount (r:0 w:1) - fn change_transfer_account() -> Weight { - (3_081_000 as Weight) - .saturating_add(T::DbWeight::get().writes(1 as Weight)) - } - // Storage: KiltLaunch UnlockingAt (r:1 w:1) - // Storage: Balances Locks (r:1 w:1) - // Storage: System Account (r:1 w:1) - // Storage: KiltLaunch BalanceLocks (r:0 w:1) - fn force_unlock(n: u32, ) -> Weight { - (23_367_000 as Weight) - // Standard Error: 23_000 - .saturating_add((28_602_000 as Weight).saturating_mul(n as Weight)) - .saturating_add(T::DbWeight::get().reads(1 as Weight)) - .saturating_add(T::DbWeight::get().reads((2 as Weight).saturating_mul(n as Weight))) - .saturating_add(T::DbWeight::get().writes(1 as Weight)) - .saturating_add(T::DbWeight::get().writes((3 as Weight).saturating_mul(n as Weight))) - } - // Storage: System Account (r:2 w:2) - // Storage: KiltLaunch BalanceLocks (r:2 w:2) - // Storage: Balances Locks (r:2 w:2) - fn locked_transfer() -> Weight { - (138_045_000 as Weight) - .saturating_add(T::DbWeight::get().reads(6 as Weight)) - .saturating_add(T::DbWeight::get().writes(6 as Weight)) - } - // Storage: KiltLaunch TransferAccount (r:1 w:0) - // Storage: KiltLaunch UnownedAccount (r:1 w:1) - // Storage: Balances Locks (r:2 w:1) - // Storage: System Account (r:2 w:2) - // Storage: Vesting Vesting (r:2 w:2) - // Storage: KiltLaunch BalanceLocks (r:1 w:0) - fn migrate_genesis_account_vesting() -> Weight { - (151_792_000 as Weight) - .saturating_add(T::DbWeight::get().reads(9 as Weight)) - .saturating_add(T::DbWeight::get().writes(6 as Weight)) - } - // Storage: KiltLaunch TransferAccount (r:1 w:0) - // Storage: KiltLaunch UnownedAccount (r:1 w:1) - // Storage: Balances Locks (r:2 w:1) - // Storage: System Account (r:2 w:2) - // Storage: Vesting Vesting (r:1 w:0) - // Storage: KiltLaunch BalanceLocks (r:2 w:2) - // Storage: KiltLaunch UnlockingAt (r:1 w:1) - fn migrate_genesis_account_locking() -> Weight { - (155_177_000 as Weight) - .saturating_add(T::DbWeight::get().reads(10 as Weight)) - .saturating_add(T::DbWeight::get().writes(7 as Weight)) - } - // Storage: KiltLaunch TransferAccount (r:1 w:0) - // Storage: KiltLaunch UnownedAccount (r:1 w:1) - // Storage: Balances Locks (r:2 w:1) - // Storage: System Account (r:2 w:2) - // Storage: Vesting Vesting (r:2 w:2) - // Storage: KiltLaunch BalanceLocks (r:1 w:0) - fn migrate_multiple_genesis_accounts_vesting(n: u32, ) -> Weight { - (46_828_000 as Weight) - // Standard Error: 51_000 - .saturating_add((100_849_000 as Weight).saturating_mul(n as Weight)) - .saturating_add(T::DbWeight::get().reads(4 as Weight)) - .saturating_add(T::DbWeight::get().reads((5 as Weight).saturating_mul(n as Weight))) - .saturating_add(T::DbWeight::get().writes(3 as Weight)) - .saturating_add(T::DbWeight::get().writes((3 as Weight).saturating_mul(n as Weight))) - } - // Storage: KiltLaunch TransferAccount (r:1 w:0) - // Storage: KiltLaunch UnownedAccount (r:1 w:1) - // Storage: Balances Locks (r:2 w:1) - // Storage: System Account (r:2 w:2) - // Storage: Vesting Vesting (r:1 w:0) - // Storage: KiltLaunch BalanceLocks (r:2 w:2) - // Storage: KiltLaunch UnlockingAt (r:1 w:1) - fn migrate_multiple_genesis_accounts_locking(n: u32, ) -> Weight { - (52_280_000 as Weight) - // Standard Error: 47_000 - .saturating_add((98_937_000 as Weight).saturating_mul(n as Weight)) - .saturating_add(T::DbWeight::get().reads(5 as Weight)) - .saturating_add(T::DbWeight::get().reads((5 as Weight).saturating_mul(n as Weight))) - .saturating_add(T::DbWeight::get().writes(4 as Weight)) - .saturating_add(T::DbWeight::get().writes((3 as Weight).saturating_mul(n as Weight))) - } - // Storage: KiltLaunch UnlockingAt (r:1 w:1) - // Storage: Balances Locks (r:1 w:1) - // Storage: System Account (r:1 w:1) - // Storage: KiltLaunch BalanceLocks (r:0 w:1) - fn on_initialize_unlock(n: u32, ) -> Weight { - (26_534_000 as Weight) - // Standard Error: 11_000 - .saturating_add((28_512_000 as Weight).saturating_mul(n as Weight)) - .saturating_add(T::DbWeight::get().reads(1 as Weight)) - .saturating_add(T::DbWeight::get().reads((2 as Weight).saturating_mul(n as Weight))) - .saturating_add(T::DbWeight::get().writes(1 as Weight)) - .saturating_add(T::DbWeight::get().writes((3 as Weight).saturating_mul(n as Weight))) - } - // Storage: KiltLaunch UnlockingAt (r:1 w:0) - fn on_initialize_no_action() -> Weight { - (4_524_000 as Weight) - .saturating_add(T::DbWeight::get().reads(1 as Weight)) - } -} diff --git a/runtimes/spiritnet/src/weights/mod.rs b/runtimes/spiritnet/src/weights/mod.rs index 112cd38e0..29b65e432 100644 --- a/runtimes/spiritnet/src/weights/mod.rs +++ b/runtimes/spiritnet/src/weights/mod.rs @@ -21,7 +21,6 @@ pub mod ctype; pub mod delegation; pub mod did; pub mod frame_system; -pub mod kilt_launch; pub mod pallet_balances; pub mod pallet_collective; pub mod pallet_democracy; @@ -34,6 +33,7 @@ pub mod pallet_proxy; pub mod pallet_scheduler; pub mod pallet_session; pub mod pallet_timestamp; +pub mod pallet_tips; pub mod pallet_treasury; pub mod pallet_utility; pub mod pallet_vesting; diff --git a/runtimes/spiritnet/src/weights/pallet_balances.rs b/runtimes/spiritnet/src/weights/pallet_balances.rs index 5ee1094b0..ff6a34e65 100644 --- a/runtimes/spiritnet/src/weights/pallet_balances.rs +++ b/runtimes/spiritnet/src/weights/pallet_balances.rs @@ -19,14 +19,15 @@ //! Autogenerated weights for pallet_balances //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2021-10-21, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 128 +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 1024 // Executed Command: -// target/release/kilt-parachain +// ./target/release/kilt-parachain // benchmark +// pallet // --chain=spiritnet-dev -// --steps=50 +// --steps=1 // --repeat=20 // --pallet=pallet-balances // --extrinsic=* @@ -36,50 +37,57 @@ // --output=./runtimes/spiritnet/src/weights/pallet_balances.rs // --template=.maintain/runtime-weight-template.hbs - #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] +#![allow(clippy::unnecessary_cast)] use frame_support::{traits::Get, weights::Weight}; use sp_std::marker::PhantomData; -/// Weights for pallet_balances using the recommended hardware. +/// Weight functions for `pallet_balances`. pub struct WeightInfo(PhantomData); impl pallet_balances::WeightInfo for WeightInfo { + // Storage: System Account (r:2 w:2) fn transfer() -> Weight { - (77_722_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (68_568_000 as Weight) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) } + // Storage: System Account (r:1 w:1) fn transfer_keep_alive() -> Weight { - (58_398_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (43_526_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: System Account (r:1 w:1) fn set_balance_creating() -> Weight { - (32_058_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (27_315_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: System Account (r:1 w:1) fn set_balance_killing() -> Weight { - (38_809_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (32_217_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: System Account (r:3 w:3) fn force_transfer() -> Weight { - (78_111_000_u64) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().writes(2_u64)) + (68_361_000 as Weight) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } + // Storage: System Account (r:1 w:1) fn transfer_all() -> Weight { - (71_887_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (52_521_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: System Account (r:1 w:1) fn force_unreserve() -> Weight { - (29_927_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (25_515_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } } diff --git a/runtimes/spiritnet/src/weights/pallet_collective.rs b/runtimes/spiritnet/src/weights/pallet_collective.rs index 8bc6cda8d..01be991c8 100644 --- a/runtimes/spiritnet/src/weights/pallet_collective.rs +++ b/runtimes/spiritnet/src/weights/pallet_collective.rs @@ -19,16 +19,17 @@ //! Autogenerated weights for pallet_collective //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2021-10-17, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 128 +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 1024 // Executed Command: // ./target/release/kilt-parachain // benchmark +// pallet // --chain=spiritnet-dev -// --steps=50 +// --steps=1 // --repeat=20 -// --pallet=pallet_collective +// --pallet=pallet-collective // --extrinsic=* // --execution=wasm // --wasm-execution=compiled @@ -36,109 +37,144 @@ // --output=./runtimes/spiritnet/src/weights/pallet_collective.rs // --template=.maintain/runtime-weight-template.hbs - #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] +#![allow(clippy::unnecessary_cast)] use frame_support::{traits::Get, weights::Weight}; use sp_std::marker::PhantomData; -/// Weights for pallet_collective using the recommended hardware. +/// Weight functions for `pallet_collective`. pub struct WeightInfo(PhantomData); impl pallet_collective::WeightInfo for WeightInfo { + // Storage: Council Members (r:1 w:1) + // Storage: Council Proposals (r:1 w:0) + // Storage: Council Voting (r:100 w:100) + // Storage: Council Prime (r:0 w:1) fn set_members(m: u32, n: u32, p: u32, ) -> Weight { - (0_u64) - // Standard Error: 13_000 - .saturating_add((16_581_000_u64).saturating_mul(m as Weight)) - // Standard Error: 13_000 - .saturating_add((205_000_u64).saturating_mul(n as Weight)) - // Standard Error: 13_000 - .saturating_add((22_426_000_u64).saturating_mul(p as Weight)) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(p as Weight))) - .saturating_add(T::DbWeight::get().writes(2_u64)) - .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(p as Weight))) + (0 as Weight) + // Standard Error: 9_000 + .saturating_add((12_196_000 as Weight).saturating_mul(m as Weight)) + // Standard Error: 9_000 + .saturating_add((144_000 as Weight).saturating_mul(n as Weight)) + // Standard Error: 9_000 + .saturating_add((16_975_000 as Weight).saturating_mul(p as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(p as Weight))) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) + .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(p as Weight))) } + // Storage: Council Members (r:1 w:0) fn execute(b: u32, m: u32, ) -> Weight { - (24_592_000_u64) + (20_038_000 as Weight) // Standard Error: 0 - .saturating_add((3_000_u64).saturating_mul(b as Weight)) + .saturating_add((2_000 as Weight).saturating_mul(b as Weight)) // Standard Error: 0 - .saturating_add((90_000_u64).saturating_mul(m as Weight)) - .saturating_add(T::DbWeight::get().reads(1_u64)) + .saturating_add((29_000 as Weight).saturating_mul(m as Weight)) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) } + // Storage: Council Members (r:1 w:0) + // Storage: Council ProposalOf (r:1 w:0) fn propose_execute(b: u32, m: u32, ) -> Weight { - (29_628_000_u64) + (24_048_000 as Weight) // Standard Error: 0 - .saturating_add((3_000_u64).saturating_mul(b as Weight)) + .saturating_add((2_000 as Weight).saturating_mul(b as Weight)) // Standard Error: 0 - .saturating_add((173_000_u64).saturating_mul(m as Weight)) - .saturating_add(T::DbWeight::get().reads(2_u64)) + .saturating_add((57_000 as Weight).saturating_mul(m as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) } + // Storage: Council Members (r:1 w:0) + // Storage: Council ProposalOf (r:1 w:1) + // Storage: Council Proposals (r:1 w:1) + // Storage: Council ProposalCount (r:1 w:1) + // Storage: Council Voting (r:0 w:1) fn propose_proposed(b: u32, m: u32, p: u32, ) -> Weight { - (44_081_000_u64) + (33_247_000 as Weight) + // Standard Error: 0 + .saturating_add((4_000 as Weight).saturating_mul(b as Weight)) + // Standard Error: 0 + .saturating_add((26_000 as Weight).saturating_mul(m as Weight)) // Standard Error: 0 - .saturating_add((9_000_u64).saturating_mul(b as Weight)) - // Standard Error: 2_000 - .saturating_add((97_000_u64).saturating_mul(m as Weight)) - // Standard Error: 2_000 - .saturating_add((434_000_u64).saturating_mul(p as Weight)) - .saturating_add(T::DbWeight::get().reads(4_u64)) - .saturating_add(T::DbWeight::get().writes(4_u64)) + .saturating_add((299_000 as Weight).saturating_mul(p as Weight)) + .saturating_add(T::DbWeight::get().reads(4 as Weight)) + .saturating_add(T::DbWeight::get().writes(4 as Weight)) } + // Storage: Council Members (r:1 w:0) + // Storage: Council Voting (r:1 w:1) fn vote(m: u32, ) -> Weight { - (42_703_000_u64) - // Standard Error: 2_000 - .saturating_add((190_000_u64).saturating_mul(m as Weight)) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (39_774_000 as Weight) + // Standard Error: 0 + .saturating_add((73_000 as Weight).saturating_mul(m as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Council Voting (r:1 w:1) + // Storage: Council Members (r:1 w:0) + // Storage: Council Proposals (r:1 w:1) + // Storage: Council ProposalOf (r:0 w:1) fn close_early_disapproved(m: u32, p: u32, ) -> Weight { - (50_876_000_u64) - // Standard Error: 2_000 - .saturating_add((156_000_u64).saturating_mul(m as Weight)) - // Standard Error: 1_000 - .saturating_add((375_000_u64).saturating_mul(p as Weight)) - .saturating_add(T::DbWeight::get().reads(3_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + (35_659_000 as Weight) + // Standard Error: 0 + .saturating_add((54_000 as Weight).saturating_mul(m as Weight)) + // Standard Error: 0 + .saturating_add((272_000 as Weight).saturating_mul(p as Weight)) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } + // Storage: Council Voting (r:1 w:1) + // Storage: Council Members (r:1 w:0) + // Storage: Council ProposalOf (r:1 w:1) + // Storage: Council Proposals (r:1 w:1) fn close_early_approved(b: u32, m: u32, p: u32, ) -> Weight { - (58_670_000_u64) + (46_908_000 as Weight) // Standard Error: 0 - .saturating_add((6_000_u64).saturating_mul(b as Weight)) - // Standard Error: 2_000 - .saturating_add((206_000_u64).saturating_mul(m as Weight)) - // Standard Error: 2_000 - .saturating_add((425_000_u64).saturating_mul(p as Weight)) - .saturating_add(T::DbWeight::get().reads(4_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) - } - fn close_disapproved(m: u32, p: u32, ) -> Weight { - (54_857_000_u64) + .saturating_add((1_000 as Weight).saturating_mul(b as Weight)) // Standard Error: 1_000 - .saturating_add((168_000_u64).saturating_mul(m as Weight)) + .saturating_add((53_000 as Weight).saturating_mul(m as Weight)) // Standard Error: 1_000 - .saturating_add((376_000_u64).saturating_mul(p as Weight)) - .saturating_add(T::DbWeight::get().reads(4_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + .saturating_add((287_000 as Weight).saturating_mul(p as Weight)) + .saturating_add(T::DbWeight::get().reads(4 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } + // Storage: Council Voting (r:1 w:1) + // Storage: Council Members (r:1 w:0) + // Storage: Council Prime (r:1 w:0) + // Storage: Council Proposals (r:1 w:1) + // Storage: Council ProposalOf (r:0 w:1) + fn close_disapproved(m: u32, p: u32, ) -> Weight { + (39_434_000 as Weight) + // Standard Error: 0 + .saturating_add((60_000 as Weight).saturating_mul(m as Weight)) + // Standard Error: 0 + .saturating_add((271_000 as Weight).saturating_mul(p as Weight)) + .saturating_add(T::DbWeight::get().reads(4 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) + } + // Storage: Council Voting (r:1 w:1) + // Storage: Council Members (r:1 w:0) + // Storage: Council Prime (r:1 w:0) + // Storage: Council ProposalOf (r:1 w:1) + // Storage: Council Proposals (r:1 w:1) fn close_approved(b: u32, m: u32, p: u32, ) -> Weight { - (64_753_000_u64) + (51_226_000 as Weight) // Standard Error: 0 - .saturating_add((6_000_u64).saturating_mul(b as Weight)) - // Standard Error: 2_000 - .saturating_add((195_000_u64).saturating_mul(m as Weight)) - // Standard Error: 2_000 - .saturating_add((425_000_u64).saturating_mul(p as Weight)) - .saturating_add(T::DbWeight::get().reads(5_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + .saturating_add((2_000 as Weight).saturating_mul(b as Weight)) + // Standard Error: 1_000 + .saturating_add((47_000 as Weight).saturating_mul(m as Weight)) + // Standard Error: 1_000 + .saturating_add((285_000 as Weight).saturating_mul(p as Weight)) + .saturating_add(T::DbWeight::get().reads(5 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } + // Storage: Council Proposals (r:1 w:1) + // Storage: Council Voting (r:0 w:1) + // Storage: Council ProposalOf (r:0 w:1) fn disapprove_proposal(p: u32, ) -> Weight { - (29_858_000_u64) - // Standard Error: 1_000 - .saturating_add((438_000_u64).saturating_mul(p as Weight)) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + (21_329_000 as Weight) + // Standard Error: 0 + .saturating_add((266_000 as Weight).saturating_mul(p as Weight)) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } } diff --git a/runtimes/spiritnet/src/weights/pallet_democracy.rs b/runtimes/spiritnet/src/weights/pallet_democracy.rs index 9a952466a..bfbd101f6 100644 --- a/runtimes/spiritnet/src/weights/pallet_democracy.rs +++ b/runtimes/spiritnet/src/weights/pallet_democracy.rs @@ -19,16 +19,17 @@ //! Autogenerated weights for pallet_democracy //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2021-10-17, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 128 +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 1024 // Executed Command: // ./target/release/kilt-parachain // benchmark +// pallet // --chain=spiritnet-dev -// --steps=50 +// --steps=1 // --repeat=20 -// --pallet=pallet_democracy +// --pallet=pallet-democracy // --extrinsic=* // --execution=wasm // --wasm-execution=compiled @@ -36,181 +37,248 @@ // --output=./runtimes/spiritnet/src/weights/pallet_democracy.rs // --template=.maintain/runtime-weight-template.hbs - #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] +#![allow(clippy::unnecessary_cast)] use frame_support::{traits::Get, weights::Weight}; use sp_std::marker::PhantomData; -// TODO: Benchbot - /// Weight functions for `pallet_democracy`. pub struct WeightInfo(PhantomData); impl pallet_democracy::WeightInfo for WeightInfo { + // Storage: Democracy PublicPropCount (r:1 w:1) + // Storage: Democracy PublicProps (r:1 w:1) + // Storage: Democracy Blacklist (r:1 w:0) + // Storage: Democracy DepositOf (r:0 w:1) fn propose() -> Weight { - (58_488_000_u64) - .saturating_add(T::DbWeight::get().reads(3_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + (65_143_000 as Weight) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } - fn second(s: u32) -> Weight { - (39_011_000_u64) + // Storage: Democracy DepositOf (r:1 w:1) + fn second(s: u32, ) -> Weight { + (38_681_000 as Weight) // Standard Error: 0 - .saturating_add((157_000_u64).saturating_mul(s as Weight)) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + .saturating_add((200_000 as Weight).saturating_mul(s as Weight)) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } - fn vote_new(r: u32) -> Weight { - (43_998_000_u64) - // Standard Error: 0 - .saturating_add((211_000_u64).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(3_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + // Storage: Democracy ReferendumInfoOf (r:1 w:1) + // Storage: Democracy VotingOf (r:1 w:1) + // Storage: Balances Locks (r:1 w:1) + fn vote_new(r: u32, ) -> Weight { + (48_387_000 as Weight) + // Standard Error: 1_000 + .saturating_add((235_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } - fn vote_existing(r: u32) -> Weight { - (44_219_000_u64) + // Storage: Democracy ReferendumInfoOf (r:1 w:1) + // Storage: Democracy VotingOf (r:1 w:1) + // Storage: Balances Locks (r:1 w:1) + fn vote_existing(r: u32, ) -> Weight { + (49_051_000 as Weight) // Standard Error: 0 - .saturating_add((206_000_u64).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(3_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + .saturating_add((227_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } + // Storage: Democracy ReferendumInfoOf (r:1 w:1) + // Storage: Democracy Cancellations (r:1 w:1) fn emergency_cancel() -> Weight { - (28_974_000_u64) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().writes(2_u64)) + (24_542_000 as Weight) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) } - fn blacklist(p: u32) -> Weight { - (77_299_000_u64) - // Standard Error: 4_000 - .saturating_add((541_000_u64).saturating_mul(p as Weight)) - .saturating_add(T::DbWeight::get().reads(5_u64)) - .saturating_add(T::DbWeight::get().writes(6_u64)) + // Storage: Democracy PublicProps (r:1 w:1) + // Storage: Democracy NextExternal (r:1 w:1) + // Storage: Democracy ReferendumInfoOf (r:1 w:1) + // Storage: Democracy Blacklist (r:0 w:1) + // Storage: Democracy DepositOf (r:1 w:1) + // Storage: System Account (r:2 w:2) + fn blacklist(p: u32, ) -> Weight { + (34_083_000 as Weight) + // Standard Error: 0 + .saturating_add((742_000 as Weight).saturating_mul(p as Weight)) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(4 as Weight)) } - fn external_propose(v: u32) -> Weight { - (13_334_000_u64) + // Storage: Democracy NextExternal (r:1 w:1) + // Storage: Democracy Blacklist (r:1 w:0) + fn external_propose(v: u32, ) -> Weight { + (11_903_000 as Weight) // Standard Error: 0 - .saturating_add((80_000_u64).saturating_mul(v as Weight)) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + .saturating_add((29_000 as Weight).saturating_mul(v as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Democracy NextExternal (r:0 w:1) fn external_propose_majority() -> Weight { - (2_650_000_u64).saturating_add(T::DbWeight::get().writes(1_u64)) + (2_243_000 as Weight) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Democracy NextExternal (r:0 w:1) fn external_propose_default() -> Weight { - (2_667_000_u64).saturating_add(T::DbWeight::get().writes(1_u64)) + (2_180_000 as Weight) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Democracy NextExternal (r:1 w:1) + // Storage: Democracy ReferendumCount (r:1 w:1) + // Storage: Democracy ReferendumInfoOf (r:0 w:1) fn fast_track() -> Weight { - (27_908_000_u64) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + (25_465_000 as Weight) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } - fn veto_external(v: u32) -> Weight { - (28_446_000_u64) + // Storage: Democracy NextExternal (r:1 w:1) + // Storage: Democracy Blacklist (r:1 w:1) + fn veto_external(v: u32, ) -> Weight { + (25_812_000 as Weight) // Standard Error: 0 - .saturating_add((134_000_u64).saturating_mul(v as Weight)) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().writes(2_u64)) + .saturating_add((59_000 as Weight).saturating_mul(v as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) } - fn cancel_proposal(p: u32) -> Weight { - (51_004_000_u64) - // Standard Error: 0 - .saturating_add((512_000_u64).saturating_mul(p as Weight)) - .saturating_add(T::DbWeight::get().reads(3_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + // Storage: Democracy PublicProps (r:1 w:1) + // Storage: Democracy DepositOf (r:1 w:1) + // Storage: System Account (r:2 w:2) + fn cancel_proposal(p: u32, ) -> Weight { + (53_701_000 as Weight) + // Standard Error: 1_000 + .saturating_add((354_000 as Weight).saturating_mul(p as Weight)) + .saturating_add(T::DbWeight::get().reads(4 as Weight)) + .saturating_add(T::DbWeight::get().writes(4 as Weight)) } + // Storage: Democracy ReferendumInfoOf (r:0 w:1) fn cancel_referendum() -> Weight { - (17_377_000_u64).saturating_add(T::DbWeight::get().writes(1_u64)) + (15_909_000 as Weight) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } - fn cancel_queued(r: u32) -> Weight { - (33_882_000_u64) - // Standard Error: 15_000 - .saturating_add((6_070_000_u64).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().writes(2_u64)) + // Storage: Scheduler Lookup (r:1 w:1) + // Storage: Scheduler Agenda (r:1 w:1) + fn cancel_queued(r: u32, ) -> Weight { + (26_079_000 as Weight) + // Standard Error: 1_000 + .saturating_add((936_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) } - fn on_initialize_base(r: u32) -> Weight { - (7_295_000_u64) - // Standard Error: 4_000 - .saturating_add((5_093_000_u64).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(5_u64)) - .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(r as Weight))) + // Storage: Democracy LowestUnbaked (r:1 w:1) + // Storage: Democracy ReferendumCount (r:1 w:0) + // Storage: Democracy ReferendumInfoOf (r:1 w:0) + fn on_initialize_base(r: u32, ) -> Weight { + (10_580_000 as Weight) + // Standard Error: 3_000 + .saturating_add((4_502_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(r as Weight))) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } - fn on_initialize_base_with_launch_period(r: u32) -> Weight { - (7_295_000_u64) - // Standard Error: 4_000 - .saturating_add((5_093_000_u64).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(5_u64)) - .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(r as Weight))) - } - fn delegate(r: u32) -> Weight { - (54_128_000_u64) - // Standard Error: 5_000 - .saturating_add((7_209_000_u64).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(4_u64)) - .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(r as Weight))) - .saturating_add(T::DbWeight::get().writes(4_u64)) - .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(r as Weight))) - } - fn undelegate(r: u32) -> Weight { - (23_613_000_u64) + // Storage: Democracy LowestUnbaked (r:1 w:1) + // Storage: Democracy ReferendumCount (r:1 w:0) + // Storage: Democracy LastTabledWasExternal (r:1 w:0) + // Storage: Democracy NextExternal (r:1 w:0) + // Storage: Democracy PublicProps (r:1 w:0) + // Storage: Democracy ReferendumInfoOf (r:1 w:0) + fn on_initialize_base_with_launch_period(r: u32, ) -> Weight { + (17_380_000 as Weight) + // Standard Error: 3_000 + .saturating_add((4_501_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(5 as Weight)) + .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(r as Weight))) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) + } + // Storage: Democracy VotingOf (r:3 w:3) + // Storage: Democracy ReferendumInfoOf (r:1 w:1) + // Storage: Balances Locks (r:1 w:1) + fn delegate(r: u32, ) -> Weight { + (55_115_000 as Weight) // Standard Error: 4_000 - .saturating_add((7_196_000_u64).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().reads((1_u64).saturating_mul(r as Weight))) - .saturating_add(T::DbWeight::get().writes(2_u64)) - .saturating_add(T::DbWeight::get().writes((1_u64).saturating_mul(r as Weight))) + .saturating_add((6_037_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(4 as Weight)) + .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(r as Weight))) + .saturating_add(T::DbWeight::get().writes(4 as Weight)) + .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(r as Weight))) + } + // Storage: Democracy VotingOf (r:2 w:2) + // Storage: Democracy ReferendumInfoOf (r:1 w:1) + fn undelegate(r: u32, ) -> Weight { + (29_855_000 as Weight) + // Standard Error: 3_000 + .saturating_add((5_940_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(r as Weight))) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) + .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(r as Weight))) } + // Storage: Democracy PublicProps (r:0 w:1) fn clear_public_proposals() -> Weight { - (2_607_000_u64).saturating_add(T::DbWeight::get().writes(1_u64)) + (2_889_000 as Weight) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } - fn note_preimage(b: u32) -> Weight { - (42_847_000_u64) + // Storage: Democracy Preimages (r:1 w:1) + fn note_preimage(b: u32, ) -> Weight { + (21_577_000 as Weight) // Standard Error: 0 - .saturating_add((3_000_u64).saturating_mul(b as Weight)) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + .saturating_add((3_000 as Weight).saturating_mul(b as Weight)) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } - fn note_imminent_preimage(b: u32) -> Weight { - (27_699_000_u64) + // Storage: Democracy Preimages (r:1 w:1) + fn note_imminent_preimage(b: u32, ) -> Weight { + (24_786_000 as Weight) // Standard Error: 0 - .saturating_add((2_000_u64).saturating_mul(b as Weight)) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + .saturating_add((2_000 as Weight).saturating_mul(b as Weight)) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } - fn reap_preimage(b: u32) -> Weight { - (38_171_000_u64) + // Storage: Democracy Preimages (r:1 w:1) + // Storage: System Account (r:1 w:0) + fn reap_preimage(b: u32, ) -> Weight { + (26_755_000 as Weight) // Standard Error: 0 - .saturating_add((2_000_u64).saturating_mul(b as Weight)) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + .saturating_add((2_000 as Weight).saturating_mul(b as Weight)) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } - fn unlock_remove(r: u32) -> Weight { - (37_418_000_u64) + // Storage: Democracy VotingOf (r:1 w:1) + // Storage: Balances Locks (r:1 w:1) + // Storage: System Account (r:1 w:1) + fn unlock_remove(r: u32, ) -> Weight { + (33_290_000 as Weight) // Standard Error: 0 - .saturating_add((55_000_u64).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(3_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + .saturating_add((111_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } - fn unlock_set(r: u32) -> Weight { - (35_077_000_u64) + // Storage: Democracy VotingOf (r:1 w:1) + // Storage: Balances Locks (r:1 w:1) + // Storage: System Account (r:1 w:1) + fn unlock_set(r: u32, ) -> Weight { + (30_871_000 as Weight) // Standard Error: 0 - .saturating_add((197_000_u64).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(3_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + .saturating_add((199_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } - fn remove_vote(r: u32) -> Weight { - (19_476_000_u64) + // Storage: Democracy ReferendumInfoOf (r:1 w:1) + // Storage: Democracy VotingOf (r:1 w:1) + fn remove_vote(r: u32, ) -> Weight { + (15_910_000 as Weight) // Standard Error: 0 - .saturating_add((183_000_u64).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().writes(2_u64)) + .saturating_add((199_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) } - fn remove_other_vote(r: u32) -> Weight { - (19_518_000_u64) + // Storage: Democracy ReferendumInfoOf (r:1 w:1) + // Storage: Democracy VotingOf (r:1 w:1) + fn remove_other_vote(r: u32, ) -> Weight { + (15_776_000 as Weight) // Standard Error: 0 - .saturating_add((186_000_u64).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().writes(2_u64)) + .saturating_add((204_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) } } diff --git a/runtimes/spiritnet/src/weights/pallet_did_lookup.rs b/runtimes/spiritnet/src/weights/pallet_did_lookup.rs index ca637d24a..b2b97702a 100644 --- a/runtimes/spiritnet/src/weights/pallet_did_lookup.rs +++ b/runtimes/spiritnet/src/weights/pallet_did_lookup.rs @@ -19,14 +19,15 @@ //! Autogenerated weights for pallet_did_lookup //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2022-04-08, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 1024 // Executed Command: -// target/release/kilt-parachain +// ./target/release/kilt-parachain // benchmark +// pallet // --chain=spiritnet-dev -// --steps=50 +// --steps=1 // --repeat=20 // --pallet=pallet-did-lookup // --extrinsic=* @@ -51,7 +52,7 @@ impl pallet_did_lookup::WeightInfo for WeightInfo { // Storage: DidLookup ConnectedDids (r:1 w:1) // Storage: DidLookup ConnectedAccounts (r:0 w:2) fn associate_account() -> Weight { - (111_620_000 as Weight) + (114_777_000 as Weight) .saturating_add(T::DbWeight::get().reads(2 as Weight)) .saturating_add(T::DbWeight::get().writes(4 as Weight)) } @@ -59,7 +60,7 @@ impl pallet_did_lookup::WeightInfo for WeightInfo { // Storage: DidLookup ConnectedDids (r:1 w:1) // Storage: DidLookup ConnectedAccounts (r:0 w:2) fn associate_sender() -> Weight { - (52_259_000 as Weight) + (55_846_000 as Weight) .saturating_add(T::DbWeight::get().reads(2 as Weight)) .saturating_add(T::DbWeight::get().writes(4 as Weight)) } @@ -67,7 +68,7 @@ impl pallet_did_lookup::WeightInfo for WeightInfo { // Storage: System Account (r:1 w:1) // Storage: DidLookup ConnectedAccounts (r:0 w:1) fn remove_sender_association() -> Weight { - (34_356_000 as Weight) + (37_370_000 as Weight) .saturating_add(T::DbWeight::get().reads(2 as Weight)) .saturating_add(T::DbWeight::get().writes(3 as Weight)) } @@ -75,7 +76,7 @@ impl pallet_did_lookup::WeightInfo for WeightInfo { // Storage: System Account (r:1 w:1) // Storage: DidLookup ConnectedAccounts (r:0 w:1) fn remove_account_association() -> Weight { - (37_363_000 as Weight) + (38_972_000 as Weight) .saturating_add(T::DbWeight::get().reads(2 as Weight)) .saturating_add(T::DbWeight::get().writes(3 as Weight)) } diff --git a/runtimes/spiritnet/src/weights/pallet_indices.rs b/runtimes/spiritnet/src/weights/pallet_indices.rs index adfb30ed2..2efca7fec 100644 --- a/runtimes/spiritnet/src/weights/pallet_indices.rs +++ b/runtimes/spiritnet/src/weights/pallet_indices.rs @@ -19,16 +19,17 @@ //! Autogenerated weights for pallet_indices //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2021-10-17, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 128 +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 1024 // Executed Command: // ./target/release/kilt-parachain // benchmark +// pallet // --chain=spiritnet-dev -// --steps=50 +// --steps=1 // --repeat=20 -// --pallet=pallet_indices +// --pallet=pallet-indices // --extrinsic=* // --execution=wasm // --wasm-execution=compiled @@ -36,40 +37,47 @@ // --output=./runtimes/spiritnet/src/weights/pallet_indices.rs // --template=.maintain/runtime-weight-template.hbs - #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] +#![allow(clippy::unnecessary_cast)] use frame_support::{traits::Get, weights::Weight}; use sp_std::marker::PhantomData; -/// Weights for pallet_indices using the recommended hardware. +/// Weight functions for `pallet_indices`. pub struct WeightInfo(PhantomData); impl pallet_indices::WeightInfo for WeightInfo { + // Storage: Indices Accounts (r:1 w:1) fn claim() -> Weight { - (45_460_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (33_463_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Indices Accounts (r:1 w:1) + // Storage: System Account (r:1 w:1) fn transfer() -> Weight { - (56_518_000_u64) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().writes(2_u64)) + (42_729_000 as Weight) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) } + // Storage: Indices Accounts (r:1 w:1) fn free() -> Weight { - (45_871_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (35_762_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: Indices Accounts (r:1 w:1) + // Storage: System Account (r:1 w:1) fn force_transfer() -> Weight { - (45_443_000_u64) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().writes(2_u64)) + (35_636_000 as Weight) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) } + // Storage: Indices Accounts (r:1 w:1) fn freeze() -> Weight { - (42_333_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (40_105_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } } diff --git a/runtimes/spiritnet/src/weights/pallet_inflation.rs b/runtimes/spiritnet/src/weights/pallet_inflation.rs index acd62c750..7e5ee39a3 100644 --- a/runtimes/spiritnet/src/weights/pallet_inflation.rs +++ b/runtimes/spiritnet/src/weights/pallet_inflation.rs @@ -19,14 +19,15 @@ //! Autogenerated weights for pallet_inflation //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2021-10-29, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 128 +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 1024 // Executed Command: -// target/release/kilt-parachain +// ./target/release/kilt-parachain // benchmark +// pallet // --chain=spiritnet-dev -// --steps=50 +// --steps=1 // --repeat=20 // --pallet=pallet-inflation // --extrinsic=* @@ -36,7 +37,6 @@ // --output=./runtimes/spiritnet/src/weights/pallet_inflation.rs // --template=.maintain/runtime-weight-template.hbs - #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] @@ -50,11 +50,11 @@ pub struct WeightInfo(PhantomData); impl pallet_inflation::WeightInfo for WeightInfo { // Storage: System Account (r:1 w:1) fn on_initialize_mint_to_treasury() -> Weight { - (30_794_000 as Weight) + (30_864_000 as Weight) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(1 as Weight)) } fn on_initialize_no_action() -> Weight { - (398_000 as Weight) + (263_000 as Weight) } } diff --git a/runtimes/spiritnet/src/weights/pallet_membership.rs b/runtimes/spiritnet/src/weights/pallet_membership.rs index edc803a8e..d012ad85b 100644 --- a/runtimes/spiritnet/src/weights/pallet_membership.rs +++ b/runtimes/spiritnet/src/weights/pallet_membership.rs @@ -19,16 +19,17 @@ //! Autogenerated weights for pallet_membership //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2021-10-17, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 128 +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 1024 // Executed Command: // ./target/release/kilt-parachain // benchmark +// pallet // --chain=spiritnet-dev -// --steps=50 +// --steps=1 // --repeat=20 -// --pallet=pallet_membership +// --pallet=pallet-membership // --extrinsic=* // --execution=wasm // --wasm-execution=compiled @@ -36,63 +37,92 @@ // --output=./runtimes/spiritnet/src/weights/pallet_membership.rs // --template=.maintain/runtime-weight-template.hbs - #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] +#![allow(clippy::unnecessary_cast)] use frame_support::{traits::Get, weights::Weight}; use sp_std::marker::PhantomData; -/// Weights for pallet_membership using the recommended hardware. +/// Weight functions for `pallet_membership`. pub struct WeightInfo(PhantomData); impl pallet_membership::WeightInfo for WeightInfo { + // Storage: TechnicalMembership Members (r:1 w:1) + // Storage: TechnicalCommittee Proposals (r:1 w:0) + // Storage: TechnicalCommittee Members (r:0 w:1) + // Storage: TechnicalCommittee Prime (r:0 w:1) fn add_member(m: u32, ) -> Weight { - (25_915_000_u64) - // Standard Error: 1_000 - .saturating_add((136_000_u64).saturating_mul(m as Weight)) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + (22_804_000 as Weight) + // Standard Error: 11_000 + .saturating_add((223_000 as Weight).saturating_mul(m as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } + // Storage: TechnicalMembership Members (r:1 w:1) + // Storage: TechnicalCommittee Proposals (r:1 w:0) + // Storage: TechnicalMembership Prime (r:1 w:0) + // Storage: TechnicalCommittee Members (r:0 w:1) + // Storage: TechnicalCommittee Prime (r:0 w:1) fn remove_member(m: u32, ) -> Weight { - (31_733_000_u64) + (27_011_000 as Weight) // Standard Error: 0 - .saturating_add((111_000_u64).saturating_mul(m as Weight)) - .saturating_add(T::DbWeight::get().reads(3_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + .saturating_add((46_000 as Weight).saturating_mul(m as Weight)) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } + // Storage: TechnicalMembership Members (r:1 w:1) + // Storage: TechnicalCommittee Proposals (r:1 w:0) + // Storage: TechnicalMembership Prime (r:1 w:0) + // Storage: TechnicalCommittee Members (r:0 w:1) + // Storage: TechnicalCommittee Prime (r:0 w:1) fn swap_member(m: u32, ) -> Weight { - (31_877_000_u64) + (27_119_000 as Weight) // Standard Error: 0 - .saturating_add((126_000_u64).saturating_mul(m as Weight)) - .saturating_add(T::DbWeight::get().reads(3_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + .saturating_add((53_000 as Weight).saturating_mul(m as Weight)) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } + // Storage: TechnicalMembership Members (r:1 w:1) + // Storage: TechnicalCommittee Proposals (r:1 w:0) + // Storage: TechnicalMembership Prime (r:1 w:0) + // Storage: TechnicalCommittee Members (r:0 w:1) + // Storage: TechnicalCommittee Prime (r:0 w:1) fn reset_member(m: u32, ) -> Weight { - (32_641_000_u64) - // Standard Error: 1_000 - .saturating_add((286_000_u64).saturating_mul(m as Weight)) - .saturating_add(T::DbWeight::get().reads(3_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + (26_139_000 as Weight) + // Standard Error: 0 + .saturating_add((204_000 as Weight).saturating_mul(m as Weight)) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } + // Storage: TechnicalMembership Members (r:1 w:1) + // Storage: TechnicalCommittee Proposals (r:1 w:0) + // Storage: TechnicalMembership Prime (r:1 w:1) + // Storage: TechnicalCommittee Members (r:0 w:1) + // Storage: TechnicalCommittee Prime (r:0 w:1) fn change_key(m: u32, ) -> Weight { - (34_010_000_u64) + (28_045_000 as Weight) // Standard Error: 0 - .saturating_add((120_000_u64).saturating_mul(m as Weight)) - .saturating_add(T::DbWeight::get().reads(3_u64)) - .saturating_add(T::DbWeight::get().writes(4_u64)) + .saturating_add((62_000 as Weight).saturating_mul(m as Weight)) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(4 as Weight)) } + // Storage: TechnicalMembership Members (r:1 w:0) + // Storage: TechnicalMembership Prime (r:0 w:1) + // Storage: TechnicalCommittee Prime (r:0 w:1) fn set_prime(m: u32, ) -> Weight { - (8_435_000_u64) + (7_675_000 as Weight) // Standard Error: 0 - .saturating_add((88_000_u64).saturating_mul(m as Weight)) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(2_u64)) + .saturating_add((31_000 as Weight).saturating_mul(m as Weight)) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) } + // Storage: TechnicalMembership Prime (r:0 w:1) + // Storage: TechnicalCommittee Prime (r:0 w:1) fn clear_prime(m: u32, ) -> Weight { - (3_473_000_u64) + (3_004_000 as Weight) // Standard Error: 0 - .saturating_add((2_000_u64).saturating_mul(m as Weight)) - .saturating_add(T::DbWeight::get().writes(2_u64)) + .saturating_add((2_000 as Weight).saturating_mul(m as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) } } diff --git a/runtimes/spiritnet/src/weights/pallet_preimage.rs b/runtimes/spiritnet/src/weights/pallet_preimage.rs index 24a814283..09f2ee7ba 100644 --- a/runtimes/spiritnet/src/weights/pallet_preimage.rs +++ b/runtimes/spiritnet/src/weights/pallet_preimage.rs @@ -19,16 +19,17 @@ //! Autogenerated weights for pallet_preimage //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2022-02-02, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 1024 // Executed Command: // ./target/release/kilt-parachain // benchmark +// pallet // --chain=spiritnet-dev -// --steps=50 +// --steps=1 // --repeat=20 -// --pallet=pallet_preimage +// --pallet=pallet-preimage // --extrinsic=* // --execution=wasm // --wasm-execution=compiled @@ -50,7 +51,7 @@ impl pallet_preimage::WeightInfo for WeightInfo { // Storage: Preimage PreimageFor (r:1 w:1) // Storage: Preimage StatusFor (r:1 w:1) fn note_preimage(s: u32, ) -> Weight { - (0 as Weight) + (39_701_000 as Weight) // Standard Error: 0 .saturating_add((2_000 as Weight).saturating_mul(s as Weight)) .saturating_add(T::DbWeight::get().reads(2 as Weight)) @@ -59,7 +60,7 @@ impl pallet_preimage::WeightInfo for WeightInfo { // Storage: Preimage PreimageFor (r:1 w:1) // Storage: Preimage StatusFor (r:1 w:0) fn note_requested_preimage(s: u32, ) -> Weight { - (0 as Weight) + (23_922_000 as Weight) // Standard Error: 0 .saturating_add((2_000 as Weight).saturating_mul(s as Weight)) .saturating_add(T::DbWeight::get().reads(2 as Weight)) @@ -68,7 +69,7 @@ impl pallet_preimage::WeightInfo for WeightInfo { // Storage: Preimage PreimageFor (r:1 w:1) // Storage: Preimage StatusFor (r:1 w:0) fn note_no_deposit_preimage(s: u32, ) -> Weight { - (0 as Weight) + (21_458_000 as Weight) // Standard Error: 0 .saturating_add((2_000 as Weight).saturating_mul(s as Weight)) .saturating_add(T::DbWeight::get().reads(2 as Weight)) @@ -77,58 +78,58 @@ impl pallet_preimage::WeightInfo for WeightInfo { // Storage: Preimage StatusFor (r:1 w:1) // Storage: Preimage PreimageFor (r:0 w:1) fn unnote_preimage() -> Weight { - (55_294_000 as Weight) + (48_908_000 as Weight) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(2 as Weight)) } // Storage: Preimage StatusFor (r:1 w:1) // Storage: Preimage PreimageFor (r:0 w:1) fn unnote_no_deposit_preimage() -> Weight { - (36_259_000 as Weight) + (28_896_000 as Weight) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(2 as Weight)) } // Storage: Preimage StatusFor (r:1 w:1) fn request_preimage() -> Weight { - (53_160_000 as Weight) + (45_762_000 as Weight) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(1 as Weight)) } // Storage: Preimage StatusFor (r:1 w:1) fn request_no_deposit_preimage() -> Weight { - (34_243_000 as Weight) + (27_024_000 as Weight) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(1 as Weight)) } // Storage: Preimage StatusFor (r:1 w:1) fn request_unnoted_preimage() -> Weight { - (19_289_000 as Weight) + (19_427_000 as Weight) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(1 as Weight)) } // Storage: Preimage StatusFor (r:1 w:1) fn request_requested_preimage() -> Weight { - (7_456_000 as Weight) + (7_106_000 as Weight) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(1 as Weight)) } // Storage: Preimage StatusFor (r:1 w:1) // Storage: Preimage PreimageFor (r:0 w:1) fn unrequest_preimage() -> Weight { - (35_005_000 as Weight) + (29_270_000 as Weight) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(2 as Weight)) } // Storage: Preimage StatusFor (r:1 w:1) // Storage: Preimage PreimageFor (r:0 w:1) fn unrequest_unnoted_preimage() -> Weight { - (21_267_000 as Weight) + (21_064_000 as Weight) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(2 as Weight)) } // Storage: Preimage StatusFor (r:1 w:1) fn unrequest_multi_referenced_preimage() -> Weight { - (7_044_000 as Weight) + (6_825_000 as Weight) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(1 as Weight)) } diff --git a/runtimes/spiritnet/src/weights/pallet_proxy.rs b/runtimes/spiritnet/src/weights/pallet_proxy.rs index 762a7ff70..9cfa3447d 100644 --- a/runtimes/spiritnet/src/weights/pallet_proxy.rs +++ b/runtimes/spiritnet/src/weights/pallet_proxy.rs @@ -19,14 +19,15 @@ //! Autogenerated weights for pallet_proxy //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2022-03-25, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 1024 // Executed Command: -// target/release/kilt-parachain +// ./target/release/kilt-parachain // benchmark +// pallet // --chain=spiritnet-dev -// --steps=50 +// --steps=1 // --repeat=20 // --pallet=pallet-proxy // --extrinsic=* @@ -49,40 +50,38 @@ pub struct WeightInfo(PhantomData); impl pallet_proxy::WeightInfo for WeightInfo { // Storage: Proxy Proxies (r:1 w:0) fn proxy(p: u32, ) -> Weight { - (19_721_000 as Weight) - // Standard Error: 14_000 - .saturating_add((162_000 as Weight).saturating_mul(p as Weight)) + (21_011_000 as Weight) + // Standard Error: 7_000 + .saturating_add((185_000 as Weight).saturating_mul(p as Weight)) .saturating_add(T::DbWeight::get().reads(1 as Weight)) } // Storage: Proxy Proxies (r:1 w:0) // Storage: Proxy Announcements (r:1 w:1) // Storage: System Account (r:1 w:1) fn proxy_announced(a: u32, p: u32, ) -> Weight { - (42_425_000 as Weight) - // Standard Error: 16_000 - .saturating_add((496_000 as Weight).saturating_mul(a as Weight)) - // Standard Error: 18_000 - .saturating_add((155_000 as Weight).saturating_mul(p as Weight)) + (44_314_000 as Weight) + // Standard Error: 6_000 + .saturating_add((536_000 as Weight).saturating_mul(a as Weight)) + // Standard Error: 7_000 + .saturating_add((126_000 as Weight).saturating_mul(p as Weight)) .saturating_add(T::DbWeight::get().reads(3 as Weight)) .saturating_add(T::DbWeight::get().writes(2 as Weight)) } // Storage: Proxy Announcements (r:1 w:1) // Storage: System Account (r:1 w:1) fn remove_announcement(a: u32, _p: u32, ) -> Weight { - (29_958_000 as Weight) - // Standard Error: 11_000 - .saturating_add((499_000 as Weight).saturating_mul(a as Weight)) + (32_029_000 as Weight) + // Standard Error: 7_000 + .saturating_add((462_000 as Weight).saturating_mul(a as Weight)) .saturating_add(T::DbWeight::get().reads(2 as Weight)) .saturating_add(T::DbWeight::get().writes(2 as Weight)) } // Storage: Proxy Announcements (r:1 w:1) // Storage: System Account (r:1 w:1) - fn reject_announcement(a: u32, p: u32, ) -> Weight { - (29_568_000 as Weight) + fn reject_announcement(a: u32, _p: u32, ) -> Weight { + (32_803_000 as Weight) // Standard Error: 12_000 - .saturating_add((513_000 as Weight).saturating_mul(a as Weight)) - // Standard Error: 14_000 - .saturating_add((11_000 as Weight).saturating_mul(p as Weight)) + .saturating_add((399_000 as Weight).saturating_mul(a as Weight)) .saturating_add(T::DbWeight::get().reads(2 as Weight)) .saturating_add(T::DbWeight::get().writes(2 as Weight)) } @@ -90,50 +89,52 @@ impl pallet_proxy::WeightInfo for WeightInfo { // Storage: Proxy Announcements (r:1 w:1) // Storage: System Account (r:1 w:1) fn announce(a: u32, p: u32, ) -> Weight { - (39_486_000 as Weight) - // Standard Error: 14_000 - .saturating_add((560_000 as Weight).saturating_mul(a as Weight)) - // Standard Error: 16_000 - .saturating_add((229_000 as Weight).saturating_mul(p as Weight)) + (43_487_000 as Weight) + // Standard Error: 8_000 + .saturating_add((405_000 as Weight).saturating_mul(a as Weight)) + // Standard Error: 9_000 + .saturating_add((24_000 as Weight).saturating_mul(p as Weight)) .saturating_add(T::DbWeight::get().reads(3 as Weight)) .saturating_add(T::DbWeight::get().writes(2 as Weight)) } // Storage: Proxy Proxies (r:1 w:1) fn add_proxy(p: u32, ) -> Weight { - (34_522_000 as Weight) - // Standard Error: 17_000 - .saturating_add((249_000 as Weight).saturating_mul(p as Weight)) + (36_963_000 as Weight) + // Standard Error: 10_000 + .saturating_add((196_000 as Weight).saturating_mul(p as Weight)) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(1 as Weight)) } // Storage: Proxy Proxies (r:1 w:1) fn remove_proxy(p: u32, ) -> Weight { - (29_057_000 as Weight) + (36_855_000 as Weight) // Standard Error: 17_000 - .saturating_add((240_000 as Weight).saturating_mul(p as Weight)) + .saturating_add((226_000 as Weight).saturating_mul(p as Weight)) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(1 as Weight)) } // Storage: Proxy Proxies (r:1 w:1) fn remove_proxies(p: u32, ) -> Weight { - (28_744_000 as Weight) - // Standard Error: 19_000 - .saturating_add((184_000 as Weight).saturating_mul(p as Weight)) + (31_428_000 as Weight) + // Standard Error: 7_000 + .saturating_add((174_000 as Weight).saturating_mul(p as Weight)) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(1 as Weight)) } // Storage: unknown [0x3a65787472696e7369635f696e646578] (r:1 w:0) // Storage: Proxy Proxies (r:1 w:1) - fn anonymous(_p: u32, ) -> Weight { - (40_665_000 as Weight) + fn anonymous(p: u32, ) -> Weight { + (41_835_000 as Weight) + // Standard Error: 24_000 + .saturating_add((135_000 as Weight).saturating_mul(p as Weight)) .saturating_add(T::DbWeight::get().reads(2 as Weight)) .saturating_add(T::DbWeight::get().writes(1 as Weight)) } // Storage: Proxy Proxies (r:1 w:1) fn kill_anonymous(p: u32, ) -> Weight { - (31_118_000 as Weight) - // Standard Error: 14_000 - .saturating_add((213_000 as Weight).saturating_mul(p as Weight)) + (33_364_000 as Weight) + // Standard Error: 8_000 + .saturating_add((60_000 as Weight).saturating_mul(p as Weight)) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(1 as Weight)) } diff --git a/runtimes/spiritnet/src/weights/pallet_scheduler.rs b/runtimes/spiritnet/src/weights/pallet_scheduler.rs index eb821f48d..a8e4ca888 100644 --- a/runtimes/spiritnet/src/weights/pallet_scheduler.rs +++ b/runtimes/spiritnet/src/weights/pallet_scheduler.rs @@ -19,16 +19,17 @@ //! Autogenerated weights for pallet_scheduler //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2022-02-02, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 1024 // Executed Command: // ./target/release/kilt-parachain // benchmark +// pallet // --chain=spiritnet-dev -// --steps=50 +// --steps=1 // --repeat=20 -// --pallet=pallet_scheduler +// --pallet=pallet-scheduler // --extrinsic=* // --execution=wasm // --wasm-execution=compiled @@ -52,9 +53,9 @@ impl pallet_scheduler::WeightInfo for WeightInfo { // Storage: Preimage StatusFor (r:1 w:1) // Storage: Scheduler Lookup (r:0 w:1) fn on_initialize_periodic_named_resolved(s: u32, ) -> Weight { - (9_808_000 as Weight) - // Standard Error: 27_000 - .saturating_add((29_479_000 as Weight).saturating_mul(s as Weight)) + (16_582_000 as Weight) + // Standard Error: 9_000 + .saturating_add((30_119_000 as Weight).saturating_mul(s as Weight)) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().reads((3 as Weight).saturating_mul(s as Weight))) .saturating_add(T::DbWeight::get().writes(1 as Weight)) @@ -65,9 +66,9 @@ impl pallet_scheduler::WeightInfo for WeightInfo { // Storage: Preimage StatusFor (r:1 w:1) // Storage: Scheduler Lookup (r:0 w:1) fn on_initialize_named_resolved(s: u32, ) -> Weight { - (9_431_000 as Weight) - // Standard Error: 19_000 - .saturating_add((22_740_000 as Weight).saturating_mul(s as Weight)) + (15_117_000 as Weight) + // Standard Error: 14_000 + .saturating_add((23_014_000 as Weight).saturating_mul(s as Weight)) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().reads((2 as Weight).saturating_mul(s as Weight))) .saturating_add(T::DbWeight::get().writes(1 as Weight)) @@ -77,9 +78,9 @@ impl pallet_scheduler::WeightInfo for WeightInfo { // Storage: Preimage PreimageFor (r:1 w:1) // Storage: Preimage StatusFor (r:1 w:1) fn on_initialize_periodic_resolved(s: u32, ) -> Weight { - (9_424_000 as Weight) - // Standard Error: 21_000 - .saturating_add((25_310_000 as Weight).saturating_mul(s as Weight)) + (14_930_000 as Weight) + // Standard Error: 94_000 + .saturating_add((26_006_000 as Weight).saturating_mul(s as Weight)) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().reads((3 as Weight).saturating_mul(s as Weight))) .saturating_add(T::DbWeight::get().writes(1 as Weight)) @@ -89,9 +90,9 @@ impl pallet_scheduler::WeightInfo for WeightInfo { // Storage: Preimage PreimageFor (r:1 w:1) // Storage: Preimage StatusFor (r:1 w:1) fn on_initialize_resolved(s: u32, ) -> Weight { - (10_951_000 as Weight) - // Standard Error: 17_000 - .saturating_add((20_884_000 as Weight).saturating_mul(s as Weight)) + (15_944_000 as Weight) + // Standard Error: 25_000 + .saturating_add((21_044_000 as Weight).saturating_mul(s as Weight)) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().reads((2 as Weight).saturating_mul(s as Weight))) .saturating_add(T::DbWeight::get().writes(1 as Weight)) @@ -101,9 +102,9 @@ impl pallet_scheduler::WeightInfo for WeightInfo { // Storage: Preimage PreimageFor (r:1 w:0) // Storage: Scheduler Lookup (r:0 w:1) fn on_initialize_named_aborted(s: u32, ) -> Weight { - (11_677_000 as Weight) - // Standard Error: 6_000 - .saturating_add((9_606_000 as Weight).saturating_mul(s as Weight)) + (11_119_000 as Weight) + // Standard Error: 11_000 + .saturating_add((9_144_000 as Weight).saturating_mul(s as Weight)) .saturating_add(T::DbWeight::get().reads(2 as Weight)) .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(s as Weight))) .saturating_add(T::DbWeight::get().writes(2 as Weight)) @@ -112,9 +113,9 @@ impl pallet_scheduler::WeightInfo for WeightInfo { // Storage: Scheduler Agenda (r:2 w:2) // Storage: Preimage PreimageFor (r:1 w:0) fn on_initialize_aborted(s: u32, ) -> Weight { - (13_490_000 as Weight) - // Standard Error: 5_000 - .saturating_add((5_695_000 as Weight).saturating_mul(s as Weight)) + (10_038_000 as Weight) + // Standard Error: 6_000 + .saturating_add((5_022_000 as Weight).saturating_mul(s as Weight)) .saturating_add(T::DbWeight::get().reads(2 as Weight)) .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(s as Weight))) .saturating_add(T::DbWeight::get().writes(2 as Weight)) @@ -122,9 +123,9 @@ impl pallet_scheduler::WeightInfo for WeightInfo { // Storage: Scheduler Agenda (r:2 w:2) // Storage: Scheduler Lookup (r:0 w:1) fn on_initialize_periodic_named(s: u32, ) -> Weight { - (18_287_000 as Weight) - // Standard Error: 12_000 - .saturating_add((14_340_000 as Weight).saturating_mul(s as Weight)) + (15_669_000 as Weight) + // Standard Error: 18_000 + .saturating_add((14_595_000 as Weight).saturating_mul(s as Weight)) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(s as Weight))) .saturating_add(T::DbWeight::get().writes(1 as Weight)) @@ -132,9 +133,9 @@ impl pallet_scheduler::WeightInfo for WeightInfo { } // Storage: Scheduler Agenda (r:2 w:2) fn on_initialize_periodic(s: u32, ) -> Weight { - (17_494_000 as Weight) - // Standard Error: 7_000 - .saturating_add((10_503_000 as Weight).saturating_mul(s as Weight)) + (14_997_000 as Weight) + // Standard Error: 14_000 + .saturating_add((10_203_000 as Weight).saturating_mul(s as Weight)) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(s as Weight))) .saturating_add(T::DbWeight::get().writes(1 as Weight)) @@ -143,53 +144,53 @@ impl pallet_scheduler::WeightInfo for WeightInfo { // Storage: Scheduler Agenda (r:1 w:1) // Storage: Scheduler Lookup (r:0 w:1) fn on_initialize_named(s: u32, ) -> Weight { - (18_261_000 as Weight) + (15_694_000 as Weight) // Standard Error: 6_000 - .saturating_add((7_843_000 as Weight).saturating_mul(s as Weight)) + .saturating_add((7_671_000 as Weight).saturating_mul(s as Weight)) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(1 as Weight)) .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(s as Weight))) } // Storage: Scheduler Agenda (r:1 w:1) fn on_initialize(s: u32, ) -> Weight { - (18_025_000 as Weight) - // Standard Error: 6_000 - .saturating_add((6_317_000 as Weight).saturating_mul(s as Weight)) + (15_005_000 as Weight) + // Standard Error: 3_000 + .saturating_add((5_998_000 as Weight).saturating_mul(s as Weight)) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(1 as Weight)) } // Storage: Scheduler Agenda (r:1 w:1) fn schedule(s: u32, ) -> Weight { - (20_940_000 as Weight) + (20_276_000 as Weight) // Standard Error: 1_000 - .saturating_add((95_000 as Weight).saturating_mul(s as Weight)) + .saturating_add((159_000 as Weight).saturating_mul(s as Weight)) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(1 as Weight)) } // Storage: Scheduler Agenda (r:1 w:1) // Storage: Scheduler Lookup (r:0 w:1) fn cancel(s: u32, ) -> Weight { - (20_324_000 as Weight) - // Standard Error: 3_000 - .saturating_add((1_126_000 as Weight).saturating_mul(s as Weight)) + (20_897_000 as Weight) + // Standard Error: 1_000 + .saturating_add((937_000 as Weight).saturating_mul(s as Weight)) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(2 as Weight)) } // Storage: Scheduler Lookup (r:1 w:1) // Storage: Scheduler Agenda (r:1 w:1) fn schedule_named(s: u32, ) -> Weight { - (25_646_000 as Weight) - // Standard Error: 2_000 - .saturating_add((108_000 as Weight).saturating_mul(s as Weight)) + (25_199_000 as Weight) + // Standard Error: 1_000 + .saturating_add((181_000 as Weight).saturating_mul(s as Weight)) .saturating_add(T::DbWeight::get().reads(2 as Weight)) .saturating_add(T::DbWeight::get().writes(2 as Weight)) } // Storage: Scheduler Lookup (r:1 w:1) // Storage: Scheduler Agenda (r:1 w:1) fn cancel_named(s: u32, ) -> Weight { - (22_831_000 as Weight) - // Standard Error: 3_000 - .saturating_add((1_153_000 as Weight).saturating_mul(s as Weight)) + (22_673_000 as Weight) + // Standard Error: 2_000 + .saturating_add((998_000 as Weight).saturating_mul(s as Weight)) .saturating_add(T::DbWeight::get().reads(2 as Weight)) .saturating_add(T::DbWeight::get().writes(2 as Weight)) } diff --git a/runtimes/spiritnet/src/weights/pallet_session.rs b/runtimes/spiritnet/src/weights/pallet_session.rs index ce51af583..c5402f6a3 100644 --- a/runtimes/spiritnet/src/weights/pallet_session.rs +++ b/runtimes/spiritnet/src/weights/pallet_session.rs @@ -19,16 +19,17 @@ //! Autogenerated weights for pallet_session //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2021-10-17, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 128 +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 1024 // Executed Command: // ./target/release/kilt-parachain // benchmark +// pallet // --chain=spiritnet-dev -// --steps=50 +// --steps=1 // --repeat=20 -// --pallet=pallet_session +// --pallet=pallet-session // --extrinsic=* // --execution=wasm // --wasm-execution=compiled @@ -36,25 +37,29 @@ // --output=./runtimes/spiritnet/src/weights/pallet_session.rs // --template=.maintain/runtime-weight-template.hbs - #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] +#![allow(clippy::unnecessary_cast)] use frame_support::{traits::Get, weights::Weight}; use sp_std::marker::PhantomData; -/// Weights for pallet_session using the recommended hardware. +/// 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) fn set_keys() -> Weight { - (29_009_000_u64) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().writes(2_u64)) + (21_418_000 as Weight) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) } + // Storage: Session NextKeys (r:1 w:1) + // Storage: Session KeyOwner (r:0 w:1) fn purge_keys() -> Weight { - (21_437_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(2_u64)) + (16_419_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) } } diff --git a/runtimes/spiritnet/src/weights/pallet_timestamp.rs b/runtimes/spiritnet/src/weights/pallet_timestamp.rs index dffc5e94a..73748e78a 100644 --- a/runtimes/spiritnet/src/weights/pallet_timestamp.rs +++ b/runtimes/spiritnet/src/weights/pallet_timestamp.rs @@ -19,16 +19,17 @@ //! Autogenerated weights for pallet_timestamp //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2021-10-17, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 128 +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 1024 // Executed Command: // ./target/release/kilt-parachain // benchmark +// pallet // --chain=spiritnet-dev -// --steps=50 +// --steps=1 // --repeat=20 -// --pallet=pallet_timestamp +// --pallet=pallet-timestamp // --extrinsic=* // --execution=wasm // --wasm-execution=compiled @@ -36,23 +37,24 @@ // --output=./runtimes/spiritnet/src/weights/pallet_timestamp.rs // --template=.maintain/runtime-weight-template.hbs - #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] +#![allow(clippy::unnecessary_cast)] use frame_support::{traits::Get, weights::Weight}; use sp_std::marker::PhantomData; -/// Weights for pallet_timestamp using the recommended hardware. +/// Weight functions for `pallet_timestamp`. pub struct WeightInfo(PhantomData); impl pallet_timestamp::WeightInfo for WeightInfo { + // Storage: Timestamp Now (r:1 w:1) fn set() -> Weight { - (8_468_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + (6_990_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } fn on_finalize() -> Weight { - (4_951_000_u64) + (4_251_000 as Weight) } } diff --git a/runtimes/spiritnet/src/weights/pallet_tips.rs b/runtimes/spiritnet/src/weights/pallet_tips.rs new file mode 100644 index 000000000..0e164e6fc --- /dev/null +++ b/runtimes/spiritnet/src/weights/pallet_tips.rs @@ -0,0 +1,108 @@ +// KILT Blockchain – https://botlabs.org +// Copyright (C) 2019-2022 BOTLabs GmbH + +// The KILT Blockchain is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. + +// The KILT Blockchain is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. + +// You should have received a copy of the GNU General Public License +// along with this program. If not, see . + +// If you feel like getting in touch with us, you can do so at info@botlabs.org + +//! Autogenerated weights for pallet_tips +//! +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 1024 + +// Executed Command: +// ./target/release/kilt-parachain +// benchmark +// pallet +// --chain=spiritnet-dev +// --steps=1 +// --repeat=20 +// --pallet=pallet-tips +// --extrinsic=* +// --execution=wasm +// --wasm-execution=compiled +// --heap-pages=4096 +// --output=./runtimes/spiritnet/src/weights/pallet_tips.rs +// --template=.maintain/runtime-weight-template.hbs + +#![cfg_attr(rustfmt, rustfmt_skip)] +#![allow(unused_parens)] +#![allow(unused_imports)] +#![allow(clippy::unnecessary_cast)] + +use frame_support::{traits::Get, weights::Weight}; +use sp_std::marker::PhantomData; + +/// Weight functions for `pallet_tips`. +pub struct WeightInfo(PhantomData); +impl pallet_tips::WeightInfo for WeightInfo { + // Storage: Tips Reasons (r:1 w:1) + // Storage: Tips Tips (r:1 w:1) + fn report_awesome(r: u32, ) -> Weight { + (40_570_000 as Weight) + // Standard Error: 0 + .saturating_add((2_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) + } + // Storage: Tips Tips (r:1 w:1) + // Storage: Tips Reasons (r:0 w:1) + fn retract_tip() -> Weight { + (39_413_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) + } + // Storage: TipsMembership Members (r:1 w:0) + // Storage: Tips Reasons (r:1 w:1) + // Storage: Tips Tips (r:0 w:1) + fn tip_new(r: u32, t: u32, ) -> Weight { + (25_679_000 as Weight) + // Standard Error: 0 + .saturating_add((2_000 as Weight).saturating_mul(r as Weight)) + // Standard Error: 0 + .saturating_add((43_000 as Weight).saturating_mul(t as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) + } + // Storage: TipsMembership Members (r:1 w:0) + // Storage: Tips Tips (r:1 w:1) + fn tip(t: u32, ) -> Weight { + (15_006_000 as Weight) + // Standard Error: 0 + .saturating_add((234_000 as Weight).saturating_mul(t as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) + } + // Storage: Tips Tips (r:1 w:1) + // Storage: TipsMembership Members (r:1 w:0) + // Storage: System Account (r:2 w:2) + // Storage: Tips Reasons (r:0 w:1) + fn close_tip(t: u32, ) -> Weight { + (64_454_000 as Weight) + // Standard Error: 0 + .saturating_add((184_000 as Weight).saturating_mul(t as Weight)) + .saturating_add(T::DbWeight::get().reads(4 as Weight)) + .saturating_add(T::DbWeight::get().writes(4 as Weight)) + } + // Storage: Tips Tips (r:1 w:1) + // Storage: Tips Reasons (r:0 w:1) + fn slash_tip(t: u32, ) -> Weight { + (21_757_000 as Weight) + // Standard Error: 0 + .saturating_add((19_000 as Weight).saturating_mul(t as Weight)) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) + } +} diff --git a/runtimes/spiritnet/src/weights/pallet_treasury.rs b/runtimes/spiritnet/src/weights/pallet_treasury.rs index 542dce8dd..34e36e15d 100644 --- a/runtimes/spiritnet/src/weights/pallet_treasury.rs +++ b/runtimes/spiritnet/src/weights/pallet_treasury.rs @@ -19,16 +19,17 @@ //! Autogenerated weights for pallet_treasury //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2021-10-17, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 128 +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 1024 // Executed Command: // ./target/release/kilt-parachain // benchmark +// pallet // --chain=spiritnet-dev -// --steps=50 +// --steps=1 // --repeat=20 -// --pallet=pallet_treasury +// --pallet=pallet-treasury // --extrinsic=* // --execution=wasm // --wasm-execution=compiled @@ -36,41 +37,56 @@ // --output=./runtimes/spiritnet/src/weights/pallet_treasury.rs // --template=.maintain/runtime-weight-template.hbs - #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] +#![allow(clippy::unnecessary_cast)] use frame_support::{traits::Get, weights::Weight}; use sp_std::marker::PhantomData; -/// Weights for pallet_treasury using the recommended hardware. +/// Weight functions for `pallet_treasury`. pub struct WeightInfo(PhantomData); impl pallet_treasury::WeightInfo for WeightInfo { + // Storage: Treasury ProposalCount (r:1 w:1) + // Storage: Treasury Proposals (r:0 w:1) fn propose_spend() -> Weight { - (44_114_000_u64) - .saturating_add(T::DbWeight::get().reads(1_u64)) - .saturating_add(T::DbWeight::get().writes(2_u64)) + (33_993_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) } + // Storage: Treasury Proposals (r:1 w:1) + // Storage: System Account (r:2 w:2) fn reject_proposal() -> Weight { - (56_598_000_u64) - .saturating_add(T::DbWeight::get().reads(3_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + (51_599_000 as Weight) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } + // Storage: Treasury Proposals (r:1 w:0) + // Storage: Treasury Approvals (r:1 w:1) fn approve_proposal(p: u32, ) -> Weight { - (13_812_000_u64) + (9_601_000 as Weight) // Standard Error: 1_000 - .saturating_add((146_000_u64).saturating_mul(p as Weight)) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().writes(1_u64)) + .saturating_add((169_000 as Weight).saturating_mul(p as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) + } + // Storage: Treasury Approvals (r:1 w:1) + fn remove_approval() -> Weight { + (6_252_000 as Weight) + .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } + // Storage: System Account (r:1 w:0) + // Storage: Treasury Approvals (r:1 w:1) + // Storage: Treasury Proposals (r:100 w:100) fn on_initialize_proposals(p: u32, ) -> Weight { - (52_787_000_u64) - // Standard Error: 24_000 - .saturating_add((62_358_000_u64).saturating_mul(p as Weight)) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().reads((3_u64).saturating_mul(p as Weight))) - .saturating_add(T::DbWeight::get().writes(2_u64)) - .saturating_add(T::DbWeight::get().writes((3_u64).saturating_mul(p as Weight))) + (35_269_000 as Weight) + // Standard Error: 42_000 + .saturating_add((46_504_000 as Weight).saturating_mul(p as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().reads((3 as Weight).saturating_mul(p as Weight))) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) + .saturating_add(T::DbWeight::get().writes((3 as Weight).saturating_mul(p as Weight))) } } diff --git a/runtimes/spiritnet/src/weights/pallet_utility.rs b/runtimes/spiritnet/src/weights/pallet_utility.rs index acc595d03..29c2135e5 100644 --- a/runtimes/spiritnet/src/weights/pallet_utility.rs +++ b/runtimes/spiritnet/src/weights/pallet_utility.rs @@ -19,14 +19,15 @@ //! Autogenerated weights for pallet_utility //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2022-01-12, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 128 +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 1024 // Executed Command: -// target/release/kilt-parachain +// ./target/release/kilt-parachain // benchmark +// pallet // --chain=spiritnet-dev -// --steps=50 +// --steps=1 // --repeat=20 // --pallet=pallet-utility // --extrinsic=* @@ -48,19 +49,24 @@ use sp_std::marker::PhantomData; pub struct WeightInfo(PhantomData); impl pallet_utility::WeightInfo for WeightInfo { fn batch(c: u32, ) -> Weight { - (22_440_000 as Weight) - // Standard Error: 2_000 - .saturating_add((5_434_000 as Weight).saturating_mul(c as Weight)) + (12_999_000 as Weight) + // Standard Error: 3_000 + .saturating_add((4_094_000 as Weight).saturating_mul(c as Weight)) } fn as_derivative() -> Weight { - (3_316_000 as Weight) + (2_600_000 as Weight) } fn batch_all(c: u32, ) -> Weight { - (19_212_000 as Weight) - // Standard Error: 2_000 - .saturating_add((5_864_000 as Weight).saturating_mul(c as Weight)) + (17_564_000 as Weight) + // Standard Error: 3_000 + .saturating_add((4_447_000 as Weight).saturating_mul(c as Weight)) } fn dispatch_as() -> Weight { - (13_362_000 as Weight) + (13_814_000 as Weight) + } + fn force_batch(c: u32, ) -> Weight { + (12_779_000 as Weight) + // Standard Error: 4_000 + .saturating_add((4_112_000 as Weight).saturating_mul(c as Weight)) } } diff --git a/runtimes/spiritnet/src/weights/pallet_vesting.rs b/runtimes/spiritnet/src/weights/pallet_vesting.rs index 78f52c761..5284cdaf4 100644 --- a/runtimes/spiritnet/src/weights/pallet_vesting.rs +++ b/runtimes/spiritnet/src/weights/pallet_vesting.rs @@ -19,14 +19,15 @@ //! Autogenerated weights for pallet_vesting //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2021-10-21, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 128 +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 1024 // Executed Command: -// target/release/kilt-parachain +// ./target/release/kilt-parachain // benchmark +// pallet // --chain=spiritnet-dev -// --steps=50 +// --steps=1 // --repeat=20 // --pallet=pallet-vesting // --extrinsic=* @@ -36,87 +37,103 @@ // --output=./runtimes/spiritnet/src/weights/pallet_vesting.rs // --template=.maintain/runtime-weight-template.hbs - #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] +#![allow(clippy::unnecessary_cast)] use frame_support::{traits::Get, weights::Weight}; use sp_std::marker::PhantomData; -/// Weights for pallet_vesting using the recommended hardware. +/// Weight functions for `pallet_vesting`. pub struct WeightInfo(PhantomData); impl pallet_vesting::WeightInfo for WeightInfo { + // Storage: Vesting Vesting (r:1 w:1) + // Storage: Balances Locks (r:1 w:1) fn vest_locked(l: u32, s: u32, ) -> Weight { - (53_985_000_u64) + (42_785_000 as Weight) // Standard Error: 1_000 - .saturating_add((184_000_u64).saturating_mul(l as Weight)) + .saturating_add((107_000 as Weight).saturating_mul(l as Weight)) // Standard Error: 3_000 - .saturating_add((311_000_u64).saturating_mul(s as Weight)) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().writes(2_u64)) + .saturating_add((171_000 as Weight).saturating_mul(s as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) } + // Storage: Vesting Vesting (r:1 w:1) + // Storage: Balances Locks (r:1 w:1) fn vest_unlocked(l: u32, s: u32, ) -> Weight { - (53_259_000_u64) + (44_923_000 as Weight) // Standard Error: 1_000 - .saturating_add((183_000_u64).saturating_mul(l as Weight)) + .saturating_add((58_000 as Weight).saturating_mul(l as Weight)) // Standard Error: 3_000 - .saturating_add((194_000_u64).saturating_mul(s as Weight)) - .saturating_add(T::DbWeight::get().reads(2_u64)) - .saturating_add(T::DbWeight::get().writes(2_u64)) + .saturating_add((105_000 as Weight).saturating_mul(s as Weight)) + .saturating_add(T::DbWeight::get().reads(2 as Weight)) + .saturating_add(T::DbWeight::get().writes(2 as Weight)) } + // Storage: Vesting Vesting (r:1 w:1) + // Storage: Balances Locks (r:1 w:1) + // Storage: System Account (r:1 w:1) fn vest_other_locked(l: u32, s: u32, ) -> Weight { - (55_427_000_u64) + (41_986_000 as Weight) // Standard Error: 2_000 - .saturating_add((190_000_u64).saturating_mul(l as Weight)) + .saturating_add((113_000 as Weight).saturating_mul(l as Weight)) // Standard Error: 4_000 - .saturating_add((317_000_u64).saturating_mul(s as Weight)) - .saturating_add(T::DbWeight::get().reads(3_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + .saturating_add((157_000 as Weight).saturating_mul(s as Weight)) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } - fn vest_other_unlocked(l: u32, s: u32, ) -> Weight { - (55_566_000_u64) - // Standard Error: 3_000 - .saturating_add((180_000_u64).saturating_mul(l as Weight)) - // Standard Error: 6_000 - .saturating_add((193_000_u64).saturating_mul(s as Weight)) - .saturating_add(T::DbWeight::get().reads(3_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + // Storage: Vesting Vesting (r:1 w:1) + // Storage: Balances Locks (r:1 w:1) + // Storage: System Account (r:1 w:1) + fn vest_other_unlocked(_l: u32, s: u32, ) -> Weight { + (49_088_000 as Weight) + // Standard Error: 30_000 + .saturating_add((85_000 as Weight).saturating_mul(s as Weight)) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } - fn vested_transfer(l: u32, s: u32, ) -> Weight { - (97_138_000_u64) - // Standard Error: 5_000 - .saturating_add((156_000_u64).saturating_mul(l as Weight)) - // Standard Error: 10_000 - .saturating_add((256_000_u64).saturating_mul(s as Weight)) - .saturating_add(T::DbWeight::get().reads(3_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + // Storage: Vesting Vesting (r:1 w:1) + // Storage: System Account (r:1 w:1) + // Storage: Balances Locks (r:1 w:1) + fn vested_transfer(l: u32, _s: u32, ) -> Weight { + (74_393_000 as Weight) + // Standard Error: 2_000 + .saturating_add((107_000 as Weight).saturating_mul(l as Weight)) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } - fn force_vested_transfer(l: u32, s: u32, ) -> Weight { - (95_167_000_u64) - // Standard Error: 5_000 - .saturating_add((165_000_u64).saturating_mul(l as Weight)) - // Standard Error: 10_000 - .saturating_add((297_000_u64).saturating_mul(s as Weight)) - .saturating_add(T::DbWeight::get().reads(4_u64)) - .saturating_add(T::DbWeight::get().writes(4_u64)) + // Storage: Vesting Vesting (r:1 w:1) + // Storage: System Account (r:2 w:2) + // Storage: Balances Locks (r:1 w:1) + fn force_vested_transfer(l: u32, _s: u32, ) -> Weight { + (72_731_000 as Weight) + // Standard Error: 6_000 + .saturating_add((132_000 as Weight).saturating_mul(l as Weight)) + .saturating_add(T::DbWeight::get().reads(4 as Weight)) + .saturating_add(T::DbWeight::get().writes(4 as Weight)) } + // Storage: Vesting Vesting (r:1 w:1) + // Storage: Balances Locks (r:1 w:1) + // Storage: System Account (r:1 w:1) fn not_unlocking_merge_schedules(l: u32, s: u32, ) -> Weight { - (57_211_000_u64) - // Standard Error: 1_000 - .saturating_add((197_000_u64).saturating_mul(l as Weight)) + (43_881_000 as Weight) // Standard Error: 4_000 - .saturating_add((276_000_u64).saturating_mul(s as Weight)) - .saturating_add(T::DbWeight::get().reads(3_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + .saturating_add((124_000 as Weight).saturating_mul(l as Weight)) + // Standard Error: 7_000 + .saturating_add((225_000 as Weight).saturating_mul(s as Weight)) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } + // Storage: Vesting Vesting (r:1 w:1) + // Storage: Balances Locks (r:1 w:1) + // Storage: System Account (r:1 w:1) fn unlocking_merge_schedules(l: u32, s: u32, ) -> Weight { - (57_566_000_u64) - // Standard Error: 2_000 - .saturating_add((196_000_u64).saturating_mul(l as Weight)) - // Standard Error: 4_000 - .saturating_add((258_000_u64).saturating_mul(s as Weight)) - .saturating_add(T::DbWeight::get().reads(3_u64)) - .saturating_add(T::DbWeight::get().writes(3_u64)) + (48_538_000 as Weight) + // Standard Error: 23_000 + .saturating_add((20_000 as Weight).saturating_mul(l as Weight)) + // Standard Error: 44_000 + .saturating_add((229_000 as Weight).saturating_mul(s as Weight)) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) + .saturating_add(T::DbWeight::get().writes(3 as Weight)) } } diff --git a/runtimes/spiritnet/src/weights/pallet_web3-names.rs b/runtimes/spiritnet/src/weights/pallet_web3-names.rs deleted file mode 100644 index a383d22b2..000000000 --- a/runtimes/spiritnet/src/weights/pallet_web3-names.rs +++ /dev/null @@ -1,96 +0,0 @@ -// KILT Blockchain – https://botlabs.org -// Copyright (C) 2019-2022 BOTLabs GmbH - -// The KILT Blockchain is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. - -// The KILT Blockchain is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. - -// You should have received a copy of the GNU General Public License -// along with this program. If not, see . - -// If you feel like getting in touch with us, you can do so at info@botlabs.org - -//! Autogenerated weights for pallet_web3_names -//! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2022-02-02, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 128 - -// Executed Command: -// target/release/kilt-parachain -// benchmark -// --chain=spiritnet-dev -// --steps=50 -// --repeat=20 -// --pallet=pallet-web3-names -// --extrinsic=* -// --execution=wasm -// --wasm-execution=compiled -// --heap-pages=4096 -// --output=./runtimes/spiritnet/src/weights/pallet_web3-names.rs -// --template=.maintain/runtime-weight-template.hbs - -#![cfg_attr(rustfmt, rustfmt_skip)] -#![allow(unused_parens)] -#![allow(unused_imports)] -#![allow(clippy::unnecessary_cast)] - -use frame_support::{traits::Get, weights::Weight}; -use sp_std::marker::PhantomData; - -/// Weight functions for `pallet_web3_names`. -pub struct WeightInfo(PhantomData); -impl pallet_web3_names::WeightInfo for WeightInfo { - // Storage: Web3Names Names (r:1 w:1) - // Storage: Web3Names Owner (r:1 w:1) - // Storage: Web3Names Banned (r:1 w:0) - // Storage: System Account (r:1 w:1) - fn claim(n: u32, ) -> Weight { - (51_483_000 as Weight) - // Standard Error: 2_000 - .saturating_add((44_000 as Weight).saturating_mul(n as Weight)) - .saturating_add(T::DbWeight::get().reads(4 as Weight)) - .saturating_add(T::DbWeight::get().writes(3 as Weight)) - } - // Storage: Web3Names Names (r:1 w:1) - // Storage: Web3Names Owner (r:1 w:1) - // Storage: System Account (r:1 w:1) - fn release_by_owner() -> Weight { - (43_873_000 as Weight) - .saturating_add(T::DbWeight::get().reads(3 as Weight)) - .saturating_add(T::DbWeight::get().writes(3 as Weight)) - } - // Storage: Web3Names Owner (r:1 w:1) - // Storage: System Account (r:1 w:1) - // Storage: Web3Names Names (r:0 w:1) - fn reclaim_deposit(_n: u32, ) -> Weight { - (43_049_000 as Weight) - .saturating_add(T::DbWeight::get().reads(2 as Weight)) - .saturating_add(T::DbWeight::get().writes(3 as Weight)) - } - // Storage: Web3Names Banned (r:1 w:1) - // Storage: Web3Names Owner (r:1 w:1) - // Storage: System Account (r:1 w:1) - // Storage: Web3Names Names (r:0 w:1) - fn ban(n: u32, ) -> Weight { - (46_847_000 as Weight) - // Standard Error: 3_000 - .saturating_add((38_000 as Weight).saturating_mul(n as Weight)) - .saturating_add(T::DbWeight::get().reads(3 as Weight)) - .saturating_add(T::DbWeight::get().writes(4 as Weight)) - } - // Storage: Web3Names Banned (r:1 w:1) - fn unban(n: u32, ) -> Weight { - (20_632_000 as Weight) - // Standard Error: 1_000 - .saturating_add((27_000 as Weight).saturating_mul(n as Weight)) - .saturating_add(T::DbWeight::get().reads(1 as Weight)) - .saturating_add(T::DbWeight::get().writes(1 as Weight)) - } -} diff --git a/runtimes/spiritnet/src/weights/pallet_web3_names.rs b/runtimes/spiritnet/src/weights/pallet_web3_names.rs index 5b849835f..9e9fe1c6c 100644 --- a/runtimes/spiritnet/src/weights/pallet_web3_names.rs +++ b/runtimes/spiritnet/src/weights/pallet_web3_names.rs @@ -19,14 +19,15 @@ //! Autogenerated weights for pallet_web3_names //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2022-01-26, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 128 +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 1024 // Executed Command: -// target/release/kilt-parachain +// ./target/release/kilt-parachain // benchmark +// pallet // --chain=spiritnet-dev -// --steps=50 +// --steps=1 // --repeat=20 // --pallet=pallet-web3-names // --extrinsic=* @@ -52,28 +53,27 @@ impl pallet_web3_names::WeightInfo for WeightInfo { // Storage: Web3Names Banned (r:1 w:0) // Storage: System Account (r:1 w:1) fn claim(n: u32, ) -> Weight { - (54_028_000 as Weight) - // Standard Error: 3_000 - .saturating_add((30_000 as Weight).saturating_mul(n as Weight)) + (46_594_000 as Weight) + // Standard Error: 4_000 + .saturating_add((10_000 as Weight).saturating_mul(n as Weight)) .saturating_add(T::DbWeight::get().reads(4 as Weight)) .saturating_add(T::DbWeight::get().writes(3 as Weight)) } + // Storage: Web3Names Names (r:1 w:1) // Storage: Web3Names Owner (r:1 w:1) // Storage: System Account (r:1 w:1) - // Storage: Web3Names Names (r:0 w:1) fn release_by_owner() -> Weight { - (43_526_000 as Weight) - // Standard Error: 3_000 - .saturating_add(T::DbWeight::get().reads(2 as Weight)) + (41_228_000 as Weight) + .saturating_add(T::DbWeight::get().reads(3 as Weight)) .saturating_add(T::DbWeight::get().writes(3 as Weight)) } // Storage: Web3Names Owner (r:1 w:1) // Storage: System Account (r:1 w:1) // Storage: Web3Names Names (r:0 w:1) fn reclaim_deposit(n: u32, ) -> Weight { - (43_814_000 as Weight) - // Standard Error: 3_000 - .saturating_add((19_000 as Weight).saturating_mul(n as Weight)) + (39_996_000 as Weight) + // Standard Error: 2_000 + .saturating_add((8_000 as Weight).saturating_mul(n as Weight)) .saturating_add(T::DbWeight::get().reads(2 as Weight)) .saturating_add(T::DbWeight::get().writes(3 as Weight)) } @@ -82,17 +82,17 @@ impl pallet_web3_names::WeightInfo for WeightInfo { // Storage: System Account (r:1 w:1) // Storage: Web3Names Names (r:0 w:1) fn ban(n: u32, ) -> Weight { - (48_176_000 as Weight) - // Standard Error: 5_000 - .saturating_add((31_000 as Weight).saturating_mul(n as Weight)) + (42_763_000 as Weight) + // Standard Error: 4_000 + .saturating_add((58_000 as Weight).saturating_mul(n as Weight)) .saturating_add(T::DbWeight::get().reads(3 as Weight)) .saturating_add(T::DbWeight::get().writes(4 as Weight)) } // Storage: Web3Names Banned (r:1 w:1) fn unban(n: u32, ) -> Weight { - (20_909_000 as Weight) + (19_648_000 as Weight) // Standard Error: 1_000 - .saturating_add((39_000 as Weight).saturating_mul(n as Weight)) + .saturating_add((37_000 as Weight).saturating_mul(n as Weight)) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(1 as Weight)) } diff --git a/runtimes/spiritnet/src/weights/parachain_staking.rs b/runtimes/spiritnet/src/weights/parachain_staking.rs index 3afbbf67b..57cd1a897 100644 --- a/runtimes/spiritnet/src/weights/parachain_staking.rs +++ b/runtimes/spiritnet/src/weights/parachain_staking.rs @@ -19,14 +19,15 @@ //! Autogenerated weights for parachain_staking //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev -//! DATE: 2022-02-13, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` -//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 128 +//! DATE: 2022-06-23, STEPS: `1`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("spiritnet-dev"), DB CACHE: 1024 // Executed Command: -// target/release/kilt-parachain +// ./target/release/kilt-parachain // benchmark +// pallet // --chain=spiritnet-dev -// --steps=50 +// --steps=1 // --repeat=20 // --pallet=parachain-staking // --extrinsic=* @@ -36,7 +37,6 @@ // --output=./runtimes/spiritnet/src/weights/parachain_staking.rs // --template=.maintain/runtime-weight-template.hbs - #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] @@ -50,12 +50,12 @@ pub struct WeightInfo(PhantomData); impl parachain_staking::WeightInfo for WeightInfo { // Storage: ParachainStaking Round (r:1 w:0) fn on_initialize_no_action() -> Weight { - (3_525_000 as Weight) + (3_693_000 as Weight) .saturating_add(T::DbWeight::get().reads(1 as Weight)) } // Storage: ParachainStaking Round (r:1 w:1) fn on_initialize_round_update() -> Weight { - (14_459_000 as Weight) + (16_988_000 as Weight) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(1 as Weight)) } @@ -63,7 +63,7 @@ impl parachain_staking::WeightInfo for WeightInfo { // Storage: ParachainStaking LastRewardReduction (r:1 w:1) // Storage: ParachainStaking InflationConfig (r:1 w:1) fn on_initialize_new_year() -> Weight { - (26_228_000 as Weight) + (30_201_000 as Weight) .saturating_add(T::DbWeight::get().reads(3 as Weight)) .saturating_add(T::DbWeight::get().writes(3 as Weight)) } @@ -74,36 +74,36 @@ impl parachain_staking::WeightInfo for WeightInfo { // Storage: ParachainStaking MaxSelectedCandidates (r:1 w:0) // Storage: System Account (r:1 w:1) fn on_initialize_network_rewards() -> Weight { - (55_319_000 as Weight) + (59_372_000 as Weight) .saturating_add(T::DbWeight::get().reads(6 as Weight)) .saturating_add(T::DbWeight::get().writes(4 as Weight)) } // Storage: ParachainStaking ForceNewRound (r:0 w:1) fn force_new_round() -> Weight { - (1_768_000 as Weight) + (2_040_000 as Weight) .saturating_add(T::DbWeight::get().writes(1 as Weight)) } // Storage: ParachainStaking InflationConfig (r:0 w:1) fn set_inflation() -> Weight { - (12_952_000 as Weight) + (15_234_000 as Weight) .saturating_add(T::DbWeight::get().writes(1 as Weight)) } // Storage: ParachainStaking MaxSelectedCandidates (r:1 w:1) // Storage: ParachainStaking TopCandidates (r:1 w:0) // Storage: ParachainStaking TotalCollatorStake (r:1 w:1) - // Storage: ParachainStaking CandidatePool (r:1 w:0) + // Storage: ParachainStaking CandidatePool (r:59 w:0) fn set_max_selected_candidates(n: u32, m: u32, ) -> Weight { (0 as Weight) - // Standard Error: 17_000 - .saturating_add((10_570_000 as Weight).saturating_mul(n as Weight)) - // Standard Error: 33_000 - .saturating_add((9_858_000 as Weight).saturating_mul(m as Weight)) + // Standard Error: 26_000 + .saturating_add((7_832_000 as Weight).saturating_mul(n as Weight)) + // Standard Error: 44_000 + .saturating_add((6_420_000 as Weight).saturating_mul(m as Weight)) .saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(n as Weight))) .saturating_add(T::DbWeight::get().writes(2 as Weight)) } // Storage: ParachainStaking Round (r:1 w:1) fn set_blocks_per_round() -> Weight { - (15_586_000 as Weight) + (17_824_000 as Weight) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(1 as Weight)) } @@ -119,10 +119,10 @@ impl parachain_staking::WeightInfo for WeightInfo { // Storage: ParachainStaking TotalCollatorStake (r:1 w:1) fn force_remove_candidate(n: u32, m: u32, ) -> Weight { (0 as Weight) - // Standard Error: 18_000 - .saturating_add((3_615_000 as Weight).saturating_mul(n as Weight)) - // Standard Error: 32_000 - .saturating_add((23_037_000 as Weight).saturating_mul(m as Weight)) + // Standard Error: 34_000 + .saturating_add((2_953_000 as Weight).saturating_mul(n as Weight)) + // Standard Error: 57_000 + .saturating_add((21_593_000 as Weight).saturating_mul(m as Weight)) .saturating_add(T::DbWeight::get().reads(25 as Weight)) .saturating_add(T::DbWeight::get().reads((2 as Weight).saturating_mul(m as Weight))) .saturating_add(T::DbWeight::get().writes(7 as Weight)) @@ -139,11 +139,11 @@ impl parachain_staking::WeightInfo for WeightInfo { // Storage: ParachainStaking TotalCollatorStake (r:1 w:1) // Storage: ParachainStaking CounterForCandidatePool (r:1 w:1) fn join_candidates(n: u32, m: u32, ) -> Weight { - (0 as Weight) - // Standard Error: 18_000 - .saturating_add((2_514_000 as Weight).saturating_mul(n as Weight)) - // Standard Error: 44_000 - .saturating_add((4_377_000 as Weight).saturating_mul(m as Weight)) + (18_166_000 as Weight) + // Standard Error: 4_000 + .saturating_add((1_324_000 as Weight).saturating_mul(n as Weight)) + // Standard Error: 9_000 + .saturating_add((2_825_000 as Weight).saturating_mul(m as Weight)) .saturating_add(T::DbWeight::get().reads(10 as Weight)) .saturating_add(T::DbWeight::get().writes(7 as Weight)) } @@ -153,11 +153,11 @@ impl parachain_staking::WeightInfo for WeightInfo { // Storage: ParachainStaking MaxSelectedCandidates (r:1 w:0) // Storage: ParachainStaking TotalCollatorStake (r:1 w:1) fn init_leave_candidates(n: u32, m: u32, ) -> Weight { - (0 as Weight) - // Standard Error: 19_000 - .saturating_add((2_873_000 as Weight).saturating_mul(n as Weight)) - // Standard Error: 34_000 - .saturating_add((7_012_000 as Weight).saturating_mul(m as Weight)) + (48_782_000 as Weight) + // Standard Error: 6_000 + .saturating_add((1_455_000 as Weight).saturating_mul(n as Weight)) + // Standard Error: 10_000 + .saturating_add((3_702_000 as Weight).saturating_mul(m as Weight)) .saturating_add(T::DbWeight::get().reads(21 as Weight)) .saturating_add(T::DbWeight::get().writes(3 as Weight)) } @@ -167,10 +167,10 @@ impl parachain_staking::WeightInfo for WeightInfo { // Storage: ParachainStaking TotalCollatorStake (r:1 w:1) fn cancel_leave_candidates(n: u32, m: u32, ) -> Weight { (0 as Weight) - // Standard Error: 17_000 - .saturating_add((2_709_000 as Weight).saturating_mul(n as Weight)) - // Standard Error: 30_000 - .saturating_add((5_483_000 as Weight).saturating_mul(m as Weight)) + // Standard Error: 7_000 + .saturating_add((1_217_000 as Weight).saturating_mul(n as Weight)) + // Standard Error: 12_000 + .saturating_add((2_701_000 as Weight).saturating_mul(m as Weight)) .saturating_add(T::DbWeight::get().reads(5 as Weight)) .saturating_add(T::DbWeight::get().writes(3 as Weight)) } @@ -184,10 +184,10 @@ impl parachain_staking::WeightInfo for WeightInfo { // Storage: ParachainStaking CounterForCandidatePool (r:1 w:1) fn execute_leave_candidates(n: u32, m: u32, ) -> Weight { (0 as Weight) - // Standard Error: 20_000 - .saturating_add((4_307_000 as Weight).saturating_mul(n as Weight)) - // Standard Error: 37_000 - .saturating_add((24_082_000 as Weight).saturating_mul(m as Weight)) + // Standard Error: 23_000 + .saturating_add((2_616_000 as Weight).saturating_mul(n as Weight)) + // Standard Error: 38_000 + .saturating_add((20_346_000 as Weight).saturating_mul(m as Weight)) .saturating_add(T::DbWeight::get().reads(7 as Weight)) .saturating_add(T::DbWeight::get().reads((2 as Weight).saturating_mul(m as Weight))) .saturating_add(T::DbWeight::get().writes(5 as Weight)) @@ -203,12 +203,12 @@ impl parachain_staking::WeightInfo for WeightInfo { // Storage: ParachainStaking TotalCollatorStake (r:1 w:1) fn candidate_stake_more(n: u32, m: u32, u: u32, ) -> Weight { (0 as Weight) - // Standard Error: 17_000 - .saturating_add((3_682_000 as Weight).saturating_mul(n as Weight)) - // Standard Error: 41_000 - .saturating_add((7_135_000 as Weight).saturating_mul(m as Weight)) - // Standard Error: 246_000 - .saturating_add((2_235_000 as Weight).saturating_mul(u as Weight)) + // Standard Error: 6_000 + .saturating_add((1_622_000 as Weight).saturating_mul(n as Weight)) + // Standard Error: 12_000 + .saturating_add((3_378_000 as Weight).saturating_mul(m as Weight)) + // Standard Error: 49_000 + .saturating_add((1_386_000 as Weight).saturating_mul(u as Weight)) .saturating_add(T::DbWeight::get().reads(8 as Weight)) .saturating_add(T::DbWeight::get().writes(6 as Weight)) } @@ -219,10 +219,10 @@ impl parachain_staking::WeightInfo for WeightInfo { // Storage: ParachainStaking TotalCollatorStake (r:1 w:1) fn candidate_stake_less(n: u32, m: u32, ) -> Weight { (0 as Weight) - // Standard Error: 17_000 - .saturating_add((3_502_000 as Weight).saturating_mul(n as Weight)) - // Standard Error: 42_000 - .saturating_add((7_182_000 as Weight).saturating_mul(m as Weight)) + // Standard Error: 6_000 + .saturating_add((1_458_000 as Weight).saturating_mul(n as Weight)) + // Standard Error: 13_000 + .saturating_add((3_010_000 as Weight).saturating_mul(m as Weight)) .saturating_add(T::DbWeight::get().reads(5 as Weight)) .saturating_add(T::DbWeight::get().writes(4 as Weight)) } @@ -237,11 +237,11 @@ impl parachain_staking::WeightInfo for WeightInfo { // Storage: ParachainStaking MaxSelectedCandidates (r:1 w:0) // Storage: ParachainStaking TotalCollatorStake (r:1 w:1) fn join_delegators(n: u32, m: u32, ) -> Weight { - (0 as Weight) - // Standard Error: 20_000 - .saturating_add((3_803_000 as Weight).saturating_mul(n as Weight)) - // Standard Error: 54_000 - .saturating_add((8_007_000 as Weight).saturating_mul(m as Weight)) + (29_422_000 as Weight) + // Standard Error: 6_000 + .saturating_add((1_661_000 as Weight).saturating_mul(n as Weight)) + // Standard Error: 14_000 + .saturating_add((2_847_000 as Weight).saturating_mul(m as Weight)) .saturating_add(T::DbWeight::get().reads(11 as Weight)) .saturating_add(T::DbWeight::get().writes(8 as Weight)) } @@ -254,13 +254,13 @@ impl parachain_staking::WeightInfo for WeightInfo { // Storage: ParachainStaking MaxSelectedCandidates (r:1 w:0) // Storage: ParachainStaking TotalCollatorStake (r:1 w:1) fn delegator_stake_more(n: u32, m: u32, u: u32, ) -> Weight { - (0 as Weight) - // Standard Error: 21_000 - .saturating_add((3_810_000 as Weight).saturating_mul(n as Weight)) - // Standard Error: 58_000 - .saturating_add((7_940_000 as Weight).saturating_mul(m as Weight)) - // Standard Error: 371_000 - .saturating_add((3_810_000 as Weight).saturating_mul(u as Weight)) + (10_618_000 as Weight) + // Standard Error: 6_000 + .saturating_add((1_683_000 as Weight).saturating_mul(n as Weight)) + // Standard Error: 14_000 + .saturating_add((2_894_000 as Weight).saturating_mul(m as Weight)) + // Standard Error: 60_000 + .saturating_add((642_000 as Weight).saturating_mul(u as Weight)) .saturating_add(T::DbWeight::get().reads(8 as Weight)) .saturating_add(T::DbWeight::get().writes(7 as Weight)) } @@ -271,11 +271,11 @@ impl parachain_staking::WeightInfo for WeightInfo { // Storage: ParachainStaking MaxSelectedCandidates (r:1 w:0) // Storage: ParachainStaking TotalCollatorStake (r:1 w:1) fn delegator_stake_less(n: u32, m: u32, ) -> Weight { - (0 as Weight) - // Standard Error: 19_000 - .saturating_add((3_567_000 as Weight).saturating_mul(n as Weight)) - // Standard Error: 51_000 - .saturating_add((7_292_000 as Weight).saturating_mul(m as Weight)) + (2_224_000 as Weight) + // Standard Error: 7_000 + .saturating_add((1_593_000 as Weight).saturating_mul(n as Weight)) + // Standard Error: 16_000 + .saturating_add((2_703_000 as Weight).saturating_mul(m as Weight)) .saturating_add(T::DbWeight::get().reads(6 as Weight)) .saturating_add(T::DbWeight::get().writes(5 as Weight)) } @@ -286,11 +286,11 @@ impl parachain_staking::WeightInfo for WeightInfo { // Storage: ParachainStaking MaxSelectedCandidates (r:1 w:0) // Storage: ParachainStaking TotalCollatorStake (r:1 w:1) fn revoke_delegation(n: u32, m: u32, ) -> Weight { - (0 as Weight) - // Standard Error: 17_000 - .saturating_add((3_516_000 as Weight).saturating_mul(n as Weight)) - // Standard Error: 45_000 - .saturating_add((7_157_000 as Weight).saturating_mul(m as Weight)) + (10_893_000 as Weight) + // Standard Error: 26_000 + .saturating_add((1_704_000 as Weight).saturating_mul(n as Weight)) + // Standard Error: 59_000 + .saturating_add((2_449_000 as Weight).saturating_mul(m as Weight)) .saturating_add(T::DbWeight::get().reads(6 as Weight)) .saturating_add(T::DbWeight::get().writes(5 as Weight)) } @@ -301,11 +301,11 @@ impl parachain_staking::WeightInfo for WeightInfo { // Storage: ParachainStaking MaxSelectedCandidates (r:1 w:0) // Storage: ParachainStaking TotalCollatorStake (r:1 w:1) fn leave_delegators(n: u32, m: u32, ) -> Weight { - (0 as Weight) - // Standard Error: 18_000 - .saturating_add((3_503_000 as Weight).saturating_mul(n as Weight)) - // Standard Error: 49_000 - .saturating_add((7_270_000 as Weight).saturating_mul(m as Weight)) + (703_000 as Weight) + // Standard Error: 7_000 + .saturating_add((1_686_000 as Weight).saturating_mul(n as Weight)) + // Standard Error: 17_000 + .saturating_add((2_839_000 as Weight).saturating_mul(m as Weight)) .saturating_add(T::DbWeight::get().reads(6 as Weight)) .saturating_add(T::DbWeight::get().writes(5 as Weight)) } @@ -313,15 +313,15 @@ impl parachain_staking::WeightInfo for WeightInfo { // Storage: Balances Locks (r:1 w:1) // Storage: System Account (r:1 w:1) fn unlock_unstaked(u: u32, ) -> Weight { - (33_495_000 as Weight) - // Standard Error: 23_000 - .saturating_add((366_000 as Weight).saturating_mul(u as Weight)) + (33_561_000 as Weight) + // Standard Error: 10_000 + .saturating_add((581_000 as Weight).saturating_mul(u as Weight)) .saturating_add(T::DbWeight::get().reads(3 as Weight)) .saturating_add(T::DbWeight::get().writes(3 as Weight)) } // Storage: ParachainStaking MaxCollatorCandidateStake (r:0 w:1) fn set_max_candidate_stake() -> Weight { - (11_984_000 as Weight) + (13_922_000 as Weight) .saturating_add(T::DbWeight::get().writes(1 as Weight)) } } diff --git a/runtimes/standalone/Cargo.toml b/runtimes/standalone/Cargo.toml index c78bd264c..e102f2cb9 100644 --- a/runtimes/standalone/Cargo.toml +++ b/runtimes/standalone/Cargo.toml @@ -2,72 +2,71 @@ authors = ["KILT "] edition = "2021" name = "mashnet-node-runtime" -version = "1.6.2" +version = "1.7.0" [build-dependencies] -substrate-wasm-builder = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.17"} +substrate-wasm-builder = {git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.24"} [dependencies] bitflags = {default-features = false, version = "1.3.2"} -codec = {default-features = false, features = ["derive"], package = "parity-scale-codec", version = "2.3.1"} -log = "0.4" -scale-info = {version = "1.0", default-features = false, features = ["derive"]} +codec = {package = "parity-scale-codec", version = "3.1.2", default-features = false, features = ["derive"]} +log = "0.4.17" +scale-info = {version = "2.1.1", default-features = false, features = ["derive"]} hex-literal = {version = "0.3.4", optional = true} -serde = {features = ["derive"], optional = true, version = "1.0"} +serde = {version = "1.0.137", optional = true, features = ["derive"]} # kilt functionality attestation = {default-features = false, path = "../../pallets/attestation"} ctype = {default-features = false, path = "../../pallets/ctype"} delegation = {default-features = false, path = "../../pallets/delegation"} did = {default-features = false, path = "../../pallets/did"} -kilt-launch = {default-features = false, path = "../../pallets/kilt-launch"} kilt-support = {path = "../../support", default-features = false, optional = true} -pallet-web3-names = {default-features = false, path = "../../pallets/pallet-web3-names"} pallet-did-lookup = {default-features = false, path = "../../pallets/pallet-did-lookup"} +pallet-web3-names = {default-features = false, path = "../../pallets/pallet-web3-names"} runtime-common = {path = "../../runtimes/common", default-features = false} # kilt specific # Benchmarking -frame-system-benchmarking = {git = "https://github.com/paritytech/substrate", default-features = false, optional = true, branch = "polkadot-v0.9.17"} +frame-system-benchmarking = {git = "https://github.com/paritytech/substrate", default-features = false, optional = true, branch = "polkadot-v0.9.24"} # Substrate -frame-benchmarking = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -frame-executive = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -frame-support = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -frame-system = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -frame-system-rpc-runtime-api = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -pallet-aura = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -pallet-authorship = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -pallet-balances = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -pallet-grandpa = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -pallet-indices = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -pallet-proxy = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -pallet-randomness-collective-flip = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -pallet-session = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -pallet-sudo = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -pallet-timestamp = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -pallet-transaction-payment = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -pallet-transaction-payment-rpc-runtime-api = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -pallet-utility = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -pallet-vesting = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-api = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-arithmetic = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-block-builder = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-consensus-aura = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-core = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-inherents = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-io = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-offchain = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-runtime = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-session = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-std = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-transaction-pool = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-version = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} +frame-benchmarking = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +frame-executive = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +frame-support = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +frame-system = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +frame-system-rpc-runtime-api = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +pallet-aura = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +pallet-authorship = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +pallet-balances = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +pallet-grandpa = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +pallet-indices = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +pallet-proxy = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +pallet-randomness-collective-flip = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +pallet-session = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +pallet-sudo = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +pallet-timestamp = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +pallet-transaction-payment = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +pallet-transaction-payment-rpc-runtime-api = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +pallet-utility = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +pallet-vesting = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +sp-api = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +sp-arithmetic = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +sp-block-builder = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +sp-consensus-aura = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +sp-core = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +sp-inherents = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +sp-io = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +sp-offchain = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +sp-runtime = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +sp-session = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +sp-std = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +sp-transaction-pool = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +sp-version = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} # Runtime tests -frame-try-runtime = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.17", optional = true} +frame-try-runtime = {git = "https://github.com/paritytech/substrate", default-features = false, branch = "polkadot-v0.9.24", optional = true} [features] default = ["std"] @@ -81,7 +80,6 @@ runtime-benchmarks = [ "frame-system/runtime-benchmarks", "frame-system-benchmarking", "hex-literal", - "kilt-launch/runtime-benchmarks", "runtime-common/runtime-benchmarks", "kilt-support", "kilt-support/runtime-benchmarks", @@ -95,6 +93,7 @@ runtime-benchmarks = [ "sp-runtime/runtime-benchmarks", ] std = [ + "frame-benchmarking/std", "attestation/std", "codec/std", "ctype/std", @@ -105,7 +104,6 @@ std = [ "frame-system/std", "frame-system-rpc-runtime-api/std", "frame-try-runtime/std", - "kilt-launch/std", "log/std", "pallet-aura/std", "pallet-authorship/std", @@ -148,7 +146,6 @@ try-runtime = [ "frame-support/try-runtime", "frame-system/try-runtime", "frame-try-runtime", - "kilt-launch/try-runtime", "pallet-aura/try-runtime", "pallet-authorship/try-runtime", "pallet-balances/try-runtime", @@ -160,7 +157,7 @@ try-runtime = [ "pallet-session/try-runtime", "pallet-sudo/try-runtime", "pallet-timestamp/try-runtime", - "pallet-web3-names/runtime-benchmarks", + "pallet-web3-names/try-runtime", "pallet-utility/try-runtime", "pallet-transaction-payment/try-runtime", "pallet-vesting/try-runtime", diff --git a/runtimes/standalone/src/lib.rs b/runtimes/standalone/src/lib.rs index 59c5b4649..6ddfab5a7 100644 --- a/runtimes/standalone/src/lib.rs +++ b/runtimes/standalone/src/lib.rs @@ -28,7 +28,7 @@ include!(concat!(env!("OUT_DIR"), "/wasm_binary.rs")); use codec::{Decode, Encode, MaxEncodedLen}; -use frame_support::traits::InstanceFilter; +use delegation::DelegationAc; pub use frame_support::{ construct_runtime, parameter_types, traits::{Currency, FindAuthor, Imbalance, KeyOwnerProofSystem, OnUnbalanced, Randomness}, @@ -38,6 +38,8 @@ pub use frame_support::{ }, ConsensusEngineId, StorageValue, }; +use frame_support::{traits::InstanceFilter, weights::ConstantMultiplier}; +pub use frame_system::Call as SystemCall; use frame_system::EnsureRoot; use pallet_grandpa::{fg_primitives, AuthorityId as GrandpaId, AuthorityList as GrandpaAuthorityList}; use pallet_transaction_payment::{CurrencyAdapter, FeeDetails}; @@ -63,9 +65,10 @@ pub use did; pub use pallet_balances::Call as BalancesCall; pub use pallet_web3_names; use runtime_common::{ - constants::{self, KILT, MICRO_KILT, MILLI_KILT}, + authorization::{AuthorizationId, PalletAuthorize}, + constants::{self, KILT, MILLI_KILT}, fees::ToAuthor, - pallet_id, AccountId, Balance, BlockNumber, DidIdentifier, Hash, Index, Signature, SlowAdjustingFeeUpdate, + AccountId, Balance, BlockNumber, DidIdentifier, Hash, Index, Signature, SlowAdjustingFeeUpdate, }; #[cfg(feature = "std")] @@ -114,10 +117,10 @@ pub const VERSION: RuntimeVersion = RuntimeVersion { spec_name: create_runtime_str!("mashnet-node"), impl_name: create_runtime_str!("mashnet-node"), authoring_version: 4, - spec_version: 10620, + spec_version: 10700, impl_version: 0, apis: RUNTIME_API_VERSIONS, - transaction_version: 3, + transaction_version: 4, state_version: 0, }; @@ -274,27 +277,11 @@ parameter_types! { pub const UsableBalance: Balance = KILT; } -impl kilt_launch::Config for Runtime { - type Event = Event; - type MaxClaims = MaxClaims; - type UsableBalance = UsableBalance; - type WeightInfo = (); - type AutoUnlockBound = AutoUnlockBound; - type PalletId = pallet_id::Launch; -} - -parameter_types! { - pub const TransactionByteFee: Balance = MICRO_KILT; - /// This value increases the priority of `Operational` transactions by adding - /// a "virtual tip" that's equal to the `OperationalFeeMultiplier * final_fee`. - pub const OperationalFeeMultiplier: u8 = 5; -} - impl pallet_transaction_payment::Config for Runtime { type OnChargeTransaction = CurrencyAdapter>; - type TransactionByteFee = TransactionByteFee; - type OperationalFeeMultiplier = OperationalFeeMultiplier; + type OperationalFeeMultiplier = constants::fee::OperationalFeeMultiplier; type WeightToFee = IdentityFee; + type LengthToFee = ConstantMultiplier; type FeeMultiplierUpdate = SlowAdjustingFeeUpdate; } @@ -316,6 +303,9 @@ impl attestation::Config for Runtime { type Currency = Balances; type Deposit = AttestationDeposit; type MaxDelegatedAttestations = MaxDelegatedAttestations; + type AttesterId = DidIdentifier; + type AuthorizationId = AuthorizationId<::DelegationNodeId>; + type AccessControl = PalletAuthorize>; } parameter_types! { @@ -458,7 +448,7 @@ impl pallet_web3_names::Config for Runtime { type Event = Event; type MaxNameLength = MaxNameLength; type MinNameLength = MinNameLength; - type Web3Name = pallet_web3_names::web3_name::AsciiWeb3Name; + type Web3Name = pallet_web3_names::web3_name::AsciiWeb3Name; type Web3NameOwner = DidIdentifier; type WeightInfo = (); } @@ -491,17 +481,13 @@ impl pallet_authorship::Config for Runtime { type EventHandler = (); } -parameter_types! { - pub const MinVestedTransfer: Balance = constants::MIN_VESTED_TRANSFER_AMOUNT; -} - impl pallet_vesting::Config for Runtime { type Event = Event; type Currency = Balances; type BlockNumberToBalance = ConvertInto; // disable vested transfers by setting min amount to max balance - type MinVestedTransfer = MinVestedTransfer; - const MAX_VESTING_SCHEDULES: u32 = runtime_common::constants::MAX_VESTING_SCHEDULES; + type MinVestedTransfer = constants::MinVestedTransfer; + const MAX_VESTING_SCHEDULES: u32 = constants::MAX_VESTING_SCHEDULES; type WeightInfo = (); } @@ -693,7 +679,7 @@ construct_runtime!( // Vesting. Usable initially, but removed once all vesting is finished. Vesting: pallet_vesting = 33, - KiltLaunch: kilt_launch = 34, + // DELETED: KiltLaunch: kilt_launch = 34, Utility: pallet_utility = 35, // DELETED CrowdloanContributors: 36, @@ -759,6 +745,7 @@ pub type SignedBlock = generic::SignedBlock; pub type BlockId = generic::BlockId; /// The SignedExtension to the basic transaction logic. pub type SignedExtra = ( + frame_system::CheckNonZeroSender, frame_system::CheckSpecVersion, frame_system::CheckTxVersion, frame_system::CheckGenesis, @@ -769,20 +756,13 @@ pub type SignedExtra = ( ); /// Unchecked extrinsic type as expected by this runtime. pub type UncheckedExtrinsic = generic::UncheckedExtrinsic; +/// The payload being signed in transactions. +pub type SignedPayload = generic::SignedPayload; /// Extrinsic type that has already been checked. pub type CheckedExtrinsic = generic::CheckedExtrinsic; /// Executive: handles dispatch to the various Pallets. -pub type Executive = frame_executive::Executive< - Runtime, - Block, - frame_system::ChainContext, - Runtime, - AllPalletsWithSystem, - ( - delegation::migrations::v3::DelegationMigrationV3, - did::migrations::v4::DidMigrationV4, - ), ->; +pub type Executive = + frame_executive::Executive, Runtime, AllPalletsWithSystem, ()>; impl_runtime_apis! { impl sp_api::Core for Runtime { @@ -933,7 +913,6 @@ impl_runtime_apis! { list_benchmark!(list, extra, frame_system, SystemBench::); list_benchmark!(list, extra, pallet_balances, Balances); list_benchmark!(list, extra, pallet_timestamp, Timestamp); - list_benchmark!(list, extra, kilt_launch, KiltLaunch); list_benchmark!(list, extra, pallet_vesting, Vesting); list_benchmark!(list, extra, did, Did); @@ -973,8 +952,6 @@ impl_runtime_apis! { // System Events hex_literal::hex!("26aa394eea5630e07c48ae0c9558cef780d41e5e16056765bc8461851072c9d7") .to_vec().into(), - // KiltLaunch transfer account - hex_literal::hex!("6a3c793cec9dbe330b349dc4eea6801090f5e71f53b1b41ad11afb4a313a282c").to_vec().into(), ]; let mut batches = Vec::::new(); @@ -984,7 +961,6 @@ impl_runtime_apis! { add_benchmark!(params, batches, frame_system, SystemBench::); add_benchmark!(params, batches, pallet_balances, Balances); add_benchmark!(params, batches, pallet_timestamp, Timestamp); - add_benchmark!(params, batches, kilt_launch, KiltLaunch); add_benchmark!(params, batches, pallet_vesting, Vesting); add_benchmark!(params, batches, did, Did); diff --git a/rust-toolchain.toml b/rust-toolchain.toml index fb3e5de51..cde82b593 100644 --- a/rust-toolchain.toml +++ b/rust-toolchain.toml @@ -1,3 +1,3 @@ [toolchain] -channel = "nightly-2022-01-08" +channel = "nightly-2022-05-11" targets = [ "wasm32-unknown-unknown" ] diff --git a/scripts/all.fish b/scripts/all.fish new file mode 100644 index 000000000..57693e947 --- /dev/null +++ b/scripts/all.fish @@ -0,0 +1,15 @@ +#!/bin/env fish +# Check a few feature combinations for all crates. +# Requires `cargo-workspaces` to be installed. + +for features in "--features default" "--all-features" "--features runtime-benchmarks" "--features try-runtime" + for package in (cargo workspaces list) + cargo build -p $package (echo $features | string split " ") > /dev/null ^ /dev/null + if [ "$status" = "0" ] + echo -n "[ok] " + else + echo -n "[fail] " + end + echo cargo build -p $package (echo $features | string split " ") + end +end diff --git a/scripts/init.sh b/scripts/init.sh index cfa5d8bf6..bff9a79f4 100755 --- a/scripts/init.sh +++ b/scripts/init.sh @@ -5,9 +5,9 @@ set -e echo "*** Initializing WASM build environment" if [ -z $CI_PROJECT_NAME ] ; then - rustup install nightly-2021-11-08 + rustup install nightly-2022-05-11 rustup update stable fi -rustup target add wasm32-unknown-unknown --toolchain nightly-2021-11-08 +rustup target add wasm32-unknown-unknown --toolchain nightly-2022-05-11 rustup target add wasm32-unknown-unknown --toolchain stable -rustup override set nightly-2021-11-08 --path $BASEDIR/.. +rustup override set nightly-2022-05-11 --path $BASEDIR/.. diff --git a/scripts/run_benches_for_pallets.sh b/scripts/run_benches_for_pallets.sh index 8cf60be4c..412eb8f27 100755 --- a/scripts/run_benches_for_pallets.sh +++ b/scripts/run_benches_for_pallets.sh @@ -13,26 +13,29 @@ pallets=( ctype delegation did - kilt-launch + pallet-did-lookup + pallet-inflation + pallet-web3-names parachain-staking ) -echo "[+] Running all benchmarks for $runtime --chain=$chain" +echo "[+] Running all default weight benchmarks for $runtime --chain=$chain" cargo build $standard_args for pallet in "${pallets[@]}"; do echo "Runtime: $runtime. Pallet: $pallet"; # shellcheck disable=SC2086 - ./target/release/kilt-parachain benchmark \ + ./target/release/kilt-parachain benchmark pallet \ --chain="${chain}" \ - --steps=50 \ + --steps=1 \ --repeat=20 \ --pallet="$pallet" \ --extrinsic="*" \ --execution=wasm \ --wasm-execution=compiled \ --heap-pages=4096 \ - --output="./pallets/${pallet}/src/default_weights.rs" \ + --record-proof \ + --output="./pallets/${pallet//_/-}/src/default_weights.rs" \ --template=".maintain/weight-template.hbs" done diff --git a/scripts/run_benches_for_runtime.sh b/scripts/run_benches_for_runtime.sh index 25b641b77..6de5fbc57 100755 --- a/scripts/run_benches_for_runtime.sh +++ b/scripts/run_benches_for_runtime.sh @@ -13,36 +13,44 @@ pallets=( ctype delegation did - kilt_launch - parachain_staking - frame_system - pallet_balances - pallet_collective - pallet_democracy - pallet_indices - pallet_membership - pallet_scheduler - pallet_timestamp - pallet_treasury - pallet_utility - pallet_session + frame-system + pallet-balances + pallet-collective + pallet-democracy + pallet-did-lookup + pallet-indices + pallet-inflation + pallet-membership + pallet-preimage + pallet-proxy + pallet-scheduler + pallet-session + pallet-timestamp + pallet-tips + pallet-treasury + pallet-utility + pallet-vesting + pallet-web3-names + parachain-staking ) -echo "[+] Running all benchmarks for $runtime --chain=$chain" +echo "[+] Running all runtime benchmarks for $runtime --chain=$chain" cargo build $standard_args + for pallet in "${pallets[@]}"; do echo "Runtime: $runtime. Pallet: $pallet"; # shellcheck disable=SC2086 - ./target/release/kilt-parachain benchmark \ + ./target/release/kilt-parachain benchmark pallet \ --chain="${chain}" \ - --steps=50 \ + --steps=1 \ --repeat=20 \ --pallet="$pallet" \ --extrinsic="*" \ --execution=wasm \ --wasm-execution=compiled \ --heap-pages=4096 \ - --output="./runtimes/${runtime}/src/weights/${pallet}.rs" \ + --record-proof \ + --output="./runtimes/${runtime}/src/weights/${pallet//-/_}.rs" \ --template=".maintain/runtime-weight-template.hbs" done diff --git a/support/Cargo.toml b/support/Cargo.toml index e639e89d4..eaca55f0c 100644 --- a/support/Cargo.toml +++ b/support/Cargo.toml @@ -4,17 +4,17 @@ description = "Shared traits and structs used across the KILT pallets" edition = "2021" name = "kilt-support" repository = "https://github.com/KILTprotocol/mashnet-node" -version = "1.6.2" +version = "1.7.0" [dependencies] -codec = {default-features = false, features = ["derive"], package = "parity-scale-codec", version = "2.3.1"} -scale-info = {version = "1.0", default-features = false, features = ["derive"]} +codec = {package = "parity-scale-codec", version = "3.1.2", default-features = false, features = ["derive"]} +scale-info = {version = "2.1.1", default-features = false, features = ["derive"]} -frame-support = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -frame-system = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-core = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-runtime = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} -sp-std = {branch = "polkadot-v0.9.17", default-features = false, git = "https://github.com/paritytech/substrate"} +frame-support = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +frame-system = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +sp-core = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +sp-runtime = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} +sp-std = {branch = "polkadot-v0.9.24", default-features = false, git = "https://github.com/paritytech/substrate"} [package.metadata.docs.rs] targets = ["x86_64-unknown-linux-gnu"]