From 546ab19cbc12e58a10ede52076d5b6bbcd093f1a Mon Sep 17 00:00:00 2001 From: Brecht Devos Date: Tue, 25 Jun 2024 20:04:04 +0200 Subject: [PATCH] feat: prove blocks using reth (#226) * reth wip * reth builder full coverage * switch to reth header * reth builder (pretty important) * fmt * cleanup * Taiko support mostly working (but incomplete) * better invalid tx support * proving blocks with reth fully working (with some caveats) * remove revm as a direct dependency + remove dead code * misc cleanup * update to reth v1.0.0-rc.2 * fix local dependencies * fix ci rules * update sp1 cargo * misc fixes * clippy fixes * lock to latest reth * update to reth version without mdbx dependency * update dependencies + cleanup import warnings with patching * add back validation for receipts/log bloom/gas used * fix local dependency * unify state commitment so default commit interface can be used * small refactor * feedback + remove old test code path --- .github/workflows/ci-all.yml | 2 - .github/workflows/ci-build-test-reusable.yml | 4 - Cargo.lock | 2501 +++++++++++++----- Cargo.toml | 57 +- core/Cargo.toml | 8 +- core/src/lib.rs | 143 +- core/src/preflight.rs | 155 +- core/src/provider/db.rs | 62 +- core/src/provider/mod.rs | 2 +- core/src/provider/rpc.rs | 2 +- host/Cargo.toml | 7 +- host/config/chain_spec_list_default.json | 28 - host/src/lib.rs | 18 +- host/src/server/api/v1/proof.rs | 5 +- lib/Cargo.toml | 17 +- lib/src/builder.rs | 580 ++++ lib/src/builder/execute.rs | 551 ---- lib/src/builder/finalize.rs | 130 - lib/src/builder/initialize.rs | 189 -- lib/src/builder/mod.rs | 151 -- lib/src/builder/prepare.rs | 75 - lib/src/consts.rs | 16 +- lib/src/input.rs | 43 +- lib/src/lib.rs | 111 +- lib/src/mem_db.rs | 40 +- lib/src/primitives/eip4844.rs | 10 +- lib/src/primitives/mod.rs | 64 +- lib/src/primitives/mpt.rs | 2 +- lib/src/primitives/receipt.rs | 229 -- lib/src/primitives/revm.rs | 47 - lib/src/primitives/signature.rs | 82 - lib/src/protocol_instance.rs | 18 +- lib/src/utils.rs | 171 +- primitives/Cargo.toml | 36 - primitives/src/eip4844.rs | 87 - primitives/src/keccak.rs | 38 - primitives/src/lib.rs | 69 - primitives/src/mpt.rs | 1407 ---------- primitives/src/receipt.rs | 229 -- primitives/src/revm.rs | 47 - primitives/src/signature.rs | 82 - provers/risc0/guest/Cargo.lock | 1645 +++++++++--- provers/risc0/guest/Cargo.toml | 11 +- provers/risc0/guest/src/main.rs | 4 +- provers/risc0/guest/src/mem.rs | 5 + provers/risc0/guest/src/zk_op.rs | 3 +- provers/sgx/guest/src/one_shot.rs | 9 +- provers/sgx/prover/Cargo.toml | 2 +- provers/sgx/prover/src/sgx_register_utils.rs | 18 +- provers/sgx/setup/Cargo.toml | 1 - provers/sp1/guest/Cargo.lock | 1332 +++++++++- provers/sp1/guest/Cargo.toml | 24 +- provers/sp1/guest/elf/sp1-guest | Bin 4085972 -> 7037844 bytes provers/sp1/guest/src/main.rs | 6 +- provers/sp1/guest/src/mem.rs | 5 + provers/sp1/guest/src/zk_op.rs | 4 +- 56 files changed, 5156 insertions(+), 5428 deletions(-) create mode 100644 lib/src/builder.rs delete mode 100644 lib/src/builder/execute.rs delete mode 100644 lib/src/builder/finalize.rs delete mode 100644 lib/src/builder/initialize.rs delete mode 100644 lib/src/builder/mod.rs delete mode 100644 lib/src/builder/prepare.rs delete mode 100644 lib/src/primitives/receipt.rs delete mode 100644 lib/src/primitives/revm.rs delete mode 100644 lib/src/primitives/signature.rs delete mode 100644 primitives/Cargo.toml delete mode 100644 primitives/src/eip4844.rs delete mode 100644 primitives/src/keccak.rs delete mode 100644 primitives/src/lib.rs delete mode 100644 primitives/src/mpt.rs delete mode 100644 primitives/src/receipt.rs delete mode 100644 primitives/src/revm.rs delete mode 100644 primitives/src/signature.rs diff --git a/.github/workflows/ci-all.yml b/.github/workflows/ci-all.yml index a7a4480f..00c98701 100644 --- a/.github/workflows/ci-all.yml +++ b/.github/workflows/ci-all.yml @@ -6,13 +6,11 @@ on: paths: - "host/**" - "lib/**" - - "primitives/**" - "script/**" pull_request: paths: - "host/**" - "lib/**" - - "primitives/**" - "script/**" env: CARGO_TERM_COLOR: always diff --git a/.github/workflows/ci-build-test-reusable.yml b/.github/workflows/ci-build-test-reusable.yml index 09a91f67..539652df 100644 --- a/.github/workflows/ci-build-test-reusable.yml +++ b/.github/workflows/ci-build-test-reusable.yml @@ -50,7 +50,3 @@ jobs: - name: Test ${{ inputs.version_name }} prover run: make test - - - name: Build with tracer - if: ${{ inputs.version_name }} == native - run: cargo build -F tracer diff --git a/Cargo.lock b/Cargo.lock index 17428f35..e9adb8e6 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -32,7 +32,7 @@ dependencies = [ "cpp_demangle", "fallible-iterator", "gimli 0.28.1", - "memmap2", + "memmap2 0.5.10", "object 0.32.2", "rustc-demangle", "smallvec", @@ -59,6 +59,28 @@ version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "aae1277d39aeec15cb388266ecc24b11c80469deae6067e17a1a7aa9e5c1f234" +[[package]] +name = "aead" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b613b8e1e3cf911a086f53f03bf286f52fd7a7258e4fa606f0ef220d39d8877" +dependencies = [ + "generic-array 0.14.7", +] + +[[package]] +name = "aes" +version = "0.7.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9e8b47f52ea9bae42228d07ec09eb676433d7c4ed1ebdf0f1d1c29ed446f1ab8" +dependencies = [ + "cfg-if", + "cipher 0.3.0", + "cpufeatures", + "ctr 0.8.0", + "opaque-debug", +] + [[package]] name = "aes" version = "0.8.4" @@ -66,10 +88,24 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b169f7a6d4742236a0a00c541b845991d0ac43e546831af1249753ab4c3aa3a0" dependencies = [ "cfg-if", - "cipher", + "cipher 0.4.4", "cpufeatures", ] +[[package]] +name = "aes-gcm" +version = "0.9.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc3be92e19a7ef47457b8e6f90707e12b6ac5d20c6f3866584fa3be0787d839f" +dependencies = [ + "aead", + "aes 0.7.5", + "cipher 0.3.0", + "ctr 0.7.0", + "ghash", + "subtle", +] + [[package]] name = "ahash" version = "0.8.11" @@ -77,6 +113,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" dependencies = [ "cfg-if", + "getrandom 0.2.15", "once_cell", "version_check", "zerocopy", @@ -112,10 +149,23 @@ version = "0.2.18" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f" +[[package]] +name = "alloy-chains" +version = "0.1.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "04e9a1892803b02f53e25bea3e414ddd0501f12d97456c9d5ade4edf88f9516f" +dependencies = [ + "alloy-rlp", + "num_enum 0.7.2", + "serde", + "strum 0.26.3", +] + [[package]] name = "alloy-consensus" -version = "0.1.0" -source = "git+https://github.com/ceciliaz030/alloy?branch=175_4e22b9e-cycle#6310be6f73bc998116a5f05713e49a324f4b7184" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a016bfa21193744d4c38b3f3ab845462284d129e5e23c7cc0fafca7e92d9db37" dependencies = [ "alloy-eips", "alloy-primitives", @@ -123,20 +173,20 @@ dependencies = [ "alloy-serde", "c-kzg", "serde", - "sha2", ] [[package]] name = "alloy-contract" -version = "0.1.0" -source = "git+https://github.com/ceciliaz030/alloy?branch=175_4e22b9e-cycle#6310be6f73bc998116a5f05713e49a324f4b7184" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e47b2a620fd588d463ccf0f5931b41357664b293a8d31592768845a2a101bb9e" dependencies = [ "alloy-dyn-abi", "alloy-json-abi", "alloy-network", "alloy-primitives", "alloy-provider", - "alloy-rpc-types", + "alloy-rpc-types-eth", "alloy-sol-types", "alloy-transport", "futures", @@ -163,26 +213,29 @@ dependencies = [ [[package]] name = "alloy-eips" -version = "0.1.0" -source = "git+https://github.com/ceciliaz030/alloy?branch=175_4e22b9e-cycle#6310be6f73bc998116a5f05713e49a324f4b7184" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32d6d8118b83b0489cfb7e6435106948add2b35217f4a5004ef895f613f60299" dependencies = [ "alloy-primitives", "alloy-rlp", "alloy-serde", "c-kzg", + "derive_more", "once_cell", "serde", + "sha2", ] [[package]] name = "alloy-genesis" -version = "0.1.0" -source = "git+https://github.com/ceciliaz030/alloy?branch=175_4e22b9e-cycle#6310be6f73bc998116a5f05713e49a324f4b7184" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "894f33a7822abb018db56b10ab90398e63273ce1b5a33282afd186c132d764a6" dependencies = [ "alloy-primitives", "alloy-serde", "serde", - "serde_json", ] [[package]] @@ -199,8 +252,9 @@ dependencies = [ [[package]] name = "alloy-json-rpc" -version = "0.1.0" -source = "git+https://github.com/ceciliaz030/alloy?branch=175_4e22b9e-cycle#6310be6f73bc998116a5f05713e49a324f4b7184" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "61f0ae6e93b885cc70fe8dae449e7fd629751dbee8f59767eaaa7285333c5727" dependencies = [ "alloy-primitives", "serde", @@ -211,17 +265,20 @@ dependencies = [ [[package]] name = "alloy-network" -version = "0.1.0" -source = "git+https://github.com/ceciliaz030/alloy?branch=175_4e22b9e-cycle#6310be6f73bc998116a5f05713e49a324f4b7184" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc122cbee2b8523854cc11d87bcd5773741602c553d2d2d106d82eeb9c16924a" dependencies = [ "alloy-consensus", "alloy-eips", "alloy-json-rpc", "alloy-primitives", - "alloy-rpc-types", + "alloy-rpc-types-eth", + "alloy-serde", "alloy-signer", "alloy-sol-types", "async-trait", + "auto_impl", "futures-utils-wasm", "thiserror", ] @@ -237,12 +294,13 @@ dependencies = [ "cfg-if", "const-hex", "derive_more", + "getrandom 0.2.15", "hex-literal", "itoa", "k256", "keccak-asm", "proptest", - "rand", + "rand 0.8.5", "ruint", "serde", "tiny-keccak", @@ -250,16 +308,18 @@ dependencies = [ [[package]] name = "alloy-provider" -version = "0.1.0" -source = "git+https://github.com/ceciliaz030/alloy?branch=175_4e22b9e-cycle#6310be6f73bc998116a5f05713e49a324f4b7184" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d5af289798fe8783acd0c5f10644d9d26f54a12bc52a083e4f3b31718e9bf92" dependencies = [ + "alloy-chains", + "alloy-consensus", "alloy-eips", "alloy-json-rpc", "alloy-network", "alloy-primitives", "alloy-rpc-client", - "alloy-rpc-types", - "alloy-rpc-types-trace", + "alloy-rpc-types-eth", "alloy-transport", "alloy-transport-http", "async-stream", @@ -269,7 +329,9 @@ dependencies = [ "futures", "futures-utils-wasm", "lru", - "reqwest 0.12.4", + "pin-project", + "reqwest 0.12.5", + "serde", "serde_json", "tokio", "tracing", @@ -295,20 +357,21 @@ checksum = "8037e03c7f462a063f28daec9fda285a9a89da003c552f8637a80b9c8fd96241" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] name = "alloy-rpc-client" -version = "0.1.0" -source = "git+https://github.com/ceciliaz030/alloy?branch=175_4e22b9e-cycle#6310be6f73bc998116a5f05713e49a324f4b7184" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b40fcb53b2a9d0a78a4968b2eca8805a4b7011b9ee3fdfa2acaf137c5128f36b" dependencies = [ "alloy-json-rpc", "alloy-transport", "alloy-transport-http", "futures", "pin-project", - "reqwest 0.12.4", + "reqwest 0.12.5", "serde", "serde_json", "tokio", @@ -320,17 +383,85 @@ dependencies = [ [[package]] name = "alloy-rpc-types" -version = "0.1.0" -source = "git+https://github.com/ceciliaz030/alloy?branch=175_4e22b9e-cycle#6310be6f73bc998116a5f05713e49a324f4b7184" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "50f2fbe956a3e0f0975c798f488dc6be96b669544df3737e18f4a325b42f4c86" +dependencies = [ + "alloy-rpc-types-engine", + "alloy-rpc-types-eth", + "alloy-serde", +] + +[[package]] +name = "alloy-rpc-types-admin" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "334a8c00cde17a48e073031f1534e71a75b529dbf25552178c43c2337632e0ab" +dependencies = [ + "alloy-genesis", + "alloy-primitives", + "serde", + "serde_json", +] + +[[package]] +name = "alloy-rpc-types-anvil" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d87f724e6170f558b809a520e37bdb34d99123092b78118bff31fb5b21dc2a2e" +dependencies = [ + "alloy-primitives", + "alloy-serde", + "serde", +] + +[[package]] +name = "alloy-rpc-types-beacon" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fb383cd3981cee0031aeacbd394c4e726e907f3a0180fe36d5fc76d37c41cd82" +dependencies = [ + "alloy-eips", + "alloy-primitives", + "alloy-rpc-types-engine", + "serde", + "serde_with", + "thiserror", +] + +[[package]] +name = "alloy-rpc-types-engine" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cd473d98ec552f8229cd6d566bd2b0bbfc5bb4efcefbb5288c834aa8fd832020" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-primitives", + "alloy-rlp", + "alloy-rpc-types-eth", + "alloy-serde", + "jsonrpsee-types", + "jsonwebtoken 9.3.0", + "rand 0.8.5", + "serde", + "thiserror", +] + +[[package]] +name = "alloy-rpc-types-eth" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "083f443a83b9313373817236a8f4bea09cca862618e9177d822aee579640a5d6" dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-genesis", "alloy-primitives", "alloy-rlp", "alloy-serde", "alloy-sol-types", - "itertools 0.12.1", + "itertools 0.13.0", + "jsonrpsee-types", "serde", "serde_json", "thiserror", @@ -338,20 +469,35 @@ dependencies = [ [[package]] name = "alloy-rpc-types-trace" -version = "0.1.0" -source = "git+https://github.com/ceciliaz030/alloy?branch=175_4e22b9e-cycle#6310be6f73bc998116a5f05713e49a324f4b7184" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c7a838f9a34aae7022c6cb53ecf21bc0a5a30c82f8d9eb0afed701ab5fd88de" dependencies = [ "alloy-primitives", - "alloy-rpc-types", + "alloy-rpc-types-eth", "alloy-serde", "serde", "serde_json", + "thiserror", +] + +[[package]] +name = "alloy-rpc-types-txpool" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1572267dbc660843d87c02994029d1654c2c32867e186b266d1c03644b43af97" +dependencies = [ + "alloy-primitives", + "alloy-rpc-types-eth", + "alloy-serde", + "serde", ] [[package]] name = "alloy-serde" -version = "0.1.0" -source = "git+https://github.com/ceciliaz030/alloy?branch=175_4e22b9e-cycle#6310be6f73bc998116a5f05713e49a324f4b7184" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d94da1c0c4e27cc344b05626fe22a89dc6b8b531b9475f3b7691dbf6913e4109" dependencies = [ "alloy-primitives", "serde", @@ -360,8 +506,9 @@ dependencies = [ [[package]] name = "alloy-signer" -version = "0.1.0" -source = "git+https://github.com/ceciliaz030/alloy?branch=175_4e22b9e-cycle#6310be6f73bc998116a5f05713e49a324f4b7184" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "58d876be3afd8b78979540084ff63995292a26aa527ad0d44276405780aa0ffd" dependencies = [ "alloy-primitives", "async-trait", @@ -372,9 +519,10 @@ dependencies = [ ] [[package]] -name = "alloy-signer-wallet" -version = "0.1.0" -source = "git+https://github.com/ceciliaz030/alloy?branch=175_4e22b9e-cycle#6310be6f73bc998116a5f05713e49a324f4b7184" +name = "alloy-signer-local" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d40a37dc216c269b8a7244047cb1c18a9c69f7a0332ab2c4c2aa4cbb1a31468b" dependencies = [ "alloy-consensus", "alloy-network", @@ -382,7 +530,7 @@ dependencies = [ "alloy-signer", "async-trait", "k256", - "rand", + "rand 0.8.5", "thiserror", ] @@ -397,7 +545,7 @@ dependencies = [ "proc-macro-error", "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -413,7 +561,7 @@ dependencies = [ "proc-macro-error", "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", "syn-solidity", "tiny-keccak", ] @@ -429,7 +577,7 @@ dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", "syn-solidity", ] @@ -456,8 +604,9 @@ dependencies = [ [[package]] name = "alloy-transport" -version = "0.1.0" -source = "git+https://github.com/ceciliaz030/alloy?branch=175_4e22b9e-cycle#6310be6f73bc998116a5f05713e49a324f4b7184" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "245af9541f0a0dbd5258669c80dfe3af118164cacec978a520041fc130550deb" dependencies = [ "alloy-json-rpc", "base64 0.22.1", @@ -469,22 +618,39 @@ dependencies = [ "tokio", "tower", "url", - "wasm-bindgen-futures", ] [[package]] name = "alloy-transport-http" -version = "0.1.0" -source = "git+https://github.com/ceciliaz030/alloy?branch=175_4e22b9e-cycle#6310be6f73bc998116a5f05713e49a324f4b7184" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5619c017e1fdaa1db87f9182f4f0ed97c53d674957f4902fba655e972d359c6c" dependencies = [ "alloy-json-rpc", "alloy-transport", - "reqwest 0.12.4", + "reqwest 0.12.5", "serde_json", "tower", + "tracing", "url", ] +[[package]] +name = "alloy-trie" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "03704f265cbbb943b117ecb5055fd46e8f41e7dc8a58b1aed20bcd40ace38c15" +dependencies = [ + "alloy-primitives", + "alloy-rlp", + "derive_more", + "hashbrown 0.14.5", + "nybbles", + "serde", + "smallvec", + "tracing", +] + [[package]] name = "android-tzdata" version = "0.1.1" @@ -794,7 +960,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1df2c09229cbc5a028b1d70e00fdb2acee28b1055dfb5ca73eea49c5a25c4e7c" dependencies = [ "num-traits", - "rand", + "rand 0.8.5", ] [[package]] @@ -804,7 +970,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "94893f1e0c6eeab764ade8dc4c0db24caf4fe7cbbaafc0eba0a9030f447b5185" dependencies = [ "num-traits", - "rand", + "rand 0.8.5", ] [[package]] @@ -869,7 +1035,7 @@ checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -880,7 +1046,7 @@ checksum = "c6fa2087f2753a7da8cc1c0dbfcf89579dd57458e36769de5ac750b4671737ca" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -929,7 +1095,7 @@ checksum = "3c87f3f15e7794432337fc718554eaa4dc8f04c9677a950ffe366f20a162ae42" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -1012,21 +1178,21 @@ dependencies = [ "heck 0.4.1", "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] name = "backtrace" -version = "0.3.72" +version = "0.3.73" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17c6a35df3749d2e8bb1b7b21a976d82b15548788d2735b9d82f329268f71a11" +checksum = "5cc23269a4f8976d0a4d2e7109211a419fe30e8d88d677cd60b6bc79c5732e0a" dependencies = [ "addr2line 0.22.0", "cc", "cfg-if", "libc", "miniz_oxide", - "object 0.35.0", + "object 0.36.0", "rustc-demangle", "serde", ] @@ -1077,6 +1243,15 @@ version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d86b93f97252c47b41663388e6d155714a9d0c398b99f1005cbc5f978b29f445" +[[package]] +name = "beef" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3a8241f3ebb85c056b509d4327ad0358fbbba6ffb340bf388f26350aeda225b1" +dependencies = [ + "serde", +] + [[package]] name = "bincode" version = "1.3.3" @@ -1092,7 +1267,7 @@ version = "0.69.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a00dc851838a2120612785d195287475a3ac45514741da670b735818822129a0" dependencies = [ - "bitflags 2.5.0", + "bitflags 2.6.0", "cexpr", "clang-sys", "itertools 0.12.1", @@ -1105,10 +1280,16 @@ dependencies = [ "regex", "rustc-hash", "shlex", - "syn 2.0.66", + "syn 2.0.68", "which", ] +[[package]] +name = "binout" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b60b1af88a588fca5fe424ae7d735bc52814f80ff57614f57043cc4e2024f2ea" + [[package]] name = "bit-set" version = "0.5.3" @@ -1132,13 +1313,22 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "bitflags" -version = "2.5.0" +version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1" +checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de" dependencies = [ "serde", ] +[[package]] +name = "bitm" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b06e8e5bec3490b9f6f3adbb78aa4f53e8396fd9994e8a62a346b44ea7c15f35" +dependencies = [ + "dyn_size_of", +] + [[package]] name = "bitvec" version = "1.0.1" @@ -1201,6 +1391,15 @@ dependencies = [ "generic-array 0.14.7", ] +[[package]] +name = "block-padding" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a8894febbff9f758034a5b8e12d87918f56dfc64a8e1fe757d65e29041538d93" +dependencies = [ + "generic-array 0.14.7", +] + [[package]] name = "bls12_381" version = "0.7.1" @@ -1210,7 +1409,7 @@ dependencies = [ "ff 0.12.1", "group 0.12.1", "pairing", - "rand_core", + "rand_core 0.6.4", "subtle", ] @@ -1295,9 +1494,9 @@ checksum = "c3ac9f8b63eca6fd385229b3675f6cc0dc5c8a5c8a54a59d4f52ffd670d87b0c" [[package]] name = "bytemuck" -version = "1.16.0" +version = "1.16.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78834c15cb5d5efe3452d58b1e8ba890dd62d21907f867f383358198e56ebca5" +checksum = "b236fc92302c97ed75b38da1f4917b5cdda4984745740f153a5d3059e48d725e" dependencies = [ "bytemuck_derive", ] @@ -1310,7 +1509,7 @@ checksum = "1ee891b04274a59bd38b412188e24b849617b2e45a0fd8d057deb63e7403761b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -1330,22 +1529,8 @@ dependencies = [ [[package]] name = "c-kzg" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cdf100c4cea8f207e883ff91ca886d621d8a166cb04971dfaa9bb8fd99ed95df" -dependencies = [ - "blst", - "cc", - "glob", - "hex", - "libc", - "serde", -] - -[[package]] -name = "c-kzg-taiko" version = "1.0.0" -source = "git+https://github.com/smtmfft/c-kzg-4844?branch=for-alpha7#a2d3ae768eede8228920619c98c87584ad8afd09" +source = "git+https://github.com/brechtpd/c-kzg-4844?branch=for-alpha7#3bf0372e8c7a4ba908aff65da0508fcaaf9d38e6" dependencies = [ "blst", "cc", @@ -1421,9 +1606,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.0.99" +version = "1.0.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96c51067fd44124faa7f870b4b1c969379ad32b2ba805aa959430ceaa384f695" +checksum = "c891175c3fb232128f48de6590095e59198bbeb8620c310be349bfc3afd12c7b" dependencies = [ "jobserver", "libc", @@ -1453,11 +1638,22 @@ checksum = "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401" dependencies = [ "android-tzdata", "iana-time-zone", + "js-sys", "num-traits", "serde", + "wasm-bindgen", "windows-targets 0.52.5", ] +[[package]] +name = "cipher" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7ee52072ec15386f770805afd189a01c8841be8696bed250fa2f13c4c0d6dfb7" +dependencies = [ + "generic-array 0.14.7", +] + [[package]] name = "cipher" version = "0.4.4" @@ -1525,7 +1721,7 @@ dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -1561,7 +1757,7 @@ dependencies = [ "hmac", "once_cell", "pbkdf2 0.12.2", - "rand", + "rand 0.8.5", "sha2", "thiserror", ] @@ -1592,6 +1788,15 @@ version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0b6a852b24ab71dffc585bcb46eaf7959d175cb865a7152e35b348d1b2960422" +[[package]] +name = "concat-kdf" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2d72c1252426a83be2092dd5884a5f6e3b8e7180f6891b6263d2c21b92ec8816" +dependencies = [ + "digest 0.10.7", +] + [[package]] name = "console" version = "0.15.8" @@ -1636,6 +1841,15 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e" +[[package]] +name = "convert_case" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec182b0ca2f35d8fc196cf3404988fd8b8c739a4d270ff118a398feb0cbec1ca" +dependencies = [ + "unicode-segmentation", +] + [[package]] name = "core-foundation" version = "0.9.4" @@ -1690,6 +1904,21 @@ dependencies = [ "libc", ] +[[package]] +name = "crc" +version = "3.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "69e6e4d7b33a94f0991c26729976b10ebde1d34c3ee82408fb536164fa10d636" +dependencies = [ + "crc-catalog", +] + +[[package]] +name = "crc-catalog" +version = "2.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "19d374276b40fb8bbdee95aef7c7fa6b5316ec764510eb64b8dd0e2ed0d7e7f5" + [[package]] name = "crc32fast" version = "1.4.2" @@ -1746,7 +1975,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76" dependencies = [ "generic-array 0.14.7", - "rand_core", + "rand_core 0.6.4", "subtle", "zeroize", ] @@ -1763,38 +1992,70 @@ dependencies = [ [[package]] name = "ctr" -version = "0.9.2" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0369ee1ad671834580515889b80f2ea915f23b8be8d0daa4bbaf2ac5c7590835" +checksum = "a232f92a03f37dd7d7dd2adc67166c77e9cd88de5b019b9a9eecfaeaf7bfd481" dependencies = [ - "cipher", + "cipher 0.3.0", ] [[package]] -name = "curve25519-dalek" -version = "4.1.2" +name = "ctr" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a677b8922c94e01bdbb12126b0bc852f00447528dee1782229af9c720c3f348" +checksum = "049bb91fb4aaf0e3c7efa6cd5ef877dbbbd15b39dad06d9948de4ec8a75761ea" dependencies = [ - "cfg-if", - "cpufeatures", - "curve25519-dalek-derive", - "fiat-crypto", - "platforms", - "rustc_version 0.4.0", - "subtle", - "zeroize", + "cipher 0.3.0", ] [[package]] -name = "curve25519-dalek-derive" -version = "0.1.1" +name = "ctr" +version = "0.9.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0369ee1ad671834580515889b80f2ea915f23b8be8d0daa4bbaf2ac5c7590835" +dependencies = [ + "cipher 0.4.4", +] + +[[package]] +name = "cuckoofilter" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b810a8449931679f64cd7eef1bbd0fa315801b6d5d9cdc1ace2804d6529eee18" +dependencies = [ + "byteorder", + "fnv", + "rand 0.7.3", + "serde", + "serde_bytes", + "serde_derive", +] + +[[package]] +name = "curve25519-dalek" +version = "4.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "97fb8b7c4503de7d6ae7b42ab72a5a59857b4c937ec27a3d4539dba95b5ab2be" +dependencies = [ + "cfg-if", + "cpufeatures", + "curve25519-dalek-derive", + "digest 0.10.7", + "fiat-crypto", + "rustc_version 0.4.0", + "subtle", + "zeroize", +] + +[[package]] +name = "curve25519-dalek-derive" +version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -1864,7 +2125,7 @@ dependencies = [ "proc-macro2", "quote", "strsim 0.11.1", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -1875,7 +2136,7 @@ checksum = "733cabb43482b1a1b53eee8583c2b9e8684d592215ea83efd305dd31bc2f0178" dependencies = [ "darling_core", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -1894,7 +2155,7 @@ dependencies = [ "hashbrown 0.14.5", "lock_api", "once_cell", - "parking_lot_core", + "parking_lot_core 0.9.10", ] [[package]] @@ -1903,6 +2164,16 @@ version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e8566979429cf69b49a5c740c60791108e86440e8be149bbea4fe54d2c32d6e2" +[[package]] +name = "delay_map" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e4355c25cbf99edcb6b4a0e906f6bdc6956eda149e84455bea49696429b2f8e8" +dependencies = [ + "futures", + "tokio-util", +] + [[package]] name = "der" version = "0.7.9" @@ -1936,15 +2207,15 @@ dependencies = [ [[package]] name = "derive_more" -version = "0.99.17" +version = "0.99.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321" +checksum = "5f33878137e4dafd7fa914ad4e259e18a4e8e532b9617a2d0150262bf53abfce" dependencies = [ - "convert_case", + "convert_case 0.4.0", "proc-macro2", "quote", "rustc_version 0.4.0", - "syn 1.0.109", + "syn 2.0.68", ] [[package]] @@ -2005,14 +2276,33 @@ dependencies = [ ] [[package]] -name = "displaydoc" -version = "0.2.4" +name = "discv5" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "487585f4d0c6655fe74905e2504d8ad6908e4db67f744eb140876906c2f3175d" +checksum = "cafb8ed8d460b7d1c8d4c970270d45ecb5e283179a3945143196624c55cda6ac" dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.66", + "aes 0.7.5", + "aes-gcm", + "alloy-rlp", + "arrayvec", + "delay_map", + "enr 0.12.1", + "fnv", + "futures", + "hashlink", + "hex", + "hkdf", + "lazy_static", + "lru", + "more-asserts", + "parking_lot 0.11.2", + "rand 0.8.5", + "smallvec", + "socket2 0.4.10", + "tokio", + "tracing", + "uint", + "zeroize", ] [[package]] @@ -2035,7 +2325,7 @@ checksum = "d05213e96f184578b5f70105d4d0a644a168e99e12d7bea0b200c15d67b5c182" dependencies = [ "digest 0.10.7", "futures", - "rand", + "rand 0.8.5", "reqwest 0.11.27", "thiserror", "tokio", @@ -2053,6 +2343,12 @@ version = "1.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125" +[[package]] +name = "dyn_size_of" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "33d4f78a40b1ec35bf8cafdaaf607ba2f773c366b0b3bda48937cacd7a8d5134" + [[package]] name = "ecdsa" version = "0.16.9" @@ -2067,6 +2363,31 @@ dependencies = [ "spki", ] +[[package]] +name = "ed25519" +version = "2.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "115531babc129696a58c64a4fef0a8bf9e9698629fb97e9e40767d235cfbcd53" +dependencies = [ + "pkcs8", + "signature", +] + +[[package]] +name = "ed25519-dalek" +version = "2.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4a3daa8e81a3963a60642bcc1f90a670680bd4a77535faa384e9d1c79d620871" +dependencies = [ + "curve25519-dalek", + "ed25519", + "rand_core 0.6.4", + "serde", + "sha2", + "subtle", + "zeroize", +] + [[package]] name = "either" version = "1.12.0" @@ -2092,7 +2413,7 @@ dependencies = [ "generic-array 0.14.7", "group 0.13.0", "pkcs8", - "rand_core", + "rand_core 0.6.4", "sec1", "subtle", "zeroize", @@ -2124,7 +2445,7 @@ dependencies = [ "hex", "k256", "log", - "rand", + "rand 0.8.5", "rlp", "serde", "sha3", @@ -2142,13 +2463,33 @@ dependencies = [ "hex", "k256", "log", - "rand", + "rand 0.8.5", "rlp", "serde", "sha3", "zeroize", ] +[[package]] +name = "enr" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "972070166c68827e64bd1ebc8159dd8e32d9bc2da7ebe8f20b61308f7974ad30" +dependencies = [ + "alloy-rlp", + "base64 0.21.7", + "bytes", + "ed25519-dalek", + "hex", + "k256", + "log", + "rand 0.8.5", + "secp256k1", + "serde", + "sha3", + "zeroize", +] + [[package]] name = "enumn" version = "0.1.13" @@ -2157,7 +2498,7 @@ checksum = "6fd000fd6988e73bbe993ea3db9b1aa64906ab88766d654973924340c8cddb42" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -2215,13 +2556,13 @@ version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1fda3bf123be441da5260717e0661c25a2fd9cb2b2c1d20bf2e05580047158ab" dependencies = [ - "aes", - "ctr", + "aes 0.8.4", + "ctr 0.9.2", "digest 0.10.7", "hex", "hmac", "pbkdf2 0.11.0", - "rand", + "rand 0.8.5", "scrypt", "serde", "serde_json", @@ -2358,7 +2699,7 @@ dependencies = [ "regex", "serde", "serde_json", - "syn 2.0.66", + "syn 2.0.68", "toml 0.7.8", "walkdir", ] @@ -2380,7 +2721,7 @@ dependencies = [ "regex", "serde", "serde_json", - "syn 2.0.66", + "syn 2.0.68", "toml 0.8.14", "walkdir", ] @@ -2397,7 +2738,7 @@ dependencies = [ "proc-macro2", "quote", "serde_json", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -2413,7 +2754,7 @@ dependencies = [ "proc-macro2", "quote", "serde_json", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -2433,12 +2774,12 @@ dependencies = [ "num_enum 0.7.2", "once_cell", "open-fastrlp", - "rand", + "rand 0.8.5", "rlp", "serde", "serde_json", "strum 0.25.0", - "syn 2.0.66", + "syn 2.0.68", "tempfile", "thiserror", "tiny-keccak", @@ -2463,12 +2804,12 @@ dependencies = [ "num_enum 0.7.2", "once_cell", "open-fastrlp", - "rand", + "rand 0.8.5", "rlp", "serde", "serde_json", - "strum 0.26.2", - "syn 2.0.66", + "strum 0.26.3", + "syn 2.0.68", "tempfile", "thiserror", "tiny-keccak", @@ -2520,7 +2861,7 @@ dependencies = [ "hashers", "http 0.2.12", "instant", - "jsonwebtoken", + "jsonwebtoken 8.3.0", "once_cell", "pin-project", "reqwest 0.11.27", @@ -2557,7 +2898,7 @@ dependencies = [ "hashers", "http 0.2.12", "instant", - "jsonwebtoken", + "jsonwebtoken 8.3.0", "once_cell", "pin-project", "reqwest 0.11.27", @@ -2587,7 +2928,7 @@ dependencies = [ "elliptic-curve", "eth-keystore", "ethers-core 2.0.14", - "rand", + "rand 0.8.5", "sha2", "thiserror", "tracing", @@ -2633,7 +2974,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d013fc25338cc558c5c2cfbad646908fb23591e2404481826742b651c9af7160" dependencies = [ "bitvec", - "rand_core", + "rand_core 0.6.4", "subtle", ] @@ -2646,7 +2987,7 @@ dependencies = [ "bitvec", "byteorder", "ff_derive", - "rand_core", + "rand_core 0.6.4", "subtle", ] @@ -2688,7 +3029,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "835c052cb0c08c1acf6ffd71c022172e18723949c8282f2b9f27efbc51e64534" dependencies = [ "byteorder", - "rand", + "rand 0.8.5", "rustc-hex", "static_assertions", ] @@ -2742,7 +3083,7 @@ checksum = "1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -2838,7 +3179,7 @@ checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -2923,6 +3264,17 @@ dependencies = [ "typenum", ] +[[package]] +name = "getrandom" +version = "0.1.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce" +dependencies = [ + "cfg-if", + "libc", + "wasi 0.9.0+wasi-snapshot-preview1", +] + [[package]] name = "getrandom" version = "0.2.15" @@ -2930,8 +3282,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7" dependencies = [ "cfg-if", + "js-sys", "libc", - "wasi", + "wasi 0.11.0+wasi-snapshot-preview1", + "wasm-bindgen", +] + +[[package]] +name = "ghash" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1583cc1656d7839fd3732b80cf4f38850336cdb9b8ded1cd399ca62958de3c99" +dependencies = [ + "opaque-debug", + "polyval", ] [[package]] @@ -2956,7 +3320,7 @@ version = "0.18.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "232e6a7bfe35766bf715e55a88b39a700596c0ccfd88cd3680b4cdb40d66ef70" dependencies = [ - "bitflags 2.5.0", + "bitflags 2.6.0", "libc", "libgit2-sys", "log", @@ -2998,7 +3362,7 @@ checksum = "5dfbfb3a6cfbd390d5c9564ab283a0349b9b9fcd46a706c1eb10e0db70bfbac7" dependencies = [ "ff 0.12.1", "memuse", - "rand_core", + "rand_core 0.6.4", "subtle", ] @@ -3009,7 +3373,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63" dependencies = [ "ff 0.13.0", - "rand_core", + "rand_core 0.6.4", "subtle", ] @@ -3070,7 +3434,7 @@ dependencies = [ "ff 0.12.1", "group 0.12.1", "pasta_curves 0.4.1", - "rand_core", + "rand_core 0.6.4", "rayon", ] @@ -3128,6 +3492,15 @@ dependencies = [ "fxhash", ] +[[package]] +name = "hashlink" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e8094feaf31ff591f651a2664fb9cfd92bba7a60ce3197265e9482ebe753c8f7" +dependencies = [ + "hashbrown 0.14.5", +] + [[package]] name = "hdrhistogram" version = "7.5.4" @@ -3189,6 +3562,15 @@ version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6fe2267d4ed49bc07b63801559be28c718ea06c4738b7a03c94df7386d2cde46" +[[package]] +name = "hkdf" +version = "0.12.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b5f8eb2ad728638ea2c7d47a21db23b7b58a72ed6a38256b8a1849f15fbbdf7" +dependencies = [ + "hmac", +] + [[package]] name = "hmac" version = "0.12.1" @@ -3271,9 +3653,9 @@ checksum = "08a397c49fec283e3d6211adbe480be95aae5f304cfb923e9970e08956d5168a" [[package]] name = "httparse" -version = "1.9.2" +version = "1.9.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f3935c160d00ac752e09787e6e6bfc26494c2183cc922f1bc678a60d4733bc2" +checksum = "0fcc0b4a115bf80b728eb8ea024ad5bd707b615bfed49e0665b6e0f86fd082d9" [[package]] name = "httpdate" @@ -3310,7 +3692,7 @@ dependencies = [ "httpdate", "itoa", "pin-project-lite", - "socket2", + "socket2 0.5.7", "tokio", "tower-service", "tracing", @@ -3354,19 +3736,20 @@ dependencies = [ [[package]] name = "hyper-rustls" -version = "0.26.0" +version = "0.27.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0bea761b46ae2b24eb4aef630d8d1c398157b6fc29e6350ecf090a0b70c952c" +checksum = "5ee4be2c948921a1a5320b629c4193916ed787a7f7f293fd3f7f5a6c9de74155" dependencies = [ "futures-util", "http 1.1.0", "hyper 1.3.1", "hyper-util", - "rustls 0.22.4", + "rustls 0.23.10", "rustls-pki-types", "tokio", - "tokio-rustls 0.25.0", + "tokio-rustls 0.26.0", "tower-service", + "webpki-roots 0.26.3", ] [[package]] @@ -3411,7 +3794,7 @@ dependencies = [ "http-body 1.0.0", "hyper 1.3.1", "pin-project-lite", - "socket2", + "socket2 0.5.7", "tokio", "tower", "tower-service", @@ -3441,124 +3824,6 @@ dependencies = [ "cc", ] -[[package]] -name = "icu_collections" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db2fa452206ebee18c4b5c2274dbf1de17008e874b4dc4f0aea9d01ca79e4526" -dependencies = [ - "displaydoc", - "yoke", - "zerofrom", - "zerovec", -] - -[[package]] -name = "icu_locid" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13acbb8371917fc971be86fc8057c41a64b521c184808a698c02acc242dbf637" -dependencies = [ - "displaydoc", - "litemap", - "tinystr", - "writeable", - "zerovec", -] - -[[package]] -name = "icu_locid_transform" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01d11ac35de8e40fdeda00d9e1e9d92525f3f9d887cdd7aa81d727596788b54e" -dependencies = [ - "displaydoc", - "icu_locid", - "icu_locid_transform_data", - "icu_provider", - "tinystr", - "zerovec", -] - -[[package]] -name = "icu_locid_transform_data" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fdc8ff3388f852bede6b579ad4e978ab004f139284d7b28715f773507b946f6e" - -[[package]] -name = "icu_normalizer" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19ce3e0da2ec68599d193c93d088142efd7f9c5d6fc9b803774855747dc6a84f" -dependencies = [ - "displaydoc", - "icu_collections", - "icu_normalizer_data", - "icu_properties", - "icu_provider", - "smallvec", - "utf16_iter", - "utf8_iter", - "write16", - "zerovec", -] - -[[package]] -name = "icu_normalizer_data" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8cafbf7aa791e9b22bec55a167906f9e1215fd475cd22adfcf660e03e989516" - -[[package]] -name = "icu_properties" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f8ac670d7422d7f76b32e17a5db556510825b29ec9154f235977c9caba61036" -dependencies = [ - "displaydoc", - "icu_collections", - "icu_locid_transform", - "icu_properties_data", - "icu_provider", - "tinystr", - "zerovec", -] - -[[package]] -name = "icu_properties_data" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67a8effbc3dd3e4ba1afa8ad918d5684b8868b3b26500753effea8d2eed19569" - -[[package]] -name = "icu_provider" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ed421c8a8ef78d3e2dbc98a973be2f3770cb42b606e3ab18d6237c4dfde68d9" -dependencies = [ - "displaydoc", - "icu_locid", - "icu_provider_macros", - "stable_deref_trait", - "tinystr", - "writeable", - "yoke", - "zerofrom", - "zerovec", -] - -[[package]] -name = "icu_provider_macros" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.66", -] - [[package]] name = "ident_case" version = "1.0.1" @@ -3567,14 +3832,12 @@ checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" [[package]] name = "idna" -version = "1.0.0" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4716a3a0933a1d01c2f72450e89596eb51dd34ef3c211ccd875acdf1f8fe47ed" +checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6" dependencies = [ - "icu_normalizer", - "icu_properties", - "smallvec", - "utf8_iter", + "unicode-bidi", + "unicode-normalization", ] [[package]] @@ -3662,6 +3925,7 @@ version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a0c10553d664a4d0bcff9f4215d0aac67a639cc68ef660840afe309b807bc9f5" dependencies = [ + "block-padding", "generic-array 0.14.7", ] @@ -3720,6 +3984,15 @@ dependencies = [ "either", ] +[[package]] +name = "itertools" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186" +dependencies = [ + "either", +] + [[package]] name = "itoa" version = "1.0.11" @@ -3744,6 +4017,19 @@ dependencies = [ "wasm-bindgen", ] +[[package]] +name = "jsonrpsee-types" +version = "0.23.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f511b714bca46f9a3e97c0e0eb21d2c112e83e444d2db535b5ec7093f5836d73" +dependencies = [ + "beef", + "http 1.1.0", + "serde", + "serde_json", + "thiserror", +] + [[package]] name = "jsonwebtoken" version = "8.3.0" @@ -3758,6 +4044,21 @@ dependencies = [ "simple_asn1", ] +[[package]] +name = "jsonwebtoken" +version = "9.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b9ae10193d25051e74945f1ea2d0b42e03cc3b890f7e4cc5faa44997d808193f" +dependencies = [ + "base64 0.21.7", + "js-sys", + "pem 3.0.4", + "ring 0.17.8", + "serde", + "serde_json", + "simple_asn1", +] + [[package]] name = "jubjub" version = "0.9.0" @@ -3768,7 +4069,7 @@ dependencies = [ "bls12_381", "ff 0.12.1", "group 0.12.1", - "rand_core", + "rand_core 0.6.4", "subtle", ] @@ -3825,16 +4126,16 @@ dependencies = [ "proc-macro2", "quote", "regex", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] name = "lazy_static" -version = "1.4.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" +checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" dependencies = [ - "spin 0.5.2", + "spin 0.9.8", ] [[package]] @@ -3887,9 +4188,9 @@ dependencies = [ [[package]] name = "libloading" -version = "0.8.3" +version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c2a198fb6b0eada2a8df47933734e6d35d350665a33a3593d7164fa52c75c19" +checksum = "e310b3a6b5907f99202fcdb4960ff45b93735d7c7d96b760fcff8db2dc0e103d" dependencies = [ "cfg-if", "windows-targets 0.52.5", @@ -3907,7 +4208,7 @@ version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d" dependencies = [ - "bitflags 2.5.0", + "bitflags 2.6.0", "libc", ] @@ -3929,12 +4230,6 @@ version = "0.4.14" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89" -[[package]] -name = "litemap" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "643cb0b8d4fcc284004d5fd0d67ccf61dfffadb7f75e1e71bc420f4688a3a704" - [[package]] name = "lock_api" version = "0.4.12" @@ -3966,6 +4261,12 @@ version = "0.11.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9106e1d747ffd48e6be5bb2d97fa706ed25b144fbee4d5c02eae110cd8d6badd" +[[package]] +name = "lz4_flex" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75761162ae2b0e580d7e7c390558127e5f01b4194debd6221fd8c207fc80e3f5" + [[package]] name = "malloc_buf" version = "0.0.6" @@ -4002,9 +4303,9 @@ dependencies = [ [[package]] name = "memchr" -version = "2.7.2" +version = "2.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d" +checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" [[package]] name = "memmap2" @@ -4015,6 +4316,15 @@ dependencies = [ "libc", ] +[[package]] +name = "memmap2" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f49388d20533534cd19360ad3d6a7dadc885944aa802ba3995040c5ec11288c6" +dependencies = [ + "libc", +] + [[package]] name = "memuse" version = "0.2.1" @@ -4036,6 +4346,16 @@ dependencies = [ "paste", ] +[[package]] +name = "metrics" +version = "0.22.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2be3cbd384d4e955b231c895ce10685e3d8260c5ccffae898c96c723b0772835" +dependencies = [ + "ahash", + "portable-atomic", +] + [[package]] name = "mime" version = "0.3.17" @@ -4060,9 +4380,9 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" [[package]] name = "miniz_oxide" -version = "0.7.3" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87dfd01fe195c66b572b37921ad8803d010623c0aca821bea2302239d155cdae" +checksum = "b8a240ddb74feaf34a79a7add65a741f3167852fba007066dcac1ca548d89c08" dependencies = [ "adler", ] @@ -4080,19 +4400,46 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c" dependencies = [ "libc", - "wasi", + "wasi 0.11.0+wasi-snapshot-preview1", "windows-sys 0.48.0", ] [[package]] -name = "multimap" -version = "0.10.0" +name = "modular-bitfield" +version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "defc4c55412d89136f966bbb339008b474350e5e6e78d2714439c386b3137a03" +checksum = "a53d79ba8304ac1c4f9eb3b9d281f21f7be9d4626f72ce7df4ad8fbde4f38a74" +dependencies = [ + "modular-bitfield-impl", + "static_assertions", +] [[package]] -name = "native-tls" -version = "0.2.12" +name = "modular-bitfield-impl" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a7d5f7076603ebc68de2dc6a650ec331a062a13abaa346975be747bbfa4b789" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "more-asserts" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fafa6961cabd9c63bcd77a45d7e3b7f3b552b70417831fb0f56db717e72407e" + +[[package]] +name = "multimap" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "defc4c55412d89136f966bbb339008b474350e5e6e78d2714439c386b3137a03" + +[[package]] +name = "native-tls" +version = "0.2.12" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a8614eb2c83d59d1c8cc974dd3f920198647674a0a035e1af1fa58707e317466" dependencies = [ @@ -4137,6 +4484,15 @@ dependencies = [ "minimal-lexical", ] +[[package]] +name = "ntapi" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e8a3895c6391c39d7fe7ebc444a87eb2991b2a0bc718fdabd071eec617fc68e4" +dependencies = [ + "winapi", +] + [[package]] name = "nu-ansi-term" version = "0.46.0" @@ -4205,7 +4561,7 @@ checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -4298,7 +4654,7 @@ dependencies = [ "proc-macro-crate 3.1.0", "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -4316,6 +4672,19 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3" +[[package]] +name = "nybbles" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95f06be0417d97f81fe4e5c86d7d01b392655a9cac9c19a848aa033e18937b23" +dependencies = [ + "alloy-rlp", + "const-hex", + "proptest", + "serde", + "smallvec", +] + [[package]] name = "objc" version = "0.2.7" @@ -4348,9 +4717,9 @@ dependencies = [ [[package]] name = "object" -version = "0.35.0" +version = "0.36.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8ec7ab813848ba4522158d5517a6093db1ded27575b070f4177b8d12b41db5e" +checksum = "576dfe1fc8f9df304abb159d767a29d0476f7750fbf8aa7ad07816004a207434" dependencies = [ "memchr", ] @@ -4361,6 +4730,12 @@ version = "1.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" +[[package]] +name = "opaque-debug" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" + [[package]] name = "open-fastrlp" version = "0.1.4" @@ -4392,7 +4767,7 @@ version = "0.10.64" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "95a0481286a310808298130d22dd1fef0fa571e05a8f44ec801801e84b216b1f" dependencies = [ - "bitflags 2.5.0", + "bitflags 2.6.0", "cfg-if", "foreign-types 0.3.2", "libc", @@ -4409,7 +4784,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -4445,7 +4820,7 @@ checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" [[package]] name = "p3-air" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=3b5265f9d5af36534a46caebf0617595cfb42c5a#3b5265f9d5af36534a46caebf0617595cfb42c5a" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=88ea2b866e41329817e4761429b4a5a2a9751c07#88ea2b866e41329817e4761429b4a5a2a9751c07" dependencies = [ "p3-field", "p3-matrix", @@ -4454,21 +4829,21 @@ dependencies = [ [[package]] name = "p3-baby-bear" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=3b5265f9d5af36534a46caebf0617595cfb42c5a#3b5265f9d5af36534a46caebf0617595cfb42c5a" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=88ea2b866e41329817e4761429b4a5a2a9751c07#88ea2b866e41329817e4761429b4a5a2a9751c07" dependencies = [ "num-bigint 0.4.5", "p3-field", "p3-mds", "p3-poseidon2", "p3-symmetric", - "rand", + "rand 0.8.5", "serde", ] [[package]] name = "p3-blake3" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=3b5265f9d5af36534a46caebf0617595cfb42c5a#3b5265f9d5af36534a46caebf0617595cfb42c5a" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=88ea2b866e41329817e4761429b4a5a2a9751c07#88ea2b866e41329817e4761429b4a5a2a9751c07" dependencies = [ "blake3", "p3-symmetric", @@ -4477,21 +4852,21 @@ dependencies = [ [[package]] name = "p3-bn254-fr" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=3b5265f9d5af36534a46caebf0617595cfb42c5a#3b5265f9d5af36534a46caebf0617595cfb42c5a" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=88ea2b866e41329817e4761429b4a5a2a9751c07#88ea2b866e41329817e4761429b4a5a2a9751c07" dependencies = [ "ff 0.13.0", "num-bigint 0.4.5", "p3-field", "p3-poseidon2", "p3-symmetric", - "rand", + "rand 0.8.5", "serde", ] [[package]] name = "p3-challenger" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=3b5265f9d5af36534a46caebf0617595cfb42c5a#3b5265f9d5af36534a46caebf0617595cfb42c5a" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=88ea2b866e41329817e4761429b4a5a2a9751c07#88ea2b866e41329817e4761429b4a5a2a9751c07" dependencies = [ "p3-field", "p3-maybe-rayon", @@ -4503,7 +4878,7 @@ dependencies = [ [[package]] name = "p3-commit" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=3b5265f9d5af36534a46caebf0617595cfb42c5a#3b5265f9d5af36534a46caebf0617595cfb42c5a" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=88ea2b866e41329817e4761429b4a5a2a9751c07#88ea2b866e41329817e4761429b4a5a2a9751c07" dependencies = [ "itertools 0.12.1", "p3-challenger", @@ -4516,7 +4891,7 @@ dependencies = [ [[package]] name = "p3-dft" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=3b5265f9d5af36534a46caebf0617595cfb42c5a#3b5265f9d5af36534a46caebf0617595cfb42c5a" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=88ea2b866e41329817e4761429b4a5a2a9751c07#88ea2b866e41329817e4761429b4a5a2a9751c07" dependencies = [ "p3-field", "p3-matrix", @@ -4528,20 +4903,20 @@ dependencies = [ [[package]] name = "p3-field" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=3b5265f9d5af36534a46caebf0617595cfb42c5a#3b5265f9d5af36534a46caebf0617595cfb42c5a" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=88ea2b866e41329817e4761429b4a5a2a9751c07#88ea2b866e41329817e4761429b4a5a2a9751c07" dependencies = [ "itertools 0.12.1", "num-bigint 0.4.5", "num-traits", "p3-util", - "rand", + "rand 0.8.5", "serde", ] [[package]] name = "p3-fri" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=3b5265f9d5af36534a46caebf0617595cfb42c5a#3b5265f9d5af36534a46caebf0617595cfb42c5a" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=88ea2b866e41329817e4761429b4a5a2a9751c07#88ea2b866e41329817e4761429b4a5a2a9751c07" dependencies = [ "itertools 0.12.1", "p3-challenger", @@ -4559,7 +4934,7 @@ dependencies = [ [[package]] name = "p3-interpolation" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=3b5265f9d5af36534a46caebf0617595cfb42c5a#3b5265f9d5af36534a46caebf0617595cfb42c5a" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=88ea2b866e41329817e4761429b4a5a2a9751c07#88ea2b866e41329817e4761429b4a5a2a9751c07" dependencies = [ "p3-field", "p3-matrix", @@ -4569,7 +4944,7 @@ dependencies = [ [[package]] name = "p3-keccak" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=3b5265f9d5af36534a46caebf0617595cfb42c5a#3b5265f9d5af36534a46caebf0617595cfb42c5a" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=88ea2b866e41329817e4761429b4a5a2a9751c07#88ea2b866e41329817e4761429b4a5a2a9751c07" dependencies = [ "p3-symmetric", "tiny-keccak", @@ -4578,7 +4953,7 @@ dependencies = [ [[package]] name = "p3-keccak-air" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=3b5265f9d5af36534a46caebf0617595cfb42c5a#3b5265f9d5af36534a46caebf0617595cfb42c5a" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=88ea2b866e41329817e4761429b4a5a2a9751c07#88ea2b866e41329817e4761429b4a5a2a9751c07" dependencies = [ "p3-air", "p3-field", @@ -4591,13 +4966,13 @@ dependencies = [ [[package]] name = "p3-matrix" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=3b5265f9d5af36534a46caebf0617595cfb42c5a#3b5265f9d5af36534a46caebf0617595cfb42c5a" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=88ea2b866e41329817e4761429b4a5a2a9751c07#88ea2b866e41329817e4761429b4a5a2a9751c07" dependencies = [ "itertools 0.12.1", "p3-field", "p3-maybe-rayon", "p3-util", - "rand", + "rand 0.8.5", "serde", "tracing", ] @@ -4605,7 +4980,7 @@ dependencies = [ [[package]] name = "p3-maybe-rayon" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=3b5265f9d5af36534a46caebf0617595cfb42c5a#3b5265f9d5af36534a46caebf0617595cfb42c5a" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=88ea2b866e41329817e4761429b4a5a2a9751c07#88ea2b866e41329817e4761429b4a5a2a9751c07" dependencies = [ "rayon", ] @@ -4613,7 +4988,7 @@ dependencies = [ [[package]] name = "p3-mds" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=3b5265f9d5af36534a46caebf0617595cfb42c5a#3b5265f9d5af36534a46caebf0617595cfb42c5a" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=88ea2b866e41329817e4761429b4a5a2a9751c07#88ea2b866e41329817e4761429b4a5a2a9751c07" dependencies = [ "itertools 0.12.1", "p3-dft", @@ -4621,13 +4996,13 @@ dependencies = [ "p3-matrix", "p3-symmetric", "p3-util", - "rand", + "rand 0.8.5", ] [[package]] name = "p3-merkle-tree" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=3b5265f9d5af36534a46caebf0617595cfb42c5a#3b5265f9d5af36534a46caebf0617595cfb42c5a" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=88ea2b866e41329817e4761429b4a5a2a9751c07#88ea2b866e41329817e4761429b4a5a2a9751c07" dependencies = [ "itertools 0.12.1", "p3-commit", @@ -4643,19 +5018,19 @@ dependencies = [ [[package]] name = "p3-poseidon2" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=3b5265f9d5af36534a46caebf0617595cfb42c5a#3b5265f9d5af36534a46caebf0617595cfb42c5a" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=88ea2b866e41329817e4761429b4a5a2a9751c07#88ea2b866e41329817e4761429b4a5a2a9751c07" dependencies = [ "gcd", "p3-field", "p3-mds", "p3-symmetric", - "rand", + "rand 0.8.5", ] [[package]] name = "p3-symmetric" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=3b5265f9d5af36534a46caebf0617595cfb42c5a#3b5265f9d5af36534a46caebf0617595cfb42c5a" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=88ea2b866e41329817e4761429b4a5a2a9751c07#88ea2b866e41329817e4761429b4a5a2a9751c07" dependencies = [ "itertools 0.12.1", "p3-field", @@ -4665,7 +5040,7 @@ dependencies = [ [[package]] name = "p3-uni-stark" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=3b5265f9d5af36534a46caebf0617595cfb42c5a#3b5265f9d5af36534a46caebf0617595cfb42c5a" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=88ea2b866e41329817e4761429b4a5a2a9751c07#88ea2b866e41329817e4761429b4a5a2a9751c07" dependencies = [ "itertools 0.12.1", "p3-air", @@ -4683,7 +5058,7 @@ dependencies = [ [[package]] name = "p3-util" version = "0.1.0" -source = "git+https://github.com/Plonky3/Plonky3.git?rev=3b5265f9d5af36534a46caebf0617595cfb42c5a#3b5265f9d5af36534a46caebf0617595cfb42c5a" +source = "git+https://github.com/Plonky3/Plonky3.git?rev=88ea2b866e41329817e4761429b4a5a2a9751c07#88ea2b866e41329817e4761429b4a5a2a9751c07" dependencies = [ "serde", ] @@ -4706,6 +5081,7 @@ dependencies = [ "arrayvec", "bitvec", "byte-slice-cast", + "bytes", "impl-trait-for-tuples", "parity-scale-codec-derive", "serde", @@ -4723,6 +5099,17 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "parking_lot" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7d17b78036a60663b797adeaee46f5c9dfebb86948d1255007a1d6be0271ff99" +dependencies = [ + "instant", + "lock_api", + "parking_lot_core 0.8.6", +] + [[package]] name = "parking_lot" version = "0.12.3" @@ -4730,7 +5117,21 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27" dependencies = [ "lock_api", - "parking_lot_core", + "parking_lot_core 0.9.10", +] + +[[package]] +name = "parking_lot_core" +version = "0.8.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "60a2cfe6f0ad2bfc16aefa463b497d5c7a5ecd44a23efa72aa342d90177356dc" +dependencies = [ + "cfg-if", + "instant", + "libc", + "redox_syscall 0.2.16", + "smallvec", + "winapi", ] [[package]] @@ -4741,7 +5142,7 @@ checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8" dependencies = [ "cfg-if", "libc", - "redox_syscall", + "redox_syscall 0.5.2", "smallvec", "windows-targets 0.52.5", ] @@ -4756,7 +5157,7 @@ dependencies = [ "ff 0.12.1", "group 0.12.1", "lazy_static", - "rand", + "rand 0.8.5", "static_assertions", "subtle", ] @@ -4771,7 +5172,7 @@ dependencies = [ "ff 0.13.0", "group 0.13.0", "lazy_static", - "rand", + "rand 0.8.5", "static_assertions", "subtle", ] @@ -4853,6 +5254,19 @@ dependencies = [ "indexmap 2.2.6", ] +[[package]] +name = "ph" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "86b7b74d575d7c11fb653fae69688be5206cafc1ead33c01ce61ac7f36eae45b" +dependencies = [ + "binout", + "bitm", + "dyn_size_of", + "rayon", + "wyhash", +] + [[package]] name = "pharos" version = "0.5.3" @@ -4880,7 +5294,7 @@ checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -4912,10 +5326,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec" [[package]] -name = "platforms" -version = "3.4.0" +name = "polyval" +version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db23d408679286588f4d4644f965003d056e3dd5abcaaa938116871d7ce2fee7" +checksum = "8419d2b623c7c0896ff2d5d96e2cb4ede590fed28fcc34934f4c33c036e620a1" +dependencies = [ + "cfg-if", + "cpufeatures", + "opaque-debug", + "universal-hash", +] [[package]] name = "portable-atomic" @@ -4969,7 +5389,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5f12335488a2f3b0a83b14edad48dca9879ce89b2edd10e80237e4e852dd645e" dependencies = [ "proc-macro2", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -5031,9 +5451,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.85" +version = "1.0.86" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22244ce15aa966053a896d1accb3a6e68469b97c7f33f284b99f0d576879fc23" +checksum = "5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77" dependencies = [ "unicode-ident", ] @@ -5044,7 +5464,7 @@ version = "0.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "731e0d9356b0c25f16f33b5be79b1c57b562f141ebfcdb0ad8ac2c13a24293b4" dependencies = [ - "bitflags 2.5.0", + "bitflags 2.6.0", "hex", "lazy_static", "procfs-core", @@ -5057,7 +5477,7 @@ version = "0.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2d3554923a69f4ce04c4a754260c338f505ce22642d3830e049a399fc2059a29" dependencies = [ - "bitflags 2.5.0", + "bitflags 2.6.0", "hex", ] @@ -5072,7 +5492,7 @@ dependencies = [ "lazy_static", "libc", "memchr", - "parking_lot", + "parking_lot 0.12.3", "procfs", "protobuf", "thiserror", @@ -5080,17 +5500,17 @@ dependencies = [ [[package]] name = "proptest" -version = "1.4.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31b476131c3c86cb68032fdc5cb6d5a1045e3e42d96b69fa599fd77701e1f5bf" +checksum = "b4c2511913b88df1637da85cc8d96ec8e43a3f8bb8ccb71ee1ac240d6f3df58d" dependencies = [ "bit-set", "bit-vec", - "bitflags 2.5.0", + "bitflags 2.6.0", "lazy_static", "num-traits", - "rand", - "rand_chacha", + "rand 0.8.5", + "rand_chacha 0.3.1", "rand_xorshift", "regex-syntax 0.8.4", "rusty-fork", @@ -5125,7 +5545,7 @@ dependencies = [ "prost", "prost-types", "regex", - "syn 2.0.66", + "syn 2.0.68", "tempfile", ] @@ -5139,7 +5559,7 @@ dependencies = [ "itertools 0.12.1", "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -5172,6 +5592,53 @@ version = "1.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0" +[[package]] +name = "quinn" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e4ceeeeabace7857413798eb1ffa1e9c905a9946a57d81fb69b4b71c4d8eb3ad" +dependencies = [ + "bytes", + "pin-project-lite", + "quinn-proto", + "quinn-udp", + "rustc-hash", + "rustls 0.23.10", + "thiserror", + "tokio", + "tracing", +] + +[[package]] +name = "quinn-proto" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ddf517c03a109db8100448a4be38d498df8a210a99fe0e1b9eaf39e78c640efe" +dependencies = [ + "bytes", + "rand 0.8.5", + "ring 0.17.8", + "rustc-hash", + "rustls 0.23.10", + "slab", + "thiserror", + "tinyvec", + "tracing", +] + +[[package]] +name = "quinn-udp" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9096629c45860fc7fb143e125eb826b5e721e10be3263160c7d60ca832cf8c46" +dependencies = [ + "libc", + "once_cell", + "socket2 0.5.7", + "tracing", + "windows-sys 0.52.0", +] + [[package]] name = "quote" version = "1.0.36" @@ -5203,13 +5670,17 @@ dependencies = [ "alloy-transport-http", "anyhow", "assert_cmd", - "c-kzg-taiko", + "c-kzg", "clap 4.5.7", "ethers-core 2.0.10", "raiko-lib", "reqwest 0.11.27", - "reqwest 0.12.4", - "revm", + "reqwest 0.12.5", + "reth-evm", + "reth-evm-ethereum", + "reth-primitives", + "reth-provider", + "reth-revm", "risc0-driver", "rstest", "serde", @@ -5242,7 +5713,7 @@ dependencies = [ "axum", "bincode", "bytemuck", - "c-kzg-taiko", + "c-kzg", "cap", "cfg-if", "clap 4.5.7", @@ -5258,8 +5729,11 @@ dependencies = [ "raiko-core", "raiko-lib", "reqwest 0.11.27", - "reqwest 0.12.4", - "revm", + "reqwest 0.12.5", + "reth-evm", + "reth-evm-ethereum", + "reth-primitives", + "reth-provider", "risc0-driver", "rlp", "rstest", @@ -5288,7 +5762,6 @@ version = "0.1.0" dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-network", "alloy-primitives", "alloy-rlp", "alloy-rlp-derive", @@ -5296,7 +5769,7 @@ dependencies = [ "alloy-sol-types", "anyhow", "bincode", - "c-kzg-taiko", + "c-kzg", "cfg-if", "chrono", "flate2", @@ -5306,8 +5779,10 @@ dependencies = [ "libflate", "log", "once_cell", - "revm", - "revm-primitives", + "reth-chainspec", + "reth-evm", + "reth-evm-ethereum", + "reth-primitives", "rlp", "serde", "serde_json", @@ -5370,8 +5845,7 @@ dependencies = [ "proptest", "raiko-lib", "reqwest 0.11.27", - "reqwest 0.12.4", - "revm", + "reqwest 0.12.5", "rlp", "rstest", "serde", @@ -5389,6 +5863,19 @@ dependencies = [ "url", ] +[[package]] +name = "rand" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03" +dependencies = [ + "getrandom 0.1.16", + "libc", + "rand_chacha 0.2.2", + "rand_core 0.5.1", + "rand_hc", +] + [[package]] name = "rand" version = "0.8.5" @@ -5396,8 +5883,18 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" dependencies = [ "libc", - "rand_chacha", - "rand_core", + "rand_chacha 0.3.1", + "rand_core 0.6.4", +] + +[[package]] +name = "rand_chacha" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402" +dependencies = [ + "ppv-lite86", + "rand_core 0.5.1", ] [[package]] @@ -5407,7 +5904,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" dependencies = [ "ppv-lite86", - "rand_core", + "rand_core 0.6.4", +] + +[[package]] +name = "rand_core" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19" +dependencies = [ + "getrandom 0.1.16", ] [[package]] @@ -5416,7 +5922,16 @@ version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" dependencies = [ - "getrandom", + "getrandom 0.2.15", +] + +[[package]] +name = "rand_hc" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c" +dependencies = [ + "rand_core 0.5.1", ] [[package]] @@ -5425,7 +5940,7 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d25bf25ec5ae4a3f1b92f929810509a2f53d7dca2f50b794ff57e3face536c8f" dependencies = [ - "rand_core", + "rand_core 0.6.4", ] [[package]] @@ -5465,11 +5980,20 @@ dependencies = [ [[package]] name = "redox_syscall" -version = "0.5.1" +version = "0.2.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a" +dependencies = [ + "bitflags 1.3.2", +] + +[[package]] +name = "redox_syscall" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "469052894dcb553421e483e4209ee581a45100d31b4018de03e5a7ad86374a7e" +checksum = "c82cf8cff14456045f55ec4241383baeff27af886adb72ffb2162f99911de0fd" dependencies = [ - "bitflags 2.5.0", + "bitflags 2.6.0", ] [[package]] @@ -5478,7 +6002,7 @@ version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bd283d9651eeda4b2a83a43c1c91b266c40fd76ecd39a50a8c630ae69dc72891" dependencies = [ - "getrandom", + "getrandom 0.2.15", "libredox", "thiserror", ] @@ -5579,9 +6103,9 @@ dependencies = [ [[package]] name = "reqwest" -version = "0.12.4" +version = "0.12.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "566cafdd92868e0939d3fb961bd0dc25fcfaaed179291093b3d43e6b3150ea10" +checksum = "c7d6d2a27d57148378eb5e111173f4276ad26340ecc5c49a4a2152167a2d6a37" dependencies = [ "base64 0.22.1", "bytes", @@ -5593,7 +6117,7 @@ dependencies = [ "http-body 1.0.0", "http-body-util", "hyper 1.3.1", - "hyper-rustls 0.26.0", + "hyper-rustls 0.27.2", "hyper-tls 0.6.0", "hyper-util", "ipnet", @@ -5604,17 +6128,18 @@ dependencies = [ "once_cell", "percent-encoding", "pin-project-lite", - "rustls 0.22.4", + "quinn", + "rustls 0.23.10", "rustls-pemfile 2.1.2", "rustls-pki-types", "serde", "serde_json", "serde_urlencoded", - "sync_wrapper 0.1.2", + "sync_wrapper 1.0.1", "system-configuration", "tokio", "tokio-native-tls", - "tokio-rustls 0.25.0", + "tokio-rustls 0.26.0", "tokio-util", "tower-service", "url", @@ -5622,29 +6147,714 @@ dependencies = [ "wasm-bindgen-futures", "wasm-streams", "web-sys", - "webpki-roots 0.26.2", + "webpki-roots 0.26.3", "winreg 0.52.0", ] [[package]] -name = "reqwest-middleware" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a45d100244a467870f6cb763c4484d010a6bed6bd610b3676e3825d93fb4cfbd" +name = "reqwest-middleware" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a45d100244a467870f6cb763c4484d010a6bed6bd610b3676e3825d93fb4cfbd" +dependencies = [ + "anyhow", + "async-trait", + "http 1.1.0", + "reqwest 0.12.5", + "serde", + "thiserror", + "tower-service", +] + +[[package]] +name = "reth-blockchain-tree-api" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "reth-consensus", + "reth-execution-errors", + "reth-primitives", + "reth-storage-errors", + "thiserror", +] + +[[package]] +name = "reth-chainspec" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-chains", + "alloy-eips", + "alloy-genesis", + "alloy-primitives", + "alloy-trie", + "derive_more", + "once_cell", + "reth-ethereum-forks", + "reth-primitives-traits", + "reth-trie-common", + "serde", + "serde_json", +] + +[[package]] +name = "reth-codecs" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-genesis", + "alloy-primitives", + "bytes", + "modular-bitfield", + "reth-codecs-derive", + "serde", +] + +[[package]] +name = "reth-codecs-derive" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "convert_case 0.6.0", + "proc-macro2", + "quote", + "syn 2.0.68", +] + +[[package]] +name = "reth-consensus" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "auto_impl", + "reth-primitives", + "thiserror-no-std", +] + +[[package]] +name = "reth-consensus-common" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "reth-chainspec", + "reth-consensus", + "reth-primitives", +] + +[[package]] +name = "reth-db" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "bytes", + "derive_more", + "eyre", + "metrics", + "paste", + "reth-db-api", + "reth-fs-util", + "reth-metrics", + "reth-primitives", + "reth-prune-types", + "reth-stages-types", + "reth-storage-errors", + "reth-tracing", + "reth-trie-common", + "rustc-hash", + "serde", + "strum 0.26.3", + "sysinfo", + "thiserror", +] + +[[package]] +name = "reth-db-api" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "bytes", + "derive_more", + "metrics", + "modular-bitfield", + "parity-scale-codec", + "reth-codecs", + "reth-primitives", + "reth-prune-types", + "reth-stages-types", + "reth-storage-errors", + "reth-trie-common", + "serde", +] + +[[package]] +name = "reth-discv4" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-primitives", + "alloy-rlp", + "discv5", + "enr 0.12.1", + "generic-array 0.14.7", + "parking_lot 0.12.3", + "reth-ethereum-forks", + "reth-net-common", + "reth-net-nat", + "reth-network-peers", + "schnellru", + "secp256k1", + "serde", + "thiserror", + "tokio", + "tokio-stream", + "tracing", +] + +[[package]] +name = "reth-ecies" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "aes 0.8.4", + "alloy-primitives", + "alloy-rlp", + "block-padding", + "byteorder", + "cipher 0.4.4", + "concat-kdf", + "ctr 0.9.2", + "digest 0.10.7", + "futures", + "generic-array 0.14.7", + "hmac", + "pin-project", + "rand 0.8.5", + "reth-network-peers", + "secp256k1", + "sha2", + "sha3", + "thiserror", + "tokio", + "tokio-stream", + "tokio-util", + "tracing", + "typenum", +] + +[[package]] +name = "reth-errors" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "reth-blockchain-tree-api", + "reth-consensus", + "reth-execution-errors", + "reth-fs-util", + "reth-storage-errors", + "thiserror", +] + +[[package]] +name = "reth-eth-wire" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-rlp", + "bytes", + "derive_more", + "futures", + "pin-project", + "reth-chainspec", + "reth-codecs", + "reth-discv4", + "reth-ecies", + "reth-eth-wire-types", + "reth-metrics", + "reth-network-peers", + "reth-primitives", + "serde", + "snap", + "thiserror", + "tokio", + "tokio-stream", + "tokio-util", + "tracing", +] + +[[package]] +name = "reth-eth-wire-types" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-rlp", + "bytes", + "derive_more", + "reth-chainspec", + "reth-codecs-derive", + "reth-primitives", + "serde", + "thiserror", +] + +[[package]] +name = "reth-ethereum-consensus" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "reth-chainspec", + "reth-consensus", + "reth-consensus-common", + "reth-primitives", + "tracing", +] + +[[package]] +name = "reth-ethereum-forks" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-chains", + "alloy-primitives", + "alloy-rlp", + "crc", + "serde", + "thiserror-no-std", +] + +[[package]] +name = "reth-evm" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "auto_impl", + "futures-util", + "reth-chainspec", + "reth-execution-errors", + "reth-execution-types", + "reth-primitives", + "reth-prune-types", + "reth-storage-errors", + "revm", + "revm-primitives", +] + +[[package]] +name = "reth-evm-ethereum" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-eips", + "alloy-sol-types", + "anyhow", + "lazy_static", + "reth-chainspec", + "reth-ethereum-consensus", + "reth-evm", + "reth-execution-types", + "reth-primitives", + "reth-prune-types", + "reth-revm", + "revm-primitives", +] + +[[package]] +name = "reth-execution-errors" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-eips", + "alloy-primitives", + "reth-consensus", + "reth-prune-types", + "reth-storage-errors", + "revm-primitives", + "thiserror-no-std", +] + +[[package]] +name = "reth-execution-types" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "reth-execution-errors", + "reth-primitives", + "reth-trie", + "revm", +] + +[[package]] +name = "reth-fs-util" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "serde_json", + "thiserror", +] + +[[package]] +name = "reth-metrics" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "metrics", + "reth-metrics-derive", +] + +[[package]] +name = "reth-metrics-derive" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "once_cell", + "proc-macro2", + "quote", + "regex", + "syn 2.0.68", +] + +[[package]] +name = "reth-net-common" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-primitives", + "tokio", +] + +[[package]] +name = "reth-net-nat" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "futures-util", + "reqwest 0.12.5", + "serde_with", + "thiserror", + "tokio", +] + +[[package]] +name = "reth-network-api" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-primitives", + "enr 0.12.1", + "reth-eth-wire", + "reth-network-peers", + "reth-rpc-types", + "serde", + "thiserror", + "tokio", +] + +[[package]] +name = "reth-network-p2p" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "auto_impl", + "futures", + "reth-consensus", + "reth-eth-wire-types", + "reth-network-api", + "reth-network-peers", + "reth-primitives", + "reth-storage-errors", + "thiserror", + "tokio", + "tracing", +] + +[[package]] +name = "reth-network-peers" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-primitives", + "alloy-rlp", + "enr 0.12.1", + "secp256k1", + "serde_with", + "thiserror", + "tokio", + "url", +] + +[[package]] +name = "reth-nippy-jar" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "anyhow", + "bincode", + "cuckoofilter", + "derive_more", + "lz4_flex", + "memmap2 0.7.1", + "ph", + "reth-fs-util", + "serde", + "sucds", + "thiserror", + "tracing", + "zstd", +] + +[[package]] +name = "reth-primitives" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-genesis", + "alloy-primitives", + "alloy-rlp", + "alloy-rpc-types", + "byteorder", + "bytes", + "c-kzg", + "derive_more", + "modular-bitfield", + "once_cell", + "rayon", + "reth-chainspec", + "reth-codecs", + "reth-ethereum-forks", + "reth-primitives-traits", + "reth-static-file-types", + "reth-trie-common", + "revm", + "revm-primitives", + "roaring", + "secp256k1", + "serde", + "tempfile", + "thiserror-no-std", +] + +[[package]] +name = "reth-primitives-traits" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-genesis", + "alloy-primitives", + "alloy-rlp", + "alloy-rpc-types-eth", + "bytes", + "derive_more", + "modular-bitfield", + "reth-codecs", + "revm-primitives", + "serde", +] + +[[package]] +name = "reth-provider" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-rpc-types-engine", + "auto_impl", + "dashmap", + "itertools 0.12.1", + "metrics", + "parking_lot 0.12.3", + "pin-project", + "rayon", + "reth-blockchain-tree-api", + "reth-chainspec", + "reth-codecs", + "reth-db", + "reth-db-api", + "reth-errors", + "reth-evm", + "reth-execution-types", + "reth-fs-util", + "reth-metrics", + "reth-network-p2p", + "reth-nippy-jar", + "reth-primitives", + "reth-prune-types", + "reth-stages-types", + "reth-storage-api", + "reth-storage-errors", + "reth-trie", + "revm", + "strum 0.26.3", + "tokio", + "tokio-stream", + "tracing", +] + +[[package]] +name = "reth-prune-types" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-primitives", + "bytes", + "derive_more", + "modular-bitfield", + "reth-codecs", + "serde", + "thiserror", +] + +[[package]] +name = "reth-revm" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-eips", + "alloy-rlp", + "reth-chainspec", + "reth-consensus-common", + "reth-execution-errors", + "reth-primitives", + "reth-prune-types", + "reth-storage-api", + "reth-storage-errors", + "revm", + "tracing", +] + +[[package]] +name = "reth-rpc-types" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-primitives", + "alloy-rpc-types", + "alloy-rpc-types-admin", + "alloy-rpc-types-anvil", + "alloy-rpc-types-beacon", + "alloy-rpc-types-engine", + "alloy-rpc-types-trace", + "alloy-rpc-types-txpool", + "alloy-serde", + "jsonrpsee-types", + "serde", + "serde_json", +] + +[[package]] +name = "reth-stages-types" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-primitives", + "bytes", + "modular-bitfield", + "reth-codecs", + "reth-trie-common", + "serde", +] + +[[package]] +name = "reth-static-file-types" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-primitives", + "derive_more", + "serde", + "strum 0.26.3", +] + +[[package]] +name = "reth-storage-api" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "auto_impl", + "reth-chainspec", + "reth-db-api", + "reth-execution-types", + "reth-primitives", + "reth-prune-types", + "reth-stages-types", + "reth-storage-errors", + "reth-trie", + "revm", +] + +[[package]] +name = "reth-storage-errors" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "reth-fs-util", + "reth-primitives", + "thiserror-no-std", +] + +[[package]] +name = "reth-tracing" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "clap 4.5.7", + "eyre", + "rolling-file", + "tracing", + "tracing-appender", + "tracing-journald", + "tracing-logfmt", + "tracing-subscriber 0.3.18", +] + +[[package]] +name = "reth-trie" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" dependencies = [ - "anyhow", - "async-trait", - "http 1.1.0", - "reqwest 0.12.4", + "alloy-rlp", + "auto_impl", + "derive_more", + "metrics", + "rayon", + "reth-db", + "reth-db-api", + "reth-execution-errors", + "reth-metrics", + "reth-primitives", + "reth-stages-types", + "reth-trie-common", + "revm", + "tracing", +] + +[[package]] +name = "reth-trie-common" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-consensus", + "alloy-genesis", + "alloy-primitives", + "alloy-rlp", + "alloy-trie", + "bytes", + "derive_more", + "itertools 0.12.1", + "nybbles", + "reth-codecs", + "reth-primitives-traits", + "revm-primitives", "serde", - "thiserror", - "tower-service", ] [[package]] name = "revm" -version = "8.0.0" -source = "git+https://github.com/taikoxyz/revm.git?branch=v35-taiko#7d23b1c557cf3d0e93f859b6794e580b9f0381c2" +version = "9.0.0" +source = "git+https://github.com/taikoxyz/revm.git?branch=v36-taiko#787302e80d35c1b41d62a9119110a281c5dbe1c8" dependencies = [ "auto_impl", "cfg-if", @@ -5657,8 +6867,8 @@ dependencies = [ [[package]] name = "revm-interpreter" -version = "4.0.0" -source = "git+https://github.com/taikoxyz/revm.git?branch=v35-taiko#7d23b1c557cf3d0e93f859b6794e580b9f0381c2" +version = "5.0.0" +source = "git+https://github.com/taikoxyz/revm.git?branch=v36-taiko#787302e80d35c1b41d62a9119110a281c5dbe1c8" dependencies = [ "revm-primitives", "serde", @@ -5666,31 +6876,31 @@ dependencies = [ [[package]] name = "revm-precompile" -version = "6.0.0" -source = "git+https://github.com/taikoxyz/revm.git?branch=v35-taiko#7d23b1c557cf3d0e93f859b6794e580b9f0381c2" +version = "7.0.0" +source = "git+https://github.com/taikoxyz/revm.git?branch=v36-taiko#787302e80d35c1b41d62a9119110a281c5dbe1c8" dependencies = [ "aurora-engine-modexp", - "c-kzg-taiko", - "cfg-if", + "blst", + "c-kzg", "k256", "once_cell", "revm-primitives", "ripemd", - "secp256k1 0.28.2", + "secp256k1", "sha2", "substrate-bn", ] [[package]] name = "revm-primitives" -version = "3.1.1" -source = "git+https://github.com/taikoxyz/revm.git?branch=v35-taiko#7d23b1c557cf3d0e93f859b6794e580b9f0381c2" +version = "4.0.0" +source = "git+https://github.com/taikoxyz/revm.git?branch=v36-taiko#787302e80d35c1b41d62a9119110a281c5dbe1c8" dependencies = [ "alloy-primitives", "auto_impl", - "bitflags 2.5.0", + "bitflags 2.6.0", "bitvec", - "c-kzg-taiko", + "c-kzg", "cfg-if", "derive_more", "dyn-clone", @@ -5734,7 +6944,7 @@ checksum = "c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d" dependencies = [ "cc", "cfg-if", - "getrandom", + "getrandom 0.2.15", "libc", "spin 0.9.8", "untrusted 0.9.0", @@ -5796,7 +7006,7 @@ dependencies = [ "downloader", "hex", "metal", - "rand", + "rand 0.8.5", "rayon", "risc0-circuit-recursion-sys", "risc0-core", @@ -5826,7 +7036,7 @@ dependencies = [ "anyhow", "cust", "metal", - "rand", + "rand 0.8.5", "rayon", "risc0-circuit-rv32im-sys", "risc0-core", @@ -5853,7 +7063,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "02e0cbd09d03c23b572b66cd96a56143adb22bf895aca89c1a153ccebedaa0b4" dependencies = [ "bytemuck", - "rand_core", + "rand_core 0.6.4", ] [[package]] @@ -5944,8 +7154,8 @@ dependencies = [ "metal", "ndarray", "paste", - "rand", - "rand_core", + "rand 0.8.5", + "rand_core 0.6.4", "rayon", "risc0-core", "risc0-sys", @@ -5970,7 +7180,7 @@ dependencies = [ "cfg-if", "crypto-bigint", "elf", - "getrandom", + "getrandom 0.2.15", "hex", "human-repr", "lazy-regex", @@ -6004,7 +7214,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "03b6378c9e407be18a1560ed030fd87fb6056293c56263efac46c507ae97e0d7" dependencies = [ "bytemuck", - "getrandom", + "getrandom 0.2.15", "libm", ] @@ -6036,6 +7246,25 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "roaring" +version = "0.10.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7699249cc2c7d71939f30868f47e9d7add0bdc030d90ee10bfd16887ff8bb1c8" +dependencies = [ + "bytemuck", + "byteorder", +] + +[[package]] +name = "rolling-file" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8395b4f860856b740f20a296ea2cd4d823e81a2658cf05ef61be22916026a906" +dependencies = [ + "chrono", +] + [[package]] name = "rrs-lib" version = "0.1.0" @@ -6081,7 +7310,7 @@ dependencies = [ "regex", "relative-path", "rustc_version 0.4.0", - "syn 2.0.66", + "syn 2.0.68", "unicode-ident", ] @@ -6101,7 +7330,7 @@ dependencies = [ "parity-scale-codec", "primitive-types", "proptest", - "rand", + "rand 0.8.5", "rlp", "ruint-macro", "serde", @@ -6135,7 +7364,7 @@ dependencies = [ "proc-macro2", "quote", "rust-embed-utils", - "syn 2.0.66", + "syn 2.0.68", "walkdir", ] @@ -6191,7 +7420,7 @@ version = "0.38.34" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "70dc5ec042f7a43c4a73241207cecc9873a06d45debb38b329f8541d85c2730f" dependencies = [ - "bitflags 2.5.0", + "bitflags 2.6.0", "errno", "libc", "linux-raw-sys", @@ -6212,11 +7441,11 @@ dependencies = [ [[package]] name = "rustls" -version = "0.22.4" +version = "0.23.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf4ef73721ac7bcd79b2b315da7779d8fc09718c6b3d2d1b2d94850eb8c18432" +checksum = "05cff451f60db80f490f3c182b77c35260baace73209e9cdbbe526bfe3a4d402" dependencies = [ - "log", + "once_cell", "ring 0.17.8", "rustls-pki-types", "rustls-webpki 0.102.4", @@ -6311,7 +7540,7 @@ version = "0.10.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "97a22f5af31f73a954c10289c93e8a50cc23d971e80ee446f1f6f7137a088213" dependencies = [ - "cipher", + "cipher 0.4.4", ] [[package]] @@ -6365,6 +7594,17 @@ dependencies = [ "windows-sys 0.52.0", ] +[[package]] +name = "schnellru" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c9a8ef13a93c54d20580de1e5c413e624e53121d42fc7e2c11d10ef7f8b02367" +dependencies = [ + "ahash", + "cfg-if", + "hashbrown 0.13.2", +] + [[package]] name = "scopeguard" version = "1.2.0" @@ -6413,32 +7653,14 @@ dependencies = [ "zeroize", ] -[[package]] -name = "secp256k1" -version = "0.28.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d24b59d129cdadea20aea4fb2352fa053712e5d713eee47d700cd4b2bc002f10" -dependencies = [ - "rand", - "secp256k1-sys 0.9.2", -] - [[package]] name = "secp256k1" version = "0.29.0" source = "git+https://github.com/CeciliaZ030/rust-secp256k1?branch=sp1-patch#09fe6ec0c0f0de848da5e295022029f46e0389e3" dependencies = [ - "rand", - "secp256k1-sys 0.10.0", -] - -[[package]] -name = "secp256k1-sys" -version = "0.9.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5d1746aae42c19d583c3c1a8c646bfad910498e2051c551a7f2e3c0c9fbb7eb" -dependencies = [ - "cc", + "rand 0.8.5", + "secp256k1-sys", + "serde", ] [[package]] @@ -6455,7 +7677,7 @@ version = "2.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c627723fd09706bacdb5cf41499e95098555af3c3c29d014dc3c458ef6be11c0" dependencies = [ - "bitflags 2.5.0", + "bitflags 2.6.0", "core-foundation", "core-foundation-sys", "libc", @@ -6521,6 +7743,15 @@ dependencies = [ "serde_derive", ] +[[package]] +name = "serde_bytes" +version = "0.11.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b8497c313fd43ab992087548117643f6fcd935cbf36f176ffda0aacf9591734" +dependencies = [ + "serde", +] + [[package]] name = "serde_derive" version = "1.0.203" @@ -6529,7 +7760,7 @@ checksum = "500cbc0ebeb6f46627f50f3f5811ccf6bf00643be300b4c3eabc0ef55dc5b5ba" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -6602,7 +7833,7 @@ dependencies = [ "darling", "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -6614,7 +7845,7 @@ dependencies = [ "futures", "log", "once_cell", - "parking_lot", + "parking_lot 0.12.3", "scc", "serial_test_derive", ] @@ -6627,7 +7858,7 @@ checksum = "82fe9db325bcef1fbcde82e078a5cc4efdf787e96b3b9cf45b50b529f2083d67" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -6642,9 +7873,9 @@ dependencies = [ "dirs", "hex", "raiko-lib", - "rand", - "rand_core", - "secp256k1 0.29.0", + "rand 0.8.5", + "rand_core 0.6.4", + "secp256k1", "serde", "serde_json", "sha3", @@ -6660,7 +7891,7 @@ dependencies = [ "alloy-provider", "alloy-rpc-client", "alloy-signer", - "alloy-signer-wallet", + "alloy-signer-local", "alloy-sol-types", "alloy-transport-http", "anyhow", @@ -6748,7 +7979,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de" dependencies = [ "digest 0.10.7", - "rand_core", + "rand_core 0.6.4", ] [[package]] @@ -6783,6 +8014,15 @@ name = "smallvec" version = "1.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" +dependencies = [ + "serde", +] + +[[package]] +name = "snap" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1b6b67fb9a61334225b5b790716f609cd58395f895b3fe8b328786812a40bc3b" [[package]] name = "snowbridge-amcl" @@ -6794,6 +8034,16 @@ dependencies = [ "scale-info", ] +[[package]] +name = "socket2" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f7916fc008ca5542385b89a3d3ce689953c143e9304a9bf8beec1de48994c0d" +dependencies = [ + "libc", + "winapi", +] + [[package]] name = "socket2" version = "0.5.7" @@ -6814,19 +8064,20 @@ dependencies = [ [[package]] name = "sp1-core" version = "0.1.0" -source = "git+https://github.com/succinctlabs/sp1.git?branch=main#8c0f5010606f9c2306effe60412d421c23e88afa" +source = "git+https://github.com/succinctlabs/sp1.git?branch=main#14eb569d41d24721ffbd407d6060e202482d659c" dependencies = [ "anyhow", "arrayref", "bincode", "blake3", + "bytemuck", "cfg-if", "curve25519-dalek", "elf", "elliptic-curve", "generic-array 1.0.0", "hex", - "itertools 0.12.1", + "itertools 0.13.0", "k256", "log", "nohash-hasher", @@ -6850,6 +8101,7 @@ dependencies = [ "p3-symmetric", "p3-uni-stark", "p3-util", + "rand 0.8.5", "rayon-scan", "rrs-lib 0.1.0 (git+https://github.com/GregAC/rrs.git)", "serde", @@ -6858,7 +8110,7 @@ dependencies = [ "snowbridge-amcl", "sp1-derive", "sp1-primitives", - "strum 0.26.2", + "strum 0.26.3", "strum_macros 0.26.4", "tempfile", "thiserror", @@ -6872,7 +8124,7 @@ dependencies = [ [[package]] name = "sp1-derive" version = "0.1.0" -source = "git+https://github.com/succinctlabs/sp1.git?branch=main#8c0f5010606f9c2306effe60412d421c23e88afa" +source = "git+https://github.com/succinctlabs/sp1.git?branch=main#14eb569d41d24721ffbd407d6060e202482d659c" dependencies = [ "proc-macro2", "quote", @@ -6897,9 +8149,9 @@ dependencies = [ [[package]] name = "sp1-primitives" version = "0.1.0" -source = "git+https://github.com/succinctlabs/sp1.git?branch=main#8c0f5010606f9c2306effe60412d421c23e88afa" +source = "git+https://github.com/succinctlabs/sp1.git?branch=main#14eb569d41d24721ffbd407d6060e202482d659c" dependencies = [ - "itertools 0.12.1", + "itertools 0.13.0", "lazy_static", "p3-baby-bear", "p3-field", @@ -6910,25 +8162,28 @@ dependencies = [ [[package]] name = "sp1-prover" version = "0.1.0" -source = "git+https://github.com/succinctlabs/sp1.git?branch=main#8c0f5010606f9c2306effe60412d421c23e88afa" +source = "git+https://github.com/succinctlabs/sp1.git?branch=main#14eb569d41d24721ffbd407d6060e202482d659c" dependencies = [ "anyhow", "backtrace", "bincode", + "bytemuck", "clap 4.5.7", "dirs", "futures", "hex", "indicatif", - "itertools 0.12.1", + "itertools 0.13.0", "num-bigint 0.4.5", "p3-baby-bear", "p3-bn254-fr", "p3-challenger", "p3-commit", "p3-field", + "p3-util", + "rand 0.8.5", "rayon", - "reqwest 0.12.4", + "reqwest 0.12.5", "serde", "serde_json", "serial_test", @@ -6952,10 +8207,10 @@ dependencies = [ [[package]] name = "sp1-recursion-circuit" version = "0.1.0" -source = "git+https://github.com/succinctlabs/sp1.git?branch=main#8c0f5010606f9c2306effe60412d421c23e88afa" +source = "git+https://github.com/succinctlabs/sp1.git?branch=main#14eb569d41d24721ffbd407d6060e202482d659c" dependencies = [ "bincode", - "itertools 0.12.1", + "itertools 0.13.0", "p3-air", "p3-baby-bear", "p3-bn254-fr", @@ -6975,10 +8230,10 @@ dependencies = [ [[package]] name = "sp1-recursion-compiler" version = "0.1.0" -source = "git+https://github.com/succinctlabs/sp1.git?branch=main#8c0f5010606f9c2306effe60412d421c23e88afa" +source = "git+https://github.com/succinctlabs/sp1.git?branch=main#14eb569d41d24721ffbd407d6060e202482d659c" dependencies = [ "backtrace", - "itertools 0.12.1", + "itertools 0.13.0", "p3-air", "p3-baby-bear", "p3-bn254-fr", @@ -6999,13 +8254,13 @@ dependencies = [ [[package]] name = "sp1-recursion-core" version = "0.1.0" -source = "git+https://github.com/succinctlabs/sp1.git?branch=main#8c0f5010606f9c2306effe60412d421c23e88afa" +source = "git+https://github.com/succinctlabs/sp1.git?branch=main#14eb569d41d24721ffbd407d6060e202482d659c" dependencies = [ "arrayref", "backtrace", "ff 0.13.0", "hashbrown 0.14.5", - "itertools 0.12.1", + "itertools 0.13.0", "p3-air", "p3-baby-bear", "p3-bn254-fr", @@ -7019,6 +8274,7 @@ dependencies = [ "p3-merkle-tree", "p3-poseidon2", "p3-symmetric", + "p3-util", "serde", "serde_with", "sp1-core", @@ -7032,7 +8288,7 @@ dependencies = [ [[package]] name = "sp1-recursion-derive" version = "0.1.0" -source = "git+https://github.com/succinctlabs/sp1.git?branch=main#8c0f5010606f9c2306effe60412d421c23e88afa" +source = "git+https://github.com/succinctlabs/sp1.git?branch=main#14eb569d41d24721ffbd407d6060e202482d659c" dependencies = [ "proc-macro2", "quote", @@ -7042,18 +8298,24 @@ dependencies = [ [[package]] name = "sp1-recursion-gnark-ffi" version = "0.1.0" -source = "git+https://github.com/succinctlabs/sp1.git?branch=main#8c0f5010606f9c2306effe60412d421c23e88afa" +source = "git+https://github.com/succinctlabs/sp1.git?branch=main#14eb569d41d24721ffbd407d6060e202482d659c" dependencies = [ + "anyhow", + "bincode", "bindgen", "cc", "cfg-if", + "hex", "log", "num-bigint 0.4.5", "p3-baby-bear", "p3-field", - "rand", + "p3-symmetric", + "rand 0.8.5", "serde", "serde_json", + "sha2", + "sp1-core", "sp1-recursion-compiler", "tempfile", ] @@ -7061,9 +8323,9 @@ dependencies = [ [[package]] name = "sp1-recursion-program" version = "0.1.0" -source = "git+https://github.com/succinctlabs/sp1.git?branch=main#8c0f5010606f9c2306effe60412d421c23e88afa" +source = "git+https://github.com/succinctlabs/sp1.git?branch=main#14eb569d41d24721ffbd407d6060e202482d659c" dependencies = [ - "itertools 0.12.1", + "itertools 0.13.0", "p3-air", "p3-baby-bear", "p3-challenger", @@ -7077,7 +8339,7 @@ dependencies = [ "p3-poseidon2", "p3-symmetric", "p3-util", - "rand", + "rand 0.8.5", "serde", "sp1-core", "sp1-recursion-compiler", @@ -7088,7 +8350,7 @@ dependencies = [ [[package]] name = "sp1-sdk" version = "0.1.0" -source = "git+https://github.com/succinctlabs/sp1.git?branch=main#8c0f5010606f9c2306effe60412d421c23e88afa" +source = "git+https://github.com/succinctlabs/sp1.git?branch=main#14eb569d41d24721ffbd407d6060e202482d659c" dependencies = [ "alloy-sol-types", "anyhow", @@ -7107,16 +8369,17 @@ dependencies = [ "p3-field", "p3-matrix", "prost", - "reqwest 0.12.4", + "reqwest 0.12.5", "reqwest-middleware", "serde", "serde_json", "sha2", "sp1-core", "sp1-prover", - "strum 0.26.2", + "strum 0.26.3", "strum_macros 0.26.4", "tempfile", + "thiserror", "tokio", "tracing", "twirp", @@ -7204,9 +8467,9 @@ dependencies = [ [[package]] name = "strum" -version = "0.26.2" +version = "0.26.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d8cec3501a5194c432b2b7976db6b7d10ec95c253208b45f83f7136aa985e29" +checksum = "8fec0f0aef304996cf250b31b5a10dee7980c85da9d759361292b8bca5a18f06" dependencies = [ "strum_macros 0.26.4", ] @@ -7221,7 +8484,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -7234,7 +8497,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -7246,15 +8509,15 @@ dependencies = [ "byteorder", "crunchy", "lazy_static", - "rand", + "rand 0.8.5", "rustc-hex", ] [[package]] name = "subtle" -version = "2.5.0" +version = "2.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc" +checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292" [[package]] name = "subtle-encoding" @@ -7265,6 +8528,16 @@ dependencies = [ "zeroize", ] +[[package]] +name = "sucds" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d53d46182afe6ed822a94c54a532dc0d59691a8f49226bdc4596529ca864cdd6" +dependencies = [ + "anyhow", + "num-traits", +] + [[package]] name = "syn" version = "1.0.109" @@ -7278,9 +8551,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.66" +version = "2.0.68" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c42f3f41a2de00b01c0aaad383c5a45241efc8b2d1eda5661812fda5f3cdcff5" +checksum = "901fa70d88b9d6c98022e23b4136f9f3e54e4662c3bc1bd1d84a42a9a0f0c1e9" dependencies = [ "proc-macro2", "quote", @@ -7296,7 +8569,7 @@ dependencies = [ "paste", "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -7312,14 +8585,17 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a7065abeca94b6a8a577f9bd45aa0867a2238b74e8eb67cf10d492bc39351394" [[package]] -name = "synstructure" -version = "0.13.1" +name = "sysinfo" +version = "0.30.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" +checksum = "732ffa00f53e6b2af46208fba5718d9662a421049204e156328b66791ffa15ae" dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.66", + "cfg-if", + "core-foundation-sys", + "libc", + "ntapi", + "once_cell", + "windows", ] [[package]] @@ -7393,7 +8669,7 @@ checksum = "46c3384250002a6d5af4d114f2845d37b57521033f30d5c3f46c4d70e1197533" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -7477,16 +8753,6 @@ dependencies = [ "crunchy", ] -[[package]] -name = "tinystr" -version = "0.7.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9117f5d4db391c1cf6927e7bea3db74b9a1c1add8f7eda9ffd5364f40f57b82f" -dependencies = [ - "displaydoc", - "zerovec", -] - [[package]] name = "tinyvec" version = "1.6.0" @@ -7513,10 +8779,10 @@ dependencies = [ "libc", "mio", "num_cpus", - "parking_lot", + "parking_lot 0.12.3", "pin-project-lite", "signal-hook-registry", - "socket2", + "socket2 0.5.7", "tokio-macros", "windows-sys 0.48.0", ] @@ -7529,7 +8795,7 @@ checksum = "5f5ae998a069d4b5aba8ee9dad856af7d520c3699e6159b185c2acd48155d39a" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -7554,11 +8820,11 @@ dependencies = [ [[package]] name = "tokio-rustls" -version = "0.25.0" +version = "0.26.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "775e0c0f0adb3a2f22a00c4745d728b479985fc15ee7ca6a2608388c5569860f" +checksum = "0c7bc40d0e5a97695bb96e27995cd3a08538541b0a846f65bba7a359f36700d4" dependencies = [ - "rustls 0.22.4", + "rustls 0.23.10", "rustls-pki-types", "tokio", ] @@ -7600,6 +8866,7 @@ dependencies = [ "futures-core", "futures-sink", "pin-project-lite", + "slab", "tokio", ] @@ -7685,7 +8952,7 @@ dependencies = [ "indexmap 1.9.3", "pin-project", "pin-project-lite", - "rand", + "rand 0.8.5", "slab", "tokio", "tokio-util", @@ -7702,7 +8969,7 @@ checksum = "1e9cd434a998747dd2c4276bc96ee2e0c7a2eadf3cae88e52be55a05fa9053f5" dependencies = [ "async-compression", "base64 0.21.7", - "bitflags 2.5.0", + "bitflags 2.6.0", "bytes", "futures-core", "futures-util", @@ -7722,7 +8989,7 @@ dependencies = [ "tower-layer", "tower-service", "tracing", - "uuid 1.8.0", + "uuid 1.9.1", ] [[package]] @@ -7769,7 +9036,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -7805,6 +9072,17 @@ dependencies = [ "tracing", ] +[[package]] +name = "tracing-journald" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba316a74e8fc3c3896a850dba2375928a9fa171b085ecddfc7c054d39970f3fd" +dependencies = [ + "libc", + "tracing-core", + "tracing-subscriber 0.3.18", +] + [[package]] name = "tracing-log" version = "0.2.0" @@ -7816,6 +9094,18 @@ dependencies = [ "tracing-core", ] +[[package]] +name = "tracing-logfmt" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22b8e455f6caa5212a102ec530bf86b8dc5a4c536299bffd84b238fed9119be7" +dependencies = [ + "time", + "tracing", + "tracing-core", + "tracing-subscriber 0.3.18", +] + [[package]] name = "tracing-serde" version = "0.1.3" @@ -7874,7 +9164,7 @@ dependencies = [ "http 0.2.12", "httparse", "log", - "rand", + "rand 0.8.5", "rustls 0.21.12", "sha1", "thiserror", @@ -7895,7 +9185,7 @@ dependencies = [ "http-body-util", "hyper 1.3.1", "prost", - "reqwest 0.12.4", + "reqwest 0.12.5", "serde", "serde_json", "thiserror", @@ -7947,7 +9237,7 @@ checksum = "ac73887f47b9312552aa90ef477927ff014d63d1920ca8037c6c1951eab64bb1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -7983,12 +9273,27 @@ dependencies = [ "version_check", ] +[[package]] +name = "unicode-bidi" +version = "0.3.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75" + [[package]] name = "unicode-ident" version = "1.0.12" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" +[[package]] +name = "unicode-normalization" +version = "0.1.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5" +dependencies = [ + "tinyvec", +] + [[package]] name = "unicode-segmentation" version = "1.11.0" @@ -8007,6 +9312,16 @@ version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f962df74c8c05a667b5ee8bcf162993134c104e96440b663c8daa176dc772d8c" +[[package]] +name = "universal-hash" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8326b2c654932e3e4f9196e69d08fdf7cfd718e1dc6f66b347e6024a0c961402" +dependencies = [ + "generic-array 0.14.7", + "subtle", +] + [[package]] name = "untrusted" version = "0.7.1" @@ -8021,9 +9336,9 @@ checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" [[package]] name = "url" -version = "2.5.1" +version = "2.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7c25da092f0a868cdf09e8674cd3b7ef3a7d92a24253e663a2fb85e2496de56" +checksum = "22784dbdf76fdde8af1aeda5622b546b422b6fc585325248a2bf9f5e41e94d6c" dependencies = [ "form_urlencoded", "idna", @@ -8036,18 +9351,6 @@ version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9" -[[package]] -name = "utf16_iter" -version = "1.0.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8232dd3cdaed5356e0f716d285e4b40b932ac434100fe9b7e0e8e935b9e6246" - -[[package]] -name = "utf8_iter" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be" - [[package]] name = "utf8parse" version = "0.2.2" @@ -8076,7 +9379,7 @@ dependencies = [ "proc-macro2", "quote", "regex", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -8113,17 +9416,17 @@ version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bc5cf98d8186244414c848017f0e2676b3fcb46807f6668a97dfe67359a3c4b7" dependencies = [ - "getrandom", + "getrandom 0.2.15", "serde", ] [[package]] name = "uuid" -version = "1.8.0" +version = "1.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a183cf7feeba97b4dd1c0d46788634f6221d87fa961b305bed08c851829efcc0" +checksum = "5de17fd2f7da591098415cff336e12965a28061ddace43b59cb3c430179c9439" dependencies = [ - "getrandom", + "getrandom 0.2.15", ] [[package]] @@ -8203,6 +9506,12 @@ dependencies = [ "try-lock", ] +[[package]] +name = "wasi" +version = "0.9.0+wasi-snapshot-preview1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519" + [[package]] name = "wasi" version = "0.11.0+wasi-snapshot-preview1" @@ -8230,7 +9539,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", "wasm-bindgen-shared", ] @@ -8264,7 +9573,7 @@ checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -8316,9 +9625,9 @@ checksum = "5f20c57d8d7db6d3b86154206ae5d8fba62dd39573114de97c2cb0578251f8e1" [[package]] name = "webpki-roots" -version = "0.26.2" +version = "0.26.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c452ad30530b54a4d8e71952716a212b08efd0f3562baa66c29a618b07da7c3" +checksum = "bd7c23921eeb1713a4e851530e9b9756e4fb0e89978582942612524cf09f01cd" dependencies = [ "rustls-pki-types", ] @@ -8366,6 +9675,16 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" +[[package]] +name = "windows" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e48a53791691ab099e5e2ad123536d0fff50652600abaf43bbf952894110d0be" +dependencies = [ + "windows-core", + "windows-targets 0.52.5", +] + [[package]] name = "windows-core" version = "0.52.0" @@ -8552,18 +9871,6 @@ dependencies = [ "windows-sys 0.48.0", ] -[[package]] -name = "write16" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d1890f4022759daae28ed4fe62859b1236caebfc61ede2f63ed4e695f3f6d936" - -[[package]] -name = "writeable" -version = "0.5.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e9df38ee2d2c3c5948ea468a8406ff0db0b29ae1ffde1bcf20ef305bcc95c51" - [[package]] name = "ws_stream_wasm" version = "0.7.4" @@ -8584,36 +9891,21 @@ dependencies = [ ] [[package]] -name = "wyz" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed" -dependencies = [ - "tap", -] - -[[package]] -name = "yoke" -version = "0.7.4" +name = "wyhash" +version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c5b1314b079b0930c31e3af543d8ee1757b1951ae1e1565ec704403a7240ca5" +checksum = "baf6e163c25e3fac820b4b453185ea2dea3b6a3e0a721d4d23d75bd33734c295" dependencies = [ - "serde", - "stable_deref_trait", - "yoke-derive", - "zerofrom", + "rand_core 0.6.4", ] [[package]] -name = "yoke-derive" -version = "0.7.4" +name = "wyz" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28cc31741b18cb6f1d5ff12f5b7523e3d6eb0852bbbad19d73905511d9849b95" +checksum = "05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed" dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.66", - "synstructure", + "tap", ] [[package]] @@ -8633,28 +9925,7 @@ checksum = "15e934569e47891f7d9411f1a451d947a60e000ab3bd24fbb970f000387d1b3b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", -] - -[[package]] -name = "zerofrom" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91ec111ce797d0e0784a1116d0ddcdbea84322cd79e5d5ad173daeba4f93ab55" -dependencies = [ - "zerofrom-derive", -] - -[[package]] -name = "zerofrom-derive" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ea7b4a3637ea8669cedf0f1fd5c286a17f3de97b8dd5a70a6c167a1730e63a5" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.66", - "synstructure", + "syn 2.0.68", ] [[package]] @@ -8674,29 +9945,7 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", -] - -[[package]] -name = "zerovec" -version = "0.10.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb2cc8827d6c0994478a15c53f374f46fbd41bea663d809b14744bc42e6b109c" -dependencies = [ - "yoke", - "zerofrom", - "zerovec-derive", -] - -[[package]] -name = "zerovec-derive" -version = "0.10.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97cf56601ee5052b4417d90c8755c6683473c926039908196cf35d99f893ebe7" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -8730,7 +9979,7 @@ dependencies = [ "jubjub", "lazy_static", "pasta_curves 0.5.1", - "rand", + "rand 0.8.5", "serde", "sha2", "sha3", @@ -8757,9 +10006,9 @@ dependencies = [ [[package]] name = "zstd-sys" -version = "2.0.10+zstd.1.5.6" +version = "2.0.11+zstd.1.5.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c253a4914af5bafc8fa8c86ee400827e83cf6ec01195ec1f1ed8441bf00d65aa" +checksum = "75652c55c0b6f3e6f12eb786fe1bc960396bf05a1eb3bf1f3691c3610ac2e6d4" dependencies = [ "cc", "pkg-config", diff --git a/Cargo.toml b/Cargo.toml index fde793c2..090ba25c 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -36,14 +36,14 @@ opt-level = 3 raiko-lib = { path = "./lib", features = ["std"] } raiko-core = { path = "./core" } -# revm -revm-primitives = { git = "https://github.com/taikoxyz/revm.git", branch = "v35-taiko", default-features = false } -revm = { git = "https://github.com/taikoxyz/revm.git", branch = "v35-taiko", default-features = false, features = [ - "serde", - "std", - "c-kzg", - "taiko", -] } +# reth +reth-primitives = { git = "https://github.com/taikoxyz/taiko-reth.git", branch = "v1.0.0-rc.2-taiko", default-features = false, features = ["alloy-compat", "taiko"] } +reth-evm-ethereum = { git = "https://github.com/taikoxyz/taiko-reth.git", branch = "v1.0.0-rc.2-taiko" } +reth-evm = { git = "https://github.com/taikoxyz/taiko-reth.git", branch = "v1.0.0-rc.2-taiko", default-features = false } +reth-rpc-types = { git = "https://github.com/taikoxyz/taiko-reth.git", branch = "v1.0.0-rc.2-taiko" } +reth-revm = { git = "https://github.com/taikoxyz/taiko-reth.git", branch = "v1.0.0-rc.2-taiko" } +reth-chainspec = { git = "https://github.com/taikoxyz/taiko-reth.git", branch = "v1.0.0-rc.2-taiko" } +reth-provider = { git = "https://github.com/taikoxyz/taiko-reth.git", branch = "v1.0.0-rc.2-taiko", default-features = false } # risc zero risc0-zkvm = { version = "0.21.0", features = ["prove", "getrandom"] } @@ -59,29 +59,29 @@ sp1-helper = { git = "https://github.com/succinctlabs/sp1.git", branch = "main" # alloy alloy-rlp = { version = "0.3.4", default-features = false } alloy-rlp-derive = { version = "0.3.4", default-features = false } -alloy-core = { version = "0.7.1", default-features = false } -alloy-dyn-abi = { version = "0.7.1", default-features = false } -alloy-json-abi = { version = "0.7.1", default-features = false } -alloy-primitives = { version = "0.7.1", default-features = false } -alloy-sol-types = { version = "0.7.1", default-features = false } -alloy-rpc-types = { git = "https://github.com/ceciliaz030/alloy", branch = "175_4e22b9e-cycle" } -alloy-rpc-client = { git = "https://github.com/ceciliaz030/alloy", branch = "175_4e22b9e-cycle" } -alloy-consensus = { git = "https://github.com/ceciliaz030/alloy", branch = "175_4e22b9e-cycle", features = [ +alloy-core = { version = "0.7.2", default-features = false } +alloy-dyn-abi = { version = "0.7.2", default-features = false } +alloy-json-abi = { version = "0.7.2", default-features = false } +alloy-primitives = { version = "0.7.2", default-features = false } +alloy-sol-types = { version = "0.7.2", default-features = false } +reqwest_alloy = { package = "reqwest", version = "0.12.4", features = ["json"] } + +alloy-rpc-types = { version = "0.1" } +alloy-rpc-client = { version = "0.1" } +alloy-consensus = { version = "0.1", features = [ "serde", ] } -alloy-network = { git = "https://github.com/ceciliaz030/alloy", branch = "175_4e22b9e-cycle", features = [ +alloy-network = { version = "0.1", default-features = false, features = [ "k256", ] } -alloy-contract = { git = "https://github.com/ceciliaz030/alloy", branch = "175_4e22b9e-cycle" } -alloy-eips = { git = "https://github.com/ceciliaz030/alloy", branch = "175_4e22b9e-cycle", features = [ +alloy-contract = { version = "0.1" } +alloy-eips = { version = "0.1", default-features = false, features = [ "serde", ] } -alloy-provider = { git = "https://github.com/ceciliaz030/alloy", branch = "175_4e22b9e-cycle" } -alloy-transport-http = { git = "https://github.com/ceciliaz030/alloy", branch = "175_4e22b9e-cycle" } -alloy-signer = { git = "https://github.com/ceciliaz030/alloy", branch = "175_4e22b9e-cycle" } -alloy-signer-wallet = { git = "https://github.com/ceciliaz030/alloy", branch = "175_4e22b9e-cycle" } -reqwest_alloy = { package = "reqwest", version = "0.12.4", features = ["json"] } - +alloy-provider = { version = "0.1" } +alloy-transport-http = { version = "0.1" } +alloy-signer = { version = "0.1" } +alloy-signer-local = { version = "0.1" } # ethers (TODO: remove) ethers-contract = { git = "https://github.com/smtmfft/ethers-rs", branch = "ethers-core-2.0.10" } @@ -133,7 +133,7 @@ reqwest = { version = "0.11.22", features = ["json"] } url = "2.5.0" # crypto -c-kzg = { package = "c-kzg-taiko", git = "https://github.com/smtmfft/c-kzg-4844", branch = "for-alpha7", default-features = false, features = [ +c-kzg = { git = "https://github.com/brechtpd/c-kzg-4844", branch = "for-alpha7", default-features = false, features = [ "preload-kzg-settings", "no-threads", ] } @@ -174,3 +174,8 @@ rand_core = "0.6.4" dirs = "5.0.1" pathdiff = "0.2.1" +[patch.crates-io] +revm = { git = "https://github.com/taikoxyz/revm.git", branch = "v36-taiko" } +revm-primitives = { git = "https://github.com/taikoxyz/revm.git", branch = "v36-taiko" } +c-kzg = { git = "https://github.com/brechtpd/c-kzg-4844", branch = "for-alpha7" } +secp256k1 = { git = "https://github.com/CeciliaZ030/rust-secp256k1", branch = "sp1-patch" } \ No newline at end of file diff --git a/core/Cargo.toml b/core/Cargo.toml index 9a359519..5692839f 100644 --- a/core/Cargo.toml +++ b/core/Cargo.toml @@ -13,6 +13,13 @@ sgx-prover = { path = "../provers/sgx/prover", optional = true } # raiko raiko-lib = { workspace = true, features = ["c-kzg"] } +# reth +reth-primitives.workspace = true +reth-evm-ethereum.workspace = true +reth-evm.workspace = true +reth-revm.workspace = true +reth-provider.workspace = true + # alloy alloy-rlp = { workspace = true } alloy-rlp-derive = { workspace = true } @@ -24,7 +31,6 @@ alloy-transport-http = { workspace = true } alloy-consensus = { workspace = true } alloy-network = { workspace = true } alloy-rpc-client = { workspace = true } -revm = { workspace = true } # tracing and logging tracing = { workspace = true } diff --git a/core/src/lib.rs b/core/src/lib.rs index 716bf23d..26f3c63a 100644 --- a/core/src/lib.rs +++ b/core/src/lib.rs @@ -3,16 +3,14 @@ use crate::{ preflight::preflight, provider::BlockDataProvider, }; -use alloy_primitives::{Address, B256}; +use alloy_primitives::Address; use alloy_rpc_types::EIP1186AccountProofResponse; -use raiko_lib::{ - builder::{BlockBuilderStrategy, TaikoStrategy}, - consts::{ChainSpec, VerifierType}, - input::{GuestInput, GuestOutput, TaikoProverData}, - protocol_instance::ProtocolInstance, - prover::Proof, - utils::HeaderHasher, -}; +use raiko_lib::builder::{create_mem_db, RethBlockBuilder}; +use raiko_lib::consts::{ChainSpec, VerifierType}; +use raiko_lib::input::{GuestInput, GuestOutput, TaikoProverData}; +use raiko_lib::protocol_instance::ProtocolInstance; +use raiko_lib::prover::Proof; +use reth_primitives::Header; use serde_json::Value; use std::{collections::HashMap, hint::black_box}; use tracing::{debug, error, info, warn}; @@ -62,66 +60,28 @@ impl Raiko { } pub fn get_output(&self, input: &GuestInput) -> RaikoResult { - match TaikoStrategy::build_from(input) { - Ok((header, _mpt_node)) => { - info!("Verifying final state using provider data ..."); - info!("Final block hash derived successfully. {}", header.hash()); - debug!("Final block header derived successfully. {header:?}"); - let pi = ProtocolInstance::new(input, &header, VerifierType::None)?.instance_hash(); + let db = create_mem_db(&mut input.clone()).unwrap(); + let mut builder = RethBlockBuilder::new(input, db); + builder.prepare_header().expect("prepare"); + builder.execute_transactions(false).expect("execute"); + let result = builder.finalize(); - // Check against the expected value of all fields for easy debugability - let exp = &input.block_header_reference; - check_eq(&exp.parent_hash, &header.parent_hash, "base_fee_per_gas"); - check_eq(&exp.ommers_hash, &header.ommers_hash, "ommers_hash"); - check_eq(&exp.beneficiary, &header.beneficiary, "beneficiary"); - check_eq(&exp.state_root, &header.state_root, "state_root"); - check_eq( - &exp.transactions_root, - &header.transactions_root, - "transactions_root", - ); - check_eq(&exp.receipts_root, &header.receipts_root, "receipts_root"); - check_eq( - &exp.withdrawals_root, - &header.withdrawals_root, - "withdrawals_root", - ); - check_eq(&exp.logs_bloom, &header.logs_bloom, "logs_bloom"); - check_eq(&exp.difficulty, &header.difficulty, "difficulty"); - check_eq(&exp.number, &header.number, "number"); - check_eq(&exp.gas_limit, &header.gas_limit, "gas_limit"); - check_eq(&exp.gas_used, &header.gas_used, "gas_used"); - check_eq(&exp.timestamp, &header.timestamp, "timestamp"); - check_eq(&exp.mix_hash, &header.mix_hash, "mix_hash"); - check_eq(&exp.nonce, &header.nonce, "nonce"); - check_eq( - &exp.base_fee_per_gas, - &header.base_fee_per_gas, - "base_fee_per_gas", - ); - check_eq(&exp.blob_gas_used, &header.blob_gas_used, "blob_gas_used"); - check_eq( - &exp.excess_blob_gas, - &header.excess_blob_gas, - "excess_blob_gas", - ); - check_eq( - &exp.parent_beacon_block_root, - &header.parent_beacon_block_root, - "parent_beacon_block_root", + match result { + Ok(header) => { + info!("Verifying final state using provider data ..."); + info!( + "Final block hash derived successfully. {}", + header.hash_slow() ); - check_eq(&exp.extra_data, &header.extra_data, "extra_data"); - - // Make sure the blockhash from the node matches the one from the builder - require_eq( - &B256::from(header.hash().0), - &input.block_hash_reference, - "block hash unexpected", - )?; - - let output = GuestOutput { header, hash: pi }; + debug!("Final block header derived successfully. {header:?}"); + // Check if the header is the expected one + check_header(&input.block.header, &header)?; - Ok(output) + Ok(GuestOutput { + header: header.clone(), + hash: ProtocolInstance::new(input, &header, VerifierType::None)? + .instance_hash(), + }) } Err(e) => { warn!("Proving bad block construction!"); @@ -141,6 +101,57 @@ impl Raiko { } } +fn check_header(exp: &Header, header: &Header) -> Result<(), RaikoError> { + // Check against the expected value of all fields for easy debugability + check_eq(&exp.parent_hash, &header.parent_hash, "parent_hash"); + check_eq(&exp.ommers_hash, &header.ommers_hash, "ommers_hash"); + check_eq(&exp.beneficiary, &header.beneficiary, "beneficiary"); + check_eq(&exp.state_root, &header.state_root, "state_root"); + check_eq( + &exp.transactions_root, + &header.transactions_root, + "transactions_root", + ); + check_eq(&exp.receipts_root, &header.receipts_root, "receipts_root"); + check_eq( + &exp.withdrawals_root, + &header.withdrawals_root, + "withdrawals_root", + ); + check_eq(&exp.logs_bloom, &header.logs_bloom, "logs_bloom"); + check_eq(&exp.difficulty, &header.difficulty, "difficulty"); + check_eq(&exp.number, &header.number, "number"); + check_eq(&exp.gas_limit, &header.gas_limit, "gas_limit"); + check_eq(&exp.gas_used, &header.gas_used, "gas_used"); + check_eq(&exp.timestamp, &header.timestamp, "timestamp"); + check_eq(&exp.mix_hash, &header.mix_hash, "mix_hash"); + check_eq(&exp.nonce, &header.nonce, "nonce"); + check_eq( + &exp.base_fee_per_gas, + &header.base_fee_per_gas, + "base_fee_per_gas", + ); + check_eq(&exp.blob_gas_used, &header.blob_gas_used, "blob_gas_used"); + check_eq( + &exp.excess_blob_gas, + &header.excess_blob_gas, + "excess_blob_gas", + ); + check_eq( + &exp.parent_beacon_block_root, + &header.parent_beacon_block_root, + "parent_beacon_block_root", + ); + check_eq(&exp.extra_data, &header.extra_data, "extra_data"); + + // Make sure the blockhash from the node matches the one from the builder + require_eq( + &exp.hash_slow(), + &header.hash_slow(), + &format!("block hash unexpected for block {}", exp.number), + ) +} + fn check_eq(expected: &T, actual: &T, message: &str) { // printing out error, if any, but ignoring the result // making sure it's not optimized out diff --git a/core/src/preflight.rs b/core/src/preflight.rs index f2ff72ab..92aa964e 100644 --- a/core/src/preflight.rs +++ b/core/src/preflight.rs @@ -2,9 +2,7 @@ use crate::{ interfaces::{RaikoError, RaikoResult}, provider::{db::ProviderDb, rpc::RpcBlockDataProvider, BlockDataProvider}, }; -use alloy_consensus::{ - SignableTransaction, TxEip1559, TxEip2930, TxEip4844, TxEip4844Variant, TxEnvelope, TxLegacy, -}; +use alloy_consensus::TxEnvelope; pub use alloy_primitives::*; use alloy_provider::{Provider, ReqwestProvider}; use alloy_rpc_types::{Block, BlockTransactions, Filter, Transaction as AlloyRpcTransaction}; @@ -12,9 +10,7 @@ use alloy_sol_types::{SolCall, SolEvent}; use anyhow::{anyhow, bail, Result}; use c_kzg::{Blob, KzgCommitment}; use raiko_lib::{ - builder::{ - prepare::TaikoHeaderPrepStrategy, BlockBuilder, OptimisticDatabase, TkoTxExecStrategy, - }, + builder::{OptimisticDatabase, RethBlockBuilder}, clear_line, consts::ChainSpec, inplace_print, @@ -22,13 +18,12 @@ use raiko_lib::{ decode_anchor, proposeBlockCall, BlockProposed, GuestInput, TaikoGuestInput, TaikoProverData, }, - primitives::{ - eip4844::{kzg_to_versioned_hash, MAINNET_KZG_TRUSTED_SETUP}, - mpt::proofs_to_tries, - }, - utils::{generate_transactions, to_header, zlib_compress_data}, + primitives::{eip4844::MAINNET_KZG_TRUSTED_SETUP, mpt::proofs_to_tries}, + protocol_instance::kzg_to_versioned_hash, + utils::{generate_transactions, zlib_compress_data}, Measurement, }; +use reth_primitives::Block as RethBlock; use serde::{Deserialize, Serialize}; use std::{collections::HashSet, sync::Arc}; use tracing::{debug, info, warn}; @@ -55,13 +50,10 @@ pub async fn preflight( })?, ); - let hash = block.header.hash.ok_or_else(|| { - RaikoError::Preflight("No block hash for the requested block".to_string()) - })?; - info!( - "Processing block {:?} with block.hash: {:?}", - block.header.number, block.header.hash + "Processing block {:?} with hash: {:?}", + block.header.number, + block.header.hash.unwrap(), ); debug!("block.parent_hash: {:?}", block.header.parent_hash); debug!("block gas used: {:?}", block.header.gas_used); @@ -86,11 +78,12 @@ pub async fn preflight( }; measurement.stop(); + let reth_block = RethBlock::try_from(block.clone()).expect("block convert failed"); + let input = GuestInput { + block: reth_block.clone(), chain_spec: taiko_chain_spec.clone(), block_number, - block_hash_reference: hash, - block_header_reference: to_header(&block.header), beneficiary: block.header.miner, gas_limit: block.header.gas_limit.try_into().map_err(|_| { RaikoError::Conversion("Failed converting gas limit to u64".to_string()) @@ -108,7 +101,7 @@ pub async fn preflight( parent_state_trie: Default::default(), parent_storage: Default::default(), contracts: Default::default(), - parent_header: to_header(&parent_block.header), + parent_header: parent_block.header.clone().try_into().unwrap(), ancestor_headers: Default::default(), base_fee_per_gas: block.header.base_fee_per_gas.map_or_else( || { @@ -156,20 +149,22 @@ pub async fn preflight( ) .await?; - let mut builder = BlockBuilder::new(&input) - .with_db(provider_db) - .prepare_header::()?; + let mut builder = RethBlockBuilder::new(&input, provider_db); + builder.prepare_header()?; // Optimize data gathering by executing the transactions multiple times so data can be requested in batches let is_local = false; - let max_iterations = if is_local { 1 } else { 50 }; + let max_iterations = if is_local { 1 } else { 100 }; let mut done = false; let mut num_iterations = 0; while !done { inplace_print(&format!("Execution iteration {num_iterations}...")); - builder.mut_db().unwrap().optimistic = num_iterations + 1 < max_iterations; - builder = builder.execute_transactions::()?; - if builder.mut_db().unwrap().fetch_data().await { + + let optimistic = num_iterations + 1 < max_iterations; + builder.db.as_mut().unwrap().optimistic = optimistic; + + builder.execute_transactions(optimistic).expect("execute"); + if builder.db.as_mut().unwrap().fetch_data().await { done = true; } num_iterations += 1; @@ -177,7 +172,7 @@ pub async fn preflight( clear_line(); println!("State data fetched in {num_iterations} iterations"); - let provider_db = builder.mut_db().unwrap(); + let provider_db = builder.db.as_mut().unwrap(); // Gather inclusion proofs for the initial and final state let measurement = Measurement::start("Fetching storage proofs...", true); @@ -205,19 +200,21 @@ pub async fn preflight( for account in initial_db.accounts.values() { let code = &account.info.code; if let Some(code) = code { - contracts.insert(code.bytecode.0.clone()); + contracts.insert(code.bytecode().0.clone()); } } measurement.stop(); - // Add the collected data to the input - Ok(GuestInput { + let input = GuestInput { parent_state_trie: state_trie, parent_storage: storage, contracts: contracts.into_iter().map(Bytes).collect(), ancestor_headers, ..input - }) + }; + + // Add the collected data to the input + Ok(input) } /// Prepare the input for a Taiko chain @@ -315,7 +312,7 @@ async fn prepare_taiko_chain_input( // Create the input struct without the block data set Ok(TaikoGuestInput { - l1_header: to_header(&l1_state_block.header), + l1_header: l1_state_block.header.clone().try_into().unwrap(), tx_data, anchor_tx: serde_json::to_string(&anchor_tx).map_err(RaikoError::Serde)?, tx_blob_hash, @@ -504,6 +501,7 @@ async fn get_block_proposed_event( let tx = provider .get_transaction_by_hash(log_tx_hash) .await + .expect("couldn't query the propose tx") .expect("Could not find the propose tx"); return Ok((tx, event.data)); } @@ -517,7 +515,7 @@ fn get_transactions_from_block(block: &Block) -> RaikoResult> { match &block.transactions { BlockTransactions::Full(txs) => { for tx in txs { - transactions.push(from_block_tx(tx)?); + transactions.push(TxEnvelope::try_from(tx.clone()).unwrap()); } }, _ => unreachable!("Block is too old, please connect to an archive node or use a block that is at most 128 blocks old."), @@ -530,95 +528,6 @@ fn get_transactions_from_block(block: &Block) -> RaikoResult> { Ok(transactions) } -fn from_block_tx(tx: &AlloyRpcTransaction) -> RaikoResult { - let Some(signature) = tx.signature else { - panic!("Transaction has no signature"); - }; - let signature = - Signature::from_rs_and_parity(signature.r, signature.s, signature.v.as_limbs()[0]) - .map_err(|_| RaikoError::Anyhow(anyhow!("Could not create signature")))?; - Ok(match tx.transaction_type.unwrap_or_default() { - 0 => TxEnvelope::Legacy( - TxLegacy { - chain_id: tx.chain_id, - nonce: tx.nonce, - gas_price: tx.gas_price.expect("No gas price for the transaction"), - gas_limit: tx.gas, - to: if let Some(to) = tx.to { - TxKind::Call(to) - } else { - TxKind::Create - }, - value: tx.value, - input: tx.input.0.clone().into(), - } - .into_signed(signature), - ), - 1 => TxEnvelope::Eip2930( - TxEip2930 { - chain_id: tx.chain_id.expect("No chain id for the transaction"), - nonce: tx.nonce, - gas_price: tx.gas_price.expect("No gas price for the transaction"), - gas_limit: tx.gas, - to: if let Some(to) = tx.to { - TxKind::Call(to) - } else { - TxKind::Create - }, - value: tx.value, - input: tx.input.clone(), - access_list: tx.access_list.clone().unwrap_or_default(), - } - .into_signed(signature), - ), - 2 => TxEnvelope::Eip1559( - TxEip1559 { - chain_id: tx.chain_id.expect("No chain id for the transaction"), - nonce: tx.nonce, - gas_limit: tx.gas, - max_fee_per_gas: tx - .max_fee_per_gas - .expect("No max fee per gas for the transaction"), - max_priority_fee_per_gas: tx - .max_priority_fee_per_gas - .expect("No max priority fee per gas for the transaction"), - to: if let Some(to) = tx.to { - TxKind::Call(to) - } else { - TxKind::Create - }, - value: tx.value, - access_list: tx.access_list.clone().unwrap_or_default(), - input: tx.input.clone(), - } - .into_signed(signature), - ), - 3 => TxEnvelope::Eip4844( - TxEip4844Variant::TxEip4844(TxEip4844 { - chain_id: tx.chain_id.expect("No chain id for the transaction"), - nonce: tx.nonce, - gas_limit: tx.gas, - max_fee_per_gas: tx - .max_fee_per_gas - .expect("No max fee per gas for the transaction"), - max_priority_fee_per_gas: tx - .max_priority_fee_per_gas - .expect("No max priority fee per gas for the transaction"), - to: tx.to.expect("No to address for the transaction"), - value: tx.value, - access_list: tx.access_list.clone().unwrap_or_default(), - input: tx.input.clone(), - blob_versioned_hashes: tx.blob_versioned_hashes.clone().unwrap_or_default(), - max_fee_per_blob_gas: tx - .max_fee_per_blob_gas - .expect("No max fee per blob gas for the transaction"), - }) - .into_signed(signature), - ), - _ => unimplemented!(), - }) -} - #[cfg(test)] mod test { use ethers_core::types::Transaction; diff --git a/core/src/provider/db.rs b/core/src/provider/db.rs index 0d6646c1..f75db707 100644 --- a/core/src/provider/db.rs +++ b/core/src/provider/db.rs @@ -1,31 +1,12 @@ -// Copyright 2023 RISC Zero, Inc. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -use std::{collections::HashSet, mem::take}; - -use alloy_consensus::Header as AlloyConsensusHeader; -use alloy_primitives::Bytes; -use raiko_lib::{ - builder::OptimisticDatabase, - consts::ChainSpec, - mem_db::MemDb, - primitives::{Address, B256, U256}, - utils::to_header, -}; -use revm::{ +use alloy_primitives::{Address, Bytes, U256}; +use raiko_lib::{builder::OptimisticDatabase, consts::ChainSpec, mem_db::MemDb}; +use reth_primitives::{Header, B256}; +use reth_provider::ProviderError; +use reth_revm::{ primitives::{Account, AccountInfo, Bytecode, HashMap}, Database, DatabaseCommit, }; +use std::{collections::HashSet, mem::take}; use tokio::runtime::Handle; use crate::{ @@ -38,7 +19,7 @@ pub struct ProviderDb { pub provider: BDP, pub block_number: u64, pub initial_db: MemDb, - pub initial_headers: HashMap, + pub initial_headers: HashMap, pub current_db: MemDb, async_executor: Handle, @@ -87,7 +68,7 @@ impl ProviderDb { .insert_block_hash(block_number, block_hash); provider_db .initial_headers - .insert(block_number, to_header(&block.header)); + .insert(block_number, block.header.try_into().unwrap()); } } Ok(provider_db) @@ -138,7 +119,7 @@ impl ProviderDb { Ok((initial_proofs, latest_proofs, num_storage_proofs)) } - pub async fn get_ancestor_headers(&mut self) -> RaikoResult> { + pub async fn get_ancestor_headers(&mut self) -> RaikoResult> { let earliest_block = self .initial_db .block_hashes @@ -155,7 +136,7 @@ impl ProviderDb { self.initial_headers.entry(block_number) { let block = &self.provider.get_blocks(&[(block_number, false)]).await?[0]; - e.insert(to_header(&block.header)); + e.insert(block.header.clone().try_into().unwrap()); } headers.push( self.initial_headers @@ -175,7 +156,7 @@ impl ProviderDb { } impl Database for ProviderDb { - type Error = RaikoError; + type Error = ProviderError; fn basic(&mut self, address: Address) -> Result, Self::Error> { // Check if the account is in the current database. @@ -211,10 +192,11 @@ impl Database for ProviderDb { let account = &tokio::task::block_in_place(|| { self.async_executor .block_on(self.provider.get_accounts(&[address])) - })? + }) + .map_err(|e| ProviderError::RPC(e.to_string()))? .first() .cloned() - .ok_or(RaikoError::RPC("No account".to_owned()))?; + .ok_or(ProviderError::RPC("No account".to_owned()))?; // Insert the account into the initial database. self.initial_db @@ -252,10 +234,11 @@ impl Database for ProviderDb { let value = tokio::task::block_in_place(|| { self.async_executor .block_on(self.provider.get_storage_values(&[(address, index)])) - })? + }) + .map_err(|e| ProviderError::RPC(e.to_string()))? .first() .copied() - .ok_or(RaikoError::RPC("No storage value".to_owned()))?; + .ok_or(ProviderError::RPC("No storage value".to_owned()))?; self.initial_db .insert_account_storage(&address, index, value); Ok(value) @@ -264,7 +247,7 @@ impl Database for ProviderDb { fn block_hash(&mut self, number: U256) -> Result { let block_number: u64 = number .try_into() - .map_err(|_| RaikoError::Conversion("Could not convert U256 to u64".to_owned()))?; + .map_err(|_| ProviderError::BlockNumberOverflow(number))?; // Check if the block hash is in the current database. if let Ok(block_hash) = self.initial_db.block_hash(number) { @@ -287,12 +270,13 @@ impl Database for ProviderDb { let block_hash = tokio::task::block_in_place(|| { self.async_executor .block_on(self.provider.get_blocks(&[(block_number, false)])) - })? + }) + .map_err(|e| ProviderError::RPC(e.to_string()))? .first() - .ok_or(RaikoError::RPC("No block".to_owned()))? + .ok_or(ProviderError::RPC("No block".to_owned()))? .header .hash - .ok_or_else(|| RaikoError::RPC("No block hash".to_owned()))? + .ok_or_else(|| ProviderError::RPC("No block hash".to_owned()))? .0 .into(); self.initial_db.insert_block_hash(block_number, block_hash); @@ -368,7 +352,7 @@ impl OptimisticDatabase for ProviderDb { self.staging_db .insert_block_hash(block_number, block.header.hash.unwrap()); self.initial_headers - .insert(block_number, to_header(&block.header)); + .insert(block_number, block.header.clone().try_into().unwrap()); } // If this wasn't a valid run, clear the post execution database diff --git a/core/src/provider/mod.rs b/core/src/provider/mod.rs index 7f9e974e..ee2849ad 100644 --- a/core/src/provider/mod.rs +++ b/core/src/provider/mod.rs @@ -1,6 +1,6 @@ use alloy_primitives::{Address, U256}; use alloy_rpc_types::Block; -use revm::primitives::AccountInfo; +use reth_primitives::revm_primitives::AccountInfo; use std::collections::HashMap; use crate::{interfaces::RaikoResult, MerkleProof}; diff --git a/core/src/provider/rpc.rs b/core/src/provider/rpc.rs index 623d7f5c..c0c3c447 100644 --- a/core/src/provider/rpc.rs +++ b/core/src/provider/rpc.rs @@ -5,7 +5,7 @@ use alloy_rpc_types::{Block, BlockId, BlockNumberOrTag, EIP1186AccountProofRespo use alloy_transport_http::Http; use raiko_lib::clear_line; use reqwest_alloy::Client; -use revm::primitives::{AccountInfo, Bytecode}; +use reth_primitives::revm_primitives::{AccountInfo, Bytecode}; use std::collections::HashMap; use tracing::trace; diff --git a/host/Cargo.toml b/host/Cargo.toml index 668c17a6..a4d4bea0 100644 --- a/host/Cargo.toml +++ b/host/Cargo.toml @@ -41,7 +41,6 @@ bincode = { workspace = true } bytemuck = { workspace = true } clap = { workspace = true } flate2 = { workspace = true } -revm = { workspace = true } serde = { workspace = true } serde_with = { workspace = true } serde_json = { workspace = true } @@ -66,6 +65,12 @@ url = { workspace = true } cfg-if = { workspace = true } cap = { workspace = true } +# reth +reth-primitives.workspace = true +reth-evm.workspace = true +reth-evm-ethereum.workspace = true +reth-provider.workspace = true + [dev-dependencies] assert_cmd = { workspace = true } rstest = { workspace = true } diff --git a/host/config/chain_spec_list_default.json b/host/config/chain_spec_list_default.json index 1988a0c2..37921d26 100644 --- a/host/config/chain_spec_list_default.json +++ b/host/config/chain_spec_list_default.json @@ -127,33 +127,5 @@ "genesis_time": 0, "seconds_per_slot": 1, "is_taiko": true - }, - { - "name": "taiko_mainnet", - "chain_id": 167000, - "max_spec_id": "SHANGHAI", - "hard_forks": { - "SHANGHAI": { - "Block": 0 - }, - "CANCUN": "TBD" - }, - "eip_1559_constants": { - "base_fee_change_denominator": "0x8", - "base_fee_max_increase_denominator": "0x8", - "base_fee_max_decrease_denominator": "0x8", - "elasticity_multiplier": "0x2" - }, - "l1_contract": "0x06a9Ab27c7e2255df1815E6CC0168d7755Feb19a", - "l2_contract": "0x1670000000000000000000000000000000010001", - "rpc": "https://rpc.mainnet.taiko.xyz", - "beacon_rpc": null, - "verifier_address": { - "SGX":"0x532efbf6d62720d0b2a2bb9d11066e8588cae6d9", - "SP1":null, - "RISC0":"0x0000000000000000000000000000000000000000" - }, "genesis_time": 0, - "seconds_per_slot": 1, - "is_taiko": true } ] \ No newline at end of file diff --git a/host/src/lib.rs b/host/src/lib.rs index 4208aec1..3cb6839d 100644 --- a/host/src/lib.rs +++ b/host/src/lib.rs @@ -1,17 +1,3 @@ -// Copyright 2023 RISC Zero, Inc. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - pub mod interfaces; pub mod metrics; pub mod server; @@ -53,8 +39,8 @@ fn default_log_level() -> String { #[derive(Default, Clone, Serialize, Deserialize, Debug, Parser)] #[command( - name = "raiko", - about = "The taiko prover host", + name = "raiko", + about = "The taiko prover host", long_about = None )] #[serde(default)] diff --git a/host/src/server/api/v1/proof.rs b/host/src/server/api/v1/proof.rs index 185f677c..91ef370c 100644 --- a/host/src/server/api/v1/proof.rs +++ b/host/src/server/api/v1/proof.rs @@ -8,7 +8,6 @@ use raiko_core::{ }; use raiko_lib::{ input::{get_input_path, GuestInput}, - utils::{to_header, HeaderHasher}, Measurement, }; use serde_json::Value; @@ -71,8 +70,8 @@ async fn validate_cache_input( .first() .ok_or_else(|| RaikoError::RPC("No block data for the requested block".to_owned()))?; - let cached_block_hash = cache_input.block_hash_reference; - let real_block_hash = block.header.hash.unwrap_or(to_header(&block.header).hash()); + let cached_block_hash = cache_input.block.header.hash_slow(); + let real_block_hash = block.header.hash.unwrap(); debug!( "cache_block_hash={:?}, real_block_hash={:?}", cached_block_hash, real_block_hash diff --git a/lib/Cargo.toml b/lib/Cargo.toml index 9737d0b9..547eedb4 100644 --- a/lib/Cargo.toml +++ b/lib/Cargo.toml @@ -4,6 +4,13 @@ version = "0.1.0" edition = "2021" [dependencies] +# reth +reth-primitives.workspace = true +reth-evm-ethereum.workspace = true +reth-evm.workspace = true +reth-chainspec.workspace = true + +# alloy alloy-rlp = { workspace = true } alloy-eips = { workspace = true } alloy-rlp-derive = { workspace = true } @@ -11,7 +18,6 @@ alloy-sol-types = { workspace = true } alloy-primitives = { workspace = true } alloy-rpc-types = { workspace = true } alloy-consensus = { workspace = true } -alloy-network = { workspace = true } # errors anyhow = { workspace = true } @@ -23,10 +29,6 @@ serde = { workspace = true } serde_json = { workspace = true, optional = true } serde_with = { workspace = true, optional = true } -# revm -revm = { workspace = true } -revm-primitives = { workspace = true } - libflate = { workspace = true } once_cell = { workspace = true } url = { workspace = true } @@ -67,9 +69,8 @@ std = [ "dep:serde_with", # "dep:tokio", ] -tracer = ["revm/serde-json"] sgx = [] sp1 = [] risc0 = [] -c-kzg = ["revm-primitives/c-kzg", "dep:tempfile"] -sp1-cycle-tracker = [] \ No newline at end of file +c-kzg = ["dep:tempfile"] +sp1-cycle-tracker = [] diff --git a/lib/src/builder.rs b/lib/src/builder.rs new file mode 100644 index 00000000..334d0203 --- /dev/null +++ b/lib/src/builder.rs @@ -0,0 +1,580 @@ +use core::mem; +use std::sync::Arc; + +use crate::primitives::keccak::keccak; +use crate::primitives::mpt::StateAccount; +use crate::utils::generate_transactions; +use crate::{ + consts::{ChainSpec, MAX_BLOCK_HASH_AGE}, + guest_mem_forget, + input::GuestInput, + mem_db::{AccountState, DbAccount, MemDb}, + CycleTracker, +}; +use alloy_consensus::{Signed, Transaction, TxEnvelope}; +use alloy_rpc_types::{ConversionError, Parity, Transaction as AlloyTransaction}; +use anyhow::{bail, Context, Error, Result}; +use reth_chainspec::{ChainSpecBuilder, HOLESKY, MAINNET, TAIKO_A7, TAIKO_MAINNET}; +use reth_evm::execute::{BlockExecutionOutput, BlockValidationError, Executor, ProviderError}; +use reth_evm_ethereum::execute::{validate_block_post_execution, EthExecutorProvider}; +use reth_evm_ethereum::taiko::TaikoData; +use reth_primitives::revm_primitives::db::{Database, DatabaseCommit}; +use reth_primitives::revm_primitives::{ + Account, AccountInfo, AccountStatus, Bytecode, Bytes, HashMap, SpecId, +}; +use reth_primitives::transaction::Signature as RethSignature; +use reth_primitives::{Address, BlockBody, Header, TransactionSigned, B256, KECCAK_EMPTY, U256}; +use tracing::debug; + +pub fn calculate_block_header(input: &GuestInput) -> Header { + let cycle_tracker = CycleTracker::start("initialize_database"); + let db = create_mem_db(&mut input.clone()).unwrap(); + cycle_tracker.end(); + + let mut builder = RethBlockBuilder::new(input, db); + + let cycle_tracker = CycleTracker::start("prepare_header"); + builder.prepare_header().expect("prepare"); + cycle_tracker.end(); + + let cycle_tracker = CycleTracker::start("execute_transactions"); + builder.execute_transactions(false).expect("execute"); + cycle_tracker.end(); + + let cycle_tracker = CycleTracker::start("finalize"); + let header = builder.finalize().expect("execute"); + cycle_tracker.end(); + + header +} + +/// Optimistic database +#[allow(async_fn_in_trait)] +pub trait OptimisticDatabase { + /// Handle post execution work + async fn fetch_data(&mut self) -> bool; + + /// If the current database is optimistic + fn is_optimistic(&self) -> bool; +} +/// A generic builder for building a block. +#[derive(Clone, Debug)] +pub struct RethBlockBuilder { + pub chain_spec: ChainSpec, + pub input: GuestInput, + pub db: Option, + pub header: Option
, +} + +/// Minimum supported protocol version: SHANGHAI +const MIN_SPEC_ID: SpecId = SpecId::SHANGHAI; + +impl + DatabaseCommit + OptimisticDatabase> + RethBlockBuilder +{ + /// Creates a new block builder. + pub fn new(input: &GuestInput, db: DB) -> RethBlockBuilder { + RethBlockBuilder { + chain_spec: input.chain_spec.clone(), + db: Some(db), + header: None, + input: input.clone(), + } + } + + /// Initializes the header. This must be called before executing transactions. + pub fn prepare_header(&mut self) -> Result<()> { + /// Maximum size of extra data. + pub const MAX_EXTRA_DATA_BYTES: usize = 32; + + // Validate timestamp + let timestamp: u64 = self.input.timestamp; + if timestamp < self.input.parent_header.timestamp { + bail!( + "Invalid timestamp: expected >= {}, got {}", + self.input.parent_header.timestamp, + self.input.timestamp, + ); + } + // Validate extra data + let extra_data_bytes = self.input.extra_data.len(); + if extra_data_bytes > MAX_EXTRA_DATA_BYTES { + bail!("Invalid extra data: expected <= {MAX_EXTRA_DATA_BYTES}, got {extra_data_bytes}") + } + // Derive header + let number: u64 = self.input.parent_header.number; + self.header = Some(Header { + // Initialize fields that we can compute from the parent + parent_hash: self.input.parent_header.hash_slow(), + number: number + .checked_add(1) + .with_context(|| "Invalid block number: too large")?, + base_fee_per_gas: Some(self.input.base_fee_per_gas), + // Initialize metadata from input + beneficiary: self.input.beneficiary, + gas_limit: self.input.gas_limit, + timestamp: self.input.timestamp, + mix_hash: self.input.mix_hash, + extra_data: self.input.extra_data.clone(), + blob_gas_used: self.input.blob_gas_used, + excess_blob_gas: self.input.excess_blob_gas, + parent_beacon_block_root: self.input.parent_beacon_block_root, + // do not fill the remaining fields + ..Default::default() + }); + Ok(()) + } + + /// Executes all input transactions. + pub fn execute_transactions(&mut self, optimistic: bool) -> Result<()> { + let chain_spec = &self.input.chain_spec; + let is_taiko = chain_spec.is_taiko(); + + let total_difficulty = U256::ZERO; + let reth_chain_spec = match chain_spec.name.as_str() { + "taiko_a7" => TAIKO_A7.clone(), + "taiko_mainnet" => TAIKO_MAINNET.clone(), + "ethereum" => { + //MAINNET.clone() + // TODO(Brecht): for some reason using the spec directly doesn't work + Arc::new( + ChainSpecBuilder::default() + .chain(MAINNET.chain) + .genesis(MAINNET.genesis.clone()) + .cancun_activated() + .build(), + ) + } + "holesky" => HOLESKY.clone(), + _ => unimplemented!(), + }; + + let header = self.header.as_mut().expect("Header is not initialized"); + let spec_id = self + .input + .chain_spec + .active_fork(header.number, header.timestamp) + .unwrap(); + if !SpecId::enabled(spec_id, MIN_SPEC_ID) { + bail!("Invalid protocol version: expected >= {MIN_SPEC_ID:?}, got {spec_id:?}") + } + + // generate the transactions from the tx list + // For taiko blocks, insert the anchor tx as the first transaction + let anchor_tx = if is_taiko { + Some(serde_json::from_str(&self.input.taiko.anchor_tx.clone()).unwrap()) + } else { + None + }; + let transactions = generate_transactions( + &self.input.chain_spec, + self.input.taiko.block_proposed.meta.blobUsed, + &self.input.taiko.tx_data, + anchor_tx, + ); + let mut alloy_transactions = Vec::new(); + for tx in transactions { + let alloy_tx: AlloyTransaction = + to_alloy_transaction(&tx).expect("can't convert to alloy"); + alloy_transactions.push(alloy_tx); + } + + let mut block = self.input.block.clone(); + // Convert alloy transactions to reth transactions and set them on the block + block.body = alloy_transactions + .into_iter() + .map(|tx| { + let signature = tx + .signature + .ok_or(ConversionError::MissingSignature) + .expect("missing signature"); + TransactionSigned::from_transaction_and_signature( + tx.try_into().expect("tx conversion failed"), + RethSignature { + r: signature.r, + s: signature.s, + odd_y_parity: signature + .y_parity + .unwrap_or_else(|| alloy_rpc_types::Parity(!signature.v.bit(0))) + .0, + }, + ) + }) + .collect(); + + let block_with_senders = block + .clone() + .with_recovered_senders() + .ok_or(BlockValidationError::SenderRecoveryError)?; + + let executor = EthExecutorProvider::ethereum(reth_chain_spec.clone()) + .eth_executor(self.db.take().unwrap()) + .taiko_data(TaikoData { + l1_header: self.input.taiko.l1_header.clone(), + parent_header: self.input.parent_header.clone(), + l2_contract: self.input.chain_spec.l2_contract.unwrap_or_default(), + }) + .optimistic(optimistic); + let BlockExecutionOutput { + state, + receipts, + requests, + gas_used, + db: full_state, + } = executor.execute((&block_with_senders, total_difficulty).into())?; + + if !optimistic { + // Validates the gas used, the receipts root and the logs bloom + validate_block_post_execution( + &block_with_senders, + &reth_chain_spec.clone(), + &receipts, + &requests, + )?; + } + + self.db = Some(full_state.database); + + let changes: HashMap = state + .state + .into_iter() + .map(|(address, bundle_account)| { + let mut account = Account { + info: bundle_account.info.unwrap_or_default(), + storage: bundle_account.storage, + status: AccountStatus::default(), + }; + account.mark_touch(); + if bundle_account.status.was_destroyed() { + account.mark_selfdestruct(); + } + if bundle_account.original_info.is_none() { + account.mark_created(); + } + (address, account) + }) + .collect(); + self.db.as_mut().unwrap().commit(changes); + + // Set the values verified in validate_block_post_execution + let header = self.header.as_mut().unwrap(); + header.gas_used = gas_used; + header.receipts_root = self.input.block.header.receipts_root; + header.logs_bloom = self.input.block.header.logs_bloom; + + Ok(()) + } +} + +impl RethBlockBuilder { + /// Finalizes the block building and returns the header and the state trie. + pub fn finalize(&mut self) -> Result
{ + let mut header = self.header.take().expect("Header not initialized"); + let block_body = BlockBody::from(self.input.block.clone()); + + header.state_root = self.calculate_state_root()?; + header.transactions_root = block_body.calculate_tx_root(); + header.withdrawals_root = block_body.calculate_withdrawals_root(); + header.ommers_hash = block_body.calculate_ommers_root(); + + Ok(header) + } + + /// Finalizes the block building and returns the header and the state trie. + pub fn calculate_state_root(&mut self) -> Result { + let mut account_touched = 0; + let mut storage_touched = 0; + + // apply state updates + let mut state_trie = mem::take(&mut self.input.parent_state_trie); + for (address, account) in &self.db.as_ref().unwrap().accounts { + // if the account has not been touched, it can be ignored + if account.state == AccountState::None { + continue; + } + + // compute the index of the current account in the state trie + let state_trie_index = keccak(address); + + // remove deleted accounts from the state trie + if account.state == AccountState::Deleted { + state_trie.delete(&state_trie_index)?; + continue; + } + + account_touched += 1; + + // otherwise, compute the updated storage root for that account + let state_storage = &account.storage; + let storage_root = { + // getting a mutable reference is more efficient than calling remove + // every account must have an entry, even newly created accounts + let (storage_trie, _) = self + .input + .parent_storage + .get_mut(address) + .expect("Address not found in storage"); + // for cleared accounts always start from the empty trie + if account.state == AccountState::StorageCleared { + storage_trie.clear(); + } + + // apply all new storage entries for the current account (address) + for (key, value) in state_storage { + let storage_trie_index = keccak(key.to_be_bytes::<32>()); + if value.is_zero() { + storage_trie.delete(&storage_trie_index)?; + } else { + storage_trie.insert_rlp(&storage_trie_index, *value)?; + } + } + + storage_touched += 1; + + storage_trie.hash() + }; + + let state_account = StateAccount { + nonce: account.info.nonce, + balance: account.info.balance, + storage_root, + code_hash: account.info.code_hash, + }; + state_trie.insert_rlp(&state_trie_index, state_account)?; + } + + debug!("Accounts touched {:?}", account_touched); + debug!("Storages touched {:?}", storage_touched); + + Ok(state_trie.hash()) + } +} + +pub fn create_mem_db(input: &mut GuestInput) -> Result { + // Verify state trie root + if input.parent_state_trie.hash() != input.parent_header.state_root { + bail!( + "Invalid state trie: expected {}, got {}", + input.parent_header.state_root, + input.parent_state_trie.hash() + ); + } + + // hash all the contract code + let contracts: HashMap = mem::take(&mut input.contracts) + .into_iter() + .map(|bytes| (keccak(&bytes).into(), bytes)) + .collect(); + + let mut account_touched = 0; + let mut storage_touched = 0; + + // Load account data into db + let mut accounts = HashMap::with_capacity(input.parent_storage.len()); + for (address, (storage_trie, slots)) in &mut input.parent_storage { + // consume the slots, as they are no longer needed afterwards + let slots = mem::take(slots); + + account_touched += 1; + + // load the account from the state trie or empty if it does not exist + let state_account = input + .parent_state_trie + .get_rlp::(&keccak(address))? + .unwrap_or_default(); + // Verify storage trie root + if storage_trie.hash() != state_account.storage_root { + bail!( + "Invalid storage trie for {address:?}: expected {}, got {}", + state_account.storage_root, + storage_trie.hash() + ); + } + + // load the corresponding code + let code_hash = state_account.code_hash; + let bytecode = if code_hash.0 == KECCAK_EMPTY.0 { + Bytecode::new() + } else { + let bytes = contracts + .get(&code_hash) + .expect("Contract not found") + .clone(); + Bytecode::new_raw(bytes) + }; + + // load storage reads + let mut storage = HashMap::with_capacity(slots.len()); + for slot in slots { + let value: U256 = storage_trie + .get_rlp(&keccak(slot.to_be_bytes::<32>()))? + .unwrap_or_default(); + storage.insert(slot, value); + + storage_touched += 1; + } + + let mem_account = DbAccount { + info: AccountInfo { + balance: state_account.balance, + nonce: state_account.nonce, + code_hash: state_account.code_hash, + code: Some(bytecode), + }, + state: AccountState::None, + storage, + }; + + accounts.insert(*address, mem_account); + } + guest_mem_forget(contracts); + + debug!("Accounts touched: {account_touched:?}"); + debug!("Storages touched: {storage_touched:?}"); + + // prepare block hash history + let mut block_hashes = HashMap::with_capacity(input.ancestor_headers.len() + 1); + block_hashes.insert(input.parent_header.number, input.parent_header.hash_slow()); + let mut prev = &input.parent_header; + for current in &input.ancestor_headers { + let current_hash = current.hash_slow(); + if prev.parent_hash != current_hash { + bail!( + "Invalid chain: {} is not the parent of {}", + current.number, + prev.number + ); + } + if input.parent_header.number < current.number + || input.parent_header.number - current.number >= MAX_BLOCK_HASH_AGE + { + bail!( + "Invalid chain: {} is not one of the {MAX_BLOCK_HASH_AGE} most recent blocks", + current.number, + ); + } + block_hashes.insert(current.number, current_hash); + prev = current; + } + + // Store database + Ok(MemDb { + accounts, + block_hashes, + }) +} + +pub fn to_alloy_transaction(tx: &TxEnvelope) -> Result { + match tx { + TxEnvelope::Legacy(tx) => { + let alloy_tx = AlloyTransaction { + hash: *tx.hash(), + nonce: tx.tx().nonce(), + block_hash: None, + block_number: None, + transaction_index: None, + to: tx.tx().to().to().copied(), + value: tx.tx().value(), + gas_price: tx.tx().gas_price(), + gas: tx.tx().gas_limit(), + max_fee_per_gas: None, + max_priority_fee_per_gas: None, + max_fee_per_blob_gas: None, + input: tx.tx().input().to_owned().into(), + signature: Some(to_alloy_signature(get_sig(tx))), + chain_id: tx.tx().chain_id(), + blob_versioned_hashes: None, + access_list: None, + transaction_type: Some(0), + ..Default::default() + }; + Ok(alloy_tx) + } + TxEnvelope::Eip2930(tx) => { + let alloy_tx = AlloyTransaction { + hash: *tx.hash(), + nonce: tx.tx().nonce(), + block_hash: None, + block_number: None, + transaction_index: None, + to: tx.tx().to().to().copied(), + value: tx.tx().value(), + gas_price: tx.tx().gas_price(), + gas: tx.tx().gas_limit(), + max_fee_per_gas: None, + max_priority_fee_per_gas: None, + max_fee_per_blob_gas: None, + input: tx.tx().input().to_owned().into(), + signature: Some(to_alloy_signature(get_sig(tx))), + chain_id: tx.tx().chain_id(), + blob_versioned_hashes: None, + access_list: Some(tx.tx().access_list.clone()), + transaction_type: Some(1), + ..Default::default() + }; + Ok(alloy_tx) + } + TxEnvelope::Eip1559(tx) => { + let alloy_tx = AlloyTransaction { + hash: *tx.hash(), + nonce: tx.tx().nonce(), + block_hash: None, + block_number: None, + transaction_index: None, + to: tx.tx().to().to().copied(), + value: tx.tx().value(), + gas_price: tx.tx().gas_price(), + gas: tx.tx().gas_limit(), + max_fee_per_gas: Some(tx.tx().max_fee_per_gas), + max_priority_fee_per_gas: Some(tx.tx().max_priority_fee_per_gas), + max_fee_per_blob_gas: None, + input: tx.tx().input().to_owned().into(), + signature: Some(to_alloy_signature(get_sig(tx))), + chain_id: tx.tx().chain_id(), + blob_versioned_hashes: None, + access_list: Some(tx.tx().access_list.clone()), + transaction_type: Some(2), + ..Default::default() + }; + Ok(alloy_tx) + } + TxEnvelope::Eip4844(tx) => { + let alloy_tx = AlloyTransaction { + hash: *tx.hash(), + nonce: tx.tx().nonce(), + block_hash: None, + block_number: None, + transaction_index: None, + to: tx.tx().to().to().copied(), + value: tx.tx().value(), + gas_price: tx.tx().gas_price(), + gas: tx.tx().gas_limit(), + max_fee_per_gas: Some(tx.tx().tx().max_fee_per_gas), + max_priority_fee_per_gas: Some(tx.tx().tx().max_priority_fee_per_gas), + max_fee_per_blob_gas: Some(tx.tx().tx().max_fee_per_blob_gas), + input: tx.tx().input().to_owned().into(), + signature: Some(to_alloy_signature(get_sig(tx))), + chain_id: tx.tx().chain_id(), + blob_versioned_hashes: Some(tx.tx().tx().blob_versioned_hashes.clone()), + access_list: Some(tx.tx().tx().access_list.clone()), + transaction_type: Some(tx.tx().tx_type() as u8), + ..Default::default() + }; + Ok(alloy_tx) + } + _ => todo!(), + } +} + +pub fn get_sig(tx: &Signed) -> Sig { + tx.signature().clone() +} + +pub fn to_alloy_signature(sig: alloy_primitives::Signature) -> alloy_rpc_types::Signature { + alloy_rpc_types::Signature { + r: sig.r(), + s: sig.s(), + v: sig.v().to_u64().try_into().unwrap(), + y_parity: Some(Parity(sig.v().to_parity_bool().y_parity())), + } +} diff --git a/lib/src/builder/execute.rs b/lib/src/builder/execute.rs deleted file mode 100644 index ccf06367..00000000 --- a/lib/src/builder/execute.rs +++ /dev/null @@ -1,551 +0,0 @@ -// Copyright 2024 RISC Zero, Inc. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -use alloy_consensus::{constants::BEACON_ROOTS_ADDRESS, TxEnvelope}; -use alloy_primitives::{TxKind, U256}; -use anyhow::{anyhow, bail, ensure, Context, Error, Result}; -use core::{fmt::Debug, mem::take, str::from_utf8}; -#[cfg(feature = "std")] -use log::debug; -use revm::{ - interpreter::Host, - primitives::{ - Account, Address, EVMError, HandlerCfg, ResultAndState, SpecId, TransactTo, TxEnv, - MAX_BLOB_GAS_PER_BLOCK, - }, - taiko, Database, DatabaseCommit, Evm, JournaledState, -}; -use std::collections::HashSet; -use tracing::trace; -cfg_if::cfg_if! { - if #[cfg(feature = "tracer")] { - use std::{fs::{OpenOptions, File}, io::{BufWriter, Write}, sync::{Arc, Mutex}}; - use revm::{inspector_handle_register, inspectors::TracerEip3155}; - } -} - -use super::{OptimisticDatabase, TxExecStrategy}; -use crate::{ - builder::BlockBuilder, - clear_line, - consts::GWEI_TO_WEI, - guest_mem_forget, inplace_print, - primitives::{ - alloy_eips::eip4788::SYSTEM_ADDRESS, mpt::MptNode, receipt::Receipt, Bloom, Rlp2718Bytes, - RlpBytes, - }, - print_duration, - time::{AddAssign, Duration, Instant}, - utils::{check_anchor_tx, generate_transactions}, - CycleTracker, -}; - -/// Minimum supported protocol version: SHANGHAI -const MIN_SPEC_ID: SpecId = SpecId::SHANGHAI; - -pub struct TkoTxExecStrategy {} - -impl TxExecStrategy for TkoTxExecStrategy { - fn execute_transactions(mut block_builder: BlockBuilder) -> Result> - where - D: Database + DatabaseCommit + OptimisticDatabase, - ::Error: Debug, - { - let mut tx_transact_duration = Duration::default(); - let mut tx_misc_duration = Duration::default(); - - let is_optimistic = block_builder.db().unwrap().is_optimistic(); - - let header = block_builder - .header - .as_mut() - .expect("Header is not initialized"); - // Compute the spec id - let spec_id = block_builder - .chain_spec - .active_fork(header.number, header.timestamp) - .unwrap(); - if !SpecId::enabled(spec_id, MIN_SPEC_ID) { - bail!("Invalid protocol version: expected >= {MIN_SPEC_ID:?}, got {spec_id:?}") - } - - let chain_spec = &block_builder.input.chain_spec; - let chain_id = chain_spec.chain_id(); - let is_taiko = chain_spec.is_taiko(); - trace!("spec_id: {spec_id:?}"); - - // generate the transactions from the tx list - // For taiko blocks, insert the anchor tx as the first transaction - let anchor_tx = if chain_spec.is_taiko() { - Some(serde_json::from_str(&block_builder.input.taiko.anchor_tx.clone()).unwrap()) - } else { - None - }; - let mut transactions = generate_transactions( - chain_spec, - block_builder.input.taiko.block_proposed.meta.blobUsed, - &block_builder.input.taiko.tx_data, - anchor_tx, - ); - - // Setup the EVM environment - let evm = Evm::builder().with_db(block_builder.db.take().unwrap()); - #[cfg(feature = "tracer")] - let evm = evm.with_external_context(TracerEip3155::new(Box::new(std::io::stdout()))); - let evm = evm - .with_handler_cfg(HandlerCfg::new_with_taiko(spec_id, is_taiko)) - .modify_cfg_env(|cfg_env| { - // set the EVM configuration - cfg_env.chain_id = chain_id; - }) - .modify_block_env(|blk_env| { - // set the EVM block environment - blk_env.number = U256::from(header.number); - blk_env.coinbase = block_builder.input.beneficiary; - blk_env.timestamp = header.timestamp.try_into().unwrap(); - blk_env.difficulty = U256::ZERO; - blk_env.prevrandao = Some(header.mix_hash); - blk_env.basefee = header.base_fee_per_gas.unwrap().try_into().unwrap(); - blk_env.gas_limit = block_builder.input.gas_limit.try_into().unwrap(); - if let Some(excess_blob_gas) = header.excess_blob_gas { - blk_env.set_blob_excess_gas_and_price(excess_blob_gas.try_into().unwrap()); - } - }); - let evm = if is_taiko { - evm.append_handler_register(taiko::handler_register::taiko_handle_register) - } else { - evm - }; - #[cfg(feature = "tracer")] - let evm = evm.append_handler_register(inspector_handle_register); - let mut evm = evm.build(); - - // Set the beacon block root in the EVM - if spec_id >= SpecId::CANCUN { - let parent_beacon_block_root = header.parent_beacon_block_root.unwrap(); - - // From EIP-4788 Beacon block root in the EVM (Cancun): - // "Call BEACON_ROOTS_ADDRESS as SYSTEM_ADDRESS with the 32-byte input of - // header.parent_beacon_block_root, a gas limit of 30_000_000, and 0 value." - evm.env_mut().tx = TxEnv { - transact_to: TransactTo::Call(BEACON_ROOTS_ADDRESS), - caller: SYSTEM_ADDRESS, - data: parent_beacon_block_root.into(), - gas_limit: 30_000_000, - value: U256::ZERO, - ..Default::default() - }; - - let tmp = evm.env_mut().block.clone(); - - // disable block gas limit validation and base fee checks - evm.block_mut().gas_limit = U256::from(evm.tx().gas_limit); - evm.block_mut().basefee = U256::ZERO; - - let ResultAndState { mut state, .. } = - evm.transact().expect("beacon roots contract call failed"); - evm.env_mut().block = tmp; - - // commit only the changes to the beacon roots contract - state.remove(&SYSTEM_ADDRESS); - state.remove(&evm.block().coinbase); - evm.context.evm.db.commit(state); - } - - // bloom filter over all transaction logs - let mut logs_bloom = Bloom::default(); - // keep track of the gas used over all transactions - let mut cumulative_gas_used = 0u64; - let mut blob_gas_used = 0_u64; - - // process all the transactions - let mut tx_trie = MptNode::default(); - let mut receipt_trie = MptNode::default(); - // track the actual tx number to use in the tx/receipt trees as the key - let mut actual_tx_no = 0usize; - let num_transactions = transactions.len(); - for (tx_no, tx) in take(&mut transactions).into_iter().enumerate() { - if !is_optimistic { - cfg_if::cfg_if! { - if #[cfg(all(all(target_os = "zkvm", target_vendor = "succinct"), feature = "sp1-cycle-tracker"))]{ - println!( - "{:?}", - &format!("\rprocessing tx {tx_no}/{num_transactions}...") - ); - } else { - inplace_print(&format!("\rprocessing tx {tx_no}/{num_transactions}...")); - } - } - } else { - trace!("\rprocessing tx {tx_no}/{num_transactions}..."); - } - - #[cfg(feature = "tracer")] - let trace = set_trace_writer( - &mut evm.context.external, - chain_id, - block_builder.input.block_number, - actual_tx_no, - ); - - // anchor transaction always the first transaction - let is_anchor = is_taiko && tx_no == 0; - - // setup the EVM environment - let tx_env = &mut evm.env_mut().tx; - fill_eth_tx_env(tx_env, &tx)?; - // Set and check some taiko specific values - if chain_spec.is_taiko() { - // set if the tx is the anchor tx - tx_env.taiko.is_anchor = is_anchor; - // set the treasury address - tx_env.taiko.treasury = chain_spec.l2_contract.unwrap_or_default(); - - // Data blobs are not allowed on L2 - ensure!(tx_env.blob_hashes.len() == 0); - } - - // if the signature was not valid, the caller address will have been set to zero - if tx_env.caller == Address::ZERO { - if is_anchor { - bail!("Error recovering anchor signature"); - } - #[cfg(feature = "std")] - debug!("Error recovering address for transaction {tx_no}"); - if !is_taiko { - bail!("invalid signature"); - } - // If the signature is not valid, skip the transaction - continue; - } - - // verify the anchor tx - if is_anchor { - check_anchor_tx(&block_builder.input, &tx, &tx_env.caller) - .expect("invalid anchor tx"); - } - - // verify transaction gas - let block_available_gas = block_builder.input.gas_limit - cumulative_gas_used; - if block_available_gas < tx_env.gas_limit { - if is_optimistic { - continue; - } - if is_anchor { - bail!("Error at transaction {tx_no}: gas exceeds block limit"); - } - #[cfg(feature = "std")] - debug!("Error at transaction {tx_no}: gas exceeds block limit"); - if !is_taiko { - bail!("gas exceeds block limit"); - } - continue; - } - - // verify blob gas - if let TxEnvelope::Eip4844(blob_tx) = &tx { - let tx = blob_tx.tx().tx(); - blob_gas_used = blob_gas_used.checked_add(tx.blob_gas()).unwrap(); - ensure!( - blob_gas_used <= MAX_BLOB_GAS_PER_BLOCK, - "Error at transaction {tx_no}: total blob gas spent exceeds the limit", - ); - } - - // process the transaction - let start = Instant::now(); - let cycle_tracker = CycleTracker::start("evm.transact()"); - let ResultAndState { result, state } = match evm.transact() { - Ok(result) => result, - Err(err) => { - // Clear the state for the next tx - evm.context.evm.journaled_state = JournaledState::new(spec_id, HashSet::new()); - - if is_optimistic { - continue; - } - if !is_taiko { - bail!("tx failed to execute successfully: {err:?}"); - } - if is_anchor { - bail!("Anchor tx failed to execute successfully: {err:?}"); - } - // only continue for invalid tx errors, not db errors (because those can be - // manipulated by the prover) - match err { - EVMError::Transaction(invalid_transaction) => { - #[cfg(feature = "std")] - debug!("Invalid tx at {tx_no}: {invalid_transaction:?}"); - cycle_tracker.end(); - // skip the tx - continue; - } - _ => { - // any other error is not allowed - bail!("Error at tx {tx_no}: {err:?}"); - } - } - } - }; - cycle_tracker.end(); - #[cfg(feature = "std")] - trace!(" Ok: {result:?}"); - - #[cfg(feature = "tracer")] - // Flush the trace writer - trace.lock().unwrap().flush().expect("Error flushing trace"); - - tx_transact_duration.add_assign(start.elapsed()); - - let start = Instant::now(); - - // anchor tx needs to succeed - if is_anchor && !result.is_success() && !is_optimistic { - bail!( - "Error at transaction {tx_no}: execute anchor failed {result:?}, output {:?}", - result.output().map(|o| from_utf8(o).unwrap_or_default()) - ); - } - - // keep track of all the gas used in the block - let gas_used = result.gas_used(); - cumulative_gas_used = cumulative_gas_used.checked_add(gas_used).unwrap(); - - // create the receipt from the EVM result - let receipt = Receipt::new( - tx.tx_type() as u8, - result.is_success(), - cumulative_gas_used.try_into().unwrap(), - result.logs().iter().map(|log| log.clone().into()).collect(), - ); - - // update the state - evm.context.evm.db.commit(state); - - // accumulate logs to the block bloom filter - logs_bloom.accrue_bloom(&receipt.payload.logs_bloom); - - // Add receipt and tx to tries - let trie_key = alloy_rlp::encode(actual_tx_no); - // Add to tx trie - tx_trie.insert_rlp_encoded(&trie_key, tx.to_rlp_2718())?; - // Add to receipt trie - receipt_trie.insert_rlp(&trie_key, receipt)?; - - // If we got here it means the tx is not invalid - actual_tx_no += 1; - - tx_misc_duration.add_assign(start.elapsed()); - } - if !is_optimistic { - clear_line(); - print_duration("Tx transact time: ", tx_transact_duration); - print_duration("Tx misc time: ", tx_misc_duration); - } - clear_line(); - println!("actual Tx: {}", actual_tx_no); - - let mut db = &mut evm.context.evm.db; - - // process withdrawals unconditionally after any transactions - let mut withdrawals_trie = MptNode::default(); - for (i, withdrawal) in block_builder.input.withdrawals.iter().enumerate() { - // the withdrawal amount is given in Gwei - let amount_wei = GWEI_TO_WEI - .checked_mul(withdrawal.amount.try_into().unwrap()) - .unwrap(); - - // Credit withdrawal amount - increase_account_balance(&mut db, withdrawal.address, amount_wei)?; - // Add withdrawal to trie - withdrawals_trie - .insert_rlp(&i.to_rlp(), withdrawal) - .with_context(|| "failed to insert withdrawal")?; - } - - // Update result header with computed values - header.transactions_root = tx_trie.hash(); - header.receipts_root = receipt_trie.hash(); - header.logs_bloom = logs_bloom; - header.gas_used = cumulative_gas_used.into(); - if spec_id >= SpecId::SHANGHAI { - header.withdrawals_root = Some(withdrawals_trie.hash()); - }; - if spec_id >= SpecId::CANCUN { - header.blob_gas_used = Some(blob_gas_used.into()); - } - - // Leak memory, save cycles - guest_mem_forget([tx_trie, receipt_trie, withdrawals_trie]); - // Return block builder with updated database - Ok(block_builder.with_db(evm.context.evm.inner.db)) - } -} - -pub fn fill_eth_tx_env(tx_env: &mut TxEnv, tx: &TxEnvelope) -> Result<(), Error> { - // Clear values that may not be set - tx_env.access_list.clear(); - tx_env.blob_hashes.clear(); - tx_env.max_fee_per_blob_gas.take(); - // Get the data from the tx - // TODO(Brecht): use optimized recover - match tx { - TxEnvelope::Legacy(tx) => { - let cycle_tracker = CycleTracker::start("Legacy"); - tx_env.caller = tx.recover_signer().unwrap_or_default(); - cycle_tracker.end(); - let tx = tx.tx(); - tx_env.gas_limit = tx.gas_limit.try_into().unwrap(); - tx_env.gas_price = tx.gas_price.try_into().unwrap(); - tx_env.gas_priority_fee = None; - tx_env.transact_to = if let TxKind::Call(to_addr) = tx.to { - TransactTo::Call(to_addr) - } else { - TransactTo::create() - }; - tx_env.value = tx.value; - tx_env.data = tx.input.clone(); - tx_env.chain_id = tx.chain_id; - tx_env.nonce = Some(tx.nonce); - tx_env.access_list.clear(); - } - TxEnvelope::Eip2930(tx) => { - let cycle_tracker = CycleTracker::start("Eip2930"); - tx_env.caller = tx.recover_signer().unwrap_or_default(); - cycle_tracker.end(); - let tx = tx.tx(); - tx_env.gas_limit = tx.gas_limit.try_into().unwrap(); - tx_env.gas_price = tx.gas_price.try_into().unwrap(); - tx_env.gas_priority_fee = None; - tx_env.transact_to = if let TxKind::Call(to_addr) = tx.to { - TransactTo::Call(to_addr) - } else { - TransactTo::create() - }; - tx_env.value = tx.value; - tx_env.data = tx.input.clone(); - tx_env.chain_id = Some(tx.chain_id); - tx_env.nonce = Some(tx.nonce); - tx_env.access_list = tx.access_list.flattened(); - } - TxEnvelope::Eip1559(tx) => { - let cycle_tracker = CycleTracker::start("Eip1559"); - tx_env.caller = tx.recover_signer().unwrap_or_default(); - cycle_tracker.end(); - let tx = tx.tx(); - tx_env.gas_limit = tx.gas_limit.try_into().unwrap(); - tx_env.gas_price = tx.max_fee_per_gas.try_into().unwrap(); - tx_env.gas_priority_fee = Some(tx.max_priority_fee_per_gas.try_into().unwrap()); - tx_env.transact_to = if let TxKind::Call(to_addr) = tx.to { - TransactTo::Call(to_addr) - } else { - TransactTo::create() - }; - tx_env.value = tx.value; - tx_env.data = tx.input.clone(); - tx_env.chain_id = Some(tx.chain_id); - tx_env.nonce = Some(tx.nonce); - tx_env.access_list = tx.access_list.flattened(); - } - TxEnvelope::Eip4844(tx) => { - let cycle_tracker = CycleTracker::start("Eip1559"); - tx_env.caller = tx.recover_signer().unwrap_or_default(); - cycle_tracker.end(); - let tx = tx.tx().tx(); - tx_env.gas_limit = tx.gas_limit.try_into().unwrap(); - tx_env.gas_price = tx.max_fee_per_gas.try_into().unwrap(); - tx_env.gas_priority_fee = Some(tx.max_priority_fee_per_gas.try_into().unwrap()); - tx_env.transact_to = TransactTo::Call(tx.to); - tx_env.value = tx.value; - tx_env.data = tx.input.clone(); - tx_env.chain_id = Some(tx.chain_id); - tx_env.nonce = Some(tx.nonce); - tx_env.access_list = tx.access_list.flattened(); - tx_env.blob_hashes.clone_from(&tx.blob_versioned_hashes); - tx_env.max_fee_per_blob_gas = Some(U256::from(tx.max_fee_per_blob_gas)); - } - _ => todo!(), - }; - Ok(()) -} - -pub fn increase_account_balance( - db: &mut D, - address: Address, - amount_wei: U256, -) -> anyhow::Result<()> -where - D: Database + DatabaseCommit, - ::Error: Debug, -{ - // Read account from database - let mut account: Account = db - .basic(address) - .map_err(|db_err| anyhow!("Error increasing account balance for {address}: {db_err:?}"))? - .unwrap_or_default() - .into(); - // Credit withdrawal amount - account.info.balance = account.info.balance.checked_add(amount_wei).unwrap(); - account.mark_touch(); - // Commit changes to database - db.commit([(address, account)].into()); - - Ok(()) -} - -#[cfg(feature = "tracer")] -fn set_trace_writer( - tracer: &mut TracerEip3155, - chain_id: u64, - block_number: u64, - tx_no: usize, -) -> Arc>> { - struct FlushWriter { - writer: Arc>>, - } - impl FlushWriter { - fn new(writer: Arc>>) -> Self { - Self { writer } - } - } - impl Write for FlushWriter { - fn write(&mut self, buf: &[u8]) -> std::io::Result { - self.writer.lock().unwrap().write(buf) - } - - fn flush(&mut self) -> std::io::Result<()> { - self.writer.lock().unwrap().flush() - } - } - - // Create the traces directory if it doesn't exist - std::fs::create_dir_all("traces").expect("Failed to create traces directory"); - - // Construct the file writer to write the trace to - let file_name = format!("traces/{}_{}_{}.json", chain_id, block_number, tx_no); - let write = OpenOptions::new() - .write(true) - .create(true) - .truncate(true) - .open(file_name); - let trace = Arc::new(Mutex::new(BufWriter::new( - write.expect("Failed to open file"), - ))); - let writer = FlushWriter::new(Arc::clone(&trace)); - - // Set the writer inside the handler in revm - tracer.set_writer(Box::new(writer)); - - trace -} diff --git a/lib/src/builder/finalize.rs b/lib/src/builder/finalize.rs deleted file mode 100644 index c59c3ffc..00000000 --- a/lib/src/builder/finalize.rs +++ /dev/null @@ -1,130 +0,0 @@ -// Copyright 2023 RISC Zero, Inc. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -use core::mem; - -use alloy_consensus::Header as AlloyConsensusHeader; -use anyhow::Result; -use revm::{Database, DatabaseCommit}; - -use crate::{ - builder::BlockBuilder, - guest_mem_forget, - mem_db::{AccountState, MemDb}, - primitives::{ - keccak::keccak, - mpt::{MptNode, StateAccount}, - }, -}; - -pub trait BlockFinalizeStrategy -where - D: Database + DatabaseCommit, - ::Error: core::fmt::Debug, -{ - fn finalize(block_builder: BlockBuilder) -> Result<(AlloyConsensusHeader, MptNode)>; -} - -pub struct MemDbBlockFinalizeStrategy {} - -impl BlockFinalizeStrategy for MemDbBlockFinalizeStrategy { - fn finalize(mut block_builder: BlockBuilder) -> Result<(AlloyConsensusHeader, MptNode)> { - let db: MemDb = block_builder.db.take().expect("DB not initialized"); - - #[cfg(feature = "sp1-cycle-tracker")] - { - let mut account_touched = 0; - let mut storage_touched = 0; - } - - // apply state updates - let mut state_trie = mem::take(&mut block_builder.input.parent_state_trie); - for (address, account) in &db.accounts { - // if the account has not been touched, it can be ignored - if account.state == AccountState::None { - continue; - } - - // compute the index of the current account in the state trie - let state_trie_index = keccak(address); - - // remove deleted accounts from the state trie - if account.state == AccountState::Deleted { - state_trie.delete(&state_trie_index)?; - continue; - } - - #[cfg(feature = "sp1-cycle-tracker")] - { - account_touched += 1; - } - - // otherwise, compute the updated storage root for that account - let state_storage = &account.storage; - let storage_root = { - // getting a mutable reference is more efficient than calling remove - // every account must have an entry, even newly created accounts - let (storage_trie, _) = block_builder - .input - .parent_storage - .get_mut(address) - .expect("Address not found in storage"); - // for cleared accounts always start from the empty trie - if account.state == AccountState::StorageCleared { - storage_trie.clear(); - } - - // apply all new storage entries for the current account (address) - for (key, value) in state_storage { - let storage_trie_index = keccak(key.to_be_bytes::<32>()); - if value.is_zero() { - storage_trie.delete(&storage_trie_index)?; - } else { - storage_trie.insert_rlp(&storage_trie_index, *value)?; - } - - #[cfg(feature = "sp1-cycle-tracker")] - { - storage_touched += 1; - } - } - - storage_trie.hash() - }; - - let state_account = StateAccount { - nonce: account.info.nonce, - balance: account.info.balance, - storage_root, - code_hash: account.info.code_hash, - }; - state_trie.insert_rlp(&state_trie_index, state_account)?; - } - - #[cfg(feature = "sp1-cycle-tracker")] - { - println!("finalize Account touched {:?}", account_touched); - println!("finalize Storage touched {:?}", storage_touched); - } - - // update result header with the new state root - let mut header = block_builder.header.take().expect("Header not initialized"); - header.state_root = state_trie.hash(); - - // Leak memory, save cycles - guest_mem_forget(block_builder); - - Ok((header, state_trie)) - } -} diff --git a/lib/src/builder/initialize.rs b/lib/src/builder/initialize.rs deleted file mode 100644 index 11fbd1dd..00000000 --- a/lib/src/builder/initialize.rs +++ /dev/null @@ -1,189 +0,0 @@ -// Copyright 2023 RISC Zero, Inc. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -use core::mem; - -use anyhow::{bail, Result}; -use revm::{ - primitives::{AccountInfo, Bytecode, HashMap, B256}, - Database, DatabaseCommit, -}; - -use crate::{ - builder::BlockBuilder, - consts::MAX_BLOCK_HASH_AGE, - guest_mem_forget, - mem_db::{AccountState, DbAccount, MemDb}, - primitives::{ - keccak::{keccak, KECCAK_EMPTY}, - mpt::StateAccount, - Bytes, - }, - utils::HeaderHasher, -}; - -pub trait DbInitStrategy -where - D: Database + DatabaseCommit, - ::Error: core::fmt::Debug, -{ - fn initialize_database(block_builder: BlockBuilder) -> Result>; -} - -pub struct MemDbInitStrategy {} - -impl DbInitStrategy for MemDbInitStrategy { - fn initialize_database(mut block_builder: BlockBuilder) -> Result> { - // Verify state trie root - if block_builder.input.parent_state_trie.hash() - != block_builder.input.parent_header.state_root - { - bail!( - "Invalid state trie: expected {}, got {}", - block_builder.input.parent_header.state_root, - block_builder.input.parent_state_trie.hash() - ); - } - - // hash all the contract code - let contracts: HashMap = mem::take(&mut block_builder.input.contracts) - .into_iter() - .map(|bytes| (keccak(&bytes).into(), bytes)) - .collect(); - - #[cfg(all( - all(target_os = "zkvm", target_vendor = "succinct"), - feature = "sp1-cycle-tracker" - ))] - { - let mut account_touched = 0; - let mut storage_touched = 0; - } - - // Load account data into db - let mut accounts = HashMap::with_capacity(block_builder.input.parent_storage.len()); - for (address, (storage_trie, slots)) in &mut block_builder.input.parent_storage { - // consume the slots, as they are no longer needed afterwards - let slots = mem::take(slots); - - // load the account from the state trie or empty if it does not exist - let state_account = block_builder - .input - .parent_state_trie - .get_rlp::(&keccak(address))? - .unwrap_or_default(); - // Verify storage trie root - if storage_trie.hash() != state_account.storage_root { - bail!( - "Invalid storage trie for {address:?}: expected {}, got {}", - state_account.storage_root, - storage_trie.hash() - ); - } - #[cfg(all( - all(target_os = "zkvm", target_vendor = "succinct"), - feature = "sp1-cycle-tracker" - ))] - { - account_touched += 1; - } - - // load the corresponding code - let code_hash = state_account.code_hash; - let bytecode = if code_hash.0 == KECCAK_EMPTY.0 { - Bytecode::new() - } else { - let bytes = contracts - .get(&code_hash) - .expect("Contract not found") - .clone(); - Bytecode::new_raw(bytes) - }; - - // load storage reads - let mut storage = HashMap::with_capacity(slots.len()); - for slot in slots { - let value: crate::primitives::U256 = storage_trie - .get_rlp(&keccak(slot.to_be_bytes::<32>()))? - .unwrap_or_default(); - storage.insert(slot, value); - #[cfg(all( - all(target_os = "zkvm", target_vendor = "succinct"), - feature = "sp1-cycle-tracker" - ))] - { - storage_touched += 1; - } - } - - let mem_account = DbAccount { - info: AccountInfo { - balance: state_account.balance, - nonce: state_account.nonce, - code_hash: state_account.code_hash, - code: Some(bytecode), - }, - state: AccountState::None, - storage, - }; - - accounts.insert(*address, mem_account); - } - guest_mem_forget(contracts); - - #[cfg(all( - all(target_os = "zkvm", target_vendor = "succinct"), - feature = "sp1-cycle-tracker" - ))] - { - println!("initialize_db Account touch {account_touched:?}"); - println!("initialize_db Storage touch {storage_touched:?}"); - } - - // prepare block hash history - let mut block_hashes = - HashMap::with_capacity(block_builder.input.ancestor_headers.len() + 1); - block_hashes.insert( - block_builder.input.parent_header.number, - block_builder.input.parent_header.hash(), - ); - let mut prev = &block_builder.input.parent_header; - for current in &block_builder.input.ancestor_headers { - let current_hash = current.hash(); - if prev.parent_hash != current_hash { - bail!( - "Invalid chain: {} is not the parent of {}", - current.number, - prev.number - ); - } - if block_builder.input.parent_header.number < current.number - || block_builder.input.parent_header.number - current.number >= MAX_BLOCK_HASH_AGE - { - bail!( - "Invalid chain: {} is not one of the {MAX_BLOCK_HASH_AGE} most recent blocks", - current.number, - ); - } - block_hashes.insert(current.number, current_hash); - prev = current; - } - - // Store database - Ok(block_builder.with_db(MemDb { - accounts, - block_hashes, - })) - } -} diff --git a/lib/src/builder/mod.rs b/lib/src/builder/mod.rs deleted file mode 100644 index be76fe72..00000000 --- a/lib/src/builder/mod.rs +++ /dev/null @@ -1,151 +0,0 @@ -// Copyright 2023 RISC Zero, Inc. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -use alloy_consensus::Header as AlloyConsensusHeader; -use anyhow::Result; -use revm::{Database, DatabaseCommit}; - -pub use self::execute::TkoTxExecStrategy; -use crate::{ - builder::{ - finalize::{BlockFinalizeStrategy, MemDbBlockFinalizeStrategy}, - initialize::{DbInitStrategy, MemDbInitStrategy}, - prepare::{HeaderPrepStrategy, TaikoHeaderPrepStrategy}, - }, - consts::ChainSpec, - input::GuestInput, - mem_db::MemDb, - primitives::mpt::MptNode, - CycleTracker, -}; - -pub mod execute; -mod finalize; -mod initialize; -pub mod prepare; - -/// Optimistic database -#[allow(async_fn_in_trait)] -pub trait OptimisticDatabase { - /// Handle post execution work - async fn fetch_data(&mut self) -> bool; - - /// If the current database is optimistic - fn is_optimistic(&self) -> bool; -} - -/// A generic builder for building a block. -#[derive(Clone, Debug)] -pub struct BlockBuilder { - pub(crate) chain_spec: ChainSpec, - pub(crate) input: GuestInput, - pub(crate) db: Option, - pub(crate) header: Option, -} - -impl BlockBuilder -where - D: Database + DatabaseCommit + OptimisticDatabase, - ::Error: core::fmt::Debug, -{ - /// Creates a new block builder. - pub fn new(input: &GuestInput) -> BlockBuilder { - BlockBuilder { - chain_spec: input.chain_spec.clone(), - db: None, - header: None, - input: input.clone(), - } - } - - /// Sets the database instead of initializing it from the input. - pub fn with_db(mut self, db: D) -> Self { - self.db = Some(db); - self - } - - /// Initializes the database from the input. - pub fn initialize_database>(self) -> Result { - let cycle_tracker = CycleTracker::start("initialize_database"); - let res = T::initialize_database(self); - cycle_tracker.end(); - res - } - - /// Initializes the header. This must be called before executing transactions. - pub fn prepare_header(self) -> Result { - let cycle_tracker = CycleTracker::start("prepare_header"); - let res = T::prepare_header(self); - cycle_tracker.end(); - res - } - - /// Executes all input transactions. - pub fn execute_transactions(self) -> Result { - let cycle_tracker = CycleTracker::start("execute_transactions"); - let res = T::execute_transactions(self); - cycle_tracker.end(); - res - } - - /// Finalizes the block building and returns the header and the state trie. - pub fn finalize>(self) -> Result<(AlloyConsensusHeader, MptNode)> { - let cycle_tracker = CycleTracker::start("finalize"); - let res = T::finalize(self); - cycle_tracker.end(); - res - } - - /// Returns a reference to the database. - pub fn db(&self) -> Option<&D> { - self.db.as_ref() - } - - /// Returns a mutable reference to the database. - pub fn mut_db(&mut self) -> Option<&mut D> { - self.db.as_mut() - } -} - -/// A bundle of strategies for building a block using [BlockBuilder]. -pub trait BlockBuilderStrategy { - type DbInitStrategy: DbInitStrategy; - type HeaderPrepStrategy: HeaderPrepStrategy; - type TxExecStrategy: TxExecStrategy; - type BlockFinalizeStrategy: BlockFinalizeStrategy; - - /// Builds a block from the given input. - fn build_from(input: &GuestInput) -> Result<(AlloyConsensusHeader, MptNode)> { - BlockBuilder::::new(input) - .initialize_database::()? - .prepare_header::()? - .execute_transactions::()? - .finalize::() - } -} - -/// The [BlockBuilderStrategy] for building a Taiko block. -pub struct TaikoStrategy {} -impl BlockBuilderStrategy for TaikoStrategy { - type DbInitStrategy = MemDbInitStrategy; - type HeaderPrepStrategy = TaikoHeaderPrepStrategy; - type TxExecStrategy = TkoTxExecStrategy; - type BlockFinalizeStrategy = MemDbBlockFinalizeStrategy; -} -pub trait TxExecStrategy { - fn execute_transactions(block_builder: BlockBuilder) -> Result> - where - D: Database + DatabaseCommit + OptimisticDatabase, - ::Error: core::fmt::Debug; -} diff --git a/lib/src/builder/prepare.rs b/lib/src/builder/prepare.rs deleted file mode 100644 index 9a8ab6ca..00000000 --- a/lib/src/builder/prepare.rs +++ /dev/null @@ -1,75 +0,0 @@ -// Copyright 2023 RISC Zero, Inc. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -use core::fmt::Debug; - -use alloy_consensus::Header as AlloyConsensusHeader; -use anyhow::{bail, Context, Result}; -use revm::{Database, DatabaseCommit}; - -use crate::{builder::BlockBuilder, consts::MAX_EXTRA_DATA_BYTES, utils::HeaderHasher}; - -pub trait HeaderPrepStrategy { - fn prepare_header(block_builder: BlockBuilder) -> Result> - where - D: Database + DatabaseCommit, - ::Error: core::fmt::Debug; -} - -pub struct TaikoHeaderPrepStrategy {} - -impl HeaderPrepStrategy for TaikoHeaderPrepStrategy { - fn prepare_header(mut block_builder: BlockBuilder) -> Result> - where - D: Database + DatabaseCommit, - ::Error: Debug, - { - // Validate timestamp - let timestamp: u64 = block_builder.input.timestamp; - if timestamp < block_builder.input.parent_header.timestamp { - bail!( - "Invalid timestamp: expected >= {}, got {}", - block_builder.input.parent_header.timestamp, - block_builder.input.timestamp, - ); - } - // Validate extra data - let extra_data_bytes = block_builder.input.extra_data.len(); - if extra_data_bytes > MAX_EXTRA_DATA_BYTES { - bail!("Invalid extra data: expected <= {MAX_EXTRA_DATA_BYTES}, got {extra_data_bytes}") - } - // Derive header - let number: u64 = block_builder.input.parent_header.number; - block_builder.header = Some(AlloyConsensusHeader { - // Initialize fields that we can compute from the parent - parent_hash: block_builder.input.parent_header.hash(), - number: number - .checked_add(1) - .with_context(|| "Invalid block number: too large")?, - base_fee_per_gas: Some(block_builder.input.base_fee_per_gas.into()), - // Initialize metadata from input - beneficiary: block_builder.input.beneficiary, - gas_limit: block_builder.input.gas_limit.into(), - timestamp: block_builder.input.timestamp, - mix_hash: block_builder.input.mix_hash, - extra_data: block_builder.input.extra_data.clone(), - blob_gas_used: block_builder.input.blob_gas_used.map(|b| b.into()), - excess_blob_gas: block_builder.input.excess_blob_gas.map(|b| b.into()), - parent_beacon_block_root: block_builder.input.parent_beacon_block_root, - // do not fill the remaining fields - ..Default::default() - }); - Ok(block_builder) - } -} diff --git a/lib/src/consts.rs b/lib/src/consts.rs index 7db4f634..bc941fd1 100644 --- a/lib/src/consts.rs +++ b/lib/src/consts.rs @@ -1,17 +1,3 @@ -// Copyright 2023 RISC Zero, Inc. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - //! Constants for the Ethereum protocol. extern crate alloc; @@ -19,7 +5,7 @@ use alloc::collections::BTreeMap; use alloy_primitives::Address; use anyhow::{anyhow, bail, Result}; -use revm::primitives::SpecId; +use reth_primitives::revm_primitives::SpecId; use serde::{Deserialize, Serialize}; use serde_json::Value; diff --git a/lib/src/input.rs b/lib/src/input.rs index d0b30e47..eeef9288 100644 --- a/lib/src/input.rs +++ b/lib/src/input.rs @@ -1,35 +1,19 @@ -// Copyright 2023 RISC Zero, Inc. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. use core::fmt::Debug; #[cfg(feature = "std")] use std::path::PathBuf; -use alloy_consensus::Header as AlloyConsensusHeader; use alloy_rpc_types::Withdrawal as AlloyWithdrawal; use alloy_sol_types::{sol, SolCall}; use anyhow::{anyhow, Result}; -use revm::primitives::HashMap; +use reth_primitives::revm_primitives::{Address, Bytes, HashMap, B256, U256}; use serde::{Deserialize, Serialize}; use serde_with::serde_as; +use reth_primitives::{Block as RethBlock, Header}; + #[cfg(not(feature = "std"))] use crate::no_std::*; -use crate::{ - consts::ChainSpec, - primitives::{mpt::MptNode, Address, Bytes, B256, U256}, - serde_with::{RlpBytes, RlpHexBytes}, -}; +use crate::{consts::ChainSpec, primitives::mpt::MptNode}; /// Represents the state of an account's storage. /// The storage trie together with the used storage slots allow us to reconstruct all the @@ -40,18 +24,14 @@ pub type StorageEntry = (MptNode, Vec); #[serde_as] #[derive(Debug, Clone, Default, Deserialize, Serialize)] pub struct GuestInput { + /// Reth block + pub block: RethBlock, /// The network to generate the proof for pub chain_spec: ChainSpec, /// Block number pub block_number: u64, - /// Block hash - for reference! - pub block_hash_reference: B256, - /// Block header - for reference! - #[serde_as(as = "RlpBytes")] - pub block_header_reference: AlloyConsensusHeader, /// Previous block header - #[serde_as(as = "RlpBytes")] - pub parent_header: AlloyConsensusHeader, + pub parent_header: Header, /// Address to which all priority fees in this block are transferred. pub beneficiary: Address, /// Scalar equal to the current limit of gas expenditure per block. @@ -71,8 +51,7 @@ pub struct GuestInput { /// The code of all unique contracts. pub contracts: Vec, /// List of at most 256 previous block headers - #[serde_as(as = "Vec")] - pub ancestor_headers: Vec, + pub ancestor_headers: Vec
, /// Base fee per gas pub base_fee_per_gas: u64, @@ -88,8 +67,7 @@ pub struct GuestInput { #[derive(Clone, Debug, Default, Serialize, Deserialize)] pub struct TaikoGuestInput { /// header - #[serde_as(as = "RlpBytes")] - pub l1_header: AlloyConsensusHeader, + pub l1_header: Header, pub tx_data: Vec, pub anchor_tx: String, pub block_proposed: BlockProposed, @@ -107,8 +85,7 @@ pub struct TaikoProverData { #[serde_as] #[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)] pub struct GuestOutput { - #[serde_as(as = "RlpHexBytes")] - pub header: AlloyConsensusHeader, + pub header: Header, pub hash: B256, } diff --git a/lib/src/lib.rs b/lib/src/lib.rs index 79925dc6..31b6f809 100644 --- a/lib/src/lib.rs +++ b/lib/src/lib.rs @@ -1,16 +1,3 @@ -// Copyright 2023 RISC Zero, Inc. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. #![cfg_attr(any(not(feature = "std")), no_std)] #[cfg(feature = "std")] @@ -41,7 +28,6 @@ pub mod utils; #[cfg(not(target_os = "zkvm"))] mod time { - pub use core::ops::AddAssign; pub use std::time::{Duration, Instant}; } @@ -59,9 +45,9 @@ mod time { pub fn now() -> Instant { Instant::default() } - pub fn duration_since(&self, _instant: Instant) -> Duration { - Duration::default() - } + //pub fn duration_since(&self, _instant: Instant) -> Duration { + // Duration::default() + //} pub fn elapsed(&self) -> Duration { Duration::default() } @@ -165,7 +151,7 @@ pub fn inplace_print(title: &str) { if consts::IN_CONTAINER.is_some() { return; } - print!("\r\n{title}"); + print!("\r{title}"); #[cfg(all(feature = "std", debug_assertions))] io::stdout().flush().unwrap(); } @@ -174,7 +160,7 @@ pub fn clear_line() { if consts::IN_CONTAINER.is_some() { return; } - print!("\r\n\x1B[2K"); + print!("\r\x1B[2K"); } /// call forget only if running inside the guest @@ -182,90 +168,3 @@ pub fn guest_mem_forget(_t: T) { #[cfg(target_os = "zkvm")] // TODO: separate for risc0 core::mem::forget(_t) } - -pub trait RlpBytes: Sized { - /// Decodes the blob into the appropriate type. - /// The input must contain exactly one value and no trailing data. - fn decode_bytes(bytes: impl AsRef<[u8]>) -> Result; -} - -impl RlpBytes for T -where - T: alloy_rlp::Decodable, -{ - #[inline] - fn decode_bytes(bytes: impl AsRef<[u8]>) -> Result { - let mut buf = bytes.as_ref(); - let this = T::decode(&mut buf)?; - if buf.is_empty() { - Ok(this) - } else { - Err(alloy_rlp::Error::Custom("Trailing data")) - } - } -} - -pub mod serde_with { - use serde::{Deserialize, Deserializer, Serialize, Serializer}; - use serde_with::{DeserializeAs, SerializeAs}; - - use super::RlpBytes as _; - - pub struct RlpBytes {} - - impl SerializeAs for RlpBytes - where - T: alloy_rlp::Encodable, - { - fn serialize_as(source: &T, serializer: S) -> Result - where - S: Serializer, - { - let bytes = alloy_rlp::encode(source); - bytes.serialize(serializer) - } - } - - impl<'de, T> DeserializeAs<'de, T> for RlpBytes - where - T: alloy_rlp::Decodable, - { - fn deserialize_as(deserializer: D) -> Result - where - D: Deserializer<'de>, - { - let bytes = >::deserialize(deserializer)?; - T::decode_bytes(bytes).map_err(serde::de::Error::custom) - } - } - - pub struct RlpHexBytes {} - - impl SerializeAs for RlpHexBytes - where - T: alloy_rlp::Encodable, - { - fn serialize_as(source: &T, serializer: S) -> Result - where - S: Serializer, - { - let bytes = alloy_rlp::encode(source); - let hex_str = hex::encode(bytes); - hex_str.serialize(serializer) - } - } - - impl<'de, T> DeserializeAs<'de, T> for RlpHexBytes - where - T: alloy_rlp::Decodable, - { - fn deserialize_as(deserializer: D) -> Result - where - D: Deserializer<'de>, - { - let hex_str = ::deserialize(deserializer)?; - let bytes = hex::decode(hex_str).unwrap(); - T::decode_bytes(bytes).map_err(serde::de::Error::custom) - } - } -} diff --git a/lib/src/mem_db.rs b/lib/src/mem_db.rs index 50930945..dc003e78 100644 --- a/lib/src/mem_db.rs +++ b/lib/src/mem_db.rs @@ -12,9 +12,10 @@ // See the License for the specific language governing permissions and // limitations under the License. use anyhow::anyhow; -use revm::{ - primitives::{Account, AccountInfo, Bytecode}, - Database, DatabaseCommit, +use reth_evm::execute::ProviderError; +use reth_primitives::revm_primitives::{ + db::{Database, DatabaseCommit}, + Account, AccountInfo, Bytecode, }; use serde::{Deserialize, Serialize}; use std::collections::{hash_map::Entry, HashMap}; @@ -44,12 +45,6 @@ pub enum DbError { Unspecified(#[from] anyhow::Error), } -impl From for anyhow::Error { - fn from(error: DbError) -> Self { - anyhow!(error) - } -} - #[derive(Debug, Clone, Default, PartialEq, Eq, Serialize, Deserialize)] pub enum AccountState { // Account can be cleared/removed from state. @@ -141,13 +136,13 @@ impl MemDb { } impl Database for MemDb { - type Error = DbError; + type Error = ProviderError; /// Get basic account information. fn basic(&mut self, address: Address) -> Result, Self::Error> { match self.accounts.get(&address) { Some(db_account) => Ok(db_account.info()), - None => Err(DbError::AccountNotFound(address)), + None => Err(ProviderError::BestBlockNotFound), } } @@ -169,26 +164,29 @@ impl Database for MemDb { // if the account has been deleted or cleared, we must return 0 AccountState::StorageCleared => Ok(U256::ZERO), // otherwise this is an uncached load - _ => Err(DbError::SlotNotFound(address, index)), + _ => Err(ProviderError::BestBlockNotFound), }, }, // otherwise this is an uncached load - None => Err(DbError::AccountNotFound(address)), + None => Err(ProviderError::BestBlockNotFound), } } fn block_hash(&mut self, number: U256) -> Result { - let block_no: u64 = number.try_into().map_err(|_| { - anyhow!( - "invalid block number: expected <= {}, got {}", - u64::MAX, - &number - ) - })?; + let block_no: u64 = number + .try_into() + .map_err(|_| { + anyhow!( + "invalid block number: expected <= {}, got {}", + u64::MAX, + &number + ) + }) + .expect("block hash not found"); self.block_hashes .get(&block_no) .copied() - .ok_or(DbError::BlockNotFound(block_no)) + .ok_or(ProviderError::BestBlockNotFound) } } diff --git a/lib/src/primitives/eip4844.rs b/lib/src/primitives/eip4844.rs index 0dfca5a2..e135261e 100644 --- a/lib/src/primitives/eip4844.rs +++ b/lib/src/primitives/eip4844.rs @@ -1,7 +1,9 @@ //! Helpers for working with EIP-4844 blob fee. // re-exports from revm for calculating blob fee -pub use revm_primitives::{calc_blob_gasprice, calc_excess_blob_gas as calculate_excess_blob_gas}; +pub use reth_primitives::revm_primitives::{ + calc_blob_gasprice, calc_excess_blob_gas as calculate_excess_blob_gas, +}; #[cfg(feature = "c-kzg")] use sha2::{Digest, Sha256}; @@ -34,7 +36,7 @@ mod trusted_setup { use std::{io::Write, sync::Arc}; use once_cell::sync::Lazy; - pub use revm_primitives::kzg::parse_kzg_trusted_setup; + pub use reth_primitives::revm_primitives::kzg::parse_kzg_trusted_setup; use crate::primitives::kzg::KzgSettings; @@ -42,8 +44,8 @@ mod trusted_setup { pub static MAINNET_KZG_TRUSTED_SETUP: Lazy> = Lazy::new(|| { Arc::new( c_kzg::KzgSettings::load_trusted_setup( - &revm_primitives::kzg::G1_POINTS.0, - &revm_primitives::kzg::G2_POINTS.0, + &reth_primitives::revm_primitives::kzg::G1_POINTS.0, + &reth_primitives::revm_primitives::kzg::G2_POINTS.0, ) .expect("failed to load trusted setup"), ) diff --git a/lib/src/primitives/mod.rs b/lib/src/primitives/mod.rs index 1ddf8115..5f3718bb 100644 --- a/lib/src/primitives/mod.rs +++ b/lib/src/primitives/mod.rs @@ -1,69 +1,11 @@ -// Copyright 2023 RISC Zero, Inc. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -//#![cfg_attr(not(feature = "std"), no_std)] - extern crate alloc; extern crate core; pub use alloc::{vec, vec::Vec}; +pub use alloy_primitives::*; +#[cfg(feature = "c-kzg")] +pub use c_kzg as kzg; pub mod eip4844; pub mod keccak; pub mod mpt; -pub mod receipt; -pub mod signature; - -#[cfg(feature = "c-kzg")] -pub use c_kzg as kzg; - -pub mod revm; -pub use alloy_eips; -pub use alloy_primitives::*; -pub use alloy_rlp as rlp; - -pub trait RlpBytes { - /// Returns the RLP-encoding. - fn to_rlp(&self) -> Vec; -} - -impl RlpBytes for T -where - T: rlp::Encodable, -{ - #[inline] - fn to_rlp(&self) -> Vec { - let rlp_length = self.length(); - let mut out = Vec::with_capacity(rlp_length); - self.encode(&mut out); - debug_assert_eq!(out.len(), rlp_length); - out - } -} - -pub trait Rlp2718Bytes { - /// Returns the RLP-encoding. - fn to_rlp_2718(&self) -> Vec; -} - -impl Rlp2718Bytes for T -where - T: alloy_eips::eip2718::Encodable2718, -{ - #[inline] - fn to_rlp_2718(&self) -> Vec { - let mut out = Vec::new(); - self.encode_2718(&mut out); - out - } -} diff --git a/lib/src/primitives/mpt.rs b/lib/src/primitives/mpt.rs index 9680f7a4..c9bc2767 100644 --- a/lib/src/primitives/mpt.rs +++ b/lib/src/primitives/mpt.rs @@ -24,7 +24,7 @@ use alloy_rlp::Encodable; use alloy_rlp_derive::{RlpDecodable, RlpEncodable, RlpMaxEncodedLen}; use alloy_rpc_types::EIP1186AccountProofResponse; use anyhow::{Context, Result}; -use revm_primitives::{Address, HashMap}; +use reth_primitives::revm_primitives::{Address, HashMap}; use rlp::{Decodable, DecoderError, Prototype, Rlp}; use serde::{Deserialize, Serialize}; use thiserror::Error as ThisError; diff --git a/lib/src/primitives/receipt.rs b/lib/src/primitives/receipt.rs deleted file mode 100644 index 175de22d..00000000 --- a/lib/src/primitives/receipt.rs +++ /dev/null @@ -1,229 +0,0 @@ -// Copyright 2023 RISC Zero, Inc. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -extern crate alloc; -extern crate core; - -pub use alloc::{ - boxed::Box, - format, - string::{String, ToString}, - vec, - vec::Vec, -}; -pub use core::{ - convert::From, - default::Default, - option::{Option, Option::*}, - result::{Result, Result::*}, -}; - -use alloy_primitives::{Address, Bloom, BloomInput, Bytes, B256, U256}; -use alloy_rlp::Encodable; -use alloy_rlp_derive::RlpEncodable; -use serde::{Deserialize, Serialize}; - -/// Represents an Ethereum log entry. -#[derive(Debug, Clone, PartialEq, Eq, Default, Serialize, Deserialize, RlpEncodable)] -pub struct Log { - /// Contract that emitted this log. - pub address: Address, - /// Topics of the log. The number of logs depend on what `LOG` opcode is used. - pub topics: Vec, - /// Arbitrary length data. - pub data: Bytes, -} - -/// Payload of a [Receipt]. -#[derive(Debug, Clone, PartialEq, Eq, Default, Serialize, Deserialize, RlpEncodable)] -pub struct ReceiptPayload { - /// Indicates whether the transaction was executed successfully. - pub success: bool, - /// Total gas used by the transaction. - pub cumulative_gas_used: U256, - /// A bloom filter that contains indexed information of logs for quick searching. - pub logs_bloom: Bloom, - /// Logs generated during the execution of the transaction. - pub logs: Vec, -} - -/// Receipt containing result of transaction execution. -#[derive(Debug, Clone, PartialEq, Eq, Default, Serialize, Deserialize)] -pub struct Receipt { - /// Type of Receipt. - pub tx_type: u8, - /// Detailed payload of the receipt. - pub payload: ReceiptPayload, -} - -impl Encodable for Receipt { - /// Encodes the receipt into the `out` buffer. - #[inline] - fn encode(&self, out: &mut dyn alloy_rlp::BufMut) { - match self.tx_type { - // For legacy transactions - 0 => self.payload.encode(out), - // For EIP-2718 typed transactions - tx_type => { - // prepend the EIP-2718 transaction type - out.put_u8(tx_type); - // append the RLP-encoded payload - self.payload.encode(out); - } - } - } - - /// Returns the length of the encoded receipt in bytes. - #[inline] - fn length(&self) -> usize { - let mut payload_length = self.payload.length(); - if self.tx_type != 0 { - payload_length += 1; - } - payload_length - } -} - -impl Receipt { - /// Constructs a new [Receipt]. - /// - /// This function also computes the `logs_bloom` based on the provided logs. - pub fn new(tx_type: u8, success: bool, cumulative_gas_used: U256, logs: Vec) -> Receipt { - let mut logs_bloom = Bloom::default(); - for log in &logs { - logs_bloom.accrue(BloomInput::Raw(log.address.as_slice())); - for topic in &log.topics { - logs_bloom.accrue(BloomInput::Raw(topic.as_slice())); - } - } - - Receipt { - tx_type, - payload: ReceiptPayload { - success, - cumulative_gas_used, - logs_bloom, - logs, - }, - } - } -} - -// test vectors from https://github.com/ethereum/go-ethereum/blob/c40ab6af72ce282020d03c33e8273ea9b03d58f6/core/types/receipt_test.go -#[cfg(test)] -mod tests { - use hex_literal::hex; - use serde_json::json; - - use super::*; - - #[test] - fn legacy() { - let expected = hex!("f901c58001b9010000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000500000000000000000000000000000000000014000000000000000000000000000000000000000000000000000000000000000000000000000010000080000000000000000000004000000000000000000000000000040000000000000000000000000000800000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000f8bef85d940000000000000000000000000000000000000011f842a0000000000000000000000000000000000000000000000000000000000000deada0000000000000000000000000000000000000000000000000000000000000beef830100fff85d940000000000000000000000000000000000000111f842a0000000000000000000000000000000000000000000000000000000000000deada0000000000000000000000000000000000000000000000000000000000000beef830100ff"); - let receipt = Receipt::new( - 0, - false, - U256::from(1), - serde_json::from_value(json!([ - { - "address": "0x0000000000000000000000000000000000000011", - "topics": [ - "0x000000000000000000000000000000000000000000000000000000000000dead", - "0x000000000000000000000000000000000000000000000000000000000000beef" - ], - "data": "0x0100ff" - }, - { - "address": "0x0000000000000000000000000000000000000111", - "topics": [ - "0x000000000000000000000000000000000000000000000000000000000000dead", - "0x000000000000000000000000000000000000000000000000000000000000beef" - ], - "data": "0x0100ff" - } - ])) - .unwrap(), - ); - let mut data = vec![]; - receipt.encode(&mut data); - - assert_eq!(data, expected); - } - - #[test] - fn eip2930() { - let expected = hex!("01f901c58001b9010000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000500000000000000000000000000000000000014000000000000000000000000000000000000000000000000000000000000000000000000000010000080000000000000000000004000000000000000000000000000040000000000000000000000000000800000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000f8bef85d940000000000000000000000000000000000000011f842a0000000000000000000000000000000000000000000000000000000000000deada0000000000000000000000000000000000000000000000000000000000000beef830100fff85d940000000000000000000000000000000000000111f842a0000000000000000000000000000000000000000000000000000000000000deada0000000000000000000000000000000000000000000000000000000000000beef830100ff"); - let receipt = Receipt::new( - 1, - false, - U256::from(1), - serde_json::from_value(json!([ - { - "address": "0x0000000000000000000000000000000000000011", - "topics": [ - "0x000000000000000000000000000000000000000000000000000000000000dead", - "0x000000000000000000000000000000000000000000000000000000000000beef" - ], - "data": "0x0100ff" - }, - { - "address": "0x0000000000000000000000000000000000000111", - "topics": [ - "0x000000000000000000000000000000000000000000000000000000000000dead", - "0x000000000000000000000000000000000000000000000000000000000000beef" - ], - "data": "0x0100ff" - } - ])) - .unwrap(), - ); - let mut data = vec![]; - receipt.encode(&mut data); - - assert_eq!(data, expected); - } - - #[test] - fn eip1559() { - let expected = hex!("02f901c58001b9010000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000500000000000000000000000000000000000014000000000000000000000000000000000000000000000000000000000000000000000000000010000080000000000000000000004000000000000000000000000000040000000000000000000000000000800000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000f8bef85d940000000000000000000000000000000000000011f842a0000000000000000000000000000000000000000000000000000000000000deada0000000000000000000000000000000000000000000000000000000000000beef830100fff85d940000000000000000000000000000000000000111f842a0000000000000000000000000000000000000000000000000000000000000deada0000000000000000000000000000000000000000000000000000000000000beef830100ff"); - let receipt = Receipt::new( - 2, - false, - U256::from(1), - serde_json::from_value(json!([ - { - "address": "0x0000000000000000000000000000000000000011", - "topics": [ - "0x000000000000000000000000000000000000000000000000000000000000dead", - "0x000000000000000000000000000000000000000000000000000000000000beef" - ], - "data": "0x0100ff" - }, - { - "address": "0x0000000000000000000000000000000000000111", - "topics": [ - "0x000000000000000000000000000000000000000000000000000000000000dead", - "0x000000000000000000000000000000000000000000000000000000000000beef" - ], - "data": "0x0100ff" - } - ])) - .unwrap(), - ); - let mut data = vec![]; - receipt.encode(&mut data); - - assert_eq!(data, expected); - } -} diff --git a/lib/src/primitives/revm.rs b/lib/src/primitives/revm.rs deleted file mode 100644 index a680061f..00000000 --- a/lib/src/primitives/revm.rs +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2024 RISC Zero, Inc. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -//! Convert to revm types. - -extern crate alloc; -extern crate core; - -pub use alloc::{ - boxed::Box, - format, - string::{String, ToString}, - vec, - vec::Vec, -}; -pub use core::{ - convert::From, - default::Default, - option::{Option, Option::*}, - result::{Result, Result::*}, -}; - -use revm_primitives::Log as RevmLog; - -use crate::primitives::receipt::Log; - -/// Provides a conversion from `RevmLog` to the local [Log]. -impl From for Log { - fn from(log: RevmLog) -> Self { - Log { - address: log.address, - topics: log.data.topics().to_vec(), - data: log.data.data, - } - } -} diff --git a/lib/src/primitives/signature.rs b/lib/src/primitives/signature.rs deleted file mode 100644 index 88d34e8b..00000000 --- a/lib/src/primitives/signature.rs +++ /dev/null @@ -1,82 +0,0 @@ -// use revm_primitives::U256; - -// The order of the secp256k1 curve, divided by two. Signatures that should be checked -// according to EIP-2 should have an S value less than or equal to this. -// -// `57896044618658097711785492504343953926418782139537452191302581570759080747168` -// const SECP256K1N_HALF: U256 = U256::from_be_bytes([ -// 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, -// 0xFF, 0xFF, 0x5D, 0x57, 0x6E, 0x73, 0x57, 0xA4, 0x50, 0x1D, 0xDF, 0xE9, 0x2F, 0x46, -// 0x68, 0x1B, 0x20, 0xA0, ]); - -// Recovers the address of the sender using secp256k1 pubkey recovery. -// -// Converts the public key into an ethereum address by hashing the public key with -// keccak256. -// -// This does not ensure that the `s` value in the signature is low, and _just_ wraps the -// underlying secp256k1 library. -// pub fn recover_signer_unchecked_crypto(sig: &[u8; 65], msg: &[u8; 32]) -> -// Result { #[cfg(target_os = "zkvm")] -// { -// let pubkey = sp1_precompiles::secp256k1::ecrecover(sig, msg).unwrap(); -// return Ok(public_key_bytes_to_address(&pubkey)); -// } -// { -// let recid = RecoveryId::from_byte(sig[64]).expect("recovery ID is valid"); -// let sig = K256Signature::from_slice(&sig.as_slice()[..64])?; -// let recovered_key = VerifyingKey::recover_from_prehash(&msg[..], &sig, recid)?; -// let pubkey = PublicKey::from(&recovered_key); -// Ok(public_key_to_address(pubkey)) -// } -// } -// -// Recover signer from message hash, _without ensuring that the signature has a low `s` -// value_. -// -// Using this for signature validation will succeed, even if the signature is malleable or -// not compliant with EIP-2. This is provided for compatibility with old signatures which -// have large `s` values. -// pub fn recover_signer_unchecked(&self, hash: B256) -> Option
{ -// let mut sig: [u8; 65] = [0; 65]; -// -// sig[0..32].copy_from_slice(&self.r.to_be_bytes::<32>()); -// sig[32..64].copy_from_slice(&self.s.to_be_bytes::<32>()); -// sig[64] = self.odd_y_parity as u8; -// -// NOTE: we are removing error from underlying crypto library as it will restrain -// primitive errors and we care only if recovery is passing or not. -// recover_signer_unchecked_crypto(&sig, &hash.0).ok() -// } -// -// Recover signer address from message hash. This ensures that the signature S value is -// greater than `secp256k1n / 2`, as specified in -// [EIP-2](https://eips.ethereum.org/EIPS/eip-2). -// -// If the S value is too large, then this will return `None` -// pub fn recover_signer(&self, hash: B256) -> Option
{ -// if self.s > SECP256K1N_HALF { -// return None -// } -// -// self.recover_signer_unchecked(hash) -// } -// -// -// Converts a public key into an ethereum address by hashing the encoded public key with -// keccak256. -// pub fn public_key_to_address(public: PublicKey) -> Address { -// let pubkey_bytes = -// public.to_encoded_point(false).as_bytes().try_into().expect("The slice has 65 -// bytes"); public_key_bytes_to_address(&pubkey_bytes); -// // strip out the first byte because that should be the -// SECP256K1_TAG_PUBKEY_UNCOMPRESSED // tag returned by libsecp's uncompressed pubkey -// serialization let hash = keccak(&public.serialize_uncompressed()[1..]); -// Address::from_slice(&hash[12..]) -// } - -// fn public_key_bytes_to_address(public: &[u8; 65]) -> Address { -// // Strip out first byte of sec1 encoded pubkey -// let hash = keccak(&public[1..]); -// Address::from_slice(&hash[12..]) -// } diff --git a/lib/src/protocol_instance.rs b/lib/src/protocol_instance.rs index 94e21b3d..0d919da0 100644 --- a/lib/src/protocol_instance.rs +++ b/lib/src/protocol_instance.rs @@ -1,9 +1,8 @@ -use super::utils::ANCHOR_GAS_LIMIT; -use alloy_consensus::Header as AlloyConsensusHeader; use alloy_primitives::{Address, TxHash, B256}; use alloy_sol_types::SolValue; use anyhow::{ensure, Result}; use c_kzg::{Blob, KzgCommitment, KzgSettings}; +use reth_primitives::Header; use sha2::{Digest as _, Sha256}; use std::alloc::{alloc, Layout}; @@ -13,8 +12,8 @@ use crate::{ consts::{SupportedChainSpecs, VerifierType}, input::{BlockMetadata, EthDeposit, GuestInput, Transition}, primitives::keccak::keccak, - utils::HeaderHasher, }; +use reth_evm_ethereum::taiko::ANCHOR_GAS_LIMIT; const KZG_TRUST_SETUP_DATA: &[u8] = include_bytes!("../../kzg_settings_raw.bin"); @@ -29,11 +28,7 @@ pub struct ProtocolInstance { } impl ProtocolInstance { - pub fn new( - input: &GuestInput, - header: &AlloyConsensusHeader, - proof_type: VerifierType, - ) -> Result { + pub fn new(input: &GuestInput, header: &Header, proof_type: VerifierType) -> Result { let blob_used = input.taiko.block_proposed.meta.blobUsed; let tx_list_hash = if blob_used { if input.taiko.skip_verify_blob { @@ -121,7 +116,6 @@ impl ProtocolInstance { }) .collect::>(); - let gas_limit: u64 = header.gas_limit.try_into().unwrap(); let verifier_address = (*input .chain_spec .verifier_address @@ -132,19 +126,19 @@ impl ProtocolInstance { let pi = ProtocolInstance { transition: Transition { parentHash: header.parent_hash, - blockHash: header.hash(), + blockHash: header.hash_slow(), stateRoot: header.state_root, graffiti: input.taiko.prover_data.graffiti, }, block_metadata: BlockMetadata { - l1Hash: input.taiko.l1_header.hash(), + l1Hash: input.taiko.l1_header.hash_slow(), difficulty: input.taiko.block_proposed.meta.difficulty, blobHash: tx_list_hash, extraData: bytes_to_bytes32(&header.extra_data).into(), depositsHash: keccak(deposits.abi_encode()).into(), coinbase: header.beneficiary, id: header.number, - gasLimit: (gas_limit + gasLimit: (header.gas_limit - if input.chain_spec.is_taiko() { ANCHOR_GAS_LIMIT } else { diff --git a/lib/src/utils.rs b/lib/src/utils.rs index f4baff55..a1c9b854 100644 --- a/lib/src/utils.rs +++ b/lib/src/utils.rs @@ -1,41 +1,17 @@ -use core::str::FromStr; -// TODO(Cecilia): fix for no-std use std::io::Read; use std::io::Write; -use alloy_consensus::{Header as AlloyConsensusHeader, Signed, TxEip1559, TxEnvelope}; -use alloy_primitives::{uint, Address, Signature, TxKind, U256}; -use alloy_rlp::{Decodable, Encodable}; -use alloy_rpc_types::{Header as AlloyHeader, Transaction as AlloyTransaction}; -use anyhow::{anyhow, bail, ensure, Context, Result}; -use lazy_static::lazy_static; +use alloy_consensus::{Signed, TxEip1559, TxEnvelope}; +use alloy_primitives::{Signature, TxKind}; +use alloy_rlp::Decodable; +use alloy_rpc_types::Transaction as AlloyTransaction; +use anyhow::Result; use libflate::zlib::Decoder as zlibDecoder; use libflate::zlib::Encoder as zlibEncoder; +use crate::consts::{ChainSpec, Network}; #[cfg(not(feature = "std"))] use crate::no_std::*; -use crate::{ - consts::{ChainSpec, Network}, - input::{decode_anchor, GuestInput}, - primitives::{keccak256, B256}, -}; - -pub const ANCHOR_GAS_LIMIT: u64 = 250_000; - -lazy_static! { - pub static ref GOLDEN_TOUCH_ACCOUNT: Address = { - Address::from_str("0x0000777735367b36bC9B61C50022d9D0700dB4Ec") - .expect("invalid golden touch account") - }; - static ref GX1: U256 = - uint!(0x79BE667EF9DCBBAC55A06295CE870B07029BFCDB2DCE28D959F2815B16F81798_U256); - static ref N: U256 = - uint!(0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141_U256); - static ref GX1_MUL_PRIVATEKEY: U256 = - uint!(0x4341adf5a780b4a87939938fd7a032f6e6664c7da553c121d3b4947429639122_U256); - static ref GX2: U256 = - uint!(0xc6047f9441ed7d6d3045406e95c07cd85c778e4b8cef3ca7abac09b95c709ee5_U256); -} pub fn decode_transactions(tx_list: &[u8]) -> Vec { Vec::::decode(&mut &tx_list.to_owned()[..]).unwrap_or_else(|e| { @@ -240,138 +216,3 @@ pub fn zlib_compress_data(data: &[u8]) -> Result> { let res = encoder.finish().into_result()?; Ok(res.clone()) } - -/// check the anchor signature with fixed K value -fn check_anchor_signature(anchor: &Signed) -> Result<()> { - let sign = anchor.signature(); - if sign.r() == *GX1 { - return Ok(()); - } - let msg_hash = anchor.signature_hash(); - let msg_hash: U256 = msg_hash.into(); - if sign.r() == *GX2 { - // when r == GX2 require s == 0 if k == 1 - // alias: when r == GX2 require N == msg_hash + *GX1_MUL_PRIVATEKEY - if *N != msg_hash + *GX1_MUL_PRIVATEKEY { - bail!( - "r == GX2, but N != msg_hash + *GX1_MUL_PRIVATEKEY, N: {}, msg_hash: {msg_hash}, *GX1_MUL_PRIVATEKEY: {}", - *N, *GX1_MUL_PRIVATEKEY - ); - } - return Ok(()); - } - Err(anyhow!( - "r != *GX1 && r != GX2, r: {}, *GX1: {}, GX2: {}", - sign.r(), - *GX1, - *GX2 - )) -} - -pub fn check_anchor_tx(input: &GuestInput, anchor: &TxEnvelope, from: &Address) -> Result<()> { - match anchor { - TxEnvelope::Eip1559(tx) => { - // Check the signature - check_anchor_signature(tx).context(anyhow!("failed to check anchor signature"))?; - - let tx = tx.tx(); - - // Extract the `to` address - let TxKind::Call(to) = tx.to else { - panic!("anchor tx not a smart contract call") - }; - // Check that it's from the golden touch address - ensure!( - *from == *GOLDEN_TOUCH_ACCOUNT, - "anchor transaction from mismatch" - ); - // Check that the L2 contract is being called - ensure!( - to == input.chain_spec.l2_contract.unwrap(), - "anchor transaction to mismatch" - ); - // Tx can't have any ETH attached - ensure!( - tx.value == U256::from(0), - "anchor transaction value mismatch" - ); - // Tx needs to have the expected gas limit - ensure!( - tx.gas_limit == ANCHOR_GAS_LIMIT.into(), - "anchor transaction gas price mismatch" - ); - // Check needs to have the base fee set to the block base fee - ensure!( - tx.max_fee_per_gas == input.base_fee_per_gas.into(), - "anchor transaction gas mismatch" - ); - - // Okay now let's decode the anchor tx to verify the inputs - let anchor_call = decode_anchor(&tx.input)?; - // The L1 blockhash needs to match the expected value - ensure!( - anchor_call.l1Hash == input.taiko.l1_header.hash(), - "L1 hash mismatch" - ); - if input.chain_spec.network() == Network::TaikoA7.to_string() { - ensure!( - anchor_call.l1StateRoot == input.taiko.l1_header.state_root, - "L1 state root mismatch" - ); - } - ensure!( - anchor_call.l1BlockId == input.taiko.l1_header.number, - "L1 block number mismatch" - ); - // The parent gas used input needs to match the gas used value of the parent block - ensure!( - anchor_call.parentGasUsed == input.parent_header.gas_used as u32, - "parentGasUsed mismatch" - ); - } - _ => { - panic!("invalid anchor tx type"); - } - } - - Ok(()) -} - -pub trait HeaderHasher { - fn hash(&self) -> B256; -} - -impl HeaderHasher for AlloyConsensusHeader { - fn hash(&self) -> B256 { - let mut out = Vec::::new(); - self.encode(&mut out); - keccak256(&out) - } -} - -/// Convert from an Alloy RPC header to an Alloy Consensus Header -/// which can be serialized and can be used to generate the block hash. -pub fn to_header(header: &AlloyHeader) -> AlloyConsensusHeader { - AlloyConsensusHeader { - parent_hash: header.parent_hash, - ommers_hash: header.uncles_hash, - beneficiary: header.miner, - state_root: header.state_root, - transactions_root: header.transactions_root, - receipts_root: header.receipts_root, - logs_bloom: header.logs_bloom, - difficulty: header.difficulty, - number: header.number.unwrap(), - gas_limit: header.gas_limit, - gas_used: header.gas_used, - timestamp: header.timestamp, - extra_data: header.extra_data.clone(), - mix_hash: header.mix_hash.unwrap(), - nonce: header.nonce.unwrap(), - base_fee_per_gas: header.base_fee_per_gas, - withdrawals_root: header.withdrawals_root, - blob_gas_used: header.blob_gas_used, - excess_blob_gas: header.excess_blob_gas, - parent_beacon_block_root: header.parent_beacon_block_root, - } -} diff --git a/primitives/Cargo.toml b/primitives/Cargo.toml deleted file mode 100644 index 03092dca..00000000 --- a/primitives/Cargo.toml +++ /dev/null @@ -1,36 +0,0 @@ -[package] -name = "raiko-primitives" -version = "0.1.0" -edition = "2021" - -[dependencies] -alloy-primitives = { workspace = true } -alloy-sol-types = { workspace = true } -alloy-dyn-abi = { workspace = true } -alloy-rlp = { workspace = true } -alloy-rlp-derive = { workspace = true } -alloy-rpc-types = { workspace = true } -alloy-eips = { workspace = true } -anyhow = { workspace = true } -sha2 = { workspace = true, optional = true } -tempfile = { workspace = true, optional = true } - -revm-primitives = { workspace = true } -rlp = { workspace = true, features = ["std"] } -serde = { workspace = true } -sha3 = { workspace = true } -thiserror = { workspace = true } - -once_cell = { workspace = true, features = ["critical-section"], optional = true } - -# for eip-4844 -c-kzg = { workspace = true, features = ["serde"], optional = true } - -[dev-dependencies] -bincode = { workspace = true } -hex-literal = { workspace = true } -serde_json = { version = "1.0", default-features = false } - -[features] -std = ["anyhow/std", "rlp/std"] -c-kzg = ["dep:c-kzg", "revm-primitives/c-kzg", "dep:sha2", "dep:tempfile", "dep:once_cell"] \ No newline at end of file diff --git a/primitives/src/eip4844.rs b/primitives/src/eip4844.rs deleted file mode 100644 index dcfc4a7b..00000000 --- a/primitives/src/eip4844.rs +++ /dev/null @@ -1,87 +0,0 @@ -//! Helpers for working with EIP-4844 blob fee. - -// re-exports from revm for calculating blob fee -pub use revm_primitives::{calc_blob_gasprice, calc_excess_blob_gas as calculate_excess_blob_gas}; -#[cfg(feature = "c-kzg")] -use sha2::{Digest, Sha256}; - -#[cfg(feature = "c-kzg")] -use crate::B256; - -/// Calculates the versioned hash for a KzgCommitment -/// -/// Specified in [EIP-4844](https://eips.ethereum.org/EIPS/eip-4844#header-extension) -#[cfg(feature = "c-kzg")] -pub fn kzg_to_versioned_hash(commitment: &c_kzg::KzgCommitment) -> B256 { - let mut res = Sha256::digest(commitment.as_slice()); - res[0] = VERSIONED_HASH_VERSION_KZG; - B256::new(res.into()) -} - -/// Constants for EIP-4844 -/// from https://github.com/paradigmxyz/reth/blob/79452eadaf4963f1e8d78a18b1f490d7c560aa54/crates/primitives/src/constants/eip4844.rs#L2 -pub use alloy_eips::eip4844::{ - BLOB_GASPRICE_UPDATE_FRACTION, BLOB_TX_MIN_BLOB_GASPRICE, DATA_GAS_PER_BLOB, - FIELD_ELEMENTS_PER_BLOB, FIELD_ELEMENT_BYTES, MAX_BLOBS_PER_BLOCK, MAX_DATA_GAS_PER_BLOCK, - TARGET_BLOBS_PER_BLOCK, TARGET_DATA_GAS_PER_BLOCK, VERSIONED_HASH_VERSION_KZG, -}; -/// [EIP-4844](https://eips.ethereum.org/EIPS/eip-4844#parameters) protocol constants and utils for shard Blob Transactions. -#[cfg(feature = "c-kzg")] -pub use trusted_setup::*; - -#[cfg(feature = "c-kzg")] -mod trusted_setup { - use std::{io::Write, sync::Arc}; - - use once_cell::sync::Lazy; - pub use revm_primitives::kzg::parse_kzg_trusted_setup; - - use crate::kzg::KzgSettings; - - /// KZG trusted setup - pub static MAINNET_KZG_TRUSTED_SETUP: Lazy> = Lazy::new(|| { - Arc::new( - c_kzg::KzgSettings::load_trusted_setup( - &revm_primitives::kzg::G1_POINTS.0, - &revm_primitives::kzg::G2_POINTS.0, - ) - .expect("failed to load trusted setup"), - ) - }); - - /// Loads the trusted setup parameters from the given bytes and returns the - /// [KzgSettings]. - /// - /// This creates a temp file to store the bytes and then loads the [KzgSettings] from - /// the file via [KzgSettings::load_trusted_setup_file]. - pub fn load_trusted_setup_from_bytes( - bytes: &[u8], - ) -> Result { - let mut file = tempfile::NamedTempFile::new().map_err(LoadKzgSettingsError::TempFileErr)?; - file.write_all(bytes) - .map_err(LoadKzgSettingsError::TempFileErr)?; - KzgSettings::load_trusted_setup_file(file.path()).map_err(LoadKzgSettingsError::KzgError) - } - - /// Error type for loading the trusted setup. - #[derive(Debug, thiserror::Error)] - pub enum LoadKzgSettingsError { - /// Failed to create temp file to store bytes for loading [KzgSettings] via - /// [KzgSettings::load_trusted_setup_file]. - #[error("failed to setup temp file: {0}")] - TempFileErr(#[from] std::io::Error), - /// Kzg error - #[error("KZG error: {0:?}")] - KzgError(#[from] c_kzg::Error), - } - - #[cfg(test)] - mod tests { - use super::*; - - #[test] - fn ensure_load_kzg_settings() { - let _settings = Arc::clone(&MAINNET_KZG_TRUSTED_SETUP); - } - } -} diff --git a/primitives/src/keccak.rs b/primitives/src/keccak.rs deleted file mode 100644 index a7ae6f28..00000000 --- a/primitives/src/keccak.rs +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright 2023 RISC Zero, Inc. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -use alloy_primitives::{b256, B256}; -use sha3::{Digest, Keccak256}; - -/// Represents the Keccak-256 hash of an empty byte slice. -/// -/// This is a constant value and can be used as a default or placeholder -/// in various cryptographic operations. -pub const KECCAK_EMPTY: B256 = - b256!("c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470"); - -/// Computes the Keccak-256 hash of the provided data. -/// -/// This function is a thin wrapper around the Keccak256 hashing algorithm -/// and is optimized for performance. -/// -/// # TODO -/// - Consider switching the return type to `B256` for consistency with other parts of the -/// codebase. -#[inline] -pub fn keccak(data: impl AsRef<[u8]>) -> [u8; 32] { - // TODO: Remove this benchmarking code once performance testing is complete. - // std::hint::black_box(sha2::Sha256::digest(&data)); - Keccak256::digest(data).into() -} diff --git a/primitives/src/lib.rs b/primitives/src/lib.rs deleted file mode 100644 index 1ddf8115..00000000 --- a/primitives/src/lib.rs +++ /dev/null @@ -1,69 +0,0 @@ -// Copyright 2023 RISC Zero, Inc. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. -//#![cfg_attr(not(feature = "std"), no_std)] - -extern crate alloc; -extern crate core; - -pub use alloc::{vec, vec::Vec}; - -pub mod eip4844; -pub mod keccak; -pub mod mpt; -pub mod receipt; -pub mod signature; - -#[cfg(feature = "c-kzg")] -pub use c_kzg as kzg; - -pub mod revm; -pub use alloy_eips; -pub use alloy_primitives::*; -pub use alloy_rlp as rlp; - -pub trait RlpBytes { - /// Returns the RLP-encoding. - fn to_rlp(&self) -> Vec; -} - -impl RlpBytes for T -where - T: rlp::Encodable, -{ - #[inline] - fn to_rlp(&self) -> Vec { - let rlp_length = self.length(); - let mut out = Vec::with_capacity(rlp_length); - self.encode(&mut out); - debug_assert_eq!(out.len(), rlp_length); - out - } -} - -pub trait Rlp2718Bytes { - /// Returns the RLP-encoding. - fn to_rlp_2718(&self) -> Vec; -} - -impl Rlp2718Bytes for T -where - T: alloy_eips::eip2718::Encodable2718, -{ - #[inline] - fn to_rlp_2718(&self) -> Vec { - let mut out = Vec::new(); - self.encode_2718(&mut out); - out - } -} diff --git a/primitives/src/mpt.rs b/primitives/src/mpt.rs deleted file mode 100644 index 9680f7a4..00000000 --- a/primitives/src/mpt.rs +++ /dev/null @@ -1,1407 +0,0 @@ -// Copyright 2023 RISC Zero, Inc. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -use core::{ - cell::RefCell, - cmp, - fmt::{Debug, Write}, - iter, mem, -}; - -use alloy_primitives::{b256, TxNumber, B256, U256}; -use alloy_rlp::Encodable; -use alloy_rlp_derive::{RlpDecodable, RlpEncodable, RlpMaxEncodedLen}; -use alloy_rpc_types::EIP1186AccountProofResponse; -use anyhow::{Context, Result}; -use revm_primitives::{Address, HashMap}; -use rlp::{Decodable, DecoderError, Prototype, Rlp}; -use serde::{Deserialize, Serialize}; -use thiserror::Error as ThisError; - -pub type StorageEntry = (MptNode, Vec); - -/// Represents an Ethereum account within the state trie. -/// -/// The `StateAccount` struct encapsulates key details of an Ethereum account, including -/// its nonce, balance, storage root, and the hash of its associated bytecode. This -/// representation is used when interacting with or querying the Ethereum state trie. -#[derive( - Debug, - Clone, - PartialEq, - Eq, - Serialize, - Deserialize, - RlpEncodable, - RlpDecodable, - RlpMaxEncodedLen, -)] -pub struct StateAccount { - /// The number of transactions sent from this account's address. - pub nonce: TxNumber, - /// The current balance of the account in Wei. - pub balance: U256, - /// The root of the account's storage trie, representing all stored contract data. - pub storage_root: B256, - /// The Keccak-256 hash of the account's associated bytecode (if it's a contract). - pub code_hash: B256, -} - -impl Default for StateAccount { - /// Provides default values for a [StateAccount]. - /// - /// The default account has a nonce of 0, a balance of 0 Wei, an empty storage root, - /// and an empty bytecode hash. - fn default() -> Self { - Self { - nonce: 0, - balance: U256::ZERO, - storage_root: EMPTY_ROOT, - code_hash: KECCAK_EMPTY, - } - } -} - -pub trait RlpBytes { - /// Returns the RLP-encoding. - fn to_rlp(&self) -> Vec; -} - -impl RlpBytes for T -where - T: alloy_rlp::Encodable, -{ - #[inline] - fn to_rlp(&self) -> Vec { - let rlp_length = self.length(); - let mut out = Vec::with_capacity(rlp_length); - self.encode(&mut out); - debug_assert_eq!(out.len(), rlp_length); - out - } -} - -/// Root hash of an empty trie. -pub const EMPTY_ROOT: B256 = - b256!("56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421"); - -extern crate alloc; - -/// Represents the Keccak-256 hash of an empty byte slice. -/// -/// This is a constant value and can be used as a default or placeholder -/// in various cryptographic operations. -pub const KECCAK_EMPTY: B256 = - b256!("c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470"); - -/// Computes the Keccak-256 hash of the provided data. -/// -/// This function is a thin wrapper around the Keccak256 hashing algorithm -/// and is optimized for performance. -/// -/// # TODO -/// - Consider switching the return type to `B256` for consistency with other parts of the -/// codebase. -#[inline] -pub fn keccak(data: impl AsRef<[u8]>) -> [u8; 32] { - // TODO: Remove this benchmarking code once performance testing is complete. - // std::hint::black_box(sha2::Sha256::digest(&data)); - *alloy_primitives::utils::keccak256(data) -} - -/// Represents the root node of a sparse Merkle Patricia Trie. -/// -/// The "sparse" nature of this trie allows for truncation of certain unneeded parts, -/// representing them by their node hash. This design choice is particularly useful for -/// optimizing storage. However, operations targeting a truncated part will fail and -/// return an error. Another distinction of this implementation is that branches cannot -/// store values, aligning with the construction of MPTs in Ethereum. -#[derive(Clone, Debug, Default, PartialEq, Eq, Ord, PartialOrd, Serialize, Deserialize)] -pub struct MptNode { - /// The type and data of the node. - data: MptNodeData, - /// Cache for a previously computed reference of this node. This is skipped during - /// serialization. - #[serde(skip)] - cached_reference: RefCell>, -} - -/// Represents custom error types for the sparse Merkle Patricia Trie (MPT). -/// -/// These errors cover various scenarios that can occur during trie operations, such as -/// encountering unresolved nodes, finding values in branches where they shouldn't be, and -/// issues related to RLP (Recursive Length Prefix) encoding and decoding. -#[derive(Debug, ThisError)] -pub enum Error { - /// Triggered when an operation reaches an unresolved node. The associated `B256` - /// value provides details about the unresolved node. - #[error("reached an unresolved node: {0:#}")] - NodeNotResolved(B256), - /// Occurs when a value is unexpectedly found in a branch node. - #[error("branch node with value")] - ValueInBranch, - /// Represents errors related to the RLP encoding and decoding using the `alloy_rlp` - /// library. - #[error("RLP error")] - Rlp(#[from] alloy_rlp::Error), - /// Represents errors related to the RLP encoding and decoding, specifically legacy - /// errors. - #[error("RLP error")] - LegacyRlp(#[from] DecoderError), -} - -/// Represents the various types of data that can be stored within a node in the sparse -/// Merkle Patricia Trie (MPT). -/// -/// Each node in the trie can be of one of several types, each with its own specific data -/// structure. This enum provides a clear and type-safe way to represent the data -/// associated with each node type. -#[derive(Clone, Debug, Default, PartialEq, Eq, Ord, PartialOrd, Serialize, Deserialize)] -pub enum MptNodeData { - /// Represents an empty trie node. - #[default] - Null, - /// A node that can have up to 16 children. Each child is an optional boxed [MptNode]. - Branch([Option>; 16]), - /// A leaf node that contains a key and a value, both represented as byte vectors. - Leaf(Vec, Vec), - /// A node that has exactly one child and is used to represent a shared prefix of - /// several keys. - Extension(Vec, Box), - /// Represents a sub-trie by its hash, allowing for efficient storage of large - /// sub-tries without storing their entire content. - Digest(B256), -} - -/// Represents the ways in which one node can reference another node inside the sparse -/// Merkle Patricia Trie (MPT). -/// -/// Nodes in the MPT can reference other nodes either directly through their byte -/// representation or indirectly through a hash of their encoding. This enum provides a -/// clear and type-safe way to represent these references. -#[derive(Clone, Debug, PartialEq, Eq, Hash, Ord, PartialOrd, Serialize, Deserialize)] -pub enum MptNodeReference { - /// Represents a direct reference to another node using its byte encoding. Typically - /// used for short encodings that are less than 32 bytes in length. - Bytes(Vec), - /// Represents an indirect reference to another node using the Keccak hash of its long - /// encoding. Used for encodings that are not less than 32 bytes in length. - Digest(B256), -} - -/// Provides a conversion from [MptNodeData] to [MptNode]. -/// -/// This implementation allows for conversion from [MptNodeData] to [MptNode], -/// initializing the `data` field with the provided value and setting the -/// `cached_reference` field to `None`. -impl From for MptNode { - fn from(value: MptNodeData) -> Self { - Self { - data: value, - cached_reference: RefCell::new(None), - } - } -} - -/// Provides encoding functionalities for the `MptNode` type. -/// -/// This implementation allows for the serialization of an [MptNode] into its RLP-encoded -/// form. The encoding is done based on the type of node data ([MptNodeData]) it holds. -impl Encodable for MptNode { - /// Encodes the node into the provided `out` buffer. - /// - /// The encoding is done using the Recursive Length Prefix (RLP) encoding scheme. The - /// method handles different node data types and encodes them accordingly. - #[inline] - fn encode(&self, out: &mut dyn alloy_rlp::BufMut) { - match &self.data { - MptNodeData::Null => { - out.put_u8(alloy_rlp::EMPTY_STRING_CODE); - } - MptNodeData::Branch(nodes) => { - alloy_rlp::Header { - list: true, - payload_length: self.payload_length(), - } - .encode(out); - for child in nodes { - match child { - Some(node) => node.reference_encode(out), - None => out.put_u8(alloy_rlp::EMPTY_STRING_CODE), - } - } - // in the MPT reference, branches have values so always add empty value - out.put_u8(alloy_rlp::EMPTY_STRING_CODE); - } - MptNodeData::Leaf(prefix, value) => { - alloy_rlp::Header { - list: true, - payload_length: self.payload_length(), - } - .encode(out); - prefix.as_slice().encode(out); - value.as_slice().encode(out); - } - MptNodeData::Extension(prefix, node) => { - alloy_rlp::Header { - list: true, - payload_length: self.payload_length(), - } - .encode(out); - prefix.as_slice().encode(out); - node.reference_encode(out); - } - MptNodeData::Digest(digest) => { - digest.encode(out); - } - } - } - - /// Returns the length of the encoded node in bytes. - /// - /// This method calculates the length of the RLP-encoded node. It's useful for - /// determining the size requirements for storage or transmission. - #[inline] - fn length(&self) -> usize { - let payload_length = self.payload_length(); - payload_length + alloy_rlp::length_of_length(payload_length) - } -} - -/// Provides decoding functionalities for the [MptNode] type. -/// -/// This implementation allows for the deserialization of an RLP-encoded [MptNode] back -/// into its original form. The decoding is done based on the prototype of the RLP data, -/// ensuring that the node is reconstructed accurately. -/// -/// **Note**: This implementation is still using the older RLP library and needs to be -/// migrated to `alloy_rlp` in the future. -// TODO: migrate to alloy_rlp -impl Decodable for MptNode { - /// Decodes an RLP-encoded node from the provided `rlp` buffer. - /// - /// The method handles different RLP prototypes and reconstructs the `MptNode` based - /// on the encoded data. If the RLP data does not match any known prototype or if - /// there's an error during decoding, an error is returned. - fn decode(rlp: &Rlp) -> Result { - match rlp.prototype()? { - Prototype::Null | Prototype::Data(0) => Ok(MptNodeData::Null.into()), - Prototype::List(2) => { - let path: Vec = rlp.val_at(0)?; - let prefix = path[0]; - if (prefix & (2 << 4)) == 0 { - let node: MptNode = Decodable::decode(&rlp.at(1)?)?; - Ok(MptNodeData::Extension(path, Box::new(node)).into()) - } else { - Ok(MptNodeData::Leaf(path, rlp.val_at(1)?).into()) - } - } - Prototype::List(17) => { - let mut node_list = Vec::with_capacity(16); - for node_rlp in rlp.iter().take(16) { - match node_rlp.prototype()? { - Prototype::Null | Prototype::Data(0) => { - node_list.push(None); - } - _ => node_list.push(Some(Box::new(Decodable::decode(&node_rlp)?))), - } - } - let value: Vec = rlp.val_at(16)?; - if value.is_empty() { - Ok(MptNodeData::Branch(node_list.try_into().unwrap()).into()) - } else { - Err(DecoderError::Custom("branch node with value")) - } - } - Prototype::Data(32) => { - let bytes: Vec = rlp.as_val()?; - Ok(MptNodeData::Digest(B256::from_slice(&bytes)).into()) - } - _ => Err(DecoderError::RlpIncorrectListLen), - } - } -} - -/// Represents a node in the sparse Merkle Patricia Trie (MPT). -/// -/// The [MptNode] type encapsulates the data and functionalities associated with a node in -/// the MPT. It provides methods for manipulating the trie, such as inserting, deleting, -/// and retrieving values, as well as utility methods for encoding, decoding, and -/// debugging. -impl MptNode { - /// Clears the trie, replacing its data with an empty node, [MptNodeData::Null]. - /// - /// This method effectively removes all key-value pairs from the trie. - #[inline] - pub fn clear(&mut self) { - self.data = MptNodeData::Null; - self.invalidate_ref_cache(); - } - - /// Decodes an RLP-encoded [MptNode] from the provided byte slice. - /// - /// This method allows for the deserialization of a previously serialized [MptNode]. - #[inline] - pub fn decode(bytes: impl AsRef<[u8]>) -> Result { - rlp::decode(bytes.as_ref()).map_err(Error::from) - } - - /// Retrieves the underlying data of the node. - /// - /// This method provides a reference to the node's data, allowing for inspection and - /// manipulation. - #[inline] - pub fn as_data(&self) -> &MptNodeData { - &self.data - } - - /// Retrieves the [MptNodeReference] reference of the node when it's referenced inside - /// another node. - /// - /// This method provides a way to obtain a compact representation of the node for - /// storage or transmission purposes. - #[inline] - pub fn reference(&self) -> MptNodeReference { - self.cached_reference - .borrow_mut() - .get_or_insert_with(|| self.calc_reference()) - .clone() - } - - /// Computes and returns the 256-bit hash of the node. - /// - /// This method provides a unique identifier for the node based on its content. - #[inline] - pub fn hash(&self) -> B256 { - match self.data { - MptNodeData::Null => EMPTY_ROOT, - _ => match self.reference() { - MptNodeReference::Digest(digest) => digest, - MptNodeReference::Bytes(bytes) => keccak(bytes).into(), - }, - } - } - - /// Encodes the [MptNodeReference] of this node into the `out` buffer. - fn reference_encode(&self, out: &mut dyn alloy_rlp::BufMut) { - match self.reference() { - // if the reference is an RLP-encoded byte slice, copy it directly - MptNodeReference::Bytes(bytes) => out.put_slice(&bytes), - // if the reference is a digest, RLP-encode it with its fixed known length - MptNodeReference::Digest(digest) => { - out.put_u8(alloy_rlp::EMPTY_STRING_CODE + 32); - out.put_slice(digest.as_slice()); - } - } - } - - /// Returns the length of the encoded [MptNodeReference] of this node. - fn reference_length(&self) -> usize { - match self.reference() { - MptNodeReference::Bytes(bytes) => bytes.len(), - MptNodeReference::Digest(_) => 1 + 32, - } - } - - fn calc_reference(&self) -> MptNodeReference { - match &self.data { - MptNodeData::Null => MptNodeReference::Bytes(vec![alloy_rlp::EMPTY_STRING_CODE]), - MptNodeData::Digest(digest) => MptNodeReference::Digest(*digest), - _ => { - let encoded = alloy_rlp::encode(self); - if encoded.len() < 32 { - MptNodeReference::Bytes(encoded) - } else { - MptNodeReference::Digest(keccak(encoded).into()) - } - } - } - } - - /// Determines if the trie is empty. - /// - /// This method checks if the node represents an empty trie, i.e., it doesn't contain - /// any key-value pairs. - #[inline] - pub fn is_empty(&self) -> bool { - matches!(&self.data, MptNodeData::Null) - } - - /// Determines if the node represents a digest. - /// - /// A digest is a compact representation of a sub-trie, represented by its hash. - #[inline] - pub fn is_digest(&self) -> bool { - matches!(&self.data, MptNodeData::Digest(_)) - } - - /// Retrieves the nibbles corresponding to the node's prefix. - /// - /// Nibbles are half-bytes, and in the context of the MPT, they represent parts of - /// keys. - #[inline] - pub fn nibs(&self) -> Vec { - match &self.data { - MptNodeData::Null | MptNodeData::Branch(_) | MptNodeData::Digest(_) => vec![], - MptNodeData::Leaf(prefix, _) | MptNodeData::Extension(prefix, _) => prefix_nibs(prefix), - } - } - - /// Retrieves the value associated with a given key in the trie. - /// - /// If the key is not present in the trie, this method returns `None`. Otherwise, it - /// returns a reference to the associated value. If [None] is returned, the key is - /// provably not in the trie. - #[inline] - pub fn get(&self, key: &[u8]) -> Result, Error> { - self.get_internal(&to_nibs(key)) - } - - /// Retrieves the RLP-decoded value corresponding to the key. - /// - /// If the key is not present in the trie, this method returns `None`. Otherwise, it - /// returns the RLP-decoded value. - #[inline] - pub fn get_rlp(&self, key: &[u8]) -> Result, Error> { - match self.get(key)? { - Some(mut bytes) => Ok(Some(T::decode(&mut bytes)?)), - None => Ok(None), - } - } - - fn get_internal(&self, key_nibs: &[u8]) -> Result, Error> { - match &self.data { - MptNodeData::Null => Ok(None), - MptNodeData::Branch(nodes) => { - if let Some((i, tail)) = key_nibs.split_first() { - match nodes[*i as usize] { - Some(ref node) => node.get_internal(tail), - None => Ok(None), - } - } else { - Ok(None) - } - } - MptNodeData::Leaf(prefix, value) => { - if prefix_nibs(prefix) == key_nibs { - Ok(Some(value)) - } else { - Ok(None) - } - } - MptNodeData::Extension(prefix, node) => { - if let Some(tail) = key_nibs.strip_prefix(prefix_nibs(prefix).as_slice()) { - node.get_internal(tail) - } else { - Ok(None) - } - } - MptNodeData::Digest(digest) => Err(Error::NodeNotResolved(*digest)), - } - } - - /// Removes a key from the trie. - /// - /// This method attempts to remove a key-value pair from the trie. If the key is - /// present, it returns `true`. Otherwise, it returns `false`. - #[inline] - pub fn delete(&mut self, key: &[u8]) -> Result { - self.delete_internal(&to_nibs(key)) - } - - fn delete_internal(&mut self, key_nibs: &[u8]) -> Result { - match &mut self.data { - MptNodeData::Null => return Ok(false), - MptNodeData::Branch(children) => { - if let Some((i, tail)) = key_nibs.split_first() { - let child = &mut children[*i as usize]; - match child { - Some(node) => { - if !node.delete_internal(tail)? { - return Ok(false); - } - // if the node is now empty, remove it - if node.is_empty() { - *child = None; - } - } - None => return Ok(false), - } - } else { - return Err(Error::ValueInBranch); - } - - let mut remaining = children.iter_mut().enumerate().filter(|(_, n)| n.is_some()); - // there will always be at least one remaining node - let (index, node) = remaining.next().unwrap(); - // if there is only exactly one node left, we need to convert the branch - if remaining.next().is_none() { - let mut orphan = node.take().unwrap(); - match &mut orphan.data { - // if the orphan is a leaf, prepend the corresponding nib to it - MptNodeData::Leaf(prefix, orphan_value) => { - let new_nibs: Vec<_> = - iter::once(index as u8).chain(prefix_nibs(prefix)).collect(); - self.data = MptNodeData::Leaf( - to_encoded_path(&new_nibs, true), - mem::take(orphan_value), - ); - } - // if the orphan is an extension, prepend the corresponding nib to it - MptNodeData::Extension(prefix, orphan_child) => { - let new_nibs: Vec<_> = - iter::once(index as u8).chain(prefix_nibs(prefix)).collect(); - self.data = MptNodeData::Extension( - to_encoded_path(&new_nibs, false), - mem::take(orphan_child), - ); - } - // if the orphan is a branch or digest, convert to an extension - MptNodeData::Branch(_) | MptNodeData::Digest(_) => { - self.data = MptNodeData::Extension( - to_encoded_path(&[index as u8], false), - orphan, - ); - } - MptNodeData::Null => unreachable!(), - } - } - } - MptNodeData::Leaf(prefix, _) => { - if prefix_nibs(prefix) != key_nibs { - return Ok(false); - } - self.data = MptNodeData::Null; - } - MptNodeData::Extension(prefix, child) => { - let mut self_nibs = prefix_nibs(prefix); - if let Some(tail) = key_nibs.strip_prefix(self_nibs.as_slice()) { - if !child.delete_internal(tail)? { - return Ok(false); - } - } else { - return Ok(false); - } - - // an extension can only point to a branch or a digest; since it's sub trie was - // modified, we need to make sure that this property still holds - match &mut child.data { - // if the child is empty, remove the extension - MptNodeData::Null => { - self.data = MptNodeData::Null; - } - // for a leaf, replace the extension with the extended leaf - MptNodeData::Leaf(prefix, value) => { - self_nibs.extend(prefix_nibs(prefix)); - self.data = - MptNodeData::Leaf(to_encoded_path(&self_nibs, true), mem::take(value)); - } - // for an extension, replace the extension with the extended extension - MptNodeData::Extension(prefix, node) => { - self_nibs.extend(prefix_nibs(prefix)); - self.data = MptNodeData::Extension( - to_encoded_path(&self_nibs, false), - mem::take(node), - ); - } - // for a branch or digest, the extension is still correct - MptNodeData::Branch(_) | MptNodeData::Digest(_) => {} - } - } - MptNodeData::Digest(digest) => return Err(Error::NodeNotResolved(*digest)), - }; - - self.invalidate_ref_cache(); - Ok(true) - } - - /// Inserts a key-value pair into the trie. - /// - /// This method attempts to insert a new key-value pair into the trie. If the - /// insertion is successful, it returns `true`. If the key already exists, it updates - /// the value and returns `false`. - #[inline] - pub fn insert(&mut self, key: &[u8], value: Vec) -> Result { - assert!(!value.is_empty(), "value must not be empty"); - self.insert_internal(&to_nibs(key), value) - } - - /// Inserts an RLP-encoded value into the trie. - /// - /// This method inserts a value that's been encoded using RLP into the trie. - #[inline] - pub fn insert_rlp(&mut self, key: &[u8], value: impl Encodable) -> Result { - self.insert_internal(&to_nibs(key), value.to_rlp()) - } - - #[inline] - pub fn insert_rlp_encoded(&mut self, key: &[u8], value: Vec) -> Result { - self.insert_internal(&to_nibs(key), value) - } - - fn insert_internal(&mut self, key_nibs: &[u8], value: Vec) -> Result { - match &mut self.data { - MptNodeData::Null => { - self.data = MptNodeData::Leaf(to_encoded_path(key_nibs, true), value); - } - MptNodeData::Branch(children) => { - if let Some((i, tail)) = key_nibs.split_first() { - let child = &mut children[*i as usize]; - match child { - Some(node) => { - if !node.insert_internal(tail, value)? { - return Ok(false); - } - } - // if the corresponding child is empty, insert a new leaf - None => { - *child = Some(Box::new( - MptNodeData::Leaf(to_encoded_path(tail, true), value).into(), - )); - } - } - } else { - return Err(Error::ValueInBranch); - } - } - MptNodeData::Leaf(prefix, old_value) => { - let self_nibs = prefix_nibs(prefix); - let common_len = lcp(&self_nibs, key_nibs); - if common_len == self_nibs.len() && common_len == key_nibs.len() { - // if self_nibs == key_nibs, update the value if it is different - if old_value == &value { - return Ok(false); - } - *old_value = value; - } else if common_len == self_nibs.len() || common_len == key_nibs.len() { - return Err(Error::ValueInBranch); - } else { - let split_point = common_len + 1; - // otherwise, create a branch with two children - let mut children: [Option>; 16] = Default::default(); - - children[self_nibs[common_len] as usize] = Some(Box::new( - MptNodeData::Leaf( - to_encoded_path(&self_nibs[split_point..], true), - mem::take(old_value), - ) - .into(), - )); - children[key_nibs[common_len] as usize] = Some(Box::new( - MptNodeData::Leaf(to_encoded_path(&key_nibs[split_point..], true), value) - .into(), - )); - - let branch = MptNodeData::Branch(children); - if common_len > 0 { - // create parent extension for new branch - self.data = MptNodeData::Extension( - to_encoded_path(&self_nibs[..common_len], false), - Box::new(branch.into()), - ); - } else { - self.data = branch; - } - } - } - MptNodeData::Extension(prefix, existing_child) => { - let self_nibs = prefix_nibs(prefix); - let common_len = lcp(&self_nibs, key_nibs); - if common_len == self_nibs.len() { - // traverse down for update - if !existing_child.insert_internal(&key_nibs[common_len..], value)? { - return Ok(false); - } - } else if common_len == key_nibs.len() { - return Err(Error::ValueInBranch); - } else { - let split_point = common_len + 1; - // otherwise, create a branch with two children - let mut children: [Option>; 16] = Default::default(); - - children[self_nibs[common_len] as usize] = if split_point < self_nibs.len() { - Some(Box::new( - MptNodeData::Extension( - to_encoded_path(&self_nibs[split_point..], false), - mem::take(existing_child), - ) - .into(), - )) - } else { - Some(mem::take(existing_child)) - }; - children[key_nibs[common_len] as usize] = Some(Box::new( - MptNodeData::Leaf(to_encoded_path(&key_nibs[split_point..], true), value) - .into(), - )); - - let branch = MptNodeData::Branch(children); - if common_len > 0 { - // Create parent extension for new branch - self.data = MptNodeData::Extension( - to_encoded_path(&self_nibs[..common_len], false), - Box::new(branch.into()), - ); - } else { - self.data = branch; - } - } - } - MptNodeData::Digest(digest) => return Err(Error::NodeNotResolved(*digest)), - }; - - self.invalidate_ref_cache(); - Ok(true) - } - - fn invalidate_ref_cache(&mut self) { - self.cached_reference.borrow_mut().take(); - } - - /// Returns the number of traversable nodes in the trie. - /// - /// This method provides a count of all the nodes that can be traversed within the - /// trie. - pub fn size(&self) -> usize { - match self.as_data() { - MptNodeData::Null | MptNodeData::Digest(_) => 0, - MptNodeData::Branch(children) => { - children.iter().flatten().map(|n| n.size()).sum::() + 1 - } - MptNodeData::Leaf(_, _) => 1, - MptNodeData::Extension(_, child) => child.size() + 1, - } - } - - /// Formats the trie as a string list, where each line corresponds to a trie leaf. - /// - /// This method is primarily used for debugging purposes, providing a visual - /// representation of the trie's structure. - pub fn debug_rlp(&self) -> Vec { - // convert the nibs to hex - let nibs: String = self.nibs().iter().fold(String::new(), |mut output, n| { - let _ = write!(output, "{n:x}"); - output - }); - - match self.as_data() { - MptNodeData::Null => vec![format!("{:?}", MptNodeData::Null)], - MptNodeData::Branch(children) => children - .iter() - .enumerate() - .flat_map(|(i, child)| { - match child { - Some(node) => node.debug_rlp::(), - None => vec!["None".to_string()], - } - .into_iter() - .map(move |s| format!("{i:x} {s}")) - }) - .collect(), - MptNodeData::Leaf(_, data) => { - vec![format!( - "{nibs} -> {:?}", - T::decode(&mut &data[..]).unwrap() - )] - } - MptNodeData::Extension(_, node) => node - .debug_rlp::() - .into_iter() - .map(|s| format!("{nibs} {s}")) - .collect(), - MptNodeData::Digest(digest) => vec![format!("#{digest:#}")], - } - } - - /// Returns the length of the RLP payload of the node. - fn payload_length(&self) -> usize { - match &self.data { - MptNodeData::Null => 0, - MptNodeData::Branch(nodes) => { - 1 + nodes - .iter() - .map(|child| child.as_ref().map_or(1, |node| node.reference_length())) - .sum::() - } - MptNodeData::Leaf(prefix, value) => { - prefix.as_slice().length() + value.as_slice().length() - } - MptNodeData::Extension(prefix, node) => { - prefix.as_slice().length() + node.reference_length() - } - MptNodeData::Digest(_) => 32, - } - } -} - -/// Converts a byte slice into a vector of nibbles. -/// -/// A nibble is 4 bits or half of an 8-bit byte. This function takes each byte from the -/// input slice, splits it into two nibbles, and appends them to the resulting vector. -pub fn to_nibs(slice: &[u8]) -> Vec { - let mut result = Vec::with_capacity(2 * slice.len()); - for byte in slice { - result.push(byte >> 4); - result.push(byte & 0xf); - } - result -} - -/// Encodes a slice of nibbles into a vector of bytes, with an additional prefix to -/// indicate the type of node (leaf or extension). -/// -/// The function starts by determining the type of node based on the `is_leaf` parameter. -/// If the node is a leaf, the prefix is set to `0x20`. If the length of the nibbles is -/// odd, the prefix is adjusted and the first nibble is incorporated into it. -/// -/// The remaining nibbles are then combined into bytes, with each pair of nibbles forming -/// a single byte. The resulting vector starts with the prefix, followed by the encoded -/// bytes. -pub fn to_encoded_path(mut nibs: &[u8], is_leaf: bool) -> Vec { - let mut prefix = u8::from(is_leaf) * 0x20; - if nibs.len() % 2 != 0 { - prefix += 0x10 + nibs[0]; - nibs = &nibs[1..]; - } - iter::once(prefix) - .chain(nibs.chunks_exact(2).map(|byte| (byte[0] << 4) + byte[1])) - .collect() -} - -/// Returns the length of the common prefix. -fn lcp(a: &[u8], b: &[u8]) -> usize { - for (i, (a, b)) in iter::zip(a, b).enumerate() { - if a != b { - return i; - } - } - cmp::min(a.len(), b.len()) -} - -fn prefix_nibs(prefix: &[u8]) -> Vec { - let (extension, tail) = prefix.split_first().unwrap(); - // the first bit of the first nibble denotes the parity - let is_odd = extension & (1 << 4) != 0; - - let mut result = Vec::with_capacity(2 * tail.len() + usize::from(is_odd)); - // for odd lengths, the second nibble contains the first element - if is_odd { - result.push(extension & 0xf); - } - for nib in tail { - result.push(nib >> 4); - result.push(nib & 0xf); - } - result -} - -/// Parses proof bytes into a vector of MPT nodes. -pub fn parse_proof(proof: &[impl AsRef<[u8]>]) -> Result> { - Ok(proof - .iter() - .map(MptNode::decode) - .collect::, _>>()?) -} - -/// Creates a Merkle Patricia trie from an EIP-1186 proof. -/// For inclusion proofs the returned trie contains exactly one leaf with the value. -pub fn mpt_from_proof(proof_nodes: &[MptNode]) -> Result { - let mut next: Option = None; - for (i, node) in proof_nodes.iter().enumerate().rev() { - // there is nothing to replace for the last node - let Some(replacement) = next else { - next = Some(node.clone()); - continue; - }; - - // the next node must have a digest reference - let MptNodeReference::Digest(ref child_ref) = replacement.reference() else { - panic!("node {} in proof is not referenced by hash", i + 1); - }; - // find the child that references the next node - let resolved: MptNode = match node.as_data().clone() { - MptNodeData::Branch(mut children) => { - if let Some(child) = children.iter_mut().flatten().find( - |child| matches!(child.as_data(), MptNodeData::Digest(d) if d == child_ref), - ) { - *child = Box::new(replacement); - } else { - panic!("node {i} does not reference the successor"); - } - MptNodeData::Branch(children).into() - } - MptNodeData::Extension(prefix, child) => { - assert!( - matches!(child.as_data(), MptNodeData::Digest(d) if d == child_ref), - "node {i} does not reference the successor" - ); - MptNodeData::Extension(prefix, Box::new(replacement)).into() - } - MptNodeData::Null | MptNodeData::Leaf(_, _) | MptNodeData::Digest(_) => { - panic!("node {i} has no children to replace"); - } - }; - - next = Some(resolved); - } - - // the last node in the proof should be the root - Ok(next.unwrap_or_default()) -} - -/// Verifies that the given proof is a valid proof of exclusion for the given key. -pub fn is_not_included(key: &[u8], proof_nodes: &[MptNode]) -> Result { - let proof_trie = mpt_from_proof(proof_nodes).unwrap(); - // for valid proofs, the get must not fail - let value = proof_trie.get(key).unwrap(); - - Ok(value.is_none()) -} - -/// Creates a new MPT trie where all the digests contained in `node_store` are resolved. -pub fn resolve_nodes(root: &MptNode, node_store: &HashMap) -> MptNode { - let trie = match root.as_data() { - MptNodeData::Null | MptNodeData::Leaf(_, _) => root.clone(), - MptNodeData::Branch(children) => { - let children: Vec<_> = children - .iter() - .map(|child| { - child - .as_ref() - .map(|node| Box::new(resolve_nodes(node, node_store))) - }) - .collect(); - MptNodeData::Branch(children.try_into().unwrap()).into() - } - MptNodeData::Extension(prefix, target) => { - MptNodeData::Extension(prefix.clone(), Box::new(resolve_nodes(target, node_store))) - .into() - } - MptNodeData::Digest(digest) => { - if let Some(node) = node_store.get(&MptNodeReference::Digest(*digest)) { - resolve_nodes(node, node_store) - } else { - root.clone() - } - } - }; - // the root hash must not change - debug_assert_eq!(root.hash(), trie.hash()); - - trie -} - -/// Returns a list of all possible nodes that can be created by shortening the path of the -/// given node. -/// When nodes in an MPT are deleted, leaves or extensions may be extended. To still be -/// able to identify the original nodes, we create all shortened versions of the node. -pub fn shorten_node_path(node: &MptNode) -> Vec { - let mut res = Vec::new(); - let nibs = node.nibs(); - match node.as_data() { - MptNodeData::Null | MptNodeData::Branch(_) | MptNodeData::Digest(_) => {} - MptNodeData::Leaf(_, value) => { - for i in 0..=nibs.len() { - res.push( - MptNodeData::Leaf(to_encoded_path(&nibs[i..], true), value.clone()).into(), - ); - } - } - MptNodeData::Extension(_, child) => { - for i in 0..=nibs.len() { - res.push( - MptNodeData::Extension(to_encoded_path(&nibs[i..], false), child.clone()) - .into(), - ); - } - } - }; - res -} - -pub fn proofs_to_tries( - state_root: B256, - parent_proofs: HashMap, - proofs: HashMap, -) -> Result<(MptNode, HashMap)> { - // if no addresses are provided, return the trie only consisting of the state root - if parent_proofs.is_empty() { - return Ok((node_from_digest(state_root), HashMap::new())); - } - - let mut storage: HashMap = HashMap::with_capacity(parent_proofs.len()); - - let mut state_nodes = HashMap::new(); - let mut state_root_node = MptNode::default(); - for (address, proof) in parent_proofs { - let proof_nodes = parse_proof(&proof.account_proof).unwrap(); - mpt_from_proof(&proof_nodes).unwrap(); - - // the first node in the proof is the root - if let Some(node) = proof_nodes.first() { - state_root_node = node.clone(); - } - - for node in proof_nodes { - state_nodes.insert(node.reference(), node); - } - - let fini_proofs = proofs.get(&address).unwrap(); - - // assure that addresses can be deleted from the state trie - add_orphaned_leafs(address, &fini_proofs.account_proof, &mut state_nodes)?; - - // if no slots are provided, return the trie only consisting of the storage root - let storage_root = proof.storage_hash; - if proof.storage_proof.is_empty() { - let storage_root_node = node_from_digest(storage_root); - storage.insert(address, (storage_root_node, vec![])); - continue; - } - - let mut storage_nodes = HashMap::new(); - let mut storage_root_node = MptNode::default(); - for storage_proof in &proof.storage_proof { - let proof_nodes = parse_proof(&storage_proof.proof).unwrap(); - mpt_from_proof(&proof_nodes).unwrap(); - - // the first node in the proof is the root - if let Some(node) = proof_nodes.first() { - storage_root_node = node.clone(); - } - - for node in proof_nodes { - storage_nodes.insert(node.reference(), node); - } - } - - // assure that slots can be deleted from the storage trie - for storage_proof in &fini_proofs.storage_proof { - add_orphaned_leafs( - storage_proof.key.0 .0, - &storage_proof.proof, - &mut storage_nodes, - )?; - } - // create the storage trie, from all the relevant nodes - let storage_trie = resolve_nodes(&storage_root_node, &storage_nodes); - assert_eq!(storage_trie.hash(), storage_root); - - // convert the slots to a vector of U256 - let slots = proof - .storage_proof - .iter() - .map(|p| U256::from_be_bytes(p.key.0 .0)) - .collect(); - storage.insert(address, (storage_trie, slots)); - } - let state_trie = resolve_nodes(&state_root_node, &state_nodes); - assert_eq!(state_trie.hash(), state_root); - - Ok((state_trie, storage)) -} - -/// Adds all the leaf nodes of non-inclusion proofs to the nodes. -fn add_orphaned_leafs( - key: impl AsRef<[u8]>, - proof: &[impl AsRef<[u8]>], - nodes_by_reference: &mut HashMap, -) -> Result<()> { - if !proof.is_empty() { - let proof_nodes = parse_proof(proof).context("invalid proof encoding")?; - if is_not_included(&keccak(key), &proof_nodes)? { - // add the leaf node to the nodes - let leaf = proof_nodes.last().unwrap(); - for node in shorten_node_path(leaf) { - nodes_by_reference.insert(node.reference(), node); - } - } - } - - Ok(()) -} - -/// Creates a new MPT node from a digest. -fn node_from_digest(digest: B256) -> MptNode { - match digest { - EMPTY_ROOT | B256::ZERO => MptNode::default(), - _ => MptNodeData::Digest(digest).into(), - } -} - -#[cfg(test)] -mod tests { - use hex_literal::hex; - - use super::*; - - #[test] - pub fn test_trie_pointer_no_keccak() { - let cases = [ - ("do", "verb"), - ("dog", "puppy"), - ("doge", "coin"), - ("horse", "stallion"), - ]; - for (k, v) in cases { - let node: MptNode = - MptNodeData::Leaf(k.as_bytes().to_vec(), v.as_bytes().to_vec()).into(); - assert!( - matches!(node.reference(),MptNodeReference::Bytes(bytes) if bytes == node.to_rlp().to_vec()) - ); - } - } - - #[test] - pub fn test_to_encoded_path() { - // extension node with an even path length - let nibbles = vec![0x0a, 0x0b, 0x0c, 0x0d]; - assert_eq!(to_encoded_path(&nibbles, false), vec![0x00, 0xab, 0xcd]); - // extension node with an odd path length - let nibbles = vec![0x0a, 0x0b, 0x0c]; - assert_eq!(to_encoded_path(&nibbles, false), vec![0x1a, 0xbc]); - // leaf node with an even path length - let nibbles = vec![0x0a, 0x0b, 0x0c, 0x0d]; - assert_eq!(to_encoded_path(&nibbles, true), vec![0x20, 0xab, 0xcd]); - // leaf node with an odd path length - let nibbles = vec![0x0a, 0x0b, 0x0c]; - assert_eq!(to_encoded_path(&nibbles, true), vec![0x3a, 0xbc]); - } - - #[test] - pub fn test_lcp() { - let cases = [ - (vec![], vec![], 0), - (vec![0xa], vec![0xa], 1), - (vec![0xa, 0xb], vec![0xa, 0xc], 1), - (vec![0xa, 0xb], vec![0xa, 0xb], 2), - (vec![0xa, 0xb], vec![0xa, 0xb, 0xc], 2), - (vec![0xa, 0xb, 0xc], vec![0xa, 0xb, 0xc], 3), - (vec![0xa, 0xb, 0xc], vec![0xa, 0xb, 0xc, 0xd], 3), - (vec![0xa, 0xb, 0xc, 0xd], vec![0xa, 0xb, 0xc, 0xd], 4), - ]; - for (a, b, cpl) in cases { - assert_eq!(lcp(&a, &b), cpl) - } - } - - #[test] - pub fn test_empty() { - let trie = MptNode::default(); - - assert!(trie.is_empty()); - assert_eq!(trie.reference(), MptNodeReference::Bytes(vec![0x80])); - let expected = hex!("56e81f171bcc55a6ff8345e692c0f86e5b48e01b996cadc001622fb5e363b421"); - assert_eq!(expected, trie.hash().0); - - // test RLP encoding - let mut out = Vec::new(); - trie.encode(&mut out); - assert_eq!(out, vec![0x80]); - assert_eq!(trie.length(), out.len()); - let decoded = MptNode::decode(out).unwrap(); - assert_eq!(trie.hash(), decoded.hash()); - } - - #[test] - pub fn test_empty_key() { - let mut trie = MptNode::default(); - - trie.insert(&[], b"empty".to_vec()).unwrap(); - assert_eq!(trie.get(&[]).unwrap(), Some(b"empty".as_ref())); - assert!(trie.delete(&[]).unwrap()); - } - - #[test] - pub fn test_clear() { - let mut trie = MptNode::default(); - trie.insert(b"dog", b"puppy".to_vec()).unwrap(); - assert!(!trie.is_empty()); - assert_ne!(trie.hash(), EMPTY_ROOT); - - trie.clear(); - assert!(trie.is_empty()); - assert_eq!(trie.hash(), EMPTY_ROOT); - } - - #[test] - pub fn test_tiny() { - // trie consisting of an extension, a branch and two leafs - let mut trie = MptNode::default(); - trie.insert_rlp(b"a", 0u8).unwrap(); - trie.insert_rlp(b"b", 1u8).unwrap(); - - assert!(!trie.is_empty()); - let exp_rlp = hex!("d816d680c3208180c220018080808080808080808080808080"); - assert_eq!(trie.reference(), MptNodeReference::Bytes(exp_rlp.to_vec())); - let exp_hash = hex!("6fbf23d6ec055dd143ff50d558559770005ff44ae1d41276f1bd83affab6dd3b"); - assert_eq!(trie.hash().0, exp_hash); - - // test RLP encoding - let mut out = Vec::new(); - trie.encode(&mut out); - assert_eq!(out, exp_rlp.to_vec()); - assert_eq!(trie.length(), out.len()); - let decoded = MptNode::decode(out).unwrap(); - assert_eq!(trie.hash(), decoded.hash()); - } - - #[test] - pub fn test_partial() { - let mut trie = MptNode::default(); - trie.insert_rlp(b"aa", 0u8).unwrap(); - trie.insert_rlp(b"ab", 1u8).unwrap(); - trie.insert_rlp(b"ba", 2u8).unwrap(); - - let exp_hash = trie.hash(); - - // replace one node with its digest - let MptNodeData::Extension(_, node) = &mut trie.data else { - panic!("extension expected") - }; - **node = MptNodeData::Digest(node.hash()).into(); - assert!(node.is_digest()); - - let trie = MptNode::decode(trie.to_rlp()).unwrap(); - assert_eq!(trie.hash(), exp_hash); - - // lookups should fail - trie.get(b"aa").unwrap_err(); - trie.get(b"a0").unwrap_err(); - } - - #[test] - pub fn test_branch_value() { - let mut trie = MptNode::default(); - trie.insert(b"do", b"verb".to_vec()).unwrap(); - // leads to a branch with value which is not supported - trie.insert(b"dog", b"puppy".to_vec()).unwrap_err(); - } - - #[test] - pub fn test_insert() { - let mut trie = MptNode::default(); - let vals = vec![ - ("painting", "place"), - ("guest", "ship"), - ("mud", "leave"), - ("paper", "call"), - ("gate", "boast"), - ("tongue", "gain"), - ("baseball", "wait"), - ("tale", "lie"), - ("mood", "cope"), - ("menu", "fear"), - ]; - for (key, val) in &vals { - assert!(trie - .insert(key.as_bytes(), val.as_bytes().to_vec()) - .unwrap()); - } - - let expected = hex!("2bab6cdf91a23ebf3af683728ea02403a98346f99ed668eec572d55c70a4b08f"); - assert_eq!(expected, trie.hash().0); - - for (key, value) in &vals { - assert_eq!(trie.get(key.as_bytes()).unwrap(), Some(value.as_bytes())); - } - - // check inserting duplicate keys - assert!(trie.insert(vals[0].0.as_bytes(), b"new".to_vec()).unwrap()); - assert!(!trie.insert(vals[0].0.as_bytes(), b"new".to_vec()).unwrap()); - - // try RLP roundtrip - let decoded = MptNode::decode(trie.to_rlp()).unwrap(); - assert_eq!(trie.hash(), decoded.hash()); - } - - #[test] - pub fn test_keccak_trie() { - const N: usize = 512; - - // insert - let mut trie = MptNode::default(); - for i in 0..N { - assert!(trie.insert_rlp(&keccak(i.to_be_bytes()), i).unwrap()); - - // check hash against trie build in reverse - let mut reference = MptNode::default(); - for j in (0..=i).rev() { - reference.insert_rlp(&keccak(j.to_be_bytes()), j).unwrap(); - } - assert_eq!(trie.hash(), reference.hash()); - } - - let expected = hex!("7310027edebdd1f7c950a7fb3413d551e85dff150d45aca4198c2f6315f9b4a7"); - assert_eq!(trie.hash().0, expected); - - // get - for i in 0..N { - assert_eq!(trie.get_rlp(&keccak(i.to_be_bytes())).unwrap(), Some(i)); - assert!(trie.get(&keccak((i + N).to_be_bytes())).unwrap().is_none()); - } - - // delete - for i in 0..N { - assert!(trie.delete(&keccak(i.to_be_bytes())).unwrap()); - - let mut reference = MptNode::default(); - for j in ((i + 1)..N).rev() { - reference.insert_rlp(&keccak(j.to_be_bytes()), j).unwrap(); - } - assert_eq!(trie.hash(), reference.hash()); - } - assert!(trie.is_empty()); - } - - #[test] - pub fn test_index_trie() { - const N: usize = 512; - - // insert - let mut trie = MptNode::default(); - for i in 0..N { - assert!(trie.insert_rlp(&i.to_rlp(), i).unwrap()); - - // check hash against trie build in reverse - let mut reference = MptNode::default(); - for j in (0..=i).rev() { - reference.insert_rlp(&j.to_rlp(), j).unwrap(); - } - assert_eq!(trie.hash(), reference.hash()); - - // try RLP roundtrip - let decoded = MptNode::decode(trie.to_rlp()).unwrap(); - assert_eq!(trie.hash(), decoded.hash()); - } - - // get - for i in 0..N { - assert_eq!(trie.get_rlp(&i.to_rlp()).unwrap(), Some(i)); - assert!(trie.get(&(i + N).to_rlp()).unwrap().is_none()); - } - - // delete - for i in 0..N { - assert!(trie.delete(&i.to_rlp()).unwrap()); - - let mut reference = MptNode::default(); - for j in ((i + 1)..N).rev() { - reference.insert_rlp(&j.to_rlp(), j).unwrap(); - } - assert_eq!(trie.hash(), reference.hash()); - } - assert!(trie.is_empty()); - } -} diff --git a/primitives/src/receipt.rs b/primitives/src/receipt.rs deleted file mode 100644 index 175de22d..00000000 --- a/primitives/src/receipt.rs +++ /dev/null @@ -1,229 +0,0 @@ -// Copyright 2023 RISC Zero, Inc. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -extern crate alloc; -extern crate core; - -pub use alloc::{ - boxed::Box, - format, - string::{String, ToString}, - vec, - vec::Vec, -}; -pub use core::{ - convert::From, - default::Default, - option::{Option, Option::*}, - result::{Result, Result::*}, -}; - -use alloy_primitives::{Address, Bloom, BloomInput, Bytes, B256, U256}; -use alloy_rlp::Encodable; -use alloy_rlp_derive::RlpEncodable; -use serde::{Deserialize, Serialize}; - -/// Represents an Ethereum log entry. -#[derive(Debug, Clone, PartialEq, Eq, Default, Serialize, Deserialize, RlpEncodable)] -pub struct Log { - /// Contract that emitted this log. - pub address: Address, - /// Topics of the log. The number of logs depend on what `LOG` opcode is used. - pub topics: Vec, - /// Arbitrary length data. - pub data: Bytes, -} - -/// Payload of a [Receipt]. -#[derive(Debug, Clone, PartialEq, Eq, Default, Serialize, Deserialize, RlpEncodable)] -pub struct ReceiptPayload { - /// Indicates whether the transaction was executed successfully. - pub success: bool, - /// Total gas used by the transaction. - pub cumulative_gas_used: U256, - /// A bloom filter that contains indexed information of logs for quick searching. - pub logs_bloom: Bloom, - /// Logs generated during the execution of the transaction. - pub logs: Vec, -} - -/// Receipt containing result of transaction execution. -#[derive(Debug, Clone, PartialEq, Eq, Default, Serialize, Deserialize)] -pub struct Receipt { - /// Type of Receipt. - pub tx_type: u8, - /// Detailed payload of the receipt. - pub payload: ReceiptPayload, -} - -impl Encodable for Receipt { - /// Encodes the receipt into the `out` buffer. - #[inline] - fn encode(&self, out: &mut dyn alloy_rlp::BufMut) { - match self.tx_type { - // For legacy transactions - 0 => self.payload.encode(out), - // For EIP-2718 typed transactions - tx_type => { - // prepend the EIP-2718 transaction type - out.put_u8(tx_type); - // append the RLP-encoded payload - self.payload.encode(out); - } - } - } - - /// Returns the length of the encoded receipt in bytes. - #[inline] - fn length(&self) -> usize { - let mut payload_length = self.payload.length(); - if self.tx_type != 0 { - payload_length += 1; - } - payload_length - } -} - -impl Receipt { - /// Constructs a new [Receipt]. - /// - /// This function also computes the `logs_bloom` based on the provided logs. - pub fn new(tx_type: u8, success: bool, cumulative_gas_used: U256, logs: Vec) -> Receipt { - let mut logs_bloom = Bloom::default(); - for log in &logs { - logs_bloom.accrue(BloomInput::Raw(log.address.as_slice())); - for topic in &log.topics { - logs_bloom.accrue(BloomInput::Raw(topic.as_slice())); - } - } - - Receipt { - tx_type, - payload: ReceiptPayload { - success, - cumulative_gas_used, - logs_bloom, - logs, - }, - } - } -} - -// test vectors from https://github.com/ethereum/go-ethereum/blob/c40ab6af72ce282020d03c33e8273ea9b03d58f6/core/types/receipt_test.go -#[cfg(test)] -mod tests { - use hex_literal::hex; - use serde_json::json; - - use super::*; - - #[test] - fn legacy() { - let expected = hex!("f901c58001b9010000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000500000000000000000000000000000000000014000000000000000000000000000000000000000000000000000000000000000000000000000010000080000000000000000000004000000000000000000000000000040000000000000000000000000000800000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000f8bef85d940000000000000000000000000000000000000011f842a0000000000000000000000000000000000000000000000000000000000000deada0000000000000000000000000000000000000000000000000000000000000beef830100fff85d940000000000000000000000000000000000000111f842a0000000000000000000000000000000000000000000000000000000000000deada0000000000000000000000000000000000000000000000000000000000000beef830100ff"); - let receipt = Receipt::new( - 0, - false, - U256::from(1), - serde_json::from_value(json!([ - { - "address": "0x0000000000000000000000000000000000000011", - "topics": [ - "0x000000000000000000000000000000000000000000000000000000000000dead", - "0x000000000000000000000000000000000000000000000000000000000000beef" - ], - "data": "0x0100ff" - }, - { - "address": "0x0000000000000000000000000000000000000111", - "topics": [ - "0x000000000000000000000000000000000000000000000000000000000000dead", - "0x000000000000000000000000000000000000000000000000000000000000beef" - ], - "data": "0x0100ff" - } - ])) - .unwrap(), - ); - let mut data = vec![]; - receipt.encode(&mut data); - - assert_eq!(data, expected); - } - - #[test] - fn eip2930() { - let expected = hex!("01f901c58001b9010000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000500000000000000000000000000000000000014000000000000000000000000000000000000000000000000000000000000000000000000000010000080000000000000000000004000000000000000000000000000040000000000000000000000000000800000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000f8bef85d940000000000000000000000000000000000000011f842a0000000000000000000000000000000000000000000000000000000000000deada0000000000000000000000000000000000000000000000000000000000000beef830100fff85d940000000000000000000000000000000000000111f842a0000000000000000000000000000000000000000000000000000000000000deada0000000000000000000000000000000000000000000000000000000000000beef830100ff"); - let receipt = Receipt::new( - 1, - false, - U256::from(1), - serde_json::from_value(json!([ - { - "address": "0x0000000000000000000000000000000000000011", - "topics": [ - "0x000000000000000000000000000000000000000000000000000000000000dead", - "0x000000000000000000000000000000000000000000000000000000000000beef" - ], - "data": "0x0100ff" - }, - { - "address": "0x0000000000000000000000000000000000000111", - "topics": [ - "0x000000000000000000000000000000000000000000000000000000000000dead", - "0x000000000000000000000000000000000000000000000000000000000000beef" - ], - "data": "0x0100ff" - } - ])) - .unwrap(), - ); - let mut data = vec![]; - receipt.encode(&mut data); - - assert_eq!(data, expected); - } - - #[test] - fn eip1559() { - let expected = hex!("02f901c58001b9010000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000500000000000000000000000000000000000014000000000000000000000000000000000000000000000000000000000000000000000000000010000080000000000000000000004000000000000000000000000000040000000000000000000000000000800000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000f8bef85d940000000000000000000000000000000000000011f842a0000000000000000000000000000000000000000000000000000000000000deada0000000000000000000000000000000000000000000000000000000000000beef830100fff85d940000000000000000000000000000000000000111f842a0000000000000000000000000000000000000000000000000000000000000deada0000000000000000000000000000000000000000000000000000000000000beef830100ff"); - let receipt = Receipt::new( - 2, - false, - U256::from(1), - serde_json::from_value(json!([ - { - "address": "0x0000000000000000000000000000000000000011", - "topics": [ - "0x000000000000000000000000000000000000000000000000000000000000dead", - "0x000000000000000000000000000000000000000000000000000000000000beef" - ], - "data": "0x0100ff" - }, - { - "address": "0x0000000000000000000000000000000000000111", - "topics": [ - "0x000000000000000000000000000000000000000000000000000000000000dead", - "0x000000000000000000000000000000000000000000000000000000000000beef" - ], - "data": "0x0100ff" - } - ])) - .unwrap(), - ); - let mut data = vec![]; - receipt.encode(&mut data); - - assert_eq!(data, expected); - } -} diff --git a/primitives/src/revm.rs b/primitives/src/revm.rs deleted file mode 100644 index de85a64b..00000000 --- a/primitives/src/revm.rs +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright 2024 RISC Zero, Inc. -// -// Licensed under the Apache License, Version 2.0 (the "License"); -// you may not use this file except in compliance with the License. -// You may obtain a copy of the License at -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// Unless required by applicable law or agreed to in writing, software -// distributed under the License is distributed on an "AS IS" BASIS, -// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -// See the License for the specific language governing permissions and -// limitations under the License. - -//! Convert to revm types. - -extern crate alloc; -extern crate core; - -pub use alloc::{ - boxed::Box, - format, - string::{String, ToString}, - vec, - vec::Vec, -}; -pub use core::{ - convert::From, - default::Default, - option::{Option, Option::*}, - result::{Result, Result::*}, -}; - -use revm_primitives::Log as RevmLog; - -use crate::receipt::Log; - -/// Provides a conversion from `RevmLog` to the local [Log]. -impl From for Log { - fn from(log: RevmLog) -> Self { - Log { - address: log.address, - topics: log.data.topics().to_vec(), - data: log.data.data, - } - } -} diff --git a/primitives/src/signature.rs b/primitives/src/signature.rs deleted file mode 100644 index 88d34e8b..00000000 --- a/primitives/src/signature.rs +++ /dev/null @@ -1,82 +0,0 @@ -// use revm_primitives::U256; - -// The order of the secp256k1 curve, divided by two. Signatures that should be checked -// according to EIP-2 should have an S value less than or equal to this. -// -// `57896044618658097711785492504343953926418782139537452191302581570759080747168` -// const SECP256K1N_HALF: U256 = U256::from_be_bytes([ -// 0x7F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, -// 0xFF, 0xFF, 0x5D, 0x57, 0x6E, 0x73, 0x57, 0xA4, 0x50, 0x1D, 0xDF, 0xE9, 0x2F, 0x46, -// 0x68, 0x1B, 0x20, 0xA0, ]); - -// Recovers the address of the sender using secp256k1 pubkey recovery. -// -// Converts the public key into an ethereum address by hashing the public key with -// keccak256. -// -// This does not ensure that the `s` value in the signature is low, and _just_ wraps the -// underlying secp256k1 library. -// pub fn recover_signer_unchecked_crypto(sig: &[u8; 65], msg: &[u8; 32]) -> -// Result { #[cfg(target_os = "zkvm")] -// { -// let pubkey = sp1_precompiles::secp256k1::ecrecover(sig, msg).unwrap(); -// return Ok(public_key_bytes_to_address(&pubkey)); -// } -// { -// let recid = RecoveryId::from_byte(sig[64]).expect("recovery ID is valid"); -// let sig = K256Signature::from_slice(&sig.as_slice()[..64])?; -// let recovered_key = VerifyingKey::recover_from_prehash(&msg[..], &sig, recid)?; -// let pubkey = PublicKey::from(&recovered_key); -// Ok(public_key_to_address(pubkey)) -// } -// } -// -// Recover signer from message hash, _without ensuring that the signature has a low `s` -// value_. -// -// Using this for signature validation will succeed, even if the signature is malleable or -// not compliant with EIP-2. This is provided for compatibility with old signatures which -// have large `s` values. -// pub fn recover_signer_unchecked(&self, hash: B256) -> Option
{ -// let mut sig: [u8; 65] = [0; 65]; -// -// sig[0..32].copy_from_slice(&self.r.to_be_bytes::<32>()); -// sig[32..64].copy_from_slice(&self.s.to_be_bytes::<32>()); -// sig[64] = self.odd_y_parity as u8; -// -// NOTE: we are removing error from underlying crypto library as it will restrain -// primitive errors and we care only if recovery is passing or not. -// recover_signer_unchecked_crypto(&sig, &hash.0).ok() -// } -// -// Recover signer address from message hash. This ensures that the signature S value is -// greater than `secp256k1n / 2`, as specified in -// [EIP-2](https://eips.ethereum.org/EIPS/eip-2). -// -// If the S value is too large, then this will return `None` -// pub fn recover_signer(&self, hash: B256) -> Option
{ -// if self.s > SECP256K1N_HALF { -// return None -// } -// -// self.recover_signer_unchecked(hash) -// } -// -// -// Converts a public key into an ethereum address by hashing the encoded public key with -// keccak256. -// pub fn public_key_to_address(public: PublicKey) -> Address { -// let pubkey_bytes = -// public.to_encoded_point(false).as_bytes().try_into().expect("The slice has 65 -// bytes"); public_key_bytes_to_address(&pubkey_bytes); -// // strip out the first byte because that should be the -// SECP256K1_TAG_PUBKEY_UNCOMPRESSED // tag returned by libsecp's uncompressed pubkey -// serialization let hash = keccak(&public.serialize_uncompressed()[1..]); -// Address::from_slice(&hash[12..]) -// } - -// fn public_key_bytes_to_address(public: &[u8; 65]) -> Address { -// // Strip out first byte of sec1 encoded pubkey -// let hash = keccak(&public[1..]); -// Address::from_slice(&hash[12..]) -// } diff --git a/provers/risc0/guest/Cargo.lock b/provers/risc0/guest/Cargo.lock index 95737aa1..c4445324 100644 --- a/provers/risc0/guest/Cargo.lock +++ b/provers/risc0/guest/Cargo.lock @@ -26,16 +26,38 @@ dependencies = [ "zerocopy", ] +[[package]] +name = "aho-corasick" +version = "1.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916" +dependencies = [ + "memchr", +] + [[package]] name = "allocator-api2" version = "0.2.18" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f" +[[package]] +name = "alloy-chains" +version = "0.1.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "04e9a1892803b02f53e25bea3e414ddd0501f12d97456c9d5ade4edf88f9516f" +dependencies = [ + "alloy-rlp", + "num_enum", + "serde", + "strum", +] + [[package]] name = "alloy-consensus" -version = "0.1.0" -source = "git+https://github.com/ceciliaz030/alloy?branch=175_4e22b9e-cycle#6310be6f73bc998116a5f05713e49a324f4b7184" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a016bfa21193744d4c38b3f3ab845462284d129e5e23c7cc0fafca7e92d9db37" dependencies = [ "alloy-eips", "alloy-primitives", @@ -43,60 +65,33 @@ dependencies = [ "alloy-serde", "c-kzg", "serde", - "sha2 0.10.8", ] [[package]] name = "alloy-eips" -version = "0.1.0" -source = "git+https://github.com/ceciliaz030/alloy?branch=175_4e22b9e-cycle#6310be6f73bc998116a5f05713e49a324f4b7184" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32d6d8118b83b0489cfb7e6435106948add2b35217f4a5004ef895f613f60299" dependencies = [ "alloy-primitives", "alloy-rlp", "alloy-serde", "c-kzg", + "derive_more", "once_cell", "serde", + "sha2 0.10.8", ] [[package]] name = "alloy-genesis" -version = "0.1.0" -source = "git+https://github.com/ceciliaz030/alloy?branch=175_4e22b9e-cycle#6310be6f73bc998116a5f05713e49a324f4b7184" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "894f33a7822abb018db56b10ab90398e63273ce1b5a33282afd186c132d764a6" dependencies = [ "alloy-primitives", "alloy-serde", "serde", - "serde_json", -] - -[[package]] -name = "alloy-json-rpc" -version = "0.1.0" -source = "git+https://github.com/ceciliaz030/alloy?branch=175_4e22b9e-cycle#6310be6f73bc998116a5f05713e49a324f4b7184" -dependencies = [ - "alloy-primitives", - "serde", - "serde_json", - "thiserror", - "tracing", -] - -[[package]] -name = "alloy-network" -version = "0.1.0" -source = "git+https://github.com/ceciliaz030/alloy?branch=175_4e22b9e-cycle#6310be6f73bc998116a5f05713e49a324f4b7184" -dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-json-rpc", - "alloy-primitives", - "alloy-rpc-types", - "alloy-signer", - "alloy-sol-types", - "async-trait", - "futures-utils-wasm", - "thiserror", ] [[package]] @@ -110,6 +105,7 @@ dependencies = [ "cfg-if", "const-hex", "derive_more", + "getrandom", "hex-literal", "itoa", "k256 0.13.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -140,22 +136,32 @@ checksum = "8037e03c7f462a063f28daec9fda285a9a89da003c552f8637a80b9c8fd96241" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] name = "alloy-rpc-types" -version = "0.1.0" -source = "git+https://github.com/ceciliaz030/alloy?branch=175_4e22b9e-cycle#6310be6f73bc998116a5f05713e49a324f4b7184" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "50f2fbe956a3e0f0975c798f488dc6be96b669544df3737e18f4a325b42f4c86" +dependencies = [ + "alloy-rpc-types-eth", + "alloy-serde", +] + +[[package]] +name = "alloy-rpc-types-eth" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "083f443a83b9313373817236a8f4bea09cca862618e9177d822aee579640a5d6" dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-genesis", "alloy-primitives", "alloy-rlp", "alloy-serde", "alloy-sol-types", - "itertools 0.12.1", + "itertools 0.13.0", "serde", "serde_json", "thiserror", @@ -163,27 +169,15 @@ dependencies = [ [[package]] name = "alloy-serde" -version = "0.1.0" -source = "git+https://github.com/ceciliaz030/alloy?branch=175_4e22b9e-cycle#6310be6f73bc998116a5f05713e49a324f4b7184" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d94da1c0c4e27cc344b05626fe22a89dc6b8b531b9475f3b7691dbf6913e4109" dependencies = [ "alloy-primitives", "serde", "serde_json", ] -[[package]] -name = "alloy-signer" -version = "0.1.0" -source = "git+https://github.com/ceciliaz030/alloy?branch=175_4e22b9e-cycle#6310be6f73bc998116a5f05713e49a324f4b7184" -dependencies = [ - "alloy-primitives", - "async-trait", - "auto_impl", - "elliptic-curve", - "k256 0.13.3 (registry+https://github.com/rust-lang/crates.io-index)", - "thiserror", -] - [[package]] name = "alloy-sol-macro" version = "0.7.6" @@ -195,7 +189,7 @@ dependencies = [ "proc-macro-error", "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -211,7 +205,7 @@ dependencies = [ "proc-macro-error", "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", "syn-solidity", "tiny-keccak", ] @@ -227,7 +221,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", "syn-solidity", ] @@ -240,6 +234,23 @@ dependencies = [ "alloy-primitives", "alloy-sol-macro", "const-hex", + "serde", +] + +[[package]] +name = "alloy-trie" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "03704f265cbbb943b117ecb5055fd46e8f41e7dc8a58b1aed20bcd40ace38c15" +dependencies = [ + "alloy-primitives", + "alloy-rlp", + "derive_more", + "hashbrown 0.14.5", + "nybbles", + "serde", + "smallvec", + "tracing", ] [[package]] @@ -257,6 +268,55 @@ dependencies = [ "libc", ] +[[package]] +name = "anstream" +version = "0.6.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "418c75fa768af9c03be99d17643f93f79bbba589895012a80e3452a19ddda15b" +dependencies = [ + "anstyle", + "anstyle-parse", + "anstyle-query", + "anstyle-wincon", + "colorchoice", + "is_terminal_polyfill", + "utf8parse", +] + +[[package]] +name = "anstyle" +version = "1.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "038dfcf04a5feb68e9c60b21c9625a54c2c0616e79b72b0fd87075a056ae1d1b" + +[[package]] +name = "anstyle-parse" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c03a11a9034d92058ceb6ee011ce58af4a9bf61491aa7e1e59ecd24bd40d22d4" +dependencies = [ + "utf8parse", +] + +[[package]] +name = "anstyle-query" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ad186efb764318d35165f1758e7dcef3b10628e26d41a44bc5550652e6804391" +dependencies = [ + "windows-sys", +] + +[[package]] +name = "anstyle-wincon" +version = "3.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "61a38449feb7068f52bb06c12759005cf459ee52bb4adc1d5a7c4322d716fb19" +dependencies = [ + "anstyle", + "windows-sys", +] + [[package]] name = "anyhow" version = "1.0.86" @@ -429,7 +489,7 @@ dependencies = [ "ark-ff 0.4.2", "ark-std 0.4.0", "tracing", - "tracing-subscriber", + "tracing-subscriber 0.2.25", ] [[package]] @@ -503,17 +563,6 @@ version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711" -[[package]] -name = "async-trait" -version = "0.1.80" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6fa2087f2753a7da8cc1c0dbfcf89579dd57458e36769de5ac750b4671737ca" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.66", -] - [[package]] name = "aurora-engine-modexp" version = "1.1.0" @@ -532,7 +581,7 @@ checksum = "3c87f3f15e7794432337fc718554eaa4dc8f04c9677a950ffe366f20a162ae42" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -576,9 +625,9 @@ checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" [[package]] name = "bitflags" -version = "2.5.0" +version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1" +checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de" dependencies = [ "serde", ] @@ -640,9 +689,9 @@ checksum = "c3ac9f8b63eca6fd385229b3675f6cc0dc5c8a5c8a54a59d4f52ffd670d87b0c" [[package]] name = "bytemuck" -version = "1.16.0" +version = "1.16.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78834c15cb5d5efe3452d58b1e8ba890dd62d21907f867f383358198e56ebca5" +checksum = "b236fc92302c97ed75b38da1f4917b5cdda4984745740f153a5d3059e48d725e" dependencies = [ "bytemuck_derive", ] @@ -655,7 +704,7 @@ checksum = "1ee891b04274a59bd38b412188e24b849617b2e45a0fd8d057deb63e7403761b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -675,22 +724,8 @@ dependencies = [ [[package]] name = "c-kzg" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cdf100c4cea8f207e883ff91ca886d621d8a166cb04971dfaa9bb8fd99ed95df" -dependencies = [ - "blst", - "cc", - "glob", - "hex", - "libc", - "serde", -] - -[[package]] -name = "c-kzg-taiko" version = "1.0.0" -source = "git+https://github.com/smtmfft/c-kzg-4844?branch=for-alpha7#a2d3ae768eede8228920619c98c87584ad8afd09" +source = "git+https://github.com/brechtpd/c-kzg-4844?branch=for-alpha7#3bf0372e8c7a4ba908aff65da0508fcaaf9d38e6" dependencies = [ "blst", "cc", @@ -702,9 +737,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.0.99" +version = "1.0.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96c51067fd44124faa7f870b4b1c969379ad32b2ba805aa959430ceaa384f695" +checksum = "c891175c3fb232128f48de6590095e59198bbeb8620c310be349bfc3afd12c7b" [[package]] name = "cfg-if" @@ -720,11 +755,59 @@ checksum = "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401" dependencies = [ "android-tzdata", "iana-time-zone", + "js-sys", "num-traits", "serde", + "wasm-bindgen", "windows-targets", ] +[[package]] +name = "clap" +version = "4.5.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5db83dced34638ad474f39f250d7fea9598bdd239eaced1bdf45d597da0f433f" +dependencies = [ + "clap_builder", + "clap_derive", +] + +[[package]] +name = "clap_builder" +version = "4.5.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f7e204572485eb3fbf28f871612191521df159bc3e15a9f5064c66dba3a8c05f" +dependencies = [ + "anstream", + "anstyle", + "clap_lex", + "strsim", +] + +[[package]] +name = "clap_derive" +version = "4.5.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c780290ccf4fb26629baa7a1081e68ced113f1d3ec302fa5948f1c381ebf06c6" +dependencies = [ + "heck", + "proc-macro2", + "quote", + "syn 2.0.68", +] + +[[package]] +name = "clap_lex" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4b82cf0babdbd58558212896d1a4272303a57bdb245c2bf1147185fb45640e70" + +[[package]] +name = "colorchoice" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b6a852b24ab71dffc585bcb46eaf7959d175cb865a7152e35b348d1b2960422" + [[package]] name = "const-hex" version = "1.12.0" @@ -750,6 +833,15 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e" +[[package]] +name = "convert_case" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec182b0ca2f35d8fc196cf3404988fd8b8c739a4d270ff118a398feb0cbec1ca" +dependencies = [ + "unicode-segmentation", +] + [[package]] name = "core-foundation-sys" version = "0.8.6" @@ -774,6 +866,21 @@ dependencies = [ "libc", ] +[[package]] +name = "crc" +version = "3.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "69e6e4d7b33a94f0991c26729976b10ebde1d34c3ee82408fb536164fa10d636" +dependencies = [ + "crc-catalog", +] + +[[package]] +name = "crc-catalog" +version = "2.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "19d374276b40fb8bbdee95aef7c7fa6b5316ec764510eb64b8dd0e2ed0d7e7f5" + [[package]] name = "crc32fast" version = "1.4.2" @@ -783,6 +890,40 @@ dependencies = [ "cfg-if", ] +[[package]] +name = "crossbeam-channel" +version = "0.5.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "33480d6946193aa8033910124896ca395333cae7e2d1113d1fef6c3272217df2" +dependencies = [ + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-deque" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d" +dependencies = [ + "crossbeam-epoch", + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-epoch" +version = "0.9.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e" +dependencies = [ + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-utils" +version = "0.8.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80" + [[package]] name = "crunchy" version = "0.2.2" @@ -832,7 +973,7 @@ dependencies = [ "proc-macro2", "quote", "strsim", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -843,7 +984,7 @@ checksum = "733cabb43482b1a1b53eee8583c2b9e8684d592215ea83efd305dd31bc2f0178" dependencies = [ "darling_core", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -885,15 +1026,15 @@ dependencies = [ [[package]] name = "derive_more" -version = "0.99.17" +version = "0.99.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321" +checksum = "5f33878137e4dafd7fa914ad4e259e18a4e8e532b9617a2d0150262bf53abfce" dependencies = [ - "convert_case", + "convert_case 0.4.0", "proc-macro2", "quote", "rustc_version 0.4.0", - "syn 1.0.109", + "syn 2.0.68", ] [[package]] @@ -917,17 +1058,6 @@ dependencies = [ "subtle", ] -[[package]] -name = "displaydoc" -version = "0.2.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "487585f4d0c6655fe74905e2504d8ad6908e4db67f744eb140876906c2f3175d" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.66", -] - [[package]] name = "downcast-rs" version = "1.2.1" @@ -999,7 +1129,7 @@ checksum = "6fd000fd6988e73bbe993ea3db9b1aa64906ab88766d654973924340c8cddb42" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -1018,6 +1148,16 @@ dependencies = [ "windows-sys", ] +[[package]] +name = "eyre" +version = "0.6.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7cd915d99f24784cdc19fd37ef22b97e3ff0ae756c7e492e9fbfe897d61e2aec" +dependencies = [ + "indenter", + "once_cell", +] + [[package]] name = "fastrand" version = "2.1.0" @@ -1089,10 +1229,41 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" [[package]] -name = "futures-utils-wasm" -version = "0.1.0" +name = "futures-core" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d" + +[[package]] +name = "futures-macro" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.68", +] + +[[package]] +name = "futures-task" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004" + +[[package]] +name = "futures-util" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42012b0f064e01aa58b545fe3727f90f7dd4020f4a3ea735b50344965f5a57e9" +checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48" +dependencies = [ + "futures-core", + "futures-macro", + "futures-task", + "pin-project-lite", + "pin-utils", + "slab", +] [[package]] name = "generic-array" @@ -1238,166 +1409,52 @@ dependencies = [ ] [[package]] -name = "icu_collections" -version = "1.5.0" +name = "ident_case" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db2fa452206ebee18c4b5c2274dbf1de17008e874b4dc4f0aea9d01ca79e4526" +checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" + +[[package]] +name = "idna" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6" dependencies = [ - "displaydoc", - "yoke", - "zerofrom", - "zerovec", + "unicode-bidi", + "unicode-normalization", ] [[package]] -name = "icu_locid" -version = "1.5.0" +name = "impl-codec" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13acbb8371917fc971be86fc8057c41a64b521c184808a698c02acc242dbf637" +checksum = "ba6a270039626615617f3f36d15fc827041df3b78c439da2cadfa47455a77f2f" dependencies = [ - "displaydoc", - "litemap", - "tinystr", - "writeable", - "zerovec", + "parity-scale-codec", ] [[package]] -name = "icu_locid_transform" -version = "1.5.0" +name = "impl-trait-for-tuples" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01d11ac35de8e40fdeda00d9e1e9d92525f3f9d887cdd7aa81d727596788b54e" +checksum = "11d7a9f6330b71fea57921c9b61c47ee6e84f72d394754eff6163ae67e7395eb" dependencies = [ - "displaydoc", - "icu_locid", - "icu_locid_transform_data", - "icu_provider", - "tinystr", - "zerovec", + "proc-macro2", + "quote", + "syn 1.0.109", ] [[package]] -name = "icu_locid_transform_data" -version = "1.5.0" +name = "indenter" +version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fdc8ff3388f852bede6b579ad4e978ab004f139284d7b28715f773507b946f6e" +checksum = "ce23b50ad8242c51a442f3ff322d56b02f08852c77e4c0b4d3fd684abc89c683" [[package]] -name = "icu_normalizer" -version = "1.5.0" +name = "indexmap" +version = "1.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19ce3e0da2ec68599d193c93d088142efd7f9c5d6fc9b803774855747dc6a84f" -dependencies = [ - "displaydoc", - "icu_collections", - "icu_normalizer_data", - "icu_properties", - "icu_provider", - "smallvec", - "utf16_iter", - "utf8_iter", - "write16", - "zerovec", -] - -[[package]] -name = "icu_normalizer_data" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8cafbf7aa791e9b22bec55a167906f9e1215fd475cd22adfcf660e03e989516" - -[[package]] -name = "icu_properties" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f8ac670d7422d7f76b32e17a5db556510825b29ec9154f235977c9caba61036" -dependencies = [ - "displaydoc", - "icu_collections", - "icu_locid_transform", - "icu_properties_data", - "icu_provider", - "tinystr", - "zerovec", -] - -[[package]] -name = "icu_properties_data" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67a8effbc3dd3e4ba1afa8ad918d5684b8868b3b26500753effea8d2eed19569" - -[[package]] -name = "icu_provider" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ed421c8a8ef78d3e2dbc98a973be2f3770cb42b606e3ab18d6237c4dfde68d9" -dependencies = [ - "displaydoc", - "icu_locid", - "icu_provider_macros", - "stable_deref_trait", - "tinystr", - "writeable", - "yoke", - "zerofrom", - "zerovec", -] - -[[package]] -name = "icu_provider_macros" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.66", -] - -[[package]] -name = "ident_case" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" - -[[package]] -name = "idna" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4716a3a0933a1d01c2f72450e89596eb51dd34ef3c211ccd875acdf1f8fe47ed" -dependencies = [ - "icu_normalizer", - "icu_properties", - "smallvec", - "utf8_iter", -] - -[[package]] -name = "impl-codec" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba6a270039626615617f3f36d15fc827041df3b78c439da2cadfa47455a77f2f" -dependencies = [ - "parity-scale-codec", -] - -[[package]] -name = "impl-trait-for-tuples" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11d7a9f6330b71fea57921c9b61c47ee6e84f72d394754eff6163ae67e7395eb" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "indexmap" -version = "1.9.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" +checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" dependencies = [ "autocfg", "hashbrown 0.12.3", @@ -1415,6 +1472,12 @@ dependencies = [ "serde", ] +[[package]] +name = "is_terminal_polyfill" +version = "1.70.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8478577c03552c21db0e2724ffb8986a5ce7af88107e6be5d2ee6e158c12800" + [[package]] name = "itertools" version = "0.10.5" @@ -1433,6 +1496,15 @@ dependencies = [ "either", ] +[[package]] +name = "itertools" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186" +dependencies = [ + "either", +] + [[package]] name = "itoa" version = "1.0.11" @@ -1495,9 +1567,9 @@ dependencies = [ [[package]] name = "lazy_static" -version = "1.4.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" +checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" dependencies = [ "spin", ] @@ -1544,33 +1616,86 @@ version = "0.4.14" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89" -[[package]] -name = "litemap" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "643cb0b8d4fcc284004d5fd0d67ccf61dfffadb7f75e1e71bc420f4688a3a704" - [[package]] name = "log" version = "0.4.21" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c" +[[package]] +name = "matchers" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558" +dependencies = [ + "regex-automata 0.1.10", +] + [[package]] name = "memchr" -version = "2.7.2" +version = "2.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" + +[[package]] +name = "metrics" +version = "0.22.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d" +checksum = "2be3cbd384d4e955b231c895ce10685e3d8260c5ccffae898c96c723b0772835" +dependencies = [ + "ahash", + "portable-atomic", +] [[package]] name = "miniz_oxide" -version = "0.7.3" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87dfd01fe195c66b572b37921ad8803d010623c0aca821bea2302239d155cdae" +checksum = "b8a240ddb74feaf34a79a7add65a741f3167852fba007066dcac1ca548d89c08" dependencies = [ "adler", ] +[[package]] +name = "modular-bitfield" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a53d79ba8304ac1c4f9eb3b9d281f21f7be9d4626f72ce7df4ad8fbde4f38a74" +dependencies = [ + "modular-bitfield-impl", + "static_assertions", +] + +[[package]] +name = "modular-bitfield-impl" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a7d5f7076603ebc68de2dc6a650ec331a062a13abaa346975be747bbfa4b789" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "ntapi" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e8a3895c6391c39d7fe7ebc444a87eb2991b2a0bc718fdabd071eec617fc68e4" +dependencies = [ + "winapi", +] + +[[package]] +name = "nu-ansi-term" +version = "0.46.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84" +dependencies = [ + "overload", + "winapi", +] + [[package]] name = "num" version = "0.4.3" @@ -1618,7 +1743,7 @@ checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -1672,12 +1797,51 @@ dependencies = [ "libc", ] +[[package]] +name = "num_enum" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "02339744ee7253741199f897151b38e72257d13802d4ee837285cc2990a90845" +dependencies = [ + "num_enum_derive", +] + +[[package]] +name = "num_enum_derive" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "681030a937600a36906c185595136d26abfebb4aa9c65701cefcaf8578bb982b" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.68", +] + +[[package]] +name = "nybbles" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95f06be0417d97f81fe4e5c86d7d01b392655a9cac9c19a848aa033e18937b23" +dependencies = [ + "alloy-rlp", + "const-hex", + "proptest", + "serde", + "smallvec", +] + [[package]] name = "once_cell" version = "1.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" +[[package]] +name = "overload" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" + [[package]] name = "parity-scale-codec" version = "3.6.12" @@ -1687,6 +1851,7 @@ dependencies = [ "arrayvec", "bitvec", "byte-slice-cast", + "bytes", "impl-trait-for-tuples", "parity-scale-codec-derive", "serde", @@ -1733,6 +1898,12 @@ version = "0.2.14" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bda66fc9667c18cb2758a2ac84d1167245054bcf85d5d1aaa6923f45801bdd02" +[[package]] +name = "pin-utils" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" + [[package]] name = "pkcs8" version = "0.10.2" @@ -1743,6 +1914,12 @@ dependencies = [ "spki", ] +[[package]] +name = "portable-atomic" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7170ef9988bc169ba16dd36a7fa041e5c4cbeb6a35b76d4c03daded371eae7c0" + [[package]] name = "powerfmt" version = "0.2.0" @@ -1801,18 +1978,18 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.85" +version = "1.0.86" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22244ce15aa966053a896d1accb3a6e68469b97c7f33f284b99f0d576879fc23" +checksum = "5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77" dependencies = [ "unicode-ident", ] [[package]] name = "proptest" -version = "1.4.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31b476131c3c86cb68032fdc5cb6d5a1045e3e42d96b69fa599fd77701e1f5bf" +checksum = "b4c2511913b88df1637da85cc8d96ec8e43a3f8bb8ccb71ee1ac240d6f3df58d" dependencies = [ "bit-set", "bit-vec", @@ -1822,7 +1999,7 @@ dependencies = [ "rand", "rand_chacha", "rand_xorshift", - "regex-syntax", + "regex-syntax 0.8.4", "rusty-fork", "tempfile", "unarray", @@ -1855,14 +2032,13 @@ version = "0.1.0" dependencies = [ "alloy-consensus", "alloy-eips", - "alloy-network", "alloy-primitives", "alloy-rlp", "alloy-rlp-derive", "alloy-rpc-types", "alloy-sol-types", "anyhow", - "c-kzg-taiko", + "c-kzg", "cfg-if", "chrono", "flate2", @@ -1871,8 +2047,10 @@ dependencies = [ "libflate", "log", "once_cell", - "revm", - "revm-primitives", + "reth-chainspec", + "reth-evm", + "reth-evm-ethereum", + "reth-primitives", "rlp", "serde", "serde_json", @@ -1907,33 +2085,506 @@ dependencies = [ ] [[package]] -name = "rand_core" -version = "0.6.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" +name = "rand_core" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" +dependencies = [ + "getrandom", +] + +[[package]] +name = "rand_xorshift" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d25bf25ec5ae4a3f1b92f929810509a2f53d7dca2f50b794ff57e3face536c8f" +dependencies = [ + "rand_core", +] + +[[package]] +name = "rayon" +version = "1.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa" +dependencies = [ + "either", + "rayon-core", +] + +[[package]] +name = "rayon-core" +version = "1.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2" +dependencies = [ + "crossbeam-deque", + "crossbeam-utils", +] + +[[package]] +name = "regex" +version = "1.10.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b91213439dad192326a0d7c6ee3955910425f441d7038e0d6933b0aec5c4517f" +dependencies = [ + "aho-corasick", + "memchr", + "regex-automata 0.4.7", + "regex-syntax 0.8.4", +] + +[[package]] +name = "regex-automata" +version = "0.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132" +dependencies = [ + "regex-syntax 0.6.29", +] + +[[package]] +name = "regex-automata" +version = "0.4.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38caf58cc5ef2fed281f89292ef23f6365465ed9a41b7a7754eb4e26496c92df" +dependencies = [ + "aho-corasick", + "memchr", + "regex-syntax 0.8.4", +] + +[[package]] +name = "regex-syntax" +version = "0.6.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" + +[[package]] +name = "regex-syntax" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a66a03ae7c801facd77a29370b4faec201768915ac14a721ba36f20bc9c209b" + +[[package]] +name = "reth-chainspec" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-chains", + "alloy-eips", + "alloy-genesis", + "alloy-primitives", + "alloy-trie", + "derive_more", + "once_cell", + "reth-ethereum-forks", + "reth-primitives-traits", + "reth-trie-common", + "serde", + "serde_json", +] + +[[package]] +name = "reth-codecs" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-genesis", + "alloy-primitives", + "bytes", + "modular-bitfield", + "reth-codecs-derive", + "serde", +] + +[[package]] +name = "reth-codecs-derive" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "convert_case 0.6.0", + "proc-macro2", + "quote", + "syn 2.0.68", +] + +[[package]] +name = "reth-consensus" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "auto_impl", + "reth-primitives", + "thiserror-no-std", +] + +[[package]] +name = "reth-consensus-common" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "reth-chainspec", + "reth-consensus", + "reth-primitives", +] + +[[package]] +name = "reth-db" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "bytes", + "derive_more", + "eyre", + "metrics", + "paste", + "reth-db-api", + "reth-fs-util", + "reth-metrics", + "reth-primitives", + "reth-prune-types", + "reth-stages-types", + "reth-storage-errors", + "reth-tracing", + "reth-trie-common", + "rustc-hash", + "serde", + "strum", + "sysinfo", + "thiserror", +] + +[[package]] +name = "reth-db-api" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "bytes", + "derive_more", + "metrics", + "modular-bitfield", + "parity-scale-codec", + "reth-codecs", + "reth-primitives", + "reth-prune-types", + "reth-stages-types", + "reth-storage-errors", + "reth-trie-common", + "serde", +] + +[[package]] +name = "reth-ethereum-consensus" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "reth-chainspec", + "reth-consensus", + "reth-consensus-common", + "reth-primitives", + "tracing", +] + +[[package]] +name = "reth-ethereum-forks" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-chains", + "alloy-primitives", + "alloy-rlp", + "crc", + "serde", + "thiserror-no-std", +] + +[[package]] +name = "reth-evm" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "auto_impl", + "futures-util", + "reth-chainspec", + "reth-execution-errors", + "reth-execution-types", + "reth-primitives", + "reth-prune-types", + "reth-storage-errors", + "revm", + "revm-primitives", +] + +[[package]] +name = "reth-evm-ethereum" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-eips", + "alloy-sol-types", + "anyhow", + "lazy_static", + "reth-chainspec", + "reth-ethereum-consensus", + "reth-evm", + "reth-execution-types", + "reth-primitives", + "reth-prune-types", + "reth-revm", + "revm-primitives", +] + +[[package]] +name = "reth-execution-errors" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-eips", + "alloy-primitives", + "reth-consensus", + "reth-prune-types", + "reth-storage-errors", + "revm-primitives", + "thiserror-no-std", +] + +[[package]] +name = "reth-execution-types" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "reth-execution-errors", + "reth-primitives", + "reth-trie", + "revm", +] + +[[package]] +name = "reth-fs-util" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "serde_json", + "thiserror", +] + +[[package]] +name = "reth-metrics" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "metrics", + "reth-metrics-derive", +] + +[[package]] +name = "reth-metrics-derive" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "once_cell", + "proc-macro2", + "quote", + "regex", + "syn 2.0.68", +] + +[[package]] +name = "reth-primitives" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-genesis", + "alloy-primitives", + "alloy-rlp", + "alloy-rpc-types", + "byteorder", + "bytes", + "c-kzg", + "derive_more", + "modular-bitfield", + "once_cell", + "rayon", + "reth-chainspec", + "reth-codecs", + "reth-ethereum-forks", + "reth-primitives-traits", + "reth-static-file-types", + "reth-trie-common", + "revm", + "revm-primitives", + "roaring", + "secp256k1", + "serde", + "tempfile", + "thiserror-no-std", +] + +[[package]] +name = "reth-primitives-traits" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-consensus", + "alloy-eips", + "alloy-genesis", + "alloy-primitives", + "alloy-rlp", + "alloy-rpc-types-eth", + "bytes", + "derive_more", + "modular-bitfield", + "reth-codecs", + "revm-primitives", + "serde", +] + +[[package]] +name = "reth-prune-types" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-primitives", + "bytes", + "derive_more", + "modular-bitfield", + "reth-codecs", + "serde", + "thiserror", +] + +[[package]] +name = "reth-revm" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-eips", + "alloy-rlp", + "reth-chainspec", + "reth-consensus-common", + "reth-execution-errors", + "reth-primitives", + "reth-prune-types", + "reth-storage-api", + "reth-storage-errors", + "revm", + "tracing", +] + +[[package]] +name = "reth-stages-types" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-primitives", + "bytes", + "modular-bitfield", + "reth-codecs", + "reth-trie-common", + "serde", +] + +[[package]] +name = "reth-static-file-types" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-primitives", + "derive_more", + "serde", + "strum", +] + +[[package]] +name = "reth-storage-api" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "auto_impl", + "reth-chainspec", + "reth-db-api", + "reth-execution-types", + "reth-primitives", + "reth-prune-types", + "reth-stages-types", + "reth-storage-errors", + "reth-trie", + "revm", +] + +[[package]] +name = "reth-storage-errors" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "reth-fs-util", + "reth-primitives", + "thiserror-no-std", +] + +[[package]] +name = "reth-tracing" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" dependencies = [ - "getrandom", + "clap", + "eyre", + "rolling-file", + "tracing", + "tracing-appender", + "tracing-journald", + "tracing-logfmt", + "tracing-subscriber 0.3.18", ] [[package]] -name = "rand_xorshift" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d25bf25ec5ae4a3f1b92f929810509a2f53d7dca2f50b794ff57e3face536c8f" +name = "reth-trie" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" dependencies = [ - "rand_core", + "alloy-rlp", + "auto_impl", + "derive_more", + "rayon", + "reth-db", + "reth-db-api", + "reth-execution-errors", + "reth-primitives", + "reth-stages-types", + "reth-trie-common", + "revm", + "tracing", ] [[package]] -name = "regex-syntax" -version = "0.8.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a66a03ae7c801facd77a29370b4faec201768915ac14a721ba36f20bc9c209b" +name = "reth-trie-common" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-consensus", + "alloy-genesis", + "alloy-primitives", + "alloy-rlp", + "alloy-trie", + "bytes", + "derive_more", + "itertools 0.12.1", + "nybbles", + "reth-codecs", + "reth-primitives-traits", + "revm-primitives", + "serde", +] [[package]] name = "revm" -version = "8.0.0" -source = "git+https://github.com/taikoxyz/revm.git?branch=v35-taiko#7d23b1c557cf3d0e93f859b6794e580b9f0381c2" +version = "9.0.0" +source = "git+https://github.com/taikoxyz/revm.git?branch=v36-taiko#787302e80d35c1b41d62a9119110a281c5dbe1c8" dependencies = [ "auto_impl", "cfg-if", @@ -1946,8 +2597,8 @@ dependencies = [ [[package]] name = "revm-interpreter" -version = "4.0.0" -source = "git+https://github.com/taikoxyz/revm.git?branch=v35-taiko#7d23b1c557cf3d0e93f859b6794e580b9f0381c2" +version = "5.0.0" +source = "git+https://github.com/taikoxyz/revm.git?branch=v36-taiko#787302e80d35c1b41d62a9119110a281c5dbe1c8" dependencies = [ "revm-primitives", "serde", @@ -1955,12 +2606,12 @@ dependencies = [ [[package]] name = "revm-precompile" -version = "6.0.0" -source = "git+https://github.com/taikoxyz/revm.git?branch=v35-taiko#7d23b1c557cf3d0e93f859b6794e580b9f0381c2" +version = "7.0.0" +source = "git+https://github.com/taikoxyz/revm.git?branch=v36-taiko#787302e80d35c1b41d62a9119110a281c5dbe1c8" dependencies = [ "aurora-engine-modexp", - "c-kzg-taiko", - "cfg-if", + "blst", + "c-kzg", "k256 0.13.3 (registry+https://github.com/rust-lang/crates.io-index)", "once_cell", "revm-primitives", @@ -1972,14 +2623,14 @@ dependencies = [ [[package]] name = "revm-primitives" -version = "3.1.1" -source = "git+https://github.com/taikoxyz/revm.git?branch=v35-taiko#7d23b1c557cf3d0e93f859b6794e580b9f0381c2" +version = "4.0.0" +source = "git+https://github.com/taikoxyz/revm.git?branch=v36-taiko#787302e80d35c1b41d62a9119110a281c5dbe1c8" dependencies = [ "alloy-primitives", "auto_impl", "bitflags", "bitvec", - "c-kzg-taiko", + "c-kzg", "cfg-if", "derive_more", "dyn-clone", @@ -2088,7 +2739,6 @@ dependencies = [ "k256 0.13.3 (git+https://github.com/risc0/RustCrypto-elliptic-curves?tag=k256/v0.13.3-risczero.0)", "raiko-lib", "revm-precompile", - "revm-primitives", "risc0-zkvm", "sha2 0.10.6", ] @@ -2167,6 +2817,25 @@ dependencies = [ "rustc-hex", ] +[[package]] +name = "roaring" +version = "0.10.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7699249cc2c7d71939f30868f47e9d7add0bdc030d90ee10bfd16887ff8bb1c8" +dependencies = [ + "bytemuck", + "byteorder", +] + +[[package]] +name = "rolling-file" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8395b4f860856b740f20a296ea2cd4d823e81a2658cf05ef61be22916026a906" +dependencies = [ + "chrono", +] + [[package]] name = "rrs-lib" version = "0.1.0" @@ -2207,6 +2876,12 @@ version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "48fd7bd8a6377e15ad9d42a8ec25371b94ddc67abe7c8b9127bec79bebaaae18" +[[package]] +name = "rustc-hash" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" + [[package]] name = "rustc-hex" version = "2.1.0" @@ -2244,6 +2919,12 @@ dependencies = [ "windows-sys", ] +[[package]] +name = "rustversion" +version = "1.0.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "955d28af4278de8121b7ebeb796b6a45735dc01436d898801014aced2773a3d6" + [[package]] name = "rusty-fork" version = "0.3.0" @@ -2278,9 +2959,8 @@ dependencies = [ [[package]] name = "secp256k1" -version = "0.28.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d24b59d129cdadea20aea4fb2352fa053712e5d713eee47d700cd4b2bc002f10" +version = "0.29.0" +source = "git+https://github.com/CeciliaZ030/rust-secp256k1?branch=sp1-patch#09fe6ec0c0f0de848da5e295022029f46e0389e3" dependencies = [ "rand", "secp256k1-sys", @@ -2288,9 +2968,8 @@ dependencies = [ [[package]] name = "secp256k1-sys" -version = "0.9.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5d1746aae42c19d583c3c1a8c646bfad910498e2051c551a7f2e3c0c9fbb7eb" +version = "0.10.0" +source = "git+https://github.com/CeciliaZ030/rust-secp256k1?branch=sp1-patch#09fe6ec0c0f0de848da5e295022029f46e0389e3" dependencies = [ "cc", ] @@ -2336,7 +3015,7 @@ checksum = "500cbc0ebeb6f46627f50f3f5811ccf6bf00643be300b4c3eabc0ef55dc5b5ba" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -2378,7 +3057,7 @@ dependencies = [ "darling", "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -2422,6 +3101,15 @@ dependencies = [ "cfg-if", ] +[[package]] +name = "sharded-slab" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6" +dependencies = [ + "lazy_static", +] + [[package]] name = "signature" version = "2.2.0" @@ -2432,17 +3120,29 @@ dependencies = [ "rand_core", ] +[[package]] +name = "slab" +version = "0.4.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" +dependencies = [ + "autocfg", +] + [[package]] name = "smallvec" version = "1.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" +dependencies = [ + "serde", +] [[package]] name = "spin" -version = "0.5.2" +version = "0.9.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d" +checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" [[package]] name = "spki" @@ -2454,12 +3154,6 @@ dependencies = [ "der", ] -[[package]] -name = "stable_deref_trait" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" - [[package]] name = "static_assertions" version = "1.1.0" @@ -2472,6 +3166,28 @@ version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" +[[package]] +name = "strum" +version = "0.26.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8fec0f0aef304996cf250b31b5a10dee7980c85da9d759361292b8bca5a18f06" +dependencies = [ + "strum_macros", +] + +[[package]] +name = "strum_macros" +version = "0.26.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be" +dependencies = [ + "heck", + "proc-macro2", + "quote", + "rustversion", + "syn 2.0.68", +] + [[package]] name = "substrate-bn" version = "0.6.0" @@ -2487,9 +3203,9 @@ dependencies = [ [[package]] name = "subtle" -version = "2.5.0" +version = "2.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc" +checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292" [[package]] name = "syn" @@ -2504,9 +3220,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.66" +version = "2.0.68" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c42f3f41a2de00b01c0aaad383c5a45241efc8b2d1eda5661812fda5f3cdcff5" +checksum = "901fa70d88b9d6c98022e23b4136f9f3e54e4662c3bc1bd1d84a42a9a0f0c1e9" dependencies = [ "proc-macro2", "quote", @@ -2522,18 +3238,21 @@ dependencies = [ "paste", "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] -name = "synstructure" -version = "0.13.1" +name = "sysinfo" +version = "0.30.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" +checksum = "732ffa00f53e6b2af46208fba5718d9662a421049204e156328b66791ffa15ae" dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.66", + "cfg-if", + "core-foundation-sys", + "libc", + "ntapi", + "once_cell", + "windows", ] [[package]] @@ -2571,7 +3290,7 @@ checksum = "46c3384250002a6d5af4d114f2845d37b57521033f30d5c3f46c4d70e1197533" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -2594,6 +3313,16 @@ dependencies = [ "thiserror-impl-no-std", ] +[[package]] +name = "thread_local" +version = "1.1.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c" +dependencies = [ + "cfg-if", + "once_cell", +] + [[package]] name = "threadpool" version = "1.8.1" @@ -2644,15 +3373,20 @@ dependencies = [ ] [[package]] -name = "tinystr" -version = "0.7.6" +name = "tinyvec" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9117f5d4db391c1cf6927e7bea3db74b9a1c1add8f7eda9ffd5364f40f57b82f" +checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50" dependencies = [ - "displaydoc", - "zerovec", + "tinyvec_macros", ] +[[package]] +name = "tinyvec_macros" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" + [[package]] name = "toml_datetime" version = "0.6.6" @@ -2682,6 +3416,18 @@ dependencies = [ "tracing-core", ] +[[package]] +name = "tracing-appender" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3566e8ce28cc0a3fe42519fc80e6b4c943cc4c8cef275620eb8dac2d3d4e06cf" +dependencies = [ + "crossbeam-channel", + "thiserror", + "time", + "tracing-subscriber 0.3.18", +] + [[package]] name = "tracing-attributes" version = "0.1.27" @@ -2690,7 +3436,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -2703,6 +3449,50 @@ dependencies = [ "valuable", ] +[[package]] +name = "tracing-journald" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba316a74e8fc3c3896a850dba2375928a9fa171b085ecddfc7c054d39970f3fd" +dependencies = [ + "libc", + "tracing-core", + "tracing-subscriber 0.3.18", +] + +[[package]] +name = "tracing-log" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3" +dependencies = [ + "log", + "once_cell", + "tracing-core", +] + +[[package]] +name = "tracing-logfmt" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22b8e455f6caa5212a102ec530bf86b8dc5a4c536299bffd84b238fed9119be7" +dependencies = [ + "time", + "tracing", + "tracing-core", + "tracing-subscriber 0.3.18", +] + +[[package]] +name = "tracing-serde" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc6b213177105856957181934e4920de57730fc69bf42c37ee5bb664d406d9e1" +dependencies = [ + "serde", + "tracing-core", +] + [[package]] name = "tracing-subscriber" version = "0.2.25" @@ -2712,6 +3502,27 @@ dependencies = [ "tracing-core", ] +[[package]] +name = "tracing-subscriber" +version = "0.3.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ad0f048c97dbd9faa9b7df56362b8ebcaa52adb06b498c050d2f4e32f90a7a8b" +dependencies = [ + "matchers", + "nu-ansi-term", + "once_cell", + "regex", + "serde", + "serde_json", + "sharded-slab", + "smallvec", + "thread_local", + "tracing", + "tracing-core", + "tracing-log", + "tracing-serde", +] + [[package]] name = "typenum" version = "1.17.0" @@ -2742,17 +3553,38 @@ version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "eaea85b334db583fe3274d12b4cd1880032beab409c0d774be044d4480ab9a94" +[[package]] +name = "unicode-bidi" +version = "0.3.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75" + [[package]] name = "unicode-ident" version = "1.0.12" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" +[[package]] +name = "unicode-normalization" +version = "0.1.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5" +dependencies = [ + "tinyvec", +] + +[[package]] +name = "unicode-segmentation" +version = "1.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202" + [[package]] name = "url" -version = "2.5.1" +version = "2.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7c25da092f0a868cdf09e8674cd3b7ef3a7d92a24253e663a2fb85e2496de56" +checksum = "22784dbdf76fdde8af1aeda5622b546b422b6fc585325248a2bf9f5e41e94d6c" dependencies = [ "form_urlencoded", "idna", @@ -2760,16 +3592,10 @@ dependencies = [ ] [[package]] -name = "utf16_iter" -version = "1.0.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8232dd3cdaed5356e0f716d285e4b40b932ac434100fe9b7e0e8e935b9e6246" - -[[package]] -name = "utf8_iter" -version = "1.0.4" +name = "utf8parse" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be" +checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" [[package]] name = "valuable" @@ -2819,7 +3645,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", "wasm-bindgen-shared", ] @@ -2841,7 +3667,7 @@ checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -2852,6 +3678,38 @@ version = "0.2.92" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96" +[[package]] +name = "winapi" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" +dependencies = [ + "winapi-i686-pc-windows-gnu", + "winapi-x86_64-pc-windows-gnu", +] + +[[package]] +name = "winapi-i686-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" + +[[package]] +name = "winapi-x86_64-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" + +[[package]] +name = "windows" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e48a53791691ab099e5e2ad123536d0fff50652600abaf43bbf952894110d0be" +dependencies = [ + "windows-core", + "windows-targets", +] + [[package]] name = "windows-core" version = "0.52.0" @@ -2943,18 +3801,6 @@ dependencies = [ "memchr", ] -[[package]] -name = "write16" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d1890f4022759daae28ed4fe62859b1236caebfc61ede2f63ed4e695f3f6d936" - -[[package]] -name = "writeable" -version = "0.5.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e9df38ee2d2c3c5948ea468a8406ff0db0b29ae1ffde1bcf20ef305bcc95c51" - [[package]] name = "wyz" version = "0.5.1" @@ -2964,30 +3810,6 @@ dependencies = [ "tap", ] -[[package]] -name = "yoke" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c5b1314b079b0930c31e3af543d8ee1757b1951ae1e1565ec704403a7240ca5" -dependencies = [ - "serde", - "stable_deref_trait", - "yoke-derive", - "zerofrom", -] - -[[package]] -name = "yoke-derive" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28cc31741b18cb6f1d5ff12f5b7523e3d6eb0852bbbad19d73905511d9849b95" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.66", - "synstructure", -] - [[package]] name = "zerocopy" version = "0.7.34" @@ -3005,28 +3827,7 @@ checksum = "15e934569e47891f7d9411f1a451d947a60e000ab3bd24fbb970f000387d1b3b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", -] - -[[package]] -name = "zerofrom" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91ec111ce797d0e0784a1116d0ddcdbea84322cd79e5d5ad173daeba4f93ab55" -dependencies = [ - "zerofrom-derive", -] - -[[package]] -name = "zerofrom-derive" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ea7b4a3637ea8669cedf0f1fd5c286a17f3de97b8dd5a70a6c167a1730e63a5" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.66", - "synstructure", + "syn 2.0.68", ] [[package]] @@ -3046,27 +3847,5 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", -] - -[[package]] -name = "zerovec" -version = "0.10.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb2cc8827d6c0994478a15c53f374f46fbd41bea663d809b14744bc42e6b109c" -dependencies = [ - "yoke", - "zerofrom", - "zerovec-derive", -] - -[[package]] -name = "zerovec-derive" -version = "0.10.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97cf56601ee5052b4417d90c8755c6683473c926039908196cf35d99f893ebe7" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.66", + "syn 2.0.68", ] diff --git a/provers/risc0/guest/Cargo.toml b/provers/risc0/guest/Cargo.toml index 49cb9f23..d0b14bf6 100644 --- a/provers/risc0/guest/Cargo.toml +++ b/provers/risc0/guest/Cargo.toml @@ -23,12 +23,11 @@ risc0-zkvm = { version = "0.21.0", default-features = false, features = [ 'std', "getrandom", ] } -revm-precompile = { git = "https://github.com/taikoxyz/revm.git", branch = "v35-taiko", default-features = false, features = [ - "taiko", +revm-precompile = { git = "https://github.com/taikoxyz/revm.git", branch = "v36-taiko", default-features = false, features = [ "std", "c-kzg", -] } -revm-primitives = { git = "https://github.com/taikoxyz/revm.git", branch = "v35-taiko", default-features = false } + "taiko", +]} k256 = { git = "https://github.com/risc0/RustCrypto-elliptic-curves", tag = "k256/v0.13.3-risczero.0" } sha2 = { git = "https://github.com/risc0/RustCrypto-hashes", tag = "sha2-v0.10.6-risczero.0" } @@ -39,3 +38,7 @@ harness = { path = "../../../harness/macro", features = ["risc0"] } [patch.crates-io] # Can't use ZkOp since it's big int optimization used everywhere crypto-bigint = { git = "https://github.com/risc0/RustCrypto-crypto-bigint", tag = "v0.5.2-risczero.0" } +revm = { git = "https://github.com/taikoxyz/revm.git", branch = "v36-taiko" } +revm-primitives = { git = "https://github.com/taikoxyz/revm.git", branch = "v36-taiko" } +c-kzg = { git = "https://github.com/brechtpd/c-kzg-4844", branch = "for-alpha7" } +secp256k1 = { git = "https://github.com/CeciliaZ030/rust-secp256k1", branch = "sp1-patch" } \ No newline at end of file diff --git a/provers/risc0/guest/src/main.rs b/provers/risc0/guest/src/main.rs index 070e8802..d728e420 100644 --- a/provers/risc0/guest/src/main.rs +++ b/provers/risc0/guest/src/main.rs @@ -4,8 +4,8 @@ use risc0_zkvm::guest::env; use raiko_lib::protocol_instance::ProtocolInstance; use raiko_lib::{ - builder::{BlockBuilderStrategy, TaikoStrategy}, consts::VerifierType, + builder::calculate_block_header, input::GuestInput, }; use revm_precompile::zk_op::ZkOperation; @@ -23,7 +23,7 @@ fn main() { .set(Box::new(vec![ZkOperation::Sha256, ZkOperation::Secp256k1])) .expect("Failed to set ZkvmOperations"); - let (header, _mpt_node) = TaikoStrategy::build_from(&input).unwrap(); + let header = calculate_block_header(&input); let pi = ProtocolInstance::new(&input, &header, VerifierType::RISC0) .unwrap() .instance_hash(); diff --git a/provers/risc0/guest/src/mem.rs b/provers/risc0/guest/src/mem.rs index 0a32268c..a151d19b 100644 --- a/provers/risc0/guest/src/mem.rs +++ b/provers/risc0/guest/src/mem.rs @@ -33,3 +33,8 @@ pub unsafe extern "C" fn calloc(nobj: usize, size: usize) -> *mut c_void { pub unsafe extern "C" fn free(_size: *const c_void) { // Intentionally a no-op, since the zkvm allocator is a bump allocator } + +#[no_mangle] +pub extern "C" fn __ctzsi2(x: u32) -> u32 { + x.trailing_zeros() +} diff --git a/provers/risc0/guest/src/zk_op.rs b/provers/risc0/guest/src/zk_op.rs index 88b98281..747540b6 100644 --- a/provers/risc0/guest/src/zk_op.rs +++ b/provers/risc0/guest/src/zk_op.rs @@ -1,4 +1,5 @@ use k256 as risc0_k256; +use raiko_lib::primitives::keccak256; use revm_precompile::{zk_op::ZkvmOperator, Error}; use sha2 as risc0_sha2; @@ -57,7 +58,7 @@ impl ZkvmOperator for Risc0Operator { let recovered_key = VerifyingKey::recover_from_prehash(&msg[..], &sig, recid) .map_err(|_| Error::ZkvmOperation("Patched k256 recover key failed".to_string()))?; // hash it - let mut hash = revm_primitives::keccak256( + let mut hash = keccak256( &recovered_key .to_encoded_point(/* compress = */ false) .as_bytes()[1..], diff --git a/provers/sgx/guest/src/one_shot.rs b/provers/sgx/guest/src/one_shot.rs index 8c734183..574a10a8 100644 --- a/provers/sgx/guest/src/one_shot.rs +++ b/provers/sgx/guest/src/one_shot.rs @@ -8,10 +8,7 @@ use std::{ use anyhow::{anyhow, bail, Context, Error, Result}; use base64_serde::base64_serde_type; use raiko_lib::{ - builder::{BlockBuilderStrategy, TaikoStrategy}, - consts::VerifierType, - input::GuestInput, - primitives::Address, + builder::calculate_block_header, consts::VerifierType, input::GuestInput, primitives::Address, protocol_instance::ProtocolInstance, }; use secp256k1::{Keypair, SecretKey}; @@ -133,9 +130,7 @@ pub async fn one_shot(global_opts: GlobalOpts, args: OneShotArgs) -> Result<()> assert!(!input.taiko.skip_verify_blob); // Process the block - let (header, _mpt_node) = - TaikoStrategy::build_from(&input).expect("Failed to build the resulting block"); - + let header = calculate_block_header(&input); // Calculate the public input hash let pi = ProtocolInstance::new(&input, &header, VerifierType::SGX)?.sgx_instance(new_instance); let pi_hash = pi.instance_hash(); diff --git a/provers/sgx/prover/Cargo.toml b/provers/sgx/prover/Cargo.toml index efe39e08..69c0c357 100644 --- a/provers/sgx/prover/Cargo.toml +++ b/provers/sgx/prover/Cargo.toml @@ -18,7 +18,7 @@ alloy-sol-types = { workspace = true } alloy-signer = { workspace = true } alloy-contract = { workspace = true } alloy-provider = { workspace = true } -alloy-signer-wallet = { workspace = true } +alloy-signer-local = { workspace = true } alloy-rpc-client = { workspace = true } alloy-transport-http = { workspace = true } pem = { version = "3.0.4", optional = true } diff --git a/provers/sgx/prover/src/sgx_register_utils.rs b/provers/sgx/prover/src/sgx_register_utils.rs index 51710421..ece2a755 100644 --- a/provers/sgx/prover/src/sgx_register_utils.rs +++ b/provers/sgx/prover/src/sgx_register_utils.rs @@ -1,14 +1,12 @@ -use alloy_provider::{network::EthereumSigner, Provider, ProviderBuilder, RootProvider}; +use alloy_provider::{Provider, ProviderBuilder, RootProvider}; use alloy_rpc_client::RpcClient; use alloy_signer::Signer; +use alloy_signer_local::PrivateKeySigner; use alloy_sol_types::sol; use alloy_transport_http::Http; use anyhow::Result; use pem::parse_many; -use raiko_lib::primitives::{ - alloy_eips::{BlockId, BlockNumberOrTag}, - hex, Address, Bytes, FixedBytes, U256, -}; +use raiko_lib::primitives::{hex, Address, Bytes, FixedBytes, U256}; use std::{env, fs, io, path::Path}; use url::Url; @@ -276,7 +274,7 @@ pub async fn register_sgx_instance( ) -> Result> { // prepare wallet let sender_priv_key = env::var("SENDER_PRIV_KEY").expect("SENDER_PRIV_KEY is not set"); - let mut wallet: alloy_signer_wallet::LocalWallet = sender_priv_key.as_str().parse().unwrap(); + let mut wallet: PrivateKeySigner = sender_priv_key.as_str().parse().unwrap(); wallet.set_chain_id(Some(chain_id)); println!("wallet: {:?}", wallet); @@ -284,16 +282,12 @@ pub async fn register_sgx_instance( let http = Http::new(Url::parse(l1_rpc_url).expect("invalid rpc url")); let provider = ProviderBuilder::new() .with_recommended_fillers() - .signer(EthereumSigner::from(wallet.clone())) .on_provider(RootProvider::new(RpcClient::new(http, false))); let sgx_verifier_contract = SgxVerifier::new(sgx_verifier_addr, &provider); // init account - let tag = BlockId::Number(BlockNumberOrTag::Latest); - let balance = provider.get_balance(wallet.address(), tag).await?; - let nonce = provider - .get_transaction_count(wallet.address(), tag) - .await?; + let balance = provider.get_balance(wallet.address()).await?; + let nonce = provider.get_transaction_count(wallet.address()).await?; let gas_price = provider.get_gas_price().await?; let gas_limit = 4000000u128; assert!( diff --git a/provers/sgx/setup/Cargo.toml b/provers/sgx/setup/Cargo.toml index 7c040da6..16ab6883 100644 --- a/provers/sgx/setup/Cargo.toml +++ b/provers/sgx/setup/Cargo.toml @@ -29,7 +29,6 @@ bytemuck = { workspace = true } clap = { workspace = true } structopt = { workspace = true } flate2 = { workspace = true } -revm = { workspace = true } serde = { workspace = true } serde_with = { workspace = true } serde_json = { workspace = true } diff --git a/provers/sp1/guest/Cargo.lock b/provers/sp1/guest/Cargo.lock index da4e3f3c..0d40bf56 100644 --- a/provers/sp1/guest/Cargo.lock +++ b/provers/sp1/guest/Cargo.lock @@ -26,77 +26,99 @@ dependencies = [ "zerocopy", ] +[[package]] +name = "aho-corasick" +version = "1.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916" +dependencies = [ + "memchr", +] + [[package]] name = "allocator-api2" version = "0.2.18" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f" +[[package]] +name = "alloy-chains" +version = "0.1.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "04e9a1892803b02f53e25bea3e414ddd0501f12d97456c9d5ade4edf88f9516f" +dependencies = [ + "alloy-rlp", + "num_enum", + "serde", + "strum", +] + [[package]] name = "alloy-consensus" version = "0.1.0" source = "git+https://github.com/ceciliaz030/alloy?branch=175_4e22b9e-cycle#e589f8f2e856d83ec7cfa4d297d59f2e2f121857" dependencies = [ - "alloy-eips", + "alloy-eips 0.1.0", "alloy-primitives", "alloy-rlp", - "alloy-serde", + "alloy-serde 0.1.0", "c-kzg", "serde", "sha2 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] -name = "alloy-eips" -version = "0.1.0" -source = "git+https://github.com/ceciliaz030/alloy?branch=175_4e22b9e-cycle#e589f8f2e856d83ec7cfa4d297d59f2e2f121857" +name = "alloy-consensus" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a016bfa21193744d4c38b3f3ab845462284d129e5e23c7cc0fafca7e92d9db37" dependencies = [ + "alloy-eips 0.1.2", "alloy-primitives", "alloy-rlp", - "alloy-serde", + "alloy-serde 0.1.2", "c-kzg", - "once_cell", "serde", ] [[package]] -name = "alloy-genesis" +name = "alloy-eips" version = "0.1.0" source = "git+https://github.com/ceciliaz030/alloy?branch=175_4e22b9e-cycle#e589f8f2e856d83ec7cfa4d297d59f2e2f121857" dependencies = [ "alloy-primitives", - "alloy-serde", + "alloy-rlp", + "alloy-serde 0.1.0", + "c-kzg", + "once_cell", "serde", - "serde_json", ] [[package]] -name = "alloy-json-rpc" -version = "0.1.0" -source = "git+https://github.com/ceciliaz030/alloy?branch=175_4e22b9e-cycle#e589f8f2e856d83ec7cfa4d297d59f2e2f121857" +name = "alloy-eips" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32d6d8118b83b0489cfb7e6435106948add2b35217f4a5004ef895f613f60299" dependencies = [ "alloy-primitives", + "alloy-rlp", + "alloy-serde 0.1.2", + "c-kzg", + "derive_more", + "once_cell", "serde", - "serde_json", - "thiserror", - "tracing", + "sha2 0.10.8 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] -name = "alloy-network" -version = "0.1.0" -source = "git+https://github.com/ceciliaz030/alloy?branch=175_4e22b9e-cycle#e589f8f2e856d83ec7cfa4d297d59f2e2f121857" +name = "alloy-genesis" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "894f33a7822abb018db56b10ab90398e63273ce1b5a33282afd186c132d764a6" dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-json-rpc", "alloy-primitives", - "alloy-rpc-types", - "alloy-signer", - "alloy-sol-types", - "async-trait", - "futures-utils-wasm", - "thiserror", + "alloy-serde 0.1.2", + "serde", ] [[package]] @@ -110,6 +132,7 @@ dependencies = [ "cfg-if", "const-hex", "derive_more", + "getrandom", "hex-literal", "itoa", "k256", @@ -140,22 +163,32 @@ checksum = "8037e03c7f462a063f28daec9fda285a9a89da003c552f8637a80b9c8fd96241" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] name = "alloy-rpc-types" -version = "0.1.0" -source = "git+https://github.com/ceciliaz030/alloy?branch=175_4e22b9e-cycle#e589f8f2e856d83ec7cfa4d297d59f2e2f121857" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "50f2fbe956a3e0f0975c798f488dc6be96b669544df3737e18f4a325b42f4c86" dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-genesis", + "alloy-rpc-types-eth", + "alloy-serde 0.1.2", +] + +[[package]] +name = "alloy-rpc-types-eth" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "083f443a83b9313373817236a8f4bea09cca862618e9177d822aee579640a5d6" +dependencies = [ + "alloy-consensus 0.1.2", + "alloy-eips 0.1.2", "alloy-primitives", "alloy-rlp", - "alloy-serde", + "alloy-serde 0.1.2", "alloy-sol-types", - "itertools 0.12.1", + "itertools 0.13.0", "serde", "serde_json", "thiserror", @@ -172,16 +205,14 @@ dependencies = [ ] [[package]] -name = "alloy-signer" -version = "0.1.0" -source = "git+https://github.com/ceciliaz030/alloy?branch=175_4e22b9e-cycle#e589f8f2e856d83ec7cfa4d297d59f2e2f121857" +name = "alloy-serde" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d94da1c0c4e27cc344b05626fe22a89dc6b8b531b9475f3b7691dbf6913e4109" dependencies = [ "alloy-primitives", - "async-trait", - "auto_impl", - "elliptic-curve", - "k256", - "thiserror", + "serde", + "serde_json", ] [[package]] @@ -195,7 +226,7 @@ dependencies = [ "proc-macro-error", "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -211,7 +242,7 @@ dependencies = [ "proc-macro-error", "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", "syn-solidity", "tiny-keccak", ] @@ -227,7 +258,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", "syn-solidity", ] @@ -240,6 +271,23 @@ dependencies = [ "alloy-primitives", "alloy-sol-macro", "const-hex", + "serde", +] + +[[package]] +name = "alloy-trie" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "03704f265cbbb943b117ecb5055fd46e8f41e7dc8a58b1aed20bcd40ace38c15" +dependencies = [ + "alloy-primitives", + "alloy-rlp", + "derive_more", + "hashbrown 0.14.5", + "nybbles", + "serde", + "smallvec", + "tracing", ] [[package]] @@ -257,6 +305,55 @@ dependencies = [ "libc", ] +[[package]] +name = "anstream" +version = "0.6.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "418c75fa768af9c03be99d17643f93f79bbba589895012a80e3452a19ddda15b" +dependencies = [ + "anstyle", + "anstyle-parse", + "anstyle-query", + "anstyle-wincon", + "colorchoice", + "is_terminal_polyfill", + "utf8parse", +] + +[[package]] +name = "anstyle" +version = "1.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "038dfcf04a5feb68e9c60b21c9625a54c2c0616e79b72b0fd87075a056ae1d1b" + +[[package]] +name = "anstyle-parse" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c03a11a9034d92058ceb6ee011ce58af4a9bf61491aa7e1e59ecd24bd40d22d4" +dependencies = [ + "utf8parse", +] + +[[package]] +name = "anstyle-query" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ad186efb764318d35165f1758e7dcef3b10628e26d41a44bc5550652e6804391" +dependencies = [ + "windows-sys", +] + +[[package]] +name = "anstyle-wincon" +version = "3.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "61a38449feb7068f52bb06c12759005cf459ee52bb4adc1d5a7c4322d716fb19" +dependencies = [ + "anstyle", + "windows-sys", +] + [[package]] name = "anyhow" version = "1.0.86" @@ -393,17 +490,6 @@ version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711" -[[package]] -name = "async-trait" -version = "0.1.80" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6fa2087f2753a7da8cc1c0dbfcf89579dd57458e36769de5ac750b4671737ca" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.66", -] - [[package]] name = "aurora-engine-modexp" version = "1.1.0" @@ -422,7 +508,7 @@ checksum = "3c87f3f15e7794432337fc718554eaa4dc8f04c9677a950ffe366f20a162ae42" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -475,9 +561,9 @@ checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" [[package]] name = "bitflags" -version = "2.5.0" +version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1" +checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de" dependencies = [ "serde", ] @@ -528,6 +614,12 @@ version = "1.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c3ac9f8b63eca6fd385229b3675f6cc0dc5c8a5c8a54a59d4f52ffd670d87b0c" +[[package]] +name = "bytemuck" +version = "1.16.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b236fc92302c97ed75b38da1f4917b5cdda4984745740f153a5d3059e48d725e" + [[package]] name = "byteorder" version = "1.5.0" @@ -545,22 +637,8 @@ dependencies = [ [[package]] name = "c-kzg" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cdf100c4cea8f207e883ff91ca886d621d8a166cb04971dfaa9bb8fd99ed95df" -dependencies = [ - "blst", - "cc", - "glob", - "hex", - "libc", - "serde", -] - -[[package]] -name = "c-kzg-taiko" version = "1.0.0" -source = "git+https://github.com/smtmfft/c-kzg-4844?branch=for-alpha7#a2d3ae768eede8228920619c98c87584ad8afd09" +source = "git+https://github.com/brechtpd/c-kzg-4844?branch=for-alpha7#3bf0372e8c7a4ba908aff65da0508fcaaf9d38e6" dependencies = [ "blst", "cc", @@ -572,9 +650,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.0.99" +version = "1.0.100" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96c51067fd44124faa7f870b4b1c969379ad32b2ba805aa959430ceaa384f695" +checksum = "c891175c3fb232128f48de6590095e59198bbeb8620c310be349bfc3afd12c7b" [[package]] name = "cfg-if" @@ -590,11 +668,59 @@ checksum = "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401" dependencies = [ "android-tzdata", "iana-time-zone", + "js-sys", "num-traits", "serde", + "wasm-bindgen", "windows-targets", ] +[[package]] +name = "clap" +version = "4.5.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5db83dced34638ad474f39f250d7fea9598bdd239eaced1bdf45d597da0f433f" +dependencies = [ + "clap_builder", + "clap_derive", +] + +[[package]] +name = "clap_builder" +version = "4.5.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f7e204572485eb3fbf28f871612191521df159bc3e15a9f5064c66dba3a8c05f" +dependencies = [ + "anstream", + "anstyle", + "clap_lex", + "strsim", +] + +[[package]] +name = "clap_derive" +version = "4.5.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c780290ccf4fb26629baa7a1081e68ced113f1d3ec302fa5948f1c381ebf06c6" +dependencies = [ + "heck", + "proc-macro2", + "quote", + "syn 2.0.68", +] + +[[package]] +name = "clap_lex" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4b82cf0babdbd58558212896d1a4272303a57bdb245c2bf1147185fb45640e70" + +[[package]] +name = "colorchoice" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b6a852b24ab71dffc585bcb46eaf7959d175cb865a7152e35b348d1b2960422" + [[package]] name = "const-hex" version = "1.12.0" @@ -620,6 +746,15 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e" +[[package]] +name = "convert_case" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec182b0ca2f35d8fc196cf3404988fd8b8c739a4d270ff118a398feb0cbec1ca" +dependencies = [ + "unicode-segmentation", +] + [[package]] name = "core-foundation-sys" version = "0.8.6" @@ -644,6 +779,21 @@ dependencies = [ "libc", ] +[[package]] +name = "crc" +version = "3.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "69e6e4d7b33a94f0991c26729976b10ebde1d34c3ee82408fb536164fa10d636" +dependencies = [ + "crc-catalog", +] + +[[package]] +name = "crc-catalog" +version = "2.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "19d374276b40fb8bbdee95aef7c7fa6b5316ec764510eb64b8dd0e2ed0d7e7f5" + [[package]] name = "crc32fast" version = "1.4.2" @@ -653,6 +803,40 @@ dependencies = [ "cfg-if", ] +[[package]] +name = "crossbeam-channel" +version = "0.5.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "33480d6946193aa8033910124896ca395333cae7e2d1113d1fef6c3272217df2" +dependencies = [ + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-deque" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d" +dependencies = [ + "crossbeam-epoch", + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-epoch" +version = "0.9.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e" +dependencies = [ + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-utils" +version = "0.8.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80" + [[package]] name = "crunchy" version = "0.2.2" @@ -702,7 +886,7 @@ dependencies = [ "proc-macro2", "quote", "strsim", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -713,7 +897,7 @@ checksum = "733cabb43482b1a1b53eee8583c2b9e8684d592215ea83efd305dd31bc2f0178" dependencies = [ "darling_core", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -759,11 +943,11 @@ version = "0.99.18" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5f33878137e4dafd7fa914ad4e259e18a4e8e532b9617a2d0150262bf53abfce" dependencies = [ - "convert_case", + "convert_case 0.4.0", "proc-macro2", "quote", "rustc_version 0.4.0", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -847,7 +1031,7 @@ checksum = "6fd000fd6988e73bbe993ea3db9b1aa64906ab88766d654973924340c8cddb42" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -866,6 +1050,16 @@ dependencies = [ "windows-sys", ] +[[package]] +name = "eyre" +version = "0.6.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7cd915d99f24784cdc19fd37ef22b97e3ff0ae756c7e492e9fbfe897d61e2aec" +dependencies = [ + "indenter", + "once_cell", +] + [[package]] name = "fastrand" version = "2.1.0" @@ -938,10 +1132,41 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" [[package]] -name = "futures-utils-wasm" -version = "0.1.0" +name = "futures-core" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d" + +[[package]] +name = "futures-macro" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.68", +] + +[[package]] +name = "futures-task" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004" + +[[package]] +name = "futures-util" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42012b0f064e01aa58b545fe3727f90f7dd4020f4a3ea735b50344965f5a57e9" +checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48" +dependencies = [ + "futures-core", + "futures-macro", + "futures-task", + "pin-project-lite", + "pin-utils", + "slab", +] [[package]] name = "generic-array" @@ -1113,6 +1338,12 @@ dependencies = [ "syn 1.0.109", ] +[[package]] +name = "indenter" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce23b50ad8242c51a442f3ff322d56b02f08852c77e4c0b4d3fd684abc89c683" + [[package]] name = "indexmap" version = "1.9.3" @@ -1135,6 +1366,12 @@ dependencies = [ "serde", ] +[[package]] +name = "is_terminal_polyfill" +version = "1.70.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8478577c03552c21db0e2724ffb8986a5ce7af88107e6be5d2ee6e158c12800" + [[package]] name = "itertools" version = "0.10.5" @@ -1153,6 +1390,15 @@ dependencies = [ "either", ] +[[package]] +name = "itertools" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186" +dependencies = [ + "either", +] + [[package]] name = "itoa" version = "1.0.11" @@ -1203,9 +1449,9 @@ dependencies = [ [[package]] name = "lazy_static" -version = "1.4.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" +checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" dependencies = [ "spin", ] @@ -1258,12 +1504,31 @@ version = "0.4.21" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c" +[[package]] +name = "matchers" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558" +dependencies = [ + "regex-automata 0.1.10", +] + [[package]] name = "memchr" version = "2.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" +[[package]] +name = "metrics" +version = "0.22.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2be3cbd384d4e955b231c895ce10685e3d8260c5ccffae898c96c723b0772835" +dependencies = [ + "ahash", + "portable-atomic", +] + [[package]] name = "miniz_oxide" version = "0.7.4" @@ -1274,17 +1539,57 @@ dependencies = [ ] [[package]] -name = "num" -version = "0.4.3" +name = "modular-bitfield" +version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35bd024e8b2ff75562e5f34e7f4905839deb4b22955ef5e73d2fea1b9813cb23" +checksum = "a53d79ba8304ac1c4f9eb3b9d281f21f7be9d4626f72ce7df4ad8fbde4f38a74" dependencies = [ - "num-bigint", - "num-complex", - "num-integer", - "num-iter", - "num-rational", - "num-traits", + "modular-bitfield-impl", + "static_assertions", +] + +[[package]] +name = "modular-bitfield-impl" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a7d5f7076603ebc68de2dc6a650ec331a062a13abaa346975be747bbfa4b789" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "ntapi" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e8a3895c6391c39d7fe7ebc444a87eb2991b2a0bc718fdabd071eec617fc68e4" +dependencies = [ + "winapi", +] + +[[package]] +name = "nu-ansi-term" +version = "0.46.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84" +dependencies = [ + "overload", + "winapi", +] + +[[package]] +name = "num" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "35bd024e8b2ff75562e5f34e7f4905839deb4b22955ef5e73d2fea1b9813cb23" +dependencies = [ + "num-bigint", + "num-complex", + "num-integer", + "num-iter", + "num-rational", + "num-traits", ] [[package]] @@ -1363,12 +1668,51 @@ dependencies = [ "libc", ] +[[package]] +name = "num_enum" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "02339744ee7253741199f897151b38e72257d13802d4ee837285cc2990a90845" +dependencies = [ + "num_enum_derive", +] + +[[package]] +name = "num_enum_derive" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "681030a937600a36906c185595136d26abfebb4aa9c65701cefcaf8578bb982b" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.68", +] + +[[package]] +name = "nybbles" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95f06be0417d97f81fe4e5c86d7d01b392655a9cac9c19a848aa033e18937b23" +dependencies = [ + "alloy-rlp", + "const-hex", + "proptest", + "serde", + "smallvec", +] + [[package]] name = "once_cell" version = "1.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" +[[package]] +name = "overload" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" + [[package]] name = "parity-scale-codec" version = "3.6.12" @@ -1378,6 +1722,7 @@ dependencies = [ "arrayvec", "bitvec", "byte-slice-cast", + "bytes", "impl-trait-for-tuples", "parity-scale-codec-derive", "serde", @@ -1424,6 +1769,12 @@ version = "0.2.14" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bda66fc9667c18cb2758a2ac84d1167245054bcf85d5d1aaa6923f45801bdd02" +[[package]] +name = "pin-utils" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" + [[package]] name = "pkcs8" version = "0.10.2" @@ -1434,6 +1785,12 @@ dependencies = [ "spki", ] +[[package]] +name = "portable-atomic" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7170ef9988bc169ba16dd36a7fa041e5c4cbeb6a35b76d4c03daded371eae7c0" + [[package]] name = "powerfmt" version = "0.2.0" @@ -1492,18 +1849,18 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.85" +version = "1.0.86" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22244ce15aa966053a896d1accb3a6e68469b97c7f33f284b99f0d576879fc23" +checksum = "5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77" dependencies = [ "unicode-ident", ] [[package]] name = "proptest" -version = "1.4.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31b476131c3c86cb68032fdc5cb6d5a1045e3e42d96b69fa599fd77701e1f5bf" +checksum = "b4c2511913b88df1637da85cc8d96ec8e43a3f8bb8ccb71ee1ac240d6f3df58d" dependencies = [ "bit-set", "bit-vec", @@ -1513,7 +1870,7 @@ dependencies = [ "rand", "rand_chacha", "rand_xorshift", - "regex-syntax", + "regex-syntax 0.8.4", "rusty-fork", "tempfile", "unarray", @@ -1544,16 +1901,15 @@ checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09" name = "raiko-lib" version = "0.1.0" dependencies = [ - "alloy-consensus", - "alloy-eips", - "alloy-network", + "alloy-consensus 0.1.2", + "alloy-eips 0.1.2", "alloy-primitives", "alloy-rlp", "alloy-rlp-derive", "alloy-rpc-types", "alloy-sol-types", "anyhow", - "c-kzg-taiko", + "c-kzg", "cfg-if", "chrono", "flate2", @@ -1562,8 +1918,10 @@ dependencies = [ "libflate", "log", "once_cell", - "revm", - "revm-primitives", + "reth-chainspec", + "reth-evm", + "reth-evm-ethereum", + "reth-primitives", "rlp", "serde", "serde_json", @@ -1624,16 +1982,489 @@ dependencies = [ "rand_core", ] +[[package]] +name = "rayon" +version = "1.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa" +dependencies = [ + "either", + "rayon-core", +] + +[[package]] +name = "rayon-core" +version = "1.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2" +dependencies = [ + "crossbeam-deque", + "crossbeam-utils", +] + +[[package]] +name = "regex" +version = "1.10.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b91213439dad192326a0d7c6ee3955910425f441d7038e0d6933b0aec5c4517f" +dependencies = [ + "aho-corasick", + "memchr", + "regex-automata 0.4.7", + "regex-syntax 0.8.4", +] + +[[package]] +name = "regex-automata" +version = "0.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132" +dependencies = [ + "regex-syntax 0.6.29", +] + +[[package]] +name = "regex-automata" +version = "0.4.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38caf58cc5ef2fed281f89292ef23f6365465ed9a41b7a7754eb4e26496c92df" +dependencies = [ + "aho-corasick", + "memchr", + "regex-syntax 0.8.4", +] + +[[package]] +name = "regex-syntax" +version = "0.6.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" + [[package]] name = "regex-syntax" version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7a66a03ae7c801facd77a29370b4faec201768915ac14a721ba36f20bc9c209b" +[[package]] +name = "reth-chainspec" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-chains", + "alloy-eips 0.1.2", + "alloy-genesis", + "alloy-primitives", + "alloy-trie", + "derive_more", + "once_cell", + "reth-ethereum-forks", + "reth-primitives-traits", + "reth-trie-common", + "serde", + "serde_json", +] + +[[package]] +name = "reth-codecs" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-consensus 0.1.2", + "alloy-eips 0.1.2", + "alloy-genesis", + "alloy-primitives", + "bytes", + "modular-bitfield", + "reth-codecs-derive", + "serde", +] + +[[package]] +name = "reth-codecs-derive" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "convert_case 0.6.0", + "proc-macro2", + "quote", + "syn 2.0.68", +] + +[[package]] +name = "reth-consensus" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "auto_impl", + "reth-primitives", + "thiserror-no-std", +] + +[[package]] +name = "reth-consensus-common" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "reth-chainspec", + "reth-consensus", + "reth-primitives", +] + +[[package]] +name = "reth-db" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "bytes", + "derive_more", + "eyre", + "metrics", + "paste", + "reth-db-api", + "reth-fs-util", + "reth-metrics", + "reth-primitives", + "reth-prune-types", + "reth-stages-types", + "reth-storage-errors", + "reth-tracing", + "reth-trie-common", + "rustc-hash", + "serde", + "strum", + "sysinfo", + "thiserror", +] + +[[package]] +name = "reth-db-api" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "bytes", + "derive_more", + "metrics", + "modular-bitfield", + "parity-scale-codec", + "reth-codecs", + "reth-primitives", + "reth-prune-types", + "reth-stages-types", + "reth-storage-errors", + "reth-trie-common", + "serde", +] + +[[package]] +name = "reth-ethereum-consensus" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "reth-chainspec", + "reth-consensus", + "reth-consensus-common", + "reth-primitives", + "tracing", +] + +[[package]] +name = "reth-ethereum-forks" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-chains", + "alloy-primitives", + "alloy-rlp", + "crc", + "serde", + "thiserror-no-std", +] + +[[package]] +name = "reth-evm" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "auto_impl", + "futures-util", + "reth-chainspec", + "reth-execution-errors", + "reth-execution-types", + "reth-primitives", + "reth-prune-types", + "reth-storage-errors", + "revm", + "revm-primitives", +] + +[[package]] +name = "reth-evm-ethereum" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-eips 0.1.2", + "alloy-sol-types", + "anyhow", + "lazy_static", + "reth-chainspec", + "reth-ethereum-consensus", + "reth-evm", + "reth-execution-types", + "reth-primitives", + "reth-prune-types", + "reth-revm", + "revm-primitives", +] + +[[package]] +name = "reth-execution-errors" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-eips 0.1.2", + "alloy-primitives", + "reth-consensus", + "reth-prune-types", + "reth-storage-errors", + "revm-primitives", + "thiserror-no-std", +] + +[[package]] +name = "reth-execution-types" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "reth-execution-errors", + "reth-primitives", + "reth-trie", + "revm", +] + +[[package]] +name = "reth-fs-util" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "serde_json", + "thiserror", +] + +[[package]] +name = "reth-metrics" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "metrics", + "reth-metrics-derive", +] + +[[package]] +name = "reth-metrics-derive" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "once_cell", + "proc-macro2", + "quote", + "regex", + "syn 2.0.68", +] + +[[package]] +name = "reth-primitives" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-consensus 0.1.2", + "alloy-eips 0.1.2", + "alloy-genesis", + "alloy-primitives", + "alloy-rlp", + "alloy-rpc-types", + "byteorder", + "bytes", + "c-kzg", + "derive_more", + "modular-bitfield", + "once_cell", + "rayon", + "reth-chainspec", + "reth-codecs", + "reth-ethereum-forks", + "reth-primitives-traits", + "reth-static-file-types", + "reth-trie-common", + "revm", + "revm-primitives", + "roaring", + "secp256k1", + "serde", + "tempfile", + "thiserror-no-std", +] + +[[package]] +name = "reth-primitives-traits" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-consensus 0.1.2", + "alloy-eips 0.1.2", + "alloy-genesis", + "alloy-primitives", + "alloy-rlp", + "alloy-rpc-types-eth", + "bytes", + "derive_more", + "modular-bitfield", + "reth-codecs", + "revm-primitives", + "serde", +] + +[[package]] +name = "reth-prune-types" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-primitives", + "bytes", + "derive_more", + "modular-bitfield", + "reth-codecs", + "serde", + "thiserror", +] + +[[package]] +name = "reth-revm" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-eips 0.1.2", + "alloy-rlp", + "reth-chainspec", + "reth-consensus-common", + "reth-execution-errors", + "reth-primitives", + "reth-prune-types", + "reth-storage-api", + "reth-storage-errors", + "revm", + "tracing", +] + +[[package]] +name = "reth-stages-types" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-primitives", + "bytes", + "modular-bitfield", + "reth-codecs", + "reth-trie-common", + "serde", +] + +[[package]] +name = "reth-static-file-types" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-primitives", + "derive_more", + "serde", + "strum", +] + +[[package]] +name = "reth-storage-api" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "auto_impl", + "reth-chainspec", + "reth-db-api", + "reth-execution-types", + "reth-primitives", + "reth-prune-types", + "reth-stages-types", + "reth-storage-errors", + "reth-trie", + "revm", +] + +[[package]] +name = "reth-storage-errors" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "reth-fs-util", + "reth-primitives", + "thiserror-no-std", +] + +[[package]] +name = "reth-tracing" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "clap", + "eyre", + "rolling-file", + "tracing", + "tracing-appender", + "tracing-journald", + "tracing-logfmt", + "tracing-subscriber", +] + +[[package]] +name = "reth-trie" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-rlp", + "auto_impl", + "derive_more", + "rayon", + "reth-db", + "reth-db-api", + "reth-execution-errors", + "reth-primitives", + "reth-stages-types", + "reth-trie-common", + "revm", + "tracing", +] + +[[package]] +name = "reth-trie-common" +version = "1.0.0-rc.2" +source = "git+https://github.com/taikoxyz/taiko-reth.git?branch=v1.0.0-rc.2-taiko#d20c700ca296f7e4227b4c8c254a8d0f948bbd36" +dependencies = [ + "alloy-consensus 0.1.2", + "alloy-genesis", + "alloy-primitives", + "alloy-rlp", + "alloy-trie", + "bytes", + "derive_more", + "itertools 0.12.1", + "nybbles", + "reth-codecs", + "reth-primitives-traits", + "revm-primitives", + "serde", +] + [[package]] name = "revm" -version = "8.0.0" -source = "git+https://github.com/taikoxyz/revm.git?branch=v35-taiko#9a1e6db4b84c35e05308ec2d7dbb50a48aea6fed" +version = "9.0.0" +source = "git+https://github.com/taikoxyz/revm.git?branch=v36-taiko#787302e80d35c1b41d62a9119110a281c5dbe1c8" dependencies = [ "auto_impl", "cfg-if", @@ -1646,8 +2477,8 @@ dependencies = [ [[package]] name = "revm-interpreter" -version = "4.0.0" -source = "git+https://github.com/taikoxyz/revm.git?branch=v35-taiko#9a1e6db4b84c35e05308ec2d7dbb50a48aea6fed" +version = "5.0.0" +source = "git+https://github.com/taikoxyz/revm.git?branch=v36-taiko#787302e80d35c1b41d62a9119110a281c5dbe1c8" dependencies = [ "revm-primitives", "serde", @@ -1655,12 +2486,12 @@ dependencies = [ [[package]] name = "revm-precompile" -version = "6.0.0" -source = "git+https://github.com/taikoxyz/revm.git?branch=v35-taiko#9a1e6db4b84c35e05308ec2d7dbb50a48aea6fed" +version = "7.0.0" +source = "git+https://github.com/taikoxyz/revm.git?branch=v36-taiko#787302e80d35c1b41d62a9119110a281c5dbe1c8" dependencies = [ "aurora-engine-modexp", - "c-kzg-taiko", - "cfg-if", + "blst", + "c-kzg", "k256", "once_cell", "revm-primitives", @@ -1672,14 +2503,14 @@ dependencies = [ [[package]] name = "revm-primitives" -version = "3.1.1" -source = "git+https://github.com/taikoxyz/revm.git?branch=v35-taiko#9a1e6db4b84c35e05308ec2d7dbb50a48aea6fed" +version = "4.0.0" +source = "git+https://github.com/taikoxyz/revm.git?branch=v36-taiko#787302e80d35c1b41d62a9119110a281c5dbe1c8" dependencies = [ "alloy-primitives", "auto_impl", "bitflags", "bitvec", - "c-kzg-taiko", + "c-kzg", "cfg-if", "derive_more", "dyn-clone", @@ -1724,6 +2555,25 @@ dependencies = [ "rustc-hex", ] +[[package]] +name = "roaring" +version = "0.10.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7699249cc2c7d71939f30868f47e9d7add0bdc030d90ee10bfd16887ff8bb1c8" +dependencies = [ + "bytemuck", + "byteorder", +] + +[[package]] +name = "rolling-file" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8395b4f860856b740f20a296ea2cd4d823e81a2658cf05ef61be22916026a906" +dependencies = [ + "chrono", +] + [[package]] name = "ruint" version = "1.12.3" @@ -1754,6 +2604,12 @@ version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "48fd7bd8a6377e15ad9d42a8ec25371b94ddc67abe7c8b9127bec79bebaaae18" +[[package]] +name = "rustc-hash" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" + [[package]] name = "rustc-hex" version = "2.1.0" @@ -1791,6 +2647,12 @@ dependencies = [ "windows-sys", ] +[[package]] +name = "rustversion" +version = "1.0.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "955d28af4278de8121b7ebeb796b6a45735dc01436d898801014aced2773a3d6" + [[package]] name = "rusty-fork" version = "0.3.0" @@ -1905,7 +2767,7 @@ checksum = "500cbc0ebeb6f46627f50f3f5811ccf6bf00643be300b4c3eabc0ef55dc5b5ba" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -1947,7 +2809,7 @@ dependencies = [ "darling", "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -1991,6 +2853,15 @@ dependencies = [ "cfg-if", ] +[[package]] +name = "sharded-slab" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6" +dependencies = [ + "lazy_static", +] + [[package]] name = "signature" version = "2.2.0" @@ -2001,6 +2872,24 @@ dependencies = [ "rand_core", ] +[[package]] +name = "slab" +version = "0.4.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" +dependencies = [ + "autocfg", +] + +[[package]] +name = "smallvec" +version = "1.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" +dependencies = [ + "serde", +] + [[package]] name = "snowbridge-amcl" version = "1.0.2" @@ -2015,12 +2904,11 @@ dependencies = [ name = "sp1-guest" version = "0.1.0" dependencies = [ - "alloy-consensus", + "alloy-consensus 0.1.0", "harness", "harness-core", "raiko-lib", "revm-precompile", - "revm-primitives", "sha2 0.10.8 (git+https://github.com/sp1-patches/RustCrypto-hashes?branch=patch-v0.10.8)", "sp1-precompiles", "sp1-zkvm", @@ -2030,7 +2918,7 @@ dependencies = [ [[package]] name = "sp1-precompiles" version = "0.1.0" -source = "git+https://github.com/succinctlabs/sp1.git?branch=main#b35be4200e7369bd987d8ba101f70dd7dec3df1a" +source = "git+https://github.com/succinctlabs/sp1.git?branch=main#14eb569d41d24721ffbd407d6060e202482d659c" dependencies = [ "anyhow", "bincode", @@ -2047,7 +2935,7 @@ dependencies = [ [[package]] name = "sp1-zkvm" version = "0.1.0" -source = "git+https://github.com/succinctlabs/sp1.git?branch=main#b35be4200e7369bd987d8ba101f70dd7dec3df1a" +source = "git+https://github.com/succinctlabs/sp1.git?branch=main#14eb569d41d24721ffbd407d6060e202482d659c" dependencies = [ "bincode", "cfg-if", @@ -2064,9 +2952,9 @@ dependencies = [ [[package]] name = "spin" -version = "0.5.2" +version = "0.9.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d" +checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" [[package]] name = "spki" @@ -2090,6 +2978,28 @@ version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" +[[package]] +name = "strum" +version = "0.26.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8fec0f0aef304996cf250b31b5a10dee7980c85da9d759361292b8bca5a18f06" +dependencies = [ + "strum_macros", +] + +[[package]] +name = "strum_macros" +version = "0.26.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be" +dependencies = [ + "heck", + "proc-macro2", + "quote", + "rustversion", + "syn 2.0.68", +] + [[package]] name = "substrate-bn" version = "0.6.0" @@ -2105,9 +3015,9 @@ dependencies = [ [[package]] name = "subtle" -version = "2.5.0" +version = "2.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81cdd64d312baedb58e21336b31bc043b77e01cc99033ce76ef539f78e965ebc" +checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292" [[package]] name = "syn" @@ -2122,9 +3032,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.66" +version = "2.0.68" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c42f3f41a2de00b01c0aaad383c5a45241efc8b2d1eda5661812fda5f3cdcff5" +checksum = "901fa70d88b9d6c98022e23b4136f9f3e54e4662c3bc1bd1d84a42a9a0f0c1e9" dependencies = [ "proc-macro2", "quote", @@ -2140,7 +3050,21 @@ dependencies = [ "paste", "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", +] + +[[package]] +name = "sysinfo" +version = "0.30.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "732ffa00f53e6b2af46208fba5718d9662a421049204e156328b66791ffa15ae" +dependencies = [ + "cfg-if", + "core-foundation-sys", + "libc", + "ntapi", + "once_cell", + "windows", ] [[package]] @@ -2178,7 +3102,7 @@ checksum = "46c3384250002a6d5af4d114f2845d37b57521033f30d5c3f46c4d70e1197533" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -2201,6 +3125,16 @@ dependencies = [ "thiserror-impl-no-std", ] +[[package]] +name = "thread_local" +version = "1.1.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c" +dependencies = [ + "cfg-if", + "once_cell", +] + [[package]] name = "threadpool" version = "1.8.1" @@ -2293,6 +3227,18 @@ dependencies = [ "tracing-core", ] +[[package]] +name = "tracing-appender" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3566e8ce28cc0a3fe42519fc80e6b4c943cc4c8cef275620eb8dac2d3d4e06cf" +dependencies = [ + "crossbeam-channel", + "thiserror", + "time", + "tracing-subscriber", +] + [[package]] name = "tracing-attributes" version = "0.1.27" @@ -2301,7 +3247,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -2311,6 +3257,72 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" dependencies = [ "once_cell", + "valuable", +] + +[[package]] +name = "tracing-journald" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba316a74e8fc3c3896a850dba2375928a9fa171b085ecddfc7c054d39970f3fd" +dependencies = [ + "libc", + "tracing-core", + "tracing-subscriber", +] + +[[package]] +name = "tracing-log" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3" +dependencies = [ + "log", + "once_cell", + "tracing-core", +] + +[[package]] +name = "tracing-logfmt" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22b8e455f6caa5212a102ec530bf86b8dc5a4c536299bffd84b238fed9119be7" +dependencies = [ + "time", + "tracing", + "tracing-core", + "tracing-subscriber", +] + +[[package]] +name = "tracing-serde" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc6b213177105856957181934e4920de57730fc69bf42c37ee5bb664d406d9e1" +dependencies = [ + "serde", + "tracing-core", +] + +[[package]] +name = "tracing-subscriber" +version = "0.3.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ad0f048c97dbd9faa9b7df56362b8ebcaa52adb06b498c050d2f4e32f90a7a8b" +dependencies = [ + "matchers", + "nu-ansi-term", + "once_cell", + "regex", + "serde", + "serde_json", + "sharded-slab", + "smallvec", + "thread_local", + "tracing", + "tracing-core", + "tracing-log", + "tracing-serde", ] [[package]] @@ -2364,6 +3376,12 @@ dependencies = [ "tinyvec", ] +[[package]] +name = "unicode-segmentation" +version = "1.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202" + [[package]] name = "url" version = "2.5.2" @@ -2375,6 +3393,12 @@ dependencies = [ "percent-encoding", ] +[[package]] +name = "utf8parse" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" + [[package]] name = "valuable" version = "0.1.0" @@ -2423,7 +3447,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", "wasm-bindgen-shared", ] @@ -2445,7 +3469,7 @@ checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -2456,6 +3480,38 @@ version = "0.2.92" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96" +[[package]] +name = "winapi" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" +dependencies = [ + "winapi-i686-pc-windows-gnu", + "winapi-x86_64-pc-windows-gnu", +] + +[[package]] +name = "winapi-i686-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" + +[[package]] +name = "winapi-x86_64-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" + +[[package]] +name = "windows" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e48a53791691ab099e5e2ad123536d0fff50652600abaf43bbf952894110d0be" +dependencies = [ + "windows-core", + "windows-targets", +] + [[package]] name = "windows-core" version = "0.52.0" @@ -2573,7 +3629,7 @@ checksum = "15e934569e47891f7d9411f1a451d947a60e000ab3bd24fbb970f000387d1b3b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] [[package]] @@ -2593,5 +3649,5 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.66", + "syn 2.0.68", ] diff --git a/provers/sp1/guest/Cargo.toml b/provers/sp1/guest/Cargo.toml index 4f0e2d3c..bd3797b9 100644 --- a/provers/sp1/guest/Cargo.toml +++ b/provers/sp1/guest/Cargo.toml @@ -5,13 +5,10 @@ name = "sp1-guest" version = "0.1.0" edition = "2021" -# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html - [lib] name = "zk_op" path = "src/zk_op.rs" - [[bin]] name = "sha256" path = "src/benchmark/sha256.rs" @@ -37,12 +34,12 @@ path = "src/benchmark/bn254_mul.rs" [dependencies] raiko-lib = { path = "../../../lib", features = ["std", "sp1"] } sp1-zkvm ={ git = "https://github.com/succinctlabs/sp1.git", branch = "main" } -revm-precompile = { git = "https://github.com/taikoxyz/revm.git", branch = "v35-taiko", default-features = false, features = [ - "taiko", +revm-precompile = { git = "https://github.com/taikoxyz/revm.git", branch = "v36-taiko", default-features = false, features = [ "std", "c-kzg", -] } -revm-primitives = { git = "https://github.com/taikoxyz/revm.git", branch = "v35-taiko", default-features = false } + "taiko", +]} + sha2-v0-10-8 = { git = "https://github.com/sp1-patches/RustCrypto-hashes", package = "sha2", branch = "patch-v0.10.8" } sp1-precompiles = { git = "https://github.com/succinctlabs/sp1.git", branch = "main"} harness-core = { path = "../../../harness/core" } @@ -51,15 +48,18 @@ substrate-bn = "0.6.0" alloy-consensus = { git = "https://github.com/ceciliaz030/alloy", branch = "175_4e22b9e-cycle", optional = true, features = [ "serde", ] } + [patch.crates-io] # Cant's use ZkOp for keccak since it's not precompile -ecdsa = { git = "https://github.com/taikoxyz/signatures.git", branch = "0.16.9", package = "ecdsa", default-features = false, features = ["der"] } +ecdsa = { git = "https://github.com/taikoxyz/signatures.git", branch = "0.16.9", package = "ecdsa" } tiny-keccak = { git = "https://github.com/sp1-patches/tiny-keccak", branch = "patch-v2.0.2" } -secp256k1 = { git = "https://github.com/CeciliaZ030/rust-secp256k1", branch = "sp1-patch", features = ["recovery", "sp1"]} +revm = { git = "https://github.com/taikoxyz/revm.git", branch = "v36-taiko" } +revm-primitives = { git = "https://github.com/taikoxyz/revm.git", branch = "v36-taiko" } +c-kzg = { git = "https://github.com/brechtpd/c-kzg-4844", branch = "for-alpha7" } +secp256k1 = { git = "https://github.com/CeciliaZ030/rust-secp256k1", branch = "sp1-patch" } [features] sp1-cycle-tracker = [ - "alloy-consensus/sp1-cycle-tracker", - "raiko-lib/sp1-cycle-tracker", + "raiko-lib/sp1-cycle-tracker", "revm-precompile/sp1-cycle-tracker" - ] +] diff --git a/provers/sp1/guest/elf/sp1-guest b/provers/sp1/guest/elf/sp1-guest index 56006c0a1acd7107f1e37385f6194733f5083582..743203652a4d91c0d91a0fc8c736d39980efcf7f 100755 GIT binary patch literal 7037844 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 hE)D@Ht4FlGrdeyjNnGuxs9; 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[ux#NvHqW$fMk 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

qjT&G00arH{bEanyN9hrL zOl*#l2hJAXqY!@*Q(ChC9b+c+tr}fPhn{UkH;M_I=ySlzmG^|?s-uI5?rtL6RRGgb z0*()f?`N(9IZ=?SOy!?6M6QZv266e)KM&&ajV}ZL2Fgv*j~mzv6b^rBV;&A?KBjCy z*m|sri?wuMF>4GCW9xA`caCi9A!gskzK|-1SHCf~o)3>KH$7SJ47c^P?kHBao*T-F z3fg+gz~Ln?fU_0ga1Zz^IDBBVIDFwy9L|@UwEtE-eyrCAy*!S+CVIZI2dyomMjr77 z${wV}6kdD99@OR=_`eESC}$7aXZl_O2V8mSOyQ5w56gGUmzT&9P&8^gPiVJm=c(lS zM%#Im4XO3mb{-{PJf`eCLv1_>*T#cPAaaJt7$RSYY@uvCO1?m@5cxvn3Xw0w##5KY zu5*^5Y&`XQ@c}`$=(q9U&ysKB5qjY6|HL{2+s;s1Pd3ligHOmA*_^EhyH9;GXY0{* z*VcoKp=>?LoUJE|tw$$rG={Aw$^Om?Z5U$fv9+F@ohNo&I}gu#ZFB1zZ0FJY?L6j) zcAgWu`N+DtD-U(Ezu!3B{0l06?=J(oxhoHKydml7G(|kbg7E z9(eE#lz(p@lz*@N<8kHRjFNxV~;u_x;*XV{cAI6KWx{@wc#+jD_4`;tqtSQ-%ZZzJSm^< z-Js^5`2cxA%#_#^2V%MtoZU%Gx8}#@WEx@JTXlQICN&V# zK|6Ucx1b|qmqG`&;KW3CuWYY=A5IdHOHnCGad2KsA|Kem&G1Iyh3%7b&lm?X>{UFSZC^67!pf^ zJ<^eNCH~STt_2%|C$+7m#F||}4TXpK4q0L<$?KoXHvztnxW>dSJS#C#u8#YKmT-uJxvwf6q}owwFn;LTs_YU9bu$J=zG4T z$EELyvCtFfb;n^v8|&nnSU7Zb;_%#D zK+0EeFfY&_;bG(9VdLRp%vY{H>I2EOiFwPlm-SG;S*N}D9rm(*yQyo6A84p! z&`&Jf2v5qE@vVeza^;MrUj63mnKXGS_gjRI;YY)HOsK8Q7#82=`r-7D zZ^oyKe~@kX86>|8c!NBEeHkAkC#;k6sg3!%e8{fZEj-spJNqH# zqa9qQJw&_8K`iZhz^RS};7hh(vB}D z{TI`JG5r_Qf3e6pyx-(|n!Mkny@+=4fhwZCi1!oYN;~_B7*gUd@z(|Sfzg3+a}!s! zmBU}l!3FX?>}IcI;iXCTVT`@2i`}364_n59J7d{f(oP&}Qt@Kik%!vG^Za<8FX#Dk z+J#rMFJm6s89)8k(0`crkZSkR?xo#JJ29kf$b9(C)@FUoLB zdsUV;-P|rYrCR!~O>g~yX3aWTlUxU^qc7e}&V)h!USW_=*a^idjA?p>Gc7wFdNVTbmrI(-djt zOe-fZ!~>i7f0MTFJKpEm-^Bjx()NAb`?AUj$WAqF zqnDj3+s2PtcB+3BvXi2Dqm-SLOg2i{37HHYL=28@!NW=|zdpv5oub#G2bIJp$oEmQ zlWidPILJRnI17JEip>i<3bGA8g~$!aMlob79oY&Qig+932G$PQN%B+>Gh$RDGgW7K z9vLYd3)&%`Czpcg0Cug&M#xOnS!5?2*(X+n97^BHR)hQ_vQZ2lZk<{J$WY;AG4CgD zCvpX`6TDyAk*#!Ot1Qnai+DdW6|$4~n~LuSF}J`V+vvzPS!Aaq-yYc}gltoVY*Q(+ zO-y{1kgbrRu+<>jAX6bb)gn99i0p(+gA7BvLA$~8<9U8O&m%+a#?}`@w$hQUvdB(J z#!vrs^j}N=HL8E)OC9+#i|my2+Es1Hkock3XOW>qc8Vce>Bv@DWIbf3TIN{899dJ= zXHa&UiR^?tqhu#+Xz_1~oRdT@(k&%Vxcl{_xG8dxK5pp!=me>|mO{=z)_4!TBpk*zi%S0NvT*CAJ3$Jnslp#LGyn;R6}N|3MNcyg7phn{x?@X%8Vo*J#u_HGlKr+(%Z~yk&jN;m-^$7Zi!0s863?EA?1CNgswGIJ3&@RALRMp37!Q7;rN;+c$8c56XSft8zMB7F`bgu11~tqR(Z6^vk_0-$dz) z9M*i2;^(VawLh$FlgVx0NxjGCM>&c^GI% z--@Ac>F8rw$;pT<9i5LjdhGGi&bVUed%8#2qC>P-(aw30(sN8@gDn$1hxlCLYm~jF zVfG|+9nBkX^`g~h$9=()$gCeoKH!qbHuM(n53mLIM5(`*(_6Y+y-D>aHkTp&od=yT z`94xBGw(f_zm@(YGjBqNI&@@q6S|bIbyH+n4|-Ha^ftcd5cv1ekEdVf!neVY=Z{Md zs10a&SD!7g`%Vo$Bjev!=6l8(w6%|z6Bs?MKL_v$o$8&SQ{5ywRpyElGK>Ds)~OT? z(_T1AW>NPO&%L=ai#AkdsT7-Y2KswE+sz0%l{?-)jY4KQL7(0^^l9n|`t+`#Pv0#- zpKgD1>C;m~Z9Xo2y6bh&r?wOHX)tGYLH*>NL!W+gf&=~JcXfZC#?=##pi_|%(A zpT-WApT;Wr>2t4%KDp!l*a`aduA)z=6ZGj_L7yfSpidHS^CtQ{R*poULa&29l^%~i z8RV0u#shNO7Y2N`osoRjClP}qKI^lnYv6kbyI9M_RIBT=Zuu+mL+SIyuX>Dr$PGK- z`#tCfj=f9yvpe{*TPKl^g<9Xv)D`$}Kkad*`tjj@T7KhyBv(K7Yq?&4{aUW~V!u|u zv0pz;-pYH$9|?QkWB73Q4CapwH!+Ug_=faigOF>Jo8vXyi~SlOm2fNeYq|Qcl}dXn z_G^4&!ajUxvgG1w#3#e`jd$x`__YnLUFT5;nelYl!4aS1y#U*8x z?=rS;?9nmm{caJvweq)dZPZEe8Nx3q%bLgV8)~CH7nf8e_jEJ0&3p1d{04Dk@wG#I zT>=Jc?u23iW11dtre*y`ZPM@5#{9-~-S14#`V8XZ_)bCP%iQXHyx;$rabTx)Ys;y4 zC2G5g{n`#uI~boLyGE`_;-=&p!|zyP0<(PcBtBR%uQ64}hn;UOKKkrQyJj!nJd2N4l6@F6Y3D3~cJcAAqP=pjXJ|}d z%gvmF`HqSSEE^IN_^R;2jTO`-w^r_af%B5eU&{A?9r*COcQZabJ_0^)zNq3AIUjr@ z=t84Dgf4u|=d)Vf8f|Vo;v2lbiBZTq!+BNs_3ot$+Px#-!5hpUdZrJ-gV)6$+}fjW z3jVnK;W@h=IiU_Yp%yuz200;o7U#IJpj~xQ(5_sF+<=@=mqc#39=V}S$qUF+NABt)Pkca&n>|`2LeAFqxrX!IfML|nJ7Sy>JQ6u)ww_+` zOf0?PvRK4FI~H$#MvwgH8S*~vG>pwF4QJY}BTntABk8j*(^B6*iTdy5diwIoz&xp^ zuig=hIG>88uYQu}c5rWpo=%tR*147zxr&^TpSxd=obw4iz4p9VtoHe|;ukSmkOk_%Pd|Lx+_+rn8l=gAw!D*ML8 z=n1Dr7T-=i^8es(u^w5xK-F`wW>%>4==9=7?vZIz?V|)xs80p8B0DHZHar;^5_A{YXk1Ub4D~!kzfxRfNpDAuX>s$Cf3uHV7-w9ZKpdYJ3 z9KMOXwsLTeDVS~u9L1fqHpK!yzak?%!4vO5kJmLhNx^XwZ z|Ag*=Uwjh3cw%TPiJ`4O%R=|C&^;`>W}$`dVbN~UZhsC?G;rIdRC`mEDU6fh|)pJ)}Yf#{)`46m3QSB%TdKq$x*>ElA}BZZffMu zWY8n(E%XldKF}ow3mr70@?V_tm%{Y_LA~W@y`;u-$rIsT8W@O&_MJ{UY744x16PRtAfw}%R@yQ!6Nqf$2{4yr#N z)+zt7=qJF)1GMN&RnpdznndP{HWi=X{p~~XZ!=Q_owJ4i49L}#2%DqY02wrsaXnbFu$)QXVpfkyZid={M3x<8ggdC zsr#XKhvTx~eRhi4=o06pcwpyt@?%u~t?ct~_BcX*Jf2<;H5iko&=Z!`Wx`pRfBlxjct+c8HpIK`nS)W35602Y%kpzJc#N{QXZ$odiFe z&$^Cy(>K9)<|_GOt-+dr3!T^yIY;hL_MG{B)_*^9`Mn_g4dk6!dNB8X1rvU_`xo$( zz3&AZif7cMkl(lW*|Mjt*nMWL0Ul^Iv(%Tp@JiPpdr<$Lm{D)k6pgwQ^mjo6EZ{Lr z{2}j}!tO%->SU`q@m76=w zaE_kS_nbRT>Z~)@?*dmcx5I9DtM5wftTzRwoRQto#UALRsU5D-xkk&%7+SXd6J-oP z-(ue?6MDPsXgo~i=kTnqEjh&0t~t5$bH<7%b#KLd#l!rZAJA8*hd%x~Xx%CkoQ)>6$Z6gK=V`_R`RuQ3-Q>>xS3Ucj zx_|M;j=Ft`E9Xx7W*w^=|+=^)WNueckKhNI_dQed?yJ%K zp%c~b>KV1Qeq=^%^(5D|Ba__f(&A!jzU=Ij4 zWpl`$(WLtkOLV7vW5s#QeZHD|@c5MeIkyW=W`4?#n)9t?)~iM(*H?1AtU=g1Mb^MC zWPMl%KUA)5J#gzQ*OWYcn*Dqk``$%)|L9-*{r#Cuy0^4OGuq%s!%t%kUMHS91HFh; zII;Sobe>-1aHONO9O(!xN7|z0NSm}A=`bxv+Mwk~hiK&}7*yofHnP{sD%vpnu1MRc zrDMcH7rkEW_teQg=0$#w#-8TV*0En1ecJgYe$PTZT`cE{bw{-ewRDmEZqU>ED*8jZ zquK^)ZS#B465a3VX3v2{u^VZRdo^1$W9kOYo5~t4jA-83`=C83YQcA_`Y}pp+JWDN z`tbh#uW7-ep}H}33D-As?Y){YtwXa*o7g9Cv*s^}C_OBYy7H`-KciH$H?k+g7E5B-=Ul0IXWh*Gn>5j*MDIe!(u0?i=ycC&{^r4&y>5SBu=xrtxMQ$xoHdN= z*_W=kh&|FqYsT5tj6t_c-oSbksTw!#l^gWn>MJ#S%W%z|8PVNWUe?^AujxkB&khBl zoe6*UF7`w*4h44&*OOC?lHkHy;F+C+paaycds2H}90@}^O5!8z=Z6Ag=3gAf6pj>u zBPE@~{pOIoTb{g^yq~*$g{Ejq$vs3~!@+6)tD5Yo5xml?1=noWf?D>< zn6Wz{`N;0JTeRTP4&=AjEq_rTaMYWyH!sxv#m(9E-`osbvF6m8Vy{{D3ml>O)x$KS zN{>J%H2bc7y2tbFYl({+3}}yOupQ%Z#Am z`B1QSV@R&?pKsCpjle~;On28tbvp_jdUi5;^7C47`Gq7h(>8H^!1YbfX@RjZUZbTE<2Ao$84P?XN<2X`5b+yUnvhLB|!LAObz? zcts1=&JMZF^tY@J1!#tJ#Ztb$@eN z7PoqkQEc`GHP=F8*J;5daE0r9nSTo5xXs&H!yTI6!JJ0-8Nu4UM*qA8r|dJ_7WPpY z$+|Sm;Ca~1*0KijyPe-nrFvjJugO{k(P6R%n(Ot2u%~H(%if{w7I>vc-0BFtY75`R zc-9-eCIa2Zr^+~f2j0!h^>d89MsurqSI)WB@}Aq{K?Cy>y@EN~#a<)(LvH(ibdGke zmv7wTo*}1kk*G6L=zz5;-8Li_zeMYZY9+}bhI*EN<8H%lHV^sh zkw4joE;&8I`OgdshCM=i+pu8LUfpiq+h?~#wBTl7X^7!Am*m!A2Qt7QGw9$q*SgW^AveOkCNXyM z^pLEnz^mKxnNSdAO~Ij{eJ}j%{BY30Ir@SoXmyLgH}BE09@yFs-(?+G3%h7%U$QO| z3U1t>CmV)_f;B_&kL!_S+1`-bu~&y?;lt8d{{*@~-15*719NpK=k-_;p@}!pX%WMtqHq#AHLOPA-lI1Un=dQPayLqbn(Ht z=C{#Hmr;u$13k5nO<#{V<=D+D>ha56#{czV>&2&>F`aT`*O4pGD>4xqy@L0Pkk=!% z@2stL<|K!DS%C>WAdAU;ll#}Or*92Dcz6ds9X|~1E=GQ7>g`KzYuB$SFF6IOSm?}4f4%g=<3?^s&@J&hBQLry@>#on51h*WvhJM)`1=k9mg z$wpPZ;TJ~_1$MrkT+e=Dd9C8n>zX`cV#?&I$ z=;XfDBG;%Exke*zZgj%1r-7s4$f4lk|Iw0D!|YvK#Qer}xAwQ1ecW-`@B4f=bGAgc zYrA!1okF)@W!#(g6U~eNH+#hWj{V{evd`)Q&8Yb%a?E$wNA8EnCZA+4xzB3elrOSp z+*goO3fO=3Bbs;aIB4%Ac&cuRoNk;jmA&Rp(}Eel%|4&KPJt0!VmaIy@V$Rxp39I~ zzhLS1X6$h{-K6=q)xkfA0sKb3?tgQE9=!S$UHFMtm9YH%w{U%#o{h2Hj-47h^q;pv zkKTg!--|qroqnCjQ8#PuHTyMp=uq80?p7_h^4~T8&aiGDGZ(r1ZhpgKpTn!9M2?%zEZ8uvNP|9VWfKeB*pKdbj&>t1w=7AzU2+tc?Xf?GBL7en>n^QP|p z?rc4{Nov^Eo9_PrGhaZaI3Z(rCuYLlNg2y4*TpX>dw52Y4abJuHOFen!SIOoJ$kU7 z=tL5*p}E?1jF4Eu^k9;qM*ygxr?bxEFM@g=?iXdyxya($1!~ z$sO?L>EJlynl@=cuozk6MxNs#t2FT(-nY4wdkoWEkKd<%0a{)JeJj+1Q^39A!h~D= z0(Rjq#NE}c$YWvp(7oIdVuOhUjaL{RG{t>*u@Qvt*4(+i5zOWP#;?cSQ%}=_#wm%Q zu_EE-otALd@J&_qRWVd=G0J-5C!i z11Hrx)wj4N?;W{_x-D(c#Wy%VitpH?xsw-hZN45v7bSv+u3|13GcUqBToq3?9T?_5 zdO%NFg{7`JBJLKa;sPH7u(9|+sk>$myrHfX8j2k>5lQY@pp#<)ykEX+}ri z+vhhmi9V0d3qEzy*_wMsw-L1R4vqL0Bi+n(Gcw#vEqI9emS?fYS2D~yor1sS27HbC zHv&8G*9m2M(BiXan5`!puhN3mSK;TxK6O8G#KVSe&&$)cYRBw$Pd!G*9`?F#VRtLs z$$oeVtA8Go2iN>Fa{XQIqg~{A7QTu-P3^1P-!C}0we`TO?wSLdJ#{GGxisP4n9|(& z58`hGt|pEU`b0Zlv)NlS*l<8|H-e*A!rL1o3jf@KrE&L`1?cP_(SphOx;O?FZ<&mQ#S!mk0R^dnns6Tsbgc5+DPo}X})cJwNLp)Iey1F`|!Q~^)*J< zM|`h;eLJH{)}8#El84>3VLh1KhI|TMwnTurwBasf9w(2`6>LvV8w$3Yk(-NN(A~#h z)7^!yuqM3!+L^$@QobM9ZkdVS_zjM;S@VC12d8LyP+S`iLhQF%J`B6_KF#+$wbruc z*mo?W&0wFwv-ti^;0f;|_#15l2hlh3Hi1Jw2bMW2AZXDVdAfPa}Y1q*^VudUe!FCQ;>l*OUWk1_Y5oXUapR0M_F*I-KS(>~0v)JIn+SaD>*WE|Tng2_6 zDt(&y?#Cr?CmwVZW$C^7y?D@ElyEn^qPaEQ_+jtWl4WKA^H%Ccpq9|g}Ek?YsKlGVSi|19+5 zAhp~alY6W#HUpF)40UgDj7FYpvm4C zijSwRgfH}BXPv>lp_kDXwT{TatVbm5jYKwbEa>VkXdd*i1AdX(Oc&JFgT6x zxk&NfAbKNo^eSy@<9!F*;6Cvy91wUfS%=p*VtHhsyz(Wy0P<+B{IbLJwV?OU|*+h{Ucg( z&vylH@KI)11F`Rv{C_q!Q<2^IZu#CX+ZRDkulmc|d;E)=bYtatnzu4v>oBwur~ESH zsG>8S*fTNY@fh-W40$|;JRUXK3l8#rA|eo{2dca`@&H@;Ku+ zo5TGOv zHy&kA?5{^H_C&jnIGn}Xbq}6poDFR{dldG>i8;IAjsbh33!jo2*7lZC&Hi+s?#|pm zjK&V0(ZiT-#%$NTY1l`U9TMHLEQ)=p1^F2svSS1Kzz*FzoBb)KrMPYdGXEOx4gY>6 z!gbh@hNhI<>(1^~vNrmh8En}Ae}vBsM;;ejOHE&&gU;pltN z7vj5|K1uiQd;vRMqvj7mPR91`eykn6|L4%($3y7O==jgYgQm(v;C`QX!yaaSKOT6! zM%K=BBQ`H=QPecXw#PFUVSieUZoOKwHxFf9dUgM~A;|T}0XOt$QqRI|+Ge|-4O|8^|)M{!K zE|P0ByNUCYN|}Qm?3tT2KY(7gV(&YHqnKxL-{5inZ>25X8*&%ItIq(oCh@;~gT=EK z?hOUSd{_9EklVOW3nuWKN$bUCf-bTinTRnK^W1bZV`v+fFdto9--690ob78*@jg9q zx2T(WPGPetLUzP5-P+bx>!Pi(-s$cnv3Hf! z+DrKMnfns{mK3)3RMvKNQA+olhiU%WVaVoXy5GXLKUAiPJYxI1bo=5Pb$j@5tz-Pn zn&0~Aq+9eW-MF~uMIWC@@ak2X|19=)`!Qtc4b06(-Gp>;p!J?f5o$ljNptz=sm~_#e8E#{zuM^?g!q`F`~D?`*y}% z?@DZ<+`sus&hb3t34hBzg&#pR`XREq=&`oHPxmhzp-Bu^a0A!gjNB2uBov%7LfJ2a zhGB-%MWXzU!1vbLx@uc&WWHC7;FMRfU0wul#Xjlsy9It}>__*z5V`$&^cw7r=rT%9 z5A6#DUPuofx{&k8d)51}o$ zrT8(1>Hb55v3st?7Tp1y-vF;mYVKoeL#}Z(aCk50u(1c=LI?jh-;9jC8=iR|_(9uR z8w!|nml(vL<4WHDJ|!CmlNlp&Zd7oj4AhIux?Jp5D zbnuNlV=}GiBO$&w$~%euFMvKqui*Pb$V!}dFT!6S_RG#G$szFK5)Ii++RiiZ+u@7I zKf)Jr+eduymx>=E!clOvFG6g2*SuK#U5+k%c<6MD-LXFBkEr|DfbM7E$1B8_zYRYA z;=%{~yFY<$`Ek9U-`h>ZSSVf}|E@jsH1K6&!cO5s<=MIO-xPkY-eurg?Hky8ul2Va z3x1#z{iSWb7lM2J_TDh__2MPV{GKnV*nsNFn~^=HCWVH2J?4u_mKS+`$r^aeJl(!) zUKVGcpO?j1;#L(5Kg9YNz)QpBzzyru@K7k27(k0_p~Wf9@9ymj%noee+nMiueQt|s z1P}GHrogPgZnOL!1=lV@rx#o+0|t;$TV4UzxSzmFl>6s!&3=9&ezPrEf6F3hWU2#M ztyjsjS$H3seb2jkb-(O@?mxdj;fIdZ>_Fi9^O}$ELFk6WVA>Z#TRr?7K`lN4aMhT} zx7?ul7Y@^c-M0{zyB~Q^^~Hk#IAc$B{5j|Y`~|#|cRl!cA#r2b?+qGWJ$!C0|Ks}! zT88qS_*Xn|S*~5P7XJXhnG=~Kp^H8^>b~+S^ToUKJ>rWFs?i}+z2GN!EA+9&#P$Zg zSz88uoMyPe+1M2>M{nnz?lkBHtv8c%;H!HBb23xWDdLcM?~9DU*e&N6d#t+Foy@t& zesm=02{ zY@UAwyyZD~;AY_c(s*#w4Bfq9s_wR51+RG)e!3nWeiiWmw`l&{x#Xj5#2%k_z1vca zPiGqTps40f*aA=ML1ut&6>UJDYGqwG=h^T+zRSCWgZ=IsckAwB9A}`@uIBpUZF=z7 z3wm${V_Ip8I2Iy%G}1P$3tcAsr_t$u&wXjbpJpCkPPmW5Giif{UD#(@;>i}7Pi!ht@Joxs zbFiP38u0ZZd|XAW1@m&lh0M!Y&_li{U~XjXz@M$(yx_NPFirHk-v&!Qk4+Zd{K^Jw zte;12+K2w1iMqE~x^M4Cp4pwSf7Pt}_cUwvCCH5MGQV}WWHemhk+Fto)njfZZuOibb~xSJ6n;@;Husu^n*YKG&At;k3Xx6K>Jd*brNhtGGY>B51h_x;|WRRSV`$h9?}u+#I9Zzv3J2*{|E1 z*puVxO}e}1IX&17A8&nwnABfqWuS$x@+{VH;jazgf@c5+(iUw?xC>p@>~w4a@V&>8 zc~-l~3BXHuIOl+a#}^`}4bP4*LY`WPEwYgo7!kQnY?Hh%@5g-myvKB8$mAUSxxCli zZvZ>!ur2=qKjfXguWEKH=LKF`pVQrIkUiA=BR5Up5IIa>Z#A;ULfSAgMq?xJ&Rm|( z|3$6L9WrC%Az&34%;US}R_MXUu%n)S2$Pc|r z*0=EceO`AT0q66G!DlZyXE|`w*vR=y6Yd*(wP3GBzsU7t6K?FBggf`=@#M9uj|q-> z9G^slSg1U?r_v>i%1p$)1U=!N$29l1uj$@{U46#)xYvIn$2Apd^8WsOiBpa1!M|Oj z+27>-Kk^ej`0adRZ}e#J#w6W6c!?hThM49nzNiP^uQJ?QM;d{4oE9vAX5Na;aDEjw z>R)1W{5Rb_?aO*Fe=fA;2fF*iALzluOLg~AuFoTe_=o?=|BNa4Pd!+0x9;A0rV$i! zF7N)3JNHCAIQe1vzsnfx+&`pmF74d=!GQ-t!Q6BB{}|1U;qUm^SlyjFMz;&#NuT%# z_KN%UAn#x(IISQ%rl64f@_*B$MDXw<&@S2qixa`zM-s^eU(tg{zQO+V8N)BMwB!Q$ z_D(%G_2Y-nEslZTh1iP<&>=pP2o7ZDJeWHPIsNCzC|}oudH@`2K0yr@M$cEAF*D= zS3?_bQL?aGJOaIJA~GL1I+>$oIJ6qM5#4G4_lkOW7Ptb=368ssv|;eiAQt3tANmU{ z8(utE=woBvihO;Iz#BNc3z)w)?)L4{+&vM^r(537-?teFTkTGdERZGcH2$ex6q&avg<1O+=0Pbw6iwo zes+=Q)|T=&xy60JzzZ6@jyc_)5PeS7h-|+F-TLONE{I>sJ%j&?Uw~I^1n$rq+xPPA z8;ND$e+&F8M!#yL6}mWS2RxVGoOdm*E9Tx3^KeEx^1<)HofSNfxF4;UxXhh>!CrL2 zc{{K#@6eL>^r9PD;!^>x(M=^5Vd7AIYg6wbiHi__deF@^vn6iAWWFs;{LT_f8yGio zk2K%$Am7;A*H7DA^XY`~?K3s++ab-L(`)#tFtH1Jh@D*(O|Cb!;NQQ&yg?s&zKxv) z|7PiCE%+bax%S&)Pm4+{5OMofuycjxA39{%-G|g3p!mHGB{gFL`L&iU{%>SqY;j?+ zvoX%XUWBbX)o1tYN;sAH;m4g%Y~Ag$-xT)gx(IgJu-G;v4nSf6#1;`CUq~LB$kD$~|uF3wrTu>_z5k>WsUMGvdUua9yXm&TV=$j$FdJO-KZFv&o0(;d!r{-pKlh zSCNQ#<8^X~(L=u4JH}n~3w-Cy1A8gR9Q!^0Bt9uC=;_gd(qHJoYs4a)@Y6o;1fF@p zH`Mpb9NC`4ZLuaj-_U&K$Z!%?uo(SnE8|X^6AEHCg@OgpjXZcev@b9@*R%#+Cf@}O zO)X-*Qv6QoVvlxvzbAI-NU-Y?Y|q$IUwan({w%T(_X%BydGkxiaLMt6A^u9X(K$!+=x#}n8u79bBd zg1gM01z(-egw4GH9yr7ZPA%mb7wB%m4#si+0)9_er2BL6VKzcz9_DDhIvzCM6L-x; ziQx31y1xKiZ``H@KimfG#-@S|CRq5-(Dbn3=E?s%6T$bP{R>AxPyQKRc48uU2$}g* zo+q-i>*?;P@;qcY`A+$sQ@1e(^u@Mi&!37M*l;HIyfhx1dMe*|sgebQ2Hw>;H4!Yl zBp!sAn_y(tcTv1M?mi5Cnj1>EkHClEv%#$=0ULKGl68+_pLtYE)|tp_+xV7EiR5i> zg@SfXZ282pJgsfLlh~d*V5HE{wuX0ucW>c$F9kNg9}o7HLchq(Y2usPw+T#uugt^x zQq5iWmKOX>)7`CCW8;DEHigImd^#Q+I#v(f_zmCMqx&K5**M{u;Gqfdl@U)5;0^vD zZxnj;qMj^#=IEY>ejO~{tn8GABXBw!y4S93{XTdV?1Gj|1lG)(;0G&IevZHpQXMjR z7x7mQLKC3(rvpp!zX_}r0WS+5WM5xkrSV(Hv(Rz$0_AH3mgE}ow+bv_ze5KQI6_`C zkSopE(0Y9D){lT6XoSdTrvpc30H2`GyOx6%-5?p}9b67`4!k49xtq{SdPDAG=(pHN z+#+mr3;ExJ7d-Yq$cN7*f>z`*?|+a@iP?L6D7+0lMC^HI0E-Ksf>&+losdt@Ko(rh z|01i3z9II#3BXYv-%?DAe@@x-77j%Yei<0Jn|zRBU=0aeS&zsgxmTuvTW{@jJ#dM zyu(9^I}^cI`>^XGAKd(VbZ6k;mSSCEwUUjz|5}cP*w)S{7MY&!d^SPsAP4eow3sfR|T8?x9Ek`<^mLnab zl_Rt)>V%((Dqn=Liq_N}TIGw7K1{yeYH{D zQEiKsw&YsQ=Sj zN+mANbcgLjCKR8>(4%}IS)ay^qkJLm73i`vN|n9I8(nV(i+a(g+O?pkl-O*1B2)2+ zoV^`CNAEyvwmmG8^K)#6mvnP}C_H?x=Dr4By?7`v6+g``Jq=kQYfHQ4#cw?sJhT>` zwyQ6=Apo}0n&0qppWFO0^cVPUo~ilG*r5z)jdvq(4-N}Y3U0ynbX8p0p;~T<2d9Y5 zVM~@@1<>w5ekZ|e>Up>*g$?Y^kfS@)OqWWZPzIoMdC@ok+2)(xs#tq&V*J?PAfX>u6;-go_I)e&jPkz zz8tuQhU0@(F(@ss@_nx&e_}_)ek0!}aVaWBg;)lOXHfQdO?Lsb=JbQ`E#CF3 z$fIBW0s2r9y6}}m@Pn`5n@uWx))jkK(G3aLfVUYJ;tQ!r1mSNY-!&?_G7S!QW zGJ-_#s0|$qn7=f%-;TRKKo9-luR`v8+K=-cr~Qm?W6txxoc*RB^8EZS>g2+z^X?Dl z^DP_&*Cv9~KFOGC`OUTYykqQ>2{)g0n|Buc>`R)P&-}WN@H}AKcqAVD;6j}>ZO{&RuL9|xNIn{!#;7%`)Hyw7cM_dkB2xnFvc zIjYb_SKk`?=br~3|7YZb7q;~K^qr+&M!)%j=Cna?SN;N@H~RaieBu)4EBm`KTBjDy zy~K_Z!(Xuhy1WHh{7J6CKVJDH*PMr6lm4;vSJFR{er*08wtr(K_gMKPWA4R|-a(x2 z27L2dLiCf*!}ygvYbDREqJJ#?L9#Hmybm+#g-A^qg=?I!2Hz^SMw_xkn%r~LRrXZ%O=opIvtKR@58x-6f(@qGH(x9|3R zr+gWEAFs+&`J1DtJ*JsMB*&i|$}-zhHL%M3(izyX(aZ0h3Y@(ZW{(hHPTHx&E~($h z3olvhDWW^&(!$Hf$@wN=_ocA6(qe9&2`59=(R*p9;I-%StaFFLuSWsD#E92S1ZJhJ z0k&6#gpaG*U^TOOru@E^X8{ziEno%`?#h z)OF-GHkhCGnFo95Y+^Ac;%}g@xkEGVJ6r3J+==Ge+78K`XqxDDkUK$q{myD~1Igtn zNtQ+}?_TVQ_+ztq6QgtO*}1kk*Wzb+CGvsuCxTw&l~i{K-?sdL4VZ)M-nuRXN+ALZ2Egak92m z7vdYVB`>P;4>Nzr^g4UjB-pF8KF?`u3pp!Shn)MmLe2x5z^9Dne5Z}JUUMF#Z~1i7 zSvtjZ8dsZkae)d>&X^dl?n;T8< z1lGA_j%l2b2&G$QnTEqU&z(h_TqcyBJ3Z`GvCi{`5G$B4((}TmH=1>xzb9;rW}WA6 z3j+sXXF*%oBljh}U=#F1*PUCt!XEi6>04Kaoz~T6x^bjUS!r*&u0H0COT>&5^_X{JCJ+8pc%`aWfSgW@D|YyGQbz(`* zg^&5>(t+BbjQNnK{ax_1x=#TQe;Q9)V1DvLp0)-W{sDNJrtp$I-Qa1V{|9(lx$v~Q zfA^^iV#Cv<4o|YByRx5u*=yFHp!iqs3i{w*UpFiK)YMHudk=Q5&F}=N9Skjl*ZHL@ zb$bhX-W6L8^RbQ`ACr1*ACQl^Yx?=v%D4d^3sS4}*weztG{Kt> z`Pg5TkHx#*$;Vz;9kgfpn5Xy{wU$Go#L;j+#L|nstYa(cU4W@+@+a4C>dc>ocmnK4Xk=&~wf@ zXpCQX&>Qa^G)_9}E$<}bEo1Duw~Q0Kx4aY1I^dNX2fVTC4v=4L7$78i2 z>5W_WrZ?7m)ApX|bJ}K=1ux^*-iod4W$b)O?D$*H;Qs<;a^B$b08{dxV#`iYr-nU!GL(2=fue^ed(t1U8UZNu3;{+tZQ|~ z-7BW*=oInf<=tfiWB-gSUe}l0HUe7L*)8wmorF$S93zJ@q1#2&a&qc*+soE;a%aCu>^U|nbiQCa_Q>tq z`F`xqCUaP7hLV;McDH{QJC7cs9wB`z@rx(;AD`b9i}~G6td;1K$fr%K)f{DIv`mOG zhD~0!$Y{)m>1#VBUJYN;rPzj;mz6RvL!qrQFDudOpqnpt7pVSG2}8zvQg?ea_pYRV zO+^>FH8Cya+xW&Id~ch`e%YMCiUhecx`pg#BKw)he#p)`a&#t)>=#D%3nTl5k^Qg$ z>k*Ot?9`M}{MDAsqf>dAnn$N1L*2P&#EyVXih2CZV424+%N!afCDa@m7AkuPO!CCX-ktwh;O*5_;{ zO*tEh#rMi}*h(s1%Gye(JO6IB67L*rCFBG04%jzFiCu$sV$Lp7le3G|=IkP~xu5jk zn6rzda(0nLIlIUT8PEOJ$avar8ILUnJI{I8O3uSp@=0tZpB$sraWDqBe= zjO``Hno$q19(%~L82SggP6qlVH393PVaw1-bZX0GV%#^TY$fR8?`|v6YK>9qUR)bcD`_#OzfG>p`#)?efv?r)9ce3ZC9fWRP1#D6Tp3?tFn`D? z$d?H09rkiR&64LUr_o(Y1L*zj-mREv}&Q_VbyP> zRhu#J3&y1WVA}j>zR$NPJBgAh<7{$u$?4tAMw8;Uyi{}GA3sy zIXi17fxh^8_(VdJMhBB7>EzH?1{3kyS(B8Vgcu}cEAcABg9mIS$|fcDs4i+>HexTC zg1w}1uv58=S{B%=#Ku@9YtU$8i?y-y491=!HCm|=%^Hnmji^(Cy@fTL5~H6roWfqe z%oX)Jol04=XPD| z4FV6qnI3c6R&y>9b5^!#*kd?fA9Eg%a~a-8&&MvqxkSG6AUtGgSBUYJvs`R7@C<4* zIQOmQ9N)1LyG>gcwwtiV_^d5Q*>n7?#7)2T*ep*h%aW|>a& zbW_1!b6Z%!UyHQBpK5`>x$;}bexv$B&OFs0N~;$5o3Hw@->7~=>^F=z(yGPoq~t~5 z5IYXIqNQnhXN&J={xi&PJ@cE0da{4>a?USBk9d%4u)FX+N?&GNg#M`W0R3W@d9aJ? zHbtF=ioA3~7<){)Hei>5M^YDc*gNIfOTHUS+OBPFu>Onhu@2j1WInMUni*9O(35?) z;b~q)f*Rj?5xlt&-dqT8E;LTi3%wIE1@PtqcyobqqF&&gn8}A17AxKy>$l6i@WTOl zwo~jfbrJI-_s6rhdJ(#w!;XYZ2sVU(p}TfCs*RH_($cFb(s(Oy8hdB!X=+k`rw6s8$Opg+Q+{XU2u8D zAJhla%~O<4=qMc!n91pcSzQpA$?1eyT@aYb>4aHb5SYp7gjrn>m^n%p1a`8zpz)W~ z1;H83X=sbSLm#|W>4THrh0i?{v`^GUAN*_aIjKjL^V4Sr_}urEK6qV@&;1TN?qG-g zDV(vl4|b}KXHOaSn5jsxrwn_{lwZc4GS>~FpIDIFvwO?bY%jyFiJl)W&Dm&|Vxu75 z3>)78u~*4naB+0vOJ$FO2)2tde{n4_XzMla{;7w&HtUe_!1_bpx0?=8bF+_nn|;Q& z*Y|nfY3lQ-&50kcO!l;rSaxG&4RMgfSKph`yn9XExUWX{?(5dQiumld|L!z;O=JY%Cv+vw6Zy0nchJs4ejFuL?$bm_t9(u2^Y2cb*L zo*Y9&hc>2$2l>=VNd9j9N3hEjtG$7UeNWEmre@+4e%EMHGsLJQ_UnF*(H8&no|P%= z)5=~~^om9dm#Ir!P|=dQW5pJJu~Adc-YLwHw&o+m5^^m$P*$h4q*HJ+zBn1n3%j$4 zsohR~jPfg-%m1?v`xQz|D@aw4BicpnH+%q6dqw#Gi0x`x8BcCo&ps$EDSoWys z)Wlcfhr7=OHZ8CAGV(}9QOm_7AFfksyx^xH_DKA>mZ^z7f_2M>2WXze9G>k0 z&kDe!0`Q1Ec8JobG@7c|2{%}K;lBVE_aTY%~<5K_J&F1ja)&TT{XT?-6F3S z-{+ZH^-T72h|a97uBIwNwA!s6M!oCEzMUNrU22LDvuRk~@{ndfH(2F3*w2m3wd4o9 zd^zVEaxM99{Pv&N)u*n#g`6JA=h+pdhCr3(?kDe-`XXu{2&uV#^Q*-9?F-p6n{_)9 z$;ND6U}tNu{}rA=J`r%d_xG%g#oAbY``$ML>*;v#8|dn9sV!S%o$FMH&+j_c@_5$u zb@74W55wxe_^0gl?r?4h-q&>?SBjp!NRez)i!v^9)VzZoZOihD?Fa!>VJ z^b_o^(4+EYhxg+#b<1W?o+V2ao?h%B=h%6s=6`&sX0I7aogC^vvu_skC@astD0ZK^ zuz~Ft+7>skd3)G^u=8R^*Ylhs?eyhh$HyLy++>J7yj)u3PjZqNC-I`vZ%D2Z{RZ)( zwDl4%D*X~KD!(=2Mdi0fyeO@%6E8}e(DAuQztm!ueyPnY{UN7F^@q~54l;7O_@jA_ zwkjXLOTMGuo}bq1@t5dXe~BixpZF-BxKcY(uGtned)|%$`=+6q-^(0GY^i0b{ef&V zwcMZoW}o=#I#T#kQ|70j>-fJfg)euW)G0|ub99tUk`7{M6qn`Nhz|u{0p~Lj{0ibPQQwsFqu@`-#=>&nC_aghvlJhS_)*%#kCMpA&3Z02b`G(z zvrLbg%1+}Z(-;qIHg=hw18k<|gbgQQq*Jqqbp9lSl4z`Op*g4_!!dYRbZaQ(WLx_V7N7D7viGwBHwPBm(c$i$b$vm*hGPGf?j|;m~X&?kq7gQ6ZL%WL~1kY zdXdP5w0|BCkD1s0)p&S;_4&8+aPLV=GvMLgPb%T#li=f1;o~#l<5$4PZ-S3E!N(WF z$5+C~+u`Hu|FL;^IP$L_^6>ZJ;ZbXvQwb0M+w$+1`}ucnPuy(0Skx?i8~<*BM&zMu zp8gKH@NWFOVi|N6{;l{pH1dz)-=ujfZzw2}SJCozzdML}k6N-PQixR|7 zd=%cj3f{d8-i_=I-%jh-y^VL*-QOSUpyFqvn`1V7+c!H;KnFYl-A~K%<(iADo1it; z`dgCl7@u1G{kAK&qg}HlPvqw9@cS%ZmiPzuYk?1DV_*Hvv)`E~LVPW9WIPbRPHZMM zR%XI;wVXTC8NL8t9&)Ua& zb9}kWQam};&y(ev4s~y}rw=^YeWjaxrazu1`^1OY^Wn>vDn0aM-tT{rFT+odjBijm zD}M@K2Ik<)9y~eSoaM<*jwh#EvOL+z@#OT}EKhdkwT093rkD;qIX!f3_LmAh&~QaPN!DGm)mlD`A+z9BYb(zpT?K7>%u)4UQGZb{wS9UM=zhd;=czrmZPT2{R%-C&relM> z-Pn7(uvs)(fdy|Re=`|_XI2Z(?B}c6m;k=3`1D;7YQl1z;*Wdb*F6LLI%&;-AJ53@ z!0ofCEBb!Cw$pLfU=vn3oZ^d`J&?bd)qmg2>Azgl^a#9``^)}$qW}H|{r9(jJg?32 z*v^MPPgXhKa>%KYHhRbrTil9i2fh2F2fY;=4|?~u9Q0OBd&{^l z`j&C;#<#rtTHdm)&C2I&+dQw~a$+gY#NYaa=A|3RH)X%%2hSwW^a@5^*-=4Ki67Pa9jCsmFE9?93K3DnvQ{Cs{FB=r3 z?#5QvADb}|8C~)-xrfAN{APXSKx{^TE@~6?Vm_ndCWtF(EK5c$;^3Hnl`r2_W>dFG z_SR88(yCSXW=wqL(x&i@s^8gI&r#jtQ{{XOzIAEwwNi`87+piICbc&wE<*l)m_1e3 zuy;}|-_y;W4YlYpm*PufKY>XcO}uBMJ5-Io5MAeK*_(4f$Eoh+8}R4j*H6YaqvveS z>NydC8I3(tR6kv4(6_iJC)e0#NSwv!7m&>x<1XwW#qb%Pc@$SfpO1- z(b*zP6ux!7CO$eYUH;-u1-Hh4Bk=emQo#rCr3h z;QvzJTK9C8wk$oe2Fz0faWLf)2cxYM+|S0qd}~VugWW6?#_ql9*hf_5l7JhVf_i9$PshK$;n zr6HrB9YQlkK|6$IjDmJ3`#rQn`QN73HBh(bHaQAV+A34ZyDp*g}G}#)q-ZR(zed&WXJTQ->52KEz53jEO z$YJ_03fsIMvJcaT|7P8QgGS3PO@S{dP4@P&CvA@SGl)5p{R8)|m%V;UtDD%DEYCXG zojVG=e;E3)hTO*9KD+jF)FPv<|L4~**IEBJ_$@h$gP3n(YF1H0FhecDXMp7?gZ%&c z9Pt{{iPOS1Tt&YA;kr-6wAE4PO2v~tsOrsuXYRyv^dR*w_~lo`UGtoT__2Xml@loV zV2nZGuNS^^Js9=*H-J@NE;gsRQHS#L{ixVnPQuxh_M0M*Qq@4&2!U z-fR;*Ho#xOHE>99ZIj?j*vsN6c$_d49!Wmm$}aFm>L~T&O#DCJjx)JzB|gd_2&s+f=OB^SM~D56r{8k^OkMJcoy!`Gx}zp{_&_oh>~0FT%r(mG92O{f1}3 z!|7$dFLf+#(2Ox>X`ZuAGsb)5{2S!{pG9r;b-GvK>F#UPNl1Q83%2fN-xumUtKVPM zl8qmbhgTR{^$qYXV;wyFve3Z)m6sjn;q$^J-ilNq@u3yThET{`(Ou!+fu9X~Ua-AZ zOCDSV-&1^C_Bzh%=q5hk)kTMFPxz!yP27jM_Ds#b2f4!m=SG5a7oLUOu}-&d*xHwD zqE_f*Qg^hDmU_1AtB}2)CcH2#=YmuKZ|hDV(_rVDZppsCS(&0&;jM~Og$GOgjKtCA z-bcl&{$=Hg_}u~@$(E3kEBuCC*|oZZwK8k}ACfCx`0xJ}xgxIgtIz$PkSo-;YUjP3 zMpFN_dw{l;sQB7X9Hwo5u3VuNejs`#a)sz5N;k>L6)SRbh3F(o7s<&LqLV0HBqvv( zlNjhE?@P}FN7!TB8~Fk0*=u(kre`fj(X;pEC*F~Ct^5eOHWIqlFMG6P=^6oE70HmH z=$h^K)3w>}PuChA`a7d*o&WR)<)Izxk9}8pD6aIS^FEL~G}s#Qza|frD|zTR@@qp>V5i^V@Ojy>yMkI>uo;ihq=j(Qiw+y&?ZmtvPaSdM&&LtZHuik#&|F50{B?Qs=h2@Beo%X6RnCss zQwE(YH^}*tcEGP^O1<&6f!KeezuuLq`#ma`hddFvcU4H$2Uqp2YIAwWv&E*x`5SY2 z$f;Z&@}gWG@(PuQ?0u5GLC))@9(Yf-&ef-Svvsb{VGodVN9o476Ls6H4>LE~5+$E> z9>W?@kINj-I$=lAO%EFo`X=z$NUkLCSDpa|p8*D63Q@Ceh$l9u^+zLVvz|KEtEgjrS%ezak#yv`h!eeC;<9vd5r8>hRn@GnmwiA5L*ydR>IS(8(r=K9VDUX#x^R`{oAue+)laK40!~-=tPldM>Db3%@Ohph?h67MYpO``l!G; z{}b0q?L+l{e2CpMi5SJr*jTqiH)@C2Gx=RTjD2wK&Ds%%nVe;KrI5t|@7 zmedg4!#j6b9i{Mx=BDL-6L~*JyvNpiB6~YV%X>7R670if8QI6awbUlW29k`egl1sp z7CYrUwa-|7ux4-e_hK_9|4Zy5Ifukl>_u+_kI~O;@*AY~w%A+5PRVOh&%JrF9kIw? zutLfG8$!uOi}#CQBkhU1)x z+3!3^jZ%3PVs~{$zRtY$$8kc>sH^`D`u(=r;D+QL!!M7p6=iFLD>|-hAjgVq#QTFE z;2^k&JrldmYR)CFd3Nzl_26j66#FaiDz%nW{)8vC(WPzhXgx=3SBJP(>^sT^%XsWR z*kk+iC&WJcoiO&@Fk=$bufj&8a*n5%>Bi~Qpqh}YLA5$pgR0FW*3ooY?le6|CpThF z*l@rzRXe<%+=%ItPoZaPhwJ1{F^m1i&H*$W$~9lkn}uA4>9L|Y_XKZl%&JELdys ztr?Z2w^Aojd?2!~gwSExS3-OtHM5nkL-7r@??g)YN67osBF#8wh31`uz4P5_S4@Fl zu!n>}Jw#|Sa5}&*+L^B?GDih)(_cG`+FZNqzTrg9ho>ftbR+?P{ixwYKg#&yjdb*Q#;+pB zY!$Ts4uFE-NiK6Ru znSq)JLf0F*;d96@{dB#|#Fj}8*@6}1dLhpVom>!+{Ov*Sr04O$cCF+}_CUjX6b<(` zPt4M)-W-h`Y!>;JRR^8^r8{W@v<07&$Ws;D6kV-`hWl32a-o}B?^>~6d`jw>iz6|Y z|FgMf+vBde`G1ubyZ^zv3N2m?Er$MP?d;Iv&F`eeiatS)v$QzDT*61qff{aqa-NYp z3EMq2CM3sAXt8UK%EkCWhs!gp>D%P!@xWz&O~Gu|Nr}>LPeR80NREc{4Bka@DRVSj=yw)p>bZAD z@+_$*2z}4daO&j=EtZ;R%vHjoA2}I1eUu+9gFM1s2TP&*s-ECsI_@m3P;~_1W17=A zN9xq->Bdo4xKdO%VHiDBV@OqrB*|u#U2rJp!2gVr*S$l z_(O=n4-^wGEBb zB3zC9RjxVxdqgN2Uq=rA+v4zd9@ zWk>mw`7JaaKbWHN5vNkoc=FVNHIdWDDjFYg#$Bc>d42r(>^pOQ#3@e*jgL4Z6^&>7 z@j~MnuV_57JpEZ2KDX~oCb#blu%~2pU@t4f=k}ce_Odd((0Jej*rOHM9au4zbc*aA zPku<_-(TMT<7hm%JwW3#qCZ086a95M{|tHi5777zAZvT)y%&w{+(ezjGNI7}d+}T= zw7WA7%o78V{RU`=1>Ht=MrO|K#nUe@J5s9^T5Ft;fX>c>zSgr3&vfW(hJARZKwov} z>;&j*0yN_TmBdl{{Ua+lvR-SMoHl zujJ_jbaoqbwm!EPPo{q_9_VaW*b~@S^7O2nJUsqgT*n*PyF`LfaQ=ux)lPa;c)OiS!81~Q!YesKXMR#@4=E#d;2&`;UdTXbU2 zY0TL<*q6hMLxbC_bmtJw@!T zv}a1}2<-(D3qpJOAxG+wcVBsG-mM(H(udp zrM=*QQzh-?2UuU)>km*fgSJ7&)7~NDX_w1*)7$uvjHi7<#?wA4<7r=(@wB^SJZfp7w$_8Bcrpn~bNu{!PZyHpqC|J7hfVav87ld>K#s zgp8+sR>sr5EaPc+$#~swS%>USyv-fN+ps@ua$Yp-djaR>;QPN&`To7Cv*6Q%j`OP4 z!M_KM;J3~_Xx9;+Cap(}4`~hJ*wkLioAK(mj4yPGUN1=( zy;R~9KU0z}&XhRXs=;Y(*P)m*C-Rb=jyz*S|JX-)*C!Hj#(yKwF=OeklEU=!eoDLw1n< z7_x)($D9JyA47JK{(NKy>CZ=YAg8PTIO-G?`c{4MVc96YnsLW%jhUTZTVtWIVoF&u zW|s4e;~c@wQTlMf&FWNLotF}O2l6<^uiA8qV}z3pt=yx@eu8ezuQk7>x9|UF@7?3$sP2RBnVp@LRu|vKlCRin zjkK1Hv4O=_$df184VH|PCNCt&2Aa0e#a!Av0TOJ=)3n)Tv@)_G!3?%T-n?KT$zX6& z+(mYvNuS+BvN4bp1Lo2u0V?jz#R>R|Z9U)LnO)rlwy|62t3UJ^&7L!7&YbhRo!=FG zm1Y$cYw5kq^vHYIAc~6p5%aQGWI45h&9#PA->yf@A21fYv7YhF_qrqR(brsy?vZzv zY(W3_W9qa26S~XnSf!`EOy!%|-!<7hL=F|hDx0LGmoL_pjboZQ$|^2`2FHpmvlf}O zxhRrqB_Ehx?99v-Q5)?Y;=hcDxtZD>n>2L8-Nt?V5U!=JORAe(Vc0X0r%A3bS#!=- ztZ!_Z!&)2RPC`B$gbEmKK}heU!p%QRGW&PCqJig?Vt7L^b+fz9Z!GYoIGou9Q1#T+Sn9g z>pv}R>z^8{#<8evrN)`qE_J)8mC%f?DyxAvTy=^4=NgmTJzSGIxqGBtCwGsu`|Q!G z-A4@tY4_P$^Hkb>;6GR0poRihb6)`SxWgpTjc@WUDv3KPDJv?0q@g{+6(C$qwnSPy?*$< z)zWt?eRcZIpzm43_YF(mUE`eE>^P(Dm2pnpAI1$khf3+YhQ3MqHq&>@@O>-PeCZpb z@8$Hpe)zs2HDCJb^qoQ9vxe_GSJrITSmryH`Hp42V~3sZoaU*n*&wvH652Zj+I!mi zkoYu2A8{(dXM8Um?5noeOvQFON8qV}8WSDVm_Y9%y7{@ylc5Py?TYMFyK)z~1O+Fu z<9lH|u?Cs5WPM2VyU}T4Ut;e|oho=+I9uX`lO^`tP4K!$*u$Ni!C#d2652~>FQ%Q` zbF^2|UO{{4MXu)>cIYnjH`yspRdNdS3ESaLvA06AcVd&?gb&^$wCnh>Ca3cIRK}^Y z=kR;z5$tQy=S5`tSQYQ7;ysnLSK8H^{C1f3%AM4qc@f#O$sB;M4VL(9s&CPFN2P&$ zip-m}^7Ss2Y`RhGA$pEZK`XF_T)SuV?jD*jzMZi%N{+=(k262I=i{bT)BoW_o>O$j z+l!Z>cMn(}wr)}26vk2(4vwWHhad9IE0V(xn2~E3xRL7uU`MWX@D8~y0cPZSCGaBG z6~K;M8|8U&1FnBFOY!Aij%v@Ia!fh<;G@F#MK3FSpQ~=b z_eF*?;QL&Y27I4uR`@4<&vC7byAk3l{a@IKxw4+OKUZ!?uzl2Ou`{nlQHVK;zkI;seBvZ&Z`Bpb@#5 zTtfMr1;}yO#0#L8)3L+6z&M)O^}T|9^1sCCL<0Mwk-`^{&HU&ub2U7dUfsWjCwGXm(wXSu6JvQ+k>G|Zk46Nf_ zTcdWxE6D3_M)CjapJSWaWcJ)$taER^KKLQIiJNC>?(3T zH-zp?Q}&H!IqP`*QfGZkpM&k#O6~oYms60lM&rY3{wk+}{~_`hwQA{CJ2ZHi*!k7f zm>C1+ba+%Oz#hWO;ich6_$`axc&G3w^!PD!$D8;qiS8IaJ6C?sqBq_I93L3*LZog3pe?JQ~XKfn#7+(uE?|Ms{8CB)s8=jYR8{Mwc}4BSKz!vwc}5s z?y>1)vH1Y+r8|{^KKt`AnC~ieQeiSRF|B8lJmN&e}178uc_q4XcVr$ zOzb4uKj-v!AFhtls8g78NE@6BaD<0HkG+{#*OHN3L?6h*wLsme<>A_DXh;zITNK>? z81wMx<{o=nAwCriokhd&=Vx5<{E2^NKF1$%ckqUefbd}#XNdIvH#DmdK72<(KzQ!4 zky-;pQ3RXB(z zj}d)ChImmqqYuNA$M?%e^x=8(1;Udv3r`A9E;9eB$Co)EzDj-a;ony$XWA352V4@k zVqlIUV<$RJIa8~%bvSpnUXVLm^FDR9UXnXoUzs~wugIOP8*^vtb-AdaWhlS_^H`ne4Ia_DW?%~T)+vJwc!F2?p z%K!dSRYO4K`7>3XKYaA(_vOv~^6lPP;2X%Bk3WB3qH19NzEgG1ReY7R_0W7Z`j6N^ zLgFX#L3sluXQ1Q`bcnq-X2MJRo^5l!f9#jU!)Q+aY^(gYIotO5Z*#U){@b~;?Y$3s zXWJhCZO*oX{I|tlFzMyK-*5%Ke-}|R3SW-~d_7VRH6got#ti(GXV{go8Fs~mGwjgiGqAf)r+qr@ z)A7TYj&Ixa9{&{0hxJXFVN@n(ILyzOrO$9?WkdL; zgq+#2ka4;ma!$`qH<&BFDbtNJ@G&?eI}JU2h4M|IK9xZ&t9*?r|x+mre zTx#poja-c`Vy{Z#FK>@x9~&M2X8Wh0rCxomR2#GiyO(EghjyjVYj$FHPL}8F?d8zF zPa0LR2~L$h0h}&JH&t%WX{J8Y7GhzuCCs@*`eUan#7>9)7XQ(g#a^u43tcMbTq3$% z>}J_=U|(n-HNUq&BYAIFFNI!8y{uBk7@xCUmvcXUeMr><`~Qqu9lKpf>VYl5MkIZC z7k26kL>C#|ZPdob6Em@ZInuUQkF>XGR#`hSm)O`}Yl9AZXGmAs@^_QR30pj8$;ge* zqq{8dSvfntjJ;k{w!lxQ`G%FP3|nAK=2q(2%BDZ5@-p?<;ITpao6Cr6D6`FES&Mmn znH{*itR-+^nOzVoYbiLZ%r2Z!)>61;Jo@x9<|wgf#C#?t7L99G$F|HBU1G6ZV-kxd z?GlS7?LKVl(k`)R(r#c|mv#f&y0jbE)}`H#j$PXQ$N|#sx3%VS+Wjr+s+-6G+{a9G z>|B#3wspB;@64JlzAfeKO8}o6uCYK1R~tJpbfT0oN(^d%xWNW$!K|6a-cPmX&N$5~ zicMo(*ehc5BnQu)Y3zC8YmA9chQJWI>|C3y9eu@*W;`%b?xuqH7%O}3FU6K?Y*?L+aeO zQ+QP_XG*S~n|Y~gQqRq6-y!WrEqLv39`E%tzp`z4eV=-5wU@K5y6j&r2T!ukn18|k z5xWRq4mU#^^zz)hK4({RKij)^&DzUk57)meb4qx16+NC>vOcQjd1;QP;>S3ab6OI5 zwgy@^Lx-p8!ZRhFRO&Uc4!XOx44X|Tzt@wTD!lo0Mfp#?*UfV*$U0c=XIjx)+ zZNF3L_s1Kli`3M?*o*Ny65MaenbgUm zc9ztH``lI^F`&p5{C{_+->8&zZ}8>j0_^+IUo2EP>wt{{`~?bSKjJrc@(eoUJ3EnG zd8S3?Sj!w!%#r^?S&cc$Ty&XNzkBBR0q-fiR!i`WCSx_2IePso-d}t=;YQXVpl#zfx3TeWBB_n=TfQU3JW>H|!Z$+N zRoZ#CGuMOc5jG*{RK*%>J2MLKc{c4iG1H!Xp=noNZsO}{3g4Hyn(`g-l7P=GD%Y&t zkLu(U@L6jwRqu0yOSJf#o3xsMmaxbp8Gn5zzG9jdDc%$nJDmLQ7L6hABl~hXIow$r zeDv^h)~MxW0{5AD@YZqZqDyqQ^S$nx#suR8i1Rb?AME6Nn8VCYVu^Y8k0wBi_G;T! z@_n}yB%FJ1A;(<+A3IYwRGjyPnsGnB-%tLz`xYf!-(uDf`iVa+{*2)JE_5`|)ljp~ zMkcevF?=0~3z>bnVb7UiNW7vQx)9slh16Q}W8+%`{mViNlhmDjPjK%X=r}N^1Djd= zAd<*It&9sDpWOi+QFLCXU8kM3PqKfsSJGZVd+1r&{{XNV0Dl7D5BVFi5-(*svttrR zWjd#4CBIpLf{mgmw%~jI1DdE?%)u2J0Bk_penZ^yzM8e{y_s6MjVpC8Z}>Lx~729Ja5e$aM~8)Q_P-&lLG4=&B^S{;}G-q z@QQf|oV%%7a4`pCrofm9j5*`@hNq#ibD*(vps{nHv1d4K!2d@6T2q?S2EPvS2W(m9 zcIbXoUw@|P0uq;qe%`_l9zV}B`0kM6@#G3y|MC%$$2eCcLvde_vqG$bwXR^TISV!S z_-7hboIk2Ke}p-IgtMHTnyIO~g_^oq@?h*5=bFh1#-)a7)W1He?9Das&2fxn!8fV9 zi|kpA>^U2`q$+7S_&71vcn9B0#=>WdHqLqYc8;NK>yb$>ZIhA-8B?Iz1GOPL>*-#(F@1ul2@cXFT z@1yvgI(}$SPX-21?eh(o-wBl!3`eXuA4O;vbUh*`%xWG&2If zz$`MS;?bFPuDON1=6AtawU!z7hZmZD7kMr|tsOrSf52PUh1lZA zZ((-ibl!J)VE)5&wA);?z^dAY_WsBJDA(cCFpbX_;~ql4IixG#-NW{V=a(2+sPYb z1|rBtF8Kz5Z(yZC=RP|0xBu*~`1V5Y+Y|NjzOJdq`t28hi|xm=_b0FhnOgJ=dY`=? zatzgH$i3&=-*@kSc4?pQSMU0uy%(M;X9sKFGHAy3ZmH|-Htz10d?}F?&q>W* z;?@8;X>^6Rl1pVnCv}hm?0rhl!xng{c-u5|8rM%DY)eF}|eu*B&4zKiyiatK2&eG>OmC)~g{W1p!_tRodWygSi(fxz_ zB|goWOCK=ayMy~_pJILk`bGaZxL@L2<~N{U=J$j9X*JAmK)>j32lq>y!~A>$=J)pC ze%jg0Z$Q83n}ho$<}tqk{W7l&?x(?bItKKMb`9>An9cl*0rPu#a6gSW#DxR;MSnfG zU!scn4d|Eox5521oB0js7kzPXzeI@n`Qvx^75(S@t>jjtY9aUs&sH!MMZW~!Pr-u~ z+-08aI}UsUd>ZPxjO08Nxk2dx`iwWpsBQ2oStG|U@;D=S;Z*s}t_Jfc^is(b1M$b> zD@GYS_xSV=9)1ve0K6#OL?8WwYRin~I|l0?RGT*Hr0E~L@q#B!|KN@1hZmV1AN+9o z2iCQR7ytLsJtT(LJt#VD?CJa6LW@Ngl7rnoxRCfQ@Kfsj-hnP7k0aV|&~p^6*VOrT z1w1p?rvW`^zE9>Y@TyqBeN{tokBsf@-<$A|l02+47kz^99(>EVl>a4m)o+BEQ@ECM zdc*r(N8{f+Ca!i$$i&JXC@{^r^%+*>Aw)907z+rECq*T`wT zFa6o2T21_>uUf{JS44hxrMB%G%f9A1Rycj$3a#dA%Wkkn&8>@ku~XmnwHt17zy0Z@ z=`TKyErT;Zd9&=w>p6d4&bjX}-(6khtv1?f;fzYT&TNu@c*0qo&T7Y{_Hc1eLv&= zBhS?Hzl{GQ@@RjF{$JCqi5Khc)3jZEu@*U>exFSWnzuPw6)vmeqHM;v<@&>)eJNXXx zxdnRq%IA5GKArTDZ>U+KMGV%Wpi6VV>(i|-7qUKAYwpwhKe15v=JuwRevI!aAZK@q zd7jNXS1#4uFEOrrv7Y|RFMHqe!jJftiG2G3`rpg=o%AKHe&y?oPyaj0bnBUYs?Gqp z$B9`j*Ht}{+HK5f33K1e_#1hK`N{ZC&(|%N`7^$|cDFbG*JSQ{we)tzU&*}AW<3Ir zu~thMpS_Uz|NCER?hE{{<}dSM?vMRDV=}LQq`!GT>r>xv{w{Nu{qW|`H$L`9HShG< z&#UiH<3GKR@8#QNKFnRdLCwFDb>IF|Z|;0U`X6Qe8UN`8%%Ay6|K0P66XaW7V?8?C z_y)#rWL^u(^+*BV5qO?GD%9QQS@Wy*YwlA1|1RJ126NuA1Nfu;;%)5FQs7JaZKFT` z(>ER1?X7jqR#lV4UAmWk%#&xWvNAQ#$g*|?!;xCX>m*jOwp~ltG9T6+dLeo)Gbc|f zI$>8P(Y>K_YY-X+?}cVKVUK3iKr^g@rO!ox!EIN4<2vZa()5nKS`9SADx4UOoNq!u zpc%KkurK{sxxVc$Z~Cfx^OshnKf6S$fo52S6^{IDnYJyy>;~7d>(b{fhko2}lQrto zOC!J74o!ewRJ;PsfL?^57sTFUR}gzBGy^(9PE5NZ3(bIT2+a^0A#{Trur|41(N{4> zGqQM|Rz!)ji00`9{sB6)7@v6L?OcrZPb_}}&+xr{p2^V{bV$-)QPL9YdSB}UmBQnde$t)jFc}0V!2%XTO6EWxn zvWlW1+ByAX5A|E->=D^xxBd06z=>0kH>9I?pw7W) zvGI>FI-ebd56ZNDKA#te&u8Lxey_{xTvRQeIa|<8pxYpR!zRD6YvS*@72osfUFeyK zp~e5l^NH2TkI!F)UZ`UHi#orKAIv1@0l(jBY6!-^T{H&&F0s+_P3TQ#&oGP!@s%zq zE;QPTv~8(G!d*?iOvzJu({kOq^>bQ{Rs0@#BoB5+4p!mQCb}4n+`z@Yt}(&GMpcQHf1leFywfWA6Rj%{ zJc;15ssndPsaEqGw^t4&?MXSG!Gq@_yoT z_LMF*sq^vcD8#pknvBFt1TxrwI;m;OxlTQsIK$q+8nHjTv1g$I*-WkEJaG zt|r@33$lVg{Nw0HE(FG&g{|WBPR%(Z#kiBzxRJ)4J#edFE7-e_BGQ4&m`s~rt()g;jE8mv9Gj}nl z{F>!Tyk)G&kopm!$^x6b)I5vNcnA5Dt{`vHo%oG6kT+=|erQR2*0SUlijiALXKz~z zsoTWfcCfF{k~`@lVB#F=nmtTCmK&(W(pt>>u+z5U2gh1g$~A`0Q?5z$p6Yjev(@hg zxdq2Kq3j9Q@_2t=X+5~!i@D6lhdc&tTmbD`0PR}`rBd~E9&C-tSAjrfP%xUySpzpe=kn#s8m*Q9)P z7xKTvKaX#%0C#lo0e|Ea`rd`(#QzZ((cQhNZg84CR?jNmQ{(g`{$0hubWGLl>+!8u zu&;d*KSAxUar}KeZc2yTFuIOa-QHfFL|0P_G->d;F5P^1Doem z7bJ}8$FSYwProVv9FCob3^&gXzcQB^5OeLh*}354nb_OUjQgRPV-nY}k7t6zz_ETN zFfq>vC+9ig*gU&$elX$?ohqHS>|7_DoXZ*kGvGi4I1t)ZXf-rQZaM5A{1;i%hM?!a*hAl50-pNkuo>i=pXHrNmD39t1wLD`_x1Yb8xJlVWv%j$B46<+ z@fl*@b*qVl$eTMxIh**su%t-QR^c7wMs{yqtayi2>hTU&c*p8sj&CHQk>#!MjW#de zaVnSZm^ckq^o@H6(_Tq?1??f)+Zynb zSMX{L1FwT&eR696I#=p!Oid!Tbdr@yjW%|qW~AH0?D^K1wwFPIZtq7JLfoHhJ}F zgKn#PY(R2d%znvrCv;rhV_Q=9qN6EvDt7vf+G`4(vc>S13(K8~#il)1u1zNKE)%(u z|4r_L!~n^4C-nWoN`5Ezty~vF_vIRd_RDprJSX?i^$SDvE1;cgki2tcBH zg&}*xB;CFjpZRKdM717tDw2hU4gPHi8un(|?!Sas$7?jB8vLz}(VnF}R>(7k{X^Ox zpnapXC#UlKRNAM~KGnXT_SQ)T?bOe>hWN-AiGzHLILL#3@Oz>$GdsbVnVev6Aiv$_ z7m0s-%WvO*&~Joe6KJ1c%+#x#nb}HvBkirUZ+t6Yw;l{YuPU8ztdjOhXQn>GzIP{e ze_kYJljk=agnnd0;7G`r84J-KvVTbXX4)U%`TGwB>^mMQw4F_b#>~%)JUrJ;6{+}D zw~;tM;E??T4v-b9$R!9oNF1vdM?lR+6=Q~M=E-|^7_*Xdo!QyBR_$VPJ=crhH*s=0 zzMipp$N=*gznW)qG$4UIRE&>7-`}Ftg<8$}{l7W*eo)}sZ$QJHSwoEx4M0aDPE|6( zIz?Egh+WZ4ybCce#C+pJ1%J+-P5arjpH2JOz?_%Ykr;9OBaoT&!v1s6WE~8b-<8aw zYFK5ut=eC*xLWj^#MO-lx^dA zcpJIib;fTdCRl7GTO@wD%nq5%iFXl?YKQf5e9)Qu1*{oy$7|;!ueWg)Ag6rE*t4xv z#}ww2i=n9fJDb=Fd`@M3&h%(@;`c^va*9*CW(qm8r;syyidC@YY+JieYtgo8w!TAa z(Vu6&S^Dgv&nr`$jnqo@(e9(&*a7`(6o2kqj)paJ?eOLEtU#>Hu7)qqX`W}#P0q9Z z?A85sy0tuo?9tBJ2)_YFh#wdE!wnQuOEWp|4Xu!RuKbQ1(l!1ES3+BfYZaQ_K|D3I zwR$jZb$OS?^Wci^u0)oRF{Wi4s1$p_Oyg5B{FDnq-;F4|+Leh%uRCbaxe6n z>*s}DbA3YSwcHE6mV2Ss(A6iP*MAMY{yg%K(9zGE9z9)cdh~WR=OFpL*!1Y`6XfZ< zaGF!GIskp=`gx(>T#JQ%bA3Yk$-U6)IrI~H&9zwQHPcoA$7@>vNrI;+!gCa}7It zhFwj2C8T@ySCI3+%3A!Ab@&aqby(>23}a>%dYTN`p(p*c`R&=ifiE2vdJVnRp|{ED z&dk_!J4|~e?cv|RmkvX(_32JHJB{{f(Bm`giYJL_{Uv!#c|LSl==B`v^&DenY!2;n z?76hhp?x;bS04`8<9=Ld8=J|SAu(OhYqQj&*MSnX&jJ@7y?z3ET?`E5;JU(qh(D)@GL;r}1HH2+tO&aVj`h$p3s3d_#D)@C@*!9J)-N5WURf3nI4= zdx%`&Fb{c$=;w?!leqX=_$YBsMH24>ZcJ{kGg=#{ao!;O7(TU^m`9J_A`kG5)D{cR znB|)K1m0`7L4B6e-DxU5_*!S?!W``>&e0xpcq@g@fVT^iXBlTeQ|2HCntG+kdyF%0 zy?QqK*B0~W^0kJL9nLapuhN~`rR3#Vq(e_C`p}aKqjmyq(22U4x>HvpwR?u7C(sZ2 zK2QDzsqVIb8uB7jM^ua-yVd*=8z6JE1 zN#B~``&Kqrur49iM6HdtE}2V!oeHNcTY=nEL0u!^$#d*+TjtnCc8*o>hvONa+9t<5 zZ~7kddeHazV_oNIuA)EDc}A;$iU(&M(C_1cv&8u)4riH#l1nr`sudr@HDQSx=PZ4e zx7ONuL#%(ysQp9OseL7E)a?qZ^*5U5^uQzgVAM9#zJ~TKVW%z|9u{ucH>*IOc^vTY zk=U=}z&DvMxCwu*1Apso93D64HUkGCIY*2F4#~Ci|Z4kTd zVdR$u!{e{)?_m5rP3#Z?H?$$6=pl8^_2{M4N}A&qgVR!%rwqBS_VPKhma~~Uqh-}O&UQ9a2CzV-kFevupmniQ@cw z^Y8P{id%B$$u(2#n|V)?_avD|LgvByt90JMyTZxIc4Bkx{k*4Q2k(=4@ct@&3Vr0f zImHe$k80Xy=jX9-isFlv-gy)Lh)y^;&(@Gb?;GNrnLA^G!}AnB%bhXf+7G_Rx>Q30 zs-XeZdHh#!M~$oWS4H0opEPxHMWEyG_}yWF2{(8qIG}tLgUGL*EyQc5zT<`17iOSO zjs?-%2f>v;wQA9`eiJ=v@#o?DN^gRkUzE?M^4LHdAnQCXVkWTtZANYxVEaR6P&!=m z!6>!yx~YxVO>MkxW6}KXJbhEO@g}VFVxNe=K~^brYIh$s>N<})b*~*Y7VSMcY~Qf- zT}$5-ecR~UK73zv=1y%ry4=HjUnBIRR`qr2mhs&3qf)0&=^&+6U*Gvu$a7`9!{i-R zN2%-A{~cv1Ra0JKcx-f!z#QwP7p~u<@<|+yk4M-4@;%9}X(hig+Mpq|=)_rHs~A1? z>d&L6EGb(`8~8si)A0fMrW(f>Acg24bs;G2b(*5QtM2? zK}vE#^@RgshjVZs_$aZ8B8RzL**nYq%5Ay#dU)%-H}Qf|m7D_27-N)W!N*sCaUDE} zO@?MrFLDd^wJdhFU1R764rIX-9ej;Vu`6j0(_T&c>|JBfC6^5TuEf)7PLlJ8_X~{5 zxk>1X$j*FcaPTwHf01WYo}>ZK0Jr84{hw6*g*Nu-PhaF+S!cbE43yZZ<^!F~_s!2m zXkKLgb$Vn$h+2kGJ-y%p-B^TvrQpVc?v49LTZN)uDbTHgGc}8Qw*Z>=!2^w(ZP0dE{#oqF2ldF6GR8f zx|;D@0{#yemmFOgJ?JGnev=nZdI`O-e^kTcJVdlg+3dO`Jj z;!{?!U*2Et#Z-G|6lD|f+COQ`<{VH`6fi2`1^$KV?86=chfUB89obxa4&C5nXcMs3 z^S&CvH)6ZU`B3CDsye!jS$^=rJRF}2en>y{Z1icKoq`X*;XdQ-V*dO#{XJlByf-iJ z{L?!x?JRZvLZ{$<|5oVGkU{VFv3ENC`#JDd#K zC6^aF*nK!_bAC(7S=-Y=4q@MM1L&2-j*3ps$lFn;wT=SD3gz49r#duEOQ%k zB-f*wqZ*Gh^$EM#W^EcIatfiR1s~u! zlE+i~jQp1KpSXEjig6k{zfFE9pO-H(v1D+2YJH#fi~6*$1tvL5qsI?7qbJw-KY0#v z%v^i6K3Cp>j(jb@&Gp94{7LV#wX1XQzRfkS^Le$1GI#a1o4L8A$N`m~oA*31qKwP_ zdf#)lJR@@udxQ5|M&Km#aLO&{kE~Tx4)-$^tF2dKos;TIi*zrJLsKlGlcP z)Vd}Hj*{21F#cq4RNl5CaHY-~ijGEK6}t<0x)k4VQ$62bk^g?XqM3Q?%v%@PlXoQ1 z(Zu)-`+NoV`A~Op#;9*m`6rUhdyRTOvCG&8I*qjWug%%*i;pVsyYLF?{zTnE@_0!; z%vedBx&Nc)`l6cE zHBO6v)snoJB`&(GNFWfkZfxwfR;K|uGtdA;oO;bU&(e(Z z42^kd>EFf4F>to#8l#Rz++XPN?S^KJGDPOl-Cs}BtS=tzj{N!;y8FyKvB*1d-aAT9 zU-gdW{(FTM|J^v<9mjm$x!G_Fjid4Hh5pEQuabQ;)3@-R#|nwFKU+(G_hQYx*>{xU z-I`^*(;fMSMJ|Is#?lAIskrmV)vQsUak_q8cqlTFXP%j$S?AIJ8F}y3T6#UYoQhgv z9Zkc1;Xo|CpBw|^PmuZ8)qC+7G>tepn<9Z7%pntD56S634y6kA#RdoLTHTmy>gmUL zZc%|Aao7{zpKIxV{;3`@p3&Vu|Fmx1^Ng1M+Dm+IM7O5>T1&_OUNh!)YR0^jmj2n7 zwe&B(rbR~mPD_uTu1EgQ?{)syt-oOH?<5xg+E;azOJD+HUo}CGETZ3I^l`4%BA>DJ zw2ytd`QPckO|$MKe*pa@E?@Eqc>QTV|5{+K3_q^dc+ao($jWbN=}+v}(}mN>HDT%2 zOGmZH*M2Aap}BWY)6-pl&%FLdi+phhG@uh&upGR24OlMIBRg1|MXXI|FL2Fxf#-VQ ztn29OFR&h(GuOoK)u|h{tdqAs&P=|yn(zG%u=g+1HKSv+=5)-{jGdp+tm)s;BG-OL zbMN%))}$sqa>ZTTzp5J@e?g!Bhd$S8&cA$1v&J`IKfzaHQc!pA`Hr6c{XG7@!+Nl8 z=UuBs8h)XtKmDwpc34w~wP&r}XV2Etzq?zr*a!EHr^)^BQ$79DFY|5B>XAZ&{=k6b zW%%~&62fu8>MpKFm@MzOx&>NIbCtv^2s90RK|pU+;bMSgLk zmOk%Yom{QJ!>fANZ(je6J!cudfb5&vgL>BAgod&1q21`dmvdG>Q|r2V$4?bb=JE1s zaPrV&{&e9BTKbkU-TCRn9M0UVrMt%Imh}m6*EpK~Zd{9R2X~x84=FIWS zp|&_#5gS1m?K($jJK($kApqb}`-EPCXIh(fRo^FD7zt!$UlvLipY+U)UCX; zir=#Ecg^s=J^EUloNQf_i{I_>W9B=pqM~;_Kjvc2`S-jdeA}o>!MkC^;iN8k?YNTL zyc6G^Hrisky|GQ`sc%~&G`+1ZVQdWGix@~aVf0EfS3+CbfphwYce5w23C}Np=NGVM z1@Qa=czyt$AAsiv;Q0aP^sH$BBMy0sjWcx9IU_4^{e=Q!@mqt+A5wfhT;wh#k0g{2 z^`ENz#lV32UHH0!g~ThI#a^=LYgf+D(`HKQu)f52C*&t@JWxyi4-;4^s<4{C9dk18 z%M?ZywBzf##)DUXJMem`g4c+^D>{_E@ETc8&daH0WgmEb+VTUhArD@iIrxQDCmGw1 ztXI+(ULP0v2e@D@fmfe7QG5vnUai~ALie^m$@!zViHxt~GrC{kTEVMX_GN(?<*#g- zrNABEktwXHFIWza$R23csuK1w8n8-`2_$E^_`Tm$r3?I67ga^^LE>9Emta57;ZN2M z5lc|92LGTnMKWF_^*v-VbUwg^*xxw+;NzJ==2d6*e~#Z0EQwD8VcM|8i*D(rHi5Zc zxwm~m`OZgje)$eQ#Ml*mR((5pmy>EN$%}2}amc^c7xAwG{uUnaaK?XtH33&T_Io(f zu;0U(h5K1o&O{9dkok=Dw<{ZDw^Paa{q%+1ZgE2Ey2Zc8+TE%n%Z{OJ(vTx;Kh|8X_n!$+EHCpvD`eh5Df zX+Ol8@tk=`_!sTe$oUD^6g6?=TH9^UmaB;^Tdtk(4b@JK9Myi*u2Ahq?T~6eV*l{R z^868dvs`PB*bm6nJYwH3*UrQCM%8}UZdL7v?R!=GVXN`o?(_}ohz)v|+@?R)(&p(g z55JSbQvx~sPQ-oil<)e93x;li-?EP2_nV5RG%6owa0XmaJS7Xx#Bw+j>w`1;iSU#n zcnWz@iEEgp7eUX0@RT4tB?wOm!cz+2DTVNqLU>9cJf#30P&}BYfa`LWRk*J0>%|#< z7oPHzk}tjq?t?Q4bsqF^=AIWAkNp~pk5dvKr#1LE%|O063m>hRiTq>Qq08~ly&hky zB)(E>h@)vHj%JIYaH7PMe=I-pPyNHliNNSO@*DPAnTB_l(QSJ;cuxy2YN{lfGe@u6Rc-h6>rI)GCF)7KAj`m3OQ+wu33DAH355P|^uBCFgw%NnAyzM6VKvd)+zF*`g;9ssy zz`tAMNH4)?yfKWWN-ZTBhrU&;H*=%v)c`ni(IaCEeZS)xn>l4-0t<6 zNusOzw0t}C@()HIxyaryUu2^`@C!^Izf5ETzb5c&0>38ki!X1|&pP{oUqA3`7{Cqi zYXH9n@GCjK1B2nWuS}#p-V49{-V47M0KdQLk%@vr^Y8hU(DfW`rxw;&{P>cbnb#nP z&j3z|`>KqQ!{|Z-I7YX0J-VeN=gBn!t2%J38C;6`27&H6B!L(qENfmb%(jnN`2wb`lzy{-36TN<^JIM zhs1`FxSRWTEs+(Gk1VsZFm1N-Y`qq5H2slOYgB9jPKbT3WS?1U;J^S5e82&*XfYpf z-~$eH;6Misbl^Y-4&>a0L$9h=viU@x7dT>^6WVu2_Wfr6WQTn>SP!8+@m0Zb&KXH1 z=PCJgRW3I3?`m~-)fYUOv^W=E!~R<(Al(Fg zKW90k>($i3_?;*-xbHS9Q{4{ogvjnHCwJ9it?Op< zT_fD2e)ITB^bY#J)93jwaQ{bZ?M3J%1ST$$`Z<1~DG_sHG#}G*qI>JXhOzoYpU=U@ z2kMuR_t4Ek6Dptyq2@e27}rA&N`hja@no$WJ&3#yJ#cST{6!ahw@k5vrv&E%@oBv{ zFVDNTmUuXiZ939p+aDU|Bj9}Gw#~X_-gaR91{IfemQ!_Gch|Sg14h*su=8VoK$pAz zI;Bg#5uD}RFa*vv^uyWr)nS9P8aS(gvl=)ncxFuahQinD*^}db_Cw)n6}Z}9RwHMk zyXk|kfndlHea^uB`McrhwKl~nxd5Ei0&Zzk1gPi)6N>Hn?b8C45^YlItqOWlRv z3eVv8-}R-_xq1`7%i->)jaq+qe0<7)?-08>%ox&V6!RzlWTx)?)3Pn%B5~X zJ3Ha22`%@&|8b&pOw~b{)v3ozu!V_kFlZJU)P-_pFN6>KJsEibFO$6*$TP6L6^YDZ zrAoB;9VN&(IsUaA91|H=@h=ly;6=z&3w75-ra9b(F6d501MRt$(7&QUT6Bo$kcQ=N z<^zhqb-kTB*!Atye&dWz^c}*N(7B}Yd9FQ-PoV(WK>QkiNas3ximtw8b2Yz5( zn#m_hC$z&JomeaNS%#-ILMODfMWTa*R^VSX1kK9RifJcGE28LSp%r7G6&iAL53PtE zP_$y)+5_)LE7Y^p8bU`7ETLoTTSG=_=u`>4@NkE{(hSzysf-EV(!D)A51VhEc4(Z1 zpgoh#o*Fv&zPUX^$HAGnk~1+mpzY8M&cK`{ILDwT;tYH_XN&6%+BsXS;cU??_1b{< z0^q(GU5>5^&RIn!b#9R@$s=MsSc@KToxaT^HZ4^)CQ^XD_13_l8ngSTTd?={ef2fq zZmH|nuu1F!Ze9Uy{-8y^d8HmnHR6|Bh7Y=l4|)}R2Ak~K6gjn_A>vb)_mlfy;92c& zHJ9^6#N12mx>`MbuubG!f5beK^M&LPY0sT6T6@kHZi+L?!TEZG`Y&np@#&)LVrg`v z>C}&rFEr??=n}*yLc2xQ4*qFaWv5}w_<|nU%lK2xkmyE;k7o_C*yf(p9L~L%-?@nIT*P;t&v&lFF7^8B z*r2gXPP_$M`o4mKQpuT4O=oQQ zf7Gm{HRPDzq3rjpaiLM2)#7izfv)Nn_72@Z^sEng(TBX~ zLtgZ8#uGmXl~Y~pS~8w|7qt03e*aIxuf{#Y<5yzzM+?7176rdD3ctQIBz}!M7W_(# zjwt+^AKjMv{ZBaO|6~Ne`s3GsE^amML7p3JVB7L=i~LZb>f>+Rw-`nUU74P!r^dd!~ zZ%tq;e?^Pj&?q)NAN+*4q7UXkQx!fzeM*6Ux$airiomM?hIW^lA5oK zH#4To?~3<~F{?#?t9TE!5h8&Ov6&ta-J9s$(5)Tr)vc{nHahZI_3%EKW8`n)d&Stn zS3PJ%R(%0J=HaCB%~yDtnAkPZJmi|I#C|{xu^xP#K)$I1?6Vm$g|~rwYv(@drshA| zi+lK@RI?VT`;UvaITd{4{w45{H{fqSI!^w^a~~=G#@d_!e{;~sryKWuNFLXi<8cYo z!^6bOL-4p0)@PqA9%sw}*3BQ|Lz99Z;2V+=+fCx%&@o1_`(gja=k;{(Q~XhHouXL{ z#rVcONG)VyviIHE9r2@ks~@k$Z$L(-UTXY`cKEod`o|Bo6}mxW{I}=F++ad<)=^^? zHjCYJsA2jkEj|Askqgm>oBq6(~(x!?2ppSUFZ9z@_9hH_@e@CRf4f(Sz>h3O+vpq6&m70TF&pq_Q<=(s2=C0te z`rRaEq+RLQrEkrW`g$v{q&~g3Q@$~}ZGI#IenuiI=p$pOv*||0V;t6CTiNK*@XkH* zdwwnW9o$ZF#@*AMei8cAG)Z*7b0X$l$mO$;%g+V3S*JylG+S>cUk0+4wwwGJuPNUM z8(L;pUe3N!uUO6pw_>+4gGaEhitJUmO?-43%D%i!a{sLsn=ST_(mkWypxA6Pyn8KY zho5(+_b%7dsVZIKrRAMd=iC(2BSp2koTn9?Q~Jf|l=NPFfdY^4J>`54Ft;eo_buozhnF|% zkt_FUkt^{}ys=T|OolG0!0%!ckpHEAQ)I;oJyNif=O-Y? zK`p(aQI98(odZurBm1^9hel}5Ry`7Ug82i#OBOKRPoim)d`_La;VaAau2<{-BW*Iy zb`w}wOPmQcGjF_+dCz2x+mM&<?P>-~)QaIG>3-qYM zl`fyTHGXT6uh-v%Jx}4IcA3&am-e^e@w=j9+MTQm_M|AX#2RcW6L*%yGsbImSerkH( z5QY3POQwTu@e<8Ha zz}Fr)f_FTjDV=hI`J|$CN=HPlB?YJ2Ysk=#pXhm1a%`qk{{%hdtbJ%Xa0Y%or1%*G692zzRuigf)b{qHYw+j5|TMB?HVC>E3HPKbL&*R^_f1A=l*dg|^U{Nox zzF{N$cpE!1GP)hk4Wx-r(W)?6mmj9v4quF$_<>@;G_&jYII{b%yAo(t%$M z;K^4G!IM`E;K}O@k0uZ^5lKXbQeC{_4-!DLuGwrJt9G92lACAHLX|h4S`1X zP1YG->c+YmPA&MhJ*e3Ue$zU=Gw1e6#F{_C-pYLy?X!qKrybeML4Rs&KbM$v+SPq6 z_luFKWK3zV=l&96=V@2>%ecQrvmM$EXGlitF8i@Hy7-=y2O(q1C%Yq`HmZ{fa0-M4YS zNw;sKy;R!Uxqn1&;l4%PcXGc|x4%vMC~4o#{fl}F_buxFHSXWi?eEY&TH5z=e^77X zzJ+@OKT7z-lPrN@BKzw?xe4F}wAF z9$xaHWi7=EGTnV;E#-e*|A>x$@B7yHOE~Y4ldI?)Ju-iQoHaiuX9djf5%=3)&N7jO zE)ZELdSgF1OJpRE{~Y1ll$>Q1X13YePpY56+MK{vwzTTk*jj}FZ<{1UFKC}&vEfPg3#R(B~!U2o=lZyE)w%E zzjrkRk*V_bjv?Y2{P66ui+CPc3Ynsp)<&O6FGrR-4qB_u9sOjfTIk^M$Wol22FOy8 z0A~(4y9|<}7@IXza#V-;w)pO(_oj6GL3-pUzQ-6WL%s9{-w2$qjXLbTy`d8MX(94c zYY)tK1&W`t$|YAXaud0F8S@uCa#KD}uLpbh58d|_m)ogyMT4X5YG%TBLW!B0icp+%id=sAu>b|TN!am!9A&JsdbHYnZw=laV|p|M?WqT7%&mz<-NUgIiczZ#F;D!s-E!z#a$ zwc8ox+{8Jq-P3Cnutqt(hSVlddW}1J^&0v0?!RAu2cLze1~fnCGd*|yUB#LIRp)f{ z8FPfs3jIN+(Rvbf8j5yAn+EgQO**=mN3HSK48v#FcBk`vc9gl*EkYN8J|eF5<+t)% z55JZ8rLgc+(MQCuz7#q21NiAfickNQ;Dq>x3w#QWptG3j%u4bbe3#gzzB-Gv=qwb@ zrTJ793RpnAHYxXZv!`EKYIBoxMFUSvx(o!?VPzberqZG6deV0 zO#GDGV2+>4T&NKuzjrl=j^aA}2P94~HQ0tynu4GHFNJ%;PnD03!n^3?A2e<6ChV7C5&wgbh7Gk>s;-*#}Q=UhA3c0dgH3E2(;L)Z@3(;nMFAXjr?-zm2p zc>H<8i0z$+9h4g!O02Z=ssVBytKCDUDwT>E4XuWroq>I^o8=}&yvbFpVrK%Nqt zf`?!D0A#KZAAk>S|Nq_mWuE;%y3DCOM*DxG|M>0yDQpVZrPV3|KGJ;`cbzl^xFTm3nQsJb*Hluxe&X;cGhW!*cFDh|L4!euEdsM8*ob!K4tgM zorzuS3Z6|NgS?6CZ9a)zVL7tmT5?@Aac)ERnYSyLQ#q@A^E{~+kxsStw<}tcKhY}wAxfri+;kl0;w7B(`q=yVzsKHxT<7AY zL)aEJdgtQCfwl$g{e#ZMO9t2$hR~S>Hb*1o#%Kh6x~!%6Cv^Sg?zcs^DEU-nP0~$r zMh;?wX3dp-0l$U7I?tBi*%xLh`$ApNvpHy@e=g%3F$voO`e$`t#r-Vyo;}Lj7wXQ% zwm^H{zEHQA{gXYE=j-Wz3AP2=^Y(?hYp^ZQp0_X5-Gps{_Pl+et_j-$?Ron`-Cfug zXwTah>Na6ppgnJ2sH2Vh9{WPwPHYRb=j{u1FJfDuJ#SyAdkfnF?Ron`-9c;%wCC*$ zbwS-Oq&;t6sGFp>aNlEJsGFtRLE7{7g}QU~7VdlO3w4WiyNLF@eWC6Wy@mT8`$F9{ zx?N0r-o8+GlitF8kA0!8Nw-UA&)XO3?$TSh@3Ak`ZPM*h+Lb*4`$F9#dJFeG_Jz8g zx;={aynUhWMZJal9{WPwTe>}(_Pl+e?x5bnz1SDnf1gno^kH-2uhYl=b3e(){_`jI zRou_=vH$$Z{e14v^|Al_$$c&Ni+$`re{x^X{Utv3pFg=@#{D%u_MbnwU(WqaKK7qK z?(x;)eE2gLn&9~WtsP+BK!0Y69#Z*9e4V~OIc0t%x68Ry`}$y+FX2-%-<{^2>AWAw zs)hKGe6NomNgtU{Gw*m`nNRWB%$xBdGb}Qn)gZbTVtcNx975(>3vKJ;FXFAkmj=mv zg(XvsSuu1`=w1feGKkkCcD~nNq^~WbC_!Aa$a`YXz_0W$v|^C22yqI1eMLIS8$c|# z=+N_iA`;szG>3D)FIP`$DfwB^zm(u3;^|+ky#7VzQ;a=>-@6+6#)l8KXQchh;1jo_ z1C;k+)4(r9(fNdm8Ldl84Z!2jeGay1r1-W|Wz%46(Nm_djsFyzMqAFNaq9=!H10tM zGn8LQO67X$@e8@7_$hQM_=xH7sXl%ow+}4epuPA$G20B znfad|dp(Sj?GlfU=wU90cJ$gtU9)M=$@U<3k5exgN%&CkKY$$)iuI9_CCXUtD`adKk49(H95tyR~Pu`8>K{L=Q8fhZ)hsh@J&M&;Jg3 znA=58(k?xvdYFXr54dCqneXK4VHB^8K6OHR7;hauIY{RFDCuF;9HXB(rFs}e=QGcb z=wXgQ52N5sdvK5*#)J2HCshxl#*9{d?Da58w$twIFWZg8*nZ^nFxM%4>~BZ(F#pMV z7>^H0Zv9j159863mxtiVCsz*>Qu4*p6Vk(|wa8=!@#K%H9>(L(ou^z6qi{2t9?`=b zhaN`3Vf4&FdKiTVnTJn?9;U};;_?3nKK8u&I^_>DbA(q9w3#fX{>RD6hp~A7@HP|4 zk9!RHFg)GN+atVsC|(`ifBZI+-gO_^W|ApXHj{+#w&<0ooL66`&d}c%7-C) zowub>Pe;vHTYSoSxWZZOA4YgMJY40&U{43yQU>P3P;jcjt4};1#-Nx^1>>1{*h?-H zztz6EtE>icS2g8wSJj_GOmYMMiW1W~DVMv7>rlC?UY-AC&v#Y(lK4Ye^_AqqIA_Rw z7(KbG8iU8@ySk!vl$DF=6kntDidQE#_vh7#^OW!EG_$Us@9L{<=YM>BS2O=Jl4>HR za~8g<=PLh4FRpW-@9GRVH-s(yK^Jl)#<6SJX6 z?Dfg;Wj)T^RgL&N<#SgJ8RI!r?yCO2tX)^ss~j1~GM*nRV@gig{(h{IyGYiWJQ@D` z%0~QHP3#N76ZT_8pZ|gv_qv>z$~-J@%;ocn>dFUG@w({0BELL+O7nSn^2>{Z<(DXR zC&}maeRE@^DWA`4F@Bh{b;;Q@_Dgd1LYUS>Xl!jdQN`% ziIQKA!&g(}SvhM+UBJHiywXMDuX#Z%P0h``zov?r_2icaKMHmN2Rc1`KCeDLn?3ow zQXev(*8smwCBLwzA0)phIMt{HaMIp{4>l74jX3iSXDIAAgK*3?=hlA__3J;=@lWG@GV`{Vhd+_Q^ z+X$~7pldLLzdw0)f#C0lw+m?0Mm`3+Kvel`R*mrLp?J0S`{TC@^sf8Rb^&dyoTG9z zzo_wbif#BFJ$ZF7uhzz%R9>yA^Yx`C&Z`q0$Iq)ve?RQ`IjD{8IX@p?KJ2lB&d-e1 zdw$l&dV8nsJmtJv;b!7LMtF6eSF@)B&(8y6DHI%P=M2rO6F)lnygK^Bk3FxxK+e_L z=_9;)Ag^vZiTS6R-Y5T5!aOEkeWvj0%wLZ1>Y;db;so+f^{)HSygFejUVWMHHtnxY zIj_Dz&ehRt2J>oST~Fq@+M|&#pAfHBYmr%e{Ji?M_sKt%Fi(tEvn~U5-9g#Yyse%Z zNou~)FP?H-N@OD-n+t(6we(+szPwHV(?9Sq4|(&~$^ zGkuX&tv;0cr&aZeh!Rf6=~GCS;$&fvgUVE zSAsnAp{z~~P2FJ+j9KIjot4$7p-D~V7`d)>sa5N{iaOD~d1!-u^1dh7Cvv+e8kAWd z_wn8)a-|msv9(=7E|haL_g#D_RzDmSySTEmk+)XmbXT~nvA-&R%s!bTFhb4be4bIp z_10rDzrV{oP7HQl&BKlc3=M>x%)}vK=k1Rx>_mP2U}qe#v%6J~ms8*Sdsk44>jU6s z4E=iGFma?W+yJA2_l1Ey`$b=UW4y!+93Kp1UJ)2LQMeo)ZW8-G6x{s(isoc~-4AX& znuGrTL}^au#lEm}qI-J`@OHuR)11tsA53#HPxphJiY=OJ)>5xnt}*DQT;XBWa^0ef z4sctl9=ewLu4`tg<1|fVKSyY5o_=yYLj7(Z^|^i2=k^JoGpbDTQk%d&|F?;a8G2u0 z`rpv_y>g-Ew2`-OBXpa-agADXRRQQN^^rpxwfIDSCoj?Zhu#x;cD(cz+_g8Pgr@tT z={{(>kM|lvziVWEX6pNPxY_H6uYx^ShmXqdo&T4(bC0j8x)T36_uO-CUWCXY0j<@* zNy1Y~dyTZt{5m(48}QKZ#=mHDQ#&Fn2znV&=64RLncJ# z*XjIvqg=3d+Tzqme{H9NAz-aqR1yS%{Jv|Sa~}zbfZ+6xe0J{H>+G}E+UvE~etpTA z&hMH029EVg?Y7XNsj=kO{;@(!)6M|Cy9nQ1gzqlGcNgQki=CQ=VtjWozPs3&^|=W3 z5$Yr4aw704B7Vos;D6TCYIBzIEvxk&x!23>@agi#Xxc4F=znOgmMAKopS`=yHq(~J zoosE&u4wN`Xy)B=SCLxBqG`h4L+(Q@+yPSDIPyE`S;WM5ao@Rr4}y9}JLo>NO-m$; z=Z^eNat8dr!;^J^De-Iao%8|sp|GA5|oc@F(^o!tAI=XLrS=rN#Y=E(2F%ITkvIh=8ye<%5C=rN#Y z`pEBSrS#7=q7(UdVmqP7fS#!%zmty8KMN#>nSV$71@sus^s5bMsvG&eSQz|1WEYoV zR|?;a{S3Oo-WX!pmBo`sewP?IY+fPj6Z79pXIR@WfVmDvEj*4zU^L)84QQERg__HJiQ{&}3jqkVUN)N(ip~Q#Ea{A-9!(FPr|34%$ z4IkzT&2}+sVa-y%JqsAsR_u0fOf`5x@6=|)D=i`ZO`qp(^6^cqC>@{pWob@tRQsvY zZ2PZpXURCRbDlg?@nP~^VxNr6#hkCWE@W`#shb(kePt@)H>CMIKzb3Ec@`dsT>Rs3U#o#{)hcXjbk`!yz^UMe$;zPW_b7a9=H*= znZhrjU-fIN@J;3SKc1C^p|&>mJM_N>f1-;I_ibQutv6=2X0IsKjPK74`{&p74JK|# z)f$ z(l@3P+HAQUb1kP@%CP0k+8lN}wwcaMDOnFqLYwrtx)U?L*)kfz zwejngQw$!p4W?bys_vC_CU%FxQSSU^T-Z&a_BJ3)y% zq|}jdDZ6=3%4XhG^}Mg@b>5eH;)C_PyV`Unhr>?z8q=-rE+(!hcJcX)6^q?z-R#R~ zE^?%1)nV? zmT{`PkR|kNa)v(XQuWY&gqSJp%xn%56NQPHOkyU}scC?xS0fj!i6%Z$@mLq0#vpNp@vP4p2z zDfY%Qk%{Wf^uN5<4ZX}+#uWc9v-#gM7qHfxcyF=9lId|G8^|_!0_3ZDi`c?q^pF^J zu4Y_br6nHdfUoR9s8(^<5B<8ZM&6rqh*?i7ck`@Q@0s|$DtRwz#v2m1)kZo?E^SEM z{l3zu`Efn*soHa}XWS?HP=yauFEC>aV%bi!NspTK;Fa}3>2g_X@2s!U)m^>l0`h1g zk0$bHB9A8W7)Bn$$YU7ZTT1T0Q|^#f?I?WH(-aP$f1kmc=|lN%#krR<`z@^~T0(xM z_~{4tgZIVIg9A7PP~wnub{eHR(=?l5DGnMVAnFn(dSJ9kfbC`>Y;V5-dN3Z~4Q zWn4ZSCU&EO8E;NiFy-b<_XHU2dIdAitWz)=-@IaYJLyjlDld zX0?I|^UW)Vw-fuAf;r#3K*3mMoqGa|wot*GXP&QMiumSL!`n%JRKZL%&r>iZ=4AH- znB>(8rplbCV9LPjgTvd2eOSSaH>(s(xp{$m0*v-S1vAbZuV6I6eGk4w>2yJ#C9hC$ z7nl_R9QXrATr;%awD}6|JhME2g9hMy8&TL^T)|bDWdR&?07u+Dti8(u{7M2iXaNoz zG!!lw3-Gf7IOqXR*{nj@)7~H87Y^WjdWp%0wf9#6exU%)ru+Aob(C@M8H*nUvq> zc;Qv@n{uuECRh20{H9FHZ}Q$dtp!n0N>NOd|eT7gp_9=CcB${MmwI_`ld3x3(edVH3G) z>-XZ*)i`OlCAk$^5=QHl0Qct1H2?g$m3<>mld4CD}9mRB{6wo z1u=u*h0keIc%>()oW6Fk&b;QY@qLHMHCawgvqi3nxO7s)nZeYe9L5z6b3Mcj%(FCe=bFq-bc-yJYZ9N3L?62ie1hn&flnwx=D2tMpVeH3 zlkCuXzj^U7D{e*iycD`Oi`*u0rY#~Q{pYes{M@2vVys5vxJoYV@{3PE} zdC4K)RQp@$x8dJxm2Wn-zV&ZvtA~Aa5dF|3ws-5usX}ieX<;kKlidHPC3oKPEzPH` zr({kmdCN#+sckK04A2nllTX*urp%A&D$bO5`0c+F58i3z9=%n(gB~naG2P^$@3g|N z+&g8#cgEP(PTpw_-icjU_>SN#d0?ZiRgHCI>|(QDbHYDfsNJF&Hyax=y0_HQ6A$ow zsTE3`M_s4Xx$mFwQ3dlZzr5_d>U&n}b24ViwUbaVYwacdW64WN96jQ^o6WezVBDj4 zrgepwW3t>@;^KR;3$^5(uus@?Q+Q*<=K?pIxy-JxThk)>40SKIoTo3gbwBxEx8rhU z*NhGK71~?k;WTZ<3T&PBYl(r?Gc!Em{3SStCiET}yhXcgr+h#ACwEAS?KEnA`{~0N zzm$5Jb2b`@gUP+ic+c101A~cgX28d9LrNLr2)w}JKSK(h+`Pbh7VzIDx6K_a@;qAa zzvo$+)@eQx!>%!QdbFV4A4e9pFKuUkZ#B37A9V1iPFJPPREya^PMkb-w|8tS@BnGYk|@qFNK^b z*}3eKBgqW37v;vfN4YlySrIu=V@dk4twP3<$)EYpvt!9M*cNzMqsEeB?4B*kHzmd~ zPuX*mW-l_!9BZ9s_a8JE7Z&$}#w@u*672KM++&|mF_|b>WzUM^b zz1hfXENrjY!v6gpff?(+vzOlm?-aBl?`7L)S8c>JW13G_)U0ht+^`0}F0?QvHnA10 z&>2(t)XAOUe}*oJLCH-Fn}Zkm_2odul<0`Or}#rmO#6&mkBr1)SxaH#S4eBJ#Hl8>CH5EI59fO!t-kM%Wz@Ku?|3QcJ7vS42*%pV zhY(}oE545HpG52m{)$F3lz1}CJUD&P(I|6zA-AJdODs1-Mu*rIa*x7)Kc;LYr%i6A zM#a74+7xckU?f(AiC=tLg-+qU|Blw&TVx*fkR6qyffjP3{4X%XnB;84XAmF3y9Rit z=lv9I^o}n+O3Zy285%-^;4Zn9L{T_wFML{0R9KcbzD7&@XE-eOF|jgCTv2F?llRg` z%-4hq)`SH0JJouCrOZ$8jNnL%9sBcI3Q2Xj1*{p(0P_VG)?Px$goJAB-* zIPs}g{B^RdGrTP{6wjnD8wwBYt`qSbQvVMp$1}O!$CI&14$t();drY4*XaK%;8{{= zM@FH)&F9Bwu`$G+$~PA9tPm!a!0!&>*)V>6+s6Z$ly;R&#=bio50OcqU&J)3Ki3ES zdCjo?40OoHZ_$Z-8dCr9lk-XYMh?FmpJHnQ{D#bdi)|-fC=xuyUU}pBy%(F`B5?(B zDE~8l_ImEnWz1^d-@-g{y_SH#Ze3W-@i;S|!Ve|Mbv}jMuM3Ip%Xr4d-V#IU!Td#r zaR%SenJYCz{y77DtGr8-wK0KSw+fEr%F!cb8$#&MkU4bXXg%Qf@=@t&JvlvFyB=mP zrt9I(F3uw$l#8}L9g_KRq05*e{-P)3%-lm=>?Cw)|MsSI`F8Z5PKhoBoBsS6(bd$% z9aM{&e7cglPnX|cL+Ltce?5G1x{`l?>U70EJt|$NB!621`I|dT{^E?APf7m%u2br#^+7*fqt=_`?L<@1 zPbbwU_Y~-vdm8k_N2O=wFgtN{jqxP}WxV?pt%z zx0U&Kd&iqchuFdcYR|zPC#Nx8f9f@FPMx;c`J>WyDt*@Va7o^OrMbWFE%+}*mv+_3>C(oWI$i1V zQRzA*`>`$1JJu}+{@B;O`jguapPs)t1$wm8phrJ5dh)hlXxx;wC2!(~eR|$=3iP~o z8uX}nf8yB_RSh zJKs88$)hKyEBPO%PFL)wBheLY&1i{#cy#Fa>hAmBTAU$yB*tXD`!c5(XT)AUIgK$j z_CM*E%kSsSqtbZuFdA>VpK+s)Z*~m1^=!nv$|k0FpPa7rx>N7FWc#Re-8zh}yQJ?< zBhFAfkT^s7>{Q|m?bj!#O#Eb$f5rDr2cFBDbTa* zH0T*|+^^_46&XBx{_D-h{naW@d1~W+1snT9AcJbIN6sBpb0n3u+E(Viyw=tS$w{a+ zbTU_VOVVPVOXdetVRCOOkBUzZ1@lV3_vgSe%z-{Ktj_(dU$>-R=C~yPnt$){-}rU$ z0o%GkA6jSZ^1qk4lX-+;b(i&QT_d<;+!O2EUkC4f?8LgqpYp%gamcoI55vXaUS{Uz z*w^7j8iP4K^NnEt2l->3hh_)QQ?JiqevwS1o{>4e5cBca zhU`9%_^t_wkjw{0$t|nB7AlY45oeA@p1bdc?<)7pTsLddRKERj_5Tea`R2uZGnX^= z=Skz5y-f1M*j46wY%3DX_qecm8_$zbgFNxWbcVhy-mH%8VZ}aXIsX`#>P0gck;0Z`?SwiuX5~_;9km~ z>Hfz)8s5yzu94t(;o{=r~9!R4$M zD9WuZsOEop$Bctpc6~~`+^NexPhH~FWdD!X@!SgFr|>-Z-+TvcTK?LS%w4RT3Z7?v z>degkpV~r>GYh|o^$k{{Md(WYosnq?k(=fJ*lk8;uI_Fp=PqlwE%Ug&bYN^^^(B$S z^G{mthHdbqgf<9OZK5Z1kK+^cu?{j26JYdhw>dT6X&^t%5}#L{~A z{#Sq_dH+^$*+~A_tOJkrntj(HACHOe)jM~gSBK_+KWmY$jp&K+d*xf75E`78r$fDs zgA03?M?UFHXI<~CNoJyDKlRBkp*zK%xk}A*c@eDwdqd9O6kTE+y+$sczcE^|XN8%o zY%cYH7u%rLgetgngL_4DX`8)CSH201LUXjJvjVx}-OY`rgIWr`{%c`gl+aj<*`|r)e#ir%qs)4I6 zfJ@fr;nH<^xY@wXE`ZabdAL|j9xeu4tN<=KI}ewhl!sdY+=2o)ZB`yGc3~dw2HzInKM$84lZV?0+|B|x?Yul(tTYd| z8@SyCaEvo^GMX;R!yN$bKmnXqnTLy6c{tWL;=c>{H!csC&g+F$0bE4^oK}&CL!WYd zsRpjP04_Nu2UoH4o;=)a;AR)VX{C9%1$XD+V!+XUzJH7Ia6A7g54Qj~*39SNG%F9c z;LbeU4Zz({0GBlKa69kF!z~7GaRD4LPL|IV3vSQDC4tk*#BTU{nLM6{+xgi%+$!KI z3gEP(dAJ3i&cm$*uDSp&c{mTZ^R_(PBf!lrfYT1;;TGJQhf4z&D}YNL%){+ml!x01 z+=2o)?bSToft`EE{rB`zx3;^)sB129>l#Xizvr3F z@@`qs-^bj^&85agdKvGO_O^!Zl30|u)O2Ru$lAna)-g61M!cbnc0%s_tILeq<}$uR zyx3hvtU;-dp^o(v4P%H^D6byl)UAUj#5oa-bqH6pR{R{psr#JiJ~@|ta$%jlf13LP z;)b8$Gh4@K%!3+s5o-*W9v&M_HR)=t*aO5Dx0=P?iWP(QC%#NvYK5a_I%YJo$BO-7 z?48m(TYpR}Ffcay_c!Z_*LQ^#tjWAC@V)1=o`Jo<&iWSd<@AAuf9CgtH^J{}_BGe& z{#a!D9_M>cbgta8O^2klEY&?lQnJUb+Hz{J7ln?&7FBU{4FN#Vs9hs-uEXZ_P#1u*S1pnKyQ0Q z)dd@dH>yw;G(rvg8 zht+;@yZ?wEw}tEJ(^Xd`i1$BRk^YiX{<(9QKM%E+??Eqh!?{rDXUM5or+g}VozC%6 z?EBj(^I_VC0{y-`%WuKMo!T5?t<|qQQ>&n#b9gBH4qShTz4(9j%$>U23G>;Co!8ln zm$3m>)a^j898Kwmg?aZRP^mY1)vK*V{>u~oF z9TvMflKyfY&R-=Crl4ijdwtnyusT!7PNsH<>?FR8yxeR>L^i~hiu{S}cnh(!EB>X_ zXk@>rvYT6Uv9r;?e}*|Z<5kc0K!T^zLw?WuxeIsb}4MT>M7j`QJ{I@u0zY(2E=zw2OlA;OaKuVz;{U z8Shy#W)0&*4r<;v8MF4um^E|ElQHWu{~eqBMepA1m{rcsz}AXwTyaq6%qjXq`zK=q zKCiJ#Gv<-+h}3EJ^1eazQH$=~hmSgle)5eAn#&V+Jjl1TrAGV`;DIBjLoRC2-+$f% z>^99?39lN*i%zrdF;nhTe{Kx(^280z*klT3p3H0n#}s9vDkL(8#caf9rfMk;LpY0aXyDCIg0~ZKWkm7Z||Ec9A)p< zF%FP8C};261AC7RX((x%Eq*R}yHVR*Dtdx%eTUzlTj;Cx*y$Q#C5wLiu z-KlO{P3TJ%^;|}J+LnAWUoM2 z@-DnnY5%`6#@}MwlOL2EfJ@)osr!$sc;oqp!;(`_Ig9bi?q6v~S_f@%1nv_>^e3@^ zl7sb14s2`tG4J+)u}U7uU3o=CTJLk&oPefFTlR9^BUd2wc%f^>UTXG0K+nWW$PM(7 z8#n|#IK))|jISc2UbCA;~!;(Ywaf4SCu|{v%y~yT7&6v+OWFPT* zd^fom$*Xwx{_8ROwO7YVe#N_2@IXF4_3I#C0dCTkRYYDRq;RvB%>%c+LwMb}i#*Gr zLy~t1BLgZ9^%kZy;iWV6DfZWOhqJjXFNvR#_5G`bx9NBCcZE-n{MP=)`(}}D|As$v zH~Ad1*r@G}I4Yh%wumQebCTq?{P<$3l+D9rts#gll&qC2`EC)}R`EqJ-jevDp*)bc zD?RpsNuEvN2+rw?zA^Ou z-dE|LJLn(Q5#fVvqy3nD&uhqz>@PPo+m)QxA5{O?ts(UcdrJF}pnvA5{_$Q7Wapdj zL3X5n?vz+n6PkMOf6r@zs~4)q=6nwsNq^MOSItNE8cHNKb+mr1x1#8vXXYegHBHVD7^~=^ z59K-E3>(v$jl}J>^)il-T% zKDLv+ECy#G*w1`I>%3$wd?W6cHM?rBLAoAT@a#qp^)ktibDqX{W4hSjGHt)cp86$~ znmeOAENf`p+OYpz#ysrn=v{99!KiCd&w_ZV4WItsvL>GK!&n)!K@YKK7kBQlKjJIz zWG-a$*uu62wl{1Z!N-m5ec%U2Sx@DU)7AHhYr)TE{McE)7N5(R4*NQwK_9DP``s$G zXTRpNhl#&bzd36!R<=a>uqyK3ksUERvUN~wsaIA_j<%S7TX0pDX5m@k9KdI_iYr70 zL`U#b=!35d=)NW6N8!=%cU;bI=q; z5_o6kq_NS~T3up9NAe3Zb#e>j7wRNF(8oIXe~AmQw-s%>)!7Umb*DE-j9?^Qe7GpF zxT)T$x!R_m#{pXe|0PyHPA8Q+Gv#+f5%GdNKViJ+$(XWwGvmc|*b>H1$cjIHO7B*3 zqsEKf=LGirWsz@@^Fq3y^Igh5gOAvU-q#-S5fq4 zHsZfeZX<5OMraj_eH+m=qK)WXoce5`eXx&Y?L*wR4;EvMd*Y{NAG8JkJ8vIiquGbO zC)kH7#@QWn*~bw_N3iGYUvtSb(1-r`q&C<)S9hOpBi5?D7dK>W1bSk$sb{h43vEQS z$so?m~C$Xa4~3E${OALV?en6mF8hxR3vn)hg>ItM3V;VX$*B_5J} zamKuUVw?(1?1_?zoGsB_DYPZ5b1WNfM`ZreMIT16Bfrnt5k-UcQFQuu%8mf<+mUYU zNRw|zR-A`_yZW4w?TB8{`@qAeXh+Z^Xm3+?B)L!Qh|q7;HIG%a$$q9Hjl4H;%_HK2 z({~7sh4RihSofe`V&}>n#*#`OrZkknXTJ@2(iTfw=vuh9#3Ucr zEd45ZJleviPhKbXTlBgN|E~OlEqs?;lHyT1=3+Dby^i!5bwU6Cjr1}7%K2~jx;5n9 z7=y`qM?wAn;=3XHZ&Q4a`Ck=}uM4?T(bxY(Prr{3-$We#Fg|=6_MSVV-6_D2g${|` zBuB;me{bnQ{Q9yXIR(3H<)HWbl?8c0&IT*xzFo-+T1Qn*q4OW^$A3S|c~UC}#jXpy z$_sKPle7M&VR^yT>~#}A+%jbRh&+%N{85k>)C_sgyF&7U*N_+F9dM5JtRydZh*@{!&fA3*2x)4 z?p!BlST6LEGaRGhibwo&``xRWOM6@X`d6RTR>9ByKeL`i@4X{)p5$?`5mwaNK|0e}`z-Pk>wlJ5kbhc%f&fav2I!i7;r?b2x zI@|OumCGNlvu<6p(R(*}2K3ggYY0bE@claE;R{Fnoc_`!rQ}i!IWMsHo+YnjWjB}C zuad3KzCz*JW+yl<9j{k~wG%c$?S)Ecow*XeY8(m2MkS83{KSOeb-$(A&`?*5+ z>iN0C9pXQo2lo57!ud}F$r@)#J<6}Nxmok zQGB-GhkYsV$=Y_m4u7rchWP7kejWar{kJ3d>&K)%i?84+xdpLpiShN0v2iYIpV+e- ztZPcV*!Pjo?!53n1UK0`T8Lk7(j3UP58tx!;!oh~LB%WC%NoQB1@%9c?~6?qx)uM2 z!e#ltH47)WDxMy=en8?KzkjzN?=gJ&7PY3%ZpqO9Et)-HjutihVz$}E7;QarfsAM` zXzkjQnsd$(;=C2ap2-PDd|fGL%a8}(T*^6J?k~K&MO?y6F)QD3%w60o;%tDvIeu#sA;ZrS%YUx z(<|L+-HdOW$Gg)T#v3#A@yLU1upZBy*9%`O_c&YEt8Phx!(?&?!XNEnbo{$- z*iB*GYqH?ulYH~Hnllc*p7UePu~q%yt*ot6w2&h<$bU=!drhtM1M|te*G@^lG55_o zs?F;M?1jt3e*E{F%7)CZ?c1(JZxUa<2l;sl`FTan$NMsrA^&IToi{OWtaP)vWT;HU zRv-_$x4H${S)*j9ceVL@X!>tk;=ffJFHpR;STjcqA#R#HzC&ntSj@Ca*x9>8)&COTH7i$ z9{f^oviNCl4Qm%HVt&SE;Q3#|Te~$?FK3~)tySwl{~&9D^Uq~$pz^lAm*?KoD@Er* zC*Z|cKZ{os9*rU{k_Ap4t-d`i(zl)LQRj; zpUjxw9{&~SPHCQ;fmJ+4c(&cg)%*!DH#S^wO+Qsg12|yMxRjPLxsx7HzTp#vwJ zr(+jesz2?8*sBQne%5g&?jFdU4l5_IHjN?>aYB#dhv(eGkpf9z$(9bzB=h82i zB+3WKD^%zSZ3A=N)p}z5hDIYp0JOs-_iEC94BN5DpHCZi=sY_@UhjroGmVY(*+%$U zHAm~TdSa~kW=$w-E|)R4QAD1)h_$e?Ml%$7pYb@)Lo(0SPfoUv3s_w2=;P>g-!c0i z`^Vo%nWy@fEo2-apO-7vn+tTI^p0 z`yW{b9>IK{;1UXO`RassyO*&B)DT=uVomIp2QK>rmo>*caLK-Bn+AE}j}qr7T*^-5 zNv+S5ibF+;C%5hzf66>5i_93ECmnCb6KFm#Cb9HTNPLING0X2G`^vnqTGuj$cxp`I zz&_3il;6p5w!yhVO*b>IRu7E^f3?!D*!2$18i~VC`d6*1?c=%J|D{f7~6*4)ZHtQF|i+=c5jcP?j|jN9znnVX*h9(&E2@WcgO z<8x<{uop$1`!boHgG^pv7r#%l&n?ED7wd9XkP})Xc$ax0)&gI%ko#cn!1jc|yM74X zo`ozZys@U*iYq^-V)26f?ZKCZv`XheZOHSVQxLvt(Wb7ey z#AYNkbDYVe&IjeA zLff?V5OB7f(ZZT&@mslPHM&znTtj|F{GeOepcz$@G`C9U{9oP~zm4~v27WzltPbEV zJS?&xa%`K`#7rH&KUXnB2fUTJ*$WSdJdFy29pihyKY2UP_F+rt<7&>;mOCxdA5%7r zKF8Jt&yv^XY-HXRPE@vVmDoz{vr;eTWo6IBlKEqa1LR%^krAPP*tyBS=6tr9PEGSn z&M}$kR8P8y^9yGWwp4pEiT~8Pv~ks@Kh6j(nOYcC*L|+hI#f#H>b- z`Gc(di2YROu=w_K40jLAl{4|wndlaC9_kLG+w0f-|{!f>U!N>wWbqhy2@|_%zx!H#_8Yl#ZF1zjlV5!A#Dach`}Z5?ZBXyiuX< z37IeQ=d4AZz85CX6_)dD6i+1oqt1Bo{kP#(ch5B7334_QIh#q$HG`OI1~JzRVy+p) zT+@lUrW12bC+3(CN+ zU1g{?I4>Sqe5vQ6lHlz{hy2sx$NK!O3uDHUw9McylD0s1pPyf z=zxl0K7%jU?PpS&AG4YVqDwbu-ZLru&of%*K!?oNGEPbn^Y>^H_a|CSKL#s{zt<~S zMPKd&r)PVe$?rz@uy4Y9`p}VcFFCi6eB5{s-SJAk&U&jP`$WiZmfj$`TLSF(XzHO* z)MPBHEz#Y0^R#xY3%UOKG)I?m-L!T}ujeazyCLNm-BION&|k5IUFbh`QqTx zn7VKW_hqfr+avN`neM1^rPfaF$dU2BiSI_<*l%U~yh#78L2TvS$NALLIV(JDN}dWB z&L@n$Lv;0W_sV8H(faqrMrOL)jWE^7kgv_0N8YeoM?ONx31hmH7VYcMxF=z%$g{LB zYaj!DUn_aZ-qjBs5cw5dX-lj8*T1>b8d$H_Exdd=+m|-+3H|v?xf8*ErhflI_(}hp z?sUF8Qx6$48bag?;k}G!XcPGa-){9S&3qC$8{f%&*WjXHeE*XCHS+ibF*7lxPA*0C z1sl2kV!ijg@PAVGOP9Qz$VQ<|MEkLc#LXfTLT7YQMr@anxC^_Z^g1RqJl1Jm)zG`I z<7w)~_TKdG>CXEuXP=kI$hs3`1RDR~+ryaQ+e6VKY>2XvNlQJ`^=53?J=mywuu=D5 z!@h(K`=T?m;fvU?FFI3i{315&i`0LS`Y&P|zK9L`!kpI`ixm}pII8On_Ls4l8FZ?J zbqd81?q48IEW@Um;y=xwb(XG^^OHW7D7WalYOVLhhpsZ>=P5hIy#42848pSoy~`i^ zh>gwey}iE4h)>sy4_>MnS6)FZZR++rzXDIbqIKT3NZ%^$rZPWG+}w1hZEh~HTPy#s zXEGs(nfU(*^8bQvH2xMjUdOm7rS#1iznSx&AExdB>VB-djZf^{$?-_p>*av`R9NGA!l9%jQW(dB_m4Yv@*8%%^U{{O^>&8nY&rd9_g`5qWwBCCk zdcQHZMCK*JiM!S>V6L104;a07)w8zZM%ET|mw4uR$ov7$cUN=#7Yc0f?q3^MmV^^` zZ@P+i%-*}}uLiyh_;3L{c2lzy{PKq`b+0V3)VE&U^bu!PGwmOUa8CV)d9R%JI5RE# zo!Gg|SD+tPDm&nPYli0amzH(*Ey7N1F6aIZ$%8Z3*>BjK1?MdZmx&(noVD^=5&Kdi zcKE>G*kyXLlFQP}PqVT~Y&KE(J2_`}vd%mff2`L5uMqN1Ia_mz*2y{^?v>Kv74^u3 z??Y41p?mz#-bypYoHhHUum^2wjk0zLXWLwg4-Dh`$i+2>J@emFJ8OKK6I+>BS(5j~DeU4Z)i*2T zTVf~GodIgSL`=??E>4seSG&{s_VkA0IsN#PJDR5X^q37I51zyj)44aRS`X-q?{bhq zXO^PB*pCUc9f?rMEWt(Kef+cE)?DK0YT1A1^&c~&zw80}Ytf^c@0YrU*atg|f49Qb zy+;=g3V*%GaJ-X`V0Xib3iEvTgUw;dp&L`W!z06{f1qH`GbiF(P6DfKQm~w9&s@n# zU}Fy|*b6w1obTJIfn&XQEaL8yW*?VXy z-zI%4Ikm*WhlE$dWFfi56dUct96`xq6=fP)>qw!vfWhAZL5m4KGt#CwiDq<*lwDj z+x4<0XO6D!BIQ2Fs42EM>$g~^Lr#}?DkS(*j`wlR{48p&<98Z6&_C#6a}wV$%R6~j zzHc|Op1t@I-CuujuD|}^0!uT%L*NC*yYKK|uO_&pOJrWr6W^ug>tg#P))#*&^vZlv z5a0X^yo(CIzg5YJ_*VASJh+MRLvZKH!~8F@WOA1n_Do_ON7m6z)x-Y#=97XyHVYfq zEHXiVNURjAb=GduoF9JqcmSv9^!qAZ?#Cd+OG<|1tWt3E?a3-7L-!V6m6f4H88%GW zCm9!Dqm(Ra9|-V&LcXuYGm1VHr_C@r!t6nrtJ(2dbsrYv=Jy*NbBmZ4C=xr)Sob=k zW1Hc2v>57lk^G)(Qf~(JpX45=cgR{V&U*i(_!8#+iT%lMhSvX`@q=we><=npesP@p zgO+i$Rq4o@hmMv?>{`g!G`EsD*GitNyCryzACUUF@JY(By4!}|a&|vCjIgXdqTI%w zCMjD?_#LwE3l|HI7<*ePr>1;lQtS~q)CSfnH)eIZK&-t7zskG{<1b%Mw2glM=sYKX z>-*;pFV(_&tIsLeK%Ukc4_yh)rQ|RkdXKkq+dGU+KOeMLgl+bkkG1a@&zY0-vH9ik z65~d#|HC)v$DJyt_%55hX^ysudgg|aAKO|Sd`tVT!Zo}p)E@paal#ii_KO|SaR-2l{ge3|j-rXr)`O2%S5 z@Ax_LEx$`ybF|6g9qxMkGW*&-QS40pch&?qaR1aMS^LYrGgZoatR3qXc*=$l-;??f zcu{tTXoFHWz>l(l_{rTcUmUM8Vzp^x{vPpI+rdn9tuxXHnhArY^-mY$e2B3mt2nhlKd@qAeWSc5}|O& zt!2%~a`QO&4i0UDd7A^@J?3`IohWk)eqD^dm+_Dq>xSKqZ4(*4hKvp2bHVXkXF7d5 zb2G65eaTv9#;>e@mbg)Th>VqFu2x5efvKjBwb>%KZRx|hVjRX|YV7BK|ETZdOvWPXB*%4+!C1zvX}HIjrr$&E;fu!f<}bR_8@@=K z^+k6^_ua36#qb$@}}!I}Ur?{kWgPbYuVG*QMvn_mET0$vg+UgRPp*T^ds-vH$hm*eS7b zd$h#uJIZBFCYtKg+{-22U<~)_L!4*Nc-+*E6N~Gd^x z=L~d?yb1XzT@MF(rE-e77=^r|-=D-NlDFW_L`T+)afc*!0J?}zri*`T&g$2<a$!2J*9Vr$ivX?=0w(kIKBEod4qYN$jtN)>*tO^LwI$nvx&Y->va$lrQz4 zzc>31-=jao<^AU+$UB z{I9bX4F9-WY^gTGh<}dzh$WvhNq5G6J=8vym_mF4u^hHkjZGOFM|hY1(Ze3=PTF?r zVrPEJeK$OhX^Dz1{7kc~bC7xHF!wsD{Jk@I3pmZDt!?b>+z>X@JiuJeUMKdd#oxm- zf6Y*Sovu6!;GiIx(Ui4;_|LrGiM1mW#mK~vI~d`Wx?_=i6|vGJQ}L%- z_K_vYk0VpnYOeRF8-FEYH13JGjZa0|4T**DCq{Qsd+4bmC$x^ZVKXsNLs6T0H$6q@ z%)amAA~8wU2PPk2U6n5OvA3w}06DRK@Hk;^)8{!d*Mg6u?~I31#77x*&mq1~>nyHq zh^Dw3@H6!hVn2<%FKtR3jNYrhi;Z<_1@2N^a(xcEq0Z5-^>gI#Lx&%^xfgTa2o`-J_a4YOH z>ECQ$zBOJyawfd~6ZHHEdR~B@7e=7x1?YJJdj14Ge;SRRw}yA}Oz?gMyk7zD1K@pN z1iTM`_W|&J1-xH5yLhiU6TJTn-hT$~m%;nx5%7K)yk7?IKZEz5&o15v&IIpX@a_fg z=fL~95%7Kvyq^Q_Uhrm4>}=W+;^Vh&0}q4uVeoz(yk8#y@7KZmb?`n6-iOaF-Zz{H z-u>X+58emC```$89|Z4%;N1`2{bv{N^qJuONAUh5cs~!`&yRrj^WgnFc>fW+|9E!s zUT`LO9|G?~;5`7|10&!)0Nw-OeF(e{on5@wo(bMBf%i+`{UUh3I0D`;g7=Hy{StV; zbawIHc_w)82k-shy$`(ijez$)@ZJaB`@wtv*~Pp1Oz=Ji-p9cED0m+o0q>*WeH6Tp zf%mbqi}&s`!MhK<`@nlIc<&tn@4eu?7rgtxo4ei4rv2uOgST$K_ki~v@ZJsHyGOu# zH+b&`?>*qX=j3?T%pxr=p}t&G_ZQ4-Hjm9mxiU;U;{DI3Y%Nx7Za zU;Wmd>69C`lOx>)Y-Y&!N2KxF!pD(gYL7V`8MDY(CUFmI@yv9NZ-w|9;IDWiV;5@& z-|d;`ZYROJqn@}eEwss88viStJ(Qng5TqG z&cV<+Z+Ts<$(K3z&VBo|&V7t&M5e2&IM1|C_Nr^{j!N1!X_tO^tVc5*XWh-?9dgFU z>9t!Ux+3i^qTMC5yGApfNO5*ZoOYXNx1M%uPru!%v^!neMMicoC&hXsp+)JyEb=3% z4stubT%2mZ*vtH}j*M~0OVBTUR^qsfEl2Jb8T-&TRoOA6j0xTN6xJ)u(cF2QsW6`$ zk6N$M!ybc(@Lun{`E}+`ABETaO|}?w@;8&e8velBna*Dwx)qrROrMhL|5^O!fj>0N zn*;t6G*@U)ydB^Sl_K41gNFSP{3FTCV*I(ZV?)jnFV} z3bfEC^P%kn*U}fuG@(KI#QR1_bVZMfu6(RW7u}G(2(pezX!CkZhHjA6Z+Fl_Qa#EPe%YeQ6 zVxP=2uum!4T|>KFwA(?ui?Ab0up>>_k@)G`k(_<1rCn?hwgkJEvnN@-jUpGFH)Hda z-3jDe*_rrX*v?#wY$Mn6mm%A2nsM2kntRzTC*?z-jCc0+`|>UJKkn;H)^0g9$UQoo zldV9n?a0Re37H?kzM{{{KFtes8hSsl47zWDZgl%3{^`x=9-Y>7qo7L){SRG>shgjk}Iu4KE&pW?a9f;{?q2y*|9lGh>23fL>hI9u3;Y~{*!aZqR(^gnCvII^;S*! zz_w-h^=pX>mub=c>}R=lndV&!tcnq_dy*fYwNLWFe<6E!ExLd{%tP1bqZ9Mdfe-9J z7dD~`Z71c`=z2dduqSh9cLME30^9#4@s6^I#5*U*J$(9$#B6h*0XpX00u9$fLmRx= z2yd3bn>){dH&bXAp3H+M#IeFdbvB#G3O+;51{&RFZar;YoE;m`kL;tDJJ3(jQ_4(DRl4(ulV{y26Sn|#{-BWI7} zw2KX9{Oj9eZ1ZFE`{R|gORRaieo5KlD%Mt+tnWU(G49#vR}=nM!hd)!yq7+BjJ|lB zK0(h;o1R?m;Vkn%*RN-p|3SYh`>*sXb=vy%7IF*R;2>-MT|Fq+z^8e<(`&!z)lXh>R-6^z- zAHNKrbs0YEBzkp1yTko@Fpjn(5&HKpk&BrV#3qq|K4|^G1n8T0(m2k~+3aG^UaKF+ zseFd`WRVeKxooaL@&-e4HFuu2-#$AsG7nnMVqYpchvlSX9Ge@XEc*-5c_(x(LuQH3 zBu<;Zi$2{?pYA|rx1PStN?uBh+vl8pSyB3cteg<%9{Qi)ow9dgRZF||w2SVkIZu;zD`~eMzGDC1vaRblyLy=GFZ1l^;Y{>!)-&{H-)Z;f z+Y_5@Bxc!4%tHJ^j_G84KOxS}#Vk{ZS%_Qa5!1feTYcCV$~TWEI~?cPbdb7*%SI)O|x{ygn=gR!R@k1#fS)E}ov+>PJ0 zBNO1=>5V_nj+|p#hs2iH^v6=j`6A@J=?vt&2f67(9!>NI+b!|sV;SVJ19@C?Qr?X& z=S{S`h;~!R`4ZZ#r`9?Dcb2FI#5TCl{FC@pvaN}0wZ5Q&k19^++@SX(_P3&1{vu? zMtYEuN@ThgnKqH>{*%&sg6!pTmrH0jb@ps*&UV+*Zl&nT=r&f#DYhc87hbCVv}N?{ z*oz);?Gs!By(U(BEDmpL;cev^*o!r^+d;b-`mBpSTY_Gv(CbC$b<^qhS&p}H+O4JC zdfJ7@r!p1|Y(k#bO>fTYRTg&__`;((7 zXst~RvIkk#L=LjgSbiUubF}zU*j0rJlVDnOLouT_2d;*Juz9=bFwdN`2MTHb)h4!X?s&%Rj?=RZQ~Vp=*0g3Fa7{8 z{xAZso~8a->Yt_l*-?1)hk#d*{_v(WfWc=2zW)QctxprMX7it^};Ku7hXxd@an+X=au$$ z>fmm8u^V2nW<9fe1YYf-eh>9~sNXXRuXYE#qEx)1RJ@{8ypnq1mDCHbq+WQn`|R^7 z_IAqE>+s@rc=0;Cczpz39j5*;_3ZD;93F*NuLr!MRJ@{8yrNXRl6v8l)C;eqUU>ET z+2>XI?c~+-@Zx!R!QQIO^CR%;kJSH>diG{z{x}M+o)36Msdz=HctxprCH2B9sTW>J zz3}S!v(KvqZzrz?;KcyEU_V!8U<6*VPdk2ydiH~54voUAfq++(idU41SCooZQZKxc zdf}DS3$F&wKCd_{;O&bUj=+l}@Pd8fnIj|c>J94Opq_o^nKwq^)scW#l!{lBidU41 zS5hy$l6v8l)C;eUoPA!cdOLabGQ4;hUa)^R^YRG1`ZM)^rk?%3nLm%htCs^_Q7T?h zDqc}4UP-<1O6rAIQZKxE`Rw!RhPRVf2jRs*c)=dl%)t?O)lYpt_3VMo^pCf%<3a?%bctxprMX7j2sdy#z!Yip4UP-<1>eaK)tKDxWulB-=z3_rPvYEXj z@T!mcKI++Ho9P>cS9=3qQ7T?hDqc}4UP-<1O6rAIQZKyPd-i!%{dV$-J2B%&;RXAk zGe<|@)iLUiQO`c=%&}2;bu{1=rQ#K(;uWRhmDCHbq+WO>^}?&8r_QUo{663Zf_=c8 z!E<8%O7=*Slle~1sCy(0_DFj7lhfin)7&~DS#ws+pR83ZSd*pp@&@PXc;?#NURYQ5 z5U(`H8FeF^5p=&bZfJgO=pJHYyUAHUQ6iYmDBj>40xt%**)NkE+SpC+WAMQKu)-~g|p8;o`Je!o#m+Ch>ld_w< zoRkgZsDAVPXViI2r?My7R_E#r-M_5(+{)e4Bk_5aHU4CL_7*mB_FR?Pv(3GE zs?X)z+QeP^6yM$KKI{lvt+74})fv#CbJiJHnJn;OnyZ(>XyO#?UWICFXb|LuYSXODd)j^De0>X>NmVszu~=uT`1QFrP- z$GKC@oY%>n31Q^=UC1?OU?m3RF7`*bKQH}GcUpL&z2CGz@|*o__W0k9(=31KYL4M9Z>Udj>l%d6f2ACPvL3`dRkRZ{zHS^%nLz%(;AO zKBKdR`J0ZGty`TB2W%=;gfF#&syoL7q?e& z&Rvzvu|&;UUCzrk8Z*p+rnpx-uDkP?yPBWU-T8gYulDQ4Wf|SQtS2{j<$i$mOP=BH zolE>9bEI8*=dCtyYuHPEuh#k8?L4cc9vJrf%lQF8r>a%y0QjH}0$W+o&Jw>JwNAW=x<%;1BEg3{`{LC3v?;nOQ|QPd`lw0s zTEfSsmG$puGycd_xpkQd;`50?ViJqU*&pH$obOrq2mT)9@B931;O}Anekk+&mFR(g z#vihE2)*Fk#%9g~{yJy=PAbMWbKY}91lt_JHe+iz_p+v$v!1`sdC==P>v^-OZ1l*w z6H>Z^9f_LEXQDq@-Lb7|dUm14e@NK%3wX9>2 zvL1S*jPqS7o3JfXF2cS@xr8+?n?r6qCGS(Nk@rLHhp`c{E_4#zoY%wJgg(|L^dpxh zy2hM6I%a$boBW};ZhW{&cQ0S08&@pR-78YMapfA_xT-^UujDcvy^>Fq|7?u6rdd$^u^ zS^BucqepkFjNWc7(VWO4tv%Ajog0;Udy%O-#r;})aUbVmS8DAg{W@{E;gojK@6ATL zD!UD*On&R(c2zcnoiVCD+^)**uv4z;&308bn9f*LZ?;onyZ1Vi_YfOAMU2o*tnfK_ zcq9D08s476{It&bx~~vh?BQ&1VvMP;7{m1O1DwGf5`A>vr5no6Olc0eQyN0XRGoY2 zyLESRGmSLpuA}P)_gTBMnlDf^#>Q4|>a=$4`$x*Zbzjw9e(@boYDnHKY9r z&23+<89yx2-5<`^jUPQhytiEMOx%ONB7REra)!{W{N0X^`;?YgE_WmO_Jg>y(s-yy z+qxWouzdO5PW3su|Ns0?JCl*W8XX&;bB{rBiLC37E;8{SeZ*V%U%;e1JS(7+VU!CF0x0{W&*gGXY`lP|w89l@{tqU76o)(+L zINGS=zJ$s0jQbO?S58fL7`siZBhQFS>%#Z}>{;zxe8Rf0GZUS)R!;;LJ1gh+a<`9_ z3;WV7>Y2LxCU(D5wmOV1MzGBh7g@kIa|UxaF>tfxPH(WV z%@(p#`<0s};wfX+l^pLII67vP&U+*W2Uu;XN`+C&b-pCy^^KJD^`-q$q{r33Y zIQnAx`*;{9OAg?z_+L3UeuAM96F>foJf5xj9L0C6GS6xq{j9PQtBmz7!MdA_Is;hF z6E-%0--ftuY&3Pblht@Iqqz^_FTO{7gPeBW{2P3yj1?Bj_<=v}WVyhyj7IYuo3qj6 zZg>xWow$i{H>Jm!&4~-134>#)TgMs09j0dQx`exH`gqo=c>_y{K_6AmqSij*PT~xn zMHlk^QpU-e6(awG%(DJ7ccz)d{(cB<=G?X5UW9Bsk%JN0oI{MjeJ-u&6lDeee;u)buK8!E$3N}V@EiLeaNI%Fs&J@Q z_Y3?lkxl3uaa^M4EED{)bn9cPTIjTRj*cl_CToRvqH}yl#)Buc<@3_0ETlEp zm*K*`ETHlHJdK^=qiVxd{yIJxgKe>VTacb7xOq(`xeGZzUC#5)sMXFzXoLe|U z&mT964hi0g&u73>oW3&;+a@}|eKl>1)x8+kCW=h%_W66gbJ2b3&cn_{b1o2Z6Sm2d;LquDXdY?am0EYPXieBV`xyfLoGj$206spLD9J~WvPf~RfP2DrxFRIjpf=9!v4;k7}|lz;p) zJR6c1%i(C5*z~O4$MZN|U~!)!_HDGh#Jy$-dJ@Ro7Jt1Zx}*ABt((lKzE?8hud57X zB^AgDGUKnul<|x&BiOaPjF5}S$w;hT><+d#TwrgCv%C?$a4#2efY=(bIVa>ea(N^8 zV5mMrexfPH)zbF|E#Ed5za>{Dc^|K-U)6KpjyA{Cl46sEM{WkY z^v{*tsrf!F@mNR5uB=pa%H3~4Of!(>TeSEgt+Pe$?pQ7IAIQ{*{5!$U4wrl7qr)aL zDtDuDuW{H!_DzL9c>~F1Yu+;O`nL(h))wFF$A6i+Q$wz!jvPnz7JhHb+4QUo`#vwV zY^(URR&%A4_A>Juo_Ryqwm!$bAQF!ye^=<=;4ODph|THN)O#s&-5kdIcEnoCT_(gA z&D^u5-rFKRB>OGOod0M1fDN0ZGk(y;ei_qDa%3s!!>{}AzK~cE4k_Ooj=v)J3_CT* z4E3I}Z`_SBTkKnGh1bIUO7|6Oz26BR_2U9{-^ev)0<-FCq_>UaI=q-xuXaMbT`Z6vt zs4v;OkJgt%c}3}-S}QJmf!!zP+sZi}8{%)|qUhxi7%u*oGs&8|V$QWSJ)Xt0A|ojIFe>fiV|< zZk8@>c(tZFUkiVbJ$5-;q+H^puCsxwlyk9ouhPG#7MgL^l6t274bRk>Sv*sEGB_7h z-piiFGd+Bdy)vf{dN21?;K{Kl9Pno)&Y5Kh4z|@QxdkPY&>Fu(eEKg<3di|~JS<}_ zx;SWybK>to7V#58{7<7_k>J^eL!N1;dbO=a@NAY5^sVq-w%ME1YNB^c<_9?QjAm*~y%c^Q1@r=k zHnV7dDs4H#<{5|a>bIv}a~tPkUAM>HiT@ToQ^k4e%$bjaGu_=ePsrIpobii4_v0RX zFC|Au?6A-)#A#L?#e64QuaNef1HT07i7v(2&-jQbQ zcg<$Y9WyUstSK4hCQ~VI&EhhD$z1pVzDn)y^OvL|Zdoenb*6&z|2m%=IR8)SvEcka z-Y)|#!uzF%y&vIz@%JOa`GH$XIS+~R8W)!`z82>-TCPS-0^f7vsi?Q6P@c*QCfS8xuD>;8TgH3XfO_611${Cf~d6L`oYFp4b zO`4Nl!ME^ZIaiG_I%*7wj!>~ohfn_}1$BDfNqt zBlA;blGj#e_E}w8retL#v-lF-Zey&`nVI%x_>|fk^kr{V^q`%{kv~hCGqx^gygILT zzthawxw%w6u`1&JTcXUpB@r1q#*%wgKG3h_%wjiXrF`_5#7|BQV@S^0FUh6E_sT?X zG%{`9Gcwkr(1CMy5G8ieoxcg){B{+Yl8Nz)JK?F#+u&Ldu=m0e!kNt zc^}@(%2~nMKX{WEcjm0&N#+NjBk`kC1N~^zfF?n{P5vK3mrvwfXrp4pkWY3L_(Yw< zsCXy)VHj^5(caKvj1RO~xr(dKe6w7;na7oD3v;@wG`}7AR+F=UOQ_)}p)NlSJvq-V zeL~T59?6eH$d5$Gk4RqA6kZMayAYpslJ`2-Nw=I!-s@a=e0jC|}e}HTc$Z z#6WsN_!k{~yyS=YKN;weu3g+aA-tCg?&WrJ??ik7;Af9XxwsatQxt?tOuK<=`|jgntit`l?r}pGn^T zOs`Hq%Z}-3r}`0e(t3E6`nd-7A*k&JrU{sCV4BWyYIt79b86${d=$Pxj<}-^ILoP# zYZJL+xwcqNom_P}lU(jw%$afRCYP-4%bDbL*tN65eoPGT(q0FK`nZmI-bGKzwTZdy zjws)h|G74ay_5g3eI4O^>e3kRVH4%P&iS+4ujxoQ)lG7~HZsx?2Ob^K5no=mb_(tO zP0;SEQ^N81AI`9Aj^qBk;Qsr^h4}o*x0r)No>d&9>_XQ|#4Qczp%?9vk_J0v5+fzP z*?W5up8k{NH9uz=v){G6+54@cJYC&!g3jm~tQSfCx@!cr+5`!1f$rBYn0J{X(HNZYy9JWs33+!BA z=L36FaoDuN7uXcA4ZzMU4qKyes0D{waHs``+M@W@%lMuT>|9{y1A9|(*ogu=7T6T9 z4ZzMU4qGR%e@ZiEX~rzgn5B#2kXAGXb_uX+fPK0+Y>oPEg6}5yZi4TUqc1{>`VMUA zgTO8Ub`7vk7l)lFu;&9i7ufm0-c%g6PGH9Zn*z20*qOy)(*paaIQYiFHx9n>qWIP* ze1Tm8>>6O7E)H9*@C9}*u=9bvsW@z-q8qR&U>ks)Ssb=Ojc*C~mVj>w_?8sKx4z?K z#uwNnz^(!I>Ef^x1@?Sk=K?z)*qe&O)(PxbU{k<006VidY+7Ldlmy=-_$I+OSrp$I zg)gv6fL#OZ)5T${6~4gE1$I8LHx-9%RQv#J3fKl3cjU9@vZNe z$@l`h1lTpeK3yDkqQIUH>|9{y1A9|(*gAn73v3G524H6vhfNFYpHkqP0^bz)ri$WQ zqwocG39xH`eY!YowZa$Jxxmf`_NL;njfx+DO##~g?9Ae@4FdaIE%Ut`Myz9Wb4!r9W9n*%6uOVx|E&+B8uum6gJ}Mx^Cv4QfX&mcSPo$sRtaxcYX)`h)W*$9dwQOrl$ERiQDEzcrSp9 zD!AW6e}VfwZD@9>Mji^d=08o~J5@&WmOiifsXk-&AN#!7@AMTN&xVe(jpoI`ejnHe zfL&c2wq9V*0QMAM&ja?#;;<71wglLH2aVas06V!jY@NVvIS9VM{_!CA9xRG)THy=q z_kn!?*ww{hYZSh~o&xN7z+PD#wp!r}>^}6{F~CkP4%^uAHNRBG`rS$7*UhV5dFUfQ z1)ZSPU^?}VvtCoVL1-g%VZF|FU;XAi@`qQwa_swliAIj?KNfh*PZRgS8{~+{Njf#t ziS?#SKImM7oQ{`nI@g$_p9|bM)XSVhKIj}{vVM*?x%->c%Y4&oX!@oxMgOKZrTZJU zuAis!Ll>%g%Abe%v`@?t7wV$O4@sO#er>I8tPb;Q@e~~@?ICy&x@s>N6qQdPgNI0KO^)r zLO&%B7Ssqyj;>@8a#AAmcL_fUEtc%>vs0xJyY%15`6b9{u*Pcv`OQE-zirf(l7klc z`FC;wa=lIEw~X2^qtoU8Qt}8LthqR)&-vL?ea^#AQL6xLezKZp-K@!wt4^Lzu1&1v zlWPlW^;T>C;*yB0Ik8JqTJPohQ~^-GyI=pYX=h$o}{JXsO)I<`q?slR_w@Zbex}w5QcIg4;@t7Y>oqq5L{M5s|6>__Vd7v|pUAZpi zJ96CuKgqQO{MTRyPGYU@&-@fQC_Dd4xjCu1c+nP7ey>xmla}9cC(W4PJn@Fqt zy_OiHU+AyQ#RvLjn#}7$PxK2o$^8J&s{|+C#5b$HoBsFb)h+sO(SM8nTlC+g|0ex6 z(W9m}x!a)s2K_hazd_%lqC@37YVJ6x>vl;Kxz3!PU;JoLo0RIg&|i`eofGq|W^iNf zN|PFw?4ONMuSUF4-4W-WRho16lbSKAga2D1M#V)Duc9g9_}stiNzGZhS#$1u3H-B4 zXJy)$3((eS%e7A0s^$Kx$k~N@AZOW!?8GA0Tc$qfy=C%;YW+boGEGfPzO9YjfdU|ctM*ZyfEYAv!RXkrS%qb*9)wN+2b*?Y=@esyfozB=iuMt;m_mY z&*S0W4E&pce>3oJ2L8>!ztea=jpx(g-)ZQfX~xPnnFEZjUvL98V+$6#A8nL5j+EFB zn|V`bVz-t_tYi)a9x2yKLVg}JA2o!ZO{I7H=TG|i`HPC5(Fa$RXCtB)s9jLs_pm?I z4o5N;yhJSEw_Dh-X|e{jR{4Wg3Rz9TKc&cqnh*TGm)=YsIm!Co_PAF+Ct*xZCc^nF zYC_s0%wyrVwm9KDmPudI=n~0^bL~cc<*G|goNE(4f_g4Fars~J+I7H7UYl#T z;!kjGlKi$j7uze((d+6t>%AnG-f~Om?bU8k`#b(ics3>dxZ- zX_N7J>X};@4Gs=CB*XSEx1%piF`Da`V`0w#)FYjMDBB=s?7fLrcc1juHYRH@%>w)d3>WcN^f*ZI~tv_ zYa4^ye>P>em4rN?o#))LxYTHFId1tat5Zhv(&HRYt{ulM=W4etP6cC7Xh-{|T_W=X z$#dzO)tg%NO{4iG=Eyed#_YFsZ}#5eb7VCgBaP=nS? zSRA&oV}#K>2G}I9^}wE79JWDVUxI#{q2JpY_!gfds~6b&fo%tN6|hehhn*;}=K?zi z*eig&u{dm#i>tr_SNt8;8{&sk+VQIwRP@8l!ej z#6z|vmUJ4iyA2mv#2Lg6n~6KyMK;kf=ni~1bi_HL*WHSBCwr6U;2R_jqjs|aAHu`! ztdWrG9GM&Anq)17`rkrM`BqZq!nkh6=F7F+gy*@=k+o*z9@<%>nv4eP7&hYr$a;o$ z`~hk`k{ykV8#%){14qKz}1r}X7`wC!hEDl=@Y;BS?*d4_2?Xt$2YmznC9aa2~?8|jdoH645 zX4Xy0bq?#W<^E>$1J_B(gq^|{Ftg+X5*G^{?Rk&ty;WA7J@y=}cUG!SbhpqJU4}n- zjZSUX*9LsTEVdyP`bgP_l#evVI`b;6yw;dBhxHZEdBSFVop!^UxY;x&wwvCBIVLnq zcuvwZoH>?Ple9uQeY$=JbOJWX7}YaICl?>1fKKG(u|u=pjzg#7Ir+4V{r$kU1G@^? zCyT=dbOLq`uvY+kV{zDkPOM#3bb?P6omktd=p;NYbc%&^l6hF66Kg6JorL$Ryfk#K zdlkF*KC+?X;|_-&XEASk5qX|#B5tdBf-|uN`w0EEt`Pbqox1Uc{ovVJ?-$9JPiluR zpkewNgPOsw7onf0YFoxyXG6b)F%kMrNE%+vW@y)Lcn)-fX5MjgEaSMOd~)#|a=K$GGE@R>n16Vi`G>v5=O1bW_I_a7fn5dc zlf_}H1@>HE=Ky;Jus0TmZ4{c10X7M2J+LPihi&*@B5%opt~?q&vD@gx7toKd$~txY z8GM|^rAq$r33XRXREV6qBdz%&r*1YiA304>&v`g)Us3syOZ*bzmvZat#1B^n^{JZX z)gyzG=Mayyn?}QCXqkk5a}vfB!_uRR*PvpE{TCS$?3;QLkb4*a=BeJketOnoD)8<|7hNV|cb zXkeq#;wMsPYB;Jp(oW+=wNArXwaCx}C%tq6{?-Ji`kDz&eM=o{lO_!K zTDe&0&%9u#sx@zrKXuiPufAiW2eDPt{gSLk-;?lm(k35D9nx>@c`I}m*|0x%w&tEz zdNwii^8<23p2EWKRb$=t6=LJB+vHKmwf#nPtG~FFx-k{ICHzusqWMvu-%dQfXcI9t zelzdd3krU7*Rw`vLTWFj8l9VnDdoBd-&3xq(|`D|GXXE)bFF!Re9@KUi>{P>(Q#qE z=(sRnG&Rf@O%3x!Qw#YbJC!=8Kdu!<-`JzH!StA;^X8EeGFMlw2JjJdU>2CJ&X#uxnq?q4N9L!<}E zml}|BSua*x&a;b@oQppraxT7#$hr6-BIn{`h@9g;I1P7`$Gez3-o?S5_)qf;l>?nY;#T=nCe`W5IHll);I=e_Obzx2ja|8hh*A3?rPG<~1 z0*#G29Xz_hjd_C_V$-x*qmd!!mGQ`97?bpjH>vx0qrT;Ma$d(9ll9}h$=%b)c}?>g znx+|3^l9FdZdqS(f|@(Xs{F`_DnFv~%;*<&FMCpO5BU*4Gl2W6emK#&>Rwmy?x3|Q z*ayu^lQUt?K-TWqW?O<>5Axrt2f3fzx7B(+(=4ZMH|nuQi!~pN->itL=?`@Ihe6G$ zWFWlNiTj7d6VcVRlKi)PtKUe!y->9?h0@ERp+0WJ*srGPgZS zUiUW5Z7(g8`3-za*5S~f+YZp5)?x1LrQ`ux@fFtf`K%vuU%3STr7d=(_2IH!*d22Z zwTY&t)@uw}>-7ffHMq}Q7Wqh7H!tf2?^o*u^<@vM^@2}(wHx-hcU!DmxnOs(ZwO59 zE!NIV+jaOFZDzi$lkd%wH8ku$-MWXp?6PXTpQ3s8x8(f--U#T>rry8H+7G?ixAw~# z>p!V<{|ck0^&?lSW$c@akA20wQlrykzj9f-H0wQMW$Sx(+lKel z*ms(LK5XpU%s&TX-?hT%F*SE&E$g3hB}Km>Fez|IHYbiqf94w8ig~=>${7xV!-hS^ zN^`H>HfwKyLo2d3i2nClrrp-MH>CfAz`x<%$=vCVhjy^$?Y(7PB0JeD1h?Lb+C8Ed zihWz&g$Lfvv`vREtY|-9+-|+iIJ_~GFS;Is$KIyxJwY4V#p-><7cajF-Jwqla^BRx zP8c1DAFlL*S}zQJKlPe3MQhVc`7#%bZ2AdgFxeIHljP8mN56HX=C-ybGmB3!G9}-} z7hBA_f)e&FV|`g_F8U>>2Rba<=`Y^L9OiQoo}1Kn$odaWY6n>3MNYS%>$-lzv%cQs zyaUYp^L#GzM%I3#79TcThYJ7iQ}=JR_R4*E7oOka)t(`;w9}|9K_;4!iEKfC{s_8! z%-BR2n+Rir&!89G6O!>!YdW|dRiAkx2Mf%Uj0^J^jLlTWMr0s2sNY@pDE-Pj2R0yS zG%xDwy?lC~8=r2t<<0C@C+l9(wZS|KePF%xtu4c0m+yK^z)C*xC8 zXD}9O?(DPh4mKyy6=mj_0shg37uGDo8~AMSRAD_`U=MGRxkn{~wP(<`#o)O`tzlHW zc57=zf!CtkRIBQ*?3zoaCh)-jGnrW;BUv^@vBTakwvI7)|9W}ftKAaoU0{7+TZ?1xF1Eacm=hgSdxk;(kohfY zt+w>9_pa6tkgGUtCM9kH=fq)cCR0aVJE_|2`cBwp9DaG5Hd(*;@>}4LaBqiCt;N{5 zL1V7o$zAEyE>0q6ZyL2{Bm;VgOdb2ir2vF> z!L}*lM!4UJe!i9U)SVj!*08EJvgfLCJaQYKs`f;3UD9_$<_9D9uvSRZ*qbF=SfiL> zjiP@}8#+V#95lzCY_2lunt^XahLK;9(|TmNk>Bj0PcA zg1N?tZrMpC`Q+(FzWr?MP5Ur4#+{po87q_JcH5ltz?RLaL`GO=J*U#^Y{q{o@B=zH z7~eVG>SUFhLyxa+uX0n=e=I&D7&}=XMm>ldVNXZoG#I-rhm2irwu~Kf`BiF8bcy)9 zg*MR1!T8SdIyYDK-fQg;y#$Zq)38SU77N>8qSLj{v0oT|a_$q?N8=8ew zoP1f->kR$-&d|SC{p^}9Yv4mY`zw5#z`ySd{rh0NGw@&F-**o3?}PWJ!Ry!s#zu5K zV~o~IT|@F+W}ri?O%*nq<~lRAiTQX3USeUD-Oj4xTE6orLjlBNqm=x;)CkMvSXpOmia?x#H~nBGntcpv4dySJE~_VW_5X< zN!01?cQ%c4lL^zEl^8cP=f}Kxz$3%R4I=AO!^FL*63^zotme{@AGuF_kIrC?tL)`? zQdaLBlVGiDaNk=si~Yk*YIer6wzFFK2kzJ>k$u`MD=E)xyTWk)eiL|REw`0>W=VN| zI{0xvvjF||ohPc?`J2!`v~_7c`{Kx4+cwjFVzicj;tI95w_6sahFD7o4E>E~=wI&* zo7nqBd=S=mmaBO3A&Kif=FSV>=`Gu~*VuTro{v%|nA=E9G)f!t-Eq+fI*5H7$dg95 zB>hFBHDlwRK5t_}ll{l-irMUUvyDB52j0&w`nKMC@QMS>Q6tN`Zir8mX1#UI3Uuj) zPt+*|{h;=_v8*f9UP243pRgYwv9PKi`l^im45`70T9=CsQ+-s=a^D#A?Arm&M7PR& zUGwBwKtFAYf+GfGP4#?7>RyFj)XO@oArIPSuReS=d^`0&H7oysz7KKGzVw;i$ItSu zo(BiL{{?xUzHW8uhSxjk7V?bb8mq}QHcp%5G&D_Ot?eXd;zg6lp-!?FVb50fDE)}< z$eP-<6PHyh|M6AtbpEI2$IU$oj|}Jc(qVS=>eRBSs-EsbwP*f=kJ3M>V}b@XCViA# zWfwJSmxaiPIO!`of6J z&*B&Je**e%qRplJabIjHez8Hm)5C8T|5^NY8GqpyhdLLJT4skBO6HcGI&1>{^(~$C z?}a|+e(Rl~k9F@p!wUGhh3_=cC+S=Ny8e3XP`#IKsz*Q9ldqa&)VE9`7Mn!AY7%y9 zB4a;U)n!SIXM%AnA%+OYLaiYW#&53u@xEcbsY}=o@6fT*&M>IsbmNbjnYOdpANe}Q z^B!s*29HbEY0@9%Hyp7qT|Lqlzr8)xd)FCzus7r#@aK>>rE4^i+pe4Ghl;a;`ZVqM zfQPeI$U{4wM)vD&V88Bq_UoQFKH=0&OE88Bat5sXyomj~uVId`g}qvrvTth#^O0*~ zHoiwb`b2j9x>c+EwsouW>z;`Cf1Jl&C9|#dmX>AThCcW0t<}g@G_&Zb2>P*_cbPAt z&aS^EQszbqdQ$rZb5@7wNo}9tDDtUdC#|berNV(D`_UrdkwWaFvU9_8EAD8Osf z!#njnZ`gd0`L8}>O8dd^`|v$_QPEgC*8khvh}$>!F~`~GzqEwCE&1EpDm6u#e@-hr zxMjbO?DMV>ypx^0+*qvJ^Ok6iv0Ag|rPwQbwdO=7vv>9byvu!^`&+rMabG)+J+oH> zf1Bo50$<8r+T1r;Z*FZ7dx>r6$ERYsMeH@NRbV6b*(R`yBaV5BvD|nd0$$Q)#D9_d zkq78|6MJ<7M`?qK^Giyiy+15@8y-iWmxMaFg|Q-+TXP-b&i;SZ-3jC);lU%wM*{hX zBOlapHN}ySIPb;`_{C$-cVmhk^QLsm-n&Va&sFwM`$NckpP0`usBKd=I>~;okK$u@ z3g11N%~(Ci-6-mOE%u6IPXyUlHbzeT;n%Tw+r*BQ7vSBp+F=Uz;puuNc~X;ajnN8w zQs*yz0$Isv?rZnpCvx3jmV0y9lWj1MvR+;JRDnIei+QawN1I1Z4L)KIHK*<(-MxKM z%#1&_yavSNN+>Cqvlee zQ?M_FqEqgdicWmP7oSqy>*@|^_Xf77%1O6Wp`WX;J)^Nbl}94jk^Cj>ld-`1ii7`Sq?e%Yp95d~WPCKS0kS8oFLR&4zI64O z=sF{RVy%&1!2SyhYmH2lzlE=5GqK-gotlcm{<~_|NYB;0h7{vA9~pg>_TQzy|1SMa(ccvPEhR36XV;cG^(`r9;?h$3Oddur zqwP}KPSNL7(012cuU;?nrZkl~)#o#x(?TuR3i17**^``$u$cWXdf316N9^Is_4Q81 z_-X2YENU6283oy~Ee)RnAD~O+WG*0fJ>HKZui{JKD`nQz(~l{tU*05L&$pe7&suL} z%*V4Cb450@?m10e+n&oh53gj+!vbvm3)uM=MvBjZeuZAb-)jwUmE0*~0DqG=MgF6i z>3l1iHsq`s_5CQ{kJ4uAi`jgud>@+0wQY0OtLvr~^i}*(&bz3&mv63w=kZe(&}QQc zntvO)E&K{UndDhZMB1^FDQMjivCR_UG3J)njFV~?wsmY{D+;1{X0EP-Z8XojtRAsO<^ zG^0*ukKCq`%=9`#WmS86UQ6$ ziMjc+sDJ1GnrRmOGHJ`AEo`_BzAu9+2=5siU zLH4RNq@KREX_QfqouANxE@@&vyv|qn<|y$U0-dS7D))^E`Y3Yo{{>%<;{Q>M+bHOd zEm;YVv7h+E)K8QD7C!Zed8A&&`3X7+TjN!CR~hI$FWp3qoL+_PtAyVwv3-?{NhP+g z0^3*NH8fRV`zpLC-Lg;hXt90$F^R+t3)(Iph)J{sfu7A_H`p_|TE!_>ep(wTK9Klh zvgX8C-7IrE$j$egT;&)Cx6{wf$Vieti?5Z?yp1K; z)no8Iu&eAlD`%7WB{8jc-e9b>v-|B7_9GlW z70WU9pO_P1{0tQ%ZDzk-Xe_o{`5Zqc&R$?fgLq>T`)GA$-H}O&wPTs-XX@lSqr@!4 z4?M#c&LoMq=dY@AlhjRoFdrc{a2;nYf6v)s&w>?!dhtTyHm{nJ9F>db8jd&kK(2!M!jSFv7ib zb5ymnJsv)^RL#C(tKzn$RXgR>amf7< ztJv2$H`aJ`7Hd0^Tlj;0H(ArSE)~{};4?2$yc5=r@IQVs`>5ed!as$%B(2Xoqe(ZY z$@1o$#eLc*4<~EP0>15f&AqiG<64}4$ayUpTf%XN~hh2VOU zwwx=rL>HghNux)G_V4|{{p)>DofXG7h`srKe}DUN=-R5rH@YgSeE+OkPqm!92m4u) zhw5x4m&F-38`GNcEPlM!M6A{gE-!$`tKcynJiv!}y`gyI-W=Tb-XAA+EZ1g%gDJMf zz_u9JmZEFp&}W}GpC>%z_26ekpAYod+$T)i>LR}A#GXH|xp#JsFdl7XA4YQ1kwl6$ zZincq0v)=Z5&c6=KR!p8Qwa2xu6Wvdg}hNG-`=6Q_jWQL2M?}nrN8LlSERl|8xL>B z`^RhLEXHF6V-w_Acoq{J6fP?^@Sd*pioJmMFBI9+PD2lnBS9vbMVC}lFR+d?#aK&M zlg7`zTlm6|c}bgiUv!e#uHal7ZMsv({R8^qYE*k^{C*KD5cTi8`} z-7;)9d6fHt93;6f=CBl>sr|DrRQxz&l;jhMRizKSx9rX_^3ExRcY33V-GS~Trs?Og z+&|-o>x_F=?&p$*30_V)r|GJavxf|W7n05KJl#!W3IMt zB044JM&w!@bH}YqEr(wvU#;W-y4z9Sy}gGRhIjAkp?*hn81I&?ORIO)m3K$3O9t<1 z#~O-XXdC=|c|WqP+?V&qY#YhBF?@6TZl7~w?AV!_yJP!En=|?BuPB@M!ND5#quA1ANDNeYelK5_XjD?Cz;xO+UGmwx;!+e5b9mLyaA9d}owz zjg)>7x5zaYl{~R;ef)3IKb5OezDNzkMomVcQk$munjWJa4g7PCmqMA^5Qmmy9>< z{;e8@*eW_j$GB4?0ASANHuyI8^CGcq^ky9xuzu-oVYsp2eD~ zT72Q2etDF>L)#0D9_Xp?cs%HXmb*aiN!^vPwO05I+YCMFm!qL0>rC_|fA#!Pzsd9S zjZVh6vyJuzW<&5CIG$Ms@v8b3dZGVY^FD5}zs^~H3jW3Lo4m*OoO;fi)Uw~`|K<_l zz@uK;?mAm=3wSrTPht%5nWeVJ-#SWLAKmc-cm`ij`TiH$wK5Lm=Y;m)C$v(!zaG6k zQS^4#R}J<7_ExlM{;1Id-#~5#zLPs|@OS#ZA>+a~9KHqqX9Q!Wsd(AFe%)9n)e-ki z@ln{jeg$+OZ-{JGxzC$nY^5y~T`O&?XSbRay&KGfL;Q8{SoWA&AMrP8J#3XVlJDK% zt$@a>dgxD1<{hXz)>&tuN8Lzrtesez@Ds%4W9CpxbRqd^RZm3x&|>A;4_fw$ceLwt z4_hWVLa%u#{(@XP@ELek(}vGW%r7}sVr!>Pt}WyMfV{X)F=$FEZd(_$@q1I{v;PGF+^Yom91Cj&}mO9nHPRxtvq8r#pfI! z_lMRvf8HgU|GJfOQfuR!4`fhl7hkSuEVXRf1e-li@QGF`ABaF<>^IfzlQ#PE$HtC@WL;V7)Xtq_N>I)zQ|1*`+&$k$ExpH=1}Cj zI`anCZ{>9D(_6EO4@oTmo-if%kT4hFE zi_C2>XQo5LwMnO@o3&qhlK3h~eM(Yv5pu{m7~M(ujAtF>f!4yWP5iGXjk@lHSJ%Qk z5cjKDGu+tCdW#oKd>rOKnj&_z+vJ=TYuVMi#n-#vXx3Rn);!)vce|IatHy5_=Zmi~ zX5Bb^U?Zf*0@^aj`!eQDQvcdd59lyf&fcOPGwRRl5t^3?&3*O@@V9pA%qc;Q*U~deeKlwLghrTsPj*M~JA$a9J2;ztfl`eulaerQ|d}~-sRUkD}{5Yyf=@f4504RngZs>0@eXJg|dp z-<2^SzB58!bdmB!HFWQeV~Nf01h%6HthP{Kv8nI+;^QaR)%fD$k62eHKAZSj*q0hb z$6KVfMd(P5E#N&f2Rtq+1{g|W)92H>F&M3x!r z4RY;`lx$EkjehVg_I=s$@~{0?a?i+gL7u(Y!z0G2<0Iaw(;~~w7trgkYRmC?{OFm? z3G%3q%7K}5znUgq4yHNZI#-byma=o@Dn1-tEM{`p%iCXI z9XSqO5XQj|60@#YfDbTR{DZjr>qGV;8j$b*R6YRb)E(0P@cuZsy_5V5GICdE-0Pf; zJzXF?9Pw5VqXgfN^#0b|yDY$4odpoUZG`{vHPrbv1Lj)h6S7!G2(mI`^vbP%A~(;A=t~_h3(i z`Y3qpYJEm5M{F@e&yy$go{eett>5i)-;7$BZ^m@{hAQH?xT($rU-39+NIil74qsMx zfD8S6Sm>SgsJ$VE!$(x{GCuSI@Kn5zdmSB(oIhr{_dkL!A@k?Nz1M#{%vrL6`hjS? z@NIclWJU4Aosw_JP7mPmJAqa0l`Ee77W#oaGX0PmsdDPMm^(!#z)Nxo0so6_n9(V| zecJ-xnijisOWbMU9sda~~hEPOOtZ#KgKh@WyQQLB?SKEE8-At?_^DyieW7O)^L4GIn_p4Wk->P#)mz;TuzHcF} zZaEhJ{&S)JWj(u&E^5-aOfs^TGc zDg7S8pHE32!JGXtsu?5vKWd^>y>4yO2y`^_$lW7Uy)Jvf1ZyGmF+*x~6%GhR0A2ebed%BCa2RbFQ_eaE zN9iZDr3S}QYYdPFp=}v*X-R!@6Zr}yD`y$_j8cnl)HUJb>a4ehCy^D}(BXm=_ zQTl2M-57t?_=YmW`@KJu^;IvU(?WVuN5*&+=s9zMp3>JL^!#z*JLr>0SS!nVzNQFu z^{m^_BZa!%0GI5wjQJk$I4n;mHpf`r#@WctO0I0nX3nrvbJ=Fzk87H@99{6m5Bu`B zM0DG5w7kdpD`gLB>wk9NX#e&f-?#ps@4L^wBc%AOwTE$$=GUQ=INxs$AjZNrhGjYKG=%Zoojtwz4{yW}%PwP!3 z_KLrlIq7AMJmlWY>A%zSn|A7%wAStmR|Y(c3Vj4ew;J8|V%A^Lh9JK5erK z^hAdgwI3})PsQt^e~R=&cxW&UjekNXJ`&K)y?%GKfo{x4nGf6uuf(gccbdWcFS=~I z>0Y~gM8?8FX$FU=b->>#Im(AMcl-8wKl)0P~FFUH#Gtvo-IoZVL0mzUqP86!^R zFO2E_UgV0g8wb6|+6#B?x4*k<7Wb8n~|&-srB6g=N|Z{A(*$KjQqz$>@hb>EET z@QUHXCtc8>O6I2Z%r7h8kxKsF(=xYLz$Z6r`TRyb6Zoh}P_InMo`(_%vZjl<$rUjmU-_ty8Zcan*U2z%iR25)Fzjy zdA;B)_O2%s{!wbC(G4mF!;kcd|G)IU70<*ip# z{eim?{fZCdTd^=V)rDVgDO}|p!7KCZ>tavIiE7aN`K;ubIDb_7fWN1BP;A$c=+_m} zPw6mp1v)F}GdB1Ap*UxM5snqQt6SP5&w?Lb7rYbHXfZZv#-{GIBa90&kRB`p+M5G1 z0B!}HcD3@a&Ik^2yzV<=5>@7de-Hsv>N*2w8+kr`Y3ZK-K+ zFWtuepzpNVC06^4t*`#TFPZ)ytSh#I{E_5Pg7FUa(aWAnPCn)SHp%&Kl3$YNGN;X+ zW6w*xkh|G$pJNYcD{QCt^5^#26(?#ldah^8+D?}ItykB~e52qRe9PUC4C`OC)dl=) zS=%^|{HL|!2bpGSAYOk|%@Z261^YRoBu<98zM)n z^`@>C8G2mHH?vs(Bu5cc}3*EW>jdH(jIx<{`t?A0zabg5?Xa1J;_~Vh%d}O`m{rb0k zwih{I|HFsFlwb09cAvfQ^*;ZNh_Y$w`#+4?_Ch&towlxjHWl<|SDzh!EP@ZJ+wtck z?)@=pvet<_mkh!yk_Rsp8x4lNmv&2mR>_!SM_B9bGj6KA*Vd=p z8=fUcC*v4=tA8Bd{Wvb~2wd-o?FYrT4&=4xuk{UOvB$<^(2x7^>-Y_Qs;&bLT)i6gj(f8`%=-!O zZGWfWZNo-Jtpn=ZdE?;#=IZOp+^g+`&;RTH>$#MD`!ApKZ~x76jGdmbu8U->*I5&M zc{Fne-}ve<%^o)Ffc=BMVea)mFy(uKTkrWl+n@jHR^9*Av6_Fv9a_HcA=Zcv+n?XQ zUGtx)piOjhEZ(o@y>yevXQWd3KE}DO7B@4uKBDC(?ABxs#EpN9p4r{BUhLIr{N{bX z==;yC%ujq+F{cVII@3DI~z;QcxtrtL2{BRZ>(}4UA^GNT8GC3zftl{;6~Xo z!SglnLw;Y|uD;{m{JZkZ!q)@69j%2Y%E{pqLyg_VI?#>f`2}04Pr?6*PUl%y@NC?! z3ip>&8^RZEK*Lta-F|Chw7ZxvOWSQ>E(CQb)w)hTp}9;&Nv2 z&5B*+Zu`dQKzoC5soKTaq#MnF_L^x=@T9%_d+-CVrtewni0xhdyU5V?s)P2%?TWh( zZiE+v-?OZn4r5nx1+w;5?mKaz(V%fx^vG2T{f|W3%FI62s2cAN?L&Y6BE9V!cMt7D zIA%XYCtF&%Q`I4PRn`IBc_@FJaTNY|9KHGni6oy z^c=P={-NgmTU@hmj~}paK8P;5Ig-Ei1LOxCy<(K!TfY0C=!?n^`(&-{#qy2dw{fu@ ze<qrQz^+=r@2*9r)b*1o69t9=lp!kL~vt&d@Wr zlJ7h%j=jC1&%L73%KyGn_ji*MY>k^zL+Ye^wB8^0upVY=V3!oXXTLaT43N*kGLl;X zJ^K9v_;%M(do1()GN)L51b@5W zQ??NY2YO<{z_@iEGH%+^g5G8<_8msMo1TaUwCe)TYVg~k`|;;BKcX>z!x$L<(C6O# zAu&-vGio`^j0bJMWN5u#yX>I*^~<&1$lu_5bZNb1_5t)$3|k*_$L7tW(`GQ;yJ`mT z*AK;*B3 zTK`AjZSwy2e?7?ivrn(e!w3AzJYhf1%%O#Hu5i{arO){Gp%1Y04Zc|&adS_w#^d>j zd+!tEP`Ollsw@`ueWXp%3@{@!cWImduGP-02;mpaiMn>g8Mo@RK> z;|*i>aKnjp4Afjytd%?}>%4T+o82V71aUI+bv4~;?hbsbh>Z`ZdNuKJ_I5T(e+3t* zgI9AM$~VcqcvzoDaNZ7m7P)scsg3Cx=+A-;n!{Pk_(Q~C{l3W##tgp39~vvQB`xH3 zWqiwdpZQ;{YpUD>U-IkB`A4(*vd6~CT!%g*Ivl-KM|{}BIfLWr>u~z2AJ$i+nH(}> zVaz_u@Md3R9O*or{I^%)i?;xG4RA|=>o_8u(3P>K7VdpuhMUZRnuS^x|K6x>S1!~= z9~-l~jr{Axp0n2)#;GqD)D3FhsjnKDOIgcM8PmPl(@cNaLOt`w8?0e^HkdQT#z>Cb znEfj6y?{R@`c$LdgK^Wt`VZ<-pc{FCCZ4w-tBi9U&nJ?zNxsH-+a=0hkodw zah7@e3s%yn-A?0h_MmPF&jTJGV_qZn|B0QY31NItVmjc^S9JXFyyMbK`>qD z+OsBX-87SWM3Z_%Q|wvhQtZYu@`+Wq>Y2-S2X?HwJ8H~sVqQUyD!d!lnohDC{9lD% zy4n8#{Z)tlnxI>XUsxl<{s-{YtJu8`?BY@#y9O^C~_OQO2xq=S%B>4Z4JskN-_V9v#`HSsgK`#b5imw*e zi(P9EvxnhW_uIq%|FMT=zddB%5Ye&SdT0-0N3e&l9%2t;*uxn1FlJ2BW9T&5;~{>S zJuKQrm#W9JD%;p~e7`*m{-1V;J?#2lVh=|SvWG*)S(EmESm}+Cx#(o& z-^lfutAhWZiP6^~>q=#xI=fYTh$j3C%@i35&$0U-GujA3EX#9-OU_ASoX=tn!Rf$l ze8Ag?PrhrX=5L$L+#~BYm~YO+f;o-lcWgcA zlNdB(ZRPvyH*x(+HJ?Du6*%L|mOl}fIzYc|-p#D>&?@b5GB!eYm8Si64XeJ>Qr06Ml5(O==xQJo=C7|9F&dPSx!gu}Ae;_&_pW*HuZsR9;;A z6TJVrf(zPy<{)jW+_UsaVsgK2A$idl^(5VqaGl1DPD3~SX<;uHx#rM^-P()=GX4vy z9rRa-$M+PTlAj|U3;S?`!Y%qlaE(WA1V{2+XX5+o>=mtQ5XXa~>|>|$ziONfsbBcg z>5_+#IYgODw((#5HhdU-{>o>B4$o{-u&#prrosM9{`FDay&stCqY-yZRI7Ale82Rc zm4>=L7F?fsQpTe2R~UQzHS*m{>Dzc6e@(3&mG3LMl`)UU`Ila8tHya}QKNPic$AB; zZ5qw9fSD@m>P#=)s@4P=kCFrJ3~Jln$k7MZ45*r%m5b;H{%KBXa=N}GHU4%q%eYHC zsn$w-(YLb1s@${q2DC#*99E-P>8btxzEGf@Lmr)VHteGSUp5QQ;B)!9q?=-&MJp?@ zsp*^GEbTm|^721XeOX|!b^-Z`=JY~MzvNBSvs(xHDf9u4h?m9(flgujGd#vY?af!$ zimYI_YINv|pCvU@pLQSCE>$0#IOUMS!W=@;w_4B{$Zw3flRHK3vh88*Z?SjW!{5;se!@E!AO234 z_X+P@a`-#B+$X$q>5zAFsz3ku3GZBX_&eH-^3Dv=$eslMnKr}3K6JRi;T(fDVh@exOhP4kh<8P~CH z$g=ie+k%+!6{Y*`XWc{14C~EBPIX7sjM``0WnWg-(@%A3I;x}w99>%Bbs}FYMZP*J zWRFE;tO6P1{w&sl$-P$2jNE|#$o+b~oLotT)7V{MTP?CLPKBM&D+0OKzGu|yBiLV| z+L_n_FSiW0P0p$*f|JDl-G z`{Yul${B};^_y{Hjq5;v!H+$f*0NXATIL(2pNu{IbQ;E2I%VwRRDThBBe73X%{9`m zQJgho^A2;8L0=@c4*Ro`Gla@jP4Xi4%C2hPX<#FXJH*aJWeljRzDQkT&DYEL`q+BW zSAGt=`h_e@thC$LG`KX~k+WLxFs?#@RF>s>CA_U#yb2-^?(kp0zPiihZA z)i_j2Mg9zb;?`QmZ+jmxt(JLXJARx-o<8a^mbx3MEHR!P z#e5)el?%1ZWtIB+%jJ38bIr;`;T!$$Ua#K$(1*8q9y{#aZ>o1cbfcBlVeek5-gOkt z(Msd6cTZFAI&QoY-;Uo=HJ2UywwM=NfFG)SIDCLK`H!0M?H%2_!a27h@B6P$x z_%!&D>81FR9n4em9lm9oT!(2|{?;D+%ZHiYdsz349hP0DmHB1buo=UKi_MDVpSnrU zKm9w-u)ImnoHAd}{MDNg=1-ZcEYUNI--u*VT-E&>^!)lasNIR_`GuG1`Q-U}=3m?S z9n&*!enYqas!H=WkJ0jP?A84B)a)$W)tBE(41Vh{@Imjf50O8Nvy)nrb?z;r#>>9Z zzNvDW$gsv%AkA%%y1wZ!`Dy?$Q0ddkuH{ zCd=3Yo$tRwv%kO3$iIDs?!Ns8%i9Ehk9kSA&wWxo^Y`pA@^782=ifS=x|Fv@`)%0V z!gni@yTxv+7-Gy7TK?PT>iy5Ek~`rqayjxn_QHB=&cL%V$&c7q>42Ts(dWK)HhV1X z+2g)@v0V4LZ(oc*cBa<5;CmnV=2U3Nx(Cj-U_a~wc@sQ-K1KbJz2$Em%>Vqw0Oqd5i2TeKq2J4q{E`RsOv!7| zjBAp6iTkzulc)2$fxmNg*Mwdt^QUMIe1YaC@Q!)0p5Yvx%;G=uK3Adn3D@fRU;R0f zzk?c`JFW_7{)=`!bK5`b`I*1xefUPT3D3}Gei--e*sJHCyg<*GxAAwj-m9(nWB%k7 zlJow9-*Yx=Yio7)E(>0U))uis^*a2SHgxmH@UjI@f6Ta$o36eGn^+59_h<(33igci z4VuUg>Z~E@*1h@`_G4+{YzCZGVi*q}-i%F7XYm41F?eeVOQzu2^Q~T%}7g zOP0W6=joX*z)Qn^pl61?%X!@BjwSCX-phR9j!>7pf&Tceo?mnhfAHyIcY)F zpij^}qE9wmpk=ZFwWhHdeRAKoHT%ZB=nVA5+Z!xz1M)xm z5A0j|bM=h%14jNe))>5&W`D*Phbw(j_-;jFK%b2MwwAy6B)z}Qs>Fak8NG@3Szl0i zZ%pDN{|@tj_$uye#~S_}AE8e!h;T)pTwwacM4w#zfj><2iL6mWpCr&H!(^?)amd-- z%!kPw8~P-HJ{f%9d@Yhc;Wf?QFcN)YiaudqGxW(InBMZ&4(1x%Gy7hAO1t@gWcf(4ti|(BouX&NFDMbe;EYg~uhKJj zyc7BbT*XFw;Rl0c`7-zf`NX~{|KL~RAH2c;@QldvTi?+ApCiZOCtS97z)#pSL(j)T zdA{ZU$n$5DXYJ_ne5aXYZBrz_NPN6W_yOqTk{h89_gckPpRFriGNpZ^td z3ZIm{%=O_g7I>3bpbWVu7APHty#F`%e;>+xEU?w79}x?z;kU#B%Yss_$RChJhzS%;EHvA;opi+gL?iSB|?$Jy*}=_f;*&TsBb@i_0t-$xDS zb7jh=`@cC?%fI&>)_ax(HvKo)^uB$%fAAnSeT!v0hfV+ScQpH^{YL)1+p*~nSl$+F z`mrzT_65IE&-{JF5AWTq=ihlxcUxCa5S!lr-FwRhZ2GZRY56N(*889Rux!AlANwDg zyx;%q{<4q!+e;4EC1TUR74dK1hfV*ET(RljF{NL<3%>t>u zE%_rc!aIRYPhrys-#6ch?L%r0 zHt*v*5w8{Io;lHRh zfsr;%?zKLs<)6MA--R|4_tEAbXp=wHCc3cDro=+SUJKf6MOT*c`-I!Hpr80cs?FQA zq5UN8xeb3wwfSbyriz93)6a*9t7y}_n^@?@EyQZ#FKzOB;M>aC#X?Rsep9*` zIi8L@6Pwf%qcq^tG~(M-TdW!TSm;bVG!K|dfawYSta24Yk(>Ec>zv3D>EwtwW0HJv zVZX#9#Y*^Svd5A$k@o6ouYp*pQDUW+Wsk5U)=Wz7#UKacZL3xL9(n9xHBd8h>Xt&y zi1BEfCi5AxX2Gd3BdqObA0Ctb@~8Im;#$XFdV}yk=e8DyA%1T-+Vfx^#2jaU6!}Iv z&3LLkl_rwoV^1fY8s!z`PIM`{N#=pF)wayJ-1%r^hU^bzaW0C?b4hNmOLCRDQ#kXF ze5|hOKGYt+np!Jq=6bbFQrjpsE9|pOPN(K^`o4j_Qxnke8adh~ z)_v>Ljd$xjXWSoW{5LQbJZEi#)ID=X#5h%}Li@g&qfqlr4>Atao`Gk1F+8RTvPRUYJR%DU~i@Nll=?qtru(dCG0a5?a=IxKVn@7`wj8i zH>I|hIB+X_(2Qg6ysaAqu1vw*GmE_hJINyku!Z-e=Cgk+E%=b}lw3(To^|AY<3;JE z_<|Tn%d-Dm5t@cDvS$S61-(l@lJ?fL4qn3oyk29y&>*}9;VHNk@LbMs-^`MSWy}Q6 z1b@U|!TJ~NyFP!1j7E_ zbERjLR-rx7cD3{n)#>+XL)R(Sze$LoQY=&DUaVCbXaz3uw zNDjM`32XwgCZ_VwIUGu4j>tRwSIAc(c*8mT3cvZbdz<{`ET6-fZe?%Ki_oU*2flwv zJ=ekD_PFwuew8^ef59=kIQ!S0EWy1YdH+=V0(anr-I2!FJ7S;ucm1u5Z;jAKatWn)K5|0xrMhj|Aa)VPB+o_6B^wZ1CvznhntGV`9ebVB z|J^&+-}*LVi$7mJHpfm|+f$MoDgH3JC2c?C9ByBu?7Q4IdF?Zqzg}wWzmxdWPUha# z${O>OwT_yMZHMIfQFuhJbs9hK!dj<}mG?DzckoxT7u&Zg8{~VK%dawj{XyM!)Yk=z zPMDZt*2t7SbUUSweQ(o8{O1*YYzh99J_5QAqnq*n)a_|S$Gk1*h;DAuu^LBZJQ`0( z9=5lu8~i6wWX0q5EqZYOwI{0_R><{6>6)sOyCAZOJJ+{EHSi zz`{Q~(|5kQ2Le3WXn`N-Ye{C~HLp7o&-clngfb71HR{(z;@xxLOmx0XJ)x$jl@(;kxXq@Kdhp^LtIoq?*75B;m+L!VYYnnfRaJ^rKP z#@|TZ6UHz5=|)w4$&0PC(Y>CX21iUpd!R9jM#le<*mLNU&>r}Hp*=ePV3PLOD{M`D z?C%ZuVl>%Z_~B_f*pXNM;;a*K6h<5PZ5DOO*=6Ey-ynCjiTzR8$W)!65oLZIg*wTm z821}gl+UExoy6A+U-B`&*NvyT$h$k<$GrJeC%)&k(?o)?s**bqXGU$ulSHr^2_~_it}J)j~d8 zc$a>`nJwesttBM*RP+J=lxzu+rzlE#eVM@3JCtrrEbKe5*mf>ns;(e|veq)0_DsXjbo8T0|8_weS+^6ywxdH8I;COI# zeC5Qrded*-7FP#C$PtgcAMD{dLA{5@brYO}4e-F=>Qqk!u6|{A7dTYK zURC1i)WEp$-zT^_U52Yueb(8?BWIiNRFmN9eM+ABG-nW8%@`|ib^Hq216SuuxO%4D z?O~I%y37DF5cw`ruD}nz3Gg+X#g?IFXMUt1GjzJqdjc7#){bS+MS;sjmW>wbCTDcC zR@AGqdsMyqBjg>Evy3l{lF^KdCc$mvad*?Hb0@^zGfvH$5O>c!)iVxv-#^^rwwQu9 zx+m;+BHTR#nlTaXo(avE2zTE%44iwk-H? zeO|Q;aZ3po3EY?C*wjzQ&u(h29zT86+CPRT{*QMz z##~!rjKT}Q%kg!}H`M><3F$}ekzY+pKUyZkJ@FaL^?5}2n!H-r$Z4V_pRfIljAl z91YRqZyh)OFXKa8K|^vEzB?Kc$3NMgF`kAPv&PYo8Fs8lLn3yR@pcsGf}$ZahwwXu zX4D$+?(rghNlxp)&yM%xCkJn~PJ%Zlq6?jq(1q9}bV1@tD|!0+hueL+&^BSe6Vrw0 zBy@p0vM1o_?;8fU7wN(o6ZSJPT>y6;Va*g>m@zqBIO|{FF+wGLC3JwCZoaJu-&J^d zd`6XR0`k(Rv%c{gH|J_Sz%QzYDxO zW{$bQdw^f3KOTS!ZT~$4yoLp2fDK?0N=#-AZ*Ib@JryONgC8$Fn2O z-O1eZ`q*2UO}C-bc`cCHK8rkG2TX4dd5+MFWHt`JCH_47!v~b!bo9YX$+3}J=xqGZ z>&fSTFvH;<5^Gl4=nXx`Ska{z=u$csp-Tvw&aLpG_E0?e@s10UwbkfkAD7?M%M+J3 ztZa%Fe*GfTivGQr|HwKde9{@tCU|;u@hZ>I_0RIO$+fh1q4mVUx152)lviRCj;{SIo?bDG^x-1K`o~iBtydstl^V#7cTkICg|su zy%$#Y(;rSYoVqX>A<%BgqSS-X!gxTiJe8+CP`} z=T){(zm4$G^}{`t?UNU#Y6v+X*OM8L@yq%ZU^`xm4oLX^&O#aUB;Gqx%2{>G5V|Pp zD|(cpZ#(APd^&ppE{G8GL5z~XoTK(4g>G#Td0F&t%G*5lQeweGuiiVb+mO483-Al< z&Jeh@W<73rv-pl&Xy7Dl=I9MSznS|%rUOgZI*g&_-m1q`9+J^3Yu-x!6uZU`Eo^rx z|4nGL_T%IqF+!O@E|3gd!}E}xtiJ}IIP$wRUK4a)eSJzMurHj9Tm!tMEdMvTO0Gda z==ZT9+$jFBZr3ZswVeXifobMA`pj-@%|=7!WD~jgJC4p}hn3v=9QL!7$c=ieBBPEzxBL6_ zZCmJ0mELcwx+CRo=||4wXhZc6;6eY3vU<8KTuYFo|H45id=vWw9wnlpXku{`a1Mielkt+ z06JAU&JTDwa2)^5L*&Nt^BL8XL;MRft93rC6Tsfd`rhyf@_2Bk>6Op_A$jC!@)>;& z|B4*>jBW&$;1jBV{|G)EHt;`lFZcY2O)eL)mMq5BSrsg{^~O)oEw3{#AXko4b)i{k zH&aEQA14p*HO)E))*V%W!Z)K2lj~QnZ;jPQd)O`A0B|UM)$Xm5IMVHFL?4%m3tS0q zfUku1?4nMTaTwqR(JSY{>%5QcQfJ$36a3JCE^t>xycKI0kQjwbFiIQS;4h$onjUW{ z!A}BM^kr8KKPva18W+Lr0&h+OqdpNiG?-!^X{h+Qu`S!+s}yXr|Ivf@gA$s zl>KHu69P}*fvN0SBe^nS+UU#j({d8&F%`tmtjA&Q^7K{=s z6y~h%K4lt1&na3>+> zEK;^F#$NFi@b7O(-N1R0`=r&r2+ty8(QCd-#uE}*+2ag4&@ngqxGEQVDrb-KpgLPo z|7_{~Dbq2G+n)o4KID8A_S$Pt6ydVsyjARbyetR6*mhHcoYi+eZ*Tmh;T`d1`FY#$ zPJ5aAzjWT>w%XTv{3#0fGbraR&v_FcmDH`|5An~N=*XedecaK?nV9s9#mdiE>cY|) z%a1u@xi9~zXKX?o_-^*3oQA#go{Xnqz%=|t^`G}_#Wl_wN5j~Ib;?gDEoTRvJ2VUZ zJakLRB4sqo_Y0}S%hY46;BW9=#h%2^ntV@E>EfQ0(ZILCd&Rpm@W%*DxG#VBN#i@7 zm2$kd@#M4u4=^!r@pgERJ3#-e{6&s?T)}$={z`@O5!#E+BVE9I8-%Ywmj&L-!$Xwt z9<(XQJ9yYMwrc!(@Y`Z-$N2l?+0Qil$-c(S@%}yvhZgyfqW>QI5iIf}a*wX?BMN82 z^FkXl@OU!DB0tig^c~5<_%u&)RwYl;UVd(kHz#i=el5C=ml?x5)4cyb@|E)xUVQEU z7+zfWX^^y-pbUS){DXrrf#`hbUa3}Y}az3X{bbqXi zTr1~9_r=mK`C-O>BQgiF&+b0%79dsh-j%g41Y^(g{ zxkG+4zkLOsm$*v!HB;X$P=4O^n#z8i$y|&VGVGUn-fnMEfN2lN%K{6P#%` zNN)4q>S18YXh^P!S-m!EzY+LScNe8Tg-)(P;`@=w8l3s3H#mLx50h_F#s(}Hz*qSg z|J{vEZ2%q`CZt8LzYD&toJY9h9r?C#Jc5=lzbCmL^fjoSXZ?-dOfdZ?HX9S2KHvE&=AERRN(&j-<0r1dJOJKac8cajd{k-DZ3dx|ziKXEE3ctK>An~a8__e39e=Z1sD z_Fg$ym9fk6bo*^PqN8}uwt9bx3?_H?8R#ffe(E1{C(semsoAQnJHj7v?|?3gEFC#; zRq~C4=y}k2ggI~OE;58n zu3waOM_(;^p}msl+Dz7lxqkp%Xy`zvbMtik(e2xT!9a4_-rEZ8Xn!3uEVRbL7h2Pr z)UEKoVXG?EX+Ejhbv~N*< zLOYcIVcFi zOW$~@_wd&ZsW)0>zf`EF;V5^36WZs`E#c42I3GQTpHD{3CrJ#!;^MiXZ`rre7Y;r{ z|Cf+g`QxRzr%pqsdwp^4YZOnD0+;Ibt*Tz+wn4jDV;9^YXW1LxfZmpTsHgmV&qlbX zFvhoq=c9J%Zp%pJ`B1p0GaFLlQv5_}RSEZ)*aYKql>TYM-u~iP)jk=Q%03|zasO|E zdImP@sOVYC+RF8pw^hjt8~Zg)ZD4PVz9M|o+RKum>gCA1HgN#t_u6KAeQBHgjyCy_ z?E)M~PRxpYnC((`C3O?jT}$2dlh+mB^uDRoHL2T5UHqe`4=CT(aqWu#dKWZqwkhN6 z7T6;%r-DiRCXp`^Vf2?_YgRt&%`&U3B?;~_&Z7r9#vKqZhun}Ec02jq#qVx@*PCJI z!vm%pS!+A1ZF6UJKIp85f8e=O+S|PdSl+Wu+H&4AA#iUP+#3cj zNUnSI^9l#t@fmRM)7%kA{`Fmtg9C>f_TMqg9YFzO^vTuWUhYS`W17YR_Xflcw}7?+ z$%mgjzxd4;_K@4O3?FXd`vN|EE>yyY;Mc-8qcewnd>Dr>Rdna5f|V_M&jVIMf;+bN zD}Lkyz;!5DU)=?)ge-FNTHq1SUpsGco;Avn-)@jR)A@i~FL^cNVMqD3p7nE$bIBL4 zXxdpn^Y1vl8y`#V$r3(A&YrQ$LC4H@?FtT~5XTJ17XgX(G`0{z8?=-HJ?^)NzWK~4r2yGurO_TS|7P(gy zQb}G_uOn?CYZ6~%TEI6sW0-RrbB>M#bUp0l%8pVo{+6=wgL8cyw;?iR>UJ3)Yl-f! z8oK~APUR}97~iVN=a+jS!}o60+OYHUI|VMo&f#j{lKv0h30!7FJFCutRxtk*^RFfE z%k&S8o&O3w&xp)3nB2@7aR0NP>yBK(vNovza2#gegN&8jziD#+=CMhz25qbX`9s_g z`Ejuy0v|G$kQ>`zy3JRa?&+T;Hm1gOXCQOcTo0f8S?ol_QG^cpJZk*=ns;a?_HGez z974O#b+N+VV`C;4s$;hc zk00>mrN0Iy8r%j2gB4>{c&RO`bw%1f^{djkP5@Ws=h{dV=%a7{7}M4`KEFZ_=;HG( zJiG@FFZ4uYz2v$hE$@bhFW~p&=7Y_>;o(1;hu?|q2Rz(X;NgqyefG#09$vRS5f5MZ zX7u5MB_4iDcxI7@HxA59e&NU%9=?objp5sn1BRp~fT4&SS{Z=TA3!PaXtDLNlZt{HPnC z3)9JwR`Q{^ZHWAKA{Te3L*skf#Z8BzH->UfD z2u(|()8Ku$;(cvM(Li|Lpx{cG^G*Z#$HeYrs54U3se-2^t|6##u!8TGHU4|*cwsCu z4n_0Tdga;`p3bSe)6u7$^|Fj#=Ame)%wak)TcH8?l=3+kH^?|ft3nd%@y5HGxAB+i zoB9xURzF3|<-6%8^-;A}$FDtJ?1Qy)Yg^62d@9G4yMDBuSlHuF{q9}XUkiSJfi4+8iFh;PU)?!cM(nBwn5{!nYKU@ny@gSjy{D|Z4| z7kdZ1n3GelpK_jPOnTks0}w$R7JN8;GOx1GIGX*jw@JEyfXbHG;LRH8d2Fx)^EZ)BV2NWk6X+C z6L$=?bLM26%0`g-FJO^f@QM=mXlKTgaw zzhz&i4GHc7C*$IZikr<5Pgdyzxi zIZOC&`LT;RB@=9CEXw|);`?@B|OR9O<>$$sE`2G0lVizdpoma4(>Ot=yzSpsFzQi*_&03Cn z>VHn+pFH0Gx`8;GiDD`nPjye|f89(x%~=2Ihle{|$xUyhW=+`dME=)}#AZ$um(#57 z3mP9&`H;RZNaFf97nAvym)+MBE!-^=B`y`;_kO`OXW_$KtNe{S6X33SLfdK!KGyDJ zdy7Aw?4{RXYX2oa{z>Hu=zd(@i%pUI>EN+h31kv-40M49C67d#+$~WagSq4F_M2PI z$L_arCic#d=1Jq-oGYSXuI95wyeA8PD*10Cluj3^-6J!2C-1wIXPi0 zP2k8gUNOeDzi_t`bRXWEyDUm=gA+<^KMTIcuWu{ow0z$2vv~iv(18j%3J-0fD>ui{ zfFeD`cRHN%^~ai?W;UUZJ$kaK_nK3N(nn83PtjeL;d^q0AhRobu{oBWrZhd>Y9=4p z%bn0;=_&P#csF+zc(jb3Cd%k3Le$x5V!#vZJ$SVCYpl~&d4^;!lFeVMx}Zbk+JSB- z)X&%oc-43wyb{VNoD~n~IycO5Li5V% zNAg8?W(s_fqQ9wi;J`6_QR-fwFB&IPs(9-5#P}Q##WV3Iu4N(STd%=yOKWMuOZYsH zTFcZ5a3`<^?{nYYVDU@<3zd9D>YwF2z{?m#US_MvZt1f1j7KWuvM&rNe>%k%5r?SY zNv%9*YHBK&-E+^d#Xc@`9JP&K6YuxY3&xvV-OXDAsI9yAv!)Js-QUf0#K;8m4%bAPSQ>}F`m z@oQfzKX0OM(E02K{`x|Gf;>P{}cXNLKzmX#ZUG_^i z26{j6aYNnBS;bwp0qzg9k*mEutjks83v$$5;4ZcxWmnbb?}xx~btZH)gkC%1geA`7 z8Fc1y*YvXrzb0=#5bO=@L7#Ett&A=A5%yzSA)cV=R4|!3%pFz4VGx^;QTI&qe#R;I z>%#%B?<9B7L1Xb1NNyb#8dLOlWX=kw2_BVmq-aaUxKiIP!Ezp$D2L@-o9Fvf6x#7| z+g&P`kqu9+_A-8cM*dfOnY(K2H+)+WN91f^?T5LK@Qq zf&pZ4+xGt4clrQ3wXBcj4F{3&Wq(rPo$@?!!pI!%E8ZKl-T?r;Q8{${IUEBZeE6J!)mG4$;1>x%gMaH?Zc#91N^?A@{;5d>yLX_B6S$ zwqf^attLNC*zHb)iQmGeu{P|+)&pZ{;_9}E%`)uv462+A9zG?am&??!Kes&=RQYr4 z)x=iqi)YB6qwZy>+Sr~6^mE_*9>ZJmn9iSb^u}Nze~uL+e-3d|(8{v>IgcBoh5R|~ ztj9n>E;AkkZ+@m2<9gjst}ErVd16j^jH`8U13qjg-^$!_5?eO*q*UlL+@An0@Z}S^ zL!vz&MBc&1Y6g?H4{=whLA+UxJeE;xo`>vA4K}J;Y*e*IAXCR#ui6=^53vo{RSR&yKlGNr0mw5OXV++421teVs1vahPZb#jGWjo zUB%$sEAjMxd$$eUvR}^n6ZlevuLG*w&JbqAk9CfeV4d5v57EONn zFyE(x+xsP!#<*ANK`*%PwGWsaLiaUbV1KlB8t{$WJ?onCY_)dsblY}=`&VJh=s<>` zeX$Ad-oQR%-|Nf=Ga|RM#-pDcdO`3rXYS(_GFAcK-Ev^Lb?HHH+F@{713WS~t?^WU za?9amB^(G|llRT1u1MZ{cu5Hd&O=t>eaork$vX}&(KyiOv+o;TE_pvWfAk%{X~Mog ze_&CmZ}6cgMQL&FR8T$JAFx^b|7N9dAqurKzyb~6C{2a=y1 z>J->_HayN*&Z(G6rz#4}1ONDLDEP+*z!Be#>XebW^CD<^nzLVi4mOpagSOH+_zmaa zw`J#`;JuH!S*R?4>L8Ujy{e|!=!h0km1Mfk07oy~o&@;x5b7LBox;+Q_=L+m)~te$#v`_p96ZD3qV$_#Uf|-<)Ia;v!Bq z0Z+pjMmG19elg7*o9pox$!gnkC;J*0!8btnZP7mURGvVu%k+H&h7D+DP@nGvabPM| z?z>Wt_5)&jEuHVypg!N{1oin&1oipu;B0fgV|{`@klQ)?y*Aw?(3GZmU!$3z>lmi-`BBb$bAXZnLgh* zz+EYsf!*=mpYN8oyOBrHznM1n-k=lY{M5vShjuNc?_Uc60gM!R1cbjbd>-30 z@dvL;ZmzCM9;`mU0(M1qZBX!Zz2bd{pLc+1(F<-*2`$fMRZO1N0ciTD&WBOvlP_yj z&ZosUyI=i=q6cp38;m2~>eO(ym0cfSe&wfd?VXvRz;#f=HFt_=xF&y!;05k0^XsEC zME}vAE$cg8rUMw;cPb_N5DWWwG8E))jRgBb+lE^IR{l5j|EZ`GeC4goo!ooY5aiyo zbU@!Hq+!y5X6to{U**)S!S}NPzmmjwp9g)G{!Q$^Zg4Fy+KNv+vOwobWQQy<5b*JQ zpKOYd114UVY>Cu5HL^!>^kHM?l`D_^FRkfOk%^7}q~~SYNkit94wmMXbNsoOqfIiG zJbo7fS7}8*OLIwG`p$ESzcA@sYJ<$j_t(&R)KkD9xI*6H*Qxai4XTf7!B@;X@ZBmm z^_S*O;K2RrY}4KI9@E|RVH5ta%7PE{+7ngQ*(P_@N9{$;D?&(FJv`Q_q*= zFEdy?*Lppdu|^Bgw}+Eo-b-9Re6PrVxA;DsTS9Ti7N4qJ&>WLo119&}554?C=i`$oEDaIw0tD99Ppl)K{>vi zKj=bMU%>s%o5&v@HZu=anVI|UAg}y1?t*z0f6JHIs}E6k8FfEN-P-~VckEDK& z)Zb!c9^A|~U#I?ejQ!8QYIv8f4LZ$*wgYDG#~DY|v}C=Lft%~}J<>cnPf&L2J9sT&w)6k)i+KVlrXmLMp846VLLce%s|LP(y^h}|i$Qyzu zX#&a=g&}8sl z8#=Cb{JUbJKTCy1AE^0*Q_I-z0l!_$9V9~MG!A|^Q(dRqU_7IS{Ra5xl&>pE;|Hku zz;!|sQ?6PMzAc@PRLPens`P1pGOpIN{;cmnhlA+Up0C8APqEK}L$Bp2IPshP5gH7JKkHb&fu3r-N}~lY-pUeLB|Eh#Xb0b6aVo}Z|OGj zmmt?G*oepRAHcuTud8rp?k+EuCYO8ObcV?Re8aO6OW5w*Tz5P(%$?THK5O*;)qL)e zvfHiBM8KP6qGL!K=;w&F1U@y6c&Qvm6#4Q`4IMAyiaSDW#d(g!6-R&hN>MklCG@*O zy>eUu9Y^Pzu)r18I9yTKTdg0zb@IK<{ansIvBd%Zj4qrMSE%(emdaUjyVojRu-lfv zUcOS<49DY&c_myS=T`HP*A;QaW*=8@wgp$ny&{am^l{dF_&?}o0awu0I9!1)d?H){ z?#X-)Tp{>L)4UHm3RmdyjKLLmNM62OJ^*fbUdG4oUys2Z@L39X z`25yWPt(rd61%h7?M|;IHfOcl*?Kkhm#f|O#MQ*^Tn!Gtn%JFHl&_+E6*znqJ`1bF z&h=--9qrjRwPqT=K2QcviV&d1lI_P`$Oof|hgybt;DiVKJr2^IJ@g~z~WqPNLZ z!_$!$De!0Po9-HPV zeNaxv^Zf4W5}$ZK@^V9esCSdE8|?=#u6_m@c!A~>YY(6s^?Ak6DRh;G!lR)Bw>h_v zpNP1=o1(cO@_ry0JRs|MJNe-2+$iyRZ7)xC+mCV2@QBM{l~f?vJQQO8Ej7MIfrb8C3VrCkHa;)`75m56!r{W;q6{*S_e16CujS42ah$_?*{YzUSGN&{2)58 zek*47yS04Zkzc|0akn!cw>r`*z#Y6xte|{_+n(iJzRiWU&_>*i=HsGAaoe&Y_us<4 z*Jk*w*X_`?rFj}Z^yl)K;ym{$UB!3k!=I;-^kyYoYnJJ%Hlx{Et1~~v>Ne}V&h!+o zEsa7vG1YU;sa8+E-s>U8ac;W7o0}jXl!-rWe;hyTDaoL~+@WhqeaFAA`_6r`*mqR; zfgCbVq3`&Ii79Gh-kf1s&k(p$uc`HcY@4hRaVY+p9;7UU47b?y9$-y-D2uY5ZTWt; zairgxp6+M8)Ova`*0Lpg3Ey7AdS1f0x%-BZ*M#r=3jMXQr)^$0up7;)c8D+0?KBGPr9KFc zDR(5ej3tDuAu)V@e~GgGwk|H~@0)&q;s>nZR`+**MStyne{B{0T?t(xhK>GWS&?n7 zv^w%NrSowpUg{^cNB3i_DE6cI`J<)1OTBO0`3Pqh70!p-G`L94w%XTW*}ILLmBl(P zFqkEtZg3H6zsT(wxkSNTPc|}kAFQ{9yWCP_=K|c#FO5AX_sFxp@%I1(tZ`UCyfLxX9_7C|i$)XsO?L+Fy^ei~a79^~n9Vvh|o@%?020n64Mi zyWZTi#z|do4;#R8Cu6AAXEh%#oz<YQ%H2Z(t`vq3d)V&l}ju~Vpdw<~|gnUwkcr_1_paLW2$@Ar@2seg8L|LcqWcl-T! zm-nCg&#HfP0;+$Bmy~sHmnZ9v4Fx!C;+@~WSyMLu+OqyX;rBmvO#h!K_TT0A-#Hj5 z%|G>@RR2AG|6P9n-G2YEtmq$zDNZcW?H>x2`ZTW7?@|$o!xg(}^7>)HeIaWvx@&tC zIZ3&rrmElAZ{u@vaOf>(Gr1E#Rx`i%n(9If`FR;^BEpyK-?&%%!hgBxP0ly#Zx;4k zk5`@hel1(8JvTn&_b+my#+Pc%Q;EWy6@KpY=N;4Y#_#QRa5M37tTVBT<>&sL=pi_- z&YERT^Je9z7UWQ|($#C#LSM zY&&<2HOFteJ6r3f}cx-HJvxsmDTC0t6S~$ zGWHyv3tj;pg0iL7tn^X^BW>AbZhL+iyu`BPm!Ac86HB+xQ})JJR6W+odl&pt0XFDo zDZKl#qKz_!PQ4>dAIko?OzvIxI?QG2zW1t|P5cus--#a^{t1`6)$(k;e5X7+^4Nri zz*z&>guVoQ&o5Oxd{1@>=Q1Yo2+5QG7Ep3W>al6aB!T3EkKtQaurq2oLS!@Wca7XX z=*=?2V2e~S#_&IUqsCFtcWNBG3?3F5lWvp!OK!38 zF}K@YS=*?&%-bVtkZ-eM!iy%{U#E~s$ld1k4OOw0_llr7b;9WD=3B)V$+67;jm-D_xNX3;ifvaxe>wf{SePa@r1U zKP2|ITw`Gkf9C9Xxn;ba|3b40NopssEG3$ZP+6Hvd>`lALK8W6&Ttl+g8jhMP;Ao?b z9nJn3^H#DV^KA2C={COSJPmS|^1#=~GH}=n%p3lOcfi|d#C~4uB6IVwu|3cCN?sfd zaF-1@8XQr}|BcqH#1!Y|Q@~#oznLL?%;l^Y;J9t?_xjTBFXSsg=2%AF1KuUxZ!KQ? ze*77VW#e)gbV=Q*)HSKwO5JlNuiGhgNASr(R#|-P5^wR#mlXOO*DiBrT+~fdH%r~Y z$?LYO@lrQI-L=$RKY3lwDC4EBN!?cJo-=vfXm*)5%S5)(^2I2=*v^U4`eoGm<*J!e zA9Ly}%*AcWl51ic@6vsYy^paM%f`*KUFxo+Zi2dNsk?six@}T-Ds@fjwo><;$?Ha` z3r`Q7L9R~JaE9c$B=cT!vxMx=yYEV0^K!l0V@`3qj=>k1OMyAgUV4caOQ287E{CQq zcf0b-;q8|@7oCC4^0l{|^IGuNdj&p6a09eO*^lD?m9>Dk75q96zJCyXTedd&;IOg% zsPL{i@xKnC{|2WBKFrzrZbjpVR^Q8=Uf;1!Yw<`YcXVD+pnJ$=S6F>n%C=E9*h$=f zXJP#(SmP^tPuz;X0Xl(>eAWKjz7E|}xT~zM_6SX~^tW{tA7r znafsX3%i%KSdk3a5%ARt@)wYUqArlRa~bnS2P-+ZBCji-iDV#xpA9keo9#bXyZ`a6 zLJo!P$4>~qp5Uy$NuPC+U)AHO%j4h&?1ZXLZXxew?dv2LA#|pghrutun6k?SH+mfj z@NoKa^xv0jdJ|vkwyms#r$XnpO>jU#2N1~&cOZiyUoDOyhvlm?2VOF?1JQ`SAYdR-4vr(@{w{7ZoNx0t|1={rbeiFu-;56SjkhxQy!lqVO&SR% zkf+4i;wK7R;Y*Z&*0E=O#}dFEeAHmX>l;Z}i}MNma%Wh5=|mA88V6^%0eLqy&iROQ zKH{8@_@poq%QkcFsGFefTI#N!yl$t|-A3Isb+gnRoV;$A)E%L2p1Q}V`|{*NBOI&cgf!QeF3coA#72w&?a*0`h#X&7uG7g8hZwuo_1XYC@!v1rmU zcT3%=)HSKwO5JlNuiGVcN1!8l=*ThX$jjsC2xoJ7?{fzgPsCYngzuHR+TeW?%i&>` z1Iw4XG3L@fIL&R#^EV>CWS3HYDdm?^j-Dag3>-Bv-zIeK$eZcKlrN@yG3A%jZWH*a ziS=qir^EWCFQ=TdCFd-?!tEZxHjtgcI?Zr9^Z3T)TQcAhg|qsVf8*_}Id~)i9$9;Z z+m>x{8wXol>M35kL3q5B<8`E$`o2_4^|{BFN}c)CTfMj5ZO}$!|9^gz`_tYlcq_y> zBE2WRDLRu-?}_Cm?N(XnNW_-ToT_?n{tMwVc$cs4y_tIL*(wj-sQ1JTqKDyqx?1jH zqb}#ltnrAURlm`Z(2g!c-^TY54|<`>Vydn#>s0l^qGtoAM8F62;DCB-HgaNnI%IXF zP4J<*W8CV_g9mfn!h66s!jJaLc(lDo^Pu0F(B6|%JY*9%w92=`d%{mCeo67h#_UX; zP1~t;$_{q)Uw$rjOT~{?w*Pl;(>}W1RMVtpXoIe~v1da0maJ`v2S`@SSgZlftd>Xk*9YV`yXiUnZxG*km>R{3mBVJVzgP+Q-gNdA2y8 z^_ih2b&sRc`?LtXT&?^|oq?Ld`6BKrv1I@J9mf6>|DbXkY5G|yS2*MsQhr!>){ggi zQLvc$h`^#7Yej#t9zEhY*tgC>ub6J*eBqCg<(bEBn1xSIcev4Q9rVjR8QFHqu{CDf zsUzCSJaHoGx8NuFE#;lG zC*?fTLE7VKia&_FCwHTIPyR-E=B2!g_fpO?jn9aBk6(#;V*8Z$CV3v!llWj&AG@fk zUrW6%@ZoIuIC4wD!)bgt$LdS8cpdp#>_hW*)@J8HKU(m`Zm|}xZ}AqVTim+ryq$G} z^W6IUyq)zUly9Rv+XBu#!;2-(z+N?P=M>7L`E$YP=Q6f4XzvVY@eHpiJ%jO_3(h{5 zd}rsn%_HYJtG1YKO_pcG+!>MQ7Q^MavpUi1*z0>4Uo&x{rawNHxld&-=P|cw%!OyV ziT0c5|1|nPjd`61%{Y(#&!_+MDL;+!()e?7UB`U*Z4!$v&pdfKRe23_lKM5S zk%fm$PuZ!Si7C+hi@lD-ROj%30Y7!|PIK^L=P>IT%<^PCEqSt@Ja-0Gl7nH}#qjx# z6WUQ&PvKXm5TCV>=TvuEb|L4I_Ch8x)C;ZYiD};SwbQJo^fcEQS?EsBE`&c>=$@9R zEK3=DNYk-tUX$q%^Rm!Aow6DEh3*+63!UNFobwL!Lxb-lcS68wH|vx4*9GYxJq z^LUG1qZD@hcI=g(6+01kRP6%y#HXnGo9p1O>wNh;_g-&KqF(exjP+cfk3N@u!XGJr zuJF;U*+rT^Hy2F6e{W#zxW9>fjdps$c17Eb4zDA>!1pa)P~ho(em%|Fz9)%4yN+{7 z1?cNN^zk0I%Tzi--~*n)?1zWxcVqc}vB{9P6M2N+o!NeoMYczk{d={{L+OoDqF+t@ zROacni9R|ComW0-S3{ex_VDen&Ni?1&d#rfPOtX5605D*=4x+tewBrv2XuRtHOE}# z&B%V zex20kW$e1nu%_i|494de`3#BX8nHXFW?P06EbGwv((>s!I#w7h;KFg z_o>fNf52}?^8mWO#MXNHec!bidtIUZo2Y+>-#+i>725ywSeozLRRjGJUHT&_UH{oN zqIdMi^OrXr|Cg8jwc4O~AJuQ_6YRwsinlsG!O1v5M8+c!JBv^4j`vb%EZlg)x2L3;j%yXi9 z7H6D_aL=OR$ryJ;eapIncQt>j^q?v7f5CgG{0pLI@O>foDgO53YOm0>mdWqU&P+UsLhJmE$|{ zHskx~SXi>)f931~Gd~AE6m#}rTMD?*R$_|YE}zAp7`tDHWzp;Ta@lzCldM?J53qJq z@DH<-5A6+Uef^2IoPxi7AXHU~=T9qMP_4W6H`u1@i(Yn@*2^m1F8(9&;e%$X*n4>6 zV6ve)1fDiL;*i`ZKE`d}+IGn|pDM^IoTEYQ7aCW3{58@B@P*%13S4>Ce}I4Sd#(mQ z!NY1CcvyTE8NbjEKmNv;1^w`IZVoWs6yu`)QPCOY&Md}htW!Rzx2kbOgN7H)Ll4sd zaD4z=FMi;XyUG$={(ooB;zuUmv($ym8Jiz__T>ro%$Q`)lua&|oOsWSLHG=0HuPj0 zLSyzz^5YctD;M_9%)pra>eKrb=WNSV)l(H)K$hh`h z?omaam~nYU$Pp&~e9i!|fMRQ|$aR3-d0-DQ4nq^?Iw;tk$%i2EtfOC^_NJ04+kF3R zb;jb~g$7Q|gw}+To1etC6b~o2KG`@S{{Q?FwI%!?)wpWfsoG@ikw^(A`#7u#d};9h zAUIj{eBgfi4hdhAtluO4LRAy?amy3naqQ)xLY%R};~}{-x73GEW5AQ-Obm>}`_1H9 z2pkDi;Qfd3c_U6h_%D55gzUG(PH@g7ey?IpjGZMIPK?1jaePN*F7RiD;sXQZn zi;<&fhdwoa4wd#H*Umn?vR(C=GW@u+pSe9#+uiPTJ2w1w_N2p&ozvmACpyrpBhRnx zz)#wx9GQQc3vceau|fBb_LF`wRLYYWstQgJcNSG+R%>mf%l0fXBzkXBSGtdx7){}3--e;0ukQ}S~u=!UjTEBgsx^LiO;^3ME zHb;ZsTu_3cRFv2c{6bCDmw$ilQRxR?l5;bme6-vb6c}l?b{~YV7{uVg zU%O``e8u1lk8x2R01u(pK);OsQREjj*Fb1qVUEPff3(7<`K2Ge)O+NAXrJb)&`X7S zIu}LmBM$c{>N%xNJ*U)M?h3$vqCw^v7~Qa2`~0c1VL134e57(-@qbnGYPQ?Q&8sat zQ_ZV=aHbo}&s6j3lz0BTx&~*ec}ZUK?(9srCr|t!crz+KUvXf*0scqUn>!HndUs%7 zD|=5IntC5^$Bs#UCC+e4>CsoR{#TaU?A6@}Ys5zhzZo^RL}2ue-I_Po=bn2nZL#T< z?OAGA&25HF&XF;D7Q==jd)A4*zbijO%?*}D7yYO(epDm{0iZ{PwFw` z&C!j!XO!T^c$4*ATsemLKltm55Am2Ww4)1?F~qPVbmm*s7`o)0zrNjrEoyyZjG>1y zME&)}rUoDLQt|8;?h)ByFDT#{w|!f)#PzwMwfOU~CU&~nkB^JWc-WJuv$%s8$j6B9 z4>ee4r=uC}iU+r|M|HPZ=r7U5@XQnAEKie|a_;`14)4xlTxVIa#93a?@X+dF#G9rCs_0 zKHctPyr(a0SH-@f`4-hz+ei!k03UNZ$MzLRPc~++t3sh-U+sBxv3_5%5!QmffJ4U2 zd;02@cmBM3{Jx?iGl7Ha+}PN@Qm>Eet1)zm<-^s4F{Toh@M28; z-df$R;Vm)ML+8l28`v+=!6Kgz62FtLVvMY3qJi=T%BQej^~iTsoNILQloO{zc|Gt_ zPkBA%_&sFN-wzT`gC0MszMn$*6w2#pzmE3N5 zAnn&uE_+x*c@6Cc>7SfOd35xuTSNV(1Tn4c~XE?}L=%TbB<~j-BUQ zz&hp8A7guZ2K#Zs5*-I?Cr^=i$x-wz+D*%odP?r;u-eld9(*x;cZYX&zTN6dw|iZQ zc5AlT?#<4-7Cf?tU#d07biFzGHsqa{=p}qP{2t_RO`qopP0uYCn3cT{{!QQao%|!Gk$}4FT_HSrI#BHa%X9OEZqLMa6v)~(OS9@M)R|Dmhw5gNwE=AkGJM#S) z+C&To?PIIR*F$@xyplFWDeu8=symM@X9Pc{F|-NaCcel1LwVasZAQ-V@khR)*4Q4n zPk7tyab@3r6Iti~)$ixu5B<{nVD~+cu^WitRXXPf4tF?eUAuoTiQmRsvPbB& zcI$RlJt(}iUv`T2|9qD3=Lc{4$d7l#AqODBN4P zD=spDOxT^(yt>B!kCgC#dhQtf&zVhExjS}qo}$LiFYd0#pM1S98-8BNh7a#uSmY0V zo$2V^W%2lJCb4|xveDay7P?*F5Q&fN=Gkq6tN82WPx6)_J1Ut`bOhXyMm`PX#vFbW z(SRQ#`+m+%z=;s^DtV4XF096GR2IXZ2}SYo>Kiv!DJ-OPK8$YMz#=xwp_>6~>^#?ws;zT8mwZZswGPp^6?0enzsUa6! z>~_9PPQ_#7Q5Ye=Vji5h9-O!qT(`2y*-%AZ3jTa~)%UNSD|iaLV{6^Jiba@fb?4`f zhUUAxM`kmZXKaaE6`if|JFCxJJ~~b1N?D$K{?Ujty#pMZwNJ~;|4zL*zC37$Ky)Z{0r)80M)z8o1CD@SgfrpB^P;pto9@2((j5{6@RkW8Nv*Fz&Xe z6O?hbS`)~?3)rjjHC$EdJ3a#$mpn3sc}U->Bc(OWi4Q0`7j(IHB7xsU7<>3U{|+(u z6#669i?uq>>dOOD^NDXYR+hEjh|f7X48MKlk82Pw%sNf8Z^sv7t}8K9AIQ%2I`eah zgPdm_9v5Foj6J^e5^LW%vP9NX_7B>E??*nM`%En>^=Z_xH`iD8nG=7`xuebaDNCQR zY{2?xcCIydl0KWV6+ZEWJuHVCff@ERX3a@dC4>0pHgE@(oEdeNazXzr%_@#Vou$;? z!oIrjq5fIwusT`eSem?`k`q1QpUqUfti88(7{5*53=sX`-vC=uiAr<`R>&(3_i>=k@sgp>LV2KfxRH69Vu0uo&+u z^$~xD^F=&~-^WpPzBHa_w(;Eo7SU5p*7ihr$(of2d9%z=ghOy@Sn#rch7_4tT+(RwfAx3UJ3uh5#q`GD3Er_wKN@}Asx_A=?i zo0YKnZ2>>aS!0bSBkKQn<|5(%BCKsqI&O8`1^u}U8df7X7@vOp`aAP{V_M*`E4<)loFj*KlpK`s2yz!?zyNQh5bTJh{LFv! zt9wb?e})b9@HM>~4;vPFmPfCA0($=g=>2N3S!O;C3&b=OZ`w@vC!rLIZc zR_dNJdEMyXa%)yzeCL6M#ATTiuTOzrw383)Rx&!{mspZzUSED$!KWJkDe;HnU3!_d zIJ?YSJXkCn7v~U_x+|%hpzd1guAjVaPqqi&Z0efSZKduxlh=jc#D{Yp`*xZ0EqwUx zSKiwHg=fhH62TYmPGDy#uv0BM&nu9tuW)+=cG9936u3jTZsVJ62AmV*yAT+vAL4xp z<}$C5vjv|;;4TK-VY|rBf`%zt=5`^Mc2317aV2?K)}oJrA8X52J9YK&H6vlCW(xET zo=tc+csNb>QhR{i<(~2jPXo(YY&e71a*$2&A@>9>WBIv^X`VZivM6P3`F3%s+PhxqcabapE`H8l6gV{_acAm*wm=tzT8#f z|3Ut1*31klyAb@o=%LsnEqACn#eX{aoKg!Wn-gdA0_}Iyw;^N4p~XtxY?S)0^fSpi z2>+tLvu9*P#se={-HGMMWiM*kt?waZ+(LWA`m&~D){}4M=(;DUi!YSwJ5@WjE`80` z^}h5sz$-Qh<--*jUoSUH*PFg0!}|E`h0E&!7ahKz)ql>2-i1~cDE`{V6@U9};h{udC3GR# z5d1WA!Pd15cm~&gVNcMyY};JHwV4pI8Mrnx(Y?Q~KK(IeA87xfkqit6_TNE#(f7yR z`x`e$)xE#*>xC}R&-Jv){TWZLDSrEQ_y0a!cK-Ty1`U%fn4{uz zQs`Eo{|)xmmL7jY1d`?xFjnAqoOZ_sl;7o9^>9-fZF`2@@UcMI{FZ4en z{;jHRPV8Xnz4T{6d%%mA_2T>9d-K=8-{QBLxXiheKJJ3|tP2B2DnI2iXOsNKhY&p+ zINWyT6U()@k@&6C@WCDCk6iRJe*T9i^vB5edi?)NANc>TGGz|E=kKFGUd&>0fn{ysA^bSBRs@FMgBzka=5jITIX<45E4+X|l<*JTtg zs0F{I=Q_3UOVAgQlN^!BRZj90x`{z-+ldQUKcO$;TaC;wPZQdrp0j|pSyn7P%ZnwT zH6s^7S1yFETnJsEUIHFo>ZQ>eWJR8fQ9nlgn1_xPJ;nkT-)wkra)RX-xLxbt!+5Bd z78@|ng!uWx+vd@+$TLCyMtP!d390uszTr|Hc2869p^H4H=kYgAcUZAR2lTANZNO)` zXYgXibTRbtV%J>xK4;ZE;>*1dpKSie*F2bAsC>;WdE#r%b7x@f`|#yn2>;gZgpT^_ zVw}6P=A8El@8))IdtdVYe+(oy*P;t&-Lwq#39aW5pEma8;ja;^pCTtdbt2|Pm6}VT;tb!_m=Rhk_(Kd*sr>hXp{Xt(IJDM%XG6-UPe|yH~Yoo3U5EaJ=Ei9TaiY7 zMQ9uJNph~>AGr?rg0~PlrtDU!D<|hIa^F(ll4o1PmiPrB(`$Tpm%!sBcwnyJflOVU z^flM16FiWRI2G^!_)_5k17Fsa;DPi7Zrj?6-01p?)Hzh=Kdoa*~f9`A3dR* z|Gdrlm2-{$J};NyYxLX8K~#K;uz zKw3vrC;TK`RALCKC(S|cP+kTVq*k1Y~d+1 zOKfiYR6O)Lwf~w%zV3A-E*9FyT3jskbe-H^u|^j;)x=z|m&|!Va#?XSh?{a?d&aP7Yfo)Z3+ z^O2YTg|Eh@HKN|bXWw*uN>1apFaCcr<}v4?^=;0BC+7ivV40?w@#jVxgZ~VU{1->~ z!(%hy+eG)&m0yPLa9JfDOZ|#-G#5Q{gQf9UPlfED z#vcDDYxihDHUOX0X&$XleCjRz{|Ww&hxGqGPp{|wA@<;J_4}cRsqfpuZg@n=61x3s zXn&8cXh^bYC?M-cJ@B>N z%sfw*F;~hR{j%>*vDVG14}2F?`zl`+?YEb;uV`ED&9e5Dyg|ED_+H{3;md)Gm>S>m z0zE5^Pko=-BHv3r_?19GN0i(!9HEV<>RapqmGpE|@tf|!VDX!c!y$BDGu1cvR8)Rr zWECwmY_X{dE#!{Sv2$M|vY5I9vT{w<70$;zbv{Ig2!HL8tBmuu+~?;XWNj__4hfI! z!9Qk(gfAxc)#p>COx|l8m1U%o+3YU~;8b?R%(Gri2~NGx;39}WLB>hat3c?a|%62IP#KN~(ooVgkBFfGu+ zGCn4CA7hR)<~TGZPAp!6ZzOKM*^Tnev=M0&-E!hGE0(^@Ysz2dwo@LX93Lom#t6@~ zHotA>9*GG{2f?Gn9h*V$sAbJgTa0;N{QR~S=6AY}k6v&%QzBP6$o5K>LGC&r`!|5h z{DAo0AN-(yZkoV(&pD=9alfSGIS2lTGxBXO_6@HU_&KvqJo-a`^!MIdB{Ft_KFM709_%8VnxogqyCIfbWH4_=k z9DQi_>(C8j`_VVWp3^ArIe)K9o9vazx+}X4YlwX{FXw=Be>;!{T4khW$1AV_BFbk`q}^;051r8He%rjDtI=?I5s%jzNu?wPn4@0e~#Q`oII|y0hu4B1VP&RD6ot z)oLPN&~CrJ7gC*1`6By!X9dGBbkn1s;`OF0wUrTzF^iYa0yj z>+lzKaddd|*t3Q<<;1&Gl{MgYqtUeRJrlD%Duhp~`Pc_m1nxZSWW+zOQ7Z{!R{$~#x$&WsY zA1*vp{qXP9Jf>}IvDz;~mahTV!GjZ5|Lc_SVv96<#WtvSK0bR=^dwG*HDSI!{u`0? zVgLR;*)njNLoT+_;Kr9&Cw#!W-j8`g zAFG+SMgI9lWSBtm^WSKeeUQE!Su=G;b8D>Kyz}?D*PhS10^d^JpyCnUxBt#haBt6f zoa0B173VE`srlRQ%e*HZOMFzuGFm@$O5ur*KFZmN8sJRwhoQIIIuIFcoG*3_GdW{` zJ)3GJ9~h{T^3mq`zqfXw-}^>H?+5Ew*pJbB?UR=5M{(_Q-)3wlWuN8ldJkMCz9H^c zZ!kHVA@D#5Jn%>7qz4CB;2BGu|F%8gn#Y8G{a$c`tYI&Abg6T|@7{s0#Z|vw-Oae- z+`YD2_>NcgSs(tj$N(7`Z%*B-)h4kRJ|1`pxMuwdWvN+GCbYoWIPlxjH%82l-#7(s zz>hHf$K9h@8zSz(2A5_vUWkAf(5oe1cmceypbRg3y@VGQtTN?JJB1g-@5)FioM3(J zZo~TKa>Lq%E#aH^x9_=A=WkwM$Qc|F_>+L-`%XHA#;u#&+$Eo*nJ(Oc7xg8QGnhx=3H&b$cL#z>O&w@i7(M6R(zl+g#l1P!oV?LHbdT8^+!fz{ z&piou$F~{(o%qMrHYPu{>5Sy3e$(6=-jwLAzSFeugX-nN zoacGYbDr(o$GxD~V*|=}!^CGXFdQ&XsOPdTo(Qdj_fl{8bA2zf9|yd(U_GkA2X8%& zhl0Qv_=i(hvlf5vufta6_EDXC-@qRaSJN?U!E3Dv-h4k=oNraF>ERh`2A?b9n${q= zrEm;f6P!VgLI<7ag^6eLxEQV$o;X`%oBtGk5VjsD@&ZeEK@$E`{i0B2S<0VS)&ibkvgfGt zMaWA10lLNy*ZZBeQjM&W>EHdkL)uT?avHu~3;zZ=<|Modc@o*P3!H3f)4aPR?0*g0 z2av05>LGtwF~yhUY?uyOJ@6Z=@NN*9IGFm*0-m8@>S1)O@SzC4SAH8+K7X%YzL&Cw zLYe9>l_<822oD1{OWUTt%R6wh^xYxeMcA`T-^IRH>_^U3T1|O*e@VHL?W?4I+KxRE zvX>z{pra#}7Cex+Wqoq^4b0s|w^;g({zvlPfQJ}L28Um(euBsRve*wo_Brqv*)vMp z#{R==oBNNDeHq_nk5}IWCsh1j=H~pjeOXw=X3E;QGg%w2E_A(J+a=>pSs~6+;7t;F zk7pp^zi+h{Y?XQSOk1#%HL0>EEa+j~s<_{awFw2!ffp}9k1lwac!_To;zpUbI>VHI z^CIpB;!d)jTacCa1$NPAx@Qk^kN8O@4RpXfrO$j>4{{JOd8!_D1MB@c48FWzHDk8-tW=W{24#XTZ!{^z*3v$Xnxy))52z<_YCW2r8RA+yrz+#jaX9;9s&#K zS;2yHhrry!Bk)r2B)F%5m;Tt_RW^3Jt7Psg>eQTrdx%*ST+Yuoab;PXJbx)&hg-SV zTHsjte(S@2UuO#)3SIc$UsBeW*jEJhVBI~P!r8C6?jDZKuDtGHB`+(UDKJIdI1+W^lyQQZU-??l3{;&__>n&X4y_^4r;ydHB-n&-r+RcA=caPup z%wjz^<+p7n?^u34yS;Zg-fi~Z8Lszk#dN`WZyvjoet$EBFZ%mo!h2^q;JQB9kv($Z zXB3`=h0cu0>i+{GUl{mHK!57}?lX#kOx&xKh<) zN}uVf^DY#ah06A+$R@@XU`$H)R0_%dVhc*00{MEq}BS@jLO>jE|YDtort zE352Jc;8&+?TyW9f4^x2JVx-Khdmyo<`O$t4*&f3azB^3rR@X1@aEX{r2oCuLKmUn z^`+liRr)=FyQ04sXErMpBIMn>sRFGlS^eYi6cA}*(^9FE~~Z6EGvWM)|{SRZR_#7;8&~d zfcWlA{UXLVo)KUVPb`d)bF$bOC1 z7~e-1_Dnx}0&8jxqF?4bx|Te9twXF6{)nUc*?oJ+>gJn<$gqDe^@s1WUM{UCb140D z`HnYUXss~Uh3ln`8?j+%u5MaqkmxIp{e( zIB5#j9xUB%w>2f-2Ts6nV~lSm{59NtvtPftI9E5RV8H$?-!*8N}{m$JMmwAZ~nh9UGFmF}!=y(h(fFJo1CX{)RC;q}!g z7>By6-GeRbDQm38k@<)_tJ88@hF)iX&GY zS%0bP!6@-=mo@Teu3OQu_g;Hf+TuJvf|Qul*~qmLSQg>9Oz~VL7kl#8j?y?lHKtqT+umH!!Bo2~ z-FzQD*v~pMU&RCafhoQ)#@2524!uXPbS$#2Y8>$Ek?$uPA~PmE6k%xXEQ4Xmz9oGNOow|U?{uf=r_eWc!dC^B`Tiq*|IMm@{1K`Ye%piK zd9(0XbXs{l%Sev%+R}L{8uDQJZ4YkVzV6fGbm&pOe_Y^Kicdw_TZkVaJiKJw-WnM} z59XKQJ12a8NcIkBIKL*D(*#HJ??g8zbMlYZETM3v>^mNRne6eV=0JSe z&Onhj*$~28A=!F&13h2?0fz=^Xo3>6xF6=FWgNY zju`#hF9;tbSNID8FUhs%@u=N(6?v5E3m)}Mf1XDX|HWPNFH``&QPpxD_*@eF~VC-(^-&cn$)Svn`deUCRL?tTq^ z##y|`Z}ZD1s_)#lhUyJ_xq2Wh=h%0mkrI)n>)abAiDR zRGX#WIKq4$EVN0z4VWDIk!rKiVm|vft2W0zU(I)JS8WD=a#K1re|x?S__xbxYrL5A z*TwAH8=BBx`?MNa$ji=4KV7f}w}H(ca2_g;jbR4ly)8P@kR@%FDK z-HqA!TD0lzo_TsczHf{eKGVoOrnxy}<2_HIgFA}O40}EPWTWchhi2r+eV9WY*waT{ z?iQ<5SMK@DT|r&;x;5T)>?G4TX5nY1l zpc|W>Y+^i#Z?Wgrxh>H!_q&U15tXsh?n2rbehzr@!xhHqze}7}(!c*MGL3eP(oSRn ze?C*`^KI0f>6iKQOiadqq>;Ha63f}>m~+EhOzuRmwx7F&JoZLxE@e^5mNdFu%NvO& zId_ZAeF?$rxm$wVm%#YxZ>Bc~jr%bc1@VJ>vpZ`qb3@l_Ww6^01_st_L*`tAUjh2! zwb;Y&>Sr&;pC%(dY?-?x)@ng2kubJ$Hm|ktx7KWYKLTNEEBZP)Gc>c#vd5%kFC`BM zf2sW3BDDtXl`XINUT|cuDKU`9UK5&WL#4dGjIf%I*UoY-ZZJdwWT*dKNc-V_YoHtBL@vsi1@J1qwp&k-&Bsa8Fl zx)i#cr0lM4S1WShe9mGi+jbFJ~W8`(XY90H6>8M`@i$A(Eh>aa!MGm~;pm-yHm6+CmrXF+tQR&pNr zk6fpX^YH~46MbrP?>zb__ZOT4e#{03I=C~Vec!omKR!hLHCp(1N*}Oun(;7q+dmBQ zeWwljKTjh*S_@zMycU{L#U1rM`oPmRe@|=S=daP@6N6?N*+^{F;nh2_8E{U%XtHKp z9Ms&4XJS8Cprtq6q7D2C`{fs^RIGLQ+R3`~7yiVx*fhI{-wwV!U_TidSpB%RU>EBZ zoP7B}&(neQft~t-Pb@-*8>}C&A7?D^)dS~g;hsI}TQXL+$3|aio1)_kuVy?oc3{BH zM8c~NVE?=+NZjk?j4cqla;Lsa?3q1wy|kD3@z9m$L8lSy9rUB@9XTz1)tAV{u;=8! zs;`n)xnFa%=QZbM*4)ZOkkiH+cdy02g}6v_qn1A2#C#u*IDNl?7P=1ufA~*gybu4M z8~xw)aC+;#l$*~vGy3pFh5sXC_<4gbHrQL>85g5}xtO?vi;NELtm@#-sa1)R zytB)l9ql6Spvyg*dj@rVk?iUDbr(9pzv4+xUa_9rC2~xU^(TDT1DnzX9!@ za^^IWBQQxW%MJMcPCw0Qn|qqm5He3B8lci8GYWJ|Jfg@?d-P`EAJ)V4TGsGMlsG2>J}wuRB~upKCq( z#BNoeu1;{T$#i0I_}=Uz+Q6rTe%^CxbovpY)8CcQX{$c)3Usu#9y)z6DtBl>iyoa? zeMLG=y>fEk6=>I53Z3%3YN6BfjR9*UooYYz=rn^r*y)`Aqk(~AvlXqPw+N)yU4oC> zr*vaxmi!Az@q0PST8|G~+u(!uiBF&I_J3D5I#VZ&t!v4JyIA}N#<~49e`vmMIb(H90|i z`-ts47upZGt>nx*OUFl{m-C`7`7KTMV{++{XHVV5oh29McJeu8c~9;>FcDtaYsV*==OPp6$OJkv!K=$KGkWVzS%#7O{Z3VenbTWy$}$Z1$e*$dBlohi zCcv9Kyo*^A)?!BQ1m;gZQu4XYCZ8L0EbBozYr}R%K=}{ zXtmL`yxQ$rSzS>+Y3b!`yMek%>h@B1d*!;sj*w%5x>@QTr0$W*b%`l4VvRL!Os_$% zsKH0Lrs5dL>BxAg8>Q}Y>aMI@ceWZYb(7TXrSA61b?2z@Qa4N8gVa4zxi0tMG2U9n zTg!NB8Ei@F7M>x`?}D%L1g~eS za(qu!IXq|36n@0n$3!ke_u|WBPpX(ac#7!7h;e9!R}zQF*vUzmC1+()ViOyHgWPE~ z4jLI}%!~%znR?J@&)RN#lDQuo=d^Q&tmIN{X_UWu{?DCMN62A#kX(lQ$hny1{uS~b z&gkW=5Vh&wrhjzsNr|JJNEtbIv*g^Be8EwRa`f`>sm|Mq57lgMY!Pz1k%vxjukAi? zF9~jB!3`bUiw4=x0z#`!dlr9zeF4gYlm{s%Uuu*bg_J|94!$V(#(~@D?TOK+9Nfv0 z4>gI;+^Br5_^|5+cG`O<1FOj)bP}SA00-*5 zyn%`5+|FdZ%qhOUui5Cx)^i7By}MW+$9Y@yq!*^mwfKUsHRUcX_sm4HFCj=m312}y-h~$PU_+}y=NPBAF5n;hSVkABe#gUAENG!mFtq% z+sI9&ZZ&mhQTP1Hb?5X>G;&X%+t`b4(IGJmZX)y4BR3Mcwl&*KO-1CWSS!v+y?HewoM>k(uCoJ+PmFJTWe9 z>Ot1U@XnG-o@gS!lA^&9aAzMVevd?3=`Xt%TPv=B#5%!`(o?r6G}zu!aXEiHeXO*SQz z&3HZj?lUCstAh;Uw9h3Uvd-R@tY;4Ni(WrSeOr9h0-{U#7k75D-Z(2d4q6&#oShse zXWa!U&Ng+ik1}S7#RFe0{08)K5{D&nzB5N>KLI9n_@_&}Yhs%nw$9fbZIHW8r?L;u z4GwqLVOP}0Nj=FoB7F?}j}^%3XA;wzRd;R6p6tx&t#iMRPx!5;%lYb0@v8cO5v!-} zDq;uF?;Ji;V)(FeFzyuaRC{#f4B%#Cr+mRZOAi*|!M+Mjh3X>Ort1|vK7)>BLK=9e z{QJ!-*n|0NY1N@e`0F;!x#vb=2y5!&RVnx|dJmO@B5}gwAGx19E%*8{&8eR|ZTAAx z4+GO0EJvt0vh@dvKDw+>j@X)6nz%UCmc{>r&TXN^kVX@4xPN4{Q$xX2pT2!2pC zC}&uI9NO`;!b@xp>Yb7o{@~2$1Rt)DIpoi`Q{j_S;geJ0lT+c7Q{aYoJ_~aDU zcCrDVf=^C{PfmtUHidM3n()ay4sCk!bis%F6z^jkj79g}Medb%vM0K2DJ^u1@HX@V z*oQ*w-JWmF!avZT@}ViNg}@`f4w-8N2VCqk)bnkm@(r24d{^u9d2YcECvU%%ZyK#J z4L`<+_^qV7E$+tK$~nuFcUpRXx4uOmz@lo?bSVApXzQz(I|N`?d1pS-M8wVlbYi)w-jeYqTu^ z#uI4OUwy1SqsGcw7UAXF5lhDVtUult^00UCKN=fu(2k7rQ(M`?3vereQ`@L-7va>* zdc(^Ka7sMwe^+8d|G!+XpZ}Gu*AGk9OZg@uJHRVF-=k1BxCD+lZP19^k%doP{ODHO zAQsZ-?*!Ldqw$ZWIMc}bflF2r`V&4OJR$Qy*j&T?KHY-rI=rCZYs4BUJDczi*^g8k z#Y464O5YMgn1&ZB{r6^xH%?sX)8eQxBLBcUqdIyoCF8h#IpjT$K8;yDc;|HybA~^& zH3+R97CI%zyNnn7H{rQgu7x&o=mR+;spnc~BL{87^w0t5MyKombfccojYgR^Uw7<{ zw4vORwv?+U<)+k!{?Ubo4nY4r(~m*_)W=tyvF;cJ4|pTv1a^72;J2*iu3(b+s@U?` zSB@IYYnP=Z#E&Z+L*GR{FU2ok1?Lrw+4~DL=J6oOl~jobu^(Hdw3T_#!;v#ze!a9M zyhZro79Cg}=+*>=>Bmfc3w)4$`E~Nb$UU!@w(@qk_&<8QP{t!`rpAOI5V{KdG!AK@ ztE%-afkUi$?p4P6dU;{w%O$k+8a%0-7cx%p6Sx)N^m=$+nNiNUTKtzOQ+TWJ)qzwh zf_)sk0B?oIJ}Nvman?&BVh{R-#qQXU)0-+wo1?ytpT-C14muW}w6g4Xb( z)Y8yf=E(q=F{oZKAk=dogRQr@4y};JmrATQ|^GLY<>MaR>36k!90%@e(KC%9a{FY7FIq! z=;sB$0N<|zUZ~(C`I(GX@SzajvL`FF>(W+Y3a(Aq+AifEFFLk_;{C$sC;#zu@%4y{ z&4zWID1P;_PZrB|FZaskt2^M!%Zz1SnMKUpGUabtY`5_J-uH6EBWNSa-1qviG4ANH z-S76>y>oP#@h+ekh(BX^o=AMC;|zl^hEQs1O0 zTk6xLZRC7VjH&G!5*=PXrgnkA-Hs8{^PpNMktMw~S-99MJ4V@~Bg)*1y|Nr}Kj&~Z zvsk-)yWL%WJK}#vmKiaxtabY6vV{x1vZXV?j}d*kQLk*jiuW1uy}$9>wT9%5zp}9y z7pPcaJ9oXTWqH}cw}LBbKT@`3_>Af&2uy)VC>YDb)So-?u?n`CM}ciY_V>Qs-^RIe zWdG->eykPkY3or>K7mHuE{`7K30q>ryzl4ZL%f*6oBTEPV+x4@QQwX1E&Z;CqZarZ z$*)&2w#lct^j|WLN8zFtDZ?x1ee&=L@rnC1b193%8#4w^@#@I$7o;>~E6e?FiNRCj zOq{_uN5$YVMiqypcvY;FSJ@Ab_n%R@L9({CDQ4_IA%3z5e#7XS!++`EfGf zWp1AbrU@{ZWQ(s$N;)jnv?Lq8+_=#ki8kWM1V`?{eEn<510N6Mzn#Z;AN_=w&b7fdcGUZJevKu* zZaw^3!Ro5=xgNVv)dl{*`Ax6=tp*=2CUtt>>WYp)EL%;0)i|I55}Kh)*#Ln@xn zN}N%4FXwDKmawKF0n<-nR}c_P!-?)bMPDW7^+%{aCEwgCqKJpYh5DFJ<2u zQMUVOuWZuaj&5fh^2Y{Vjcm7Y*eh#YB4a2Yw|melTM7=ZA5pgZ7hc(+%SZQV{M;*x zEgfC9@TXo`|CM8W@5f%*e%7>kSU=amhD+lNP#8IQg;UM=(Ss(+cc)=z)19Itl98EYUEd{pSCD(qDr94$JtO{di2DzK?lzgOc+=$|a7hj0b*9 z^%d;;2U$nT@iP~GljobU>%DSm|DecE0Z-;iyd%E`B6F3@fip+Ren8xO+7dgNJR|t% z<>TmAd|b{i-nv=D>uyJu&a!9Z*W%dq9$(t?X>YE19&i7n@aho!sVM(Nep+EH`Tb%9 zzs&C={WmaQ>>{P}wG{76+fA$e@18AmA+Svc^K;h*{%hY`@kxoJCs#(F*LR*rHW8mI zdqKu5fn$ZS=l9h8H+p;Oo==wd)ddd}_-NSe3-a;K((xi!__$%+q~v8Qm)~zcQ~0go zj8ks;@7OKgZ`yl#P1cqF&V8=De(Imgf5+~S-+tS>ivQ1jx%mH7Z}I=J{^I|wZN>lR z?l1m7^ZQE$46xpPOc7C-^zGGGtacFLOTDBwjXQ35?J^ z2HckDsMv4Ob%syRib+@jw=#? zHt+{h_K_!v)3gOfa$kze9V7U}e^t(u`Lm|WeJaF3QdW%**&DlP1wl$hB*78-)-gDM%-gtr|xW}>>kSQ9nzfp zA7ecv7DnfLk^J{Al{Esc25>FUKgqY#mS%Z#(CWsrznmhx_l|~l>Y@Kecp3*s_j{A)T_mQ4ZT~@L`BD6I|{bjmym&@zH3NJzWC_h{bv}Tu%J<)Nwh{Rv0&U zRK#WNp0RN`_q9I{mlJ268ZJjv-Z0jpOb;yZ&f`ci$Es!)`9|VP*osSNuo}4H6K$ow zRX*-D(BNLms-Z!6#~3syvX0`5isrS6{BZD3 zeVT=he!a@c+#|R((l+PgK!M%`2P78Jz;_^?$oclTocP3vZb{K0>*?`o8+qPBhFP!l z^~Asm%#;mKY;cwJ^YV=rYy>?+*aq*=!q(=9x~J!OpDFxB`WdL+7#T=yjKrUv&wXYh zD>YN^E-n7#LjlRXpzN_d__TO@;@bn=^K>b9H0%zkiNK&w>3`wd1$*u&`z2#fv&V;| zA2o->?^Nu1$@hj|dWicGej$DhW6nq5Wz0(Xeip6Kv}uzY0)K&JIn%S>VsFOxM#YP% zv1axRn0GS1+s7Oq-|^%(8JpOgdkXOVr7=svwlJ2_da^zHM(WAb`9k#3N@mVI>gUJV zCpsB?qC!d^Qz%dUr=R=ghnxwd9Dh2_CxvqBF+cy!W0EIId@I#?u27!akM4srSXXJA z$E8i$-g!W^t&-e1htcs|CTAMoPbPB++$zYfO6MeJH__93vi?teU7W9{*L3gwF~9HC zPk4RXKUQa)sy#hQM~yBzjF8 zNEh-ac{YK#%Ad4ZQ+bof;jv3}ay@%~IFQ2j(=T=(k+o&60&mXF9-jQN9Nw4t?_<9l zp|5+JTHC7CzeGpl>+K>_{XT|$y^Uup8WuZ}@xT0adrHo=`FTuMWedMqjyFr6_SVGy zm4|B?Vkgo0=EqsC^Ud3De7vxpQRA}r{HAa|6&$Q;`W<^Rx{Ax>ygRNO_hY{wF*l`) z1jo@y;D=Da@k!5)uD49-1i=0A-uzbm!PgU&%zfeiEbnLj5r2$-^u{PT3fD8Xgp93b zG!5kbqkK)S&#%d`LO;xrxUl2uch!Mkc)EjxcNSN;qkSt6bK(2NIpv<0HX)T0>rv6e z;D=X={~KTQzLC%EB{cjbbH2WWh7;RL`z~+4>Q8?Ew8PJ^NI&P5wHZY}7P+!KyASj; ztDJrk{`^bwn1b6O(L0aIV_HT(54`#}Qy$HNU(heQn^Kys^i6arulmiz*3xf^Kc|9+ zz307Rk1fxyXup3{enpQy*0DE?mTlR8%JL{asLt_A7W{YGa6Eo`Gjkd(&yI2DLH=Bs zPUZ0N)QwHeD)#7G#v)=tC2qQ5+Y}>q&~#(_Orz_F>2~Q>#kd%`cRSWgU2;iw5#!R8 zH7nL_k-E#NyM($cshg}^7a5OuYw9*qcP@3KmFqT3-Gc_>H5jkKcq`YP)2lIF>TaO! zcIuLYwsH(Sb(d3j33XReH(9wZv9^qtx{cJGOWkPYy6WzA@|LUn0JOj+g(Hy*LRN$9 zbuIrt?6)eK|L=gk8#`hdT?Z|ki1>o&zf+M+&~s=)mJsa;DSW zf}j5Fa&AP9%i{|1|Eb$e-ck3ke_up|dwJMHG$m)-$l12*-^~D@3aWEOrF=!)TapI% zB=3yK_2eruiA_f5qwe>;8F~A8qu(Uv|1xs84j#vclmClt0G;1uN*B1v=5 zSzX!@`}>^HKSX_e`@Q~kgiQ|m+TGV;~y|OB|kxgyTV&*H*J~((bD(3N2j(+LezY|EUl{tt%y}wo#YxSV4 zm3AFIu*W#(FgDg|!XUn%C2JLtwMyJ%w3e)udKdXL>v05KtwGMD!{mwb*2=4YBjXXD z_}@Eijl|6*C!j~4;51JUIdkSVIROkF=jH#PT~?c4qxc;b=R}^D#NZ;zm#gn%JniwCxX@wq6b)Ql!eE6gA zBkqF;$9}Kk;f=Pe5$4QfwCU!+F?0?u^%ECgV}`BEh>O3M^Z!OaF8*Hd7`bQZe9rGL zog8>+sUEgc#KrS%Q{v)pD9K;J*aib-!k$G|sMeN$68EKaw;(I|SIn9}ux zt^1LM<&Lut{Lx_k#8Ak6b~mMKBu@ScBbD1YkO35L~d*9sMr}P zKPGlZ%8$vJh4N$ICwhX^G1dya(+!t+zfB6(+SfvoCqusVK+3{5yd2hbw<%bM{2T=7 zb>s+{aWD|RX(KSX?bKlX_xNGQep?Rb7TpXVO=;m9`p6Sv0_Q{|ysD2r{rm$d;u`aC zwvL`ubrqa9Y6JDaIrTo^{0(?ggge8Si-NQEmCB@BcdZdeSqFTtOOuCyyd!~d{WqcE+fJsBb!z1JC8qb1I*E7UOr;Ifkk?}E zQud|{{Sc>_>gOBiUx<4T)u6K?k5wo|-1_w@9{DYj^F{K8u$S5SxK3w=@bw6~0r1aC zsqw3|P`o&Ee`%hV(4kJvse9mrG4t(5-PZb}?#$bcx^3S-YP3hSa8;0bCp8&E_`E@F z!1@lk#tv!Worg5Hz5W<&j=4@2gY9Z^bLx87y;d7I_mBL(oO(ah2LAnrjS%9&<27pXyIF)(ZX-y_boxr zg%5zk-vocZ5AOa9ynWwMr{kkXo!P%X>dbisUVe!Uf4JBv;|r0`tNX-!zTn|44X+Dd`~AE&4^+TczN_+O+*rU@;f+4NZmWo|4c41OHH*Qs zO9fxK6Yxx8(u4<)D?{-BXnMwW8~lT&|7_m|^G{QM;3!-uudkDH)NyD5FB6&xHq;ryG4t&+cc`MZa|t^D=z z_pkhI##Yf9Wej>TKE18Cj_=gr+d#}Ac{^I8~)dvhNnY_m56hr={`? zSnP?Lw`qR-?~9DhRC24g->rkE2GTj|RBe~sT!Ae-o$6?zKpHpFzukxx~}j}^tx_qt>NYB{9dWN_H)O) z#4sl5weFa%a@%L&P1*ZAx|Q^PJjj` zAiGXLcAbFi+KBAhh|JZ9?AnOz+F;C1Hn_8++_9@SxMyd_hjcw8vh0ZYVG}6KZ??>D zL^=5<3*{YSl)q9^-abb8iIVdC9c~4?2{Nd%o#V?5o#kpp=Mg`hm

Kxe*(T+K)0x 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∈(s)^G^m)3j4&5nj`*i` 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�VlQCGm^qrp}WCjj`jecWqGGz=i-1TWi`SwdB$t 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�$>i8s!|@B8CUZ=##6t9l7pQy~ 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

k}ehi<;UBZkKj4d{)!Y&XPM*$4lj#@Ussy6mlk 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
V*y@jGA7cHN_w9=b;_e7TmG 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

3rzQE<85q$3) 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

t)V-d}@WQyL*P?t8a@TA;;tjzMfbRyJ1&QIa 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 Z^wt{mGWYq_R^DDw;8~*j;;^U9|FREgZ&1wc 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 z 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