From e0f9ca0bb542dde191733d6298026a2937489607 Mon Sep 17 00:00:00 2001 From: Yuwen Zhang Date: Thu, 17 Oct 2024 10:42:27 -0700 Subject: [PATCH] bump versions --- .github/workflows/prove.yml | 2 +- Cargo.lock | 619 ++++++++++---------------------- elf/riscv32im-succinct-zkvm-elf | Bin 130760 -> 120188 bytes program/Cargo.toml | 2 +- script/Cargo.toml | 4 +- 5 files changed, 200 insertions(+), 427 deletions(-) diff --git a/.github/workflows/prove.yml b/.github/workflows/prove.yml index a6aa804..6f160c5 100644 --- a/.github/workflows/prove.yml +++ b/.github/workflows/prove.yml @@ -25,7 +25,7 @@ jobs: uses: actions-rs/toolchain@v1 with: profile: minimal - toolchain: 1.79.0 + toolchain: 1.81.0 - name: Install SP1 toolchain run: | diff --git a/Cargo.lock b/Cargo.lock index 45ffb36..da91790 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -131,7 +131,7 @@ dependencies = [ "alloy-sol-macro-input", "const-hex", "heck", - "indexmap 2.3.0", + "indexmap", "proc-macro-error", "proc-macro2", "quote", @@ -455,7 +455,7 @@ dependencies = [ "serde_urlencoded", "sync_wrapper 0.1.2", "tokio", - "tower", + "tower 0.4.13", "tower-layer", "tower-service", "tracing", @@ -545,16 +545,14 @@ dependencies = [ [[package]] name = "bindgen" -version = "0.69.4" +version = "0.70.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a00dc851838a2120612785d195287475a3ac45514741da670b735818822129a0" +checksum = "f49d8fed880d473ea71efb9bf597651e77201bdd4893efe54c9e5d65ae04ce6f" dependencies = [ "bitflags 2.6.0", "cexpr", "clang-sys", - "itertools 0.12.1", - "lazy_static", - "lazycell", + "itertools 0.13.0", "log", "prettyplease", "proc-macro2", @@ -563,7 +561,6 @@ dependencies = [ "rustc-hash 1.1.0", "shlex", "syn 2.0.72", - "which", ] [[package]] @@ -636,7 +633,6 @@ dependencies = [ "cc", "cfg-if", "constant_time_eq", - "rayon-core", ] [[package]] @@ -770,7 +766,6 @@ dependencies = [ "android-tzdata", "iana-time-zone", "num-traits", - "serde", "windows-targets 0.52.6", ] @@ -835,12 +830,6 @@ version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1462739cb27611015575c0c11df5df7601141071f07518d56fcc1be504cbec97" -[[package]] -name = "cobs" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67ba02a97a2bd10f4b59b25c7973101c79642302776489e030cd13cdab09ed15" - [[package]] name = "coins-bip32" version = "0.8.7" @@ -1056,41 +1045,6 @@ dependencies = [ "syn 2.0.72", ] -[[package]] -name = "darling" -version = "0.20.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f63b86c8a8826a49b8c21f08a2d07338eec8d900540f8630dc76284be802989" -dependencies = [ - "darling_core", - "darling_macro", -] - -[[package]] -name = "darling_core" -version = "0.20.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95133861a8032aaea082871032f5815eb9e98cef03fa916ab4500513994df9e5" -dependencies = [ - "fnv", - "ident_case", - "proc-macro2", - "quote", - "strsim", - "syn 2.0.72", -] - -[[package]] -name = "darling_macro" -version = "0.20.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806" -dependencies = [ - "darling_core", - "quote", - "syn 2.0.72", -] - [[package]] name = "dashu" version = "0.4.2" @@ -1186,7 +1140,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4" dependencies = [ "powerfmt", - "serde", ] [[package]] @@ -1312,12 +1265,6 @@ dependencies = [ "zeroize", ] -[[package]] -name = "embedded-io" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef1a6892d9eef45c8fa6b9e0086428a2cca8491aca8f787c534a3d6d0bcb3ced" - [[package]] name = "encode_unicode" version = "0.3.6" @@ -1774,6 +1721,12 @@ version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" +[[package]] +name = "foldhash" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f81ec6369c545a7d40e4589b5597581fa1c441fe1cce96dd1de43159910a36a2" + [[package]] name = "foreign-types" version = "0.3.2" @@ -1956,10 +1909,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7" dependencies = [ "cfg-if", - "js-sys", "libc", "wasi", - "wasm-bindgen", ] [[package]] @@ -2034,7 +1985,7 @@ dependencies = [ "futures-sink", "futures-util", "http 0.2.12", - "indexmap 2.3.0", + "indexmap", "slab", "tokio", "tokio-util", @@ -2053,7 +2004,7 @@ dependencies = [ "futures-core", "futures-sink", "http 1.1.0", - "indexmap 2.3.0", + "indexmap", "slab", "tokio", "tokio-util", @@ -2083,12 +2034,6 @@ dependencies = [ "rayon", ] -[[package]] -name = "hashbrown" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" - [[package]] name = "hashbrown" version = "0.14.5" @@ -2100,6 +2045,17 @@ dependencies = [ "serde", ] +[[package]] +name = "hashbrown" +version = "0.15.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e087f84d4f86bf4b218b927129862374b72199ae7d8657835f1e89000eea4fb" +dependencies = [ + "allocator-api2", + "equivalent", + "foldhash", +] + [[package]] name = "hashers" version = "1.0.1" @@ -2142,15 +2098,6 @@ dependencies = [ "digest 0.10.7", ] -[[package]] -name = "home" -version = "0.5.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5" -dependencies = [ - "windows-sys 0.52.0", -] - [[package]] name = "http" version = "0.2.12" @@ -2282,6 +2229,19 @@ dependencies = [ "webpki-roots", ] +[[package]] +name = "hyper-tls" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905" +dependencies = [ + "bytes", + "hyper 0.14.30", + "native-tls", + "tokio", + "tokio-native-tls", +] + [[package]] name = "hyper-tls" version = "0.6.0" @@ -2313,7 +2273,7 @@ dependencies = [ "pin-project-lite", "socket2", "tokio", - "tower", + "tower 0.4.13", "tower-service", "tracing", ] @@ -2341,12 +2301,6 @@ dependencies = [ "cc", ] -[[package]] -name = "ident_case" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" - [[package]] name = "idna" version = "0.5.0" @@ -2401,17 +2355,6 @@ version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ce23b50ad8242c51a442f3ff322d56b02f08852c77e4c0b4d3fd684abc89c683" -[[package]] -name = "indexmap" -version = "1.9.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" -dependencies = [ - "autocfg", - "hashbrown 0.12.3", - "serde", -] - [[package]] name = "indexmap" version = "2.3.0" @@ -2420,7 +2363,6 @@ checksum = "de3fc2e30ba82dd1b3911c8de1ffc143c74a914a14e99514d7637e3099df5ea0" dependencies = [ "equivalent", "hashbrown 0.14.5", - "serde", ] [[package]] @@ -2587,12 +2529,6 @@ dependencies = [ "spin 0.9.8", ] -[[package]] -name = "lazycell" -version = "1.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" - [[package]] name = "libc" version = "0.2.155" @@ -2671,6 +2607,15 @@ version = "0.4.22" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24" +[[package]] +name = "lru" +version = "0.12.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "234cf4f4a04dc1f57e24b96cc0cd600cf2af460d4161ac5ecdd0af8e1f3b2a38" +dependencies = [ + "hashbrown 0.15.0", +] + [[package]] name = "matchers" version = "0.1.0" @@ -2971,12 +2916,6 @@ version = "1.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" -[[package]] -name = "oneshot" -version = "0.1.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e296cf87e61c9cfc1a61c3c63a0f7f286ed4554e0e22be84e8a38e1d264a2a29" - [[package]] name = "open-fastrlp" version = "0.1.4" @@ -3060,9 +2999,9 @@ checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" [[package]] name = "p3-air" -version = "0.1.3-succinct" +version = "0.1.4-succinct" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45e909ef66fa5d77ff0fd3cb5af4b33b27fa6fb68d02b9b1e70edbc29383e565" +checksum = "066f571b2e645505ed5972dd0e1e252ba03352150830c9566769ca711c0f1e9b" dependencies = [ "p3-field", "p3-matrix", @@ -3070,9 +3009,9 @@ dependencies = [ [[package]] name = "p3-baby-bear" -version = "0.1.3-succinct" +version = "0.1.4-succinct" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46965470aac1cddfe52f535424b59d52f2fffef0fdeb9dbed19da39b1d8f048a" +checksum = "ff00f571044d299310d9659c6e51c98422de3bf94b8577f7f30cf59cf2043e40" dependencies = [ "num-bigint 0.4.6", "p3-field", @@ -3085,9 +3024,9 @@ dependencies = [ [[package]] name = "p3-blake3" -version = "0.1.3-succinct" +version = "0.1.4-succinct" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "36ef32d6ea21dd5cf9fec8a31bf0c64e6ceee8901dbf50966b83a443093c2aba" +checksum = "cc4cb69ae54a279bbbd477566d1bdb71aa879b528fd658d0fcfc36f54b00217c" dependencies = [ "blake3", "p3-symmetric", @@ -3095,9 +3034,9 @@ dependencies = [ [[package]] name = "p3-bn254-fr" -version = "0.1.3-succinct" +version = "0.1.4-succinct" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e3edfca6be3b3109adf8e3330baec30c3fc5f9f4d63d27aaec1b471ca51ed67" +checksum = "bf19917f986d45e9abb6d177e875824ced6eed096480d574fce16f2c45c721ea" dependencies = [ "ff 0.13.0", "num-bigint 0.4.6", @@ -3110,25 +3049,27 @@ dependencies = [ [[package]] name = "p3-challenger" -version = "0.1.3-succinct" +version = "0.1.4-succinct" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a6662ea899a5d848b60c699944491d72757873b5e1fd46798e4712f90a03a4e9" +checksum = "3be7e4fbce4566a93091107eadfafa0b5374bd1ffd3e0f6b850da3ff72eb183f" dependencies = [ "p3-field", "p3-maybe-rayon", "p3-symmetric", "p3-util", + "serde", "tracing", ] [[package]] name = "p3-commit" -version = "0.1.3-succinct" +version = "0.1.4-succinct" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc3563918b5cc44ef5280bf9b51753e70dc78802de25e3fb81ed6c94617ccb6e" +checksum = "7a03eb0f99d68a712c41e658e9a7782a0705d4ffcfb6232a43bd3f1ef9591002" dependencies = [ "itertools 0.12.1", "p3-challenger", + "p3-dft", "p3-field", "p3-matrix", "p3-util", @@ -3137,9 +3078,9 @@ dependencies = [ [[package]] name = "p3-dft" -version = "0.1.3-succinct" +version = "0.1.4-succinct" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "510095701819d83c9509fe825bbf1ebfe50426ae75149df5fe1dcfd18261323a" +checksum = "1556de968523fbe5d804ab50600ea306fcceea3500cfd7601e40882480524664" dependencies = [ "p3-field", "p3-matrix", @@ -3150,9 +3091,9 @@ dependencies = [ [[package]] name = "p3-field" -version = "0.1.3-succinct" +version = "0.1.4-succinct" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61f1977a0a65789f719aa824119c332c4676b000bdbfe94d312fb6244a70d601" +checksum = "cec2af6e1ac47a2035af5165e668d64612c4b9ccabd06df37fc1fd381fdf8a71" dependencies = [ "itertools 0.12.1", "num-bigint 0.4.6", @@ -3164,9 +3105,9 @@ dependencies = [ [[package]] name = "p3-fri" -version = "0.1.3-succinct" +version = "0.1.4-succinct" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c22ddb958f200d9289cc73ff68847b0167ca0c14557b791dd9e318f98c2d1b28" +checksum = "f351ee9f9d4256455164565cd91e3e6d2487cc2a5355515fa2b6d479269188dd" dependencies = [ "itertools 0.12.1", "p3-challenger", @@ -3183,30 +3124,20 @@ dependencies = [ [[package]] name = "p3-interpolation" -version = "0.1.3-succinct" +version = "0.1.4-succinct" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d032cda212f6b408d7d5b0b9a8270a9455acb93742fe55a0880d82be8e90e500" +checksum = "d24d0f2907a374ebe4545fcff3120d6376d9630cf0bef30feedcfc5908ea2c37" dependencies = [ "p3-field", "p3-matrix", "p3-util", ] -[[package]] -name = "p3-keccak" -version = "0.1.3-succinct" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c56abdd5a8a780049d2f8e92cea1df57b55a2ef50a40d1103f2732f7a00e4b1" -dependencies = [ - "p3-symmetric", - "tiny-keccak", -] - [[package]] name = "p3-keccak-air" -version = "0.1.3-succinct" +version = "0.1.4-succinct" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8398f1694ccc38513df0b8cab5f9ef7325423f27cd9e4fa20bdc77d5079cf1b" +checksum = "e66badd47cedf6570e91a0cabc389b80dfd53ba1a6e9a45a3923fd54b86122ff" dependencies = [ "p3-air", "p3-field", @@ -3214,15 +3145,13 @@ dependencies = [ "p3-maybe-rayon", "p3-util", "tracing", - "tracing-forest", - "tracing-subscriber", ] [[package]] name = "p3-matrix" -version = "0.1.3-succinct" +version = "0.1.4-succinct" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d548ee0b834f8e2ebc5037073acd101a3b0ca41a2d1d28a15ba0ccd9059495b0" +checksum = "fa272f3ae77ed8d73478aa7c89e712efb15bda3ff4aff10fadfe11a012cd5389" dependencies = [ "itertools 0.12.1", "p3-field", @@ -3235,18 +3164,18 @@ dependencies = [ [[package]] name = "p3-maybe-rayon" -version = "0.1.3-succinct" +version = "0.1.4-succinct" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55f5575d3d61bedb3e05681abb0f36b8bb339d65aa395d50756bfa64e9cd3f46" +checksum = "3eecad6292021858f282d643d9d1284ab112a200494d589863a9c4080e578ef0" dependencies = [ "rayon", ] [[package]] name = "p3-mds" -version = "0.1.3-succinct" +version = "0.1.4-succinct" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a6e57ed310d59245f93e24ee805ea7aa16fc9c505551b76a15f5e50f29d177e" +checksum = "716c4dbe68a02f1541eb09149d07b8663a3a5951b1864a31cd67ff3bb0826e57" dependencies = [ "itertools 0.12.1", "p3-dft", @@ -3259,9 +3188,9 @@ dependencies = [ [[package]] name = "p3-merkle-tree" -version = "0.1.3-succinct" +version = "0.1.4-succinct" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af46b41cba75d483ec8a553cbab1d2d794935ae3403d75394acfa4fb2c977cce" +checksum = "ad7ebab52a03c26025988663a135aed62f5084a2e2ea262176dc8748efb593e5" dependencies = [ "itertools 0.12.1", "p3-commit", @@ -3276,22 +3205,23 @@ dependencies = [ [[package]] name = "p3-poseidon2" -version = "0.1.3-succinct" +version = "0.1.4-succinct" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adaba6f14c197203530e233badce0ca1126ba3bf3c9ff766505b497bdad0bee1" +checksum = "39c042efa15beab7a8c4d0ca9b9e4cbda7582be0c08e121e830fec45f082935b" dependencies = [ "gcd", "p3-field", "p3-mds", "p3-symmetric", "rand", + "serde", ] [[package]] name = "p3-symmetric" -version = "0.1.3-succinct" +version = "0.1.4-succinct" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57ecc4282566eb14f48be7707f6745c4dff6be664984d59ec0fb1849cd82b5c2" +checksum = "b9896a831f5b688adc13f6fbe1dcf66ecfaa4622a500f81aa745610e777acb72" dependencies = [ "itertools 0.12.1", "p3-field", @@ -3300,9 +3230,9 @@ dependencies = [ [[package]] name = "p3-uni-stark" -version = "0.1.3-succinct" +version = "0.1.4-succinct" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1af5c038b22b058bf1d49fb1ea3dd6c240a3e46c3278fde5c444e0034f7ffe37" +checksum = "8437ebcd060c8a5479898030b114a93da8a86eb4c2e5f313d9eeaaf40c6e6f61" dependencies = [ "itertools 0.12.1", "p3-air", @@ -3313,18 +3243,15 @@ dependencies = [ "p3-matrix", "p3-maybe-rayon", "p3-util", - "postcard", "serde", "tracing", - "tracing-forest", - "tracing-subscriber", ] [[package]] name = "p3-util" -version = "0.1.3-succinct" +version = "0.1.4-succinct" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79f3fef0e00d9d7246385e758c4cd39b4efcbbcea31752471491ab502631385e" +checksum = "dedb9d27ba47ac314c6fac4ca54e55c3e486c864d51ec5ba55dbe47b75121157" dependencies = [ "serde", ] @@ -3532,17 +3459,6 @@ version = "1.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "da544ee218f0d287a911e9c99a39a8c9bc8fcad3cb8db5959940044ecfc67265" -[[package]] -name = "postcard" -version = "1.0.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a55c51ee6c0db07e68448e336cf8ea4131a620edefebf9893e759b2d793420f8" -dependencies = [ - "cobs", - "embedded-io", - "serde", -] - [[package]] name = "powerfmt" version = "0.2.0" @@ -3656,9 +3572,9 @@ dependencies = [ [[package]] name = "prost" -version = "0.12.6" +version = "0.13.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "deb1435c188b76130da55f17a466d252ff7b1418b2ad3e037d127b94e3411f29" +checksum = "7b0487d90e047de87f984913713b85c601c05609aad5b0df4b4573fbf69aa13f" dependencies = [ "bytes", "prost-derive", @@ -3666,26 +3582,17 @@ dependencies = [ [[package]] name = "prost-derive" -version = "0.12.6" +version = "0.13.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81bddcdb20abf9501610992b6759a4c888aef7d1a7247ef75e2404275ac24af1" +checksum = "e9552f850d5f0964a4e4d0bf306459ac29323ddfbae05e35a7c0d35cb0803cc5" dependencies = [ "anyhow", - "itertools 0.12.1", + "itertools 0.13.0", "proc-macro2", "quote", "syn 2.0.72", ] -[[package]] -name = "psm" -version = "0.1.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5787f7cda34e3033a72192c018bc5883100330f362ef279a8cbccfce8bb4e874" -dependencies = [ - "cc", -] - [[package]] name = "quick-error" version = "1.2.3" @@ -3902,19 +3809,23 @@ dependencies = [ "http 0.2.12", "http-body 0.4.6", "hyper 0.14.30", + "hyper-tls 0.5.0", "ipnet", "js-sys", "log", "mime", + "native-tls", "once_cell", "percent-encoding", "pin-project-lite", + "rustls-pemfile 1.0.4", "serde", "serde_json", "serde_urlencoded", "sync_wrapper 0.1.2", "system-configuration", "tokio", + "tokio-native-tls", "tower-service", "url", "wasm-bindgen", @@ -3940,7 +3851,7 @@ dependencies = [ "http-body-util", "hyper 1.4.1", "hyper-rustls", - "hyper-tls", + "hyper-tls 0.6.0", "hyper-util", "ipnet", "js-sys", @@ -3952,7 +3863,7 @@ dependencies = [ "pin-project-lite", "quinn", "rustls", - "rustls-pemfile", + "rustls-pemfile 2.1.3", "rustls-pki-types", "serde", "serde_json", @@ -4169,6 +4080,15 @@ dependencies = [ "zeroize", ] +[[package]] +name = "rustls-pemfile" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c" +dependencies = [ + "base64 0.21.7", +] + [[package]] name = "rustls-pemfile" version = "2.1.3" @@ -4443,36 +4363,6 @@ dependencies = [ "serde", ] -[[package]] -name = "serde_with" -version = "3.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69cecfa94848272156ea67b2b1a53f20fc7bc638c4a46d2f8abde08f05f4b857" -dependencies = [ - "base64 0.22.1", - "chrono", - "hex", - "indexmap 1.9.3", - "indexmap 2.3.0", - "serde", - "serde_derive", - "serde_json", - "serde_with_macros", - "time", -] - -[[package]] -name = "serde_with_macros" -version = "3.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8fee4991ef4f274617a51ad4af30519438dacb2f56ac773b08a1922ff743350" -dependencies = [ - "darling", - "proc-macro2", - "quote", - "syn 2.0.72", -] - [[package]] name = "serial_test" version = "3.1.1" @@ -4618,9 +4508,9 @@ dependencies = [ [[package]] name = "sp1-build" -version = "2.0.0" +version = "3.0.0-rc4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8216e07a9c463c6ee091cdc817cfc10c25446cfd4d020812818177e0a3d1c943" +checksum = "7a50f080403fc7bd2bf0a9337d128e158629a05529dadae835c9f03b78731ab2" dependencies = [ "anyhow", "cargo_metadata", @@ -4631,16 +4521,15 @@ dependencies = [ [[package]] name = "sp1-core-executor" -version = "2.0.0" +version = "3.0.0-rc4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9855631556145c827f959527a2f60cb2c6ededfb42afcee49e41dab5f507ce7b" +checksum = "c77eeceb035e35458674fa09f703dbaf34dc52c57fddf5f78facdf079a306772" dependencies = [ "bincode", "bytemuck", "elf", "enum-map", "eyre", - "generic-array 1.1.0", "hashbrown 0.14.5", "hex", "itertools 0.13.0", @@ -4648,14 +4537,11 @@ dependencies = [ "nohash-hasher", "num", "p3-field", - "p3-keccak-air", "p3-maybe-rayon", "rand", "rrs-succinct", "serde", - "serde_with", "sp1-curves", - "sp1-derive", "sp1-primitives", "sp1-stark", "strum", @@ -4669,18 +4555,12 @@ dependencies = [ [[package]] name = "sp1-core-machine" -version = "2.0.0" +version = "3.0.0-rc4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7d9c51416ef52b258fa637538c02a2ac06ecaeec79d075c620013a77f035dee" +checksum = "eb4c72bdcbab88c1fc60bcdb840fe6549640e2b9fbb1bf0932f5aad208e1e6e1" dependencies = [ - "anyhow", - "arrayref", "bincode", - "blake3", - "bytemuck", "cfg-if", - "curve25519-dalek", - "elf", "elliptic-curve", "generic-array 1.1.0", "hashbrown 0.14.5", @@ -4688,32 +4568,20 @@ dependencies = [ "itertools 0.13.0", "k256", "log", - "nohash-hasher", "num", - "num-bigint 0.4.6", "num_cpus", "p3-air", "p3-baby-bear", "p3-blake3", "p3-challenger", - "p3-commit", - "p3-dft", "p3-field", - "p3-fri", - "p3-keccak", "p3-keccak-air", "p3-matrix", "p3-maybe-rayon", - "p3-merkle-tree", - "p3-poseidon2", - "p3-symmetric", "p3-uni-stark", "p3-util", "rand", - "rayon-scan", - "rrs-succinct", "serde", - "serde_with", "size", "snowbridge-amcl", "sp1-core-executor", @@ -4735,10 +4603,11 @@ dependencies = [ [[package]] name = "sp1-curves" -version = "2.0.0" +version = "3.0.0-rc4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7c33d4d3f5e3590cc8c8d8a3d074097020bc0be0b9dd35fe43e04c586440c85" +checksum = "30b0d82d4422362a11ee88d93f25ecc6e3322c8dee96725c035a5a967012ad94" dependencies = [ + "cfg-if", "curve25519-dalek", "dashu", "elliptic-curve", @@ -4756,73 +4625,75 @@ dependencies = [ [[package]] name = "sp1-derive" -version = "2.0.0" +version = "3.0.0-rc4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e33825340e1b21b37a29f5304fbd18a1c7c97ba1376fa35b7c017fd95dd627e" +checksum = "0b00945dcf4bc64cc8fdf93156bc5e5363d084d4c8386273abc9cd306c12070c" dependencies = [ - "proc-macro2", "quote", "syn 1.0.109", ] [[package]] name = "sp1-helper" -version = "2.0.0" +version = "3.0.0-rc4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f08124c62d09764810783355cff518477e3f36c8e83343623859afeca6f3eeb" +checksum = "fd4ff6e7af034bd52ac2aa42717c0ea9542841080bfeb8d01f1af56c51108fab" dependencies = [ "sp1-build", ] [[package]] name = "sp1-lib" -version = "2.0.0" +version = "3.0.0-rc4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "413956de14568d7fb462213b9505ad4607d75c875301b9eca567cfb2e58eaac1" +checksum = "5673b2827eb4206316092d9617369b0e55894798b3bbd0f94efe39b0fa055925" dependencies = [ - "anyhow", "bincode", - "cfg-if", - "hex", "serde", - "snowbridge-amcl", ] [[package]] name = "sp1-primitives" -version = "2.0.0" +version = "3.0.0-rc4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "efbeba375fe59917f162f1808c280d2e39e4698dc7eeac83936b6e70c2f8dbbc" +checksum = "f0508278dce6e3fc971bdf8d1cedecebedd6709b695fbe6c3e61c184161a619e" dependencies = [ - "itertools 0.13.0", + "bincode", + "hex", "lazy_static", + "num-bigint 0.4.6", "p3-baby-bear", "p3-field", "p3-poseidon2", "p3-symmetric", + "serde", + "sha2", ] [[package]] name = "sp1-prover" -version = "2.0.0" +version = "3.0.0-rc4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "166e9f9fd29ecdfd4fd452d49052abdfbe735317f00016e94fde8410f90b4134" +checksum = "2110ff3b746738d762fad88977f4590a003d48bbd907346da7ef6483efaafba6" dependencies = [ "anyhow", "bincode", "clap", "dirs", - "hex", + "eyre", "itertools 0.13.0", + "lazy_static", + "lru", "num-bigint 0.4.6", - "oneshot", "p3-baby-bear", "p3-bn254-fr", "p3-challenger", "p3-commit", "p3-field", "p3-matrix", + "p3-symmetric", "rayon", + "reqwest 0.11.27", "serde", "serde_json", "serial_test", @@ -4833,7 +4704,6 @@ dependencies = [ "sp1-recursion-compiler", "sp1-recursion-core", "sp1-recursion-gnark-ffi", - "sp1-recursion-program", "sp1-stark", "subtle-encoding", "tempfile", @@ -4844,53 +4714,54 @@ dependencies = [ [[package]] name = "sp1-recursion-circuit" -version = "2.0.0" +version = "3.0.0-rc4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a3ccdda16cd078f32c6707212b8e8f3e423992eeff6ace898d3e15bf94e78a16" +checksum = "bf5194faeb5c2d800f38ef76aad7f3efcc450e50d24b6d9c6d7934a15424e22a" dependencies = [ - "bincode", + "hashbrown 0.14.5", "itertools 0.13.0", + "num-traits", "p3-air", "p3-baby-bear", "p3-bn254-fr", + "p3-challenger", "p3-commit", + "p3-dft", "p3-field", "p3-fri", "p3-matrix", + "p3-symmetric", "p3-util", + "rand", + "rayon", "serde", + "sp1-core-executor", "sp1-core-machine", + "sp1-derive", + "sp1-primitives", "sp1-recursion-compiler", "sp1-recursion-core", - "sp1-recursion-derive", - "sp1-recursion-program", + "sp1-recursion-gnark-ffi", "sp1-stark", + "tracing", ] [[package]] name = "sp1-recursion-compiler" -version = "2.0.0" +version = "3.0.0-rc4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae17b6c8506b3521e78450cf28f76c2426b5b2f132bb89660d3d61eb155439c4" +checksum = "87d68961972706555eafe76c16dc27b95e7255ffe757424c4abcd79f6bd42050" dependencies = [ "backtrace", "itertools 0.13.0", - "p3-air", "p3-baby-bear", "p3-bn254-fr", - "p3-commit", "p3-field", - "p3-fri", - "p3-matrix", - "p3-poseidon2", "p3-symmetric", - "p3-util", - "rayon", "serde", "sp1-core-machine", "sp1-primitives", "sp1-recursion-core", - "sp1-recursion-core-v2", "sp1-recursion-derive", "sp1-stark", "tracing", @@ -4899,16 +4770,14 @@ dependencies = [ [[package]] name = "sp1-recursion-core" -version = "2.0.0" +version = "3.0.0-rc4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8414c3d16cd2fedd293989cef601915d4e1efab662e3a08923606970dc8ae7e6" +checksum = "b5f8a14b752ba730e1646759ee2d6ef30beef3d7fd8a71c2a88db2d296030b07" dependencies = [ - "arrayref", "backtrace", "ff 0.13.0", "hashbrown 0.14.5", "itertools 0.13.0", - "num_cpus", "p3-air", "p3-baby-bear", "p3-bn254-fr", @@ -4924,52 +4793,11 @@ dependencies = [ "p3-symmetric", "p3-util", "serde", - "serde_with", - "sp1-core-executor", "sp1-core-machine", "sp1-derive", "sp1-primitives", "sp1-stark", "static_assertions", - "tracing", - "zkhash", -] - -[[package]] -name = "sp1-recursion-core-v2" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d0a2af67ca6f7db964b7f1ffdb48f6e26f10e3cc027a11bdd17b224f8747650" -dependencies = [ - "arrayref", - "backtrace", - "ff 0.13.0", - "hashbrown 0.14.5", - "itertools 0.13.0", - "num_cpus", - "p3-air", - "p3-baby-bear", - "p3-bn254-fr", - "p3-challenger", - "p3-commit", - "p3-dft", - "p3-field", - "p3-fri", - "p3-matrix", - "p3-maybe-rayon", - "p3-merkle-tree", - "p3-poseidon2", - "p3-symmetric", - "p3-util", - "serde", - "serde_with", - "sp1-core-executor", - "sp1-core-machine", - "sp1-derive", - "sp1-primitives", - "sp1-recursion-core", - "sp1-stark", - "static_assertions", "thiserror", "tracing", "vec_map", @@ -4978,20 +4806,19 @@ dependencies = [ [[package]] name = "sp1-recursion-derive" -version = "2.0.0" +version = "3.0.0-rc4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4921db3912a60ee3896242ce336203066377e6eddd1c26d099e8bf6b9c470a21" +checksum = "c01af05dd76efc8e0317fc55dcf56796da75e61c92a9b0e50895b58dafccce81" dependencies = [ - "proc-macro2", "quote", "syn 1.0.109", ] [[package]] name = "sp1-recursion-gnark-ffi" -version = "2.0.0" +version = "3.0.0-rc4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "718b2e92bfd3ce91fcef2ac0b3a8d31746dbc3ad4071f3bec45aa2e5e025adb1" +checksum = "85e5eebad74f183901fe33de67edb872cfebcf2588f846729a635a2e57c4702d" dependencies = [ "anyhow", "bincode", @@ -5004,7 +4831,6 @@ dependencies = [ "p3-baby-bear", "p3-field", "p3-symmetric", - "rand", "serde", "serde_json", "sha2", @@ -5014,43 +4840,11 @@ dependencies = [ "tempfile", ] -[[package]] -name = "sp1-recursion-program" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "676661b42f5d55c64932ad400ec920bd8b8098b1500b13c483a541bf3b396dd1" -dependencies = [ - "itertools 0.13.0", - "p3-air", - "p3-baby-bear", - "p3-challenger", - "p3-commit", - "p3-dft", - "p3-field", - "p3-fri", - "p3-matrix", - "p3-maybe-rayon", - "p3-merkle-tree", - "p3-poseidon2", - "p3-symmetric", - "p3-util", - "rand", - "serde", - "sp1-core-executor", - "sp1-core-machine", - "sp1-primitives", - "sp1-recursion-compiler", - "sp1-recursion-core", - "sp1-stark", - "stacker", - "tracing", -] - [[package]] name = "sp1-sdk" -version = "2.0.0" +version = "3.0.0-rc4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b289585392a3639f6541bce32dd89e03e7893f42e9b9bcf6bee7d54183d5e05" +checksum = "5c4f8227da8a67e692d3ddea5552c8e992555cf2de7913ef2ad2e15341aa783c" dependencies = [ "alloy-sol-types", "anyhow", @@ -5060,31 +4854,25 @@ dependencies = [ "dirs", "ethers", "futures", - "getrandom", "hashbrown 0.14.5", "hex", "indicatif", "itertools 0.13.0", "log", - "num-bigint 0.4.6", "p3-baby-bear", - "p3-commit", "p3-field", "p3-fri", - "p3-matrix", "prost", "reqwest 0.12.5", "reqwest-middleware", "serde", - "serde_json", - "sha2", "sp1-core-executor", "sp1-core-machine", + "sp1-primitives", "sp1-prover", "sp1-stark", "strum", "strum_macros", - "sysinfo", "tempfile", "thiserror", "tokio", @@ -5095,14 +4883,15 @@ dependencies = [ [[package]] name = "sp1-stark" -version = "2.0.0" +version = "3.0.0-rc4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4048fc99a6c1123f5040b5ade1ae2839ca1be421e4c427fc7d1fd9bbf6e174f5" +checksum = "c2ec4f3271c0577876dc30415ce929344b3e2fa9bbf99e3906e9a6fbc2acb2ea" dependencies = [ "arrayref", "getrandom", "hashbrown 0.14.5", "itertools 0.13.0", + "num-traits", "p3-air", "p3-baby-bear", "p3-challenger", @@ -5121,24 +4910,24 @@ dependencies = [ "serde", "sp1-derive", "sp1-primitives", + "strum", + "strum_macros", "sysinfo", + "thiserror", "tracing", ] [[package]] name = "sp1-zkvm" -version = "2.0.0" +version = "3.0.0-rc4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "66c525f67cfd3f65950f01c713a72c41a5d44d289155644c8ace4ec264098039" +checksum = "272348a72c96fcc794756da57fd17ae48e79d005ff7e27224f745bb3fb68b12e" dependencies = [ - "bincode", "cfg-if", "getrandom", "lazy_static", "libm", - "once_cell", "rand", - "serde", "sha2", "sp1-lib", ] @@ -5165,19 +4954,6 @@ dependencies = [ "der", ] -[[package]] -name = "stacker" -version = "0.1.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c886bd4480155fd3ef527d45e9ac8dd7118a898a46530b7b94c3e21866259fce" -dependencies = [ - "cc", - "cfg-if", - "libc", - "psm", - "winapi", -] - [[package]] name = "static_assertions" version = "1.1.0" @@ -5330,18 +5106,18 @@ dependencies = [ [[package]] name = "thiserror" -version = "1.0.63" +version = "1.0.64" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0342370b38b6a11b6cc11d6a805569958d54cfa061a29969c3b5ce2ea405724" +checksum = "d50af8abc119fb8bb6dbabcfa89656f46f84aa0ac7688088608076ad2b459a84" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.63" +version = "1.0.64" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4558b58466b9ad7ca0f102865eccc95938dca1a74a856f2b57b6629050da261" +checksum = "08904e7672f5eb876eaaf87e0ce17857500934f4981c4a0ab2b4aa98baac7fc3" dependencies = [ "proc-macro2", "quote", @@ -5417,9 +5193,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.39.2" +version = "1.40.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "daa4fb1bc778bd6f04cbfc4bb2d06a7396a8f299dc33ea1900cedaa316f467b1" +checksum = "e2b070231665d27ad9ec9b8df639893f46727666c6767db40317fbe920a5d998" dependencies = [ "backtrace", "bytes", @@ -5505,7 +5281,7 @@ version = "0.19.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1b5bb770da30e5cbfde35a2d7b9b8a2c4b8ef89548a7a6aeab5c9a576e3e7421" dependencies = [ - "indexmap 2.3.0", + "indexmap", "toml_datetime", "winnow 0.5.40", ] @@ -5516,7 +5292,7 @@ version = "0.21.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1" dependencies = [ - "indexmap 2.3.0", + "indexmap", "toml_datetime", "winnow 0.5.40", ] @@ -5527,7 +5303,7 @@ version = "0.22.20" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "583c44c02ad26b0c3f3066fe629275e50627026c51ac2e595cca4c230ce1ce1d" dependencies = [ - "indexmap 2.3.0", + "indexmap", "serde", "serde_spanned", "toml_datetime", @@ -5550,17 +5326,27 @@ dependencies = [ "tracing", ] +[[package]] +name = "tower" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2873938d487c3cfb9aed7546dc9f2711d867c9f90c46b889989a2cb84eba6b4f" +dependencies = [ + "tower-layer", + "tower-service", +] + [[package]] name = "tower-layer" -version = "0.3.2" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c20c8dbed6283a09604c3e69b4b7eeb54e298b8a600d4d5ecb5ad39de609f1d0" +checksum = "121c2a6cda46980bb0fcd1647ffaf6cd3fc79a013de288782836f6df9c48780e" [[package]] name = "tower-service" -version = "0.3.2" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52" +checksum = "8df9b6e13f2d32c91b9bd719c00d1958837bc7dec474d94952798cc8e69eeec3" [[package]] name = "tracing" @@ -5655,13 +5441,12 @@ checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b" [[package]] name = "twirp-rs" -version = "0.3.0" +version = "0.13.0-succinct" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfa3161d8eee0abcad4e762f4215381a430cc1281870d575b0f1e4fbfc74b8ce" +checksum = "27dfcc06b8d9262bc2d4b8d1847c56af9971a52dd8a0076876de9db763227d0d" dependencies = [ "async-trait", "axum", - "bytes", "futures", "http 1.1.0", "http-body-util", @@ -5672,7 +5457,7 @@ dependencies = [ "serde_json", "thiserror", "tokio", - "tower", + "tower 0.5.1", "url", ] @@ -5960,18 +5745,6 @@ dependencies = [ "rustls-pki-types", ] -[[package]] -name = "which" -version = "4.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87ba24419a2078cd2b0f2ede2691b6c66d8e47836da3b6db8265ebad47afbfc7" -dependencies = [ - "either", - "home", - "once_cell", - "rustix", -] - [[package]] name = "winapi" version = "0.3.9" diff --git a/elf/riscv32im-succinct-zkvm-elf b/elf/riscv32im-succinct-zkvm-elf index 92b2fb30c48a4ff8e04c0097eea4dde89caf9565..f04a32275eaf632857b2356ea9c277d0d085050f 100755 GIT binary patch literal 120188 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%0Ay;~jWmDQ|#Jk83vg2a^W1$0~ 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 A$N&HU literal 130760 zcmeF4d3+Vs+4#@gxieY7fDBn!gvd<-qEhXE*S1!ZN+NdADiW}Zwq9AZt+)Vc-?k>) z+yK_1WmsK635nQ6ZHEwjf2|G64cNY~Rv`gfE3L?))}<<|ko>;SnMnwnweQ>h{`h^$ z=M!em%sJ0_&U2pqoH_Td@-J2xhM_wDMb!IBO3itNY9!a)hk|z_RiVmI!&Fa|t!$pl zyOGqCzdv&?f6?&o2sF7fR9`OgC+}5ndBVR;`76|ah0iJ_f0jHC-xt2Xv%eJTznV`f zC4b%9uP_a@B6hm|E1=o$`4haP{S`Z=T`#xC{?qSyXexE{XQLVmUFCHCmp_4j^XSjnl%vGY`{XpL&xQK-CBYG{0Cp>i_pevVzLJiA&gdRVDlRn6JS!ZnIE z#^fp$)-4|OevV2!m}Xv5yesF*9MxGeA4>Y5FHNIh?rhaWTfd?eys82^zP1zGtCY8} zBpi>`$4{+R$$DT^K?l2{8*R(`2DGj1>)3^As%p+T`u(T@;roHSH+bLk==bUT;JwVv zIr2U`m@})tlso4qoR8lH?-~a?_BW1sx9-`a;ihr}xGi}B+)^v#h0`4S;bYpGEy25D z;NGW>?(^dHNBAiB^l&Vv(|%Xzqm;KGrTiUf=EF9e z+?3%?Y*qdZjm%Y6CyYH!!%tUcbN>sREas;Met_?tZ0nPr)tmWJwqs?hMfkb9s!D&E z$hP`;QFwy-o>eOEjc)IsOhl|c&R1#-?<;c*=a2l^&4!bT!skjYQUXJLt?u5DhSNGn z#qM39oYpL(Zte;dn|r;~i%9(=bxW_VySK=6#_75dXPmAZiOs#rq;B-+x>c2R_tr$6 zaWw)r>Rc5CZcP+ec5LowOK^bBrdd>NCZVNyhG8bpSQ9aaS4Wb=%Od8PMg-oD=8x67 z>1Btp#YQ}$;>Ga1mHXw`S&wk7HUheE>~xkb*^W9gK<;$Nv$WY zcA%r+vFJWMXO9VN%0^gTsrkaTKk3=fzf%V~8jlCM%UrCeTE&L^82LZlaOR-5m@Ao! z01uh3Kz{~vRket@h$OBrGMs3ZlDYMufn!HI=V7d4WodqeCJLG;Xws$6@{`hk@)l_F zK02`{efOmAp7ec6Y{a=eVrP~0hz-A@M{L+Pdo&fpKMmGJv7cBM##UMvijEF&N}V6* z%F<~LczP-8BJ?R^q#s*l1pH9-dH6PxEG~<9(dvkKX|?TCPB*-T3zWO7MS1xPlvD62 zq- zzjyL#4fk6O%1spsk7YXcyJk!^szlDSGRF$uR!+qMlXoGFO3(Fg__X1a&*52>a&P#m zk@#*S@*wy#r_eK$izj)O;n-E(+E$$nj~jIvk7Nsv$MkiMsqV)a)i!1 zcPe+^qw-#v!`3Ko5p8$vQc~9$KU=xC17rMb!=1cO`M0l>_bNHeFr0$fhCg{fbGb`- zTV^X?U~J{tt_;K7zmmC~t&&5~VT)R$db?=!o-{|4{7mv831 z8NPp5_bq%E^e<)Uzk8Yfk19+5-QUyyQDy1B`+NF7sx19?z84)A)qRI@`zfu;PbFqrJ-rMS zN!+w|hzBhbwR`$_8HGIG)8EVJtrGM03`q{nP_e4L%4?ma>Z-tNYlh*a&Qq~!Y`NXm z;o0cK3}u)rD>_6MdLm29Ydid1`&I1WJz5@}#mK|TmJX4@*z!HVn28Kg?@=3_8Zlxk zEJNhcTZ~RX{$dT_o8p;mcR&MU`*j-*I8prC_s3?0xF)H|9E=o$Ft zq;$xG4po_*^Wtm;&s2%3tCIQH8O}%V5D(_6AoCbJG7V>O`9^k-&{*Zn1}$tpH; zud17A8_A5@RV+zdU|~-(7pb}=IA%PmVm07f!+Wbq#ZvNY1Mjz}I*B2yT`GnQ*TI*` zjD0FLOYjq!u#LJ|o%q$N?e|!3|8H>8{FkcLI0a*_P}>(;Z%lpn+P4;+ifyhgyDXo4 zv13%fYMyR{zC!cqaq)wS%P;V1_jDxk@XIJWR{16Vj8^3|p*vEorB24a4u5(RK1jWC z?X*hV)S#Lyb%&S2|F~nd5??B|Jbgjv_q7N5I9(AddIVU#RjlL@Vo0&|_@~3TA8u%0 z%d@P@@K05stJRP2+jQ(n96=p?#$l%$#1TfUs0@G5#>N$DeNTL&5(Vkr8uya&i;^YQ zMPmCCId*USiHpojE&L7@b?xG^#I*I1U`*7pim_3a+0CDP+>g$Y7_LVmCoAgDNh>$H zzEs!G#_x+}o8oslS$Bu@Qa?3|@5b-@ZA5%8=e%6#lO{I&NhDVCpTq&g9{8u)#|q+x z{vI)lGd+69oA!a}R9>&#ntFUTTjPXoy2yOAHj;d_CE_r5ZsrE%#&=^&;F%S+8Ee=X z3H{C7a15XGuz5~xmp{B*p2yUJiX<^LKCzL6R`|pQae^XF5Z_qKM`$B24t(3H7W{=? zVz-@CM9YI0>8;D*9O`&k!yay3C^1!RSmT94+ol~^H+re*lVU}Us;P1E|M61ecE?J% z-*eLiUaB}wJ?<~B_fqv^W5c;0mve=e+A}nE7WdPw2fS2zc5DRqJCcLFRO9`z!p2Bb z>z}{sr53yp8`20}Q_%6gsMz^n?4>n}-tFkvRi*kfrz*HF{T$;8@*X1J7WT|4?5q!r z-eJAwi=>SnQ+UlcB}Q2H679DUBNP%N6cQs8;;)`gj4+rOVK6bmU}A*9v65Q`^L{Yz z2geE@85|q&i_^>z#F0hi_-iR_Mp`9DSVnSKxnT}V!KaVlx2BCmUt3K*=l4^cyh+Nf zg+EHx^p20Z`*V!#0CjrD%j37eKbOXaaBrgv=YutYl!{x-&m7j8~ z#$sZ&oOtfvh{tlli~H0?^N`Qs$Wcyw;=rF$|1IPzC*GK`75I+hfS(;tP5ZoK z)qfuN+406Fzeb&hfS(;-a9{?{e+2yO__zxfJ63Tn@U!FTb5}Z6>m=Z3$BRwkl+^ct z51gxi18(FR9?6X7{<(#*{08`$@db~z^1LtbGvgC~ORSSS3iz4vQD^k!`9k1RziBA6 zS_%Bjc=3P{z;uA08J~XEm%wKm@Tqe?@#Ux&fN#gAXHR78qkwP6b8iIC#-9S;j<>F@ zhF0@{Z^uX7%3O@w2z)!f=Qqpg_io_Z@rnJxzwvtD+wlcoSc}{=0pE^~`}PLl_XmD7 zzGvPGja9=1Aa69WQk89J7pgdcs@n*KpO;`OP(8uFLi09Gn!cPVv-pYBMT0G~F2V+1(0 zDF1rmhO>U$M{o+-5x0X|0Mj!3*NFv&oa;Ebo$V_PiDh;B4Hbs}Mm_jn;T&ndz>wH9 zXrD6tH#eYfZ^=K>zO7sP7Q=sw_GkSf_elHP$dUF|#D9nOMSsgZ(!Mg%t^bHC{SPba z-ha3Dsfhbm+7GGjccgt=xArX&SNH!&ez*S3ZvC6?PQiao|0C@y&2Igh?hg7N@ksw8 z?HB0wx?SO#fgv5tBkkMFfOah!j{n#CfFC5Dm%fVVtMw-4_;F(6dSZ`fl(X;}!=Ff8 zR^CW?so^aAf$A*#<;3TES`9zVT;a2cUqhe0U8_;K)cb$h4s6>>Be>VEvR zHEd8)c4w?N{0+qF`!=I8 z0ri{-%zMFf9m7bwWQlQ_yRpr1@4%+W{g|!9CS|Ajvv(WrZ2aw#vfggyR^?~xCnhS! z@81#R6t?24d7}(}ietEA3Jh=SM8omwRcF~B1CIN14Yy?@{u_Up_^7cp1O4RfZ*uRa+n=ni{&TfsLGj=O+XO40Poo~2_o0PwCigLzIF`PjwfghCJ zb>zQpo1)zIR`}?J0{7x|hCh3X@@H?v_LdEFqqWS#^}t*~E@&O?R{`%T4Nq_~hoU<^ zw@+Wqi+3sKn)!w^D+if=p`SNsnsVQM&Tublk$j7CCy{UY^RvobM^5E7{IiSel%JEY z+~iH@f;GKdbDeT?))~&GVai*|JZy*0UfHUgW#=3IP1_9j;!TG43ivNusXEL4Wlt%; zeXHT##r3(j4cFYn-#Ww1ftRkiNjZZb*KM6^pHW`lYYg|D*9`ahx3#WGUUpt^9bIBL zS1&cZem_v|>t`75<)1LT`8CRaZ8LLqKk~Dtw?BHC@~16T{(8n_!Hd=c(OIaQZRUuEcejk(mcXR`Yyw zhVnJqc@SQ*UdBgv}1Ml^Q8=VgvqZcs)aYK~;z1#Nf;q4{x_Vsg+74nH1@4e(#1H8@A zJHdNCc*6tW?Qa}rIDKoBd;MnUeXsCIA2+APaM!~JAMkwiYw+P*;H=4UbDo2@2N_yE z`-*(h-&OE-KV&oP&$$ZT?za+nLI3XhdgV@=4WDow4ZUZB^X!elgs;c)*Y|Pc5d5z~ z2ls=wY3E+dI;Y0_JmRDm`pCUGx+HQGe_tFsg7>7mg-`mpy>@~(?zPR?fSK#Eh zy`JZOD!Ebg%6w!}`r8cNO9H&5KW8&|FA4CLvOD@I<$eI(cX9=9*W{TAO{^!Bb1gc$ zZ@uA8eU0%qg7>%p@5^<6!ru|-T@c_s3B1wU{ib)xWf#3C-6Ot!f8lR;^iuFnah(q@ z%J|E20{-4^IM>GLkG^$(fm~`j(Vr8_WoOw%F5PM1id<^Ep@E-uS0E>?3G`4Mb_$u? z27k{Vt6}=-9f1z1Sj~D|AeZLl4H0KEdR+Kh<}#f^58aFZvke{i7VEj-9bKs0%hQJ2 z0dAK+Z@Blq1{_1v+qa~TGw9>>0PoE&!Rwzg+}GeK!F%%!$jf7@v+N?5?g#WUjVm;e zx${r?jdEvOhBs~seXk7gzV<0-G2s}z_eSvLv|O5(?~FKCEjGNqcWBt%@dmd6{++NRM%W}be5;nX6-SiZ8jeJz!O7i%9@g;JxdGPgy z^H}@*OJBK9ZY(jqs}^G0;D?*g)9JLV8Ia%KjeT7+zzhkiBwsYOM5q+4; zAF^t~5$&Moi6eTLv(5a2$^bgn@k_Jv>GUQeCwxEllgo#aS| zztG=LqRYqF^ojo6n2A0R+h2By*nWTZO4drziQW$StW(}5bmCHUVgj31KArMJ!&zFd zI?MjWzcKvxk*gnYUAGR}a1Sl~Ip?DjZvf6?(AqJ)O-}>oY7Ix|70`V(>&+qV>l#ew zl_kvSof>zcgXiI!ZQri^H@*iCW*h#+*qZn6RP=-16&S`T;#;|y1?WR?cCbIv*H~~K z6yPj_Yl1D_J30coHeiPH_S7u`@7c4gs|Pq8i518-{*SSGuWSv={B?3?jZdl|_QWsbb}YRJQGyIuKjw;Rb%tm)@1TSgwFtgrVc z#=q+~;AQmjzCP4&2EMM`Z~uyNSx{c|XXQ?AGLl289q&&=$Rod|ynCa{fAyE-uBr!k ze=0JZhjuIXJHIyEidw_Hg!_%xD1YsvhIb8XsujdSubiXYOSW*mNZ})MJ)ie48vd+O zSwB(k-FF#&&Lz@ke|Hw`Gmy8TYx8+T_0@xt78;)HzG9rp!wC&Ue}&z2)~Cp-!s zf9c~t58UWp!>OD~O!7qFvyVqF7hD^xSBkGbei?AE5A-R%yPKS%oF8U_*Qt)b;XK2? zy@NjEhM)01Yai7;{aL`Q-9Wn$z#--lTqnGuygnDgw;`?*ZUUdjyYO*0!bf-H82)=) zg*L$OXAuus@OT?~W^p}!`9{Xv2wkzIz;P>tKe3zhkd?6PXT_oQHs!M3B(aV=J4<+| zr^q1u2&|#B-^DoBG9Rqjdf?6as9RA$H89|xH6X7S7?tc-#U)#tA<}&DQm(#{n|Y48N-AU zU}1AKtTtdl)3B{~#fk~*NpA! z@RDixEkdV<7~A(%XW8xb8uUR<_n*S`Dc~T7!`Ac=I{CJ=A42 z4|BiiI&|N1)me5gh9};?PWiWSy%^n|IR)DQPRSPZ_L@H4!i7e1cy%9V>vvf7t z=<5_L7CqxQ*W3$aS{;2eu7c`-wGq&R}%FC#v(jm+r!^xQHAy z!+44R?tg>*JD&#U>b}k&hM^O7DK9faxi@|hxYfDN*U%FWy@{Uq5oIIaL2q~uzN7rV z{tSAY$C$^U@8)9Hml@tmpH}kBnU$%$m(FL5=kx3{=&%d9q7N>=hia5}hxpU8rH?`q}G*+YH>+q@9lykj*uK21IW+q`oN{tkV# zVTTuCXT!2<{hayp4S(-TTvub`Td}=mJ&y8q^2FBxR^>MI9P`-;t8ywj7+)tW`xRrA zKVutvH@LR!Wqhryo#5-(X?z`QZ(aj_M+0zxm0zjhxaBf#>}>uF4M)oUDbGMdaGcQw z9G=(y343AmkhOO=CGF8e`MY#`Z#;Ua06m1Bls>)j=%E7iP+0aanF>DppcPl_fWYu) zp%WtG@P)2}PRj$F+J4DgUa4uXacaZHF20q$Dd<7LDS5NDC0o;7 za6&gai@}Nd&eko+Ji2sur~a6X%s+~r4a)8qbm)F?xsB_XI~bpB_{j$C6Pm?q`Z~D_ z@G*@3UL~?TQRZV!uIK@?$T-!RFfG&rW%*hUoL$!6`HJYKF@`zZC~*4UZzRd5dVj>P zy79Z>3k>l7_z7hEP386Kq5N-skG!Taz_2h1d+CkHB(hyz&UF;@s9-(t6y<#7v+&{=!}(!P<^16S zH|L z_ucph*>hv+Q( zE$=fnWaR+YmJ+Q;blxj#C-Kq^t;7N$POF1lR383-)<@`$KBLeB$Yh%P%8B?z!~$X2uRykDAiKA6WqhKK zWPR9=?8TP}WuJaMWZzqa?4!rH^R6#8#i`U41)olq>7Y1>TY+=#8=g&R70J`LB!JEF#8u z4LkZJvGx7EKMf;>!S?TdN_>Vq@9QIoCwGys)+` zpVA*PG8cMX6~caPiRum;zk^)fNDbHh?MTDFyTb4)2Qg;+jGdclhcD3Y6~@0rc%QM# zc+fw?*9?$*KiUSrCg4|OUHGKZS6)A4eJAoGe1fcd{cZym+JAPIq4Os_Pwoa@S%QraKcr$OehD^W2{s}uyU$}cJFq8`*TbhFrsNO! zb8K`L^0XLv(zb@!dl~Z7<##N>@3<3P(F=V$LhBEA%vkhA7P@-^KA86Dv$}j${AXt{ zu&M7{%Xs^pNA3rlw9hjM8E?RM49f2FP2_W^dw?tXZ#NU&ATj#A4d{xGr+56BUkU7K z%MHjTzCz0+WZ*^d={21K`;Ok}gHMATdsl{f=enz@TS+<8J7L-X++O6Haox#vEwrz# zRQ}8cdg%BJwDN|k*lw3y%DTIJ;WN}_u0$3nwac*aKcWN+%@t3lbXK(FE_xVLeY@oBxoJeqsh zpRlH%)A|EoE!BE886!q-yAA!}Y5jrBKzVZe>WVo-NWq2=- zFq{Y8R?gfU?D7MYV}`ekJjy%E3=hBE8-zT+y_Ea24d=ACl>cqol~05Z_M&gL82)9* z@wFE+-aUr5%>}=`l#$^L`zW8!`bayvdpdKn6TOsg_;cs7ceg)%9Ay9PJH+JdWnS_J z&a-n|?Aw&0&H#XsNmHtRFU;Ihr&warMz*7Wyh-5%x( zRw(~6aGJZtaK_U|zVxvRAMVqJH<&(lb%4hVfzPv_&}JX|b#|g}2N}*HWO&jR`ay;l z;XlyMwNi|8C(m@eaGKn^S?FWQvvs%E`N%MB1K$&S&BsJi_Om`s-nDFi_V-%IH)>nG z6Q06W53SA=nrQw+-#eo3b^q9%MWcd!%(`!E&?4pj4@eVeqEK~9tu0{JT zCE$T<(yzA#IbL=i{L`Un=53jTPCzEYvcF**`0Pc$aNU4D5*X~8^Rq0zski|+kHMRd z0tel)_-gH2!!MN4EsO6AeCtzIfzux4Ujl#cI{=)?@XKL*8Y5HZFjBN1KNR0+mu~M& zV6Fzo13iTw?o60WJcGUyy+zsGh#cO*wS%j~GdhO>PN$61axAgAJ8`9s&AoZV=9050 z2VY`yZyx@yl+7EMQwv!54mvj9h`uw0PcuZ{>Dj!gEywdjj+fK+W^}@Rf&bGUh z^T0B6>zjPjg57=aZRNiCZREF*So_afP95@Z&eB(jQy({+KYapQ{SNkWWgx%nJk~a` zlVb)G&x-t}xt@a!T*vj3J4m5`ScdqFR&5_BQo=4Y@ z#P8mWZhw0pW z_1aE87`!~>b&6v+n=WD;+k*Aune)JD3VDwwl>c8-lz$Jt)r7(LY1EZ{^;c5Y*%stz zta9Ko4_7`R`LzM=e=`T!_3-3G^0xKRc_sV#8+8s#@82g+?u9ulU9NqeJi*_P-(293 zZ)c5N`xADa_&*sgSJ%Q;RbpQXc4N~wGRCdgn)Asm_rVV5f!h>tV~)eJkFV|DQ9y2u zE4T>^KO*ugdSw!N1^M04fG>dj7F43cv4`cYl#$J zTgwpNAkZn;m&Mo@>U`vNV+|MIqm_9ZO)WA?Kr9DHx%3T*@b0-Q|r2D;A4$6uNF zC_2Okr?KdS-QXlT#RI3?&`rC^dEwt_or1jGzFl+*vHDwLhcn!aeCR}b(J6~Xr|bqN zbjs56f_(WU`QU_3S&B}P{5fTRV+49LmUgbfg91bAls(Ar(K^Kwow92`IPK9o#S@)E z*-!nae&%1YF4QR-c!td!y2h5P>sN6fGn@yZCHZyl>%$GNH@@~;PX_YK z`X2Eow0Vk{^diQYVvX)I;3-#E-VvLAn)#fKKA#S*)6rdHSijgx>^l&fe~3PQsGL7u zKyK`1`u-Mj%es%q?da>#DL=!{{&7FK_vg-LzWRgLLFNaU-;B+E;19YzZ3f8tiuB`b z#-{#`{(4M7j}AiLw4+BencE9#`-*Psr;70f3wZW8F*Z8%N7GqzgAN7w=FrQT@EK@M z%uGAi+N1aII1`AQO^KVoN!)A^zca>hH$m^m1A32p2D@;LrnmOR#w`Wj4>UZt_Bqxc z@NL8&OXDL>e}?Nsoy#^$s^Nolzz3~E*;51`Ok9m$y@mOU>m0X^Dci6ui?J<}Hqw^* z71;W{8?Y~2D{N@Xv)T2?Ft$ZxI9Fs?cq^3Q9Z%{0y>SZz8J2P~5#UsQq2W(o4ct+I zk2tIhoN|$2X+KQs6`%Uu^@^-TcGoLXK31=27)j#9Q_w3P({J^&J_~O_r}CE2Z%s3{ zrzKtnr`AwjV(6&tVZ6Kv{9LVLf_OQ>`04^3m2M@*MQ+6Bxq~ZuNBga{&?#dFbeasE z9u4V)>=ld$W+$B%0q1snY05dj3vf#RH*?pd=`ZWO*kG%3?bB%u^~#QwTCaHX&?};E z(c7X|ym{!AuyWS#XSMTvscHm&WW52`lD{^ z&t41;xAN?#%Kfif$z#oiZq%JeUFhb$NL`P*wDV^%PhwMFr0#E_-`$rO-gx5Wf(2s_9PcN-2y$R@(5!L6eLiPpPIfrtE3 zc58p9pZWNx{_X9+YSL?f$)VMjtOfcO@>*F8tR2|j4e0DvU?EG=wqh@3{O1DXAT0YE z@Go!QgT3R54%aX;uvxX1Ui)`s?SG=^p+I&;56M14XF?#mx_rv7^fPx1KGz+##J0%) zDfk3smX3oh+KXRE{x;BmTXg6#-6LSK$+0h0hD`3Qk++<0DPO=QXj7*an`tV_L`sN4bj4%#igRORlmH(%CW$ zSiAWiayR&G1=jf*mU~GCu+Z7w$^aH+cO&|4f2QHS&y{s1f#I6SUoG@)okYAMbP|}* ze{rRT$-WfI3(=J`SObP8IqSi5hjKTp=R3`v_yp+8jJGAv9qqztd<@;aJ-~@I3eRzM zo?GL@8inW7={&cT-HpsCYZU(bT*p8saPkGGAF;o4h`}CFczD4)av-8R@5FCeqH#1O zKRtdr{VdS^m}eUUoeAG(-Je)iucZ$mwtSU5RD|{O=a88*u(huvOTRa~FBcO#?jRl> zjQpMrZ@+~c^uf1%p0Ty+SXJ^M-ix2&*){l@pJE>1?<+?!-tk-|hdqI~afIQ|6y5hI zdy32Yi{Bp`PHt^nf5Xc?r~-R|T^&T6I`J80j#z_T-Kce+Hx9chdO3?WMd+b%*x-T> zLVG!qHk+BZ9N@0$uYDxVulU`<4?Sg$@Vgfu&~xH!{S=LY}X?hB4d;UoqAze-@01+>iI-ckts_=j6Tf3OSLb#8S}E zU%Qt0;UVZsEJfL^eHJ~o)^ML&$i9UCX02=~_LBV#BdYn12cESnp&`7${)PY+ys#8r z=z;|=EQJ@svU?e_B>NkF!1c0Mpe?ZHu4V7+UhMZ|^z@_XgSEhH0?v4JH27CYAB%v4 z9;NI@AJotMwdhUaGW0BQ&Q%hNMg5sCf-~)}9HG2HZ|nBnHLoad@P&rt9kkBA<|cRp zKPD{u&n1-q190i!O5Q_Y_~7Jb<*}xZ&ssnnymKSA{ApqYeAX}~@FpyQ-uSGPeH-7W zA`czg#GadeT%W?Xmw3a7YTur`pVtOXi@|ByTCt9^TLng>o{*&l-*-9LzR zYOd&Q?c3km!uPJoaN8u{Gz2(pMc>VnCXcj&AS0xDDMx?&~`21$}xiPDQs6uZ3lQ?Q_IG*RoE{l{i?#Na9@zl5^3VRpmEbWCdwDTAY2=n? zIv=g`&=?5L0kJPMOc29gdp`BI5;wmgdI7t=oPM?wPos;UM=#EL6&dS`y+Ga> zx3>v-zkf4rzYF~8{;~&4+wM)sJ2u?CSL8Dvy}2)_KQ<2hExNvIpT{_FrGNID6#iwP z-20i8%nx}@4;j|*f32MRzfRuayCK|%=aq|Le#bTH4>#mKANE_*gjy+34@ z=(`wmgbWL;v740B-#r3rYyw>B0$3W(Hf$d8<3X;_-k%BVt!QCz4D%N=WM~xL5BN07T|OxGCT+w7Cj<3U5N}2LWZSm zlYh`S;V0aBH8}lJ=aJ14gYUhOJ=SPsKaSVu?GP3+JO~-?f`tqZLWaY#zZQLRD{$Mn ziZ3{e@y;do_|ab0ADFv*=5FT}V4{EfFn7=_Si61*y}~?6`A6uHmc8WHmf%Mn2ERqX zA-`6#CZgxAmiAk~XPvYMrHKIe_~ieE0DxaakVYt-v0ql)L`B=&E(>RUXANa2Xp{ zF7ckTiR);5sZF0mzVZFYz4{q@;FYUHjtXRb(yc)k%)$oFx(#TG1L z9<=Xt9(CKaT@HMw2I}E!%%a{n>g9*^##67LTfOl?JvX`v|92JmV(V;V@}7m*arj{# zxlNsqM3&iiBziaSQIKU1ehAC{=gvkCf1UXo0-t|P&a#N$6X456&^e!=E&80g&Zceb zrzPjK{d($NM|moHFByMW_CMHWxa+X-?@wjDmg~jn1%Z={;Gf-rubBX+x)3Lywdk?H zy*k9nL;h|9r=aYwg_qyMZmeCdeS+kWvPkD%FK0pw{zfNizho0@8t9fzI9DRa^1VYB z9CXU90%son^aTDk;*Yj4r#AtEyn*-zS3ZONxCS1-in&A&Ubz%K4nK!wf2|J;cpUk4 zGscUL8Ih}NZy@(I3^@4GyI!RocDV2P0h~+5Q=S4G^s>OA?B6;C-Tyw{F)U_XiK~1M zz)3SM-;w({ZHChZPV)t)_1GP98B4(F`X%7BkTSW9CEyg6{n6Ziu#|PkY2>mNu*SPa z$A+%(q2#jq?n1^^VQ-MTe(`SKRZNCHk9Pa60-UBTVr*9dXB>ZN<@eePE_X6lOEi6w z!|^p=#0JmD1~ZoA*<}N~&EE&VhcsNVZ_d^D)&23S**oF<;SBOZuj{=R&L7EFJ%H^c zujKs^zxhG@<~P5`I#My~NW=*}tza!l)`ZtyXSlze#y*fG(natNE-+>?6lCn6=M1G~1%r8U2mBu_cUq z1M)c&TQI&a@!$txtcooiyji!ASkSo&8@gc@eW0JW0CO>VbJu?SkWT{p#jbkZ*5%md zeC$CUu#i!yGvPdRR9lea0+u%c8I>F%HqF~Q75n-GevHF9^l#W>e=Rm~nvV6nP0PrQ z-Gxn@7JU1JFC6SUehwSUbMo;5Bgr{4+CJ*B76Wfb2(J~}I0|_11+ioIJ=Yq}#TntA zYpw!o_8pM>sY=xfc1fk{0lbtt>3pO9N3XJ%nz zDv-4q@CNosa+<-OxHaMX9oWht#M7^a>whnjfBK|ecMH}YuVeiWe%po3+vn)@NOyz7 z8sMwwmVMY#qo1s|`8NDs!?`Ma*J%!2GtiwS`y~D{ko+_9F+uY1r{La&4Eh{$sk%1=PBXZVC)GV$Z=vsC7(mWelJrG&%ov5i-Q=9Ky!#n)P zG;5nF-cP5WajXZm^1VPVXW>{zY{U*Z!>bS)lD0%jp)A(lpborKF{^Fcl=Gouzj)W7n)S_lNOQ7mqk9)p-R?eO2j<}_&_=dV8abvM1XC9cPxtt+X%6rb6ds5dw z*9*@g3){aHD=cDsBaK+md>MPbzMuo=H*yY^nUpa! zMB$T~cD*i{vNDMy%k&v_*Ogeo7)Fsts%dxZE_teS=bXVgOGWg_Sv(&hKSFPPhKjTe zXj3SCPJMUT!IRNB#u+H^B4_h4pJ$}--!14ks?5o8WHyuUOfqAIr)P1#NCtRiao(ko;0!J~1GBEz zs{K<{sVTS$ErKzY9!x0f({j$K%xPj$V|Zp?RjjVpiv5}gi_@HaSdN}ubud{3AD28! z-J1O#xb0FlV_v^MSzNO}Uh>1IIUBZ#^?MbsXc+IM*ugn8{YB13A4nEQ55z0q zOgJ{*_Dj7(w6dBk??g;l!!&dVkPYf5K( z(be!)LS!h>+m4zgqxUCEqWj~I4&3Erj32{(G!>t`;a2Vo^d6R-oaHmnMkYqnca@$$ zKebAq#~K^5;$W<3)j`qI=@1Qra6Z(YsDcat2bv+oguPc;H92b@deP`P8Y)$9|mXXG!KZ?Wa%@W>Y~M;jSU}p z`1rn>Cu0k2;k{VlDD3sBL&AfM`wYpA6(@WuCGApvQQaOL#P_SJ+u^ z{lTDK)eG?6A$a|eoL#5SW7hr>cheP-+=$uUKVP>+ZEEE4D z6aOOvnavV=BC;65f7g603jZD9rR`s{{%~7w)hs*#?z5YOH)>NqlB+W-b)RQ_Bg)(! zUi1y&$x~xEBu`KkQ#re8ctnix_dc_tWMRc9VSy>LYL~NPZu~^ZHL-FZ? zuXTH@guaKZI@GiPyi=AF8@>v>;3aSh1nIC8qo|J7JIOVb(v(Gw={OYpKs^I^%TYp7}`6`D`q* z3V86-J&#?GSZWp2nbAWcN5{RpPu{IKqoJ`-Ey<_i=82rT$&dDnuq4quNJnNnN1FSyO)j=RrjSoYPZ}!Wlan z8#eMVGzRC<2OYaR&ZE)mH3t)KJchnHMHX6T%vxDnJZiEH_FNlA6v|rPl>Kd2GM&Rq#U|SCeKYJduwY*Wb<*r|H#N&$L=vw?+A%;tX3trXrV<-Bn5y_@e8 zU+4JerFUqZDD7*|9VztH!z=JZL{{N1WFFm&k6p?;yA#$7-CtiT8kfFGkL^p{ru#bX zdDSh6p78H6eTgoX@iH&RozcwLqcRtoPL}oi7_`&;AbJ4VN2c1b3(!aAUgo_9|0sGm zJe&8MNpzZ7UUMicpDsG*Bk3tVK&Yz{jPJy>R1;53%c=yiL(gP!))873KGsD?@s}h% zFzaj3$0yROHJ$#+%}4Q*p1-PVMSp6Xie!HK9y`BZ4RAX4dFfX)&5yz9Uq^HG`J-vB zvi~_WZ~oGWXme#IBWd6 z#sAC$diivT&B)QB|BK4I(W9z6J^D*7BUV^!gs^Un4Ot-l=o|*)KkD4~fCg0|4Vs@| z-21URHvW>0zhvVtafaTx8L^@=&LqDg1Aj^4u*~?d)5&|yzR;PIfzQOBoKN3_zuE%$ zV&jF0wV6>b8y%0`)OM{<=Sm8Rn>ZU$c=03rzb|Y5Z=#<2q80nYaoh&K?vD+-{s6xB zfmqM^`|ElZ9YFW*7eB125#CE#{lw=E>ZfjxjaY@BRS4bSrxNjD;Ey5Ppu*5x4Cz+JbI9rCo?g(*f6^2&D&P3<=evxA<>n@$Yz# z?>Rf2O#Zlnne+vzJ>-pZDEFOJOXcypL z^^)`z#7(IR(M^)8G8@W?1#9+8>@DwjUZG=;qQ;6NywiMWd(?V47O}uB+FR%(IfL+= z(?0mfQ4?QO=0ISA-+u7g4^H^Ka@Bf@tN4x3b~w+^ic+p2hk&nxFM@AD-ROQjcjN|w zxU}N7*pT(a&5XHZdsXotP44k$4-4;Y|Db;B)OQE}MatW6 ze)`XxQT*qy-@Af-8E0W(&(J1uPUflbH+dk@UouA} z%)4A;d^g!W@2O156&+RosQ03`k9n{0waaHSC!ERsWM>}eCMk#ZZq46=(fxhCBe`&M z0sVB@Qgk7Fb2@pD&NGz_eGYN5yzv6zt;83JlWWNv%Kd%y1;S6n>A8+gTr)e}S7bFY zzdld+0)FeOan4Hp*t7o(-5FC?eoxI2TjFJrBedS_kot+5Rq*>rzP~P}ZdVL7OXt;T zFLKbWeJXKJ)K2_YG&tiKdnx?vWb=nj3T6H&cq_*t=GA$)+Ro?AoSBM#t6D)k%s7^g zG|h5}36zP=*SVk0bD9GlG&8F}x`gW*em(rHp zm4PikYR#Z~jxpfhiSwG!>rQQI zq5e&Sz^1(7WJ7D{rSS@E(&fkUQ`5LN6U1+vx7MhdCjPF?OSQJ?GnI>y}s6b;EYC9@6d{fge38H?7<3IFg$_28M3e*|&xvb0hOK zx+9$HZ^-Xzv~ni#TNKoD7LtpvY`|XH)IHKJW=Xqn+zZLcSF-kR+vMb>4dd?CraO!n zI<2d34WktQC`Imj4*DreN$xvw-2!aOrE)KJs$HKU9>mvw@@tl$*OovlO`GHR65i5l zS;Eg9kT9!wMG%l*FBC~^vCD%WEnI$ zss8-e%3|}UK0cmi{Mfk@|1DXP`WQT!JcYJh{wID^*KgdRZ=&+sb)Li-XYEc#{7s6+faGpR_8%+F%$5T0^y7%xGB_ z)cYW;S9(zAnw#;D@VC%+==R?DFQxoWo9HT4LhRRHd?e`$e`PQ2vE}$H!TTS?3P*Ot zh7@(gibi$>bW$Rd9d>Ol(bMm9@p8e%cdNg~rHNk!ki*ZVwjPx?8BV!He@n)0Yp8_|r zD;X`zHE!bb1@wA7xGGMCt;#mbiC?qB^$a^*67&Zw9ha1D(tX%LANU3#Evs@vSm$8h zZJ9$aBc)>mUEfNrV6O`_j*z9?_;ze5OB*tQ&L@-C0Ez9)t%#sz3{S9y>Rx6}_ zO8nGFh(q&gWZuO8JL-4+;4z&uc4Q8j%OJ*S{>4Yhm(ZO&Ks$3z9-wm$bsnHSjFEbi zCyx-nwkHOT%5c!{v8okeUOLqvc`1DP40&&!F}gigHPT4zl-w^ib6{gMdB&yWY52{( zde#z{)8p0>coy;!yw}Y9mO`6O{%Yp8hf0Z+Mz;&U=p5L?tmA%!9X?J*vE_Qs?b_cv zxy4HM;hH6^6$tHXTmB&5GAFSu0ew&8V_dxGSeSoT-=ed14sB*S^3l3`-QPY6mgKv{ zcTN^z`|8&R>q_-ed^&!gM9W|ETMqG2;_elCuZLa>Wj@FScG<;bQJKVw`uAGV3ABa2 z(7dzX&iA3e!4ASB_OE;Ytb1tPkm%hQG3!Sg$@&`hl}H`}+8x2?wSNpBg@0W2QTS{F zpDx=VzF8nk?@fWudarY?c(3QN`&a~j@ez^@knVmF8S}{ z+Mq*%HrAdaZJK`yu1Dq3$=`Bj?YWY}4fm{6LBA>^%)5U@;(1wnhOhXYmD5>clU#QY zH-tR@E8=$cib(#2{I=xE8u$&)A!%hkT7IGYo}9xuO5S;S!Jfs*ZR9NWAQKtU*u&`y zW6N7Flyx}rjO6TF$wyc`U(v~fUHNg=MldzkkbO;A&FaK51(PgmIrHx zarwR9Qhx83y4~t8)_5KFylNpjH0M~nWIv1KmC%LYH5&M=&5X)r-r4Ioy;1C-eUkD2 z_$1@MkMU<7+mDQ2#=8B%$KDO~jFw}wf&Ccu?8his&)U$6L!QXM@|Rc_V!uj+*yKcO zs}???)-TP=ozxuB`^WhW=ur zznd(sVZC{DnDZ?Cw9a{IS~qw8UTpu5#ar0ofVWuNFDA|t-nzNbhPRHVZIxc%{}1*F z>HQ%`t?}!3>bv?~)WWBR52DbOy0Jp`mvq9uk=zx&8hK0lN{N1V63XuB39m&Pdz1U` zriT zdnWou@0FSv%@n<5HjGxumKx1_vOXaDmgMU0W#7`?R?+h(p;PG%$MK-Z+r8tE%r2-s1P9gPi*ZAB(sC z5xu2pqbg5Kv#P89X?iP||I0tN-U{k}@i@H|;QNJtn%)ZFRh(q}qyL}it#?JfOE3S| z>8<7wNAp(m+edh-Q*Sjt2XA%xFygm}?!~t}yy(vwzgJn$72emr19i2(5a`izzEueI zXkp-+qC1I~x!3y!i0dh%M-PWYfS!%g)Ack#QCV}iAb4YzV%pw}kSkJ$VUWR+f<*m2op;{7QfXKf;g z4_l0r=8S{2utMhcC_Iwrlat1GNu9rS;ES$Y;p8fO@ow?Vv2h6c^`rOpYdcXfx!Wy0<^T=kmXYPxo~N)J$MTWHFzikJjQA!x4`CgXhj?FqxAN`d+D%{n9ex9Ky_SOoO|NqQH!TPC zlj5w`-K6DU&)DyJsZnpANDkP~DSLdn;_GAiQT72RzG!C#dx0w?|3Lg$E4~tYpYYA_ zbtD%r>#m;U(gJ$DCccaKEyQq9@fietJjM{I20t0W*Mue4Q|!k=Rh+3#{#fvi7nE;1FZ&(xc=y*dKJd#5AUS z+nTs(wU#~cdz^l`DlwxZgSb>B_7`V(vTbX)Hdl}3BcuZA)`iI6eNBn6SQ}Kb19#iw= zqsP=di7_3eXJs7S^=SUZvc7Wh>|^V7uk-hG?Z0eYLGx|ts*e?OYa5Z2{OnQVb@*)y zZAfBJ3mN3ebuPO3ueALL`6Y%pKDQgyc`@xbH~;eFx!tra zeEYx7?FRIy>!QaI*YKeLE(T}xO9O%+}yXb~q40K}E zT=+an4kwx{D&u=4gB<%B$sJn4^YRUY9*=yFk=8k>>5?lA$KK=kv7?{5ja}-o&Xa>q z3-0Ed(W{3~ z`W+hZg8g-(e`^lM8~FCjt{fA5@5Z-hc4a}=cX7JU(ez(+q~E1lhn-OWi+&63-EnJ- zh5jfzP2MVsVySs3CEuY=*Eg8-l_lRKIr80QhJp??9iH{D_%so(c829-?Cp@>cy`96 zjk;cK?cS_>>SX8~sW)Sf+TOnUkXLJ)>~$gLQ<-jRPbqt71N`muX_8a%Y?0T@5Rc}& zm|Ojg8F=XL$}~-C(*vb_ur^oP_z&P{{_}CHn*R53RI&zeG#$mqI*yL&2pz|j^Ihu+ zX!!2x_JD@lJ|+#TzV$Kid*mO$FQDN+55I4I4E#RM`s2xc0Q+YB9dqKf)e&bwak%bT zJ6z6)5WO>5k*^#DKU--FUOvOInytj*dKI6jpQX{2!|*@PNxW8{)3L*fYGh(zRG?MP@wv_ZfB8=JvV>GP)qG>vX+aXz}|HErxIN zTP`ic5{uZ|HlFh>GIlES68xY=Db82f!0*lNRmlw*DrT-|uQNBd$D*&b*F`^&y@JHS z=%cn=zS~SAk5xJG=^FPPjAx)T-R>>l0>q2;v+0ayfV}5j|FB*;x#fON-d>fcunS~d zGQL1hsPn|I)o-omE*>FwUy&s&Ij@K?BGm>bZPuN*LCdkT%Vk=*9x3HY4+(y z+heCj+hxAw+y)Idl~(b*Uf7Pk?@FDx%|1>$uQxCvUTeMK%-Mksd{W6b{fQY*XF669 zYlFmcE#R77Cs7sB6#-*L} zRV-_BvH4LI^Z1)bY;CE+*n$-j51cUW6CWrJ4vt-(68-FmzZv9+uS3p{vN^KnK3ShK zJh62W$JQQW8%>Ebl9IDIq2C!htIUiIzk+<=H~HPuTTJ{??Tbp>j1A)3Y{j=j>$#r8 zevB_cigB!4oRb*1bA^Czq;v6s(D9mJN5gMawT%4Og3 z=aqN=SNOK1hvD@o|w}Oi5&1{Er_`6P_p>99m$3k?R(*;@LR)t2T<`leh1=* ztZ)3VgKrwhJFY(z%ihe|(QAi@2_uR7u~)gH;H$@iH4wf@_lPxV+oAEqPfqlnVKN_P z5KBtG@@~~Z@goyCGx+}f3mu8xwVVOb4Gw;y#Qn$>aOIwMd{@!cS4p|nJ+Tq%^*0pc zKtB|pk+qhdPWIi(yF0s`u|~Ep&3>1@Gm<}H@54RWw)vA9=mQUE`iz1;{6QaY&ZQxZ zK8;U_F6vH~`e%>OrLV>L1KITbTlkhf6@3z;dvoT{=iMFB_xAg;4@qt4TwDozTsmp5c}edR5MC8NJd z%(L|RoA%$~wUe&D^6inyw@0j>-@M%zI*H7H6S-8hL<5#GlU4 zj6=>P`S@e3rKfhV{@v2<-jia^$$Q>!vEEyiq2b@dxp~>Yj|j}|i>-sQzg*W@EN3E= zT3!!$K<_t477O)0_rXD4hqGY?UVRV!-9YlJa+SFCLDQT5Ls?79Bu2;g>&?5HPS^19sS=B=-ew)&^GIEEf$Upm zPENQ6%A7=)lL&KSFem&jT^YaW#{QeL*N6^?@;!u%iyYJ{)<2bLeu;fiAuh3DqSx@@ zPO;cWC3}WXhFfz!F^TQZxu?vV(+}P~&;i~1m<`A_Fr}UFCExk9!+(53PzbF>Pjjy5 zJ^Z~qP|KCaIiy}scr)zZ&GJV!dQ^u+K8$S7t z+`|V*MD|9K4cKh#zZb@|IzKCXEPOT4jwCWUTcYk+%3XYQoK5P=4Z}MkW8pgK$?FN7 zPmt4-Ju}!FWc~_d{+r1BEqV`4vIM3XitXREv+LZ3#Ow^df6VA(4owrE{a@a`1h9(g zY<;jU+5;zyyLKA_AhKB-~se5|T6vi=qa?DyY~?5!a$1U`0iP zLMyGPfM~7Kib}1Yq5;%O6%-KJ?*BY<=H#9Xf%f~q|ND<#CeJ+YdzSa?XU?2?#0(ev zUwoLi#QA+%{AM50>WE@F(*5;qP`AhA`Mp15Y!JkKrxx&eJ%I&p#yRU9TH{FPS%39U z@qv<`T!BeWcl}#!H0S%5XrZ5ea{BK%>#To21K+UyQ1|0}w@~OUoL^RMp2g-rd)C>| z_?Gz{*#LSjfBj(Y^Z&(Pe+jN#am^q;;di3F*52|tJqY&}kIO&(c)TC+43r#n;Tj(( zI_Po^^=tJ*lQjQ~pPiwfe|9syxV|pnD{%qjWOb6^Zc^Vj1$hx$v@+4%(t~1 z?^52NP26Y~s-%&t2>4B4*T+FAyTo>9x z*bZyD=W7cCNBg?#hp>%8o?+ir!+pQc3taPwComUl=4_MD4zi788R9sEYYkTW_kpMn z(OToazF1F~k9DvD-MJd|JW`gLtrc)D63P<3t&29P7uuv=W}D<>n`G{hSjjP4NAzR( zecBQGa^N4@NM}zs#thgGwd7PdP#5Ds|BXFuhzrWGY-d<+Q5M|wJy35=PLyZ0-r}qc zM`qN>L7^C>-eNi0?w_o;NH=U7jruqGoOSQ>rbU$fW@EJa9?~{D*>**qr6Jv@Crz?g zU&4NgZmbi!c`nyF_A9W#WjISS3ih8b>M_T7Uu&307^TqP4a8&ho5&jnw&SHX$*+(HYGM_#-KC)RPhI1AdIsV{Jy;d|iB zPxjAPS3g~k?=FRop(^r69LC6acWaIx{R{eNM<(`>pucHBrWP^@=C~4e z`j7if*wEZhglmiKE^OsEC!g5%wvbn$z87Kch5VZLEcU%bX{+a9U)Tl4{|NJ(XCkuw zM7ZX@!}`lCTdZUGh>V%OuEXDbJED9nKbwU4D)&CEcHn(A_jarm!sdL&Bjyv?^>`NJ z9Fl();}X302b(8)JY4HF|6cZt%ULk`Ec3&;W4rFJMIPWxHSU|mcv6q#!ADK@m3^d{ zSLetbXp&>y%Iu4=we5M5tXD|Clk*^4o9YMa1>ZAZJ>Xt3F?V$*`?016f12u52XoGI z^-6OcZvKuOKla(Tz^{PczhEuigE@}}b@k*maNxb<=}1 zy3r20(GI%N4!Y3}x-eFA)u#+{VXWq=?`^JydzpUp&pksiumjrRhNV6A95?E=8+-e4 z7LmUdp0(q3JU$8Mlm$9IV=Sik)!6a(9qJojJzF|TQyqc_I6KlP7^(HjO}ony%WjCH>Fl>KkuaIdIL*q%1U zyUnKppFM*;D>1Mu`b&;sO}qX+kKYz+vTbMg`{?7%`av80U)KrPmg9@Y2YUUI!}WD< zL9RGM0Ob&U4aYiSe4@Q3)==gzFxOBJKhfrCT`j$S&Gpa^8Roohv%Sp`dumXAT3TNb z`xY9+0SBK4Ewb$x+srQUd=dhe(8@sDatEkMS1<=U($9c zPiOukd!g(!D-$S3*4X2WJSv_G}Z`l-Xq(@kb54=7S`B! zhK9#=ieYi=VYTm@F^*`%dWi7?_6*^i0K`GY2WO#SedIp8uM*=CGVRWlY0rJe*P441 zab5`Km1tve<_Y(AJ1<>=KA6{Q*-zpcW2T2^%QcUO_9FJ1;~YFK+IcC?!Mhx5Mm=^Q zJ+70CE9Vw?wto`OR8L;;SuW0ibY8k0a`R4J=vgk->C9(kIFs|-^x%9qzF)@u@lAGU zi#7*qcbs>jOt~?JaM%BvbMNfs%zEz1aa7Yh0A&{Y50Ix=yTvndo}&{vH>AfJJpV`D zn)^27Gxzyd(w=@d_8TzoadsQ>7iYKO>=<)zD4s#1ZM5prw*RF#T=k#Fp>E6nP8@a& z{?Fr(x6vL4uDzIjk9)_}d?sv-!Oz({6T)0P)DHc+FTo-9b$YJF+#KtWnx47nlRW=I zJd^$LxXV8-5of~h#kWn8&2Ku@ugAE5UyxpB6aYPH#N1g=b6Rd9PP%{BaB3 zw@73^eu~$SS91jReG=z?xQDixed!|iwfMd``UlMMJe9oz_Z^2!A=Wj$D3_S;jUB6p zJ{qG37GUgs9Cder=USerj&IauIv561&|ri`@6d-FW5khiio z`_sVw&FHJ~H~38Vfjm5)3FrKbICzKN7`X3MN2YJH<}CD?-x>)_Ifk~Q9mZ66cFI2Z zSi5FzEXT>FT|Mq=&?n%`E?E}yR$2FlVcdv*R^H$Cq&;ucHrtwa{KwBrFgL)O_ET8X zHrKG-{#eA3a{~0WA=KZ^?(o^reaC*-+%7uWzvP)!n8Tty+JxsFZtT_Bg!ZWbb2Zkl zU&3N<%P_MY}yi=L(--u^+?qHbj@Sy!UomBS> z+AP=UdbDGi3$oDX_T&Df(;VM69N2(yd@Gy><8B|AKHD9_GZ@YTLReD|Jg~SO{KPmF zd4qRwq#vAHQNJGJV)}u8qD|wkvwrbooX0h=#`4*x8r-u7Wx8kSd=E14;|@n4ZgxD& zaHa>(XYrgc5W6;p>+g*#KjM0DoZr(I^N5|{z{P7_7_*}s%?~>-%RiOrouM~)cWCwN zyeQXi;~RL$|6P;uJ%(|5=xwa+{d_`eD4b$qf8mKRzrEKm8TWo3ss|qRVhwA7)_8a) z$~(sAX83FKGQEhyQ0`$^=QQJxh-dN$ukpmr6M_47xEj#c@tJL45ziuF9Csj&+njip z8EcBu_0STOyR-9;n9rJFo5sXvj&STBx*ucBd6=_UHpBVwhcJfzJ`}?>?TB3)S1kU{ zv=zq2elZvPkDjGqF6h8q(1E!i-`|tZRa#t!NV3*{dESY02>Ocd=u5B`81Q*q&UH8g z8RZE3oXmML`xddcSF9m%4Gqt|&Gi=40Udn|=Cy+`cf`2na?Gilo%t=wS(5gw=3I?+ zW%zYL9gMdS_kTN1!LuM|Qi}Q9(NjOP0OLZ81@H?j_g-wSYs|x#>T;xM?K`@2=ol^Z z^AL<@QBIe69ieROQNelCA)Hwk(7bIp9tpV*)FBUB2ikgF^=lVntzww&T(=Y70|2+6 z#~eSNEAe?|XbJStCU7myk7qCDGgOA{#<+Ebr#UzHU{8aP@1=;Y&yl3^-TX=etrUm?t!&9MT;DR>?ejXH|9 z1kX{|%C)gEbEwC9i#8)l`1eYkQ`+RRotQKAFw@^G?JGSVb1sGFF4BJT*`Qe8!CckM zA2;?=3;RaGM0~9eROl(?irLRxwdGYl|A2F!;Yk7 zzL^%3B|I;*bCEU0kf;ad`V;C7%e*e*@Sl`_jK@6nLr`~nqCC2ghDSYZd9HnZk9TxG z%6g!U*U^xjr-zU>KG!kJz9-r$A1v#2alFqps6gjv2hVS;$GPq}>quFnd!>24%tyV) zxqxOE9=2nUg$~1C-D)|`$U_-V-h?u~3Flvnrllxfb&m*noa>jeup$+?$ECCb@ot^2Rk$ z%!U3McqvLk0H|L)fXK!y?2EUuuQlQIs)v$-0>(?%hkI+uSFU&iV z%ysHKj-9aAnQPYb#5_dfI!@jR_;a2)&-NDPJo6%R9&=8+WAT49);GhdJA$y9){+rt zFVcng=(po+$~{<5ITnw)aRTe;D3>S?9bfUVO#9sj?&H{8{JrBoqyzQMz&sGocF@OQ z4IOLpF4QSyE{^^L_kKz0F7M&nCa8aykNtu$&9mQyfAjCBUHq7nqbx>?d+sG7jLN1k z8tdHXzlP#Dlb3U8^ii9D-v+-BWB#FN{}C6?>CqM>VSN_)hB&qqr+K13d&V5I?q!_J zc%uGWXKTiZx{r8T^F}M(4~lpqAFX|_A*_jV&p-TNo}Udh?I+b(?waQ*Y$MKsMV|K9 z!!SkOM%FG^E|9mF%bNFKub%kZw7>h;|2~hsa!>7t2)kLC=X@@Nv25u0&TzwA>=XWK zO#94*WAZ}dF2lYQU)u)9SnN^BK|W(0|AC!aJ>Gc;t@EA^y^S#o#+sS<)TXM0n=Vc{o`e--=Fbltz8T>|D67{45g&z!#w z^RztVbDp!oaTC5><{9L#&c!#n@I3p&dVEK$0pARL3*Q)X;#-6F;GR>@oWB}-m7Lg* z;*0e!bYNVBXL>#@*1rg2iT&+$JY$aywMo`OPEBh(c>HAOgyX6PAHM(Q^lHvjtig^r z8xDPb55DnLt~vW$Exze>&-)tv_m2pN{kPwPZv@xl+pYNCVfpuZCOH2GXT$yp_iCZf z@qE4f3w*EkEqt%@eSCB9bKQ)er5C!LI-d(2C*q8_H@5fxg7t87j|AUWY;d1zACA#! zAGN(=TSWW%XYPvkCnlTU!}f3S#Af=mK@G<}dgyqz7Fy8*{Tar9-l19u^NP@3e2;P5 z6nxv+r)SRG1=}Ehy(hHBCq1V#k7M5Y$wKTm+>H6b4$Y6fpNvZg-y7l{N_*HSGtJsE z&MW*k6(CLtI5)G>5h(dNnpeNKB)qx9=D&s(K3toVjQIL|zuKILxG&l=G~~$hm*17`HfO+!k&gn(6)7;lByr^7H0- z8t^yDbe_LmJ3J49oabP8Gv@T6g12fu`V$Xm(p zw&t<#;oP5dLhF6!704%ZeI5DZw2u+lpK%`S$2tYuYc)^Bvqfj4y)AI|fc%)_gBtLB z3Fk58`G+7KV~?NzeO%Nl?92T89DgpoP`LGM|Bff6;+sk-_@+`%d{Zg8TNKW+jY6EG zIi{_DW{2)S4%=5;oC))UWmw708h z^9$`|cbV@4D0|t@qyOLEYkue%ai*^FK7ko$jAI_&ZN9^CC)QCD&V2^$4mHg?xSpMe z_2Fl>>!Dh=j(vCze=Y2gNIMKO?O^Spi^6<2s=oW6DCgz)Ce`I{_+Z~?k;iXsH)a1v zHbGeD>i_p`^3^jgv5uv@V-c}OsTeC_TyDJ4VtQDB?Cj$G9dFp-c1i$a_sgO5K3yetA z>wS1W>^1PMEBx&}5HI`M(85pR8+^yK`bAh1y(O_V#*jE0|LBR$UW~yOy}dl-9f>q! zZhpzplU%>Tn9R$36LOnQU>(-tT_*$kc6b8cf8+|B-HG$uF%IMSW(RD`Gq=sTO@7n( z2IG!jIJQx3iLnjFNn&hcjX_o*9E_>V{@Weczr!4JC*j*!@c)$Ef74Hlft&oqIN0=) z-(x^t2|wrmR``iLvEC1a4BnB$_|P0b@_SSm*NAdZAlBgIIH&GweB%szg|q`$~xYyIQxn9jBUr$W}7=- zhLg82(}%vwdyH$kgECRhOn>k5YV|&}&G3V5f8#D+xM9I38rKdn57q*|#ycNPam`y2 zIR2`G<0$5PgLh9>(#`%meGR z%plH<#@>cT*DJ>nj_$|4hs@wHgt<-QyCIZeJYZLRUjS`UInp{7eqd~mH97PX7&G); zg|S;-j3GYaIuXvG=Uf|OXj^$Q=g>|0?f#MT9aWNj_3vZ7<^6Vu_oZ5c zZ-*XOUhW8dvpzOZ)B$7Awb-*Br`3<3F8b=Yv*E^-_b`8afl1g~Ip2qUwL4A+Vtt;5 z`Ch#tThp1({*N8HA2!0dZFr8cP!GI|EB0;UTe5k9u^!e%SKxtHUH(rN4sz~dIYItS z|JfT_u>kueJ-R8EkAAM89ljllF#a@A(6s@j^c@*6%Yqx1hgo^8xGuneX0_=|Ooufc4J>?vEJv#ydVfnsXd`L_A~v z%z7H~jMN&7aL;oF_j=qe?isf?PWt%Aoc89uj^@3wn5TFXu50|~!NY#f$CrgXhq0gJ z+0AQ-J>`wjA0NsYOPxteg-#K}KeXBX zLm2yjQ1{L--d!88_XXwnpV$k=?|wDQi~1obt8ZfrwDO>X&yLJ-CCX)ETMz0A_CVP3 zg7?@LWzIjCcMfOwThSGHarFr;+R#?wmxo^weg=M9@Y{pmZ2S)6Hw=Yh5x!CC!q|&H z&4+vC(~HYWOUBep$}K1lRFssKPi`i2C?YesqN1!tnUsjk)l-VAq>SbD=;F!p4uVv} z9}m6!V0Eyn6j8V{IH-Kqh>DsUYbz@&s%nBIH{#at(rKkNHwJ%I8!Qh5udA)DDJ-5I z93Cv6Tr=frpo(eD{ELNuW-G;yWj6vF} z`%EjYsj03hp4KNdP+T>+qEA(Da%pu<)vP|%Re?STCO9)SP*q$LtWGVh=$$<&J*Oli zW8%c(^uB3n>67|YSElzaE1lRoBQ-5GO{i3)R#k8M%FxCm{$ueo@cVxj)}2$QPg4S` zo>d(vE-S0C#!K(7&GQ%`#e*#S|uGZ0n|e&cU7G(7S&+pLwh8Cu$SLtD1Q(4bmX%z9K)VpfdG;_}h} zD(+-hba2JYfhDub4KylO4y-LNFP;`GVg4i0Ln>;^OGcOC#`U!|Ob?xrJaHDPpphRe zE-9-BOs$!M@>^nDc9|i3MIkA!G5SYi8?07&(9nFi&crni*9Evba9xBe{VT7i3HCRt zYRioor8QHGqETaR96e$1psTMPJ!;U^1y`gOA!DYOR#lWwLv1mp7o+`SHL0mEN=mCM z%Zg_i#m2;9#G$G<5JZ3*;O_|d+ZNZ(xGq6p7vrkhB@g!K3_CGiY}?mV8QMT#I>xE+ z0Yi(9BxMq6sYqG>{>5c8if2_%D4vLBH~I1u!~BC*WLl+t^1n8;bl_;qFil>~n1aU7 zsI0081W~?F_Dm*K^+o!z2!3S356g={acwosT3%7!yS97=%4y5mn)V*_dP8qgaSa+8 z*tG_kCmS5m_|kZ#<)t;HXh%g1QiOm3J=ZsehS#&3@~1_As%9|T4gP~jO{%CeW>mqy z^2yQKaOn4e{-6NUXx7I-aXE6?C^qjPyGD!RGQ0wfrEz0TMO87XAG)C0pixp=#e~7b zV$*w(5gu6_>H0_y%!dTjqgLJL1~BZ2hOLu{{)# zXKXJ=d~0Y}_R~(|$M$`BZKUoEoNj3Qs!=y_Prbhv_m85yb;o_t+@RSqDkd2dS<|Zf z8#Pmc2D)3eV3y&kf`Qtq>eA`KG8Fc}uWC!Hg2uGkn&8aq5r^2BM$;H&!wf^K1ZElH zuk3C^n}%F~eYF(am+iu?S%zlj3}mP;>p>Ru#ZbZQpqlyZg1wQ^?4MB^1V8Sdh87P$ zlJPU(r}SS<<1X090Dn$qp|k8$J*zy>$4p9}@`?!}`>M?*Ui%IFPJvom{Mg1{T~S^h zGz-G0;3U=s^+t8Drm&*AW=y0X9TBXVQBgHjxf78e#L62iLF;DS6HWZEatuK%z5I$9 z<%6p#rUuJLmR1G_m9c%BRWK7nk?NZ&YRgInv*^QvLHWpx0E+OeVbzhpn{Gm)U|MC( ztWi+EzPxPK5LADpyCyg-^4IW+ipm>NS7p#-3X982%7WIIa9DX|ZH@JJK5F$%sA|Dm zf>jk()fs}37XrF57@W$cG2-(LwG}nR1y;As+oLNghOx#=~4KFR9T5UywUa^lDR5iJlt@3b~gV~lm};4!c4)Ef{ID#N3NeFMi$qjtXGXG51<{ITv3G~Y)Ol)O{D)8?N@(e zY7jM{+NiCDj?wK3XzlRpfnNrG*MlE`>k#}#;&&T@tcp|GW?#vZ#{m`<7aOHt#)== zMG5L^q)(X~EDv&Qj`3_MW+7{Qkzo(wgc@bkG<@PC-wGk}&Oi!yK=S#I*}- zu>~D*D_o})mzHao0R*N-y7m6i<>n~CoL`g#YcLM0Hj2>-R$yQXzf#UWe&DnOBQ4Rs&?+jKR?cXuYt4=g zAyoxY8!(!zF}qicd43RM9&7xE&KL&j!*;1p6^x+#BP|@Ls0y0Hvp}${tWO0da%>Hk z!Jn%Tc6T)DgK=%KmRQy{JHN;{4Dlj_C8?z;Yc4KhUf;SKOpkr;45Z-oJEtG~qGGCVUJGb`9hi9TuI5ktEOvb6{^1J^(?%5-VXETaNNYf@Ro z4BVRnnbx?T>rYkjj0w|&^lBbtIzxtju^o`IO}Rg5T1}tw+Gz}RBV;*$EX9xQOxjG$ zywcM$(lXPs()y-lr{$#Oru9otOHWVFNY6~qO7EMVot~4Po8B)YEh9Z6BO@~-E2D2l zc1BJ{ZbrY%w9NF(jLgi;tjxZd*_k<+xtaa4(z4RCGO{wWvaJ$ozwET^^z4l6%!P$4nk#BA3Dn(wG#_H7sA%K9cN&-In8!1l^x6meb0syyeI z2kkzWFZx*52_+bOA$O5>n}3zori0Nn)+p-w zL&~aNJ=2VoinaSv9P5jEUwo=4RXb~BKN&8{KBIq`tw(pu>E7zgoaf?-`}IkDs$W{? z;=-RUerkALR`JNgcRY2&^%dPlJ+bwvQQ8N^HwORu)Q#Gw-9~Hsz8v$ySH(9S+TZQw z-QPTQv!Q)|^I`qoTeM2etKsYo-GTq~!kDyn33||r7grs4|3bgG)2%W6qoVXgoXVy< zb$2i4Kwr;9-N=E0%ZF`G-e^Y`y+74mK8Qp+I_eHbKi%bUIULv(ak0ax#}KWBSS{Ay5Z#XGcH8PlnP(FVwMN%c<)= z{RZ9PjrC2`9Z@mfVUAAlPuFwebcE=R(Yr_Kldy9Uk#bz*a5)oPt?;KukJn*)XBWrC z_%F|)dwseiCQ9!O|7snV=+m7pN0jby{sTrpY`yf+;qyd0^t7(&t~6k`o*WhHFpx;y znF|t%&i+1!W2IAXrF$8m)3Gy8)8Fc*Iq%nt49!#O(D3xzaEx?lNRvyy$l=x>c64mh zO7G#jC??gJhO{{xm+4o-@(xEV(uF+|@YR8HFLk}A!>4~wv+0_yB_t$ZDM9~A{|%Op zkxEyx)1^NH|24-*=a86m*IjycJU*-9h<2vKPp^K3v%6dOU8%=9vZA704t;`?ri4-S zCv>N;ooQKJZ?DIBo$j}MOiTw_6?sKD-SHjb=E1d-V~me??w~!u2A#-Mw-%*4jv?n! zBJ^bl&!rpD$sRMOJPv0n46b=$5Pej8L3Brt4)7F2B`;b`#|JZh2aYeT)FsTeo!Fp1& zb+u>%4c(-g{zkO8-yh=)t9{!HUG|0V(#xB&)MR6&)NSC?YF_i{GtMOq#7Y1<{Z_Q16WV{{*`F9CaSmHtz+*{Xq1 zZ_?ifdA6%k{+xWpqDmjDA4@nX`YF7sZqB#Qk(G^lC01t4d7?EIg5ISFgMC{zegiFx zA+^>EKPZxe!g11hN{_v4z?CDefAGmCe|y)G z(2A#D{=-)9$~z+9qb_jJ@gJ-@WkSAN%fWvvBbPPr6#gwQh5HdRG5} zA;Yd2aeYZ}{HvQgb@uwAW7>Ae?$>|)vwQy@m9y-j_1@?KS57K@@Yk&?CcOUr54TJ_ zdOCdL=tmz*?Q>c3m?u^}wR+9E_0Rud>vm5}Y`ZS~uPV47 z{Se-<(`6)G+9NqLw}0U^!$;mYX6(3I#@}8P2u_+>J@f8+?_2Y`7dLL({lbgo6@Lod ze#u>Kr>nPfl2h-KS~s_gGd;eut9#VN?q2SES6t7!-+8*by1SBnSurE7o|6;RKH8T! zprD@<#|xyjcXxAka_f1yu4~f?I+27sK>x%V`9F~*WD$|?li=NYC z)U~~QJ==He(YbAhs1XPtztu(FXiuT>+0uioyQ{a@Co0%k9$Tv{q>y8c)g1!&gGl4bg^ryyOlG_oAB$Rp;0vh>yAfP z`zqTFxwCC-+t{0;E~;BNXQ*@j;P`g)Mt1dh>OSh_zOtKM+1uIC<(QM#wRL~DK4*8& zxd-chzI?a~&3t|9{NY#By*bdMyT-UXWjW@=rMOCB$41w^klUqIiYv(b+6UAahHvhR`+b4JH@L0qzZaS)C2*8Ta?XuRUW_v!I9TCd0FjcOg; zIp(6+j;#{nV&h#2&NglQQSJ2(u0;JJXGd=*y|bfhd&Akw**hjxPjjU^GW2zhXC1$D zJ?A^=IORU$IO_~YJwJ2SlKY=dyJ_5#rOP`1S6uwH!%v+~?Q_-m+a`Q9@BRlK`t`Ff z{o%D8JKuTt^Zf_Hn#(NEIsFG*G3=V#<~;y%(;r^j`R@B4>_4D2754!w@3)r(=RNe; z6YsqLL95o6_a9I&?511C-#(!vc>hDsLS@H0U+h0{xK-~y|6tgN>u2CS&fPU?PABI@KHb&FmF4m}b+5msb#G_4_-^raOI>pxz9^>MqUG*B=+PZ< ziBWZbx}+wy?&FSg65MrP#QgZAGbd`!__lRhe06_zM<)(&MtgF7LwvEGnwX27x43SO zs;f`z9Nj)@xU23y&vR>HJGj!Ha?Sa)hd0*ku3MWh=a^SFdV0X#@2dNgvy(HvmAO{I zCRo37l%~(t^-i%4^IjtEEo~JJvrnPp95e;LL$`#(2CiCuTteX-eUT$S))XN>9KQ?k zWfq^0t6kr~t)=)S+!_uq!&Ms}XN;!*i=DrA;e{xMV&L{h{ANRD3OnBXb7i{Y_8$DU zjSq(($CWbUBK|D*Sn)MLoyITgws3g3%amKD+X76+Z3E$qFAj&d;MoxTDk@U_`i*ym zPw{U!WWNc7!y`r9@@(E|2E3>Q*ESdqn-9qH<64wi4w;fk=a-?aw?JmoAO&3OZSBGPM=A`bW)`UxXtx~=rmHUlA337I`k zQ>IQok8v2@6v!q{3y16QH~h=9$9ECi*KoHG5l}9Z-73_ z2h*d5&wDEQ$mKpk!2D!=#94}!+!p*GzX|-B^Y8|E=Eqj>>xKR~^@!;`0hzq23)c~bWw;O??6J^_;l@@&gn(oX|_0(_mt+uN0q;K$9h+7;9@J6{QY7x+S< z->ls-aBms-!{FH$Ap927xQSuR3WwQ8wG_ua;75W#Uzt2=>2I*YP}>3n_u6_jZ9nwc z_QU@)dmW`rE@bxIdH%ktJ7mT~X82v<@OUdvTk3}>hof<|y1W0q+y=;Py7$6zECYKW z_syK9JW5m3NB$`I!nxM4 z-d9p)3Sr;hCa-jI`GehBFQ_CHGl&FKXUz(2tqmXM@kO>X_YT^y6{JEM3xa zddYA7H~eQ7f4*{f8vGjg&pK$gC;jh?1(x;T=aF}eY?cV}1Hs2GZMiKYKOTG*`1AQc z8+E+S4~JKsNB=YM+b+PLrv3vh+t+}fonr-`jIjdZ zcTQPg9P=QP|4_^ID+PQJ`0?P&L>oAAiX2CV+{-;2KR+C`GTItbra^ugn+)m@a-0)ULKN4exX+VA{Du4WVS-aXVsgQ(#m|<3%SQ1M_+-zVUuR@r=3rL-wQs`W%8B(&d&5R1q+#5S6O30 zo1e7raPYgqZ?ocdp6P%&mz)XNlBZj?FT+|1z7o7S?zDwPehc_{;9F|98JE4_H-YCo z2I)WVyp4Xju<>Hmn)8n*x`ST{z6`SP>zuhuKKT6?&@Tc1*#-3Hflq$s{Nb+wZ-75v z_}jskfoHnydCm0g2VVo;nsYWQ3ugKgFeY2uay!7X(%s^hTXp!~l@*rLanMPAHXPoB zzY(Vv>m=()9ppAa&Ke^XU8sFvTsJ~~-*Z-*S=M}f$@K3AU$P+_-YUxAdGp}kjz zeLfuCkG~nmmijRR59l|&&~p36_~e0q54<7#ILEd{7C%t%&BnXbuLJ)L^a}-_rgQ;j zJy``l;l=ak{WkF9!CPacO1u6(@M|_=ULpKHr|g;!R$f9q6M1`1{0%&KY1@Fgja8@Z z{^x;zeAD^o?M2`>fVa|jj{kMw_nb%HK%7^B-w%Gch~Fyv8Vzl@9Wt?-!{J5eN#lO- zHQ>)TUvOd5RT=mq(dV3F!|vcW{2?696E-*}4f){Tdkx{Ahc5x2^+&6(XkiXL4}1-H z)*E~MGe$h1)v7EkWOQu?{)h!{;7a~=3*!Q(YuoW}3V4P^J{AEG3#V(Xf%!g+3-czO-G6d|%)^Mg9ul+2Bz{O!>*cMG9X5yh`C8p}fLB1$+uTizmZ- z518+B38!m&fX96q@&7Dv8L*6hGS&+CzL#*i#`TZA;Q1_*{@nu1cfo|yaki5Ux1fFUZ$rz=JIP4{p*1f8YBMQ z3EZ|-M86I=O~E(}c_#iOr zqr``RSsx|-5t#K+;uFBE-x8k%o~K}!Pvno}qk)+}5+?x5cg&do11v20LBPyEiH8Dn zoFtrAyAC+wj)Wf`A@Y~~Aa>ShYk--*sAeW^0A~KySoqsfC{LFE*zTg;sQAbBc(yIP zISQ|V$8j=Ej`9TSmGbj2cojbmye+AlrQ_C~0#?(rR`HMiKWAbo@6H9c#9 zBM#|NFysGc8~!`+*4BolqHCW6tNu0Gz^4&1vbK(BTRcw74jkI!&4!?D1- z6h0C7@P1KVXpchR&lG+H@OI=M%ag9TwI_hfAkS=}{4U^qz_R`N33y6}Ncg`1=PG7eg*ddKCIxr!17%~hBv{&2p-O%1%c_ma1L!Muzb&u@+&MX`Nx47e~F(4 zmhT8s{x24m{D;6ypTvI$ragpnYhM7@*iZIhp?@RVPuV9Kwt$v>;`lz&0Nl>f6${;vv8`A-x~`J*=ZUlgA5XBABO zPFM#?kqOegS~uW`I}*N3!IaOp$zP-J^nav+DL>67U#;+zpQT{RudvBKuJDw9TEUcm z-6p?X;VJ))f+>H{CjXtnQ~t1mDc=g~D5`zh07o3kr-CV;Ws~ox@bv#m1ylZ3n|!gt zQ+~37DL>C9zgXcZ|Db{?zriN|lEPE|RRvT2Z@_z$`tylR|1(9N`d=!T`e$tNj`)bR zDDPD;<$D109bmJ+MvHong@u-`)dTarV6%S*f6&5`{|@*l+8;I>Y`@x}A>Igi$#(*- zI}mA~3xE$PxB|H3mWX^UF#QwGq1^=>R`48P`X~8?!1BFfhX0a72? zVUxdG;VECQV9Kut-mj$Rd7J*riahl$DyG!w$p$ZQLSDsF7#|y7S!$Tl zQeMU7kXLaHuGhS4Vd*&IGjra%%D6-xrDShCqnxL21PzJhQ$7R{_(1iEk|x_DX|1?Y$b9_AxA6IaS23tMpF^pY|UP z{EkvzMggyB!Y=J*U^V_liay6flT93n|DoH3f4Ui-Tg#gu{4?7-hf6D0^cg-rjirM{1dR6 z-jl!)cOWqrJKVtMTip@XU`iTl}&WUe-6&extyvnBnk@6X7r(1+QY>-&bu2+RU}) zcs%6oJkLuJj=7BXR>8%PSMg-vWv~aDMfi?E8XV7I5l+`00Ai7Xe4yk??a(+JdP1J z?JMzLftmitExw>qq%X_DWlDTx`BKxj2)v4+rtz#A;V>TnuVUV>RQO+mS26hw3jZ*8 z6_e+=IKqkiQSlRukBv`J@M`cXrawHFM>yf1il1ftZ2U3>zX)E%^k;*@6Z8BX;e`Jx zeg*m}rX0@z5>Cjg_%+C@m~yT=4Iz#i^#*tqlc<{=;qCZs$lH0IO(dKMU&Vicyox^r z_WjGy)OBPSo*gZm}k>qS<2)$Sy=La06wbl2P`c4 z?|^xx4VDp1{q`705KF!@FweV@;SaU2$@G^eyTUhcR0rSiuXD{|XCB{s~~7Z`1)d82?=smi!06Jo`w-|D=T_uP15dxk!>vv9RPbfq7<~S zF9YT|QquoX7MA?Yz&x`{;v!(}UlBYRnC-uC4y_!R?Z3pez$q5eG_N+B`b`e&wI)U( zHJwvCIbQTfhk!YLd8JsiuRdUomrnq*ebp^IV4`SG<@kCNFvk-EE&XvN_yh5g`i}v# zzg}kXKTj6zd7|at?=k-2cqZB6^OZH^~E-p+5Z z$*VXBc@@*Yf%h7`zzP3VJQeaPrqnz|{#W2tJOlWR?<4)$)4+cN9%uT_QmJVPb%uGB z;i>p9kXP}Cz#}2Q0UESd%4OIO1e|PPdPFRou03z@5;p*+{9u(wvsMWIB>y>h`Y-W* z;DL~DiyLh3;t|kD1yk;{BHthU?xb!)9i=vp@<^|64s8f9&%={=IPe+;j{@GH;BmlP z6?{AJxPuY>5@6a_`gaE~?JIF5Fw-mXbYP}O;@QAVkHm9UZ93)F=2S^xfJ+z%0*&mi&HT z=7;pZ$K4`7Wc&0susp|*?M2i*B0qD?_&KyS$@s%^Y!9{ptM=Nd@LYd+&%_aX{Y~NJ z{8%kt--A~%gX%ojutLovOiYZvKu(`a7{{(pzQ-0gx=JG1u z4tW*73*7dwWlyWU;@)xLM0!DK1 zun=%)8NiI6#JRv~`MDA};;{e5#F6q-e7mqe-ydQ5d2E8Pm&89!74fTsC*-e1d7^zJ zegx%*`61=M0%rOpe~l8ptWRqCCV^Kmf-%of=ang*3VzuV!$icDz@3p^wlB2Dqrg08 zGap#?-^9Y{+Se8@F|Ry_Q#f7w7kFaz`MAno*Q>ca^=j@nggRnyBY5J+aYu%)@-JDu zP!Q!M;em+$X7HP2duWad(S9m?3^G&2t$~?-;T&2A;BTNWoLjpXnEnap(k=zY|CaM= zDG`8sN5YvVmhw)m@-`7(E?DOGxGBQ^5-$d3evP#F{)&Ih-?6}vTVCz92r$DdF>xfk zsR}R4N1>Abh2T{TPqdW^zZATR$*)p);zbV{yuj(^zbbwR`YNWt_+^GEC*@VV0`e-R zVA?|w`NzTIf6IBbry~IOuz$tGk@SxrFZ|mBmiAr+%=k#$u2iI7+WW3@k>10W{0oZz zwBNhHky~DEcLbQ>e{AAN_@61fw7;636W~>R26!COYcPDvp2WiG+7-P8FEOt(6@D;y z6_Yo9ZSVpo@<+u(A+O@=fU{8k6HI9_ejTsq&j7Dt`dSz=c!ATkyTKnq{cxGct*r$n z&v&t9dQ|zZEZ$Uy{x`snE8+W7F`iQJmB9NIOucQ(4WVwOPsOE>S1|?m+2l_sxB~J_ zzi`+e0GzMjyMV_lcn)xxf)@fa{ldAm`+?;-z-&*qSXlc1Ct!JgF!^sSEcqXRX%C5y z0n77*DR1-RGe5KRNO@E9_fw09I(;zzO<7@>*Ou@XkXQNr#FjMIXTAlFxFg~3 zP2A18<4>;vWq`jRAJWj#X8m{QC0MGadhxKjCKZ&2V{F8V+@Id%?5pFQN4=pVDzXLNo ziNBz}g;>5107o41&%}}Pc|_rvKa^GD8;60liv7T|5uOinjL#Lot8D3AuB3M|coozC zEebykyga9z{yl7A%CUqz0nG4(b7-r9=PCGEV1_UG7lGCEzXBX_N5Zd}IFkP3b4B_J zA;k8suwMAz8JO+W8;ZWPj~f5a!K;{IjbCZ-0;ik*s(3%-Rcs18Vwe{xuPOMS3}3+% zTy+6_81ij|I+?ydaeMk;=#a0NH5P6k?jkyaJsg_ z;w63zc>Rx($NC8HDn)(+@HPc+0_GX;QhzHj&u5o-2Qbftm-u~Po*OUmC%|hI%=?R; zFa(YAvJbo(A3J{lyedzAo1*_u@G2&svdZ8EPLxL#{{VRv9|NAZ+Gtw8q!zJoLSMxL z`<~0Et!XZ=;=zztG5t+h*IZu3g^*V<<;N-VBfzVe{1$~D4PM3MPp>z4ffMOb@hy;7 zF{LV>HF$y3wIc8;=G~dUGkAd${;7BpDqhXRm{8lHX6LZ3IA05H^{4)Qn4=?yuj(&UhpdZ99VvT zfbF|4TVNsY(BgngkRFNK0?$@(N8q}zBD?`idr0{nz_f?NDZpy`lmQ%ZN5Z)#?q=O` zYKzd`sIhQpIkU$?_~-u0DtQ{ zFYy-O6E^=hD)NosRs1dRE}Q?v(!buhf|ocGIOS+0{LmV`KN%lL;e!nApf3)CI2^I+E3!W!2EWG#GeB*{Sxm7mfy*sfAReUmV7&4 z`TY#?c@~!Z5MZWP;^D*=;&|~!;D|dCzQx4dtXocP)Dq1suOo4X<-J&um*qR_6~mIp z{1Lp0=K&8y_;UPA!SRaxi{MpEp5F)%4$sFeeSsa?Yry=5hs19HFH`W_z^fGe7vPNw z-UFOfhWRjN4(wK5f9Om^{A+Bb=!JD((Pz6;m$v4~7u8+6xtT zhP;X?xO{7Kc@Hlb8+Eel?fN4L8 z_X0CNq11?c;Ti_`Q?g*@wZv!~uus&zv zNPhf+@gKvN?eTyG!hczw?gnP~lK&^lH^Y;770MUm+Yy1VKBOq&F@3{;`7Ig)yc|!- zZ__|S+ivk9j=FhCgS^D=fLHMcz%ym|W-Y+_m?HlRcooy1O$yJ0vQ_N90_)Q@|BN>b zs=?trBJe8C27UqZX8ppy#lRaBycBpZaH6U0&^7~a1om3^E8x?>hJ|s_7QIPCrBf#>TKn!oYg{Azv!0$sp3OC3fv#{h(0n>gG>sO&aSL9PHEcpyz z+Ee0OVEHW}`X8{c3|K$Tal+d{so){`^x%3zZNOsC+0QBA!H;Uj)qW zLrL5RI7`8Ofz|X40FJmL;Xx*jq;DnqYw9OLi0#=|Xx|uro{z}%4qX=c9u@haroQk| zmWT208sY}hQvzPaBx)4C6ugSdfrle}bAAmgt^_UuHZ)OR-U2=$;|KnG;FOb*_TZvH zSnmO!Y{}!I?fHwr3!HBLtKxjftN0q=62-q-;2H(fgSH&F(B{Aa-YwwJ_T0e4l}n{R;Sx3#G6A1ttxzX+K2lejBz9dHb8 zQ2rVVOMWD<{N@+=yDTjEIl%lDn8XW#0%37_j^<80C$t1(tjdVCKKXDZujkUzESe!jiuYnE5Ml0GRnJaVhXT1y=xnrr=uO zRi`5IcL7g46Tx$UUsmu!;J=-X@b?3&^)Un-aYw?Bn7EsD%c;GN`o{8^r;GX*_mBv0 zBqUh>ZUAO@26*D-zznaqg+Bpidd6Au9e*v-v)#hC0W&>sTJpbD;=}s`t64_w?`-7h&vKCOdPStr3z2|kv9D?3eWIwvFT4x zcOgEsx|6rTErZTiO) zp87^%^YmW|9C0{r*u)Y0^-*~0-(u6BpzsX8#HL@W@YG*!(|<(assE%+f3?C>|9zYO zhYC;qy*B;-Qh4h7hBZ%rE8vJb5^iJSNcuY{JoN|L^oJ@u!yj(bzd_-tKij51N8zcz zz^1=M;i>l8Nt=FH;i=#An&$TF0~~QU-_FDl`}I?J z>X+E`OBJ5sm)rEK6`uM}+Voc|JoVSx^q*IF>hHDb|Chp3|0|pR*9uSlHrF;!e+S@* zI}+|};z;_tDLnOu+w^Zxc!odLrhlu#Q-6U?e~H3Vf0<4HHwsVvZ8rTK3QzraZTcT5 zJoQi7^ur2Ieb;bWBa;3o6AKGbKMPoGfBPvs^{+H>ME`1qr+ztbN|V98TD8Jcf2N5e z`gbcl_16QZDEiMUJoR5TaYTQ!!c+e%;1oswYlWx&ArnXRk0?C#J73pazZ-DGVSUfU z5&d2YPyMkr{aY2D;TPHTg9=Z5hNX_LmVsCCZ-CYGJ*w!_|KFN862Ac$m{Y$y{N;FS zjUvzRKCt<>N8#z;-);VVuJF{48qqvHaljFGB7M};q^JJ4Pd<`(qi!;KY0`q*{SPRbp=J~#5 zR`~OQd43y*#gu;&cx9!q7jehy;otADUf~ja5ir+>(xf~v_h-rYcf-Vq`>!Of1Lk^= zls^E>{Z^|i{h>Etex%@Mfw}*~XT|RaVD3+0o-;n(M~VF=JdcEUDlpH>++^_&1M_^w zTnq04ej`b|Kh|2qd3!fve%9X5mRkH%z*}1z+6fD<2j+R2oh|%#V4h!DV&O%jv0n40 zq0P4NYrx!p*WJQD0P}q3SeJ<3abTXOE%T@27(Aa-;xibS&u^10{aRqIM-Q~{THuY) zm;QAfi~P9A(6(MB{2vL-_2@!N{%&A-eslutGY@!8uWn#5uh(4K3SjP+8E?sd0c^Zs znD3v^o}F&OeBC+^ER;XMnkXLGs@KbA3^!=h~a0_(-I@JO`|nmzZ0c^HYIU{?EYNzf@#}@46N1 zi+@1+t@sTB=JV4v7Jn~r*6mo2v+}P2nCIigf^Q9bTz;E)-vu{{$+gO$(M&n4f4#Ev~7l zDxFwc69iv9Yg$e5L|ms-*HnqW#8sPAII1nhEP+3(m8D6JO%1$dO4(6n1WKIlZ z76;RN2PW61rfCyy8IhGSq5JUB-Mfz((tULI+KjaB#nt8|P*D|3O`SBYCN(ubII;Hs z6nExKawJP)?%^&EvlX~TDqMv&&lX07W@QR){%9N?^I^Q+MGx-*q z)p8-j&CTj&v3MoFe!RG9Wy12qaNe|anHE)B*e=P7M2GV-;lk-1-wXNuvzO1FE0lSc z-!PX}<9u31j4C;$fBXK2a+&bv#fx&8&OSEjG4BqT9`<}hbF*O!p3A)FW2VeP zddx>qX(>JC&&mu-o_`JP>?O+)$#mrG<{f~vlpf|0XEq>&E@j>@X8syXdiJbcFdxYL zBSx^Yuk$8j=TF9FIt{C@OpGb<4bv<1)#BS98}1g(#tshOH`ia|_YntJ`gL;?E|=#QZ1orRcKwCQRDKvRlMOH5y?_4l z$L0GsZ($#8&E6x?6>VO*&O~v?l)^v8UjFv$Z37#*Etu2l=Bsghu~fdo>&3^b(E9IR zJ%77=`{o@WvpjF}96_e8c?w}+UV#9^;go4&iv%IEX+zT0t+6J!(6nh$T36VO>s(DX z)yuX<^vMq3_Lqg=Ij{OYTVul1V0t@p#c|^FXRk&vKaZV9iaR+`NFn%AXy+ncuK10P zUnn*e3bZIEaEX2pBze(yx@D0(DdB)rU0&3m7QV|or)FGckv{7xUcq=}2a0s0VVs>z z+8u+Z3)0c^W6k2sv@z8E$gm1Zcf%iRHY|YYK~j&v)9n?u!eu==aJ< z(%s3W#JMTZ^2kD%ydDKF$2KOS*)%jgkC7Q2-oMEAbR|smNIN}{ezCXbm0kGM*0#=k zX3EZ0nOF2vtktpmDIRVbPeOND?*n5mcm!$}@=#`pZSthbH*{ZB77)Yp^nn;2_1|7( zzO25k?$Lx_>u(jld!f5aDwhp~-Bh%R!jf z5XfS4F?7@>tz@aldRCUT%6#lwkoTryl$(%nSB7Hzc0+?;_BmK z@lJpD5X;b&6^|s&)7qED+db+qD(tR89q-RgxV^vR0{*PO)nGMD_a!SwQNCDhE5|Zu zKd?t&%-Ym6m{!1vpaZL5llx7@cxTr8FXms}T->Rdz$BmLt)SZtvQFBTsNP9x+dQ~B zFLe;8AG`jPQOY<7Q)7%gR9Rz^CdH%>f{7*xxdL2-QS7Z-WZ^a`5@fgnQ=Ky%m}iT$ zzy^`$^@e0M-Bd9zWrNG>>guBTg;O=Q4PC`)EYDY~Uo1O#@9Jmz(p;`??{5O{Tlu0D zt3=|BbFD|B#}rjnar4b6IZaPN59$e1FyH;~^Sk%Ux6gn2;U)7ac{+CPFzK~rR+zNe zkVz-!BBTxZNr`Fy9uCGgqjoS2LZvU1xSl#rb{Hk*$(EwNA<*jV&T~W>4l{j$UKbWZNJ6)TLnu#8j(`|DoY6ls;-ry)v={4qV_LHq#Th#$Es72WH zMUJN<^>_`E2Gf4qIXnb{=sIW~Pe$imM2&3NXim={p6D;#MO+(4=A$jkD99f&XdGUR zIxUoP*H!Zi(o+-47sERjuB!Sn;G_BJ`HR=D{sPkMlLDhop43g%_^d93G_xpVFXlU* zp3FVb12u^*5qVb^lxRDX#N{RVk#%W5uj?umREa6(;HiN6z1FNpqdN`P?N27ytPCP@ zJN#-{+ZLhAs{{^hTX=8d7Yw5k^4#{@LY99h?a544-cea(v4|pqy6T>{)%9Jt5doYVU{R5XZWN!qm5CZh$?ODvJb*u3P1VZm}3usoJKp_qUFljv^)rYFwg2qBh} z+PL&1$&~N4FLa3aUQg4<`=HmzYcH>t$SaB9ZqTwE31FKyX@;S$uJBT}X+Q@`+9q+X z$x>r|wSb99hmkW)chE7*k=RXl(CL*U6PxZ3S2D7U=?=>8%29rq?x4F`j*{SX2W1Bk z*Pbp+c8E7mXy5D}dU8T0XZPqy>HNcvSY{x;v&YcG6FNP+hn}8+q|ff5$7hoH2Oe*Q zN#>t;G`yN*{*hy(X3d`_@hVCxP`vqL#1q8oGkaF?1ThTG z?h#LL9V;-s4!waWz4OP=D~M%jevf#9>$r%?Sw-4v;A(SM?&BRq&79pMNg4q9Nj}cE0bz*jpc!F55=k|yaBAiVxZxpeQy7!_7 z)!EFEcF#@ZbBP{^BM(%Uu*VrAL2ovCm%8g7Uw2_Gd^MJzeXb8MNHfl!j~RyUuj zyJ)F5`;PUx|6HjE4GI zoAvIly1QuDtYN1fNSQjr#p11O^3VuVWQzHiEp0j*d|D(0n_&}IsFiSS`k3C3xY;Ai zneOn2rg}5b#^F)DjHvPhsxRMc>9g8$OLlx9HTrm$;dR3D1YzV?6i8q-hi`_q+>vh& zw+6gw8AL27fr`p^^s~o%*e^)`ip}64sA#JlujC)l6s<_UWmSydjHEWtx(ZFQ>~dE% zxXN+#BzY1_thq&!q5MZ1UjI6t_;fctHB3mHO>Y-cnmz9R;mwLyUp9YDtUcjwl?m1s z#^b?DL!PC1V!DcpPZ%S5;HC@W@4|b4Jn=;P`YbEHPW<<5#n-sN9W%Fyq`Fz%UqL)x zzj^umb+ltIU%vV9(|fmELRBvA^5yc!SN{R(LX@G;iKY<0O;w~Zgris0BlqeJC(+m_ zf{)(HUJN?IucC+eq21*$f`C+;MiafK@%ryXFdYV=lxW07!O>$g!2DL@OmsoegEdoj~ooXTfk%0YP=6M2ZLp6tD(&Xr;7Glsx?C$EcEtmYl+Tj ztK1PTljM$!2xwPh;w5}P%3sPFbm=-HT|Q`fbANl+EZgv@y84KL ztZazRZ!6nmu1sBO)sL)4HCpcEc+y$@lxat!&d4j~j2C(S1A#djCQX`>lt4sAXc8=_ z&Dx2+V_`hfTqm~4>k+w+G>@_SgA4rhn2(&Jb-0rQdt9`=8&>J}A0Xyqt=M;kwH+pP z0t(2VAoHQ9Z5c2`cP=>%t{<;z7W&u?19oq$3k8mA|bmAd`^eWzdT& zmT!b%-G<15$Cw$uN5j^b2e1ns4!bGH9BEA-i3b=?Q;C2C-N0h?n+RY_1XjurBTaXB z=n?R}ST``yOoAKSr*L<^YH#gsHU)oEHd+LNLazhVhdiMrsZG$X0%LHnB%c&;Ow+|+ z4-sfd6EJ<6fLY4Hym(|TBg?#XY(EPXSy(4E$AbPIXu{R#u09;Ph0A7#{OafBFq zU9}`=+y&C0E{%<@lIxq$U3_7d29tl+q$SZ?p17MnXhS!l-(!^pdiR7fyk5vwyb@&t z^>k!%hJY(#EE?MqGt=6nv<;E8B=c06&0QAOVa$^)b*!xrRb4XPx*kC%At=I)kx?Ml z==qiRihMhG!S~SKBiNy67k6aTP3kJmNCQhS6y5#Zv;KPPjed#Sz=iNdu&yt zT3f0nhnIWB-CK*BTf@6Jd>|NY@8Ct()+lgg6}pUT5(ghoc6x9<2MFkZ^IL<*5BO5Rth-K{P!yFhHTt9J>NxZ$bWIPfq-)0_&|~Ce=cte4c$(coY1odS1(xEYnhPR2 zk8x+s?x6G~dcG)R&u9;|o+DQz@|!gtH(8b1rl_p70R^CFLgFgn(N$##(o&E8;Nr%` z$Z$@TvN2d-?*#Nq6_~}1a%4JsSruK77Qgha=t$op1Jn5mD*~HGG{7f{K+(Fq$;e$p zX(4j1ZM`){2wQ^*50Hl~E?c=HkzDJ_AYSx}ZsbkE6rGbhNOfdUxd4v^DQIQrfV+H)|NIH4y!yqjPQjS*%8O`TKMQCGXi4I8{n>DsEJ}0QKt}7EY z_MSbDG-k3_#Qil7pX{*qHB2`hZDW&7*GBQlrfbQ0vZ=)EAfT)-_S7Cm^J%YvjdIQ8 zI8mY6A*P|Smhc}CE+Ojt`Q~^vMg_jQS)_C*ET0I%^PgO6;%iFWG(wnw%pLF zrhu-Uq?1tBlw`7LABZ$c8Iv8>lH+vK$Z_=u)}&;zo8pDI+E5Ucf^$da?tE0f$CT08 z-E@xYz~IR_Mk+8SqRt*iS2gOcv%Be*jMksI-Fi(~J0r!5)q{sCIuGeLKe{p$tado?>P)9NhhM1G;rfqtAVT{*}Ur|1#Ng~x#*DJT zNj*=#;V~BNlrf`_aZ*q1bW+cg*BRx(Q^t(K;7L7C#-SLUbjp}9uJ@##Q8GAz?nYJi zgfaVA|C4$u@j9Vr5;F=;pwtq0dK$fz;LsC$Mq|MV>qI>`bS;WZ+b-BQw4#yrmkP7|at*`NbABv)Wx-r)3ieT_c18uR6A= z!R$Vi8A~ZJmKz1Tx766hE#<+!>TqMRG0nsg0OEzJC<8`fzb(t$HYrB=-4TuyGJC!H z9B#f3Uk-yO@4CwCwj(B!(h7l0?ni+CaD6=io?PdYFoU$i=MyxCXcxThPxiR|*)7Ia z5V~37->!Nu=sq4#qrcg#Ej;GXlA7)}|P0I>NNt zbO({vK1+)cMI5Pj_t%$U*SJtCT=fo-3hn24jnDEacsLDyDh2wR^u}*iXt!TcnVHR3Q^_2UaY*(fh8GdGS9rJ z>WmJivDEa5Lz;A5nvyQ%_=yhAbsZ_{71`Mi2V%w?Bf+>@^%aJ0&o4eLFK(CjSdt|T zOmKjz5WB@LGpRrXKq~j)Lr*(XnZlJV>4civMS;aEElpv0laO+VwFx-BCksOOMz zt|?$37dku_qV$klD6Lv7K3=Zs>TyKE$lER6k%*CZXtgDrsSC@Cjj@(v0x$~~3;)5g07xGaid1Me{=NLwoy#4Uv z^$#zXfBF3Nhga{G-#>r%{i~npo0l#nH5IwCtDD+Tphgxa6?6)D$qRx;F)MLIxAFmW zwfI(iS5o=IrUW>y&vCu9T*U(#Q|v-6m%*W(HkDE%b-J_D@megeSLy`iqNM^+F%_S))Z_BIGf^lL$c{Xq2a;2U1RdHF=gACJYW}BI1#sd%HVs< z-oRMKuedtF?bUdP#8hb+fHtfZ}i<1VEB3^>tST z(lUrE_w23QrBByeJ0yivm4okw|7;Wp-Y4OtR)T~2QzY*pM;i0+E=n-@NXzuTY)v;i z6ga_TQ}3lBRA6JAqXO}I#WKc;v%J`vrOS!e%q*49GJ`vEhfQil*@(eA^p^3d4Yf}Y z+lEgO79wScABM$Q>vnke1pK`+#y0$tFfqhkCrm?%&^+9t{E_p&-`by~$vD8$5aFL% z>vwSTl=*MNuS>2R9J{KyGWd75=f4(Hqy&vfNKs4yHv%X@slk#;kd%<#mC?Nz+KGd? zHAYp0cj|}Eqh!S`Xv&=AZ^}!Nv=4{g9(8}`VwA^x(n@AiOQ=)ukXr4%6UV<*F^B2a zEgo!#doF8XXZ=2I_ZcF`Lq+*#NAYM|5v0~dk!!nYdMAY#&vCLLxRzC$5|Ezfk#6sA zNf^1emiP_=*Wsgkrrg6MpsFe%V7@K5w{6^-9R^+gTz&5A3%q~U*An(0Z&sg|t1F3O z_LLvOF`BuALIX|;BRypD`(QX&Qn>k*fYx@k?B6e?zE>ohKu(F>%2_~_CP?m8q=B+x zMA7`Oq&QPA1V>I%QH7KEw8FKihjPY=Y;VvIo*gqT{BK{sd9j^x!Kj(Z(v(V>HGv9n zjJPMqz#LB8kljfs8$sl0LkL7yNoGK-KadfTSQ0dtOCbWA5>2;GEr`swL|b2ug*CVf zUoU05lg^PI)H<$DfY`1Nx41hO@!Y-q@bk~F_9TxWq;vHo;IwYCP z;h;*=wA5@ES#XM&Vr&GvL_)4E{pvQpG4{vsRV2^%$^>Ha8%4C?RRLshMVg90t2KBh zbJ%PaH|5AwYX;r;UE^SAFm{QPS9;hokNAsFAZA!lO{8ci!17`-~c zaTca9Y&JwCxAG>qRy6_UF47Sw9 zL=}FR<3miRpgy7uvFVMeC_2A+ZL{02SB)v2-)KRQ@xsPLncK_NXHZCp11d++rM@jg zx_M*gbf?g~@1#P6cUhA)8(b)B!sTVQy26~|-thX8k0X+J$QY8_g$TT%G7@}-gbz&v zEr(md#Y0t~NTdUYNPqK0?e18CB-2iS`R5AHy1;?Wy%!DH2=heimMJ^N-G z0=H{i$QzTIq$^r@_gq?=_6W9b>hticEM_1_O3~FnP=@XC*(edcxpU2BsIKm>-OJan zp8xbg%tun=(^Kk`{C9cMNpk#516YL}h-&j6Btw65E3g10S(3J*s5R)TBQ01HHJhk6L-%z_ZL0GjTeBp)s0z7d z6-e0f7!D|+i+a~|#O&+~j}RhP(tgZz>Z=efclVY2p$oCUVDiY}%NT6S2J=); zh93(Bix+|>0w01|l1njr5$YZbg$iIbhA<3bp(atNH?qX5d6Z3wcDg}~n+Ak()YB!G zEAz;Q>#daH(+|t&>b;MG^OAF&rHuuapmPHLls?@hSA!OnjTN0g`F{LIIV z{j@w8sWwQ0u5277?B+7J%pT>-JN8@S(`Eez_AZpQa_QAh?)x_%UjN0QiZNth;;Hd%SK@=g9XV=Ydtm9FOim{6$=T@u@`J0HIfGucIDH1a zz_bSd`>9B|ZK);=N6laAAY@n5)Zw_}e6ZSgUC+43erp3(qSmkX;#M4uU#>`e-s0JA z3^~P_o1JPMB(RAgwWWS#PR8?&J#uds*97X}^Mnzp*;%>`h2|soO?Vcgzo5r|HQh>B#%9GrU|p z$zv3L{R7gH98+P!hR>i&Ki)cI(8abgDk^?8TO12 zz3KbhBuay}+|JuR47ML_nghsr93(7$5Nh^`tK-%oMd6fqQ2$J1w7pL4_Un~SAD1IB--3?DxCnDOy~1V>^CZ{KCgK;)Lo=5mPx`x&G`23DX{@mj~rZQp7uTWW;%< z64Ogkd#er41aZt1Hxoo}UVq9gdLim5AdZ=hW-eqf^6t9~GeI2Fj^}}}PdCxpr<-Wa zpl+PL7lYg735PnU3Qqy?bOcY2;RQV8@1d0VJXA`bekanW}R$_QXZK*}mJx0klXGfK`-4d(4@B(`v*s#G?++|hA^9!2Ug3IF{=X8Yc zFx%*!S4UlHtD8oHp_cIpW=lf-qW<51!Mt5pwy<}it7_se%HC84+wC33{=NE*e`wRI z@Y!kMK@BY9*}pZ_1}psO63;N<^ANMZK7eKTa$XTCuJM2{)s&~06)k23tXjjl9P~v@ zdybD7eDn%VL+HuRzB#bj8_RMpVw8y~Zm+A)S6HvqVielt@v^k(zx#nG)^pSPKv1JR z4zr=kC&w^vf~F^K`zAOK!oY3zLFkwGD7zBY2qF#%z3nUyq;r@Cbsi>A3bbzPng_KO zJQo|RLjw;rQOO=NR<;;u#6c(TB!q#^pAKOVg-(YsknDXBX6)v^xCtzVSRhb}hW(;UN@iW3hfhIDdZFwXbIAk0 z?ym_@R#Oi3y&xTw#q6>c8(?o87u{(9SgIFOLbZ)0ZhQTSu+-K{iBidU#wggt&MvBr zQT^&YR$~2@7+eXki|0;N zFl8C4?2o2LM^(D2xw!kfToDf6MXap}56mF31isdodj_^ed3OwuSRFBHdxJ@wB>(ySM74@=NU_lQ>ZRO`&Z*pzs9Jcxa0$|QtQ zUDyMGZ5d6$YF;|*mU+E5f^{=fsc|`8$2@qRLq)kBc3t;qa)JX{-M7R?OmM$-YIA}u zAzY4Vd5ZaYq=|z$Ham3zDa=j^6Xd9&DriOw*T8-!S2ikp$F_dIlW*g;4FRg+pl^p~ zI7Pb>fu9&73CHS)2A5|(_R=5Wco-pgaa;q3sf^@fJq$vv2`a2XF&=oy^C)qUb$IGJ zTs}lSW+_$JdtyX=Lc$>}euK>7M6#r5&xFvQXLdS-UaZ;&K`!#~Y%s~*7yE%wt2X}K4!Z3$}5T+5nH|iWfwk(EYNvYEV%x>2b$P>eI zyjT^&RFii@Cg0;d4y9>G2f%&KLyZyf_BaD1@xpNdmITU+lE72{Izu^8d6X**wkHPo zzzT_lPD{)4{IHr+Nl?h@DFJmQ-mx0>)xsVrCKdT{A388avG#`!91s;CP52&bu4jtM z7a929%{V(=!aT7q@QgbOO;ZxP-0|z|@!*lJgEWFRj|-1yDD<%nj}0E_x{e?sg8YlJ ztB9rT>Ca@LuEFd^b!U0*9Lf0!6^jvcs1!Kx%0a-MlGq&{_@Cb|-+cGoyI1d*KY#e? z9Y|#J8g&8{ljwfo4+BRb8IrS4EKdDAPw`DrG3t>6x;T=I0>cS}lnW{mU%;;Sd~4q* zN)w4XpD2|%(2^&B7>LOeKn!GcABbVQB)pL{-d$snl9=9IM9iv0_v1n1W*0n$IL7@S zq_mSPW00{CyY`XAaaYV+Jrm3MiXokF>-~i;>Pqfnbq04 zQIXhI1rOaTijYzWtx_A^!X0{`WuTx3v3b{CxX=zdif* zf1REEpMS}R{@>8R{y*|tc@O{q diff --git a/program/Cargo.toml b/program/Cargo.toml index bcdccd9..cf178d9 100644 --- a/program/Cargo.toml +++ b/program/Cargo.toml @@ -5,5 +5,5 @@ edition = "2021" [dependencies] alloy-sol-types = { workspace = true } -sp1-zkvm = "2.0.0" +sp1-zkvm = "3.0.0-rc4" fibonacci-lib = { path = "../lib" } diff --git a/script/Cargo.toml b/script/Cargo.toml index 58b7e81..611f2a1 100644 --- a/script/Cargo.toml +++ b/script/Cargo.toml @@ -13,7 +13,7 @@ name = "evm" path = "src/bin/evm.rs" [dependencies] -sp1-sdk = "2.0.0" +sp1-sdk = "3.0.0-rc4" serde_json = { version = "1.0", default-features = false, features = ["alloc"] } serde = { version = "1.0", default-features = false, features = ["derive"] } clap = { version = "4.0", features = ["derive", "env"] } @@ -23,4 +23,4 @@ alloy-sol-types = { workspace = true } fibonacci-lib = { path = "../lib" } [build-dependencies] -sp1-helper = "2.0.0" +sp1-helper = "3.0.0-rc4"